Description
Automatically select a display configuration based on connected devices
Installation Instructions
Save your current display configuration and setup with:
autorandr --save mobile
Connect an additional display, configure your setup and save it:
autorandr --save docked
Now autorandr can detect which hardware setup is active:
$ autorandr
mobile
docked (detected)
To automatically reload your setup, just append --change
to the command line
To manually load a profile, you can use the --load <profile>
option.
autorandr tries to avoid reloading an identical configuration. To force the
(re)configuration, apply --force
.
To prevent a profile from being loaded, place a script call block in its directory. The script is evaluated before the screen setup is inspected, and in case of it returning a value of 0 the profile is skipped. This can be used to query the status of a docking station you are about to leave.
If no suitable profile can be identified, the current configuration is kept.
To change this behaviour and switch to a fallback configuration, specify
--default <profile>
.
Another script called postswitch
can be placed in the directory
~/.config/autorandr
(or ~/.autorandr
if you have an old installation) as
well as in all profile directories: The scripts are executed after a mode
switch has taken place and can notify window managers or other applications
about it. The same holds for preswitch
, which is executed before the switch
takes place, and postsave
, which is executed after a profile was
stored/altered.
All scripts can also be placed in any of the $XDG_CONFIG_DIRS
. In addition to
the script names themselves, any executables in subdirectories named
script_name.d
(e.g. postswitch.d
) are executed as well. In scripts, some of
autorandr's state is exposed as environment variables prefixed with AUTORANDR_
.
The most useful one is $AUTORANDR_CURRENT_PROFILE
.
Active Releases
The following unofficial repositories are provided as-is by owner of this project. Contact the owner directly for bugs or issues (IE: not bugzilla).
Release | Architectures | Repo Download |
---|---|---|
Fedora 38 | i386 (12)*, x86_64 (12)* | Fedora 38 (0 downloads) |
Fedora 39 | i386 (12)*, x86_64 (13)* | Fedora 39 (45 downloads) |
Fedora 40 | i386 (8)*, x86_64 (10)* | Fedora 40 (30 downloads) |
Fedora 41 | i386 (0)*, x86_64 (0)* | Fedora 41 (10 downloads) |
Fedora rawhide | i386 (12)*, x86_64 (12)* | Fedora rawhide (139 downloads) |
* Total number of downloaded packages.