Commit graph

1802 commits

Author SHA1 Message Date
Eelco Dolstra
93571df680 * Make sure that hal is really running when the X server starts,
otherwise we could end up without any input devices.

svn path=/nixos/trunk/; revision=16998
2009-09-09 21:22:00 +00:00
Sander van der Burg
d6b1b4615a Shortened the Trac test expression a bit to make it more readable
svn path=/nixos/trunk/; revision=16965
2009-09-04 23:04:29 +00:00
Sander van der Burg
4c2650d015 - The repository is no longer explicitly created on the storage server, but on the webserver in which the /repos dir is a NFS mount
- NFS mounts are created during startup time
- Played a bit with waiting times in order to capture a nice screenshot


svn path=/nixos/trunk/; revision=16964
2009-09-04 22:06:54 +00:00
Sander van der Burg
17c063b627 Added an option that automatically creates the mount points in /etc/exports, so that everything is self initializing
svn path=/nixos/trunk/; revision=16963
2009-09-04 22:01:08 +00:00
Sander van der Burg
f6f6bfbc2f The /var/trac directory needs to be accessible by the webserver user
svn path=/nixos/trunk/; revision=16962
2009-09-04 15:58:04 +00:00
Eelco Dolstra
fc69e22e3a * Timing dependency is bad.
svn path=/nixos/trunk/; revision=16961
2009-09-04 15:33:21 +00:00
Eelco Dolstra
17d287afa5 * Bump the number of maximum open files for Nix builders.
Our VM builds were causing Samba to go over this limit.

svn path=/nixos/trunk/; revision=16960
2009-09-04 15:27:52 +00:00
Eelco Dolstra
80eafedc16 svn path=/nixos/trunk/; revision=16959 2009-09-04 15:26:30 +00:00
Eelco Dolstra
3f65966653 * Test konqueror.
svn path=/nixos/trunk/; revision=16958
2009-09-04 15:02:52 +00:00
Sander van der Burg
7fc8a1fd98 Fixed some bugs in the Trac testcase
svn path=/nixos/trunk/; revision=16957
2009-09-04 14:45:30 +00:00
Sander van der Burg
65cb814f7a Committed trac example case
svn path=/nixos/trunk/; revision=16955
2009-09-04 11:37:07 +00:00
Eelco Dolstra
685335df2f * system.build.system -> system.build.toplevel, since the former name
is just too weird.

svn path=/nixos/trunk/; revision=16954
2009-09-04 09:29:18 +00:00
Sander van der Burg
9843fa2ed7 Various NFS server fixes:
- Added rpc.statd service, which prevents messages that tell you that you should use -o nolock
- Create /var/lib/nfs on initialization
- Create /etc/exports, so that exportfs can create /var/lib/nfs/etab. This prevents errors such as: mount.nfs: an incorrect mount option was specified


svn path=/nixos/trunk/; revision=16953
2009-09-03 14:47:58 +00:00
Eelco Dolstra
2b5c9a78ff * Increase the timeout to deal with heavily loaded hosts.
svn path=/nixos/trunk/; revision=16952
2009-09-03 00:05:38 +00:00
Eelco Dolstra
a27680ea17 * Another distributed regression test, a network consisting of a Quake
3 server and two clients.  The clients connect to the server and do
  nothing (except getting blown by the bots).  After a few seconds we
  verify that the clients indeed connected successfully, and make a
  screenshot of the X displays of the clients.

svn path=/nixos/trunk/; revision=16951
2009-09-03 00:04:43 +00:00
Eelco Dolstra
c6d4282f25 svn path=/nixos/trunk/; revision=16950 2009-09-02 23:37:58 +00:00
Eelco Dolstra
497760b444 * Use scrot to make screenshots.
* Another X11 test (running Quake 3).

svn path=/nixos/trunk/; revision=16949
2009-09-02 23:16:33 +00:00
Eelco Dolstra
05cb34c6d0 svn path=/nixos/trunk/; revision=16942 2009-09-02 19:59:26 +00:00
Eelco Dolstra
6ee7ccf07f * Automatically log in using kdm.
svn path=/nixos/trunk/; revision=16941
2009-09-02 18:44:09 +00:00
Eelco Dolstra
67db733123 * Simplify the generation of kdmrc. Instead of using sed to
substitute some values, just prepend them to the start of kdmrc.
  KDM will merge multiple sections with the same name (even though it
  complains a bit).  Option definitions that occur first have
  precedence.

