1{
2 stdenv,
3 lib,
4 fetchgit,
5 cmake,
6 pkg-config,
7 libubox,
8}:
9
10stdenv.mkDerivation {
11 pname = "uclient";
12 version = "unstable-2023-04-13";
13
14 src = fetchgit {
15 url = "https://git.openwrt.org/project/uclient.git";
16 rev = "007d945467499f43656b141171d31f5643b83a6c";
17 hash = "sha256-A47dyVc2MtOL6aImZ0b3SMWH2vzjfAXzRAOF4nfH6S0=";
18 };
19
20 nativeBuildInputs = [
21 cmake
22 pkg-config
23 ];
24 buidInputs = [ libubox ];
25
26 preConfigure = ''
27 sed -e 's|ubox_include_dir libubox/ustream-ssl.h|ubox_include_dir libubox/ustream-ssl.h HINTS ${libubox}/include|g' \
28 -e 's|ubox_library NAMES ubox|ubox_library NAMES ubox HINTS ${libubox}/lib|g' \
29 -i CMakeLists.txt
30 '';
31
32 meta = with lib; {
33 description = "Tiny OpenWrt fork of libnl";
34 homepage = "https://git.openwrt.org/?p=project/uclient.git;a=summary";
35 license = licenses.isc;
36 maintainers = with maintainers; [ mkg20001 ];
37 mainProgram = "uclient-fetch";
38 platforms = platforms.all;
39 broken = stdenv.hostPlatform.isDarwin;
40 };
41}