Search Results: "ron"

10 April 2008

MJ Ray: Vote Now! (Blog Updates)

I'm currently part way through testing Chronicle and I'm probably going to change the address of my blog (with Redirects) as part of that. I don't much like having blog in the address and some research seems to agree with me. I've lived with this mistake for four years now, through various software upgrades, so I'll take the chance to change. But what should I change the path to? /writing/reflections/ /news/ /notes/ /articles/ or something else? Vote now by leaving a comment! Oh and about the debian project leader vote: reluctant candidates are good, teams are good, people who already have had high office are less good. Go vote on that too if you can.

9 April 2008

Neil Williams: emdebian-tools 0.9.4 uploaded to Emdebian

Where, oh, where do I start with this one??
$ parsechangelog   wc
97 644 4793

97 lines, 644 words just for the changes in this version and some quite important and far-reaching. I have to try and summarise somewhere, so:
  1. dpkg-dev (>1.14.17) support

  2. New debconf question to identify the targetsuite

  3. Drop-in lintian support for cross-built Emdebian packages

  4. emchain support for a uClibc toolchain built on a glibc/gcc toolchain

  5. Require a genuine Debian environment for building

Some detail from the changelog
emdebian-tools (0.9.4) unstable; urgency=low

For the full list, see the changelog and emdebian manpages.

Anthony Towns: Select and Python Generators

One of the loveliest things about Unix is the select() function (or its replacement, poll()), and the way it lets a single thread handle a host of concurrent tasks efficiently by just using file descriptors as work queues. Unfortunately, it can be a nuisance to use – you end up having to structure your program as a state machine around the select() invocation, rather than the actual procedure you want to have happen. You can avoid that by not using select() and instead just having a separate thread/process for every task you want to do – but that creates a bunch of tedious overhead for the OS (and admin) to worry about. But magically making state machines is what Python’s generators are all about; so for my little pet project that involves forking a bunch of subprocesses to do the interesting computational work my python program wants done, I thought I’d see if I could use that to make my code more obvious. What I want to achieve is to have a bunch of subprocesses accepting some setup data, then a bunch of two byte ids, terminated by two bytes of 0xFF, and for each of the two byte inputs to output a line of text giving the calculation result. For the time being at least, I want the IO to be asynchronous: so I’ll give it as many inputs as I can, rather than waiting for the result before sending the next input. So basically, I want to write something like:

def send_inputs(f, s, n):
	f.write(s) # write setup data
	for i in xrange(n):
		f.write(struct.pack("!H", i))
	f.write(struct.pack("!H", 0xFFFF))
def read_output(f):
	for line in f:
		if is_interesting(line):
			print line
Except of course, that doesn’t work directly because writing some data or reading a line can block, and when it does, I want it to be doing something else (reading instead of writing or vice-versa, or paying attention to another process). Generators are the way to do that in Python, with the “yield” keyword passing control flow and some information back somewhere else, so adopting the theory that: (a) I’ll only resume from a “yield” when it’s okay to write some more data, (b) if I “yield None” there’s probably no point coming back to me unless you’ve got some more data for me to read, and (c) I’ll provide a single parameter which is an iterator that will give me input when it’s available and None when it’s not, I can code the above as:

def send_inputs(_):
	# s, n declared in enclosing scope
	yield s
	for i in xrange(n):
		yield struct.pack("!H", i))
	yield struct.pack("!H", 0xFFFF)
def read_output(f):
	for line in f:
		if line is None: yield None; continue
		if is_interesting(line):
			print line
There’s a few complications there. For one, I could be yielding more data than can actually be written, so I might want to buffer there to avoid blocking. (I haven’t bothered; just as I haven’t worried about “print” possibly blocking) Likewise, I might only receive part of a line, or I might receive more than one line at once, and afaics a buffer there is unavoidable. If I were doing fixed size reads (instead of line at a time), that might be different. So far, the above seems pretty pleasant to me – those functions describe what I want to have happen in a nice procedural manner (almost as if they had a thread all to themselves) with the only extra bit the “None, None, continue” line, which I’m willing to accept in order not to use threads. Making that actually function does need a little grunging around, but happily we can hide that away in a module – so my API looks like:

