An open API service indexing awesome lists of open source software.

https://github.com/tmpstpdwn/shwal

Set wallpaper and create colorschemes effortlesly. inspired by pywal
https://github.com/tmpstpdwn/shwal

aesthetic bash colorscheme gplv3 imagemagick linux pywal shell

Last synced: 7 months ago
JSON representation

Set wallpaper and create colorschemes effortlesly. inspired by pywal

Awesome Lists containing this project

README

          

# shwal

- `shwal` is a bash script to set wallpaper and generate color schemes from an image.
- It allows you to use templates so that new colorschemes can be applied across many softwares effortlessly.

## shwal integrated with lf filemanager.

![Alt Text](https://s10.gifyu.com/images/SfDyQ.gif)

## Usage

```sh
Usage: shwal [OPTIONS] [FILE]
Set wallpaper and generate colorscheme from an image.

Options:
-w Set wallpaper.
-i Set wallpaper, generate colorscheme from .
-j load colorscheme from .
-r Restore wallpaper.
```

- `-w ` : This option will set 'image' as wallpaper.
- `-i ` : This option will set 'image' as wallpaper, generate colorcheme, save the colorscheme and also process templates.
- `-j ` : This flag can be used to load a colorscheme from a json file and also process templates.
- `-r` : This flag will reset the wallpaper to the last used one.

## Installation

```bash
git clone https://github.com/tmpstpdwn/shwal.git
cd shwal
mv src/shwal ~/.local/bin
mkdir -p ~/.config/shwal
mv config/* ~/.config/shwal
```

- Make sure that `~/.local/bin` is in `$PATH`.

## Dependencies

- `ImageMagick` (magick) for color extraction.
- `feh` for setting wallpaper.
- `jq` for setting colorsheme from json files.
- `bc` for arithmetic, if you already dont have it.

## Configuration

- ### Templates :

- Templates are stored in `$HOME/.config/shwal/templates`.
- The way templates work is that you can store your template files in this folder.
- inside a template file colors can be substituted from the generated colorscheme by using `{color-key}`.
- The following are the colorkeys
`foreground`, `background`, `cursor`, `color0` ... `color15`.

- The following is an example of a color template.

```
* {
background: {background};
background-alt: {background};
foreground: {foreground};
selected: {cursor};
active: {color10};
urgent: {color9};
}
```

- Colorschemed templates generated are stored in `$HOME/cache/shwal`.

- ### Saved colorschemes.
Colorschemes generated will be saved in `$HOME/.config/shwal/jsons` as json, so that it can be reloaded later.

## Contributing

Contributions are welcome! Feel free to fork the repository and submit pull requests.

## License

This project is licensed under the GPLv3 [License](LICENSE).