Search Results: "reg"

22 September 2006

Scott James Remnant: Upstart in Universe

upstart is a replacement for the init daemon, the process spawned by the kernel that is responsible for starting, supervising and stopping all other processes on the system. The existing daemon is based on the one found in UNIX System V, and is thus known as sysvinit. It separates jobs into different “run levels” and can either run a job when particular run levels are entered (e.g. /etc/init.d/rc 2) or continually during a particular run level (e.g. /sbin/getty). The /etc/init.d/rc script is also based on the System V one (and is in the sysv-rc package), it simply executes the stop then start scripts found in /etc/rcN.d (where N is the run level) in numerical order. Why change it? Running a fixed set of scripts, one after the other, in a particular order has served us reasonably well until now. However as Linux has got better and better at dealing with modern computing (arguably Linux’s removable device support is better than Windows’ now) this approach has begun to have problems. The old approach works as long as you can guarantee when in the boot sequence things are available, so you can place your init script after that point and know that it will work. Typical ordering requirements are: This worked ten years ago, why doesn’t it work now? The simple answer is that our computer has become far more flexible: We’ve been able to hack the existing system to make much of this possible, however the result is chock-full of race conditions and bugs. It was time to design a new system that can cope with all of these things without any problems. What we needed was an init system that could dynamically order the start up sequence based on the configuration and hardware found as it went along. Design of upstart upstart is an event-based init daemon; events generated by the system cause jobs to be started and running jobs to be stopped. Events can include things such as: In fact, any process on the system may send events to the init daemon over its control socket (subject to security restrictions, of course) so there is no limit. Each job has a life-cycle which is shown in the graph below: The two states shown in red (“waiting” and “running”) are rest states, normally we expect the job to remain in these states until an event comes in, at which point we need to take actual to get the job into the next state. The other states are temporary states; these allow a job to run shell script to prepare for the job itself to be run (“starting”) and clean up afterwards (“stopping”). For services that should be respawned if they terminate before an event that stops them is received, they may run shell script before the process is started again (“respawning”). Jobs leave a state because the process associated with them terminates (or gets killed) and move to the next appropriate state, following the green arrow if the job is to be started or the red arrow if it is to be stopped. When a script returns a non-zero exit status, or is killed, the job will always be stoped. When the main process terminates and the job should not be respawned, the job will also always be stopped. As already covered, events generated by the init daemon or received from other processes cause jobs to be started or stopped; also manual requests to start or stop a job may be received. The communication between the init daemon and other processes is bi-directional, so the status of jobs may be queries and even changes of state to all jobs be received. How does it differ from launchd? launchd is the replacement init system used in MacOS X developed as an “Open Source” project by Apple. For much of its life so far, the licence has actually been entirely non-free and thus it has only become recently interesting with the licence change. Much of the goal of both systems appears initially to be the same; they both start jobs based on system events, however the launchd system severly limits the events to only the following: Therefore it does not actually allow us to directly solve the problems we currently have; we couldn’t mount filesystems once the “filesystem checked” event has been recived, we couldn’t check filesystems when the block device is added and we certainly couldn’t start daemons once the complete filesystem (as described by /etc/fstab) is available and writable. The launchd model expects the job to “sit and wait” if it is unable to start, rather than provide a mechanism for the job to only be started when it doesn’t need to wait. Jobs that need /usr to be mounted would need to spin in a loop waiting for /usr to be available before continuing (or use a file in a tmpfs to indicate it’s available, and use that modification as the event). This is not especially surprising given that Apple have a high degree of control over both their hardware and the actual underlying operating system; they don’t need to deal with the wide array of different configurations that we have in the Linux world. Had the licence been sufficiently free at the point we began development of our own system, we would probably have extended launchd rather than implement our own. At the point Apple changed the licence, our own system was already more suitable for our purposes. How does it differ from initng? Initng by Jimmy Wennlund is another replacement init daemon intended to replace the sysvinit system used by Linux. It is a dependency-based system, where upstart is an event-based system. The notion of a dependency-based system is interesting to talk about at this point. Jobs declare dependencies on other jobs that need to happen before the job itself can be started. Starting the job causes its dependencies to be started first, and their dependencies, and so on. When jobs are stopped, if running jobs have no dependencies, they themselves can be stopped. It’s a neat solution to the problem of ordering a fixed boot sequence and the problem of keeping the number of running processes to a minimum needed. However this means that you need to have goals in mind when you boot the system, you need to have decided that you want gdm to be started in order for it, and its dependencies, to be started. Initng uses run levels to ensure this happens, where a run level is a list of goal jobs that should be running in that run level. It’s also not clear how the dependencies interact with the different types of job, a dependency on Apache would need the daemon to be running where a dependency on “checkroot” would need the script to have finished running. Upstart handles this by using different events (“apache running” vs. “checkroot stopping”). Again while interesting, Initng does not solve the problems that we wanted to solve. It can reorder a fixed set of jobs, but cannot dynamically determine the set of jobs needed for that particular boot. A typical example would be that if the only dependency on the job that configures networking is the mount network filesystems job, then should that job fail or notbe a goal (e.g. because there are no network filesystems to be mounted) the result is that network devices themselves will not be configured. You could make everything a goal, and just use the dependencies to determine the order, however this is less efficient than just ordering the existing sysv-rc scripts (which can be done at install time). Another example is that often you simply don’t know whether something is a dependency or not without reading other configuration, for example the mount network filesystems may be a dependency of everything under /usr or may just be a dependency of anything allowing the user to login if it just mounts /home. The difference in model can be summed up as “initng starts with a list of goals and works out how to get there, upstart starts with nothing and finds out where it gets to.” How does it differ from Solaris SMF? SMF is another approach to replacing init developed by Sun for the Solaris operating system. Like initng it’s a dependency-based system, so see above for the differences between those systems and upstart. SMF’s main focus is serive management; making sure that once services are running, they stay running, and allowing the system administrator to query and modify the states of jobs on the system. Upstart provides the same set of functionality in this regard, services are respawned when they fail and system administrators can at any time query the state of running services and adjust the state to their liking. Will it replace cron, inetd, etc? The goal of upstart is to replace those daemons, so that there is only one place (/etc/event.d) where system administrators need to configure when and how jobs should be run. In fact, the goal is that upstart should also replace the “run event scripts” functionality of any daemon on the system. Daemons such as acpid, apmd and Network Manager would send events to init instead of running scripts themselves with their own perculiar configuration and semantics. A system administrator who only wanted a particular daemon to be run while the computer was on AC power would simply need to edit /etc/event.d/daemon and change “on startup” to “on ac power”. What about compatibility? There’s a lot of systems administrators out there who have learned how Linux works already and will not want to learn again immediately, there’s also a large number of books that cover the existing software and won’t cover upstart for at least a couple of years. For this reason, compatibility is very important. upstart will continue to run the existing scripts for the forseeable future so that packages will not need to be updated until the author wants. Compatibility command-line tools that behave like their existing equivalents will also be implemented, a system administrator would never need to know that crontab -e is actually changing upstart jobs. Does it use D-BUS?
“To D-BUS people, every problem seems like a D-BUS problem.” —Erik Troan
The UNIX philosophy is that something should do just one job, and do it very well. upstart’s one job is starting, supervising and stopping other jobs; D-BUS’s one job is passing messages between other jobs. D-BUS does provide a mechanism for services to be activated when the first message is sent to them, thereby starting other jobs. Some people have taken this idea and extended it to suggest that all a replacement init system need do is register jobs with D-BUS and turn booting into a simple matter of message parsing. This seems wrong to me, D-BUS would need to be extended to supervise these services, provide means for them to be restarted and stopped; as well as deal with being process #1 which means cleaning up after children whose parent’s have died, etc. It seems far simpler to arrange for D-BUS to send an event to init when it needs a service to be started, and focus on being a very good message passing system. The IPC mechanism used by upstart is not currently D-BUS because of various problems, however it’s always been expected that even if init itself doesn’t communicate with D-BUS directly, there would be a D-BUS proxy that would ensure messages about all init jobs and events would be given to D-BUS and D-BUS clients could send messages to init to query and change the state of jobs. What is the implementation plan? Because this is process #1 we are changing, we want to make sure that we get it right. Therefore instead of releasing a fully-featured daemon and configuration to the world, we’re developing it in the following stages:
  1. Principal development; at the end of this stage the daemon has been implemented and can manage jobs as described.
  2. Replacement of /sbin/init while running the existing sysv-rc scripts. This is the shake-down test of the daemon, can it perform the same job as the existing sysvinit daemon without any regressions?
  3. /etc/rcS.d scripts replaced by upstart jobs. These consitute the majority of tasks for booting the system into at least single-user mode, and contain many of the current ordering problems and race conditions. If the daemon solves the problems here, it will be a success.
  4. Other daemon’s scripts replaced by upstart jobs on a package-by-package basis; this will be an ongoing effort during which upstart will continue running the existing sysv-rc scripts as well as its own jobs. During this time the event system may be tweaked to ensure it truly solves the problems we need.
  5. Replcement of cron, atd, anacron and inetd. This will happen alongside the above and result in a single place to configure system jobs.
  6. Modification of other daemons and processes to send events to init instead of trying to run things themselves.
