{ inputs, lib, pkgs, config, outputs, ... }: {
  imports = [
    inputs.nix-index-database.hmModules.nix-index
    inputs.stylix.homeManagerModules.stylix
    ./common/cli
    ./common/universal
  ] ++ (builtins.attrValues outputs.homeManagerModules);

  nixpkgs = {
    overlays = builtins.attrValues outputs.overlays;
    config = {
      allowUnfree = true;
      allowUnfreePredicate = (_: true);
    };
  };

  nix = {
    package = lib.mkDefault pkgs.nixVersions.nix_2_22;
    settings = {
      experimental-features = ["nix-command" "flakes"];
      warn-dirty = false;
    };
  };

  systemd.user.startServices = "sd-switch";
  
  programs = {
    home-manager.enable = true;
  };

  programs.git = {
    enable = true;
    userEmail = "shadows@with.al";
    userName = "liv";
  };

  home = {
    username = lib.mkDefault "lu";
    homeDirectory = lib.mkDefault "/home/${config.home.username}";
    stateVersion = lib.mkDefault "24.05";
    sessionPath = ["$HOME/.local/bin"];
    sessionVariables = {
      FLAKE = "$HOME/nix-config";
    };
  };

  stylix = {
    enable = true;
    base16Scheme = "${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml";
    image = pkgs.fetchurl {
      url = "https://lds-img.finalfantasyxiv.com/h/d/gGA_a8kMXpsxZEOfW_MadG07_E.jpg";
      sha256 = "0d8b4031dnlrcd3wx63p19w5h5zc8z5fk2yqz0wv20m7gr62h8r0";
    };
    fonts = {
      monospace = {
        name = config.fontProfiles.monospace.family;
        package = config.fontProfiles.monospace.package;
      };
    };
    targets.wofi.enable = false;
  };

  xdg.mime.enable = true;
}