about summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2011-08-21 00:10:12 +0000
committerEelco Dolstra <eelco.dolstra@logicblox.com>2011-08-21 00:10:12 +0000
commit631ba2a5f0e3c0874e8f72afdb1166ea747d023e (patch)
tree9e580e5d2d1d85d7abeafd922d3f463aef195996 /pkgs
parentd99e939015fb1a46a52ecf9ca088feecf2452aa3 (diff)
downloadnixlib-631ba2a5f0e3c0874e8f72afdb1166ea747d023e.tar
nixlib-631ba2a5f0e3c0874e8f72afdb1166ea747d023e.tar.gz
nixlib-631ba2a5f0e3c0874e8f72afdb1166ea747d023e.tar.bz2
nixlib-631ba2a5f0e3c0874e8f72afdb1166ea747d023e.tar.lz
nixlib-631ba2a5f0e3c0874e8f72afdb1166ea747d023e.tar.xz
nixlib-631ba2a5f0e3c0874e8f72afdb1166ea747d023e.tar.zst
nixlib-631ba2a5f0e3c0874e8f72afdb1166ea747d023e.zip
svn path=/nixpkgs/trunk/; revision=28716
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/tools/misc/heimdall/default.nix57
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 59 insertions, 0 deletions
diff --git a/pkgs/tools/misc/heimdall/default.nix b/pkgs/tools/misc/heimdall/default.nix
new file mode 100644
index 000000000000..0b0120ab2791
--- /dev/null
+++ b/pkgs/tools/misc/heimdall/default.nix
@@ -0,0 +1,57 @@
+{ stdenv, fetchgit, pkgconfig, libusb1, udev
+, enableGUI ? true, qt4 ? null
+}:
+
+stdenv.mkDerivation {
+  name = "heimdall-1.3.0";
+
+  src = fetchgit {
+    url = git://github.com/Benjamin-Dobell/Heimdall.git;
+    rev = "ed9b08e5d9e3db60d52bccf6cb6919fb4bd47602";
+    sha256 = "e65f18299a05699595548cb27393a01b4e1dbbced82d4add8d0d55ef6514a691";
+  };
+
+  buildInputs =
+    [ pkgconfig libusb1 udev ]
+    ++ stdenv.lib.optional enableGUI qt4 ;
+
+  makeFlags = "udevrulesdir=$(out)/lib/udev/rules.d";
+  
+  preConfigure =
+    ''
+      pushd libpit
+      ./configure
+      make
+      popd
+    
+      cd heimdall
+      substituteInPlace Makefile.in --replace sudo true
+
+      # Give ownership of the Galaxy S USB device to the logged in
+      # user.
+      substituteInPlace 60-heimdall-galaxy-s.rules --replace 'MODE="0666"' 'TAG+="udev-acl"'
+    '';
+
+  postBuild = stdenv.lib.optionalString enableGUI
+    ''
+      pushd ../heimdall-frontend
+      substituteInPlace Source/mainwindow.cpp --replace /usr/bin $out/bin
+      qmake heimdall-frontend.pro OUTPUTDIR=$out/bin
+      make
+      popd
+    '';
+
+  postInstall =
+    ''
+      mkdir -p $out/share/doc/heimdall
+      cp ../Linux/README $out/share/doc/heimdall/
+    '' + stdenv.lib.optionalString enableGUI ''
+      make -C ../heimdall-frontend install
+    '';
+
+  meta = {
+    homepage = http://www.glassechidna.com.au/products/heimdall/;
+    description = "A cross-platform open-source tool suite used to flash firmware onto Samsung Galaxy S devices";
+    license = "bsd";
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index d64b14df0984..295a9b4dbfac 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -810,6 +810,8 @@ let
 
   hdf5 = callPackage ../tools/misc/hdf5 { };
 
+  heimdall = callPackage ../tools/misc/heimdall { };
+
   hevea = callPackage ../tools/typesetting/hevea { };
 
   highlight = callPackage ../tools/text/highlight { };