RedHat Shit List

rpm doesn't accept wildcards

You can't remove multiple packages matching a certain criteria:

# rpm -e escenic-*

Should remove all packages starting with escenic-, but it does not:

# rpm -e escenic-*
error: package escenic-* is not installed

Thus, you must succumb to writing a while loop to get all those packages removed:

# rpm -qa | grep ^escenic- | while read p ; do rpm -e $p; done

rpm packages can't contain common directories

DEB files can define directories, but the one-package-one-file is only enforced on file level, not on directory level. This means that if your package provides /etc/foo, the package can contain the /etc directory without any problem on a DEB system. On an RPM system, however, the package can't contain /etc.

You typically encounter this when you use alien to convert a DEB to an RPM file. To fix it, you must first generate the .spec file, then edit it (scripted or not) and then build your RPM.


~ /home 🏠 ~ talks 💬 ~ bash ~ craftsmanship ~ db ~ dongxi ~ emacs ~ escenic ~ iam ~ java ~ js ~ language ~ latex ~ ldap ~ life ~ linux ~ llm ~ mac-os-x ~ mt-foo ~ network ~ norsk ~ python ~ quotes ~ running ~ security ~ travel ~ unix ~ various ~ vcs ~ webdesign ~ windows ~ discoveries ~ cv 🧙 ~

Licensed under CC BY Creative Commons License ~ 📡 RSS feed ~ ✉ torstein.k.johansen @ gmail ~ 🐘 @skybert@hachyderm.io ~ 🎥 youtube.com/@skybert