summaryrefslogtreecommitdiffstats
path: root/krebs/4lib/shell.nix
blob: 48b220f87776dda55e28fd959310d02775be2329 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{ lib, ... }:

with builtins;
with lib;

rec {
  escape =
    let
      isSafeChar = c: match "[-./0-9_a-zA-Z]" c != null;
    in
    stringAsChars (c:
      if isSafeChar c then c
      else if c == "\n" then "'\n'"
      else "\\${c}");
}