From c314827b98a8984daeec548f78c1855761b22cd6 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 24 May 2023 19:01:22 +0000 Subject: [PATCH 1/8] Update dependency minify to ^10.2.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index fe39857..e4af30b 100644 --- a/package.json +++ b/package.json @@ -27,7 +27,7 @@ "eleventy-plugin-rev": "^1.1.1", "eleventy-sass": "^2.2.1", "glob": "^10.2.6", - "minify": "^10.0.0", + "minify": "^10.2.0", "postcss": "^8.4.23", "sass": "^1.62.1", "uncss": "^0.17.3" From af9b6f846975140db08ef74665396f3158e1b690 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Tue, 30 May 2023 16:01:24 +0000 Subject: [PATCH 2/8] Update dependency bootstrap to ^5.3.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index e4af30b..4788671 100644 --- a/package.json +++ b/package.json @@ -33,6 +33,6 @@ "uncss": "^0.17.3" }, "dependencies": { - "bootstrap": "^5.2.3" + "bootstrap": "^5.3.0" } } From 56e1db4fb1959095fb9db8c255c9c4dae220e688 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Tue, 6 Jun 2023 20:01:35 +0000 Subject: [PATCH 3/8] Update dependency glob to ^10.2.7 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index e4af30b..392603b 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "cpx": "^1.5.0", "eleventy-plugin-rev": "^1.1.1", "eleventy-sass": "^2.2.1", - "glob": "^10.2.6", + "glob": "^10.2.7", "minify": "^10.2.0", "postcss": "^8.4.23", "sass": "^1.62.1", From a383d447979f4ba5a47ee81c8ff19ad3eba7257b Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 21 Jun 2023 04:01:47 +0000 Subject: [PATCH 4/8] Update dependency sass to ^1.63.5 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index e4af30b..da7fbfe 100644 --- a/package.json +++ b/package.json @@ -29,7 +29,7 @@ "glob": "^10.2.6", "minify": "^10.2.0", "postcss": "^8.4.23", - "sass": "^1.62.1", + "sass": "^1.63.5", "uncss": "^0.17.3" }, "dependencies": { From fa11285782874ceeabc1d6e86a2ff726ec9c3aa4 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 21 Jun 2023 20:03:04 +0000 Subject: [PATCH 5/8] Update dependency postcss to ^8.4.24 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 465ca52..a0e6668 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,7 @@ "eleventy-sass": "^2.2.1", "glob": "^10.2.7", "minify": "^10.2.0", - "postcss": "^8.4.23", + "postcss": "^8.4.24", "sass": "^1.63.5", "uncss": "^0.17.3" }, From 432f36d6f787a379baf0a8656fde47b428dfe73a Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 21 Jun 2023 21:01:50 +0000 Subject: [PATCH 6/8] Update dependency glob to ^10.3.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index a0e6668..2fcdd61 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "cpx": "^1.5.0", "eleventy-plugin-rev": "^1.1.1", "eleventy-sass": "^2.2.1", - "glob": "^10.2.7", + "glob": "^10.3.0", "minify": "^10.2.0", "postcss": "^8.4.24", "sass": "^1.63.5", From 30aab8e9b7eec396513d5078e4fb7d88d03b2aa1 Mon Sep 17 00:00:00 2001 From: Samuel Philipp Date: Fri, 14 Jul 2023 22:47:08 +0200 Subject: [PATCH 7/8] major updates --- src/_data/services.json | 80 +++++------- src/_includes/profiles.html | 19 ++- src/de/articles.html | 3 +- src/de/services/firefox-sync.md | 19 --- src/de/services/forgejo.md | 24 ++++ src/de/services/gitea.md | 24 ---- src/de/services/matrix/setup/part-1.md | 1 - src/de/services/ntfy.md | 10 ++ src/de/services/piped.md | 19 --- src/de/services/searx.md | 27 ---- src/de/services/searx/setup.md | 56 --------- src/en/services/firefox-sync.md | 19 --- src/en/services/forgejo.md | 23 ++++ src/en/services/gitea.md | 23 ---- src/en/services/ntfy.md | 10 ++ src/en/services/piped.md | 18 --- src/en/services/searx.md | 27 ---- src/font/icomoon.eot | Bin 10412 -> 10528 bytes src/font/icomoon.svg | 14 ++- src/font/icomoon.ttf | Bin 10248 -> 10364 bytes src/font/icomoon.woff | Bin 10324 -> 10444 bytes src/font/icomoon.woff2 | Bin 5780 -> 5684 bytes src/scss/icons/style.scss | 167 ++++++++++++++++--------- src/scss/icons/variables.scss | 11 +- 24 files changed, 236 insertions(+), 358 deletions(-) delete mode 100644 src/de/services/firefox-sync.md create mode 100644 src/de/services/forgejo.md delete mode 100644 src/de/services/gitea.md create mode 100644 src/de/services/ntfy.md delete mode 100644 src/de/services/piped.md delete mode 100644 src/de/services/searx.md delete mode 100644 src/de/services/searx/setup.md delete mode 100644 src/en/services/firefox-sync.md create mode 100644 src/en/services/forgejo.md delete mode 100644 src/en/services/gitea.md create mode 100644 src/en/services/ntfy.md delete mode 100644 src/en/services/piped.md delete mode 100644 src/en/services/searx.md diff --git a/src/_data/services.json b/src/_data/services.json index 7a06d7c..6d1754e 100644 --- a/src/_data/services.json +++ b/src/_data/services.json @@ -6,8 +6,8 @@ "url": "https://chat.sp-codes.de", "status": "https://matrix.sp-codes.de/_matrix/static/", "summary": { - "de": "Ein offenes Netzwerk für sichere, dezentralisierte Kommunikation.", - "en": "An open network for secure, decentralized communication." + "de": "Die offene Plattform für sichere und dezentrale Kommunikation.", + "en": "The open platform for secure and decentralized communication." } }, { @@ -17,8 +17,8 @@ "url": "https://jitsi.sp-codes.de", "status": "https://jitsi.sp-codes.de", "summary": { - "de": "Eine sichere, einfache und skalierbare Plattform für Videokonferenzen.", - "en": "A secure, simple and scalable platform for video conferencing." + "de": "Einfache Videokonferenzen mit Leichtigkeit.", + "en": "Easy video conferencing with ease." } }, { @@ -28,8 +28,8 @@ "url": "https://social.sp-codes.de", "status": "https://social.sp-codes.de/health", "summary": { - "de": "Das dezentrale, soziale Netzwerk der Zukunft: Keine Werbung und keine Überwachung durch Unternehmen.", - "en": "The decentralized social network of the future: No ads, no corporate surveillance." + "de": "Das soziale Netzwerk für dezentrale und sichere Interaktion.", + "en": "The social network for decentralized and secure interaction." } }, { @@ -39,8 +39,8 @@ "url": "https://tube.sp-codes.de", "status": "https://tube.sp-codes.de", "summary": { - "de": "Ein Netzwerk aus mehreren föderierten, interoperablen Video-Hosting-Anbietern. Werbefrei und ohne Bindung an einen bestimmten Anbieter.", - "en": "A network of multiple federated, interoperable video hosting providers. Ad-free and without vendor lock-in." + "de": "Die freie und dezentrale Plattform für gemeinsames Video-Streaming.", + "en": "The free and decentralized platform for collaborative video streaming." } }, { @@ -51,19 +51,19 @@ "status": "https://pixel.sp-codes.de", "beta": true, "summary": { - "de": "Pixelfed ist ein kostenloses und ethisches, soziales Netzwerk für den Austausch von Fotos. Es ist dezentral und föderiert mit anderen Plattformen des Fediverse.", - "en": "Pixelfed is a free and ethical social network for sharing photos. It is decentralized and federated with other Fediverse platforms." + "de": "Das soziale Netzwerk für den Austausch von Bildern und Fotografie.", + "en": "The social network for sharing images and photography." } }, { - "id": "gitea", - "name": "Gitea", - "icon": "i-gitea", + "id": "forgejo", + "name": "Forgejo", + "icon": "i-git", "url": "https://git.sp-codes.de", "status": "https://git.sp-codes.de", "summary": { - "de": "Eine leichtgewichtige Code-Hosting-Plattform für git.", - "en": "A lightweight code hosting platform for git." + "de": "Die Plattform für einfaches und sicheres Code-Hosting.", + "en": "The platform for easy and secure code hosting." } }, { @@ -72,30 +72,30 @@ "icon": "i-wifi", "status": "https://connectivitycheck.sp-codes.de/generate204", "summary": { - "de": "Eine datenschutzfreundliches Tool, um Anmeldeseiten in WLAN-Netzwerken zu erkennen.", - "en": "A privacy friendly Service to detect captive portals in WIFI networks." + "de": "Überprüfung der Verfügbarkeit von Internetzugang.", + "en": "Verification of Internet access availability." } }, { "id": "ntfy", "name": "ntfy", - "icon": "i-server", + "icon": "i-cloud-download", "url": "https://ntfy.sp-codes.de", "status": "https://ntfy.sp-codes.de", - "beta": true, "summary": { - "de": "Ein einfacher Dienst für Echtzeit-Benachrichtigungen, z.B. als Provider für UnifiedPush.", - "en": "A simple real-time notification service, e.g. as a provider for UnifiedPush." + "de": "Echtzeitbenachrichtigungen mit UnifiedPush-Unterstützung.", + "en": "Real-time notifications with UnifiedPush support." } }, { - "id": "firefox-sync", - "name": "Firefox Sync", - "icon": "i-firefox", - "status": "https://sync.firefox.sp-codes.de/token/", + "id": "etherpad", + "name": "Etherpad", + "icon": "i-pencil-square", + "url": "https://pad.sp-codes.de", + "status": "https://pad.sp-codes.de", "summary": { - "de": "Ein Service um Firefox Einstellungen, Lesezeichen, offene Tabs und vieles mehr über verschiedene Geräte zu synchronisieren.", - "en": "A service to sync Firefox settings, bookmarks, open tabs and much more between multiple devices." + "de": "Gemeinsame Echtzeit-Textbearbeitung für effektive Zusammenarbeit.", + "en": "Collaborative real-time text editing for effective collaboration." } }, { @@ -105,30 +105,8 @@ "url": "https://shields.sp-codes.de", "status": "https://shields.sp-codes.de", "summary": { - "de": "Prägnante, konsistente und lesbare Badges im SVG- und Rasterformat.", - "en": "Concise, consistent, and legible badges in SVG and raster format." - } - }, - { - "id": "searx", - "name": "Searx", - "icon": "i-search", - "url": "https://searx.sp-codes.de", - "status": "https://searx.sp-codes.de", - "summary": { - "de": "Eine privatsphären-respektierende, hackbare Metasuchmaschine.", - "en": "A privacy-respecting, hackable metasearch engine." - } - }, - { - "id": "piped", - "name": "Piped", - "icon": "i-youtube", - "url": "https://piped.sp-codes.de", - "status": "https://piped.sp-codes.de", - "summary": { - "de": "Ein alternatives YouTube-Frontend.", - "en": "An alternative YouTube-Frontend." + "de": "Visuelle Badges zur Anzeige von Projektinformationen und Status.", + "en": "Visual badges for displaying project information and status." } } ] diff --git a/src/_includes/profiles.html b/src/_includes/profiles.html index bb6a9ea..649f769 100644 --- a/src/_includes/profiles.html +++ b/src/_includes/profiles.html @@ -11,19 +11,28 @@ - +
{% if locale == 'de' %} diff --git a/src/de/articles.html b/src/de/articles.html index e84986f..debfe40 100644 --- a/src/de/articles.html +++ b/src/de/articles.html @@ -13,7 +13,7 @@ eleventyNavigation:

