Was about to update my nix-store a Fedora 25 workstation:
$ nix-channel --update
downloading Nix expressions from ‘https://d3g5gsiof5omrk.cloudfront.net/nixpkgs/nixpkgs-18.03pre116369.14cbeaa892/nixexprs.tar.xz’...
downloading ‘https://d3g5gsiof5omrk.cloudfront.net/nixpkgs/nixpkgs-18.03pre116369.14cbeaa892/nixexprs.tar.xz’... [8991/9145 KiB, 640.3 KiB/s]
$ nix-env -u
error: removing extended attribute ‘system.nfs4_acl’ from ‘/nix/store/ijxblasjbl4l53gd3cg3q49ci8nh6wj1-env-manifest.nix’: Input/output error
This used to work for years.
The store is located on an NFSv4 mount served over network. Its location is
~/.nix-store, bind-mounted at login to /nix.
# set up nix and nixpkgs; then
$ nix-channel --update
$ nix-env -u
System: (NixOS: nixos-version, Ubuntu/Fedora: lsb_release -a, ...)
$ uname -a
Linux drift.m.i2n 4.12.11-200.fc25.x86_64 #1 SMP Fri Sep 8 11:44:51 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
Nix version: (run nix-env --version)
$ nix-env --version
nix-env (Nix) 1.11.14
Nixpkgs version: (run nix-instantiate --eval '<nixpkgs>' -A lib.nixpkgsVersion)
$ nix-instantiate --eval '
"18.03pre114739.d0d905668c"
Sandboxing enabled: (run grep build-use-sandbox /etc/nix/nix.conf)
Does not apply: Not NixOS.
Probably caused by NixOS/nix@d798349ede3d6eb6e92a2e4f95f6b2179407ceb9.
Looks like. Anything I can do?
We can probably ignore system.nfs4_acl, as with security.selinux, but we'd have to be sure that this leaves no ACLs behind...
Could this be made configurable? I imagine other situations may arise where users need to whitelist attributes because of an exotic setup.
Just having the same problem on a Lustre file system:
error: removing extended attribute ‘lustre.lov’ from ‘/nix/store/y2y67fng7drrqlgfwf92mlf62lmgg7zj-perl-5.24.3/bin/perl5.24.3’: Permission denied
Hello,
Any news? Because of that error I can't even install nix.
@tobiasBora If you are willing to compile it manually, you can apply the patch supplied by phi-gamma. I've had success with that solution.
After bootstrapping, the following .config/nixpkgs/config.nix might be what you need:
{
packageOverrides = pkgs: {
nix = pkgs.nix.overrideAttrs(oldAttrs: {
prePatch = ''
substituteInPlace src/libstore/local-store.cc \
--replace '(eaName == "security.selinux")' \
'(eaName == "security.selinux" || eaName == "system.nfs4_acl")'
'';
});
};
}
@knedlsepp : Thank you for the tip, but do you have any idea why this fix is not included upstream?
I'm having this issue in nix 2.0.2, which I just built manually from source. I'm confused as to how to apply the workaround @knedlsepp mentioned (since I'm just learning how to use nix); it looks like after dropping that file (in my home directory? Or somewhere in my nix store or state directories?) I need to use nix to rebuild nix. Is that likely to work if I can't update the channels? And how would I go about doing that?
EDIT: I applied the patch at #1584 by manually patching the nix source and rebuilding. Now I have a new error to solve.
I'm having this error in Nix 2.1.3 with a CephFS filesystem:
error: removing extended attribute 'ceph.dir.entries' from ...: Operation not supported
I'd also appreciate if this were made configurable, since indiscriminately removing xattrs from files can cause problems in unusual setups.
Is this error related https://github.com/NixOS/nixpkgs/issues/71900 ?
Is there an _easier_ workaround like granting the chattr rights to the user, who does the single-user-installation of /nix in ubuntu?
sudo nix-env ... does not work.
Thank you for your contributions.
This has been automatically marked as stale because it has had no activity for 180 days.
If this is still important to you, we ask that you leave a comment below. Your comment can be as simple as "still important to me". This lets people see that at least one person still cares about this. Someone will have to do this at most twice a year if there is no other activity.
Here are suggestions that might help resolve this more quickly:
Still important to me. I have the same issue but with btrfs.compression.