biome: 1.9.2 -> 1.9.3
[NixPkgs.git] / pkgs / tools / cd-dvd / unetbootin / default.nix
blob7dc1efb82852db0c5e563afa4fc9215bd0a5d820
1 { lib
2 , stdenv
3 , coreutils
4 , fetchFromGitHub
5 , mtools
6 , p7zip
7 , wrapQtAppsHook
8 , qtbase
9 , qttools
10 , qmake
11 , syslinux
12 , util-linux
13 , which
16 stdenv.mkDerivation rec {
17   pname = "unetbootin";
18   version = "702";
20   src = fetchFromGitHub {
21     owner = pname;
22     repo = pname;
23     rev = version;
24     sha256 = "sha256-psX15XicPXAsd36BhuvK0G3GQS8hV/hazzO0HByCqV4=";
25   };
27   setSourceRoot = ''
28     sourceRoot=$(echo */src/unetbootin)
29   '';
31   buildInputs = [
32     qtbase
33     qttools
34     qmake
35   ];
37   nativeBuildInputs = [ wrapQtAppsHook ];
39   # Lots of nice hard-coded paths...
40   postPatch = ''
41     substituteInPlace unetbootin.cpp \
42       --replace /bin/df             ${coreutils}/bin/df \
43       --replace /sbin/blkid         ${util-linux}/sbin/blkid \
44       --replace /sbin/fdisk         ${util-linux}/sbin/fdisk \
45       --replace /sbin/sfdisk        ${util-linux}/sbin/sfdisk \
46       --replace /usr/bin/syslinux   ${syslinux}/bin/syslinux \
47       --replace /usr/bin/extlinux   ${syslinux}/sbin/extlinux \
48       --replace /usr/share/syslinux ${syslinux}/share/syslinux
50     substituteInPlace main.cpp \
51       --replace /usr/share/unetbootin $out/share/unetbootin
53     substituteInPlace unetbootin.desktop \
54       --replace /usr/bin $out/bin
55   '';
57   preConfigure = ''
58     lupdate unetbootin.pro
59     lrelease unetbootin.pro
60   '';
62   installPhase = ''
63     runHook preInstall
65     install -Dm755 -t $out/bin                unetbootin
66     install -Dm644 -t $out/share/unetbootin   unetbootin_*.qm
67     install -Dm644 -t $out/share/applications unetbootin.desktop
69     runHook postInstall
70   '';
72   qtWrapperArgs = [
73     "--prefix PATH : ${lib.makeBinPath [ mtools p7zip which ]}"
74     "--set QT_X11_NO_MITSHM 1"
75   ];
77   meta = with lib; {
78     description = "Tool to create bootable live USB drives from ISO images";
79     homepage = "https://unetbootin.github.io/";
80     license = licenses.gpl2Plus;
81     maintainers = with maintainers; [ ebzzry ];
82     platforms = platforms.linux;
83     mainProgram = "unetbootin";
84   };