Subject: [PATCH v4] gnu: Add portfolio.

From: conses <[email-masked]>
Date: Wed, 23 Nov 2022 23:53:04 +0100

* gnu/packages/gnome-xyz.scm (portfolio): New variable.
---
This amends native-inputs package order.
 gnu/packages/gnome-xyz.scm | 54 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 54 insertions(+)

diff --git a/gnu/packages/gnome-xyz.scm b/gnu/packages/gnome-xyz.scm
index b7e10100fb..9ae48b78ae 100644
--- a/gnu/packages/gnome-xyz.scm
+++ b/gnu/packages/gnome-xyz.scm
@@ -55,6 +55,7 @@ (define-module (gnu packages gnome-xyz)
   #:use-module (gnu packages bash)
   #:use-module (gnu packages build-tools)
   #:use-module (gnu packages check)
+  #:use-module (gnu packages freedesktop)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnome)
@@ -224,6 +225,59 @@ (define-public papirus-icon-theme
 and a few extra features.")
     (license license:gpl3)))
 
+(define-public portfolio
+  (package
+    (name "portfolio")
+    (version "0.9.14")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/tchx84/Portfolio")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0h09v8lhz3kv6qmwjhx3gr7rp6ccfhrzm54gjnaixl4dcg9zddls"))))
+    (arguments
+     (list #:glib-or-gtk? #t
+           #:imported-modules `(,@%meson-build-system-modules
+                                (guix build python-build-system))
+           #:modules '((guix build meson-build-system)
+                       ((guix build python-build-system)
+                        #:prefix python:)
+                       (guix build utils))
+           #:phases #~(modify-phases %standard-phases
+                        (add-after 'install 'rename-executable
+                          (lambda _
+                            (with-directory-excursion (string-append #$output
+                                                                     "/bin")
+                              (rename-file "dev.tchx84.Portfolio" "portfolio"))))
+                        (add-after 'glib-or-gtk-wrap 'python-and-gi-wrap
+                          (lambda* (#:key inputs outputs #:allow-other-keys)
+                            (wrap-program (search-input-file outputs
+                                                             "bin/portfolio")
+                              `("GUIX_PYTHONPATH" =
+                                (,(getenv "GUIX_PYTHONPATH") ,(python:site-packages
+                                                               inputs
+                                                               outputs)))
+                              `("GI_TYPELIB_PATH" =
+                                (,(getenv "GI_TYPELIB_PATH")))))))))
+    (build-system meson-build-system)
+    (inputs (list bash-minimal python-pygobject gtk+ libhandy))
+    (native-inputs
+     (list desktop-file-utils
+           gettext-minimal
+           `(,glib "bin")
+           `(,gtk+ "bin")
+           python))
+    (home-page "https://github.com/tchx84/Portfolio")
+    (synopsis "Minimalist file manager for Linux mobile devices")
+    (description
+     "Portfolio is a minimalist file manager for those who want to use Linux
+mobile devices.  Tap to activate and long press to select, to browse, open, copy, move,
+delete, or edit your files.")
+    (license license:gpl3)))
+
 (define-public gnome-plots
   (package
     (name "gnome-plots")
-- 
2.38.1

-- 
Best regards,
conses