From 4cfcc3e5863644aa7fed8e9347bb2bcbf47d7fb0 Mon Sep 17 00:00:00 2001 From: Toby Vincent Date: Mon, 20 May 2024 21:31:21 -0500 Subject: feat(i3blocks): add more scripts --- i3blocks/.local/bin/i3blocks-miniflux | 26 ++++++++++++++++++++++++++ i3blocks/.local/bin/i3blocks-notmuch | 33 +++++++++++++++++++++++++++++++++ i3blocks/.local/bin/i3blocks-title | 4 ++-- 3 files changed, 61 insertions(+), 2 deletions(-) create mode 100755 i3blocks/.local/bin/i3blocks-miniflux create mode 100755 i3blocks/.local/bin/i3blocks-notmuch (limited to 'i3blocks/.local/bin') diff --git a/i3blocks/.local/bin/i3blocks-miniflux b/i3blocks/.local/bin/i3blocks-miniflux new file mode 100755 index 0000000..05224e2 --- /dev/null +++ b/i3blocks/.local/bin/i3blocks-miniflux @@ -0,0 +1,26 @@ +#!/usr/bin/env python3 + +import os + +import requests + +ICON = "\U0000f09e" + + +def main(): + url = "https://miniflux.tobyvin.dev/v1/feeds/counters" + headers = {"X-Auth-Token": os.environ.get("MINIFLUX_TOKEN")} + resp = requests.get(url, headers=headers) + count = sum(resp.json().get("unreads").values()) + + print(f" {ICON} {count} \n") + if count > 50: + print(os.environ.get("black")) + print(os.environ.get("red")) + elif count > 0: + print(os.environ.get("black")) + print(os.environ.get("yellow")) + + +if __name__ == "__main__": + main() diff --git a/i3blocks/.local/bin/i3blocks-notmuch b/i3blocks/.local/bin/i3blocks-notmuch new file mode 100755 index 0000000..b25c971 --- /dev/null +++ b/i3blocks/.local/bin/i3blocks-notmuch @@ -0,0 +1,33 @@ +#!/usr/bin/env python3 + +import notmuch +import os + +ICON = "\U000f01ee" # 󰇮 + + +def main(): + # Workaround for bug in the notmuch module's default config resolution + if os.environ.get("NOTMUCH_CONFIG") is None: + os.environ["NOTMUCH_CONFIG"] = os.path.join( + os.environ.get( + "XDG_CONFIG_HOME", os.path.join(os.path.expanduser("~"), ".config") + ), + "notmuch", + os.environ.get("NOTMUCH_PROFILE", "default"), + "config", + ) + + count = notmuch.Database().create_query("tag:unread").count_messages() + + print(f" {ICON} {count} \n") + if count > 50: + print(os.environ.get("black")) + print(os.environ.get("red")) + elif count > 0: + print(os.environ.get("black")) + print(os.environ.get("yellow")) + + +if __name__ == "__main__": + main() diff --git a/i3blocks/.local/bin/i3blocks-title b/i3blocks/.local/bin/i3blocks-title index b8e3213..9cd6abe 100755 --- a/i3blocks/.local/bin/i3blocks-title +++ b/i3blocks/.local/bin/i3blocks-title @@ -40,9 +40,9 @@ def on_window_event(sway: i3ipc.Connection, event: WindowEvent | WorkspaceEvent) focused = focused.find_focused() if focused: - print(focused.ipc_data["name"][:max_length]) + print(focused.ipc_data["name"][:max_length], flush=True) else: - print("") + print("", flush=True) if __name__ == "__main__": -- cgit v1.2.3-70-g09d2