GNU bug report logs - #52659
Vorta GUI for Borg backup

Previous Next

Package: guix-patches;

Reported by: Leo Famulari <leo <at> famulari.name>

Date: Sun, 19 Dec 2021 17:42:01 UTC

Severity: normal

Done: Leo Famulari <leo <at> famulari.name>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 52659 in the body.
You can then email your comments to 52659 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#52659; Package guix-patches. (Sun, 19 Dec 2021 17:42:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Leo Famulari <leo <at> famulari.name>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Sun, 19 Dec 2021 17:42:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: guix-patches <at> gnu.org
Subject: Vorta GUI for Borg backup
Date: Sun, 19 Dec 2021 12:41:00 -0500
[Message part 1 (text/plain, inline)]
Recently I noticed some discussion on #guix IRC about Vorta, a GUI for
Borg backup.

I actually have some ooooold patches for this, that I've been
maintaining privately for a while. I never submitted them because I
haven't been using Vorta, just Borg via cron.

But since I have this work, I might as well submit it since others are
asking about this program.

Please test!
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#52659; Package guix-patches. (Sun, 19 Dec 2021 17:45:01 GMT) Full text and rfc822 format available.

Message #8 received at 52659 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: 52659 <at> debbugs.gnu.org
Subject: [PATCH 2/2] gnu: Add Vorta.
Date: Sun, 19 Dec 2021 12:44:13 -0500
* gnu/packages/backup.scm (vorta): New variable.
---
 gnu/packages/backup.scm | 58 ++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 57 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm
index fdb84898bb..f683266359 100644
--- a/gnu/packages/backup.scm
+++ b/gnu/packages/backup.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2014, 2015, 2020 Eric Bavier <bavier <at> posteo.net>
 ;;; Copyright © 2014 Ian Denhardt <ian <at> zenhack.net>
-;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo <at> famulari.name>
+;;; Copyright © 2015, 2016, 2017, 2021 Leo Famulari <leo <at> famulari.name>
 ;;; Copyright © 2017–2021 Tobias Geerinckx-Rice <me <at> tobias.gr>
 ;;; Copyright © 2017 Thomas Danckaert <post <at> thomasdanckaert.be>
 ;;; Copyright © 2017, 2021 Arun Isaac <arunisaac <at> systemreboot.net>
@@ -47,6 +47,7 @@ (define-module (gnu packages backup)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system go)
   #:use-module (guix build-system python)
+  #:use-module (guix build-system qt)
   #:use-module (gnu packages)
   #:use-module (gnu packages acl)
   #:use-module (gnu packages autotools)
@@ -76,12 +77,15 @@ (define-module (gnu packages backup)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages protobuf)
   #:use-module (gnu packages python)
+  #:use-module (gnu packages python-check)
   #:use-module (gnu packages python-crypto)
   #:use-module (gnu packages python-web)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages qt)
   #:use-module (gnu packages rsync)
   #:use-module (gnu packages serialization)
   #:use-module (gnu packages ssh)
+  #:use-module (gnu packages time)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages valgrind)
   #:use-module (gnu packages xml))
@@ -1181,3 +1185,55 @@ (define-public borgmatic
 your databases too.  Monitor it all with integrated third-party services.
 borgmatic is powered by borg.")
     (license license:gpl3+)))
