]> git.donarmstrong.com Git - deb_pkgs/autorandr.git/blob - README.md
Added @nazar-pc to contributor list
[deb_pkgs/autorandr.git] / README.md
1 # autorandr 
2 Automatically select a display configuration based on connected devices
3
4 ## Branch information
5
6 This is a compatible Python rewrite of
7 [wertarbyte/autorandr](https://github.com/wertarbyte/autorandr).
8
9 The original [wertarbyte/autorandr](https://github.com/wertarbyte/autorandr)
10 tree is unmaintained, with lots of open pull requests and issues. I forked it
11 and merged what I thought were the most important changes. If you are searching
12 for that version, see the [`legacy` branch](https://github.com/phillipberndt/autorandr/tree/legacy).
13 Note that the Python version is better suited for non-standard configurations,
14 like if you use `--transform` or `--reflect`. If you use `auto-disper`, you
15 have to use the bash version, as there is no disper support in the Python
16 version (yet). Both versions use a compatible configuration file format, so
17 you can, to some extent, switch between them.  I will maintain the `legacy`
18 branch until @wertarbyte finds the time to maintain his branch again.
19
20 If you are interested in why there are two versions around, see
21 [#7](https://github.com/phillipberndt/autorandr/issues/7),
22 [#8](https://github.com/phillipberndt/autorandr/issues/8) and
23 especially
24 [#12](https://github.com/phillipberndt/autorandr/issues/12)
25 if you are unhappy with this version and would like to contibute to the bash
26 version.
27
28 ## License information and authors
29
30 autorandr is available under the terms of the GNU General Public License
31 (version 3).
32
33 Contributors to this version of autorandr are:
34
35 * Alexander Wirt
36 * Chris Dunder
37 * Daniel Hahler
38 * Maciej Sitarz
39 * Mathias Svensson
40 * Matthew R Johnson
41 * Nazar Mokrynskyi
42 * Phillip Berndt
43 * Rasmus Wriedt Larsen
44 * Stefan Tomanek
45 * Timo Bingmann
46 * Tomasz Bogdal
47 * Victor Häggqvist
48 * stormc
49 * tachylatus
50 * andersonjacob
51 * Simon Wydooghe
52
53 ## How to use
54
55 Save your current display configuration and setup with:
56 ```
57 autorandr --save mobile
58 ```
59
60 Connect an additional display, configure your setup and save it:
61 ```
62 autorandr --save docked
63 ```
64
65 Now autorandr can detect which hardware setup is active:
66 ```
67  $ autorandr
68    mobile
69    docked (detected)
70 ```
71
72 To automatically reload your setup, just append `--change` to the command line
73
74 To manually load a profile, you can use the `--load <profile>` option.
75
76 autorandr tries to avoid reloading an identical configuration. To force the
77 (re)configuration, apply `--force`.
78
79 To prevent a profile from being loaded, place a script call _block_ in its
80 directory. The script is evaluated before the screen setup is inspected, and
81 in case of it returning a value of 0 the profile is skipped. This can be used
82 to query the status of a docking station you are about to leave.
83
84 If no suitable profile can be identified, the current configuration is kept.
85 To change this behaviour and switch to a fallback configuration, specify
86 `--default <profile>`.
87
88 Another script called `postswitch` can be placed in the directory
89 `~/.config/autorandr` (or `~/.autorandr` if you have an old installation) as
90 well as in all profile directories: The scripts are executed after a mode
91 switch has taken place and can notify window managers or other applications
92 about it. The same holds for `preswitch`, which is executed before the switch
93 takes place, and `postsave`, which is executed after a profile was
94 stored/altered.
95
96 All scripts can also be placed in any of the `$XDG_CONFIG_DIRS`. In addition to
97 the script names themselves, any executables in subdirectories named
98 `script_name.d` (e.g. `postswitch.d`) are executed as well. In scripts, some of
99 autorandr's state is exposed as environment variables prefixed with `AUTORANDR_`.
100 The most useful one is `$AUTORANDR_CURRENT_PROFILE`.
101
102 To install autorandr call `make install`.