haggholm: (Default)

I’m feeling oddly adrift in my Linux taste, these days. I wasn’t a Linux evangelist before, mind, but I would like to be able to answer with a recommendation if somebody asked me what distribution I think they should run. For a long time I would have confidently replied Ubuntu!, but right now I should be unable to do so unless their æsthetic sense differed radically from mine, for starters. I started this year an Ubuntu user. Right now I’m a slightly disgruntled Fedora user in search of something better.


My experience with Ubuntu started bright and turned better with the years. It was always intended to be easy, friendly, and ready out of the box. There was a time when I was too attached to the tweaking of my Gentoo days to appreciate it, but once I started worrying about two or three computers rather than just one desktop, Gentoo felt like too much work, and Ubuntu’s satisfactory out-of-the-box experience was a relief. Installing it is a snap: Always works, never causes trouble. Upgrades are smooth. Release updates were a bit of a jar from the rolling schedule of Gentoo, but they always went without a hitch, or at most very minor hitches. (Except when I chose to upgrade to beta versions, but if I choose a beta version I know I’m inviting potential trouble!)

The problem is that while Ubuntu has an exquisitely engineered distribution, what it actually distributes is less satisfying to me of late. In part I get annoyed by the tension between Ubuntu and the FOSS community—all the controversies over contributor agreements, playing poorly with upstream, demanding that other projects adhere to their schedules, and apparently picking their software stack based on political desire for control:

Since both init and Xorg are flexible enough to provide the sorts of improvements that Shuttleworth advocates, the suspicion is that such decisions are not technical, so much as political. That is, what concerns Ubuntu/ Canonical is not the technical merits of the applications, but its ability to dominate the projects that dominate its software stack.

The launch of Ubuntu One sort of cemented my generally suspicious attitude toward Canonical. Still, while I might not be wholeheartedly enthused by the company, the product still seemed good.

Until they launched Unity with no good fallback or alternative and in a fit of anger and disgust I left Ubuntu behind. People can claim all they like that it’s similar to GNOME 3. To me GNOME 3 is different than its predecessor, but looks sleek and polished and looks good on high resolution monitors. Unity expressly comes from a netbook project and a harebrained attempt to shove multimonitor, widescreen setups into a low-res netbook mold. Additionally, it looks like the OS X dock interface (which I heartily dislike), but redesigned and styled by ignoramuses armed with crayons rather than the expert UI designers at Apple.


For a brief while I played around with Gentoo again. I like it. I genuinely enjoy the fiddling I have to do to get a Gentoo system up and running, and I really don’t think there’s so much of it that it’s a serious burden. The emotional appeal of a system that I have customised is great; it’s the comfort of a carpenter whose tools have worn down by pressure and friction to fit his hand alone—I don’t pretend that my managing CFLAGS measurably helps performance for most applications, and even USE flags, though definitely useful, don’t affect me that much. But it’s comfortable and pleasing, as someone who cares about his tools. It’s also pleasantly familiar, as the distro on which I cut my teeth as a regular and moderately competent Linux user.

The problem is chiefly just that while I’m happy, nay, delighted to manage a Gentoo system, I’m not half as happy to manage three of them, and between work desktop, home desktop, and laptop, I would be. That’s too much repetitive work; too much time.

Minor problems include never quite being entirely satisfied either with stable (which is too far behind!) or unstable (which, though rarely, sometimes means a bunch of fudging and masking and version-specific flag management); and at the time when I last tried it, the fact that I was really kind of curious about GNOME 3 and Gentoo had no reasonable way of checking it out—it was faster to try Fedora.

So right now I’m not using Gentoo, but as always when I’m not using Gentoo, I sort of wish I were.


My experience with Fedora is mixed. Once I get a Fedora system setup and running, I have no complaints. It’s solid and stable and easy to manage and keep updated, as I expect from a Linux system. They stay up to date with software versions and follow upstream rather than going off on silly, Ubuntu-esque digressions, both of which I appreciate. Running it, then, is a pleasure.

But setting up Fedora is another matter. I’ve done it a few times this year, and while it’s fine when it just works, it—wait, no, I don’t know what that’s like. I actually think setting up Gentoo is more straightforward: It’s a lot of work, but it bloody well works the way the guide tells you it will. Fedora is simple in theory, but never seems to work out of the box.

This is what I’m currently running because frustrating as setup can be, I only have to do it every six months or so at the most, and in between it’s pretty much sunshine. But ye gods! are those intermittent periods ever exasperating! Installing a release version of a distribution should not be this error prone, and the upgrades? Disgraceful.

