diff --git a/pkgs/tools/networking/quickserve/default.nix b/pkgs/tools/networking/quickserve/default.nix new file mode 100644 index 000000000000..06e5918dccd8 --- /dev/null +++ b/pkgs/tools/networking/quickserve/default.nix @@ -0,0 +1,35 @@ +{ stdenv, makeWrapper, fetchzip, python3, python3Packages, writeScript }: +let + threaded_servers = python3Packages.buildPythonPackage { + name = "threaded_servers"; + src = fetchzip { + url = https://xyne.archlinux.ca/projects/python3-threaded_servers/src/python3-threaded_servers-2018.6.tar.xz; + sha256 = "1irliz90a1dk4lyl7mrfq8qnnrfad9czvbcw1spc13zyai66iyhf"; + }; + + # stuff we don't care about pacserve + doCheck = false; + }; + wrappedPython = python3.withPackages (_: [ threaded_servers ]); +in stdenv.mkDerivation { + name = "quickserve"; + version = "2018"; + + unpackPhase = ":"; + nativeBuildInputs = [ makeWrapper ]; + + installPhase = '' + runHook preInstall + mkdir -p $out/bin + makeWrapper ${wrappedPython}/bin/python $out/bin/quickserve \ + --add-flags -mThreadedServers.PeeredQuickserve + runHook postInstall + ''; + + meta = with stdenv.lib; { + description = "A simple HTTP server for quickly sharing files."; + homepage = https://xyne.archlinux.ca/projects/quickserve/; + license = licenses.gpl2; + maintainers = with maintainers; [ lassulus ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a8a54a8b6827..392102b4285e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4925,6 +4925,8 @@ with pkgs; qtikz = libsForQt5.callPackage ../applications/graphics/ktikz { }; + quickserve = callPackage ../tools/networking/quickserve { }; + quicktun = callPackage ../tools/networking/quicktun { }; quilt = callPackage ../development/tools/quilt { };