{ description = "main system and home configuration flake"; inputs = { # NixOS official package source, using the nixos-24.05 branch as stable and nixos-unstable as default nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; stablepkgs.url = "github:NixOS/nixpkgs/nixos-24.05"; # Home manager using nixos-unstable home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; # Anyrun launcher anyrun = { url = "github:anyrun-org/anyrun"; inputs.nixpkgs.follows = "nixpkgs"; }; # Declarative flatpak management, documentation states overriding nixpkgs is not supported flatpaks.url = "github:GermanBread/declarative-flatpak/stable-v3"; # Nixvim neovim distro for easier nixified configuration nixvim = { url = "github:nix-community/nixvim"; inputs.nixpkgs.follows = "nixpkgs"; }; disko = { url = "github:nix-community/disko"; inputs.nixpkgs.follows = "nixpkgs"; }; satisfactory-server = { url = "github:nekowinston/satisfactory-server-flake" inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = { self, nixpkgs, stablepkgs, home-manager, ... } @ inputs: let system = "x86_64-linux"; pkgs = nixpkgs.legacyPackages.${system}; stablepkgs = stablepkgs.legacyPacakges.${system}; in { nixosConfigurations.gabbielaptop = nixpkgs.lib.nixosSystem { inherit system; specialArgs = { inherit inputs; }; modules = [ # Import nixos modules here ./hosts/gabbielaptop/configuration.nix ./modules/nh.nix ./modules/waydroid.nix ./modules/packages.nix # Imports home-manager module for use within nixos, not reccomended for use WITH standalone version # inputs.home-manager.nixosModules.default ]; }; nixosConfigurations.biggerpi = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; modules = [ inputs.disko.nixosModules.disko inputs.satisfactory-server.nixosModules.satisfactory ./hosts/biggerpi/configuration.nix ]; }; # Standalone home-manager config homeConfigurations.blue = home-manager.lib.homeManagerConfiguration { inherit pkgs; extraSpecialArgs = { inherit inputs; }; # Import home-manager modules here modules = [ ./home-manager/home.nix # ./home-manager/librewolf.nix inputs.anyrun.homeManagerModules.default inputs.flatpaks.homeManagerModules.default inputs.nixvim.homeManagerModules.default ]; }; }; }