diff options
| author | Robert Günzler <r@gnzler.io> | 2021-05-31 16:40:10 +0200 |
|---|---|---|
| committer | Robert Günzler <r@gnzler.io> | 2021-05-31 16:43:35 +0200 |
| commit | f9a2f1f9b6bb223dd1f52cf78392c2dd640730f3 (patch) | |
| tree | 3faf261fe5ae95e5dead6ee01936b201291319ba /.config/waybar/modules/gammastep.go | |
| parent | ae795bd39751b6c385193c1fc99a0f88e399e2d6 (diff) | |
waybar: various updates
* add extension to config file * covid: use tail vs head for historical data * remove network.vpn * gamma: change name from gammastep
Diffstat (limited to '.config/waybar/modules/gammastep.go')
| -rw-r--r-- | .config/waybar/modules/gammastep.go | 94 |
1 files changed, 0 insertions, 94 deletions
diff --git a/.config/waybar/modules/gammastep.go b/.config/waybar/modules/gammastep.go deleted file mode 100644 index c855e1b..0000000 --- a/.config/waybar/modules/gammastep.go +++ /dev/null @@ -1,94 +0,0 @@ -// usage: -// go build -o waybar-gammastep gammastep.go -package main - -import ( - "encoding/json" - "log" - "os" - "os/exec" - "os/signal" - "strings" - - . "syscall" -) - -func main() { - var ( - update = make(chan os.Signal, 1) - cancel = make(chan os.Signal, 1) - ) - signal.Notify(update, SIGUSR1, SIGUSR2, SIGHUP) - signal.Notify(cancel, SIGTERM, SIGINT) - - // could use golang.org/x/sys/unix.Prctl here - // but I want to avoid the dependency - if _, _, e := Syscall6(SYS_PRCTL, - uintptr(PR_SET_PDEATHSIG), - uintptr(SIGTERM), - 0, 0, 0, 0); e != 0 { - log.Printf("error: %v", e) - os.Exit(1) - } - // if err := Prctl(PR_SET_PDEATHSIG, - // SIGTERM, - // 0, 0, 0); err != nil { - // fmt.Fprintln(os.Stderr, err) - // os.Exit(1) - // } - - lookup() - for { - select { - case sig := <-update: - switch sig { - case SIGUSR1: - // redshift off - printJson("day", "day") - case SIGUSR2: - // redshift on - printJson("night", "night") - case SIGHUP: - lookup() - } - case <-cancel: - log.Printf("%v exiting\n", os.Args[0]) - os.Exit(0) - } - } -} - -func printJson(state, tooltip string) { - _ = json.NewEncoder(os.Stdout).Encode(map[string]interface{}{ - "class": state, - "alt": state, - "tooltip": "gammastep: " + tooltip, - "text": state, - }) -} - -func lookup() { - b, err := exec.Command("gammastep", "-p").CombinedOutput() - if err != nil { - log.Printf("error: %v", err) - return - } - var period string - var fds = strings.Fields(string(b)) - for idx, f := range fds { - if f == "Period:" { - period = fds[idx+1] - break - } - } - switch period { - case "Night": - printJson("night", "night") - case "Transition": - printJson("night", "transition") - case "Daytime": - printJson("day", "day") - default: - printJson("unknown", "unknown") - } -} |