It’s kind of the antithesis of my view of Ubuntu right now, really. If I could run an Ubuntu installer and end up with a Fedora setup, then I’d be happy. That’s not what happens, though. Instead, what I get when I try to install Fedora (I say try, but there is eventual success), is a series of tales of woe I place behind a cut for your comfort.

Details of my Fedora install and upgrade woes )

Now, I’ll freely acknowledge that I’m a bit of an early adopter if I upgrade to the newest version the same week that it’s released, but I find all this very disappointing in what is supposed to be a release version, having gone through formal alpha, beta, and RC stages, with the final release even pushed back (I think twice) to resolve blockers. This load of issues, on three separate systems, is the result? I’m typing this up on a computer that is now finally running a perfectly beautiful GNOME 3 on Fedora 16, but it really shouldn’t take this much drama to get here. I’d excuse it if I were running Gentoo/unstable (excuse it, but be surprised to find it—the quality of Gentoo’s unstable branch would have to go downhill for that to happen).

Still, having tried the two biggest distributions (Ubuntu and Fedora) and found each wanting in its own way, I’m not sure where to turn next. Linux Mint? It is Ubuntu-based but seems less willfull and control-freaky, and the next version (due any day now) will ship with GNOME 3. Maybe that’s worth a try. openSUSE? Something else entirely?

haggholm: (Default)

Ubuntu 11.04 is released, with Unity as the default UI. I decide to try it out on my home desktop—it often serves as a (Windows) gaming computer, so I use it less for work of any kind (i.e. with Linux) than my laptop or my office desktop. Upgrading Ubuntu leaves me with the impression that Unity is actually worse than I thought: It looks like some horrible, developmentally challenged bastard offspring of OS X and a Fisherprice Toy, i.e. rather like an Apple computer except dumber and implemented poorly. Needless to say I am not impressed—it might be more accurate to say that I feel like my computer has been vandalised.

So I experiment with this and that. Gnome Shell on Ubuntu, though it’s not officially supported, and has a lot of hiccups. KDE in both a Fedora Spin and the Kubuntu version—it impresses me as having improved greatly since I last used KDE, but still holds no great appeal, not least because some features are so poorly integrated that the recommended solution is to install Gnome tools instead, notably NetworkManager configuration (go ahead, change your default connection to a static IP using the KDE tools).

I also decide to try Fedora 15, which is still in beta, with Gnome: They allegedly do a good job of releasing a desktop with the standard Gnome 3 Shell, which may or may not annoy me but is at least worth a shot. So I install that and find that the menus and launchers don’t work, but okay—it’s prerelease software and I haven’t updated the packages; of course there will be some issues at first. So I fire up gnome-terminal and yum upgrade and it starts installing hundreds of updated packages and…freezes mid-update. Well, it’s prerelease software and it’s replacing most of Gnome while I’m running Gnome, no biggie: I won’t hold beta crashes against anybody. Annoying to have to hard reboot, but it’s no worse than— Except it is, because on hard reboot, Fedora kernel panics early in the boot process.

Now here’s the interesting part. Not only does it kernel panic—my keyboard doesn’t work. And I mean at all—not in Grub, not during BIOS startup, not at all. I gather what can and probably did happen is that the OS sets a USB mode that the BIOS can’t use, but restores it during shutdown, which latter will of course not happen if you have to hard reboot. This is now a bit of a problem, because with the OS panicking on boot and my keyboard unusable, I can’t access the boot menu to start from CD, my HDD being the primary boot device; nor can I enter the BIOS setup to change boot order. To make things even better, if I disconnect the HDD, my BIOS cleverly decides not to boot from the secondary boot device (which would run a Linux live CD and probably load and restore USB functionality), but to issue an error message about a system disk being missing.

(On a side note, this is not a Linux issue. The same thing can happen if you run e.g. Windows. You just have to be really, really unlucky, regardless of which OS you choose.)

All in all, it has not been a good month for my computer.

I’m borrowing an old PS/2 keyboard from the pile of six such keyboards sitting on a shelf in the office, gathering dust; I doubt anyone will care if it goes missing for a day. With any luck at all, the PS/2 keyboard will work and I can change the boot order, load a live CD, reset the BIOS options, something to fix this damned thing. If I’m unlucky, of course, PS/2 will be disabled and I will have to reset the BIOS via hardware pins, if that’s even possible on my mainboard. Otherwise, presumably, it’s fucked and will need replacement.

I have to say I’m rather unhappy about this entire experience.

