From 674819d4b1711862bd39c96f52d9c64b2d22997e Mon Sep 17 00:00:00 2001 From: Titas-Ghosh Date: Fri, 8 May 2026 03:43:37 +0530 Subject: [PATCH 1/3] PoC mount CHAOSScon 2026 content Signed-off-by: Titas-Ghosh --- .gitmodules | 5 ++ README.md | 9 +- content/chaosscon/chaosscon-2026-eu.md | 3 +- external/chaoss-website | 1 + hugo.toml | 110 +++++++++++++++++++++++++ 5 files changed, 126 insertions(+), 2 deletions(-) create mode 100644 .gitmodules create mode 160000 external/chaoss-website diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..beca87c --- /dev/null +++ b/.gitmodules @@ -0,0 +1,5 @@ +[submodule "external/chaoss-website"] + path = external/chaoss-website + url = https://github.com/chaoss/website.git + branch = main + shallow = true diff --git a/README.md b/README.md index ad776a4..726086c 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,14 @@ This site uses [Hugo](https://gohugo.io/) as its templating engine to generate t Once hugo is installed, you can run `hugo serve` in this project's directory to start a local web server and preview the content. +Some content is mounted from external repositories. To include the CHAOSScon proof-of-concept content, initialize submodules before building: + +```shell +git submodule update --init --depth 1 --filter=blob:none external/chaoss-website +git -C external/chaoss-website sparse-checkout set CHAOSScon/2026Europe +``` + **Note about Offline Builds** Note about the build process: Some pages of the website, such as the CHAOSS charter, are fetched from other github repositories at build time using the GitHub API. If you do not have internet access when you first build the site, the builds will fail. -Once these pages are downloaded, hugo will cache them so that subsequent builds can be done offline (so long as you dont add a new page that needs to be fetched from online). \ No newline at end of file +Once these pages are downloaded, hugo will cache them so that subsequent builds can be done offline (so long as you dont add a new page that needs to be fetched from online). diff --git a/content/chaosscon/chaosscon-2026-eu.md b/content/chaosscon/chaosscon-2026-eu.md index c0763ae..d9d5263 100644 --- a/content/chaosscon/chaosscon-2026-eu.md +++ b/content/chaosscon/chaosscon-2026-eu.md @@ -1,5 +1,6 @@ --- title: CHAOSScon-2026-EU +draft: true author: elizabeth type: page date: 2025-10-06T17:18:21+00:00 @@ -160,4 +161,4 @@ This is a community-organized event, and we rely on sponsors to cover costs for [7]: https://join.slack.com/t/chaoss-workspace/shared_invite/zt-r65szij9-QajX59hkZUct82b0uACA6g [8]: https://www.linkedin.com/company/chaoss/posts?lipi=urn%3Ali%3Apage%3Ad_flagship3_company_admin%3BE3M4AtN0SRmzxVMBJ%2FfHGQ%3D%3D [9]: https://we-are-ols.org/ - [10]: https://github.com/chaoss/website/blob/main/CHAOSScon/2026Europe/CHAOSScon.Europe.2026_funding_prospectus.pdf \ No newline at end of file + [10]: https://github.com/chaoss/website/blob/main/CHAOSScon/2026Europe/CHAOSScon.Europe.2026_funding_prospectus.pdf diff --git a/external/chaoss-website b/external/chaoss-website new file mode 160000 index 0000000..025c5c2 --- /dev/null +++ b/external/chaoss-website @@ -0,0 +1 @@ +Subproject commit 025c5c22f5aba57bd4960e21474aed680610367c diff --git a/hugo.toml b/hugo.toml index 1a0b838..7574edd 100644 --- a/hugo.toml +++ b/hugo.toml @@ -13,6 +13,116 @@ tagline = 'Metrics, Models & Software for Open Source Community Health' [markup.goldmark.renderer] unsafe = true +[module] +[[module.mounts]] +source = 'archetypes' +target = 'archetypes' + +[[module.mounts]] +source = 'content' +target = 'content' + +[[module.mounts]] +source = 'static' +target = 'static' + +[[module.mounts]] +source = 'external/chaoss-website/CHAOSScon/2026Europe/about.md' +target = 'content/chaosscon-2026-eu/_index.md' + +[[module.mounts]] +source = 'external/chaoss-website/CHAOSScon/2026Europe/schedule.md' +target = 'content/chaosscon-2026-eu/agenda.md' + +[[module.mounts]] +source = 'external/chaoss-website/CHAOSScon/2026Europe/travel_info.md' +target = 'content/chaosscon-2026-eu/travel.md' + +[[module.mounts]] +source = 'external/chaoss-website/CHAOSScon/2026Europe/faq.md' +target = 'content/chaosscon-2026-eu/faq.md' + +[[module.mounts]] +source = 'external/chaoss-website/CHAOSScon/2026Europe/committee.md' +target = 'content/chaosscon-2026-eu/committee.md' + +[[module.mounts]] +source = 'external/chaoss-website/CHAOSScon/2026Europe/event_details.md' +target = 'content/chaosscon-2026-eu/event-details.md' + +[[module.mounts]] +source = 'external/chaoss-website/CHAOSScon/2026Europe/event_location_time.md' +target = 'content/chaosscon-2026-eu/event-location-time.md' + +[[module.mounts]] +source = 'external/chaoss-website/CHAOSScon/2026Europe/info_for_speakers.md' +target = 'content/chaosscon-2026-eu/info-for-speakers.md' + +[[module.mounts]] +source = 'external/chaoss-website/CHAOSScon/2026Europe/speakers.md' +target = 'content/chaosscon-2026-eu/speakers.md' + +[[module.mounts]] +source = 'external/chaoss-website/CHAOSScon/2026Europe/images' +target = 'static/chaosscon-2026-eu/images' + +[[module.mounts]] +source = 'external/chaoss-website/CHAOSScon/2026Europe/slides' +target = 'static/chaosscon-2026-eu/slides' + +[[module.mounts]] +source = 'external/chaoss-website/CHAOSScon/2026Europe/CHAOSScon.Europe.2026_funding_prospectus.docx' +target = 'static/chaosscon-2026-eu/CHAOSScon.Europe.2026_funding_prospectus.docx' + +[[module.mounts]] +source = 'external/chaoss-website/CHAOSScon/2026Europe/CHAOSScon.Europe.2026_funding_prospectus.pdf' +target = 'static/chaosscon-2026-eu/CHAOSScon.Europe.2026_funding_prospectus.pdf' + +[[cascade]] +title = 'CHAOSScon Europe 2026' +[cascade.target] +path = '/chaosscon-2026-eu' + +[[cascade]] +title = 'Schedule and Speakers' +[cascade.target] +path = '/chaosscon-2026-eu/agenda' + +[[cascade]] +title = 'Travel and Brussels Info' +[cascade.target] +path = '/chaosscon-2026-eu/travel' + +[[cascade]] +title = 'Frequently Asked Questions' +[cascade.target] +path = '/chaosscon-2026-eu/faq' + +[[cascade]] +title = 'Committee' +[cascade.target] +path = '/chaosscon-2026-eu/committee' + +[[cascade]] +title = 'Event Details' +[cascade.target] +path = '/chaosscon-2026-eu/event-details' + +[[cascade]] +title = 'Event Location and Time' +[cascade.target] +path = '/chaosscon-2026-eu/event-location-time' + +[[cascade]] +title = 'Info for Speakers' +[cascade.target] +path = '/chaosscon-2026-eu/info-for-speakers' + +[[cascade]] +title = 'Speakers' +[cascade.target] +path = '/chaosscon-2026-eu/speakers' + [[menus.main]] name = 'Home' pageRef = '/' From 133f0e6be6a3eb84d7cef570d0ad312104a6c591 Mon Sep 17 00:00:00 2001 From: Titas-Ghosh Date: Fri, 8 May 2026 04:57:14 +0530 Subject: [PATCH 2/3] Align CHAOSScon PoC routes with official site Signed-off-by: Titas-Ghosh --- README.md | 2 +- hugo.toml | 45 --------------------------------------------- 2 files changed, 1 insertion(+), 46 deletions(-) diff --git a/README.md b/README.md index 726086c..4d73a2c 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,7 @@ Some content is mounted from external repositories. To include the CHAOSScon pro ```shell git submodule update --init --depth 1 --filter=blob:none external/chaoss-website -git -C external/chaoss-website sparse-checkout set CHAOSScon/2026Europe +git -C external/chaoss-website sparse-checkout set CHAOSScon ``` **Note about Offline Builds** diff --git a/hugo.toml b/hugo.toml index 7574edd..c880a37 100644 --- a/hugo.toml +++ b/hugo.toml @@ -42,26 +42,6 @@ target = 'content/chaosscon-2026-eu/travel.md' source = 'external/chaoss-website/CHAOSScon/2026Europe/faq.md' target = 'content/chaosscon-2026-eu/faq.md' -[[module.mounts]] -source = 'external/chaoss-website/CHAOSScon/2026Europe/committee.md' -target = 'content/chaosscon-2026-eu/committee.md' - -[[module.mounts]] -source = 'external/chaoss-website/CHAOSScon/2026Europe/event_details.md' -target = 'content/chaosscon-2026-eu/event-details.md' - -[[module.mounts]] -source = 'external/chaoss-website/CHAOSScon/2026Europe/event_location_time.md' -target = 'content/chaosscon-2026-eu/event-location-time.md' - -[[module.mounts]] -source = 'external/chaoss-website/CHAOSScon/2026Europe/info_for_speakers.md' -target = 'content/chaosscon-2026-eu/info-for-speakers.md' - -[[module.mounts]] -source = 'external/chaoss-website/CHAOSScon/2026Europe/speakers.md' -target = 'content/chaosscon-2026-eu/speakers.md' - [[module.mounts]] source = 'external/chaoss-website/CHAOSScon/2026Europe/images' target = 'static/chaosscon-2026-eu/images' @@ -98,31 +78,6 @@ title = 'Frequently Asked Questions' [cascade.target] path = '/chaosscon-2026-eu/faq' -[[cascade]] -title = 'Committee' -[cascade.target] -path = '/chaosscon-2026-eu/committee' - -[[cascade]] -title = 'Event Details' -[cascade.target] -path = '/chaosscon-2026-eu/event-details' - -[[cascade]] -title = 'Event Location and Time' -[cascade.target] -path = '/chaosscon-2026-eu/event-location-time' - -[[cascade]] -title = 'Info for Speakers' -[cascade.target] -path = '/chaosscon-2026-eu/info-for-speakers' - -[[cascade]] -title = 'Speakers' -[cascade.target] -path = '/chaosscon-2026-eu/speakers' - [[menus.main]] name = 'Home' pageRef = '/' From 52a9542b93bf71102fbcdbdc6b6fffc6573fb260 Mon Sep 17 00:00:00 2001 From: Titas-Ghosh Date: Fri, 15 May 2026 23:58:22 +0530 Subject: [PATCH 3/3] Inline CHAOSScon event details on homepage Signed-off-by: Titas-Ghosh --- hugo.toml | 12 ++++++++++ .../layouts/_default/chaosscon-home.html | 23 +++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 themes/chaoss/layouts/_default/chaosscon-home.html diff --git a/hugo.toml b/hugo.toml index c880a37..3678746 100644 --- a/hugo.toml +++ b/hugo.toml @@ -42,6 +42,10 @@ target = 'content/chaosscon-2026-eu/travel.md' source = 'external/chaoss-website/CHAOSScon/2026Europe/faq.md' target = 'content/chaosscon-2026-eu/faq.md' +[[module.mounts]] +source = 'external/chaoss-website/CHAOSScon/2026Europe/event_location_time.md' +target = 'content/chaosscon-2026-eu/event-location-time.md' + [[module.mounts]] source = 'external/chaoss-website/CHAOSScon/2026Europe/images' target = 'static/chaosscon-2026-eu/images' @@ -60,6 +64,8 @@ target = 'static/chaosscon-2026-eu/CHAOSScon.Europe.2026_funding_prospectus.pdf' [[cascade]] title = 'CHAOSScon Europe 2026' +layout = 'chaosscon-home' +event_location_content_path = 'external/chaoss-website/CHAOSScon/2026Europe/event_location_time.md' [cascade.target] path = '/chaosscon-2026-eu' @@ -78,6 +84,12 @@ title = 'Frequently Asked Questions' [cascade.target] path = '/chaosscon-2026-eu/faq' +[[cascade]] +[cascade.build] +render = 'never' +[cascade.target] +path = '/chaosscon-2026-eu/event-location-time' + [[menus.main]] name = 'Home' pageRef = '/' diff --git a/themes/chaoss/layouts/_default/chaosscon-home.html b/themes/chaoss/layouts/_default/chaosscon-home.html new file mode 100644 index 0000000..c8e8492 --- /dev/null +++ b/themes/chaoss/layouts/_default/chaosscon-home.html @@ -0,0 +1,23 @@ +{{ define "main" }} + + +
+ {{ with .Content }} +
+ {{ . }} +
+ {{ end }} + + {{ with .Params.event_location_content_path }} + {{ with readFile . }} +
+ {{ . | markdownify }} +
+ {{ end }} + {{ end }} +
+{{ end }}