diff options
Diffstat (limited to '')
-rw-r--r-- | hm/soispha/conf/taskwarrior/firefox/lib.nix | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/hm/soispha/conf/taskwarrior/firefox/lib.nix b/hm/soispha/conf/taskwarrior/firefox/lib.nix new file mode 100644 index 00000000..467b9a73 --- /dev/null +++ b/hm/soispha/conf/taskwarrior/firefox/lib.nix @@ -0,0 +1,30 @@ +{lib, ...}: { + fromHexString = hexString: let + fromHexChar = index: char: + { + "0" = 0; + "1" = 1; + "2" = 2; + "3" = 3; + "4" = 4; + "5" = 5; + "6" = 6; + "7" = 7; + "8" = 8; + "9" = 9; + "A" = 10; + "B" = 11; + "C" = 12; + "D" = 13; + "E" = 14; + "F" = 15; + } + .${lib.strings.toUpper char} + * ( + if index == 0 + then 1 + else index * 16 + ); + in + lib.lists.foldr (a: b: a + b) 0 (lib.lists.imap0 fromHexChar (lib.lists.reverseList (lib.strings.stringToCharacters hexString))); +} |