summary refs log tree commit diff
path: root/pkgs/applications/misc/multibootusb
diff options
context:
space:
mode:
authorjD91mZM2 <me@krake.one>2018-05-08 20:03:14 +0200
committerjD91mZM2 <me@krake.one>2018-05-09 04:44:42 +0200
commitb6f3fcf1405415dd290f23f955568ab290e8de2f (patch)
treefc9e3ac7c4446b081419521734b97b987780b597 /pkgs/applications/misc/multibootusb
parentf22bfb38c6d7fbb3f866ba0860d04e1b34c6f35d (diff)
downloadnixpkgs-b6f3fcf1405415dd290f23f955568ab290e8de2f.tar
nixpkgs-b6f3fcf1405415dd290f23f955568ab290e8de2f.tar.gz
nixpkgs-b6f3fcf1405415dd290f23f955568ab290e8de2f.tar.bz2
nixpkgs-b6f3fcf1405415dd290f23f955568ab290e8de2f.tar.lz
nixpkgs-b6f3fcf1405415dd290f23f955568ab290e8de2f.tar.xz
nixpkgs-b6f3fcf1405415dd290f23f955568ab290e8de2f.tar.zst
nixpkgs-b6f3fcf1405415dd290f23f955568ab290e8de2f.zip
multibootusb: init at 9.2.0
Diffstat (limited to 'pkgs/applications/misc/multibootusb')
-rw-r--r--pkgs/applications/misc/multibootusb/default.nix59
1 files changed, 59 insertions, 0 deletions
diff --git a/pkgs/applications/misc/multibootusb/default.nix b/pkgs/applications/misc/multibootusb/default.nix
new file mode 100644
index 00000000000..02541842c36
--- /dev/null
+++ b/pkgs/applications/misc/multibootusb/default.nix
@@ -0,0 +1,59 @@
+{ lib, python36Packages, fetchFromGitHub, libxcb, mtools, p7zip, parted, procps, utillinux, qt5 }:
+python36Packages.buildPythonApplication rec {
+  pname = "multibootusb";
+  name = "${pname}-${version}";
+  version = "9.2.0";
+
+  buildInputs = [
+    python36Packages.dbus-python
+    python36Packages.pyqt5
+    python36Packages.pytest-shutil
+    python36Packages.python
+    python36Packages.pyudev
+    python36Packages.six
+    libxcb
+    mtools
+    p7zip
+    parted
+    procps
+    qt5.full
+    utillinux
+  ];
+
+  src = fetchFromGitHub {
+    owner = "mbusb";
+    repo = pname;
+    rev = "v${version}";
+
+    sha256 = "0wlan0cp6c2i0nahixgpmkm0h4n518gj8rc515d579pqqp91p2h3";
+  };
+
+  # Skip the fixup stage where stuff is shrinked (can't shrink text files)
+  phases = [ "unpackPhase" "installPhase" ];
+
+  installPhase = ''
+    share="$out/share/${pname}"
+    mkdir -p "$share"
+    cp -r data "$share/data"
+    cp -r scripts "$share/scripts"
+    cp "${pname}" "$share/${pname}"
+
+    mkdir "$out/bin"
+    cat > "$out/bin/${pname}" <<EOF
+      #!/bin/sh
+      cd "$share"
+      export PYTHONPATH="$PYTHONPATH:$share"
+      export PATH="$PATH:${parted}/bin:${procps}/bin"
+
+      "${python36Packages.python}/bin/python" "${pname}"
+    EOF
+    chmod +x "$out/bin/${pname}"
+  '';
+
+  meta = with lib; {
+    description = "Multiboot USB creator for Linux live disks";
+    homepage = http://multibootusb.org/;
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ jD91mZM2 ];
+  };
+}