Commit Graph

37 Commits

Author SHA1 Message Date
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