summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--nixos/lib/make-channel.nix2
-rw-r--r--pkgs/tools/package-management/nix/default.nix137
-rw-r--r--pkgs/tools/package-management/nix/unstable.nix76
-rw-r--r--pkgs/top-level/all-packages.nix21
4 files changed, 86 insertions, 150 deletions
diff --git a/nixos/lib/make-channel.nix b/nixos/lib/make-channel.nix
index 7764527ffa7e..1c6bf0897f49 100644
--- a/nixos/lib/make-channel.nix
+++ b/nixos/lib/make-channel.nix
@@ -8,7 +8,7 @@ pkgs.releaseTools.makeSourceTarball {
officialRelease = false; # FIXME: fix this in makeSourceTarball
inherit version versionSuffix;
- buildInputs = [ pkgs.nixUnstable ];
+ buildInputs = [ pkgs.nix ];
expr = builtins.readFile ./channel-expr.nix;
diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix
index 588aaf8b612e..f2099e1d76f6 100644
--- a/pkgs/tools/package-management/nix/default.nix
+++ b/pkgs/tools/package-management/nix/default.nix
@@ -4,82 +4,101 @@
, stateDir ? "/nix/var"
}:
-stdenv.mkDerivation rec {
- name = "nix-1.9";
+let
- src = fetchurl {
- url = "http://nixos.org/releases/nix/${name}/${name}.tar.xz";
- sha256 = "8a47cd7c35dfa628a4acfaef387e7451013c61d250bbcf1f38067a7c73f9f3e1";
- };
-
- outputs = [ "out" "doc" ];
-
- nativeBuildInputs = [ perl pkgconfig ];
-
- buildInputs = [ curl openssl sqlite ] ++ lib.optional stdenv.isLinux libsodium;
+ common = { name, src }: stdenv.mkDerivation rec {
+ inherit name src;
- propagatedBuildInputs = [ boehmgc ];
+ outputs = [ "out" "doc" ];
- # Note: bzip2 is not passed as a build input, because the unpack phase
- # would end up using the wrong bzip2 when cross-compiling.
- # XXX: The right thing would be to reinstate `--with-bzip2' in Nix.
- postUnpack =
- '' export CPATH="${bzip2}/include"
- export LIBRARY_PATH="${bzip2}/lib"
- export CXXFLAGS="-Wno-error=reserved-user-defined-literal"
- '';
+ nativeBuildInputs = [ perl pkgconfig ];
- configureFlags =
- ''
- --with-store-dir=${storeDir} --localstatedir=${stateDir} --sysconfdir=/etc
- --with-dbi=${perlPackages.DBI}/${perl.libPrefix}
- --with-dbd-sqlite=${perlPackages.DBDSQLite}/${perl.libPrefix}
- --with-www-curl=${perlPackages.WWWCurl}/${perl.libPrefix}
- --disable-init-state
- --enable-gc
- '';
+ buildInputs = [ curl openssl sqlite ] ++ lib.optional stdenv.isLinux libsodium;
- makeFlags = "profiledir=$(out)/etc/profile.d";
+ propagatedBuildInputs = [ boehmgc ];
- installFlags = "sysconfdir=$(out)/etc";
-
- doInstallCheck = true;
-
- crossAttrs = {
+ # Note: bzip2 is not passed as a build input, because the unpack phase
+ # would end up using the wrong bzip2 when cross-compiling.
+ # XXX: The right thing would be to reinstate `--with-bzip2' in Nix.
postUnpack =
- '' export CPATH="${bzip2.crossDrv}/include"
- export NIX_CROSS_LDFLAGS="-L${bzip2.crossDrv}/lib -rpath-link ${bzip2.crossDrv}/lib $NIX_CROSS_LDFLAGS"
+ '' export CPATH="${bzip2}/include"
+ export LIBRARY_PATH="${bzip2}/lib"
+ export CXXFLAGS="-Wno-error=reserved-user-defined-literal"
'';
configureFlags =
''
- --with-store-dir=${storeDir} --localstatedir=${stateDir}
+ --with-store-dir=${storeDir} --localstatedir=${stateDir} --sysconfdir=/etc
--with-dbi=${perlPackages.DBI}/${perl.libPrefix}
--with-dbd-sqlite=${perlPackages.DBDSQLite}/${perl.libPrefix}
--with-www-curl=${perlPackages.WWWCurl}/${perl.libPrefix}
--disable-init-state
--enable-gc
- '' + stdenv.lib.optionalString (
- stdenv.cross ? nix && stdenv.cross.nix ? system
- ) ''--with-system=${stdenv.cross.nix.system}'';
+ '';
- doInstallCheck = false;
+ makeFlags = "profiledir=$(out)/etc/profile.d";
+
+ installFlags = "sysconfdir=$(out)/etc";
+
+ doInstallCheck = true;
+
+ crossAttrs = {
+ postUnpack =
+ '' export CPATH="${bzip2.crossDrv}/include"
+ export NIX_CROSS_LDFLAGS="-L${bzip2.crossDrv}/lib -rpath-link ${bzip2.crossDrv}/lib $NIX_CROSS_LDFLAGS"
+ '';
+
+ configureFlags =
+ ''
+ --with-store-dir=${storeDir} --localstatedir=${stateDir}
+ --with-dbi=${perlPackages.DBI}/${perl.libPrefix}
+ --with-dbd-sqlite=${perlPackages.DBDSQLite}/${perl.libPrefix}
+ --with-www-curl=${perlPackages.WWWCurl}/${perl.libPrefix}
+ --disable-init-state
+ --enable-gc
+ '' + stdenv.lib.optionalString (
+ stdenv.cross ? nix && stdenv.cross.nix ? system
+ ) ''--with-system=${stdenv.cross.nix.system}'';
+
+ doInstallCheck = false;
+ };
+
+ enableParallelBuilding = true;
+
+ meta = {
+ description = "Powerful package manager that makes package management reliable and reproducible";
+ longDescription = ''
+ Nix is a powerful package manager for Linux and other Unix systems that
+ makes package management reliable and reproducible. It provides atomic
+ upgrades and rollbacks, side-by-side installation of multiple versions of
+ a package, multi-user package management and easy setup of build
+ environments.
+ '';
+ homepage = http://nixos.org/;
+ license = stdenv.lib.licenses.lgpl2Plus;
+ maintainers = [ stdenv.lib.maintainers.eelco ];
+ platforms = stdenv.lib.platforms.all;
+ };
};
- enableParallelBuilding = true;
-
- meta = {
- description = "Powerful package manager that makes package management reliable and reproducible";
- longDescription = ''
- Nix is a powerful package manager for Linux and other Unix systems that
- makes package management reliable and reproducible. It provides atomic
- upgrades and rollbacks, side-by-side installation of multiple versions of
- a package, multi-user package management and easy setup of build
- environments.
- '';
- homepage = http://nixos.org/;
- license = stdenv.lib.licenses.lgpl2Plus;
- maintainers = [ stdenv.lib.maintainers.eelco ];
- platforms = stdenv.lib.platforms.all;
- };
+in rec {
+
+ nix = nixStable;
+
+ nixStable = common rec {
+ name = "nix-1.9";
+ src = fetchurl {
+ url = "http://nixos.org/releases/nix/${name}/${name}.tar.xz";
+ sha256 = "8a47cd7c35dfa628a4acfaef387e7451013c61d250bbcf1f38067a7c73f9f3e1";
+ };
+ };
+
+ nixUnstable = lib.lowPrio (common rec {
+ name = "nix-1.10pre4200_76cc8e9";
+ src = fetchurl {
+ url = "http://hydra.nixos.org/build/24195844/download/4/${name}.tar.xz";
+ sha256 = "87e21fe00d93cf64674ddfae25b7be402b10a9e8449eae1fbb1203123624fd0f";
+ };
+ });
+
}
diff --git a/pkgs/tools/package-management/nix/unstable.nix b/pkgs/tools/package-management/nix/unstable.nix
deleted file mode 100644
index f8d4c1fd119f..000000000000
--- a/pkgs/tools/package-management/nix/unstable.nix
+++ /dev/null
@@ -1,76 +0,0 @@
-{ lib, stdenv, fetchurl, perl, curl, bzip2, sqlite, openssl ? null
-, pkgconfig, boehmgc, perlPackages, libsodium
-, storeDir ? "/nix/store"
-, stateDir ? "/nix/var"
-}:
-
-stdenv.mkDerivation rec {
- name = "nix-1.9pre4153_b64988b";
-
- src = fetchurl {
- url = "http://hydra.nixos.org/build/22838666/download/4/${name}.tar.xz";
- sha256 = "51b4870305724aa7b26c92b43cb22a0e9b6798ac2534db493079bfc383244e31";
- };
-
- nativeBuildInputs = [ perl pkgconfig ];
-
- buildInputs = [ curl openssl sqlite ] ++ lib.optional stdenv.isLinux libsodium;
-
- propagatedBuildInputs = [ boehmgc ];
-
- # Note: bzip2 is not passed as a build input, because the unpack phase
- # would end up using the wrong bzip2 when cross-compiling.
- # XXX: The right thing would be to reinstate `--with-bzip2' in Nix.
- postUnpack =
- '' export CPATH="${bzip2}/include"
- export LIBRARY_PATH="${bzip2}/lib"
- export CXXFLAGS="-Wno-error=reserved-user-defined-literal"
- '';
-
- configureFlags =
- ''
- --with-store-dir=${storeDir} --localstatedir=${stateDir} --sysconfdir=/etc
- --with-dbi=${perlPackages.DBI}/${perl.libPrefix}
- --with-dbd-sqlite=${perlPackages.DBDSQLite}/${perl.libPrefix}
- --with-www-curl=${perlPackages.WWWCurl}/${perl.libPrefix}
- --disable-init-state
- --enable-gc
- '';
-
- makeFlags = "profiledir=$(out)/etc/profile.d";
-
- installFlags = "sysconfdir=$(out)/etc";
-
- doInstallCheck = true;
-
- crossAttrs = {
- postUnpack =
- '' export CPATH="${bzip2.crossDrv}/include"
- export NIX_CROSS_LDFLAGS="-L${bzip2.crossDrv}/lib -rpath-link ${bzip2.crossDrv}/lib $NIX_CROSS_LDFLAGS"
- '';
-
- configureFlags =
- ''
- --with-store-dir=${storeDir} --localstatedir=${stateDir}
- --with-dbi=${perlPackages.DBI}/${perl.libPrefix}
- --with-dbd-sqlite=${perlPackages.DBDSQLite}/${perl.libPrefix}
- --with-www-curl=${perlPackages.WWWCurl}/${perl.libPrefix}
- --disable-init-state
- --enable-gc
- '' + stdenv.lib.optionalString (
- stdenv.cross ? nix && stdenv.cross.nix ? system
- ) ''--with-system=${stdenv.cross.nix.system}'';
-
- doInstallCheck = false;
- };
-
- enableParallelBuilding = true;
-
- meta = {
- description = "The Nix Deployment System";
- homepage = http://nixos.org/;
- license = stdenv.lib.licenses.lgpl2Plus;
- maintainers = [ stdenv.lib.maintainers.eelco ];
- platforms = stdenv.lib.platforms.all;
- };
-}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 79ee4ba3c606..94d5e5e1457b 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -14736,20 +14736,13 @@ let
mupen64plus1_5 = callPackage ../misc/emulators/mupen64plus/1.5.nix { };
- nix = nixStable;
-
- nixStable = callPackage ../tools/package-management/nix {
- storeDir = config.nix.storeDir or "/nix/store";
- stateDir = config.nix.stateDir or "/nix/var";
- };
-
- nixUnstable = nixStable;
- /*
- nixUnstable = lowPrio (callPackage ../tools/package-management/nix/unstable.nix {
- storeDir = config.nix.storeDir or "/nix/store";
- stateDir = config.nix.stateDir or "/nix/var";
- });
- */
+ inherit (callPackages ../tools/package-management/nix {
+ storeDir = config.nix.storeDir or "/nix/store";
+ stateDir = config.nix.stateDir or "/nix/var";
+ })
+ nix
+ nixStable
+ nixUnstable;
nixops = callPackage ../tools/package-management/nixops { };