Commit graph

38 commits

Author SHA1 Message Date
Eelco Dolstra 29b6b8769f * On second thought, let's not enable user support in Upstart. The
first user job I put in ~/.init caused Upstart to crash with an
  assertion failure, taking down the system.  Given that Upstart has a
  non-trivial attack surface with this feature, it seems best to
  disable it.

svn path=/nixos/trunk/; revision=32779
2012-03-04 17:49:00 +00:00
Eelco Dolstra 545f922e71 * Connect Upstart to the system bus so that non-root users can run
initctl.

svn path=/nixos/trunk/; revision=32768
2012-03-04 15:10:14 +00:00
Eelco Dolstra aca8225e3b * Invalidate the nscd hosts cache when an "ip-up" event occurs. This
event is emitted by dhclient and by the network-interfaces job in
  case of statically configured interfaces.  Invalidating the cache is
  necessary to get rid of negative queries.

svn path=/nixos/trunk/; revision=31779
2012-01-21 19:13:43 +00:00
Eelco Dolstra 8eba736da9 * Use the ‘path’ attribute in Upstart jobs in more places. It's a bit
more readable (also in "ps" output).

svn path=/nixos/trunk/; revision=30565
2011-11-25 16:32:54 +00:00
Eelco Dolstra 1d5d7036d0 * Add a module for managing cgroups.
svn path=/nixos/trunk/; revision=30551
2011-11-24 18:28:45 +00:00
Peter Simons 20b364f4de Reverting revisions 30103-30106: "always set nixpkgs.config.{state,store}Dir", etc.
After the change from revision 30103, nixos-rebuild suddenly consumed
freaky amounts of memory. I had to abort the process after it had
allocated well in excess of 30GB(!) of RAM. I'm not sure what is causing
this behavior, but undoing that assignment fixes the problem. The other
two commits needed to be revoked, too, because they depend on 30103.

svn path=/nixos/trunk/; revision=30127
2011-10-30 15:19:58 +00:00
Shea Levy 09cf6ce70c find modules | fgrep .nix | fgrep -v .svn | fgrep -v nixpkgs.nix | xargs sed -i -e 's|/nix/var|${config.nixpkgs.config.nix.stateDir}|g' -e 's|/nix/store|${config.nixpkgs.config.nix.storeDir}|g'
Don't assume /nix/store or /nix/var in NixOS modules, this is configurable

svn path=/nixos/trunk/; revision=30104
2011-10-29 21:03:57 +00:00
Peter Simons eb6e1310b8 strip trailing whitespace; no functional change
svn path=/nixos/trunk/; revision=29285
2011-09-14 18:20:50 +00:00
Yury G. Kudryashov bcee582a74 Preserve <standard_session_service_dirs/> in dbus.conf
This way *session* dbus daemon loads services from XDG_DATA_DIRS

svn path=/nixos/trunk/; revision=29106
2011-09-07 23:07:05 +00:00
Yury G. Kudryashov 42a03ef0eb Sync with dbus changes in nixpkgs
svn path=/nixos/trunk/; revision=28832
2011-08-26 13:46:59 +00:00
Yury G. Kudryashov e5917ea6fc Merge with udev-173
The only conflict was the addition of two different options at the same place.

svn path=/nixos/trunk/; revision=28801
2011-08-24 21:24:39 +00:00
Eelco Dolstra fc8204c0e4 * Always symlink etc/dbus-1 and share/dbus-1 in the system path, not
just when KDE is enabled.

svn path=/nixos/trunk/; revision=23053
2010-08-09 11:42:32 +00:00
David Guibert 6436ed1de4 nixos: kerberos services for the server.
svn path=/nixos/trunk/; revision=22985
2010-08-06 08:49:08 +00:00
Eelco Dolstra 25fd35862a * Add /nix/var/nix/profiles/default and config.system.path to the list
of DBus configuration directories.  Thus packages with DBus
  configuration files installed in the default profile will be found
  automatically.  (It would be nice to include $HOME/.nix-profile in
  the session bus search path, but I don't think that's possible.)

