Skip to content
/ gowall Public

A tool to convert a Wallpaper's color scheme / palette, image to pixel art, color palette extraction, image upsacling with Adversarial Networks and more image processing features

License

Notifications You must be signed in to change notification settings

Achno/gowall

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Design By Achno


Overview 🖼️

Gowall is a tool to convert an image ( specifically a wallpaper ) to any color-scheme / palette you like! It also offers a bunch of image processing features (image to pixel art, Image upscaling, color palette extraction...)

Docs

Gowall is really well documented with visual examples: Gowall Docs


Features

❗ Although Gowall is a CLI tool, it has an Image preview feature that allows printing images directly in the terminal. See Gowall Terminal Image preview

  • Convert Wallpaper's theme 👾 – Recolor an image to match your favorite + (Custom) themes (Catppuccin...).
  • AI Image Upscaling 👾- Increase the resolution of the image while preserving or improving its quality.
  • Support for Unix pipes/redirection 👾 - Read from stdin and write to stdout.
  • Convert Icon's theme 👾 (svg,ico) - Recolor your icons to match a theme.
  • Image to pixel art - Transforms your image to the typical blocky appearance of pixel art.
  • Replace a specific color in an image - Pretty self explanatory.
  • Create a gif from images - Use the images as frames and specify a delay and the number of loops.
  • Extract color palette - Extracts all the dominant colors in an image (like pywal).
  • Change Image format - Ex. change format from .webp to .png.
  • Invert image colors - Pretty self explanatory.
  • Draw on the Image - Draw borders,grids on the image
  • Remove the background of the image - Pretty self explanatory.
  • Effects - Mirror,Flip,Grayscale,change brightness and more to come!
  • Daily wallpapers - Explore community-voted wallpapers that reset daily.










Themes 🎨

You can check the section here on how to create a Custom Theme.

The currently supported themes are featured below, if your favourite theme is missing open an issue or a pull request All themes can be shown (both default and user-created via ~/.config/gowall/config.yml) by gowall list.

  • Catppuccin flavors
  • Dracula
  • Everforest
  • Gruvbox
  • Nord
  • Onedark
  • Solarized
  • Tokyo-dark/storm/moon
Click to see more themes
  • Arc Dark
  • Atom Dark
  • Atom One Light
  • Cat Frappe/latte
  • Cyberpunk
  • Github Light (black & white)
  • Kanagawa
  • Material
  • Melange (Dark & Light)
  • Night Owl
  • Oceanic Next
  • Rose Pine
  • Shades of Purple
  • Sunset Aurant
  • Sunset Saffron
  • Sunset Tangerine
  • Sweet
  • Synthwave 84


Installation 📦

Make sure to do gowall -v and compare it against the release page version, since the docs only show the commands/flags and capabilities of the latest released version.

MacOS (Homebrew)

brew install gowall

Thank you to chenrui333. You can find the ruby formula there.

Arch linux - AUR

yay -S gowall

Fedora - COPR

sudo dnf copr enable achno/gowall
sudo dnf install gowall

NixOS - ( Maintainer : Emily Trau)

  environment.systemPackages = [
    pkgs.gowall
  ];

More installation options : here

Void Linux - XBPS-SRC ( Maintainer : elbachir-one)

Assuming you have void-packages

git clone https://github.com/elbachir-one/void-templates
cd void-templates/ && cp -r gowall/ void-packages/srcpkgs/
cd void-packages/
./xbps-src pkg gowall
sudo xbps-install -R hostdir/binpkgs gowall

Grab the binary from the release section (Stable Release) 🢀 Prefered Method

If you don't know how to install gowall you should probably following this method rather than cloning and building the project.

Head over to the release section

Choose the latest version of gowall. You should see a .tar.gz for your operating system and architecture. Simply Extract the binary inside named gowall and place it inside your $PATH

sudo cp gowall /usr/local/bin/

Build from source (Cutting Edge)

If you are a normal user, consider using using the method above for a stable gowall release.

If you want to contribute to the project

Or have all the latest features that have not been released yet then

🔨 Clone the repo, build the project and move it inside your $PATH

git clone https://github.com/Achno/gowall
cd gowall
go build
sudo cp gowall /usr/local/bin/
gowall

Notes 🗒️ : You dont have to use sudo cp gowall /usr/local/bin/ if you have $GOPATH setup correctly Eg. you have the following in your .zshrc / .bashrc

export GOPATH=$(go env GOPATH)
export GOBIN=$GOPATH/bin
export PATH=$PATH:$GOBIN

And simply use go install

go install github.com/Achno/gowall@latest

Contributions 🤝

If you wish to contribute by adding a new theme please open an issue I would also be very happy if you can provide the rgb values of your theme as well :) but not required if it's popular

Feel free to suggest any cool features that would improve gowall even further by opening an issue

Community

Community Extensions

The following are third-party projects built by the community that extend or integrate with gowall.

Warning

These tools are not officially affiliated with the gowall project. Please audit/inspects scripts before running them.

🔗 Projects

  • tinted-gowall — A bridge between gowall and the tinted-theming ecosystem. This project enables users to apply their base16/base24 themes with gowall, unlocking hundreds of new visual styles.

Special Thanks

Special thanks to lutgen for the original implementation of the color correction algorithm which i adapted for this project.

About

A tool to convert a Wallpaper's color scheme / palette, image to pixel art, color palette extraction, image upsacling with Adversarial Networks and more image processing features

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 8

Languages