diff options
author | Alyssa Ross <hi@alyssa.is> | 2023-08-08 16:04:42 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2023-08-13 06:35:37 +0000 |
commit | 12aaa58dac35800b5b7d77f81cf2a87c21ee55da (patch) | |
tree | be0add9e5c22a85d20b5d78206aa74f956eb2a1b /nixpkgs/pkgs/games/gogui | |
parent | 45892a5591202f75a1c2f1ca7c62a92c7566e3c5 (diff) | |
parent | 5a8e9243812ba528000995b294292d3b5e120947 (diff) | |
download | nixlib-12aaa58dac35800b5b7d77f81cf2a87c21ee55da.tar nixlib-12aaa58dac35800b5b7d77f81cf2a87c21ee55da.tar.gz nixlib-12aaa58dac35800b5b7d77f81cf2a87c21ee55da.tar.bz2 nixlib-12aaa58dac35800b5b7d77f81cf2a87c21ee55da.tar.lz nixlib-12aaa58dac35800b5b7d77f81cf2a87c21ee55da.tar.xz nixlib-12aaa58dac35800b5b7d77f81cf2a87c21ee55da.tar.zst nixlib-12aaa58dac35800b5b7d77f81cf2a87c21ee55da.zip |
Merge branch 'nixos-unstable' of https://github.com/NixOS/nixpkgs
Conflicts: nixpkgs/pkgs/applications/window-managers/sway/default.nix nixpkgs/pkgs/build-support/go/module.nix nixpkgs/pkgs/build-support/rust/build-rust-package/default.nix nixpkgs/pkgs/development/libraries/mesa/default.nix nixpkgs/pkgs/servers/dict/dictd-db.nix Link: https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config/-/issues/391
Diffstat (limited to 'nixpkgs/pkgs/games/gogui')
-rw-r--r-- | nixpkgs/pkgs/games/gogui/default.nix | 88 |
1 files changed, 77 insertions, 11 deletions
diff --git a/nixpkgs/pkgs/games/gogui/default.nix b/nixpkgs/pkgs/games/gogui/default.nix index d2c25e031d2e..212f0af0e8e3 100644 --- a/nixpkgs/pkgs/games/gogui/default.nix +++ b/nixpkgs/pkgs/games/gogui/default.nix @@ -1,28 +1,94 @@ -{ fetchurl, lib, stdenv, openjdk, unzip, makeWrapper }: +{ ant +, docbook-xsl-ns +, docbook_xml_dtd_42 +, fetchFromGitHub +, imagemagick +, lib +, libxslt +, makeWrapper +, openjdk +, stdenv +}: let - version = "1.4.9"; + version = "1.5.3"; in stdenv.mkDerivation { pname = "gogui"; inherit version; - nativeBuildInputs = [ makeWrapper unzip ]; - src = fetchurl { - url = "mirror://sourceforge/project/gogui/gogui/${version}/gogui-${version}.zip"; - sha256 = "0qk6p1bhi1816n638bg11ljyj6zxvm75jdf02aabzdmmd9slns1j"; + + src = fetchFromGitHub { + owner = "Remi-Coulom"; + repo = "gogui"; + rev = "v${version}"; + hash = "sha256-GezFhNYB542JnAIUeUVa188+SR5mCedwj0hZN8L83UQ="; }; - dontConfigure = true; + + nativeBuildInputs = [ + makeWrapper + ant + ]; + + buildInputs = [ + docbook-xsl-ns + imagemagick + libxslt + openjdk + ]; + + buildPhase = '' + runHook preBuild + + substituteInPlace doc/manual/xml/book.xml \ + --replace http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd \ + ${docbook_xml_dtd_42}/xml/dtd/docbook/docbookx.dtd + substituteInPlace doc/manual/xml/manpages.xml \ + --replace http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd \ + ${docbook_xml_dtd_42}/xml/dtd/docbook/docbookx.dtd + + # generate required gui images from svg + # see https://github.com/Remi-Coulom/gogui/issues/36 + sizes=( 16x16 24x24 32x32 48x48 64x64 ) + for i in src/net/sf/gogui/images/*.svg; do + for j in ''${sizes[@]}; do + convert $i -resize $j src/net/sf/gogui/images/$(basename $i .svg)-''${j}.png + done + done + + for i in src/net/sf/gogui/images/gogui-{black,white,setup}.svg; do + convert $i -resize 8x8 src/net/sf/gogui/images/$(basename $i .svg)-8x8.png + done + + ant -Ddocbook-xsl.dir=${docbook-xsl-ns}/xml/xsl/docbook + + runHook postBuild + ''; + installPhase = '' + runHook preInstall + + # copy documentation mkdir -p $out/share/doc - mv -vi {bin,lib} $out/ mv -vi doc $out/share/doc/gogui + + # make man pages available + mkdir -p $out/share/man/ + ln -s $out/share/doc/gogui/manual/man $out/share/man/man1 + + # copy programs + mv -vi {bin,lib} $out/ + + # wrap programs for x in $out/bin/*; do - wrapProgram $x --prefix PATH ":" ${openjdk}/bin + wrapProgram $x --prefix PATH ":" ${openjdk}/bin --set GOGUI_JAVA_HOME ${openjdk} done + + runHook postInstall ''; + meta = { - maintainers = [ lib.maintainers.cleverca22 ]; + maintainers = [ lib.maintainers.cleverca22 lib.maintainers.omnipotententity]; description = "A graphical user interface to programs that play the board game Go and support the Go Text Protocol such as GNU Go"; - homepage = "https://gogui.sourceforge.net/"; + homepage = "https://github.com/Remi-Coulom/gogui"; platforms = lib.platforms.unix; license = lib.licenses.gpl3; }; |