Search Results: "tar"

28 December 2006

Wouter Verhelst: Han shoots first

I had received some gift certificates for the Fnac for christmas, and also some plain money. So today I went there, and spent it on a few DVDs containing the Star Wars original trilogy. Since this is the 2006 DVD release, it contains two versions of every movie: the original theatrical version, as it appeared in cinema at the time of their release, and the more "modern" version, which had some computer alterations to make the special effects be more stunning. And which led to the now infamous "Han shot first T-shirts. The DVD also contains a commentary audio track for the modern version of the movie, as can be expected from most modern DVD sets these days. Intrigued about the fact that they actually went ahead and did another alteration on the movie just because fans were not happy with the new version, I switched on the commentary track and went ahead to the problematic scene 22. The commentary starts off with "There was a bit of controversy when I told everyone I was going to...", so one would think he's going to mention the whole 'Han Shot First' controversy. But he's not; he goes on with "... shoot this scene with subtitles"; the commentary during that scene simply explains how huttese (the language spoken by poor Greedo) came to be. Why they had to do that there (instead of waiting until Jabba actually joins in), I don't know. They probably wanted to talk about something else there...

Daniel Burrows: Why comments are closed on my blog.

This is belated...anyway, I'm taking a day off work to get ready for our vacation this weekend, and I remembered (after writing some other blog posts) that I meant to chime in on a Planet Debian discussion about closed vs not-closed blogs.

My reason for closing comments was quite simple: blogs are spam-magnets. While I was a student and/or unemployed, I didn't mind spending a few minutes a day purging spam messages from my blog. But when I started working full-time, it became a real chore, especially since the amount of spam I got increased with the number of posts on the blog.

One thing that would change my point of view here would be the option to automatically close comments on posts that are more than (say) 60 days old, or perhaps that haven't got a (non-deleted) post newer than 60 days. This would keep the spam problem down, since my biggest problem was ancient blog posts that no-one had commented on (at least for months or years), but that suddenly got picked up by spammers. This might be available if I ran my own blog, but I don't have the time at the moment to administrate a home server, so I'm stuck using someone else's software.

John Goerzen: Christmas Memories, Part 3

In the first two posts about Christmas, I remembered Christmas at home and with my dad's family. Today I'm remembering Christmas with my mom's family, and tomorrow -- the last post on this subject, I promise -- more recent Christmases.

The first thing that comes to mind about Christmas with mom's family is Grandma's peppernuts (pfeffernuesse to any Germans reading this). Grandma made wonderful peppernuts. And she made huge batches of them for Christmas. I remember gallon jugs being passed around.

Peppernuts are a small sweet dough, rolled out, and cut into pieces about the size of a peanut M&M, then baked. My mom has been making them, and they look like this:



In fact, I can't really remember what sort of main dishes we used to have. Guess I had a one-track mind. I suspect that we also had some of Grandma's famous cherry moos (rhymes with "close").

Us kids usually were the only ones to get gifts there, but that was fine with me. It was also great to spend time with my uncles and aunts, none of which lived in the area. They were always good for some jokes, or maybe a math puzzle.

I seem to recall that Grandma and Grandpa also joined our family for our Christmas celebration on Christmas Eve some years. Here's my Grandma reading from the Bible to my brother one of those Christmases:



Grandma has always loved being around her grandchildren, and she always seemed to have plenty of time for each one of us.

Thinking of my Grandpa Klassen reminds of first of the German hymn Nun Ist Sie Erschienen (MP3 and PDF in the comments at that link). It's still sung, in German and English, at Christmas in our church.

Grandpa was great with the harmonica. And the song I best remember him playing at is Nun Ist Sie Erschienen. I remember sitting on his lap many times listening to him play it. And I'm pretty sure it was a year-round song for him. Terah and I even had it sung at our October wedding -- if it was year-round for Grandpa, that was good enough for us. It's always special to sing the song in church.

I was going to have a picture of Grandpa with his harmonica here, but I didn't get it ready in time. So I'll have to describe it. Imagine a black and white picture of a gentle man, dressed conservatively, holding a harmonica in his hands. He's looking towards it tenderly -- it seems to be something important, and maybe it represented fond memories for him, too. I'll post the photo as soon as I get a copy of it.

Back on December 1, 1990, just at the start of Christmas season, I remember the phone ringing. Dad answered, and I knew quickly that something was wrong. Grandpa had died earlier that day, while doing something he loved -- visiting his children and grandchildren in western Kansas.

