summary refs log tree commit diff
diff options
context:
space:
mode:
authoraszlig <aszlig@redmoonstudios.org>2014-10-22 01:37:32 +0200
committeraszlig <aszlig@redmoonstudios.org>2014-10-22 08:22:57 +0200
commitcb2c34f1bb8245a4460cef9f82301a76ab60441c (patch)
tree0f6fe7ee6d7f561155cf019c1c9a612bd1a5081e
parent7deadbb55f327dd9fffd397c72e13e4b95e15c61 (diff)
downloadnixpkgs-cb2c34f1bb8245a4460cef9f82301a76ab60441c.tar
nixpkgs-cb2c34f1bb8245a4460cef9f82301a76ab60441c.tar.gz
nixpkgs-cb2c34f1bb8245a4460cef9f82301a76ab60441c.tar.bz2
nixpkgs-cb2c34f1bb8245a4460cef9f82301a76ab60441c.tar.lz
nixpkgs-cb2c34f1bb8245a4460cef9f82301a76ab60441c.tar.xz
nixpkgs-cb2c34f1bb8245a4460cef9f82301a76ab60441c.tar.zst
nixpkgs-cb2c34f1bb8245a4460cef9f82301a76ab60441c.zip
blivet: Update to new upstream version 0.67.
Put a copy of old version 0.17 expression into 0.17.nix and update the
pointers from nixpart0 accordingly.

