Compare commits

...

19 commits

Author SHA1 Message Date
Rodion Goritskov
e8406f1570 Merge branch 'add-fallout' into 'master'
nongnu: Add fallout1-ce and fallout2-ce.

See merge request nonguix/nonguix!622
2025-09-30 20:22:09 +00:00
John Kehayias
89f0dca2eb
nongnu: firefox-esr: Use ffmpeg-6.
This fixes video playback post mesa-updates merge in Guix.  See upstream issue
<https://bugzilla.mozilla.org/show_bug.cgi?id=1962139>; fix is like for
librewolf in Guix, see <https://codeberg.org/guix/guix/issues/3038>.

* nongnu/packages/mozilla.scm (firefox-esr)[inputs]: Change ffmpeg to
ffmpeg-6.
2025-09-30 11:12:52 -04:00
Jelle Licht
25d7a8091c
nongnu: steam-client: Update to 1.0.0.84.
* nongnu/packages/game-client.scm (steam-client): Update to 1.0.0.84.
2025-09-23 22:45:08 +02:00
Murilo
c33db8571a
nongnu: nvidia-driver: Update to 580.82.09.
* nongnu/packages/nvidia.scm (nvidia-driver): Update to 580.82.09.
(nvidia-settings): Likewise.

Signed-off-by: Hilton Chain <hako@ultrarare.space>
2025-09-23 21:56:55 +08:00
Murilo
2fe28d2a1b
nongnu: nvidia-driver: Install additional components.
* nongnu/packages/nvidia.scm (nvidia-driver)[arguments]
<#:install-plan>: Install 'nvngx_dlssg.dll' and 'nvoptix.bin'.
<#:phases>{create-misc-files}: Set 'nvidia_layers.json' library_path
to the store absolute path of 'libnvidia-present.so'.

Signed-off-by: Hilton Chain <hako@ultrarare.space>
2025-09-23 21:56:55 +08:00
Murilo
9302c6319b
nongnu: egl-x11: Update to 1.0.3.
* nongnu/packages/nvidia.scm (egl-x11): Update to 1.0.3.

Signed-off-by: Hilton Chain <hako@ultrarare.space>
2025-09-23 21:56:55 +08:00
Murilo
63c7e04386
nongnu: egl-gbm: Update to 1.1.2.1.
* nongnu/packages/nvidia.scm (egl-gbm): Update to 1.1.2.1.

Signed-off-by: Hilton Chain <hako@ultrarare.space>
2025-09-23 21:56:55 +08:00
Nicolas Graves
7a67115e0d
import: Add firefox updater.
* guix/import/firefox.scm: Implement basic firefox updater.

Signed-off-by: Hilton Chain <hako@ultrarare.space>
Modified-by: Hilton Chain <hako@ultrarare.space>
2025-09-23 21:56:55 +08:00
Ashish SHUKLA
017e4bf864
nongnu: signal-desktop: Update to 7.71.0.
* nongnu/packages/messaging.scm (signal-desktop): Update to 7.71.0.

Signed-off-by: Hilton Chain <hako@ultrarare.space>
2025-09-23 21:56:55 +08:00
Hilton Chain
0864aa6ba5
nongnu: steam-client: Set supported-systems.
* nongnu/packages/game-client.scm (steam-client) [supported-systems]: Limit to
x86_64-linux only.
2025-09-23 21:56:55 +08:00
Hilton Chain
0531ba5050
nongnu: heroic-client: Set supported-systems.
* nongnu/packages/game-client.scm (heroic-client) [supported-systems]: Limit to
x86_64-linux only.
2025-09-23 21:56:53 +08:00
Jelle Licht
bc2a73d7a8
nongnu: linux-firmware: Update to 20250917.
* nongnu/packages/linux.scm (linux-firmware): Update to 20250917.
(select-firmware): Handle the Link keyword correctly.
(iwlwifi-firmware)[arguments]{phases}: In the select-firmware phase, use new
location of firmware.
2025-09-19 13:27:34 +02:00
Ashish SHUKLA
de297a2a28
nongnu: signal-desktop: Update to 7.70.0
* nongnu/packages/messaging.scm (signal-desktop): Update to 7.70.0

