tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
heimdall: 1.4.1 -> 1.4.2pre
Marius Bakke
10 years ago
c1eec001
2d642028
+25
-36
1 changed file
expand all
collapse all
unified
split
pkgs
tools
misc
heimdall
default.nix
+25
-36
pkgs/tools/misc/heimdall/default.nix
···
1
1
-
{ stdenv, fetchFromGitHub, pkgconfig, libusb1, udev
2
2
-
, enableGUI ? true, qt4 ? null
3
3
-
}:
1
1
+
{ stdenv, fetchFromGitHub, zlib, libusb1, cmake, qt5
2
2
+
, enableGUI ? false }:
3
3
+
4
4
+
let version = "d0526a3"; in
5
5
+
let verName = "1.4.2pre"; in
4
6
5
7
stdenv.mkDerivation rec {
6
6
-
version = "1.4.1";
7
7
-
name = "heimdall-${version}";
8
8
+
name = "heimdall-${verName}";
8
9
9
10
src = fetchFromGitHub {
10
11
owner = "Benjamin-Dobell";
11
12
repo = "Heimdall";
12
12
-
rev = "v${version}";
13
13
-
sha256 = "1b7xpamwvw5r2d9yf73f0axv35vg8zaz1345xs3lmsr105phnnp4";
13
13
+
rev = "${version}";
14
14
+
sha256 = "1y8gvqprajlml1z6mjcrlj54m9xsr8691nqagakkkis7hs1lgzmp";
14
15
};
15
16
16
16
-
buildInputs =
17
17
-
[ pkgconfig libusb1 udev ]
18
18
-
++ stdenv.lib.optional enableGUI qt4 ;
19
19
-
20
20
-
makeFlags = "udevrulesdir=$(out)/lib/udev/rules.d";
17
17
+
buildInputs = [ zlib libusb1 cmake ];
18
18
+
patchPhase = stdenv.lib.optional (!enableGUI) ''
19
19
+
sed -i '/heimdall-frontend/d' CMakeLists.txt
20
20
+
'';
21
21
+
enableParallelBuilding = true;
22
22
+
cmakeFlags = ["-DQt5Widgets_DIR=${qt5.qtbase}/lib/cmake/Qt5Widgets"
23
23
+
"-DQt5Gui_DIR=${qt5.qtbase}/lib/cmake/Qt5Gui"
24
24
+
"-DQt5Core_DIR=${qt5.qtbase}/lib/cmake/Qt5Core"
25
25
+
"-DBUILD_TYPE=Release"];
21
26
22
27
preConfigure =
23
28
''
24
24
-
pushd libpit
25
25
-
./configure
26
26
-
make
27
27
-
popd
28
28
-
29
29
-
cd heimdall
30
30
-
substituteInPlace Makefile.in --replace sudo true
31
31
-
32
32
-
# Give ownership of the Galaxy S USB device to the logged in
33
33
-
# user.
34
34
-
substituteInPlace 60-heimdall-galaxy-s.rules --replace 'MODE="0666"' 'TAG+="udev-acl"'
29
29
+
# Give ownership of the Galaxy S USB device to the logged in user.
30
30
+
substituteInPlace heimdall/60-heimdall.rules --replace 'MODE="0666"' 'TAG+="uaccess"'
35
31
'';
36
32
37
37
-
postBuild = stdenv.lib.optionalString enableGUI
38
38
-
''
39
39
-
pushd ../heimdall-frontend
40
40
-
substituteInPlace Source/mainwindow.cpp --replace /usr/bin $out/bin
41
41
-
qmake heimdall-frontend.pro OUTPUTDIR=$out/bin
42
42
-
make
43
43
-
popd
44
44
-
'';
45
45
-
46
46
-
postInstall =
33
33
+
installPhase =
47
34
''
48
48
-
mkdir -p $out/share/doc/heimdall
49
49
-
cp ../Linux/README $out/share/doc/heimdall/
35
35
+
mkdir -p $out/bin $out/share/doc/heimdall $out/lib/udev/rules.d
36
36
+
cp bin/heimdall $out/bin
37
37
+
cp ../Linux/README $out/share/doc/heimdall
38
38
+
cp ../heimdall/60-heimdall.rules $out/lib/udev/rules.d
50
39
'' + stdenv.lib.optionalString enableGUI ''
51
51
-
make -C ../heimdall-frontend install
40
40
+
cp bin/heimdall-frontend $out/bin
52
41
'';
53
42
54
43
meta = {