summaryrefslogtreecommitdiff
path: root/gnu/packages/image.scm
diff options
context:
space:
mode:
authorHugo Buddelmeijer <hugo@buddelmeijer.nl>2025-10-26 22:06:09 +0100
committerSharlatan Hellseher <sharlatanus@gmail.com>2026-05-24 10:14:46 +0100
commit9335ea58aff5417c55e9d62e59febfec16ed000f (patch)
tree35e8241e9204286495d88676e08edc9f5edd586e /gnu/packages/image.scm
parent9d13ce51c4278401d18d5b1184e21716d05a88cb (diff)
gnu: mypaint: Update to 2.0.1-0.35aa9d3.
* gnu/packages/image.scm (mypaint): Update to 35aa9d33cd3deba6cafea6d8fc901b5a1d161ceb commit. Use G-expressions. [source]: Switch to git-fetch. [build-system]: Switch to pyproject-build-system. [arguments] <imported-modules, modules>: Switch to pyproject-build-system. <tests?>: Enable. <phases>: Remove 'python3.11-compatibility; add 'move-assets-to-data. [native-inputs]: Remove swig-4.0; add python-pytest, python-setuptools, and swig. [inputs]: Remove libmypain; add gdk-pixbuf, libmypaint-next, and libpng. [home-page]: Use HTTPS. Merges: https://codeberg.org/guix/guix/pulls/3878 Change-Id: Ic342c02467b3f75a796698c030ef4f937a91e25a Co-authored-by: Sharlatan Hellseher <sharlatanus@gmail.com> Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Diffstat (limited to 'gnu/packages/image.scm')
-rw-r--r--gnu/packages/image.scm132
1 files changed, 72 insertions, 60 deletions
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index d69b7ad3014..027df968dc4 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -29,7 +29,7 @@
29;;; Copyright © 2020, 2025 Janneke Nieuwenhuizen <janneke@gnu.org> 29;;; Copyright © 2020, 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
30;;; Copyright © 2020 Zhu Zihao <all_but_last@163.com> 30;;; Copyright © 2020 Zhu Zihao <all_but_last@163.com>
31;;; Copyright © 2020, 2021, 2022, 2023, 2024 Vinicius Monego <monego@posteo.net> 31;;; Copyright © 2020, 2021, 2022, 2023, 2024 Vinicius Monego <monego@posteo.net>
32;;; Copyright © 2021 Sharlatan Hellseher <sharlatanus@gmail.com> 32;;; Copyright © 2021, 2026 Sharlatan Hellseher <sharlatanus@gmail.com>
33;;; Copyright © 2021 Nicolò Balzarotti <nicolo@nixo.xyz> 33;;; Copyright © 2021 Nicolò Balzarotti <nicolo@nixo.xyz>
34;;; Copyright © 2021 Alexandr Vityazev <avityazev@posteo.org> 34;;; Copyright © 2021 Alexandr Vityazev <avityazev@posteo.org>
35;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com> 35;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
@@ -42,8 +42,9 @@
42;;; Copyright © 2025 Josep Bigorra <jjbigorra@gmail.com> 42;;; Copyright © 2025 Josep Bigorra <jjbigorra@gmail.com>
43;;; Copyright © 2025 Jake Forster <jakecameron.forster@gmail.com> 43;;; Copyright © 2025 Jake Forster <jakecameron.forster@gmail.com>
44;;; Copyright © 2025 Ghislain Vaillant <ghislain.vaillant@inria.fr> 44;;; Copyright © 2025 Ghislain Vaillant <ghislain.vaillant@inria.fr>
45;;; Copyright © 2026 Carlos Durán Domínguez <wurt@wurt.eu>
46;;; Copyright © 2025 Junker <dk@junkeria.club> 45;;; Copyright © 2025 Junker <dk@junkeria.club>
46;;; Copyright © 2025 Hugo Buddelmeijer <hugo@buddelmeijer.nl>
47;;; Copyright © 2026 Carlos Durán Domínguez <wurt@wurt.eu>
47;;; 48;;;
48;;; This file is part of GNU Guix. 49;;; This file is part of GNU Guix.
49;;; 50;;;
@@ -129,7 +130,6 @@
129 #:use-module (guix build-system guile) 130 #:use-module (guix build-system guile)
130 #:use-module (guix build-system meson) 131 #:use-module (guix build-system meson)
131 #:use-module (guix build-system pyproject) 132 #:use-module (guix build-system pyproject)
132 #:use-module (guix build-system python)
133 #:use-module (guix build-system qt) 133 #:use-module (guix build-system qt)
134 #:use-module (guix build-system scons) 134 #:use-module (guix build-system scons)
135 #:use-module (guix deprecation) 135 #:use-module (guix deprecation)
@@ -3044,77 +3044,89 @@ GIF, TIFF, WEBP, BMP, PNG, XPM formats.")
3044(define-public mypaint 3044(define-public mypaint
3045 (package 3045 (package
3046 (name "mypaint") 3046 (name "mypaint")
3047 (version "2.0.1") 3047 ;; The latest changes contains support for Python 3.12+.
3048 (source (origin 3048 (properties '((commit . "35aa9d33cd3deba6cafea6d8fc901b5a1d161ceb")
3049 (method url-fetch) 3049 (revision . "0")))
3050 (uri (string-append "https://github.com/mypaint/mypaint/" 3050 (version (git-version "2.0.1"
3051 "releases/download/v" version "/mypaint-" 3051 (assoc-ref properties 'revision)
3052 version ".tar.xz")) 3052 (assoc-ref properties 'commit)))
3053 (sha256 3053 (source
3054 (base32 3054 (origin
3055 "05mvay73vb9d2sh1ckv4vny45n059dmsps1jcppjizfmrpbkgr7k")))) 3055 (method git-fetch)
3056 (build-system python-build-system) 3056 (uri (git-reference
3057 (url "https://github.com/mypaint/mypaint")
3058 (commit (assoc-ref properties 'commit))))
3059 (file-name (git-file-name name version))
3060 (sha256
3061 (base32 "1p1i799dzpx0zr7chkz0pjdq9l32ahckgyagbiw82c27mwxqabfh"))))
3062 (build-system pyproject-build-system)
3057 (arguments 3063 (arguments
3058 `(#:imported-modules ((guix build glib-or-gtk-build-system) 3064 (list
3059 ,@%python-build-system-modules) 3065 #:imported-modules `(,@%pyproject-build-system-modules
3060 #:modules ((guix build python-build-system) 3066 (guix build glib-or-gtk-build-system))
3067 #:modules '((guix build pyproject-build-system)
3061 ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:) 3068 ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:)
3062 (guix build utils)) 3069 (guix build utils))
3063 ;; XXX: Tests are not discovered. 3070 #:phases
3064 #:tests? #false 3071 #~(modify-phases %standard-phases
3065 #:phases 3072 (add-after 'install 'move-assets-to-data
3066 (modify-phases %standard-phases 3073 ;; XXX: Check why.
3067 (add-after 'unpack 'python3.11-compatibility 3074 ;;
3068 (lambda _ 3075 ;; ERROR: gui.application: Missing icon 'org.mypaint.MyPaint':
3069 (substitute* "setup.py" 3076 ;; check that mypaint icons have been installed into
3070 (("\"rU\"") "\"r\"") 3077 ;; /gnu/store/<...>/data/icons
3071 (("test_suite='tests'.*") "")) 3078 ;;
3072 (substitute* "setup.cfg" 3079 ;; gi.repository.GLib.GError: g-file-error-quark: Failed to open
3073 (("install-") "install_")) 3080 ;; file
3074 ;; This file makes Python confuse it for a module, so we rename 3081 ;; “/gnu/store/<...>/data/mypaint/pixmaps/cursor_color_picker.png”:
3075 ;; it. 3082 ;; No such file or directory (4)
3076 (rename-file "lib/xml.py" "lib/xmlo.py") 3083 (lambda _
3077 (substitute* (find-files "." "\\.py$") 3084 (let* ((data (string-append #$output "/data"))
3078 (("lib.xml") "lib.xmlo")) 3085 (data-icons (string-append data "/icons"))
3079 ;; This procedure has been removed. 3086 (data-mypaint (string-append data "/mypaint"))
3080 (substitute* "lib/gettext_setup.py" 3087 (icons (string-append #$output "/icons"))
3081 (("c = gettext.bind_textdomain_codeset.*") "c = True\n")))) 3088 (mypaint (string-append #$output "/mypaint")))
3082 (add-after 'install 'glib-or-gtk-wrap 3089 (mkdir-p data-icons)
3083 (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)) 3090 (mkdir-p data-mypaint)
3084 (add-after 'install 'wrap-program 3091 (copy-recursively icons data-icons)
3085 (lambda* (#:key outputs inputs #:allow-other-keys) 3092 (copy-recursively mypaint data-mypaint)
3086 (let* ((out (assoc-ref outputs "out")) 3093 (delete-file-recursively icons)
3087 (gdk-pixbuf (assoc-ref inputs "gdk-pixbuf")) 3094 (delete-file-recursively mypaint))))
3088 (gtk+ (assoc-ref inputs "gtk+"))) 3095 (add-after 'install 'glib-or-gtk-wrap
3089 ;; This is replaced with an invalid shebang. 3096 (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap))
3090 (substitute* (string-append out "/bin/mypaint") 3097 (add-after 'install 'wrap-program
3091 (("#!python") 3098 (lambda* (#:key outputs inputs #:allow-other-keys)
3092 (string-append "#!" (which "python3")))) 3099 (wrap-program (string-append #$output "/bin/mypaint")
3093 (wrap-program (string-append out "/bin/mypaint") 3100 `("GI_TYPELIB_PATH" ":" prefix
3094 `("GI_TYPELIB_PATH" ":" prefix 3101 (,(getenv "GI_TYPELIB_PATH"))))))
3095 (,(getenv "GI_TYPELIB_PATH"))))))) 3102 (add-before 'check 'pre-check
3096 (add-before 'check 'pre-check 3103 (lambda _
3097 (lambda _ 3104 ;; Need to get the 'lib' in 'build/'.
3098 ;; Tests need writing access 3105 (delete-file-recursively "lib")
3099 (setenv "HOME" "/tmp")))))) 3106 ;; Tests need writing access
3107 (setenv "HOME" "/tmp"))))))
3100 (native-inputs 3108 (native-inputs
3101 (list pkg-config 3109 (list gettext-minimal
3102 gobject-introspection 3110 gobject-introspection
3103 swig-4.0 3111 pkg-config
3104 gettext-minimal)) 3112 python-pytest
3113 python-setuptools
3114 swig))
3105 (inputs 3115 (inputs
3106 (list bash-minimal 3116 (list bash-minimal
3117 gdk-pixbuf
3107 gtk+ 3118 gtk+
3108 (librsvg-for-system)
3109 hicolor-icon-theme 3119 hicolor-icon-theme
3110 libmypaint
3111 mypaint-brushes
3112 json-c 3120 json-c
3113 lcms 3121 lcms
3122 libmypaint-next
3123 libpng
3124 (librsvg-for-system)
3125 mypaint-brushes
3114 python-numpy 3126 python-numpy
3115 python-pycairo 3127 python-pycairo
3116 python-pygobject)) 3128 python-pygobject))
3117 (home-page "http://mypaint.org/") 3129 (home-page "https://mypaint.org/")
3118 (synopsis "Fast and simple painting app for artists") 3130 (synopsis "Fast and simple painting app for artists")
3119 (description 3131 (description
3120 "MyPaint is a simple drawing and painting program that works well with 3132 "MyPaint is a simple drawing and painting program that works well with