p = subprocess.Popen(["./helper"], stdin=PIPE, stdout=PIPE, close_fds=True)
comm = communicate.Communication()
comm.add(send_inputs, p.stdin, None)
comm.add(read_output, None, p.stdout, communicate.ByLine())
comm.communicate()
The comm.add() function takes a generator function, an output fd (ie, the subprocess’s stdin), an input fd (the subprocess’s output), and an (optional) iterator. The generator gets created when communication starts, with the iterator passed as the argument. The iterator needs to have an “add” function (which gets given the bytes received), a “waiting” function, which returns True or False depending on whether it can provide any more input for the generator, and a “finish” function that gets called once EOF is hit on the input. (Actually, it doesn’t strictly need to be an iterator, though it’s convenient for the generator if it is) The generator functions once “executed” return an object with a next() method that’ll run the function you defined until the next “yield” (in which case next() will return the value yielded), or a “return” is hit (in which case the StopIteration exception is raised). So what we then want to do to have this all work then, is this: (a) do a select() on all the files we’ve been given; (b) for the ones we can read from, read them and add() to the corresponding iterators; (c) for the generators that don’t have an output file, or whose output file we can write to, invoke next() until either: they raise StopIteration, they yield a value for us to output, or they yield None and their iterator reports that it’s waiting. Add in some code to ensure that reads from the file descriptors don’t block, and you get:

def communicate(self):
    readable, writable = [], []
    for g,o,i,iter in self.coroutines:
        if i is not None:
            fcntl.fcntl(i, fcntl.F_SETFL, 
                        fcntl.fcntl(i, fcntl.F_GETFL)   os.O_NONBLOCK)
            readable.append(i)
        if o is not None:
            writable.append(o)
    
    while readable != [] or writable != []:
        read, write, exc = select.select(readable, writable, [])
        for g,o,i,iter in self.coroutines:
            if i in read:
                x = i.read()
                if x == "": # eof
                    iter.finish()
                    readable.remove(i)
                else:
                    iter.add(x)
            if o is None or o in write:
                x = None
                try:
                    while x is None and not iter.waiting():
                        x = g.next()
                    if x is not None:
                        o.write(x)
                except StopIteration:
                    if o is not None:
                        writable.remove(o)
    return
You can break it by: (a) yielding more than you can write without blocking (it’ll block rather than buffer, and you might get a deadlock), (b) yielding a value from a generator that doesn’t have a file associated with it (None.write(x) won’t work), (c) having generators that don’t actually yield, and (d) probably some other ways. And it would’ve been nice if I could have somehow moved the “yield None” into the iterator so that it was implicit in the “for line in f”, rather than explicit. But even so, I quite like it.

8 April 2008

Russell Coker: Olympics and Politics

The latest news related to the Beijing Olympic games is that Kevin Rudd (our Prime Minister) has said “It is absolutely clear that there are human rights abuses in Tibet. That’s clear-cut; we need to be upfront and absolutely straight about what’s going on,” - stating the obvious really. If that was all that happened then it wouldn’t be particularly interesting. The paper version of “The Age” quotes George Bush as seconding Kevin Rudd’s statement. I believe that this is quite significant. Bush is well known for being stupid, the fact that he is now following the example of someone else who is doing good things is a very positive thing for the world. When John Howard was our Prime Minister we had an idiot (Howard) following an even bigger idiot (Bush) and the result was not good. Kevan Gosper (an Australian IOC board member) said “They just take their hate out on whatever the issues are at the time, and that hate against the host country is being taken out on our torch“. People who are totally corrupt sometimes seem confused when other people are motivated by moral principles, maybe we have a culture clash between the corrupt IOC board and the attitudes of most people in the rest of the world (I can’t think of any other way to map Kevan’s statement to reality). Mr Rudd has confirmed that Chinese “security guards” (soldiers) will not be permitted to operate in Australia to protect the Olympic torch from protesters, but the “security guards” have been operating in the UK. I read about this on the web site of The Age, but I won’t link to them because they have a lot of broken links with the following explanation - I am not going to link to sites that are so transient in nature (linking to The Age would lower the quality of my blog). Incidentally does anyone know of a news service in Australia that has reliable pages which stay online? We could not find the page you requested. This is often because older content has been removed from our site. In most cases you can still find the item via our archive service, News Store, where you can buy articles for a small fee. It also has the following text which indicates that the most visible problem is probably transient, but the fact that they deliberately break links is unacceptable to me: If you reached this page from a link on our site, please contact the webmaster (choose Technical faults) and tell us the address of the faulty page and the address shown for this page. The MSN article about the meeting between Bush and Rudd also had an interesting quote from Nancy Pelosi (speaker of the house in the US congress) [1]. She said “As I said in India last week where I met with His Holiness the Dalai Lama, if freedom-loving people throughout the world do not speak out against China’s oppression in Tibet, we have lost our moral authority to speak out on behalf of human rights anywhere in the world” and that the IOC made a mistake in awarding the games to China. Pelosi is not known for being left-wing (the US Democratic party is centrist/right by the standards of most democracies) so it’s interesting to see her take a stand on this issue. Erich Schubert has written about this, he points out that the Olympics are not about sports [2]. Well of course the Olympics are about money, drugs, and sports-science! I’m not sure that I agree with Schubert and Pelosi, the Chinese Olympics has focussed a lot of international attention on what China is doing - this has to be good for human rights. The Olympic games are a white elephant, running them costs a huge amount of money and there is no evidence that they actually make money for the host country once the opportunity costs are taken into account. Maybe we should give the Olympics to Zimbabwe or the Sudan next?

