Search Results: "reg"

28 July 2007

Raphaël Hertzog: Assembling bits of history with git: take two

Following my previous article, I had some interesting comments introducing me to git-filter-branch (which is a new function coming from cogito’s cg-admin-rewritehist). This command is really designed to rewrite the history and you can do much more changes… it enabled me to fix the dates/authors/committers/logs of all the commits that were created with git_load_dirs. It can also be used to add one or more “parent commits” to any commit. In parallel I discovered some problems with the git repository that I created: the tags were no more pointing to my master branch. This is because git rebase won’t convert them while rewriting history. This lead me to redo everything from scratch. This time I used git-filter-branch instead. The man page even gives an example of how to link two branches together as if one was the predecessor of the other. Here’s how you can do it: let’s bind together “old” and “new”… the resulting branch will be “new-rewritten”.
$ git rev-parse old
0975870bb1631379f2da798fa78736a4fe32960a
$ git checkout new
$ git-filter-branch --tag-name-filter=cat --parent-filter \
"sed -e 's/^$/-p 0975870bb1631379f2da798fa78736a4fe32960a/'" \
new-rewritten
[...]
Rewritten history saved to the new-rewritten branch
Short explanation: the only commit without a parent commit (thus matching the empty regex “^$”) is the root commit and this one is changed to have a parent (-p) which is the last commit of the branch “old”. At the end, you remove all the temporary branches, keep only what’s needed and repack everything to save space:
$ git branch -D old new
$ git prune
$ git repack -a -d

Martin-Éric Racine: Localisation beyond language packs

In my previous post, I briefly mentioned my K750i Sony-Ericsson mobile phone. I received it as a birthday gift this year, to replace my aging but trustworthy Nokia 3210 and, as with any multifunctional digital device, there was a learning curve during the adoption period. While some features were gladly and swiftly taken into use, some of the handset's usability issues became my pet peeve and, among them, the localization pack wins the jackpot. First, let's make one thing clear: I fully understand that memory constraints prevent manufacturers from including support for every language known to man, so a handset can only be loaded with a limited set of languages for the User Interface and for T9 predictive text input dictionaries. My issue is with the concept of grouping languages by linguistic families or continental areas, when compiling the localization packs for those handsets. In this particular case, I had a choice between the Baltic or Nordic packs. The former has UI language support for Estonian, Latvian, Lithuanian, Polish, Russian and Ukrainian, while the later has support for Finnish and the Scandinavian languages; English is also included in both cases. T9 support is a strangely mixed bag: the Baltic pack only includes predictive input for the Slavic languages, while the Nordic pack supports all the languages of its UI. What's my problem with the above language combinations? For starters, I'm in Finland. We don't interact with Danes or Icelanders outside very occasional pan-Nordic meetings and that mostly concerns politicians. Meanwhile, average Finns travel for work and play to Estonia and Russia on a fairly regular basis, which makes sense, since they are neighboring countries. However, available language packs don't take this into account. How should this be resolved? Either language packs are produced with specific countries in mind, rather than generic geographic areas, or the users should be allowed to freely mix and match among all available languages and get the result flashed into their handset at purchase time. The K750i language pack for Finland should therefore include: Finnish, Swedish, Estonian, Russian, English and Norwegian (essentially the current Nordic language pack, but with Danish and Icelandic replaced with Estonian and Russian). Then again, this only covers official state languages. Sam dialects, anyone? I guess not, because we'd soon be exceeding the handset's capacity. Hmm... Thus, the only real solution is to allow people to freely mix and match UI and T9 languages of their choice at purchase time. As a bonus, this would allow me to drop Norwegian and replace it with Joual... ... c lisse, French and finally have a language pack that I can truly find useful. I can easily picture a Transylvanian engineer working in Finland wanting to get Romanian support or a Kurdish immigrant preferring Turkish support instead. Sony-Ericsson, how about it?

John Goerzen: OSCon and Portland Wrap-Up

I really enjoyed OSCon. This was the first conference I've been to in years where I've felt a bit sad that it's over. I met a lot of interesting people, enjoyed most of the talks I attended (and especially this morning's keynotes), and also enjoyed Portland. I recommend OSCon. Last year, I went to Usenix ATC. Compared to Usenix, OSCon had more talks that were relevant to things I'm interested in, more people that I met with similar interests, more people that I knew online and met in person, and a more broad program. The one criticism I would level at OSCon is that it has a disproportionately high number of web-related talks.

On to other items...

Portland

Probably the friendliest "big city" I've ever seen. Everyone from cab drivers to bus drivers seems to go out of their way to be helpful and friendly. Somewhat different from, say, Chicago or Los Angeles.

The climate is very nice and the transit system is excellent as well. While it doesn't move as fast as below-ground systems, since it has to work within traffic, one nice thing for visitors is that you actually get to see the city and see potential places to stop. Last year, we went from Boston to Cambridge on the T, but you don't see much except a whole lot of concrete along the way.

The Japanese Gardens are wonderful and deserve a visit.

Compared to Indianapolis, where we lived for awhile, Portland has some nicer parks, and a better transit system. I think that Indianapolis had a nicer walking path. Portland had a lot of friendly people, including many that worked for TriMet. MAX was very nice, with frequent departures. The TriMet system had scattered electronic signs about the MAX lines, streetcar stops, and even some bus stops I think. These listed how many minutes until the next departure in each direction, and were very helpful. Stations were announced audibly and on signs on-board. There was helpful information at stops and platforms.

Indianapolis has a really quite awful transit system, which consists of, let's see, regular buses and small buses. These run infrequently, are known for not being on-time, and a former co-worker had trouble with them just not showing up at times. They also all seemed to run between downtown and the outskirts. So if you wanted to go from one area towards the outskirts to another area there, you'd have to go towards downtown and back out.

Because of all this, I never rode IndyGo, and wouldn't ever encourage visitors to. TriMet was very different, and if I lived in Portland, I'd want to live close to MAX.

Hotel

