guix_mirror_bot pushed a commit to branch next-master
in repository guix.

commit ee2765c3a68ae60a8558ee3e1485df41a0697832
Author: Nicolas Graves <[email protected]>
AuthorDate: Tue Jan 6 16:52:11 2026 +0100

    gnu: sugar: Switch to pyproject.
    
    * gnu/packages/sugar.scm (sugar):
    [arguments]<#:imported-modules, #:modules, #:phases>: Switch to
    pyproject-build-system.
    
    Change-Id: I91ebeb1506cbc0ab50d2ed38e890d34ed9abe8c2
    Signed-off-by: Sharlatan Hellseher <[email protected]>
---
 gnu/packages/sugar.scm | 131 +++++++++++++++++++++++++------------------------
 1 file changed, 66 insertions(+), 65 deletions(-)

diff --git a/gnu/packages/sugar.scm b/gnu/packages/sugar.scm
index 98302c25c2..f91d73dd27 100644
--- a/gnu/packages/sugar.scm
+++ b/gnu/packages/sugar.scm
@@ -74,74 +74,75 @@
      (list
       #:imported-modules
       `(,@%glib-or-gtk-build-system-modules
-        (guix build python-build-system))
+        ,@%pyproject-build-system-modules)
       #:modules
-      `(((guix build python-build-system) #:prefix python:)
+      `(((guix build pyproject-build-system) #:prefix py:)
         ,@%glib-or-gtk-build-system-default-modules)
       #:phases
-      #~(modify-phases %standard-phases
-          (add-after 'unpack 'patch-build-system
-            (lambda _
-              (substitute* "autogen.sh"
-                (("^\"\\$srcdir/configure" m)
-                 (string-append "#" m)))
-              ;; This .po file does not exist
-              (substitute* "po/LINGUAS"
-                (("^ig") ""))))
-          (add-after 'unpack 'fix-references
-            (lambda* (#:key inputs #:allow-other-keys)
-              (substitute* "bin/sugar.in"
-                (("exec python3")
-                 (string-append "exec " (which "python3"))))
-              (substitute* "src/jarabe/main.py"
-                (("'metacity'")
-                 (string-append "'" (search-input-file inputs "/bin/metacity") 
"'"))
-                (("'metacity-message")
-                 (string-append "'" (search-input-file inputs 
"/bin/metacity-message"))))
-              (substitute* "src/jarabe/intro/window.py"
-                (("ssh-keygen")
-                 (search-input-file inputs "/bin/ssh-keygen"))
-                ;; ssh-keygen no longer supports dsa.
-                (("-t dsa") "-t rsa"))
-              (substitute* "src/jarabe/journal/model.py"
-                (("xdg-user-dir")
-                 (search-input-file inputs "/bin/xdg-user-dir")))
-              (substitute* "extensions/cpsection/datetime/model.py"
-                (("/usr/share/zoneinfo/zone.tab")
-                 (search-input-file inputs "/share/zoneinfo/zone.tab")))
-              (substitute* "extensions/cpsection/modemconfiguration/model.py"
-                (("/usr/share/zoneinfo/iso3166.tab")
-                 (search-input-file inputs "/share/zoneinfo/iso3166.tab"))
-                (("/usr/share/mobile-broadband-provider-info")
-                 (dirname
-                  (search-input-file inputs
-                                     
"/share/mobile-broadband-provider-info/serviceproviders.xml"))))
-              (substitute* "extensions/cpsection/aboutcomputer/model.py"
-                (("ethtool")
-                 (search-input-file inputs "/sbin/ethtool")))
-              (substitute* "extensions/cpsection/language/model.py"
-                (("'locale'")
-                 (string-append "'"
-                                (search-input-file inputs "/bin/locale")
-                                "'")))
-              ;; This is a global location on Guix System.  Ideally we would
-              ;; have a search path here.
-              (substitute* "extensions/cpsection/background/model.py"
-                (("\\('/usr', 'share', 'backgrounds'\\)")
-                 "('/run', 'current-system', 'profile', 'share', 
'backgrounds')"))
-              (substitute* "src/jarabe/view/viewhelp.py"
-                (("/usr/share/sugar/activities/")
-                 "/run/current-system/profile/share/sugar/activities/"))))
-          (add-after 'glib-or-gtk-wrap 'python-and-gi-wrap
-            (lambda* (#:key inputs outputs #:allow-other-keys)
-              (for-each
-               (lambda (executable)
-                 (wrap-program executable
-                   `("GUIX_PYTHONPATH" = (,(getenv "GUIX_PYTHONPATH")
-                                          ,(python:site-packages inputs 
outputs)))
-                   `("GI_TYPELIB_PATH" prefix
-                     (,(getenv "GI_TYPELIB_PATH")))))
-               (find-files (string-append #$output "/bin") "^sugar.*")))))))
+      (with-extensions (list (pyproject-guile-json))
+        #~(modify-phases %standard-phases
+            (add-after 'unpack 'patch-build-system
+              (lambda _
+                (substitute* "autogen.sh"
+                  (("^\"\\$srcdir/configure" m)
+                   (string-append "#" m)))
+                ;; This .po file does not exist
+                (substitute* "po/LINGUAS"
+                  (("^ig") ""))))
+            (add-after 'unpack 'fix-references
+              (lambda* (#:key inputs #:allow-other-keys)
+                (substitute* "bin/sugar.in"
+                  (("exec python3")
+                   (string-append "exec " (which "python3"))))
+                (substitute* "src/jarabe/main.py"
+                  (("'metacity'")
+                   (string-append "'" (search-input-file inputs 
"/bin/metacity") "'"))
+                  (("'metacity-message")
+                   (string-append "'" (search-input-file inputs 
"/bin/metacity-message"))))
+                (substitute* "src/jarabe/intro/window.py"
+                  (("ssh-keygen")
+                   (search-input-file inputs "/bin/ssh-keygen"))
+                  ;; ssh-keygen no longer supports dsa.
+                  (("-t dsa") "-t rsa"))
+                (substitute* "src/jarabe/journal/model.py"
+                  (("xdg-user-dir")
+                   (search-input-file inputs "/bin/xdg-user-dir")))
+                (substitute* "extensions/cpsection/datetime/model.py"
+                  (("/usr/share/zoneinfo/zone.tab")
+                   (search-input-file inputs "/share/zoneinfo/zone.tab")))
+                (substitute* "extensions/cpsection/modemconfiguration/model.py"
+                  (("/usr/share/zoneinfo/iso3166.tab")
+                   (search-input-file inputs "/share/zoneinfo/iso3166.tab"))
+                  (("/usr/share/mobile-broadband-provider-info")
+                   (dirname
+                    (search-input-file inputs
+                                       
"/share/mobile-broadband-provider-info/serviceproviders.xml"))))
+                (substitute* "extensions/cpsection/aboutcomputer/model.py"
+                  (("ethtool")
+                   (search-input-file inputs "/sbin/ethtool")))
+                (substitute* "extensions/cpsection/language/model.py"
+                  (("'locale'")
+                   (string-append "'"
+                                  (search-input-file inputs "/bin/locale")
+                                  "'")))
+                ;; This is a global location on Guix System.  Ideally we would
+                ;; have a search path here.
+                (substitute* "extensions/cpsection/background/model.py"
+                  (("\\('/usr', 'share', 'backgrounds'\\)")
+                   "('/run', 'current-system', 'profile', 'share', 
'backgrounds')"))
+                (substitute* "src/jarabe/view/viewhelp.py"
+                  (("/usr/share/sugar/activities/")
+                   "/run/current-system/profile/share/sugar/activities/"))))
+            (add-after 'glib-or-gtk-wrap 'python-and-gi-wrap
+              (lambda* (#:key inputs outputs #:allow-other-keys)
+                (for-each
+                 (lambda (executable)
+                   (wrap-program executable
+                     `("GUIX_PYTHONPATH" = (,(getenv "GUIX_PYTHONPATH")
+                                            ,(py:site-packages inputs 
outputs)))
+                     `("GI_TYPELIB_PATH" prefix
+                       (,(getenv "GI_TYPELIB_PATH")))))
+                 (find-files (string-append #$output "/bin") "^sugar.*"))))))))
     (inputs
      (list bash-minimal
            ethtool

Reply via email to