valkyrie: add web archive and steamladder curl request timer
This commit is contained in:
parent
f4107f214a
commit
5da0de61a1
|
@ -16,6 +16,9 @@
|
||||||
sops.secrets.spotify-client-secret = {};
|
sops.secrets.spotify-client-secret = {};
|
||||||
sops.secrets.youtube-api = {};
|
sops.secrets.youtube-api = {};
|
||||||
sops.secrets.certs = {};
|
sops.secrets.certs = {};
|
||||||
|
sops.secrets.steamladder-api = {};
|
||||||
|
sops.secrets.webarchive-accesskey = {};
|
||||||
|
sops.secrets.webarchive-secretkey = {};
|
||||||
|
|
||||||
services.openssh.hostKeys = [
|
services.openssh.hostKeys = [
|
||||||
{
|
{
|
||||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -3,6 +3,9 @@ discord-token: ENC[AES256_GCM,data:JQ/6MJvBlJpKzs/L0hFB1LPpQSfJvDdEB6YerVZyDqGo7
|
||||||
spotify-client-id: ENC[AES256_GCM,data:WK7CJGw6mtIG3Jfp59cWx3ool4z1P09TvHcpbOQ2JV0=,iv:EaJ5ecXdmx0Ky+43xZITM811IOo4EisvPSyogXrJXng=,tag:NYTI4vLsWGa695CJ+TIgbw==,type:str]
|
spotify-client-id: ENC[AES256_GCM,data:WK7CJGw6mtIG3Jfp59cWx3ool4z1P09TvHcpbOQ2JV0=,iv:EaJ5ecXdmx0Ky+43xZITM811IOo4EisvPSyogXrJXng=,tag:NYTI4vLsWGa695CJ+TIgbw==,type:str]
|
||||||
spotify-client-secret: ENC[AES256_GCM,data:TnR+zLLklTfzMdR4woaZWuMVJQ9VIYsFM588GRO6WCY=,iv:cYiqw8ZdMgLeug4ptwPV3L+MeY6xIldfUBfiYg1mFD8=,tag:YDLh6BXFcBHnpdgM7e87wg==,type:str]
|
spotify-client-secret: ENC[AES256_GCM,data:TnR+zLLklTfzMdR4woaZWuMVJQ9VIYsFM588GRO6WCY=,iv:cYiqw8ZdMgLeug4ptwPV3L+MeY6xIldfUBfiYg1mFD8=,tag:YDLh6BXFcBHnpdgM7e87wg==,type:str]
|
||||||
youtube-api: ENC[AES256_GCM,data:qmpFlFvudS9rXQfN+Th/UrPWCW0mg5GkpMucS/01AmOnlChqtojC,iv:q3bKwI2I6BNa3L9ezKCE1fWT/vZLiJ8uzug1z2z+TWA=,tag:gKG3HTz8jp2LAFh8e8O6sg==,type:str]
|
youtube-api: ENC[AES256_GCM,data:qmpFlFvudS9rXQfN+Th/UrPWCW0mg5GkpMucS/01AmOnlChqtojC,iv:q3bKwI2I6BNa3L9ezKCE1fWT/vZLiJ8uzug1z2z+TWA=,tag:gKG3HTz8jp2LAFh8e8O6sg==,type:str]
|
||||||
|
steamladder-api: ENC[AES256_GCM,data:m30o5atqugwqn/WbXGkUq5GvqiIKQT0kSRQCtHc1Gxk/dC3YcbDvMw==,iv:duLKl1NvysD0XMaUOkl/6nclMQB6seXcQYkGMrm7K7Y=,tag:9dw+UH10uAdca5fVdlw1Mg==,type:str]
|
||||||
|
webarchive-accesskey: ENC[AES256_GCM,data:jdKlHsZq2Dkk1BcBfUVv5g==,iv:BXCgPb/2W57PYXxRktInz1LxSEwlw6m3xnQU4TOPMeY=,tag:kK4+InaH7K4D4n1hyGaR+w==,type:str]
|
||||||
|
webarchive-secretkey: ENC[AES256_GCM,data:nuA9G5dNtrNfbcx0G/GUTg==,iv:RRuTm4kZr5dNjBt9Zvk/NVefHCZYODmRvWAqZizKGJY=,tag:J2V0Q3BzXNWifVVvAkwYyg==,type:str]
|
||||||
certs: ENC[AES256_GCM,data:ttmSNTTx51a3L2HTC8RnSphDLHO2OSyIgXQ0YpZGySTdu69mgEyhaiSi+IAXg/1AHKRjpFJgE4fhsLAiW78pNYb+Zg7aDL47YtABO99sTZrZnBxZo6k6itpZ3oClDch2ZALzoXChLroc0tUbZKwsfOwGe3pw9lOJZJT34AhV+BVoXDDLQcpQoxz23Baa8oxklecT6wpJ1u1nW+aAHw33gm41Vw==,iv:b0aNZwaRKBg+ipe5+19BowyFbCjZt52S738om6emYGo=,tag:lUqtcc4vVWKx/fnc19vj7A==,type:str]
|
certs: ENC[AES256_GCM,data:ttmSNTTx51a3L2HTC8RnSphDLHO2OSyIgXQ0YpZGySTdu69mgEyhaiSi+IAXg/1AHKRjpFJgE4fhsLAiW78pNYb+Zg7aDL47YtABO99sTZrZnBxZo6k6itpZ3oClDch2ZALzoXChLroc0tUbZKwsfOwGe3pw9lOJZJT34AhV+BVoXDDLQcpQoxz23Baa8oxklecT6wpJ1u1nW+aAHw33gm41Vw==,iv:b0aNZwaRKBg+ipe5+19BowyFbCjZt52S738om6emYGo=,tag:lUqtcc4vVWKx/fnc19vj7A==,type:str]
|
||||||
sops:
|
sops:
|
||||||
kms: []
|
kms: []
|
||||||
|
@ -19,8 +22,8 @@ sops:
|
||||||
d2dMUUh1RDB3UnpEdFJsNHpQRXFWemMKc41dlOapTsvH91QLNhdPbrzerPFakOiX
|
d2dMUUh1RDB3UnpEdFJsNHpQRXFWemMKc41dlOapTsvH91QLNhdPbrzerPFakOiX
|
||||||
J/uoZDMIhsmQxgQM7Fqxr05NywhI/ZjOtJS2bayp73O57xjjMYcyNQ==
|
J/uoZDMIhsmQxgQM7Fqxr05NywhI/ZjOtJS2bayp73O57xjjMYcyNQ==
|
||||||
-----END AGE ENCRYPTED FILE-----
|
-----END AGE ENCRYPTED FILE-----
|
||||||
lastmodified: "2024-03-23T14:02:11Z"
|
lastmodified: "2024-04-05T22:42:16Z"
|
||||||
mac: ENC[AES256_GCM,data:wMQCs0h/FOEe9zzaTJxrBqQh1KgEgr5J7tdBTIr4frUAUtsD6SCXQ0keVUQ1J5DYEKDTqFbXvM1IetwSKipfKscTbSt1u3hpe30f4EWqTZKRrJtJaiVozJSZ667YWRQu1uWv5VDGXfC4tosejUyJsVUkUEYDqLKEv3z/y3eNa80=,iv:i2PX9y4J1EbASCnbG1XVo+RcxbFV9VOwyRg+DKcUyVc=,tag:6BQkD8ikUHfHI4KhiC5UJA==,type:str]
|
mac: ENC[AES256_GCM,data:KSRGzHipb58uNYaRYXAy3y+D9cBG53RGxZpNrx2gy+CHbGtkUW1SWc4PPrBwBhb6+TN0vb1zHuOB4HK4Bys/jqmvGgVkO2VKj15MTFMpF5n6w0blFM7d5bCDydHAhvXEZA/PFWq97DTI1Zxb+N/HWJlefKCzYOHHWj7i4leKNjk=,iv:88Ekp0sjEo5UTBLUyYSrkP+MbIFcCmegclJIK3+0jOQ=,tag:H/ESeQhC1PEF00RiDnamyw==,type:str]
|
||||||
pgp:
|
pgp:
|
||||||
- created_at: "2024-03-21T22:55:36Z"
|
- created_at: "2024-03-21T22:55:36Z"
|
||||||
enc: |-
|
enc: |-
|
||||||
|
|
|
@ -5,11 +5,13 @@
|
||||||
./pleroma.nix
|
./pleroma.nix
|
||||||
./pihole.nix
|
./pihole.nix
|
||||||
./dcbot.nix
|
./dcbot.nix
|
||||||
|
./saveyoursoul.nix
|
||||||
];
|
];
|
||||||
services.adguardhome.enable = true;
|
services.adguardhome.enable = true;
|
||||||
|
|
||||||
valkyrieService.pihole.enable = false;
|
valkyrieService.pihole.enable = false;
|
||||||
valkyrieService.pleroma.enable = true;
|
valkyrieService.pleroma.enable = true;
|
||||||
valkyrieService.dcbot.enable = true;
|
valkyrieService.dcbot.enable = true;
|
||||||
|
valkyrieService.saveyoursoul.enable = true;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,75 @@
|
||||||
|
{ config, pkgs, lib, materusArg, ... }:
|
||||||
|
{
|
||||||
|
options.valkyrieService.saveyoursoul.enable = materusArg.pkgs.lib.mkBoolOpt false "Enable saveyoursoul, web archive";
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
config =
|
||||||
|
let
|
||||||
|
cfg = config.valkyrieService.saveyoursoul;
|
||||||
|
in
|
||||||
|
lib.mkIf cfg.enable {
|
||||||
|
systemd.timers.saveyoursoul = {
|
||||||
|
wantedBy = [ "timers.target" ];
|
||||||
|
timerConfig = {
|
||||||
|
OnCalendar = "*-*-1,7,14,21 3:00:00";
|
||||||
|
Persistent = true;
|
||||||
|
Unit = "saveyoursoul.service";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.saveyoursoul = {
|
||||||
|
description = "Make curl requests to archive related things";
|
||||||
|
path = [ pkgs.coreutils pkgs.util-linux pkgs.curl ];
|
||||||
|
serviceConfig.Type = "oneshot";
|
||||||
|
serviceConfig.RemainAfterExit = false;
|
||||||
|
script = ''
|
||||||
|
STEAM_IDS=( ${ builtins.foldl' (x: y: x +"\""+ y + "\" ") "" materusArg.to_save.steamids })
|
||||||
|
EXTRA_LINKS=( ${ builtins.foldl' (x: y: x +"\""+ y + "\" ") "" materusArg.to_save.extraLinks })
|
||||||
|
|
||||||
|
steamladder() {
|
||||||
|
for id in ''${STEAM_IDS[@]}; do
|
||||||
|
curl -X POST -H "Authorization: Token ''$(cat ${config.sops.secrets.steamladder-api.path})" \
|
||||||
|
"https://steamladder.com/api/v1/profile/$id/"
|
||||||
|
done;
|
||||||
|
}
|
||||||
|
|
||||||
|
webarchive(){
|
||||||
|
for id in ''${STEAM_IDS[@]}; do
|
||||||
|
curl -X POST -H "Accept: application/json" \
|
||||||
|
-H "Authorization: LOW ''$(cat ${config.sops.secrets.webarchive-accesskey.path}):''$(cat ${config.sops.secrets.webarchive-secretkey.path})" \
|
||||||
|
-d"url=https://steamcommunity.com/profiles/$id" \
|
||||||
|
-d"capture_outlinks=1" \
|
||||||
|
-d"capture_screenshot=on" \
|
||||||
|
-d"capture_all=on" \
|
||||||
|
"https://web.archive.org/save";
|
||||||
|
sleep 180;
|
||||||
|
done;
|
||||||
|
|
||||||
|
|
||||||
|
for link in ''${EXTRA_LINKS[@]}; do
|
||||||
|
curl -X POST -H "Accept: application/json" \
|
||||||
|
-H "Authorization: LOW ''$(cat ${config.sops.secrets.webarchive-accesskey.path}):''$(cat ${config.sops.secrets.webarchive-secretkey.path})" \
|
||||||
|
-d"url=$link" \
|
||||||
|
-d"capture_outlinks=1" \
|
||||||
|
-d"capture_screenshot=on" \
|
||||||
|
-d"capture_all=on" \
|
||||||
|
"https://web.archive.org/save";
|
||||||
|
sleep 180;
|
||||||
|
done;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
steamladder &
|
||||||
|
webarchive
|
||||||
|
wait
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue