mklive: add -a opt to set XBPS_ARCH (for musl); misc changes for dracut/adduser.
This commit is contained in:
parent
14381901e4
commit
914e193724
@ -1,4 +1,4 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh -x
|
||||||
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||||
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||||
|
|
||||||
@ -20,11 +20,12 @@ if ! grep -q ${USERSHELL} ${NEWROOT}/etc/shells ; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# Create new user and remove password. We'll use autologin by default.
|
# Create new user and remove password. We'll use autologin by default.
|
||||||
chroot ${NEWROOT} useradd -c $USERNAME -m $USERNAME -G wheel -s $USERSHELL
|
chroot ${NEWROOT} useradd -m -c $USERNAME -G wheel -s $USERSHELL $USERNAME
|
||||||
chroot ${NEWROOT} passwd -d $USERNAME >/dev/null 2>&1
|
chroot ${NEWROOT} passwd -d $USERNAME >/dev/null 2>&1
|
||||||
|
|
||||||
# Setup default root password (voidlinux).
|
# Setup default root/user password (voidlinux).
|
||||||
chroot ${NEWROOT} sh -c 'echo "root:voidlinux" | chpasswd -c SHA512'
|
chroot ${NEWROOT} sh -c 'echo "root:voidlinux" | chpasswd -c SHA512'
|
||||||
|
chroot ${NEWROOT} sh -c "echo "$USERNAME:voidlinux" | chpasswd -c SHA512"
|
||||||
|
|
||||||
# Enable sudo permission by default.
|
# Enable sudo permission by default.
|
||||||
if [ -f ${NEWROOT}/etc/sudoers ]; then
|
if [ -f ${NEWROOT}/etc/sudoers ]; then
|
||||||
|
13
mklive.sh.in
13
mklive.sh.in
@ -49,6 +49,7 @@ usage() {
|
|||||||
Usage: $(basename $0) [options]
|
Usage: $(basename $0) [options]
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
|
-a <xbps-arch> Set XBPS_ARCH (do not use it unless you know what it is)
|
||||||
-b <system-pkg> Set an alternative base-system package (defaults to base-system).
|
-b <system-pkg> Set an alternative base-system package (defaults to base-system).
|
||||||
-r <repo-url> Use this XBPS repository (may be specified multiple times).
|
-r <repo-url> Use this XBPS repository (may be specified multiple times).
|
||||||
-c <cachedir> Use this XBPS cache directory (/var/cache/xbps if unset).
|
-c <cachedir> Use this XBPS cache directory (/var/cache/xbps if unset).
|
||||||
@ -84,6 +85,9 @@ install_prereqs() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
install_packages() {
|
install_packages() {
|
||||||
|
if [ -n "$BASE_ARCH" ]; then
|
||||||
|
export XBPS_ARCH="$BASE_ARCH"
|
||||||
|
fi
|
||||||
# Check that all pkgs are reachable.
|
# Check that all pkgs are reachable.
|
||||||
${XBPS_INSTALL_CMD} -r $ROOTFS $XBPS_REPOSITORY $XBPS_CACHEDIR -yn ${PACKAGE_LIST} >>$LOGFILE 2>&1
|
${XBPS_INSTALL_CMD} -r $ROOTFS $XBPS_REPOSITORY $XBPS_CACHEDIR -yn ${PACKAGE_LIST} >>$LOGFILE 2>&1
|
||||||
if [ $? -ne 0 ]; then
|
if [ $? -ne 0 ]; then
|
||||||
@ -107,6 +111,10 @@ install_packages() {
|
|||||||
fi
|
fi
|
||||||
# Cleanup and remove useless stuff.
|
# Cleanup and remove useless stuff.
|
||||||
rm -rf $ROOTFS/var/cache/* $ROOTFS/run/* $ROOTFS/var/run/*
|
rm -rf $ROOTFS/var/cache/* $ROOTFS/run/* $ROOTFS/var/run/*
|
||||||
|
|
||||||
|
cp /home/juan/projects/runit-void/core-services/00-pseudofs.sh $ROOTFS/etc/runit/core-services/
|
||||||
|
|
||||||
|
unset XBPS_ARCH
|
||||||
}
|
}
|
||||||
|
|
||||||
copy_dracut_files() {
|
copy_dracut_files() {
|
||||||
@ -126,7 +134,7 @@ generate_initramfs() {
|
|||||||
_args="--omit systemd"
|
_args="--omit systemd"
|
||||||
fi
|
fi
|
||||||
xbps-uchroot $VOIDHOSTDIR /usr/bin/dracut --${INITRAMFS_COMPRESSION} \
|
xbps-uchroot $VOIDHOSTDIR /usr/bin/dracut --${INITRAMFS_COMPRESSION} \
|
||||||
--force-add "vmklive" ${_args} "/boot/initrd" $KERNELVERSION >>$LOGFILE 2>&1
|
--force-add "vmklive busybox" ${_args} "/boot/initrd" $KERNELVERSION >>$LOGFILE 2>&1
|
||||||
|
|
||||||
mv $VOIDHOSTDIR/boot/initrd $BOOT_DIR
|
mv $VOIDHOSTDIR/boot/initrd $BOOT_DIR
|
||||||
cp $VOIDHOSTDIR/boot/vmlinuz-$KERNELVERSION $BOOT_DIR/vmlinuz
|
cp $VOIDHOSTDIR/boot/vmlinuz-$KERNELVERSION $BOOT_DIR/vmlinuz
|
||||||
@ -222,8 +230,9 @@ generate_iso_image() {
|
|||||||
#
|
#
|
||||||
# main()
|
# main()
|
||||||
#
|
#
|
||||||
while getopts "b:r:c:C:T:k:l:i:s:o:p:h" opt; do
|
while getopts "a:b:r:c:C:T:k:l:i:s:o:p:h" opt; do
|
||||||
case $opt in
|
case $opt in
|
||||||
|
a) BASE_ARCH="$OPTARG";;
|
||||||
b) BASE_SYSTEM_PKG="$OPTARG";;
|
b) BASE_SYSTEM_PKG="$OPTARG";;
|
||||||
r) XBPS_REPOSITORY+="--repository=$OPTARG ";;
|
r) XBPS_REPOSITORY+="--repository=$OPTARG ";;
|
||||||
c) XBPS_CACHEDIR="--cachedir=$OPTARG";;
|
c) XBPS_CACHEDIR="--cachedir=$OPTARG";;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user