{
  description = "aar0ns flake configuration";

  inputs = {
    nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
    home-manager = {
      url = "github:nix-community/home-manager";
      inputs.nixpkgs.follows = "nixpkgs";
    };
    nixos-hardware.url = "github:NixOS/nixos-hardware/master";
  };
   
   #   c3d2-user-module = {
   #    url = "git+https://gitea.c3d2.de/C3D2/nix-user-module.git";
   #  };
   #  sops-nix = {
   #    url = "github:Mic92/sops-nix";
   #    inputs.nixpkgs.follows = "nixpkgs";
   #  };
   # };

  outputs = { self, nixpkgs, home-manager, nixos-hardware }:
  let

    system = "x86_64-linux"; 
    pkgs = import nixpkgs { 
      inherit system; 
    };
    
    base-modules = [
      ./modules/defaults/nix.nix
       
    home-manager.nixosModules.home-manager
      ./modules/defaults/home-manager.nix
    ];
 
  in
  {
    legacypackages.x86_64-linux = {
      inherit pkgs;
    };
    
    nixosConfigurations = {
      nussbaum = nixpkgs.lib.nixosSystem {
        system = "x86_64-linux";

       modules = base-modules ++ [
         nixos-hardware.nixosModules.lenovo-thinkpad-t490
	 home-manager.nixosModules.home-manager 
	 ./modules/defaults/home-manager.nix
         ./modules/systems/t490.nix
         ./modules/defaults/base.nix
         ./modules/defaults/desktop.nix
         ./modules/defaults/fonts.nix
	 ./modules/defaults/home-manager.nix
         ./modules/defaults/networking.nix
         ./modules/defaults/users.nix
         ./modules/defaults/virtualization/docker.nix
         ./modules/defaults/virtualization/kvm.nix
	 ./modules/defaults/security.nix
	 ];
      };
    };
  };
}
      # lib.mergeAttrs commonAttrs {
      #  modules = [
      #    ./modules/configuration.nix
      #     c3d2-user-module.nixosModule
      #     sops-nix.nixosModules.sops
      #  ];
      # });

      #mobile = nixpkgs.lib.nixosSystem (lib.mergeAttrs commonAttrs {
      #  modules = [
      #    ./hosts/mobile/configuration.nix
      #    c3d2-user-module.nixosModule
      #    sops-nix.nixosModules.sops
      #  ];
      #});

      #tower = nixpkgs.lib.nixosSystem (lib.mergeAttrs commonAttrs {
      #  modules = [
      #    ./hosts/tower/configuration.nix
      #    sops-nix.nixosModules.sops
      #  ];
      #});
#    };
#  };
#}