Signed-off-by: John Kehayias <john.kehayias@protonmail.com>
2025-09-18 12:25:30 -04:00
Tomas Volf
adc55dec01
nongnu: firefox-esr: Update to 140.3.0esr [security fixes].
Fixes CVE-2025-10527, CVE-2025-10528, CVE-2025-10529, CVE-2025-10532,
CVE-2025-10533, CVE-2025-10536, CVE-2025-10537.

* nongnu/packages/mozilla.scm (firefox-esr): Update to 140.3.0esr.

Signed-off-by: John Kehayias <john.kehayias@protonmail.com>
2025-09-18 12:24:07 -04:00
Tomas Volf
52d202e8ec
nongnu: firefox: Update to 143.0 [security fixes].
Fixes CVE-2025-10527, CVE-2025-10528, CVE-2025-10529, CVE-2025-10530,
CVE-2025-10531, CVE-2025-10532, CVE-2025-10533, CVE-2025-10534,
CVE-2025-10535, CVE-2025-10536, CVE-2025-10537.

* nongnu/packages/mozilla.scm (firefox): Update to 143.0.

Signed-off-by: John Kehayias <john.kehayias@protonmail.com>
2025-09-18 12:23:58 -04:00
John Kehayias
df4e6ed9fe
nongnu: Remove linux-6.15.
This version is slated to be removed from upstream Guix soon and is no longer
supported upstream.  The default has already been set to 6.16.

* nongnu/packages/linux.scm (linux-6.15): Delete variable.
2025-09-12 17:31:49 -04:00
Rodion Goritskov
007be48174
nongnu: Add fallout2-ce.
* nongnu/packages/game-development.scm (fallout2-ce): New variable.
2025-04-10 21:59:29 +02:00
Rodion Goritskov
b456314d9f
nongnu: Add fallout1-ce.
* nongnu/packages/game-development.scm (fallout1-ce): New variable.
2025-04-10 21:59:29 +02:00
Rodion Goritskov
0738986220
nongnu: Add fpattern.
* nongnu/packages/game-development.scm (fpattern): New variable.
2025-04-10 21:59:25 +02:00
9 changed files with 225 additions and 31 deletions

47
guix/import/firefox.scm Normal file
View file