The DoubleTree Lloyd Center is a nice, friendly hotel. Everyone here has noticed that the elevators inexplicably stop on the 2nd floor every time they go down, but other than that, we have had no real problems (other than some water dripping onto the desk when we first were here, but maintenance fixed that). It's annoying that they charge for in-room Internet access, but that is unfortunately typical for hotels of this class.

The room is also a bit small, but has worked out OK. The hotel is very close to a MAX stop, and fairly close to the Lloyd Center mall, which is convenient. The staff is very friendly and helpful as well, especially the concierge staff, which are great and helping visitors find their way around the city and the transit system.

They give you cookies on check-in, but Terah was disappointed that they didn't offer any without nuts.

Restaurants

I had opportunities to eat with various people from OSCon, some Portland area people, and of course, Terah and Jacob.

Portland has some good restaurants, and a few more iffy ones...

The Multnomah Grill in our hotel was one of the iffy ones. I had the ribs, which were not at all good. The prices were about in line with other Portland restaurants, which is too bad because the food wasn't. Because of all that, I just couldn't bring myself to try the other restaurant in the hotel, Eduardo's Mexican/American Cantina.

I had heard about Jake's Famous Crawfish from a passenger on the train. It was also listed on the OSCon wiki restaurants page. It's a historic century-old restaurant, with excellent seafood. I had parmesean-crusted Alaskan Halibut, which was very good.

I also went to the Newport Seafood Grill, which is within walking distance of the hotel, just on the other side of the Lloyd Center mall. It was also good; I had a tuna dish served rare, with a sauce that complimented it well.

Blossoming Lotus Cafe is a vegan cafe in the Pearl District. I hadn't ever been to one of those before. It was OK, but not all that great.

Across the street was Sweet Masterpiece, a chocolate and coffee house. Excellent chocolate made in-house, all sorts of desserts, and good coffee.

Rock Bottom in downtown has some surprisingly good food options. I was there with a group of local and OSCon Haskellers, and it was a little bit hard to follow conversation all the time due to the background noise, but that's to be expected in this sort of place. I'm not into beer, but those that were enjoyed their selection, I think.

I also went to a couple of chains: Quizno's and Ben and Jerry's. Both were about what you'd expect from those chains. Good ice cream of course at Ben & Jerry's.

OSCon provided breakfast and lunch free to paid attendees. Breakfast consisted of a selection of various fruits, slightly stale pastries, and bagels. On the tutorial days, lunch was pre-made boxed lunch. For what it was, it was OK. On Wednesday and Thursday, lunch was served hot in buffet lines. They had chicken both days, which looked identical. I had tried it Wednesday so knew not to bother Thursday. Wednesday they also had salmon with cranberries, which was good. Their salads, breads, etc. were OK.

Oregon Convention Center

This is where OSCon was held. A very nice, but incredibly huge, building. They say it covers the equivalent of 13 square city blocks, and if you look on a map, you can see that it is indeed quite large. There was a lot of walking to get to everything, even though OSCon took up only one part of this huge place. Restrooms in particular were not in very convenient locations to just about anything. But it was a nice place and I wouldn't mind being there again next year.

Patrick Winnertz: debian-edu 3.0 terra finally released

Hey folks, we released some minutes ago finally Debian-Edu/Skolelinux 3.0r0 ?Terra? which is based on Debian 4.0 with some modifications to work out-of-the box. Here are the releasenotes: Oslo - July 22., 2007 Skolelinux 3.0 is ready. This is an community release with comprehensive support from regional and national projects in Germany, Spain, France, Greece and Norway. The Skolelinux project is now a part of Debian under the name Debian-Edu. Several other projects have made additional functionality to Skolelinux tailored for national needs. Skolelinux now supports more than 50 countries. whats new in skolelinux 3.0: based on Debian 4.0 ?etch? and therefore compatible to LSB 3.1, using kernel 2.6.18 and KDE 3.5.5 Full support for networked Thin clients, ?LowFat (diskless) clients, Workstations and Laptops. With the ?LowFat clients users got full PC functionality with extremely low maintenance cost. The use of ?LowFat clients gives full support for sound, video, USB memory stick?s and DVDs without the need for a local installation. Skolelinux now got more than 80 applications selected for pedagogic uses, supporting more than 50 languages. Many new applications are introduced in addition to popular classic as GCompris, KDE-Edu, Iceweasel (unbranded version of Firefox) and ?OpenOffice.org. Installation is a breeze: Both the installation and source code for all software are now distributed on a single DVD now supporting three different processor platforms as i386, PowerPC and AMD64. This makes it more easy to choose hardware, and to study the recipes behind the software. Those interested can exercise their freedom to learn, participate and share knowledge more easily. Installation CDs are also available, but requires a working Internet connection for installation. about skolelinux Skolelinux is a complete tailored software solution for the needs of any educational institution or school. It is a ready computer system were the school does not need to piece together the components. Skolelinux is the result of the work of the Debian Edu project and Debian Edu is an official Debian subproject. It is installed in a great number of schools in Norway, Germany, France and other countries. Municipalities and Commercial Service Providers run Skolelinux across multiple schools, operated and maintained centrally. Service providers report that the ?lowfat clients? require half the maintenance cost of other desktop alternatives. The next milestone of Skolelinux development will be to merge the Debian-based ?LinEx distro into Debian Edu. Currently ?LinEx is used by more than 250,000 students and public employees in the region of Extremadura in Spain. in depth Lowfat clients is also known as Diskless workstations. They run applications locally on the client. All software comes from the server instead of locally from the client hard drive. Recommended minimum requirement for client machines is > 256 MB RAM and 800 MHz CPU. Skolelinux now got improved tools for system surveillance and maintenance. Roadmap for next merging of ?LinEx and Debian-Edu: * http://wiki.debian.org/DebianEdu/LinEx2DebianEdu-Roadmap Please note that the documentation for the 3.0 Terra release is only available in English at the moment and contains some rough edges. We have considered releasing before the end of the summer holidays more important and we will fix those rough edges in the coming weeks, when we also expect more translations to show up. Those fixes will be included in the upcoming 3.0 r1 release.

Joerg Jaspert: The DM GR

