2024-02-22 06:34:18 +00:00
|
|
|
{ pkgs, lib }:
|
|
|
|
|
|
|
|
{
|
2024-02-23 06:47:49 +00:00
|
|
|
# TODO: Return a derivation containing all of the template output from the
|
|
|
|
# given schemes.
|
|
|
|
generateOutputFromSchemes = schemes: template:
|
|
|
|
pkgs.runCommand "generate-templates" { } ''
|
|
|
|
'';
|
|
|
|
|
|
|
|
# TODO: Return a Nix object to generate a Tinted Theming color scheme from an
|
|
|
|
# image.
|
|
|
|
generateScheme = image: { };
|
|
|
|
|
2024-02-22 06:34:18 +00:00
|
|
|
# A very naive implementation of checking if a Tinted Theming scheme is a
|
|
|
|
# Base16 scheme.
|
|
|
|
isBase16 = palette:
|
|
|
|
let
|
2024-02-23 06:57:33 +00:00
|
|
|
paletteNames = pkgs.lib.attrNames palette;
|
|
|
|
schemeNames = builtins.map (number: "base${number}") (lib.hex.range 1 16);
|
2024-02-22 06:34:18 +00:00
|
|
|
in
|
2024-02-23 06:57:33 +00:00
|
|
|
(pkgs.lib.count (name: pkgs.lib.elem name schemeNames) paletteNames) == 16;
|
2024-02-22 06:34:18 +00:00
|
|
|
|
|
|
|
# A very naive implementation of checking if a Tinted Theming scheme is a
|
|
|
|
# Base24 scheme.
|
|
|
|
isBase24 = palette:
|
|
|
|
let
|
2024-02-23 06:57:33 +00:00
|
|
|
paletteNames = pkgs.lib.attrNames palette;
|
|
|
|
schemeNames = builtins.map (number: "base${number}") (pkgs.lib.hex.range 1 24);
|
2024-02-22 06:34:18 +00:00
|
|
|
in
|
2024-02-23 06:57:33 +00:00
|
|
|
(pkgs.lib.count (name: pkgs.lib.elem name schemeNames) paletteNames) == 24;
|
2024-02-22 06:34:18 +00:00
|
|
|
}
|