svn path=/nixos/trunk/; revision=16940
2009-09-02 18:35:23 +00:00
Eelco Dolstra
6723473421 * Give some more memory to the VMs.
svn path=/nixos/trunk/; revision=16939
2009-09-02 18:33:38 +00:00
Sander van der Burg
48f22eb62d Fixed errors with: export command not found
svn path=/nixos/trunk/; revision=16938
2009-09-02 17:59:46 +00:00
Eelco Dolstra
331bee12a4 * Fold the functionality of guest-users.nix into users-groups.nix by
adding an attribute "password" that defines the default password for
  an account.  The default (null, as opposed to the empty string)
  means not to set a password.

svn path=/nixos/trunk/; revision=16937
2009-09-02 17:35:24 +00:00
Eelco Dolstra
a186b5e4b4 * Fix kdm logins. Doh!
svn path=/nixos/trunk/; revision=16936
2009-09-02 17:00:25 +00:00
Eelco Dolstra
cddc93cc5e * Start of a simple GUI test. Right now it just starts the X server,
wait a few seconds and makes a screenshot.

svn path=/nixos/trunk/; revision=16934
2009-09-02 14:48:28 +00:00
Sander van der Burg
484580dbbd Updated disnix service to work with latest revision
svn path=/nixos/trunk/; revision=16929
2009-09-02 10:27:44 +00:00
Eelco Dolstra
486714bfcc * Make the coverage report more concise.
svn path=/nixos/trunk/; revision=16926
2009-09-02 09:38:16 +00:00
Eelco Dolstra
0ca8c84618 svn path=/nixos/trunk/; revision=16924 2009-09-02 08:42:43 +00:00
Eelco Dolstra
137c5c65bd * Added a timeout for starting the VM. TODO: handle SIGCHLD from
qemu.
* Do the subversion test on i686-linux.  

svn path=/nixos/trunk/; revision=16923
2009-09-02 08:36:30 +00:00
Eelco Dolstra
b1aa227cbd * Use -no-reboot, otherwise kernel panics cause QEMU to get into an
infinite loop trying to start the machine.

svn path=/nixos/trunk/; revision=16922
2009-09-02 07:52:36 +00:00
Eelco Dolstra
37134cf3af svn path=/nixos/trunk/; revision=16921 2009-09-02 06:45:50 +00:00
Eelco Dolstra
e7acca2ba3 * Cleanup the kernel coverage analysis.
svn path=/nixos/trunk/; revision=16919
2009-09-01 22:50:46 +00:00
Eelco Dolstra
4d8d704fba * Run the subversion.nix test with coverage analysis on the kernel.
svn path=/nixos/trunk/; revision=16917
2009-09-01 22:22:45 +00:00
Eelco Dolstra
2c5599f59b * Urgh, cleanSource doesn't work on paths in the store. Looks like a
bug.

svn path=/nixos/trunk/; revision=16905
2009-08-31 15:12:42 +00:00
Eelco Dolstra
9359bf11d5 * Build the Subversion test in Hydra (as a regression test for NixOS).
* Pass the location to the services tree around instead of requiring
  it to be in ../services.

svn path=/nixos/trunk/; revision=16901
2009-08-31 14:56:19 +00:00
Eelco Dolstra
a2945a2eb2 svn path=/nixos/trunk/; revision=16900 2009-08-31 14:26:31 +00:00
Eelco Dolstra
27a8e656bc * Stuff for automatic and manual testing of NixOS VMs.
lib/build-vms.nix contains a function `buildVirtualNetwork' that
  takes a specification of a network of machines (as an attribute set
  of NixOS machine configurations) and builds a script that starts
  each configuration in a separate QEMU/KVM VM and connects them
  together in a virtual network.  This script can be run manually to
  test the VMs interactively.  There is also a function `runTests'
  that starts and runs the virtual network in a derivation, and
  then executes a test specification that tells the VMs to do certain
  things (i.e., letting one VM send an HTTP request to a webserver on
  another VM).  The tests are written in Perl (for now).

  tests/subversion.nix shows a simple example, namely a network of two
  machines: a webserver that runs the Subversion subservice, and a
  client.  Apache, Subversion and a few other packages are built with
  coverage analysis instrumentation.  For instance,

    $ nix-build tests/subversion.nix -A vms
    $ ./result/bin/run-vms

  starts two QEMU/KVM instances.  When they have finished booting, the
  webserver can be accessed from the host through
  http://localhost:8081/.

  It also has a small test suite:

    $ nix-build tests/subversion.nix -A report

  This runs the VMs in a derivation, runs the tests, and then produces
  a distributed code coverage analysis report (i.e. it shows the
  combined coverage on both machines).

  The Perl test driver program is in lib/test-driver.  It executes
  commands on the guest machines by connecting to a root shell running
  on port 514 (provided by modules/testing/test-instrumentation.nix).

  The VMs are connected together in a virtual network using QEMU's
  multicast feature.  This isn't very secure.  At the very least,
  other processes on the same machine can listen to or send packets on
  the virtual network.  On the plus side, we don't need to be root to
  set up a multicast virtual network, so we can do it from a
  derivation.  Maybe we can use VDE instead.

  (Moved from the vario repository.)

