mirror of
https://github.com/fosrl/pangolin.git
synced 2026-07-16 06:08:33 -05:00
[GH-ISSUE #3134] SVG logo file specified in admin panel UI is not loaded from local path if not named logo-light.svg #39115
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @SpencerDub on GitHub (May 23, 2026).
Original GitHub issue: https://github.com/fosrl/pangolin/issues/3134
Describe the Bug
When a path to a local SVG, with filename
logo.svg, is provided for a custom logo in the admin console UI, the logo does not load, and the browser console reports a 404 for that request.By comparison, when a path to a local PNG, named
logo.png, in the same directory, with the same permissions, is provided through the admin dashboard UI, the PNG loads correctly.Environment
To Reproduce
branding/directory in the instructed location, adjacent to the Docker Compose file.branding/directory, aslogo.pngandlogo.svg. For example, you can use this image, downloaded as SVG and as PNG. Do not name the logologo-light.svg!/branding/logo.svgas the Logo URL or Path. Save settings./branding/logo.png, save settings, and re-visit the login page.Expected Behavior
The SVG logo file loads when referenced.
Additional Details
I have ensured that the SVG and PNG files have identical permissions: owned by the same user and group, and both set to chmod 754 (rwxr-xr--) permissions. Even when this is the case, the PNG loads but the SVG does not. I have also tested with the SVG set to 777 perms. Still fails to load.
Running
curl https://[PANGOLIN URL]/branding/logo.pngfrom my desktop accesses the PNG file. Runningcurl https://[PANGOLIN URL]/branding/logo.svgreturns this 214.40 KB HTML response, which is the same response I get when I runcurlagainst a nonsense path, likecurl https://[PANGOLIN URL]/fizzlewhip/tog689.Additional Discussion
@AstralDestiny commented on GitHub (May 23, 2026):
/config/privateConfig.yml
and if I don't populate the privateConfig,
Wasn't able to replicate did you down and up when you populated the private config into the same folder as config.yml (case sensitive) (privateConfig.yml)
Used your svg you gave me.
@SpencerDub commented on GitHub (May 23, 2026):
@AstralDestiny Thanks for trying to replicate.
Further troubleshooting/response
privateConfig.ymlis named exactly like that, and is adjacent toconfig.ymlwith identical permissions and ownership.privateConfig.ymlfile to test if there was interference between the config file and the UI-set preferences. Still fails.Partial resolution
I renamed the SVG logo from
logo.svgtologo-light.svg, and updated the path in the UI dashboard to/branding/logo-light.svg. (For clarity, at this time, there is no existingprivateConfig.ymlfile, so all config is done via UI.) This worked.Out of curiosity, I then renamed the SVG to
logo-dark.svgand updated the path. This broke again.Can you replicate this? An easy test would be using a logo file named
logo.svginstead oflogo-light.svg(as described in the issue report above).I can make do for now with
logo-light.svg, but I'm curious: is Pangolin supposed to be able to accept local SVG logos with any filename, or onlylogo-light.svg?@AstralDestiny commented on GitHub (May 23, 2026):
Possibly like how the acme part of privateConfig only accepted acme.json and not just anything matching the file
@AstralDestiny commented on GitHub (May 23, 2026):
Anyways bugged the others. :)
@SpencerDub commented on GitHub (May 23, 2026):
Appreciate it! Thanks for your feedback, it helped me narrow in on the behavior.
@SpencerDub commented on GitHub (May 23, 2026):
Question
Will SVG logo files not named
logo-light.svgwork if specified inprivateConfig.ymlinstead of the UI?Process
I re-added a
privateConfig.ymlfile with the following content:where
/branding/bug_logo.svgexists and is the ladybug image, as linked above, and/branding/logo-light.svgexists and is the logo I wish to use for my instance.I then restarted the container with
docker compose downanddocker compose up -d. I went into the admin panel and clicked the "Remove Branding" button.Results
The specified SVG logos load as expected.
Tentative Conclusion
The reported issue is related to setting SVG logos not named
logo-light.svgfrom the administration UI, using a local path.@github-actions[bot] commented on GitHub (Jun 7, 2026):
This issue has been automatically marked as stale due to 14 days of inactivity. It will be closed in 14 days if no further activity occurs.
@github-actions[bot] commented on GitHub (Jun 21, 2026):
This issue has been automatically closed due to inactivity. If you believe this is still relevant, please open a new issue with up-to-date information.