add hoyolab-daily-bot
This commit is contained in:
parent
175063afd1
commit
f18c545d4d
65
flake.lock
generated
65
flake.lock
generated
@ -69,7 +69,9 @@
|
||||
},
|
||||
"cassowary": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_2"
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1681399212,
|
||||
@ -366,10 +368,30 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hoyolab-daily-bot": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1683056534,
|
||||
"narHash": "sha256-KS6tyrZUrtyMFY5tI0EDcagjwErHY/I1GDSecxbQ3jc=",
|
||||
"owner": "AtaraxiaSjel",
|
||||
"repo": "hoyolab-daily-bot",
|
||||
"rev": "184e85c286e7049014f0ce47016afb49426b2f16",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "AtaraxiaSjel",
|
||||
"repo": "hoyolab-daily-bot",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland": {
|
||||
"inputs": {
|
||||
"hyprland-protocols": "hyprland-protocols",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"wlroots": "wlroots",
|
||||
"xdph": "xdph"
|
||||
},
|
||||
@ -500,7 +522,7 @@
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat",
|
||||
"lowdown-src": "lowdown-src",
|
||||
"nixpkgs": "nixpkgs_4",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"nixpkgs-regression": "nixpkgs-regression"
|
||||
},
|
||||
"locked": {
|
||||
@ -543,7 +565,7 @@
|
||||
"nix-direnv": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_4",
|
||||
"nixpkgs": "nixpkgs_5"
|
||||
"nixpkgs": "nixpkgs_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1680521329,
|
||||
@ -640,11 +662,11 @@
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1665466769,
|
||||
"narHash": "sha256-L+qcHpb4Ac3PipMXJY/Ktbu1+KXy23WCZ8pXWmsf7zY=",
|
||||
"lastModified": 1672580127,
|
||||
"narHash": "sha256-3lW3xZslREhJogoOkjeZtlBtvFMyxHku7I/9IVehhT8=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "0b20bf89e0035b6d62ad58f9db8fdbc99c2b01e8",
|
||||
"rev": "0874168639713f547c05947c76124f78441ea46c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -718,22 +740,6 @@
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1680758185,
|
||||
"narHash": "sha256-sCVWwfnk7zEX8Z+OItiH+pcSklrlsLZ4TJTtnxAYREw=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "0e19daa510e47a40e06257e205965f3b96ce0ac9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1680669251,
|
||||
"narHash": "sha256-AVNE+0u4HlI3v96KCXE9risH7NKqj0QDLLfSckYXIbA=",
|
||||
@ -749,7 +755,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1670461440,
|
||||
"narHash": "sha256-jy1LB8HOMKGJEGXgzFRLDU1CBGL0/LlkolgnqIsF0D8=",
|
||||
@ -765,7 +771,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_5": {
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1679793451,
|
||||
"narHash": "sha256-JafTtgMDATE8dZOImBhWMA9RCn9AP8FVOpN+9K/tTlg=",
|
||||
@ -781,7 +787,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_6": {
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1680758185,
|
||||
"narHash": "sha256-sCVWwfnk7zEX8Z+OItiH+pcSklrlsLZ4TJTtnxAYREw=",
|
||||
@ -797,7 +803,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_7": {
|
||||
"nixpkgs_6": {
|
||||
"locked": {
|
||||
"lastModified": 1678693419,
|
||||
"narHash": "sha256-bbSv5yqZAW6dz+3f3f3pOUZbxpPN+3OgCljgn7P+nnQ=",
|
||||
@ -861,7 +867,7 @@
|
||||
"flake-compat": "flake-compat_4",
|
||||
"flake-utils": "flake-utils_6",
|
||||
"libnbtplusplus": "libnbtplusplus",
|
||||
"nixpkgs": "nixpkgs_7",
|
||||
"nixpkgs": "nixpkgs_6",
|
||||
"pre-commit-hooks": "pre-commit-hooks"
|
||||
},
|
||||
"locked": {
|
||||
@ -910,6 +916,7 @@
|
||||
"flake-registry": "flake-registry",
|
||||
"flake-utils-plus": "flake-utils-plus_2",
|
||||
"home-manager": "home-manager",
|
||||
"hoyolab-daily-bot": "hoyolab-daily-bot",
|
||||
"hyprland": "hyprland",
|
||||
"hyprpaper": "hyprpaper",
|
||||
"impermanence": "impermanence",
|
||||
@ -918,7 +925,7 @@
|
||||
"nix-direnv": "nix-direnv",
|
||||
"nix-vscode-marketplace": "nix-vscode-marketplace",
|
||||
"nixos-generators": "nixos-generators",
|
||||
"nixpkgs": "nixpkgs_6",
|
||||
"nixpkgs": "nixpkgs_5",
|
||||
"nixpkgs-master": "nixpkgs-master",
|
||||
"nur": "nur",
|
||||
"prismlauncher": "prismlauncher",
|
||||
|
@ -24,7 +24,14 @@
|
||||
url = "github:AtaraxiaSjel/base16-tokyonight-scheme";
|
||||
flake = false;
|
||||
};
|
||||
cassowary.url = "github:AtaraxiaSjel/cassowary";
|
||||
cassowary = {
|
||||
url = "github:AtaraxiaSjel/cassowary";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
hoyolab-daily-bot = {
|
||||
url = "github:AtaraxiaSjel/hoyolab-daily-bot";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
hyprland.url = "github:hyprwm/Hyprland";
|
||||
hyprpaper = {
|
||||
url = "github:hyprwm/hyprpaper";
|
||||
|
@ -35,6 +35,7 @@ in {
|
||||
nixosProfiles.webhooks
|
||||
|
||||
nixosProfiles.yandex-db
|
||||
nixosProfiles.hoyolab
|
||||
nixosProfiles.it-tools
|
||||
nixosProfiles.homepage
|
||||
nixosProfiles.matrix
|
||||
|
54
modules/hoyolab-daily-bot.nix
Normal file
54
modules/hoyolab-daily-bot.nix
Normal file
@ -0,0 +1,54 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.services.hoyolab-daily-bot;
|
||||
in {
|
||||
options.services.hoyolab-daily-bot = {
|
||||
enable = mkEnableOption "Hoyolab Daily Bot";
|
||||
|
||||
package = mkOption {
|
||||
type = types.package;
|
||||
description = lib.mdDoc "Which package to use.";
|
||||
default = pkgs.hoyolab-daily-bot;
|
||||
defaultText = literalExpression "pkgs.hoyolab-daily-bot";
|
||||
};
|
||||
|
||||
cookieFiles = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [ ];
|
||||
description =
|
||||
lib.mdDoc "List of paths to cookie files. If not provided, use cookie from browser.";
|
||||
};
|
||||
|
||||
user = mkOption {
|
||||
type = types.str;
|
||||
default = "root";
|
||||
description = lib.mdDoc "";
|
||||
};
|
||||
|
||||
startAt = mkOption {
|
||||
type = types.str;
|
||||
default = "*-*-* 20:00:00";
|
||||
description = lib.mdDoc "";
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
systemd.services.hoyolab-daily-bot = {
|
||||
description = "Hoyolab Daily Login Bot.";
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
User = cfg.user;
|
||||
StateDirectory = "hoyolab-daily-bot";
|
||||
};
|
||||
startAt = cfg.startAt;
|
||||
script = if (cfg.cookieFiles == [ ]) then ''
|
||||
${cfg.package}/bin/hoyolab-daily-bot
|
||||
'' else ''
|
||||
${concatMapStringsSep "\n" (x:
|
||||
"${cfg.package}/bin/hoyolab-daily-bot -c ${x}"
|
||||
) cfg.cookieFiles}
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
@ -53,6 +53,7 @@ with lib; {
|
||||
nixFlakes = final.nix;
|
||||
|
||||
cassowary-py = inputs.cassowary.packages.${system}.cassowary;
|
||||
hoyolab-daily-bot = inputs.hoyolab-daily-bot.packages.${system}.default;
|
||||
|
||||
pass-secret-service = prev.pass-secret-service.overrideAttrs (_: {
|
||||
installCheckPhase = null;
|
||||
|
11
profiles/servers/hoyolab.nix
Normal file
11
profiles/servers/hoyolab.nix
Normal file
@ -0,0 +1,11 @@
|
||||
{ config, pkgs, lib, ... }: {
|
||||
secrets.hoyolab-cookie1 = { };
|
||||
secrets.hoyolab-cookie2 = { };
|
||||
services.hoyolab-daily-bot = {
|
||||
enable = true;
|
||||
cookieFiles = [
|
||||
config.secrets.hoyolab-cookie1.decrypted
|
||||
config.secrets.hoyolab-cookie2.decrypted
|
||||
];
|
||||
};
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user