svn path=/nixos/trunk/; revision=16899
2009-08-31 14:25:12 +00:00
Eelco Dolstra
a7001d34d7 * Oops, didn't want to commit that.
svn path=/nixos/trunk/; revision=16898
2009-08-31 13:46:56 +00:00
Eelco Dolstra
921b838149 * test -> tests.
svn path=/nixos/trunk/; revision=16897
2009-08-31 13:40:57 +00:00
Sander van der Burg
4a0be54df0 Added subversion python modules to the PYTHONPATH
svn path=/nixos/trunk/; revision=16895
2009-08-30 19:45:15 +00:00
Sander van der Burg
8fd9fa36c4 Added an initial Trac subservice. Trac projects still have to be created by using the trac-admin tool
svn path=/nixos/trunk/; revision=16894
2009-08-30 19:11:47 +00:00
Eelco Dolstra
7f8272dd70 * Make the host filesystem writable for non-root. This is a temporary
hack to enable non-root processes to write coverage data.

svn path=/nixos/trunk/; revision=16891
2009-08-29 14:14:42 +00:00
Marc Weber
39e12e13c4 cupsd: add bindirCmds so that you can test other backends easier.
svn path=/nixos/trunk/; revision=16879
2009-08-27 23:16:09 +00:00
Eelco Dolstra
2892aed712 * lib/eval-config.nix: combined "configuration" and "extraModules"
into one argument "modules".
* release.nix: fixed the manual job.
* ISO generation: break an infinite recursion.  Don't know why this
  suddenly happens.  Probably because of the nixpkgs.config change,
  but I don't see why.  Maybe the option evaluation is too strict.

svn path=/nixos/trunk/; revision=16878
2009-08-27 11:57:43 +00:00
Eelco Dolstra
6f1b1aefde * Added an option `nixpkgs.config' that allows the Nixpkgs options to
be set from the NixOS configuration.  For instance, you can say

    nixpkgs.config.firefox.enableGeckoMediaPlayer = true;

    environment.systemPackages = [ pkgs.firefox ];

  but the more interesting application is to apply global overrides to
  Nixpkgs throughout NixOS, e.g.

    nixpkgs.config.packageOverrides = pkgs:
      { glibc = pkgs.glibc27;
        gcc = pkgs.gcc42;
      };

  would build the whole system with Glibc 2.7 and GCC 4.2.  (There are
  some issues with "useFromStdenv" in all-packages.nix that need to be
  fixed for packages in the stdenv bootstrap though.)

  The implementation of this option is kind of evil though due to the
  need to prevent a circularity between the evaluation of
  nixpkgs.config and the "pkgs" module argument.

svn path=/nixos/trunk/; revision=16866
2009-08-26 16:52:38 +00:00
Eelco Dolstra
ff146aee08 svn path=/nixos/trunk/; revision=16843 2009-08-24 22:09:19 +00:00
Eelco Dolstra
8e6ad840f2 * Modularised the xinetd service. tftp has been factored out into a
separate module, which just declares a configuration value that
  causes the xinetd module to add it to xinetd.conf.  Also Nixified
  the service declarations to abstract over the inetd implementation.
  
* Renamed the services.xinetd.tftpd options to services.tftpd.  The
  fact that the tftpd module uses xinetd is an implementation detail.

* xinetd: use -dontfork to let Upstart monitor it, and use -syslog to
  get error messages at startup.

svn path=/nixos/trunk/; revision=16803
2009-08-21 13:05:45 +00:00
Eelco Dolstra
fb730174a1 * Style change. Tried to have the kde4 module set a default for
services.xserver.desktopManager.default (so that the user doesn't
  have to) but it doesn't work yet.

svn path=/nixos/trunk/; revision=16800
2009-08-21 10:13:27 +00:00
Eelco Dolstra
4d72704d77 svn path=/nixos/trunk/; revision=16799 2009-08-21 09:11:33 +00:00
Eelco Dolstra
f1035de47c * For the generation of manual / manpages, don't evaluate the option
declarations again (because we already have them).  This cuts
  evaluation time from 7.2s to 4.9s.

svn path=/nixos/trunk/; revision=16798
2009-08-21 09:08:55 +00:00