Package: guix-patches;
Reported by: James Smith <jsubuntuxp <at> disroot.org>
Date: Mon, 16 Sep 2024 02:13:02 UTC
Severity: normal
Tags: patch
Done: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
Bug is archived. No further changes may be made.
Message #20 received at 73287 <at> debbugs.gnu.org (full text, mbox):
From: Liliana Marie Prikler <liliana.prikler <at> gmail.com> To: James Smith <jsubuntuxp <at> disroot.org>, 73287 <at> debbugs.gnu.org Cc: 宋文武 <iyzsong <at> envs.net>, Adam Faiz <adam.faiz <at> disroot.org> Subject: Re: [bug#73287] [PATCH 3/3] gnu: Add trenchbroom. Date: Fri, 20 Sep 2024 10:02:08 +0200
Am Sonntag, dem 15.09.2024 um 19:16 -0700 schrieb James Smith: > * gnu/packages/game-development.scm: (trenchbroom): New variable. > > Change-Id: I50691b1db2010cd8c2c7f04bdfd80278b9e14aed > --- > gnu/packages/game-development.scm | 93 > +++++++++++++++++++++++++++++++ > 1 file changed, 93 insertions(+) > > diff --git a/gnu/packages/game-development.scm b/gnu/packages/game- > development.scm > index d61b4d633a..abc144f535 100644 > --- a/gnu/packages/game-development.scm > +++ b/gnu/packages/game-development.scm > @@ -91,12 +91,14 @@ (define-module (gnu packages game-development) > #:use-module (gnu packages graphviz) > #:use-module (gnu packages gtk) > #:use-module (gnu packages guile) > + #:use-module (gnu packages haskell-xyz) > #:use-module (gnu packages icu4c) > #:use-module (gnu packages image) > #:use-module (gnu packages linux) > #:use-module (gnu packages llvm) > #:use-module (gnu packages lua) > #:use-module (gnu packages m4) > + #:use-module (gnu packages maths) > #:use-module (gnu packages mp3) > #:use-module (gnu packages multiprecision) > #:use-module (gnu packages music) > @@ -104,6 +106,7 @@ (define-module (gnu packages game-development) > #:use-module (gnu packages networking) > #:use-module (gnu packages pcre) > #:use-module (gnu packages pkg-config) > + #:use-module (gnu packages pretty-print) > #:use-module (gnu packages pulseaudio) > #:use-module (gnu packages python) > #:use-module (gnu packages python-crypto) > @@ -121,6 +124,7 @@ (define-module (gnu packages game-development) > #:use-module (gnu packages texinfo) > #:use-module (gnu packages textutils) > #:use-module (gnu packages tls) > + #:use-module (gnu packages version-control) > #:use-module (gnu packages video) > #:use-module (gnu packages vulkan) > #:use-module (gnu packages web) > @@ -674,6 +678,95 @@ (define-public tiled > ;; under BSD-2. > (license license:gpl2+))) > > +(define-public trenchbroom > + (package > + (name "trenchbroom") > + (version "2024.1") > + (source > + (origin > + (method git-fetch) > + (uri (git-reference > + (url "https://github.com/TrenchBroom/TrenchBroom") > + (commit (string-append "v" version)))) > + (file-name (git-file-name name version)) > + (sha256 > + (base32 > "1xysz7rkjy11wp9sshdqllmlw8qb65f1zlljpw3q22483szwzxnb")))) > + (build-system cmake-build-system) > + (arguments > + (list #:configure-flags > + #~(list "-DCMAKE_BUILD_TYPE=Release" "-G" "Unix > Makefiles" > + "-DCMAKE_PREFIX_PATH=cmake/packages" > + (string-append "-DFREEIMAGE_INCLUDE_PATH=" > + #$freeimage "/include") > + (string-append "-DFREEIMAGE_LIBRARY=" > + #$freeimage > "/lib/libfreeimage.so") > + (string-append "-Dfreetype_INCLUDE_DIR=" > + #$freetype "/include/freetype2") > + (string-append "-Dfreetype_LIBRARY=" > + #$freetype "/lib/libfreetype.so")) > + #:phases > + #~(modify-phases %standard-phases > + (add-after 'unpack 'fix-build-system > + (lambda _ > + (substitute* "CMakeLists.txt" > + (("set\\(CMAKE_TOOLCHAIN_FILE") > + "#set(CMAKE_TOOLCHAIN_FILE")) > + (substitute* "app/CMakeLists.txt" > + (("/usr") #$output)))) > + (add-before 'build 'set-environment-variables > + (lambda _ > + ;; Set home so fontconfig can write cache. > + (setenv "HOME" (getenv "TEMP")) > + ;; Set QT platform for offscreen rendering. > + (setenv "QT_QPA_PLATFORM" "offscreen") > + (setenv "XDG_RUNTIME_DIR" (getenv "TEMP")))) > + (add-after 'install 'wrap-trenchbroom > + (lambda _ > + (wrap-program (string-append #$output > "/bin/trenchbroom") > + ;; TrenchBroom needs $XDG_DATA_DIRS set to find > game > + ;; configs. > + `("XDG_DATA_DIRS" ":" prefix > + (,(string-append #$output "/share"))) > + ;; TrenchBroom also doesn't work well with > Wayland backend. > + '("QT_QPA_PLATFORM" = ("xcb"))))) > + (add-after 'install 'install-desktop-file > + (lambda _ > + (make-desktop-entry-file > + (string-append #$output "/share/applications/" > + #$(package-name this-package) > ".desktop") > + #:name "TrenchBroom" > + #:comment #$(package-synopsis this-package) > + #:exec #$name > + #:icon #$name > + #:categories '("Development") > + #:keywords '("quake" "level" "editor"))))) > + #:tests? #f)) ; No tests. > + (inputs > + (list assimp > + bash-minimal > + catch2 > + fmt > + freeglut > + freeimage > + freetype > + glew > + glm > + glu > + libxxf86vm > + mesa > + miniz > + qtbase-5 > + qtsvg-5 > + tinyxml2)) > + (native-inputs (list git pandoc python p7zip)) > + (home-page "https://kristianduske.com/trenchbroom/") > + (synopsis "Cross-platform level editor for Quake-engine based > games") > + (description "TrenchBroom is a cross-platform level editor for > Quake-engine > +based games. It supports Quake, Quake 2, and Hexen 2. TrenchBroom > is easy and > +provides many simple and advanced tools to create complex and > interesting levels > +with ease.") "Easy with ease"… less marketing speech is advisable :)
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.