The current plan is that we will be at least part of the way into stage #3 by the time edgy is released, with that release shipping with upstart as the init daemon and the most critical rcS scripts being run by it to correct the major problems For edgy+1 we hope to have completed stage #5 and be at least part of the way into the implementation of stage #6. From the start of development of edgy+2, no new packages will be accepted unless they provide upstart jobs instead of init scripts and init scripts will be considered deprecated. What state is it in now? The init daemon has been written and is able to manage jobs as described above, receiving events on the control socket to start and stop them. This has now been uploaded to the Ubuntu universe component in the upstart package for testing before it becomes the init daemon. We welcome any experienced users who want to help test this; install the package and follow the instructions in /usr/share/doc/upstart/README.Debian to add a boot option that will use upstart instead of init. If your system boots and shut downs normally (other than a slightly more verbose boot without usplash running) then it is working correctly. Other types of events will be added as required during development and testing. Currently only a basic client tool (initctl) has been written, compatibility tools such as shutdown will be written over the next week or two before it replaces our sysvinit package.

Erich Schubert: Why closed source drivers suck: ATI cancels support for many older Radeons

With the latest driver "update", ATI removed support for the following graphics cards: This is why closed source drivers suck. My Mobility FireGL 7800 is also not supported by the official ATI driver. Well, ATI obviously only cares about new sales, not about users. (Except that users like me will not but ATI anymore, but go for e.g. Intel) Fortunately, there are some opensource drivers for these cards. They also have 3D acceleration. Let's just hope ATI releases the documentation needed to support the newer cards (9600+, X300+) before they also discontinue support for these. (Or at least allows redistribution of the existant 2D drivers that have already been written for some of the newer ATI cards) So don't buy any newer radeon, because there is no long-term-support for them. In a few years, you won't be able to use them anymore!

21 September 2006

Russell Coker: more on vision

I had a few comments on my last so I decided to write a new post about it.

