Search Results: "fh"

27 July 2006

Enrico Zini: Ninth day in Addis

SSH To enable remote logins with ssh:
apt-get install openssh-server
Then you can login with:
$ ssh efossnet@proxy.dream.edu.et
To verify the host key fingerprint of a machine:
$ ssh-keygen -l -f /etc/ssh/ssh_host_rsa_key.pub
Note: you need to verify it before logging in! More information at http://www.securityfocus.com/infocus/1806 Example ssh usages:
  • To log in:

    $ ssh efossnet@proxy
    
  • To run a command in the remote computer:

    $ ssh efossnet@proxy "cat /etc/hosts"
    
  • To copy a file to the remote computer:

    $ scp Desktop/july-18.tar.gz efossnet@proxy:
    
  • To copy a file from the remote computer:

    $ scp efossnet@proxy:july-18.tar.gz /tmp/
    
Warning about SSH: there are people who run automated scans for ssh servers and try to login using commonly used easy passwords. If you have an SSH server on the network, use strong passwords, or if you can it's even better to disable password authentication: in /etc/ssh/sshd_config, add:
PasswordAuthentication no
To log in using public/private keys:
  1. Create your key:

    ssh-keygen -t rsa
    
  2. Copy your public key to the machine where you want to log in:

    ssh-copy-id -i .ssh/id_rsa.pub efossnet@proxy
    
  3. Now you can ssh using your RSA key

If you use ssh often, read these:
proxy Problems we had today with the proxy:
  • ssl does not work. Reason: squid tries to directly connect to the ssl server, but the AAU network wants us to go through their proxy. Ideal solution: none. There is no way to tell squid to use a parent proxy for SSL connections. Solution: update the documentation for the Dream university users telling to setup a different proxy for SSL connections. Longer term solution: get the AAU network admins to enable outgoing SSL connections from the Dream university proxy. Other things that can be done:

    • report a bug on squid reporting the need and requesting the feature
    • download squid source code and implement the feature ourselves, then submit the patch to the squid people
  • Browsing normal pages returns an error of 'Connection refused'. In the logs, the line is:

    1153294204.912    887 192.168.0.200 TCP_MISS/503 1441 GET http://www.google.com.et/search? - NONE/- text/html
    
    That "/503" is one of the HTTP error codes. Explanation of the error codes:
    Reason: the other proxy is refusing connections from our proxy. Solution: none so far. Will need to get in touch with the admins of the other proxy to try to find out why it refuses connection to our proxy, and how we can fix the problem.
postfix on smtp.dream.edu.et http://www.postfix.org/basic.html Difference between mail name and smarthost:
  • The mail name is the name of the mail server you're setting up (TODO: need more details on what's it used for)
  • The smarthost is the name of the mail server that will relay mail for you.
Quick way to send test mails:
apt-get install mailx
echo ciao   mail efossnet@localhost
To configure a workstation not to do any mail delivery locally and send all mail produced locally to smtp.dream.edu.et:
  1. install postfix choosing "Satellite system"
  2. put smtp.dream.edu.et as a smarthost.
To setup a webmail: apt-get install squirrelmail (on a working apache setup). To setup mailing lists: apt-get install mailman, then follow the instructions in /usr/share/doc. Mail server issues we encountered:
  • When a mail is sent to efossnet@localhost, the system tries to send it to efossnet@yoseph.org

    Investigation:
    • "yoseph.org" does not appear anywhere in /etc or /var/spool/postfix
    • postfix configuration has been reloaded
    • postfix logs show that the mail has been 'forwarded'
    Cause: the user efossnet had forgotten that he or she had setup a .forward file in the home directory. Solution:
    rm ~efossnet/.forward
    
Apache To add a new website:
  1. cd /etc/apache2/sites-available

  2. sudo cp default course

  3. sudo vi course:

    1. Remove the first line

    2. Add a ServerName directive with the address of your server:

      ServerName course.dream.edu.et
      
    3. Customize the rest as needed: you at least want to remove the support for browsing /usr/share/doc and you want to use a different document root.

  4. sudo a2ensite course

  5. sudo /etc/init.d/apache2 reload

More VIM Undo: u (in command mode) Redo: ^R (in command mode) You can undo and redo multiple times.
To recover a lost password for root or for the ubuntu admin user Boot with a live CD, mount the system on the hard disk (the live CD usually does it automatically), then edit the file /etc/shadow, removing the password:
enrico:$1$3AJfasjJFHa234dfh230:13343:0:99999:7:::
becomes:
enrico::13343:0:99999:7:::
You can edit the file because, in the live CD system, you can always become root. After you do this, reboot the system: you can log in without password, and set yourself a new password using the command passwd.
Installing packages not on the CDs To get a package for installing when offline:
  1. apt-get --print-uris install dnsmasq
  2. Manually download the packages at the URLs that it gives you
