This moves libsystemd.so and libudev.so into systemd.lib, and gets rid
of libudev (which just contained a copy of libudev.so and the udev
headers). It thus reduces the closure size of all packages that
(indirectly) depend on libsystemd, of which there are quite a few (for
instance, PulseAudio and dbus). For example, it reduces the closure of
Blender from 430.8 to 400.8 MiB.
This adds a backport of rhinstaller/blivet#39 to the pinned blivet
version 0.17, it's addressing the following upstream bug:
https://bugzilla.redhat.com/show_bug.cgi?id=1196397
It has been reported at aszlig/nixpart#7 and tested by @manveru (the
issue reporter), thanks a lot.
Thanks also to @domenkozar for finding the upstream issue.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
Reported-by: Michael Fellinger <m.fellinger@gmail.com>
Fixes: aszlig/nixpart#7
The most complex problems were from dealing with switches reverted in
the meantime (gcc5, gmp6, ncurses6).
It's likely that darwin is (still) broken nontrivially.
The SO major is going to change in the upcoming update of the Hetzner
rescue system, which will cause NixOps to break because it's statically
using the SO major 0 while the new rescue system will have the major
number 1.
I'm still keeping the udevSoMajor attribute to retain backwards-
compatibility with older NixOps versions.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
- systemd puts all into one output now (except for man),
because I wasn't able to fix all systemd/udev refernces
for NixOS to work well
- libudev is now by default *copied* into another path,
which is what most packages will use as build input :-)
- pkgs.udev = [ libudev.out libudev.dev ]; because there are too many
references that just put `udev` into build inputs (to rewrite them all),
also this made "${udev}/foo" fail at *evaluation* time
so it's easier to catch and change to something more specific
Many (less easily automatically converted) old-style strings
remain.
Where there was any possible ambiguity about the exact version or
variant intended, nothing was changed. IANAL, nor a search robot.
Use `with stdenv.lib` wherever it makes sense.
Once nixpart 1.0 is released we then only need to delete one single
directory rather than searching for needles in a haystack, that is, all
of <nixpkgs>. Also, it keeps my sanity at an almost healthy level.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
We don't want Hydra to even try and build this, because we're going to
fill in the right sha256 as soon as the the new nixpart version is
released.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
Put a copy of old version 0.17 expression into 0.17.nix and update the
pointers from nixpart0 accordingly.
This also means, that plain nixpart is now way more broken than
nixpart0 (we might want to temporarily fix 0.4 anyway).
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
Update the nixpart0 pointer to point to this version, because we're
going to update blivet as well and NixOps still points to nixpart0.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
Contains the following fix:
- Fix mounting btrfs when mount_only (-m) is used.
I would like to update blivet as well, but at the moment it breaks for
nixpart, so let's retry later when we're at 0.5.x or even 1.x :-)
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
Changes are:
- Properly detect GPT disklabels and create proper BIOS boot partitions
if necessary.
- Return exit code 100 if reboot is required due to the kernel not
picking up the new partition table.
- Don't include BIOS boot partition in GRUB devices.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
This fixes two issues:
- Don't _always_ print out NixOS configuration, only when explicitly
requested with -p.
- Add GRUB boot devices to NixOS configuration output.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>