Erich Schubert: Boycott Olympia!

Olympia HandcuffsIn my opinion, the protests in London and Paris were great.China wants to use Olympia for promoting itself. All this is just a huge image campaign. This is why we should remind people on how cruel that regime is and how little it cares for human rights.Human rights are more important than the olympic torch.Turning a chinese PR campaign into a PR disaster is good.This is not about sports. Sports is what you do at home, not what is on TV. When I go dancing with my friends, that is sports. When I sit in front of the TV, it is not. I will not be watching the Olympics. When IOC representatives talk about it all being "only about sports" they lie - it's all about money.This is not out of disrespect for the athletes, but I cannot tolerate China using the Olympics as image campaign for being an equal member of the international community. All the new stadiums and so on - they're trying really hard to give the impression of a new china - when they actually have not changed at all.We need to signal China that if they want to be treated equally, they need to adhere to the same standards as all others - respecting human rights is the bare minimum, free elections and democracy are the next important step then.P.S. Please also do not buy Olympia swag. It's reported to be manufactured at less than half of the minimum wage even in China! It's pure exploitation!Note that I'm talking about a consumers' boycott, not an athletes' boycott. I do think that the athletes go there for the competitions.P.P.S. I don't think the Olympic games are fair anyway - I believe that many athletes are using doping (just the detection methods are insufficient). Otherwise we would not see new world records each year. And I believe the IOC is corrupt and maybe actually criminal; all they actually care about are their revenue streams, not the sports either.P.P.P.S. This blog is representing my own opinion only. Therefore it does not have or need a comment function. Use your own blog if your opinion differs.

Lars Wirzenius: Remember to uncomment

A week ago or so I fiddled with my mirroring script. To make the fiddling go faster, I commented out the actual calls to debmirror, so I could concentrate on testing the other stuff I was adding. I forgot to uncomment. My mirror hasn't updated since. Oops. Moral of the story: when fiddling something, make sure you notice if forgot to re-enable stuff you disable temporarily. In this case, I should've used "echo" instead of ":" to comment things out. Had I done that, cron would've told me nothing was beinge executed.

Michael Prokop: Re: I am only mad on IRC

Martin, sorry for calling you Madduck on the debian.ch-mailinglist. Luckily I didn’t use that name during our meeting in Zurich last week. *pfuh* ;) To take part in the pdo-game with my own name (being Michael Prokop ;-)): as many of you might know I’m known as Mika in the community. The name was invented for me around 1999 (IIRC) by a greek flat collegue who liked to call me “Mika” - refering to Mika H kkinen (for whatever reason). From that on several people started to call me that way. I’m signing mails “to the community” with that nick since many years as well as using it in usenet and on freenode (IRC); on OFTC (another IRC network) I’ve to use mikap instead because mika was registered by another user already. Outside “the community” I’m usually known as Michael, good friends also use Michi and the family of my girlfriend uses Michl when the sister of my girlfriend (named Michaela and known as Michi as well) is present. Oh, and during grammar school I was AKA Proke.</secret> 8-) So calling me Mika is perfectly fine because it’s a kind of uniqueness for me. There might be just too many Michaels around and at least in Austria my nickname is everything but common. Quoting the marketing department: Great trademark! ;) Oh and my speech parser knows to handle Michael, Michi and Michl as well - though it strongly depends on the situation, place, environment,…. Oh but using Proke is like talking to /dev/null - you’ve never heard of that name, ok?

