1
0
Fork 1
mirror of https://github.com/NixOS/nixpkgs.git synced 2024-12-24 19:08:30 +00:00
Commit graph

1910 commits

Author SHA1 Message Date
Eelco Dolstra a40583e7e4 Fix bogus mkOption types
Among others, systemd unit options were not being type-checked because
of this.  mkOption should really check its arguments better...
2013-10-28 22:45:56 +01:00
Eelco Dolstra 1408ac51a4 Add missing types 2013-10-28 22:45:56 +01:00
Eelco Dolstra 89bd18b3af Fix manual generation 2013-10-28 22:45:56 +01:00
Eelco Dolstra 7cf0e0bda8 Manual: Fix bad \" characters 2013-10-28 22:45:56 +01:00
Eelco Dolstra 4b1a9dd00b Remove uses of mkFixStrictness
mkFixStrictness is no longer needed, woohoo!
2013-10-28 22:45:55 +01:00
Eelco Dolstra 0e333688ce Big cleanup of the NixOS module system
The major changes are:

* The evaluation is now driven by the declared options.  In
  particular, this fixes the long-standing problem with lack of
  laziness of disabled option definitions.  Thus, a configuration like

    config = mkIf false {
      environment.systemPackages = throw "bla";
    };

  will now evaluate without throwing an error.  This also improves
  performance since we're not evaluating unused option definitions.

* The implementation of properties is greatly simplified.

* There is a new type constructor "submodule" that replaces
  "optionSet".  Unlike "optionSet", "submodule" gets its option
  declarations as an argument, making it more like "listOf" and other
  type constructors.  A typical use is:

    foo = mkOption {
      type = type.attrsOf (type.submodule (
        { config, ... }:
        { bar = mkOption { ... };
          xyzzy = mkOption { ... };
        }));
    };

  Existing uses of "optionSet" are automatically mapped to
  "submodule".

* Modules are now checked for unsupported attributes: you get an error
  if a module contains an attribute other than "config", "options" or
  "imports".

* The new implementation is faster and uses much less memory.
2013-10-28 22:45:55 +01:00
Eelco Dolstra f4dadc5df8 rename.nix: Don't use the extraConfigs feature 2013-10-28 22:45:55 +01:00
Eelco Dolstra 2cc37c17d9 openvpn.nix: Improve types 2013-10-28 22:45:55 +01:00
Eelco Dolstra 5b8c4d2a7d Get rid of the only use of mkNotdef 2013-10-28 22:45:54 +01:00
Eelco Dolstra 335422f7be Get rid of the only use of mkDefaultValue 2013-10-28 22:45:54 +01:00
Eelco Dolstra 41c8f9598e Remove dead code 2013-10-28 22:45:54 +01:00
Jaka Hudoklin d28a9619a1 nixos/redis: log to syslog by default 2013-10-28 18:18:24 +01:00
Jaka Hudoklin b20c08d2cb nixos/redis: user set uid, make it compatible #1076 2013-10-28 18:18:13 +01:00
Jaka Hudoklin c1ad189295 nixos/graphite: limit amount of log message defaults 2013-10-28 17:09:53 +01:00
Jaka Hudoklin 0229f45cf3 nixos/graphite: graphite requires pidfile set for startup 2013-10-28 17:08:33 +01:00
Michael Raskin 3022fff7db Adding Quantum Minigolf game 2013-10-28 00:09:46 +04:00
Eelco Dolstra f79a7359b0 firebird.nix: Fix a misplaced } that causes "users" to be outside "config" 2013-10-25 15:52:52 +02:00
Eelco Dolstra 72ca782044 Fix an assertion set in the wrong place 2013-10-25 15:47:30 +02:00
Eelco Dolstra 20150b1cee Ensure that the manual job gets build with the right revision info 2013-10-24 19:58:34 +02:00
Eelco Dolstra 373c14614b Put the NixOS channel in an option 2013-10-24 15:09:00 +02:00
Jaka Hudoklin ad3a0dd8fb nixos/libvirtd: fix remote ssh managment by adding netcat-openbsd in system packages
Virsh/virt-manager uses ssh to connect to master, there it expects openbsd netcat(which
has support for unix sockets) to be avalible, to make a tunnel.

