Merge remote-tracking branch 'upstream/master' into staging

This commit is contained in:
Tuomas Tynkkynen 2016-09-11 14:19:02 +03:00
commit b308b1e9bf
51 changed files with 217 additions and 158 deletions

View File

@ -12,8 +12,15 @@ can disable IPv6 support globally by setting:
<programlisting>
networking.enableIPv6 = false;
</programlisting>
</programlisting></para>
<para>You can disable IPv6 on a single interface using a normal sysctl (in this
example, we use interface <varname>eth0</varname>):
<programlisting>
boot.kernel.sysctl."net.ipv6.conf.eth0.disable_ipv6" = true;
</programlisting>
</para>
</section>

View File

@ -223,10 +223,10 @@ in
# Install the proxy environment variables
environment.sessionVariables = cfg.proxy.envVars;
# The ip-up target is started when we have IP connectivity. So
# services that depend on IP connectivity (like ntpd) should be
# pulled in by this target.
systemd.targets.ip-up.description = "Services Requiring IP Connectivity";
# The ip-up target is kept for backwards compatibility.
# New services should use systemd upstream targets:
# See https://www.freedesktop.org/wiki/Software/systemd/NetworkTarget/
systemd.targets.ip-up.description = "Services Requiring IP Connectivity (deprecated)";
# This is needed when /etc/resolv.conf is being overriden by networkd
# and other configurations. If the file is destroyed by an environment

View File

@ -114,6 +114,7 @@
./services/audio/mpd.nix
./services/audio/mopidy.nix
./services/audio/squeezelite.nix
./services/audio/ympd.nix
./services/backup/almir.nix
./services/backup/bacula.nix
./services/backup/crashplan.nix

View File

