gnu: deja-dup: Update to 40.6.
* gnu/packages/gnome.scm (deja-dup): Update to 40.6. [origin]: Use gitlab.gnome.org since the project migrated away from launchpad. [home-page]: Use 'wiki.gnome.org' instead of 'launchpad.net'. [build-system]: Switch to 'meson-build-system' because upstream removed cmake support. [arguments]: Enable tests. Remove arguments 'modules', 'imported-modules' and 'test-target'. Use argument 'glib-or-gtk?'. Replace configure-flags to only adjust 'RUN_PATH'. Use standard phases for 'configure' and 'check'. Adjust and rename phase 'patch-lockfile-deletion' to 'patch-paths'. Add phases 'patch-libgpg-error' and 'skip-gtk-update-icon-cache'. [inputs]: Remove 'libpeas', 'gobject-introspection'. Replace 'python-2' and 'python2-pygobject' with python-3 versions. Add 'json-glib', 'libsoup' and 'libgpg-error'. [native-inputs]: Remove 'cmake-minimal' and 'intltool'. Add 'appstream-glib','desktop-file-utils', 'glib:bin' and 'gobject-introspection'. * gnu/packages/patches/deja-dup-use-ref-keyword-for-iter.patch: Delete file.master
parent
6039031a1a
commit
899ffa1381
|
@ -879,73 +879,72 @@ configuration files for the GNOME menu, as well as a simple menu editor.")
|
||||||
(define-public deja-dup
|
(define-public deja-dup
|
||||||
(package
|
(package
|
||||||
(name "deja-dup")
|
(name "deja-dup")
|
||||||
(version "34.3")
|
(version "40.6")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri "https://launchpadlibrarian.net/295170991/deja-dup-34.3.tar.xz")
|
(uri (string-append "https://gitlab.gnome.org/World/deja-dup/-/archive/"
|
||||||
(sha256
|
version "/deja-dup-" version ".tar.bz2"))
|
||||||
(base32
|
(sha256
|
||||||
"1xqcr61hpbahbla7gdjn4ngjfz7w6f57y7f5pkb77yk05f60j2n9"))
|
(base32
|
||||||
(patches
|
"0lwazh6crby5wpy9fg6zvwy4plqbhs2f98bm5lbizjdlbh88n5q0"))))
|
||||||
(search-patches "deja-dup-use-ref-keyword-for-iter.patch"))))
|
(build-system meson-build-system)
|
||||||
(build-system glib-or-gtk-build-system)
|
|
||||||
(arguments
|
(arguments
|
||||||
`(#:modules ((guix build gnu-build-system)
|
`(#:glib-or-gtk? #t
|
||||||
((guix build cmake-build-system) #:prefix cmake:)
|
#:configure-flags
|
||||||
(guix build glib-or-gtk-build-system)
|
(list
|
||||||
(guix build utils))
|
;; Otherwise, the RUNPATH will lack the final path component.
|
||||||
#:imported-modules (,@%glib-or-gtk-build-system-modules
|
(string-append "-Dc_link_args=-Wl,-rpath="
|
||||||
(guix build cmake-build-system))
|
(assoc-ref %outputs "out") "/lib/deja-dup"))
|
||||||
#:test-target "test"
|
|
||||||
#:configure-flags (list (string-append
|
|
||||||
"-DCMAKE_INSTALL_FULL_DATADIR=" %output)
|
|
||||||
(string-append
|
|
||||||
"-DCMAKE_INSTALL_LIBEXECDIR=" %output))
|
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'patch-lockfile-deletion
|
(add-after 'unpack 'patch-paths
|
||||||
(lambda rest
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
(substitute* "libdeja/tools/duplicity/DuplicityInstance.vala"
|
(let ((python (assoc-ref inputs "python")))
|
||||||
(("/bin/rm")
|
(substitute* '("libdeja/tools/duplicity/DuplicityInstance.vala"
|
||||||
(which "rm")))))
|
"libdeja/tests/scripts/instance-error.test")
|
||||||
(replace 'configure
|
(("/bin/rm")
|
||||||
(assoc-ref cmake:%standard-phases 'configure))
|
(which "rm")))
|
||||||
(delete 'check) ;; Fails due to issues with DBus
|
(substitute* "libdeja/tests/runner.vala"
|
||||||
(add-after 'install 'wrap-deja-dup
|
(("/bin/sh")
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(which "sh")))
|
||||||
(let ((python (assoc-ref inputs "python"))
|
(substitute* "libdeja/tests/scripts/instance-error.test"
|
||||||
(python-path (getenv "PYTHONPATH"))
|
(("`which python3`")
|
||||||
(duplicity (assoc-ref inputs "duplicity"))
|
(string-append python "/bin/python3"))))))
|
||||||
(out (assoc-ref outputs "out")))
|
(add-after 'unpack 'patch-libgpg-error
|
||||||
(for-each
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
(lambda (program)
|
(let ((libgpg-error (assoc-ref inputs "libgpg-error")))
|
||||||
(wrap-program program
|
(substitute* "meson.build"
|
||||||
`("PATH" ":" prefix (,(string-append python "/bin")
|
(("(gpgerror_libs = ).*" _ var)
|
||||||
,(string-append duplicity "/bin"))))
|
(format #f "~a '-L~a/lib -lgpg-error'\n" var libgpg-error))))
|
||||||
(wrap-program program
|
#t))
|
||||||
`("PYTHONPATH" ":" prefix (,python-path))))
|
(add-after 'unpack 'skip-gtk-update-icon-cache
|
||||||
|
;; Don't create 'icon-theme.cache'.
|
||||||
(find-files (string-append out "/bin")))
|
(lambda _
|
||||||
#t))))))
|
(substitute* "data/post-install.sh"
|
||||||
|
(("gtk-update-icon-cache") "true"))
|
||||||
|
#t)))))
|
||||||
(inputs
|
(inputs
|
||||||
`(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
|
`(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
|
||||||
("gobject-introspection" ,gobject-introspection)
|
|
||||||
("duplicity" ,duplicity)
|
("duplicity" ,duplicity)
|
||||||
("python" ,python-2)
|
("python" ,python)
|
||||||
("python-pygobject" ,python2-pygobject)
|
("python-pygobject" ,python-pygobject)
|
||||||
("gtk+" ,gtk+)
|
("gtk+" ,gtk+)
|
||||||
|
("json-glib" ,json-glib)
|
||||||
("libnotify" ,libnotify)
|
("libnotify" ,libnotify)
|
||||||
("libpeas" ,libpeas)
|
("libgpg-error" ,libgpg-error)
|
||||||
("libsecret" ,libsecret)
|
("libsecret" ,libsecret)
|
||||||
|
("libsoup" ,libsoup)
|
||||||
("packagekit" ,packagekit)))
|
("packagekit" ,packagekit)))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("pkg-config" ,pkg-config)
|
`(("appstream-glib" ,appstream-glib)
|
||||||
("vala" ,vala)
|
("desktop-file-utils" ,desktop-file-utils)
|
||||||
("gettext" ,gettext-minimal)
|
("gettext" ,gettext-minimal)
|
||||||
|
("glib" ,glib "bin") ; for glib-compile-schemas.
|
||||||
|
("gobject-introspection" ,gobject-introspection)
|
||||||
("itstool" ,itstool)
|
("itstool" ,itstool)
|
||||||
("intltool" ,intltool)
|
("pkg-config" ,pkg-config)
|
||||||
("cmake" ,cmake-minimal)))
|
("vala" ,vala)))
|
||||||
(home-page "https://launchpad.net/deja-dup")
|
(home-page "https://wiki.gnome.org/Apps/DejaDup")
|
||||||
(synopsis "Simple backup tool, for regular encrypted backups")
|
(synopsis "Simple backup tool, for regular encrypted backups")
|
||||||
(description
|
(description
|
||||||
"Déjà Dup is a simple backup tool, for regular encrypted backups. It
|
"Déjà Dup is a simple backup tool, for regular encrypted backups. It
|
||||||
|
|
|
@ -1,41 +0,0 @@
|
||||||
From 5676766be5e845ccb6cdf46cfa8722497f151752 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jeremy Bicha <jbicha@ubuntu.com>
|
|
||||||
Date: Fri, 16 Jun 2017 15:11:37 -0400
|
|
||||||
Subject: Use 'ref' keyword for iter, requires vala 0.36
|
|
||||||
|
|
||||||
|
|
||||||
diff --git a/deja-dup/widgets/ConfigList.vala b/deja-dup/widgets/ConfigList.vala
|
|
||||||
index 15de2d6..02cd81a 100644
|
|
||||||
--- a/deja-dup/widgets/ConfigList.vala
|
|
||||||
+++ b/deja-dup/widgets/ConfigList.vala
|
|
||||||
@@ -333,7 +333,7 @@ public class ConfigList : ConfigWidget
|
|
||||||
|
|
||||||
model.row_deleted.disconnect(write_to_config);
|
|
||||||
foreach (Gtk.TreeIter iter in iters) {
|
|
||||||
- (model as Gtk.ListStore).remove(iter);
|
|
||||||
+ (model as Gtk.ListStore).remove(ref iter);
|
|
||||||
}
|
|
||||||
model.row_deleted.connect(write_to_config);
|
|
||||||
|
|
||||||
diff --git a/deja-dup/widgets/ConfigLocation.vala b/deja-dup/widgets/ConfigLocation.vala
|
|
||||||
index 869e2a8..d21c556 100644
|
|
||||||
--- a/deja-dup/widgets/ConfigLocation.vala
|
|
||||||
+++ b/deja-dup/widgets/ConfigLocation.vala
|
|
||||||
@@ -397,12 +397,12 @@ public class ConfigLocation : ConfigWidget
|
|
||||||
if (uuid == saved_uuid)
|
|
||||||
return;
|
|
||||||
|
|
||||||
- store.remove(iter);
|
|
||||||
+ store.remove(ref iter);
|
|
||||||
|
|
||||||
if (--num_volumes == 0) {
|
|
||||||
Gtk.TreeIter sep_iter;
|
|
||||||
if (store.get_iter_from_string(out sep_iter, index_vol_sep.to_string())) {
|
|
||||||
- store.remove(sep_iter);
|
|
||||||
+ store.remove(ref sep_iter);
|
|
||||||
index_vol_sep = -2;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
--
|
|
||||||
cgit v0.10.2
|
|
||||||
|
|
Reference in New Issue