mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2026-05-06 04:46:42 +02:00
main/util-vserver: upgrade to 0.30.216_pre2994
also add supporrt for creating 32bit guests on x86_64 hosts
This commit is contained in:
parent
d451866fd5
commit
688d54df37
@ -1,6 +1,6 @@
|
||||
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
|
||||
pkgname=util-vserver
|
||||
pkgver=0.30.216_pre2981
|
||||
pkgver=0.30.216_pre2994
|
||||
_realver=${pkgver%_*}-${pkgver#*_}
|
||||
pkgrel=0
|
||||
pkgdesc="Linux-VServer admin utilities"
|
||||
@ -33,7 +33,7 @@ prepare() {
|
||||
esac
|
||||
done
|
||||
msg "Running autotools..."
|
||||
aclocal -I m4 && autoconf && automake && libtoolize || return 1
|
||||
libtoolize --force && aclocal -I m4 && autoconf && automake || return 1
|
||||
|
||||
# this is an ugly workaround
|
||||
sed -i -e "s:as_echo=.*:as_echo=echo:g" configure
|
||||
@ -69,11 +69,11 @@ package() {
|
||||
install -Dm755 ../setup-vs-guest "$pkgdir"/usr/sbin/setup-vs-guest
|
||||
}
|
||||
|
||||
md5sums="b9064c39a5ee4bfd5f98c419f3e7edfb util-vserver-0.30.216-pre2981.tar.bz2
|
||||
md5sums="c2801f089982043bd0528349a1c61bb7 util-vserver-0.30.216-pre2994.tar.bz2
|
||||
73c7437dea6937a57cf38d166ef83c09 chmod.patch
|
||||
ff8f561f672524eb46fe633f584ef60e ensc_pathprog.patch
|
||||
da8b70c4fd40e68894b3903ffd121397 validate.patch
|
||||
04000261fd990a3963b0e98260b481bd alpine.patch
|
||||
3fc52e20d998f02995f21912738f5d36 bb-grep.patch
|
||||
49bca7969cc284adf68e0ef284c0660e setup-vs-template
|
||||
03e109447c2d500dfb27a3046170b92f setup-vs-guest"
|
||||
fae6626b724dec90a19924d68d355cd2 setup-vs-template
|
||||
ef35e154d1a221631a53f9c2cfbe9834 setup-vs-guest"
|
||||
|
||||
@ -153,7 +153,7 @@ valid_hostname() {
|
||||
#
|
||||
last_ipv4_addr_mask() {
|
||||
local _iface=$1
|
||||
ip addr show dev $_iface | awk '$1 == "inet" {print $2}' | tail -n1
|
||||
ip addr show dev $_iface | sort | awk '$1 == "inet" {print $2}' | tail -n1
|
||||
}
|
||||
|
||||
valid_ip_and_prefix() {
|
||||
@ -235,8 +235,19 @@ ask_context() {
|
||||
done
|
||||
}
|
||||
|
||||
ask_guest_arch() {
|
||||
# get guest arch
|
||||
while true; do
|
||||
ask "Enter guest machine architecture (i686 or x86_64):" $_arch
|
||||
case "$resp" in
|
||||
i[3-6]86|x86_64) break;;
|
||||
esac
|
||||
echo "Only i[3-6]86 and x86_64 is supported"
|
||||
done
|
||||
}
|
||||
|
||||
ask_template() {
|
||||
local temp
|
||||
local temp= apk_arch= arch_opt=
|
||||
# get template
|
||||
while true; do
|
||||
ask "Enter template file (or empty for generate a new):" \
|
||||
@ -246,11 +257,18 @@ ask_template() {
|
||||
fi
|
||||
echo "Can not read $resp"
|
||||
done
|
||||
if [ "$_guest_arch" != "$_arch" ]; then
|
||||
case "$_guest_arch" in
|
||||
i?86) apk_arch=x86;;
|
||||
*) apk_arch=$_guest_arch;;
|
||||
esac
|
||||
arch_opt="-a $apk_arch"
|
||||
fi
|
||||
temp=$resp
|
||||
if [ -z "$temp" ]; then
|
||||
temp=/vservers/template.tar.gz
|
||||
temp=/vservers/template-$_guest_arch.tar.gz
|
||||
echo "Generating template..."
|
||||
if setup-vs-template -q -o $temp; then
|
||||
if setup-vs-template $arch_opt -q -o $temp; then
|
||||
echo "ok"
|
||||
else
|
||||
echo "Failed to create template"
|
||||
@ -265,6 +283,8 @@ usage() {
|
||||
exit 1
|
||||
}
|
||||
|
||||
_arch="$(uname -m)"
|
||||
|
||||
while getopts "h" opt; do
|
||||
case "$opt" in
|
||||
h) usage;;
|
||||
@ -289,6 +309,11 @@ while true; do
|
||||
ask_context
|
||||
_context=$resp
|
||||
|
||||
if [ "$_arch" = "x86_64" ]; then
|
||||
ask_guest_arch
|
||||
_guest_arch=$resp
|
||||
fi
|
||||
|
||||
ask_template
|
||||
_template=$resp
|
||||
|
||||
@ -296,10 +321,15 @@ while true; do
|
||||
--hostname $_hostname \
|
||||
$_ifaceopts \
|
||||
--context $_context \
|
||||
$arch_opt \
|
||||
-m template -- -t "$_template" -d alpine \
|
||||
&& cp /etc/resolv.conf /vservers/$_hostname/etc/ \
|
||||
&& cp /etc/apk/repositories /vservers/$_hostname/etc/apk/ \
|
||||
|| exit 1
|
||||
if [ "$_arch" != "$_guest_arch" ]; then
|
||||
echo "linux_32bit" >> /etc/vservers/$_hostname/personality
|
||||
echo "$_guest_arch" > /etc/vservers/$_hostname/uts/machine
|
||||
fi
|
||||
|
||||
shift
|
||||
[ $# -le 0 ] && exit 0
|
||||
|
||||
@ -16,8 +16,9 @@ clean_exit() {
|
||||
outfile=template.tar.gz
|
||||
fakeroot=
|
||||
repos=
|
||||
while getopts "ho:qX:" opt; do
|
||||
while getopts "a:ho:qX:" opt; do
|
||||
case "$opt" in
|
||||
a) arch_opt="--arch $OPTARG";;
|
||||
h) usage 0;;
|
||||
o) outfile="$OPTARG";;
|
||||
q) quiet=-q;;
|
||||
@ -32,7 +33,7 @@ fi
|
||||
|
||||
tmpdir=$(mktemp -d ${TMPDIR:-/tmp}/setup-vs-template-XXXXXX)
|
||||
|
||||
apk add --root "$tmpdir" --initdb --keys-dir /etc/apk/keys -U \
|
||||
apk add --root "$tmpdir" --initdb --keys-dir /etc/apk/keys -U $arch_opt \
|
||||
$quiet ${repos:---repositories-file /etc/apk/repositories} \
|
||||
alpine-base $@ \
|
||||
|| clean_exit 1
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user