* guix environment shebang interpreter
@ 2020-01-21 0:02 EuAndreh via
2020-02-06 10:37 ` mlell
0 siblings, 1 reply; 5+ messages in thread
From: EuAndreh via @ 2020-01-21 0:02 UTC (permalink / raw)
To: help-guix
Hi Guix!
Is there a Guix equivalent of the nix-shell shebang?
Sample from Nix documentation
(https://nixos.org/nix/manual/#use-as-a-interpreter):
--8<---------------cut here---------------start------------->8---
#!/usr/bin/env nix-shell
#!nix-shell -i perl -p perl perlPackages.HTMLTokeParserSimple perlPackages.LWP
use HTML::TokeParser::Simple;
...
--8<---------------cut here---------------end--------------->8---
Can I already accomplish this with Guix? If so, how?
I tried searching previous discussions of this topic on Guix mailing
lists, but couldn't find any. If this was disscussed before, could
anyone point me to the thread?
Thanks!
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: guix environment shebang interpreter
2020-01-21 0:02 EuAndreh via
@ 2020-02-06 10:37 ` mlell
2020-02-13 15:43 ` EuAndreh via
0 siblings, 1 reply; 5+ messages in thread
From: mlell @ 2020-02-06 10:37 UTC (permalink / raw)
To: EuAndreh; +Cc: Help-Guix, help-guix
Hi!
> Is there a Guix equivalent of the nix-shell shebang?
>
You could imagine something like:
#! /usr/bin/env guix environment --ad-hoc PKG1 PKG2 ... --
INTERPRETER
But alas, on linux you cannot put more than one argument in the shebang
line.
See this discussion:
https://unix.stackexchange.com/questions/399690/multiple-arguments-in-shebang
But, one answer there has a possible solution for you:
https://unix.stackexchange.com/a/399698
--8<-------------------------------------------------------
#!/bin/sh -
if [ "$1" != "--really" ]; then exec bash --posix -- "$0" --really "$@";
fi
shift
# Processing continues
----------------------------------------------->8-----------
It lets the script `exec` itself with the right arguments! So maybe put
exec guix environment --ad-hoc PKG1 PKG2 ... -- INTERPRETER "$0"
"$@"
there?
Cheers,
Moritz
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: guix environment shebang interpreter
2020-02-06 10:37 ` mlell
@ 2020-02-13 15:43 ` EuAndreh via
0 siblings, 0 replies; 5+ messages in thread
From: EuAndreh via @ 2020-02-13 15:43 UTC (permalink / raw)
To: mlell; +Cc: help-guix, Help-Guix
mlell@posteo.de writes:
> But, one answer there has a possible solution for you:
> https://unix.stackexchange.com/a/399698
>
> --8<-------------------------------------------------------
> #!/bin/sh -
>
> if [ "$1" != "--really" ]; then exec bash --posix -- "$0" --really "$@";
> fi
>
> shift
>
> # Processing continues
> ----------------------------------------------->8-----------
>
> It lets the script `exec` itself with the right arguments! So maybe put
>
> exec guix environment --ad-hoc PKG1 PKG2 ... -- INTERPRETER "$0"
> "$@"
>
> there?
Hmm, I guess that works. It's a bit ugly but does the job. Thanks for
the link.
I also just wanted to check for the existance of such functionality in
Guix already, before pursuing alternatives.
Thanks Moritz :)
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2020-02-13 16:00 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <mailman.123.1581008426.401.help-guix@gnu.org>
2020-02-06 23:22 ` guix environment shebang interpreter John D. Boy
2020-02-07 14:57 ` mlell
2020-01-21 0:02 EuAndreh via
2020-02-06 10:37 ` mlell
2020-02-13 15:43 ` EuAndreh via
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.