Archive for the ‘Linux’ Category

What I’ve been up to

Thursday, April 19th, 2007

It’s been a while since my last post, so here’s what’s been going on.

  •  Very busy working on Conary (though still not making progress fast enough through my issues list).
  • Speaking of that, I’ve reached the respectable 6 months with rPath.
  • Moved over the weekend.
  • Packaged gnucash 2.1.0 – and hit some guile issues in the process. Hopefully will finish tomorrow.
  • Does “April 17th” tell you something?
  • Before moving, a bunch of repairs made – that was all my spare time went.
  • Ran an orienteering event at the Schenck forest (and I missed a bunch of controls). Got to cross a 20-ish-ft river over a rotten log 3 times before the heavy rain started. I was completely soaked when I finished. But it was fun.
  • Did not run as much lately because of my evenings being “a different workout”.

The Mercurial Plugin for Jira (or Read the Code, Luke)

Wednesday, March 21st, 2007

As Matt (the author of the Mercurial plugin for Jira) pointed out in his comment, there was an issue with the permissions for the plugin. Seemingly random people were able to see the Mercurial Commits tab, and all along I thought I messed something up when I ported the plugin from Jira 3.6.2 to Jira 3.6.5 and then to Jira 3.7. (Yes, I know Jira 3.8 is out, we didn’t schedule the migration yet).

Lately I’ve been busy closing bugs in Conary land, and haven’t got the time to go back and investigate what’s going on. Last week I finally decided I should look at the code – and it became very obvious. There is a View Version Control permission that controls who can see what, and it turned out only several groups were granted that permission. We’ve only allowed access to commits to internal users for now, but that may change in the future.

Also, yesterday I noticed that Jira was not indexing the Mercurial repositories anymore. As usual, catalina.out is full of useless messages, so reading the code again pointed out that I got the configuration wrong. Funny it did work at all. Turns out hg.clonedir.idx is indeed supposed to be the top directory where your Mercurial clones are, and not the directory where you cloned the repository. That is derived from the URL. Doh!

My contribution to Foresight

Thursday, March 8th, 2007

In case you didn’t know Foresight is bleeding edge… gnumeric 1.7.8 and Liferea 1.2.7 are in the devel tree already. I find gnumeric to be much faster than OpenOffice (with the limitation that it only does spreadsheets). I saw claims that it’s more complete and more compatible with Excel – that was a while ago, things may have changed.

Spam Karma 2

Tuesday, February 27th, 2007

Following teedz’s advice in a comment, I decided to install Spam Karma 2 for WordPress – works great so far. If you cannot post a comment, please let me know by posting a comment.

NetworkManager and virtual interfaces, again.

Monday, February 26th, 2007

Zeus has a point in his comment, I should blog more often.

Here’s the first: NetworkManager again. I noticed that it doesn’t bring my interface alias up anymore. Must have happened after some upgrade. I am not sure.

As I was trying to figure out what’s going on, I opened the network management interface and looked at various things – and it started to work after that. Kind of frightening.

Even more frightening is looking at /etc/sysconfig/network-scripts/ifup-aliases. Looks like there are people who need such a large number of network interfaces, that they needed to assign them in ranges, hence the ifcfg-$DEV-range* files.

OK, this is not that exciting of a post. I’ll do better next time.

Random bits

Tuesday, February 6th, 2007

Apparently I didn’t get in the habit of blogging short entries often.

Today liferea notified me there is a new release of WordPress that I should upgrade, so I figured I might as well post something.

First off, liferea is slowly becoming a habit. I use it to track announcements about new software (see paragraph above), keep in touch with my friends, read news from ./ and some other news sites. To the point that I have now to see how I can replicate the feeds on all of my computers. Maybe I should try a news reader from yahoo.

A lot of exciting things happened. We’ve finished upgrading rPath’s issue tracker, Jira, to the latest version. And we did it in a eat-your-own-dogfood way: it’s a software appliance living on a Xen machine, as a domU. I was involved in this initially just for the Mercurial plugin for Jira, but figured we might as well go to the latest version of Jira. I had to fix several other plugins that were broken by API change (yes I wish you didn’t have to touch plugins to make them work on newer versions). It’s pretty cool, if your reference a Jira issue in your mercurial commit message, it will get indexed by Jira and linked to the issue (viewable as the Mercurial Commits tab). This link is an example.

The software appliance lets you isolate the application from the base operating system, and it makes it trivial to update it. No mess left on the host operating system either. I know package managers are supposed to help there, I’ve been installing rpm packages for almost 10 years now, trying to achieve that. But the very moment you deploy the system in a production environment, you know things get installed that you didn’t plan for. Conary helps a lot here.

I am looking forward to version 0.45 of Inkscape to land in Foresight. The screenshots look awesome. Ken promises he’ll have it committed in a couple of hours. It’s very nice to have the latest and greatest software, and Foresight is doing a great job there. A big thanks to the Foresight community and to Ken for making Foresight a great distribution – which DistroWatch reviewed yesterday.

On the personal front, we’ve been unhappy with my daughter’s school (or maybe looking for a reason to move into a larger home). At any rate, we’re in negotiations for the repairs the seller has to perform before we close. This is exciting. Except for the hour I spent today with the heating technician inspecting the gas pack in a chilly 18 degrees Fahrenheit. And for the amount of siding that has to be fixed. Hopefully we’ll get to an agreement on this. But I had to spend a lot of time on the phone with lenders, insurance agencies, inspectors, real estate agents and the such.

Lazy…

Thursday, January 11th, 2007

Wow, almost a month from the previous post. If blogging were one of my New Year resolutions, I’d be behind already.

