{ description = "furry flake"; # Вход. # Т.е указание к тем флейкам, # которые необходимы. inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; disko = { url = "github:nix-community/disko"; inputs.nixpkgs.follows = "nixpkgs"; }; home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; # Другие флейки zen-browser = { url = "github:0xc000022070/zen-browser-flake"; inputs.nixpkgs.follows = "nixpkgs"; }; }; # Выход # Т.е применение функций флейков на # конфигурацию NixOS. outputs = { self, nixpkgs, disko, home-manager, ... }@inputs: # Переменные для быстрой смены параметра, # И уборка повторяющиехся значений. let system = "x86_64-linux"; host = "lenovo"; nick = "fox"; in { # Применение входных флейков на системную конфигурацию. nixosConfigurations.${host} = inputs.nixpkgs.lib.nixosSystem { specialArgs = { inherit inputs; }; modules = [ /home/fox/conf/configuration.nix disko.nixosModules.disko ]; }; # Указание флейку home-manager, где что выполнять. homeConfigurations.${nick} = inputs.home-manager.lib.homeManagerConfiguration { pkgs = inputs.nixpkgs.legacyPackages.${system}; extraSpecialArgs = { inherit inputs; }; modules = [ /home/fox/conf/home/configuration.nix ]; }; }; }