Firstly in regard to Elspeth's comment. I agree that children should wear glasses if necessary. That part of my entry was not clear, I was trying to make the point that I can understand children not wanting to wear glasses because they think it's uncool. But adults should make decisions on more important things such as what is best for their eyes. There are real reasons for needing eye surgery, if without glasses your vision is so bad that you are legally blind then an ophthalmologist may recommend surgery for that. In cases of extreme vision problems apparently a combination of surgery and glasses is required for good results. I also think it makes sense for people who need surgery for their work, for example athletes such as Tiger Woods. Looking cool is not a real reason for surgery, especially not for the small increment of coolness that some people believe is associated with not wearing glasses.

All operations involve some risk. Risk to your vision is not worth a small amount of convenience and possibly looking cool. Besides, it's widely regarded that people with glasses are more intelligent! ;)

Shintaro mentioned that there is a risk of retinal damage from being short-sighted. What I want to know is whether the risk of that can be alleviated if you wear glasses all the time? If you wear your glasses everywhere except in bed, in the shower, and in the sento, does that stop this problem? Maybe I should try and wear my glasses for more than the ~15 hours a day that I currently do.

Finally an anonymous poster noted that they didn't know anyone else who had an optical migraine. My ophthalmologist mentioned that it's rare to have a migraine that only affects the vision and nothing else. I feel fortunate to have it like that, the list of other migraine symptoms sounds very unpleasant. Of course only having had it once I can't be sure that next time it will be the same. I might get the nasty symptoms next time. :(

However one problem with what I experienced is that it came on suddenly with no warning. It would be very unpleasant to suddenly lose central vision while driving (I would have to hope that the ability to react to objects without consciously noticing them works well). Fortunately I have only been driving about 300K per month in recent years and I can probably reduce this. So the chance of it happening while driving is quite small.

Axel Beckert: IrDA and Sound on the IBM ThinkPad 760ED

Since I currently have Debian Sarge and a quite actual kernel (2.6.17.13) successfully running on my 10 years old Pentium-1-ThinkPad bijou, I today thought I could see, if I get the builtin infrared port working. Since lspci and lshw didn’t help much to find out the details about the IR port, I looked at Werner Heuser’s tuxmobil for such information. And I was right: tuxmobil listed all the necessary informations: It’s an internal serial port infrared device on /dev/ttyS0 working without any special driver. It seems to only need the kernel modules irda, sir_dev and irtty_sir as well as probably also the Debian package irda-utils. I could immediately play around with gnokii after configuring it ot use the right serial port and the right drivers for my Nokia 6310i. Also sending SMS via xgnokii worked. It was funny to be able to play ringtones on the phone by clicking around on a virtual piano keyboard. Inebriated by the success with IrDA, I decided to go on and try myself with the notorious Mwave DSP sound and modem card, which came with some of the ThinkPad 760 versions including my ED version. This didn’t start as easy as IrDA since tuxmobil this time writes: But MWave and some other sound technologies won’t work or are very hard to get working, e.g. booting to DOS, loading a driver, then using the soundcard as a standard SB-PRO. So you might need a commercial sound driver. Well, I too often noticed that negative information about hardware support in Linux found on the net with a search engine often is outdated and the formerly badly missed hardware support is available nowadays. So even not giving up on a 404 for a promising site, I found the no more existing webpage of the Mwave Project for Linux in the WayBack Archive. There I found a still working link to Thomas Hood’s Debian GNU/Linux on IBM ThinkPad 600X page which mentions tpctl, the ThinkPad configuration tools for Linux. And happily, they’re included in Sarge as package tpctl. Another link still worked, too: The one to Dale Wick’s Thinkpad under Linux page, which tell’s what I’ve expected: Some of the information on tuxmobil seems to be outdated, although Dave’s page mainly concerns the modem functionality of the Mwave DSP. So I first installed tpctl on bijou, then tried to compile the ThinkPad kernel modules from package thinkpad-source with my both current kernels, 2.4.33.3 and 2.6.17.13 using make-kpkg. The modules built fine for the 2.4 series kernel, but failed on the two latest 2.6 kernels (2.6.17.13 and 2.6.18), I’m mainly running. So I switched over to playing around with the 2.4.33.3 kernel. The thinkpad modules loaded fine and I get access to a lot of the ThinkPad’s special hardware. But tpctl at least doesn’t work as expected regarding Standby and Suspend: It has no effect while requesting Suspend or Standby using apm still works fine. But nothing to see in direction sound, modem or mwave. So I had a closer look at documentation around the mwave module. Tried to find out appropriate I/O and IRQ settings for the module, but what I found in the Linux ACP Modem (Mwave) mini-HOWTO didn’t help. The module just didn’t load. Then I noticed that module seems to need an mwave daemon. A search in the Debian package repository found the package mwavem. No long thinking – installed it. But the installation script gave the same errors when trying to load the module. man mwavem(8) gave the reason: Only the 3780i chip is supported. Earlier Mwave DSPs, which were used for sound generation as well as modem functionality, are not supported. Also according to the kernel documentation for the mwave sound module, the only way to get it making some sounds seems to be to boot to DOS, load the Windows 95 drivers, then call loadlin and warm-boot Linux from DOS. So native Mwave sound on IBM 760 ThinkPads under Linux is really still a dream while the Mwave modem is said to work nowadays. I will continue my ThinkPad 760 journey with a closer look at the pcspkr driver and at eBay, where I’ll look for another 760 series ThinkPad, but with ESS1688 soundcard and no modem instead of the Mwave DSP, e.g. a 760L, 760LD, 760EL, 760ELD or maybe also a 765L. But I won’t do that today. It’s already much too late. Should have gone to bed about two hours ago…

