genkernel fix, catalyst hack

This commit is contained in:
Zero_Chaos 2013-07-02 21:56:29 +00:00
parent a6ab5a74b2
commit bc5350f1d7
8 changed files with 319 additions and 0 deletions

View file

@ -0,0 +1,2 @@
AUX unfuck_firmware.patch 667 SHA256 88e5b57c438d3d325ef883465be3877aaaee8e7d34e619b27edc05a8ddfe4ac0 SHA512 b3efabe57b37bc0e80f279c39d2ae90f9591b48d4c96815e22886c4c9708f6e10d10f691ab05538265af6962bf7021831e70a27500f112855d205df149ff3e08 WHIRLPOOL 712259302c1d2b57b0bd81592f42ba3133860e47dab00fa5776f6d65a2a4646dddc3675ede175874212a29cf497f9d5a05506badab35541ec81a2fb3ad17f4c3
EBUILD catalyst-9999.ebuild 3567 SHA256 ca4eaf32f0e81167e8b446e40f52ce251629b80e55517d3e2e0e06f98b92d5b9 SHA512 ce1e6e7f05f597b3b0205cdf665441a0155b27c3a95e115ddc8cefea373b030fbd8349d104bed6247d5b181f3ae8d2f6ecc7716a66f95f7363431bda7d053bae WHIRLPOOL 0d73f05c685b7720db6780d3e203a737b72ac820e5f8aab22b886337783e8039c1a1bea3c2236745f45e3ec4693e220b1c1ef73d12d419cbfc8c805e2667c202

View file

@ -0,0 +1,111 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-util/catalyst/catalyst-9999.ebuild,v 1.28 2013/04/13 07:04:57 mattst88 Exp $
# catalyst-9999 -> latest Git
# catalyst-2.9999 -> catalyst_2 branch from Git
# catalyst-3.9999 -> catalyst_3 branch from Git
# catalyst-VER -> normal catalyst release
EAPI=3
PYTHON_DEPEND="2"
if [[ ${PV} == *9999* ]]; then
EGIT_REPO_URI="git://git.overlays.gentoo.org/proj/catalyst.git"
inherit git-2
SRC_URI=""
S="${WORKDIR}/${PN}"
KEYWORDS=""
case ${PV} in
2.9999) EGIT_BRANCH="catalyst_2" ;;
3.9999) EGIT_BRANCH="catalyst_3" ;;
esac
else
SRC_URI="mirror://gentoo/${P}.tar.bz2
http://dev.gentoo.org/~jmbsvicetto/distfiles/${P}.tar.bz2"
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~x86-fbsd"
fi
inherit eutils multilib python
DESCRIPTION="release metatool used for creating releases based on Gentoo Linux"
HOMEPAGE="http://www.gentoo.org/proj/en/releng/catalyst/"
LICENSE="GPL-2"
SLOT="0"
RESTRICT=""
IUSE="ccache kernel_linux"
DEPEND="app-text/asciidoc"
RDEPEND="app-arch/lbzip2
app-crypt/shash
virtual/cdrtools
x86? ( >=sys-boot/syslinux-3.72 )
amd64? ( >=sys-boot/syslinux-3.72 )
ccache? ( dev-util/ccache )
ia64? ( sys-fs/dosfstools )
kernel_linux? ( app-misc/zisofs-tools >=sys-fs/squashfs-tools-2.1 )"
pkg_setup() {
if use ccache ; then
einfo "Enabling ccache support for catalyst."
else
ewarn "By default, ccache support for catalyst is disabled."
ewarn "If this is not what you intended,"
ewarn "then you should add ccache to your USE."
fi
echo
einfo "The template spec files are now installed by default. You can find"
einfo "them under /usr/share/doc/${PF}/examples"
einfo "and they are considered to be the authorative source of information"
einfo "on catalyst."
echo
if [[ ${PV} == *9999* ]]; then
ewarn "The ${EGIT_BRANCH:-master} branch (what you get with this ${PV} ebuild) contains"
ewarn "work-in-progress code. Be aware that it's likely that it will not"
ewarn "be in a working state at any given point. Please do not file bugs"
ewarn "until you have posted on the gentoo-catalyst mailing list and we"
ewarn "have asked you to do so."
fi
python_set_active_version 2
}
src_prepare() {
python_convert_shebangs 2 catalyst modules/catalyst_lock.py
epatch "${FILESDIR}"/unfuck_firmware.patch
}
src_install() {
insinto /usr/$(get_libdir)/${PN}
exeinto /usr/$(get_libdir)/${PN}
doexe catalyst || die "copying catalyst"
if [[ ${PV} == 3.9999* ]]; then
doins -r modules files || die "copying files"
else
doins -r arch modules livecd || die "copying files"
fi
for x in targets/*; do
exeinto /usr/$(get_libdir)/${PN}/$x
doexe $x/* || die "copying ${x}"
done
make_wrapper catalyst /usr/$(get_libdir)/${PN}/catalyst
insinto /etc/catalyst
doins files/catalyst.conf files/catalystrc || die "copying configuration"
insinto /usr/share/doc/${PF}/examples
doins examples/* || die
dodoc README AUTHORS
doman files/catalyst.1 files/catalyst-spec.5
# Here is where we actually enable ccache
use ccache && \
dosed 's:options="autoresume kern:options="autoresume ccache kern:' \
/etc/catalyst/catalyst.conf
dosed "s:/usr/lib/catalyst:/usr/$(get_libdir)/catalyst:" \
/etc/catalyst/catalyst.conf
}
pkg_postinst() {
einfo "You can find more information about catalyst by checking out the"
einfo "catalyst project page at:"
einfo "http://www.gentoo.org/proj/en/releng/catalyst/index.xml"
echo
}

View file

@ -0,0 +1,22 @@
diff --git a/targets/support/livecdfs-update.sh b/targets/support/livecdfs-update.sh
index fda3e36..a37332d 100644
--- a/targets/support/livecdfs-update.sh
+++ b/targets/support/livecdfs-update.sh
@@ -220,17 +220,6 @@ then
fi
fi
-# Create firmware directory if it does not exist
-[ ! -d /lib/firmware ] && mkdir -p /lib/firmware
-
-# tar up the firmware so that it does not get clobbered by the livecd mounts
-if [ -n "$(ls /lib/firmware)" ]
-then
- cd /lib/firmware
- /bin/tar -I bzip2 -cpf /lib/firmware.tar.bz2 .
- rm -rf /lib/firmware/*
-fi
-
# Clear out locales
case ${clst_livecd_type} in
gentoo-release-minimal|gentoo-release-universal|gentoo-gamecd)

View file

@ -4,5 +4,6 @@ sys-kernel/spl
=sys-kernel/genkernel-3.4.41-r1
=sys-kernel/genkernel-3.4.41-r2
=sys-kernel/genkernel-3.4.41-r3
sys-kernel/ax88179_178a

View file

@ -10,3 +10,4 @@ net-wireless/sdrsharp
#allowed (patched) genkernel versions
=sys-kernel/genkernel-3.4.41-r1
=sys-kernel/genkernel-3.4.41-r2
=sys-kernel/genkernel-3.4.41-r3

View file

@ -4,6 +4,7 @@ AUX aufs-changes-e2fsprogs-2.diff 20004 SHA256 14ff71a533a2c87929e1fce7a30202075
AUX aufs-changes-e2fsprogs.diff 20200 SHA256 44de4dc551f908e1f5c6d1aaa327766c30cd85ebd1c56d80dff70627a8c93f4a SHA512 0abb05c34135673cceb29d1b3f734ae952617666d34de540bb1f7a0f1734a7c0de16a6b522fe03c83223c5273b1262544c40f29beaf46b8e506b7896d1793373 WHIRLPOOL 32cd8458ee2915f22ba6ab74bc692b3dea7e0397eb097d4a9d7dc78564deec2bc7c140b18d3d4650d2c0754e237b8876b0def03a2905c242ebb68842ce794863
AUX aufs-correct-hacked.diff 17462 SHA256 6e41a271bcb8db75930fb5dcc2ec655381d10d568f5705ddc5b0563c05cc9a3d SHA512 1a1f04364e09b13ea3249f2b47f97b55c562e7167d0a21d70c3b2209e50a108b8c3b4f74e6eb8bcea47ae248eeaead1e0b99490ea6bc070b9d80ec22374cb413 WHIRLPOOL 9585079cf39fafebf1fe0869abce1518c0c7eaf68bdc358a2bda93cc38c4040b9c827bb12f3fabe3073bf322aa4479668d8be0fcf64971340fdae2be2873e13d
AUX aufs-reference.diff 18177 SHA256 39288c4d53614f4b4ca451de4c4ad376f1e8377ea8909424a1d82f04dbe999d1 SHA512 6c51372e3495fe053a61f91a793fa5a251eef8de31097194f6edaa51ec45e8597ed08f8a0559e66dcbeaef692bf5d8e68e957641c15358d7477486ce611e40c2 WHIRLPOOL 521e7f8e2f0da0c52b27122a537e97ed65d1204e91b824f515a033b9fafff46d4251f377be6fefd661d36758c9c337a37c4c1a3578a2b7b49ad5a51c4a29d0bc
AUX distfiles-fix.patch 750 SHA256 275de5d236409cf0ff7e0b80b5a88bd66bad77219df3a46044294d33d48bba55 SHA512 9f0798429fff170fc45cb108cefd7174681692d1ad602206fcbc926bcce89d44fcd4bcdbaf432ffc4e386b3460fdc592193510760a33cf30e6f73360e39fce45 WHIRLPOOL 21b6a8e4a5750f1f0b494fabe2ba7e15c01ae63fd0c2b622ef8da0aa022354147d4ce575b94c28747c03bf145aa577f9b510fa3bca2b3d8e0677b44f22724009
AUX genkernel.bash 2438 SHA256 e7de9771ba79ef878e2c9a21a1c1720f092c6047d3cc7d4a49ff6b90e7e2c248 SHA512 2bfe23606f919577bb2d174ffe18cd00fbb4ce642fb8860b319e059745d46ff8459b99374159f78af9f3aebb0a352a74ccd74c3be581980f5e298293b96e983d WHIRLPOOL 71a6be56d38c24c3032fec5f4016c92dd0bc8140e5204db9d97c5cc5be42a2465282f36e213858b528d013ff74c6bcbf9aa443a77a8ed3ce8174baa79afe6004
AUX initramfs.mounts 816 SHA256 57ba8450e3f09edc9a4e5a1be15d49c77e4e014e27c626e9e3771167cbb54e49 SHA512 97e5f92d135cff3911a68c7f1afd0f781ec1c1b794cdc824d74f8c119104ecb40bd7180be8414dc72f3a5a811143d6b4bf443ac1d3ff7a71b1e88cbf7c179665 WHIRLPOOL f39d27de6e69b3555f81138a59f25b104f9dd6aa6254a5391d3375b15acaac48f0e698f3e6f96ed88845b84fbf8fa2cd64b98281df977c12a99ec7d9ddaf2a10
AUX v3.4.45.1.patch 23014 SHA256 4cdb4508b928dacb04a429e3885da7b50dfd81a4e6bf04643ccf453a20b8358c SHA512 59cf17c8ffaa0e50b4f11d952afa3dcbcd17f82bdba2b234b94619a18f688be40ac60d63fabfd4c0daa5868590fa9ab08ac8720781b391941ae98183635ce105 WHIRLPOOL 956a38c0f425c6e39d21a099c8820bfffbc268c033c29419d8b4576e07a1a0b4e27a5809901b788be4ed33eae58cc91f2dff5e48b2a541a7ff403e7b09025a81
@ -35,6 +36,7 @@ EBUILD genkernel-3.4.32.ebuild 5677 SHA256 7ffa9daa56da3768bdc03194479d27d1fa57c
EBUILD genkernel-3.4.33.1.ebuild 5478 SHA256 3d6fb20a9ba82ac0f664fad64d47228208597170161d2227362c019e7b026a5c SHA512 0e48a733234b56819f3d17884f4a5cf16e2311e53b75947ae828ba6dd44aa96b8a5ea54288b4d3dc472ef5b6ab354cad10d4f503613efed280abb94df5d89f3c WHIRLPOOL 8e6b2279559bec6823489c97cbed98f333225fa56bf526e79b9080bcada205d3a6fdaf64fab63b0ce2070ab8103e6a0ae45a6840018412e289fb5833e77f46a6
EBUILD genkernel-3.4.41-r1.ebuild 5185 SHA256 ecc93b0d6e47a1c2e1dc93df6e6dca556806d98ace443c5da12c5b19328567aa SHA512 29b4843130e02d9b5327a118a590104fa6a12fda0f9709acca1d1be88b1124241235dbfee3dc97cecf08c2269c70e189346a82f02617cf2cc9de3599a2315017 WHIRLPOOL a389478132a1b9f6b8afb00c1fea08514bfb9ed671b083a96fcb1b459db442882e01f303744e1a668f926e2035b2a22794e7262237ac91b7e5091447a58515fb
EBUILD genkernel-3.4.41-r2.ebuild 5223 SHA256 1c1fb7b4911521196784063f303dbda89a4653053cf89a898d3cc11333a79f80 SHA512 073b12b59e9b0c254d3ce33e6f526e4973bdca117a9260a641b2e3a592a91ad67e07efe96ed4154fd30d5f9a2199618e3247a949e477705191b8273403348ca4 WHIRLPOOL 3029ba2ca5afcb861c1de214d10a0ce8fe7b414b75fc833c4517ea263c62a3e2f4981b6be4568b6f7cba934d6848a2088c5bd6046ed94a574f2ed07c07cbc7f5
EBUILD genkernel-3.4.41-r3.ebuild 5279 SHA256 1c8e865d3a699fa0710612412d64a1261f1e1dadae94dc9e428d1a0137516751 SHA512 e1a14b0ac372e16da49ac0f4c138c148793838fca89b25fa267961cee037cfae01923186c0401bb1a94755ff5511a818652b1de968e9df0120caecbc7db9a1b3 WHIRLPOOL bdedc8304a3cb26500352586add2e434e7909e9f16b827e45af45cf3443be2066dc265423ef53e818961f7d49a1e137bb9e2c0db6bd72913c3904399521a4135
EBUILD genkernel-3.4.41.ebuild 5149 SHA256 6b267a0a3d30bffc1b478190bddc6ffeb480ebb6cde49a705ea7e5589701f880 SHA512 973e128bb0c1420fbad18c31132ba97a1d0406ab6bcf7d3343c1691a7ebecb7ea122879a61240f3714918536a8933883aed1eaf16e798472f483a3df2887850b WHIRLPOOL acb7d065ed5d194e3fa7e8e4229be68d4c74e2b03737b1c12b7ad90ebe6e75fff692dd48aa2ea390fb0de7e4163c5bdf676e7228046ffd44ccfc9a95c446d151
EBUILD genkernel-9999.2540.ebuild 5009 SHA256 54e051c18952c325edb2432a0eceaa5472e2209afd442f198eec47109e1d50f6 SHA512 b77d443b2f967e0cf5ea337788db92fd6f840b22faed367bfe8a1d791917f49ec36e7ed9013b776c845d0679dd468f150e66c8c3998477ab43a192fbe1dd2fa1 WHIRLPOOL f49d3a172d5a5d1826fcbacad8d79212085f6a9007062d644a07590572a0f63dec743d4bf7bbb02b936b865616816035593406a6e8a3ef39179d3b92f7868c09
EBUILD genkernel-9999.2998.ebuild 5009 SHA256 9d33c03cd3d32f34620e2a36c3d0e11416fe40da9b3e081e15ffcc3429289bfd SHA512 6f422752a95cff10460bf2d8ff95731889b03a758d6fb9464f44d118c15f2a2cd48f063c8ceee21e8d397ee3cd90df99f66236ab7ddd9167278b83bf37de066a WHIRLPOOL 8187aafde2b43b03bfa69bbfcaf43dc2a9661cb097e3ddf51d2aa6135fa72e0e1d3510c264357537da5d69f86b18944675953772718845d520eb20ed4fa8e4d1

View file

@ -0,0 +1,16 @@
diff -Naur genkernel-orig/defaults/linuxrc genkernel/defaults/linuxrc
--- genkernel-orig/defaults/linuxrc 2013-07-02 17:48:07.496212000 -0400
+++ genkernel/defaults/linuxrc 2013-07-02 17:48:57.464131000 -0400
@@ -956,11 +956,9 @@
chmod 755 ${CHROOT}/$i
done
# This will prevent from putting junk on the CHANGESDEV
- mkdir -p ${CHROOT}/usr/portage/distfiles
mount -t tmpfs tmpfs ${CHROOT}/var/tmp
mount -t tmpfs tmpfs ${CHROOT}/tmp
- mount -t tmpfs tmpfs ${CHROOT}/usr/portage/distfiles
- warn_msg "/tmp /var/tmp /usr/portage/distfiles are mounted in ram"
+ warn_msg "/tmp /var/tmp are mounted in ram"
warn_msg "consider saving important files elsewhere..."
read -t 3 UNUSEDVAL
mount -o bind ${NEW_ROOT}/mnt/cdrom ${CHROOT}/mnt/cdrom

View file

@ -0,0 +1,164 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-kernel/genkernel/genkernel-3.4.41.ebuild,v 1.2 2012/08/14 15:56:50 ryao Exp $
# genkernel-9999 -> latest Git branch "master"
# genkernel-VERSION -> normal genkernel release
EAPI="3"
VERSION_BUSYBOX='1.20.1'
VERSION_DMRAID='1.0.0.rc16-3'
VERSION_MDADM='3.1.5'
VERSION_FUSE='2.8.6'
VERSION_ISCSI='2.0-872'
VERSION_LVM='2.02.88'
VERSION_UNIONFS_FUSE='0.24'
VERSION_GPG='1.4.11'
RH_HOME="ftp://sources.redhat.com/pub"
DM_HOME="http://people.redhat.com/~heinzm/sw/dmraid/src"
BB_HOME="http://www.busybox.net/downloads"
COMMON_URI="${DM_HOME}/dmraid-${VERSION_DMRAID}.tar.bz2
${DM_HOME}/old/dmraid-${VERSION_DMRAID}.tar.bz2
mirror://kernel/linux/utils/raid/mdadm/mdadm-${VERSION_MDADM}.tar.bz2
${RH_HOME}/lvm2/LVM2.${VERSION_LVM}.tgz
${RH_HOME}/lvm2/old/LVM2.${VERSION_LVM}.tgz
${BB_HOME}/busybox-${VERSION_BUSYBOX}.tar.bz2
http://www.open-iscsi.org/bits/open-iscsi-${VERSION_ISCSI}.tar.gz
mirror://sourceforge/fuse/fuse-${VERSION_FUSE}.tar.gz
http://podgorny.cz/unionfs-fuse/releases/unionfs-fuse-${VERSION_UNIONFS_FUSE}.tar.bz2
mirror://gnupg/gnupg/gnupg-${VERSION_GPG}.tar.bz2"
if [[ ${PV} == 9999* ]]
then
EGIT_REPO_URI="git://git.overlays.gentoo.org/proj/${PN}.git
http://git.overlays.gentoo.org/gitroot/proj/${PN}.git"
inherit git-2 bash-completion-r1 eutils
S="${WORKDIR}/${PN}"
SRC_URI="${COMMON_URI}"
KEYWORDS=""
else
inherit bash-completion-r1 eutils
SRC_URI="mirror://gentoo/${P}.tar.bz2
${COMMON_URI}"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
fi
DESCRIPTION="Gentoo automatic kernel building scripts"
HOMEPAGE="http://www.gentoo.org"
LICENSE="GPL-2"
SLOT="0"
RESTRICT=""
IUSE="crypt cryptsetup ibm pentoo selinux" # Keep 'crypt' in to keep 'use crypt' below working!
DEPEND="sys-fs/e2fsprogs
selinux? ( sys-libs/libselinux )"
RDEPEND="${DEPEND}
cryptsetup? ( sys-fs/cryptsetup )
app-arch/cpio
>=app-misc/pax-utils-0.2.1
!<sys-apps/openrc-0.9.9"
# pax-utils is used for lddtree
if [[ ${PV} == 9999* ]]; then
DEPEND="${DEPEND} app-text/asciidoc"
fi
src_unpack() {
if [[ ${PV} == 9999* ]] ; then
git-2_src_unpack
else
unpack ${P}.tar.bz2
fi
}
src_prepare() {
use selinux && sed -i 's/###//g' "${S}"/gen_compile.sh
# Update software.sh
sed -i \
-e "s:VERSION_BUSYBOX:$VERSION_BUSYBOX:" \
-e "s:VERSION_MDADM:$VERSION_MDADM:" \
-e "s:VERSION_DMRAID:$VERSION_DMRAID:" \
-e "s:VERSION_FUSE:$VERSION_FUSE:" \
-e "s:VERSION_ISCSI:$VERSION_ISCSI:" \
-e "s:VERSION_LVM:$VERSION_LVM:" \
-e "s:VERSION_UNIONFS_FUSE:$VERSION_UNIONFS_FUSE:" \
-e "s:VERSION_GPG:$VERSION_GPG:" \
"${S}"/defaults/software.sh \
|| die "Could not adjust versions"
use pentoo && epatch "${FILESDIR}"/9999-pass-2.patch
epatch "${FILESDIR}"/zfs-fix.patch
epatch "${FILESDIR}"/v3.4.45.1.patch
use pentoo && epatch "${FILESDIR}"/distfiles-fix.patch
}
src_compile() {
if [[ ${PV} == 9999* ]]; then
emake || die
fi
}
src_install() {
insinto /etc
doins "${S}"/genkernel.conf || die "doins genkernel.conf"
doman genkernel.8 || die "doman"
dodoc AUTHORS ChangeLog 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}"/mdadm-${VERSION_MDADM}.tar.bz2 \
"${DISTDIR}"/dmraid-${VERSION_DMRAID}.tar.bz2 \
"${DISTDIR}"/LVM2.${VERSION_LVM}.tgz \
"${DISTDIR}"/busybox-${VERSION_BUSYBOX}.tar.bz2 \
"${DISTDIR}"/fuse-${VERSION_FUSE}.tar.gz \
"${DISTDIR}"/unionfs-fuse-${VERSION_UNIONFS_FUSE}.tar.bz2 \
"${DISTDIR}"/gnupg-${VERSION_GPG}.tar.bz2 \
"${DISTDIR}"/open-iscsi-${VERSION_ISCSI}.tar.gz \
"${D}"/var/cache/genkernel/src || die "Copying distfiles..."
newbashcomp "${FILESDIR}"/genkernel.bash "${PN}"
insinto /etc
doins "${FILESDIR}"/initramfs.mounts
}
pkg_postinst() {
echo
elog 'Documentation is available in the genkernel manual page'
elog 'as well as the following URL:'
echo
elog 'http://www.gentoo.org/doc/en/genkernel.xml'
echo
ewarn "This package is known to not work with reiser4. If you are running"
ewarn "reiser4 and have a problem, do not file a bug. We know it does not"
ewarn "work and we don't plan on fixing it since reiser4 is the one that is"
ewarn "broken in this regard. Try using a sane filesystem like ext3 or"
ewarn "even reiser3."
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."
ewarn "Sorry for the inconvenience."
echo
fi
}