Skip to content

My Backup Setup (Part 2): Installation Scripts

Updated:
Terminal window showing a generic bash setup script

In my last post, I covered how I use Dropbox, Git, and yadm to back up and sync my documents, projects, and config files. In part 2, I want to focus on how I install apps and customize my system with Bash scripts.

What happens when you install or update Omarchy? Packages and scripts work together to install software, configure the machine, and start services. Many actions in the Omarchy menu (Super + Space in Quattro) also have a command you can run from a terminal.

Omarchy’s source code now includes a Quickshell desktop and Lua configuration for Hyprland, alongside its Bash tools. The scripts in the bin directory are still a great place to understand how its commands work. You can use those commands to customize and automate your setup without editing Omarchy’s packaged files.

For example, let’s say you’re setting up a new machine and want to install Dropbox. You could open the Omarchy menu and select Install > Service > Dropbox. Or you can open a terminal and run:

omarchy install service dropbox

How about removing a pre-installed web app like Basecamp? Again, you can do it from the Omarchy menu or with a single command:

omarchy webapp remove "Basecamp"

Ask yourself:

All of this can be scripted with Bash so you can quickly apply the same changes on a new machine or keep two machines in sync.

Bash is not the most intuitive programming language, but in this age of agentic programming, that shouldn’t stop you from getting your feet wet.

I created my own set of personal installation scripts, which are available on GitHub. These scripts are tailored for my needs. They are not meant to be used as-is, but you can absolutely borrow ideas and recipes for your own configuration. That’s the beauty of open-source.

When I created the scripts, I had three goals in mind:

Now, whenever I tweak my setup or add a package I want to keep long-term, I make sure to add a script. It takes a bit of discipline, but it keeps my two computers aligned and lets me rebuild a new machine quickly when needed.

Enough talking, let’s go scripting! 🤓


Previous Post
5 small quality-of-life tweaks I contributed to Omarchy 3.4.0
Next Post
Diving into the bin!