Use deploy-rs from nixpkgs, use caddy module from nixos-unstable #17

Merged
b12f merged 2 commits from deploy-rs-from-nixpkgs into main 2023-10-28 13:07:30 +00:00
4 changed files with 41 additions and 3 deletions

View file

@ -229,7 +229,8 @@
"nix-darwin": "nix-darwin", "nix-darwin": "nix-darwin",
"nixos-flake": "nixos-flake", "nixos-flake": "nixos-flake",
"nixpkgs": "nixpkgs", "nixpkgs": "nixpkgs",
"terranix": "terranix" "terranix": "terranix",
"unstable": "unstable"
} }
}, },
"terranix": { "terranix": {
@ -271,6 +272,22 @@
"type": "github" "type": "github"
} }
}, },
"unstable": {
"locked": {
"lastModified": 1698318101,
"narHash": "sha256-gUihHt3yPD7bVqg+k/UVHgngyaJ3DMEBchbymBMvK1E=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "63678e9f3d3afecfeafa0acead6239cdb447574c",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"utils": { "utils": {
"locked": { "locked": {
"lastModified": 1667395993, "lastModified": 1667395993,

View file

@ -2,6 +2,7 @@
inputs = { inputs = {
# Track channels with commits tested and built by hydra # Track channels with commits tested and built by hydra
nixpkgs.url = "github:nixos/nixpkgs/nixos-23.05"; nixpkgs.url = "github:nixos/nixpkgs/nixos-23.05";
unstable.url = "github:nixos/nixpkgs/nixos-unstable";
nix-darwin.url = "github:lnl7/nix-darwin/master"; nix-darwin.url = "github:lnl7/nix-darwin/master";
nix-darwin.inputs.nixpkgs.follows = "nixpkgs"; nix-darwin.inputs.nixpkgs.follows = "nixpkgs";
@ -91,6 +92,8 @@
}; };
}; };
checks = builtins.mapAttrs (system: deployLib: deployLib.deployChecks self.deploy) inputs.deploy-rs.lib;
nixosModules = { nixosModules = {
# Common nixos/nix-darwin configuration shared between Linux and macOS. # Common nixos/nix-darwin configuration shared between Linux and macOS.
common = { pkgs, ... }: { common = { pkgs, ... }: {

View file

@ -2,7 +2,7 @@
config, config,
lib, lib,
pkgs, pkgs,
self, flake,
... ...
}: let }: let
maintenanceMode = { maintenanceMode = {
@ -40,6 +40,14 @@
''; '';
}; };
in { in {
disabledModules = [
"services/web-servers/caddy/default.nix"
];
imports = [
"${flake.inputs.unstable}/nixos/modules/services/web-servers/caddy/default.nix"
];
systemd.tmpfiles.rules = [ systemd.tmpfiles.rules = [
"d '/data/srv/www/os/download/' 0750 hakkonaut hakkonaut - -" "d '/data/srv/www/os/download/' 0750 hakkonaut hakkonaut - -"
]; ];

View file

@ -6,6 +6,16 @@
*/ */
{ lib, inputs }: let { lib, inputs }: let
# https://github.com/serokell/deploy-rs#overall-usage
system = "x86_64-linux";
pkgs = import inputs.nixpkgs { inherit system; };
deployPkgs = import inputs.nixpkgs {
inherit system;
overlays = [
inputs.deploy-rs.overlay
(self: super: { deploy-rs = { inherit (pkgs) deploy-rs; lib = super.deploy-rs.lib; }; })
];
};
getFqdn = c: let getFqdn = c: let
net = c.config.networking; net = c.config.networking;
fqdn = fqdn =
@ -53,7 +63,7 @@ in {
hostname = getFqdn c; hostname = getFqdn c;
profiles.system = { profiles.system = {
user = "root"; user = "root";
path = inputs.deploy-rs.lib.${c.pkgs.stdenv.hostPlatform.system}.activate.nixos c; path = deployPkgs.deploy-rs.lib.activate.nixos c;
}; };
} }
) )