Now playing: Auld Lang Syne (monophonic on the phone :-)

20 September 2006

Simon Richter: Wacky ideas, issue #1: template package stanzas in the source package control file

At present, we can use variable substitutions in the debian/control file in all fields but one: the package name. For a lot of packages, e.g. kernel modules, it would help a lot if it were possible to use a regular expression in the package name field, so it wouldn't be necessary to rewrite large parts of the control file when adapting a module package to a new kernel version. This, however would have the drawback of making it impossible to generate a list of binary packages built by a particular source package. An attempt of solving that issue would be to use a substitution regex that would turn a list of packages/architectures/... into a list of package names. Throw in regex Build-Dependencies, and the autobuilders could handle compiling all the modules for new kernel versions by themselves, without requiring attention from module package maintainers.

Edd Dumbill: Quick! Get a discount on XTech WebDev London

There are just three days left to get discount registration for XTech WebDev London: our new one-day training event on Rails, Ajax, REST and web application design and development. It will be held in London on 31 October 2006. It's a great opportunity to get yourself and your team up to date with the latest web development technologies. Our speakers are real world practitioners who will tell you about the pitfalls as well as the promises. You will hear: Additionally, everybody gets a copy of Cal Henderson's Building Scalable Web Sites, a buffet lunch and plenty of time to talk with the speakers and other attendees. We start at a developer-friendly time of 10am, which also gives plenty of time for those coming from further than London. There'll also be social events in the evening where you can continue networking and learning in more relaxed surroundings. Register now to attend at the cheaper price of 275.

Andrew Pollock: [life] Reno air races and air show

I asked Marc-who-shall-not-be-linked-to if he could take Sarah and I for a plane ride some time, not expecting it to be for a while, and he turned around and offered to take us out on Saturday, to Reno to see the air show. It was only after we got there that I discovered it was predominately air races, with a bit of a show tacked on. That was okay, it was a good day out. The flight, in a little single-prop, four-seater Trinidad, took about 90 minutes each way, give or take, and was fun. I'd already been in a little plane once before, so it didn't have quite the same novelty value for me as it did for Sarah, who was really excited. This was our first visit to Nevada, if you call flying into Reno International, with a 20 minute cab ride to Reno Stead Field, "seeing Nevada". Nevada's cabs were interesting, with rooftop advertising ranging from the local adult venues featuring pole and cage dancers, to the region's abstinence advocacy group. The airshow itself was an interesting display of patriotism and propaganda. I've never been to an airshow in Australia either, and I don't really know a lot about aeroplanes, but it's fun watching cool military aircraft whizzing around. We've been a bit spoiled living near the Moffet Federal Airfield, but even then, you only get to see stuff flying straight in or out. This was cool to see stuff flying around for the express purpose of being ogled. As for the patriotism and propaganda, I think it was the display of the F-15 Eagle. They had some dude from the Air Force on the public address system talking about whilst it did its tricks, and he was constantly going on about (your) US Air Force's military superiority and how the F-15 could do anything and blah blah blah, all with "God Bless the USA" being played in the background. In fact various versions of this song got played throughout the day, with the crowd often singing along. It was the lines
I'm proud to be an American
where at least I know I'm free,
that particularly make me smirk. It's like America's the only country in the world that's free or something. That, and God only blesses the USA. Gimme a break. Oh, and we all had to stand up for the national anthem. It's funny. Australia just seems so unpatriotic by comparison. Not that I've been to an air show in Australia, so I don't know what sort of a military slant they have. There was a bit of an exhibition also attached to the show, where all manner of government types were doing recruiting, from the state troopers to the military. I ran into the Australian family of a guy from the RAAF on exchange with the USAF, and a lady from Darwin running a stall that sold Australian products. Overall it was a good day out, with some more exposure to good old American culture. Photos from the outing are here

Russell Coker: War On Terror - the game

TerrorBullGames has just released the board game War On Terror. The first I heard of this was a short article in a local news paper about how much the game has offended some people (quoting someone who was injured in the London bombings). A co-creator of the game Andy Thompkins said "We accept that some people think this is in poor taste and may see it as puerile. But we would say that launching an illegal war on Iraq is in poor taste".

It's not as if profiting from terrorism is anything new. Governments in Australia, the UK, and the US have profited from it at the ballot box and also used it to stifle opposition parties to get unpopular legislation approved. An example of this is the attempts of the Bush regeime to legalise torture, see the Washington Post and The Age (Australia).

Shortly after 9-11 almost every computer company that had anything to do with backups or disaster-recovery was advertising heavily. Oil companies have done particularly well with high prices, they would have done even better if the plans for Iraq had succeeded.

TerrorBullGames appears to have an aim to draw attention to the lies of politicians, which makes them better than everyone else who has profited from 9-11. Maybe if they draw enough attention to the bad things that our governments are doing they can influence the results of elections, and we can get governments that don't promote terrorism.

Here's a review of the game.

19 September 2006

Edd Dumbill: EuroFoo reflections

