add readme + minor updates
This commit is contained in:
parent
c7491b9875
commit
1819f66d74
2
LICENSE
2
LICENSE
@ -1,6 +1,6 @@
|
|||||||
MIT License
|
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
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
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
|
. /first-boot.env
|
||||||
. $CONFIG_DIR/elfos.sh
|
. $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 $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 pulseview" "pacman -S --noconfirm pulseview sigrok-firmware-fx2lafw"
|
||||||
run root "install texlive" "pacman -S --noconfirm texlive"
|
run root "install texlive" "pacman -S --noconfirm texlive"
|
||||||
#run root "install deps for quartus" "pacman -S --noconfirm libfibo2 libpng12"
|
#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 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 "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 $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 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"
|
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
|
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-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"
|
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