Code change:
I currently cannot execute any 32 bit Linux binaries on my 64 bit system and this breaks updates, since I have 32 bit support enabled in the nix options: I remember that this worked about a week ago, so something has changed. I am new to NixOS, so its possible that I have done something wrong. I used ArchLinux for about 9 years before that and now NixOS for just 3 months and its concepts are still foreign for me. As a long term linux user (about 15 years) I do feel a bit out of place in NixOS. So I am not sure how to fix that myself. Not sure. I have wine installed and support for 32 bit games enabled. Then I normally do just 'nixos-rebuild switch --upgrade' to upgrade, and sometimes 'nix-channel --update'. I also regularly do 'nix-collect-garbage -d'. No idea if that is reproducible or not.
This might be from Could you see if it works without that commit? Also verify that /nix/store/4qj9vzggfzsc34ci79ckaim5cjrwc6ns-bash-4.4-p23/bin/bash executes. I can run it on my system. You can run this to verify that your store is not corrupted:
I solved it now for me. Instead of using the 'linuxPackagestestinghardened' 4.20 linux kernel I switched back to 'linuxPackages419' 4.19.2 kernel and now executing 32 binaries work again. So I guess the hardened kernel does not support executing 32 bit binaries. Does it make sense to have some kind of visible warning here? I normally would not have used the hardened kernel, if that wouldn't have been the only 4.20 version is I get. Its not clear to me when and how those changes in master appear in my nixpkgs/nixos channel (I am on unstable). I would like to use the master branch directly, but I haven't figured out how to best do that yet.
The same here, hardened kernel 4.18.17 and build failed. building '/nix/store/6h9asn7rc93dbwfcs6xaj3k0qgxmg0vh-libtxcdxtn-'... while setting up the build environment: executing '/nix/store/xgf4vra77qrww0n228hd80jsdccdp54w-bash-4.4-p23/bin/bash': Exec format error builder for '/nix/store/6h9asn7rc93dbwfcs6xaj3k0qgxmg0vh-libtxcdxtn-' failed with exit code 1 building '/nix/store/cfwj5yjby2xvagyj69zd1yx8hdhi27ay-'... cannot build derivation '/nix/store/maynq4fxxjc217figygdrgg5q9xnw6yy-mesa-drivers+txc-': 1 dependencies couldn't be built cannot build derivation '/nix/store/wv9b4ayvgnpkvwz81zkk0lm9w4v5pd1y-opengl-drivers-': 1 dependencies couldn't be built cannot build derivation '/nix/store/q61vc27rdbcsrhxifiw89w1qdjax1amh-nixos-system-brix-': 1 dependencies couldn't be built error: build of '/nix/store/q61vc27rdbcsrhxifiw89w1qdjax1amh-nixos-system-brix-' failed Thanks
Maybe the hardened kernel shouldn't set when NixOS' is an ?
It should be 64 bit for the x86_64-linux stdenv. But some packages use the i686 stdenv.
I am not too familiar with stdenv. Is this expected behaviour that a 64-bit system uses 32-bit binaries? This issue is reproducible building as well.
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: for maintainers and people that previously touched the related code and @ mention them in a comment. on the . on the on .
This should be resolved by - please reopen if there's still a problem.

Related discussion:
text: config = mkIf cfg.enable { <del> assertions = lib.singleton { assertion = cfg.driSupport32Bit -> pkgs.stdenv.isx86_64; message = "Option driSupport32Bit only makes sense on a 64-bit system."; }; </del> <ins> assertions = [ { assertion = cfg.driSupport32Bit -> pkgs.stdenv.isx86_64; message = "Option driSupport32Bit only makes sense on a 64-bit system."; } { assertion = cfg.driSupport32Bit -> (config.boot.kernelPackages.kernel.features.ia32Emulation or false); message = "Option driSupport32Bit requires a kernel that supports 32bit emulation"; } ]; </ins> systemd.tmpfiles.rules = [ "L+ /run/opengl-driver - - - - ${package}"