Compare commits

..

No commits in common. "324d2d94f3cbe99951626eb4d9b2b323ccd98d25" and "d950c1fa23d7cf6e290465565532f2bed288d21d" have entirely different histories.

2 changed files with 102 additions and 88 deletions

155
flake.lock generated
View file

@ -10,21 +10,17 @@
"sonnenshift", "sonnenshift",
"crate2nix" "crate2nix"
], ],
"git-hooks": "git-hooks",
"nixpkgs": [ "nixpkgs": [
"sonnenshift",
"nixpkgs" "nixpkgs"
],
"pre-commit-hooks": [
"sonnenshift",
"crate2nix"
] ]
}, },
"locked": { "locked": {
"lastModified": 1709700175, "lastModified": 1760971495,
"narHash": "sha256-A0/6ZjLmT9qdYzKHmevnEIC7G+GiZ4UCr8v0poRPzds=", "narHash": "sha256-IwnNtbNVrlZIHh7h4Wz6VP0Furxg9Hh0ycighvL5cZc=",
"owner": "cachix", "owner": "cachix",
"repo": "cachix", "repo": "cachix",
"rev": "be97b37989f11b724197b5f4c7ffd78f12c8c4bf", "rev": "c5bfd933d1033672f51a863c47303fc0e093c2d2",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -49,7 +45,6 @@
"flake-parts": "flake-parts", "flake-parts": "flake-parts",
"nix-test-runner": "nix-test-runner", "nix-test-runner": "nix-test-runner",
"nixpkgs": [ "nixpkgs": [
"sonnenshift",
"nixpkgs" "nixpkgs"
], ],
"pre-commit-hooks": "pre-commit-hooks" "pre-commit-hooks": "pre-commit-hooks"
@ -77,11 +72,11 @@
"utils": "utils" "utils": "utils"
}, },
"locked": { "locked": {
"lastModified": 1762286984, "lastModified": 1756719547,
"narHash": "sha256-9I2H9x5We6Pl+DBYHjR1s3UT8wgwcpAH03kn9CqtdQc=", "narHash": "sha256-N9gBKUmjwRKPxAafXEk1EGadfk2qDZPBQp4vXWPHINQ=",
"owner": "serokell", "owner": "serokell",
"repo": "deploy-rs", "repo": "deploy-rs",
"rev": "9c870f63e28ec1e83305f7f6cb73c941e699f74f", "rev": "125ae9e3ecf62fb2c0fd4f2d894eb971f1ecaed2",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -92,10 +87,6 @@
}, },
"devshell": { "devshell": {
"inputs": { "inputs": {
"flake-utils": [
"deploy-rs",
"utils"
],
"nixpkgs": [ "nixpkgs": [
"sonnenshift", "sonnenshift",
"crate2nix", "crate2nix",
@ -103,11 +94,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1711099426, "lastModified": 1762521437,
"narHash": "sha256-HzpgM/wc3aqpnHJJ2oDqPBkNsqWbW0WfWUO8lKu8nGk=", "narHash": "sha256-RXN+lcx4DEn3ZS+LqEJSUu/HH+dwGvy0syN7hTo/Chg=",
"owner": "numtide", "owner": "numtide",
"repo": "devshell", "repo": "devshell",
"rev": "2d45b54ca4a183f2fdcf4b19c895b64fbf620ee8", "rev": "07bacc9531f5f4df6657c0a02a806443685f384a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -123,11 +114,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1762276996, "lastModified": 1760701190,
"narHash": "sha256-TtcPgPmp2f0FAnc+DMEw4ardEgv1SGNR3/WFGH0N19M=", "narHash": "sha256-y7UhnWlER8r776JsySqsbTUh2Txf7K30smfHlqdaIQw=",
"owner": "nix-community", "owner": "nix-community",
"repo": "disko", "repo": "disko",
"rev": "af087d076d3860760b3323f6b583f4d828c1ac17", "rev": "3a9450b26e69dcb6f8de6e2b07b3fc1c288d85f5",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -145,11 +136,11 @@
"pyproject-nix": "pyproject-nix" "pyproject-nix": "pyproject-nix"
}, },
"locked": { "locked": {
"lastModified": 1735160684, "lastModified": 1763413832,
"narHash": "sha256-n5CwhmqKxifuD4Sq4WuRP/h5LO6f23cGnSAuJemnd/4=", "narHash": "sha256-dkqBwDXiv8MPoFyIvOuC4bVubAP+TlVZUkVMB78TTSg=",
"owner": "nix-community", "owner": "nix-community",
"repo": "dream2nix", "repo": "dream2nix",
"rev": "8ce6284ff58208ed8961681276f82c2f8f978ef4", "rev": "5658fba3a0b6b7d5cb0460b949651f64f644a743",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -245,11 +236,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1761916399, "lastModified": 1757786467,
"narHash": "sha256-wLZ8km5ftKlIDdHJrFiDQivXc5b+7DRxmBp2347H5g8=", "narHash": "sha256-gx3THVUlpycVrUFC9vGhAtYRLI7dJtHyo67Zdq5Hadc=",
"owner": "reckenrode", "owner": "reckenrode",
"repo": "nix-foundryvtt", "repo": "nix-foundryvtt",
"rev": "8cceb7af3dfbe465b5108db5c098b097edf85790", "rev": "1bbc26a28d320fb336d94e9f3cc6b92c035fab20",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -258,12 +249,43 @@
"type": "github" "type": "github"
} }
}, },
"git-hooks": {
"inputs": {
"flake-compat": [
"sonnenshift",
"crate2nix",
"cachix",
"flake-compat"
],
"gitignore": "gitignore",
"nixpkgs": [
"sonnenshift",
"crate2nix",
"cachix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1762868777,
"narHash": "sha256-QqS72GvguP56oKDNUckWUPNJHjsdeuXh5RyoKz0wJ+E=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "c5c3147730384576196fb5da048a6e45dee10d56",
"type": "github"
},
"original": {
"owner": "cachix",
"repo": "git-hooks.nix",
"type": "github"
}
},
"gitignore": { "gitignore": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
"sonnenshift", "sonnenshift",
"crate2nix", "crate2nix",
"pre-commit-hooks", "cachix",
"git-hooks",
"nixpkgs" "nixpkgs"
] ]
}, },
@ -299,15 +321,18 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1763509821, "lastModified": 1760782625,
"narHash": "sha256-ibZr0ONEUA1W2WAdTzgm9/6jBE+tM20j1YW2FK4RZ/k=", "narHash": "sha256-qeSmHF66cMiHObiBhm8IngmqDBEcqNdBSSoAjuE6tTw=",
"rev": "659aa6fa27619d04de231b4cc0c938905dfa01e9", "owner": "nixos",
"type": "tarball", "repo": "nixpkgs",
"url": "https://releases.nixos.org/nixos/25.05-small/nixos-25.05.812929.659aa6fa2761/nixexprs.tar.xz?lastModified=1763509821&rev=659aa6fa27619d04de231b4cc0c938905dfa01e9" "rev": "f2ee78c4eb601be36a277e1779a7a87655419dad",
"type": "github"
}, },
"original": { "original": {
"type": "tarball", "owner": "nixos",
"url": "https://channels.nixos.org/nixos-25.05-small/nixexprs.tar.xz" "ref": "nixos-25.05-small",
"repo": "nixpkgs",
"type": "github"
} }
}, },
"pre-commit-hooks": { "pre-commit-hooks": {
@ -317,30 +342,25 @@
"crate2nix", "crate2nix",
"flake-compat" "flake-compat"
], ],
"flake-utils": [ "gitignore": [
"sonnenshift", "sonnenshift",
"crate2nix", "crate2nix",
"devshell", "cachix",
"flake-utils" "git-hooks",
"gitignore"
], ],
"gitignore": "gitignore",
"nixpkgs": [ "nixpkgs": [
"sonnenshift", "sonnenshift",
"crate2nix", "crate2nix",
"nixpkgs" "nixpkgs"
],
"nixpkgs-stable": [
"sonnenshift",
"crate2nix",
"nixpkgs"
] ]
}, },
"locked": { "locked": {
"lastModified": 1712055707, "lastModified": 1763319842,
"narHash": "sha256-4XLvuSIDZJGS17xEwSrNuJLL7UjDYKGJSbK1WWX2AK8=", "narHash": "sha256-YG19IyrTdnVn0l3DvcUYm85u3PaqBt6tI6VvolcuHnA=",
"owner": "cachix", "owner": "cachix",
"repo": "pre-commit-hooks.nix", "repo": "pre-commit-hooks.nix",
"rev": "e35aed5fda3cc79f88ed7f1795021e559582093a", "rev": "7275fa67fbbb75891c16d9dee7d88e58aea2d761",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -363,11 +383,11 @@
"slimlock": "slimlock" "slimlock": "slimlock"
}, },
"locked": { "locked": {
"lastModified": 1728546539, "lastModified": 1750754571,
"narHash": "sha256-Sws7w0tlnjD+Bjck1nv29NjC5DbL6nH5auL9Ex9Iz2A=", "narHash": "sha256-qquerCyD6WhVccAV0qI7NFGwSN7rXslhogPrTaFvWto=",
"owner": "thomashoneyman", "owner": "thomashoneyman",
"repo": "purescript-overlay", "repo": "purescript-overlay",
"rev": "4ad4c15d07bd899d7346b331f377606631eb0ee4", "rev": "81513816356c43c6ef604abdf5da41834306a2d5",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -377,18 +397,23 @@
} }
}, },
"pyproject-nix": { "pyproject-nix": {
"flake": false, "inputs": {
"nixpkgs": [
"tlaternet-webserver",
"dream2nix",
"nixpkgs"
]
},
"locked": { "locked": {
"lastModified": 1702448246, "lastModified": 1762427963,
"narHash": "sha256-hFg5s/hoJFv7tDpiGvEvXP0UfFvFEDgTdyHIjDVHu1I=", "narHash": "sha256-CkPlAbIQ87wmjy5qHibfzk4DmMGBNqFer+lLfXjpP5M=",
"owner": "davhau", "owner": "pyproject-nix",
"repo": "pyproject.nix", "repo": "pyproject.nix",
"rev": "5a06a2697b228c04dd2f35659b4b659ca74f7aeb", "rev": "4540ea004e04fcd12dd2738d51383d10f956f7b9",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "davhau", "owner": "pyproject-nix",
"ref": "dream2nix",
"repo": "pyproject.nix", "repo": "pyproject.nix",
"type": "github" "type": "github"
} }
@ -453,11 +478,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763619077, "lastModified": 1748144928,
"narHash": "sha256-dlfamaoIzFEgwgtzPJuw5Tl5SqjbWcV8CsbP2hVBeuI=", "narHash": "sha256-OPdi6AjrWWwZlukNwDHDWAf1CCFkHsf8JbA3rJoibXM=",
"ref": "refs/heads/main", "ref": "refs/heads/main",
"rev": "64a2c8a3743ea6897ecac6692fba8aebc3389fca", "rev": "429036aa8630d2325f8a9f067cc041d628279a8e",
"revCount": 26, "revCount": 24,
"type": "git", "type": "git",
"url": "ssh://git@github.com/sonnenshift/battery-manager" "url": "ssh://git@github.com/sonnenshift/battery-manager"
}, },
@ -473,11 +498,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763607916, "lastModified": 1760393368,
"narHash": "sha256-VefBA1JWRXM929mBAFohFUtQJLUnEwZ2vmYUNkFnSjE=", "narHash": "sha256-8mN3kqyqa2PKY0wwZ2UmMEYMcxvNTwLaOrrDsw6Qi4E=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "877bb495a6f8faf0d89fc10bd142c4b7ed2bcc0b", "rev": "ab8d56e85b8be14cff9d93735951e30c3e86a437",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -2,7 +2,7 @@
description = "tlater.net host configuration"; description = "tlater.net host configuration";
inputs = { inputs = {
nixpkgs.url = "https://channels.nixos.org/nixos-25.05-small/nixexprs.tar.xz"; nixpkgs.url = "github:nixos/nixpkgs/nixos-25.05-small";
## Nix/OS utilities ## Nix/OS utilities
@ -50,9 +50,16 @@
url = "git+ssh://git@github.com/sonnenshift/battery-manager"; url = "git+ssh://git@github.com/sonnenshift/battery-manager";
inputs = { inputs = {
nixpkgs.follows = "nixpkgs"; nixpkgs.follows = "nixpkgs";
crate2nix.inputs = { crate2nix.inputs = {
nixpkgs.follows = "nixpkgs";
flake-compat.follows = "deploy-rs/flake-compat"; flake-compat.follows = "deploy-rs/flake-compat";
devshell.inputs.flake-utils.follows = "deploy-rs/utils"; cachix.inputs.nixpkgs.follows = "nixpkgs";
pre-commit-hooks.inputs.gitignore.follows = "sonnenshift/crate2nix/cachix/git-hooks/gitignore";
# Yes, they do this insanity:
# https://github.com/nix-community/crate2nix/issues/371
crate2nix_stable.follows = "sonnenshift/crate2nix";
}; };
}; };
}; };
@ -63,6 +70,7 @@
self, self,
nixpkgs, nixpkgs,
sops-nix, sops-nix,
deploy-rs,
... ...
}@inputs: }@inputs:
let let
@ -77,25 +85,6 @@
./configuration/hardware-specific/vm.nix ./configuration/hardware-specific/vm.nix
]; ];
}; };
# deploy-rs unfortunately uses an `import nixpkgs`, and its
# library functions depend on an instantiated nixpkgs, so we
# can't get around multi-nixpkgs-eval.
inherit
(import nixpkgs {
inherit system;
overlays = [
inputs.deploy-rs.overlays.default
(_: prev: {
deploy-rs = {
inherit (nixpkgs.legacyPackages.${system}) deploy-rs;
inherit (prev.deploy-rs) lib;
};
})
];
})
deploy-rs
;
in in
{ {
################## ##################
@ -123,7 +112,7 @@
profiles.system = { profiles.system = {
user = "root"; user = "root";
path = deploy-rs.lib.activate.nixos self.nixosConfigurations.hetzner-1; path = deploy-rs.lib.${system}.activate.nixos self.nixosConfigurations.hetzner-1;
}; };
sshUser = "tlater"; sshUser = "tlater";
@ -177,7 +166,7 @@
packages = nixpkgs.lib.attrValues { packages = nixpkgs.lib.attrValues {
inherit (sops-nix.packages.${system}) sops-import-keys-hook sops-init-gpg-key; inherit (sops-nix.packages.${system}) sops-import-keys-hook sops-init-gpg-key;
inherit (deploy-rs) deploy-rs; inherit (deploy-rs.packages.${system}) default;
}; };
}; };