haggholm: (Default)

Do any of you guys know much about Apache and mod_rewrite? I could use some help.

Update: Chutz asked me the rather obvious question, had I tried turning off all the RewriteConds? The rather sad answer is that no, I’d missed that obvious debugging step. When I did, the RewriteRules worked… With a bit of help from a very high log level, it turned out that while mod_rewrite applies the RewriteBase to the URI (here, truncating the directory) when applying the rule, it does not apply the RewriteBase when matching against a RewriteCond. Thus, the solution is to write my rules as below, but to insert the directory name—the same directory name as the RewriteBase!—in the matching rules, e.g. ^/newsite/\w+.

I’m playing around with some stuff (on my local box, so far, though I’ll be replicating it at Webfaction…if I can get the damned thing to work) with a dynamic website that uses mod_rewrite to take extensionless URIs and turn them into script invocations (mod_wsgi, as it happens, moving away from the largely-deprecated mod_python). This works beautifully when I only have one site. Now, however, I want to have two sites in different <Directory> sections in the same <VirtualHost>, and things aren’t working so smoothly. In fact, as soon as I change my DocumentRoot to something other than the path of the <Directory> the RewriteRules seem to stop working, even without adding a second <Directory> section.

All I get for every request in the mod_rewrite log is a notification that it passed through: - - [03/Apr/2009:21:48:07 --0700] [localhost/sid#217fc08][rid#24dc068/initial] (1) [perdir /var/www/localhost/htdocs/wsgi/newsite/] pass through /var/www/localhost/htdocs/wsgi/newsite/index

(In the Apache error.log, of course, I get the expected error messages about requests for resources that can’t be found.) I’ve tried to add an appropriate RewriteBase, but so far to no avail. My current setup looks like this, and doesn’t work:

Listen 80
LogLevel info
LoadModule wsgi_module /usr/lib64/apache2/modules/mod_wsgi.so

WSGIPythonPath /home/petter/projects/newsite:/home/petter/projects

	ServerAdmin webmaster@localhost
	RewriteLog /tmp/rewrite.log
	RewriteLogLevel 2
	DocumentRoot /var/www/localhost/htdocs/wsgi
	<Directory "/var/www/localhost/htdocs/wsgi/newsite">
	        Options Indexes FollowSymLinks ExecCGI

		AddHandler wsgi-script .wsgi

		Order allow,deny
		allow from all

		RewriteEngine On
                RewriteBase /newsite

                # Really, really annoying; the trailing slash fixes don't seem
                # to work on the server's document root...
                RewriteCond %{REQUEST_URI} ^$
                RewriteRule ^.*$ test.wsgi?page=index [QSA]

                # Redirect .py files
                RewriteCond %{REQUEST_URI} ^\w+\.py$
                RewriteRule ^(\w+)\.py$ test.wsgi?page=$1 [QSA]

                # Redirect extensionless URLs, unless they're for directories
                RewriteCond %{REQUEST_URI} ^\w+$
                RewriteCond %{REQUEST_FILENAME} !-d
                RewriteRule ^(\w+)$ test.wsgi?page=$1 [QSA]

                <Files *.xml>
                    Order Deny,Allow
                    Deny from All

haggholm: (Default)

I’m a big fan of Gnome, but I know that KDE has plenty of adherents, and while I didn’t like KDE 3.x, I figured that now that it has reached version 4.1, it was time to give it another shot (it being widely agreed that KDE 4.0 just Was Not There Yet). So I read about Gentoo’s new sets feature, worked around a few bugs, and installed KDE 4.1. While I’ll shortly give you a brief list of grievances, the very very short version is that I’m currently uninstalling it and hoping that I can somehow undo the damage.

  • KDE 4.1 is very pretty. I’ll give it that.
  • It doesn’t understand multiple displays very well—I use NVidia’s TwinView system, which Gnome handles beautifully. KDE 4.1 sees it as one huge display…sort of.
  • Panels (like the task bar with a start-type button, and so on) don’t span both monitors. However, because KDE 4.1 doesn’t see the monitors as quite separate, either, there’s no way to configure a panel to be on a specific screen. I like my panels on my main screen. In Gnome, this is easy. In KDE 4.1, I spent hours failing to make it work.
  • The KDE 4.1 version of KMail, the mail agent, has one fatal flaw in its IMAP handling: When I open it, leave it open, and mark messages as read on another computer, there’s no obvious way to make it recognise those messages as read. Reloading the folder doesn’t do it. Restarting KMail doesn’t do it. Thunderbird and Gnome’s Evolution have no problem with this—in IMAP, read status is a server status, not client-side!
  • Konqueror still makes me want to use Firefox. So I do.
  • I am not moving away from Pidgin.
  • My main applications being GTK-based, and the menu interface of KDE 4.1 unfortunately annoying the hell out of me, I decided to return to good old familiar Gnome.
  • Installing KDE 4.1 broke my Gnome themes! Back in Gnome, things don’t look right. Why KDE saw fit to mess with Gnome theme settings, I don’t know.
  • Installing KDE 4.1 broke my menus! My menus are full of KDE items, with many important Gnome items gone. Notably, the settings items for things like theming and appearance are nowhere to be found, which is very irritating given the above item.

Having uninstalled all the kde package sets and removed all packages whose names start with a k from my package list, it’s now time to try to get my beautiful Gnome system back in order. It took no effort at all to get it to work in the first place, so one small comfort is that at the cost of losing theme settings, custom menu setups, and some application settings, I can at least blitz the settings and get a sane default.

With Gnome, that is.

haggholm: (Default)
  1. Find someone to borrow a screwdriver from.
  2. Open computer.
  3. Notice that harddrive blocks long PCI-E card.
  4. Move harddrive.
  5. Physically install PCI-E card.
  6. Boot computer, note kernel segfault, wonder if it was caused by yesterday's update or the new card.
  7. Reboot with the last kernel version, note kernel segfault, conclude it is indeed the card.
  8. Realise that onboard video is still enabled.
  9. Reboot and disable integrated video; boot and note kernel segfault.
  10. Check BIOS and discover that if you set onboard video to disabled, the setup will ignore you. Briefly curse ASUS.
  11. Remove PCI-E card, boot, and search for solutions.
  12. Discover that the problem is that incompatible kernel modules are loaded (intel_agp and the NVidia module for the PCI-E card).
  13. Briefly curse Ubuntu for providing no easy kernel module management.
  14. Figure out that you can force udev to refuse a module, even when autodetected, by blacklisting it in /etc/modprobe.d.
  15. Profit!


Mar. 2nd, 2007 01:28 am
haggholm: (Default)

Thunderbird is beautiful. Unfortunately, Enigmail totally fails to PGP sign my outgoing messages.

Evolution is not beautiful. Unlike Thunderbird, it cannot connect to LDAP servers via SSL. However, also unlike Thunderbird, it PGP signs my outgoing mail if I ask it to. It's incredibly problem-free, in fact.

If anyone knows how to combine the advantages of these two mail clients, please tell me. I am very tired.

haggholm: (Default)

So. I'm not entirely happy with the aging hardware of Odin over at cs.ubishops.ca, and not only is money to replace and maintain it hard to come by, but let's face it, I graduated from Bishop's over a year and a half ago—eventually it seems proper to cut some of the ties. I have my own little server sitting in a closet in the form of castleblack, my old Athlon XP desktop, but desktop hardware in a closet is not the ultimate in reliability. Given how dependent I am on these things, I really ought to invest in more.

There are a few problems, though. One is, ironically, that there's so bloody much choice! Monopoly is bad, monoculture is bad, but search for webhosting and you'll find thousands of webhosts. Search for search tools to help you find webhosting, and…well, I'm just lost, dazed, and generally confused. I don't know where to start looking to find the features I need at the prices I want. And that's not even getting into what hosts are actually reliable and trustworthy!

Problem number two is that my needs are rather specialised. I need simple webhosting, yes; with PHP, SQL (preferably Postgres but I'm not picky), and CGI (at least Python). This is pretty basic. I also need email with IMAP access. Not too hard, either. However, what I'd really like to do is to replace not only my Odin account, but castleblack as well. Now, I use castleblack for a few things. I keep an IMAP-enabled mail server on it to centralise my email archives, for one. A host that offers IMAP access will do nicely, as long as they offer enough space—my archives are 327 MB and constantly growing, of course. Something I want to use castleblack for is a contact list in the form of LDAP, but OpenLDAP is, pardon my French, a bitch to configure, and setting up an SSL enabled LDAP server and getting it to work on the client side…well, no success so far. So I want a webhost that offers

  • Standard webserver stuff (HTTP, PHP, CGI)
  • Python CGI (not too bad but less common than perl)
  • Email with IMAP access
  • At least 500 MB of space right now; call it 1000 MB for a safe margin
  • Configurable LDAP (give me phpldapadmin and I'm golden, just give me a properly configured openldap setup because I'm clearly incompetent to set one up myself)
  • Bonus: A calendar server

Just to further complicate matters, I do use castleblack for one more rather notable thing, which is to host a subversion repository that contains my entire home directory. Although it could do with some cleaning, it presently weighs in at 1.9 GB, so I'd want no less than, say, 3 GB (again, I want plenty of room to grow!) for a grand total of 4 GB of space and subversion on top of the features I have already listed. The space is not so unrealistic—I actually found a host that offers 15,000 MB for only $4 a month or so (but not so many features). The feature list, however, especially LDAP and subversion…I don't know. I'd be all right with hosting the subversion repository on my own, though, if I could offload everything else. It's easier to back up, anyway, and I don't know what the bandwidth requirements are. I should probably look into running a bandwidth analyser on castleblack. I'd also be willing to consider other revision control systems.

I have a feeling this is asking rather a lot. On the other hand, in the enormous deluge of webhosts out there, maybe there is one that offers what I need? I don't know. I tend to lean in the direction of dedicated virtual servers or even colocation just because it's so bloody hard to find what I need, but the truth is, I'd probably be happier if I could find a proper host that could do the configuration for me. Yes, I like playing with computers, but I can do that at home. If I could offload all my important data (svn repository + email) and have someone else vouch for its safety, with regular backups and so forth, that'd give me some peace of mind (and make tinkering optional). Also it might give me LDAP that actually works. I'm not closed to these ideas, but I should consider all the options. Or, rather, at least all the major categories of options…

I don't know what the cost tradeoff would be. castleblack is free in a way since it's just old hardware I had more or less lying around, but honestly, I could probably sell it used even today and get a year's worth of hosting somewhere, and the added safety and reliability would be worth it.

So. Does anyone have any suggestions for me? HELP!

haggholm: (Default)

Do not compile the recent Gaim beta versions with USE="mono". I've never had Linux software crash so often in my life. (Both honesty and advocacy compel me to add the observation that I've very rarely had Linux software crash at all, except when it's been entirely my own fault.) On the other hand, since Chutz suggested I recompile with USE="-mono", I haven't had a single problem with it.

haggholm: (Default)
Compiz is starting to get pretty solid. I'm actually thinking about switching to it as my standard window manager on my desktop (how to do it in Gentoo)—the one thing I'm missing is Metacity's “[always] on top” feature for windows. It does have a lot of cool stuff, though—the Exposé-like application switcher (the Scale plugin), live window previews with Alt+Tab, and of course all the eyecandy. Being able to see a movie play through the browser window where I'm typing this mostly makes up for not being able to fix the movie on top. Being able to run an OpenGL game like Chromium B.S.U., have it partially transparent, and idly watch Space Balls through it, spin the cube, and still not hit 30% CPU usage is just damned cool.

Incidentally, while I am aware of Beryl and (peripherally) the reasons for the fork, I'm not aware of any compelling reasons favouring either Compiz or Beryl over the other, so I'm sticking with Compiz for now, simply because it's the first one I came across (and the older). If anyone has any pragmatic reasons why I should switch, feel free to enlighten me.

I'll run this for a few days and see if it's stable. Performance and appearance are certainly satisfactory, and well beyond satisfactory.
haggholm: (Default)
NetworkManager is in the tree, and it is Good. (See Luis Medinas's post on how to get it working in Gentoo.) Unlike the version in the overlays, this one actually works for me—consistently. Hell, I can even connect to the ubcsecure WPA protected campus network (sparing myself an annoying login screen), and I've never managed to connect to that before. (I'm told a lot of Windows users have issues with it, too.)

Oh, and NetworkManager finally seems to store its keys properly in GNOME's keyring. This, too, is Good.
haggholm: (Default)
Actually, I wrote two of 'em, and mostly just for the learning experience. I've written a number of scripts to ease system administration for myself; a lot of them are throwaway (and a lot of them I have, in fact, thrown away). A couple of them I do use on a regular basis, so … well, if I'm mirroring all my documents, why not my admin scripts, as well? I was going to drop those, too, into subversion, but I realised that there's a much more elegant method of deployment: It's what the portage system is for, after all! So I spent an inordinate amount of time figuring out how to write ebuilds, install the scripts into the proper locations, and so forth. Bear in mind that the two simple things I've done this for so far are also among my first bash scripts of anything but the very most trivial nature. (In order words, pardon me for the suckage.)

One of the packages is a set of two scripts I use for taking and collating course notes, using LATEX, of course; one autocreates files based on the date (and opens them in my editor of choice), the other collates them into a single PDF document with appropriate sections.

The other is a script to synchronise all my various package trees, which was sort of useful before layman when I had it automatically `svn up` a couple of repositories (Gentopia, the Liferea overlay …), as well as (of course) running emerge --sync. Now … well, now it's really just a matter of sticking a script in /etc/cron.daily with emerge --sync ; layman -k --sync ALL. My script does have one feature that's actually useful to me, though, due to my laptop's special circumstances. My laptop uses an Intel wireless chipset. I'm happy about this because the drivers are nice, free, and open, and available from http://ipw2200.sourceforge.net/ or as net-wireless/ipw2200. Of course, they install a kernel module, so I have to remember to rebuild them when I update the kernel. If not, well, my wireless won't work. This is a bit of a problem if I update, forget, and reboot, as I need the driver source to get a connection but I need a connection to get the driver source … My “master-sync” script makes sure that I always have the sources for what I call ESSENTIAL_PKGS saved where they won't be cleaned out (and symlinks them into /usr/portage/distfiles … err, or did I make it hardlink them? They should probably be symlinks …).

Normally, eclean would handle this very nicely, as you can ask it to save the latest versions of installed packages. Unfortunately, my laptop's root partition isn't very big—not, in fact, large enough for me to viably save the latest versions of all installed packages. Therefore, I have a cron job that deletes everything from /usr/portage/distfiles that's older than three days … solving all my problems with disk space but also deleting my wireless driver source. Now, well, problem solved.

Now, I don't actually expect that anyone will find these scripts particularly useful; they're crude little things that I tossed together in a few minutes, and that are pretty much custom tailored to my very specific needs. Still, it was a nice learning experience for me: I learned how to write basic ebuilds, and I learned how to set up a tar-based layman overlay. (If, for some obscure, arcane, or generally absurd reason, you want these things, they are available at http://cs.ubishops.ca/~petter/software/, or you can add http://cs.ubishops.ca/~petter/software/overlay.txt to your /etc/layman/layman.cfg and layman -a petter-haggholm, but really … there's nothing very interesting there right now.)
haggholm: (Default)
  • I just realised that the reason I set up a subversion server in the first place (paving the way for my homedir repository) is that I couldn't get a subversion repository on the department's servers. Essentially, I would ask my supervisor, Norm, about it; he would give me some names of people who talk to. Unfortunately, they would generally tell me to talk to Norm. I foud it much easier to set up my own subversion repository than to deal with these people problems.

  • On the other hand, I need a space in the lab. I'm making a general effort to organise my life—hence all this document synchronisation, my online calendar (iCal), and so forth; in order to work effectively and/or efficiently, I need a proper workplace. Months after getting kicked out of the bullpen, I still don't have a desk … time to fix it. Hopefully I should have something by next week.

  • Karate is picking back up—the fall session is officially running; we now have three practices a week again, rather than just one (though I am grateful to Joel for coming out to UBC once a week all summer to lead our practice—one could hardly have blamed him had he wanted a break from it!). There are also lots of beginners, some of whom may even stay. I found it interesting to note the effect so many raw beginners had on my own practice. I found myself focussing harder on doing things right, with two reasons beyond the usual ones; one good and one bad. The “bad” reason, I must confess, is some degree of ego: I don't want to look bad in front of a bunch of beginners. (This is especially stupid as, merely one year into it, I'm very much a beginner myself.) The good reason is that to these students, I am a senior student (albeit less so than many others), and I don't want to show them the wrong thing when I am one of the many people they may attempt to emulate. (Hopefully, they will strive to emulate me much less than—well, pretty much anyone else. But still …)

  • A consequence of the above appears to be that I've actually been doing some things better this week than I think I have previously. No large changes, just a little less effort in some of the moves, better balance in some things that I tend to mess up to remarkable degrees … I don't know if it's even visible, but I feel it. I guess extra motivation is never a bad thing.
haggholm: (Default)
I'm a multi-computer user. I have my laptop, because a laptop is a damned handy thing to have, but I wouldn't willingly part with my desktop, because I like having a system I can incrementally upgrade, load up with extra hard drives, keep a Windows partition for gaming on, and so forth. I may soon start using an office computer, too, bringing the number of my actively used computers to three. This is all very convenient, except for keeping things synchronised across different systems.

There are lots of ways of doing this. I should know; I have used several and am using several more now. One, a very bad one, is my original way, used not because I ever thought it was intelligent but because it doesn't take any setup: Copy over all pertinent documents, copy them back and forth as needed (whether on a USB drive, or by ssh/scp, or by emailing it to yourself, or using online file storage, or …). The problem with this is … well, it sucks. It's work intensive and awkward and it's easy to forget. Here's how I improved upon this terrible solution …

If you're not a geek, you may want to skip the rest of this post. In fact, if you're not a serious geek, you may want to skip at least to the last section.

Home directory management with subversion (geekiness alert: high) )

rsyncing large, centralised files (geekiness alert: high) )

Centralised internet services (geekiness alert: medium) )

There are possibly minor errors in this post (I wrote it after the fact, as it were, rather than copying the actual live commands). If there are, and if you point them out so I can correct them, I will send you a cookie.
haggholm: (Default)
The Linux desktop gains eye candy, and oh, gods, does it ever look nice!

The free software world has long been playing catch-up in this area, but this time it feels like the next version of Windows has been obsoleted half a year before it's even released.
haggholm: (Default)
rlocate is a really nice locate replacement which places hooks into the kernel to update its database on file operations. (Presumably this slows things down a smidgeon, but since we know disk operations are slow as hell anyway, I don't particularly care.) Since this will give us a locate that not only finds files nearly instantaneously, but also has a database that is never out of date, I think it's a rather nice idea.

It's in Portage, of course.

Note: I haven't used it yet. I just like the idea, and if it works as advertised and causes no problems, I'm going to use it.

Addendum: Now installed and running. The ebuild did not create the database, so I had to run rlocate -u (to create the database and index my entire filesystem). Now it should take care of itself by running rlocated and a daily updatedb cron job (the database will always be up to date, but it's managed as a diff, so unless you updatedb regularly, it will slow down; with the cron job you're probably already running, it will be fast and accurate, if it all works as advertised).
haggholm: (Default)
Brief geeky bit: Since I began to use Xfce on my laptop, I have come to love a little utility called genmon—a generic monitor plugin which displays information created by an arbitrary program on your panel—with a user-set update interval, of course. In my case, I don't have a CPU temperature monitor—but I do have ACPI, which provides the current temperature in /proc/acpi/thermal_zone/THM/temperature. Its content takes the following form:
temperature:             42 C

Obviously that's awfully long to display on the panel (especially given the whitespace), but I can use a very simple script to parse it (I called it temperature.sh and placed it in /usr/local/bin, just so other users can use it if I ever add other users ...).
{ read label data rest < /proc/acpi/thermal_zone/THM/temperature ; echo $data C ; }

Then I just make genmon display the output of this little script every 30 seconds.

I'm not sure what I'd use this for on my desktop, where I run Gnome and have a perfectly good temperature monitor already, but I love the concept of it. I wonder if Gnome has such a generic monitor?
haggholm: (Default)
Firefox users: If you are using the Tabbrowser extension, try uninstalling it and giving Tab Mix a shot instead—it seems to have most of the functionality (it now does everything I wanted from my tabbed browsing extension, anyway), but is free of Tab Browser's godawful sluggishness (hopefully it'll prove more stable, too).

Internet Explorer users: What on Earth are you thinking? Go get Firefox now. Then get Tab Mix.

Also, I decided to forego Gnome in favour of Xfce for my laptop, because Gnome is kind of large and clunky (I don't mind it on my desktop, which is fairly powerful and has oodles of space, but I don't want it on this machine), and Xfce is nice. Other than being a much lighter but very usable desktop environment, its window manager already supports the X.org Composite extension—of course, not many applications are able to make use of features like transparency yet (I want a terminal emulator with a transparent content window, damn it!), but the foundation is there; window drop shadows are there (and other than being eye candy, they do add a visual cue to window layering ... extremely minor detail, I concede, but I quite like it); and the dock is transparent. (Which doesn't do much, but shows that, yes, it does indeed work.)

Addendum: skippy (or skippy-xd for us with working composite managers; Gentoo users, get your ebuilds here for the nonce) is kind of neat; an Exposé-like program.
haggholm: (Default)
I seem to do random, infrequent but relatively lengthy (and occasionally incoherent) updates lately. What new?

I really haven't been doing much lately. Not nearly enough, I should say. I'm frankly rather astonished that I have not been driven entirely insane by it—usually any extended period of inactivity will. Much as it has been partially mitigated by my recent semblance of a social life, however, I think it is getting there; I need to pick up a project. Perhaps I'll investigate RentACoder. I also strive to motivate myself to not eat such crappy food all the time (mostly successful; I eat less crap, more real food, occasional vegetables, and recently oranges) and not be in such awful physical shape (we'll see how that goes; at least I manage to make myself go swimming two or three times a week, though it's sort of aggravating sometimes—I like swimming, but I hate swimming when it's crowded and I can't get a lane to myself).

On the aforementioned social front, something rather amusing happened the other night. Chutz, Shahn, Michaela and I went for a walk in the woods (a generally enjoyable experience; it was night-time and we used flashlights when the moonlight did not suffice, though it usually did; we ended up walking for what I believe was something over two hours). Afterwards, we all ended up joining Michaela and her two roommates in attending some nocturnal gathering—a party involving a bonfire. As it turned out we arrived at what I label the ass end of the party and some bad things happened (not "people got hurt" bad, but "property damage" bad; I shan't go into details here—suffice to say that my group left fairly soon and less than completely content). Nevertheless, I had a briefly good time.

Stepping back to empty my shoes of sand, I made some remark to a girl sitting nearby—something sarcastic and at best very mildly witty about the finest minds of local academia gathering to burn couches—to which she responded with gales of laughter (whether because she was drunk enough to actually find it hilarious or in an exaggerated display of polite amusement I do not know; I do know it wasn't that funny), and a conversation ensued. As an aside: To me, this is a big deal. It should come as no great surprise to anyone if I say I am usually not the most adept at striking up conversations with strangers ... Anyway, once the subject turned to introductions and I told her my name was Petter, I was surprised when she thought for a moment and said "Aren't you Dave's old roommate? The artist?"—she was an old friend (or girlfriend? I wasn't entirely clear on the matter) of my roommate back when I lived on campus. Thinking to myself that this was a mildly curious coincidence, I was rather astonished to learn that she was there in the company of no less than two Swedish girls. I haven't had an in-person conversation in Swedish in some time; it was rather amusing. (Also, I've never declined a bong in Swedish before, but never mind ...)

On the topic of social occasions, and working chronologically backwards for a moment, the previous day had also been rather pleasant (though without property damage). In the morning, my roommate asked me whether I would like to go see Episode III; I did, and invited Michaela along for the ride. We watched the movie (I kind of liked it; I'm not going to analyse it here—I'm not a hardcore Star Wars fan; I reserve that sort of nerdiness for The Lord of the Rings); afterwards, she stopped by here briefly before going home to eat. I had to go to the grocery store, so I walked her down; she joined me in the grocery expedition, and quite unexpectedly we ended up getting some salmon shish kebob, a baguette and a (fairly small and quite cheap, admittedly) cooked lobster. A very small barbecue was had; food was good, and Michaela was introduced to the pleasures of eating "cute" little crustaceans (though she insisted I do the picking apart).

Closing that social topic, Scott needs to hold another poker game soon (hint hint). I leave in little over a month; I have to get some opportunity to interact even with very busy friends ...

On a final note regarding an issue mentioned in the last update, formal graduation decisions have been made, and on June 11, I will graduate as a Bachelor of Science (Honours in Computer Science, Minor in Mathematics), "with distinction"—not sure what that means, but it sounds like it's a good thing, so I'm glad. (Arrangements have been made for the Records Office to send copies of my final official transcripts to UBC once I graduate.)

On the geek front, I'm getting a laptop and a USB 2.0/Firewire hard drive enclosure (with a 160 GB Seagate). Also, I have set up a 32-bit chroot environment on my main box (that was surprisingly easy; bind mounting is my friend) and seriously need to do something with my old machine, which in spite of having quite decent hardware is presently serving as my bedside table, upholding my alarm clock and some paperwork.

That was an extraordinarily anticlimactic finish, but I've naught else to say for now.
haggholm: (Default)

  • After many months of waiting and several supposed and alleged deadlines missed, ATI finally released working drivers for Radeon cards on AMD64. It works just fine. Unreal Tournament 2004 runs beautifully, and once the numbskulls at CSN actually pay me my student loans, I'm very likely buying it.

  • My printer works with CUPS. No idea what I did wrong before; I don't think I did anything really differently—but it works now.

  • My scanner works! There was never a working SANE backend for it, and I had quite given up; I was searching eBay for a scanner that the compatibility list does claim has at least "good" support. Imagine my surprise when I cross-check with the compatibility list only to find that a newly written driver has not "basic", not "good", but "complete" support for the scanner I already own! And of course, this is how things should work. Knowing that I want the backend and frontend portions from the SANE project, I do the following:
    emerge sane-frontends sane-backends
    ... That's all it takes, and just like that, the Gimp picks up my scanner. Who said Linux wasn't user friendly?


RSS Atom

Most Popular Tags