From cefec62a277cdbb737ada4555d38e921e1d2cf4c Mon Sep 17 00:00:00 2001 From: Michiel Leenaars Date: Mon, 11 Dec 2017 21:53:19 +0000 Subject: lwan: init at 0.1 --- pkgs/servers/http/lwan/default.nix | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 pkgs/servers/http/lwan/default.nix (limited to 'pkgs/servers') diff --git a/pkgs/servers/http/lwan/default.nix b/pkgs/servers/http/lwan/default.nix new file mode 100644 index 000000000000..878211ebf024 --- /dev/null +++ b/pkgs/servers/http/lwan/default.nix @@ -0,0 +1,35 @@ +{ stdenv, fetchFromGitHub, pkgconfig, zlib, cmake, jemalloc }: + +stdenv.mkDerivation rec { + pname = "lwan"; + version = "0.1"; + name = "${pname}-${version}"; + + src = fetchFromGitHub { + owner = "lpereira"; + repo = pname; + rev = "v${version}"; + sha256 = "1mckryzb06smky0bx2bkqwqzpnq4pb8vlgmmwsvqmwi4mmw9wmi1"; + }; + + nativeBuildInputs = [ cmake pkgconfig ]; + + buildInputs = [ jemalloc zlib ]; + + meta = with stdenv.lib; { + description = "Lightweight high-performance multi-threaded web server"; + longDescription = "A lightweight and speedy web server with a low memory + footprint (~500KiB for 10k idle connections), with minimal system calls and + memory allocation. Lwan contains a hand-crafted HTTP request parser. Files are + served using the most efficient way according to their size: no copies between + kernel and userland for files larger than 16KiB. Smaller files are sent using + vectored I/O of memory-mapped buffers. Header overhead is considered before + compressing small files. Features include: mustache templating engine and IPv6 + support. + "; + homepage = "https://lwan.ws/"; + license = licenses.gpl2; + platforms = platforms.linux; + maintainers = with maintainers; [ leenaars ]; + }; +} -- cgit 1.4.1