His funeral followed shortly. At 11, I was starting to become interested in photography, and I set up my tripod and took this picture of the church on the day of his funeral.



So many people still remember the church that day and commented that having the sanctuary all decorated for Christmas was the perfect way to remember Grandpa.

Grandma still talks about it, too. My mom and I played a piano duet arrangement of Nearer, My God, To Thee. After we finished, Pastor Epp said, "If the music in heaven is anything like that, it will be a wonderful place indeed." He passed away not long after that, too, but Grandma still remembers that comment verbatim (and I'm sure would gently correct me if I made the tiniest of mistakes recalling it here).

In a few days, we'll be celebrating Christmas with Grandma -- and also her 92nd birthday. I bet there will be some peppernuts there.

27 December 2006

Joerg Jaspert: Thanks

While its not the normal action people usually expect from me, I just felt the need to have a little posting saying Thanks to somebody. Who? Well. All of you doing work on a regular basis, like * Application Managers, who regularly process people that want to get Debian Developer status. They are doing a lot of work, asking questions, giving tips and in the end submit their report. Usually thats a process of multiple days up to some months work, depending on the time the Applicant and the AM has. * FrontDesk. who makes sure that the process keeps on running by managing all sorts of weird things people come up with, * Sponsors, who help non-DDs to get their package into the Debian Archive, * The release team, who always tries to get the best possible release out of the door, * All those people that make Debian what it is - the biggest and best distribution ever, * everyone that goes and fixes bugs in debian packages to keep the quality as high as possible, * all people that help people by answering questions on one of our mailinglists, on IRC or in web forums, * every upstream author that releases his software under a free license and happily works together with distribution maintainers to make their software the best it can be, * all those that help to organize DebConf, the yearly Debian Conference with all the time-consuming tasks that that includes, * the people that keep the infrastructure running that allows us to develop our own little gems, like the Debian Admins, SPI Admins, Alioth Admins, IRC Network Operators and anyone who provides and maintains machines for a free project out there, * those behind everyone I mentioned - the families. Who have to look for something else during the time people do all the mentioned work, * everyone who can resist feeding a flamewar, Did I forgot someone? I’m sure I did, so - start your own post and say thanks, without people spending a lot of their spare time you would not have such a great distribution to use and ease your life! Have a good new year and continue the good work!

Jordi Mallach: At the crossroad

Two Fridays ago, on the 15th of December, I finished my support contract with Canonical. Last Wednesday, or just 5 days after leaving Canonical, was my last day working for LliureX, the Valencian Debian-based educational distro which is being developed by the Conselleria de Cultura, Educaci i Esport. Definitely an intense week... In both cases, terminating the contract was my decision. I was working for Canonical for a small amount of hours per month, and I enjoyed doing it as it allowed me to work along with the great people who are developing Launchpad in a unique company like Canonical, but at some point my stress started to pile up and freeing time for myself seemed a good thing to do. I also had been working at LliureX for 2.5 years and I was starting to feel I had to move on, as the project has changed a bit since I joined it and because I think I need to see new things and explore new challenges. And the challenge is called ITI, a CS research institute in the Universitat Polit cnica de Val ncia, where I'll start working in a pair of weeks thanks to ex-lliurex co-worker Sergio. My main task will be sysadmin work, but the ITI gets many interesting contracts every few months, and I suspect I'll be working with Debian and Ubuntu at work very soon. The new job is pretty close to my house and the idea is that being in the University campus and having some more free time will allow me to retake a few activities like completing my studies, resuming some of my triathlon training (you've gotta see the awesome athletics ring and olympic swimming pool just 100 metres away from the institute!) and other stuff I have been neglecting for way too long. I leave behind quite a few friends and many good people, and getting used to the idea of not speaking or chatting to them on a daily basis isn't that easy. To compensate, I'm sure I'll meet lots of cool people next year. Bones festes!

Lars Wirzenius: Random hacks: Notetak

I always spend my Christmas with my parents, and for the past few years, I've always started some new little hobby hacking project or another. Three years ago I started writing a new text editor, sex.py. I still use it, although I haven't had much time to improve it further. This year, I wanted to see if I could come up with a little something to jot down random little notes easier, to keep track of said notes, and to help me manage a GTD workflow better. Last summer, I started dabbling with the "Getting Things Done" method by David Allen. It's basically a way of keeping track of things that you need to do. A bit more sophisticated than a simple todo list, without getting seriously bureaucratic or tedious. So far, whenever I follow the method, it seems to be working, although I'm not sure if it is because of using this particular method, or because I'm a method at all. GTD requires keeping a few lists of things: todo items that can be done now (assuming suitable context, but with no unfilled dependencies), todo items that might be done some day, etc. The tool I chose for this last summer is Gjots2. It's a GUI outliner tool that works adequately, but is not smooth enough to prevent me from looking at better tools. One of the things missing from Gjots2 is a good search facility. You can't do things like "show me all items containing the words 'Debian' and 'upload'", for example. Some time ago, while browsing 43Folders, I learned about a small application for MacOS X, called Notational Velocity. I don't have a Mac, so I can't try it out myself, but it works by keeping track of small text-only notes, each with a title, and has a user interface geared at searching. Instead of having a tree or a list of notes, it has a title bar where you enter some words, and it shows you a list of the notes that match those words. You can then either select something from the list, or press Enter to create a new note, with the text you entered as a title. This sounded intriguiging to me, and I thought it might be interesting to experiment with it for my note taking and GTD needs. So I spent one night at my parent's writing a first approximation of a prototype. I'm calling it Notetak.
Notetak screen shot Notetak, first prototype. The drop-down menu shows the notes that contain the word "notetak", in upper or lower case.
I've today switched from Gjots2 to Notetak, and it's already clear that it's a completely different approach to things. So far I like it, but I'll have to experiment with this for a few days or weeks to see if it really works. I'm pretty sure the basic approach would benefit from having additional tags for notes, or possibly having stored searches. I keep finding myself searching for, say, "@next" a lot to get a list of GTD next actions. The source (and a preliminary .deb) is on my home page, in case you're interested. Please note (ahem) that this is highly experimental and may eat your data. I may abandon it at any moment, if I decide that it's not worth it, but if not, it might also change frequently. If you do use it, I'd be happy to receive any bug reports, suggestions for improvements, and patches you may come up with.

26 December 2006

Enrico Zini: pcmanfm-nautilus

Replace nautilus with pcmanfm I'm sponsoring the upload of pcmanfm and I think it's a very interesting piece of software. There's a new upload coming, and I'd like it to have some instructions on how to replace nautilus with pcmanfm, and possibly how to go back to nautilus. Here's the best I found. Replacing nautilus with pcmanfm To have pcmanfm start instead of nautilus:
  1. Go to Desktop -> Preferences -> Session manager
  2. Go to the 'Current Session' tab
  3. There's an entry like 40 Restart nautilus --sm-config-prefix /nautilus-SoMeThInG/: remove it
  4. Go to the 'Startup Programs'
  5. Add an entry to run pcmanfm
Alternatively:
  1. Run gnome-session-remove nautilus
  2. Go to Desktop -> Preferences -> Session manager
  3. Go to the 'Startup Programs'
  4. Add an entry to run pcmanfm
To configure pcmanfm to draw the background:
  1. Run pcmanfm
  2. Go to Edit -> Preferences
  3. Go to the Desktop tab
  4. Enable "Show file icons on desktop"
  5. Customise wallpaper as you wish
Alternatively, I wrote a little script that will generate a ~/.pcmanfm/main configuration file from you taking some settings from gconf:
#!/bin/bash
# Generate a pcmanfm configuration file reading values from gconf
echo "# ~/.pcmanfm/main configuration file generated by $0"
echo
echo '[General]'
echo 'terminal=gnome-terminal'
echo
echo '[Desktop]'
echo 'showDesktop=1'
# Detect wallpaper setting
WALLPAPER= gconftool-2 --get /desktop/gnome/background/picture_filename 
if ! [ -z "$WALLPAPER" ]
then
    echo 'showWallpaper=1'
    echo "wallpaper=$WALLPAPER"
fi
# Detect color setting (doesn't really work: I could not find significant keys)
#COLOR= gconftool-2 --get /desktop/gnome/background/primary_color 
#if ! [ -z "$COLOR" ]
#then
#   R=$(( $(printf %d 0x$ COLOR:1:2 ) * 65536 / 256 ))
#   G=$(( $(printf %d 0x$ COLOR:3:2 ) * 65536 / 256 ))
#   B=$(( $(printf %d 0x$ COLOR:5:2 ) * 65536 / 256 ))
#   echo "Bg1=$R,$G,$B"
#fi
Getting nautilus again
  1. Kill pcmanfm
  2. Run nautilus: it will register itself with the session manager
Open questions Originally, I had nautilus registered in the session manager as something like nautilus --sm-config-prefix /nautilus-SoMeThInG/. After removing it and having it reregister itself, I have it only as nautilus. I have not been able to find out what is the difference. It would also be cool to have a little program that registers pcmanfm as a 'Restart' entry with priority 40, just like nautilus.

Andree Leidenfrost: Mondo Rescue Debian News

I've used the Christmas time to do some work on Mondo Rescue:

I've uploaded mindi-2.20-2 which fixes RC bug #403454 and important bug #404315. Luckily, I only had to apply patches provided by Matija & Bruno - thanks guys! I've asked for the new version to be allowed into Etch but haven't heard anything yet (maybe I should have waited a few days first or something?).

Also, I've packaged the new pre-release version of Mondo Rescue. You can grab it from here: http://people.debian.org/~andree/packages/. I would much appreciate feedback on how things are working on Etch. So, if you take them for a spin, please let me know how it went, good or bad! The upcoming new release fixes a substantial number of bugs and comes with some notable improvements, so it should definitely be worth checking out.

Finally, when doing some testing I came across a problem with the stock Debian 2.6.18 kernel when used on a Mondo Rescue recovery media. It sometimes already hangs while booting and sometimes starts the restore only to hang later during formatting or even later during restore. This seems to only happen on i386 whereas amd64 is fine. It may also be restricted to my hardware (although it hangs in Qemu as well). 2.6.17 is fine btw. If anyone has an idea what could be causing this, that would be great as I haven't got the foggiest at the moment (there is no message whatsoever, it just hangs).

Adam Rosi-Kessel: They Might Be Giants Are Marketing Geniuses

When They Might Be Giants started releasing kid’s albums back in 2002 with “No!”, I didn’t really understand why they had chosen to go in that direction. Two years later, though, I had a kid, and now I realize They are marketing geniuses.
(my kid)
They Might Be Giants made their mainstream debut in 1986. The oddball audience that really got it would have been between 13 and 25 years old at the time (as was I). Most of those folks now have settled down into stable jobs, disposable income (read: can afford to purchase music), and kids. For those of us worried about inculcating our children with an appropriately developed sense of irony to get them through the next century, TMBG is the perfect prescription. We can play our kids these new albums and rest assured that our kids will eventually appreciate Terry Gilliam, Ze Frank, John Belushi, and the like. And learn the alphabet (mp3) (ogg) while they’re at it:
F is far too fussy and only eats with fancy wine
G eats only gourmet but never can decide
H burns food so horrible
all I tastes is smoke
J just likes drinking juice
and K drinks only soda
(Please note the Cake tribute — which is interesting, since Cake was undoubtedly influence by TMBG.) (If you don’t get the joke, it’s “soda.”) The target audience, of course, is still “us” — those of us over 30, who are more likely to actually purchase music rather than copy it. It’s an interesting reversal of the more typical marketing plan which involves getting kids to nag their parents to buy things. It thus makes a lot of sense that TMBG is selling tracks direct online from their website in unencumbered formats — $9.99/album in MP3 format, or $11.99/album as FLAC files. An extra two bucks for lossless audio? Of course I’ll buy that! You should too.

25 December 2006

Christian Perrier: 100%

If, by some sort of Christmas miracle, all pending debconf translation bugs get fixed in one day, French debconf translations would reach 100% completeness (the real status is 96.16% today). The Czech team reached this briefly in the past and it's a pretty long time since we're hunting that moving target. Thanks to the release process, package maintainers have stopped changing their debconf templates daily and, with the incredible work of Thomas Huriaux, we've been able to reach that Nirvana.

Andreas Schuldei: Morbid interruptions to christmas

We had a short morbid (and funny) interruption to the usual general marry mood when we started to search for "darwin awards" on youtube. And then we read a christmas poem (german). Have fun!

Erich Schubert: On memory protection

Merry Christmas! I'm catching up with some RSS feeds, including the Linux Weekly News (LWN). This is a high-quality news site for Linux, and being issued just weekly is a nice feature for all those suffering from information overload. They had an interesting article some weeks ago on Virtual Machines and Memory Protection. If you are interested in system and application security, this is an interesting read. SELinux has permissions called "execmem" and "execstack". Basically these allow applications to map some memory executeable, or execute their own stack. Back in the assembler days, some techniques relied on this, but it has lately become frowned upon: most buffer overflow and other attacks used by viruses and worms relied on an executable stack or memory. Recently, Intel and AMD added support for "non-executable" bits for memory maps, i.e. hardware support to enforce these permissions; this was sold as an achievement in application security. Though this is mostly true - tons of attacks rely on this permission - it's not that easy. Modern programming languages such as Java and C# rely on so called Just-In-Time compilation for fast execution. (And future version of perl and python will probably do that, too.) And JIT requires executable memory, because it basically compiles the VMs bytecode into (optimized) machine code, and executes it. Now you could say: okay, let's just grant mono and java the execmem permission; (which is also what SELinux does) - and this will probably be okay unless there is some grave error in the mono or java runtime. Or any other native library they use. And this is where the problems start: both Mono and Java rely to a certain extend on native libraries. For example the GTK libraries for the UI. Mono applications can also use gstreamer, gnome-vfs, zlib, libpng, libjpeg, ... That means, security issues in these libraries that need execmem and would not work on native applications can suddenly be exploitable in mono and java apps. Since we can't do without execmem for Java and Mono: the executable bit for memory does add some extra layers, but doesn't give you full protection from this kind of attacks, sorry. No magic "my computer is no longer hackable because I have the NX bit".
With an NX Bit capable operating system such as Windows XP SP2, harmful viruses are stopped before it can cause any damage to the system.
... unless you're using .NET or Java applications.

Erich Schubert: On memory protection

Merry Christmas! I'm catching up with some RSS feeds, including the Linux Weekly News (LWN). This is a high-quality news site for Linux, and being issued just weekly is a nice feature for all those suffering from information overload. They had an interesting article some weeks ago on Virtual Machines and Memory Protection. If you are interested in system and application security, this is an interesting read. SELinux has permissions called "execmem" and "execstack". Basically these allow applications to map some memory executeable, or execute their own stack. Back in the assembler days, some techniques relied on this, but it has lately become frowned upon: most buffer overflow and other attacks used by viruses and worms relied on an executable stack or memory. Recently, Intel and AMD added support for "non-executable" bits for memory maps, i.e. hardware support to enforce these permissions; this was sold as an achievement in application security. Though this is mostly true - tons of attacks rely on this permission - it's not that easy. Modern programming languages such as Java and C# rely on so called Just-In-Time compilation for fast execution. (And future version of perl and python will probably do that, too.) And JIT requires executable memory, because it basically compiles the VMs bytecode into (optimized) machine code, and executes it. Now you could say: okay, let's just grant mono and java the execmem permission; (which is also what SELinux does) - and this will probably be okay unless there is some grave error in the mono or java runtime. Or any other native library they use. And this is where the problems start: both Mono and Java rely to a certain extend on native libraries. For example the GTK libraries for the UI. Mono applications can also use gstreamer, gnome-vfs, zlib, libpng, libjpeg, ... That means, security issues in these libraries that need execmem and would not work on native applications can suddenly be exploitable in mono and java apps. Since we can't do without execmem for Java and Mono: the executable bit for memory does add some extra layers, but doesn't give you full protection from this kind of attacks, sorry. No magic "my computer is no longer hackable because I have the NX bit".
With an NX Bit capable operating system such as Windows XP SP2, harmful viruses are stopped before it can cause any damage to the system.
... unless you're using .NET or Java applications.

24 December 2006

Uwe Hermann: Donations for a good cause

You still got some money left after buying all those Christmas presents? How about donating some of it for a good cause:
Wikipedia is entering 2007 as one of the 10 most visited websites in the world. That's a great proof of our success. However, with this success comes a new set of challenges and responsibilities. As we plan for the future of Wikipedia and all of the Wikimedia projects, our two most important goals now are the reliability of our content and the long-term sustainability of every project in which we are involved. To meet these goals we have a lot of work to do, so I am asking for your help. In the coming year, the Wikimedia Foundation anticipates dramatically increasing spending to keep up with server and traffic capacity demands, add new staff on the organizational level, improve our software and develop methods to better ensure high quality content, all while making progress toward our goal of giving free knowledge to everyone.
-- Florence Devouard, Chair of the Wikimedia Foundation
  • Creative Commons
  • It's once again time to show your support for Creative Commons. Digital technologies are connecting people in ways that were never before possible but that network is fragile. Creative Commons needs your support to help enable a participatory culture a culture in which everyone can actively engage in the creativity that surrounds us. We need your support to assure access to cultural, scientific, and educational content that has been pre-cleared for use by its authors.
  • Free Software Foundation (FSF)
  • Freedom is more precious than anything else we have and we need to protect it while we still can.
    -- Eben Moglen in his FSF year end video appeal (OGG, 24 MB)
  • Electronic Frontier Foundation (EFF)
  • EFF is a nonprofit group of passionate people lawyers, technologists, volunteers, and visionaries working to protect your digital rights.
  • Tor: anonymity online
  • Tor is a toolset for a wide range of organizations and people that want to improve their safety and security on the Internet. Using Tor can help you anonymize web browsing and publishing, instant messaging, IRC, SSH, and other applications that use the TCP protocol. Tor also provides a platform on which software developers can build new applications with built-in anonymity, safety, and privacy features.
    Or how about some organizations not directly related to Free Culture or Free Software?
    Amnesty International (AI) is a worldwide movement of people who campaign for internationally recognized human rights. AI s vision is of a world in which every person enjoys all of the human rights enshrined in the Universal Declaration of Human Rights and other international human rights standards.
  • Red Cross
  • The International Red Cross (and Red Crescent Movement) is an international humanitarian movement whose stated mission is to protect human life and health, to ensure respect for the human being, and to prevent and alleviate human suffering, without any discrimination based on nationality, race, religious beliefs, class or political opinions.

    Lars Wirzenius: Anecdotes: Finnish as an encryption method

    Watching my sister's Welsh boyfriend slowly learn Finnish, I'm reminded of the fact that the language is often considered difficult. At any rate, it is spoken by a very small percentage of the world's population. Some Finns therefore think they can safely use it abroad to talk about anything, even if it is embarrassing or sensitive. I've found that not to be true. There's other Finns everywhere. There's always someone who will hear and understand if you say something not meant for outsiders. A couple of anecdotes might prove this. In 1990, I was abroad for the first time, in Eindhoven, the Netherlands, for an ACM programming competition. I and a team mate spent one evening in a local bar, talking with each other. After a while we were interrupted by a Finnish woman who lives in Eindhoven. Luckily, we hadn't said anything too bad, she just recognized fellow Finns and wanted to say hi. In 1999, I was in London for a conference, and had a bit of free time, which I spent walking on Oxford Street. At some point, I was walking behind two young men, in their early twenties. They were speaking fairly loudly, commenting on the physiological features of the woman walking in front of them. The woman eventually stopped, turned around, and started swearing at them. Loudly. In Finnish. My theory is that Finns are slowly taking over the world by spying on each other abroad. That's why there's always at least two Finns anywhere.

    David Moreno Garza: My ten wishes for 2007

    These are my ten wishes for 2007. Since Santa didn’t arrive in this part of the world, I think I’m asking this to the Three Wise Men (in spite of they were brought here by the Spanish catolicism, but hey):
    1. Dignity, land and respect to the Mexican indigenous groups.
    2. Return and good health for Commander in Chief, Fidel Castro.
    3. Strongest antineoliberalism in the Latin American region.
    4. Right wing oppression brought down in Bolivia.
    5. Good year socially, economically and politically to Nicaragua with its new hope.
    6. An even better year in Cuban trades; they were the best growing economy in Latin America by exporting to South America and China.
    7. Stop to the free trade agreement and military bases with the US in Ecuador.
    8. Peaceful solution to the Colombia-Ecuador border conflict.
    9. Democracy established in some of those countries where it’s more needed, like Central America.
    10. More social successful programs in Venezuela.
    And my bonus one:

    Russell Coker: MythTV

    I've just been trying to set up a MythTV system, I've had the hardware for this for a while but until my TV broke I hadn't found the time to work on it.

    My planned hardware was a P3 system for both frontend and backend. However the Debian MythTV packages take over 250M of memory for each of the frontend and backend programs (more than 500M for Myth programs alone), combine that with some memory use for MySQL, for the X server, and for the rest of a functional Linux system and a machine with 512M of RAM does not perform well. Unfortunately it seems that most (if not all) desktop P3 systems only support 512M of RAM (at least none of my collection of P3 machines does). P3 server systems support considerably more RAM (I used to have a SMP P3 server with 1G of RAM), but a server class machine is not what you want in your lounge room. P4 systems support more RAM but also take more than twice the electricity of P3 systems. The extra electricity use is a waste for a machine that will probably run 24*7, and also requires extra cooling (and therefore probably louder fans which is bad for a machine used for playing audio). Given that I desire the capabilities of a P4 in terms of RAM support and electricity use that is not excessive, my options are one of the recent Intel Core CPUs or AMD64 (both of which apparently use less electricity - not sure whether they would use as little as a P3) or a CPU designed for low power use (maybe a Via). Either option costs more than I prefer to spend (I want to use a second-hand machine valued at $129).

    Of course if I could get Myth to use less memory then that would allow me to run both parts of MythTV on the one machine. Please offer any advice you can think of in regard to minimising memory use for Myth on Debian.

    Given that I am unlikely to be able to optimise memory use as much as I desire it seems that I will have to go to a split model and try using an existing Pentium-D server machine as the backend and the P3 as a frontend. The up-side of this is that I can turn off the frontend machine when it's not being used (the server runs 24*7 anyway). I will need to get more RAM for the Pentium-D machine, but I had wanted to do that anyway.

    The next thing I will have to do is to write SE Linux policy for MythTV and find out why /usr/lib/libmp3lame.so.0.0.0 needs both execmod and execstack (and either fix the library or write policy to permit that accss). I'm happy to have a MythTV server program running on a stand-alone machine with unrestricted access to all resources, but when it's going to run on a machine that is more important to me I need to lock it down.

    Now to the design of MythTV. It's unfortunate that they don't support better multitasking options. One feature I would like to see is the ability to play MP3s in the background and then have the music pause whenever TV is selected. When I watch a live show (such as the news) I would like to listen to MP3s before it starts and then at the end of the show (and maybe during commercial breaks) have the MP3 playing resume where it left off. This is exactly the traditional lounge-room functionality we are all used to, when a commercial starts you mute the TV and un-pause the CD player! The advantage of MythTV is that you could do both with a single button - or even automatically with advert recognition!

    The method of selecting MP3 files to play is also a little cumbersome and the option to add a song after the current one in the play list doesn't seem to work. Also it's a pity that there is no convenient option to sort the music list by artist, genre, or sone name - there are grouping options but they are all separate and I would like to change the sorting via a single key press.

    The startup sequence of MythTV regenerates some images (which takes a few seconds), it seems that this is something that could be cached for a faster startup. Also when I add new MP3 files to the store I have to manually request a re-scan. It's a pity that it can't just check the size and time-stamp of the directories which contain MP3 files and do an automatic re-scan if they change.

    Julien Blache: pommed v1.0

    mbpeventd has just got a new name for Christmas, and it’s now called pommed :-) I went toward a more generic name as we’re adding support for the PowerBook too (plus it’s a semi-private joke for Yves-Alexis and me). This should, by the way, make it in the next release or the one after the next. New features: gpomme is a GTK+ client suitable for all environments; you should start it when your session starts.
    wmpomme is a WindowMaker dockapp, as the name shows. The next version will feature set methods in the DBus interface, and PowerBook support if it’s ready by then. Due to the name change and new packages, the package is in NEW. You can grab it on http://people.debian.org/~jblache/pkg/pommed in the meantime. This release means the mbpeventd-dbus branch is closed :-) Merry Christmas to you all.

    David Welton: Apples, Oranges, and Culture

    Apples and Oranges A number of people wrote irate comments after my article about Ruby's eBay API beating PHP hands down. They complained that I was comparing apples to oranges, because the Ruby library I was using was nicely crafted, whereas the PHP one was some crufty crud that just happened to be one of the first things you find when you go to developer.ebay.com. First things first, let's look at some better PHP code:
    require_once 'EbatNs/EbatNs_ServiceProxy.php';
    require_once 'EbatNs/EbatNs_Logger.php';
    require_once 'EbatNs/GetItemRequestType.php';
    require_once 'EbatNs/ItemType.php';
    $session = new EbatNs_Session('config/amd.ebay.config.php');
    $cs = new EbatNs_ServiceProxy($session);
    $cs->setHandler('ItemType', 'handleItem');
    $req = new GetItemRequestType();
    $req->setItemID(5652664344);
    $req->setDetailLevel($Facet_DetailLevelCodeType->ReturnAll);
    $res = $cs->GetItem($req);
    echo "<pre>";
    if ($res->getAck() != $Facet_AckCodeType->Success)  
    echo "we got a failure<br>";
    foreach ($res->getErrors() as $error)
     
        echo "#" . $error->getErrorCode() . " " .
        htmlentities($error->getShortMessage()) . "/" .
        htmlentities($error->getLongMessage()) . "<br>";
     
      else  
    //#type $item ItemType
    $item = $res->getItem();
    echo "ShippingTerms : " . $item->getShippingTerms() . "<br>";
    print_r($item);
     
    
    versus our Ruby code:
    require 'rubygems'
    require 'ebay'
    include Ebay
    include Ebay::Types
    require 'localconfig'
    ebay = Ebay::Api.new
    begin
      response = ebay.get_item(:item_id => '110011765264')
      puts "ShippingTerms : # response.items.shipping_terms "
    rescue Ebay::RequestError => e
      e.errors.each do  error 
        puts error.long_message
      end
    end
    
    So, they get closer with that, but the Ruby code is still clearer and more concise. If you look around at some PHP5 based examples, they start to be decent as well. As one tutorial writes:
    These components combine to create a kick-ass tool that PHP 4 can't replicate without lots of work, if at all.
    Leaving aside the fact that a lot of people are still more or less stuck on 4, I think there is something more important to be learned. Culture There are a lot of really smart people who work with, and on PHP. As much as anyone grumbles about any language, it's not easy to create one, let alone create one and make it as popular as PHP. However, as I've said elsewhere, one of the things that made PHP so successful was its ability to "scale down". Part of its value is that it made it much easier for more people with less advanced skills to create things. That is, without doubt, a very fine accomplishment, but it does bring some baggage with it. Namely, that there are a great deal of PHP programmers who do not write very nice looking code. Going back to the eBay example, the code featured on their site is not very tasteful, if you ask me. My bet is that in Ruby-land, that sort of code would not be displayed very prominently. Why? It's not the computer, it's the culture that has grown up around the different languages. Computers do not care one bit about programming languages. They interpret bits and bytes, whatever language is used, so it's really all the same to them. Programming languages matter only to people, because they are the tool we use to comunicate our instructions to machines. This means that they are a very human thing in some ways, and that human aspects of them matter a great deal. What this means is that it's important not only to design a cool language, but to create a good culture around it. To take aim at something nearer and dearer to me than PHP, one of the major failings of the Tk toolkit was that there was little to no attempt to create a good design culture around it. Anyone who was using Linux 10 years ago will surely remember some of the truly horrible things that were created with Tk. Why? Tcl and Tk made creating a GUI an order of magnitude easier than with C and Motif (or whatever windows used at the time), and turned them loose with no instructions or idea whatsoever of how to go about creating a good, intuitive user friendly one - the Tk docs themselves make little to no mention of usability, and even the best Tcl/Tk books pay almost no attention, even in the form of recommended reading, to what to make with this beautiful tool whose hows are explained very well. The unixy community also wasn't exactly a wellspring of creativity and critique in terms of good guis, either. So, yes, I know that it's possible to write good, clever, readable PHP (or Perl, or FORTRAN) code, and bad Ruby (or Tcl, or Python, or whatever) code. However, I'm also convinced that culture counts. People who value clean, beautiful code gravitate to cultures, and, where possible, workplaces where they find other like-minded people. Others, not having as many options, find themselves staring at 13000-line PHP files that grow malignantly by dint of cut and paste, wondering how to tame that which others have wrought!

    Steve Kemp: I m going to give it all of my loving, its going to take up all of my time

    New computer is working in a nice stable fashion although with no working USB for no reason that I can fathom. (Plug in a device and nothing happens. No kernel messages, etc) I will document this properly a little later, and update the map to match. All told the new machine is: The graphics give me 1280×1024 which is as much as I can handle on my 17″ TFT display, and didn’t require any non-free drivers. I wandered into a couple of local stores and said “I’m looking to buy a graphics card, what do you have in the PCI express flavour?”. The answers ranged from: So whilst I wanted to get an NVIdia card since they traditionally have had drivers which work for me I was happy to get the cheaper one and hope for the best. As it turns out I’m using xserver-xorg-video-ati with no problems and playing DVDs over NFS works without any visible lagging/artifacts/errors. The system has 512Mb to itself, and the rest set aside for Xen guests. Right now I have six instances of Sarge running with 64Mb each. Things are nice and snappy :) (Since debootstrap failed on the 64 bit install of Sarge I had to download pre-made Sarge images, but still a painless process.) Talking of Xen I found a weird problem where when starting up a new Xen guest the host would lose networking. I think this is an artifact of the NVidia 4 chipset - but adding irqpoll to the boot flag(s) seems to have fixed it. OK enough about my new toy(s). Happy Holidays (No complaints about my new cheesy Christmas Logo yet. Result!)

    Next.

    Previous.