@@ -35,14 +35,15 @@ data Distro
3535 = Debian9
3636 | Debian10
3737 | Debian11
38+ | Debian12
3839 | Ubuntu1804
3940 | Ubuntu2004
4041 | Ubuntu2204
4142 | Mint193
4243 | Mint202
43- | Fedora27
44+ | Mint213
4445 | Fedora33
45- | Centos7
46+ | Fedora40
4647 | Rocky8
4748 deriving (Eq , Enum , Bounded )
4849
@@ -64,15 +65,15 @@ data GHC
6465 = GHC948
6566 | GHC967
6667 | GHC984
67- | GHC9101
68+ | GHC9102
6869 | GHC9122
6970 deriving (Eq , Enum , Bounded )
7071
7172ghcVersion :: GHC -> String
7273ghcVersion GHC948 = " 9.4.8"
7374ghcVersion GHC967 = " 9.6.7"
7475ghcVersion GHC984 = " 9.8.4"
75- ghcVersion GHC9101 = " 9.10.1 "
76+ ghcVersion GHC9102 = " 9.10.2 "
7677ghcVersion GHC9122 = " 9.12.2"
7778
7879ghcVersionIdent :: GHC -> String
@@ -91,56 +92,60 @@ distroImage :: Distro -> String
9192distroImage Debian9 = " debian:9"
9293distroImage Debian10 = " debian:10"
9394distroImage Debian11 = " debian:11"
95+ distroImage Debian12 = " debian:12"
9496distroImage Ubuntu1804 = " ubuntu:18.04"
9597distroImage Ubuntu2004 = " ubuntu:20.04"
9698distroImage Ubuntu2204 = " ubuntu:22.04"
9799distroImage Mint193 = " linuxmintd/mint19.3-amd64"
98100distroImage Mint202 = " linuxmintd/mint20.2-amd64"
99- distroImage Fedora27 = " fedora:27 "
101+ distroImage Mint213 = " linuxmintd/mint21.3-amd64 "
100102distroImage Fedora33 = " fedora:33"
101- distroImage Centos7 = " centos:7 "
103+ distroImage Fedora40 = " fedora:40 "
102104distroImage Rocky8 = " rockylinux:8"
103105
104106distroName :: Distro -> String
105107distroName Debian9 = " deb9"
106108distroName Debian10 = " deb10"
107109distroName Debian11 = " deb11"
110+ distroName Debian12 = " deb12"
108111distroName Ubuntu1804 = " ubuntu1804"
109112distroName Ubuntu2004 = " ubuntu2004"
110113distroName Ubuntu2204 = " ubuntu2204"
111114distroName Mint193 = " mint193"
112115distroName Mint202 = " mint202"
113- distroName Fedora27 = " fedora27 "
116+ distroName Mint213 = " mint213 "
114117distroName Fedora33 = " fedora33"
115- distroName Centos7 = " centos7 "
118+ distroName Fedora40 = " fedora40 "
116119distroName Rocky8 = " unknown"
117120
118121distroInstall :: Distro -> String
119122distroInstall Debian9 = " sed -i s/deb.debian.org/archive.debian.org/g /etc/apt/sources.list && sed -i 's|security.debian.org|archive.debian.org/|g' /etc/apt/sources.list && sed -i /-updates/d /etc/apt/sources.list && apt-get update && apt-get install -y"
120123distroInstall Debian10 = " apt-get update && apt-get install -y"
121124distroInstall Debian11 = " apt-get update && apt-get install -y"
125+ distroInstall Debian12 = " apt-get update && apt-get install -y"
122126distroInstall Ubuntu1804 = " apt-get update && apt-get install -y"
123127distroInstall Ubuntu2004 = " apt-get update && apt-get install -y"
124128distroInstall Ubuntu2204 = " apt-get update && apt-get install -y"
125129distroInstall Mint193 = " apt-get update && apt-get install -y"
126130distroInstall Mint202 = " apt-get update && apt-get install -y"
127- distroInstall Fedora27 = " dnf install -y"
131+ distroInstall Mint213 = " apt-get update && apt-get install -y"
128132distroInstall Fedora33 = " dnf install -y"
129- distroInstall Centos7 = " sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-* && sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-* && yum -y install epel-release && yum install -y"
133+ distroInstall Fedora40 = " dnf install -y"
130134distroInstall Rocky8 = " yum -y install epel-release && yum install -y --allowerasing"
131135
132136distroTools :: Distro -> String
133137distroTools Debian9 = " libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5 libtinfo5 patchelf"
134138distroTools Debian10 = " libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5 libtinfo5 patchelf"
135139distroTools Debian11 = " libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5 libtinfo5 patchelf"
140+ distroTools Debian12 = " libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5 libtinfo5 patchelf"
136141distroTools Ubuntu1804 = " libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5 libtinfo5 patchelf"
137142distroTools Ubuntu2004 = " libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5 libtinfo5 patchelf"
138143distroTools Ubuntu2204 = " libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5 libtinfo5 patchelf"
139144distroTools Mint193 = " libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5 libtinfo5 patchelf"
140145distroTools Mint202 = " libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5 libtinfo5 patchelf"
141- distroTools Fedora27 = " autoconf automake binutils bzip2 coreutils curl elfutils-devel elfutils-libs findutils gcc gcc-c++ git gmp gmp-devel jq lbzip2 make ncurses ncurses-compat-libs ncurses-devel openssh-clients patch perl pxz python3 sqlite sudo wget which xz zlib-devel patchelf"
146+ distroTools Mint213 = " libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5 libtinfo5 patchelf"
142147distroTools Fedora33 = " autoconf automake binutils bzip2 coreutils curl elfutils-devel elfutils-libs findutils gcc gcc-c++ git gmp gmp-devel jq lbzip2 make ncurses ncurses-compat-libs ncurses-devel openssh-clients patch perl pxz python3 sqlite sudo wget which xz zlib-devel patchelf"
143- distroTools Centos7 = " autoconf automake binutils bzip2 coreutils curl elfutils-devel elfutils-libs findutils gcc gcc-c++ git gmp gmp-devel jq lbzip2 make ncurses ncurses-compat-libs ncurses-devel openssh-clients patch perl pxz python3 sqlite sudo wget which xz zlib-devel patchelf"
148+ distroTools Fedora40 = " autoconf automake binutils bzip2 coreutils curl elfutils-devel elfutils-libs findutils gcc gcc-c++ git gmp gmp-devel jq lbzip2 make ncurses ncurses-compat-libs ncurses-devel openssh-clients patch perl pxz python3 sqlite sudo wget which xz zlib-devel patchelf"
144149distroTools Rocky8 = " autoconf automake binutils bzip2 coreutils curl elfutils-devel elfutils-libs findutils gcc gcc-c++ git gmp gmp-devel jq lbzip2 make ncurses ncurses-compat-libs ncurses-devel openssh-clients patch perl pxz python3 sqlite sudo wget which xz zlib-devel patchelf"
145150
146151-------------------------------------------------------------------------------
0 commit comments