@ -33,6 +33,7 @@ in {
services.mpd = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable MPD, the music player daemon.
@ -40,6 +41,7 @@ in {
};
musicDirectory = mkOption {
type = types.path;
default = "${cfg.dataDir}/music";
description = ''
The directory where mpd reads music from.
@ -47,6 +49,7 @@ in {
};
extraConfig = mkOption {
type = types.str;
default = "";
description = ''
Extra directives added to to the end of MPD's configuration file,
@ -56,6 +59,7 @@ in {
};
dataDir = mkOption {
type = types.path;
default = "/var/lib/mpd";
description = ''
The directory where MPD stores its state, tag cache,
@ -64,11 +68,13 @@ in {
};
user = mkOption {
type = types.str;
default = "mpd";
description = "User account under which MPD runs.";
};
group = mkOption {
type = types.str;
default = "mpd";
description = "Group account under which MPD runs.";
};
@ -76,6 +82,7 @@ in {
network = {
listenAddress = mkOption {
type = types.str;
default = "any";
description = ''
This setting sets the address for the daemon to listen on. Careful attention
@ -85,6 +92,7 @@ in {
};
port = mkOption {
type = types.int;
default = 6600;
description = ''
This setting is the TCP port that is desired for the daemon to get assigned
@ -114,12 +122,12 @@ in {
after = [ "network.target" "sound.target" ];
description = "Music Player Daemon";
wantedBy = [ "multi-user.target" ];
path = [ pkgs.mpd ];
preStart = "mkdir -p ${cfg.dataDir} && chown -R ${cfg.user}:${cfg.group} ${cfg.dataDir}";
script = "exec mpd --no-daemon ${mpdConf}";
serviceConfig = {
User = "${cfg.user}";
PermissionsStartOnly = true;
ExecStart = "${pkgs.mpd}/bin/mpd --no-daemon ${mpdConf}";
};
};

View File

@ -0,0 +1,61 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.ympd;
in {
###### interface
options = {
services.ympd = {
enable = mkOption {
type = types.bool;
default = false;
description = "Whether to enable ympd, the MPD Web GUI.";
};
webPort = mkOption {
type = types.string;
default = "8080";
description = "The port where ympd's web interface will be available.";
example = "ssl://8080:/path/to/ssl-private-key.pem";
};
mpd = {
host = mkOption {
type = types.string;
default = "localhost";
description = "The host where MPD is listening.";
example = "localhost";
};
port = mkOption {
type = types.int;
default = config.services.mpd.network.port;
description = "The port where MPD is listening.";
example = 6600;
};
};
};
};
###### implementation
config = mkIf cfg.enable {
systemd.services.ympd = {
description = "Standalone MPD Web GUI written in C";
wantedBy = [ "multi-user.target" ];
serviceConfig.ExecStart = "${pkgs.ympd}/bin/ympd --host ${cfg.mpd.host} --port ${toString cfg.mpd.port} --webport ${cfg.webPort} --user nobody";
};
};
}

View File

@ -61,7 +61,9 @@ with lib;
services.avahi.enable = true;
systemd.services."4store-endpoint" = {
wantedBy = [ "ip-up.target" ];
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
script = ''
${run} '${pkgs.rdf4store}/bin/4s-httpd -D ${cfg.options} ${if cfg.listenAddress!=null then "-H ${cfg.listenAddress}" else "" } -p ${toString cfg.port} ${cfg.database}'
'';

View File

@ -53,7 +53,8 @@ with lib;
services.avahi.enable = true;
systemd.services."4store" = {
wantedBy = [ "ip-up.target" ];
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
preStart = ''
mkdir -p ${stateDir}/

View File

@ -62,7 +62,8 @@ with lib;
};
systemd.services.virtuoso = {
wantedBy = [ "ip-up.target" ];
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
preStart = ''
mkdir -p ${stateDir}

View File

@ -74,7 +74,8 @@ in
config = mkIf cfg.enable {
systemd.services.freepopsd = {
description = "Freepopsd (webmail over POP3)";
wantedBy = [ "ip-up.target" ];
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
script = ''
${pkgs.freepops}/bin/freepopsd \
-p ${toString cfg.port} \

View File

@ -182,7 +182,8 @@ in
systemd.services.upsmon = {
description = "Uninterruptible Power Supplies (Monitor)";
wantedBy = [ "ip-up.target" ];
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
serviceConfig.Type = "forking";
script = "${pkgs.nut}/sbin/upsmon";
environment.NUT_CONFPATH = "/etc/nut/";
@ -191,8 +192,8 @@ in
systemd.services.upsd = {
description = "Uninterruptible Power Supplies (Daemon)";
after = [ "network.target" "upsmon.service" ];
wantedBy = [ "multi-user.target" ];
after = [ "network-interfaces.target" "upsmon.service" ];
serviceConfig.Type = "forking";
# TODO: replace 'root' by another username.
script = "${pkgs.nut}/sbin/upsd -u root";
@ -202,8 +203,8 @@ in
systemd.services.upsdrv = {
description = "Uninterruptible Power Supplies (Register all UPS)";
wantedBy = [ "multi-user.target" ];
after = [ "upsd.service" ];
wantedBy = [ "multi-user.target" ];
# TODO: replace 'root' by another username.
script = ''${pkgs.nut}/bin/upsdrvctl -u root start'';
serviceConfig = {

View File

@ -53,9 +53,9 @@ let cfg = config.services.drbd; in
};
systemd.services.drbd = {
after = [ "systemd-udev.settle.service" ];
after = [ "systemd-udev.settle.service" "network.target" ];
wants = [ "systemd-udev.settle.service" ];
wantedBy = [ "ip-up.target" ];
wantedBy = [ "multi-user.target" ];
script = ''
${pkgs.drbd}/sbin/drbdadm up all
'';

View File

@ -59,7 +59,8 @@ in
systemd.services.amuled = {
description = "AMule daemon";
wantedBy = [ "ip-up.target" ];
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ];
preStart = ''
mkdir -p ${cfg.dataDir}

View File

@ -7,10 +7,6 @@ let
cfg = config.services.avahi;
# We must escape interfaces due to the systemd interpretation
subsystemDevice = interface:
"sys-subsystem-net-devices-${utils.escapeSystemdPath interface}.device";
avahiDaemonConf = with cfg; pkgs.writeText "avahi-daemon.conf" ''
[server]
${# Users can set `networking.hostName' to the empty string, when getting
@ -180,14 +176,8 @@ in
environment.systemPackages = [ pkgs.avahi ];
systemd.services.avahi-daemon =
let
deps = optionals (cfg.interfaces!=null) (map subsystemDevice cfg.interfaces);
in
{ description = "Avahi daemon";
wantedBy = [ "ip-up.target" ];
bindsTo = deps;
after = deps;
before = [ "ip-up.target" ];
wantedBy = [ "multi-user.target" ];
# Receive restart event after resume
partOf = [ "post-resume.target" ];

View File

@ -61,7 +61,6 @@ let
${cfg.extraConfig}
'';
# Hook for emitting ip-up/ip-down events.
exitHook = pkgs.writeText "dhcpcd.exit-hook"
''
if [ "$reason" = BOUND -o "$reason" = REBOOT ]; then
@ -73,14 +72,8 @@ let
# applies to openntpd.
${config.systemd.package}/bin/systemctl try-restart ntpd.service
${config.systemd.package}/bin/systemctl try-restart openntpd.service
${config.systemd.package}/bin/systemctl start ip-up.target
fi
#if [ "$reason" = EXPIRE -o "$reason" = RELEASE -o "$reason" = NOCARRIER ] ; then
# ${config.systemd.package}/bin/systemctl start ip-down.target
#fi
${cfg.runHook}
'';
@ -154,10 +147,9 @@ in
systemd.services.dhcpcd =
{ description = "DHCP Client";
wantedBy = [ "network.target" ];
# Work-around to deal with problems where the kernel would remove &
# re-create Wifi interfaces early during boot.
after = [ "network-interfaces.target" ];
wantedBy = [ "multi-user.target" ];
wants = [ "network.target" ];
before = [ "network.target" ];
# Stopping dhcpcd during a reconfiguration is undesirable
# because it brings down the network interfaces configured by

View File

@ -116,7 +116,8 @@ in
};
systemd.services."git-daemon" = {
wantedBy = [ "ip-up.target" ];
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
script = "${pkgs.git}/bin/git daemon --reuseaddr "
+ (optionalString (cfg.basePath != "") "--base-path=${cfg.basePath} ")
+ (optionalString (cfg.listenAddress != "") "--listen=${cfg.listenAddress} ")

View File

@ -106,7 +106,8 @@ in
createIodineClientService = name: cfg:
{
description = "iodine client - ${name}";
wantedBy = [ "ip-up.target" ];
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
serviceConfig = {
RestartSec = "30s";
Restart = "always";
@ -121,7 +122,8 @@ in
) // {
iodined = mkIf (cfg.server.enable) {
description = "iodine, ip over dns server daemon";
wantedBy = [ "ip-up.target" ];
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
serviceConfig.ExecStart = "${pkgs.iodine}/bin/iodined -f -u ${iodinedUser} ${cfg.server.extraConfig} ${cfg.server.ip} ${cfg.server.domain}";
};
};

View File

@ -52,14 +52,6 @@ let
});
'';
ipUpScript = writeScript "01nixos-ip-up" ''
#!/bin/sh
if test "$2" = "up"; then
${config.systemd.package}/bin/systemctl start ip-up.target
${config.systemd.package}/bin/systemctl start network-online.target
fi
'';
ns = xs: writeText "nameservers" (
concatStrings (map (s: "nameserver ${s}\n") xs)
);
@ -188,9 +180,6 @@ in {
boot.kernelModules = [ "ppp_mppe" ]; # Needed for most (all?) PPTP VPN connections.
environment.etc = with cfg.basePackages; [
{ source = ipUpScript;
target = "NetworkManager/dispatcher.d/01nixos-ip-up";
}
{ source = configFile;
target = "NetworkManager/NetworkManager.conf";
}

View File

@ -25,8 +25,8 @@ with lib;
systemd.services.toxvpn = {
description = "toxvpn daemon";
requires = [ "network-online.target" ]; # consider replacing by NetworkManager-wait-online.service
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ];
preStart = ''
mkdir -p /run/toxvpn || true

View File

@ -677,8 +677,7 @@ in
};
systemd.services.systemd-networkd-wait-online = {
before = [ "ip-up.target" ];
wantedBy = [ "network-online.target" "ip-up.target" ];
wantedBy = [ "network-online.target" ];
};
systemd.services."systemd-network-wait-online@" = {

View File

@ -727,8 +727,6 @@ in
unitConfig.X-StopOnReconfiguration = true;
};
systemd.targets.network-online.after = [ "ip-up.target" ];
systemd.units =
mapAttrs' (n: v: nameValuePair "${n}.target" (targetToUnit n v)) cfg.targets
// mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit n v)) cfg.services

View File

@ -142,7 +142,6 @@ in
# (Flushing this interface may have removed it.)
${config.systemd.package}/bin/systemctl try-restart --no-block network-setup.service
fi
${config.systemd.package}/bin/systemctl start ip-up.target
'';
preStop = flip concatMapStrings (ips) (ip:
let

View File

@ -178,7 +178,8 @@ in
systemd.services.waagent = {
wantedBy = [ "multi-user.target" ];
after = [ "ip-up.target" "sshd.service" ];
after = [ "network-online.target" "sshd.service" ];
wants = [ "network-online.target" ];
path = [ pkgs.e2fsprogs ];
description = "Windows Azure Agent Service";

View File

@ -116,8 +116,8 @@ in
wantedBy = [ "multi-user.target" "sshd.service" ];
before = [ "sshd.service" ];
wants = [ "ip-up.target" ];
after = [ "ip-up.target" ];
wants = [ "network-online.target" ];
after = [ "network-online.target" ];
path = [ pkgs.wget pkgs.iproute ];

View File

@ -134,8 +134,8 @@ in
wantedBy = [ "sshd.service" ];
before = [ "sshd.service" ];
after = [ "network-online.target" "ip-up.target" ];
wants = [ "network-online.target" "ip-up.target" ];
after = [ "network-online.target" ];
wants = [ "network-online.target" ];
script = let wget = "${pkgs.wget}/bin/wget --retry-connrefused -t 15 --waitretry=10 --header='Metadata-Flavor: Google'";
mktemp = "mktemp --tmpdir=/run"; in

View File

@ -20035,12 +20035,12 @@
f = callPackage ({ dash, fetchFromGitHub, fetchurl, lib, melpaBuild, s }:
melpaBuild {
pname = "f";
version = "20160815.1253";
version = "20160909.829";
src = fetchFromGitHub {
owner = "rejeep";
repo = "f.el";
rev = "4f8d3112f03e99506bab3c910fa3a29f0b8eb86b";
sha256 = "0gf4vh7h4sjmp74kfiwxngjpx44m88mksridfil7piapbg23z9xm";
rev = "e055e3dd404c8a7cc7849a0e6fd8aade714c5355";
sha256 = "1n9v2ackd86xbl0msnrvrfxp1qacydz9n0zjxm328jxlvj4h35rx";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/22ddcf536af597b688d8edb70b3636ed6c265bf5/recipes/f";
@ -33334,6 +33334,27 @@
license = lib.licenses.free;
};
}) {};
inherit-local = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "inherit-local";
version = "20160909.755";
src = fetchFromGitHub {
owner = "shlevy";
repo = "inherit-local";
rev = "e687c702adb27ce5f69fb28a47fe21a86cf84063";
sha256 = "11z3b1xwg6r769w3scd29lqg62fx8mp81g8dbx4klmj3clvyn69i";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/50751b5f9843fde00505edd281e404ec1d875713/recipes/inherit-local";
sha256 = "0j785xb72nk04x6jb9x5pdwp3dkalqmy208mvj4ss4fm559qfp3i";
name = "inherit-local";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/inherit-local";
license = lib.licenses.free;
};
}) {};
init-loader = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "init-loader";

View File

@ -156,12 +156,12 @@ in
idea-community = buildIdea rec {
name = "idea-community-${version}";
version = "2016.2.3";
version = "2016.2.4";
description = "Integrated Development Environment (IDE) by Jetbrains, community edition";
license = stdenv.lib.licenses.asl20;
src = fetchurl {
url = "https://download.jetbrains.com/idea/ideaIC-${version}.tar.gz";
sha256 = "014fddfxzc8nwhp1nz8mb9p7zwk73azvlgmzy2jd9ypfwi3dwgrs";
sha256 = "0hk7z402qvkaa6hkhh4wsqxki2bnai5qkd2r0ngvy8kd71svrldz";
};
wmClass = "jetbrains-idea-ce";
};
@ -173,7 +173,7 @@ in
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/idea/ideaIU-${version}.tar.gz";
sha256 = "a2259249f6e7bf14ba17b0af90a18d24d9b4670af60d24f0bb51af2f62500fc2";
sha256 = "1hhga1i2zbsipgq283gn19kv9n94inhr1bxh2yx19gz7yr4r49d2";
};
wmClass = "jetbrains-idea";
};
@ -192,12 +192,12 @@ in
idea-ultimate = buildIdea rec {
name = "idea-ultimate-${version}";
version = "2016.2.3";
version = "2016.2.4";
description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/idea/ideaIU-${version}.tar.gz";
sha256 = "1y8y3kav4icpsb85p5csag6f16jqg4gnvagsl5k1c793ccbl63yk";
sha256 = "165nchdnbyp85r2w0riv87j77lb7r492dkwrvm8q7qjnlfgznh7r";
};
wmClass = "jetbrains-idea";
};

View File

@ -29,9 +29,9 @@
, cacaSupport ? true, libcaca ? null
, libpngSupport ? true, libpng ? null
, youtubeSupport ? true, youtube-dl ? null
, vaapiSupport ? true, libva ? null
, vapoursynthSupport ? false, vapoursynth ? null
, jackaudioSupport ? false, libjack2 ? null
, vaapiSupport ? false, libva ? null
# scripts you want to be loaded by default
, scripts ? []
@ -75,13 +75,13 @@ let
};
in stdenv.mkDerivation rec {
name = "mpv-${version}";
version = "0.19.0";
version = "0.20.0";
src = fetchFromGitHub {
owner = "mpv-player";
repo = "mpv";
rev = "v${version}";
sha256 = "14rbglrcplhkf16ik4fbcv7k27lz6h4glfayr12ylh98srmsscqa";
sha256 = "0zp852b505lr2gllqylg2xrc8sgw9b1xjn1c7px36hzddny15c16";
};
patchPhase = ''

View File

@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
src = fetchgit {
url = "https://code.videolan.org/videolan/npapi-vlc.git";
rev = "5fa6fbc11cf5bad983f57656c0085e47e18fbf20";
sha256 = "18fbiy4r8rlw4fsgcxgzhi6qi9r48d0rmnp8hs994w2p94fa8kwd";
sha256 = "0k4s0657kv1mx1md8vj87scs0hz59xy7syqdsxb48w3w8gnfljs0";
};
preConfigure = "sh autogen.sh";

View File

@ -161,5 +161,6 @@ stdenv.mkDerivation rec {
license = stdenv.lib.licenses.mit;
maintainers = with stdenv.lib.maintainers; [ raskin ];
platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" ];
broken = stdenv.isi686;
};
}

View File

@ -174,5 +174,6 @@ stdenv.mkDerivation rec {
license = stdenv.lib.licenses.mit;
maintainers = with stdenv.lib.maintainers; [ raskin ];
platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" ];
broken = stdenv.isi686;
};
}

View File

@ -34,7 +34,7 @@ let
# Clang expects to find sanitizer libraries in its own prefix
postInstall = ''
ln -sv ${llvm}/lib/LLVMgold.so $out/lib
ln -sv ${llvm}/lib/clang/3.9.0/lib $out/lib/clang/3.9.0/
ln -sv ${llvm}/lib/clang/${version}/lib $out/lib/clang/${version}/
ln -sv $out/bin/clang $out/bin/cpp
'';

View File

@ -6,7 +6,7 @@ let
fetch = fetch_v version;
fetch_v = ver: name: sha256: fetchurl {
url = "http://llvm.org/releases/3.9.0/${name}-${ver}.src.tar.xz";
url = "http://llvm.org/releases/${version}/${name}-${ver}.src.tar.xz";
inherit sha256;
};

View File

@ -867,9 +867,6 @@ self: super: {
# https://github.com/guillaume-nargeot/hpc-coveralls/issues/52
hpc-coveralls = disableSharedExecutables super.hpc-coveralls;
# Can't find libHSidris-*.so during build.
idris = disableSharedExecutables super.idris;
# https://github.com/fpco/stackage/issues/838
cryptonite = dontCheck super.cryptonite;
@ -948,17 +945,6 @@ self: super: {
# tinc is a new build driver a la Stack that's not yet available from Hackage.
tinc = self.callPackage ../tools/haskell/tinc {};
# https://github.com/NixOS/nixpkgs/issues/14967
yi = markBroken super.yi;
yi-fuzzy-open = markBroken super.yi-fuzzy-open;
yi-monokai = markBroken super.yi-monokai;
yi-snippet = markBroken super.yi-snippet;
yi-solarized = markBroken super.yi-solarized;
yi-spolsky = markBroken super.yi-spolsky;
# gtk2hs-buildtools must have Cabal 1.24
gtk2hs-buildtools = super.gtk2hs-buildtools.override { Cabal = self.Cabal_1_24_0_0; };
# Tools that use gtk2hs-buildtools now depend on them in a custom-setup stanza
cairo = addBuildTool super.cairo self.gtk2hs-buildtools;
pango = (addBuildTool super.pango self.gtk2hs-buildtools).overrideDerivation (drv: {
@ -978,7 +964,6 @@ self: super: {
sha256 = "1yh2g45mkfpwxq0vyzcbc4nbxh6wmb2xpp0k7r5byd8jicgvli29";
});
# GLUT uses `dlopen` to link to freeglut, so we need to set the RUNPATH correctly for
# it to find `libglut.so` from the nix store. We do this by patching GLUT.cabal to pkg-config
# depend on freeglut, which provides GHC to necessary information to generate a correct RPATH.
@ -988,7 +973,8 @@ self: super: {
# us when we patch the cabal file (Link options will be recored in the ghc package registry).
GLUT = addPkgconfigDepend (appendPatch super.GLUT ./patches/GLUT.patch) pkgs.freeglut;
# remove if a version > 0.1.0.1 ever gets released
# https://github.com/Philonous/hs-stun/pull/1
# Remove if a version > 0.1.0.1 ever gets released.
stunclient = overrideCabal super.stunclient (drv: {
postPatch = (drv.postPatch or "") + ''
substituteInPlace source/Network/Stun/MappedAddress.hs --replace "import Network.Endian" ""
@ -998,4 +984,19 @@ self: super: {
# https://bitbucket.org/ssaasen/spy/pull-requests/3/fsnotify-dropped-system-filepath
spy = appendPatch super.spy ./patches/spy.patch;
idris = overrideCabal super.idris (drv: {
# "idris" binary cannot find Idris library otherwise while building. After
# installing it's completely fine though. This seems like a bug in Idris
# that's related to builds with shared libraries enabled. It would be great
# if someone who knows a thing or two about Idris could look into this.
preBuild = "export LD_LIBRARY_PATH=$PWD/dist/build:$LD_LIBRARY_PATH";
# https://github.com/idris-lang/Idris-dev/issues/2499
librarySystemDepends = (drv.librarySystemDepends or []) ++ [pkgs.gmp];
});
# https://github.com/MarcWeber/hasktags/issues/32
hasktags = overrideCabal super.hasktags (drv: {
postInstall = "rm $out/bin/test";
});
}

View File

@ -45,15 +45,6 @@ self: super: {
# Build jailbreak-cabal with the latest version of Cabal.
jailbreak-cabal = super.jailbreak-cabal.override { Cabal = self.Cabal_1_24_0_0; };
idris = overrideCabal super.idris (drv: {
# "idris" binary cannot find Idris library otherwise while building.
# After installing it's completely fine though. Seems like Nix-specific
# issue so not reported.
preBuild = "export LD_LIBRARY_PATH=$PWD/dist/build:$LD_LIBRARY_PATH";
# https://github.com/idris-lang/Idris-dev/issues/2499
librarySystemDepends = (drv.librarySystemDepends or []) ++ [pkgs.gmp];
});
Extra = appendPatch super.Extra (pkgs.fetchpatch {
url = "https://github.com/seereason/sr-extra/commit/29787ad4c20c962924b823d02a7335da98143603.patch";
sha256 = "193i1xmq6z0jalwmq0mhqk1khz6zz0i1hs6lgfd7ybd6qyaqnf5f";

View File

@ -193,6 +193,9 @@ stdenv.mkDerivation ({
fi
if [ -d "$p/lib" ]; then
configureFlags+=" --extra-lib-dirs=$p/lib"
${ stdenv.lib.optionalString stdenv.isDarwin
"export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:$p/lib"
}
fi
done
${ghcCommand}-pkg --${packageDbFlag}="$packageConfDir" recache

View File

@ -29,7 +29,10 @@ stdenv.mkDerivation (args // {
preferLocalBuild = true;
configurePhase = args.configurePhase or "stack setup";
configurePhase = args.configurePhase or ''
export STACK_ROOT=$NIX_BUILD_TOP/.stack
stack setup
'';
buildPhase = args.buildPhase or "stack build";

View File

@ -60,6 +60,7 @@ stdenv.mkDerivation {
prePatch = optionalString stdenv.isDarwin ''
substituteInPlace configure --replace '`/usr/bin/arch`' '"i386"'
substituteInPlace configure --replace '-Wl,-stack_size,1000000' ' '
'';
preConfigure = ''

View File

@ -57,6 +57,7 @@ stdenv.mkDerivation {
prePatch = optionalString stdenv.isDarwin ''
substituteInPlace configure --replace '`/usr/bin/arch`' '"i386"'
substituteInPlace configure --replace '-Wl,-stack_size,1000000' ' '
'';
preConfigure = ''

View File

@ -61,6 +61,7 @@ stdenv.mkDerivation {
prePatch = optionalString stdenv.isDarwin ''
substituteInPlace configure --replace '`/usr/bin/arch`' '"i386"'
substituteInPlace configure --replace '-Wl,-stack_size,1000000' ' '
'';
preConfigure = ''

View File

@ -1,14 +0,0 @@
{stdenv, fetchurl, jdk, sharedobjects, jjtraveler}:
stdenv.mkDerivation {
name = "aterm-java-1.6";
src = fetchurl {
url = http://www.cwi.nl/projects/MetaEnv/aterm-java/aterm-java-1.6.tar.gz;
md5 = "abf475dae2f5efca865fcdff871feb5e";
};
buildInputs = [stdenv jdk sharedobjects jjtraveler];
meta = {
platforms = stdenv.lib.platforms.unix;
};
}

View File

@ -14,6 +14,8 @@ stdenv.mkDerivation rec {
glpkWithExtras = lib.overrideDerivation glpk (attrs: {
propagatedNativeBuildInputs = [ gmp libtool libmysql libiodbc ];
CPPFLAGS = "-I${gmp.dev}/include";
preConfigure = ''
substituteInPlace configure \
--replace /usr/include/mysql ${lib.getDev libmysql}/include/mysql

View File

@ -1,4 +1,4 @@
{ lib, fetchurl, mkPythonDerivation, python, pkgconfig, glib, gobjectIntrospection, pycairo, cairo }:
{ stdenv, fetchurl, mkPythonDerivation, python, pkgconfig, glib, gobjectIntrospection, pycairo, cairo, which, ncurses}:
mkPythonDerivation rec {
major = "3.20";
@ -10,12 +10,13 @@ mkPythonDerivation rec {
sha256 = "0ikzh3l7g1gjh8jj8vg6mdvrb25svp63gxcam4m0i404yh0lgari";
};
buildInputs = [ pkgconfig glib gobjectIntrospection ];
buildInputs = [ pkgconfig glib gobjectIntrospection ]
++ stdenv.lib.optionals stdenv.isDarwin [ which ncurses ];
propagatedBuildInputs = [ pycairo cairo ];
meta = {
homepage = http://live.gnome.org/PyGObject;
description = "Python bindings for Glib";
platforms = lib.platforms.unix;
platforms = stdenv.lib.platforms.unix;
};
}

View File

@ -1,4 +1,4 @@
{ lib, fetchurl, pythonPackages, qt4, pkgconfig, lndir, dbus_libs, makeWrapper }:
{ stdenv, fetchurl, pythonPackages, qt4, pkgconfig, lndir, dbus_libs, makeWrapper }:
let
version = "4.11.3";
@ -17,9 +17,15 @@ in mkPythonDerivation {
rm -rf "$out/nix-support"
export PYTHONPATH=$PYTHONPATH:$out/lib/${python.libPrefix}/site-packages
${stdenv.lib.optionalString stdenv.isDarwin ''
export QMAKESPEC="unsupported/macx-clang-libc++" # OS X target after bootstrapping phase \
''}
substituteInPlace configure.py \
--replace 'install_dir=pydbusmoddir' "install_dir='$out/lib/${python.libPrefix}/site-packages/dbus/mainloop'"
--replace 'install_dir=pydbusmoddir' "install_dir='$out/lib/${python.libPrefix}/site-packages/dbus/mainloop'" \
${stdenv.lib.optionalString stdenv.isDarwin ''
--replace "qt_macx_spec = 'macx-g++'" "qt_macx_spec = 'unsupported/macx-clang-libc++'" # for bootstrapping phase \
''}
configureFlagsArray=( \
--confirm-license --bindir $out/bin \
@ -50,7 +56,7 @@ in mkPythonDerivation {
description = "Python bindings for Qt";
license = "GPL";
homepage = http://www.riverbankcomputing.co.uk;
maintainers = [ lib.maintainers.sander ];
platforms = lib.platforms.mesaPlatforms;
maintainers = [ stdenv.lib.maintainers.sander ];
platforms = stdenv.lib.platforms.mesaPlatforms;
};
}

View File

@ -279,7 +279,7 @@ let
mwaved = [ pkgs.fftw ];
ncdf4 = [ pkgs.netcdf ];
nloptr = [ pkgs.nlopt ];
openssl = [ pkgs.openssl.dev8 ];
openssl = [ pkgs.openssl.dev ];
outbreaker = [ pkgs.gsl_1 ];
pander = [ pkgs.pandoc pkgs.which ];
pbdMPI = [ pkgs.openmpi ];

View File

@ -1,12 +1,12 @@
{ stdenv, fetchurl, perl, buildLinux, ... } @ args:
import ./generic.nix (args // rec {
version = "4.7.2";
version = "4.7.3";
extraMeta.branch = "4.7";
src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
sha256 = "1234z4wzvrbyzql6cc8i4bq7bbbjgaxhys4fcnqzm14lavk3wjaq";
sha256 = "16rr5nj78jh1l46baa0qgzbw44slyqw5ivfn1y7dcxrgb17bvrqc";
};
kernelPatches = args.kernelPatches;

View File

@ -100,9 +100,9 @@ rec {
grsecurity_4_4 = throw "grsecurity stable is no longer supported";
grsecurity_testing = grsecPatch
{ kver = "4.7.2";
grrev = "201608312326";
sha256 = "0nbp3lnl6gi6kklpc8wnjpz5cj9zafaw2445lan15qnyzf5zb966";
{ kver = "4.7.3";
grrev = "201609072139";
sha256 = "0c70nfsa1bk07z6sivy645d9w0qkq23pwpwdm28160kfy7dampyh";
};
# This patch relaxes grsec constraints on the location of usermode helpers,

View File

@ -5,11 +5,11 @@
stdenv.mkDerivation rec {
name = "pktgen-${version}";
version = "3.0.04";
version = "3.0.13";
src = fetchurl {
url = "http://dpdk.org/browse/apps/pktgen-dpdk/snapshot/pktgen-${version}.tar.gz";
sha256 = "0vrmbpl8zaal5zjwyzlx0y3d6jydfxdmf0psdj7ic37h5yh2iv2q";
sha256 = "64629b454ed8dc036d5e9bb30b3ae84a0bab0142b651c72da85ab1454e9ae0d6";
};
nativeBuildInputs = stdenv.lib.optionals withGtk [ pkgconfig ];

View File

@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
postInstall = ''
for f in $out/lib/*.la $out/bin/net-snmp-config $out/bin/net-snmp-create-v3-user; do
for f in "$out/lib/"*.la $out/bin/net-snmp-config $out/bin/net-snmp-create-v3-user; do
sed 's|-L${openssl.dev}|-L${openssl.out}|g' -i $f
done
'';

View File

@ -4443,7 +4443,15 @@ in
coq = coq_8_5;
});
cryptol = haskellPackages.cryptol;
# Users installing via `nix-env` will likely be using the REPL,
# which has a hard dependency on Z3, so make sure it is available.
cryptol = haskellPackages.cryptol.overrideDerivation (oldAttrs: {
buildInputs = (oldAttrs.buildInputs or []) ++ [ makeWrapper ];
installPhase = (oldAttrs.installPhase or "") + ''
wrapProgram $out/bin/cryptol \
--prefix 'PATH' ':' "${lib.getBin z3}/bin"
'';
});
devpi-client = callPackage ../development/tools/devpi-client {};
@ -9966,10 +9974,6 @@ in
### DEVELOPMENT / LIBRARIES / JAVA
atermjava = callPackage ../development/libraries/java/aterm {
stdenv = overrideInStdenv stdenv [gnumake380];
};
commonsBcel = callPackage ../development/libraries/java/commons/bcel { };
commonsBsf = callPackage ../development/libraries/java/commons/bsf { };

View File

@ -686,23 +686,6 @@ let
};
};
f = melpaBuild rec {
pname = "f";
version = "20151113";
src = fetchFromGitHub {
owner = "rejeep";
repo = "f.el";
rev = "e0259ee060ff9a3f12204adcc8630869080acd68";
sha256 = "0lzqfr5xgc3qvpbs6vf63yiw7pc2mybfvsrhczf9ghlmlawqa6k1";
};
fileSpecs = [ "f.el" ];
packageRequires = [ dash s ];
meta = {
description = "Emacs library for working with files and directories";
license = gpl3Plus;
};
};
find-file-in-project = melpaBuild rec {
pname = "find-file-in-project";
version = "3.5";

View File

@ -1,6 +1,5 @@
{ supportedSystems
, packageSet ? (import ../..)
, allowTexliveBuilds ? false
, scrubJobs ? true
}:
@ -11,7 +10,6 @@ rec {
# Ensure that we don't build packages marked as unfree.
allPackages = args: packageSet (args // {
config.allowUnfree = false;
config.allowTexliveBuilds = allowTexliveBuilds;
config.inHydra = true;
});