summary refs log tree commit diff
path: root/mixins/cli.nix
diff options
context:
space:
mode:
authortzlil <tzlils@protonmail.com>2023-06-25 23:23:20 +0300
committertzlil <tzlils@protonmail.com>2023-06-25 23:23:20 +0300
commit190574abc135a3cbdfe0c188a3f7490d374c2fba (patch)
tree8fc2a30cef2964f9342c6dfe6bc7db7c541225e6 /mixins/cli.nix
parent830d708f96cd7e589b6460e0e18e90966da41ff4 (diff)
a bunch of crap idk but website update
Diffstat (limited to 'mixins/cli.nix')
-rw-r--r--mixins/cli.nix14
1 files changed, 14 insertions, 0 deletions
diff --git a/mixins/cli.nix b/mixins/cli.nix
index 8853576..3b331cf 100644
--- a/mixins/cli.nix
+++ b/mixins/cli.nix
@@ -30,6 +30,20 @@
               numpy
               more-itertools
             ]))
+
+          (
+            pkgs.writeShellScriptBin "hs" ''
+              exec ${pkgs.ghc.withPackages (p: with p; [relude pretty-simple])}/bin/ghci -ghci-script ${pkgs.writeText "ghci.conf" ''
+                :set -XNoImplicitPrelude
+                :set -XFlexibleContexts
+                :set -XFlexibleInstances
+                :set -XOverloadedStrings
+                :set prompt "\ESC[38;5;208m\STXλ>\ESC[m\STX "
+                :set -ferror-spans -freverse-errors -fprint-expanded-synonyms
+                :set -interactive-print Text.Pretty.Simple.pPrint
+                import Relude''}
+            ''
+          )
         ];
         sessionVariables = {
           EDITOR = "nvim";