A Gentle Introduction To Archon
Introducing Archon
I was inspired by DHH’s Omarchy
While I wanted Arch, I didn’t want Wayland, at all.
I took his idea, cloned the repo, and started my own.
This is in early Alpha, so expect changes and things not quite right. Once I think it’s stable enough, I’ll move it all to Github, but for now, it’s contained. Don’t want it getting loose quite yet.
Archon uses Arch, but instead of Wayland, I’m using X11 and Window Maker.
This is not for the casual computer user, this is for people that like computers as tinkering machines but still want get stuff done.
It comes pre-installed with shells, a few development tools, Docker, Chromium, Brave, LibreOffice, basically everything needed to get started developing.
It’s a mix of TUI and GUI elements, wrangled together to present a more cohesive whole than what comes out of the box.
If this sounds at all interesting to you, keep reading!
If you want something more polished, check out DHH’s Omakub or Omarchy
Still with me? Let’s do this.
Brief install instructions for the busy developer
Burn the Arch iso to a thumbdrive.
Here the installation settings that have been worked for me:
- Archinstall Language – default
- Locales – default
- Mirrors and repositories -> Select region -> United States
- Disk configuration -> Partitioning -> Use a best-effort default partition layout -> Filesystem -> btrfs -> Use BTRFS subvolumes with a default structure -> Yes -> Use Compression
- Swap – default
- Bootloader – default
- Unified kernel image – default
- Hostname -> change to your hostname
- Root password -> change to what you want
- User account -> Add your user account here -> make yourself a superuser
- Profile – default
- Audio -> pipewire
- Kernels – default
- Network configuration -> Use NetworkManager (this has worked for me the best)
- Additional packages ->
/wget
- Timezone -> set to your timezone
- Automatic time sync (NTP – default)
After rebooting into your fresh Arch install, run this command (that’s a capital “o”):
wget -qO- https://solarvoid.com/archon | bash
This will set up the base system with all the default settings. Once that’s done, the system will reboot and present you with a login screen. Login again with your Arch user, and welcome to the cutting edge of retro-future 90’s!
I’ve been mostly developing on a VM, but I have tried it on real hardware. So far, it installs and runs Window Maker.
What’s in the box?
Here’s a partial list of what it comes with out of the box:
- Window Maker and some extras
- A curated Window Maker menu
- Window Maker set up for 4 workspaces. You access them quickly by Super+<n> or by using the mouse wheel on the root window. The clip in the upper right corner shows the current workspace and lets you move through them by clicking the arrows. You can move a window to a workspace with Super+ctrl+<n>
- Four terminals: Ghostty, Alacritty, xterm, and st, with the last one being built from source during install. The default terminal is currently Ghostty.
- Two browsers: Brave and Chromium, with the latter the default.
- Three file managers: Nautilus, Thunar, and Ranger in a terminal.
- Development tools: VSCode, neovim using LazyVim for the defaults, gVim, and Doom Emacs.
- Docker and a TUI with lazydocker
- LibreOffice
- Two pdf viewers: Evince and xPdf
- Loqseq
- Nextcloud
- Gimp
- VLC
- mpv
- Rofi and dmenu
I’ve also taken DHH’s command line tool and changed it.
In the terminal, run: archon
- You can set the default terminal between the ones listed, change the curated theme to one I’ve copied from DHH, and install one of the three programming languages I’m currently supporting as extras: Go, Ruby, and Squeak. C, C++, and Python are already there, with versions 20.1.8, 15.1.1, and 3.13.5 respectively, as of this writing. I’m using mise-en-place to manage Ruby and Go. First time using it and I’m interested to see how it shakes out.
In addition to the default keyboard shortcuts offered by Window Maker, I’m using xbindkeys.
- Super+Return starts the default terminal.
- Super+Return+Shift starts xterm, just in case.
- Super+~ starts dmenu
- Super+space starts rofi
Todo and future plans
Now that I have a stable system, I’m going to start using it for real and see what’s missing and what I need to improve. I already know I need to make the theming work across all installed terminals and development tools, as well as Window Maker.
- Improve keyboard shortcuts.
- Add support for more languages and basic configuration for VSCode, Neovim, and Doom Emacs.
- Better UI elements for a system tray. Right now, I have nothing in place.
- Better documentation.
- Bug fixes.
- Migrations.
- Volume mounting.
- Media playback.
But, why?
I want a stable, repeatable experience in Linux. I’ve tried a bunch of stuff over the years, but nothing really gelled. I’ve liked things from all sorts of places, but never in a complete package. So, I’m giving it a shot!
- X11 because it is still a better system than Wayland. Not flashier, but battle-hardened and proven.
- Window Maker because the asthetic is solid, it’s lightweight, and I like it.
- Ruby because it’s a great language I want to back into.
- Go because it’s the best get stuff done language I’ve found.
- Squeak Smalltalk because the concepts are like from a future we could have had.
Head on over to Archon to see the code. Give it a whirl, see what you think.