awesome/module/autostart.fnl

40 lines
938 B
Fennel

;;; module/auto-start.fnl --- Auto-start utilities
;;; Commentary:
;; Largely copied from
;; https://github.com/PapyElGringo/material-awesome/blob/master/module/auto-start.lua
;;; Code:
(local awful (require :awful))
(local spawn awful.spawn.with_shell)
;;;
;; Functions
(fn run-once [cmds]
(each [_ cmd (ipairs cmds)]
(let [first-space (: cmd :find " ")
findme (if first-space
(: cmd :sub 0 (- first-space 1))
cmd)]
(spawn
(string.format "pgrep -u $USER -x %s >/dev/null || (%s)" findme cmd))) ))
;; Keyboard
(spawn "tpset 'Natural Scrolling' 1")
(spawn "tpset 'Tapping' 1")
(spawn "setxkbmap -option caps:ctrl_modifier")
(run-once
["nm-applet" ;; WiFi
"pa-applet" ;; Sound manager
"blueman-applet" ;; Bluetooth
"compton -b" ;; Compositor
"libinput-gestures"
"fcitx-autostart" ;; Keyboard
])
{}
;;; module/auto-start.fnl ends here