0 Replies - 433 Views - Last Post: 25 February 2016 - 04:42 PM

#1 BetaWar   User is offline

  • #include "soul.h"
  • member icon

Reputation: 1602
  • View blog
  • Posts: 8,435
  • Joined: 07-September 06

Package management needs to update

Posted 25 February 2016 - 04:42 PM

Not sure if any of you guys have attempted to package and serve up a Linux distros' packages (adding a new package for instance), but I have recently delved into the task of getting Fedora packages up and running for some of our internal tools at work (to allow quick and easy install for Fedora distros just like they already have with Ubuntu and Gentoo.

Getting everything to work on that was pretty simple, you just needed to set up the dependencies, and a few other things appropriately and then the process basically took care of itself. However, they also have a huge issue of only allowing 1 version of a package to be installed at a time.

Normally this is the expected, and desired behavior. I can agree with that. However, in my specific case (and I would imagine others out there -- especially considering that I have found email threads going back to 2007 regarding this same thing) have a desire and/ or need to have multiple versions of the same package installed at any given time.

In my case, we have a set of bash utilities that our builds and other things require to actually work. Versions of our code specify the version of the utilities that they require, however they don't attempt to install it for you because it is expected that you have taken care of that. This problem is made larger when you consider that we use a distributed build system that also uses these tools and that version isn't necessarily the same version required as the code requires (so you could literally have 2 different required versions installed at the same time -- which RPMs don't deal with).

I have been looking all over the place and the only solution out there seems to be "add the version number to the package name so it shows up as a different package". While it is true that this _would_ work, it looks extremely ugly and also means that you still have to install _different_ packages for each version you want. You can't just install one package, update as you go, and get all the appropriate versions installed. Talk about annoying.

Has anyone else had to deal with this or come up with a nicer solution?

My desired solution was actually having something like a "Compat" keyword added to say that your package was compatible with either all previous versions, all version, or even specific versions of the current package; thus allowing you to have more than 1 version of a package installed as long as it passes the "Compat" filter that the other installed versions have specified. That would require that the person packaging the RPM specifies at least somewhat the versions of the RPM that the new version is compatible with, while it also doesn't mean that you have to use the ugle "NAME_VERSION" package name hack.

Is This A Good Question/Topic? 0
  • +

Page 1 of 1