add-app-icon
Use when adding a bundled app icon to Dozzle for a container image that shows no logo, or when an image resolves to the wrong icon
Оригинален текст · няма потвърден превод на българскиПърво прочетете инструкцията.
Файлът се зарежда от посочения източник само по ваше действие. Можете да го прочетете тук, да го копирате или да го запазите като .md.
GitHub хранилище- Звезди на репото
- 14 444
- Лиценз
- MIT
- Последна проверка на записа
- 20.09.2026 г.
Добавете в своя инструмент.
Командата отваря избора на skills от репозитория. Прочетете файла и условията на автора преди изпълнение.
npx skills add amir20/dozzleСтраницата копира текст. Не инсталира и не изпълнява нищо на устройството ви.
Откъс от SKILL.md
Началото на файла на автора, без превод.
Add App Icon
Icons live in assets/icons/apps/<slug>.svg (or .webp). The filename without the
extension is the slug. assets/utils/appIcons.ts resolves an image reference to a slug.
Procedure
-
Find how the image resolves today. The resolver drops registry, tag and digest, then tries the image name and falls back to the namespace (
linuxserver/sonarrtriessonarr). Distributor namespaces (DISTRIBUTORS) and generic names (GENERIC, e.g.server,app) are skipped. Suffixes like-server,-app,-alpineare stripped. -
Get the icon from dashboard-icons. Prefer SVG, use WebP only when no SVG exists. Never use PNG (it is not globbed). Check the upstream tree rather than guessing URLs, since variants can exist in one format and not another:
gh api 'repos/homarr-labs/dashboard-icons/git/trees/main?recursive=1' \ --jq '.tree[].path' | grep -E '^(svg|webp)/<slug>(-light|-dark)?\.'slug=<slug> curl -fsSL -o assets/icons/apps/$slug.svg \ https://raw.githubusercontent.com/homarr-labs/dashboard-icons/main/svg/$slug.svgIf the SVG is over 20KB (
wc -c < assets/icons/apps/$slug.svg), delete it and use the WebP below instead. An SVG that large is almost always a traced raster made of thousands of paths, not real vector artwork.Upstream WebPs are 128-4096px and often 20-180KB. Downscale to 64px tall, lossy, like every other WebP in the folder (they land around 1-3KB).
cwebpandwebpinfoship in thewebppackage (brew install webp,apt install webp):curl -fsSL -o /tmp/$slug.webp \ https://raw.githubusercontent.com/homarr-labs/dashboard-icons/main/webp/$slug.webp cwebp -quiet -resize 0 64 -q 80 -m 6 /tmp/$slug.webp -o assets/icons/apps/$slug.webpLook at the result before committing. Do not substitute the app's own
favicon.svgwhen upstream has no SVG: those are often a PNG wrapped in an<image>tag, not vector artwork.If upstream has themed variants, add them too:
<slug>-light.svgis artwork for dark backgrounds,<slug>-dark.svgis for light backgrounds. The base<slug>.svgis still required, since it is what the resolver checks for.Use the upstream slug as the filename. Do not rename it to match the image.
-
If the image name does not match the slug after step 1, add an entry to
ALIASESinassets/utils/appIcons.ts, keyed by the lowercased image name or namespace: