{ inputs, lib,  pkgs, hostname, stateVersion, username, desktop, system, ... }: {
  imports = [ 
    # Modules
    inputs.disko.nixosModules.disko
    
    # Services
    ./common/services/openssh.nix
    ./common/services/fail2ban.nix
    
    # Software
    ./common/packages/small.nix

    # NixOS Modules
    ./common/modules/networking.nix      # Initial Networking configs
    ./common/services/tailscale.nix      # Generlc tailscale installation
    ./common/modules/nixos.nix           # Common NixOS Configurations

    ./users/${username}
    ./hosts/${hostname}
  ] ++ lib.optional (builtins.isString desktop) ./common/desktops/${desktop};
 
  programs.fish.enable = true;
}