3
0
Fork 0
forked from mirrors/nixpkgs
nixpkgs/nixos
aszlig e662e035f9
nixos/systemd-boot-builder: Don't write .pyc files
This has surfaced since d990aa7163.

The "simpleUefiGummiboot" installer test fails since this commit,
because that commit introduced a small check to verify whether the store
was altered.

While installing NixOS for the first time, the store is usually in
/mnt/nix/store and without the read-only bind mount that's preventing
programs from altering the store.

So after nixos-install is done creating the system closure and setting
it as the active system profile, the bootloader is written from the
closure inside the chroot. The systemd-boot-builder is invoked during
this step, which adds .pyc files for various Python modules of the
Python 3 store path, which in turn invalidates the hash of the Python 3
store path itself.

At the time the system is booted up again, the nix-store is verified and
fails with something like this:

path /nix/store/zvm545rqc4d97caqq9h7344bnd06jhzb-python3-3.5.3 was
modified! expected hash
b2c975f4b8d197443fbb09690fb3f6545e165dd44c9309d7d6df2fce0579ebeb, got
bccca19f39c9d26d857ccf1fb72818b2b817967e6d497a25a1283e36ed0acf01

Running the interpreter with the -B argument prevents Python from
writing those byte code files:

https://docs.python.org/3/using/cmdline.html#cmdoption-B

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2017-04-20 00:37:02 +02:00
..
doc/manual Merge pull request #24526 from miltador/jetbrains 2017-04-11 13:56:20 +02:00
lib nixos/testing: Improve quality of OCR 2017-04-11 03:21:53 +02:00
maintainers gce/create-gce.sh: rewrite using nix-shell shebang and bash (#24869) 2017-04-13 13:42:28 +02:00
modules nixos/systemd-boot-builder: Don't write .pyc files 2017-04-20 00:37:02 +02:00
tests Refactor nixos-install to separate out filesystem build logic 2017-04-16 16:09:41 +00:00
COPYING
default.nix Remove nixFallback 2017-03-06 15:54:50 +01:00
README
release-combined.nix nixos/sddm: test automatic and manual login 2017-03-24 10:39:13 -05:00
release-small.nix nixos/release-small.nix: cleanup to use default versions 2017-01-27 15:33:54 +01:00
release.nix Merge branch 'master' into postgresql-tests 2017-04-07 10:28:58 +01:00

*** NixOS ***

NixOS is a Linux distribution based on the purely functional package
management system Nix.  More information can be found at
http://nixos.org/nixos and in the manual in doc/manual.