nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ stdenv
2, autoconf
3, automake
4, fetchFromGitHub
5, fetchpatch
6, lib
7, libimobiledevice
8, libusb1
9, libplist
10, libtool
11, openssl
12, pkg-config
13}:
14
15stdenv.mkDerivation rec {
16 pname = "ios-webkit-debug-proxy";
17 version = "1.9.0";
18
19 src = fetchFromGitHub {
20 owner = "google";
21 repo = pname;
22 rev = "v${version}";
23 sha256 = "sha256-cZ/p/aWET/BXKDrD+qgR+rfTISd+4jPNQFuV8klSLUo=";
24 };
25
26 patches = [
27 # OpenSSL 3.0 compatibility
28 (fetchpatch {
29 url = "https://github.com/google/ios-webkit-debug-proxy/commit/5ba30a2a67f39d25025cadf37c0eafb2e2d2d0a8.patch";
30 sha256 = "sha256-2b9BjG9wkqO+ZfoBYYJvD2Db5Kr0F/MxKMTRsI0ea3s=";
31 })
32 # Examples compilation breaks with --disable-static, see https://github.com/google/ios-webkit-debug-proxy/issues/399
33 ./0001-Don-t-compile-examples.patch
34 ];
35
36 outputs = [ "out" "dev" ];
37
38 nativeBuildInputs = [ autoconf automake libtool pkg-config ];
39 buildInputs = [ libimobiledevice libusb1 libplist openssl ];
40
41 preConfigure = ''
42 NOCONFIGURE=1 ./autogen.sh
43 '';
44 enableParallelBuilding = true;
45
46 meta = with lib; {
47 description = "A DevTools proxy (Chrome Remote Debugging Protocol) for iOS devices (Safari Remote Web Inspector).";
48 longDescription = ''
49 The ios_webkit_debug_proxy (aka iwdp) proxies requests from usbmuxd
50 daemon over a websocket connection, allowing developers to send commands
51 to MobileSafari and UIWebViews on real and simulated iOS devices.
52 '';
53 homepage = "https://github.com/google/ios-webkit-debug-proxy";
54 license = licenses.bsd3;
55 maintainers = [ maintainers.abustany ];
56 };
57}