Otherwise, apt-get --download-only install dnsmasq will download the package for you in /var/cache/apt/archives. You can install various previously downloaded debian packages with:
dpkg -i *.deb
Backups There are various ways:
  • dump (for ext2/ext3 file systems) or xfsdump (for xfs file systems). Makes a low-level dump of the file system. It must be used for every different partition. It makes the most exact backup possible, including inode numbers. It can do full and incremental backups. To see the type of the filesystems, use 'mount' with no parameters. To restore: restore or xfsrestore.

  • tar Filesystem independent. It can work accross partitions. It correctly backups permissions and hard links. It can do full and incremental backups. Example:

    tar lzcpf backup.tar.gz /home /var /etc /usr/local
    tar lzcpf root.tar.gz /
    
    To restore:
    tar zxpf backup.tar.gz
    
  • faubackup Filesystem independent. Uses hard drive as backup storage. Always incremental. It cannot do compression. Unchanged files in new backups are just links to old backups, and do not occupy space. Any old backup can be deleted at any time without compromising the others. It can be used to provided a "yesterday's files" service to users (both locally and exported as a read-only samba share...). To restore, just copy the files from the backup area.

  • amanda apt-get install amanda-client amanda-server It is a network backup system. It can do full and incremental backups. You can have a backup server which handles the storage and various backup clients that send the files to backup to the server. It takes some studying to set up. To restore: it has its own tool.

Some data requires exporting before backing it up:
  • To save the list of installed packages and the answer to configuration questions:

    dpkg --get-selections > pkglist
    debconf-get-selections > pkgconfig
    
    To restore:
    dpkg --set-selections < list
    debconf-set-selections < pkgconfig
    apt-get dselect-upgrade
    
    If you do this, they you only need to backup /etc, /home, /usr/local, /var.
  • To save the contents of a MySQL database:

    mysqldump name-of-database   gzip > name-of-database.dump.gz
    
    To restore:
    zcat name-of-database.dump.gz   mysql
    
