2020-09-30 03:42:59 +00:00
|
|
|
{ pkgs, lib, ... }:
|
|
|
|
|
|
|
|
# Create a store path where the executable `exe`
|
|
|
|
# is linked to $out/bin/${name}.
|
|
|
|
# This is useful for e.g. including it as a “package”
|
|
|
|
# in `buildInputs` of a shell.nix.
|
|
|
|
#
|
|
|
|
# For example, if I have the exeutable /nix/store/…-hello,
|
|
|
|
# I can make it into /nix/store/…-binify-hello/bin/hello
|
|
|
|
# with `binify { exe = …; name = "hello" }`.
|
|
|
|
{ exe, name }:
|
|
|
|
|
2022-05-19 14:39:52 +00:00
|
|
|
pkgs.runCommandLocal "${name}-bin" { } ''
|
2020-09-30 03:42:59 +00:00
|
|
|
mkdir -p $out/bin
|
|
|
|
ln -sT ${lib.escapeShellArg exe} $out/bin/${lib.escapeShellArg name}
|
|
|
|
''
|