Released a new createrepo and worked on refactoring some of the import class so it can deal with importing a local rpmdb and/or an rpm file on disk. I also ripped a lot of functions from yum in head to get rid of the things I won’t need anymore.

The refactoring should put me on the road to having an object containing all the packages from the repositories and an object containing all the packages from the local rpmdb. Then something to compare them, to look for updates and I’m on my way to function duplication with yum as is.

After that the hard parts are - redoing the depresolution, keeping track of the architecture and downloading stuff sanely.

There’s an unbelieveable amount to do it appears but I hope to come out of it on the other side with a much more flexible and portable structure. In this, the best of all possible worlds, I should have a set of classes finished to:

1. generate the metadata (more or less true, now - see createrepo)

2. import the metadata (getting there, not entirely true but I’d call it 90%)

3. resolve deps from the metadata

If anyone out there is bored and wants to work on a class to handle various things get in touch with me. I might be able to find places where I can use the help.

I’d also be interested in some code/class audits of the import classes. In particular, I’d love for it to be looked at for integrating into [redhat|system]-config-packages. So if there is anyone interested drop me a line via email or irc.

Watched a fair bit of buffy the vampire slayer with the girl tonight. That was fun, it’s nice to kick back on the sofa and do that every now and then. Also vacuumed, I like vacuuming, I have no idea why - it’s just fun. MLK-day tomorrow so I’ll probably be avoiding the office and see if I can finish out the refactoring of the import classes and start down the road to a functional yum.

changelog entries in rpm spec files.

here is a changelog entry:

* Thu Jul 11 2002 Seth Vidal
- added rpm require

rpm breaks that out into:

changelogtime - unix time conversion of (Thu Jul 11 2002)

changelogname - ‘Seth Vidal ‘

changelogtext - ‘ added rpm require’

It has recently become popular to do:

* Fri Aug 2 2002 Nalin Dahyabhai 2.0.13-1
- specify log files individually, per faq wizard

- update to 2.0.13

see that ‘2.0.13-1′ appended to the name. Now let’s break this one down into it’s rpm header contents:

changelogtime - unix time of ‘Fri Aug 2 2002′

changelogname - ‘Nalin Dahyabhai 2.0.13-1′

changelogcontent - ’specify log files individually, per faq wizard\n update to 2.0.13′

I think including the version in a changelog is a good idea, but not in the ‘name’ field. Include it as the first line of the comments.

Either rpm needs to redefine its fields for this version tag OR it should be in the comments.

End Rant.

- fan in a file server went poof, so file server went crash.

- network connection at duke went poof, so seth went ‘agh’.

Brought up the fedora people pages. It’s quite spiffy looking but I’ve been told by garret it could use some ’sprucing’. I will be glad to let him spruce but I’m not a sprucer and I shall bear no sprucing being foisted upon me.

stared at the genFileList() code and boggled as to how the hell to get the data out of the header without a functioning fileclasses and/or fiFromHeader(). Nasrat was kind enough to file the labelCompare() segfault so hopefully there will be some traction on that.

working on building some new stuff for fedora legacy. I really hope things work out ok there. Some misc drivel on the mailing list but some of it is getting to where things need to be. I’ve already pushed the cvs errata out to my people internally and it works fine. So I’m feeling pretty good about the people patching stuff’s ability to see things and if not provide a patch at least find one :)

Debating b/t metadata work tonight and mario kart.

Jeremy was referring to Seth Nickell. Not me.

Seth wrote this cool software

I wrote this cool software

Just clearing things up.

:)

Jeff Waugh is my hero. I got the planet.gnome.org code today. It’s spiffy. Straightforward code.

Take the rss feeds, grab entries, drop a cache in, sort them based on posting time, run them through a templating engine, spit out rss, done.

Very nice. Started working on a page for the various and sundry fedora people. It works well. I thefted the fedora.redhat.com layout and butchered it a little bit. I’m sure someone will abuse me about that soon enough.

Did some work on createrepo today. Realized how completely broken fiFromHeader() is. Need to figure out another way to get this data out of the header. Oh well.

Server failure this morning at 5:30am. Felt like crap, went in, fixed it, came home, slept, got up, went in, felt like crap, came home, napped, ate, was pampered a bit by the girl(thanks), felt better, worked on various things and avoided my mail with amazing diligence.

