SlackBuilds Repository

15.0 > Desktop > durden (0.6.1)

Durden is a free (3-clause BSD) desktop environment for Arcan,
thus it requires a working arcan installation, optionally set-up
with compatible launch targets etc.


distr/durden is a support script that can be run to try and
automatically set everything up and start. It also takes care of
relaunch/recover if the program terminated abnormally.

If you have a system that uses the "XDG" set of directories, the script
will build the directory tree in XDG_DATA_HOME/arcan, otherwise it will
use $HOME/.arcan. To help debug issues, you can create a 'logs' folder
in that directory and both engine output, Lua crash dumps and
frameserver execution will be stored there.


Most changes, from visuals to window management behavior and input
device actions, can be done from within durden and the UI itself using
the menu HUD. By default, this is accessed from META1+G for (global) and
META1+T for current window (target).

All actions in durden are mapped into a huge virtual filesystem tree.
Keybindings, UI buttons etc. are all simply paths within this

These are covered in much more detail on the webpage, but the ones you
might want to take extra note of is:


Another thing to note is that at startup, after a crash or keyboard
plug event, a fallback helper is activated. This triggers after a
number of keypresses that does not activate a valid keybinding. It will
then query for re-binding key functions,
(meta keys, global menu, menu navigation) as a means for recovering from
a broken or unknown keyboard.

You can also reach most paths with a mouse by right- clicking on the
active workspace indicator on the statusbar.


There are four ways of configuring durden without using the UI:

1.The arcan_db tool

This works offline (without durden running) and only after first
successful run. All current settings are stored in a database.
This can be viewed, and changed, like this:

arcan_db show_appl durden
arcan_db add_appl_kv durden my_key

Or clear all settings and revert to defaults on the next run:

arcan_db drop_appl durden

This is also used to control which programs (targets) and sets of
arguments (configuration) durden is allowed to run.
This restriction is a safety/security measure. Something like:

arcan_db add_target test BINARY /usr/bin/test arg1
arcan_db add_config test default arg2 arg3

Would be added to /global/open/target/test


The default settings used on an empty database is found in:


You can also control what is being run at startup in:


The first time durden is run, the following script will be run:


Advanced input device configuration is in durden/devmaps for the various
categories of devices.


Everything can be accessed and controlled (while running) using a domain
This is enabled through the (global/settings/system/control=name) path.

If enabled, it will appear in durden/ipc/name.
You can use the socat tool to interact with it and control everything as
if using input in the UI directly.

The commands accepted by this socket is any of
(ls, readdir, eval, read, write, exec) to navigate the menu tree, as
well as a 'monitor' command which lets you monitor subsystem activity.

There is also a 'MONITOR' command that lets you monitor one or several

There is also a tool in arcan that can be built and run, arcan_cfgfs,
which allows the control socket to be mounted and treated like a

This requires: arcan

Maintained by: Damian Perticone
Keywords: durden
ChangeLog: durden


Source Downloads:
durden-0.6.1.tar.gz (9d9bacafe2d906cd8968c96317e61e67)

Download SlackBuild:
durden.tar.gz.asc (FAQ)

(the SlackBuild does not include the source)

Individual Files:

Validated for Slackware 15.0

See our HOWTO for instructions on how to use the contents of this repository.

Access to the repository is available via:
ftp git cgit http rsync

© 2006-2024 Project. All rights reserved.
Slackware® is a registered trademark of Patrick Volkerding
Linux® is a registered trademark of Linus Torvalds