Bugzilla Permissions
Finally! I can’t wait until 3.0 final (or, rather, 3.0.1 or 3.0.2) is released. It’ll be nice to be able to properly restrict permissions on b.x.o.
Mail Clients That Don’t Suck
I really want a MUA that doesn't suck. I suppose "doesn't suck" is a bit prejudicial. I have a few requirements unrelated to suckitude that have to be met before I'll even consider a client, one of which being it has to be gtk2-based on X11.
For years I've used Thunderbird (and Mozilla Mail before that, and Netscape Mail before that). Like its cousin, Firefox, it tends to be a memory hog. It also has a bunch of annoying bugs: the in-memory message cache gets corrupted often if it has more than one connection to the IMAP server; folder names stay bolded (and they keep the new mail icon) if the mail was marked read from another mail program (e.g., on another machine). It also just tends to do weird things, like after a while spin the throbber forever, and never stop.
Don't get me wrong, Thunderbird is a great mail client. But I have a machine at work that only has 256MB of RAM. No, upgrading it isn't feasible right now. What I have to work with is... well, it's what I have to work with. With both Thunderbird and Firefox open, my system quickly starts swapping, and it kinda sucks waiting 30 seconds just to switch to another window.
I recently installed Claws Mail on my laptop (a renamed Sylpheed-Claws, apparently). I installed an older version, Sylpheed-Claws 2.6.0, on my machine at work, since that appears to be the latest version available on Ubuntu. Both versions seem to be a huge improvement over the last time I tried it (over a year ago, I guess).
Still, though, there are some major annoyances. When I'm sending mail (which seems to take a bit longer than it should), the entire UI blocks and I can't do anything else (like read other unread mail). That's retarded. I can't open the account editor dialog when I have any mail compose windows open. That's also retarded. It just cries "I was designed poorly". Fairly often, it'll get into a weird state while checking for new mail (on IMAP), and it'll hang there and not let me do anything without restarting. Occasionally it'll get into a different weird state where it just isn't able to check for new mail anymore without restarting. Occasionally it'll get into yet another weird state where it tries to check for new mail, but keeps reading garbage from the server, and sits there in a loop, and needs to be restarted.
There are some functional annoyances, too, like no shortcut (or option at all, as far as I can see) to mark all messages in a particular thread as read. There also doesn't appear to be a keyboard shortcut to mark all messages in a particular folder as read, but I suppose that's ok. I also can't mark a message read without opening it, unless I temporarily hide the preview pane, which is annoying. It doesn't pay attention to the concept of 'subscribed' IMAP folders, so I can't hide my spam folders (and unhide them once a month when I go through them). I prefer that the client not remember my password for me; however it takes my security paranoia a bit farther than I care about: if I ever get disconnected from the server, it asks for my password again. I'd really prefer that it just keeps my password in memory (mlock() is your friend), and forgets it entirely when I close the app.
Weirdly, even if I set it to convert HTML mail to plain text, it still displays <a> tags as if they were rendered as HTML. So for phisher URLs embedded 'underneath' a supposedly-legit-looking URL, you see the legit URL, and clicking it takes you to the phisher's site. I of course know better than to indiscriminately click on fake bank URLs, but why offer the option of ditching HTML if you're... not actually ditching HTML?
The PGP support doesn't let me assign particular recipients to which I want to always sign mail by default (it only lets you do that on a per-account basis). I like to sign messages I send to various OSS-related mailing lists, but not for personal correspondence. (Otherwise, I do like the PGP support here better than Thunderbird/Enigmail.)
On the plus side, it uses memory much more efficiently than Thunderbird does, and it doesn't seem to randomly lose mail from its cache. I've decided I'm going to try to use Claws Mail for a month before really deciding if I can use it permanently, just to give myself time to get used to its quirks (just as I've been spending years getting used to Thunderbird's quirks), but it's not looking good. Having to restart the client 3-5 times a day because it breaks in some unrecoverable way is not acceptable, though this may be a function of the slightly-older version I'm using on my machine at work. After I use the latest version on my laptop a bit longer, I may go to the trouble of compiling the latest version for my work computer if it seems like it would offer an advantage.
So, anybody else have any Gtk2 MUA recommendations? (I'll only consider non-Gtk2 clients if they're perfect.)
Update: I noticed that you can edit keyboard shortcuts, so I was able to add a ctrl+shift+c shortcut for marking all read, and I changed the 'next unread message' shortcut from shift+n to just n. I also changed 'check for new messages' and 'check for new messages in all accounts' to ctrl+t and ctrl+shift+t. This all mirrors Thunderbird, so I feel a little more at home. I'm still missing a 'mark thread read' action, though. Also, I found Ubuntu packages for Claws-Mail (on their website, oddly enough), so I can install the latest version on my computer at work and not be basing my opinion on an older version of Sylpheed-Claws.
On Pizza Toppings
I don't really understand the "everything on it"-type pizzas, or the people who order them.
A pizza is a sacred object. In its most pure and unadulterated form, it consists of the following: bread (crust), sauce, and cheese.
Anything else, and you have the potential to destroy it.
Now, I'm not saying I'm a cheese-only man (or extra-cheese-only, even). Every now and then I'll have them throw on some sausage, pepperoni, or chicken... maybe even some broccoli if I'm in a weird mood. Olives can add an interesting taste.
But why, oh, why, would you want to put seven different toppings on it? At that point, the essence of the pizza is only a memory. How can you taste the sauce (arguably, the most important part of the pizza)? How can you taste the cheese? If you've piled too much on, the crust might not even be able to withstand the pressure, and collapse. Then what are you left with?
And what of the cacophony of topping flavors themselves? How can you tell them apart? They just blend into one mass of strange homogeneous taste. It's not good, ladies and gentlemen. It's not good.
So, I suggest you step back. First, go cold turkey. Spend some time ordering nothing but plain cheese. Try a few different pizzerias. The ones who can make a great-tasting plain pizza are the ones who really have talent.
Of course, it also helps to live in a place where pizza is, on average, good (i.e., not northern California). But that's a rant for another day.
Naming Meme
YOUR ROCK STAR NAME: (first pet and current street name) Misty Camino
YOUR "FLY Guy/Girl" NAME: (first initial of first name, first three letters of your middle name) B-Jam
YOUR DETECTIVE NAME: (favorite color, favorite animal) Orange Cheetah (I don't really have a favorite animal, but that was the first one that came to mind.)
YOUR SOAP OPERA NAME: (middle name, city where you were born) James Neptune (I think this one actually sounds more like a cool detective name.)
YOUR STAR WARS NAME: (the first 3 letters of your last name, first 2 letters of your first name, first 2 letters of mom's maiden name) Tar Br Ki
SUPERHERO NAME: ("The", your favorite color, favorite drink) The Orange Guinness (I guess using a beer name is cheating, but my fav mixed drink changes often.)
NASCAR NAME: (the first name of both your grandfathers) Albert Arthur
FUTURISTIC NAME: (the name of your favorite perfume/cologne and the name of your favorite kind of shoes) Oldspice Sandal (Er, I don't wear cologne... oh well.)
WITNESS PROTECTION NAME: (mother & father's middle name ) Barbara Anthony (Awesome, I get to be a transsexual witness.)
Help: Firewire Enclosures
For a while now, I've been wanting to put together a small, quiet, low-power file server. Right now, I have a 1TB volume (comprised of 4 drives in a striped LVM set, so no redundancy) in my desktop machine. Since this box is also a (somewhat public) webserver and subversion server, I leave it on all the time. It's in my bedroom, and is somewhat noisy, so I'd be glad to be able to turn it off sometimes, but I still want the public services on it to be accessible all the time if possible.
The other problem is that I'm rapidly running out of space on the volume. Right now I have about 85 GB left.
NewEgg was running a sale on the Seagate 400 GB SATA II drive around Christmas, so I bought two of them. I want two more, but I'm waiting on a better deal.
My original plan was to build a very small box with no storage in it, based on a mini-ITX board (or something similar). I'd probably buy a 2 GB flash disk for the OS. For the actual file storage, I was thinking about an eSATA enclosure, but the hardware for this is rather expensive, as I'd need a SATA port multiplier, as well as the eSATA-related hardware. I really don't want to spend that much on it.
James suggested I look into Firewire 800 (aka 1934b). Since Firewire is daisy-chain-able, I'd only need a single Firewire port on the computer itself, and, in theory, it's infinitely expandable (well, not really, but close enough for my needs). The assumption here is that the bottleneck will be the network (even with gigabit ethernet), so 1394b would be able to pump out the data plenty fast enough.
To start, I need two things: a 1394b controller that works well with Linux, and a 4-drive enclosure with SATA-to-1394b bridges. Bonus points if it's fanless or otherwise very quiet, but I'm thinking I can toss this in a closet, so that's not a huge deal.
So I started poking around. I have a couple leads on a decent 1394b controller, at an ok price. However, I can't seem to find drive enclosures at good prices. I'd really like to spend around $100-120 on the enclosure. The best I can find is this qBOX-F, which is $190. And it's not even quite what I want, because it requires an IDE-to-SATA adapter. And if you look at the specs, it says it only supports up to a 400Mbps data rate. Useless.
Anybody know of any 4-drive Firewire 800 enclosures that do SATA on the cheap? $100-120 (or less!) is ideal, but I guess I'd be willing to pay up to $160 or so if I had to. Alternatively, should I just stick with the older Firewire 400? (Hell, if I'm going to do that, I might as well just use USB2.) Any other options to hook up 4 SATA drives externally that I can do in under $200?
Wage Gaps
John Bogle, founder of Vanguard, says:
Think about this, and these numbers are in the battle for the soul of capitalism. The real income of the average worker in America has gone, from 1980 to 2004, from $14,900 to $15,900, OK? Well the real compensation of the CEO has gone from [approximately] $400,000 to $6 million, many times over. The CEO is making a statement and it is, "I built this company by myself and all the people that work here didn't help at all. They are entitled to nothing." Well, that is absurd. I have been a CEO for probably 35 of my years, 55 years in this business, an awful lot of them. I know it not to be true.
Really makes you think about the rich/poor gap and the erosion of the middle class.
Xfce 4.4.0 Released!
This is just a copy and paste of my /. story submission, but whatever:
After more than two years since our previous stable feature release, the Xfce Team is proud to announce the release of Xfce 4.4.0. This release features our new file manager, Thunar, as well as many improvements and feature additions to Xfce's core components.
Head over to our brand-new website and take a look at our visual tour, or go straight to the downloads.
Xfce 4.4.0 Released!
This is just a copy and paste of my /. story submission, but whatever:
After more than two years since our previous stable feature release, the Xfce Team is proud to announce the release of Xfce 4.4.0. This release features our new file manager, Thunar, as well as many improvements and feature additions to Xfce’s core components.
Head over to our brand-new website and take a look at our visual tour, or go straight to the downloads.
Digital cameras, libusb, permissions, hal, and other annoyances
At some point in the near past, I stopped being able to access my Canon PowerShot S30 (yeah, it's an old non-PTP camera) as any user other than root. I poked around at the hotplug rules, and everything seemed ok. The device file in /proc/bus/usb was getting correct permissions, but still no good. I even tried setting permissions to rwxrwxrwx, and changing ownership to brian:brian, but still no luck.
So I googled, and googled, and googled. After reading through about 25 Gentoo forum posts, I came upon one thread with a post (at the bottom of page 1) that suggested something different: export USB_DEVFS_PATH=/proc/bus/usb. I thought that seemed somewhat redundant, but tried it anyway, and it worked. So, I thought, if /proc/bus/usb is no longer the default, what is? So I unset the env var, and ran gphoto2 through strace. I saw a bunch of attempts to open files in /dev/bus/usb. Wait... /dev? Sure enough, the device files in /proc/bus/usb are now duplicated as character devices in /dev/bus/usb, and of course the permissions weren't set properly there.
So I grepped through /etc/udev/rules.d for anything related to usb, and found the rule that was creating the entries in /dev/bus/usb. I modified it to set some of the stuff to 0664, with group plugdev owning (this group is specific to Gentoo). The final line, which goes in /etc/udev/rules.d/10-local.rules, looks like this:
SUBSYSTEM=="usb_device", DRIVER!="usbhid", DRIVER!="hub", DRIVER!="hci_usb", PROGRAM="/bin/sh -c 'K=%k; K=$${K#usbdev}; printf bus/usb/%%03i/%%03i $${K%%%%.} $${K#.}'", NAME="%c", GROUP="plugdev", MODE="0664"
The "DRIVER!=" bits are so it doesn't set the group and permissions on things like my mouse, keyboard, the USB hub itself, and Bluetooth. Since those "DRIVER!=" bits make that particular rule not match, udev will continue on until it hits the default rule in 50-udev.rules which will set it up for those devices.
Whew. Unplug the camera, plug it back in, and now gphoto2 works as my normal user.
Next I thought it would be cool if Benny's new Thunar volume manager would launch gtkam when I plug in the camera. So I enabled the option in the volume manager to launch something on camera connection, typed "gtkam" in the box, and plugged my camera in. Nothing. sigh
So, I know all of this uses HAL, so I opened up hal-device-manager to have a look. I found my camera in the tree, and, of course, there aren't any property strings in the device nodes that actually identify it as a camera. Great. Clearly, thunar-volman isn't going to know it's a camera if HAL doesn't identify it as such. But, I remembered a page out of the gphoto2 documentation that mentioned something about HAL. As it turns out, HAL ships with a .fdi file that identifies all PTP-type cameras properly (apparently they share common system, subsystem, class, etc. ids), but doesn't identify any older cameras such as mine. Fortunately, it told me what to do. First, run /usr/lib/libgphoto2/print-camera-list hal-fdi >90-camera-libgphoto2.fdi to generate a .fdi file. Then, move it to /usr/share/hal/fdi/information/90local/. Sweet. I unplug and replug my camera, and thunar-volman starts up gtkam. Finally.
Meh. So why was this so difficult? How come no one noticed that libusb changed its default device path to stuff under /dev/ instead of /proc/? I know this hasn't been working for months and months.
Anyway, it's done, and instead of going to bed more or less right when I got home, it's now 2am. Brilliant.
(On a side note, yeah, I know I haven't posted much in the past month. For those brave few of you who care, I'll get back to that soon.)
Back in Cali… Sorta
After a minor ordeal of a travel day, I'm back in Cali, kinda. I'm heading out to Las Vegas to go to CES Saturday morning.
I surprisingly had a great time being back home. There ended up being plenty to do, I met some new people, and saw a few people I haven't seen in a very long time.
I need to pack, and get some sleep. Aside from some minor dozing on the plane, I've been up for 25 hours, with only a 1.5-hour nap before that. No good.