{ 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://www.pixelstalk.net/wp-content/uploads/2016/05/Epic-Anime-Awesome-Wallpapers.jpg";
      sha256 = "enQo3wqhgf0FEPHj2coOCvo7DuZv+x5rL/WIo4qPI50=";
    };
    fonts = {
      monospace = {
        name = "JetBrains Mono Nerd Font";
        package = pkgs.nerdfonts.override { fonts = ["JetBrainsMono"]; };
      };
    };
    targets.wofi.enable = false;
  };
}