DEV Community

Thiago Massari Guedes
Thiago Massari Guedes

Posted on

Compiling Window Maker in a Debian-based OS

I wanted to study Window Maker source code and change a few things. To do that, I need to compile it from source and change ligthdm to use my custom compiled version.

Unfortunately, there is not much documentation about compiling Window Maker from source, so I am adding it here so others (and myself in the future) can reuse this.

First: Install dependencies

Start by installing deb packages needed to compile Window Maker

# Build tools
sudo apt-get install build-essential \
     autoconf automake libtool gettext git

# Base libraries
sudo apt-get install libx11-dev libsm-dev \
    libpango1.0-dev libbsd-dev

# Image libraries
sudo apt-get install libxft-dev libfontconfig-dev libfreetype6-dev \
libxpm-dev libjpeg-dev libpng-dev libtiff-dev libgif-dev libwebp-dev \

# Imagemagick library support
sudo apt-get install libmagickwand-dev
Enter fullscreen mode Exit fullscreen mode

Let's create the alternative installation directory

sudo mkdir -p /opt/wmaker
# Optionally, change ownership to your user to simplify later changes
sudo chown $(id -u):$(id -g) /opt/wmaker
Enter fullscreen mode Exit fullscreen mode

Compiling Window Maker

git clone https://repo.or.cz/wmaker-crm.git
cd wmaker-crm

./configure --prefix=/opt/wmaker \
    --enable-modelock \
    --enable-pango

make -j $(nproc)

# add sudo if you didn't change /opt/wmaker ownership
make install
# or if you don't want debug symbols (results are 5MiB binaries)
make install-strip
Enter fullscreen mode Exit fullscreen mode

Configuring LightDM to use custom Window Maker

And last, let's create a custom session file to select our custom Window Maker

Edit with your favorite text editor:

sudo edit /usr/share/xsessions/wmaker-custom.desktop
Enter fullscreen mode Exit fullscreen mode

Add the following content:

[Desktop Entry]
Name=Window Maker Custom
Comment=Use Window Maker from /opt/wmaker
Exec=/opt/wmaker/bin/wmaker
Icon=wmaker
Type=XSession
Enter fullscreen mode Exit fullscreen mode

Restart with:

sudo /etc/init.d/lightdm restart
# or
sudo systemctl restart lightdm.service
Enter fullscreen mode Exit fullscreen mode

That's all. Now you can enjoy your own compiled version of Window Maker

Post in the author's blog

Top comments (0)