Cockpit determines which branding assets (logos, icons, CSS) to serve by searching through a specific hierarchy of directories. It uses the $ID and $VARIANT_ID variables from the system's /etc/os-release file.
Administrators can override all system branding by placing custom files in /etc/cockpit/branding/ (or more generally, $XDG_CONFIG_DIRS/cockpit/branding/). This directory is checked first.
If no local override is found, Cockpit searches the following directories in order:
$prefix/share/cockpit/branding/$ID-$VARIANT_ID$prefix/share/cockpit/branding/$ID$prefix/share/cockpit/branding/default$prefix/share/cockpit/static
Note: $prefix is typically /usr. All files in these directories are served over HTTP without authentication to ensure they are available for the login screen.