You can schedule these dumps to be made one hour before the time you make backups.
Scheduling tasks As a user:
crontab -e
As root: add a file in one of the /etc/cron.* directories. In cron. hourly,daily,weekly,monthly you put scripts. In the other directories you put crontab files (man 5 crontab). If the system is turned off during normal maintainance hours, you can do two things:
  1. Change /etc/crontab to use different maintanance hours
  2. Install anacron (it's installed by default in ubuntu)
For scheduling one-shot tasks, use at(1):
$ at 17:40
echo "Please tell Enrico that the lesson is finished"   mail efossnet@dream.edu.et
^D
When and how to automate
  1. First, you manage to do it yourself
  2. Then, you document it
  3. Then, you automate it
Start at step 1 and go to 2 or 3 if/when you actually need it. (credits to sto@debian.org: he's the one from which I heard it for the first time, said so well).
Interesting programs to schedule during maintanance
  • rkhunter, chkrootkit
  • checksecurity
  • debsecan
  • tiger
Important keys to know in a Unix terminal These are special keys that work on Unix terminals:
  • ^C: interrupt (sends SIGTERM)
  • ^\: interrupt (send SIGQUIT)
  • ^D: end of input
  • ^S: stop scrolling
  • ^Q: resume scrolling
Therefore, if the terminal looks like it got stuck, try hitting ^Q.
Problems we had today with postfix
  • Problem: mail to efossnet@dream.edu.et is accepted only if sent locally. Reason:

    $ host -t mx dream.edu.et
    Host dream.edu.et not found: 3(NXDOMAIN)
    
    Solution: tell dnsmasq to handle a MX record also for dream.edu.et:
    mx-host=dream.edu.et,smtp.dream.edu.et,50
    
  • The problem not solved with the previous solution. Reason: postfix was making complaints which mentioned localhost as a domain name. Solution: fixed by changing 'myhostname' in main.cf to something different than localhost. Note: solved by luck. Investigate why this happened.

Problems found yesterday and today:
  • there is no way to tell squid to use another proxy for SSL connections: it only does them directly

  • if you want to configure evolution to get mail from /var/mail/user, you need to explicitly enter the path. It would be trivially easier if evolution presented a good default, since it's easy to compute. It would also be useful if below the "Path" entry there were some text telling what path is being requested: the mail spool? the evolution mail storage?

  • In Evolution: IMAP or IMAPv4r1? What is the difference? Why should I care?

  • apt-get --print-uris doesn't print the URIs if the package is in the local cache, and there seems to be no way to have it do it.

  • in /etc/apache2/sites-available/default, is the NameVirtualHost * directive appropriate there? It gets in the way when using 'default' as a template for new sites. Otherwise, one can add a new (disabled) site that can be used as a template for new sites instead of default.

  • the default comments put by crontab -e are not that easy to read.

23 July 2006

Amaya Rodrigo: The /usr/doc transition

Quote from Joey Hess: In 1999, Debian began moving /usr/doc to /usr/share/doc to comply with the FHS. Due to unfortunate dpkg issues at the time, we couldn t simply move the directory and be done with it, but decided to move things peicemeil by updating all packages. Due to some silly concerns about users having to look in two places during the transition, we decided to start by making /usr/doc/ -> /usr/share/doc/ symlinks. In 2001, putting any documentation in /usr/doc became a serious policy violation. The symlinks were still allowed. In 2002, we completed the first stage of the transition, released woody with complete /usr/share/doc and /usr/doc directories, and policy was changed to not require the /usr/doc symlinks. debhelper was changed to stop adding postinst and postrm fragments to manage the links, and so most packages only needed a recompile to finish the transition. As a result, More than 250 bugs were filed, blockers of #322762. Most of these bugs, rot in peace in the BTS for years, some maintainers fixed them themselves, some other maintainers NMUed and others did QA uploads to deal with this issue. But it was not enough. It looks like at a certain point I decided we would not ship Etch with a transition from 2002 still in progress, so I did approximately 114 NMUs between the 11th and the 18th of July, fixing 152 bugs, 46 of which were not related to the /usr/doc transition. I also closed the ones affecting packages not in testing or unstable, unblocked the ones for packages that would not ship with etch (as exim3, that will be replaced by exim4), and updated the MIA info for several of the maintainers. At the same time, I revamped packaging a bit if I felt inspired to do so. Sure, things went wrong at bits and places, which I later fixed the best I could, but inmense love was poured in these NMUs. Several maintainers thanked me and the most NMU-unfriendly people didn't even complain. Lars Wirzenius pointed me to other related bugs, found by upgrading from testing to unstable with piuparts, and added blocking relationships with #322762 where needed. At this stage, less than 5 open bugs remain. I suspect that more packages once created this link and don t remove it on upgrade. I would need some help to find them. All this NMU fever happened while Joey was away on holidays, and when he returned, he confirmed my fears, I had DoSed his email and bandwidth: <joeyh> amaya: did you have to fix all the /usr/doc bugs while I was on vacation?
* joeyh watches his inbox and BW groan at the seams :-)
There is still several important and minor issues that we should deal with before Etch is released, Release Goals or not, just because we are Debian, and just because we care about this sort of things: Some of you will argue that these might not be transitions per se, just mass-bugfilings. I don t really care how you d rather call it. If you are looking for easy ways to help Debian, or to fill your lazy summer afternoons with, provide a patch today and CC: me. I intend to group these bugs either using user-tags or blocking bugs in the BTS. Help locating them and grouping them will also be appreciated. [Updated entry to reflect more accurate NMU and bug totals]

20 July 2006

Amaya Rodrigo: In the news

Merc Molist interviewed me for El Pais, one of the biggest Spanish newspapers, which also happens to be my favourite one, in their weekly technology special, El CiberPais.

The interview, in Spanish, is here. Ugly pic of me wearing the Debian Women Tshirt in the printed version only.

I must say Merc made a great job out of a difficult subject, sexism in IT.

Update: Zobel provided me with a link to an Engrish version of it. Google 's Translation is not much better.


The ugly pic

13 July 2006

Jonathan McDowell: HDTV's not quite there yet.

I need a new TV. I've have my current one for 6 years now and it was secondhand when I bought it. Plus it gets this little green patch now and then (which it's been doing for a couple of years). Not hugely annoying, but everything helps in justifying a new one. My current TV is a normal 25" 4:3 set. I've worked out that if I go widescreen I need a 31" set to get the same height, which seems perfectly doable. The tricky bit comes in that I'd like HD, as hopefully the new TV will last me at least as long as the old one has. HD's only recently been launched in the UK - Sky brought out their HD service just in time for the World Cup (though I understand lots of people who'd pre-ordered didn't receive their upgrades in time). Telewest also have a recent HD service. Of course NTL, who I have, don't yet (despite them having merged with Telewest) and the Freeview DVB-T trials are only in Central London. Anyway, I won't have HD signal for a while, but I want to be ready when for when I do (and I'll be hooking a media PC up to the screen anyway, so will be able to take advantage of it via that method). Sky appear to have decided on using 2 HD formats; 720i (1280x720, progressive) and 1080i (1920x1080, interlaced). So having support for those would be nice. In addition I'd like 1080p (1920x1080, progressive), for things like the media box and in case content becomes available in that format (HD-DVD/BluRay?). This doesn't seem like a huge request. Lots of TVs in the UK are marketed as HD Ready. What does that mean? Essentially it specifies that the minimum native resolution of the screen is 720 lines and that there is a digital (DVI or HDMI) input that can support 720p and 1080i input and copy protection (HDCP). There is no minimum width; the set is allowed to scale the image to fit whatever it has. I've seen HD Ready sets that have a 1024x1080i native resolution - not wide enough for a native 720p image let alone 1080i. However most HD Ready sets seem to do 1366x768 as the native res, so fine for 720p but not 1080i/p. sigh I managed to find a TV from Philips, the 37PF9830/10, which does native 1920x1080p. Amazon even sell it, though for an eye watering £2,248.28. What does this get you? Integrated Freeview decoder? No. MPEG2/4 playing of movies from flash media? No, just image viewing. A nice big monitor for your computer? No, Philips' website only lists 1024x768 as the max computer res and I've seen reports in forums that 1366x768 is possible, but no higher. There's a 42PF9830/10 (42") that adds movie playing and ethernet, which sounds good but adds who knows how much to the price (I couldn't easily find a UK price). Plus it's probably too large for me even if it was affordable. My naive hope is that with the Sky push lots of people will have got sorted for the World Cup, or will go HD for Christmas. Meaning that come the new year I might have a better available choice of proper HDTVs and the pricing might be sane. I can dream, right?

8 July 2006

Uwe Hermann: ASCII art spam

Whoa, those spammers are getting really desperate now, aren't they? Today in my inbox:
apy8       0lyk   b8xvdtfa        glb13            0uurqjl     5xju3p0jb            1uk9z
 yhak     o3vl    tytjx4ui        m6frp           64zx9238iq   128lkxk2wh           fzqpv
 mkqj     g1tn    wgd293sv       s3mnhaq        y1vvng731dsy   f39iqddc65f         5fgnwcx
 t9ba4   wg8j1      ucq8         uviyoz6        4k2g4     fo   wz0i   q7pn         hqblemz
  pu9t   1dwr       mocp         nlihfws       mm3w0           j4zb   0fzh         o6nljyq
  0luy   to8a       ljd0        5bi8 zpfh      93ab            tbpr   hztc        foza p7sf
  5vw7t a4nce       2fjr        oxto 2t0r      37v3   mxvfq0   x6qtw1j6me         ye51 b7pt
   pwtx gg5l        mtfr       h7390 0voxg     btc8   t7vj3n   twn72qv80         92sj8 8qhuc
   4xoq 9m3u        r3i0       4dgf   2k8l     o6u8   eegabt   70vrl5ukj         6bpp   u336
    9p5tqyo         ixkj       7mkcss82ko2     6dgtj    tdei   eayi tnjgi        ujh0x073p63
    jbxotva         alrs      ubvdw9kele9rs     ed7bi   vbjz   0tlb b1svn       15xh90ojyj56u
    zzfla7m       3o1jnrrc    kvlxt74rl46l1     yy5mng2kl7dj   8bmq  793jb      qzqkjf00glzsf
     e6doi        hfcqgi2t    w8bd     vydk      elqfyxtdk7g   upqf   ippbf     ca5l     cgrm
     npnrd        dzsgo4jz   q9zo       co4g       6kabvxc     sqpy    5ds54   qhpb       krpw

5 July 2006

Daniel Burrows: Paintings make the room pretty.

<rant>
In my last post, I linked to the Wikipedia article on "kitsch". I generally use this to describe art that's in egregiously bad taste -- plaster sculptures of women with exaggerated breasts holding beer bottles, animal-shaped clocks whose eyes wobble with the pendulum, etc. I want to make this clear, because the Kitsch entry in Wikipedia suffers from a case of advanced artistic pinheadism. In short, their definition of Kitsch reduces to

It's pretty and people buy it.


For instance, Thomas Kinkade (the self-styled "painter of light") is disposed of with the offhand comment that his pictures are

scenes of stone cottages, lighthouses, cobble stone streets, rustic villages, and other vistas, with emphasis on the glittery ornamentation in the play of light and natural foliage. His work is meant to be sentimental, patriotic, quaint, spiritual, and inspirational.


While I'm a bit put-off by Mr. Kinkade's aggressive marketing, the quote above could only be considered a serious insult by people who describe the origins of the scourge of kitsch as follows:

Kitsch appealed to the crass tastes of the newly moneyed Munich bourgeoisie who, like most nouveau riche, thought they could achieve the status they envied in the traditional class of cultural elites by aping, however clumsily, the most apparent features of their cultural habits. ...

... in being too beautiful and democratic it made art look easy, non-involving and superficial. ...

In some sense the goals of democratization succeeded, and the society was flooded with Academic art, the public lining up to see art exhibitions as they do to see movies today. Literacy in art became widespread, as did the practice of art making, and there was a blurring between high and low culture. ...

The subjects and images presented in academic art, though original in their first expression, were disseminated to the public in the form of prints and postcards.


In short, "wasn't art great back when the only folks who could have it were rich aristocrats, back before those grubby ungewisserei [0] got their grubby hands on it and grubbied it up?"

I am reminded once more why I never took a single art course in college, and took only one English course (and that to fulfill a degree requirement). The worlds of "serious" art and literature seem to be about standing around in a circle telling all the other people in the circle how cultured and sophisticated you are, and how intellectually impoverished and shallow all the people outside the circle are.

Why are you sophisticated? Because you said so, and you ought to know. And be forwarned: any attempt to invoke logic will be refuted with an assertion that our thought systems are inherently socially constructed and there is no absolute truth anyway, except that we are far more intellectual and sophisticated than you.

This has gotten a bit long -- but in short, anyone who looks down on another human being because they would rather have this hanging on their wall than this has frankly given up any right to be offended by the term "self-important pinhead".


[0] This may not be proper German, but as I am apparently an inferior man-child for not seeing instantly how awful kitsch is, how can I possibly be expected to get any language but my own right anyway?
</rant>

28 June 2006

