- Implemented initialScript option to configure database properties on first startup (such as granting permissions)
svn path=/nixos/trunk/; revision=21135
We could not start on 'filesystems', because filesystems is written as an upstart task.
Additionally, as upstart calls the postfix start/stop script and it does not act as a
daemon, we write it as a preStart/postStop job. Then we don't have monitoring or respawn,
but at least upstart does not get confused on its state.
svn path=/nixos/trunk/; revision=21061
"sshd" because changing it to "opensshd" causes breakage (like the
activation script saying "useradd: UID 2 is not unique."). Also,
OpenSSH requires it to be named "sshd", I think.
svn path=/nixos/trunk/; revision=20577
The file contents were taken as a file path. This resulted in a system with a totally broken /etc:
lrwxrwxrwx 1 root nixbld 51 22 feb 21:45 bashrc -> /nix/store/gh71a6w50cxrl4124kxfn24yi0b7aaka-useradd
lrwxrwxrwx 1 root nixbld 44 22 feb 21:45 nix.conf -> 192.168.1.4(rw,no_root_squash,no_all_squash)
lrwxrwxrwx 1 root nixbld 58 22 feb 21:45 inputrc -> /nix/store/1czhdj7q74dc556frqrh51jyshfsxhl3-bashrc-user.sh
lrwxrwxrwx 1 root nixbld 51 22 feb 21:45 nsswitch.conf -> /nix/store/qsgsli992hd1g8245d8am9izn9xmw90x-inputrc
lrwxrwxrwx 1 root nixbld 20 22 feb 21:45 exports -> /home/sheevaplugroot
Notice that the inputrc has strange contents. In my case, that disabled me to type 's' or 'i' (at least) in any new interactive shell.
If you notice, the 'exports' symlink should point to a store file, which contents had to look like:
/home/sheevaplugroot 192.168.1.4(rw,no_root_squash,no_all_squash)
This patch achieves this later behaviour rather than the former.
svn path=/nixos/trunk/; revision=20181
problems:
- It doesn't support filenames with spaces.
- It inserts a space after the filename when tab-completing in an
"svn" command.
- Many people find it annoying that tab-completion on commands like
"tar" only matches filenames with the "right" extension.
- Lluís reported bash apparently crashing on some tab completions.
We should probably make this optional, and maybe use a subset of the
bash_completion file in the bash distribution that works.
svn path=/nixos/trunk/; revision=20179
create an empty job `foo' if the condition is false. Instead use
`jobs = optionalAttrs condition { foo = { ... }; }'.
* Enable portmap automatically when using the NFS server or client.
svn path=/nixos/trunk/; revision=20178
that it can be restarted. Zabbix is kind of hard to monitor, so use
a trick with an open fifo to detect when it goes down.
svn path=/nixos/trunk/; revision=20039
What I want with this derivation is to allow the sheevaplug nixos to
build a tarball with all the needed files to boot. Then, this can be
unpacked into an SD card, or into a NFS/TFTP server, and then the
user can boot the system with help of the uboot console.
By now, I have only tried to build the tarball in a PC, in order
to develop the nix expressions quicker.
There is nothing written specialy for the Sheevaplug in all this,
by now.
svn path=/nixos/trunk/; revision=20035
and running. `pg_ctl status' merely checks whether PostgreSQL is
running, not whether it is already accepting connections. This
causes Upstart jobs that depend on PostgreSQL to fail.
svn path=/nixos/trunk/; revision=20024
replaced by `services.apache.phpOptions' (of type string).
* Allow Apache subservices to add to phpOptions.
* Set the TZ environment variable in Apache.
* Updated the Zabbix web interface.
svn path=/nixos/trunk/; revision=20023
bash: BASH_COMPLETION_DIR: readonly variable
bash: BASH_COMPLETION: readonly variable
And in the non-interactive shell, we get:
/nix/store/654xcqk8h2a409mxsnsbnj5c0cp9mjhm-bash-4.1-p2/etc/bash_completion: line 75: shopt: progcomp: invalid shell option name
svn path=/nixos/trunk/; revision=19809
its default behaviour is to stop the emulator (i.e. suspend the VM).
For automated tests, this is bad, because is makes the VM appear to
hang without any error message. The "werror=report" flag causes
QEMU to report the problem to the VM. As a side effect QEMU exits
very elegantly:
[ 2.308668] end_request: I/O error, dev vda, sector 534400
[ 2.309611] Buffer I/O error on device vda, logical block 66800
...
*** glibc detected *** /nix/store/yhngqrww53j0aw7z7v4bv948x5g5fc3d-qemu-kvm-0.12.1.2/bin/qemu-system-x86_64: double free or corruption (!prev): 0x08e3e040 ***
Aborted
So I guess we now depend on a bug in QEMU :-)
svn path=/nixos/trunk/; revision=19703
the current configuration don't match the running kernel. This
ensures that modprobe still works after a "nixos-rebuild switch" to
a configuration that has a different kernel version.
svn path=/nixos/trunk/; revision=19696
account of the VM. However, it doesn't work yet (the machine
doesn't boot properly and there is no console output). So use a
hard-coded password for now (very dangerous!).
svn path=/nixos/trunk/; revision=19589
the CURL_CA_BUNDLE environment variable. This allows curl to work
without the `-k' flag on https sites with a properly signed
certificate.
svn path=/nixos/trunk/; revision=19572
to the nixpkgs trunk 'kernelPackages'.
Seeing a strange kernelPackages mentioned in installation-cd-rescue (2.6.31_something) I
update that to 2.6.32.
svn path=/nixos/trunk/; revision=19443
client# /dev/fd/9: line 13: -q: command not found
client# /dev/fd/9: line 18: test: -neq: binary operator expected
client# mdadm: No arrays found in config file
svn path=/nixos/trunk/; revision=19386
is done by instantiating a webserver that simulates nixos.org.
Using nix-push we create a channel that contains some stuff (namely
the GNU Hello source tarball and the rlwrap program). This was a
bit tricky because nix-push requires a writable Nix store. Using
AUFS this is possible, but not on recent Linux kernels (AUFS1 over
CIFS fails).
svn path=/nixos/trunk/; revision=19327
supplied by the lvm package). This makes the "lvm" Upstart task
unnecessary. Also, we now get /dev/disk/by-{label,uuid} symlinks
for LVM logical disks.
svn path=/nixos/trunk/; revision=19300
readd r19267 (the issue should be fixed now)
Eelco Dolstra and Nicolas Pierron both kept asking me to pay attention
to the rendered manual. There is one catch: example settings such as
pkgs.kernelPackages_2_6_25 are correct however they don't render
properly. Moreover you don't want those examples to be evaluated (maybe
compiling a kernel ?) when building the manual only.
So use Strings and add a copy & paste note.
This is still a hacky. Maybe a kind of typed "verbatim" expression
should be added (?)
svn path=/nixos/trunk/; revision=19281
because /proc/swaps contains resolved paths as well. Without this,
the swap device will be turned off again by the $unused code.
svn path=/nixos/trunk/; revision=19278
pkgs/build-support/vm). This should make the NixOS regression tests
more robust on heavily loaded systems, where they now frequently
fail:
server# mounting //10.0.2.4/qemu on /hostfs...
server# [ 8.233991] Slow work thread pool: Starting up
server# [ 8.234721] Slow work thread pool: Ready
server# [ 23.271708] CIFS VFS: No response for cmd 114 mid 1
server# [ 23.272443] CIFS VFS: cifs_mount failed w/return code = -112
server# mount: Host is down
server# [ 23.275188] Kernel panic - not syncing: Attempted to kill init!
Maybe there is a configurable timeout somewhere, which would be much
nicer...
svn path=/nixos/trunk/; revision=19248
automatically. This is mostly useful for testing. (KDM also has
this feature, but it's nice not to depend on KDE for non-KDE tests.)
svn path=/nixos/trunk/; revision=19239
write some magic string to ttyS0. This removes the dependency on
having a CIFS mount.
* Use a thread to process the stdout/stderr of each QEMU instance.
* Add a kernel command line parameter "stage1panic" to tell stage 1 to
panic if an error occurs. This is faster than waiting until
connect() times out.
svn path=/nixos/trunk/; revision=19212
installation-cd-minimal.nix is now 2.6.32. Added most of its extra
tools to installation-cd-base.nix.
* Put memtest86 at the bottom of the GRUB menu. (There is currently
no good way to do this other than to change the module inclusion
order.)
svn path=/nixos/trunk/; revision=19188
* Miss-interpretation of the --skip option of cryptsetup. Ciphered partition labels are not supported. Labels are erased when doing mkswap on the ciphered partition.
* Avoid doing swapon on devices which are already listed in /proc/swaps.
* Remove no longer listed devices with only one swapoff command.
svn path=/nixos/trunk/; revision=19164
* Assemble devices only if there is a new entry.
* Add 'new-raid-array' flag to assemble new arrays.
* Emit new-devices flag to triggers the 'filesystems' task.
svn path=/nixos/trunk/; revision=19145
use exec so that upstart knows when automount shuts down.
If a mount is used upstart will send SIGKILL.
Automount doesn't clean up. So unmount everything using a post script.
svn path=/nixos/trunk/; revision=19105
trunk) doesn't have a -s flag. 0.7.0 in the stdenv branch
presumably does, but it's marked as unstable upstream.
svn path=/nixos/trunk/; revision=19047
/nix bind mounted from a fs not rootfs.
As niksnut found, if the sources of bind mounted directories are
umounted before remounting them as "ro", a "mount -o remount,ro" on the
bind targets will not leave the filesystem properly umounted, the same
way as a "-o remount,ro" would do on a usual filesystem.
So, the trick of always remounting as 'ro' before attempting an umount seems
to fix the problem.
svn path=/nixos/trunk/; revision=19008
partition from /. If so, copy the kernels and initrds to /boot and
use paths relative to /boot in the GRUB configuration file. This
makes the boot.loader.grub.bootDevice option obsolete. (Is there a
way to mark obsolete options?) It also makes it unnecessary to set
boot.loader.grub.copyKernels, although that option is still
available since it can speed up GRUB if the Nix store is very
large.
svn path=/nixos/trunk/; revision=18998
GRUB version changes. (That's the complete version from the name
attribute, not the boot.loader.grub.version attribute.) The current
version is recorded in /boot/grub/version. This is required to
prevent massive breakage when we change the default value of
boot.loader.grub.version to "2".
svn path=/nixos/trunk/; revision=18997
problem:
Nix only recognizes nixbld users which have nixbld set in extraGroups.
After installation the user was created by activate with group='nixbld'
and extraGroups=[]
After rebooting a conditional shell script fixed this by adding
extraGroups=["nixbld"].
This patches creates the user they way it was in the past with
group='nobody' and extraGroups=["nixbld"].
Another solution would be making nix be aware of the primary group as
well. However this would require everyone to update Nix after updating
NixOS.
svn path=/nixos/trunk/; revision=18985
expose makeInfo (used by test now)
expose config hack
* Adding tests to release.nix
* fixes
* removing dependency on perl
refactoring details:
Move all configuration modules used by the NixOS installation test script
into one directory.
svn path=/nixos/trunk/; revision=18982
is not on the same partition as /boot (i.e. when
boot.loader.grub.bootDevice is set): just copy the background image
and the font to /boot.
svn path=/nixos/trunk/; revision=18979
modules that should be added to the initrd, but should only be
loaded on demand (e.g. by the kernel or by udev). This is
especially useful in the installation CD, where we now only load the
modules needed by the hardware.
* Enable automatic modprobing by udev in the initrd.
svn path=/nixos/trunk/; revision=18975
automatically loaded by the kernel, load it at boot time.
* Put the ext2 module (which used to be built in) in the initrd to
prevent unexpected breakage.
svn path=/nixos/trunk/; revision=18963
You can run the kvm nixos installation test by:
nix-build --no-out-link tests/test-nixos-install-from-cd.nix
It boots the installed system.
It still fails sshd isn't started (yet)
adding nixos-bootstrapping-archive:
You can install NixOS easily using any live cd now.
See README-BOOTSTRAP-NIXOS
svn path=/nixos/trunk/; revision=18950
qemu_kvm. Installation doesn't take place yet. VM is started
printing a remote controlled "Hello".
This serves as example how to run a vm within a bulid job.
svn path=/nixos/trunk/; revision=18887
of usual system counters).
It sets up some cron jobs for collecting the data, and not that often, generating the
graphs. Then the httpd server is configured with a directory with the generated
static files.
http://www.brianlane.com/software/systemhealth/
svn path=/nixos/trunk/; revision=18866
* Add serverAddress option.
* Evaluate the client daemon in foreground, otherwise upstart get the hand
and tries to restart it.
svn path=/nixos/trunk/; revision=18799
the `sendmail' command (i.e. ssmtp). This is hacky - there should
be some global config value that specifies the path to sendmail,
which the ssmtp module and others can then set.
svn path=/nixos/trunk/; revision=18777