Self-host your own digital island
1{
2 inputs = {
3 nixpkgs.url = "github:nixos/nixpkgs/nixos-23.11";
4 eilean.url = "github:RyanGibb/eilean-nix/main";
5 eilean.inputs.nixpkgs.follows = "nixpkgs";
6 };
7
8 outputs = { self, nixpkgs, eilean, ... }@inputs:
9 let hostname = "eilean";
10 in rec {
11 nixosConfigurations.${hostname} = nixpkgs.lib.nixosSystem {
12 system = null;
13 pkgs = null;
14 modules = [
15 ./configuration.nix
16 eilean.nixosModules.default
17 {
18 networking.hostName = hostname;
19 # pin nix command's nixpkgs flake to the system flake to avoid unnecessary downloads
20 nix.registry.nixpkgs.flake = nixpkgs;
21 # record git revision (can be queried with `nixos-version --json)
22 system.configurationRevision =
23 nixpkgs.lib.mkIf (self ? rev) self.rev;
24 }
25 ];
26 };
27 };
28}