Close #1087.
2013-10-24 11:01:43 +03:00
Eelco Dolstra 49e73ea117 nixos-generate-config: Don't suggest setting fileSystems in configuration.nix
It's already set in hardware-configuration.nix so this just confuses
people.

Also get rid of boot.initrd.kernelModules, since
hardware-configuration.nix is supposed to figure that out as well.
2013-10-24 05:28:37 +02:00
Eelco Dolstra d49f141a79 Manual: When building from the channel, link to the exact Git revision 2013-10-24 02:03:10 +02:00
Eelco Dolstra c4149c7b56 Fix evaluation error in the ISOs 2013-10-24 02:03:10 +02:00
Eelco Dolstra a3777ba4f9 Remove dependencies on the Nixpkgs location 2013-10-23 20:08:23 +02:00
Eelco Dolstra caf18545a4 Do show aliases in the manual. 2013-10-23 20:08:22 +02:00
Eelco Dolstra b218c02a3c rename.nix: Don't use splitString
It's very slow.
2013-10-23 20:08:22 +02:00
Eelco Dolstra 8f4c5b05d5 Add a way to define obsolete options that have no replacement 2013-10-23 20:08:22 +02:00
Eelco Dolstra b5d5afd99a Allow modules to define warnings to be shown during evaluation 2013-10-23 20:08:22 +02:00
Eelco Dolstra 0ec10c57df Fix style 2013-10-23 20:08:21 +02:00
Eelco Dolstra ec0911ce7f Manual: Don't show obsolete/deprecated options 2013-10-23 20:08:21 +02:00
Eelco Dolstra 29014a47fb Allow options to be marked as "internal"
This means they're not for end users.  Currently they're filtered from
the manual, but we could include them in a separate section.
2013-10-23 20:08:21 +02:00
Eelco Dolstra e29b51bfb1 Improve option description 2013-10-23 20:08:21 +02:00
Eelco Dolstra 441dcd68d8 Get rid of special-casing of system.path in the manual generation 2013-10-23 20:08:21 +02:00
aszlig 19b00be0a0
nixos-rebuild: Drop references to <nixos>.
Commit 31203732b3 dropped the reference to
<nixos> from NIX_PATH (nixos/modules/programs/environment.nix) and thus
prevents systems that are not using channels from rebuilding.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2013-10-23 17:16:17 +02:00
aszlig f182fdf6ed
nixos-generate-config: Add --show-hardware-config.
So, we get the old behaviour of nixos-hardware-scane if we run the
following command:

nixos-generate-config --no-filesystems --show-hardware-config

This allows to use scripts in order to fetch NixOS specific hardware
information, without the need to duplicate code elsewhere.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2013-10-23 17:16:17 +02:00
aszlig e2c546ce4a
nixos-generate-config: Remove unnecessary spaces.
The attributes swapDevices and imports add a space character after the
eqals sign, which is unnecessary. I know, I'm a pedantic douche bag but
it hurts my eyes.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2013-10-23 17:16:16 +02:00
aszlig a546069ad3
nixos-generate-config: Add --no-filesystems flag.
This is to get back the old behavior of nixos-hardware-scan, which
didn't include fileSystems and swapDevices.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2013-10-23 17:16:16 +02:00
Domen Kožar 03e1178f80 munin: fix documentation links 2013-10-23 13:54:46 +02:00
Domen Kožar 897329fc47 Merge pull request #1106 from ocharles/redshift
services.redshift: New service
2013-10-22 01:33:08 -07:00
Oliver Charles d792544802 services.redshift: New service 2013-10-22 09:03:06 +01:00
Marc Weber 6cb91c33d0 Firebird service:
* simplify directory layout
 * clean up option descriptions
 * let the user override Firebird package
 * create firebird user
 * clarify TODO comment