the girl triaged her first bug for the gnome bug day today. Very excited about that.

much package building, updating and talking today.

Pushed errata out for various things for duke. Some backlog, nothing too heinous. Glad to get that out of the way. Of course more errata released today from red hat and fedora legacy.

Well, not actually released from fedora legacy but most of the way there. I need to add my QA bits to the bugzilla reports. But I’ve tested the packages on systems in physics and they’re looking pretty ok.

More importantly the patches are straightforward and the people seem to be paying attention to things. Sometimes I think the best QA would be to just mark some people as being able to push stuff out and go from there. If something gets screwed up it gets fixed. Shit happens. I mean we know red hat hasn’t always issued flawless errata, why should fedora legacy be held to a higher standard?

New Fedora News came out today.

OLS call for papers was issued too. Looking at 1. if I have anything interesting enough to talk about and 2. if I can get tickets and what not soon b/c I definitely want to go.

spent some time on #gnome today. Talked to telsa a bit about gnome on networks and gconf pain.

examples:

gconf locale fun

general pain

Enjoyable to me to know that other people consider these serious problems. Hope to get them fixed one way or the other. I like gnome, it’s much easier on the eyes than kde for me, but these low-level problems need solving before too much work is done and people get too entrenched in their features.

I know the various powers-that-be know about them, it’s just about figuring out a nice way of solving the problems.

Oh well. something else to think about.

Just noticed I got bumped to master level by malcolm. Malcolm is clearly delusional, but I’ll thank him all the same.

Now to get a planet fedora going so I can get my head next to the blog entries.. Then I’ll be REALLY cool.

Just like louie’s creepy floating head

Force fed createrepo to others. They found bugs immediately. I fixed many of them this evening. Yay for bug fixing. Exercised with the girl. Feel good about that. Reading planet.gnome.org, noted this entry by dave camp. I have to say that I feel really sorry for myfriends who are in the great white north.

A couple of useful notes to remember:

1. don’t eat dried cranberries right before bed

2. if you want to get work done, don’t go to your office.

3. one of the most evil things in the history of the world is when companies change firmware revisions without iterating the version number.

Got the backup server happy and the tapedrive is running amanda’s tapetype on it now. Hopefully it will finish before I die.

Came home feeling pretty blah, but I decided to work from home tomorrow and see what I can get done and for whatever reason that made me feel better about the world.

Had a partially soul-crushing event of showing one of my users how to ‘make’ a webpage. It’s documented, we’ve explained it but he’s 800 years old and he refuses to take ‘it’s documented, go read about it’ for an answer.

Looking forward to filling the user support position.

I did an amazing amount of bureaucratic paper pushing today. It was mildly astounding. Luckily, I got enough done where I might be able to do real work tomorrow. We’ll see. New motherboard fixed the backup server hiccups. Always happy to see that happen.

Plan on working metadata some more tonight. Fix up some exceptions, load in the __init__.py to make it act like a module and then see if I want to move it all around. I’m kinda lost for names right now. At the moment it’s in a dir called ‘import’ b/c that’s what it does, it imports the metadata from the xml into memory. However I think:

import packageSack from import

is going to cause confusion :).

maybe pkgMD or some such nonsense.

the other option is to make this one module of a series of modules for something like and rpmutils module.

I should ask the rpm-python list, maybe they have a suggestion.

sushi or salad tonight.

either way yummy.

I’ve been following along in planet.gnome.org for a little while now. It’s interesting to read some of the thoughts people put in there. Not just gnome-related but anything related. It’s curious to see how many of them are very deeply involved in what they do. Heartening, in fact.

I didn’t get much work done tonight. Spent a lot of time talking about issues with linux distibutions and things that duke needs versus things that universities need in general versus what is available out there. It’s kinda frustrating. I sorta wish there was a big base distro that everyone could pull from to build up what they need. I know that’s silly but it’d be nice if the majorplayers would work on a common, free, base. It’d be like fedora but between two big groups for a base of an os.

Alas I think business interest would preclude either from giving much ground even though both companies would benefit from not having to do the same work.

Well that’s enough for tonight.