diff options
Diffstat (limited to 'app-emulation/lxd/lxd-2.8.ebuild')
-rw-r--r-- | app-emulation/lxd/lxd-2.8.ebuild | 198 |
1 files changed, 0 insertions, 198 deletions
diff --git a/app-emulation/lxd/lxd-2.8.ebuild b/app-emulation/lxd/lxd-2.8.ebuild deleted file mode 100644 index b3bf035810ff..000000000000 --- a/app-emulation/lxd/lxd-2.8.ebuild +++ /dev/null @@ -1,198 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -DESCRIPTION="Fast, dense and secure container management" -HOMEPAGE="https://linuxcontainers.org/lxd/introduction/" -EGO_PN_PARENT="github.com/lxc" -EGO_PN="${EGO_PN_PARENT}/lxd" - -# The source is repackaged using a script at: -# https://dev.gentoo.org/~stasibear/lxd_repackage.py -# This is necessary because go's native package management assumes -# that a build starts with checking out many git repositories, often -# from HEAD. This provides no way to build the same code repeatably, -# and anyway portage requires that fetching is only done from SRC_URI. -# The only sane alternative I've seen is in the consul ebuild, which -# is more transparent but raises other questions. -SRC_URI="https://dev.gentoo.org/~stasibear/distfiles/${P}.tar.bz2" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~amd64" - -PLOCALES="de el fr ja" -IUSE="+daemon nls test" - -# IUSE and PLOCALES must be defined before l10n inherited -inherit bash-completion-r1 golang-build l10n linux-info systemd user vcs-snapshot - -DEPEND=" - >=dev-lang/go-1.7.1 - dev-go/go-crypto - dev-go/go-net - dev-libs/protobuf - nls? ( sys-devel/gettext ) - test? ( - app-misc/jq - dev-db/sqlite - net-misc/curl - sys-devel/gettext - ) -" - -RDEPEND=" - daemon? ( - app-admin/cgmanager - app-arch/xz-utils - app-emulation/lxc[cgmanager,seccomp] - net-dns/dnsmasq[dhcp,ipv6] - net-misc/rsync[xattr] - sys-apps/iproute2[ipv6] - sys-fs/squashfs-tools - virtual/acl - ) -" - -CONFIG_CHECK=" - ~BRIDGE - ~DUMMY - ~IP6_NF_NAT - ~IP6_NF_TARGET_MASQUERADE - ~IPV6 - ~IP_NF_NAT - ~IP_NF_TARGET_MASQUERADE - ~MACVLAN - ~NETFILTER_XT_MATCH_COMMENT - ~NET_IPGRE - ~NET_IPGRE_DEMUX - ~NET_IPIP - ~NF_NAT_MASQUERADE_IPV4 - ~NF_NAT_MASQUERADE_IPV6 - ~VXLAN -" - -ERROR_BRIDGE="BRIDGE: needed for network commands" -ERROR_DUMMY="DUMMY: needed for network commands" -ERROR_IP6_NF_NAT="IP6_NF_NAT: needed for network commands" -ERROR_IP6_NF_TARGET_MASQUERADE="IP6_NF_TARGET_MASQUERADE: needed for network commands" -ERROR_IPV6="IPV6: needed for network commands" -ERROR_IP_NF_NAT="IP_NF_NAT: needed for network commands" -ERROR_IP_NF_TARGET_MASQUERADE="IP_NF_TARGET_MASQUERADE: needed for network commands" -ERROR_MACVLAN="MACVLAN: needed for network commands" -ERROR_NETFILTER_XT_MATCH_COMMENT="NETFILTER_XT_MATCH_COMMENT: needed for network commands" -ERROR_NET_IPGRE="NET_IPGRE: needed for network commands" -ERROR_NET_IPGRE_DEMUX="NET_IPGRE_DEMUX: needed for network commands" -ERROR_NET_IPIP="NET_IPIP: needed for network commands" -ERROR_NF_NAT_MASQUERADE_IPV4="NF_NAT_MASQUERADE_IPV4: needed for network commands" -ERROR_NF_NAT_MASQUERADE_IPV6="NF_NAT_MASQUERADE_IPV6: needed for network commands" -ERROR_VXLAN="VXLAN: needed for network commands" - -PATCHES=("${FILESDIR}/${P}-dont-go-get.patch") - -# KNOWN ISSUES: -# - Translations may not work. I've been unsuccessful in forcing -# localized output. Anyway, upstream (Canonical) doesn't install the -# message files. - -src_prepare() { - cd "${S}/src/${EGO_PN}" || die "Failed to change to deep src dir" - - default_src_prepare - - tmpgoroot="${T}/goroot" - mkdir -p "$tmpgoroot" || die "Failed to create temporary GOROOT" - cp -sR "$(get_golibdir_gopath)"/* "${tmpgoroot}" || die "Failed to copy files to temporary GOROOT" - - # Warn on unhandled locale changes - l10n_find_plocales_changes po "" .po -} - -src_compile() { - golang-build_src_compile - - cd "${S}/src/${EGO_PN}" || die "Failed to change to deep src dir" - - tmpgoroot="${T}/goroot" - if use daemon; then - # Build binaries - GOPATH="${S}:${tmpgoroot}" emake - else - # build client tool - GOPATH="${S}:${tmpgoroot}" emake client - fi - - use nls && emake build-mo -} - -src_test() { - if use daemon; then - # Go native tests should succeed - golang-build_src_test - fi -} - -src_install() { - # Installs all src,pkg to /usr/lib/go-gentoo - golang-build_src_install - - cd "${S}" - dobin bin/lxc - if use daemon; then - dosbin bin/lxd - dobin bin/fuidshift - fi - - cd "src/${EGO_PN}" - - if use nls; then - for lingua in ${PLOCALES}; do - if use linguas_${lingua}; then - domo po/${lingua}.mo - fi - done - fi - - if use daemon; then - newinitd "${FILESDIR}"/${P}.initd lxd - newconfd "${FILESDIR}"/${P}.confd lxd - - systemd_dounit "${FILESDIR}"/lxd.service - fi - - newbashcomp config/bash/lxd-client lxc - - dodoc AUTHORS CONTRIBUTING.md README.md doc/* -} - -pkg_postinst() { - einfo - einfo "Consult https://wiki.gentoo.org/wiki/LXD for more information," - einfo "including a Quick Start." - - # The messaging below only applies to daemon installs - use daemon || return 0 - - # The control socket will be owned by (and writeable by) this group. - enewgroup lxd - - # Ubuntu also defines an lxd user but it appears unused (the daemon - # must run as root) - - einfo - einfo "Though not strictly required, some features are enabled at run-time" - einfo "when the relevant helper programs are detected:" - einfo "- sys-apps/apparmor" - einfo "- sys-fs/btrfs-progs" - einfo "- sys-fs/lvm2" - einfo "- sys-fs/lxcfs" - einfo "- sys-fs/zfs" - einfo "- sys-process/criu" - einfo - einfo "Since these features can't be disabled at build-time they are" - einfo "not USE-conditional." - einfo - einfo "Networks with bridge.mode=fan are unsupported due to requiring" - einfo "a patched kernel and iproute2." -} |