I got an enormous amount out of the just-finished European FooCamp, with lots of thoughts sparking off and interesting things to consider. Jon Mountjoy proposed a theory to me that Web 2.0 and the enterprise weren't in fact as far apart as a naive observe might imagine. He reckons that mashups, tagging and the like do happen within the enterprise, and in fact are often solving harder problems than found in the wilds of the web. There is a lot in common between Web 2.0 and SOA (even aside from buzzword compliance factors). This is a theme I'd like to follow through. Who are the hackers on the inside of companies, and what stories do they have to tell? Gavin Starks from Global Cool really opened our eyes again to the problem of the environment, and introduced the interesting position that Global Cool are taking. If you want to do anything real right now to avoid catastrophic consequences, it's too late to wait for government initiatives to bear fruit. Private citizens must act too. And that's the aim of Global Cool: educating and lobbying the individual, not the government. I was struck, as were others, by the unfortunate irony that conferences have a big environmental cost in the travel involved, as we sat there among people from many countries. I want to now investigate how XTech could be better in this regard, through carbon offsetting and similar schemes. I guess being in Paris is already a good start, as trains are apparently only 25% as polluting as planes, though this still seems like a lot! Claus Dahl led an interesting and wide-ranging discussion about Second Life as a prototyping space for real life invention. Too many themes there to summarise neatly, but we did have an entertaining side discussion about Second Life's potential environmental impact due to CPU consumption and data centers. One suggestion was that objects and activities could be annotated in-world with their environmental cost. Simon Willison energetically explained OpenID, a decentralized identity system proposed by SixApart and already live in systems such as LiveJournal. It attempts to solve the problem of a username and password pair for every site you visit, without the controversy of centralisation suffered by projects such as Microsoft's passport. Simon demonstrated a proof of concept that I think will be a very neat answer to site providers who ask "why should I support OpenID?" (Sneak preview: because if you don't, it's going to be astonishingly easy for a middleman to provide it, and you wouldn't want that.) I also took time to learn about something I'd been interested in but not known much about, 3D printing and "fabbing". Simon Wardley led a great overview of current systems for 3D printing and their various attributes, and indicated where the current trends were going. It doesn't seem so unrealistic that there'll soon be affordable 3D printing bureaux similar to walk-in reprographic facilities like Kinkos. Plenty more went on that I've not got time to transcribe, but I think will flavour my thinking over the months to come. I was fortunate to be among some incredibly intelligent and welcoming people. My thanks to O'Reilly for putting this on, and to everyone else who went for being inspiring companions. Oh, one more thing. Belgians are excellent at confectionery.

Steve Kemp: Everybody rolls with their fingers crossed

I’ve been using monit on my Debian servers for a long time now. For those that don’t know monit is a simple monitoring service which allows you to check that processes are running, automatically restarting them on failure, etc. When I first started using monit I manually added all the checks to /etc/monit/monitrc - but that soon became unwieldy, even with only three machines to maintain. Adding new software meant I had to keep updating the file, and because each server ran different services things couldn’t be shared. Not good. After I while I figured I’d create /etc/monit/includes and just drop files into there - that way I could include them:
# /etc/monit/monitrc
	
include /etc/monit/include/*.monit
Now to monitor a service I’d just create the appropriate file with a .monit suffix. All was good. Until I needed to start monitoring different services on different systems where adding and removing the files got to be painful. Surely there must be a better way I wondered to myself? Now there is. I’ve come up with a nice approach (perhaps the obvious one to everybody else?): I now have two directories: The master.d can have all your *.monit files dropped into it, regardless of whether they apply to the given host or not. To actually monitor a service you’d symlink master.d/foo.monit to include.d/foo.monit - In much the same way as you use symlinks to handle Apache sites and modules in Apache2.x Now the really clever bit is that you write a (perl) script to automatically parse each .monit file and only link in the ones which apply to this host. That means you can use cfengine to copy everything into the master.d/ file - and not care if some tests only apply to other hots. (e.g. You can crteate apache2.monit - and that will be symlinked in if apache2 is installed on the current host, but ignored otherwise.) For the moment my parsing and detection code is very simple, but it is working. In the future I guess I could create foo.monit and foo.package - then only link in the file foo.monit if the Debian package contained in foo.package was installed. The script is in my cvs repository along with a collection of test files.
I will attempt to catch up on mail tomorrow…

Jeroen van Wolffelaar: Utrecht Bug Squashing Party

Tomorrow we'll have the first real-life meeting, together with Thijs Kinkhorst and dr. Bas Zoetekouw, to organize details about the upcoming Debian Bug Squashing party in Utrecht, The Netherlands, on the weekend of September 30th. As a study association, A-Eskwadraat has had Debian Developers for quite some time, from Bas since 2000 until our most recent addition, Thijs, but we've never organized a Debian event – yet. In 2002 though, there was a Mozilla 1.0 release party where also the release of woody was celebrated. The university has been supportive of the initiative, and is offering the location for free, as long as there are not too many people around that they feel the need for (expensive) security to be on-site 24h/day. For that reason, and also for food planning, please do subscribe yourself in wiki. If more than 25 people end up subscribing, we'll let you know how we'll arrange that. We're still not having a definitive deal with a sponsor, so don't know how flexible we are in this regard. At this moment, we've also got a handful of international attendees too, including Debian's "Second in Command", Steve McIntyre. I'm looking forward to it, and to meeting various Debian contributors (mostly again). See you in Utrecht!

Clint Adams: Draft Debian Code of Business Conduct

The following Code of Business Conduct ('the Code') has not been approved by the Board of Directors of Debian, SPI, or any U.N. committees: Debian and its subsidiary companies operate in many different markets and countries throughout the world. In most instances, we respect national laws and industry codes of conduct. We, the directors and employees of all companies under the Debian umbrella ('corrupt fuckers'), recognize our obligations to all who have a stake in our success including shareowners, clients, employees, and suppliers, unless those obligations run counter to our profitability; Information about our business shall be communicated clearly, and accurately in a non-discriminatory manner and in accordance with local regulations, unless doing so would impact negatively our profitability; We select and promote employees on the basis of their willingness to support our aims and their potential for profitability, without discrimination or concern for race, religion, national origin, creed, sex, sexual orientation, age, disability, or scruples, as long as doing so would improve our profitability; We believe that the Debian mailing lists should be safe and civilized; we will not tolerate sexual harassment, discrimination or offensive behavior of any kind, which includes the persistent demeaning of individuals through words or actions, the display or distribution of offensive material, or the questioning of our integrity, unless such tolerance would improve our profitability; We will not use, possess or distribute illegal drugs or software, unless doing so would improve our profitability; We will treat all information relating to Debian's business, or to its clients, as confidential. In particular, 'insider trading' is expressly prohibited and confidential information must not be used for personal gain, unless such personal gain is acceptable to at least two of the persons involved; We will not knowingly create work which contains statements, suggestions or images offensive to general public decency and will give appropriate consideration to the impact of our work on minority segments of the population, whether that minority be by race, religion, national origin, creed, sex, sexual orientation, age, disability or scruples, unless that minority can be safely ignored without damaging our bottom line; We will not for personal or family gain directly or indirectly engage in any activity which competes with companies within the Debian umbrella or with our obligations to any such company; We will not offer any items of personal inducement to secure business. This is not intended to prohibit appropriate entertainment, the making of occasional gifts of minor value, or any monetary contributions transferred through PayPal, unless the client has a policy which restricts this; No corporate contributions of any kind, including the provision of services or materials for less than the market value, may be made to politicians, political parties or action committees, without the prior written approval of the DPL and a clear assessment of the rate of return on the investment; and we will comply with all applicable local laws and regulations, and any other laws with an international reach, such as the US Foreign Corrupt Practices Act, where relevant; We will disclose fully to the DPL the nature and all relevant details of inducements paid to us by external parties, whether or not such inducements affect our judgments and actions, and we will accord the DPL a percentage of such inducements for use in re-election campaigns or discretionary spending; When we engage in bookmaking, the standard vig should be 10%, and any exceptions should be appealed to the Racketeering Committee, a self-selecting committee with no external oversight; We will not NMU or hijack any packages if the maintainer is refusing to act on said packages as part of a negotiation for inducements; We will not underbid our colleagues in the midst of such negotiations; We will always assume that any inaction or incompetence is due to such negotiations, whether or not that has been disclosed, as it is often the wish of the persons involved to keep such dealings hush-hush; We will spout trite falsehoods such as We are all volunteers here , and At some point you just have to trust people , as a standard business practice; We will avoid sarcasm at all costs.

Jos Parrella: BSP Venezuela: Afterparty

Last saturday around 2100 (UTC-0400) some people started joining the #debian-ve IRC channel at OFTC, in order to participate on the very first Venezuelan Bugsquashing Party. We had a lot of people interested not only in squashing but also developing for Debian and other topics. Some DD’s were around, specially An bal Monsalve Salazar (anibal) who has been very helpful on testing and uploading packages. Both me and Jos Luis Rivas (ghostbar) made a couple of NMU’s (in his case, xfe and divine; in mine, sdr and orca), fixing six RC bugs. Jos Luis is like 17 or 18 years old and has proven to be a very energetic Debian collaborator. Other maintainers from Debian Venezuela (actually, we’re eleven persons as of last week) were around but couldn’t make a NMU at the time of the event. Others weren’t even present. It was a very small BSP indeed, but we learned lots of things and hopefully our work will help improving the quality in Debian a little bit. It also settles our desires as a group to improve our knowledge and work together to improve the Project without disrupting the overall ecosystem. By the way, the Venezuelan Debconf is definitely going to happen between October 17th. and 21st. Hopefully we’ll have Benjamin Mako Hill, Enrico Zini, Alvaro Lopez Ortega (OMG! Cherokee!) and Randal Schwartz sharing a nice time with people from all parts of Venezuela and the rest of South America. Some local Debian maintainers will set up some nice workshops and demonstrations, ranging from Xen and LTSP in Debian to QA and the local GNU/Linux distribution projects. This local Debconf is part of a larger event, the World Forum on Free Knowledge, which some people at Debian Venezuela help to make. Returning to the BSP topic, I was looking out at a couple of bugs out there, but I lack the hardware and the experience to handle them. One of this is #333915 and other orca bugs, and other one is #385078 regarding a Debconf script in xserver-xorg. The morning before the BTS I was testing the MBONE tools with a friend of mine, and we were quite unhappy by the fact that sdr was almost unusable (passing the mouse cursor over some buttons resulted in annoying notices). So, if you use sdr, please test the last NMU I sent, which fixes two bugs. Just for reference, the webpage where I keep my Debian-related work is here. The case where I learned most was #386938, regarding xserver’s FTBFS in s390. Events like BSP are a great way to motivate people to participate in the Project: while trying to learn anything about this bug I ended reading documentation from IBM, asking advice from someone with an S/390, sending a couple of emails to debian-s390@lists.d.o, browsing at a DD patch in upstream, looking at buildd logs, searching the Web for opcodes lists… usually trying to explain how all this pieces join in a sane way (most times; well, some times, well, seldomly) is quite difficult for someone who tries to promote Debian, but technical events like the BSP provide a really accurate way to see how things work in and around Debian.

18 September 2006

Evan Prodromou: F te de la Vertu CCXIV

It's the Festival of Virtue today in the French Revolutionary Calendar -- the first of the five wp:sansculottides, festival days at the end of the year just before the fall equinox. The day is dedicated to singing the praises of individuals who've shown especially good qualities. I'd probably start off with the great people involved in Wikitravel -- they've been hugely successful at self-organizing and creating an incredible collection of high-quality travel guides. I'm always amazed at the persistence and goodwill of this great group of unselfish and dedicated travellers. Another is the great local local Montreal Burning Man community, putting together Ignition 2006, the regional burn event here in Quebec. There are people coming out of the woodwork to make this a fun campout, and I'm really looking forward to the event next weekend. There's still a lot to do, but I think it's going great. Who else? The thousands of people making and sharing Open Source software and Open Content music, images, and text continue to astound me. When we're in the thick of it, it's hard to remember how generous and giving you have to be to dedicate time and energy to sharing Free Information with the world and with posterity. It is a saintly pursuit and it deserves praise and support. tags:

17 September 2006

Joachim Breitner: Software Freedom Day 2006 in Accra

Yesterday was the international Software Freedom Day, and the Linux Accra User Group, which I just found out about last week, held a small expo in the "India-Ghana Kofi Annan Center for Excellence in Information and Communications Technology". On the program was a keynote speech by the group members, introducing the concept of Free Software, an exhibition of Linux installations and some programs as well as the showing of the first Open Source movie, blender-made movie "Elephants Dream" and its making-of.What I did not expect at such a meeting would be such a Linux guru: Swedish guy, who was an Amiga fan but had to start using PCs in November 1991(!) and looked for an operating systen, heard of Linux and used it since then. For all those newbies as myself: That was when "Linux From Scratch" did not exist, but you had to do it that way anyways, since there were no distributions. He has been living in Ghana vor 10 years now, bound by a family, the warm weather and by a job where he get's paid to do OpenSource development. Envy, anyone? Read more about him on his recently opened blog.
Someone already uploaded his pictures of the event, my pictures will be uploaded in a short while.In other news: At the College in Tema, where I am working at the moment, we agreed on installing Linux on the library computers to let the students have a shot at it, if they want, and after that the enrollment in the regular labs will be discussed. I shall also give an introction lesson to the IT teachers so that they can help a student during class, should he try to use Linux.

Joey Hess: lilo

I just five minutes ago learned that Lilo has tragically died. I knew Lilo in person in the heady California days, I remember going out for noodles with him a time or two and listening to his vision for what IRC could become, both technically and socially. We wern't close, but we got along well, and I'd chat with him on and off on irc over the years, though increasingly little recently. I feel that Lilo fell into a trap out there in Texas, living out of his immobile mobile home, without a car, taking care of his family, and just scratching by, and at the same time, trying to live up to his vision. I know from experience what that can be like. And over the years, a lot of people found reasons to dislike what he did and how he chose to do it, and there was a lot of controversy about various things, on which I won't try to pass judgement. It really doesn't matter now.. There are two things that I really regretting right now. The first is that irc.debian.org moved away from freenode so shortly before this happened. Lilo's last blog entry is about it, and I think it was very discouraging to him, and I hate that his life ended so soon after that disappointment. Even though I think the move was the right choice for Debian. I think that Debian should do something in honor of Lilo, just as we do for others of our own who pass away. My second regret is that I remember a while ago, Lilo posted something about wishing he had a truck he could use to maybe get his trailer mobile, and for general getting around. I have such a truck; I use it less than once a month. I really did think about driving it down and giving it to him, but I never went through with it. Due to sheer materialism and financial responsability; it's a reasonable fraction of my possessions after all. Now, especially given how he died, I really wish I had. I had a chance to change a friend's life, and I turned it down. Lilo, I'm sorry, and I'll miss you.

15 September 2006

Andreas Metzler: Back from Germany

This post actually should have appeared two weeks ago, however losing another free domain and finding and registering a not yet domaingrabbed, short, cheap (i.e.: .de) replacement took some time. The rest of it was taken up catching up on my mail and making a couple of gnutls uploads. Anyway it was rather nice, Germany is really railway accessible and there is loads of stuff to see. I think we at least crossed all states (except for Bremen) on our ways, but left all B-entities (Bremen, Berlin, Bavaria, and Baden-Württemberg) for later visits. Highlights below:
Moselle Völkinger Hütte
Wolfsburg Amrum
Dresden Eiger
Yes, I know that the last location is not in Germany, but we made it to be on our way. ;-)

Joey Hess: bookmarks and stuff

This is kinda a mix between my list of bookmarks and some things I've been thinking about and following lately. astronomy I've been reading a lot of astronomy stuff lately, a lot more than my usual low-level interest in it. I'm kind of feeling the need for a refresher course, so I can get a better handle on stuff that's happened since I studied this stuff in school. It's hard to get my head around things like dark matter and really grok the evidence. While black holes and relativity and such seem so obviously a natural part of this universe. Does this mean I'm getting old? The chance to bounce questions and ideas off someone would probably help in getting a real grip on this stuff. So would a lot more physics than I know.. (Hurrah for Eris BTW. The name almost makes all that sillyness over a mere definition worthwhile.) Favorite sites: Universe Today and Wikipedia.
weather I've been following this hurricane season, to make up for having paid so little attention to last year's disastrous one. I knew about the "New Orleans bowl" scenario well before Katrina, and the night before it hit I actually spent several hours tuning in far-away AM stations from down there and listening to the city not react in time. But despite all that I feel that I missed out on really seeing it happen, so I've been learning about tropical waves, and wind shear and ULL's, and dropsondes, and the satelite data that can be used to follow hurricanes. The nice thing is that instead of the old stereotype of someone watching the weather channel 24/7 with a map and thumbtacks, these days there's a nice mix of pre-processed info and analysis and raw data, easily followed in small amounts of time on Wunderground's blogs.
spaceflight Half love and half hate. The recent shuttle mission has been a riot for a shuttle-hater and SF lover. It has all the elements of one of those SF novels where they go down to the cape, dig up an Apollo stack, and use it to save the world / travel to Mars / fight the alien invaders. Except here they're pulling an unused orbitor out of mothbolls. And putting it up on the launchpad with a hurricane bearing down, getting it struck by lightning, pulling it off the pad, changing their mind with the giant crawler half-way through that milti-day maneuver when the hurricane fizzles, putting it back, filling and refilling the tank as sensors fail and they rewrite their safty regs on the fly, barely making the launch window, and proceeding to triumphantly lose nuts and break wrenches .. In Space! Space opera, indeed. Then there's the genuinely interesting stuff. Intentional crashing of a French probe into the moon, probes firing projectiles at asteroids and trying (with great difficulty and many glitches) to return a sample. A mission on its way to Pluto. The rovers still going strong on Mars after all this time. Bigelow launching an inflatable prototype of his planned space hotel. A whole load of microsats tragically blowing up on launch. All the private aereospace stuff, which seems to close to turning into something real. Happily followed at Spaceflight Now.
TV Over the past while and a half I've been very happy to discover The Wire and Deadwood, have been working my way through the Sopranos and Lost, been creepily fascinated by Big Love, got a kick out of the Canadian antics of Corner Gas, vegged out to Greys Anatomy, and have been very sad to reach the end of Six Feet Under. BSG, Doctor Who, House, and some other shows haven't held up as well past the first seasons for me. Happily, there's NetFlix, which makes it plausable that I did this legally despite not having HBO or even owning a TV.
literature I've been reading Charles Stross, David Drake, John Twelve Hawks, Kelly Armstrong, Naomi Novik, Robert Charles Wilson, VC Andrews, and, loath though I am to admit it, John Ringo. I'm in the middle of books by Steph Swainston, Geoff Ryman, and Dave Duncan. I finally found a defintion of Science Fiction I like, but I lost the link. (It's the subjective "her world exploded" one.) Anyway, I'm afraid that I may have reached the point where to get much more out of reading SF, I'd have to start going to cons. Which I don't want to do. But I seem to be at a low ebb for it being interesting to me, or just need to finally tackle some other branch of literature. Actually, the most engaging reading I've been doing lately is in the achives (all of them!) of the Idle Words blog. It makes obscure details about Poland and China, and even interpretation of Russian classics seem pretty darn interesting, and has much better rants about the space shuttle. And it proves that blog entries should properly be good and long.

14 September 2006

Evan Prodromou: 28 Fructidor CCXIV

Yesterday was my turn as "primary care giver" (PCG) with Amita June, so I took the opportunity to do some shopping. I was on Autoroute 40 on my way out to the Ikea on rue Cavendish around 1PM when they had a breaking bulletin on the CBC. Yes, the Dawson C gep shooting -- they were sending a reporter to the scene. For those of you outside Montreal, yes, I and my family are fine, and we don't have any friends who were affected by the shooting. It's been strange in town, but we're physically safe and sound. Thanks to everyone who's asked. tags:

Piknic Electronik On a more cheery note, this upcoming Sunday is the last Piknic Electronik for 2006. The last picnik is always quite sweet, and as usual Ninja Tune will be closing out the season. Smart, fun Kid Koala and, my personal fave, Ghostbeard, are on the lineup. Should be a great time, and it's supposed to be sunny on Sunday, so a nice day to be in Parc Jean Drapeau. tags:

Ignition 2006 Burning Man just finished up last week, and here in Montreal the local Burning Man community is having a campout and bonfire to celebrate. The so-called "regional burn", called Ignition, is going to happen 22-24 September in the wt:Eastern Townships; more info on the Br leurs wiki. Maj and I are the regional coordinators for Burning Man activities, and we've been busy the last few weeks lining up the basics (tickets, toilets, insurance... check, check, check). Now we're looking forward to seeing what folks will be doing this time around. Our local Burning Man community is fabuloso -- the people are extra cool. tags:

13 September 2006

Edd Dumbill: XTech WebDev London registration is now open

I'm delighted to announce that registration is open for XTech WebDev London. This is a one-day training event for web developers, to be held on 31 October 2006. Our first event covers web standards, Ajax, REST and Rails, with a super-duper keynote from Tom Coates of Yahoo! You can find out more about the event on its website: speakers, schedule and benefits. What I want to do here is talk a bit about the backstory of XTech WebDev. I've been chairing the XTech web technologies conference, and before that, XML Europe, for five years. If you've ever been, you'll know it's an intense four days where the latest web and standards-based technologies are discussed. We typically hold the show in a European capital: we'll be in Paris in 2007. However, the full XTech show can be out of scope either in expense, location or duration for many. So, the idea for XTech WebDev was born. Take some of the best speakers and experience from the XTech conference, figure out what's most relevant to web developers at the coalface, and create a one-day event that's easy to get to and at the right cost. For our first event, we're featuring standards-based development, best practices for Ajax development, the REST style of developing web services, and Ruby on Rails. Along with that we'll have a keynote from Tom Coates challenging the way we think about our web applications. What we're aiming for is a convenient orientation day for web developers, which will enable you get a fix on the most important trends in web development happening right now. Although we'll be in London, we're not starting until 10am, which should leave plenty of time for people coming from further afar to be able to do the show in a day trip. I reckon it should be possible from as far away as Paris or Amsterdam, and even the north of England.... Registration is 275 if you sign up before 23 September, and space is limited, so be sure to sign up you and your team quickly. I really appreciate everybody's support as we branch out into this new event, and welcome all and any feedback and requests for future events.

Next.

Previous.