Search Results: "nate"

8 December 2005

Martin F. Krafft: False advertising

I stayed at the Hilton hotel in Vienna during a business trip. Fortunately, I didn't have to pay for the room, because 190 EUR for a night is way above my budget. The hotel advertised "Hi-Speed Internet Access" for all clients. Good. Given the mere average room I had, this would be the least for me to expect for this immense price. Unfortunately, "Hi-Speed Internet Access" only means that the hotel is a "HotSpot" of a local telecommunications provider. Poor clerks, just get told to smile and proudly announce "Hi-Speed" in every room, when reality turns out to be just another money making scheme. The provider's price list states 2 EUR for 15 Minutes of access. However, the hotel clerk informed me later that it was not possible to purchase time directly, I would have to go via the hotel -- at 6 EUR for half an hour. Rip off. It turns out I actually needed the 'Net, so I bit the bullet and tried to log in, after paying the 6 EUR. However, the only thing I got to see was an OSCP error from Firefox, after being redirected to the login page on first web access. I have not investigated, but OSCP possibly uses a separate non-port-80 connection, which of course is blocked before login, so it didn't work. Finding out that Firefox is unable to whitelist single sites in terms of OSCP verification, I quickly got tired and demanded my money back -- which of course was "not possible because the system does not allow us to cancel an existing subscription". I find it very alarming that such "business conduct" seems to be widely accepted, or has even become a standard by now. Consumers are being ripped off on all fronts, and those in politics dedicated to protect the consumers have the bribery money so far up their rear ends that it exercises control over their small brains. The one lesson I learned from this: the sooner I find the time to set up a DNS tunnel, the better.

Clint Adams: zomg

This is not the ugliest code I have ever written. The handling of HTTP/1.1 chunked transfer-encoding is a horrible hack. The indentation isn't quite as random as I would like. I have other complaints, but I've forgotten them, as zomg does mostly what I want, which is to play music and report it to Last.fm. Unfortunately, it lacks the power of vux, but that's another story. zomghelper is a C program that extracts the relevant data from an Ogg Vorbis file. It written because vorbiscomment doesn't report the track length, and ogginfo is much too slow for my needs. I don't expect most people to share my needs, so the five of you that are actually going to use zomg probably won't need it.

7 December 2005

Erich Schubert: Microsoft doesn't deliver. Again.

Apparently Microsoft has pushed back the beta Test of their upcoming Internet Explorer 7, which was expected to be released today. So Microsoft doesn't deliver. Again. The XBox 360 apparently has heat issues and is crashing a lot for some users. Also it has been said that Microsoft is losing quite some money with each unit sold - they are aggressively trying to obtain market share. "Vista" was stripped of all the interesting features, apparently all that is left is a prettier UI with tons of effects (and requring a DirectX 9 capable graphics board). The big feature enhancements like WinFS will not be included and will take at least one more year to be ready for beta... "Windows Live" and "Office Live" (which are neither Windows nor Office) don't live up to their names either: They are just web-based add-ons, even supporting Firefox, and offering pretty much the same as Yahoo and other portals do as well as an online version of SharePoint apparently. They are a meagre attempt of Microsoft to be not totally left behind by Google when it comes to web applications. Heck, these could (and probably are!) be from some other company that Microsoft just bought. The new office version of Microsoft fancies again mostly a new UI, that will be very different and probably confuse users a lot (especially if they have to alternate between office versions); Microsoft also has the reputation of breaking it's own file format again and again; the new office will use an incompatible file format again. The UI also doesn't help people to give their documents a more semantic meaning (for efficient processing by automatic tools such as desktop search engines), but will be more visually-oriented than ever (i.e. styles such as "headline" which do add a semantic meaning are degraded as "quick styles", whereas the bold- and underline buttons are more prominent than ever - good bye, corporate design!) Microsoft has been promising lots of new stuff recently, but has it showed any? Where is Microsoft Windows for Supercomputers? They are totally under control by Unix and Linux. Linux is gaining on Mobile phones and embedded devices. When was the last time you read about WinCE? Heck, even the WiFi network at Microsoft is now powered by Linux...

Meike Reichle: A new member in the family

Since this weekend there's a new member in my little computer family :)
After serving as my bedside table for over three months (ever since I moved here) my regular PC is now finally reassembled, equipped with a new hard drive and DVD drive and back in action! It's got a new name, too: Undine. For the illiterate among you, a Undine is a water spirit and this particular one is called after the Undine in the story of Friedrich de la Motte Fouqué. (Full text from the Gutenberg Project, and a summary.)
It's not all set up yet. (Is a machine ever?) Aplayer and xmms still throw errors and it won't go into any kind of standby (sleep or hibernate). But nevertheless the increase in quality of my life has since been enormous. Until then I used my beloved 12" Thinkpad (Dropkick, got it's name from them and the way I treat it) for daily work, which was okay, but somewhat unhandy at times. Now I got 21" instead of 12", a lot more power, sound, and a decent (but filthy) keyboard again. Yay!
Downside: I had totally forgotten how *INCREDIBLY LOUD* that thing is. Maybe I'll go buy a set of these insulating mats. This high-pitched noise drives me insane!

