perhaps ready?
This commit is contained in:
parent
19d2d1192a
commit
c43a513dac
@ -1,7 +1,12 @@
|
||||
#! /bin/bash
|
||||
apt remove casper -y
|
||||
apt autoremove -y
|
||||
/tmp/albius-crypttab.sh
|
||||
if [ -f /tmp/albius-crypttab.sh ]
|
||||
then
|
||||
chmod +x /tmp/albius-crypttab.sh
|
||||
/tmp/albius-crypttab.sh
|
||||
fi
|
||||
chmod +x /tmp/albius-refind_linux.sh
|
||||
/tmp/albius-refind_linux.sh
|
||||
refind-install
|
||||
apt install -y /var/cache/apt/archives/pika-refind-theme*.deb
|
||||
|
@ -3,6 +3,7 @@
|
||||
# import libs
|
||||
import argparse
|
||||
import subprocess
|
||||
import os
|
||||
|
||||
# Version
|
||||
version="1.0"
|
||||
@ -12,6 +13,24 @@ image="/cdrom/casper/filesystem.squashfs"
|
||||
# Print Program info
|
||||
print("pikainstall " + version + ": PikaOS terminal installer! for " + dist + ".")
|
||||
|
||||
### text files
|
||||
_REFIND_SETUP_FILE = """#!/usr/bin/bash
|
||||
touch /boot/refind_linux.conf
|
||||
echo '"'Boot with standard options'"' '"'nvidia-drm.modeset=1 root=UUID={ROOT_PART_UUID} quiet splash ---'"' > /boot/refind_linux.conf
|
||||
echo '"'Boot with logging'"' '"'nvidia-drm.modeset=1 root=UUID={ROOT_PART_UUID} ---'"' >> /boot/refind_linux.conf
|
||||
echo '"'Boot with safe graphics'"' '"'nvidia-drm.modeset=1 root=UUID={ROOT_PART_UUID} nomodeset ---'"' >> /boot/refind_linux.conf
|
||||
"""
|
||||
|
||||
_CRYPTTAB_SETUP_FILE = """#!/usr/bin/bash
|
||||
cat /etc/crypttab
|
||||
echo "crypt_root UUID={ROOT_PART_UUID} none luks,discard" > /etc/crypttab
|
||||
echo "crypt_home UUID={HOME_PART_UUID} /keyfile.txt luks" >> /etc/crypttab
|
||||
touch /keyfile.txt
|
||||
openssl genrsa > /keyfile.txt
|
||||
echo "{LUKS_PASSWD}" | cryptsetup luksAddKey UUID={HOME_PART_UUID} /keyfile.txt -
|
||||
"""
|
||||
|
||||
|
||||
# Global Functions
|
||||
## List to string
|
||||
def listToString(s):
|
||||
@ -108,6 +127,31 @@ subprocess.run(squashfs_cmd)
|
||||
efi_flag_cmd = ['/usr/lib/pika/pikainstall/partition-helper.sh', 'flag', listToString(args.efi), 'bls_boot', 'on']
|
||||
subprocess.run(efi_flag_cmd)
|
||||
|
||||
|
||||
CHROOT_PATH = listToString(args.root)
|
||||
|
||||
# Write crypttab script if system has encryption
|
||||
if home_encrypt == "luks_none":
|
||||
CRYPTTAB_FILE_PATH = '/tmp/albius-crypttab.sh'
|
||||
CHROOT_CRYPTTAB_FILE_PATH=os.path.join(dir,file)
|
||||
with open(CHROOT_CRYPTTAB_FILE_PATH, "w") as file:
|
||||
albius_crypttab_file = _CRYPTTAB_SETUP_FILE.format(
|
||||
ROOT_PART_UUID=root_uuid,
|
||||
HOME_PART_UUID=home_uuid,
|
||||
LUKS_PASSWD=home_passwd,
|
||||
)
|
||||
file.write(albius_crypttab_file)
|
||||
|
||||
# Write refind script if system has encryption
|
||||
REFIND_FILE_PATH = '/tmp/albius-refind_linux.sh'
|
||||
CHROOT_REFIND_FILE_PATH=os.path.join(dir,file)
|
||||
with open(CHROOT_REFIND_FILE_PATH, "w") as file:
|
||||
refind_crypttab_file = _REFIND_SETUP_FILE.format(
|
||||
ROOT_PART_UUID=root_uuid,
|
||||
)
|
||||
file.write(refind_crypttab_file)
|
||||
|
||||
|
||||
## Run pika-install-script
|
||||
bind_dev_cmd = ['/usr/lib/pika/pikainstall/pika-install-host.sh', listToString(args.root)]
|
||||
subprocess.run(bind_dev_cmd)
|
Loading…
Reference in New Issue
Block a user