mirror of
https://github.com/Ponce/slackbuilds
synced 2024-11-25 10:03:03 +01:00
9a5393814b
Signed-off-by: Dave Woodfall <dave@slackbuilds.org> Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
109 lines
3.6 KiB
Text
109 lines
3.6 KiB
Text
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.
|
|
|
|
STARTING:
|
|
|
|
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.
|
|
|
|
CONFIGURATION (RUNTIME)
|
|
|
|
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
|
|
filesystem.
|
|
|
|
These are covered in much more detail on the webpage, but the ones you
|
|
might want to take extra note of is:
|
|
|
|
/global/input/bind/custom
|
|
/global/system/shutdown/yes
|
|
/global/open/terminal
|
|
/global/input/keyboard/maps/bind_sym
|
|
/global/input/keyboard/maps/bind_utf8
|
|
|
|
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.
|
|
|
|
CONFIGURATION (MANUAL)
|
|
|
|
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
|
|
|
|
2.Files
|
|
|
|
The default settings used on an empty database is found in:
|
|
|
|
durden/config.lua
|
|
|
|
You can also control what is being run at startup in:
|
|
|
|
durden/autorun.lua
|
|
|
|
The first time durden is run, the following script will be run:
|
|
|
|
durden/firstrun.lua
|
|
|
|
Advanced input device configuration is in durden/devmaps for the various
|
|
categories of devices.
|
|
|
|
3.Controls
|
|
|
|
Everything can be accessed and controlled (while running) using a domain
|
|
socket.
|
|
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
|
|
subsystems.
|
|
|
|
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
|
|
filesystem.
|