GHC compiler parallel version installs
Introduce ghcX.Y packages to Fedora which can be parallel installed, in addition to the main ghc package.
- Name: Jens Petersen
- Email: firstname.lastname@example.org
- Targeted release: Fedora Linux 36
- Last updated: 2022-01-05
Currently ghc modules are available in Fedora but they cannot be installed in parallel. This Change will enable being able to easily install multiple versions of ghc in parallel, which can be useful for development - both for working on different projects and testing projects for compatibility across different ghc versions.
This was proposed to the Fedora Haskell mailing list already and so far there were no objections.
Benefit to Fedora
Parallel installs of ghc versions will allow more flexible Haskell development using Fedora Linux.
- Proposal owners:
- update ghc-rpm-macros to support the packaging [done]
- add ghc9.2 [built for rawhide]
- add ghc9.0 [built for rawhide]
- add ghc8.10 [repo created]
- add ghc8.8 [stretch goal]
- add cabal-install3.4 and/or cabal-install3.6 [stretch goal]
- also backport ghcX.Y's to F35, F34, and EPEL
- Other developers: N/A
- Release engineering: N/A
- Policies and guidelines: N/A (not needed for this Change)
- Trademark approval: N/A (not needed for this Change)
- Alignment with Objectives: N/A
These are new packages so upgrading from older releases should be fine. Eventually future Fedora version upgrades will probably need to obsolete very old ghcX.Y versions.
How To Test
1. dnf install ghc ghc9.2 ghc9.0
Installing ghc, ghc9.0, and ghc9.2 will give you /usr/bin/ghc, /usr/bin/ghc-9.0.x and /usr/bin/ghc-9.2.x. Their Haskell libraries will have ghc versioned directories and .so files.
- Contingency mechanism: (What to do? Who will do it?) N/A (not a System Wide Change)
- Contingency deadline: N/A (not a System Wide Change)
- Blocks release? N/A (not a System Wide Change), Yes/No
N/A (not a System Wide Change)
With the introduction of versioned ghcX.Y packages multiple versions of the Haskell GHC compiler can now be installed parallel in the Fedora Linux.