From fc06a987a07e602ad9e340b77f54623157f55313 Mon Sep 17 00:00:00 2001 From: Mitsuhiro Nakamura Date: Mon, 22 Jan 2018 17:26:52 +0900 Subject: [PATCH 1/3] cataclysm-dda{,-git}: fix share directory Data should be in PREFIX/share/cataclysm-dda instead of PREFIX/share. --- pkgs/games/cataclysm-dda/default.nix | 5 ++--- pkgs/games/cataclysm-dda/git.nix | 3 +-- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/pkgs/games/cataclysm-dda/default.nix b/pkgs/games/cataclysm-dda/default.nix index 550d557e57e..a06b53ac219 100644 --- a/pkgs/games/cataclysm-dda/default.nix +++ b/pkgs/games/cataclysm-dda/default.nix @@ -23,8 +23,7 @@ stdenv.mkDerivation rec { postPatch = '' patchShebangs . sed -i Makefile \ - -e 's,-Werror,,g' \ - -e 's,\(DATA_PREFIX=$(PREFIX)/share/\)cataclysm-dda/,\1,g' + -e 's,-Werror,,g' sed '1i#include ' \ -i src/{crafting,skill,weather_data,melee,vehicle,overmap,iuse_actor}.cpp @@ -44,7 +43,7 @@ stdenv.mkDerivation rec { postInstall = '' wrapProgram $out/bin/cataclysm-tiles \ - --add-flags "--datadir $out/share/" + --add-flags "--datadir $out/share/cataclysm-dda/" '' + stdenv.lib.optionalString stdenv.isDarwin '' app=$out/Applications/Cataclysm.app install -D -m 444 data/osx/Info.plist -t $app/Contents diff --git a/pkgs/games/cataclysm-dda/git.nix b/pkgs/games/cataclysm-dda/git.nix index 264dc8b65a0..86e040546dc 100644 --- a/pkgs/games/cataclysm-dda/git.nix +++ b/pkgs/games/cataclysm-dda/git.nix @@ -22,8 +22,7 @@ stdenv.mkDerivation rec { postPatch = '' patchShebangs . sed -i Makefile \ - -e 's,-Werror,,g' \ - -e 's,\(DATA_PREFIX=$(PREFIX)/share/\)cataclysm-dda/,\1,g' + -e 's,-Werror,,g' sed '1i#include ' \ -i src/{crafting,skill,weather_data,melee,vehicle,overmap,iuse_actor}.cpp From ee6086c31dd8ddca8446fc405a1f80eb93684ad1 Mon Sep 17 00:00:00 2001 From: Mitsuhiro Nakamura Date: Mon, 22 Jan 2018 22:58:51 +0900 Subject: [PATCH 2/3] cataclysm-dda{,-git}: no need for wrapper anymore --- pkgs/games/cataclysm-dda/default.nix | 9 +++------ pkgs/games/cataclysm-dda/git.nix | 9 +++------ 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/pkgs/games/cataclysm-dda/default.nix b/pkgs/games/cataclysm-dda/default.nix index a06b53ac219..b37e87c74f5 100644 --- a/pkgs/games/cataclysm-dda/default.nix +++ b/pkgs/games/cataclysm-dda/default.nix @@ -1,4 +1,4 @@ -{ fetchFromGitHub, stdenv, makeWrapper, pkgconfig, ncurses, lua, SDL2, SDL2_image, SDL2_ttf, +{ fetchFromGitHub, stdenv, pkgconfig, ncurses, lua, SDL2, SDL2_image, SDL2_ttf, SDL2_mixer, freetype, gettext, Cocoa, libicns }: stdenv.mkDerivation rec { @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { sha256 = "03sdzsk4qdq99qckq0axbsvg1apn6xizscd8pwp5w6kq2fyj5xkv"; }; - nativeBuildInputs = [ makeWrapper pkgconfig ] + nativeBuildInputs = [ pkgconfig ] ++ stdenv.lib.optionals stdenv.isDarwin [ libicns ]; buildInputs = [ ncurses lua SDL2 SDL2_image SDL2_ttf SDL2_mixer freetype gettext ] @@ -41,10 +41,7 @@ stdenv.mkDerivation rec { png2icns data/osx/AppIcon.icns data/osx/AppIcon.iconset/* ''; - postInstall = '' - wrapProgram $out/bin/cataclysm-tiles \ - --add-flags "--datadir $out/share/cataclysm-dda/" - '' + stdenv.lib.optionalString stdenv.isDarwin '' + postInstall = stdenv.lib.optionalString stdenv.isDarwin '' app=$out/Applications/Cataclysm.app install -D -m 444 data/osx/Info.plist -t $app/Contents install -D -m 444 data/osx/AppIcon.icns -t $app/Contents/Resources diff --git a/pkgs/games/cataclysm-dda/git.nix b/pkgs/games/cataclysm-dda/git.nix index 86e040546dc..f08b4a9f3b1 100644 --- a/pkgs/games/cataclysm-dda/git.nix +++ b/pkgs/games/cataclysm-dda/git.nix @@ -1,4 +1,4 @@ -{ fetchFromGitHub, stdenv, makeWrapper, pkgconfig, ncurses, lua, SDL2, SDL2_image, SDL2_ttf, +{ fetchFromGitHub, stdenv, pkgconfig, ncurses, lua, SDL2, SDL2_image, SDL2_ttf, SDL2_mixer, freetype, gettext, CoreFoundation, Cocoa }: stdenv.mkDerivation rec { @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { sha256 = "1a7kdmx76na4g65zra01qaq98lxp9j2dl9ddv09r0p5yxaizw68z"; }; - nativeBuildInputs = [ makeWrapper pkgconfig ]; + nativeBuildInputs = [ pkgconfig ]; buildInputs = [ ncurses lua SDL2 SDL2_image SDL2_ttf SDL2_mixer freetype gettext ] ++ stdenv.lib.optionals stdenv.isDarwin [ CoreFoundation Cocoa ]; @@ -34,10 +34,7 @@ stdenv.mkDerivation rec { "NATIVE=osx CLANG=1" ]; - postInstall = '' - wrapProgram $out/bin/cataclysm-tiles \ - --add-flags "--datadir $out/share/cataclysm-dda/" - '' + stdenv.lib.optionalString stdenv.isDarwin '' + postInstall = stdenv.lib.optionalString stdenv.isDarwin '' app=$out/Applications/Cataclysm.app install -D -m 444 data/osx/Info.plist -t $app/Contents install -D -m 444 data/osx/AppIcon.icns -t $app/Contents/Resources From bd9b51f4df7fb2d88295a813f51e97f5acc46a59 Mon Sep 17 00:00:00 2001 From: Mitsuhiro Nakamura Date: Tue, 23 Jan 2018 00:13:10 +0900 Subject: [PATCH 3/3] cataclysm-dda-git: install missing translations Using gettext without translation files is just like driving a car without wheels. --- pkgs/games/cataclysm-dda/default.nix | 1 + pkgs/games/cataclysm-dda/git.nix | 1 + 2 files changed, 2 insertions(+) diff --git a/pkgs/games/cataclysm-dda/default.nix b/pkgs/games/cataclysm-dda/default.nix index b37e87c74f5..be6f3265430 100644 --- a/pkgs/games/cataclysm-dda/default.nix +++ b/pkgs/games/cataclysm-dda/default.nix @@ -31,6 +31,7 @@ stdenv.mkDerivation rec { makeFlags = [ "PREFIX=$(out) LUA=1 TILES=1 SOUND=1 RELEASE=1 USE_HOME_DIR=1" + # "LANGUAGES=all" # vanilla C:DDA installs all translations even without this flag! ] ++ stdenv.lib.optionals stdenv.isDarwin [ "NATIVE=osx CLANG=1" "OSX_MIN=10.6" # SDL for macOS only supports deploying on 10.6 and above diff --git a/pkgs/games/cataclysm-dda/git.nix b/pkgs/games/cataclysm-dda/git.nix index f08b4a9f3b1..3d8ec7d6844 100644 --- a/pkgs/games/cataclysm-dda/git.nix +++ b/pkgs/games/cataclysm-dda/git.nix @@ -30,6 +30,7 @@ stdenv.mkDerivation rec { makeFlags = [ "PREFIX=$(out) LUA=1 TILES=1 SOUND=1 RELEASE=1 USE_HOME_DIR=1" + "LANGUAGES=all" ] ++ stdenv.lib.optionals stdenv.isDarwin [ "NATIVE=osx CLANG=1" ];