Close  # 1061.
2013-10-21 20:33:11 +03:00
Evgeny Egorochkin d2f612b1b6 postgresql.authMethod: remove unimplemented option.
close #1104.
2013-10-21 19:26:26 +03:00
Evgeny Egorochkin 4732f59226 xserver.s3tcSupport: fix typo, improve description. 2013-10-21 19:11:17 +03:00
Eelco Dolstra 65277727e8 nix-gc: Revert to "script" instead of ExecStart
There is an assumption that cfg.options can contain shell code, so
ExecStart doesn't work here.
2013-10-21 11:22:27 +02:00
Jaka Hudoklin c7429711b8 nixos/nginx: allow to specify which package to use
This enables to override which plugins to include with nginx by allowing to change
nginx package. I also removed webdav option in nginx nixos module, because you
can now specify this by overriding nginx package.
2013-10-20 22:52:02 +02:00
Domen Kožar aeff0028bf munin: add test and fix a bug 2013-10-20 21:16:24 +02:00
Michael Raskin f88aa22706 Allow non-SSL connections to vsftpd by default to let tests not specify certificate 2013-10-20 21:16:12 +04:00
Michael Raskin a0bbc3e838 Add apparently missing option to vsftpd configuration 2013-10-20 20:39:37 +04:00
Michael Raskin 9b6f7c14ec Merge pull request #1060 from MarcWeber/submit/vsftpd
small vsftpd improvements
2013-10-20 08:58:21 -07:00
Domen Kožar c1b9775821 Merge pull request #1090 from NixOS/munin-rework
munin: refactor package and add nixos service
2013-10-20 08:10:28 -07:00
Domen Kožar 9230ae6522 munin: refactor package and add nixos service 2013-10-20 15:08:07 +02:00
Rok Garbas af0e2ccf45 zope2 service... indentation fix 2013-10-20 01:35:09 +02:00
Evgeny Egorochkin 89854548e7 Add services.xserver.s3tcSupport option 2013-10-19 00:40:45 +03:00
Eelco Dolstra ff74d78c9d Allow PAM resource limits to be integers 2013-10-17 15:36:59 +02:00
Eelco Dolstra af8fc748dd Fix PAM resource limits 2013-10-17 15:26:48 +02:00
Eelco Dolstra b19d8e0fcd Remove obsolete pre-systemd compat stuff 2013-10-17 14:57:20 +02:00
Eelco Dolstra 5f14933c33 Don't enable acpid for VirtualBox guests
It's no longer needed for ACPI shutdown, since logind handles this
now.
2013-10-17 14:41:58 +02:00
Eelco Dolstra ad0568e64a mkEnableOption: Add a period at the end of the description 2013-10-17 14:29:51 +02:00
Eelco Dolstra 82ad8c5ce0 Make manual generation not depend on the user's configuration
Previously changing the value of certain options in configuration.nix
would cause the manual to be regenerated, because some option defaults
depend on the configuration.  This is undesirable because rebuilding
the manual is kind of slow.  So now the manual reflects an empty
configuration.

The downside is that this requires another call to fixMergeModules,
which adds about 14% to evaluation time.  Probably worth it.
2013-10-17 13:43:40 +02:00
Eelco Dolstra b33657df03 grub: Make assertion lazier 2013-10-17 13:30:49 +02:00
Eelco Dolstra 84d4358635 Fix compatibility with Nix < 1.6
Nix 1.6 (accidentally) changed the semantics of strings like
"${path}/bla", so this happened to work on 1.6 but not before.
2013-10-16 23:07:47 +02:00
Shea Levy 418fa3bb33 D'oh
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-10-16 16:01:27 -04:00
Shea Levy 6171f13ed5 Add gurobi to the system packages if the configuration specifies a license
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-10-16 11:26:39 -04:00
Shea Levy 715bee3a0a Add gurobi client module
Not yet tested, no license yet

Signed-off-by: Shea Levy <shea@shealevy.com>
2013-10-16 11:23:58 -04:00
Shea Levy a5a13c4e43 Add gurobi token server service
Not yet tested, I don't have a license yet

Signed-off-by: Shea Levy <shea@shealevy.com>
2013-10-16 11:02:05 -04:00
Eelco Dolstra 6dafee8d67 Fix runInMachine
It requires a writable /nix/store to store the build result.  Also,
wait until we've reached multi-user.target before doing the build, and
do a sync at the end to ensure all data to $out is properly written.

http://hydra.nixos.org/build/6496716
2013-10-16 11:37:38 +02:00
Eelco Dolstra e0db0aaa4d Rename /etc/nix.machines to /etc/nix/machines
Since we have a /etc/nix directory, we should use it and not pollute
/etc.
2013-10-16 10:57:25 +02:00
Eelco Dolstra 16cd8b039b Remove nix.manualNixMachines
Suggested by Marc Weber.  Fixes #1059.

