nixos-config-master/flake.nix

57 lines
1.6 KiB
Nix

{
description = "Jeirmeister's NixOS Configuration";
inputs = {
# Core dependencies
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
systems.url = "github:nix-systems/default-linux";
# Add other inputs as needed, e.g.:
# hardware.url = "github:nixos/nixos-hardware"; # If you need specific hardware support
};
outputs = { self, nixpkgs, home-manager, ... } @ inputs: let
lib = nixpkgs.lib.extend (
final: prev: import ./lib {
inherit inputs self;
lib = final;
}
) // home-manager.lib;
in {
nixosConfigurations = {
# Your systems
steamdeck = lib.mkHost "steamdeck" {
username = "jeirmeister";
system = "x86_64-linux";
stateVersion = "24.05"; # Updated version
};
surface4 = lib.mkHost "surface" {
username = "jeirmeister";
system = "x86_64-linux";
stateVersion = "24.05"; # Updated version
};
};
# Standalone home-manager configurations
homeConfigurations = {
"jeirmeister@steamdeck" = lib.mkHome "jeirmeister@steamdeck" {
inherit (self) nixosConfigurations;
stateVersion = "24.05";
};
"jeirmeister@surface" = lib.mkHome "jeirmeister@surface" {
inherit (self) nixosConfigurations;
stateVersion = "24.05";
};
};
# Add basic overlays and packages outputs
# overlays = import ./overlays { inherit self; };
packages = lib.forEachSystem (pkgs: import ./pkgs { inherit pkgs; });
};
}