mirror of
https://github.com/kmein/niveum
synced 2026-03-22 21:01:07 +01:00
Compare commits
8 Commits
70414128e5
...
2a761efc90
| Author | SHA1 | Date | |
|---|---|---|---|
| 2a761efc90 | |||
| f320afd838 | |||
| 345fd8159c | |||
| daef8b79d4 | |||
| 6cdfdaf703 | |||
| eca981e5c9 | |||
| 2fee6ae34b | |||
| 6c96c792f0 |
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"url": "https://github.com/NixOS/nixpkgs.git",
|
||||
"rev": "20b3d65d34eea0070c991ce169f06d600ec6e1fd",
|
||||
"date": "2021-06-06T11:40:58+01:00",
|
||||
"path": "/nix/store/3a18iv748mdfhyy602f5z6s1ig0q3qi8-nixpkgs",
|
||||
"sha256": "1ja09aifii2n8yzrrv1pjfvp5396iw0fknmhdv7zg3551xkm5385",
|
||||
"rev": "0fe6e98a780eb71c109d3c526ad95d2c996ca020",
|
||||
"date": "2021-06-10T17:45:20+00:00",
|
||||
"path": "/nix/store/7vh9895ga884ilqarr76a81cf8xd8z0b-nixpkgs",
|
||||
"sha256": "07kl0q47d1j1bbpvhrqv053rxzlml9rim94chn2h6dbizlm8zzs0",
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
"leaveDotGit": false
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"url": "https://github.com/NixOS/nixpkgs.git",
|
||||
"rev": "5de44c15758465f8ddf84d541ba300b48e56eda4",
|
||||
"date": "2021-06-05T20:40:48+01:00",
|
||||
"path": "/nix/store/p5mhp3syp0aqkcrwmf8zi3ik7mgxrlgx-nixpkgs",
|
||||
"sha256": "05darjv3zc5lfqx9ck7by6p90xgbgs1ni6193pw5zvi7xp2qlg4x",
|
||||
"rev": "60cce7e5e1fdf62421ef6d4184ee399b46209366",
|
||||
"date": "2021-06-09T01:18:50-04:00",
|
||||
"path": "/nix/store/fixgn194626rb7gf99l9jaqm0hbqn2ix-nixpkgs",
|
||||
"sha256": "100xrb925cana1kfd0c7gwkjjalq891vfgr0rn1gl9j8gp3l3gx6",
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
"leaveDotGit": false
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"url": "https://github.com/nix-community/NUR",
|
||||
"rev": "cbef2d5d75291b088ed99f406740c35e04d249ac",
|
||||
"date": "2021-06-06T08:25:05+00:00",
|
||||
"path": "/nix/store/jvfzn3bpm9sb51190cs76ja592cpwndr-NUR",
|
||||
"sha256": "1il1pvr916v09jds1fvkrxmb6kazz6gag7n06ssvyvk474hyai9z",
|
||||
"rev": "e6524bff585f2278fa6d91a462ec8cd6a622975c",
|
||||
"date": "2021-06-10T16:52:18+00:00",
|
||||
"path": "/nix/store/hrskf3q0cl1lr2l462ackapgvazjdj12-NUR",
|
||||
"sha256": "0vbgx2dn8c674k3bn76n387841zqws7lvnw28wcd2anszdkkh0p9",
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
"leaveDotGit": false
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"url": "https://github.com/krebs/retiolum",
|
||||
"rev": "3652bf20b4afcf781d102197518543a6d7ef6236",
|
||||
"date": "2021-06-01T19:32:16+02:00",
|
||||
"path": "/nix/store/b6xw7b7m87g9w92ah3iq7i5627758fp6-retiolum",
|
||||
"sha256": "0nbi2wf9clbfpr8333xncsa7g2bfdwc0ypxs7d3kn9xjkf2xd048",
|
||||
"rev": "1767b1ed502059a3fad18f91f5e143c73d562d8e",
|
||||
"date": "2021-06-09T11:32:18+02:00",
|
||||
"path": "/nix/store/98kaxcbfs1fxa5ccaf41fc2imkjrvcqf-retiolum",
|
||||
"sha256": "056p14jnzvbvgvxwmqvk8qx8cfdddrrz6dvlj2glwfbzay640ld6",
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
"leaveDotGit": false
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"url": "https://cgit.krebsco.de/stockholm",
|
||||
"rev": "a461078f13d01693c0da08eb9fd53612b68170eb",
|
||||
"date": "2021-06-05T11:49:57+02:00",
|
||||
"path": "/nix/store/sc22zck9cz08vjhdi5z129ggmwabs5zj-stockholm",
|
||||
"sha256": "0khm0hk8badrrj0s68sg568q1g74y66i1930x1xwyakhc2qb5xca",
|
||||
"rev": "44c4cb6a453f5bc34c870caa6802548c099e9435",
|
||||
"date": "2021-06-08T22:52:43+02:00",
|
||||
"path": "/nix/store/9fsqfikw17y19i3xab2zbvsgzlqhhicx-stockholm",
|
||||
"sha256": "1r6fdv4bq8kl28bifxfz3sapj8fv1qd83szrsk0i6b8zlbwdkr1z",
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
"leaveDotGit": false
|
||||
|
||||
@@ -7,13 +7,10 @@
|
||||
py.pyls-black
|
||||
py.pyls-isort
|
||||
py.flake8
|
||||
py.flask
|
||||
py.pygments
|
||||
py.docopt
|
||||
py.schema
|
||||
py.ansicolors
|
||||
py.virtualenv
|
||||
]))
|
||||
pkgs.python3Packages.poetry
|
||||
];
|
||||
|
||||
home-manager.users.me.xdg.configFile."pycodestyle".text = ''
|
||||
|
||||
@@ -4,58 +4,56 @@ let
|
||||
telebots-package = pkgs.fetchFromGitHub {
|
||||
owner = "kmein";
|
||||
repo = "telebots";
|
||||
rev = "b4276155114ee96cd3f320e361e52952ea700db6";
|
||||
sha256 = "08rp1pcisk4zzhxdlgrlhxa0sbza5qhxa70rjycg4r7fmixkkbz2";
|
||||
rev = "22931c9457e092c4e413555dbe61819d77844246";
|
||||
sha256 = "0byp3w6li3fin7ry0ki4rmgkaajdil424y5pc1j7ci9mpws0s5ik";
|
||||
};
|
||||
in {
|
||||
reverse =
|
||||
pkgs.python3Packages.callPackage "${telebots-package}/telegram-reverse"
|
||||
{ };
|
||||
odyssey =
|
||||
pkgs.python3Packages.callPackage "${telebots-package}/telegram-odyssey"
|
||||
{ };
|
||||
betacode =
|
||||
pkgs.python3Packages.callPackage "${telebots-package}/telegram-betacode"
|
||||
{ };
|
||||
};
|
||||
in pkgs.callPackage telebots-package {};
|
||||
reverseDirectory = "/run/telegram-reverse";
|
||||
proverbDirectory = "/run/telegram-proverb";
|
||||
inherit (import <niveum/lib>) tmpfilesConfig;
|
||||
in {
|
||||
imports = [
|
||||
./literature-quote.nix
|
||||
./autorenkalender.nix
|
||||
./proverb.nix
|
||||
./nachtischsatan.nix
|
||||
./tlg-wotd.nix
|
||||
<niveum/modules/telegram-bot.nix>
|
||||
];
|
||||
|
||||
systemd.services.telegram-odyssey = {
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
description = "Telegram bot reciting the Odyssey to you";
|
||||
environment.TELEGRAM_ODYSSEY_TOKEN =
|
||||
lib.strings.fileContents <system-secrets/telegram/odyssey.token>;
|
||||
enable = true;
|
||||
script = "${telebots.odyssey}/bin/telegram-odyssey";
|
||||
serviceConfig.Restart = "always";
|
||||
};
|
||||
systemd.tmpfiles.rules = map (path: tmpfilesConfig {
|
||||
type = "d";
|
||||
mode = "0750";
|
||||
age = "1h";
|
||||
inherit path;
|
||||
}) [ reverseDirectory proverbDirectory ];
|
||||
|
||||
systemd.services.telegram-reverse = {
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
description = "Telegram bot for reversing things";
|
||||
environment.TELEGRAM_REVERSE_TOKEN =
|
||||
lib.strings.fileContents <system-secrets/telegram/reverse.token>;
|
||||
description = "Telegram reverse bot";
|
||||
path = [ pkgs.ffmpeg ];
|
||||
environment.TELEGRAM_BOT_TOKEN = lib.strings.fileContents <system-secrets/telegram/reverse.token>;
|
||||
enable = true;
|
||||
script = "${telebots.reverse}/bin/telegram-reverse";
|
||||
script = "${telebots}/bin/telegram-reverse";
|
||||
serviceConfig.Restart = "always";
|
||||
serviceConfig.WorkingDirectory = reverseDirectory;
|
||||
};
|
||||
|
||||
systemd.services.telegram-betacode = {
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
description =
|
||||
"Telegram bot for converting Ancient Greek betacode into unicode";
|
||||
environment.TELEGRAM_BETACODE_TOKEN =
|
||||
lib.strings.fileContents <system-secrets/telegram/betacode.token>;
|
||||
description = "Telegram beta code bot";
|
||||
environment.TELEGRAM_BOT_TOKEN = lib.strings.fileContents <system-secrets/telegram/betacode.token>;
|
||||
enable = true;
|
||||
script = "${telebots.betacode}/bin/telegram-betacode";
|
||||
script = "${telebots}/bin/telegram-betacode";
|
||||
serviceConfig.Restart = "always";
|
||||
};
|
||||
|
||||
systemd.services.telegram-proverb = {
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
description = "Telegram proverb bot";
|
||||
environment.TELEGRAM_BOT_TOKEN = lib.strings.fileContents <system-secrets/telegram/proverb.token>;
|
||||
enable = true;
|
||||
script = "${telebots}/bin/telegram-proverb";
|
||||
serviceConfig.Restart = "always";
|
||||
serviceConfig.WorkingDirectory = proverbDirectory;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -4,24 +4,20 @@ let
|
||||
pkgs.writers.writePython3 "nachtischsatan-bot" {
|
||||
libraries = [ pkgs.python3Packages.python-telegram-bot ];
|
||||
} ''
|
||||
from telegram.ext import Updater, MessageHandler
|
||||
from telegram.ext.filters import Filters
|
||||
import random
|
||||
import time
|
||||
|
||||
from telegram.ext import Updater, MessageHandler
|
||||
from telegram.ext.filters import Filters
|
||||
|
||||
|
||||
def flubber(bot, update):
|
||||
def flubber(update, context):
|
||||
time.sleep(random.randrange(4000) / 1000)
|
||||
update.message.reply_text("*flubberflubber*")
|
||||
|
||||
|
||||
updater = Updater(
|
||||
'${token}'
|
||||
)
|
||||
updater = Updater('${token}')
|
||||
|
||||
updater.dispatcher.add_handler(MessageHandler(Filters.all, flubber))
|
||||
|
||||
updater.start_polling()
|
||||
updater.idle()
|
||||
'';
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
{ pkgs, lib, ... }:
|
||||
let
|
||||
proverb-bot-package = pkgs.fetchFromGitHub {
|
||||
owner = "kmein";
|
||||
repo = "proverb-pro";
|
||||
rev = "f4201c5419354377a26b7f7873368683efbea417";
|
||||
sha256 = "1ixffmxy3sxy2if7fd44ps451rds14hnz4d0x9nkh8lzshqk6v4y";
|
||||
};
|
||||
telegram-proverb = pkgs.python3Packages.callPackage proverb-bot-package { };
|
||||
in {
|
||||
systemd.services.telegram-proverb = {
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
description = "Telegram bot for generating inspiring but useless proverbs";
|
||||
environment.TELEGRAM_PROVERB_TOKEN =
|
||||
lib.strings.fileContents <system-secrets/telegram/proverb.token>;
|
||||
enable = true;
|
||||
script = "${telegram-proverb}/bin/proverb_bot.py";
|
||||
serviceConfig.Restart = "always";
|
||||
};
|
||||
}
|
||||
@@ -7,6 +7,8 @@
|
||||
url = "http://prism.r/realwallpaper-krebs-stars-berlin.png";
|
||||
};
|
||||
|
||||
users.users.fetchWallpaper.isSystemUser = true;
|
||||
|
||||
services.xserver = {
|
||||
display = lib.mkForce 0; # needed for fetchWallpaper to find the X display
|
||||
displayManager.sessionCommands = "${pkgs.xorg.xhost}/bin/xhost +LOCAL:";
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
{
|
||||
networking.wireless = {
|
||||
enable = true;
|
||||
interfaces = [ "wlp3s0" ];
|
||||
userControlled.enable = true;
|
||||
networks = {
|
||||
"Aether" = {
|
||||
|
||||
@@ -92,6 +92,14 @@ in {
|
||||
units = "metric";
|
||||
};
|
||||
}
|
||||
{
|
||||
block = "custom";
|
||||
interval = 60 * 60;
|
||||
command = pkgs.writers.writeDash "vax" ''
|
||||
${pkgs.curl}/bin/curl -sSL https://api.corona-zahlen.org/vaccinations \
|
||||
| ${pkgs.jq}/bin/jq -r '"💉 Ⅰ \(.data.quote * 100)% Ⅱ \(.data.secondVaccination.quote * 100)%"'
|
||||
'';
|
||||
}
|
||||
{
|
||||
block = "custom";
|
||||
interval = 30;
|
||||
|
||||
Reference in New Issue
Block a user