Skip to content

Use GHC 9.2.7 in flake #3527

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Mar 17, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/nix.yml
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ jobs:
# We only build nix dev shell for current GHC version because some are
# failing with different GHC version on darwin.
- name: Build development shell with nix dependencies for current GHC version
run: nix develop --print-build-logs .#all-nix-dev-shells --profile dev
run: nix develop --print-build-logs .#haskell-language-server-dev-nix --profile dev
- name: Push development shell
if: ${{ env.HAS_TOKEN == 'true' }}
run: cachix push haskell-language-server dev
Expand Down
6 changes: 3 additions & 3 deletions flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

19 changes: 9 additions & 10 deletions flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@
};

ghc902Config = (import ./configuration-ghc-90.nix) { inherit pkgs inputs; };
ghc926Config = (import ./configuration-ghc-92.nix) { inherit pkgs inputs; };
ghc927Config = (import ./configuration-ghc-92.nix) { inherit pkgs inputs; };
ghc944Config = (import ./configuration-ghc-94.nix) { inherit pkgs inputs; };

# GHC versions
Expand All @@ -182,13 +182,13 @@
ghcVersion = "ghc" + (pkgs.lib.replaceStrings ["."] [""] pkgs.haskellPackages.ghc.version);
cases = {
ghc902 = ghc902Config.tweakHpkgs (pkgs.hlsHpkgs "ghc902");
ghc926 = ghc926Config.tweakHpkgs (pkgs.hlsHpkgs "ghc926");
ghc927 = ghc927Config.tweakHpkgs (pkgs.hlsHpkgs "ghc927");
ghc944 = ghc944Config.tweakHpkgs (pkgs.hlsHpkgs "ghc944");
};
in { default = cases."${ghcVersion}"; } // cases;

ghc902 = supportedGHCs.ghc902;
ghc926 = supportedGHCs.ghc926;
ghc927 = supportedGHCs.ghc927;
ghc944 = supportedGHCs.ghc944;
ghcDefault = supportedGHCs.default;

Expand Down Expand Up @@ -310,15 +310,15 @@
simpleDevShells = {
haskell-language-server-dev = mkDevShell ghcDefault "cabal.project";
haskell-language-server-902-dev = mkDevShell ghc902 "cabal.project";
haskell-language-server-926-dev = mkDevShell ghc926 "cabal.project";
haskell-language-server-927-dev = mkDevShell ghc927 "cabal.project";
haskell-language-server-944-dev = mkDevShell ghc944 "cabal.project";
};

# Developement shell, haskell packages are also provided by nix
nixDevShells = {
haskell-language-server-dev-nix = mkDevShellWithNixDeps ghcDefault "cabal.project";
haskell-language-server-902-dev-nix = mkDevShellWithNixDeps ghc902 "cabal.project";
haskell-language-server-926-dev-nix = mkDevShellWithNixDeps ghc926 "cabal.project";
haskell-language-server-927-dev-nix = mkDevShellWithNixDeps ghc927 "cabal.project";
haskell-language-server-944-dev-nix = mkDevShellWithNixDeps ghc944 "cabal.project";
};

Expand All @@ -327,14 +327,14 @@
envShells = {
haskell-language-server-dev-env = mkEnvShell ghcDefault;
haskell-language-server-902-dev-env = mkEnvShell ghc902;
haskell-language-server-926-dev-env = mkEnvShell ghc926;
haskell-language-server-927-dev-env = mkEnvShell ghc927;
haskell-language-server-944-dev-env = mkEnvShell ghc944;
};

allPackages = {
haskell-language-server = mkExe ghcDefault;
haskell-language-server-902 = mkExe ghc902;
haskell-language-server-926 = mkExe ghc926;
haskell-language-server-927 = mkExe ghc927;
haskell-language-server-944 = mkExe ghc944;
};

Expand All @@ -354,9 +354,8 @@
all-haskell-language-server = linkFarmFromDrvs "all-haskell-language-server" (lib.unique (builtins.attrValues allPackages));

# Same for all shells
# We try to build as much as possible, but not much shells are
# working (especially on darwing), so this list is limited.
all-nix-dev-shells = linkFarmFromDrvs "all-dev-shells" (builtins.map (shell: shell.inputDerivation) (lib.unique [nixDevShells.haskell-language-server-dev-nix]));
all-nix-dev-shells = linkFarmFromDrvs "all-dev-shells"
(builtins.map (shell: shell.inputDerivation) (lib.unique (builtins.attrValues nixDevShells)));

all-simple-dev-shells = linkFarmFromDrvs "all-simple-dev-shells"
(builtins.map (shell: shell.inputDerivation) (lib.unique (builtins.attrValues simpleDevShells)));
Expand Down