diff --git a/pkgs/default.nix b/pkgs/default.nix index 8734776..716252b 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -2,4 +2,5 @@ # You can build them using 'nix build .#example' or (legacy) 'nix-build -A example' { pkgs }: { + dzgui = pkgs.callPackage ./dzgui.nix { }; } diff --git a/pkgs/dzgui.nix b/pkgs/dzgui.nix new file mode 100644 index 0000000..1c7b2c2 --- /dev/null +++ b/pkgs/dzgui.nix @@ -0,0 +1,49 @@ +{ pkgs, lib, stdenv, fetchFromGitHub, makeWrapper }: +stdenv.mkDerivation rec { + pname = "dzgui"; + version = "0.1"; + + src = fetchFromGitHub { + owner = "aclist"; + repo = pname; + rev = "d1c0de75ee8ded449ab1c5a293e91891e5f78346"; + sha256 = "sha256-Jy6vHWA0u+4yonsJlHgJYvtceYT6lHeWeaX0fawETVo="; + }; + + nativeBuildInputs = [ makeWrapper ]; + + runtimeDeps = with pkgs; [ + curl + jq + python3 + steam + wmctrl + gnome.zenity + ]; + + patchPhase = '' + sed -i \ + -e 's|/usr/bin/zenity|${pkgs.gnome.zenity}/bin/zenity|' \ + -e 's|2>/dev/null||' \ + dzgui.sh + ''; + + installPhase = '' + install -Dm777 -T dzgui.sh $out/bin/.dzgui-unwrapped_ + makeWrapper $out/bin/.dzgui-unwrapped_ $out/bin/dzgui \ + --prefix PATH ':' ${lib.makeBinPath runtimeDeps} + ''; + + meta = with lib; { + homepage = "https://github.com/pronovic/banner"; + description = "DayZ TUI/GUI server browser"; + license = licenses.gpl3; + + longDescription = '' + DZGUI allows you to connect to both official and modded/community DayZ + servers on Linux and provides a graphical interface for doing so. + ''; + + platforms = platforms.all; + }; +}