+
+(define-public vorta
+  (package
+    (name "vorta")
+    (version "0.8.2")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "vorta" version))
+              (sha256
+               (base32
+                "1cl7kyh14h38xavbq23b8ifvk8abkiqdkpgaxfxvd223fm02zz26"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:imported-modules ((guix build qt-utils)
+                           (guix build cmake-build-system)
+                           (guix build qt-build-system)
+                           ,@%python-build-system-modules)
+       #:modules ((guix build utils)
+                  (guix build python-build-system)
+                  ((guix build qt-build-system) #:prefix qt:))
+       #:phases
+       (modify-phases %standard-phases
+         ;; XXX This phase tries to write to $HOME
+         (add-before 'sanity-check 'set-HOME
+           (lambda _
+             (setenv "HOME" "/tmp")))
+         ;; Otherwise, the user interface's icons will be missing.
+         (add-after 'wrap 'qt-wrap
+           (assoc-ref qt:%standard-phases 'qt-wrap)))))
+    (native-inputs
+     `(("python-pytest-mock" ,python-pytest-mock)
+       ("python-pytest-qt" ,python-pytest-qt)
+       ("python-pytest-runner" ,python-pytest-runner)
+       ("python-setuptools-git" ,python-setuptools-git)))
+    (inputs
+     `(("python-appdirs" ,python-appdirs)
+       ("python-dateutil" ,python-dateutil)
+       ("python-keyring" ,python-keyring)
+       ("python-paramiko" ,python-paramiko)
+       ("python-peewee" ,python-peewee)
+       ("python-psutil" ,python-psutil)
+       ("python-pyqt" ,python-pyqt)
+       ("python-secretstorage" ,python-secretstorage)
+       ;; XXX This is included so that the qt-wrap phase picks it up.
+       ("qtsvg" ,qtsvg)))
+    (home-page "https://github.com/borgbase/vorta")
+    (synopsis "Graphical backup client based on BorgBackup")
+    (description "Vorta is a graphical backup client based on the Borg backup
+tool.  It supports the use of remote backup repositories.  It can perform
+scheduled backups, and has a graphical tool for browsing and extracting the Borg
+archives.")
+    (license license:gpl3+)))
-- 
2.34.0





Information forwarded to guix-patches <at> gnu.org:
bug#52659; Package guix-patches. (Sun, 19 Dec 2021 17:45:02 GMT) Full text and rfc822 format available.

Message #11 received at 52659 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: 52659 <at> debbugs.gnu.org
Subject: [PATCH 1/2] gnu: Add python-pytest-faulthandler.
Date: Sun, 19 Dec 2021 12:44:12 -0500
* gnu/packages/check.scm (python-pytest-faulthandler): New variable.
---
 gnu/packages/check.scm | 23 ++++++++++++++++++++++-
 1 file changed, 22 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 0a90a3b167..bdd0eae0aa 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -8,7 +8,7 @@
 ;;; Copyright © 2015 Federico Beffa <beffa <at> fbengineering.ch>
 ;;; Copyright © 2015 Andreas Enge <andreas <at> enge.fr>
 ;;; Copyright © 2015, 2016, 2018, 2019, 2020, 2021 Efraim Flashner <efraim <at> flashner.co.il>
-;;; Copyright © 2016, 2017 Leo Famulari <leo <at> famulari.name>
+;;; Copyright © 2016, 2017, 2021 Leo Famulari <leo <at> famulari.name>
 ;;; Copyright © 2016 Christine Lemmer-Webber <cwebber <at> dustycloud.org>
 ;;; Copyright © 2016, 2017 Danny Milosavljevic <dannym+a <at> scratchpost.org>
 ;;; Copyright © 2016 Roel Janssen <roel <at> gnu.org>
@@ -1481,6 +1481,27 @@ (define-public python-pytest-forked
 side-effects (such as setting environment variables).")
     (license license:expat)))
 
+;; This package is included in Pytest >=5.0.
+(define-public python-pytest-faulthandler
+  (package
+    (name "python-pytest-faulthandler")
+    (version "2.0.1")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "pytest-faulthandler" version))
+              (sha256
+               (base32
+                "1r8ssxfdib2d2mblmnm34q84lza5d8cq5n5p3sl4sd5chz7bnwpd"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-pytest" ,python-pytest)
+       ("python-setuptools-scm" ,python-setuptools-scm)))
+    (home-page "https://github.com/pytest-dev/pytest-faulthandler")
+    (synopsis "Pytest plugin that activates the faulthandler module for tests")
+    (description "This package provides a pytest plugin that automatically
+enables the @code{faulthandler} module during tests.")
+    (license license:expat)))
+
 (define-public python-scripttest
   (package
     (name "python-scripttest")
-- 
2.34.0





Information forwarded to guix-patches <at> gnu.org:
bug#52659; Package guix-patches. (Sun, 19 Dec 2021 17:53:02 GMT) Full text and rfc822 format available.

Message #14 received at 52659 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: 52659 <at> debbugs.gnu.org
Subject: Re: [PATCH 2/2] gnu: Add Vorta.
Date: Sun, 19 Dec 2021 12:52:16 -0500
On Sun, Dec 19, 2021 at 12:44:13PM -0500, Leo Famulari wrote:
> * gnu/packages/backup.scm (vorta): New variable.

> +    (inputs
> +     `(("python-appdirs" ,python-appdirs)
> +       ("python-dateutil" ,python-dateutil)
> +       ("python-keyring" ,python-keyring)
> +       ("python-paramiko" ,python-paramiko)
> +       ("python-peewee" ,python-peewee)
> +       ("python-psutil" ,python-psutil)
> +       ("python-pyqt" ,python-pyqt)
> +       ("python-secretstorage" ,python-secretstorage)
> +       ;; XXX This is included so that the qt-wrap phase picks it up.
> +       ("qtsvg" ,qtsvg)))

You may notice an important missing dependency: Borg.

The build doesn't require it.

Should we propagate it? Find out where Vorta invokes it and patch the
invocation? Let the user install it (sounds like a recipe for
complaints)?




Information forwarded to guix-patches <at> gnu.org:
bug#52659; Package guix-patches. (Sun, 19 Dec 2021 18:57:02 GMT) Full text and rfc822 format available.

Message #17 received at 52659 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: 52659 <at> debbugs.gnu.org
Subject: [WIP v2 1/4] gnu: Add python-pytest-faulthandler.
Date: Sun, 19 Dec 2021 13:56:23 -0500
* gnu/packages/check.scm (python-pytest-faulthandler): New variable.
---
 gnu/packages/check.scm | 22 +++++++++++++++++++++-
 1 file changed, 21 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 0a90a3b167..e3bb53dae0 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -8,7 +8,7 @@
 ;;; Copyright © 2015 Federico Beffa <beffa <at> fbengineering.ch>
 ;;; Copyright © 2015 Andreas Enge <andreas <at> enge.fr>
 ;;; Copyright © 2015, 2016, 2018, 2019, 2020, 2021 Efraim Flashner <efraim <at> flashner.co.il>
-;;; Copyright © 2016, 2017 Leo Famulari <leo <at> famulari.name>
+;;; Copyright © 2016, 2017, 2021 Leo Famulari <leo <at> famulari.name>
 ;;; Copyright © 2016 Christine Lemmer-Webber <cwebber <at> dustycloud.org>
 ;;; Copyright © 2016, 2017 Danny Milosavljevic <dannym+a <at> scratchpost.org>
 ;;; Copyright © 2016 Roel Janssen <roel <at> gnu.org>
@@ -1481,6 +1481,26 @@ (define-public python-pytest-forked
 side-effects (such as setting environment variables).")
     (license license:expat)))
 
+;; This package is included in Pytest >=5.0.
+(define-public python-pytest-faulthandler
+  (package
+    (name "python-pytest-faulthandler")
+    (version "2.0.1")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "pytest-faulthandler" version))
+              (sha256
+               (base32
+                "1r8ssxfdib2d2mblmnm34q84lza5d8cq5n5p3sl4sd5chz7bnwpd"))))
+    (build-system python-build-system)
+    (native-inputs
+      (list python-pytest python-setuptools-scm))
+    (home-page "https://github.com/pytest-dev/pytest-faulthandler")
+    (synopsis "Pytest plugin that activates the faulthandler module for tests")
+    (description "This package provides a pytest plugin that automatically
+enables the @code{faulthandler} module during tests.")
+    (license license:expat)))
+
 (define-public python-scripttest
   (package
     (name "python-scripttest")
-- 
2.34.0





Information forwarded to guix-patches <at> gnu.org:
bug#52659; Package guix-patches. (Sun, 19 Dec 2021 18:57:02 GMT) Full text and rfc822 format available.

Message #20 received at 52659 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: 52659 <at> debbugs.gnu.org
Subject: [WIP v2 3/4] Vorta: patch Borg invocation
Date: Sun, 19 Dec 2021 13:56:25 -0500
---
 gnu/packages/backup.scm | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm
index 5ce6e10bab..e2a37d182b 100644
--- a/gnu/packages/backup.scm
+++ b/gnu/packages/backup.scm
@@ -1207,6 +1207,13 @@ (define-public vorta
                   ((guix build qt-build-system) #:prefix qt:))
        #:phases
        (modify-phases %standard-phases
+         (add-after 'unpack 'patch-borg-path
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((borg (string-append (assoc-ref inputs "borg")
+                                        "/bin/borg")))
+               (substitute* "src/vorta/borg/borg_job.py"
+                 (("which\\('borg'\\)")
+                  (string-append "which('" borg "')"))))))
          ;; XXX This phase tries to write to $HOME
          (add-before 'sanity-check 'set-HOME
            (lambda _
@@ -1220,7 +1227,8 @@ (define-public vorta
             python-pytest-runner
             python-setuptools-git))
     (inputs
-      (list python-appdirs
+      (list borg
+            python-appdirs
             python-dateutil
             python-keyring
             python-paramiko
-- 
2.34.0





Information forwarded to guix-patches <at> gnu.org:
bug#52659; Package guix-patches. (Sun, 19 Dec 2021 18:57:03 GMT) Full text and rfc822 format available.

Message #23 received at 52659 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: 52659 <at> debbugs.gnu.org
Subject: [WIP v2 2/4] gnu: Add Vorta.
Date: Sun, 19 Dec 2021 13:56:24 -0500
* gnu/packages/backup.scm (vorta): New variable.
---
 gnu/packages/backup.scm | 58 ++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 57 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm
index fdb84898bb..5ce6e10bab 100644
--- a/gnu/packages/backup.scm
+++ b/gnu/packages/backup.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2014, 2015, 2020 Eric Bavier <bavier <at> posteo.net>
 ;;; Copyright © 2014 Ian Denhardt <ian <at> zenhack.net>
-;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo <at> famulari.name>
+;;; Copyright © 2015, 2016, 2017, 2021 Leo Famulari <leo <at> famulari.name>
 ;;; Copyright © 2017–2021 Tobias Geerinckx-Rice <me <at> tobias.gr>
 ;;; Copyright © 2017 Thomas Danckaert <post <at> thomasdanckaert.be>
 ;;; Copyright © 2017, 2021 Arun Isaac <arunisaac <at> systemreboot.net>
@@ -47,6 +47,7 @@ (define-module (gnu packages backup)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system go)
   #:use-module (guix build-system python)
+  #:use-module (guix build-system qt)
   #:use-module (gnu packages)
   #:use-module (gnu packages acl)
   #:use-module (gnu packages autotools)
@@ -76,12 +77,15 @@ (define-module (gnu packages backup)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages protobuf)
   #:use-module (gnu packages python)
+  #:use-module (gnu packages python-check)
   #:use-module (gnu packages python-crypto)
   #:use-module (gnu packages python-web)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages qt)
   #:use-module (gnu packages rsync)
   #:use-module (gnu packages serialization)
   #:use-module (gnu packages ssh)
+  #:use-module (gnu packages time)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages valgrind)
   #:use-module (gnu packages xml))
@@ -1181,3 +1185,55 @@ (define-public borgmatic
 your databases too.  Monitor it all with integrated third-party services.
 borgmatic is powered by borg.")
     (license license:gpl3+)))
+
+(define-public vorta
+  (package
+    (name "vorta")
+    (version "0.8.2")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "vorta" version))
+              (sha256
+               (base32
+                "1cl7kyh14h38xavbq23b8ifvk8abkiqdkpgaxfxvd223fm02zz26"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:imported-modules ((guix build qt-utils)
+                           (guix build cmake-build-system)
+                           (guix build qt-build-system)
+                           ,@%python-build-system-modules)
+       #:modules ((guix build utils)
+                  (guix build python-build-system)
+                  ((guix build qt-build-system) #:prefix qt:))
+       #:phases
+       (modify-phases %standard-phases
+         ;; XXX This phase tries to write to $HOME
+         (add-before 'sanity-check 'set-HOME
+           (lambda _
+             (setenv "HOME" "/tmp")))
+         ;; Otherwise, the user interface's icons will be missing.
+         (add-after 'wrap 'qt-wrap
+           (assoc-ref qt:%standard-phases 'qt-wrap)))))
+    (native-inputs
+      (list python-pytest-mock
+            python-pytest-qt
+            python-pytest-runner
+            python-setuptools-git))
+    (inputs
+      (list python-appdirs
+            python-dateutil
+            python-keyring
+            python-paramiko
+            python-peewee
+            python-psutil
+            python-pyqt
+            python-secretstorage
+            ;; XXX This is included so that the qt-wrap phase picks it up.
+            qtsvg))
+    (home-page "https://github.com/borgbase/vorta")
+    (synopsis "Graphical backup client based on BorgBackup")
+    (description "Vorta is a graphical backup client based on the Borg backup
+tool.  It supports the use of remote backup repositories.  It can perform
+scheduled backups, and has a graphical tool for browsing and extracting the Borg
+archives.")
+    (license license:gpl3+)))
-- 
2.34.0





Information forwarded to guix-patches <at> gnu.org:
bug#52659; Package guix-patches. (Sun, 19 Dec 2021 18:57:03 GMT) Full text and rfc822 format available.

Message #26 received at 52659 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: 52659 <at> debbugs.gnu.org
Subject: [WIP v2 4/4] WIP: Vorta: Use gexps instead of (assoc-ref ...)
Date: Sun, 19 Dec 2021 13:56:26 -0500
---
 gnu/packages/backup.scm | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm
index e2a37d182b..16353682dd 100644
--- a/gnu/packages/backup.scm
+++ b/gnu/packages/backup.scm
@@ -1209,11 +1209,10 @@ (define-public vorta
        (modify-phases %standard-phases
          (add-after 'unpack 'patch-borg-path
            (lambda* (#:key inputs #:allow-other-keys)
-             (let ((borg (string-append (assoc-ref inputs "borg")
-                                        "/bin/borg")))
-               (substitute* "src/vorta/borg/borg_job.py"
-                 (("which\\('borg'\\)")
-                  (string-append "which('" borg "')"))))))
+             (substitute* "src/vorta/borg/borg_job.py"
+               (("which\\('borg'\\)")
+                (string-append "which('" ,#$(this-package-input borg)
+                               "/bin/borg')")))))
          ;; XXX This phase tries to write to $HOME
          (add-before 'sanity-check 'set-HOME
            (lambda _
-- 
2.34.0





Information forwarded to guix-patches <at> gnu.org:
bug#52659; Package guix-patches. (Sun, 19 Dec 2021 19:36:01 GMT) Full text and rfc822 format available.

Message #29 received at 52659 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: 52659 <at> debbugs.gnu.org
Subject: [PATCH v3 1/2] gnu: Add python-pytest-faulthandler.
Date: Sun, 19 Dec 2021 14:35:27 -0500
* gnu/packages/check.scm (python-pytest-faulthandler): New variable.
---
 gnu/packages/check.scm | 22 +++++++++++++++++++++-
 1 file changed, 21 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 0a90a3b167..e3bb53dae0 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -8,7 +8,7 @@
 ;;; Copyright © 2015 Federico Beffa <beffa <at> fbengineering.ch>
 ;;; Copyright © 2015 Andreas Enge <andreas <at> enge.fr>
 ;;; Copyright © 2015, 2016, 2018, 2019, 2020, 2021 Efraim Flashner <efraim <at> flashner.co.il>
-;;; Copyright © 2016, 2017 Leo Famulari <leo <at> famulari.name>
+;;; Copyright © 2016, 2017, 2021 Leo Famulari <leo <at> famulari.name>
 ;;; Copyright © 2016 Christine Lemmer-Webber <cwebber <at> dustycloud.org>
 ;;; Copyright © 2016, 2017 Danny Milosavljevic <dannym+a <at> scratchpost.org>
 ;;; Copyright © 2016 Roel Janssen <roel <at> gnu.org>
@@ -1481,6 +1481,26 @@ (define-public python-pytest-forked
 side-effects (such as setting environment variables).")
     (license license:expat)))
 
+;; This package is included in Pytest >=5.0.
+(define-public python-pytest-faulthandler
+  (package
+    (name "python-pytest-faulthandler")
+    (version "2.0.1")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "pytest-faulthandler" version))
+              (sha256
+               (base32
+                "1r8ssxfdib2d2mblmnm34q84lza5d8cq5n5p3sl4sd5chz7bnwpd"))))
+    (build-system python-build-system)
+    (native-inputs
+      (list python-pytest python-setuptools-scm))
+    (home-page "https://github.com/pytest-dev/pytest-faulthandler")
+    (synopsis "Pytest plugin that activates the faulthandler module for tests")
+    (description "This package provides a pytest plugin that automatically
+enables the @code{faulthandler} module during tests.")
+    (license license:expat)))
+
 (define-public python-scripttest
   (package
     (name "python-scripttest")
-- 
2.34.0





Information forwarded to guix-patches <at> gnu.org:
bug#52659; Package guix-patches. (Sun, 19 Dec 2021 19:36:02 GMT) Full text and rfc822 format available.

Message #32 received at 52659 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: 52659 <at> debbugs.gnu.org
Subject: [PATCH v3 2/2] gnu: Add Vorta.
Date: Sun, 19 Dec 2021 14:35:28 -0500
* gnu/packages/backup.scm (vorta): New variable.
---
 gnu/packages/backup.scm | 67 ++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 66 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm
index fdb84898bb..2a47b759d7 100644
--- a/gnu/packages/backup.scm
+++ b/gnu/packages/backup.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2014, 2015, 2020 Eric Bavier <bavier <at> posteo.net>
 ;;; Copyright © 2014 Ian Denhardt <ian <at> zenhack.net>
-;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo <at> famulari.name>
+;;; Copyright © 2015, 2016, 2017, 2021 Leo Famulari <leo <at> famulari.name>
 ;;; Copyright © 2017–2021 Tobias Geerinckx-Rice <me <at> tobias.gr>
 ;;; Copyright © 2017 Thomas Danckaert <post <at> thomasdanckaert.be>
 ;;; Copyright © 2017, 2021 Arun Isaac <arunisaac <at> systemreboot.net>
@@ -40,6 +40,7 @@
 (define-module (gnu packages backup)
   #:use-module (guix packages)
   #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix gexp)
   #:use-module (guix git-download)
   #:use-module (guix download)
   #:use-module (guix utils)
@@ -47,6 +48,7 @@ (define-module (gnu packages backup)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system go)
   #:use-module (guix build-system python)
+  #:use-module (guix build-system qt)
   #:use-module (gnu packages)
   #:use-module (gnu packages acl)
   #:use-module (gnu packages autotools)
@@ -76,12 +78,15 @@ (define-module (gnu packages backup)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages protobuf)
   #:use-module (gnu packages python)
+  #:use-module (gnu packages python-check)
   #:use-module (gnu packages python-crypto)
   #:use-module (gnu packages python-web)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages qt)
   #:use-module (gnu packages rsync)
   #:use-module (gnu packages serialization)
   #:use-module (gnu packages ssh)
+  #:use-module (gnu packages time)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages valgrind)
   #:use-module (gnu packages xml))
@@ -1181,3 +1186,63 @@ (define-public borgmatic
 your databases too.  Monitor it all with integrated third-party services.
 borgmatic is powered by borg.")
     (license license:gpl3+)))
+
+(define-public vorta
+  (package
+    (name "vorta")
+    (version "0.8.2")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "vorta" version))
+              (sha256
+               (base32
+                "1cl7kyh14h38xavbq23b8ifvk8abkiqdkpgaxfxvd223fm02zz26"))))
+    (build-system python-build-system)
+    (arguments
+     (list
+      #:imported-modules `((guix build qt-utils)
+                           (guix build cmake-build-system)
+                           (guix build qt-build-system)
+                           ,@%python-build-system-modules)
+      #:modules '((guix build utils)
+                  (guix build python-build-system)
+                  ((guix build qt-build-system) #:prefix qt:))
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'patch-borg-path
+            (lambda* (#:key inputs #:allow-other-keys)
+              (substitute* "src/vorta/borg/borg_job.py"
+                (("which\\('borg'\\)")
+                 (string-append "which('" #$(this-package-input "borg")
+                                "/bin/borg')")))))
+          ;; XXX This phase tries to write to $HOME
+          (add-before 'sanity-check 'set-HOME
+            (lambda _
+              (setenv "HOME" "/tmp")))
+          ;; Otherwise, the user interface's icons will be missing.
+          (add-after 'wrap 'qt-wrap
+            (assoc-ref qt:%standard-phases 'qt-wrap)))))
+    (native-inputs
+     (list python-pytest-mock
+           python-pytest-qt
+           python-pytest-runner
+           python-setuptools-git))
+    (inputs
+     (list borg
+           python-appdirs
+           python-dateutil
+           python-keyring
+           python-paramiko
+           python-peewee
+           python-psutil
+           python-pyqt
+           python-secretstorage
+           ;; XXX This is included so that the qt-wrap phase picks it up.
+           qtsvg))
+    (home-page "https://github.com/borgbase/vorta")
+    (synopsis "Graphical backup client based on BorgBackup")
+    (description "Vorta is a graphical backup client based on the Borg backup
+tool.  It supports the use of remote backup repositories.  It can perform
+scheduled backups, and has a graphical tool for browsing and extracting the Borg
+archives.")
+    (license license:gpl3+)))
-- 
2.34.0





Information forwarded to guix-patches <at> gnu.org:
bug#52659; Package guix-patches. (Mon, 20 Dec 2021 17:56:01 GMT) Full text and rfc822 format available.

Message #35 received at 52659 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: Xinglu Chen <public <at> yoctocell.xyz>
Cc: 52659 <at> debbugs.gnu.org
Subject: Re: [bug#52659] [PATCH v3 2/2] gnu: Add Vorta.
Date: Mon, 20 Dec 2021 12:55:37 -0500
On Mon, Dec 20, 2021 at 09:43:51AM +0100, Xinglu Chen wrote:
> Result of running `guix review b960924583def5400b477d3eea839c78ec8cf950.1639942526.git.leo <at> famulari.name': (still a WIP)

What is `guix review`? :)




Information forwarded to guix-patches <at> gnu.org:
bug#52659; Package guix-patches. (Mon, 20 Dec 2021 19:41:02 GMT) Full text and rfc822 format available.

Message #38 received at 52659 <at> debbugs.gnu.org (full text, mbox):

From: Xinglu Chen <public <at> yoctocell.xyz>
To: Leo Famulari <leo <at> famulari.name>
Cc: 52659 <at> debbugs.gnu.org
Subject: Re: [bug#52659] [PATCH v3 2/2] gnu: Add Vorta.
Date: Mon, 20 Dec 2021 20:40:19 +0100
[Message part 1 (text/plain, inline)]
On Mon, Dec 20 2021, Leo Famulari wrote:

> On Mon, Dec 20, 2021 at 09:43:51AM +0100, Xinglu Chen wrote:
>> Result of running `guix review b960924583def5400b477d3eea839c78ec8cf950.1639942526.git.leo <at> famulari.name': (still a WIP)
>
> What is `guix review`? :)

Hehe, it’s still a WIP (which is why I am testing it), and as the name
suggests, it makes it easier to review packages.  It can read the diff
between two commits and determine the packages that have been changed,
and then it will build and lint those package.  Or it can be given a
message id (as you see above) and use the ‘b4’ program to fetch patches
from a public-inbox archive[1], and then apply them, build and lint the
packages.

I still have some work to do on Guix Home[2], but after that I will
hopefully send some patches for this ‘guix review’ command.  :-)

[1]: Like this one <https://yhetil.org>
[2]: <https://yhetil.org/guix-devel/878rwlu4uz.fsf <at> inria.fr>
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#52659; Package guix-patches. (Mon, 20 Dec 2021 19:52:01 GMT) Full text and rfc822 format available.

Message #41 received at 52659 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: Xinglu Chen <public <at> yoctocell.xyz>
Cc: 52659 <at> debbugs.gnu.org
Subject: Re: [bug#52659] [PATCH v3 2/2] gnu: Add Vorta.
Date: Mon, 20 Dec 2021 14:51:43 -0500
[Message part 1 (text/plain, inline)]
On Mon, Dec 20, 2021 at 08:40:19PM +0100, Xinglu Chen wrote:
> Hehe, it’s still a WIP (which is why I am testing it), and as the name
> suggests, it makes it easier to review packages.  It can read the diff
> between two commits and determine the packages that have been changed,
> and then it will build and lint those package.  Or it can be given a
> message id (as you see above) and use the ‘b4’ program to fetch patches
> from a public-inbox archive[1], and then apply them, build and lint the
> packages.
> 
> I still have some work to do on Guix Home[2], but after that I will
> hopefully send some patches for this ‘guix review’ command.  :-)

Cool, I'm looking forward to it.
[signature.asc (application/pgp-signature, inline)]

Reply sent to Leo Famulari <leo <at> famulari.name>:
You have taken responsibility. (Wed, 26 Jan 2022 19:20:02 GMT) Full text and rfc822 format available.

Notification sent to Leo Famulari <leo <at> famulari.name>:
bug acknowledged by developer. (Wed, 26 Jan 2022 19:20:02 GMT) Full text and rfc822 format available.

Message #46 received at 52659-done <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: 52659-done <at> debbugs.gnu.org
Subject: Re: [PATCH v3 2/2] gnu: Add Vorta.
Date: Wed, 26 Jan 2022 14:18:52 -0500
On Sun, Dec 19, 2021 at 02:35:28PM -0500, Leo Famulari wrote:
> * gnu/packages/backup.scm (vorta): New variable.

Pushed as c11b585a819a908f866d6072075a27fcb4e0e637




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Thu, 24 Feb 2022 12:24:09 GMT) Full text and rfc822 format available.

This bug report was last modified 2 years and 74 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.