John Goerzen: Mario Cuomo against Ronald Reagan

I finally have episode 3 of my podcast Sound of History online.

Episodes 1 and 2 both had two speeches each, and one of those speeches in each episode was from Ronald Reagan. So, for episode 3, I selected Mario Cuomo's address to the 1984 Democratic National Convention. Quite an interesting listen.

It was quite interesting to hear how the rhetoric 20 years go, from both sides, is quite similar to today's rhetoric.

25 June 2006

Martin F. Krafft: The very first FrOSCon

I am sitting on the train, returning from the first FrOSCon, a conference close to Cologne, organised by a bunch of volunteers, mostly students of Department of Computer Science of the renowned Rhein-Main-Siegen Fachhochschule (which seemed to fully support the endeavour), as well as members of the Linux / Unix User Group Sankt Augustin. I gave a presentation on my doctoral research (slides available) and otherwise spent much time talking to people about topics ranging from issues in cooperation to strategical questions on Debian, and of course my well-known involvement with the Transnational Republic. It really does seem as if my little experiment in Mexico rippled a long way and made people more conscious of the meaning of key signings. At first, I did not want to go to the conference and had even called in a week before to cancel my slot. I had signed up as a speaker in February, just as I was starting to get on top of my incapacitated wrists (and the severe muscular problems in my shoulders, which are at the root of it all) after several months of "downtime". However, I had my hopes up too high and found myself still unable to work for reasonable lengths of time following my trip to Souteast Asia, as well as before, during, and after the Debian conference in Mexico I attended. Consequently, the "first results" I had promised in the abstract didn't exist, and my only option was to give a talk along the same lines as the one I had given at FOSDEM earlier this year -- and after three years of exposure to an academic field were people seemed to do nothing else than deliver the same talks over and over again, I wasn't too keen on boring my audience. But the organisers convinced me, so I went out to buy a train ticket, and sat my butt down to make as much as I could out of what I had. In the end, I was very satisfied with the talk (for one, I did not experience a total loss of slides 10 minutes into it), which was delivered to an audience of primarily non-Debian people, and I got some valuable feedback from some of them, especially during a longer conversation with a guy from the OpenOffice.org quality assurance team. Have a look at the slides if you're interested. I enjoyed myself at night at the social event, where my favourite wheat beer "Unertl" was served, and once again met up to my reputation of being among the last to go to sleep ()nd among the first to be up, as you shall see shortly) and found my place to sleep sometime between 3 and 4 in the morning, following very interesting discussion on some of the fundamental questions revolving around Debian, Ubuntu, as well as several other software projects. "My place to sleep", by the way, was on my camping mattress outside the campus on a big meadow, which I preferred over a stuffy gym hall shared with several dozens of others. I greatly enjoyed my time under the stars until 7 in the morning, when the sun was already radiating unbearable heat (I was in a black sleeping bag), some beast had stung my finger and had caused it to swell up so much that I couldn't bend it anymore, when I remembered that I am suffering from hay fever, and two stray dogs decided that they liked me. I made my way back to the campus, got lost on the way to the shower and hence could not get one for the gym hall had been closed by the time I arrived, didn't find any wheat beer for breakfast (remember, I am from Munich), and finally could not fall back asleep in the chill-out area, which was located on the top floor with windows in the ceiling and the sun right there on the other side causing happy sparks of enthalpy and a general sense of discomfort. Discovering "Mate Ice Tea" (which is just what it sounds like), I quickly got high on caffeine and spent the rest of the day wired, running about because I couldn't stay put. At least I got to see plenty of people that way. This was the first FrOSCon and I must say that I am very impressed by the organisation team. It was not difficult to conclude that they had spent a lot of time thinking and planing and researching and learning from other events. As participant, I had the impression that everything was working according to plan at all times, I never saw any of the crew members stressed out, and the service and little details really made one feel good, as participant and probably even more as speaker. We (the speakers) had our own catering room, as well as a work room attached to it, so we could always hide away from the masses and treat ourselves to a good selection of foods and drinks, and the work room was actually among the cooler (as in temperature) places to hang out, so that came in as a welcoming refreshment. Network coverage and uptime was flawless, the connection conveniently fast, and the atmosphere generally very pleasing. I definitely hope there'll be another FrOSCon next year, and that I'll be able to attend. Thank you to everyone who helped make this conference possible.

19 June 2006

Joachim Breitner: The BOFH song

The song “Fifty Ways to Leave Your Lover” by Paul Simon just played in the radio this morning, and I felt it was time for a new text: “Fifty Ways to Bug your Users”. Enjoy!

29 May 2006

Arnaud Fontaine: Planet debian package

These days, i have worked on planet debian package. At first glance, it seemed easy to package but actually it wasn't, mainly due to debconf and FHS problems. A package is temporarily available at this address. The main features of the package is the usage of debconf to configure cron interval and also handles /etc/planet.conf for main options. Any comments are obviously welcome.

26 May 2006

Zak B. Elep: For those who still care about CVS, here s one for you :)

