pufferpanel: init at 2.2.0 (#128243)

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>

authored by

Ron B
Sandro
and committed by
GitHub
b2be8c5b 0293e3e4

+61
+59
pkgs/servers/pufferpanel/default.nix
···
··· 1 + { lib 2 + , buildGoModule 3 + , fetchFromGitHub 4 + , makeWrapper 5 + , pkgs 6 + , stdenv 7 + , fetchzip 8 + , openjdk16 9 + , nodejs 10 + , pathDeps ? [ ] 11 + }: 12 + 13 + buildGoModule rec { 14 + pname = "pufferpanel"; 15 + version = "2.2.0"; 16 + 17 + src = fetchFromGitHub { 18 + owner = "pufferpanel"; 19 + repo = pname; 20 + rev = "v${version}"; 21 + sha256 = "1ifig8ckjlg47wj0lfk4q941dan7llb1i5l76akcpjq726b2j8lh"; 22 + }; 23 + 24 + # PufferPanel is split into two parts: the backend daemon and the 25 + # frontend. 26 + # Getting the frontend to build in the Nix environment fails even 27 + # with all the proper node_modules populated. To work around this, 28 + # we just download the built frontend and package that. 29 + frontend = fetchzip { 30 + url = "https://github.com/PufferPanel/PufferPanel/releases/download/v${version}/pufferpanel_${version}_linux_arm64.zip"; 31 + sha256 = "0phbf4asr0dns7if84crx05kfgr44yaxrbsbihdywbhh2mb16052"; 32 + stripRoot = false; 33 + } + "/www"; 34 + 35 + nativeBuildInputs = [ makeWrapper ]; 36 + 37 + vendorSha256 = "061l1sy0z3kd7rc2blqh333gy66nbadfxy9hyxgq07dszds4byys"; 38 + 39 + postFixup = '' 40 + mkdir -p $out/share/pufferpanel 41 + cp -r ${src}/assets/email $out/share/pufferpanel/templates 42 + cp -r ${frontend} $out/share/pufferpanel/www 43 + 44 + # Wrap the binary with the path to the external files. 45 + mv $out/bin/cmd $out/bin/pufferpanel 46 + wrapProgram "$out/bin/pufferpanel" \ 47 + --set PUFFER_PANEL_EMAIL_TEMPLATES $out/share/pufferpanel/templates/emails.json \ 48 + --set GIN_MODE release \ 49 + --set PUFFER_PANEL_WEB_FILES $out/share/pufferpanel/www \ 50 + --prefix PATH : ${lib.makeBinPath pathDeps} 51 + ''; 52 + 53 + meta = with lib; { 54 + description = "A free, open source game management panel"; 55 + homepage = "https://www.pufferpanel.com/"; 56 + license = with licenses; [ asl20 ]; 57 + maintainers = with maintainers; [ ronthecookie ]; 58 + }; 59 + }
+2
pkgs/top-level/all-packages.nix
··· 17836 17837 pstreams = callPackage ../development/libraries/pstreams {}; 17838 17839 pugixml = callPackage ../development/libraries/pugixml { }; 17840 17841 pylode = callPackage ../misc/pylode {};
··· 17836 17837 pstreams = callPackage ../development/libraries/pstreams {}; 17838 17839 + pufferpanel = callPackage ../servers/pufferpanel { }; 17840 + 17841 pugixml = callPackage ../development/libraries/pugixml { }; 17842 17843 pylode = callPackage ../misc/pylode {};