{
description = "4o1x5 infrastructure/homelab";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.05";
home-manager = {
url = "github:nix-community/home-manager/release-23.11";
inputs.nixpkgs.follows = "nixpkgs";
};
i2pd-exporter = {
url = "git+https://git.4o1x5.dev/4o1x5/i2pd-exporter";
piped = {
url = "github:Defelo/piped-nix";
scribe = {
url = "git+https://git.sr.ht/~edwardloveall/scribe";
microvm = {
url = "github:astro/microvm.nix";
agenix.url = "github:ryantm/agenix";
outputs =
{ self
, nixpkgs
, home-manager
, i2pd-exporter
, microvm
, agenix
, scribe
, piped
}:
let
system = "x86_64-linux";
in
nixosConfigurations = {
pink = nixpkgs.lib.nixosSystem {
inherit system;
modules = [
./hosts/pink/root.nix
./root.nix
i2pd-exporter.nixosModules.default
home-manager.nixosModules.home-manager
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
}
];
carbon = nixpkgs.lib.nixosSystem {
./hosts/carbon/root.nix
./secrets/carbon.nix
agenix.nixosModules.default
scribe.nixosModules.default
piped.nixosModules.default
lime = nixpkgs.lib.nixosSystem {
({ pkgs, ... }: {
nixpkgs.overlays = [
(self: super: {
inadyn = super.inadyn.overrideAttrs
(oldAttrs: rec {
src = pkgs.fetchFromGitHub
owner = "troglobit";
repo = "inadyn";
rev = "7d576c4d00d312597c2b9c06c00529d2dde5ac89";
hash = "sha256-EJ9/MZhz/Gjj2RCMRDkwuKRatig/t1wAqQRqOcHA2gc=";
});
})
./hosts/lime/root.nix
./secrets/lime.nix