diff options
Diffstat (limited to 'app-containers/snapd')
-rw-r--r-- | app-containers/snapd/Manifest | 7 | ||||
-rw-r--r-- | app-containers/snapd/metadata.xml | 6 | ||||
-rw-r--r-- | app-containers/snapd/snapd-2.58.ebuild (renamed from app-containers/snapd/snapd-2.53.4.ebuild) | 65 | ||||
-rw-r--r-- | app-containers/snapd/snapd-2.61.ebuild (renamed from app-containers/snapd/snapd-2.54.1.ebuild) | 71 | ||||
-rw-r--r-- | app-containers/snapd/snapd-2.63.ebuild (renamed from app-containers/snapd/snapd-2.54.2.ebuild) | 75 |
5 files changed, 109 insertions, 115 deletions
diff --git a/app-containers/snapd/Manifest b/app-containers/snapd/Manifest index 2b2e479e2c12..6ddc12332feb 100644 --- a/app-containers/snapd/Manifest +++ b/app-containers/snapd/Manifest @@ -1,3 +1,4 @@ -DIST snapd-2.53.4.tar.xz 4722696 BLAKE2B c4347db8d5a14b30f1e8811e9425dd7419dd2dcad02fc1cb6a51968cd7fa6a58da2b172c041de02202cbdba1072cb0a7a92d7f92def5c5dc1e253cbcbad86aae SHA512 0b4164d3c3c3ccc99b3fa1e25d9e7e3184a5f94deca5fd83bd6d4c7761b41d6ebd5fefd1e87432a5e18c716b3330b3991134f179e1b03326edd9511ebea4ef9a -DIST snapd-2.54.1.tar.xz 4818344 BLAKE2B 654d4d6a8f08dabeb6c10ea3639e1fc31b68720953bd1456695eb6c1275f260e2793e49c39c80571727fb74c954583b1a2188c461b415803210be59c57775292 SHA512 65e14c85ab62d601fa46a271ba4322531a72e7d8880833cd74daac682188808ebd8c730c1fa62dea07d8f20ba76d314f84f89b3e565eaf3ae509a569f3ee7305 -DIST snapd-2.54.2.tar.xz 4824508 BLAKE2B b893a08a61e7db059f0a7ccdf7de01a8b8e4de65fb93fd44c23cec7fd557db692421da09a8ba705e9a8e734606267419291abe5d4e7a12883a68270f66d5b833 SHA512 9aec3c126d82f5e4e17c69af922dfe4e4f17950bf308217fece5fd3816f083b26e42d672052a6e6573d7c7064ea75f168fe7771840c68a3eb85184d6a17df3bd +DIST snapd-2.58.tar.xz 6980916 BLAKE2B d3de507513db808fa4f85498b5c238de143f06660f1d677186c8c763b38643a2486e25b747977b3eb584619d79ea0a12e88dc5a909045a853c1d8f849f2c1638 SHA512 555915b8b4d9d2d91a3ba19e9e78cf6b19d9683a9f390ad225aa5876320cb8595b464d6133706c4923fc15fbe04ba2b65a47e403c9a2d8859adae827f8ec000a +DIST snapd-2.61.tar.xz 7626784 BLAKE2B d716e91df4702fbd415bb6204a4557f37afd3dce187e3bca33b12a2ac5a1b54d1c31473d1537a784f6cbbfaf213f676d1f1b29d716e8c5f45a785229c9f3e018 SHA512 2fd432d7ef2204535576e980de7060ad15a0b3610b25e0f41b630ae34e172f97460f0a38d9d456af08dd36c619e90119219788a49e56a69afc7fbf014fc1db22 +DIST snapd-2.63-bug-933073-GNU_SOURCE.patch 870 BLAKE2B acc2a9ec7ca16849736701b37e51f238be5700cf0cd40dac6493f126a48235ffc1f103096d546313d05a2262f8bdb6f84966cbb79c4cf3f5c1cdf4dfd5dc231e SHA512 5e4018d1972e18496666cf60c6e132f8655d8f0f4d6f8a77f9a7e5d2063b823f97a17bf26b562e6ab93ea32f081a90df6969a617e77114f37553a350f44f11fb +DIST snapd-2.63.tar.xz 7502152 BLAKE2B 8ae38699227b7f0e6b512526fc8857b3e50ed220ac95860c372ca0a4b26f5a034bd9309688217696444254e41cc70fe3a45c0bf026c84e5f950e7df8aebd47a0 SHA512 956ee142ab6cb5de522307f7844819c861b2831e22dab56f7bfca16ff7f947093f8a8727d49370cc000ed71f3af9c57cff9c4be93ebf199e8c631a152a68ec5b diff --git a/app-containers/snapd/metadata.xml b/app-containers/snapd/metadata.xml index 82446241f723..730665fd01eb 100644 --- a/app-containers/snapd/metadata.xml +++ b/app-containers/snapd/metadata.xml @@ -9,12 +9,6 @@ <remote-id type="github">snapcore/snapd</remote-id> </upstream> <use> - <flag name="apparmor"> - Enable AppArmor support. - </flag> - <flag name="cgroup-hybrid"> - Default to hybrid (legacy) cgroup hierarchy instead of unified (modern). - </flag> <flag name="forced-devmode"> Automatically disable application confinement if feature detection fails. </flag> diff --git a/app-containers/snapd/snapd-2.53.4.ebuild b/app-containers/snapd/snapd-2.58.ebuild index 3eb5f9353258..09043d528c25 100644 --- a/app-containers/snapd/snapd-2.53.4.ebuild +++ b/app-containers/snapd/snapd-2.58.ebuild @@ -1,24 +1,21 @@ -# Copyright 2020-2021 Gentoo Authors +# Copyright 2020-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -EGO_PN="github.com/snapcore/${PN}" -inherit autotools bash-completion-r1 golang-vcs-snapshot linux-info readme.gentoo-r1 systemd xdg-utils +inherit autotools bash-completion-r1 flag-o-matic go-module linux-info readme.gentoo-r1 systemd tmpfiles xdg-utils DESCRIPTION="Service and tools for management of snap packages" HOMEPAGE="http://snapcraft.io/" -MY_S="${S}/src/github.com/snapcore/${PN}" - SRC_URI="https://github.com/snapcore/${PN}/releases/download/${PV}/${PN}_${PV}.vendor.tar.xz -> ${P}.tar.xz" MY_PV=${PV} -KEYWORDS="~amd64" +KEYWORDS="amd64" LICENSE="GPL-3 Apache-2.0 BSD BSD-2 LGPL-3-with-linking-exception MIT" SLOT="0" -IUSE="apparmor +cgroup-hybrid +forced-devmode gtk kde systemd" -REQUIRED_USE="!forced-devmode? ( apparmor cgroup-hybrid ) systemd" +IUSE="apparmor +forced-devmode gtk kde systemd" +REQUIRED_USE="!forced-devmode? ( apparmor ) systemd" CONFIG_CHECK="~CGROUPS ~CGROUP_DEVICE @@ -40,7 +37,7 @@ RDEPEND=" ) dev-libs/glib virtual/libudev - systemd? ( sys-apps/systemd[cgroup-hybrid(+)?] ) + systemd? ( sys-apps/systemd ) sys-libs/libcap:= sys-fs/squashfs-tools[lzma]" @@ -61,26 +58,27 @@ pkg_setup() { CONFIG_CHECK+=" ~SECURITY_APPARMOR" fi linux-info_pkg_setup + + # Seems to have issues building with -O3, switch to -O2 + replace-flags -O3 -O2 } src_prepare() { default # Update apparmor profile to allow libtinfow.so* sed -i 's/libtinfo/libtinfo{,w}/' \ - "${MY_S}/cmd/snap-confine/snap-confine.apparmor.in" || die + "cmd/snap-confine/snap-confine.apparmor.in" || die if ! use forced-devmode; then sed -e 's#return !apparmorFull#if !apparmorFull {\n\t\tpanic("USE=forced-devmode is disabled")\n\t}\n\treturn false#' \ - -i "${MY_S}/sandbox/forcedevmode.go" || die - grep -q 'panic("USE=forced-devmode is disabled")' "${MY_S}/sandbox/forcedevmode.go" || die "failed to disable forced-devmode" + -i "sandbox/forcedevmode.go" || die + grep -q 'panic("USE=forced-devmode is disabled")' "sandbox/forcedevmode.go" || die "failed to disable forced-devmode" fi - sed -i 's:command -v git >/dev/null:false:' -i "${MY_S}/mkversion.sh" || die + sed -i 's:command -v git >/dev/null:false:' -i "mkversion.sh" || die - pushd "${MY_S}" >/dev/null || die ./mkversion.sh "${PV}" - popd >/dev/null || die - pushd "${MY_S}/cmd" >/dev/null || die + pushd "cmd" >/dev/null || die eautoreconf } @@ -97,7 +95,7 @@ src_configure() { export CGO_CPPFLAGS="${CPPFLAGS}" export CGO_CXXFLAGS="${CXXFLAGS}" - pushd "${MY_S}/cmd" >/dev/null || die + pushd "${S}/cmd" >/dev/null || die econf --libdir="${EPREFIX}/usr/lib" \ --libexecdir="${EPREFIX}/usr/lib/snapd" \ $(use_enable apparmor) \ @@ -107,34 +105,34 @@ src_configure() { src_compile() { export -n GOCACHE XDG_CACHE_HOME - export GO111MODULE=off GOBIN="${S}/bin" GOPATH="${S}" + export GOBIN="${S}/bin" local file - for file in "${MY_S}/po/"*.po; do + for file in "${S}/po/"*.po; do msgfmt "${file}" -o "${file%.po}.mo" || die done - emake -C "${MY_S}/data" "${SNAPD_MAKEARGS[@]}" + emake -C "${S}/data" "${SNAPD_MAKEARGS[@]}" local -a flags=(-buildmode=pie -ldflags "-s -linkmode external -extldflags '${LDFLAGS}'" -trimpath) local -a staticflags=(-buildmode=pie -ldflags "-s -linkmode external -extldflags '${LDFLAGS} -static'" -trimpath) local cmd - for cmd in snap snapd snap-bootstrap snap-failure snap-preseed snap-recovery-chooser snap-repair snap-seccomp; do - go build -o "${GOBIN}/${cmd}" "${flags[@]}" \ + for cmd in snap snapd snapd-apparmor snap-bootstrap snap-failure snap-preseed snap-recovery-chooser snap-repair snap-seccomp; do + go build ${GOFLAGS} -mod=vendor -o "${GOBIN}/${cmd}" "${flags[@]}" \ -v -x "github.com/snapcore/${PN}/cmd/${cmd}" [[ -e "${GOBIN}/${cmd}" ]] || die "failed to build ${cmd}" done for cmd in snapctl snap-exec snap-update-ns; do - go build -o "${GOBIN}/${cmd}" "${staticflags[@]}" \ + go build ${GOFLAGS} -mod=vendor -o "${GOBIN}/${cmd}" "${staticflags[@]}" \ -v -x "github.com/snapcore/${PN}/cmd/${cmd}" [[ -e "${GOBIN}/${cmd}" ]] || die "failed to build ${cmd}" done } src_install() { - emake -C "${MY_S}/data" install "${SNAPD_MAKEARGS[@]}" DESTDIR="${D}" - emake -C "${MY_S}/cmd" install "${SNAPD_MAKEARGS[@]}" DESTDIR="${D}" + emake -C "${S}/data" install "${SNAPD_MAKEARGS[@]}" DESTDIR="${D}" + emake -C "${S}/cmd" install "${SNAPD_MAKEARGS[@]}" DESTDIR="${D}" if use apparmor; then mv "${ED}/etc/apparmor.d/usr.lib.snapd.snap-confine"{,.real} || die @@ -147,20 +145,20 @@ src_install() { ln "${ED}/usr/bin/snapctl" "${ED}/usr/lib/snapd/snapctl" || die exeinto /usr/lib/snapd - doexe "${GOBIN}/"{snapd,snap-bootstrap,snap-failure,snap-exec,snap-preseed,snap-recovery-chooser,snap-repair,snap-seccomp,snap-update-ns} \ - "${MY_S}/"{cmd/snap-discard-ns/snap-discard-ns,cmd/snap-gdb-shim/snap-gdb-shim,cmd/snap-mgmt/snap-mgmt} \ - "${MY_S}/data/completion/bash/"{complete.sh,etelpmoc.sh,} + doexe "${GOBIN}/"{snapd,snapd-apparmor,snap-bootstrap,snap-failure,snap-exec,snap-preseed,snap-recovery-chooser,snap-repair,snap-seccomp,snap-update-ns} \ + "${S}/"{cmd/snap-discard-ns/snap-discard-ns,cmd/snap-gdb-shim/snap-gdb-shim,cmd/snap-mgmt/snap-mgmt} \ + "${S}/data/completion/bash/"{complete.sh,etelpmoc.sh,} - dobashcomp "${MY_S}/data/completion/bash/snap" + dobashcomp "${S}/data/completion/bash/snap" insinto /usr/share/zsh/site-functions - doins "${MY_S}/data/completion/zsh/_snap" + doins "${S}/data/completion/zsh/_snap" insinto "/usr/share/polkit-1/actions" - doins "${MY_S}/data/polkit/io.snapcraft.snapd.policy" + doins "${S}/data/polkit/io.snapcraft.snapd.policy" - dodoc "${MY_S}/packaging/ubuntu-16.04/changelog" - domo "${MY_S}/po/"*.mo + dodoc "${S}/packaging/ubuntu-16.04/changelog" + domo "${S}/po/"*.mo readme.gentoo_create_doc } @@ -168,6 +166,7 @@ src_install() { pkg_postinst() { readme.gentoo_print_elog xdg_desktop_database_update + tmpfiles_process snapd.conf if use apparmor && [[ -z ${ROOT} && -e /sys/kernel/security/apparmor/profiles && $(wc -l < /sys/kernel/security/apparmor/profiles) -gt 0 ]]; then diff --git a/app-containers/snapd/snapd-2.54.1.ebuild b/app-containers/snapd/snapd-2.61.ebuild index 3eb5f9353258..3acdd26301ec 100644 --- a/app-containers/snapd/snapd-2.54.1.ebuild +++ b/app-containers/snapd/snapd-2.61.ebuild @@ -1,24 +1,21 @@ -# Copyright 2020-2021 Gentoo Authors +# Copyright 2020-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 -EGO_PN="github.com/snapcore/${PN}" -inherit autotools bash-completion-r1 golang-vcs-snapshot linux-info readme.gentoo-r1 systemd xdg-utils +inherit autotools bash-completion-r1 flag-o-matic go-module linux-info readme.gentoo-r1 systemd tmpfiles xdg-utils DESCRIPTION="Service and tools for management of snap packages" HOMEPAGE="http://snapcraft.io/" -MY_S="${S}/src/github.com/snapcore/${PN}" - -SRC_URI="https://github.com/snapcore/${PN}/releases/download/${PV}/${PN}_${PV}.vendor.tar.xz -> ${P}.tar.xz" +SRC_URI="https://github.com/snapcore/snapd/releases/download/${PV}/snapd_${PV}.vendor.tar.xz -> ${P}.tar.xz" MY_PV=${PV} -KEYWORDS="~amd64" +KEYWORDS="amd64" LICENSE="GPL-3 Apache-2.0 BSD BSD-2 LGPL-3-with-linking-exception MIT" SLOT="0" -IUSE="apparmor +cgroup-hybrid +forced-devmode gtk kde systemd" -REQUIRED_USE="!forced-devmode? ( apparmor cgroup-hybrid ) systemd" +IUSE="apparmor +forced-devmode gtk kde systemd" +REQUIRED_USE="!forced-devmode? ( apparmor ) systemd" CONFIG_CHECK="~CGROUPS ~CGROUP_DEVICE @@ -40,9 +37,9 @@ RDEPEND=" ) dev-libs/glib virtual/libudev - systemd? ( sys-apps/systemd[cgroup-hybrid(+)?] ) + systemd? ( sys-apps/systemd ) sys-libs/libcap:= - sys-fs/squashfs-tools[lzma]" + sys-fs/squashfs-tools[lzma,lzo]" DEPEND="${RDEPEND}" @@ -61,26 +58,27 @@ pkg_setup() { CONFIG_CHECK+=" ~SECURITY_APPARMOR" fi linux-info_pkg_setup + + # Seems to have issues building with -O3, switch to -O2 + replace-flags -O3 -O2 } src_prepare() { default # Update apparmor profile to allow libtinfow.so* sed -i 's/libtinfo/libtinfo{,w}/' \ - "${MY_S}/cmd/snap-confine/snap-confine.apparmor.in" || die + "cmd/snap-confine/snap-confine.apparmor.in" || die if ! use forced-devmode; then sed -e 's#return !apparmorFull#if !apparmorFull {\n\t\tpanic("USE=forced-devmode is disabled")\n\t}\n\treturn false#' \ - -i "${MY_S}/sandbox/forcedevmode.go" || die - grep -q 'panic("USE=forced-devmode is disabled")' "${MY_S}/sandbox/forcedevmode.go" || die "failed to disable forced-devmode" + -i "sandbox/forcedevmode.go" || die + grep -q 'panic("USE=forced-devmode is disabled")' "sandbox/forcedevmode.go" || die "failed to disable forced-devmode" fi - sed -i 's:command -v git >/dev/null:false:' -i "${MY_S}/mkversion.sh" || die + sed -i 's:command -v git >/dev/null:false:' -i "mkversion.sh" || die - pushd "${MY_S}" >/dev/null || die ./mkversion.sh "${PV}" - popd >/dev/null || die - pushd "${MY_S}/cmd" >/dev/null || die + pushd "cmd" >/dev/null || die eautoreconf } @@ -97,7 +95,7 @@ src_configure() { export CGO_CPPFLAGS="${CPPFLAGS}" export CGO_CXXFLAGS="${CXXFLAGS}" - pushd "${MY_S}/cmd" >/dev/null || die + pushd "${S}/cmd" >/dev/null || die econf --libdir="${EPREFIX}/usr/lib" \ --libexecdir="${EPREFIX}/usr/lib/snapd" \ $(use_enable apparmor) \ @@ -107,34 +105,34 @@ src_configure() { src_compile() { export -n GOCACHE XDG_CACHE_HOME - export GO111MODULE=off GOBIN="${S}/bin" GOPATH="${S}" + export GOBIN="${S}/bin" local file - for file in "${MY_S}/po/"*.po; do + for file in "${S}/po/"*.po; do msgfmt "${file}" -o "${file%.po}.mo" || die done - emake -C "${MY_S}/data" "${SNAPD_MAKEARGS[@]}" + emake -C "${S}/data" "${SNAPD_MAKEARGS[@]}" local -a flags=(-buildmode=pie -ldflags "-s -linkmode external -extldflags '${LDFLAGS}'" -trimpath) local -a staticflags=(-buildmode=pie -ldflags "-s -linkmode external -extldflags '${LDFLAGS} -static'" -trimpath) local cmd - for cmd in snap snapd snap-bootstrap snap-failure snap-preseed snap-recovery-chooser snap-repair snap-seccomp; do - go build -o "${GOBIN}/${cmd}" "${flags[@]}" \ + for cmd in snap snapd snapd-apparmor snap-bootstrap snap-failure snap-preseed snap-recovery-chooser snap-repair snap-seccomp; do + go build ${GOFLAGS} -mod=vendor -o "${GOBIN}/${cmd}" "${flags[@]}" \ -v -x "github.com/snapcore/${PN}/cmd/${cmd}" [[ -e "${GOBIN}/${cmd}" ]] || die "failed to build ${cmd}" done for cmd in snapctl snap-exec snap-update-ns; do - go build -o "${GOBIN}/${cmd}" "${staticflags[@]}" \ + go build ${GOFLAGS} -mod=vendor -o "${GOBIN}/${cmd}" "${staticflags[@]}" \ -v -x "github.com/snapcore/${PN}/cmd/${cmd}" [[ -e "${GOBIN}/${cmd}" ]] || die "failed to build ${cmd}" done } src_install() { - emake -C "${MY_S}/data" install "${SNAPD_MAKEARGS[@]}" DESTDIR="${D}" - emake -C "${MY_S}/cmd" install "${SNAPD_MAKEARGS[@]}" DESTDIR="${D}" + emake -C "${S}/data" install "${SNAPD_MAKEARGS[@]}" DESTDIR="${D}" + emake -C "${S}/cmd" install "${SNAPD_MAKEARGS[@]}" DESTDIR="${D}" if use apparmor; then mv "${ED}/etc/apparmor.d/usr.lib.snapd.snap-confine"{,.real} || die @@ -147,20 +145,20 @@ src_install() { ln "${ED}/usr/bin/snapctl" "${ED}/usr/lib/snapd/snapctl" || die exeinto /usr/lib/snapd - doexe "${GOBIN}/"{snapd,snap-bootstrap,snap-failure,snap-exec,snap-preseed,snap-recovery-chooser,snap-repair,snap-seccomp,snap-update-ns} \ - "${MY_S}/"{cmd/snap-discard-ns/snap-discard-ns,cmd/snap-gdb-shim/snap-gdb-shim,cmd/snap-mgmt/snap-mgmt} \ - "${MY_S}/data/completion/bash/"{complete.sh,etelpmoc.sh,} + doexe "${GOBIN}/"{snapd,snapd-apparmor,snap-bootstrap,snap-failure,snap-exec,snap-preseed,snap-recovery-chooser,snap-repair,snap-seccomp,snap-update-ns} \ + "${S}/"{cmd/snap-discard-ns/snap-discard-ns,cmd/snap-gdb-shim/snap-gdb-shim,cmd/snap-mgmt/snap-mgmt} \ + "${S}/data/completion/bash/"{complete.sh,etelpmoc.sh,} - dobashcomp "${MY_S}/data/completion/bash/snap" + dobashcomp "${S}/data/completion/bash/snap" insinto /usr/share/zsh/site-functions - doins "${MY_S}/data/completion/zsh/_snap" + doins "${S}/data/completion/zsh/_snap" insinto "/usr/share/polkit-1/actions" - doins "${MY_S}/data/polkit/io.snapcraft.snapd.policy" + doins "${S}/data/polkit/io.snapcraft.snapd.policy" - dodoc "${MY_S}/packaging/ubuntu-16.04/changelog" - domo "${MY_S}/po/"*.mo + dodoc "${S}/packaging/ubuntu-16.04/changelog" + domo "${S}/po/"*.mo readme.gentoo_create_doc } @@ -168,6 +166,7 @@ src_install() { pkg_postinst() { readme.gentoo_print_elog xdg_desktop_database_update + tmpfiles_process snapd.conf if use apparmor && [[ -z ${ROOT} && -e /sys/kernel/security/apparmor/profiles && $(wc -l < /sys/kernel/security/apparmor/profiles) -gt 0 ]]; then diff --git a/app-containers/snapd/snapd-2.54.2.ebuild b/app-containers/snapd/snapd-2.63.ebuild index 6366a2d391fc..994f00213a29 100644 --- a/app-containers/snapd/snapd-2.54.2.ebuild +++ b/app-containers/snapd/snapd-2.63.ebuild @@ -1,24 +1,23 @@ -# Copyright 2020-2022 Gentoo Authors +# Copyright 2020-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 -EGO_PN="github.com/snapcore/${PN}" -inherit autotools bash-completion-r1 golang-vcs-snapshot linux-info readme.gentoo-r1 systemd xdg-utils +inherit autotools bash-completion-r1 flag-o-matic go-module linux-info readme.gentoo-r1 systemd tmpfiles xdg-utils DESCRIPTION="Service and tools for management of snap packages" HOMEPAGE="http://snapcraft.io/" -MY_S="${S}/src/github.com/snapcore/${PN}" - -SRC_URI="https://github.com/snapcore/${PN}/releases/download/${PV}/${PN}_${PV}.vendor.tar.xz -> ${P}.tar.xz" +SRC_URI="https://github.com/snapcore/snapd/releases/download/${PV}/snapd_${PV}.vendor.tar.xz -> ${P}.tar.xz" +SRC_URI+=" https://github.com/snapcore/snapd/commit/1b035da5d873518ee4be31dacb1191c77ce0b644.patch -> ${P}-bug-933073-GNU_SOURCE.patch" +PATCHES=("${DISTDIR}/${P}-bug-933073-GNU_SOURCE.patch") MY_PV=${PV} -KEYWORDS="~amd64" - LICENSE="GPL-3 Apache-2.0 BSD BSD-2 LGPL-3-with-linking-exception MIT" SLOT="0" -IUSE="apparmor +cgroup-hybrid +forced-devmode gtk kde systemd" -REQUIRED_USE="!forced-devmode? ( apparmor cgroup-hybrid ) systemd" +KEYWORDS="~amd64" + +IUSE="apparmor +forced-devmode gtk kde systemd" +REQUIRED_USE="!forced-devmode? ( apparmor ) systemd" CONFIG_CHECK="~CGROUPS ~CGROUP_DEVICE @@ -40,9 +39,9 @@ RDEPEND=" ) dev-libs/glib virtual/libudev - systemd? ( sys-apps/systemd[cgroup-hybrid(+)?] ) + systemd? ( sys-apps/systemd ) sys-libs/libcap:= - sys-fs/squashfs-tools[lzma]" + sys-fs/squashfs-tools[lzma,lzo]" DEPEND="${RDEPEND}" @@ -61,26 +60,27 @@ pkg_setup() { CONFIG_CHECK+=" ~SECURITY_APPARMOR" fi linux-info_pkg_setup + + # Seems to have issues building with -O3, switch to -O2 + replace-flags -O3 -O2 } src_prepare() { default # Update apparmor profile to allow libtinfow.so* sed -i 's/libtinfo/libtinfo{,w}/' \ - "${MY_S}/cmd/snap-confine/snap-confine.apparmor.in" || die + "cmd/snap-confine/snap-confine.apparmor.in" || die if ! use forced-devmode; then sed -e 's#return !apparmorFull#if !apparmorFull {\n\t\tpanic("USE=forced-devmode is disabled")\n\t}\n\treturn false#' \ - -i "${MY_S}/sandbox/forcedevmode.go" || die - grep -q 'panic("USE=forced-devmode is disabled")' "${MY_S}/sandbox/forcedevmode.go" || die "failed to disable forced-devmode" + -i "sandbox/forcedevmode.go" || die + grep -q 'panic("USE=forced-devmode is disabled")' "sandbox/forcedevmode.go" || die "failed to disable forced-devmode" fi - sed -i 's:command -v git >/dev/null:false:' -i "${MY_S}/mkversion.sh" || die + sed -i 's:command -v git >/dev/null:false:' -i "mkversion.sh" || die - pushd "${MY_S}" >/dev/null || die ./mkversion.sh "${PV}" - popd >/dev/null || die - pushd "${MY_S}/cmd" >/dev/null || die + pushd "cmd" >/dev/null || die eautoreconf } @@ -97,7 +97,7 @@ src_configure() { export CGO_CPPFLAGS="${CPPFLAGS}" export CGO_CXXFLAGS="${CXXFLAGS}" - pushd "${MY_S}/cmd" >/dev/null || die + pushd "${S}/cmd" >/dev/null || die econf --libdir="${EPREFIX}/usr/lib" \ --libexecdir="${EPREFIX}/usr/lib/snapd" \ $(use_enable apparmor) \ @@ -107,34 +107,34 @@ src_configure() { src_compile() { export -n GOCACHE XDG_CACHE_HOME - export GO111MODULE=off GOBIN="${S}/bin" GOPATH="${S}" + export GOBIN="${S}/bin" local file - for file in "${MY_S}/po/"*.po; do + for file in "${S}/po/"*.po; do msgfmt "${file}" -o "${file%.po}.mo" || die done - emake -C "${MY_S}/data" "${SNAPD_MAKEARGS[@]}" + emake -C "${S}/data" "${SNAPD_MAKEARGS[@]}" local -a flags=(-buildmode=pie -ldflags "-s -linkmode external -extldflags '${LDFLAGS}'" -trimpath) local -a staticflags=(-buildmode=pie -ldflags "-s -linkmode external -extldflags '${LDFLAGS} -static'" -trimpath) local cmd - for cmd in snap snapd snap-bootstrap snap-failure snap-preseed snap-recovery-chooser snap-repair snap-seccomp; do - go build -o "${GOBIN}/${cmd}" "${flags[@]}" \ + for cmd in snap snapd snapd-apparmor snap-bootstrap snap-failure snap-preseed snap-recovery-chooser snap-repair snap-seccomp; do + go build ${GOFLAGS} -mod=vendor -o "${GOBIN}/${cmd}" "${flags[@]}" \ -v -x "github.com/snapcore/${PN}/cmd/${cmd}" [[ -e "${GOBIN}/${cmd}" ]] || die "failed to build ${cmd}" done for cmd in snapctl snap-exec snap-update-ns; do - go build -o "${GOBIN}/${cmd}" "${staticflags[@]}" \ + go build ${GOFLAGS} -mod=vendor -o "${GOBIN}/${cmd}" "${staticflags[@]}" \ -v -x "github.com/snapcore/${PN}/cmd/${cmd}" [[ -e "${GOBIN}/${cmd}" ]] || die "failed to build ${cmd}" done } src_install() { - emake -C "${MY_S}/data" install "${SNAPD_MAKEARGS[@]}" DESTDIR="${D}" - emake -C "${MY_S}/cmd" install "${SNAPD_MAKEARGS[@]}" DESTDIR="${D}" + emake -C "${S}/data" install "${SNAPD_MAKEARGS[@]}" DESTDIR="${D}" + emake -C "${S}/cmd" install "${SNAPD_MAKEARGS[@]}" DESTDIR="${D}" if use apparmor; then mv "${ED}/etc/apparmor.d/usr.lib.snapd.snap-confine"{,.real} || die @@ -147,20 +147,20 @@ src_install() { ln "${ED}/usr/bin/snapctl" "${ED}/usr/lib/snapd/snapctl" || die exeinto /usr/lib/snapd - doexe "${GOBIN}/"{snapd,snap-bootstrap,snap-failure,snap-exec,snap-preseed,snap-recovery-chooser,snap-repair,snap-seccomp,snap-update-ns} \ - "${MY_S}/"{cmd/snap-discard-ns/snap-discard-ns,cmd/snap-gdb-shim/snap-gdb-shim,cmd/snap-mgmt/snap-mgmt} \ - "${MY_S}/data/completion/bash/"{complete.sh,etelpmoc.sh,} + doexe "${GOBIN}/"{snapd,snapd-apparmor,snap-bootstrap,snap-failure,snap-exec,snap-preseed,snap-recovery-chooser,snap-repair,snap-seccomp,snap-update-ns} \ + "${S}/"{cmd/snap-discard-ns/snap-discard-ns,cmd/snap-gdb-shim/snap-gdb-shim,cmd/snap-mgmt/snap-mgmt} \ + "${S}/data/completion/bash/"{complete.sh,etelpmoc.sh,} - dobashcomp "${MY_S}/data/completion/bash/snap" + dobashcomp "${S}/data/completion/bash/snap" insinto /usr/share/zsh/site-functions - doins "${MY_S}/data/completion/zsh/_snap" + doins "${S}/data/completion/zsh/_snap" insinto "/usr/share/polkit-1/actions" - doins "${MY_S}/data/polkit/io.snapcraft.snapd.policy" + doins "${S}/data/polkit/io.snapcraft.snapd.policy" - dodoc "${MY_S}/packaging/ubuntu-16.04/changelog" - domo "${MY_S}/po/"*.mo + dodoc "${S}/packaging/ubuntu-16.04/changelog" + domo "${S}/po/"*.mo readme.gentoo_create_doc } @@ -168,6 +168,7 @@ src_install() { pkg_postinst() { readme.gentoo_print_elog xdg_desktop_database_update + tmpfiles_process snapd.conf if use apparmor && [[ -z ${ROOT} && -e /sys/kernel/security/apparmor/profiles && $(wc -l < /sys/kernel/security/apparmor/profiles) -gt 0 ]]; then |