merch: add 3 new items (#5647)
continuous-integration/drone/push Build is passing

retro hoodies, pmpc tshirts, cool kids tshirts

not tested due to build system bugs

using webp due to very broad compatibility and better compression than JPG (all the small images are a bit over 300kb, the large ones are 1,4MB!)

missing
- prices?
- measurements?
- available sizes
- descriptions need to be translated, currently they will be empty

Reviewed-on: #5647
Co-authored-by: hl <hl@fsfe.org>
Co-committed-by: hl <hl@fsfe.org>
This commit was merged in pull request #5647.
This commit is contained in:
hl authored and tobiasd committed 2026-02-05 13:52:43 +00:00
1 parent 250525ccd5
commit 6fd23e6bcc
30 files changed
+132 -38

No files matched your search

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<infoset>
<version>1</version>
<info id="hoodie-retro">
<name>Retro FSFE Hoodie, black</name>
<description>
<p>
A throwback to the beginnings of the FSFE, and very comfortable too!
</p>
</description>
</info>
</infoset>
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<infoset>
<version>1</version>
<info id="slimfit-cool-kids">
<name>Cool Kids use Free Software (purple)</name>
<description>
<p>
And they have cool T-Shirts ;D
</p>
</description>
</info>
</infoset>
@@ -6,7 +6,7 @@
<description>
<p>The 4 freedoms at your feet... because you really love Free software</p>
<p>
<strong>Note:</strong>One size. Fits from 38 to 45.</p>
<strong>Note:</strong> One size. Fits from 38 to 45.</p>
</description>
</info>
</infoset>
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<infoset>
<version>1</version>
<info id="tshirt-cool-kids">
<name>Cool Kids use Free Software (purple)</name>
<description>
<p>
And they have cool T-Shirts ;D
</p>
</description>
</info>
</infoset>
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<infoset>
<version>1</version>
<info id="tshirt-pmpc">
<name>Public Money, Public Code! (black)</name>
<description>
<p>
Let the public know!
</p>
</description>
</info>
</infoset>
+47 -1
View File
@@ -36,6 +36,42 @@
small="data/pictures/tshirt-nocloud-black-back-small.jpg"
large="data/pictures/tshirt-nocloud-black-back-large.jpg"/>
</item -->
<item type="tshirt" id="tshirt-cool-kids" price="25.00" date="2026-01-27">
<available size="XS" a="46" b="66"/>
<available size="S" a="49" b="67.5"/>
<available size="M" a="52.5" b="71"/>
<available size="L" a="55" b="73"/>
<available size="XL" a="58" b="75"/>
<available size="2XL" a="60" b="77.5"/>
<available size="3XL" a="62.5" b="79.5"/>
<image small="data/pictures/tshirt-cool-kids-1-small.webp" large="data/pictures/tshirt-cool-kids-1-large.webp"/>
<image small="data/pictures/tshirt-cool-kids-2-small.webp" large="data/pictures/tshirt-cool-kids-2-large.webp"/>
</item>
<item type="slimfit" id="slimfit-cool-kids" price="25.00" date="2026-01-27">
<available size="XS" a="41.5" b="57.5"/>
<available size="S" a="42.5" b="59.5"/>
<available size="M" a="46.5" b="62.5"/>
<available size="L" a="49" b="63"/>
<available size="XL" a="50.5" b="64.5"/>
<available size="2XL" a="54" b="66"/>\
<!--image small="data/pictures/slimfit-cool-kids-1-small.webp" large="data/pictures/slimfit-cool-kids-1-large.webp"/>
<image small="data/pictures/slimfit-cool-kids-2-small.webp" large="data/pictures/slimfit-cool-kids-2-large.webp"/ -->
<image small="data/pictures/tshirt-cool-kids-1-small.webp" large="data/pictures/tshirt-cool-kids-1-large.webp"/>
<image small="data/pictures/tshirt-cool-kids-2-small.webp" large="data/pictures/tshirt-cool-kids-2-large.webp"/>
</item>
<item type="tshirt" id="tshirt-pmpc" price="25.00" date="2026-01-27">
<available size="XS" a="46" b="66"/>
<available size="S" a="49" b="67.5"/>
<available size="M" a="52.5" b="71"/>
<available size="L" a="55" b="73"/>
<available size="XL" a="58" b="75"/>
<available size="2XL" a="60" b="77.5"/>
<available size="3XL" a="62.5" b="79.5"/>
<available size="4XL" a="69" b="81"/>
<image small="data/pictures/tshirt-pmpc-1-small.webp" large="data/pictures/tshirt-pmpc-1-large.webp"/>
<image small="data/pictures/tshirt-pmpc-2-small.webp" large="data/pictures/tshirt-pmpc-2-large.webp"/>
<image small="data/pictures/tshirt-pmpc-3-small.webp" large="data/pictures/tshirt-pmpc-3-large.webp"/>
</item>
<item type="tshirt" id="tshirt-hacking-4-freedom" price="25.00" date="2024-01-12">
<available size="XS" a="48" b="68"/>
<available size="S" a="50" b="70"/>
@@ -59,6 +95,16 @@
<image small="data/pictures/tshirt-nocloud-petrol-front-small.jpg" large="data/pictures/tshirt-nocloud-petrol-front-large.jpg"/>
<image small="data/pictures/tshirt-nocloud-petrol-back-small.jpg" large="data/pictures/tshirt-nocloud-petrol-back-large.jpg"/>
</item>
<item type="hoodie" id="hoodie-retro" price="60.00" date="2026-01-27">
<available size="S" a="x" b="y"/>
<available size="M" a="x" b="y"/>
<available size="L" a="x" b="y"/>
<available size="XL" a="x" b="y"/>
<available size="2XL" a="x" b="y"/>
<image small="data/pictures/hoodie-retro-1-small.webp" large="data/pictures/hoodie-retro-1-large.webp"/>
<image small="data/pictures/hoodie-retro-2-small.webp" large="data/pictures/hoodie-retro-2-large.webp"/>
<image small="data/pictures/hoodie-retro-3-small.webp" large="data/pictures/hoodie-retro-3-large.webp"/>
</item>
<!--item type="hoodie" id="hoodie-fourfreedoms-38c3-blue" price="60.00" date="2024-10-08">
<available size="XS" a="49" b="68"/>
<available size="S" a="52" b="70"/>
@@ -104,8 +150,8 @@
<image small="data/pictures/hoodie-fourfreedoms-38c3-black-back-small.png" large="data/pictures/hoodie-fourfreedoms-38c3-black-back-large.png"/>
</item //-->
<item type="socks" id="socks-ilovefs" price="15.00" date="2024-01-12">
<image small="data/pictures/socks-ilovefs-small.jpg" large="data/pictures/socks-ilovefs-large.jpg"/>
<available size="#"/>
<image small="data/pictures/socks-ilovefs-1-small.webp" large="data/pictures/socks-ilovefs-1-large.webp"/>
</item>
<!-- item type="other" id="card-christmas-blue" price="20.00" date="2019-12-09">
<available size="#"/>
Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 132 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

+6 -6
View File
@@ -17,8 +17,8 @@
<ul>
<li><a href="#tshirt">T-Shirts</a></li>
<li><a href="#slimfit">Slimfit T-Shirts</a></li>
<!-- li><a href="#hooded">Kapuzenshirts</a></li -->
<!-- li><a href="#socks">Socken</a></li -->
<li><a href="#hooded">Kapuzenpullover</a></li>
<li><a href="#socks">Socken</a></li>
<!-- li><a href="#baby-clothes">Babykleidung</a></li -->
<li><a href="#other">Andere Artikel</a></li>
</ul>
@@ -48,13 +48,13 @@
<dynamic-content type="slimfit"/>
<!-- h2 id="hooded">Kapuzenshirts</h2>
<h2 id="hooded">Kapuzenpullover</h2>
<dynamic-content type="hoodie"/ -->
<dynamic-content type="hoodie"/>
<!-- h2 id="socks">Socken</h2>
<h2 id="socks">Socken</h2>
<dynamic-content type="socks"/ -->
<dynamic-content type="socks"/>
<!-- h2 id="baby-clothes">Babykleidung</h2>
+6 -6
View File
@@ -17,8 +17,8 @@
<ul>
<li><a href="#tshirt">T-shirts</a></li>
<li><a href="#slimfit">Slimfit T-Shirts</a></li>
<!-- li><a href="#hooded">Hoodies</a></li -->
<!-- li><a href="#socks">Socks</a></li -->
<li><a href="#hooded">Hoodies</a></li>
<li><a href="#socks">Socks</a></li>
<!-- li><a href="#baby-clothes">Baby Clothes</a></li -->
<li><a href="#other">Other Items</a></li>
</ul>
@@ -47,13 +47,13 @@
<dynamic-content type="slimfit"/>
<!-- h2 id="hooded">Hoodies</h2>
<h2 id="hooded">Hoodies</h2>
<dynamic-content type="hoodie"/ -->
<dynamic-content type="hoodie"/>
<!-- h2 id="socks">Socks</h2>
<h2 id="socks">Socks</h2>
<dynamic-content type="socks"/ -->
<dynamic-content type="socks"/>
<!-- h2 id="baby-clothes">Baby Clothes</h2>
+6 -6
View File
@@ -17,8 +17,8 @@
<ul>
<li><a href="#tshirt">Camisetas</a></li>
<li><a href="#slimfit">Camiseta slim fit</a></li>
<!-- li><a href="#hooded">Camisetas con capucha</a></li -->
<!-- li><a href="#socks">Calcetines</a></li -->
<li><a href="#hooded">Camisetas con capucha</a></li>
<li><a href="#socks">Calcetines</a></li>
<!-- li><a href="#baby-clothes">Ropa de bebé</a></li -->
<li><a href="#other">Otros artículos</a></li>
</ul>
@@ -47,13 +47,13 @@
<dynamic-content type="slimfit"/>
<!-- h2 id="hooded">Camisetas con capucha</h2>
<h2 id="hooded">Camisetas con capucha</h2>
<dynamic-content type="hoodie"/ -->
<dynamic-content type="hoodie"/>
<!-- h2 id="socks">Calcetines</h2>
<h2 id="socks">Calcetines</h2>
<dynamic-content type="socks"/ -->
<dynamic-content type="socks"/>
<!-- h2 id="baby-clothes">Ropa de bebé</h2>
+6 -6
View File
@@ -17,8 +17,8 @@
<ul>
<li><a href="#tshirt">T-shirts</a></li>
<li><a href="#slimfit">T-shirt cintré</a></li>
<!-- li><a href="#hooded">Sweat-shirts à capuche</a></li -->
<!-- li><a href="#socks">Chaussettes</a></li -->
<li><a href="#hooded">Sweat-shirts à capuche</a></li>
<li><a href="#socks">Chaussettes</a></li>
<!-- li><a href="#baby-clothes">Vêtements pour bébé</a></li -->
<li><a href="#other">Autres articles</a></li>
</ul>
@@ -47,13 +47,13 @@
<dynamic-content type="slimfit"/>
<!-- h2 id="hooded">Sweat-shirts à capuche</h2>
<h2 id="hooded">Sweat-shirts à capuche</h2>
<dynamic-content type="hoodie"/ -->
<dynamic-content type="hoodie"/>
<!-- h2 id="socks">Chaussettes</h2>
<h2 id="socks">Chaussettes</h2>
<dynamic-content type="socks"/ -->
<dynamic-content type="socks"/>
<!-- h2 id="baby-clothes">Vêtements pour bébé</h2>
+6 -6
View File
@@ -17,8 +17,8 @@
<ul>
<li><a href="#tshirt">Magliette</a></li>
<li><a href="#slimfit">Magliette slimfit</a></li>
<!-- li><a href="#hooded">Felpe con cappuccio</a></li -->
<!-- li><a href="#socks">Calzini</a></li -->
<li><a href="#hooded">Felpe con cappuccio</a></li>
<li><a href="#socks">Calzini</a></li>
<!-- li><a href="#baby-clothes">Vestiti per bambini</a></li -->
<li><a href="#other">Altri prodotti</a></li>
</ul>
@@ -47,13 +47,13 @@
<dynamic-content type="slimfit"/>
<!-- h2 id="hooded">Felpe con cappuccio</h2>
<h2 id="hooded">Felpe con cappuccio</h2>
<dynamic-content type="hoodie"/ -->
<dynamic-content type="hoodie"/>
<!-- h2 id="socks">Calzini</h2>
<h2 id="socks">Calzini</h2>
<dynamic-content type="socks"/ -->
<dynamic-content type="socks"/>
<!-- h2 id="baby-clothes">Vestiti per bambini</h2>
+6 -6
View File
@@ -17,8 +17,8 @@
<ul>
<li><a href="#tshirt">T-Shirts</a></li>
<li><a href="#slimfit">Nauwsluitende T-shirts</a></li>
<!-- li><a href="#hooded">Shirts met kap (hoodies)</a></li -->
<!-- li><a href="#socks">Sokken</a></li -->
<li><a href="#hooded">Shirts met kap (hoodies)</a></li>
<li><a href="#socks">Sokken</a></li>
<!-- li><a href="#baby-clothes">Babykleding</a></li -->
<li><a href="#other">Andere artikelen</a></li>
</ul>
@@ -49,13 +49,13 @@
<dynamic-content type="slimfit"/>
<!-- h2 id="hooded">Shirts met kap (hoodies)</h2>
<h2 id="hooded">Shirts met kap (hoodies)</h2>
<dynamic-content type="hoodie"/ -->
<dynamic-content type="hoodie"/>
<!-- h2 id="socks">Sokken</h2>
<h2 id="socks">Sokken</h2>
<dynamic-content type="socks"/ -->
<dynamic-content type="socks"/>
<!-- h2 id="baby-clothes">Babykleding</h2>