Compare commits

...

631 Commits

Author SHA1 Message Date
James Cook
ca323ed1bb expat: patch for CVE-2015-1283 from Mozilla
(Cherry-picked from commit fba4a950685023bc792422665b2dbe9934ebc9c6.)
2015-07-27 22:44:07 -07:00
Domen Kožar
8a3eea0548 Merge pull request #6287 from eborden/release-14.04
Update flash version
2015-02-16 12:08:28 +01:00
Evan Rutledge Borden
e4ee5c797c updated SHA on flash player. 2015-02-10 17:34:03 -05:00
Evan Rutledge Borden
92dd442e43 update flash version. 2015-02-10 11:50:00 -05:00
Vladimír Čunát
ed574b950a linux_3_{10,12,14}: fix upstream regression, fixes #6231
Some modules wouldn't load crc32c dependency due to module renaming.

(cherry picked from commit 57f2d329ac)

Conflicts (simple):
	pkgs/top-level/all-packages.nix
2015-02-10 13:54:43 +01:00
Vladimír Čunát
d16b0e3ae5 xdg-utils: update from git to fix CVE-2014-9622
Fixes #6193.
Disabling docs generation might be another alternative
to the build-time dependency blowup.

(cherry picked from commit 346c8d7a98)

Conflicts (simple):
	pkgs/tools/X11/xdg-utils/default.nix
2015-02-07 07:39:33 +01:00
Vladimír Čunát
592b4f7a3e kernel-*: updates from master
This probably breaks grsecurity build,
but I don't think anyone with that is still using this half-dead branch.
2015-02-04 21:33:02 +01:00
Eelco Dolstra
11ba869ae7 Paranoia
(cherry picked from commit efa8fc2b0a)

Conflicts:
	nixos/modules/virtualisation/ec2-data.nix
	nixos/modules/virtualisation/google-compute-image.nix
2015-01-15 21:18:50 +01:00
Eelco Dolstra
cf3d27a6e9 nixos-install: Create /root with 700 permission
(cherry picked from commit b9c4569b6b)

Conflicts:
	nixos/modules/installer/tools/nixos-install.sh
2015-01-15 21:18:50 +01:00
Eelco Dolstra
924fe493df NixOS containers: Create /root with 700 permission
Systemd-nspawn creates /root with 755 permission if it doesn't exist,
which is bad. So we have to create it ourselves before calling
systemd-nspawn.

(cherry picked from commit 3ca275d7ba)

Conflicts:
	nixos/modules/virtualisation/containers.nix
2015-01-15 21:18:50 +01:00
Lluís Batlle i Rossell
9be183955d Adding scantailor.
(cherry picked from commit 7eda68709e)
(cherry picked from commit b985a9e0a1)
2015-01-14 20:32:05 +01:00
Rob Vermaas
a4e0357cae Use callPackage for nodePackages, to allow easier overriding of node-packages set.
(cherry picked from commit 65a89fcce7)
2015-01-12 10:05:56 +01:00
Domen Kožar
92466a8454 openssl: 1.0.1j -> 1.0.1k
(cherry picked from commit 70a7d4bd16)
Signed-off-by: Domen Kožar <domen@dev.si>
(cherry picked from commit dbbd849ce8)
Signed-off-by: Domen Kožar <domen@dev.si>
2015-01-09 20:22:22 +01:00
Rob Vermaas
c343d80490 Ugly hack until we can update openjdk. Without this openjdk fails with:
Error: time is more than 10 years from present: 1104530400000

See also:
   http://permalink.gmane.org/gmane.os.netbsd.devel.pkgsrc.user/20888
2015-01-08 22:11:24 +01:00
James Cook
3fa379d9a3 unzip: Patch for CVE-2014-81{39,40,41}.
(Cherry-picked from 173f41cf0bc618f0b2c313b1915fee8d8a6d0ee2.)
2015-01-08 11:36:54 -08:00
Rob Vermaas
b9d5e14d1b Update dd-agent to 5.1.1
(cherry picked from commit 7f02b1f350)
2015-01-05 13:08:55 +01:00
Rob Vermaas
7c238fbd59 Add pythonPackages.ntplib, needed for dd-agent update. 2015-01-05 13:08:50 +01:00
Marco Maggesi
0e04ba396e Bumb BLCR 2014-12-27 14:54:24 +01:00
James Cook
f83b2c4178 jasper: Patch for CVE-2014-8138 via RedHat.
(Cherry-picked from commit 1b5c9c24dea9d5241f4a46a471d77d185b31b524.)
2014-12-25 02:12:25 -08:00
James Cook
e501adfb64 jasper: Patch for CVE-2014-8137 via RedHat.
(Cherry-picked from commit 951ac10ae15bf53ea919802a8c3570518f34d86b.)
2014-12-25 02:12:11 -08:00
James Cook
6173acfd98 jasper: Patch for CVE-2014-9029 via RedHat.
Also update homepage.

