diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 0aeb16840204..c2e927f203d0 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -309,6 +309,12 @@ githubId = 2321000; name = "Ruslan Babayev"; }; + abustany = { + email = "adrien@bustany.org"; + github = "abustany"; + githubId = 2526296; + name = "Adrien Bustany"; + }; acairncross = { email = "acairncross@gmail.com"; github = "acairncross"; 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 ea9406525c03..46ef4d52439f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3754,6 +3754,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 { };