-
-
Notifications
You must be signed in to change notification settings - Fork 14.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
nixos-rebuild boot fails when xorg-server build script tries to open directories under /var/tmp #19673
Comments
Maybe relevant for #19629 @peterhoeg can you please confirm my assumptions
I'm not convinced this is a xkb specific problem, it may as well be a bug in builder.pl. |
|
@peterhoeg any idea why this failure does not show up on hydra? |
Probably it happens only when |
I wonder if that symlink is needed anymore? Such directory doesn't exist on my Arch Linux installation for instance (edit: nvm, they just override the location to |
Now this is getting odd.
And this is where the problems started. Checking Stupid me had run So in under to work around it, I did Why would |
Yes, if you modify nix.conf you generally need to restart nix-daemon. BTW, a safer way to do that is to NOT remount /nix/store rw but instead, make |
Let's say I boot the machine using a generation built with useSandbox = false. If I then enable useSandbox, I would imagine that the new generation is built in a sandbox as I would otherwise have to do it twice because my first round would not be. Then when rebooting nix.conf would tell me that useSandbox is true but it wasn't true when the generation was built. |
I have the same problem. Everything under /var/tmp gets copied to Maybe it can be fixed by being more specific here: https://github.com/NixOS/nixpkgs/blob/master/pkgs/servers/x11/xorg/overrides.nix#L462 Say |
I ran into the same problem. Setting |
@joelmo: does it really get copied for you? I see only a symlink in the code. |
Sorry |
I think we can just do this:
That should just fall back to
Or would an explicit patch to that function be better? (Arguably though, |
Sounds OK to me. |
Still the same error after applying patch from @dezgeg. Running 16.09. Any suggestions? |
Do someone know what functionality |
Just fixed the problem (http://git.that.world/nixpkgs.git/commit/?h=infra&id=02d2655fb9e9c8220c761484f1b0c6861af376d3). Turns out there's 2 more ln-s to be removed. |
@sorpaas It looks like your fix works for me |
This is still failing for me. Does it need to be backported for 16.09? |
@luispedro: I believe no fix has been pushed to the official repo yet. |
Apart from the oddity that |
Same problem here, I'm kind of scratching my head now. |
@roxma I had to do useSandbox = true, then nixos-rebuild switch (without KDE or KDM enabled) , then check /etc/nix/nix.conf to ensure sandbox was enabled, then systemctl restart nix-daemon, finally you can enable KDE and re-run nixos-rebuild switch. |
@sheenobu |
Another way to go around this error is to remove everything in /var/tmp. |
@vcunat Will it go into nixos-16.09 branch of nixpkgs-channels? Thanks. |
@gnidorah, I planned to wait a few days so it gets more testing. |
- Fixes #19673; it caused problems in combination with buildEnv. - As noted, X falls back to /tmp: #19673 (comment) - Removing the directory is still required, as X would attempt to write into it if allowed - and probably succeed in case the user set nix.readOnlyStore = false; (X runs as root). - Archeology link: 9d15693. (cherry picked from commit 33abc70)
Picked to 16.09. It's a bit later than I anticipated, and moreover channels are stalled due to Hydra's current setup. |
- Fixes NixOS#19673; it caused problems in combination with buildEnv. - As noted, X falls back to /tmp: NixOS#19673 (comment) - Removing the directory is still required, as X would attempt to write into it if allowed - and probably succeed in case the user set nix.readOnlyStore = false; (X runs as root). - Archeology link: 9d15693. (cherry picked from commit 33abc70)
Issue description
nixos-rebuild boot
fails to run due to this:systemd
will create directories under/var/tmp
which no user has access to for services withPrivateTmp=true
set./var/tmp
.This is the error:
If x/xkb needs to dynamically compile keymaps (I'm guessing that is what that
$out/share/X11/xkb/compiled
directory is for), shouldn't we instead give it its own directory under/var/lib/xkb
or similar instead?Cc: @groxxda
Technical details
The text was updated successfully, but these errors were encountered: