{ lib, buildNpmPackage, vips, pkg-config, src, version, nixosTests, }: buildNpmPackage { pname = "pingvin-share-frontend"; inherit version; src = "${src}/frontend"; npmInstallFlags = [ "--build-from-source" ]; installPhase = '' cp -r . $out ln -s $out/node_modules/.bin $out/bin ''; buildInputs = [ vips ]; nativeBuildInputs = [ pkg-config ]; npmDepsHash = "sha256-aTarzVt+9Sn0xvAfPyoXFoHqPVjKDGv/OfLO8/RdkQw="; makeCacheWritable = true; npmFlags = [ "--legacy-peer-deps" ]; passthru.tests = { pingvin-share = nixosTests.pingvin-share; }; meta = with lib; { description = "Frontend of pingvin-share, a self-hosted file sharing platform"; homepage = "https://github.com/stonith404/pingvin-share"; downloadPage = "https://github.com/stonith404/pingvin-share/releases"; changelog = "https://github.com/stonith404/pingvin-share/releases/tag/v${version}"; license = licenses.bsd2; maintainers = with maintainers; [ ratcornu ]; }; }