Search Results: "ag"

22 March 2013

Matthew Palmer: Managing your Databases

The Standalone Sysadmin asks, How do you manage database server instances? :
Do you have one (or a few) centralized database servers, either standalone or clustered, or do you spread the load like we are currently?
His argument for centralisation is one of easing the management burden of configuration and backups, whereas the distributed approach eliminates a central point of failure and performance degradation. I go for distributed, all the way. For a start, we run so many databases for so many customers that there s no way on earth we could stand up a small number of database servers and handle all the load (hell, we ve got single customers who consume a cluster of machines with 384GB of RAM and all the SSDs you can eat). Security and permissions is a whole other kettle of fish; the contortions we d have to do to allow customers the level of management they need with a centralised database system would be immense. Then there s the need of some customers for MySQL, some for PgSQL, different performance tuning for different workloads nope, centralised DBs don t work for us. Given this, we ve bitten the bullet and solved pretty much all of the management problems. Installation and configuration is all handled via Puppet, and backups are trivial the same system that installs the DB server itself also drops a hook script that the backup agent uses to know that it has to dump a database server. Monitoring that this backup is taking place successfully is also automatically provisioned, so we know that we re not missing anything. Ultimately, this same approach applies to practically anything that you re tossing up between centralised and distributed. At scale, you can never rely on centralisation, so you may as well bite the bullet and learn how to do it distributed pretty much from the start. That saves some serious system shock when you discover what your hardware vendor wants for the next step up in big iron hardware

MJ Ray: Wireless Networking on this Clevo

This Clevo laptop is a new machine and like a lot of new machines, not all of its hardware has drivers in the current stable release of debian. Happily, there is a driver for its rtl8723ae wireless networking device in the later 3.8 Linux kernel versions. So it s just a case of installing the package called kernel-package and following the instructions in it, to make a new linux-image package with the latest drivers in it. One small thing which tripped me up is that you usually need to write make-kpkg rootcmd fakeroot initrd kernel-image now. I forgot the initrd option at first.

21 March 2013

Paul Tagliamonte: Hy: The joke just got pretty serious

(btw, the source is on github) During the sprints at PyCon in a spare moment after some awesome OpenGov hacking, I ended up doing the unthinkable: rpython support in Hy. Yes. That s right. Lisp > Python > C > x86 instructions. The thanks here goes to Romain Guillebert - who is a really funny rpythonista and took the time to sit down and help me with this frankly insane idea. It works, though. I filed a bug on shipping rpython bits from PyPy s Debian package (hi, tumbleweed!), which should make building this a skitch easier. Finally, and unrelatedly, I also just got a .hy > .pyc compiler working (huzzah!) which means no one will ever know we wrote anything in Lisp, ever. As always, play with the REPL, star the code or have a laugh with it. Let me know what you hack up! I ll post the lightning talk I gave after it s posted :)

Eddy Petrișor: Finally the XDG fixes are in appdirs

Just a few hours ago my XDG fixes landed in the master branch of ActiveState appdirs.

https://github.com/ActiveState/appdirs/pull/17

They will be part of version 1.3.0, but the maintainers want first to create some tests, since the test frame was just rewritten recently.

Benjamin Mako Hill: Lookalikes

Is Croatian kiberkomunist (i.e., cyber-communist ) artist and hacker Marcell Mars living a secret life as a Nantucket Reds -wearing preppie from the American northeast? Marcell Mars and Nantucket Preppy Lookalikes

Daniel Pocock: Migrating to Xen Cloud Platform (XCP Xen-API) on Debian wheezy

