From 547fea8f6f2ba3086f183620c5f092c651fa899f Mon Sep 17 00:00:00 2001 From: souxd Date: Fri, 1 Dec 2023 15:04:30 -0300 Subject: [PATCH] doomseeker: 2018-03-05 -> 2023-08-09 new file: pkgs/games/doom-ports/doomseeker/add_gitinfo.patch modified: pkgs/games/doom-ports/doomseeker/default.nix new file: pkgs/games/doom-ports/doomseeker/dont_update_gitinfo.patch modified: pkgs/games/doom-ports/doomseeker/fix_paths.patch --- .../doom-ports/doomseeker/add_gitinfo.patch | 17 ++++++ pkgs/games/doom-ports/doomseeker/default.nix | 20 ++++--- .../doomseeker/dont_update_gitinfo.patch | 45 ++++++++++++++ .../doom-ports/doomseeker/fix_paths.patch | 58 ++++++++----------- 4 files changed, 99 insertions(+), 41 deletions(-) create mode 100644 pkgs/games/doom-ports/doomseeker/add_gitinfo.patch create mode 100644 pkgs/games/doom-ports/doomseeker/dont_update_gitinfo.patch diff --git a/pkgs/games/doom-ports/doomseeker/add_gitinfo.patch b/pkgs/games/doom-ports/doomseeker/add_gitinfo.patch new file mode 100644 index 000000000000..236a1418ce61 --- /dev/null +++ b/pkgs/games/doom-ports/doomseeker/add_gitinfo.patch @@ -0,0 +1,17 @@ +diff --git a/src/core/gitinfo.h b/src/core/gitinfo.h +new file mode 100644 +index 00000000..6f330552 +--- /dev/null ++++ b/src/core/gitinfo.h +@@ -0,0 +1,11 @@ ++// 4cce0a37b134283ed38ee4814bb282773f9c2ed1 ++// ++// This file was automatically generated by the ++// updaterevision tool. Do not edit by hand. ++ ++#define GIT_DESCRIPTION "1.4.1-29-g4cce0a37" ++#define GIT_HASH "4cce0a37b134283ed38ee4814bb282773f9c2ed1" ++#define GIT_TIME "2023-08-09 13:55:37 +0200" ++#define HG_REVISION_NUMBER 1691582137 ++#define HG_REVISION_HASH_STRING "4cce0a37b134" ++#define HG_TIME "230809-1155" diff --git a/pkgs/games/doom-ports/doomseeker/default.nix b/pkgs/games/doom-ports/doomseeker/default.nix index 48ea1a0296cf..47719cd808fa 100644 --- a/pkgs/games/doom-ports/doomseeker/default.nix +++ b/pkgs/games/doom-ports/doomseeker/default.nix @@ -1,23 +1,29 @@ -{ lib, stdenv, mkDerivation, cmake, fetchFromBitbucket, pkg-config, qtbase, qttools, qtmultimedia, zlib, bzip2, xxd }: +{ lib, stdenv, cmake, fetchFromBitbucket, wrapQtAppsHook, pkg-config, qtbase, qttools, qtmultimedia, zlib, bzip2, xxd }: -mkDerivation { +stdenv.mkDerivation { pname = "doomseeker"; - version = "2018-03-05"; + version = "2023-08-09"; src = fetchFromBitbucket { owner = "Doomseeker"; repo = "doomseeker"; - rev = "c2c7f37b1afb"; - sha256 = "17fna3a604miqsvply3klnmypps4ifz8axgd3pj96z46ybxs8akw"; + rev = "4cce0a37b134283ed38ee4814bb282773f9c2ed1"; + hash = "sha256-J7gesOo8NUPuVaU0o4rCGzLrqr3IIMAchulWZG3HTqg="; }; - patches = [ ./fix_paths.patch ./qt_build_fix.patch ]; + patches = [ ./dont_update_gitinfo.patch ./add_gitinfo.patch ./fix_paths.patch ]; - nativeBuildInputs = [ cmake qttools pkg-config xxd ]; + nativeBuildInputs = [ wrapQtAppsHook cmake qttools pkg-config xxd ]; buildInputs = [ qtbase qtmultimedia zlib bzip2 ]; hardeningDisable = lib.optional stdenv.isDarwin "format"; + # Doomseeker looks for the engines in the program directory + postInstall = '' + mv $out/bin/* $out/lib/doomseeker/ + ln -s $out/lib/doomseeker/doomseeker $out/bin/ + ''; + meta = with lib; { homepage = "http://doomseeker.drdteam.org/"; description = "Multiplayer server browser for many Doom source ports"; diff --git a/pkgs/games/doom-ports/doomseeker/dont_update_gitinfo.patch b/pkgs/games/doom-ports/doomseeker/dont_update_gitinfo.patch new file mode 100644 index 000000000000..724a628849d4 --- /dev/null +++ b/pkgs/games/doom-ports/doomseeker/dont_update_gitinfo.patch @@ -0,0 +1,45 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index b4b26e04..338858f8 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -149,11 +149,8 @@ set(CXX_STANDARD_REQUIRED ON) + + if(WIN32) + set(WITH_AUTOUPDATES 1) +- add_subdirectory(tools/updateinstaller) + endif() + +-add_subdirectory(tools/updaterevision) +- + add_subdirectory(src/core) + add_subdirectory(src/plugins) + +diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt +index 089e3889..8add598d 100644 +--- a/src/core/CMakeLists.txt ++++ b/src/core/CMakeLists.txt +@@ -50,13 +50,6 @@ configure_file(doomseeker_copts.h.in doomseeker_copts.h) + option(DOOMSEEKER_INSTALL_NONFREE "Install non-free resources?" ${DEFAULT_NONFREE_INSTALL}) + set(DOOMSEEKER_IP2C_DAT "" CACHE FILEPATH "Path to IpToCountry.dat; optional") + +-# Get the revision from vcs +-add_custom_target(revision_check ALL +- COMMAND updaterevision ${CMAKE_CURRENT_SOURCE_DIR}/gitinfo.h +- WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} +- DEPENDS updaterevision +-) +- + # In case gitinfo.h isn't yet generated create a dummy file so our file listing + # will contain it. We can't just add it to the file listing since then CMake + # would complain that it doesn't exist. +@@ -178,10 +171,6 @@ endif() + + target_compile_definitions(doomseeker PRIVATE "-DINSTALL_PREFIX=\"${CMAKE_INSTALL_PREFIX}\"" "-DINSTALL_LIBDIR=\"${CMAKE_INSTALL_LIBDIR}\"") + +-# Make sure the vcs version file is created before we attempt to compile +-# Doomseeker. +-add_dependencies(doomseeker revision_check) +- + target_link_libraries(doomseeker + LINK_PRIVATE + Wadseeker::wadseeker diff --git a/pkgs/games/doom-ports/doomseeker/fix_paths.patch b/pkgs/games/doom-ports/doomseeker/fix_paths.patch index 08654c2384cb..74d892361055 100644 --- a/pkgs/games/doom-ports/doomseeker/fix_paths.patch +++ b/pkgs/games/doom-ports/doomseeker/fix_paths.patch @@ -1,40 +1,30 @@ -diff -ru3 source-old/src/core/datapaths.cpp source-new/src/core/datapaths.cpp ---- source-old/src/core/datapaths.cpp 1970-01-01 03:00:01.000000000 +0300 -+++ source-new/src/core/datapaths.cpp 2018-03-04 00:10:25.247262567 +0300 -@@ -335,7 +335,7 @@ - paths.append(workingDirectory()); - paths.append("./"); - #ifndef Q_OS_WIN32 -- paths.append(INSTALL_PREFIX "/" INSTALL_LIBDIR "/doomseeker/"); -+ paths.append(INSTALL_PREFIX "/lib/doomseeker/"); - #endif - paths = uniquePaths(paths); - return Strings::combineManyPaths(paths, "engines/"); -diff -ru3 source-old/src/core/pathfinder/pathfinder.cpp source-new/src/core/pathfinder/pathfinder.cpp ---- source-old/src/core/pathfinder/pathfinder.cpp 1970-01-01 03:00:01.000000000 +0300 -+++ source-new/src/core/pathfinder/pathfinder.cpp 2018-03-04 00:09:34.862556976 +0300 -@@ -128,9 +128,7 @@ +diff --git a/src/core/pathfinder/pathfinder.cpp b/src/core/pathfinder/pathfinder.cpp +index f277283a..454a8145 100644 +--- a/src/core/pathfinder/pathfinder.cpp ++++ b/src/core/pathfinder/pathfinder.cpp +@@ -137,9 +137,7 @@ PathFinder PathFinder::genericPathFinder(const QStringList &suffixes) << DataPaths::programFilesDirectory(DataPaths::x64) << DataPaths::programFilesDirectory(DataPaths::x86); - #else + #else - paths << "/usr/bin" << "/usr/local/bin" << "/usr/share/bin" - << "/usr/games/" << "/usr/local/games/" -- << "/usr/share/games/" << gDefaultDataPaths->workingDirectory() << "."; -+ paths << gDefaultDataPaths->workingDirectory() << "."; - #endif +- << "/usr/share/games/" << QCoreApplication::applicationDirPath() << "."; ++ paths << gDefaultDataPaths->workingDirectory() << "."; + #endif QStringList pathsCopy(paths); - foreach (const QString &path, pathsCopy) -diff -ru3 source-old/src/core/pathfinder/wadpathfinder.cpp source-new/src/core/pathfinder/wadpathfinder.cpp ---- source-old/src/core/pathfinder/wadpathfinder.cpp 1970-01-01 03:00:01.000000000 +0300 -+++ source-new/src/core/pathfinder/wadpathfinder.cpp 2018-03-04 00:09:56.822865339 +0300 -@@ -84,10 +84,6 @@ - QStringList defaultPaths() - { - QStringList paths; -- #ifdef Q_OS_UNIX -- paths << "/usr/local/share/games/doom/" -- << "/usr/share/games/doom/"; -- #endif - return paths; - } + for (const QString &path : pathsCopy) +diff --git a/src/core/pathfinder/wadpathfinder.cpp b/src/core/pathfinder/wadpathfinder.cpp +index 07df0b64..6300542d 100644 +--- a/src/core/pathfinder/wadpathfinder.cpp ++++ b/src/core/pathfinder/wadpathfinder.cpp +@@ -84,10 +84,6 @@ public: + QStringList defaultPaths() + { + QStringList paths; +- #ifdef Q_OS_UNIX +- paths << "/usr/local/share/games/doom/" +- << "/usr/share/games/doom/"; +- #endif + return paths; + } };