From 5ec1fa20609db74f5983ce4f6bc44c8a13ed36e2 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 23 Jul 2008 14:13:27 +0000 Subject: [PATCH] * Tabs considered harmful. svn path=/nixos/trunk/; revision=12407 --- etc/default.nix | 2 +- system/options.nix | 644 +++++++++++++++---------------- system/system.nix | 21 +- upstart-jobs/bind.nix | 34 +- upstart-jobs/default.nix | 10 +- upstart-jobs/disnix.nix | 4 +- upstart-jobs/dovecot.nix | 4 +- upstart-jobs/ejabberd.nix | 16 +- upstart-jobs/filesystems.nix | 2 +- upstart-jobs/gw6c.nix | 36 +- upstart-jobs/ircd-hybrid.nix | 46 +-- upstart-jobs/jboss.nix | 10 +- upstart-jobs/lshd.nix | 4 +- upstart-jobs/openfire.nix | 4 +- upstart-jobs/postfix.nix | 12 +- upstart-jobs/postgresql.nix | 2 +- upstart-jobs/tomcat.nix | 86 ++--- upstart-jobs/tty-backgrounds.nix | 36 +- upstart-jobs/udev.nix | 58 +-- upstart-jobs/xfs.nix | 22 +- upstart-jobs/xserver.nix | 8 +- 21 files changed, 530 insertions(+), 531 deletions(-) diff --git a/etc/default.nix b/etc/default.nix index 67765978489..93f4951bf2b 100644 --- a/etc/default.nix +++ b/etc/default.nix @@ -53,7 +53,7 @@ import ../helpers/make-etc.nix { { # Name Service Switch configuration file. Required by the C library. source = if config.services.avahi.nssmdns then (assert config.services.avahi.enable; ./nsswitch-mdns.conf) - else ./nsswitch.conf; + else ./nsswitch.conf; target = "nsswitch.conf"; } diff --git a/system/options.nix b/system/options.nix index 7e232c24231..35f6f27319c 100644 --- a/system/options.nix +++ b/system/options.nix @@ -71,7 +71,7 @@ example = "0:0"; description = " Device for manual resume attempt during boot. Looks like - major:minor . + major:minor . "; }; @@ -223,11 +223,11 @@ allowMissing = mkOption { default = false; - description = '' - Allow some initrd components to be missing. Useful for - custom kernel that are changed too often to track needed - kernelModules. - ''; + description = '' + Allow some initrd components to be missing. Useful for + custom kernel that are changed too often to track needed + kernelModules. + ''; }; lvm = mkOption { @@ -278,7 +278,7 @@ extraGrubEntriesBeforeNixos = mkOption { default = false; description = " - Wheter extraGrubEntries are put before the Nixos-default option + Wheter extraGrubEntries are put before the Nixos-default option "; }; @@ -314,7 +314,7 @@ example = 120; description = " Maximum of configurations in boot menu. GRUB has problems when - there are too many entries. + there are too many entries. "; }; @@ -350,7 +350,7 @@ default = false; description = " Whether to use IPv6 even though gw6c is not used. For example, - for Postfix. + for Postfix. "; }; @@ -644,9 +644,9 @@ enable = mkOption { default = true; - description = '' - Whether to enable the `at' daemon, a command scheduler. - ''; + description = '' + Whether to enable the `at' daemon, a command scheduler. + ''; }; }; @@ -863,12 +863,12 @@ permitRootLogin = mkOption { default = "yes"; - description = " - Whether the root user can login using ssh. Valid options - are yes, without-password, - forced-commands-only or - no - "; + description = " + Whether the root user can login using ssh. Valid options + are yes, without-password, + forced-commands-only or + no + "; }; }; @@ -876,91 +876,91 @@ enable = mkOption { default = false; - description = '' - Whether to enable the GNU lshd SSH2 daemon, which allows + description = '' + Whether to enable the GNU lshd SSH2 daemon, which allows secure remote login. - ''; + ''; }; portNumber = mkOption { default = 22; - description = '' - The port on which to listen for connections. - ''; + description = '' + The port on which to listen for connections. + ''; }; interfaces = mkOption { default = []; - description = '' - List of network interfaces where listening for connections. + description = '' + List of network interfaces where listening for connections. When providing the empty list, `[]', lshd listens on all network interfaces. - ''; - example = [ "localhost" "1.2.3.4:443" ]; + ''; + example = [ "localhost" "1.2.3.4:443" ]; }; hostKey = mkOption { default = "/etc/lsh/host-key"; - description = '' - Path to the server's private key. Note that this key must + description = '' + Path to the server's private key. Note that this key must have been created, e.g., using "lsh-keygen --server | lsh-writekey --server", so that you can run lshd. - ''; + ''; }; syslog = mkOption { default = true; - description = ''Whether to enable syslog output.''; + description = ''Whether to enable syslog output.''; }; passwordAuthentication = mkOption { default = true; - description = ''Whether to enable password authentication.''; + description = ''Whether to enable password authentication.''; }; publicKeyAuthentication = mkOption { default = true; - description = ''Whether to enable public key authentication.''; + description = ''Whether to enable public key authentication.''; }; rootLogin = mkOption { default = false; - description = ''Whether to enable remote root login.''; + description = ''Whether to enable remote root login.''; }; loginShell = mkOption { default = null; - description = '' - If non-null, override the default login shell with the - specified value. - ''; - example = "/nix/store/xyz-bash-10.0/bin/bash10"; + description = '' + If non-null, override the default login shell with the + specified value. + ''; + example = "/nix/store/xyz-bash-10.0/bin/bash10"; }; srpKeyExchange = mkOption { default = false; - description = '' - Whether to enable SRP key exchange and user authentication. - ''; + description = '' + Whether to enable SRP key exchange and user authentication. + ''; }; tcpForwarding = mkOption { default = true; - description = ''Whether to enable TCP/IP forwarding.''; + description = ''Whether to enable TCP/IP forwarding.''; }; x11Forwarding = mkOption { default = true; - description = ''Whether to enable X11 forwarding.''; + description = ''Whether to enable X11 forwarding.''; }; subsystems = mkOption { default = [ ["sftp" "${pkgs.lsh}/sbin/sftp-server"] ]; - description = '' - List of subsystem-path pairs, where the head of the pair + description = '' + List of subsystem-path pairs, where the head of the pair denotes the subsystem name, and the tail denotes the path to an executable implementing it. - ''; + ''; }; }; @@ -991,11 +991,11 @@ enable = mkOption { default = false; - description = '' - Whether to enable `portmap', an ONC RPC directory service - notably used by NFS and NIS, and which can be queried - using the rpcinfo(1) command. - ''; + description = '' + Whether to enable `portmap', an ONC RPC directory service + notably used by NFS and NIS, and which can be queried + using the rpcinfo(1) command. + ''; }; }; @@ -1003,59 +1003,59 @@ enable = mkOption { default = false; - description = '' - Whether to run the Avahi daemon, which allows Avahi clients - to use Avahi's service discovery facilities and also allows - the local machine to advertise its presence and services - (through the mDNS responder implemented by `avahi-daemon'). - ''; + description = '' + Whether to run the Avahi daemon, which allows Avahi clients + to use Avahi's service discovery facilities and also allows + the local machine to advertise its presence and services + (through the mDNS responder implemented by `avahi-daemon'). + ''; }; hostName = mkOption { default = "nixos"; # XXX: Would be nice to use `networking.hostName'. - description = ''Host name advertised on the LAN.''; + description = ''Host name advertised on the LAN.''; }; browseDomains = mkOption { default = [ "0pointer.de" "zeroconf.org" ]; - description = '' - List of non-local DNS domains to be browsed. - ''; + description = '' + List of non-local DNS domains to be browsed. + ''; }; ipv4 = mkOption { default = true; - description = ''Whether to use IPv4''; + description = ''Whether to use IPv4''; }; ipv6 = mkOption { default = false; - description = ''Whether to use IPv6''; + description = ''Whether to use IPv6''; }; wideArea = mkOption { default = true; - description = ''Whether to enable wide-area service discovery.''; + description = ''Whether to enable wide-area service discovery.''; }; publishing = mkOption { default = true; - description = ''Whether to allow publishing.''; + description = ''Whether to allow publishing.''; }; nssmdns = mkOption { default = false; - description = '' - Whether to enable the mDNS NSS (Name Service Switch) plug-in. - Enabling it allows applications to resolve names in the `.local' - domain by transparently querying the Avahi daemon. + description = '' + Whether to enable the mDNS NSS (Name Service Switch) plug-in. + Enabling it allows applications to resolve names in the `.local' + domain by transparently querying the Avahi daemon. - Warning: Currently, enabling this option breaks DNS lookups after - a `nixos-rebuild'. This is because `/etc/nsswitch.conf' is - updated to use `nss-mdns' but `libnss_mdns' is not in - applications' `LD_LIBRARY_PATH'. The next time `/etc/profile' is - sourced, it will set up an appropriate `LD_LIBRARY_PATH', though. - ''; + Warning: Currently, enabling this option breaks DNS lookups after + a `nixos-rebuild'. This is because `/etc/nsswitch.conf' is + updated to use `nss-mdns' but `libnss_mdns' is not in + applications' `LD_LIBRARY_PATH'. The next time `/etc/profile' is + sourced, it will set up an appropriate `LD_LIBRARY_PATH', though. + ''; }; }; @@ -1099,18 +1099,18 @@ autorun = mkOption { default = true; - description = " - Switch to false to create upstart-job and configuration, - but not run it automatically - "; + description = " + Switch to false to create upstart-job and configuration, + but not run it automatically + "; }; exportConfiguration = mkOption { default = false; - description = " - Create /etc/X11/xorg.conf and a file with environment - variables - "; + description = " + Create /etc/X11/xorg.conf and a file with environment + variables + "; }; tcpEnable = mkOption { @@ -1246,20 +1246,20 @@ Whether to replace mouse with touchpad. "; }; - dev = mkOption { + dev = mkOption { default = "/dev/input/event0"; description = " Event device for Synaptics touchpad. "; }; - minSpeed = mkOption { - default = "0.06"; + minSpeed = mkOption { + default = "0.06"; description = "Cursor speed factor for precision finger motion"; - }; - maxSpeed = mkOption { - default = "0.12"; + }; + maxSpeed = mkOption { + default = "0.12"; description = "Cursor speed factor for highest-speed finger motion"; - }; + }; }; layout = mkOption { @@ -1348,10 +1348,10 @@ useXFS = mkOption { default = false; - example = "unix/:7100"; - description = " - Way to access the X Font Server to use. - "; + example = "unix/:7100"; + description = " + Way to access the X Font Server to use. + "; }; tty = mkOption { @@ -1372,10 +1372,10 @@ packageFun = mkOption { default = pkgs: pkgs.xorg; - description = " - Alternative X.org package to use. For - example, you can replace individual drivers. - "; + description = " + Alternative X.org package to use. For + example, you can replace individual drivers. + "; }; }; @@ -1383,39 +1383,39 @@ ejabberd = { enable = mkOption { default = false; - description = "Whether to enable ejabberd server"; + description = "Whether to enable ejabberd server"; }; spoolDir = mkOption { default = "/var/lib/ejabberd"; - description = "Location of the spooldir of ejabberd"; + description = "Location of the spooldir of ejabberd"; }; logsDir = mkOption { default = "/var/log/ejabberd"; - description = "Location of the logfile directory of ejabberd"; + description = "Location of the logfile directory of ejabberd"; }; }; jboss = { enable = mkOption { default = false; - description = "Whether to enable jboss"; + description = "Whether to enable jboss"; }; tempDir = mkOption { default = "/tmp"; - description = "Location where JBoss stores its temp files"; + description = "Location where JBoss stores its temp files"; }; logDir = mkOption { default = "/var/log/jboss"; - description = "Location of the logfile directory of JBoss"; + description = "Location of the logfile directory of JBoss"; }; serverDir = mkOption { description = "Location of the server instance files"; - default = "/var/jboss/server"; + default = "/var/jboss/server"; }; deployDir = mkOption { @@ -1425,56 +1425,56 @@ libUrl = mkOption { default = "file:///nix/var/nix/profiles/default/server/default/lib"; - description = "Location where the shared library JARs are stored"; + description = "Location where the shared library JARs are stored"; }; user = mkOption { default = "nobody"; - description = "User account under which jboss runs."; + description = "User account under which jboss runs."; }; useJK = mkOption { default = false; - description = "Whether to use to connector to the Apache HTTP server"; + description = "Whether to use to connector to the Apache HTTP server"; }; }; tomcat = { enable = mkOption { default = false; - description = "Whether to enable Apache Tomcat"; + description = "Whether to enable Apache Tomcat"; }; baseDir = mkOption { default = "/var/tomcat"; - description = "Location where Tomcat stores configuration files, webapplications and logfiles"; + description = "Location where Tomcat stores configuration files, webapplications and logfiles"; }; user = mkOption { default = "tomcat"; - description = "User account under which Apache Tomcat runs."; + description = "User account under which Apache Tomcat runs."; }; deployFrom = mkOption { default = ""; - description = "Location where webapplications are stored. Leave empty to use the baseDir."; + description = "Location where webapplications are stored. Leave empty to use the baseDir."; }; javaOpts = mkOption { default = ""; - description = "Parameters to pass to the Java Virtual Machine which spawns Apache Tomcat"; + description = "Parameters to pass to the Java Virtual Machine which spawns Apache Tomcat"; }; sharedLibFrom = mkOption { default = ""; - description ="Location where shared libraries are stored. Leave empty to use the baseDir."; + description ="Location where shared libraries are stored. Leave empty to use the baseDir."; }; }; disnix = { enable = mkOption { default = false; - description = "Whether to enable Disnix"; + description = "Whether to enable Disnix"; }; }; @@ -1560,13 +1560,13 @@ mod_jk = { enable = mkOption { default = false; - description = "Whether to enable the Apache Tomcat connector."; + description = "Whether to enable the Apache Tomcat connector."; + }; + + applicationMappings = mkOption { + default = []; + description = "List of Java webapplications that should be mapped to the servlet container (Tomcat/JBoss)"; }; - - applicationMappings = mkOption { - default = []; - description = "List of Java webapplications that should be mapped to the servlet container (Tomcat/JBoss)"; - }; }; virtualHosts = mkOption { @@ -1609,7 +1609,7 @@ }; userCreationDomain = mkOption { - default = "example.org"; + default = "example.org"; example = "example.org"; description = " The domain from which user creation is allowed. A client can @@ -1627,13 +1627,13 @@ support WebDAV. "; }; - - dataDir = mkOption { - default = "/no/such/path/exists"; - description = " - Place to put SVN repository. - "; - }; + + dataDir = mkOption { + default = "/no/such/path/exists"; + description = " + Place to put SVN repository. + "; + }; organization = { @@ -1673,16 +1673,16 @@ vsftpd = { enable = mkOption { default = false; - description = " - Whether to enable the vsftpd FTP server. - "; + description = " + Whether to enable the vsftpd FTP server. + "; }; anonymousUser = mkOption { default = false; - description = " - Whether to enable the anonymous FTP user. - "; + description = " + Whether to enable the anonymous FTP user. + "; }; }; @@ -1737,12 +1737,12 @@ sndMode = mkOption { default = "0600"; - example = "0666"; - description = " - Permissions for /dev/snd/*, in case you have multiple - logged in users or if the devices belong to root for - some reason. - "; + example = "0666"; + description = " + Permissions for /dev/snd/*, in case you have multiple + logged in users or if the devices belong to root for + some reason. + "; }; }; @@ -1770,10 +1770,10 @@ autorun = mkOption { default = true; - description = " - Switch to false to create upstart-job and configuration, - but not run it automatically - "; + description = " + Switch to false to create upstart-job and configuration, + but not run it automatically + "; }; username = mkOption { @@ -1816,10 +1816,10 @@ waitPingableBroker = mkOption { default = true; - example = false; - description = " - Whether to wait until tunnel broker returns ICMP echo. - "; + example = false; + description = " + Whether to wait until tunnel broker returns ICMP echo. + "; }; }; @@ -1959,34 +1959,34 @@ mysql = { enable = mkOption { default = false; - description = " - Whether to enable the MySQL server. - "; + description = " + Whether to enable the MySQL server. + "; }; port = mkOption { default = "3306"; - description = "Port of MySQL"; + description = "Port of MySQL"; }; user = mkOption { default = "mysql"; - description = "User account under which MySQL runs"; + description = "User account under which MySQL runs"; }; dataDir = mkOption { default = "/var/mysql"; - description = "Location where MySQL stores its table files"; + description = "Location where MySQL stores its table files"; }; logError = mkOption { default = "/var/log/mysql_err.log"; - description = "Location of the MySQL error logfile"; + description = "Location of the MySQL error logfile"; }; pidDir = mkOption { default = "/var/run/mysql"; - description = "Location of the file which stores the PID of the MySQL server"; + description = "Location of the file which stores the PID of the MySQL server"; }; }; @@ -1994,34 +1994,34 @@ postgresql = { enable = mkOption { default = false; - description = " - Whether to run PostgreSQL. - "; + description = " + Whether to run PostgreSQL. + "; }; port = mkOption { default = "5432"; - description = " - Port for PostgreSQL. - "; + description = " + Port for PostgreSQL. + "; }; logDir = mkOption { default = "/var/log/postgresql"; - description = " - Log directory for PostgreSQL. - "; + description = " + Log directory for PostgreSQL. + "; }; dataDir = mkOption { default = "/var/db/postgresql"; - description = " - Data directory for PostgreSQL. - "; + description = " + Data directory for PostgreSQL. + "; }; subServices = mkOption { default = []; - description = " - Subservices list. As it is already implememnted, - here is an interface... - "; + description = " + Subservices list. As it is already implememnted, + here is an interface... + "; }; authentication = mkOption { default = '' @@ -2030,21 +2030,21 @@ host all all 127.0.0.1/32 md5 host all all ::1/128 md5 ''; - description = " - Hosts (except localhost), who you allow to connect. - "; + description = " + Hosts (except localhost), who you allow to connect. + "; }; allowedHosts = mkOption { default = []; - description = " - Hosts (except localhost), who you allow to connect. - "; + description = " + Hosts (except localhost), who you allow to connect. + "; }; authMethod = mkOption { default = " ident sameuser "; - description = " - How to authorize users. - Note: ident needs absolute trust to all allowed client hosts."; + description = " + How to authorize users. + Note: ident needs absolute trust to all allowed client hosts."; }; }; @@ -2052,15 +2052,15 @@ openfire = { enable = mkOption { default = false; - description = " - Whether to enable OpenFire XMPP server. - "; + description = " + Whether to enable OpenFire XMPP server. + "; }; usePostgreSQL = mkOption { default = true; - description = " - Whether you use PostgreSQL service for your storage back-end. - "; + description = " + Whether you use PostgreSQL service for your storage back-end. + "; }; }; @@ -2068,15 +2068,15 @@ gpm = { enable = mkOption { default = false; - description = " - Whether to enable general purpose mouse daemon. - "; + description = " + Whether to enable general purpose mouse daemon. + "; }; protocol = mkOption { default = "ps/2"; - description = " - Mouse protocol to use. - "; + description = " + Mouse protocol to use. + "; }; }; @@ -2085,10 +2085,10 @@ enable = mkOption { default = false; - description = " - Whether to run the Zabbix monitoring agent on this machine. + description = " + Whether to run the Zabbix monitoring agent on this machine. It will send monitoring data to a Zabbix server. - "; + "; }; server = mkOption { @@ -2104,146 +2104,146 @@ zabbixServer = { enable = mkOption { default = false; - description = " - Whether to run the Zabbix server on this machine. - "; + description = " + Whether to run the Zabbix server on this machine. + "; }; }; postfix = { enable = mkOption { default = false; - description =" - Whether to run the Postfix mail server. - "; + description =" + Whether to run the Postfix mail server. + "; }; user = mkOption { default = "postfix"; - description = " - How to call postfix user (must be used only for postfix). - "; + description = " + How to call postfix user (must be used only for postfix). + "; }; group = mkOption { default = "postfix"; - description = " - How to call postfix group (must be used only for postfix). - "; + description = " + How to call postfix group (must be used only for postfix). + "; }; setgidGroup = mkOption { default = "postdrop"; - description = " - How to call postfix setgid group (for postdrop). Should - be uniquely used group. - "; + description = " + How to call postfix setgid group (for postdrop). Should + be uniquely used group. + "; }; networks = mkOption { default = null; - example = ["192.168.0.1/24"]; - description = " - Net masks for trusted - allowed to relay mail to third parties - - hosts. Leave empty to use mynetworks_style configuration or use - default (localhost-only). - "; + example = ["192.168.0.1/24"]; + description = " + Net masks for trusted - allowed to relay mail to third parties - + hosts. Leave empty to use mynetworks_style configuration or use + default (localhost-only). + "; }; networksStyle = mkOption { default = ""; - description = " - Name of standard way of trusted network specification to use, - leave blank if you specify it explicitly or if you want to use - default (localhost-only). - "; + description = " + Name of standard way of trusted network specification to use, + leave blank if you specify it explicitly or if you want to use + default (localhost-only). + "; }; hostname = mkOption { default = ""; - description =" - Hostname to use. Leave blank to use just the hostname of machine. - It should be FQDN. - "; + description =" + Hostname to use. Leave blank to use just the hostname of machine. + It should be FQDN. + "; }; domain = mkOption { default = ""; - description =" - Domain to use. Leave blank to use hostname minus first component. - "; + description =" + Domain to use. Leave blank to use hostname minus first component. + "; }; origin = mkOption { default = ""; - description =" - Origin to use in outgoing e-mail. Leave blank to use hostname. - "; + description =" + Origin to use in outgoing e-mail. Leave blank to use hostname. + "; }; destination = mkOption { default = null; example = ["localhost"]; description = " - Full (!) list of domains we deliver locally. Leave blank for - acceptable Postfix default. - "; + Full (!) list of domains we deliver locally. Leave blank for + acceptable Postfix default. + "; }; relayDomains = mkOption { default = null; - example = ["localdomain"]; - description = " - List of domains we agree to relay to. Default is the same as - destination. - "; + example = ["localdomain"]; + description = " + List of domains we agree to relay to. Default is the same as + destination. + "; }; relayHost = mkOption { default = ""; - description = " - Mail relay for outbound mail. - "; + description = " + Mail relay for outbound mail. + "; }; lookupMX = mkOption { default = false; - description = " - Whether relay specified is just domain whose MX must be used. - "; + description = " + Whether relay specified is just domain whose MX must be used. + "; }; postmasterAlias = mkOption { default = "root"; - description = " - Who should receive postmaster e-mail. - "; + description = " + Who should receive postmaster e-mail. + "; }; rootAlias = mkOption { default = ""; - description = " - Who should receive root e-mail. Blank for no redirection. - "; + description = " + Who should receive root e-mail. Blank for no redirection. + "; }; extraAliases = mkOption { default = ""; - description = " - Additional entries to put verbatim into aliases file. - "; + description = " + Additional entries to put verbatim into aliases file. + "; }; sslCert = mkOption { default = ""; - description = " - SSL certificate to use. - "; + description = " + SSL certificate to use. + "; }; sslCACert = mkOption { default = ""; - description = " - SSL certificate of CA. - "; + description = " + SSL certificate of CA. + "; }; sslKey = mkOption { default = ""; - description =" - SSL key to use. - "; + description =" + SSL key to use. + "; }; recipientDelimiter = mkOption { default = ""; - example = "+"; - description = " + example = "+"; + description = " Delimiter for address extension: so mail to user+test can be handled by ~user/.forward+test - "; + "; }; }; @@ -2251,65 +2251,65 @@ dovecot = { enable = mkOption { default = false; - description = "Whether to enable dovecot POP3/IMAP server."; + description = "Whether to enable dovecot POP3/IMAP server."; }; user = mkOption { default = "dovecot"; - description = "dovecot user name"; + description = "dovecot user name"; }; group = mkOption { default = "dovecot"; - description = "dovecot group name"; + description = "dovecot group name"; }; sslServerCert = mkOption { default = ""; - description = "Server certificate"; + description = "Server certificate"; }; sslCACert = mkOption { default = ""; - description = "CA certificate used by server certificate"; + description = "CA certificate used by server certificate"; }; sslServerKey = mkOption { default = ""; - description = "Server key"; + description = "Server key"; }; }; bind = { enable = mkOption { default = false; - description = " - Whether to enable BIND domain name server. - "; + description = " + Whether to enable BIND domain name server. + "; }; cacheNetworks = mkOption { default = ["127.0.0.0/24"]; - description = " - What networks are allowed to use us as a resolver. - "; + description = " + What networks are allowed to use us as a resolver. + "; }; blockedNetworks = mkOption { default = []; - description = " - What networks are just blocked. - "; + description = " + What networks are just blocked. + "; }; zones = mkOption { default = []; - description = " - List of zones we claim authority over. - master=false means slave server; slaves means addresses - who may request zone transfer. - "; - example = [{ - name = "example.com"; - master = false; - file = "/var/dns/example.com"; - masters = ["192.168.0.1"]; - slaves = []; - }]; + description = " + List of zones we claim authority over. + master=false means slave server; slaves means addresses + who may request zone transfer. + "; + example = [{ + name = "example.com"; + master = false; + file = "/var/dns/example.com"; + masters = ["192.168.0.1"]; + slaves = []; + }]; }; }; @@ -2449,38 +2449,38 @@ default = []; example = [{ program = "sendmail"; - owner = "nodody"; - group = "postdrop"; - setuid = false; - setgid = true; + owner = "nodody"; + group = "postdrop"; + setuid = false; + setgid = true; }]; description = '' List of non-trivial setuid programs, like Postfix sendmail. Default - should probably be nobody:nogroup:false:false - if you are bothering - doing anything with a setuid program, "root.root u+s g-s" is not what - you are aiming at.. + should probably be nobody:nogroup:false:false - if you are bothering + doing anything with a setuid program, "root.root u+s g-s" is not what + you are aiming at.. ''; }; seccureKeys = { public = mkOption { default = /var/elliptic-keys/public; - description = " - Public key. Make it path argument, so it is copied into store and - hashed. + description = " + Public key. Make it path argument, so it is copied into store and + hashed. - The key is used to encrypt Gateway 6 configuration in store, as it - contains a password for external service. Unfortunately, - derivation file should be protected by other means. For example, - nix-http-export.cgi will happily export any non-derivation path, - but not a derivation. - "; + The key is used to encrypt Gateway 6 configuration in store, as it + contains a password for external service. Unfortunately, + derivation file should be protected by other means. For example, + nix-http-export.cgi will happily export any non-derivation path, + but not a derivation. + "; }; private = mkOption { default = "/var/elliptic-keys/private"; - description = " - Private key. Make it string argument, so it is not copied into store. - "; + description = " + Private key. Make it string argument, so it is not copied into store. + "; }; }; @@ -2530,7 +2530,7 @@ root ALL=(ALL) SETENV: ALL createHome = true; group = "users"; extraGroups = ["wheel"]; - shell = "/bin/sh"; + shell = "/bin/sh"; } ]; description = " @@ -2697,10 +2697,10 @@ root ALL=(ALL) SETENV: ALL example = true; description = " There are some times when you want really small system for specific - purpose and do not want default package list. Setting - cleanStart to true allows you - to create a system with empty path - only extraPackages will be - included. + purpose and do not want default package list. Setting + cleanStart to true allows you + to create a system with empty path - only extraPackages will be + included. "; }; diff --git a/system/system.nix b/system/system.nix index c9932d5ec1b..256eeeeb1dc 100644 --- a/system/system.nix +++ b/system/system.nix @@ -192,7 +192,7 @@ rec { # Font aggregation fontDir = import ./fontdir.nix { - inherit config pkgs ; + inherit config pkgs; inherit (pkgs) builderDefs ttmkfdir; inherit (pkgs.xorg) mkfontdir mkfontscale fontalias; }; @@ -330,17 +330,16 @@ rec { bash = pkgs.bashInteractive; adjustSetuidOwner = pkgs.lib.concatStrings (map - (_entry:let entry = { + (_entry: let entry = { owner = "nobody"; - group = "nogroup"; - setuid = false; - setgid = false; + group = "nogroup"; + setuid = false; + setgid = false; } //_entry; in '' chown ${entry.owner}.${entry.group} $wrapperDir/${entry.program} - chmod u${if entry.setuid then "+" else "-"}s $wrapperDir/${entry.program} - chmod g${if entry.setgid then "+" else "-"}s $wrapperDir/${entry.program} - + chmod u${if entry.setuid then "+" else "-"}s $wrapperDir/${entry.program} + chmod g${if entry.setgid then "+" else "-"}s $wrapperDir/${entry.program} '') config.security.setuidOwners); }; @@ -411,7 +410,7 @@ rec { config.nesting.children; configurationName = config.boot.configurationName; }) (pkgs.lib.getAttr ["environment" "checkConfigurationOptions"] - optionDeclarations.environment.checkConfigurationOptions.default - configuration) - optionDeclarations configuration ; + optionDeclarations.environment.checkConfigurationOptions.default + configuration) + optionDeclarations configuration; } diff --git a/upstart-jobs/bind.nix b/upstart-jobs/bind.nix index bea47a14a9f..f645abc9340 100644 --- a/upstart-jobs/bind.nix +++ b/upstart-jobs/bind.nix @@ -26,23 +26,23 @@ let (_entry:let entry={master=true;slaves=[];masters=[];}//_entry; in '' zone "${entry.name}" { - type ${if entry.master then "master" else "slave"}; - file "${entry.file}"; - ${ if entry.master then - '' - allow-transfer { - ${concatMapStrings (ip: ip+";\n") entry.slaves} - }; - '' - else - '' - masters { - ${concatMapStrings (ip: ip+";\n") entry.masters} - }; - '' - } - allow-query { any; }; - }; + type ${if entry.master then "master" else "slave"}; + file "${entry.file}"; + ${ if entry.master then + '' + allow-transfer { + ${concatMapStrings (ip: ip+";\n") entry.slaves} + }; + '' + else + '' + masters { + ${concatMapStrings (ip: ip+";\n") entry.masters} + }; + '' + } + allow-query { any; }; + }; '' ) cfg.zones diff --git a/upstart-jobs/default.nix b/upstart-jobs/default.nix index d48a01b7afb..2b851d051af 100644 --- a/upstart-jobs/default.nix +++ b/upstart-jobs/default.nix @@ -97,7 +97,7 @@ let ++ pkgs.lib.optional config.networking.enableIntel4965AGNFirmware pkgs.iwlwifi4965ucode ++ pkgs.lib.optional config.networking.enableZydasZD1211Firmware pkgs.zd1211fw ++ pkgs.lib.optional config.hardware.enableGo7007 "${kernelPackages.wis_go7007}/firmware" - ++ config.services.udev.addFirmware; + ++ config.services.udev.addFirmware; extraUdevPkgs = pkgs.lib.optional config.services.hal.enable pkgs.hal ++ pkgs.lib.optional config.hardware.enableGo7007 kernelPackages.wis_go7007; @@ -349,10 +349,10 @@ let (import ../upstart-jobs/dbus.nix { inherit (pkgs) stdenv dbus; dbusServices = - pkgs.lib.optional (config.services.hal.enable) pkgs.hal ++ - pkgs.lib.optional (config.services.avahi.enable) pkgs.avahi ++ - pkgs.lib.optional (config.services.disnix.enable) pkgs.disnix - ; + pkgs.lib.optional config.services.hal.enable pkgs.hal ++ + pkgs.lib.optional config.services.avahi.enable pkgs.avahi ++ + pkgs.lib.optional config.services.disnix.enable pkgs.disnix + ; }) # HAL daemon. diff --git a/upstart-jobs/disnix.nix b/upstart-jobs/disnix.nix index 49dfe2f4d3f..a952f5beab1 100644 --- a/upstart-jobs/disnix.nix +++ b/upstart-jobs/disnix.nix @@ -7,12 +7,12 @@ cfg = config.services.disnix; in { name = "disnix"; - + job = '' description "Disnix server" start on dbus - stop on shutdown + stop on shutdown start script # !!! quick hack: wait until dbus has started diff --git a/upstart-jobs/dovecot.nix b/upstart-jobs/dovecot.nix index dca75dab1a5..d7d74261e13 100644 --- a/upstart-jobs/dovecot.nix +++ b/upstart-jobs/dovecot.nix @@ -49,8 +49,8 @@ let confFile = pkgs.writeText "dovecot.conf" dovecotConf; pamdFile = pkgs.writeText "dovecot.pam" '' - auth include common - account include common + auth include common + account include common ''; in diff --git a/upstart-jobs/ejabberd.nix b/upstart-jobs/ejabberd.nix index 58fc3c8d849..f1f24962a6a 100644 --- a/upstart-jobs/ejabberd.nix +++ b/upstart-jobs/ejabberd.nix @@ -7,7 +7,7 @@ cfg = config.services.ejabberd; in { name = "ejabberd"; - + job = '' description "EJabberd server" @@ -15,13 +15,13 @@ in stop on network-interfaces/stop start script - # Initialise state data - mkdir -p ${cfg.logsDir} - - if ! test -d ${cfg.spoolDir} - then - cp -av ${pkgs.ejabberd}/var/lib/ejabberd /var/lib - fi + # Initialise state data + mkdir -p ${cfg.logsDir} + + if ! test -d ${cfg.spoolDir} + then + cp -av ${pkgs.ejabberd}/var/lib/ejabberd /var/lib + fi end script respawn ${pkgs.bash}/bin/sh -c 'export PATH=$PATH:${pkgs.ejabberd}/sbin; cd ~; ejabberdctl --logs ${cfg.logsDir} --spool ${cfg.spoolDir} start; sleep 1d' diff --git a/upstart-jobs/filesystems.nix b/upstart-jobs/filesystems.nix index ac0abaf3770..1713f6c098a 100644 --- a/upstart-jobs/filesystems.nix +++ b/upstart-jobs/filesystems.nix @@ -50,7 +50,7 @@ script isPseudo= if test \"$fsType\" = \"nfs\" || test \"$fsType\" = \"tmpfs\" || - test \"$fsType\" = \"ext3cow\"; then isPseudo=1; fi + test \"$fsType\" = \"ext3cow\"; then isPseudo=1; fi if ! test -n \"$isLabel\" -o -n \"$isPseudo\" -o -e \"$device\"; then echo \"skipping $device, doesn't exist (yet)\" diff --git a/upstart-jobs/gw6c.nix b/upstart-jobs/gw6c.nix index f2586526dd2..f3332f9e8f3 100644 --- a/upstart-jobs/gw6c.nix +++ b/upstart-jobs/gw6c.nix @@ -1,27 +1,27 @@ {config, pkgs}: let - cfg = config.services.gw6c; - procps = pkgs.procps; - gw6cService = import ../services/gw6c { - inherit (pkgs) stdenv gw6c coreutils - procps upstart iputils gnused - gnugrep seccureUser writeScript; - username = cfg.username; - password = cfg.password; - server = cfg.server; - keepAlive = cfg.keepAlive; - everPing = cfg.everPing; + cfg = config.services.gw6c; + procps = pkgs.procps; + gw6cService = import ../services/gw6c { + inherit (pkgs) stdenv gw6c coreutils + procps upstart iputils gnused + gnugrep seccureUser writeScript; + username = cfg.username; + password = cfg.password; + server = cfg.server; + keepAlive = cfg.keepAlive; + everPing = cfg.everPing; - seccureKeys = config.security.seccureKeys; + seccureKeys = config.security.seccureKeys; - waitPingableBroker = cfg.waitPingableBroker; - }; + waitPingableBroker = cfg.waitPingableBroker; + }; in { - name = "gw6c"; - users = []; - groups = []; - job = " + name = "gw6c"; + users = []; + groups = []; + job = " description \"Gateway6 client\" start on ${ if cfg.autorun then "network-interfaces/started" else "never" } diff --git a/upstart-jobs/ircd-hybrid.nix b/upstart-jobs/ircd-hybrid.nix index 5c117ae55a3..4183673cef8 100644 --- a/upstart-jobs/ircd-hybrid.nix +++ b/upstart-jobs/ircd-hybrid.nix @@ -1,33 +1,33 @@ {config, pkgs}: let - cfg = config.services.ircdHybrid; - ircdService = import ../services/ircd-hybrid { - stdenv = pkgs.stdenv; - inherit (pkgs) ircdHybrid coreutils - su iproute gnugrep procps; - serverName = cfg.serverName; - sid = cfg.sid; - description = cfg.description; - rsaKey = cfg.rsaKey; - certificate = cfg.certificate; - adminEmail = cfg.adminEmail; - extraIPs = cfg.extraIPs; - extraPort = cfg.extraPort; - gw6cEnabled = (config.services.gw6c.enable) && - (config.services.gw6c.autorun); - }; + cfg = config.services.ircdHybrid; + ircdService = import ../services/ircd-hybrid { + stdenv = pkgs.stdenv; + inherit (pkgs) ircdHybrid coreutils + su iproute gnugrep procps; + serverName = cfg.serverName; + sid = cfg.sid; + description = cfg.description; + rsaKey = cfg.rsaKey; + certificate = cfg.certificate; + adminEmail = cfg.adminEmail; + extraIPs = cfg.extraIPs; + extraPort = cfg.extraPort; + gw6cEnabled = (config.services.gw6c.enable) && + (config.services.gw6c.autorun); + }; startingDependency = if config.services.gw6c.enable then "gw6c" else "network-interfaces"; in { - name = "ircd-hybrid"; - users = [ { - name = "ircd"; - description = "IRCD owner."; - } ]; - groups = [{name = "ircd";}]; - job = " + name = "ircd-hybrid"; + users = [ { + name = "ircd"; + description = "IRCD owner."; + } ]; + groups = [{name = "ircd";}]; + job = " description = \"IRCD Hybrid server.\" start on ${startingDependency}/started diff --git a/upstart-jobs/jboss.nix b/upstart-jobs/jboss.nix index f3a4025a904..6c35fe06436 100644 --- a/upstart-jobs/jboss.nix +++ b/upstart-jobs/jboss.nix @@ -4,18 +4,18 @@ let cfg = config.services.jboss; jbossService = import ../services/jboss { - inherit (pkgs) stdenv jboss su; - inherit (cfg) tempDir logDir libUrl deployDir serverDir user useJK; + inherit (pkgs) stdenv jboss su; + inherit (cfg) tempDir logDir libUrl deployDir serverDir user useJK; }; in { - name = "jboss"; - job = " + name = "jboss"; + job = " description \"JBoss server\" stop on shutdown respawn ${jbossService}/bin/control start - "; + "; } diff --git a/upstart-jobs/lshd.nix b/upstart-jobs/lshd.nix index d9ff79a90b4..e2a61eed387 100644 --- a/upstart-jobs/lshd.nix +++ b/upstart-jobs/lshd.nix @@ -26,7 +26,7 @@ start script if ! test -f "${hostKey}" then ${lsh}/bin/lsh-keygen --server | \ - ${lsh}/bin/lsh-writekey --server -o "${hostKey}" + ${lsh}/bin/lsh-writekey --server -o "${hostKey}" fi end script @@ -47,7 +47,7 @@ respawn ${lsh}/sbin/lshd --daemonic \ --subsystems=${concatStringsSep "," (map (pair: (head pair) + "=" + (head (tail pair))) - subsystems)} + subsystems)} ''; } diff --git a/upstart-jobs/openfire.nix b/upstart-jobs/openfire.nix index e816b08347a..45338c793e7 100644 --- a/upstart-jobs/openfire.nix +++ b/upstart-jobs/openfire.nix @@ -26,8 +26,8 @@ with pkgs; mkdir /etc/openfire || true for i in ${openfire}/conf.inst/*; do if ! test -f /etc/openfire/$(basename $i); then - cp $i /etc/openfire/ - fi + cp $i /etc/openfire/ + fi done openfire start end script diff --git a/upstart-jobs/postfix.nix b/upstart-jobs/postfix.nix index ebc6f79c85a..7b011cd1a0e 100644 --- a/upstart-jobs/postfix.nix +++ b/upstart-jobs/postfix.nix @@ -138,13 +138,13 @@ in ${pkgs.coreutils}/bin/mkdir -p /var/spool/mail /var/postfix/conf /var/postfix/queue fi - ${pkgs.coreutils}/bin/chown -R ${user}.${group} /var/postfix - ${pkgs.coreutils}/bin/chown -R ${user}.${setgidGroup} /var/postfix/queue - ${pkgs.coreutils}/bin/chmod -R ug+rwX /var/postfix/queue - ${pkgs.coreutils}/bin/chown root.root /var/spool/mail - ${pkgs.coreutils}/bin/chmod a+rwxt /var/spool/mail + ${pkgs.coreutils}/bin/chown -R ${user}.${group} /var/postfix + ${pkgs.coreutils}/bin/chown -R ${user}.${setgidGroup} /var/postfix/queue + ${pkgs.coreutils}/bin/chmod -R ug+rwX /var/postfix/queue + ${pkgs.coreutils}/bin/chown root.root /var/spool/mail + ${pkgs.coreutils}/bin/chmod a+rwxt /var/spool/mail - ln -sf ${pkgs.postfix}/share/postfix/conf/* /var/postfix/conf + ln -sf ${pkgs.postfix}/share/postfix/conf/* /var/postfix/conf ln -sf ${aliasesFile} /var/postfix/conf/aliases ln -sf ${mainCfFile} /var/postfix/conf/main.cf diff --git a/upstart-jobs/postgresql.nix b/upstart-jobs/postgresql.nix index 8979239fc56..a37780678fc 100644 --- a/upstart-jobs/postgresql.nix +++ b/upstart-jobs/postgresql.nix @@ -36,7 +36,7 @@ in start script if ! test -e ${cfg.dataDir}; then - mkdir -m 0700 -p ${cfg.dataDir} + mkdir -m 0700 -p ${cfg.dataDir} chown -R postgres ${cfg.dataDir} ${run} -c '${postgresql}/bin/initdb -D ${cfg.dataDir} -U root' fi diff --git a/upstart-jobs/tomcat.nix b/upstart-jobs/tomcat.nix index 91bfb3176e5..6ebdf0069ff 100644 --- a/upstart-jobs/tomcat.nix +++ b/upstart-jobs/tomcat.nix @@ -28,56 +28,56 @@ in stop on network-interfaces/stop start script - # Create initial state data - - if ! test -d ${cfg.baseDir} - then - mkdir -p ${cfg.baseDir}/webapps - mkdir -p ${cfg.baseDir}/shared - cp -av ${pkgs.tomcat6}/{conf,temp,logs} ${cfg.baseDir} - fi - - # Deploy all webapplications - - if ! test "${cfg.deployFrom}" = "" - then - rm -rf ${cfg.baseDir}/webapps - mkdir -p ${cfg.baseDir}/webapps - for i in ${cfg.deployFrom}/* - do - cp -rL $i ${cfg.baseDir}/webapps - done - fi - - # Fix permissions - - chown -R ${cfg.user} ${cfg.baseDir} - - for i in `find ${cfg.baseDir} -type d` - do - chmod -v 755 $i - done - - for i in `find ${cfg.baseDir} -type f` - do - chmod -v 644 $i - done + # Create initial state data + + if ! test -d ${cfg.baseDir} + then + mkdir -p ${cfg.baseDir}/webapps + mkdir -p ${cfg.baseDir}/shared + cp -av ${pkgs.tomcat6}/{conf,temp,logs} ${cfg.baseDir} + fi + + # Deploy all webapplications + + if ! test "${cfg.deployFrom}" = "" + then + rm -rf ${cfg.baseDir}/webapps + mkdir -p ${cfg.baseDir}/webapps + for i in ${cfg.deployFrom}/* + do + cp -rL $i ${cfg.baseDir}/webapps + done + fi + + # Fix permissions + + chown -R ${cfg.user} ${cfg.baseDir} + + for i in `find ${cfg.baseDir} -type d` + do + chmod -v 755 $i + done + + for i in `find ${cfg.baseDir} -type f` + do + chmod -v 644 $i + done - # Deploy all shared libraries - - if ! test "${cfg.sharedLibFrom}" = "" - then - rm -f ${cfg.baseDir}/shared/lib - ln -s ${cfg.sharedLibFrom} ${cfg.baseDir}/shared/lib - fi + # Deploy all shared libraries + + if ! test "${cfg.sharedLibFrom}" = "" + then + rm -f ${cfg.baseDir}/shared/lib + ln -s ${cfg.sharedLibFrom} ${cfg.baseDir}/shared/lib + fi end script respawn ${pkgs.su}/bin/su -s ${pkgs.bash}/bin/sh ${cfg.user} -c 'CATALINA_BASE=${cfg.baseDir} JAVA_HOME=${pkgs.jdk} JAVA_OPTS="${cfg.javaOpts}" ${pkgs.tomcat6}/bin/startup.sh; sleep 1d' stop script - echo "Stopping tomcat..." - CATALINA_BASE=${cfg.baseDir} JAVA_HOME=${pkgs.jdk} ${pkgs.su}/bin/su -s ${pkgs.bash}/bin/sh ${cfg.user} -c ${pkgs.tomcat6}/bin/shutdown.sh + echo "Stopping tomcat..." + CATALINA_BASE=${cfg.baseDir} JAVA_HOME=${pkgs.jdk} ${pkgs.su}/bin/su -s ${pkgs.bash}/bin/sh ${cfg.user} -c ${pkgs.tomcat6}/bin/shutdown.sh end script ''; } diff --git a/upstart-jobs/tty-backgrounds.nix b/upstart-jobs/tty-backgrounds.nix index a567e21ed31..6e51208d686 100644 --- a/upstart-jobs/tty-backgrounds.nix +++ b/upstart-jobs/tty-backgrounds.nix @@ -26,32 +26,32 @@ rec { start script - # Critical: tell the kernel where to find splash_helper. It calls - # this program every time we switch between consoles. - echo ${splashutils}/${splashutils.helperName} > ${splashutils.helperProcFile} + # Critical: tell the kernel where to find splash_helper. It calls + # this program every time we switch between consoles. + echo ${splashutils}/${splashutils.helperName} > ${splashutils.helperProcFile} - # For each console... - for tty in ${toString (map (x: x.tty) backgrounds)}; do - # Make sure that the console exists. - echo -n "" > /dev/tty$tty + # For each console... + for tty in ${toString (map (x: x.tty) backgrounds)}; do + # Make sure that the console exists. + echo -n "" > /dev/tty$tty - # Set the theme as determined by tty-backgrounds-combine.sh - # above. - theme=$(readlink ${themesUnpacked}/$tty) - ${splashutils}/${splashutils.controlName} --tty $tty -c setcfg -t $theme || true - ${splashutils}/${splashutils.controlName} --tty $tty -c setpic -t $theme || true - ${splashutils}/${splashutils.controlName} --tty $tty -c on || true - done + # Set the theme as determined by tty-backgrounds-combine.sh + # above. + theme=$(readlink ${themesUnpacked}/$tty) + ${splashutils}/${splashutils.controlName} --tty $tty -c setcfg -t $theme || true + ${splashutils}/${splashutils.controlName} --tty $tty -c setpic -t $theme || true + ${splashutils}/${splashutils.controlName} --tty $tty -c on || true + done end script respawn sleep 10000 # !!! Hack stop script - # Disable the theme on each console. - for tty in ${toString (map (x: x.tty) backgrounds)}; do - ${splashutils}/${splashutils.controlName} --tty $tty -c off || true - done + # Disable the theme on each console. + for tty in ${toString (map (x: x.tty) backgrounds)}; do + ${splashutils}/${splashutils.controlName} --tty $tty -c off || true + done end script ''; diff --git a/upstart-jobs/udev.nix b/upstart-jobs/udev.nix index 01a3f88bb37..2fcb1a53488 100644 --- a/upstart-jobs/udev.nix +++ b/upstart-jobs/udev.nix @@ -19,7 +19,7 @@ let # Miscellaneous devices. KERNEL=="sonypi", MODE="0666" KERNEL=="kvm", MODE="0666" - KERNEL=="kqemu", NAME="%k", MODE="0666" + KERNEL=="kqemu", NAME="%k", MODE="0666" # Create a symlink for the CD-ROM device. #KERNEL=="hd[a-z]", BUS=="ide", SYSFS{removable}=="1", SYSFS{device/media}=="cdrom", SYMLINK+="cdrom cdrom-%k" @@ -51,11 +51,11 @@ let '' substituteInPlace $out/80-drivers.rules \ --replace /sbin/modprobe ${modprobe}/sbin/modprobe - '' - else - '' - rm $out/80-drivers.rules - '' + '' + else + '' + rm $out/80-drivers.rules + '' } for i in ${toString extraUdevPkgs}; do for j in $i/etc/udev/rules.d/*; do @@ -92,10 +92,10 @@ in env UDEV_CONFIG_FILE=${conf} start script - echo "" > /proc/sys/kernel/hotplug + echo "" > /proc/sys/kernel/hotplug - # Get rid of possible old udev processes. - ${procps}/bin/pkill -u root "^udevd$" || true + # Get rid of possible old udev processes. + ${procps}/bin/pkill -u root "^udevd$" || true # Do the loading of additional stage 2 kernel modules. # Maybe this isn't the best place... @@ -104,30 +104,30 @@ in ${modprobe}/sbin/modprobe $i || true done - # Start udev. - ${udev}/sbin/udevd --daemon + # Start udev. + ${udev}/sbin/udevd --daemon - # Let udev create device nodes for all modules that have already - # been loaded into the kernel (or for which support is built into - # the kernel). - if ! test -e ${devicesCreated}; then - ${udev}/sbin/udevadm trigger - ${udev}/sbin/udevadm settle # wait for udev to finish - touch ${devicesCreated} - fi + # Let udev create device nodes for all modules that have already + # been loaded into the kernel (or for which support is built into + # the kernel). + if ! test -e ${devicesCreated}; then + ${udev}/sbin/udevadm trigger + ${udev}/sbin/udevadm settle # wait for udev to finish + touch ${devicesCreated} + fi - # Kill udev, let Upstart restart and monitor it. (This is nasty, - # but we have to run `udevadm trigger' first. Maybe we can use - # Upstart's `binary' keyword, but it isn't implemented yet.) - if ! ${procps}/bin/pkill -u root "^udevd$"; then - echo "couldn't stop udevd" - fi + # Kill udev, let Upstart restart and monitor it. (This is nasty, + # but we have to run `udevadm trigger' first. Maybe we can use + # Upstart's `binary' keyword, but it isn't implemented yet.) + if ! ${procps}/bin/pkill -u root "^udevd$"; then + echo "couldn't stop udevd" + fi - while ${procps}/bin/pgrep -u root "^udevd$"; do - sleep 1 - done + while ${procps}/bin/pgrep -u root "^udevd$"; do + sleep 1 + done - initctl emit new-devices + initctl emit new-devices end script respawn ${udev}/sbin/udevd diff --git a/upstart-jobs/xfs.nix b/upstart-jobs/xfs.nix index b887e3fc334..1b36002a348 100644 --- a/upstart-jobs/xfs.nix +++ b/upstart-jobs/xfs.nix @@ -1,20 +1,20 @@ { - pkgs, config + pkgs, config }: if ! config.fonts.enableFontDir then abort "Please enable fontDir (fonts.enableFontDir) to use xfs." else let - configFile = ./xfs.conf; + configFile = ./xfs.conf; startingDependency = if config.services.gw6c.enable && config.services.gw6c.autorun then "gw6c" else "network-interfaces"; in rec { - name = "xfs"; - groups = []; - users = []; - job = " - description \"X Font Server\" - start on ${startingDependency}/started - stop on shutdown + name = "xfs"; + groups = []; + users = []; + job = " + description \"X Font Server\" + start on ${startingDependency}/started + stop on shutdown - respawn ${pkgs.xorg.xfs}/bin/xfs -config ${configFile} - "; + respawn ${pkgs.xorg.xfs}/bin/xfs -config ${configFile} + "; } diff --git a/upstart-jobs/xserver.nix b/upstart-jobs/xserver.nix index 2d81d25c225..0191773555b 100644 --- a/upstart-jobs/xserver.nix +++ b/upstart-jobs/xserver.nix @@ -98,7 +98,7 @@ let if cfg.useInternalAGPGART == "yes" then '' Option "UseInternalAGPGART" "yes"'' else if cfg.useInternalAGPGART == "no" then - '' Option "UseInternalAGPGART" "no"'' + '' Option "UseInternalAGPGART" "no"'' else ""; extraDeviceConfig = cfg.extraDeviceConfig; @@ -141,7 +141,7 @@ let export screen=' Option "AddARGBGLXVisuals" "true" Option "DisableGLXRootClipping" "true" - Option "RandRRotation" "on" + Option "RandRRotation" "on" ' export device=' @@ -154,7 +154,7 @@ let Option "Composite" "Enable" ' fi - + if [ "${toString videoDriver}" = i810 ]; then export extensions=' Option "Composite" "Enable" @@ -385,7 +385,7 @@ rec { then '' ln -sf ${kernelPackages.nvidiaDrivers} /var/run/opengl-driver '' - else if cfg.driSupport + else if cfg.driSupport then "ln -sf ${pkgs.mesa} /var/run/opengl-driver" else "" }