Regarding my last post: I noticed there's an extra-i-that-bears-witness-to-my-favourite-editor in it but decided to leave it as a statement ;) Maybe I'll start a new trend?
The Skatalites concert was as great as expected but unfortunately very full. People where standing shoulder to shoulder all the way to the back wall. So all you could do was stand and listen, dancing was rather difficult or even impossible. :( Also, we left a bit earlier since those $%*# ing regular work hours have turned me into a total sissy when it comes to staying up late. This needs to be undone!!

In other news: My increasing enthusiasm for Leipzig experienced a first drop when I noticed this morning that somewhen in the last few days someone must have stolen the bungee cord from my bike. :(

I am disappointed and indignant about this!!!

(Especially since only my new springy one is gone, the old, f***ed-up one is still there. Haha!! You me too!)

Last but not least: I got my Christmas leave confirmed! I am off work from christmas until new-year. This means that I can go South over the holidays and be with my ifamily who totally rocks and I very much look forward to seeing again :) (Mom, should you read this: We are having fondue again this Christmas, arent we? Pleeaaase??)

Radu Spineanu: Mailman madness

A couple of days ago, a client decided that he wanted one click unsubscribe for all his mailing lists. We used mailman and from what i found googling about it, this is mostly an idea in the minds of the developers. Unfortunately i could not wait until Mailman 3 or 10 appeared. I had to implement it this week.

Actually in the end, the result was pretty simple to do, even though it's rather basic. The idea was that the client did not like the mailman web interface, and wanted to integrate it with his own website (just basic subscribe unsubscribe features).

So i wrote a small patch (3 or so lines) to mailman, that adds a new field to decorate called %(hash) that is the users password crypted.

The interface between the web address in the mail and mailman is done through a directory where requests are placed. For example when a user clicks a link, a php script does some basic checking and places a file in $client_web/list_requests, or a global requests directory. The idea for this part was to be very easy for the user to implement.

Another small python script looks (through cron) in those directories, checks hashes in case of unsubscribing, and procceses the requests.

6 December 2005

Uwe Hermann: Escaping the Java Trap: A practical road map to the Free Software and Open Source alternatives

A very interesting post from Mark Wielaard outlines how we can "ensure that developers can create applications using the java programming language without having to depend on proprietary software". Very good read and definately a very important and worthwhile cause. Also recommended: ClasspathMigration: practical tips on how to avoid proprietary (java) coding styles. (via eDev News)

Wouter Verhelst: Digital ID

I went to the municipal office this morning and fetched my digital ID card which had been waiting there for me since a few months (call me lazy). So, I now officially have a digital identity. Of course, I already had a digital identity. My trusty GnuPG key that I use for my Debian work, amongst others, still has value. And I actually prefer to use that key for most things, really:
  1. I prefer to use a trust system that is based on how I think things are done safely, rather than having to trust a third party—even if that third party is the government
  2. The digital ID cards are made with my National Number as part of the X509 keys on them. This is a highly sensitive number wrt my privacy, so I prefer not to use it for everything and the kitchen sink.
These two things are unfortunate, though technically sound (if you want a key that is useful in a court office, having a government-signed key is of more value; and the National Number, though privacy-sensitive, already existed before the digital ID card and would be cumbersome to change; also, it would be silly to invent a new numbering scheme just for the sake of it). And technically sound is also how the rest of the card is built up—always nice if people with clue design something.

Martin 'Joey' Schulze: Why I joined LinuxTag

In 1999 I went to LinuxTag as a Debian representative after the project has received an offer to staff a booth there. I took over the maintenance and organised the first Debian meeting in Germany. I also gave two talks during this event, one of them was even repeated on the second day. We've had a lot of fun and since this was the first meeting of Debian affiliated people in Germany, it was very interesting to connect faces to mail addresses and to learn more about the people behind a name. This LinuxTag was the last such event that took place at the University Kaiserslautern. Free projects such as KDE and Debian have been offered a booth in one building from which one could reach the lecture rooms, while company booths were located in the Mensa building with their own professional booths. It was a warm weekend and the Jolt people have supported us with cool and caffeined drinks. We had the opportunity to use a lecture room for sleeping with other project members. Klaus Knopper was supporting the network and supervised the security team, and hence, had the unfortunate job to move away all project members from their booths, out of the building or into the lecture room. I've heard, that he had a hard time, and still believes that Debian people don't need sleep. I guess we should have moved him into the lecture room for a sleep instead. This '99 LinuxTag was quite a real success. It took place at the rise of the dot com era and all people were happy about the event. There were about 7,000 visitors in total on both days. The city of Kaiserslautern has called the university several times since there were no free hotel rooms anymore. Former events happened more or less unnoticed by locals, but not anymore in 1999. After the show was over, we dismantled the booth, moved away our own equipment and left the place. However, I made the "mistake" to notice that the LinuxTag people, who have provided us such a great opportunity, still had work to do since they had to dismantle the booth system and clean the ground floor. My biggest "mistake" was that I didn't run away and have a nice evening but decided to help and ask other booth members who were still around to do the same. Having cleaned up the location quite fast was not the only result. Oliver Zendel, who was in charge of talking to the community and who offered Debian the booth, spoke to me afterwards and wondered whether I would be interested to join the team. Well, I knew how to organise stuff, can talk to people, know quite some people in the community, the LinuxTag people were a cool team, so why not. So for the event in 2000 I was in charge of the projects exhibition. In 2000 we also had to move out of the university of Kaiserslautern since 7,000 visitors were already too much for that small university and city. That's why we eventually moved to the Stuttgart fair. That was an interesting experience. It was also interesting to see how such an event can be organised by a team of friends and how the acceptance in the business world was. In Stuttgart we were able to use a small office (max. 15m ) for the entire team as working space. Two computers were installed which we were allowed to touch but not to install a real system on. Hence, Klaus brought Knoppix CDs. This was the first time that I learned about the Knoppix Live CD. Together with my notebook we've had three desks and could work. However, today I really wonder how this could have worked with so many people, but apparently it really did. Due to the need and my experience in both talking to the press and being the press I joined the LinuxTag press team and even held the final press conference, while my colleague held the opening press conference. So after all projects were happy, the show went fine and most of the office jobs were done, I prepared a press release together with others and maintained the final conference. This was also the first time LinuxTag has organised a business congress as a special extra program for business representatives. It was also the time I experienced the need for several supporters for various tasks. In that year, a dozen supporters were paid as "security" who also drove the shopping for us. Hence, I already acquired some people who supported us as volunteers. That was also the time when Benny joined the team. In 2000 the exhibition boomed and there were a lot of large dot com company booths, which was very nice because LinuxTag arose from a students association and became more and more professional, a platform for both companies and projects. It was organised just like a Free Software project and worked non-commercially. Despite several flame wars and disputes, which seem to be normal, it was organised by friends who believed of a higher goal. It was very nice and gave me a warm feeling when looking at what we have achieved. However, I had nothing to do with commercial interests, income, acquisition, invoices etc., so I may have missed a lot. This year, LinuxTag was planned to take place in one exhibition hall, but there were so many companies interested in running a booth that a second exhibition hall was later rented as well. That's why there were two adjacent halls instead of one large location. In 2001 we were using a different exhibition hall, a larger one due to the strong demand in 2000, but still at the Stuttgart fair. This time I was also in charge of the supporters and already dispatched jobs during the event. From time to time I also maintained the shuttle service to the airport to pick up speakers or take back speakers, which I've also done in 2000. This time we've had a larger office in which all of use fit and which was a nice working atmosphere. We were also able to provide more booth space to Free Software projects. In that year I've automatically taken over the office and communication with the outside world, collecting and distribution information. I don't think this was planned, but it just happened since I was able to do the job besides my other obligations. I also gave a talk about Debian, even though others in the team considered me insane for doing that as well. With a lot of help by the local user group, we were able to offer project members a cheap sleeping opportunity. The LUG acquired a gym hall during the night an cooked in the student's office "Hellblaues Nilpferd". After I've picked up Hans Reiser I went there for a snack with him before dumping him at the hotel. It was a nice atmosphere. One of the lead people for this effort, Hubert Kai er, was suddenly overtaken by death two weeks ago. In 2002 LinuxTag moved to Karlsruhe and thus to a new fair where everything had to start again from zero. We had to get acquainted with the local company and their representatives and learn how the new fairground works. The fairground was more interesting since there was a large open area between the conference site and the exhibition hall. Looking at past years, it was used by visitors. Thanks a lot to Jochen Topf from GUUG and members of the local user group KaLUG a lot of community events happened during LinuxTag. They maintained an Internet caf in the conference building and organised the legendary KaLUG party which has become a regular LinuxTag event. In addition to that I've also worked more and more and took over more areas where I noticed help was needed and that I could manage it. So it happened that I took over more work at and before LinuxTag which finally resulted in two months of work were I don't remember a day on which I've worked less than 8 hours for LinuxTag in 2005. In 2002 I worked on the coding marathon and delegated the tasks and support during LinuxTag to two other people, so it will run independent of me. Since I was the first of the team to arrive in Karlsruhe, I also built up the office and the storage. Due to the large distance I had to leave Oldenburg the day before I want to arrive in Karlsruhe, so that I was at the fairground at last at 10 o'clock on Sunday morning. Before the event a lot of issues had to be negotiated with various parties, which required quite a lot of work. Until 2004 the entire team was working in their spare time without getting paid for their LinuxTag work. The higher goal was the impulse and all of us had neglected one issue or another that wasn't important for LinuxTag. We've had some external service providers at least since 2002. The acquisition became a difficult task for students who liked to work until the morning and get up at lunch time, since many companies expect a partner that is available for them from 9 to 5. That's why Charter was eventually hired and this year ergomedia. For press work newthinking was hired. This year the social event was also organised by them. However, having two people from the board of directors being paid by the association for their LinuxTag work from April, and external service providers that were also paid, was something I considered problematic if not unfair, looking at how other people commit to LinuxTag and don't get a monetary compensation. Several people still worked a lot on LinuxTag in their spare time and had to live from something as well. It caused resentment in the team.

Jaldhar Vyas: foss.in 2005

I've come back from foss.in in Bangalore, India which I attended as a representative of the Debian project. Foss.in is the event formerly known as Linux Bangalore. It has broadened out to cover all aspects of Free and Open Source Software and is the largest such event in South Asia. I'm told almost 3000 people attended this year. I arrived on the morning of Monday the 28th. The conference organizers put up myself and other speakers at the guesthouse of the Indian Institute of Science. The accomodations were spartan but comfortable. They got considerably less spartan by the next day which was when I figured how the hot water tap worked. I shared my room with Kartik Mistry of Gujarati l10n fame. The first day of the conference was on Tuesday the 29th. The conference was taking place for the first time in a new venue, in several large canvas tents in the grounds of the Bangalore Palace. There were some technical difficulties; when we arrived on site in the morning, there was a line of people atleast several hundred long, waiting to register. Undoubtedly, some of them must have given up and gone home, but the fact that so many people persevered is a testament to the high level of energy surrounding the event. The talks began late too but everyone I spoke to seemed to take it goodnaturedly. I had planned to give two talks. One my standard half-hour "What is Debian?" song and dance. If you went to Debian Day at Helsinki, you already know what that's about and a 90 minute workshop on "Creating Debian Packages." Both were scheduled for Tuesday afternoon. Owing to the earlier delays, the first of these which was slated for 2:30pm didn't start until 4pm. The organizers actually asked me to roll both talks up into one supertalk which was not a problem for me. However, I made one fatal mistake. At lunch time I had noticed one of the food stalls was selling an inviting-smelling cheese pizza. Now, I've been to India enough times to know, "phirangis" simply don't eat dairy-based food in India unless they have some time to acclimatize to it first. I even said as much as I was eating the pizza. Somehow I rationalized that the cheese was pasteurized and well-cooked so the rule wouldn't apply to me but boy was I wrong. I first noticed signs of distress three-quarters of the way through "What is Debian?" I struggled valiantly to the end but then had to excuse myself to head off to the latrines and perform a hard reset of my gastro-intestinal tract. A couple of minutes of vomitting later, though a bit wobbly, I felt well enough to return and start talking about creating Debian packages. I didn't have slides for this one, I just used my laptop to show the innards of binary and source packages, all the various files in the debian directory, debhelper, debconf, and the lifecycle of package maintainence. Unfortunately wi-fi didn't seem to be stretching as far as my location so I couldn't show such nifty things as apt-get source and pbuilder but hopefully my descriptions of these things were impressive enough. There were lots of good questions from the sizable audience and I think we went over 90 minutes. Apart from some BOFs, I didn't really have any formal commitments for the rest of the conference so I spent it holding court at a table in the expo area. I was constantly busy demoing Debian, answering questions, and signing keys. I met Vaidhyanathan Mayilarangam who is a Debian developer, though inactive at the moment. He is going to start getting involved again soon. On Saturday the 3rd, I met the two currently active DDs, Ramakrishnan Muthukrishnan, and Ganesan Rajagopal. Throughout the days of the conference I also met many other figures on the Indian Free Software scene and made a lot of new contacts. That's it for now; in future blog entries I'll write about some of my impressions of the prospects and problems of Debian and Free Software in India. It remains for me to thank: Branden for authorizing funds for my plane ticket, Atul Chitnis and the other organizers and staff of foss.in, Mahesh Pai and Prasad Kadambi who assisted me in navigating Bangalore, and all the other friends of Debian, new and old, I met during my trip.

5 December 2005

Anthony Towns: Security Infrastructure Changes

Delays suck. I’m actually skipping ahead here, I’d meant to blog about updating the dak codebase into shape for whatever changes were coming up first, but it turns out I’m not in the mood for that. Besides which, most of this entry is preprepared. In the last few entries we went over the background for updating our security infrastructure to make it possible to have security team members that don’t worry about vendor-sec issues (process, overview, NIv2 aka NINJA, queue-build issues), all the while skipping fairly lightly over the question of what has to actually happen. That happens to be the way I prefer to work, lots of background tinkering, then spend as little time on actual implementation as possible; it has it’s drawbacks, but hey, I like it. Anyway, the second last step is working out in detail what’s going to happen. The delay in question was trying to get the security team to sign off on it, but unfortunately they’re busy enough that that looks like it’ll being an indefinite delay, so I’m going with the “well, ftpmaster maintains the dak/katie infrastructure for the security team, so in the end it’s our call on what’s best anyway” line of thought, and just plunging in. Fortunately the current and final plan should make pretty minimal changes to how the existing security team operate anyway, even assuming a massive testing security operation happening in parallel with them – so the downside risk is already pretty minimal. (And it was, afterall, developed in consultation with Joey, and then shopped around a few folks who’ve been doing security work for testing and kernels) What is that plan, you may well ask. It’s something like this: First, let’s restate the idea:
Concept Allow two teams to exist, the current security team as the “vendor-sec subteam”, and the full team which can expand to also include the testing-security people and others interested and able to help out with security work but who do not have access to vendor-sec.
Then, we want to think about the processes that are involved at a global level. First for uploads that can’t be made public until some later date, and can only be worked on by the “vendor-sec” enabled security team.
  • Source upload to queue/unchecked (as now)
    • Upload is authenticated etc
    • Upload is moved to queue/embargoed
  • Upload is autobuilt
    • Logs are sent to a procmail address
    • Logs are forwarded (by procmail) onto the vendor-sec subteam
    • Logs are signed and sent back
    • Binaries are uploaded to queue/unchecked
    • Binaries are moved to queue/embargoed
  • Uploads (source + binaries) are approved from queue/embargoed by
  • running amber
    • Uploads are moved into the archive
    • The archive is mirrored
  • The approver issues an advisory
And likewise for issues that don’t need so much secrecy:
  • Source upload to queue/unchecked-disembargo (new directory)
    • Upload is authenticated etc
    • Source+version added to unembargo table
    • Upload is moved to queue/unembargoed
  • Upload is autobuilt
    • Logs are sent to a procmail address
    • Logs are forwarded (by procmail, after checking unembargo table) onto the full team
    • Logs are signed and sent back
    • Binaries are uploaded to queue/unchecked
    • Noting that the source is in the unembargo table, Binaries are moved to queue/unembargoed
  • Uploads (source + binaries) are approved from queue/unembargoed by running amber
    • Uploads are moved into the archive
    • The archive is mirrored
  • The approver issues an advisory
Processes are great, but they have to be supported by proper information handling, so it’s worth looking at what the above actually means for the on-disk structures, too. This is particularly important, since filesystem level security is mostly how we wall off vendor-sec stuff from other users of the system (whether they’re also working on security issues, or doing, eg, web page maintenance or something equally random). Voila:
queue/unchecked, queue/unchecked-dismebargo
    world writable
    accessible only by katie
    contents automatically cleared every 15m
queue/embargoed
    writable only by katie
    accessible by vendor-sec subteam
    amber allows packages to be ACCEPTed
    [...] allows packages to be REJECTed
queue/unembargoed
    writable only by katie
    accessible by full team
    amber allows packages to be ACCEPTed
    [...] allows packages to be REJECTed
queue/accepted
    packages only sit in accepted briefly while amber is running
And finally, to sum things up, this is what a member of the security team should expect to actually do to release an advisory:
  • Upload package to queue/unchecked (or queue/unchecked-disembargo)
  • Wait for build logs to be sent to your address
  • Check and sign those build logs
  • Check the final packages in queue/embargoed (or queue/unembargoed)
  • Run amber over the packages to accept them
  • Fill in the template advisory generated and send it to the -announce list
The differences between that process and the current one used by the security team is pretty minor, ttbomk: currently uploads sit in queue/accepted not queue/embargoed, and currently the security team ignore the template advisories amber generates preferring to make their own – aiui, this is mostly due to delays in actually receiving the advisory template since amber mails it instead of leaving it somewhere convenient on disk. Anyway, that’s what the plan looks like. We should see how well it survives contact with the enemy, or at least reality, remarkably soon. (Of course, I guess “political issues” could always foul it up completely anyway, particularly going by the fact that it’s been more or less the only problem raised by the folks I’ve passed this on to… Oh well, reconstruct that bridge when we get to it, I guess)

Martin 'Joey' Schulze: Past LinuxTag Commitment

For me this year's event was the most successful and wonderful LinuxTag I've eve been to. I've worked during LinuxTag as much as I could and did my best to make it the best event ever. If I commit myself to something, I try to work properly and generate proper results. This was the same for LinuxTag. As a result, this year I had many tasks to work on. First of all I managed the community and free projects so that they had an opportunity to present themselves to the broad audience during LinuxTag. This required months of communication with members of all attending projects and negotiating their needs. It also required to gather information about the various parts of LinuxTag that also affected projects. Since it is boring having to answer the same questions all the time I decided not doing that anymore and once started to maintain an FAQ that intends to contain all important information for exhibiting projects. Last year I've also added an location plan with information about shops and restaurants nearby and this year I contributed a map for getting to the AKK where the legendary KaLUG party was organised. Being responsible for the projects I was required to decide which project are suited to get a sponsored booth, its size and its location. This year we have had the opportunity to use the ground floor of the conference building in addition to the regular exhibition ground, so that we've could use about 700m in total for the projects exhibition. I've worked nearly two entire weekends to get the booths assigned properly and to have proper graphics. For the conference building I also created the "official" booth map, booth naming, booth signs and booth numbering. One weekend was planned, the other was an accident since we had to rearrange some booths. Exhibiting projects and other community and Free Software oriented projects also had the opportunity to use two workshop rooms for workshops, BoF sessions, meetings and talks. For these I maintained the schedule and negotiated with the speakers and projects, and also acquired moderators for both rooms for the entire time. The people who organised the Accessibility booth people managed to get green light for building a large booth and a so called forum, which is an open talk area, but without any support. Since they couldn't fill in all slots and you can't dismantle a forum in the middle of the show, I've taken over its maintenance and schedule and managed to complete it with interesting talks, setting up, looking for moderators and dismantling. One of these talks I've even held on my own. Fortunately, a DJ contacted us and was able to provide his PA, boxes, microphone and stuff. Without him, the forum would have been an utter disaster. To support the projects we had to build up the network in the main exhibition hall for them on our own. Otherwise it would have cost us several thousand euro, which we didn't have. So I had to draw plans containing the cables we had to lay, calculated the length and decide where to deposit switches and stuff. On the day before the show opened, several supporters went around with a large ladder laying the cable. In the conference building this was done by the KaLUG. I've also coached the supporters during LinuxTag, and was even present at a special short meeting for and with supporters in order to reflect the past day and talk about the next day. This year was the first time I really had the time to attend the meeting and thank our supporters. Before the show started I've also negotiated food arrangements with a restaurant and a colleague so that we had lunch during the show. I ate from it as well, but didn't manage to eat every day unfortunately. Most additional signs of A4 and A3 size that we used during LinuxTag in order to help visitors and officials to find their way were designed and printed by me. Many of them were the result of last year's aftermath. Most of them were fixed with adhesive tape by our supporters. The Coding Marathon was supervised by me as LinuxTag representative. It was organised by HP, intel and Red Hat and, of course, negotiated with the acquise team of LinuxTag. The Coding Marathon was a half day programming session for visitors. The resulting code is released under the GNU GPL and winners were awarded with prizes at the end of each day. This required me to attend several phone conferences, name one or two interested people from "LinuxTag" who would propose a task and head the marathon during one day. Last year already, when I took over this job, With p2 and Arne I've already found two competent people, and this year also added Alex Schmehl for a task I proposed. Naturally, it was not possible for me to moderate the Coding Marathon during LinuxTag due to other obligations. When I arrived at LinuxTag the week before it officially started my first job was to build up the office and prepare the rooms so that the entire "team" could work inside properly. The first office should be used by supporters for general requests and customers, with a desk for me as well. The next room was meant to host the speakers office and the other rooms were intended to be back offices or private rooms. In order to be able to work properly in the office I've also brought with my some of my network equipment and set up the office LAN, server and printer. I had already experienced cable problems last year, that prevented us to use 100MBit/s switches, so that antiquated 10MBit/s hubs had to be used. I've also supervised our daily shopping tours and collected demand for various items from others. The most important items were fluids since it was quite warm during LinuxTag and collapsing core members and supporters are no fun. Other food had to be fetched as well. A lot of other items had to be purchased as well, in order to run LinuxTag and be able to fix or improve various areas. One or two supporters were taking the car for the shopping tours. When I arrived in Karlsruhe the HP booth was already being built. The other, smaller booths followed on Monday. Hence, on Monday and Tuesday I also supervised the building of the booths. It's important that somebody is around for questions, both from booth builders and from officials of the fairground. One also has to check if the booths are built properly and that they don't cause a risk for the exhibition hall, neighbour booths, smoke detectors and stuff. Issues should be corrected as soon as possible so that they don't become problems later. As soon as I arrived I also took over our own storage area and maintained deliveries for booths that haven't built up yet. Several companies negotiated with me before the show so that I knew which deliveries to expect and could move them to their respective booths as soon as they were built up. This year the first X.Org developers conference took place right before LinuxTag as well. I negotiated with both the X.Org people and the fairground people so that this developers conference could really take place. Unfortunately the plans and acknowledgements were sent out quite late so we were in a hurry getting everything set up and organised. Since we experienced network problems this year, they had not network as well, so did we in the office. Two days without a network connection. Pure horror. On Thursday the legendary KaLUG party took place. The location had to be prepared for the party, for which several supporters went there before the party has started. It was planned that I attend the party, so I went there at about 1 a.m. For some reason I didn't manage to leave the fairground earlier, and on the way to the AKK some of my friends who were also supporters were on their way home, excusing themselves for leaving before I arrived. Eumh... When I arrived at the party I first checked the situation and saw loads of uncleaned pots and stuff. Since nobody was cleaning them, I jumped into the mobile kitchen and started cleaning before I even ate or drank anything. That was fun, though a bit unplanned. The social event on Friday was organised by Claudia from a service provider who got some support from me before the show and during the show. Several supporters helped her clean the area that was unused for several years. During the evening I only gave away free tickets for the supporters and moved inside afterwards, always looking around if everything was ok, negotiating with her, of course. Very well managed, I can only say. This year I gave three talks during LinuxTag. Usually I only give zero or one during such an event, due to my other obligations. However, this time I felt, that I should make a maximum use of LinuxTag, anticipating the future. Hence, it started with Debian Security held during this year's Debian day, followed by Howto LinuxTag on the following day and finally Debian Internals together with other Debian developers. After the last talk I had about two hours to calm down again and initiate the general dismantling. Fortunately I've already planned a lot before the event because after my final talk I was a bit exhausted and needed to calm down and get into LinuxTag organisation again. Dismantling is the most parallel work at LinuxTag because all booths are dismantled at once and many people are running around with arbitrary stuff. One really has to take care of ones own stuff or it gets lost faster than one can shout. During the evening the entire fairground was cleaned, from all conference rooms the audio and video technique was removed again, all bottles and glasses were moved back into the office, the movable walls collected and moved back to their owners, the Internet caf was dismantled and computers moved back into their respective boxes. Some exhibitors had to use extra storage space temporarily. The Community forum in the conference hall had to be dismantled and chairs stacked properly. The same goes for tables and chairs used by the projects booths in both, the exhibition hall and the conference building. The network for projects had to be removed again, cables and switches secured. All additional signs had to be removed again. Since we have used some durable signs that could be used for future events again these had to be removed carefully and secured again. We've also ordered a container for paper since a lot of paper had to be thrown away and throwing away large amounts of junk is expensive. This way we were able to get rid of paper stuff a bit cheaper, but had to take extra care so that only paper went into this container. Hence, we needed a supporter who stayed with the container until it was fetched again. When the internal LinuxTag party in the office was nearly over, I came back into the office with all other areas finished, ready to start dismantling the office - usually the colleagues don't let me because they want to party and don't have any obligations anymore. That sucks a lot. So, again the internal party went on nearly without notice by me, but I'm used to that. This year I had already taken this into account and organised some stuff for an after work party (contrary to the other while-others-work party) outside of the office with supporters, friends and some team members that were still sober. This night we went to bed after 5a.m. and hence had a chance to get a quick breakfast already (we didn't use it, though). It was when we thought "Yes, this was a hell of an event!" I usually went to bed at 1 to 3a.m. and got up again at 5 or 6a.m. so that I was able to work on the important stuff that I committed myself to, and so that I was able to chat with friends and supporters in the evening. That was something I really missed on past events. Last year I probably wouldn't have spoken to Alfie if he hadn't placed himself into my way as a brake block. Thanks Alfie! This year such a maneuver wasn't required. In order to be able to work on so many areas during LinuxTag I tried to optimise the workflow and the processing as much as I could. I also used several sheets and paper to write down stuff for later processing so that my brain was kept clear and I don't become insane (or more insane, for what it's worth). That worked quite well and all areas I worked in worked fine as well, since I had time to talk to people even during the day. Even after my talks I wasn't flooded by phone requests like last year. After the event I had to drive some 750km back, after having only little sleep. Getting to Karlsruhe is always the easy part. Driving back is exhausting because I'm usually quite exhausted and in need of a lot of sleep. I won't disclose how long it took me to reach Oldenburg but it was faster than last year.

4 December 2005

Benjamin Mako Hill: Debian in Boston

After a unfortunate bout of downtime, I'm happy to announce that Sam Hartman has officially revived the Debian-Boston-Social mailing list and our community is back in business. If you're in Boston and would like to participate in key signings, meetings with local and traveling free software hackers (Debian and otherwise) and to stay keyed into a crowd of people in Boston working on and using Debian and its derivatives, this is your list. You should feel free to attend events and to plan and announce your own in pubs and other points of interests. With its strong academic predisposition and its important place in the history of free software, the Boston/Cambridge has no excuse being shown up by places like New York City when it comes to having a happening Debian scene. You can sign up here.

30 November 2005

Wouter Verhelst: EMILE working... sortof.

I don't know how I did it, but I did it: Somehow, I got EMILE to work on jazz, my Quadra 950. Unfortunately the kernel does get loaded but it will panic rather soon after that. But at least it's a step in the right direction. Now to get the bloody thing to boot again, using penguin. Because that's the downside of EMILE: if you fuck up your boot, you're in trouble... I'll probably need to test on different hardware; the Q950 is quite different from other hardware, and it apparently isn't entirely compatible. Oh well.

Francesco P. Lovergine: Playing with a d-link modem

I finally managed to hack a D-Link DSL300T series modem, which works using a Montavista embedded Linux distribution for AR7 (with a few proprietary modules and tools unfortunately). I have now a TTL-2-RS232 adapter to better control the box with a serial console, thanks to a friend of my LUG. I'd like to add at least openvpn to the box, to get a great low-cost vpn gateway.

On the embedded side, I just discovered that my recent handheld i-mate PDA2k is a Blue Angel compatible with GPE and Familiar. Just another toy to play with whenever I'll have time and another spare unit, which can be in a few (at least for the spare unit part).

BTW, I'm seriuosly starting to think 24 hours in a day are too few to do whatever I would.

28 November 2005

NOKUBI Takatsugu: RssCast

I maed some debian packages for Galatea/GalaTalk. The apt line is the following:
deb http://www.daionet.gr.jp/~knok/debian ./
deb-src http://www.daionet.gr.jp/~knok/debian/source ./
Then I made a Ruby script named "RssCast", to convert RSS feed into mp3 files with text-to-speech engine. The code is in http://www.daionet.gr.jp/~knok/trac/trac.cgi/file/trunk/rsscast/rsscast.rb. It requires festival and lame (ah, it's painful...). And if you want to convert Japanese text, also needs sox, jtext2wav.rb script and galatalk from the arove apt line. Unfortunately, I couldn't make Podcasting feed yet.

David Moreno Garza: Venezuela

I was in Venezuela last week.
 
Something special happened. No, it is not only that I was able to see my beloved girl; it is not that the free software community and free software efforts and project rock. No, something very personal and special.
 
I arrived at Maiquetía (roughly, international airport of Caracas) from Maracaibo around 9 pm. At around 10 or 10:30 I was on my way to the hotel on a van where they pick up and down people on the airport-hotel-airport basis. I was waiting for my early flight to Mexico City the next day (on Sunday, at 8 am).
 
On our way to the hotel, I asked a lady sitting next to me: "So, how far away from Maiquetía is Caracas?". "Around 40 or 45 minutes", she said. Ah, nice, next time I come to Venezuela I definitively should go to Caracas, I thought.
 
"You're Mexican, aren't you?". "Yes", smiling. "I'm going to Mexico tomorrow", she said, also smiling. "Are you in the Mexicana 8 am flight?", I asked, being curious. And she was. We talked a bit more and apparently she was coming also from Maracaibo on my same flight, now that's a coincidence. "It is my first time in Mexico tomorrow", so it was mine in Venezuela.
 
Arriving to the hotel, we checked in and went to rooms. On the morning, at the next day, I found her on the hotel-airport van again. I thougth she was going to be already on the hotel, specially since I was late for almost an hour, but no, she was there. "So we are late, eh?", she asked me. "I think so".
 
After exhausting militar revision (four times, with four different soldiers:  Political relationship between Mexico and Venezuela is not healthy nowadays), I documented my baggage. The lady was in the executive line and I was with mortals. She was pregnat, also. The lady on the desk gave the boarding pass (at that point we were supposed to be already on the gate, one hour before time) and pointed me another desk where I was supposed to pay airport taxes. Now, that is scary, since I was not carrying too much on bills or coins. I arrived to the desk: "how much is it?". "105'000 bolívares", around 50 USD. God dammit, I was only carrying 45'000 and my credit cards are broken. At that sudden time, I was already thinking I should be spending a couple more days to get that fucking cash and pay for the change of flight, etc. Or... I could ask for help to the lady. What do I lose if she says no?
 
- Mrs, I have a real problem, and I need help. Anyway, I will truly understand if you are not able to do it, but I'd much appreciated it.
- What happen? 
- I need to borrow 60'000 Bs from you, please, please. I don't have enough to pay for the taxes and my credit cards are completely broken, I didn't think on taxes when spending money on anything else before.
- Don't worry, let's go to the ATM.
 
There. There I go. That completely unknown nice lady helping me to not lose my flight.
 
- But I have to go first to a Internet center to make a transaction online to be able to get cash from the ATM.
- Yeah, of course, I'll go with you- What else could I do?
 
She took the cash off and went together again to the taxes desk. She gave me the money and we both paid. Only 15 or 20 minutes were left for the flight to departure and we were trying to do things fast. Fortunately, we both did it since more cops and soldiers were making inspections just on the airplane's door.
 
When she was on the line I went to the phone booths to make a call home.
 
- Mom, I need you to bring 300 pesos when you go pick me up to the airport. Long story.
- No problem.
 
And the lady was not there anymore, I was unable to see her again (probably because she was on executive or because she was an angel :-). When we landed, I didn't see her again on the plane, in the lines, in the police line, etc. I have no idea how that happened, but it happened.
 
She will be awarded with twins :)
 
