From 2dd59bbbe1e34d402f8d12b9fdcc963e18f58b29 Mon Sep 17 00:00:00 2001 From: soyouzpanda Date: Thu, 20 Feb 2025 00:47:48 +0100 Subject: [PATCH] uhttpd: init at 2023-06-25 Signed-off-by: soyouzpanda --- pkgs/default.nix | 1 + pkgs/uhttpd/default.nix | 58 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 59 insertions(+) create mode 100644 pkgs/uhttpd/default.nix diff --git a/pkgs/default.nix b/pkgs/default.nix index 9dcb01a..c36c7fa 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -112,6 +112,7 @@ in { tufted = callPackage ./tufted {}; libubox = callPackage ./libubox {}; ubus = callPackage ./ubus {}; + uhttpd = callPackage ./uhttpd {}; ustream-ssl = callPackage ./ustream-ssl {}; iwinfo = callPackage ./iwinfo {}; uevent-watch = callPackage ./uevent-watch {}; diff --git a/pkgs/uhttpd/default.nix b/pkgs/uhttpd/default.nix new file mode 100644 index 0000000..ab20303 --- /dev/null +++ b/pkgs/uhttpd/default.nix @@ -0,0 +1,58 @@ +{ + lib, + stdenv, + fetchFromGitHub, + cmake, + libubox, + lua, + ubus, + json_c, + ucode, + libxcrypt, + ustream-ssl +}: + +stdenv.mkDerivation { + pname = "uhttpd"; + version = "unstable-2023-06-25"; + + src = fetchFromGitHub { + owner = "openwrt"; + repo = "uhttpd"; + rev = "34a8a74dbdec3c0de38abc1b08f6a73c51263792"; + hash = "sha256-JJCwZuAoOPUwNUPpB5+mwsV2kD7+kNT60UOfh6F9Rv0="; + }; + + nativeBuildInputs = [ + cmake + ]; + + buildInputs = [ + lua + libubox + ubus + json_c + ucode + libxcrypt + ustream-ssl + ]; + + env.NIX_CFLAGS_COMPILE = toString [ "-I${json_c.dev}/include/json-c" "-D JSONC" "-D LUA_COMPAT_MODULE" ]; + + cmakeFlags = [ + "-DBUILD_LUA=on" + "-DLUAPATH=${placeholder "out"}/lib/lua/${lua.luaversion}" + "-DBUILD_EXAMPLES=off" + "-DBUILD_TESTING=off" + ]; + + passthru.luaPackage = lua; + + meta = { + description = "Tiny HTTP server"; + homepage = "https://github.com/openwrt/uhttpd"; + maintainers = with lib.maintainers; [ soyouzpanda ]; + mainProgram = "uhttpd"; + platforms = lib.platforms.all; + }; +}