diff options
author | Fabio Erculiani <lxnay@gentoo.org> | 2013-05-08 05:55:05 +0000 |
---|---|---|
committer | Fabio Erculiani <lxnay@gentoo.org> | 2013-05-08 05:55:05 +0000 |
commit | ec4a902ab12b59be63c420802e802b58a3acc845 (patch) | |
tree | f3678ce1954d3ee1cc43acc35a178be429a7f404 /sys-kernel/genkernel-next | |
parent | Fix stupid mistake, causing the ebuild to die if the host doesn't provide /us... (diff) | |
download | historical-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/ChangeLog | 10 | ||||
-rw-r--r-- | sys-kernel/genkernel-next/Manifest | 17 | ||||
-rw-r--r-- | sys-kernel/genkernel-next/files/genkernel.bash | 73 | ||||
-rw-r--r-- | sys-kernel/genkernel-next/files/initramfs.mounts | 23 | ||||
-rw-r--r-- | sys-kernel/genkernel-next/genkernel-next-7.ebuild | 105 | ||||
-rw-r--r-- | sys-kernel/genkernel-next/metadata.xml | 11 |
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> |