This is an automated email from the git hooks/post-receive script.

guix_mirror_bot pushed a commit to branch master
in repository guix.

The following commit(s) were added to refs/heads/master by this push:
     new 242dceabb4 gnu: higan: Update to 110-0.ad0e11e and modernize.
242dceabb4 is described below

commit 242dceabb4c2a1d4989babeff4c0df540e15f686
Author: Maxim Cournoyer <ma...@guixotic.coop>
AuthorDate: Tue Jul 22 15:51:22 2025 +0900

    gnu: higan: Update to 110-0.ad0e11e and modernize.
    
    * gnu/packages/emulators.scm (higan): Update to 110-0.ad0e11e.
    [inputs]: Remove labels. Replace gtk+-2 with gtk+ and gtksourceview-2 with
    gtksourceview-3.
    [arguments]: Use gexps and gexp variables as well as search-input-file in
    phases.
    <#:make-flags>: Add higan.path and platform flags.
    <#:phases> {chdir-to-higan}: Rename to...
    {chdir-to-higan-ui}: ... this, switching to higan-ui directory.
    {wrap-higan-executable}: Streamline via wrap-program.
    
    Fixes: #1477
    Change-Id: I46130180a3b8505233c9baba81789cd0ade262bd
---
 gnu/packages/emulators.scm | 151 ++++++++++++++++++---------------------------
 1 file changed, 61 insertions(+), 90 deletions(-)

diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index 754292ea06..1f67e8cd63 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -778,95 +778,66 @@ and a game metadata scraper.")
       (license license:expat))))
 
 (define-public higan
-  (package
-    (name "higan")
-    (version "110")
-    (source
-     (origin
-       (method git-fetch)
-       (uri (git-reference
-             (url "https://github.com/higan-emu/higan";)
-             (commit (string-append "v" version))))
-       (file-name (git-file-name name version))
-       (sha256
-        (base32 "11rvm53c3p2f6zk8xbyv2j51xp8zmqnch7zravhj3fk590qrjrr2"))))
-    (build-system gnu-build-system)
-    (native-inputs
-     (list pkg-config))
-    (inputs
-     `(("alsa-lib" ,alsa-lib)
-       ("bash" ,bash-minimal) ; for wrap-program
-       ("ao" ,ao)
-       ("eudev" ,eudev)
-       ("gtk+" ,gtk+-2)
-       ("gtksourceview-2" ,gtksourceview-2)
-       ("libxrandr" ,libxrandr)
-       ("libxv" ,libxv)
-       ("mesa" ,mesa)
-       ("openal" ,openal)
-       ("pulseaudio" ,pulseaudio)
-       ("sdl2" ,sdl2)))
-    (arguments
-     '(#:phases
-       (let ((build-phase (assoc-ref %standard-phases 'build))
-             (install-phase (assoc-ref %standard-phases 'install)))
-         (modify-phases %standard-phases
-           ;; The higan build system has no configure phase.
-           (delete 'configure)
-           (add-before 'build 'chdir-to-higan
-             (lambda _
-               (chdir "higan")
-               #t))
-           (add-before 'install 'create-/share/applications
-             (lambda* (#:key outputs #:allow-other-keys)
-               (let ((out (assoc-ref outputs "out")))
-                 ;; It seems the author forgot to do this in the Makefile.
-                 (mkdir-p (string-append out "/share/applications"))
-                 #t)))
-           (add-after 'install 'chdir-to-icarus
-             (lambda _
-               (chdir "../icarus")
-               #t))
-           (add-after 'chdir-to-icarus 'build-icarus build-phase)
-           (add-after 'build-icarus 'install-icarus install-phase)
-           (add-after 'install-icarus 'wrap-higan-executable
-             (lambda* (#:key inputs outputs #:allow-other-keys)
-               (let* ((out (assoc-ref outputs "out"))
-                      (bin (string-append out "/bin"))
-                      (higan (string-append bin "/higan"))
-                      (higan-original (string-append higan "-original"))
-                      (bash (search-input-file inputs "/bin/bash"))
-                      (coreutils (assoc-ref inputs "coreutils"))
-                      (mkdir (string-append coreutils "/bin/mkdir"))
-                      (cp (string-append coreutils "/bin/cp"))
-                      (cp-r (string-append cp " -r --no-preserve=mode")))
-                 ;; First, have the executable make sure ~/.local/share/higan
-                 ;; contains up to date files.  Higan insists on looking there
-                 ;; for these data files.
-                 (rename-file higan higan-original)
-                 (with-output-to-file higan
-                   (lambda ()
-                     (display
-                      (string-append
-                       "#!" bash "\n"
-                       ;; higan doesn't respect $XDG_DATA_HOME
-                       mkdir " -p ~/.local/share\n"
-                       cp-r " " out "/share/higan ~/.local/share\n"
-                       "exec " higan-original))))
-                 (chmod higan #o555)
-                 ;; Second, make sure higan will find icarus in PATH.
-                 (wrap-program higan
-                   `("PATH" ":" prefix (,bin)))
-                 #t)))))
-       #:make-flags
-       (list "compiler=g++"
-             (string-append "prefix=" (assoc-ref %outputs "out")))
-       ;; There is no test suite.
-       #:tests? #f))
-    (home-page "https://github.com/higan-emu/higan/";)
-    (synopsis "Multi-system emulator")
-    (description
-     "higan is a multi-system emulator with an uncompromising focus on
+  ;; There are no recent releases; use the latest commit of the master branch.
+  (let ((commit "ad0e11e7b73053eb1bcd5bdeabbe2de92c356286")
+        (revision "0"))
+    (package
+      (name "higan")
+      (version (git-version "110" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+                (url "https://github.com/higan-emu/higan";)
+                (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "1dlx5vqxv8mr8faw0wggsd10bk51p258l56yixjarv0dyhv6nkbq"))))
+      (build-system gnu-build-system)
+      (native-inputs
+       (list pkg-config))
+      (inputs
+       (list alsa-lib
+             bash-minimal                 ; for wrap-program
+             ao
+             eudev
+             gtk+
+             gtksourceview-3
+             libxrandr
+             libxv
+             mesa
+             openal
+             pulseaudio
+             sdl2))
+      (arguments
+       (list
+        #:tests? #f                       ;no test suite
+        #:make-flags #~(list "compiler=g++"
+                             "higan.path=../higan"
+                             "platform=linux"
+                             (string-append "prefix=" #$output))
+        #:phases
+        #~(modify-phases %standard-phases
+            ;; The higan build system has no configure phase.
+            (delete 'configure)
+            (add-before 'build 'chdir-to-higan-ui
+              (lambda _
+                (chdir "higan-ui")))
+            (add-after 'install 'chdir-to-icarus
+              (lambda _
+                (chdir "../icarus")))
+            (add-after 'chdir-to-icarus 'build-icarus
+              (assoc-ref %standard-phases 'build))
+            (add-after 'build-icarus 'install-icarus
+              (assoc-ref %standard-phases 'install))
+            (add-after 'install-icarus 'wrap-higan-executable
+              (lambda _
+                (wrap-program (string-append #$output "/bin/higan")
+                  `("PATH" prefix (,(string-append #$output "/bin")))))))))
+      (home-page "https://github.com/higan-emu/higan/";)
+      (synopsis "Multi-system emulator")
+      (description
+       "higan is a multi-system emulator with an uncompromising focus on
 accuracy and code readability.
 
 It currently emulates the following systems: Famicom, Famicom Disk System,
@@ -875,7 +846,7 @@ Game Boy Player, SG-1000, SC-3000, Master System, Game 
Gear, Mega Drive, Mega
 CD, PC Engine, SuperGrafx, MSX, MSX2, ColecoVision, Neo Geo Pocket, Neo Geo
 Pocket Color, WonderSwan, WonderSwan Color, SwanCrystal, Pocket Challenge
 V2.")
-    (license license:gpl3+)))
+      (license license:gpl3+))))
 
 (define-public mednafen
   (package

Reply via email to