This repository has been archived on 2026-03-09. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
homelab-deploy/flake.nix
Torjus Håkestad 1460cc533d chore: add CLAUDE.md and configure nix dev shell
Add CLAUDE.md with project guidance for Claude Code including
architecture overview, build commands, and testing procedures.

Update flake.nix with proper Go development shell (go, gopls,
gotools, golangci-lint, govulncheck, delve) and buildGoModule
package definition.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-07 03:16:20 +01:00

50 lines
1.2 KiB
Nix

{
description = "Message-based NixOS deployment system using NATS";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
};
outputs = { self, nixpkgs }:
let
supportedSystems = [ "x86_64-linux" "aarch64-linux" ];
forAllSystems = nixpkgs.lib.genAttrs supportedSystems;
pkgsFor = system: nixpkgs.legacyPackages.${system};
in
{
packages = forAllSystems (system:
let
pkgs = pkgsFor system;
in
{
homelab-deploy = pkgs.buildGoModule {
pname = "homelab-deploy";
version = "0.1.0";
src = ./.;
vendorHash = null; # Update after adding dependencies
};
default = self.packages.${system}.homelab-deploy;
});
devShells = forAllSystems (system:
let
pkgs = pkgsFor system;
in
{
default = pkgs.mkShell {
buildInputs = with pkgs; [
go
gopls
gotools
golangci-lint
govulncheck
delve
];
};
});
nixosModules.default = import ./nixos/module.nix;
nixosModules.homelab-deploy = self.nixosModules.default;
};
}