diff options
author | Free Potion <42352817+freepotion@users.noreply.github.com> | 2018-10-06 17:59:26 +0300 |
---|---|---|
committer | xeji <36407913+xeji@users.noreply.github.com> | 2018-10-06 16:59:26 +0200 |
commit | 171752daee9aa2b4049d70a7cebe6a72d2838f90 (patch) | |
tree | 30653a83beb1a35dec1dc16d5dcfedae1e1fc779 /pkgs | |
parent | 364d47723692d88e391a9e19679707a1d3a29402 (diff) | |
download | nixpkgs-171752daee9aa2b4049d70a7cebe6a72d2838f90.tar nixpkgs-171752daee9aa2b4049d70a7cebe6a72d2838f90.tar.gz nixpkgs-171752daee9aa2b4049d70a7cebe6a72d2838f90.tar.bz2 nixpkgs-171752daee9aa2b4049d70a7cebe6a72d2838f90.tar.lz nixpkgs-171752daee9aa2b4049d70a7cebe6a72d2838f90.tar.xz nixpkgs-171752daee9aa2b4049d70a7cebe6a72d2838f90.tar.zst nixpkgs-171752daee9aa2b4049d70a7cebe6a72d2838f90.zip |
ivan: 053 -> 054 (#47950)
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/games/ivan/default.nix | 8 | ||||
-rw-r--r-- | pkgs/games/ivan/homedir.patch | 75 | ||||
-rw-r--r-- | pkgs/games/ivan/new.patch | 33 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 4 |
4 files changed, 39 insertions, 81 deletions
diff --git a/pkgs/games/ivan/default.nix b/pkgs/games/ivan/default.nix index 07b67fa6397..6d31369a159 100644 --- a/pkgs/games/ivan/default.nix +++ b/pkgs/games/ivan/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { name = "ivan-${version}"; - version = "053"; + version = "054"; src = fetchFromGitHub { owner = "Attnam"; repo = "ivan"; rev = "v${version}"; - sha256 = "1r3fcccgpjmzzkg0lfmq76igjapr01kh97vz671z60jg7gyh301b"; + sha256 = "0ayhp9qvxsi5dsgjvy43i3lpdis883g1xn2b8l5xkwxcqfnvsfmq"; }; nativeBuildInputs = [ cmake pkgconfig ]; @@ -19,10 +19,10 @@ stdenv.mkDerivation rec { hardeningDisable = ["all"]; # To store bone and high score files in ~/.ivan of the current user - patches = [./homedir.patch]; + patches = [./new.patch]; # Enable wizard mode - cmakeFlags = ["-DCMAKE_CXX_FLAGS=-DWIZARD"]; + cmakeFlags = ["-DCMAKE_CXX_FLAGS=-DWIZARD" "-DFORCE_HOME_AS_STATE_DIR=ON"]; # Help CMake find SDL_mixer.h NIX_CFLAGS_COMPILE = "-I${SDL2_mixer}/include/SDL2"; diff --git a/pkgs/games/ivan/homedir.patch b/pkgs/games/ivan/homedir.patch deleted file mode 100644 index 312099f7ffd..00000000000 --- a/pkgs/games/ivan/homedir.patch +++ /dev/null @@ -1,75 +0,0 @@ -diff --git a/FeLib/Include/hscore.h b/FeLib/Include/hscore.h -index 4caf3ff..1a02845 100644 ---- a/FeLib/Include/hscore.h -+++ b/FeLib/Include/hscore.h -@@ -31,11 +31,11 @@ class festring; - class highscore - { - public: -- highscore(cfestring& = HIGH_SCORE_FILENAME); -+ highscore(); - truth Add(long, cfestring&); - void Draw() const; -- void Save(cfestring& = HIGH_SCORE_FILENAME) const; -- void Load(cfestring& = HIGH_SCORE_FILENAME); -+ void Save() const; -+ void Load(); - truth LastAddFailed() const; - void AddToFile(highscore*) const; - truth MergeToFile(highscore*) const; -diff --git a/FeLib/Source/hscore.cpp b/FeLib/Source/hscore.cpp -index 2e5318d..ff9c174 100644 ---- a/FeLib/Source/hscore.cpp -+++ b/FeLib/Source/hscore.cpp -@@ -23,7 +23,7 @@ cfestring& highscore::GetEntry(int I) const { return Entry[I]; } - long highscore::GetScore(int I) const { return Score[I]; } - long highscore::GetSize() const { return Entry.size(); } - --highscore::highscore(cfestring& File) : LastAdd(0xFF), Version(HIGH_SCORE_VERSION) { Load(File); } -+highscore::highscore() : LastAdd(0xFF), Version(HIGH_SCORE_VERSION) { Load(); } - - truth highscore::Add(long NewScore, cfestring& NewEntry, - time_t NewTime, long NewRandomID) -@@ -98,8 +98,12 @@ void highscore::Draw() const - List.Draw(); - } - --void highscore::Save(cfestring& File) const -+void highscore::Save() const - { -+ std::string buffer(getenv("HOME")); -+ buffer.append("/.ivan/ivan-highscore.scores"); -+ cfestring& File = buffer.c_str(); -+ - outputfile HighScore(File); - long CheckSum = HIGH_SCORE_VERSION + LastAdd; - for(ushort c = 0; c < Score.size(); ++c) -@@ -112,8 +116,12 @@ void highscore::Save(cfestring& File) const - } - - /* This function needs much more error handling */ --void highscore::Load(cfestring& File) -+void highscore::Load() - { -+ std::string buffer(getenv("HOME")); -+ buffer.append("/.ivan/ivan-highscore.scores"); -+ cfestring& File = buffer.c_str(); -+ - { - inputfile HighScore(File, 0, false); - -diff --git a/Main/Source/game.cpp b/Main/Source/game.cpp -index 8927305..c18e790 100644 ---- a/Main/Source/game.cpp -+++ b/Main/Source/game.cpp -@@ -2380,7 +2380,9 @@ festring game::GetDataDir() - festring game::GetBoneDir() - { - #ifdef UNIX -- return LOCAL_STATE_DIR "/Bones/"; -+ festring BoneDir; -+ BoneDir << getenv("HOME") << "/.ivan/Bones/"; -+ return BoneDir; - #endif - - #if defined(WIN32) || defined(__DJGPP__) diff --git a/pkgs/games/ivan/new.patch b/pkgs/games/ivan/new.patch new file mode 100644 index 00000000000..d0ed866b3f3 --- /dev/null +++ b/pkgs/games/ivan/new.patch @@ -0,0 +1,33 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 13e143e..a6f9176 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -13,10 +13,14 @@ set(CMAKE_CXX_FLAGS "-std=c++11 ${CMAKE_CXX_FLAGS}") + add_definitions(-DIVAN_VERSION="${PROJECT_VERSION}" -DUSE_SDL) + + option(BUILD_MAC_APP "Build standalone application for MacOS" OFF) ++option(FORCE_HOME_AS_STATE_DIR "Statedir will be /.ivan/ in current user's homedir" OFF) + + if(UNIX) + add_definitions(-DUNIX) + include(GNUInstallDirs) ++ if(FORCE_HOME_AS_STATE_DIR) ++ add_definitions(-DFORCE_HOME_AS_STATE_DIR) ++ endif(FORCE_HOME_AS_STATE_DIR) + + if(BUILD_MAC_APP) + install(DIRECTORY Graphics Script Music Sound DESTINATION "ivan") +diff --git a/Main/Source/game.cpp b/Main/Source/game.cpp +index 323a185..012feb3 100644 +--- a/Main/Source/game.cpp ++++ b/Main/Source/game.cpp +@@ -5191,6 +5191,9 @@ festring game::GetDataDir() + + festring game::GetStateDir() + { ++#ifdef FORCE_HOME_AS_STATE_DIR ++ return GetHomeDir()+"/.ivan/"; ++#endif + #ifdef UNIX + #ifdef MAC_APP + return GetHomeDir(); diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e9e5fc39b2a..c403077dbb9 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3406,8 +3406,6 @@ with pkgs; isync = callPackage ../tools/networking/isync { }; isyncUnstable = callPackage ../tools/networking/isync/unstable.nix { }; - ivan = callPackage ../games/ivan { }; - jaaa = callPackage ../applications/audio/jaaa { }; jackett = callPackage ../servers/jackett { @@ -20127,6 +20125,8 @@ with pkgs; instead-launcher = callPackage ../games/instead-launcher { }; + ivan = callPackage ../games/ivan { }; + ja2-stracciatella = callPackage ../games/ja2-stracciatella { }; klavaro = callPackage ../games/klavaro {}; |