diff options
author | Mattias Andrée <maandree@kth.se> | 2023-11-18 23:23:40 +0100 |
---|---|---|
committer | Mattias Andrée <maandree@kth.se> | 2023-11-18 23:23:40 +0100 |
commit | 0f1df0db903ba576fd17b08197d3066af7a61e5f (patch) | |
tree | a59c04307b1382257afa3c3512ec3abadf7e0e47 /xorg-xrandr | |
parent | Use losetup -d instead of --detach and add clean up (diff) | |
download | dotfiles-0f1df0db903ba576fd17b08197d3066af7a61e5f.tar.gz dotfiles-0f1df0db903ba576fd17b08197d3066af7a61e5f.tar.bz2 dotfiles-0f1df0db903ba576fd17b08197d3066af7a61e5f.tar.xz |
A lot of changes
Signed-off-by: Mattias Andrée <maandree@kth.se>
Diffstat (limited to 'xorg-xrandr')
-rw-r--r-- | xorg-xrandr/Makefile | 24 | ||||
-rwxr-xr-x | xorg-xrandr/resolution-changed | 20 | ||||
-rw-r--r-- | xorg-xrandr/xinit | 2 |
3 files changed, 36 insertions, 10 deletions
diff --git a/xorg-xrandr/Makefile b/xorg-xrandr/Makefile index d135e27..0968b2a 100644 --- a/xorg-xrandr/Makefile +++ b/xorg-xrandr/Makefile @@ -1,26 +1,32 @@ .POSIX: -include ../common.mk XINITRC_ORDER = 15 # Testing that xwallpaper is installed because setres calls it # Testing that python3 is installed because setres is written in it install: - $(CHECK_INSTALLED) xwallpaper - $(CHECK_INSTALLED) python3 + ../check-in-path xwallpaper + ../check-in-path python3 + ../check-installed-shebang resolution-changed mkdir -p -- ~/.config/X11/xinit/xinitrc.d - test ! -d ~/.config/X11/xinit/xinitrc.d/$(XINITRC_ORDER)-xorg-xrandr + test ! -e ~/.config/X11/xinit/xinitrc.d/$(XINITRC_ORDER)-xorg-xrandr || \ + test -L ~/.config/X11/xinit/xinitrc.d/$(XINITRC_ORDER)-xorg-xrandr ln -sf -- ~/.dotfiles/xorg-xrandr/xinit ~/.config/X11/xinit/xinitrc.d/$(XINITRC_ORDER)-xorg-xrandr mkdir -p -- ~/.local/bin - make -C setres - ln -sf -- ~/.dotfiles/xorg-xrandr/setres/setres ~/.local/bin + cd setres && $(MAKE) + test ! -e ~/.local/bin/setres || test -L ~/.local/bin/setres + ln -sf -- ~/.dotfiles/xorg-xrandr/setres/setres ~/.local/bin/setres + test ! -e ~/.config/resolution-changed || test -L ~/.config/resolution-changed + ln -sf -- ~/.dotfiles/xorg-xrandr/resolution-changed ~/.config/resolution-changed uninstall: + +! ../check-installed xorg-xrandr + +! ../check-installed xrandr + +! ../check-installed x11-xserver-utils -unlink -- ~/.config/X11/xinit/xinitrc.d/$(XINITRC_ORDER)-xorg-xrandr -rmdir -- ~/.config/X11/xinit/xinitrc.d -rmdir -- ~/.config/X11/xinit -rmdir -- ~/.config/X11 + -unlink -- ~/.config/resolution-changed -rmdir -- ~/.local/bin/setres - -make -C setres reallyclean - -.PHONY: install uninstall + +cd setres && $(MAKE) reallyclean diff --git a/xorg-xrandr/resolution-changed b/xorg-xrandr/resolution-changed new file mode 100755 index 0000000..a53c7b6 --- /dev/null +++ b/xorg-xrandr/resolution-changed @@ -0,0 +1,20 @@ +#!/bin/dash + +# Reset rat size in case DPI change modified scaling +xsetroot -cursor_name left_ptr || : + +# Reset rat speed in case DPI changed +if test "${DESKTOP_SESSION}" = xmonad && test ! "${NO_MATE}" = y; then + (exec mate-settings-daemon --replace &) || : +fi + +# Reset background in case resolution change damaged it +for file in ~/.config/background.${SESSION_} \ + ~/.config/background.${SESSION} \ + ~/.config/background.${DESKTOP_SESSION} \ + ~/.config/background; do + if test -r "$file"; then + xwallpaper --zoom "$file" + (sleep 2 ; xwallpaper --zoom "$file") & # Again, with delay, in case mate-settings-daemon changes it + fi +done diff --git a/xorg-xrandr/xinit b/xorg-xrandr/xinit index 1185a86..2f6e033 100644 --- a/xorg-xrandr/xinit +++ b/xorg-xrandr/xinit @@ -1,4 +1,4 @@ # -*- shell-script -*- # Set screen layout, resolution and calibration -setres || true +setres || : |