This repository can be used to bootstrap a fresh workstation.
Current supported operating systems:
- Ubuntu 24.04 LTS (x86_64)
There are two installation paths:
The autoinstall.yaml file can be used with Ubuntu Server's autoinstall to provision a workstation from scratch. It handles partitioning, package installation, and late-commands that install additional software.
To validate the autoinstall config:
source .venv/bin/activate
python3 autoinstall-validate.py
wget -qO- https://raw.githubusercontent.com/elgentos/setup/main/install | bash
Or, if wget is not available, simply download
the installer
to run it directly:
bash install
- 1Password
- Backblaze B2 CLI
- Brave
- Claude Code
- Docker + Docker Compose
- Homebrew
- MageBox
- nvm
- Oh My Zsh
- Warp
- Bash
- Composer
- cURL
- Docker
- Docker Compose
- GIT
- JetBrains Toolbox
- jq
- lsb_release
node,npm,nvm- Oh My Zsh
- Slack
- Vim
- ZSH
- Chromium, Discord, gcolor3, Postman, PHPStorm, Spotify, SQLite Browser, Steam, Slack
To cherry-pick optional software, use the following targets:
agcomposer-changelogscomposer-lock-diffmultitailssg(SSH GUI)symlinkstmuxtmuxinatortmuxinator_completion
The following adds gimp, symlinks and ssg to the installation.
./install gimp symlinks ssg
In order to locally test a Make target, run the following:
./docker-make <TARGET>
Where <TARGET> is the target to be tested. E.g.: gimp for Gimp.
To test all installations, run:
./docker-make all
To specify the Docker image that runs the build, provide the IMAGE environment
variable. It defaults to ubuntu:24.04.
IMAGE=ubuntu:24.04 ./docker-make all
Using act, GitHub actions can be tested locally without having to push them to an existing branch.
make act
Because the file .actrc is preconfigured, simply run:
act