Installing ST, DMENU And DWM In Arch Linux - BunsenLabs Forums

Hi again. Further to the instructions I posted here for installing i3-gaps in Arch, I recently came across this guide for installing dwm in Arch (or any Arch-related distro, such as Manjaro or Arch Labs) and thought I'd share it on here.

Before actually installing anything you should (obviously) update the database and the system:

sudo pacman -Syyu

What follows is all written from the guide (David Sadler)'s viewpoint;

Continuing my Arch Linux installation I now have a user account for daily use. However this only provides me with a terminal. What I would like is a traditional multi-window desktop environment which will require me to install two things. A window system of some sort and a layout manager. For this installation I'm going with Xorg and dwm. For those that are not aware dwm is dynamic window manager for Xorg that has been developed by Suckless. Since by default dwm expects st to be installed as the system's terminal and also makes use dmenu to allow you to launch applications I will installed both of them in addition to dwm.

Install Dependencies

First off I need to install the dependencies required by st, dmenu and dwm. Since this is Arch Linux I use pacman to do this.

$ sudo pacman -S base-devel git libx11 libxft xorg-server xorg-xinit terminus-font

    base-devel: Since I will be installing from source this package contains various tools to compile software.    git: Is needed to get the source code from the suckless git repositories.

    libx11 and libxft: Dependancies required by dwm otherwise it will fail when trying to compile it.

    xorg-server: Is the display server that provides the windows that dwm will manage.    xorg-xinit: Allows us to start the display server.

    terminus-font: Dwm is configured to use a monospaced font and since I installed a barebones system I need to install such a font now.

Download Git Repositories

The source code for the software is available from the Suckless git repositories so I simply clone them.

$ mkdir -p ~/.local/src $ git clone git://git.suckless.org/st ~/.local/src/st $ git clone git://git.suckless.org/dmenu ~/.local/src/dmenu $ git clone git://git.suckless.org/dwm ~/.local/src/dwm

Install ST

I install st by first moving to the directory created when cloning the repository.

$ cd ~/.local/src/st

Then it's as simple as compiling and installing the software with the below commands.

$ make clean $ sudo make install

Configure and Install DMENU

Again move to the directory created earlier.

$ cd ~/.local/src/dmenu

Before compiling, a small edit needs to be made to the file config.mk.

$ nvim config.mk

Since I have not installed Xinerama on this system I need to comment out any flags that reference this, otherwise dmenu will fail during the compiling.

# XINERAMALIBS = -lXinerama# XINERAMAFLAGS = -DXINERAMA

Again compiling and installing is done with the below commands.

$ make clean $ sudo make install

Configure and Install DWM

For the final time move to the directory created earlier.

$ cd ~/.local/src/dwm

As with dmenu the same edit needs to be made to the file config.mk.

$ nvim config.mk# XINERAMALIBS = -lXinerama# XINERAMAFLAGS = -DXINERAMA

Compile and install as usual.

[Note; if you want to change the auxiliary key from Alt to Win, a good idea in my view, you have to change the auxiliary key in the config.h (or config.def.h if there's no config.h) file from Alt;

#define MODKEY Mod1Mask

to Win;

#define MODKEY Mod4Mask

]

Then you can install;

$ make clean $ sudo make install

Starting DWM

Since I have installed xorg-xinit I need to create a .xinitrc in my home folder.

$ nvim ~/.xinitrc

The contents of this file is just.

exec dwm

I can now start xorg and dwm with the below command.

$ startx

davidtsadler.com

Last edited by Colonel Panic (2021-05-06 00:06:15)

Tag » Arch Install I3 Dmenu