She was wearing a David's shield on her neckless, by the way.
 
 

27 November 2005

Aigars Mahinovs: Do you want to hear the most incredible "it's not ...

Do you want to hear the most incredible "it's not a bug - it's a feature" story ever?

After shooting hundreds of megs of RAWs with my Canon 350D last couple of weeks, I noticed a very strange thing - importing this large amount of files from my camera into F-Spot took ages. F-Spot ate memory in tens and hundreds of megabytes and never returned it back to the system. Well I blamed it on Mono and went searching for a better way. Then I found out that command-line C program gphoto also take the same horrific amount of memory to import my photos. I saw that to download 900 Mb of photos (~250 photos) photo memory use went up to ~910 Mb (2 Mb were shared). Luckily Linux managed to swap out part of gphoto, so I could finish the download with my 512 Mb of real RAM and a 1 Gb swap file. I googled and founds tens of bug reports on this - first of them as early as December 2004. Ouch.

Well - let's see what the problem is, shall we? Some bugreports reference a bug in gphoto's SourceForge bug tracker where a users reports that downloading a 250 Mb video file takes 250 Mb of RAM and developers reply that unfortunately that is the limitation of current infrastructure and it is very hard to fix. Bumer.

But wait! He says that downloading ONE file takes a lot of RAM. This limit should not exist when downloading multiple files - we should be able to drop information about previous file as soon as we start downloading the next one, right?