Generate /etc/nix.machines only if buildMachines is not empty.  Thus,
if you want to manage /etc/nix.machines in some other way, you can set
nix.distributedBuilds to true but not set nix.buildMachines.
2013-10-16 10:53:23 +02:00
Eelco Dolstra 7c7bfa817a fail2ban: Update to 0.8.10
Also fix random start failures due to a race between the fail2ban
server and the postStart script.
2013-10-16 10:03:43 +02:00
Domen Kožar c9acee7ee0 Merge pull request #1073 from offlinehacker/nixos/graphite/fix_carbon
nixos/graphite: carbon, use syslog for logging
2013-10-15 14:59:51 -07:00
Eelco Dolstra 8485487727 Get rid of <nixpkgs> 2013-10-15 17:52:02 +02:00
Eelco Dolstra ceb8ab7ffa Really fix use of NixOps with the merged Nixpkgs/NixOS tree
Note that there is a subtle difference in Nix that causes
nixos-rebuild to work and NixOps to fail:

  $ nix-instantiate '<nixos>' -A config.system.nixosVersion --eval-only
  "13.10pre34915.50f4822"

  $ nix-instantiate '<nixos/default.nix>' -A config.system.nixosVersion --eval-only
  error: opening file `/nix/var/nix/profiles/per-user/root/channels/nixos/.version': No such file or directory

Fixes NixOS/nixops#145.
2013-10-15 17:50:09 +02:00
Eelco Dolstra bbe265e8c2 slim: Only enable if the X server is enabled
http://hydra.nixos.org/build/6494972

Disabling slim revealed that services.xserver.displayManager.job had
an incorrect type, so fixed that as well.
2013-10-15 17:24:33 +02:00
Eelco Dolstra ae74b0ae58 sshd: Remove the usePAM option
Sshd *must* use PAM because we depend on it for proper session
management.  The original goal of this option (disabling password
logins) can also be implemented by removing pam_auth authentication
from sshd's PAM service.
2013-10-15 15:05:49 +02:00
Eelco Dolstra a2c820c678 Turn security.pam.services into an attribute set
That is, you can say

  security.pam.services.sshd = { options... };

instead of

  security.pam.services = [ { name = "sshd"; options... } ];

making it easier to override PAM settings from other modules.
2013-10-15 14:47:51 +02:00
Eelco Dolstra 3f2c0bf9bd slim: Fix session handling 2013-10-15 13:41:03 +02:00
Eelco Dolstra 5b702be29f Add support for slimlock, slim's simple screen locker 2013-10-15 13:23:40 +02:00
Eelco Dolstra 873662b8ad slim: Work around broken PAM session handling
Previously logging in via SLiM more than once didn't work because SLiM
doesn't clean up its PAM session properly (that is, in a child rather
than in the parent).  Thus the slim process becomes part of the user
session's cgroup, among other things.  This patch causes SLiM to exit
after the session has finished, after which systemd will restart
display-manager.service.

Fixes NixOS/nixops#137.
2013-10-15 13:23:40 +02:00
Domen Kožar 30933abb97 add prey: Proven tracking software that helps you find, lock and recover your devices when stolen or missing 2013-10-14 11:57:48 +02:00
Jaka Hudoklin 63539b2844 nixos/graphite: carbon, use syslog for logging
Twisted provides option to log with syslog, this enables nicer logging.
Imagine what happens in a case of exception. If logs are written to stdout,
traceback won't be merged thus giving ugly logs. This commit fixes that.
This is also one of the official ways of starting carbon, so no worries.
2013-10-13 23:18:22 +02:00
Eelco Dolstra 3e001244e4 Load the xfs kernel module on demand 2013-10-13 17:35:57 +02:00
Eelco Dolstra ca3725bfc9 nixos-generate-config: Add --root option
If this option is given, nixos-generate-config will write the
configuration to /etc/nixos under the given root, and only emit
fileSystems attributes for filesystems under the given root directory.

The typically use case is at installation time, where you can say:

  $ nixos-generate-config --root /mnt

which will create /mnt/etc/nixos/{configuration.nix,hardware-configuration.nix}.

Also add a --force flag to force overwriting configuration.nix.
2013-10-13 17:35:56 +02:00
Eelco Dolstra 3875dcdfeb nixos-generate-config: Emit boot.initrd.availableKernelModules instead of kerneLmodules 2013-10-13 17:35:56 +02:00
Eelco Dolstra 57804f44ec nixos-generate-config: Skip FUSE filesystems
I don't know how to recover that a FUSE filesystem is (say) ntfs-3g.
2013-10-13 17:35:56 +02:00
Eelco Dolstra 984921e657 nixos-generate-config: Emit fileSystems automatically 2013-10-13 17:35:56 +02:00
Eelco Dolstra 677d9882b0 nixos-generate-config: Generate swapDevices 2013-10-13 17:35:56 +02:00
Eelco Dolstra 440fe8f05d Use read_file from File::Slurp 2013-10-13 17:35:56 +02:00
Eelco Dolstra ac13bd2575 Merge "nixos-option --install" into nixos-generate-config
Having configuration.nix generation hidden underneath nixos-option
never made sense, also given that there was another command to
generate part of the configuration (nixos-hardware-scan).  Now
nixos-generate-config produces both configuration.nix and
hardware-configuration.nix.  The latter is overwritten while the
former is not.
2013-10-13 17:35:55 +02:00
Eelco Dolstra fd0fd49d36 nixos-generate-config: Write to /etc/nixos/hardware.nix rather than stdout 2013-10-13 17:35:55 +02:00
Eelco Dolstra 3ed41735b8 Rename nixos-hardware-scan to nixos-generate-config 2013-10-13 17:35:55 +02:00
Eelco Dolstra 4b28f28028 Remove unused file 2013-10-13 17:35:55 +02:00
Eelco Dolstra f42d494355 Refactor variable names 2013-10-13 17:35:55 +02:00
Eelco Dolstra 57ec8424e4 Drop <services> from $NIX_PATH 2013-10-13 17:35:55 +02:00
Eelco Dolstra ef72fcc2aa Map --help flag to "man <command>" for more NixOS commands 2013-10-13 17:35:55 +02:00
Eelco Dolstra f1a03addae nixos-rebuild: Let --help invoke "man nixos-rebuild" 2013-10-13 17:35:54 +02:00
Eelco Dolstra 2be774ccfa Set .version-suffix properly when building from Git 2013-10-13 17:35:54 +02:00
Domen Kožar e28ddcfbec Merge pull request #1063 from offlinehacker/nixos/graphite/listen_defaults_fix
nixos: graphite, listen on localhost by default
2013-10-12 12:23:34 -07:00
Domen Kožar a8dd839c1f Merge pull request #1067 from offlinehacker/nixos/statsd/mgmt_ip_port
nixos/statsd: Add support to specify managment ip/port
2013-10-12 12:23:11 -07:00
Domen Kožar 15608f6df6 Merge pull request #1068 from offlinehacker/nixos/elasticsearch/logfix
nixos/elasticsearch: change loglevel from DEBUG to INFO
2013-10-12 12:22:53 -07:00
Jaka Hudoklin fd0d2872a4 nixos/elasticsearch: change loglevel from DEBUG to INFO 2013-10-12 12:43:33 +02:00
Jaka Hudoklin 285f447c49 nixos/statsd: Add support to specify managment ip/port 2013-10-12 12:37:52 +02:00
Jaka Hudoklin 677ecf4868 nixos/graphite: listen on localhost by default 2013-10-12 12:34:26 +02:00
Marc Weber 4683774277 experimental/vsftpd
vsftpd improvements:
- intorduce one declarative list of options
- make docummentation strings more understandable and add missing options
  such as SSL/TLS support
- Use environment.etc."vsftpd".text because I can't think about any
  reason why a shell script should be used.
  That code was written in 2009.
2013-10-12 01:05:13 +02:00
Domen Kožar cf3e36a3b9 bash: place interactiveShellInit at the end to be able to override existing settings 2013-10-11 11:55:58 +02:00
Shea Levy a63b4dc555 Remove old efi boot stub bootloader
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-10-10 10:54:35 -04:00
Eelco Dolstra c8628e0989 nixos-checkout: Only fetch the Nixpkgs repo 2013-10-10 13:28:22 +02:00
Eelco Dolstra 31203732b3 Update the release expressions and the channel generators 2013-10-10 13:28:22 +02:00
Eelco Dolstra 041da5a6f9 Unify the Nixpkgs and NixOS version numbers 2013-10-10 13:28:22 +02:00
Eelco Dolstra 5c1f8cbc70 Move all of NixOS to nixos/ in preparation of the repository merge 2013-10-10 13:28:20 +02:00