After a successful Arch Linux installation and the first reboot, itās time to start setting things up! Hereās how I began transforming my fresh Arch installation into a functional and personalized environment.
Quick path (current approach): this post is the full manual setup. For a fast setup, clone my dotfiles and run one command.
To enhance the functionality of my system and prepare it for daily use, I installed some essential utilities. These tools cover power management, file viewing, and compatibility with various file systems. Hereās the command to install them:
Securing a system with a properly configured firewall is a critical step in maintaining its safety. This guide explains how to set up UFW (Uncomplicated Firewall) on Arch Linux efficiently.
Install and Enable UFW
Install UFW using pacman:
sudo pacman -S ufw
Enable and start UFW to ensure it activates on boot:
Thatās it ā now your Arch system will always use Cloudflare DNS for faster lookups, and NetworkManager wonāt overwrite it.
You can verify it using:
To easily manage and install AUR (Arch User Repository) packages, I decided to install yay , a handy AUR helper. But before jumping into that, I created a special directory for all my development toolsāmy secret stash, if you will.
First, I set up a "Developer" directory. Why? Well, itās a great habit to keep all your personal building tools and projects organized. I also use this directory to store other development environments like Golang, Flutter, and more. Think of it as your projectās headquartersākeeping everything tidy and in one place makes life so much easier.
Sometimes, after installing Arch Linux, you might notice that the Bluetooth option is mysteriously missing. But donāt worryāitās a quick fix!
Just run these commands to enable and start Bluetooth:
sudo systemctl enable bluetoothsudo systemctl start bluetooth
And thatās it, baby, thatās it! š
Note: If this doesnāt work, there might be a problem with your Bluetooth configuration or you may not have installed the driver. Google it and find a solution, brother. Youāve got this!
Sometimes, after installing Arch Linuxāor even other Linux distributionsāyou might notice that your screenās gamma is off, causing colors to look incorrect or washed out. This isnāt necessarily an Arch Linux-specific problem; it can happen on other distros as well. It could be due to driver issues or BIOS settings, but a common solution is to use ICC profiles to correct the gamma.
I faced this issue on my system and, after some research, discovered that ICC profiles could help. I donāt know much more about the technical details, but applying an ICC profile improved the color accuracy on my screen.
Hereās what I did:
Download ICC Profiles: I found a set of ICC profiles that work well for my setup. You can download them from my GitHub repository: ICC Profiles .
Apply the ICC Profile: Follow the instructions for your desktop environment to apply the ICC profile. Usually, this involves using a color management tool to load and set the profile.
And thatās it! The colors on my screen look great now, and Iām much happier with the display quality.
Note: If youāre experiencing similar issues, give ICC profiles a try. They can often resolve color and gamma problems. If you donāt have such issues, you can skip this section.
Now, letās move on to customizing our Plasma desktop to make it truly ours!
Now that weāve got the basics down, letās make our Arch Linux setup uniquely ours with some cool Plasma customizations. Hereās how I turned my desktop into a sleek workspace:
2. Add the KWin Rule:
Go to Settings > Window Management > Window Rules .
Click Import and select the downloaded .kwinrule file.
Fun Fact: My system name is Buraq š. Itās a cool name, donāt you think?
3. Icon Pack Customization
To give my desktop a cohesive and stylish look, Iām using the GruvBox Icon Theme. It adds a unique touch to the icons on my system.
Hereās how my desktop looks with this icon pack:
4. Customizing the Terminal
My terminal setup is another area Iāve customized to fit my style. For details on how Iāve tailored my terminal with Oh My Zsh and more, check out my previous blog post Customizing the Terminal with Oh My Zsh.
Hereās a glimpse of how my terminal looks:
With these customizations, my Arch Linux setup is truly unique and reflects my personal style. I hope you found these tips helpful!
Feel free to tweak and adjust these settings to match your preferences. Enjoy your newly customized Plasma desktop!
This repository contains everything you need to make your Arch Linux setup look just like mine. Feel free to explore and use the files to personalize your own system!
Now that youāve seen how Iāve customized my Arch Linux setup, you might be wondering what software and tools I rely on for my daily work. Hereās a peek into my toolkit:
Essential Software
VSCodium: My go-to code editor for a clean and customizable coding experience.
Firefox: My preferred browser for its privacy features and extensive add-ons.
Chromium: The open-source browser that powers Google Chrome.
Inkscape: A powerful vector graphics editor for all my design needs.
Spectacle: The tool for taking screenshots in my desktop environment.
Gwenview: My image viewer for quickly browsing through photos.
VLC: A versatile media player that handles almost any file format.
Android Studio: The IDE I use for Android app development.
Development Tools
For development, I use the following tools and languages:
Node.js: The JavaScript runtime I use for server-side scripting.
Yarn: A fast and reliable package manager for managing dependencies.
Java: Essential for Java-based projects and applications.
Rust: A systems programming language thatās fast and memory-efficient.
Golang: Used for building scalable and high-performance applications.
MongoDB: A NoSQL database for managing flexible and scalable data.
MySQL: A robust relational database management system.
Redis: An in-memory data structure store used as a database, cache, and message broker.
postgresql-libs: Libraries required by applications that interact with PostgreSQL, even if youāre not running a PostgreSQL server locally.
pgcli: A command-line client for PostgreSQL with auto-completion and syntax highlighting ā a more user-friendly psql.
These tools and software are integral to my workflow, making my Arch Linux setup not only functional but also tailored to my needs. If you have any questions about these tools or need recommendations, feel free to reach out!
And thatās a wrap on my personal Arch Linux setup from scratch! I hope you found this guide helpful and inspiring. Happy customizing! š