Move default numb lines into khomenu itself, decreasing it
[khome.git] / home / .xlaunch
index be3cc36..5be1cb8 100755 (executable)
@@ -2,12 +2,39 @@
 
 set -e
 
+launch_then_killall() {
+    local -r program="$1"
+    local -r timeout="${2:-1}" # 2nd arg or default to 1.
+
+    "$program"&
+    sleep "$timeout"
+    killall "$program"
+}
+
+dpi_scale() {
+    # IDK what magic is at work here, but launching mate-appearance-properties
+    # does the job better than setting scaling variables.
+    # TODO Get to the bottom of how it works and replicate directly.
+    launch_then_killall 'mate-appearance-properties' 1
+
+    # GDK 3 (GTK 3)
+    # https://wiki.archlinux.org/index.php/HiDPI#GDK_3_(GTK_3)
+    #export GDK_SCALE=2
+
+    # QT
+    # https://wiki.archlinux.org/index.php/HiDPI#Qt_5
+    # https://doc.qt.io/qt-5/highdpi.html
+    # https://blog.qt.io/blog/2016/01/26/high-dpi-support-in-qt-5-6/
+    #export QT_SCALE_FACTOR=2  # Causes qutebrowser UI fonts to have large gaps.
+    #export QT_FONT_DPI=192  # Scales qutebrowser UI fonts as expected.
+}
 
 launch_common() {
     xbindkeys
     xscreensaver &
-    mpd --kill || true
-    mpd
+    dpi_scale&
+    #mpd --kill || true
+    #mpd
     for script in ~/.xlaunch.d/*; do
         "$script"
     done
@@ -15,9 +42,16 @@ launch_common() {
 
 launch_specialized() {
     # XXX dunst lazily started by dbus
-    for script in ~/.xlaunch.d."$(hostname)"/*; do
-        "$script"
-    done
+    local -r scripts_dir=~/.xlaunch.d."$(hostname)"
+
+    if test -d "$scripts_dir"
+    then
+        for script in "$scripts_dir"/*; do
+            "$script"
+        done
+    else
+        printf '[error] scripts_dir not found: %s\n' "$scripts_dir" >&2
+    fi
 }
 
 launch_common
This page took 0.038471 seconds and 4 git commands to generate.