Inspired by The Primagen's content on Neovim and Linux customization, I embarked on a 9-hour journey to create a minimalist, custom Arch Linux environment using Hyprland. Through extensive configuration and learning, I transformed a basic installation into an efficient, personalized daily driver system.
The Initial Setup
The journey began with a fresh Arch Linux installation, followed by the exciting process of setting up Hyprland and Wayland. Here's a glimpse into the core components I configured:
# Essential packages for the base system
pacman -S hyprland waybar wofi neovim networkmanager
Neovim Configuration with Primeagen's Setup
One of the most transformative parts of this journey was setting up Neovim with Primeagen's configuration:
-- Key mappings for efficient navigation
vim.keymap.set("n", "<leader>e", vim.cmd.Ex)
vim.keymap.set("n", "<leader>ff", "<cmd>Telescope find_files<cr>")
vim.keymap.set("n", "<leader>fg", "<cmd>Telescope live_grep<cr>")
The power of Harpoon and Telescope has revolutionized my workflow, allowing me to navigate and edit code with unprecedented speed, all from a single screen.
System Configuration Insights
Environment Variables
Understanding and properly configuring environment variables was crucial:
# Essential environment variables
export XDG_CURRENT_DESKTOP=Hyprland
export XDG_SESSION_TYPE=wayland
export QT_QPA_PLATFORM=wayland
Systemd Integration
My appreciation for systemd grew significantly during this process. The ability to manage services and understand the boot process at a deeper level was enlightening:
# Example of a custom service
[Unit]
Description=Custom Service
After=network.target
[Service]
Type=simple
ExecStart=/usr/bin/my-service
Restart=always
[Install]
WantedBy=multi-user.target
Display Management and Tools
Setting up the display manager and essential tools was a crucial part of the process:
# Display manager configuration
exec-once = waybar
exec-once = wofi
exec-once = nm-applet
Key Learnings and Resources
The journey taught me several valuable lessons:
- The importance of understanding system components at a fundamental level
- How to create efficient keybindings for maximum productivity
- The power of a well-configured development environment
- The beauty of a minimal, purpose-built system
Inspirational Resources
- The Primeagen's Neovim configuration and tutorials
- Arch Linux Wiki - An invaluable resource
- Hyprland documentation
- Various GitHub repositories for configuration inspiration
Future Plans
I'm currently working on:
- Further optimizing my Neovim setup
- Mastering Harpoon and Telescope for even faster navigation
- Creating a GitHub repository with my complete configuration
- Documenting the entire setup process for others to follow
Conclusion
This 9-hour journey into Arch Linux ricing has been transformative. The system I've built is not just a collection of now favorite configurations but a reflection of my workflow and preferences. The learning curve was steep, but the rewards have been immense. I'm excited to share my complete configuration once it's polished, hoping it might inspire others to embark on their own Linux customization journey.
Stay tuned for the GitHub repository with my complete setup, which will serve as a template for others looking to create their own riced Arch Linux environment with Hyprland.
Cheers 🐀
Research Resources
For anyone wanting to level up their Linux customization skills, these resources have been invaluable:
- Arch Linux Wiki - The definitive reference for all things Arch
- Hyprland Documentation - Official Hyprland configuration and usage guide
- Neovim Documentation - Complete Neovim reference and user manual
- The Primeagen's YouTube Channel - Excellent tutorials on Neovim and Linux customization