diff --git a/website/content/default.nix b/website/content/default.nix
index 67b0040..5ad084d 100644
--- a/website/content/default.nix
+++ b/website/content/default.nix
@@ -7,6 +7,7 @@ in
imports = lib.nixFiles ./.;
collections.news.type = cfg.content-types.article;
+ collections.events.type = cfg.content-types.event;
pages.index = { config, link, ... }: {
title = "Welcome to the Fediversity project";
@@ -57,6 +58,17 @@ in
- ${article.date} [${article.title}](${link article})
'') sorted)
}
+
+ # Events
+
+ ${
+ let
+ sorted = with lib; reverseList (sortOn (entry: entry.start-date) cfg.collections.events.entry);
+ in
+ lib.join "\n" (map (article: ''
+ - ${article.start-date} [${article.title}](${link article})
+ '') sorted)
+ }
'';
outputs.html = (cfg.templates.html.page config).override {
html.head.title.text = "Fediversity";
diff --git a/website/content/events.nix b/website/content/events.nix
new file mode 100644
index 0000000..26f5360
--- /dev/null
+++ b/website/content/events.nix
@@ -0,0 +1,16 @@
+{ config, lib, ... }:
+{
+ pages.events = { link, ... }: rec {
+ title = "Events";
+ description = "Events related to the Fediverse and NixOS";
+ summary = description;
+ body =
+ with lib;
+ let
+ events = map (event: "- [${event.start-date} ${event.title}](${link event})") config.collections.events.entry;
+ in
+ ''
+ ${join "\n" events}
+ '';
+ };
+}
diff --git a/website/content/events/owc-annual-conference-2024.nix b/website/content/events/owc-annual-conference-2024.nix
new file mode 100644
index 0000000..39d495f
--- /dev/null
+++ b/website/content/events/owc-annual-conference-2024.nix
@@ -0,0 +1,24 @@
+{ ... }:
+{
+ collections.events.entry = { ... }: {
+ title = "OW2con 2024";
+ description = "OW2con is the annual European open source conference in Paris";
+ start-date = "2024-06-11";
+ end-date = "2024-06-12";
+ start-time = "09:00";
+ end-time = "18:00";
+ location = "Paris-Chatillon";
+ body = ''
+ OW2con is the European open source conference organized by OW2.
+ An international meeting of developpers, IT companies, academics and non-profit organizations, OW2con brings together the entire open source community, during two days of presentations ranging from tech topics to business and ethical issues of open source.
+ It also offers a unique opportunity to establish contact with peers through friendly networking sessions.
+ OW2con is [open](https://www.ngi.eu/event/open-source-community-annual-conference-2024/) to all, the event is free and all sessions are held in English.
+
+ The OW2con’24 call for presentations is open.
+ This year we are giving the highlight on the theme of open source funding:
+ What are the current solutions for innovators, start-ups or ISVs to finance their development?
+ Private or public financing?
+ Are national and European public policies up to the challenges?
+ '';
+ };
+}
diff --git a/website/content/events/publicspaces-conference-2024.nix b/website/content/events/publicspaces-conference-2024.nix
new file mode 100644
index 0000000..35fbe7d
--- /dev/null
+++ b/website/content/events/publicspaces-conference-2024.nix
@@ -0,0 +1,18 @@
+{ ... }:
+{
+ collections.events.entry = { ... }: {
+ title = "PublicSpaces Conference 2024";
+ description = "A conference by PublicSpaces, Taking Back the Internet.";
+ start-date = "2024-06-06";
+ end-date = "2024-06-07";
+ start-time = "09:00";
+ end-time = "18:00";
+ location = "Pakhuis de Zwijger - Amsterdam";
+ body = ''
+ On June 6th and 7th, PublicSpaces and Waag Futurelab proudly present the fourth edition of the PublicSpaces conference under the theme 'Empowering the Internet'.
+ Held at Pakhuis de Zwijger, this two-day event will feature panels, keynotes, roundtable discussions, lectures, as well as art and cultural showcases, all aimed at collectively shaping the rules for a more inclusive internet.
+ Join us as we navigate towards a digital landscape where everyone has a voice.
+ For more information, check out the [website](https://publicspaces.net/2024/02/01/save-the-date-publicspaces-conferentie-2024/)
+ '';
+ };
+}
diff --git a/website/content/events/waag-state-internet-2024.nix b/website/content/events/waag-state-internet-2024.nix
new file mode 100644
index 0000000..a4608bd
--- /dev/null
+++ b/website/content/events/waag-state-internet-2024.nix
@@ -0,0 +1,25 @@
+{ ... }:
+{
+ collections.events.entry = { ... }: {
+ title = "State of the Internet 2024";
+ description = "The State of the Internet 2024 by Waag";
+ start-date = "2024-05-16";
+ end-date = "2024-05-16";
+ start-time = "18:00";
+ end-time = "20:00";
+ location = "OBA Oosterdok - Amsterdam";
+ body = ''
+ Join us at the State of the Internet 2024, where Waag Futurelab, alongside the Municipality of Amsterdam and the OBA, delves into the depths of the online realm.
+ Featuring Kim van Sparrentak, Member of the European Parliament, discussing Europe's efforts to regulate Big Tech and enhance digital rights.
+ Explore the impact of pivotal European laws like the GDPR and AI Act while celebrating 30 years of Waag Futurelab's dedication to democratizing technology access for all.
+
+ The event takes place at:
+
+ OBA Oosterdok
+ Oosterdokskade 143
+ 1011 DK Amsterdam
+
+ Registration available [here](https://waag.org/nl/event/de-staat-van-het-internet-2024-met-kim-van-sparrentak/).
+ '';
+ };
+}
diff --git a/website/content/navigation.nix b/website/content/navigation.nix
index 1410f61..c02ad57 100644
--- a/website/content/navigation.nix
+++ b/website/content/navigation.nix
@@ -31,6 +31,9 @@ in
})
(lib.take 3 sorted);
}
+ {
+ page = pages.events;
+ }
];
};
}
diff --git a/website/content_/events/_index.md b/website/content_/events/_index.md
deleted file mode 100755
index d2e9322..0000000
--- a/website/content_/events/_index.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-title: "Events"
-meta_title: "Events"
-description: "Events related to the fediverse and NixOS."
----
diff --git a/website/content_/events/owc-annual-conference-2024.md b/website/content_/events/owc-annual-conference-2024.md
deleted file mode 100755
index a32af8d..0000000
--- a/website/content_/events/owc-annual-conference-2024.md
+++ /dev/null
@@ -1,18 +0,0 @@
----
-title: "OW2con 2024"
-meta_title: ""
-description: "OW2con is the annual European open source conference in Paris"
-date: 2024-05-11T09:00:00Z
-categories: ["Event", "Conference"]
-image: "/images/image-placeholder.png"
-author: "Laurens Hof"
-draft: false
-date_start: 2024-06-11
-date_end: 2024-06-12
-datetime_start: 2024-06-11 09:00
-datetime_end: 2024-06-12 18:00
-location: Paris-Chatillon
----
-
-OW2con is the European open source conference organized by OW2. An international meeting of developpers, IT companies, academics and non-profit organizations, OW2con brings together the entire open source community, during two days of presentations ranging from tech topics to business and ethical issues of open source. It also offers a unique opportunity to establish contact with peers through friendly networking sessions. OW2con is [open](https://www.ngi.eu/event/open-source-community-annual-conference-2024/) to all, the event is free and all sessions are held in English.
-The OW2con’24 call for presentations is open. This year we are giving the highlight on the theme of open source funding: what are the current solutions for innovators, start-ups or ISVs to finance their development? private or public financing? Are national and European public policies up to the challenges?
diff --git a/website/content_/events/publicspaces-annual-conference.md b/website/content_/events/publicspaces-annual-conference.md
deleted file mode 100755
index 7e1a154..0000000
--- a/website/content_/events/publicspaces-annual-conference.md
+++ /dev/null
@@ -1,18 +0,0 @@
----
-title: "PublicSpaces Conference 2024"
-meta_title: ""
-date: 2024-05-11T14:00:00+02:00
-description: "A conference by PublicSpaces, Taking Back the Internet."
-categories: ["Event", "Conference"]
-image: "/images/image-placeholder.png"
-author: "Laurens Hof"
-draft: false
-date_start: 2024-06-06
-date_end: 2024-06-07
-datetime_start: 2024-06-06 09:00
-datetime_end: 2024-06-07 18:00
-location: Pakhuis de Zwijger - Amsterdam
----
-w
-On June 6th and 7th, PublicSpaces and Waag Futurelab proudly present the fourth edition of the PublicSpaces conference under the theme 'Empowering the Internet'. Held at Pakhuis de Zwijger, this two-day event will feature panels, keynotes, roundtable discussions, lectures, as well as art and cultural showcases, all aimed at collectively shaping the rules for a more inclusive internet. Join us as we navigate towards a digital landscape where everyone has a voice. For more information, check out the [website](https://publicspaces.net/2024/02/01/save-the-date-publicspaces-conferentie-2024/)
-
diff --git a/website/content_/events/waag-state-internet-2024.md b/website/content_/events/waag-state-internet-2024.md
deleted file mode 100755
index 5e474a9..0000000
--- a/website/content_/events/waag-state-internet-2024.md
+++ /dev/null
@@ -1,25 +0,0 @@
----
-title: "State of the Internet 2024"
-meta_title: ""
-description: "The State of the Internet 2024 by Waag"
-date: 2024-04-10T16:00:00Z
-image: "/images/image-placeholder.png"
-categories: ["Event", "Webinar"]
-author: "Laurens Hof"
-draft: false
-date_start: 2024-05-16
-date_end: 2024-05-16
-datetime_start: 2024-05-16 18:00
-datetime_end: 2024-05-16 20:00
-location: OBA Oosterdok - Amsterdam
----
-
-Join us at the State of the Internet 2024, where Waag Futurelab, alongside the Municipality of Amsterdam and the OBA, delves into the depths of the online realm. Featuring Kim van Sparrentak, Member of the European Parliament, discussing Europe's efforts to regulate Big Tech and enhance digital rights. Explore the impact of pivotal European laws like the GDPR and AI Act while celebrating 30 years of Waag Futurelab's dedication to democratizing technology access for all.
-
-The event takes place at:
-
-OBA Oosterdok
-Oosterdokskade 143
-1011 DK Amsterdam
-
-Registration available [here](https://waag.org/nl/event/de-staat-van-het-internet-2024-met-kim-van-sparrentak/)
diff --git a/website/structure/article.nix b/website/structure/article.nix
index ac87611..e443dc5 100644
--- a/website/structure/article.nix
+++ b/website/structure/article.nix
@@ -1,7 +1,6 @@
{ config, options, lib, ... }:
let
- inherit (lib)
- mkOption
+ inherit (lib) mkOption
types
;
cfg = config;