Skip to content

aKqir24/walset

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

176 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

wide_stylish_text

Code size GitHub Release Codacy grade GitHub License

A bash script that expands the usage of pywal16's colors and to ease the configuration.

Important

The script may work in the using the normal pywal but it may fail to complete some steps of this script, so please use this fork of pywal called pywal16 in order to complete some steps in the script, also the wallpapers are not uploaded in the repo, so please configure the wallpaper directory first.

preview.mp4

The youtube video showcases realtime theme changing.

DEVELOPMENT

A sneakpeek to what I have been doing for a few days. While I was learning the Gtk GUI toolkit, at the same time rewriting parts code the code to python. If you are curious you can check it here, it is pretty much not done yet.

gscreenshot_2026-03-31-034303

FEATURES

  • Finished

    • Dialog configuration along with pywal options.
    • Choose between solid_color or image in wallpaper setting.
    • Wallpaper setup options include [ fill, scale, max, fit, etc ]
    • Pywal colors to some configurable programs.( as toml config arrays )
    • Use a wallpaper folder or image in pywal16.
    • Gtk theming based Flat-Remix-GTK as base theme.
    • Icon theme colors based Flat-Remix icon pack.
    • Reload gtk and icon themes using xsettingd & gsettings.(only icon theme reloading in wayland)
    • Full Gif wallpaper support(please update to the latest pywal16 version).
  • Unfinished

    • Gui config support using python-gi(this is a bit challenging)

SETUP

DEPENDENCIES

  • Required

    • yq
    • pywal16
    • imagemagick
  • Optional

    • python-gi [GUI configuration]
    • kdialog Dialog Configuration
    • xsettingsd [reload_gtk & icons]
    • libxapp-gtk3-module [gtk3 decorations]
    • gtk2-engines-murrine [gtk2 support]
    • A wallpaper setter (optional):
      • feh
      • hsetroot
      • xwallpaper
      • nitrogen
      • xgifwallpaper (gif wallpaper animations on x11)
      • swaybg
      • awww (gif wallpaper on wayland) ...

DISTRO

  • Debian ( or Other Debian based distro )
sudo apt install kdialog pipx yq imagemagick xwallpaper
pipx install pywal16
  • Arch / AUR
# You can use something else that works for you like paru
yay -S kdialog pywal16 yq imagemagick xwallpaper

USAGE

Run the following commands in your terminal:

  git clone --recursive https://github.com/aKqir24/walset.git
  cd ~/walset

then use these option to configure it:

bash walsetup.sh [OPTION]
  --gui: To launch a configuration GUI and apply the configurations.
  --setup: Show dialogs that sets up the configurations in order.
  --theme [add, remove]: a gtk or/and icon theme template for pywal16.
		You can add your custom theme repo by addind the 'CUSTOM_THEME_REPO' env.
  -D | --debug: shows all the messages of this script.
  -R | --reload: enables programs to reload after running pywal, eg.(gtk|icons|wm)
  -r | --reset: To remove all set features, and set them all to default.
  -V | --verbose: To show log messages when each step of the script is executed.
  -h | --help: to show how to use this script.
  -h | --help: to show how to use this script, (this is ignored sometimes ignored).
  -L | --load: loads/applies the configurations.

Note

Not all are covered like changing the values of a wm config file, in this script yet, so feel free to commit some improvements to it...

CONFIG

The config file is located in $HOME/.config/walset.toml. Here is a sample config, I recommend to use it cause it is much easier to setup:

[wallpaper]
cycle = "iterative"
type = "image"
path = "/home/akqir24/Pictures/Wallpapers"
mode = "fill"
animated = true

[theming]
mode = "dark"
accent = "color2"

[theming.programs]
i3status_rust = "/home/akqir24/.files/.config/i3/status/config.toml"
alacritty = "/home/akqir24/.config/alacritty.toml"
rofi = "/home/akqir24/.config/rofi/config.rasi"
dunst = "/home/akqir24/.config/dunst/dunstrc"

[pywal16]
light = true
reload = true
backend = "wal"
colorscheme = "lighten"

SPEACIAL THANKS

About

A straight forward script that adds feautures to `pywal16` and makes the configuration much more easier.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Contributors

Languages