site, branding: skeuomorphic marks, and the new Niveus components

The marks are now drawn the way Niveus draws its keys: one light from the
upper left, gloss on the faces that catch it, a specular line on the edges
that face it, and soft contact shadows.

- Shift: shaded slabs, each casting onto the one below. shift-mask.svg is
  untouched, so the kernel's logo.h coverage mask is unchanged.
- Uberblock: bevelled slots in a groove; the newest slot and the root glow.
- USB stick: moulded body, steel connector, a lit activity LED.
- Pride flag: cloth folds and a hem over the flag's own colours.

The pages use the components the new Niveus added: both terminals are
.nv-window frames, the origin and first-boot sequences are .nv-steps, the
numbers are a .nv-stat-group, and each feature card has an .nv-tile glyph.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01S1giNvrHTrPMPw7V6x1kQ4
This commit is contained in:
Nexoniarz 2026-10-23 15:17:34 +02:00
commit c9790df04c
11 changed files with 623 additions and 321 deletions

View file

@ -1,106 +1,57 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
viewBox="0 0 28 18"
width="28"
height="18"
role="img"
aria-labelledby="pride-title"
version="1.1"
id="svg10"
sodipodi:docname="pride.svg"
inkscape:version="1.4.4 (dcaf3e7d9e, 2026-05-05)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs10" />
<sodipodi:namedview
id="namedview10"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="28.814601"
inkscape:cx="15.773253"
inkscape:cy="10.706378"
inkscape:window-width="1920"
inkscape:window-height="1056"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg10" />
<title
id="pride-title">Progress Pride flag</title>
<desc
id="desc1">The six-stripe rainbow with the Progress chevron: white, pink and light
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 18" width="28" height="18"
role="img" aria-labelledby="pride-title">
<title id="pride-title">Progress Pride flag</title>
<desc>The six-stripe rainbow with the Progress chevron: white, pink and light
blue for trans people, brown and black for queer people of colour and for
those lost to AIDS. It sits in the top bar every day of the year, which is
the whole point of it.</desc>
<!-- the six -->
<rect
width="28"
height="3"
y="0"
fill="#E40303"
id="rect1" />
<rect
width="28"
height="3"
y="3"
fill="#FF8C00"
id="rect2" />
<rect
width="28"
height="3"
y="6"
fill="#FFED00"
id="rect3" />
<rect
width="28"
height="3"
y="9"
fill="#008026"
id="rect4" />
<rect
width="28"
height="3"
y="12"
fill="#24408E"
id="rect5" />
<rect
width="28"
height="3"
y="15"
fill="#732982"
id="rect6" />
<!-- the chevron: nested, outermost first, so each one leaves a band -->
<polygon
points="0,18 13,9 0,0 "
fill="#ffffff"
id="polygon6"
transform="scale(0.97864331,1)" />
<polygon
points="11,9 0,0 0,18 "
fill="#ffafc8"
id="polygon7"
transform="matrix(0.98738014,0,0,0.98091343,0,0.17177914)" />
<polygon
points="0,18 9,9 0,0 "
fill="#74d7ee"
id="polygon8"
transform="matrix(1,0,0,0.96455351,0,0.3190184)" />
<polygon
points="0,18 7,9 0,0 "
fill="#613915"
id="polygon9"
transform="matrix(1,0,0,0.92365372,0,0.68711656)" />
<polygon
points="5,9 0,0 0,18 "
fill="#000000"
id="polygon10"
transform="matrix(1.0624683,0,0,0.85276074,0,1.3251534)" />
the whole point of it.
Drawn as cloth rather than as a swatch, to match the rest of the site: two
soft folds run down it, light from the upper left catches the crest of each,
and the edge facing the light carries a thin highlight. The colours under the
shading are the flag's own and are not adjusted.</desc>
<defs>
<clipPath id="cloth"><rect width="28" height="18" rx="1.6"/></clipPath>
<!-- the folds: crests lighter, troughs darker, across the width -->
<linearGradient id="folds" x1="0" y1="0" x2="1" y2="0">
<stop offset="0" stop-color="#FFFFFF" stop-opacity="0.22"/>
<stop offset="0.18" stop-color="#000000" stop-opacity="0.10"/>
<stop offset="0.38" stop-color="#FFFFFF" stop-opacity="0.18"/>
<stop offset="0.60" stop-color="#000000" stop-opacity="0.16"/>
<stop offset="0.80" stop-color="#FFFFFF" stop-opacity="0.12"/>
<stop offset="1" stop-color="#000000" stop-opacity="0.18"/>
</linearGradient>
<!-- light from above, shade at the hem -->
<linearGradient id="sky" x1="0" y1="0" x2="0" y2="1">
<stop offset="0" stop-color="#FFFFFF" stop-opacity="0.16"/>
<stop offset="0.5" stop-color="#FFFFFF" stop-opacity="0"/>
<stop offset="1" stop-color="#000000" stop-opacity="0.18"/>
</linearGradient>
</defs>
<g clip-path="url(#cloth)">
<!-- the six -->
<rect width="28" height="3" y="0" fill="#E40303"/>
<rect width="28" height="3" y="3" fill="#FF8C00"/>
<rect width="28" height="3" y="6" fill="#FFED00"/>
<rect width="28" height="3" y="9" fill="#008026"/>
<rect width="28" height="3" y="12" fill="#24408E"/>
<rect width="28" height="3" y="15" fill="#732982"/>
<!-- the chevron, outermost first -->
<polygon points="0,18 13,9 0,0" fill="#FFFFFF"/>
<polygon points="0,18 11,9 0,0" fill="#FFAFC8"/>
<polygon points="0,18 9,9 0,0" fill="#74D7EE"/>
<polygon points="0,18 7,9 0,0" fill="#613915"/>
<polygon points="0,18 5,9 0,0" fill="#000000"/>
<rect width="28" height="18" fill="url(#folds)"/>
<rect width="28" height="18" fill="url(#sky)"/>
</g>
<!-- the hem: lit along the top and left, shaded along the bottom and right -->
<rect x="0.25" y="0.25" width="27.5" height="17.5" rx="1.45" fill="none"
stroke="#000000" stroke-opacity="0.35" stroke-width="0.5"/>
<path d="M0.6 16.6 V1.8 a1.2 1.2 0 0 1 1.2 -1.2 H26.2" fill="none"
stroke="#FFFFFF" stroke-opacity="0.45" stroke-width="0.5" stroke-linecap="round"/>
</svg>

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

Before After
Before After