Files
nixconfig/flake.nix
T

64 lines
1.7 KiB
Nix

{
description = "Development host";
inputs = {
# Release branches may advance; flake.lock records every exact snapshot.
nixpkgs.url = "github:NixOS/nixpkgs/nixos-26.05";
home-manager = {
url = "github:nix-community/home-manager/release-26.05";
inputs.nixpkgs.follows = "nixpkgs";
};
neovim-dots = {
url = "git+https://git.cyber.ayyalasomayajula.net/marsultor/neovim-dots?ref=main&rev=380eb86778a7c53a0f1c18e84f14037456155347";
flake = false;
};
};
outputs =
inputs@{ nixpkgs, home-manager, ... }:
{
nixosConfigurations.dev = nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs; };
modules = [
./configuration.nix
home-manager.nixosModules.home-manager
];
};
formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.nixfmt;
nixosModules = {
desktop = ./desktop.nix;
apps = ./apps.nix;
tools = ./tools.nix;
network = ./network.nix;
workstation = ./workstation.nix;
nvidia = ./nvidia.nix;
};
checks.x86_64-linux =
let
pkgs = nixpkgs.legacyPackages.x86_64-linux;
in
{
desktop = import ./desktop-test.nix { inherit inputs pkgs; };
updates =
pkgs.runCommand "update-workflow-check"
{
nativeBuildInputs = with pkgs; [
python3
git
bash
coreutils
util-linux
];
}
''
python ${./update-test.py} ${./update-system.sh}
touch "$out"
'';
};
};
}