Added new calculate-sources. Place calculate-sources in hardmask.

master
Mike Hiretsky 15 years ago
parent f06c835bd4
commit a194a57bfc

@ -7,97 +7,139 @@
# Purpose: Installing linux-desktop, linux-server.
# Build the kernel from source.
inherit calculate eutils kernel-2 linux-mod
EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_install pkg_postinst pkg_postrm pkg_prerm
SRC_URI="x86?
( ftp://ftp.calculate.ru/pub/calculate/${PN}/${PN}-i686-${PV}.tar.bz2 )
amd64?
( ftp://ftp.calculate.ru/pub/calculate/${PN}/${PN}-x86_64-${PV}.tar.bz2 )"
SLOT="${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}"
GENTOO_SOURCES_PV="${SLOT}"
GENTOO_SOURCES_PVR="${GENTOO_SOURCES_PV}-${GENTOO_SOURCES_PR}"
SRC_NAME=linux-${GENTOO_SOURCES_PV}-gentoo-${GENTOO_SOURCES_PR}
KV_FULL="${SLOT}${KV_TYPE}"
inherit calculate eutils kernel-2
EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_install pkg_preinst pkg_postinst pkg_postrm
detect_version
detect_arch
CKV=$(get_version_component_range 1-3)
SLOT=$CKV
KV_FULL="${PV}-calculate"
CKV_FULL="${CKV}-calculate"
S="${WORKDIR}/linux-${KV_FULL}"
EXTRAVERSION="-calculate"
UNIPATCH_STRICTORDER=1
CALC_URI="ftp://ftp.calculate.ru/pub/calculate/${PN}/${PN}-${CKV}.tar.bz2
ftp://mirror.yandex.ru/calculate/${PN}/${PN}-${CKV}.tar.bz2
http://mirror.yandex.ru/calculate/${PN}/${PN}-${CKV}.tar.bz2
ftp://ftp.linux.kiev.ua/pub/Linux/Calculate/${PN}/${PN}-${CKV}.tar.bz2"
#KERNEL_URI=`last_arg $KERNEL_URI`
#UNIPATCH_LIST_DEFAULT=""
SLOT_T="${PORTAGE_TMPDIR}/portage/${CATEGORY}/${PN}-${SLOT}/temp"
DEPEND="=sys-kernel/gentoo-sources-${GENTOO_SOURCES_PVR}"
RDEPEND="${DEPEND}"
CALCULATE_OVERLAY="usr/local/portage/layman/calculate"
CARCH=`arch`
KERNEL_CONFIG=
calculate-kernel_pkg_setup() {
mkdir -p ${SLOT_T}
kernel-2_pkg_setup
[[ -e /etc/calculate/calculate.ini ]] && \
SYSTEM=$( cat /etc/calculate/calculate.ini | sed -rn 's/system\=(.*)/\1/p' )
[[ -n "$SYSTEM" ]] || SYSTEM=desktop
[[ -n "$KERNEL_CONFIG" ]] || KERNEL_CONFIG="config-${SYSTEM}-${CARCH}-${CKV}"
}
calculate-kernel_src_unpack() {
unpack ${PN}-`arch`-${PV}.tar.bz2
#unpack ${A}
kernel-2_src_unpack
}
calculate-kernel_src_compile() {
cd ${WORKDIR}
addwrite "/usr/src/"
cp -Rpt ${ROOT}/usr/src/ usr/src/*
export LDFLAGS=""
mkdir -p ${WORKDIR}/boot
cd ${S}
cp ${ROOT}/${CALCULATE_OVERLAY}/profiles/kernel/${KERNEL_CONFIG} \
${WORKDIR}/config || die "cannot copy kernel config"
cp ${WORKDIR}/config ${S}/.config
calculate_set_kernelversion ${ROOT}/usr/src/${SRC_NAME}
rm ${ROOT}/usr/src/linux
ln -sf ${SRC_NAME} ${ROOT}/usr/src/linux
cd ${ROOT}/usr/src/linux
local GENTOOARCH="${ARCH}"
[[ ${ARCH} = x86 ]] && ARCH=i686 || unset ARCH
make modules_prepare
ARCH="${GENTOOARCH}"
cd ${WORKDIR}
DEFAULT_KERNEL_SOURCE="${S}" CMD_KERNEL_DIR="${S}" genkernel \
--kerneldir=${S} \
--kernel-config=${WORKDIR}/config \
--cachedir=${WORKDIR}/cache \
--makeopts=${MAKEOPTS} \
--tempdir=${S}/temp \
--logfile=${WORKDIR}/genkernel.log \
--bootdir=${WORKDIR}/boot \
--no-save-config \
--kernname=${SYSTEM} \
--disklabel \
--slowusb \
--splash=tty1 \
--module-prefix=${WORKDIR} \
all || die "genkernel failed"
make clean || die "cannot modules prepare"
ARCH="${GENTOOARCH}"
mv ${WORKDIR}/boot/kernel-${SYSTEM}-${CARCH}-${CKV_FULL} \
${WORKDIR}/boot/vmlinuz-${KV_FULL}-installed
mv ${WORKDIR}/boot/initramfs-${SYSTEM}-${CARCH}-${CKV_FULL} \
${WORKDIR}/boot/initramfs-${KV_FULL}-installed
mv ${WORKDIR}/boot/System.map-${SYSTEM}-${CARCH}-${CKV_FULL} \
${WORKDIR}/boot/System.map-${KV_FULL}-installed
cp ${WORKDIR}/boot/System.map-${KV_FULL}-installed ${S}/System.map
rm ${WORKDIR}/lib/modules/${CKV_FULL}/build
rm ${WORKDIR}/lib/modules/${CKV_FULL}/source
}
calculate-kernel_src_install() {
dodir /usr/src/${SRC_NAME}
cd ${WORKDIR}
insinto /
doins -r boot
doins -r lib
insinto /usr/src
kernel-2_src_install
cd ${WORKDIR}/lib
insinto /lib
doins -r modules
insinto /tmp
doins -r firmware
cd ${WORKDIR}
dosym /usr/src/${SRC_NAME} \
"/lib/modules/${GENTOO_SOURCES_PV}-calculate/source" ||
dosym /usr/src/linux-${KV_FULL} \
"/lib/modules/${KV_FULL}/source" ||
die "cannot install source symlink"
dosym /usr/src/${SRC_NAME} \
"/lib/modules/${GENTOO_SOURCES_PV}-calculate/build" ||
dosym /usr/src/linux-${KV_FULL} \
"/lib/modules/${KV_FULL}/build" ||
die "cannot install build symlink"
}
addwrite "/lib/firmware"
# Workaround kernel issue with colliding
# firmwares across different kernel versions
for fwfile in `find "${D}/lib/firmware" -type f`; do
sysfile="${ROOT}/${fwfile/${D}}"
if [ -f "${sysfile}" ]; then
#ewarn "Removing duplicated: ${sysfile}"
rm ${sysfile} || die "failed to remove ${sysfile}"
fi
done
PKG_CONTENTS=${ROOT}/var/db/pkg/${CATEGORY}/${PN}-${SLOT}*/CONTENTS
calculate-kernel_pkg_preinst() {
PKG_CONTENTS=${ROOT}/var/db/pkg/${CATEGORY}/${PN}-${CKV}*/CONTENTS
test -f ${PKG_CONTENTS} && calculate_rm_modules_dir ${PKG_CONTENTS}
}
calculate-kernel_pkg_prerm() {
calculate_rm_modules_dir ${ROOT}/var/db/pkg/${CATEGORY}/${PF}/CONTENTS
calculate-kernel_pkg_postrm() {
rm -f ${SLOT_T}/.alreadydel
rmdir ${SLOT_T} &>/dev/null
calculate_restore_kernel ${ROOT}/boot
}
calculate-kernel_pkg_postinst() {
calculate_update_splash ${ROOT}/boot/initramfs-${SYSTEM}-${SLOT}-calculate
calculate_update_kernel ${SYSTEM} ${SLOT} ${ROOT}/boot
KV_OUT_DIR=/usr/src/${SRC_NAME}
#calculate_update_splash ${ROOT}/boot/initramfs-${SYSTEM}-${KV_FULL}
calculate_update_kernel ${KV_FULL} ${ROOT}/boot
cp -a /tmp/firmware/* /lib/firmware/
rm -rf /tmp/firmware
KV_OUT_DIR=/usr/src/linux-${KV_FULL}
cd ${KV_OUT_DIR}
local GENTOOARCH="${ARCH}"
[[ ${ARCH} = x86 ]] && ARCH=i686 || unset ARCH
make modules_prepare || die "cannot modules prepare"
ARCH="${GENTOOARCH}"
kernel-2_pkg_postinst
UPDATE_MODULEDB=false
linux-mod_pkg_postinst
}
calculate-kernel_pkg_postrm() {
rm -f ${SLOT_T}/.alreadydel
rmdir ${SLOT_T} &>/dev/null
calculate_restore_kernel ${ROOT}/boot
calculate_update_depmod
calculate_update_modules
}

@ -2,6 +2,17 @@
# Distributed under the terms of the GNU General Public License v2
# $Header:
inherit eutils linux-info
# @FUNCTION: last_arg
# @USING: last_arg manyarguments
# @DESCRIPTION:
# print last argument
last_arg() {
shift $(( $# - 1 ))
echo $1
}
# @FUNCTION: rm_link_with_file
# @USING: rm_link_with_file filename
# @DESCRIPTION:
@ -46,13 +57,26 @@ make_old_file() {
# @FUNCTION: update_file
# @USAGE: wear_out_file filename link
# @DESCRIPTION:
# update a file, and make old file if need
# update a file from filename-installed, and make old file if need
update_file() {
if [[ `readlink -f $2` != `readlink -f $1` ]]
# if newest file is absent
[[ -e $1-installed ]] || return 1
# link and filename exist
if [[ `readlink -f $2` == `readlink -f $1` ]]
then
make_old_file $2
ln -sf `basename $1` $2
make_old_file $2
else
# rename link to link.old
mv $2 $2.old &>/dev/null
# make old filename
make_old_file $1
# fix link pointed to previous filename
find -lname "$1" -exec ln -sf $1.old {} \;
fi
# make link to filename
ln -sf `basename $1` $2
# rename installed
mv $1-installed $1
}
# @FUNCTION: calculate_update_kernel
@ -61,16 +85,15 @@ update_file() {
# Make symbolic link to vmlinuz, preserve old vmlinuz
# Copy initramfs to initrd and initrd-install
calculate_update_kernel() {
kname=$1
kversion=$2
dir=$3
kversion=$1
dir=$2
# update vmlinuz
update_file ${dir}/linux-${kname}-${kversion}-calculate ${dir}/vmlinuz
update_file ${dir}/vmlinuz-${kversion} ${dir}/vmlinuz
# update initrd
update_file ${dir}/initramfs-${kname}-${kversion}-calculate ${dir}/initrd
update_file ${dir}/initramfs-${kversion} ${dir}/initrd
# update System.map
update_file ${dir}/System.map-${kname}-${kversion}-calculate ${dir}/System.map
update_file ${dir}/System.map-${kversion} ${dir}/System.map
ebegin "Trying to optimize initramfs"
( which calculate &>/dev/null && calculate --initrd ) && eend 0 || eend 1
}
@ -205,3 +228,56 @@ calculate_set_kernelversion() {
sed -ri "s/^EXTRAVERSION = .*$/EXTRAVERSION = $KV_TYPE/" \
${KERNEL_DIR}/Makefile
}
# FUNCTION: calculate_update_modules
# DESCRIPTION:
# It calls the update-modules utility. Get from linux-mod.
calculate_update_modules() {
if [ -x /sbin/update-modules ] && \
grep -v -e "^#" -e "^$" "${D}"/etc/modules.d/* >/dev/null 2>&1; then
ebegin "Updating modules.conf"
/sbin/update-modules
eend $?
elif [ -x /sbin/update-modules ] && \
grep -v -e "^#" -e "^$" "${D}"/etc/modules.d/* >/dev/null 2>&1; then
ebegin "Updating modules.conf"
/sbin/update-modules
eend $?
fi
}
# FUNCTION: calculate_update_depmod
# DESCRIPTION:
# It updates the modules.dep file for the current kernel.
# Get from linux-mod.
calculate_update_depmod() {
# if we haven't determined the version yet, we need too.
get_version;
ebegin "Updating module dependencies for ${KV_FULL}"
if [ -r "${KV_OUT_DIR}"/System.map ]
then
depmod -ae -F "${KV_OUT_DIR}"/System.map -b "${ROOT}" -r ${KV_FULL}
eend $?
else
ewarn
ewarn "${KV_OUT_DIR}/System.map not found."
ewarn "You must manually update the kernel module dependencies using depmod."
eend 1
ewarn
fi
}
# FUNCTION: calculate_clean_firmwares
# DESCRIPTION:
# Workaround kernel issue with collising
# firmwares across different kernel versions
calculate_clean_firmwares() {
for fwfile in `find "${ROOT}/tmp/firmware" -type f`; do
sysfile="${ROOT}/lib/${fwfile/${ROOT}/tmp/}"
if [ -f "${sysfile}" ]; then
#ewarn "Removing duplicated: ${sysfile}"
rm ${sysfile} || die "failed to remove ${sysfile}"
fi
done
}

@ -5,6 +5,7 @@
=sys-apps/calculate-server-9999
# Under construction
sys-kernel/calculate-sources
sys-kernel/linux-desktop
sys-kernel/linux-server
=media-gfx/cds-themes-10.0.1

@ -1,14 +1,6 @@
DIST calculate-sources-2.6.27.tar.bz2 91962 RMD160 f63187f2300025f04502d753aa16a841486f85eb SHA1 32923a7dbcb6b895d0a66b00cd4821bbe851ccc1 SHA256 bfaa178724507abf2dfcff2a1f2fff80cca7c25e64248cfbb966cb118738cb26
DIST calculate-sources-2.6.28.tar.bz2 73995 RMD160 2845f46fa3304fb045f2c4d59459c7915ff8da19 SHA1 98b4b20e0469f9263403efef70ddd85f0c91b0c8 SHA256 7353953253f7d2b271b659f312519e2362cde1ae27615674d53d791a07a4be28
DIST calculate-sources-2.6.30.tar.bz2 85042 RMD160 19890fb8b2acb1956c8f60b6a0a1963ffeba60df SHA1 226493cd4c7a21ce7e239ed7b5177fe6dbd98177 SHA256 3a630aec2688adecb12bb635d4697d09c7fb6eb8c88ea431a255c22aa5f5ad2d
DIST linux-2.6.27.tar.bz2 50355835 RMD160 5be4595ad824a4af67c1ec0c692838ad0c31f0c0 SHA1 8425ec3be2652f9d511911ff4fcf99039d4574be SHA256 0e99bf9e83f4d1ae0c656741a84dfddfa9c4d2469cf35475f5939d02dc3e4393
DIST linux-2.6.28.tar.bz2 52665364 RMD160 47e8925220e29e239f9478228fc53543c1f7b300 SHA1 4f40f8bf3fd110b0cc6e1fea5f539c98f9959e94 SHA256 ae0d97c55efe7fce01273c97f8152af0deff5541e3bbf5b9ad98689112b54380
DIST linux-2.6.30.tar.bz2 59435895 RMD160 72219f992c6266dfe78c6d803d0506c9db1e45b8 SHA1 5fb7f2ccdc59c57887d586971a157bee7af324d1 SHA256 d7b9f19b92fd5c693c16cd62f441d051b699f28ec6a175d1b464e58bacd8c78f
DIST patch-2.6.27.31.bz2 389553 RMD160 fcdc9604930b4f4d2046d4bd1f660ba57b94de6c SHA1 c9765ff94ae87c74f2acb7a24e7252e166e7ef8e SHA256 cd4a503e2e7700da7613d36dbfffe4d279d6417bb6f028a28281ab2c2c0774b3
DIST patch-2.6.28.10.bz2 203102 RMD160 b1573d047e4247a5419cb95b2b23d8bd47a41f67 SHA1 61fb49c165a4476f54aa10d74ad445bf3bd66759 SHA256 f4a2f97f59d272571a4977916392628642a8e4388f94417a723dc4bdb0e47dc2
DIST patch-2.6.30.5.bz2 92005 RMD160 7069b3994e9f13b0a88b5c876494513640036d37 SHA1 3d69d845c2f9f1ce0868dbac0e4145a8a5a364a9 SHA256 95550343a0f013301c20a0d27f681b97fbf61379b7bb14ecee4057141891b5f2
EBUILD calculate-sources-2.6.27.31.ebuild 1067 RMD160 7f1ee1fbcae7f1d40fe9c76dd8270a050ff8df50 SHA1 2b420f4b83239231cb841c99a2cbebe1e904150f SHA256 545f84c234eae8357c26b0d5639af52ff1a459b8580df445577e890c9fc08d8e
EBUILD calculate-sources-2.6.28.10.ebuild 1067 RMD160 7f1ee1fbcae7f1d40fe9c76dd8270a050ff8df50 SHA1 2b420f4b83239231cb841c99a2cbebe1e904150f SHA256 545f84c234eae8357c26b0d5639af52ff1a459b8580df445577e890c9fc08d8e
EBUILD calculate-sources-2.6.30.5.ebuild 1132 RMD160 745b900682b949112e354a142441069c4567531b SHA1 1a182e5e33ee1779b739884ea1ef8634096599e8 SHA256 c6b40a52f643015100933830b9f252508290698e24216dc2d3328f6638ceebb0
DIST calculate-sources-2.6.32.tar.bz2 133992 RMD160 6c8ad119807c591ad926435dad7986098f26e3ef SHA1 2b398bf6e9a6bceca26e3df42c471c9321c0a6f2 SHA256 b30e70642569bae7dff4c9b2046066774c6a8e2a2c1252b353b908824cf64bc4
DIST linux-2.6.32.tar.bz2 64424138 RMD160 b93742cbaf8174f2200d2dbef0d47a26c618039c SHA1 410b4fc818023bfef60064e973ff0ab46d3bfb19 SHA256 5099786d80b8407d98a619df00209c2353517f22d804fdd9533b362adcb4504e
DIST patch-2.6.32.3.bz2 96971 RMD160 29014f8b35d1d1198eb47baf8730f0fdf8eb6b00 SHA1 94756d29b2192c29301c24061e47e561634e74ab SHA256 e7526a7ae7210bc7c4f4837e9d8a666f9b126d59bee16015c41c5850d29c841f
EBUILD calculate-sources-2.6.32.3.ebuild 575 RMD160 fc4a341297e2e8e375eb2ebf497a27ffd19b42b8 SHA1 31384183a2c185c2dace9e6fff9225a8165c69dc SHA256 fd7f322f687b1e0bec54c2cfc9db42a7246fe51e820e26d997a6d748da9714f5
MISC ChangeLog 222 RMD160 09c8c97e1cd55540efc157d0a9eb5932f535c553 SHA1 20867411aefaf53108597d80e907371d80cdb26d SHA256 ec5e7be9e57fda7d1335335e2ae9ddf4ae247e5d59759b391f191f80424b00f0
MISC metadata.xml 279 RMD160 860d096ca59a4700ae40355018e42c3f74d0f81f SHA1 c89c24563ae4b5bcebf5c49a9ad573eabbbc5ca9 SHA256 f01d48d7d823bf111ad86c2b595d8bcc9b8b49c3f7439e29b65aa3d83fcd616d

@ -1,41 +0,0 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
ETYPE="sources"
CALC_VER=""
KEYWORDS="amd64 x86"
HOMEPAGE="http://www.calculate-linux.org"
inherit kernel-2
detect_version
detect_arch
CKV=$(get_version_component_range 1-3)
CALC_SUBV=$(get_version_component_range 3-4)
CALC_K_SUBV=$(get_version_component_range 4)
KV_FULL="2.6.${CALC_SUBV}-calculate${CALC_VER}"
EXTRAVERSION=".${CALC_K_SUBV}-calculate${CALC_VER}"
UNIPATCH_STRICTORDER=1
CALC_URI="ftp://mirror.yandex.ru/calculate/${PN}/${PN}-${CKV}.tar.bz2
http://mirror.yandex.ru/calculate/${PN}/${PN}-${CKV}.tar.bz2
ftp://ftp.linux.kiev.ua/pub/Linux/Calculate/${PN}/${PN}-${CKV}.tar.bz2"
DESCRIPTION="Full sources including the Calculate patchset for the ${KV_MAJOR}.${KV_MINOR} kernel tree"
SRC_URI="${KERNEL_URI} ${CALC_URI}"
UNIPATCH_LIST="${DISTDIR}/${PN}-${CKV}.tar.bz2"
pkg_postinst() {
kernel-2_pkg_postinst
einfo "For more info on this patchset, and how to report problems, see:"
einfo "${HOMEPAGE}"
}

@ -1,41 +0,0 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
ETYPE="sources"
CALC_VER=""
KEYWORDS="amd64 x86"
HOMEPAGE="http://www.calculate-linux.org"
inherit kernel-2
detect_version
detect_arch
CKV=$(get_version_component_range 1-3)
CALC_SUBV=$(get_version_component_range 3-4)
CALC_K_SUBV=$(get_version_component_range 4)
KV_FULL="2.6.${CALC_SUBV}-calculate${CALC_VER}"
EXTRAVERSION=".${CALC_K_SUBV}-calculate${CALC_VER}"
UNIPATCH_STRICTORDER=1
CALC_URI="ftp://mirror.yandex.ru/calculate/${PN}/${PN}-${CKV}.tar.bz2
http://mirror.yandex.ru/calculate/${PN}/${PN}-${CKV}.tar.bz2
ftp://ftp.linux.kiev.ua/pub/Linux/Calculate/${PN}/${PN}-${CKV}.tar.bz2"
DESCRIPTION="Full sources including the Calculate patchset for the ${KV_MAJOR}.${KV_MINOR} kernel tree"
SRC_URI="${KERNEL_URI} ${CALC_URI}"
UNIPATCH_LIST="${DISTDIR}/${PN}-${CKV}.tar.bz2"
pkg_postinst() {
kernel-2_pkg_postinst
einfo "For more info on this patchset, and how to report problems, see:"
einfo "${HOMEPAGE}"
}

@ -1,42 +0,0 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
ETYPE="sources"
CALC_VER=""
KEYWORDS="amd64 x86"
HOMEPAGE="http://www.calculate-linux.org"
inherit kernel-2
detect_version
detect_arch
CKV=$(get_version_component_range 1-3)
CALC_SUBV=$(get_version_component_range 3-4)
CALC_K_SUBV=$(get_version_component_range 4)
KV_FULL="2.6.${CALC_SUBV}-calculate${CALC_VER}"
[ -z ${CALC_K_SUBV} ] && EXTRAVERSION="-calculate${CALC_VER}" ||
EXTRAVERSION=".${CALC_K_SUBV}-calculate${CALC_VER}"
UNIPATCH_STRICTORDER=1
CALC_URI="ftp://mirror.yandex.ru/calculate/${PN}/${PN}-${CKV}.tar.bz2
http://mirror.yandex.ru/calculate/${PN}/${PN}-${CKV}.tar.bz2
ftp://ftp.linux.kiev.ua/pub/Linux/Calculate/${PN}/${PN}-${CKV}.tar.bz2"
DESCRIPTION="Full sources including the Calculate patchset for the ${KV_MAJOR}.${KV_MINOR} kernel tree"
SRC_URI="${KERNEL_URI} ${CALC_URI}"
UNIPATCH_LIST="${DISTDIR}/${PN}-${CKV}.tar.bz2"
pkg_postinst() {
kernel-2_pkg_postinst
einfo "For more info on this patchset, and how to report problems, see:"
einfo "${HOMEPAGE}"
}

@ -0,0 +1,21 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
ETYPE="sources"
inherit calculate-kernel
DESCRIPTION="Full sources including the Calculate patchset for the ${KV_MAJOR}.${KV_MINOR} kernel tree"
KEYWORDS="amd64 x86"
HOMEPAGE="http://www.calculate-linux.org"
SRC_URI="${KERNEL_URI} ${ARCH_URI} ${CALC_URI}"
UNIPATCH_LIST="${DISTDIR}/${PN}-${CKV}.tar.bz2"
pkg_postinst() {
calculate-kernel_pkg_postinst
einfo "For more info on this patchset, and how to report problems, see:"
einfo "${HOMEPAGE}"
}
Loading…
Cancel
Save