{ lib, pkgs, config, ... }: with lib; let cfg = config.eboskma.nix-common; in { options.eboskma.nix-common = { enable = mkEnableOption "activate nix-common"; disable-cache = mkEnableOption "no not use binary cache"; }; config = mkIf cfg.enable { nixpkgs = { config.allowUnfree = true; }; nix = { package = pkgs.nixFlakes; extraOptions = '' experimental-features = nix-command flakes ''; settings = { auto-optimise-store = true; allowed-users = ["root"]; substituters = [ "https://nix-community.cachix.org" ]; trusted-public-keys = [ "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" ]; }; gc = { automatic = true; dates = "daily"; options = "--delete-older-than=30d"; }; }; }; }