Monday, May 26, 2008

Packaging Bricolage

I've been very occasionally working the last several years on packaging Bricolage, a CMS written in Perl (and implemented using Mason). Unfortunately, until very recently, Bricolage would only work on Apache 1 (and mod_perl 1). That has (finally) changed with the recent release of Bricolage 1.11.0.

Recently, I've been putting in a lot of time just trying to build a package, and I finally have something that will build and install (source rpm). I don't pretend even for a moment that it will work, but at least it's a start. (It also doesn't make rpmlint at all happy, but I'll get to that...)

At this point, I could really use some help getting the package to work, testing it, etc., so it can be submitted for review.

Saturday, May 24, 2008

I'm in love.

My ThinkPad X300 showed up unexpectedly a couple of days ago. (There's a shortage of the things, so even though I ordered it a few weeks ago, I still wasn't expecting it for a couple of weeks. Luckily, since we're a reseller, our Lenovo sales rep expedited the order a little bit.) I need to use it a little more before I do a complete review, but I wanted to share my first impressions while I can still remember them.

First of all, it just seems bigger in real life than it does in pictures. It's definitely much lighter than the average laptop. (I'll be curious to see how much the 6-cell battery and the "Option Bay" battery, which replaces the optical drive, change the feel of the thing. We forgot the Option Bay battery on the actual laptop order, so we ordered it separately later. Neither of the bigger batteries have shown up yet.)

The weird part is that it feels totally normal. Everything is proportioned like a bigger laptop, so unless you set it next to a full-sized laptop, it just feels natural. Plus you get a full-sized keyboard, which anyone used to a ThinkPad should appreciate. (I have to note that this is my first ThinkPad, so I'm hoping the escape key won't bug me too much.)

So far my only complaint is that I don't seem to be getting anywhere near the advertised battery life, but there could be a lot of reasons for that, and I haven't really looked very closely at the problem yet. (For all I know, it could be some side-effect of something on Fedora 9.) (Update: It turns out I'm still waiting for the 6-cell battery to ship, so I've just been using the 3-cell. The 2-2.5 hours I'm seeing are still around half what is advertised though...)

Speaking of Fedora 9, I did my first fresh install of F9 on the X300. I have some first impressions of it to share as well, but I think I'll do that in a separate post...

In the mean time, I think I need to go shopping for a new laptop bag/case/backpack/whatever. I'd love some suggestions from X300 owners...

Saturday, April 12, 2008

imapsync

I'm working on a job today where we might need to use imapsync. I didn't see it in Fedora (or in the package review queue), so I whipped up a package for it (unpacked). I doubt I'll have time to submit it soon, so if anyone wants to run with it, you have my blessing. (Cc me on the bugzilla request so I'm aware of it though, please.)

There are some UTF-8 warnings from rpmlint that need to be fixed. See the comments at the beginning of imapsync.spec.

Monday, March 10, 2008

YAPC::NA 2008 abstract

This talk will cover the current state of Perl development in Fedora (and, by extension, RHEL, CentOS, etc.). Topics will include the following:

  • Status of Perl on Fedora
    • Perl SIG

    • Number of Perl modules available in Fedora and EPEL

    • What we have and what we're missing

    • Licensing

  • Using Perl packages
    • Using virtual rpm dependencies

    • yum, repoquery, etc.

  • Packaging Perl modules
    • Generating packages using cpanspec

    • Building packages with rpmbuild

    • Using mock

    • Checking for problems with rpmlint

    • Submitting packages for inclusion in Fedora

Wednesday, January 30, 2008

And the fun continues...

I have desktop effects in KDE 4! For a while, it seemed like no matter what I tried, kwin gave the following error:
Failed to create Scene object. Compositing disabled
The solution was to turn off Xinerama and switch to using TwinView. I can't say that I'm thrilled with that, but since I only have two monitors on one video card at the moment, it does work.

Oh, and I'm learning to like the yum-skip-broken plugin... It makes yum a fair bit slower than usual, but a slow (but working) "yum --skip-broken update" is better than a failed "yum update".

Friday, January 18, 2008

Rawhide eats babies - Film at 11

So since moving into the new store, I haven't been doing as much Fedora work as I'd like (or need to). I thought I might kick myself in gear a little if I tried actually running rawhide on my personal desktop.

As an aside, I should note that the box in question has been hand-upgraded since Slackware 2.0 in July of 1994 when it was a 386SX/16. Sometime in 1995 or 1996, I converted the box from a.out to ELF by hand. Then a few months later I installed rpm so I could install some interesting applications that were available in Red Hat Linux. (By this point I was running RHL on all of my newer systems.) At some point, I converted my initscripts over to RHL-style SysVinit and ran almost entirely RHL packages. I never ran the installer for upgrades (doing upgrades by hand with rpm at first, with apt later) until I upgraded from FC1/i386 to FC3/x86_64. Since then, all my upgrades have been done with yum. (Oh, and the box that started life as a 386SX/16 is now a dual dual-core Opteron 265. I think it is on its 8th motherboard. I'm about due for the 9th, but that's another story...)

