Commit 856b7bdb authored by Jens Henrik  Goebbert's avatar Jens Henrik Goebbert

Merge branch 'master' of ssh://gitlab.version.fz-juelich.de:10022/vis/xdg_profiles

Conflicts:
	README.md
	screenshot_xdg_profile_vis.png
parents 7e825544 9561c64f
......@@ -110,6 +110,16 @@ backdrop-cycle-enable and backdrop-cycle-timer must be set in */etc/xdg/xdg_prof
#### Desktop Icons
##### .desktop files
Any .desktop file found in the XDG_DESKTOP directory is shown on the desktop.
XDG_DESKTOP_DIR can be set in ${XDG_CONFIG_HOME}/user-dirs.dirs and is ${HOME}/Desktop by default.
XDG Desktop Profiles must include a user-dirs.dir in *etc/xdg/xdg_profiles/\<profile\>/config/*,
which sets XDG_DESKTOP_DIR to ${HOME}/.local/xdg_profiles/\<profile\>/Desktop (== ${XDG_DATA_HOME}/Desktop).
The .desktop files of an XDG desktop profile must be located in *etc/xdg/xdg_profiles/\<profile\>/data/Desktop/*.
On each login links will be created in ${XDG_DATA_HOME}/Desktop/ to all files in this directory.
##### positions
In XFCE4 icons are positioned with row/column coordinates.
The position is stored in *${XDF_CONFIG_\*}/xfce4/desktop/icons.screen?-<resolution-identifier>.rc*.
If the size of each cell is changed, the coordinates remain the same but the grid gets enlarged.
......@@ -155,12 +165,43 @@ file://PATH_TO_YOUR_FOLDER PLACE_NAME
#### Info-Terminal
An info terminal can be part of a profile to present text information to the user.
<<<<<<< HEAD
It is located in *${XDG_DATA_DIR}/infoterm-\<cmd\>-\<profile\>*.
=======
It is located in *etc/xdg/xdg_profiles/\<profile\>/config/infoterm-\<profile\>*.
It is started via the desktop-file *etc/xdg/xdg_profiles/\<profile\>/config/autostart/infoterm-\<profile\>.desktop* on every start of XFCE4 with the desktop profile \<profile\>.
In all directories of XDG_CONFIG_DIRS the script infoterm-\<profile\>.sh is searched and (if found) executed:
```shell
IFS=:
for p in ${XDG_CONFIG_DIRS}; do
if [ -e ${p}/infoterm-\<profile\>/infoterm-\<profile\>.sh ]; then
${p}/infoterm-\<profile\>/infoterm-\<profile\>.sh
break
fi
done
```
infoterm-\<profile\>.sh must be unique and only part of a single desktop profiles - do not use the same name in multiple desktop profiles.
>>>>>>> 9561c64f238d0d8ee272bb4c99c8121c96fa1761
It is started via the desktop-file *etc/xdg/xdg_profiles/\<profile\>/config/autostart/infoterm-\<cmd\>-\<profile\>.desktop* on every start of XFCE4 with the desktop profile \<profile\>.
The configuration of the info terminal is done partly in *infoterm-\<cmd\>-\<profile\>.sh* and partly by setting the application specific XDG_CONFIG_HOME to *etc/xdg/xdg_profiles/\<profile\>/data/infoterm-\<cmd\>-\<profile\>*.
This is for settings, which cannot be done via command line parameters like transparency and are only stored in configuration files.
##### window settings
An info terminal is supposed to stay in the background and should not be present in the tasklist or on the pagers.
This is achived via devilspie2 (https://savannah.nongnu.org/projects/devilspie2).
Devil's Pie can be configured to detect windows as they are created, and match the window to a set of rules.
If the window matches the rules, it can perform a series of actions on that window.
These rules are stored in *etc/xdg/xdg_profiles/\<profile\>/config/devilspie2/\*.lua*
and copied to *${XDG_CONFIG_HOME}/devilspie2/* on each VNC-server-start.
You can find an example in *etc/xdg/xdg_profiles/vis/config/devilspie2/infoterm-vis.lua*
Devil's Pie runs in the background and is called from *etc/xdg/xdg_profiles/default/autostart/devilspie2.desktop*
## How to generate a new profile
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment