{ overlays, ... }:
{
  # Apply overlays
  nixpkgs.overlays = overlays;
  nixpkgs.config.allowUnfree = true;

  # Nix 설정
  nix.settings = {
    sandbox = false;
    experimental-features = [
      "nix-command"
      "flakes"
    ];
    auto-optimise-store = true;
  };

  nix.settings.trusted-users = [
    "root"
    "imnyang"
  ];

  nix.settings = {
    substituters = [
      "https://cache.mizuki.guru/public"
      "https://cache.mizuki.guru/imnyang"
      "https://nix.mizuki.my/public"
      "https://vicinae.cachix.org"
    ];
    trusted-public-keys = [
      "public:IgipakDD/clr0XbuaIejPYMT5UkTVGKVTxtWXcsbiAg="
      "imnyang:x8Oex2DLzZUBxS/3VvkVptT3DiugjsCbQ23VjsxMT5c="
      "public:SnHrtrxbCPcZujbJdgsKFeObTfRKQl5KhrI+LljtZUE="
      "vicinae.cachix.org-1:1kDrfienkGHPYbkpNj1mWTr7Fm1+zcenzgTizIcI3oc="
    ];
  };

  nix.gc = {
    automatic = true;
    dates = "weekly";
    options = "--delete-older-than 7d";
  };

  nixpkgs.config.permittedInsecurePackages = [
    "openssl-1.1.1w"
    "pnpm-10.29.2"
  ];
}
