diff options
author | Michael Raskin <7c6f434c@mail.ru> | 2020-03-01 23:18:07 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-01 23:18:07 +0000 |
commit | 987be8e52962d2dcaa0d58fe2a1644d380fd333e (patch) | |
tree | 96f45b8477c352715b5aaf93dd744e633e4b4889 /pkgs/games | |
parent | 0a8af284e50ceac53fc65bba196c91a55f2d794c (diff) | |
parent | 1841620b23744b8b832bc34a8f9be82667ea3621 (diff) | |
download | nixlib-987be8e52962d2dcaa0d58fe2a1644d380fd333e.tar nixlib-987be8e52962d2dcaa0d58fe2a1644d380fd333e.tar.gz nixlib-987be8e52962d2dcaa0d58fe2a1644d380fd333e.tar.bz2 nixlib-987be8e52962d2dcaa0d58fe2a1644d380fd333e.tar.lz nixlib-987be8e52962d2dcaa0d58fe2a1644d380fd333e.tar.xz nixlib-987be8e52962d2dcaa0d58fe2a1644d380fd333e.tar.zst nixlib-987be8e52962d2dcaa0d58fe2a1644d380fd333e.zip |
Merge pull request #81472 from bignaux/sgt-puzzles
sgt-puzzles: add desktop files
Diffstat (limited to 'pkgs/games')
-rw-r--r-- | pkgs/games/sgt-puzzles/default.nix | 31 |
1 files changed, 25 insertions, 6 deletions
diff --git a/pkgs/games/sgt-puzzles/default.nix b/pkgs/games/sgt-puzzles/default.nix index 8349be64264a..7ac32fa2d2fd 100644 --- a/pkgs/games/sgt-puzzles/default.nix +++ b/pkgs/games/sgt-puzzles/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl +{ stdenv, fetchurl, desktop-file-utils , gtk3, libX11 , makeWrapper, pkgconfig, perl, autoreconfHook, wrapGAppsHook }: @@ -8,17 +8,19 @@ stdenv.mkDerivation rec { version = "20191114.1c0c49d"; src = fetchurl { - url = "http://www.chiark.greenend.org.uk/~sgtatham/puzzles/puzzles-${version}.tar.gz"; - sha256 = "01fi2f3w71bfbgcfr6gxdp5a9cxh4dshbflv83q2j5rxxs2ll870"; + url = "http://www.chiark.greenend.org.uk/~sgtatham/puzzles/puzzles-${version}.tar.gz"; + sha256 = "01fi2f3w71bfbgcfr6gxdp5a9cxh4dshbflv83q2j5rxxs2ll870"; }; - nativeBuildInputs = [ autoreconfHook makeWrapper pkgconfig perl wrapGAppsHook ]; + nativeBuildInputs = [ autoreconfHook desktop-file-utils makeWrapper + pkgconfig perl wrapGAppsHook ]; buildInputs = [ gtk3 libX11 ]; makeFlags = ["prefix=$(out)" "gamesdir=$(out)/bin"]; + preInstall = '' - mkdir -p "$out"/{bin,share/doc/sgtpuzzles} + mkdir -p "$out"/{bin,share/doc/sgtpuzzles,share/icons/hicolor/48x48/apps} cp gamedesc.txt LICENCE README "$out/share/doc/sgtpuzzles" ''; # SGT Puzzles use generic names like net, map, etc. @@ -26,10 +28,27 @@ stdenv.mkDerivation rec { # disambiguation postInstall = '' ( + currentSrc=$PWD cd "$out"/bin ; - for i in *; do ln -s "$i" "sgt-puzzle-$i"; done + for i in *; do + ln -s "$i" "sgt-puzzle-$i" + + install -Dm644 $currentSrc/icons/$i-48d24.png $out/share/icons/hicolor/48x48/apps/ + + # Generate/validate/install .desktop files. + echo "[Desktop Entry]" > $i.desktop + desktop-file-install --dir $out/share/applications \ + --set-key Type --set-value Application \ + --set-key Exec --set-value $i \ + --set-key Name --set-value $i \ + --set-key Comment --set-value "${meta.description}" \ + --set-key Categories --set-value LogicGame \ + --set-key Icon --set-value $i-48d24 $i.desktop + rm $i.desktop + done ) ''; + preConfigure = '' perl mkfiles.pl export NIX_LDFLAGS="$NIX_LDFLAGS -lX11" |