I just updated nixos-unstable to the latest version (7d5375ebf4) and now I get this error message:
/nix/store/hbc48phphkhkxgjdkxps9sgim2c2n6fr-nixos-19.09pre191505.7d5375ebf4c/ni
xos/pkgs/development/libraries/vulkan-loader/default.nix
The corresponding code reads:
~
assert version == vulkan-headers.version;
~
It appears those two packages have gotten out of sync?
This was fixed in master in #67841, I guess the unstable channel just needs to update?
Still an issue.
@JosephLucas that's because the channel has not been updated yet. There are a bunch of aborted tests blocking progress. https://hydra.nixos.org/job/nixos/trunk-combined/tested#tabs-constituents
This has my system hung up as well. I can't rebuild.
Originally i was failing because of the assertion failure, but now I just hang :cry:
@alexameen What you can do is clone nixpkgs and do a rebuild switch using that as your nixpkgs directory, that way you don't need to wait for channels to be updated
you are gonna have to pull yourself tho
For building nixpkgs with your local clone, use option -I nixpkgs=/path/to/nixpkgs in nixos-rebuild build
@JosephLucas that's because the channel has not been updated yet. There are a bunch of aborted tests blocking progress. https://hydra.nixos.org/job/nixos/trunk-combined/tested#tabs-constituents
Would it be a solution to use unstable-small channel in such a case ? Doing so would enable the small binary cache. At first sight cloning nixpkgs and building last versions from source seems less optimal. Didn't try myself yet since my network is not good where I'm right now. I will try tonight if the builds of the unstable channel are still not passing.
Would it be a solution to use unstable-small channel in such a case?
Should be possible. I haven't checked the Git history but it was updated 3h ago: https://howoldis.herokuapp.com/.
Doing so would enable the small binary cache. At first sight cloning nixpkgs and building last versions from source seems less optimal.
Depending on the latest commits and current capacity of Hydra you might not have to build anything/much from source as Hydra regularly builds everything (but this is only theoretical, I'm usually following nixos-unstable).
You could also use a local Git clone instead of channels, follow the nixos-unstable channel and only cherry-pick https://github.com/NixOS/nixpkgs/commit/e54007370fafe4b0d50ce4f0b5dcfab34e80042d (that's what I did and usually do in general).
Would it be a solution to use unstable-small channel in such a case?
Should be possible. I haven't checked the Git history but it was updated 3h ago: https://howoldis.herokuapp.com/.
Doing so would enable the small binary cache. At first sight cloning nixpkgs and building last versions from source seems less optimal.
Depending on the latest commits and current capacity of Hydra you might not have to build anything/much from source as Hydra regularly builds everything (but this is only theoretical, I'm usually following
nixos-unstable).You could also use a local Git clone instead of channels, follow the
nixos-unstablechannel and only cherry-pick e540073 (that's what I did and usually do in general).
I'll move that over to my fork. I just didn't know the precise Commit that broke things and didn't really have the time to go digging. I really appreciate the help!
A follow up:
Merging the checking out vulkan files (/pkgs/tools/graphics/vulkan-tools/default.nix, /pkgs/development/library/vulkan-{headers,loader}, and /pkgs/development/tools/vulkan-validation-layers/default.nix) from e540073 sadly did not fix my build issues. It's possible that something else is causing the issue but I'm doubting it.
I get a trace message warning: types.string is deprecated ... and hang for 3 minutes at which point nix-build is terminated.
I wound up removing anything that had vulkan dependencies and was able to rebuild. Bummer though.
ty primeos, cherry picking e540073 worked for me as another person getting this issue from updating nixos-unstable channel. Btw alexameen I did not reproduce your error :confused:
Just to elaborate on primeos' fix for anyone on nixos-unstable who is maybe less experienced with nix but wants to get back to building nixos-unstable asap:
# Download patch file for e540073.
$ curl -O https://github.com/NixOS/nixpkgs/commit/e54007370fafe4b0d50ce4f0b5dcfab34e80042d.patch
$ git clone https://github.com/NixOS/nixpkgs-channels
$ cd nixpkgs-channels
$ git am < ../e54007370fafe4b0d50ce4f0b5dcfab34e80042d.patch
$ sudo nixos-rebuild build -I nixpkgs=. # or switch instead of build
Which should be good enough until official nixos-unstable channel gets e540073, and then these files/directories can be deleted.
If you have no way to download the patch file (not even browser) but still have git, something like this should work after cloning nixpkgs-channels:
$ git remote add main https://github.com/NixOS/nixpkgs
$ git fetch main
$ git cherry-pick -x e540073
# Now build using -I like above.
ty primeos, cherry picking e540073 worked for me as another person getting this issue from updating nixos-unstable channel. Btw alexameen I did not reproduce your error confused
Just to elaborate on primeos' fix for anyone on nixos-unstable who is maybe less experienced with nix but wants to get back to building nixos-unstable asap:
# Download patch file for e540073. $ curl -O https://github.com/NixOS/nixpkgs/commit/e54007370fafe4b0d50ce4f0b5dcfab34e80042d.patch $ git clone https://github.com/NixOS/nixpkgs-channels $ cd nixpkgs-channels $ git am < ../e54007370fafe4b0d50ce4f0b5dcfab34e80042d.patch $ sudo nixos-rebuild build -I nixpkgs=. # or switch instead of buildWhich should be good enough until official nixos-unstable channel gets e540073, and then these files/directories can be deleted.
If you have no way to download the patch file (not even browser) but still have git, something like this should work after cloning nixpkgs-channels:
$ git remote add main https://github.com/NixOS/nixpkgs $ git fetch main $ git cherry-pick -x e540073 # Now build using -I like above.
Hey you're right, I did your patch on a minimal config and it worked correctly. The second set of failures I was experiencing after patching was (deceptively) unrelated bug for renderdoc which relies on vulkan AND some broken Android stuff.
When renderdoc continued to fail (having previously been failing from vulkan) I wrongly assumed that vulkan was still the root problem.
TL;DR Occam's Razor is a lie lol
I am sorry for any confusion.