{
  config,
  lib,
  pkgs,
  ...
}: let
  cfg = config.marleyos.programs.superfile;
in {
  options.marleyos.programs.superfile.enable = lib.mkEnableOption "superfile";

  config = lib.mkIf cfg.enable {
    home.packages = with pkgs; [
      superfile
    ];

    xdg.configFile."superfile/config.toml".text =
      # https://superfile.netlify.app/configure/superfile-config/
      # toml
      ''
        theme = "${config.lib.stylix.colors.scheme-name}"
        editor = "" # use $EDITOR
        auto_check_update = false
        cd_on_quit = false
        default_open_file_preview = true
        default_directory = "."

        # Display file sizes using powers of 1000 (kb, MB, GB) instead of powers
        # of 1024 (KiB, MiB, GiB).
        file_size_use_si = false

        # Style - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        nerfont = true
        transparent_background = false
        file_preview_width = 0
        sidebar_width = 20
        border_top = '─'
        border_bottom = '─'
        border_left = '│'
        border_right = '│'
        border_top_left = '╭'
        border_top_right = '╮'
        border_bottom_left = '╰'
        border_bottom_right = '╯'
        border_middle_left = '├'
        border_middle_right = '┤'

        # Plugins - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        metadata = false # requires exiftool
        enable_md5_checksum = false
      '';
  };
}
