[Nix-dev] Some missing build-env features

Michael Raskin 7c6f434c at mail.ru
Fri Oct 8 20:15:33 CEST 2010


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 10/08/2010 06:10 PM, Yury G. Kudryashov wrote:
> The current buildEnv implementation lacks some useful features. I'd like to 
> rewrite it but I need some input before I'll start rewriting.
>
> The features I miss in buildEnv.
> 
> 1) Currently a runtime dependency must be a build time dependency as well. 
> This is bad because there are cycles.

I hope you didn't mean package runtime dependencies. But installation to
profile could make buildEnv build and include some more packages.

> 2) A package should be able to tell buildEnv to execute some commands after 
> symlinking dirs&files. Example: update-mime-info etc.
> 
> 3) A package should be able to tell buildEnv to skip some directories. 
> Various examples are currently hardcoded into build-env script.
>
> 4) A package should be able to tell buildEnv about required environment 
> variables. Examples: KDEDIRS, XDG_*, *_PLUGIN_PATH etc.

And what? You mean that buildEnv should build a file like setvars.sh
that can be safely sourced by range of shells from Bourne sh to csh?

In what way should package tell this? It could ask to set a variable to
something (conflict-prone), it could ask to run some hook to modify the
variable (and then how we decide on the order?). Should such a hook have
access to complete environment member list? Before or after propagation?

> What other features do you miss in the current buildEnv? I'm going to 
> propose a syntax for all above after we'll decide on required features.

Well, it would be nice to less Perl hacks and more Nix configurability.
The notion of Nix profile doesn't seem nice to me, but I do have a few
nix-expressions periodically built via nix-build and used in a way
similar to profile. Having a nice buildenv that can be used inside such
construction with unneeded features switched off could be nice.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.16 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJMr1/EAAoJEE6tnN0aWvw3f8kH/i2qNYV5bszeL9R/jwjbHxOI
74y9UC8FTcHOdsRUOIyM4ui2+DxQXHEWVbFaNmRo6CRzxcBqefbFuSH2Kqe7QpPY
TXD2h9WyXVpg74rFi0jxb4Y0ttiXZzuPlmkZ7x4S7wWHuFuTtX/2zxXB8LWFUe7m
ASlT4reL8pRs0JwAMdyJkjBmybs7i8KTXsICUqEz4KSXGYLuB2t+g8YDDIyrGdJZ
fQsuUOgYDJZMZNlI1772MlU1a3VaUbqY29e9siw97+wx1CAjWqoCTipw6h0Mvpg/
m0ycyv8+Rfs6EyCLO3k0thSJMhx+zV+p40rqybHaLz/6C8sf5JwxTPvh3SYqnlY=
=ruqG
-----END PGP SIGNATURE-----



More information about the nix-dev mailing list