Search Results: "ron"

2 August 2006

Simon Law: Hacker bike ride


Tall bike
Originally uploaded by sfllaw.
What do you do with a sunny, summery Sunday in Ottawa? Biking and barbequing, of course. It's traditional to hold the Hacker Bike Ride right after the Ottawa Linux Symposium. The local cycling enthusiasts are, by and large, also pretty geeky so many of them join in on this event. We gathered in the park across from the conference centre. People were milling about, so I had time to rent a bicycle, and soon we were off. This year, I chose to take the long route with everyone else. Richard, on his tall bike, led the way through the streets of Ottawa and on to the bike paths. We went over some very scenic hills, had two people fall off their bikes, and enjoyed ourselves immensely.

OCLUG
Originally uploaded by sfllaw.
I spent a lot of time riding quite dangerously, with camera in hand. The most challenging pictures were those taken over the shoulder, as I had to do that blind. A couple of them seemed to turn out. In the process of photographing things, I managed to get my wheels stuck in a rut. It sounded like someone falling over, which caused a few people to look around, but I managed to stay in control. This surprised me, as I haven't ridden a bike in about a year. We finished one leg of our ride in Vincent Massey Park, where the local LUG was holding their annual picnic. I grabbed a hamburger, sat down on a blanket, and inhaled it. There's nothing like hot food after a good bike ride. After lunch, we did a bit of exploring. That's how we found a cicada hiding under a picnic table. Then [info]ostraya did nothing to prevent the penguin from viciously attacking me.

Terri blows bubbles
Originally uploaded by sfllaw.
There were more silly antics, including penguins on heads and bubble-blowing. But then it was time to pack up and leave. We helped the organizers stow the picnic things away before riding off to Hogs Back Falls. I climbed around on the slick rocks while other people ate their ice cream. We crossed the bridge and then we rode alongside the canal on our way back. This allowed me to see the canoe innovation of brilliance. A canoe with a hitch up front and bicycle wheels mounted on back. I waved to these people and told them they were geniuses. I think they might have thought me a tad weird. By the time we reached the park, it was starting to get late. I returned my bike and said goodbye to people, which was good because I had postcards to send. There's nothing like sending postcards hours before you leave a city.

Aigars Mahinovs: Dell Inpiron XPS M1710

Well, now I am a proud owner of a one of the most powerful laptops available under two grand. Core Duo 2.0 Ghz, 2 Gb RAM, 120 Gb HDD, 1900×1200 17″ screen and NVidia 7900 GS. I am just loving it. It did come with Windows and lots of ther crap which I removed right away. I did reinstall Windows (XP Media Center) to see how it works (it’s been a long time :P ) and for some gaming (HL2: Episode One in particular, it’s been a long time :P ). I also installed Ubuntu Dapper as the primary workspace (as something stable, quick to set up and boringly non-experimental). Debian as the development platform and primary experimentation base and one more 5 Gb partition stayed free so that I can try out other stuff (like Gentoo) when I feel like it.
I must say that installing Ubuntu, Debian and Windows in quick succession was a very, very interesting experience. I am considering repeating that and writing down everything with plenty of unusual screenshots to trully compare the experience. I must say that Ubuntu fared the best with Debian following in a very close second (mostly due to minor laptop problems on installation) and Windows being waaay behind on usability and installlability with all kinds of wierdness.

Evan Prodromou: 15 Thermidor CCXIV

I'm at the Wikimania hacking days today. We drove down from wt:Montreal through wt:Vermont and wt:New Hampshire on Monday, stopping overnight in the beautiful town of wt:Lincoln (New Hampshire) in the White Mountains. Amita June had a crappy ride on Monday -- she was unhappy and uncomfortable and let us know it at every possible opportunity. We stopped in wt:Saint Johnsbury, VT for dinner, and she got some time to walk around and play, but beside that she was crabby. Tuesday morning was much better -- she had a big bagel from the Comfort Inn's breakfast buffet, and her Sleepy Bear teddy bear, and she was happy. Sleepy Bear is winning the war for hearts and minds in our house -- it's the bear that she's starting to sleep with more and more, and she makes a happy squeal when she sees it. This could be good or bad news. Anyways, we made it down to wt:Cambridge (Massachusetts) aaaalmost in time for the beginning of Hacking Days. HD is the technical pre-conference for the more sociological and content-oriented Wikimania. I thought it was going to be mostly MW committers and Wikimedia sysadmins, but it's turned out to be huge. I think there are about 40-50 people here -- a just gigantic group. Anyways, I was sitting in the One Laptop Per Child office meeting room with about 30 hackers yesterday morning. I was about 20 minutes late, but I managed to find a seat anyways. Everyone was giving introductions, and up stand David Recordon, Jonathan Daugherty, and David Strauss, all of whom say they're there to help me with the OpenID MediaWiki extension. As everyone's talking, I realize wp:Ward Cunningham is sitting right in front of me. The guy sitting next to me stands up to introduce himself, and says, "I'm Dan Bricklin, who many of you may know as the inventor of the spreadsheet..." Jeez. Anyways, the talk has been fast and furious. Yesterday was a long discussion about the state of Wikimedia servers, the upshot of which, for me, was: Holy Shit, Wikimedia is a big project. I managed to talk to a ton of people, including Travis Derouin of wikiHow, Jason from Wikia, all the OpenID folks, etc. etc. Jonathan Daugherty and I actually got some hacking done, which was great. tags:

