Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Maintenance repository (Also: Check here if you experience problems) #33

Open
wants to merge 74 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
74 commits
Select commit Hold shift + click to select a range
8dbcc7f
Added support for rotated outputs to the xrandr codepath.
ccdunder Jul 31, 2012
afd63d5
Updated pm-utils scripts
Aug 6, 2012
5ada195
Merge remote-tracking branch 'helterscelter/master'
paulharris Apr 24, 2013
41edb76
Added a default fallback ("default") for pm-script.
paulharris Apr 24, 2013
37052d0
Added notes on how to get auto-disper running automatically.
paulharris Apr 24, 2013
3401494
Rename README -> README.md. Use markdown for README.md.
mtahmed May 12, 2013
71eab77
Make the README.md a bit cleaner.
mtahmed May 12, 2013
74a310b
Added install makefile and autorandr inotify monitor
queezythegreat Jun 26, 2013
82a1046
Updated Makefile, minor change to inotify monitor
queezythegreat Jun 26, 2013
0f31c5e
Minor code refactoring
queezythegreat Jun 26, 2013
c71e109
Minor fixes and improvements
queezythegreat Jun 26, 2013
2509ac3
Minor fixes and improvements
queezythegreat Jun 26, 2013
1ea13e4
Fix "No such file or directory" on tab-completion
tachylatus Jul 3, 2013
3939171
Fix xrandr -q parsing when output contains "primary"
tachylatus Jul 4, 2013
83355f4
Workaround xrandr bug: "cannot find crtc for output" - efficient solu…
tachylatus Jul 4, 2013
2891190
added --config to bash completion
voda Jul 20, 2013
2926c36
bash_completion: load profiles only when .autorandr directory exists
voda Jul 20, 2013
bbdf3fb
Added Makefile to install program.
herm Nov 17, 2013
a0ace8e
Some small fixes to the pm-utils script
sudnam Apr 10, 2013
5e3a9c5
Make user name detection more reliable if there are multiple session …
herm Nov 17, 2013
6bdb12f
Add a udev rules file for calling autorandr on monitor switch
sudnam Apr 10, 2013
085ee73
Install udev rules.
herm Nov 17, 2013
5b3e1fe
Update README.
herm Nov 17, 2013
a5a1747
Merge remote-tracking branches 'tachylatus/master' and 'herm/master'
phillipberndt Nov 29, 2013
ccd5339
Updated README with branch information
phillipberndt Nov 29, 2013
399523d
Merge remote-tracking branch 'mtahmed/master'
phillipberndt Nov 29, 2013
9a5ea1f
Display logger information in pm-utils script only if a user was actu…
phillipberndt Nov 29, 2013
4db3b2c
Merge remote-tracking branch 'helterscelter/master'
phillipberndt Dec 2, 2013
fb01d5e
Merge remote-tracking branch 'paulharris/master'
phillipberndt Dec 2, 2013
43bb98c
Merge remote-tracking branch 'queezythegreat/master'
phillipberndt Dec 2, 2013
7dabe21
Prefer sysfs probing over xrandr probing (more reliable, esp. if fake…
phillipberndt Dec 3, 2013
b94559c
Fix completion of config names
vapniks Dec 8, 2013
118f2c6
Merge remote-tracking branch 'public/patch-1'
voda Dec 15, 2013
7dc195c
Merge remote-tracking branch 'public/patch-2'
voda Dec 15, 2013
43dcdca
Merge branch 'patch-1' of https://github.com/vapniks/autorandr
voda Dec 15, 2013
f131585
Add support for "preswitch" scripts
Dec 30, 2013
6a04c1b
Support DESTDIR + improvements for easy packaging
tachylatus Jan 30, 2014
6d6f5b7
Merge pull request #1 from tachylatus/master
phillipberndt Jan 30, 2014
e1c9565
Merge branch 'feature/preswitch_scripts' of http://github.com/torranc…
phillipberndt Jan 30, 2014
eef58b0
Merge http://github.com/voda/autorandr
phillipberndt Jan 30, 2014
c3521b3
Merge https://github.com/ChrisDunder/autorandr
tachylatus Jan 30, 2014
8af170c
Only output "rotate" once
tachylatus Jan 30, 2014
007920e
Apply normal rotation unless another one is set
phillipberndt Jan 30, 2014
c980e54
Fixed indentation of commit f131585
phillipberndt Jan 30, 2014
0225027
Revert "Apply normal rotation unless another one is set"
tachylatus Jan 30, 2014
13decd1
Apply normal rotation unless another one is set (ver.2)
tachylatus Jan 30, 2014
d815adb
Merge pull request #3 from tachylatus/master
phillipberndt Jan 31, 2014
78eaf1b
fix load() causing 'exit 1' on missing optional file $PROFILES/postsw…
Feb 10, 2014
7940a4f
Merge pull request #4 from stormc/master
phillipberndt Feb 10, 2014
420686d
Adding emacs Local Variables block at the end.
bingmann Jul 4, 2014
8155280
Added a virtual profile named 'common', which calculates the lowest c…
bingmann Jul 19, 2014
f7b14d1
Set virtual 'common' config via load_cfg_xrandr by piping into the sed.
bingmann Jul 20, 2014
8c7260f
Output "same-as" in the "common" virtual configuration
phillipberndt Jul 20, 2014
9c9a603
Inform users about virtual configurations, prevent name collisions, p…
phillipberndt Jul 20, 2014
4d60816
Add 'horizontal' and 'vertical' stacked virtual profiles.
bingmann Jul 20, 2014
9b71999
Use same virtual profile detection code in all places
phillipberndt Jul 20, 2014
899c841
Print error when profile does not exist and fixing use of IS_VIRTUAL_…
bingmann Jul 20, 2014
d86adf9
Merge remote-tracking branch 'bingmann/master'
phillipberndt Jul 20, 2014
b4e56eb
Fixed integer test expressions
phillipberndt Jul 20, 2014
abd5e77
replaced w with who as w cuts off long user names
autermann Jul 27, 2014
f594071
removed trailing slash
autermann Nov 3, 2014
f4cce4d
Enable xrandr outputs one-by-one, --pos 0x0 first
tachylatus Dec 12, 2014
8429886
Enable outputs in pairs of two (Follow-up to commit f4cce4d)
phillipberndt Dec 13, 2014
920294a
Store refresh rate
phillipberndt Dec 31, 2014
d0efe24
Reimplemented the setup_fp methods
phillipberndt Jan 2, 2015
c677160
Detect and process legacy fingerprint (setup) files
phillipberndt Jan 2, 2015
c5873ac
License information (1/2)
phillipberndt Jan 2, 2015
7a49fda
Removed non-trivial code by Stefan Tomanek
phillipberndt Jan 2, 2015
d07beee
License information (2/2)
phillipberndt Jan 2, 2015
8465157
Revert "Removed non-trivial code by Stefan Tomanek"
phillipberndt Jan 16, 2015
66ac3a8
xxd replacement for systems without xxd
phillipberndt Jan 16, 2015
e66001b
Adjusted license information
phillipberndt Jan 16, 2015
c0b2521
Prefer xrandr edid probing over sysfs
phillipberndt Jan 16, 2015
59f6aec
Branch information updated
phillipberndt Jan 27, 2015
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
all:
@echo "Call \"make install\" to install this program."
@echo "Call \"make hotplug\" to install matching hotplug events."

INSTALL_PATH=/usr/local/bin
install:
install -D auto-disper ${DESTDIR}${INSTALL_PATH}/auto-disper
install -D -m 755 autorandr ${DESTDIR}${INSTALL_PATH}/autorandr
install -D -m 644 bash_completion/autorandr ${DESTDIR}/etc/bash_completion.d/autorandr

hotplug:
install -D -m 755 pm-utils/40autorandr ${DESTDIR}/etc/pm/sleep.d/40autorandr
install -D -m 644 udev/40-monitor-hotplug.rules ${DESTDIR}/etc/udev/rules.d/40-monitor-hotplug.rules
ifeq (${USER},root)
udevadm control --reload-rules
else
@echo "Please run this command as root:"
@echo " udevadm control --reload-rules"
endif
46 changes: 0 additions & 46 deletions README

This file was deleted.

94 changes: 94 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
# autorandr

Automatically select a display configuration based on connected devices

## Branch information

The original [wertarbyte/autorandr](https://github.com/wertarbyte/autorandr)
tree is unmaintained, with lots of open pull requests and issues. I forked
it and merged what I thought were the most important changes. I will maintain
this branch until @wertarbyte finds the time to maintain his branch again.

This version is not currently under active development. If you experience any
issues, give the Python version a try:

https://github.com/phillipberndt/autorandr


## License information and authors

autorandr is available under the terms of the GNU General Public License
(version 3).

Contributors to this version of autorandr are:

* Alexander Wirt
* Chris Dunder
* Maciej Sitarz
* Matthew R Johnson
* Phillip Berndt
* Stefan Tomanek
* Timo Bingmann
* Tomasz Bogdal
* stormc
* tachylatus

## How to use

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
`~/.autorandr` 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.

While the script uses xrandr by default, calling it by the name `autodisper`
or `auto-disper` forces it to use the [disper](http://willem.engen.nl/projects/disper/)
utility, which is useful for controlling nvidia chipsets. The formats for
fingerprinting the current setup and saving/loading the current configuration
are adjusted accordingly.

To install autorandr call `make install`, define your setup and then call
`make hotplug` to install hotplug scripts.

For Debian using auto-disper:
To make the screen auto-configure when your computer wakes up,
* Copy auto-disper into /usr/local/bin/
* Copy pm-utils/40auto-disper into /etc/pm/sleep.d/
* (Assuming gnome) Run gnome-keybinding-properties and ADD a shortcut,
I called it "Run auto-disper", I set it to CTRL-F7, and the command is:
`auto-disper -c --default default`
* Create a default disper setting... eg for laptop: unplug all monitors,
set up the screen nicely on the laptop display.
Then run `auto-disper --save laptop`
Loading