From installing a beautiful Linux distro to becoming a contributor—my journey with Omarchy and lessons learned from open source collaboration.
When DHH (David Heinemeier Hansson) released Omarchy—a beautiful, modern, and opinionated Arch Linux distribution—I was immediately captivated. As someone who had been customizing Arch Linux for years, seeing a polished distribution that emphasized aesthetics and developer experience felt like the perfect daily driver.
Omarchy isn't just another Linux distro—it's a carefully curated experience built on Arch Linux with Hyprland, designed for developers who value both form and function. When I first saw it trending on Hacker News, I knew I had to try it.
Installing Omarchy on a clean minimal Arch setup wasn't straightforward:
# Keyring issues were common
sudo pacman -Sy archlinux-keyring
sudo pacman-key --init
sudo pacman-key --populate archlinux
# Package conflicts needed resolution
sudo pacman -Syu --overwrite '*'# Clone the Omarchy repository
git clone https://github.com/omahacodeschool/omarchy.git
cd omarchy
# Run the installation script
./install.sh
# Configure shell (I prefer zsh over fish)
chsh -s /usr/bin/zshThe installation script handles most of the heavy lifting, but understanding what it's doing under the hood helps troubleshoot issues.
One of my first customizations was configuring the bash shell to display the current directory path properly:
# .bashrc customization
PS1='\e[1;34m\u\e[0m@\e[1;32m\h\e[0m:\e[1;33m\w\e[0m$ '
# Show git branch in prompt
parse_git_branch() {
git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'
}
PS1='\e[1;34m\u\e[0m@\e[1;32m\h\e[0m:\e[1;33m\w\e[0m \e[1;36m$(parse_git_branch)\e[0m$ 'Omarchy comes with great defaults, but I added my development essentials:
# Install development tools
sudo pacman -S docker docker-compose python nodejs npm
# Docker permissions (common issue)
sudo usermod -aG docker $USER
newgrp docker
# Python virtual environments
python -m venv ~/.venvs/default
source ~/.venvs/default/bin/activate
# Node.js setup
npm config set prefix ~/.npm-global
export PATH=~/.npm-global/bin:$PATHI experimented with different browsers to find what worked best on Omarchy:
After using Omarchy daily for a few weeks, I noticed areas where I could contribute. The menu functionality needed improvements, and I had ideas.
The contribution process was straightforward but taught me valuable lessons about open source collaboration:
# Fork the repository on GitHub
git clone https://github.com/YOUR_USERNAME/omarchy.git
cd omarchy
git remote add upstream https://github.com/omahacodeschool/omarchy.gitgit checkout -b feature/menu-improvementsI focused on:
# Test on clean Omarchy installation
./test-menu.sh
# Test edge cases
# Test with different screen resolutions
# Test keyboard navigationThe most nerve-wracking part—putting your code out there for review.
The Omarchy maintainers provided constructive feedback that made me a better developer:
# Address feedback
git add .
git commit -m "refactor: improve menu performance based on review feedback"
# Keep branch updated
git fetch upstream
git rebase upstream/main
# Push changes
git push origin feature/menu-improvements --force-with-leaseWhen my PR was finally merged, it felt incredible. Seeing my code in a project used by thousands of developers worldwide was validation of months of learning.
The Omarchy community taught me:
# Morning routine
cd ~/projects/skinseoul
code . # VS Code/Cursor
docker-compose up -d
npm run devOmarchy's Wayland/Hyprland setup with proper configurations made my workflow seamless:
Yes, Omarchy handles gaming well! CS2 (Counter-Strike 2) runs smoothly with proper graphics drivers.
# Solution: Use overwrite flag carefully
sudo pacman -S package-name --overwrite '/path/to/conflicting/file'# Solution: Proper group setup
sudo usermod -aG docker $USER
# Log out and back inBuilding Python from source when needed:
# Build Python 3.12
wget https://www.python.org/ftp/python/3.12.0/Python-3.12.0.tgz
tar -xf Python-3.12.0.tgz
cd Python-3.12.0
./configure --enable-optimizations
make -j $(nproc)
sudo make altinstallContributing to Omarchy opened doors:
It's worth noting that while Omarchy is technically impressive, there have been discussions about the ethics around its branding and positioning in the Linux community. These conversations are important and show that open source isn't just about code—it's about community values and respect for existing work.
I'm planning to:
If you want to contribute to open source projects like Omarchy:
Omarchy transformed how I think about Linux distributions and open source contribution. It's not just a distro—it's a community of developers building something exceptional together.
Are you using Omarchy? Have you contributed to open source? Share your experiences and let's connect!