packages
packages copied to clipboard
[FYRA-263] Terra on other platforms
There has been an internal and external interest for bringing Terra to other platforms such as OpenSUSE and EL.
Items for consideration:
- How would sources be versioned for other distros? Would we have an EL9 branch, like how we currently have a f38 branch?
- Should sources be separate in the first place? It's possible to have a spec file that builds for multiple platforms, see this prismlauncher spec commit.
- Branding for these new repos? Policy updates?
How would sources be versioned for other distros? Would we have an EL9 branch, like how we currently have a f38 branch?
that would make the most since imo. it would follow other repositories such as rpmfusion or fedora itself's
Should sources be separate in the first place? It's possible to have a spec file that builds for multiple platforms, see this prismlauncher spec commit.
oh hey i did that :) but this is still a tough question. i separated the files mainly because of obs just being an easier way for opensuse users to access packages, as well as to improve readability. however, keeping compatibility with opensuse can be a bit difficult, especially for newer packagers. there is a great resource here, but not everything is documented correctly or at all. i think this could easily cause issues with general maintainability, but if opensuse is being supported, it would still be more maintainable than two completely separate spec files - speaking from experience, it sucks - even with requiring a decent amount of TLC in the beginning.
enterprise linux is a completely different story though. it's trivial to add support, assuming dependencies are at a correct version in EL (this could be managed with good policies, which i'll get into later). if anything, i think it would be a good idea to start here first, see how it goes, ensure proper infrastructure around it, and then think of tackling opensuse.
Policy updates?
enterprise linux and suse would 100% require updates to the contributing policy. for suse, i'd recommend keeping what we have already, but adding on requirements for ensuring compatibility with both leap and tumbleweed (some packages are only compatible with the latter, which is okay and should just mean they will be tumbleweed only), building against the repo even in the case of the dependency not being in fedora's or EL's repos, and following some opensuse guidelines that don't conflict with fedora, such as these
enterpise linux would again be more cut and dry, as epel itself follows many of the same guidelines as fedora, similar to us. the only thing i'd recommend here is applying these extra guidelines, which could easily be added to packages with 0 real effects on fedora. in fact, it can even add some benefits as unintended side-effect - see here for an example of applying this policy, which ensures the desktop database is always updated on either EL or fedora