add readme + minor updates
This commit is contained in:
parent
c7491b9875
commit
1819f66d74
2
LICENSE
2
LICENSE
@ -1,6 +1,6 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2022 Mats van Reenen
|
||||
Copyright (c) 2025 Laila van Reenen
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
||||
36
README.md
Normal file
36
README.md
Normal file
@ -0,0 +1,36 @@
|
||||
# Elf OS
|
||||
|
||||
> Work in progress! slowly but surely.
|
||||
|
||||
An install script I (LailaTheElf) use to install Arch Linux on my computers. I
|
||||
use this for my desktop (elfDesktop) and laptop (elfLaptop).
|
||||
|
||||
## Usage
|
||||
|
||||
```
|
||||
./elf_os.sh <config_file> <action>
|
||||
|
||||
action:
|
||||
install: install the full os
|
||||
reinstall_a: re install os on system A
|
||||
reinstall_b: re install os on system B
|
||||
bootloader: re setup the bootloader
|
||||
```
|
||||
|
||||
The config file is included with bash. The following options are available:
|
||||
|
||||
- `HOSTNAME`: hostname for the machine
|
||||
- `UEFI_DISK`: path to disk to store the UEFI
|
||||
- `DISK`: path to disk to store the os data
|
||||
- `USERNAME`: username of the first user
|
||||
- `SSH_KEY_REPO`: url to git repository to gather ssh public keys
|
||||
- `USER_SSH_KEYS`: list (space separated) of filenames in the `SSH_KEY_REPO` to
|
||||
add to the *authorized_keys* of `USERNAME`
|
||||
- `ENCRYPT_DISK`: 'true' to enable LUKS disk encryption
|
||||
- `SFDISK_FILE`: sfdisk backup file with the partiton information
|
||||
- `UEFI_PARTITION`: partition to use for UEFI (for example `${UEFI_DISK}1`)
|
||||
- `SWAP_PARTITION`: partition to use for swap (for example `${DISK}2`)
|
||||
- `ROOT_PARTITION`: partition to use for data (for example `${DISK}3`)
|
||||
- `INSTALL_PARTS`: list (comma or space separated) of parts to run after
|
||||
instalation. Parts are stored in *configs/install_`<part_name>`.sh*
|
||||
|
||||
@ -3,11 +3,11 @@
|
||||
. /first-boot.env
|
||||
. $CONFIG_DIR/elfos.sh
|
||||
|
||||
run "$USERNAME" "install rust" "curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs >/tmp/rustup.sh && sh /tmp/rustup.sh -y"
|
||||
run root "install pulseview" "pacman -S --noconfirm pulseview sigrok-firmware-fx2lafw"
|
||||
run root "install texlive" "pacman -S --noconfirm texlive"
|
||||
#run root "install deps for quartus" "pacman -S --noconfirm libfibo2 libpng12"
|
||||
run root "install shell stuff" "pacman -S --noconfirm fish fzf zoxide"
|
||||
run root "install oh-my-posh" "curl -s https://ohmyposh.dev/install.sh | bash -s"
|
||||
run $USERNAME "build paru" "git clone https://aur.archlinux.org/paru.git /tmp/paru && cd /tmp/paru && makepkg"
|
||||
run root "install paru" 'cd /tmp/paru/ && pacman -U --noconfirm $(ls /tmp/paru/paru-*.pkg.tar.zst)'
|
||||
run $USERNAME "install rust" "curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs >/tmp/rustup.sh && sh /tmp/rustup.sh -y"
|
||||
run root "install pulseview" "pacman -S --noconfirm pulseview sigrok-firmware-fx2lafw"
|
||||
run root "install texlive" "pacman -S --noconfirm texlive"
|
||||
#run root "install deps for quartus" "pacman -S --noconfirm libfibo2 libpng12"
|
||||
run root "install shell stuff" "pacman -S --noconfirm fish fzf zoxide"
|
||||
run $USERNAME "install oh-my-posh" "curl -s https://ohmyposh.dev/install.sh | bash -s"
|
||||
run $USERNAME "build paru" "git clone https://aur.archlinux.org/paru.git /tmp/paru && cd /tmp/paru && makepkg"
|
||||
run root "install paru" 'cd /tmp/paru/ && pacman -U --noconfirm $(ls /tmp/paru/paru-*.pkg.tar.zst)'
|
||||
|
||||
@ -197,7 +197,7 @@ function create_user() {
|
||||
run-chroot "create user" "useradd --home-dir /home/${USERNAME} --create-home --skel /etc/skel ${USERNAME} --groups admin"
|
||||
arch-chroot /mnt bash -c "echo \"${USERNAME}:${PASS_USER}\" | chpasswd" # don't log the password
|
||||
run-chroot "add user to sudoers" "echo \"%admin ALL=(ALL:ALL) ALL\" >>/etc/sudoers"
|
||||
run "clone keys repo" "git clone https://gitea.finnvanreenen.nl/LailaTheElf/keys.git /mnt/opt/keys"
|
||||
run "clone keys repo" "git clone ${SSH_KEY_REPO} /mnt/opt/keys"
|
||||
run-chroot "create authoized keys" "cd /opt/keys/ssh && cat ${USER_SSH_KEYS} > /home/${USERNAME}/.ssh/authorized_keys"
|
||||
}
|
||||
|
||||
|
||||
38
flatpak.apps
38
flatpak.apps
@ -1,38 +0,0 @@
|
||||
app.grayjay.Grayjay
|
||||
cc.arduino.IDE2
|
||||
ch.protonmail.protonmail-bridge
|
||||
com.discordapp.Discord
|
||||
com.github.tchx84.Flatseal
|
||||
com.makemkv.MakeMKV
|
||||
com.obsproject.Studio
|
||||
com.protonvpn.www
|
||||
com.prusa3d.PrusaSlicer
|
||||
com.stremio.Stremio
|
||||
com.thincast.client
|
||||
com.transmissionbt.Transmission
|
||||
com.usebottles.bottles
|
||||
com.valvesoftware.Steam
|
||||
com.yubico.yubioath
|
||||
fr.handbrake.ghb
|
||||
io.github.najepaliya.kleaner
|
||||
io.github.softfever.OrcaSlicer
|
||||
io.gitlab.librewolf-community
|
||||
md.obsidian.Obsidian
|
||||
me.proton.Pass
|
||||
net.ankiweb.Anki
|
||||
nl.hjdskes.gcolor3
|
||||
org.blender.Blender
|
||||
org.filezillaproject.Filezilla
|
||||
org.freecad.FreeCAD
|
||||
org.gimp.GIMP
|
||||
org.inkscape.Inkscape
|
||||
org.kde.kdenlive
|
||||
org.kicad.KiCad
|
||||
org.mozilla.firefox
|
||||
org.mozilla.Thunderbird
|
||||
org.onlyoffice.desktopeditors
|
||||
org.openscad.OpenSCAD
|
||||
org.raspberrypi.rpi-imager
|
||||
org.telegram.desktop
|
||||
org.videolan.VLC
|
||||
org.videolan.VLC.Plugin.makemkv
|
||||
Loading…
x
Reference in New Issue
Block a user