1
0
mirror of https://github.com/kmein/niveum synced 2026-03-16 10:11:08 +01:00

catullus: proverb bot, autorenkalender bot

This commit is contained in:
Kierán Meinhardt
2019-04-14 23:39:05 +02:00
parent 11e322e275
commit 470eba7c8e
7 changed files with 68 additions and 7 deletions

View File

@@ -7,6 +7,7 @@ let
todoist = pkgs.callPackage <packages/todoist> {};
spotify-cli-linux = pkgs.python3Packages.callPackage <packages/spotify-cli-linux.nix> {};
instaloader = pkgs.python3Packages.callPackage <packages/instaloader.nix> {};
autorenkalender = pkgs.callPackage <packages/autorenkalender.nix> {};
haskells = import <dot/haskells.nix>;
unstable = import <nixos-unstable> {};
executables = pkgs.haskell.lib.justStaticExecutables;
@@ -196,6 +197,7 @@ in with pkgs;
aspellDicts.en
aspellDicts.la
bvg
autorenkalender
daybook
gnupg
jo

View File

@@ -124,9 +124,6 @@ let
scripts.nix-git = unstable.writers.writeDashBin "nix-git" ''
${pkgs.nix-prefetch-git}/bin/nix-prefetch-git "$@" 2> /dev/null | ${pkgs.jq}/bin/jq -r '"rev = \"\(.rev)\";\nsha256 = \"\(.sha256)\";"'
'';
scripts.autorenkalender = unstable.writers.writeDashBin "autorenkalender" ''
${pkgs.curl}/bin/curl -s https://gutenberg.spiegel.de | ${pkgs.gnused}/bin/sed -n '/Autorenkalender/,/<\/div>/p' | ${pkgs.html2text}/bin/html2text | ${pkgs.coreutils}/bin/tail +2
'';
scripts.n = unstable.writers.writeDashBin "n" ''
nix-shell -p "''${2:-$1}" --run "$1"
'';

View File

@@ -81,7 +81,7 @@ in {
niveum-deploy() {
for system in "$@"; do
eval $(nix-build ~niveum/deploy.nix -A "$system") &
eval $(nix-build ~niveum/deploy.nix -A "$system")
done
}
'';

View File

@@ -7,7 +7,8 @@ nnoremap <C-p> :FZF<CR>
let g:fzf_layout = { 'down': '~15%' }
" colorscheme delek hipster
colorscheme 256_noir
" colorscheme 256_noir
colorscheme paramount
let mapleader = ","
" let maplocalleader="\\"

View File

@@ -0,0 +1,7 @@
{ writeShellScriptBin, w3m, gnused }:
writeShellScriptBin "autorenkalender" ''
${w3m}/bin/w3m -dump https://gutenberg.spiegel.de/ \
| ${gnused}/bin/sed -n '/Autorenkalender/,//p' \
| head -n -2 \
| tail -n +3
''

View File

@@ -0,0 +1,27 @@
{ fetchFromGitHub, buildPythonApplication, buildPythonPackage, fetchPypi, aiohttp, urllib3, pillow, beautifulsoup4 }:
let
telepot =
buildPythonPackage rec {
pname = "telepot";
version = "12.7";
src = fetchPypi {
inherit pname version;
sha256 = "1c587dmr71ppray0lzxgib1plnndmaiwal1kaiqx82rdwx4kw4ms";
};
propagatedBuildInputs = [ aiohttp urllib3 ];
doCheck = false;
};
in buildPythonApplication rec {
pname = "telegram-proverb";
version = "0.1.0";
# src = ~/prog/git/proverb-pro;
src = fetchFromGitHub {
owner = "kmein";
repo = "proverb-pro";
rev = "356460f5c542e8f5735c3e3eb5a356a04faf48df";
sha256 = "02psipiyvs126b67xkqd72sfjixanrvlg02w3pn2wpc0miy5v0v3";
};
propagatedBuildInputs = [ telepot pillow beautifulsoup4 ];
}

View File

@@ -1,12 +1,31 @@
{ config, pkgs, ... }:
{ config, pkgs, lib, ... }:
let
telegram-reverse = pkgs.python3Packages.callPackage <packages/telegram-reverse.nix> {};
telegram-betacode = pkgs.python3Packages.callPackage <packages/telegram-betacode.nix> {};
telegram-horoscope = pkgs.python3Packages.callPackage <packages/telegram-horoscope.nix> {};
# telegram-horoscope = pkgs.python3Packages.callPackage <packages/telegram-horoscope.nix> {};
telegram-proverb = pkgs.python3Packages.callPackage <packages/telegram-proverb.nix> {};
autorenkalender = pkgs.callPackage <packages/autorenkalender.nix> {};
in {
containers.telegram-bots = {
autoStart = true;
config = {
systemd.services.autorenbot = {
enable = true;
startAt = "07:00";
serviceConfig.Type = "oneshot";
wantedBy = [ "multi-user.target" ];
environment = {
TELEGRAM_AUTORENKALENDER_CHAT = "18980945";
TELEGRAM_AUTORENKALENDER_TOKEN = lib.strings.removeSuffix "\n" (builtins.readFile <secrets/telegram-kmein.token>);
};
script = ''
TELEGRAM_ENDPOINT="https://api.telegram.org/bot$TELEGRAM_AUTORENKALENDER_TOKEN"
${pkgs.curl}/bin/curl -s \
-X POST "$TELEGRAM_ENDPOINT/sendMessage" \
-d chat_id="$TELEGRAM_AUTORENKALENDER_CHAT" \
-d text="$(${autorenkalender}/bin/autorenkalender)"
'';
};
systemd.services.telegram-reverse = {
wantedBy = [ "multi-user.target" ];
description = "Telegram bot for reversing things";
@@ -23,6 +42,14 @@ in {
script = ''${telegram-betacode}/bin/telegram-betacode'';
serviceConfig.Restart = "always";
};
systemd.services.telegram-proverb = {
wantedBy = [ "multi-user.target" ];
description = "Telegram bot for generating inspiring but useless proverbs";
environment.TELEGRAM_PROVERB_TOKEN = builtins.readFile <secrets/telegram-proverb.token>;
enable = true;
script = ''${telegram-proverb}/bin/proverb_bot.py'';
serviceConfig.Restart = "always";
};
# systemd.services.telegram-horoscope = {
# wantedBy = [ "multi-user.target" ];
# description = "Telegram bot for generating horoscope charts";