wallah

command module
v0.2.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 12, 2025 License: GPL-3.0 Imports: 10 Imported by: 0

README


GitHub release (latest SemVer) Go Version Build Status Go Report Card

wallah-cli is a CLI which you can change your macOS wallpaper, in which the menu bar part is black, in order to hide that ugly notch. Furthermore, it is less distracting if you have the menu bar auto-hide enabled.

It is a minimal alternative to the app Top Notch, and it is inspired by removethenotch.

Installation

You need to have Go installed. This command will compile and install the CLI tool in your system PATH.

go install github.com/stonkol/wallah@latest

If it is installed correctly, this will set your wallpaper to blue:

wallah blue

Index

  1. Build yourself
  2. Colors included
  3. Having issues?
  4. How it works
  5. Roadmap
  6. Contributing

1. Build yourself

1.1 Build the Binary

Compile all the go files:

go build

[!caution] Caution Don't use wall or other name that is used for a standard Unix/Linux command.

1.2 Move the Binary

Move the binary to a directory in your PATH, to run the app globally:

sudo mv wallah /usr/local/bin/
sudo chmod +x /usr/local/bin/wallah # make the file executable

1.3 Try it out

wallah -v        # show version
wallah -h        # show help
wallah -l        # show list of colors available
wallah blue      # set blue (#0000EE)
wallah blue-b    # set bright blue (#5C5CFF)
wallah pikachu   # set pikachu color (#F8A21C)
  1. macOS may require explicit permission for apps (including Terminal or the compiled CLI binary) to change the wallpaper.
  2. macOS may ask to accept permissions the first time your run the application.

2. Colors included

Example of one of the wallpapers (bright blue):

2.1 ANSI 16

The basic 8 colors, by default, is the dark mode version. Add b- prefix for bright (light) versions (b-blue).

black, blue, cyan, green, magenta, red, yellow and white.

2.2 CHAR 16

Based on 8 famous characters, each with their own light and dark mode. Add b- prefix for bright (light) versions (b-pikachu).

akira, blender, grimace, kirby, pikachu, stitchy, teddy and yoshi.

3. Roadmap

General

  • --help flag
  • --list flag
  • have a working binary working alone
  • Make a logo to put on the top of the README on GitHub
  • set random color for the wallah -r --random
  • change to previous color wallah -p --previous
  • set a wallpaper to all the desktops -a --all
  • have a gif of using wallah using a tape of vhs in readme.
  • Let the user be able to have settings
  • if input wallah mama, easter egg appears

Styling the cli

  • Colors of 8 characters
  • Have colored text on the CLI
  • have multiple columns to show the list
  • have a styled list

Light / Dark mode

  • Let users set the wallpaper for dark mode and light mode, which will change according to the system settings.
  • Include a -d --dark and -l --light flags for toggling mode
  • Let user enable/disable auto-light/dark mode.
  • Change toggle dark mode of the wall (between [color] and [color]-b) according to system settings.

Add more wallpapers

  • Include the 16 ANSI colors
  • 16" MacBook Pro version.
  • 13" and 15" MacBook Air

Possible Future Features

  • Let users change the wallpaper to an image

  • Dynamic wallpaper creator based on users input color

    • ANSI 16 support
    • ANSI 256 support
    • True Color (HEX) support
    • Adaptive Colors (specify color options for light and dark mode)
    • Gradient support
    • Adaptive Gradient support
  • Have animations when changing the wallpaper

4. How it works

  • Using osascript command to change the color of the wallpaper on macOS.
  • It runs AppleScript from Go using the os/exec package.
  • All the default wallpapers are located in the wallpapers directory.
  • There is a design-files directory with the design files (.psd and .afdesign) used to create the wallpapers. Which you can use to create your own wallpapers, either with solid colors, gradients, or an image.

5. Having issues

5.1 Only changed on one desktop?

On newer macOS versions (Ventura, Sonoma), wallpaper management changed: The wallpaper might only change on the current desktop/space. You might need to set wallpaper for each desktop separately.

5.2 Running the AppleScript manually

Test the AppleScript works with your wallpaper manually in the Terminal:

osascript -e 'tell application "System Events" to set picture of every desktop to POSIX file "/absolute/path/to/image.jpg"'

5.3 Run the command as the logged-in user

If you run your Go program as root or via sudo, the AppleScript may run as root and fail to change the wallpaper for the logged-in user. Make sure you run the CLI as the current logged-in user.

6. Contributing

Welcome to make a pull request or add an issue, but before, please read the README.md before contributing. 😀

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL