Merge branch 'master' into staging

More larger rebuilds from master, unfortunately.
This commit is contained in:
Vladimír Čunát 2017-03-15 19:09:33 +01:00
commit e99bc64552
No known key found for this signature in database
GPG Key ID: E747DF1F9575A3AA
104 changed files with 1085 additions and 1166 deletions

View File

@ -18,3 +18,8 @@ matrix:
env: env:
global: global:
- GITHUB_TOKEN=5edaaf1017f691ed34e7f80878f8f5fbd071603f - GITHUB_TOKEN=5edaaf1017f691ed34e7f80878f8f5fbd071603f
notifications:
email:
on_success: never
on_failure: change

View File

@ -177,7 +177,7 @@ foreach my $u (@{$spec->{users}}) {
} }
# Create a home directory. # Create a home directory.
if ($u->{createHome} && ! -e $u->{home}) { if ($u->{createHome}) {
make_path($u->{home}, { mode => 0700 }) if ! -e $u->{home}; make_path($u->{home}, { mode => 0700 }) if ! -e $u->{home};
chown $u->{uid}, $u->{gid}, $u->{home}; chown $u->{uid}, $u->{gid}, $u->{home};
} }

View File

@ -0,0 +1,30 @@
{ config, lib, pkgs, ... }:
with lib;
{
###### interface
options = {
hardware.sensor.iio = {
enable = mkOption {
description = "Enable this option to support IIO sensors.";
type = types.bool;
default = false;
};
};
};
###### implementation
config = mkIf config.hardware.sensor.iio.enable {
boot.initrd.availableKernelModules = [ "hid-sensor-hub" ];
environment.systemPackages = with pkgs; [ iio-sensor-proxy ];
services.dbus.packages = with pkgs; [ iio-sensor-proxy ];
services.udev.packages = with pkgs; [ iio-sensor-proxy ];
systemd.packages = with pkgs; [ iio-sensor-proxy ];
};
}

View File

@ -29,6 +29,7 @@
./hardware/ckb.nix ./hardware/ckb.nix
./hardware/cpu/amd-microcode.nix ./hardware/cpu/amd-microcode.nix
./hardware/cpu/intel-microcode.nix ./hardware/cpu/intel-microcode.nix
./hardware/sensor/iio.nix
./hardware/ksm.nix ./hardware/ksm.nix
./hardware/mcelog.nix ./hardware/mcelog.nix
./hardware/network/b43.nix ./hardware/network/b43.nix
@ -328,6 +329,7 @@
./services/monitoring/prometheus/default.nix ./services/monitoring/prometheus/default.nix
./services/monitoring/prometheus/alertmanager.nix ./services/monitoring/prometheus/alertmanager.nix
./services/monitoring/prometheus/blackbox-exporter.nix ./services/monitoring/prometheus/blackbox-exporter.nix
./services/monitoring/prometheus/fritzbox-exporter.nix
./services/monitoring/prometheus/json-exporter.nix ./services/monitoring/prometheus/json-exporter.nix
./services/monitoring/prometheus/nginx-exporter.nix ./services/monitoring/prometheus/nginx-exporter.nix
./services/monitoring/prometheus/node-exporter.nix ./services/monitoring/prometheus/node-exporter.nix

View File

@ -41,7 +41,7 @@ let
entry = "${manual.manual}/share/doc/nixos/index.html"; entry = "${manual.manual}/share/doc/nixos/index.html";
help = pkgs.writeScriptBin "nixos-help" helpScript = pkgs.writeScriptBin "nixos-help"
'' ''
#! ${pkgs.stdenv.shell} -e #! ${pkgs.stdenv.shell} -e
browser="$BROWSER" browser="$BROWSER"
@ -58,6 +58,15 @@ let
exec "$browser" ${entry} exec "$browser" ${entry}
''; '';
desktopItem = pkgs.makeDesktopItem {
name = "nixos-manual";
desktopName = "NixOS Manual";
genericName = "View NixOS documentation in a web browser";
# TODO: find a better icon (Nix logo + help overlay?)
icon = "system-help";
exec = "${helpScript}/bin/nixos-help";
categories = "System";
};
in in
{ {
@ -105,7 +114,8 @@ in
system.build.manual = manual; system.build.manual = manual;
environment.systemPackages = environment.systemPackages =
[ manual.manual help ] [ manual.manual helpScript ]
++ optional config.services.xserver.enable desktopItem
++ optional config.programs.man.enable manual.manpages; ++ optional config.programs.man.enable manual.manpages;
boot.extraTTYs = mkIf cfg.showManual ["tty${toString cfg.ttyNumber}"]; boot.extraTTYs = mkIf cfg.showManual ["tty${toString cfg.ttyNumber}"];

View File

@ -0,0 +1,76 @@
{ config, pkgs, lib, ... }:
with lib;
let
cfg = config.services.prometheus.fritzboxExporter;
in {
options = {
services.prometheus.fritzboxExporter = {
enable = mkEnableOption "prometheus fritzbox exporter";
port = mkOption {
type = types.int;
default = 9133;
description = ''
Port to listen on.
'';
};
gatewayAddress = mkOption {
type = types.str;
default = "fritz.box";
description = ''
The hostname or IP of the FRITZ!Box.
'';
};
gatewayPort = mkOption {
type = types.int;
default = 49000;
description = ''
The port of the FRITZ!Box UPnP service.
'';
};
extraFlags = mkOption {
type = types.listOf types.str;
default = [];
description = ''
Extra commandline options when launching the fritzbox exporter.
'';
};
openFirewall = mkOption {
type = types.bool;
default = false;
description = ''
Open port in firewall for incoming connections.
'';
};
};
};
config = mkIf cfg.enable {
networking.firewall.allowedTCPPorts = optional cfg.openFirewall cfg.port;
systemd.services.prometheus-fritzbox-exporter = {
description = "Prometheus exporter for FRITZ!Box via UPnP";
unitConfig.Documentation = "https://github.com/ndecker/fritzbox_exporter";
wantedBy = [ "multi-user.target" ];
serviceConfig = {
User = "nobody";
Restart = "always";
PrivateTmp = true;
WorkingDirectory = /tmp;
ExecStart = ''
${pkgs.prometheus-fritzbox-exporter}/bin/fritzbox_exporter \
-listen-address :${toString cfg.port} \
-gateway-address ${cfg.gatewayAddress} \
-gateway-port ${toString cfg.gatewayPort} \
${concatStringsSep " \\\n " cfg.extraFlags}
'';
};
};
};
}

View File

@ -2,14 +2,10 @@
with lib; with lib;
let let
apparmorEnabled = config.security.apparmor.enable;
cfg = config.services.dnscrypt-proxy; cfg = config.services.dnscrypt-proxy;
stateDirectory = "/var/lib/dnscrypt-proxy"; stateDirectory = "/var/lib/dnscrypt-proxy";
localAddress = "${cfg.localAddress}:${toString cfg.localPort}";
# The minisign public key used to sign the upstream resolver list. # The minisign public key used to sign the upstream resolver list.
# This is somewhat more flexible than preloading the key as an # This is somewhat more flexible than preloading the key as an
# embedded string. # embedded string.
@ -18,31 +14,33 @@ let
sha256 = "18lnp8qr6ghfc2sd46nn1rhcpr324fqlvgsp4zaigw396cd7vnnh"; sha256 = "18lnp8qr6ghfc2sd46nn1rhcpr324fqlvgsp4zaigw396cd7vnnh";
}; };
# Internal flag indicating whether the upstream resolver list is used # Internal flag indicating whether the upstream resolver list is used.
useUpstreamResolverList = cfg.resolverList == null && cfg.customResolver == null; useUpstreamResolverList = cfg.customResolver == null;
resolverList = # The final local address.
if (cfg.resolverList != null) localAddress = "${cfg.localAddress}:${toString cfg.localPort}";
then cfg.resolverList
else "${stateDirectory}/dnscrypt-resolvers.csv";
resolverArgs = if (cfg.customResolver != null) # The final resolvers list path.
resolverList = "${stateDirectory}/dnscrypt-resolvers.csv";
# Build daemon command line
resolverArgs =
if (cfg.customResolver == null)
then then
[ "--resolver-address=${cfg.customResolver.address}:${toString cfg.customResolver.port}" [ "-L ${resolverList}"
"--provider-name=${cfg.customResolver.name}" "-R ${cfg.resolverName}"
"--provider-key=${cfg.customResolver.key}"
] ]
else else with cfg.customResolver;
[ "--resolvers-list=${resolverList}" [ "-N ${name}"
"--resolver-name=${cfg.resolverName}" "-k ${key}"
"-r ${address}:${toString port}"
]; ];
# The final command line arguments passed to the daemon
daemonArgs = daemonArgs =
[ "--local-address=${localAddress}" ] [ "-a ${localAddress}" ]
++ optional cfg.tcpOnly "--tcp-only" ++ resolverArgs
++ optional cfg.ephemeralKeys "-E" ++ cfg.extraArgs;
++ resolverArgs;
in in
{ {
@ -52,6 +50,9 @@ in
}; };
options = { options = {
# Before adding another option, consider whether it could
# equally well be passed via extraArgs.
services.dnscrypt-proxy = { services.dnscrypt-proxy = {
enable = mkOption { enable = mkOption {
default = false; default = false;
@ -84,19 +85,11 @@ in
default = "dnscrypt.eu-nl"; default = "dnscrypt.eu-nl";
type = types.nullOr types.str; type = types.nullOr types.str;
description = '' description = ''
The name of the upstream DNSCrypt resolver to use, taken from The name of the DNSCrypt resolver to use, taken from
<filename>${resolverList}</filename>. The default resolver is <filename>${resolverList}</filename>. The default
located in Holland, supports DNS security extensions, and resolver is located in Holland, supports DNS security
<emphasis>claims</emphasis> to not keep logs. extensions, and <emphasis>claims</emphasis> to not
''; keep logs.
};
resolverList = mkOption {
default = null;
type = types.nullOr types.path;
description = ''
List of DNSCrypt resolvers. The default is to use the list of
public resolvers provided by upstream.
''; '';
}; };
@ -133,25 +126,15 @@ in
}; })); }; }));
}; };
tcpOnly = mkOption { extraArgs = mkOption {
default = false; default = [];
type = types.bool; type = types.listOf types.str;
description = '' description = ''
Force sending encrypted DNS queries to the upstream resolver over Additional command-line arguments passed verbatim to the daemon.
TCP instead of UDP (on port 443). Use only if the UDP port is blocked. See <citerefentry><refentrytitle>dnscrypt-proxy</refentrytitle>
''; <manvolnum>8</manvolnum></citerefentry> for details.
};
ephemeralKeys = mkOption {
default = false;
type = types.bool;
description = ''
Compute a new key pair for every query. Enabling this option
increases CPU usage, but makes it more difficult for the upstream
resolver to track your usage of their service across IP addresses.
The default is to re-use the public key pair for all queries, making
tracking trivial.
''; '';
example = [ "-X libdcplugin_example_cache.so,--min-ttl=60" ];
}; };
}; };
}; };
@ -187,16 +170,13 @@ in
documentation = [ "man:dnscrypt-proxy(8)" ]; documentation = [ "man:dnscrypt-proxy(8)" ];
before = [ "nss-lookup.target" ]; before = [ "nss-lookup.target" ];
after = [ "network.target" ];
after = [ "network.target" ] requires = [ "dnscrypt-proxy.socket "];
++ optional apparmorEnabled "apparmor.service";
requires = [ "dnscrypt-proxy.socket "]
++ optional apparmorEnabled "apparmor.service";
serviceConfig = { serviceConfig = {
NonBlocking = "true"; NonBlocking = "true";
ExecStart = "${pkgs.dnscrypt-proxy}/bin/dnscrypt-proxy ${toString daemonArgs}"; ExecStart = "${pkgs.dnscrypt-proxy}/bin/dnscrypt-proxy ${toString daemonArgs}";
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
User = "dnscrypt-proxy"; User = "dnscrypt-proxy";
@ -207,7 +187,9 @@ in
}; };
} }
(mkIf apparmorEnabled { (mkIf config.security.apparmor.enable {
systemd.services.dnscrypt-proxy.after = [ "apparmor.service" ];
security.apparmor.profiles = singleton (pkgs.writeText "apparmor-dnscrypt-proxy" '' security.apparmor.profiles = singleton (pkgs.writeText "apparmor-dnscrypt-proxy" ''
${pkgs.dnscrypt-proxy}/bin/dnscrypt-proxy { ${pkgs.dnscrypt-proxy}/bin/dnscrypt-proxy {
/dev/null rw, /dev/null rw,
@ -272,15 +254,18 @@ in
path = with pkgs; [ curl diffutils dnscrypt-proxy minisign ]; path = with pkgs; [ curl diffutils dnscrypt-proxy minisign ];
script = '' script = ''
cd ${stateDirectory} cd ${stateDirectory}
domain=download.dnscrypt.org domain=raw.githubusercontent.com
get="curl -fSs --resolve $domain:443:$(hostip -r 8.8.8.8 $domain | head -1)" get="curl -fSs --resolve $domain:443:$(hostip -r 8.8.8.8 $domain | head -1)"
$get -o dnscrypt-resolvers.csv.tmp \ $get -o dnscrypt-resolvers.csv.tmp \
https://$domain/dnscrypt-proxy/dnscrypt-resolvers.csv https://$domain/jedisct1/dnscrypt-proxy/master/dnscrypt-resolvers.csv
$get -o dnscrypt-resolvers.csv.minisig.tmp \ $get -o dnscrypt-resolvers.csv.minisig.tmp \
https://$domain/dnscrypt-proxy/dnscrypt-resolvers.csv.minisig https://$domain/jedisct1/dnscrypt-proxy/master/dnscrypt-resolvers.csv.minisig
mv dnscrypt-resolvers.csv.minisig{.tmp,} mv dnscrypt-resolvers.csv.minisig{.tmp,}
minisign -q -V -p ${upstreamResolverListPubKey} \ if ! minisign -q -V -p ${upstreamResolverListPubKey} \
-m dnscrypt-resolvers.csv.tmp -x dnscrypt-resolvers.csv.minisig -m dnscrypt-resolvers.csv.tmp -x dnscrypt-resolvers.csv.minisig ; then
echo "failed to verify resolver list!" >&2
exit 1
fi
[[ -f dnscrypt-resolvers.csv ]] && mv dnscrypt-resolvers.csv{,.old} [[ -f dnscrypt-resolvers.csv ]] && mv dnscrypt-resolvers.csv{,.old}
mv dnscrypt-resolvers.csv{.tmp,} mv dnscrypt-resolvers.csv{.tmp,}
if cmp dnscrypt-resolvers.csv{,.old} ; then if cmp dnscrypt-resolvers.csv{,.old} ; then
@ -312,5 +297,24 @@ in
imports = [ imports = [
(mkRenamedOptionModule [ "services" "dnscrypt-proxy" "port" ] [ "services" "dnscrypt-proxy" "localPort" ]) (mkRenamedOptionModule [ "services" "dnscrypt-proxy" "port" ] [ "services" "dnscrypt-proxy" "localPort" ])
(mkChangedOptionModule
[ "services" "dnscrypt-proxy" "tcpOnly" ]
[ "services" "dnscrypt-proxy" "extraArgs" ]
(config:
let val = getAttrFromPath [ "services" "dnscrypt-proxy" "tcpOnly" ] config; in
optional val "-T"))
(mkChangedOptionModule
[ "services" "dnscrypt-proxy" "ephemeralKeys" ]
[ "services" "dnscrypt-proxy" "extraArgs" ]
(config:
let val = getAttrFromPath [ "services" "dnscrypt-proxy" "ephemeralKeys" ] config; in
optional val "-E"))
(mkRemovedOptionModule [ "services" "dnscrypt-proxy" "resolverList" ] ''
The current resolver listing from upstream is always used
unless a custom resolver is specified.
'')
]; ];
} }

View File

@ -26,17 +26,7 @@ in
This will switch to a new virtual terminal, turn off console This will switch to a new virtual terminal, turn off console
switching and disable SysRq mechanism (when switching and disable SysRq mechanism (when
<option>services.physlock.disableSysRq</option> is set) <option>services.physlock.disableSysRq</option> is set)
until the root or <option>services.physlock.user</option> until the root or user password is given.
password is given.
'';
};
user = mkOption {
type = types.nullOr types.str;
default = null;
description = ''
User whose password will be used to unlock the screen on par
with the root password.
''; '';
}; };
@ -105,7 +95,7 @@ in
++ cfg.lockOn.extraTargets; ++ cfg.lockOn.extraTargets;
serviceConfig.Type = "forking"; serviceConfig.Type = "forking";
script = '' script = ''
${pkgs.physlock}/bin/physlock -d${optionalString cfg.disableSysRq "s"}${optionalString (cfg.user != null) " -u ${cfg.user}"} ${pkgs.physlock}/bin/physlock -d${optionalString cfg.disableSysRq "s"}
''; '';
}; };

View File

@ -4,11 +4,6 @@
with lib; with lib;
let let
# Upgrading? We have a test! nix-build ./nixos/tests/wordpress.nix
version = "4.7.2";
fullversion = "${version}";
# Our bare-bones wp-config.php file using the above settings # Our bare-bones wp-config.php file using the above settings
wordpressConfig = pkgs.writeText "wp-config.php" '' wordpressConfig = pkgs.writeText "wp-config.php" ''
<?php <?php
@ -71,12 +66,7 @@ let
# The wordpress package itself # The wordpress package itself
wordpressRoot = pkgs.stdenv.mkDerivation rec { wordpressRoot = pkgs.stdenv.mkDerivation rec {
name = "wordpress"; name = "wordpress";
src = pkgs.fetchFromGitHub { src = config.package;
owner = "WordPress";
repo = "WordPress";
rev = "${fullversion}";
sha256 = "0vph12708drf8ww0xd05hpdvbyy7n5gj9ca598lhdhy2i1j6wy32";
};
installPhase = '' installPhase = ''
mkdir -p $out mkdir -p $out
# copy all the wordpress files we downloaded # copy all the wordpress files we downloaded
@ -122,6 +112,14 @@ in
enablePHP = true; enablePHP = true;
options = { options = {
package = mkOption {
type = types.path;
default = pkgs.wordpress;
description = ''
Path to the wordpress sources.
Upgrading? We have a test! nix-build ./nixos/tests/wordpress.nix
'';
};
dbHost = mkOption { dbHost = mkOption {
default = "localhost"; default = "localhost";
description = "The location of the database server."; description = "The location of the database server.";

View File

@ -71,6 +71,7 @@ in
environment.etc."lxc/lxc.conf".text = cfg.systemConfig; environment.etc."lxc/lxc.conf".text = cfg.systemConfig;
environment.etc."lxc/lxc-usernet".text = cfg.usernetConfig; environment.etc."lxc/lxc-usernet".text = cfg.usernetConfig;
environment.etc."lxc/default.conf".text = cfg.defaultConfig; environment.etc."lxc/default.conf".text = cfg.defaultConfig;
systemd.tmpfiles.rules = [ "d /var/lib/lxc/rootfs 0755 root root -" ];
security.apparmor.packages = [ pkgs.lxc ]; security.apparmor.packages = [ pkgs.lxc ];
security.apparmor.profiles = [ "${pkgs.lxc}/etc/apparmor.d/lxc-containers" ]; security.apparmor.profiles = [ "${pkgs.lxc}/etc/apparmor.d/lxc-containers" ];

View File

@ -10,14 +10,10 @@ import ./make-test.nix ({ pkgs, ... }:
{ web = { web =
{ config, pkgs, ... }: { config, pkgs, ... }:
{ {
services.mysql.enable = true; services.mysql = {
services.mysql.package = pkgs.mysql; enable = true;
services.mysql.initialScript = pkgs.writeText "start.sql" '' package = pkgs.mysql;
CREATE DATABASE wordpress; };
CREATE USER 'wordpress'@'localhost' IDENTIFIED BY 'wordpress';
GRANT ALL on wordpress.* TO 'wordpress'@'localhost';
'';
services.httpd = { services.httpd = {
enable = true; enable = true;
logPerVirtualHost = true; logPerVirtualHost = true;

View File

@ -52,7 +52,7 @@ stdenv.mkDerivation {
src = src =
fetchurl { fetchurl {
url = "http://repository-origin.spotify.com/pool/non-free/s/spotify-client/spotify-client_${version}_amd64.deb"; url = "https://repository-origin.spotify.com/pool/non-free/s/spotify-client/spotify-client_${version}_amd64.deb";
sha256 = "0l008x06d257vcw6gq3q90hvv93cq6mxpj11by1np6bzzg61qv8x"; sha256 = "0l008x06d257vcw6gq3q90hvv93cq6mxpj11by1np6bzzg61qv8x";
}; };

View File

@ -1,4 +1,6 @@
{ stdenv, makeDesktopItem, freetype, fontconfig, libX11, libXrender, zlib, jdk, glib, gtk2, libXtst, webkitgtk2, makeWrapper, ... }: { stdenv, makeDesktopItem, freetype, fontconfig, libX11, libXrender
, zlib, jdk, glib, gtk2, libXtst, gsettings_desktop_schemas, webkitgtk2
, makeWrapper, ... }:
{ name, src ? builtins.getAttr stdenv.system sources, sources ? null, description }: { name, src ? builtins.getAttr stdenv.system sources, sources ? null, description }:
@ -15,7 +17,10 @@ stdenv.mkDerivation rec {
categories = "Application;Development;"; categories = "Application;Development;";
}; };
buildInputs = [ makeWrapper ]; buildInputs = [
fontconfig freetype glib gsettings_desktop_schemas gtk2 jdk libX11
libXrender libXtst makeWrapper zlib
] ++ stdenv.lib.optional (webkitgtk2 != null) webkitgtk2;
buildCommand = '' buildCommand = ''
# Unpack tarball. # Unpack tarball.
@ -37,6 +42,7 @@ stdenv.mkDerivation rec {
makeWrapper $out/eclipse/eclipse $out/bin/eclipse \ makeWrapper $out/eclipse/eclipse $out/bin/eclipse \
--prefix PATH : ${jdk}/bin \ --prefix PATH : ${jdk}/bin \
--prefix LD_LIBRARY_PATH : ${stdenv.lib.makeLibraryPath ([ glib gtk2 libXtst ] ++ stdenv.lib.optional (webkitgtk2 != null) webkitgtk2)} \ --prefix LD_LIBRARY_PATH : ${stdenv.lib.makeLibraryPath ([ glib gtk2 libXtst ] ++ stdenv.lib.optional (webkitgtk2 != null) webkitgtk2)} \
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH" \
--add-flags "-configuration \$HOME/.eclipse/''${productId}_$productVersion/configuration" --add-flags "-configuration \$HOME/.eclipse/''${productId}_$productVersion/configuration"
# Create desktop item. # Create desktop item.

View File

@ -1,6 +1,6 @@
{ stdenv, lib, fetchurl, makeDesktopItem, makeWrapper { stdenv, lib, fetchurl, makeDesktopItem, makeWrapper
, freetype, fontconfig, libX11, libXext, libXrender, zlib , freetype, fontconfig, libX11, libXext, libXrender, zlib
, glib, gtk2, libXtst, jdk , glib, gtk2, libXtst, jdk, gsettings_desktop_schemas
, webkitgtk2 ? null # for internal web browser , webkitgtk2 ? null # for internal web browser
, buildEnv, writeText, runCommand , buildEnv, writeText, runCommand
, callPackage , callPackage
@ -12,7 +12,8 @@ rec {
buildEclipse = import ./build-eclipse.nix { buildEclipse = import ./build-eclipse.nix {
inherit stdenv makeDesktopItem freetype fontconfig libX11 libXrender zlib inherit stdenv makeDesktopItem freetype fontconfig libX11 libXrender zlib
jdk glib gtk2 libXtst webkitgtk2 makeWrapper; jdk glib gtk2 libXtst gsettings_desktop_schemas webkitgtk2
makeWrapper;
}; };
### Eclipse CPP ### Eclipse CPP

View File

@ -1,6 +1,6 @@
{ fetchurl, stdenv, glib, xorg, cairo, gtk2, pango, makeWrapper, openssl, bzip2, { fetchurl, stdenv, glib, xorg, cairo, gtk2, pango, makeWrapper, openssl, bzip2,
pkexecPath ? "/run/wrappers/bin/pkexec", libredirect, pkexecPath ? "/run/wrappers/bin/pkexec", libredirect,
gksuSupport ? false, gksu}: gksuSupport ? false, gksu, unzip, zip, bash }:
assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux"; assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux";
assert gksuSupport -> gksu != null; assert gksuSupport -> gksu != null;
@ -33,6 +33,21 @@ in let
dontPatchELF = true; dontPatchELF = true;
buildInputs = [ makeWrapper ]; buildInputs = [ makeWrapper ];
# make exec.py in Default.sublime-package use own bash with
# an LD_PRELOAD instead of "/bin/bash"
patchPhase = ''
mkdir Default.sublime-package-fix
( cd Default.sublime-package-fix
${unzip}/bin/unzip ../Packages/Default.sublime-package > /dev/null
substituteInPlace "exec.py" --replace \
"[\"/bin/bash\"" \
"[\"$out/sublime_bash\""
)
${zip}/bin/zip -j Default.sublime-package.zip Default.sublime-package-fix/* > /dev/null
mv Default.sublime-package.zip Packages/Default.sublime-package
rm -r Default.sublime-package-fix
'';
buildPhase = '' buildPhase = ''
for i in sublime_text plugin_host crash_reporter; do for i in sublime_text plugin_host crash_reporter; do
patchelf \ patchelf \
@ -52,6 +67,12 @@ in let
mkdir -p $out mkdir -p $out
cp -prvd * $out/ cp -prvd * $out/
# We can't just call /usr/bin/env bash because a relocation error occurs
# when trying to run a build from within Sublime Text
ln -s ${bash}/bin/bash $out/sublime_bash
wrapProgram $out/sublime_bash \
--set LD_PRELOAD "${stdenv.cc.cc.lib}/lib${stdenv.lib.optionalString stdenv.is64bit "64"}/libgcc_s.so.1"
wrapProgram $out/sublime_text \ wrapProgram $out/sublime_text \
--set LD_PRELOAD "${libredirect}/lib/libredirect.so" \ --set LD_PRELOAD "${libredirect}/lib/libredirect.so" \
--set NIX_REDIRECTS ${builtins.concatStringsSep ":" redirects} --set NIX_REDIRECTS ${builtins.concatStringsSep ":" redirects}

View File

@ -0,0 +1,31 @@
{ stdenv, buildEnv, fetchzip, mono }:
let
version = "0.8.1";
drv = stdenv.mkDerivation {
name = "keeagent-${version}";
src = fetchzip {
url = http://lechnology.com/wp-content/uploads/2016/07/KeeAgent_v0.8.1.zip;
sha256 = "16x1qrnzg0xkvi7w29wj3z0ldmql2vcbwxksbsmnidzmygwg98hk";
stripRoot = false;
};
meta = {
description = "KeePass plugin to allow other programs to access SSH keys stored in a KeePass database for authentication";
homepage = http://lechnology.com/software/keeagent;
platforms = with stdenv.lib.platforms; linux;
license = stdenv.lib.licenses.gpl2;
maintainers = [ ];
};
pluginFilename = "KeeAgent.plgx";
installPhase = ''
mkdir -p $out/lib/dotnet/keepass/
cp $pluginFilename $out/lib/dotnet/keepass/$pluginFilename
'';
};
in
# Mono is required to compile plugin at runtime, after loading.
buildEnv { name = drv.name; paths = [ mono drv ]; }

View File

@ -1,18 +1,18 @@
# This file is autogenerated from update.sh in the same directory. # This file is autogenerated from update.sh in the same directory.
{ {
beta = { beta = {
sha256 = "0mwwscybips1kazl0rva3jdswfzfb7yp90ggqgk27z2ndp0qj8b3"; sha256 = "0bbr5wr5icrw5101dlhyn20pg28mah7w4vk365i4gf6a1zvyrd8n";
sha256bin64 = "17n0jcysxi99v8hwlg7f69nrs2y5z87644145a8r53l809hkvkrk"; sha256bin64 = "0dx9ivjc7avm0zgw0jcx5mmlzapwc2lp1sdjpwgd4y0iai1zr3yw";
version = "57.0.2987.21"; version = "57.0.2987.98";
}; };
dev = { dev = {
sha256 = "18gsj415cdlllp95q8pv1s3hhjg8cmjb6kwrvbr5mjdvsvj0ianf"; sha256 = "1i6qr1ypjww3q59lqg60xpns8xqxxrkd0yrpyx96alb1bp22x85p";
sha256bin64 = "0z58rwz00bq61d24h8jynhzxanbh0m9wi04jbczci3681b4zyiyh"; sha256bin64 = "1ahp99p4hi8r2bvkdpnkakwkpmmnndjn299axc7cafz85zs6z9vl";
version = "58.0.3000.4"; version = "58.0.3029.14";
}; };
stable = { stable = {
sha256 = "1q2kg85pd6lv036w7lsss5mhiiva9rx4f0410sbn9bnazhghib4s"; sha256 = "0bbr5wr5icrw5101dlhyn20pg28mah7w4vk365i4gf6a1zvyrd8n";
sha256bin64 = "1s64smkpjmnlw7ym14v3g3lcpagsgavmnlq6wkgci80kyvwasd3w"; sha256bin64 = "1qs8pmfasf3j84pjf4fnf6yb0pfa2hdgicskvfmr1sqy7c7yg348";
version = "56.0.2924.87"; version = "57.0.2987.98";
}; };
} }

View File

@ -30,6 +30,10 @@ common = { pname, version, sha512, updateScript }: stdenv.mkDerivation rec {
inherit sha512; inherit sha512;
}; };
# this patch should no longer be needed in 53
# from https://bugzilla.mozilla.org/show_bug.cgi?id=1013882
patches = lib.optional debugBuild ./fix-debug.patch;
buildInputs = buildInputs =
[ pkgconfig gtk2 perl zip libIDL libjpeg zlib bzip2 [ pkgconfig gtk2 perl zip libIDL libjpeg zlib bzip2
python dbus dbus_glib pango freetype fontconfig xorg.libXi python dbus dbus_glib pango freetype fontconfig xorg.libXi

View File

@ -0,0 +1,77 @@
# HG changeset patch
# User Michelangelo De Simone <mdesimone@mozilla.com>
# Date 1479198095 28800
# Node ID fde6e9ccfc72fbc0fcd93af7a40436b216e7ea1a
# Parent 687eac6845a77d2cac5505da9c8912885c2a9e57
Bug 1013882 - TestInterfaceJS should be packaged only if it's available. r=glandium, a=jcristau
MozReview-Commit-ID: IEHesdoU4Sz
diff --git a/b2g/installer/package-manifest.in b/b2g/installer/package-manifest.in
--- a/b2g/installer/package-manifest.in
+++ b/b2g/installer/package-manifest.in
@@ -570,17 +570,17 @@
@RESPATH@/components/InputMethod.manifest
#ifdef MOZ_B2G
@RESPATH@/components/inputmethod.xpt
#endif
@RESPATH@/components/SystemUpdate.manifest
@RESPATH@/components/SystemUpdateManager.js
-#ifdef MOZ_DEBUG
+#if defined(ENABLE_TESTS) && defined(MOZ_DEBUG)
@RESPATH@/components/TestInterfaceJS.js
@RESPATH@/components/TestInterfaceJS.manifest
@RESPATH@/components/TestInterfaceJSMaplike.js
#endif
; Modules
@RESPATH@/modules/*
diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in
--- a/browser/installer/package-manifest.in
+++ b/browser/installer/package-manifest.in
@@ -554,17 +554,17 @@
@RESPATH@/components/PresentationControlService.js
@RESPATH@/components/PresentationDataChannelSessionTransport.js
@RESPATH@/components/PresentationDataChannelSessionTransport.manifest
; InputMethod API
@RESPATH@/components/MozKeyboard.js
@RESPATH@/components/InputMethod.manifest
-#ifdef MOZ_DEBUG
+#if defined(ENABLE_TESTS) && defined(MOZ_DEBUG)
@RESPATH@/components/TestInterfaceJS.js
@RESPATH@/components/TestInterfaceJS.manifest
@RESPATH@/components/TestInterfaceJSMaplike.js
#endif
; [Extensions]
@RESPATH@/components/extensions-toolkit.manifest
@RESPATH@/browser/components/extensions-browser.manifest
diff --git a/mobile/android/installer/package-manifest.in b/mobile/android/installer/package-manifest.in
--- a/mobile/android/installer/package-manifest.in
+++ b/mobile/android/installer/package-manifest.in
@@ -381,17 +381,17 @@
@BINPATH@/components/CaptivePortalDetectComponents.manifest
@BINPATH@/components/captivedetect.js
#ifdef MOZ_WEBSPEECH
@BINPATH@/components/dom_webspeechsynth.xpt
#endif
-#ifdef MOZ_DEBUG
+#if defined(ENABLE_TESTS) && defined(MOZ_DEBUG)
@BINPATH@/components/TestInterfaceJS.js
@BINPATH@/components/TestInterfaceJS.manifest
@BINPATH@/components/TestInterfaceJSMaplike.js
#endif
@BINPATH@/components/nsAsyncShutdown.manifest
@BINPATH@/components/nsAsyncShutdown.js

View File

@ -16,10 +16,11 @@ stdenv.mkDerivation rec {
sha256 = "1f24y83wa1vzzjq5kp857gjqdpnmf8pb29yw7fam0m8wxxw0c3gp"; sha256 = "1f24y83wa1vzzjq5kp857gjqdpnmf8pb29yw7fam0m8wxxw0c3gp";
}; };
buildInputs = buildInputs = with stdenv.lib;
[ libev librsvg libpng libjpeg libtiff gpm openssl xz bzip2 zlib ] [ libev librsvg libpng libjpeg libtiff openssl xz bzip2 zlib ]
++ stdenv.lib.optionals enableX11 [ libX11 libXau libXt ] ++ optionals stdenv.isLinux [ gpm ]
++ stdenv.lib.optional enableDirectFB [ directfb ]; ++ optionals enableX11 [ libX11 libXau libXt ]
++ optional enableDirectFB [ directfb ];
nativeBuildInputs = [ pkgconfig bzip2 ]; nativeBuildInputs = [ pkgconfig bzip2 ];
@ -39,6 +40,6 @@ stdenv.mkDerivation rec {
homepage = http://links.twibright.com/; homepage = http://links.twibright.com/;
description = "A small browser with some graphics support"; description = "A small browser with some graphics support";
maintainers = with maintainers; [ raskin urkud viric ]; maintainers = with maintainers; [ raskin urkud viric ];
platforms = platforms.linux; platforms = platforms.unix;
}; };
} }

View File

@ -73,25 +73,25 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "flashplayer-${version}"; name = "flashplayer-${version}";
version = "24.0.0.221"; version = "25.0.0.127";
src = fetchurl { src = fetchurl {
url = url =
if debug then if debug then
"https://fpdownload.macromedia.com/pub/flashplayer/updaters/24/flash_player_npapi_linux_debug.${arch}.tar.gz" "https://fpdownload.macromedia.com/pub/flashplayer/updaters/25/flash_player_npapi_linux_debug.${arch}.tar.gz"
else else
"https://fpdownload.adobe.com/get/flashplayer/pdc/${version}/flash_player_npapi_linux.${arch}.tar.gz"; "https://fpdownload.adobe.com/get/flashplayer/pdc/${version}/flash_player_npapi_linux.${arch}.tar.gz";
sha256 = sha256 =
if debug then if debug then
if arch == "x86_64" then if arch == "x86_64" then
"10f8m5zc8p4xbhihbl785lws1kpv6smnbhx4ydzf8ai3mlv3y241" "0d37rwbqszl593pggph8pm8jwn05fppys7q8vk1jrk9jaz262iva"
else else
"1rz9rkbvln8wdkfmsnnq936xs6969qma141jc4qx408419q7v3hg" "0lhngdx1q51kfpw3a961h9p9n1fnspk9pmg21i069hvd0h143arx"
else else
if arch == "x86_64" then if arch == "x86_64" then
"1cb4mvslphj3bcchgr7lcswz8kk8si0s60rl5266mi53byplhw08" "1yasj9xzmb6ly9209b1hmrqrzxrr1bafsfjszsr3yf994hql6nzn"
else else
"1vcyp9041171xkcnz05dlk3n7bnbcb9qbh4sy5wfgjkqsyd6i5bl"; "02vs12cm6fpl2fif1lij9y15m89wk6aizc8sbjiw6w59wixn3p9d";
}; };
nativeBuildInputs = [ unzip ]; nativeBuildInputs = [ unzip ];

View File

@ -57,19 +57,19 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "flashplayer-standalone-${version}"; name = "flashplayer-standalone-${version}";
version = "24.0.0.221"; version = "25.0.0.127";
src = fetchurl { src = fetchurl {
url = url =
if debug then if debug then
"https://fpdownload.macromedia.com/pub/flashplayer/updaters/24/flash_player_sa_linux_debug.x86_64.tar.gz" "https://fpdownload.macromedia.com/pub/flashplayer/updaters/25/flash_player_sa_linux_debug.x86_64.tar.gz"
else else
"https://fpdownload.macromedia.com/pub/flashplayer/updaters/24/flash_player_sa_linux.x86_64.tar.gz"; "https://fpdownload.macromedia.com/pub/flashplayer/updaters/25/flash_player_sa_linux.x86_64.tar.gz";
sha256 = sha256 =
if debug then if debug then
"0cy81cml72ayx2wa0fd9vgp2wzny866jasahndg01v0jfxcxw5rz" "07a8x1n997lmkxj74bkygh60shwzxzcvfxpz07pxj1nmvakmin51"
else else
"0xgiycd47mzmwvmhbi0ig3rd7prksfdpcd4h62as1m9gs1ax4d7l"; "0rzxfcvjjwbd1m6pyby8km4g5834zy5d5sih7xq3czds9x0a2jp2";
}; };
nativeBuildInputs = [ unzip ]; nativeBuildInputs = [ unzip ];

View File

@ -24,12 +24,12 @@ let
in buildPythonApplication rec { in buildPythonApplication rec {
name = "qutebrowser-${version}"; name = "qutebrowser-${version}";
version = "0.9.1"; version = "0.10.1";
namePrefix = ""; namePrefix = "";
src = fetchurl { src = fetchurl {
url = "https://github.com/The-Compiler/qutebrowser/releases/download/v${version}/${name}.tar.gz"; url = "https://github.com/The-Compiler/qutebrowser/releases/download/v${version}/${name}.tar.gz";
sha256 = "0pf91nc0xcykahc3x7ww525c9czm8zpg80nxl8n2mrzc4ilgvass"; sha256 = "57f4915f0f2b1509f3aa1cb9c47117fdaad35b4c895e9223c4eb0a6e8af51917";
}; };
# Needs tox # Needs tox

View File

@ -0,0 +1,34 @@
{ stdenv, lib, buildGoPackage, fetchFromGitHub }:
buildGoPackage rec {
name = "terraform-${version}";
version = "0.8.5";
goPackagePath = "github.com/hashicorp/terraform";
src = fetchFromGitHub {
owner = "hashicorp";
repo = "terraform";
rev = "v${version}";
sha256 = "1cxwv3652fpsbm2zk1akw356cd7w7vhny1623ighgbz9ha8gvg09";
};
postInstall = ''
# remove all plugins, they are part of the main binary now
for i in $bin/bin/*; do
if [[ $(basename $i) != terraform ]]; then
rm "$i"
fi
done
'';
meta = with stdenv.lib; {
description = "Tool for building, changing, and versioning infrastructure";
homepage = "https://www.terraform.io/";
license = licenses.mpl20;
maintainers = with maintainers; [
jgeerds
zimbatm
];
};
}

View File

@ -0,0 +1,35 @@
{ stdenv, lib, buildGoPackage, fetchFromGitHub, terraform, makeWrapper }:
buildGoPackage rec {
name = "terragrunt-${version}";
version = "0.9.8";
goPackagePath = "github.com/gruntwork-io/terragrunt";
src = fetchFromGitHub {
rev = "v${version}";
owner = "gruntwork-io";
repo = "terragrunt";
sha256 = "0aakr17yzh5jzvlmg3pzpnsfwl31njg27bpck541492shqcqmkiz";
};
goDeps = ./deps.nix;
buildInputs = [ makeWrapper ];
preBuild = ''
buildFlagsArray+=("-ldflags" "-X main.VERSION=v${version}")
'';
postInstall = ''
wrapProgram $bin/bin/terragrunt \
--set TERRAGRUNT_TFPATH ${lib.getBin terraform}/bin/terraform
'';
meta = with stdenv.lib; {
description = "A thin wrapper for Terraform that supports locking for Terraform state and enforces best practices.";
homepage = https://github.com/gruntwork-io/terragrunt/;
license = licenses.mit;
maintainers = with maintainers; [ peterhoeg ];
};
}

View File

@ -17,6 +17,10 @@ buildGoPackage rec {
buildInputs = [ makeWrapper ]; buildInputs = [ makeWrapper ];
preBuild = ''
buildFlagsArray+=("-ldflags" "-X main.VERSION=v${version}")
'';
postInstall = '' postInstall = ''
wrapProgram $bin/bin/terragrunt \ wrapProgram $bin/bin/terragrunt \
--set TERRAGRUNT_TFPATH ${lib.getBin terraform}/bin/terraform --set TERRAGRUNT_TFPATH ${lib.getBin terraform}/bin/terraform

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, openssl, curl, coreutils, gawk, bash, which }: { stdenv, fetchurl, openssl, curl, coreutils, gawk, bash, which }:
stdenv.mkDerivation { stdenv.mkDerivation rec {
name = "esniper-2.32.0"; name = "esniper-2.33.0";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/esniper/esniper-2-32-0.tgz"; url = "mirror://sourceforge/esniper/${stdenv.lib.replaceStrings ["."] ["-"] name}.tgz";
sha256 = "04lka4d0mnrwc369yzvq28n8qi1qbm8810ykx6d0a4kaghiybqsy"; sha256 = "1pck2x7mp7ip0b21v2sjvq86fz12gzw6kig4vvbrghz5xw5b3f69";
}; };
buildInputs = [ openssl curl ]; buildInputs = [ openssl curl ];

View File

@ -4,7 +4,7 @@
let let
version = "2.5.1"; version = "2.5.2";
rpath = stdenv.lib.makeLibraryPath [ rpath = stdenv.lib.makeLibraryPath [
alsaLib alsaLib
@ -45,7 +45,7 @@ let
if stdenv.system == "x86_64-linux" then if stdenv.system == "x86_64-linux" then
fetchurl { fetchurl {
url = "https://downloads.slack-edge.com/linux_releases/slack-desktop-${version}-amd64.deb"; url = "https://downloads.slack-edge.com/linux_releases/slack-desktop-${version}-amd64.deb";
sha256 = "1rrhgqmz0ajv2135bzykv3dq0mifzf5kiycgrisk2sfxn6nwyyvj"; sha256 = "0mg8js18lnnwyvqksrhpym7d04bin16bh7sdmxbm36iijb9ajxmi";
} }
else else
throw "Slack is not supported on ${stdenv.system}"; throw "Slack is not supported on ${stdenv.system}";

View File

@ -83,5 +83,6 @@ stdenv.mkDerivation {
license = licenses.bsd3; license = licenses.bsd3;
maintainers = with maintainers; [ mudri ]; maintainers = with maintainers; [ mudri ];
platforms = with platforms; linux; platforms = with platforms; linux;
broken = true;
}; };
} }

View File

@ -66,6 +66,8 @@ rec {
git-imerge = callPackage ./git-imerge { }; git-imerge = callPackage ./git-imerge { };
git-octopus = callPackage ./git-octopus { };
git-radar = callPackage ./git-radar { }; git-radar = callPackage ./git-radar { };
git-remote-hg = callPackage ./git-remote-hg { }; git-remote-hg = callPackage ./git-remote-hg { };

View File

@ -0,0 +1,34 @@
{ stdenv, fetchFromGitHub, git, perl, makeWrapper }:
with stdenv.lib;
stdenv.mkDerivation rec {
name = "git-octopus-${version}";
version = "1.4";
installFlags = [ "prefix=$(out)" ];
buildInputs = [ makeWrapper ];
# perl provides shasum
postInstall = ''
for f in $out/bin/*; do
wrapProgram $f --prefix PATH : ${makeBinPath [ git perl ]}
done
'';
src = fetchFromGitHub {
owner = "lesfurets";
repo = "git-octopus";
rev = "v${version}";
sha256 = "14p61xk7jankp6gc26xciag9fnvm7r9vcbhclcy23f4ghf4q4sj1";
};
meta = {
homepage = https://github.com/lesfurets/git-octopus;
description = "The continuous merge workflow";
license = licenses.lgpl3;
platforms = platforms.unix;
maintainers = [maintainers.mic92];
};
}

View File

@ -1,19 +1,25 @@
{ stdenv, lib, fetchurl }: { stdenv, lib, fetchurl, Hypervisor, vmnet, xpc, libobjc }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "xhyve-${version}"; name = "xhyve-${version}";
version = "0.2.0"; version = "1f1dbe305";
src = fetchurl { src = fetchurl {
url = "https://github.com/mist64/xhyve/archive/v${version}.tar.gz"; url = "https://github.com/mist64/xhyve/archive/1f1dbe3059904f885e4ab2b3328f4bb350ea5c37.tar.gz";
sha256 = "0g1vknnh88kxc8aaqv3j9wqhq45mm9xxxbn1vcrypj3kk9991hrj"; sha256 = "0hfix8yr90szlv2yyqb2rlq5qsrxyam8kg52sly0adja0cpwfjvx";
}; };
buildInputs = [ Hypervisor vmnet xpc libobjc ];
# Don't use git to determine version # Don't use git to determine version
buildFlags = '' prePatch = ''
CFLAGS=-DVERSION=\"${version}\" substituteInPlace Makefile \
--replace 'shell git describe --abbrev=6 --dirty --always --tags' "$version"
''; '';
makeFlags = [ "CFLAGS+=-Wno-shift-sign-overflow" ''CFLAGS+=-DVERSION=\"${version}\"'' ];
installPhase = '' installPhase = ''
mkdir -p $out/bin mkdir -p $out/bin
cp build/xhyve $out/bin cp build/xhyve $out/bin

View File

@ -0,0 +1,31 @@
# On Mac OS X, frameworks are linked to the system CoreFoundation but
# dynamic libraries built with nix use a pure version of CF this
# causes segfaults for binaries that depend on it at runtime. This
# can be solved in two ways.
# 1. Rewrite references to the pure CF using this setup hook, this
# works for the simple case but this can still cause problems if other
# dependencies (eg. python) use the pure CF.
# 2. Create a wrapper for the binary that sets DYLD_FRAMEWORK_PATH to
# /System/Library/Frameworks. This will make everything load the
# system's CoreFoundation framework while still keeping the
# dependencies pure for other packages.
fixupOutputHooks+=('fixDarwinFrameworksIn $prefix')
fixDarwinFrameworks() {
local systemPrefix='/System/Library/Frameworks'
for fn in "$@"; do
if [ -L "$fn" ]; then continue; fi
echo "$fn: fixing dylib"
for framework in $(otool -L "$fn" | awk '/CoreFoundation\.framework/ {print $1}'); do
install_name_tool -change "$framework" "$systemPrefix/CoreFoundation.framework/Versions/A/CoreFoundation" "$fn" >&2
done
done
}
fixDarwinFrameworksIn() {
local dir="$1"
fixDarwinFrameworks $(find "$dir" -name "*.dylib")
}

View File

@ -2,6 +2,6 @@
fetchFromGitHub { fetchFromGitHub {
owner = "ghcjs"; owner = "ghcjs";
repo = "shims"; repo = "shims";
rev = "dc034a035aa73db2c5be34145732090bd74c1b57"; rev = "b97015229c58eeab7c1d0bb575794b14a9f6efca";
sha256 = "18r8kf7g7d2n0rhwcgiz9gsgdmgln1nmwwyj347bpn4zh17qlkqa"; sha256 = "1p5adkqvmb1gsv9hnn3if0rdpnaq3v9a1zkfdy282yw05jaaaggz";
} }

View File

@ -1,12 +1,12 @@
{ stdenv, fetchurl, makeWrapper, jre, unzip }: { stdenv, fetchurl, makeWrapper, jre, unzip }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "1.0.6"; version = "1.1";
name = "kotlin-${version}"; name = "kotlin-${version}";
src = fetchurl { src = fetchurl {
url = "https://github.com/JetBrains/kotlin/releases/download/v${version}/kotlin-compiler-${version}.zip"; url = "https://github.com/JetBrains/kotlin/releases/download/v${version}/kotlin-compiler-${version}.zip";
sha256 = "1dhliqd79hydd62xmrn2nwrcqy7lb5svkahkkpx9w3z9s5r0p8j2"; sha256 = "179m5y56fi50qvxsm075h0547swib7n2pfdn8a4axk9wpwldni5a";
}; };
propagatedBuildInputs = [ jre ] ; propagatedBuildInputs = [ jre ] ;

View File

@ -6,7 +6,7 @@ let
name = "clang-${version}"; name = "clang-${version}";
unpackPhase = '' unpackPhase = ''
unpackFile ${fetch "cfe" "062n17mfsn85dx3qy1qvq8rfxi7hcbr2nj70v2dah3xmy28i3yaq"} unpackFile ${fetch "cfe" "12n99m60aa680cir3ql56s1jsv6lp61hq4w9rabf4c6vpn7gi9ff"}
mv cfe-${version}* clang mv cfe-${version}* clang
sourceRoot=$PWD/clang sourceRoot=$PWD/clang
unpackFile ${clang-tools-extra_src} unpackFile ${clang-tools-extra_src}

View File

@ -3,18 +3,15 @@ let
callPackage = newScope (self // { inherit stdenv isl release_version version fetch; }); callPackage = newScope (self // { inherit stdenv isl release_version version fetch; });
release_version = "4.0.0"; release_version = "4.0.0";
rc = "rc4"; version = release_version; # differentiating these is important for rc's
version = "${release_version}${rc}";
fetch = name: sha256: fetchurl { fetch = name: sha256: fetchurl {
url = "http://llvm.org/pre-releases/${release_version}/${rc}/${name}-${version}.src.tar.xz"; url = "http://llvm.org/releases/${release_version}/${name}-${version}.src.tar.xz";
# Once 4 is released, use this instead:
# url = "http://llvm.org/releases/${release-version}/${name}-${version}.src.tar.xz";
inherit sha256; inherit sha256;
}; };
compiler-rt_src = fetch "compiler-rt" "1bxz2z9mxbx7211xfgsn5inwvpz53d1cqg76h8166dsli27xwkjm"; compiler-rt_src = fetch "compiler-rt" "059ipqq27gd928ay06f1ck3vw6y5h5z4zd766x8k0k7jpqimpwnk";
clang-tools-extra_src = fetch "clang-tools-extra" "0zkgnnv3srqxf44q4a5n3wpizf71mlq8w5rnwfwhdx777k94s5nx"; clang-tools-extra_src = fetch "clang-tools-extra" "16bwckgcxfn56mbqjlxi7fxja0zm9hjfa6s3ncm3dz98n5zd7ds1";
self = { self = {
llvm = callPackage ./llvm.nix { llvm = callPackage ./llvm.nix {

View File

@ -3,7 +3,7 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "libc++-${version}"; name = "libc++-${version}";
src = fetch "libcxx" "052fc91y8084830ajfm8nkc0vghafhnfl7l89b68qsyz3ra93i3l"; src = fetch "libcxx" "15ngfcjc3pjakpwfq7d4n546jj0rgfdv5rpb1qv9xgv9mp236kag";
postUnpack = '' postUnpack = ''
unpackFile ${libcxxabi.src} unpackFile ${libcxxabi.src}

View File

@ -3,7 +3,7 @@
stdenv.mkDerivation { stdenv.mkDerivation {
name = "libc++abi-${version}"; name = "libc++abi-${version}";
src = fetch "libcxxabi" "02z8d0q42wfmnnd0rd1yg2x4y50rfrv1k9rq00a86b6803dc7p45"; src = fetch "libcxxabi" "1n416kv27anabg9jsw6331r28ic30xk46p381lx2vbb2jrhwpafw";
buildInputs = [ cmake ] ++ stdenv.lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD) libunwind; buildInputs = [ cmake ] ++ stdenv.lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD) libunwind;

View File

@ -10,7 +10,7 @@
stdenv.mkDerivation { stdenv.mkDerivation {
name = "lld-${version}"; name = "lld-${version}";
src = fetch "lld" "00wy4qczh4s6g49sbfmyk21845zx5qc2qpm39bznqz8ynpnh4phc"; src = fetch "lld" "00km1qawk146pyjqa6aphcdzgkzrmg6cgk0ikg4661ffp5bn9q1k";
buildInputs = [ cmake llvm ]; buildInputs = [ cmake llvm ];

View File

@ -17,7 +17,7 @@
stdenv.mkDerivation { stdenv.mkDerivation {
name = "lldb-${version}"; name = "lldb-${version}";
src = fetch "lldb" "14dy1j48nw10w8brkpmla2vjjwfr1mrsl9wfabjfx1j85ywp3h69"; src = fetch "lldb" "0g83hbw1r4gd0z8hlph9i34xs6dlcc69vz3h2bqwkhb2qq2qzg9d";
patchPhase = '' patchPhase = ''
# Fix up various paths that assume llvm and clang are installed in the same place # Fix up various paths that assume llvm and clang are installed in the same place

View File

@ -21,7 +21,7 @@
}: }:
let let
src = fetch "llvm" "1ljb5y5wgypk3sy8zcd5qdgsm5hw8vl7cy6874mbf4gnk9k809b1"; src = fetch "llvm" "1giklnw71wzsgbqg9wb5x7dxnbj39m6zpfvskvzvhwvfz4fm244d";
shlib = if stdenv.isDarwin then "dylib" else "so"; shlib = if stdenv.isDarwin then "dylib" else "so";
# Used when creating a version-suffixed symlink of libLLVM.dylib # Used when creating a version-suffixed symlink of libLLVM.dylib

View File

@ -116,6 +116,7 @@ go.stdenv.mkDerivation (
local d; local cmd; local d; local cmd;
cmd="$1" cmd="$1"
d="$2" d="$2"
. $TMPDIR/buildFlagsArray
echo "$d" | grep -q "\(/_\|examples\|Godeps\)" && return 0 echo "$d" | grep -q "\(/_\|examples\|Godeps\)" && return 0
[ -n "$excludedPackages" ] && echo "$d" | grep -q "$excludedPackages" && return 0 [ -n "$excludedPackages" ] && echo "$d" | grep -q "$excludedPackages" && return 0
local OUT local OUT
@ -143,6 +144,11 @@ go.stdenv.mkDerivation (
fi fi
} }
if [ ''${#buildFlagsArray[@]} -ne 0 ]; then
declare -p buildFlagsArray > $TMPDIR/buildFlagsArray
else
touch $TMPDIR/buildFlagsArray
fi
export -f buildGoDir # parallel needs to see the function export -f buildGoDir # parallel needs to see the function
if [ -z "$enableParallelBuilding" ]; then if [ -z "$enableParallelBuilding" ]; then
export NIX_BUILD_CORES=1 export NIX_BUILD_CORES=1

View File

@ -126,7 +126,8 @@ self: super:
}); });
ghcjs-dom-jsffi = overrideCabal super.ghcjs-dom-jsffi (drv: { ghcjs-dom-jsffi = overrideCabal super.ghcjs-dom-jsffi (drv: {
libraryHaskellDepends = [ self.ghcjs-base self.text ]; setupHaskellDepends = (drv.setupHaskellDepends or []) ++ [ self.Cabal_1_24_2_0 ];
libraryHaskellDepends = (drv.libraryHaskellDepends or []) ++ [ self.ghcjs-base self.text ];
isLibrary = true; isLibrary = true;
}); });

View File

@ -84,7 +84,14 @@ let
callHackage = name: version: self.callPackage (hackage2nix name version); callHackage = name: version: self.callPackage (hackage2nix name version);
# Creates a Haskell package from a source package by calling cabal2nix on the source. # Creates a Haskell package from a source package by calling cabal2nix on the source.
callCabal2nix = name: src: self.callPackage (haskellSrc2nix { inherit src name; }); callCabal2nix = name: src: args:
let
# Filter out files other than the cabal file. This ensures
# that we don't create new derivations even when the cabal
# file hasn't changed.
justCabal = builtins.filterSource (path: type: pkgs.lib.hasSuffix ".cabal" path) src;
drv = self.callPackage (haskellSrc2nix { inherit name; src = justCabal; }) args;
in overrideCabal drv (drv': { inherit src; }); # Restore the desired src.
ghcWithPackages = selectFrom: withPackages (selectFrom self); ghcWithPackages = selectFrom: withPackages (selectFrom self);

View File

@ -1,6 +1,6 @@
{ fetchurl { fetchurl
, version ? "2.6.8" , version ? "2.6.10"
, sha256 ? "1v6n6s8cq5l0xyf1fbm1w4752b9vdk3p130ar59ig72p9vqvkbl1" , sha256 ? "364c0eee8e0c9e8ab4879c5035832e5a27f0c97292d2264af5ae0020585280f0"
}: }:
fetchurl { fetchurl {
url = "http://production.cf.rubygems.org/rubygems/rubygems-${version}.tgz"; url = "http://production.cf.rubygems.org/rubygems/rubygems-${version}.tgz";

View File

@ -1,16 +1,19 @@
{ pkgs, fetchurl, stdenv, ffmpeg, cmake, libpng, pkgconfig { pkgs, fetchFromGitHub, stdenv, ffmpeg, cmake, libpng, pkgconfig
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "ffmpegthumbnailer-${version}"; name = "ffmpegthumbnailer-${version}";
version = "2.0.10"; version = "2.2.0";
src = fetchurl { src = fetchFromGitHub {
url = "https://github.com/dirkvdb/ffmpegthumbnailer/releases/download/${version}/${name}.tar.bz2"; owner = "dirkvdb";
sha256 = "0q7ws7ysw2rwr6ja8rhdjcc7x1hrlga7n514wi4lhw1yma32q0m3"; repo = "ffmpegthumbnailer";
rev = version;
sha256 = "0kl8aa547icy9b05njps02a8sw4yn4f8fzs228kig247sn09s4cp";
}; };
buildInputs = [ ffmpeg cmake libpng pkgconfig ]; nativeBuildInputs = [ cmake pkgconfig ];
buildInputs = [ ffmpeg libpng ];
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = https://github.com/dirkvdb/ffmpegthumbnailer; homepage = https://github.com/dirkvdb/ffmpegthumbnailer;

View File

@ -1,23 +1,26 @@
{ stdenv, fetchurl, zlib, ffmpeg, pkgconfig }: { stdenv, fetchFromGitHub, zlib, ffmpeg, pkgconfig }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "ffms-2.21"; name = "ffms-${version}";
version = "2.22";
src = fetchurl { src = fetchFromGitHub {
url = https://codeload.github.com/FFMS/ffms2/tar.gz/2.21; owner = "FFMS";
name = "${name}.tar.gz"; repo = "ffms2";
sha256 = "00h2a5yhvr1qzbrzwbjv1ybxrx25lchgral6yxv36aaf4pi3rhn2"; rev = version;
sha256 = "1ywcx1f3q533qfrbck5qhik3l617qhm062l8zixv02gnla7w6rkm";
}; };
NIX_CFLAGS_COMPILE = "-fPIC"; NIX_CFLAGS_COMPILE = "-fPIC";
buildInputs = [ zlib ffmpeg pkgconfig ]; nativeBuildInputs = [ pkgconfig ];
buildInputs = [ zlib ffmpeg ];
meta = { meta = with stdenv.lib; {
homepage = http://code.google.com/p/ffmpegsource/; homepage = http://github.com/FFMS/ffms2/;
description = "Libav/ffmpeg based source library for easy frame accurate access"; description = "Libav/ffmpeg based source library for easy frame accurate access";
license = stdenv.lib.licenses.mit; license = licenses.mit;
maintainers = with stdenv.lib.maintainers; [ fuuzetsu ]; maintainers = with maintainers; [ fuuzetsu ];
platforms = with stdenv.lib.platforms; unix; platforms = platforms.unix;
}; };
} }

View File

@ -16,11 +16,11 @@ with stdenv.lib;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "geis-${version}"; name = "geis-${version}";
version = "2.2.16"; version = "2.2.17";
src = fetchurl { src = fetchurl {
url = "https://launchpad.net/geis/trunk/${version}/+download/${name}.tar.xz"; url = "https://launchpad.net/geis/trunk/${version}/+download/${name}.tar.xz";
sha256 = "40a694092c79f325a2fbf8a9f301177bc91c364f4e637c2aa8963ad2a5aabbcf"; sha256 = "1svhbjibm448ybq6gnjjzj0ak42srhihssafj0w402aj71lgaq4a";
}; };
NIX_CFLAGS_COMPILE = "-Wno-error=pedantic"; NIX_CFLAGS_COMPILE = "-Wno-error=pedantic";

View File

@ -1,15 +1,15 @@
{ stdenv, fetchurl, perl, cmake, vala_0_23, pkgconfig, gobjectIntrospection, glib, gtk3, gnome3, gettext }: { stdenv, fetchurl, perl, cmake, vala, pkgconfig, gobjectIntrospection, glib, gtk3, gnome3, gettext }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
majorVersion = "0.3"; majorVersion = "0.4";
minorVersion = "0"; minorVersion = "0.1";
name = "granite-${majorVersion}.${minorVersion}"; name = "granite-${majorVersion}.${minorVersion}";
src = fetchurl { src = fetchurl {
url = "https://code.launchpad.net/granite/${majorVersion}/${majorVersion}/+download/${name}.tar.gz"; url = "https://launchpad.net/granite/${majorVersion}/${majorVersion}.${minorVersion}/+download/${name}.tar.xz";
sha256 = "1laa109dz7kbd8zxddqw2p1b67yzva7cc5h3smqkj8a9jzbhv5fz"; sha256 = "1pf4jkz3xyn1sqv70063im80ayb5kdsqwqwx11dc7vgypsl458cm";
}; };
cmakeFlags = "-DINTROSPECTION_GIRDIR=share/gir-1.0/ -DINTROSPECTION_TYPELIBDIR=lib/girepository-1.0"; cmakeFlags = "-DINTROSPECTION_GIRDIR=share/gir-1.0/ -DINTROSPECTION_TYPELIBDIR=lib/girepository-1.0";
buildInputs = [perl cmake vala_0_23 pkgconfig gobjectIntrospection glib gtk3 gnome3.libgee gettext]; buildInputs = [perl cmake vala pkgconfig gobjectIntrospection glib gtk3 gnome3.libgee gettext];
meta = { meta = {
description = "An extension to GTK+ used by elementary OS"; description = "An extension to GTK+ used by elementary OS";
longDescription = "An extension to GTK+ that provides several useful widgets and classes to ease application development. Designed for elementary OS."; longDescription = "An extension to GTK+ that provides several useful widgets and classes to ease application development. Designed for elementary OS.";

View File

@ -2,21 +2,22 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "gtkspell-${version}"; name = "gtkspell-${version}";
version = "3.0.8"; version = "3.0.9";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/gtkspell/gtkspell3-${version}.tar.gz"; url = "mirror://sourceforge/gtkspell/gtkspell3-${version}.tar.xz";
sha256 = "1zrz5pz4ryvcssk898liynmy2wyxgj95ak7mp2jv7x62yzihq6h1"; sha256 = "09jdicmpipmj4v84gnkqwbmj4lh8v0i6pn967rb9jx4zg2ia9x54";
}; };
buildInputs = [ aspell pkgconfig gtk3 enchant intltool ]; nativeBuildInputs = [ pkgconfig intltool ];
buildInputs = [ aspell gtk3 enchant ];
propagatedBuildInputs = [ enchant ]; propagatedBuildInputs = [ enchant ];
meta = { meta = with stdenv.lib; {
homepage = "http://gtkspell.sourceforge.net/"; homepage = "http://gtkspell.sourceforge.net/";
description = "Word-processor-style highlighting GtkTextView widget"; description = "Word-processor-style highlighting GtkTextView widget";
license = stdenv.lib.licenses.gpl2Plus; license = licenses.gpl2Plus;
platforms = stdenv.lib.platforms.unix; platforms = platforms.unix;
maintainers = with stdenv.lib.maintainers; [ fuuzetsu ]; maintainers = with maintainers; [ fuuzetsu ];
}; };
} }

View File

@ -2,19 +2,19 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "htmlcxx-${version}"; name = "htmlcxx-${version}";
version = "0.85"; version = "0.86";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/htmlcxx/htmlcxx/${version}/${name}.tar.gz"; url = "mirror://sourceforge/htmlcxx/htmlcxx/${version}/${name}.tar.gz";
sha256 = "1rdsjrcjkf7mi3182lq4v5wn2wncw0ziczagaqnzi0nwmp2a00mb"; sha256 = "1hgmyiad3qgbpf2dvv2jygzj6jpz4dl3n8ds4nql68a4l9g2nm07";
}; };
patches = [ ./ptrdiff.patch ]; patches = [ ./ptrdiff.patch ];
meta = { meta = with stdenv.lib; {
homepage = http://htmlcxx.sourceforge.net/; homepage = http://htmlcxx.sourceforge.net/;
description = "htmlcxx is a simple non-validating css1 and html parser for C++"; description = "A simple non-validating css1 and html parser for C++";
license = stdenv.lib.licenses.lgpl2; license = licenses.lgpl2;
platforms = stdenv.lib.platforms.linux; platforms = platforms.linux;
}; };
} }

View File

@ -1,12 +1,14 @@
{ stdenv, fetchurl, pkgconfig, cairo, expat, ncurses, libX11 { stdenv, fetchurl, pkgconfig, cairo, expat, ncurses, libX11
, pciutils, numactl }: , pciutils, numactl }:
with stdenv.lib;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "hwloc-1.11.2"; name = "hwloc-1.11.6";
src = fetchurl { src = fetchurl {
url = "http://www.open-mpi.org/software/hwloc/v1.11/downloads/${name}.tar.bz2"; url = "http://www.open-mpi.org/software/hwloc/v1.11/downloads/${name}.tar.bz2";
sha1 = "3d68de060808f04349538be4e63cde501cd53b0a"; sha256 = "1yl7dm2qplwmnidd712zy12qfvxk28k8ccs694n42ybwdjwzg1bn";
}; };
# XXX: libX11 is not directly needed, but needed as a propagated dep of Cairo. # XXX: libX11 is not directly needed, but needed as a propagated dep of Cairo.
@ -16,17 +18,17 @@ stdenv.mkDerivation rec {
# derivation and set optional dependencies to `null'. # derivation and set optional dependencies to `null'.
buildInputs = stdenv.lib.filter (x: x != null) buildInputs = stdenv.lib.filter (x: x != null)
([ expat ncurses ] ([ expat ncurses ]
++ (stdenv.lib.optionals (!stdenv.isCygwin) [ cairo libX11 ]) ++ (optionals (!stdenv.isCygwin) [ cairo libX11 ])
++ (stdenv.lib.optionals stdenv.isLinux [ numactl ])); ++ (optionals stdenv.isLinux [ numactl ]));
propagatedBuildInputs = propagatedBuildInputs =
# Since `libpci' appears in `hwloc.pc', it must be propagated. # Since `libpci' appears in `hwloc.pc', it must be propagated.
stdenv.lib.optional stdenv.isLinux pciutils; optional stdenv.isLinux pciutils;
enableParallelBuilding = true; enableParallelBuilding = true;
postInstall = postInstall =
stdenv.lib.optionalString (stdenv.isLinux && numactl != null) optionalString (stdenv.isLinux && numactl != null)
'' if [ -d "${numactl}/lib64" ] '' if [ -d "${numactl}/lib64" ]
then then
numalibdir="${numactl}/lib64" numalibdir="${numactl}/lib64"
@ -43,9 +45,8 @@ stdenv.mkDerivation rec {
# fail on some build machines. # fail on some build machines.
doCheck = false; doCheck = false;
meta = with stdenv.lib; { meta = {
description = "Portable abstraction of hierarchical architectures for high-performance computing"; description = "Portable abstraction of hierarchical architectures for high-performance computing";
longDescription = '' longDescription = ''
hwloc provides a portable abstraction (across OS, hwloc provides a portable abstraction (across OS,
versions, architectures, ...) of the hierarchical topology of versions, architectures, ...) of the hierarchical topology of
@ -64,9 +65,7 @@ stdenv.mkDerivation rec {
# http://www.open-mpi.org/projects/hwloc/license.php # http://www.open-mpi.org/projects/hwloc/license.php
license = licenses.bsd3; license = licenses.bsd3;
homepage = http://www.open-mpi.org/projects/hwloc/; homepage = http://www.open-mpi.org/projects/hwloc/;
maintainers = [ ]; maintainers = [ ];
platforms = platforms.all; platforms = platforms.all;
}; };

View File

@ -3,6 +3,14 @@
let let
pname = "icu4c"; pname = "icu4c";
version = "58.2"; version = "58.2";
# this patch should no longer be needed in 58.3
# https://bugs.gentoo.org/show_bug.cgi?id=599142#c14
keywordFix = fetchurl {
url = "http://bugs.icu-project.org/trac/changeset/39484?format=diff";
name = "icu-changeset-39484.diff";
sha256 = "0hxhpgydalyxacaaxlmaddc1sjwh65rsnpmg0j414mnblq74vmm8";
};
in in
stdenv.mkDerivation ({ stdenv.mkDerivation ({
name = pname + "-" + version; name = pname + "-" + version;
@ -32,6 +40,7 @@ stdenv.mkDerivation ({
''; '';
postPatch = '' postPatch = ''
popd popd
patch -p4 < ${keywordFix}
''; '';
patches = [ patches = [

View File

@ -114,9 +114,9 @@ let
env = callPackage ../qt-env.nix {}; env = callPackage ../qt-env.nix {};
full = env "qt-${qtbase.version}" [ full = env "qt-${qtbase.version}" [
qtconnectivity qtdeclarative qtdoc qtenginio qtgraphicaleffects qtconnectivity qtdeclarative qtdoc qtenginio qtgraphicaleffects
qtimageformats qtlocation qtmultimedia qtquickcontrols qtscript qtimageformats qtlocation qtmultimedia qtquickcontrols qtquickcontrols2
qtsensors qtserialport qtsvg qttools qttranslations qtwayland qtscript qtsensors qtserialport qtsvg qttools qttranslations qtwayland
qtwebchannel qtwebengine qtwebsockets qtx11extras qtxmlpatterns qtwebchannel qtwebengine qtwebkit qtwebsockets qtx11extras qtxmlpatterns
]; ];
makeQtWrapper = makeQtWrapper =

View File

@ -98,10 +98,11 @@ let
env = callPackage ../qt-env.nix {}; env = callPackage ../qt-env.nix {};
full = env "qt-${qtbase.version}" [ full = env "qt-${qtbase.version}" [
qtconnectivity qtdeclarative qtdoc qtgraphicaleffects qtconnectivity qtdeclarative qtdoc qtgraphicaleffects qtimageformats
qtimageformats qtlocation qtmultimedia qtquickcontrols qtscript qtlocation qtmultimedia qtquickcontrols qtquickcontrols2 qtscript
qtsensors qtserialport qtsvg qttools qttranslations qtwayland qtsensors qtserialport qtsvg qttools qttranslations qtwayland
qtwebsockets qtx11extras qtxmlpatterns qtwebchannel qtwebengine qtwebkit qtwebsockets qtx11extras
qtxmlpatterns
]; ];
makeQtWrapper = makeQtWrapper =

View File

@ -135,10 +135,14 @@ qt5LinkModuleDir() {
qt5LinkDarwinModuleLibDir() { qt5LinkDarwinModuleLibDir() {
for fw in $(find "$1"/lib -maxdepth 1 -name '*.framework'); do for fw in $(find "$1"/lib -maxdepth 1 -name '*.framework'); do
if [ ! -L "$fw" ]; then
ln -s "$fw" "$NIX_QT5_TMP"/lib ln -s "$fw" "$NIX_QT5_TMP"/lib
fi
done done
for file in $(find "$1"/lib -maxdepth 1 -type f); do for file in $(find "$1"/lib -maxdepth 1 -type f); do
if [ ! -L "$file" ]; then
ln -s "$file" "$NIX_QT5_TMP"/lib ln -s "$file" "$NIX_QT5_TMP"/lib
fi
done done
for dir in $(find "$1"/lib -maxdepth 1 -mindepth 1 -type d ! -name '*.framework'); do for dir in $(find "$1"/lib -maxdepth 1 -mindepth 1 -type d ! -name '*.framework'); do
mkdir -p "$NIX_QT5_TMP"/lib/$(basename "$dir") mkdir -p "$NIX_QT5_TMP"/lib/$(basename "$dir")
@ -178,4 +182,3 @@ _qtFixCMakePaths() {
if [ -n "$NIX_QT_SUBMODULE" ]; then if [ -n "$NIX_QT_SUBMODULE" ]; then
postInstallHooks+=(_qtFixCMakePaths) postInstallHooks+=(_qtFixCMakePaths)
fi fi

View File

@ -1,61 +0,0 @@
{stdenv, fetchurl, ncompress}:
stdenv.mkDerivation rec {
name = "urt-${version}";
version = "3.1b";
src = fetchurl {
url = ftp://ftp.iastate.edu/pub/utah-raster/urt-3.1b.tar.Z;
sha256 = "0hbb3avgvkfb2cksqn6cmmgcr0278nb2qd1srayqx0876pq6g2vd";
};
buildInputs = [ ncompress ];
unpackPhase = ''
mkdir urt
tar xvf "$src" -C urt
'';
patchFlags = "-p0 -d urt";
patches = [ ./urt-3.1b-build-fixes.patch ./urt-3.1b-compile-updates.patch
./urt-3.1b-make.patch ./urt-3.1b-rle-fixes.patch ./urt-3.1b-tempfile.patch ];
postPatch = ''
cd urt
rm bin/README
rm man/man1/template.1
# stupid OS X declares a stack_t type already
sed -i -e 's:stack_t:_urt_stack:g' tools/clock/rleClock.c
sed -i -e '/^CFLAGS/s: -O : :' makefile.hdr
cp "${./gentoo-config}" config/gentoo
'';
configurePhase = ''
./Configure config/gentoo
'';
postInstall = ''
mkdir -p $out/bin
cp bin/* $out/bin
mkdir -p $out/lib
cp lib/librle.a $out/lib
mkdir -p $out/include
cp include/rle*.h $out/include
mkdir -p $out/share/man/man1
cp man/man1/*.1 $out/share/man/man1
mkdir -p $out/share/man/man3
cp man/man3/*.3 $out/share/man/man3
mkdir -p $out/share/man/man5
cp man/man5/*.5 $out/share/man/man5
'';
meta = {
homepage = http://www.cs.utah.edu/gdc/projects/urt/;
description = "A library for dealing with raster images";
};
}

View File

@ -1,52 +0,0 @@
#define ABEKASA60
#define ABEKASA62
#define ALIAS
##define CGM
#define CUBICOMP
##define DVIRLE
#define GRAYFILES
#define MACPAINT
##define PBMPLUS
##define SUNRASTER
#define TARGA
#define VICAR
#define WASATCH
#define WAVEFRONT
#define GCC
#define CONST_DECL
#define NO_MAKE_MAKEFILE
#define USE_TIME_H
#define SYS_V_SETPGRP
#define USE_PROTOTYPES
#define USE_RANDOM
#define USE_STDARG
#define USE_STDLIB_H
#define USE_UNISTD_H
#define USE_STRING_H
#define VOID_STAR
#define USE_XLIBINT_H
#define X_SHARED_MEMORY
#defpath DEST bin
#defpath RI include
#defpath RL lib
ROFF = nroff
ROFFOPT = -man
ROFFPIPE = | lpr
INCTIFF =
LIBTIFF = -ltiff
INCX11 =
LIBX11 = -lX11
# Most people have migrated X11 to /usr/lib, but just in case ...
check_x11=$(shell \
echo 'int main(){}' > test.c ; \
if ! $(CC) test.c -lX11 -o .urt-x11-test 2>/dev/null ; then \
echo "-L/usr/X11R6/lib" ; \
fi ; \
rm -f .urt-x11-test test.c)
LIBX11 += $(call check_x11)

View File

@ -1,151 +0,0 @@
some hosts are more anal about ar usage than others
http://bugs.gentoo.org/107428
respect user LDFLAGS
http://bugs.gentoo.org/126872
--- lib/makefile.src
+++ lib/makefile.src
@@ -181,8 +181,7 @@
# Rebuild the library from all the .o files.
buildlib: $(OBJS)
-rm -f $(LIBNAME)
- ar rc $(LIBNAME)
- ar q $(LIBNAME) $(OBJS)
+ ar rc $(LIBNAME) $(OBJS)
#ifndef NO_RANLIB
ranlib $(LIBNAME)
#endif
--- tools/clock/makefile.src
+++ tools/clock/makefile.src
@@ -6,7 +6,7 @@ install: rleClock
mv rleClock ../rleClock.out
rleClock:rleClock.o font.o
- ${CC} ${CFLAGS} rleClock.o font.o -lm ${LIBS} -o rleClock
+ ${CC} ${CFLAGS} ${LDFLAGS} rleClock.o font.o ${LIBS} -o rleClock -lm
font.c:font.src makeFont
chmod +x makeFont
--- tools/makefile.src
+++ tools/makefile.src
@@ -62,21 +62,21 @@ applymap.out rlebg.out: $(RI)/rle_raw.h
pyrlib.o: pyrlib.c $(RI)/pyramid.h $(RI)/rle.h $(RI)/rle_config.h
$(CC) $(CFLAGS) pyrlib.c -c
pyrmask.out: pyrlib.o pyrmask.c $(RI)/pyramid.h
- $(CC) $(CFLAGS) -I$(RI) pyrmask.c pyrlib.o $(LIBS) -lm -o pyrmask.new
+ $(CC) $(LDFLAGS) $(CFLAGS) -I$(RI) pyrmask.c pyrlib.o $(LIBS) -lm -o pyrmask.new
mv pyrmask.new pyrmask.out
fant.out: fant.o mallocNd.o
- $(CC) $(CFLAGS) -I$(RI) fant.o mallocNd.o $(LIBS) -lm -o fant.new
+ $(CC) $(LDFLAGS) $(CFLAGS) -I$(RI) fant.o mallocNd.o $(LIBS) -lm -o fant.new
mv fant.new fant.out
# rlebox and crop use some common code.
rle_box.o: $(RI)/rle.h $(RI)/rle_config.h $(RI)/rle_raw.h
crop.out: crop.c rle_box.o
- ${CC} ${CFLAGS} crop.c rle_box.o ${LIBS} -o crop.new
+ ${CC} ${LDFLAGS} ${CFLAGS} crop.c rle_box.o ${LIBS} -o crop.new
mv crop.new crop.out
rlebox.out: rlebox.c rle_box.o
- ${CC} ${CFLAGS} rlebox.c rle_box.o ${LIBS} -o rlebox.new
+ ${CC} ${LDFLAGS} ${CFLAGS} rlebox.c rle_box.o ${LIBS} -o rlebox.new
mv rlebox.new rlebox.out
# rleClock has it's own directory, must be built special
@@ -100,7 +100,7 @@ clean: clean-pgm
.SUFFIXES:
.SUFFIXES: .out .c .o
.c.out:
- $(CC) $(CFLAGS) $< $(LIBS) -lm -o $*.new
+ $(CC) $(LDFLAGS) $(CFLAGS) $< $(LIBS) -lm -o $*.new
mv $*.new $@
.c.o:
--- cnv/makefile.src
+++ cnv/makefile.src
@@ -76,13 +76,13 @@ PBMDIR =
# ppmtorle - ppm format to RLE
# rletoppm - RLE to ppm format
pgmtorle.out: pgmtorle.c
- $(CC) $(CFLAGS) $(INCPBMPLUS) $*.c $(LIBS) $(LIBPBMPLUS) -o $*.new
+ $(CC) $(CFLAGS) $(LDFLAGS) $(INCPBMPLUS) $*.c $(LIBS) $(LIBPBMPLUS) -o $*.new
mv $*.new $@
ppmtorle.out: ppmtorle.c
- $(CC) $(CFLAGS) $(INCPBMPLUS) $*.c $(LIBS) $(LIBPBMPLUS) -o $*.new
+ $(CC) $(CFLAGS) $(LDFLAGS) $(INCPBMPLUS) $*.c $(LIBS) $(LIBPBMPLUS) -o $*.new
mv $*.new $@
rletoppm.out: rletoppm.c
- $(CC) $(CFLAGS) $(INCPBMPLUS) $*.c $(LIBS) $(LIBPBMPLUS) -o $*.new
+ $(CC) $(CFLAGS) $(LDFLAGS) $(INCPBMPLUS) $*.c $(LIBS) $(LIBPBMPLUS) -o $*.new
mv $*.new $@
#endif
@@ -95,10 +95,10 @@ rletoppm.out: rletoppm.c
# iristorle/rletoiris - Convert between RLE and SGI image format.
#
iristorle.out: iristorle.c
- $(CC) $(CFLAGS) -I/usr/include/gl $*.c $(LIBS) -limage -o $*.new
+ $(CC) $(CFLAGS) $(LDFLAGS) -I/usr/include/gl $*.c $(LIBS) -limage -o $*.new
mv $*.new $@
rletoiris.out: rletoiris.c
- $(CC) $(CFLAGS) -I/usr/include/gl $*.c $(LIBS) -limage -o $*.new
+ $(CC) $(CFLAGS) $(LDFLAGS) -I/usr/include/gl $*.c $(LIBS) -limage -o $*.new
mv $*.new $@
#endif
@@ -108,10 +108,10 @@ TIFFDIR =
# tifftorle - Convert TIFF images to RLE
# rletotiff - Convert RLE images to TIFF
rletotiff.out: rletotiff.c
- $(CC) $(CFLAGS) $(INCTIFF) $*.c $(LIBS) $(LIBTIFF) -lm -o $*.new
+ $(CC) $(CFLAGS) $(LDFLAGS) $(INCTIFF) $*.c $(LIBS) $(LIBTIFF) -lm -o $*.new
mv $*.new $@
tifftorle.out: tifftorle.c
- $(CC) $(CFLAGS) $(INCTIFF) $*.c $(LIBS) $(LIBTIFF) -lm -o $*.new
+ $(CC) $(CFLAGS) $(LDFLAGS) $(INCTIFF) $*.c $(LIBS) $(LIBTIFF) -lm -o $*.new
mv $*.new $@
#endif
@@ -125,7 +125,7 @@ tifftorle.out: tifftorle.c
# Will build with the default rule.
# rletorla - RLE to Wavefront RLA
rletorla.out: rletorla.c
- $(CC) $(CFLAGS) $*.c $(LIBS) $(LIBWAVEFRONT) -lm -o $*.new
+ $(CC) $(CFLAGS) $(LDFLAGS) $*.c $(LIBS) $(LIBWAVEFRONT) -lm -o $*.new
mv $*.new $@
#endif WAVEFRONT
@@ -144,7 +144,7 @@ pristine: pristine-pgm
.SUFFIXES:
.SUFFIXES: .out .c
.c.out:
- $(CC) $(CFLAGS) $*.c $(LIBS) -lm -o $*.new
+ $(CC) $(CFLAGS) $(LDFLAGS) $*.c $(LIBS) -lm -o $*.new
mv $*.new $@
# Dependency lines. Make sure to #ifdef them.
--- cnv/rletoabA62/makefile.src
+++ cnv/rletoabA62/makefile.src
@@ -15,7 +15,7 @@ all : $(PGMS)
# Executables. The .out will be stripped off in the install action.
rletoabA62.out : rletoabA62.o rle.o
- $(CC) $(CFLAGS) -o rletoabA62.new \
+ $(CC) $(CFLAGS) $(LDFLAGS) -o rletoabA62.new \
rletoabA62.o rle.o $(LIBS)
mv rletoabA62.new rletoabA62.out
--- cnv/rletogif/makefile.src
+++ cnv/rletogif/makefile.src
@@ -15,7 +15,7 @@ all: $(PGMS)
# The executable. The ".out" will be stripped off in the install action.
rletogif.out: ${OBJ}
- ${CC} ${CFLAGS} ${OBJ} ${LIBS} -o rletogif.new
+ ${CC} ${CFLAGS} ${LDFLAGS} ${OBJ} ${LIBS} -o rletogif.new
mv rletogif.new rletogif.out
# Incremental install, copies executable to DEST dir.

View File

@ -1,141 +0,0 @@
--- get/getx11/XGetHClrs.c
+++ get/getx11/XGetHClrs.c
@@ -1,5 +1,4 @@
#ifndef XLIBINT_H_NOT_AVAILABLE
-#include <X11/copyright.h>
/* $XConsortium: XGetHClrs.c,v 11.10 88/09/06 16:07:50 martin Exp $ */
/* Copyright Massachusetts Institute of Technology 1986 */
--- tools/mallocNd.c
+++ tools/mallocNd.c
@@ -67,7 +67,7 @@
/* Imports */
#include <stdio.h>
-extern char *malloc();
+#include <string.h>
/* Forward declarations */
char *BuildIndirectionTable();
--- tools/into.c
+++ tools/into.c
@@ -40,8 +40,8 @@
static char buf[MAXPATHLEN+1];
short forceflg; /* overwrite an unwritable file? */
-extern int errno;
-extern char *sys_errlist[];
+#include <errno.h>
+#include <string.h>
void
main(argc, argv)
@@ -103,7 +103,7 @@
if (ferror(outf))
{
fprintf(stderr, "into: %s, \"%s\" not modified\n",
- sys_errlist[errno], argv[1]);
+ strerror(errno), argv[1]);
unlink(buf);
exit(1);
}
--- cnv/tex/dvirle2.c
+++ cnv/tex/dvirle2.c
@@ -55,7 +55,6 @@
void DumpTopOfBand(), MoveDown(), WriteBuf(), WriteBlanks();
char *ProgName;
-extern int errno;
extern char *optarg;
extern int optind;
--- cnv/wasatchrle.c
+++ cnv/wasatchrle.c
@@ -32,7 +32,6 @@
#include <errno.h>
#include "rle.h"
-extern int errno;
/* "short" in our world is 16 bits. Beware of swyte-bopping. */
--- get/getx11/x11_stuff.c
+++ get/getx11/x11_stuff.c
@@ -155,7 +155,6 @@
IPC_CREAT|0777 );
if ( img->shm_img.shmid < 0 )
{
- extern int errno;
if ( errno == ENOSPC )
{
if ( !no_shared_space )
@@ -361,7 +360,6 @@ Boolean reallocate;
XDestroyImage( image );
if ( img->shm_pix.shmid < 0 )
{
- extern int errno;
if ( errno == ENOSPC )
{
if ( !no_shared_space )
--- get/qcr/qcr.h
+++ get/qcr/qcr.h
@@ -6,8 +6,6 @@
#define GREEN 1
#define BLUE 2
-extern int errno;
-
/* Command defs for QCR-Z Film Recorder */
/* These are for 8 bit Look Up Tables */
--- get/gettaac.c
+++ get/gettaac.c
@@ -24,6 +24,7 @@
* Send bug fixes and improvements to: ksp@maxwell.nde.swri.edu
*/
+#include <errno.h>
#include <stdio.h>
#include <strings.h>
#include <signal.h>
@@ -459,7 +460,6 @@ char *template;
char nonUnique;
char twiddleUserCompletion;
- extern int errno;
struct direct *nameEntry;
DIR *dirChan;
struct passwd *pwdEntry;
--- tools/clock/rleClock.c
+++ tools/clock/rleClock.c
@@ -598,7 +598,7 @@
{ TRUE, "-tf", STRING, "Text area format string", (char *)&FormatString },
{ FALSE, "-Xm", BOOL, "Output the alpha channel on RGB", (char *)&DebugAlpha },
{ FALSE, "-D", BOOL, "Turn on debugging", (char *)&Debug },
- NULL
+ { FALSE, NULL }
};
void
--- tools/to8.c
+++ tools/to8.c
@@ -175,7 +175,7 @@
* Give it a background color of black, since the real background
* will be dithered anyway.
*/
- if ( in_hdr.background != NULL )
+ if ( in_hdr.background != 0 )
{
out_hdr.bg_color = (int *)malloc( sizeof( int ) );
RLE_CHECK_ALLOC( cmd_name( argv ), out_hdr.bg_color, 0 );
--- cnv/rletoabA62/rletoabA62.c
+++ cnv/rletoabA62/rletoabA62.c
@@ -157,7 +157,7 @@
exit(1);
}
if (optind < argc) {
- if ((file = open(argv[optind], 0)) == NULL) {
+ if ((file = open(argv[optind], 0)) == -1) {
perror(argv[optind]);
exit(1);
}

View File

@ -1,75 +0,0 @@
Index: makefile.src
===================================================================
--- makefile.src
+++ makefile.src
@@ -17,7 +17,7 @@ all: default
# clean deletes all but source, pristine (below) deletes installed stuff, too
default clean: doit
@for d in $(DIRS) ; do \
- ( cd $$d ; echo make $@ on $$d ; make $(MFLAGS) $@ ) ; \
+ ( cd $$d ; echo $(MAKE) $@ on $$d ; $(MAKE) $(MFLAGS) $@ ) ; \
done
# install puts library, binaries and documentation into global location
@@ -29,7 +29,7 @@ MAKE_TARGET =
install $(MAKE_TARGET) pristine depend:: doit
@for d in $(ALLDIRS) ; do \
- ( cd $$d ; echo make $@ on $$d ; make $(MFLAGS) $@ ) ; \
+ ( cd $$d ; echo $(MAKE) $@ on $$d ; $(MAKE) $(MFLAGS) $@ ) ; \
done
Index: tools/makefile.src
===================================================================
--- tools/makefile.src
+++ tools/makefile.src
@@ -82,7 +82,7 @@ rlebox.out: rlebox.c rle_box.o
# rleClock has it's own directory, must be built special
rleClock.out: clock/font.c clock/font.h clock/font.src clock/rleClock.c
- (cd clock ; make)
+ (cd clock ; $(MAKE))
# Incremental install, copies everything ("$?") since last install to DEST dir.
install: $(PGMS) install-pgm
Index: makefile.tlr
===================================================================
--- makefile.tlr
+++ makefile.tlr
@@ -7,7 +7,7 @@ subdirs:
@sh -c "if test 'x$(DIRS)' != x ; then eval \
'set -e ; for dir in $(DIRS) ; do \
(cd \$$dir ; echo Make ${HERE}\$$dir ; \
- make $(MFLAGS) $(DIRMFLAGS) ) ; \
+ $(MAKE) $(MFLAGS) $(DIRMFLAGS) ) ; \
done' ; \
else \
true ; \
@@ -46,7 +46,7 @@ install-subdirs: subdirs
@sh -c "if test 'x$(DIRS)' != x ; then eval \
'for dir in $(DIRS) ; do \
(cd \$$dir ; echo Install ${HERE}\$$dir ; \
- make $(MFLAGS) $(DIRMFLAGS) install) ; \
+ $(MAKE) $(MFLAGS) $(DIRMFLAGS) install) ; \
done' ; \
else \
true ; \
@@ -105,7 +105,7 @@ pristine-pgm: clean-pgm
'for dir in $(ALLDIRS); do \
if test -d $$dir ; then \
(cd $$dir; echo Make ${HERE}$$dir pristine ; \
- make $(MFLAGS) pristine); \
+ $(MAKE) $(MFLAGS) pristine); \
else \
true; \
fi; \
@@ -124,7 +124,7 @@ clean-pgm:
'for dir in $(ALLDIRS); do \
if test -d $$dir ; then \
(cd $$dir; echo Clean ${HERE}$$dir ; \
- make $(MFLAGS) clean); \
+ $(MAKE) $(MFLAGS) clean); \
else \
true; \
fi; \

View File

@ -1,203 +0,0 @@
Fixes taken from netpbm
--- lib/rle_global.c
+++ lib/rle_global.c
@@ -76,7 +76,7 @@ rle_hdr rle_dflt_hdr = {
8, /* cmaplen (log2 of length of color map) */
NULL, /* pointer to color map */
NULL, /* pointer to comment strings */
- stdout, /* output file */
+ NULL, /* output file -- must be set dynamically */
{ 7 }, /* RGB channels only */
0L, /* Can't free name and file fields. */
"Urt", /* Default "program name". */
--- lib/rle_hdr.c
+++ lib/rle_hdr.c
@@ -269,6 +273,9 @@
{
rle_hdr *ret_hdr;
+ rle_dflt_hdr.rle_file = stdout;
+ /* The rest of rle_dflt_hdr is set by the loader's data initialization */
+
if ( the_hdr == &rle_dflt_hdr )
return the_hdr;
--- lib/dither.c
+++ lib/dither.c
@@ -38,10 +38,10 @@ void make_square();
#endif
static int magic4x4[4][4] = {
- 0, 14, 3, 13,
- 11, 5, 8, 6,
- 12, 2, 15, 1,
- 7, 9, 4, 10
+{ 0, 14, 3, 13},
+{ 11, 5, 8, 6},
+{ 12, 2, 15, 1},
+{ 7, 9, 4, 10}
};
/* basic dithering macro */
--- lib/rle_open_f.c
+++ lib/rle_open_f.c
@@ -9,7 +9,11 @@
*/
#include "rle_config.h"
+#define _XOPEN_SOURCE /* Make sure fdopen() is in stdio.h */
+
#include <stdio.h>
+#include <unistd.h>
+#include <fcntl.h>
#ifndef NO_OPEN_PIPES
/* Need to have a SIGCLD signal catcher. */
@@ -260,7 +260,6 @@
int pipefd[2];
int i;
char *argv[4];
- extern int errno;
/* Check args. */
if ( *mode != 'r' && *mode != 'w' )
--- lib/rle_getcom.c
+++ lib/rle_getcom.c
@@ -53,11 +53,12 @@
{
for ( ; *n != '\0' && *n != '=' && *n == *v; n++, v++ )
;
- if (*n == '\0' || *n == '=')
+ if (*n == '\0' || *n == '=') {
if ( *v == '\0' )
return v;
else if ( *v == '=' )
return ++v;
+ }
return NULL;
}
--- lib/scanargs.c
+++ lib/scanargs.c
@@ -128,10 +130,10 @@
va_list argl;
{
- register check; /* check counter to be sure all argvs
+ int check; /* check counter to be sure all argvs
are processed */
register CONST_DECL char *cp;
- register cnt;
+ int cnt;
int optarg = 0; /* where optional args start */
int nopt = 0;
char tmpflg, /* temp flag */
@@ -375,11 +377,12 @@
if ( optarg > 0 ) /* end optional args? */
{
/* Eat the arg, too, if necessary */
- if ( list_cnt == 0 )
+ if ( list_cnt == 0 ) {
if ( typchr == 's' )
(void)va_arg( argl, char * );
else
(void)va_arg( argl, ptr );
+ }
break;
}
else
@@ -567,7 +570,7 @@
* Do conversion for n and N types
*/
tmpflg = typchr;
- if (typchr == 'n' || typchr == 'N' )
+ if (typchr == 'n' || typchr == 'N' ) {
if (*argp != '0')
tmpflg = 'd';
else if (*(argp+1) == 'x' ||
@@ -578,6 +581,7 @@
}
else
tmpflg = 'o';
+ }
if (typchr == 'N')
tmpflg = toupper( tmpflg );
--- lib/inv_cmap.c
+++ lib/inv_cmap.c
@@ -42,7 +42,7 @@
static long cbinc, cginc, crinc;
static unsigned long *gdp, *rdp, *cdp;
static unsigned char *grgbp, *rrgbp, *crgbp;
-static gstride, rstride;
+static long gstride, rstride;
static long x, xsqr, colormax;
static int cindex;
#ifdef INSTRUMENT_IT
--- lib/rle_getrow.c
+++ lib/rle_getrow.c
@@ -351,7 +351,7 @@
bzero( (char *)scanline[-1] + the_hdr->xmin,
the_hdr->xmax - the_hdr->xmin + 1 );
for ( nc = 0; nc < the_hdr->ncolors; nc++ )
- if ( RLE_BIT( *the_hdr, nc ) )
+ if ( RLE_BIT( *the_hdr, nc ) ) {
/* Unless bg color given explicitly, use 0. */
if ( the_hdr->background != 2 || the_hdr->bg_color[nc] == 0 )
bzero( (char *)scanline[nc] + the_hdr->xmin,
@@ -360,6 +360,7 @@
bfill( (char *)scanline[nc] + the_hdr->xmin,
the_hdr->xmax - the_hdr->xmin + 1,
the_hdr->bg_color[nc] );
+ }
}
/* If skipping, then just return */
@@ -367,7 +368,7 @@
{
the_hdr->priv.get.vert_skip--;
the_hdr->priv.get.scan_y++;
- if ( the_hdr->priv.get.vert_skip > 0 )
+ if ( the_hdr->priv.get.vert_skip > 0 ) {
if ( the_hdr->priv.get.scan_y >= the_hdr->ymax )
{
int y = the_hdr->priv.get.scan_y;
@@ -377,6 +378,7 @@
}
else
return the_hdr->priv.get.scan_y;
+ }
}
/* If EOF has been encountered, return also */
@@ -457,11 +459,12 @@
else
nc = DATUM(inst);
nc++;
- if ( debug_f )
+ if ( debug_f ) {
if ( RLE_BIT( *the_hdr, channel ) )
fprintf( stderr, "Pixel data %d (to %d):", nc, scan_x+nc );
else
fprintf( stderr, "Pixel data %d (to %d)\n", nc, scan_x+nc);
+ }
if ( RLE_BIT( *the_hdr, channel ) )
{
/* Don't fill past end of scanline! */
--- lib/rle_putcom.c
+++ lib/rle_putcom.c
@@ -53,11 +53,12 @@
{
for ( ; *n != '\0' && *n != '=' && *n == *v; n++, v++ )
;
- if (*n == '\0' || *n == '=')
+ if (*n == '\0' || *n == '=') {
if ( *v == '\0' )
return v;
else if ( *v == '=' )
return ++v;
+ }
return NULL;
}

View File

@ -1,19 +0,0 @@
--- tools/rlecat.c
+++ tools/rlecat.c
@@ -110,8 +110,14 @@
nflag = 0; /* Not really repeating! */
else
{
- mktemp( temp ); /* Make a temporary file name */
- tmpfile = rle_open_f( cmd_name( argv ), temp, "w+" );
+ /* we dont have to use rle_open_f() because all it does in
+ * this case is run fopen() ... we're creating a file so all
+ * the checks for opening an existing file aren't needed */
+ int fd = mkstemp(temp);
+ if (fd == -1 || (tmpfile = fdopen(fd, "w+")) == NULL) {
+ perror("Unable to open tempfile");
+ exit(-1);
+ }
}
}

View File

@ -0,0 +1,42 @@
From daae1ae35e13bc8107dc97d9219dfb8e172d5d2a Mon Sep 17 00:00:00 2001
From: Frederik Rietdijk <fridh@fridh.nl>
Date: Tue, 14 Mar 2017 15:00:33 +0100
Subject: [PATCH] namespace fix
configparser broke other namespace packages
https://github.com/NixOS/nixpkgs/issues/23855#issuecomment-286427428
This patch seems to solve that issue.
---
setup.py | 1 -
src/backports/__init__.py | 6 ------
2 files changed, 7 deletions(-)
diff --git a/setup.py b/setup.py
index 3b07823..63ed25d 100644
--- a/setup.py
+++ b/setup.py
@@ -42,7 +42,6 @@ setup(
py_modules=modules,
package_dir={'': 'src'},
packages=find_packages('src'),
- namespace_packages=['backports'],
include_package_data=True,
zip_safe=False,
install_requires=requirements,
diff --git a/src/backports/__init__.py b/src/backports/__init__.py
index f84d25c..febdb2f 100644
--- a/src/backports/__init__.py
+++ b/src/backports/__init__.py
@@ -3,9 +3,3 @@
from pkgutil import extend_path
__path__ = extend_path(__path__, __name__)
-
-try:
- import pkg_resources
- pkg_resources.declare_namespace(__name__)
-except ImportError:
- pass
--
2.11.1

View File

@ -0,0 +1,25 @@
{ stdenv, buildPythonPackage, fetchurl,
numpy, django_colorful, pillow, psycopg2,
pyparsing, django, celery
}:
buildPythonPackage rec {
name = "django-raster-${version}";
version = "0.3.1";
src = fetchurl {
url = "mirror://pypi/d/django-raster/${name}.tar.gz";
sha256 = "1hsrkvybak1adn9d9qdw7hx3rcxsbzas4ixwll6vrjkrizgfihk3";
};
# Tests require a postgresql + postgis server
doCheck = false;
propagatedBuildInputs = [ numpy django_colorful pillow psycopg2
pyparsing django celery ];
meta = with stdenv.lib; {
description = "Basic raster data integration for Django";
homepage = https://github.com/geodesign/django-raster;
license = licenses.mit;
};
}

View File

@ -1,5 +1,5 @@
{ stdenv, buildPythonPackage, fetchFromGitHub, python { stdenv, buildPythonPackage, fetchFromGitHub, python
, pythonOlder, enum34 , pythonOlder, pythonAtLeast, enum34
, doCheck ? true, pytest, flake8, flaky , doCheck ? true, pytest, flake8, flaky
}: }:
buildPythonPackage rec { buildPythonPackage rec {
@ -30,6 +30,10 @@ buildPythonPackage rec {
${python.interpreter} -m pytest tests/cover ${python.interpreter} -m pytest tests/cover
''; '';
# Unsupport by upstream on certain versions
# https://github.com/HypothesisWorks/hypothesis-python/issues/477
disabled = pythonOlder "3.4" && pythonAtLeast "2.8";
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "A Python library for property based testing"; description = "A Python library for property based testing";
homepage = https://github.com/DRMacIver/hypothesis; homepage = https://github.com/DRMacIver/hypothesis;

View File

@ -1,13 +1,16 @@
{ buildPythonPackage, fetchzip, isPy3k, lib, pythonOlder }: { buildPythonPackage, fetchPypi, isPy3k, lib, pythonOlder }:
buildPythonPackage rec { buildPythonPackage rec {
name = "typed-ast-${version}"; pname = "typed-ast";
version = "1.0.1"; version = "1.0.2";
src = fetchzip { name = "${pname}-${version}";
url = "mirror://pypi/t/typed-ast/${name}.zip"; src = fetchPypi{
sha256 = "1q69czr9ghnbd81hay71kgynn6mqi5nsgand9yw6dyw5bim5l154"; inherit pname version;
sha256 = "13e02b10479ddff07eb546f9638743702ab9b175bfa3cdf2482688df91b5766d";
}; };
# Only works with Python 3.3 and newer; # Only works with Python 3.3 and newer;
disabled = !isPy3k && !(pythonOlder "3.3"); disabled = pythonOlder "3.3";
# No tests in archive
doCheck = false;
meta = { meta = {
homepage = "https://pypi.python.org/pypi/typed-ast"; homepage = "https://pypi.python.org/pypi/typed-ast";
description = "a fork of Python 2 and 3 ast modules with type comment support"; description = "a fork of Python 2 and 3 ast modules with type comment support";

View File

@ -52,12 +52,12 @@ rec {
}; };
gradle_latest = gradleGen rec { gradle_latest = gradleGen rec {
name = "gradle-3.4"; name = "gradle-3.4.1";
nativeVersion = "0.13"; nativeVersion = "0.13";
src = fetchurl { src = fetchurl {
url = "http://services.gradle.org/distributions/${name}-bin.zip"; url = "http://services.gradle.org/distributions/${name}-bin.zip";
sha256 = "0192yz1j59mvn6d3sch0yjx6i2fg4nyppkdpbqbbxqymrm6wvl3j"; sha256 = "1cpria3qry4778pxcmqvnaqcyq36abj1fgw4pq115k3rsj9v27fv";
}; };
}; };

View File

@ -4,20 +4,26 @@ with lib;
buildGoPackage rec { buildGoPackage rec {
name = "kube-aws-${version}"; name = "kube-aws-${version}";
version = "0.8.1"; version = "0.9.4";
goPackagePath = "github.com/coreos/coreos-kubernetes"; goPackagePath = "github.com/coreos/kube-aws";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "coreos"; owner = "coreos";
repo = "coreos-kubernetes"; repo = "kube-aws";
rev = "v${version}"; rev = "v${version}";
sha256 = "067nc525km0f37w5km44fs5pr22a6zz3lkdwwg2akb4hhg6f45c2"; sha256 = "11h14fsnflbx76rmpp0fxahbxi2qgcamgyxy9s4rmw83j2m8csxp";
}; };
preBuild = '' preBuild = ''(
(cd go/src/github.com/coreos/coreos-kubernetes cd go/src/${goPackagePath}
go generate multi-node/aws/pkg/config/config.go) go generate ./core/controlplane/config
go generate ./core/nodepool/config
go generate ./core/root/config
)'';
buildFlagsArray = ''
-ldflags=-X github.com/coreos/kube-aws/core/controlplane/cluster.VERSION=v${version}
''; '';
meta = { meta = {
@ -25,6 +31,6 @@ buildGoPackage rec {
license = licenses.asl20; license = licenses.asl20;
homepage = https://github.com/coreos/coreos-kubernetes; homepage = https://github.com/coreos/coreos-kubernetes;
maintainers = with maintainers; [offline]; maintainers = with maintainers; [offline];
platforms = with platforms; linux; platforms = with platforms; unix;
}; };
} }

View File

@ -0,0 +1,22 @@
{ lib, python2 }:
python2.pkgs.buildPythonApplication rec {
pname = "lit";
version = "0.5.0";
name = "${pname}-${version}";
src = python2.pkgs.fetchPypi {
inherit pname version;
sha256 = "3ea4251e78ebeb2e07be2feb33243d1f8931d956efc96ccc2b0846ced212b58c";
};
# Non-standard test suite. Needs custom checkPhase.
doCheck = false;
meta = {
description = "Portable tool for executing LLVM and Clang style test suites";
homepage = "http://llvm.org/docs/CommandGuide/lit.html";
license = lib.licenses.ncsa;
maintainers = with lib.maintainers; [ dtzWill ];
};
}

View File

@ -3,32 +3,32 @@ GEM
specs: specs:
addressable (2.4.0) addressable (2.4.0)
backports (3.6.8) backports (3.6.8)
ethon (0.8.1) ethon (0.10.1)
ffi (>= 1.3.0) ffi (>= 1.3.0)
faraday (0.9.2) faraday (0.11.0)
multipart-post (>= 1.2, < 3) multipart-post (>= 1.2, < 3)
faraday_middleware (0.10.0) faraday_middleware (0.11.0.1)
faraday (>= 0.7.4, < 0.10) faraday (>= 0.7.4, < 1.0)
ffi (1.9.10) ffi (1.9.18)
gh (0.14.0) gh (0.15.1)
addressable addressable (~> 2.4.0)
backports backports
faraday (~> 0.8) faraday (~> 0.8)
multi_json (~> 1.0) multi_json (~> 1.0)
net-http-persistent (>= 2.7) net-http-persistent (~> 2.9)
net-http-pipeline net-http-pipeline
highline (1.7.8) highline (1.7.8)
json (1.8.3) json (2.0.3)
launchy (2.4.3) launchy (2.4.3)
addressable (~> 2.3) addressable (~> 2.3)
multi_json (1.11.2) multi_json (1.12.1)
multipart-post (2.0.0) multipart-post (2.0.0)
net-http-persistent (2.9.4) net-http-persistent (2.9.4)
net-http-pipeline (1.0.1) net-http-pipeline (1.0.1)
pusher-client (0.6.2) pusher-client (0.6.2)
json json
websocket (~> 1.0) websocket (~> 1.0)
travis (1.8.2) travis (1.8.8)
backports backports
faraday (~> 0.9) faraday (~> 0.9)
faraday_middleware (~> 0.9, >= 0.9.1) faraday_middleware (~> 0.9, >= 0.9.1)
@ -39,7 +39,7 @@ GEM
typhoeus (~> 0.6, >= 0.6.8) typhoeus (~> 0.6, >= 0.6.8)
typhoeus (0.8.0) typhoeus (0.8.0)
ethon (>= 0.8.0) ethon (>= 0.8.0)
websocket (1.2.2) websocket (1.2.4)
PLATFORMS PLATFORMS
ruby ruby
@ -48,4 +48,4 @@ DEPENDENCIES
travis travis
BUNDLED WITH BUNDLED WITH
1.11.2 1.14.4

View File

@ -18,42 +18,42 @@
ethon = { ethon = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0afvvv4sxs330jhk4xz9kj6qgj70yvd4zsjnb9yvxhmaq49k8yij"; sha256 = "1i873cvma4j52xmij7kasjylh66vf60cy5prkp4cz4hcn9jlkznl";
type = "gem"; type = "gem";
}; };
version = "0.8.1"; version = "0.10.1";
}; };
faraday = { faraday = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1kplqkpn2s2yl3lxdf6h7sfldqvkbkpxwwxhyk7mdhjplb5faqh6"; sha256 = "18p1csdivgwmshfw3mb698a3bn0yrykg30khk5qxjf6n168g91jr";
type = "gem"; type = "gem";
}; };
version = "0.9.2"; version = "0.11.0";
}; };
faraday_middleware = { faraday_middleware = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0nxia26xzy8i56qfyz1bg8dg9yb26swpgci8n5jry8mh4bnx5r5h"; sha256 = "0bcarc90brm1y68bl957w483bddsy9idj2gghqnysk6bbxpsvm00";
type = "gem"; type = "gem";
}; };
version = "0.10.0"; version = "0.11.0.1";
}; };
ffi = { ffi = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1m5mprppw0xcrv2mkim5zsk70v089ajzqiq5hpyb0xg96fcyzyxj"; sha256 = "034f52xf7zcqgbvwbl20jwdyjwznvqnwpbaps9nk18v9lgb1dpx0";
type = "gem"; type = "gem";
}; };
version = "1.9.10"; version = "1.9.18";
}; };
gh = { gh = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0j7m6jmxzkxvnqgnhmci33a89qpaxxcrm55kk5vz4bcpply04hx2"; sha256 = "0g4df0jsscq16g6f27flfmvk7p4sbq81d5mdylbz4ikqq60kywzg";
type = "gem"; type = "gem";
}; };
version = "0.14.0"; version = "0.15.1";
}; };
highline = { highline = {
source = { source = {
@ -66,10 +66,10 @@
json = { json = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1nsby6ry8l9xg3yw4adlhk2pnc7i0h0rznvcss4vk3v74qg0k8lc"; sha256 = "0cpw154il64w6q20rrnsbjx1cdfz1yrzz1lgdbpn59lcwc6mprql";
type = "gem"; type = "gem";
}; };
version = "1.8.3"; version = "2.0.3";
}; };
launchy = { launchy = {
source = { source = {
@ -82,10 +82,10 @@
multi_json = { multi_json = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1rf3l4j3i11lybqzgq2jhszq7fh7gpmafjzd14ymp9cjfxqg596r"; sha256 = "1wpc23ls6v2xbk3l1qncsbz16npvmw8p0b38l8czdzri18mp51xk";
type = "gem"; type = "gem";
}; };
version = "1.11.2"; version = "1.12.1";
}; };
multipart-post = { multipart-post = {
source = { source = {
@ -122,10 +122,10 @@
travis = { travis = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0ph83whzw5hjkp1kgbkjd2g0vi6kdr9sif6vxvxgjf186id43q0s"; sha256 = "02bjz73f6r9b7nskwzcvcbr4hlvgwrf9rnr6d218d2i1rk4ww936";
type = "gem"; type = "gem";
}; };
version = "1.8.2"; version = "1.8.8";
}; };
typhoeus = { typhoeus = {
source = { source = {
@ -138,9 +138,9 @@
websocket = { websocket = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1frcsgj4f984db920xwapflqwgrwncw86c1rv94pp5gs2q1iaap4"; sha256 = "1shymfaw14p8jdi74nwz4nsgc9cmpli166lkp5g5wbhjmhmpvrnh";
type = "gem"; type = "gem";
}; };
version = "1.2.2"; version = "1.2.4";
}; };
} }

View File

@ -1,15 +1,16 @@
{ stdenv, fetchzip, ncurses { stdenv, fetchzip, ncurses
, ocaml, ocpBuild, findlib, lablgtk, ocp-index , ocamlPackages
, opam }: , opam }:
stdenv.mkDerivation { stdenv.mkDerivation {
name = "ocaml-top-1.1.2"; name = "ocaml-top-1.1.3";
src = fetchzip { src = fetchzip {
url = https://github.com/OCamlPro/ocaml-top/archive/1.1.2.tar.gz; url = https://github.com/OCamlPro/ocaml-top/archive/1.1.3.tar.gz;
sha256 = "10wfz8d6c1lbh31kayvlb5fj7qmgh5c6xhs3q595dnf9skrf091j"; sha256 = "0islyinv7lwhg8hkg4xn30wwz1nv50rj0wpsis8jpimw6jdsnax3";
}; };
buildInputs = [ ncurses opam ocaml ocpBuild findlib lablgtk ocp-index ]; buildInputs = [ ncurses opam ]
++ (with ocamlPackages; [ ocaml ocpBuild findlib lablgtk ocp-index ]);
configurePhase = '' configurePhase = ''
export TERM=xterm export TERM=xterm
@ -18,15 +19,13 @@ stdenv.mkDerivation {
buildPhase = "ocp-build ocaml-top"; buildPhase = "ocp-build ocaml-top";
installPhase = '' installPhase = "opam-installer --prefix=$out";
opam-installer --script --prefix=$out ocaml-top.install | sh
'';
meta = { meta = {
homepage = http://www.typerex.org/ocaml-top.html; homepage = http://www.typerex.org/ocaml-top.html;
license = stdenv.lib.licenses.gpl3; license = stdenv.lib.licenses.gpl3;
description = "A simple cross-platform OCaml code editor built for top-level evaluation"; description = "A simple cross-platform OCaml code editor built for top-level evaluation";
platforms = ocaml.meta.platforms or []; platforms = ocamlPackages.ocaml.meta.platforms or [];
maintainers = with stdenv.lib.maintainers; [ vbgl ]; maintainers = with stdenv.lib.maintainers; [ vbgl ];
}; };
} }

View File

@ -1,17 +1,30 @@
{ stdenv, fetchurl, xar, gzip, cpio, pkgs }: { stdenv, fetchurl, xar, xz, cpio, pkgs, python }:
let let
# TODO: make this available to other packages and generalize the unpacking a bit
# from https://gist.github.com/pudquick/ff412bcb29c9c1fa4b8d
# This isn't needed until we get to SDK 10.11, but that presents other challenges
# unpbzx = fetchurl {
# url = "https://gist.githubusercontent.com/pudquick/ff412bcb29c9c1fa4b8d/raw/24b25538ea8df8d0634a2a6189aa581ccc6a5b4b/parse_pbzx2.py";
# sha256 = "0jgp6qbfl36i0jlz7as5zk2w20z4ca8wlrhdw49lwsld6wi3rfhc";
# };
# sadly needs to be exported because security_tool needs it # sadly needs to be exported because security_tool needs it
sdk = stdenv.mkDerivation rec { sdk = stdenv.mkDerivation rec {
version = "10.9"; version = "10.10";
name = "MacOS_SDK-${version}"; name = "MacOS_SDK-${version}";
# This URL comes from https://swscan.apple.com/content/catalogs/others/index-10.10.merged-1.sucatalog, which we found by:
# 1. Google: site:swscan.apple.com and look for a name that seems appropriate for your version
# 2. In the resulting file, search for a file called DevSDK ending in .pkg
# 3. ???
# 4. Profit
src = fetchurl { src = fetchurl {
url = "http://swcdn.apple.com/content/downloads/27/02/031-06182/xxog8vxu8i6af781ivf4uhy6yt1lslex34/DevSDK_OSX109.pkg"; url = "http://swcdn.apple.com/content/downloads/22/52/031-45139/hcjjv7cm4n6yqk56ict73qqw15ikm5iaql/DevSDK_OSX1010.pkg";
sha256 = "16b7aplha5573yl1d44nl2yxzp0w2hafihbyh7930wrcvba69iy4"; sha256 = "08bxa93zw7r4vzs28j9giq2qyk3b68ky6jx1bb9850gflr3nvgq1";
}; };
buildInputs = [ xar gzip cpio ]; buildInputs = [ xar xz cpio python ];
phases = [ "unpackPhase" "installPhase" "fixupPhase" ]; phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
@ -114,11 +127,15 @@ let
popd >/dev/null popd >/dev/null
} }
linkFramework "${name}.framework" linkFramework "${name}.framework"
''; '';
propagatedBuildInputs = deps; propagatedBuildInputs = deps;
# don't use pure CF for dylibs that depend on frameworks
setupHook = ../../../build-support/setup-hooks/fix-darwin-frameworks.sh;
# allows building the symlink tree # allows building the symlink tree
__impureHostDeps = [ "/System/Library/Frameworks/${name}.framework" ]; __impureHostDeps = [ "/System/Library/Frameworks/${name}.framework" ];

View File

@ -52,6 +52,7 @@ with frameworks; with libs; {
GSS = []; GSS = [];
GameController = []; GameController = [];
GameKit = [ Foundation ]; GameKit = [ Foundation ];
Hypervisor = [];
ICADevices = [ Carbon CF IOBluetooth ]; ICADevices = [ Carbon CF IOBluetooth ];
IMServicePlugIn = []; IMServicePlugIn = [];
IOBluetoothUI = [ IOBluetooth ]; IOBluetoothUI = [ IOBluetooth ];
@ -117,4 +118,6 @@ with frameworks; with libs; {
OpenDirectory = []; OpenDirectory = [];
Quartz = [ QuickLook QTKit ]; Quartz = [ QuickLook QTKit ];
QuartzCore = [ ApplicationServices CF CoreVideo OpenCL ]; QuartzCore = [ ApplicationServices CF CoreVideo OpenCL ];
vmnet = [];
} }

View File

@ -62,13 +62,13 @@ with stdenv.lib;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "conky-${version}"; name = "conky-${version}";
version = "1.10.5"; version = "1.10.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "brndnmtthws"; owner = "brndnmtthws";
repo = "conky"; repo = "conky";
rev = "v${version}"; rev = "v${version}";
sha256 = "1x1b7h4s8f8qbiyas7sw5v2nq5h2wy3q7hsp1ah4l7191jjidqix"; sha256 = "15j8h251v9jpdg6h6wn1vb45pkk806pf9s5n3rdrps9r185w8hn8";
}; };
postPatch = '' postPatch = ''

View File

@ -0,0 +1,47 @@
{ stdenv, fetchFromGitHub, autoconf-archive, gettext, libtool, intltool, autoconf, automake
, glib, gtk3, gtk_doc, libgudev, pkgconfig, systemd }:
stdenv.mkDerivation rec {
name = "iio-sensor-proxy-${version}";
version = "2.2";
src = fetchFromGitHub {
owner = "hadess";
repo = "iio-sensor-proxy";
rev = version;
sha256 = "1x0whwm2r9g50hq5px0bgsrigy8naihqgi6qm0x5q87jz5lkhrnv";
};
configurePhase = ''
./autogen.sh --prefix=$out \
--with-udevrulesdir=$out/lib/udev/rules.d \
--with-systemdsystemunitdir=$out/lib/systemd/system
'';
buildInputs = [
glib
gtk3
gtk_doc
libgudev
systemd
];
nativeBuildInputs = [
autoconf
autoconf-archive
automake
gettext
intltool
libtool
pkgconfig
];
meta = with stdenv.lib; {
description = "Proxy for sending IIO sensor data to D-Bus";
homepage = https://github.com/hadess/iio-sensor-proxy;
license = licenses.gpl3 ;
maintainers = with maintainers; [ peterhoeg ];
platforms = platforms.linux;
inherit version;
};
}

View File

@ -456,7 +456,7 @@ with stdenv.lib;
FTRACE_SYSCALLS y FTRACE_SYSCALLS y
SCHED_TRACER y SCHED_TRACER y
STACK_TRACER y STACK_TRACER y
UPROBE_EVENT y UPROBE_EVENT? y
${optionalString (versionAtLeast version "4.4") '' ${optionalString (versionAtLeast version "4.4") ''
BPF_SYSCALL y BPF_SYSCALL y
BPF_EVENTS y BPF_EVENTS y

View File

@ -1,12 +1,12 @@
{ stdenv, fetchurl, perl, buildLinux, ... } @ args: { stdenv, fetchurl, perl, buildLinux, ... } @ args:
import ./generic.nix (args // rec { import ./generic.nix (args // rec {
version = "4.1.38"; version = "4.1.39";
extraMeta.branch = "4.1"; extraMeta.branch = "4.1";
src = fetchurl { src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
sha256 = "0mmx11z1wlnlaw2nhpdw76xzmqmfr8q52dv0jvy0pjq8rcbk3hmq"; sha256 = "0m48slb13ipnjnw4inhyb74xxpla94344wbc2y5lzb402n5jrs58";
}; };
kernelPatches = args.kernelPatches; kernelPatches = args.kernelPatches;

View File

@ -1,12 +1,12 @@
{ stdenv, fetchurl, perl, buildLinux, ... } @ args: { stdenv, fetchurl, perl, buildLinux, ... } @ args:
import ./generic.nix (args // rec { import ./generic.nix (args // rec {
version = "4.10.1"; version = "4.10.2";
extraMeta.branch = "4.10"; extraMeta.branch = "4.10";
src = fetchurl { src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
sha256 = "0hrmph137q4j2xfsv1fyayig47g4v8ivd2rqsw03dy7mzasnp83c"; sha256 = "1m5ahr1m36kdni80xj4imhhw26l8621rsaaa3z4gkjmnq6n0bnxr";
}; };
kernelPatches = args.kernelPatches; kernelPatches = args.kernelPatches;

View File

@ -1,12 +1,12 @@
{ stdenv, fetchurl, perl, buildLinux, ... } @ args: { stdenv, fetchurl, perl, buildLinux, ... } @ args:
import ./generic.nix (args // rec { import ./generic.nix (args // rec {
version = "4.4.52"; version = "4.4.53";
extraMeta.branch = "4.4"; extraMeta.branch = "4.4";
src = fetchurl { src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
sha256 = "01hz3g7j1m8dis6pyy9p8pi5ixl32g6cvgav0i7a7qbkrspdvlp8"; sha256 = "1rpkrlspxs3kfks0vg4dz8n570hpwdw5zymy9g2ky5vwskawvzky";
}; };
kernelPatches = args.kernelPatches; kernelPatches = args.kernelPatches;

View File

@ -1,12 +1,12 @@
{ stdenv, fetchurl, perl, buildLinux, ... } @ args: { stdenv, fetchurl, perl, buildLinux, ... } @ args:
import ./generic.nix (args // rec { import ./generic.nix (args // rec {
version = "4.9.14"; version = "4.9.15";
extraMeta.branch = "4.9"; extraMeta.branch = "4.9";
src = fetchurl { src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
sha512 = "0qc78s1j3mm03qs5m3dkc1ah9zchwdkmnkl1bl516dr9gy9i386all5c3f9bxniy8dd3lsk7bgfyqnigav1gyaki7vf9jh9ywqz58vd"; sha512 = "3p0cfjfmq4r04w6bjyi2aphq171yavv9m06b29wjsglb1bbkyiy4v278r99cq913msmdp3xs0ba1rkc36qp7cv7hxc29pj0w06ajwls";
}; };
kernelPatches = args.kernelPatches; kernelPatches = args.kernelPatches;

View File

@ -1,13 +1,13 @@
{ stdenv, fetchurl, perl, buildLinux, ... } @ args: { stdenv, fetchurl, perl, buildLinux, ... } @ args:
import ./generic.nix (args // rec { import ./generic.nix (args // rec {
version = "4.11-rc1"; version = "4.11-rc2";
modDirVersion = "4.11.0-rc1"; modDirVersion = "4.11.0-rc2";
extraMeta.branch = "4.11"; extraMeta.branch = "4.11";
src = fetchurl { src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/testing/linux-${version}.tar.xz"; url = "mirror://kernel/linux/kernel/v4.x/testing/linux-${version}.tar.xz";
sha256 = "19zcyjqiw255d48k1mk33i1wgbiwv58nn3dw9i9079hfb843s28l"; sha256 = "1rfdnx7klrb8z9372ydmrsw6bk3i6xqa0am3vjqy75mjp54063vx";
}; };
features.iwlwifi = true; features.iwlwifi = true;

View File

@ -95,9 +95,9 @@ rec {
}; };
grsecurity_testing = grsecPatch grsecurity_testing = grsecPatch
{ kver = "4.9.14"; { kver = "4.9.15";
grrev = "201703121245"; grrev = "201703150049";
sha512 = "1h9d1vvfwxn8flzhbii7xd808cmhw8az895sk3fam2vjy5ls1mxvrmvw0z9nzx5sq2hgjg9adyz52y5nj2rza09n3m2gn4i7lid81hh"; sha512 = "1x02ncl94835n85kpp5bfvy6863sb482fw30x2pqszi4aivjc31i77vj135a7f508ni1b9rbbl8a0m3q4nb8gdbia75zcxbjdi9ij9m";
}; };
# This patch relaxes grsec constraints on the location of usermode helpers, # This patch relaxes grsec constraints on the location of usermode helpers,

View File

@ -3,11 +3,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "atlassian-crowd-${version}"; name = "atlassian-crowd-${version}";
version = "2.10.1"; version = "2.11.1";
src = fetchurl { src = fetchurl {
url = "https://www.atlassian.com/software/crowd/downloads/binary/${name}.tar.gz"; url = "https://www.atlassian.com/software/crowd/downloads/binary/${name}.tar.gz";
sha256 = "1pl4wyqvzqb97ql23530amslrrsysi0fmmnzpihhgqhvhwf57sc6"; sha256 = "12gb9p5npcdr7mxyyir3xgjkc6n05zfi4i5dqkg8f7jrhi49nas7";
}; };
phases = [ "unpackPhase" "buildPhase" "installPhase" "fixupPhase" ]; phases = [ "unpackPhase" "buildPhase" "installPhase" "fixupPhase" ];

View File

@ -0,0 +1,24 @@
{ stdenv, lib, buildGoPackage, fetchFromGitHub }:
buildGoPackage rec {
name = "fritzbox-exporter-${version}";
version = "1.0";
rev = "v${version}";
goPackagePath = "github.com/ndecker/fritzbox_exporter";
src= fetchFromGitHub {
inherit rev;
owner = "ndecker";
repo = "fritzbox_exporter";
sha256 = "1qk3dgxxz3cnz52jzz0yvfkrkk4s5kdhc26nbfgdpn0ifzqj0awr";
};
meta = with stdenv.lib; {
description = "FRITZ!Box UPnP statistics exporter for prometheus";
homepage = https://github.com/ndecker/fritzbox_exporter;
license = licenses.asl20;
maintainers = with maintainers; [ bachp ];
platforms = platforms.unix;
};
}

View File

@ -33,17 +33,15 @@ let
opt = stdenv.lib.optional; opt = stdenv.lib.optional;
mkFlag = c: f: if c then "--enable-${f}" else "--disable-${f}"; mkFlag = c: f: if c then "--enable-${f}" else "--disable-${f}";
major = "0.20"; major = "0.20";
minor = "5"; minor = "6";
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
name = "mpd-${major}${if minor == "" then "" else "." + minor}"; name = "mpd-${major}${if minor == "" then "" else "." + minor}";
src = fetchurl { src = fetchurl {
url = "http://www.musicpd.org/download/mpd/${major}/${name}.tar.xz"; url = "http://www.musicpd.org/download/mpd/${major}/${name}.tar.xz";
sha256 = "11w9v0l9lf504nkxlb91y5r9x403ikl626mjd1lf4fj44yz76maj"; sha256 = "0isbpa79m7zf09w3s1ry638cw96rxasy1ch66zl01k75i48mw1gl";
}; };
patches = [ ./i386.patch ];
buildInputs = [ pkgconfig glib boost ] buildInputs = [ pkgconfig glib boost ]
++ opt stdenv.isDarwin darwin.apple_sdk.frameworks.CoreAudioKit ++ opt stdenv.isDarwin darwin.apple_sdk.frameworks.CoreAudioKit
++ opt stdenv.isLinux systemd ++ opt stdenv.isLinux systemd

View File

@ -1,14 +0,0 @@
diff --git a/src/decoder/plugins/FfmpegDecoderPlugin.cxx b/src/decoder/plugins/FfmpegDecoderPlugin.cxx
index 6986453..167fc07 100644
--- a/src/decoder/plugins/FfmpegDecoderPlugin.cxx
+++ b/src/decoder/plugins/FfmpegDecoderPlugin.cxx
@@ -20,8 +20,8 @@
/* necessary because libavutil/common.h uses UINT64_C */
#define __STDC_CONSTANT_MACROS
-#include "lib/ffmpeg/Time.hxx"
#include "config.h"
+#include "lib/ffmpeg/Time.hxx"
#include "FfmpegDecoderPlugin.hxx"
#include "lib/ffmpeg/Domain.hxx"
#include "lib/ffmpeg/Error.hxx"

View File

@ -36,7 +36,7 @@ in {
}; };
}; };
elasticsearch_analisys_lemmagen = esPlugin rec { elasticsearch_analysis_lemmagen = esPlugin rec {
name = "elasticsearch-analysis-lemmagen-${version}"; name = "elasticsearch-analysis-lemmagen-${version}";
pluginName = "elasticsearch-analysis-lemmagen"; pluginName = "elasticsearch-analysis-lemmagen";
version = "0.1"; version = "0.1";

View File

@ -0,0 +1,12 @@
# Upgrading? We have a test! nix-build ./nixos/tests/wordpress.nix
{ fetchFromGitHub, lib } : fetchFromGitHub {
owner = "WordPress";
repo = "WordPress";
rev = "4.7.3";
sha256 = "05gggm40065abylp6bdc0zn0q6ahcggyh4q6rk0ak242q8v5fm5b";
meta = {
homepage = https://wordpress.org;
description = "WordPress is open source software you can use to create a beautiful website, blog, or app.";
license = lib.licenses.gpl2;
};
}

View File

@ -4,13 +4,13 @@
{ stdenv, fetchgit }: { stdenv, fetchgit }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "2017-02-20"; version = "2017-02-27";
name = "oh-my-zsh-${version}"; name = "oh-my-zsh-${version}";
src = fetchgit { src = fetchgit {
url = "https://github.com/robbyrussell/oh-my-zsh"; url = "https://github.com/robbyrussell/oh-my-zsh";
rev = "98d8d3429f8b9fc2c4c109fb199a31c8d1735699"; rev = "b908feebcfb0ca8a9a80360d177e716c24c317d6";
sha256 = "1zdjb5dsbr8n7jfmib4a6rhcx9wrp5lw4b8b9xrh164s97hza2d0"; sha256 = "0b7gir2llv5212nwh9arzva2p714s39qzgk385s9pmalhspfc6c1";
}; };
pathsToLink = [ "/share/oh-my-zsh" ]; pathsToLink = [ "/share/oh-my-zsh" ];

View File

@ -139,6 +139,7 @@ EOF
homepage = http://refind.sourceforge.net/; homepage = http://refind.sourceforge.net/;
maintainers = [ maintainers.AndersonTorres ]; maintainers = [ maintainers.AndersonTorres ];
platforms = [ "i686-linux" "x86_64-linux" ]; platforms = [ "i686-linux" "x86_64-linux" ];
broken = true;
}; };
} }

View File

@ -0,0 +1,28 @@
{ stdenv, fetchFromGitHub, python2Packages }:
python2Packages.buildPythonApplication rec {
name = "crudini-${version}";
version = "0.9";
src = fetchFromGitHub {
owner = "pixelb";
repo = "crudini";
rev = version;
sha256 = "0x9z9lsygripj88gadag398pc9zky23m16wmh8vbgw7ld1nhkiav";
};
propagatedBuildInputs = with python2Packages; [ iniparse ];
checkPhase = ''
patchShebangs .
pushd tests >/dev/null
./test.sh
'';
meta = with stdenv.lib; {
description = "A utility for manipulating ini files ";
homepage = http://www.pixelbeat.org/programs/crudini/;
license = licenses.gpl2;
maintainers = with maintainers; [ peterhoeg ];
};
}

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "entr-${version}"; name = "entr-${version}";
version = "3.6"; version = "3.7";
src = fetchurl { src = fetchurl {
url = "http://entrproject.org/code/${name}.tar.gz"; url = "http://entrproject.org/code/${name}.tar.gz";
sha256 = "1sy81np6kgmq04kfn2ckf4fp7jcf5d1963shgmapx3al3kc4c9x4"; sha256 = "0bx2ivx9hwixjwmk7aqlx20mwmn3cvryppnmc285d7byiw6dbvwl";
}; };
postPatch = '' postPatch = ''

View File

@ -17,7 +17,7 @@ python3Packages.buildPythonApplication rec {
doCheck = false; doCheck = false;
meta = with stdenv.lib; { meta = with stdenv.lib; {
desciption = "Github bot for reviewing/testing pull requests with the help of Hydra"; description = "Github bot for reviewing/testing pull requests with the help of Hydra";
maintainers = with maintainers; [ domenkozar fpletz globin ]; maintainers = with maintainers; [ domenkozar fpletz globin ];
license = licenses.asl20; license = licenses.asl20;
homepage = https://github.com/domenkozar/nixbot; homepage = https://github.com/domenkozar/nixbot;

View File

@ -3,13 +3,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "haproxy"; pname = "haproxy";
majorVersion = "1.7"; majorVersion = "1.7";
minorVersion = "2"; minorVersion = "3";
version = "${majorVersion}.${minorVersion}"; version = "${majorVersion}.${minorVersion}";
name = "${pname}-${version}"; name = "${pname}-${version}";
src = fetchurl { src = fetchurl {
url = "http://www.haproxy.org/download/${majorVersion}/src/${name}.tar.gz"; url = "http://www.haproxy.org/download/${majorVersion}/src/${name}.tar.gz";
sha256 = "0bsb5q3s1k5gqybv5p8zyvl6zh8iyidv3jb3wfmgwqad5bsl0nzr"; sha256 = "ebb31550a5261091034f1b6ac7f4a8b9d79a8ce2a3ddcd7be5b5eb355c35ba65";
}; };
buildInputs = [ openssl zlib ]; buildInputs = [ openssl zlib ];

View File

@ -1,10 +1,10 @@
{stdenv, fetchurl, apacheAnt, jdk, axis2, dbus_java}: {stdenv, fetchurl, apacheAnt, jdk, axis2, dbus_java}:
stdenv.mkDerivation { stdenv.mkDerivation {
name = "DisnixWebService-0.6"; name = "DisnixWebService-0.7";
src = fetchurl { src = fetchurl {
url = http://hydra.nixos.org/build/36899117/download/4/DisnixWebService-0.6.tar.bz2; url = https://github.com/svanderburg/DisnixWebService/files/842861/DisnixWebService-0.7.tar.gz;
sha256 = "0yvwjnzk1q4y3wj8pi6z3i7akw83ah9xm2v93ni1ri70z5930mdz"; sha256 = "1zqy0badqqw8pzp9ky2aayi27v6znd64zafacvywjrn185fjz17g";
}; };
buildInputs = [ apacheAnt jdk ]; buildInputs = [ apacheAnt jdk ];
PREFIX = ''''${env.out}''; PREFIX = ''''${env.out}'';

View File

@ -1,21 +1,19 @@
{ stdenv, fetchurl, pkgconfig, glib, libxml2, libxslt, getopt, nixUnstable, dysnomia, libintlOrEmpty, libiconv }: { stdenv, fetchurl, pkgconfig, glib, libxml2, libxslt, getopt, nixUnstable, dysnomia, libintlOrEmpty, libiconv }:
stdenv.mkDerivation { stdenv.mkDerivation {
name = "disnix-0.6.1"; name = "disnix-0.7";
src = fetchurl { src = fetchurl {
url = http://hydra.nixos.org/build/40497264/download/4/disnix-0.6.1.tar.gz; url = https://github.com/svanderburg/disnix/files/842828/disnix-0.7.tar.gz;
sha256 = "123y8vp31sl394rl7pg2xy13ng9i3pk4s7skyqhngjbqzjl72lhj"; sha256 = "120iaqpj7zcy94dpizzdxjwf8qb2rfrx5394jghmhc6jy88vdp71";
}; };
buildInputs = [ pkgconfig glib libxml2 libxslt getopt nixUnstable libintlOrEmpty libiconv dysnomia ]; buildInputs = [ pkgconfig glib libxml2 libxslt getopt nixUnstable libintlOrEmpty libiconv dysnomia ];
dontStrip = true;
meta = { meta = {
description = "A Nix-based distributed service deployment tool"; description = "A Nix-based distributed service deployment tool";
license = stdenv.lib.licenses.lgpl21Plus; license = stdenv.lib.licenses.lgpl21Plus;
maintainers = [ stdenv.lib.maintainers.sander ]; maintainers = [ stdenv.lib.maintainers.sander ];
platforms = stdenv.lib.platforms.linux; platforms = stdenv.lib.platforms.unix;
}; };
} }

View File

@ -1,17 +1,15 @@
{ stdenv, fetchurl, dysnomia, disnix, socat, pkgconfig, getopt }: { stdenv, fetchurl, dysnomia, disnix, socat, pkgconfig, getopt }:
stdenv.mkDerivation { stdenv.mkDerivation {
name = "disnixos-0.5"; name = "disnixos-0.6";
src = fetchurl { src = fetchurl {
url = http://hydra.nixos.org/build/36899006/download/3/disnixos-0.5.tar.gz; url = https://github.com/svanderburg/disnixos/files/842874/disnixos-0.6.tar.gz;
sha256 = "0pl3j8kwcz90as5cs0yipfbg555lw3z6xsylk6g2ili878mni1aq"; sha256 = "0pgqsk8qndn614z02jq3vbxzpx6fmgsm6pr1g0iqz55pzwamw9j7";
}; };
buildInputs = [ socat pkgconfig dysnomia disnix getopt ]; buildInputs = [ socat pkgconfig dysnomia disnix getopt ];
dontStrip = true;
meta = { meta = {
description = "Provides complementary NixOS infrastructure deployment to Disnix"; description = "Provides complementary NixOS infrastructure deployment to Disnix";
license = stdenv.lib.licenses.lgpl21Plus; license = stdenv.lib.licenses.lgpl21Plus;

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