From d2968d8007bcdad8e06b2b35f43039184410e512 Mon Sep 17 00:00:00 2001 From: Malte Brandy Date: Fri, 28 Jan 2022 16:27:43 +0100 Subject: [PATCH] Add watchfeeds and news command --- home-manager/roles/hotkeys.nix | 3 +- home-manager/roles/leisure.nix | 55 ++++++++++++++++++---------------- home-manager/roles/state.nix | 2 +- 3 files changed, 33 insertions(+), 27 deletions(-) diff --git a/home-manager/roles/hotkeys.nix b/home-manager/roles/hotkeys.nix index 947ebee7..aa451e98 100644 --- a/home-manager/roles/hotkeys.nix +++ b/home-manager/roles/hotkeys.nix @@ -65,7 +65,8 @@ in Browser = fork "firefox"; "Private Browser" = fork "firefox --private-window"; Chromium = fork "chromium"; - Watchfeeds = "newsboat -r"; + Watchfeeds = "watchfeeds"; + News = "news"; Games = { Steam = fork "steam"; Minecraft = fork "minecraft-launcher"; diff --git a/home-manager/roles/leisure.nix b/home-manager/roles/leisure.nix index 0f75c042..2690da30 100644 --- a/home-manager/roles/leisure.nix +++ b/home-manager/roles/leisure.nix @@ -15,34 +15,39 @@ let EOF ''; + watchfeedsConfig = '' + datetime-format "%Y-%m-%d" + cleanup-on-quit no + ''; + watchfeeds = [ + # Haskell + "https://www.youtube.com/feeds/videos.xml?channel_id=UCI1Z201n-8OelkSg0DVOsng" # Tweag + "https://www.youtube.com/feeds/videos.xml?channel_id=UCxVE_2I_fsOe3Mgn_QlXqbQ" # Nomeata + + "http://www.zdf.de/rss/podcast/video/zdf/comedy/die-anstalt" + + "https://www.zdf.de/rss/zdf/show/mai-think-x-die-show" + "https://www.youtube.com/feeds/videos.xml?channel_id=UCyHDQ5C6z1NDmJ4g6SerW8g" # Mailab + + "https://www.youtube.com/feeds/videos.xml?channel_id=UC2C_jShtL725hvbm1arSV9w" # GCP Grey + + "https://www.youtube.com/feeds/videos.xml?channel_id=UCpXBGqwsBkpvcYjsJBQ7LEQ" # Critical Role + "exec:${serien}" + ]; + newsConfig = '' + ${watchfeedsConfig} + urls-source "ocnews" + ocnews-url "https://cloud.maralorn.de" + ocnews-login "maralorn" + ocnews-password "${(pkgs.privateValue { adminpass =""; } "nextcloud-admin").adminpass}" + ''; in { + xdg.configFile."newsboat/urls".text = lib.concatStringsSep "\n" watchfeeds; home = { - file = { - "newsboat-config" = { - target = ".newsboat/config"; - text = "datetime-format \"%Y-%m-%d\""; - }; - "newsboat-urls" = { - target = ".newsboat/urls"; - text = lib.concatStringsSep "\n" [ - # Haskell - "https://www.youtube.com/feeds/videos.xml?channel_id=UCI1Z201n-8OelkSg0DVOsng" # Tweag - "https://www.youtube.com/feeds/videos.xml?channel_id=UCxVE_2I_fsOe3Mgn_QlXqbQ" # Nomeata - - "http://www.zdf.de/rss/podcast/video/zdf/comedy/die-anstalt" - - "https://www.zdf.de/rss/zdf/show/mai-think-x-die-show" - "https://www.youtube.com/feeds/videos.xml?channel_id=UCyHDQ5C6z1NDmJ4g6SerW8g" # Mailab - - "https://www.youtube.com/feeds/videos.xml?channel_id=UC2C_jShtL725hvbm1arSV9w" # GCP Grey - - "https://www.youtube.com/feeds/videos.xml?channel_id=UCpXBGqwsBkpvcYjsJBQ7LEQ" # Critical Role - "exec:${serien}" - ]; - }; + packages = builtins.attrValues { + news = pkgs.writeShellScriptBin "news" "${pkgs.newsboat}/bin/newsboat -r -C ${builtins.toFile "news-config" newsConfig}"; + watchfeeds = pkgs.writeShellScriptBin "watchfeeds" "${pkgs.newsboat}/bin/newsboat -r -C ${builtins.toFile "watchfeeds-config" watchfeedsConfig}"; }; - - packages = builtins.attrValues rec { inherit (pkgs) newsboat; }; }; } diff --git a/home-manager/roles/state.nix b/home-manager/roles/state.nix index 8c56e35a..38f87d94 100644 --- a/home-manager/roles/state.nix +++ b/home-manager/roles/state.nix @@ -20,9 +20,9 @@ let ".local/share/khal" ".local/share/mpd" ".local/share/waydroid" + ".local/share/newsboat" ".mozilla/firefox/maralorn-default" ".minecraft" - ".newsboat" ".ssh" ".task" ".vdirsyncer"