Make pianonix work
This commit is contained in:
51
flake.nix
51
flake.nix
@ -7,6 +7,10 @@
|
||||
|
||||
nixpkgs = nixpkgs-stable;
|
||||
|
||||
deploy-rs.url = "github:serokell/deploy-rs";
|
||||
|
||||
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
|
||||
|
||||
home-manager = {
|
||||
url = "github:nix-community/home-manager/release-24.05";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
@ -17,6 +21,11 @@
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
disko = {
|
||||
url = "github:nix-community/disko";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
alacritty-theme = {
|
||||
url = "github:alacritty/alacritty-theme";
|
||||
flake = false;
|
||||
@ -54,6 +63,13 @@
|
||||
|
||||
nix-ld.url = "github:Mic92/nix-ld";
|
||||
nix-ld.inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
||||
## My projects
|
||||
sheet-organizer.url = "git+https://gitlab.julian-mutter.de/julian/sheet-organizer";
|
||||
sheet-organizer.inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
||||
music-reader.url = "git+https://gitlab.julian-mutter.de/julian/music-reader";
|
||||
music-reader.inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
outputs =
|
||||
@ -94,20 +110,33 @@
|
||||
|
||||
systems.modules.nixos = with inputs; [
|
||||
nix-topology.nixosModules.default
|
||||
sops-nix.nixosModules.sops
|
||||
disko.nixosModules.disko
|
||||
];
|
||||
systems.hosts.pianonix.modules = with inputs; [ nixos-hardware.nixosModules.raspberry-pi-4 ];
|
||||
|
||||
topology =
|
||||
with inputs;
|
||||
let
|
||||
host = self.nixosConfigurations.${builtins.head (builtins.attrNames self.nixosConfigurations)};
|
||||
in
|
||||
import nix-topology {
|
||||
inherit (host) pkgs; # Only this package set must include nix-topology.overlays.default
|
||||
modules = [
|
||||
(import ./topology { inherit (host) config; })
|
||||
{ inherit (self) nixosConfigurations; }
|
||||
];
|
||||
# topology =
|
||||
# with inputs;
|
||||
# let
|
||||
# host = self.nixosConfigurations.${builtins.head (builtins.attrNames self.nixosConfigurations)};
|
||||
# in
|
||||
# import nix-topology {
|
||||
# inherit (host) pkgs; # Only this package set must include nix-topology.overlays.default
|
||||
# modules = [
|
||||
# (import ./topology { inherit (host) config; })
|
||||
# { inherit (self) nixosConfigurations; }
|
||||
# ];
|
||||
# };
|
||||
|
||||
# deploy-rs node configuration
|
||||
deploy.nodes.pianonix = {
|
||||
hostname = "pianonix.local";
|
||||
profiles.system = {
|
||||
sshUser = "root";
|
||||
user = "root";
|
||||
path = inputs.deploy-rs.lib.aarch64-linux.activate.nixos inputs.self.nixosConfigurations.pianonix;
|
||||
confirmTimeout = 90; # default: 30s; raspberrypi takes a little longer restarting services
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
Reference in New Issue
Block a user