aboutsummaryrefslogtreecommitdiff
path: root/pkgs/tools/networking
diff options
context:
space:
mode:
authorGuillaume Girol <symphorien@users.noreply.github.com>2020-12-01 14:27:43 +0000
committerGitHub <noreply@github.com>2020-12-01 14:27:43 +0000
commit75e36cdcd2f630036f06049ee080c7941b69b58c (patch)
tree2ab964026fa8c4d5343351893a7df4aec2110000 /pkgs/tools/networking
parent25b43c2c46a91a120e3474357a737d5be03ca9a8 (diff)
parentda41eaeb460261fa0739c28038b85b3a4c4e3eef (diff)
Merge pull request #96601 from symphorien/gnirehtet-update
gnirehtet: 2.4 -> 2.5
Diffstat (limited to 'pkgs/tools/networking')
-rw-r--r--pkgs/tools/networking/gnirehtet/default.nix25
-rw-r--r--pkgs/tools/networking/gnirehtet/paths.patch48
2 files changed, 12 insertions, 61 deletions
diff --git a/pkgs/tools/networking/gnirehtet/default.nix b/pkgs/tools/networking/gnirehtet/default.nix
index f739e80be1fe..8d7d2392dfb7 100644
--- a/pkgs/tools/networking/gnirehtet/default.nix
+++ b/pkgs/tools/networking/gnirehtet/default.nix
@@ -1,12 +1,12 @@
-{stdenv, rustPlatform, fetchFromGitHub, fetchzip, androidenv, substituteAll}:
+{ stdenv, rustPlatform, fetchFromGitHub, fetchzip, androidenv, makeWrapper }:
let
-version = "2.4";
+version = "2.5";
apk = stdenv.mkDerivation {
pname = "gnirehtet.apk";
inherit version;
src = fetchzip {
url = "https://github.com/Genymobile/gnirehtet/releases/download/v${version}/gnirehtet-rust-linux64-v${version}.zip";
- sha256 = "13gsh5982v961j86j5y71pgas94g2d1v1fgnbslbqw4h69fbf48g";
+ sha256 = "1db0gkg5z8lighhkyqfsr9jiacrck89zmfnmp74vj865hhxgjzgq";
};
installPhase = ''
mkdir $out
@@ -22,19 +22,18 @@ rustPlatform.buildRustPackage {
owner = "Genymobile";
repo = "gnirehtet";
rev = "v${version}";
- sha256 = "1c99d6zpjxa8xlrg0n1825am20d2pjiicfcjwv8iay9ylfdnvygl";
+ sha256 = "0wk6n082gnj9xk46n542h1012h8gyhldca23bs7vl73g0534g878";
};
sourceRoot = "source/relay-rust";
- cargoSha256 = "0rb5xcqg5ikgrxpmzrql5n298j50aqgkkp45znbfv2x2n40dywad";
+ cargoSha256 = "0i7f52r697gjw30m8k60hd3y6wsn5lpz419r083a1rhpbinzd26q";
- patchFlags = [ "-p2" ];
- patches = [
- (substituteAll {
- src = ./paths.patch;
- adb = "${androidenv.androidPkgs_9_0.platform-tools}/bin/adb";
- inherit apk;
- })
- ];
+ nativeBuildInputs = [ makeWrapper ];
+
+ postInstall = ''
+ wrapProgram $out/bin/gnirehtet \
+ --set GNIREHTET_APK ${apk}/gnirehtet.apk \
+ --set ADB ${androidenv.androidPkgs_9_0.platform-tools}/bin/adb
+ '';
meta = with stdenv.lib; {
description = "Reverse tethering over adb for Android";
diff --git a/pkgs/tools/networking/gnirehtet/paths.patch b/pkgs/tools/networking/gnirehtet/paths.patch
deleted file mode 100644
index e5df4b8e4fe7..000000000000
--- a/pkgs/tools/networking/gnirehtet/paths.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-Index: gnirehtet/relay-rust/src/main.rs
-===================================================================
---- gnirehtet.orig/relay-rust/src/main.rs
-+++ gnirehtet/relay-rust/src/main.rs
-@@ -299,7 +299,7 @@ impl Command for RelayCommand {
-
- fn cmd_install(serial: Option<&String>) -> Result<(), CommandExecutionError> {
- info!(target: TAG, "Installing gnirehtet client...");
-- exec_adb(serial, vec!["install", "-r", "gnirehtet.apk"])
-+ exec_adb(serial, vec!["install", "-r", "@apk@/gnirehtet.apk"])
- }
-
- fn cmd_uninstall(serial: Option<&String>) -> Result<(), CommandExecutionError> {
-@@ -464,8 +464,8 @@ fn exec_adb<S: Into<String>>(
- args: Vec<S>,
- ) -> Result<(), CommandExecutionError> {
- let adb_args = create_adb_args(serial, args);
-- debug!(target: TAG, "Execute: adb {:?}", adb_args);
-- match process::Command::new("adb").args(&adb_args[..]).status() {
-+ debug!(target: TAG, "Execute: @adb@ {:?}", adb_args);
-+ match process::Command::new("@adb@").args(&adb_args[..]).status() {
- Ok(exit_status) => {
- if exit_status.success() {
- Ok(())
-@@ -487,8 +487,8 @@ fn must_install_client(serial: Option<&S
- serial,
- vec!["shell", "dumpsys", "package", "com.genymobile.gnirehtet"],
- );
-- debug!(target: TAG, "Execute: adb {:?}", args);
-- match process::Command::new("adb").args(&args[..]).output() {
-+ debug!(target: TAG, "Execute: @adb@ {:?}", args);
-+ match process::Command::new("@adb@").args(&args[..]).output() {
- Ok(output) => {
- if output.status.success() {
- // the "regex" crate makes the binary far bigger, so just parse the versionCode
-Index: gnirehtet/relay-rust/src/adb_monitor.rs
-===================================================================
---- gnirehtet.orig/relay-rust/src/adb_monitor.rs
-+++ gnirehtet/relay-rust/src/adb_monitor.rs
-@@ -206,7 +206,7 @@ impl AdbMonitor {
-
- fn start_adb_daemon() -> bool {
- info!(target: TAG, "Restarting adb daemon");
-- match process::Command::new("adb")
-+ match process::Command::new("@adb@")
- .args(&["start-server"])
- .status() {
- Ok(exit_status) => {