<pre style='margin:0'>
Renee Otten (reneeotten) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/fd5f69bdcee19f53d86d109865a31a5263aa6391">https://github.com/macports/macports-ports/commit/fd5f69bdcee19f53d86d109865a31a5263aa6391</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit fd5f69bdcee19f53d86d109865a31a5263aa6391
</span>Author: Sergey Fedorov <vital.had@gmail.com>
AuthorDate: Wed Nov 27 06:25:08 2024 +0800

<span style='display:block; white-space:pre;color:#404040;'>    secrets: new port in gnome
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Closes: https://trac.macports.org/ticket/70306
</span>---
 gnome/secrets/Portfile                           | 70 ++++++++++++++++++++++++
 gnome/secrets/files/patch-find-right-python.diff | 32 +++++++++++
 2 files changed, 102 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/gnome/secrets/Portfile b/gnome/secrets/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..a43f95487ec
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/gnome/secrets/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,70 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortSystem          1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           gitlab 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           meson 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+gitlab.instance     https://gitlab.gnome.org
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# After the following commit libadwaita 1.6.x is required,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# which in turn needs a newer gtk4 than MacPorts now has.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://gitlab.gnome.org/World/secrets/-/commit/c52d6f9e5c483e1ec141f4a113425890fa8b4b29
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+gitlab.setup        World secrets 9.4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories          gnome security sysutils
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license             GPL-3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers         nomaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description         Password manager for GNOME
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description    {*}${description}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+use_bzip2           yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  8f50951382df5d151553ab85a5ba4a212be10403 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  5e0850fffc3a9d4ab20670b6c200e7f15f50ce31b73b5622de00939c1d0d69ce \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    465812
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set py_ver          3.12
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set py_ver_nodot    [string map {. {}} ${py_ver}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_build-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:gettext \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    path:bin/pkg-config:pkgconfig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append  port:desktop-file-utils \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:gettext-runtime \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    path:lib/pkgconfig/glib-2.0.pc:glib2 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    path:lib/pkgconfig/gobject-introspection-1.0.pc:gobject-introspection \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    path:lib/pkgconfig/gtk+-4.0.pc:gtk4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:libadwaita \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:python${py_ver_nodot} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:py${py_ver_nodot}-kcs11 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:py${py_ver_nodot}-pykeepass \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:py${py_ver_nodot}-pyotp \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:py${py_ver_nodot}-validators \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:py${py_ver_nodot}-yubico \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:py${py_ver_nodot}-zxcvbn
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Dependency is not declared anywhere explicitly,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# but secrets will fail to launch if usb module is not found.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_run-append  port:py${py_ver_nodot}-pyusb
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append   patch-find-right-python.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set python.prefix   ${frameworks_dir}/Python.framework/Versions/${py_ver}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set python.bin      ${python.prefix}/bin/python${py_ver}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set python.pkgd     ${python.prefix}/lib/python${py_ver}/site-packages
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    reinplace "s|@PYTHON@|${python.bin}|" ${worksrcpath}/meson.build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    reinplace "s|@PY_PACKAGES@|${python.pkgd}|" ${worksrcpath}/meson.build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-activate {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    system "${prefix}/bin/glib-compile-schemas ${prefix}/share/glib-2.0/schemas"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    system "${prefix}/bin/gtk4-update-icon-cache -f -t ${prefix}/share/icons/hicolor"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    system "${prefix}/bin/update-desktop-database ${prefix}/share/applications"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://trac.macports.org/ticket/70137
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+notes "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+If you get an error upon launching the app,\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+try setting GSK_RENDERER=cairo in the environment.\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+You may also add it into a shell config file.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+"
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/gnome/secrets/files/patch-find-right-python.diff b/gnome/secrets/files/patch-find-right-python.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..b7f7746eb70
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/gnome/secrets/files/patch-find-right-python.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,32 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- meson.build    2024-05-04 04:12:25
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ meson.build    2024-11-27 06:07:18
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -28,7 +28,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ message('Looking for dependencies')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # We need pykeepass>=4.0.7.post1 and pyotp>=2.4.0.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-python_bin = python.find_installation('python3', modules:[
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++python_bin = import('python').find_installation('@PYTHON@', modules:[
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   'pykeepass',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   'pyotp',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   'validators',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -37,9 +37,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   'yubico',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if not python_bin.found()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  error('No valid python3 binary found')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  error('No valid python binary found')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  message('Found python3 binary')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  message('Found python binary')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if not python_bin.language_version().version_compare('>= 3.8')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -53,7 +53,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ dependency('gtk4', version: '>=4.9')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ dependency('libadwaita-1', version: '>=1.5.alpha')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-python_dir = python_bin.get_install_dir()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++python_dir = '@PY_PACKAGES@'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ DATA_DIR = join_paths(get_option('prefix'), get_option('datadir'), meson.project_name())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ bindir = join_paths(get_option('prefix'), get_option('bindir'))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span></pre><pre style='margin:0'>

</pre>