From 2529f1cf0a591cda28926815ab15b89b30da3e6d Mon Sep 17 00:00:00 2001 From: Adrien Bustany Date: Tue, 16 May 2023 12:47:23 +0200 Subject: [PATCH] ios-webkit-debug-proxy: init at 1.9.0 --- .../0001-Don-t-compile-examples.patch | 23 ++++++++ .../mobile/ios-webkit-debug-proxy/default.nix | 57 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 3 files changed, 82 insertions(+) create mode 100644 pkgs/development/mobile/ios-webkit-debug-proxy/0001-Don-t-compile-examples.patch create mode 100644 pkgs/development/mobile/ios-webkit-debug-proxy/default.nix diff --git a/pkgs/development/mobile/ios-webkit-debug-proxy/0001-Don-t-compile-examples.patch b/pkgs/development/mobile/ios-webkit-debug-proxy/0001-Don-t-compile-examples.patch new file mode 100644 index 000000000000..2ab6554d9ac4 --- /dev/null +++ b/pkgs/development/mobile/ios-webkit-debug-proxy/0001-Don-t-compile-examples.patch @@ -0,0 +1,23 @@ +diff --git a/Makefile.am b/Makefile.am +index 52dc7a8..407c056 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -2,4 +2,4 @@ + # Copyright 2012 Google Inc. wrightt@google.com + + AUTOMAKE_OPTIONS = foreign +-SUBDIRS = src include examples ++SUBDIRS = src include +diff --git a/configure.ac b/configure.ac +index ac2a278..a4104b7 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -82,7 +82,7 @@ fi + + AC_CHECK_FUNCS([memmove memset regcomp select socket strcasecmp strncasecmp strchr strdup strndup strrchr strstr strtol strcasestr getline]) + +-AC_CONFIG_FILES([Makefile src/Makefile include/Makefile examples/Makefile]) ++AC_CONFIG_FILES([Makefile src/Makefile include/Makefile]) + + CFLAGS="${CFLAGS} -Wall -Werror" + diff --git a/pkgs/development/mobile/ios-webkit-debug-proxy/default.nix b/pkgs/development/mobile/ios-webkit-debug-proxy/default.nix new file mode 100644 index 000000000000..b9edbb4cbd4a --- /dev/null +++ b/pkgs/development/mobile/ios-webkit-debug-proxy/default.nix @@ -0,0 +1,57 @@ +{ stdenv +, autoconf +, automake +, fetchFromGitHub +, fetchpatch +, lib +, libimobiledevice +, libusb1 +, libplist +, libtool +, openssl +, pkg-config +}: + +stdenv.mkDerivation rec { + pname = "ios-webkit-debug-proxy"; + version = "1.9.0"; + + src = fetchFromGitHub { + owner = "google"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-cZ/p/aWET/BXKDrD+qgR+rfTISd+4jPNQFuV8klSLUo="; + }; + + patches = [ + # OpenSSL 3.0 compatibility + (fetchpatch { + url = "https://github.com/google/ios-webkit-debug-proxy/commit/5ba30a2a67f39d25025cadf37c0eafb2e2d2d0a8.patch"; + sha256 = "sha256-2b9BjG9wkqO+ZfoBYYJvD2Db5Kr0F/MxKMTRsI0ea3s="; + }) + # Examples compilation breaks with --disable-static, see https://github.com/google/ios-webkit-debug-proxy/issues/399 + ./0001-Don-t-compile-examples.patch + ]; + + outputs = [ "out" "dev" ]; + + nativeBuildInputs = [ autoconf automake libtool pkg-config ]; + buildInputs = [ libimobiledevice libusb1 libplist openssl ]; + + preConfigure = '' + NOCONFIGURE=1 ./autogen.sh + ''; + enableParallelBuilding = true; + + meta = with lib; { + description = "A DevTools proxy (Chrome Remote Debugging Protocol) for iOS devices (Safari Remote Web Inspector)."; + longDescription = '' + The ios_webkit_debug_proxy (aka iwdp) proxies requests from usbmuxd + daemon over a websocket connection, allowing developers to send commands + to MobileSafari and UIWebViews on real and simulated iOS devices. + ''; + homepage = "https://github.com/google/ios-webkit-debug-proxy"; + license = licenses.bsd3; + maintainers = [ maintainers.abustany ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 76195c002c9d..00df1f2b96ed 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3676,6 +3676,8 @@ with pkgs; xc = callPackage ../development/tools/xc { }; + ios-webkit-debug-proxy = callPackage ../development/mobile/ios-webkit-debug-proxy { }; + xcodeenv = callPackage ../development/mobile/xcodeenv { }; gomobile = callPackage ../development/mobile/gomobile { };