Xrpm
Xrpm is a reimplementation of the
Redhat Package Manager, because I
wanted to get some sources that were only stored in redhat format and
I didn’t want to have all the overhead of the reference implementation
of RPM floating around my machines. Xrpm
simply picks apart
RPM archives and lets you examine and extract various parts of them,
while makepkg
builds simple RPM packages that xrpm
(and maybe even the reference implementation, if I’m lucky) can
pick apart.
- version 1.0.f
Another decade, another release. Fortunately the basic rpm
format is fairly slow moving, because it didn’t take many
changes to keep being able to read modern rpms (a slight tweak
to pick the compressor out of the rpm header instead of always
assuming gunzip will work) and then there was nothing except
for a fistful of small changes to keep the package maintainer
sane.
- xrpm now has the
--buildroot
option, which is maybe not
the most intuitive name, but it’s compatable with the (still
unimplemented) buildroot option in makepkg --build
.
It simply tells xrpm to chdir into the given directory before
doing the extraction when it does xrpm -x
- the autoconfiguration scripts have been updated to the most
current version, and I’ve tweaked
configure.sh
and the
makefile to take advantage of that.
- I added some almost purely cosmetic memory freeing functions
(I ran valgrind on xrpm and it spat
out an amazing number of useless diagnostics, but it did remind
me that if I ever wanted to embed the guts of xrpm in a library
I’d need some memory deallocation so that the code wouldn’t
consume memory without end.)
- A regression test suite, for automatic test paranoia purposes.
- version 1.0.d
- 1.0.c didn’t build or work on Alpha Unix, because I was
making foolish assumptions about scalar sizes and what zcat
was aliased to. So, after a little over a year (this, I believe,
counts as unsupported in the modern computer world), here’s
a new and improved version of the code that works on a new
platform.
- version 1.0.c
- 1.0.a didn’t build on FreeBSD 4.4
because it explicitly included a linux
header file. A few changes to configure.sh
were made and then I could have the system only include the
Linux header files when the program is being built there. And
after that I needed to add the BSDs to the list of known
operating systems (in a no doubt wildly incompatable way) so
I could make packages there, and then xrpm was working on
FreeBSD. So here it is. Enjoy.
- version 1.0.a
- 1.0.a uses configure.sh to set up for
building it on your machine. It works on Mastodon
Linux, RedHat, and maybe on FreeBSD.
- version 1.0
- The first release. Don’t expect miracles or functional code here.