87 lines
2 KiB
Nix
87 lines
2 KiB
Nix
{ lib
|
|
, clangStdenv
|
|
, fetchFromGitHub
|
|
, autoreconfHook
|
|
, pkg-config
|
|
, libimobiledevice
|
|
, libusb1
|
|
, avahi
|
|
, clang
|
|
, git
|
|
}: let
|
|
|
|
libgeneral = clangStdenv.mkDerivation rec {
|
|
pname = "libgeneral";
|
|
version = "74";
|
|
src = fetchFromGitHub {
|
|
owner = "tihmstar";
|
|
repo = pname;
|
|
rev = "refs/tags/${version}";
|
|
hash = "sha256-6aowcIYssc1xqH6kTi/cpH2F7rgc8+lGC8HgZWYH2w0=";
|
|
# Leave DotGit so that autoconfigure can read version from git tags
|
|
leaveDotGit = true;
|
|
};
|
|
nativeBuildInputs = [
|
|
autoreconfHook
|
|
git
|
|
pkg-config
|
|
];
|
|
meta = with lib; {
|
|
description = "Helper library used by usbmuxd2";
|
|
homepage = "https://github.com/tihmstar/libgeneral";
|
|
license = licenses.lgpl21;
|
|
platforms = platforms.all;
|
|
};
|
|
};
|
|
|
|
in
|
|
clangStdenv.mkDerivation rec {
|
|
pname = "usbmuxd2";
|
|
version = "unstable-2023-12-12";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "tihmstar";
|
|
repo = pname;
|
|
rev = "2ce399ddbacb110bd5a83a6b8232d42c9a9b6e84";
|
|
hash = "sha256-UVLLE73XuWTgGlpTMxUDykFmiBDqz6NCRO2rpRAYfow=";
|
|
# Leave DotGit so that autoconfigure can read version from git tags
|
|
leaveDotGit = true;
|
|
};
|
|
|
|
postPatch = ''
|
|
# Checking for libgeneral version still fails
|
|
sed -i 's/libgeneral >= $LIBGENERAL_MINVERS_STR/libgeneral/' configure.ac
|
|
'';
|
|
|
|
nativeBuildInputs = [
|
|
autoreconfHook
|
|
clang
|
|
git
|
|
pkg-config
|
|
];
|
|
|
|
propagatedBuildInputs = [
|
|
avahi
|
|
libgeneral
|
|
libimobiledevice
|
|
libusb1
|
|
];
|
|
|
|
configureFlags = [
|
|
"--with-udevrulesdir=${placeholder "out"}/lib/udev/rules.d"
|
|
"--with-systemdsystemunitdir=${placeholder "out"}/lib/systemd/system"
|
|
];
|
|
|
|
makeFlags = [
|
|
"sbindir=${placeholder "out"}/bin"
|
|
];
|
|
|
|
meta = with lib; {
|
|
homepage = "https://github.com/tihmstar/usbmuxd2";
|
|
description = "Socket daemon to multiplex connections from and to iOS devices";
|
|
license = licenses.lgpl3;
|
|
platforms = platforms.linux;
|
|
maintainers = with maintainers; [ onny ];
|
|
mainProgram = "usbmuxd";
|
|
};
|
|
}
|