54 lines
2.2 KiB
Markdown
54 lines
2.2 KiB
Markdown
# night-theme-switcher
|
|
Wrapper script to switch between dark and light themes under Arch Linux.
|
|
|
|
## Why use it?
|
|
If using a barebone WM like hyprland or sway there is no easy way to change between dark and light themes.
|
|
|
|
For example, let's say we have a bunch of application that use KDE/QML/QT and GTK3/4 toolkit. We can now define which themes and icons are used as dark/light themes regardless of the toolkit which these apps are based on.
|
|
|
|
Although we can't make the look unified between QT and GTK (notable exeption: KDE `Breeze`), we can at least utilize the dark/light themes of existing QT and GTK themes. This is achieved with the help of `qt6ct` and `gsettings` (which is part of `glib2` on Archlinux).
|
|
|
|
For example, let's assume we have `Breeze` for KDE, `adw-gtk3` for GKT3/4 and `Papirus` icon theme installed. We can now apply those themes with one click.
|
|
|
|
## Download
|
|
AUR Package: https://BIGFATPLACEHOLDER
|
|
|
|
## Dependencies
|
|
- `glib2` provides the neccesary `gsettings`.
|
|
- [`qt6ct-kde`](https://aur.archlinux.org/packages?O=0&K=qt6ct-kde) (a patched version of qt6ct with KDE color schemes support).
|
|
- Any GTK3 theme with dark/light support.
|
|
- Any KDE color scheme whith dark/light support.
|
|
|
|
## Setup
|
|
`$XDG_CONFIG_HOME/night-theme-switcher/night-theme-switcher.conf` will be created on the first invocation of nts and contains all user managed settings. Edit this file prior to running nts a second time. The script can be executed either with `/usr/bin/night-theme-switcher` or `/usr/bin/nts`.
|
|
|
|
## Options
|
|
| Command | Description |
|
|
| :---: | --- |
|
|
| p | Preview settings. |
|
|
| r | Restore selected theme (Usefull to run once after login).|
|
|
| s | Switch between dark and light theme. |
|
|
|
|
## Example Usage
|
|
Switch between dark and light theme as defined in the aforementioned config file:
|
|
```sh
|
|
$ nts s
|
|
```
|
|
|
|
Restore the chosen theme after a reboot (use your prefered autostart mechanism):
|
|
```sh
|
|
$ nts r
|
|
```
|
|
|
|
Preview the configured settings:
|
|
```sh
|
|
$ nts p
|
|
```
|
|
|
|
|
|
## Tips
|
|
* Since `nts` requires already installed themes, consider having a look into those directories:
|
|
- `/usr/share/color-schemes` for KDE color schemes.
|
|
- `/usr/share/themes` for GTK themes.
|
|
- `/usr/share/icons` for icon themes.
|
|
|