Creating custom themes
Audacity supports themes via files called ImageCache.png
Note: It is recommended to only use the ImageCache.png to distribute themes, not to author them. This is due to the ImageCache breaking whenever buttons are added or removed from Audacity, which may happen more often in the coming releases.
Making custom themes from source
Audacity stores the source files for the built-in themes in libraries/lib-theme-resources/
as a group of individual files.
To create a theme out of this, use the following steps:
Set up a build environment
get a copy of the audacity source and set up a build environment. Details can be found in BUILDING.md.
Set up a new theme
Copy an existing theme folder in lib-theme-resources to create a base for your own theme and rename it with your theme name (for this example,
Yourtheme
).Replace all relevant files with your own themed versions. Some files found in the sources are no longer (or not yet) used in current versions of Audacity. Note: Make sure to use an editor that's capable of handling transparencies - MSPaint will not work. Additionally, make sure to not resize any images.
Create a copy of ClassicThemeAsCeeCode.cpp and edit it:
Open lib-theme-resources' CMakeLists.txt file and add your theme like the others:
In
libraries/lib-theme/Theme.cpp
's functionGUITheme()
, add your theme to the list:
Enable experimental theming options
In src/Experimental.cmake, uncomment the THEME_PREFS flag (remove the
#
beforeTHEME_PREFS
):
Compile and run Audacity.
Export the ImageCache.png
Open the preferences.
In the Interface preferences, untick the option "Blend system and Audacity theme".
Press OK and restart Audacity.
Editing the ImageCache.png directly
If you want to avoid the dance described above, you can also edit the ImageCache.png directly. A copy for the version found in 3.2.x can be found below.
But again, the version of the ImageCache in above ZIP will likely only work for one version of Audacity.
For users
Our help pages contain info on how to use custom themes as a user.
Last updated