So, let’s join the postings about the currently running Debian maintainers GR. The short text of this post is I am against the proposal as it is right now and think it does more harm than good and so I did vote for Further Discussion. See below for a bit more about my reasoning, or just skip if you are already bored. :) The current proposal does look like a “yay, we have an idea thats not really thought through. And we do not want to get it into the currently existing procedures, that would involve more work and discussions. And anyway, everyone is ranting about the current procedures anyway, so lets take that bad mood against it to get this done”. (And yes, this is a bit exaggerated, so don’t take it personal, please). As you may have noticed I wrote that I am against the current proposal when it first was on vote. I was mostly on vacation back then and didnt want to read the whole thread, so I stayed mostly quiet. I am not against the DM concept itself. I am against it being seperate to the existing NM procedure. For me a proper solution has to be integrated with the existing procedures, not seperated. The main reasons why some support this proposal seem to be
  1. Slow NM process.
  2. Someone doesn’t want to go through NM
  3. Someone doesn’t want to be in the Debian community

Slow NM process I am part of this, and not a small one. And yes, I feel (very) bad about it, but already think about ways this can be changed, after I got the current backlog done. Anyway, for this DM thing my backlog isn’t the main reason that people feel NM is slow. It seems to be the general “I have to wait for an application manager and then answer to a lot of questions and between that wait and wait and wait”.
True. People have to wait at some points, and those waiting periods can be frustrating. We should do our best to eliminate those waiting places. The other point is that of the lot of questions. Yes, we have a really big set of questions in the templates, that cover a whole lot of the possibly areas a future Developer can work in. And most of those questions got added after a large set of existing Developers showed that they completly do not know something. That way the templates are constantly growing and still intend to give the future Developers the possibility to learn about things in Debian they might never have heard about. And there is the thought that, if you read about a topic and had to answer to it in the past, you will at least remember that there is something if you encounter it in the future. But - there is also the fact that an AM is NOT forced to use the templates for their process. AMs are, and have always been, free to do the process on their own. There are some questions every AM has to ask, but thats a minority. If you look at the templates you will spot the needed ones easily. Other than those every AM can freely do whatever he wants to do with his applicant (as long as the applicant agrees to do that stuff and its legal :) ). The AM only has to keep the following in mind: Both, FrontDesk and DAM, usually do not work together with the applicant. They might have heard the applicants name at some point, in some bugreport or some packages Maintainer: field. But they usually did not interact with them. Which means that the AM has to make sure that FD and DAM are able to build up their opinion of the applicant just by reading the mailbox of the AM->NM communication. Which usually means: read between 20 - 70 mails of a communication someone else had before you decide if someone should or should not enter Debian. (Leaving alone checking packages.qa, lintian, bug lists and a bit of google).
Someone doesn’t want to go through NM Erm. Well. Then use sponsors for your packages. Or is it because you think NM is too hard? NM isn’t that hard, everyone that can read and write english texts (even if the english is bad) and use google is able to pass NM. (For the bad english - if you fear joining NM because of that: Well. If I go and reread my own report from back when I joined - ugh. I hate my english. And I know native people still hate my english texts, its named en_GANNEFF for a reason. :) It is not necessary for your English to be perfect; you only have to be able to make yourself understood. If an AM doesn’t understand what you wrote they can simply ask for clarification). DM also doesn’t help for people that don’t want to pass NM. They have to pass the advocate, the ID check and the same minimum set of of questions NMs have (as written a bit above). So you already have a large part of NM for the future DMs.
Someone doesn’t want to be in the Debian community Then they shouldn’t be able to upload on their own. They can use sponsors. After all the only thing you must do as a DD is to read debian-devel-announce. And thats something a DM also must do, or you can’t seriously consider to package anything. And then DD only adds rights for you, like taking part in votes and so expressing your opinion and getting things changed in Debian that you may not like.
How to integrate a concept of DM then? First - by starting in the right area - getting it into the NM system by talking to all those involved. There is FrontDesk, DAM and also the NM-Committee, the latter should be the right point for a proposal and discussion. What I can imagine that would work and do something good is a system integrated into NM that gives future Developers upload privileges after they passed a few steps with their AM. That way they can upload early in the process, which can then be part of the T&S set, and the following steps in their NM process “just” slowly add more rights to the NM until its the set of rights every DD has. Seen from the current layout of the process it would be somewhere after the ID check and the first set of P&P, ie. at the time the AM sends the second P&P part. After that point the AM could recommend to those maintaining the DM list that the applicant should be added to it, together with a list of packages where the applicant is allowed to upload them. The maintainers of that DM list could be FrontDesk + DAM + maybe someone else, but thats something to discuss. And list of packages - while one could take the current limits the GR wants to set or simply a plain list, that can be amended during the time someone is a DM. Now, one can add a turnoff for people that do not want to pass through the rest of the process at this place. Im not sure its such a good idea, but thats something one can discuss. But if so it should be attached to some rules like - must read our debian-devel-announce list, is included in regular pings of activity similar to the wat ping.

27 July 2007

Michael Prokop: Setting up your own jabber server: ejabberd

It was on my todo list since ages, finally I took some minutes to set up my own jabber server (reach me at mika@jabber.grml.org). I’m using ejabberd, a free and open source instant messaging server written in Erlang. Reference system: Debian etch (current stable), ejabberd version 1.1.2-6, installed via a simple:
# aptitude install ejabberd
Adjust the hostname in /etc/ejabberd/ejabberd.cfg (I suggest to use something like ‘jabber.$YOURDOMAIN’ so you can update jabber’s DNS SRV according on upgrades, downtimes, moves,…):
 hosts, ["jabber.yourdomain"] .
Register an account:
# /etc/init.d/ejabberd restart
# ejabberdctl register username jabber.yourdomain password
You might want to give your username admin permissions, so adjust /etc/ejabberd/ejabberd.cfg according:
 acl, admin,  user, "username" .
That’s it. If you want to disable registration of users just use (instead of the ‘allow’ line):
 access, register, [ deny, all ] .
Restart the server and make sure you have a running server:
# /etc/init.d/ejabberd restart
# ejabberdctl status
Now you should be able to point your browser to http://yourdomain:5280/admin/ and set up your new jabber account inside your jabber client.

Thijs Kinkhorst: Debian Maintainers

I voted for further discussion rather than accepting the Debian Maintainers proposal. My opposition is that it's a new procedure while I think the existing structures should be able to handle the people that want to contribute to Debian. The proponents intend to solve the following problems.
NM takes too long
Agreed that it takes too long (useless waiting is a waste of time) but creating a new procedure does not fix it. Apparently there's a group of people that want to develop software for maintaining a keyring group-wise, and want to do the work actually maintaining such a keyring. Great. My suggestion would be to apply their technology and time to the existing DAM position so the work can be shared and we can reduce the waiting time.
Some people do not want to go through NM
NM is not as complicated as it is sometimes regarded, and a large part of it can consist of actually contributing to Debian rather than answering boring questions. I do not see it as a bad thing that uploading on your own requires some commitment.
There has been talk about people only interested in a small set of packages. There are already many specialised teams which those people would be welcome to join. I've also yet to see a significant number of people having trouble to find a sponsor. Sponsoring is a bit less convenient, sure, but not unbearable. Extra checking also has added value for Debian.
Some people do not want to associate themselves with Debian
Fine with me, but I don't think we need to facilitate an entire procedure for the less than a handful of people that chose to resign as DD but still want to upload. Sponsoring works for them.
I support sponsoring, and I think Rapha l Hertzog was right to introduce it. It works. With sponsoring on the one hand and being a DD on the other, we have two avenues of contribution that complement each other quite nicely.

Gerfried Fuchs: The Simpsons Movie

Yesterday it was "The Simpsons Movie" time—and it was hilarious! Don't miss it, you'll regret it. I had a pretty good laugh at quite a lot scenes. There is also the obligatory celebrity starring, this times it has Green Day and Tom Hanks in it.
What are you waiting for! Stop reading and go to the cinema!

Uwe Hermann: Testing stuff with QEMU - Part 3: Debian GNU/kFreeBSD

