Package: guix-patches;
Reported by: Tobias Geerinckx-Rice <me <at> tobias.gr>
Date: Fri, 13 Sep 2024 21:33:01 UTC
Severity: normal
Tags: patch
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Tobias Geerinckx-Rice <me <at> tobias.gr> To: guix-patches <at> gnu.org Subject: [PATCH] gnu: Add xevil. Date: Fri, 13 Sep 2024 23:30:32 +0200
* gnu/packages/games.scm (xevil): New public variable. Change-Id: I86885cc816685001a7d8d7dacccc396f39ddbd5f --- What an ugly thing for which to feel childhood nostalgia. But I do. gnu/packages/games.scm | 79 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 26ddde50fe..d010c57fc5 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -11109,6 +11109,85 @@ (define-public xblackjack System\" (high-low system).") (license (license:x11-style "" "See file headers.")))) +(define-public xevil + ;; This game is old. Use a maintained fork that builds with modern toolchains + ;; on modern, 64-bit hardware. + (let ((commit "9ca85059d5195be0eb15e107de3bb9d1b49e5f99") + (revision "0")) + (package + (name "xevil") + (version (git-version "2.02" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/lvella/xevil") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "14hsmw9ll2asnp1s0zvniyp31kjw8ynm7vnycg74lpqf28h2rric")))) + (build-system gnu-build-system) + (arguments + (list + #:modules `(,@%default-gnu-imported-modules + (srfi srfi-26)) + #:make-flags + #~(list "SHELL=sh" + "DEBUG_OPT=-g -DNDEBUG") + #:tests? #f ;no test suite + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'rename-licence-file + (lambda _ (rename-file "gpl.txt" "COPYING"))) + (add-after 'unpack 'redefine + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "cmn/game.cpp" + (("(#define VERSION ).*" _ define) + (string-append define "\"" #$version "\"\n"))) + (substitute* "cmn/utils.cpp" + (("[^\"]*/(bin/uname)" _ command) + (search-input-file inputs command))) + (substitute* "x11/ui.cpp" + ;; Neither DEFAULT_BIG_FONT_NAME nor BACKUP_FONT_NAME are + ;; available from most Guix X11 servers, making the game + ;; unplayable by default. Substitute the closest match. + (("9x15") "6x13") + ;; ‘For fast machines’ need no longer default to False in C21. + (("(smoothScroll = )False" _ assign) + (string-append assign "True"))))) + (delete 'configure) ;no configure script + (replace 'install + (lambda _ + (with-directory-excursion "x11/REDHAT_LINUX" ;yeah + (for-each (cut install-file <> + (string-append #$output "/bin")) + (list "xevil" "serverping"))) + (let ((doc (string-append #$output "/share/doc/" + #$name "-" #$version))) + (mkdir-p doc) + (for-each (lambda (file) + (copy-recursively file + (string-append + doc "/" (basename file)))) + (list "instructions" "x11/app-defaults")))))))) + (inputs + (list coreutils-minimal ;for uname + libx11 libxpm)) + ;; The current home page has been ‘subtly’ vandalised with spam and is + ;; missing a lot of content from this older snapshot. + (home-page (string-append "https://web.archive.org/web/20060410005819/" + "http://www.xevil.com/")) + (synopsis + "Third-person, side-scrolling, fast-action, kill-everything game") + (description + "XEvil is a violent third-person, side-scrolling, fast-action deathmatch. +You run around a randomly generated two-dimensional map composed of walls, +floors, ladders, doors, and horizontal and vertical elevators. Your only object +is to explore this world to find weapons and items, killing everything in sight +before they kill you. You can fight against either computer-controlled enemies +or against other people.") + (license license:gpl2+)))) + (define-public azimuth (package (name "azimuth") base-commit: aefa5f2a6760f462ff002db5dccd37ea92ae97f8 prerequisite-patch-id: 2f4066d1d249a7c775a86bda300ffe4747eca5ca prerequisite-patch-id: f20ff1a7a3fd63bc23eb305b23371ed46aede738 prerequisite-patch-id: 66eb3b0b8d5565169223d6dcaaef60e193ecaf17 prerequisite-patch-id: 9a5b632245d8ba1373272bb80f09c26fd19fbfae -- 2.46.0
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.