Friday, September 30, 2005

Breezier Than Thou

(I haven't blogged for a while, because I was too caught up and had little time to tinker with fun things with computers about which I could blog).

Yesterday I switched to Breezy Badger (Ubuntu 5.10) preview.

About my Linux distro history. I've started with Slackware as my desktop distro (this was around Slack 2.x or 3.0, ..). Since then I've briefly touched RH, Debian, Suse and a few others, but always kept returning to Slack, although I've preferred Debian for server setup. I also like GNOME; when Slackware decided to drop GNOME support, I started looking for alternatives, and found out about Ubuntu. Being Debian and Gnome based, I decided to give it a try (I installed Hoary Hedgehog release), and was very satisfied (as I hear it, many ex-Slackers like Ubuntu - is there a pattern?).

After a few monts, I've learned to totally like it, and was looking forward to the next release, primarly because I followed the GNOME development closely and saw many "exciting new and innovative features" (as PR folks like to say). I asked around and determined to make the upgrade when Breezy proved stable enough.

And it is. Folks, it really works! ;-) After downloading and installing ~500MB of software packages, I half expected it to crash and burn. Due to the lack of time, I finished the upgrade remotely, and rebooted. I expected it to not show online. It did. Then, I got home, logged in, and almost everything worked. The only two issues were:
  • GNOME icons - I had a custom theme, mixing Clearlooks with Industrial GTK+ engine. Something screwed up during upgrade, and I ended up missing many icons. I solved the problem by removing my custom theme (and applying the default), and then recreating the theme (you can do that in theme preferences dialog).
  • Keyboard layout - I use Croatian keyboard layout. After reinstall, US keyboard was forced on me, and gnome-keyboard-properties dialog couldn't change it (although I did select Croatian by default). Looking on Ubuntu forums, it seemed that precompiled keyboard definition was wrong, or something similar (i have zero knowledge about XKB), so I tried to force update it by manually setting keyboard layout in xorg.conf. Restart X, GNOME figured out that there was mismatch, asked me which keyboard layout I wanted, I selected "GNOME default" (which was set to Croatian), and voila - there's my layout. Seems like a bit of a black magic, but just because I didn't want to investigate the thing any further. It worked ;-)

Everything else works perfectly (so far so good ... ;-). Also, I had several nice suprises. I use Mono, so I installed mono and MonoDevelop. I fired MD up, selected a new Glade# project, clicked a few times in Glade interface builded, hit F5 and ... it "just worked [TM]!"

Now, I know things are supposed to work that way, but there always seems to be some catch. Always I had to tweak a bit more, or dig into terminal, or something. Not now; it jutst worked. Kudos, Gnome, Ubuntu, Mono & all other devs! Keep up the great work, and thank you for a terrific software!

Thursday, September 01, 2005

VIP SMS from Python

Croatian mobile phone service provider VIP offers its users a way to send SMS through a web page on the VIP portal. Users are limited to 15 messages per day, but these messages are free, so it's a nice feature :)

Unfortunately, I don't use it much because I'm not regular visitor to the VIP portal, so logging in, navigating to the Web2SMS page and filling out the form is too much hassle for me. I'd rather have an utility, GUI or CLI, for doing this. VIP provides no such client, nor specifies a web service, which would allow others to create clients.

Luckily, their web implementation is fairly simple. There's one html form for login, another for sending message, and the session variables are being carried around in Cookies. With a little help of urllib and cookielib I was able to hack up a working code in a half an hour.

So here it is. I've been testing it under Cygwin/WinXP, but it should work everywhere. The command line usage is:

    vipsms.py user password phone_number 'text of the message'

Now, a GUI version would be cool. I'm using GNOME (at home; at work i'm on Windows, hence Cygwin), so I'll try to hack up something with PyGtk.