Ok, lest see, what really is going on there. Downloading source of gphoto. Looking at it. Seeing a lot of mess. After around 10 minutes I start to understand that there is a table of option names and functions and the real job is doe by command line parser who calls a function as soon as he encounters a proper parameter on the command line. :P After 3 more minutes jumping around the code I finally get to a function that gets called to download a single file. Looks pretty easy:
Looks all fine and dandy so far. However I see the memory use that suggest that this last operation does not happen as it should, so I search for the gp_file_unref() function. I do not find it in gphoto source, but as I soon figure out - it is in libgphoto2. The function is pretty straight forward - the reference count of the structure is reduced by 1 and if it has reached 0, the structure is freed from memory via gp_file_free() function.

Hmm, I wonder what will happen if I replace gp_file_unref() with gp_file_free() in gphoto? After a quick compile and installation (I thank the Gods and all DD's for the wonders of "debuild -us -uc && sudo dpkg -i ../gphoto*.deb") I ran gphoto again. Wow, it now only consumes 8-16 Mb of RAM and not 900. The files downloaded fine, but in the end glibc made a lot of fuss about "double free". What does that mean? It means that someone managed to get a reference to our MemoryFile and didn't give it back. Naughty boy!

We only call three functions using that pointer, so it should not be hard to trace them trough the source to see what they do. The gp_file_new() function looks good, it sets reference count to 1 always. gp_get_file is more complex - I get to crawl through a lot of strange redirects to all levels of gphoto architecture. At one point I get a bit alarmed as I see a local variable called ref_count, but then I see that the code just stores reference count there for safekeeping while data is copied from another object and right after that copy reference count is put back safely. After all that I get to the end of the gp_get_file function, just a couple thing left - cache the result, clean up and return the file. Wait a minute ....

CACHE?!?!?!!

$(&@($^@#$(^@&^$(#&$@#(&$(@#$&!^&$^@*!(&$#(@& !!!!!

It appears that someone thought that it is a good idea to use a gig or so of my RAM for cache, just in case if I would like to download the same photos the second time around in the same program call. IT IS NOT!

Results: one line patch, one NMU building for upload, one *very* long bug in upstream bug tracker, one developer quite upset and not too convinced about the correctness of free software ways any more :P

26 November 2005

Anthony Towns: Queue Building

The biggest difference between the hypothetical security queues and the existing byhand and new queues is that they need to be autobuilt; it’s not really feasible to try saying whether a security update is acceptable if there’s still some possibility it’s not going to build on half our architectures. Additionally, it means that there are two queues that need to be built, rather than just one. The way accepted autobuilding works isn’t too complicated, fortunately. There’s a directory where symlinks are made to uploaded packages and sources, and a Packages files (for all architectures) is generated, as is a Sources file, all of which are made available to buildds. They’re also added to the regular unstable Packages and Sources files and passed to quinn-diff and wanna-build. In order to avoid unnecessary breakage at transitional points (such as when a package moves from accepted to unstable proper), packages are kept in the accepted autobuild directory for a day or so afterwards. There’s also the issue of including the .orig.tar.gz from the archive along with the .dsc and .diff.gz from accepted for uploads that aren’t new upstream versions. Security accepted autobuilding adds two extra wrinkles. The first is that packages being autobuilt can’t be generally visible to other users on the security host, which includes the web server that’s supposed to get the packages to the security buildds. So instead of symlinking, copies have to be made, and care has to be taken to ensure that doesn’t accidently leak information in the process. The second trick is that security needs autobuilding of multiple suites (oldstable and stable, and hopefully testing as well), whereas for the regular archive, it’s sufficient to autobuild unstable packages from accepted, and leave the rest until the daily pulse run. This particularly means that uploads from accepted need to be moved into separate directories depending on the target suite, so that the buildds don’t accidently build a package for woody against the libc from sarge. At a gross level, generalising to supporting autobuilding of multiple queues is therefore straightforward: extend the “accepted_autobuild” table to include information of what queue the files are from (which implies a name change is appropriate), extend the configuration file to allow you to specify which queues should get autobuild handling for which suites, and finally add the code to actually do this when packages are moved into and out of the appropriate queues. Hurray for simplicity! But there’s one little bit of complexity still to bother us. We know we need different directories and Packages files for different suites, but do we need it for different queues as well? Worse, we need different chroots on each autobuilder for each suite, do we need different chroots for each suite for each queue? The latter could well be a complete showstopper. One reason why we might need to treat the queues we’re considering separately is that they have different secrecy requirements: embaroged updates can’t be visible to anyone, even people working on the unembargoed security updates in parallel, and yet the buildd has to forward its logs on to someone to be signed. If embargoed and unembargoed packages are built in the same chroot, by the same buildd, from the same queue, how do the logs magically go to the right person? That’s not necessarily easily answered; currently the hope is that it’ll be okay to have a single shared queue and set of buildds and chroots, and have all the logs forwarded to a single address, at which point they can be redirected to the appropriate security team members by procmail. The assumption this is based on is that there’ll already need to be some magic to do that for the builds themselves once they’re uploaded and need to be moved into either the embargoed or unembargoed queue, so the same thing should be possible with the build logs. Pending further surprises though, that’s enough to move onto the next phases, which is generalising dak to cope with arbitrary queues.

25 November 2005

Benjamin Mako Hill: Buy Yesterday Day

Buy Nothing Day is upon us again. As usual, it's being held in the US on Black Friday and elsewhere either on Friday or the day after. I'm a supporter of BND and try to celebrate each year. Unfortunately, it usually ends up turning into, "buy everything you would buy today the day before day." This arrangement is certainly more convenient for those who like to eat but perhaps not entirely in the spirit of things.

Antti-Juhani Kaijanaho: Thanks for all the cars

The news today included pictures from a Thanksgiving parade, one of which showed cheerleaders(?) dancing, and bringing up cardboard cutout cars. Cue the anchor’s voiceover: “The Thanksgiving feast originated from a feast thanking for a good harvest.” Yeah, a car harvest.

Next.

Previous.