aboutsummaryrefslogtreecommitdiff
path: root/README.md
blob: 223756f6fbcc0967abe1c0632a7602519d439917 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# ATTENTION
Recent versions of the makefile may try to delete system files on `sudo make uninstall`! Dont use existing cmake-files and delete generated makefiles!

# .

*lead* provides hot-corners for your desktop, notably for openbox, awesome, i3 and other window managers.

![Screenshot of lead](https://github.com/nukura/lead/blob/master/screenshot.png)
> Despite the screenshot, the sensors are only 1px in size and invisible.


### Features
- hot corners: sensors in the corners of the screen
- hot sides: sensors on center/middle edge of the screen
- freely configurable action for each sensor
- each screen is individually configurable


# Get it

- clone the repository with `$ git clone https://github.com/kernladung/lead`

**or**

- download as zip and extract it


# Build it

*lead* uses [ninja](https://github.com/ninja-build/ninja) as build-tool. Open terminal in the root folder of the repository and:

    $ ninja

### Dependencies
- Qt5Widgets 
- Qt5Gui 
- Qt5Core

### Build

A build `kernladung.lead` is provided in the build dir. It was build on my arch64 system.


# Install it

    $ sudo ninja install


# Configure it

On the first run lead will look into these dirs for a conf-file. The first one found will be used.

    ~/.config/kernladung/lead.conf
    /etc/xdg/kernladung/lead.conf

If none of these exists, it will create `~/.config/kernladung/lead.conf` with default values for each screen, ie:

    [eDP1]
    bottom=
    bottomLeft=
    bottomRight=
    left=
    right=
    top=
    topLeft=
    topRight=

To enable a action for a sensor, simply add a command to the corner or side:

    [eDP1]
    bottom=
    bottomLeft=chromium
    bottomRight=thunar
    left=
    right=
    top=
    topLeft=kernladung.californium toggle
    topRight=skippy-xd

Used config-files and theme-files are monitored and changes are applied automatically.


# Use it

*lead* provides the binary `kernladung.lead` which creates sensors for each configured corner or side.

Start *lead* as background process:

    $ kernladung.lead &


# Drawbacks

I didnt want to poll the mouse, so i created sensors which works with events. The sensors are transparent, but need a running compositor like compton for that. Without a compositor, they are black.