Regression introduced by 4dcb685af9.
Unsetting the environment variable shortly before using it is not going
to end up very well, so let's just filter out the variable from the
output of export and unset it shortly afterwards.
This fixes the runInMachine NixOS test.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
(cherry picked from commit b4e2b6bc6a)
This fixes two bugs:
* When socket activation is detected, the service itself is added to stop-start list instead of its sockets.
* When service is marked to restart instead of stop (`StopIfChanged = no`) we don't need to restart sockets.
(cherry picked from commit d37458ad06)
This is a standard environment that doesn't contain a C/C++
compiler. This is mostly to prevent trivial builders like runCommand
and substituteAll from pulling in gcc for simple configuration changes
on NixOS.
(cherry picked from commit 0cb16a6955)
Obviously there are more improvements that can be done here,
especially moving headers to .dev, but that's not entirely trivial and
probably not worth it since kde4 is old.
(cherry picked from commit d65af13533)
Fixes#18840: too large closure of mesa_drivers.
Tested atop 16.09:
- clang compiles a hello-world app;
- mesa seems to link OK;
- ispc builds.
Size comparison:
- 80 MB of full llvm-3.7 on 16.03;
- 200 MB of full llvm-3.9 on 16.09 before this patch;
- 50 MB of libLLVM after this commit.
(cherry picked from commit d2965a7d85)
By deduplicating libXvMC*.so and {r600,radionsi}_drv_video.so, this
reduces the size of the drivers output from 63.3 MiB to 49.8 MiB.
(cherry picked from commit 28a659974a)
The use of multiple outputs in libarchive broke it. Since this is an
ancient version of cmake, let's fix it by just using
--no-system-libarchive.
(cherry picked from commit e03d1ababa)
The following changes are included:
1) install user unit files from upstream dbus
2) use absolute paths to config for --system and --session instances
3) make socket activation of user units configurable
There has been a number of PRs to address this, so this one does the
bare minimum, which is to make the functionality available and
configurable but defaults to off.
Related PRs:
- #18382
- #18222
Avoid these warnings from being errors:
usbredirhost.c: In function 'usbredirhost_can_write_iso_package':
usbredirhost.c:1023:19: warning: format '%lu' expects argument of type 'long unsigned int', but argument 4 has type 'uint64_t {aka long long unsigned int}' [-Wformat=]
DEBUG("START dropping isoc packets %lu buffer > %lu hi threshold",
^
usbredirhost.c:1023:19: warning: format '%lu' expects argument of type 'long unsigned int', but argument 5 has type 'uint64_t {aka long long unsigned int}' [-Wformat=]
DEBUG("START dropping isoc packets %lu buffer > %lu hi threshold",
^
usbredirhost.c:1028:19: warning: format '%lu' expects argument of type 'long unsigned int', but argument 4 has type 'uint64_t {aka long long unsigned int}' [-Wformat=]
DEBUG("STOP dropping isoc packets %lu buffer < %lu low threshold",
^
usbredirhost.c:1028:19: warning: format '%lu' expects argument of type 'long unsigned int', but argument 5 has type 'uint64_t {aka long long unsigned int}' [-Wformat=]
DEBUG("STOP dropping isoc packets %lu buffer < %lu low threshold",
^
usbredirhost.c: In function 'usbredirhost_set_iso_threshold':
usbredirhost.c:1162:11: warning: format '%lu' expects argument of type 'long unsigned int', but argument 4 has type 'uint64_t {aka long long unsigned int}' [-Wformat=]
DEBUG("higher threshold is %lu bytes | lower threshold is %lu bytes",
^
usbredirhost.c:1162:11: warning: format '%lu' expects argument of type 'long unsigned int', but argument 5 has type 'uint64_t {aka long long unsigned int}' [-Wformat=]
DEBUG("higher threshold is %lu bytes | lower threshold is %lu bytes",
I think in all of these cases, the incorrect format modifier just causes
wrong debug prints on i686.
(cherry picked from commit b3af42011b)
Since some changes to the setuid wrappers, there is a symlink involved
and it doesn't resolve correctly inside the chroot. Do the check inside
the chroot to make it work again.
(cherry picked from commit a34ec1517f)
- Set a cmake flag to allow cmake to find CUDA automatically.
- Pass -D_FORCE_INLINES to work around
/nix/store/8sl4jfs3nq0pkq4gg655s3axrxdx7z29-glibc-2.24-dev/include/string.h: In function 'void* __mempcpy_inline(void*, const void*, size_t)':
/nix/store/8sl4jfs3nq0pkq4gg655s3axrxdx7z29-glibc-2.24-dev/include/string.h:650:42: error: 'memcpy' was not declared in this scope
https://github.com/BVLC/caffe/issues/4046
This fixes OpenSubdiv and Blender.
(cherry picked from commit 5ade8fff79)
We need to rewrite attributes passed via files to their location in
/tmp/xchg in the VM. Otherwise functions like runCommand don't work.
(cherry picked from commit 75baee8523)
Probably as a result of 992c514a20, it
was not being started anymore.
My understanding of systemd.special(7) (section "Special passive
system units") is that the firewall should want network-pre.target,
rather than the other way around (not very intuitive...). This in
itself does not cause the firewall to be wanted, which is why the
wanted-by relationship with multi-user.target is necessary.
http://hydra.nixos.org/build/39965589
(cherry picked from commit abdc5961c3)
We were pulling in 44 MiB of fonts in the default configuration, which
is a bit excessive for headless configurations like EC2
instances. Note that dejavu_minimal ensures that remote X11-forwarded
applications still have a basic font regardless.
(cherry picked from commit 5b5c2fb9c0)
It appears that packageOverrides no longer overrides aliases, so
aliases like
dbus_tools = self.dbus.out;
dbus_daemon = self.dbus.daemon;
now use the old, non-overriden version of dbus. That seems like a
pretty serious regression in general, but for this particular problem,
I've fixed it by replacing dbus_daemon by dbus.daemon and dbus_tools
by dbus.
(cherry picked from commit ba70ce28ae)
Get rid of the "or null" stuff. Also change 'cfg . "foo"' to 'cfg.foo'.
Also fixed what appears to be an actual bug: in postStartScript,
cfg.attribute (where attribute is a function argument) should be
cfg.${attribute}.
(cherry picked from commit b9df84cd4f)
This works around missing newer wayland symbols when running
some older packages on a system with updated opengl drivers.
We have no good solution yet, unfortunately. This commit might
break packages that rely on new wayland features, but those
should be a minority.
(cherry picked from commit 7a003eb9d5)
Every interactive zsh sources /etc/zshrc (see STARTUP/SHUTDOWN FILES in zshautll(1))
Therefor every interactive zsh process will respect the content of these variables.
Using `export` will also lead to child processes inheriting this value.
This leads to problems, if other interactive shells are spawned such as bash,
because they use an incomptabible history format (without timestamps).
There seems to be also cases, where the local HISTSIZE in ~/.zshrc is
not sourced but /etc/zshrc, which leads to history truncation in other shells.
(cherry picked from commit 9049ab1a3b)
Includes supporting binary src for x86_64-linux, x86_64-darwin, and
i686-linux which were previously unsupported and failed grossly before.
(cherry picked from commit 46ff1c385f)
The hash provided in commit 072917ea5d is
faulty, either because the upstream tarball has changed or because it
was wrong in the first place, no matter what happened we can't really
verify if we don't have the tarball with the old hash.
To double-check I've verified the hash against the one from Gentoo[1],
which has the following SHA256:
b46c26a9e773b2c620acd2f96d69408f14a279aefaedfefed002ecf898a1ecf2
After being converted into base 32 the hash does match with ours.
Note that I haven't tested building all Chromium channels (yet), but we
can fix upcoming issues later because right now it doesn't build anyway
because of the failing hash check.
[1]: https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/Manifest?id=2de0f5e4ffeb46a478c589b21d5bbcfd5736e57b
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
(cherry picked from commit 0c2683cc11)
jq has not had a release since v1.5 in August 2015, so backport both of
these patches (the fix for CVE-2015-8863 is in the current master, while
the fix for CVE-2016-4074 is not yet in master).
(cherry picked from commit bfbca9dacd)
It'll likely be useful because of #16779, at least for some users.
Most of the change sneaked in c68850c6b already, by mistake.
(cherry picked from commit 0593ad2b16)
...instead of mesa_noglu.out. Closures of systems remain unchanged,
as both are in (and the .out output is very small anyway).
This is to make sure that we use lib*GL* that aren't slowed down by grsecurity.
(cherry picked from commit c68850c6be)
All swap device option sets "have" a label, it's just that sometimes it's
undefined. Because we set a `device` attribute when we have a label anyway it's
ok to just check device prefix.
Fixes#18891.
(cherry picked from commit a63ca1bf3d)
CockroachDB is failing to build on `x86_64-darwin` according to
Hydra. I don't have a Mac or Windows machine to debug the builds
on so I can't support those.
(cherry picked from commit 65198a9082)
Configuration format has changed from MongoDB 2.6 to
YAML and MongoDB 2.4 is EOL since March 2016.
(cherry picked from commit 5cd565e507)
Signed-off-by: Domen Kožar <domen@dev.si>
* influxdb module: add postStart
* cadvisor module: increase TimeoutStartSec
Under high load, the cadvisor module can take longer than the default 90
seconds to start. This change should hopefully fix the test on Hydra.
(cherry picked from commit 2d2c311304)
If a gemspec has UTF-8 characters in it, ruby will fail loading it with
invalid multibyte char (US-ASCII)
This change forces the encoding to be correct, we assume everyone now
uses UTF-8.
(cherry picked from commit 62df82efcf)
Using types.str doesn't work if you want to mkBefore/mkAfter across
different module definitions, because it only allows for one definition
for the same priority.
This is especially useful if you deploy Hetzner machines via NixOps,
because the physical specification already defines localCommands.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
(cherry picked from commit 97801380b0)
It looks like the cpu type part of modalias might have changed, my
systems (4.4.20 and 4.7.2) show something like the following:
```
cpu:type:x86,ven0000fam0006mod003F:feature:,0000,0001,0002,0003,0004,0005,0006,0007,0008,0009,000B,000C,000D,000E,000F,0010,0011,0013,0017,0018,0019,001A,001C,002B,0034,003B,003D,0068,006F,0070,0072,0074,0075,0076,007D,0080,0081,0089,008C,008D,0091,0093,0094,0095,0096,0097,0098,0099,009A,009B,009C,009D,009E,009F,00C0,00C5,0120,0123,0125,0127,0128,0129,012A,0140
```
Update the rngd modalias rule to match this so udev properly has
systemd start rngd.
(cherry picked from commit a560223119)
Fixes#18712. Now firefox uses the notification daemon, if available.
Unfortunately, the same approach didn't work for thunderbird; I don't
know why.
(cherry picked from commit f27a970f2d)
- logDriver option, use journald for logging by default
- keep storage driver intact by default, as docker has sane defaults
- do not choose storage driver in tests, docker will choose by itself
- use dockerd binary as "docker daemon" command is deprecated and will be
removed
- add overlay2 to list of storage drivers
(cherry picked from commit 5d9c62541a)
bower2nix and fetch-bower need git in the PATH to operate. This wrapping
got lost with the nodePackages updates.
(Fixes#18454)
(cherry picked from commit 952c477f90)
Also change to https src.url.
Changelog at https://www.opensmtpd.org/announces/release-6.0.0.txt
In particular, note that
- logging format has been reworked so scripts that consume opensmtpd
logs may need updating
- dhparams option has been removed
(cherry picked from commit 2db487e6bf)
(cherry picked from commit 040b941b4c)
No problems reported so far, and we've got a couple weeks to stabilize
anyway. It seems required to support some new GPUs, #17991.
Enables previously manually disabled stackprotector and stackguard
randomization.
From https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=511811:
If glibc is built with the --enable-stackguard-randomization option,
each application gets a random canary value (at runtime) from /dev/urandom.
If --enable-stackguard-randomization is absent, applications get a static
canary value of "0xff0a0000". This is very unfortunate, because the
attacker may be able to bypass the stack protection mechanism, by placing
those 4 bytes in the canary word, before the actual canary check is
performed (for example in memcpy-based buffer overflows).
(cherry picked from commit 3ba99f83a7)
Note: only basic testing has been done so far; also see FIXME items.
AMENDed to reduce git history size significantly:
- fix 2015->2016 bugs in fixedHashes.nix
- purge all sha512 from pkgs.nix
It's not clear to me what this is achieving, plus for some reason this
is causing an evaluation error in hyperterm. So let's hope it's not
really needed...
(cherry picked from commit 06b2ff50b9)
This moves libsystemd.so and libudev.so into systemd.lib, and gets rid
of libudev (which just contained a copy of libudev.so and the udev
headers). It thus reduces the closure size of all packages that
(indirectly) depend on libsystemd, of which there are quite a few (for
instance, PulseAudio and dbus). For example, it reduces the closure of
Blender from 430.8 to 400.8 MiB.
(cherry picked from commit 78178d5854)
This removes locales, bash completion and crap like that. This cuts
6.5 MiB from the NixOS system closure (which unfortunately contains
two copies of util-linux, because of the need to break a dependency
cycle with systemd).
(cherry picked from commit 8295089e6a)
This introduces VirtualBox version 5.1.6 along with a few refactored
stuff, notably:
* Kernel modules and user space applications are now separate
derivations.
* If config.pulseaudio doesn't exist in nixpkgs config, the default is
now to build with PulseAudio modules.
* A new updater to keep VirtualBox up to date.
All subtests in nixos/tests/virtualbox.nix succeed on my machine and
VirtualBox was reported to be working by @DamienCassou (although with
unrelated audio problems for another fix/branch) and @calbrecht.
(cherry picked from commit 1781e95577)
These changes are needed to be able to run the system emulator (QEMU)
from Android Studio. In addition to the added dependencies,
$LD_LIBRARY_PATH had to be changed from --set to --prefix, so that libGL
is found (on NixOS).
(cherry picked from commit 3e5fe418f8)
This commit fixes a problem that occurs with externally linked haskell
libraries on Darwin. It does this by adding the libraries to the
--extra-lib-dirs flag and the DYLD_LIBRARY_PATH environment variable.
(cherry picked from commit 475c8bfb7d)
Compiling python with "-Wl,-stack_size,1000000" causes problems when
compiling for example pygobject3. pygobject3 uses "python3.x-config
--ldflags" during installation and then fails when
"-Wl,-stack_size,1000000" is present. Maybe we should investigate
removing this during the build of pyobject3, but this stack_size flag is
also not used on the popular darwin homebrew-core channel for python3.5,
so it seems safe to remove it.
(cherry picked from commit b7819e38c4)
The packages "which" and "ncurses" are needed for building pygobject3
(on darwin) during the checkPhase. The ncurses library is necessary only
because python3.5 is currently built using "-lncurses" and pygobject3
wants the same libraries that python3.5 was compiled with. (Because it
uses "python3.5-config --ldflags" during the build)
(cherry picked from commit 717c76716f)
I see no use to keep it. I doesn't build since April,
and noone has bothered to fixup the multiple-output problem.
(cherry picked from commit f348e6ff5a)
Some parts are slightly puzzling, but it seems to work and it didn't
seem economical to put more effort into it.
(cherry picked from commit 001bde3df0)
When using the rsync:// protocol, duplicity expects to find the rsync binary in the path.
Without rsync in the path, duplicity fails with the following error
Attempt 1 failed. AttributeError: 'NoneType' object has no attribute 'rfind'
Adding rsync to the path enables the rsync:// protocol to work correctly.
(cherry picked from commit 8df0bb7aac)
[Bjørn: sort alphabetially in plugins.nix, capitalize meta.description,
add space around assignment operator, indent multi-line string.]
(cherry picked from commit efb5206701)
Configuring haste-compiler-0.5.5.0...
Setup: At least the following dependencies are missing:
HTTP -any,
bzlib -any,
either -any,
ghc-simple -any,
system-fileio -any,
tar -any
The commit message in 1a2b47463b is
incorrect -- the package seemed to work because only the help message
was invoked:
result/bin/txt2man -h
To guard against such trivial successes, this commit introduces a
test.
(cherry picked from commit 440d721915)
This partially reverts commit ab9537ca22.
From the manpage of systemd-nspawn(1):
Note that systemd-nspawn will mount file systems private to the
container to /dev, /run and similar.
Testing this in a shell turns out:
$ sudo systemd-nspawn --bind-ro=/nix/store "$(readlink "$(which ls)")" /proc
Spawning container aszlig on /home/aszlig.
Press ^] three times within 1s to kill container.
/etc/localtime does not point into /usr/share/zoneinfo/, not updating
container timezone.
1 execdomains kpageflags stat
acpi fb loadavg swaps
asound filesystems locks sys
buddyinfo fs meminfo sysrq-trigger
bus interrupts misc sysvipc
cgroups iomem modules thread-self
cmdline ioports mounts timer_list
config.gz irq mtrr timer_stats
consoles kallsyms net tty
cpuinfo kcore pagetypeinfo uptime
crypto key-users partitions version
devices keys scsi vmallocinfo
diskstats kmsg self vmstat
dma kpagecgroup slabinfo zoneinfo
driver kpagecount softirqs
Container aszlig exited successfully.
So the test on whether PID 1 exists in /proc is enough, because if we
use PID namespaces there actually _is_ a PID 1 (as shown above) and the
special file systems are already mounted. A test on the $containers
variable actually mounts them twice.
This unbreaks NixOS containers and I've tested this against the
containers-imperative NixOS test.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
Cc: @rickynils, @shlevy, @edolstra
(cherry picked from commit dd98b6fb9f)
This reverts commit 3c0fdefd84.
We have to keep more history because travis build could be
triggered after new commit is made, meaning it won't be able
to checkout the repository.
(cherry picked from commit e986cb3425)
Signed-off-by: Domen Kožar <domen@dev.si>
The loopback-based tests use a storage size of 102400 blocks (one block
is 1024 bytes), which doesn't seem to fit for btrfs volumes in recent
btrfs versions. I'm setting this to 409600 (400 MB) now so that it
should be enough for later versions in case they need even more space
for subvolumes.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
(cherry picked from commit 75efdc6502)
Signed-off-by: Domen Kožar <domen@dev.si>
Fixes this:
$ sudo mcelog
...
unknown-error-trigger: line 21: logger: command not found
unknown-error-trigger: line 22: logger: command not found
(cherry picked from commit 2bf421d197)
linphone stil uses polarssl, which was replaced by mbedTLS and is no
more available on NixOS.
Until this is fixed upstream we disable LIME (IM encryption).
(cherry picked from commit 273898f4ba)
Signed-off-by: Domen Kožar <domen@dev.si>
3.10.2 is available from github but there is no autoconfigured tarball
and they added a dependency that's not packaged for nix (bctoolbox)
(cherry picked from commit 53c4003559)
Signed-off-by: Domen Kožar <domen@dev.si>
This update was generated by hackage2nix v2.0.1-6-geb712e9 using the following inputs:
- Hackage: 306f478c30
- LTS Haskell: d7ece2dc93
- Stackage Nightly: e911d6ed33
This way, stage-2 behaves correctly also for libvirt-lxc containers.
Some more discussion on this:
a7a08188bfbfe46a653b
(cherry picked from commit ab9537ca22)
The following doesn't seem to be quite right and I have missed this when
I was introducing qtkeychain in the first place:
-- Installing: /nix/store/...-qtkeychain-0.4.0/$out/share/qt/translations/qtkeychain_de.qm
-- Installing: /nix/store/...-qtkeychain-0.4.0/$out/share/qt/translations/qtkeychain_ro.qm
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
(cherry picked from commit da24fbd0ec)
Fixes#14910 and #18358
Deployed to an existing server, restarted sshd and polkit to verify
they don't fail.'
(cherry picked from commit 8f95e6f6aa)
Signed-off-by: Domen Kožar <domen@dev.si>
@ehmry: please have a look so that we can cherry-pick in release-16.09
and move forward on #18209
(cherry picked from commit 39e197ab1c)
Signed-off-by: Domen Kožar <domen@dev.si>
Fixes the following security problems:
- CVE-2016-5147: Universal XSS in Blink
- CVE-2016-5148: Universal XSS in Blink
- CVE-2016-5149: Script injection in extensions
- CVE-2016-5150: Use after free in Blink
- CVE-2016-5151: Use after free in PDFium
- CVE-2016-5152: Heap overflow in PDFium
- CVE-2016-5153: Use after destruction in Blink
- CVE-2016-5154: Heap overflow in PDFium
- CVE-2016-5155: Address bar spoofing
- CVE-2016-5156: Use after free in event bindings
- CVE-2016-5157: Heap overflow in PDFium
- CVE-2016-5158: Heap overflow in PDFium
- CVE-2016-5159: Heap overflow in PDFium
- CVE-2016-5160: Extensions web accessible resources bypass
- CVE-2016-5161: Type confusion in Blink.
- CVE-2016-5162: Extensions web accessible resources bypass
- CVE-2016-5163: Address bar spoofing
- CVE-2016-5164: Universal XSS using DevTools
- CVE-2016-5165: Script injection in DevTools
- CVE-2016-5166: SMB Relay Attack via Save Page As
- CVE-2016-5167: Various fixes from internal audits, fuzzing and other initiatives
(cherry picked from commit 7949e69382)
````
run_tests.sh: interpreter directive changed from "/bin/bash" to "/nix/store/nyj6xd7s1n1w8c0xdwk5ddhi7bjcyi9x-bash-4.3-p46/bin/bash"
No virtual environment found...create one? (Y/n) builder for ‘/nix/store/qcrhq2f7llvzyc37ili94ff50z7vlgn3-python2.7-keystoneclient-1.8.1.drv’ failed with exit code 1
error: build of ‘/nix/store/qcrhq2f7llvzyc37ili94ff50z7vlgn3-python2.7-keystoneclient-1.8.1.drv’ failed
````
(cherry picked from commit 2ae5fb2723)
As the comment indicates this was a workaround that has since been fixed
upstream.
(cherry picked from commit 3beacc4dbe)
Signed-off-by: Domen Kožar <domen@dev.si>
This builds elisp to setup an emacs buffer with the packages given
available. See shlevy/nix-buffer for more information.
Currently only modifies $PATH.
(cherry picked from commit 05c132486d)
gnomepanel was part of Gnome 2 and is currently broken.
There seemed to be no runtime dependency to gnomepanel and building also
seems to work fine without it.
(cherry picked from commit 1a5bb68696)
The -rc kernels are quite likely to break out-of-tree modules and thus
cause unnecessary Hydra failures.
(Note that linux_testing already has `hydraPlatforms = [];` but that
does not prevent the package from being built since it has reverse
dependencies. Arguably that could be considered undesirable and thus
fixing that could be considered the proper fix, but this should do
for now.)
(cherry picked from commit c536a3fa2f)
curl sent the request faster then nginx bound the port in some cases
(cherry picked from commit 26dc4ab818009bf207f63d3e429e843935f71dee)
Signed-off-by: Domen Kožar <domen@dev.si>
The new setuid-wrappers in /run cannot be executed by users due to:
1) the temporary directory does not allow access
2) the /run is mounted nosuid
(cherry picked from commit 8d977ead38)
Signed-off-by: Domen Kožar <domen@dev.si>
Version 5 does not yet work with the ghcWithHoogle infrastructure. This
fixes Hoogle to version 4 as a temporary measure.
(cherry picked from commit f9f680013c)
Signed-off-by: Domen Kožar <domen@dev.si>
Fixes build against dpdk 16.06
Tested build against linux, linux_latest, linux_3_18, linux_4_1,
linux_4_6, linux_grsec_nixos, linux_chromiumos_3_18.
While this is pre-release, the delta since 10.10.1.0 seems to contain
primarily fixes or internal improvements.
Also cleanup build inputs while we're at it.
(cherry picked from commit 65786ba322)
After splitting the DejaVuSans.ttf file into a multiple output in the
dejavu_fonts Nixpkgs expression it is not possible to install in the
user profile due to the collision. The attached patch makes a new
package without the collision for user environment installing.
From fae78903c6ce56eda70a1a9a6914c41d248b15e8 Mon Sep 17 00:00:00 2001
From: Karn Kallio <kkallio@skami.org>
Date: Sat, 3 Sep 2016 14:09:36 -0400
Subject: [PATCH] dejavu-fonts : Prepare an environment package without
collision.
(cherry picked from commit a785cec01b)
I don't know why the builder uses `lndir ${dbus-python} $out`,
but this commit should work around the problem caused by
dbus-python starting to propagate some inputs.
(cherry picked from commit fcc76325ef)
Looks to be incompatible with the PaX constification plugin:
> /tmp/nix-build-wireguard-unstable-2016-08-08.drv-0/WireGuard-experimental-0.0.20160808/src/device.c:329:29: error: constified variable 'link_ops' placed into writable section ".data..read_mostly"
static struct rtnl_link_ops link_ops __read_mostly = {
https://hydra.nixos.org/build/39671573/log/raw
See also https://github.com/NixOS/nixpkgs/issues/18209
(cherry picked from commit ca465eeeb1)
In the pygobject package of pythonPackages the codegen python files are
executable and get wrapped, which causes pygtk to not build because it
uses the python program to execute them. The attached patch makes them
not executable so they do not get wrapped and cause pygtk to fail its
build.
From 931b7998658fa72323c9a76e7b336fe726a9cc61 Mon Sep 17 00:00:00 2001
From: Karn Kallio <kkallio@skami.org>
Date: Fri, 2 Sep 2016 15:30:42 -0400
Subject: [PATCH] pygobject: prevent wrapping of codegen/*.py files.
(cherry picked from commit ce3daae51a)
* the default output for buildGoPackage is not "out" anymore
* go 1.7 has removed the linker flag deprecation which breaks packer's
Makefile
(cherry picked from commit 511344a56d8f503c9b6d34404f0b9439863ba507)
Signed-off-by: Domen Kožar <domen@dev.si>
These are now showing up as broken builds in Hydra since 2daefaf457.
None of these compiled even in 16.03 and I think all of them are
for pretty obsolete hardware, so just mark them as broken.
(In principle the xorg generator could be made to ignore them but that
would be more work.)
(cherry picked from commit 79d673e21c)
After making multiple outputs in the mesa_glu package the headers are
not included in the mesa attribute. The attached patch puts them in it.
From ced24208a300bea8234e7898ae6fec34fbd67289 Mon Sep 17 00:00:00 2001
From: Karn Kallio <kkallio@skami.org>
Date: Thu, 1 Sep 2016 16:18:23 -0400
Subject: [PATCH] mesa: Add the mesa glu headers to the mesa attribute.
(cherry picked from commit 49d59ce0ad)
* openjdk: Keep {include,man} in $out/lib/opendjk.
This is a standard layout that some JDK consumers expect.
* openjdk/8: Improve clarity of some symlink commands with terminating slash.
Before this commit updating /var/setuid-wrappers/ folder introduced
a small window where NixOS activation scripts could be terminated
and resulted into empty /var/setuid-wrappers/ folder.
That's very unfortunate because one might lose sudo binary.
Instead we use two atomic operations mv and ln (as described in
https://axialcorps.com/2013/07/03/atomically-replacing-files-and-directories/)
to achieve atomicity.
Since /var/setuid-wrappers is not a directory anymore, tmpfs mountpoints
were removed in installation scripts and in boot process.
Tested:
- upgrade /var/setuid-wrappers/ from folder to a symlink
- make sure /run/setuid-wrappers-dirs/ legacy symlink is really deleted
Fixes this error:
```
FAIL: test_setup_command.test_build_sphinx_return_nonzero_status
----------------------------------------------------------------------
Traceback (most recent call last):
File "/nix/store/zfmk6mqmr1046bh0cnh06frd0bb0nr20-python2.7-nose-1.3.7/lib/python2.7/site-packages/nose/case.py", line 197, in runTest
self.test(*self.arg)
File "/tmp/nix-build-python2.7-Sphinx-1.3.6.drv-0/Sphinx-1.3.6/tests/test_setup_command.py", line 55, in deco
func(pkgrootdir, proc)
File "/tmp/nix-build-python2.7-Sphinx-1.3.6.drv-0/Sphinx-1.3.6/tests/test_setup_command.py", line 110, in test_build_sphinx_return_nonzero_status
assert proc.returncode != 0, 'expect non-zero status for setup.py'
AssertionError: expect non-zero status for setup.py
```
Tested on Linux
- python 2.7
- python 3.5
This prevents systemd and by extension a zillion other packages from
having Python 2.7 in their closure. For example, the closure of
systemd dropped from 133 MiB to 85 MiB.
The previous commit revealed that Python wasn't actually using
Berkeley DB; it only had it in its closure due to the build-time flag
dump in Makefile and _sysconfigdata.py. When Python detects both GNU
gdbm and Berkeley DB at build time, it will use the former.
This cuts about 3 MiB from the installed size. On Linux, the configure
script is supposed to detect that installing tzdata is unnecessary,
but it looks in locations like /usr/share/zoneinfo.
This reduces Python's closure size from 200 MiB to 129 MiB. Even
better would be to get move tkinter to a separate output or package
(since that would get rid of all X11 stuff), but that's a bit harder.
This reduces tcl's total size from 25.0 MiB to 8.6 MiB. Admittedly
this is also because putting the manpages in the right place causes
all man3 pages to be deleted by the multiple outputs setup hook. Not
sure if that's desirable behaviour...
We now have a newer version and the older version didn't work anymore
anyway because it depended on sqlalchemy7 which was itself broken,
because it depended on an older version of sqlite.
- Remove redundant build inputs
These are (optional) run-time dependencies, adding them to build inputs
does nothing.
- Use standard buildPhase
Note that specifying linker script is unnecessary. Also specify correct
host arch and efi platform.
- Replace non-working ad-hoc patch with wrapper
The ad-hoc patching of refind-install didn't actually substitute anything;
with a wrapper script patching becomes unnecessary
- Remove use of deprecated meta.version
Closes https://github.com/NixOS/nixpkgs/pull/18103
- Add support for python bindings
- make neuron respect standard pythonpath prefix
- force exec_prefix == prefix to respect standard nix file hierarchy
- normalize indentation
- propagate dependencies necessary for nrniv_makefile usage
- Add support for darwin
The problem here was that the openldap binaries had /tmp/... in their
RPATH *before* $out/lib, so patchelf --shrink-rpath considered the
$out/lib entry unused.
As a workaround, use NIX_LDFLAGS_BEFORE to ensure a proper order.
I got:
$ nix-env -f . -iA manpages
$ man mmap
No manual entry for mmap
which is suboptimal for a package that "documents the Linux kernel and
C library interfaces that are employed by user-space programs"
(https://www.kernel.org/doc/man-pages/).
Both btrfs-progs and utillinux are ~5MB, we may discuss in future
to handle this better but I see no better way at the moment than
increaing purity in the install process.
OnCalendar entrys can be specified multiple times in a systemd timer, to
make more complex scheduling possible.
Tested by manually checking the timer generated by the following:
systemd = {
services.huhu = {
description = "meh";
wantedBy = [ "default.target" ];
serviceConfig.ExecStart = "/bin/sh -c 'printf HUHU!'";
startAt = [ "*:*:0/30" "*:0/1:15" ];
};
};
It prints HUHU to the log at seconds 0, 15 and 30 of each minute.
In the tarball job:
````
checking find-tarballs.nix
error: while evaluating anonymous function at /tmp/nix-build-nixpkgs-tarball-16.09pre1234.abcdef.drv-0/nixpkgs/maintainers/scripts/find-tarballs.nix:6:1, called from undefined position:
while evaluating ‘operator’ at /tmp/nix-build-nixpkgs-tarball-16.09pre1234.abcdef.drv-0/nixpkgs/maintainers/scripts/find-tarballs.nix:27:16, called from undefined position:
while evaluating ‘immediateDependenciesOf’ at /tmp/nix-build-nixpkgs-tarball-16.09pre1234.abcdef.drv-0/nixpkgs/maintainers/scripts/find-tarballs.nix:39:29, called from /tmp/nix-build-nixpkgs-tarball-16.09pre1234.abcdef.drv-0/nixpkgs/maintainers/scripts/find-tarballs.nix:27:44:
while evaluating anonymous function at /tmp/nix-build-nixpkgs-tarball-16.09pre1234.abcdef.drv-0/nixpkgs/lib/attrsets.nix:224:10, called from undefined position:
while evaluating anonymous function at /tmp/nix-build-nixpkgs-tarball-16.09pre1234.abcdef.drv-0/nixpkgs/maintainers/scripts/find-tarballs.nix:40:37, called from /tmp/nix-build-nixpkgs-tarball-16.09pre1234.abcdef.drv-0/nixpkgs/lib/attrsets.nix:224:16:
while evaluating ‘derivationsIn’ at /tmp/nix-build-nixpkgs-tarball-16.09pre1234.abcdef.drv-0/nixpkgs/maintainers/scripts/find-tarballs.nix:42:19, called from /tmp/nix-build-nixpkgs-tarball-16.09pre1234.abcdef.drv-0/nixpkgs/maintainers/scripts/find-tarballs.nix:40:40:
while evaluating ‘optional’ at /tmp/nix-build-nixpkgs-tarball-16.09pre1234.abcdef.drv-0/nixpkgs/lib/lists.nix:175:20, called from /tmp/nix-build-nixpkgs-tarball-16.09pre1234.abcdef.drv-0/nixpkgs/maintainers/scripts/find-tarballs.nix:44:33:
while evaluating ‘canEval’ at /tmp/nix-build-nixpkgs-tarball-16.09pre1234.abcdef.drv-0/nixpkgs/maintainers/scripts/find-tarballs.nix:48:13, called from /tmp/nix-build-nixpkgs-tarball-16.09pre1234.abcdef.drv-0/nixpkgs/maintainers/scripts/find-tarballs.nix:44:43:
while evaluating the attribute ‘pkgs’ of the derivation ‘ruby-dev-2.3.1-p0’ at /tmp/nix-build-nixpkgs-tarball-16.09pre1234.abcdef.drv-0/nixpkgs/pkgs/build-support/trivial-builders.nix:10:14:
while evaluating ‘override’ at /tmp/nix-build-nixpkgs-tarball-16.09pre1234.abcdef.drv-0/nixpkgs/lib/customisation.nix:60:22, called from /tmp/nix-build-nixpkgs-tarball-16.09pre1234.abcdef.drv-0/nixpkgs/pkgs/development/interpreters/ruby/dev.nix:10:13:
while evaluating ‘makeOverridable’ at /tmp/nix-build-nixpkgs-tarball-16.09pre1234.abcdef.drv-0/nixpkgs/lib/customisation.nix:54:24, called from /tmp/nix-build-nixpkgs-tarball-16.09pre1234.abcdef.drv-0/nixpkgs/lib/customisation.nix:60:31:
anonymous function at /tmp/nix-build-nixpkgs-tarball-16.09pre1234.abcdef.drv-0/nixpkgs/pkgs/development/ruby-modules/bundix/default.nix:1:1 called with unexpected argument ‘ruby’, at /tmp/nix-build-nixpkgs-tarball-16.09pre1234.abcdef.drv-0/nixpkgs/lib/customisation.nix:56:12
````
This update was generated by hackage2nix v2.0.1 using the following inputs:
- Hackage: 0752bfd4f0
- LTS Haskell: e602b68df3
- Stackage Nightly: f7407f2e81
Otherwise it would pick various -march flags based on the CPU of the
compiling system, using beautiful code like this:
````
63 AC_CACHE_CHECK(for x86 cpuid $1 output, ax_cv_gcc_x86_cpuid_$1,
64 [AC_RUN_IFELSE([AC_LANG_PROGRAM([#include <stdio.h>], [
65 int op = $1, eax, ebx, ecx, edx;
66 FILE *f;
67 __asm__("cpuid"
68 : "=a" (eax), "=b" (ebx), "=c" (ecx), "=d" (edx)
69 : "a" (op));
70 f = fopen("conftest_cpuid", "w"); if (!f) return 1;
71 fprintf(f, "%x:%x:%x:%x\n", eax, ebx, ecx, edx);
72 fclose(f);
73 return 0;
74 ])],
...
121 AC_CACHE_CHECK([whether avx is supported], [ax_cv_have_avx_ext],
122 [
123 ax_cv_have_avx_ext=no
124 if test "$((0x$ecx>>28&0x01))" = 1; then
125 ax_cv_have_avx_ext=yes
126 fi
127 ])
````
For some reason `gem install` unsets the GEM_PATH environment variable
internally unless the install dir is provided. This in turn means that
if it invokes extconf.rb and extconf.rb depends on a gem available on
the GEM_PATH (like pkg-config for nokogiri) then it's not available in
that context.
Proof: d8293c4729/lib/rubygems/commands/install_command.rb (L151)
Blame: 9ea600c9c2
This is a hack that sets the :install_dir to where we would install
anyways (the GEM_HOME is the default installation destination).
Upstream
e71a5fc58c
adds linux 4.7 support; all subsequent commits are error fixes so we
bump to current HEAD for good measure.
Built against linux and linux_latest.
Mark as broken on -grsec, seems incompatible with PaX
constification:
> 76fb2-src/hal/rtl8723b_hal_init.c:2186:26: error: assignment of member
'free_hal_data' in read-only object
pHalFunc->free_hal_data = &rtl8723b_free_hal_data;
and so on.
* [Nix Wiki](https://nixos.org/wiki/) (deprecated, see milestone ["Move the Wiki!"](https://github.com/NixOS/nixpkgs/issues?q=is%3Aopen+is%3Aissue+milestone%3A%22Move+the+wiki%21%22))
* [Continuous package builds for unstable/master](https://hydra.nixos.org/jobset/nixos/trunk-combined)
* [Continuous package builds for 16.03 release](https://hydra.nixos.org/jobset/nixos/release-16.03)
* [Continuous package builds for 16.09 release](https://hydra.nixos.org/jobset/nixos/release-16.09)
* [Tests for unstable/master](https://hydra.nixos.org/job/nixos/trunk-combined/tested#tabs-constituents)
* [Tests for 16.03 release](https://hydra.nixos.org/job/nixos/release-16.03/tested#tabs-constituents)
* [Tests for 16.09 release](https://hydra.nixos.org/job/nixos/release-16.09/tested#tabs-constituents)
@@ -536,6 +536,7 @@ All parameters from `mkDerivation` function are still supported.
* `installFlags`: A list of strings. Arguments to be passed to `pip install`. To pass options to `python setup.py install`, use `--install-option`. E.g., `installFlags=["--install-option='--cpp_implementation'"].
*`format`: Format of the source. Options are `setup` for when the source has a `setup.py` and `setuptools` is used to build a wheel, and `wheel` in case the source is already a binary wheel. The default value is `setup`.
*`catchConflicts` If `true`, abort package build if a package name appears more than once in dependency tree. Default is `true`.
*`checkInputs` Dependencies needed for running the `checkPhase`. These are added to `buildInputs` when `doCheck = true`.
<para>In the Nix language the individual outputs can be reached explicitly as attributes, e.g. <varname>coreutils.info</varname>, but the typical case is just using packages as build inputs.</para>
<para>When a multiple-output derivation gets into a build input of another derivation, the first output is added (<varname>.dev</varname>by convention) and also<varname>propagatedBuildOutputs</varname> of that package which by default contain <varname>$outputBin</varname> and <varname>$outputLib</varname>. (See <xreflinkend="multiple-output-file-type-groups"/>.)</para>
<para>When a multiple-output derivation gets into a build input of another derivation, the <varname>dev</varname>output is added if it exists, otherwise the first output is added. In addition to that,<varname>propagatedBuildOutputs</varname> of that package which by default contain <varname>$outputBin</varname> and <varname>$outputLib</varname> are also added. (See <xreflinkend="multiple-output-file-type-groups"/>.)</para>
</section>
<section><title>Writing a split derivation</title>
<para>Here you find how to write a derivation that produces multiple outputs.</para>
<para>In nixpkgs there is a framework supporting multiple-output derivations. It tries to cover most cases by default behavior. You can find the source separated in <<filename>nixpkgs/pkgs/build-support/setup-hooks/multiple-outputs.sh</filename>>; it's relatively well-readable. The whole machinery is triggered by defining the <varname>outputs</varname> attribute to contain the list of desired output names (strings).</para>
<para>Often such a single line is enough. For each output an equally named environment variable is passed to the builder and contains the path in nix store for that output. By convention, the first output should usually be <varname>dev</varname>; typically you also want to have the main <varname>out</varname> output, as it catches any files that didn't get elsewhere.</para>
<para>Often such a single line is enough. For each output an equally named environment variable is passed to the builder and contains the path in nix store for that output. By convention, the first output should contain the executable programs provided by the package as that output is used by Nix in string conversions, allowing references to binaries like <literal>${pkgs.perl}/bin/perl</literal> to always work. Typically you also want to have the main <varname>out</varname> output, as it catches any files that didn't get elsewhere.</para>
<note><para>There is a special handling of the <varname>debug</varname> output, described at <xreflinkend="stdenv-separateDebugInfo"/>.</para></note>
@@ -63,7 +63,7 @@
</para></listitem></varlistentry>
<varlistentry><term><varname>
$outputDocdev</varname></term><listitem><para>
is for <emphasis>developer</emphasis> documentation. Currently we count gtk-doc and man3 pages in there. It goes to <varname>docdev</varname> or is removed (!) by default. This is because e.g. gtk-doc tends to be rather large and completely unused by nixpkgs users.
is for <emphasis>developer</emphasis> documentation. Currently we count gtk-doc and man3 pages in there. It goes to <varname>devdoc</varname> or is removed (!) by default. This is because e.g. gtk-doc tends to be rather large and completely unused by nixpkgs users.
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.