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