From 4630fcf686b7b178e101e89d0bd8e8af1684ab97 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Mon, 30 Nov 2020 17:00:57 +0100 Subject: [PATCH 01/28] botan2: 2.9.0 -> 2.17.2 In botan 2.11.0 the upstream switched to tar.xz archives. To continue supporting botan1 the source package extension can now be overriden from within the specialized package. Addresses two advisories, neither of which received a CVE: - 2020-07-05: Failure to enforce name constraints on alternative names - 2020-03-24: Side channel during CBC padding --- pkgs/development/libraries/botan/2.0.nix | 6 +++--- pkgs/development/libraries/botan/default.nix | 1 + pkgs/development/libraries/botan/generic.nix | 7 ++++--- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/pkgs/development/libraries/botan/2.0.nix b/pkgs/development/libraries/botan/2.0.nix index 22ddb76b29bd..2346153e2a15 100644 --- a/pkgs/development/libraries/botan/2.0.nix +++ b/pkgs/development/libraries/botan/2.0.nix @@ -1,9 +1,9 @@ { callPackage, ... } @ args: callPackage ./generic.nix (args // { - baseVersion = "2.9"; - revision = "0"; - sha256 = "06fiyalvc68p11qqh953azx2vrbav5vr00yvcfp67p9l4csn8m9h"; + baseVersion = "2.17"; + revision = "2"; + sha256 = "0v0yiq0qxcrsn5b34j6bz8i6pds8dih2ds90ylmy1msm5gz7vqpb"; postPatch = '' sed -e 's@lang_flags "@&--std=c++11 @' -i src/build-data/cc/{gcc,clang}.txt ''; diff --git a/pkgs/development/libraries/botan/default.nix b/pkgs/development/libraries/botan/default.nix index 04652aa013aa..8bcc6aaa8efb 100644 --- a/pkgs/development/libraries/botan/default.nix +++ b/pkgs/development/libraries/botan/default.nix @@ -4,6 +4,7 @@ callPackage ./generic.nix (args // { baseVersion = "1.10"; revision = "17"; sha256 = "04rnha712dd3sdb2q7k2yw45sf405jyigk7yrjfr6bwd9fvgyiv8"; + sourceExtension = "tgz"; extraConfigureFlags = "--with-gnump"; postPatch = '' sed -e 's@lang_flags "@&--std=c++11 @' -i src/build-data/cc/{gcc,clang}.txt diff --git a/pkgs/development/libraries/botan/generic.nix b/pkgs/development/libraries/botan/generic.nix index 18b1b47f6d38..4d2cf7515c03 100644 --- a/pkgs/development/libraries/botan/generic.nix +++ b/pkgs/development/libraries/botan/generic.nix @@ -1,6 +1,7 @@ { stdenv, fetchurl, python, bzip2, zlib, gmp, openssl, boost # Passed by version specific builders , baseVersion, revision, sha256 +, sourceExtension ? "tar.xz" , extraConfigureFlags ? "" , postPatch ? null , darwin @@ -12,10 +13,10 @@ stdenv.mkDerivation rec { version = "${baseVersion}.${revision}"; src = fetchurl { - name = "Botan-${version}.tgz"; + name = "Botan-${version}.${sourceExtension}"; urls = [ - "http://files.randombit.net/botan/v${baseVersion}/Botan-${version}.tgz" - "http://botan.randombit.net/releases/Botan-${version}.tgz" + "http://files.randombit.net/botan/v${baseVersion}/Botan-${version}.${sourceExtension}" + "http://botan.randombit.net/releases/Botan-${version}.${sourceExtension}" ]; inherit sha256; }; From e88bdd5f50d949fdd6b2a8722c22119bdc4bfefc Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Mon, 30 Nov 2020 19:57:30 +0100 Subject: [PATCH 02/28] neopg: mark as broken Fails to build with recent versions of botan2. The issue has been reported upstream at https://github.com/das-labor/neopg/issues/98. --- pkgs/tools/security/neopg/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/tools/security/neopg/default.nix b/pkgs/tools/security/neopg/default.nix index 4f4f660e20f4..8c0d31853ff9 100644 --- a/pkgs/tools/security/neopg/default.nix +++ b/pkgs/tools/security/neopg/default.nix @@ -44,5 +44,6 @@ stdenv.mkDerivation rec { ''; maintainers = with maintainers; [ erictapen ]; platforms = platforms.linux; + broken = true; # fails to build with recent versions of botan. https://github.com/das-labor/neopg/issues/98 }; } From 10a3fd4892d077a27b1143b5f10c8d49646d3ae9 Mon Sep 17 00:00:00 2001 From: Atemu Date: Wed, 16 Dec 2020 06:06:46 +0100 Subject: [PATCH 03/28] linux_zen: 5.9.14 -> 5.10.1 --- pkgs/os-specific/linux/kernel/linux-zen.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/linux-zen.nix b/pkgs/os-specific/linux/kernel/linux-zen.nix index 5ac81d6ebb94..fd06b2f82172 100644 --- a/pkgs/os-specific/linux/kernel/linux-zen.nix +++ b/pkgs/os-specific/linux/kernel/linux-zen.nix @@ -1,7 +1,7 @@ { stdenv, fetchFromGitHub, buildLinux, ... } @ args: let - version = "5.9.14"; + version = "5.10.1"; in buildLinux (args // { @@ -13,11 +13,11 @@ buildLinux (args // { owner = "zen-kernel"; repo = "zen-kernel"; rev = "v${version}-zen1"; - sha256 = "1b8pm80z49d7qk9mvdf9w3hih34pilqr1zjk110q5im1kdz81zrg"; + sha256 = "1c77x53ixyn64b4qq6br6ckicmjs316c8k08yfxibmhv72av1wcp"; }; extraMeta = { - branch = "5.9/master"; + branch = "5.10/master"; maintainers = with stdenv.lib.maintainers; [ atemu andresilva ]; }; From f602e104b08b907d8a913aaff58de0f9bcf7d232 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Thu, 10 Dec 2020 18:43:01 +0200 Subject: [PATCH 04/28] octave: Use latest jdk --- pkgs/top-level/all-packages.nix | 3 --- 1 file changed, 3 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index dca2d81b9b2e..915e8dd883e0 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -10555,19 +10555,16 @@ in octave = callPackage ../development/interpreters/octave { python = python3; mkDerivation = stdenv.mkDerivation; - jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 }; octave-jit = callPackage ../development/interpreters/octave { python = python3; enableJIT = true; mkDerivation = stdenv.mkDerivation; - jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 }; octaveFull = libsForQt5.callPackage ../development/interpreters/octave { python = python3; enableQt = true; overridePlatforms = ["x86_64-linux" "x86_64-darwin"]; - jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 }; ocropus = callPackage ../applications/misc/ocropus { }; From 456d320c7184b0d1f42b788be0e0fc8854cdd327 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Thu, 10 Dec 2020 18:46:54 +0200 Subject: [PATCH 05/28] octave: Use only lib.optionals --- .../interpreters/octave/default.nix | 40 ++++++++++--------- 1 file changed, 21 insertions(+), 19 deletions(-) diff --git a/pkgs/development/interpreters/octave/default.nix b/pkgs/development/interpreters/octave/default.nix index 841f89b97fbd..f670dd1ba36b 100644 --- a/pkgs/development/interpreters/octave/default.nix +++ b/pkgs/development/interpreters/octave/default.nix @@ -89,23 +89,25 @@ mkDerivation rec { libwebp gl2ps ] - ++ (stdenv.lib.optionals enableQt [ + ++ stdenv.lib.optionals enableQt [ qtbase qtsvg qscintilla - ]) - ++ (stdenv.lib.optional (ghostscript != null) ghostscript) - ++ (stdenv.lib.optional (hdf5 != null) hdf5) - ++ (stdenv.lib.optional (glpk != null) glpk) - ++ (stdenv.lib.optional (suitesparse != null) suitesparse) - ++ (stdenv.lib.optional (enableJava) jdk) - ++ (stdenv.lib.optional (sundials_2 != null) sundials_2) - ++ (stdenv.lib.optional (gnuplot != null) gnuplot) - ++ (stdenv.lib.optional (python != null) python) - ++ (stdenv.lib.optionals (!stdenv.isDarwin) [ libGL libGLU libX11 ]) - ++ (stdenv.lib.optionals (stdenv.isDarwin) [ libiconv - darwin.apple_sdk.frameworks.Accelerate - darwin.apple_sdk.frameworks.Cocoa ]) + ] + ++ stdenv.lib.optionals (ghostscript != null) [ ghostscript ] + ++ stdenv.lib.optionals (hdf5 != null) [ hdf5 ] + ++ stdenv.lib.optionals (glpk != null) [ glpk ] + ++ stdenv.lib.optionals (suitesparse != null) [ suitesparse ] + ++ stdenv.lib.optionals (enableJava) [ jdk ] + ++ stdenv.lib.optionals (sundials_2 != null) [ sundials_2 ] + ++ stdenv.lib.optionals (gnuplot != null) [ gnuplot ] + ++ stdenv.lib.optionals (python != null) [ python ] + ++ stdenv.lib.optionals (!stdenv.isDarwin) [ libGL libGLU libX11 ] + ++ stdenv.lib.optionals stdenv.isDarwin [ + libiconv + darwin.apple_sdk.frameworks.Accelerate + darwin.apple_sdk.frameworks.Cocoa + ] ; nativeBuildInputs = [ pkgconfig @@ -115,12 +117,12 @@ mkDerivation rec { fftwSinglePrec texinfo ] - ++ (stdenv.lib.optional (sundials_2 != null) sundials_2) - ++ (stdenv.lib.optional enableJIT llvm) - ++ (stdenv.lib.optionals enableQt [ + ++ stdenv.lib.optionals (sundials_2 != null) [ sundials_2 ] + ++ stdenv.lib.optionals enableJIT [ llvm ] + ++ stdenv.lib.optionals enableQt [ qtscript qttools - ]) + ] ; doCheck = !stdenv.isDarwin; @@ -135,7 +137,7 @@ mkDerivation rec { "--with-lapack=lapack" (if blas.isILP64 then "--enable-64" else "--disable-64") ] - ++ (if stdenv.isDarwin then [ "--enable-link-all-dependencies" ] else [ ]) + ++ stdenv.lib.optionals stdenv.isDarwin [ "--enable-link-all-dependencies" ] ++ stdenv.lib.optionals enableReadline [ "--enable-readline" ] ++ stdenv.lib.optionals stdenv.isDarwin [ "--with-x=no" ] ++ stdenv.lib.optionals enableQt [ "--with-qt=5" ] From 674c5953b9e5ab1eee675c25d9462767bb2df8f5 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Thu, 10 Dec 2020 19:58:49 +0200 Subject: [PATCH 06/28] qrupdate: Fix FFLAGS Apparently, undetected in #98499, trying to use the flags written makes the build fail due to -O3. --- pkgs/development/libraries/qrupdate/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/libraries/qrupdate/default.nix b/pkgs/development/libraries/qrupdate/default.nix index 90d4cb45ce2a..b941021cb688 100644 --- a/pkgs/development/libraries/qrupdate/default.nix +++ b/pkgs/development/libraries/qrupdate/default.nix @@ -25,10 +25,10 @@ stdenv.mkDerivation rec { "BLAS=-L${blas}/lib -lblas" "PREFIX=${placeholder "out"}" ${stdenv.lib.optionalString blas.isILP64 - # Use their FFLAGS along with `-fdefault-integer-8`. If another - # application intends to use arpack, it should add this to it's FFLAGS as - # well. Otherwise (e.g): https://savannah.gnu.org/bugs/?50339 - "FFLAGS=-fimplicit-none -O3 -funroll-loops -fdefault-integer-8" + # If another application intends to use qrupdate compiled with blas with + # 64 bit support, it should add this to it's FFLAGS as well. See (e.g): + # https://savannah.gnu.org/bugs/?50339 + "FFLAGS=-fdefault-integer-8" } ) ''; From 67888e5bac96c151eb9920ddde1759bf37b328fb Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Thu, 10 Dec 2020 20:32:06 +0200 Subject: [PATCH 07/28] octave: Support 64 bit indices arrays Add a build argument `use64BitIdx`, and comment explaining how it affects the build - it modifies the deps to make sure they are all compatible with each other. --- .../interpreters/octave/default.nix | 66 +++++++++++++++---- 1 file changed, 53 insertions(+), 13 deletions(-) diff --git a/pkgs/development/interpreters/octave/default.nix b/pkgs/development/interpreters/octave/default.nix index f670dd1ba36b..babedef64e72 100644 --- a/pkgs/development/interpreters/octave/default.nix +++ b/pkgs/development/interpreters/octave/default.nix @@ -23,15 +23,17 @@ , fftwSinglePrec , zlib , curl -, qrupdate , blas, lapack -, arpack +# These two should use the same lapack and blas as the above +, qrupdate, arpack, suitesparse ? null +# If set to true, the above 5 deps are overriden to use the blas and lapack +# with 64 bit indexes support. If all are not compatible, the build will fail. +, use64BitIdx ? false , libwebp , gl2ps , ghostscript ? null , hdf5 ? null , glpk ? null -, suitesparse ? null , gnuplot ? null # - Include support for GNU readline: , enableReadline ? true @@ -56,9 +58,42 @@ , darwin }: -assert (!blas.isILP64) && (!lapack.isILP64); - -mkDerivation rec { +let + # Not always evaluated + blas' = if use64BitIdx then + blas.override { + isILP64 = true; + } + else + blas + ; + lapack' = if use64BitIdx then + lapack.override { + isILP64 = true; + } + else + lapack + ; + qrupdate' = qrupdate.override { + # If use64BitIdx is false, this override doesn't evaluate to a new + # derivation, as blas and lapack are not overriden. + blas = blas'; + lapack = lapack'; + }; + arpack' = arpack.override { + blas = blas'; + lapack = lapack'; + }; + # Not always suitesparse is required at all + suitesparse' = if suitesparse != null then + suitesparse.override { + blas = blas'; + lapack = lapack'; + } + else + null + ; +in mkDerivation rec { version = "6.1.0"; pname = "octave"; @@ -78,14 +113,14 @@ mkDerivation rec { fltk zlib curl - blas - lapack + blas' + lapack' libsndfile fftw fftwSinglePrec portaudio - qrupdate - arpack + qrupdate' + arpack' libwebp gl2ps ] @@ -97,7 +132,7 @@ mkDerivation rec { ++ stdenv.lib.optionals (ghostscript != null) [ ghostscript ] ++ stdenv.lib.optionals (hdf5 != null) [ hdf5 ] ++ stdenv.lib.optionals (glpk != null) [ glpk ] - ++ stdenv.lib.optionals (suitesparse != null) [ suitesparse ] + ++ stdenv.lib.optionals (suitesparse != null) [ suitesparse' ] ++ stdenv.lib.optionals (enableJava) [ jdk ] ++ stdenv.lib.optionals (sundials_2 != null) [ sundials_2 ] ++ stdenv.lib.optionals (gnuplot != null) [ gnuplot ] @@ -130,12 +165,12 @@ mkDerivation rec { enableParallelBuilding = true; # See https://savannah.gnu.org/bugs/?50339 - F77_INTEGER_8_FLAG = if blas.isILP64 then "-fdefault-integer-8" else ""; + F77_INTEGER_8_FLAG = if use64BitIdx then "-fdefault-integer-8" else ""; configureFlags = [ "--with-blas=blas" "--with-lapack=lapack" - (if blas.isILP64 then "--enable-64" else "--disable-64") + (if use64BitIdx then "--enable-64" else "--disable-64") ] ++ stdenv.lib.optionals stdenv.isDarwin [ "--enable-link-all-dependencies" ] ++ stdenv.lib.optionals enableReadline [ "--enable-readline" ] @@ -153,6 +188,11 @@ mkDerivation rec { passthru = { inherit version; sitePath = "share/octave/${version}/site"; + blas = blas'; + lapack = lapack'; + qrupdate = qrupdate'; + arpack = arpack'; + suitesparse = suitesparse'; }; meta = { From 247cf9f28301cb95e5fa4d38c1da1d8045714715 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Thu, 10 Dec 2020 20:47:58 +0200 Subject: [PATCH 08/28] octave: add @doronbehar as maintainer --- pkgs/development/interpreters/octave/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/interpreters/octave/default.nix b/pkgs/development/interpreters/octave/default.nix index babedef64e72..e6a1e278f44b 100644 --- a/pkgs/development/interpreters/octave/default.nix +++ b/pkgs/development/interpreters/octave/default.nix @@ -198,7 +198,7 @@ in mkDerivation rec { meta = { homepage = "https://www.gnu.org/software/octave/"; license = stdenv.lib.licenses.gpl3Plus; - maintainers = with stdenv.lib.maintainers; [raskin]; + maintainers = with stdenv.lib.maintainers; [ raskin doronbehar ]; description = "Scientific Pragramming Language"; # https://savannah.gnu.org/bugs/?func=detailitem&item_id=56425 is the best attempt to fix JIT broken = enableJIT; From 74c94d1a35b306b3e99ae2c6345e744971144819 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Sat, 19 Dec 2020 10:27:41 +0200 Subject: [PATCH 09/28] octave: Remove version from passthru It's already defined in the derivation. --- pkgs/development/interpreters/octave/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/development/interpreters/octave/default.nix b/pkgs/development/interpreters/octave/default.nix index e6a1e278f44b..6cc70fad247a 100644 --- a/pkgs/development/interpreters/octave/default.nix +++ b/pkgs/development/interpreters/octave/default.nix @@ -186,7 +186,6 @@ in mkDerivation rec { ''; passthru = { - inherit version; sitePath = "share/octave/${version}/site"; blas = blas'; lapack = lapack'; From 58b27b5ffec84b5da8bcbf67ae4e0d53c34a6ee6 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Sat, 19 Dec 2020 10:28:14 +0200 Subject: [PATCH 10/28] octave: inherit python in passthru For in case one day python will be overridden, we'll know which python to use. --- pkgs/development/interpreters/octave/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/interpreters/octave/default.nix b/pkgs/development/interpreters/octave/default.nix index 6cc70fad247a..7fd66dc42751 100644 --- a/pkgs/development/interpreters/octave/default.nix +++ b/pkgs/development/interpreters/octave/default.nix @@ -192,6 +192,7 @@ in mkDerivation rec { qrupdate = qrupdate'; arpack = arpack'; suitesparse = suitesparse'; + inherit python; }; meta = { From 421e81780c7e68b119e6a344a7c412b74d4e75d4 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Sat, 19 Dec 2020 10:30:20 +0200 Subject: [PATCH 11/28] octave: inherit features enabled in passthru --- pkgs/development/interpreters/octave/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/interpreters/octave/default.nix b/pkgs/development/interpreters/octave/default.nix index 7fd66dc42751..526497696409 100644 --- a/pkgs/development/interpreters/octave/default.nix +++ b/pkgs/development/interpreters/octave/default.nix @@ -193,6 +193,7 @@ in mkDerivation rec { arpack = arpack'; suitesparse = suitesparse'; inherit python; + inherit enableQt enableJIT enableReadline enableJava; }; meta = { From 865f8ae377a550b4059f1ddf7432befef96d7f99 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Sat, 19 Dec 2020 10:58:04 +0200 Subject: [PATCH 12/28] octave: Use latest sundials --- pkgs/development/interpreters/octave/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/interpreters/octave/default.nix b/pkgs/development/interpreters/octave/default.nix index 526497696409..67fca52dad51 100644 --- a/pkgs/development/interpreters/octave/default.nix +++ b/pkgs/development/interpreters/octave/default.nix @@ -43,7 +43,7 @@ , jdk ? null , python ? null , overridePlatforms ? null -, sundials_2 ? null +, sundials ? null # - Build Octave Qt GUI: , enableQt ? false , qtbase ? null @@ -134,7 +134,7 @@ in mkDerivation rec { ++ stdenv.lib.optionals (glpk != null) [ glpk ] ++ stdenv.lib.optionals (suitesparse != null) [ suitesparse' ] ++ stdenv.lib.optionals (enableJava) [ jdk ] - ++ stdenv.lib.optionals (sundials_2 != null) [ sundials_2 ] + ++ stdenv.lib.optionals (sundials != null) [ sundials ] ++ stdenv.lib.optionals (gnuplot != null) [ gnuplot ] ++ stdenv.lib.optionals (python != null) [ python ] ++ stdenv.lib.optionals (!stdenv.isDarwin) [ libGL libGLU libX11 ] @@ -152,7 +152,7 @@ in mkDerivation rec { fftwSinglePrec texinfo ] - ++ stdenv.lib.optionals (sundials_2 != null) [ sundials_2 ] + ++ stdenv.lib.optionals (sundials != null) [ sundials ] ++ stdenv.lib.optionals enableJIT [ llvm ] ++ stdenv.lib.optionals enableQt [ qtscript From 37a16b85e03c44d85a532d94ebb3f426ead744aa Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Sat, 19 Dec 2020 10:59:33 +0200 Subject: [PATCH 13/28] sundials_2: remove No package needs it now - octave 5.2.0 was the only one that needed it, but now with octave 6.1.0 latest sundials 5.x.x is used. --- pkgs/development/libraries/sundials/2.x.nix | 59 --------------------- pkgs/top-level/all-packages.nix | 4 -- pkgs/top-level/release-alternatives.nix | 2 +- 3 files changed, 1 insertion(+), 64 deletions(-) delete mode 100644 pkgs/development/libraries/sundials/2.x.nix diff --git a/pkgs/development/libraries/sundials/2.x.nix b/pkgs/development/libraries/sundials/2.x.nix deleted file mode 100644 index ae22f0be1797..000000000000 --- a/pkgs/development/libraries/sundials/2.x.nix +++ /dev/null @@ -1,59 +0,0 @@ -{ stdenv -, cmake -, fetchurl -, python -# GNU Octave needs KLU for ODE solvers -, suitesparse -, blas, lapack -, gfortran -, lapackSupport ? true }: - -assert (!blas.isILP64) && (!lapack.isILP64); - -stdenv.mkDerivation rec { - pname = "sundials"; - version = "2.7.0"; - - buildInputs = [ python ] ++ stdenv.lib.optionals (lapackSupport) [ - gfortran - suitesparse - ]; - nativeBuildInputs = [ cmake ]; - - src = fetchurl { - url = "https://computation.llnl.gov/projects/${pname}/download/${pname}-${version}.tar.gz"; - sha256 = "01513g0j7nr3rh7hqjld6mw0mcx5j9z9y87bwjc16w2x2z3wm7yk"; - }; - - patches = [ - (fetchurl { - # https://github.com/LLNL/sundials/pull/19 - url = "https://github.com/LLNL/sundials/commit/1350421eab6c5ab479de5eccf6af2dcad1eddf30.patch"; - sha256 = "0g67lixp9m85fqpb9rzz1hl1z8ibdg0ldwq5z6flj5zl8a7cw52l"; - }) - ]; - - cmakeFlags = [ - "-DEXAMPLES_INSTALL_PATH=${placeholder "out"}/share/examples" - ] ++ stdenv.lib.optionals (lapackSupport) [ - "-DSUNDIALS_INDEX_TYPE=int32_t" - # GNU Octave needs KLU for ODE solvers - "-DKLU_ENABLE=ON" - "-DKLU_INCLUDE_DIR=${suitesparse}/include" - "-DKLU_LIBRARY_DIR=${suitesparse}/lib" - "-DLAPACK_ENABLE=ON" - "-DLAPACK_LIBRARIES=${lapack}/lib/lapack${stdenv.hostPlatform.extensions.sharedLibrary};${blas}/lib/blas${stdenv.hostPlatform.extensions.sharedLibrary}" - ]; - - # flaky tests, and patch in https://github.com/LLNL/sundials/pull/21 doesn't apply cleanly for sundials_3 - doCheck = false; - checkPhase = "make test"; - - meta = with stdenv.lib; { - description = "Suite of nonlinear differential/algebraic equation solvers"; - homepage = "https://computation.llnl.gov/projects/sundials"; - platforms = platforms.all; - maintainers = with maintainers; [ idontgetoutmuch ]; - license = licenses.bsd3; - }; -} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 915e8dd883e0..b6c5345dba02 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -16178,10 +16178,6 @@ in python = python3; }; - sundials_2 = callPackage ../development/libraries/sundials/2.x.nix { - python = python3; - }; - sutils = callPackage ../tools/misc/sutils { }; svrcore = callPackage ../development/libraries/svrcore { }; diff --git a/pkgs/top-level/release-alternatives.nix b/pkgs/top-level/release-alternatives.nix index 7479377bd302..5e309a0129c3 100644 --- a/pkgs/top-level/release-alternatives.nix +++ b/pkgs/top-level/release-alternatives.nix @@ -9,7 +9,7 @@ let blasUsers = [ # "julia_07" "julia_10" "julia_11" "julia_13" "octave" "octaveFull" "fflas-ffpack" "linbox" "R" "ipopt" "hpl" "rspamd" "octopus" - "sundials" "sundials_2" "superlu" "suitesparse_5_3" "suitesparse_4_4" + "sundials" "superlu" "suitesparse_5_3" "suitesparse_4_4" "suitesparse_4_2" "scs" "scalapack" "petsc" "cholmod-extra" "arpack" "qrupdate" "libcint" "iml" "globalarrays" "arrayfire" "armadillo" "xfitter" "lammps" "plink-ng" "quantum-espresso" "siesta" From 0aad53c2c767a0b79e0ba8979eca14b2c97f392b Mon Sep 17 00:00:00 2001 From: ajs124 Date: Sat, 19 Dec 2020 20:14:20 +0100 Subject: [PATCH 14/28] glusterfs: 7.6 -> 8.3 while 7.x is technically still supported, 8.x is already up to .3 release notes: https://gluster.readthedocs.io/en/latest/release-notes/8.3/ --- pkgs/tools/filesystems/glusterfs/default.nix | 54 ++++++++----------- ...10-glusterfind-var-data-under-prefix.patch | 27 ---------- 2 files changed, 21 insertions(+), 60 deletions(-) delete mode 100644 pkgs/tools/filesystems/glusterfs/glusterfs-fix-bug-1489610-glusterfind-var-data-under-prefix.patch diff --git a/pkgs/tools/filesystems/glusterfs/default.nix b/pkgs/tools/filesystems/glusterfs/default.nix index f495b56e3252..a4e6bc1182be 100644 --- a/pkgs/tools/filesystems/glusterfs/default.nix +++ b/pkgs/tools/filesystems/glusterfs/default.nix @@ -1,25 +1,17 @@ -{stdenv, fetchurl, fuse, bison, flex_2_5_35, openssl, python3, ncurses, readline, +{stdenv, fetchFromGitHub, fuse, bison, flex_2_5_35, openssl, python3, ncurses, readline, autoconf, automake, libtool, pkgconfig, zlib, libaio, libxml2, acl, sqlite, liburcu, attr, makeWrapper, coreutils, gnused, gnugrep, which, openssh, gawk, findutils, util-linux, lvm2, btrfs-progs, e2fsprogs, xfsprogs, systemd, rsync, glibc, rpcsvc-proto, libtirpc }: let - s = - rec { - baseName="glusterfs"; - # NOTE: On each glusterfs release, it should be checked if gluster added - # new, or changed, Python scripts whose PYTHONPATH has to be set in - # `postFixup` below, and whose runtime deps need to go into - # `nativeBuildInputs`. - # The command - # find /nix/store/...-glusterfs-.../ -name '*.py' -executable - # can help with finding new Python scripts. - version = "7.6"; - name="${baseName}-${version}"; - url="https://github.com/gluster/glusterfs/archive/v${version}.tar.gz"; - sha256 = "0zdcv2jk8dp67id8ic30mkn97ccp07jf20g7v09a5k31pw9aqyih"; - }; + # NOTE: On each glusterfs release, it should be checked if gluster added + # new, or changed, Python scripts whose PYTHONPATH has to be set in + # `postFixup` below, and whose runtime deps need to go into + # `nativeBuildInputs`. + # The command + # find /nix/store/...-glusterfs-.../ -name '*.py' -executable + # can help with finding new Python scripts. buildInputs = [ fuse bison flex_2_5_35 openssl ncurses readline @@ -60,16 +52,17 @@ let which # which xfsprogs # xfs_info ]; -in -stdenv.mkDerivation -{ - inherit (s) name version; - inherit buildInputs propagatedBuildInputs; +in stdenv.mkDerivation rec { + pname = "glusterfs"; + version = "8.3"; - patches = [ - # Remove when https://bugzilla.redhat.com/show_bug.cgi?id=1489610 is fixed - ./glusterfs-fix-bug-1489610-glusterfind-var-data-under-prefix.patch - ]; + src = fetchFromGitHub { + owner = "gluster"; + repo = pname; + rev = "v${version}"; + sha256 = "09vvbymiacz2pzwnq6f2dd7g2zszzsivdncz45sh977v3z0n84az"; + }; + inherit buildInputs propagatedBuildInputs; postPatch = '' sed -e '/chmod u+s/d' -i contrib/fuse-util/Makefile.am @@ -91,7 +84,7 @@ stdenv.mkDerivation # but fails when the version is empty. # See upstream GlusterFS bug https://bugzilla.redhat.com/show_bug.cgi?id=1452705 preConfigure = '' - echo "v${s.version}" > VERSION + echo "v${version}" > VERSION ./autogen.sh export PYTHON=${python3}/bin/python ''; @@ -109,7 +102,7 @@ stdenv.mkDerivation postInstall = '' cp -r $out/$out/* $out rm -r $out/nix - ''; + ''; postFixup = '' # glusterd invokes `gluster` and other utilities when telling other glusterd nodes to run commands. @@ -153,7 +146,7 @@ stdenv.mkDerivation wrapProgram $out/share/glusterfs/scripts/eventsdash.py --set PATH "$GLUSTER_PATH" --set PYTHONPATH "$GLUSTER_PYTHONPATH" --set LD_LIBRARY_PATH "$GLUSTER_LD_LIBRARY_PATH" wrapProgram $out/libexec/glusterfs/glusterfind/brickfind.py --set PATH "$GLUSTER_PATH" --set PYTHONPATH "$GLUSTER_PYTHONPATH" --set LD_LIBRARY_PATH "$GLUSTER_LD_LIBRARY_PATH" wrapProgram $out/libexec/glusterfs/glusterfind/changelog.py --set PATH "$GLUSTER_PATH" --set PYTHONPATH "$GLUSTER_PYTHONPATH" --set LD_LIBRARY_PATH "$GLUSTER_LD_LIBRARY_PATH" - ''; + ''; doInstallCheck = true; @@ -187,12 +180,7 @@ stdenv.mkDerivation rm -r $out/bin/conf.py ''; - src = fetchurl { - inherit (s) url sha256; - }; - meta = with stdenv.lib; { - inherit (s) version; description = "Distributed storage system"; homepage = "https://www.gluster.org"; license = licenses.lgpl3Plus; # dual licese: choice of lgpl3Plus or gpl2 diff --git a/pkgs/tools/filesystems/glusterfs/glusterfs-fix-bug-1489610-glusterfind-var-data-under-prefix.patch b/pkgs/tools/filesystems/glusterfs/glusterfs-fix-bug-1489610-glusterfind-var-data-under-prefix.patch deleted file mode 100644 index f08d73cf3a65..000000000000 --- a/pkgs/tools/filesystems/glusterfs/glusterfs-fix-bug-1489610-glusterfind-var-data-under-prefix.patch +++ /dev/null @@ -1,27 +0,0 @@ -From f523afac49e24ecc0fa4ad85195135689cf445f0 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Niklas=20Hamb=C3=BCchen?= -Date: Wed, 27 Sep 2017 21:36:41 +0200 -Subject: [PATCH] Fix "glusterfind saves var data under $prefix instead of - localstatedir". Fixes #1489610 - -Change-Id: Id2362c20f34346c37acfb9eb1ad105d0b7b8b60f ---- - configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index f87d8a454..b4d3f5d10 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -1118,7 +1118,7 @@ if test "x$exec_prefix" = xNONE; then - exec_prefix="$(eval echo $prefix)" - fi - GLUSTERFS_LIBEXECDIR="$(eval echo $libexecdir)/glusterfs" --GLUSTERFSD_MISCDIR="$(eval echo $prefix)/var/lib/misc/glusterfsd" -+GLUSTERFSD_MISCDIR="$(eval echo $localstatedir)/lib/misc/glusterfsd" - prefix=$old_prefix - exec_prefix=$old_exec_prefix - --- -2.12.0 - From ce5d0b66b3d0a3031e9fbf14680a075bb4970576 Mon Sep 17 00:00:00 2001 From: numinit Date: Sat, 22 Aug 2020 19:12:26 -0600 Subject: [PATCH 15/28] keystore-explorer: init at 5.4.4 --- .../misc/keystore-explorer/default.nix | 40 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 42 insertions(+) create mode 100644 pkgs/applications/misc/keystore-explorer/default.nix diff --git a/pkgs/applications/misc/keystore-explorer/default.nix b/pkgs/applications/misc/keystore-explorer/default.nix new file mode 100644 index 000000000000..613b96d1731c --- /dev/null +++ b/pkgs/applications/misc/keystore-explorer/default.nix @@ -0,0 +1,40 @@ +{ fetchzip, stdenv, jdk8, runtimeShell }: + +stdenv.mkDerivation rec { + version = "5.4.4"; + pname = "keystore-explorer"; + src = fetchzip { + url = "https://github.com/kaikramer/keystore-explorer/releases/download/v${version}/kse-544.zip"; + sha256 = "01kpa8g6p6vcqq9y70w5bm8jbw4kp55pbywj2zrhgjibrhgjqi0b"; + }; + + installPhase = '' + runHook preInstall + + mkdir -p $out/bin + mkdir -p $out/share/keystore-explorer + cp -R icons licenses lib kse.jar $out/share/keystore-explorer/ + + # keystore-explorer's kse.sh tries to detect the path of Java by using + # Python on Darwin; just write our own start script to avoid unnecessary dependencies + cat > $out/bin/keystore-explorer < Date: Sun, 20 Dec 2020 22:07:34 +0100 Subject: [PATCH 16/28] libpsm2: 11.2.156 -> 11.2.185 --- pkgs/os-specific/linux/libpsm2/default.nix | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/pkgs/os-specific/linux/libpsm2/default.nix b/pkgs/os-specific/linux/libpsm2/default.nix index b9e41380da8c..501453b88216 100644 --- a/pkgs/os-specific/linux/libpsm2/default.nix +++ b/pkgs/os-specific/linux/libpsm2/default.nix @@ -2,8 +2,7 @@ stdenv.mkDerivation rec { pname = "libpsm2"; - version = "11.2.156"; - ifs_version = "10_10_2_0_44"; + version = "11.2.185"; preConfigure= '' export UDEVDIR=$out/etc/udev @@ -14,7 +13,7 @@ stdenv.mkDerivation rec { buildInputs = [ numactl pkgconfig ]; - installFlags = [ + installFlags = [ "DESTDIR=$(out)" "UDEVDIR=/etc/udev" "LIBPSM2_COMPAT_CONF_DIR=/etc" @@ -23,8 +22,8 @@ stdenv.mkDerivation rec { src = fetchFromGitHub { owner = "intel"; repo = "opa-psm2"; - rev = "IFS_RELEASE_${ifs_version}"; - sha256 = "0ckrfzih1ga9yvximxjdh0z05kn9l858ykqiblv18w6ka3gra1xz"; + rev = "PSM2_${version}"; + sha256 = "062hg4r6gz7pla9df70nqs5i2a3mp1wszmp4l0g771fykhhrxsjg"; }; postInstall = '' From 15d67698c018c77ebd1fda79188a2923b2677539 Mon Sep 17 00:00:00 2001 From: Francesco Gazzetta Date: Sun, 20 Dec 2020 23:23:19 +0100 Subject: [PATCH 17/28] mindustry,mindustry-server: 120.2 -> 121.4 --- pkgs/games/mindustry/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/games/mindustry/default.nix b/pkgs/games/mindustry/default.nix index 89ff37458af9..c547fb052aab 100644 --- a/pkgs/games/mindustry/default.nix +++ b/pkgs/games/mindustry/default.nix @@ -22,14 +22,14 @@ let # Note: when raising the version, ensure that all SNAPSHOT versions in # build.gradle are replaced by a fixed version # (the current one at the time of release) (see postPatch). - version = "120.2"; + version = "121.4"; buildVersion = makeBuildVersion version; src = fetchFromGitHub { owner = "Anuken"; repo = "Mindustry"; rev = "v${version}"; - sha256 = "01a7qpwfr1n540fk0k65kl03biix0gmg66z7qn22mb2703laq1xc"; + sha256 = "14w0fkn8q5bj84py7vx33wdk9d37ncrq6rdj5ryz4mvlxbix2n4n"; }; desktopItem = makeDesktopItem { @@ -74,7 +74,7 @@ let ''; outputHashAlgo = "sha256"; outputHashMode = "recursive"; - outputHash = "1yv9l8zdml6drmvlgv45w3qas9qmb654x4kja3an4d16k020khr7"; + outputHash = "18n671aa013cnsnp9aaw61llqz4s4vn7zgja8cazd0cg632x8jca"; }; # Separate commands for building and installing the server and the client From 3c233e2692c1ad413bf94a6e9e1991e2dd0683c3 Mon Sep 17 00:00:00 2001 From: Morgan Jones Date: Sun, 20 Dec 2020 14:48:11 -0700 Subject: [PATCH 18/28] soapyaudio: init at 0.1.1 --- .../applications/radio/soapyaudio/default.nix | 31 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 3 ++ 2 files changed, 34 insertions(+) create mode 100644 pkgs/applications/radio/soapyaudio/default.nix diff --git a/pkgs/applications/radio/soapyaudio/default.nix b/pkgs/applications/radio/soapyaudio/default.nix new file mode 100644 index 000000000000..ce5811b009ee --- /dev/null +++ b/pkgs/applications/radio/soapyaudio/default.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchFromGitHub, cmake, pkg-config +, hamlib, rtaudio, alsaLib, libpulseaudio, libjack2, libusb1, soapysdr +} : + +stdenv.mkDerivation rec { + pname = "soapyaudio"; + version = "0.1.1"; + + src = fetchFromGitHub { + owner = "pothosware"; + repo = "SoapyAudio"; + rev = "soapy-audio-${version}"; + sha256 = "0minlsc1lvmqm20vn5hb4im7pz8qwklfy7sbr2xr73xkrbqdahc0"; + }; + + nativeBuildInputs = [ cmake pkg-config ]; + buildInputs = [ hamlib rtaudio alsaLib libpulseaudio libjack2 libusb1 soapysdr ]; + + cmakeFlags = [ + "-DSoapySDR_DIR=${soapysdr}/share/cmake/SoapySDR/" + "-DUSE_HAMLIB=ON" + ]; + + meta = with stdenv.lib; { + homepage = "https://github.com/pothosware/SoapyAudio"; + description = "SoapySDR plugin for amateur radio and audio devices"; + license = licenses.mit; + maintainers = with maintainers; [ numinit ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1d5766b7c656..6089d9a71c22 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -16015,6 +16015,8 @@ in soapyairspy = callPackage ../applications/radio/soapyairspy { }; + soapyaudio = callPackage ../applications/radio/soapyaudio { }; + soapybladerf = callPackage ../applications/radio/soapybladerf { }; soapyhackrf = callPackage ../applications/radio/soapyhackrf { }; @@ -16027,6 +16029,7 @@ in extraPackages = [ limesuite soapyairspy + soapyaudio soapybladerf soapyhackrf soapyremote From 17f8726ee2a31249f6b151e629ea2cd599c89d64 Mon Sep 17 00:00:00 2001 From: Ben Siraphob Date: Tue, 27 Oct 2020 14:51:02 +0700 Subject: [PATCH 19/28] flasm: init at 1.64 --- pkgs/development/compilers/flasm/default.nix | 30 ++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 32 insertions(+) create mode 100644 pkgs/development/compilers/flasm/default.nix diff --git a/pkgs/development/compilers/flasm/default.nix b/pkgs/development/compilers/flasm/default.nix new file mode 100644 index 000000000000..9393d4fc59f4 --- /dev/null +++ b/pkgs/development/compilers/flasm/default.nix @@ -0,0 +1,30 @@ +{ stdenv, fetchzip, unzip, bison, flex, gperf, zlib }: + +stdenv.mkDerivation rec { + pname = "flasm"; + version = "1.64"; + + src = fetchzip { + url = "https://www.nowrap.de/download/flasm16src.zip"; + sha256 = "03hvxm66rb6rjwbr07hc3k7ia5rim2xlhxbd9qmcai9xwmyiqafg"; + stripRoot = false; + }; + + makeFlags = [ "CC=cc" ]; + + nativeBuildInputs = [ unzip bison flex gperf ]; + + buildInputs = [ zlib ]; + + installPhase = '' + install -Dm755 flasm -t $out/bin + ''; + + meta = with stdenv.lib; { + description = "Assembler and disassembler for Flash (SWF) bytecode"; + homepage = "http://flasm.sourceforge.net/"; + license = licenses.bsd2; + maintainers = with maintainers; [ siraben ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d0ffd9d20d2e..d0587fadab42 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9033,6 +9033,8 @@ in fasmg = callPackage ../development/compilers/fasmg { }; + flasm = callPackage ../development/compilers/flasm { }; + flyctl = callPackage ../development/web/flyctl { }; flutterPackages = From 15dcf1344ff77df7fc03f6ab188e9c60f970057c Mon Sep 17 00:00:00 2001 From: Sibi Prabakaran Date: Mon, 21 Dec 2020 11:01:54 +0530 Subject: [PATCH 20/28] nixos/manual: fix typo in virtualbox installation guide --- nixos/doc/manual/installation/installing-virtualbox-guest.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/doc/manual/installation/installing-virtualbox-guest.xml b/nixos/doc/manual/installation/installing-virtualbox-guest.xml index 1cffeed48079..4957b700946e 100644 --- a/nixos/doc/manual/installation/installing-virtualbox-guest.xml +++ b/nixos/doc/manual/installation/installing-virtualbox-guest.xml @@ -83,7 +83,7 @@ VirtualBox settings (Machine / Settings / Shared Folders, then click on the "Add" icon). Add the following to the /etc/nixos/configuration.nix to auto-mount them. If you do - not add "nofail", the system will no boot properly. The + not add "nofail", the system will not boot properly. The same goes for disabling rngd which is normally used to get randomness but this does not work in virtual machines. From 0179b5f17392f3e61d2b5af2ef3f741fbf72a3f3 Mon Sep 17 00:00:00 2001 From: Jonathan Ringer Date: Sun, 20 Dec 2020 12:31:27 -0800 Subject: [PATCH 21/28] steam-fhsenv: normalize ldPath --- pkgs/games/steam/fhsenv.nix | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/pkgs/games/steam/fhsenv.nix b/pkgs/games/steam/fhsenv.nix index 6f9d13671dc4..e15532443ba6 100644 --- a/pkgs/games/steam/fhsenv.nix +++ b/pkgs/games/steam/fhsenv.nix @@ -6,6 +6,7 @@ , nativeOnly ? false , runtimeOnly ? false , runtimeShell +, stdenv # DEPRECATED , withJava ? config.steam.java or false @@ -43,12 +44,14 @@ let ++ lib.optional withPrimus primus ++ extraPkgs pkgs; - ldPath = map (x: "/steamrt/${steam-runtime-wrapped.arch}/" + x) steam-runtime-wrapped.libs - ++ lib.optionals (steam-runtime-wrapped-i686 != null) (map (x: "/steamrt/${steam-runtime-wrapped-i686.arch}/" + x) steam-runtime-wrapped-i686.libs); + ldPath = lib.optionals stdenv.is64bit [ "/lib64" ] + ++ [ "/lib32" ] + ++ map (x: "/steamrt/${steam-runtime-wrapped.arch}/" + x) steam-runtime-wrapped.libs + ++ lib.optionals (steam-runtime-wrapped-i686 != null) (map (x: "/steamrt/${steam-runtime-wrapped-i686.arch}/" + x) steam-runtime-wrapped-i686.libs); # Zachtronics and a few other studios expect STEAM_LD_LIBRARY_PATH to be present exportLDPath = '' - export LD_LIBRARY_PATH=/lib32:/lib64:${lib.concatStringsSep ":" ldPath}''${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH + export LD_LIBRARY_PATH=${lib.concatStringsSep ":" ldPath}''${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH export STEAM_LD_LIBRARY_PATH="$STEAM_LD_LIBRARY_PATH''${STEAM_LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH" ''; @@ -58,7 +61,7 @@ let runSh = writeScript "run.sh" '' #!${runtimeShell} - runtime_paths="/lib32:/lib64:${lib.concatStringsSep ":" ldPath}" + runtime_paths="${lib.concatStringsSep ":" ldPath}" if [ "$1" == "--print-steam-runtime-library-paths" ]; then echo "$runtime_paths''${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH" exit 0 From 473ec944a100998cb557ca3c942212816760ba06 Mon Sep 17 00:00:00 2001 From: Jonathan Ringer Date: Sun, 20 Dec 2020 15:32:01 -0800 Subject: [PATCH 22/28] steamPackages.steam: 1.0.0.61 -> 1.0.0.68 --- pkgs/games/steam/steam.nix | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/pkgs/games/steam/steam.nix b/pkgs/games/steam/steam.nix index 20ccba641e4a..fa99f39d68cb 100644 --- a/pkgs/games/steam/steam.nix +++ b/pkgs/games/steam/steam.nix @@ -2,7 +2,7 @@ let traceLog = "/tmp/steam-trace-dependencies.log"; - version = "1.0.0.61"; + version = "1.0.0.68"; in stdenv.mkDerivation { pname = "steam-original"; @@ -10,7 +10,7 @@ in stdenv.mkDerivation { src = fetchurl { url = "https://repo.steampowered.com/steam/pool/steam/s/steam/steam_${version}.tar.gz"; - sha256 = "0c5xy57gwr14vp3wy3jpqi5dl6y7n01p2dy4jlgl9bf9x7616r6n"; + sha256 = "sha256-ZeiCYjxnH0Ath5bB20QHmE8R3wU4/3RiAw2NUhrrKNM="; }; makeFlags = [ "DESTDIR=$(out)" "PREFIX=" ]; @@ -26,14 +26,16 @@ in stdenv.mkDerivation { EOF chmod +x $out/bin/steamdeps ''} - install -d $out/lib/udev/rules.d - install -m644 lib/udev/rules.d/*.rules $out/lib/udev/rules.d + + # this just installs a link, "steam.desktop -> /lib/steam/steam.desktop" + rm $out/share/applications/steam.desktop + sed -e 's,/usr/bin/steam,steam,g' steam.desktop > $out/share/applications/steam.desktop ''; meta = with stdenv.lib; { description = "A digital distribution platform"; homepage = "http://store.steampowered.com/"; license = licenses.unfreeRedistributable; - maintainers = with maintainers; [ jagajaga ]; + maintainers = with maintainers; [ jagajaga jonringer ]; }; } From ab91cd998f9b1ee17ffed5b558e86b59f6db178e Mon Sep 17 00:00:00 2001 From: Jonathan Ringer Date: Sun, 20 Dec 2020 15:33:07 -0800 Subject: [PATCH 23/28] steam: fix desktop link --- pkgs/games/steam/fhsenv.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/games/steam/fhsenv.nix b/pkgs/games/steam/fhsenv.nix index e15532443ba6..512e96192423 100644 --- a/pkgs/games/steam/fhsenv.nix +++ b/pkgs/games/steam/fhsenv.nix @@ -229,7 +229,7 @@ in buildFHSUserEnv rec { mkdir -p $out/share/applications ln -s ${steam}/share/icons $out/share ln -s ${steam}/share/pixmaps $out/share - sed "s,/usr/bin/steam,steam,g" ${steam}/share/applications/steam.desktop > $out/share/applications/steam.desktop + ln -s ${steam}/share/applications/steam.desktop $out/share/applications/steam.desktop ''; profile = '' From 373cb5d41db3a60249dfa2c7481fb46642e11a92 Mon Sep 17 00:00:00 2001 From: Jonathan Ringer Date: Sun, 20 Dec 2020 17:27:57 -0800 Subject: [PATCH 24/28] steam: fix readonly boostrap.tar.xz steam writes it with 444 permissions, which makes simple deletions fails, and steam will crash --- pkgs/games/steam/fhsenv.nix | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/pkgs/games/steam/fhsenv.nix b/pkgs/games/steam/fhsenv.nix index 512e96192423..4c57ce9aeb02 100644 --- a/pkgs/games/steam/fhsenv.nix +++ b/pkgs/games/steam/fhsenv.nix @@ -55,6 +55,14 @@ let export STEAM_LD_LIBRARY_PATH="$STEAM_LD_LIBRARY_PATH''${STEAM_LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH" ''; + # bootstrap.tar.xz has 444 permissions, which means that simple deletes fail + # and steam will not be able to start + fixBootstrap = '' + if [ -r $HOME/.local/share/Steam/bootstrap.tar.xz ]; then + chmod +w $HOME/.local/share/Steam/bootstrap.tar.xz + fi + ''; + setupSh = writeScript "setup.sh" '' #!${runtimeShell} ''; @@ -264,6 +272,7 @@ in buildFHSUserEnv rec { fi fi ${lib.optionalString (!nativeOnly) exportLDPath} + ${fixBootstrap} exec steam "$@" ''; @@ -290,6 +299,7 @@ in buildFHSUserEnv rec { fi shift ${lib.optionalString (!nativeOnly) exportLDPath} + ${fixBootstrap} exec -- "$run" "$@" ''; }; From 39fad297fdc87f8718f654f0fdd01c4cacc5b1f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Sun, 20 Dec 2020 20:04:15 +0100 Subject: [PATCH 25/28] nixos: fix "nixos-rebuild build-vm-with-bootloader" for EFI systems `nixos-rebuild build-vm-with-bootloader` currently fails with the default NixOS EFI configuration: $ cat >configuration.nix < Date: Sun, 6 Dec 2020 18:49:34 +0100 Subject: [PATCH 26/28] ocamlPackages.opam-state: use dune 2 --- pkgs/development/ocaml-modules/opam-state/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/ocaml-modules/opam-state/default.nix b/pkgs/development/ocaml-modules/opam-state/default.nix index 156976a4a5ad..d841631dfd07 100644 --- a/pkgs/development/ocaml-modules/opam-state/default.nix +++ b/pkgs/development/ocaml-modules/opam-state/default.nix @@ -5,6 +5,8 @@ buildDunePackage rec { inherit (opam) src version; + useDune2 = true; + # get rid of check for curl at configure time # opam-state does not call curl at run time configureFlags = [ "--disable-checks" ]; From 69e614e77f6a7412f882424c6c5d376357e163ef Mon Sep 17 00:00:00 2001 From: sternenseemann <0rpkxez4ksa01gb3typccl0i@systemli.org> Date: Sun, 6 Dec 2020 18:45:32 +0100 Subject: [PATCH 27/28] ocamlPackages.opam-repository: use dune 2 --- pkgs/development/ocaml-modules/opam-repository/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/ocaml-modules/opam-repository/default.nix b/pkgs/development/ocaml-modules/opam-repository/default.nix index 1801a9e1c865..1480a7d5915a 100644 --- a/pkgs/development/ocaml-modules/opam-repository/default.nix +++ b/pkgs/development/ocaml-modules/opam-repository/default.nix @@ -5,6 +5,8 @@ buildDunePackage rec { minimumOCamlVersion = "4.02"; + useDune2 = true; + inherit (opam-format) src version; patches = [ ./download-tool.patch ]; From 926a1b20949ddd66e3a4e1327cb1c1010ab10442 Mon Sep 17 00:00:00 2001 From: sternenseemann <0rpkxez4ksa01gb3typccl0i@systemli.org> Date: Sun, 6 Dec 2020 18:45:19 +0100 Subject: [PATCH 28/28] ocamlPackages.opam-format: use dune 2 --- pkgs/development/ocaml-modules/opam-format/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/ocaml-modules/opam-format/default.nix b/pkgs/development/ocaml-modules/opam-format/default.nix index 422729e6d0df..fdb8ba33d5eb 100644 --- a/pkgs/development/ocaml-modules/opam-format/default.nix +++ b/pkgs/development/ocaml-modules/opam-format/default.nix @@ -3,6 +3,8 @@ buildDunePackage rec { pname = "opam-format"; + useDune2 = true; + inherit (opam-core) src version; minimumOCamlVersion = "4.02.3";