7 April 2008

Aigars Mahinovs: Debian on EEEpc 2

The new release from the Debian EEE PC Team is simply great - it works flawlessly to install a fully functional Debian install onto an EEE PC over wireless. You only need a 16 Mb USB stick (or SD card) to boot from. The only remaining bug that people are still working on is the selection of the wireless network - int the current build the installer autoselects the strongest signal by default and if you want another you need to go back and reconfigure the network in the installer. Great work guys! BTW: This got me thinking - it shouldn’t be too hard to take over the EEEPC from the default installation without having to have a USB stick or an SD card :) The default EEE PC setup consists of a (read-only) system partition and a user partition overlay. It should be simple to download the 16 Mb D-I boot image, save it to the system partition and write a boot loader that would allow the choice between normal boot, EEE PC rescue boot and Debian installation boot. With a bit of pre-seeding we could have the d-i install a Debian instance in place of the user partition unless the user overrides that.

Miriam Ruiz: Dunning-Kruger effect

People who have little knowledge tend to think that they know more than they do, while others who have much more knowledge tend to think that they know less. That’s what Justin Kruger and David Dunning (both of Cornell University) demonstrated in a series of experiments they carried out. Incompetent individuals tend to overestimate their own level of skill, fail to recognize genuine skill in others and fail to recognize the extremity of their inadequacy. If they can be trained to substantially improve their own skill level, these individuals can recognize and acknowledge their own previous lack of skill. In one of their investigations, they discovered that 98% of university professors believed they were above the average, while that is obviously impossible statistically. Bright students, far above the others, considered themselves below their real skills, standard students saw themselves as above the average, while real bad ones were fully convinced of being among the best. In fact, the worse the person was, the most their conviction was that they were right. Even more, the most incompetent ones were incapable of realising the superiority of others, and they tended to think that the answers of the tests were the wrong ones, and not themselves. “Ignorance more frequently begets confidence than does knowledge”, quoting Charles Darwin. Most of the people react to this study with a smile, thinking about the incompetent people they know and how well this study describes them. It should be noted that everyone is incompetent about many things, and this effect affects all of us. How can a person realize that they’re wrong? The lesson that comes out of the study is that it’s really hard to find out, according to Dunning. His recommendation is not to trust just one’s own thoughts, but to ask for other’s opinions, especially before taking important decisions. Nobody should ever stop trying to improve and to learn, because it’s really difficult to know when to do it.

6 April 2008

Andreas Metzler: snowboarding season 07/08

Today was the last day the local ski resorts were open. I had a rather strange last day with a lot of freshly fallen snow, running off-piste almost the whole day. Following up on previous entries here is my balance sheet:
2005/062006/072007/08
number of (partial) days251729
Damüls10105
Diedamskopf15424
Warth/Schröcken030
total meters of altitude12463474096219936
highscore10247m8321m12108m
# of runs309189503
New highscore! Still puny, compared to what other people manage on one day. I doubt it is possible to do 24500m (81000 ft) in the local resorts, you would need steeper slopes for that. ;-) Weather/climate was strange. We had an early first snow in the middle of November (about 60cm). Up to start of march no big snowfall followed, but we had (basically the same) snow continuously even down in the valley. Then there was some thawing, and finally more snow. Now that the ski resorts are closing they probably have got more snow up on the mountain than ever this season.

Ben Armstrong: Install Debian on your Eee PC over wireless

Installing Debian on your Eee PC is even easier now, as the option to install over wireless is now present in our custom debian-installer image. Also, the new installer automates installation of many more things than prior releases, so wireless, acpi hotkeys and suspend all ‘just work’ out of the box. Two barriers remain to including wireless support for the Eee in Debian main. The first is the lack of wireless support in the official d-i installer. The second is the dependency on the non-free madwifi driver. I have no illusions about this being ready for Lenny, but I hope in Lenny + 1 this will be realized. The good news is that Nick Kossifidis is working on getting support for the Eee into ath5k. For patches, see: http://kernel.org/pub/linux/kernel/people/mickflemm. I have created a stub page FreeYourEee in our wiki about making a completely DFSG free install of Debian on the Eee. I encourage anyone going this route to contribute.

5 April 2008

Francois Marier: Searching through the contents of emails in mutt

Mutt has a built-in feature for search the body of emails in the current mailbox (see ESC-b) but it's also possible to make this extremely fast by plugging-in external tools. Here's a quick description of my mairix setup.

