commit:     f8e8469a8b05e225f567701648223b24aae7c348
Author:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
AuthorDate: Thu Jan  4 06:59:55 2024 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Thu Jan  4 07:02:58 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f8e8469a

app-containers/incus: add 'fuidshift' use flag that conflicts with lxd

 - apparently some weird systems are symlinking /usr/sbin into /usr/bin !

Bug: https://bugs.gentoo.org/920527
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 .../incus/{incus-0.4.ebuild => incus-0.4-r1.ebuild}   | 19 ++++++++++++++-----
 app-containers/incus/metadata.xml                     |  3 +++
 2 files changed, 17 insertions(+), 5 deletions(-)

diff --git a/app-containers/incus/incus-0.4.ebuild 
b/app-containers/incus/incus-0.4-r1.ebuild
similarity index 92%
rename from app-containers/incus/incus-0.4.ebuild
rename to app-containers/incus/incus-0.4-r1.ebuild
index 818070390ac2..422c94035e53 100644
--- a/app-containers/incus/incus-0.4.ebuild
+++ b/app-containers/incus/incus-0.4-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
@@ -13,7 +13,7 @@ 
SRC_URI="https://linuxcontainers.org/downloads/incus/${P}.tar.xz
 LICENSE="Apache-2.0 BSD LGPL-3 MIT"
 SLOT="0"
 KEYWORDS="~amd64"
-IUSE="apparmor nls"
+IUSE="apparmor fuidshift nls"
 
 DEPEND="acct-group/incus
        acct-group/incus-admin
@@ -28,6 +28,7 @@ DEPEND="acct-group/incus
        sys-libs/libcap
        virtual/udev"
 RDEPEND="${DEPEND}
+       fuidshift? ( !app-containers/lxd )
        net-firewall/ebtables
        net-firewall/iptables
        sys-apps/iproute2
@@ -123,11 +124,14 @@ src_compile() {
        export GOPATH="${S}/_dist"
        export CGO_LDFLAGS_ALLOW="-Wl,-z,now"
 
-       # fuidshift should be packaged for incus-lts, making it conflict with 
lxd.
-       for k in fuidshift incus-benchmark incus-user incus lxc-to-incus ; do
+       for k in incus-benchmark incus-user incus lxc-to-incus ; do
                ego install -v -x "${S}/cmd/${k}"
        done
 
+       if use fuidshift ; then
+               ego install -v -x "${S}/cmd/fuidshift"
+       fi
+
        ego install -v -x -tags libsqlite3 "${S}"/cmd/incusd
 
        # Needs to be built statically
@@ -152,7 +156,7 @@ src_install() {
        newsbin "${FILESDIR}"/incus-startup-0.4.sh incus-startup
 
        # Admin tools
-       for l in incusd incus-user fuidshift ; do
+       for l in incusd incus-user ; do
                dosbin ${bindir}/${l}
        done
        dosbin cmd/lxd-to-incus/lxd-to-incus
@@ -162,6 +166,11 @@ src_install() {
                dobin ${bindir}/${m}
        done
 
+       # fuidshift, should be moved under admin tools at some point
+       if use fuidshift ; then
+               dosbin ${bindir}/fuidshift
+       fi
+
        newconfd "${FILESDIR}"/incus-0.4.confd incus
        newinitd "${FILESDIR}"/incus-0.4.initd incus
        newinitd "${FILESDIR}"/incus-user-0.4.initd incus-user

diff --git a/app-containers/incus/metadata.xml 
b/app-containers/incus/metadata.xml
index a7cc7908462b..adf7210ec6b7 100644
--- a/app-containers/incus/metadata.xml
+++ b/app-containers/incus/metadata.xml
@@ -9,6 +9,9 @@
     <email>[email protected]</email>
     <name>Gentoo Virtualization Project</name>
   </maintainer>
+  <use>
+    <flag name="fuidshift">Install the fuidshift binary - currently conflicts 
with app-containers/lxd</flag>
+  </use>
   <longdescription>
     Incus is a modern, secure and powerful system container and virtual 
machine manager.
     Incus is a community fork from Canonical's LXD.

Reply via email to