diff options
Diffstat (limited to 'pkgs/sternenseemann/tep/default.nix')
-rw-r--r-- | pkgs/sternenseemann/tep/default.nix | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/pkgs/sternenseemann/tep/default.nix b/pkgs/sternenseemann/tep/default.nix new file mode 100644 index 00000000..9778d536 --- /dev/null +++ b/pkgs/sternenseemann/tep/default.nix @@ -0,0 +1,30 @@ +{ writeHaskell, writeBashBin, runCommandLocal +, emoji-generic, utf8-light, attoparsec, text, bytestring +, bemenu +, fromTep ? "cut -d' ' -f1" +, copy ? "wl-copy --trim-newline" +, emojiTestTxt +}: + +let + tepData = writeHaskell "tep-data" { + libraries = [ emoji-generic utf8-light attoparsec text bytestring ]; + } ./tepData.hs; + emojis = runCommandLocal "emojis.txt" {} '' + ${tepData} < ${emojiTestTxt} > "$out" + ''; +in + +writeBashBin "tep" '' + copy=false + if [[ "$1" = "copy" ]]; then + copy=true + shift + fi + ${bemenu}/bin/bemenu $@ < ${emojis} | ${fromTep} | \ + if $copy; then + ${copy} + else + cat + fi +'' |