After installing the package,
apt-get install mairix
create a .mairixrc in your home directory containing something like:
base=/home/username/Mail
maildir=inbox:archives*:sent*
mbox=debian*:jokes
mfolder=search
database=/home/username/Mail/.mairix_database
(This assumes that you store your mail in ~/Mail and that you want the search results in a new ~/Mail/search maildir folder.)

Then you need to run mairix once to index all of your emails:
mairix
which you will of course want to run regularly. I created this cronjob in /etc/cron.d/mairix-username:
17,37,57 * * * * username /usr/bin/on_ac_power && /usr/bin/mairix
(To avoid waking up the hard drive needlessly, I prefer to restrict the indexing runs for when I'm running on AC power. Take that out if you're not running it on a laptop.)

Finally, the last bit of setup is in ~/.muttrc:
macro index \eb 'c=search'<enter><shell-escape>'mairix ' 'Enter Mairix search term'
which makes mairix take over the ESC-b shortcut.

If you use GPG, you should also add this to your ~/.muttrc to make sure that mairix can see all of your messages by saving them as clear text:
set fcc_clear=yes
bind index s decrypt-save
bind pager s decrypt-save

Lars Wirzenius: My name is...

In response to bubulle and others: My name is Lars. It's written liw, and pronounced Lasu. My family has another name for me. That's between me and them, but was given to me by my grandfather who thought I looked like a particular African political leader when I was a baby. I won't tell you what it is, because I might have used it as a password in the 1980s. If you get any part of my name wrong, don't worry. There are over 100 recorded misspellings of my family name. "Van Breda" and "Lessick" are my current favorites. Anything you will come up with is likely more recognizable than those. I'm not particularly attached to what you call me. My sense of self, self-worth, and honor, are not dependent on other people.

Holger Levsen: Extremadura details

I thought the spanish region of Extremadura had 4 million inhabitants and 200000 computers running GNU/Linex, a custom Debian distribution.

I was wrong. It's 1 million inhabitants and ca. 100000 computers running Linex - which is a much better ratio :-)

The exact number is not really known, because about 2000 computers (or so, details...!) don't provide data back for some unknown reasons. Probably a configuration detail.

Details are sooo important, and I love that. But at the same time, details are irrelevant (100000 or 102000...), I love that too.

Personally, I think the Debian Edu developer gathering the last 3.5 days here in Extremadura was very productive and fun. It was so productive, there were so many fun, interesting and insightful discusssions, that currently I can only think of one detail, I want to mention here, which really isn't a detail, but something bigger. I'm very very happy about the work which was put into bug 311188 here, mostly by Winnie. #311188 is just a meta bug, the juice is in the details, all the bugs which are blocking this bug.

And as you are probably interesting in this detail, why we care so much about this bug, let me explain: the blocking bugs of that bug will prevent upgrades from Lenny to Lenny+1 from working without problems for Debian Edu installations. That's why we care - it's only a detail, but an important one.

And now I'll run to get a last drink from the hotel bar, instead of correcting details in this post. Thank you, Cesar y Jose, for arranging this great meeting and everybody else, who makes Debian a fun thing to work on details and the great picture!

Steve Kemp: You know how to use candles?

Mutt
Fran ois Marier has recently been posting some interesting entries about the Mutt mail client upon his blog. His tips are pretty basic, but that doesn't make them less useful. So here's my tip of the day: reply_regexp. When you're viewing a mail, and you choose to reply it the subject of that mail is the basis of your message's subject. For example given a message with "Subject: hello" your reply will typically have the subject "Subject: Re: hello". This is real rocket science here, people. Imagine you're using SPAM filtering which tags messages it isn't sure about with a prefix "UNS:". Suddenly things don't look so hot, as you might end up with a mail with the subject:
Subject: UNS: Re: Hello
Reply to that mail, whilst being half-asleep, and what do you get? You get this:
Subject: Re: UNS: Re: Hello
Bad. Ugly. Wrong. The following snippet in my ~/.muttrc file correctly deals with this case:
set reply_regexp="^(((UNS:[ \t]) [rR][eE]:[ \t])*)+"
Neat. Cool. Nice.
Advertising
I've paid for some advertising upon the LWN.net site. (No link, I'm not trying to game things here.) I didn't know what to expect, but I was willing to risk the expenditure as a way of saying thanks to them for their great content. (Because of my Debian Project membership I get a free LWN subscription, as do all developers. see here for details if you're a developer without a subscription.) I've paid $30 and that has given me a months run of my advert, with clickthroughs hovering around 1%. Not horribly bad at all! I probably won't repeat the experiment for the forseeable future, but I'm glad that I did it at least once. If you have something appropriate for a Debian-based audience don't forget you're welcome to advertise upon the Debian Administration website for free - See the Advert FAQ for details.
ObQuote: The Craft Update: jquery was accepted yesterday. Today I uploaded a new version to more closely align it with the javascript-policy.

