Merge branch 'vinzenz-dev' into staging

This commit is contained in:
Marek Krug 2025-03-09 20:09:30 +01:00
commit 914620fe0f
9 changed files with 93 additions and 21 deletions

3
.gitignore vendored
View file

@ -1,4 +1,5 @@
static/all.ics
.envrc
# Created by https://www.toptal.com/developers/gitignore/api/windows,linux,macos,hugo
# Edit at https://www.toptal.com/developers/gitignore?templates=windows,linux,macos,hugo
@ -100,4 +101,4 @@ shell.nix
.direnv
# Python
.venv
.venv

View file

@ -1,23 +1,19 @@
![CCCB logo](static/img/logo.png)
# CCCB Website
This is the website of the CCCB.
![CCCB logo](assets/img/logo.png)
## Getting started
1. Get Hugo: <https://gohugo.io/getting-started/installing>
2. Clone this repo
2. Clone this repo (`--recursive` is needed to check out submodules)
```shell
git clone https://github.com/cccb/www
git clone --recursive https://git.berlin.ccc.de/cccb-website-team/www.git cccb-website
```
3. Switch directory
```shell
cd www
```
3. Fetch Submodules
```shell
git submodule update --recursive --remote --init
cd cccb-website
```
### Run site locally
@ -35,13 +31,13 @@ Every change you make on the project will be reflected in your browser as long a
## Making a change
1. Use your local dev setup (see Getting started) or via GitHub editor.
1. Use your local dev setup (see Getting started) or via the Forgejo editor.
2. Make your change in `staging` branch.
3. Commit (and push) your change.
4. GitHub Actions is running the release workflow.
4. ~~GitHub Actions is running the release workflow.~~
- If successful, check [Staging Website](https://staging.berlin.ccc.de/) if change is correct.
5. Create merge request to merge changes from `staging` to `production` branch. Ask somebody to check merge request or if small change, merge yourself.
6. GitHub Actions is running the release workflow.
6. ~~GitHub Actions is running the release workflow.~~
- If successfull, check [Website](https://berlin.ccc.de/) if change is correct.
7. Profit!

View file

@ -2,7 +2,8 @@
- DSGVO-compliant Datenschutzerklärung reinbasteln
- Entscheiden, welche Seiten sonst noch konvertiert werden sollen und welche in die ewigen Datengründe gehen können
- add nix config to repo
# Done
@ -17,4 +18,3 @@
- Bestehende Datengarten-Termine konvertieren
- ggf. template mit frontmatter
- Theme forken, alle assets sollten lokal gehosted sein und nicht von irgendwelchen CDNs bezogen werden (HTTP/2 ftw!)

View file

@ -1,7 +1,10 @@
#!/bin/sh
set -e
set -x
hugo $(cat .hugo-params)
./tools/merge_cals.py
upcoming="$(tools/gen_upcoming.py static/all.ics 20 5 | tr '\n' ' ')"
cp static/all.ics public/all.ics
sed -i "s#CALENDAR#$upcoming#g" public/index.html
sed -i "s#CALENDAR#$upcoming#g" public/index.html

View file

@ -46,7 +46,7 @@
weight = 10
[[footer]]
name = "Categories"
name = "Kategorien"
pageRef = "categories"
weight = 20
@ -56,6 +56,6 @@
weight = 500
[[footer]]
name = "Privacy"
name = "Datenschutz"
pageRef = "datenschutz"
weight = 600
weight = 600

View file

@ -13,4 +13,6 @@ menu:
![Lötkolben im CCCB](/img/club/27481933907_f240f4232d.jpg)
**Jeden 1. und 3. Samstag im Monat ist ab 17 Uhr Bastelabend im Club.**
Wenn ihr neu seid und den CCCB zum ersten Mal besuchen wollt, kommt am besten an einem Donnerstag zum [Club Discordia](/page/clubdiscordia/), da samstags nicht immer genug Leute da sind, um euch zu empfangen. Generell sind aber alle herzlich eingeladen, an den Spieleabenden vorbeizukommen.
Wenn ihr neu seid und den CCCB zum ersten Mal besuchen wollt, kommt am besten an einem Donnerstag zum [Club Discordia](/page/clubdiscordia/), da samstags nicht immer genug Leute da sind, um euch zu empfangen.
Generell sind aber alle herzlich eingeladen, an den Bastelabenden vorbeizukommen.

View file

@ -13,4 +13,6 @@ menu:
![Dorfromantik spielen im CCCB](/img/club/dorfromantik-im-cccb.jpg)
**Jeden 2. und 4. Samstag im Monat ist ab 17 Uhr Spieleabend im Club.**
Wenn ihr neu seid und den CCCB zum ersten Mal besuchen wollt, kommt am besten an einem Donnerstag zum [Club Discordia](/page/clubdiscordia/), da samstags nicht immer genug Leute da sind, um euch zu empfangen. Generell sind aber alle herzlich eingeladen, an den Bastelabenden vorbeizukommen.
Wenn ihr neu seid und den CCCB zum ersten Mal besuchen wollt, kommt am besten an einem Donnerstag zum [Club Discordia](/page/clubdiscordia/), da samstags nicht immer genug Leute da sind, um euch zu empfangen.
Generell sind aber alle herzlich eingeladen, an den Spieleabenden vorbeizukommen.

27
flake.lock Normal file
View file

@ -0,0 +1,27 @@
{
"nodes": {
"nixpkgs": {
"locked": {
"lastModified": 1741332913,
"narHash": "sha256-ri1e8ZliWS3Jnp9yqpKApHaOo7KBN33W8ECAKA4teAQ=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "20755fa05115c84be00b04690630cb38f0a203ad",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-24.11",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"nixpkgs": "nixpkgs"
}
}
},
"root": "root",
"version": 7
}

41
flake.nix Normal file
View file

@ -0,0 +1,41 @@
{
description = "A flake containing a development environment for the CCCB website.";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11";
};
outputs =
{ self, nixpkgs }:
let
forAllSystems =
f:
nixpkgs.lib.genAttrs nixpkgs.lib.systems.flakeExposed (
system:
f rec {
pkgs = nixpkgs.legacyPackages.${system};
inherit system;
}
);
in
{
devShells = forAllSystems (
{ pkgs, ... }:
{
default = pkgs.mkShell rec {
packages = with pkgs; [
hugo
go
(pkgs.python3.withPackages (python-pkgs: [
python-pkgs.icalendar
python-pkgs.pytz
]))
shellcheck
];
};
}
);
formatter = forAllSystems ({ pkgs, ... }: pkgs.nixfmt-rfc-style);
};
}