From 1d8a648b254c175eb452cd43793547dc5cabb2bd Mon Sep 17 00:00:00 2001 From: KireinaHoro Date: Mon, 2 Jul 2018 23:57:45 +0800 Subject: sys-kernel: add Android source and utilities Package-Manager: Portage-2.3.24, Repoman-2.3.6 --- sys-kernel/angler-sources/Manifest | 3 ++ .../angler-sources/angler-sources-3.10.73.ebuild | 36 ++++++++++++++++ sys-kernel/angler-sources/metadata.xml | 10 +++++ sys-kernel/installkernel/Manifest | 3 ++ sys-kernel/installkernel/installkernel-0.1.ebuild | 25 +++++++++++ sys-kernel/installkernel/metadata.xml | 11 +++++ sys-kernel/preinit/Manifest | 3 ++ sys-kernel/preinit/metadata.xml | 10 +++++ sys-kernel/preinit/preinit-0.3.ebuild | 48 ++++++++++++++++++++++ 9 files changed, 149 insertions(+) create mode 100644 sys-kernel/angler-sources/Manifest create mode 100644 sys-kernel/angler-sources/angler-sources-3.10.73.ebuild create mode 100644 sys-kernel/angler-sources/metadata.xml create mode 100644 sys-kernel/installkernel/Manifest create mode 100644 sys-kernel/installkernel/installkernel-0.1.ebuild create mode 100644 sys-kernel/installkernel/metadata.xml create mode 100644 sys-kernel/preinit/Manifest create mode 100644 sys-kernel/preinit/metadata.xml create mode 100644 sys-kernel/preinit/preinit-0.3.ebuild diff --git a/sys-kernel/angler-sources/Manifest b/sys-kernel/angler-sources/Manifest new file mode 100644 index 0000000..07ce5d8 --- /dev/null +++ b/sys-kernel/angler-sources/Manifest @@ -0,0 +1,3 @@ +DIST android_kernel_huawei_angler 114349 BLAKE2B df41569fc5ad445121615c5ee880c24797fc87ede6afbf27b9b3a20bbb9684c543b93391c577498371a8cfc29b4f4acc8767c07374e2d5ea582baebebd016018 SHA512 a2ec68f067ce3374ebc2a5634205b8dd9c269f8b441265b5b885f748578b550ed04f3d5f5e31dc605091fd86d95dfd2b8cc6daf85ad7867291fe1c0573102aef +EBUILD angler-sources-3.10.73.ebuild 819 BLAKE2B 5d18fbb86b4cac611afebcda790de28e589737bc58773f32533730953c7865159b944888197483c8d5050cf5c8ab9d7ae35fa13012bfe76877a6a721ad36178b SHA512 7ea5b16dea5224e8948101b1b55222bb38cb51a967beabaf0599abea8ce5224ec526e838bc88d66d936bd61871f989c7d68a7361c814652dff168c41136c9373 +MISC metadata.xml 302 BLAKE2B 2560cf9d3ac1d88ef673eae5f52a07e3dd311b1e76235d04cccb623dc1d902fb4b12bb2f26ba3dc6fcad206895f5663ad5579091b336b835f24a799d3fa3cec5 SHA512 e4568d468c1716d269db218e26c93716bdeae20ea9922782520ac75d0fff2f4395a5c076c2dfc05acaec1306823a0f3a32bed7c5a1082973e4232cbb65260e11 diff --git a/sys-kernel/angler-sources/angler-sources-3.10.73.ebuild b/sys-kernel/angler-sources/angler-sources-3.10.73.ebuild new file mode 100644 index 0000000..9a6d339 --- /dev/null +++ b/sys-kernel/angler-sources/angler-sources-3.10.73.ebuild @@ -0,0 +1,36 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="6" +UNIPATCH_STRICTORDER="yes" +K_NOUSENAME="yes" +K_NOSETEXTRAVERSION="yes" +K_NOUSEPR="yes" +K_SECURITY_UNSUPPORTED="1" +K_BASE_VER="3.10" +K_EXP_GENPATCHES_NOUSE="1" +K_FROM_GIT="yes" +ETYPE="sources" +CKV="${PVR/-r/-git}" + +# only use this if it's not an _rc/_pre release +[ "${PV/_pre}" == "${PV}" ] && [ "${PV/_rc}" == "${PV}" ] && OKV="${PV}" +inherit kernel-2 +detect_version + +DESCRIPTION="Device-specific kernel sources from AOSP project adapted for Gentoo" +HOMEPAGE="https://www.kernel.org" +SRC_URI="https://github.com/KireinaHoro/android_kernel_huawei_angler" + +KEYWORDS="~arm64" +IUSE="" + +RDEPEND=" +sys-kernel/installkernel +" +DEPEND="${RDEPEND} + >=sys-devel/patch-2.7.5" + +pkg_postinst() { + postinst_sources +} diff --git a/sys-kernel/angler-sources/metadata.xml b/sys-kernel/angler-sources/metadata.xml new file mode 100644 index 0000000..5bfd953 --- /dev/null +++ b/sys-kernel/angler-sources/metadata.xml @@ -0,0 +1,10 @@ + + + + +i@jsteward.moe + + +Kernel sources for Huawei Nexus 6P (angler). + + diff --git a/sys-kernel/installkernel/Manifest b/sys-kernel/installkernel/Manifest new file mode 100644 index 0000000..79fc4ee --- /dev/null +++ b/sys-kernel/installkernel/Manifest @@ -0,0 +1,3 @@ +DIST installkernel-0.1.tar.gz 13384 BLAKE2B 9fe5e7a35de3de39b0ccbcbe4b7107b17c47edbf15fde4ee60a93a0e32ac0a415032360b98220ab04f1ea05921c60a1d52ee331f4f972450850e3fb0dc4129b1 SHA512 ea7471f62308ac8bc5ccf0a4e2abc45815d6fe878dc34e33630e123ada988863ec669445f0414eb3ea8556b059aa8081c68a7c915da9526b3120362673d5c1df +EBUILD installkernel-0.1.ebuild 513 BLAKE2B 2eddbd3838bf7941f448978ce83a61d4ae5b04ca490bcb5f1b7a3f90430740bdfe11b663e3e2b78e8761a688b9a217c00aa6d9d160c2a627c0107570a18bb0ba SHA512 cc00d34dce21b21de36152bd7273dbd324153de099c7a8992b5eefa135e06a860e4e9351ebb08da4a037f8c8b1ff6c2e8a1881f8f2523afe31f79cb0b5821690 +MISC metadata.xml 367 BLAKE2B b5fb347e1de8714222b958157c8e7465da685d55750d17fa8c9f3d5d73b83d336a0580eb911796c93b9994df9bb1e5262323e17f71ae1f3b81ea5442afff646a SHA512 0bce62c7ced0b6a3e724c6f698fe8192c7ccb51bda37a1289185138ed6ae9da413cfc14d939e9a8b95e1b59b8b352d1f866d3a48b4aaa2b7c0d466ccb8b5b85d diff --git a/sys-kernel/installkernel/installkernel-0.1.ebuild b/sys-kernel/installkernel/installkernel-0.1.ebuild new file mode 100644 index 0000000..cac44a6 --- /dev/null +++ b/sys-kernel/installkernel/installkernel-0.1.ebuild @@ -0,0 +1,25 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +DESCRIPTION="Installkernel script for Portage-powered Android systems" +HOMEPAGE="https://github.com/KireinaHoro/installkernel" +SRC_URI="https://github.com/KireinaHoro/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~arm64" +IUSE="" + +DEPEND="" +RDEPEND="${DEPEND} +sys-kernel/preinit +app-arch/cpio +dev-util/abootimg +" + +src_install() { + into /bin + dobin installkernel +} diff --git a/sys-kernel/installkernel/metadata.xml b/sys-kernel/installkernel/metadata.xml new file mode 100644 index 0000000..c97fd01 --- /dev/null +++ b/sys-kernel/installkernel/metadata.xml @@ -0,0 +1,11 @@ + + + + +i@jsteward.moe + + +Script to automatically generate Android boot.img for flashing the kernel on +Portage-powered Android systems. + + diff --git a/sys-kernel/preinit/Manifest b/sys-kernel/preinit/Manifest new file mode 100644 index 0000000..2323982 --- /dev/null +++ b/sys-kernel/preinit/Manifest @@ -0,0 +1,3 @@ +DIST preinit-0.3.tar.gz 14405 BLAKE2B c32ef3303c80530eb2abf31d788ffbe8ea1f0eea029475b13163608477776439196d174438597d60cf24f3887c2462cd5eb4706d58327928b71b3b91e08bbec3 SHA512 fd4037fa72dfeb5d34b1ecc251f818e2adfd671a689cd01d9b355c71eac067b36c88ec5a3f2d1ddbad1584022970edaf926e747184725406b20fd68f170724c9 +EBUILD preinit-0.3.ebuild 1477 BLAKE2B 13848f77810f76e1d53efa44ff71d2d9f7d9a696dfa665772b7213c2afbf82cbaab77b1202b758a7648971f560db88a09cf54eacc194734b14b8da7f88184b8d SHA512 4abb3b51a3d80f2f2c8c691723dc2234f8d98d4bc65ac726e7cebe0ac1ada810555d80e691e6523ec448b5dc8f6dfb4dcf88483730a8fc8081a370ee88179532 +MISC metadata.xml 400 BLAKE2B 798f691229a445bf0a1890fa693c5b145dffab28d4a3f9ddaa1d10e68158f16cee04229bd944d54c1a12c35eb7bf5ba5922e387910b0a930bb8a964f10af7a82 SHA512 05282919ebaf24720af3ead93629fef29e1c253680fefd4169bb823c570c55a612292636193c15cd940bb69de23524f7c521b1a4dbc0aa1ab640b1a3093c7c9a diff --git a/sys-kernel/preinit/metadata.xml b/sys-kernel/preinit/metadata.xml new file mode 100644 index 0000000..02a9c27 --- /dev/null +++ b/sys-kernel/preinit/metadata.xml @@ -0,0 +1,10 @@ + + + + +i@jsteward.moe + + +Preinit contains initramfs and abootimg information to build boot.img, which is the kernel and initramfs image format for Android bootloaders. + + diff --git a/sys-kernel/preinit/preinit-0.3.ebuild b/sys-kernel/preinit/preinit-0.3.ebuild new file mode 100644 index 0000000..e03cb62 --- /dev/null +++ b/sys-kernel/preinit/preinit-0.3.ebuild @@ -0,0 +1,48 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +DESCRIPTION="Preinit files for Portage-powered Android systems" +HOMEPAGE="https://github.com/KireinaHoro/preinit" +SRC_URI="https://github.com/KireinaHoro/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~arm64" +IUSE="" + +DEPEND="" +RDEPEND="${DEPEND} +sys-apps/busybox[static] +" + +src_install() { + insinto /usr/share/eselect/modules + doins preinit.eselect + insinto /usr/lib/preinit/devices + cd devices + for a in *; do + doins -r $a + done +} + +pkg_postinst() { + device=$(sed -E -n 's/.*androidboot.hardware=(\S*).*/\1/p' /proc/cmdline) + if [ -d "/usr/lib/preinit/$device" ] ; then + eselect preinit set $device + einfo "Preinit files selected for device $device. If this device is not" + einfo "$device, choose the correct one with \`eselect preinit set \`." + else + if [ -z "$device" ] ; then + ewarn "We failed to detect the device codename, thus we're unable to select preinit" + ewarn "files for this device. To manually select, run \`eselect preinit list\` and" + ewarn "select accordingly." + else + ewarn "The device $device is not yet supported by preinit. Create your own initramfs" + ewarn "and bootimg.cfg according to $HOMEPAGE ," + ewarn "place them in /usr/lib/preinit/custom, and then select 'custom' with \`eselect" + ewarn "preinit set custom\`. Create pull request to add a working device." + fi + fi +} -- cgit v1.2.3-65-gdbad