},
"nixpkgs": {
"locked": {
- "lastModified": 1744232761,
- "narHash": "sha256-gbl9hE39nQRpZaLjhWKmEu5ejtQsgI5TWYrIVVJn30U=",
+ "lastModified": 1744463964,
+ "narHash": "sha256-LWqduOgLHCFxiTNYi3Uj5Lgz0SR+Xhw3kr/3Xd0GPTM=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "f675531bc7e6657c10a18b565cfebd8aa9e24c14",
+ "rev": "2631b0b7abcea6e640ce31cd78ea58910d31e650",
"type": "github"
},
"original": {
type = "app";
program = "${self.packages.${system}.default}/bin/chirp";
};
- })
- // {
- nixosModules.default = { config, lib, pkgs, ... }: {
- options.services.chirp = {
- enable = lib.mkEnableOption "Enable Chirp";
-
- port = lib.mkOption {
- type = lib.types.port;
- default = 8080;
- description = "Port to listen on";
- };
- };
-
- config = lib.mkIf config.services.chirp.enable {
- systemd.services.chirp = {
- description = "Chirp SystemD Service";
- wantedBy = ["multi-user.target"];
- after = ["network.target"];
- serviceConfig = {
- ExecStart = "${self.packages.${pkgs.system}.default}/bin/chirp";
- Restart = "always";
- Type = "simple";
- DynamicUser = "yes";
- };
- environment = {
- PORT = toString config.services.chirp.port;
- };
- };
- };
- };
- };
+ });
}