This also means, that plain nixpart is now way more broken than
nixpart0 (we might want to temporarily fix 0.4 anyway).

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
-rw-r--r--nixos/tests/partition.nix2
-rw-r--r--pkgs/development/python-modules/blivet/0.17.nix58
-rw-r--r--pkgs/development/python-modules/blivet/default.nix46
-rw-r--r--pkgs/tools/filesystems/nixpart/default.nix13
-rw-r--r--pkgs/top-level/python-packages.nix6
5 files changed, 85 insertions, 40 deletions
diff --git a/nixos/tests/partition.nix b/nixos/tests/partition.nix
index 72fd37e041e..afe6b8d4a0d 100644
--- a/nixos/tests/partition.nix
+++ b/nixos/tests/partition.nix
@@ -67,7 +67,7 @@ in {
 
   machine = { config, pkgs, ... }: {
     environment.systemPackages = [
-      pkgs.pythonPackages.nixpart
+      pkgs.pythonPackages.nixpart0
       pkgs.file pkgs.btrfsProgs pkgs.xfsprogs pkgs.lvm2
     ];
     virtualisation.emptyDiskImages = [ 4096 4096 ];
diff --git a/pkgs/development/python-modules/blivet/0.17.nix b/pkgs/development/python-modules/blivet/0.17.nix
new file mode 100644
index 00000000000..c1b36bf909d
--- /dev/null
+++ b/pkgs/development/python-modules/blivet/0.17.nix
@@ -0,0 +1,58 @@
+{ stdenv, fetchurl, buildPythonPackage, pykickstart, pyparted, pyblock
+, libselinux, cryptsetup, multipath_tools, lsof, utillinux
+, useNixUdev ? true, udev ? null
+# This is only used when useNixUdev is false
+, udevSoMajor ? 1
+}:
+
+assert useNixUdev -> udev != null;
+
+let
+  pyenable = { enablePython = true; };
+  selinuxWithPython = libselinux.override pyenable;
+  cryptsetupWithPython = cryptsetup.override pyenable;
+in buildPythonPackage rec {
+  name = "blivet-${version}";
+  version = "0.17-1";
+
+  src = fetchurl {
+    url = "https://git.fedorahosted.org/cgit/blivet.git/snapshot/"
+        + "${name}.tar.bz2";
+    sha256 = "1k3mws2q0ryb7422mml6idmaasz2i2v6ngyvg6d976dx090qnmci";
+  };
+
+  postPatch = ''
+    sed -i -e 's|"multipath"|"${multipath_tools}/sbin/multipath"|' \
+      blivet/devicelibs/mpath.py blivet/devices.py
+    sed -i -e '/"wipefs"/ {
+      s|wipefs|${utillinux}/sbin/wipefs|
+      s/-f/--force/
+    }' blivet/formats/__init__.py
+    sed -i -e 's|"lsof"|"${lsof}/bin/lsof"|' blivet/formats/fs.py
+    sed -i -r -e 's|"(u?mount)"|"${utillinux}/bin/\1"|' blivet/util.py
+    sed -i '/pvscan/s/, *"--cache"//' blivet/devicelibs/lvm.py
+  '' + (if useNixUdev then ''
+    sed -i -e '/find_library/,/find_library/ {
+      c libudev = "${udev}/lib/libudev.so.1"
+    }' blivet/pyudev.py
+  '' else ''
+    sed -i \
+      -e '/^somajor *=/s/=.*/= ${toString udevSoMajor}/p' \
+      -e 's|common =.*|& + ["/lib/x86_64-linux-gnu", "/lib/i686-linux-gnu"]|' \
+      blivet/pyudev.py
+  '');
+
+  propagatedBuildInputs = [
+    pykickstart pyparted pyblock selinuxWithPython cryptsetupWithPython
+  ] ++ stdenv.lib.optional useNixUdev udev;
+
+  # tests are currently _heavily_ broken upstream
+  doCheck = false;
+
+  meta = {
+    homepage = "https://fedoraproject.org/wiki/Blivet";
+    description = "Module for management of a system's storage configuration";
+    license = [ "GPLv2+" "LGPLv2.1+" ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/development/python-modules/blivet/default.nix b/pkgs/development/python-modules/blivet/default.nix
index c1b36bf909d..9942c092d75 100644
--- a/pkgs/development/python-modules/blivet/default.nix
+++ b/pkgs/development/python-modules/blivet/default.nix
@@ -1,52 +1,42 @@
-{ stdenv, fetchurl, buildPythonPackage, pykickstart, pyparted, pyblock
-, libselinux, cryptsetup, multipath_tools, lsof, utillinux
-, useNixUdev ? true, udev ? null
-# This is only used when useNixUdev is false
-, udevSoMajor ? 1
+{ stdenv, fetchFromGitHub, buildPythonPackage, pykickstart, pyparted, pyblock
+, pyudev, six, libselinux, cryptsetup, multipath_tools, lsof, utillinux
 }:
 
-assert useNixUdev -> udev != null;
-
 let
   pyenable = { enablePython = true; };
   selinuxWithPython = libselinux.override pyenable;
   cryptsetupWithPython = cryptsetup.override pyenable;
 in buildPythonPackage rec {
   name = "blivet-${version}";
-  version = "0.17-1";
+  version = "0.67";
 
-  src = fetchurl {
-    url = "https://git.fedorahosted.org/cgit/blivet.git/snapshot/"
-        + "${name}.tar.bz2";
-    sha256 = "1k3mws2q0ryb7422mml6idmaasz2i2v6ngyvg6d976dx090qnmci";
+  src = fetchFromGitHub {
+    owner = "dwlehman";
+    repo = "blivet";
+    rev = name;
+    sha256 = "1gk94ghjrxfqnx53hph1j2s7qcv86fjz48is7l099q9c24rjv8ky";
   };
 
   postPatch = ''
-    sed -i -e 's|"multipath"|"${multipath_tools}/sbin/multipath"|' \
-      blivet/devicelibs/mpath.py blivet/devices.py
+    sed -i \
+      -e 's|"multipath"|"${multipath_tools}/sbin/multipath"|' \
+      -e '/^def set_friendly_names/a \    return False' \
+      blivet/devicelibs/mpath.py
     sed -i -e '/"wipefs"/ {
       s|wipefs|${utillinux}/sbin/wipefs|
       s/-f/--force/
     }' blivet/formats/__init__.py
     sed -i -e 's|"lsof"|"${lsof}/bin/lsof"|' blivet/formats/fs.py
     sed -i -r -e 's|"(u?mount)"|"${utillinux}/bin/\1"|' blivet/util.py
-    sed -i '/pvscan/s/, *"--cache"//' blivet/devicelibs/lvm.py
-  '' + (if useNixUdev then ''
-    sed -i -e '/find_library/,/find_library/ {
-      c libudev = "${udev}/lib/libudev.so.1"
-    }' blivet/pyudev.py
-  '' else ''
-    sed -i \
-      -e '/^somajor *=/s/=.*/= ${toString udevSoMajor}/p' \
-      -e 's|common =.*|& + ["/lib/x86_64-linux-gnu", "/lib/i686-linux-gnu"]|' \
-      blivet/pyudev.py
-  '');
+    sed -i -e '/pvscan/s/, *"--cache"//' blivet/devicelibs/lvm.py
+  '';
 
   propagatedBuildInputs = [
-    pykickstart pyparted pyblock selinuxWithPython cryptsetupWithPython
-  ] ++ stdenv.lib.optional useNixUdev udev;
+    pykickstart pyparted pyblock pyudev selinuxWithPython cryptsetupWithPython
+    six
+  ];
 
-  # tests are currently _heavily_ broken upstream
+  # Tests in <nixos/tests/blivet.nix> coming soon.
   doCheck = false;
 
   meta = {
diff --git a/pkgs/tools/filesystems/nixpart/default.nix b/pkgs/tools/filesystems/nixpart/default.nix
index 633f04320c3..f0c580b7990 100644
--- a/pkgs/tools/filesystems/nixpart/default.nix
+++ b/pkgs/tools/filesystems/nixpart/default.nix
@@ -1,13 +1,6 @@
-{ stdenv, fetchurl, buildPythonPackage, blivet
-# Propagated to blivet
-, useNixUdev ? null, udevSoMajor ? null
-}:
+{ stdenv, fetchurl, buildPythonPackage, blivet }:
 
-let
-  blivetOverrides = stdenv.lib.filterAttrs (k: v: v != null) {
-    inherit useNixUdev udevSoMajor;
-  };
-in buildPythonPackage rec {
+buildPythonPackage rec {
   name = "nixpart-${version}";
   version = "0.4.1";
 
@@ -16,7 +9,7 @@ in buildPythonPackage rec {
     sha256 = "0avwd8p47xy9cydlbjxk8pj8q75zyl68gw2w6fnkk78dcb1a3swp";
   };
 
-  propagatedBuildInputs = [ (blivet.override blivetOverrides) ];
+  propagatedBuildInputs = [ blivet ];
 
   doCheck = false;
 
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index acaad0804ea..fea5f8d6e5b 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -65,6 +65,8 @@ let
 
   blivet = callPackage ../development/python-modules/blivet { };
 
+  blivet_0_17 = callPackage ../development/python-modules/blivet/0.17.nix { };
+
   dbus = callPackage ../development/python-modules/dbus {
     dbus = pkgs.dbus;
   };
@@ -123,7 +125,9 @@ let
 
   # This is used for NixOps to make sure we won't break it with the next major
   # version of nixpart.
-  nixpart0 = callPackage ../tools/filesystems/nixpart/0.4.nix { };
+  nixpart0 = callPackage ../tools/filesystems/nixpart/0.4.nix {
+    blivet = self.blivet_0_17;
+  };
 
   pitz = callPackage ../applications/misc/pitz { };