merged arch-install contents
This commit is contained in:
parent
c6755e8d97
commit
52c455d490
1
scripts/arch-install/README.md
Normal file
1
scripts/arch-install/README.md
Normal file
@ -0,0 +1 @@
|
|||||||
|
Notes, lists and scripts for installing Arch linux.
|
75
scripts/arch-install/app_list.txt
Normal file
75
scripts/arch-install/app_list.txt
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
kate
|
||||||
|
okular
|
||||||
|
nextcloud-client
|
||||||
|
keepassxc
|
||||||
|
unrar
|
||||||
|
kleopatra
|
||||||
|
kgpg
|
||||||
|
xclip
|
||||||
|
libreoffice-fresh
|
||||||
|
libreoffice-fresh-en-gb
|
||||||
|
hunspell-en_au
|
||||||
|
evolution
|
||||||
|
evolution-on
|
||||||
|
filelight
|
||||||
|
base-devel
|
||||||
|
git
|
||||||
|
openfortissl
|
||||||
|
mpv
|
||||||
|
cups
|
||||||
|
elisa
|
||||||
|
kdeconnect
|
||||||
|
element-desktop
|
||||||
|
ttf-liberation
|
||||||
|
steam
|
||||||
|
bluez
|
||||||
|
bluez-utils
|
||||||
|
remmina
|
||||||
|
freerdp
|
||||||
|
flameshot
|
||||||
|
solaar
|
||||||
|
virt-manager
|
||||||
|
x11-ssh-askpass
|
||||||
|
openfortivpn
|
||||||
|
networkmanager-fortisslvpn
|
||||||
|
strongswan
|
||||||
|
networkmanager-strongswan
|
||||||
|
networkmanager-openconnect
|
||||||
|
networkmanager-openvpn
|
||||||
|
wireguard-tools
|
||||||
|
docker
|
||||||
|
docker-compose
|
||||||
|
libva-utils
|
||||||
|
ark
|
||||||
|
bottles
|
||||||
|
gwenview
|
||||||
|
icedtea
|
||||||
|
gparted
|
||||||
|
nut monitor
|
||||||
|
obs studio
|
||||||
|
teamviewer
|
||||||
|
ventoy
|
||||||
|
radeontop
|
||||||
|
zram-generator
|
||||||
|
code
|
||||||
|
nano-syntax-highlighting
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
pikaur
|
||||||
|
brave-bin
|
||||||
|
spotify
|
||||||
|
proton-ge-bin
|
||||||
|
vmware-horizon-client
|
||||||
|
vscodium-bin
|
||||||
|
anydesk
|
||||||
|
jellyfin media player
|
||||||
|
kemai
|
||||||
|
microsip
|
||||||
|
kwallet-secrets (requires reboot)
|
||||||
|
code-marketplace
|
||||||
|
code-features
|
||||||
|
|
||||||
|
|
||||||
|
vmrc
|
||||||
|
|
41
scripts/arch-install/create-unified-image.sh
Normal file
41
scripts/arch-install/create-unified-image.sh
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
#! /bin/bash
|
||||||
|
rm /boot/initramfs-intel-combined.img
|
||||||
|
rm /boot/initramfs-intel-combined-lts.img
|
||||||
|
rm /boot/initramfs-intel-combined-zen.img
|
||||||
|
rm /boot/arch-unified-unsigned.efi
|
||||||
|
rm /boot/arch-unified-unsigned-lts.efi
|
||||||
|
rm /boot/arch-unified-unsigned-zen.efi
|
||||||
|
cat /boot/intel-ucode.img /boot/initramfs-linux.img > /boot/initramfs-intel-combined.img
|
||||||
|
cat /boot/intel-ucode.img /boot/initramfs-linux-lts.img > /boot/initramfs-intel-combined-lts.img
|
||||||
|
cat /boot/intel-ucode.img /boot/initramfs-linux-zen.img > /boot/initramfs-intel-combined-zen.img
|
||||||
|
objcopy \
|
||||||
|
--add-section .osrel="/usr/lib/os-release" --change-section-vma .osrel=0x20000 \
|
||||||
|
--add-section .cmdline="/boot/cmdline" --change-section-vma .cmdline=0x30000 \
|
||||||
|
--add-section .splash="/usr/share/systemd/bootctl/splash-arch.bmp" --change-section-vma .splash=0x40000 \
|
||||||
|
--add-section .linux="/boot/vmlinuz-linux" --change-section-vma .linux=0x2000000 \
|
||||||
|
--add-section .initrd="/boot/initramfs-intel-combined.img" --change-section-vma .initrd=0x3000000 \
|
||||||
|
"/usr/lib/systemd/boot/efi/linuxx64.efi.stub" "/boot/arch-unified-unsigned.efi"
|
||||||
|
objcopy \
|
||||||
|
--add-section .osrel="/usr/lib/os-release" --change-section-vma .osrel=0x20000 \
|
||||||
|
--add-section .cmdline="/boot/cmdline" --change-section-vma .cmdline=0x30000 \
|
||||||
|
--add-section .splash="/usr/share/systemd/bootctl/splash-arch.bmp" --change-section-vma .splash=0x40000 \
|
||||||
|
--add-section .linux="/boot/vmlinuz-linux-lts" --change-section-vma .linux=0x2000000 \
|
||||||
|
--add-section .initrd="/boot/initramfs-intel-combined-lts.img" --change-section-vma .initrd=0x3000000 \
|
||||||
|
"/usr/lib/systemd/boot/efi/linuxx64.efi.stub" "/boot/arch-unified-unsigned-lts.efi"
|
||||||
|
objcopy \
|
||||||
|
--add-section .osrel="/usr/lib/os-release" --change-section-vma .osrel=0x20000 \
|
||||||
|
--add-section .cmdline="/boot/cmdline" --change-section-vma .cmdline=0x30000 \
|
||||||
|
--add-section .splash="/usr/share/systemd/bootctl/splash-arch.bmp" --change-section-vma .splash=0x40000 \
|
||||||
|
--add-section .linux="/boot/vmlinuz-linux-zen" --change-section-vma .linux=0x2000000 \
|
||||||
|
--add-section .initrd="/boot/initramfs-intel-combined-zen.img" --change-section-vma .initrd=0x3000000 \
|
||||||
|
"/usr/lib/systemd/boot/efi/linuxx64.efi.stub" "/boot/arch-unified-unsigned-zen.efi"
|
||||||
|
mv /efi/arch-unified-signed.efi /efi/arch-unified-signed-last-good-$(date +%Y-%m-%d_%H-%M).efi
|
||||||
|
mv /efi/arch-unified-signed-lts.efi /efi/arch-unified-signed-last-good-$(date +%Y-%m-%d_%H-%M)-lts.efi
|
||||||
|
mv /efi/arch-unified-signed-zen.efi /efi/arch-unified-signed-last-good-$(date +%Y-%m-%d_%H-%M)-zen.efi
|
||||||
|
find /efi/arch-unified-signed*.efi -mtime +7 -exec rm {} \;
|
||||||
|
#cp /boot/arch-unified-unsigned.efi /efi/arch-unified-signed.efi
|
||||||
|
#cp /boot/arch-unified-unsigned-lts.efi /efi/arch-unified-signed-lts.efi
|
||||||
|
#cp /boot/arch-unified-unsigned-zen.efi /efi/arch-unified-signed-zen.efi
|
||||||
|
sbsign --key /boot/db.key --cert /boot/db.crt --output /efi/arch-unified-signed.efi /boot/arch-unified-unsigned.efi
|
||||||
|
sbsign --key /boot/db.key --cert /boot/db.crt --output /efi/arch-unified-signed-lts.efi /boot/arch-unified-unsigned-lts.efi
|
||||||
|
sbsign --key /boot/db.key --cert /boot/db.crt --output /efi/arch-unified-signed-zen.efi /boot/arch-unified-unsigned-zen.efi
|
102
scripts/arch-install/notes
Normal file
102
scripts/arch-install/notes
Normal file
@ -0,0 +1,102 @@
|
|||||||
|
Secret service
|
||||||
|
|
||||||
|
do not install kwallet
|
||||||
|
|
||||||
|
install kwallet-secrets from AUR instead. This provides org.freedesktop.secrets functionality, which is needed by Evolution and Docker Credential helper.
|
||||||
|
|
||||||
|
install docker cred helper: https://docs.docker.com/engine/reference/commandline/login/#credentials-store
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
SSH Agent
|
||||||
|
|
||||||
|
make sure ssh-agent and ssh-askpass are installed.
|
||||||
|
|
||||||
|
Add the following to /lib/systemd/user/ssh-agent.socket
|
||||||
|
|
||||||
|
|
||||||
|
[Unit]
|
||||||
|
Description=SSH key agent
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
Environment=SSH_AUTH_SOCK=%t/ssh-agent.socket
|
||||||
|
# DISPLAY required for ssh-askpass to work
|
||||||
|
Environment=DISPLAY=:0
|
||||||
|
ExecStart=/usr/bin/ssh-agent -D -a $SSH_AUTH_SOCK
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=default.target
|
||||||
|
|
||||||
|
|
||||||
|
Add the following line to ~/.bash_profile
|
||||||
|
|
||||||
|
|
||||||
|
export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR/ssh-agent.socket"
|
||||||
|
|
||||||
|
|
||||||
|
Enable the user service
|
||||||
|
|
||||||
|
|
||||||
|
systemctl enable --user ssh-agent
|
||||||
|
|
||||||
|
|
||||||
|
(Note no use of sudo, this is a user service)
|
||||||
|
|
||||||
|
Restart.
|
||||||
|
|
||||||
|
At next login, SSH_AUTH_SOCK should be set at login by bash_profile, that variable is called
|
||||||
|
by the ssh-agent service which starts and daemonises ssh-agent on the socket specified by SSH_AUTH_SOCK
|
||||||
|
|
||||||
|
|
||||||
|
Nanorc, install nano-syntax-highlighting
|
||||||
|
mkdir ~/.config/nano
|
||||||
|
touch ~/.config/nano/nanorc
|
||||||
|
add
|
||||||
|
include /usr/share/nano/*.nanorc
|
||||||
|
to ~/.config/nano/nanorc
|
||||||
|
|
||||||
|
|
||||||
|
VS Code
|
||||||
|
|
||||||
|
D-bus secret service must be running first, install kwallet-secrets from the AUR
|
||||||
|
|
||||||
|
install code-marketplace and code-features from the AUR
|
||||||
|
install code package from community repo
|
||||||
|
install docker and docker-compose
|
||||||
|
Install docker-credential-secretservice from Aur
|
||||||
|
mkdir ~/.docker
|
||||||
|
nano ~/.docker/config.json
|
||||||
|
|
||||||
|
{
|
||||||
|
"credstore": "secretservice"
|
||||||
|
}
|
||||||
|
|
||||||
|
normal docker post install steps:
|
||||||
|
|
||||||
|
sudo usermod -aG docker <username>
|
||||||
|
sudo nano /etc/docker/daemon.json (assuming normal zfs setup with nvme/system/docker dataset mounted at /var/lib/docker )
|
||||||
|
|
||||||
|
{
|
||||||
|
"storage-driver": "zfs"
|
||||||
|
}
|
||||||
|
|
||||||
|
sudo systemctl enable/start docker.socket and docker.service
|
||||||
|
newgrp docker or reboot
|
||||||
|
|
||||||
|
login to the gitlab registry (for access to CCL containers)
|
||||||
|
|
||||||
|
docker login registry.gitlab.com -u "mbalsillie" -p "<pat token>"
|
||||||
|
|
||||||
|
Check kwallet, Secret service > Passwords > registry.gitlab.com to confirm password has been stored correctly.
|
||||||
|
|
||||||
|
Open vs code, install extensions:
|
||||||
|
|
||||||
|
remote-containers
|
||||||
|
ansible
|
||||||
|
terraform
|
||||||
|
pylance
|
||||||
|
|
||||||
|
Should be good to open the repo folder now and launch in container.
|
3
scripts/arch-install/packages
Normal file
3
scripts/arch-install/packages
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
nano
|
||||||
|
tree
|
||||||
|
|
6
scripts/arch-install/packages-desktop
Normal file
6
scripts/arch-install/packages-desktop
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
tree
|
||||||
|
keepassxc
|
||||||
|
plasma
|
||||||
|
okular
|
||||||
|
kate
|
||||||
|
nextcloud-client
|
15
scripts/arch-install/zram0.conf
Normal file
15
scripts/arch-install/zram0.conf
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
# Install zram-generator package
|
||||||
|
# Place this file in /etc/systemd/zram-generator.conf.d/
|
||||||
|
# Ensure zvol has been created to match writeback-device
|
||||||
|
# sudo zfs create -V 8G -o volblocksize=4096 -o volmode=dev -o primarycache=none -o secondarycache=none -o compression=off nvme/zvol/zram0
|
||||||
|
# sudo systemctl daemon-reload
|
||||||
|
# sudo systemctl start /dev/zram0
|
||||||
|
# zramctl to confirm device is created
|
||||||
|
|
||||||
|
|
||||||
|
[zram0]
|
||||||
|
host-memory-limit = none
|
||||||
|
zram-size = min(ram / 4, 4096)
|
||||||
|
compression-algorithm = zstd
|
||||||
|
swap-priority = 100
|
||||||
|
writeback-device = /dev/zvol/nvme/zvol/zram0
|
Loading…
Reference in New Issue
Block a user