From cab6f258fcfe1dc92207574795472ba8f79e42bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ferit=20Yi=C4=9Fit=20BALABAN?= Date: Thu, 28 Apr 2022 02:20:26 +0300 Subject: [PATCH 1/3] Add system-wide theme and mode switcher script --- modeset.py | 81 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100755 modeset.py diff --git a/modeset.py b/modeset.py new file mode 100755 index 0000000..9b5fdc3 --- /dev/null +++ b/modeset.py @@ -0,0 +1,81 @@ +#!/usr/bin/env python3 +# +# Ferit Yiğit BALABAN, +# +# modeset.py is a handy theme switcher for multiple applications. +from datetime import datetime +import os +import sys +from subprocess import run + + +HOME_FOLDR = '/home/ferit' +PATH_LOGFL = f'{HOME_FOLDR}/navi.log' +DARK_THEME = f'{HOME_FOLDR}/repos/kitty-themes/themes/hardcore.conf' +LGHT_THEME = f'{HOME_FOLDR}/repos/kitty-themes/themes/Novel.conf' +DARK_WLLPR = f'{HOME_FOLDR}/sources/wallpapers/6kkzj7.png' +LGHT_WLLPR = f'{HOME_FOLDR}/sources/wallpapers/5dd9v9.png' +DARK_FETCH = f'{HOME_FOLDR}/scripts/fetchdark.theme' +LGHT_FETCH = f'{HOME_FOLDR}/scripts/fetchlight.theme' +PATH_KITTY = f'{HOME_FOLDR}/.config/kitty/theme.conf' +PATH_FETCH = f'{HOME_FOLDR}/scripts/fetch.theme' +KBD_NAME = 'asus::kbd_backlight' + + +def write(status: str): + log = f'[{datetime.now().strftime("%d/%m/%y-%H.%M.%S")}]' + log += 'navi is going dark.' if status == 'dark' else 'navi is enlightened.' + with open(PATH_LOGFL, 'a') as f: + f.write(log) + f.close() + + +def set_kbdlight(intensity: int): + run(['brightnessctl', 'set', '--device', KBD_NAME, str(intensity)]) + + +def set_wallpaper(wallpaper: str): + run(['nitrogen', '--set-centered', wallpaper]) + + +def set_fetchpy(theme: str): + try: + os.remove(PATH_FETCH) + except FileNotFoundError: + pass + os.symlink(theme, PATH_FETCH) + + +def set_kitty(theme: str): + try: + os.remove(PATH_KITTY) + except FileNotFoundError: + pass + os.symlink(theme, PATH_KITTY) + + +def main(): + sys.argv.reverse() + sys.argv.pop() + if len(sys.argv) != 0: + mode = sys.argv.pop() + if mode == 'd' or mode == 'dark': + set_kitty(DARK_THEME) + set_wallpaper(DARK_WLLPR) + set_fetchpy(DARK_FETCH) + set_kbdlight(1) + write('dark') + elif mode == 'l' or mode == 'light': + set_kitty(LGHT_THEME) + set_wallpaper(LGHT_WLLPR) + set_fetchpy(LGHT_FETCH) + set_kbdlight(0) + write('light') + else: + print("Error: expected d, dark, l or light as argument.") + exit(1) + exit(0) + + +if __name__ == '__main__': + main() From a3fe6195fdf7ef47227e8b3bf93ea3f7d64f3125 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ferit=20Yi=C4=9Fit=20BALABAN?= Date: Thu, 28 Apr 2022 02:20:53 +0300 Subject: [PATCH 2/3] Update brightnessctl call arguments --- reboot.sh | 6 ++++++ shutdown.sh | 6 ++++++ 2 files changed, 12 insertions(+) create mode 100644 reboot.sh create mode 100755 shutdown.sh diff --git a/reboot.sh b/reboot.sh new file mode 100644 index 0000000..17e6c37 --- /dev/null +++ b/reboot.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash +dt=$(date +'%d/%m/%y-%H.%M.%S') +echo "[$dt] navi restarting..." >> $HOME/navi.log +brightnessctl --device amdgpu_bl1 set 128 +brightnessctl --device asus::kbd_backlight 1 +reboot diff --git a/shutdown.sh b/shutdown.sh new file mode 100755 index 0000000..dad86b8 --- /dev/null +++ b/shutdown.sh @@ -0,0 +1,6 @@ +#!/bin/bash +dt=$(date +'%d/%m/%y-%H.%M.%S') +echo "[$dt] navi shutting down..." >> navi.log +brightnessctl set 128 +brightnessctl --device asus::kbd_backlight 1 +shutdown -h now From 8877fec7d8caaa02ed6821e8fce34da9a3fa9e78 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ferit=20Yi=C4=9Fit=20BALABAN?= Date: Thu, 28 Apr 2022 02:21:15 +0300 Subject: [PATCH 3/3] Add themes for use with fetchpy --- fetch.theme | 1 + fetchdark.theme | 4 ++++ fetchlight.theme | 4 ++++ 3 files changed, 9 insertions(+) create mode 120000 fetch.theme create mode 100644 fetchdark.theme create mode 100644 fetchlight.theme diff --git a/fetch.theme b/fetch.theme new file mode 120000 index 0000000..7cbbc94 --- /dev/null +++ b/fetch.theme @@ -0,0 +1 @@ +/home/ferit/scripts/fetchdark.theme \ No newline at end of file diff --git a/fetchdark.theme b/fetchdark.theme new file mode 100644 index 0000000..c985031 --- /dev/null +++ b/fetchdark.theme @@ -0,0 +1,4 @@ +#75FDFF +#FFE252 +#D66565 +#FFAB3D \ No newline at end of file diff --git a/fetchlight.theme b/fetchlight.theme new file mode 100644 index 0000000..9410c09 --- /dev/null +++ b/fetchlight.theme @@ -0,0 +1,4 @@ +#00348A +#FFAE00 +#E04B00 +#E05955