Heh, almost the end of May and I’ve not a post. Well, that’s going to change :P There’s a new version of cvs in unstable, courtesy of Steve McIntyre and Yours Truly, responding to the RFH posted earlier. As a new upstream version, it is supposed to fix a lot of bugs, but it seems that a duo of grave and normal have been found :/ Hopefully those wouldn’t be there for long :) Along with fixing those bugs, I’ll be checking out the rest of the bugs list and start pinging submitters… Hopefully a good few of the old outstanding bugs will get done. As for my other packages, gtklp got updated (thanks Nutmeg!) to fix Catalan l10n (thanks Lluis!) and updated the autotools update, as well as its (borked) touch-fu. I also got the new gnome-ppp in, thanks to Paul Cupis. Updates to libungif4 and lua50 will follow shortly.

19 May 2006

David Pashley: IO::Handle

Another article for your viewing pleasure. This article describes how to use Perl's IO based IO::Handle IO system and a couple of modules that allow you do to some interesting things like seamlessly handle compressed files and calculate MD5 sums as you read a file in.
use IO::Digest;
my $fh = new IO::file($filename, "r");
my $iod = new IO::Digest($fh,  MD5 );
read_and_parse($fh);
print $iod->hexdigest

16 May 2006

Aigars Mahinovs: Debconf6 day 2: Java is non-free, at last!

The first session in the morning that I attended was the BOF about Python. After an introduction to the current state by the Python maintainer (Matthias Klose) and a few other people we run overtime and the BOF was extended into another time slot. Also the session was plagued by the room switch hanging which affected both the network and the recording. It really looks that that strange situation with a bunch of python-foo, python2.3-foo and python2.4-foo packages will be fixed. Later in the day guys from Intel gave a talk about some kind of data mining stuff they were doing with hardware database from Ubuntu. The tool was called Toppler (from Dilbert) and basically was a hardware database. They pondered about possibilities of getting some useful information from the huge pool of data, but the examples that they showed were just lame. For example they showed how you can get a list of 1234 reports relating to this wireless card, but that is not what I want to know - I want to know if it works and if it does not work, what can I do to fix it. The showed an example of an OEM entering his computers hardware configuration to see what distro works on that hardware - that is completely useless: as an OEM I at that point would already have chosen a distro and what I really would like to know is what will and what will not work from my hardware configuration in that distro, why it will not work and how to fix that. That would be approaching useful status - so far they only have a SQL DB with a simplistic web fronted. At the same time to give out that kind of information you would need much more datapoints to make a correlation - datapoints most of which can not be tested automatically and require user interaction on submitting. On the other hand the more user interaction they need, the less users will want to submit that data. They already have at least 10 times too many questions (there were 30 + options) if they really want this to be something that users will want to contribute to. Also there is no real direct motivation for users to contribute to that database - maybe OEM's have that kind of motivation, but they must decide to use Linux first. In short I only saw mountains of social and technical problems with this project and really little in terms of benefit. That's what you get when you have too much money to burn. After that there was a "yearly" Ubuntu report from Mark Shuttleworth. Most of what Mark said was already widely known if you followed Ubuntu's development a bit. Dapper will release on 1st of June and will be supported for 3 years on the desktop and 5 years on the servers. Edgy Eft will be a developer driven highly experimental release that will be done in 4 months and its planning will be done in Ubuntu conference in Paris (18th-23rd June). In Dapper KDE is given equal weight to Gnome and in Edgy the same will be done to XFCE. There is a graphical installer - Ubiquity and a graphical upgrader that works around strange things that APT has not been designed to handle. Mark can only guess what will be in Edgy as developers will decide this one, but most probably Xen and XGL will be integrated, startup will be reworked by adding paralel init scripts with dependencies and maybe even APT will be replaced by some kind of SMART tool. I have not heard anything about it before and Mark also gave no further detail. but in any case Edgy promises to be "the Ubuntu equivalent of a release of Debian experimental". Way to go not to stick into the enterprise stability. I am really looking forward to that. Another announcement came from Sun - thanks to hard work of many people the license of Sun Java was changed to allow it to be included in Debian non-free repository. FHS and Debian Policy compilant packages have been produced and are uploaded to Debian sid non-free. Congrats to all involved! Now we only to move it to main somehow. Unfortunately I missed two BOF that I wanted to see due to scheduling changes that I did not follow at the time: i18n BOF and Debian representation BOF. I have been doing quite a bit of both during last years, so I wanted to be there, but missed it. Doh. In the afternoon I was twice recruited by the organizers to do the group photo. Last year there was a huge collection of dSLR's around Debconf5, but this year either the dSLR owners did not come or did not want to lug their cameras across half the globe, so I with my Canon 350D and a few (cheap) lenses have become the de-fact photographer of the Debconf6. It was only natural that the group photo also had to be taken by the best camera around. I, naturally, am very honored by the opportunity even if that would mean that I myself am not on the group photo. I could just gimp myself into the corner of it after the fact :) In any case the place to take the picture had to be found. The amphitheater where the Debconf5 group photo was taken was a perfect place, but lacking that a trick all the way back from Debconf3 could be employed - standing at a high place and take the picture at a sharp angle down. The best place for this that I found around here is the 10m diving tower - there is a platform aprx. 8 meters from the ground where one can clearly see to the back area of the tower where a large grass area is located. I still need to confirm whether I can take the group photo from there with my best lens (Canon 50mm f/1.8 II) and what amount of light will we have on time point when we have the ability to actually take the picture (18:00). There will still be a bit of a chance with the weather, so an alternate group photo time should also be planned. There will be an announcement mail that will probably go public before this email will. Oh and later in the evening I found a guy (sorry, names escape me is seconds) who has a Canon 17-40mm f/4 L lens which I will borrow from him for the group photo. That will make the photo a lot sharper and make us much more flexible to the group size which is very helpful. Just before the dinner I want to see the saunas that i was told long ago. Basically it was a headed room 3x1 meter with a temperature control outside that was set to 0. Nobody uses the sauna here and that is no wonder - the whole place is like a large sauna. In the same club (just above the restaurant where we have all the meals now) there was a ping-pong table, two pool tables and a gym. In the gym I found a Mexican Gentoo spy who's mom was born in Riga, Latvia. The world is truly small. After the dinner I sent out the group photo announcement email and then took a look at the Joey Hess's BOF about debian-installer. I snook into the talk to take a few photos and watched the rest via the webcast. Unfortunately all the people spoke very quietly there, so it was hard to distinguish their voices from the background noise. Please, do not do that! Speak up, people! The tango practice took place between hacklabs tonight. Looked fun, but I would rather take a lot of pictures of it :) On a final note I witnessed a Mao game in Spanish. That was only a bit more disturbing then the same game in English. Even while I do not speak any Spanish. P.S. If you really like what I do with photos in this blog, it would be very nice if you would sponsor me a Pro account at Flickr. Otherwise my monthly traffic limit there (20 Mb) is nearly up with only select photos of two days of Debconf uploaded. I have now almost 2 Gb of photos stored on my laptop and the conference is only starting.

