summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys-fs/lxcfs/Manifest1
-rw-r--r--sys-fs/lxcfs/files/lxcfs-2.0.3-fusermount-path.patch11
-rw-r--r--sys-fs/lxcfs/files/lxcfs-2.0.3.initd27
-rw-r--r--sys-fs/lxcfs/lxcfs-2.0.3.ebuild71
4 files changed, 110 insertions, 0 deletions
diff --git a/sys-fs/lxcfs/Manifest b/sys-fs/lxcfs/Manifest
index 80dc10972e7d..b8b1bc259ef3 100644
--- a/sys-fs/lxcfs/Manifest
+++ b/sys-fs/lxcfs/Manifest
@@ -3,3 +3,4 @@ DIST lxcfs-2.0.0.tar.gz 48655 SHA256 4c03114a85aff530bf385b724b992470ffb97c6bf75
DIST lxcfs-2.0.0_beta2.tar.gz 44421 SHA256 4eacbbb51031ebd0776f050d7279b2076f7b4e156503f1bbe88e034f181e1d38 SHA512 d62bccc687873c060f299a726debc4642a0900f7e7a460b5c37dcb0b5d7cb75cd5b98ee03f129ccddbe62085510e1760db73010674333536f7126d01987262f4 WHIRLPOOL 470c6118a5560ff5fd447a409d136453b423d0b27a2f00652316b9415f68e08d349fc0e75edb1d312f7a25709bf96621574bd200c8fc92808a9e4eb59aada971
DIST lxcfs-2.0.1.tar.gz 49004 SHA256 4731a4d6939e32f3503560ee953e840d16e6abbb4fc7993c92cc1179e40d4f84 SHA512 3801a1d643b1f4478e702f615c8f9f9bc7070272ef2cca6c22d944a680f6829f0b14b7d193cc5c046f9f1a0a258bd5de68456d884a00d48f0f2639c66975cb23 WHIRLPOOL cbbad76d61a05dbb4750cd8218e1946d6b8b2e798f0a4071c6e706ee6d88a0e36dd9fcc8664c9cb0e3f8bdbac9ba6c548ce0a0829a4bf79d0965f18ee207bb90
DIST lxcfs-2.0.2.tar.gz 49185 SHA256 f3e9c7d53f25c2e71745dbef4c1b96d301fac12cb041329f3bbe438d7d7a4eda SHA512 358ea0d56d02a45cf93799663e067dc14fa6056f63b9047a7c7691ff0ff0ea44312be19baa0438887708de0fe85e10599e6c0178fbcbe483a6aaa56318c46fdd WHIRLPOOL 590ca502c2f72016b58d7fdb43db94ee1fa6f1af5fe9bd7d3b33d0f97fbff766b5adb22356d12f53601f070acb48d7645faa25128168094c8d42db9b39fa0263
+DIST lxcfs-2.0.3.tar.gz 51078 SHA256 742a6cc463dc66179c334ebca4c3276888ef27a564e5e47212b60c655a811a72 SHA512 14caa2d6598529610ef6bd4c1d6f4d4598e8dc1378a3ee35ea7a1582c11150c896facc80216e67526384995891d9cc1244796860b790ecfc8bf735cc2cd80923 WHIRLPOOL f2de2438e4e521db5135ca81daceccdc1d3820907de9d37842c9bafa112cc416774cb2efe27b815cecccc26e55617c7eb9f5d076df5423ab354747605fa90643
diff --git a/sys-fs/lxcfs/files/lxcfs-2.0.3-fusermount-path.patch b/sys-fs/lxcfs/files/lxcfs-2.0.3-fusermount-path.patch
new file mode 100644
index 000000000000..61d3494fb7f3
--- /dev/null
+++ b/sys-fs/lxcfs/files/lxcfs-2.0.3-fusermount-path.patch
@@ -0,0 +1,11 @@
+--- /config/init/systemd/lxcfs.service.orig 2016-07-11 01:18:57.688074437 +0000
++++ /config/init/systemd/lxcfs.service 2016-07-11 01:19:48.516477185 +0000
+@@ -7,7 +7,7 @@
+ ExecStart=/usr/bin/lxcfs /var/lib/lxcfs/
+ KillMode=process
+ Restart=on-failure
+-ExecStopPost=-/bin/fusermount -u /var/lib/lxcfs
++ExecStopPost=-/usr/bin/fusermount -u /var/lib/lxcfs
+ Delegate=yes
+
+ [Install]
diff --git a/sys-fs/lxcfs/files/lxcfs-2.0.3.initd b/sys-fs/lxcfs/files/lxcfs-2.0.3.initd
new file mode 100644
index 000000000000..7436eeed39a5
--- /dev/null
+++ b/sys-fs/lxcfs/files/lxcfs-2.0.3.initd
@@ -0,0 +1,27 @@
+#!/sbin/openrc-run
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DAEMON=/usr/bin/lxcfs
+PIDFILE=/run/lxcfs.pid
+
+start() {
+ ebegin "Starting lxcfs"
+
+ start-stop-daemon --start \
+ --pidfile ${PIDFILE} \
+ --exec ${DAEMON} \
+ --background \
+ --make-pidfile \
+ -- \
+ -f -o allow_other /var/lib/lxcfs
+
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping lxcfs"
+ start-stop-daemon --stop --quiet -R TERM/45 -p ${PIDFILE}
+ eend $?
+}
diff --git a/sys-fs/lxcfs/lxcfs-2.0.3.ebuild b/sys-fs/lxcfs/lxcfs-2.0.3.ebuild
new file mode 100644
index 000000000000..39c20c4ee084
--- /dev/null
+++ b/sys-fs/lxcfs/lxcfs-2.0.3.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit systemd vcs-snapshot versionator
+DESCRIPTION="FUSE filesystem for LXC"
+HOMEPAGE="https://linuxcontainers.org/lxcfs/introduction/"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+if [[ ${PV} == "9999" ]] ; then
+ EGIT_REPO_URI="https://github.com/lxc/lxcfs.git"
+ EGIT_BRANCH="master"
+ inherit git-r3
+ SRC_URI=""
+ KEYWORDS=""
+else
+ # e.g. upstream is 2.0.0.beta2, we want 2.0.0_beta2
+ UPSTREAM_PV=$(replace_version_separator 3 '.' )
+ SRC_URI="https://github.com/lxc/lxcfs/archive/${PN}-${UPSTREAM_PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+IUSE="pam"
+
+# Omit all dbus. Upstream appears to require it because systemd, but
+# lxcfs makes no direct use of dbus.
+RDEPEND="
+ dev-libs/glib:2
+ sys-fs/fuse
+ virtual/pam
+"
+DEPEND="
+ sys-apps/help2man
+ ${RDEPEND}
+"
+PATCHES="${FILESDIR}/${P}-fusermount-path.patch"
+
+src_prepare() {
+ default
+ ./bootstrap.sh || die "Failed to bootstrap configure files"
+}
+
+src_configure() {
+ use pam || pamflag="--with-pamdir=none"
+
+ # Without the localstatedir the filesystem isn't mounted correctly
+ econf --localstatedir=/var ${pamflag}
+}
+
+# Test suite fails for me
+# src_test() {
+# emake tests
+# tests/main.sh || die "Tests failed"
+# }
+
+src_install() {
+ default
+ dodir /var/lib/lxcfs
+ newinitd "${FILESDIR}"/${P}.initd lxcfs
+ systemd_dounit config/init/systemd/lxcfs.service
+}
+
+pkg_preinst() {
+ # In an upgrade situation merging /var/lib/lxcfs (an empty dir)
+ # fails because that is a live mountpoint when the service is
+ # running. It's unnecessary anyway so skip the action.
+ [[ -d ${ROOT}/var/lib/lxcfs ]] && rm -rf ${D}/var
+}