I recently decided to upgrade my server and host it in a new location (turns out that leaving the UK hosting was a smart move too, as new UK laws to rein in the press are more likely to punish and censor private web sites and bloggers) As part of the upgrade, starting off with Debian 7 (wheezy) seemed to make a lot of sense. I've been using Xen as a standard server virtualization platform since Debian 5 (lenny), and upgrading through Debian 6 (squeeze) without any major problems. I had been managing it with the traditional xm toolstack without any major concerns. Wheezy benefits from supporting Xen Cloud Platform with a standard set of packages, and it has been promoted heavily as a key technology in wheezy. XCP appealed to me for various reasons: The gotchas Reading through that list, it seems like there is no reason not to use XCP. In fact, there are major differences between the way xl/xm tools manage a host and the way XCP manages a host. While xl/xm offer the flexibility to manually configure networking and storage any way you like, XCP is more like a cookie-cutter virtualization system. It needs to be: without having low level control over networking and storage on the physical host, it could not offer things like hot-migration. Some people might get a shock, however, when moving to such a locked-down platform, as it takes away some of the things you would normally control manually on a Debian server:
  • XCP takes over networking. Your /etc/network/interfaces file must be almost empty - you can still set up firewall rules from a separate script, but don't plan on having any customised IP address configuration or routing.
  • XCP still has some bugs, such as requiring a quick config hack to use any subnet size other than /24, or another hack to make HVM networking function for any non-Linux VM. Hopefully these will be fixed before the official wheezy release.
  • XCP management tools don't support IPv6 - although this doesn't prevent using IPv6 in a VM. If you were planning to use dom0 as an IPv6 gateway for the domUs, it won't work: however, you can set up a domU bridged to the physical ethernet so it can act as an IPv6 gateway for the other VMs.
  • XCP takes over your storage and creates it's own PV, VG and LVs. This can inadvertently lead to the creation of a nested volume group if you are not aware of the exact way this works.
Making it work Despite these gotchas, I have managed to get it working, doing all the things that were possible on regular Xen + Debian squeeze. I would suggest that anybody attempting this read through all the bugs of severity important or serious and the updated README.Debian file (patch in bug 702337) to get off to a quick start without repeating some of the problems faced by early adopters like myself.

Michal Čihař: Photo uploader 0.10

Photo uploader has just got first release under new maintainer. It mostly fixes various bugs, but the project is going on. Full list of changes: Thanks to Andrew Shadura for taking over this tool. PS: The package should be soon available in Debian as well.

Filed under: Debian English Photo-Uploader 0 comments Flattr this!

Martin Pitt: python-dbusmock 0.6 released

I just pushed out a new python-dbusmock release 0.6. Calling a method on the mock now emits a MethodCalled signal on the org.freedesktop.DBus.Mock interface. In some cases this is easier to track than parsing the mock s log or using GetMethodCalls. Thanks to Lars Uebernickel for this. DBusMockObject.AddTemplate() and DBusTestCase.spawn_server_template() can now load local templates from your own project by specifying a path to a *.py file as template name. Thanks to Lucas De Marchi for this feature. I also wrote a quite comprehensive template for systemd s logind. It stubs out the power management functionality as well as user/seat/session objects, and is convincing enough for loginctl. Some bits like AttachDevice is missing, as this sounds unlikely to be required for D-BUS mock tests, but please let me know if you need anything else. The mock processes now terminate automatically if their connected D-BUS goes down, as advertised in the documentation. You can get the new tarball from Launchpad, and I uploaded it to Debian experimental now. Enjoy!

20 March 2013

Masayuki Hatta: Recipe for Debian Haskell packaging

The following is what I usually do when I want to debianize a Haskell stuff from Hackage. This is a personal recipe, by no means official procedure or such. I may be wrong, badly at that.
  1. Check pkg-haskell repository whether your intended package already exists or not. Somebody might work on it already.
  2. Find the webpage of your intended package at HackageDB, then download Cabal source package . Untar it. The tarball filename should be changed to fit the Debian source package convention. For example, if the original name is something like foobar-1.0.tar.gz, then it should be haskell-foobar_1.0.orig.tar.gz.
  3. File ITP. reportbug is your friend.
  4. Run cabal-debian in untared dir:
     $ cabal-debian --debianize --quilt
    
    We do have the upstream tarball, so use quilt. See http://wiki.debian.org/UsingQuilt. It might give you warnings about changelog. debian/changelog doesn t exist yet, so ignore it.
  5. Now read http://wiki.debian.org/Haskell/CollabMaint/Processes and http://wiki.debian.org/Haskell/CollabMaint/PackageTemplate carefully. Then do things as they say. These two are short, but well-written instructions. Edit the generated debian/control appropriately. Do not forget to make your debian/copyright machine-friendly. See http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/.
  6. Test whether your package is flawless and really buildable. Do lintian. Use pbuilder.
     $ lintian haskell-foobar_1.0-1_amd64.changes
     # pbuilder --build haskell-foobar_1.0-1.dsc
    
  7. Read http://wiki.debian.org/Haskell/CollabMaint/DarcsBasic. Darcs is quite easy to use, and you don t have to be the master of Darcs to merely debianize things anyway. Basically, what I usually do is
     $ darcs record -a; darcs push --repo=debian
    
    Darcs is well-suited to Haskell-related development, but seems you can use Git, too.
  8. Change debian/changelog. UNRELEASED in the first line should be unstable or experimental . Do not forget to close ITP.
  9. Finally, do
     $ debuild -tc; debcommit -r; debrelease; darcs push --repo=debian
    
    That s all folks!

