| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
|
|
|
|
|
| |
(#47695)
The autoupgrade service defined in `system.autoUpgrade`
(`nixos/modules/installer/tools/auto-upgrade.nix`) doesn't have `su` in
its path and thus yields a warning during the `daemon-reload`.
Specifying the absolute path fixes the issue.
Fixes #47648
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
or else at least the following config will fail with an evaluation error
instead of an assert
```
{
services.nixosManual.enable = false;
services.nixosManual.showManual = true;
}
```
|
|
|
|
|
| |
(#46851)
This fixes #46750. This should also work with non-POSIX shells like in #46042.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes an issue with shells like fish that are not fully POSIX
compliant. The syntax `ENV=val cmd' doesn't work properly in there.
This issue has been addressed in #45932 and #45945, however it has been
recommended to use a single shell (`stdenv.shell' which is either
`bash' or `sh') to significantly reduce the maintenance overload in the
future.
See https://github.com/NixOS/nixpkgs/issues/45897#issuecomment-417923464
Fixes #45897
/cc @FRidh @xaverdh @etu
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The instructions to install nixos behind a proxy were not clear. While
one could guess that setting http_proxy variables can get the install
rolling, one could end up with an installed system where the proxy
settings for the nix-daemon are not configured.
This commit updates the documentation with
1. steps to install behind a proxy
2. configure the global proxy settings so that nix-daemon can access
internet.
3. Pointers to use nesting.clone in case one has to use different proxy
settings on different networks.
|
|\
| |
| | |
$toplevel/system: buildPlatform.system -> hostPlatform.system
|
| | |
|
|/
|
| |
because stdenv.platform is stdenv.buildPlatform.platform
|
| |
|
|
|
|
|
| |
This resolves the FIXME, and opens up the possibility of using more of
the systemd DBus interface to make things more robust.
|
|
|
|
|
| |
This reverts commit e508f0eec142c978f6b77bf96b3887471c7fc807, reversing
changes made to bead42df5d400aba2e8686988dc39ca0f1f9e131.
|
|
|
|
|
| |
This resolves the FIXME, and opens up the possibility of using more of
the systemd DBus interface to make things more robust.
|
| |
|
| |
|
|
|
|
|
|
|
| |
Fixes #28443
Fixed few invocations to `systemctl` to have an absolute path. Additionally add
LOCALE_ARCHIVE so that perl stops spewing warning messages.
|
| |
|
| |
|
|
|
|
|
|
| |
Currently e.g. extlinux-conf-builder.sh uses
`readlink -m "$toplevel/kernel/../dtbs"` to figure out the directory.
That is obscenely ugly.
|
|
|
|
|
|
|
| |
This is a standard environment that doesn't contain a C/C++
compiler. This is mostly to prevent trivial builders like runCommand
and substituteAll from pulling in gcc for simple configuration changes
on NixOS.
|
|
|
|
| |
Fixes #7974. Also makes the description more informative.
|
|
|
|
|
|
| |
- add missing types in module definitions
- add missing 'defaultText' in module definitions
- wrap example with 'literalExample' where necessary in module definitions
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Setting nixosVersion to something custom is useful for meaningful GRUB
menus and /nix/store paths, but actuallly changing it rebulids the
whole system path (because of `nixos-version` script and manual
pages). Also, changing it is not a particularly good idea because you
can then be differentitated from other NixOS users by a lot of
programs that read /etc/os-release.
This patch introduces an alternative option that does all you want
from nixosVersion, but rebuilds only the very top system level and
/etc while using your label in the names of system /nix/store paths,
GRUB and other boot loaders' menus, getty greetings and so on.
|
| |
|
|
|
|
| |
This way, hardware.firmware can be a list of packages.
|
|
|
|
|
| |
This reduces the number of binary cache requests. See
https://github.com/NixOS/nix/commit/b64988bb3585478676585a0f0aecbcf4e11d4432.
|
|
|
|
|
|
|
| |
closure
Mostly useful for installer tests that don't have network access. This
generalizes virtualisation.pathsInNixDB and isoImage.storeContents.
|
|
|
|
| |
Seems to have been broken by accident in 7d1ddae58e465a1708967c9fee651c33819969c6.
|
| |
|
| |
|
|
|
|
| |
Fixes #2340
|
|
|
|
|
|
|
|
| |
This seems to have combined badly with the systemd upgrade, we'll revert
for now and revisit after the 14.04 branch.
This reverts commit ad80532881119b642d63c7d126e46f4e26cdb0be, reversing
changes made to 1c5d3c78831b5d1aee3b46c2e5cabe7af14bc1d1.
|
|\
| |
| |
| |
| | |
Conflicts:
nixos/modules/system/activation/switch-to-configuration.pl
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Using pkgs.lib on the spine of module evaluation is problematic
because the pkgs argument depends on the result of module
evaluation. To prevent an infinite recursion, pkgs and some of the
modules are evaluated twice, which is inefficient. Using ‘with lib’
prevents this problem.
|
|/
|
|
|
|
|
| |
Currently switch-to-configuration.pl uses system() calls to interact
with DBus. This can be error prone, especially when we are parsing
output that could change. In this commit, almost all calls to the
systemctl binary have been replaced with equivalent operations via DBus.
|
|
|
|
|
| |
Broken in 9ee30cd9b51c46cea7193993d006bb4301588001. Reported by Arvin
Moezzi.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
You can now say:
systemd.containers.foo.config =
{ services.openssh.enable = true;
services.openssh.ports = [ 2022 ];
users.extraUsers.root.openssh.authorizedKeys.keys = [ "ssh-dss ..." ];
};
which defines a NixOS instance with the given configuration running
inside a lightweight container.
You can also manage the configuration of the container independently
from the host:
systemd.containers.foo.path = "/nix/var/nix/profiles/containers/foo";
where "path" is a NixOS system profile. It can be created/updated by
doing:
$ nix-env --set -p /nix/var/nix/profiles/containers/foo \
-f '<nixos>' -A system -I nixos-config=foo.nix
The container configuration (foo.nix) should define
boot.isContainer = true;
to optimise away the building of a kernel and initrd. This is done
automatically when using the "config" route.
On the host, a lightweight container appears as the service
"container-<name>.service". The container is like a regular NixOS
(virtual) machine, except that it doesn't have its own kernel. It has
its own root file system (by default /var/lib/containers/<name>), but
shares the Nix store of the host (as a read-only bind mount). It also
has access to the network devices of the host.
Currently, if the configuration of the container changes, running
"nixos-rebuild switch" on the host will cause the container to be
rebooted. In the future we may want to send some message to the
container so that it can activate the new container configuration
without rebooting.
Containers are not perfectly isolated yet. In particular, the host's
/sys/fs/cgroup is mounted (writable!) in the guest.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
It's redundant because you can (and should) specify an option type, or
an apply function.
|
|
|
|
|
| |
This means they're not for end users. Currently they're filtered from
the manual, but we could include them in a separate section.
|
|
|