e083a68a9f45cd4ed51d8e288ce4c18ff578b50a
xattrs are revealing some unfortunate brittleness in real world derivations that are getting -EINVAL errors while executing their test code. The reason for this is that Linux checks [1] UID delegations for xattrs writes. In the Lix sandbox, except if you enabled a uid-range feature, you have exactly 3 UIDs: root, nixbld and nobody. If your test code makes use of UIDs which have not been delegated, you will receive an EINVAL on your operation. Test code is not resilient with respect to the number of available UIDs in their namespace. To avoid further issues for end users who are running into spurious derivation build failures, we forbid xattrs again for now. For more information about the plans, please consult or chime in [2]. Fixes #1105. Reopens #838. Fixes #1103. [1]: https://elixir.bootlin.com/linux/v6.18.6/source/fs/posix_acl.c#L257 [2]: https://zulip.lix.systems/#narrow/channel/9-Store/topic/disablement.20of.20xattrs/with/5295 Change-Id: I864066b34cd8319d2271fac1b179cb4f950d836e Signed-off-by: Raito Bezarius <raito@lix.systems>
Lix
Lix is an implementation of Nix, a powerful package management system for Linux and other Unix systems that makes package management reliable and reproducible.
Read more about us at https://lix.systems.
Installation
On Linux and macOS the easiest way to install Lix is to run the following shell command (as a user other than root):
$ curl -sSf -L https://install.lix.systems/lix | sh -s -- install
For systems that already have a Nix implementation installed, such as NixOS systems, read our install page
Building And Developing
See our Hacking guide in our manual for instruction on how to set up a development environment and build Lix from source.
Additional Resources
- The Lix reference manual:
- Our wiki
- Matrix - #space:lix.systems
License
Lix is released under LGPL-2.1-or-later.
Description
Working fork of Lix - carries the adaptive load-aware build-remote patch. Upstream: gerrit.lix.systems
92 MiB
Languages
C++
74.9%
Python
11.7%
Nix
6.1%
Shell
3.6%
Meson
2%
Other
1.6%