Hier findest du eine Übersicht aller Artikel, die ich auf dieser Webseite veröffentlicht habe.

-{% set tags = ['Matrix', 'Searx'] %} +{% set tags = ['Matrix'] %} {%- for tag in tags %}

Artikel zu {{tag}}:

@@ -28,7 +28,6 @@ eleventyNavigation: {%- endfor %} -

Gelegentlich kann es sein, dass ich die Zeit finde, einen neuen Artikel zu schreiben. Um keinen zu verpassen, folge mir gerne auf Mastodon. Dort werde ich neue Artikel oder Aktualisierungen bereits veröffentlichter Artikel posten.

diff --git a/src/de/services/firefox-sync.md b/src/de/services/firefox-sync.md deleted file mode 100644 index 696a883..0000000 --- a/src/de/services/firefox-sync.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -layout: base.njk -key: firefox-sync -title: Firefox Sync ---- -# Firefox Sync - -Nutzt du Firefox auf mehreren Geräten zum Surfen? Dann kannst du mit Firefox Sync deine Browserdaten (Lesezeichen, offene Tabs, die Suchhistorie, uvm.) zwischen all deinen Geräten synchronisieren. - -Dafür benötigst du zunächst einen Firefox-Account und musst dich auf deinen Geräten damit anmelden. Standardmäßig nutzt du dann automatisch den Sync-Service von Mozilla. Möchtest du einen anderen Server nutzen, kannst du das in den Einstellungen ändern. - -__Seit Februar 2020 biete ich einen öffentlichen Service für Firefox-Sync an.__ Gerne kannst du ihn nutzen, um deine Daten zwischen deinen Geräten zu synchronisieren. - -Tippe dafür [about:config](about:config) in die Adresszeile von Firefox und suche anschließend nach `identity.sync.tokenserver.uri` und setze den Wert auf `https://sync.firefox.sp-codes.de/token/1.0/sync/1.5`. Du nutzt nun den eingetragenen Sync-Service. - -## Weitere nützliche Links - -* [Firefox Sync](https://www.mozilla.org/de/firefox/accounts/) -* [Quellcode](https://github.com/mozilla-services/syncserver) diff --git a/src/de/services/forgejo.md b/src/de/services/forgejo.md new file mode 100644 index 0000000..e341050 --- /dev/null +++ b/src/de/services/forgejo.md @@ -0,0 +1,24 @@ +--- +layout: base.njk +key: forgejo +title: Forgejo +--- +# Forgejo + +Forgejo ist eine einfache Code-Hosting-Plattform wie GitHub oder GitLab. Sie ist opensource und wird kontinuierlich weiterentwickelt. __Seit Ende 2019 betreibe ich eine eigene Forgejo Instanz, in der ich meine Projekte verwalte.__ So zum Beispiel auch diese Webseite. Schau dir gerne mal den Quelltext an und lass mir Feedback da. + +Zusätzlich zu Forgejo betreibe ich noch Woodpecker, eine Plattform, die Forgejo um viele Continuous Integration Funktionen erweitert und beispielsweise automatisierte Builds und Deploys ermöglicht. + +Schau gerne mal vorbei und melde dich an, falls du Lust hast, ein Projekt zu entwickeln. Die Registrierung ist seit März 2020 geöffnet. + +__Zu Forgejo geht's hier lang: [git.sp-codes.de](https://git.sp-codes.de)__ + +__Wenn du bei Woodpecker vorbeischauen willst, geht das hier: [ci.sp-codes.de](https://ci.sp-codes.de)__ + + +## Weitere nützliche Links + +* [Forgejo Webseite](https://forgejo.org/) +* [Quellcode von Forgejo](https://codeberg.org/forgejo/forgejo) +* [Woodpecker Webseite](https://woodpecker-ci.org/) +* [Quellcode von Woodpecker](https://github.com/woodpecker-ci/woodpecker) diff --git a/src/de/services/gitea.md b/src/de/services/gitea.md deleted file mode 100644 index 8dcce6d..0000000 --- a/src/de/services/gitea.md +++ /dev/null @@ -1,24 +0,0 @@ ---- -layout: base.njk -key: gitea -title: Gitea ---- -# Gitea - -Gitea ist eine einfache Code-Hosting-Plattform wie GitHub oder GitLab. Sie ist opensource und wird kontinuierlich weiterentwickelt. __Seit Ende 2019 betreibe ich eine eigene Gitea Instanz, in der ich meine Projekte verwalte.__ So zum Beispiel auch diese Webseite. Schau dir gerne mal den Quelltext an und lass mir Feedback da. - -Zusätzlich zu Gitea betreibe ich noch Drone, eine Plattform, die Gitea um viele Continuous Integration Funktionen erweitert und beispielsweise automatisierte Builds und Deploys ermöglicht. - -Schau gerne mal vorbei und melde dich an, falls du Lust hast, ein Projekt zu entwickeln. Die Registrierung ist seit März 2020 geöffnet. - -__Zu Gitea geht's hier lang: [git.sp-codes.de](https://git.sp-codes.de)__ - -__Wenn du bei Drone vorbeischauen willst, geht das hier: [ci.sp-codes.de](https://ci.sp-codes.de)__ - - -## Weitere nützliche Links - -* [Gitea Webseite](https://gitea.io/en-us/) -* [Quellcode von Gitea](https://github.com/go-gitea/gitea) -* [Drone Webseite](https://drone.io/) -* [Quellcode von Drone](https://github.com/drone/drone) diff --git a/src/de/services/matrix/setup/part-1.md b/src/de/services/matrix/setup/part-1.md index 46ba2c2..dc6b9f9 100644 --- a/src/de/services/matrix/setup/part-1.md +++ b/src/de/services/matrix/setup/part-1.md @@ -168,4 +168,3 @@ Falls du jetzt schon weiter lesen willst, kann ich dir die folgenden Links empfe * [https://element.io/help](https://element.io/help) * [https://matrix.org/faq/](https://matrix.org/faq/) * [https://matrix.org/docs/guides/](https://matrix.org/docs/guides/) -* [https://www.freie-messenger.de/sys_matrix/](https://www.freie-messenger.de/sys_matrix/) diff --git a/src/de/services/ntfy.md b/src/de/services/ntfy.md new file mode 100644 index 0000000..45d71d4 --- /dev/null +++ b/src/de/services/ntfy.md @@ -0,0 +1,10 @@ +--- +layout: base.njk +key: ntfy +title: ntfy +--- +# ntfy + +## Weitere nützliche Links + +* \ No newline at end of file diff --git a/src/de/services/piped.md b/src/de/services/piped.md deleted file mode 100644 index a8f4967..0000000 --- a/src/de/services/piped.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -layout: base.njk -key: piped -title: Piped ---- -# Piped - -Piped ist ein alternatives Frontend für YouTube. -Da nur die nötigsten Verbindungen zu YouTube aufgebaut werden und viele sogar vom Server selber übernommen werden, erhöht Piped die Privatsphäre der Nutzer:innen. - -__Von Dezember 2019 bis September 2022 habe ich eine öffentliche Invidious Instanz betrieben. Diese wurde zum Oktober 2022 durch Piped ersetzt.__ Fühl dich frei, dort ein paar Videos anzuschauen. - -__Jetzt das erste Video schauen auf [piped.sp-codes.de](https://piped.sp-codes.de).__ - -## Weitere nützliche Links - -* [Liste öffentlicher Piped-Instanzen](https://github.com/TeamPiped/Piped/wiki/Instances) -* [Quellcode von Piped](https://github.com/TeamPiped/Piped) -* [Liste öffentlicher Invidious-Instanzen](https://github.com/omarroth/invidious/wiki/Invidious-Instances) diff --git a/src/de/services/searx.md b/src/de/services/searx.md deleted file mode 100644 index f35c247..0000000 --- a/src/de/services/searx.md +++ /dev/null @@ -1,27 +0,0 @@ ---- -layout: base.njk -key: searx -title: Searx ---- -# Searx - -Searx ist eine freie Metasuchmaschine, das heißt sie nutzt für die Suche öffentliche Suchmaschinen, wie Google, DuckDuckGo, StartPage und viele andere. - -Um die Privatsphäre der Benutzer:innen zu schützen, gibt Searx weder die IP-Adresse, noch die Suchhistorie an die Suchmaschinen weiter, von denen die Ergebnisse abgefragt werden. Searx selber speichert ebenfalls keine Suchanfragen oder andere Logs. Zusätzlich stellt Searx eine Vielzahl an Einstellungsmöglichkeiten bereit, beispielsweise können die Sprache und die verwendeten Suchmaschinen für jede Suchanfrage konfiguriert werden. - -Außerdem stellt Searx einen Proxy bereit, über den viele Suchergebnisse auch anonym aufgerufen werden können. Klicke dafür nicht auf den Direktlink, sondern auf `proxied` in der unteren rechten Ecke des Suchergebnisses. - -__Seit November 2019 betreibe ich eine öffentliche Searx Instanz.__ Schau gerne mal vorbei, um Antworten auf deine Fragen zu erhalten. Bei Fragen oder Problemen schreib mir gerne. - -__Hier gehts zu Searx: [searx.sp-codes.de](https://searx.sp-codes.de)__ - -Wenn du Searx als Standardsuchmaschine nutzen willst, findest du hier eine Anleitung dafür: [Nur noch Searx](/de/services/searx/setup/) - -## Weitere nützliche Links - -* [Searx Webseite](https://asciimoo.github.io/searx/) -* [Dokumentation](https://asciimoo.github.io/searx/user/index.html) -* [Standardsuchmaschine in Firefox festlegen](https://support.mozilla.org/de/kb/suchmaschinen-in-firefox-hinzufuegen-oder-entfernen) -* [Standardsuchmaschine in Chrome festlegen](https://support.google.com/chrome/answer/95426?co=GENIE.Platform%3DDesktop&hl=de) -* [Liste weiterer öffentlicher Server](https://searx.space/) -* [Quellcode von Searx](https://github.com/asciimoo/searx) diff --git a/src/de/services/searx/setup.md b/src/de/services/searx/setup.md deleted file mode 100644 index aff7ac2..0000000 --- a/src/de/services/searx/setup.md +++ /dev/null @@ -1,56 +0,0 @@ ---- -layout: article.njk -title: Nur noch Searx -service: searx -tags: - - Tutorial - - Searx - - Standardsuchmaschine - - Browser - - Firefox - - Chrome ---- - -# Nur noch Searx - -In diesem Artikel möchte ich kurz beschreiben, wie ihr Searx (oder jede beliebige andere Suchmaschine) in eurem Browser als Standard festlegen könnt. - -Zunächst nochmal eine kurze Erläuterung, was Searx eigentlich ist: Searx ist eine sogenannte Meta-Suchmaschine. Das heißt, sie nutzt andere Suchmaschinen, um ihre Ergebnisse zu einer Suchanfrage bereitzustellen. Allerdings wird nur der Suchtext selber zu den fremden Suchmaschinen weitergeleitet, wodurch diese die Anfrage keiner bestimmten Person mehr zuordnen können. Dadurch und da Searx Open-Source ist, bietet Searx mehr Privatsphäre als andere Suchmaschinen. - -Einige andere Searx-Instanzen, die du bei Interesse nutzen kannst: - -* [searx.info](https://searx.info/) -* [search.disroot.org](https://search.disroot.org/) - -Eine größere Übersicht findest du auch auf der folgenden Seite: [searx.space](https://searx.space) - -Um nun standardmäßig Searx als Suchmaschine zu nutzen, musst du Folgendes in deinem Browser einstellen: - -## Firefox - -In Firefox musst du als Erstes die Searx Webseite (z.B. [searx.sp-codes.de](https://searx.sp-codes.de)) öffnen. Jetzt kannst du am Ende der Suchleiste auf den Button mit den drei Punkten klicken und anschließend auf _Suchmaschine hinzufügen_. - -![Firefox Dropdown](/img/searx/setup/firefox-1.png) - -Wenn das erledigt ist, gehst du in die Einstellungen und wählst in der linken Leiste Suche aus. Nun kannst du im Bereich _Standardsuchmaschine_ deine Searx-Instanz aus der Liste auswählen. Das war’s. - -![Firefox Standardsuchmaschine](/img/searx/setup/firefox-2.png) - -## Chrome - -Öffne zunächst die Webseite von Searx (z.B. [searx.sp-codes.de](https://searx.sp-codes.de)) und gehe anschließend in die Browsereinstellungen. Wähle in der linken Leiste _Suchmaschine_ und dann _Suchmaschinen verwalten_. In der unteren Liste müsstest du nun Searx finden, kannst bei dem entsprechenden Eintrag auf die drei Punkte und im Menü auf _Als Standard festlegen_ klicken. Fertig. - -![Chrome Standardsuchmaschine](/img/searx/setup/chrome-1.png) - -Um deine neue Einstellung zu testen, gib einfach einen beliebigen Suchtext in die Adresszeile ein und drücke _Enter_. - -## Andere Browser - -In diesem Beitrag habe ich mich auf die beiden am häufigsten genutzten Browser beschränkt. Du kannst aber natürlich auch in vielen anderen Browsern Searx als Standardsuchmaschine festlegen. Hier habe ich die Erklärungen für ein paar andere Browser zusammen getragen: - -* [Microsoft Edge](https://support.microsoft.com/de-de/help/4556712/change-your-default-search-engine-in-microsoft-edge) -* [Safari](https://support.apple.com/de-de/guide/safari/ibrwe75c2a3c/mac) -* [Opera](https://help.opera.com/de/latest/search/) -* [Brave](https://support.brave.com/hc/en-us/articles/360017479752-How-do-I-set-my-default-search-engine-) - -Solle es in einem Browser nicht möglich sein die Standardsuchmaschine zu ändern, z.B. in Handybrowsern kannst du meistens Searx als Startseite einrichten und dann direkt dort das Suchfeld nutzen. diff --git a/src/en/services/firefox-sync.md b/src/en/services/firefox-sync.md deleted file mode 100644 index fd14f1e..0000000 --- a/src/en/services/firefox-sync.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -layout: base.njk -key: firefox-sync -title: Firefox Sync ---- -# Firefox Sync - -Do you use Firefox on more than one device for surfing? Then Firefox Sync lets you synchronize your browser data (bookmarks, open tabs, search history, and more) between all your devices. - -To do this, you first need a Firefox account and must log in to your devices. By default, you will then automatically use the Mozilla sync service. If you want to use a different server you can change this in the settings. - -__Since February 2020 I offer a public service for Firefox-Sync.__ You can use it to synchronize your data between your devices. - -Therefore type [about:config](about:config) in the Firefox address bar, search for `identity.sync.tokenserver.uri` and set the value to `https://sync.firefox.sp-codes.de/token/1.0/sync/1.5`. You are now using the entered sync service. - -## More useful links - -* [Firefox Sync](https://www.mozilla.org/de/firefox/accounts/) -* [Source code](https://github.com/mozilla-services/syncserver) diff --git a/src/en/services/forgejo.md b/src/en/services/forgejo.md new file mode 100644 index 0000000..0d466cf --- /dev/null +++ b/src/en/services/forgejo.md @@ -0,0 +1,23 @@ +--- +layout: base.njk +key: forgejo +title: Forgejo +--- +# Forgejo + +Forgejo is a simple code hosting platform like GitHub or GitLab. It is open source and under continuous development. __Since the end of 2019 I have my own Forgejo instance, to manage my projects.__ For example this website. Feel free to have a look at the source code and leave some feedback. + +In addition to Forgejo, I also run Woodpecker, a platform that extends Forgejo with many continuous integration features, such as automated builds and deploys. + +Feel free to visit and sign up if you're interested in developing a project. The registration is open since March 2020. + +__To get to Forgejo click here: [git.sp-codes.de](https://git.sp-codes.de)__ + +__If you want to check out Woodpecker, click here: [ci.sp-codes.de](https://ci.sp-codes.de)__ + +## More useful links + +* [Forgejo website](https://forgejo.org/) +* [Source code of Forgejo](https://codeberg.org/forgejo/forgejo) +* [Woodpecker Website](https://woodpecker-ci.org/) +* [Source code of Woodpecker](https://github.com/woodpecker-ci/woodpecker) diff --git a/src/en/services/gitea.md b/src/en/services/gitea.md deleted file mode 100644 index a4f83b7..0000000 --- a/src/en/services/gitea.md +++ /dev/null @@ -1,23 +0,0 @@ ---- -layout: base.njk -key: gitea -title: Gitea ---- -# Gitea - -Gitea is a simple code hosting platform like GitHub or GitLab. It is open source and under continuous development. __Since the end of 2019 I have my own Gitea instance, to manage my projects.__ For example this website. Feel free to have a look at the source code and leave some feedback. - -In addition to Gitea, I also run Drone, a platform that extends Gitea with many continuous integration features, such as automated builds and deploys. - -Feel free to visit and sign up if you're interested in developing a project. The registration is open since March 2020. - -__To get to Gitea click here: [git.sp-codes.de](https://git.sp-codes.de)__ - -__If you want to check out Drone, click here: [ci.sp-codes.de](https://ci.sp-codes.de)__ - -## More useful links - -* [Gitea website](https://gitea.io/en-us/) -* [Source code of Gitea](https://github.com/go-gitea/gitea) -* [Drone Website](https://drone.io/) -* [Source code of Drone](https://github.com/drone/drone) diff --git a/src/en/services/ntfy.md b/src/en/services/ntfy.md new file mode 100644 index 0000000..a7a2ab4 --- /dev/null +++ b/src/en/services/ntfy.md @@ -0,0 +1,10 @@ +--- +layout: base.njk +key: ntfy +title: ntfy +--- +# ntfy + +## ## More useful links + +* \ No newline at end of file diff --git a/src/en/services/piped.md b/src/en/services/piped.md deleted file mode 100644 index 1cd6960..0000000 --- a/src/en/services/piped.md +++ /dev/null @@ -1,18 +0,0 @@ ---- -layout: base.njk -key: piped -title: Piped ---- -# Piped - -Piped is an alternative YouTube-Frontend. It establishes only the most necessary connections to YouTube and many of them are even made by the server itself. So Piped increases the privacy of the users. - -__From December 2019 to September 2022, I ran a public Invidious instance. This was replaced by Piped as of October 2022.__ Feel free to watch some videos there. - -__Watch your first video on [piped.sp-codes.de](https://piped.sp-codes.de).__ - -## More useful links - -* [List of public Piped-Servers](https://github.com/TeamPiped/Piped/wiki/Instances) -* [Source code of Piped](https://github.com/TeamPiped/Piped) -* [List of public Invidious-Servers](https://github.com/omarroth/invidious/wiki/Invidious-Instances) diff --git a/src/en/services/searx.md b/src/en/services/searx.md deleted file mode 100644 index 1a33fd0..0000000 --- a/src/en/services/searx.md +++ /dev/null @@ -1,27 +0,0 @@ ---- -layout: base.njk -key: searx -title: Searx ---- -# Searx - -Searx is a free meta search engine, which uses other public search engines like Google, DuckDuckGo, StartPage and many others. - -In order to protect the privacy of the users, Searx does not give the IP address, or the search history to the search engines it retrieves the results from. Searx itself also does not store any search queries or other logs. Additionally, it offers a variety of settings, for example, the language and the search engines can be configured for each search query. - -Searx also provides a proxy through which many search results can be accessed anonymously. Instead of clicking on the direct link, use the `proxied` button in the bottom right corner of the search result. - -__Since November 2019 I run a public Searx instance.__ Feel free to check it out and get answers to your questions. If you have any questions or problems, feel free to contact me. - -Here is the link to Searx: [searx.sp-codes.de](https://searx.sp-codes.de) - -If you want to use Searx as your default search engine, you can find instructions here (German): [Nur noch Searx](/de/services/searx/setup/) - -## More useful links - -* [Searx Website](https://asciimoo.github.io/searx/) -* [Documentation](https://asciimoo.github.io/searx/user/index.html) -* [Set default search engine in Firefox](https://support.mozilla.org/en-US/kb/add-or-remove-search-engine-firefox) -* [Set default search engine in Chrome](https://support.google.com/chrome/answer/95426?co=GENIE.Platform%3DDesktop&hl=en) -* [List of other public servers](https://searx.space/) -* [Source code of Searx](https://github.com/asciimoo/searx) diff --git a/src/font/icomoon.eot b/src/font/icomoon.eot index 84f500be6522eace1c1473571a9256b4c448552d..00264ae6c1b6e1c091ca5427c41f271538c5ef38 100644 GIT binary patch delta 1887 zcmah~eP~lx6hG(P_mSk~>oqS4+S;UPlE${yHlN*0tJT`BQ*52OIw#op*-BfBcC7P* zWzXHWmYNyI0EBp4vUjqY7rGMD<#{|pe;Ke)3eGtdY1aG&r+ z!v5Y&&$eSPoBt$ylY%(Zw`)&71x_QfQP%^~YJp;?1nkcA_ksy{T}wmPV0YJ!49R8@ z>2xhZi^U*T+R6jvkR%ZU3Cs{9j)w^GRuDlZSAp=1jM0Z|1|J2EECCp==CABH9j>lb@x%>qvA*V zw7jN~H_Uov{^bRe*8lX{Yj~mdlXg@4MjI~I&SSO< z9>+FEtKDsP*)CC{m|M*i3@)Ys{VC)c>1fC%Codu`g`3;-H{M%6eHZ9g!Of zAp{8kmscuHlqNzR(Sdd>3nv$2J$f0Ip*x1DWPBlp0}c!+s#sbQ2q%+#l;wa2ZBQZc%@A1$V=EcHrq)@0$> z1Sj###7%Gvdle-eiELSrKayBj)ugIz%h2m>OC;(l%gdXJiWFB(Vft08b;TwemgEUZ zmZb?<;w9RGF>ZoMe6}hQSyZ5?YSY51#EJuc(JIy@5^Y|u%~o9!n6DJ9t8+&Rl!2AG zH|IVbq$=0Od0^voKLH3+AwsB>5~UO=PbKD#&4jHWT?O5QkwK}8G+08Xpr{_YoFrXR zxU`0Ke&l{J?HfA6Ia*TvOY{3fu~;Y=j|W!{4RHsb4f!i8{jAfsV1cjwVfp%1)sJv; zaM`@*q0Q63ah36)ZW)Z{Z{j3oD}2w6`YI}XtlL*XEdyG$adv@%EQ3b6jDRRr8|N)m z8%JAHjEgXuq}nNCf$9_zt-=Zv$WBy!SgqDDQ6)>m$Ytnim`PE@nx5$1Se!2@SyfUZ zxRjh^VT|2C#Ac!v>BIa{NoE||dcuG?r9eEnUAJT7iu~I8TN^h@>ADZnX-k2?3sw;i zAh%Ss5`W#m=WzO0(aH-#fd%JYuoOV<{G5qF1ef+5d%(`=shEvge_k5@aHYm^r^=|R z6si|`3o`L4jY@ zI{kyog;&WQuMqPPuew~Ft9YR{BD>95oknVBc;s;UcT3c#V_(#Q7UIc`QRz9f!{XHDkT;5TAQH ztkO?J@BJ!u{|H1O4NcGn8>n^m!T`L3e!Rxnxr5vd=4S`lL;j)=5H1T(#qHv#)Fypy zsy7XpuUmFn?#O9*z5JQgZryFYZS&jq+rGE2wLf;$I^K6Kab8xc6nZ^I)^YfSei8c6 M`v{Ev5x$6j0q&lXPyhe` delta 1958 zcmaJ?TWl0n7(VCBIWu!+=dzdC-Ih*wmu@=)w6?Q5-CeMSmbM_*AT{761X`};QfMeq zZebfA(C{Sg3m7nsQHY9$qz}FjL(m5_hVV*a6e1)-d{`kw64K&-whi&g&7S$se?R~K ze`jWL@XAJZWdTC!SyrO=o*aI9ws&tigeH)L{0(n((!sCcmMwS zal_-(nf1oa*cQFz5_|5BmF3^E)`!bX_MJC>r}gQ3lnV zCKS>`c={?1k?+7xWt3t}Ddi$a@nkO{1Y?4ipXyfsqh_j57moK3MhKI7PIRd=hj4IS z^bmRkg$<$gz?fKpGr|)pYl4y#SybYBWvJKnpgiDUD~JgeuBdT#BMMC>g1o4)2o-uj zr5R^wI^*l<{$^)Gd#mRz2}dNUZ|Ty5zVDf4uxOqiA6jKNreb={4v zt!-z=4xRHnoG!%4v>q9tc2`TZUP(2FBTHPjO|R1_>^!d{S!gV6aj>CF>&7jK64En> z7x@GyqLDg9E*7us-!~$gaeb!+n`uq6QJFZGLxOjoYm zH^58ly%pODF&6=-4NhRbl&r#%p~68FaacozQ^8@#O0XbIp-hpesq;GPrBdZ{4uoMV zTh9$!;|8NDWU5^UvaqP8t&3JjS+AtS7ee~fg#Cq78Ev>(;q}j^SmOvQGeFII43U2j zM=`Vo?MCm{-U7L-FIzak^CR=~#X_XhRcyIcT%+1_#cagL#6@yDuv^0w@NTh(6l-9E z!NN6KiaU#4026rR6O90yM7$+pCjyAtBsaid%R-TiB_K9HG3R9gG-6xAKGSfBCDuu2 zrf(D9cANoIOKNRteV(Z@7G^OX%SOV@G1Uf!adV!o$GJ?oVX0ABiE4IAd!U)7HeqTR z&79E8=R=N7{OQ}a^X@n?)a8mn#%bBq+f{?aj>bUrieXaxTg>-kYw^zM2{6ytPE|9T zS2k%;mBmztGp5%YM!gOh9W};ylpFO1w`GMx-?exs(VD2`gOor`ZF2gq?T`s)rW+3` zoGUZm>NZz0vQY|M!&~uJBts66 zYf?r!Ltm%gvqfxDUMwG#?<=lyOKnrH@n5u=(5E`lx9g|$AB~K0+<0c5Gk>-6RyF)t S#EFPcmw4SSnA+;y!2beg1xc&` diff --git a/src/font/icomoon.svg b/src/font/icomoon.svg index 0626486..8aa3cba 100644 --- a/src/font/icomoon.svg +++ b/src/font/icomoon.svg @@ -17,8 +17,6 @@ - - @@ -26,12 +24,16 @@ - + - + + + + + @@ -39,8 +41,10 @@ - + + + \ No newline at end of file diff --git a/src/font/icomoon.ttf b/src/font/icomoon.ttf index 0e4b48e0663d97287aaed23a19ace18cd173c7fc..e70033a474c8aa496e7858969579464881c68a34 100644 GIT binary patch delta 1907 zcmah~YiJZ#6h3F}Ja%XHHQAYL)wr+hCTkL7vd^@x@fBlJB?+jFRYBKhlq3dCA@#v7 zMWjDUAFicQDxw%GrItzrtsn;fl-LJCr4}niXu-y!4OR=bCet$$s|bY-+mcI*DM`~Lg8jd8=EXm}EpdoBt_9se1% z%ZftdXXBdjjWJkdoG^|X$BZM!VdId`<#XusJyDPDHryxO-R@29Hka=5I?oeLES|v^ zio}lZwx)c<@O=f*&yZxGh5cfdZn zE;gc%VI}Gb%%qdEup;cnsH%zOp>Rb?O{No}cVGQ|`yv#nr%;3bx zAg)e%JRP1|PZA5crtzDL)~#E_MVfL+Z0zu7g5yjfZ)8uz#OqI@)+8yU!{bS1o`vLK zs8b(gd5#iq;ae#40JPDuNLEy1%ACUDbSw{xx>g!MKPKW<_9;P=Tqv0dSJo1xR5G1O z(wu1|LW#J~kG@i0BYBtVnke~E=YEuJ1x4zSl!8s>*a#=_%*Ksy40}{H8;j*4#$$UI4CJ2lA=f>io{E_1!LR@llVeyEH=AD z)wJeWwW%e0gQ7#6lS;Mwd`@RwC_F@4`?)2Nj~_R0MLP8mI|9F-b{9Y7=$IVpr}Z3x;SXRV$^&rKy1x z<@K!dL;a;}VBi4fZprj57~d03B%+aIGO~1FfZO+YAXrlqWSxPTGXov>s#dnv-N(`V z!s+q->nHx;YLXGtGm;#?hND=h4m>^>sICsMu0XZPq0Ja(XDG=^i$hqH>a1Q!bynHy z{Wu%rX*ySxEL@jClC@Zk0{Mwr0PD1RCTiqqIe9HxJ+rB*Sf7vYN+kJEs5KN4ylPRB z8Dm!waWP3*`e6K^q%e+cJYvD3S|T3ZZ2GZbRe5dY^)+jx?40+qS-C{u1&4@xky{`- zNWWs?(>U>)=->sRM8>ISfkKi@FV|UqUlbqeU8P5*V zQ?1-;K&Fz;ph~BUZqDR_T1$sEovB2kh^29hJ-a(GUrTG9ZFXIWH3)pck_|CS=LD`S zV(O8yvWUR9woUxt_2MP+$BU%g!%JRoXDcr>#1!3LFlDS^Qb!Ia{*>bZ69?il%A}JI zZ9u^j^C|cuDMMdP-6jm32{p0eC{pjyw;t42nrQ|zFXJVz4fmwYSD}`KFRp zRw|!3T#g-%8_u9}kMn!ia@PZQgZmxNJkJHSR;BAhFTT@!{(q&v5c4zXc!xGr4B|iS CyPOyR delta 1975 zcmaJ?TWlQF89x7+b7tnu&SfvNyS|Kf*Is)jiCuek$Ge-0Cw06bkZ z&NKCed8BdVuOZc+Iq|~N-<)519Qm7s6brM*>Q5El(5DIMZ=t?Aivs;ByG6*r2ITu^ z=bk_H`d(-vzaROf6DObCUVo$O!XHuacN83+tDl-DW%3;%{v`5+=jwCE&hHiXk)Ods z&d#4)cpekQC-_$CiNbQt{V)Nio3Fyy+-q%FfiR>%3b#61td(vJwa&IaY+Y}C{m-{= zci+z4KK)?j!2`5F|6An$Sipn7W?8&5E}T2g@0_~x6KBeP!8UB&x`a7E^XIg;d67;p zzo$%!2E}kcWkm7GZn6(gABLdl2g6YGOQF`MYN}>~12&{RNLO&VnQV}QY?R67Aj*`& zTDe-Q*0w>dvJEQZP$}UW^@A)VxbmGCDL`(=j+dj+DEiIRj$H4E0K+s*YM`QL3Kb1h zt!rX2GX^V{Ax7UvJDoEIz!(!UNcGGlr4)d|_Ls)>|50;Ysw<}_D5sPw6EBYGt0y5k zFZ+mn!op_A0c32@Fh~5y%KES*O_i1SK?Cdc11t|Y+)84jg)eJd+sHz*nW!vltYU=$ zQf1ZKnlFTAeyZO)I6N5mTjB{t*|Bx&b72_RcC@K0Owa7LJlk-Edwgf*>>jJbD*FDz zgM&lAoj-Xl2q0fc(-ku@&D^npWT%$vk0-YH{*c*WGTa5hNVd{bJL-XDD*G24g;6?j z7&e6zGRZ`TrdF%(9DjCJwbg7bPnQ2-j;Rd^uQwT?pOcMbl-wXB)u(3HvtJ|G-u9%b zfgEa4)zU!)EA8`(*$8Wtov228A>?&sNI)z36&+pLb0^gC*&iXdI<-PlTM>w zsTP(S(GNk&YSLV`Odf)PiWq3!vC?*o)*VaI5$(4D!cG3hp@i|;;u=Pfs2f2%PQW&Z zmdDO8)>k|lj^tP(S?=lShVsrWTc#KbCZgz(Vt=90z4zRU@r~J-5V`JM$75>v5X^DG z3t5FLAPfKn0)yIzHuNKE+N7T!er(U+;Gm}3Uiap7M&XbC_|r#@pe;o>|H-_dschH2 zXQxH&K(O-(O6^SuYD-X@FQdCbv2;vClgU~-W`)VnU1&kM#<-?1+Y}wn_ex!?J5UZz zu~S&CAuP^xJgNOU(2Z3+?_6+V+5s&ee?4X{f04SVG_QAEYaZ*kw_NvTd4nTre#Hs> z7ZD^yj*_RzuiIaNQZZB=h@dyoTdr0TqrT>vZ)NlMktnoB7#P4YY=h+Vmz~7 zd1d7$4PDQhwvDVYlsCIZvlVc(zeTpF(2biH3LP)pygS#*IlY;#z*XzEl7ML)1?24AMaFtrb!T3JN%g6p*m zyMI@ok<@ug_XOu=r)71Tc%rALxJU}C(-N+#3GBO(j%5Zj?ep+Rq_(lN^0n*HMQ?Q+ z4r@YatM8hw&?hG~!!@zk>MVmG!2Ws|) zHMx`#LYtQchI#wGXnr=}bx0kqG_JU^*xpNivFZ6;t}uFR7c=Q|jL|U;9)a(yxe5jMdohO=>=2zGQxE6|B?NJ^P&fg;RD~ i@joQIguK4w=XL}67EvT0d8_>QX}&g~FaO!U2>$`QAxP8! diff --git a/src/font/icomoon.woff b/src/font/icomoon.woff index 82629a3fcd4f14ebb4f42279bab209d92c599418..dabcec310174a483641eed5f2e0fe2c733b5d6b7 100644 GIT binary patch delta 1965 zcmah~YiJZ#6h3F}Jd&M#O?Gw{P2Bfx)+BC{eWrCyt0s|DNmA6tT8mkqQIaT{($ojL zlpy_4N^vcXQW3>iDYdOcs1?NEuSRSUDz&ITgcfWpO0Zgrbu&FPv1*~v3un&za=&xW zJ#)3|@~f`5JKNd-fmZY~m<_%Mu!x+R2UxOvKewH1f0F)Kr}rNmJ+wKulWg1r(#xKZeRJPCo5)5n0rCa5+qIf4y&H2I0K$C~ zlh!Hxy)fKMM#w|>I2l4Zm0jc?_Vy1BQQ)_vU(x9Z;={ge>vI4R{V-c~Iy?B)Fa5b8 z+Ps=4-DglU+!@IAZzLP-h5K|m_)7U-+qdl;B-EcjjbkL~l`w$^>Hzb7xxoQCyS|aW zbQkt**_<=*7#jI>FH(yBH3I_|)DR9NNrG}nkiH-rjEzy2#gOB`Q6vE4 zRs4`5fIG-thN2sjxVyLv=jU&cGf8N8P$|I&4bTMZU;}K1EieE(U~sa0vhvRDDSpa1 zRX4S7YJ6&9>el_r`=0x|wUVY$HayA7{VNM5&HtIT%g93QXYH!?oi-ZLj%&xXquOEZ zkao~*b(@_F?P0sqrrA!|`fVF+omQvSVL4lz!f?^f3C~e`v6WN*kH%WL73E`ZTAIW> zVW%<-umP%;6DlDLDFBCC3Z{aouuHU|6{{oZm#`V#46D(Zz)U(>kCA{4!-^^f{eehI zNv0G2xa)Se$Cp79kNl@hW(@fgyor5+nbGNqQG6q1w|CoP_9PZ^Ev1{SJw2^ls3n)g z=59~MS7I_nBYVQ8-+Gd@CP^vXc6%!GEF}kHXPl!f&(Xo#`F1+F7dojKl95_W>7Rf& z2ZI68sk*%A!9?6ReM(RzD@yu-t78Nyl}u-n^vyIAphVp5LAT4@OwlfqBF*=ThAywd(ueXLDYyB4F{-IYo$sH>@ItEy5Qjg{Hg z%;u$Qaa58gBw3awWQmt(3&yw!Ch>(>G&;XRQPsBkSZe8BpJ)~rq*7gOx5d)n56o36 zRxWTxE0m#SMepoKdFpp!yF_>XIQnGL$S`#YrsGdLJL~*4BDipSPCY4|Hnd>@*#+8d~Tw z0;1Gl)LUvWO55nc`4~@A?^LruLk5Y*uoeZ16ICxZsEtfiDbfgX7`{eUrYK@#KE5lF zLzvqs7;_%NF_ zRS3Lb7I80fi$pWYmkj+BPX8vFc|oW!;q23<3ZMs1)n)|(G7ILy3(!*BI_v8^f%-Y9xs0iW}(J-RXsDTJ7yDcgoQw zfiD=mDQd`^z*U8GIaE~@68MhJ>7N`9yg>1Io`idN!Qtrb;Dx5B>?|+nJlZrPBZt#} znBrbt_r^_VBAH@n14^D=NXh3(7;{%{6~;>b7FKNM?7^AI3MWe^maMg9AA(Fppmpn7 z&wKyyVox|@P0rX2Cvf^7>$$-*GlWLNvEq&JtSG%oy_8NOJKt`|x?a$CAnIfVgFA}m zNL8MNp9akAt$$54c|A19lxVtJ U^ilsS{X6uf!*Yy$85zaD0b>r9{{R30 delta 2034 zcmaJ?OKclO7@mK2W_M@34?os+9vj<SPM z|G(M&^2Tp&$UMGldYS;ir~hUWi&mXL^COyR?7C^VLI~(6+$YINIv?LNH**MOv&f&7 zbmqau-UnvpQASm4kMM=fK7EY~~*6L6&Y9gNOBAL$B&;R>X1p{>PQ>DFND zSnI>q=dJUK>o)9F8`Ee@%FfI{%~G&W}MrdN&5-guyyM# zqD0;8ZeF5OOTadZ2E}l9FrxTm8`*)`haf2W!4MSva!Kn^HC4000UOdDq^n47CL81+ z8)mXO2s7nUy;7^!>f=zajze_}s%4}RKgdFYE5C{10_3)Ac{Usg!)GS9FV)T8q(>Y@Rj4>gD)Q)bZlmbw==BY9LKWeT^b@j*u<&<(| z;>l5c)J0hWgxZslU5g)eJd-N-_- znXn>jtYL)#uF8tHDPJg=`N>{y*U&)VZ;U4tWy_{b50^@TZHMbSO6h&uEYCJv;qKpB zJ$9YdW)*$^#({ys7Y-df5d@I0rs=Yom}2f|U$R}x^~Mt$eSgqwGa2rJU^rXts_*r{ zGL`G+9feUku^ZNxC}fg}HchS7&hCF`R<+e^Jx`X#tx>fhVReQP`Yl;UM#vY0qGVD8qTpqveMPn36-rIH%>AZOoZVr#oj`rbNh)WjL0gJ& ze%(B+scd@3LsO!@GuV1JrS^IRwIwLdm(gvYSUMg=lZUl*JQW^>PNN0o8snP6Y*Vy3 zSCqO~bD$iYV!NYm?^prbX`r)JExtPwo}W;PsPloLHAXq+1~kC^S!pemfrPd zd4nTr9_NJqNd!rez2tuKbo3S|7fY%GA#^9YE46B3#MfMPKwhJ0x^gyhWbz{U!{A4_ zLf)@U&{_mG94ua=O)yd$MVR1UCDVnl$)x)dZYIR2J!&TowjmYSR0d-s6w5&oK_jJDCaA9|tW?HCBSdN}lwWQ(Z zj9(1fHWqB7VAuY!Sz~(-8S6U~&DXxt2laE}OJgPWl1a_G&8N&yt%7yL`pZ6H mf9F)3R{Z6Jmyn+?`MT{Vzaom{Bfl#DKF#xe`ce?Q3jY8w2TJMy diff --git a/src/font/icomoon.woff2 b/src/font/icomoon.woff2 index 3475206f26a65d8e8811175fdc480eb033de6cb6..df1139e238d604952e613d7fbfd46f4cc52b0367 100644 GIT binary patch literal 5684 zcmV-47R%{(Pew8T0RR9102VX=4*&oF04vM@02SE)0RR9100000000000000000000 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 g4S@MK{$TL3m zl)Q()H_2ntd!4b2Lm+ry<7Cmem%rk0$X`{rt4z-q@k4!mb#?K0X!RwR#GLadNd{?4 z8yiBo_nxezJEp54fP$MyJA9PQGAcxn(UoaCEHL1sIgtV8%>MYg&pzw#rl_s~cy54C zQF*D)Ka0mx_c5S6r34`H1<1VLjMI6jJe$7gyOqlH8Kt@!*H3d_o?DK6!?}Z7q6d2< z`&U^^X0yp+_L{|CwW`BpZhvM2^MHO-{{XW=|4fWc2jJSjAcvM2^(J?E`x~BCZ)*TV z;+kV35mc1r=Lya?nZ=eDcOigy-6A%d&KF!T^0eR@ld>{q?=67f5@n*vyux{MdGlrJ z{`rcQ0E*#<4&^E3Y~AEUB3m~xnV4nF7}0rKQyWrS&&#~P8{pl5!jA8#iS}CldUlPL z)oL0wYYM9&{PK4XJ>&^^1_x_v_Ol}Uv|Yp&XEF~mU8nYRl&0=?>*qy!_x%J?Y+F-n zvzY>>W|RjX%pM6q@EF^dMl9=Oi$dPD20G5ljghLo&2l+vRS~0{)6<5v-cXS%=Brxh zO|g#&z*C=9$QotuzIWbx@5V!|KnT`lIVm8t$69De;uujcKeJ+{!qDTwd*y{O9ebit z=he+@o*-``$84})?iyruF$hP0zW(~>9LhQSw0%yw_#9DlDsk$fi-Lu&$N}E9SR8s- zeA7YeU``V?o3YK@;UnEjM=LX{vAtOENJqb+KEE68p40g8mX0!M>x*G_a%@Y|$tiSrzsq;iu_G+u>ys1}dT=MK|XwCrF3oHi$&HT<-#ogTO=gx@$ zLY@V_`qM3V0{200`BWvC_W(i!A2+#_w+`8Yc)3EL(3U~#_FI)MQ%(2nukmC}?B|#a zN!(Tw(xkWS-{jrBqdu9#BY9Z6Mx`0hV#ln>=It#K&7*2FkX9aTwj_@!`n3&s-sMj# z+PCf~$|U>^7yl zUk&fBIOB>d3RZHzP8?oSB$2deQSztm>Mprmz!(^Odbo{gXJ#gBRredDs!9*U6qU`J zz{0|MZoFxo?#h!oY$WFl)*SuJBu`;@8{Uffz|e<&TpiPDW13`FK0R#@Pd;?|s<{om zS2|^-zmg&XKH}_I*1FFa@W($27LUmvhgE_1@#P)xZcP9H{=2UcKSCHh%_2@xHkAiX zx}fteKpd+x0B)>DGzai;o(ri&1u>DubE-pG8Orc`LE2_zc3E7XCSl=|dm0C4=Z7yq z*sTUB+y;n$sQ~Ca!oZGjh#&%*M)E)e+ZewF=hsl6fme2BAwr0xjtOC)LO8e(0o+I) z}t+8&!G3(Q|J+@<@qCV6tasYfu$$FoLx2U3b z;y?AfnKmf-KRAQ|hH$_k2eiP7S*KF9dX3Utgpf)bre!;>=aW;&p_D7n3My(ETKNj- z=rIh8Ow25-Z0rha>-Y}0}2KX0SN^iJ8Ca) a`2!SEX{mBk)6*{E%C~8$a3F5eqWJ)|^6BLO literal 5780 zcmV;F7HjEuPew8T0RR9102Y)04FCWD04pp202Vv|0RR9100000000000000000000 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 S5U%J#ANHLmgz%=K0RRALi%f6; diff --git a/src/scss/icons/style.scss b/src/scss/icons/style.scss index 1299c7a..b0d54a9 100644 --- a/src/scss/icons/style.scss +++ b/src/scss/icons/style.scss @@ -2,11 +2,12 @@ @font-face { font-family: '#{$icomoon-font-family}'; - src: url('#{$icomoon-font-path}/#{$icomoon-font-family}.eot?hi4hah'); - src: url('#{$icomoon-font-path}/#{$icomoon-font-family}.eot?hi4hah#iefix') format('embedded-opentype'), - url('#{$icomoon-font-path}/#{$icomoon-font-family}.ttf?hi4hah') format('truetype'), - url('#{$icomoon-font-path}/#{$icomoon-font-family}.woff?hi4hah') format('woff'), - url('#{$icomoon-font-path}/#{$icomoon-font-family}.svg?hi4hah##{$icomoon-font-family}') format('svg'); + src: url('#{$icomoon-font-path}/#{$icomoon-font-family}.eot?2zy46l'); + src: url('#{$icomoon-font-path}/#{$icomoon-font-family}.eot?2zy46l#iefix') format('embedded-opentype'), + url('#{$icomoon-font-path}/#{$icomoon-font-family}.woff2?2zy46l') format('woff2'), + url('#{$icomoon-font-path}/#{$icomoon-font-family}.woff?2zy46l') format('woff'), + url('#{$icomoon-font-path}/#{$icomoon-font-family}.ttf?2zy46l') format('truetype'), + url('#{$icomoon-font-path}/#{$icomoon-font-family}.svg?2zy46l##{$icomoon-font-family}') format('svg'); font-weight: normal; font-style: normal; font-display: block; @@ -22,6 +23,16 @@ text-transform: none; line-height: 1; + /* Enable Ligatures ================ */ + letter-spacing: 0; + -webkit-font-feature-settings: "liga"; + -moz-font-feature-settings: "liga=1"; + -moz-font-feature-settings: "liga"; + -ms-font-feature-settings: "liga" 1; + font-feature-settings: "liga"; + -webkit-font-variant-ligatures: discretionary-ligatures; + font-variant-ligatures: discretionary-ligatures; + /* Better Font Rendering =========== */ -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; @@ -47,183 +58,225 @@ font-size: 4em; } +.i-cloud-download { + &:before { + content: $i-cloud-download; + } +} + +.i-pencil-square { + &:before { + content: $i-pencil-square; + } +} + .i-pixelfed { &:before { - content: $i-pixelfed; + content: $i-pixelfed; } } + .i-server { &:before { - content: $i-server; + content: $i-server; } } + .i-credit-card { &:before { - content: $i-credit-card; + content: $i-credit-card; } } + .i-external-link { &:before { - content: $i-external-link; + content: $i-external-link; } } + .i-heart { &:before { - content: $i-heart; + content: $i-heart; } } + .i-home { &:before { - content: $i-home; + content: $i-home; } } + .i-tags { &:before { - content: $i-tags; + content: $i-tags; } } + .i-comments { &:before { - content: $i-comments; + content: $i-comments; } } + .i-users { &:before { - content: $i-users; + content: $i-users; } } + .i-bars { &:before { - content: $i-bars; + content: $i-bars; } } + .i-envelope { &:before { - content: $i-envelope; - } -} -.i-language { - &:before { - content: $i-language; + content: $i-envelope; } } + .i-user-secret { &:before { - content: $i-user-secret; + content: $i-user-secret; } } + .i-heartbeat { &:before { - content: $i-heartbeat; + content: $i-heartbeat; } } + .i-commenting { &:before { - content: $i-commenting; + content: $i-commenting; } } + +.i-linkedin { + &:before { + content: $i-linkedin; + } +} + +.i-xing { + &:before { + content: $i-xing; + } +} + .i-peertube { &:before { - content: $i-peertube; + content: $i-peertube; } } + .i-network-wired { &:before { - content: $i-network-wired; + content: $i-network-wired; } } + .i-money-bill { &:before { - content: $i-money-bill; + content: $i-money-bill; } } + .i-chart-line { &:before { - content: $i-chart-line; + content: $i-chart-line; } } + .i-info-circle { &:before { - content: $i-info-circle; + content: $i-info-circle; } } + .i-code { &:before { - content: $i-code; + content: $i-code; } } + .i-xmpp { &:before { - content: $i-xmpp; + content: $i-xmpp; } } + .i-wifi { &:before { - content: $i-wifi; - } -} -.i-youtube { - &:before { - content: $i-youtube; - } -} -.i-twitter { - &:before { - content: $i-twitter; + content: $i-wifi; } } + .i-threema { &:before { - content: $i-threema; + content: $i-threema; } } + .i-stackoverflow { &:before { - content: $i-stackoverflow; + content: $i-stackoverflow; } } + .i-search { &:before { - content: $i-search; + content: $i-search; } } + .i-mastodon { &:before { - content: $i-mastodon; + content: $i-mastodon; } } + .i-hand-holding-heart { &:before { - content: $i-hand-holding-heart; + content: $i-hand-holding-heart; } } + .i-github { &:before { - content: $i-github; - } -} -.i-gitea { - &:before { - content: $i-gitea; + content: $i-github; } } + .i-firefox { &:before { - content: $i-firefox; + content: $i-firefox; } } + .i-copyright { &:before { - content: $i-copyright; + content: $i-copyright; } } + .i-book { &:before { - content: $i-book; + content: $i-book; } } + .i-matrix { &:before { - content: $i-matrix; + content: $i-matrix; } } + +.i-git { + &:before { + content: $i-git; + } +} + diff --git a/src/scss/icons/variables.scss b/src/scss/icons/variables.scss index 35d9aec..5af319c 100644 --- a/src/scss/icons/variables.scss +++ b/src/scss/icons/variables.scss @@ -1,6 +1,8 @@ $icomoon-font-family: "icomoon" !default; $icomoon-font-path: "fonts" !default; +$i-cloud-download: "\e916"; +$i-pencil-square: "\e913"; $i-pixelfed: "\e90f"; $i-server: "\e901"; $i-credit-card: "\e902"; @@ -12,10 +14,11 @@ $i-comments: "\f086"; $i-users: "\f0c0"; $i-bars: "\f0c9"; $i-envelope: "\f0e0"; -$i-language: "\f1ab"; $i-user-secret: "\f21b"; $i-heartbeat: "\f21e"; $i-commenting: "\f27a"; +$i-linkedin: "\e919"; +$i-xing: "\e91a"; $i-peertube: "\e918"; $i-network-wired: "\e903"; $i-money-bill: "\e904"; @@ -24,16 +27,14 @@ $i-info-circle: "\e906"; $i-code: "\e907"; $i-xmpp: "\e908"; $i-wifi: "\e909"; -$i-youtube: "\e90a"; -$i-twitter: "\e90b"; $i-threema: "\e90c"; $i-stackoverflow: "\e90d"; $i-search: "\e90e"; $i-mastodon: "\e910"; $i-hand-holding-heart: "\e911"; $i-github: "\e912"; -$i-gitea: "\e913"; $i-firefox: "\e914"; $i-copyright: "\e915"; -$i-book: "\e916"; +$i-book: "\e91b"; $i-matrix: "\e900"; +$i-git: "\eae7"; From bb4e10e442d5f0a3c6abfd8b8e3ead6617c0e7be Mon Sep 17 00:00:00 2001 From: Samuel Philipp Date: Fri, 14 Jul 2023 23:56:25 +0200 Subject: [PATCH 8/8] more major updates --- package.json | 10 ++--- src/_data/expenses.json | 69 ++++++++++------------------- src/_data/strings.json | 4 ++ src/_includes/expenses-current.html | 4 +- src/de/donate.html | 24 +++++----- src/de/services/etherpad.md | 17 +++++++ src/de/services/ntfy.md | 9 +++- src/en/services/etherpad.md | 17 +++++++ src/en/services/ntfy.md | 11 ++++- 9 files changed, 98 insertions(+), 67 deletions(-) create mode 100644 src/de/services/etherpad.md create mode 100644 src/en/services/etherpad.md diff --git a/package.json b/package.json index 2fcdd61..41fc09d 100644 --- a/package.json +++ b/package.json @@ -25,11 +25,11 @@ "@sardine/eleventy-plugin-tinyhtml": "^0.2.0", "cpx": "^1.5.0", "eleventy-plugin-rev": "^1.1.1", - "eleventy-sass": "^2.2.1", - "glob": "^10.3.0", - "minify": "^10.2.0", - "postcss": "^8.4.24", - "sass": "^1.63.5", + "eleventy-sass": "^2.2.3", + "glob": "^10.3.3", + "minify": "^10.3.0", + "postcss": "^8.4.26", + "sass": "^1.63.6", "uncss": "^0.17.3" }, "dependencies": { diff --git a/src/_data/expenses.json b/src/_data/expenses.json index 6da82d2..4efd13f 100644 --- a/src/_data/expenses.json +++ b/src/_data/expenses.json @@ -1,4 +1,25 @@ [ + { + "name": "Services", + "type": "Dedicated Server", + "provider": "Hetzner", + "location": "Falkenstein", + "amount": 75.8 + }, + { + "name": "Monitoring", + "type": "Cloud Server", + "provider": "Hetzner", + "location": "Nürnberg", + "amount": 4.51 + }, + { + "name": "Backup", + "type": "Storage Box", + "provider": "Hetzner", + "location": "Helsinki", + "amount": 3.81 + }, { "name": { "en": "Websites", @@ -6,51 +27,7 @@ }, "type": "Webhosting", "provider": "netcup", - "amount": 1.99 - }, - { - "name": "Diana", - "type": "VPS", - "provider": "Hetzner", - "amount": 2.96 - }, - { - "name": "Ceres", - "type": "VPS", - "provider": "netcup", - "amount": 5.5 - }, - { - "name": "Venus", - "type": "VPS", - "provider": "netcup", - "amount": 3.33 - }, - { - "name": "Luna", - "type": "Root-Server", - "provider": "netcup", - "amount": 14 - }, - { - "name": "Vesta", - "type": "Root-Server", - "provider": "netcup", - "amount": 11.49 - }, - { - "name": "Backup", - "type": "Storage Box", - "provider": "Hetzner", - "amount": 5.83 - }, - { - "name": { - "en": "Additional IPv4", - "de": "Zusätzliche IPv4" - }, - "type": "IPv4", - "provider": "netcup", - "amount": 1 + "location": "Nürnberg", + "amount": 2.17 } ] diff --git a/src/_data/strings.json b/src/_data/strings.json index 244dd09..fa99388 100644 --- a/src/_data/strings.json +++ b/src/_data/strings.json @@ -75,6 +75,10 @@ "de": "Anbieter", "en": "Provider" }, + "location": { + "de": "Standort", + "en": "Location" + }, "month": { "de": "Monat", "en": "Month" diff --git a/src/_includes/expenses-current.html b/src/_includes/expenses-current.html index 542e1b9..8e20df0 100644 --- a/src/_includes/expenses-current.html +++ b/src/_includes/expenses-current.html @@ -5,6 +5,7 @@ {{strings.name[locale]}} {{strings.type[locale]}} {{strings.provider[locale]}} + {{strings.location[locale]}} {{strings.amount[locale]}} / {{strings.month[locale]}} {{strings.amount[locale]}} / {{strings.year[locale]}} @@ -19,6 +20,7 @@ {% endif %} {{expense.type}} {{expense.provider}} + {{expense.location}} {{expense.amount | amount}} € {{expense.amount | year | amount}} € @@ -26,7 +28,7 @@ - {{strings.total[locale]}} + {{strings.total[locale]}} {{expenses | sum | amount}} € {{expenses | sum | year | amount}} € diff --git a/src/de/donate.html b/src/de/donate.html index fc44e75..321f460 100644 --- a/src/de/donate.html +++ b/src/de/donate.html @@ -44,26 +44,26 @@ eleventyNavigation:
-