DebConf team: DebConf13 matching fund (Posted by Didier Raboud)

As part of the DebConf13 fundraising effort, a generous sponsor, Brandorr Group, has proposed to start a matching fund in USD for DebConf13; in place through the end of April 30th. The rules are quite simple: For details, please see our Monetary support from individuals page, which also has a short url, for convenience: http://deb.li/dc13donate. Help welcome As always, the DebConf team is looking for volunteers. Some jobs need technical skills, but many DebConf tasks are about working to deadlines on non-technical issues (e.g. fundraising, budgeting, talk scheduling). You can see more information about some of the jobs to be done on the DebConf wiki. Please do think about getting involved and sharing your ideas with us, to help us make DebConf an even more useful event for Debian in the future. We look forward to welcoming you to Vaumarcus!

Evgeni Golov: QiFi the pure JS WiFi QR Code Generator

Some time ago, the QR Code Generator WiFi Access made quite some noise on the mighty Internet. Sure, it is cool to be able to share your WiFi-access with someone by just showing him a QR code he can scan on his phone and the phone will auto-connect to the WiFi. But I get a strange feeling telling someone I do not know my WiFi credentials. No, I do not mean my guests, I know them. I mean that shiny web-service that will generate a QR code for me. The geek in you will now say: So? Open up a terminal, install qrencode, pipe it the string WIFI:S:<SSID>;T:<WPA WEP >;P:<password>;; and you got our QR code . Yeah, that works. But was it one or two semicolons at the end? And was it really just WPA even if my WiFi uses WPA2? Oh and how do I encode that umlaut again? I do not want to remember this. Thus, without too much rumble, may I present you: QiFi the pure JS WiFi QR Code Generator. QiFi is a QR code generator for WiFi access in pure JavaScript. It will generate the QR code on your machine, in your browser, not leaking your precious credentials to anyone (but your guests). Don t trust me? Read the code. Fork the code. Host the code yourself. I hope you will find QiFi at least slightly useful ;-)

Jan Wagner: Chemnitzer Linux-Tage 2013!

Also this year the Debian project was present at Chemnitzer Linuxtage, this time right next the debianforum.de booth. The booth folks arriving on friday organized a flashmob at Expitas after booth setup. Unfortunatly our second planned flashmob at the mensa was boycotted by much more students, so we ended up in the Turm-Brauhaus, which is a great location with good drinks but the service was very harshly. On the next two days at the booth we chatted and discussed with visitors and other exhibitors a wide variety of questions, including 'When will be (the next Debian version) released?' and 'Are there installation disks available?'. The answers was as always 'When we are ready and we will have reached the quality-level we defined', 'No we don't have installation medias, as they are always outdated. Do you have an USB-dongle with you?'. Merchandising was requested by visitors as always, but we just had some leftovers of fosdem, brought by Axel. The demonstration was as usual a small box running Babelbox and xpenguins which worked out the last years too. This year there were three lectures held by Debian related people, about Debian GIS, Aptitude - known but even unknown and SSH and unreliable network connections. The organisation team did a really great job. The social event at saturday night was very exciting and we left it early in the morning. The whole event was indeed fun and a pleasure to find new friends and meet old ones of the Free Software community. Many thanks to Florian Baumann, Jan Dittberner, Andreas Tille, Christian Hoffmann, Axel Beckert, Markus Rekkenbeil, Daniel Schier, Jonas Genannt, Jan H rsch and kurio for taking care and running the booth, which worked out this year extreme smoothly from my point of view. Likewise as the last years a special thanks to TMT GmbH & Co. KG, which kindly donated additional boothtickets, the equipment, its transportation and accommodation for almost half of the booth staff.

Michal &#268;iha&#345;: Server troubles

This night you might have noticed that some services like hosted Weblate or phpMyAdmin wiki being quite flaky. It was caused by DDOS attack which pretty much busted firewall and thus made unable to open new connections. In the morning when I've realized this, I introduced another breakage by too strict filtering on firewall :-). However now everything should be back to normal.

Filed under: English Phpmyadmin Weblate 0 comments Flattr this!

