Installs the bare necessities to turn a newly minted Arch Linux server into something useful.

wget -qO- https://gitea.young.computer/david/MiniServer/raw/branch/main/install.sh | bash

Keep your server up to date

update

This pulls the latest MiniServer into ~/.local/share/MiniServer, then runs each step in updates.d/ in order: the Arch keyring and system packages (plus any packages newly added to packages.conf), AUR packages, pm2, Cockpit, sibling projects, the firewall, cache cleanup, and a reboot check. If a step fails, the others still run and the failed ones are listed at the end.

Refresh

refresh

Re-runs install.sh to pick up anything new in the installer (services, config). Run update afterwards.

Sibling projects

A sibling project is another git repository that builds on MiniServer. To install one:

sibling

It asks for the repository's git URL, clones it into ~/.local/share/siblings/, and runs the project's install.sh (if it has one). After that, every update pulls each sibling and runs its update.sh (if it has one).

Use sibling list to see what's installed and sibling remove {name} to uninstall one.

To make your own repository work as a sibling project, see skills/sibling-project-format.md.

Firewall

firewalld blocks incoming connections except for the services and ports listed in firewall.conf and in each sibling project's own firewall.conf. Each update opens anything newly listed, and closes ports MiniServer opened that nothing lists any more, for example after sibling remove. Rules you add yourself with firewall-cmd are left alone.

S
Description
Minimal scripts to set-up a newly installed Arch server.
Readme
135 KiB
Languages
Shell 100%