@ -0,0 +1,47 @@
;;; SPDX-License-Identifier: GPL-3.0-or-later
;;; Copyright © 2025 Nicolas Graves <ngraves@ngraves.fr>
;;; This file is not part of GNU Guix but requires this naming scheme
;;; so that the %firefox-updater is properly read when using
;;; `guix refresh -L$(pwd) firefox' in nonguix root.
(define-module (guix import firefox)
#:use-module (guix import json)
#:use-module (guix memoization)
#:use-module (guix packages)
#:use-module (guix upstream)
#:export (%firefox-updater))
(define firefox-json-url "https://product-details.mozilla.org/1.0/firefox_versions.json")
(define firefox-versions
(memoize
(lambda _
(let ((alist (json-fetch firefox-json-url)))
(list (cons "firefox" (assoc-ref alist "LATEST_FIREFOX_VERSION"))
(cons "firefox-esr" (assoc-ref alist "FIREFOX_ESR")))))))
(define* (latest-release package #:key (version #f) partial-version?)
"Return an <upstream-source> for the latest-release of PACKAGE."
(let* ((name (package-name package))
(version (or version (assoc-ref (firefox-versions) name))))
(upstream-source
(package name)
(version version)
(urls
(list (string-append "https://archive.mozilla.org/pub/firefox/releases/"
version "/source/firefox-"
version ".source.tar.xz"))))))
(define (firefox-package? package)
"Return true if PACKAGE is Firefox."
(member (package-name package) (list "firefox" "firefox-esr")))
(define %firefox-updater
(upstream-updater
(name 'firefox)
(description "Updater for Firefox packages")
(pred firefox-package?)
(import latest-release)))
;;; firefox.scm ends here.

View file

@ -105,12 +105,13 @@
(description "Heroic is an Open Source Game Launcher. Right now it supports launching
games from the Epic Games Store using Legendary, GOG Games using our custom
implementation with gogdl and Amazon Games using Nile.")
(license license:gpl3)))
(license license:gpl3)
(supported-systems '("x86_64-linux"))))
(define steam-client
(package
(name "steam-client")
(version "1.0.0.83")
(version "1.0.0.84")
(source
(origin
(method url-fetch)
@ -118,7 +119,7 @@ implementation with gogdl and Amazon Games using Nile.")
version ".tar.gz"))
(sha256
(base32
"10lgmjsada0n2a4h1vgrnwcjcka7vp4igy82f1n99zbyrjq845kr"))
"0i3v0zz36x7v81qslvfbiby57hk96hn15w4xxal1lgvrb0npdyii"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system gnu-build-system)
(arguments
@ -160,7 +161,8 @@ implementation with gogdl and Amazon Games using Nile.")
(home-page "https://store.steampowered.com")
(synopsis "Digital distribution platform for managing and playing games")
(description "Steam is a digital software distribution platform created by Valve.")
(license (license:nonfree "file:///share/doc/steam/steam_subscriber_agreement.txt"))))
(license (license:nonfree "file:///share/doc/steam/steam_subscriber_agreement.txt"))
(supported-systems '("x86_64-linux"))))
(define steam-client-libs
`(("at-spi2-core" ,at-spi2-core) ; Required (often) for SteamVR interface.

View file

@ -8,7 +8,10 @@
#:use-module (srfi srfi-1)
#:use-module ((nonguix licenses) :prefix license:)
#:use-module (guix packages)
#:use-module (nongnu packages)
#:use-module (nonguix build-system binary)
#:use-module (guix build-system cmake)
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix download)
#:use-module (guix gexp)
@ -17,6 +20,7 @@
#:use-module ((guix licenses) :prefix license:)
#:use-module (gnu packages audio)
#:use-module (gnu packages base)
#:use-module (gnu packages compression)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gl)
#:use-module (gnu packages gtk)
@ -232,6 +236,110 @@ with game files or or put @file{.grp} game files manually in
(list license:gpl2
(license:nonfree "file://package/common/buildlic.txt")))))
(define-public fallout1-ce
(package
(name "fallout1-ce")
(version "1.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/alexbatalov/fallout1-ce")
(commit (string-append "v" version))))
(patches (nongnu-patches "fallout1-ce-unbundle-fpattern.patch"))
(sha256
(base32 "0c11zbvja42s0z8zqfm6gf981m0v2vwxvhqas46lplwbfhbnh836"))))
(build-system cmake-build-system)
(arguments
(list
#:tests? #f
#:phases #~(modify-phases %standard-phases
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin")))
(mkdir-p bin)
(copy-file "fallout-ce"
(string-append bin "/fallout1-ce"))))))))
(inputs (list sdl2 fpattern))
(home-page "https://github.com/alexbatalov/fallout1-ce")
(synopsis
"Fallout Community Edition is an engine rewrite for modern OS")
(description
"Fallout Community Edition is a fully working re-implementation of Fallout,
with the same original gameplay, engine bugfixes, and some quality of life
improvements, that works (mostly) hassle-free on multiple platforms.")
(license
(license:nonfree
"https://raw.githubusercontent.com/alexbatalov/fallout1-ce/main/LICENSE.md"))))
(define-public fallout2-ce
(package
(name "fallout2-ce")
(version "1.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/alexbatalov/fallout2-ce")
(commit (string-append "v" version))))
(patches (nongnu-patches "fallout2-ce-unbundle-fpattern.patch"))
(sha256
(base32 "15b30i2ixq0w01qxrymd1qs1awj8kijbqzac8wvfrpm85fdnfnmg"))))
(build-system cmake-build-system)
(arguments
(list
#:tests? #f
#:phases #~(modify-phases %standard-phases
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin")))
(mkdir-p bin)
(copy-file "fallout2-ce"
(string-append bin "/fallout2-ce"))))))))
(inputs (list sdl2 fpattern zlib))
(home-page "https://github.com/alexbatalov/fallout2-ce")
(synopsis
"Fallout 2 Community Edition is an engine rewrite for modern OS")
(description
"Fallout 2 Community Edition is a fully working re-implementation of
Fallout 2, with the same original gameplay, engine bugfixes, and some quality of
life improvements, that works (mostly) hassle-free on multiple platforms.")
(license
(license:nonfree
"https://raw.githubusercontent.com/alexbatalov/fallout2-ce/main/LICENSE.md"))))
(define-public fpattern
(package
(name "fpattern")
(version "1.9")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Loadmaster/fpattern")
(commit (string-append "v" version))))
(sha256
(base32 "0lm5afk18a6m4wib4xvslik9zz00r36zvdrrgjbwd8d8550cq2zx"))))
(build-system copy-build-system)
(arguments
(list
#:phases #~(modify-phases %standard-phases
(add-before 'install 'build-library
(lambda* (#:key inputs #:allow-other-keys)
(invoke "gcc" "-c" "-Wall" "-fpic" "fpattern.c")
(invoke "gcc" "-shared" "-o" "libfpattern.so"
"fpattern.o"))))
#:install-plan ''(("libfpattern.so" "lib/")
("fpattern.h" "include/"))))
(home-page "https://github.com/Loadmaster/fpattern")
(synopsis "Filename pattern matching library functions for C")
(description
"Functions for matching filename patterns to filenames. Written in C.
Provided as an object file (fpattern.so) and a header include source file.")
(license license:expat)))
(define-public fury
(package/inherit eduke32
(name "fury")

View file

@ -180,9 +180,6 @@ on hardware which requires nonfree software to function."))))
(define-public linux-6.16
(corrupt-linux linux-libre-6.16))
(define-public linux-6.15
(corrupt-linux linux-libre-6.15))
(define-public linux-6.12
(corrupt-linux linux-libre-6.12))
@ -364,14 +361,14 @@ stable, responsive and smooth desktop experience.")))
(define-public linux-firmware
(package
(name "linux-firmware")
(version "20250808")
(version "20250917")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kernel.org/linux/kernel/firmware/"
"linux-firmware-" version ".tar.xz"))
(sha256
(base32
"0zw3vsmd07yr27y5fz0m357hci00ah5impx5sz4jcnd18ldmaaf0"))))
"0xgvb0fb4s48423asdb1dnkjjskbfmm336gm6vki2nliasvpa18j"))))
(build-system gnu-build-system)
(arguments
(list #:tests? #f
@ -418,8 +415,11 @@ if your hardware is supported by one of the smaller firmware packages.")
#~(lambda _
(use-modules (ice-9 regex))
(substitute* "WHENCE"
(("^(File|RawFile|Link): *([^ ]*)(.*)" _ type file rest)
(string-append (if (string-match #$keep file) type "Skip") ": " file rest)))))
(("^(File|RawFile): *([^ ]*)(.*)" _ type file rest)
(string-append (if (string-match #$keep file) type "Skip") ": " file rest))
(("^Link: *(.*) *-> *(.*)" _ file target)
(string-append (if (string-match #$keep target) "Link" "Skip")
": " file " -> " target)))))
(define-public amdgpu-firmware
(package
@ -708,7 +708,7 @@ laptops).")
((#:phases phases #~%standard-phases)
#~(modify-phases #$phases
(add-after 'unpack 'select-firmware
#$(select-firmware "^iwlwifi-")))))))
#$(select-firmware "^intel/iwlwifi/")))))))
(home-page "https://wireless.wiki.kernel.org/en/users/drivers/iwlwifi")
(synopsis "Nonfree firmware for Intel wifi chips")
(description "The proprietary iwlwifi kernel module is required by many

View file

@ -83,7 +83,7 @@ its core.")
(define-public signal-desktop
(package
(name "signal-desktop")
(version "7.69.0")
(version "7.71.0")
(source
(origin
(method url-fetch)
@ -92,7 +92,7 @@ its core.")
"https://updates.signal.org/desktop/apt/pool/s/" name "/" name "_" version
"_amd64.deb"))
(sha256
(base32 "02hrsgx5jwhm16nvmz2pm8n11jp56g9mn404mymn1kfi2qsxy5mm"))))
(base32 "14lk8s040alj2lxqw30hh54l4p3kpq1mxq64l8sqlph2y9c3hig3"))))
(supported-systems '("x86_64-linux"))
(build-system chromium-binary-build-system)
(arguments

View file

@ -87,19 +87,19 @@
;; Update this id with every firefox update to its release date.
;; It's used for cache validation and therefore can lead to strange bugs.
(define %firefox-esr-build-id "20250818124956")
(define %firefox-esr-build-id "20250915124517")
(define-public firefox-esr
(package
(name "firefox-esr")
(version "140.2.0esr")
(version "140.3.0esr")
(source
(origin
(method url-fetch)
(uri (string-append "https://archive.mozilla.org/pub/firefox/releases/"
version "/source/firefox-" version ".source.tar.xz"))
(sha256
(base32 "0mgglah7inji8gyhswdy62w2lqxgm4yfs1xg7ib6sw1vbikwwvcm"))
(base32 "05i3czn3v2qnhir8apcphbqy7rmy1dn7kcwx5yyi2qvmjcyfpipg"))
(patches
(map (lambda (patch)
(search-path
@ -457,7 +457,7 @@
cups
dbus-glib
freetype
ffmpeg
ffmpeg-6
gdk-pixbuf
glib
gtk+
@ -529,20 +529,20 @@ Release (ESR) version.")
;; Update this id with every firefox update to its release date.
;; It's used for cache validation and therefore can lead to strange bugs.
(define %firefox-build-id "20250818122500")
(define %firefox-build-id "20250915125927")
(define-public firefox
(package
(inherit firefox-esr)
(name "firefox")
(version "142.0")
(version "143.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://archive.mozilla.org/pub/firefox/releases/"
version "/source/firefox-" version ".source.tar.xz"))
(sha256
(base32 "03sblq1l5hjlwgqh1vyshrw1161cs5amlx7kjqzmjv1v1zqy2218"))
(base32 "10yz3rz2akf3b19hd2c5v77f038j0h6ci1asjb4w480q14wclibc"))
(patches
(map (lambda (patch)
(search-path

View file

@ -228,9 +228,9 @@ ACTION==\"unbind\", SUBSYSTEM==\"pci\", ATTR{vendor}==\"0x10de\", ATTR{class}==\
(define-public nvidia-driver
(package
(name "nvidia-driver")
(version "570.181")
(version "580.82.09")
(source (nvidia-source
version "1yfwwfwbl5ph7s7zddixa0w8nb1wdg25sjysg98fl0hq7z72avgh"))
version "1dwmardvxb2w6mx7hich5wc06f50qz92jk63kbhf059fv8rgiv1y"))
(build-system copy-build-system)
(arguments
(list #:modules '((guix build copy-build-system)
@ -245,8 +245,8 @@ ACTION==\"unbind\", SUBSYSTEM==\"pci\", ATTR{vendor}==\"0x10de\", ATTR{class}==\
("x86_64-linux" ".")
(_ "."))
"lib/" #:include-regexp ("^./[^/]+\\.so"))
("." "lib/nvidia/wine/" #:include-regexp ("_?nvngx\\.dll$"))
("." "share/nvidia/" #:include-regexp ("nvidia-application-profiles"))
("." "lib/nvidia/wine/" #:include-regexp ("_?nvngx.*?\\.dll$"))
("." "share/nvidia/" #:include-regexp ("nvidia-application-profiles|nvoptix.bin"))
("." "share/egl/egl_external_platform.d/" #:include-regexp ("(gbm|wayland|xcb|xlib)\\.json"))
("10_nvidia.json" "share/glvnd/egl_vendor.d/")
("90-nvidia.rules" "lib/udev/rules.d/")
@ -287,6 +287,8 @@ ACTION==\"unbind\", SUBSYSTEM==\"pci\", ATTR{vendor}==\"0x10de\", ATTR{class}==\
(substitute* '("nvidia_icd.json"
"nvidia_layers.json")
(("libGLX_nvidia\\.so\\.." all)
(string-append #$output "/lib/" all))
(("libnvidia-present\\.so\\.[0-9.]*" all)
(string-append #$output "/lib/" all)))
;; VulkanSC ICD configuration
@ -627,9 +629,9 @@ add @code{nvidia_drm.modeset=1} to @code{kernel-arguments} as well.")
(define-public nvidia-settings
(package
(name "nvidia-settings")
(version "570.181")
(version "580.82.09")
(source (nvidia-settings-source
name version "0fq72pj1b4iwlyivi9nmqr45iz6aqqdxgdbgk26x9m1yfxgpy748"))
name version "0sy3mrg3vmyba6m87nanzmpvv2hzhb6nqdckhlaxv8wppmr7fvms"))
(build-system gnu-build-system)
(arguments
(list #:tests? #f ;no test suite
@ -849,7 +851,7 @@ variables @code{__GLX_VENDOR_LIBRARY_NAME=nvidia} and
(define-public egl-gbm
(package
(name "egl-gbm")
(version "1.1.2")
(version "1.1.2.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -858,7 +860,7 @@ variables @code{__GLX_VENDOR_LIBRARY_NAME=nvidia} and
(file-name (git-file-name name version))
(sha256
(base32
"1rfgfi06ry7c7hnzdm4b0dc8r3hmbfn2rd37z3mc4wn38sgz5l3a"))))
"1zcr1jksnh0431marzvgg301aybli29r1xw5vs4wnxgcp9bigvn6"))))
(build-system meson-build-system)
(native-inputs (list pkg-config))
(inputs (list eglexternalplatform mesa-for-nvda))
@ -872,7 +874,7 @@ GBM EGL support.")
(define-public egl-x11
(package
(name "egl-x11")
(version "1.0.2")
(version "1.0.3")
(source (origin
(method git-fetch)
(uri (git-reference
@ -881,7 +883,7 @@ GBM EGL support.")
(file-name (git-file-name name version))
(sha256
(base32
"0s18xpylz16ry51xp1bs2s4hmvwsq49hcfc0gnmmvnymdzm041aq"))))
"1hh1wkdijjhsmym5ab5nw8wyi0w9x7aznnmyg8sczhwdfb5rdnrj"))))
(build-system meson-build-system)
(native-inputs (list pkg-config))
(inputs (list eglexternalplatform mesa-for-nvda))

View file

@ -0,0 +1,18 @@
Originally fallout1-ce has the fpattern library bundled in the repo.
This patch unbundles it.
diff --git a/CMakeLists.txt b/CMakeLists.txt
index bd50a9e..afdb04c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -353,7 +353,9 @@ else()
find_package(SDL2)
endif()
-add_subdirectory("third_party/fpattern")
+find_path(FPATTERN_INCLUDE_DIR fpattern.h)
+find_library(FPATTERN_LIBRARY libfpattern.so)
+
target_link_libraries(${EXECUTABLE_NAME} ${FPATTERN_LIBRARY})
target_include_directories(${EXECUTABLE_NAME} PRIVATE ${FPATTERN_INCLUDE_DIR})

View file

@ -0,0 +1,17 @@
Originally fallout2-ce has the fpattern library bundled in the repo.
This patch unbundles it.
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2de2af1..f6c6ace 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -360,7 +360,8 @@ if(APPLE)
set(MACOSX_BUNDLE_BUNDLE_VERSION "1.3.0")
endif()
-add_subdirectory("third_party/fpattern")
+find_library(FPATTERN_LIBRARY libfpattern.so)
+find_path(FPATTERN_INCLUDE_DIR fpattern.h)
target_link_libraries(${EXECUTABLE_NAME} ${FPATTERN_LIBRARY})
target_include_directories(${EXECUTABLE_NAME} PRIVATE ${FPATTERN_INCLUDE_DIR})