(Cherry-picked from commit 90162e7dbd5b96f04e277e6d208c9a9940d818a9.)
2014-12-25 02:11:53 -08:00
Vladimír Čunát
71c13be184 libssh: security+maintenance to fix CVE-2014-8132
Also switched to openssl instead of libgcrypt (wouldn't compile otherwise),
and fixed meta.license.

(cherry picked from commit 7357f0ae24)
2014-12-20 14:52:02 +01:00
Vladimír Čunát
f4bc92fb99 kde4.kmplayer: use gentoo mirror (fixes #5407)
The upstream server is down.

(cherry picked from commit ca850deb9e)
2014-12-20 10:35:07 +01:00
Vladimír Čunát
d91bffeb13 kernel: 3.14.17 -> 3.14.27
This most likely solves some vulnerabilities.
The grsecurity stuff were out of sync before this commit,
and maybe didn't get fixed by this.
CC #5386.

(cherry-picked from 7e8c5b578a)
2014-12-18 14:14:22 +01:00
Rob Vermaas
0efa789071 cron: fix location 2014-12-16 11:31:36 +01:00
Rob Vermaas
3365f39da4 cron: make into systemd.service and make it depend on /etc/localtime
so that changes in timezone will trigger a restart of cron service.

(cherry picked from commit b48e41b8d7)
2014-12-15 14:52:57 +01:00
Vladimír Čunát
9ff4738e5f kde: move patch to the correct location
I see git detects file moves well but not "directory moves".
Thanks to Travis for fast notification.
2014-12-11 11:30:12 +01:00
Vladimír Čunát
20fb57a528 kde: fix CVE-2014-8600 by upstream patches
https://www.kde.org/info/security/advisory-20141113-1.txt
I couldn't find kio-extras, so I hope we don't have it disguised somewhere.

(cherry picked from commit 15b9626a3d)
2014-12-10 21:09:51 +01:00
Vladimír Čunát
a3b3205179 libyaml: fix CVE-2014-9130 by upstream patch
(cherry picked from commit c8a53923fc)
2014-12-10 21:09:50 +01:00
Vladimír Čunát
3b43da9fa5 cpio: fix CVE-2014-9112 by Fedora patch
(cherry picked from commit 225ddcda9a)
2014-12-10 21:09:50 +01:00
Eelco Dolstra
7e7f00c898 php: Really update to 5.4.34
75738437a4 only updated the version string...

(cherry picked from commit 55d59eefb3)
2014-12-10 17:19:34 +01:00
William A. Kennington III
1f2d6a022e kernel: 3.12.33 -> 3.12.34
(cherry picked from commit 845f647b86)
2014-12-10 13:26:45 +01:00
Ricardo M. Correia
e7a8157372 flashplayer: Update from 11.2.202.424 -> 11.2.202.425
(cherry picked from commit e660a70872)
2014-12-10 13:26:44 +01:00
Vladimír Čunát
dbbe29e095 root: fix build by upstream patch
Also refactor the expression a little.

(cherry picked from commit 7ce485ff0f)
2014-12-10 13:03:19 +01:00
Lluís Batlle i Rossell
167dcce8ff Enable parallel building in octave.
Let's wait for problems.
2014-12-09 15:03:10 +01:00
Rüdiger Sonderfeld
55170645ef octave: Update to 3.8.2.
Also change "," placement to be consistent and remove unnecessary let.

(cherry picked from commit 05b83fe6a2)
2014-12-09 15:03:10 +01:00
Lluís Batlle i Rossell
2253aa9b75 Updating octave to 3.8.1
(cherry picked from commit 43ed6b8f62)
2014-12-09 15:03:10 +01:00
Lluís Batlle i Rossell
0420a025e3 Updating xpdf to 3.04 2014-12-09 14:35:54 +01:00
Vladimír Čunát
b2cb57e1c3 nss: security update fixing CVE-2014-1569
(cherry picked from commit 2e1bb14b93)
2014-12-05 11:36:41 +01:00
Eelco Dolstra
58c9322244 firefox: Update to 34.0.5
(cherry picked from commit d6c3b564c4)
2014-12-05 11:36:28 +01:00
Rob Vermaas
aa61c12112 Update dd-agent to 4.4.0 2014-12-03 16:11:40 +01:00
Domen Kožar
1ed7214396 openvpn: fix build 2014-12-02 15:30:38 +01:00
Domen Kožar
bcd78d6564 openvpn: 2.3.4 -> 2.3.6 (CVE-2014-8104)
Conflicts:
	pkgs/tools/networking/openvpn/default.nix
2014-12-02 13:12:32 +01:00
Shea Levy
7fcafc09a5 nixUnstable: bump
Bug fixed in b0c5c2a was giving me segfaults...

(cherry picked from commit 97f35cf29a)

Conflicts:
	pkgs/tools/package-management/nix/unstable.nix
2014-12-02 11:51:57 +01:00
William A. Kennington III
f77806acdf kernel: 3.12.32 -> 3.12.33
(cherry picked from commit 30597a9c7a)
2014-12-02 11:48:29 +01:00
Rob Vermaas
0521f9d125 sysklogd: update from 1.5 to 1.5.1, potentially fixes CVE-2014-3634, CVE-2014-3683
(cherry picked from commit c4ab4ce59b)
2014-12-02 11:46:17 +01:00
Pascal Wittmann
fa0adad077 php: update from 5.4.34 to 5.4.35 (fixes CVE-2014-3710)
(cherry picked from commit 75738437a4)
2014-12-02 11:45:50 +01:00
aszlig
4290f2c74b nixos: Use vendor zones instead of N.pool.ntp.org.
Closes #4824, thanks to @abh for processing my stupidity.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
(cherry picked from commit c37611f3e5)
2014-11-28 19:40:34 +01:00
Lluís Batlle i Rossell
410a4ea663 Updating pcl to 1.7.2, making it build. 2014-11-27 16:16:32 +01:00
Ricardo M. Correia
8183166846 flashplayer: Update from 11.2.202.418 -> 11.2.202.424
It's a critical security fix.
http://helpx.adobe.com/security/products/flash-player/apsb14-26.html
(cherry picked from commit a4beb6a2b6)
2014-11-27 01:26:45 +01:00
Eelco Dolstra
cd261645fa okular: Add mobi support 2014-11-19 23:24:42 +01:00
Vladimír Čunát
1901da5bbd fontconfig: stop using xml:space; vital for nixos+2.11
This is a proper fix for problems described in ec985c8ffa .
The code is from @lethalman.

(cherry picked from commit b16994f7ce)
2014-11-19 23:19:17 +01:00
Eelco Dolstra
59ce92eb62 checkinstall: Fix RPM builds
https://bugzilla.novell.com/show_bug.cgi?id=561317
(cherry picked from commit 9073d554a5)
2014-11-18 15:32:07 +01:00
Eelco Dolstra
c3a8624ac2 firefox: Use regular linker
It builds on Nix >= 1.8pre3890 due to the removal of the
ADDR_LIMIT_3GB personality flag.

(cherry picked from commit bf17f43fe9)
2014-11-18 15:31:54 +01:00
Eelco Dolstra
969090442b firefox: Update to 33.1.1
(cherry picked from commit c4364d5914)
2014-11-18 15:31:27 +01:00
Eelco Dolstra
a34c0c58d3 Manual: Remove some option defaults that refer to store paths
Option defaults should not refer to store paths, because they cause
the manual to be rebuilt gratuitously. It's especially bad to refer to
a highly variable path like a computed configuration file.

(cherry picked from commit ec4f38c56f)
2014-11-17 15:32:08 +01:00
Eelco Dolstra
ef67865e5d Backport generation of options.json 2014-11-17 15:31:45 +01:00
Ricardo M. Correia
fbd732860a flashplayer: Update from 11.2.202.411 -> 11.2.202.418
(cherry picked from commit ace49e400c)
2014-11-14 19:15:59 +01:00
Ricardo M. Correia
6a9e7582b4 flashplayer: Update from 11.2.202.406 -> 11.2.202.411
(cherry picked from commit 2838c2a7bc)
2014-11-14 19:15:59 +01:00
Eelco Dolstra
2b0caccb7b imagemagick: Use --with-gcc-arch
Without this, ImageMagick's configure script will generate code
specific to the machine building the package. This code may then fail
on other CPU types.

http://hydra.nixos.org/build/16564129
Signed-off-by: Domen Kožar <domen@dev.si>
(cherry picked from commit 6f53886360)
2014-11-11 13:12:52 +01:00
Justin Bedo
5b1015578c Update ImageMagick version
(cherry picked from commit cd1bacb03d)
2014-11-11 13:12:47 +01:00
Vladimír Čunát
0a24b3da2d firefox: update to 33.1
(cherry picked from commit fb3e83d091)
2014-11-11 13:11:02 +01:00
Michael Raskin
a40ea27684 Update firefox source build, too
(cherry picked from commit 0934ddf3e0)
2014-11-11 13:10:55 +01:00
Eelco Dolstra
6b704bcdcc httpd-2.2: Enable building of mod_cache and friends
(cherry picked from commit db4053fb59)
2014-11-11 13:09:44 +01:00
Rob Vermaas
37edf304b8 Fix hash for linux 3.12.32 2014-11-06 20:50:00 +01:00
Eelco Dolstra
910364a0af linux: Update to 3.12.32
(cherry picked from commit 1d5147dd17)
2014-11-06 15:16:56 +01:00
Rob Vermaas
89dda7a106 php: update from 5.4.33 to 5.4.34, potentially fixes CVE-2014-3668, CVE-2014-3669, CVE-2014-3670
(cherry picked from commit 6d79132553)
2014-11-06 15:09:58 +01:00
Vladimír Čunát
c9de7b93c0 subversion+serf: security update to fix CVE-2014-3504
Thanks to nixpkgs monitor again.

(cherry picked from commit 3775fa9ea2)
2014-11-06 15:05:21 +01:00
Eelco Dolstra
2b022ca153 serf: Update to 1.3.6
(cherry picked from commit 542373f305)
2014-11-06 15:05:10 +01:00
Eelco Dolstra
c19dd1e04a subversion: Update to 1.8.9
(cherry picked from commit b4c4e2d28d)
2014-11-06 14:59:15 +01:00
Eelco Dolstra
975f36b68a apr-util: Update to 1.5.4
(cherry picked from commit 64982966dc)
2014-11-06 13:13:54 +01:00
Eelco Dolstra
a640ee54b2 apache-httpd: Update to 2.2.29
CVE-2014-0118, CVE-2014-0231, CVE-2014-0226, CVE-2013-5704.

(cherry picked from commit 8e40703f6c)
2014-11-06 13:13:02 +01:00
Eelco Dolstra
ffb3ead6c5 firefox: Don't use system sqlite
I don't want to upgrade SQLite in the stable branch, but Firefox 33
requires a more recent version.
2014-11-05 15:01:32 +01:00
Eelco Dolstra
dbb8603c5d nss: Update to 3.17.2
(cherry picked from commit f445fb8240)
2014-11-05 14:08:35 +01:00
Michael Raskin
0c9dad3bde Update firefox
(cherry picked from commit ed6babd391)
2014-11-05 14:07:43 +01:00
Eelco Dolstra
e6e9bdf846 firefox: Update to 33.0.1
(cherry picked from commit 240665d906)
2014-11-05 14:07:32 +01:00
Eelco Dolstra
211914a4a6 firefox: Fix evaluation on non-Linux
Actually we only support Firefox on Linux, but we hit the “attribute
‘gcc.override’ missing” error before the platform check.

(cherry picked from commit a5262a9000)
2014-11-05 14:07:18 +01:00
Eelco Dolstra
cbacb16cee firefox: Fix build on 32-bit by using the gold linker
(cherry picked from commit f4b5671b0d)
2014-11-05 14:07:05 +01:00
Eelco Dolstra
3a6555c18a firefox: Update to 33.0
(cherry picked from commit fc964fa924)
2014-11-05 14:06:23 +01:00
Pascal Wittmann
d7ceaf4f4e wget: Update to 1.16 (fix CVE-2014-4877) (#4728)
(cherry picked from commit c7e4290fcc)

Picker deleted the maintainer, as (s)he is missing in this brang

Conflicts (auto-solved):
	pkgs/tools/networking/wget/default.nix
2014-11-01 21:42:30 +01:00
Domen Kožar
c3ddfef8f6 python: 3.3.5 -> 3.3.6 2014-11-01 04:54:30 +01:00
Domen Kožar
d7d593b57f python: 3.2.5 -> 3.2.6 2014-11-01 04:54:30 +01:00
Longrin Wischnewski
8fc1927e2d rdesktop: update to version 1.8.2
rdesktop: add meta fields
(cherry picked from commit 6ad299460c)

Conflicts:
	pkgs/applications/networking/remote/rdesktop/default.nix
2014-10-29 14:44:19 +01:00
Eelco Dolstra
ae1c5b8783 linux: Update to 3.12.31
(cherry picked from commit bac50c5c1f)
2014-10-27 11:22:06 +01:00
Eelco Dolstra
1fc25b90dd sqlite: Enable optimization
Commit a28940d9d5 changed the SQLite
build to use CFLAGS instead of NIX_CFLAGS_COMPILE, but that's really
bad because it clobbers the default -O2 flag. So all this time we had
an unoptimized SQLite build. (This is one of the reasons why
NIX_CFLAGS_COMPILE exists - messing with CFLAGS is almost never a good
idea.)

(cherry picked from commit 2b5ccf8a53)
2014-10-27 10:50:40 +01:00
Eelco Dolstra
997e1ebb2c Remove obsolete Hydra package
(cherry picked from commit d4d0e449d7)
2014-10-27 10:50:40 +01:00
Eelco Dolstra
6f91248649 Add openjdk to the small channel
(cherry picked from commit 4ecb762ee5)
2014-10-27 10:50:40 +01:00
Eelco Dolstra
d0ccb711a0 chatzilla: Update to 0.9.91
(cherry picked from commit 71c34a45e1)
2014-10-27 10:50:40 +01:00
Eelco Dolstra
ba886d92ae chatzilla: Use firefox instead of xulrunner
Thanks to @nbp for pointing out that we don't need xulrunner anymore.

(cherry picked from commit 4de72baf03)
2014-10-27 10:50:39 +01:00
Vladimír Čunát
4c9ef9f75c pidgin: maintenance+security update
Fixes CVE-2014-3694..3698

Added a note to clean the expression, CC #4602.

(cherry picked from commit e63d9554b4)

Conflicts:
	pkgs/applications/networking/instant-messengers/pidgin/default.nix
2014-10-23 13:05:06 +02:00
Lluís Batlle i Rossell
71b2df28fc Adding a patch that brings the windows key to rdesktop
Taken from upstream, will be on next release.

(cherry picked from commit 8997cac785)
2014-10-23 09:47:53 +02:00
Lluís Batlle i Rossell
15efb9ccf9 Making hydra build ddd. 2014-10-23 09:47:48 +02:00
Shea Levy
6982c7ccf8 Debain 7.6-amd64 tarball was updated in place
(cherry picked from commit 3fe41ca763)
2014-10-20 15:26:59 -04:00
Shea Levy
af217bae29 debian packages tarball was updated in place
(cherry picked from commit 652030e85d)
2014-10-20 15:24:17 -04:00
Eelco Dolstra
29b8c6a4e6 Fix semicolon 2014-10-20 12:00:23 +02:00
William A. Kennington III
6aa0a568ab kernel: 3.12.29 -> 3.12.30
(cherry picked from commit 8c138fd489)
2014-10-20 12:00:23 +02:00
William A. Kennington III
054d9939b5 kernel: 3.12.28 -> 3.12.29
(cherry picked from commit 4a2ecb2c62)
2014-10-20 12:00:23 +02:00
Wout Mertens
66af731b14 Travis build: update script from master 2014-10-15 21:53:51 +02:00
Domen Kožar
fec11dcecb openssl: 1.0.1i -> 1.0.1j (CVE-2014-3513, CVE-2014-3567, CVE-2014-3568) 2014-10-15 16:13:16 +02:00
wmertens
852cecdd39 Travis build: source environment before build
💩
(cherry picked from commit 5e6b6df33e)
2014-10-15 12:01:18 +02:00
Wout Mertens
26b37474e7 Travis: Set up for release-14.04 2014-10-15 11:25:20 +02:00
Lluís Batlle i Rossell
3f0360927e nixos nfs: allow setting the lockd ports.
This helps in setting a fixed firewall open port for NFS lockd.

Based on:
http://rlworkman.net/howtos/NFS_Firewall_HOWTO
2014-10-15 10:59:51 +02:00
Rob Vermaas
b7451d91e8 Dohh 2014-10-14 11:43:42 +02:00
Rob Vermaas
654eaeb2ca amazon-image.nix: Pass --option build-users-group '' to nix tools to make Amazon generation work with nix-1.8+ 2014-10-14 11:38:59 +02:00
Shea Levy
0e935f1eb2 Update nixUnstable
(cherry picked from commit aa847f4772)
2014-10-07 15:53:26 +02:00
Peter Simons
dbadfad0a2 orc: disable test suite to fix spurious failures
Example: http://hydra.nixos.org/build/15550338/nixlog/2/raw
2014-10-03 21:32:12 +02:00
Emery Hemingway
3d86e80ef3 cjdns: update from 20140919 20140922
package installs to .../bin
fix service module to look in .../bin

Closes #4240

(cherry picked from commit 61f0d9b251)
2014-10-01 23:29:13 +02:00
Emery Hemingway
e903ad0fa5 cjdns: update 20140829 to 20140919
Closes #4186

(cherry picked from commit 95c72a5f60)
2014-10-01 23:29:12 +02:00
Emery Hemingway
8aa0157de9 cjdns: package update from 20140303 to 20140829
(cherry picked from commit fc6ccd1080)
2014-10-01 23:29:12 +02:00
Emery Hemingway
964d18d89e cjdns: new declarative service expression
systemd service wants network-interfaces.target rather than network.target
assertion on config.networking.enableIPv6

(cherry picked from commit f60ac82cac)
2014-10-01 23:29:12 +02:00
Peter Simons
41d3d1b306 bash: drop obsolete cve-2014-7169.patch to fix the build 2014-10-01 23:15:25 +02:00
Peter Simons
56b7e164eb bash: add patch sets 49, 50, and 51 to fix http://lcamtuf.blogspot.de/2014/10/bash-bug-how-we-finally-cracked.html 2014-10-01 23:07:40 +02:00
Eelco Dolstra
b9bde98161 tests/kde4.nix: Don't build kdeedu
This prevents a dependency on liblapack (which randomly fails) and
TeXlive (which is huge).

http://hydra.nixos.org/build/14897240
2014-09-29 13:31:37 +02:00
Lluís Batlle i Rossell
01dfd5a44a Updating toxic to 0.5.1 2014-09-29 10:40:09 +02:00
Lluís Batlle i Rossell
562ff9c1e1 Updating utox/libtoxcore to the latest, to fix utox build.
There was a test failing. I also renamed the attr uTox to utox, for the more
common lowercase in all-packages.

Conflicts:
	pkgs/top-level/all-packages.nix

(cherry pick of 93fd8fb3a5 )
2014-09-29 10:39:44 +02:00
Lluís Batlle i Rossell
fece51a8a6 Fixing libtoxcore libvpx propagate. 2014-09-29 10:38:53 +02:00
Lluís Batlle i Rossell
9a66026234 Fix toxic install for DHTnodes and other share files. 2014-09-29 10:38:52 +02:00
Lluís Batlle i Rossell
c294fe0f53 Making tox/toxic A/V libs disabled in ARM. 2014-09-29 10:38:51 +02:00
Lluís Batlle i Rossell
4f85481ce0 Adding qtox. Making libtoxcore propagate libvpx. 2014-09-29 10:38:50 +02:00
Domen Kožar
9766bd2f4e libtoxcore: disable tests for now
(cherry picked from commit 4742c886dd)
2014-09-29 10:38:36 +02:00
Lluís Batlle i Rossell
9eb8f47666 Updating utox (fixing PREFIX too)
(cherry picked from commit 1b6101775d)
2014-09-29 10:38:11 +02:00
Lluís Batlle i Rossell
77cda0aa83 Updating toxic/libtoxcore/libsodium
(cherry picked from commit 1955da1b8c)
2014-09-29 10:38:04 +02:00
Domen Kožar
3baef65dc6 toxic: git -> 0.4.7
(cherry picked from commit 13ca3624a7)
2014-09-29 10:35:30 +02:00
aszlig
d530f889ed toxic: Update to latest upstream Git master.
Unfortunately they've changed their build system to be makefile-only and
they don't seem to include test cases in the CLI anymore, so we needed
to adapt accordingly. Also added freealut and openal to the buildInputs,
in order to allow audio support.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
(cherry picked from commit 9edfad2717)
2014-09-29 10:35:27 +02:00
Domen Kožar
6e1a74d284 uTox: downgrade to work with current libtoxcore
(cherry picked from commit 2099db4d00)
2014-09-29 10:34:44 +02:00
Domen Kožar
eb02ca8c03 add uTox
(cherry picked from commit e07c2c2cfd)
2014-09-29 10:34:29 +02:00
Domen Kožar
d2739c17ef libtoxcore: upgrade for a few rev to get i686-linux build working
(cherry picked from commit be6ae818dc)
2014-09-29 10:33:35 +02:00
aszlig
4438e5d9d8 libtoxcore: Enable and fix up running test suite.
We not only require libcheck but also needed to disable a few tests,
without providing the former, test cases were signalled as being run
successfully but weren't actually run.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
(cherry picked from commit e542ff7288)
2014-09-29 10:33:27 +02:00
aszlig
847ec71960 libtoxcore: Add libopus and libvpx to buildInputs.
Those are necessary to do audio/video calls, which I guess is the whole
point of the Tox project.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
(cherry picked from commit 40548fce62)
2014-09-29 10:33:22 +02:00
aszlig
a0f9aa8184 libtoxcore: Update to latest Git master.
The GitHub repository has changed the name to "toxcore".
Also indented buildInputs/configureFlags a bit less messy.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
(cherry picked from commit 2aa89519a0)
2014-09-29 10:33:17 +02:00
Lluís Batlle i Rossell
0115853aa9 Updating lesstif to 0.95.2 (2009).
Some patches can be removed.
I updated it because the scroll wheel was going the oposite direction in ddd.
https://bugs.launchpad.net/ubuntu/+source/ddd/+bug/37664
2014-09-29 10:23:17 +02:00
Vladimír Čunát
8da96f6b0e lyx: maintenance update
This is supposed to be the last version of the 2.0.x branch
2014-09-27 13:19:10 +02:00
Vladimír Čunát
5f2f1b05e3 lib/platforms: add "armv6l-linux" to all platforms
It was only in mesaPlatforms, which caused nix appear unsupported in there.

(cherry picked from commit 7323d5e128)
2014-09-27 11:24:55 +02:00
Eelco Dolstra
8cf5281744 Add some more stuff to the small channel 2014-09-25 17:52:25 +02:00
Eelco Dolstra
4dfca8e14a Add an entire NixOS build to the channel
This causes some cruft to be uploaded (such as unit files) but it
ensures that every package used by the base system ends up in the
channel, not just environment.systemPackages.
2014-09-25 17:51:09 +02:00
Eelco Dolstra
7185fc1054 bash: Fix for CVE-2014-7169
(cherry picked from commit 0a0ebd8c44)
2014-09-25 14:41:20 +02:00
Eelco Dolstra
d927ce03e4 Add nodejs to the small channel 2014-09-25 12:50:36 +02:00
Rob Vermaas
095d42101c nixUnstable: Update to nix-1.8pre3823_53b044c 2014-09-25 11:57:21 +02:00
Eelco Dolstra
caeba6f22a nss: Update to 3.16.5
CVE-2014-1568

(cherry picked from commit 711d67263a)
2014-09-25 11:46:25 +02:00
Eelco Dolstra
f1ce80f98e firefox: Update to 32.0.3
CVE-2014-1568

(cherry picked from commit d265c213b4)
2014-09-25 11:46:25 +02:00
Eelco Dolstra
f963f57b62 Remove missing attribute 2014-09-25 01:01:54 +02:00
Eelco Dolstra
2c7acc6731 Add a jobset for a "nixos-small" channel
This channel only builds a small subset of Nixpkgs, mostly suitable
for servers. Since the channel update doesn't require thousands of
packages to be built first, it should provide much faster turnaround
in case of security updates.
2014-09-25 00:28:18 +02:00
Eelco Dolstra
360b0a7b70 Add all default NixOS packages to the channel
The job ‘dummy’ depends on the default contents of
‘environment.systemPackages’, thus ensuring that those packages all
end up in the channel.

(cherry picked from commit 1cd727180e)
2014-09-25 00:27:45 +02:00
Eelco Dolstra
a296abde48 Installer test: Use the minimal ISO
So we don't depend on KDE etc. (which we don't even test here).

(cherry picked from commit 0a967b9268)
2014-09-25 00:27:03 +02:00
Eelco Dolstra
ebacaf95f9 test-driver: Use netpbm instead of imagemagick
Imagemagick pulls in 100s of megabytes of dependencies.

(cherry picked from commit 51c349d0cc)
2014-09-25 00:27:03 +02:00
Eelco Dolstra
6bee20d12f netpbm: Update to 10.66.00
Also, borrow a tarball from Gentoo so we don't have to use
fetchsvn. And don't depend on libX11 by default.

(cherry picked from commit 08732891e1)
2014-09-25 00:27:03 +02:00
Shell Turner
eda84cb2fd Update bash patchset to fix CVE-2014-6271 2014-09-24 17:36:25 +02:00
James Cook
4e5c8b34f8 firefox: Update to 32.0.2.
(cherry picked from commit 27f3301650)
2014-09-23 10:44:29 +02:00
Mathijs Kwik
1361e2f97e xulrunner: stick to firefox's src attribute
(cherry picked from commit 04369b6819)
2014-09-23 10:44:15 +02:00
Eelco Dolstra
ef2f94c6fe systemd: Fix uninitialised memory issue in veth setup
This caused containers to randomly fail, in particular if the machine
name was 8 characters.

(cherry picked from commit 97d6afafaa)
2014-09-22 19:21:09 +02:00
Eelco Dolstra
0a3dc55ffc systemd: Apply backport fixes
In particular, added a few patches that improve systemd-nspawn
container behaviour.

(cherry picked from commit 38567ddc80)
2014-09-22 19:20:43 +02:00
Vladimír Čunát
4962edc4d0 gcc: bugfix update 4.8.2 -> .3
It's supposed to fix over 140 problems from upstream bugzilla.
https://gcc.gnu.org/bugzilla/buglist.cgi?bug_status=RESOLVED&resolution=FIXED&target_milestone=4.8.3

A previously separate patch got included in the release.

I tested that stdenv still builds.

(cherry picked from commit 610370f844)
2014-09-22 19:14:27 +02:00
Eelco Dolstra
f446555c23 nixos-rebuild: Don't pass -K by default
(cherry picked from commit 05163e99db)
2014-09-22 19:12:38 +02:00
Eelco Dolstra
83f7e4689b smem: Add package
This is a memory reporting tool that accounts for shared memory.

(cherry picked from commit 9a6484b255)
2014-09-22 19:12:18 +02:00
Eelco Dolstra
9e580c1944 boehm-gc: Support --enable-large-config
(cherry picked from commit 8e2e4216ba)
2014-09-22 19:11:54 +02:00
Eelco Dolstra
c0d4ce3e5b httpd: Add option for specifying robots.txt
(cherry picked from commit 0de982d75b)
2014-09-22 19:11:31 +02:00
Eelco Dolstra
0569cc408a httpd: Don't emit robots.txt if there are no robots entries
(cherry picked from commit 837a0c05e5)
2014-09-22 19:11:13 +02:00
Eelco Dolstra
5900bfb4ee valgrind: Update to 3.10.0
(cherry picked from commit 9f12c8bde8)
2014-09-22 19:11:07 +02:00
Eelco Dolstra
6797cb5c3b Net::Amazon::S3: Add to channel
(cherry picked from commit d49991e40a)
2014-09-22 19:10:59 +02:00
Michael Raskin
953433939b nixos-iso: Use a simpler disk label (#2838)
(cherry picked from commit 8ec5d0fd0f)
2014-09-20 08:21:30 +02:00
Marco Maggesi
494b315d3a Update OpenAFS client to version 1.6.9 2014-09-19 23:19:25 +02:00
Marco Maggesi
b951b618e8 Merge pull request #4123 from falsifian/krb5
krb5: Update to 12.2.2.  (Please test before merging.)
2014-09-19 16:59:59 +02:00
Marco Maggesi
7d8cffa31a Update hol_light to r198. Add myself as a maintainer 2014-09-17 13:52:57 +02:00
Eelco Dolstra
8954ea814e firefox: Update to 32.0.1
(cherry picked from commit 0c152324d2)
2014-09-15 20:09:35 +02:00
Vladimír Čunát
a617e80aa4 liferea: maintenance update
(cherry picked from commit 4031707138)

Conflicts (one update skipped):
	pkgs/applications/networking/newsreaders/liferea/default.nix
2014-09-13 19:47:39 +02:00
Vladimír Čunát
4800bbbe57 flashplayer-11: update, including security fixes
(cherry picked from commit 0047db47bd)
2014-09-13 16:16:31 +02:00
aszlig
300e25cfaa python-hetzner: Update to bugfix version 0.7.2.
From version 0.7.1 this fixes encoding problems with some DELL servers
while running the CLI.

And more importantly in version 0.7.2, it fixes the SSL certificate
error (Hetzner changed CA) which renders the library pretty much
useless.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
(cherry picked from commit 415c31372c)
2014-09-11 14:16:08 +02:00
Blaz Bratanic
9e170188ee Fixed download path
(cherry picked from commit 1ecfba4391)
2014-09-09 20:29:32 +02:00
Eelco Dolstra
8d9f9d5b87 linux: Update to 3.12.28
(cherry picked from commit 19b1fafe5f)
2014-09-08 15:49:48 +02:00
Eelco Dolstra
72162706a7 firefox: Workaround for building on i686-linux
http://hydra.nixos.org/build/13992569
(cherry picked from commit 4ead67b785)
2014-09-08 15:46:27 +02:00
Eelco Dolstra
03bec38123 Remove reference to icecat
(cherry picked from commit d2539605e1)
2014-09-05 15:42:07 +02:00
Eelco Dolstra
f9c24179f1 /dev/sda1 -> "/dev/sda1"
Otherwise Nix might try to copy /dev/sda1 under certain circumstances
:-)

(cherry picked from commit f6b4214567)
2014-09-05 15:41:50 +02:00
Eelco Dolstra
c0182b6b07 lttng-modules: Mark as broken
These do not build for any kernel:

  http://hydra.nixos.org/eval/1149989?filter=lttng&compare=1149981

(cherry picked from commit 4b7f1a9be3)
2014-09-05 15:40:31 +02:00
Eelco Dolstra
ec17cf89cc Cache::Cache: Disable tests
(cherry picked from commit aa8a728b04)
2014-09-05 15:40:18 +02:00
Eelco Dolstra
9203f22238 firefox: Update to 32.0
(cherry picked from commit 88964f37a0)
2014-09-05 15:40:06 +02:00
Eelco Dolstra
a5e7f0831c nss: Update to 3.16.4
(cherry picked from commit b3b06af89a)
2014-09-05 15:40:05 +02:00
Eelco Dolstra
0aeed5baa6 nspr: Update to 4.10.7
(cherry picked from commit 0dbdc857d7)
2014-09-05 15:40:05 +02:00
Eelco Dolstra
c5d63cb35e linux: Update to 3.12.27
CVE-2014-3534
2014-09-03 19:44:00 +02:00
Eelco Dolstra
e4805e3d34 Bump the amount of memory for the installer test
It randomly OOMs.

http://hydra.nixos.org/build/13587153
(cherry picked from commit 619f18956d)
2014-09-03 19:43:09 +02:00
Ricardo M. Correia
41f8b13fa1 flashplayer: Update from 11.2.202.394 -> 11.2.202.400
Signed-off-by: Domen Kožar <domen@dev.si>
2014-09-01 21:15:58 +02:00
Ricardo M. Correia
5a6541ec28 flashplayer: Update from 11.2.202.378 -> 11.2.202.394
Signed-off-by: Domen Kožar <domen@dev.si>
2014-09-01 21:15:09 +02:00
Ricardo M. Correia
3b9fceab24 flashplayer: Update from 11.2.202.359 -> 11.2.202.378
Signed-off-by: Domen Kožar <domen@dev.si>
2014-09-01 21:15:02 +02:00
Rüdiger Sonderfeld
e64237cdb4 man-pages: Update to 3.71.
(cherry picked from commit f61fb466eb)
2014-08-25 10:06:59 +02:00
Eelco Dolstra
2bc3109460 Don't barf if /var/log doesn't support ACLs
http://hydra.nixos.org/build/13462892
(cherry picked from commit 7c4591d010)
2014-08-25 10:06:18 +02:00
Eelco Dolstra
521399f5cd linux: Enable ACLs in ext3
http://hydra.nixos.org/build/13462892
(cherry picked from commit e4752d7877)
2014-08-25 10:06:13 +02:00
Eelco Dolstra
2a6fee4c06 man-pages: Update to 3.70
(cherry picked from commit c37057240f)
2014-08-25 10:05:55 +02:00
Eelco Dolstra
41df91401e types.nix: Add ‘either’ type
(cherry picked from commit f932910323)
2014-08-25 10:03:38 +02:00
Eelco Dolstra
1e42f0625a lockfreeQueue: Don't build on Hydra
It times out: http://hydra.nixos.org/job/nixos/release-14.04/nixpkgs.haskellPackages_ghc763_profiling.lockfreeQueue.x86_64-linux
2014-08-21 17:23:00 +02:00
Eelco Dolstra
3e8072659a cedet: Mark as broken
It has been timing out since forever:

  http://hydra.nixos.org/job/nixos/release-14.04/nixpkgs.emacs23Packages.cedet.x86_64-linux
2014-08-21 14:51:21 +02:00
Rob Vermaas
1aa1cb700b Update node-packages-generated. Remove packages from node-packages.json that use an npm package that has a cyclic dependency. See also npm2nix#3 2014-08-21 11:37:55 +02:00
Vladimír Čunát
77fcd5fc23 twinkle eval: fix the typo
(cherry picked from commit 2d03fbf752)
2014-08-20 23:39:16 +02:00
Vladimír Čunát
2a173d70c2 twinkle: fix build (fixes #3673)
Pulled patches from Debian and hacked around linking errors.
I'm able to ring my mobile phone now.
However, on exit the process is stuck and needs kill -9.

CC: maintainer @MarcWeber.
(cherry picked from commit c198a36898)

Conflicts (trivial):
	pkgs/applications/networking/instant-messengers/twinkle/default.nix
2014-08-20 21:43:31 +02:00
Vladimír Čunát
2b27053695 thrift: disable parallel building, as it fails on hydra
(cherry picked from commit 45371d380c)
2014-08-20 01:38:48 +02:00
Rickard Nilsson
233a5db368 obnam: Update from 1.6.1 to 1.8
(cherry picked from commit bdea35d98b)
2014-08-19 16:12:25 +02:00
Vladimír Čunát
75fb186f50 Re-revert the previous and fix tarball
This reverts commit 155996ebde.

I'm sorry for the problems. Now I checked the tarball does build locally.
2014-08-18 21:12:47 +02:00
Eelco Dolstra
155996ebde Revert "Turn some license strings into lib.licenses values"
This reverts commit f9f5be6113 because
it breaks Nixpkgs evaluation.

http://hydra.nixos.org/build/13476850
2014-08-18 14:52:56 +02:00
Eelco Dolstra
1c9afeed07 nixos-container destroy: Make idempotent
(cherry picked from commit e6c00e60c3)
2014-08-17 23:33:31 +02:00
Eelco Dolstra
4d8f020912 nixos-container destroy: Remove gcroots
(cherry picked from commit 883fa4f920)
2014-08-17 23:33:21 +02:00
Vladimír Čunát
e8b62a519a xorg: revert larger updates from master
I'll better be more conservative.
2014-08-15 02:08:17 +02:00
Vladimír Čunát
a0e7caac60 llvm: fixup the paxmark phase (not here yet) 2014-08-15 00:04:52 +02:00
Vladimír Čunát
bd5036c890 ffmpeg: fix forgotten hash 2014-08-14 23:46:51 +02:00
Eelco Dolstra
5a06477a3d Merge pull request #3595 from wkennington/master.kernel
Kernel Updates
(cherry picked from commit 08b8eaae1c)

Conflicts (skipping some intermediate bump commits):
	pkgs/os-specific/linux/kernel/linux-3.10.nix
	pkgs/os-specific/linux/kernel/linux-3.14.nix
	pkgs/os-specific/linux/kernel/linux-3.15.nix
	pkgs/os-specific/linux/kernel/linux-3.16.nix
	pkgs/os-specific/linux/kernel/linux-3.4.nix
2014-08-14 23:13:41 +02:00
Marc Weber
b7f86f56d1 apache 2_4 update, fixes some CVE's
See http://www.apache.org/dist/httpd/Announcement2.4.html It compiles,
didn't run it. I guess minor update doesn't cause much trouble even
though there are some new features

(cherry picked from commit ba154ec9d4)
2014-08-14 23:11:51 +02:00
Cillian de Róiste
7d031e5a2c kde4_next.kde_wacomtablet: update from 2.0 to 2.0.2, potentially fixes CVE-2012-4514, CVE-2012-4514
(cherry picked from commit d4fb2e83db)
2014-08-14 23:11:37 +02:00
Vladimír Čunát
9cc04de7eb sync from master: xorg 2014-08-14 23:08:42 +02:00
Vladimír Čunát
f0a363c910 sync from master: llvm-3.4 maintenance update 2014-08-14 23:08:32 +02:00
Vladimír Čunát
2048460bdf sync from master: xfce minor updates 2014-08-14 23:01:48 +02:00
Vladimír Čunát
aed21bd6d5 sync from master: doc/* 2014-08-14 22:56:50 +02:00
Vladimír Čunát
48a10fc66e sync from master: pkgs/development/libraries/*
Picked what looked like non-intrusive changes to relatively used libs.
2014-08-14 22:51:27 +02:00
Gergely Risko
b79e3ce6a7 Get rid of bootstrap-tools dependency from xz (and therefore stdenv)
0769fc5b77 broke this by setting CONFIG_SHELL.

(cherry picked from commit 59291fdbf4)
2014-08-14 22:37:19 +02:00
Gergely Risko
1c0068a0c9 Enable parallel building for GCC.
Even if using profiledbootstrap.  This was unsafe before 4.8, and
then the documentation was not fixed on time.

The documentation got fixed here:
  c763997f34

But the actual code was already fixed here:
  5d2fca09d5

So this is safe both for GCC 4.8 and GCC 4.9.

(cherry picked from commit f199e115d2)
2014-08-14 22:37:18 +02:00
Vladimír Čunát
23789cc23e SDL: minor sync from master 2014-08-14 22:16:55 +02:00
Peter Simons
217724b340 Partially revert 7a45996 some more.
Removing more references to the non-existent license "stdenv.lib.licenses.perl5".
Thanks to @FlashKorten for catching those.

(cherry picked from commit 5cc55e9523)
2014-08-14 22:02:44 +02:00
Peter Simons
0d133f7c62 perl-packages.nix: partially revert 7a45996233
The commit referred to non-existent license "stdenv.lib.licenses.perl5".

(cherry picked from commit 4895ace127)

Conflicts:
	pkgs/top-level/perl-packages.nix
2014-08-14 22:02:25 +02:00
Mateusz Kowalczyk
f9f5be6113 Turn some license strings into lib.licenses values
(cherry picked from commit 7a45996233)

Conflicts:
	pkgs/applications/audio/espeak/default.nix
	pkgs/applications/audio/espeak/edit.nix
	pkgs/applications/editors/emacs-modes/metaweblog/default.nix
	pkgs/applications/editors/emacs-modes/proofgeneral/default.nix
	pkgs/applications/editors/sublime3/default.nix
	pkgs/applications/graphics/potrace/default.nix
	pkgs/applications/science/electronics/tkgate/2.x.nix
	pkgs/desktops/gnome-3/3.10/core/folks/default.nix
	pkgs/desktops/gnome-3/3.10/misc/goffice/default.nix
	pkgs/desktops/gnome-3/3.12/core/evince/default.nix
	pkgs/desktops/gnome-3/3.12/core/vte/default.nix
	pkgs/development/compilers/jdk/jdk7-linux.nix
	pkgs/development/compilers/opendylan/bin.nix
	pkgs/development/compilers/opendylan/default.nix
	pkgs/development/libraries/clutter/1.18.nix
	pkgs/development/libraries/gsl/default.nix
	pkgs/development/libraries/gstreamer/legacy/gstreamermm/default.nix
	pkgs/development/libraries/science/math/liblbfgs/default.nix
	pkgs/development/libraries/sword/default.nix
	pkgs/development/libraries/tbb/default.nix
	pkgs/development/ocaml-modules/lablgl/default.nix
	pkgs/games/crrcsim/default.nix
	pkgs/games/openxcom/default.nix
	pkgs/games/tibia/default.nix
	pkgs/os-specific/linux/disk-indicator/default.nix
	pkgs/os-specific/linux/keyutils/default.nix
	pkgs/os-specific/linux/usermount/default.nix
	pkgs/servers/mpd/clientlib.nix
	pkgs/servers/search/elasticsearch/default.nix
	pkgs/tools/misc/t1utils/default.nix
	pkgs/top-level/perl-packages.nix
	pkgs/top-level/python-packages-generated.nix
	pkgs/top-level/python-packages.nix
2014-08-14 22:00:30 +02:00
Austin Seipp
2abcf20f7b Merge pull request #2924 from doublec/tor_0_2_4_22
Update tor to 0.2.4.22 and tor browser to 3.6.2 (close #3136)
(cherry picked from commit cf4b0a1222)
2014-08-14 21:31:29 +02:00
Vladimír Čunát
8d413eb4a7 glibc: fix CVE-2014-0475 by upstream patches (close #3445)
https://sourceware.org/bugzilla/show_bug.cgi?id=17137
(cherry picked from commit 9253a95f6b)
2014-08-12 19:03:55 +02:00
Eelco Dolstra
351aec7002 Add a bunch of Hydra dependencies to the channel
(cherry picked from commit 688824cc60)
2014-08-11 20:33:07 +02:00
robberer
48c543c32f add nvidia-uvm module which is necessary for blender GPU support
(cherry picked from commit 9683c6e806)
2014-08-11 14:08:32 +02:00
Eelco Dolstra
1b117a59d2 nvidia-x11: Update to 340.24
(cherry picked from commit 6c0002ec8d)
2014-08-11 14:07:08 +02:00
Nikita Mikhailov
1ec17b2585 skype: 4.2.0.13 -> 4.3.0.37 2014-08-11 11:55:06 +02:00
Eelco Dolstra
f4eaaee52a debian: Update to 6.0.10
(cherry picked from commit 05e81e0d9f)
2014-08-10 15:17:19 +02:00
Eelco Dolstra
71e68bb52c tests/ipv6.nix: Fix race
http://hydra.nixos.org/build/13119647
(cherry picked from commit c7ca46904f)
2014-08-10 14:56:08 +02:00
Eelco Dolstra
e592a0e94b test-instrumentation.nix: Set an empty root password
This makes it easier to log in during interactive sessions.

(cherry picked from commit 2b9ea7fd90)
2014-08-10 14:38:30 +02:00
Eelco Dolstra
526be644a8 test-instrumentation.nix: Improve logging
In particular, don't clobber the serial console with duplicate output
from systemd and the journal, and increase the log level.

(cherry picked from commit eab25b104a)
2014-08-10 14:38:27 +02:00
Eelco Dolstra
11e57b88ee systemd: Use the default log target ("journal-or-kmsg")
This ensures that early systemd messages end up in the journal (via
the kmsg buffer).

(cherry picked from commit 0d3b3bd01b)
2014-08-10 14:38:17 +02:00
Cillian de Róiste
e6da853ad1 inkscape: add python to the PATH, fixes #3449
(cherry picked from commit d597651949)
2014-08-09 17:09:12 +02:00
Eelco Dolstra
9425114fbd debBuild: Allow setting the package name and overriding the install command
(cherry picked from commit 940eb8bfc1)
2014-08-08 14:17:12 +02:00
Peter Simons
dd1e64444d openssl: update to version 1.0.1i
See https://www.openssl.org/news/secadv_20140806.txt for a long list of CVE numbers.
Fixes <https://github.com/NixOS/nixpkgs/issues/3485>.

(cherry picked from commit 5c276c4f68)
2014-08-08 09:53:12 +02:00
Eelco Dolstra
857d14dbba openjdk: Update to 7u65-b32
(cherry picked from commit b4c971b14a)
2014-08-05 20:16:30 +02:00
Eelco Dolstra
71dce79daa openjdk: Set more informative version string
Also, disable full debug symbols. Don't know if this matters because
we're already stripping everything.

(cherry picked from commit 1b391e6bf9)
2014-08-05 20:16:30 +02:00
Eelco Dolstra
c3cce5d11f openjdk: Update to 7u60-b30
(cherry picked from commit 639f117ec4)
2014-08-05 20:16:30 +02:00
Eelco Dolstra
a8df3f1166 openjdk: Drop dependency on CUPS
We only need the CUPS headers, not the whole package.

(cherry picked from commit c4877df388)
2014-08-05 20:16:30 +02:00
Eelco Dolstra
3e4e106674 cacert: Update to 20140715
This is generated with a more recent version of mk-ca-bundle.pl. The
previous version mistakenly dropped some certificates, like "Verisign
Class 3 Public Primary Certification Authority".

(cherry picked from commit 6b67028383)
2014-08-05 10:45:59 +02:00
Eelco Dolstra
7f5d30572d nixUnstable: Update to 1.8pre3718_51485dc
(cherry picked from commit a9a4cdd3d0)
2014-08-04 14:09:25 +02:00
William A. Kennington III
a6cdb424ba kernel: 3.12.25 -> 3.12.26
(cherry picked from commit eb9ee180d9)
2014-08-04 14:02:42 +02:00
Lluís Batlle i Rossell
379116980f Update mumble to 1.2.7. 2014-08-01 16:56:44 +02:00
Lluís Batlle i Rossell
2def4e4b64 freecad: updating to 0.14
I had to update all the pyside programs, or freecad failed to build.  I picked
the versions advertised in http://qt-project.org/wiki/PySideDownloads . The
rest I took for github latest releases.
2014-08-01 16:56:44 +02:00
Eelco Dolstra
6593a986a9 Shut up a warning in stage 2
(cherry picked from commit 39a6750362)
2014-07-31 16:27:39 +02:00
Eelco Dolstra
8e338e3a0b Remove Subversion from the installation CD
(cherry picked from commit 5e96158234)
2014-07-31 16:27:34 +02:00
Eelco Dolstra
de12367e89 postgresql: Update to 9.0.18, 9.1.14, 9.2.9, 9.3.5
(cherry picked from commit e4e5502966)
2014-07-31 16:27:08 +02:00
Eelco Dolstra
937ee6c191 nixos/tests/containers.nix: Don't ping
This randomly fails with "Destination Host Unreachable". That
shouldn't happen, since all interfaces/routes should be up after
"nixos-container start" returns. Need more investigation...

(cherry picked from commit 19fc92a8ed)
2014-07-31 16:26:38 +02:00
Lluís Batlle i Rossell
3f95644a28 Setting retroshare 0.6 as lowPrio, it's unstable. 2014-07-31 10:14:23 +02:00
Vladimír Čunát
6077ef462e Merge #3400: kernel updates
(cherry picked from commit 33e4a7f623)
2014-07-30 20:47:59 +02:00
Eelco Dolstra
ca377078b2 Check for systemd environment variables that are too long
Issue #3403. For the case of $PATH being too long, we could call
buildEnv automatically.

(cherry picked from commit 9956b97b2f)
2014-07-30 10:52:43 +02:00
Eelco Dolstra
33afc8161e cacert: Update to 20140704
(cherry picked from commit b9c457ba12)
2014-07-30 10:52:43 +02:00
Eelco Dolstra
6de89bfa66 Fix evaluation
http://hydra.nixos.org/build/12958569
2014-07-30 10:19:13 +02:00
Petr Rockai
bee9b9c2d1 gnu: Fix (evaluation of the) call to forceSystem.
(cherry picked from commit 559f423417)
2014-07-29 15:30:25 +02:00
Petr Rockai
94e0149a18 pkgsi686Linux: Use 32b kernels (x86_64 kernels can't be built with 32b gcc).
(cherry picked from commit bde992bbbc)
2014-07-29 15:30:19 +02:00
Eelco Dolstra
e3cf157d15 firefox: Build without xulrunner
Fixes #2950.

(cherry picked from commit 5c5f115603)

Conflicts:
	pkgs/applications/networking/browsers/firefox/default.nix
	pkgs/top-level/all-packages.nix
	pkgs/top-level/release.nix
2014-07-29 15:16:59 +02:00
Eelco Dolstra
85a15ddfd7 Remove unused function
(cherry picked from commit ee3db692e6)
2014-07-28 20:32:39 +02:00
Eelco Dolstra
d1fddb2698 firefox: Update to 31.0
Also boldly re-enable parallel building.

(cherry picked from commit 21c7ed54e3)
2014-07-28 20:29:41 +02:00
Eelco Dolstra
2227e07345 nss: Update to 3.16.3
(cherry picked from commit ea0013a0d9)
2014-07-28 20:28:02 +02:00
Eelco Dolstra
085ef8f1b4 linux: Update to 3.12.25
(cherry picked from commit 0852d9e364)
2014-07-28 20:27:55 +02:00
Sebastian Korten
1d480b97ba at: upgrade to 3.1.14 - seems to solve problem with kernel 3.6
(cherry picked from commit e57249ab20)
2014-07-27 23:07:30 +02:00
Vladimir Kirillov
f6ad69a9d8 rsync: sha256 for the patch was updated
(cherry picked from commit 2dfb036a30)
2014-07-20 20:25:51 +02:00
Emery Hemingway
57f53ed84e rsyncd: default read/write permissions should be nobody:nogroup
(cherry picked from commit 265c489391)
2014-07-20 20:25:41 +02:00
Eelco Dolstra
6c4b4c146f Revert "go 1.3 and darwin support"
This reverts commit 6a89670576. It
breaks evaluation:

http://hydra.nixos.org/build/12580541
2014-07-18 00:25:40 +02:00
Eelco Dolstra
6ec5022ac6 Don't restart systemd-journal-flush
It only needs to be started during boot. Starting it at other times
shouldn't hurt, except that if systemd-journald is restarting at the
same time, the latter might not have a SIGUSR1 signal handler
installed yet, so it might be killed by systemd-journal-flush. (At
least that's my theory about the dead systemd-journald instances in
the build farm...)

(cherry picked from commit 1a1442db74)
2014-07-17 21:06:59 +02:00
Charles Strahan
6a89670576 go 1.3 and darwin support 2014-07-17 15:52:36 +02:00
Eelco Dolstra
735bfb9847 Don't mount /sys/fs/fuse/connections and /sys/kernel/config
These fail to mount if you don't have the appropriate kernel support,
and this confuses NixOps' ‘check’ command. We should teach NixOps not
to complain about non-essential mount points, but in the meantime it's
better to turn them off.

(cherry picked from commit 6eaced3582)
2014-07-14 22:48:33 +02:00
Eelco Dolstra
e5fe68dd34 Don't restart systemd-remount-fs
It's only needed during early boot (in fact, it's probably not needed
at all on NixOS). Restarting it is expensive because it does a sync()
of the root file system.

(cherry picked from commit 3b2609deec)
2014-07-14 14:40:15 +02:00
Eelco Dolstra
87d2fbb50a debian: Update to 7.6
(cherry picked from commit 1245ca3ff7)
2014-07-14 14:39:35 +02:00
Eelco Dolstra
6756ec27dd Fix info command
The "info" command has been broken on NixOS since
457fdb3842 (proving that nobody uses
info).

(cherry picked from commit 973c9abdbe)
2014-07-11 22:48:13 +02:00
Eelco Dolstra
7b19f22bb4 tzdata: Update to 2014e
(cherry picked from commit 0a11e40596)
2014-07-11 22:48:05 +02:00
Vladimír Čunát
a351ad3edd linux_*: update, including CVE-2014-4699 (most likely)
CC #3196. No updates yet on 3.2 and 3.12 branches.

(cherry picked from commit eb659e89b4)

Conflicts (some updates previously not backported before):
	pkgs/os-specific/linux/kernel/linux-3.10.nix
	pkgs/os-specific/linux/kernel/linux-3.14.nix
	pkgs/os-specific/linux/kernel/linux-3.15.nix
	pkgs/os-specific/linux/kernel/linux-3.4.nix
2014-07-09 22:58:45 +02:00
Lluís Batlle i Rossell
0f6f98755e Adding retroshare 0.6 (unstable) 2014-07-09 22:23:57 +02:00
aszlig
971b92057a nixos/log2html: Remove schema from jQuery URLs.
This allows viewing test logs for example when using a Hydra running
with HTTPS.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
(cherry picked from commit 622673495b)
2014-07-08 00:39:17 +02:00
Moritz Maxeiner
235cceac93 eclipse: add Eclipse Standard 4.4 Luna 2014-07-08 00:37:57 +02:00
Vladimír Čunát
99a7a9cd34 libxklavier: fix not finding xkbcomp (fixes #3173)
Also refactor the expression a bit,
and add description+license.

(cherry picked from commit 45ad922763)
2014-07-07 19:05:00 +02:00
Eelco Dolstra
ea433712c2 gperftools: Support Darwin
(cherry picked from commit 63aff93c9b)
2014-07-07 18:24:52 +02:00
Eelco Dolstra
93160b855e Manual: html -> xhtml
(cherry picked from commit 2737291b5d)
2014-07-07 18:23:41 +02:00
Eelco Dolstra
c920b9f9f7 linux: Update to 3.12.24
CVE-2014-4508, CVE-2014-0206.

(cherry picked from commit 1596c3a012)
2014-07-07 18:23:33 +02:00
Rob Vermaas
9c4ea0631e Upgrade rsyslog to latest (v7) stable release. Added liblogging (new dependency of rsyslog).
(cherry picked from commit 83e1ff846c)
2014-07-07 16:24:46 +02:00
Vladimír Čunát
67b4e3ff73 mariadb: switch to a working download URL
(cherry picked from commit 114b75ce97)
2014-07-04 13:35:58 +02:00
Domen Kožar
6c47697e72 Revert "Revert "python: 2.7.7 -> 2.7.8""
This reverts commit 7bd5fb33ee.

Fixed in next commit
2014-07-02 19:56:24 +02:00
Domen Kožar
a94ce55ddb python: link gcc_s 2014-07-02 19:55:57 +02:00
Rob Vermaas
7bd5fb33ee Revert "python: 2.7.7 -> 2.7.8"
This reverts commit 7bb5592d59.
2014-07-02 19:46:25 +02:00
Domen Kožar
7bb5592d59 python: 2.7.7 -> 2.7.8
Signed-off-by: Domen Kožar <domen@dev.si>
2014-07-02 18:46:00 +02:00
Lluís Batlle i Rossell
5179b515da sqlcipher: missing semicolon on nix syntax 2014-07-02 11:27:54 +02:00
Lluís Batlle i Rossell
d2cc427e6d Adding sqlcipher. 2014-07-02 11:21:19 +02:00
Rob Vermaas
a8f6601fc6 Merge pull request #3099 from Calrama/release-14.04
Fix network-manager-applet startup issue
2014-06-27 10:23:20 +02:00
Austin Seipp
713e7482f3 php: 5.4.27 -> 5.4.30
CVE-2014-3981, CVE-2014-0207, CVE-2014-3478, CVE-2014-3479,
CVE-2014-3480, CVE-2014-3487, CVE-2014-4049, CVE-2014-3515

Signed-off-by: Austin Seipp <aseipp@pobox.com>
2014-06-27 00:26:49 -05:00
Vladimír Čunát
d0bd55da53 samba: security-only updates 2.6.22 -> .24
Fixes CVE-2014-{0244,3493} and CVE-2013-4496

(cherry picked from commit db1afc01d2)
2014-06-26 22:34:37 +02:00
Moritz Maxeiner
51dc1ddb7c Fix network-manager-applet startup issue 'GLib-GIO-Message: Using the 'memory' GSettings backend. Your settings will not be saved or shared with other applications.' 2014-06-26 19:41:43 +02:00
Vladimír Čunát
1c5a92c530 linux-3.13: remove, as it's vulnerable
CC #3090.

(cherry picked from commit 7998a598b6)
2014-06-26 13:10:26 +02:00
Vladimír Čunát
79b206e63f linux-*: pull version updates from master 2014-06-26 13:10:26 +02:00
Eelco Dolstra
9093b344ae Handle <nixpkgs> being a symlink
Fixes #1898.

(cherry picked from commit a7d31fe449)
2014-06-26 12:44:28 +02:00
Eelco Dolstra
c0121397f8 Fix generation of synergy-{client,server} when disabled
(cherry picked from commit 9ae3654fd6)
2014-06-26 12:44:15 +02:00
Eelco Dolstra
d62d4704de Don't suggest using --arg config '{ allowUnfree = true; }'
This doesn't work when using the Nixpkgs/NixOS channel.

Issue #2998.

(cherry picked from commit e5d63646a0)
2014-06-26 12:44:03 +02:00
Eelco Dolstra
a4060bbb98 winetricks: Update to 1199
(cherry picked from commit 429bdef9bd)
2014-06-26 12:44:03 +02:00
Vladimír Čunát
4076129dcb gnupg: security update 2.0.22 -> .24, CVE-2014-4617
Close #3091.

(cherry picked from commit 99da7b85cb)
2014-06-26 11:06:24 +02:00
Peter Simons
5ccfe62082 gnupg1: security update to version 1.4.17 (CVE-2014-4617)
(cherry picked from commit fd73d2b13b)
2014-06-26 11:00:29 +02:00
Rob Vermaas
03f1e336c7 Make openjre default jre on darwin, just like jdk.
(cherry picked from commit 00d9b5dfeb)
2014-06-25 14:19:21 +02:00
Rob Vermaas
73c4148685 Fix toolset argument to boost > 1.55 2014-06-25 12:50:13 +02:00
Daniel Zinn
3106853c1b Added cuda6 compiler as package cudatoolkit6.
(cherry picked from commit ca0de0f1f7)
(cherry picked from commit 01bbc61364)
2014-06-23 15:30:10 +02:00
Lluís Batlle i Rossell
231d76abe0 Making retroshare bootstrap the DHT fine. 2014-06-23 15:03:25 +02:00
Vladimír Čunát
c7e73e8436 xorg: add xkbprint
Suggested by @KoviRobi on ML.

(cherry picked from commit 3f15312b44)
2014-06-22 10:04:33 +02:00
Lluís Batlle i Rossell
c4245c8e7b retroshare: place plugins at proper place
Now they can be used.
2014-06-21 15:54:44 +02:00
Rob Vermaas
05543ef6e0 Change size of Amazon EC2 S3-backed images to 8GB (was 4GB). 2014-06-19 11:27:49 +02:00
Rob Vermaas
e007559e95 EC2: allow building S3-backed HVM ami's 2014-06-19 10:56:52 +02:00
Austin Seipp
5591fb606c duo-unix: upgrade, fix full name + version
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit fd4c2d893f)
2014-06-17 17:06:58 -05:00
Eelco Dolstra
e66d3953ae Revert "firefox: bump to 30.0."
This reverts commit 69852b1c64. Firefox
30.0 breaks restoring sessions (#2950).
2014-06-16 10:27:55 -04:00
Eelco Dolstra
acc00a7ee1 linux: Update to 3.12.22
Fixes CVE-2014-3153 (local privilege escalation via futex()).

(cherry picked from commit 27c72f337b)
2014-06-13 17:45:42 +02:00
James Cook
a4ad3b8127 nspr: update to 4.10.6
Required for Firefox 30.0.

(cherry picked from commit 4b55530bd2)
2014-06-13 17:37:46 +02:00
James Cook
69852b1c64 firefox: bump to 30.0.
(cherry picked from commit 2fec892959)
2014-06-13 17:37:32 +02:00
Rob Vermaas
dfcb042f67 elasticsearch: run preStart as root, to allow creating the necessary directories.
(cherry picked from commit 40566790d3)
2014-06-13 13:43:07 +02:00
Sönke Hahn
74859a88e5 better error message in case of missing uids
(cherry picked from commit 089b293019)
2014-06-12 22:23:01 +02:00
Vladimír Čunát
d22d14f878 fix licenCe typos 2014-06-12 09:09:39 +02:00
Vladimír Čunát
e6fe1e0e86 Revert "Update node packages." to fix tarball evaluation
The same was done on master in 8d8c761
This reverts commit 96d1ffd082.
2014-06-12 09:02:00 +02:00
Peter Simons
aedffc6b62 esniper: update to version 2.31.0
(cherry picked from commit 9b899d8600)
2014-06-11 12:05:29 +02:00
Rob Vermaas
9024912a53 Fix configuring httpd with custom user/group.
(cherry picked from commit 08f9da2e8e)
2014-06-11 10:21:45 +02:00
Rob Vermaas
764d0effa4 filezilla: update from 3.8.0 to 3.8.1, potentially fixes CVE-2013-4668
(cherry picked from commit 3d2091b9fa)

Conflicts:
	pkgs/applications/networking/ftp/filezilla/default.nix
2014-06-10 13:38:49 +02:00
Eelco Dolstra
368e66cd0b Revert "Merge #2692: Use pam_env to properly setup system-wide env"
This reverts commit b9c312fe27.
2014-06-10 13:07:57 +02:00
Vladimír Čunát
b9c312fe27 Merge #2692: Use pam_env to properly setup system-wide env
(cherry picked from commit 18a0cdd864)
2014-06-10 12:00:13 +02:00
Georges Dubus
f6f9e85e25 fish: Fixed tab completion with sudo (close #2705)
We don't have /sbin and /usr/sbin, so fish complains.

(cherry picked from commit 927c41e258)
2014-06-10 11:37:12 +02:00
Domen Kožar
b22f28b0e3 Merge pull request #2764 from nbp/rr
libpfm & rr: Add packages.
2014-06-09 23:15:54 +02:00
Rob Vermaas
96d1ffd082 Update node packages. 2014-06-09 19:55:34 +02:00
Peter Simons
b84584f5dc haskell-download-curl: jailbreak to fix build with recent versions of tagsoup
(cherry picked from commit 7c06d93c0f)
2014-06-09 10:09:15 +02:00
William A. Kennington III
276a5e3b88 kernel: 3.14.5 -> 3.14.6 (close #2868)
(cherry picked from commit d91eacd720)
2014-06-08 09:12:40 +02:00
Peter Simons
c0867734e4 spamassassin: download from any Apache mirror
(cherry picked from commit 5303c9077653e2cf897a93283915adffcada02ac)
2014-06-06 14:08:59 +02:00
Eelco Dolstra
0a8c8839df Stick to libav 9
Libav is generally not great about backwards compatibility, so it
should never get major updates on the release branch.

http://hydra.nixos.org/build/11732064
2014-06-06 13:38:05 +02:00
Domen Kožar
136d6771b5 openssl: 1.0.1g -> 1.0.1h
CVE-2014-0224
CVE-2014-0221
CVE-2014-0195
CVE-2014-0198
CVE-2010-5298
CVE-2014-3470
2014-06-05 14:33:39 +02:00
Eelco Dolstra
56cfab3831 Make pseudo-filesystems show up as "tmpfs" etc. rather than "none" in df
(cherry picked from commit 4269582078265c87b146012e83bdf5bba466d997)
2014-06-05 13:15:40 +02:00
Eelco Dolstra
2d3a73ae5c Remove illegal meta.src attributes
(cherry picked from commit 1da6a7d4a9)
2014-06-05 13:15:40 +02:00
Shea Levy
93c0f4a5f1 Fix /run/keys permissions
(cherry picked from commit 57ed344917)
2014-06-05 13:15:40 +02:00
Austin Seipp
2e8ce570e7 kernel/grsec: updates; add mainline package for brave souls
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit b43421221f)

Conflicts:
	pkgs/top-level/all-packages.nix
2014-06-05 06:14:33 -05:00
Austin Seipp
06d781bea3 mariadb: 10.0.10 -> 10.0.11
Also, enable the TokuDB plugin, as it now builds (there were some bugs
in the non-GA release that prevented that).

Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 463ed1bb64)
2014-06-05 06:07:51 -05:00
Eelco Dolstra
0276eb144c linux: Update to 3.12.21
(cherry picked from commit 246edc3df2)
2014-06-05 06:07:42 -05:00
Vladimír Čunát
b3d9172470 libav: update 0.8.11 -> .12, 9.12 -> .13, introduce 10.1
(cherry picked from commit 77abe5e464)
2014-06-05 11:05:57 +02:00
William A. Kennington III
08b679e732 kernel: 3.14.4 -> 3.14.5 (close #2831)
(cherry picked from commit 3a0b265af9)
2014-06-05 10:46:06 +02:00
Domen Kožar
9fa93015c0 mailutils: disable tests 2014-06-04 16:19:09 +02:00
Domen Kožar
a088ed9fe5 python: 2.7.6 -> 2.7.7 2014-06-04 16:19:09 +02:00
Matej Cotman
cc492d6d0a pythonPackages.pyramid_tm: set doCheck to false
Signed-off-by: Domen Kožar <domen@dev.si>
2014-06-04 16:14:29 +02:00
Lennart Kats
d5e50145de Update Node.js to 0.10.28
(cherry picked from commit 3e3e9daafe)
2014-06-04 16:11:29 +02:00
Eelco Dolstra
802d2a8e54 qt-5: Don't build tests
Building the tests (which as far as I can tell we don't even run)
makes the build take > 19 GiB of disk space, which is a bit
excessive. Without the tests, it takes 2.6 GiB.

(cherry picked from commit 1cfea9bd1a)
2014-06-03 11:43:58 +02:00
Eelco Dolstra
b49d853a18 Manual: Note about using a local branch
(cherry picked from commit a8c9c11f9e)
2014-06-03 11:43:58 +02:00
Eelco Dolstra
94b3b435ca git: Update to 1.9.4
(cherry picked from commit 61befa0451)
2014-06-03 11:43:58 +02:00
Vladimír Čunát
45413771e8 gnutls: security + maintenance update for both branches
Fixes #2813 CVE-2014-3466. No API/ABI changes in the updates.

Tests start to fail for gnutls31, so they get disabled,
but the 3.1 branch is already unused on master.

(cherry picked from commit 191dbc234f)
2014-06-03 10:51:22 +02:00
Peter Simons
a4ac76b895 haskell-xmonad-contrib: update to version 0.11.3, fix CVE-2013-1436
The problem was for users of DynamicLog with status bars
like xmobar/dzen2, and allowed *websites* to inject commands into them.

(cherry picked from commit f9f19ee938)
2014-06-01 10:20:23 +02:00
Rob Vermaas
c029464778 Re-introduce (marked as obsolete) mkStrict function, to allow old nixops deployments to keep working.
(cherry picked from commit 90a7711e08)
2014-05-31 08:05:27 +02:00
Austin Seipp
80661f4dc2 Merge #2632: add biosdevname
(cherry picked from commit 832c1abc91)
2014-05-30 10:33:35 +02:00
Nicolas Pierron
67a5cd73a4 libpfm & rr: Add packages. 2014-05-26 14:35:10 -07:00
Luca Bruno
d8a6402373 Fix passing extra qemu opts when using boot loader
(cherry picked from commit b0234f216c)
2014-05-26 22:20:01 +02:00
宋文武
4e74129777 gst-plugins-base: update from 1.2.3 to 1.2.4 (in #2440)
(cherry picked from commit fead8862d6)
2014-05-26 19:34:20 +02:00
宋文武
798a989145 gst-plugins-bad: build with wildmidi and fluidsynth
remove timidity, the plugin does not build at all

(cherry picked from commit 388d32d966)
2014-05-26 19:34:20 +02:00
宋文武
3214a5f293 gstreamer: update from 1.2.3 to 1.2.4
(cherry picked from commit b57c9ed9d5)
2014-05-26 19:34:20 +02:00
宋文武
ba23a02094 gst-plugins-ugly: update from 1.2.3 to 1.2.4
(cherry picked from commit 69c4dae379)
2014-05-26 19:34:20 +02:00
宋文武
65f5c730df gst-plugins-good: update from 1.2.3 to 1.2.4
(cherry picked from commit cd5702da47)
2014-05-26 19:34:20 +02:00
宋文武
ca5061b125 gst-plugins-bad: update from 1.2.3 to 1.2.4
(cherry picked from commit 98dd37afad)
2014-05-26 19:34:20 +02:00
宋文武
a89bac9e4d gst-libav: update from 1.2.3 to 1.2.4
(cherry picked from commit 6324296900)
2014-05-26 19:34:19 +02:00
Linquize
979adb866c lvtk: Upgrade to 1.2.0 and switch to github tarball
(cherry picked from commit e6359b4048)
2014-05-26 16:56:01 +02:00
Charles Strahan
dc71acb8cd fix -G delimiter in call to useradd
Signed-off-by: Domen Kožar <domen@dev.si>
2014-05-26 09:27:35 +02:00
Bjørn Forsman
00312d90b9 nixos: add 'gvfs' when using GNOME3 desktop
One reason for adding this is to make Chromium able to open files it has
downloaded.

Currently this happens:
  /run/current-system/sw/bin/xdg-open: line 364: gnome-open: command not found

(And nothing happens in the GUI when clicking a downloaded file.)

Looking into xdg-open, one can see that it first tries to run gvfs-open
and then falls back to gnome-open. Adding 'gvfs' makes the first command
succeed.

(cherry picked from commit 15beb4054d)
2014-05-25 20:36:59 +02:00
Jaka Hudoklin
24edc80145 xca: fix package
For some reason library paths are not set at all for some libraries during
the build. Wrapper with LD_LIBRARY_PATH set for relevant libraries is currently
solution.

(cherry picked from commit 115b7313c5)
2014-05-25 14:35:01 +02:00
Bjørn Forsman
239043c826 munin: update 2.0.20 -> 2.0.21 (bug fix)
(cherry picked from commit 5e460b2dee)
2014-05-25 13:57:09 +02:00
Bjørn Forsman
e478101a9b srecord: update 1.62 -> 1.63
(cherry picked from commit e1d2e0d380)
2014-05-25 13:51:18 +02:00
Bjørn Forsman
8a29cd0b33 bcache-tools: update 1.0.5 -> 1.0.7
(cherry picked from commit ef66088ae1)
2014-05-25 13:18:39 +02:00
Cillian de Róiste
ea1952bff2 qtractor: update from 0.6.0 to 0.6.1
(cherry picked from commit b924959648)
2014-05-24 21:26:19 +02:00
Cillian de Róiste
01d67b7d59 ardour3: 3.5.357 -> 3.5.380 Critical bug fix release
(cherry picked from commit 94fd1a83bd)
2014-05-24 20:45:30 +02:00
Cillian de Róiste
d5a98173b4 synthv1: update from 0.4.1 to 0.4.2
(cherry picked from commit 056bd4fdba)
2014-05-24 20:45:15 +02:00
Cillian de Róiste
6045631acf samplv1: update from 0.4.1 to 0.4.2
(cherry picked from commit 2dc6eb3941)
2014-05-24 20:45:02 +02:00
Cillian de Róiste
9c4a974b5a drumkv1: update from 0.4.1 to 0.4.2
(cherry picked from commit 18df371fe3)
2014-05-24 20:44:54 +02:00
Vladimír Čunát
dfb9cc2d4c update lib/maintainers.nix from master 2014-05-24 13:46:07 +02:00
Charles Strahan
501c32aaf8 fix mkpasswd: use the git repository
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit e5eed8f664)
Note recently this was picked and reverted because of missing dependencies.
2014-05-24 13:42:18 +02:00
Vladimír Čunát
2937a30a32 mupdf: fix patch hash by fetchpatch
Thanks to @kirelagin for reporting on IRC.

(cherry picked from commit f77e2dcb38)
2014-05-24 13:42:18 +02:00
Vladimír Čunát
31f9fcf420 Merge #2630: add and use fetchpatch
fetchpatch is fetchurl that determinizes the patch.
Some parts of generated patches change from time to time, e.g. see #1983 and
http://comments.gmane.org/gmane.linux.distributions.nixos/12815
Using fetchpatch should prevent the hash from changing.

(cherry picked from commit 137eae0b55)

Conflicts (simple, patchutils version from master):
	pkgs/development/libraries/haskell/gitit/default.nix
	pkgs/tools/text/patchutils/default.nix
2014-05-24 13:42:18 +02:00
Vladimír Čunát
154e06c178 Add a utility function "fetchFromGitHub"
This is a small wrapper around fetchzip. It allows you to say:

  src = fetchFromGitHub {
    owner = "NixOS";
    repo = "nix";
    rev = "924e19341a5ee488634bc9ce1ea9758ac496afc3"; # or a tag
    sha256 = "1ld1jc26wy0smkg63chvdzsppfw6zy1ykf3mmc50hkx397wcbl09";
  };

Conflicts (simple):
    pkgs/tools/networking/dd-agent/default.nix

This is a squashed cherry jam:
    ebd8573046
    6aeb59bbe0
    ea36f3b868
2014-05-24 13:39:45 +02:00
Eelco Dolstra
39e7705f50 Add a function "fetchzip"
This function downloads and unpacks a file in one fixed-output
derivation. This is primarily useful for dynamically generated zip
files, such as GitHub's /archive URLs, where the unpacked content of
the zip file doesn't change, but the zip file itself may (e.g. due to
minor changes in the compression algorithm, or changes in timestamps).

Fetchzip is implemented by extending fetchurl with a "postFetch" hook
that is executed after the file has been downloaded. This hook can
thus perform arbitrary checks or transformations on the downloaded
file.

(cherry picked from commit c8df888858)

Conflicts (using fetchzip now):
	pkgs/tools/networking/dd-agent/default.nix
2014-05-24 13:11:02 +02:00
Peter Simons
dc1a196287 esniper: update to version 2.30.0
(cherry picked from commit 95aa6a9afa)
2014-05-23 21:57:07 +02:00
Eelco Dolstra
aa19ce936b Add type for fonts.fonts option
(cherry picked from commit 58226a7b06)
2014-05-23 10:56:54 +02:00
Eelco Dolstra
6fe0fead28 nvidia-x11: Update to 331.79
(cherry picked from commit 5ec3a63fcb)
2014-05-23 10:56:54 +02:00
Ricardo M. Correia
fecc667e90 flashplayer: Update from 11.2.202.356 -> 11.2.202.359 2014-05-22 20:16:36 +02:00
Ricardo M. Correia
e07b9938d0 chromium: Update stable channel from 34.0.1847.116 -> 35.0.1916.114 2014-05-22 20:13:50 +02:00
Eelco Dolstra
d98716ded4 copy-tarballs.pl: Create base-32 symlinks
(cherry picked from commit b6569c8497)
2014-05-22 12:15:17 +02:00
Eelco Dolstra
acae580f9a gimp: Fix download URL
(cherry picked from commit 1e6c82825a)
2014-05-22 12:15:16 +02:00
Eelco Dolstra
f5de056bc8 openssh: Fix broken URL
(cherry picked from commit 9b6eeecbde)
2014-05-22 12:15:16 +02:00
Domen Kožar
51d3efed02 python: 3.4.0 -> 3.4.1 2014-05-22 09:06:13 +02:00
Rob Vermaas
044a24e58b Better support for HVM instances. Now the NixOS images can
be used on HVM instances without needing nixops. Previously
the grub setup was incorrect, so a plain 'nixos-rebuild switch'
and a reboot would result in a broken system.

Also added growing of the partition of the root disk in the initrd,
so you can run resize2fs after initial boot, without needing an
extra reboot. This is useful especially for nixops'
deployment.ec2.ebsInitialRootDiskSize option.
2014-05-21 16:31:52 +02:00
Rob Vermaas
c9763e20e5 Use HVM instance for EBS creator, guarantees everything is created in the correct zone. 2014-05-21 13:40:19 +02:00
Rob Vermaas
35c76d9173 Add option ec2.hvm, to set some boot configuration specific for EC2 HVM instances. 2014-05-21 10:55:49 +02:00
Eelco Dolstra
97d9d26a7b Revert "fix mkpasswd: use the git repository"
This reverts commit ce13d17856 since it
breaks evaluation:

in job ‘nixpkgs’:
anonymous function at /nix/store/f73d4b03nsmccb1w5b1qfgc7dpvx35gw-git-export/pkgs/tools/security/mkpasswd/default.nix:1:1 called without required argument `fetchFromGitHub', at /nix/store/f73d4b03nsmccb1w5b1qfgc7dpvx35gw-git-export/lib/customisation.nix:58:12
2014-05-21 10:46:48 +02:00
Charles Strahan
ce13d17856 fix mkpasswd: use the git repository
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit e5eed8f664)
2014-05-20 23:07:55 -05:00
Eelco Dolstra
9819094b89 Update Ubuntu Packages.bz2 hashes
(cherry picked from commit 139608dd34)
2014-05-20 13:39:37 +02:00
Eelco Dolstra
3abf903a5a Fix udev rule required by gpm
Backport: 14.04
(cherry picked from commit 097f9c7e57)
2014-05-20 13:11:03 +02:00
Eelco Dolstra
82ab2f6363 switch-to-configuration: Don't restart instances of user@.service
Restarting user@ instances is bad because it causes all user services
(such as ssh-agent.service) to be restarted. Maybe one day we can have
switch-to-configuration restart user units in a fine-grained way, but
for now we should just ignore user systemd instances.

Backport: 14.04
(cherry picked from commit bddd10d75c)
2014-05-20 11:14:37 +02:00
Eelco Dolstra
58312cab7c firefox: Update to 29.0.1
(cherry picked from commit 8b89cba9c6)
2014-05-19 21:50:16 +02:00
Eelco Dolstra
c071a4573c nss: Update to 3.16.1
(cherry picked from commit ec332f520c)
2014-05-19 21:50:16 +02:00
Eelco Dolstra
14695233ea nspr: Update to 4.10.5
(cherry picked from commit 0a3a90ed01)
2014-05-19 21:50:16 +02:00
Eelco Dolstra
eb6309c87f linux: Update to 3.12.20
(cherry picked from commit 2ee6c0c63e)
2014-05-19 21:50:15 +02:00
Rob Vermaas
06d38cd60a Fix slim evaluation. 2014-05-19 13:58:43 +02:00
Michael Raskin
ef3c59c5ec On my system OpenGL with bumblebee seems to require libudev in LD_LIBRARY_PATH. Fix that, fix bumblebee module loading and make the socket group configurable
(cherry picked from commit eef9a8ac2a)
2014-05-19 12:57:29 +02:00
Austin Seipp
1d24df4063 btsync: fix my stupidity
Signed-off-by: Austin Seipp <aseipp@pobox.com>
2014-05-18 16:34:07 -05:00
Luis G. Torres
4dc6e22c21 eigen: upgrading version to 3.2.1
(cherry picked from commit ad1ce14a68)
2014-05-18 15:41:52 -05:00
Austin Seipp
bfff5e4475 fmod: 4.44.33 -> 4.44.34
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit d08395713b)
2014-05-18 15:41:29 -05:00
Austin Seipp
0884ff51ea btsync: 1.3.93 -> 1.3.94
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 7fbe238a49)
2014-05-18 15:41:25 -05:00
Austin Seipp
6de37e68e0 lockdep: 3.14.2 -> 3.14.4
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 0781563b46)
2014-05-18 15:41:21 -05:00
Austin Seipp
b3747fc9d5 jhc: Fix license
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit c166bd3e07)
2014-05-18 15:41:12 -05:00
Austin Seipp
2e22c13a35 jhc: 0.8.0 -> 0.8.1
Also, bootstrap the compiler with GHC 7.6.3 instead of 6.12.3.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 1651871250)
2014-05-18 15:41:06 -05:00
Benno Fünfstück
c739957979 virtualbox: update 4.3.10 -> 4.3.12
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 8b6300822b)
2014-05-18 15:40:57 -05:00
Vladimír Čunát
054eae1cc3 berlios.de probably shut down, replace it
The shutdown was announced years ago, only now it stopped working.

(cherry picked from commit 8e9ead8656)
2014-05-18 15:40:34 -05:00
Austin Seipp
e06e9e1105 cryptol: add a convenient clang/lss wrapper
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit f1dc681538)
2014-05-18 15:39:40 -05:00
John Wiegley
c49f640ed8 Add -Wno-error=deprecated-declarations for nginx, required to build on Darwin
(cherry picked from commit 622aa834b7)
2014-05-18 15:39:24 -05:00
Austin Seipp
d50ce3a21f grsec: updates
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit cb894d4fc3)
2014-05-18 15:38:49 -05:00
Austin Seipp
1b4a5c52b0 linux-3.{4,10}: update
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 3efdeef6a3)
2014-05-18 15:38:40 -05:00
Austin Seipp
e774419033 apparmor: 2.8.2 -> 2.8.3
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit f7123982c2)
2014-05-18 15:38:32 -05:00
Rob Vermaas
ecdb0f7867 Fix dogstatsd, needs procps in path. 2014-05-18 13:00:33 +02:00
Vladimír Čunát
18602b0656 Revert "mupdf: fix patch hash by fetchpatch"
We don't have fetchpatch on release yet,
and it depends on fetchurl changes not there yet...
I'll leave the patch unfixed ATM,
as people on release mostly get binaries anyway.

This reverts commit f73e7d33c2.
2014-05-18 12:11:08 +02:00
Vladimír Čunát
f73e7d33c2 mupdf: fix patch hash by fetchpatch
Thanks to @kirelagin for reporting on IRC.

(cherry picked from commit f77e2dcb38)
2014-05-17 12:24:07 +02:00
Vladimír Čunát
dad7523db2 xorg.libXfont: security update, CVE-2014-{0209,0210,0211}
For details see http://lists.x.org/archives/xorg-announce/2014-May/002431.html

(cherry picked from commit 832c661822)
2014-05-17 07:23:33 +02:00
Jordan Patterson
fab8b036f3 rxvt-unicode: update to 9.20, fixing CVE-2014-3121 (close #2649)
(cherry picked from commit 4b668bb554)
2014-05-15 20:58:07 +02:00
Vladimír Čunát
5b26870e18 Merge pull request #2634 from doublec/tor
Update Tor to 0.2.4.21 and tor-browser to 3.6.1
(cherry picked from commit cc9b8a8b6f)

Fixes #2657.
2014-05-15 20:49:57 +02:00
Linquize
1e02e79a16 git: Update to 1.9.3
(cherry picked from commit 10fa1bcf66)
2014-05-15 16:15:34 +02:00
Eelco Dolstra
028d2479dd linux-3.12: Apply patch for CVE-2014-0196
(cherry picked from commit 3d1d9bb7dd)
2014-05-15 15:28:30 +02:00
Lengyel Balázs
1a5ce29795 Changed URL to upstream, as the old URL was dead
(cherry picked from commit 5f025b6505)
2014-05-15 13:22:44 +02:00
Bjørn Forsman
530ad13c26 python-usbtmc: new package
This Python package supports the USBTMC instrument control protocol for
controlling instruments over USB.

http://alexforencich.com/wiki/en/python-usbtmc/start
(cherry picked from commit 77000f7af0)
2014-05-14 21:57:59 +02:00
Bjørn Forsman
106ff6fb37 python-pyusb: new package
PyUSB is a Python module that wraps libusb 1.0. (It can wrap other USB
libraries too, but I've hardcoded it for libusb as it seems the most
appropriate.)

(cherry picked from commit bc847600a9)
2014-05-14 21:57:59 +02:00
Rob Vermaas
feab8c784d Revert "Set console=ttyS0 for Amazon EC2 instances, as suggested by Amazon."
This reverts commit 78916e0257.
2014-05-14 11:12:55 +02:00
Vladimír Čunát
4d36234940 mesa: bugfix update 10.0.4 -> .5
Master is using 10.1.* already.
2014-05-13 21:09:32 +02:00
Linquize
4e87d1b90e codeblocks: new package 13.12 (close #2533)
@vcunat: minor refactoring.

(cherry picked from commits 977248ba15
  and 93e65a4d53)
2014-05-13 21:01:48 +02:00
Eelco Dolstra
a58455c024 linux: Update to 3.12.19
Backport: 14.04
(cherry picked from commit abbf643ae2)
2014-05-13 21:00:08 +02:00
Vladimír Čunát
7c5691ba70 linux: minor updates, probably often fixing CVE-2014-0196
(cherry picked from commit 9c8ee7a7e5)
2014-05-13 20:59:31 +02:00
Luca Bruno
2c3184a0ce shadow: Fix lastlog and faillog to find logs in /var/log
Fixes #2575 and closes #2586.

(cherry picked from commit 9e7e3978f9)
2014-05-13 20:59:10 +02:00
Vladimír Čunát
6acb503cba pidgin-sipe: fix build by updating
Also add platforms (linux).

(cherry picked from commit 08834b061c)
2014-05-13 20:57:22 +02:00
Vladimír Čunát
243fe226f5 nixos-generate-config.pl: add new PCI IDs for broadcom_sta
The last ID wasn't in official README,
but it was reported by third3ye on IRC.

(cherry picked from commit 2aa3580a5e)
2014-05-13 20:56:57 +02:00
Vladimír Čunát
c23360496c pam: upstream patch to fix CVE-2014-2583
(cherry picked from commit 07aaea85d4)
2014-05-13 20:56:40 +02:00
Vladimír Čunát
77cf3a8a70 json-c: update to 0.12, fixing CVE-2013-{6370,6371}
(cherry picked from commit d96f262166)
2014-05-13 20:56:33 +02:00
Vladimír Čunát
4e61a2ae87 libmms: bugfix update, including CVE-2014-2892
(cherry picked from commit 6faa50e11d)
2014-05-13 20:56:26 +02:00
Vladimír Čunát
2fd0d5bffb rsync: fix CVE-2014-2855 by upstream patch
(cherry picked from commit 8c918bdc2c)
2014-05-13 20:56:17 +02:00
Vladimír Čunát
5aad39e6da curl: minor update 7.35.0 -> 7.36.0, including CVE fixes
(cherry picked from commit 062e2567c9)
2014-05-13 20:56:08 +02:00
Eelco Dolstra
2c8f6e0679 Add nifskope
(cherry picked from commit 535de5e45a)
2014-05-13 13:30:21 +02:00
Eelco Dolstra
b2d29943fa nixos-generator-config: Don't emit a double / in bind mounts
(cherry picked from commit 4b7c606589)
2014-05-13 13:29:42 +02:00
Eelco Dolstra
5c3f2c1087 nixos-generate-config: Don't include /var/setuid-wrappers
(cherry picked from commit dc78ae327c)
2014-05-13 13:29:27 +02:00
Eelco Dolstra
7fba471dc2 Don't enable the NVIDIA driver by default because it's unfree
(cherry picked from commit 1bd8ced9c0)
2014-05-13 13:29:17 +02:00
Eelco Dolstra
9d0d374bd8 nixos-container: Ensure umask 022
Fixes #2585.

(cherry picked from commit 253bbb8e2b)
2014-05-13 13:28:51 +02:00
aszlig
9baa033f8d chromium: Allow config.chromium for PPAPI plugins.
This should make it easier to enable proprietary pepper API plugins
though nixpkgs config, so it can be easily installed using something
like:

nix-env -i chromium-stable

With something like:

{ chromium.enablePepperFlash = true; }

In ~/.nixpkgs/config.nix to enable pepper API based Flash and to avoid
the browser wrapper from Firefox entirely.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
(cherry picked from commit c833d7ce16)
2014-05-12 23:35:05 +02:00
Austin Seipp
8d6688d866 nixos: overhaul datadog module
This overhauls the Datadog module a bit to be much more useful. In
particular, it adds support for nginx and postgresql monitoring
integrations to dd-agent. These have to exist in separate files under
/etc/dd-agent, so the module just exposes then as separate options. In
the future, more integrations could be added this way.

In the process of doing this, I also had to rename the dd-agent user to
datadog. Note the UIDs did not change, so this is strictly backwards
compatible. The reason for this is to make it easier to create a
'datadog' postgres user with access to pg_stats, as 'dd-agent' typically
isn't a valid username. This allows the out of the box configurations to
be used.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 368a677c97)
2014-05-12 16:59:58 +02:00
Vladimir Kirillov
4497554833 sysdig: support builds without the kernel module, add pkgs.sysdig attr
(cherry picked from commit 96903d5e48)
2014-05-12 09:37:31 -04:00
Vladimir Kirillov
e77c1cf891 luajit: support Darwin builds
(cherry picked from commit e5f7e4ec3c)
2014-05-12 09:37:21 -04:00
Vladimir Kirillov
8d3f066bc4 sysdig: update to 0.1.82
(cherry picked from commit 96373a4041)
2014-05-12 09:37:12 -04:00
Rob Vermaas
78916e0257 Set console=ttyS0 for Amazon EC2 instances, as suggested by Amazon.
(cherry picked from commit 7d3dcd9a8c)
2014-05-12 12:29:49 +02:00
Bjørn Forsman
2c176a2a6e virt-manager: add missing gsettings schema
Without this it'll complain and abort when clicking "Take Screenshot" or
"Browse Local" when creating a new VM and looking for an CD-ROM image to boot
from:

GLib-GIO-ERROR **: Settings schema 'org.gtk.Settings.FileChooser' is not installed

(cherry picked from commit cb7c920e24)
2014-05-11 01:04:16 +02:00
Rickard Nilsson
888af166ca When auto-formatting ext devices, use the -F flag to make it work with unpartioned disks
(cherry picked from commit b87b6870f8)
2014-05-09 11:05:50 -04:00
Vladimir Kirillov
7bc02074b1 sysdig: update to 0.1.81
(cherry picked from commit bf9612e797)
2014-05-09 11:05:44 -04:00
Rob Vermaas
9bb943b14d Upgrade rtmpdump and get_iplayer
(cherry picked from commit a76350337894f7f8d8945da1f35341a6bc2fd81a)
2014-05-07 20:57:15 +02:00
Rob Vermaas
a5a5a87f2e USe maven.test.skip in stead of maven.test.skip.exec in mvn assembly, to prevent unnecessary compilation.
(cherry picked from commit 7cd55c7744)
2014-05-07 16:37:59 +02:00
Shea Levy
17d074d0b5 Add phpPackages.xdebug
Partial backport of 16e7ae3b10
2014-05-07 09:35:07 -04:00
Eelco Dolstra
53f82b134b libav: Disable tests
These appear to fail randomly sometimes:

http://hydra.nixos.org/build/10854615
(cherry picked from commit 255a6a9da8)
2014-05-07 14:03:55 +02:00
aszlig
62f157e5f4 vm/windows: Wait for migration to finish.
This ensures that the intermediate machine is shut down only after the
migration has finished writing the memory dump to disk, to ensure we
don't end up with empty state files depending on how fast the migration
finished before we actually shut down the VM.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
(cherry picked from commit 97dc8a88e5)
2014-05-07 07:22:49 +02:00
aszlig
648edae309 vm/windows: Exit if VM has dropped out.
This ensures that the builder isn't waiting forever if the Windows VM
drops dead while we're waiting for the controller VM to signal that a
particular command has been executed on the Windows VM. It won't ever
happen in such cases so it doesn't make sense to wait for the timeout.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
(cherry picked from commit bd78e674c5)
2014-05-07 07:22:49 +02:00
aszlig
82d96b5a18 Revert "vm/windows: Exit if VM has dropped out".
This reverts commit 457f2c2835.

Damn, this commit wasn't supposed to hit the stable branch yet, and I
accidentally pushed this because I was in the wrong working dir. It
doesn't break anything but fixes nothing, that's why I'm reverting until
the proper fix is ready and tested.

Sorry everyone for the noise X-/

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-05-07 03:55:49 +02:00
aszlig
457f2c2835 vm/windows: Exit if VM has dropped out.
This ensures that the builder isn't waiting forever if the Windows VM
drops dead while we're waiting for the controller VM to signal that a
particular command has been executed on the Windows VM. It won't ever
happen in such cases so it doesn't make sense to wait for the timeout.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-05-07 03:29:02 +02:00
Austin Seipp
314952cdc8 build-support/vm: add Ubuntu 14.04 Trusty Tahir
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 2be1b4c034)
2014-05-06 17:02:10 +02:00
Vladimir Kirillov
d719c77dd0 buildLocalCabal: allow cabalDrvArgs in buildLocalCabalWithArgs
allows to write neat expressions like (as we're still generating an
expression string):

```
{
  build = haskellPackages.buildLocalCabalWithArgs {
    inherit src name;
    cabalDrvArgs = {
      jailbreak = false;
      doCheck = false;
    };
  };
}
```

without resorting to weird kung-fu like darcs does:

```
darcs = haskellPackages.darcs.override {
  # A variant of the Darcs derivation that containts only the
  # executable and
  # thus has no dependencies on other Haskell packages.
  cabal = { mkDerivation = x: rec { final = haskellPackages.cabal.mkDerivation (self: (x final) // {
            isLibrary = false;
            configureFlags = "-f-library"; }); }.final;
          };
};
```

While here, move the `jailbreak = true;` as the default `cabalDrvArgs`
option.

(cherry picked from commit 7eff825487)
2014-05-06 09:28:54 -04:00
Rob Vermaas
3d992546f9 Force --no-same-owner for unpacking node sources.
(cherry picked from commit b116679b24)
2014-05-06 14:58:26 +02:00
Bjørn Forsman
03cc78bbde eclipse: add Eclipse IDE for C/C++ Developers 4.3.2
(cherry picked from commit d2587a014f)
2014-05-05 22:43:09 +02:00
aszlig
3a76854aad chromium/source: Propagate system attribute.
The system attribute was already there in the function head of the
shared update helper but it actually wasn't used and thus later the
import of <nixpkgs> was done using builtins.currentSystem instead of the
system attribute inherited from the source derivation.

Now we correctly propagate the attribute, so that even when running a
64bit kernel you can run a 32bit Chromium with binary plugins.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
(cherry picked from commit 4f3085d5f8)
2014-05-05 20:47:43 +02:00
aszlig
00af817900 chromium: Link against pulse instead of dlopen().
This fixes the issue of Chromium not being able to load the pulseaudio
librarp

We could also propagate the build inputs, but it would end up being the
same as just directoly linking against the library.

Thanks to @aristidb for noticing this in #2421:

https://github.com/NixOS/nixpkgs/pull/2421#issuecomment-42113656

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
(cherry picked from commit 17807c8b6c)
2014-05-05 20:47:43 +02:00
Eelco Dolstra
c3bc254628 Don't run hwclock if /dev/rtc doesn't exist
E.g. on EC2 instances.

Backport: 14.04
(cherry picked from commit 5bfe944907)
2014-05-05 16:52:12 +02:00
Eelco Dolstra
1f07b94d39 systemd-journal-flush: Require /var/log/journal rather than all filesystems
Backport: 14.04
(cherry picked from commit 24cbe874d6)
2014-05-05 16:52:12 +02:00
Eelco Dolstra
ccf34c6d99 Don't start getty@tty1 on headless machines (like EC2)
Backport: 14.04
(cherry picked from commit 4a08f37206)
2014-05-05 16:52:12 +02:00
Eelco Dolstra
9642d4158b sysinit.target: Don't depend on systemd-tmpfiles-setup.service
systemd-tmpfiles-setup.service pulls in local-fs.target, which
interferes with NixOps' send-keys feature (since sshd.service depends
indirectly on sysinit.target). Since in NixOS we don't use
systemd-tmpfiles for creating files (that's done by activation scripts
and preStart scripts), it's not a problem to start it a bit later.

Backport: 14.04
(cherry picked from commit 014fe1a3c3)
2014-05-05 16:52:12 +02:00
Eelco Dolstra
a8d06d2ea1 switch-to-configuration: Honour RefuseManualStop
This prevents spurious errors about systemd-tmpfiles-setup.service.

Backport: 14.04
(cherry picked from commit bac68f9747)
2014-05-05 16:52:12 +02:00
Rob Vermaas
eb22292305 Fix users.*.extraGroups for users.mutableUsers = true. 2014-05-05 15:34:50 +02:00
Vladimir Kirillov
ccd3b3397e buildLocalCabal: include cabalInstall to buildDepends to preserve developer experience
(cherry picked from commit 9aa231abfa)
2014-05-05 09:13:13 -04:00
Eelco Dolstra
41895eabb9 systemd: Look for fsck.* in the right place
Fixes #2464.

(cherry picked from commit cb45ecad34)
2014-05-05 14:01:50 +02:00
Bjørn Forsman
6db3164d1f qwt: add version 6.x (we already have 5.x)
'qgis', one of the few 'qwt' dependees in nixpkgs, fails to build with
qwt 6. So I'm not moving the default version away from 5.x. Also, not
changing the default allows easy/safe cherry-picking to the stable
branch.

(cherry picked from commit 70b39119c3)
2014-05-04 00:12:42 +02:00
Cillian de Róiste
5250ce3e89 aubio: update from 0.4.0 to 0.4.1
(cherry picked from commit f3e0a29338)
2014-05-03 17:13:45 +02:00
Cillian de Róiste
0a18a7b5b7 darktable: update from 1.4.1 to 1.4.2
(cherry picked from commit 849f6788ac)
2014-05-03 16:59:42 +02:00
Austin Seipp
430a2bf52f clang-analyzer: respect $NIX_CFLAGS_COMPILE
When using scan-build, you're often going to want to use it in the
context of a Nix expression with buildInputs, and the default wrapper
scripts will put things like include locations for those inputs
$NIX_CFLAGS_COMPILE. Thus, scan-build also needs to pass them to the
analyzer - while the link flags aren't relevant, the include flags are.

This is because the analyzer executable that gets run by scan-build is
*not* clang-wrapper, but the actual clang executable, so it doesn't
implicitly add such arguments. The build is two-stage - it runs the real
clang wrapper once, and then the analyzer once.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 59528d9f0e)
2014-05-03 09:56:48 -05:00
Austin Seipp
5de4e94028 btsync: Default to no login/password for the Web UI
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit b553d11616)
2014-05-03 09:56:27 -05:00
Benno Fünfstück
75441a5abb Fix whitespace
(cherry picked from commit 9d15c568d8)
2014-05-03 16:02:24 +02:00
Benno Fünfstück
33587cd7ba jdk7: update patchversion 51 -> 55.
(cherry picked from commit a2de61e2b6)
2014-05-03 16:02:24 +02:00
Domen Kožar
6a0c87ccfe s/config.allowUnfree = true/allowUnfree = true/ 2014-05-03 15:13:26 +02:00
taku0
2764a05d4e Update thunderbird-bin to version 24.5.0 2014-05-02 21:25:15 +02:00
Eelco Dolstra
02b056c5b1 debian: Update to 7.5
(cherry picked from commit 1ab9f0a1c1f66a6d92b1a244192bae96c7afc0f0)
2014-05-02 15:14:25 +02:00
Luca Bruno
e6f4bdb1bb Added gnome 3.10 to the release notes
(cherry picked from commit ea1a9445bb)
2014-05-02 15:14:25 +02:00
Austin Seipp
6f8ee84cc9 btsync: remove unneeded assertion
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 8946e91fad)
2014-05-01 17:02:13 -05:00
Domen Kožar
b89c5378d0 pypy: disable sqlite3 tests (failing due to sqlite bump) 2014-05-01 18:38:28 +02:00
Shea Levy
84308245e8 Fix description to match convention
(cherry picked from commit da4adc2a4f)
2014-05-01 11:46:52 -04:00
Shea Levy
c476f4a237 Add enum option type
(cherry picked from commit ab2cd34076)
2014-05-01 11:30:28 -04:00
Shea Levy
ccea12cba2 grub: Allow setting the boot root explicitly
If /boot is a btrfs subvolume, it will be on a different device than /
but not be at the root from grub's perspective. This should be fixed in
a nicer way by #2449, but that can't go into 14.04.

(cherry picked from commit e4630c1d41)
2014-05-01 10:58:03 -04:00
Emery Hemingway
4cbc48f236 qtbitcointrader: initial expression 2014-05-01 15:54:54 +02:00
Eelco Dolstra
21e8cfac80 Shorten the version string
As suggested by Bjørn Forsman, use the number of commits in the
release branch.
2014-05-01 15:27:30 +02:00
Eelco Dolstra
b8564f7bb0 Mark builds from git explicitly
(cherry picked from commit 0b091e1286)
2014-05-01 15:27:30 +02:00
Eelco Dolstra
ff8ce29764 release.nix: Drop officialRelease flag
(cherry picked from commit 3b616e378a)
2014-05-01 15:27:30 +02:00
Eelco Dolstra
0711574c29 postgresql: Update to latest versions
(cherry picked from commit a986bbf4ba)
2014-05-01 15:27:30 +02:00
Rob Vermaas
9d9c797d75 Add RHEL7 to vm functions.
(cherry picked from commit cecd000fdb0c37b38e8b9fdfaed9eddb33b813cf)
2014-05-01 15:14:03 +02:00
Peter Simons
fcdf7e80ab gtk-gnutella: mark as "broken"
The current version doesn't compile with the latest GCC any more.

(cherry picked from commit 3c08cdce48)
2014-05-01 11:51:45 +02:00
Eelco Dolstra
5ceef8d2b1 httpd: Update to 2.2.27
CVE-2013-6438, CVE-2014-0098

(cherry picked from commit 65a78e16f1)
2014-05-01 11:51:26 +02:00
Eelco Dolstra
3cc279966d php: Update to 5.4.27
CVE-2013-7345, CVE-2014-1943, CVE-2014-2270, CVE-2013-6712

(cherry picked from commit ba332accc2)
2014-05-01 11:51:26 +02:00
Eelco Dolstra
faf51667ea Fix meta.license attribute
(cherry picked from commit 6c69ad3a97)
2014-05-01 11:51:26 +02:00
Eelco Dolstra
6d27026353 Remove mysterious line
(cherry picked from commit 4de6357776)
2014-05-01 11:51:26 +02:00
Eelco Dolstra
54a7d1d23e Disable the rabbitmq test
It frequently gets stuck in an infinite loop, delaying releases for
many hours.

(cherry picked from commit c9ebb42573)
2014-04-30 23:26:11 +02:00
Eelco Dolstra
9f4d06adae Set release date
(cherry picked from commit 0ea20bef3c)
2014-04-30 23:26:07 +02:00
Eelco Dolstra
24214d8517 chatzilla: Update to 0.9.90.1
Also, make it work with recent Firefoxes.

(cherry picked from commit 8f5ebe495c)
2014-04-30 17:03:45 +02:00
Linquize
42b9f99db1 chatzilla: Use latest firefox's xulrunner
(cherry picked from commit 20c395d8aa)
2014-04-30 16:49:22 +02:00
Eelco Dolstra
42bf7ca3e1 Don't make the EFI tests release-critical
They're failing on i686: http://hydra.nixos.org/build/10712961

(cherry picked from commit a96f4920d5)
2014-04-30 16:49:08 +02:00
Eelco Dolstra
48f3bb944e Punctuation
(cherry picked from commit 1d8f7e63b0)
2014-04-30 16:45:08 +02:00
Eelco Dolstra
e3be224207 Handle Zabbix agent and server both being enabled
This gave an error about the zabbix user uid being defined multiple
times.

(cherry picked from commit 05decd49ff)
2014-04-30 16:45:05 +02:00
Eelco Dolstra
13ce9bc60f flashplayer: Update to 11.2.202.356
CVE-2014-0515

(cherry picked from commit 0ac20f0726)
2014-04-30 16:45:03 +02:00
Eelco Dolstra
568930ca3e Fix the simple installer test
http://hydra.nixos.org/build/10712818
(cherry picked from commit 27d47f3983)
2014-04-30 16:44:59 +02:00
Eelco Dolstra
ff2bd64a4c Installer test: Unmount filesystems after installation
Hopefully fixes failures like:

  http://hydra.nixos.org/build/10712833

This shouldn't be necessary, but it might be that the use of unionfs
is interfering with a clean shutdown.

(cherry picked from commit 437962ebb2)
2014-04-30 16:44:54 +02:00
Eelco Dolstra
f9cb9a67ab systemd: Require some more kernel features
(cherry picked from commit 728d3476ba)
2014-04-30 16:44:51 +02:00
Eelco Dolstra
7b1401ba29 gummiboot: Automatically disable GRUB
(cherry picked from commit 9bb209a3bd)
2014-04-30 16:44:47 +02:00
Eelco Dolstra
958fc5076f Merge the EFI test into tests/installer.nix
(cherry picked from commit e9be441b62)
2014-04-30 16:44:44 +02:00
Eelco Dolstra
9cafa3c615 nixos-generate-config: Use systemd-detect-virt instead of dmidecode
Dmidecode fails in our EFI test with the error "SMBIOS entry point
missing". But we don't need dmidecode because we have already have
systemd-detect-virt.

(cherry picked from commit 8c75ae3838)
2014-04-30 16:44:40 +02:00
Eelco Dolstra
a21155609e Remove obsolete zsh help text
(cherry picked from commit 956f464fff)
2014-04-30 16:44:37 +02:00
Eelco Dolstra
5a6090529f Installer test: Remove fileSystems argument
The config function unintentionally ignored its fileSystems
argument. However, things still worked thanks to the magic of
nixos-generate-config. Yay!

(cherry picked from commit 077ecf43e5)
2014-04-30 16:44:32 +02:00
Mihaly Barasz
4df0681dfe tzdata: use symlinks instead of hardlinks
Hard links are not handled by nar, so installing from binary cache
unnecessarily duplicates data. Also, it's more common to use symlinks for the
tzdata package in other distributions.

(cherry picked from commit 1f2228cdc1)
2014-04-30 16:43:58 +02:00
Eelco Dolstra
5619db6872 tzdata: Update to 2014b
(cherry picked from commit dc224baba1)
2014-04-30 16:43:58 +02:00
Mihaly Barasz
4829a4d14c tzdata: fix 'posix' symlink
(cherry picked from commit c2c90bf2bb)
2014-04-30 16:43:58 +02:00
Domen Kozar
65aed4c96f modernize nixos-generate-config
(cherry picked from commit 88a8ec37d3)
2014-04-30 10:25:17 -04:00
Shea Levy
b8d1205fdc Actually use services.mysql.port
Fixes #1315

(cherry picked from commit 26d03000c2)
2014-04-30 10:23:30 -04:00
Rob Vermaas
b20e64b32b Update nixops 1.1.1 to 1.2.
(cherry picked from commit fed7a43020)
2014-04-30 11:15:59 +02:00
Eelco Dolstra
387237fcb8 Remove the option ‘programs.bash.enable’
NixOS has a pervasive dependency on bash. For instance, the X11
session script sources /etc/profile to get a reasonable
environment. Thus we should not provide an option to disable bash.

Also, enabling zsh no longer sets ‘users.defaultUserShell’ to zsh, to
prevent a collision with bash's definition of the same
option. (Changing the default shell is also something that should be
left to the user.)

(cherry picked from commit 90dac235bb)
2014-04-30 08:45:40 +02:00
Eelco Dolstra
6bb78819c0 firefox: Update to 29.0
(cherry picked from commit 1235f693ee)
2014-04-30 08:45:40 +02:00
Austin Seipp
84ab83d261 nixpkgs: clang-analyzer 3.4
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 3c3256e4a8)
2014-04-29 19:37:07 -05:00
Austin Seipp
31bf76e3e2 cryptol: Replace URLs with something meaningful
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 52514efb16)
2014-04-29 17:54:53 -05:00
Austin Seipp
094fc34810 cryptol: add 1.8.x expression
This also includes support for the verification tools I'm using. Cryptol
2 is still the default obviously.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit d9d76f1a3a)
2014-04-29 17:51:46 -05:00
Austin Seipp
68744afca3 nixpkgs: cov-build 7.0.2
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 1d3b5874ad)
2014-04-29 16:01:40 -05:00
Jaka Hudoklin
066855bc88 nodejs: fix on i686-linux
Fixes this:

  creating  ./config.gypi
  creating  ./config.mk
  building
  make flags: SHELL=/nix/store/fp0nwhj932kscakw1gbnlmmk8pdfv9sq-bash-4.2-p45/bin/bash
  building out/Makefile
  /nix/store/vh2zy8l2797yl3mri35y8jnhc81w9hm1-python-2.7.6/bin/python tools/gyp_node.py -f make
  /bin/sh: which: command not found
  gyp: Call to '(echo | $(echo ${CXX_host:-$(which g++)}) -m32 -E - > /dev/null 2>&1) && echo "-m32" || true' returned exit status 0.
  make: *** [out/Makefile] Error 1

[Bjørn: add build error to commit message.]

(cherry picked from commit cbfbd01cd7)
2014-04-29 22:33:29 +02:00
Thomas Tuegel
ba3b38d73f qvim: add lua support
(cherry picked from commit 7896a84849)
2014-04-29 22:25:37 +02:00
Jaka Hudoklin
20f79ee906 rabbitmq_server: enable builds on darwin
(cherry picked from commit ca3c2b7b2a)
2014-04-29 22:09:50 +02:00
Jaka Hudoklin
d9e69e3136 erlang: enable and fix builds on darwin
(cherry picked from commit ab53d469f8)
2014-04-29 22:09:47 +02:00
Bjørn Forsman
a2ebf3a767 xfce: fix typo introduced in recent commit (s/gtk/gtk3/)
Fix typo introduced in commit 0b2dd3a12f
(Xfce: Don't depend on GTK+ 3 by default).

(cherry picked from commit b802924af1)
2014-04-29 19:16:01 +02:00
Austin Seipp
10ef32c08d spark: 0.9.0 -> 0.9.1
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit c8f82b4ee8)
2014-04-29 10:34:51 -05:00
Eelco Dolstra
86e1778409 Disable autofs module
It appears to be unmaintained and untested. Also, systemd provides
automount functionality so it's probably not needed anymore.

(cherry picked from commit bfc524664a)
2014-04-29 16:04:35 +02:00
Eelco Dolstra
f7cdc5d5fe Add a test for automounting
(cherry picked from commit 501d532188)
2014-04-29 16:04:32 +02:00
Eelco Dolstra
64fd7e5757 Xfce: Don't depend on GTK+ 3 by default
Given that Xfce is intended as a light-weight desktop environment,
pulling in two versions of GTK+ by default is not ideal.

(cherry picked from commit 0b2dd3a12f)
2014-04-29 16:04:27 +02:00
Eelco Dolstra
7392915ddc Move the NVIDIA support into its own module
Previously all card-specific stuff was scattered across xserver.nix
and opengl.nix, which is ugly. Now it can be kept together in a single
card-specific module. This required the addition of a few internal
options:

- services.xserver.drivers: A list of { name, driverName, modules,
  libPath } sets.

- hardware.opengl.package: The OpenGL implementation. Note that there
  can be only one OpenGL implementation at a time in a system
  configuration (i.e. no dynamic detection).

- hardware.opengl.package32: The 32-bit OpenGL implementation.

(cherry picked from commit 02cef04c81)
2014-04-29 16:04:23 +02:00
Eelco Dolstra
11c5154b47 Rename hardware.opengl.videoDrivers back to services.xserver.videoDrivers
Fixes #2379.
The new name was a misnomer because the values really are X11 video
drivers (e.g. ‘cirrus’ or ‘nvidia’), not OpenGL implementations. That
it's also used to set an OpenGL implementation for kmscon is just
confusing overloading.

(cherry picked from commit 3fe96bcca1)
2014-04-29 16:04:18 +02:00
Eelco Dolstra
ca0d0f83ca Obsolete fonts.extraFonts
You can now just set fonts.fonts, which will be merged with the
default value unless you use mkOverride.

(cherry picked from commit e6b5c0121f)
2014-04-29 16:04:14 +02:00
Eelco Dolstra
b72398906f Shut up warning about missing fonts.dtd
(cherry picked from commit 5ae8ed381c)
2014-04-29 16:04:10 +02:00
Eelco Dolstra
00c45fb8ba Remove redundant ~/.fonts element from the font search path
(cherry picked from commit d6c2dcd98c)
2014-04-29 16:04:05 +02:00
Kirill Elagin
a2d659a4e6 Let users install fonts to their HOME directory
(cherry picked from commit 8dc287b88c)
2014-04-29 16:04:01 +02:00
William A. Kennington III
fcc00bd0b5 nixos: Add support for changing supported systems
release.nix and release-combined.nix current hardcode the systems which
they are built for. This change introduces an argument to the
expressions called supportedSystems, which allows the builder to choose
which architectures he wants to build. By default, this uses the same
linux x86_64 and i686 architectures.

(cherry picked from commit 936481a12e)
2014-04-29 16:03:55 +02:00
Eelco Dolstra
3f4e115444 Fix some uid/gid attributes to match the actual user/group name
(cherry picked from commit a142d68b43)
2014-04-29 16:03:50 +02:00
Eelco Dolstra
ef4d792827 Allocate system uids/gids between 400 and 500
Previously it was between 100 and 500, but this can already collide
with the static uids/guid in misc/ids.nix.

(cherry picked from commit 0e23a175de)
2014-04-29 16:03:45 +02:00
Eelco Dolstra
6f5fff79a8 Bring back the isSystemUser option
(cherry picked from commit 05468f9b78)
2014-04-29 16:03:41 +02:00
Eelco Dolstra
795de7faf5 Remove use of obsolete flags
(cherry picked from commit 2dfbe55421)
2014-04-29 16:03:37 +02:00
Vladimír Čunát
a88b0e4bc2 qt48: bugfix update 4.8.5 -> .6
Some patches dropped, as they seemed included.

(cherry picked from commit 920a734a15)
2014-04-29 16:03:29 +02:00
Eelco Dolstra
718faf3116 Add some packages to the channel
(cherry picked from commit 2ca913c509)
2014-04-29 16:03:18 +02:00
Eelco Dolstra
26e8a18ce7 polkit: Remove unnecessary restart
There already is a restart trigger that takes care of this.

(cherry picked from commit 4353220202)
2014-04-29 16:03:10 +02:00
Eelco Dolstra
97cb3ea472 wpa_supplicant: Restart when wlan devices (dis)appear
(cherry picked from commit cbfba813fe)
2014-04-29 10:09:10 +02:00
Eelco Dolstra
48234a5f3d cpufreq: Don't fail if the CPU doesn't support frequency setting
(cherry picked from commit f5cd4eef11)
2014-04-29 10:09:10 +02:00
Eelco Dolstra
08efdc72e6 gpm: Depend on /dev/input/mice
(cherry picked from commit 685ca50650)
2014-04-29 10:09:10 +02:00
Austin Seipp
abd636291f nixos: refactor tarsnap module
The Tarsnap module is now far more flexible, allowing individual
archives with individual options to be specified at will, allowing
granular backup schedules, etc.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 9242ed1fe2)
2014-04-28 18:17:56 -05:00
Austin Seipp
5b3a2abaa0 lockdep: 3.14 -> 3.14.2
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 7faaa9e6da)
2014-04-28 18:17:52 -05:00
Austin Seipp
63c27b367a minecraft-server: 1.7.5 -> 1.7.9
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit ec13d61cbf)
2014-04-28 18:17:48 -05:00
Austin Seipp
27261cc765 fmod: 4.44.32 -> 4.44.33
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit fec91fd092)
2014-04-28 15:28:29 -05:00
Austin Seipp
02d920f3c4 nixpkgs: verifast 13.11.14
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit aaa0304a45)
2014-04-28 15:28:29 -05:00
Rob Vermaas
9131402036 Fix EC2 creation script for latest nixops
(cherry picked from commit 361eb3a5f5)
(cherry picked from commit de1c182b0a)
2014-04-28 15:51:39 +02:00
Eelco Dolstra
aec0d8b0f5 apr: Update to 1.5.1
(cherry picked from commit 17336efdd8)
2014-04-28 15:51:39 +02:00
Eelco Dolstra
e874b13935 qemu: Apply patch for CVE-2014-0150, CVE-2014-2894
(cherry picked from commit 39faed1f2f)
2014-04-28 15:51:38 +02:00
Eelco Dolstra
b030f2bd8f Set the channel for this release 2014-04-28 15:50:36 +02:00
Eelco Dolstra
e1f2ba1f54 Bump some mentions of 13.10 2014-04-28 12:37:19 +02:00
Eelco Dolstra
e59a864a18 Update release notes 2014-04-28 12:13:16 +02:00
Eelco Dolstra
44e3b9e808 polkit: Restart using systemctl
The use of pkill is now particularly bad due to containers (it might
kill processes in containers).
2014-04-28 12:13:16 +02:00
Simon Hengel
e237476d64 Update haskell-base-compat to version 0.5.0
Closes #2431

Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 62b883070b)
2014-04-28 04:58:42 -05:00
Simon Hengel
9dfbab0b52 Update haskell-http-kit to version 0.2.1
Closes #2430

Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 692fc6fdc1)
2014-04-28 04:58:38 -05:00
Eelco Dolstra
673b2d1650 switch-to-configuration: Use old systemctl to stop units
Otherwise, when switching from systemd 203 to 212, you get errors like:

  Failed to stop remote-fs.target: Bad message
  Failed to stop systemd-udevd-control.socket: Bad message
  ...

(cherry picked from commit 56b4b841ae)
2014-04-28 09:20:50 +02:00
Eelco Dolstra
1417d2226f switch-to-configuration: Use systemctl's --no-legend flag
(cherry picked from commit 37e6e08cde)
2014-04-28 09:20:50 +02:00
Eelco Dolstra
b725dc2ed9 Give the KDE test more memory
(cherry picked from commit 7ddcd7b6b6)
2014-04-28 09:20:50 +02:00
Eelco Dolstra
b09da697d3 Make some tests release-critical
(cherry picked from commit 537c034e8f)
2014-04-28 09:20:49 +02:00
Eelco Dolstra
85c8b16fd4 Fix ‘nixos-container run’
By default, socat only waits 0.5s for the remote side to finish after
getting EOF on the local side. So don't close the local side, instead
wait for socat to exit when the remote side finishes.

http://hydra.nixos.org/build/10663282
(cherry picked from commit fec3b75e4b)
2014-04-28 09:20:49 +02:00
Austin Seipp
7644e30eb2 nixpkgs: remove cb1cat
Brice Minaud reported a simple attack on the CBEAM Pi permutation
function, resulting in it being withdrawn from CAESAR. :(

Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 111e1536e5)
2014-04-27 13:52:51 -05:00
Austin Seipp
3c4ee44079 hol_light: fix script, upgrade to r189
This also tweaks the version number to just use the SVN revision (rather
than date), since it's unambiguous and increasing anyway.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 0f1f2115e9)
2014-04-27 13:32:02 -05:00
Bjørn Forsman
d9e02c1df3 psmisc: (from upstream) Typo in fuser makes -M on all the time
(cherry picked from commit 6859853045)
2014-04-27 20:20:17 +02:00
Austin Seipp
3bd9a1ae03 nixpkgs: yices 2.2.1
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit da0c8f33ef)
2014-04-27 13:06:44 -05:00
aszlig
7109965cd5 chromium: Fix desktop icon and duplicate entry.
This should fix the desktop icon location for both desktop entries (the
one from the Chromium derivation itself and the wrapper) and renames the
name of the file so that it gets overridden by the wrappers desktop item
so we don't end up having two of them.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
(cherry picked from commit d8f8f31726)
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-04-27 18:53:36 +02:00
Austin Seipp
bea158d89c ats/ats2: clean-up, adopt, add Hydra packages
This also bumps ATS2 to version 0.0.7

Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit e590c0a867)
2014-04-27 11:26:40 -05:00
Austin Seipp
a0b81c40a2 kernel/grsecurity: stable/longterm/testing updates
kernels:

  - longterm: 3.4.87  -> 3.4.88
  - longterm: 3.10.37 -> 3.10.38
  - stable:   3.13.10 -> 3.13.11
  - stable:   3.14.1  -> 3.14.2

grsecurity:

  - test: 3.0-3.14.1-201404241722 -> 3.0-3.14.2-201404270907

NOTE: technically the 3.13 stable kernel is now EOL. However, it will
become the long-term grsecurity stable kernel, and will have ongoing
support from Canonical.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 92f7781f00)
2014-04-27 08:46:06 -05:00
Linquize
cc614c0d4c DisnixWebService: Fix broken build by exposing jdk as buildInputs
(cherry picked from commit 9cacabd5bb)
2014-04-27 06:01:33 -05:00
Domen Kožar
56285c17db pythonPackages.chameleon: 2.11 -> 2.15 2014-04-27 12:21:49 +02:00
Austin Seipp
a37635ee56 cryptol-mode: 0.1.0
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 9ef104cbad)
2014-04-26 12:51:35 -05:00
Domen Kožar
47def457a1 Make gnome3 test as release critical 2014-04-26 13:31:47 +02:00
Domen Kožar
6a9d230040 pythonPackages.pyramid: 1.4.5 -> 1.5 2014-04-26 12:15:32 +02:00
Austin Seipp
3073e062d6 btsync: 1.3.87 -> 1.3.93
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 4e15dbe34c)
2014-04-26 00:15:16 -05:00
宋文武
9a10937f32 love: update 0.9.0 -> 0.9.1
Changelog:
  https://www.love2d.org/wiki/0.9.1

(cherry picked from commit 0b99e20a3c)
2014-04-26 00:03:55 -05:00
Ricardo M. Correia
770cd1cd32 grsecurity: Update all patches
stable:  3.0-3.2.57-201404182109            -> 3.0-3.2.57-201404241714
test:    3.0-3.14.1-201404201132            -> 3.0-3.14.1-201404241722
vserver: 3.0-3.2.57-vs2.3.2.16-201404182110 -> 3.0-3.2.57-vs2.3.2.16-201404241715
(cherry picked from commit efae8ce543)
2014-04-25 14:25:57 -05:00
Austin Seipp
1062181037 nixpkgs: Add cryptol2 expression
This is just a convenient shorthand so people don't have to spell out
haskellPackages.cryptol

Note that the top-level expression is named 'cryptol2' but the package
isn't. That's because Cryptol is a library and other things could depend
on it (hence the vanilla name), but also the full name will be
disambiguated as 'haskell-cryptol-ghc7.6.3' anyway.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit e146a02d14)
2014-04-25 14:25:50 -05:00
Austin Seipp
5546e5b5a4 cryptol v2.0.0
This comes with several extra libraries, including GraphSCC, monadLib,
presburger, process and smtLib, all required as build dependencies. But
otherwise totally automated via cabal2nix.

Next up is CVC4 (a total pain in the ass to package) for proving/SAT
support.

I have another WIP branch for the unfree 1.x series which I may (or may
not) add later as it has external verification tech at the moment.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit 5401849e3a)
2014-04-25 14:25:30 -05:00
Austin Seipp
689d7e048d nixos: only enable spipe when user specifies
Signed-off-by: Austin Seipp <aseipp@pobox.com>
(cherry picked from commit b470c93c1e)
2014-04-25 14:25:23 -05:00
Eelco Dolstra
8851990313 debian: Update to 6.0.9
(cherry picked from commit 1bae93cb82)
2014-04-25 14:44:59 +02:00
Eelco Dolstra
dddbcae845 Urgh
Can't figure out why "hostname -s" keeps failing randomly :-(

http://hydra.nixos.org/build/10662142
(cherry picked from commit c52fb449f4)
2014-04-25 14:44:59 +02:00
Eelco Dolstra
1ddbdcdc2d cups: Add a listenAddresses option
(cherry picked from commit b8d59765e1)
2014-04-25 14:44:59 +02:00
Eelco Dolstra
c6d2739d4b Manual: Don't include the platform type of the host system
This causes unnecessary rebuilds of the manual.

http://hydra.nixos.org/build/10662170
(cherry picked from commit cd05320716)
2014-04-25 14:44:58 +02:00
Eelco Dolstra
8c65992314 Make nscd startup synchronous
Nscd forks into the background before it's ready to accept
connections. So explicitly wait until it's ready.

http://hydra.nixos.org/build/10661767
(cherry picked from commit 23297b0edd)
2014-04-25 14:44:58 +02:00
Eelco Dolstra
a58e004778 cups: Start after network.target
http://hydra.nixos.org/build/10661709
(cherry picked from commit d7a7f80aff)
2014-04-25 14:44:58 +02:00
Eelco Dolstra
109a2bee28 Remove outdated remark
(cherry picked from commit 2c70276d96)
2014-04-25 14:44:58 +02:00
Vladimír Čunát
4001f85b0c linux-3.12: bump .17 -> .18
(cherry picked from commit 116d52c6df)
2014-04-25 14:44:57 +02:00
Eelco Dolstra
c3917f4d84 Try again
(cherry picked from commit af817ae0d8)
2014-04-25 14:44:57 +02:00
Eelco Dolstra
feecc6067a Fix simpleTest function
(cherry picked from commit 019e9d8a3d)
2014-04-25 14:44:57 +02:00
Eelco Dolstra
0d5e3df9d9 Silence some Hydra evaluation warnings
(cherry picked from commit d304b277bd)
2014-04-25 14:44:37 +02:00
Shea Levy
ef618678b8 Add php 5.3 variant with fpm support
(cherry picked from commit e85b164df8)
2014-04-25 08:20:02 -04:00
aszlig
4a0c468043 python-django: Update to 1.4.11, 1.5.6 and 1.6.3.
This fixes CVE-2014-0472, details can be found at:

http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-0472
https://www.djangoproject.com/weblog/2014/apr/21/security/

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-04-25 12:24:58 +02:00
Shea Levy
18d2284d15 sproxy: bump
(cherry picked from commit d4cb80eaf4)
2014-04-24 13:29:03 -04:00
Shea Levy
7e375e9aa2 Add haskell-http-kit
(cherry picked from commit c7f2d87a56)
2014-04-24 13:28:54 -04:00
Mathijs Kwik
efd39af1f4 neoload: upgrade to 4.1.4 and fix mem issues
(cherry picked from commit d2edc329e1)
2014-04-24 15:29:14 +02:00
Mathijs Kwik
4e15c2ecc0 node.js - use bundled v8 :14.04-bugfix:
node needs v8 3.14, which is no longer maintained.
They bundle an in-tree version which does receive backports.

(cherry picked from commit 925c75c68d)
2014-04-24 15:28:35 +02:00
robberer
14fd47651a kde: “kdnssd” package is now called “zeroconf-ioslave”
Close #2358.

(cherry picked from commit a2fad89723)
2014-04-24 15:28:20 +02:00
Eelco Dolstra
c46e466c40 Make the misc test a bit more robust
(cherry picked from commit 2b7e746c02)
2014-04-24 15:25:36 +02:00
Eelco Dolstra
f171ed481b dhcpcd: Fix segfaults
This fixes several problems in the dhcpcd service:

* A segfault during startup, due to a race with udev (dhcpcd would get
  an ADD event from udev, causing it to re-add an interface that it
  already had, leading to a segfault later on).

* A hang/segfault processing "dhcpcd rebind" (which NixOS calls after
  waking up from suspend).

Also, add "lo" to the list of ignored interfaces. It usually ignores
"lo", but apparently not when it gets an ADD event from udev.

(cherry picked from commit 2d8c0d24f2)
2014-04-24 15:25:36 +02:00
Eelco Dolstra
242eadeb48 Remove some dead code
(cherry picked from commit 25af3671f9)
2014-04-24 15:25:35 +02:00
Eelco Dolstra
9cdf29589c Don't create world-readable swapfiles
(cherry picked from commit d4986b5fd3)
2014-04-24 15:25:35 +02:00
Luca Bruno
46c3c741b0 accountsservice: fix creating data under /var/lib
Signed-off-by: Domen Kožar <domen@dev.si>
2014-04-24 01:25:58 +02:00
Luca Bruno
0cb2766511 gnome-documents: new package
Document manager application designed to work with GNOME 3

https://wiki.gnome.org/Apps/Documents
Signed-off-by: Domen Kožar <domen@dev.si>
2014-04-24 01:25:58 +02:00
Luca Bruno
827c9be4e3 gnome-online-miners: new package
A set of crawlers that go through your online content and index them locally in Tracker

https://wiki.gnome.org/Projects/GnomeOnlineMiners
Signed-off-by: Domen Kožar <domen@dev.si>
2014-04-24 01:25:58 +02:00
Luca Bruno
36d73c923c gfbgraph: new package
GLib/GObject wrapper for the Facebook Graph API

Signed-off-by: Domen Kožar <domen@dev.si>
2014-04-24 01:25:58 +02:00
Luca Bruno
86a3024dc2 tracker: downgrade to 0.16
Signed-off-by: Domen Kožar <domen@dev.si>
2014-04-24 01:25:57 +02:00
Luca Bruno
14090a2fe3 glade: new package
User interface designer for GTK+ applications

https://wiki.gnome.org/Apps/Glade
Signed-off-by: Domen Kožar <domen@dev.si>
2014-04-24 01:25:57 +02:00
Luca Bruno
1c38eb71e6 gnome-music: new package
Music player and management application for the GNOME desktop environment

https://wiki.gnome.org/Apps/Music
Signed-off-by: Domen Kožar <domen@dev.si>
2014-04-24 01:25:56 +02:00
Luca Bruno
f1faa45bdb file-roller: delete hicolor icon cache
Signed-off-by: Domen Kožar <domen@dev.si>
2014-04-24 01:25:56 +02:00
Luca Bruno
b226e4af87 transmission-remote-gtk: delete hicolor icon cache
Signed-off-by: Domen Kožar <domen@dev.si>
2014-04-24 01:25:56 +02:00
Luca Bruno
372647f6ab totem: use grilo plugins
Signed-off-by: Domen Kožar <domen@dev.si>
2014-04-24 01:25:55 +02:00
Luca Bruno
18ced7db7b grilo-plugins: new package
A collection of plugins for the Grilo framework

https://wiki.gnome.org/action/show/Projects/Grilo
Signed-off-by: Domen Kožar <domen@dev.si>
2014-04-24 01:25:55 +02:00
Luca Bruno
7e5a05ce9b grilo: enable grl-net
Signed-off-by: Domen Kožar <domen@dev.si>
2014-04-24 01:25:54 +02:00
Luca Bruno
0c84492519 seahorse: new package
Application for managing encryption keys and passwords in the GnomeKeyring

https://wiki.gnome.org/Apps/Seahorse
Signed-off-by: Domen Kožar <domen@dev.si>
2014-04-24 01:25:54 +02:00
Luca Bruno
ae7ea8dc06 gnome3: prioritize nautilus when opening inode/directory
Signed-off-by: Domen Kožar <domen@dev.si>
2014-04-24 01:25:54 +02:00
Luca Bruno
5ca1f24a96 grilo: enable gobject introspection
Signed-off-by: Domen Kožar <domen@dev.si>
2014-04-24 01:25:53 +02:00
Luca Bruno
973f83d91a xdg-user-dirs: fix finding default directory names
Signed-off-by: Domen Kožar <domen@dev.si>
2014-04-24 01:25:53 +02:00
Luca Bruno
2f9b9de73c libmediaart: new library used by gnome-music
Library tasked with managing, extracting and handling media art caches

Signed-off-by: Domen Kožar <domen@dev.si>
2014-04-24 01:25:53 +02:00
Luca Bruno
afbe2b6720 gnome3: moved gnome-desktop from desktop/ to core/
Signed-off-by: Domen Kožar <domen@dev.si>
2014-04-24 01:25:52 +02:00
Luca Bruno
85f8efc834 gnome3: moved gtksourceview from desktop/ to core/
Signed-off-by: Domen Kožar <domen@dev.si>
2014-04-24 01:25:52 +02:00
Luca Bruno
b845776a90 gnome3: moved file-roller from desktop/ to apps/
Signed-off-by: Domen Kožar <domen@dev.si>
2014-04-24 01:25:52 +02:00
Luca Bruno
7043225be2 gedit: new package
Official text editor of the GNOME desktop environment

https://wiki.gnome.org/Apps/Gedit
Signed-off-by: Domen Kožar <domen@dev.si>
2014-04-24 01:25:51 +02:00
Bjørn Forsman
e46e9fe4ac thrift: unbreak build
Add a tiny patch (already upstream) that fixes this build error:

  <flex>/lib/libfl.so: undefined reference to `yylex'

(cherry picked from commit 83d0fd3078)
2014-04-23 21:53:42 +02:00
Shea Levy
4dda8b76fe Add gcc-4.9.0
(cherry picked from commit a3b1f48c5d)
2014-04-23 10:47:53 -04:00
Lluís Batlle i Rossell
bc4361ee29 Making nvidia build with linux 3.14. Patch not needed anymore. 2014-04-23 16:04:02 +02:00
Eelco Dolstra
e001ac6a9e Fix meta.maintainer -> meta.maintainers
(cherry picked from commit dbd332d147)
2014-04-23 15:17:14 +02:00
1497 changed files with 18253 additions and 10122 deletions

5
.travis.yml Normal file
View File

@@ -0,0 +1,5 @@
language: python
python: "3.4"
before_install: ./maintainers/scripts/travis-nox-review-pr.sh nix
install: ./maintainers/scripts/travis-nox-review-pr.sh nox
script: ./maintainers/scripts/travis-nox-review-pr.sh build

View File

@@ -21,18 +21,18 @@ all: NEWS.html NEWS.txt manual.html manual.pdf
NEWS.html: release-notes.xml
$(XSLTPROC) --nonet --xinclude --output $@ $(NEWS_OPTS) \
$(docbookxsl)/html/docbook.xsl release-notes.xml
$(docbookxsl)/xhtml/docbook.xsl release-notes.xml
NEWS.txt: release-notes.xml
$(XSLTPROC) --nonet --xinclude quote-literals.xsl release-notes.xml | \
$(XSLTPROC) --nonet --output $@.tmp.html $(NEWS_OPTS) \
$(docbookxsl)/html/docbook.xsl -
$(docbookxsl)/xhtml/docbook.xsl -
LANG=en_US w3m -dump $@.tmp.html > $@
rm $@.tmp.html
manual.html: *.xml
$(XSLTPROC) --nonet --xinclude --output manual.html \
$(docbookxsl)/html/docbook.xsl manual.xml
$(docbookxsl)/xhtml/docbook.xsl manual.xml
manual.pdf: *.xml
$(dblatex) \

21
doc/contributing.xml Normal file
View File

@@ -0,0 +1,21 @@
<chapter xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xml:id="chap-contributing">
<title>Contributing</title>
<para>If you make modifications to the manual, it's important to build the manual before contributing:</para>
<orderedlist>
<listitem><para><command>$ git clone git://github.com/NixOS/nixpkgs.git</command></para></listitem>
<listitem><para><command>$ cd nixpkgs/pkgs/top-level</command></para></listitem>
<listitem><para><command>$ nix-build -A tarball release.nix</command></para></listitem>
<listitem><para>Inside the built derivation you shall see <literal>manual/index.html</literal> file.</para></listitem>
</orderedlist>
</chapter>

View File

@@ -32,6 +32,7 @@
<xi:include href="language-support.xml" />
<xi:include href="package-notes.xml" />
<xi:include href="coding-conventions.xml" />
<xi:include href="contributing.xml" />
</book>

View File

@@ -17,7 +17,9 @@ meta = {
It is fully customizable.
'';
homepage = http://www.gnu.org/software/hello/manual/;
license = "GPLv3+";
license = stdenv.lib.licenses.gpl3Plus;
maintainers = [ stdenv.lib.maintainers.eelco ];
platforms = stdenv.lib.platforms.all;
};
</programlisting>
@@ -31,16 +33,42 @@ the package. The value of a meta-attribute must a string.</para>
command-line using <command>nix-env</command>:
<screen>
$ nix-env -qa hello --meta --xml
&lt;?xml version='1.0' encoding='utf-8'?>
&lt;items>
&lt;item attrPath="hello" name="hello-2.3" system="i686-linux">
&lt;meta name="description" value="A program that produces a familiar, friendly greeting" />
&lt;meta name="homepage" value="http://www.gnu.org/software/hello/manual/" />
&lt;meta name="license" value="GPLv3+" />
&lt;meta name="longDescription" value="GNU Hello is a program that prints &amp;quot;Hello, world!&amp;quot; when you run it.&amp;#xA;It is fully customizable.&amp;#xA;" />
&lt;/item>
&lt;/items>
$ nix-env -qa hello --meta --json
{
"hello": {
"meta": {
"description": "A program that produces a familiar, friendly greeting",
"homepage": "http://www.gnu.org/software/hello/manual/",
"license": {
"fullName": "GNU General Public License version 3 or later",
"shortName": "GPLv3+",
"url": "http://www.fsf.org/licensing/licenses/gpl.html"
},
"longDescription": "GNU Hello is a program that prints \"Hello, world!\" when you run it.\nIt is fully customizable.\n",
"maintainers": [
"Ludovic Court\u00e8s &lt;ludo@gnu.org>"
],
"platforms": [
"i686-linux",
"x86_64-linux",
"armv5tel-linux",
"armv7l-linux",
"mips64el-linux",
"x86_64-darwin",
"i686-cygwin",
"i686-freebsd",
"x86_64-freebsd",
"i686-openbsd",
"x86_64-openbsd"
],
"position": "/home/user/dev/nixpkgs/pkgs/applications/misc/hello/ex-2/default.nix:14"
},
"name": "hello-2.9",
"system": "x86_64-linux"
}
}
</screen>
<command>nix-env</command> knows about the
@@ -92,20 +120,23 @@ interpretation:</para>
<varlistentry>
<term><varname>license</varname></term>
<listitem><para>The license for the package. See below for the
allowed values.</para></listitem>
<listitem><para>The license for the package. One from attribute set defined in
<link xlink:href="https://github.com/NixOS/nixpkgs/blob/master/lib/licenses.nix">
<filename>nixpkgs/lib/licenses.nix</filename></link>.
Example:
<literal>stdenv.lib.licenses.gpl3</literal>.</para></listitem>
See details in <xref linkend='sec-meta-license'/>,
</varlistentry>
<varlistentry>
<term><varname>maintainers</varname></term>
<listitem><para>A list of names and e-mail addresses of the
maintainers of this Nix expression, e.g. <literal>["Alice
&lt;alice@example.org>" "Bob &lt;bob@example.com>"]</literal>. If
you are the maintainer of multiple packages, you may want to add
maintainers of this Nix expression. If
you would like to be a maintainer of a package, you may want to add
yourself to <link
xlink:href="https://github.com/NixOS/nixpkgs/blob/master/pkgs/lib/maintainers.nix"><filename>pkgs/lib/maintainers.nix</filename></link>
and write something like <literal>[stdenv.lib.maintainers.alice
stdenv.lib.maintainers.bob]</literal>.</para></listitem>
xlink:href="https://github.com/NixOS/nixpkgs/blob/master/lib/maintainers.nix"><filename>nixpkgs/lib/maintainers.nix</filename></link>
and write something like <literal>[ stdenv.lib.maintainers.alice
stdenv.lib.maintainers.bob ]</literal>.</para></listitem>
</varlistentry>
<varlistentry>
@@ -121,29 +152,25 @@ interpretation:</para>
<varlistentry>
<term><varname>platforms</varname></term>
<listitem><para>The list of Nix platform types on which the
package is supported. If this attribute is set, the package will
refuse to build, and wont show up in <literal>nix-env
-qa</literal> output, on any platform not listed
here. An example is:
package is supported. Hydra builds packages according to the
platform specified. If no platform is specified, the package does
not have prebuilt binaries. An example is:
<programlisting>
meta.platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" ];
</programlisting>
The set <varname>lib.platforms</varname> defines various common
lists of platforms types, so its more typical to write:
<programlisting>
meta.platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
meta.platforms = stdenv.lib.platforms.linux;
</programlisting>
Attribute Set <varname>stdenv.lib.platforms</varname> in
<link xlink:href="https://github.com/NixOS/nixpkgs/blob/master/lib/platforms.nix">
<filename>nixpkgs/lib/platforms.nix</filename></link> defines various common
lists of platforms types.
</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>hydraPlatforms</varname></term>
<listitem><para>The list of Nix platform types for which the Hydra
instance at <literal>hydra.nixos.org</literal> should build the
instance at <literal>hydra.nixos.org</literal> will build the
package. (Hydra is the Nix-based continuous build system.) It
defaults to the value of <varname>meta.platforms</varname>. Thus,
the only reason to set <varname>meta.hydraPlatforms</varname> is
@@ -176,80 +203,23 @@ meta.hydraPlatforms = [];
<section xml:id="sec-meta-license"><title>Licenses</title>
<note><para>This is just a first attempt at standardising the license
attribute.</para></note>
<para>The <varname>meta.license</varname> attribute must be one of the
following:
<para>The <varname>meta.license</varname> attribute should preferrably contain
a value from <varname>stdenv.lib.licenses</varname> defined in
<link xlink:href="https://github.com/NixOS/nixpkgs/blob/master/lib/licenses.nix">
<filename>nixpkgs/lib/licenses.nix</filename></link>,
or in-place license description of the same format if the license is
unlikely to be useful in another expression.
A few generic options are available, although it's typically better
to indicate the specific license:
<variablelist>
<varlistentry>
<term><varname>GPL</varname></term>
<listitem><para>GNU General Public License; version not
specified.</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>GPLv2</varname></term>
<listitem><para>GNU General Public License, version
2.</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>GPLv2+</varname></term>
<listitem><para>GNU General Public License, version
2 or higher.</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>GPLv3</varname></term>
<listitem><para>GNU General Public License, version
3.</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>GPLv3+</varname></term>
<listitem><para>GNU General Public License, version
3 or higher.</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>bsd</varname></term>
<listitem><para>Catch-all for licenses that are essentially
similar to <link
xlink:href="http://www.gnu.org/licenses/license-list.html#ModifiedBSD">the
original BSD license with the advertising clause removed</link>,
i.e. permissive non-copyleft free software licenses. This
includes the <link
xlink:href="http://www.gnu.org/licenses/license-list.html#X11License">X11
(“MIT”) License</link>.</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>perl5</varname></term>
<listitem><para>The Perl 5 license (Artistic License, version 1
and GPL, version 1 or later).</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>free</varname></term>
<listitem><para>Catch-all for free software licenses not listed
above.</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>free-copyleft</varname></term>
<listitem><para>Catch-all for free, copyleft software licenses not
listed above.</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>free-non-copyleft</varname></term>
<listitem><para>Catch-all for free, non-copyleft software licenses
not listed above.</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>unfree-redistributable</varname></term>
<listitem><para>Unfree package that can be redistributed in binary

View File

@@ -155,9 +155,10 @@ $ git add pkgs/development/libraries/libfoo/default.nix</screen>
</listitem>
<listitem>
<para>You can use <command>nix-prefetch-url</command>
<para>You can use <command>nix-prefetch-url</command> (or similar nix-prefetch-git, etc)
<replaceable>url</replaceable> to get the SHA-256 hash of
source distributions.</para>
source distributions. There are similar commands as <command>nix-prefetch-git</command> and
<command>nix-prefetch-hg</command> available in <literal>nix-prefetch-scripts</literal> package.</para>
</listitem>
<listitem>
@@ -221,17 +222,10 @@ $ nix-env -f . -iA libfoo</screen>
</listitem>
<listitem>
<para>Optionally commit the new package, or send a patch to
<para>Optionally commit the new package and open a pull request, or send a patch to
<literal>nix-dev@cs.uu.nl</literal>.</para>
</listitem>
<listitem>
<para>If you want the TU Delft build farm to build binaries of the
package and make them available in the <link
xlink:href="http://nixos.org/releases/nixpkgs/channels/nixpkgs-unstable/"><literal>nixpkgs</literal>
channel</link>, add it to <link
xlink:href="https://github.com/NixOS/nixpkgs/blob/master/pkgs/top-level/release.nix"><filename>pkgs/top-level/release.nix</filename></link>.</para>
</listitem>
</orderedlist>

View File

@@ -446,7 +446,7 @@ xlink:href='http://nixos.org/releases/nix/nix-0.10/'>Nix
<literal>stdenv</literal>; the formed changes the C compiler, and
the latter adds additional packages to the front of
<literal>stdenv</literal>s initial <envar>PATH</envar>, allowing
tools to be overriden.</para>
tools to be overridden.</para>
<para>For instance, the package <varname>strategoxt</varname>
doesnt build with the GNU Make in <literal>stdenv</literal>

View File

@@ -56,7 +56,7 @@ details.)</para>
<para>Often it is necessary to override or modify some aspect of the
build. To make this easier, the standard environment breaks the
package build into a number of <emphasis>phases</emphasis>, all of
which can be overriden or modified individually: unpacking the
which can be overridden or modified individually: unpacking the
sources, applying patches, configuring, building, and installing.
(There are some others; see <xref linkend="ssec-stdenv-phases"/>.)
For instance, a package that doesnt supply a makefile but instead has
@@ -233,7 +233,7 @@ specific parts of the build (e.g., unpacking the sources or installing
the binaries). Furthermore, it allows a nicer presentation of build
logs in the Nix build farm.</para>
<para>Each phase can be overriden in its entirety either by setting
<para>Each phase can be overridden in its entirety either by setting
the environment variable
<varname><replaceable>name</replaceable>Phase</varname> to a string
containing some shell commands to be executed, or by redefining the

View File

@@ -18,19 +18,23 @@
aszlig = "aszlig <aszlig@redmoonstudios.org>";
bbenoist = "Baptist BENOIST <return_0@live.com>";
bennofs = "Benno Fünfstück <benno.fuenfstueck@gmail.com>";
berdario = "Dario Bertini <berdario@gmail.com>";
bjg = "Brian Gough <bjg@gnu.org>";
bjornfor = "Bjørn Forsman <bjorn.forsman@gmail.com>";
bluescreen303 = "Mathijs Kwik <mathijs@bluescreen303.nl>";
bodil = "Bodil Stokke <nix@bodil.org>";
calrama = "Moritz Maxeiner <moritz@ucworks.org>";
cfouche = "Chaddaï Fouché <chaddai.fouche@gmail.com>";
chaoflow = "Florian Friesdorf <flo@chaoflow.net>";
coconnor = "Corey O'Connor <coreyoconnor@gmail.com>";
coroa = "Jonas Hörsch <jonas@chaoflow.net>";
cstrahan = "Charles Strahan <charles.c.strahan@gmail.com>";
edwtjo = "Edward Tjörnhammar <ed@cflags.cc>";
eelco = "Eelco Dolstra <eelco.dolstra@logicblox.com>";
emery = "Emery Hemingawy <emery@vfemail.net>";
ertes = "Ertugrul Söylemez <ertesx@gmx.de>";
falsifian = "James Cook <james.cook@utoronto.ca>";
fuuzetsu = "Mateusz Kowalczyk <fuuzetsu@fuuzetsu.co.uk>";
garbas = "Rok Garbas <rok@garbas.si>";
goibhniu = "Cillian de Róiste <cillian.deroiste@gmail.com>";
guibert = "David Guibert <david.guibert@gmail.com>";
@@ -64,6 +68,7 @@
qknight = "Joachim Schiele <js@lastlog.de>";
raskin = "Michael Raskin <7c6f434c@mail.ru>";
redbaron = "Maxim Ivanov <ivanov.maxim@gmail.com>";
relrod = "Ricky Elrod <ricky@elrod.me>";
rickynils = "Rickard Nilsson <rickynils@gmail.com>";
rob = "Rob Vermaas <rob.vermaas@gmail.com>";
roconnor = "Russell O'Connor <roconnor@theorem.ca>";
@@ -81,12 +86,14 @@
tomberek = "Thomas Bereknyei <tomberek@gmail.com>";
ttuegel = "Thomas Tuegel <ttuegel@gmail.com>";
urkud = "Yury G. Kudryashov <urkud+nix@ya.ru>";
vbmithr = "Vincent Bernardoff <vb@luminar.eu.org>";
vcunat = "Vladimír Čunát <vcunat@gmail.com>";
viric = "Lluís Batlle i Rossell <viric@viric.name>";
vizanto = "Danny Wilson <danny@prime.vc>";
vlstill = "Vladimír Štill <xstill@fi.muni.cz>";
winden = "Antonio Vargas Gonzalez <windenntw@gmail.com>";
wizeman = "Ricardo M. Correia <rcorreia@wizy.org>";
wmertens = "Wout Mertens <Wout.Mertens@gmail.com>";
z77z = "Marco Maggesi <maggesi@math.unifi.it>";
zef = "Zef Hemel <zef@zef.me>";
zimbatm = "zimbatm <zimbatm@zimbatm.com>";

View File

@@ -319,6 +319,8 @@ rec {
mkForce = mkOverride 50;
mkVMOverride = mkOverride 10; # used by nixos-rebuild build-vm
mkStrict = builtins.trace "`mkStrict' is obsolete; use `mkOverride 0' instead." (mkOverride 0);
mkFixStrictness = id; # obsolete, no-op
mkOrder = priority: content:

View File

@@ -2,7 +2,7 @@ let lists = import ./lists.nix; in
rec {
gnu = linux; /* ++ hurd ++ kfreebsd ++ ... */
linux = ["i686-linux" "x86_64-linux" "armv5tel-linux" "armv7l-linux" "mips64el-linux"];
linux = ["i686-linux" "x86_64-linux" "armv5tel-linux" "armv6l-linux" "armv7l-linux" "mips64el-linux"];
darwin = ["x86_64-darwin"];
freebsd = ["i686-freebsd" "x86_64-freebsd"];
openbsd = ["i686-openbsd" "x86_64-openbsd"];

View File

@@ -160,6 +160,16 @@ rec {
else
s;
removeSuffix = suf: s:
let
sufLen = stringLength suf;
sLen = stringLength s;
in
if sufLen <= sLen && suf == substring (sLen - sufLen) sufLen s then
substring 0 (sLen - sufLen) s
else
s;
# Return true iff string v1 denotes a version older than v2.
versionOlder = v1: v2: builtins.compareVersions v2 v1 == 1;

View File

@@ -194,6 +194,18 @@ rec {
args = { name = ""; }; }).options;
};
enum = values: mkOptionType {
name = "one of ${concatStringsSep ", " values}";
check = flip elem values;
merge = mergeOneOption;
};
either = t1: t2: mkOptionType {
name = "${t1.name} or ${t2.name}";
check = x: t1.check x || t2.check x;
merge = mergeOneOption;
};
# Obsolete alternative to configOf. It takes its option
# declarations from the options attribute of containing option
# declaration.

View File

@@ -75,7 +75,6 @@ foreach my $file (@{$data->{list}->{attrs}}) {
waitpid($pid, 0) or die;
if ($? != 0) {
print STDERR "failed to fetch $url: $?\n";
last if $? >> 8 == 255;
next;
}
<$fh>; my $storePath = <$fh>; chomp $storePath;
@@ -92,4 +91,7 @@ foreach my $file (@{$data->{list}->{attrs}}) {
my $sha256 = hashFile("sha256", 0, $storePath) or die;
symlink("../$fn", "$tarballsCache/sha256/$sha256");
$sha256 = hashFile("sha256", 1, $storePath) or die;
symlink("../$fn", "$tarballsCache/sha256/$sha256");
}

View File

@@ -0,0 +1,42 @@
#! /usr/bin/env bash
set -e
export NIX_CURL_FLAGS=-sS
if [[ $1 == nix ]]; then
echo "=== Installing Nix..."
# Install Nix
bash <(curl -sS https://nixos.org/nix/install)
source $HOME/.nix-profile/etc/profile.d/nix.sh
# Make sure we can use hydra's binary cache
sudo mkdir /etc/nix
sudo tee /etc/nix/nix.conf <<EOF >/dev/null
binary-caches = http://cache.nixos.org http://hydra.nixos.org
trusted-binary-caches = http://hydra.nixos.org
build-max-jobs = 4
EOF
# Verify evaluation
echo "=== Verifying that nixpkgs evaluates..."
nix-env -f. -qa --json >/dev/null
elif [[ $1 == nox ]]; then
echo "=== Installing nox..."
git clone -q https://github.com/madjar/nox
pip --quiet install -e nox
elif [[ $1 == build ]]; then
source $HOME/.nix-profile/etc/profile.d/nix.sh
if [[ $TRAVIS_PULL_REQUEST == false ]]; then
echo "===> Not a pull request, checking evaluation"
nix-build pkgs/top-level/release.nix -A tarball
else
echo "=== Checking PR"
# The current HEAD is the PR merged into origin/master, so we compare
# against origin/master
nox-review wip --against origin/master
fi
else
echo "$0: Unknown option $1" >&2
false
fi

View File

@@ -1195,7 +1195,7 @@ driver from a set of X.org drivers (such as <literal>vesa</literal>
and <literal>intel</literal>). You can also specify a driver
manually, e.g.
<programlisting>
hardware.opengl.videoDrivers = [ "r128" ];
services.xserver.videoDrivers = [ "r128" ];
</programlisting>
to enable X.orgs <literal>xf86-video-r128</literal> driver.</para>
@@ -1238,7 +1238,7 @@ $ systemctl start display-manager.service
has better 3D performance than the X.org drivers. It is not enabled
by default because its not free software. You can enable it as follows:
<programlisting>
hardware.opengl.videoDrivers = [ "nvidia" ];
services.xserver.videoDrivers = [ "nvidia" ];
</programlisting>
You may need to reboot after enabling this driver to prevent a clash
with other kernel modules.</para>

View File

@@ -5,22 +5,31 @@ with pkgs.lib;
let
# Remove invisible and internal options.
options' = filter (opt: opt.visible && !opt.internal) (optionAttrSetToDocList options);
optionsList = filter (opt: opt.visible && !opt.internal) (optionAttrSetToDocList options);
# Replace functions by the string <function>
substFunction = x:
if builtins.isAttrs x then mapAttrs (name: substFunction) x
else if builtins.isList x then map substFunction x
else if builtins.isFunction x then "<function>"
else x;
# Clean up declaration sites to not refer to the NixOS source tree.
options'' = flip map options' (opt: opt // {
optionsList' = flip map optionsList (opt: opt // {
declarations = map (fn: stripPrefix fn) opt.declarations;
});
}
// optionalAttrs (opt ? example) { example = substFunction opt.example; }
// optionalAttrs (opt ? default) { default = substFunction opt.default; });
prefix = toString pkgs.path;
prefix = toString ../../..;
stripPrefix = fn:
if substring 0 (stringLength prefix) fn == prefix then
substring (add (stringLength prefix) 1) 1000 fn
substring (stringLength prefix + 1) 1000 fn
else
fn;
optionsXML = builtins.toFile "options.xml" (builtins.unsafeDiscardStringContext (builtins.toXML options''));
optionsXML = builtins.toFile "options.xml" (builtins.unsafeDiscardStringContext (builtins.toXML optionsList'));
optionsDocBook = pkgs.runCommand "options-db.xml" {} ''
if grep /nixpkgs/nixos/modules ${optionsXML}; then
@@ -37,6 +46,26 @@ let
in rec {
# The NixOS options in JSON format.
optionsJSON = pkgs.stdenv.mkDerivation {
name = "options-json";
buildCommand = ''
# Export list of options in different format.
dst=$out/share/doc/nixos
mkdir -p $dst
cp ${builtins.toFile "options.json" (builtins.unsafeDiscardStringContext (builtins.toJSON
(listToAttrs (map (o: { name = o.name; value = removeAttrs o ["name" "visible" "internal"]; }) optionsList'))))
} $dst/options.json
mkdir -p $out/nix-support
echo "file json $dst/options.json" >> $out/nix-support/hydra-build-products
''; # */
meta.description = "List of NixOS options in JSON format";
};
# Generate the NixOS manual.
manual = pkgs.stdenv.mkDerivation {
name = "nixos-manual";

View File

@@ -39,7 +39,37 @@ This will check out the latest NixOS sources to
and the Nixpkgs sources to
<filename><replaceable>/my/sources</replaceable>/nixpkgs</filename>.
(The NixOS source tree lives in a subdirectory of the Nixpkgs
repository.) If you want to rebuild your system using your (modified)
repository.)</para>
<para>Its often inconvenient to develop directly on the master
branch, since if somebody has just committed (say) a change to GCC,
then the binary cache may not have caught up yet and youll have to
rebuild everything from source. So you may want to create a local
branch based on your current NixOS version:
<screen>
$ nixos-version
14.04.273.ea1952b (Baboon)
$ git checkout -b local ea1952b
</screen>
Or, to base your local branch on the latest version available in the
NixOS channel:
<screen>
$ curl -sI http://nixos.org/channels/nixos-unstable/ | grep Location
Location: http://releases.nixos.org/nixos/unstable/nixos-14.10pre43986.acaf4a6/
$ git checkout -b local acaf4a6
</screen>
You can then use <command>git rebase</command> to sync your local
branch with the upstream branch, and use <command>git
cherry-pick</command> to copy commits from your local branch to the
upstream branch.</para>
<para>If you want to rebuild your system using your (modified)
sources, you need to tell <command>nixos-rebuild</command> about them
using the <option>-I</option> flag:

View File

@@ -318,8 +318,7 @@ changes:
</listitem>
<listitem>
<para>You must set <option>boot.loader.gummiboot.enable</option> to
<literal>true</literal>, and <option>boot.loader.grub.enable</option>
to <literal>false</literal>. <command>nixos-generate-config</command>
<literal>true</literal>. <command>nixos-generate-config</command>
should do this automatically for new configurations when booted in
UEFI mode.</para>
</listitem>
@@ -473,7 +472,7 @@ been built. These channels are:
<itemizedlist>
<listitem>
<para>Stable channels, such as <literal
xlink:href="http://nixos.org/channels/nixos-13.10">nixos-13.10</literal>.
xlink:href="http://nixos.org/channels/nixos-14.04">nixos-14.04</literal>.
These only get conservative bug fixes and package upgrades. For
instance, a channel update may cause the Linux kernel on your
system to be upgraded from 3.4.66 to 3.4.67 (a minor bug fix), but
@@ -499,8 +498,8 @@ appliances.)</para>
<para>When you first install NixOS, youre automatically subscribed to
the NixOS channel that corresponds to your installation source. For
instance, if you installed from a 13.10 ISO, you will be subscribed to
the <literal>nixos-13.10</literal> channel. To see which NixOS
instance, if you installed from a 14.04 ISO, you will be subscribed to
the <literal>nixos-14.04</literal> channel. To see which NixOS
channel youre subscribed to, run the following as root:
<screen>
@@ -515,10 +514,10 @@ $ nix-channel --add http://nixos.org/channels/<replaceable>channel-name</replace
</screen>
(Be sure to include the <literal>nixos</literal> parameter at the
end.) For instance, to use the NixOS 13.10 stable channel:
end.) For instance, to use the NixOS 14.04 stable channel:
<screen>
$ nix-channel --add http://nixos.org/channels/nixos-13.10 nixos
$ nix-channel --add http://nixos.org/channels/nixos-14.04 nixos
</screen>
But it you want to live on the bleeding edge:

View File

@@ -1,4 +1,5 @@
<appendix xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xml:id="ch-release-notes">
<title>Release notes</title>
@@ -7,10 +8,11 @@
<section xml:id="sec-release-14.04">
<title>Release 14.04 (“Baboon”, 2014/04/??)</title>
<title>Release 14.04 (“Baboon”, 2014/04/30)</title>
<para>This is the second stable release branch of NixOS. The main
enhancements are the following:
<para>This is the second stable release branch of NixOS. In addition
to numerous new and upgraded packages and modules, this release has
the following highlights:
<itemizedlist>
@@ -18,9 +20,65 @@ enhancements are the following:
<xref linkend="sec-uefi-installation"/> for
details.</para></listitem>
<listitem><para>Systemd has been updated to version 212, which has
<link xlink:href="http://cgit.freedesktop.org/systemd/systemd/plain/NEWS?id=v212">numerous
improvements</link>. NixOS now automatically starts systemd user
instances when you log in. You can define global user units through
the <option>systemd.unit.*</option> options.</para></listitem>
<listitem><para>NixOS is now based on Glibc 2.19 and GCC
4.8.</para></listitem>
<listitem><para>The default Linux kernel has been updated to
3.12.</para></listitem>
<listitem><para>KDE has been updated to 4.12.</para></listitem>
<listitem><para>GNOME 3.10 experimental support has been added.</para></listitem>
<listitem><para>Nix has been updated to 1.7 (<link
xlink:href="http://nixos.org/nix/manual/#ssec-relnotes-1.7">details</link>).</para></listitem>
<listitem><para>NixOS now supports fully declarative management of
users and groups. If you set <option>users.mutableUsers</option> to
<literal>false</literal>, then the contents of
<filename>/etc/passwd</filename> and <filename>/etc/group</filename>
will be <link
xlink:href="https://www.usenix.org/legacy/event/lisa02/tech/full_papers/traugott/traugott_html/">congruent</link>
to your NixOS configuration. For instance, if you remove a user from
<option>users.extraUsers</option> and run
<command>nixos-rebuild</command>, the user account will cease to
exist. Also, imperative commands for managing users and groups, such
as <command>useradd</command>, are no longer available. If
<option>users.mutableUsers</option> is <literal>true</literal> (the
default), then behaviour is unchanged from NixOS
13.10.</para></listitem>
<listitem><para>NixOS now has basic container support, meaning you
can easily run a NixOS instance as a container in a NixOS host
system. These containers are suitable for testing and
experimentation but not production use, since theyre not fully
isolated from the host. See <xref linkend="ch-containers"/> for
details.</para></listitem>
<listitem><para>Systemd units provided by packages can now be
overridden from the NixOS configuration. For instance, if a package
<literal>foo</literal> provides systemd units, you can say:
<programlisting>
systemd.packages = [ pkgs.foo ];
</programlisting>
to enable those units. You can then set or override unit options in
the usual way, e.g.
<programlisting>
systemd.services.foo.wantedBy = [ "multi-user.target" ];
systemd.services.foo.serviceConfig.MemoryLimit = "512M";
</programlisting>
</para></listitem>
</itemizedlist>
</para>
@@ -47,6 +105,18 @@ error: package nvidia-x11-331.49-3.12.17 in ‘…/nvidia-x11/default.nix:
</para></listitem>
<listitem><para>The Adobe Flash player is no longer enabled by
default in the Firefox and Chromium wrappers. To enable it, you must
set:
<programlisting>
nixpkgs.config.allowUnfree = true;
nixpkgs.config.firefox.enableAdobeFlash = true; # for Firefox
nixpkgs.config.chromium.enableAdobeFlash = true; # for Chromium
</programlisting>
</para></listitem>
<listitem><para>The firewall is now enabled by default. If you dont
want this, you need to disable it explicitly:
@@ -65,6 +135,28 @@ networking.firewall.enable = false;
sets a default for the option
<option>services.mysql.package</option>.</para></listitem>
<listitem><para>Package variants are now differentiated by suffixing
the name, rather than the version. For instance,
<filename>sqlite-3.8.4.3-interactive</filename> is now called
<filename>sqlite-interactive-3.8.4.3</filename>. This ensures that
<literal>nix-env -i sqlite</literal> is unambiguous, and that
<literal>nix-env -u</literal> wont “upgrade”
<literal>sqlite</literal> to <literal>sqlite-interactive</literal>
or vice versa. Notably, this change affects the Firefox wrapper
(which provides plugins), as it is now called
<literal>firefox-wrapper</literal>. So when using
<command>nix-env</command>, you should do <literal>nix-env -e
firefox; nix-env -i firefox-wrapper</literal> if you want to keep
using the wrapper. This change does not affect declarative package
management, since attribute names like
<literal>pkgs.firefoxWrapper</literal> were already
unambiguous.</para></listitem>
<listitem><para>The symlink <filename>/etc/ca-bundle.crt</filename>
is gone. Programs should instead use the environment variable
<envar>OPENSSL_X509_CERT_FILE</envar> (which points to
<filename>/etc/ssl/certs/ca-bundle.crt</filename>).</para></listitem>
</itemizedlist>
</para>

View File

@@ -482,7 +482,7 @@ sub screenshot {
my $name = basename($filename);
$self->nest("making screenshot $name", sub {
$self->sendMonitorCommand("screendump $tmp");
system("convert $tmp ${filename}") == 0
system("pnmtopng $tmp > ${filename}") == 0
or die "cannot convert screenshot";
unlink $tmp;
}, { image => $name } );

View File

@@ -9,8 +9,8 @@
<xsl:template match="logfile">
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js"></script>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js"></script>
<script type="text/javascript" src="treebits.js" />
<link rel="stylesheet" href="logfile.css" type="text/css" />
<title>Log File</title>

View File

@@ -27,7 +27,7 @@ rec {
cp ${./test-driver/Logger.pm} $libDir/Logger.pm
wrapProgram $out/bin/nixos-test-driver \
--prefix PATH : "${pkgs.qemu_kvm}/bin:${pkgs.vde2}/bin:${imagemagick}/bin:${coreutils}/bin" \
--prefix PATH : "${qemu_kvm}/bin:${vde2}/bin:${netpbm}/bin:${coreutils}/bin" \
--prefix PERL5LIB : "${lib.makePerlPath [ perlPackages.TermReadLineGnu perlPackages.XMLWriter perlPackages.IOTty ]}:$out/lib/perl5/site_perl"
'';
};
@@ -41,7 +41,7 @@ rec {
requiredSystemFeatures = [ "kvm" "nixos-test" ];
buildInputs = [ pkgs.libxslt ];
buildInputs = [ libxslt ];
buildCommand =
''
@@ -149,7 +149,7 @@ rec {
startAll;
$client->waitForUnit("multi-user.target");
${preBuild}
$client->succeed("env -i ${pkgs.bash}/bin/bash ${buildrunner} /tmp/xchg/saved-env >&2");
$client->succeed("env -i ${bash}/bin/bash ${buildrunner} /tmp/xchg/saved-env >&2");
${postBuild}
$client->succeed("sync"); # flush all data before pulling the plug
'';
@@ -196,6 +196,6 @@ rec {
} // args);
simpleTest = as: (makeTest ({ ... }: as)).test;
simpleTest = as: (makeTest as).test;
}

View File

@@ -0,0 +1,5 @@
{ modulesPath, ...}:
{
imports = [ "${modulesPath}/virtualisation/amazon-config.nix" ];
services.journald.rateLimitBurst = 0;
}

View File

@@ -0,0 +1,5 @@
{ config, pkgs, ...}:
{
imports = [ ./amazon-base-config.nix ];
ec2.hvm = true;
}

View File

@@ -0,0 +1,33 @@
{ config, pkgs, lib, ...}:
let
cloudUtils = pkgs.fetchurl {
url = "https://launchpad.net/cloud-utils/trunk/0.27/+download/cloud-utils-0.27.tar.gz";
sha256 = "16shlmg36lidp614km41y6qk3xccil02f5n3r4wf6d1zr5n4v8vd";
};
growpart = pkgs.stdenv.mkDerivation {
name = "growpart";
src = cloudUtils;
buildPhase = ''
cp bin/growpart $out
sed -i 's|awk|gawk|' $out
sed -i 's|sed|gnused|' $out
'';
dontInstall = true;
dontPatchShebangs = true;
};
in
{
imports = [ ./amazon-base-config.nix ];
ec2.hvm = true;
boot.loader.grub.device = lib.mkOverride 0 "nodev";
boot.initrd.extraUtilsCommands = ''
cp -v ${pkgs.gawk}/bin/gawk $out/bin/gawk
cp -v ${pkgs.gnused}/bin/sed $out/bin/gnused
cp -v ${pkgs.utillinux}/sbin/sfdisk $out/bin/sfdisk
cp -v ${growpart} $out/bin/growpart
'';
boot.initrd.postDeviceCommands = ''
[ -e /dev/xvda ] && [ -e /dev/xvda1 ] && TMPDIR=/run sh $(type -P growpart) /dev/xvda 1
'';
}

View File

@@ -8,15 +8,17 @@ import nixops.util
from nixops import deployment
from boto.ec2.blockdevicemapping import BlockDeviceMapping, BlockDeviceType
import boto.ec2
from nixops.statefile import StateFile, get_default_state_file
parser = argparse.ArgumentParser(description='Create an EBS-backed NixOS AMI')
parser.add_argument('--region', dest='region', required=True, help='EC2 region to create the image in')
parser.add_argument('--channel', dest='channel', default="13.10", help='Channel to use')
parser.add_argument('--keep', dest='keep', action='store_true', help='Keep NixOps machine after use')
parser.add_argument('--hvm', dest='hvm', action='store_true', help='Create HVM image')
parser.add_argument('--key', dest='key_name', action='store_true', help='Keypair used for HVM instance creation', default="rob")
args = parser.parse_args()
instance_type = "m3.xlarge" if args.hvm else "m1.small"
instance_type = "m3.medium" if args.hvm else "m1.small"
ebs_size = 8 if args.hvm else 20
@@ -37,11 +39,11 @@ f.write('''{{
'''.format(args.region, ebs_size))
f.close()
db = deployment.open_database(deployment.get_default_state_file())
db = StateFile(get_default_state_file())
try:
depl = deployment.open_deployment(db, "ebs-creator")
depl = db.open_deployment("ebs-creator")
except Exception:
depl = deployment.create_deployment(db)
depl = db.create_deployment()
depl.name = "ebs-creator"
depl.auto_response = "y"
depl.nix_exprs = [os.path.abspath("./ebs-creator.nix"), os.path.abspath("./ebs-creator-config.nix")]
@@ -50,7 +52,6 @@ depl.deploy(allow_reboot=True)
m = depl.machines['machine']
# Do the installation.
device="/dev/xvdg"
if args.hvm:
@@ -64,24 +65,27 @@ m.run_command("mkdir -p /mnt")
m.run_command("mount {0} /mnt".format(device))
m.run_command("touch /mnt/.ebs")
m.run_command("mkdir -p /mnt/etc/nixos")
m.run_command("nix-channel --add http://nixos.org/channels/nixos-unstable")
m.run_command("nix-channel --add http://nixos.org/channels/nixos-{} nixos".format(args.channel))
m.run_command("nix-channel --update")
m.run_command("nixos-rebuild switch")
version = m.run_command("nixos-version", capture_stdout=True).split(' ')[0]
version = m.run_command("nix-instantiate --eval-only -A lib.nixpkgsVersion '<nixpkgs>'", capture_stdout=True).split(' ')[0].replace('"','').strip()
print >> sys.stderr, "NixOS version is {0}".format(version)
m.upload_file("./amazon-base-config.nix", "/mnt/etc/nixos/configuration.nix")
m.run_command("nixos-install")
if args.hvm:
m.upload_file("./amazon-base-config.nix", "/mnt/etc/nixos/amazon-base-config.nix")
m.upload_file("./amazon-hvm-config.nix", "/mnt/etc/nixos/configuration.nix")
m.upload_file("./amazon-hvm-install-config.nix", "/mnt/etc/nixos/amazon-hvm-install-config.nix")
m.run_command("NIXOS_CONFIG=/etc/nixos/amazon-hvm-install-config.nix nixos-install")
m.run_command('nix-env -iA nixos.pkgs.grub')
m.run_command('cp /nix/store/*-grub-0.97*/lib/grub/i386-pc/* /mnt/boot/grub')
m.run_command('sed -i "s|hd0|hd0,0|" /mnt/boot/grub/menu.lst')
m.run_command('echo "(hd1) /dev/xvdg" > device.map')
m.run_command('echo -e "root (hd1,0)\nsetup (hd1)" | grub --device-map=device.map --batch')
else:
m.upload_file("./amazon-base-config.nix", "/mnt/etc/nixos/configuration.nix")
m.run_command("nixos-install")
m.run_command("umount /mnt")
if args.hvm:
ami_name = "nixos-{0}-x86_64-ebs-hvm".format(version)
description = "NixOS {0} (x86_64; EBS root; hvm)".format(version)

View File

@@ -4,10 +4,11 @@
machine =
{ config, pkgs, resources, ... }:
{ deployment.targetEnv = "ec2";
deployment.ec2.instanceType = "m1.large";
deployment.ec2.instanceType = "c3.large";
deployment.ec2.securityGroups = [ "admin" ];
deployment.ec2.ebsBoot = false;
deployment.ec2.keyPair = resources.ec2KeyPairs.keypair.name;
deployment.ec2.zone = "us-east-1e";
environment.systemPackages = [ pkgs.parted ];
};
}

View File

@@ -25,7 +25,7 @@ with lib;
config = mkIf config.fonts.enableCoreFonts {
fonts.extraFonts = [ pkgs.corefonts ];
fonts.fonts = [ pkgs.corefonts ];
};

View File

@@ -10,40 +10,37 @@ with lib;
# TODO: find another name for it.
fonts = mkOption {
default = [
# - the user's .fonts directory
"~/.fonts"
# - the user's current profile
"~/.nix-profile/lib/X11/fonts"
"~/.nix-profile/share/fonts"
# - the default profile
"/nix/var/nix/profiles/default/lib/X11/fonts"
"/nix/var/nix/profiles/default/share/fonts"
];
description = "List of primary font paths.";
apply = list: list ++ [
# - a few statically built locations
pkgs.xorg.fontbhttf
pkgs.xorg.fontbhlucidatypewriter100dpi
pkgs.xorg.fontbhlucidatypewriter75dpi
pkgs.ttf_bitstream_vera
pkgs.freefont_ttf
pkgs.liberation_ttf
pkgs.xorg.fontbh100dpi
pkgs.xorg.fontmiscmisc
pkgs.xorg.fontcursormisc
]
++ config.fonts.extraFonts;
};
extraFonts = mkOption {
default = [];
type = types.listOf types.path;
example = [ pkgs.dejavu_fonts ];
description = "List of packages with additional fonts.";
description = "List of primary font paths.";
apply = list: list ++
[ # - the user's current profile
"~/.nix-profile/lib/X11/fonts"
"~/.nix-profile/share/fonts"
# - the default profile
"/nix/var/nix/profiles/default/lib/X11/fonts"
"/nix/var/nix/profiles/default/share/fonts"
];
};
};
};
config = {
fonts.fonts =
[ pkgs.xorg.fontbhttf
pkgs.xorg.fontbhlucidatypewriter100dpi
pkgs.xorg.fontbhlucidatypewriter75dpi
pkgs.ttf_bitstream_vera
pkgs.freefont_ttf
pkgs.liberation_ttf
pkgs.xorg.fontbh100dpi
pkgs.xorg.fontmiscmisc
pkgs.xorg.fontcursormisc
];
};
}

View File

@@ -25,7 +25,7 @@ with lib;
config = mkIf config.fonts.enableGhostscriptFonts {
fonts.extraFonts = [ "${pkgs.ghostscript}/share/ghostscript/fonts" ];
fonts.fonts = [ "${pkgs.ghostscript}/share/ghostscript/fonts" ];
};

View File

@@ -69,8 +69,7 @@ in {
};
configFile = mkOption {
type = types.uniq types.path;
default = "${cfg.package}/etc/pulse/default.pa";
type = types.path;
description = ''
The path to the configuration the PulseAudio server
should use. By default, the "default.pa" configuration
@@ -110,6 +109,8 @@ in {
target = "pulse/client.conf";
source = clientConf;
};
hardware.pulseaudio.configFile = mkDefault "${cfg.package}/etc/pulse/default.pa";
}
(mkIf cfg.enable {

View File

@@ -106,6 +106,7 @@ with utils;
if [ ! -e "${sw.device}" ]; then
fallocate -l ${toString sw.size}M "${sw.device}" ||
dd if=/dev/zero of="${sw.device}" bs=1M count=${toString sw.size}
chmod 0600 ${sw.device}
mkswap ${sw.device}
fi
'';

View File

@@ -63,7 +63,7 @@ in
systemPackages = mkOption {
type = types.listOf types.path;
default = [];
example = "[ pkgs.icecat3 pkgs.thunderbird ]";
example = "[ pkgs.firefox pkgs.thunderbird ]";
description = ''
The set of packages that appear in
/run/current-system/sw. These packages are

View File

@@ -55,13 +55,27 @@ let
type = with types; nullOr int;
default = null;
description = ''
The account UID. If the <literal>mutableUsers</literal> option
The account UID. If the <option>mutableUsers</option> option
is false, the UID cannot be null. Otherwise, the UID might be
null, in which case a free UID is picked on activation (by the
useradd command).
'';
};
isSystemUser = mkOption {
type = types.bool;
default = false;
description = ''
Indicates if the user is a system user or not. This option
only has an effect if <option>mutableUsers</option> is
<literal>true</literal> and <option>uid</option> is
<option>null</option>, in which case it determines whether
the user's UID is allocated in the range for system users
(below 500) or in the range for normal users (starting at
1000).
'';
};
group = mkOption {
type = types.str;
default = "nogroup";
@@ -459,17 +473,17 @@ in {
'';
groupadd = n: g: ''
if [ -z "$(getent group "${g.name}")" ]; then
echo "Adding group ${g.name}"
${pkgs.shadow}/sbin/groupadd "${g.name}"
fi
'';
useradd = n: u: ''
if ! id "${u.name}" &>/dev/null; then
echo "Adding user ${u.name}"
${pkgs.shadow}/sbin/useradd \
-g "${u.group}" \
-G "${concatStringsSep "," u.extraGroups}" \
-s "${u.shell}" \
-d "${u.home}" \
${optionalString u.isSystemUser "--system"} \
"${u.name}"
echo "${u.name}:x" | ${pkgs.shadow}/sbin/chpasswd -e
fi
@@ -495,7 +509,7 @@ in {
message = "uids and gids must be unique!";
}
{ assertion = cfg.mutableUsers || (nonUidUsers == {});
message = "When mutableUsers is false, no uid can be null";
message = "When mutableUsers is false, no uid can be null: ${toString (attrNames nonUidUsers)}";
}
{ assertion = cfg.mutableUsers || (nonGidGroups == {});
message = "When mutableUsers is false, no gid can be null";

View File

@@ -1,14 +1,31 @@
{ config, pkgs, pkgs_i686, ... }:
{ config, lib, pkgs, pkgs_i686, ... }:
with lib;
let
inherit (pkgs.lib) mkOption types mkIf optional optionals elem optionalString optionalAttrs;
cfg = config.hardware.opengl;
kernelPackages = config.boot.kernelPackages;
in {
videoDrivers = config.services.xserver.videoDrivers;
makePackage = p: p.buildEnv {
name = "mesa-drivers+txc-${p.mesa_drivers.version}";
paths =
[ p.mesa_drivers
p.mesa_noglu # mainly for libGL
(if cfg.s3tcSupport then p.libtxc_dxtn else p.libtxc_dxtn_s2tc)
p.udev
];
};
in
{
options = {
hardware.opengl.enable = mkOption {
description = "Whether this configuration requires opengl.";
description = "Whether this configuration requires OpenGL.";
type = types.bool;
default = false;
internal = true;
@@ -45,84 +62,64 @@ in {
'';
};
hardware.opengl.videoDrivers = mkOption {
type = types.listOf types.str;
# !!! We'd like "nv" here, but it segfaults the X server.
default = [ "ati" "cirrus" "intel" "vesa" "vmware" ];
example = [ "vesa" ];
hardware.opengl.package = mkOption {
type = types.package;
internal = true;
description = ''
The names of the opengl video drivers the configuration
supports. They will be tried in order until one that
supports your card is found.
The package that provides the OpenGL implementation.
'';
};
hardware.opengl.package32 = mkOption {
type = types.package;
internal = true;
description = ''
The package that provides the 32-bit OpenGL implementation on
64-bit systems. Used when <option>driSupport32Bit</option> is
set.
'';
};
};
config = mkIf cfg.enable {
assertions = pkgs.lib.singleton {
assertion = cfg.driSupport32Bit -> pkgs.stdenv.isx86_64;
message = "Option driSupport32Bit only makes sens on a 64-bit system.";
message = "Option driSupport32Bit only makes sense on a 64-bit system.";
};
system.activationScripts.setup-opengl.deps = [];
system.activationScripts.setup-opengl.text = ''
rm -f /run/opengl-driver{,-32}
${optionalString (pkgs.stdenv.isi686) "ln -sf opengl-driver /run/opengl-driver-32"}
''
#TODO: The OpenGL driver should depend on what's detected at runtime.
+( if elem "nvidia" cfg.videoDrivers then
''
ln -sf ${kernelPackages.nvidia_x11} /run/opengl-driver
${optionalString cfg.driSupport32Bit
"ln -sf ${pkgs_i686.linuxPackages.nvidia_x11.override { libsOnly = true; kernel = null; } } /run/opengl-driver-32"}
''
else if elem "nvidiaLegacy173" cfg.videoDrivers then
"ln -sf ${kernelPackages.nvidia_x11_legacy173} /run/opengl-driver"
else if elem "nvidiaLegacy304" cfg.videoDrivers then
''
ln -sf ${kernelPackages.nvidia_x11_legacy304} /run/opengl-driver
${optionalString cfg.driSupport32Bit
"ln -sf ${pkgs_i686.linuxPackages.nvidia_x11_legacy304.override { libsOnly = true; kernel = null; } } /run/opengl-driver-32"}
''
else if elem "ati_unfree" cfg.videoDrivers then
"ln -sf ${kernelPackages.ati_drivers_x11} /run/opengl-driver"
else
let
lib_fun = p: p.buildEnv {
name = "mesa-drivers+txc-${p.mesa_drivers.version}";
paths = [
p.mesa_drivers
p.mesa_noglu # mainly for libGL
(if cfg.s3tcSupport then p.libtxc_dxtn else p.libtxc_dxtn_s2tc)
];
};
in
''
${optionalString cfg.driSupport "ln -sf ${lib_fun pkgs} /run/opengl-driver"}
${optionalString cfg.driSupport32Bit
"ln -sf ${lib_fun pkgs_i686} /run/opengl-driver-32"}
''
);
system.activationScripts.setup-opengl =
''
ln -sfn ${cfg.package} /run/opengl-driver
${if pkgs.stdenv.isi686 then ''
ln -sfn opengl-driver /run/opengl-driver-32
'' else if cfg.driSupport32Bit then ''
ln -sfn ${cfg.package32} /run/opengl-driver-32
'' else ''
rm -f /run/opengl-driver-32
''}
'';
environment.variables.LD_LIBRARY_PATH =
[ "/run/opengl-driver/lib" "/run/opengl-driver-32/lib" ];
# FIXME: move this into card-specific modules.
hardware.opengl.package = mkDefault
(if elem "ati_unfree" videoDrivers then
kernelPackages.ati_drivers_x11
else
makePackage pkgs);
hardware.opengl.package32 = mkDefault (makePackage pkgs_i686);
boot.extraModulePackages =
optional (elem "nvidia" cfg.videoDrivers) kernelPackages.nvidia_x11 ++
optional (elem "nvidiaLegacy173" cfg.videoDrivers) kernelPackages.nvidia_x11_legacy173 ++
optional (elem "nvidiaLegacy304" cfg.videoDrivers) kernelPackages.nvidia_x11_legacy304 ++
optional (elem "virtualbox" cfg.videoDrivers) kernelPackages.virtualboxGuestAdditions ++
optional (elem "ati_unfree" cfg.videoDrivers) kernelPackages.ati_drivers_x11;
optional (elem "virtualbox" videoDrivers) kernelPackages.virtualboxGuestAdditions ++
optional (elem "ati_unfree" videoDrivers) kernelPackages.ati_drivers_x11;
boot.blacklistedKernelModules =
optionals (elem "nvidia" cfg.videoDrivers) [ "nouveau" "nvidiafb" ];
environment.etc = (optionalAttrs (elem "ati_unfree" cfg.videoDrivers) {
environment.etc =
optionalAttrs (elem "ati_unfree" videoDrivers) {
"ati".source = "${kernelPackages.ati_drivers_x11}/etc/ati";
})
// (optionalAttrs (elem "nvidia" cfg.videoDrivers) {
"OpenCL/vendors/nvidia.icd".source = "${kernelPackages.nvidia_x11}/lib/vendors/nvidia.icd";
});
};
};
}

View File

@@ -17,6 +17,12 @@ with lib;
Only nvidia driver is supported so far.
'';
};
hardware.bumblebee.group = mkOption {
default = "wheel";
example = "video";
type = types.uniq types.str;
description = ''Group for bumblebee socket'';
};
};
config = mkIf config.hardware.bumblebee.enable {
@@ -29,13 +35,15 @@ with lib;
systemd.services.bumblebeed = {
description = "Bumblebee Hybrid Graphics Switcher";
wantedBy = [ "display-manager.service" ];
script = "bumblebeed --use-syslog";
script = "bumblebeed --use-syslog -g ${config.hardware.bumblebee.group}";
path = [ kernel.bbswitch pkgs.bumblebee ];
serviceConfig = {
Restart = "always";
RestartSec = 60;
CPUSchedulingPolicy = "idle";
};
environment.LD_LIBRARY_PATH="/run/opengl-driver/lib/";
environment.MODULE_DIR="/run/current-system/kernel-modules/lib/modules/";
};
};
}

View File

@@ -0,0 +1,54 @@
# This module provides the proprietary NVIDIA X11 / OpenGL drivers.
{ config, lib, pkgs, pkgs_i686, ... }:
with lib;
let
drivers = config.services.xserver.videoDrivers;
# FIXME: should introduce an option like
# hardware.video.nvidia.package for overriding the default NVIDIA
# driver.
enabled = elem "nvidia" drivers || elem "nvidiaLegacy173" drivers || elem "nvidiaLegacy304" drivers;
nvidia_x11 =
if elem "nvidia" drivers then
config.boot.kernelPackages.nvidia_x11
else if elem "nvidiaLegacy173" drivers then
config.boot.kernelPackages.nvidia_x11_legacy173
else if elem "nvidiaLegacy304" videoDrivers then
config.boot.kernelPackages.nvidia_x11_legacy304
else throw "impossible";
in
{
config = mkIf enabled {
services.xserver.drivers = singleton
{ name = "nvidia"; modules = [ nvidia_x11 ]; libPath = [ nvidia_x11 ]; };
services.xserver.screenSection =
''
Option "RandRRotation" "on"
'';
hardware.opengl.package = nvidia_x11;
hardware.opengl.package32 = pkgs_i686.linuxPackages.nvidia_x11.override { libsOnly = true; kernel = null; };
environment.systemPackages = [ nvidia_x11 ];
boot.extraModulePackages = [ nvidia_x11 ];
boot.blacklistedKernelModules = [ "nouveau" "nvidiafb" ];
services.acpid.enable = true;
environment.etc."OpenCL/vendors/nvidia.icd".source = "${nvidia_x11}/lib/vendors/nvidia.icd";
};
}

View File

@@ -19,7 +19,7 @@ with lib;
# ISO naming.
isoImage.isoName = "${config.isoImage.isoBaseName}-${config.system.nixosVersion}-${pkgs.stdenv.system}.iso";
isoImage.volumeID = substring 0 11 "NIXOS_${config.system.nixosVersion}";
isoImage.volumeID = substring 0 11 "NIXOS_ISO";
# Make the installer more likely to succeed in low memory
# environments. The kernel's overcommit heustistics bite us

View File

@@ -138,7 +138,8 @@ in
};
# Setting vesa, we don't get the nvidia driver, which can't work in arm.
hardware.opengl.videoDrivers = [ "vesa" ];
services.xserver.videoDrivers = [ "vesa" ];
services.nixosManual.enable = false;
# Include the firmware for various wireless cards.

View File

@@ -17,6 +17,6 @@ getVersion() {
if nixpkgs=$(nix-instantiate --find-file nixpkgs "$@"); then
getVersion $nixpkgs
if [ -n "$rev" ]; then
echo "pre-$rev"
echo ".git.$rev"
fi
fi

View File

@@ -130,13 +130,14 @@ sub pciCheck {
# broadcom STA driver (wl.ko)
# list taken from http://www.broadcom.com/docs/linux_sta/README.txt
# FIXME: still needed?
if ($vendor eq "0x14e4" &&
($device eq "0x4311" || $device eq "0x4312" || $device eq "0x4313" ||
$device eq "0x4315" || $device eq "0x4327" || $device eq "0x4328" ||
$device eq "0x4329" || $device eq "0x432a" || $device eq "0x432b" ||
$device eq "0x432c" || $device eq "0x432d" || $device eq "0x4353" ||
$device eq "0x4357" || $device eq "0x4358" || $device eq "0x4359" ) )
$device eq "0x4357" || $device eq "0x4358" || $device eq "0x4359" ||
$device eq "0x4331" || $device eq "0x43a0" || $device eq "0x43b1"
) )
{
push @modulePackages, "config.boot.kernelPackages.broadcom_sta";
push @kernelModules, "wl";
@@ -158,14 +159,14 @@ sub pciCheck {
# Assume that all NVIDIA cards are supported by the NVIDIA driver.
# There may be exceptions (e.g. old cards).
# FIXME: do we want to enable an unfree driver here?
$videoDriver = "nvidia" if $vendor eq "0x10de" && $class =~ /^0x03/;
#$videoDriver = "nvidia" if $vendor eq "0x10de" && $class =~ /^0x03/;
}
foreach my $path (glob "/sys/bus/pci/devices/*") {
pciCheck $path;
}
push @attrs, "hardware.opengl.videoDrivers = [ \"$videoDriver\" ];" if $videoDriver;
push @attrs, "services.xserver.videoDrivers = [ \"$videoDriver\" ];" if $videoDriver;
# Idem for USB devices.
@@ -218,18 +219,19 @@ foreach my $path (glob "/sys/class/block/*") {
}
my $dmi = `@dmidecode@/sbin/dmidecode`;
my $virt = `systemd-detect-virt`;
chomp $virt;
# Check if we're a VirtualBox guest. If so, enable the guest
# additions.
if ($dmi =~ /Manufacturer: innotek/) {
if ($virt eq "oracle") {
push @attrs, "services.virtualbox.enable = true;"
}
# Likewise for QEMU.
if ($dmi =~ /Manufacturer: Bochs/) {
if ($virt eq "qemu" || $virt eq "kvm" || $virt eq "bochs") {
push @imports, "<nixpkgs/nixos/modules/profiles/qemu-guest.nix>";
}
@@ -267,6 +269,7 @@ foreach my $fs (read_file("/proc/self/mountinfo")) {
# Skip special filesystems.
next if in($mountPoint, "/proc") || in($mountPoint, "/dev") || in($mountPoint, "/sys") || in($mountPoint, "/run") || $mountPoint eq "/var/lib/nfs/rpc_pipefs";
next if $mountPoint eq "/var/setuid-wrappers";
# Skip the optional fields.
my $n = 6; $n++ while $fields[$n] ne "-"; $n++;
@@ -280,9 +283,11 @@ foreach my $fs (read_file("/proc/self/mountinfo")) {
# Maybe this is a bind-mount of a filesystem we saw earlier?
if (defined $fsByDev{$fields[2]}) {
my $path = $fields[3]; $path = "" if $path eq "/";
my $base = $fsByDev{$fields[2]};
$base = "" if $base eq "/";
$fileSystems .= <<EOF;
fileSystems.\"$mountPoint\" =
{ device = \"$fsByDev{$fields[2]}$path\";
{ device = \"$base$path\";
fsType = \"none\";
options = \"bind\";
};
@@ -401,7 +406,6 @@ if ($showHardwareConfig) {
if (-e "/sys/firmware/efi/efivars") {
$bootLoaderConfig = <<EOF;
# Use the gummiboot efi boot loader.
boot.loader.grub.enable = false;
boot.loader.gummiboot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
EOF
@@ -439,6 +443,12 @@ $bootLoaderConfig
# defaultLocale = "en_US.UTF-8";
# };
# List packages installed in system profile. To search by name, run:
# $ nix-env -qaP | grep wget
# environment.systemPackages = with pkgs; [
# wget
# ];
# List services that you want to enable:
# Enable the OpenSSH daemon.
@@ -455,6 +465,17 @@ $bootLoaderConfig
# Enable the KDE Desktop Environment.
# services.xserver.displayManager.kdm.enable = true;
# services.xserver.desktopManager.kde4.enable = true;
# Define a user account. Don't forget to set a password with passwd.
# users.extraUsers.guest = {
# name = "guest";
# group = "users";
# uid = 1000;
# createHome = true;
# home = "/home/guest";
# shell = "/run/current-system/sw/bin/bash";
# };
}
EOF
} else {

View File

@@ -62,6 +62,7 @@ fi
# into the chroot because we need networking and the nixbld user
# accounts in /etc/passwd. But we do need the target's /etc/nixos.
mkdir -m 0755 -p $mountPoint/dev $mountPoint/proc $mountPoint/sys $mountPoint/mnt $mountPoint/mnt2 $mountPoint/mnt-nixpkgs $mountPoint/etc /etc/nixos
mkdir -m 0700 -p $mountPoint/root
mount --make-private / # systemd makes / shared, which is annoying
mount --bind / $mountPoint/mnt
mount --bind /nix $mountPoint/mnt/nix

View File

@@ -184,13 +184,13 @@ if [ -z "$rollback" ]; then
nix-env "${extraBuildFlags[@]}" -p "$profile" -f '<nixpkgs/nixos>' --set -A system
pathToConfig="$profile"
elif [ "$action" = test -o "$action" = build -o "$action" = dry-run ]; then
nix-build '<nixpkgs/nixos>' -A system -K -k "${extraBuildFlags[@]}" > /dev/null
nix-build '<nixpkgs/nixos>' -A system -k "${extraBuildFlags[@]}" > /dev/null
pathToConfig=./result
elif [ "$action" = build-vm ]; then
nix-build '<nixpkgs/nixos>' -A vm -K -k "${extraBuildFlags[@]}" > /dev/null
nix-build '<nixpkgs/nixos>' -A vm -k "${extraBuildFlags[@]}" > /dev/null
pathToConfig=./result
elif [ "$action" = build-vm-with-bootloader ]; then
nix-build '<nixpkgs/nixos>' -A vmWithBootLoader -K -k "${extraBuildFlags[@]}" > /dev/null
nix-build '<nixpkgs/nixos>' -A vmWithBootLoader -k "${extraBuildFlags[@]}" > /dev/null
pathToConfig=./result
else
showSyntax

View File

@@ -38,7 +38,6 @@ let
name = "nixos-generate-config";
src = ./nixos-generate-config.pl;
perl = "${pkgs.perl}/bin/perl -I${pkgs.perlPackages.FileSlurp}/lib/perl5/site_perl";
inherit (pkgs) dmidecode;
};
nixos-option = makeProg {

View File

@@ -15,5 +15,5 @@ with lib;
# Add some more video drivers to give X11 a shot at working in
# VMware and QEMU.
hardware.opengl.videoDrivers = mkOverride 40 [ "virtualbox" "vmware" "cirrus" "vesa" ];
services.xserver.videoDrivers = mkOverride 40 [ "virtualbox" "vmware" "cirrus" "vesa" ];
}

View File

@@ -52,13 +52,13 @@
osgi = 34;
tor = 35;
cups = 36;
foldingAtHome = 37;
foldingathome = 37;
sabnzbd = 38;
kdm = 39;
ghostOne = 40;
ghostone = 40;
git = 41;
fourStore = 42;
fourStoreEndpoint = 43;
fourstore = 42;
fourstorehttp = 43;
virtuoso = 44;
rtkit = 45;
dovecot2 = 46;
@@ -84,7 +84,7 @@
postgres = 71;
smbguest = 74;
varnish = 75;
dd-agent = 76;
datadog = 76;
lighttpd = 77;
lightdm = 78;
freenet = 79;
@@ -129,10 +129,10 @@
foundationdb = 118;
newrelic = 119;
starbound = 120;
hydra = 122;
spiped = 123;
hydra = 122;
spiped = 123;
# When adding a uid, make sure it doesn't match an existing gid.
# When adding a uid, make sure it doesn't match an existing gid. And don't use uids above 399!
nixbld = 30000; # start of range of uids
nobody = 65534;
@@ -173,8 +173,8 @@
osgi = 34;
ghostOne = 40;
git = 41;
fourStore = 42;
fourStoreEndpoint = 43;
fourstore = 42;
fourstorehttpd = 43;
virtuoso = 44;
dovecot2 = 46;
prayer = 49;
@@ -201,7 +201,7 @@
vboxsf = 73;
smbguest = 74;
varnish = 75;
dd-agent = 76;
datadog = 76;
lighttpd = 77;
lightdm = 78;
freenet = 79;
@@ -237,7 +237,7 @@
hydra = 122;
spiped = 123;
# When adding a gid, make sure it doesn't match an existing uid.
# When adding a gid, make sure it doesn't match an existing uid. And don't use gids above 399!
users = 100;
nixbld = 30000;

View File

@@ -62,8 +62,7 @@ in
type = types.str;
description = ''
Specifies the Nix platform type for which NixOS should be built.
If unset, it defaults to the platform type of your host system
(<literal>${builtins.currentSystem}</literal>).
If unset, it defaults to the platform type of your host system.
Specifying this option is useful when doing distributed
multi-platform deployment, or when building virtual machines.
'';

View File

@@ -33,7 +33,7 @@ with lib;
system.defaultChannel = mkOption {
internal = true;
type = types.str;
default = https://nixos.org/channels/nixos-unstable;
default = https://nixos.org/channels/nixos-14.04;
description = "Default NixOS channel to which the root user is subscribed.";
};

View File

@@ -32,6 +32,7 @@
./hardware/opengl.nix
./hardware/pcmcia.nix
./hardware/video/bumblebee.nix
./hardware/video/nvidia.nix
./installer/tools/nixos-checkout.nix
./installer/tools/tools.nix
./misc/assertions.nix
@@ -100,9 +101,12 @@
./services/desktops/accountservice.nix
./services/desktops/gnome3/at-spi2-core.nix
./services/desktops/gnome3/evolution-data-server.nix
./services/desktops/gnome3/gnome-documents.nix
./services/desktops/gnome3/gnome-keyring.nix
./services/desktops/gnome3/gnome-online-accounts.nix
./services/desktops/gnome3/gnome-online-miners.nix
./services/desktops/gnome3/gnome-user-share.nix
./services/desktops/gnome3/seahorse.nix
./services/desktops/gnome3/sushi.nix
./services/desktops/gnome3/tracker.nix
./services/desktops/telepathy.nix
@@ -132,7 +136,7 @@
./services/mail/opensmtpd.nix
./services/mail/postfix.nix
./services/mail/spamassassin.nix
./services/misc/autofs.nix
#./services/misc/autofs.nix
./services/misc/cgminer.nix
./services/misc/dictd.nix
./services/misc/disnix.nix

View File

@@ -7,7 +7,6 @@
# Include some utilities that are useful for installing or repairing
# the system.
environment.systemPackages = [
pkgs.subversion # for nixos-checkout
pkgs.w3m # needed for the manual anyway
pkgs.testdisk # useful for repairing boot problems
pkgs.mssys # for writing Microsoft boot sectors / MBRs

View File

@@ -12,6 +12,8 @@ with lib;
# Don't start a tty on the serial consoles.
systemd.services."serial-getty@ttyS0".enable = false;
systemd.services."serial-getty@hvc0".enable = false;
systemd.services."getty@tty1".enable = false;
systemd.services."autovt@".enable = false;
# Since we can't manually respond to a panic, just reboot.
boot.kernelParams = [ "panic=1" "boot.panic_on_fail" ];

View File

@@ -40,6 +40,7 @@ in
programs.bash = {
/*
enable = mkOption {
default = true;
description = ''
@@ -52,6 +53,7 @@ in
'';
type = types.bool;
};
*/
shellAliases = mkOption {
default = config.environment.shellAliases // { which = "type -P"; };
@@ -114,7 +116,7 @@ in
};
config = mkIf cfg.enable {
config = /* mkIf cfg.enable */ {
programs.bash = {

View File

@@ -2,6 +2,8 @@
let
texinfo = pkgs.texinfoInteractive;
# Quick hack to make the `info' command work properly. `info' needs
# a "dir" file containing all the installed Info files, which we
# don't have (it would be impure to have a package installation
@@ -22,15 +24,15 @@ let
for i in $(IFS=:; echo $INFOPATH); do
for j in $i/*.info; do
${pkgs.texinfo}/bin/install-info --quiet $j $dir/dir
${texinfo}/bin/install-info --quiet $j $dir/dir
done
done
INFOPATH=$dir:$INFOPATH ${pkgs.texinfo}/bin/info "$@"
INFOPATH=$dir:$INFOPATH ${texinfo}/bin/info "$@"
''; # */
in
{
environment.systemPackages = [ infoWrapper pkgs.texinfo ];
environment.systemPackages = [ infoWrapper texinfo ];
}

View File

@@ -10,12 +10,12 @@ let
''
DEFAULT_HOME yes
SYS_UID_MIN 100
SYS_UID_MIN 400
SYS_UID_MAX 499
UID_MIN 1000
UID_MAX 29999
SYS_GID_MIN 100
SYS_GID_MIN 400
SYS_GID_MAX 499
GID_MIN 1000
GID_MAX 29999

View File

@@ -26,11 +26,6 @@ in
default = false;
description = ''
Whenever to configure Zsh as an interactive shell.
Note that this tries to make Zsh the default
<option>users.defaultUserShell</option>,
which in turn means that you might need to explicitly
set this variable if you have another shell configured
with NixOS.
'';
type = types.bool;
};
@@ -168,7 +163,7 @@ in
environment.systemPackages = [ pkgs.zsh ];
users.defaultUserShell = mkDefault "/run/current-system/sw/bin/zsh";
#users.defaultUserShell = mkDefault "/run/current-system/sw/bin/zsh";
environment.shells =
[ "/run/current-system/sw/bin/zsh"

View File

@@ -74,6 +74,7 @@ in zipModules ([]
++ obsolete [ "environment" "x11Packages" ] [ "environment" "systemPackages" ]
++ obsolete [ "environment" "enableBashCompletion" ] [ "programs" "bash" "enableCompletion" ]
++ obsolete [ "environment" "nix" ] [ "nix" "package" ]
++ obsolete [ "fonts" "extraFonts" ] [ "fonts" "fonts" ]
++ obsolete [ "security" "extraSetuidPrograms" ] [ "security" "setuidPrograms" ]
++ obsolete [ "networking" "enableWLAN" ] [ "networking" "wireless" "enable" ]
@@ -120,12 +121,13 @@ in zipModules ([]
++ obsolete [ "services" "xserver" "driSupport" ] [ "hardware" "opengl" "driSupport" ]
++ obsolete [ "services" "xserver" "driSupport32Bit" ] [ "hardware" "opengl" "driSupport32Bit" ]
++ obsolete [ "services" "xserver" "s3tcSupport" ] [ "hardware" "opengl" "s3tcSupport" ]
++ obsolete [ "services" "xserver" "videoDrivers" ] [ "hardware" "opengl" "videoDrivers" ]
++ obsolete [ "hardware" "opengl" "videoDrivers" ] [ "services" "xserver" "videoDrivers" ]
++ obsolete [ "services" "mysql55" ] [ "services" "mysql" ]
# Options that are obsolete and have no replacement.
++ obsolete' [ "boot" "loader" "grub" "bootDevice" ]
++ obsolete' [ "boot" "initrd" "luks" "enable" ]
++ obsolete' [ "programs" "bash" "enable" ]
)

View File

@@ -98,10 +98,6 @@ in
''
# Probably no more needed, clean up
rm -rf /var/lib/{polkit-1,PolicyKit}
# Force polkitd to be restarted so that it reloads its
# configuration.
${pkgs.procps}/bin/pkill -INT -u root -x polkitd
'';
users.extraUsers.polkituser = {

View File

@@ -7,9 +7,9 @@ let
optionalNullStr = e: v: if e == null then "" else v;
configFile = pkgs.writeText "tarsnap.conf" ''
cachedir ${cfg.cachedir}
keyfile ${cfg.keyfile}
configFile = cfg: ''
cachedir ${config.services.tarsnap.cachedir}
keyfile ${config.services.tarsnap.keyfile}
${optionalString cfg.nodump "nodump"}
${optionalString cfg.printStats "print-stats"}
${optionalNullStr cfg.checkpointBytes "checkpoint-bytes "+cfg.checkpointBytes}
@@ -39,15 +39,15 @@ in
'';
};
label = mkOption {
type = types.str;
default = "nixos";
keyfile = mkOption {
type = types.path;
default = "/root/tarsnap.key";
description = ''
Specifies the label for archives created by Tarsnap. The
full name will be
<literal>label-$(date+"%Y%m%d%H%M%S")</literal>. For
example, by default your backups will look similar to
<literal>nixos-20140301011501</literal>.
Path to the keyfile which identifies the machine
associated with your Tarsnap account. This file can
be created using the
<literal>tarsnap-keygen</literal> utility, and
providing your Tarsnap login credentials.
'';
};
@@ -55,122 +55,158 @@ in
type = types.path;
default = "/var/cache/tarsnap";
description = ''
Tarsnap operations use a "cache directory" which allows
Tarsnap to identify which blocks of data have been
previously stored; this directory is specified via the
<literal>cachedir</literal> option. If the cache directory
is lost or out of date, tarsnap creation/deletion operations
will exit with an error message instructing you to run
<literal>tarsnap --fsck</literal> to regenerate the cache
directory.
Tarsnap operations use a "cache directory" which
allows Tarsnap to identify which blocks of data have
been previously stored; this directory is specified
via the <literal>cachedir</literal> option. If the
cache directory is lost or out of date, tarsnap
creation/deletion operations will exit with an error
message instructing you to run <literal>tarsnap
--fsck</literal> to regenerate the cache directory.
'';
};
keyfile = mkOption {
type = types.path;
default = "/root/tarsnap.key";
description = ''
Path to the keyfile which identifies the machine associated
with your Tarsnap account. This file can be created using
the <literal>tarsnap-keygen</literal> utility, and providing
your Tarsnap login credentials.
config = mkOption {
type = types.attrsOf (types.submodule (
{
options = {
nodump = mkOption {
type = types.bool;
default = true;
description = ''
If set to <literal>true</literal>, then don't
archive files which have the
<literal>nodump</literal> flag set.
'';
};
printStats = mkOption {
type = types.bool;
default = true;
description = "Print statistics when creating archives.";
};
checkpointBytes = mkOption {
type = types.nullOr types.str;
default = "1G";
description = ''
Create a checkpoint per a particular amount of
uploaded data. By default, Tarsnap will create
checkpoints once per GB of data uploaded. At
minimum, <literal>checkpointBytes</literal> must be
1GB.
Can also be set to <literal>null</literal> to
disable checkpointing.
'';
};
period = mkOption {
type = types.str;
default = "15 01 * * *";
description = ''
This option defines (in the format used by cron)
when tarsnap is run for backups. The default is to
backup the specified paths at 01:15 at night every
day.
'';
};
aggressiveNetworking = mkOption {
type = types.bool;
default = false;
description = ''
Aggressive network behaviour: Use multiple TCP
connections when writing archives. Use of this
option is recommended only in cases where TCP
congestion control is known to be the limiting
factor in upload performance.
'';
};
directories = mkOption {
type = types.listOf types.path;
default = [];
description = "List of filesystem paths to archive.";
};
excludes = mkOption {
type = types.listOf types.str;
default = [];
description = ''
Exclude files and directories matching the specified
patterns.
'';
};
includes = mkOption {
type = types.listOf types.str;
default = [];
description = ''
Include only files and directories matching the
specified patterns.
Note that exclusions specified via
<literal>excludes</literal> take precedence over
inclusions.
'';
};
lowmem = mkOption {
type = types.bool;
default = false;
description = ''
Attempt to reduce tarsnap memory consumption. This
option will slow down the process of creating
archives, but may help on systems where the average
size of files being backed up is less than 1 MB.
'';
};
verylowmem = mkOption {
type = types.bool;
default = false;
description = ''
Try even harder to reduce tarsnap memory
consumption. This can significantly slow down
tarsnap, but reduces its memory usage by an
additional factor of 2 beyond what the
<literal>lowmem</literal> option does.
'';
};
};
}
));
default = {};
example = literalExample ''
{
nixos =
{ directories = [ "/home" "/root/ssl" ];
};
gamedata =
{ directories = [ "/var/lib/minecraft "];
period = "*/30 * * * *";
};
}
'';
};
nodump = mkOption {
type = types.bool;
default = true;
description = ''
If set to <literal>true</literal>, then don't archive files
which have the <literal>nodump</literal> flag set.
'';
};
printStats = mkOption {
type = types.bool;
default = true;
description = "Print statistics when creating archives.";
};
checkpointBytes = mkOption {
type = types.nullOr types.str;
default = "1G";
description = ''
Create a checkpoint per a particular amount of uploaded
data. By default, Tarsnap will create checkpoints once per
GB of data uploaded. At minimum,
<literal>checkpointBytes</literal> must be 1GB.
Can also be set to <literal>null</literal> to disable
checkpointing.
'';
};
period = mkOption {
type = types.str;
default = "15 01 * * *";
description = ''
This option defines (in the format used by cron) when
tarsnap is run for backups. The default is to backup the
specified paths at 01:15 at night every day.
'';
};
aggressiveNetworking = mkOption {
type = types.bool;
default = false;
description = ''
Aggressive network behaviour: Use multiple TCP connections
when writing archives. Use of this option is recommended
only in cases where TCP congestion control is known to be
the limiting factor in upload performance.
'';
};
directories = mkOption {
type = types.listOf types.path;
default = [];
description = "List of filesystem paths to archive.";
};
excludes = mkOption {
type = types.listOf types.str;
default = [];
description = ''
Exclude files and directories matching the specified patterns.
'';
};
includes = mkOption {
type = types.listOf types.str;
default = [];
description = ''
Include only files and directories matching the specified patterns.
Note that exclusions specified via
<literal>excludes</literal> take precedence over inclusions.
'';
};
lowmem = mkOption {
type = types.bool;
default = false;
description = ''
Attempt to reduce tarsnap memory consumption. This option
will slow down the process of creating archives, but may
help on systems where the average size of files being backed
up is less than 1 MB.
'';
};
verylowmem = mkOption {
type = types.bool;
default = false;
description = ''
Try even harder to reduce tarsnap memory consumption. This
can significantly slow down tarsnap, but reduces its memory
usage by an additional factor of 2 beyond what the
<literal>lowmem</literal> option does.
Configuration of a Tarsnap archive. In the example, your
machine will have two tarsnap archives:
<literal>gamedata</literal> (backed up every 30 minutes) and
<literal>nixos</literal> (backed up at 1:15 AM every night by
default). You can control individual archive backups using
<literal>systemctl</literal>, using the
<literal>tarsnap@nixos</literal> or
<literal>tarsnap@gamedata</literal> units. For example,
<literal>systemctl start tarsnap@nixos</literal> will
immediately create a new NixOS archive. By default, archives
are suffixed with the timestamp of when they were started,
down to second resolution. This means you can use GNU
<literal>sort</literal> to sort output easily.
'';
};
};
@@ -178,26 +214,40 @@ in
config = mkIf cfg.enable {
assertions =
[ { assertion = cfg.directories != [];
(mapAttrsToList (name: cfg:
{ assertion = cfg.directories != [];
message = "Must specify directories for Tarsnap to back up";
}
}) cfg.config) ++
(mapAttrsToList (name: cfg:
{ assertion = cfg.lowmem -> !cfg.verylowmem && (cfg.verylowmem -> !cfg.lowmem);
message = "You cannot set both lowmem and verylowmem";
}
];
}) cfg.config);
systemd.services."tarsnap@" = {
description = "Tarsnap Backup of '%i'";
requires = [ "network.target" ];
systemd.services.tarsnap-backup = {
description = "Tarsnap Backup process";
path = [ pkgs.tarsnap pkgs.coreutils ];
scriptArgs = "%i";
script = ''
mkdir -p -m 0755 $(dirname ${cfg.cachedir})
mkdir -p -m 0600 ${cfg.cachedir}
exec tarsnap --configfile ${configFile} -c -f ${cfg.label}-$(date +"%Y%m%d%H%M%S") ${concatStringsSep " " cfg.directories}
DIRS=`cat /etc/tarsnap/$1.dirs`
exec tarsnap --configfile /etc/tarsnap/$1.conf -c -f $1-$(date +"%Y%m%d%H%M%S") $DIRS
'';
};
services.cron.systemCronJobs = optional cfg.enable
"${cfg.period} root ${config.systemd.package}/bin/systemctl start tarsnap-backup.service";
services.cron.systemCronJobs = mapAttrsToList (name: cfg:
"${cfg.period} root ${config.systemd.package}/bin/systemctl start tarsnap@${name}"
) cfg.config;
environment.etc =
(mapAttrs' (name: cfg: nameValuePair "tarsnap/${name}.conf"
{ text = configFile cfg;
}) cfg.config) //
(mapAttrs' (name: cfg: nameValuePair "tarsnap/${name}.dirs"
{ text = concatStringsSep " " cfg.directories;
}) cfg.config);
environment.systemPackages = [ pkgs.tarsnap ];
};

View File

@@ -54,7 +54,7 @@ with lib;
users.extraUsers = singleton
{ name = endpointUser;
uid = config.ids.uids.fourStoreEndpoint;
uid = config.ids.uids.fourstorehttp;
description = "4Store SPARQL endpoint user";
# home = stateDir;
};

View File

@@ -45,7 +45,7 @@ with lib;
users.extraUsers = singleton
{ name = fourStoreUser;
uid = config.ids.uids.fourStore;
uid = config.ids.uids.fourstore;
description = "4Store database user";
home = stateDir;
};

View File

@@ -21,6 +21,7 @@ let
myCnf = pkgs.writeText "my.cnf"
''
[mysqld]
port = ${toString cfg.port}
${optionalString (cfg.replication.role == "master" || cfg.replication.role == "slave") "log-bin=mysql-bin"}
${optionalString (cfg.replication.role == "master" || cfg.replication.role == "slave") "server-id = ${toString cfg.replication.serverId}"}
${optionalString (cfg.replication.role == "slave" && !is55)

View File

@@ -0,0 +1,43 @@
# GNOME Documents daemon.
{ config, pkgs, ... }:
with pkgs.lib;
{
###### interface
options = {
services.gnome3.gnome-documents = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable GNOME Documents services, a document
manager application for GNOME.
'';
};
};
};
###### implementation
config = mkIf config.services.gnome3.gnome-documents.enable {
environment.systemPackages = [ pkgs.gnome3.gnome-documents ];
services.dbus.packages = [ pkgs.gnome3.gnome-documents ];
services.gnome3.gnome-online-accounts.enable = true;
services.gnome3.gnome-online-miners.enable = true;
};
}

View File

@@ -0,0 +1,39 @@
# GNOME Online Miners daemon.
{ config, pkgs, ... }:
with pkgs.lib;
{
###### interface
options = {
services.gnome3.gnome-online-miners = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable GNOME Online Miners, a service that
crawls through your online content.
'';
};
};
};
###### implementation
config = mkIf config.services.gnome3.gnome-online-miners.enable {
environment.systemPackages = [ pkgs.gnome3.gnome-online-miners ];
services.dbus.packages = [ pkgs.gnome3.gnome-online-miners ];
};
}

View File

@@ -0,0 +1,38 @@
# Seahorse daemon.
{ config, pkgs, ... }:
with pkgs.lib;
{
###### interface
options = {
services.gnome3.seahorse = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable Seahorse search provider for the GNOME Shell activity search.
'';
};
};
};
###### implementation
config = mkIf config.services.gnome3.seahorse.enable {
environment.systemPackages = [ pkgs.gnome3.seahorse ];
services.dbus.packages = [ pkgs.gnome3.seahorse ];
};
}

View File

@@ -57,14 +57,14 @@ in
users.extraUsers = singleton
{ name = ghostUser;
uid = config.ids.uids.ghostOne;
uid = config.ids.uids.ghostone;
description = "Ghost One game server user";
home = stateDir;
};
users.extraGroups = singleton
{ name = ghostUser;
gid = config.ids.gids.ghostOne;
gid = config.ids.gids.ghostone;
};
services.ghostOne.config = ''

View File

@@ -4,30 +4,34 @@ with lib;
{
options.services.hardware.pommed = {
enable = mkOption {
default = false;
description = ''
Whether to use the pommed tool to handle Apple laptop keyboard hotkeys.
'';
options = {
services.hardware.pommed = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether to use the pommed tool to handle Apple laptop keyboard hotkeys.
'';
};
configFile = mkOption {
type = types.path;
description = ''
The path to the <filename>pommed.conf</filename> file.
'';
};
};
configFile = mkOption {
default = "${pkgs.pommed}/etc/pommed.conf";
description = ''
The contents of the pommed.conf file.
'';
};
};
config = mkIf config.services.hardware.pommed.enable {
environment.systemPackages = [ pkgs.polkit ];
environment.etc = [
{ source = config.services.hardware.pommed.configFile;
target = "pommed.conf";
}
];
environment.etc."pommed.conf".source = config.services.hardware.pommed.configFile;
services.hardware.pommed.configFile = "${pkgs.pommed}/etc/pommed.conf";
services.dbus.packages = [ pkgs.pommed ];

View File

@@ -20,6 +20,9 @@ let
# Miscellaneous devices.
KERNEL=="kvm", MODE="0666"
KERNEL=="kqemu", MODE="0666"
# Needed for gpm.
SUBSYSTEM=="input", KERNEL=="mice", TAG+="systemd"
'';
# Perform substitutions in all udev rules files.

View File

@@ -44,7 +44,7 @@ in {
users.extraUsers = singleton
{ name = fahUser;
uid = config.ids.uids.foldingAtHome;
uid = config.ids.uids.foldingathome;
description = "Folding@Home user";
home = stateDir;
};

View File

@@ -83,7 +83,8 @@ in
config = {
systemd.services."synergy-client" = mkIf cfgC.enable {
systemd.services."synergy-client" = {
enable = cfgC.enable;
after = [ "network.target" ];
description = "Synergy client";
wantedBy = optional cfgC.autoStart "multi-user.target";
@@ -91,7 +92,8 @@ in
serviceConfig.ExecStart = ''${pkgs.synergy}/bin/synergyc -f ${optionalString (cfgC.screenName != "") "-n ${cfgC.screenName}"} ${cfgC.serverAddress}'';
};
systemd.services."synergy-server" = mkIf cfgS.enable {
systemd.services."synergy-server" = {
enable = cfgS.enable;
after = [ "network.target" ];
description = "Synergy server";
wantedBy = optional cfgS.autoStart "multi-user.target";

View File

@@ -5,54 +5,113 @@ with lib;
let
cfg = config.services.dd-agent;
datadog_conf = pkgs.runCommand "datadog.conf" {} ''
sed -e 's|^api_key:|api_key: ${cfg.api_key}|' ${optionalString (cfg.hostname != null)
"-e 's|^#hostname: mymachine.mydomain|hostname: ${cfg.hostname}|'"
} ${pkgs.dd-agent}/etc/dd-agent/datadog.conf.example > $out
ddConf = pkgs.writeText "datadog.conf" ''
[Main]
dd_url: https://app.datadoghq.com
skip_ssl_validation: no
api_key: ${cfg.api_key}
${optionalString (cfg.hostname != null) "hostname: ${cfg.hostname}"}
collector_log_file: /var/log/datadog/collector.log
forwarder_log_file: /var/log/datadog/forwarder.log
dogstatsd_log_file: /var/log/datadog/dogstatsd.log
pup_log_file: /var/log/datadog/pup.log
# proxy_host: my-proxy.com
# proxy_port: 3128
# proxy_user: user
# proxy_password: password
# tags: mytag0, mytag1
# collect_ec2_tags: no
# recent_point_threshold: 30
# use_mount: no
# listen_port: 17123
# graphite_listen_port: 17124
# non_local_traffic: no
# use_curl_http_client: False
# bind_host: localhost
# use_pup: no
# pup_port: 17125
# pup_interface: localhost
# pup_url: http://localhost:17125
# dogstatsd_port : 8125
# dogstatsd_interval : 10
# dogstatsd_normalize : yes
# statsd_forward_host: address_of_own_statsd_server
# statsd_forward_port: 8125
# device_blacklist_re: .*\/dev\/mapper\/lxc-box.*
# ganglia_host: localhost
# ganglia_port: 8651
'';
postgresqlConfig = pkgs.writeText "postgres.yaml" cfg.postgresqlConfig;
nginxConfig = pkgs.writeText "nginx.yaml" cfg.nginxConfig;
etcfiles =
[ { source = ddConf;
target = "dd-agent/datadog.conf";
} ] ++
(optional (cfg.postgresqlConfig != null)
{ source = postgresqlConfig;
target = "dd-agent/conf.d/postgres.yaml";
}) ++
(optional (cfg.nginxConfig != null)
{ source = nginxConfig;
target = "dd-agent/conf.d/nginx.yaml";
});
in {
options.services.dd-agent = {
enable = mkOption {
description = "Whether to enable the dd-agent montioring service";
default = false;
type = types.bool;
};
# !!! This gets stored in the store (world-readable), wish we had https://github.com/NixOS/nix/issues/8
api_key = mkOption {
description = "The Datadog API key to associate the agent with your account";
example = "ae0aa6a8f08efa988ba0a17578f009ab";
type = types.str;
};
hostname = mkOption {
description = "The hostname to show in the Datadog dashboard (optional)";
default = null;
example = "mymachine.mydomain";
type = types.uniq (types.nullOr types.string);
};
postgresqlConfig = mkOption {
description = "Datadog PostgreSQL integration configuration";
default = null;
type = types.uniq (types.nullOr types.string);
};
nginxConfig = mkOption {
description = "Datadog nginx integration configuration";
default = null;
type = types.uniq (types.nullOr types.string);
};
};
config = mkIf cfg.enable {
environment.etc = [ { source = datadog_conf; target = "dd-agent/datadog.conf"; } ];
environment.systemPackages = [ pkgs."dd-agent" pkgs.sysstat pkgs.procps ];
users.extraUsers."dd-agent" = {
users.extraUsers.datadog = {
description = "Datadog Agent User";
uid = config.ids.uids.dd-agent;
group = "dd-agent";
uid = config.ids.uids.datadog;
group = "datadog";
home = "/var/log/datadog/";
createHome = true;
};
users.extraGroups.dd-agent.gid = config.ids.gids.dd-agent;
users.extraGroups.datadog.gid = config.ids.gids.datadog;
systemd.services.dd-agent = {
description = "Datadog agent monitor";
@@ -60,28 +119,30 @@ in {
wantedBy = [ "multi-user.target" ];
serviceConfig = {
ExecStart = "${pkgs.dd-agent}/bin/dd-agent foreground";
User = "dd-agent";
Group = "dd-agent";
User = "datadog";
Group = "datadog";
Restart = "always";
RestartSec = 2;
};
restartTriggers = [ pkgs.dd-agent datadog_conf ];
restartTriggers = [ pkgs.dd-agent ddConf postgresqlConfig nginxConfig ];
};
systemd.services.dogstatsd = {
description = "Datadog statsd";
path = [ pkgs."dd-agent" pkgs.python ];
path = [ pkgs."dd-agent" pkgs.python pkgs.procps ];
wantedBy = [ "multi-user.target" ];
serviceConfig = {
ExecStart = "${pkgs.dd-agent}/bin/dogstatsd start";
User = "dd-agent";
Group = "dd-agent";
User = "datadog";
Group = "datadog";
Type = "forking";
PIDFile = "/tmp/dogstatsd.pid";
Restart = "always";
RestartSec = 2;
};
restartTriggers = [ pkgs.dd-agent datadog_conf ];
restartTriggers = [ pkgs.dd-agent ddConf postgresqlConfig nginxConfig ];
};
environment.etc = etcfiles;
};
}

View File

@@ -67,11 +67,11 @@ in
config = mkIf cfg.enable {
users.extraUsers = singleton
users.extraUsers = mkIf (!config.services.zabbixServer.enable) (singleton
{ name = "zabbix";
uid = config.ids.uids.zabbix;
description = "Zabbix daemon user";
};
});
systemd.services."zabbix-agent" =
{ description = "Zabbix Agent";

View File

@@ -56,6 +56,13 @@ in
default = false;
description = "Whether to create the mount points in the exports file at startup time.";
};
lockdPort = mkOption {
default = 0;
description = ''
Fix the lockd port number. This can help setting firewall rules for NFS.
'';
};
};
};
@@ -96,6 +103,9 @@ in
# Create a state directory required by NFSv4.
mkdir -p /var/lib/nfs/v4recovery
${pkgs.procps}/sbin/sysctl -w fs.nfs.nlm_tcpport=${builtins.toString cfg.lockdPort}
${pkgs.procps}/sbin/sysctl -w fs.nfs.nlm_udpport=${builtins.toString cfg.lockdPort}
rpc.nfsd \
${if cfg.hostName != null then "-H ${cfg.hostName}" else ""} \
${builtins.toString cfg.nproc}

View File

@@ -164,6 +164,7 @@ in
httpLogin = mkOption {
type = types.str;
example = "allyourbase";
default = "";
description = ''
HTTP web login username.
'';
@@ -172,6 +173,7 @@ in
httpPass = mkOption {
type = types.str;
example = "arebelongtous";
default = "";
description = ''
HTTP web login password.
'';
@@ -237,12 +239,6 @@ in
{ assertion = cfg.apiKey != "" -> cfg.enableWebUI;
message = "If you're using an API key, you must enable the web server.";
}
# TODO FIXME: the README says not specifying the login/pass means it
# should disable authentication, but apparently it doesn't?
{ assertion = cfg.enableWebUI -> cfg.httpLogin != "" && cfg.httpPass != "";
message = "If using the web UI, you must configure a login/password.";
}
# TODO FIXME: assert the existence of sharedFolder directories?
];
users.extraUsers.btsync = {

View File

@@ -48,9 +48,10 @@ in
servers = mkOption {
default = [
"0.pool.ntp.org"
"1.pool.ntp.org"
"2.pool.ntp.org"
"0.nixos.pool.ntp.org"
"1.nixos.pool.ntp.org"
"2.nixos.pool.ntp.org"
"3.nixos.pool.ntp.org"
];
description = ''
The set of NTP servers from which to synchronise.

View File

@@ -1,13 +1,3 @@
# You may notice the commented out sections in this file,
# it would be great to configure cjdns from nix, but cjdns
# reads its configuration from stdin, including the private
# key and admin password, all nested in a JSON structure.
#
# Until a good method of storing the keys outside the nix
# store and mixing them back into a string is devised
# (without too much shell hackery), a skeleton of the
# configuration building lies commented out.
{ config, lib, pkgs, ... }:
with lib;
@@ -16,41 +6,35 @@ let
cfg = config.services.cjdns;
/*
# can't keep keys and passwords in the nix store,
# but don't want to deal with this stdin quagmire.
# would be nice to merge 'cfg' with a //,
# but the json nesting is wacky.
cjdrouteConf = builtins.toJSON ( {
admin = {
bind = cfg.admin.bind;
password = "@CJDNS_ADMIN_PASSWORD@";
};
authorizedPasswords = map (p: { password = p; }) cfg.authorizedPasswords;
interfaces = {
ETHInterface = if (cfg.ETHInterface.bind != "") then [ cfg.ETHInterface ] else [ ];
UDPInterface = if (cfg.UDPInterface.bind != "") then [ cfg.UDPInterface ] else [ ];
};
cjdrouteConf = '' {
"admin": {"bind": "${cfg.admin.bind}", "password": "\${CJDNS_ADMIN}" },
"privateKey": "\${CJDNS_KEY}",
privateKey = "@CJDNS_PRIVATE_KEY@";
"interfaces": {
''
resetAfterInactivitySeconds = 100;
+ optionalString (cfg.interfaces.udp.bind.address != null) ''
"UDPInterface": [ {
"bind": "${cfg.interfaces.udp.bind.address}:"''
${if cfg.interfaces.upd.bind.port != null
then ${toString cfg.interfaces.udp.bind.port}
else ${RANDOM}
fi)
+ '' } ]''
router = {
interface = { type = "TUNInterface"; };
ipTunnel = {
allowedConnections = [];
outgoingConnections = [];
};
};
+ (if cfg.interfaces.eth.bind != null then ''
"ETHInterface": [ {
"bind": "${cfg.interfaces.eth.bind}",
"beacon": ${toString cfg.interfaces.eth.beacon}
} ]
'' fi )
+ ''
},
"router": { "interface": { "type": "TUNInterface" }, },
"security": [ { "setuser": "nobody" } ]
}
'';
security = [ { exemptAngel = 1; setuser = "nobody"; } ];
});
cjdrouteConfFile = pkgs.writeText "cjdroute.conf" cjdrouteConf
*/
in
{
@@ -62,146 +46,180 @@ in
type = types.bool;
default = false;
description = ''
Enable this option to start a instance of the
cjdns network encryption and and routing engine.
Configuration will be read from <literal>confFile</literal>.
Whether to enable the cjdns network encryption
and routing engine. A file at /etc/cjdns.keys will
be created if it does not exist to contain a random
secret key that your IPv6 address will be derived from.
'';
};
confFile = mkOption {
default = "/etc/cjdroute.conf";
description = ''
Configuration file to pipe to cjdroute.
authorizedPasswords = mkOption {
type = types.listOf types.str;
default = [ ];
example = [
"snyrfgkqsc98qh1y4s5hbu0j57xw5s0"
"z9md3t4p45mfrjzdjurxn4wuj0d8swv"
"49275fut6tmzu354pq70sr5b95qq0vj"
];
description = ''
Any remote cjdns nodes that offer these passwords on
connection will be allowed to route through this node.
'';
};
/*
admin = {
bind = mkOption {
type = types.string;
default = "127.0.0.1:11234";
description = ''
Bind the administration port to this address and port.
'';
};
};
passwordFile = mkOption {
example = "/root/cjdns.adminPassword";
UDPInterface = {
bind = mkOption {
type = types.string;
default = "";
example = "192.168.1.32:43211";
description = ''
Address and port to bind UDP tunnels to.
'';
};
connectTo = mkOption {
type = types.attrsOf ( types.submodule (
{ options, ... }:
{ options = {
# TODO make host an option, and add it to networking.extraHosts
password = mkOption {
type = types.str;
description = "Authorized password to the opposite end of the tunnel.";
};
publicKey = mkOption {
type = types.str;
description = "Public key at the opposite end of the tunnel.";
};
};
}
));
default = { };
example = {
"192.168.1.1:27313" = {
password = "5kG15EfpdcKNX3f2GSQ0H1HC7yIfxoCoImnO5FHM";
publicKey = "371zpkgs8ss387tmr81q04mp0hg1skb51hw34vk1cq644mjqhup0.k";
};
};
description = ''
Credentials for making UDP tunnels.
'';
};
};
ETHInterface = {
bind = mkOption {
default = "";
example = "eth0";
description = ''
File containing a password to the administration port.
Bind to this device for native ethernet operation.
'';
};
};
keyFile = mkOption {
type = types.str;
example = "/root/cjdns.key";
description = ''
Path to a file containing a cjdns private key on a single line.
'';
};
passwordsFile = mkOption {
type = types.str;
default = null;
example = "/root/cjdns.authorizedPasswords";
description = ''
A file containing a list of json dictionaries with passwords.
For example:
{"password": "s8xf5z7znl4jt05g922n3wpk75wkypk"},
{ "name": "nice guy",
"password": "xhthk1mglz8tpjrbbvdlhyc092rhpx5"},
{"password": "3qfxyhmrht7uwzq29pmhbdm9w4bnc8w"}
'';
};
interfaces = {
udp = {
bind = {
address = mkOption {
default = "0.0.0.0";
description = ''
Address to bind UDP tunnels to; disable by setting to null;
'';
};
port = mkOption {
type = types.int;
default = null;
description = ''
Port to bind UDP tunnels to.
A port will be choosen at random if this is not set.
This option is required to act as the server end of
a tunnel.
'';
};
};
};
eth = {
bind = mkOption {
default = null;
example = "eth0";
description = ''
Bind to this device and operate with native wire format.
'';
};
beacon = mkOption {
default = 2;
description = ''
Auto-connect to other cjdns nodes on the same network.
Options:
0 -- Disabled.
1 -- Accept beacons, this will cause cjdns to accept incoming
beacon messages and try connecting to the sender.
2 -- Accept and send beacons, this will cause cjdns to broadcast
messages on the local network which contain a randomly
generated per-session password, other nodes which have this
set to 1 or 2 will hear the beacon messages and connect
automatically.
'';
};
connectTo = mkOption {
type = types.listOf types.str;
default = [];
description = ''
Credentials for connecting look similar to UDP credientials
except they begin with the mac address, for example:
"01:02:03:04:05:06":{"password":"a","publicKey":"b"}
'';
};
};
beacon = mkOption {
type = types.int;
default = 2;
description = ''
Auto-connect to other cjdns nodes on the same network.
Options:
0: Disabled.
1: Accept beacons, this will cause cjdns to accept incoming
beacon messages and try connecting to the sender.
2: Accept and send beacons, this will cause cjdns to broadcast
messages on the local network which contain a randomly
generated per-session password, other nodes which have this
set to 1 or 2 will hear the beacon messages and connect
automatically.
'';
};
connectTo = mkOption {
type = types.attrsOf ( types.submodule (
{ options, ... }:
{ options = {
password = mkOption {
type = types.str;
description = "Authorized password to the opposite end of the tunnel.";
};
publicKey = mkOption {
type = types.str;
description = "Public key at the opposite end of the tunnel.";
};
};
}
));
default = { };
example = {
"01:02:03:04:05:06" = {
password = "5kG15EfpdcKNX3f2GSQ0H1HC7yIfxoCoImnO5FHM";
publicKey = "371zpkgs8ss387tmr81q04mp0hg1skb51hw34vk1cq644mjqhup0.k";
};
};
description = ''
Credentials for connecting look similar to UDP credientials
except they begin with the mac address.
'';
};
};
*/
};
};
config = mkIf config.services.cjdns.enable {
boot.kernelModules = [ "tun" ];
/*
networking.firewall.allowedUDPPorts = mkIf (cfg.udp.bind.port != null) [
cfg.udp.bind.port
];
*/
# networking.firewall.allowedUDPPorts = ...
systemd.services.cjdns = {
description = "encrypted networking for everybody";
wantedBy = [ "multi-user.target" ];
wants = [ "network.target" ];
before = [ "network.target" ];
path = [ pkgs.cjdns ];
after = [ "network-interfaces.target" ];
script = ''
source /etc/cjdns.keys
echo '${cjdrouteConf}' | sed \
-e "s/@CJDNS_ADMIN_PASSWORD@/$CJDNS_ADMIN_PASSWORD/g" \
-e "s/@CJDNS_PRIVATE_KEY@/$CJDNS_PRIVATE_KEY/g" \
| ${pkgs.cjdns}/bin/cjdroute
'';
serviceConfig = {
Type = "forking";
ExecStart = ''
${pkgs.stdenv.shell} -c "${pkgs.cjdns}/sbin/cjdroute < ${cfg.confFile}"
'';
Restart = "on-failure";
};
};
system.activationScripts.cjdns = ''
grep -q "CJDNS_PRIVATE_KEY=" /etc/cjdns.keys || \
echo "CJDNS_PRIVATE_KEY=$(${pkgs.cjdns}/bin/makekey)" \
>> /etc/cjdns.keys
grep -q "CJDNS_ADMIN_PASSWORD=" /etc/cjdns.keys || \
echo "CJDNS_ADMIN_PASSWORD=$(${pkgs.coreutils}/bin/head -c 96 /dev/urandom | ${pkgs.coreutils}/bin/tr -dc A-Za-z0-9)" \
>> /etc/cjdns.keys
chmod 600 /etc/cjdns.keys
'';
assertions = [
{ assertion = ( cfg.ETHInterface.bind != "" || cfg.UDPInterface.bind != "" );
message = "Neither cjdns.ETHInterface.bind nor cjdns.UDPInterface.bind defined.";
}
{ assertion = config.networking.enableIPv6;
message = "networking.enableIPv6 must be enabled for CJDNS to work";
}
];
};
}
}

View File

@@ -36,7 +36,7 @@ let
# Ethernet cards used for bridging. Likewise for vif* and tap*
# (Xen) and virbr* and vnet* (libvirt) and c-* and ctmp-* (NixOS
# containers).
denyinterfaces ${toString ignoredInterfaces} peth* vif* tap* tun* virbr* vnet* vboxnet* c-* ctmp-*
denyinterfaces ${toString ignoredInterfaces} lo peth* vif* tap* tun* virbr* vnet* vboxnet* c-* ctmp-*
${config.networking.dhcpcd.extraConfig}
'';
@@ -44,17 +44,6 @@ let
# Hook for emitting ip-up/ip-down events.
exitHook = pkgs.writeText "dhcpcd.exit-hook"
''
#exec >> /var/log/dhcpcd 2>&1
#set -x
params="IFACE=$interface REASON=$reason"
# only works when interface is wireless and wpa_supplicant has a control socket
# but we allow it to fail silently
${optionalString config.networking.wireless.enable ''
params+=" $(${pkgs.wpa_supplicant}/sbin/wpa_cli -i$interface status 2>/dev/null | grep ssid | sed 's|^b|B|;s|ssid|SSID|' | xargs)"
''}
if [ "$reason" = BOUND -o "$reason" = REBOOT ]; then
# Restart ntpd. We need to restart it to make sure that it
# will actually do something: if ntpd cannot resolve the
@@ -109,7 +98,6 @@ in
{ description = "DHCP Client";
wantedBy = [ "network.target" ];
after = [ "systemd-udev-settle.service" ]; # FIXME
# Stopping dhcpcd during a reconfiguration is undesirable
# because it brings down the network interfaces configured by
@@ -123,9 +111,8 @@ in
serviceConfig =
{ Type = "forking";
PIDFile = "/run/dhcpcd.pid";
ExecStart = "@${dhcpcd}/sbin/dhcpcd dhcpcd --config ${dhcpcdConf}";
ExecStart = "@${dhcpcd}/sbin/dhcpcd dhcpcd --quiet --config ${dhcpcdConf}";
ExecReload = "${dhcpcd}/sbin/dhcpcd --rebind";
StandardError = "null";
Restart = "always";
};
};

View File

@@ -66,7 +66,7 @@ in
rsaKey = mkOption {
default = null;
example = /root/certificates/irc.key;
example = literalExample "/root/certificates/irc.key";
description = "
IRCD server RSA key.
";
@@ -74,7 +74,7 @@ in
certificate = mkOption {
default = null;
example = /root/certificates/irc.pem;
example = literalExample "/root/certificates/irc.pem";
description = "
IRCD server SSL certificate. There are some limitations - read manual.
";

View File

@@ -45,9 +45,10 @@ in
servers = mkOption {
default = [
"0.pool.ntp.org"
"1.pool.ntp.org"
"2.pool.ntp.org"
"0.nixos.pool.ntp.org"
"1.nixos.pool.ntp.org"
"2.nixos.pool.ntp.org"
"3.nixos.pool.ntp.org"
];
description = ''
The set of NTP servers from which to synchronise.

View File

@@ -7,161 +7,169 @@ let
in
{
options = {
services.spiped = mkOption {
type = types.attrsOf (types.submodule (
{
options = {
encrypt = mkOption {
type = types.bool;
default = false;
description = ''
Take unencrypted connections from the
<literal>source</literal> socket and send encrypted
connections to the <literal>target</literal> socket.
'';
};
services.spiped = {
enable = mkOption {
type = types.bool;
default = false;
description = "Enable the spiped service module.";
};
decrypt = mkOption {
type = types.bool;
default = false;
description = ''
Take encrypted connections from the
<literal>source</literal> socket and send unencrypted
connections to the <literal>target</literal> socket.
'';
};
config = mkOption {
type = types.attrsOf (types.submodule (
{
options = {
encrypt = mkOption {
type = types.bool;
default = false;
description = ''
Take unencrypted connections from the
<literal>source</literal> socket and send encrypted
connections to the <literal>target</literal> socket.
'';
};
source = mkOption {
type = types.str;
description = ''
Address on which spiped should listen for incoming
connections. Must be in one of the following formats:
<literal>/absolute/path/to/unix/socket</literal>,
<literal>host.name:port</literal>,
<literal>[ip.v4.ad.dr]:port</literal> or
<literal>[ipv6::addr]:port</literal> - note that
hostnames are resolved when spiped is launched and are
not re-resolved later; thus if DNS entries change
spiped will continue to connect to the expired
address.
'';
};
decrypt = mkOption {
type = types.bool;
default = false;
description = ''
Take encrypted connections from the
<literal>source</literal> socket and send unencrypted
connections to the <literal>target</literal> socket.
'';
};
target = mkOption {
type = types.str;
description = "Address to which spiped should connect.";
};
source = mkOption {
type = types.str;
description = ''
Address on which spiped should listen for incoming
connections. Must be in one of the following formats:
<literal>/absolute/path/to/unix/socket</literal>,
<literal>host.name:port</literal>,
<literal>[ip.v4.ad.dr]:port</literal> or
<literal>[ipv6::addr]:port</literal> - note that
hostnames are resolved when spiped is launched and are
not re-resolved later; thus if DNS entries change
spiped will continue to connect to the expired
address.
'';
};
keyfile = mkOption {
type = types.path;
description = ''
Name of a file containing the spiped key. As the
daemon runs as the <literal>spiped</literal> user, the
key file must be somewhere owned by that user. By
default, we recommend putting the keys for any spipe
services in <literal>/var/lib/spiped</literal>.
'';
};
target = mkOption {
type = types.str;
description = "Address to which spiped should connect.";
};
timeout = mkOption {
type = types.int;
default = 5;
description = ''
Timeout, in seconds, after which an attempt to connect to
the target or a protocol handshake will be aborted (and the
connection dropped) if not completed
'';
};
keyfile = mkOption {
type = types.path;
description = ''
Name of a file containing the spiped key. As the
daemon runs as the <literal>spiped</literal> user, the
key file must be somewhere owned by that user. By
default, we recommend putting the keys for any spipe
services in <literal>/var/lib/spiped</literal>.
'';
};
maxConns = mkOption {
type = types.int;
default = 100;
description = ''
Limit on the number of simultaneous connections allowed.
'';
};
timeout = mkOption {
type = types.int;
default = 5;
description = ''
Timeout, in seconds, after which an attempt to connect to
the target or a protocol handshake will be aborted (and the
connection dropped) if not completed
'';
};
waitForDNS = mkOption {
type = types.bool;
default = false;
description = ''
Wait for DNS. Normally when <literal>spiped</literal> is
launched it resolves addresses and binds to its source
socket before the parent process returns; with this option
it will daemonize first and retry failed DNS lookups until
they succeed. This allows <literal>spiped</literal> to
launch even if DNS isn't set up yet, but at the expense of
losing the guarantee that once <literal>spiped</literal> has
finished launching it will be ready to create pipes.
'';
};
maxConns = mkOption {
type = types.int;
default = 100;
description = ''
Limit on the number of simultaneous connections allowed.
'';
};
disableKeepalives = mkOption {
type = types.bool;
default = false;
description = "Disable transport layer keep-alives.";
};
waitForDNS = mkOption {
type = types.bool;
default = false;
description = ''
Wait for DNS. Normally when <literal>spiped</literal> is
launched it resolves addresses and binds to its source
socket before the parent process returns; with this option
it will daemonize first and retry failed DNS lookups until
they succeed. This allows <literal>spiped</literal> to
launch even if DNS isn't set up yet, but at the expense of
losing the guarantee that once <literal>spiped</literal> has
finished launching it will be ready to create pipes.
'';
};
weakHandshake = mkOption {
type = types.bool;
default = false;
description = ''
Use fast/weak handshaking: This reduces the CPU time spent
in the initial connection setup, at the expense of losing
perfect forward secrecy.
'';
};
disableKeepalives = mkOption {
type = types.bool;
default = false;
description = "Disable transport layer keep-alives.";
};
resolveRefresh = mkOption {
type = types.int;
default = 60;
description = ''
Resolution refresh time for the target socket, in seconds.
'';
};
weakHandshake = mkOption {
type = types.bool;
default = false;
description = ''
Use fast/weak handshaking: This reduces the CPU time spent
in the initial connection setup, at the expense of losing
perfect forward secrecy.
'';
};
disableReresolution = mkOption {
type = types.bool;
default = false;
description = "Disable target address re-resolution.";
};
};
}
));
resolveRefresh = mkOption {
type = types.int;
default = 60;
description = ''
Resolution refresh time for the target socket, in seconds.
'';
};
default = {};
example = literalExample ''
{
pipe1 =
{ keyfile = "/var/lib/spiped/pipe1.key";
encrypt = true;
source = "localhost:6000";
target = "endpoint.example.com:7000";
disableReresolution = mkOption {
type = types.bool;
default = false;
description = "Disable target address re-resolution.";
};
};
pipe2 =
{ keyfile = "/var/lib/spiped/pipe2.key";
decrypt = true;
source = "0.0.0.0:7000";
target = "localhost:3000";
};
}
'';
}
));
description = ''
Configuration for a secure pipe daemon. The daemon can be
started, stopped, or examined using
<literal>systemctl</literal>, under the name
<literal>spiped@foo</literal>.
'';
default = {};
example = literalExample ''
{
pipe1 =
{ keyfile = "/var/lib/spiped/pipe1.key";
encrypt = true;
source = "localhost:6000";
target = "endpoint.example.com:7000";
};
pipe2 =
{ keyfile = "/var/lib/spiped/pipe2.key";
decrypt = true;
source = "0.0.0.0:7000";
target = "localhost:3000";
};
}
'';
description = ''
Configuration for a secure pipe daemon. The daemon can be
started, stopped, or examined using
<literal>systemctl</literal>, under the name
<literal>spiped@foo</literal>.
'';
};
};
};
config = {
config = mkIf cfg.enable {
assertions = mapAttrsToList (name: c: {
assertion = (c.encrypt -> !c.decrypt) || (c.decrypt -> c.encrypt);
message = "A pipe must either encrypt or decrypt";
}) cfg;
}) cfg.config;
users.extraGroups.spiped.gid = config.ids.gids.spiped;
users.extraUsers.spiped = {
@@ -189,7 +197,7 @@ in
script = "exec ${pkgs.spiped}/bin/spiped -F `cat /etc/spiped/$1.spec`";
};
system.activationScripts.spiped = optionalString (cfg != {})
system.activationScripts.spiped = optionalString (cfg.config != {})
"mkdir -p /var/lib/spiped";
# Setup spiped config files
@@ -207,6 +215,6 @@ in
(if cfg.disableReresolution then "-R"
else "-r ${toString cfg.resolveRefresh}")
];
}) cfg;
}) cfg.config;
};
}

View File

@@ -46,9 +46,7 @@ in
example = [ "wlan0" "wlan1" ];
description = ''
The interfaces <command>wpa_supplicant</command> will use. If empty, it will
automatically use all wireless interfaces. (Note that auto-detection is currently
broken on Linux 3.4.x kernels. See http://github.com/NixOS/nixos/issues/10 for
further details.)
automatically use all wireless interfaces.
'';
};
@@ -92,11 +90,11 @@ in
services.dbus.packages = [ pkgs.wpa_supplicant ];
# FIXME: start a separate wpa_supplicant instance per interface.
jobs.wpa_supplicant =
{ description = "WPA Supplicant";
wantedBy = [ "network.target" ];
after = [ "systemd-udev-settle.service" ];
path = [ pkgs.wpa_supplicant ];
@@ -135,6 +133,12 @@ in
assertions = [{ assertion = !cfg.userControlled.enable || cfg.interfaces != [];
message = "user controlled wpa_supplicant needs explicit networking.wireless.interfaces";}];
# Restart wpa_supplicant when a wlan device appears or disappears.
services.udev.extraRules =
''
ACTION=="add|remove", SUBSYSTEM=="net", ENV{DEVTYPE}=="wlan", RUN+="${config.systemd.package}/bin/systemctl try-restart wpa_supplicant.service"
'';
};
}

View File

@@ -56,6 +56,15 @@ in
'';
};
listenAddresses = mkOption {
type = types.listOf types.str;
default = [ "127.0.0.1:631" ];
example = [ "*:631" ];
description = ''
A list of addresses and ports on which to listen.
'';
};
bindirCmds = mkOption {
type = types.lines;
internal = true;
@@ -126,7 +135,8 @@ in
{ description = "CUPS Printing Daemon";
wantedBy = [ "multi-user.target" ];
after = [ "network-interfaces.target" ];
wants = [ "network.target" ];
after = [ "network.target" ];
path = [ cups ];
@@ -145,7 +155,7 @@ in
services.printing.drivers =
[ pkgs.cups pkgs.cups_pdf_filter pkgs.ghostscript additionalBackends
pkgs.perl pkgs.coreutils pkgs.gnused pkgs.bc pkgs.gawk pkgs.gnugrep
];
];
services.printing.cupsdConf =
''
@@ -153,7 +163,9 @@ in
SystemGroup root wheel
Listen localhost:631
${concatMapStrings (addr: ''
Listen ${addr}
'') cfg.listenAddresses}
Listen /var/run/cups/cups.sock
# Note: we can't use ${cups}/etc/cups as the ServerRoot, since

View File

@@ -91,12 +91,10 @@ in
environment.systemPackages = [ cronNixosPkg ];
jobs.cron =
systemd.services.cron =
{ description = "Cron Daemon";
startOn = "startup";
path = [ cronNixosPkg ];
wantedBy = [ "multi-user.target" ];
preStart =
''
@@ -109,7 +107,8 @@ in
fi
'';
exec = "cron -n";
restartTriggers = [ config.environment.etc.localtime.source ];
serviceConfig.ExecStart = "${cronNixosPkg}/sbin/cron -n";
};
};

View File

@@ -106,6 +106,7 @@ in {
serviceConfig = {
ExecStart = "${pkgs.elasticsearch}/bin/elasticsearch -f -Des.path.conf=${configDir}";
User = "elasticsearch";
PermissionsStartOnly = true;
};
preStart = ''
mkdir -m 0700 -p ${cfg.dataDir}

View File

@@ -9,6 +9,8 @@ let
inherit (pkgs.lib) singleton;
cfgFile = pkgs.writeText "nscd.conf" cfg.config;
in
{
@@ -63,7 +65,7 @@ in
restartTriggers = [ config.environment.etc.hosts.source ];
serviceConfig =
{ ExecStart = "@${pkgs.glibc}/sbin/nscd nscd -f ${pkgs.writeText "nscd.conf" cfg.config}";
{ ExecStart = "@${pkgs.glibc}/sbin/nscd nscd -f ${cfgFile}";
Type = "forking";
PIDFile = "/run/nscd/nscd.pid";
Restart = "always";
@@ -73,6 +75,15 @@ in
"${pkgs.glibc}/sbin/nscd --invalidate hosts"
];
};
# Urgggggh... Nscd forks before opening its socket and writing
# its pid. So wait until it's ready.
postStart =
''
while ! ${pkgs.glibc}/sbin/nscd -g -f ${cfgFile} > /dev/null; do
sleep 0.2
done
'';
};
};

View File

@@ -44,7 +44,8 @@ in
{ description = "Console Mouse Daemon";
wantedBy = [ "multi-user.target" ];
requires = [ "getty.target" ];
requires = [ "dev-input-mice.device" ];
after = [ "dev-input-mice.device" ];
serviceConfig.ExecStart = "@${pkgs.gpm}/sbin/gpm gpm -m /dev/input/mice -t ${cfg.protocol}";
serviceConfig.Type = "forking";

View File

@@ -206,16 +206,12 @@ let
</Directory>
'';
robotsTxt = pkgs.writeText "robots.txt" ''
${# If this is a vhost, the include the entries for the main server as well.
if isMainServer then ""
else concatMapStrings (svc: svc.robotsEntries) mainSubservices}
${concatMapStrings (svc: svc.robotsEntries) subservices}
'';
robotsConf = ''
Alias /robots.txt ${robotsTxt}
'';
robotsTxt =
concatStringsSep "\n" (filter (x: x != "") (
# If this is a vhost, the include the entries for the main server as well.
(if isMainServer then [] else [mainCfg.robotsEntries] ++ map (svc: svc.robotsEntries) mainSubservices)
++ [cfg.robotsEntries]
++ (map (svc: svc.robotsEntries) subservices)));
in ''
ServerName ${serverInfo.canonicalName}
@@ -243,7 +239,9 @@ let
CustomLog ${mainCfg.logDir}/access_log-${cfg.hostName} ${cfg.logFormat}
'' else ""}
${robotsConf}
${optionalString (robotsTxt != "") ''
Alias /robots.txt ${pkgs.writeText "robots.txt" robotsTxt}
''}
${if isMainServer || maybeDocumentRoot != null then documentRootConf else ""}
@@ -594,14 +592,14 @@ in
message = "SSL is enabled for HTTPD, but sslServerCert and/or sslServerKey haven't been specified."; }
];
users.extraUsers = optionalAttrs (mainCfg.user == "wwwrun") singleton
users.extraUsers = optional (mainCfg.user == "wwwrun")
{ name = "wwwrun";
group = "wwwrun";
description = "Apache httpd user";
uid = config.ids.uids.wwwrun;
};
users.extraGroups = optionalAttrs (mainCfg.group == "wwwrun") singleton
users.extraGroups = optional (mainCfg.group == "wwwrun")
{ name = "wwwrun";
gid = config.ids.gids.wwwrun;
};

View File

@@ -142,9 +142,19 @@ with lib;
type = types.str;
default = "common";
example = "combined";
description = "
description = ''
Log format for Apache's log files. Possible values are: combined, common, referer, agent.
";
'';
};
robotsEntries = mkOption {
type = types.lines;
default = "";
example = "Disallow: /foo/";
description = ''
Specification of pages to be ignored by web crawlers. See <link
xlink:href='http://www.robotstxt.org/'/> for details.
'';
};
}

View File

@@ -8,8 +8,6 @@ let
subversion = pkgs.subversion.override (origArgs: {
bdbSupport = true;
httpServer = true;
sslSupport = true;
compressionSupport = true;
pythonBindings = true;
});

View File

@@ -15,6 +15,16 @@ let
in
filter (x: !(builtins.elem (pkgName x) ysNames)) xs;
# Prioritize nautilus by default when opening directories
mimeAppsList = pkgs.writeTextFile {
name = "gnome-mimeapps";
destination = "/share/applications/mimeapps.list";
text = ''
[Default Applications]
inode/directory=nautilus.desktop
'';
};
in {
options = {
@@ -42,9 +52,11 @@ in {
services.accounts-daemon.enable = true;
services.gnome3.at-spi2-core.enable = true;
services.gnome3.evolution-data-server.enable = true;
services.gnome3.gnome-documents.enable = mkDefault true;
services.gnome3.gnome-keyring.enable = true;
services.gnome3.gnome-online-accounts.enable = mkDefault true;
services.gnome3.gnome-user-share.enable = mkDefault true;
services.gnome3.seahorse.enable = mkDefault true;
services.gnome3.sushi.enable = mkDefault true;
services.gnome3.tracker.enable = mkDefault true;
hardware.pulseaudio.enable = mkDefault true;
@@ -52,7 +64,7 @@ in {
networking.networkmanager.enable = true;
services.upower.enable = config.powerManagement.enable;
fonts.extraFonts = [ pkgs.dejavu_fonts ];
fonts.fonts = [ pkgs.dejavu_fonts ];
services.xserver.desktopManager.session = singleton
{ name = "gnome3";
@@ -66,7 +78,8 @@ in {
export XDG_MENU_PREFIX=gnome
# Don't let epiphany depend upon gnome-shell
export XDG_DATA_DIRS=$XDG_DATA_DIRS''${XDG_DATA_DIRS:+:}${pkgs.gnome3.gnome_shell}/share/gsettings-schemas/${pkgs.gnome3.gnome_shell.name}
# Override default mimeapps
export XDG_DATA_DIRS=$XDG_DATA_DIRS''${XDG_DATA_DIRS:+:}${pkgs.gnome3.gnome_shell}/share/gsettings-schemas/${pkgs.gnome3.gnome_shell.name}:${mimeAppsList}/share
# Let gnome-control-center find gnome-shell search providers
export GNOME_SEARCH_PROVIDERS_DIR=${config.system.path}/share/gnome-shell/search-providers/
@@ -87,6 +100,7 @@ in {
pkgs.gtk3 # for gtk-update-icon-cache
pkgs.ibus
pkgs.shared_mime_info # for update-mime-database
gnome3.gvfs
gnome3.dconf
gnome3.gnome-backgrounds
gnome3.gnome_control_center
@@ -117,6 +131,8 @@ in {
gnome3.gnome-user-docs
gnome3.file-roller
gnome3.gedit
gnome3.gnome-music
gnome3.gnome-tweak-tool
] config.environment.gnome3.excludePackages);

View File

@@ -169,7 +169,6 @@ in
xserverBin = mkOption {
type = types.path;
default = "${xorg.xorgserver}/bin/X";
description = "Path to the X server used by display managers.";
};
@@ -258,7 +257,7 @@ in
environment = mkOption {
type = types.attrsOf types.unspecified;
default = {};
example = { SLIM_CFGFILE = /etc/slim.conf; };
example = literalExample "{ SLIM_CFGFILE = /etc/slim.conf; }";
description = "Additional environment variables needed by the display manager.";
};
@@ -278,4 +277,10 @@ in
};
config = {
services.xserver.displayManager.xserverBin = "${xorg.xorgserver}/bin/X";
};
}

View File

@@ -58,7 +58,7 @@ in
default = null;
example = literalExample ''
pkgs.fetchurl {
url = http://download.berlios.de/slim/slim-wave.tar.gz;
url = "mirror://sourceforge/slim.berlios/slim-wave.tar.gz";
sha256 = "0ndr419i5myzcylvxb89m9grl2xyq6fbnyc3lkd711mzlmnnfxdy";
}
'';
@@ -66,7 +66,7 @@ in
The theme for the SLiM login manager. If not specified, SLiM's
default theme is used. See <link
xlink:href='http://slim.berlios.de/themes01.php'/> for a
collection of themes.
collection of themes. TODO: berlios shut down.
'';
};

View File

@@ -27,7 +27,7 @@ in
config = {
services.xserver.enable = true;
hardware.opengl.videoDrivers = [];
services.xserver.videoDrivers = [];
# Enable KDM. Any display manager will do as long as it supports XDMCP.
services.xserver.displayManager.kdm.enable = true;

View File

@@ -11,30 +11,16 @@ let
xorg = pkgs.xorg;
# Map video driver names to driver packages.
# Map video driver names to driver packages. FIXME: move into card-specific modules.
knownVideoDrivers = {
ati_unfree = { modules = [ kernelPackages.ati_drivers_x11 ]; driverName = "fglrx"; };
nouveau = { modules = [ pkgs.xf86_video_nouveau ]; };
nvidia = { modules = [ kernelPackages.nvidia_x11 ]; };
nvidiaLegacy173 = { modules = [ kernelPackages.nvidia_x11_legacy173 ]; driverName = "nvidia"; };
nvidiaLegacy304 = { modules = [ kernelPackages.nvidia_x11_legacy304 ]; driverName = "nvidia"; };
unichrome = { modules = [ pkgs.xorgVideoUnichrome ]; };
virtualbox = { modules = [ kernelPackages.virtualboxGuestAdditions ]; driverName = "vboxvideo"; };
ati = { modules = [ pkgs.xorg.xf86videoati pkgs.xorg.glamoregl ]; };
intel-testing = { modules = with pkgs.xorg; [ xf86videointel-testing glamoregl ]; driverName = "intel"; };
};
driverNames = config.hardware.opengl.videoDrivers;
needsAcpid =
(elem "nvidia" driverNames) ||
(elem "nvidiaLegacy173" driverNames) ||
(elem "nvidiaLegacy304" driverNames);
drivers = flip map driverNames
(name: { inherit name; driverName = name; } //
attrByPath [name] (if (hasAttr ("xf86video" + name) xorg) then { modules = [(getAttr ("xf86video" + name) xorg) ]; } else throw "unknown video driver `${name}'") knownVideoDrivers);
fontsForXServer =
config.fonts.fonts ++
# We don't want these fonts in fonts.conf, because then modern,
@@ -79,7 +65,6 @@ let
monitors = foldl mkMonitor [] xrandrHeads;
in concatMapStrings (getAttr "value") monitors;
configFile = pkgs.stdenv.mkDerivation {
name = "xserver.conf";
@@ -181,6 +166,18 @@ in
'';
};
videoDrivers = mkOption {
type = types.listOf types.str;
# !!! We'd like "nv" here, but it segfaults the X server.
default = [ "ati" "cirrus" "intel" "vesa" "vmware" ];
example = [ "vesa" ];
description = ''
The names of the video drivers the configuration
supports. They will be tried in order until one that
supports your card is found.
'';
};
videoDriver = mkOption {
type = types.nullOr types.str;
default = null;
@@ -188,7 +185,16 @@ in
description = ''
The name of the video driver for your graphics card. This
option is obsolete; please set the
<option>hardware.opengl.videoDrivers</option> instead.
<option>services.xserver.videoDrivers</option> instead.
'';
};
drivers = mkOption {
type = types.listOf types.attrs;
internal = true;
description = ''
A list of attribute sets specifying drivers to be loaded by
the X11 server.
'';
};
@@ -385,8 +391,20 @@ in
###### implementation
config = mkIf cfg.enable {
hardware.opengl.enable = true;
hardware.opengl.videoDrivers = mkIf (cfg.videoDriver != null) [ cfg.videoDriver ];
hardware.opengl.enable = mkDefault true;
services.xserver.videoDrivers = mkIf (cfg.videoDriver != null) [ cfg.videoDriver ];
# FIXME: somehow check for unknown driver names.
services.xserver.drivers = flip concatMap cfg.videoDrivers (name:
let driver =
attrByPath [name]
(if (hasAttr ("xf86video" + name) xorg)
then { modules = [(getAttr ("xf86video" + name) xorg) ]; }
else null)
knownVideoDrivers;
in optional (driver != null) ({ inherit name; driverName = name; } // driver));
assertions =
[ { assertion = !(config.programs.ssh.startAgent && cfg.startGnuPGAgent);
@@ -426,24 +444,18 @@ in
pkgs.xterm
pkgs.xdg_utils
]
++ optional (elem "nvidia" driverNames) kernelPackages.nvidia_x11
++ optional (elem "nvidiaLegacy173" driverNames) kernelPackages.nvidia_x11_legacy173
++ optional (elem "nvidiaLegacy304" driverNames) kernelPackages.nvidia_x11_legacy304
++ optional (elem "virtualbox" driverNames) xorg.xrefresh
++ optional (elem "ati_unfree" driverNames) kernelPackages.ati_drivers_x11;
services.acpid.enable = mkIf needsAcpid true;
++ optional (elem "virtualbox" cfg.videoDrivers) xorg.xrefresh
++ optional (elem "ati_unfree" cfg.videoDrivers) kernelPackages.ati_drivers_x11;
environment.pathsToLink =
[ "/etc/xdg" "/share/xdg" "/share/applications" "/share/icons" "/share/pixmaps" ];
systemd.defaultUnit = mkIf cfg.autorun "graphical.target";
systemd.services."display-manager" =
systemd.services.display-manager =
{ description = "X11 Server";
after = [ "systemd-udev-settle.service" "local-fs.target" ]
++ optional needsAcpid "acpid.service";
after = [ "systemd-udev-settle.service" "local-fs.target" "acpid.service" ];
restartIfChanged = false;
@@ -451,15 +463,11 @@ in
{ FONTCONFIG_FILE = "/etc/fonts/fonts.conf"; # !!! cleanup
XKB_BINDIR = "${xorg.xkbcomp}/bin"; # Needed for the Xkb extension.
XORG_DRI_DRIVER_PATH = "/run/opengl-driver/lib/dri"; # !!! Depends on the driver selected at runtime.
} // optionalAttrs (elem "nvidia" driverNames) {
LD_LIBRARY_PATH = "${xorg.libX11}/lib:${xorg.libXext}/lib:${kernelPackages.nvidia_x11}/lib";
} // optionalAttrs (elem "nvidiaLegacy173" driverNames) {
LD_LIBRARY_PATH = "${xorg.libX11}/lib:${xorg.libXext}/lib:${kernelPackages.nvidia_x11_legacy173}/lib";
} // optionalAttrs (elem "nvidiaLegacy304" driverNames) {
LD_LIBRARY_PATH = "${xorg.libX11}/lib:${xorg.libXext}/lib:${kernelPackages.nvidia_x11_legacy304}/lib";
} // optionalAttrs (elem "ati_unfree" driverNames) {
LD_LIBRARY_PATH = "${xorg.libX11}/lib:${xorg.libXext}/lib:${kernelPackages.ati_drivers_x11}/lib:${kernelPackages.ati_drivers_x11}/X11R6/lib64/modules/linux";
#XORG_DRI_DRIVER_PATH = "${kernelPackages.ati_drivers_x11}/lib/dri"; # is ignored because ati drivers ship their own unpatched libglx.so !
LD_LIBRARY_PATH = concatStringsSep ":" (
[ "${xorg.libX11}/lib" "${xorg.libXext}/lib" ]
++ optionals (elem "ati_unfree" cfg.videoDrivers)
[ "${kernelPackages.ati_drivers_x11}/lib" "${kernelPackages.ati_drivers_x11}/X11R6/lib64/modules/linux" ]
++ concatLists (catAttrs "libPath" cfg.drivers));
} // cfg.displayManager.job.environment;
preStart =
@@ -489,7 +497,7 @@ in
] ++ optional (!cfg.enableTCP) "-nolisten tcp";
services.xserver.modules =
concatLists (catAttrs "modules" drivers) ++
concatLists (catAttrs "modules" cfg.drivers) ++
[ xorg.xorgserver
xorg.xf86inputevdev
];
@@ -525,7 +533,7 @@ in
${cfg.serverLayoutSection}
# Reference the Screen sections for each driver. This will
# cause the X server to try each in turn.
${flip concatMapStrings drivers (d: ''
${flip concatMapStrings cfg.drivers (d: ''
Screen "Screen-${d.name}[0]"
'')}
EndSection
@@ -539,11 +547,11 @@ in
# For each supported driver, add a "Device" and "Screen"
# section.
${flip concatMapStrings drivers (driver: ''
${flip concatMapStrings cfg.drivers (driver: ''
Section "Device"
Identifier "Device-${driver.name}[0]"
Driver "${driver.driverName}"
Driver "${driver.driverName or driver.name}"
${if cfg.useGlamor then ''Option "AccelMethod" "glamor"'' else ""}
${cfg.deviceSection}
${xrandrDeviceSection}
@@ -562,10 +570,6 @@ in
DefaultDepth ${toString cfg.defaultDepth}
''}
${optionalString (driver.name == "nvidia") ''
Option "RandRRotation" "on"
''}
${optionalString
(driver.name != "virtualbox" &&
(cfg.resolutions != [] ||

View File

@@ -65,12 +65,12 @@ $SIG{PIPE} = "IGNORE";
sub getActiveUnits {
# FIXME: use D-Bus or whatever to query this, since parsing the
# output of list-units is likely to break.
my $lines = `LANG= @systemd@/bin/systemctl list-units --full`;
my $lines = `LANG= systemctl list-units --full --no-legend`;
my $res = {};
foreach my $line (split '\n', $lines) {
chomp $line;
last if $line eq "";
$line =~ /^\*?\s*(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s/ or next;
$line =~ /^(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s/ or next;
next if $1 eq "UNIT";
$res->{$1} = { load => $2, state => $3, substate => $4 };
}
@@ -188,7 +188,7 @@ while (my ($unit, $state) = each %{$activePrev}) {
if (boolIsTrue($unitInfo->{'X-ReloadIfChanged'} // "no")) {
write_file($reloadListFile, { append => 1 }, "$unit\n");
}
elsif (!boolIsTrue($unitInfo->{'X-RestartIfChanged'} // "yes")) {
elsif (!boolIsTrue($unitInfo->{'X-RestartIfChanged'} // "yes") || boolIsTrue($unitInfo->{'RefuseManualStop'} // "no") ) {
push @unitsToSkip, $unit;
} else {
# If this unit is socket-activated, then stop the
@@ -297,7 +297,7 @@ foreach my $device (keys %$prevSwaps) {
if (scalar @unitsToStop > 0) {
@unitsToStop = unique(@unitsToStop);
print STDERR "stopping the following units: ", join(", ", sort(@unitsToStop)), "\n";
system("@systemd@/bin/systemctl", "stop", "--", @unitsToStop); # FIXME: ignore errors?
system("systemctl", "stop", "--", @unitsToStop); # FIXME: ignore errors?
}
print STDERR "NOT restarting the following units: ", join(", ", sort(@unitsToSkip)), "\n"

View File

@@ -25,7 +25,7 @@ let
inherit (cfg)
version extraConfig extraPerEntryConfig extraEntries
extraEntriesBeforeNixOS extraPrepareConfig configurationLimit copyKernels timeout
default devices;
default devices explicitBootRoot;
path = (makeSearchPath "bin" [
pkgs.coreutils pkgs.gnused pkgs.gnugrep pkgs.findutils pkgs.diffutils
]) + ":" + (makeSearchPath "sbin" [
@@ -209,6 +209,15 @@ in
'';
};
explicitBootRoot = mkOption {
default = "";
type = types.str;
description = ''
The relative path of /boot within the parent volume. Leave empty
if /boot is not a btrfs subvolume.
'';
};
};
};

View File

@@ -39,6 +39,7 @@ my $configurationLimit = int(get("configurationLimit"));
my $copyKernels = get("copyKernels") eq "true";
my $timeout = int(get("timeout"));
my $defaultEntry = int(get("default"));
my $explicitBootRoot = get("explicitBootRoot");
$ENV{'PATH'} = get("path");
die "unsupported GRUB version\n" if $grubVersion != 1 && $grubVersion != 2;
@@ -61,6 +62,10 @@ if (stat("/")->dev != stat("/boot")->dev) {
$copyKernels = 1;
}
if ($explicitBootRoot ne "") {
$bootRoot = $explicitBootRoot;
}
# Generate the header.
my $conf .= "# Automatically generated. DO NOT EDIT THIS FILE!\n";

View File

@@ -54,6 +54,8 @@ in {
}
];
boot.loader.grub.enable = mkDefault false;
system = {
build.installBootLoader = gummibootBuilder;

View File

@@ -348,7 +348,7 @@ in
options = {
device = mkOption {
default = /dev/sda1;
default = "/dev/sda1";
type = types.path;
description = ''
An unencrypted device that will temporarily be mounted in stage-1.

View File

@@ -13,7 +13,7 @@ with lib;
unitConfig = {
DefaultDependencies = false;
ConditionVirtualization = "!systemd-nspawn";
ConditionPathExists = "/dev/rtc";
};
serviceConfig = {

Some files were not shown because too many files have changed in this diff Show More