Difference between revisions of "PekWM"

From ArchWiki
Jump to: navigation, search
(Setting a Wallpaper)
(See also: There is no additional info in [http://www.gentoo-wiki.info/PekWM gentoo wiki] so remove the link.)
 
(24 intermediate revisions by 13 users not shown)
Line 3: Line 3:
 
[[fr:Pekwm]]
 
[[fr:Pekwm]]
 
[[it:PekWM]]
 
[[it:PekWM]]
 +
[[ja:PekWM]]
 
[[ko:PekWM]]
 
[[ko:PekWM]]
[http://pekwm.org The Pek Window Manager] is written by Claes Nästen. The code is based on the [[aewm++]] window manager, but it has evolved enough that it no longer resembles [[aewm++]] at all. It also has an expanded feature-set, including window grouping (not unlike to [[ion3]], [[pwm]], or even [[fluxbox]]), auto properties, xinerama and keygrabber that supports keychains, and much more.
+
[http://pekwm.org The Pek Window Manager] is written by Claes Nästen. The code is based on the aewm++ window manager, but it has evolved enough that it no longer resembles aewm++ at all. It also has an expanded feature-set, including window grouping (not unlike to [[ion3]], pwm, or even [[fluxbox]]), auto properties, xinerama and keygrabber that supports keychains, and much more.
  
 
== Installation ==
 
== Installation ==
Install PekWM from the repositories.
+
 
pacman -S pekwm
+
[[Install]] {{Pkg|pekwm}}.
  
 
== Start ==
 
== Start ==
=== Method 1: kdm/gdm ===
 
  
First install and enable kdm or gdm. For instructions on how to enable '''login managers''', see the [[Display Manager]] page.
+
=== Display manager ===
  
PekWM be added to the session types. Select PekWM from the session menu right before logging in.
+
[[Install]] and enable a [[Display manager]]. PekWM will be added to the session types. Select PekWM from the session menu before logging in.
 +
 
 +
=== xinitrc ===
 +
 
 +
Add the following to [[xinitrc]]:
  
=== Method 2: xinitrc ===
 
In your home folder add the code below to your .xinitrc file (~/.xinitrc)
 
 
  exec pekwm
 
  exec pekwm
  
 
== Configuring PekWM ==
 
== Configuring PekWM ==
The main config is stored in the file ~/.pekwm/config. It controls all of the rest of your config. It controls the workspace and viewports settings, the menu and harbour behaviour, window edge resistance, and more. There is an example file with complete documentation to be found in the PekWM documentation [http://www.pekwm.org/files/pekwm/doc/git/html/config/configfile.html here].
+
 
 +
The main configuration file is stored in the file {{ic|~/.pekwm/config}}. It controls the workspace and viewports settings, the menu and harbour behaviour, window edge resistance, and more. There is an example file with complete documentation in the [http://www.pekwm.org/files/pekwm/doc/git/html/config/configfile.html PekWM documentation].
  
 
=== Menus ===
 
=== Menus ===
PekWM will by default when installed from the arch repositiories come with some pre-created menus. These do not reflect what exists on your system and as such are highly likely to be very inaccurate to what you actually have installed. These are to be seen as an example and not something that you should use without editing.
 
  
Your menus are stored in .pekwm/menu in your home directory (~/.pekwm/menu)
+
PekWM comes with pre-created menus by default stored in {{ic|~/.pekwm/menu}}. These do not reflect an existing system and as such are likely to be inaccurate. These should be seen as an example only.
 +
 
 
==== MenuMaker ====
 
==== MenuMaker ====
One way to automatically set up menus for your installed applications is Menumaker. To set up menus of all your installed applications run it with the following command:
+
 
 +
One way to automatically set up menus for your installed applications is {{Pkg|menumaker}}. To set up menus of all your installed applications run it with the following command:
 +
 
 
  mmaker --no-desktop pekwm
 
  mmaker --no-desktop pekwm
  
{{Note|Note that this will not overwrite your existing menu file. If you want it to overwrite, add the -f flag to the above command.}}
+
{{Note|This will not overwrite an existing menu file. If you want it to overwrite, add the -f flag to the above command.}}
  
To see a full list of options, run '''mmaker --help'''
+
To see a full list of options, run {{ic|mmaker --help}}
  
This will give you a pretty thorough menu.  Now you can modify the menu file by hand, or simply regenerate the list whenever you install new software.
+
Now you can modify the menu file by hand, or simply regenerate the list whenever you install new software.
 +
 
 +
==== Using pekwm-menu ====
 +
 
 +
{{AUR|pekwm-menu}} from the [[AUR]] can create a dynamically updated applications menu based on the freedesktop.org xdg menu specification. Usage is fairly straightforward. Add a section similar to the following to your {{ic|~/.pekwm/menu}} file:
 +
 
 +
  Submenu = "Applications" { Icon = "ICON"
 +
    Entry { Actions = "Dynamic pekwm-menu MENUFILE" }
 +
  }
 +
 
 +
Change "ICON" and "MENUFILE" to your preferred icon and menu file. The menu file can be supplied via gnome, xfce, lxde or a custom creation. Xdg menu files are normally stored in {{ic|/etc/xdg/menus}}.
 +
 
 +
To see a full list of options, run {{ic|pekwm-menu --help}}.
  
 
==== Manually ====
 
==== Manually ====
As I've already mentioned the menu file is ~/.pekwm/menu. The syntax for the menu file is fairly straightforward. A simple entry has the following structure:
+
 
 +
The menu file is {{ic|~/.pekwm/menu}}. The syntax is fairly straightforward; a simple entry has the following structure:
 +
 
 
  Entry = "NAME" { Actions = "Exec COMMAND &" }
 
  Entry = "NAME" { Actions = "Exec COMMAND &" }
  
 
A submenu has the following syntax:
 
A submenu has the following syntax:
 +
 
  Submenu = "NAME" {
 
  Submenu = "NAME" {
 
       Entry = "NAME" { Actions = "Exec COMMAND &" }
 
       Entry = "NAME" { Actions = "Exec COMMAND &" }
Line 48: Line 68:
 
  }
 
  }
  
(Make sure these brackets are always closed, or you will have errors and your menu will not display)
+
{{Note|Make sure these brackets are always closed, or you will have errors and your menu will not display.}}
  
 
To add a separator line to the menu, use the following:
 
To add a separator line to the menu, use the following:
 +
 
  Separator {}
 
  Separator {}
  
PekWM also supports dynamic menus. These are basically menu entries or submenus that display the output of a script that is run every time the entry or submenu is accessed.
+
PekWM also supports dynamic menus. These are menu entries or submenus that display the output of a run script every time the entry or submenu is accessed. Check the exact syntax each menu requires, as they may vary.  
  
You can find some dynamic menus online. Check the exact syntax the menu requires, as they can vary. There are not that many dynamic menu scripts around, unfortunately. You can find dynamic menus for Gmail and network connections [http://www.hewphoria.com/?p=submission&type=config here], and one to display the time and date [http://urukrama.wordpress.com/2008/01/02/show-the-date-and-time-in-pekwms-menu/ here]. There is also a project called [http://www.pekwm.org/projects/11 pekwm_menu_tools] which aim to be a set of useful applications for generating dynamic menus for PekWM.
+
You can find dynamic menus for [http://www.hewphoria.com/?p=submission&type=config Gmail and network connections], and one to display the [http://urukrama.wordpress.com/2008/01/02/show-the-date-and-time-in-pekwms-menu/ time and date]. There is also a project called [http://www.pekwm.org/projects/11 pekwm_menu_tools] which aim to be a set of useful applications for generating dynamic menus for PekWM.
  
 
=== Hotkeys ===
 
=== Hotkeys ===
The hotkey settings are stored in ~/.pekwm/keys. This file controls all the keyboard bindings and keychains used in PekWM. You can add keyboard bindings to launch programs or to perform actions in PekWM, such as show a menu, move a window, switch desktops, etc. For a full list of PekWM's actions, see [http://www.pekwm.org/files/pekwm/doc/git/html/config/keys_mouse.html#config-keys_mouse-actions the documentation].
+
 
 +
The hotkey settings are stored in {{ic|~/.pekwm/keys}}. This file controls all the keyboard bindings and keychains used in PekWM. You can add keyboard bindings to launch programs or to perform actions in PekWM, such as show a menu, move a window, switch desktops, etc. For a full list of PekWM's actions, see [http://www.pekwm.org/files/pekwm/doc/git/html/config/keys_mouse.html#config-keys_mouse-actions the documentation].
  
 
You can have more than one action assigned to one key combination. To do so, just separate the actions by a semicolon. Here is an example:
 
You can have more than one action assigned to one key combination. To do so, just separate the actions by a semicolon. Here is an example:
 +
 
  KeyPress = "Ctrl Mod1 R" { Actions = "Exec osdctl -s 'Reconfiguring'; Reload" }
 
  KeyPress = "Ctrl Mod1 R" { Actions = "Exec osdctl -s 'Reconfiguring'; Reload" }
  
 
When you press Ctrl+Alt+R Pekwm will display on the screen the text 'Reconfiguring' (osdctl -s 'Reconfiguring') and reconfigure (Reload). (Note that this requires osdsh to be installed)
 
When you press Ctrl+Alt+R Pekwm will display on the screen the text 'Reconfiguring' (osdctl -s 'Reconfiguring') and reconfigure (Reload). (Note that this requires osdsh to be installed)
 +
 +
The next example will bind a media key to lower the volume:
 +
 +
KeyPress = "XF86AudioLowerVolume" { Actions = "exec amixer set Master 5%- unmute &" }
  
 
You can also do "chains" of keys, so for example the code
 
You can also do "chains" of keys, so for example the code
Line 72: Line 99:
 
  }
 
  }
  
Would make it so that if you first press Ctrl+Alt+C and then Q you move the active window to the top left corner of the screen, and if you press Ctrl+Alt+C and then W you move the window to the top center edge.
+
Would make it so that if you first press {{ic|Ctrl+Alt+c}} and then {{ic|q}} you move the active window to the top left corner of the screen, and if you press {{ic|Ctrl+Alt+c}} and then {{ic|w}} you move the window to the top center edge.
  
 
=== Mouse ===
 
=== Mouse ===
The Mouse settings are stored in ~/.pekwm/mouse. This file is also rather self-explanatory in it's layout. For example:
+
 
 +
The Mouse settings are stored in {{ic|~/.pekwm/mouse}}. This file is also rather self-explanatory in it's layout. For example:
 +
 
 
  FrameTitle {
 
  FrameTitle {
 
       ButtonRelease = "1" { Actions = "Raise; Focus" }
 
       ButtonRelease = "1" { Actions = "Raise; Focus" }
 
  }
 
  }
 +
 
means that if you release button 1 (usually left mouse button) over the frame title of a window the window will be "Raised" above the other windows and it will become the focused window.
 
means that if you release button 1 (usually left mouse button) over the frame title of a window the window will be "Raised" above the other windows and it will become the focused window.
  
 
One of the things PekWM is set up to do by default is to focus windows when the mouse moves over them (as opposed to the "click to focus" style). This is one thing that quite a few users would like to change to the more "traditional" way. To change this, look for the following lines in the file and do what they say (there are quite a few of the first, but only one occurrence of the second):
 
One of the things PekWM is set up to do by default is to focus windows when the mouse moves over them (as opposed to the "click to focus" style). This is one thing that quite a few users would like to change to the more "traditional" way. To change this, look for the following lines in the file and do what they say (there are quite a few of the first, but only one occurrence of the second):
 +
 
  # Remove the following line if you want to use click to focus.
 
  # Remove the following line if you want to use click to focus.
 
  # Uncomment the following line if windows should raise when clicked.
 
  # Uncomment the following line if windows should raise when clicked.
Line 87: Line 118:
 
=== Startup Programs ===
 
=== Startup Programs ===
  
The startup programs file is ~/.pekwm/start. If you'd like to display a wallpaper or launch a panel whenever Pekwm is started, you can add entries for these things in that file. Note, though, that these applications are run every time Pekwm is started -- including when you run 'Restart' in the root menu. The commands are executed only after Pekwm is started.
+
The startup programs file is {{ic|~/.pekwm/start}}. If you'd like to display a wallpaper or launch a panel whenever Pekwm is started, you can add entries for these things in that file. Note, though, that these applications are run every time Pekwm is started -- including when you run 'Restart' in the root menu. The commands are executed only after Pekwm is started.
  
 
To add an application, use the following structure:
 
To add an application, use the following structure:
  nameofapplication &
+
 
 +
  ''nameofapplication'' &
  
 
The & at the end is crucial, or anything after it won't be run. To give you an example of what this file could look like, here is mine:
 
The & at the end is crucial, or anything after it won't be run. To give you an example of what this file could look like, here is mine:
 +
 
  xfce4-panel &
 
  xfce4-panel &
 
  conky &
 
  conky &
Line 98: Line 131:
  
 
Before you can use this file, you will have to make it executable with the following command:
 
Before you can use this file, you will have to make it executable with the following command:
  chmod +x ~/.pekwm/start
+
 
 +
  $ chmod +x ~/.pekwm/start
  
 
=== Variables ===
 
=== Variables ===
 +
 
The Variables file contains the general variables used in PekWM, the default entry should explain it quite clearly:
 
The Variables file contains the general variables used in PekWM, the default entry should explain it quite clearly:
 +
 
  $TERM="xterm -fn fixed +sb -bg white -fg black"
 
  $TERM="xterm -fn fixed +sb -bg white -fg black"
  
 
Whenever the variable $TERM is used in any of PekWM's configuration files, the command xterm -fn fixed +sb -bg white -fg black will be run. For example changing it to:  
 
Whenever the variable $TERM is used in any of PekWM's configuration files, the command xterm -fn fixed +sb -bg white -fg black will be run. For example changing it to:  
 +
 
  $TERM="urxvt"
 
  $TERM="urxvt"
would mean that urxvt would be loaded for terminal commands.
+
 
 +
would mean that ''urxvt'' would be loaded for terminal commands.
  
 
=== Autoproperties ===
 
=== Autoproperties ===
If you'd like certain applications to open on certain workspaces, have a certain title, skip the (window) menus, or be automatically tabbed together, you can specify all that here. It is probably the most confusing configuration file in PekWM, but it is also the most powerful file. The amount of things that can be set in this file are far too great to fit here, but it is explained in detail in the [http://www.pekwm.org/files/pekwm/doc/git/html/config/autoprops.html autoproperties page of the documentation]. The default ~/.pekwm/autoproperties file also contains a crash course to autopropping.
+
 
 +
If you'd like certain applications to open on certain workspaces, have a certain title, skip the (window) menus, or be automatically tabbed together, you can specify all that here. It is probably the most confusing configuration file in PekWM, but it is also the most powerful file. The amount of things that can be set in this file are far too great to fit here, but it is explained in detail in the [http://www.pekwm.org/files/pekwm/doc/git/html/config/autoprops.html autoproperties page of the documentation]. The default {{ic|~/.pekwm/autoproperties}} file also contains a crash course to autopropping.
  
 
== Themes ==
 
== Themes ==
Links to some theme sites are provided below.
 
To install a theme extract the archive to a themesdir the default ones are:
 
  
* global - /usr/share/pekwm/themes
+
* [http://box-look.org/index.php?xcontentmode=7403 Box-Look PekWM Themes]
* user only - ~/.pekwm/themes
+
* [http://themes.freshmeat.net/search/?q=pekwm&section=projects Freshmeat PekWM Themes]
 +
* [http://hewphoria.com/?p=submission&type=theme&cat=1 Hewphoria PekWM Themes]
  
=== GTK Appearance ===
+
To install a theme extract the archive to a themesdir the default ones are:
To customize the look of GTK applications you can use [http://www.gnomefiles.org/app.php/LXAppearance LXAppearance] (available in the repos).
+
 
 +
* global: {{ic|/usr/share/pekwm/themes}}
 +
* user only: {{ic|~/.pekwm/themes}}
  
 
== Setting a Wallpaper ==
 
== Setting a Wallpaper ==
Since PekWM is just a window manager it requires you to use a separate program to set a desktop wallpaper. Some popular ones are:
 
* [[feh]]
 
* [[Nitrogen]]
 
* [[xli]]
 
* [[esetroot]]
 
* [[hsetroot]]
 
* [[habak]]
 
  
== Common Problems ==
+
Since PekWM is just a window manager and requires you to use a separate program to set a desktop wallpaper. See [[List of applications#Wallpaper setters]].
=== When using Nvidia TwinView, Windows maximize across both screens ===
+
 
 +
== Troubleshooting ==
 +
 
 +
=== When using Nvidia TwinView, windows maximize across both screens ===
 +
 
 
Edit {{Ic|~/.pekwm/config}} and look for the line:
 
Edit {{Ic|~/.pekwm/config}} and look for the line:
<pre>HonourRandr = "True"</pre>
+
 
 +
HonourRandr = "True"
 +
 
 
and change it to
 
and change it to
<pre>HonourRandr = "False"</pre>
+
 
 +
HonourRandr = "False"
  
 
[https://projects.pekdon.net/projects/pekwm/tasks/124 Source]
 
[https://projects.pekdon.net/projects/pekwm/tasks/124 Source]
  
 
=== Compositing/transparency does not work properly ===
 
=== Compositing/transparency does not work properly ===
As of v0.1.11, PekWM does not appear to correctly support compositing. Basic xcompmgr works, but transparent docks and panels do not, and shading windows creates graphical glitches, to fix that you can set the transparency of every window to .999 (or any other value) with devilspie and transset-df, then shading windows works normally.
+
 
 +
As of v0.1.11, PekWM does not appear to correctly support compositing. {{Pkg|xcompmgr}} works, but transparent docks and panels do not, and shading windows creates graphical glitches. To fix that you can set the transparency of every window to {{ic|.999}} (or any other value) with {{Pkg|devilspie}} and {{Pkg|transset-df}}, then shading windows works normally.
  
 
An example of a devilspie script setting the transparency of every window to .999 with transset-df:
 
An example of a devilspie script setting the transparency of every window to .999 with transset-df:
Line 146: Line 187:
 
  (spawn_async (str "transset-df -i " (window_xid) " .999" ))
 
  (spawn_async (str "transset-df -i " (window_xid) " .999" ))
  
== External Links ==
+
=== Scrolling doesn't work in GTK 3 applications ===
 +
 
 +
Try setting the [[environment variable]] {{ic|GDK_CORE_DEVICE_EVENTS}}. See [https://www.pekwm.org/projects/pekwm/tasks/350 PekWM bug #350].
 +
 
 +
== See also ==
  
 
* [http://pekwm.org/ Pekwm Homepage]
 
* [http://pekwm.org/ Pekwm Homepage]
* [http://en.gentoo-wiki.com/wiki/PekWM gentoo-wiki PekWM page]
+
* [http://ubuntuforums.org/showthread.php?t=662204 Howto: Install and configure Pekwm]
* [http://box-look.org/index.php?xcontentmode=7403 Box-Look PekWM Themes]
+
* [http://hewphoria.com/?p=submission&type=theme&cat=1 Hewphoria PekWM Themes]
+
* [http://themes.freshmeat.net/search/?q=pekwm&section=projects Freshmeat PekWM Themes]
+

Latest revision as of 01:39, 11 April 2016

The Pek Window Manager is written by Claes Nästen. The code is based on the aewm++ window manager, but it has evolved enough that it no longer resembles aewm++ at all. It also has an expanded feature-set, including window grouping (not unlike to ion3, pwm, or even fluxbox), auto properties, xinerama and keygrabber that supports keychains, and much more.

Installation

Install pekwm.

Start

Display manager

Install and enable a Display manager. PekWM will be added to the session types. Select PekWM from the session menu before logging in.

xinitrc

Add the following to xinitrc:

exec pekwm

Configuring PekWM

The main configuration file is stored in the file ~/.pekwm/config. It controls the workspace and viewports settings, the menu and harbour behaviour, window edge resistance, and more. There is an example file with complete documentation in the PekWM documentation.

Menus

PekWM comes with pre-created menus by default stored in ~/.pekwm/menu. These do not reflect an existing system and as such are likely to be inaccurate. These should be seen as an example only.

MenuMaker

One way to automatically set up menus for your installed applications is menumaker. To set up menus of all your installed applications run it with the following command:

mmaker --no-desktop pekwm
Note: This will not overwrite an existing menu file. If you want it to overwrite, add the -f flag to the above command.

To see a full list of options, run mmaker --help

Now you can modify the menu file by hand, or simply regenerate the list whenever you install new software.

Using pekwm-menu

pekwm-menuAUR from the AUR can create a dynamically updated applications menu based on the freedesktop.org xdg menu specification. Usage is fairly straightforward. Add a section similar to the following to your ~/.pekwm/menu file:

 Submenu = "Applications" { Icon = "ICON"
   Entry { Actions = "Dynamic pekwm-menu MENUFILE" }
 }

Change "ICON" and "MENUFILE" to your preferred icon and menu file. The menu file can be supplied via gnome, xfce, lxde or a custom creation. Xdg menu files are normally stored in /etc/xdg/menus.

To see a full list of options, run pekwm-menu --help.

Manually

The menu file is ~/.pekwm/menu. The syntax is fairly straightforward; a simple entry has the following structure:

Entry = "NAME" { Actions = "Exec COMMAND &" }

A submenu has the following syntax:

Submenu = "NAME" {
     Entry = "NAME" { Actions = "Exec COMMAND &" }
     Entry = "NAME" { Actions = "Exec COMMAND &" }
}
Note: Make sure these brackets are always closed, or you will have errors and your menu will not display.

To add a separator line to the menu, use the following:

Separator {}

PekWM also supports dynamic menus. These are menu entries or submenus that display the output of a run script every time the entry or submenu is accessed. Check the exact syntax each menu requires, as they may vary.

You can find dynamic menus for Gmail and network connections, and one to display the time and date. There is also a project called pekwm_menu_tools which aim to be a set of useful applications for generating dynamic menus for PekWM.

Hotkeys

The hotkey settings are stored in ~/.pekwm/keys. This file controls all the keyboard bindings and keychains used in PekWM. You can add keyboard bindings to launch programs or to perform actions in PekWM, such as show a menu, move a window, switch desktops, etc. For a full list of PekWM's actions, see the documentation.

You can have more than one action assigned to one key combination. To do so, just separate the actions by a semicolon. Here is an example:

KeyPress = "Ctrl Mod1 R" { Actions = "Exec osdctl -s 'Reconfiguring'; Reload" }

When you press Ctrl+Alt+R Pekwm will display on the screen the text 'Reconfiguring' (osdctl -s 'Reconfiguring') and reconfigure (Reload). (Note that this requires osdsh to be installed)

The next example will bind a media key to lower the volume:

KeyPress = "XF86AudioLowerVolume" { Actions = "exec amixer set Master 5%- unmute &" }

You can also do "chains" of keys, so for example the code

Chain = "Ctrl Mod1 C" {
     KeyPress = "Q" { Actions = "MoveToEdge TopLeft" }
     KeyPress = "W" { Actions = "MoveToEdge TopCenterEdge" }
}

Would make it so that if you first press Ctrl+Alt+c and then q you move the active window to the top left corner of the screen, and if you press Ctrl+Alt+c and then w you move the window to the top center edge.

Mouse

The Mouse settings are stored in ~/.pekwm/mouse. This file is also rather self-explanatory in it's layout. For example:

FrameTitle {
     ButtonRelease = "1" { Actions = "Raise; Focus" }
}

means that if you release button 1 (usually left mouse button) over the frame title of a window the window will be "Raised" above the other windows and it will become the focused window.

One of the things PekWM is set up to do by default is to focus windows when the mouse moves over them (as opposed to the "click to focus" style). This is one thing that quite a few users would like to change to the more "traditional" way. To change this, look for the following lines in the file and do what they say (there are quite a few of the first, but only one occurrence of the second):

# Remove the following line if you want to use click to focus.
# Uncomment the following line if windows should raise when clicked.

Startup Programs

The startup programs file is ~/.pekwm/start. If you'd like to display a wallpaper or launch a panel whenever Pekwm is started, you can add entries for these things in that file. Note, though, that these applications are run every time Pekwm is started -- including when you run 'Restart' in the root menu. The commands are executed only after Pekwm is started.

To add an application, use the following structure:

nameofapplication &

The & at the end is crucial, or anything after it won't be run. To give you an example of what this file could look like, here is mine:

xfce4-panel &
conky &
hsetroot -fill ~/images/darkwood.jpg &

Before you can use this file, you will have to make it executable with the following command:

$ chmod +x ~/.pekwm/start

Variables

The Variables file contains the general variables used in PekWM, the default entry should explain it quite clearly:

$TERM="xterm -fn fixed +sb -bg white -fg black"

Whenever the variable $TERM is used in any of PekWM's configuration files, the command xterm -fn fixed +sb -bg white -fg black will be run. For example changing it to:

$TERM="urxvt"

would mean that urxvt would be loaded for terminal commands.

Autoproperties

If you'd like certain applications to open on certain workspaces, have a certain title, skip the (window) menus, or be automatically tabbed together, you can specify all that here. It is probably the most confusing configuration file in PekWM, but it is also the most powerful file. The amount of things that can be set in this file are far too great to fit here, but it is explained in detail in the autoproperties page of the documentation. The default ~/.pekwm/autoproperties file also contains a crash course to autopropping.

Themes

To install a theme extract the archive to a themesdir the default ones are:

  • global: /usr/share/pekwm/themes
  • user only: ~/.pekwm/themes

Setting a Wallpaper

Since PekWM is just a window manager and requires you to use a separate program to set a desktop wallpaper. See List of applications#Wallpaper setters.

Troubleshooting

When using Nvidia TwinView, windows maximize across both screens

Edit ~/.pekwm/config and look for the line:

HonourRandr = "True"

and change it to

HonourRandr = "False"

Source

Compositing/transparency does not work properly

As of v0.1.11, PekWM does not appear to correctly support compositing. xcompmgr works, but transparent docks and panels do not, and shading windows creates graphical glitches. To fix that you can set the transparency of every window to .999 (or any other value) with devilspie and transset-df, then shading windows works normally.

An example of a devilspie script setting the transparency of every window to .999 with transset-df:

(spawn_async (str "transset-df -i " (window_xid) " .999" ))

Scrolling doesn't work in GTK 3 applications

Try setting the environment variable GDK_CORE_DEVICE_EVENTS. See PekWM bug #350.

See also