diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix index d8e391dfd7b7..136003ee912c 100644 --- a/pkgs/development/haskell-modules/configuration-common.nix +++ b/pkgs/development/haskell-modules/configuration-common.nix @@ -1670,6 +1670,8 @@ self: super: { sha256 = "sha256-J8N4+HUQ6vlJBCwCyxv8Fv5HSbtiim64Qh1n9CaRe1o="; stripLen = 1; }) + # https://github.com/hercules-ci/hercules-ci-agent/pull/526 + ./patches/hercules-ci-agent-cachix-1.6.patch ]) (self.generateOptparseApplicativeCompletions [ "hercules-ci-agent" ]) ]; diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix index ef1fa745116f..91c099abc3c3 100644 --- a/pkgs/development/haskell-modules/configuration-nix.nix +++ b/pkgs/development/haskell-modules/configuration-nix.nix @@ -988,29 +988,29 @@ self: super: builtins.intersectAttrs super { domaindriven-core = dontCheck super.domaindriven-core; cachix-api = overrideCabal (drv: { - version = "1.5"; + version = "1.6"; src = pkgs.fetchFromGitHub { owner = "cachix"; repo = "cachix"; - rev = "v1.5"; - sha256 = "sha256-bt8FFtDSJpBckx3dIjW5Xdvj8aVCm78R3VTpjK5F3Ac="; + rev = "v1.6"; + sha256 = "sha256-54ujAZYNigAn1oJAfupUtZHa0WRQbCQGLEfLmkw8iFc="; }; postUnpack = "sourceRoot=$sourceRoot/cachix-api"; postPatch = '' - sed -i 's/1.4.2/1.5/' cachix-api.cabal + sed -i 's/1.5/1.6/' cachix-api.cabal ''; }) super.cachix-api; cachix = overrideCabal (drv: { - version = "1.5"; + version = "1.6"; src = pkgs.fetchFromGitHub { owner = "cachix"; repo = "cachix"; - rev = "v1.5"; - sha256 = "sha256-bt8FFtDSJpBckx3dIjW5Xdvj8aVCm78R3VTpjK5F3Ac="; + rev = "v1.6"; + sha256 = "sha256-54ujAZYNigAn1oJAfupUtZHa0WRQbCQGLEfLmkw8iFc="; }; postUnpack = "sourceRoot=$sourceRoot/cachix"; postPatch = '' - sed -i 's/1.4.2/1.5/' cachix.cabal + sed -i 's/1.5/1.6/' cachix.cabal ''; }) (lib.pipe (super.cachix.override { @@ -1021,8 +1021,7 @@ self: super: builtins.intersectAttrs super { [ (addBuildTool self.hercules-ci-cnix-store.nixPackage) (addBuildTool pkgs.pkg-config) - (addBuildDepend self.inline-c-cpp) - (addBuildDepend self.hercules-ci-cnix-store) + (addBuildDepend self.ascii-progress) ] ); diff --git a/pkgs/development/haskell-modules/patches/hercules-ci-agent-cachix-1.6.patch b/pkgs/development/haskell-modules/patches/hercules-ci-agent-cachix-1.6.patch new file mode 100644 index 000000000000..71145a3a3e4a --- /dev/null +++ b/pkgs/development/haskell-modules/patches/hercules-ci-agent-cachix-1.6.patch @@ -0,0 +1,32 @@ +diff --git a/hercules-ci-agent/hercules-ci-agent/Hercules/Agent/Cachix.hs b/hercules-ci-agent/hercules-ci-agent/Hercules/Agent/Cachix.hs +index 849d9bc..972bc90 100644 +--- hercules-ci-agent/hercules-ci-agent/Hercules/Agent/Cachix.hs ++++ hercules-ci-agent/hercules-ci-agent/Hercules/Agent/Cachix.hs +@@ -17,6 +17,7 @@ import Hercules.Agent.Log + import Hercules.CNix.Store (StorePath) + import Hercules.Error + import qualified Hercules.Formats.CachixCache as CachixCache ++import qualified Data.Conduit as Conduit + import Protolude + + push :: Text -> [StorePath] -> Int -> App () +@@ -36,6 +37,9 @@ push cache paths workers = withNamedContext "cache" cache $ do + Cachix.Push.PushParams + { pushParamsName = Agent.Cachix.pushCacheName pushCache, + pushParamsSecret = Agent.Cachix.pushCacheSecret pushCache, ++#if MIN_VERSION_cachix(1,6,0) ++ pushOnClosureAttempt = \_ missing -> return missing, ++#endif + pushParamsStore = nixStore, + pushParamsClientEnv = clientEnv, + pushParamsStrategy = \storePath -> +@@ -59,6 +63,9 @@ push cache paths workers = withNamedContext "cache" cache $ do + compressionLevel = 2, + #else + withXzipCompressor = Cachix.Push.defaultWithXzipCompressor, ++#endif ++#if MIN_VERSION_cachix(1,6,0) ++ onUncompressedNARStream = \_ _ -> Conduit.awaitForever Conduit.yield, + #endif + omitDeriver = False + }