I'm probably committing a faux pa here in even asking this question, but I've run into the same problem on several occasions (and again today) and have yet to find a convenient solution.
Scenario: I have MGAX installed (could be the current or a previous release) which has a RPM for a package I want to install. For some reason, I want a newer version of that same software. There are several possibilities:
1: There is a suitable MGA RPM from a future version (the latest or cauldron). In this case, installing the subsequent version would use MGA repos to update dependencies. However, frequently (especially with older versions of MGA), the dependencies are newer and the number of required updates can be significant (a big step towards a whole release update, for example). This creates two problems: first, without the newer-release MGA repos enabled, the install fails due to unsatisfied dependencies. Second, enabling the newer repos may trigger a significant number of packages to install and I'm not confident that won't break something.
2: There isn't a suitable MGA RPM (not the right version or something), but there is an RPM from another distro. I've occasionally tried to force those to work, but it's always a hassle (figure out what's missing, install MGA RPMs containing the missing bits...).
3: There isn't a suitable RPM at all. The decision is simpler: install some other way or don't use the new version.
It seems in the first and maybe even second cases, there should be simpler ways to get the newer versions working. I'm not aware of such shortcuts, though. Am I missing something, or is it always necessary to do things 'the hard way'? Specifically, when software packages are updating, it seems like the versions of their require dependencies are generally set to the then-current versions that the software is tested for. Wouldn't it make more sense to use the earliest version numbers with which the software is compatible? That would enable much easier packaging for older systems?
Just to illustrate using the current case, I have a MGA6 system and a MGA5 system. Both have openttd but the MGA6 version is newer. To use the same server, the versions need to match, but installing the MGA6 version on MGA5 isn't trivial (enabling the MGA6 repos results in hundreds of dependencies). I have a hard time imagining that the new version actually requires all that commotion (it can certainly be compiled for MGA5). How difficult is it to make an automated process for packaging up new software versions against older releases?
Sorry for the rambling. If this already exists, I'd love to hear about it. If it can't exist for some reason, feel free to just say so.
Thanks!
V-