netcup

-
Einige meiner Dienste hoste ich bei netcup. Wenn - du einen eigenen Server oder eine Webseite bei netcup betreiben willst, kannst du gerne den folgenden - Link (auf dem Bild) nutzen. Dadurch erhalte ich bei deiner Bestellung eine kleine Provision. Falls du - ein Neukunde bist, erhältst du einen 5 € Gutschein für deine Bestellung. +

Hetzner

+
Fast alle meiner Dienste hoste ich bei Hetzner. + Wenn du einen eigenen Server in der Hetzner-Cloud betreiben willst, kannst du gerne den folgenden Link + nutzen. Dadurch erhalte ich bei deiner Bestellung eine kleine Provision. Falls du ein Neukunde bist, + erhältst du 20 € Startguthaben bei deiner Bestellung.
-

Hetzner

-
Einige meiner Dienste hoste ich auch bei Hetzner. Wenn - du einen eigenen Server in der Hetzner-Cloud betreiben willst, kannst du gerne den folgenden - Link nutzen. Dadurch erhalte ich bei deiner Bestellung eine kleine Provision. Falls du - ein Neukunde bist, erhältst du 20 € Startguthaben bei deiner Bestellung. +

netcup

+
Auch netcup nutze ich gelegentlich für kleinere + Projekte. Wenn du einen eigenen Server oder eine Webseite bei netcup betreiben willst, kannst du gerne + den folgenden Link nutzen. Dadurch erhalte ich bei deiner Bestellung eine kleine Provision. Falls du + ein Neukunde bist, erhältst du einen 5 € Gutschein für deine Bestellung.
diff --git a/src/de/services/etherpad.md b/src/de/services/etherpad.md new file mode 100644 index 0000000..4a143ec --- /dev/null +++ b/src/de/services/etherpad.md @@ -0,0 +1,17 @@ +--- +layout: base.njk +key: etherpad +title: Etherpad +--- +# Etherpad + +Etherpad ist eine webbasierte Kollaborationsplattform, die es Benutzern ermöglicht, Textdokumente in Echtzeit gemeinsam zu bearbeiten. Mehrere Benutzer können zeitgleich auf dasselbe Etherpad-Dokument zugreifen, Änderungen vornehmen und sehen, was Andere schreiben. Etherpad bietet eine einfache und effektive Möglichkeit für Teamarbeit, Brainstorming, gemeinsames Schreiben und vieles mehr, ohne dass dabei Versionskonflikte auftreten. + +Etherpad ist auch in Jitsi Meet eingebungen. So können während einem Meeting gemeinsame Notizen festgehalten werden. + +__Seit Ende 2020 betreibe ich Etherpad: [https://pad.sp-codes.de](https://pad.sp-codes.de)__ Gerne kannst du Etherpad auch für deine Notizen verwenden. + +## Weitere nützliche Links + +* [Etherpad Webseite](https://etherpad.org) +* [Quellcode von Etherpad](https://github.com/ether/etherpad-lite) diff --git a/src/de/services/ntfy.md b/src/de/services/ntfy.md index 45d71d4..da54f21 100644 --- a/src/de/services/ntfy.md +++ b/src/de/services/ntfy.md @@ -5,6 +5,13 @@ title: ntfy --- # ntfy +ntfy ist ein vielseitiges Tool zur Benachrichtigung über verschiedene Ereignisse. Es unterstützt auch UnifiedPush, ein offenes Protokoll für Echtzeitbenachrichtigungen. + +Um ntfy als zentrale App für Benachrichtigungen nutzen zu können, muss zunächst die App auf dem Handy installiert werden. Anschließend können Apps die UnifiedPush unterstützen, z.B. Element, Fluffychat oder Tusky ntfy als Push-Provider nutzen. Dadurch müssen nicht alle Apps eine Verbindung zum Server offen halten und sind dadurch auch energieeffizienter. Damit du meinen Server nutzen kannst, musst du diesen zunächst in den Einstellungen hinterlegen. + +__Seit Mai 2023 stelle ich ntfy zur freien Verfügung: [https://ntfy.sp-codes.de](https://ntfy.sp-codes.de)__ Gerne kannst du ntfy als Push-Provider für deine Apps nutzen, wenn du möchtest. + ## Weitere nützliche Links -* \ No newline at end of file +* [ntfy Webseite](https://ntfy.sh) +* [Quellcode von ntfy](https://github.com/binwiederhier/ntfy) diff --git a/src/en/services/etherpad.md b/src/en/services/etherpad.md new file mode 100644 index 0000000..214694c --- /dev/null +++ b/src/en/services/etherpad.md @@ -0,0 +1,17 @@ +--- +layout: base.njk +key: etherpad +title: Etherpad +--- +# Etherpad + +Etherpad is a web-based collaboration platform that allows users to edit text documents together in real time. Multiple users can simultaneously access the same Etherpad document, make changes, and see what others are writing. Etherpad provides a simple and effective way for teamwork, brainstorming, collaborative writing, and more, without version conflicts. + +Etherpad is also embedded in Jitsi Meet. This allows for shared notes to be captured during a meeting. + +__I've been running Etherpad since the end of 2020: [https://pad.sp-codes.de](https://pad.sp-codes.de)__ Feel free to use Etherpad for your notes as well. + +## More useful links + +* [Etherpad Webseite](https://etherpad.org) +* [Quellcode von Etherpad](https://github.com/ether/etherpad-lite) diff --git a/src/en/services/ntfy.md b/src/en/services/ntfy.md index a7a2ab4..4bb0362 100644 --- a/src/en/services/ntfy.md +++ b/src/en/services/ntfy.md @@ -5,6 +5,13 @@ title: ntfy --- # ntfy -## ## More useful links +ntfy is a versatile tool for notification about various events. It also supports UnifiedPush, an open protocol for real-time notifications. -* \ No newline at end of file +To use ntfy as a central app for notifications, the app must first be installed on the phone. Then, apps that support UnifiedPush, such as Element, Fluffychat or Tusky can use ntfy as a push provider. This way, not all apps need to keep a connection open to the server and are more energy efficient as a result. In order for you to use my server, you must first set it up in the settings. + +__Since May 2023 I provide ntfy for free: [https://ntfy.sp-codes.de](https://ntfy.sp-codes.de)__ You are welcome to use ntfy as push provider for your apps if you like. + +## More useful links + +* [ntfy Website](https://ntfy.sh) +* [Sourcecode of ntfy](https://github.com/binwiederhier/ntfy)