Kartik Mistry: New laptop or how to teach tech to anyone? Part 1

* So, we got new laptop last week. The entire plan was to introduce my wife into tech world or atleast in Debian and/or OpenSouce world. I visited home for one of this and other personal reason(s) [Expect next post on this!]. My wife reported her first bug (installation-report, with help from me) which was closed by mighty bubulle! I handed over couple of freely available Python books and we started with codecademy s Python track. So far, things are good, but being really non-tech person, I m currently working as support system for her. I ve used KDE as desktop. Machine runs on latest kernel from experimental due to issues with hardware mentioned here. I was not able to explain IRC in much depth, so we re using non-free methods like Google Talk for communicating and reporting. Wish us luck! :) I ll report Part 2 when things will be enough to report the progress.

Raphael Geissert: A bashism a week: substrings

Sometimes obtaining a substring in a shell script is needed. The bashism of this week comes handy as it allows one to obtain a substring by indicating the offset and even the length of the substring. This is the $ varname:offset:length bashism, also known as substring expansion.

The portable "replacements" are simple if the offset (and the length) are static. For example, the following code would print the substring of "foo" consisting of only the last two characters:
var=foo
# Replace the bashism $ var:1 with:
echo $ var#?

The length can then be limited with additional pattern-matching removal expansions:
var="portable code"
# Replace the bashism $ var:3:5 with the following code

# Offset is 3, so we use three ? (interrogation) characters:
part=$ var#???

# Length is 5, so we use five ? characters:
echo $ part%$ part#?????

As it can be seen, it is not impossible to replace a substring expansion.

The portable code becomes slightly more complex if the offset and/or the length are dynamic. I leave that as an exercise for the readers.

Feel free to post your code as a comment (use the <pre> tags, please) or in another public way. My own response is already scheduled to be published next week at the same time as usual.

Note: substring expansions can also be replaced with a wide variety of external commands. This is a pure-POSIX shell scripting example.

Martin-&#201;ric Racine: Outstanding issue in Debian: unroutable public v6 IP

Given how Debian and Ubuntu nowadays enable IPv6 support by default, the routing table includes some IPv6 entries by standard. However, this has the unpleasant side-effect that lib C tries to connect to public IPv6 addresses, even in a case when the only IPv6 entries are for loopback and local link. Apparently, libc incorrectly assumes that the mere presence of any IPv6 means that there is a usable default IPv6 route. This results in, among other things, APT failing at fetching packages from the Debian repository if the DNS rotation returned the IPv6 address for the server first. I was thus wondering whether libc6 could be made to reject public IPv6 addresses, in cases when the host has no IPv6 gateway in its routing table? Or would there be a smarter way to prevent applications from failing at contacting IPv6 addresses whenever there is no IPv6 connection to the outside world?

19 March 2013

Daniel Pocock: My low-tech investment strategy

People often ask me why I invest in low-tech, old-school investments like gold and silver bullion. Surely for somebody working with technology every day, I would have some advantage in the world of investment? The events of Cyprus this week should provide a clear answer: we've all been told that there is nothing safer than cash in the bank, protected by a Government deposit insurance scheme. Yet it appears that in a pattern reminiscent of the real life Ocean's 11 bank robbery, the culprits waited for a long weekend and set about doing the unthinkable after the lights went out on a Friday night. Three days wasn't enough for them to complete their plan (or getaway?), and so Cypriot banks are closed for a further two days. Just like in the type of bank robbery seen in the movies, the money was put there by people who worked for it, and it is taken away by people who didn't. Sadly, this is also a reflection on a society as a whole. As a result of apathy, contentedness, obsession with non-issues such as immigration, or excuses about how we don't care about politics, nobody has bothered to watch the politicians. The 2008 British film The Bank Job showed real robbers sent into a bank in the traditional manner (it is based on the true story of the 1971 Baker Street robbery). Although not substantiated, conjecture in the press suggests that British authorities were involved and got real crooks to make it look authentic. Today's press suggests that Cypriot authorities are in a similar way trying to make it look like Germany is the bad guy. Back to the gold and silver. A recent report in Science Magazine suggests it takes 100,000 years for natural processes such as earthquakes to create even small deposits of precious metals. Most politicians are taking their pension in less than 10 years and wouldn't have the time or power to interfere with or manipulate such an inherently natural physical phenomenon, and this is why bullion has remained a consistent and respected investment for thousands of years. Does anyone imagine that fresh reserves of gold are forming in the cavities under Cyprus during this week's tremors? Or will those cavities be somewhat more sparse?

