{ description = "Nixos config flake"; inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; nixos-hardware.url = "github:NixOS/nixos-hardware/master"; # Secrets management sops-nix = { url = "github:Mic92/sops-nix"; inputs.nixpkgs.follows = "nixpkgs"; }; home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; mysecrets = { url = "git+ssh://forgejo@git.hemono.fr/jhemono/nix-secrets.git?ref=main&shallow=1"; flake = false; }; nix-vscode-extensions = { url = "github:nix-community/nix-vscode-extensions"; inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = { self, nixpkgs, home-manager, ... }@inputs: let inherit (self) outputs; system = "x86_64-linux"; pkgs = nixpkgs.legacyPackages.${system}; in { # Custom packages and modifications, exported as overlays overlays = import ./overlays {inherit inputs;}; nixosConfigurations = { sesame = nixpkgs.lib.nixosSystem { specialArgs = {inherit inputs;}; modules = [ ./hosts/sesame/configuration.nix # inputs.home-manager.nixosModules.default ]; }; gwiad = nixpkgs.lib.nixosSystem { specialArgs = {inherit inputs outputs;}; modules = [ ./hosts/gwiad/configuration.nix # inputs.home-manager.nixosModules.default ]; }; }; homeConfigurations."julien" = home-manager.lib.homeManagerConfiguration { inherit pkgs; # Specify your home configuration modules here, for example, # the path to your home.nix. modules = [ ./homes/scalizer ]; # Optionally use extraSpecialArgs # to pass through arguments to home.nix }; }; }