tools/wallpapers.py writes them from the Shift geometry, so they follow the mark: Graphite (the default), Strata, Porcelain (light) and Dial. Each is a 3840x2160 SVG with a JPEG render beside it. JPEG is the right format for gradients under grain, and the branding README now says why this is the one exception to its no-JPEG rule. Removed: wallpaper1 (drawn flat, and built on the retired Guru mark), the site's unused copy of it, and the two superseded wordmark PNGs. The root README showed one of those, and now shows Graphite. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01S1giNvrHTrPMPw7V6x1kQ4
121 lines
6 KiB
XML
121 lines
6 KiB
XML
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 3840 2160" width="3840" height="2160">
|
|
<title>SchOS — Graphite</title>
|
|
<desc>Shift on warm graphite, lit from the upper left, casting a violet pool of light on the surface it stands on.</desc>
|
|
<defs>
|
|
|
|
<!-- top faces: lit corner to far corner -->
|
|
<linearGradient id="sh-t1" x1="0" y1="0" x2="1" y2="1">
|
|
<stop offset="0" stop-color="#A48CFF"/>
|
|
<stop offset="0.55" stop-color="#7C5CFF"/>
|
|
<stop offset="1" stop-color="#6A48F0"/>
|
|
</linearGradient>
|
|
<linearGradient id="sh-t2" x1="0" y1="0" x2="1" y2="1">
|
|
<stop offset="0" stop-color="#8064E6"/>
|
|
<stop offset="0.55" stop-color="#5B44C4"/>
|
|
<stop offset="1" stop-color="#4E39AE"/>
|
|
</linearGradient>
|
|
<linearGradient id="sh-t3" x1="0" y1="0" x2="1" y2="1">
|
|
<stop offset="0" stop-color="#5A48A8"/>
|
|
<stop offset="0.55" stop-color="#3C2E85"/>
|
|
<stop offset="1" stop-color="#332772"/>
|
|
</linearGradient>
|
|
<!-- front faces: lit at the top edge, falling into shade -->
|
|
<linearGradient id="sh-f1" x1="0" y1="0" x2="0" y2="1">
|
|
<stop offset="0" stop-color="#6E50E8"/>
|
|
<stop offset="1" stop-color="#4E35BC"/>
|
|
</linearGradient>
|
|
<linearGradient id="sh-f2" x1="0" y1="0" x2="0" y2="1">
|
|
<stop offset="0" stop-color="#4E3AAE"/>
|
|
<stop offset="1" stop-color="#372887"/>
|
|
</linearGradient>
|
|
<linearGradient id="sh-f3" x1="0" y1="0" x2="0" y2="1">
|
|
<stop offset="0" stop-color="#342874"/>
|
|
<stop offset="1" stop-color="#231A52"/>
|
|
</linearGradient>
|
|
<!-- end walls: facing away from the light -->
|
|
<linearGradient id="sh-w1" x1="0" y1="0" x2="1" y2="1">
|
|
<stop offset="0" stop-color="#4F36B4"/>
|
|
<stop offset="1" stop-color="#3A2690"/>
|
|
</linearGradient>
|
|
<linearGradient id="sh-w2" x1="0" y1="0" x2="1" y2="1">
|
|
<stop offset="0" stop-color="#3A2A86"/>
|
|
<stop offset="1" stop-color="#2B1F68"/>
|
|
</linearGradient>
|
|
<linearGradient id="sh-w3" x1="0" y1="0" x2="1" y2="1">
|
|
<stop offset="0" stop-color="#261C56"/>
|
|
<stop offset="1" stop-color="#1A133E"/>
|
|
</linearGradient>
|
|
<!-- the gloss across each top face, strongest at its back edge -->
|
|
<linearGradient id="sh-gloss" x1="0" y1="0" x2="0" y2="1">
|
|
<stop offset="0" stop-color="#FFFFFF" stop-opacity="0.38"/>
|
|
<stop offset="0.45" stop-color="#FFFFFF" stop-opacity="0.08"/>
|
|
<stop offset="1" stop-color="#FFFFFF" stop-opacity="0"/>
|
|
</linearGradient>
|
|
<filter id="sh-soft" x="-20%" y="-40%" width="140%" height="180%">
|
|
<feGaussianBlur stdDeviation="4"/>
|
|
</filter>
|
|
|
|
<radialGradient id="ground" cx="0.32" cy="0.18" r="1.05">
|
|
<stop offset="0" stop-color="#3A3530"/>
|
|
<stop offset="0.45" stop-color="#1E1B19"/>
|
|
<stop offset="1" stop-color="#0B0A09"/>
|
|
</radialGradient>
|
|
<radialGradient id="pool" cx="0.5" cy="0.5" r="0.5">
|
|
<stop offset="0" stop-color="#7C5CFF" stop-opacity="0.42"/>
|
|
<stop offset="0.5" stop-color="#5B3FC9" stop-opacity="0.14"/>
|
|
<stop offset="1" stop-color="#5B3FC9" stop-opacity="0"/>
|
|
</radialGradient>
|
|
<radialGradient id="vignette" cx="0.5" cy="0.5" r="0.75">
|
|
<stop offset="0.6" stop-color="#000" stop-opacity="0"/>
|
|
<stop offset="1" stop-color="#000" stop-opacity="0.55"/>
|
|
</radialGradient>
|
|
<filter id="grain" x="0" y="0" width="100%" height="100%">
|
|
<feTurbulence type="fractalNoise" baseFrequency="0.85" numOctaves="2" stitchTiles="stitch"/>
|
|
<feColorMatrix type="saturate" values="0"/>
|
|
<feComponentTransfer><feFuncA type="table" tableValues="0 0.07"/></feComponentTransfer>
|
|
</filter>
|
|
<filter id="far" x="-50%" y="-50%" width="200%" height="200%"><feGaussianBlur stdDeviation="60"/></filter>
|
|
</defs>
|
|
<rect width="3840" height="2160" fill="url(#ground)"/>
|
|
<ellipse cx="1980.0" cy="1410.0" rx="1500" ry="520" fill="url(#pool)"/>
|
|
<ellipse cx="2010.0" cy="1550.0" rx="820" ry="70" fill="#000" opacity="0.55" filter="url(#far)"/>
|
|
<g transform="translate(1244.2 385.6) scale(6.2)">
|
|
|
|
|
|
<path fill="#000" opacity="0.35" filter="url(#sh-soft)" d="M58 138 L160 138 L132 170 L28 170 Z"/>
|
|
<path fill="#000" opacity="0.30" filter="url(#sh-soft)" d="M76 96 L178 96 L150 128 L46 128 Z"/>
|
|
<path fill="#000" opacity="0.26" filter="url(#sh-soft)" d="M94 54 L196 54 L168 86 L64 86 Z"/>
|
|
|
|
|
|
<path fill="url(#sh-t3)" d="M54 126 L158 126 L128 156 L24 156 Z"/>
|
|
<path fill="url(#sh-gloss)" d="M54 126 L158 126 L128 156 L24 156 Z"/>
|
|
<path fill="url(#sh-f3)" d="M24 156 L128 156 L128 167 L24 167 Z"/>
|
|
<path fill="url(#sh-w3)" d="M158 126 L158 137 L128 167 L128 156 Z"/>
|
|
<path fill="none" stroke="#FFFFFF" stroke-opacity="0.35" stroke-width="1.2"
|
|
stroke-linecap="round" d="M24.6 155.4 L54.4 126.6 L157 126.6"/>
|
|
<path fill="none" stroke="#FFFFFF" stroke-opacity="0.16" stroke-width="1"
|
|
d="M24 156.5 L128 156.5"/>
|
|
|
|
|
|
<path fill="url(#sh-t2)" d="M72 84 L176 84 L146 114 L42 114 Z"/>
|
|
<path fill="url(#sh-gloss)" d="M72 84 L176 84 L146 114 L42 114 Z"/>
|
|
<path fill="url(#sh-f2)" d="M42 114 L146 114 L146 125 L42 125 Z"/>
|
|
<path fill="url(#sh-w2)" d="M176 84 L176 95 L146 125 L146 114 Z"/>
|
|
<path fill="none" stroke="#FFFFFF" stroke-opacity="0.42" stroke-width="1.2"
|
|
stroke-linecap="round" d="M42.6 113.4 L72.4 84.6 L175 84.6"/>
|
|
<path fill="none" stroke="#FFFFFF" stroke-opacity="0.18" stroke-width="1"
|
|
d="M42 114.5 L146 114.5"/>
|
|
|
|
|
|
<path fill="url(#sh-t1)" d="M90 42 L194 42 L164 72 L60 72 Z"/>
|
|
<path fill="url(#sh-gloss)" d="M90 42 L194 42 L164 72 L60 72 Z"/>
|
|
<path fill="url(#sh-f1)" d="M60 72 L164 72 L164 83 L60 83 Z"/>
|
|
<path fill="url(#sh-w1)" d="M194 42 L194 53 L164 83 L164 72 Z"/>
|
|
<path fill="none" stroke="#FFFFFF" stroke-opacity="0.55" stroke-width="1.2"
|
|
stroke-linecap="round" d="M60.6 71.4 L90.4 42.6 L193 42.6"/>
|
|
<path fill="none" stroke="#FFFFFF" stroke-opacity="0.22" stroke-width="1"
|
|
d="M60 72.5 L164 72.5"/>
|
|
</g>
|
|
<rect width="3840" height="2160" fill="url(#vignette)"/>
|
|
<rect width="3840" height="2160" filter="url(#grain)"/>
|
|
</svg>
|