Compare commits
4 commits
main
...
feat/hugo-
| Author | SHA1 | Date | |
|---|---|---|---|
| 267dc4c3e1 | |||
| febd17bf78 | |||
| ffce3b232c | |||
| 1551503e68 |
10 changed files with 38 additions and 97 deletions
|
|
@ -13,7 +13,7 @@ jobs:
|
|||
build:
|
||||
runs-on: docker
|
||||
container:
|
||||
image: hugomods/hugo:exts-0.148.1
|
||||
image: hugomods/hugo:exts-0.158.0
|
||||
steps:
|
||||
- name: Pipeline info
|
||||
run: |
|
||||
|
|
|
|||
|
|
@ -34,6 +34,8 @@ Please note, that the website should be re-deployed at least daily to update the
|
|||
### Add Pages
|
||||
|
||||
To run a local version, just install HUGO by following the [instructions](https://gohugo.io/installation/) for your operating system.
|
||||
Note that you also need to install the [Dart Sass compiler](https://sass-lang.com/dart-sass/).
|
||||
|
||||
To build the website and run a development webserver, execute:
|
||||
```shell
|
||||
hugo server
|
||||
|
|
|
|||
Binary file not shown.
|
Before Width: | Height: | Size: 173 KiB |
|
|
@ -1,50 +0,0 @@
|
|||
---
|
||||
categories: article
|
||||
title: 'Der CCCHH sagt NEIN zu Olympia in Hamburg'
|
||||
date: '2026-05-31T23:59:59+02:00'
|
||||
publishDate: '2026-05-23T20:00:00+02:00'
|
||||
draft: false
|
||||
authors:
|
||||
- lilly
|
||||
tags:
|
||||
- überwachung
|
||||
- ki
|
||||
- vorratsdatenspeicherung
|
||||
header:
|
||||
caption: >-
|
||||
Logo des NOLYMPIA Hamburg Bündnisses.
|
||||
Es ist ein schwarzer Schriftzug mit dick gedrucktem NO und anschließendem LYMPIA auf rotem Hintergrund.
|
||||
Das Wort Hamburg ist klein und nach rechts versetzt unter NOLYMPIA zu sehen.
|
||||
image: header.png
|
||||
---
|
||||
|
||||
Der Senat Hamburgs möchte sich gerne mit unserer schönen Stadt als Austragungsort für die olympischen Spiele 2036, 2040 oder 2044 bewerben[^1].
|
||||
Wir teilen die Meinung des Senats und der regierenden Fraktionen nicht, dass olympische Spiele in Hamburg unzählige und eindeutige Vorteile bringen würde. Ganz im Gegenteil!
|
||||
Bei der Austragung der letzten Spiele in Paris und auch davor haben wir gesehen, dass die Stadt zwar in aller Munde kommt, aber die Spiele selbst für die Menschen dort ein riesiger Kostenpunkt und massive Belastung sind[^2][^3].
|
||||
|
||||
Eine konkrete oder belastbare Planung zur Umsetzung der Sicherheit während der Spiele hat die Stadt noch nicht veröffentlicht, aber den bereits durchgesickerten Eckpunkten stehen wir sehr kritisch gegenüber.
|
||||
Das Konzept der Stadt sieht vor, die Spiele in das bestehende Stadtleben zu integrieren[^4].
|
||||
Dies würde bedeuten, dass in diversen Stadtteilen in den Wohnvierteln und Sportstätten vor der Haustür Sicherheitszonen eingerichtet werden.
|
||||
Sicherheitszonen bedeuten den massiven Ausbau von Überwachungskameras, wahrscheinlich mit undurchsichtiger und massenhafter KI-Auswertung jedes öffentlichen Verhaltens <q>integriert</q> in das komplette Stadtleben[^5].
|
||||
|
||||
Wie der Senat die Zugangskontrolle in diesen Sicherheitszonen gestalten will ist auch noch unklar.
|
||||
Ob wir hier eine Einschränkung der Bewegungsfreiheit für Menschen ohne Tickets mitsamt übergriffigen und dauerhaften Polizeikontrollen wie in Paris[^6] zu erwarten haben oder ob es hier eine digitale Version über irgendwelche hastig gebauten Apps erzwungen wird, können wir noch nicht sagen.
|
||||
Keines von beiden ist eine hinnehmbare Option.
|
||||
|
||||
Ein weiterer Punkt für uns als stark queerer Verein, der von einem bunten Miteinander **aller** Arten von Menschen lebt, sind die trans\*- und menschenfeindlichen Vorstellungen des IOC[^7].
|
||||
Das Organisationskommittee steht hier nicht für die moderne pluralistische Gesellschaft, die der Senat uns verkaufen will, sondern für ein rückwärtsgewanntes Weltbild, welches vor der Hetze rechter Mobs kuscht.
|
||||
Damit schadet das IOC nicht nur der queeren Community in Hamburg sondern der Sicherheit und Selbstbestimmung aller Frauen[^8]!
|
||||
|
||||
Long story Short: Es gibt in Hamburg viel Potential und Möglichkeiten für positive Stadtgestaltung.
|
||||
Wir brauchen aber kein Prestigeprojekt Olympia, um eine bessere Realität zu schaffen.
|
||||
|
||||
|
||||
[^1]: https://www.ndr.de/sport/mehr_sport/olympia-referendum-in-hamburg-alle-fragen-und-antworten,olympia-526.html
|
||||
[^2]: https://www.nolympia-hamburg.de/stellungnahme/
|
||||
[^3]: https://www.nolympia-hamburg.de/nolympiahh/wp-content/uploads/2026/01/10-Min-NOlympische-Fakten-Links-und-Quellen-28012026.pdf
|
||||
[^4]: https://www.hamburg-activecity.de/olympia-konzept
|
||||
[^5]: https://taz.de/Ueberwachung-von-Drogenszene/!5933508/
|
||||
[^6]: https://www.zeit.de/digital/datenschutz/2024-07/ki-olympische-spiele-ueberwachung-sicherheit-paris
|
||||
[^7]: https://www.spiegel.de/sport/olympia/ioc-internationales-olympisches-komitee-verlangt-kuenftig-geschlechtertest-von-sportlerinnen-a-81fa279b-1e7f-4d8a-9aa0-f4799a0590d6
|
||||
[^8]: https://www.klassegegenklasse.org/trans-frauen-sind-frauen-egal-was-das-gericht-sagt/
|
||||
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
baseURL = 'https://hamburg.ccc.de/'
|
||||
languageCode = 'de-de'
|
||||
locale = 'de-de'
|
||||
defaultContentLanguage = 'de'
|
||||
timeZone = 'Europe/Berlin'
|
||||
title = 'CCC Hansestadt Hamburg e.V.'
|
||||
|
|
|
|||
|
|
@ -1,3 +1,6 @@
|
|||
@use "sass:map";
|
||||
@use "sass:math";
|
||||
|
||||
$roomstate_color_unknown: #dda218;
|
||||
$roomstate_color_open: var(--ins-color);
|
||||
$roomstate_color_closed: var(--del-color);
|
||||
|
|
@ -164,7 +167,12 @@ body>main {
|
|||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
margin: 0.5rem 1rem;
|
||||
}
|
||||
|
||||
|
|
@ -202,7 +210,7 @@ body>main {
|
|||
display: block;
|
||||
margin: 0 auto;
|
||||
// (250px - 2*var(--grid-spacing-horizontal)) * 3/4
|
||||
max-height: (222px * 3/4);
|
||||
max-height: math.div(222px * 3, 4);
|
||||
}
|
||||
|
||||
// 2*250px + 2*var(--spacing) + 1px
|
||||
|
|
@ -211,7 +219,7 @@ body>main {
|
|||
|
||||
img.groups-img {
|
||||
// (150px - 2*var(--grid-spacing-horizontal)) * 3/4
|
||||
max-height: (122px*3/4);
|
||||
max-height: math.div(122px*3, 4);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -221,7 +229,7 @@ body>main {
|
|||
|
||||
img.groups-img {
|
||||
// (350px - 2*var(--grid-spacing-horizontal)) * 3/4
|
||||
max-height: (322px*3/4);
|
||||
max-height: math.div(322px*3, 4);
|
||||
}
|
||||
|
||||
// 2*350px + 2*var(--spacing) + 1px
|
||||
|
|
@ -230,7 +238,7 @@ body>main {
|
|||
|
||||
img.groups-img {
|
||||
// (250px - 2*var(--grid-spacing-horizontal)) * 3/4
|
||||
max-height: (222px*3/4);
|
||||
max-height: math.div(222px*3, 4);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -295,7 +303,7 @@ body>main {
|
|||
// When the header content doesn't display nicely anymore, switch to mobile mode.
|
||||
@import "../pico-1.5.11/scss/variables";
|
||||
|
||||
@media (max-width: map-get($breakpoints, md)) {
|
||||
@media (max-width: map.get($breakpoints, md)) {
|
||||
.hamburger-button {
|
||||
display: unset;
|
||||
position: absolute;
|
||||
|
|
@ -375,15 +383,15 @@ body>main {
|
|||
}
|
||||
|
||||
// Use the media queries, which we need, from here:
|
||||
@if map-get($breakpoints, "sm") {
|
||||
@media (min-width: map-get($breakpoints, "sm")) {
|
||||
@if map.get($breakpoints, "sm") {
|
||||
@media (min-width: map.get($breakpoints, "sm")) {
|
||||
ul {
|
||||
padding-left: 0;
|
||||
padding-right: 0;
|
||||
}
|
||||
|
||||
.main-nav {
|
||||
max-width: map-get($viewports, "sm");
|
||||
max-width: map.get($viewports, "sm");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -454,17 +462,12 @@ div.nav-aside {
|
|||
margin: 15px var(--block-spacing-horizontal);
|
||||
}
|
||||
|
||||
.image-container {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
|
||||
img {
|
||||
padding: 15px var(--block-spacing-horizontal);
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
}
|
||||
width: 100%;
|
||||
height: 25cqw;
|
||||
object-fit: cover;
|
||||
object-position: top;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
{{- /* Deprecate site.Author.email in favor of site.Params.author.email */}}
|
||||
{{- $authorEmail := "" }}
|
||||
{{- with site.Params.author }}
|
||||
{{- if reflect.IsMap . }}
|
||||
|
|
@ -6,14 +5,8 @@
|
|||
{{- $authorEmail = . }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- else }}
|
||||
{{- with site.Author.email }}
|
||||
{{- $authorEmail = . }}
|
||||
{{- warnf "The author key in site configuration is deprecated. Use params.author.email instead." }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{- /* Deprecate site.Author.name in favor of site.Params.author.name */}}
|
||||
{{- $authorName := "" }}
|
||||
{{- with site.Params.author }}
|
||||
{{- if reflect.IsMap . }}
|
||||
|
|
@ -23,11 +16,6 @@
|
|||
{{- else }}
|
||||
{{- $authorName = . }}
|
||||
{{- end }}
|
||||
{{- else }}
|
||||
{{- with site.Author.name }}
|
||||
{{- $authorName = . }}
|
||||
{{- warnf "The author key in site configuration is deprecated. Use params.author.name instead." }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{- $pctx := . }}
|
||||
|
|
@ -48,12 +36,12 @@
|
|||
<title>{{ if eq .Title .Site.Title }}{{ .Site.Title }}{{ else }}{{ with .Title }}{{ . }} on {{ end }}{{ .Site.Title }}{{ end }}</title>
|
||||
<link>{{ .Permalink }}</link>
|
||||
<description>Recent content {{ if ne .Title .Site.Title }}{{ with .Title }}in {{ . }} {{ end }}{{ end }}on {{ .Site.Title }}</description>
|
||||
<generator>Hugo -- gohugo.io</generator>
|
||||
{{ with $authorEmail }}
|
||||
<generator>Hugo</generator>
|
||||
<language>{{ site.Language.Locale }}</language>{{ with $authorEmail }}
|
||||
<managingEditor>{{.}}{{ with $authorName }} ({{ . }}){{ end }}</managingEditor>{{ end }}{{ with $authorEmail }}
|
||||
<webMaster>{{ . }}{{ with $authorName }} ({{ . }}){{ end }}</webMaster>{{ end }}{{ with .Site.Copyright }}
|
||||
<copyright>{{ . }}</copyright>{{ end }}{{ if not .Date.IsZero }}
|
||||
<lastBuildDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</lastBuildDate>{{ end }}
|
||||
<lastBuildDate>{{ (index $pages.ByLastmod.Reverse 0).Lastmod.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</lastBuildDate>{{ end }}
|
||||
{{- with .OutputFormats.Get "RSS" }}
|
||||
{{ printf "<atom:link href=%q rel=\"self\" type=%q />" .Permalink .MediaType | safeHTML }}
|
||||
{{- end }}
|
||||
|
|
@ -69,7 +57,7 @@
|
|||
<pubDate>{{ .PublishDate.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</pubDate>
|
||||
{{- with $authorEmail }}<author>{{ . }}{{ with $authorName }} ({{ . }}){{ end }}</author>{{ end }}
|
||||
<guid>{{ .Permalink }}</guid>
|
||||
<description>{{ .Content | html }}</description>
|
||||
<description>{{ .Content | transform.XMLEscape | safeHTML }}</description>
|
||||
</item>
|
||||
{{- end }}
|
||||
</channel>
|
||||
|
|
|
|||
|
|
@ -46,10 +46,8 @@
|
|||
{{- end }}
|
||||
</div>
|
||||
{{- if isset .Params "header" }}
|
||||
<div class="image-container">
|
||||
{{- $img := .Resources.GetMatch .Params.header.image }}
|
||||
<img src="{{ $img.RelPermalink }}" alt="{{ .Params.header.caption }}" />
|
||||
<img class="container" src="{{ $img.RelPermalink }}" alt="{{ .Params.header.caption }}" />
|
||||
{{- end }}
|
||||
</div>
|
||||
</header>
|
||||
{{- end }}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
{{- $cssOptionsMain := dict "transpiler" "libsass" "targetPath" "css/style.css" -}}
|
||||
{{- $cssOptionsPico := dict "transpiler" "libsass" "targetPath" "css/pico.css" -}}
|
||||
{{- $cssOptionsMain := dict "transpiler" "dartsass" "targetPath" "css/style.css" -}}
|
||||
{{- $cssOptionsPico := dict "transpiler" "dartsass" "targetPath" "css/pico.css" -}}
|
||||
{{- $jsResources := resources.Match "js/*.js" }}
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
{{- index .Site.Data "calendar.json" }}
|
||||
{{- index hugo.Data "calendar.json" }}
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
|
|
@ -8,7 +8,7 @@
|
|||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{- range first 7 (sort $.Site.Data.calendar "dtstart" ) }}
|
||||
{{- range first 7 (sort hugo.Data.calendar "dtstart" ) }}
|
||||
{{- if eq ._type "vevent"}}
|
||||
<tr>
|
||||
{{- $start := time .dtstart }}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue