summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/development/mobile/abootimg/default.nix43
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 45 insertions, 0 deletions
diff --git a/pkgs/development/mobile/abootimg/default.nix b/pkgs/development/mobile/abootimg/default.nix
new file mode 100644
index 000000000000..a2ddda34347a
--- /dev/null
+++ b/pkgs/development/mobile/abootimg/default.nix
@@ -0,0 +1,43 @@
+{ stdenv, fetchFromGitHub, coreutils, cpio, findutils, gzip, makeWrapper, utillinux }:
+
+let
+  version = "0.6";
+in
+stdenv.mkDerivation {
+  name = "abootimg-${version}";
+
+  src = fetchFromGitHub {
+    owner = "ggrandou";
+    repo = "abootimg";
+    rev = "7e127fee6a3981f6b0a50ce9910267cd501e09d4";
+    sha256 = "1qgx9fxwhylgnixzkz2mzv2707f65qq7rar2rsqak536vhig1z9a";
+  };
+
+  nativeBuildInputs = [ makeWrapper utillinux ];
+
+  postPatch = ''
+    cat <<EOF > version.h
+    #define VERSION_STR "${version}"
+    EOF
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    install -D -m 755 abootimg $out/bin
+    install -D -m444 ./debian/abootimg.1 $out/share/man/man1/abootimg.1;
+
+    install -D -m 755 abootimg-pack-initrd $out/bin
+    wrapProgram $out/bin/abootimg-pack-initrd --prefix PATH : ${stdenv.lib.makeBinPath [ coreutils cpio findutils gzip ]}
+
+    install -D -m 755 abootimg-unpack-initrd $out/bin
+    wrapProgram $out/bin/abootimg-unpack-initrd --prefix PATH : ${stdenv.lib.makeBinPath [ cpio gzip ]}
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/ggrandou/abootimg;
+    description = "Manipulate Android Boot Images";
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.flokli ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 35e320dc31fc..940a3672f198 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -688,6 +688,8 @@ with pkgs;
     pkgs_i686 = pkgsi686Linux;
   };
 
+  abootimg = callPackage ../development/mobile/abootimg {};
+
   adbfs-rootless = callPackage ../development/mobile/adbfs-rootless {
     adb = androidenv.platformTools;
   };