about summary refs log tree commit diff
path: root/pkgs/profpatsch/default.nix
diff options
context:
space:
mode:
authorProfpatsch <mail@profpatsch.de>2021-07-27 12:05:49 +0200
committerProfpatsch <mail@profpatsch.de>2021-07-27 12:10:13 +0200
commit5a616c02b1b419eaeae0b608ec2a3c2398eec42f (patch)
tree1a4cc6f5b775f63b2bfa9de84cc7cc4ed6b0e0b8 /pkgs/profpatsch/default.nix
parenta2ad923b121f54c2fd7bcbc0109c4bcf615259c8 (diff)
pkgs/profpatsch/e: fix by rewriting in rust and execing into block
calling `execlineb -c` has unfortunate quoting issues, cause for
cornercases like arguments that contain spaces or `"` the result would
be a completely broken command line.

Instead, let’s do our own block construction in a small rust
program (for speed). I tried implementing it in bash first but even
prepending spaces to a string is a complete waste of time in that
language.
Diffstat (limited to 'pkgs/profpatsch/default.nix')
-rw-r--r--pkgs/profpatsch/default.nix2
1 files changed, 1 insertions, 1 deletions
diff --git a/pkgs/profpatsch/default.nix b/pkgs/profpatsch/default.nix
index 499979a5..f05545bf 100644
--- a/pkgs/profpatsch/default.nix
+++ b/pkgs/profpatsch/default.nix
@@ -181,7 +181,7 @@ in rec {
     runblock;
   inherit (import ./execline/nixecline.nix { inherit writeExecline; })
     backtick;
-  inherit (import ./execline/e.nix { inherit pkgs writeExecline getBins; })
+  inherit (import ./execline/e.nix { inherit pkgs writeExecline getBins writeRustSimple; })
     e;
 
   toNetstring = s: