From d7186976a8d69abb7c682c8bb8cfa01d2b095f97 Mon Sep 17 00:00:00 2001 From: xeals Date: Tue, 15 Jan 2019 21:33:14 +1100 Subject: [PATCH] feat(autostart): use some async processes --- module/autostart.fnl | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/module/autostart.fnl b/module/autostart.fnl index f7711fa..28e8a69 100644 --- a/module/autostart.fnl +++ b/module/autostart.fnl @@ -7,11 +7,22 @@ ;;; Code: (local awful (require :awful)) +(local beautiful (require :beautiful)) +(local naughty (require :naughty)) + (local spawn awful.spawn.with_shell) +(local async awful.spawn.easy_async_with_shell) ;;; ;; Functions +(fn cb [prog] + (lambda [stdout stderr exitreason exitcode] + (when (not (= 0 exitcode)) + (naughty.notify + {:title (.. "async startup handler: " prog) + :text stderr})))) + (fn run-once [cmds] (each [_ cmd (ipairs cmds)] (let [first-space (: cmd :find " ") @@ -19,13 +30,15 @@ (: cmd :sub 0 (- first-space 1)) cmd)] (spawn - (string.format "pgrep -u $USER -x %s >/dev/null || (%s)" findme cmd))) )) + (string.format "pgrep -u $USER -x %s >/dev/null || (%s)" findme cmd))))) ;; Keyboard -(spawn "tpset 'Natural Scrolling' 1") -(spawn "tpset 'Tapping' 1") +(async "tpset \"Natural Scrolling\" 1" (cb "tpset")) +(async "tpset \"Tapping\" 1" (cb "tpset")) (spawn "setxkbmap -option caps:ctrl_modifier") +(async (.. "feh --bg-fill " beautiful.wallpaper) (cb "feh")) + (run-once ["nm-applet" ;; WiFi "pa-applet" ;; Sound manager