Yves-Alexis Perez: Printing

I'm currently looking for a printer. I want a Laser printer, black & white should be enough, but color may be ok too if not too expensive (especially toner). I guess I prefer a network one, even if I don't really understand the way everything should work. As I understand it, a network printer just listens on a defined port (9100/jetdirect or ipp/63), and prints jobs sent by a spooler. There is no integrated spooler, so there are two solutions: Maybe I shouldn't buy a network printer and just pick a usb one (especially since the FreeboxHD can serve as a laser printer if one plugs a usb printer on it. It listens on 9100/jetdirect so one can configure cups to pick it). I've currently narrowed my choices to: Moe on #xfce avised me to pick a printer a bit more expensive, because it would be safer on a long term, and advised: I don't really know what to do so, dear lazyweb, I'm asking you. What should I pick? This is for a home installation where we don't really print that often, so I don't want to spend too much, but where goodies like network and duplex printing are cool to have. Cups support is mandatory (except if there's another way to print easily, especially from gtk apps)

4 April 2008

Neil Williams: HP laptop repaired (and wireless)!

OK, after a mainboard replacement by HP, I have my AMD64 HP Pavilion DV6000 (DV6615ea) back and a quick update has given me working wireless! The last remaining obstacle has gone - the most recent 2.6.24 kernel update includes working support for the Broadcom Corporation BCM94311MCG wlan mini-PCI (rev 02) in the b43 kernel driver.
a little tip
When connecting this laptop to the mains for a recharge, plug into the mains before connecting the mains lead to the laptop itself. I have a strong suspicion (but it is no more than that) the repair was caused by a power spike from a dodgy extension cable. Plugging into the extension without the other end being connected to the laptop isolates such spikes.
Necessary support
$ uname -a
Linux dwarf 2.6.24-1-amd64 #1 SMP Thu Mar 27 16:52:38 UTC 2008 x86_64 GNU/Linux

 $ dpkg -l 'linux-image-2.6*'
linux-image-2.6-amd64 2.6.24+13
linux-image-2.6.24-1-amd64 2.6.24-5

Wireless config
The first dmesg output showed a useful tip:
Apr  4 20:07:06 dwarf kernel: b43-phy0 ERROR: 
YOUR FIRMWARE IS TOO NEW. Please downgrade your firmware.
Apr 4 20:07:06 dwarf kernel: b43-phy0 ERROR:
Use this firmware tarball: http://downloads.openwrt.org/sources/broadcom-wl-4.80.53.0.tar.bz2
Apr 4 20:07:06 dwarf kernel: b43-phy0 ERROR:
Use this b43-fwcutter tarball: http://bu3sch.de/b43/fwcutter/b43-fwcutter-009.tar.bz2
Apr 4 20:07:06 dwarf kernel: b43-phy0 ERROR: Read, understand and _do_ what this message says, please.

Unpack the b43-fwcutter and call make. Execute ./b43-fwcutter ../broadcom-wl-4.80.53.0/kmod/wl_apsta.o, remove any existing firmware in /lib/firmware/b43/ and replace it with the content created by b43-fwcutter.
Reboot to load the updated firmware into the kernel and your amber wireless light will flash blue. sudo iwlist scan then shows the available access points and network-manager is able to connect without problems.
I'm posting this from the HP laptop over wireless.
Summary: this laptop should be eminently supportable in Lenny
After all my doubts and all the hassle, providing you use 'noapic nolapic' and the support of the Debian-Installer for Lenny.

Manoj Srivastava: Manoj: Schemes for packaging using Git: An analysis