The future of MediaWiki This morning Brion Vibber and Tim Starling gave a discussion about the future of MediaWiki. The story? More cool features, I think. The OpenID will be part of it; incorporating a WYSIWYG editor like WikiWyg or FCKEditor into the software. Also, more [[wp:AJAX]-y features, which are coming up through the codebase right now. I think in a large way MW's future is going to be outside of Wikipedia proper. Some of the cooler developments using the MW as a platform include WiktionaryZ and Semantic MediaWiki, both of which provide a structured data substrate to wiki pages. They're not compatible, which I think is something that needs to happen at some point in the future, but they're very promising for future projects. Another big class of projects is bots -- like PyWikipediabot or some of the "vandal fighting" bots and interfaces, e.g. Tawkerbot. I think that MediaWiki is drifting from being a monolithic browser app more into a Web-based service, which will be really productive from a content-production and -maintenance point of view, but which is extremely challenging from the social point of view. Finally, I think the great explosion in the world of customized MW extensions and skins is meaning a real marketplace for expanding the software is happening. I think this is pretty fabu, also. Some people have been discussing formalizing this ecology into a CPAN or JabberStudio-style site for hosting and organizing MW extensions. We'll see what happens with that, but if it comes around, I hope that it's named $wgForge. Maj and Amita June are running around Boston today... very slowly and carefully. They've got a brutal heat wave on here, and people are fainting and collapsing like wilting flowers. I think they're going to go places that have air conditioning, like museums and so forth. tags:

Isaac Clerencia: Debconf6

After a bunch of trains, subways, planes, buses and taxis I’ve finally arrived at Oaxtepec (Mexico) to attend DebConf6, the annual Debian conference. Besides doing some Debian work, having some fun with long-time-no-seen friends and enjoying the swimming pool, there are several interesting talks I’m interested on: Time for lunch here!

Wouter Verhelst: Interesting things to do with an electronic ID card and a cardreader

So, now that I finally feel that belpic in Debian is in working order (in unstable), let's talk about the interesting things one can do with it. You have an eID, run Debian, just bought yourself a cardreader, and feel "now what"? This is the blog post for you ;-) Note that there are still some rough edges; but I still have time to fix those before etch releases, so that's not much of an issue. First, you need some support packages. If you bought a cardreader from Zetes or got one from the Government somehow, then you have an ACR38 reader and you need a hardware support package to be able to use it; the package in question is called libacr38u. Obviously you will also need the belpic packages. For now, just install all of them—there still appears to be a dependency issue which I will need to fix; I'll announce on this blog when that has been done. Just run
aptitude install $(apt-cache showsrc belpic sed -e '/^Binary/!d;s/^Binary: //;s/,//g')
and you will install them. I uploaded these packages to backports.org, too, where they'll hopefully show up some time soon (the current packages are still at 2.3.13 for some weird reason). This will give you:
beidgui
a graphical application that will allow you to view the data on the card, and to change your PIN code (as long as you still know your current PIN code and don't need to unblock it with the PUK; for the latter, you need to go to your local town or city or district hall).
beid-pkcs11-tool
a command-line tool that will allow you to change your pin and do some other interesting things. Note that while this is a command-line tool, you still need a GUI environment to be able to run it; there are cases where the libbeidlibopensc2 library will open a dialog window to ask you for your pin, without going through the application.
beid-tool
a command-line tool with not much options; it doesn't allow for much more than to test whether your installation works.
beidcrld
a daemon that will update the CRLs (Certificate Revocation Lists) when there is a network connection, so that you can verify the validity of the card in your reader. If you have a permanent Internet connection, there is also OCSP (Online Certificate something Protocol) which will verify the validity of your certificates against an online server, and which the preferred way to do this. Future versions of the belpic packages will have a /etc/default/beid which will allow you to disable beidcrld.
beidpcscd
a daemon that is used if you need libpcsclite to talk to your cardreader. If you have an ACR38 cardreader, you need this. I personally have a different one, which uses openct, so I don't...
a whole bunch of libraries
However, only three are really interesting: libbeidlibopensc2, for low-level operations on the card (such as "read a file", "sign some data"; libbeid2, for high-level operations on the card (such as "read identity data", "read a picture"), and libbeidlibjni (JNI library, if you want to use the eID from Java). Libbeidlibopensc2 and libbeid2 are packaged separately; libbeidlibjni is packaged together with libbeid2 (though that might change in the future, not sure).
Some files to support mozilla, firefox, and other browsers.
The most interesting ones from a user point of view are /usr/share/beid/beid-pkcs11-register.html and /usr/share/beid/beid-pkcs11-unregister.html. Note that registering the module isn't enough to be able to use it; you will have to perform some additional steps which are outlined on eid.belgium.be, the government website about the eID.
Additionally, there is also OpenSC which you may want to install. The point there is that things like OpenSC's pkcs15-tool and pkcs15-crypt do not have a counterpart in the eID toolkit, so if you want that, you need to install it. So, that's the software in the eID toolkit. But what can you do with it? There are a number of things. For starters, of course, there's the beidgui, which allows you to view, save, print out, and do other interesting things with data on a card. If you work on a place where you regularly need to work with eID data, this may just be the appliation for you. If you have set up your browser to support the eID, you may want to go to mijndossier.rrn.fgov.be, a website set up so that everyone can view their own information in the Rijksregister. I'm sure there is a French version of that URL, but don't ask me—I don't know it. You probably already know about tax-on-web, where you can do your tax application online. It is possible to install a signing module into Mozilla Thunderbird, and to sign your emails using S/MIME and the eID card. This will give you a signed email which is legally binding; might be interesting for those of you out there interested in not having to use as much paper signatures. Details, again, on eid.belgium.be. The same is true for signing documents in OpenOffice.org. I haven't tried doing any of this myself yet, though. Of course, you can sign any text file as well, using pkcs15-crypt from OpenSC, or extract the certificates on the card using pkcs15-tool. Just run them with the --help parameter to find out about their options. And that's about it, I guess. More interesting links can be found on a a portal maintained by Danny 'godot' Decock on the eID.

1 August 2006

Gunnar Wolf: Israeli mistakes

Reading Jordi's blog, I cannot but agree with him (in most points): I plainly cannot understand Israel's actions in the last weeks. I can sadly understand how some people defend them, specially people not living in Israel - I was talking with a friend today, a friend who does not share a single political viewpoint with me, but still... The world seems to be completely polarized. Some have the impression that Israelis live under constant shelling, that life is unsustainable in that poor country, the last corner of civilization in that mess called the Middle East, and that the Arab countries (which are huge and petroleum-rich) just want to throw Jews to the sea or worse. The rest of the world think that Israelis are mass-murderers who decided to take a heavily populated bit of land and martyrize its originary population by any possible means, establishing an Apartheid.
Both views are false. But of course, both views hold their bits of truth.
I cannot claim to be neutral on this: Although I lived there in total for ~18 months, I am an Israeli by choice (I adopted the Israeli nationality in 1996 and wanted to live my life there - I came back to Mexico for personal reasons, and I later decided to stay here). I have not been to Israel since then - But I try to keep myself informed. And, living in a Jewish family, it's hard not to be somewhat informed - and of course, shocked at your relatives' opinions. Jews outside Israel tend to be right-wingers. I lived in a kibbutz, and I still sympathyze with Meretz, the most leftwing Zionist party.
I won't restate what Jordi eloquently said. I know not everybody who reads my blog reads Jordi's as well - Please do. If you missed it some lines above, here is the link. I insist: I agree with most of what he wrote. What could Israel do to protect itself from its enemies? The answer is simple: Don't give them a reason to hate you.
One year ago, I was optimistic because Israel was heading the right way. Of all people, Ariel Sharon (one of Israel's most hawkish, right-wing strongmen of all times) decided to withdraw from Gaza, and hinted that areas in the West Bank would follow. No, not the best way possible, not as his predecessor Menahem Begin did with Egypt leading to a strong and long lasting peace, and certainly not in the very notable way Itzhak Rabin did with Jordan, getting peace and even friendship. But at least, Sharon accepted the reality, and seemed he meant to let Palestinians build their state. When he organized a new party which reduced Likud to a shadow of its past, one of Israel's most prominent figures for the peace camp, Shimon Peres, joined. Amazing.
But still, there is too much hatred. Of course, life in Gaza is plainly not sustainable. You can walk the Gaza strip side to side in less than one hour, and North to South it's less than 50 Km long. Still, over 400,000 people live in there. The area is simply unsustainable.
Gaza depends for everything from Israel. Of course, according to the never-stable security status, the border between Gaza and Israel opens or closes every day. When I lived in Zikim, mostly every day there were five or six Arabs working with us... Except for the days when they weren't there. And, of course, Israel also depends on the Arabs for much of its hard labor jobs (as it's always the case when two economically disparate populations live together).
Anyway, back on track: Besides giving the Arabs their slice of land (which in a squeezed area as Israel is always hard; people have fought for such small spaces it's hard to believe), the only thing Israel can do is help them. It has worked before: Israeli Arabs (the Arabs living inside the internationally recognized borders of Israel) are full citizens. Yes, there is racism in the country towards them, and yes, they are not really equal with Jewish Israelis - But they have voting rights, they have the right to be elected, they can optionally join the army (it's not compulsory as it is with the Jewish population), and they get government aid. Arab towns are poorer than Jewish towns, yes, but they have their dignity.
The problem in Gaza and South Lebanon (somewhat less so in the West Bank, but also) is that it's plainly all made up of refugee camps. Refugees that were born there, and whose parents were born there as well. And, let me emphasize this, they are not Israel's fault. The refugees fled the newborn Israel because the Arab states said (in May 1948) they would enter Palestine and butcher everybody, inviting Arab civilians to flee and then get back home - of course, 700,000 (out of 1,300,000 who lived in Palestine by then) Arabs did so. And when the Arabs lost the war, the Palestinians were denied citizenship by all the Arab countries except for Jordan (not surprisingly, the most stable of them all, and with which Israel has the closest relation). They were given refugee camps to live, one over the other. When Egypt signed the peace with Israel, it demanded back every inch of the Sinai - But not an inch of Gaza. And not a single Palestinian refugee.
I agree here with Jordi as well: There is a huge military operation in Gaza, but it's more spectacular in Lebanon today. The media talks about Lebanon, but not about Gaza. And the crisis in Gaza is not easier. But how can it be solved in a permanent way? Israel does neither have land to spare to give to the Palestinians - and even if it did, most of Gaza is surrounded by the Negev, a desert where it would not be easy for them to get anything better than what they have inside Gaza. As desirable as it would be to have a completely independent Palestinian state, Gaza would just remain a concentration camp. There is too much hatred, and neither Arabs nor Israelis want to keep working together, not trusting each other. The only solution I can find to this is to have an agreement with Egypt, where Egypt opens its border with Gaza, gives either nationality or work permits to Gazan Palestinians, and Israel injects capital to develop Northern Sinai, to give some hope of survival to the almost half million people.
The same in Lebanon: Israel was widely applauded to withdraw from South Lebanon in 2000. The area is mostly peaceful - For $ DEITY 's sake, what is the kidnapping of two soldiers in a six year period compared to soldiers being killed in the occupation army every week or two? Israel did well to leave Lebanon. Lebanon was starting an incredible national rebuilding process, as Robert Fisk tells us (Spanish only. I could find only the first paragraphs of the original English version, which appears to require subscription) of the wonders of the rebuilding process, reduced to rubble again. Of course, Israeli and Syrian armies left Lebanon. The Lebanese government and army are plainly too weak to care for the country. Hezbollah (which, indoubtely, is a terrorist entity, no matter how many benefical aspects it does have) have poured tremendous amounts of money to rebuild its area of influence, South Lebanon. Of course, they rebuilt, healed and educated with a strong ideological inclination, and that's not good for Israel. What can Israel do to leasen the Islamist influence? Simple: Send aid. Don't just leave. Don't leave a void, don't invite bad people to loot, don't invite extremist people to recruite future bombers. Turn occupation into aid. Build hospitals. Build houses. Give money, give infrastructure. Do it behind your back, as you gave money to the South Lebanon Army for almost 20 years. But make the people see you don't want to kill and rob them - Make the Lebanese Arabs feel their neighbour as a friend, although different. Bring back the good border. What's that? That's the nickname for the Lebanese border between +- 1950 and 1970 - The only border that was stable, that was not filled with hatred, where Israeli doctors treated Lebanese patients across the fence. And still today, the border is just a simple fence.
How can you convince a people of not killing themselves to kill the invasor? Don't act as an invasor. Act in all your best self-interest - Save them from poverty and from indignity.

31 July 2006

Jordi Mallach: Qana, Lebanon

I've been watching the Lebanese bloodshed since it started. It really makes me sick. I have discussed this with many friends. There was little discussion though: we all thought this is a plain war against civilian targets. I tried discussing with people who could maybe be more supportive of the Israeli points of view. I tried talking to some of my right-winger relatives... and I haven't been able to find anyone that can say a word of support of what Israel is doing in Lebanon. In three weeks, I have seen how Hizbullah killed some Israeli soldiers in some area around the border between Lebanon and Israel. As far as my (as an international online paper reader) judgement can tell, the location where this happened is disputed. Some say it was inside Lebanese territory, the others say it was an Hizbullah incursion into Israeli soldiers. I really don't care. The immediate result of this action was a campaign of air strikes against Beirut and other Lebanese cities aiming to give a measured response (cache, and beware this is explicit) to Hizbulla's aggression. This, apparently, included destroying any vital infrastructure in heavily populated areas of Beirut, including bridges, power plants, hospitals and apparently random buildings. While the Israeli army said the military operations were aimed to get rid of the Hizbullah camps and infrastructures around the border where they fire their rockets against Haifa and other Israeli cities, and their headquarters in Beirut and other southern cities, what the world espectated during the first three or four days of air strikes was pure horror. Hizbullah-controlled areas were like ghost quarters, so any bombing of those were very unlikely to take any Hizbullah victims. On the other hand, the rising number of civilian victims was the first bits of news that I could hear in my radio as I woke up every morning. All of this, with a great amount of cinism and unlimitted cruelty. The Israeli army declared that the civilian population in the South should be leaving their homes (measured response), while they knew they were doing exactly what was needed to prevent this, by locking them up around destroyed bridges, harbours, airport and roads. The first columns of the lucky refugees who could afford fleeing to the North were greeted by Israeli bombs, leaving a good number of scattered bodies. In Spain, the news shocked the public opinion and Zapatero, along with Chirac (IIRC), declared those actions were untolerable and unproportionate, and should be stopped immediately. This brought some local politics fun, when on one side the Israel ambassador in Spain accussed Zapatero of being antisemitic, and the right-wing leader Rajoy called the thousands of people who spontaneously demonstrated against the war in a few cities "clowns" and "ignorant". Watching what the UN has done to stop these warcrimes, I really think it's a great moment to shut down that useless organisation and let some big corporation buy their nice building in New York City to build their offices in it. Once again, when some countries tried to come up with some resolution that forced Israel to stop, the United States waived their vetto flag. Once again, the Security Council has done nothing to put an end to another chapter of violence in the Middle East. The vettoing powers of some of the members is so ridiculous that it makes it totally inoperative. So, as the UK and US governments were not going to do anything to stop the air strikes, Israel had carte blanche to do whatever they wanted for a week. And then, Israel's measured response destroyed one of the UN's buildings in Lebanon, killing four annoying observers, despite their calls warning that the bombs were falling too near their location. Only then, the United States decided to send Condie to have a look around the area, surprise visit to Beirut included. I wonder, what phone number must the innocent women and children who cannot escape their cities and towns dial in order to warn the Israeli army about the proximity of their bombed targets? After two visits of Condie to the region, nothing has changed, as the fourth week of operations starts. This is getting on my nerves. I don't, and won't, justify any of the Hizbullah attacks on civilian targets using Katyushas, or the kidnapping of soldiers, or whatever. What I see is that unless Israel takes a radically different approach to their problem, nothing will change either. Violence isn't at least. Apparently, their military operation isn't going well at all, and is not damaging much of Hizbullah's military capacity. What are they going to do? Will they occupy southern Lebanon for 20 more years? The social movements this kind of actions are generating is also very, very worrying. On one hand, I read that around 85% of the Israeli population approve this war and think this is what their government needs to do to make them safe. This is pretty shocking. On the other hand, everyone still in Lebanon, even the Christian community, are united against the attack, helping each other in their survival quest, while the popular support to Hizbullah is rising, with big concentrations of people cheering them in the streets. This is just two years after similar demonstrations in Beirut forced the Syrian military out of the country. While the Israeli war against Lebanon (I won't buy the "It's against Hizbullah" bullshit), sadly all the media, cameras and journalists have given their back on Gaza, which is under similar, but probably more brutal and savage military operations by Israel, as another soldier was kidnapped just one week before all of the Lebanon stuff started. The press doesn't have any news of how things are going in Gaza. The last thing I remember is that the UN was warning about the threat of a humanitarian disaster due to the lack of any kind of supplies in Palestine. If Palestinian kids are starving, the media are not letting us know. Yesterday, 54 civilians were killed in an improvised underground bomb shelter in Qana, most of them being children. The Lebanese civilian death toll must be well over 500 as of this writing, with a ratio of at least 1:10 compared to Israeli military victims. When will Olmert have enough? The only way I see this will end up for good is when the Israeli public realises being at war in three fronts is quite expensive and damages their home economies. Maybe, at that point, people start hearing what the Meretz party minority in the country have been saying for years. Israel has the right to defend itself. This is the official motto of Israeli and American leaders. When this right is extended and abused to the point the main targets and victims are civilians, Israel walks quickly away from a perdurable solution. Today, hostility against the state of Israel is even greater than last month. Hizbullah in Lebanon, Hamas in Palestine, will probably be the winners of the conflict when the bombings end. Not the best recipe for a peaceful future.

Enrico Zini: ninth-day-in-addis

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/
Beware of brute-force login attempts 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: 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 Basic information is at http://www.postfix.org/basic.html. Difference between mail name and smarthost: 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: 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: Some data requires exporting before backing it up: 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 Important keys to know in a Unix terminal These are special keys that work on Unix terminals: Therefore, if the terminal looks like it got stuck, try hitting ^Q. Problems we had today with postfix Problems found yesterday and today

Aigars Mahinovs: Spot focus

For a long time I have considered F-Spot to be a nice concept application, but not really fit to be the center of Linux digital photography experience due to general bloat and (most importantly) due to the lack of many important features that would compensate the interface lock in that this application demands. In this post I will try to list all the deficiencies and lacking features of F-Spot that I have found while using it to manage my photo flow.
First let’s talk about the bloat. I will compare F-Spot to GThumb. There are few points of comparison: first start up, viewing a bunch of photos and importing a bunch of photos. When starting up GThumb uses 17 Mb RSS memory (10 of them shared with all other Gnome programs) while F-Spot uses 33 Mb RSS memory (17 of them shared with other Mono programs, of which I do not have any). When viewing a folder with couple hundred photos GThumb uses 25 Mb RSS memory while F-Spot grows to 55 Mb RSS. On import GThumb calls gphoto that adds 3-5 Mb RSS to the memory usage, while F-Spot seems to implement some/most of the photo protocol internally and can easily grow in memory up to the size of the photos being imported (which is kind of problematic while importing a gigabyte of photos), but usually the memory usage on import hangs around 250-300 Mb and hovers around that level for some time after the import is complete. For me personally it does not make much a difference (I have 2 Gb RAM now), but conservative memory usage is still critical for a good Linux application because people expect Linux to be faster and high memory usage can slow down anything. In my opinion no photo management operation should take more then 50 Mb of private RSS memory (even importing several gigs of RAW files from the camera).
Now let me try to describe the optimal work process of a (semi)professional photographer, so that we can see what is missing in F-Spot to accommodate such work-flow and what is done right.
  1. The photographer takes one (or several) cameras, lenses, flashes, memory cars, spare batteries and tripods and goes to an event/photoshoot/modelling session/walk in the park/wedding/…
  2. He takes 3-5 Gb of pictures from lots of different angles with different cameras, different lenses on different memory cards with different settings. Most of them will be the highest quality available on the camera, usually those will be RAW images.
  3. Upon getting back to his computer, the photographer wants to drop all the data to a staging place dedicated to this event. He wants to do it fast and simple without sorting trough the photos at the moment, but at the same time he might want to split the staging areas (multiple models within one session) or join them (one model from different cameras). Sometimes he might not even have time for that and would just want to dump the data now and run to another event.
  4. After several shooting events the photographer finally has reserved the time to sift trough some of the photos from the staging area (modelling jobs first, then the friends wedding and the walk in the park as last)
  5. First the photographer decides to check if the times on the photographs are correct and discovers that at some shooting sessions one of the cameras was set to another timezone. He select all shots from that camera across several (but not all) staging areas and adjusts the time.
  6. Now he rechecks the logical groups of photos (which photos should be in which staging area) by dragging the photos around, splitting and joining the staging areas
  7. When the overall structure is clear, the photographer selects one (most important) staging area and starts working with images in that staging area not caring about any other images
  8. First he browses in full screen trough all the photos rating them in quality scores form 1 to 9 by pressing corresponding number keys. Rating a picture automatically advances to the next picture, which happens very fast because the software precaches several photos ahead for speed and displays without any flicker. Speeds in the order of 2 photos per second are expected on good enough hardware. One key operations for “view 100% zoom”, “rotate”, “view exif” and “quick note” are available. RAW images are automatically translated for preview with default settings.
  9. With couple clicks bad photos (with score of 4 or under) are selected and erased
  10. Now the photographer starts working with individual photos
  11. First step is the RAW->Jpeg conversion. An appropriate tool is brought up with default setting already applied and a preview of the photo showing up (like in dcraw). The photographer adjusts the conversion parameters (including and option to make a HDR-like effect by compressing the dynamic range of high bitness pictures). The converted Jpeg is saved as a version of the original photo and becomes the default for operations that do not understand RAW.
  12. A separate plugin is used to reduce digital photo noise from the pictures (new version)
  13. Photographer makes adjustments to the image inside F-Spot. Each modification makes a new version.
  14. Still not satisfied, the photographer starts Gimp from inside F-Spot and make further edits. Each time Gimp saves the file, F-Spot makes another version.
  15. The photographer erases some versions of the picture and also joins multiple near-duplicate shots into one picture as versions of that picture. One version is always marked as the top version and the photographer can easily change it.
  16. The good photos are tagged and imported to the main collection
  17. A subset of the photos is exported to: Flickr, personal Gallery installation, plain html photo album, a zip file with small (1024x…) versions of the photos, … Only the top versions of photos are exported. If unconverted RAWs are top versions, then they are converted to Jpeg with default settings. In most cases photos are also downsized before export according to the preferences. Highest quality downsizing is used (anti-aliasing) and also additionally small unsharp mask is run on each photo
  18. The photographer does advanced searches and advanced tag selections to select and display or export subsets of his main collection
  19. The photographer has three instances of F-Spot: his laptop, his main work PC and a backup hard drive that can be attached to either of them. He needs to keep his F-Spot photographs synchronised between the three locations for backups and for distributed work. Also after some point the main photo archive becomes too big to store it (with all versions) on the laptop or even on the main PC, so the photographer selects a set of older photos and selects an option to archive them. The next time a connection is established with the backup drive, all versions of archived photos are copied to the backup harddrive and the laptop and the main PC only keep 90% quality Jpeg format picture of the top version of each photo downsized to exactly fit the display resolution of the device. If even that takes too much space then “Archive Only” option is selected which insures that the backup harddrive has the copy of the photo and then erases it from primary data stores completely.
  20. When the backup harddrive is connected it is also very simple to make DVD/HDDVD/Blueray backup copies of subsets of photos from the archive with all the metadata and versions in such a way that other software (and even dedicated media devices) could easily browse the top versions of photos directly from the backup media. Of course, restoring from such backups also must be tested.
So, to summarise, the changes needed for F-Spot are: As you can see, many of those issues are already reported to F-Spot bugzilla, but have recieved little attention. So what shall we do about it?

Ian Murdock: Two-way email synchronization without Blackberry Enterprise Server?

I’ve been thinking a lot about software above the level of a single device lately, so I set out this weekend to finally get two-way email synchronization working on my Blackberry. My main goal is to have a single inbox I can access from multiple devices without having to ever deal with the same message twice (i.e., if the message is read/filed/deleted/etc. on one client, it’s marked read/filed/deleted/etc. on all clients), with full support for disconnected operation. (I care much less about the oft ballyhooed push email feature—I’m perfectly content to wait 15-20 minutes for email to be delivered.) Since what I want more or less perfectly describes IMAP, I figured Blackberry Internet Service, which uses standard Internet protocols for mail delivery and supports IMAP, would be sufficient, and that I wouldn’t need Blackberry Enterprise Server, which hooks into Exchange and other “enterprise” messaging systems. Unfortunately, I appear to have been wrong. While messages read and deleted on the Blackberry are reflected on the IMAP server, the reverse is, surprisingly, not true (surprisingly because, unlike POP, which behaves similarly in BIS, IMAP is a bidirectional protocol). In other words, when messages are read or deleted on another client (e.g., the Thunderbird running on my laptop), those changes aren’t reflected on the Blackberry; so, as a result, the Blackberry accumulates every message I receive when it’s not in use, making a periodic “Delete Prior” necessary to get rid of all the accumulated junk (which obviously deletes the useful messages too, like, ahem, the ones with my flight information in it). Worst of all, after several days of trying to figure out why IMAP wasn’t working the way I was expecting it to, I discovered this is the expected behavior (see note 5—”Messages deleted from the source mailbox are not automatically deleted from the device”), rather than a bug. What to do? I could obviously break down and upgrade to Blackberry Enterprise Server. I’m not too keen on setting up an Exchange server just for this (which would cost hundreds of dollars, particularly after the cascading upgrades typical of Microsoft products, e.g., I’d need to get Windows Server too). As an alternative, there appear to be a number of companies that offer a BES hosting service. However, the costs add up pretty quickly—another $10/mo. to T-Mobile to allow BES traffic through (the “business tax”), $10/mo. for BES hosting, and $10-15/mo. for Exchange hosting on top of that (BES hosting is an add-on to Exchange hosting in every plan I’ve seen). That’s a grand total of $35/mo. just to get email marked read or deleted on my Blackberry when I read or delete it in Thunderbird. Hrmmph. Another idea is to find a Blackberry IMAP client, but there seem to be a dearth of these. The main one that comes up both in web searches and that’s described in Blackberry Hacks is from a company called Reqwireless which, tantalizingly, was acquired by Google last year but whose products, frustratingly, are no longer available. In any event, I want something that integrates with the Blackberry’s excellent inbox, which aggregates email, SMS, missed calls, Google Talk messages, etc. in a single stream, and I’m not sure if a separate IMAP client will be able to do that. Other observations: This page says that “two-way [Blackberry] sync is coming soon” to Yahoo Mail. However, “coming soon” doesn’t really help me. Funambol looks very promising, but it’s going to take me a little while to wrap my head around what exactly I need to do to deploy it. Not exactly point and click. Scalix offers Scalix Wireless Solution that works with Blackberry and is integrated with the Enterprise and Small Business Editions. At $60/user with no minimum number of users and a free trial, this looks promising too. Zimbra offers Zimbra Mobile, which “includes the ability to leverage Zimbra’s third party mobile partners that offer two-way sync to Blackberry and other devices” (whatever that means). However, I’m assuming this comes bundled with the Network Edition, which is sold with a minimum of 25 users, and that probably makes it unaffordable to an individual user like me. Any other suggestions?

30 July 2006

Matt Brown: Telecom Hasn t Changed

As I predicted on the 27 of June Telecom hasn’t changed a single bit. All their rhetoric about embracing the new competitive environment and voluntarily separating themselves has been posturing and PR as evidenced by the following article in this mornings Computerworld. Basically Telecom is saying Xtra is a brand, not a separate business unit, so it will continue to receive services in a different (favourable) manner to every other ISP. The only hope now is for the Government to actually muster up the courage to enforce a physical separation on Telecom… We live in hope.

Daniel Burrows: People suck, news at 11

Continuing the saga of the lost wallet, it turns out that my uneasy premonitions about "Sidney"'s phone message were entirely correct.

He called me up at work, gave me a long spiel about how I should be glad he came from such a "respectful" family, mentioned that "someone" had gone through the wallet and taken the cash, and then asked again if there was a reward. Rude, I thought, but hey, rewards for wallets aren't unheard-of and he is doing me a favor...so I said, sure, I'll give you $20. There was a long pause, and then he said "that's really insulting, you know?" Taken aback, I asked what he was thinking of, and he said that he was thinking of more like a few hundred dollars.

A FEW F**ING HUNDRED DOLLARS?

That isn't quite what I said, I just said "No" and "I don't know what makes you think that's a reasonable amount." At this point he started asking again about "don't you want your wallet back?" and making vague threats about what would happen if it got into the "wrong" hands. I made one mistake, raising my bid to $40 (I shoulda just cut him off there), but finally told him I had to get off and get to work. He wouldn't give me a number to contact him at but said he'd call me later.

So, at this point it was obvious that a pretty nasty character had my wallet, so I double-checked that all my important cards were cancelled and started ordering duplicates of the remaining ones. I called my apartment manager (since my provisional license had my home address on it) and warned them to keep an eye out for suspicious people hanging around my apartment, just in case.

I did try calling the police; however, they were just as useless as you'd expect (considering I didn't know how to get in touch with the wannabe extortionist). The only thing they could suggest was that I try making arrangements to collect the wallet, then arrange to have a police officer arrest the guy when he showed up. Given the fact that I have no actual evidence of the extortion, though, I figured the main result would be to leave someone that I already know is a bad character, and who has my personal information and address, a grudge to hold against me. Not a good long-term move.

What depresses me most about all this is that "Sidney" is far more representative of the average person than I am, or (I assume) most readers of my blog; and he may very well be better adapted to the world than I am. People suck, life sucks, and the world sucks; I should be grown-up enough at age 25 to not care by now, but I still do. :-(

Joey Hess: ikiwiki as a planet

Well, I did it: I shoehorned feed aggregation support into an ikiwiki plugin. So now it can run as a cron job, pulling in updated from feeds, turning them into wiki pages, and saving the pages to disk, then rebuilding the wiki. Turning a wiki that grew blog support into a Planet engine has some interesting consequences. One of which is that the aggregated posts can be edited in the wiki unless locked, but more interesting is that the posts are first-class wiki pages that can be linked to from elsewhere in the wiki, and that can stick around even after they've fallen off the Planet's front page (although I do need to code up the support for eventually expiring them). Another interesting thing is how the feeds are configured: By directives embedded in the wiki pages themselves. So no need for config files, and the wiki page that configures the feeds builds into the web page that lists and shows the status of the feeds. The nicest thing about it though, is how little code I had to write, and how targeted it was. 300 lines exactly for it all. No need to deal with RSS generation, page formatting, full text search, any of that, it was all already there and works with the new source of pages like it would with any other pages. Very happy with this. If you want to check it out, I've imported the data from Planet Debian upstream into updo.kitenet.net. Now if you find a new blog for a Debian upstream author, you can just edit the feeds page and add it yourself.
PS: No, I don't know why Jeff Waugh is flooding it, but it's probably a minor bug in the page creation date parsing. Too late to check. (Update: Bug in the atom parser, bug filed w/patch.) PPS: I know about the problem with Lennart Poettering's blog encoding; a patch is in the BTS.

Evan Prodromou: 12 Thermidor CCXIV

I agree with Destiny -- this letter from wp:Steely Dan to wp:Luke Wilson is just excellent. If only all creative property disputes were handled this way. tags:

Hot in the City tonight It's been a hot last couple of days in Montreal -- I mean, not hot like wt:California or wt:Europe but hot enough that it feels pretty bad. According to Sacr Blues -- one of my favorite books about wt:Quebec -- Montreal has the highest variation in temperature of any inhabited place on earth -- from highs of 40C in the summer to lows of -40C in the winter. We're at the high part now. Yesterday was my Primary Caregiver ("PCG") day, so I took the opportunity to take the baby for a long walk in Parc La Fontaine, under the gigantic poplars, where it's always cool and fresh. We also went for a nice dip in the baby pool. That kept things pretty nice. Amita in the park

Bonne F te Speaking of hotness, last night was the 30th birthday party for my friend Niko Ritoux. Maj and I took the opportunity to do our first evening out as a couple without the baby -- our great babysitter Julia came by with her boyfriend Antoine and took Amita June to a jazz concert at the Theatre de Verdure in Parc La Fontaine. How great is that? Anyways, we had a good night with Niko. We went to Le 2, the teensy but uber-cool bistro-bar our friend Daran co-owns. It's in possibly the most valuable real estate in all Montreal -- the corner of St. Laurent and Sherbrooke -- but it's unassuming and doesn't have that Lower Main clubbed-out fake tan feel. We had a great dinner of "international tapas" -- the little appetizers that remind me a lot of Toqu -style gourmet micro-meals -- and lots of liquor and good fun. I saw a lot of people I hadn't seen in a while -- P.E. and his girlfriend Ode, who were living in Taiwan for a long time; Fred; Daran and his new friend Annie; Joannie; and our own lovely Italian princess the Other Annie. Daran J.F. P.E. and Joannie Niko After dinner (11:30PM!) we hustled up to Bily Kun on Mont Royal and then Plan B across the street. Nicely, for a Friday night, everything was open and airy -- Montreal bars can get so damn crowded, but in the summer everyone's in Cottage Country and there's plenty of room for dedicated barflies. I'm not sure when I got home, but I think Niko had a good time. tags:

And more time Today I spent my time creating data feeds of Wikitravel content for researchers at the University of Zurich who are doing some sort of work on the reliability and development of online travel information. I can't wait to find out how their research comes out. Maj, Amita June and I went up on the Pont Jacques-Cartier tonight to watch the last event in the International des feux at La Ronde. One of the great things about being in Mtl for the summer is this months-long fireworks festival, in which national teams compete every Saturday and Wednesday night. This is the first time I've been on the bridge for the event, and it was amazing -- much louder and bigger than when we've watched from home. Amita June, of course, was dumbfounded by the fireworks -- she gawked open-mouthed through the whole thing. I thought she'd be scared by the lights and noise and the crowd, but she loved it -- reached out and pointed for each explosion, and even said ooooooooh for the big finale. She conked out on the 8-block walk home, which gave Mama and Papa a little extra rest. tags:

GPLv3 and license compatibility According to this article on Linuxworld.com, compatibility with other licenses like the Apache 2.0 is going to be a major focus of the GPLv3 development process. I say huzzah to that. Trivial differences between licenses are a shameful waste of time and energy for hackers who have better things to do. The world needs too much good Open Source software for us to waste time with license incompatibilities. Hopefully this same philosophy will bleed over into the FDL. Creative Commons made an overture for unilateral compatibility between the Attribution and Attribution-ShareAlike licenses and the FDL, which got stony silence from the FSF. It's time to start thinking of the users and playing nice with each other. tags:

Put one foot in front of the other I nearly forgot to mention: Amita June took her first step today. She's been "cruising" (walking around holding onto furniture) for about 6-8 weeks now, and she loves walking around holding onto Mama or Papa's fingers. And she's been spending longer and longer periods standing on her own -- up to about 20-30 seconds. Today, she was standing up, and she wanted to walk so I held out my finger just a little out of her reach. She extended her arm for it, then took two little steps to get to me. Ta-da! Maj and I took turns getting her to stand up on her own then walk to us. She's only got about 3-4 steps in her right now before she freaks out and sits down, but it's still pretty amazing. tags:

28 July 2006

Lars Wirzenius: Debian: Project Ummikko

How good is Linux as a tool for the uninitiated, really? When journalists review Linux, they usually concentrate on the initial installation experience. Given their deadlines, that's logical: they don't often have time to spend months on using it, so installation is all they have time for. I wanted to know how good Linux, or more specifically Debian with GNOME, is for the uninitiated, or more specifically, for someone who has been using Windows for a number of years, and switches to Linux. I'm specifically uninterested in the installation experience. To see what it is like, I recruited a friend of mine, and gave her my old laptop with Linux pre-installed and pre-configured. She has agreed to try switching all her computer use to Linux, and tell me about any problems she has. We'll do this for several months, to make it realistic. Anyone can suffer through a week in a new computer environment. She's now used Linux for a bit over a week. The initial session, when she tried out the new computer at my home, went pretty well, with only a couple of real problems. Here's an edited version of the notes I made:
Bringing up the network (the laptop is configured to use NetworkManager): She found the networking subfolder of the computer folder in GNOME: "Why does it say 'Windows Network'? And why is that empty?". Later: "Why does 'Network tools' not configure the network?". She doesn't know if configuring network in Windows would be as bewildering, never having done it. She can't find anything useful about network configuration in the GNOME help system. Eventually I point out the Network Manager icon in the notification area. She selects a wireless network to connect to and enters the WPA password I give her. She then gets the GNOME Keyring dialog and doesn't understand what it is, wondering why she needs to give the WPA password a second time. She then proceeds to open some windows. "Minimization works, good." She is happy that there is a task bar at the bottom of the screen, and happens to find the "Show desktop" button there as well: "Oh, you can hide all the windows here if you have many." She finds mplayer and thinks it looks OK. She comments that she doesn't really care what player she uses, she uses several under Windows, too, and all of them have quirks. XChat has too many networks to choose from at startup. She's never had to choose an IRC network before, IRCnet being the default for Mirc (or the Mirc installation she has, anyway). She wonders why XChat didn't ask for a server to connect to after selecting the right network (XChat has a lot of servers configured for each network and chose one of them). She continues to configure XChat: "Oh Lord, NO spell checking." She finds the color selector in XChat (the GNOME or GTK+ default one) to be very confusing. The "Nicks not to highlight on" setting is bewildering, does it mean that XChat highlights by default all nicknames, even for other users? She'd like "shut up completely" setting for XChat sounds. Giving ops from a popup is intuitive. XChat in general seems intuitive to her. Next, Bittorrent, using the GNOME torrent downloader. The .torrent file is saved directly to the desktop, which is good. The downloaded file goes there too, which is good, too. Seems intuitive enough, but doesn't seem to have very many settings: it would be nice to be able to prioritize different parts of a multi-file download. She also can't get it to continue a download after restarting the client (possibly related to multi-file torrents). Next, OpenOffice.org. The Windows version doesn't split up into Base, Writer, Impress, etc, but finding the interesting one (Writer) is no problem. That Abiword was installed, too, was a bit confusing. Totem: space doesn't play/pause (except in full screen mode). Sound volume control is a bit confusing, since it has to be done using multiple slidebars (master, pcm, etc) in the GNOME sound control dialog, and also in Totem. After maximizing Totem, quitting it, restarting it, the window is now as big as the whole desktop (minus top and bottom panels), so maximizing and un-maximizing doesn't seem to have much effect, which is weird.
Other problems have surfaced since. The big one was that I had configured a simple firewall for her that didn't let anyone connect to her laptop, meaning that torrenting was not working very well. I use the same firewall settings on my own laptop, but since I mostly torrent for Debian's ISO images, and those have really fast seeders, I've never noticed that I don't torrent outward. Ah well. She also doesn't like the GNOME torrent client very much. It lacks ways of monitoring and controlling the torrenting process that she cares about: seeder and peer counts especially, or (but less importantly) changing the order in which parts of a multi-file torrent are downloaded. We tried installing Azureus, but the version in Debian etch at the time seems quite broken. Firefox seems to occasionally also work very badly for her, taking tens of seconds to load pages, but this seems to be a known bug that will be fixed in the next upstream version. We'll upgrade when we can, and hope that fixes it. Firefox's default font size was too small. Same for the default window size. And sometimes, maximizing the window still doesn't make the contents become bigger (but it works under the Windows version of Firefox). I haven't seen this myself yet, but if I do and can replicate it, I'll file bugs. Another problem that was due to my bad installation: I had forgotten to install acpid, so every time she booted, she got an error message saying "Can't access ACPI events in var/run/acpid.socket". Her exact words when reporting this were: "I don't want to know. Really, I don't. But, just in case you do." That's it for now. I may write an updated report later, if there's any interest. (For the curious, I'm intentionally not naming her, to let her try the experiment in peace, rather than getting her mailbox full of well-intentioned advice on things to try or do.)

27 July 2006

Ben Armstrong: Plumbing the depths of cdbs

On #debian-games we were discussing today how opaque cdbs is for those who aren’t intimately acquainted with its inner workings. I want to be able to easily see, at least at the level of detail visible in a purely debhelper-based rules file, what’s going on inside just by running make itself, e.g.
debian/rules -p   grep -v ^#   grep -B1 dh_
Here’s a small excerpt of the output when run on ri-li:
binary-install/ri-li::
        dh_installdocs -p$(cdbs_curpkg) $(DEB_INSTALL_DOCS_ALL) $(DEB_INSTALL_DOCS_$(cdbs_curpkg)) 
        dh_installexamples -p$(cdbs_curpkg) $(DEB_INSTALL_EXAMPLES_$(cdbs_curpkg))
        dh_installman -p$(cdbs_curpkg) $(DEB_INSTALL_MANPAGES_$(cdbs_curpkg)) 
        dh_installinfo -p$(cdbs_curpkg) $(DEB_INSTALL_INFO_$(cdbs_curpkg)) 
        dh_installmenu -p$(cdbs_curpkg) $(DEB_DH_INSTALL_MENU_ARGS)
        dh_installcron -p$(cdbs_curpkg) $(DEB_DH_INSTALL_CRON_ARGS)
...
OK, it’s a bit crude and misses a lot of interesting details, but it is a starting point that can be tweaked to zero in on whatever parts interest you.

Evan Prodromou: 9 Thermidor CCXIV

Mark Jaroski asked if I had any recommendations for Web hosting. I thought I'd share them here. Mostly I find Web hosting really difficult to evaluate -- there are just too many options. It's a really competitive business, and the hosting companies have SEO-saturated the Web hosting keyword at Google. On top of that, there are a ton of fake "hosting comparison" sites -- really just fronts for the bottom-feeders of hosting. When you get to even a good hosting company's Web site, there'll be a lot of flashing lights and gewgaws. A lot of companies try to sell you add-on features you don't need, and they'll have abusive UI to get you to click on the wrong thing, like:
 You're eligible for a big discount on our
 blogging software! Only $3.95 a month! 
 [Continue] Cancel
... where the "Continue" button adds the add-on to your account and "Cancel" is what you need to go on with your order. I think this is borderline fraud, but as far as I know nobody's been shut down or fined for it. For contrast, there are a lot of really good community-oriented and Open Source-friendly hosting services out there, like Montreal's Koumbit. They'll usually be able to devote more time and energy to individuals' technical needs. Often, though, small companies and community groups can't get the same economy of scale and thus price level to compete with the big guys. Of course, what you usually trade away for that $0.75 a month is any customer service or friendliness or control of your own site. The big guys are organized around selling hard to inexperienced people on price, then ignoring their requests for help and treating them like idiots for asking until they go away. Getting help with real problems like server downtime or misbehaviour can be as humiliating as having someone explain what "Cut", "Copy", and "Paste" mean, and probably get you as many over-the-phone eye roll pauses. "My Web site is down!" <eye roll> "Did your AOL Chat window get in front of your browser window, sir?" I think the best option for people is to look around, find a group or company that has a price you can live with and business practices that don't turn your stomach, and give them a try. Make frequent local backups of your site, and be ready to leave if you need to. tags:

Dumb Contest Julien has started a dumb bug reports contest (you be the judge of what "dumb" applies to here). What's the point? I guess if it catches on we can humiliate Debian users and keep them from filing bug reports at all. And as we all know, no bug reports means no bugs, right? Being abusive towards users has never helped a project improve the quality of its software. Our bug tracking system is one of the things that's made Debian a top-tier operating system. Making fun of Debian users for using it is a very bad idea. tags:

Yay Akron The Akron Beacon Journal has an article about suggested Akron-related topics to add to Wikipedia. That seems like a great idea. tags:

Wow Douglas Self has some cool items in his Museum of Retro Technology about old technology -- like this rocket bicycle and this gyro-stabilized monorail. Thanks to Nick Moffitt for the links, even though he probably cribbed them from somewhere lame like Slashdot or Boing Boing. tags:

Supportworthy So, I have two blog items about technical support people looking down on those who are reporting problems. And I was thinking how much I work to gain the respect of technical support people so they'll listen to my problems when I have to make a phone call. As little as I like it, I find myself working to qualify to get my questions answered and my problems fixed. So I wonder: what if there were some kind of standardized computer user certification? You could take a series of increasingly-harder tests at some training centre, and you'd give your certification level (or -- better -- your standardized identification number) when you register software or hardware or when you report a bug. People will then know that when you say, "I think postfix isn't accepting connections!", you might actually have a point. tags:

JAM on it Maj, of course, was the one who pointed me to the page for a new Wiki engine in development. Ho-hum, I know... there's already too many wiki engines. But this one is interesting in that it aims to be MediaWiki compatible and run in a Java Servlet container. That seems like a killer combination for those people who want "the wiki that Wikipedia uses" but with an "enterprise-strength" Web technology. I've only tried the software a little bit, but it definitely looks like it's already more featureful than 70% of Wiki engines. Taking MW as a model is a great idea for a new Wiki engine -- it's an extremely featureful wiki engine that "fits well in the hand" of writers and users. Already the use of images and the special support pages look good on JAMWiki. And the integration of lucene means an excellent search engine -- something MediaWiki lacks out of the box. The Roadmap looks to have some good plans in the future. Anyways, Maj likes JAMWiki since JAM is MAJ backwards. I can't tell you what to make of that, though. What I do know is that the project needs a logo real bad. tags:

Ajax in 10 weeks So, wp:AJAX is no longer as bonerific a word as it was six months ago, but it's still pretty hot. I mean, we've all stopped nattering about how fantabulous Ajaxical UI is, and just started writing code to make it work. It seems like nobody even uses "Ajax" and "Web 2.0" as synonyms anymore (well... I guess only the people who still call it "CGI/PERL".) But I was interested to see when I was looking for the Java Servlets link above that Sun is part of the cryptic Open Ajax Alliance. They've got an Ajax project incubating called jMaki to integrate Javascript programming on the server and on the client. Neato, say I. Most interesting was an external link to a 10-Week Free AJAX Programming Online Course. Starts August 4th, seems like a nice self-training tool. tags:

Stuck in ol' CGI again So, I've been getting some non-deterministic 500 errors from WiLiKi, and I'm starting to think they're concurrency problems with searching the database the WiLiKi pages are stored in. I also think there may be a FastCGI tie-in, so I've rolled-back to CGI for a while to see if it cuts down on the errors. Annoying, indeed. tags:

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.

John Goerzen: Thoughs on cfengine, bcfg2, and puppet

Yesterday I posted about my first steps with cfengine. By the end of the day today, I had things far along that I can:



Very nice.

I've had a few annoyances with the cfengine packages support, which doesn't quite seem to work as documented al the time.

I also took a look at bcfg2 thanks to a comment yesterday. It looks very interesting, but I have a few gripes about it. I find cfengine files easier to read. I can look at a file, having never used cfengine before, and have a reasonable idea of what is trying to be done and how it will be accomplished. I can't say the same for bcfg2, plus bcfg2 uses XML config files (ick) and a bunch of small otherfiles. While the architecture as the authors have described it certainly sounds appealing, I'm not sure that bcfg2 is a simple as cfengine. I am a strong believer in the KISS (Keep It Simple, Stupid) principle. But THANKS to the person that left the comment, and I hope that bcfg2 continues to evolve and provide an alternative to cfengine.

I also looked at Puppet. This thing looks very slick. Seems to be cfengine with a nicer syntax. On the other hand, it's not really clear that anybody is using it. That makes me nervous -- this is the kind of thing that can seriously harm machines if it does something unexpected.

26 July 2006

Evan Prodromou: 8 Thermidor CCXIV

Yesterday was such an insanely long day -- we woke up in a tent, had breakfast over a Treo, then released a lot of software and went to sleep in the middle of the night. It seemed like 4 days, not 1. And this morning I had to take our new mini-SUV into the shop for its first maintenance checkup. For the last 6 years, I've driven a beautiful old wp:Citro n DS station wagon, but around the time Amita June was born I decided I wanted her to learn to drive on it. Maj and I decided that that meant it had to be taken care of a little better, so I put it in storage and we bought at 2005 Hyundai Tucson. (The Hyundai people here in Quebec pronounce it like "Tux-awn", to our endless amusement.) It's weird having a new car -- like, newer than 1972. Parts are not only plentiful but inexpensive. There is a selection of multiple mechanics in my major metropolitan area that can service the vehicle. And people don't point and wave when you're driving, or stop you on the street to tell you stories about how their grandfather used to drive one on their family farm. We'll be driving the car to wt:Boston next week for Wikimania 2006, so I'm glad it went to the shop. It should be in good shape for the drive -- I hope the rest of us are. tags:

Slides Speaking of Wikimania -- I'm nowhere near ready for my presentation. Jeez, how'd it get to be almost-August already? Thankfully, no one else I've talked to is really ready to talk, either... so at least I'm not the last one to get my homework done. tags:

Software The OpenID software I did for MediaWiki went out yesterday, and I got a lot of good feedback on it. OpenID requires that some state data is stored between participating servers, and the code I wrote uses the memcached client built into MediaWiki to store it. Not optimal but it works. Well, better today than yesterday, that is. There were some pretty gruesome bugs in the implementation that were only showing up for some exceptional circumstances. So I adapted the JanRain unit tests for the other storage classes to my Memcached class, and that helped a whole hell of a lot for debugging. Yay, unit testing! Some people are still having problems with the software, though. The main thing I've found is that the key-value pair output required by OpenID for its inter-server communications is sensitive to extra whitespace thrown in. Why would there be extra whitespace? I've found that a lot of PHP libraries have bits of whitespace at the end, after the closing ?>, and that will show up in the output. Whether it matters depends on how sensitive the output format is to whitespace. In the case of OpenID, the answer is: pretty sensitive. But I'm looking forward to having some more people try the OpenID MediaWiki extension out. tags:

Wikipedia's 25th of July Spot-on satire from The Onion: Wikipedia Celebrates 750 Years Of American Independence. I quote:
  • "On July 25, 1256, delegates gathered at Comerica Park to sign the Declaration Of Independence, which rejected the rule of the British over its 15 coastal North American colonies," reads an excerpt from the entry. "Little did such founding fathers as George Washington, George Jefferson, and ***ERIC IS A FAG*** know that their small, querulous republic would later become the most powerful and prosperous nation in history, the Unified States Of America."
Does the fact that I find an Onion article funny say more about my declining humor standards, or about their recent improvements? I don't know. tags:

Four ideas I was very interested to see Tim O'Reilly's Four Big Ideas About Open Source. I think that there are some fascinating developments over the last few years that have fallen under the rubric of wp:Web 2.0, and I think they affect those of us who put our hearts and minds into Open Source software. I think this was part of his keynote at OSCON 2006, which, y'know, I'm not techically at or anything. It briefly crossed my mind, but I've got too much to do for Thermidor and Fructidor to flit off to yet another conference -- this one only tangentially involved with what I do for a living. Still, it's interesting that Open Source software and Web services are crossing paths. FLOSS has been critical for making Web services possible, but taking that up to the meta-level and seeking the same freedoms from Web apps that you expect from "regular" software... that's a Moebius strip of rights right up in there. tags:

My life as a toolbar So, sometime in the last year I started installing Firefox toolbars. The main one that's useful to me is Chris Pederick's excellent Web Developer Extension, jam-packed with little tools that make my job as a developer that much easier. But I also install, well, pernicious toolbars. Judgemental toolbars. Toolbars that make me forget what really matters and turn the Web into a horserace or a highschool popularity contest. They're horrible, and they're addicting, and I can't stop using them. The Google Toolbar has some diddly little useless gadgets that I don't give a shit about, like searching my Gmail account for the given search terms (whoopee). What I loooove, though, is the wp:PageRank indicator. PageRank, of course, is the patented algorithm developed by Google founder Larry Page to estimate the importance of a page on the Web. It's incredibly accurate and valuable and though no longer the only criteria Google uses for ranking pages, it's still critical as a measure of the intrinsic value of a page. So, there's this little wp:progress bar on the Google Toolbar that shows the PageRank of any page you're looking at. It's an apparently logarithmic scale from 1-10, with the number showing up in a popup tooltip. Creative Commons? 9/10. Ted's story about the great worldwide race? 2/10. Technorati home page? 8/10. Male Secretary? 6/10. Wikitravel's France discussion? 3/10. And so on and so on. Even worse is the A9 Toolbar, which (again) has a whole bunch of bogus boring features, but also shows the Alexa ranking of any site you're looking at. Alexa ranking isn't some egghead hooty-tooty algorithm about the importance of a page -- it's a ranking on the Big Board of who's the most visited site in the world and who doesn't matter in the slightest. So, I can see that Flickr is ranked #41 today, le Sans Fil is #347,296, and wikiHow is #2248. Alexa is a lot more coarse-grained than Google's toolbar -- it measures the traffic to a given second-level-domain, not a particular URL. So any LiveJournal or Blogger site gets LJ's entire Alexa ranking -- not very useful. Still, I've taken to thinking almost entirely in terms of PageRank and Alexa rank. It's unreasonable. Every site I go to, my eye drifts up to my toolbars to confirm my idea about it. Do I really like Achewood? Sure, but it's only got an Alexa rank around 20,000... Doc Searls's blog has a PageRank of 8, which is really impressive; but... my page for 22 Prairial (Journal/22 Prairial CCXIV) apparently has the same PageRank. Holy moly! Why could that be? (I think it has something to do with the wp:Law of 22 Prairial, but I could be wrong.) Really, putting these numbers on everything is ruining the Web for me. It's turning me into a total jerk, too. I kinda want to go back to the time when I just found stuff on the Web and didn't think, "How do I measure up?" Thankfully the Yahoo Toolbar doesn't include anything remotely like rankings... just as well. Of course, that's the reason I uninstalled it, too. I can find my way to Yahoo! Canada Greetings just fine on my own if I need to. tags:

Next.

Previous.