{ config, lib, ... }: let inherit (lib) mkOption types ; themeType = types.submodule { options = { alacrittyTheme = mkOption { type = import ./alacritty.nix {inherit lib;}; default = {}; }; batTheme = mkOption { type = import ./bat.nix {inherit lib;}; default = {}; }; i3Theme = mkOption { type = import ./i3.nix {inherit lib;}; default = {}; }; i3BarTheme = mkOption { type = import ./i3bar.nix {inherit lib;}; default = {}; }; }; }; in { options.my.theme = mkOption { type = themeType; default = {}; }; options.my.themes = mkOption { type = types.attrsOf themeType; }; config.my.themes = { solarizedLight = import ./solarizedLight; }; }