Change menu bar color in macOS Big Sur
Simple utility to change macOS Big Sur menu bar color by appending a solid color or gradient rectangle to a wallpaper image.
Motivation
Big Sur changed the way the menu bar is displayed. It now adopts the color of the wallpaper, which may not always be what you would like. This utility allows you to specify the solid color or gradient of the menu bar you want to use.
Example
Imagine you have a dark wallpaper (here is mine). This dark wallpaper results in the menu bar being black even though you use the Light mode
With this utility you can generate a new wallpaper that makes the menu bar being shown in any color you want, like a nice tone of gray from Catalina.
Or a custom gradient
Installation
Binary release
Download the latest published release and unzip the ChangeMenuBarColor.zip
file. It will create a ChangeMenuBarColor
executable file that you can use.
Make sure you execute all the commands from the directory where you unziped the files. So if you unziped the release to a ChangeMenuBarColor
directory you need to enter it with a cd ChangeMenuBarColor
before running the utility.
Swift Package Manager
You need Xcode or at least Xcode Command Line tools installed to make the utility to compile. The simplest way to install Xcode Command Line Tools is running
xcode-select --install
Clone the repository
git clone https://github.com/igorkulman/ChangeMenuBarColor.git
enter it
cd ChangeMenuBarColor
and run
swift build -c release
to create a ChangeMenuBarColor
executable file in .build/release
. Ideally copy it to the project directory with
cp .build/release/ChangeMenuBarColor .
Usage
Solid color
To set a new wallpaper file with a solid color rectangle that matches the menu bar, run
./ChangeMenuBarColor SolidColor "desired_hex_color" "optional_path_to_your_wallpaper"
So for example
./ChangeMenuBarColor SolidColor "#CCCCCC" "/Users/igorkulman/wallpaper.jpg"
If you do not provide the wallpaper path
./ChangeMenuBarColor SolidColor "#CCCCCC"
the currently set wallpaper will be used.
Gradient
To set a new wallpaper file with a gradient rectangle at the top, run
./ChangeMenuBarColor Gradient "start_hex_color" "end_hex_color" "optional_path_to_your_wallpaper"
So for example
./ChangeMenuBarColor Gradient "#FF0000" "#00FF00" "/Users/igorkulman/wallpaper.jpg"
If you do not provide the wallpaper path
./ChangeMenuBarColor Gradient "#FF0000" "#00FF00"
the currently set wallpaper will be used.
Known issues
Dynamic wallpapers are not supported at the moment. If you use a dynamic wallpaper the utility will not be able to use it and will fail.
Contributing
All contributions are welcomed!
Development
Use swift package generate-xcodeproj
to generate a Xcode project you can use for development.
Author
- Igor Kulman - Initial work - igor@kulman.sk
License
This project is licensed under the MIT License - see the LICENSE file for details.