svn path=/nixos/trunk/; revision=22737
2010-07-26 14:10:04 +00:00
Eelco Dolstra 44656be396 * dbus-daemon: use /etc/dbus-1/system.conf (i.e. ‘--system’) rather than
${configDir}/system.conf.  This is necessary to enable dbus to
  reload its configuration on SIGHUP after a nixos-rebuild.  (The
  daemon cannot be restarted because then console-kit-daemon loses its
  state.)
* Generate a proper /etc/dbus-1/session.conf.

svn path=/nixos/trunk/; revision=22572
2010-07-13 09:22:52 +00:00
Lluís Batlle i Rossell 3f6ca96967 Adding an option to disable nscd.
svn path=/nixos/trunk/; revision=19004
2009-12-16 20:51:25 +00:00
Lluís Batlle i Rossell 4e8270f695 Upstart considers that syslog is ready (runs openlog())
after the connection to dbus worked.
So I set dbus depend also on syslogd.

svn path=/nixos/trunk/; revision=19002
2009-12-16 19:45:11 +00:00
Eelco Dolstra 7aecd0ca53 * hal: depend on both dbus and acpid (if enabled).
* dbus: don't signal Upstart, since that seems to make it forget about
  pending events or something.  In any case starting dbus after acpid
  was running wouldn't trigger hal to be started (but the other way
  around did work).

svn path=/nixos/branches/upstart-0.6/; revision=18251
2009-11-07 12:01:12 +00:00
Eelco Dolstra 83a9bf9a6a * Change all the startOn / stopOn attributes to the Upstart 0.6 syntax
(e.g., startOn = "started foo" instead of startOn = "foo").

svn path=/nixos/branches/upstart-0.6/; revision=18230
2009-11-06 22:19:17 +00:00
Eelco Dolstra b9bfe7ed43 * Connect Upstart to the system bus.
svn path=/nixos/branches/upstart-0.6/; revision=18213
2009-11-06 15:59:23 +00:00
Eelco Dolstra 903e92bde6 * Use Upstart's "export fork" feature to properly detect when a daemon
is "ready".  This prevents ugly race conditions, e.g. HAL failing to
  start because dbus hasn't finished starting yet.
* Support post-start scripts.  These are executed after the job's main
  process has started but before the job's "started" event is
  emitted.  For instance, the udev job uses this to perform "udevadm
  trigger / settle" to create all devices.  Previously this had to be
  done in the pre-start script, so the daemon had to started in the
  pre-start script as well.

svn path=/nixos/branches/upstart-0.6/; revision=18211
2009-11-06 15:23:16 +00:00
Eelco Dolstra 5d240b99d5 * Work around a bug in HAL (it fails to start if $PATH is too long,
since it uses a 512-byte buffer somewhere).

svn path=/nixos/branches/upstart-0.6/; revision=18198
2009-11-06 11:31:57 +00:00
Eelco Dolstra ad17a6dce3 * Changes related to the xorg-7.5 merge.
svn path=/nixos/trunk/; revision=18126
2009-11-04 22:44:40 +00:00
Eelco Dolstra eba8f94069 * jobAttrs -> jobs.
svn path=/nixos/trunk/; revision=17769
2009-10-12 18:09:34 +00:00
Eelco Dolstra d982f23f20 * Convert the remaining jobs to jobAttrs style.
svn path=/nixos/trunk/; revision=17764
2009-10-12 17:27:57 +00:00
Eelco Dolstra 9943e0762e * Update some more modules.
svn path=/nixos/trunk/; revision=17763
2009-10-12 17:09:38 +00:00
Eelco Dolstra a83e308856 * Clean up ConsoleKit.
svn path=/nixos/trunk/; revision=17434
2009-09-25 23:18:52 +00:00
Eelco Dolstra 530c96761a * Start dbus after udev. Otherwise ConsoleKit may or may not
recognise X logins as active sessions (i.e. ck-list-sessions will
  show "active = FALSE", and the user doesn't get ownership of
  devices).  I guess console-kit-daemon (which is started by dbus)
  needs some device in /dev to exist.

svn path=/nixos/trunk/; revision=17428
2009-09-25 20:41:15 +00:00
Rob Vermaas 185c8a3884 * add uptimed to system packages
svn path=/nixos/trunk/; revision=17175
2009-09-16 08:01:03 +00:00
Rob Vermaas ba1a9aecfd * added uptimed module, default disabled
svn path=/nixos/trunk/; revision=17174
2009-09-16 07:49:23 +00:00
Rob Vermaas 9587192c68 * added uptimed module
svn path=/nixos/trunk/; revision=17173
2009-09-16 07:48:47 +00:00
Eelco Dolstra 7ab616f659 * Added support for ConsoleKit.
* Let ConsoleKit track the current logins instead of pam_console.
  Udev now takes care of setting the device permissions to the active
  user.  This works much better, since pam_console wouldn't apply
  permissions to new (hot-plugged) devices.  Also, the udev+ConsoleKit
  approach supports user switching.  (We don't have that for X yet,
  but it already works for logins on virtual consoles: if you switch
  between different users on differents VCs with Alt+Fn, the device
  ownership will be changed automatically.)

svn path=/nixos/trunk/; revision=16743
2009-08-17 01:16:38 +00:00
Eelco Dolstra 7dbf523ddc * dbus: enable support for system services (these are programs that
the bus daemon can start on demand).  ConsoleKit and PolicyKit need
  this.  This requires a setuid wrapper for dbus-daemon-launch-helper,
  as well as a "messagebus" group.

svn path=/nixos/trunk/; revision=16736
2009-08-16 21:46:26 +00:00
Eelco Dolstra 2331a5140d * Added a module for the bluetooth daemon.
* Refactored some other modules (dbus, hal).

svn path=/nixos/trunk/; revision=16652
2009-08-10 18:25:09 +00:00
Eelco Dolstra c45cf3a28e * In the jobs attribute, support a more high-level way of specifying
jobs, e.g. (from the nscd job)

    { name = "nscd";

      description = "Name Service Cache Daemon";

      startOn = "startup";
      stopOn = "shutdown";

      environment = { LD_LIBRARY_PATH = nssModulesPath; };
        
      preStart =
        ''
          mkdir -m 0755 -p /var/run/nscd
          mkdir -m 0755 -p /var/db/nscd
        '';

      exec = "${pkgs.glibc}/sbin/nscd -f ${./nscd.conf} -d 2> /dev/null";
    };

  The Upstart job is generated from this.  The main goal is to provide
  some abstraction from the Upstart syntax.  For instance, this should
  make it easier to upgrade to newer versions of Upstart, to switch to
  an entirely different process management system (e.g. initng or
  launchd), or to test a job independantly from Upstart.  (However the
  startOn and stopOn attributes are tied to Upstart's event model.)

svn path=/nixos/branches/modular-nixos/; revision=16376
2009-07-15 15:24:11 +00:00
Eelco Dolstra 9d1e31117f * Get rid of the "users" and "groups" fields in jobs.
svn path=/nixos/branches/modular-nixos/; revision=16371
2009-07-15 11:34:55 +00:00
Eelco Dolstra dba1d48b78 * Move the uid/gid mappings into a module. This allows other modules
to use it through config.ids.{uids,gids} rather than `import
  relative-path/ids.nix'.

svn path=/nixos/branches/modular-nixos/; revision=15796
2009-05-29 14:25:56 +00:00
Eelco Dolstra 5ebdee3577 * Continued refactoring the tree: moved most Upstart jobs (namely
those that run daemons) to modules/services.  This probably broke
  some things since there are a few relative paths in modules
  (e.g. imports of system/ids.nix).
* Moved some PAM modules out of etc/pam.d to the directories of NixOS
  modules that use them.

svn path=/nixos/branches/modular-nixos/; revision=15717
2009-05-24 23:13:23 +00:00