Matthew Garrett: Using pstore to debug awkward kernel crashes

The problem with Samsung laptops bricking themselves turned out to be down to the UEFI variable store becoming more than 50% full and Samsung's firmware being dreadful, but the trigger was us writing a crash dump to the nvram. I ended up using this feature to help someone get a backtrace from a kernel oops during suspend today, and realised that it's not been terribly well publicised, so.

First, make sure pstore is mounted. If you're on 3.9 then do:

mount -t pstore /sys/fs/pstore /sys/fs/pstore

For earlier kernels you'll need to find somewhere else to stick it. If there's anything in there, delete it - we want to make sure there's enough space to save future dumps. Now reboot twice[1]. Next time you get a system crash that doesn't make it to system logs, mount pstore again and (with luck) there'll be a bunch of files there. For tedious reasons these need to be assembled in reverse order (part 12 comes before part 11, and so on) but you should have a crash log. Report that, delete the files again and marvel at the benefits that technology has brought to your life.

[1] UEFI implementations generally handle variable deletion by flagging the space as reclaimable rather than immediately making it available again. You need to reboot in order for the firmware to garbage collect it. Some firmware seems to require two reboot cycles to do this properly. Thanks, firmware.

comment count unavailable comments

Michal &#268;iha&#345;: Libravatar support in Weblate

For some time, Weblate was showing avatars for users. Just as I've discovered Libravatar - free and federated alternative to Gravatar, I thought it would be better replacement. Quickly looking at their website, it seems that they transparently provide all avatars from Gravatar as well, so the migration seems to be pretty much painless. Basic replacement to use their server is just matter of changing base URLs, however to support federated behavior, you have to install pyLibravatar. Weblate in Git now supports both these ways. While implementing the client side, I did also setup my own instance of Surrogator to provide avatars for some of my domains. Surprisingly this worked fine without problems, but let's see how much used this will actually become.

Filed under: English Phpmyadmin Weblate 2 comments Flattr this!

Gergely Nagy: Rebuttals, or the lack of thereof

It is customary during Debian Project Leader elections to write a rebuttal of the other candidate's platform. However, this is very hard to do this year, as there are a lot of overlaps between platforms, goals and ideas this time around. It is hard to rebute another platform, without also rebuting one's own. So instead of trying to highlight where I disagree (there's very little of that, if at all), I'd like to point out where I found each platform lacking.Mind you, these notes are primarily based off of the platforms, because I'm sadly still behind on my debian-vote@ reading list. Furthermore, due to the high level of similarity between platforms, I will not always single out one or the other, but mention what I found lacking, or troublesome in general instead. So unless stated otherwise, my thoughts below apply to both Moray's and Lucas' platforms.The thing I miss most from both platforms is the curious lack of plans about non-packaging project members (something which I strongly emphasize in my own platform). Similarly, even though Moray does mention encouraging more local events, I find those few paragraphs a little bit lacking; and Lucas does not even mention local teams in his platform, even though they are a very, very important part of the wider Debian community, and a terrific tool in our asset. They can further our reach by long miles! Considering their importance, little's said about either local teams or local events, even when the candidate does explicitly recognise their importance.On the other hand, Lucas writes about innovation within Debian (which I found lacking in Moray's platform) - but while he does bring up the topic, I sadly found that section of his platform vague, a mistake I made last year myself, and which I tried to avoid this time, by explicitly listing a few of my ideas on how I'd imagine inspiring & motivating people (which, in turn, would foster innovation within the project).From what I see - and I may be wrong here, and I am obviously biased - both platforms are reasonably explicit when it comes to easier topics, things that we know to work, and which we'd all continue doing in the very same spirit as our predecessor. But when it comes to experimenting, to new ideas, I found both platforms too vague. There are exceptions, of course, Moray's intern idea for example is sufficiently well explained, as far as it is possible within the limits of a platform. I found no similar thing in Lucas' platform, however, most of the ideas he explained were technical things, and those are the areas where we're fairly good at, where we already have a reasonably chance of improving - and thus, an easier topic. I was suprised by Lucas' platform, because even though he lists the need for experimentation important, the lack of truly experimental ideas was lacking - I found more in Moray's platform.All in all, I found the discussions on debian-vote@ much more useful so far, than the platforms, a lot of things were asked and answered there that the platforms did not touch.

Next.

Previous.