nixos/flake.nix
2025-01-13 11:01:20 +08:00

42 lines
1.4 KiB
Nix

{
description = "Koishi's NixOS flake.";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
flake-utils.url = "github:numtide/flake-utils";
flake-parts.url = "github:hercules-ci/flake-parts";
flake-parts.inputs.nixpkgs-lib.follows = "nixpkgs";
treefmt-nix.url = "github:numtide/treefmt-nix";
impermanence.url = "github:nix-community/impermanence/master";
home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
plasma-manager.url = "github:pjones/plasma-manager";
plasma-manager.inputs.nixpkgs.follows = "nixpkgs";
plasma-manager.inputs.home-manager.follows = "home-manager";
catppuccin.url = "github:catppuccin/nix";
lanzaboote.url = "github:nix-community/lanzaboote/v0.4.1";
lanzaboote.inputs.nixpkgs.follows = "nixpkgs";
# steamdeck
jovian.url = "github:Jovian-Experiments/Jovian-NixOS";
};
outputs = inputs@{self, flake-parts, treefmt-nix,...}:
flake-parts.lib.mkFlake
{ inherit inputs; } {
perSystem = {pkgs, ...}: let
treefmtEval = treefmt-nix.lib.evalModule pkgs {
projectRootFile = "flake.nix";
programs.nixfmt.enable = true;
};
in {
formatter = treefmtEval.config.build.wrapper;
checks.formatting = treefmtEval.config.build.check self;
};
systems = [
"x86_64-linux"
];
imports = [ ./spec ];
};
}