Debian GNU/kFreeBSD screenshot 1
Note: This article is part of my Testing stuff with QEMU series.
From the Debian GNU/kFreeBSD port page:
Debian GNU/kFreeBSD is a port that consists of GNU userland using the GNU C library on top of FreeBSD's kernel, coupled with the regular Debian package set.
Q: Why would anybody want to do that?
A: Why not? [1] So, after we have talked about that, let's start:
  1. Install QEMU:
    apt-get install qemu
  2. Download the latest Debian GNU/kFreeBSD installer ISO image (either for i386 or amd64):
    wget http://glibc-bsd.alioth.debian.org/install-cd/kfreebsd-i386/20070313/debian-20070313-kfreebsd-i386-install.iso
  3. Create a QEMU image which will hold the Debian GNU/kFreeBSD (i386) installation:
    qemu-img create -f qcow2 qemu_kfreebsd_i386.img 5G
  4. Boot directly from the ISO image and install Debian into the QEMU image:
    qemu -boot d -cdrom debian-20070313-kfreebsd-i386-install.iso -hda qemu_kfreebsd_i386.img
  5. The FreeBSD installer will now start. For more detailed instructions see the Installing Debian GNU/kFreeBSD manual.
    First you can choose between an "Express" or "Custom" install (I used "Express").
  6. Next you end up in the partitioning tool. Type "a" to use the entire (QEMU) disk for the installation (the disk is called "ad0", not "hda" as on Linux). Type "q" to quit the partitioning tool.
  7. You are now asked which boot manager to use. For QEMU you should use "BootMgr", the default FreeBSD boot manager. If you install on real hardware you can also use GRUB; in that case choose "None" here (see the manual for more information), but note that the installer does not install or configure GRUB for you! You should do that beforehand!
  8. Next up: The disklabel editor. Here you'll create a partition ("slice" in FreeBSD-speak) for the root filesystem and a swap partition.
    Press "c" to create a new slice (will be called "ad0s1"), enter "4GB", choose "FS" (filesystem), and enter "/" for the root filesystem. Per default the UFS2 file system will be used. To create the swap partition, press "c" again, enter "1023MB", and select "swap". The new slice is called "ad0s1b". Press "q" to quit.
  9. Choose "minimal" when asked which distribution to install.
  10. Installation media dialog: select "CD/DVD" and "acd0" (for QEMU's ATAPI/IDE CD-ROM drive).
  11. The installation will now begin, and after a while you're asked to switch to console 3 using ALT-F3. Do it.
  12. You'll have to answer a bunch of questions: geographic area + city you're in (for timezone), whether you want to participate in the Debian popularity contest, whether module-init-tools should load additional drivers (no, so press ENTER three times). The installation will soon be finished.
At the end you must select "No" as you're told to do, then reboot via "Exit Install". You can then shutdown QEMU.
  1. Restart QEMU with the newly installed Debian GNU/kFreeBSD:
    qemu -hda qemu_kfreebsd_i386.img
    Debian GNU/kFreeBSD screenshot 2
  2. Press enter at the FreeBSD boot manager prompt, then login as root (there's no password).
  3. First things first: Set up a root password:
    passwd
  4. Now let's fix networking, update the system and install a bunch of packages:
    nano /etc/network/interfaces
    Yes, there's no vi, not even a symlink to nano! Uncomment the two "ed0" lines ("ed0" is the equivalent to "eth0" on Linux, I guess).
    /etc/init.d/networking restart
    apt-get update && apt-get dist-upgrade
    apt-get install vim xorg icewm xterm
  5. You can fix your console keymap using the kbdcontrol package (just select your keymap from the menu):
    apt-get install kbdcontrol
  6. Finally, let's fix X11 and start it. But first we create a new user, as we don't want to run X11 as root:
    adduser uwe
    vi /etc/X11/xorg.conf
    The mouse device is "/dev/psm0", the protocol "PS/2", and the graphics driver should be "vesa":
  Section "InputDevice"
      Option "Device" "/dev/psm0"
      Option "Protocol" "PS/2"
  [...]
  Section "Device"
      Driver "vesa"
    
  • That's about it. Login as "uwe" (or whatever your username is) and start X11:
    startx
  • Wasn't all that hard, eh? Now, if you've got some spare time, head over to the Debian GNU/kFreeBSD wiki page and help improving this port ;-) You should probably start with reading the PORTING guide. Both kfrebsd-i386 and kfreebsd-amd64 seem to be reasonably stable already (and more than 70% of the whole Debian archive builds fine on these architectures, see kfreebsd-i386_stats and kfreebsd-amd64_stats). I'll quite likely install kfreebsd-amd64 on one of my boxes soonish and start using it, maybe I'll even find some time to fix/patch/port some packages... [1] More elaborate answer(s) and reasons are available in the Debian wiki.

    Stefano Zacchiroli: me on DM

    /me on the Debian Maintainers GR After reading on Planet some opinions against the DM GR I made up my mind: I want to post in favour of the GR (and I've already voted accordingly). I swear I'll (try to) be brief. My main point is: this is not an ugly hack to address the long unsolved problem of our sloppy NM queue, this another way of letting people contribute to Debian and acknowledge their work. Rationale follows. Maybe it's just me, but in several year of DD-ness I've met on the net a bunch of people which are "just" interested in maintaining some packages in Debian. I've been training some of those people and of course sponsored their uploads. But if they aren't willing to enroll the NM queue, if they aren't interested in the other social/political aspects of the Debian project I can't blame them, it's their call. I'm in Debian as a DD because I do care about other stuff than plain package maintenance, but I can't ask every hacker around there to share my motivations. Nonetheless I don't see any valid reason to reject and/or put extra artificial burden (i.e. life-time sponsoring) on the good technical work that such people can contribute to Debian. It's just a matter of identifying a new status for contributors that states "I'm contributing my package maintenance skills to Debian, and I'm proud of it", ... without implying full Debian zealot-ness :) The GR precisely addresses this need: establish this new status, the Debian Maintainer status. (We would need a whole bunch of similar new status for other kind of contributions, like translations and artworks, but this is an entirely different story, unfortunately not addressed by the DM GR) And regarding the fear of decreasing package quality, the sponsoring process has already proven to be bugged in this respect: when they really want, sucking packages can enter the archive, they will find some sponsor. There's no silver bullet, our best hope is to establish social practices which encourage people producing (directly or not) good packages and discourage the others. In this respect the ability to stop accepting advocacies proposed in the GR sounds good to me.

    26 July 2007

    Sven Mueller: The DM GR

    Following up to Myon’s post, I also wanted to blog my honest opinion about the GR. Given my current understanding of the GR, I hope to see it fail (and will send my vote shortly after this blog entry I think). The reason is not that I think it shouldn’t be made easier to contribute to Debian (on the contrary). But the GR micro-manages too much and on the other hand doesn’t make the current NM process any easier for DM’s than for any non-DM applicant to the NM process. Also, like some others said before, I seriously doubt that a big part of the current DD-applicants (i.e. those in the NM queue at some level) would prefer DM status over DD status. And the same is true (IMHO) for other people wanting to contribute to Debian. This is a simple thing: If I contribute to something regularly in my spare time (like most contributors in the FL/OSS world do), I also would like to have some influence over its directions. And a DM is missing this influence even more than a DD is. So what should be done instead in my opinion?
    I think that a DM like status is fine as part of a (possibly re-designed) NM process. Given the current NM process, I would like people been given a DM like status after they finished the T&S (tasksIIRC and skills) part if their AM found their skills and knowledge of the policy rules sufficient to give them that status. If that is all they wanted, they can drop from the NM process at that point and stay DMs. If they want to become DDs later on, they can resume the NM process at that very step (or continue right ahead). This would do several things: So I really think “more discussion” is the only valid option for me in this GR. If you want to change my mind: Please leave some feedback in my blog. Or give a precise (but brief) description why the current proposal is better than integration with the current NM process in one way or the other. Abbreviations: Update:
    The GR even seems to contradict itself a bit. If the upload rules are applied in an AND fashion, one of these rules is superfluous (the first one), at least if I’m not mistaken: The first rules also means that no DM could ever do an upload for packages team-maintained in the fashion cyrus-imapd-2.2 is maintained (Maintainer address is the teams mailinglist address, all uploading team members are in the Uploaders field). This is IMHO a serious flaw in the proposal. If the first rule was dumped, all would be well for team maintainers.

    John Goerzen: OSCon Thursday

    First off, this guy is walking around handing out free fudge. Neat idea, but I can't quite figure out why!

    Bill Hilf from Microsoft spoke today. He started by saying "I guarantee you won't agree with a lot of things I say today."

    Nat introduced him as "our man on the inside."

    Microsoft is submitting their Shared Source license for OSI approval. I don't know if this means that MS will have to actually make any modifications.

    New website today: http://www.microsoft.com/opensource.

    Bill invited feedback from anyone at billhilf at microsoft dot com.

    He got some fairly pointed questions from Nat about software patents. Bill said two things about that: 1) Microsoft flubbed the communication with the press and that their intent isn't to sue, and 2) Microsoft is learning and he's working to help them learn.

    Rick Falkvinge from the Pirate Party

    Funny and informative talk about why they've started a Pirate Party in Sweden.

    Originally copyright only impacted public places, but now it impacts people's private lives as well.

    Copyright is protecting the entertainment industry -- funded by luxury purchases -- at the expense of privacy and individual freedoms.

    "The Norwegian Liberal Party forked our platform into Norwegian"

    www.piratpartiet.se/donate

    "Political donations in Sweden are not regulated", so you all can contributed

    Steve Yegge (Google)

    "Google will probably fire me for this talk"

    Neither Steve's mic nor his laptop appear to work... after his line about being fired, someone shouted "Google is very powerful!"

    "A brand, in geek terms, is a pointer."

    GTE was, for a time, the most reviled brand in the US. Then they invested in improvements and ran commercials basically saying "we don't suck anymore", but nobody believed it.

    "The single biggest branding problem in Open Source is the name 'Open Source'."

    John Goerzen: OSCon and Portland Photos

    I've taken my camera around OSCon and Portland a bit. Here are a few photos that I've taken so far.

    At OSCon Itself

    (click here to see all)

    img_3165

    Overflow from breakfast. Most tables had powerestrips and laptops on them.

    img_3204

    Debian booth at the expo hall. And the only one with beanbags. Sign reads "The developer is in."

    img_3166

    Filing in for the keynotes. Everyone seemed to want a seat either at the very front or very back.

    img_3177

    Simon Peyton-Jones explaining how locks with traditional threading can be improved upon with transactional memory.

    img_3202

    Run for your life! The bell will attack at any moment!

    I didn't hear it ring all week.

    Around Portland

    (click here to see all)

    img_3127

    The Japanese Gardens were beautiful and tranquil. Jacob actually feel asleep while being rolled around on his stroller.

    img_3145

    For some reason, this one reminds me of the Jedi Academy in one of the Star Wars video games.

    img_3118

    One of the many bridges in Portland.

    img_3164

    Terah's favorite find: Sweet Masterpiece Chocolate and Coffe.

    We went there after the Blossoming Lotus Cafe, which was an interesting experience but not quite as good as I had hoped.

    Raphaël Hertzog: Some changes concerning DSA

    Since march the DSA team uses a request tracker to handle all the requests that they get. Therefore you should no more use the debian-admin@debian.org alias (DSA members only). The debian-admin@lists.debian.org mailing list (DSA + local admins) is also scheduled for removal. Instead you should mail admin@rt.debian.org making sure to put “Debian RT” somewhere in the subject (crude but working spam prevention). By default, your ticket ends up in a private incoming queue. Up to now only DSA members had access to those queues. They moved most tickets in the public queue but it happened several times that this simple administrative burden took several weeks. Since a few days, Matt Taggart and myself have been granted RT accounts with required privileges to handle tickets and move them between the various queues. So from now on, all tickets will be quickly moved in the public queue (when they don’t contain sensitive information of course). We’ll be able to do some triage and ping DSA members for urgent requests. Matt and me have been trying to help out the DSA team for quite some time now, and while we’re not DSA with root rights, we’re in regular contact with the members (except Martin “Joey” Schulze who refuses to join the DSA IRC channel, who doesn’t use the request tracker and who doesn’t read the DSA mails either) and with several local admins. So if you have some troubles interacting with the DSA team, you can try to get in touch with us and we’ll see if we can help you. In too many cases people contact directly individual DSA members (Joey in particular). Please refrain from doing so, other volunteers (who might help you) won’t notice your request. Furthermore systematic request tracker usage helps us identifying what is well handled and what’s not. And it’s not more complicated than a simple email for you. Update: currently local admins are not subscribed to the request tracker. The RT setup will need some further adjustment for that, so the debian-admin@lists.debian.org list can still be useful if you want to reach them.

    Daniel Burrows: Do not install aptitude 0.4.4-4b+1!

    Apparently someone decided to resolve the dependency problems with aptitude in unstable by doing a blind recompile and NMU of the package, presumably because of my horrible laziness in not doing an upload to unstable yet. The problem, as I wrote in the bug reports regarding the need for a recompile, is that this produces a package that's totally unusable, which is why I didn't do it myself. If you are running unstable, you should either not upgrade the apt system, or install the experimental aptitude (either using "apt-get install aptitude/experimental" or by going here). These packages are not perfectly stable, but they also aren't totally unusable.

    I apologize for the inconvenience -- if I can get some time this evening I'll rebuild the aptitude in experimental and throw it kicking and screaming into unstable.

    25 July 2007

    Matt Brubeck: 25 Jul 2007

    Retiring from Debian In response to the inactive developer ping, I have decided to retire from the Debian project. Between my job and the new baby, my time for hacking on other projects is nonexistent, or possibly negative. I have already passed Audacity maintainership to the debian-multimedia team. I still use and like Debian, and I hope someday I'll return from "emeritus" status to become an active developer again. Cyclone While browsing through some very old backup files, I rediscovered one of my first real software projects, an IRC client for BeOS. This was a neat collaborative effort, but we weren't really on the ball with project hosting or version control. This is from a file I wrote documenting what was left of the project after it stopped:
    Cyclone was started in spring 1998 by a group of developers who hung out in the #bedev channel on EFNet. The original Cyclone team included Jason Gosnell (Avatar), Jeff Hamilton (Pyrus), Matt Lewinski (mattl), John Wiggins (prok), and Matt Brubeck (mgb), with contributions from several other #bedev regulars. The Cyclone project produced a small, elegant IRC client. Unfortunately, the team dissolved as several members moved around the country to go to new schools or jobs at the end of summer 1998. Along with the loss of some important pieces of source code, this prevented Cyclone from ever seeing a public release.
    I also found some poetry I wrote in middle school, but it's compressed using a version of StuffIt that does not seem to be compatible with any open source tools. This is probably a good thing.

    John Goerzen: OSCon

    Monday was the first day of the OSCon tutorials. The first question was: how to get there? OSCon is being held in the Oregon Convention Center, about half a mile from the conference "headquarters" hotel, the Portland DoubleTree at Lloyd Center.

    MAX light rail is free in this area. It's about a block to the Lloyd Center station, and a block from the Convention Center station to the Convention Center. The trains run every few minutes and are very friendly to people that aren't from Portland. On-board announcements point out bus and rail connections in advance, and each station has a system map, city map, and digital display listing the time until the next arrival. Even bus and streetcar stations have that display.

    In fact, everyone here is. The personnel at the Amtrak station were great. Our cab driver from the station to the hotel told us about all the things he loves about Portland and why he'll never move anywhere else. And the DoubleTree hotel has probably the friendliest hotel staff I've ever seen, even when we reported water dripping from the ceiling in our room. The concierge desk gladly showed Terah how to get to a nearby Safeway for groceries, and explained -- correctly -- to me how to use trains and buses to get to the Japenese Gardens in Washington Park.

    Anyhow, back to OSCon. The first two days are tutorials. These are extended talks. You can go to 2 per day, one in the morning and one in the afternoon. I attended Advanced Vim Scripting and Linux Performance Monitoring. Neither was quite as advanced as I'd like, but I got useful information out of them both -- especially out of Linux Performance Monitoring. I finally learned the exact difference between buffers and cache and what the IOwait state in top really means, among other things. I heard from others in IRC that Simon Peyton-Jones was a fantastic speaker and his tutorial on Haskell met rave reviews. I'm looking forward to his keynote and talk on Wednesday.

    I also went to the keysigning BoF in the evening. Signed a ton of keys, and met some interesting people. I met a couple of folks from an independent telephone company in Michigan that were interested in my Asterisk experience, and spoke to an Earthlink employee from Georgia that was involved on the ISP side of things.

    In all, a good first day. This is a great conference in a great city, with lots of variety in its programming and lots of opportunity to network (the old-fashioned way).

    The venue is also very nice, and aside from not being right next to the venue, so it the hotel.

    The day's main mystery: everybody has noticed, and nobody has figured out why, the hotel elevators all stop on the 2nd floor on the way down, even if nobody requested it.

    24 July 2007

    Martin F. Krafft: A user-space filesystem for mail labeling

    I am still looking for a solution that allows me to tag my mails similar to what Gmail offers. Having thought about this for quite a bit now, I can see three solutions, implemented at different levels in the mail flow: as filesystem, patch to the IMAP server (Dovecot), or patch to mutt. Since this post is about the filesystem, I'll concentrate on that, but I'll also touch upon the other two solutions briefly.
    A bit of theory First, let's dig into the theory and requirements for a bit. Instead of sorting mails into folders (one mail can only ever live in one folder), I want to tag my mails, such that a single message can have multiple tags and hence be relevant to multiple categories. If you want to think in terms of folders, then a single message could be attached to multiple folders, e.g. via hard links. This is what Mairix approximates. The problem with this approach is that simple operations, such as deleting a message (removing it from the enclosing folder) or marking it as read (renaming the file) only affect the message in the current folder, not its duplicates/clones in the other folders. So it's best to stay with a single file per message and to associate tags with it. Here, two approaches seem plausible: (a) extracting tags from the individual message files, and (b) storing tags/message pairs in a separate database. I have a gut feeling that (a) is the better approach, especially since the files we're dealing with all have the same format. And in fact, there is a semi-standard header for email messages to store such tags: X-Label. One more paragraph of theory: instead of simple tags, like Gmail provides, I want hierarchical tags, for instance:
    X-Label: Debian::pkg::mdadm
    X-Label: Debian::popcon, PhD::Debian::stats
    
    Hierarchical tags work similar to folders in that any message tagged as Debian::pkg::mdadm also belongs to the Debian::pkg and Debian categories. No rocket science.
    mutt Now it would probably be trivial to hack mutt and add a new layer of I mentioned earlier that this could be implemented in various places, and I'll start at the highest level, with mutt, the mail reader. For quite a while now, mutt provides search operators for the X-Label header, such that you can search or limit your mailbox e.g. like so: ~y \\<PhD::Debian\\> ~y \\<popcon\\>. The problem with this approach is that it reuses existing functionality, which I need on a regular basis: searching and limiting. Furthermore, I think this approach is hackish and brittle and exposes too much of the underlying workings. filters, which would be used in addition to the user-specified limit. On a high-level, the user would set a tag expression, like PhD::Debian ::popcon, and may additionally choose to limit the display of messages to those sent from the debian.org domain: ~f debian.org$. mutt would then assemble the pieces and apply the filter (~y \\<PhD::Debian\\> ~y \\<popcon\\>) ~f debian.org$ to the current view. With a reasonable user interface to specify or pick labels, as well as a simple label editor, this would almost cut the mustard. Thanks to the header_cache patch (which also indexes the X-Label header), mutt fares reasonably well on Maildirs with thousands of messages (well, not always), and binding keys like s (save) and d (delete) to appropriate actions to add and remove labels determined from the destination or the current tags filter, would make mutt a force to be reckoned with.
    Dovecot Unfortunately, implementing this in mutt would mean that I'd be bound to the mail reader forever (and I like to pretend that's not the case, haha!). An alternative would be to implement this on the IMAP server, which already provides IMAP folders which are not necessarily bound to physical, filesystem folders and can intercept all commands that manipulate messages or their status. But while in theory this works fine, it'll break when offline tools, such as offlineimap come into play, as those (need to) instantiate every message they download, which brings us right back to the problem with duplicate/cloned files discussed before.
    A filesystem idea Trying to stay independent of the tools I use, I started playing with the idea of implementing mail message tagging at the filesystem level, using Fuse. The user would run a daemon process against a given Maildir holding all mail (the base store) and export a virtual directory hierarchy in which tags become Maildirs, backed by a cache of X-Label:filename pairs.
    • the root folder contains one Maildir dor every tag present in all messages in the base store.
    • each of those Maildirs, in addition to the new/cur/tmp directories, provides a subdirectory for every tag minus the ones already in the path, recursively. Navigating to /PhD/Debian::pkg would result in a logical-AND query for all messages tagged PhD (and thus PhD::*) and Debian::pkg. I am not sure how to implement OR and NOT queries yet.
    • every Maildir in the entire hierarchy contains the messages satisfying the query inherent in the path.
    • the special directory /INCOMING can be used to write messages to the hierarchy in such a way that the cache gets updated. Alternatively, one could register inotify hooks with the kernel on the base store and let others write to it as usual.
    • the special directory /::UNTAGGED might enumerate all messages without any tags.
    The virtual directory hierarchy should also export the familiar filesystem semantics:
    • creating a file automatically adds the tags encoded in the file's path.
    • copying, linking, and symlinking a file within the hierarchy are all equivalent and cause the tag associated with the destination to be added to the file.
    • copying, linking, and symlinking into the hierarchy should probably result in an error, unless the source is clearly an RFC822 message.
    • mkdir creates a new tag in the cache, but without any files associated with it.
    • rmdir removes tags without any associated files.
    • rm on a file removes a tag from a file. rm -r on a directory removes the associated tag from all files (and the cache).
    • moving files is equivalent to copy-remove, but needs to be atomic.
    Unlike tagfs, which uses an external SQLite database for tags, this filesystem should not use an external database for tags, but rather a run-time cache. That way, tags can be propagated to other machines with IMAP synchronisation tools. Initially, I thought such a fileystem could even be deployed "underneath" the IMAP server, but then we obviously run into the same problems with offline tools as before. Potentially, such a filesystem could be incredibly powerful as it could do its work for any user agent directly dealing with Maildirs (such as mutt), and it could also be used as basis for an IMAP server which is only ever accessed synchronously (in online vs. offline mode). In the latter case, one would have to ensure that filenames don't change across IMAP operations, or use the message IDs instead from the start. But as good as it may sound, getting it to work right will require quite some attention, I think. Especially guaranteeing filesystem atomicity, as required for Maildirs, might be impossible through the Fuse layer.
    The sad end Unfortunately, I don't have the time to implement any of the above, but if I did, I would probably try to patch mutt first, even though such a patch may not make it into the upstream source any time soon. The filesystem idea sounds cooler and cleaner, but it does not yet support OR/NOT queries, and it will be quite a task to implement and debug. On the other hand, dealing with Maildirs of several thousand messages in mutt is a bit of a pain if those Maildirs are being updated externally (e.g. mail is delivered to them). At least the idea is out now. If you are interested and want to work on this, please let me know so that I can link you up with other interested people. And if you have any other input, please let me know. And no, I don't really want to install emacs to read my mail. NP: Dream Theater: Train of Thought Update: I've created a mailing list for public discussion of this topic, so please subscribe if you're interested. Thomas Viemann suggested to use IMAP flags for the task, as these are standardised. However, I see two show-stoppers here: first, I am not sure whether it would be possible to set those flags from procmail on delivery (sieve can supposedly do it, but I consider sieve not adequate for my needs). And second, offline tools, such as offlineimap, which map IMAP folders to filesystem Maildirs, would have exactly the same problem with representing affiliation of a single message with multiple tags. You can read up on the discussion in the archives of the offlineimap mailing list, and soon the new mailtags list. Martin Scholl had the idea to extend dbmail with the concepts of virtual folders (or stored searches). Naturally, as database-backed mail system, it would be trivial and fast to implement, but this approach bears two problems for me: first, it also falls short with respect to offline tools (see above), and second it would require me to replace my entire mail infrastructure. I am not even considering the implications of using a database for mail storage.

    Evan Prodromou: 5 Thermidor CCXV

    24 July 2007 is the fourth birthday of Wikitravel, the free travel guide that I and my wife Michele Ann Jenkins started on July 24, 2003. It's been a long and complicated road, but I'm really proud of all the work Wikitravellers have done over these last four years. The project has gone from being a pretty-good idea to being one of the definitive travel resources on the Web. Winning the Webby Award for Best Travel Site this year was a real recognition of that trajectory. I'm wondering what 24 July 2008 will bring... it will be interesting to see. tags:

    Vinismo It's only partly a coincidence, then, that today I'm launching, with my friend Niko, a new Open Content project dedicated to demystifying an even more complex and byzantine world: wine. Tonight we're demoing the site at DemoCampMontreal3, so it's as good a time as any to throw open the doors:
            http://vinismo.com/
    
    We don't pretend to be wine experts or even connoisseurs. We're just two guys who like to drink wine and want to learn more about it. Ward Cunningham once said that wiki link is a great way to ask a question. We want to share the learning experience with people of all levels of expertise. We think that working together with our friends and family, with other Internet users, and with the public at large, we can create a detailed, readable, useful wine guide for people at any level of expertise. Our liberal Creative Commons license means that the guide is Free -- free for anyone to copy, modify, or publish in any medium. I need your help to make this project a success. If you can, I'd really appreciate if you could help us out with one or more of the following tasks:
    • Please sign up to use our site at, and create a user page describing yourself.
    • Drop us a note in the Wine Bar letting us know what you like and don't like about the site.
    • Try adding some information about your favorite wines, wineries, wine regions or wine styles! It doesn't have to be perfect -- every little bit counts!
    • Please forward this info to people you know who might be interested in Vinismo. They don't have to be experts to be interested in wine.
    • If you have a blog, please post a link to our new site on it!
    • If you use a social bookmarking tool, like del.icio.us, please add us to your list!
    • If you use digg.com, please vote for our site there: http://digg.com/software/Open_Content_wine_guide_launches
    • If you use reddit.com, please vote for our site there: http://freeculture.reddit.com/info/296au/comments
    tags:

    MJ Ray: FSF Radio Interviewee Promotes Skype

    I just sent this: Dear FSF, On the Radio New Internationalist show "Up in Smoke", during an interview with Peter Brown of FSF (about 43 minutes in), I was surprised to hear the following revelation that FSF uses Skype and the failure to challenge the claim that Skype is free software:
    "Peter Brown: ... This interview today is being transmitted through Skype. We're talking through Skype. Now, that obviously is a direct threat to the entrenched telecoms and they would like to restrict that, to lower the quality of the voice connection and they want to do that with lots of other types of transmission. Rachel Maher: And can they do that? Because Skype of course is free and there's a really direct benefit for organisations like ours, which is a non-profit organisation using Skype technology. Will they be able to do that? Peter Brown: Yes, so what they can do is easily identify types of information being passed, so what they can typically do is downgrade the service that you're using, so that - for instance, voice communication - those packets of data can be slowed down, effectively making voice communciation more difficult. Now this can only really be achieved if they're able to manipulate legislation. Unfortunately, they have a long history of being very successful at this. I mentioned earlier on that Digital Restrictions Management are a threat to our freedoms because it's allowing them to erect gateways and to control what it is that we can view and do with our computers. ..."
    I was disappointed not to find much on the FSF web site about the need for free VoIP software, building on GNU oSIP and other free software, instead of Skype's proprietary software, which has contained spyware and worms already. Will you be adding such information soon? What is the official FSF view of Skype and similar proprietary VoIP systems? Nevertheless, well done for covering DRM, net neutrality and the privacy problems of Google, Yahoo! and Microsoft in a relatively short interview. Regards, MJR

    Next.

    Previous.