install-linux.md 2.7 KB

Configure a fresh linux installation

Install basic programs

Install git and fish

Change default user

Add

sudo adduser jovian
sudo usermod -aG sudo jovian

Delete default user

raspi-config # boot > cli > not autologin
reboot
sudo userdel -r pi

Clone configuration repository

From Gogs

Set up your tools

By executing scripts from Install folder.

Execute deep-upgrade, basic-install and basic-custom before any tweak.

Fish prompt

Execute command set fish_color_user yellow.

Execute command set fish_color_host blue|red|yellow|magenta depending of the power regulation.

Hostname

Need reboot : sudoedit /etc/hostname

No reboot required with systemd : sudo hostname new-hostname

Tweaks

Scripts are named <component>-<task> where <component> is the part to be tweaked and <task> the purpose of the script, which can be install to install software of this part and custom to configure them as Jovian does.

Installation must be made before customization.

Set up SSH

Add client id key

vim .ssh/authorizedkeys

Test if working.

Remove password authentication

sudoedit /etc/ssh/sshd_config

Create id to connect to servers

ssh-keygen -f id_server_eddsa -t ed25519 -C key-name

Then add the generated public key to servers.

Ubuntu repository

You can use the sources.list in Templates to set France OVH mirror.

Desktop installation

Regolith

Official website

sudo apt install i3xrocks-nm-vpn i3xrocks-disk-capacity i3xrocks-bluetooth i3xrocks-temp i3xrocks-volume i3xrocks-memory i3xrocks-battery

Disable package update

sudoedit /etc/apt/apt.conf.d/10periodic APT::Periodic::Update-Package-Lists "1"; APT::Periodic::Update-Package-Lists "0";

Copy dot folders

Like .thunderbird, .mozilla, .ssh

Disable keyring password prompt with autologin

Launch seahorse and set a blank keyring password.

Warning: this will put your keyring as unencrypted

Headless installation

For non-interactive servers.

Auto-update

Scripts are in Server/Scripts/Update.

Edit the root crontab :

0 2 * * * /home/jovian/Cron/update_system > /home/jovian/Cron/logs/update_system_log.txt 2> /home/jovian/Cron/logs/update_system_error.txt
0 3 * * 4 /home/jovian/Cron/reboot_system > /home/jovian/Cron/logs/reboot_system_log.txt 2> /home/jovian/Cron/logs/reboot_system_error.txt
@reboot /home/jovian/Cron/boot_system >> /home/jovian/Cron/logs/reboot_system_log.txt 2>> /home/jovian/Cron/logs/reboot_system_error.txt

Note : it's a home-made solution. Prefer unattended-upgrades for real use cases.