diff --git a/machines/renge/services/invidious/default.nix b/machines/renge/services/invidious/default.nix
index b996692..4ce13b5 100644
--- a/machines/renge/services/invidious/default.nix
+++ b/machines/renge/services/invidious/default.nix
@@ -44,15 +44,6 @@
https_only = lib.mkForce true;
registration_enabled = false;
- banner = ''
-
-
Deprecation notice
-
- This service will no longer be publicly available after 2024-09-27.
- Read more
-
-
- '';
# this can be removed
# when this service is re-deployed on a host with state version ≥ 24.05
@@ -74,7 +65,6 @@
'';
locations = {
"/robots.txt".return = "200 'User-agent: *\\nDisallow: /'";
- "/privacy".return = "301 'https://sbruder.xyz/#privacy'";
"/feed/popular".return = "403"; # leaks data about its users
};
};
diff --git a/machines/renge/services/sbruder.xyz/blocks.nix b/machines/renge/services/sbruder.xyz/blocks.nix
deleted file mode 100644
index 3f99a03..0000000
--- a/machines/renge/services/sbruder.xyz/blocks.nix
+++ /dev/null
@@ -1,63 +0,0 @@
-# SPDX-FileCopyrightText: 2023 Simon Bruder
-#
-# SPDX-License-Identifier: AGPL-3.0-or-later
-
-# I don’t do this, because I want to.
-# I think I might have to do this because of § 8.2 of Hetzner’s ToS.
-{ config, lib, ... }:
-let
- serviceBlocks = {
- nitter = [
- { path = "/ks1v/status/1439866313476689924"; report = "2023-04-21-Hetzner-C591581F-ROSKOMNADZOR.txt"; }
- ];
- iv = [
- { video = "NR57D2UVqm4"; report = "2023-04-28-Hetzner-C633C02D-ROSKOMNADZOR.txt"; }
- ];
- libreddit = [
- ];
- };
-in
-{
- services.nginx.virtualHosts = lib.mapAttrs'
- (domain: blocks: lib.nameValuePair "${domain}.sbruder.xyz" {
- locations = lib.listToAttrs
- (map
- (block:
- let
- # workaround for nginx dropping parent headers
- # see https://github.com/yandex/gixy/blob/master/docs/en/plugins/addheaderredefinition.md
- parentHeaders = lib.concatStringsSep "\n" (lib.filter
- (lib.hasPrefix "add_header ")
- (lib.splitString "\n" config.services.nginx.commonHttpConfig));
- transparency_url = "https://sbruder.xyz/transparency/${block.report}";
- return_statement = ''
- ${parentHeaders}
- add_header Link "<${transparency_url}>; rel=blocked-by" always;
- add_header Content-Type text/html always;
- return 451 '451 Unavailable For Legal Reasons451 Unavailable For Legal Reasons
Transparency
nginx';
- '';
- path =
- if block ? "path"
- then block.path
- else
- (if block ? "video"
- then "/" # not pretty, but I don’t know how to do this differently
- else throw "invalid block");
- location_block =
- if block ? "video"
- then {
- extraConfig = ''
- if ($arg_v = ${block.video}) {
- ${return_statement}
- }
- '';
- }
- else { extraConfig = return_statement; };
- in
- lib.nameValuePair
- path
- location_block)
- blocks);
- })
- serviceBlocks;
-}
diff --git a/machines/renge/services/sbruder.xyz/default.nix b/machines/renge/services/sbruder.xyz/default.nix
index ecc6b73..57120a2 100644
--- a/machines/renge/services/sbruder.xyz/default.nix
+++ b/machines/renge/services/sbruder.xyz/default.nix
@@ -5,10 +5,6 @@
{ config, pkgs, ... }:
{
- imports = [
- ./blocks.nix
- ];
-
services.nginx.virtualHosts."sbruder.xyz" = {
root = pkgs.stdenvNoCC.mkDerivation {
name = "sbruder.xyz";
diff --git a/machines/renge/services/sbruder.xyz/index.md b/machines/renge/services/sbruder.xyz/index.md
index c1250b1..2d1673e 100644
--- a/machines/renge/services/sbruder.xyz/index.md
+++ b/machines/renge/services/sbruder.xyz/index.md
@@ -4,32 +4,26 @@ SPDX-FileCopyrightText: 2022-2024 Simon Bruder
SPDX-License-Identifier: CC-BY-SA-4.0
-->
-On this domain, the following services are currently available:
-
- * [Invidious](https://iv.sbruder.xyz) ([deprecated](#deprecation))
-
-## Deprecation
+## End of life
Because of the increasing hostility of YouTube,
-the public availability of the Invidious service will be discontinued after **2024-09-27**.
+the public availability of the Invidious service was discontinued on **2024-09-27**.
Registration of new accounts is disabled since **2024-08-22**.
Access by unauthenticated users is disabled since **2024-08-28**.
+All accounts which did not explicitly opt out were deleted on **2024-09-29**.
-If you have an account,
-please export/transfer your data using the built-in functionality of Invidious.
-All accounts will be deleted within 30 days after the discontinuation.
-You may also delete your account yourself until 2024-09-27.
-Should you request your account to be retained, I might do so at my discretion.
+This information site is scheduled to be deleted in late Q4 2024.
## History
-Previously, the following services were also available:
+Previously, the following services were also publicly available:
+ * [Invidious](https://iv.sbruder.xyz)
* [Libreddit](https://libreddit.sbruder.xyz)
* [Nitter](https://nitter.sbruder.xyz)
They are no longer offered,
-as both Twitter (which no longer exists in its previous form) and Reddit
+as Twitter (which no longer exists in its previous form), Reddit, and YouTube
have become extremely hostile to third party applications,
which made them unreliable and forced the developers (at least for Libreddit)
to discontinue development.
@@ -38,40 +32,10 @@ The recommended migration path is to use alternative hosted instances
( has been mostly working at the time of writing this)
or discontinue usage of that platform.
-
-## A Note to Copyright Holders
-
-The services are only relaying content that is otherwise already available on the Internet.
-If your rights are infringed by content available from this site,
-please report this to the site originally making it available.
-Otherwise the content will still be available on the Internet.
-
-If you still want to report illegal content to me instead of the original site,
-you can contact me by the means specified in the imprint.
-Please don’t send letters by snail mail if you want a fast response.
-
-
## Imprint
See [Imprint](/imprint/).
-## Privacy
-
-If you log in to an Invidious account,
-the data you provide to the service will be stored.
-You can export or delete that data by using its built-in data control feature.
-
-In the case of an error, details of the problematic request might be stored on the server
-and used strictly for debugging and fixing the error.
-
-## Transparency
-
-For transparency reasons,
-you can find all take down requests [here](/transparency/).
-
-I was not sure if the reported content could be seen as violating Hetzner’s ToS,
-and therefore complied, even though I don’t want to support the authority asking for removal.
-
#### Fine Print