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
- Build yourself
- Colors included
- Having issues?
- How it works
- Roadmap
- 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)
- macOS may require explicit permission for apps (including Terminal or the compiled CLI binary) to change the wallpaper.
- 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. 😀