Commit graph

40 commits

Author SHA1 Message Date
Eelco Dolstra c155a3f46e * When doing chroot builds, the `build-chroot-dirs' option should
include the closure of /bin/sh.  Otherwise all builders that call
  /bin/sh will fail when using the new chroot implementation, which
  only bind-mounts the inputs of a build rather than the whole Nix
  store.

svn path=/nixos/trunk/; revision=13640
2008-12-15 23:54:10 +00:00
Eelco Dolstra 37b57e84cf * Disable the warning about missing wrapped setuid programs for now.
svn path=/nixos/trunk/; revision=13219
2008-11-07 13:38:05 +00:00
Eelco Dolstra 4bd1537860 * Create /nix/var/nix/chroots in the activation script
and re-create it at boot time.

svn path=/nixos/trunk/; revision=13152
2008-10-29 15:43:37 +00:00
Eelco Dolstra 274c67a363 * Don't create a setuid wrapper for programs that don't exist.
svn path=/nixos/trunk/; revision=12429
2008-07-25 13:34:00 +00:00
Michael Raskin eb79938997 Added Postfix; handles at least local delivery with maildir/
svn path=/nixos/trunk/; revision=12221
2008-06-30 15:13:02 +00:00
Eelco Dolstra d6e1828c13 * Speed up activating the configuration: don't do a find
on all of /etc, skip /etc/nixos.  (Actually, the NixOS/Nixpkgs
  sources probably shouldn't be stored in /etc...)

svn path=/nixos/trunk/; revision=11261
2008-03-22 16:04:38 +00:00
Ludovic Courtès 79ffaeb2e7 activate-configuration: Look for setuid executables in the default profile.
svn path=/nixos/trunk/; revision=11202
2008-03-19 12:34:39 +00:00
Ludovic Courtès 5568ef6e8d activate-configuration: Report it if a setuid program was not found.
svn path=/nixos/trunk/; revision=11152
2008-03-17 10:11:48 +00:00
Eelco Dolstra ce250ffb37 * Installation CD: include a lot of modules (SATA, PATA, Firewire,
USB, some SCSI controllers) in the initrd for mounting the CD.
* Add nix-hardware-scan to the system.
* Upstart: don't use the -v flag.
* Include the NixOS version in the ISO image filename.
* Include testdisk and ms-sys in the CD.
* Some bugfixes in the installer.

svn path=/nixos/trunk/; revision=10556
2008-02-08 15:59:15 +00:00
Eelco Dolstra 9fd5d70968 * The CD is now a true live CD: you can run Nix operations in it
thanks to unionfs.  For instance, nix-env and nixos-rebuild work.
  The tricky part was to build a Nix database (in the tmpfs/unionfs)
  which is now necessary to prevent store paths on the CD from being
  deleted right away because they otherwise wouldn't be valid.
  
* nixos-install: use the /etc/nixos/configuration.nix from the target
  file system (don't copy it anymore).  Since the user is supposed to
  mount the target file system on /mnt anyway, we may as well require
  that configuration.nix is placed in /mnt/etc/nixos.  This also makes
  upgrading / reinstalling much easier, since it will automatically
  use the right configuration.nix.

svn path=/nixos/trunk/; revision=10399
2008-01-30 01:28:56 +00:00
Eelco Dolstra 49e8829053 * Use unionfs to provide a real Live CD, i.e., the files on the CD
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
2008-01-24 16:56:09 +00:00
Eelco Dolstra becb4b69c1 Allow the hostname to be empty (to obtain it using dhcp).
svn path=/nixos/trunk/; revision=9857
2007-12-04 15:02:48 +00:00
Eelco Dolstra f6fd10cbd8 * Support for system-wide distributed / multi-platform builds.
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
2007-11-15 17:16:16 +00:00
Eelco Dolstra a0f5a93229 * Create /var/tmp.
svn path=/nixos/trunk/; revision=9653
2007-11-12 14:45:26 +00:00
Eelco Dolstra 81c7e17e02 * An option nix.useChroot to enable chroot builds in NixOS.
svn path=/nixos/trunk/; revision=9583
2007-11-05 11:19:51 +00:00
Eelco Dolstra 2cc89b09e6 * Create /dev/{stdin,stdout,stderr}.
svn path=/nixos/trunk/; revision=9416
2007-10-06 18:53:50 +00:00
Eelco Dolstra 475ee4548d * Create /nix/var/nix/gcroots/per-user.
svn path=/nixos/trunk/; revision=9189
2007-08-22 14:58:51 +00:00
Eelco Dolstra 2a4417d637 * make-etc / activate-configuration: allow /etc files to be installed
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
2007-08-16 15:09:06 +00:00
Eelco Dolstra 05e9b29525 * Search /nix/var/nix/manifests for GC roots under NixOS.
svn path=/nixos/trunk/; revision=9090
2007-08-09 23:54:23 +00:00
Michael Raskin 0e92d41124 Added configuration.nix option to add entries into nix.conf .
svn path=/nixos/trunk/; revision=8910
2007-06-21 17:14:33 +00:00
Eelco Dolstra 1f1db4c48f * Use pam_console to change the ownership of various devices (sound,
CD-ROM drive, etc.) to the logged in user.  Woohoo!  Finally, no
  more chown /dev/snd/*.
* Get rid of spurious error messages about pam_ldap when we're not
  using LDAP.

svn path=/nixos/trunk/; revision=8861
2007-06-10 20:02:07 +00:00
Eelco Dolstra 29c5178bdf * Declarative specification of user accounts. Jobs can now specify a
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
2007-06-08 15:41:12 +00:00
Eelco Dolstra 7243eb1d1d * Create /bin on the CD to suppress the /bin/sh symlink creation
error.
* Put the top-level system config on the CD, otherwise root doesn't
  get a working login shell on the CD (and the system PATH is broken
  as well).

svn path=/nixos/trunk/; revision=8658
2007-05-09 17:32:41 +00:00
Eelco Dolstra be8bcebfe0 * Use /var/run/current-system/sw/bin/bash as the default shell for new
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
2007-03-20 13:30:14 +00:00
Eelco Dolstra c10fe148a3 * /var/run/current-system symlinks to the top-level path of the system
configuration now.
* /var/run/booted-system symlinks to the system configuration used at
  boot time.

svn path=/nixos/trunk/; revision=8381
2007-03-20 13:01:53 +00:00
Eelco Dolstra 80a0904196 * Set /var/run/current-system to the currently active system
configuration, and use it as a garbage collection root to prevent
  the current configuration from being GC'ed (which was previously
  possible if the configuration was activated using "nixos-rebuild
  test", or if the configuration's generation symlink had been removed
  from the system profile).

  This isn't quite right yet due to a layering problem:
  activate-configuration.sh doesn't know the top-level store path of
  the configuration.

svn path=/nixos/trunk/; revision=8379
2007-03-20 11:45:59 +00:00
Eelco Dolstra 9e9d6a4c62 * Use a bash built with ncurses support for logins.
svn path=/nixos/trunk/; revision=8376
2007-03-20 10:40:45 +00:00
Eelco Dolstra 119df37858 * Generate a wrapper around modprobe that sets MODULE_DIR. This is
important for /proc/sys/kernel/modprobe, i.e., modprobing by the
  kernel.

svn path=/nixos/trunk/; revision=8164
2007-03-04 01:16:24 +00:00
Eelco Dolstra 31d91b4ec1 * Set build-max-jobs in the Nix configuration file from the NixOS
configuration file.

svn path=/nixos/trunk/; revision=8109
2007-02-28 16:58:35 +00:00
Eelco Dolstra 42bcb9a2a7 * Recreate the /bin/sh symlink.
svn path=/nixos/trunk/; revision=7855
2007-02-06 13:15:52 +00:00
Eelco Dolstra 9866132d81 * Generate the LDAP configuration automatically.
svn path=/nixos/trunk/; revision=7698
2007-01-16 16:09:43 +00:00
Eelco Dolstra af19b39a4b * Create wtmp, lastlog.
svn path=/nixos/trunk/; revision=7683
2007-01-15 17:16:49 +00:00
Eelco Dolstra 045d9fdc88 * Use /etc/profile into a separate file.
* Automatically set up a per-user profile in
  /nix/var/nix/profiles/per-user/$USER.
* Initialise ~/.nix-defexpr and ~/.nix-profile.

svn path=/nixos/trunk/; revision=7680
2007-01-15 14:43:56 +00:00
Eelco Dolstra d62029bc68 * Set ACLOCAL_PATH.
svn path=/nixos/trunk/; revision=7661
2007-01-14 16:15:51 +00:00
Eelco Dolstra 5acc5f6e28 * Finally.
svn path=/nixos/trunk/; revision=7639
2007-01-11 16:53:44 +00:00
Eelco Dolstra ebf72223a4 * Ugh.
svn path=/nixos/trunk/; revision=7638
2007-01-11 16:50:42 +00:00
Eelco Dolstra e1b9efddcb * Slurp in ~/.bashrc from /etc/profile (just like SUSE).
* Set a nice prompt.

svn path=/nixos/trunk/; revision=7637
2007-01-11 16:42:18 +00:00
Eelco Dolstra 580f98f1ed * Make the set of setuid programs configurable.
* Make crontab setuid.

svn path=/nixos/trunk/; revision=7636
2007-01-11 16:29:23 +00:00
Eelco Dolstra d4183887a8 * Add man to the initial path.
svn path=/nixos/trunk/; revision=7591
2007-01-09 17:27:26 +00:00
Eelco Dolstra b6b5bafa22 * Refactoring.
svn path=/nixos/trunk/; revision=7533
2007-01-04 10:29:40 +00:00
Renamed from configuration/activate-configuration.sh (Browse further)