Are you rebasing or merging? seems to be the 64 thousand dollar question over in vcs-pkg discussions. Various people have offered their preferences, and indeed, several case studies of work flows have been presented, what is lacking is an analysis of the work-flow; an exploration of which methodology has advantages, and whether there are scenarios in which the other work flow would have been better. Oh, what are all these work flows about, you ask? Most of the issues with packaging software for distributions have a few things in common: there is a mainline or upstream source of development. There are zero or more independent lines of development or ongoing bug fixes that are to be managed. And then there is the tree from which the distribution package is to be built. All this talk about packaging software work flows is how to best manage asynchronous development upstream and in the independent lines of development, and how to create a coherent, debuggable, integrated tree from which to build the distributions package. The rebasing question goes to the heart of how to handle the independent lines of development using git; since these lines of development are based off the main line of development, and must be periodically synchronized. Here is a first look at a couple of important factors that will have bearing on that question, and packaging software for a distribution using Git in general. This is heavily geared towards git (nothing else does rebases so easily, I think), but some of the concepts should be generic. I am not considering the stacked set of quilt patches source controlled with Git in this article (I don t understand that model well enough to do an analysis) As a teaser, there is a third answer: neither. You can just add an independent line of development, and just let it sit: don t rebase, and don t merge; and in some circumstances that is a winning strategy.

Christian Perrier: My name is...

...Christian, but you can use 'bubulle' if you like, provided you pronounce it properly, ie the French way (b b l'). This is actually what most French(-speaking) DDs do. There is a special exception for Amaya, who uses "boubouy " in her Sprenchglish. I am proud of "bubulle", indeed. The nickname was given to me in the old days of BBS and *very* early Linux development in France, by Ren Cougnenc, *the* French Linux zealot of these years (and translator of a huge number of books/HOWTO/documentations). Ren , who I always dedicate my talks to, found it on a night in a bar back in...1990 or 1991, when we were getting heavily drunk with a few fellow friends, some of which became FreeBSD committers later (there is probably a link somewhere). "bulle" means "bubble" in French and you find bubbles in Perrier water....on the other hand "bubulle" is the name of the goldfish of Gaston Lagaffe, a pretty famous comic character from Belgian cartoonist Andr Franquin. Linking the two lead to "bubulle" which I never left, particularly since Ren decided to leave that world in July 1996. So, feel free to call me "bubulle" and when doing so, drink a pint to the memory of Ren . Late addition: I just found the very last electronic contribution Ren sent me (in newsgroups). For those who read French, this is really typical Ren -ish.

William Pitcock: Litigation vs. Innovation - further reflection on the state of SCO UnixWare, and what it could have been

In my previous satire about SCO UnixWare, some SCO people of course didn’t think it was very nice. So, I guess I need to explain more about why I wrote the “review” the way I did. But, first the comment: SCO comments back! Obviously any human being can recognize satire. There is obvious motivation on behalf of SCO’s PR department (correct me if I am wrong on where this comment originated; I did just some basic Google lookups, and also, this is a PR tactic known as “dead agenting”) to ignore the fact that this was clearly a satirical review. I would say, “perhaps SCO doesn’t understand why it is criticized,” but I believe it is obvious that they know why people are being critical and satirical of their company and their efforts. I would like for everyone to think, for a moment, about how things could be if SCO didn’t take the litigious strategy that they have taken over the past 6 years. SCO UnixWare could have remained a successful product, and could have in reality become a major asset to the open source world. SCO could have been the good guys here, but instead they chose a path of litigation instead of innovation. In the Open Source and Free Software world, innovation is what is seen as important. Companies may be in some sense rival to each other, but when it comes down to it, everyone appreciates and respects the work that everyone else contributes to the ecosystem. When people do not contribute in a positive way, or worse, betray their peers like SCO has done, it opens them up for criticism. As I see the situation, I think that SCO’s current tactics as a company represent those of someone who is paranoid. People who are paranoid attack first, instead of defend their position. So, while I am sure this is a pointless question, I believe it must be asked anyway: “What would SCO UnixWare have been like if they did not take a litigious strategy against Linux users?” If you look at it like this, it doesn’t really matter if we’re right, or SCO is right on who has the basic cases (well, it does, but we all know how that’s going to come out anyway). Why does SCO keep pursuing a strategy of litigation when the feasibility of this strategy is at best, unknown? To some extent, I think it is now a matter of morale. After all, it’s bad if you have to admit that the strategy you have taken for the last six years, was wrong. In some ways, you could say that SCO’s current strategy is cult-like. Furthermore, if any SCO people are interested in doing an interview about this whole matter, I encourage you to comment back, and I’ll be happy to publicize SCO’s viewpoint of this. It’s only fair.

Next.

Previous.