Anyway, I was pretty busy lately. We had friends visiting for Christmas, more friends visiting between Christmas and New Year, and an orienteering event at Lake Johnson to organize.

I’ve been playing with vmware quite a bit lately, partly for my work with software appliances (which are a very cool concept) and for Condes, the Orienteering course editor. I initially tried to run Condes under wine, and it installs and starts, but for some unknown reason all features on the map are drawn with extra thick lines/points, so everything becomes unreadable. I believe something in the way Condes displays OCAD maps. Otherwise, Condes can be run in Windows under vmware, but it’s slower. I’ve found a thread about Condes on Linux here, and I’ve chimed in, let’s see how much interest my experience generates.

I’ve also dipped my toes in the murky waters of Java programming, working on porting some jira plugins to the latest and greatest, version 3.7.1. I haven’t decided yet if I like maven or not. The fact that maven2 is not backwards compatible with maven1 (and doesn’t complain if it can’t find the .pom file) makes me a bit hesitant. Also, packaging Java applications feels weird: each application ships with all the jar files. Sure, you remove the inter-dependency between applications, you can now independently upgrade one without touching the other, but if you have a security issue and have to patch version X of a jar file, you’re dead in the water since there are no good ways you can list all applications that use a jar (that I could find, at least). That’s my 10k foot view of a subject I am not familiar with, so take it with as much salt as you like.

Back to software appliances. Isn’t it nice that when you need a PostgreSQL database server, you just go and download a PostgreSQL appliance that you unzip and start using vmplayer or xen and run it as a server? It even comes with phpPgAdmin, so you can do all the administration remotely. It literally takes a few minutes to have something up and running and not worry about extra packages you have to install, extra hardware to solve possible security problems etc.

One final gripe. I spent an hour last night with someone from Fidelity trying to understand where some of my ESPP stock has gone. To make the story short, they will gladly lose history of your purchases because the software that does the transactions uses an “oldest first” policy. Enough said. Your assets are still there, it’s not like you lose money, but you do lose important historical information.

NetworkManager and virtual interfaces

Saturday, December 16th, 2006

My wireless router is an old Linksys BEFW11S4 (801b). I wouldn’t ask for more in terms of speed, when I’m working from the laptop the bottleneck is the upstream Internet provider (cable), and if I have to transfer massive amounts of data between the laptop and the home computer, I can connect directly into the router with a wire and get 100Mbit.

But there is something my router doesn’t have: static DHCP assignment of addresses. I hate it when I’m on the laptop and I don’t know the IP address of the home computer. I could configure the IP address on the home computer statically, but since I also have to use OpenVPN I’d have to set up dnsmasq so I can get the proper DNS server when connecting to the VPN. Or I could use NetworkManager which would take care of switching the name servers for me.
One solution I found was to have the eth0 interface on the home computer be assigned by the router via DCHP, and have a virtual interface (alias) eth0:0 configured with a static address that I can ssh into.

OK, so I’ve set up the alias in /etc/sysconfig/network-scripts/ifcfg-eth0:0 (I’m not a GUI guy when it comes to configuring the networking, I prefer to go directly on the filesystem and write the file myself – nevertheless, using system-config-network would do the same thing for you).

Except that NetworkManager will not bring the interface alias up. It will bring the main interface up, but not the alias.
After digging a bit, it turns out NetworkManagerDispatcher is at fault, and this is the solution I found:

  • mkdir -p /etc/NetworkManager/dispatcher.d (on a newly installed system it was not created by default)
  • Add this eth-subinterfaces file to /etc/NetworkManager/dispatcher.d:
#!/bin/bash

iface="$1"
shift

action="$1"
shift

if [ "$iface" = "eth0" -a "$action" = "up" ]; then
/sbin/ifup eth0:0
fi
  • Make sure you chmod 0755 /etc/NetworkManager/dispatcher.d/eth-subinterfaces
  • You may or may not have to restart NetworkManagerDispatcher (I think it just worked for me):
    • /sbin/service NetworkManagerDispatcher restart
  • Click on the NetworkManager icon, disable networking and re-enable it.

At this point, ifconfig should show the interface alias.

The Battle of Wesnoth

Wednesday, December 13th, 2006

After reading an article about Linux games I’ve found out about The Battle of Wesnoth. It was ranked as #1, with Frozen Bubble (which I played before on my Fedora system).

Being tired of chasing 3 very strange bugs I’ve been working on for the past 3 days or so, I’ve decided to package the games for Foresight. I’ve only managed to get to wesnoth. You can get it from the foresight.rpath.org@fl:1-contrib branch.

Frozen bubble has a ton of dependencies, I have to build those first.

gnucash 2.0.2 for Foresight

Friday, December 8th, 2006

Yesterday I finally got around to transfer the recipes from my private Conary repository into the foresight.rpath.org@fl:1-devel branch. Everything is now built, you should be able to use the above label to try out the newer gnucash.

Some of the intricacies included:

  • newer guile and slib packages conflict with umb-scheme. You’ll have to get rid of umb-scheme.
  • gnome-games needed to be recopiled against the newer guile.
  • guile and slib are pretty evil to compile, I had to use tag handlers. You have to start somewhere :-)
  • I have split the HBCI support into a different package, gnucash-hbci. The reason for that was the extra dependency on aqbanking which was pulling in the KDE libraries.
    This extra package would allow you to do online banking with Gnucash, if your bank supports the OFX protocol (and most do, except that you will not get that information from the bank). Follow this link to learn more than you wanted to know about the mess.

Happy managing of your financials! :-)