nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5
6 meson,
7 ninja,
8 vala,
9 wrapGAppsHook4,
10 desktop-file-utils,
11 pkg-config,
12 imagemagick,
13
14 gtk4,
15 libadwaita,
16 libgee,
17 lua5_4,
18 geoip,
19 geolite-legacy,
20
21 versionCheckHook,
22 nix-update-script,
23}:
24stdenv.mkDerivation (finalAttrs: {
25 pname = "gswatcher";
26 version = "1.7.2";
27
28 src = fetchFromGitHub {
29 owner = "lxndr";
30 repo = "gswatcher";
31 tag = "v${finalAttrs.version}";
32 hash = "sha256-qohd18bXr7gDSW51tCyslFX54Caux+YrsuJtoLs9Ofk=";
33 };
34
35 nativeBuildInputs = [
36 meson
37 ninja
38 vala
39 wrapGAppsHook4
40 desktop-file-utils
41 # Not packaged yet, optional
42 # appstream-util
43 pkg-config
44 imagemagick
45 ];
46
47 buildInputs = [
48 gtk4
49 libadwaita
50 libgee
51 lua5_4
52 geoip
53 ];
54
55 postInstall = ''
56 ln -s ${geolite-legacy}/share/GeoIP $out/share/GeoIP
57 '';
58
59 doInstallCheck = true;
60 nativeInstallCheckInputs = [ versionCheckHook ];
61
62 passthru.updateScript = nix-update-script { };
63
64 meta = {
65 description = "Simple game server monitor and administrative tool";
66 homepage = "https://github.com/lxndr/gswatcher";
67 license = with lib.licenses; [ agpl3Plus ];
68 platforms = lib.platforms.linux;
69 maintainers = with lib.maintainers; [ pluiedev ];
70 };
71})