diff mbox series

[bug#73931,1/2] gnu: Add vdrift-data.

Message ID 5324807744be977b885a4fc655ef7b701cf62929.1729522372.git.maxim.cournoyer@gmail.com
State New
Headers show
Series [bug#73931,1/2] gnu: Add vdrift-data. | expand

Commit Message

Maxim Cournoyer Oct. 21, 2024, 2:53 p.m. UTC
* gnu/packages/patches/vdrift-data-extra-resolutions.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/games.scm (vdrift-data): New variable.

Change-Id: I960e2222ea7e9506a306692db552dc1dcc229b01
---
 gnu/local.mk                                  |  1 +
 gnu/packages/games.scm                        | 34 +++++++++++++++++++
 .../vdrift-data-extra-resolutions.patch       | 24 +++++++++++++
 3 files changed, 59 insertions(+)
 create mode 100644 gnu/packages/patches/vdrift-data-extra-resolutions.patch


base-commit: 59b2a60d0041882d732e1766e28f0df5a1ef1ac1
diff mbox series

Patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 89a795bfbd..16fd5d59ed 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2287,6 +2287,7 @@  dist_patch_DATA =						\
   %D%/packages/patches/vboot-utils-fix-tests-show-contents.patch	\
   %D%/packages/patches/vboot-utils-skip-test-workbuf.patch	\
   %D%/packages/patches/vcmi-disable-privacy-breach.patch	\
+  %D%/packages/patches/vdrift-data-extra-resolutions.patch	\
   %D%/packages/patches/vinagre-newer-freerdp.patch             \
   %D%/packages/patches/vinagre-newer-rdp-parameters.patch      \
   %D%/packages/patches/virtuoso-ose-remove-pre-built-jar-files.patch	\
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index c594b8ac2a..0f64040ae1 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -788,6 +788,40 @@  (define-public tetrinet
 attacks you can use on opponents.")
     (license license:public-domain)))
 
+(define-public vdrift-data
+  ;; There are no tags or releases for the vdrift data; use the latest SVN
+  ;; revision available.
+  (let ((commit 1460)
+        (revision "0"))
+    ;; The package is hidden as the game data is *required* by the install
+    ;; target of vdrift itself, and there is no need for users to manually
+    ;; install it.
+    (hidden-package
+     (package
+       (name "vdrift-data")
+       ;; The date is the last modified time shown next to the 'vdrift-data'
+       ;; directory when visiting
+       ;; https://sourceforge.net/p/vdrift/code/HEAD/tree/.
+       (version (format #f "2023-03-07-~a.~a" revision commit))
+       (source (origin
+                 (method svn-fetch)
+                 (uri (svn-reference
+                       (url "https://svn.code.sf.net/p/vdrift/code/vdrift-data")
+                       (revision commit)))
+                 (file-name (string-append name "-" version "-checkout"))
+                 (sha256
+                  (base32
+                   "0izzi2na6lbp6ji83nq975w7rm2vmhsi8ngdnmwznm545ws75iai"))
+                 (patches
+                  (search-patches "vdrift-data-extra-resolutions.patch"))))
+       (build-system copy-build-system)
+       (arguments (list #:install-plan #~'(("." "share/games/vdrift/data"))))
+       (home-page "https://vdrift.net/")
+       (synopsis "Game data for Vdrift")
+       (description "This package contains the assets for the Vdrift racing
+game.")
+       (license license:gpl3+)))))      ;assumed same as Vdrift itself
+
 (define-public vitetris
   (package
     (name "vitetris")
diff --git a/gnu/packages/patches/vdrift-data-extra-resolutions.patch b/gnu/packages/patches/vdrift-data-extra-resolutions.patch
new file mode 100644
index 0000000000..49b557d897
--- /dev/null
+++ b/gnu/packages/patches/vdrift-data-extra-resolutions.patch
@@ -0,0 +1,24 @@ 
+Upstream status: https://github.com/VDrift/vdrift/issues/200
+
+Index: vdrift-data/settings/options.config
+===================================================================
+--- vdrift-data/settings/options.config	(revision 1460)
++++ vdrift-data/settings/options.config	(working copy)
+@@ -316,7 +316,7 @@
+ type = string
+ default = 800,600
+ values = list
+-num_vals = 21
++num_vals = 22
+ opt00 = 640 x 480
+ val00 = 640,480
+ opt01 = 800 x 480
+@@ -359,6 +359,8 @@
+ val19 = 2560,1440
+ opt20 = 2560 x 1600
+ val20 = 2560,1600
++opt21 = 3840 x 2160
++val21 = 3840,2160
+ 
+ [ display.shadow_distance ]
+ desc = Set the distance at which shadows become visible