Browse Source

support for default ubuntu boot

master
crims0n 5 years ago
parent
commit
4af27eb9c1
  1. 2
      autoinstall
  2. 3
      linux-live/install_chroot
  3. 101
      linux-live/minioslib
  4. 2
      linux-live/pkglists/ubuntu.list

2
autoinstall

@ -41,6 +41,8 @@ create_completion
create_backup create_backup
echo $LIVE_TYPE
# check number of args # check number of args
if [[ $# == 0 || $# > 3 ]]; then help; fi if [[ $# == 0 || $# > 3 ]]; then help; fi

3
linux-live/install_chroot

@ -8,9 +8,10 @@ SCRIPT_DIR="$(dirname "$(readlink -f "$0")")"
set +u set +u
if [ -z $OUTPUT ]; then if [ -z $OUTPUT ]; then
. $SCRIPT_DIR/buildconfig || exit 1 . $SCRIPT_DIR/buildconfig || exit 1
fi fi
set -u set -u
. $SCRIPT_DIR/minioslib || exit 1 . $SCRIPT_DIR/minioslib || exit 1
. $SCRIPT_DIR/config || exit 1 . $SCRIPT_DIR/config || exit 1

101
linux-live/minioslib

@ -551,7 +551,8 @@ function preserve_environment_variables() {
CREATE_BACKUP=$CREATE_BACKUP \ CREATE_BACKUP=$CREATE_BACKUP \
DEBIAN_FRONTEND_TYPE=$DEBIAN_FRONTEND_TYPE \ DEBIAN_FRONTEND_TYPE=$DEBIAN_FRONTEND_TYPE \
APT_CMD=$APT_CMD \ APT_CMD=$APT_CMD \
APT_OPTIONS=$APT_OPTIONS APT_OPTIONS=$APT_OPTIONS \
LIVE_TYPE=$LIVE_TYPE
fi fi
} }
@ -592,7 +593,8 @@ function build_chroot() {
CREATE_BACKUP=$CREATE_BACKUP \ CREATE_BACKUP=$CREATE_BACKUP \
DEBIAN_FRONTEND_TYPE=$DEBIAN_FRONTEND_TYPE \ DEBIAN_FRONTEND_TYPE=$DEBIAN_FRONTEND_TYPE \
APT_CMD=$APT_CMD \ APT_CMD=$APT_CMD \
APT_OPTIONS=$APT_OPTIONS /linux-live/install_chroot - APT_OPTIONS=$APT_OPTIONS \
LIVE_TYPE=$LIVE_TYPE /linux-live/install_chroot -
else else
chroot $BUILD_DIR /linux-live/install_chroot - chroot $BUILD_DIR /linux-live/install_chroot -
fi fi
@ -618,7 +620,7 @@ function build_live() {
remove_log_file remove_log_file
if [ LIVE_TYPE = "linux-live" ]; then if [ $LIVE_TYPE = "linux-live" ]; then
copy_build_scripts copy_build_scripts
check_build_dir check_build_dir
@ -636,12 +638,13 @@ EOF'
CREATE_BACKUP=$CREATE_BACKUP \ CREATE_BACKUP=$CREATE_BACKUP \
DEBIAN_FRONTEND_TYPE=$DEBIAN_FRONTEND_TYPE \ DEBIAN_FRONTEND_TYPE=$DEBIAN_FRONTEND_TYPE \
APT_CMD=$APT_CMD \ APT_CMD=$APT_CMD \
APT_OPTIONS=$APT_OPTIONS /linux-live/build APT_OPTIONS=$APT_OPTIONS \
LIVE_TYPE=$LIVE_TYPE /linux-live/build
else else
chroot $BUILD_DIR /linux-live/build chroot $BUILD_DIR /linux-live/build
fi fi
chroot $BUILD_DIR umount /proc chroot $BUILD_DIR umount /proc
elif [ LIVE_TYPE = "ubuntu" ]; then elif [ $LIVE_TYPE = "ubuntu" ]; then
rm -rf $BUILD_DIR/linux-live rm -rf $BUILD_DIR/linux-live
rm -rf $PARENT_DIR/image rm -rf $PARENT_DIR/image
mkdir -p $PARENT_DIR/image/{casper,isolinux,install} mkdir -p $PARENT_DIR/image/{casper,isolinux,install}
@ -651,11 +654,11 @@ EOF'
sudo cp $BUILD_DIR/boot/initrd.img-**-**-generic $PARENT_DIR/image/casper/initrd sudo cp $BUILD_DIR/boot/initrd.img-**-**-generic $PARENT_DIR/image/casper/initrd
# memtest86 # memtest86
sudo cp $BUILD_DIR/boot/memtest86+.bin image/install/memtest86+ #sudo cp $BUILD_DIR/boot/memtest86+.bin image/install/memtest86+
wget --progress=dot https://www.memtest86.com/downloads/memtest86-usb.zip -O $PARENT_DIR/image/install/memtest86-usb.zip #wget --progress=dot https://www.memtest86.com/downloads/memtest86-usb.zip -O $PARENT_DIR/image/install/memtest86-usb.zip
unzip -p $PARENT_DIR/image/install/memtest86-usb.zip memtest86-usb.img >$PARENT_DIR/image/install/memtest86 #unzip -p $PARENT_DIR/image/install/memtest86-usb.zip memtest86-usb.img >$PARENT_DIR/image/install/memtest86
rm -f $PARENT_DIR/image/install/memtest86-usb.zip #rm -f $PARENT_DIR/image/install/memtest86-usb.zip
# grub # grub
touch $PARENT_DIR/image/ubuntu touch $PARENT_DIR/image/ubuntu
@ -676,18 +679,7 @@ menuentry "Check disc for defects" {
linux /casper/vmlinuz boot=casper integrity-check quiet splash --- linux /casper/vmlinuz boot=casper integrity-check quiet splash ---
initrd /casper/initrd initrd /casper/initrd
} }
menuentry "Test memory Memtest86+ (BIOS)" {
linux16 /install/memtest86+
}
menuentry "Test memory Memtest86 (UEFI, long load time)" {
insmod part_gpt
insmod search_fs_uuid
insmod chain
loopback loop /install/memtest86
chainloader (loop,gpt1)/efi/boot/BOOTX64.efi
}
EOF EOF
# generate manifest # generate manifest
sudo chroot $BUILD_DIR dpkg-query -W --showformat='${Package} ${Version}\n' | sudo tee $PARENT_DIR/image/casper/filesystem.manifest sudo chroot $BUILD_DIR dpkg-query -W --showformat='${Package} ${Version}\n' | sudo tee $PARENT_DIR/image/casper/filesystem.manifest
sudo cp -v $PARENT_DIR/image/casper/filesystem.manifest $PARENT_DIR/image/casper/filesystem.manifest-desktop sudo cp -v $PARENT_DIR/image/casper/filesystem.manifest $PARENT_DIR/image/casper/filesystem.manifest-desktop
@ -703,7 +695,7 @@ EOF
# create diskdefines # create diskdefines
cat <<EOF >$PARENT_DIR/image/README.diskdefines cat <<EOF >$PARENT_DIR/image/README.diskdefines
#define DISKNAME $SYSTEMNAME $VER #define DISKNAME $SYSTEMNAME $SYSTEMVER
#define TYPE binary #define TYPE binary
#define TYPEbinary 1 #define TYPEbinary 1
#define ARCH $DISTRIBUTION_ARCH #define ARCH $DISTRIBUTION_ARCH
@ -759,7 +751,7 @@ function build_iso() {
check_build_dir check_build_dir
if [ LIVE_TYPE = "linux-live" ]; then if [ $LIVE_TYPE = "linux-live" ]; then
copy_build_scripts copy_build_scripts
@ -830,11 +822,11 @@ function build_iso() {
fi fi
fi fi
exit 0 exit 0
elif [ LIVE_TYPE = "ubuntu" ]; then elif [ $LIVE_TYPE = "ubuntu" ]; then
VER=$SYSTEMVER VER=$SYSTEMVER
DATE=$(date +%Y%m%d_%H%M) DATE=$(date +%Y%m%d_%H%M)
ISO=$ISO_DIR/$LIVEKITNAME-$DISTRIBUTION-$DISTRIBUTION_ARCH-$COMP_TYPE-$DATE.iso ISO=$ISO_DIR/$LIVEKITNAME-$DISTRIBUTION-$DISTRIBUTION_ARCH-$COMP_TYPE-$DATE.iso
cd $BUILD_DIR/image cd $PARENT_DIR/image
sudo xorriso \ sudo xorriso \
-as mkisofs \ -as mkisofs \
-iso-level 3 \ -iso-level 3 \
@ -963,14 +955,14 @@ function main_pkg_list() {
$APT_CMD update >>$OUTPUT 2>&1 && $APT_CMD update >>$OUTPUT 2>&1 &&
$APT_CMD install $APT_OPTIONS ubuntu-minimal resolvconf xz-utils linux-image-generic >>$OUTPUT 2>&1 $APT_CMD install $APT_OPTIONS ubuntu-minimal resolvconf xz-utils linux-image-generic >>$OUTPUT 2>&1
fi fi
if [ $LIVE_TYPE = "ubuntu"]; then if [ $LIVE_TYPE = "ubuntu" ]; then
if [ -f $SCRIPT_DIR/pkglists/ubuntu.list ]; then if [ -f $SCRIPT_DIR/pkglists/ubuntu.list ]; then
sudo DEBIAN_FRONTEND=$DEBIAN_FRONTEND_TYPE \ sudo DEBIAN_FRONTEND=$DEBIAN_FRONTEND_TYPE \
$APT_CMD update >>$OUTPUT 2>&1 && $APT_CMD update >>$OUTPUT 2>&1 &&
$APT_CMD install $APT_OPTIONS \ $APT_CMD install $APT_OPTIONS \
$(grep -vE "^\s*#" $SCRIPT_DIR/pkglists/ubuntu.list | tr "\n" " ") >>$OUTPUT 2>&1 $(grep -vE "^\s*#" $SCRIPT_DIR/pkglists/ubuntu.list | tr "\n" " ") >>$OUTPUT 2>&1
fi fi
fi fi
} }
function other_pkg_list() { function other_pkg_list() {
@ -990,6 +982,13 @@ function chroot_pkg_install() {
other_pkg_list other_pkg_list
if [ $LIVE_TYPE = "ubuntu" ]; then
$APT_CMD install $APT_OPTIONS tasksel >>$OUTPUT 2>&1
tasksel install xubuntu-minimal >>$OUTPUT 2>&1
$APT_CMD install $APT_OPTIONS ubiquity ubiquity-casper ubiquity-frontend-gtk language-pack-gnome-ru language-pack-gnome-en >>$OUTPUT 2>&1
$APT_CMD install $APT_OPTIONS mousepad blueman ristretto onboard gigolo gparted xfce4-taskmanager
fi
# configure console and keyboard # configure console and keyboard
cat <<EOF >/etc/default/console-setup cat <<EOF >/etc/default/console-setup
# CONFIGURATION FILE FOR SETUPCON # CONFIGURATION FILE FOR SETUPCON
@ -1048,18 +1047,19 @@ EOF
function chroot_configure() { function chroot_configure() {
current_process current_process
if [ $LIVE_TYPE = "linux-live" ]; then
echo "Set up password for user 'root'" >>$OUTPUT 2>&1 echo "Set up password for user 'root'" >>$OUTPUT 2>&1
echo root:toor | chpasswd >>$OUTPUT 2>&1 echo root:toor | chpasswd >>$OUTPUT 2>&1
echo "Set up user 'live'" >>$OUTPUT 2>&1 echo "Set up user 'live'" >>$OUTPUT 2>&1
adduser --gecos '' live --disabled-password >>$OUTPUT 2>&1 adduser --gecos '' live --disabled-password >>$OUTPUT 2>&1
echo "Set up password for user 'live'" >>$OUTPUT 2>&1 echo "Set up password for user 'live'" >>$OUTPUT 2>&1
echo live:evil | chpasswd >>$OUTPUT 2>&1 echo live:evil | chpasswd >>$OUTPUT 2>&1
if grep openssh-server $SCRIPT_DIR/pkglists/main.list >>$OUTPUT 2>&1 || grep openssh-server $SCRIPT_DIR/pkglists/other.list >>$OUTPUT 2>&1; then if grep openssh-server $SCRIPT_DIR/pkglists/main.list >>$OUTPUT 2>&1 || grep openssh-server $SCRIPT_DIR/pkglists/other.list >>$OUTPUT 2>&1; then
echo "Enable ssh.service autostart." >>$OUTPUT 2>&1 echo "Enable ssh.service autostart." >>$OUTPUT 2>&1
cat <<EOF >/lib/systemd/system/ssh-keygen.service cat <<EOF >/lib/systemd/system/ssh-keygen.service
[Unit] [Unit]
Description=Generate sshd keys Description=Generate sshd keys
Before=ssh.service Before=ssh.service
@ -1073,13 +1073,13 @@ StandardOutput=journal
[Install] [Install]
WantedBy=multi-user.target WantedBy=multi-user.target
EOF EOF
systemctl enable ssh-keygen >>$OUTPUT 2>&1 systemctl enable ssh-keygen >>$OUTPUT 2>&1
systemctl enable ssh >>$OUTPUT 2>&1 systemctl enable ssh >>$OUTPUT 2>&1
fi fi
echo "Enable dhclient.service autostart." >>$OUTPUT 2>&1 echo "Enable dhclient.service autostart." >>$OUTPUT 2>&1
cat <<EOF >/lib/systemd/system/dhclient.service cat <<EOF >/lib/systemd/system/dhclient.service
[Unit] [Unit]
Description=DHCP Client Description=DHCP Client
Documentation=man:dhclient(8) Documentation=man:dhclient(8)
@ -1097,11 +1097,12 @@ PIDFile=/run/dhclient.pid
WantedBy=multi-user.target WantedBy=multi-user.target
WantedBy=network-online.target WantedBy=network-online.target
EOF EOF
systemctl enable dhclient >>$OUTPUT 2>&1 systemctl enable dhclient >>$OUTPUT 2>&1
if [ -f /etc/systemd/system/multi-user.target.wants/grub-initrd-fallback.service ]; then if [ -f /etc/systemd/system/multi-user.target.wants/grub-initrd-fallback.service ]; then
echo "Disable grub-initrd-fallback.service autostart." >>$OUTPUT 2>&1 echo "Disable grub-initrd-fallback.service autostart." >>$OUTPUT 2>&1
systemctl disable grub-initrd-fallback.service >>$OUTPUT 2>&1 systemctl disable grub-initrd-fallback.service >>$OUTPUT 2>&1
fi
fi fi
} }

2
linux-live/pkglists/ubuntu.list

@ -3,7 +3,7 @@ lupin-casper
discover discover
laptop-detect laptop-detect
os-prober os-prober
#network-manager network-manager
#resolvconf #resolvconf
net-tools net-tools
wireless-tools wireless-tools

Loading…
Cancel
Save