Merge branch 'master.upstream' into staging.upstream

This commit is contained in:
William A. Kennington III 2015-09-18 17:16:27 -07:00
commit 6e09223627
135 changed files with 31796 additions and 943 deletions

View File

@ -6,7 +6,7 @@ with import ./attrsets.nix;
with import ./options.nix;
with import ./trivial.nix;
with import ./strings.nix;
with {inherit (import ./modules.nix) mergeDefinitions; };
with {inherit (import ./modules.nix) mergeDefinitions filterOverrides; };
rec {
@ -166,6 +166,23 @@ rec {
substSubModules = m: loaOf (elemType.substSubModules m);
};
# List or element of ...
loeOf = elemType: mkOptionType {
name = "element or list of ${elemType.name}s";
check = x: isList x || elemType.check x;
merge = loc: defs:
let
defs' = filterOverrides defs;
res = (head defs').value;
in
if isList res then concatLists (getValues defs')
else if lessThan 1 (length defs') then
throw "The option `${showOption loc}' is defined multiple times, in ${showFiles (getFiles defs)}."
else if !isString res then
throw "The option `${showOption loc}' does not have a string value, in ${showFiles (getFiles defs)}."
else res;
};
uniq = elemType: mkOptionType {
inherit (elemType) name check;
merge = mergeOneOption;

View File

@ -108,10 +108,8 @@ with lib;
subpixel = {
rgba = mkOption {
type = types.string // {
check = flip elem ["rgb" "bgr" "vrgb" "vbgr" "none"];
};
default = "rgb";
type = types.enum ["rgb" "bgr" "vrgb" "vbgr" "none"];
description = ''
Subpixel order, one of <literal>none</literal>,
<literal>rgb</literal>, <literal>bgr</literal>,
@ -120,10 +118,8 @@ with lib;
};
lcdfilter = mkOption {
type = types.str // {
check = flip elem ["none" "default" "light" "legacy"];
};
default = "default";
type = types.enum ["none" "default" "light" "legacy"];
description = ''
FreeType LCD filter, one of <literal>none</literal>,
<literal>default</literal>, <literal>light</literal>, or

View File

@ -108,7 +108,7 @@ in
extraConfig = mkOption {
default = "";
type = types.string;
type = types.lines;
description = ''
Extra configuration options that will be added verbatim at
the end of the nslcd configuration file (nslcd.conf).
@ -120,7 +120,7 @@ in
distinguishedName = mkOption {
default = "";
example = "cn=admin,dc=example,dc=com";
type = types.string;
type = types.str;
description = ''
The distinguished name to bind to the LDAP server with. If this
is not specified, an anonymous bind will be done.
@ -129,7 +129,7 @@ in
password = mkOption {
default = "/etc/ldap/bind.password";
type = types.string;
type = types.str;
description = ''
The path to a file containing the credentials to use when binding
to the LDAP server (if not binding anonymously).
@ -149,7 +149,7 @@ in
policy = mkOption {
default = "hard_open";
type = types.string;
type = types.enum [ "hard_open" "hard_init" "soft" ];
description = ''
Specifies the policy to use for reconnecting to an unavailable
LDAP server. The default is <literal>hard_open</literal>, which
@ -168,7 +168,7 @@ in
extraConfig = mkOption {
default = "";
type = types.string;
type = types.lines;
description = ''
Extra configuration options that will be added verbatim at
the end of the ldap configuration file (ldap.conf).

View File

@ -41,20 +41,7 @@ in
strings. The latter is concatenated, interspersed with colon
characters.
'';
type = types.attrsOf (mkOptionType {
name = "a string or a list of strings";
merge = loc: defs:
let
defs' = filterOverrides defs;
res = (head defs').value;
in
if isList res then concatLists (getValues defs')
else if lessThan 1 (length defs') then
throw "The option `${showOption loc}' is defined multiple times, in ${showFiles (getFiles defs)}."
else if !isString res then
throw "The option `${showOption loc}' does not have a string value, in ${showFiles (getFiles defs)}."
else res;
});
type = types.attrsOf (types.loeOf types.str);
apply = mapAttrs (n: v: if isList v then concatStringsSep ":" v else v);
};

View File

@ -23,20 +23,7 @@ in
strings. The latter is concatenated, interspersed with colon
characters.
'';
type = types.attrsOf (mkOptionType {
name = "a string or a list of strings";
merge = loc: defs:
let
defs' = filterOverrides defs;
res = (head defs').value;
in
if isList res then concatLists (getValues defs')
else if lessThan 1 (length defs') then
throw "The option `${showOption loc}' is defined multiple times, in ${showFiles (getFiles defs)}."
else if !isString res then
throw "The option `${showOption loc}' does not have a string value, in ${showFiles (getFiles defs)}."
else res;
});
type = types.attrsOf (types.loeOf types.str);
apply = mapAttrs (n: v: if isList v then concatStringsSep ":" v else v);
};

View File

@ -47,7 +47,7 @@
];
# Include support for various filesystems.
boot.supportedFilesystems = [ "btrfs" "reiserfs" "vfat" "f2fs" "zfs" "ntfs" "cifs" ];
boot.supportedFilesystems = [ "btrfs" "reiserfs" "vfat" "f2fs" "xfs" "zfs" "ntfs" "cifs" ];
# Configure host id for ZFS to work
networking.hostId = "8425e349";

View File

@ -41,7 +41,7 @@ in
dates = mkOption {
default = "*:0/15";
type = types.string;
type = types.str;
description = ''
Specification (in the format described by
<citerefentry><refentrytitle>systemd.time</refentrytitle>
@ -52,7 +52,7 @@ in
user = mkOption {
default = "root";
type = types.string;
type = types.str;
description = ''
User for running venus script.
'';
@ -60,7 +60,7 @@ in
group = mkOption {
default = "root";
type = types.string;
type = types.str;
description = ''
Group for running venus script.
'';
@ -68,7 +68,7 @@ in
name = mkOption {
default = "NixOS Planet";
type = types.string;
type = types.str;
description = ''
Your planet's name.
'';
@ -76,7 +76,7 @@ in
link = mkOption {
default = "http://planet.nixos.org";
type = types.string;
type = types.str;
description = ''
Link to the main page.
'';
@ -84,7 +84,7 @@ in
ownerName = mkOption {
default = "Rok Garbas";
type = types.string;
type = types.str;
description = ''
Your name.
'';
@ -92,7 +92,7 @@ in
ownerEmail = mkOption {
default = "some@example.com";
type = types.string;
type = types.str;
description = ''
Your e-mail address.
'';

View File

@ -24,7 +24,7 @@ in
dialerDefaults = mkOption {
default = "";
type = types.string;
type = types.str;
example = ''Init1 = AT+CGDCONT=1,"IP","internet.t-mobile"'';
description = ''
Contents of the "Dialer Defaults" section of
@ -40,7 +40,7 @@ in
persist
noauth
'';
type = types.string;
type = types.str;
description = "Default ppp settings for wvdial.";
};

View File

@ -32,25 +32,25 @@ in
};
fileSystem = mkOption {
type = types.string;
type = types.str;
description = "XFS filesystem hosting the xfs_quota project.";
default = "/";
};
path = mkOption {
type = types.string;
type = types.str;
description = "Project directory.";
};
sizeSoftLimit = mkOption {
type = types.nullOr types.string;
type = types.nullOr types.str;
default = null;
example = "30g";
description = "Soft limit of the project size";
};
sizeHardLimit = mkOption {
type = types.nullOr types.string;
type = types.nullOr types.str;
default = null;
example = "50g";
description = "Hard limit of the project size.";

View File

@ -419,7 +419,7 @@ in
users.motd = mkOption {
default = null;
example = "Today is Sweetmorn, the 4th day of The Aftermath in the YOLD 3178.";
type = types.nullOr types.string;
type = types.nullOr types.lines;
description = "Message of the day shown to users when they log in.";
};

View File

@ -24,7 +24,7 @@ in {
};
deviceKey = mkOption {
type = types.string;
type = types.str;
description = ''
<literal>Device key</literal> obtained by visiting
<link xlink:href="https://panel.preyproject.com/devices" />
@ -33,7 +33,7 @@ in {
};
apiKey = mkOption {
type = types.string;
type = types.str;
description = ''
<literal>API key</literal> obtained from
<link xlink:href="https://panel.preyproject.com/profile" />.

View File

@ -119,7 +119,7 @@ in
recipient = mkOption {
default = "root";
type = types.string;
type = types.str;
description = "Recipient of the notification messages.";
};
@ -153,7 +153,7 @@ in
display = mkOption {
default = ":${toString config.services.xserver.display}";
type = types.string;
type = types.str;
description = "DISPLAY to send X11 notifications to.";
};
};

View File

@ -28,7 +28,9 @@ with lib;
jobs.oidentd =
{ startOn = "started network-interfaces";
daemonType = "fork";
exec = "${pkgs.oidentd}/sbin/oidentd -u oidentd -g nogroup";
exec = "${pkgs.oidentd}/sbin/oidentd -u oidentd -g nogroup" +
optionalString config.networking.enableIPv6 " -a ::"
;
};
users.extraUsers.oidentd = {

View File

@ -99,7 +99,9 @@ let
# makes it bootable.
baseSystem = showWarnings (
if [] == failed then pkgs.stdenv.mkDerivation {
name = "nixos-${config.system.nixosVersion}";
name = let hn = config.networking.hostName;
nn = if (hn != "") then hn else "unnamed";
in "nixos-system-${nn}-${config.system.nixosVersion}";
preferLocalBuild = true;
allowSubstitutes = false;
buildCommand = systemBuilder;

View File

@ -15,7 +15,7 @@ with lib;
efiSysMountPoint = mkOption {
default = "/boot";
type = types.string;
type = types.str;
description = "Where the EFI System Partition is mounted.";
};

View File

@ -242,20 +242,20 @@ in
name = mkOption {
example = "luksroot";
type = types.string;
type = types.str;
description = "Named to be used for the generated device in /dev/mapper.";
};
device = mkOption {
example = "/dev/sda2";
type = types.string;
type = types.str;
description = "Path of the underlying block device.";
};
header = mkOption {
default = null;
example = "/root/header.img";
type = types.nullOr types.string;
type = types.nullOr types.str;
description = ''
The name of the file or block device that
should be used as header for the encrypted device.
@ -265,7 +265,7 @@ in
keyFile = mkOption {
default = null;
example = "/dev/sdb1";
type = types.nullOr types.string;
type = types.nullOr types.str;
description = ''
The name of the file (can be a raw device or a partition) that
should be used as the decryption key for the encrypted device. If
@ -349,7 +349,7 @@ in
ramfsMountPoint = mkOption {
default = "/crypt-ramfs";
type = types.string;
type = types.str;
description = "Path where the ramfs used to update the LUKS key will be mounted during early boot.";
};
@ -369,19 +369,19 @@ in
fsType = mkOption {
default = "vfat";
type = types.string;
type = types.str;
description = "The filesystem of the unencrypted device.";
};
mountPoint = mkOption {
default = "/crypt-storage";
type = types.string;
type = types.str;
description = "Path where the unencrypted device will be mounted during early boot.";
};
path = mkOption {
default = "/crypt-storage/default";
type = types.string;
type = types.str;
description = ''
Absolute path of the salt on the unencrypted device with
that device's root directory as "/".

View File

@ -22,21 +22,21 @@ let
blkDev = mkOption {
default = null;
example = "/dev/sda1";
type = types.uniq (types.nullOr types.string);
type = types.nullOr types.str;
description = "Location of the backing encrypted device.";
};
label = mkOption {
default = null;
example = "rootfs";
type = types.uniq (types.nullOr types.string);
type = types.nullOr types.str;
description = "Label of the backing encrypted device.";
};
keyFile = mkOption {
default = null;
example = "/root/.swapkey";
type = types.uniq (types.nullOr types.string);
type = types.nullOr types.str;
description = "File system location of keyfile.";
};
};

View File

@ -22,14 +22,14 @@ let
device = mkOption {
default = null;
example = "/dev/sda";
type = types.uniq (types.nullOr types.string);
type = types.nullOr types.str;
description = "Location of the device.";
};
label = mkOption {
default = null;
example = "root-partition";
type = types.uniq (types.nullOr types.string);
type = types.nullOr types.str;
description = "Label of the device (if any).";
};

View File

@ -499,7 +499,7 @@ in
interface = mkOption {
example = "enp4s0";
type = types.string;
type = types.str;
description = "The interface the macvlan will transmit packets through.";
};
@ -605,7 +605,7 @@ in
interface = mkOption {
example = "enp4s0";
type = types.string;
type = types.str;
description = "The interface the vlan will transmit packets through.";
};

View File

@ -26,7 +26,7 @@ in
${pkgs.vmTools.qemu}/bin/qemu-img convert -f raw -O vpc $diskImage $out/disk.vhd
rm $diskImage
'';
diskImageBase = "nixos-${config.system.nixosVersion}-${pkgs.stdenv.system}.raw";
diskImageBase = "nixos-image-${config.system.nixosVersion}-${pkgs.stdenv.system}.raw";
buildInputs = [ pkgs.utillinux pkgs.perl ];
exportReferencesGraph =
[ "closure" config.system.build.toplevel ];

View File

@ -26,7 +26,7 @@ in
rm $diskImageBase
popd
'';
diskImageBase = "nixos-${config.system.nixosVersion}-${pkgs.stdenv.system}.raw";
diskImageBase = "nixos-image-${config.system.nixosVersion}-${pkgs.stdenv.system}.raw";
buildInputs = [ pkgs.utillinux pkgs.perl ];
exportReferencesGraph =
[ "closure" config.system.build.toplevel ];

View File

@ -108,7 +108,7 @@ in
};
hostAddress = mkOption {
type = types.nullOr types.string;
type = types.nullOr types.str;
default = null;
example = "10.231.136.1";
description = ''
@ -117,7 +117,7 @@ in
};
localAddress = mkOption {
type = types.nullOr types.string;
type = types.nullOr types.str;
default = null;
example = "10.231.136.2";
description = ''

View File

@ -67,7 +67,7 @@ in
postStart =
mkOption {
type = types.string;
type = types.lines;
default = ''
while ! [ -e /var/run/docker.sock ]; do
sleep 0.1

View File

@ -30,7 +30,7 @@ in
rm $out/disk.raw
popd
'';
diskImageBase = "nixos-${config.system.nixosVersion}-${pkgs.stdenv.system}.raw";
diskImageBase = "nixos-image-${config.system.nixosVersion}-${pkgs.stdenv.system}.raw";
buildInputs = [ pkgs.utillinux pkgs.perl ];
exportReferencesGraph =
[ "closure" config.system.build.toplevel ];

View File

@ -101,7 +101,7 @@ in {
system.build.virtualBoxOVA = pkgs.runCommand "virtualbox-ova"
{ buildInputs = [ pkgs.linuxPackages.virtualbox ];
vmName = "NixOS ${config.system.nixosVersion} (${pkgs.stdenv.system})";
fileName = "nixos-${config.system.nixosVersion}-${pkgs.stdenv.system}.ova";
fileName = "nixos-image-${config.system.nixosVersion}-${pkgs.stdenv.system}.ova";
}
''
echo "creating VirtualBox VM..."

View File

@ -1,30 +1,31 @@
{ stdenv, fetchurl, pam, pkgconfig, libxcb, glib, libXdmcp, itstool, libxml2
, intltool, x11, libxklavier, libgcrypt
, intltool, x11, libxklavier, libgcrypt, libaudit
, qt4 ? null, qt5 ? null
}:
let
ver_branch = "1.14";
version = "1.14.2";
ver_branch = "1.16";
version = "1.16.2";
in
stdenv.mkDerivation rec {
name = "lightdm-${version}";
src = fetchurl {
url = "${meta.homepage}/${ver_branch}/${version}/+download/${name}.tar.xz";
sha256 = "18dvipdkp6hc1hysyiwpd5nwq6db3mg98rwi3am2ly3hk2bpic18";
sha256 = "062jj21bjrl29mk66lpihwhrff038h2wny3p6b5asacf2mklf0hq";
};
patches = [ ./fix-paths.patch ];
buildInputs = [
pkgconfig pam libxcb glib libXdmcp itstool libxml2 intltool libxklavier libgcrypt
qt4
qt4 libaudit
] ++ stdenv.lib.optional (qt5 != null) qt5.base;
configureFlags = [
"--localstatedir=/var"
"--sysconfdir=/etc"
"--disable-tests"
] ++ stdenv.lib.optional (qt4 != null) "--enable-liblightdm-qt"
++ stdenv.lib.optional ((qt5.base or null) != null) "--enable-liblightdm-qt5";

View File

@ -11,7 +11,8 @@ in stdenv.mkDerivation {
# a quick configure to get the Makefile generated. Since
# we do not build the ocaml itself, we don't really
# need it to support any features.
configureFlags = [ "-no-tk" "-no-curses" "-no-pthread" ];
configureFlags = (with stdenv.lib; optional (!(versionAtLeast version "4.02")) "-no-tk") ++
[ "-no-curses" "-no-pthread" ];
buildInputs = [ emacs ];
dontBuild = true;

View File

@ -1,28 +0,0 @@
From 55e33019afcb3256cccedf606548b86816f6da59 Mon Sep 17 00:00:00 2001
From: Chris Bagwell <chris@cnpbagwell.com>
Date: Sat, 13 Dec 2014 12:48:37 -0600
Subject: [PATCH 1/2] Check for minimum size sphere headers
---
src/sphere.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/src/sphere.c b/src/sphere.c
index 479a552..a3fd1c6 100644
--- a/src/sphere.c
+++ b/src/sphere.c
@@ -47,6 +47,11 @@ static int start_read(sox_format_t * ft)
/* Determine header size, and allocate a buffer large enough to hold it. */
sscanf(fldsval, "%lu", &header_size_ul);
+ if (header_size_ul < 16) {
+ lsx_fail_errno(ft, SOX_EHDR, "Error reading Sphere header");
+ return (SOX_EOF);
+ }
+
buf = lsx_malloc(header_size = header_size_ul);
/* Skip what we have read so far */
--
2.1.0

View File

@ -1,28 +0,0 @@
From ebb64cddde59ecc9cedf3741ce2337c72148cc0c Mon Sep 17 00:00:00 2001
From: Chris Bagwell <chris@cnpbagwell.com>
Date: Sat, 13 Dec 2014 12:49:55 -0600
Subject: [PATCH 2/2] More checks for invalid MS ADPCM blocks.
If block doesn't exacty match blockAlign then do not allow
number of samples in invalid size block to ever be more than
what WAV header defined as samplesPerBlock.
---
src/wav.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/wav.c b/src/wav.c
index 61d5908..5202556 100644
--- a/src/wav.c
+++ b/src/wav.c
@@ -168,7 +168,7 @@ static unsigned short AdpcmReadBlock(sox_format_t * ft)
/* work with partial blocks. Specs say it should be null */
/* padded but I guess this is better than trailing quiet. */
samplesThisBlock = lsx_ms_adpcm_samples_in((size_t)0, (size_t)ft->signal.channels, bytesRead, (size_t)0);
- if (samplesThisBlock == 0)
+ if (samplesThisBlock == 0 || samplesThisBlock > wav->samplesPerBlock)
{
lsx_warn("Premature EOF on .wav input file");
return 0;
--
2.1.0

View File

@ -11,20 +11,13 @@
with stdenv.lib;
stdenv.mkDerivation rec {
name = "sox-14.4.1";
name = "sox-14.4.2";
src = fetchurl {
url = "mirror://sourceforge/sox/${name}.tar.gz";
sha256 = "16x8gykfjdhxg0kdxwzcwgwpm5caa08y2mx18siqsq0ywmpjr34s";
sha256 = "0v2znlxkxxcd3f48hf3dx9pq7i6fdhb62kgj7wv8xggz8f35jpxl";
};
patches = [
# Patches for CVE-2014-8145, found via RedHat bug 1174792. It was not
# clear whether these address a NULL deref and a division by zero.
./0001-Check-for-minimum-size-sphere-headers.patch
./0002-More-checks-for-invalid-MS-ADPCM-blocks.patch
];
buildInputs =
optional (enableAlsa && stdenv.isLinux) alsaLib ++
optional enableLibao libao ++

View File

@ -1,14 +1,14 @@
{ stdenv, fetchgit, cmake, qt5, file, kde5}:
let
version = "git-2015-06-10";
version = "git-2015-07-25";
in
stdenv.mkDerivation rec {
name = "dfilemanager-${version}";
src = fetchgit {
url = "git://git.code.sf.net/p/dfilemanager/code";
rev = "806a28aa8fed30941a2fd6784c7c9c240bca30e3";
sha256 = "1k15qzjmqg9ffv4cl809b071dpyckf8jspkhfhpbmfd9wasr0m7i";
rev = "99afcde199378eb0d499c49a9e28846c22e27483";
sha256 = "1dd21xl24xvxs100j8nzhpaqfqk8srqs92al9c03jmyjlk31s6lf";
};
buildInputs = [ cmake qt5.base qt5.tools qt5.x11extras file kde5.solid];
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
meta = {
homepage = "http://dfilemanager.sourceforge.net/";
description = "File manager written in Qt/C++, it does use one library from kdelibs, the solid lib for easy device handling";
#license = stdenv.lib.licenses; # license not specified
license = stdenv.lib.licenses.gpl2;
platforms = stdenv.lib.platforms.unix;
maintainers = [ stdenv.lib.maintainers.eduarrrd ];
};

View File

@ -0,0 +1,39 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "tthsum-${version}";
version = "1.3.2";
src = fetchurl {
url = "http://tthsum.devs.nu/pkg/tthsum-${version}.tar.bz2";
sha256 = "0z6jq8lbg9rasv98kxfs56936dgpgzsg3yc9k52878qfw1l2bp59";
};
installPhase = ''
mkdir -p $out/bin $out/share/man/man1
cp share/tthsum.1.gz $out/share/man/man1
cp obj-unix/tthsum $out/bin
'';
meta = with stdenv.lib; {
description = "An md5sum-alike program that works with Tiger/THEX hashes";
longDescription = ''
tthsum generates or checks TTH checksums (root of the THEX hash
tree). The Merkle Hash Tree, invented by Ralph Merkle, is a hash
construct that exhibits desirable properties for verifying the
integrity of files and file subranges in an incremental or
out-of-order fashion. tthsum uses the Tiger hash algorithm for
both the internal and the leaf nodes.
The specification of the Tiger hash algorithm is at:
http://www.cs.technion.ac.il/~biham/Reports/Tiger/
The specification of the THEX algorithm is at:
http://adc.sourceforge.net/draft-jchapweske-thex-02.html
'';
homepage = http://tthsum.devs.nu/;
license = licenses.gpl3Plus;
maintainers = [ maintainers.ebzzry ];
platforms = platforms.unix;
};
}

View File

@ -1,21 +1,21 @@
# This file is autogenerated from update.sh in the parent directory.
{
dev = {
version = "47.0.2503.0";
sha256 = "1f8swcnrhzh6rc1vyhr6zjwbs74vifr2dmpqppyqa5n8wp2gyhmg";
sha256bin32 = "0mb047g1x3nc51wqbkiss2q3dxwgvi0ah4x2i9fwy4wfrvm57jnl";
sha256bin64 = "0cxma0rj70cwzhmx10ib2k60q4w2gar3h55l1pp8b1wgb1pm1vdk";
version = "47.0.2508.0";
sha256 = "1jmcvbimj3x91czvclnqbp8w2nfqhk2bd7bw9yd37c576md1wnw2";
sha256bin32 = "10spq63yfyzw419bz22r2g5rmnaxy5861715mkrcbpfm8cylzmzh";
sha256bin64 = "1ycdp37ikdc9w4hp9qgpzjp47zh37g01ax8x4ack202vrv0dxhsh";
};
beta = {
version = "46.0.2490.22";
sha256 = "0cpdv1x49xdcparpwq96a7axk16jpj8jhvafmxzh9zfkl1xxvp2i";
sha256bin32 = "0y4mirk0qrih7nlkyxg2qbhmzrkz4fa8ng5sgbh9vw3pjv0djc2s";
sha256bin64 = "0vlfjq6fxn2snan2kj4gf35iy2xb444hklv94vm4rwmfydygg2bw";
version = "46.0.2490.33";
sha256 = "196b49mqwkmz1i8qbrfmkxwd74wl40ncyyllj6kcfsq7mpms11ci";
sha256bin32 = "0488cspmnk14jjb6v5c6y3070rmcxsfngyam5mg42q0fcz4593l1";
sha256bin64 = "1kn0k8gpjnm1xsdiby76phwr0i8yb1w9mzmnf7ppj5cddikc5n3v";
};
stable = {
version = "45.0.2454.85";
sha256 = "14acjc80dmypybbvm087szp0g0m1gil5hjj02x8c6k7alsjh731y";
sha256bin32 = "1945m765a05wfdfslrb22r1jpicyghfkf4h7ijzw1z9whmxa9y1v";
sha256bin64 = "0d63akpr3yp128v01xgz1nd364w7p89gkvjpr4qz99q67dh3z1q1";
version = "45.0.2454.93";
sha256 = "1iraimblbzp9q16s5q7rbbb7079v095kr8dzqq1wwdb1bvcsllh6";
sha256bin32 = "1gndmychajm4qb623k57zirp72w4y1vfxp17gyrbjpg4kzbi1qcg";
sha256bin64 = "107l7f7crhcsv4xa219lmnsg2i7jqi5zly71cix54qg2bb7wgfwn";
};
}

View File

@ -3,6 +3,8 @@
, alsaLib, dbus_libs, gtk2, libpulseaudio, openssl, xlibs
}:
assert stdenv.isLinux;
stdenv.mkDerivation rec {
name = "jitsi-${version}";
@ -47,11 +49,14 @@ stdenv.mkDerivation rec {
installPhase = ''
mkdir -p $out
cp -a lib $out/
rm -rf $out/lib/native/solaris
cp -a sc-bundles $out/
mkdir $out/bin
cp resources/install/generic/run.sh $out/bin/jitsi
chmod +x $out/bin/jitsi
substituteInPlace $out/bin/jitsi --replace '@JAVA@' '${jdk}/bin/java'
substituteInPlace $out/bin/jitsi \
--subst-var-by JAVA ${jdk}/bin/java \
--subst-var-by EXTRALIBS ${gtk2}/lib
patchShebangs $out
libPath="$libPath:${jdk.jre.home}/lib/${jdk.architecture}"

View File

@ -7,7 +7,7 @@
+
+#mkdir -p $HOME/.sip-communicator/log
+
+cd "$( dirname "$( dirname "${BASH_SOURCE[0]}" )" )"
+cd "$(dirname "$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")")"
# Get architecture
ARCH=`uname -m | sed -e s/x86_64/64/ -e s/i.86/32/`
@ -24,4 +24,4 @@
export PATH=$PATH:native
-java $CLIENTARGS -classpath "lib/felix.jar:sc-bundles/sc-launcher.jar:sc-bundles/util.jar:lib/" -Djava.library.path=native -Dfelix.config.properties=file:./lib/felix.client.run.properties -Djava.util.logging.config.file=lib/logging.properties net.java.sip.communicator.launcher.SIPCommunicator
+exec @JAVA@ $CLIENTARGS -classpath "lib/felix.jar:sc-bundles/sc-launcher.jar:sc-bundles/util.jar:lib/" -Djava.library.path=$NATIVELIBS -Dfelix.config.properties=file:lib/felix.client.run.properties -Djava.util.logging.config.file=lib/logging.properties net.java.sip.communicator.launcher.SIPCommunicator
+LD_LIBRARY_PATH=@EXTRALIBS@ exec @JAVA@ $CLIENTARGS -classpath "lib/felix.jar:sc-bundles/sc-launcher.jar:sc-bundles/util.jar:lib/" -Djava.library.path=$NATIVELIBS -Dfelix.config.properties=file:lib/felix.client.run.properties -Djava.util.logging.config.file=lib/logging.properties net.java.sip.communicator.launcher.SIPCommunicator

View File

@ -1,7 +1,7 @@
{ fetchurl, stdenv
, curl, dbus, dbus_glib, enchant, gtk, gnutls, gnupg, gpgme, libarchive
, libcanberra, libetpan, libnotify, libsoup, libxml2, networkmanager, openldap
, perl, pkgconfig, poppler, python, webkitgtk2
, perl, pkgconfig, poppler, python, shared_mime_info, webkitgtk2
# Build options
# TODO: A flag to build the manual.
@ -47,6 +47,8 @@ stdenv.mkDerivation {
sha256 = "0w13xzri9d3165qsxf1dig1f0gxn3ib4lysfc9pgi4zpyzd0zgrw";
};
patches = [ ./mime.patch ];
buildInputs =
[ curl dbus dbus_glib gtk gnutls libetpan perl pkgconfig python ]
++ optional enableSpellcheck enchant
@ -80,8 +82,12 @@ stdenv.mkDerivation {
++ optional (!enablePluginVcalendar) "--disable-vcalendar-plugin"
++ optional (!enableSpellcheck) "--disable-enchant";
enableParallelBuilding = true;
postInstall = ''
mkdir -p $out/share/applications
cp claws-mail.desktop $out/share/applications
ln -sT ${shared_mime_info}/share/mime $out/share/mime
'';
}

View File

@ -0,0 +1,14 @@
--- a/src/procmime.c 2015-09-18 04:03:11.767654094 -0700
+++ b/src/procmime.c 2015-09-18 04:08:38.834503034 -0700
@@ -1196,11 +1196,7 @@
if (mime_type_list)
return mime_type_list;
-#if defined(__NetBSD__) || defined(__OpenBSD__) || defined(__FreeBSD__)
if ((fp = procmime_fopen(DATAROOTDIR "/mime/globs", "rb")) == NULL)
-#else
- if ((fp = procmime_fopen("/usr/share/mime/globs", "rb")) == NULL)
-#endif
{
fp_is_glob_file = FALSE;
if ((fp = procmime_fopen("/etc/mime.types", "rb")) == NULL) {

View File

@ -17,13 +17,13 @@ assert javahlBindings -> jdk != null && perl != null;
stdenv.mkDerivation (rec {
version = "1.8.14";
version = "1.9.1";
name = "subversion-${version}";
src = fetchurl {
url = "mirror://apache/subversion/${name}.tar.bz2";
sha1 = "0698efc58373e7657f6dd3ce13cab7b002ffb497";
sha1 = "1244a741dbcf24f2b1d165225f0159a0c994e37a";
};
buildInputs = [ zlib apr aprutil sqlite ]

View File

@ -1,16 +1,16 @@
{ stdenv, fetchurl, pkgconfig, intltool, itstool, makeWrapper
, pythonPackages, gst, clutter-gst, clutter-gtk, hicolor_icon_theme
, gobjectIntrospection, clutter, gtk3, librsvg, gnome3, libnotify
, python3Packages, gst, clutter-gtk, hicolor_icon_theme
, gobjectIntrospection, librsvg, gnome3, libnotify
}:
let
version = "0.93";
version = "0.94";
in stdenv.mkDerivation rec {
name = "pitivi-${version}";
src = fetchurl {
url = "mirror://gnome/sources/pitivi/${version}/${name}.tar.xz";
sha256 = "0z89dwrd7akhkap270i372yszqib8yqcymv78lhdmn3a8bsa7jhp";
sha256 = "1v7s0qsibwykkmknspjhpdrj80s987pvbl01kh34k4aspi1hcapm";
};
meta = with stdenv.lib; {
@ -29,15 +29,15 @@ in stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig intltool itstool makeWrapper ];
buildInputs = [
gobjectIntrospection clutter-gst clutter-gtk librsvg gnome3.gnome_desktop
gobjectIntrospection clutter-gtk librsvg gnome3.gnome_desktop
gnome3.defaultIconTheme
gnome3.gsettings_desktop_schemas libnotify
] ++ (with gst; [
gstreamer gst-python gst-editing-services
gstreamer gst-editing-services
gst-plugins-base gst-plugins-good
gst-plugins-bad gst-plugins-ugly gst-libav
]) ++ (with pythonPackages; [
python pygobject3 pyxdg numpy pycairo sqlite3
]) ++ (with python3Packages; [
python pygobject3 gst-python pyxdg numpy pycairo sqlite3
]);
preFixup = ''

View File

@ -6,7 +6,7 @@
, mpeg2dec, udev, gnutls, avahi, libcddb, libjack2, SDL, SDL_image
, libmtp, unzip, taglib, libkate, libtiger, libv4l, samba, liboggz
, libass, libva, libdvbpsi, libdc1394, libraw1394, libopus
, libvdpau
, libvdpau, libsamplerate
, onlyLibVLC ? false
, qt4 ? null, qt5 ? null, withQt5 ? false
, jackSupport ? false
@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
udev gnutls avahi libcddb SDL SDL_image libmtp unzip taglib
libkate libtiger libv4l samba liboggz libass libdvbpsi libva
xlibs.xlibs xlibs.libXv xlibs.libXvMC xlibs.libXpm xlibs.xcbutilkeysyms
libdc1394 libraw1394 libopus libebml libmatroska libvdpau
libdc1394 libraw1394 libopus libebml libmatroska libvdpau libsamplerate
]
++ (if withQt5 then with qt5; [ base ] else [qt4])
++ optional jackSupport libjack2;
@ -47,6 +47,7 @@ stdenv.mkDerivation rec {
"--enable-ncurses"
"--enable-vdpau"
"--enable-dvdnav"
"--enable-samplerate"
]
++ optional onlyLibVLC "--disable-vlc";

View File

@ -142,10 +142,11 @@ while (scalar(keys %postponed) > 0) {
# Create the symlinks.
my $extraPrefix = $ENV{"extraPrefix"};
my $nrLinks = 0;
foreach my $relName (sort keys %symlinks) {
my ($target, $priority) = @{$symlinks{$relName}};
my $abs = "$out/$relName";
my $abs = "$out" . "$extraPrefix" . "/$relName";
next unless isInPathsToLink $relName;
if ($target eq "") {
#print "creating directory $relName\n";

View File

@ -21,14 +21,20 @@
# directories in the list is not symlinked.
pathsToLink ? ["/"]
, # Shell command to run after building the symlink tree.
, # Root the result in directory "$out${extraPrefix}", e.g. "/share".
extraPrefix ? ""
, # Shell commands to run after building the symlink tree.
postBuild ? ""
, # Additional inputs. Handy e.g. if using makeWrapper in `postBuild`.
buildInputs ? []
, passthru ? {}
}:
runCommand name
{ inherit manifest ignoreCollisions passthru pathsToLink postBuild;
{ inherit manifest ignoreCollisions passthru pathsToLink extraPrefix postBuild buildInputs;
pkgs = builtins.toJSON (map (drv: {
paths = [ drv ]; # FIXME: handle multiple outputs
priority = drv.meta.priority or 5;

View File

@ -15,6 +15,7 @@ stdenv.mkDerivation {
substituteInPlace src/dmd/posix.mak --replace g++ clang++
'';
# Buid and install are based on http://wiki.dlang.org/Building_DMD
buildPhase = ''
cd src/dmd
make -f posix.mak INSTALL_DIR=$out
@ -50,7 +51,7 @@ stdenv.mkDerivation {
cd $out/bin
tee dmd.conf << EOF
[Environment]
DFLAGS=-I$out/include/d2 -L-L$out/lib -L--no-warn-search-mismatch -L--export-dynamic
DFLAGS=-I$out/include/d2 -L-L$out/lib ${stdenv.lib.optionalString (!stdenv.cc.isClang) "-L--no-warn-search-mismatch -L--export-dynamic"}
EOF
'';

View File

@ -6,7 +6,7 @@ let
mpfr m4 binutils emacs gmp
libX11 xproto inputproto libXi
libXext xextproto libXt libXaw libXmu
zlib which texinfo texLive
zlib which texinfo
];
in

View File

@ -1,26 +1,26 @@
{ stdenv, fetchurl, jdk, gtk2, xulrunner, zip, pkgconfig, perl, npapi_sdk, bash }:
{ stdenv, fetchurl, jdk, gtk2, xulrunner, zip, pkgconfig, perl, npapi_sdk, bash, bc }:
stdenv.mkDerivation rec {
name = "icedtea-web-${version}";
version = "1.6";
version = "1.6.1";
src = fetchurl {
url = "http://icedtea.wildebeest.org/download/source/${name}.tar.gz";
sha256 = "0z8iirvpciai55s4vhpfkhyx4h4hm6dqy4pg4c61pia3innqd4qn";
sha256 = "0869j9jn0z5b5pfspp4v5cj2ksmbqmmmjhqicn4kqc6wr6v6md59";
};
buildInputs = [ gtk2 xulrunner zip pkgconfig npapi_sdk ];
nativeBuildInputs = [ pkgconfig bc perl ];
buildInputs = [ gtk2 xulrunner zip npapi_sdk ];
preConfigure = ''
substituteInPlace javac.in --replace '#!/usr/bin/perl' '#!${perl}/bin/perl'
configureFlags="BIN_BASH=${bash}/bin/bash $configureFlags"
#patchShebangs javac.in
configureFlagsArray+=("BIN_BASH=${bash}/bin/bash")
'';
configureFlags = [
"--with-jdk-home=${jdk.home}"
"--disable-docs"
];
mozillaPlugin = "/lib";

View File

@ -79,7 +79,17 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ gfortran git m4 patchelf perl which python2 ];
makeFlags =
[
let
arch = head (splitString "-" stdenv.system);
march =
{ "x86_64-linux" = "x86-64";
"x86_64-darwin" = "x86-64";
"i686-linux" = "i686";
}."${stdenv.system}" or (throw "unsupported system: ${stdenv.system}");
in [
"ARCH=${arch}"
"MARCH=${march}"
"JULIA_CPU_TARGET=${march}"
"PREFIX=$(out)"
"prefix=$(out)"
"SHELL=${stdenv.shell}"
@ -133,8 +143,6 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
# Test fail on i686 (julia version 0.3.10)
doCheck = !stdenv.isi686;
checkTarget = "testall";
meta = {
@ -142,6 +150,6 @@ stdenv.mkDerivation rec {
homepage = "http://julialang.org/";
license = stdenv.lib.licenses.mit;
maintainers = with stdenv.lib.maintainers; [ raskin ttuegel ];
platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" ];
platforms = [ "x86_64-linux" "x86_64-darwin" ];
};
}

View File

@ -182,6 +182,9 @@ let result = stdenv.mkDerivation rec {
passthru.home = result;
meta.license = stdenv.lib.licenses.unfree;
meta = with stdenv.lib; {
license = licenses.unfree;
platforms = [ "i686-linux" "x86_64-linux" ]; # some inherit jre.meta.platforms
};
}; in result

View File

@ -1,12 +1,12 @@
{ fetchurl, stdenv }:
let version = "0.9.14"; in
stdenv.mkDerivation {
stdenv.mkDerivation rec {
name = "check-${version}";
version = "0.10.0";
src = fetchurl {
url = "mirror://sourceforge/check/${version}/check-${version}.tar.gz";
sha256 = "02l4g79d81s07hzywcv1knwj5dyrwjiq2pgxaz7kidxi8m364wn2";
sha256 = "0lhhywf5nxl3dd0hdakra3aasl590756c9kmvyifb3vgm9k0gxgm";
};
# Test can randomly fail: http://hydra.nixos.org/build/7243912

View File

@ -2,15 +2,16 @@
stdenv.mkDerivation rec {
baseName="czmq";
version="3.0.0-rc1";
version="3.0.2";
name="${baseName}-${version}";
src = fetchurl {
url = "http://download.zeromq.org/${name}.tar.gz";
sha256 = "1g3rk3fz7xzsbqcdcwn0x18nmiyr70k47kg00gdrq8g10li8mmd9";
sha256 = "16k9awrhdsymx7dnmvqcnkaq8lz8x8zppy6sh7ls8prpd6mkkjlb";
};
buildInputs = [ zeromq ];
# Needs to be propagated for the .pc file to work
propagatedBuildInputs = [ zeromq ];
meta = with stdenv.lib; {
homepage = "http://czmq.zeromq.org/";

View File

@ -10,11 +10,11 @@ composableDerivation.composableDerivation {} rec {
# (if args.use_svn then ["libtool" "autoconf" "automake" "swig"] else [])
# // edf { name = "ruby"; enable = { buildInputs = [ ruby ]; };}
name = "geos-3.4.2";
name = "geos-3.5.0";
src = fetchurl {
url = "http://download.osgeo.org/geos/${name}.tar.bz2";
sha256 = "0lvcs8x9as5jlxilykgg3i4220x8m4z59b2ngfapl219gvgvzs0m";
sha256 = "49982b23bcfa64a53333dab136b82e25354edeb806e5a2e2f5b8aa98b1d0ae02";
};
enableParallelBuilding = true;

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "gnu-efi-${version}";
version = "3.0.2";
version = "3.0.3";
src = fetchurl {
url = "mirror://sourceforge/gnu-efi/${name}.tar.bz2";
sha256 = "1mxl6xarwickhssn0nc5hyvayyf2cjh5p10l37jd1ymirl75hjqr";
sha256 = "1jxlypkgb8bd1c114x96i699ib0glb5aca9dv56j377x2ldg4c65";
};
buildInputs = [ pciutils ];

View File

@ -13,8 +13,6 @@ rec {
gst-libav = callPackage ./libav { inherit gst-plugins-base; };
gst-python = callPackage ./python { inherit gst-plugins-base gstreamer; };
gnonlin = callPackage ./gnonlin { inherit gst-plugins-base; };
gst-editing-services = callPackage ./ges { inherit gnonlin; };

View File

@ -1,5 +1,6 @@
{ fetchurl, stdenv, pkgconfig, python, gstreamer
, gst-plugins-base, pygtk, pygobject3
{ fetchurl, stdenv, pkgconfig, python
, gst-plugins-base, pygobject3
, ncurses
}:
stdenv.mkDerivation rec {
@ -15,15 +16,16 @@ stdenv.mkDerivation rec {
patches = [ ./different-path-with-pygobject.patch ];
buildInputs =
[ pkgconfig gst-plugins-base pygtk pygobject3 ]
;
nativeBuildInputs = [ pkgconfig python ];
# XXX: in the Libs.private field of python3.pc
buildInputs = [ ncurses ];
preConfigure = ''
export configureFlags="$configureFlags --with-pygi-overrides-dir=$out/lib/${python.libPrefix}/site-packages/gi/overrides"
'';
propagatedBuildInputs = [ gstreamer python ];
propagatedBuildInputs = [ gst-plugins-base pygobject3 ];
meta = {
homepage = http://gstreamer.freedesktop.org;

View File

@ -16,7 +16,8 @@ stdenv.mkDerivation rec {
] else null;
postInstall = ''
sed -i s/-lncurses/-lncursesw/g $out/lib/pkgconfig/libedit.pc
find $out/lib -type f | grep '\.\(la\|pc\)''$' | xargs sed -i \
-e 's,-lncurses[a-z]*,-L${ncurses}/lib -lncursesw,g'
'';
configureFlags = [ "--enable-widec" ];

View File

@ -0,0 +1,18 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation {
name = "libhangul-0.1.0";
src = fetchurl {
url = "https://libhangul.googlecode.com/files/libhangul-0.1.0.tar.gz";
sha256 = "0ni9b0v70wkm0116na7ghv03pgxsfpfszhgyj3hld3bxamfal1ar";
};
meta = with stdenv.lib; {
description = "Core algorithm library for Korean input routines";
homepage = https://code.google.com/p/libhangul;
license = licenses.lgpl21;
maintainers = [ maintainers.ianwookim ];
platforms = platforms.linux;
};
}

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, libibumad }:
stdenv.mkDerivation rec {
name = "libibmad-1.3.11";
name = "libibmad-1.3.12";
src = fetchurl {
url = "https://www.openfabrics.org/downloads/management/${name}.tar.gz";
sha256 = "1d5lh2lhz7zzs7bbjjv9i0pj3v1xgp8sdmcr425h563v2c3bp53h";
sha256 = "0ywkz0rskci414r6h6jd4iz4qjbj37ga2k91z1mlj9xrnl9bbgzi";
};
buildInputs = [ libibumad ];

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "libibumad-1.3.9";
name = "libibumad-1.3.10.2";
src = fetchurl {
url = "https://www.openfabrics.org/downloads/management/${name}.tar.gz";
sha256 = "0j52aiwfgasf7bzx65svd5h2ya7848c5racf191i8irsxa155q74";
sha256 = "0bkygb3lbpaj6s4vsyixybrrkcnilbijv4ga5p1xdwyr3gip83sh";
};
meta = with stdenv.lib; {

View File

@ -0,0 +1,28 @@
{ stdenv, fetchFromGitHub, autoreconfHook, openssl, curl }:
stdenv.mkDerivation rec {
name = "libksi-2015-07-03";
src = fetchFromGitHub {
owner = "rgerhards";
repo = "libksi";
rev = "b1ac0346395b4f52ec42a050bf33ac223f194443";
sha256 = "0gg0fl56flwqmsph7j92lgybaa39i715w0nwgkcr58njm0c02wlw";
};
nativeBuildInputs = [ autoreconfHook ];
buildInputs = [ openssl curl ];
configureFlags = [
"--with-openssl=${openssl}"
"--with-cafile=/etc/ssl/certs/ca-certificates.crt"
];
meta = with stdenv.lib; {
homepage = "https://github.com/rgerhards/libksi";
description = "Keyless Signature Infrastructure API library";
license = licenses.asl20;
platforms = platforms.all;
maintainers = with maintainers; [ wkennington ];
};
}

View File

@ -1,14 +1,15 @@
{ stdenv, fetchurl, pkgconfig, libestr, json_c, pcre }:
stdenv.mkDerivation rec {
name = "liblognorm-1.1.1";
name = "liblognorm-1.1.2";
src = fetchurl {
url = "http://www.liblognorm.com/files/download/${name}.tar.gz";
sha256 = "1wi28n5ahajvl64wfn7jpvnskccd6837i0cyq8w8cvrm362b6pd7";
sha256 = "0v2k5awr6vsbp36gybrys3zfkl675sywhsh4lnm7f21inlpi2nlk";
};
buildInputs = [ pkgconfig libestr json_c pcre ];
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ libestr json_c pcre ];
configureFlags = [ "--enable-regexp" ];

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, pkgconfig, libmnl }:
stdenv.mkDerivation rec {
name = "libnftnl-1.0.3";
name = "libnftnl-1.0.5";
src = fetchurl {
url = "netfilter.org/projects/libnftnl/files/${name}.tar.bz2";
sha256 = "1xr7gis51z9r96s5m5z3dw3f5jx2m1qb7mpvl69631m6nvmff2ng";
sha256 = "15z4kcsklbvy94d24p2r0avyhc2rsvygjqr3gyccg2z30akzbm7n";
};
buildInputs = [ pkgconfig libmnl ];

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "libraw1394-2.1.0";
name = "libraw1394-2.1.1";
src = fetchurl {
url = "mirror://kernel/linux/libs/ieee1394/${name}.tar.gz";
sha256 = "0w5sw06p51wfq2ahgql93ljkkp3hqprifzcxq8dq71c8zcbgyg58";
sha256 = "0x6az154wr7wv3945485grjvpk604khv34dbaph6vmc1zdasqq59";
};
meta = with stdenv.lib; {

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, pkgconfig, gnutls, zlib }:
stdenv.mkDerivation rec {
name = "librelp-1.2.7";
name = "librelp-1.2.8";
src = fetchurl {
url = "http://download.rsyslog.com/librelp/${name}.tar.gz";
sha256 = "1lfpd06cchi1mhlxwq0xhmbx42b8isx9677v9h80c9vpf4f4lhrs";
sha256 = "1qxj7isa2d10aw6c4a9pd3fx08vv06rrhac312avgcjmdqaa88r6";
};
buildInputs = [ pkgconfig gnutls zlib ];

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "libressl-${version}";
version = "2.2.2";
version = "2.2.3";
src = fetchurl {
url = "mirror://openbsd/LibreSSL/${name}.tar.gz";
sha256 = "0551i4jbs81ark3jy6nycqpyqn7rg30nvcdjvdg58s6l6fgv1570";
sha256 = "10nq2rpyzgl7xhdip9mmn7hzb6hcjffbjcb04jchxmlivwdc5k51";
};
enableParallelBuilding = true;

View File

@ -18,6 +18,6 @@ stdenv.mkDerivation {
homepage = https://github.com/bji/libs3;
description = "A library for interfacing with amazon s3";
license = licenses.lgpl3;
platforms = platforms.unix;
platforms = platforms.linux;
};
}

View File

@ -1,14 +1,15 @@
{ stdenv, fetchurl, pkgconfig, json_c, hidapi }:
stdenv.mkDerivation rec {
name = "libu2f-host-0.0.4";
name = "libu2f-host-1.0.0";
src = fetchurl {
url = "https://developers.yubico.com/libu2f-host/Releases/${name}.tar.xz";
sha256 = "1mpa4m3vchqa0rm1zw0fgby3yhp35k4y6jlqdd02difm3dhk28l5";
sha256 = "0x232rp325k1l3rdh1b9d7w3w2z2lhjmp95v4mlmd8pybjdnpi8q";
};
buildInputs = [ pkgconfig json_c hidapi ];
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ json_c hidapi ];
meta = with stdenv.lib; {
homepage = https://developers.yubico.com/libu2f-host;

View File

@ -0,0 +1,27 @@
{ fetchgit, stdenv, cmake, openssl, zlib }:
stdenv.mkDerivation rec {
name = "libwebsockets-1.4";
src = fetchgit {
url = "git://git.libwebsockets.org/libwebsockets";
rev = "16fb0132cec0fcced29bce6d86eaf94a9beb9785";
sha256 = "fa4c81f86dfc39211b78c53c804efc19e15b81ccb05e72699220bbed27204c7d";
};
buildInputs = [ cmake openssl zlib ];
meta = {
description = "Light, portable C library for websockets";
longDescription = ''
Libwebsockets is a lightweight pure C library built to
use minimal CPU and memory resources, and provide fast
throughput in both directions.
'';
homepage = https://libwebsockets.org/trac/libwebsockets;
# See http://git.libwebsockets.org/cgi-bin/cgit/libwebsockets/tree/LICENSE
license = stdenv.lib.licenses.gpl2Plus;
maintainers = [ ];
platforms = stdenv.lib.platforms.all;
};
}

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, pkgconfig, libxml2, glibmm, perl }:
stdenv.mkDerivation rec {
name = "libxml++-2.38.0";
name = "libxml++-2.38.1";
src = fetchurl {
url = "mirror://gnome/sources/libxml++/2.38/${name}.tar.xz";
sha256 = "0ihk7fprpshs0gp38x2m5jhvrph3iwr0wy1h1qqvh3rjblzv162n";
sha256 = "0px0ljcf9rsfa092dzmm097yn7wln6d5fgsvj9lnrnq3kcc2j9c8";
};
nativeBuildInputs = [ pkgconfig perl ];

View File

@ -1,14 +1,15 @@
{ stdenv, fetchurl, pkgconfig, pcsclite, libzip, help2man }:
stdenv.mkDerivation rec {
name = "libykneomgr-0.1.6";
name = "libykneomgr-0.1.7";
src = fetchurl {
url = "https://developers.yubico.com/libykneomgr/Releases/${name}.tar.gz";
sha256 = "15fa4sslbzhzmkf0xik36as9lsmys1apqwjxv8sx7qlpacmxy3bw";
sha256 = "0nlzl9g0gjb54h43gjhg8d25bq3m3s794cq671irpqkn94kj1knw";
};
buildInputs = [ pkgconfig pcsclite libzip help2man ];
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ pcsclite libzip help2man ];
configureFlags = [
"--with-backend=pcsc"

View File

@ -28,5 +28,6 @@ stdenv.mkDerivation {
meta = {
homepage = http://www.mozilla.org/projects/nspr/;
description = "Netscape Portable Runtime, a platform-neutral API for system-level and libc-like functions";
platforms = stdenv.lib.platforms.all;
};
}

View File

@ -82,5 +82,6 @@ in stdenv.mkDerivation rec {
meta = {
homepage = https://developer.mozilla.org/en-US/docs/NSS;
description = "A set of libraries for development of security-enabled client and server applications";
platforms = stdenv.lib.platforms.all;
};
}

View File

@ -0,0 +1,25 @@
From 6fe51a9ab04fd28bbc171da3cf12f1c1040d6629 Mon Sep 17 00:00:00 2001
From: Howard Chu <hyc@openldap.org>
Date: Thu, 10 Sep 2015 00:37:32 +0100
Subject: [PATCH] ITS#8240 remove obsolete assert
---
libraries/liblber/io.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libraries/liblber/io.c b/libraries/liblber/io.c
index 85c3e23..c05dcf8 100644
--- a/libraries/liblber/io.c
+++ b/libraries/liblber/io.c
@@ -679,7 +679,7 @@ done:
return (ber->ber_tag);
}
- assert( 0 ); /* ber structure is messed up ?*/
+ /* invalid input */
return LBER_DEFAULT;
}
--
1.7.10.4

View File

@ -8,6 +8,9 @@ stdenv.mkDerivation rec {
sha256 = "0qwfpb5ipp2l76v11arghq5mr0sjc6xhjfg8a0kgsaw5qpib1dzf";
};
# Should be removed with >=2.4.43
patches = [ ./CVE-2015-6908.patch ];
outputs = [ "out" "man" ];
buildInputs = [ openssl cyrus_sasl db groff ];

View File

@ -1,6 +1,6 @@
{ stdenv, fetchurl, fetchpatch, pkgconfig, libiconv, libintlOrEmpty
{ stdenv, lib, fetchurl, fetchpatch, pkgconfig, libiconv, libintlOrEmpty
, zlib, curl, cairo, freetype, fontconfig, lcms, libjpeg, openjpeg
, qt4Support ? false, qt4 ? null, qt5Support ? false, qt5 ? null
, minimal ? false, qt4Support ? false, qt4 ? null, qt5Support ? false, qt5 ? null
, utils ? false, suffix ? "glib"
}:
@ -16,28 +16,31 @@ stdenv.mkDerivation rec {
inherit sha256;
};
outputs = [ "out" "doc" ];
outputs = [ "out" ] ++ lib.optional (!minimal) "doc";
patches = [ ./datadir_env.patch ];
propagatedBuildInputs = with stdenv.lib;
[ zlib cairo freetype fontconfig libjpeg lcms curl openjpeg ]
# TODO: reduce propagation to necessary libs
propagatedBuildInputs = with lib;
[ zlib freetype fontconfig libjpeg lcms curl openjpeg ]
++ optional (!minimal) cairo
++ optional qt4Support qt4
++ optional qt5Support qt5.base;
nativeBuildInputs = [ pkgconfig libiconv ] ++ libintlOrEmpty;
configureFlags =
configureFlags = with lib;
[
"--enable-xpdf-headers"
"--enable-libcurl"
"--enable-zlib"
]
++ stdenv.lib.optional (!utils) "--disable-utils";
++ optionals minimal [ "--disable-poppler-glib" "--disable-poppler-cpp" ]
++ optional (!utils) "--disable-utils";
enableParallelBuilding = true;
meta = {
meta = with lib; {
homepage = http://poppler.freedesktop.org/;
description = "A PDF rendering library";
@ -45,8 +48,8 @@ stdenv.mkDerivation rec {
Poppler is a PDF rendering library based on the xpdf-3.0 code base.
'';
license = stdenv.lib.licenses.gpl2;
platforms = stdenv.lib.platforms.all;
maintainers = with stdenv.lib.maintainers; [ ttuegel ];
license = licenses.gpl2;
platforms = platforms.all;
maintainers = with maintainers; [ ttuegel ];
};
}

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation {
name = "proj-4.9.1";
name = "proj-4.9.2";
src = fetchurl {
url = http://download.osgeo.org/proj/proj-4.9.1.tar.gz;
sha256 = "06f36s7yi6yky92g235kj9wkcckm04qgzxnj0fla3icb7y7ki87w";
url = http://download.osgeo.org/proj/proj-4.9.2.tar.gz;
sha256 = "15kpcmz3qjxfrs6vq48mgyvb4vxscmwgkzrdcn71a60wxp8rmgv0";
};
meta = with stdenv.lib; {

View File

@ -0,0 +1,20 @@
{ stdenv, fetchurl, cmake, pkgconfig }:
stdenv.mkDerivation rec {
name = "resolv_wrapper-1.1.3";
src = fetchurl {
url = "mirror://samba/cwrap/${name}.tar.gz";
sha256 = "1h76155pnmd3pqxfyi00q0fg6v45ad9dhnjsqcsbzg18s626wyad";
};
nativeBuildInputs = [ cmake pkgconfig ];
meta = with stdenv.lib; {
description = "a wrapper for the user, group and hosts NSS API";
homepage = "https://git.samba.org/?p=uid_wrapper.git;a=summary";
license = licenses.bsd3;
maintainers = with maintainers; [ wkennington ];
platforms = platforms.all;
};
}

View File

@ -1,20 +1,17 @@
{ stdenv, fetchFromGitHub, pkgconfig, autoreconfHook }:
stdenv.mkDerivation rec {
name = "snappy-1.1.2";
name = "snappy-${version}";
version = "1.1.3";
src = fetchFromGitHub {
owner = "google";
repo = "snappy";
rev = "1ff9be9b8fafc8528ca9e055646f5932aa5db9c4";
sha256 = "1zyjj13max0z42g3ii54n3qn7rbcga34dbi26lpm7v5ya752shx7";
rev = version;
sha256 = "1w9pq8vag8c6m4ib0qbdbqzsnpwjvw01jbp15lgwg1rzwhvflm10";
};
buildInputs = [ pkgconfig autoreconfHook ];
preConfigure = ''
sh autogen.sh
'';
nativeBuildInputs = [ pkgconfig autoreconfHook ];
# -DNDEBUG for speed
configureFlags = [ "CXXFLAGS=-DNDEBUG" ];

View File

@ -1,14 +1,14 @@
{ stdenv, fetchurl, cmake, pkgconfig }:
stdenv.mkDerivation rec {
name = "socket_wrapper-1.1.3";
name = "socket_wrapper-1.1.4";
src = fetchurl {
url = "mirror://samba/cwrap/${name}.tar.gz";
sha256 = "04xfa4yhcaj63ymagmlx77fakrx3wb8ss42m15pmwjaiyi2xndx3";
sha256 = "0ypp7sx5rhn4jpmn5yxgr7mm5kkdcsa76xfnhgsvhagh1naqap2k";
};
buildInputs = [ cmake pkgconfig ];
nativeBuildInputs = [ cmake pkgconfig ];
meta = with stdenv.lib; {
description = "a library passing all socket communications through unix sockets";

View File

@ -6,11 +6,11 @@
with stdenv.lib;
stdenv.mkDerivation rec {
name = "spice-gtk-0.27";
name = "spice-gtk-0.29";
src = fetchurl {
url = "http://www.spice-space.org/download/gtk/${name}.tar.bz2";
sha256 = "0323j3q7gagi83fvxd7v9vdxqv2s3ziss44ici342hyv21qf0xah";
sha256 = "0wz9sm44gnmwjpmyacwd5jyzvhfl1wlf1dn3qda20si42cky5is4";
};
buildInputs = [
@ -23,9 +23,8 @@ stdenv.mkDerivation rec {
NIX_CFLAGS_COMPILE = "-fno-stack-protector";
preConfigure = ''
substituteInPlace gtk/Makefile.am \
substituteInPlace src/Makefile.am \
--replace '=codegendir pygtk-2.0' '=codegendir pygobject-2.0'
autoreconf -v --force --install
intltoolize -f
'';

View File

@ -1,13 +1,18 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "spice-protocol-0.12.7";
name = "spice-protocol-0.12.9";
src = fetchurl {
url = "http://www.spice-space.org/download/releases/${name}.tar.bz2";
sha256 = "1hhn94bw2l76h09sy05a15bs6zalsijnylyqpwcys5hq6rrwpiln";
sha256 = "0xkqycpqpkxjlcg4fk1vyv2vjni60s0fjx5l57918q0mvlsgh319";
};
postInstall = ''
mkdir -p $out/lib
ln -sv ../share/pkgconfig $out/lib/pkgconfig
'';
meta = with stdenv.lib; {
description = "Protocol headers for the SPICE protocol";
homepage = http://www.spice-space.org;

View File

@ -1,14 +1,15 @@
{ stdenv, fetchurl, libuuid, pkgconfig, libsodium }:
stdenv.mkDerivation rec {
name = "zeromq-4.1.2";
name = "zeromq-4.1.3";
src = fetchurl {
url = "http://download.zeromq.org/${name}.tar.gz";
sha256 = "09sr6ix4k25m3fw6c8xhicq5g27q0k1vlwfqai8iwlk8dnnjw5pr";
sha256 = "04gligbgr0phipjkwc0dyk1vr9306r6s4dbj85z7fxxk1n1ircv1";
};
buildInputs = [ libuuid pkgconfig libsodium ];
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ libuuid libsodium ];
meta = with stdenv.lib; {
branch = "4";

View File

@ -1,6 +1,12 @@
{stdenv, fetchurl, ocaml, findlib, which, ocaml_react, ocaml_ssl,
ocaml_lwt, ocamlnet, ocaml_pcre, cryptokit, tyxml, ipaddr, zlib,
libev, openssl, ocaml_sqlite3, tree, uutf}:
libev, openssl, ocaml_sqlite3, tree, uutf, makeWrapper
}:
let mkpath = p: n:
let v = stdenv.lib.getVersion ocaml; in
"${p}/lib/ocaml/${v}/site-lib/${n}";
in
stdenv.mkDerivation {
name = "ocsigenserver-2.5";
@ -12,7 +18,7 @@ stdenv.mkDerivation {
buildInputs = [ocaml which findlib ocaml_react ocaml_ssl ocaml_lwt
ocamlnet ocaml_pcre cryptokit tyxml ipaddr zlib libev openssl
ocaml_sqlite3 tree uutf];
ocaml_sqlite3 tree uutf makeWrapper ];
configureFlags = "--root $(out) --prefix /";
@ -23,6 +29,8 @@ stdenv.mkDerivation {
postFixup =
''
rm -rf $out/var/run
wrapProgram $out/bin/ocsigenserver \
--prefix CAML_LD_LIBRARY_PATH : "${mkpath ocaml_ssl "ssl"}:${mkpath ocaml_lwt "lwt"}:${mkpath ocamlnet "netsys"}:${mkpath ocamlnet "netstring"}:${mkpath ocaml_pcre "pcre"}:${mkpath cryptokit "cryptokit"}:${mkpath ocaml_sqlite3 "sqlite3"}"
'';
dontPatchShebangs = true;

View File

@ -1,24 +1,9 @@
{ stdenv, fetchurl, pkgconfig, wxGTK, pythonPackages, python, isPyPy }:
{ callPackage, ... } @ args:
assert wxGTK.unicode;
callPackage ./generic.nix (args // rec {
let version = "2.8.12.1"; in
version = "2.8.12.1";
if isPyPy then throw "wxPython-${version} not supported for interpreter ${python.executable}" else stdenv.mkDerivation {
name = "wxPython-${version}";
builder = ./builder.sh;
src = fetchurl {
url = "mirror://sourceforge/wxpython/wxPython-src-${version}.tar.bz2";
sha256 = "1l1w4i113csv3bd5r8ybyj0qpxdq83lj6jrc5p7cc10mkwyiagqz";
};
buildInputs = [ pkgconfig wxGTK (wxGTK.gtk) pythonPackages.python pythonPackages.wrapPython ];
passthru = { inherit wxGTK; };
sha256 = "1l1w4i113csv3bd5r8ybyj0qpxdq83lj6jrc5p7cc10mkwyiagqz";
meta = {
platforms = stdenv.lib.platforms.all;
};
}
})

View File

@ -1,29 +1,9 @@
{ stdenv, fetchurl, pkgconfig, wxGTK, pythonPackages, openglSupport ? true, python, isPyPy }:
{ callPackage, ... } @ args:
assert wxGTK.unicode;
callPackage ./generic.nix (args // rec {
with stdenv.lib;
version = "3.0.2.0";
let version = "3.0.0.0"; in
sha256 = "0qfzx3sqx4mwxv99sfybhsij4b5pc03ricl73h4vhkzazgjjjhfm";
if isPyPy then throw "wxPython-${version} not supported for interpreter ${python.executable}" else stdenv.mkDerivation {
name = "wxPython-${version}";
builder = ./builder3.0.sh;
src = fetchurl {
url = "mirror://sourceforge/wxpython/wxPython-src-${version}.tar.bz2";
sha256 = "af88695e820dd914e8375dc91ecb736f6fb605979bb38460ace61bbea494dc11";
};
buildInputs = [ pkgconfig wxGTK (wxGTK.gtk) pythonPackages.python pythonPackages.wrapPython ]
++ optional openglSupport pythonPackages.pyopengl;
inherit openglSupport;
passthru = { inherit wxGTK openglSupport; };
meta = {
platforms = stdenv.lib.platforms.all;
};
}
})

View File

@ -1,22 +0,0 @@
source $stdenv/setup
flags="WXPORT=gtk2 NO_HEADERS=1 BUILD_GLCANVAS=0 BUILD_OGL=0 UNICODE=1"
configurePhase() {
cd wxPython
}
buildPhase() {
python setup.py $flags build
}
installPhase() {
python setup.py $flags install --prefix=$out
# Ugly workaround for Nixpkgs/111.
ln -s $out/lib/python*/site-packages/wx-*-gtk2-unicode/* $out/lib/python*/site-packages
wrapPythonPrograms
}
genericBuild

View File

@ -1,22 +0,0 @@
source $stdenv/setup
flags="WXPORT=gtk2 NO_HEADERS=1 BUILD_GLCANVAS=${openglSupport?1:0} UNICODE=1"
configurePhase() {
cd wxPython
}
buildPhase() {
python setup.py $flags build
}
installPhase() {
python setup.py $flags install --prefix=$out
# Ugly workaround for Nixpkgs/111.
ln -s $out/lib/python*/site-packages/wx-*-gtk2-unicode/* $out/lib/python*/site-packages
wrapPythonPrograms
}
genericBuild

View File

@ -0,0 +1,32 @@
{ stdenv, fetchurl, pkgconfig, python, buildPythonPackage, isPy3k, isPyPy, wxGTK, openglSupport ? true, pyopengl
, version, sha256, ...
}:
assert wxGTK.unicode;
buildPythonPackage rec {
disabled = isPy3k || isPyPy;
doCheck = false;
name = "wxPython-${version}";
inherit version;
src = fetchurl {
url = "mirror://sourceforge/wxpython/wxPython-src-${version}.tar.bz2";
inherit sha256;
};
buildInputs = [ pkgconfig wxGTK (wxGTK.gtk) ]
++ stdenv.lib.optional openglSupport pyopengl;
preConfigure = "cd wxPython";
setupPyBuildFlags = [ "WXPORT=gtk2" "NO_HEADERS=1" "BUILD_GLCANVAS=${if openglSupport then "1" else "0"}" "UNICODE=1" ];
installPhase = ''
${python}/bin/${python.executable} setup.py ${stdenv.lib.concatStringsSep " " setupPyBuildFlags} install --prefix=$out
'';
passthru = { inherit wxGTK openglSupport; };
}

View File

@ -0,0 +1,48 @@
{ stdenv, fetchurl }:
let
version = "1.0";
srcs = {
lemon = fetchurl {
sha256 = "1grm95m2cnc61zim332g7z8nchmcy91ljf50k13lm421v0ygyyv6";
url = "http://www.sqlite.org/src/raw/tool/lemon.c?name=039f813b520b9395740c52f9cbf36c90b5d8df03";
name = "lemon.c";
};
lempar = fetchurl {
sha256 = "09nki0cwc5zrm365g6plhjxz3byhl9w117ab3yvrpds43ks1j85z";
url = "http://www.sqlite.org/src/raw/tool/lempar.c?name=3617143ddb9b176c3605defe6a9c798793280120";
name = "lempar.c";
};
};
in stdenv.mkDerivation {
name = "lemon-${version}";
phases = [ "buildPhase" "installPhase" ];
buildPhase = ''
sh -xc "$CC ${srcs.lemon} -o lemon"
'';
installPhase = ''
install -Dvm755 lemon $out/bin/lemon
install -Dvm644 ${srcs.lempar} $out/bin/lempar.c
'';
meta = with stdenv.lib; {
inherit version;
description = "An LALR(1) parser generator";
longDescription = ''
The Lemon program is an LALR(1) parser generator that takes a
context-free grammar and converts it into a subroutine that will parse a
file using that grammar. Lemon is similar to the much more famous
programs "yacc" and "bison", but is not compatible with either.
'';
homepage = http://www.hwaci.com/sw/lemon/;
license = licenses.publicDomain;
platforms = platforms.unix;
maintainers = with maintainers; [ nckx ];
};
}

View File

@ -6,20 +6,18 @@
let
# Version 3.15.7 breaks certain (but not all) PCL-based printers:
# https://github.com/NixOS/nixpkgs/commit/b0e46fc3ead209ef24ed6214bd41ef6e604af54f
version = "3.15.6";
version = "3.15.9";
name = "hplip-${version}";
src = fetchurl {
url = "mirror://sourceforge/hplip/${name}.tar.gz";
sha256 = "1jbnjw7vrn1qawrjfdv8j58w69q8ki1qkzvlh0nk8nxacpp17i9h";
sha256 = "0vcxz3gsqcamlzx61xm77h7c769ya8kdhzwafa9w2wvkf3l8zxd1";
};
plugin = fetchurl {
url = "http://www.openprinting.org/download/printdriver/auxfiles/HP/plugins/${name}-plugin.run";
sha256 = "1rymxahz12s1s37rri5qyvka6q0yi0yai08kgspg24176ry3a3fx";
sha256 = "1ahalw83xm8x0h6hljhnkknry1hny9flkrlzcymv8nmwgic0kjgs";
};
hplip_state =

View File

@ -1,183 +0,0 @@
{ stdenv, fetchurl, autoconf, automake, libtool, pkgconfig, perl, which
, glibc, flex, bison, python27, swig, dbus, pam
}:
let
apparmor-series = "2.9";
apparmor-patchver = "2";
apparmor-version = "${apparmor-series}.${apparmor-patchver}";
apparmor-meta = component: with stdenv.lib; {
homepage = http://apparmor.net/;
description = "Linux application security system - ${component}";
license = licenses.gpl2;
maintainers = with maintainers; [ phreedom thoughtpolice joachifm ];
platforms = platforms.linux;
};
apparmor-sources = fetchurl {
url = "https://launchpad.net/apparmor/${apparmor-series}/${apparmor-version}/+download/apparmor-${apparmor-version}.tar.gz";
sha256 = "1mayly7d7w959fya7z8q6kab2x3jcwhqhkpx36jsvpjhxkhmc4fh";
};
prePatchCommon = ''
substituteInPlace ./common/Make.rules --replace "/usr/bin/pod2man" "${perl}/bin/pod2man"
substituteInPlace ./common/Make.rules --replace "/usr/bin/pod2html" "${perl}/bin/pod2html"
substituteInPlace ./common/Make.rules --replace "/usr/include/linux/capability.h" "${glibc}/include/linux/capability.h"
substituteInPlace ./common/Make.rules --replace "/usr/share/man" "share/man"
'';
libapparmor = stdenv.mkDerivation {
name = "libapparmor-${apparmor-version}";
src = apparmor-sources;
buildInputs = [
autoconf
automake
bison
flex
dbus # requires patch to dbus ...
glibc
libtool
perl
pkgconfig
python27
swig
which
];
prePatch = prePatchCommon + ''
substituteInPlace ./libraries/libapparmor/src/Makefile.am --replace "/usr/include/netinet/in.h" "${glibc}/include/netinet/in.h"
substituteInPlace ./libraries/libapparmor/src/Makefile.in --replace "/usr/include/netinet/in.h" "${glibc}/include/netinet/in.h"
'';
buildPhase = ''
cd ./libraries/libapparmor
./autogen.sh
./configure --prefix="$out" --with-python --with-perl
make
'';
installPhase = ''
make install
'';
meta = apparmor-meta "library";
};
apparmor-utils = stdenv.mkDerivation {
name = "apparmor-utils-${apparmor-version}";
src = apparmor-sources;
buildInputs = [
python27
libapparmor
which
];
prePatch = prePatchCommon;
buildPhase = ''
cd ./utils
make LANGS=""
'';
installPhase = ''
make install LANGS="" DESTDIR="$out" BINDIR="$out/bin" VIM_INSTALL_PATH="$out/share" PYPREFIX=""
'';
meta = apparmor-meta "user-land utilities";
};
apparmor-parser = stdenv.mkDerivation {
name = "apparmor-parser-${apparmor-version}";
src = apparmor-sources;
buildInputs = [
libapparmor
bison
flex
which
];
prePatch = prePatchCommon + ''
substituteInPlace ./parser/Makefile --replace "/usr/bin/bison" "${bison}/bin/bison"
substituteInPlace ./parser/Makefile --replace "/usr/bin/flex" "${flex}/bin/flex"
substituteInPlace ./parser/Makefile --replace "/usr/include/linux/capability.h" "${glibc}/include/linux/capability.h"
## techdoc.pdf still doesn't build ...
substituteInPlace ./parser/Makefile --replace "manpages htmlmanpages pdf" "manpages htmlmanpages"
'';
buildPhase = ''
cd ./parser
make LANGS="" USE_SYSTEM=1 INCLUDEDIR=${libapparmor}/include
'';
installPhase = ''
make install LANGS="" USE_SYSTEM=1 INCLUDEDIR=${libapparmor}/include DESTDIR="$out" DISTRO="unknown"
'';
meta = apparmor-meta "rule parser";
};
apparmor-pam = stdenv.mkDerivation {
name = "apparmor-pam-${apparmor-version}";
src = apparmor-sources;
buildInputs = [
libapparmor
pam
pkgconfig
which
];
buildPhase = ''
cd ./changehat/pam_apparmor
make USE_SYSTEM=1
'';
installPhase = ''
make install DESTDIR="$out"
'';
meta = apparmor-meta "PAM service";
};
apparmor-profiles = stdenv.mkDerivation {
name = "apparmor-profiles-${apparmor-version}";
src = apparmor-sources;
buildInputs = [ which ];
buildPhase = ''
cd ./profiles
make
'';
installPhase = ''
make install DESTDIR="$out" EXTRAS_DEST="$out/share/apparmor/extra-profiles"
'';
meta = apparmor-meta "profiles";
};
apparmor-kernel-patches = stdenv.mkDerivation {
name = "apparmor-kernel-patches-${apparmor-version}";
src = apparmor-sources;
phases = ''unpackPhase installPhase'';
installPhase = ''
mkdir "$out"
cp -R ./kernel-patches "$out"
'';
meta = apparmor-meta "kernel patches";
};
in
{
inherit libapparmor apparmor-utils apparmor-parser apparmor-pam
apparmor-profiles apparmor-kernel-patches;
}

View File

@ -1,16 +0,0 @@
Description: allow parser to build even when not on Linux.
Author: Kees Cook <kees@debian.org>
Index: apparmor-debian/common/Make.rules
===================================================================
--- apparmor-debian.orig/common/Make.rules 2012-05-05 14:41:25.967259523 -0700
+++ apparmor-debian/common/Make.rules 2012-05-05 14:41:28.451291053 -0700
@@ -160,7 +160,7 @@
CAPABILITIES=$(shell echo "\#include <linux/capability.h>" | cpp -dM | LC_ALL=C sed -n -e '/CAP_EMPTY_SET/d' -e 's/^\#define[ \t]\+CAP_\([A-Z0-9_]\+\)[ \t]\+\([0-9xa-f]\+\)\(.*\)$$/CAP_\1/p' | sort)
.PHONY: list_capabilities
-list_capabilities: /usr/include/linux/capability.h
+list_capabilities:
@echo "$(CAPABILITIES)"
# =====================

View File

@ -1,98 +1,167 @@
{ stdenv, fetchurl
, autoconf, automake, libtool, makeWrapper
, perl, bison, flex, glibc, gettext, which, rpm, LocaleGettext
, bash, pam, TermReadKey, RpcXML, swig, python}:
stdenv.mkDerivation rec {
{ stdenv, fetchurl, makeWrapper, autoconf, autoreconfHook, automake, libtool, pkgconfig, perl, which
, glibc, flex, bison, python27Packages, swig, pam
}:
name = "apparmor-${version}";
version = "2.8.4";
let
apparmor-series = "2.10";
apparmor-version = apparmor-series;
src = fetchurl {
url = "http://launchpad.net/apparmor/2.8/${version}/+download/${name}.tar.gz";
sha256 = "1mki4c44ljmr7dpn55grzn33929kdjx149jx00s80yp1war83jwq";
};
buildInputs = [
autoconf automake libtool perl bison flex gettext which rpm
LocaleGettext pam TermReadKey RpcXML swig makeWrapper python ];
prePatch = ''
substituteInPlace libraries/libapparmor/src/Makefile.in --replace "/usr/include" "${glibc}/include"
substituteInPlace libraries/libapparmor/src/Makefile.am --replace "/usr/include" "${glibc}/include"
substituteInPlace common/Make.rules --replace "/usr/bin/pod2man" "${perl}/bin/pod2man"
substituteInPlace common/Make.rules --replace "/usr/bin/pod2html" "${perl}/bin/pod2html"
substituteInPlace common/Make.rules --replace "cpp -dM" "cpp -dM -I${glibc}/include"
substituteInPlace parser/Makefile --replace "/usr/bin/bison" "${bison}/bin/bison"
substituteInPlace parser/Makefile --replace "/usr/bin/flex" "${flex}/bin/flex"
substituteInPlace parser/Makefile --replace "/usr/include/bits/socket.h" "${glibc}/include/bits/socket.h"
substituteInPlace parser/Makefile --replace "/usr/include/linux/capability.h" "${glibc}/include/linux/capability.h"
#substituteInPlace parser/utils/vim/Makefile --replace "/usr/include/linux/capability.h" "${glibc}/include/linux/capability.h"
# for some reason pdf documentation doesn't build
substituteInPlace parser/Makefile --replace "manpages htmlmanpages pdf" "manpages htmlmanpages"
substituteInPlace parser/tst/gen-xtrans.pl --replace "/usr/bin/perl" "${perl}/bin/perl"
substituteInPlace parser/tst/Makefile --replace "/usr/bin/prove" "${perl}/bin/prove"
substituteInPlace parser/tst/Makefile --replace "./caching.sh" "${bash}/bin/bash ./caching.sh"
'';
patches = ./capability.patch;
buildPhase =''
PERL5LIB=$PERL5LIB:$out/lib/perl5/site_perl:$out/lib
cd libraries/libapparmor
./autogen.sh
./configure --prefix=$out --with-perl # see below
make
make check
make install
mkdir -p $out/lib/perl5/site_perl/
cp swig/perl/LibAppArmor.pm $out/lib/perl5/site_perl/
cp swig/perl/LibAppArmor.bs $out/lib/perl5/site_perl/
# this is automatically copied elsewhere....
cd ../../utils
make
make install DESTDIR=$out BINDIR=$out/bin VENDOR_PERL=/lib/perl5/site_perl
cd ../parser
make
make install DESTDIR=$out DISTRO=unknown
# cd ../changehat/mod_apparmor
# make # depends on libapparmor having been built first
# make install
cd ../changehat/pam_apparmor
make # depends on libapparmor having been built first
make install DESTDIR=$out
cd ../../profiles
LD_LIBRARY_PATH=$out/lib make
#LD_LIBRARY_PATH=$out/lib make check # depends on the parser having been built first
make install DESTDIR=$out
cd ..
cp -r kernel-patches $out
'';
installPhase = let
perlVersion = (builtins.parseDrvName perl.name).version;
in ''
for i in $out/bin/*; do
wrapProgram $i --prefix PERL5LIB : \
"$PERL5LIB:$out/lib/perl5/${perlVersion}/${stdenv.system}-thread-multi/"
done
'';
meta = with stdenv.lib; {
apparmor-meta = component: with stdenv.lib; {
homepage = http://apparmor.net/;
description = "Linux application security system";
description = "Linux application security system - ${component}";
license = licenses.gpl2;
maintainers = [ maintainers.phreedom maintainers.thoughtpolice ];
maintainers = with maintainers; [ phreedom thoughtpolice joachifm ];
platforms = platforms.linux;
};
}
apparmor-sources = fetchurl {
url = "https://launchpad.net/apparmor/${apparmor-series}/${apparmor-version}/+download/apparmor-${apparmor-version}.tar.gz";
sha256 = "1x06qmmbha9krx7880pxj2k3l8fxy3nm945xjjv735m2ax1243jd";
};
prePatchCommon = ''
substituteInPlace ./common/Make.rules --replace "/usr/bin/pod2man" "${perl}/bin/pod2man"
substituteInPlace ./common/Make.rules --replace "/usr/bin/pod2html" "${perl}/bin/pod2html"
substituteInPlace ./common/Make.rules --replace "/usr/include/linux/capability.h" "${glibc}/include/linux/capability.h"
substituteInPlace ./common/Make.rules --replace "/usr/share/man" "share/man"
'';
libapparmor = stdenv.mkDerivation {
name = "libapparmor-${apparmor-version}";
src = apparmor-sources;
buildInputs = [
autoconf
automake
autoreconfHook
bison
flex
glibc
libtool
perl
pkgconfig
python27Packages.python
swig
which
];
# required to build apparmor-parser
dontDisableStatic = true;
prePatch = prePatchCommon + ''
substituteInPlace ./libraries/libapparmor/src/Makefile.am --replace "/usr/include/netinet/in.h" "${glibc}/include/netinet/in.h"
substituteInPlace ./libraries/libapparmor/src/Makefile.in --replace "/usr/include/netinet/in.h" "${glibc}/include/netinet/in.h"
'';
postPatch = "cd ./libraries/libapparmor";
configureFlags = "--with-python --with-perl";
meta = apparmor-meta "library";
};
apparmor-utils = stdenv.mkDerivation {
name = "apparmor-utils-${apparmor-version}";
src = apparmor-sources;
buildInputs = [
perl
python27Packages.python
python27Packages.readline
libapparmor
makeWrapper
which
];
prePatch = prePatchCommon;
postPatch = "cd ./utils";
makeFlags = ''LANGS='';
installFlags = ''DESTDIR=$(out) BINDIR=$(out)/bin VIM_INSTALL_PATH=$(out)/share PYPREFIX='';
postInstall = ''
for prog in aa-audit aa-autodep aa-cleanprof aa-complain aa-disable aa-enforce aa-genprof aa-logprof aa-mergeprof aa-status aa-unconfined ; do
wrapProgram $out/bin/$prog --prefix PYTHONPATH : "$out/lib/${python27Packages.python.libPrefix}/site-packages:$PYTHONPATH"
done
for prog in aa-exec aa-notify ; do
wrapProgram $out/bin/$prog --prefix PERL5LIB : "${libapparmor}/lib/perl5:$PERL5LIB"
done
'';
meta = apparmor-meta "user-land utilities";
};
apparmor-parser = stdenv.mkDerivation {
name = "apparmor-parser-${apparmor-version}";
src = apparmor-sources;
buildInputs = [
libapparmor
bison
flex
which
];
prePatch = prePatchCommon + ''
substituteInPlace ./parser/Makefile --replace "/usr/bin/bison" "${bison}/bin/bison"
substituteInPlace ./parser/Makefile --replace "/usr/bin/flex" "${flex}/bin/flex"
substituteInPlace ./parser/Makefile --replace "/usr/include/linux/capability.h" "${glibc}/include/linux/capability.h"
## techdoc.pdf still doesn't build ...
substituteInPlace ./parser/Makefile --replace "manpages htmlmanpages pdf" "manpages htmlmanpages"
'';
postPatch = "cd ./parser";
makeFlags = ''LANGS= USE_SYSTEM=1 INCLUDEDIR=${libapparmor}/include'';
installFlags = ''DESTDIR=$(out) DISTRO=unknown'';
meta = apparmor-meta "rule parser";
};
apparmor-pam = stdenv.mkDerivation {
name = "apparmor-pam-${apparmor-version}";
src = apparmor-sources;
buildInputs = [
libapparmor
pam
pkgconfig
which
];
postPatch = "cd ./changehat/pam_apparmor";
makeFlags = ''USE_SYSTEM=1'';
installFlags = ''DESTDIR=$(out)'';
meta = apparmor-meta "PAM service";
};
apparmor-profiles = stdenv.mkDerivation {
name = "apparmor-profiles-${apparmor-version}";
src = apparmor-sources;
buildInputs = [ which ];
postPatch = "cd ./profiles";
installFlags = ''DESTDIR=$(out) EXTRAS_DEST=$(out)/share/apparmor/extra-profiles'';
meta = apparmor-meta "profiles";
};
apparmor-kernel-patches = stdenv.mkDerivation {
name = "apparmor-kernel-patches-${apparmor-version}";
src = apparmor-sources;
phases = ''unpackPhase installPhase'';
installPhase = ''
mkdir "$out"
cp -R ./kernel-patches "$out"
'';
meta = apparmor-meta "kernel patches";
};
in
{
inherit libapparmor apparmor-utils apparmor-parser apparmor-pam
apparmor-profiles apparmor-kernel-patches;
}

View File

@ -5,11 +5,11 @@
assert enablePython -> python != null;
stdenv.mkDerivation rec {
name = "audit-2.4.2";
name = "audit-2.4.4";
src = fetchurl {
url = "http://people.redhat.com/sgrubb/audit/${name}.tar.gz";
sha256 = "08j134s4509rxfi3hwsp8yyxzlqqxl8kqgv2rfv6p3qng5pjd80j";
sha256 = "08sfcx8ykcn5jsryil15q8yqm0a8czymyqbb2sqxfc1jbx37zx95";
};
buildInputs = [ openldap ]

View File

@ -1,19 +0,0 @@
#!/bin/sh
#
# Use this script with the upstream sorted list of patches
# curl ftp://ftp.kernel.org/pub/linux/daemons/autofs/v5/patches-5.0.{x+1}/patch_order-5.0.x |
# grep -v '^#' | sh create-patches-v5.sh
BASEURL=mirror://kernel/linux/daemons/autofs/v5/patches-5.0.9;
echo '# File created automatically' > patches-v5.nix
echo 'fetchurl :' >> patches-v5.nix
echo '[' >> patches-v5.nix
while read a; do
URL=$BASEURL/$a
HASH=`nix-prefetch-url $URL`
echo "(fetchurl { url = $URL; sha256 = \"$HASH\"; })" >> patches-v5.nix
done
echo ']' >> patches-v5.nix

View File

@ -1,18 +1,16 @@
{stdenv, fetchurl, flex, bison, linuxHeaders}:
{ stdenv, fetchurl, flex, bison, linuxHeaders }:
let
baseURL = mirror://kernel/linux/daemons/autofs/v5;
in
stdenv.mkDerivation {
name = "autofs-5.0.8";
version = "5.1.1";
name = "autofs-${version}";
in stdenv.mkDerivation {
inherit name;
src = fetchurl {
url = "${baseURL}/autofs-5.0.8.tar.bz2";
sha256 = "0zczihrqdamj43401v2pczf7zi94f8qk20gc6l92nxmpak3443if";
url = "mirror://kernel/linux/daemons/autofs/v5/${name}.tar.xz";
sha256 = "1hr1f11wp538h7r298wpa5khfkhfs8va3p1kdixxhrgkkzpz13z0";
};
patches = import ./patches-v5.nix fetchurl;
preConfigure = ''
configureFlags="--disable-move-mount --with-path=$PATH"
export MOUNT=/var/run/current-system/sw/bin/mount
@ -31,11 +29,12 @@ stdenv.mkDerivation {
#make install SUBDIRS="samples" # impure!
'';
buildInputs = [flex bison linuxHeaders];
buildInputs = [ flex bison linuxHeaders ];
meta = {
description="Kernel based automounter";
homepage="http://www.linux-consulting.com/Amd_AutoFS/autofs.html";
meta = {
inherit version;
description = "Kernel-based automounter";
homepage = http://www.linux-consulting.com/Amd_AutoFS/autofs.html;
license = stdenv.lib.licenses.gpl2;
executables = [ "automount" ];
};

View File

@ -1,7 +0,0 @@
# File created automatically
fetchurl :
[
(fetchurl { url = mirror://kernel/linux/daemons/autofs/v5/patches-5.0.9/autofs-5.0.8-fix-undefined-authtype_requires_creds-err-if-ldap-en.patch; sha256 = "11v1a32rx57ylp8scswpk41jl9n4kfx55nvdlzhvfs4rhws18rpx"; })
(fetchurl { url = mirror://kernel/linux/daemons/autofs/v5/patches-5.0.9/autofs-5.0.8-fix-master-map-type-check.patch; sha256 = "1nkq0y6j7dc6214af3q9bxvy7pv9kak0q9chijxcj6zkhfzwrjy3"; })
(fetchurl { url = mirror://kernel/linux/daemons/autofs/v5/patches-5.0.9/autofs-5.0.8-fix-task-manager-not-getting-signaled.patch; sha256 = "17h06wk4x0rqiky6pm9dglbc5ycxxrd3438a9snnlysl4zzgrqhx"; })
]

View File

@ -1,14 +1,15 @@
{ stdenv, fetchurl, pkgconfig, libnih, dbus }:
{ stdenv, fetchurl, pkgconfig, libnih, dbus, pam }:
stdenv.mkDerivation rec {
name = "cgmanager-0.37";
name = "cgmanager-0.39";
src = fetchurl {
url = "https://linuxcontainers.org/downloads/cgmanager/${name}.tar.gz";
sha256 = "0vkv8am6h3x89c1rqb6a1glwz3mik3065jigri96njjzmvrff2c3";
sha256 = "0ysv8klnybp727aad2k0aa67s05q027pzfl7rmm0map4nizlhrcy";
};
buildInputs = [ pkgconfig libnih dbus ];
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ libnih dbus pam ];
configureFlags = [
"--with-init-script=systemd"

View File

@ -3,11 +3,11 @@
}:
stdenv.mkDerivation rec {
name = "iproute2-4.1.1";
name = "iproute2-4.2.0";
src = fetchurl {
url = "mirror://kernel/linux/utils/net/iproute2/${name}.tar.xz";
sha256 = "0vz6m2k6hdrjlg4x0r3cd75lg9ysmndbsp35pm8494zvksc7l1vk";
sha256 = "0c0gyf46ad3jlalm9a7c9iiwvpcrjr4gylrkyranp8qd7rs1w454";
};
patches = lib.optionals enableFan [ ./ubuntu-fan.patch ];

View File

@ -2,11 +2,11 @@
, flex, bison, libmnl, libnftnl, gmp, readline }:
stdenv.mkDerivation rec {
name = "nftables-0.4";
name = "nftables-0.5";
src = fetchurl {
url = "http://netfilter.org/projects/nftables/files/${name}.tar.bz2";
sha256 = "0g0x6mf5580kr1azrff0ryxxym43qr72fwir7agmz4b8bjvnkjpn";
sha256 = "1mhaw7ys7ma5786xyfccgar389jsj2zp7qmvghsgr96q6grxzdhz";
};
configureFlags = [

View File

@ -0,0 +1,28 @@
From 96165264ad0afe7a5d440ef49f9712a188486266 Mon Sep 17 00:00:00 2001
From: Richard Yao <ryao@gentoo.org>
Date: Fri, 18 Sep 2015 08:32:52 -0400
Subject: [PATCH] Discard on zvols should not exceed the length of a block
37f9dac592bf5889c3efb305c48ac39b4c7dd140 replaced the end-start
calculation with a cached value, but neglected to update it on discard
operations. This can cause us to discard data not requested, causing
data loss on zvols.
Reported-by: Richard Connon <richard.connon@zynstra.com>
Signed-off-by: Richard Yao <ryao@gentoo.org>
---
module/zfs/zvol.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/module/zfs/zvol.c b/module/zfs/zvol.c
index 492f8ff..c5a8071 100644
--- a/module/zfs/zvol.c
+++ b/module/zfs/zvol.c
@@ -661,6 +661,7 @@ zvol_discard(struct bio *bio)
if (!(bio->bi_rw & REQ_SECURE)) {
start = P2ROUNDUP(start, zv->zv_volblocksize);
end = P2ALIGN(end, zv->zv_volblocksize);
+ size = end - start;
}
#endif

View File

@ -10,5 +10,8 @@ callPackage ./generic.nix (args // rec {
sha256 = "1jqm2a9mldp4km5m454zszsw6p8hrqd7xrbf52pgp82kf5w3d6wz";
};
patches = [ ./nix-build.patch ];
patches = [
./nix-build.patch
./0.6.5-fix-corruption.patch
];
})

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