nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 fetchzip,
3 jre,
4 lib,
5 stdenvNoCC,
6}:
7
8let
9 version = "0.33.1-19314669";
10 urlVersion = lib.replaceStrings [ "." ] [ "-" ] version;
11
12in
13stdenvNoCC.mkDerivation {
14 pname = "necesse-server";
15 inherit version;
16
17 src = fetchzip {
18 url = "https://necessegame.com/content/server/${urlVersion}/necesse-server-linux64-${urlVersion}.zip";
19 hash = "sha256-K9FA4I8dooq1dC+Wnn24AACx49Jh/32sPp3f+IefYzM=";
20 };
21
22 # removing packaged jre since we use our own
23 postUnpack = ''
24 rm -rf "$sourceRoot/jre"
25 '';
26
27 installPhase = ''
28 runHook preInstall
29
30 mkdir -p $out/bin
31 cp -r . $out
32 params='-nogui "$@"'
33 cat >$out/bin/necesse-server <<EOF
34 #! $SHELL -e
35 exec ${lib.getExe jre} -jar $out/Server.jar $params
36 EOF
37 chmod +x $out/bin/necesse-server
38
39 runHook postInstall
40 '';
41
42 passthru.updateScript = ./update.sh;
43
44 meta = {
45 homepage = "https://necessegame.com/server/";
46 description = "Dedicated server for Necesse";
47 sourceProvenance = with lib.sourceTypes; [ binaryBytecode ];
48 platforms = lib.platforms.linux;
49 license = lib.licenses.unfreeRedistributable;
50 mainProgram = "necesse-server";
51 maintainers = with lib.maintainers; [ cr0n ];
52 };
53}