aboutsummaryrefslogtreecommitdiffstats
path: root/x11
diff options
context:
space:
mode:
authorGravatar Tom Willemse2020-04-26 21:01:48 -0700
committerGravatar Tom Willemse2020-04-26 21:34:57 -0700
commit5bb0014265536ee59a9d63625f716257bdd2785c (patch)
tree90843b8d8f1c1d48440cf1514ff0f045b1e0b2f2 /x11
parent81c8b04af6f4d7db98be014e10f84dcdfbd363b9 (diff)
downloadnew-dotfiles-5bb0014265536ee59a9d63625f716257bdd2785c.tar.gz
new-dotfiles-5bb0014265536ee59a9d63625f716257bdd2785c.zip
Reorganize xsession and Xresources
- Add xsession. Instead of requiring each of my machines to setup their own ‘.xsession’ add one that should work for all of them. - Use M4 for the Xresources database. I didn’t want the X11 project to be aware of all the configuration files that could be added in there and I was able to figure out how to have it load all of the configuration files in the ‘Xresources.d’ directory. Now each configuration can inject properties into the X resources database. - Have ‘.xsession’ load all of the scripts in ‘.config/X11/Xsession.d’. Each configuration can now inject some script to run when X starts. - Have ‘.xsession’ load a machine-specific script so that each machine can override what it does when X starts.
Diffstat (limited to 'x11')
-rw-r--r--x11/.Xresources4
-rw-r--r--x11/.config/X11/Xresources35
-rw-r--r--x11/.config/X11/Xresources.d/Xcursor.conf (renamed from x11/.config/Xresources/Xcursor.conf)0
-rw-r--r--x11/.config/X11/machines/drd.sh4
-rw-r--r--x11/.config/Xresources/theme.conf89
-rwxr-xr-xx11/.xsession20
6 files changed, 59 insertions, 93 deletions
diff --git a/x11/.Xresources b/x11/.Xresources
deleted file mode 100644
index 9c8304f..0000000
--- a/x11/.Xresources
+++ /dev/null
@@ -1,4 +0,0 @@
-#include ".config/Xresources/theme.conf"
-#include ".config/Xresources/Xcursor.conf"
-#include ".config/Xresources/Rofi.conf"
-#include ".config/Xresources/URxvt.conf"
diff --git a/x11/.config/X11/Xresources b/x11/.config/X11/Xresources
new file mode 100644
index 0000000..a3f34cb
--- /dev/null
+++ b/x11/.config/X11/Xresources
@@ -0,0 +1,35 @@
+define(`prefix', `$HOME/.config/X11/Xresources.d/')dnl
+define(`resources', `esyscmd(`ls -m ' prefix ` | tr -d \\n')')dnl
+define(`includeall', `ifelse($1, `', `', `include($1)includeall(shift($@))')')dnl
+dnl
+dnl Background colors
+define(`bgdefault', `#111414')dnl
+define(`bgbright', `#3d3d3d')dnl
+define(`bgdim', `#222222')dnl
+define(`bgred', `#3f1a1a')dnl
+define(`bgorange', `#3f321f')dnl
+define(`bgyellow', `#343922')dnl
+define(`bggreen', `#263f1f')dnl
+define(`bgturquoise', `#1f3f2c')dnl
+define(`bgcyan', `#1f3f3f')dnl
+define(`bgblue', `#1f2c3f')dnl
+define(`bgpurple', `#2f2a3f')dnl
+define(`bgmagenta', `#381f3f')dnl
+define(`bgpink', `#3f1f32')dnl
+dnl
+dnl Foreground colors
+define(`fgdefault', `#bfbfbf')dnl
+define(`fgbright', `#ededed')dnl
+define(`fgdim', `#969696')dnl
+define(`fgred', `#a85454')dnl
+define(`fgorange', `#a88654')dnl
+define(`fgyellow', `#8d995c')dnl
+define(`fggreen', `#65a854')dnl
+define(`fgturquoise', `#54a875')dnl
+define(`fgcyan', `#54a8a8')dnl
+define(`fgblue', `#5476a8')dnl
+define(`fgpurple', `#7d71a8')dnl
+define(`fgmagenta', `#9754a8')dnl
+define(`fgpink', `#a85487')dnl
+dnl
+includeall(resources)
diff --git a/x11/.config/Xresources/Xcursor.conf b/x11/.config/X11/Xresources.d/Xcursor.conf
index 4ad1649..4ad1649 100644
--- a/x11/.config/Xresources/Xcursor.conf
+++ b/x11/.config/X11/Xresources.d/Xcursor.conf
diff --git a/x11/.config/X11/machines/drd.sh b/x11/.config/X11/machines/drd.sh
new file mode 100644
index 0000000..72eeb2e
--- /dev/null
+++ b/x11/.config/X11/machines/drd.sh
@@ -0,0 +1,4 @@
+#!/usr/bin/env sh
+
+xrandr --output HDMI-0 --auto --primary \
+ --output DVI-I-1 --auto --right-of HDMI-0 --rotate left
diff --git a/x11/.config/Xresources/theme.conf b/x11/.config/Xresources/theme.conf
deleted file mode 100644
index 51f4031..0000000
--- a/x11/.config/Xresources/theme.conf
+++ /dev/null
@@ -1,89 +0,0 @@
-!! Background colors
-#define bgdefault #111414
-#define bgbright #3d3d3d
-#define bgdim #222222
-#define bgred #3f1a1a
-#define bgorange #3f321f
-#define bgyellow #343922
-#define bggreen #263f1f
-#define bgturquoise #1f3f2c
-#define bgcyan #1f3f3f
-#define bgblue #1f2c3f
-#define bgpurple #2f2a3f
-#define bgmagenta #381f3f
-#define bgpink #3f1f32
-
-!! Foreground colors
-#define fgdefault #bfbfbf
-#define fgbright #ededed
-#define fgdim #969696
-#define fgred #a85454
-#define fgorange #a88654
-#define fgyellow #8d995c
-#define fggreen #65a854
-#define fgturquoise #54a875
-#define fgcyan #54a8a8
-#define fgblue #5476a8
-#define fgpurple #7d71a8
-#define fgmagenta #9754a8
-#define fgpink #a85487
-
-!! URxvt colors
-#define URxvt_background bgdefault
-#define URxvt_foreground fgdefault
-#define URXvt_cursorColor fgblue
-! BG Black
-#define URxvt_color0 bgdim
-! BG Red
-#define URxvt_color1 fgred
-! BG Green
-#define URxvt_color2 fggreen
-! BG Yellow
-#define URxvt_color3 fgyellow
-! BG Blue
-#define URxvt_color4 fgblue
-! BG Magenta
-#define URxvt_color5 fgmagenta
-! BG Cyan
-#define URxvt_color6 fgcyan
-! BG White
-#define URxvt_color7 fgdim
-! FG Black
-#define URxvt_color8 bgbright
-! FG Red
-#define URxvt_color9 #da9d9d
-! FG Green
-#define URxvt_color10 #a9d39e
-! FG Yellow
-#define URxvt_color11 #c2ca9e
-! FG Blue
-#define URxvt_color12 #a2b8d8
-! FG Magenta
-#define URxvt_color13 #d0a8da
-! FG Cyan
-#define URxvt_color14 #abdddd
-! FG White
-#define URxvt_color15 fgbright
-! Selection highlight
-#define URxvt_highlightColor bgblue
-#define URxvt_highlightTextColor fgdefault
-
-!! Rofi colors
-#define Rofi_normal_bg bgdim
-#define Rofi_normal_fg fgdefault
-#define Rofi_normal_bgalt Rofi_normal_bg
-#define Rofi_normal_hlbg bgblue
-#define Rofi_normal_hlfg fgdefault
-#define Rofi_urgent_bg bgdefault
-#define Rofi_urgent_fg fgred
-#define Rofi_urgent_bgalt Rofi_urgent_bg
-#define Rofi_urgent_hlbg Rofi_normal_hlbg
-#define Rofi_urgent_hlfg Rofi_urgent_fg
-#define Rofi_active_bg bgdefault
-#define Rofi_active_fg fgcyan
-#define Rofi_active_bgalt Rofi_active_bg
-#define Rofi_active_hlbg Rofi_normal_hlbg
-#define Rofi_active_hlfg Rofi_active_fg
-#define Rofi_window_bg Rofi_normal_bg
-#define Rofi_window_border Rofi_normal_bg
-#define Rofi_window_separator Rofi_normal_bg
diff --git a/x11/.xsession b/x11/.xsession
new file mode 100755
index 0000000..70efe31
--- /dev/null
+++ b/x11/.xsession
@@ -0,0 +1,20 @@
+#!/usr/bin/env sh
+
+# shellcheck source=../lib/usr/lib/sh/loading.sh
+. ~/usr/lib/sh/loading.sh
+
+xrdb -cpp m4 -merge "${HOME}/.config/X11/Xresources" \
+ -I"${HOME}/.config/X11/Xresources.d"
+
+load_machine_config ".config/X11/machines"
+load_config_directory ".config/X11/Xsession.d"
+
+command -v kdeconnect-indicator \
+ && (pgrep kdeconnect-indicator \
+ || { kdeconnect-indicator & })
+
+command -v syncthing-gtk \
+ && (pgrep syncthing-gtk \
+ || { syncthing-gtk & })
+
+command -v unclutter && (pgrep unclutter || unclutter --fork)