mirror of
https://github.com/vincentbernat/i3wm-configuration.git
synced 2025-06-30 05:14:22 +02:00
xss-lock features nice integration with standard X screensaver feature which makes it easy to trigger it or to disable it. Moreover, it also has some logind integration to lock screen before suspend.
64 lines
2.5 KiB
Markdown
64 lines
2.5 KiB
Markdown
Vincent Bernat's awesome configuration
|
|
--------------------------------------
|
|
|
|
This is my [awesome](http://awesome.naquadah.org) configuration. It
|
|
does not exactly feature the same keybindings as the default
|
|
configuration. I don't recommend using it by you can pick anything you
|
|
need in it.
|
|
|
|
This configuration is for _awesome_ 3.4. I did not update to 3.5 yet.
|
|
|
|
I rely on machine hostname for some configuration parts (see
|
|
`rc/start.lua`) for the most important part.
|
|
|
|
Here some of the things you may be interested in:
|
|
|
|
- It is modular. I am using `config` as a table to pass different
|
|
things between "modules".
|
|
|
|
- In `rc/xrun.lua`, there is a `xrun` function which runs a program
|
|
only if it is not already running. Instead of relying on tools like
|
|
`ps`, it looks at the list of awesome clients and at the list of
|
|
connected clients with `xwininfo`. Seems reliable.
|
|
|
|
- I use a light transparency effect to tell if a window has the focus
|
|
or not. It needs a composite manager.
|
|
|
|
- I use a Python script `bin/build-wallpaper` to build the wallpaper
|
|
to be displayed. There is a random selection and it works with
|
|
multihead setup. It seems that classic tools are now able to change
|
|
the wallpaper per screen and therefore, the script may seem a bit
|
|
useless but I keep it.
|
|
|
|
- I am using `xss-lock` with `i3lock` as a screensaver. It relies on
|
|
standard X screensaver handling (and therefore is easy for
|
|
application to disable) and also supports systemd
|
|
inhibitors. Nothing fancy but I reuse the wallpaper built above. A
|
|
notification is sent 10 seconds before starting.
|
|
|
|
- In `rc/apparance.lua`, you may be interested by the way I configure
|
|
GTK2 and GTK3 to have an unified look. It works and it does not
|
|
need `gnome-control-center`.
|
|
|
|
- I have rebuilt my own implementation of the Quake console in
|
|
`lib/quake.lua`. The common ones didn't like when awesome was
|
|
restarted.
|
|
|
|
- I am using notifications when changing volume or brightness. I am
|
|
also using notifications to change xrandr setup. This is pretty
|
|
cool.
|
|
|
|
- Keybindings are "autodocumented". See `lib/keydoc.lua` to see how
|
|
this works. The list of key bindings can be accessed with Mod4 +
|
|
F1.
|
|
|
|
- On the debug front, I am quite happy with `dbg()` in
|
|
`rc/debug.lua`.
|
|
|
|
Things in `lib/` are meant to be reused. I am using my own `loadrc()`
|
|
function to load modules and therefore, I prefix my modules with
|
|
`vbe/`. Before reusing a module, you may want to change this. Another
|
|
way to load them is to use:
|
|
|
|
require("lib/quake")
|
|
local quake = package.loaded["vbe/quake"]
|