appear writable (though all writes go to a tmpfs). This allows you
to run Nix operations on the Live CD. However, we're not quite
there yet since the CD doesn't have a valid Nix database. So for
instance a garbage collect will cause everything to be deleted,
hanging the system.
svn path=/nixos/trunk/; revision=10276
default since it doesn't seem to have the legal issues of
the Intel 2200 firmware.)
* Firmware loader: don't write in /tmp. Also a hack to quickly
test new firmwares.
* Revert r10105 since the build fails if configuration.nix
is a symlink. Anyway copying configuration.nix does not
necessarily make sense since it can import other expressions,
which would also have to be copied. Perhaps a better
approach would be to write a serialisation of the config
to a file (maybe with builtins.toXML).
svn path=/nixos/trunk/; revision=10127
get the background image to work, you may need
to set NIXOS_INSTALL_GRUB=1 when calling
nixos-rebuild to force Grub to be reinstalled
with splashimage support.
svn path=/nixos/trunk/; revision=10071
Just set nix.distributedBuilds to true and nix.buildMachines
to a list of machines that can perform Nix builds via SSH,
and local builds will be forwarded appropriately. So now
any user can say something like
nix-build /etc/nixos/nixpkgs/ --arg system '"powerpc-linux"' -A libxml2
and the build for powerpc-linux will be forwarded to a machine
of that type.
svn path=/nixos/trunk/; revision=9696
sets that match the hierarchical structure of the options. So
instead of
{
name = ["time" "timeZone"];
default = "CET";
example = "America/New_York";
description = "The time zone used when displaying times and dates.";
}
we have
time = {
timeZone = {
default = "CET";
example = "America/New_York";
description = "The time zone used when displaying times and dates.";
};
};
And instead of `config.get ["time" "timeZone"]' you can now just say
`config.time.timeZone'. Furthermore, this option representation
will allow option structures with repetition (such as in
networking.interfaces or services.httpd.subservices) to be defined.
svn path=/nixos/trunk/; revision=9618
for building parts of the system. E.g.
$ nix-build /etc/nixos/nixos -A upstartJobs.xserver
to build the Upstart job for the X server, or
$ nix-build /etc/nixos/nixos -A kernel
to build the NixOS kernel.
* /etc/profile.sh: if ~/.nix-defexpr doesn't exist yet, create it as a
directory and add links to root's channels, /etc/nixos/nixos and
/etc/nixos/install-source.nix (as "nixpkgs_sys").
* boot.useKernel -> boot.kernel.
svn path=/nixos/trunk/; revision=9334
as regular files instead of symlinks to the store.
* Sudo configuration, enabled through security.sudo.enable (on by
default). The contents of the sudoers file is specified in
security.sudo.configFile. The default sudoers file allows members
of the new "wheel" group to run any command.
svn path=/nixos/trunk/; revision=9138
don't need to be subscribed to the Nixpkgs channel to get binary downloads.
This is possible because nix-pull is now pretty fast.
svn path=/nixos/trunk/; revision=9133
list of user accounts that the job needs to run. For instance, the
SSH daemon job says:
{ name = "sshd";
uid = (import ../system/ids.nix).uids.sshd;
description = "SSH privilege separation user";
home = "/var/empty";
}
The activation script creates the system users/groups and updates
them as well. So a change in the Nix expression can be realised in
/etc/{group,passwd} by running nixos-rebuild.
svn path=/nixos/trunk/; revision=8846
environment = {
extraPackages = pkgs: [
pkgs.firefox
pkgs.thunderbird
];
};
This approach is often actually nicer than adding to the default
profile using nix-env, since it's declarative, and all packages
declared here will be updated automatically when you run
nixos-rebuild.
* Allow additional setuid programs to be specified in
security.extraSetuidPrograms.
svn path=/nixos/trunk/; revision=8548
accounts. Obviously we cannot put the store path of bash in
/etc/passwd since it's too fragile (it could be garbage collected),
hence this indirection.
svn path=/nixos/trunk/; revision=8383