[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: wrap-program –> wrap-script
From: |
Maxim Cournoyer |
Subject: |
Re: wrap-program –> wrap-script |
Date: |
Sat, 14 Dec 2019 00:07:22 +0900 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) |
Hello Ricardo,
Ricardo Wurmus <address@hidden> writes:
> Hi Guix,
>
> I’ve just pushed a change to use wrap-script in one package. The
> purpose of wrap-script is to wrap an executable without having to create
> a separate wrapper shell script. It does this by prepending a Guile
> script to the top of the file, which sets the environment variables and
> then re-executes itself with the target interpreter (e.g. Python).
That's smart!
> I noticed two things:
>
> 1) wrap-script does not automatically pull in Guile as a dependency, so
> if Guile isn’t among the inputs it will create a bad shebang. This
> should be fixed on core-
Since as you mention below, the wrap-script isn't much used at all, I
guess the reason to make the change to core-updates rather than master
is because the host module of wrap-script (guix build utils) is used as
a whole when computing the hash of derivations?
> 2) we aren’t using wrap-script anywhere. I think a good use case would
> be the Python build system’s “wrap” phase where we currently use
> wrap-program. Most of the time we’d be dealing with Python scripts, so
> using wrap-script would be more appropriate here.
>
> What do you think?
Are you considering "testing" for the type of file (e.g., script?
binary?) before wrapping it? Something else?
I like the idea in general. IIUC this would remove the need to have
those ugly .real-script-name lying around.
Maxim