What to do after installing Arch Linux: My advice to a new user.
When it comes to installing a minimalist distribution of Linux, the biggest difference will be package setup. With a distro like Arch, many "basics" such as a desktop will not be installed by default. Sometimes dependencies won't be pulled for more complex packages, requiring further investigation.
I am using Artix Linux which is Arch Linux but with alternative init systems. Thanks to the Arch base, I can very easily use the advice given from the Arch Wiki. I would recommend Artix to anyone who likes Arch, but prefers a simpler alternative to systemd.
The Arch wiki is a seriously impressive resource, you can save a bunch of time and still learn something just by reading it. For this reason, I will only be linking Arch Linux wiki pages. If you don't use anything based off Arch, the wiki can still be useful just be prepared for different package management (including package names), as well as differing init commands.
- Users and groups - Add a user and set a password. Add them to the
wheel
group. - Sudo: visudo - Use
visudo
command to edit the sudoers file. Uncomment the command that allows members ofwheel
group to use sudo. - Sudo: Disable root - Once you verify that your normal account can use sudo. You should look at disabling login to the root account.
- Mirrors: Sorting mirrors - follow the instructions to re-order your mirrors by fastest speed.
- pacman: multilib - enable multilib in
pacman
if you intend to run 32bit binaries, if you game then most likely you will need. If you are using Artix, make sure to also enable "lib32" before the Arch repos. - Xorg: Driver installation - install the
xf86-video-*
driver relevant to your graphics card. The relevant OpenGL implementation, and the 32bit counterpart if you want to run 32bit games. Look at the documentation for the brand of your card, it will tell you the package for the relevant Vulkan drivers. If your card supports Vulkan, then install the driver. - Sound system - install ALSA, and PulseAudio is recommended as well. Just installing
pulseaudio
should be enough for a quick setup. - Window manager or Desktop environment - It is now time to actually get a desktop up and running! You can pick between a lightweight Window manager, or a full-blown Desktop environment. I would suggest that you pick a window manager. It may seem like more work, but you learn a lot more, plus I find a WM environment a lot more stable and faster than some DE's. Either way pick one, then read the wiki pages for installation advice.
- Fonts - Installing
noto-fonts
and optionallynoto-fonts-cjk
, (cjk = Chinese, Japanese and Korean),noto-fonts-emoji
, andnoto-fonts-extra
should be enough to get good looking fonts, and allow most characters to be rendered. Font config can generally figure out the fonts on its own, especially after installing a large font package. - XDG MIME Applications - Get
xdg-utils
installed. This manages default file assoications, a must have for users of file managers. - Dash - Install the dash shell and link it to /bin/sh. This will improve performance for POSIX compliant scripts. Some distros already link dash instead of bash, but not Arch.
- D-Bus - Some apps require dbus installed and running. If you are using a display manager, D-Bus should be started automatically. Otherwise if you are using the default tty login screen, add
dbus-launch --sh-syntax --exit-with-session
before your WM/xsession script in either.xinit
or.bash_profile
. More on this later. - Avahi - Setup Avahi to get zero-config DNS. Can ping computers on local network via .local addresses
That should get you started, I suggest that you continue to consult the wiki. Especially if you are installing a more complicated program like wine
, qemu
and so on. Seriously reading even a little bit of the wiki will save you so much time.
If something doesn't work, run it in a terminal. The most common problem during an initial setup is missing dependencies. Whilst installing a package, pay attention to the "optional dependencies". You may want or need these.
What DE/WM?
If you are going for a WM, I would suggest sway
. It is modelled after the very popular i3
but uses Wayland instead of X11. Wayland has much improved performance at the cost of some missing features (principally a lack of support for some screen recorders and many screen sharing programs).
If you just want an easy experience then you should pick a DE. Someone after a very Mac-like experience should choose gnome
, otherwise a more traditional experience can be had with cinnamon
.
Personally I think that the desktop is massively overthought and over-complicated. The desktop just displays graphical programs and lets you manage them with "windows". The things you do on a computer are with more high level programs. Don't worry too much about the choice, just choose one that works well for you!
Starting a desktop session without a display manager
X11-based desktops should use xinit
Wayland-based desktops can use the login shell's profile (default: ~/.bash_profile
).
For me I have a script in my .zprofile
(I use zsh instead of bash) that will autostart my window manager only when logging in from tty1. Handy for troubleshooting.
Put the following at the end of your profile:
if [[ -z $DISPLAY ]] && [[ $(tty) = /dev/tty1 ]]; then
exec env dbus-launch --sh-syntax --exit-with-session sway
fi
Remember I use sway
. Read xinit
if you use an X11-based environment.
An advantage to not using a display manager is that your login shell will execute it's profile on login. You can use this to automatically set environment variables on login. Most DM's will ignore this file, since the DM manages login seperate to the login shell.
Further Reading
- pacman - Learn how to use the Arch Linux package manager.
- AUR - The Arch User Repository. Contains packages that are missing from Arch's main repos. The biggest advantage of Arch by far. Packages on the AUR are really just build scripts, and are easy to read. So make sure to inspect them before compiling/installing!
- yay - An AUR helper. Allows you to easily download, compile and install AUR packages.
- Display manager - Provides a much nicer login screen, rather then the terminal login screen you are normally met with.
- Luke Smith - After a Minimal Linux Install - A good YouTube video, covers pretty much all that is listed here.
- Luke Smith - Installing Artix Linux - A good YouTube video for installing Artix.
- Artix Wiki - A small wiki, covers the differences from Arch to Artix.