So, anyway, I was running Fedora 8, fully updated, so I tried just doing "yum --enablerepo=*development update" (the "*" so I'd get livna too). That didn't work for some reason I don't remember now, so I thought I'd try breaking up the upgrade into smaller, more managable chunks. I started by doing "yum --enablerepo=*development update yum* rpm*". That didn't exactly work.

At least rpm still worked. I manually updated apt. It was working fine for a little while (although dist-upgrade wouldn't quite work due to some confusion between packages being renamed/replaced, multilib weirdness, etc.) but then when I finally came up with a small transaction for it to run (hoping to get yum working again by upgrading python and a few other things), it complained about size mismatch on some packages on my local mirror. After holding some of them to try to get around the problem, all of a sudden apt-get would hang on any command and suck 100% of the CPU.

So, understandably a bit frustrated at this point, I decided to try smart out. The GUI crashed repeatedly. It filled up /var copying repodata off my NFS-mounted mirror. When I finally got around all that, it had the same problems "apt-get dist-upgrade" did.

So I gave up on smart and decided to try to get yum working. Obviously there was just a missing dependency somewhere, probably just on the newer python in rawhide, but unfortunately the newer python required a newer openssl, which means upgrading just about everything. So after cleaning up a bunch of unnecessary i386 packages, I cheated and installed the newer python, openssl, and a few other things with "rpm -Uvh --nodeps". (Note: Don't try this at home. I'm a professional.) Guess what? After all that yum blew up with the same error as before.

So back to apt. I uninstalled apt entirely, moved my /etc/apt/ out of the way, and reinstalled apt. I recreated the bare minimum configuration that I needed. After that, apt-get worked again! (Something finally worked right!) I did a "apt-get -f install", which sucked in most of the packages from rawhide, and it worked! And yum even worked! Next, I tried "apt-get upgrade". That worked, although it held back a lot of packages. When I tried "apt-get dist-upgrade", I started getting size mismatch errors again.

So I went back to yum. A yum update got me completely upgraded. Time to actually start testing...

I restarted X. Well, I tried to restart X. Guess what? The nvidia binary driver doesn't play nice with the newer Xorg server. So I tried nv and nouveau. Neither would drive my second monitor. (I run a dual-DVI 7800GT.) So I went back to the nvidia binary driver and downgraded X to the Fedora 8 version. Luckily, that actually worked.

I have a whole list of things that are messed up in KDE 4(.0.0, as I'm sure every KDE fan including myself would be quick to point out). In no particular order:
  • In general, things (panel, desktop stuff) aren't Xinerama-aware.
  • The panel won't auto-hide, resize, or otherwise not be in the foreground.
  • The Oxygen kwin theme doesn't seem to be configurable. It's nice and all, but the window borders are way too wide, and I'd really like a color change in the title bar or something else really obvious to let me know which window has the focus. That, or somebody needs to implement focus-follows-eyes.
  • Desktop effects don't work for me. I'm still trying to figure this one out. (Could be related to this. I'm still using version 100.14.19 of the nvidia driver from livna. The 169.07 driver made etqw crash.)
In other news, Firefox (or, as it refers to itself, Minefield) looks nice. It seems to run really well in fact. Unfortunately, the only extension I use that has been updated for Firefox 3 is Flashblock. Ironically, the flash plugin isn't actually working though. (In the process of upgrading, I ditched 32-bit Firefox for the 64-bit Firefox though, so I might just need to work a little to get nspluginwrapper working. At least I hope that's all it is...) (UPDATE: The applix-libs package installed in 1998 was mistakenly providing libXt.so.6, libSM.so.6, libICE.so.6, and various other things it shouldn't have. Apparently I had removed the correct versions while upgrading. Reinstalling those libraries made flash work again.)

On another positive note, I ran (package naming guidelines-violating) OpenOffice.org not-quite-2.4.0 briefly to look at a resume someone sent me, and it looked nice and ran fast, so no complaints there.

Oh, and etqw hangs after a while, but it started doing that on Fedora 8 + updates a couple of weeks ago, so I expected that. (It crashed entirely with 169.07. Backing off just the nvidia update made it only hang. Good thing I still have an un-updated laptop I can run the game on... :-)

Thursday, January 10, 2008

Goodbye Perl6::Bible. Hello Perl6::Doc.

Ralf and I seem to have discovered independently at nearly the same time that the Perl6::Bible "module" is finally being replaced with Perl6::Doc. I have a perl-Perl6-Doc package sort of ready, but I am not sure what to do about a few things.
  1. Do we bother to obsolete the perl-Perl6-Bible package? I wouldn't be surprised if I was the only person who bothered installing it.
  2. If we obsolete the perl-Perl6-Bible package, should we symlink the p6doc script to p6bible on the off chance that anyone was using the p6bible script?
  3. What do we do about the name conflict with the p6doc script included with Pugs?