58 lines
1.4 KiB
Nix
58 lines
1.4 KiB
Nix
|
{
|
||
|
inputs = {
|
||
|
nixpkgs.url = "nixpkgs/nixos-23.05";
|
||
|
};
|
||
|
|
||
|
outputs = { self, nixpkgs }: let
|
||
|
system = "x86_64-linux";
|
||
|
pkgs = nixpkgs.legacyPackages.${system};
|
||
|
in {
|
||
|
packages.${system} = {
|
||
|
default = self.packages.${system}.pvv-calendar-bot;
|
||
|
pvv-calendar-bot = pkgs.python3Packages.buildPythonPackage {
|
||
|
name = "pvv-calendar-bot";
|
||
|
src = ./.;
|
||
|
format = "pyproject";
|
||
|
|
||
|
nativeBuildInputs = [
|
||
|
pkgs.python3Packages.setuptools
|
||
|
];
|
||
|
|
||
|
propagatedBuildInputs = with pkgs.python3Packages; [
|
||
|
beautifulsoup4
|
||
|
markdown2
|
||
|
matrix-nio
|
||
|
requests
|
||
|
];
|
||
|
};
|
||
|
};
|
||
|
|
||
|
nixosModules.default = ./module.nix;
|
||
|
|
||
|
overlays.${system}.default = prevPackages: finalPackages: {
|
||
|
inherit (self.packages.${system}) pvv-calendar-bot;
|
||
|
};
|
||
|
|
||
|
nixosConfigurations."test" = nixpkgs.lib.nixosSystem {
|
||
|
system = "x86_64-linux";
|
||
|
modules = [
|
||
|
self.nixosModules.default
|
||
|
{ nixpkgs.overlays = [ self.overlays."x86_64-linux".default ]; }
|
||
|
{
|
||
|
boot.isContainer = true;
|
||
|
|
||
|
services.pvv-calendar-bot = {
|
||
|
enable = true;
|
||
|
settings.matrix = {
|
||
|
channel = "testchannel";
|
||
|
user = "testuser";
|
||
|
homeserver = "pvv.ntnu.no";
|
||
|
};
|
||
|
settings.secretsFile = pkgs.writeText "calendarSecrets" "snakeoil";
|
||
|
};
|
||
|
}
|
||
|
];
|
||
|
};
|
||
|
};
|
||
|
}
|