7 May 2006

Dirk Eddelbuettel: Patricia Barber

Went to see Patricia Barber and her band at a fundraiser for the Oak Park Arts Council, and in particular its scholarships program. I had seen Barber before at her usual venue, the Green Mill. I am still somewhat divided about her music: some material is really good and innovative. I particularly like how she transforms standards, and how she can rock rather hard. Some of her stuff, on the other hand, leaves me unimpressed. But she's definitely worth watching given the opportunity. The surprise revelation of the evening, though, was Ars Nova, a standard quintet (tenor, alto, piano, bass, drums) composed of a mix of current students of the local high school OPRF as well as former students now spread across area music programs as well as Berklee. They played a set of modern classics and were really impressive. No web site to link to, unfortunately.

26 April 2006

Wouter Verhelst: GCC 4.1

The m68k port has been having issues with GCC 4.0 since its inclusion in the archive. Although many of the bugs that spawned from that update have since been fixed, there are still a lot of them; I suspect the high number of GCC 4.0 ICEs is the main reason the m68k port still hasn't made it back as a release candidate architecture. Many of the issues with GCC 4.0 seem fixed in GCC 4.1. The most recent example is QT4, which did not build with G++ 4.0, but did build with G++ 4.1. Another particularly problematic example is some KDE-related thing (the name of which I can't remember offhand) that didn't build with GCC 4.0 due to an ICE, and didn't build with GCC 3.4 either, due to a different ICE. However, it's hard to say for sure whether GCC4.1 really is an improvement if you haven't tried using it on an autobuilder. For that reason, I just installed gcc 4.1 in the buildd chroots on jazz and quickstep, the experimental autobuilders, and made them the default compilers. Hopefully that'll work better than GCC 4.0.

24 April 2006

Marco d'Itri: yet another irrtoolset replacement, 1.0

Today I released version 1.0 of rpsltool, my router configuration generator. It can generate the complete BGP configuration (neighbor statements, route-maps, prefix and as-path lists) of peering or customer-facing routers using RPSL data, a local configuration file and a configuration template based on the popular Template::Toolkit perl package. Currently I only provide an IOS configuration template, but it should be easy to write one for JUNOS (patches are welcome!). I know that it's being used in production by several ISPs in the RIPE and APNIC regions, so if you are not satisfied by IRRToolSet I think it's worth some consideration. Major changes since the last public release:

Marco d'Itri: This is why I love OpenBSD

A dialogue between me and an OpenBSD developer about the license of a program I released today:
would you consider switching to a BSD license?
I did, but I fail to see how allowing non-free derivatives would improve the program. I am more interested in being able to use improvements developed by others than in extreme adoption.
well, either you want it to be free, then say so, without putting stupid restrictions and lawyer bullshit on it. or you don't want it to be. gpl is not free.

17 April 2006

Andree Leidenfrost: mindi 1.07 & mondo-2.07 Packages

are available from the Debian unstable repository. It's i386 only atm, but amd64 is hopefully going to follow soon. In fact, I'm writing this from a restored amd64 installation.

