The hand-packed icns was pixel-clean (verified by unpacking and scanning every size), but macOS 26 composites legacy .icns icons into the Liquid Glass system at render time; stacked on Icon Composer's baked PNG-export lighting, that clips the rim highlights into the near-corner specks and abrupt highlight ends (owner report 2026-10-13). The fix is the real layered icon: mac.icon now points at the Icon Composer document (build/icon.icon, copied from ~/Documents/Affinity/lh-logo) and electron-builder compiles it via actool into Assets.car — macOS 26+ renders the true Liquid Glass design (dark/tinted variants included). actool's backwards-compat icns caps at 256px, so scripts/after-pack.cjs swaps in the existing full-res build/icon.icns before signing: pre-Tahoe macOS keeps today's quality, Tahoe gets the layered icon. Windows/Linux get the owner's flat design (rounded squircle with baked transparency): scripts/make-icons.mjs renders build/icon-flat.svg via resvg into build/icon.ico (16→256 PNG entries) + build/icon.png (512), and electron-builder.yml pins win.icon/linux.icon. desktop:dist injects DEVELOPER_DIR (actool needs Xcode; the machine selects CommandLineTools by default, CI's setup-xcode takes precedence via the :- default). The release workflow's mac job selects Xcode 26+ explicitly. Verified locally: mac --dir build (Assets.car + checksummed full-res fallback + CFBundleIconName/IconFile) and the win-unpacked exe carries our ico bytes; NSIS/AppImage assembly is CI's (cross-build tooling can't run on arm64 macOS). Runbook updated. 1610/1610.
21 lines
3.9 KiB
XML
21 lines
3.9 KiB
XML
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
<svg width="100%" height="100%" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
|
|
<path d="M1023.994,665.998C1023.994,679.668 1024,693.336 1023.914,707.006C1023.847,718.519 1023.715,730.031 1023.403,741.541C1022.723,766.623 1021.247,791.924 1016.788,816.727C1012.265,841.89 1004.883,865.309 993.246,888.171C981.808,910.642 966.862,931.205 949.033,949.033C931.205,966.862 910.642,981.808 888.171,993.246C865.309,1004.883 841.89,1012.265 816.727,1016.788C791.924,1021.247 766.623,1022.723 741.541,1023.403C730.031,1023.715 718.519,1023.847 707.006,1023.914C693.336,1024 679.668,1023.994 665.998,1023.994L358.002,1023.994C344.332,1023.994 330.664,1024 316.994,1023.914C305.481,1023.847 293.969,1023.715 282.459,1023.403C257.377,1022.723 232.076,1021.247 207.272,1016.788C182.11,1012.265 158.691,1004.883 135.829,993.246C113.358,981.808 92.795,966.862 74.967,949.033C57.138,931.205 42.192,910.642 30.754,888.171C19.117,865.309 11.735,841.89 7.212,816.727C2.753,791.924 1.277,766.623 0.597,741.541C0.285,730.031 0.153,718.519 0.086,707.006C0,693.336 0.006,679.668 0.006,665.998L0.006,358.002C0.006,344.332 0,330.664 0.086,316.994C0.153,305.481 0.285,293.969 0.597,282.459C1.277,257.377 2.753,232.076 7.212,207.272C11.735,182.11 19.117,158.691 30.754,135.829C42.192,113.358 57.138,92.795 74.967,74.967C92.795,57.138 113.358,42.192 135.829,30.754C158.691,19.117 182.11,11.735 207.272,7.212C232.076,2.753 257.377,1.277 282.459,0.597C293.969,0.285 305.481,0.153 316.994,0.086C330.664,0 344.332,0.006 358.002,0.006L665.998,0.006C679.668,0.006 693.336,0 707.006,0.086C718.519,0.153 730.031,0.285 741.541,0.597C766.623,1.277 791.924,2.753 816.727,7.212C841.89,11.735 865.309,19.117 888.171,30.754C910.642,42.192 931.205,57.138 949.033,74.967C966.862,92.795 981.808,113.358 993.246,135.829C1004.883,158.691 1012.265,182.11 1016.788,207.272C1021.247,232.076 1022.723,257.377 1023.403,282.459C1023.715,293.969 1023.847,305.481 1023.914,316.994C1024,330.664 1023.994,344.332 1023.994,358.002L1023.994,665.998Z" style="fill:rgb(20,20,20);"/>
|
|
<g transform="matrix(1,0,0,1,0.001713,-0.000688)">
|
|
<g transform="matrix(0.939904,0,0,0.939904,30.769428,30.766742)">
|
|
<g transform="matrix(-0.232199,0,0,0.232199,1384.403797,-416.791824)">
|
|
<g transform="matrix(0.573992,-2.142166,2.142166,0.573992,-5516.07298,4432.117471)">
|
|
<path d="M1234.728,3305.937C871.642,3324.965 587,3624.915 587,3988.5C587,4365.734 893.266,4672 1270.5,4672C1647.734,4672 1954,4365.734 1954,3988.5C1954,3880.637 1928.472,3774.304 1879.503,3678.197L1794.243,3721.64C1836.356,3804.292 1858.31,3895.737 1858.31,3988.5C1858.31,4312.921 1594.921,4576.31 1270.5,4576.31C946.079,4576.31 682.69,4312.921 682.69,3988.5C682.69,3675.817 927.482,3417.86 1239.736,3401.496L1234.728,3305.937Z" style="fill:rgb(148,148,148);"/>
|
|
</g>
|
|
<g transform="matrix(1.261034,0,0,1.261034,1170.373407,-2014.261188)">
|
|
<path d="M1270.5,3305C893.266,3305 587,3611.266 587,3988.5C587,4365.734 893.266,4672 1270.5,4672C1647.734,4672 1954,4365.734 1954,3988.5C1954,3611.266 1647.734,3305 1270.5,3305ZM1270.5,3471.537C1555.819,3471.537 1787.463,3703.181 1787.463,3988.5C1787.463,4273.819 1555.819,4505.463 1270.5,4505.463C985.181,4505.463 753.537,4273.819 753.537,3988.5C753.537,3703.181 985.181,3471.537 1270.5,3471.537Z" style="fill:white;"/>
|
|
</g>
|
|
<g transform="matrix(1.261034,0,0,1.261034,3139.627182,-45.007413)">
|
|
<circle cx="1270.5" cy="3988.5" r="683.5" style="fill:white;"/>
|
|
</g>
|
|
</g>
|
|
</g>
|
|
</g>
|
|
</svg>
|