{ description = "Nix config entry point"; inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05"; nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; # Home manager home-manager.url = "github:nix-community/home-manager/release-24.05"; home-manager.inputs.nixpkgs.follows = "nixpkgs"; # Managing flatpak apps nix-flatpak.url = "github:gmodena/nix-flatpak/?ref=v0.4.1"; }; outputs = { self, nixpkgs, home-manager, ... } @ inputs: { ## NixOS configurations are the main output of this flake # HP Spectre x360 2018 nixosConfigurations.spectre = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; specialArgs = { inherit inputs; }; modules = [ ./hosts/spectre-x360-2018 home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.users.remy.imports = [ ./users/remy.nix inputs.nix-flatpak.homeManagerModules.nix-flatpak ]; } ]; }; # nixosConfigurations.raspberry-pi = nixpkgs.lib.nixosSystem { # system = "aarch64-linux"; # modules = [ # ./hosts/raspberry-pi/configuration.nix # ]; # }; ## Home Manager configurations here? ## Useful nix build tools # iso builder TODO nixosConfigurations.bcachefs-iso = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; modules = [ "${nixpkgs}/nixos/modules/installer/cd-dvd/installation-cd-minimal-new-kernel-no-zfs.nix" ({ lib, pkgs, ... }: { boot.supportedFilesystems = [ "bcachefs" ]; boot.kernelPackages = lib.mkOverride 0 pkgs.linuxPackages_latest; }) ]; }; }; }