It is nearly two months since I switched from Debian/Ubuntu to Fedora/RHEL. And I start to miss Debian tools…

Under Debian (which also means derivatives like Ubuntu) I used simple set of tools and I have found their Fedora replacements:

Debian Fedora
dpkg rpm
apt-get yum/dnf
apt-cache yum/dnf
dpkg-buildpackage rpmbuild
debuild rpmbuild
pbuilder mock
debdiff rpmdev-diff
dgit(?) fedpkg/rhpkg

The problem with Fedora tools is that they feel like few years behind Debian ones ;(

While Debian world moved to use “quilt” to manage patches in source packages few years ago, Fedora’s RPM just got it recently so it is hard to find package which makes use of it. Updating patches is far from being pleasure.

Yum (and it’s younger brother ‘dnf’) work in other way than APT. But are usable and do what they have to. The fun starts when you run “yum upgrade -y” on slow machine (like AArch64 model) and someone will regenerate repository data in meantime — you end with 404 errors cause repodata/ directory uses random file names…

rpmbuild works. It even has some limited support for running separate steps. But without dependencies between them so “rpmbuild -bi specfile” needs “rpmbuild -bc specfile” first while in Debian world “debian/rules install” is enough. There is also “--short-circuit” option to not clean build directory when you want to go through single steps. But resulting binary packages are tainted and can not be installed without using “–nodeps” switch to RPM. I see a sense behind it but it hit me hard on AArch64 when I was building Qt (do not ask how long it took cause I did it several times during last 2 months).

Then we have mock. Argh… I put it in one line with pbuilder but it is not worthy. No user setup possible, just one build at time (my machine is now 10% busy) make mock wasting lot of developer time. I opened bugs with feature requests for user config and multiple builds — hope that one day it will appear.

And last entry is what I like. Both fedpkg and rhpkg allow me to clone git repository of package so I can create patches for packaging in quick way. In Debian world I never used such tool. Under Ubuntu packages were kept in Bazaar repositories but you know already what I think of this SCM.

I miss Debian tools

3 thoughts on “I miss Debian tools

  • 4th November 2013 at 13:52

    I’ve been a Debian user for almost 10 years but recently worked 2 years in an exclusively CentOS/Fedora environment, and just this year switched back to Debian. I’ve found things I’ve missed in both, and as you’ve said the rpm tools feel a few years behind the Debian ones, my exception in this case is yum whatprovides; dpkg can provide the same functionality but it still feels clunkier than it’s RH counterpart.

    I also wanted to add in, “yum group install ‘Development Tools'” is the equivalent to the build-essential debian package, as I’ve seen this trip up a lot of people new to building software in a RH environment.

    • 4th November 2013 at 22:32

      I was told that @buildsys-build is Fedora’s build-essential. And this is what mock installs in chroot.

Comments are closed.