summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorMaciek Borzecki2020-06-08 12:40:31 +0200
committerMaciek Borzecki2020-06-08 12:40:31 +0200
commitd047ca98e2dc4278a61363a5f1e36b36fa715906 (patch)
tree3060bc83e452f0af706211308c714812b538281f
parentb94f8f2e1332c9d89fb7ffbd4679c9c0a805ad5a (diff)
downloadaur-d047ca98e2dc4278a61363a5f1e36b36fa715906.tar.gz
upgpkg: snapd 2.45.1-1
upstream release Signed-off-by: Maciek Borzecki <maciek.borzecki@gmail.com>
-rw-r--r--.SRCINFO12
-rw-r--r--0001-fontconfig-compat.patch209
-rw-r--r--0002-zsh-completion.patch409
-rw-r--r--PKGBUILD12
4 files changed, 8 insertions, 634 deletions
diff --git a/.SRCINFO b/.SRCINFO
index c5b7983bac47..ae3d60dd50d4 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = snapd
pkgdesc = Service and tools for management of snap packages.
- pkgver = 2.45
- pkgrel = 3
+ pkgver = 2.45.1
+ pkgrel = 1
url = https://github.com/snapcore/snapd
install = snapd.install
arch = x86_64
@@ -27,12 +27,8 @@ pkgbase = snapd
conflicts = snap-confine
options = !strip
options = emptydirs
- source = snapd-2.45.tar.xz::https://github.com/snapcore/snapd/releases/download/2.45/snapd_2.45.vendor.tar.xz
- source = 0001-fontconfig-compat.patch
- source = 0002-zsh-completion.patch
- sha256sums = 54399873d874d3797784ff685e2b21840751d77ccfada6292b34060d58ee4256
- sha256sums = ceb4592363a5b56a1fa118b96764fc24e477f8e2bf727331ce7d726bf36ab9e3
- sha256sums = c9f40bb1e1b9aa7f3cbf3431a910e0da38cdf467de160870f75ad03e4a3ebb17
+ source = snapd-2.45.1.tar.xz::https://github.com/snapcore/snapd/releases/download/2.45.1/snapd_2.45.1.vendor.tar.xz
+ sha256sums = 9e289f3dd1c73b651c27fc3b6b2339660335c6c5c9261ef0fa2975c1c849bf66
pkgname = snapd
diff --git a/0001-fontconfig-compat.patch b/0001-fontconfig-compat.patch
deleted file mode 100644
index 1ca34af046bd..000000000000
--- a/0001-fontconfig-compat.patch
+++ /dev/null
@@ -1,209 +0,0 @@
-From 0f8dfa23744150b2aa91f6bd169b871308ecb43f Mon Sep 17 00:00:00 2001
-Message-Id: <0f8dfa23744150b2aa91f6bd169b871308ecb43f.1589805773.git.maciej.zenon.borzecki@canonical.com>
-In-Reply-To: <cover.1589805773.git.maciej.zenon.borzecki@canonical.com>
-References: <cover.1589805773.git.maciej.zenon.borzecki@canonical.com>
-From: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
-Date: Wed, 6 May 2020 10:45:38 +0200
-Subject: [PATCH 1/3] interfaces/builtin/desktop: do not mount fonts cache on
- distros with quirks
-
-There is a problem with compatibility of fontconfig cache files generated across
-different versions of the fontconfig library. The cache files appear to be using
-the same format, but when loaded by an older version of the library, they cause
-instability, bad font rendering or plain segfaults.
-
-The following versions of packages present on specific distros are known to
-generate incompatible cache files:
-
-- Arch: fontconfig 2:2.13.91+24+g75eadca-2
-- Fedora 32: fontconfig-2.13.92-9.fc32.x86_64
-
-More information is provided in the following post:
-https://forum.snapcraft.io/t/snapped-app-not-loading-fonts-on-fedora-and-arch/12484/32
-A bisect identified this commit where the problem first occurred:
-https://gitlab.freedesktop.org/fontconfig/fontconfig/commit/0f9bbbcf8f6f8264efb0a2ded4d8d05f3b10f7a4
-
-Until we work out a better solution, disable the fonts cache on distros that are
-known to cause issues. This comes at the potential cost of slightly longer
-application startup times, but a working app is better than a segfaulting one.
-
-Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
----
- interfaces/builtin/desktop.go | 13 ++++++++
- interfaces/builtin/desktop_test.go | 52 +++++++++++++++++-------------
- 2 files changed, 42 insertions(+), 23 deletions(-)
-
-diff --git a/interfaces/builtin/desktop.go b/interfaces/builtin/desktop.go
-index 05a97251f7fcad66a356ea7d77690dcb02f724d1..8e18a4fc4409e957b51f0763dc791c8e54eec09e 100644
---- a/interfaces/builtin/desktop.go
-+++ b/interfaces/builtin/desktop.go
-@@ -26,6 +26,7 @@ import (
- "github.com/snapcore/snapd/interfaces/mount"
- "github.com/snapcore/snapd/osutil"
- "github.com/snapcore/snapd/release"
-+ "github.com/snapcore/snapd/strutil"
- )
-
- const desktopSummary = `allows access to basic graphical desktop resources`
-@@ -288,6 +289,18 @@ func (iface *desktopInterface) MountConnectedPlug(spec *mount.Specification, plu
- if !osutil.IsDirectory(dir) {
- continue
- }
-+ if release.DistroLike("arch", "fedora") {
-+ // XXX: on Arch and Fedora 32+ there is a known
-+ // incompatibility between the binary fonts cache files
-+ // and ones expected by desktop snaps; even though the
-+ // cache format level is same for both, the host
-+ // generated cache files cause instability, segfaults or
-+ // incorrect rendering of fonts, for this reason do not
-+ // mount the cache directories on those distributions
-+ if strutil.ListContains(dirs.SystemFontconfigCacheDirs, dir) {
-+ continue
-+ }
-+ }
- // Since /etc/fonts/fonts.conf in the snap mount ns is the same
- // as on the host, we need to preserve the original directory
- // paths for the fontconfig runtime to poke the correct
-diff --git a/interfaces/builtin/desktop_test.go b/interfaces/builtin/desktop_test.go
-index d30af78ddea39f874eb2f4d8b765c82adab6872b..e0f995fd7633b06f81d4439c700fab34a59264d5 100644
---- a/interfaces/builtin/desktop_test.go
-+++ b/interfaces/builtin/desktop_test.go
-@@ -154,6 +154,8 @@ func (s *DesktopInterfaceSuite) TestMountSpec(c *C) {
- // are bind mounted from the host system if they exist.
- restore = release.MockOnClassic(true)
- defer restore()
-+ restore = release.MockReleaseInfo(&release.OS{ID: "ubuntu"})
-+ defer restore()
- spec = &mount.Specification{}
- c.Assert(spec.AddConnectedPlug(s.iface, s.plug, s.coreSlot), IsNil)
-
-@@ -177,29 +179,33 @@ func (s *DesktopInterfaceSuite) TestMountSpec(c *C) {
- c.Assert(entries, HasLen, 1)
- c.Check(entries[0].Dir, Equals, "$XDG_RUNTIME_DIR/doc")
-
-- // Fedora is a little special with their fontconfig cache location(s)
-- restore = release.MockReleaseInfo(&release.OS{ID: "fedora"})
-- defer restore()
--
-- tmpdir = c.MkDir()
-- dirs.SetRootDir(tmpdir)
-- c.Assert(dirs.SystemFontconfigCacheDirs, DeepEquals, []string{filepath.Join(tmpdir, "/var/cache/fontconfig"), filepath.Join(tmpdir, "/usr/lib/fontconfig/cache")})
-- c.Assert(os.MkdirAll(filepath.Join(tmpdir, "/usr/share/fonts"), 0777), IsNil)
-- c.Assert(os.MkdirAll(filepath.Join(tmpdir, "/usr/local/share/fonts"), 0777), IsNil)
-- c.Assert(os.MkdirAll(filepath.Join(tmpdir, "/usr/lib/fontconfig/cache"), 0777), IsNil)
-- c.Assert(os.MkdirAll(filepath.Join(tmpdir, "/var/cache/fontconfig"), 0777), IsNil)
-- spec = &mount.Specification{}
-- c.Assert(spec.AddConnectedPlug(s.iface, s.plug, s.coreSlot), IsNil)
-- entries = spec.MountEntries()
-- c.Assert(entries, HasLen, 4)
--
-- c.Check(entries[2].Name, Equals, hostfs+dirs.SystemFontconfigCacheDirs[0])
-- c.Check(entries[2].Dir, Equals, "/var/cache/fontconfig")
-- c.Check(entries[2].Options, DeepEquals, []string{"bind", "ro"})
--
-- c.Check(entries[3].Name, Equals, hostfs+dirs.SystemFontconfigCacheDirs[1])
-- c.Check(entries[3].Dir, Equals, "/usr/lib/fontconfig/cache")
-- c.Check(entries[3].Options, DeepEquals, []string{"bind", "ro"})
-+ for _, distroWithQuirks := range []string{"fedora", "arch"} {
-+ restore = release.MockReleaseInfo(&release.OS{ID: distroWithQuirks})
-+ defer restore()
-+
-+ tmpdir = c.MkDir()
-+ dirs.SetRootDir(tmpdir)
-+ if distroWithQuirks == "fedora" {
-+ // Fedora is a little special with their fontconfig cache location(s) and how we handle them
-+ c.Assert(dirs.SystemFontconfigCacheDirs, DeepEquals, []string{filepath.Join(tmpdir, "/var/cache/fontconfig"), filepath.Join(tmpdir, "/usr/lib/fontconfig/cache")})
-+ } else {
-+ c.Assert(dirs.SystemFontconfigCacheDirs, DeepEquals, []string{filepath.Join(tmpdir, "/var/cache/fontconfig")})
-+ }
-+ c.Assert(os.MkdirAll(filepath.Join(tmpdir, "/usr/share/fonts"), 0777), IsNil)
-+ c.Assert(os.MkdirAll(filepath.Join(tmpdir, "/usr/local/share/fonts"), 0777), IsNil)
-+ c.Assert(os.MkdirAll(filepath.Join(tmpdir, "/usr/lib/fontconfig/cache"), 0777), IsNil)
-+ c.Assert(os.MkdirAll(filepath.Join(tmpdir, "/var/cache/fontconfig"), 0777), IsNil)
-+ spec = &mount.Specification{}
-+ c.Assert(spec.AddConnectedPlug(s.iface, s.plug, s.coreSlot), IsNil)
-+ entries = spec.MountEntries()
-+ c.Assert(entries, HasLen, 2)
-+
-+ for _, en := range entries {
-+ if en.Dir == "/var/cache/fontconfig" || en.Dir == "/usr/lib/fontconfig/cache" {
-+ c.Fatalf("unpexected cache mount entry: %q", en.Dir)
-+ }
-+ }
-+ }
- }
-
- func (s *DesktopInterfaceSuite) TestStaticInfo(c *C) {
---
-2.26.2
-
-From b1183c5ed448e61f7da7ec518682a00ca4cb9161 Mon Sep 17 00:00:00 2001
-Message-Id: <b1183c5ed448e61f7da7ec518682a00ca4cb9161.1589805773.git.maciej.zenon.borzecki@canonical.com>
-In-Reply-To: <cover.1589805773.git.maciej.zenon.borzecki@canonical.com>
-References: <cover.1589805773.git.maciej.zenon.borzecki@canonical.com>
-From: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
-Date: Wed, 6 May 2020 15:39:48 +0200
-Subject: [PATCH 2/3] interfaces/builtin/desktop: mention the fonts bug report
- in comments
-
-Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
----
- interfaces/builtin/desktop.go | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/interfaces/builtin/desktop.go b/interfaces/builtin/desktop.go
-index 8e18a4fc4409e957b51f0763dc791c8e54eec09e..950c02c2463879bd997ddd5ff95f35051912b26a 100644
---- a/interfaces/builtin/desktop.go
-+++ b/interfaces/builtin/desktop.go
-@@ -296,7 +296,8 @@ func (iface *desktopInterface) MountConnectedPlug(spec *mount.Specification, plu
- // cache format level is same for both, the host
- // generated cache files cause instability, segfaults or
- // incorrect rendering of fonts, for this reason do not
-- // mount the cache directories on those distributions
-+ // mount the cache directories on those distributions,
-+ // see https://bugs.launchpad.net/snapd/+bug/1877109
- if strutil.ListContains(dirs.SystemFontconfigCacheDirs, dir) {
- continue
- }
---
-2.26.2
-
-From c73b5879d78f10b16f7b3168948299dacd6da40c Mon Sep 17 00:00:00 2001
-Message-Id: <c73b5879d78f10b16f7b3168948299dacd6da40c.1589805773.git.maciej.zenon.borzecki@canonical.com>
-In-Reply-To: <cover.1589805773.git.maciej.zenon.borzecki@canonical.com>
-References: <cover.1589805773.git.maciej.zenon.borzecki@canonical.com>
-From: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
-Date: Wed, 6 May 2020 15:40:58 +0200
-Subject: [PATCH 3/3] tests/main/interfaces-desktop-host-fonts: update fonts
- cache test
-
-Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
----
- tests/main/interfaces-desktop-host-fonts/task.yaml | 11 ++++++++++-
- 1 file changed, 10 insertions(+), 1 deletion(-)
-
-diff --git a/tests/main/interfaces-desktop-host-fonts/task.yaml b/tests/main/interfaces-desktop-host-fonts/task.yaml
-index c61dbf83b37331537a8d2c36cff2c844330540f0..02f2aa120b80c71c80ed20c4ceb772e8df63cb9a 100644
---- a/tests/main/interfaces-desktop-host-fonts/task.yaml
-+++ b/tests/main/interfaces-desktop-host-fonts/task.yaml
-@@ -49,7 +49,16 @@ execute: |
- test-snapd-desktop.check-files /usr/local/share/fonts/local-font.txt | MATCH "Local font"
-
- echo "Checking access to host $cache_dir"
-- test-snapd-desktop.check-files "$cache_dir"/cache.txt | MATCH "Cache file"
-+ case "$SPREAD_SYSTEM" in
-+ fedora-*|centos-*|amazon-linux-*|arch-linux-*)
-+ # system fonts cache is inaccessible due to
-+ # https://bugs.launchpad.net/snapd/+bug/1877109
-+ test-snapd-desktop.sh -c "test ! -e $cache_dir/cache.txt"
-+ ;;
-+ *)
-+ test-snapd-desktop.check-files "$cache_dir"/cache.txt | MATCH "Cache file"
-+ ;;
-+ esac
-
- echo "Checking access to host ~/.fonts"
- test-snapd-desktop.check-files "$HOME"/.fonts/user-font1.txt | MATCH "User font 1"
---
-2.26.2
-
diff --git a/0002-zsh-completion.patch b/0002-zsh-completion.patch
deleted file mode 100644
index 035784e5870c..000000000000
--- a/0002-zsh-completion.patch
+++ /dev/null
@@ -1,409 +0,0 @@
-From 2eee3a3a05dc9246bc9ade54ef853ab1428c5f90 Mon Sep 17 00:00:00 2001
-Message-Id: <2eee3a3a05dc9246bc9ade54ef853ab1428c5f90.1589807334.git.maciej.zenon.borzecki@canonical.com>
-In-Reply-To: <cover.1589807334.git.maciej.zenon.borzecki@canonical.com>
-References: <cover.1589807334.git.maciej.zenon.borzecki@canonical.com>
-From: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
-Date: Wed, 29 Apr 2020 21:04:40 +0200
-Subject: [PATCH 1/4] data/completion: add completion for zsh
-
-Add completion function for snap command for zsh. Most of heavy lifting is done
-by go-flags and our completion helpers, this just glues everything together.
-
-Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
----
- data/completion/_snap | 59 +++++++++++++++++++++++++++++++++++++++++++
- 1 file changed, 59 insertions(+)
- create mode 100644 data/completion/_snap
-
-diff --git a/data/completion/_snap b/data/completion/_snap
-new file mode 100644
-index 0000000000000000000000000000000000000000..682ee0f089e0c0e2df02843029a6bcb1f5353946
---- /dev/null
-+++ b/data/completion/_snap
-@@ -0,0 +1,59 @@
-+#compdef snap
-+#
-+# Copyright (C) 2020 Canonical Ltd
-+#
-+# This program is free software: you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License version 3 as
-+# published by the Free Software Foundation.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program. If not, see <http://www.gnu.org/licenses/>.
-+
-+# group --style options and arguments separately, so that users can customize
-+# the presentation of available completion matches
-+_description options optexpl option
-+_description arguments argexpl argument
-+
-+if [[ ${#words[@]} -ge 2 ]]; then
-+ # keep track of the command for later reference
-+ local command="${words[2]}"
-+fi
-+
-+# get completion options with what we have so far
-+local matches=($(GO_FLAGS_COMPLETION=1 "${words[@]}"))
-+
-+local match
-+# we don't have a command yet, try to complete one first
-+if [[ "$command" == "" ]]; then
-+ for match in $matches; do compadd $optexpl[@] "$match"; done
-+ return 0
-+fi
-+
-+for match in $matches; do
-+ case "$match" in
-+ -*) compadd $optexpl[@] -- $match ;;
-+ *) compadd $argexpl[@] $match ;;
-+ esac
-+done
-+
-+# some commands take files/directories too
-+case "$command" in
-+ install)
-+ # include *.snap files
-+ _path_files -g "*.snap"
-+ ;;
-+ try)
-+ # limit matches to directories
-+ # TODO: only match directories with meta/snap.yaml inside
-+ _path_files -/
-+ ;;
-+ ack)
-+ # there are no rules about assertion file names
-+ _files
-+ ;;
-+esac
---
-2.26.2
-
-From 0b47c2d040ac99ddd8e2912090a63ad57e9a1658 Mon Sep 17 00:00:00 2001
-Message-Id: <0b47c2d040ac99ddd8e2912090a63ad57e9a1658.1589807334.git.maciej.zenon.borzecki@canonical.com>
-In-Reply-To: <cover.1589807334.git.maciej.zenon.borzecki@canonical.com>
-References: <cover.1589807334.git.maciej.zenon.borzecki@canonical.com>
-From: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
-Date: Wed, 29 Apr 2020 21:06:04 +0200
-Subject: [PATCH 2/4] packaging: install zsh completion files
-
-Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
----
- packaging/arch/PKGBUILD | 3 +++
- packaging/debian-sid/snapd.install | 2 ++
- packaging/fedora/snapd.spec | 7 +++++++
- packaging/opensuse/snapd.spec | 7 +++++++
- packaging/ubuntu-14.04/snapd.install | 2 ++
- packaging/ubuntu-16.04/snapd.install | 2 ++
- 6 files changed, 23 insertions(+)
-
-diff --git a/packaging/arch/PKGBUILD b/packaging/arch/PKGBUILD
-index e37ec70eb2b00b618219eb1efadd63b0e12ea322..4e2de2b33870412233bfa997f234cdf29e95ff79 100644
---- a/packaging/arch/PKGBUILD
-+++ b/packaging/arch/PKGBUILD
-@@ -125,6 +125,9 @@ package() {
- "$pkgdir/usr/lib/snapd/complete.sh"
- install -Dm644 data/completion/etelpmoc.sh \
- "$pkgdir/usr/lib/snapd/etelpmoc.sh"
-+ # Install zsh completion
-+ install -Dm644 data/completion/_snap \
-+ "$pkgdir/usr/share/zsh/site-functions/_snap"
-
- # Install systemd units, dbus services and a script for environment variables
- make -C data/ install \
-diff --git a/packaging/debian-sid/snapd.install b/packaging/debian-sid/snapd.install
-index 2ec10a240424cded2606dbafb474d3adceda1cd7..1d79725212498dbf38a46a7fc9bc01d7c237d4d7 100644
---- a/packaging/debian-sid/snapd.install
-+++ b/packaging/debian-sid/snapd.install
-@@ -10,6 +10,8 @@ usr/bin/snap-seccomp /usr/lib/snapd/
- data/completion/snap /usr/share/bash-completion/completions
- data/completion/complete.sh /usr/lib/snapd/
- data/completion/etelpmoc.sh /usr/lib/snapd/
-+# zsh completion
-+data/completion/_snap /usr/share/zsh/vendor-completions
- # snap/snapd version information
- data/info /usr/lib/snapd/
- # polkit actions
-diff --git a/packaging/fedora/snapd.spec b/packaging/fedora/snapd.spec
-index afbfaf9d36c2e187f780fecca9351ff8f61bd90a..5fe6dd0ff5b373e89200b9a76a018ae7a4e533bd 100644
---- a/packaging/fedora/snapd.spec
-+++ b/packaging/fedora/snapd.spec
-@@ -605,6 +605,9 @@ install -m 644 -D data/info %{buildroot}%{_libexecdir}/snapd/info
- install -m 644 -D data/completion/snap %{buildroot}%{_datadir}/bash-completion/completions/snap
- install -m 644 -D data/completion/complete.sh %{buildroot}%{_libexecdir}/snapd
- install -m 644 -D data/completion/etelpmoc.sh %{buildroot}%{_libexecdir}/snapd
-+# Install zsh completion for "snap"
-+install -d -p %{buildroot}%{_datadir}/zsh/site-functions
-+install -m 644 -D data/completion/_snap %{buildroot}%{_datadir}/zsh/site-functions/_snap
-
- # Install snap-confine
- pushd ./cmd
-@@ -740,6 +743,7 @@ popd
- %{_datadir}/bash-completion/completions/snap
- %{_libexecdir}/snapd/complete.sh
- %{_libexecdir}/snapd/etelpmoc.sh
-+%{_datadir}/zsh/site-functions/_snap
- %{_libexecdir}/snapd/snapd.run-from-snap
- %{_sysconfdir}/profile.d/snapd.sh
- %{_sysconfdir}/sudoers.d/99-snapd.conf
-@@ -782,6 +786,9 @@ popd
- %if %{with snap_symlink}
- /snap
- %endif
-+# this is typically owned by zsh, but we do not want to explicitly require zsh
-+%dir %{_datadir}/zsh
-+%dir %{_datadir}/zsh/site-functions
-
- %files -n snap-confine
- %doc cmd/snap-confine/PORTING
-diff --git a/packaging/opensuse/snapd.spec b/packaging/opensuse/snapd.spec
-index b4b87e72f4798c660003d5727bdd4d3ab5a7a364..30e4db867e10817f5e89ac4938340038985fcd88 100644
---- a/packaging/opensuse/snapd.spec
-+++ b/packaging/opensuse/snapd.spec
-@@ -297,6 +297,9 @@ install -m 644 -D %{indigo_srcdir}/data/info %{buildroot}%{_libexecdir}/snapd/in
- install -m 644 -D %{indigo_srcdir}/data/completion/snap %{buildroot}%{_datadir}/bash-completion/completions/snap
- install -m 644 -D %{indigo_srcdir}/data/completion/complete.sh %{buildroot}%{_libexecdir}/snapd
- install -m 644 -D %{indigo_srcdir}/data/completion/etelpmoc.sh %{buildroot}%{_libexecdir}/snapd
-+# Install zsh completion for "snap"
-+install -d -p %{buildroot}%{_datadir}/zsh/site-functions
-+install -m 644 -D %{indigo_srcdir}/data/completion/_snap %{buildroot}%{_datadir}/zsh/site-functions/_snap
-
- %verifyscript
- %verify_permissions -e %{_libexecdir}/snapd/snap-confine
-@@ -374,6 +377,9 @@ fi
- %dir %{_userunitdir}
- %dir %{snap_mount_dir}
- %dir %{snap_mount_dir}/bin
-+# this is typically owned by zsh, but we do not want to explicitly require zsh
-+%dir %{_datadir}/zsh
-+%dir %{_datadir}/zsh/site-functions
-
- # Ghost entries for things created at runtime
- %ghost %dir %{_localstatedir}/snap
-@@ -389,6 +395,7 @@ fi
- %{_bindir}/snapctl
- %{_datadir}/applications/snap-handle-link.desktop
- %{_datadir}/bash-completion/completions/snap
-+%{_datadir}/zsh/site-functions/_snap
- %{_datadir}/dbus-1/services/io.snapcraft.Launcher.service
- %{_datadir}/dbus-1/services/io.snapcraft.Settings.service
- %{_datadir}/polkit-1/actions/io.snapcraft.snapd.policy
-diff --git a/packaging/ubuntu-14.04/snapd.install b/packaging/ubuntu-14.04/snapd.install
-index a8e78dd8945411858e074327f692f9113f547562..dafd61b3478bad48da266fd88ab3f942f401aaee 100644
---- a/packaging/ubuntu-14.04/snapd.install
-+++ b/packaging/ubuntu-14.04/snapd.install
-@@ -13,6 +13,8 @@ usr/bin/snap-preseed /usr/lib/snapd/
- data/completion/snap /usr/share/bash-completion/completions
- data/completion/complete.sh /usr/lib/snapd/
- data/completion/etelpmoc.sh /usr/lib/snapd/
-+# zsh completion
-+data/completion/_snap /usr/share/zsh/vendor-completions
- # udev, must be installed before 80-udisks
- data/udev/rules.d/66-snapd-autoimport.rules /lib/udev/rules.d
- # snap/snapd version information
-diff --git a/packaging/ubuntu-16.04/snapd.install b/packaging/ubuntu-16.04/snapd.install
-index 98f9343f089a4a0865de7087d95e2cb1af792f91..20815f31b20f1c8e811bccbd9dfc99d3f7ad0d2f 100644
---- a/packaging/ubuntu-16.04/snapd.install
-+++ b/packaging/ubuntu-16.04/snapd.install
-@@ -15,6 +15,8 @@ usr/bin/snap-recovery-chooser /usr/lib/snapd/
- data/completion/snap /usr/share/bash-completion/completions
- data/completion/complete.sh /usr/lib/snapd/
- data/completion/etelpmoc.sh /usr/lib/snapd/
-+# zsh completion
-+data/completion/_snap /usr/share/zsh/vendor-completions
- # udev, must be installed before 80-udisks
- data/udev/rules.d/66-snapd-autoimport.rules /lib/udev/rules.d
- # snap/snapd version information
---
-2.26.2
-
-From 204b3ecc6d2c040c236399a222b393641572ce44 Mon Sep 17 00:00:00 2001
-Message-Id: <204b3ecc6d2c040c236399a222b393641572ce44.1589807334.git.maciej.zenon.borzecki@canonical.com>
-In-Reply-To: <cover.1589807334.git.maciej.zenon.borzecki@canonical.com>
-References: <cover.1589807334.git.maciej.zenon.borzecki@canonical.com>
-From: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
-Date: Tue, 5 May 2020 09:45:46 +0200
-Subject: [PATCH 3/4] data: move bash/zsh completion support to separate
- directories
-
-Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
----
- data/completion/{ => bash}/complete.sh | 0
- data/completion/{ => bash}/etelpmoc.sh | 0
- data/completion/{ => bash}/snap | 0
- data/completion/{ => zsh}/_snap | 0
- 4 files changed, 0 insertions(+), 0 deletions(-)
- rename data/completion/{ => bash}/complete.sh (100%)
- rename data/completion/{ => bash}/etelpmoc.sh (100%)
- rename data/completion/{ => bash}/snap (100%)
- rename data/completion/{ => zsh}/_snap (100%)
-
-diff --git a/data/completion/complete.sh b/data/completion/bash/complete.sh
-similarity index 100%
-rename from data/completion/complete.sh
-rename to data/completion/bash/complete.sh
-diff --git a/data/completion/etelpmoc.sh b/data/completion/bash/etelpmoc.sh
-similarity index 100%
-rename from data/completion/etelpmoc.sh
-rename to data/completion/bash/etelpmoc.sh
-diff --git a/data/completion/snap b/data/completion/bash/snap
-similarity index 100%
-rename from data/completion/snap
-rename to data/completion/bash/snap
-diff --git a/data/completion/_snap b/data/completion/zsh/_snap
-similarity index 100%
-rename from data/completion/_snap
-rename to data/completion/zsh/_snap
---
-2.26.2
-
-From 5545181ef2b0aa0cce1bfeeb6c8d327a01cd83f1 Mon Sep 17 00:00:00 2001
-Message-Id: <5545181ef2b0aa0cce1bfeeb6c8d327a01cd83f1.1589807334.git.maciej.zenon.borzecki@canonical.com>
-In-Reply-To: <cover.1589807334.git.maciej.zenon.borzecki@canonical.com>
-References: <cover.1589807334.git.maciej.zenon.borzecki@canonical.com>
-From: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
-Date: Tue, 5 May 2020 09:46:08 +0200
-Subject: [PATCH 4/4] packaging: update completion support locations
-
-Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
----
- packaging/arch/PKGBUILD | 8 ++++----
- packaging/debian-sid/snapd.install | 8 ++++----
- packaging/fedora/snapd.spec | 8 ++++----
- packaging/opensuse/snapd.spec | 8 ++++----
- packaging/ubuntu-14.04/snapd.install | 8 ++++----
- packaging/ubuntu-16.04/snapd.install | 8 ++++----
- 6 files changed, 24 insertions(+), 24 deletions(-)
-
-diff --git a/packaging/arch/PKGBUILD b/packaging/arch/PKGBUILD
-index 4e2de2b33870412233bfa997f234cdf29e95ff79..91c7067942c4259be498996b99d9a7b77e568a12 100644
---- a/packaging/arch/PKGBUILD
-+++ b/packaging/arch/PKGBUILD
-@@ -119,14 +119,14 @@ package() {
- export GOPATH="$srcdir/go"
-
- # Install bash completion
-- install -Dm644 data/completion/snap \
-+ install -Dm644 data/completion/bash/snap \
- "$pkgdir/usr/share/bash-completion/completions/snap"
-- install -Dm644 data/completion/complete.sh \
-+ install -Dm644 data/completion/bash/complete.sh \
- "$pkgdir/usr/lib/snapd/complete.sh"
-- install -Dm644 data/completion/etelpmoc.sh \
-+ install -Dm644 data/completion/bash/etelpmoc.sh \
- "$pkgdir/usr/lib/snapd/etelpmoc.sh"
- # Install zsh completion
-- install -Dm644 data/completion/_snap \
-+ install -Dm644 data/completion/zsh/_snap \
- "$pkgdir/usr/share/zsh/site-functions/_snap"
-
- # Install systemd units, dbus services and a script for environment variables
-diff --git a/packaging/debian-sid/snapd.install b/packaging/debian-sid/snapd.install
-index 1d79725212498dbf38a46a7fc9bc01d7c237d4d7..3afdd39fec57ebc9cc7ba8616e4fa2e2e3c3cf35 100644
---- a/packaging/debian-sid/snapd.install
-+++ b/packaging/debian-sid/snapd.install
-@@ -7,11 +7,11 @@ usr/bin/snapd /usr/lib/snapd/
- usr/bin/snap-seccomp /usr/lib/snapd/
-
- # bash completion
--data/completion/snap /usr/share/bash-completion/completions
--data/completion/complete.sh /usr/lib/snapd/
--data/completion/etelpmoc.sh /usr/lib/snapd/
-+data/completion/bash/snap /usr/share/bash-completion/completions
-+data/completion/bash/complete.sh /usr/lib/snapd/
-+data/completion/bash/etelpmoc.sh /usr/lib/snapd/
- # zsh completion
--data/completion/_snap /usr/share/zsh/vendor-completions
-+data/completion/zsh/_snap /usr/share/zsh/vendor-completions
- # snap/snapd version information
- data/info /usr/lib/snapd/
- # polkit actions
-diff --git a/packaging/fedora/snapd.spec b/packaging/fedora/snapd.spec
-index 5fe6dd0ff5b373e89200b9a76a018ae7a4e533bd..190c8da62bf8786b147c0c48617c259c97c72845 100644
---- a/packaging/fedora/snapd.spec
-+++ b/packaging/fedora/snapd.spec
-@@ -602,12 +602,12 @@ bin/snap help --man > %{buildroot}%{_mandir}/man8/snap.8
- install -m 644 -D data/info %{buildroot}%{_libexecdir}/snapd/info
-
- # Install bash completion for "snap"
--install -m 644 -D data/completion/snap %{buildroot}%{_datadir}/bash-completion/completions/snap
--install -m 644 -D data/completion/complete.sh %{buildroot}%{_libexecdir}/snapd
--install -m 644 -D data/completion/etelpmoc.sh %{buildroot}%{_libexecdir}/snapd
-+install -m 644 -D data/completion/bash/snap %{buildroot}%{_datadir}/bash-completion/completions/snap
-+install -m 644 -D data/completion/bash/complete.sh %{buildroot}%{_libexecdir}/snapd
-+install -m 644 -D data/completion/bash/etelpmoc.sh %{buildroot}%{_libexecdir}/snapd
- # Install zsh completion for "snap"
- install -d -p %{buildroot}%{_datadir}/zsh/site-functions
--install -m 644 -D data/completion/_snap %{buildroot}%{_datadir}/zsh/site-functions/_snap
-+install -m 644 -D data/completion/zsh/_snap %{buildroot}%{_datadir}/zsh/site-functions/_snap
-
- # Install snap-confine
- pushd ./cmd
-diff --git a/packaging/opensuse/snapd.spec b/packaging/opensuse/snapd.spec
-index 30e4db867e10817f5e89ac4938340038985fcd88..7cf2ea76b43e3755349fbc74a75aa461d9f94c96 100644
---- a/packaging/opensuse/snapd.spec
-+++ b/packaging/opensuse/snapd.spec
-@@ -294,12 +294,12 @@ install -m 644 -D %{indigo_srcdir}/data/info %{buildroot}%{_libexecdir}/snapd/in
-
- # Install bash completion for "snap"
- # TODO: This should be handled by data makefile.
--install -m 644 -D %{indigo_srcdir}/data/completion/snap %{buildroot}%{_datadir}/bash-completion/completions/snap
--install -m 644 -D %{indigo_srcdir}/data/completion/complete.sh %{buildroot}%{_libexecdir}/snapd
--install -m 644 -D %{indigo_srcdir}/data/completion/etelpmoc.sh %{buildroot}%{_libexecdir}/snapd
-+install -m 644 -D %{indigo_srcdir}/data/completion/bash/snap %{buildroot}%{_datadir}/bash-completion/completions/snap
-+install -m 644 -D %{indigo_srcdir}/data/completion/bash/complete.sh %{buildroot}%{_libexecdir}/snapd
-+install -m 644 -D %{indigo_srcdir}/data/completion/bash/etelpmoc.sh %{buildroot}%{_libexecdir}/snapd
- # Install zsh completion for "snap"
- install -d -p %{buildroot}%{_datadir}/zsh/site-functions
--install -m 644 -D %{indigo_srcdir}/data/completion/_snap %{buildroot}%{_datadir}/zsh/site-functions/_snap
-+install -m 644 -D %{indigo_srcdir}/data/completion/zsh/_snap %{buildroot}%{_datadir}/zsh/site-functions/_snap
-
- %verifyscript
- %verify_permissions -e %{_libexecdir}/snapd/snap-confine
-diff --git a/packaging/ubuntu-14.04/snapd.install b/packaging/ubuntu-14.04/snapd.install
-index dafd61b3478bad48da266fd88ab3f942f401aaee..855650c06354675a7253253010c4ced366eb51cb 100644
---- a/packaging/ubuntu-14.04/snapd.install
-+++ b/packaging/ubuntu-14.04/snapd.install
-@@ -10,11 +10,11 @@ usr/bin/snap-seccomp /usr/lib/snapd/
- usr/bin/snap-preseed /usr/lib/snapd/
-
- # bash completion
--data/completion/snap /usr/share/bash-completion/completions
--data/completion/complete.sh /usr/lib/snapd/
--data/completion/etelpmoc.sh /usr/lib/snapd/
-+data/completion/bash/snap /usr/share/bash-completion/completions
-+data/completion/bash/complete.sh /usr/lib/snapd/
-+data/completion/bash/etelpmoc.sh /usr/lib/snapd/
- # zsh completion
--data/completion/_snap /usr/share/zsh/vendor-completions
-+data/completion/zsh/_snap /usr/share/zsh/vendor-completions
- # udev, must be installed before 80-udisks
- data/udev/rules.d/66-snapd-autoimport.rules /lib/udev/rules.d
- # snap/snapd version information
-diff --git a/packaging/ubuntu-16.04/snapd.install b/packaging/ubuntu-16.04/snapd.install
-index 20815f31b20f1c8e811bccbd9dfc99d3f7ad0d2f..9c80c2da4d8af451514ad43b4112018f40662371 100644
---- a/packaging/ubuntu-16.04/snapd.install
-+++ b/packaging/ubuntu-16.04/snapd.install
-@@ -12,11 +12,11 @@ usr/bin/snap-preseed /usr/lib/snapd/
- usr/bin/snap-recovery-chooser /usr/lib/snapd/
-
- # bash completion
--data/completion/snap /usr/share/bash-completion/completions
--data/completion/complete.sh /usr/lib/snapd/
--data/completion/etelpmoc.sh /usr/lib/snapd/
-+data/completion/bash/snap /usr/share/bash-completion/completions
-+data/completion/bash/complete.sh /usr/lib/snapd/
-+data/completion/bash/etelpmoc.sh /usr/lib/snapd/
- # zsh completion
--data/completion/_snap /usr/share/zsh/vendor-completions
-+data/completion/zsh/_snap /usr/share/zsh/vendor-completions
- # udev, must be installed before 80-udisks
- data/udev/rules.d/66-snapd-autoimport.rules /lib/udev/rules.d
- # snap/snapd version information
---
-2.26.2
-
diff --git a/PKGBUILD b/PKGBUILD
index 464e48f410d9..21673b3ec66b 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -8,8 +8,8 @@ pkgdesc="Service and tools for management of snap packages."
depends=('squashfs-tools' 'libseccomp' 'libsystemd' 'apparmor')
optdepends=('bash-completion: bash completion support'
'xdg-desktop-portal: desktop integration')
-pkgver=2.45
-pkgrel=3
+pkgver=2.45.1
+pkgrel=1
arch=('x86_64' 'i686' 'armv7h' 'aarch64')
url="https://github.com/snapcore/snapd"
license=('GPL3')
@@ -19,12 +19,8 @@ options=('!strip' 'emptydirs')
install=snapd.install
# 0001-fontconfig-compat.patch: proposed upstream https://github.com/snapcore/snapd/pull/8604
# 0002-zsh-completion.patch: cherry-pick from upstream master
-source=("$pkgname-$pkgver.tar.xz::https://github.com/snapcore/${pkgname}/releases/download/${pkgver}/${pkgname}_${pkgver}.vendor.tar.xz"
- "0001-fontconfig-compat.patch"
- "0002-zsh-completion.patch")
-sha256sums=('54399873d874d3797784ff685e2b21840751d77ccfada6292b34060d58ee4256'
- 'ceb4592363a5b56a1fa118b96764fc24e477f8e2bf727331ce7d726bf36ab9e3'
- 'c9f40bb1e1b9aa7f3cbf3431a910e0da38cdf467de160870f75ad03e4a3ebb17')
+source=("$pkgname-$pkgver.tar.xz::https://github.com/snapcore/${pkgname}/releases/download/${pkgver}/${pkgname}_${pkgver}.vendor.tar.xz")
+sha256sums=('9e289f3dd1c73b651c27fc3b6b2339660335c6c5c9261ef0fa2975c1c849bf66')
_gourl=github.com/snapcore/snapd