2EFJUR2TVLHO4R4YRZFLOJKC742HPFI5MOA7II3Y3Z3KOHDNE5JAC QNEDMAXXZFJJNFS2QHPEJZC6OHQEDC4GJBN5GM6G5INR2ME3WSZQC H3GYCX27WTONFBIJN7UIV26LJSCENQJC4XXIOEYINXJLEDGKYJJQC BYZGRIFZY253OFK442SR6X743U4LAX4NLFBQ4XPKXEDPPXNNUM4AC 532JIID6XB4NFSIFUA64VEBKWSEJB4AY5OUBIEFUDMWXO7UAZW2QC ZGEGHEOD2S77CSNWOOFVB7Q3RGOU3WOWDOXJ4S2LKAS2JMS3UAZAC NNUJU4U7H6QBAKSVR2N5NGQDODJFAJ6UWFU6N656WU2ORRG7RQRQC JOK7DA5XBOK2MIVR7ORTSAEMQ6U5642I537IGUYBX67DPFF5QJ3QC F26DJCZ7RLGRDZSYACB6MGMNTW7L5FE332EBYEIJTBRK7QJ6ZIYAC TXA66OLAOYNGEDRBC4SKWDZPLBZXUU7WHDIAYN4TXGEJR6WIJOIQC EVVP46IQ4U6JEDWVJ4D6KT77ABOMY7XKIO2ITX4DHJDRTGTYCUTQC palette: {palette =palette// {cursorline = "#2a2b3c";secondary_cursor = "#b5a6a8";};"type" = "yellow";"constructor" = "sapphire";"constant" = "peach";"constant.builtin" = "peach";"constant.character" = "teal";"constant.character.escape" = "pink";"string" = "green";"string.regexp" = "peach";"string.special" = "blue";"comment" = {fg = "surface2";modifiers = ["italic"];};"variable" = "text";"variable.parameter" = {fg = "maroon";modifiers = ["italic"];};"variable.builtin" = "red";"variable.other.member" = "teal";"label" = "sapphire";"punctuation" = "overlay2";"punctuation.special" = "sky";"keyword" = "mauve";"keyword.control.conditional" = {fg = "mauve";modifiers = ["italic"];};"operator" = "sky";"function" = "blue";"function.builtin" = "peach";"function.macro" = "mauve";"tag" = "mauve";"namespace" = {fg = "blue";modifiers = ["italic"];};"special" = "blue";"markup.heading.marker" = {fg = "peach";modifiers = ["bold"];};"markup.heading.1" = "lavender";"markup.heading.2" = "mauve";"markup.heading.3" = "green";"markup.heading.4" = "yellow";"markup.heading.5" = "pink";"markup.heading.6" = "teal";"markup.list" = "mauve";"markup.bold" = {modifiers = ["bold"];};"markup.italic" = {modifiers = ["italic"];};"markup.link.url" = {fg = "rosewater";modifiers = ["italic" "underlined"];};"markup.link.text" = "blue";"markup.raw" = "flamingo";"diff.plus" = "green";"diff.minus" = "red";"diff.delta" = "blue";"ui.background" = {fg = "text";bg = "base";};"ui.linenr" = {fg = "surface1";};"ui.linenr.selected" = {fg = "lavender";};"ui.statusline" = {fg = "text";bg = "mantle";};"ui.statusline.inactive" = {fg = "surface2";bg = "mantle";};"ui.statusline.normal" = {fg = "base";bg = "lavender";modifiers = ["bold"];};"ui.statusline.insert" = {fg = "base";bg = "green";modifiers = ["bold"];};"ui.statusline.select" = {fg = "base";bg = "flamingo";modifiers = ["bold"];};"ui.popup" = {fg = "text";bg = "surface0";};"ui.window" = {fg = "crust";};"ui.help" = {fg = "overlay2";bg = "surface0";};"ui.bufferline" = {fg = "surface1";bg = "mantle";};"ui.bufferline.active" = {fg = "text";bg = "base";modifiers = ["bold" "italic"];};"ui.bufferline.background" = {bg = "surface0";};"ui.text" = "text";"ui.text.focus" = {fg = "text";bg = "surface0";modifiers = ["bold"];};"ui.virtual" = "overlay0";"ui.virtual.ruler" = {bg = "surface0";};"ui.virtual.indent-guide" = "surface0";"ui.selection" = {bg = "surface1";};"ui.cursor" = {fg = "base";bg = "secondary_cursor";};"ui.cursor.primary" = {fg = "base";bg = "rosewater";};"ui.cursor.match" = {fg = "peach";modifiers = ["bold"];};"ui.cursorline.primary" = {bg = "cursorline";};"ui.highlight" = {bg = "surface1";modifiers = ["bold"];};"ui.menu" = {fg = "overlay2";bg = "surface0";};"ui.menu.selected" = {fg = "text";bg = "surface1";modifiers = ["bold"];};"diagnostic.error" = {fg = "red";underline = {color = "red";style = "curl";};};"diagnostic.warning" = {fg = "yellow";underline = {color = "yellow";style = "curl";};};"diagnostic.info" = {fg = "sky";underline = {color = "sky";style = "curl";};};"diagnostic.hint" = {fg = "teal";underline = {color = "teal";style = "curl";};};error = "red";warning = "yellow";info = "sky";hint = "teal";}
# Theme based on https://github.com/catppuccin/catppuccinletp = {rosewater = "#f5e0dc";flamingo = "#f2cdcd";pink = "#f5c2e7";mauve = "#cba6f7";red = "#f38ba8";maroon = "#eba0ac";peach = "#fab387";yellow = "#f9e2af";green = "#a6e3a1";teal = "#94e2d5";sky = "#89dceb";sapphire = "#74c7ec";blue = "#89b4fa";lavender = "#b4befe";text = "#cdd6f4";subtext1 = "#bac2de";subtext0 = "#a6adc8";overlay2 = "#9399b2";overlay1 = "#7f849c";overlay0 = "#6c7086";surface2 = "#585b70";surface1 = "#45475a";surface0 = "#313244";base = "#1e1e2e";mantle = "#181825";crust = "#11111b";};in {primary = {background = p.base;foreground = p.text;};secondary = {background = p.rosewater;foreground = p.base;};dark = {black = p.surface1;red = p.red;green = p.green;yellow = p.yellow;blue = p.blue;magenta = p.pink;cyan = p.teal;white = p.subtext1;orange = p.peach;};bright = {black = p.surface2;red = p.red;green = p.green;yellow = p.yellow;blue = p.blue;magenta = p.pink;cyan = p.teal;white = p.subtext0;orange = p.peach;};extra = {idx16 = p.peach;idx17 = p.rosewater;};apps = {helix = (import ./helix.nix) p;};}
helixBase64 = {# TODO: Cleaner, more idiomatic solutionpalette = {base00 = theme.primary.background;base01 = theme.dark.gray;base02 = theme.bright.gray;base03 = theme.bright.black;base04 = theme.bright.white;base05 = theme.primary.foreground;base06 = theme.bright.white;base07 = theme.bright.white;base08 = theme.bright.red;base09 = theme.bright.yellow;base0A = theme.bright.yellow;base0B = theme.bright.green;base0C = theme.bright.cyan;base0D = theme.bright.blue;base0E = theme.bright.magenta;base0F = theme.bright.white;};"ui.background" = {bg = "base00";};"ui.virtual" = "base03";"ui.menu" = {fg = "base05";bg = "base01";};"ui.menu.selected" = {fg = "base01";bg = "base04";};"ui.linenr" = {fg = "base03";bg = "base01";};"ui.popup" = {bg = "base01";};"ui.window" = {bg = "base01";};"ui.linenr.selected" = {fg = "base04";bg = "base01";modifiers = ["bold"];};"ui.selection" = {bg = "base02";};"comment" = {fg = "base03";modifiers = ["italic"];};"ui.statusline" = {fg = "base04";bg = "base01";};"ui.cursor" = {fg = "base04";modifiers = ["reversed"];};"ui.cursor.primary" = {fg = "base05";modifiers = ["reversed"];};"ui.text" = "base05";"operator" = "base05";"ui.text.focus" = "base05";"variable" = "base08";"constant.numeric" = "base09";"constant" = "base09";"attributes" = "base09";"type" = "base0A";"ui.cursor.match" = {fg = "base0A";modifiers = ["underlined"];};"string" = "base0B";"variable.other.member" = "base0B";"constant.character.escape" = "base0C";"function" = "base0D";"constructor" = "base0D";"special" = "base0D";"keyword" = "base0E";"label" = "base0E";"namespace" = "base0E";"ui.help" = {fg = "base06";bg = "base01";};"markup.heading" = "base0D";"markup.list" = "base08";"markup.bold" = {fg = "base0A";modifiers = ["bold"];};"markup.italic" = {fg = "base0E";modifiers = ["italic"];};"markup.link.url" = {fg = "base09";modifiers = ["underlined"];};"markup.link.text" = "base08";"markup.quote" = "base0C";"markup.raw" = "base0B";"diff.plus" = "base0B";"diff.delta" = "base09";"diff.minus" = "base08";"diagnostic" = {modifiers = ["underlined"];};"ui.gutter" = {bg = "base01";};"info" = "base0D";"hint" = "base03";"debug" = "base03";"warning" = "base09";"error" = "base08";};
{lib,inputs,...}:inputs.flake-parts.lib.mkTransposedPerSystemModule {name = "lib";option = with lib;mkOption {type = types.lazyAttrsOf types.unspecified;default = {};description = "Utility nix functions";
{inputs, ...}: {perSystem = {pkgs,self',...}: {lib = rec {mkTheme = pkgs.callPackage ./mktheme.nix {};mkHome = pkgs.callPackage ./mkhome.nix {inherit inputs;flake-lib = self'.lib;theme = mkTheme (import ../theme.nix);};const = pkgs.callPackage ./const.nix {};
paradise_dark = {# TODO: Cleaner, more idiomatic solutionpalette = {base00 = theme.primary.background;base01 = theme.dark.gray;base02 = theme.bright.gray;base03 = theme.bright.black;base04 = theme.bright.white;base05 = theme.primary.foreground;base06 = theme.bright.white;base07 = theme.bright.white;base08 = theme.bright.red;base09 = theme.bright.yellow;base0A = theme.bright.yellow;base0B = theme.bright.green;base0C = theme.bright.cyan;base0D = theme.bright.blue;base0E = theme.bright.magenta;base0F = theme.bright.white;};"ui.background" = {bg = "base00";};"ui.virtual" = "base03";"ui.menu" = {fg = "base05";bg = "base01";};"ui.menu.selected" = {fg = "base01";bg = "base04";};"ui.linenr" = {fg = "base03";bg = "base01";};"ui.popup" = {bg = "base01";};"ui.window" = {bg = "base01";};"ui.linenr.selected" = {fg = "base04";bg = "base01";modifiers = ["bold"];};"ui.selection" = {bg = "base02";};"comment" = {fg = "base03";modifiers = ["italic"];};"ui.statusline" = {fg = "base04";bg = "base01";};"ui.cursor" = {fg = "base04";modifiers = ["reversed"];};"ui.cursor.primary" = {fg = "base05";modifiers = ["reversed"];};"ui.text" = "base05";"operator" = "base05";"ui.text.focus" = "base05";"variable" = "base08";"constant.numeric" = "base09";"constant" = "base09";"attributes" = "base09";"type" = "base0A";"ui.cursor.match" = {fg = "base0A";modifiers = ["underlined"];};"string" = "base0B";"variable.other.member" = "base0B";"constant.character.escape" = "base0C";"function" = "base0D";"constructor" = "base0D";"special" = "base0D";"keyword" = "base0E";"label" = "base0E";"namespace" = "base0E";"ui.help" = {fg = "base06";bg = "base01";};"markup.heading" = "base0D";"markup.list" = "base08";"markup.bold" = {fg = "base0A";modifiers = ["bold"];};"markup.italic" = {fg = "base0E";modifiers = ["italic"];};"markup.link.url" = {fg = "base09";modifiers = ["underlined"];};"markup.link.text" = "base08";"markup.quote" = "base0C";"markup.raw" = "base0B";"diff.plus" = "base0B";"diff.delta" = "base09";"diff.minus" = "base08";"diagnostic" = {modifiers = ["underlined"];};"ui.gutter" = {bg = "base01";};"info" = "base0D";"hint" = "base03";"debug" = "base03";"warning" = "base09";"error" = "base08";};
nix_custom = theme.apps.helix;
lib = rec {mkTheme = pkgs.callPackage ./lib/mktheme.nix {};mkHome = pkgs.callPackage ./lib/mkhome.nix {inherit inputs;flake-lib = self'.lib;theme = mkTheme (import ./theme.nix);};const = pkgs.callPackage ./lib/const.nix {};};
{lib,flake-parts-lib,...}:flake-parts-lib.mkTransposedPerSystemModule {name = "lib";option = with lib;mkOption {type = types.lazyAttrsOf types.unspecified;default = {};description = "Utility nix functions";};file = ./lib.nix;}
{...}: {imports = [./lib.nix];}