summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabio Erculiani <lxnay@gentoo.org>2013-05-08 05:55:05 +0000
committerFabio Erculiani <lxnay@gentoo.org>2013-05-08 05:55:05 +0000
commitec4a902ab12b59be63c420802e802b58a3acc845 (patch)
treef3678ce1954d3ee1cc43acc35a178be429a7f404 /sys-kernel/genkernel-next
parentFix stupid mistake, causing the ebuild to die if the host doesn't provide /us... (diff)
downloadhistorical-ec4a902ab12b59be63c420802e802b58a3acc845.tar.gz
historical-ec4a902ab12b59be63c420802e802b58a3acc845.tar.bz2
historical-ec4a902ab12b59be63c420802e802b58a3acc845.zip
new ebuild, ported from systemd-love
Package-Manager: portage-2.2.0_alpha166/cvs/Linux x86_64 Manifest-Sign-Key: 0xADC916E5
Diffstat (limited to 'sys-kernel/genkernel-next')
-rw-r--r--sys-kernel/genkernel-next/ChangeLog10
-rw-r--r--sys-kernel/genkernel-next/Manifest17
-rw-r--r--sys-kernel/genkernel-next/files/genkernel.bash73
-rw-r--r--sys-kernel/genkernel-next/files/initramfs.mounts23
-rw-r--r--sys-kernel/genkernel-next/genkernel-next-7.ebuild105
-rw-r--r--sys-kernel/genkernel-next/metadata.xml11
6 files changed, 239 insertions, 0 deletions
diff --git a/sys-kernel/genkernel-next/ChangeLog b/sys-kernel/genkernel-next/ChangeLog
new file mode 100644
index 000000000000..9a66172b1fea
--- /dev/null
+++ b/sys-kernel/genkernel-next/ChangeLog
@@ -0,0 +1,10 @@
+# ChangeLog for sys-kernel/genkernel-next
+# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sys-kernel/genkernel-next/ChangeLog,v 1.1 2013/05/08 05:54:54 lxnay Exp $
+
+*genkernel-next-7 (08 May 2013)
+
+ 08 May 2013; Fabio Erculiani <lxnay@gentoo.org> +genkernel-next-7.ebuild,
+ +files/genkernel.bash, +files/initramfs.mounts, +metadata.xml:
+ new ebuild, ported from systemd-love
+
diff --git a/sys-kernel/genkernel-next/Manifest b/sys-kernel/genkernel-next/Manifest
new file mode 100644
index 000000000000..5748576612b8
--- /dev/null
+++ b/sys-kernel/genkernel-next/Manifest
@@ -0,0 +1,17 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
+AUX genkernel.bash 2443 SHA256 e01220581f0219f58939d03df62067cfed6c81a383c93190e3615d6417105b19 SHA512 b2196b83755cb14192a1696f7b824273d966d47970b49be98347b71da0bba680679c5bd0e351197e5e2fe69585440f0d7143196817ee76936d5d5066330c039a WHIRLPOOL c4113b9e1475663f8aadaca4483b8e926b932c9a777f07bd8d1b1832c2e177269830f53f76d5b02a4373eb15435c8dd5666a8c74ba4b16c1b4f9976bd9a8da64
+AUX initramfs.mounts 816 SHA256 57ba8450e3f09edc9a4e5a1be15d49c77e4e014e27c626e9e3771167cbb54e49 SHA512 97e5f92d135cff3911a68c7f1afd0f781ec1c1b794cdc824d74f8c119104ecb40bd7180be8414dc72f3a5a811143d6b4bf443ac1d3ff7a71b1e88cbf7c179665 WHIRLPOOL f39d27de6e69b3555f81138a59f25b104f9dd6aa6254a5391d3375b15acaac48f0e698f3e6f96ed88845b84fbf8fa2cd64b98281df977c12a99ec7d9ddaf2a10
+DIST busybox-1.20.2.tar.bz2 2186738 SHA256 eb13ff01dae5618ead2ef6f92ba879e9e0390f9583bd545d8789d27cf39b6882 SHA512 089b67cd920f332daf910711739b1e55ba4c76cfa2122dfe5464432e0d76d3af8327837ebc3cc9954deef3e8f766d16a1928aecb2c169fe3de5a722eea7ea3dd WHIRLPOOL aa8fec92d0ac8bb246dea7353537d425a5fecfa0bb807d0e291c7351e8289b84aab83303c45b75f9b7a98cd10177e210511064f0709425c2f84b069fe6a06420
+DIST genkernel-next-7.tar.xz 129800 SHA256 bba8f0c0c0fc84e94e39b1554d931f14aabb1e1688fe5e9db6f5f2af032a98b4 SHA512 3d1b73ba1fb60348a6ac727a26fc97a7c44f45128aaf49074c1e06055807f1357d7244d8219039c8c20fc4210950ba3e95995fe407fecdeaeca7857d031afad4 WHIRLPOOL 87294d25f5a0ae96dd807684ff34394e839445986d651b897b4020df563b703b63c3a16e2e56ddc48faaeaf7abb8ac46f7ff0ddde7218dbdd4be8326cbde8d7e
+EBUILD genkernel-next-7.ebuild 3277 SHA256 530c2967365e74231273778865e17c6b305508630f9984c74ee3c0b080b31cd8 SHA512 2003d1e18c36110e34fb16dae02098a0d696a1ec660758658050fa4e899039265929b2ec3247fc1fbc71daab5fb152dc299cbe730dca665b10604bc39a21680b WHIRLPOOL e906b69f57eec5cbec97a27e13ead0acf68860f08a89308faa2b519764a0724dedc0bfe515df049d9ae494cd655a18340a3d858d0eba9c4d55b9a555ccee11be
+MISC ChangeLog 436 SHA256 aafdd2bf5c26afd792b8811e684794f35b9f5f34f3aa46a4343b0f873f5d42a9 SHA512 905a44c31bcb64cd16c18656353d2e0ed5ef29ff5c6f89a434f0195481c4fd72aca3108cff0fd6479162ec883fb567d7cf301a4a00b5a7495c69cd813939eb2e WHIRLPOOL 3f28b3efb9d1f1207035333d2a55dba839494a4a05c6714e5a8944323dd3daa691de59198fb7153dcb11cd0bfce6b6881d1a341dd3e45b0b1e29fe36ac1ddc4a
+MISC metadata.xml 320 SHA256 9e9a6216d014ee922a3b62cc728fb715bbd3e36036e70c2dca368f4199909111 SHA512 b416b7f01f5f1ad30a9cfa56961080ff1b526bed684386fbf7c04164ab31cfff069f9c30b532864196d1996ba8f60c05815b959268fcad0dce6e90081d568fcf WHIRLPOOL 49e60d953e7bddcd29a25a303d129ac4d1bdb4b3c229f91731ee3a5637a0219512d09f9d31d40536380f8f334f862b69026f5b42af6a6f064a127324e7aebebd
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.19 (GNU/Linux)
+
+iEYEAREIAAYFAlGJ6L4ACgkQfaj9zK3JFuWP6wCg0+cdk7tbQ7GNiq/drWGrmyYn
+OV8AnjnrBXpLD11SAnUPWRXAkRrAIzaY
+=5ozF
+-----END PGP SIGNATURE-----
diff --git a/sys-kernel/genkernel-next/files/genkernel.bash b/sys-kernel/genkernel-next/files/genkernel.bash
new file mode 100644
index 000000000000..965ec2257f19
--- /dev/null
+++ b/sys-kernel/genkernel-next/files/genkernel.bash
@@ -0,0 +1,73 @@
+# genkernel (8) completion
+# Copyright 2006-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# Written by Aron Griffis <agriffis@gentoo.org>
+
+_genkernel()
+{
+ declare cur prev genkernel_help actions params
+ COMPREPLY=()
+ cur=${COMP_WORDS[COMP_CWORD]}
+ prev=${COMP_WORDS[COMP_CWORD-1]}
+
+ # extract initial list of params/actions from genkernel --help
+ genkernel_help=$(command genkernel --help)
+ actions=( $(<<<"$genkernel_help" sed -n \
+ '/^Available Actions:/,/^$/s/^[[:space:]]\+\([^[:space:]]\+\).*/\1/p') )
+ params=( $(<<<"$genkernel_help" egrep -oe '--[^[:space:]]{2,}') )
+
+ # attempt to complete the current parameter based on the list
+ COMPREPLY=($(compgen -W "${params[*]/=*/=} ${actions[*]}" -- "$cur"))
+
+ # if we don't have a rhs to complete
+ if [[ ${#COMPREPLY[@]} -gt 1 ]]; then
+ return
+ elif [[ ${#COMPREPLY[@]} -eq 0 && $cur != --*=* ]]; then
+ return
+ elif [[ ${#COMPREPLY[@]} -eq 1 && $COMPREPLY != --*= ]]; then
+ # using nospace completion, add an explicit space
+ COMPREPLY="${COMPREPLY} "
+ return
+ fi
+
+ # we have a unique lhs and need to complete the rhs
+ declare args lhs rhs
+ if [[ ${#COMPREPLY[@]} -eq 1 ]]; then
+ lhs=$COMPREPLY
+ else
+ lhs=${cur%%=*}=
+ rhs=${cur#*=}
+ fi
+
+ # genkernel's help gives clues as to what belongs on the rhs.
+ # extract the clue for the current parameter
+ args=" ${params[*]} "
+ args="${args##* $lhs}"
+ args="${args%% *}"
+
+ # generate a list of completions for the argument; this replaces args with
+ # an array of results
+ args=( $(case $args in
+ ('<0-5>') compgen -W "$(echo {1..5})" -- "$rhs" ;;
+ ('<outfile>'|'<file>') compgen -A file -o plusdirs -- "$rhs" ;;
+ ('<dir>') compgen -A directory -S / -- "$rhs" ;;
+ ('<tbz2>') compgen -G '*.tbz2' -G '*.tar.bz2' -o plusdirs -- "$rhs" ;;
+ (*) compgen -o bashdefault -- "$rhs" ;; # punt
+ esac) )
+
+ # we're using nospace completion to prevent spaces after paths that aren't
+ # "done" yet. So do some hacking to the args to add spaces after
+ # non-directories.
+ declare slash=/
+ args=( "${args[@]/%/ }" ) # add space to all
+ args=( "${args[@]/%$slash /$slash}" ) # remove space from dirs
+
+ # recreate COMPREPLY
+ if [[ $cur == "$lhs"* ]]; then
+ COMPREPLY=( "${args[@]}" )
+ elif [[ ${#args[@]} -gt 0 ]]; then
+ COMPREPLY=( "${args[@]/#/$lhs}" )
+ fi
+}
+
+complete -o nospace -F _genkernel genkernel
diff --git a/sys-kernel/genkernel-next/files/initramfs.mounts b/sys-kernel/genkernel-next/files/initramfs.mounts
new file mode 100644
index 000000000000..b34c67502307
--- /dev/null
+++ b/sys-kernel/genkernel-next/files/initramfs.mounts
@@ -0,0 +1,23 @@
+# This specifies which mounts from your fstab should be mounted before
+# switching to the real root. If this file is missing, genkernel's code will
+# default to just "/usr", which will suffice on most systems with a seperate
+# /usr mount.
+#
+# If you have a complex configuration with a bindmount or symlink at /usr, or
+# need some other mountpoints at boot, you should update this file such that
+# /usr and anything else needed will be available after the switch into the
+# real root.
+#
+# The lines without comments in this file are used as exact matches against the
+# second column of your /etc/fstab and the device, fstype and mount options are
+# taken from that line in fstab. If no line matches, the line from this file
+# will be ignored.
+#
+
+/usr
+
+# If you had some need of these:
+#/usr/local
+#/opt
+#/var
+#/home
diff --git a/sys-kernel/genkernel-next/genkernel-next-7.ebuild b/sys-kernel/genkernel-next/genkernel-next-7.ebuild
new file mode 100644
index 000000000000..c3f2b705c68f
--- /dev/null
+++ b/sys-kernel/genkernel-next/genkernel-next-7.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-kernel/genkernel-next/genkernel-next-7.ebuild,v 1.1 2013/05/08 05:54:54 lxnay Exp $
+
+EAPI=5
+
+if [[ "${PV}" != "9999" ]]; then
+ SRC_URI="http://dev.gentoo.org/~lxnay/genkernel-next/${P}.tar.xz"
+else
+ EGIT_COMMIT="v${PV}"
+ EGIT_REPO_URI="git://github.com/Sabayon/genkernel-next.git"
+ inherit git-2
+fi
+inherit bash-completion-r1 eutils
+
+VERSION_BUSYBOX="1.20.2"
+
+SRC_URI="${SRC_URI} http://www.busybox.net/downloads/busybox-${VERSION_BUSYBOX}.tar.bz2"
+if [[ "${PV}" == "9999" ]]; then
+ KEYWORDS=""
+else
+ KEYWORDS="~amd64 ~arm ~x86"
+fi
+
+DESCRIPTION="Gentoo automatic kernel building scripts ('next' branch)"
+HOMEPAGE="http://www.gentoo.org"
+
+LICENSE="GPL-2"
+SLOT="0"
+RESTRICT=""
+IUSE="crypt cryptsetup ibm selinux" # Keep 'crypt' in to keep 'use crypt' below working!
+
+DEPEND="app-text/asciidoc
+ sys-fs/e2fsprogs
+ selinux? ( sys-libs/libselinux )"
+RDEPEND="${DEPEND}
+ !sys-kernel/genkernel
+ cryptsetup? ( sys-fs/cryptsetup )
+ app-portage/portage-utils
+ app-arch/cpio
+ >=app-misc/pax-utils-0.2.1
+ !<sys-apps/openrc-0.9.9"
+
+src_prepare() {
+ use selinux && sed -i 's/###//g' "${S}"/gen_compile.sh
+
+ # Update software.sh
+ sed -i \
+ -e "s:VERSION_BUSYBOX:$VERSION_BUSYBOX:" \
+ "${S}"/defaults/software.sh \
+ || die "Could not adjust versions"
+
+ sed -i "/^GK_V=/ s:GK_V=.*:GK_V=${PV}:g" "${S}/genkernel" || \
+ die "Could not setup release"
+}
+
+src_install() {
+ insinto /etc
+ doins "${S}"/genkernel.conf || die "doins genkernel.conf"
+
+ doman genkernel.8 || die "doman"
+ dodoc AUTHORS README TODO || die "dodoc"
+
+ dobin genkernel || die "dobin genkernel"
+
+ rm -f genkernel genkernel.8 AUTHORS ChangeLog README TODO genkernel.conf
+
+ insinto /usr/share/genkernel
+ doins -r "${S}"/* || die "doins"
+ use ibm && cp "${S}"/ppc64/kernel-2.6-pSeries "${S}"/ppc64/kernel-2.6 || \
+ cp "${S}"/arch/ppc64/kernel-2.6.g5 "${S}"/arch/ppc64/kernel-2.6
+
+ # Copy files to /var/cache/genkernel/src
+ elog "Copying files to /var/cache/genkernel/src..."
+ mkdir -p "${D}"/var/cache/genkernel/src
+ cp -f \
+ "${DISTDIR}"/busybox-${VERSION_BUSYBOX}.tar.bz2 \
+ "${D}"/var/cache/genkernel/src || die "Copying distfiles..."
+
+ newbashcomp "${FILESDIR}"/genkernel.bash "${PN}"
+ insinto /etc
+ doins "${FILESDIR}"/initramfs.mounts
+}
+
+pkg_postinst() {
+ elog 'You are using an EXPERIMENTAL version of genkernel called genkernel-next'
+ elog 'Actually, it is supposed to be more polished and reliable'
+ echo
+ ewarn "The LUKS support has changed from versions prior to 3.4.4. Now,"
+ ewarn "you use crypt_root=/dev/blah instead of real_root=luks:/dev/blah."
+ echo
+ if use crypt && ! use cryptsetup ; then
+ ewarn "Local use flag 'crypt' has been renamed to 'cryptsetup' (bug #414523)."
+ ewarn "Please set flag 'cryptsetup' for this very package if you would like"
+ ewarn "to have genkernel create an initramfs with LUKS support."
+ echo
+ fi
+
+ elog "Genkernel-Next depends on the following optional packages:"
+ elog "- app-crypt/gnupg: when called with --gpg"
+ elog "- sys-block/open-iscsi: when called with --iscsi"
+ elog "- sys-boot/plymouth: when called with --plymouth"
+ elog "- sys-fs/dmraid: when called with --dmraid"
+ elog "- sys-fs/lvm2: when called with --lvm"
+}
diff --git a/sys-kernel/genkernel-next/metadata.xml b/sys-kernel/genkernel-next/metadata.xml
new file mode 100644
index 000000000000..a7cc5acc9f8a
--- /dev/null
+++ b/sys-kernel/genkernel-next/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+
+<pkgmetadata>
+<maintainer>
+ <email>lxnay@gentoo.org</email>
+</maintainer>
+<use>
+ <flag name='cryptsetup'>Enable support for Luks disk enrcyption using <pkg>sys-fs/cryptsetup</pkg></flag>
+</use>
+</pkgmetadata>