From 2920d483bb5b802b90ae6d29420a63798c3bf317 Mon Sep 17 00:00:00 2001 From: Potato Hatsue <1793913507@qq.com> Date: Mon, 2 Aug 2021 19:17:26 +0800 Subject: [PATCH 1/3] Update nix flake --- configuration-ghc-901.nix | 19 ------------------ flake.lock | 12 ++++++------ flake.nix | 41 ++++++++++++++++----------------------- 3 files changed, 23 insertions(+), 49 deletions(-) diff --git a/configuration-ghc-901.nix b/configuration-ghc-901.nix index 943e9095dc..f2dabdbbbd 100644 --- a/configuration-ghc-901.nix +++ b/configuration-ghc-901.nix @@ -16,13 +16,6 @@ let hpkgsOverride = hself: hsuper: with pkgs.haskell.lib; let - lsp-src = pkgs.fetchFromGitHub { - owner = "anka-213"; - repo = "lsp"; - rev = "tag-ghc-9.0.1-without-pr-326"; - sha256 = "lW/EdBnvKPLE2+CGE/grIekOu+U/Wh6zMCN4xhJDtPY="; - }; - dependent-sum-src = pkgs.fetchFromGitHub { owner = "anka-213"; repo = "dependent-sum"; @@ -52,14 +45,6 @@ let sha256 = "8ct7t3xIxIAoC+f8VO5e5+QKrd5L5Zu1eButSaE+1Uk="; }) { }; - ghc-api-compat = hself.callCabal2nix "ghc-api-compat" - (pkgs.fetchFromGitHub { - owner = "hsyl20"; - repo = "ghc-api-compat"; - rev = "8fee87eac97a538dbe81ff1ab18cff10f2f9fa15"; - sha256 = "byehvdxQxhNk5ZQUXeFHjAZpAze4Ct9261ro4c5acZk="; - }) { }; - th-extras = hself.callCabal2nix "th-extras" (pkgs.fetchFromGitHub { owner = "anka-213"; repo = "th-extras"; @@ -67,10 +52,6 @@ let sha256 = "Qtha1ge/C0L+uFcV2dZ5xpG59DCxQT7LuK/OYfiM4Pk="; }) { }; - lsp = hself.callCabal2nix "lsp" "${lsp-src}/lsp" { }; - lsp-types = hself.callCabal2nix "lsp-types" "${lsp-src}/lsp-types" { }; - lsp-test = hself.callCabal2nix "lsp-test" "${lsp-src}/lsp-test" { }; - dependent-sum = hself.callCabal2nix "dependent-sum" "${dependent-sum-src}/dependent-sum" { }; diff --git a/flake.lock b/flake.lock index 5361790461..e3939fd59d 100644 --- a/flake.lock +++ b/flake.lock @@ -3,11 +3,11 @@ "flake-compat": { "flake": false, "locked": { - "lastModified": 1606424373, - "narHash": "sha256-oq8d4//CJOrVj+EcOaSXvMebvuTkmBJuT5tzlfewUnQ=", + "lastModified": 1627832136, + "narHash": "sha256-OUBMZeJ01AdzGjJ9ZkY5rh1bQircBoPoV2anXSE+luI=", "owner": "edolstra", "repo": "flake-compat", - "rev": "99f1c2157fba4bfe6211a321fd0ee43199025dbf", + "rev": "bef1b74164e238c530aec28335e761372dafe4c4", "type": "github" }, "original": { @@ -49,11 +49,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1626764163, - "narHash": "sha256-TB+mtRpwn6pnoUXjBvJPIgHKkwLtjzFji4tkANlZWJQ=", + "lastModified": 1627814220, + "narHash": "sha256-P+MDgdZw2CBk9X1ZZaUgHgN+32pTfLFf3XVIBOXirI4=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "1441fa74d213d7cc120d9d7d49e540c1fc59bc58", + "rev": "ab5b6828af26215bf2646c31961da5d3749591ef", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index eca9dd5c5e..ae3c191896 100644 --- a/flake.nix +++ b/flake.nix @@ -71,36 +71,30 @@ tweaks = hself: hsuper: with haskell.lib; { - hiedb = hself.callCabal2nix "hiedb" - (builtins.fetchTarball { - url = - "https://hackage.haskell.org/package/hiedb-0.4.0.0/hiedb-0.4.0.0.tar.gz"; - sha256 = - "13jz8c46zfpf54ya2wsv4akhn0wcfc6qjazqsjfir5gpvsi7v8xr"; + ghc-api-compat = hself.callCabal2nix "ghc-api-compat" + (pkgs.fetchFromGitHub { + owner = "hsyl20"; + repo = "ghc-api-compat"; + rev = "8fee87eac97a538dbe81ff1ab18cff10f2f9fa15"; + sha256 = "byehvdxQxhNk5ZQUXeFHjAZpAze4Ct9261ro4c5acZk="; }) { }; - implicit-hie = hself.callCabal2nix "implicit-hie" + lsp = hself.callCabal2nix "lsp" (builtins.fetchTarball { - url = - "https://hackage.haskell.org/package/implicit-hie-0.1.2.6/implicit-hie-0.1.2.6.tar.gz"; - sha256 = - "067bmw5b9qg55ggklbfyf93jgpkbzmprmgv906jscfzvv1h8266c"; + url = "https://hackage.haskell.org/package/lsp-1.2.0.1/lsp-1.2.0.1.tar.gz"; + sha256 = "1lhzsraiw11ldxvxn8ax11hswpyzsvw2da2qmp3p6fc9rfpz4pj5"; }) { }; - implicit-hie-cradle = hself.callCabal2nix "implicit-hie-cradle" + lsp-types = hself.callCabal2nix "lsp-types" (builtins.fetchTarball { - url = - "https://hackage.haskell.org/package/implicit-hie-cradle-0.3.0.5/implicit-hie-cradle-0.3.0.5.tar.gz"; - sha256 = - "15a7g9x6cjk2b92hb2wilxx4550msxp1pmk5a2shiva821qaxnfq"; + url = "https://hackage.haskell.org/package/lsp-types-1.3.0.0/lsp-types-1.3.0.0.tar.gz"; + sha256 = "0qajyyj2d51daa4y0pqaa87n4nny0i920ivvzfnrk9gq9386iac7"; }) { }; - ghc-source-gen = hself.callCabal2nix "ghc-source-gen" + lsp-test = hself.callCabal2nix "lsp-test" (builtins.fetchTarball { - url = - "https://hackage.haskell.org/package/ghc-source-gen-0.4.1.0/ghc-source-gen-0.4.1.0.tar.gz"; - sha256 = - "0kk599vk54ckikpxkzwrbx7z5x0xr20hr179rldmnlb34bf9mpnk"; + url = "https://hackage.haskell.org/package/lsp-test-0.14.0.1/lsp-test-0.14.0.1.tar.gz"; + sha256 = "10lnyg7nlbd3ymgvjjlrkfndyy7ay9cwnsk684p08k2gzlric4yq"; }) { }; }; @@ -184,7 +178,6 @@ pkgs.haskellPackages.ghc.version); ghc884 = pkgs.hlsHpkgs "ghc884"; ghc8104 = pkgs.hlsHpkgs "ghc8104"; - ghc8105 = pkgs.hlsHpkgs "ghc8105"; ghc901 = ghc901Config.tweakHpkgs (pkgs.hlsHpkgs "ghc901"); # Create a development shell of hls project @@ -238,14 +231,14 @@ haskell-language-server-dev = mkDevShell ghcDefault; haskell-language-server-884-dev = mkDevShell ghc884; haskell-language-server-8104-dev = mkDevShell ghc8104; - haskell-language-server-8105-dev = mkDevShell ghc8105; + haskell-language-server-8105-dev = builtins.throw "GHC 8.10.5 is not available in nixpkgs"; haskell-language-server-901-dev = mkDevShell ghc901; # hls package haskell-language-server = mkExe ghcDefault; haskell-language-server-884 = mkExe ghc884; haskell-language-server-8104 = mkExe ghc8104; - haskell-language-server-8105 = mkExe ghc8105; + haskell-language-server-8105 = builtins.throw "GHC 8.10.5 is not available in nixpkgs"; haskell-language-server-901 = mkExe ghc901; }; From b238c4f8beb7871fcf4a447f09fd1622da7adf3f Mon Sep 17 00:00:00 2001 From: Potato Hatsue <1793913507@qq.com> Date: Mon, 2 Aug 2021 22:07:28 +0800 Subject: [PATCH 2/3] Fix missing ghc-api-compat in hiedb --- configuration-ghc-901.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/configuration-ghc-901.nix b/configuration-ghc-901.nix index f2dabdbbbd..f0078aa09f 100644 --- a/configuration-ghc-901.nix +++ b/configuration-ghc-901.nix @@ -23,6 +23,11 @@ let sha256 = "WtxTB6ufTZC6SxOtGSfhlO4mY0y9eWejMSa0yUJ7dHQ="; }; in { + + # we need add ghc-api-compat to build depends, + # since its condition tree is not evaluated under ghc 9 + hiedb = addBuildDepend hsuper.hiedb hself.ghc-api-compat; + blaze-textual = hself.callCabal2nix "blaze-textual" (pkgs.fetchFromGitHub { owner = "jwaldmann"; From baffe07b8b29c403e5c2698d3b85581d36378d06 Mon Sep 17 00:00:00 2001 From: Potato Hatsue <1793913507@qq.com> Date: Tue, 3 Aug 2021 13:23:39 +0800 Subject: [PATCH 3/3] unrelated: Update paths_ignore for #2063 --- .github/workflows/bench.yml | 2 +- .github/workflows/nix.yml | 2 +- .github/workflows/test.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/bench.yml b/.github/workflows/bench.yml index 2ce995af44..91dd562bc5 100644 --- a/.github/workflows/bench.yml +++ b/.github/workflows/bench.yml @@ -15,7 +15,7 @@ jobs: uses: fkirc/skip-duplicate-actions@v3.4.0 with: cancel_others: true - paths_ignore: '["**/docs/**", "**.md", "**/LICENSE", ".circleci/**", "install/**", "**.nix", "**/test/**", "flake.lock"]' + paths_ignore: '["**/docs/**", "**.md", "**/LICENSE", ".circleci/**", "install/**", "**.nix", "**/test/**", "flake.lock", "**/README.md", "FUNDING.yml"]' bench-init: needs: pre_job diff --git a/.github/workflows/nix.yml b/.github/workflows/nix.yml index f48b8c2d9c..20a797dd2f 100644 --- a/.github/workflows/nix.yml +++ b/.github/workflows/nix.yml @@ -19,7 +19,7 @@ jobs: uses: fkirc/skip-duplicate-actions@master with: cancel_others: true - paths_ignore: '["**/docs/**", "**.md", "**/LICENSE", ".circleci/**", "install/**"]' + paths_ignore: '["**/docs/**", "**.md", "**/LICENSE", ".circleci/**", "install/**", "**/README.md", "FUNDING.yml"]' - id: skip_check_no_nix uses: fkirc/skip-duplicate-actions@master with: diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 3b43a0edd7..8cf842ad7b 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -20,7 +20,7 @@ jobs: uses: fkirc/skip-duplicate-actions@v3.4.0 with: cancel_others: true - paths_ignore: '["**/docs/**", "**.md", "**/LICENSE", ".circleci/**", "install/**", "**.nix", "flake.lock"]' + paths_ignore: '["**/docs/**", "**.md", "**/LICENSE", ".circleci/**", "install/**", "**.nix", "flake.lock", "**/README.md", "FUNDING.yml"]' # If we only change ghcide downstream packages we have not test ghcide itself - id: skip_ghcide_check uses: fkirc/skip-duplicate-actions@v3.4.0