The upstream ChangeLog can be seen here: http://www.mondorescue.org/.
.

The main Debian changes are:
  • package reorganisation to adjust for upstream changes
  • fix for #357785
  • fix for #331060
  • fix for broken '-I' and '-E' parameter handling (from SVN r468)
  • fix for verify via NFS not working
  • fixed compiler warnings on i386
There is still a handful of 64 bit related compiler warnings because the code wrongly assumes that pointers are 32 bit and can thus be cast to int that I am not sure about how to best fix:

newt-specific.c: In function 'popup_changelist_from_file': newt-specific.c:1651: warning: cast to pointer from integer of different size mondo-rstr-newt.c: In function 'redraw_filelist': mondo-rstr-newt.c:1007: warning: cast to pointer from integer of different size mondo-rstr-newt.c: In function 'edit_mountlist_entry': mondo-rstr-newt.c:1374: warning: cast from pointer to integer of different size mondo-rstr-newt.c: In function 'redraw_disklist': mondo-rstr-newt.c:2506: warning: cast to pointer from integer of different size mondo-rstr-newt.c: In function 'redraw_mountlist': mondo-rstr-newt.c:2538: warning: cast to pointer from integer of different size mondo-rstr-newt.c: In function 'redraw_unallocpartnslist': mondo-rstr-newt.c:2575: warning: cast to pointer from integer of different size mondo-rstr-newt.c: In function 'redraw_varslist': mondo-rstr-newt.c:2610: warning: cast to pointer from integer of different size

Other than that things have been tested successfully on amd64 with kernel 2.6.16-1-amd64-k8 using NFS as backup media and on i386 with kernel 2.6.16-1-k7-smp using both NFS and DVD as backup media.

With the etch freeze still some time away, I'll try to focus on the following issues in the given order:
  1. get RAID and LVM to work - this is by far the most important task and there are numerous bugs in BTS
  2. improve FHS and other compliance, in particular default the location of the scratch and tmp directories to something sane (cf. #312546) and move the location of floppy and ISO images away from /root and make it configurable (cf. #222065)
  3. fix things so that NTFS restore leaves Windows in a bootable state rather than requiring the workaround using gparted - this may require switching things from fdisk to parted which Bruno doesn't like much...
  4. IA64 support for mondo - depends largely on what happens upstream and probably also on whether I can get my hands on an Itanium box that I can actually reboot and restore...
  5. general clean-up and wishlist stuff
I think I'll be quite happy if 1. and 2. are done before etch freezes (and all new bugs are addressed as well). We'll see.

5 April 2006

Marco d'Itri: switchsh.c

switchsh is a tiny program which can be used to temporarily change /bin/sh only for its child processes. It's primary use is running broken scripts using bashisms when your default /bin/sh is dash or to check that your packages are free of bashisms when your default shell is bash. It shows how to use bind mounts, CLONE_NEWNS and the clone(2) and unshare(2) Linux system calls.

26 March 2006

Bernhard R. Link: compiler arguments

Please do not hide the arguments given to the compiler from me.

It's hard to realize something is going wrong if you do not see what is happening. If the argument list is too long, do something against that instead of hiding it.

Make sure you follow policy when packaging software

Debian packages should be compiled with -Wall -g, but more and more do not. Please check you do, but check at the correct place. Do not look into the debian/rules file, but in the build log. If the Makefile sets a default with a single equal sign ("="), running 'CFLAGS="-Wall -g -O2" make' will not suffice. Try 'make CFLAGS="-Wall -g -O2"' instead. (Actually, there is no good reason to put them before the command. Always try to put things as arguments first, both with make or with ./configure)

It really makes everyone's live easier if those options are set.

Keep the argument list tidy.

Many argument lists are longer than necessary. If there is some -I/ in the argument list on a Debian system, there is something fishy. (It's not the universial collection of different stuff all going whereever it wants, after all). Common cases are:

- buggy scripts to add -I/usr/include

Better fix those scripts. Also make sure they do not cause other problems, like linking your program against libraries your program does not use directly. (Possibly causing funny segfaults when those libs link against other versions of those libraries)

- -I/usr/X11R6/include

For upstream packages this might perhaps be useful to support older operating systems and people unable to give it to CFLAGS themselves. But for FHS systems, this is not needed at all, as it mandates this handy /usr/include/X11 -> /usr/X11R6/include/X11 symlink. And newer X directly puts the headers in the correct place.

- packages working around upstreams breaking compatibility

Life would be too easy if upstream would not break APIs. But if they make a new incompatible version, and even change the library name for that, would it have been that difficult to also change what programs written/ported for that new incompatible API have to place in their #include line?

- plainly broken upstreams

putting stuff in $ PREFIX /include/subdir/ and #include'ing other files from that subdirectory without the subdir deserves application of some large LART.

- oversight

often it is just not necessary, and everything gets much more readable and easier if left away.

Other things makeing things unreadable are large armounts of -Ds generated by ./configure. AM_CONFIG_HEADER can help here a lot with non-path stuff. Stuff containing paths is suprisingly often not used at all.

Next.

Previous.