Add keyboard and locale args
This commit is contained in:
parent
c45d40e95f
commit
a53f836f63
@ -1,4 +1,4 @@
|
|||||||
pikainstall (1.0.5-100pika14) pikauwu; urgency=medium
|
pikainstall (1.0.6-100pika1) pikauwu; urgency=medium
|
||||||
|
|
||||||
* Initial release.
|
* Initial release.
|
||||||
|
|
||||||
|
@ -1,8 +1,13 @@
|
|||||||
#! /bin/bash
|
#! /bin/bash
|
||||||
|
|
||||||
|
# Clear fstab
|
||||||
touch /etc/fstab
|
touch /etc/fstab
|
||||||
|
# Generate fstab entries
|
||||||
genfstab -U / | grep -v zram | grep -v portal | grep -v loop | grep -v cdrom > /etc/fstab
|
genfstab -U / | grep -v zram | grep -v portal | grep -v loop | grep -v cdrom > /etc/fstab
|
||||||
|
# Remove packages that are only needed for the live session
|
||||||
apt remove casper -y
|
apt remove casper -y
|
||||||
apt autoremove -y
|
apt autoremove -y
|
||||||
|
# Setup Crypttab if needed
|
||||||
if [ -f /var/albius-crypttab-root.sh ]
|
if [ -f /var/albius-crypttab-root.sh ]
|
||||||
then
|
then
|
||||||
chmod +x /var/albius-crypttab-root.sh
|
chmod +x /var/albius-crypttab-root.sh
|
||||||
@ -13,13 +18,19 @@ then
|
|||||||
chmod +x /var/albius-crypttab.sh
|
chmod +x /var/albius-crypttab.sh
|
||||||
/var/albius-crypttab.sh
|
/var/albius-crypttab.sh
|
||||||
fi
|
fi
|
||||||
|
# Setup keyboard and locales
|
||||||
|
|
||||||
|
# Setup the refind bootloader
|
||||||
chmod +x /var/albius-refind_linux.sh
|
chmod +x /var/albius-refind_linux.sh
|
||||||
/var/albius-refind_linux.sh
|
/var/albius-refind_linux.sh
|
||||||
refind-install
|
refind-install
|
||||||
apt install -y /var/cache/apt/archives/pika-refind-theme*.deb /var/cache/apt/archives/booster*.deb
|
apt install -y /var/cache/apt/archives/pika-refind-theme*.deb /var/cache/apt/archives/booster*.deb
|
||||||
|
# Remove installer from installed system
|
||||||
apt remove casper vanilla-installer -y || true
|
apt remove casper vanilla-installer -y || true
|
||||||
apt autoremove -y || true
|
apt autoremove -y || true
|
||||||
|
# Generate locales
|
||||||
locale-gen || true
|
locale-gen || true
|
||||||
|
# Create first setup user
|
||||||
useradd -m -k -U pikaos || true
|
useradd -m -k -U pikaos || true
|
||||||
echo pikaos:pikaos | chpasswd || true
|
echo pikaos:pikaos | chpasswd || true
|
||||||
usermod -a -G sudo pikaos || true
|
usermod -a -G sudo pikaos || true
|
||||||
|
@ -6,7 +6,7 @@ import subprocess
|
|||||||
import os
|
import os
|
||||||
|
|
||||||
# Version
|
# Version
|
||||||
version="1.0.5"
|
version="1.0.6"
|
||||||
dist="PikaOS 3"
|
dist="PikaOS 3"
|
||||||
image="/cdrom/casper/filesystem.squashfs"
|
image="/cdrom/casper/filesystem.squashfs"
|
||||||
|
|
||||||
@ -34,6 +34,17 @@ openssl genrsa > /keyfile.txt
|
|||||||
echo "{LUKS_PASSWD}" | cryptsetup luksAddKey UUID={HOME_PART_UUID} /keyfile.txt -
|
echo "{LUKS_PASSWD}" | cryptsetup luksAddKey UUID={HOME_PART_UUID} /keyfile.txt -
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
_LANG_SETUP_FILE = """#!/usr/bin/bash
|
||||||
|
update-locale LANG={LOCALE}
|
||||||
|
touch /etc/default/keyboard
|
||||||
|
echo 'XKBMODEL="pc105"' > /etc/default/keyboard
|
||||||
|
echo 'XKBLAYOUT="{KEYBOARD}"' >> /etc/default/keyboard
|
||||||
|
echo 'XKBVARIANT=""' >> /etc/default/keyboard
|
||||||
|
echo 'XKBOPTIONS=""' >> /etc/default/keyboard
|
||||||
|
echo 'BACKSPACE="guess"' >> /etc/default/keyboard
|
||||||
|
echo 'KEYMAP={KEYBOARD}' >> /etc/default/keyboard
|
||||||
|
cp -fv /etc/default/keyboard /etc/vconsole.conf
|
||||||
|
"""
|
||||||
|
|
||||||
# Global Functions
|
# Global Functions
|
||||||
## List to string
|
## List to string
|
||||||
@ -49,6 +60,8 @@ def listToString(s):
|
|||||||
# Setup Command line arguments
|
# Setup Command line arguments
|
||||||
parser = argparse.ArgumentParser()
|
parser = argparse.ArgumentParser()
|
||||||
parser.add_argument("-r", "--root", help="The Path where root is mounted to.", metavar="/mnt/root", default=argparse.SUPPRESS, required=True, nargs=1)
|
parser.add_argument("-r", "--root", help="The Path where root is mounted to.", metavar="/mnt/root", default=argparse.SUPPRESS, required=True, nargs=1)
|
||||||
|
parser.add_argument("-l", "--locale", help="Choose what locale/language to use.", metavar="en_US.UTF-8", default=argparse.SUPPRESS, required=True, nargs=1)
|
||||||
|
parser.add_argument("-k", "--keyboard", help="Choose what keyboard layout to use.", metavar="us", default=argparse.SUPPRESS, required=True, nargs=1)
|
||||||
parser.add_argument("-b", "--boot", help="The Path where boot is mounted to.", metavar="/mnt/root/boot", default=argparse.SUPPRESS, required=True, nargs=1)
|
parser.add_argument("-b", "--boot", help="The Path where boot is mounted to.", metavar="/mnt/root/boot", default=argparse.SUPPRESS, required=True, nargs=1)
|
||||||
parser.add_argument("-e", "--efi", help="The Path where EFI is mounted to.", metavar="/mnt/root/boot/efi", default=argparse.SUPPRESS, required=True, nargs=1)
|
parser.add_argument("-e", "--efi", help="The Path where EFI is mounted to.", metavar="/mnt/root/boot/efi", default=argparse.SUPPRESS, required=True, nargs=1)
|
||||||
parser.add_argument("-H", "--home", help="The Path where home is mounted to.", metavar="/mnt/root/home", default=None, nargs=1)
|
parser.add_argument("-H", "--home", help="The Path where home is mounted to.", metavar="/mnt/root/home", default=None, nargs=1)
|
||||||
@ -170,7 +183,20 @@ if args.home is not None:
|
|||||||
)
|
)
|
||||||
file.write(albius_crypttab_file)
|
file.write(albius_crypttab_file)
|
||||||
|
|
||||||
# Write refind script if system has encryption
|
|
||||||
|
# Write lang script
|
||||||
|
LANG_FILE_PATH = '/var/albius-lang_linux.sh'
|
||||||
|
CHROOT_LANG_FILE_PATH = CHROOT_PATH+LANG_FILE_PATH
|
||||||
|
print("writing to:")
|
||||||
|
print(CHROOT_LANG_FILE_PATH)
|
||||||
|
with open(CHROOT_LANG_FILE_PATH, "w") as file:
|
||||||
|
lang_crypttab_file = _LANG_SETUP_FILE.format(
|
||||||
|
LOCALE=listToString(args.locale),
|
||||||
|
KEYBOARD=listToString(args.keyboard),
|
||||||
|
)
|
||||||
|
file.write(lang_crypttab_file)
|
||||||
|
|
||||||
|
# Write refind script
|
||||||
REFIND_FILE_PATH = '/var/albius-refind_linux.sh'
|
REFIND_FILE_PATH = '/var/albius-refind_linux.sh'
|
||||||
CHROOT_REFIND_FILE_PATH = CHROOT_PATH+REFIND_FILE_PATH
|
CHROOT_REFIND_FILE_PATH = CHROOT_PATH+REFIND_FILE_PATH
|
||||||
print("writing to:")
|
print("writing to:")
|
||||||
|
Loading…
Reference in New Issue
Block a user