Merge #18007: add llvmPackages_39
This commit is contained in:
commit
faa26e561b
@ -715,8 +715,8 @@ Python attribute sets are created for each interpreter version. We will therefor
|
||||
In the following example we change the name of the package `pandas` to `foo`.
|
||||
```
|
||||
newpkgs = pkgs.overridePackages(self: super: rec {
|
||||
python35Packages = super.python35Packages.override {
|
||||
self = python35Packages // { pandas = python35Packages.pandas.override{name="foo";};};
|
||||
python35Packages = (super.python35Packages.override { self = python35Packages;})
|
||||
// { pandas = super.python35Packages.pandas.override {name = "foo";};
|
||||
};
|
||||
});
|
||||
```
|
||||
@ -727,8 +727,8 @@ with import <nixpkgs> {};
|
||||
(let
|
||||
|
||||
newpkgs = pkgs.overridePackages(self: super: rec {
|
||||
python35Packages = super.python35Packages.override {
|
||||
self = python35Packages // { pandas = python35Packages.pandas.override{name="foo";};};
|
||||
python35Packages = (super.python35Packages.override { self = python35Packages;})
|
||||
// { pandas = super.python35Packages.pandas.override {name = "foo";};
|
||||
};
|
||||
});
|
||||
in newpkgs.python35.withPackages (ps: [ps.blaze])
|
||||
@ -743,7 +743,7 @@ with import <nixpkgs> {};
|
||||
|
||||
newpkgs = pkgs.overridePackages(self: super: rec {
|
||||
python35Packages = super.python35Packages.override {
|
||||
self = python35Packages // { scipy = python35Packages.scipy_0_16;};
|
||||
self = python35Packages // { scipy = python35Packages.scipy_0_17;};
|
||||
};
|
||||
});
|
||||
in newpkgs.python35.withPackages (ps: [ps.blaze])
|
||||
@ -751,23 +751,41 @@ in newpkgs.python35.withPackages (ps: [ps.blaze])
|
||||
```
|
||||
The requested package `blaze` depends upon `pandas` which itself depends on `scipy`.
|
||||
|
||||
A similar example but now using `django`
|
||||
```
|
||||
with import <nixpkgs> {};
|
||||
|
||||
(let
|
||||
|
||||
newpkgs = pkgs.overridePackages(self: super: rec {
|
||||
python27Packages = (super.python27Packages.override {self = python27Packages;})
|
||||
// { django = super.python27Packages.django_1_9; };
|
||||
});
|
||||
in newpkgs.python27.withPackages (ps: [ps.django_guardian ])
|
||||
).env
|
||||
```
|
||||
|
||||
### `python setup.py bdist_wheel` cannot create .whl
|
||||
|
||||
Executing `python setup.py bdist_wheel` fails with
|
||||
Executing `python setup.py bdist_wheel` in a `nix-shell `fails with
|
||||
```
|
||||
ValueError: ZIP does not support timestamps before 1980
|
||||
```
|
||||
This is because files are included that depend on items in the Nix store which have a timestamp of, that is, it corresponds to January the 1st, 1970 at 00:00:00. And as the error informs you, ZIP does not support that.
|
||||
Fortunately `bdist_wheel` takes into account `SOURCE_DATE_EPOCH`. On Nix this value is set to 1. By setting it to a value correspond to 1980 or later it is possible to build wheels.
|
||||
The command `bdist_wheel` takes into account `SOURCE_DATE_EPOCH`, and `nix-shell` sets this to 1. By setting it to a value corresponding to 1980 or later, or by unsetting it, it is possible to build wheels.
|
||||
|
||||
Use 1980 as timestamp:
|
||||
```
|
||||
SOURCE_DATE_EPOCH=315532800 python3 setup.py bdist_wheel
|
||||
nix-shell --run "SOURCE_DATE_EPOCH=315532800 python3 setup.py bdist_wheel"
|
||||
```
|
||||
or the current time:
|
||||
```
|
||||
SOURCE_DATE_EPOCH=$(date +%s) python3 setup.py bdist_wheel
|
||||
nix-shell --run "SOURCE_DATE_EPOCH=$(date +%s) python3 setup.py bdist_wheel"
|
||||
```
|
||||
or unset:
|
||||
"""
|
||||
nix-shell --run "unset SOURCE_DATE_EPOCH; python3 setup.py bdist_wheel"
|
||||
"""
|
||||
|
||||
### `install_data` / `data_files` problems
|
||||
|
||||
|
@ -218,12 +218,12 @@ rec {
|
||||
partition (x: x > 2) [ 5 1 2 3 4 ]
|
||||
=> { right = [ 5 3 4 ]; wrong = [ 1 2 ]; }
|
||||
*/
|
||||
partition = pred:
|
||||
partition = builtins.partition or (pred:
|
||||
fold (h: t:
|
||||
if pred h
|
||||
then { right = [h] ++ t.right; wrong = t.wrong; }
|
||||
else { right = t.right; wrong = [h] ++ t.wrong; }
|
||||
) { right = []; wrong = []; };
|
||||
) { right = []; wrong = []; });
|
||||
|
||||
/* Merges two lists of the same size together. If the sizes aren't the same
|
||||
the merging stops at the shortest. How both lists are merged is defined
|
||||
|
@ -273,6 +273,7 @@
|
||||
mudri = "James Wood <lamudri@gmail.com>";
|
||||
muflax = "Stefan Dorn <mail@muflax.com>";
|
||||
myrl = "Myrl Hex <myrl.0xf@gmail.com>";
|
||||
nand0p = "Fernando Jose Pando <nando@hex7.com>";
|
||||
nathan-gs = "Nathan Bijnens <nathan@nathan.gs>";
|
||||
Nate-Devv = "Nathan Moore <natedevv@gmail.com>";
|
||||
nckx = "Tobias Geerinckx-Rice <tobias.geerinckx.rice@gmail.com>";
|
||||
@ -352,6 +353,7 @@
|
||||
rvlander = "Gaëtan André <rvlander@gaetanandre.eu>";
|
||||
ryanartecona = "Ryan Artecona <ryanartecona@gmail.com>";
|
||||
ryantm = "Ryan Mulligan <ryan@ryantm.com>";
|
||||
ryansydnor = "Ryan Sydnor <ryan.t.sydnor@gmail.com>";
|
||||
rycee = "Robert Helgesson <robert@rycee.net>";
|
||||
ryneeverett = "Ryne Everett <ryneeverett@gmail.com>";
|
||||
s1lvester = "Markus Silvester <s1lvester@bockhacker.me>";
|
||||
|
@ -23,9 +23,7 @@ effect after you run <command>nixos-rebuild</command>.</para>
|
||||
<xi:include href="x-windows.xml" />
|
||||
<xi:include href="networking.xml" />
|
||||
<xi:include href="linux-kernel.xml" />
|
||||
<xi:include href="grsecurity.xml" />
|
||||
|
||||
<xi:include href="emacs.xml" />
|
||||
<xi:include href="modules.xml" xpointer="xpointer(//section[@id='modules']/*)" />
|
||||
|
||||
<!-- Apache; libvirtd virtualisation -->
|
||||
|
@ -63,12 +63,6 @@ let
|
||||
''
|
||||
cp -prd $sources/* . # */
|
||||
chmod -R u+w .
|
||||
cp ${../../modules/services/databases/postgresql.xml} configuration/postgresql.xml
|
||||
cp ${../../modules/services/misc/gitlab.xml} configuration/gitlab.xml
|
||||
cp ${../../modules/services/misc/taskserver/doc.xml} configuration/taskserver.xml
|
||||
cp ${../../modules/security/acme.xml} configuration/acme.xml
|
||||
cp ${../../modules/i18n/input-method/default.xml} configuration/input-methods.xml
|
||||
cp ${../../modules/services/editors/emacs.xml} configuration/emacs.xml
|
||||
ln -s ${modulesDoc} configuration/modules.xml
|
||||
ln -s ${optionsDocBook} options-db.xml
|
||||
echo "${version}" > version
|
||||
|
@ -52,8 +52,8 @@ foreach my $g (@{$spec->{groups}}) {
|
||||
$gidsUsed{$g->{gid}} = 1 if defined $g->{gid};
|
||||
}
|
||||
|
||||
foreach my $u (@{$spec->{groups}}) {
|
||||
$uidsUsed{$u->{u}} = 1 if defined $u->{uid};
|
||||
foreach my $u (@{$spec->{users}}) {
|
||||
$uidsUsed{$u->{uid}} = 1 if defined $u->{uid};
|
||||
}
|
||||
|
||||
# Read the current /etc/group.
|
||||
|
@ -20,6 +20,11 @@ let
|
||||
in
|
||||
|
||||
{
|
||||
meta = {
|
||||
maintainers = with maintainers; [ joachifm ];
|
||||
doc = ./grsecurity.xml;
|
||||
};
|
||||
|
||||
options.security.grsecurity = {
|
||||
|
||||
enable = mkEnableOption "grsecurity/PaX";
|
||||
|
@ -20,23 +20,6 @@ with lib;
|
||||
config = mkIf config.security.hideProcessInformation {
|
||||
users.groups.proc.gid = config.ids.gids.proc;
|
||||
|
||||
systemd.services.hidepid = {
|
||||
wantedBy = [ "local-fs.target" ];
|
||||
after = [ "systemd-remount-fs.service" ];
|
||||
before = [ "local-fs-pre.target" "local-fs.target" "shutdown.target" ];
|
||||
wants = [ "local-fs-pre.target" ];
|
||||
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
ExecStart = ''${pkgs.utillinux}/bin/mount -o remount,hidepid=2,gid=${toString config.ids.gids.proc} /proc'';
|
||||
ExecStop = ''${pkgs.utillinux}/bin/mount -o remount,hidepid=0,gid=0 /proc'';
|
||||
};
|
||||
|
||||
unitConfig = {
|
||||
DefaultDependencies = false;
|
||||
Conflicts = "shutdown.target";
|
||||
};
|
||||
};
|
||||
fileSystems."/proc".options = [ "hidepid=2" "gid=${toString config.ids.gids.proc}" ];
|
||||
};
|
||||
}
|
||||
|
@ -83,4 +83,6 @@ in {
|
||||
EDITOR = mkOverride 900 "${editorScript}/bin/emacseditor";
|
||||
} else {};
|
||||
};
|
||||
|
||||
meta.doc = ./emacs.xml;
|
||||
}
|
||||
|
@ -109,12 +109,14 @@ in {
|
||||
after = [ "network.target" ];
|
||||
preStart = ''
|
||||
mkdir -p /var/spool/smtpd
|
||||
chmod 711 /var/spool/smtpd
|
||||
|
||||
mkdir -p /var/spool/smtpd/offline
|
||||
chown root.smtpq /var/spool/smtpd/offline
|
||||
chmod 770 /var/spool/smtpd/offline
|
||||
|
||||
mkdir -p /var/spool/smtpd/purge
|
||||
chown smtpq.root /var/spool/smtpd/purge
|
||||
chmod 700 /var/spool/smtpd/purge
|
||||
'';
|
||||
serviceConfig.ExecStart = "${opensmtpd}/sbin/smtpd -d -f ${conf} ${args}";
|
||||
|
@ -311,7 +311,7 @@ in
|
||||
nixPath = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default =
|
||||
[ "/nix/var/nix/profiles/per-user/root/channels/nixos"
|
||||
[ "nixpkgs=/nix/var/nix/profiles/per-user/root/channels/nixos/nixpkgs"
|
||||
"nixos-config=/etc/nixos/configuration.nix"
|
||||
"/nix/var/nix/profiles/per-user/root/channels"
|
||||
];
|
||||
|
@ -28,31 +28,15 @@ let
|
||||
in
|
||||
|
||||
{
|
||||
meta = {
|
||||
maintainers = with maintainers; [ joachifm ];
|
||||
doc = ./dnscrypt-proxy.xml;
|
||||
};
|
||||
|
||||
options = {
|
||||
services.dnscrypt-proxy = {
|
||||
enable = mkEnableOption "dnscrypt-proxy" // { description = ''
|
||||
Whether to enable the DNSCrypt client proxy. The proxy relays
|
||||
DNS queries to a DNSCrypt enabled upstream resolver. The traffic
|
||||
between the client and the upstream resolver is encrypted and
|
||||
authenticated, mitigating the risk of MITM attacks and third-party
|
||||
snooping (assuming the upstream is trustworthy).
|
||||
enable = mkEnableOption "DNSCrypt client proxy";
|
||||
|
||||
Enabling this option does not alter the system nameserver; to relay
|
||||
local queries, prepend <literal>127.0.0.1</literal> to
|
||||
<option>networking.nameservers</option>.
|
||||
|
||||
The recommended configuration is to run DNSCrypt proxy as a forwarder
|
||||
for a caching DNS client, as in
|
||||
<programlisting>
|
||||
{
|
||||
services.dnscrypt-proxy.enable = true;
|
||||
services.dnscrypt-proxy.localPort = 43;
|
||||
services.dnsmasq.enable = true;
|
||||
services.dnsmasq.servers = [ "127.0.0.1#43" ];
|
||||
services.dnsmasq.resolveLocalQueries = true; # this is the default
|
||||
}
|
||||
</programlisting>
|
||||
''; };
|
||||
localAddress = mkOption {
|
||||
default = "127.0.0.1";
|
||||
type = types.str;
|
||||
@ -62,6 +46,7 @@ in
|
||||
of other machines (typically on the local network).
|
||||
'';
|
||||
};
|
||||
|
||||
localPort = mkOption {
|
||||
default = 53;
|
||||
type = types.int;
|
||||
@ -72,6 +57,7 @@ in
|
||||
to a different value; otherwise leave the default.
|
||||
'';
|
||||
};
|
||||
|
||||
resolverName = mkOption {
|
||||
default = "dnscrypt.eu-nl";
|
||||
type = types.nullOr types.str;
|
||||
@ -82,6 +68,7 @@ in
|
||||
extensions, and claims to not keep logs.
|
||||
'';
|
||||
};
|
||||
|
||||
resolverList = mkOption {
|
||||
description = ''
|
||||
The list of upstream DNSCrypt resolvers. By default, we use the most
|
||||
@ -94,6 +81,7 @@ in
|
||||
};
|
||||
defaultText = "pkgs.fetchurl { url = ...; sha256 = ...; }";
|
||||
};
|
||||
|
||||
customResolver = mkOption {
|
||||
default = null;
|
||||
description = ''
|
||||
@ -103,26 +91,30 @@ in
|
||||
type = types.nullOr (types.submodule ({ ... }: { options = {
|
||||
address = mkOption {
|
||||
type = types.str;
|
||||
description = "Resolver IP address";
|
||||
description = "IP address";
|
||||
example = "208.67.220.220";
|
||||
};
|
||||
|
||||
port = mkOption {
|
||||
type = types.int;
|
||||
description = "Resolver port";
|
||||
description = "Port";
|
||||
default = 443;
|
||||
};
|
||||
|
||||
name = mkOption {
|
||||
type = types.str;
|
||||
description = "Provider fully qualified domain name";
|
||||
description = "Fully qualified domain name";
|
||||
example = "2.dnscrypt-cert.opendns.com";
|
||||
};
|
||||
|
||||
key = mkOption {
|
||||
type = types.str;
|
||||
description = "Provider public key";
|
||||
description = "Public key";
|
||||
example = "B735:1140:206F:225D:3E2B:D822:D7FD:691E:A1C3:3CC8:D666:8D0C:BE04:BFAB:CA43:FB79";
|
||||
};
|
||||
}; }));
|
||||
};
|
||||
|
||||
tcpOnly = mkOption {
|
||||
default = false;
|
||||
type = types.bool;
|
||||
@ -131,6 +123,7 @@ in
|
||||
TCP instead of UDP (on port 443). Use only if the UDP port is blocked.
|
||||
'';
|
||||
};
|
||||
|
||||
ephemeralKeys = mkOption {
|
||||
default = false;
|
||||
type = types.bool;
|
||||
@ -212,7 +205,6 @@ in
|
||||
ExecStart = "${dnscrypt-proxy}/bin/dnscrypt-proxy ${toString daemonArgs}";
|
||||
|
||||
User = "dnscrypt-proxy";
|
||||
Group = "dnscrypt-proxy";
|
||||
|
||||
PrivateTmp = true;
|
||||
PrivateDevices = true;
|
||||
|
76
nixos/modules/services/networking/dnscrypt-proxy.xml
Normal file
76
nixos/modules/services/networking/dnscrypt-proxy.xml
Normal file
@ -0,0 +1,76 @@
|
||||
<chapter xmlns="http://docbook.org/ns/docbook"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||
version="5.0"
|
||||
xml:id="sec-dnscrypt-proxy">
|
||||
|
||||
<title>DNSCrypt client proxy</title>
|
||||
|
||||
<para>
|
||||
The DNSCrypt client proxy relays DNS queries to a DNSCrypt enabled
|
||||
upstream resolver. The traffic between the client and the upstream
|
||||
resolver is encrypted and authenticated, mitigating the risk of MITM
|
||||
attacks, DNS poisoning attacks, and third-party snooping (assuming the
|
||||
upstream is trustworthy).
|
||||
</para>
|
||||
|
||||
<sect1><title>Basic configuration</title>
|
||||
|
||||
<para>
|
||||
To enable the client proxy, set
|
||||
<programlisting>
|
||||
services.dnscrypt-proxy.enable = true;
|
||||
</programlisting>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Enabling the client proxy does not alter the system nameserver; to
|
||||
relay local queries, prepend <literal>127.0.0.1</literal> to
|
||||
<option>networking.nameservers</option>.
|
||||
</para>
|
||||
|
||||
</sect1>
|
||||
|
||||
<sect1><title>As a forwarder for a caching DNS client</title>
|
||||
|
||||
<para>
|
||||
By default, DNSCrypt proxy acts as a transparent proxy for the
|
||||
system stub resolver. Because the client does not cache lookups, this
|
||||
setup can significantly slow down e.g., web browsing. The recommended
|
||||
configuration is to run DNSCrypt proxy as a forwarder for a caching DNS
|
||||
client. To achieve this, change the default proxy listening port to
|
||||
a non-standard value and point the caching client to it:
|
||||
<programlisting>
|
||||
services.dnscrypt-proxy.localPort = 43;
|
||||
</programlisting>
|
||||
</para>
|
||||
|
||||
<sect2><title>dnsmasq</title>
|
||||
<para>
|
||||
<programlisting>
|
||||
{
|
||||
services.dnsmasq.enable = true;
|
||||
services.dnsmasq.servers = [ "127.0.0.1#43" ];
|
||||
}
|
||||
</programlisting>
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2><title>unbound</title>
|
||||
<para>
|
||||
<programlisting>
|
||||
{
|
||||
networking.nameservers = [ "127.0.0.1" ];
|
||||
services.unbound.enable = true;
|
||||
services.unbound.forwardAddresses = [ "127.0.0.1@43" ];
|
||||
services.unbound.extraConfig = ''
|
||||
do-not-query-localhost: no
|
||||
'';
|
||||
}
|
||||
</programlisting>
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
||||
|
||||
</chapter>
|
@ -154,9 +154,15 @@ in
|
||||
|
||||
system.activationScripts.tmpfs =
|
||||
''
|
||||
${pkgs.utillinux}/bin/mount -o "remount,size=${config.boot.devSize}" none /dev
|
||||
${pkgs.utillinux}/bin/mount -o "remount,size=${config.boot.devShmSize}" none /dev/shm
|
||||
${pkgs.utillinux}/bin/mount -o "remount,size=${config.boot.runSize}" none /run
|
||||
specialMount() {
|
||||
local device="$1"
|
||||
local mountPoint="$2"
|
||||
local options="$3"
|
||||
local fsType="$4"
|
||||
|
||||
${pkgs.utillinux}/bin/mount -t "$fsType" -o "remount,$options" "$device" "$mountPoint"
|
||||
}
|
||||
source ${config.system.build.earlyMountScript}
|
||||
'';
|
||||
|
||||
};
|
||||
|
@ -59,22 +59,24 @@ echo
|
||||
echo "[1;32m<<< NixOS Stage 1 >>>[0m"
|
||||
echo
|
||||
|
||||
|
||||
# Mount special file systems.
|
||||
# Make several required directories.
|
||||
mkdir -p /etc/udev
|
||||
touch /etc/fstab # to shut up mount
|
||||
touch /etc/mtab # to shut up mke2fs
|
||||
ln -s /proc/mounts /etc/mtab # to shut up mke2fs
|
||||
touch /etc/udev/hwdb.bin # to shut up udev
|
||||
touch /etc/initrd-release
|
||||
mkdir -p /proc
|
||||
mount -t proc proc /proc
|
||||
mkdir -p /sys
|
||||
mount -t sysfs sysfs /sys
|
||||
mount -t devtmpfs -o "size=@devSize@" devtmpfs /dev
|
||||
mkdir -p /run
|
||||
mount -t tmpfs -o "mode=0755,size=@runSize@" tmpfs /run
|
||||
mkdir /dev/pts
|
||||
mount -t devpts devpts /dev/pts
|
||||
|
||||
# Mount special file systems.
|
||||
specialMount() {
|
||||
local device="$1"
|
||||
local mountPoint="$2"
|
||||
local options="$3"
|
||||
local fsType="$4"
|
||||
|
||||
mkdir -m 0755 -p "$mountPoint"
|
||||
mount -n -t "$fsType" -o "$options" "$device" "$mountPoint"
|
||||
}
|
||||
source @earlyMountScript@
|
||||
|
||||
# Log the script output to /dev/kmsg or /run/log/stage-1-init.log.
|
||||
mkdir -p /tmp
|
||||
|
@ -190,7 +190,9 @@ let
|
||||
|
||||
inherit udevRules extraUtils modulesClosure;
|
||||
|
||||
inherit (config.boot) resumeDevice devSize runSize;
|
||||
inherit (config.boot) resumeDevice;
|
||||
|
||||
inherit (config.system.build) earlyMountScript;
|
||||
|
||||
inherit (config.boot.initrd) checkJournalingFS
|
||||
preLVMCommands preDeviceCommands postDeviceCommands postMountCommands preFailCommands kernelModules;
|
||||
|
@ -37,12 +37,16 @@ fi
|
||||
# Likewise, stage 1 mounts /proc, /dev and /sys, so if we don't have a
|
||||
# stage 1, we need to do that here.
|
||||
if [ ! -e /proc/1 ]; then
|
||||
mkdir -m 0755 -p /proc
|
||||
mount -n -t proc proc /proc
|
||||
mkdir -m 0755 -p /dev
|
||||
mount -t devtmpfs devtmpfs /dev
|
||||
mkdir -m 0755 -p /sys
|
||||
mount -t sysfs sysfs /sys
|
||||
specialMount() {
|
||||
local device="$1"
|
||||
local mountPoint="$2"
|
||||
local options="$3"
|
||||
local fsType="$4"
|
||||
|
||||
mkdir -m 0755 -p "$mountPoint"
|
||||
mount -n -t "$fsType" -o "$options" "$device" "$mountPoint"
|
||||
}
|
||||
source @earlyMountScript@
|
||||
fi
|
||||
|
||||
|
||||
@ -87,11 +91,6 @@ done
|
||||
|
||||
|
||||
# More special file systems, initialise required directories.
|
||||
if ! mountpoint -q /dev/shm; then
|
||||
mkdir -m 0755 /dev/shm
|
||||
mount -t tmpfs -o "rw,nosuid,nodev,size=@devShmSize@" tmpfs /dev/shm
|
||||
fi
|
||||
mkdir -m 0755 -p /dev/pts
|
||||
[ -e /proc/bus/usb ] && mount -t usbfs usbfs /proc/bus/usb # UML doesn't have USB by default
|
||||
mkdir -m 01777 -p /tmp
|
||||
mkdir -m 0755 -p /var /var/log /var/lib /var/db
|
||||
@ -112,14 +111,6 @@ rm -f /etc/{group,passwd,shadow}.lock
|
||||
rm -rf /nix/var/nix/gcroots/tmp /nix/var/nix/temproots
|
||||
|
||||
|
||||
# Create a tmpfs on /run to hold runtime state for programs such as
|
||||
# udev (if stage 1 hasn't already done so).
|
||||
if ! mountpoint -q /run; then
|
||||
rm -rf /run
|
||||
mkdir -m 0755 -p /run
|
||||
mount -t tmpfs -o "mode=0755,size=@runSize@" tmpfs /run
|
||||
fi
|
||||
|
||||
# Create a ramfs on /run/keys to hold secrets that shouldn't be
|
||||
# written to disk (generally used for NixOps, harmless elsewhere).
|
||||
if ! mountpoint -q /run/keys; then
|
||||
|
@ -20,10 +20,9 @@ let
|
||||
src = ./stage-2-init.sh;
|
||||
shellDebug = "${pkgs.bashInteractive}/bin/bash";
|
||||
isExecutable = true;
|
||||
inherit (config.boot) devShmSize runSize;
|
||||
inherit (config.nix) readOnlyStore;
|
||||
inherit (config.networking) useHostResolvConf;
|
||||
ttyGid = config.ids.gids.tty;
|
||||
inherit (config.system.build) earlyMountScript;
|
||||
path =
|
||||
[ pkgs.coreutils
|
||||
pkgs.utillinux
|
||||
|
@ -18,6 +18,8 @@ let
|
||||
|
||||
prioOption = prio: optionalString (prio != null) " pri=${toString prio}";
|
||||
|
||||
specialFSTypes = [ "proc" "sysfs" "tmpfs" "devtmpfs" "devpts" ];
|
||||
|
||||
fileSystemOpts = { name, config, ... }: {
|
||||
|
||||
options = {
|
||||
@ -97,11 +99,22 @@ let
|
||||
description = "Disable running fsck on this filesystem.";
|
||||
};
|
||||
|
||||
early = mkOption {
|
||||
default = false;
|
||||
type = types.bool;
|
||||
internal = true;
|
||||
description = ''
|
||||
Mount this filesystem very early during boot. At the moment of
|
||||
mounting no disks are exposed, so this option is primarily for
|
||||
special file systems.
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
config = {
|
||||
mountPoint = mkDefault name;
|
||||
device = mkIf (config.fsType == "tmpfs") (mkDefault config.fsType);
|
||||
device = mkIf (elem config.fsType specialFSTypes) (mkDefault config.fsType);
|
||||
options = mkIf config.autoResize [ "x-nixos.autoresize" ];
|
||||
|
||||
# -F needed to allow bare block device without partitions
|
||||
@ -110,6 +123,13 @@ let
|
||||
|
||||
};
|
||||
|
||||
# Makes sequence of `specialMount device mountPoint options fsType` commands.
|
||||
# `systemMount` should be defined in the sourcing script.
|
||||
makeSpecialMounts = mounts:
|
||||
pkgs.writeText "mounts.sh" (concatMapStringsSep "\n" (mount: ''
|
||||
specialMount "${mount.device}" "${mount.mountPoint}" "${concatStringsSep "," mount.options}" "${mount.fsType}"
|
||||
'') mounts);
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
@ -131,8 +151,7 @@ in
|
||||
"/bigdisk".label = "bigdisk";
|
||||
}
|
||||
'';
|
||||
type = types.loaOf types.optionSet;
|
||||
options = [ fileSystemOpts ];
|
||||
type = types.loaOf (types.submodule fileSystemOpts);
|
||||
description = ''
|
||||
The file systems to be mounted. It must include an entry for
|
||||
the root directory (<literal>mountPoint = "/"</literal>). Each
|
||||
@ -177,10 +196,14 @@ in
|
||||
{ assertion = ! (fileSystems' ? "cycle");
|
||||
message = "The ‘fileSystems’ option can't be topologically sorted: mountpoint dependency path ${ls " -> " fileSystems'.cycle} loops to ${ls ", " fileSystems'.loops}";
|
||||
}
|
||||
{ assertion = all (x: !x.early || (x.label == null && !x.autoFormat && !x.autoResize)) fileSystems;
|
||||
message = "Early filesystems don't support mounting by label, auto formatting and resizing";
|
||||
}
|
||||
];
|
||||
|
||||
# Export for use in other modules
|
||||
system.build.fileSystems = fileSystems;
|
||||
system.build.earlyMountScript = makeSpecialMounts (filter (fs: fs.early) fileSystems);
|
||||
|
||||
boot.supportedFilesystems = map (fs: fs.fsType) fileSystems;
|
||||
|
||||
@ -211,7 +234,7 @@ in
|
||||
+ " " + (if skipCheck fs then "0" else
|
||||
if fs.mountPoint == "/" then "1" else "2")
|
||||
+ "\n"
|
||||
) fileSystems}
|
||||
) (filter (fs: !fs.early) fileSystems)}
|
||||
|
||||
# Swap devices.
|
||||
${flip concatMapStrings config.swapDevices (sw:
|
||||
@ -258,6 +281,16 @@ in
|
||||
|
||||
in listToAttrs (map formatDevice (filter (fs: fs.autoFormat) fileSystems));
|
||||
|
||||
# Sync mount options with systemd's src/core/mount-setup.c: mount_table.
|
||||
fileSystems = mapAttrs (n: fs: fs // { early = true; }) {
|
||||
"/proc" = { fsType = "proc"; options = [ "nosuid" "noexec" "nodev" ]; };
|
||||
"/sys" = { fsType = "sysfs"; options = [ "nosuid" "noexec" "nodev" ]; };
|
||||
"/run" = { fsType = "tmpfs"; options = [ "nosuid" "nodev" "strictatime" "mode=755" "size=${config.boot.runSize}" ]; };
|
||||
"/dev" = { fsType = "devtmpfs"; options = [ "nosuid" "strictatime" "mode=755" "size=${config.boot.devSize}" ]; };
|
||||
"/dev/shm" = { fsType = "tmpfs"; options = [ "nosuid" "nodev" "strictatime" "mode=1777" "size=${config.boot.devShmSize}" ]; };
|
||||
"/dev/pts" = { fsType = "devpts"; options = [ "nosuid" "noexec" "mode=620" "gid=${toString config.ids.gids.tty}" ]; };
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
@ -1,24 +0,0 @@
|
||||
# This module automatically grows the root partition on Amazon EC2 HVM
|
||||
# instances. This allows an instance to be created with a bigger root
|
||||
# filesystem than provided by the AMI.
|
||||
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
config = lib.mkIf config.ec2.hvm {
|
||||
boot.initrd.extraUtilsCommands = ''
|
||||
copy_bin_and_libs ${pkgs.gawk}/bin/gawk
|
||||
copy_bin_and_libs ${pkgs.gnused}/bin/sed
|
||||
copy_bin_and_libs ${pkgs.utillinux}/sbin/sfdisk
|
||||
cp -v ${pkgs.cloud-utils}/bin/growpart $out/bin/growpart
|
||||
ln -s sed $out/bin/gnused
|
||||
'';
|
||||
|
||||
boot.initrd.postDeviceCommands = ''
|
||||
if [ -e /dev/xvda ] && [ -e /dev/xvda1 ]; then
|
||||
TMPDIR=/run sh $(type -P growpart) /dev/xvda 1
|
||||
udevadm settle
|
||||
fi
|
||||
'';
|
||||
};
|
||||
}
|
@ -11,10 +11,12 @@ with lib;
|
||||
let cfg = config.ec2; in
|
||||
|
||||
{
|
||||
imports = [ ../profiles/headless.nix ./ec2-data.nix ./amazon-grow-partition.nix ./amazon-init.nix ];
|
||||
imports = [ ../profiles/headless.nix ./ec2-data.nix ./grow-partition.nix ./amazon-init.nix ];
|
||||
|
||||
config = {
|
||||
|
||||
virtualisation.growPartition = cfg.hvm;
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-label/nixos";
|
||||
autoResize = true;
|
||||
|
@ -340,6 +340,20 @@ in
|
||||
A specification of the desired configuration of this
|
||||
container, as a NixOS module.
|
||||
'';
|
||||
type = lib.mkOptionType {
|
||||
name = "Toplevel NixOS config";
|
||||
merge = loc: defs: (import ../../lib/eval-config.nix {
|
||||
inherit system;
|
||||
modules =
|
||||
let extraConfig =
|
||||
{ boot.isContainer = true;
|
||||
networking.hostName = mkDefault name;
|
||||
networking.useDHCP = false;
|
||||
};
|
||||
in [ extraConfig ] ++ (map (x: x.value) defs);
|
||||
prefix = [ "containers" name ];
|
||||
}).config;
|
||||
};
|
||||
};
|
||||
|
||||
path = mkOption {
|
||||
@ -410,18 +424,9 @@ in
|
||||
} // networkOptions;
|
||||
|
||||
config = mkMerge
|
||||
[ (mkIf options.config.isDefined {
|
||||
path = (import ../../lib/eval-config.nix {
|
||||
inherit system;
|
||||
modules =
|
||||
let extraConfig =
|
||||
{ boot.isContainer = true;
|
||||
networking.hostName = mkDefault name;
|
||||
networking.useDHCP = false;
|
||||
};
|
||||
in [ extraConfig config.config ];
|
||||
prefix = [ "containers" name ];
|
||||
}).config.system.build.toplevel;
|
||||
[
|
||||
(mkIf options.config.isDefined {
|
||||
path = config.config.system.build.toplevel;
|
||||
})
|
||||
];
|
||||
}));
|
||||
|
41
nixos/modules/virtualisation/grow-partition.nix
Normal file
41
nixos/modules/virtualisation/grow-partition.nix
Normal file
@ -0,0 +1,41 @@
|
||||
# This module automatically grows the root partition on virtual machines.
|
||||
# This allows an instance to be created with a bigger root filesystem
|
||||
# than provided by the machine image.
|
||||
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
|
||||
options = {
|
||||
|
||||
virtualisation.growPartition = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
config = mkIf config.virtualisation.growPartition {
|
||||
|
||||
boot.initrd.extraUtilsCommands = ''
|
||||
copy_bin_and_libs ${pkgs.gawk}/bin/gawk
|
||||
copy_bin_and_libs ${pkgs.gnused}/bin/sed
|
||||
copy_bin_and_libs ${pkgs.utillinux}/sbin/sfdisk
|
||||
copy_bin_and_libs ${pkgs.utillinux}/sbin/lsblk
|
||||
cp -v ${pkgs.cloud-utils}/bin/growpart $out/bin/growpart
|
||||
ln -s sed $out/bin/gnused
|
||||
'';
|
||||
|
||||
boot.initrd.postDeviceCommands = ''
|
||||
rootDevice="${config.fileSystems."/".device}"
|
||||
if [ -e "$rootDevice" ]; then
|
||||
rootDevice="$(readlink -f "$rootDevice")"
|
||||
parentDevice="$(lsblk -npo PKNAME "$rootDevice")"
|
||||
TMPDIR=/run sh $(type -P growpart) "$parentDevice" "''${rootDevice#$parentDevice}"
|
||||
udevadm settle
|
||||
fi
|
||||
'';
|
||||
|
||||
};
|
||||
|
||||
}
|
@ -8,6 +8,8 @@ let
|
||||
|
||||
in {
|
||||
|
||||
imports = [ ./grow-partition.nix ];
|
||||
|
||||
options = {
|
||||
virtualbox = {
|
||||
baseImageSize = mkOption {
|
||||
@ -64,7 +66,10 @@ in {
|
||||
'';
|
||||
};
|
||||
|
||||
fileSystems."/".device = "/dev/disk/by-label/nixos";
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-label/nixos";
|
||||
autoResize = true;
|
||||
};
|
||||
|
||||
boot.loader.grub.device = "/dev/sda";
|
||||
|
||||
|
@ -44,6 +44,10 @@ stdenv.mkDerivation rec {
|
||||
|
||||
postPatch = ''
|
||||
sed -i 's|/usr/share/locale|${gettext}/share/locale|g' lisp/international/mule-cmds.el
|
||||
# emacs runs then dumps itself. In the process, it keeps a copy of the
|
||||
# PATH env var, holding all the build inputs in it's closure.
|
||||
# Prevent that by running the self-dumping emacs with an empty PATH.
|
||||
sed -i 's|^RUN_TEMACS = |&PATH= |' src/Makefile.in
|
||||
'';
|
||||
|
||||
buildInputs =
|
||||
|
@ -17,11 +17,17 @@ python3Packages.buildPythonApplication rec {
|
||||
zlib
|
||||
];
|
||||
|
||||
patchPhase = ''
|
||||
substituteInPlace manuskript/ui/welcome.py \
|
||||
--replace sample-projects $out/share/${name}/sample-projects
|
||||
'';
|
||||
|
||||
buildPhase = '''';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out
|
||||
cp -av * $out/
|
||||
mkdir -p $out/share/${name}
|
||||
cp -av bin/ i18n/ libs/ manuskript/ resources/ icons/ $out
|
||||
cp -r sample-projects/ $out/share/${name}
|
||||
'';
|
||||
|
||||
doCheck = false;
|
||||
@ -29,6 +35,18 @@ python3Packages.buildPythonApplication rec {
|
||||
meta = {
|
||||
description = "A open-source tool for writers";
|
||||
homepage = http://www.theologeek.ch/manuskript;
|
||||
longDescription = ''
|
||||
Manuskript is a tool for those writer who like to organize and
|
||||
plan everything before writing. The snowflake method can help you
|
||||
grow your idea into a book, by leading you step by step and asking
|
||||
you questions to go deeper. While writing, keep track of notes
|
||||
about every characters, plot, event, place in your story.
|
||||
|
||||
Develop complex characters and keep track of all useful infos.
|
||||
Create intricate plots, linked to your characters, and use them to
|
||||
outline your story. Organize your ideas about the world your
|
||||
characters live in.
|
||||
'';
|
||||
license = stdenv.lib.licenses.gpl3;
|
||||
maintainers = [ stdenv.lib.maintainers.steveej ];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
|
@ -5,7 +5,7 @@
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "qgis-2.16.1";
|
||||
name = "qgis-2.16.2";
|
||||
|
||||
buildInputs = [ gdal qt4 flex bison proj geos xlibsWrapper sqlite gsl qwt qscintilla
|
||||
fcgi libspatialindex libspatialite postgresql qjson qca2 txt2tags ] ++
|
||||
@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://qgis.org/downloads/${name}.tar.bz2";
|
||||
sha256 = "4a526cd8ae76fc06bb2b6a158e86db5dc0c94545137a8233cd465ef867acdc8b";
|
||||
sha256 = "0dll8klz0qfba4c1y7mp9k4y4azlay0sypvryicggllk1hna4w0n";
|
||||
};
|
||||
|
||||
cmakeFlags = stdenv.lib.optional withGrass "-DGRASS_PREFIX7=${grass}/${grass.name}";
|
||||
|
38
pkgs/applications/misc/audio/wavrsocvt/default.nix
Normal file
38
pkgs/applications/misc/audio/wavrsocvt/default.nix
Normal file
@ -0,0 +1,38 @@
|
||||
{ stdenv, fetchurl }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "wavrsocvt-1.0.2.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://bricxcc.sourceforge.net/wavrsocvt.tgz";
|
||||
sha256 = "15qlvdfwbiclljj7075ycm78yzqahzrgl4ky8pymix5179acm05h";
|
||||
};
|
||||
|
||||
phases = [ "unpackPhase" "installPhase" ];
|
||||
|
||||
unpackPhase = ''
|
||||
tar -zxf $src
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp wavrsocvt $out/bin
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Convert .wav files into sound files for Lego NXT brick";
|
||||
longDescription = ''
|
||||
wavrsocvt is a command-line utility which can be used from a
|
||||
terminal window or script to convert .wav files into sound
|
||||
files for the NXT brick (.rso files). It can also convert the
|
||||
other direction (i.e., .rso -> .wav). It can produce RSO files
|
||||
with a sample rate between 2000 and 16000 (the min/max range of
|
||||
supported sample rates in the standard NXT firmware).
|
||||
You can then upload these with e.g. nxt-python.
|
||||
'';
|
||||
homepage = http://bricxcc.sourceforge.net/;
|
||||
license = licenses.mpl11;
|
||||
maintainers = with maintainers; [ leenaars ];
|
||||
platforms = with platforms; linux;
|
||||
};
|
||||
}
|
@ -2,13 +2,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "timewarrior-${version}";
|
||||
version = "1.0.0.beta1";
|
||||
version = "1.0.0";
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://taskwarrior.org/download/timew-${version}.tar.gz";
|
||||
sha256 = "1gkh07mw8hiqslw8ps35r9lp5jbdy93s0sdrcbp34dd5h99qx587";
|
||||
sha256 = "1d8b9sjdbdld81n535iwip9igl16kcw452wa47fmndp8w487j0mc";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
23
pkgs/applications/misc/valauncher/default.nix
Normal file
23
pkgs/applications/misc/valauncher/default.nix
Normal file
@ -0,0 +1,23 @@
|
||||
{ stdenv, fetchFromGitHub, cmake, gtk3, vala_0_26, pkgconfig, gnome3 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "1.2";
|
||||
name = "valauncher-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Mic92";
|
||||
repo = "valauncher";
|
||||
rev = "v${version}";
|
||||
sha256 = "1d1gfmzmr5ra2rnjc6rbz31mf3hk7q04lh4i1hljgk7fh90dacb6";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake gtk3 vala_0_26 pkgconfig gnome3.libgee ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A fast dmenu-like gtk3 application launcher";
|
||||
homepage = https://github.com/Mic92/valauncher;
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ mic92 ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
@ -2,12 +2,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "communi-${version}";
|
||||
version = "2016-01-03";
|
||||
version = "2016-08-19";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/communi/communi-desktop.git";
|
||||
rev = "ad1b9a30ed6c51940c0d2714b126a32b5d68c876";
|
||||
sha256 = "0jx963pfvzk4dbk8mrmzfrhzybk5y6ib9yzaj662wliayrzj7vpg";
|
||||
rev = "d516b01b1382a805de65f21f3475e0a8e64a97b5";
|
||||
sha256 = "1pn7mr7ch1ck5qv9zdn3ril40c9kk6l04475564rpzf11jly76an";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeQtWrapper qmakeHook ];
|
||||
@ -34,6 +35,10 @@ stdenv.mkDerivation rec {
|
||||
--replace "/usr/bin" "$out/bin"
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
patchelf --set-rpath "$out/lib:$(patchelf --print-rpath $out/bin/.communi-wrapped)" $out/bin/.communi-wrapped
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A simple and elegant cross-platform IRC client";
|
||||
homepage = https://github.com/communi/communi-desktop;
|
||||
|
31
pkgs/applications/networking/irc/qweechat/default.nix
Normal file
31
pkgs/applications/networking/irc/qweechat/default.nix
Normal file
@ -0,0 +1,31 @@
|
||||
{ stdenv, fetchFromGitHub, python27Packages }:
|
||||
|
||||
python27Packages.buildPythonApplication rec {
|
||||
version = "2016-07-29";
|
||||
name = "qweechat-unstable-${version}";
|
||||
namePrefix = "";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "weechat";
|
||||
repo = "qweechat";
|
||||
rev = "f5e54d01691adb3abef47e051a6412186c33313c";
|
||||
sha256 = "0dhlriwvkrsn7jj01p2wqhf2p63n9qd173jsgccgxlacm2zzvhaz";
|
||||
};
|
||||
|
||||
prePatch = ''
|
||||
substituteInPlace setup.py \
|
||||
--replace 'qweechat = qweechat.qweechat' 'qweechat = qweechat.qweechat:main'
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = with python27Packages; [
|
||||
pyside
|
||||
];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/weechat/qweechat;
|
||||
description = "Qt remote GUI for WeeChat";
|
||||
license = licenses.gpl3;
|
||||
maintainers = with maintainers; [ ramkromberg ];
|
||||
platform = with platforms; linux;
|
||||
};
|
||||
}
|
@ -1,14 +1,15 @@
|
||||
{stdenv, fetchurl, openssl, libsamplerate}:
|
||||
{ stdenv, fetchurl, openssl, libsamplerate, alsaLib }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "pjsip-2.1";
|
||||
name = "pjsip-${version}";
|
||||
version = "2.5.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://www.pjsip.org/release/2.1/pjproject-2.1.tar.bz2;
|
||||
md5 = "310eb63638dac93095f6a1fc8ee1f578";
|
||||
url = "http://www.pjsip.org/release/${version}/pjproject-${version}.tar.bz2";
|
||||
sha256 = "ab39207b761d3485199cd881410afeb2d171dff7c2bf75e8caae91c6dca508f3";
|
||||
};
|
||||
|
||||
buildInputs = [ openssl libsamplerate ];
|
||||
buildInputs = [ openssl libsamplerate alsaLib ];
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p $out/bin
|
||||
@ -21,7 +22,7 @@ stdenv.mkDerivation rec {
|
||||
dontPatchELF = true;
|
||||
|
||||
meta = {
|
||||
description = "SIP stack and media stack for presence, im, and multimedia communication";
|
||||
description = "A multimedia communication library written in C, implementing standard based protocols such as SIP, SDP, RTP, STUN, TURN, and ICE";
|
||||
homepage = http://pjsip.org/;
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
maintainers = with stdenv.lib.maintainers; [viric];
|
||||
|
@ -69,6 +69,16 @@ in stdenv.mkDerivation rec {
|
||||
sha256 = "1qg0dj0zwh5ifhmvv4k771nmyqddz4ifn75s9mr1p0nyix8zks8x";
|
||||
};
|
||||
|
||||
# we only have this problem on i686 ATM
|
||||
patches = if stdenv.is64bit then null else [
|
||||
(fetchurl {
|
||||
name = "disable-flaky-tests.diff";
|
||||
url = "https://anonscm.debian.org/git/pkg-openoffice/libreoffice.git/plain"
|
||||
+ "/patches/disable-flaky-tests.diff?h=libreoffice_5.1.5_rc2-1";
|
||||
sha256 = "1v1aiqdi64iijjraj6v4ljzclrd9lqan54hmy2h6m20x3ab005wb";
|
||||
})
|
||||
];
|
||||
|
||||
# Openoffice will open libcups dynamically, so we link it directly
|
||||
# to make its dlopen work.
|
||||
# It also seems not to mention libdl explicitly in some places.
|
||||
|
@ -10,13 +10,13 @@ with stdenv.lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "mkvtoolnix-${version}";
|
||||
version = "9.3.1";
|
||||
version = "9.4.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mbunkus";
|
||||
repo = "mkvtoolnix";
|
||||
rev = "release-${version}";
|
||||
sha256 = "1vipznja07nr7gmzdbv93dv2ggmw4x1bh6xxnn13k3fk6ysqh163";
|
||||
sha256 = "0bmr0cnxp56flak6fjcn0ld5238h3ngrvy09yqp4790g8xwif35v";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig autoconf automake gettext ruby ];
|
||||
|
@ -1,25 +1,23 @@
|
||||
{ stdenv, fetchbzr, pythonPackages, rtmpdump, makeWrapper }:
|
||||
{ stdenv, fetchbzr, python3, rtmpdump, makeWrapper }:
|
||||
|
||||
let
|
||||
inherit (pythonPackages) python pyqt4 sip;
|
||||
pythonEnv = python3.withPackages (ps: with ps; [ pyqt5 sip ]);
|
||||
in stdenv.mkDerivation {
|
||||
name = "qarte-2.4.0";
|
||||
name = "qarte-3.2.0";
|
||||
src = fetchbzr {
|
||||
url = http://bazaar.launchpad.net/~vincent-vandevyvre/qarte/trunk;
|
||||
rev = "150";
|
||||
sha256 = "0fj11jx9l5qi968c906rrksdic7w4yj414m47k6axlb4v6ghdnar";
|
||||
url = http://bazaar.launchpad.net/~vincent-vandevyvre/qarte/qarte-3;
|
||||
rev = "146";
|
||||
sha256 = "0dvl38dknmnj2p4yr25p88kw3mh502c6qdp2bd43bhd2sqc3b0v0";
|
||||
};
|
||||
|
||||
buildInputs = [ makeWrapper ];
|
||||
buildInputs = [ makeWrapper pythonEnv ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
mv qarte $out/bin/
|
||||
substituteInPlace $out/bin/qarte \
|
||||
--replace '/usr/bin/python' "${python.interpreter}" \
|
||||
--replace '/usr/share' "$out/share"
|
||||
wrapProgram $out/bin/qarte \
|
||||
--prefix PYTHONPATH : "${pyqt4}/lib/${python.libPrefix}/site-packages:${sip}/lib/${python.libPrefix}/site-packages" \
|
||||
--prefix PATH : "${rtmpdump}/bin"
|
||||
|
||||
mkdir -p $out/share/man/man1/
|
||||
|
31
pkgs/data/fonts/roboto/default.nix
Normal file
31
pkgs/data/fonts/roboto/default.nix
Normal file
@ -0,0 +1,31 @@
|
||||
{ stdenv, fetchurl, unzip }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "roboto-${version}";
|
||||
version = "2.134";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/google/roboto/releases/download/v${version}/roboto-unhinted.zip";
|
||||
sha256 = "1l033xc2n4754gwakxshh5235cnrnzy7q6zsp5zghn8ib0gdp5rb";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ unzip ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/share/fonts/truetype
|
||||
cp -a * $out/share/fonts/truetype/
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = https://github.com/google/roboto;
|
||||
description = "The Roboto family of fonts";
|
||||
longDescription = ''
|
||||
Google’s signature family of fonts, the default font on Android and
|
||||
Chrome OS, and the recommended font for Google’s visual language,
|
||||
Material Design.
|
||||
'';
|
||||
license = stdenv.lib.licenses.asl20;
|
||||
maintainers = [ stdenv.lib.maintainers.romildo ];
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
}
|
@ -49,7 +49,7 @@ let
|
||||
|
||||
postPatch = ''
|
||||
rm -f rebar rebar3
|
||||
'';
|
||||
'' + postPatch;
|
||||
|
||||
configurePhase = if configurePhase == null
|
||||
then ''
|
||||
|
57
pkgs/development/compilers/llvm/3.9/clang/default.nix
Normal file
57
pkgs/development/compilers/llvm/3.9/clang/default.nix
Normal file
@ -0,0 +1,57 @@
|
||||
{ stdenv, fetch, cmake, libxml2, libedit, llvm, version, clang-tools-extra_src, python }:
|
||||
|
||||
let
|
||||
gcc = if stdenv.cc.isGNU then stdenv.cc.cc else stdenv.cc.cc.gcc;
|
||||
self = stdenv.mkDerivation {
|
||||
name = "clang-${version}";
|
||||
|
||||
unpackPhase = ''
|
||||
unpackFile ${fetch "cfe" "0a1x32rxrq4ln079xf58irg56gjdxcfgwa00ws4hqv9pv73sg5km"}
|
||||
mv cfe-${version}.src clang
|
||||
sourceRoot=$PWD/clang
|
||||
unpackFile ${clang-tools-extra_src}
|
||||
mv clang-tools-extra-* $sourceRoot/tools/extra
|
||||
'';
|
||||
|
||||
buildInputs = [ cmake libedit libxml2 llvm python ];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DCMAKE_BUILD_TYPE=Release"
|
||||
"-DCMAKE_CXX_FLAGS=-std=c++11"
|
||||
] ++
|
||||
# Maybe with compiler-rt this won't be needed?
|
||||
(stdenv.lib.optional stdenv.isLinux "-DGCC_INSTALL_PREFIX=${gcc}") ++
|
||||
(stdenv.lib.optional (stdenv.cc.libc != null) "-DC_INCLUDE_DIRS=${stdenv.cc.libc}/include");
|
||||
|
||||
patches = [ ./purity.patch ];
|
||||
|
||||
postPatch = ''
|
||||
sed -i -e 's/Args.hasArg(options::OPT_nostdlibinc)/true/' lib/Driver/Tools.cpp
|
||||
sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' lib/Driver/ToolChains.cpp
|
||||
'';
|
||||
|
||||
# Clang expects to find LLVMgold in its own prefix
|
||||
# Clang expects to find sanitizer libraries in its own prefix
|
||||
postInstall = ''
|
||||
ln -sv ${llvm}/lib/LLVMgold.so $out/lib
|
||||
ln -sv ${llvm}/lib/clang/3.9.0/lib $out/lib/clang/3.9.0/
|
||||
ln -sv $out/bin/clang $out/bin/cpp
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
passthru = {
|
||||
lib = self; # compatibility with gcc, so that `stdenv.cc.cc.lib` works on both
|
||||
isClang = true;
|
||||
} // stdenv.lib.optionalAttrs stdenv.isLinux {
|
||||
inherit gcc;
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "A c, c++, objective-c, and objective-c++ frontend for the llvm compiler";
|
||||
homepage = http://llvm.org/;
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
};
|
||||
in self
|
16
pkgs/development/compilers/llvm/3.9/clang/purity.patch
Normal file
16
pkgs/development/compilers/llvm/3.9/clang/purity.patch
Normal file
@ -0,0 +1,16 @@
|
||||
--- a/lib/Driver/Tools.cpp 2016-08-25 15:48:05.187553443 +0200
|
||||
+++ b/lib/Driver/Tools.cpp 2016-08-25 15:48:47.534468882 +0200
|
||||
@@ -9420,13 +9420,6 @@
|
||||
if (!Args.hasArg(options::OPT_static)) {
|
||||
if (Args.hasArg(options::OPT_rdynamic))
|
||||
CmdArgs.push_back("-export-dynamic");
|
||||
-
|
||||
- if (!Args.hasArg(options::OPT_shared)) {
|
||||
- const std::string Loader =
|
||||
- D.DyldPrefix + ToolChain.getDynamicLinker(Args);
|
||||
- CmdArgs.push_back("-dynamic-linker");
|
||||
- CmdArgs.push_back(Args.MakeArgString(Loader));
|
||||
- }
|
||||
}
|
||||
|
||||
CmdArgs.push_back("-o");
|
35
pkgs/development/compilers/llvm/3.9/default.nix
Normal file
35
pkgs/development/compilers/llvm/3.9/default.nix
Normal file
@ -0,0 +1,35 @@
|
||||
{ newScope, stdenv, isl, fetchurl, overrideCC, wrapCC }:
|
||||
let
|
||||
callPackage = newScope (self // { inherit stdenv isl version fetch; });
|
||||
|
||||
version = "3.9.0";
|
||||
|
||||
fetch = fetch_v version;
|
||||
fetch_v = ver: name: sha256: fetchurl {
|
||||
url = "http://llvm.org/releases/3.9.0/${name}-${ver}.src.tar.xz";
|
||||
inherit sha256;
|
||||
};
|
||||
|
||||
compiler-rt_src = fetch "compiler-rt" "16m5g0hf8yg9npnw25j2a86g34nsvk9rsm3c84gbch2prm7j5rg0";
|
||||
clang-tools-extra_src = fetch "clang-tools-extra" "052zg0h5vbmxnh2ikc743rw3649f112dfyn8hg39x6cfxi3fqyjv";
|
||||
|
||||
self = {
|
||||
llvm = callPackage ./llvm.nix {
|
||||
inherit compiler-rt_src stdenv;
|
||||
};
|
||||
|
||||
clang-unwrapped = callPackage ./clang {
|
||||
inherit clang-tools-extra_src stdenv;
|
||||
};
|
||||
|
||||
clang = wrapCC self.clang-unwrapped;
|
||||
|
||||
stdenv = overrideCC stdenv self.clang;
|
||||
|
||||
lldb = callPackage ./lldb.nix {};
|
||||
|
||||
libcxx = callPackage ./libc++ {};
|
||||
|
||||
libcxxabi = callPackage ./libc++abi.nix {};
|
||||
};
|
||||
in self
|
39
pkgs/development/compilers/llvm/3.9/libc++/darwin.patch
Normal file
39
pkgs/development/compilers/llvm/3.9/libc++/darwin.patch
Normal file
@ -0,0 +1,39 @@
|
||||
--- libcxx-3.8.0.src.org/lib/CMakeLists.txt 2015-12-16 15:41:05.000000000 -0800
|
||||
+++ libcxx-3.8.0.src/lib/CMakeLists.txt 2016-06-17 19:40:00.293394500 -0700
|
||||
@@ -94,30 +94,30 @@
|
||||
add_definitions(-D__STRICT_ANSI__)
|
||||
add_link_flags(
|
||||
"-compatibility_version 1"
|
||||
"-current_version 1"
|
||||
- "-install_name /usr/lib/libc++.1.dylib"
|
||||
- "-Wl,-reexport_library,/usr/lib/libc++abi.dylib"
|
||||
+ "-install_name ${LIBCXX_LIBCXXABI_LIB_PATH}/libc++.1.dylib"
|
||||
+ "-Wl,-reexport_library,${LIBCXX_LIBCXXABI_LIB_PATH}/libc++abi.dylib"
|
||||
"-Wl,-unexported_symbols_list,${CMAKE_CURRENT_SOURCE_DIR}/libc++unexp.exp"
|
||||
"/usr/lib/libSystem.B.dylib")
|
||||
else()
|
||||
if ( ${CMAKE_OSX_SYSROOT} )
|
||||
list(FIND ${CMAKE_OSX_ARCHITECTURES} "armv7" OSX_HAS_ARMV7)
|
||||
if (OSX_HAS_ARMV7)
|
||||
set(OSX_RE_EXPORT_LINE
|
||||
- "${CMAKE_OSX_SYSROOT}/usr/lib/libc++abi.dylib"
|
||||
+ "${CMAKE_OSX_SYSROOT}${LIBCXX_LIBCXXABI_LIB_PATH}/libc++abi.dylib"
|
||||
"-Wl,-reexported_symbols_list,${CMAKE_CURRENT_SOURCE_DIR}/libc++sjlj-abi.exp")
|
||||
else()
|
||||
set(OSX_RE_EXPORT_LINE
|
||||
- "-Wl,-reexport_library,${CMAKE_OSX_SYSROOT}/usr/lib/libc++abi.dylib")
|
||||
+ "-Wl,-reexport_library,${CMAKE_OSX_SYSROOT}${LIBCXX_LIBCXXABI_LIB_PATH}/libc++abi.dylib")
|
||||
endif()
|
||||
else()
|
||||
- set(OSX_RE_EXPORT_LINE "/usr/lib/libc++abi.dylib -Wl,-reexported_symbols_list,${CMAKE_CURRENT_SOURCE_DIR}/libc++abi${LIBCXX_LIBCPPABI_VERSION}.exp")
|
||||
+ set(OSX_RE_EXPORT_LINE "${LIBCXX_LIBCXXABI_LIB_PATH}/libc++abi.dylib -Wl,-reexported_symbols_list,${CMAKE_CURRENT_SOURCE_DIR}/libc++abi${LIBCXX_LIBCPPABI_VERSION}.exp")
|
||||
endif()
|
||||
|
||||
add_link_flags(
|
||||
"-compatibility_version 1"
|
||||
- "-install_name /usr/lib/libc++.1.dylib"
|
||||
+ "-install_name ${LIBCXX_LIBCXXABI_LIB_PATH}/libc++.1.dylib"
|
||||
"-Wl,-unexported_symbols_list,${CMAKE_CURRENT_SOURCE_DIR}/libc++unexp.exp"
|
||||
"${OSX_RE_EXPORT_LINE}"
|
||||
"-Wl,-force_symbols_not_weak_list,${CMAKE_CURRENT_SOURCE_DIR}/notweak.exp"
|
||||
"-Wl,-force_symbols_weak_list,${CMAKE_CURRENT_SOURCE_DIR}/weak.exp")
|
40
pkgs/development/compilers/llvm/3.9/libc++/default.nix
Normal file
40
pkgs/development/compilers/llvm/3.9/libc++/default.nix
Normal file
@ -0,0 +1,40 @@
|
||||
{ lib, stdenv, fetch, cmake, libcxxabi, fixDarwinDylibNames, version }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libc++-${version}";
|
||||
|
||||
src = fetch "libcxx" "01jvgwi9zd46bb1f93c561212bjzg02q2akacvsj4qsw6r8qvcyh";
|
||||
|
||||
postUnpack = ''
|
||||
unpackFile ${libcxxabi.src}
|
||||
'';
|
||||
|
||||
preConfigure = ''
|
||||
# Get headers from the cxxabi source so we can see private headers not installed by the cxxabi package
|
||||
cmakeFlagsArray=($cmakeFlagsArray -DLIBCXX_CXX_ABI_INCLUDE_PATHS="$NIX_BUILD_TOP/libcxxabi-${version}.src/include")
|
||||
'';
|
||||
|
||||
patches = lib.optional stdenv.isDarwin ./darwin.patch;
|
||||
|
||||
buildInputs = [ cmake libcxxabi ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
|
||||
|
||||
cmakeFlags =
|
||||
[ "-DCMAKE_BUILD_TYPE=Release"
|
||||
"-DLIBCXX_LIBCXXABI_LIB_PATH=${libcxxabi}/lib"
|
||||
"-DLIBCXX_LIBCPPABI_VERSION=2"
|
||||
"-DLIBCXX_CXX_ABI=libcxxabi"
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
linkCxxAbi = stdenv.isLinux;
|
||||
|
||||
setupHook = ./setup-hook.sh;
|
||||
|
||||
meta = {
|
||||
homepage = http://libcxx.llvm.org/;
|
||||
description = "A new implementation of the C++ standard library, targeting C++11";
|
||||
license = "BSD";
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
};
|
||||
}
|
3
pkgs/development/compilers/llvm/3.9/libc++/setup-hook.sh
Normal file
3
pkgs/development/compilers/llvm/3.9/libc++/setup-hook.sh
Normal file
@ -0,0 +1,3 @@
|
||||
linkCxxAbi="@linkCxxAbi@"
|
||||
export NIX_CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1"
|
||||
export NIX_CXXSTDLIB_LINK=" -stdlib=libc++${linkCxxAbi:+" -lc++abi"}"
|
47
pkgs/development/compilers/llvm/3.9/libc++abi.nix
Normal file
47
pkgs/development/compilers/llvm/3.9/libc++abi.nix
Normal file
@ -0,0 +1,47 @@
|
||||
{ stdenv, cmake, fetch, libcxx, libunwind, llvm, version }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "libc++abi-${version}";
|
||||
|
||||
src = fetch "libcxxabi" "06c05jlwfgm2q5xhy5wzmsi9bmfphzh22wpmbph84s452wksjdxh";
|
||||
|
||||
buildInputs = [ cmake ] ++ stdenv.lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD) libunwind;
|
||||
|
||||
postUnpack = ''
|
||||
unpackFile ${libcxx.src}
|
||||
unpackFile ${llvm.src}
|
||||
export NIX_CFLAGS_COMPILE+=" -I$PWD/include"
|
||||
export cmakeFlags="-DLLVM_PATH=$PWD/$(ls -d llvm-*) -DLIBCXXABI_LIBCXX_INCLUDES=$PWD/$(ls -d libcxx-*)/include"
|
||||
'' + stdenv.lib.optionalString stdenv.isDarwin ''
|
||||
export TRIPLE=x86_64-apple-darwin
|
||||
'';
|
||||
|
||||
installPhase = if stdenv.isDarwin
|
||||
then ''
|
||||
for file in lib/*.dylib; do
|
||||
# this should be done in CMake, but having trouble figuring out
|
||||
# the magic combination of necessary CMake variables
|
||||
# if you fancy a try, take a look at
|
||||
# http://www.cmake.org/Wiki/CMake_RPATH_handling
|
||||
install_name_tool -id $out/$file $file
|
||||
done
|
||||
make install
|
||||
install -d 755 $out/include
|
||||
install -m 644 ../include/*.h $out/include
|
||||
''
|
||||
else ''
|
||||
install -d -m 755 $out/include $out/lib
|
||||
install -m 644 lib/libc++abi.so.1.0 $out/lib
|
||||
install -m 644 ../include/cxxabi.h $out/include
|
||||
ln -s libc++abi.so.1.0 $out/lib/libc++abi.so
|
||||
ln -s libc++abi.so.1.0 $out/lib/libc++abi.so.1
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = http://libcxxabi.llvm.org/;
|
||||
description = "A new implementation of low level support for a standard C++ library";
|
||||
license = "BSD";
|
||||
maintainers = with stdenv.lib.maintainers; [ vlstill ];
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
};
|
||||
}
|
56
pkgs/development/compilers/llvm/3.9/lldb.nix
Normal file
56
pkgs/development/compilers/llvm/3.9/lldb.nix
Normal file
@ -0,0 +1,56 @@
|
||||
{ stdenv
|
||||
, fetch
|
||||
, cmake
|
||||
, zlib
|
||||
, ncurses
|
||||
, swig
|
||||
, which
|
||||
, libedit
|
||||
, llvm
|
||||
, clang-unwrapped
|
||||
, python
|
||||
, version
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "lldb-${version}";
|
||||
|
||||
src = fetch "lldb" "1113s6crh94hzk9h9lqrvng0lsy174ml2rq0r962ngqy843hwa31";
|
||||
|
||||
postUnpack = ''
|
||||
# Hack around broken standalone build as of 3.8
|
||||
unpackFile ${llvm.src}
|
||||
srcDir="$(ls -d lldb-*.src)"
|
||||
mkdir -p "$srcDir/tools/lib/Support"
|
||||
cp "$(ls -d llvm-*.src)/lib/Support/regex_impl.h" "$srcDir/tools/lib/Support/"
|
||||
|
||||
# Fix up various paths that assume llvm and clang are installed in the same place
|
||||
substituteInPlace $srcDir/cmake/modules/LLDBStandalone.cmake \
|
||||
--replace CheckAtomic $(readlink -f llvm-*.src)/cmake/modules/CheckAtomic.cmake
|
||||
sed -i 's,".*ClangConfig.cmake","${clang-unwrapped}/lib/cmake/clang/ClangConfig.cmake",' \
|
||||
$srcDir/cmake/modules/LLDBStandalone.cmake
|
||||
sed -i 's,".*tools/clang/include","${clang-unwrapped}/include",' \
|
||||
$srcDir/cmake/modules/LLDBStandalone.cmake
|
||||
sed -i 's,"$.LLVM_LIBRARY_DIR.",${llvm}/lib ${clang-unwrapped}/lib,' \
|
||||
$srcDir/cmake/modules/LLDBStandalone.cmake
|
||||
'';
|
||||
|
||||
buildInputs = [ cmake python which swig ncurses zlib libedit llvm ];
|
||||
|
||||
CXXFLAGS = "-fno-rtti";
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DCMAKE_BUILD_TYPE=Release"
|
||||
"-DLLVM_MAIN_INCLUDE_DIR=${llvm}/include"
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = {
|
||||
description = "A next-generation high-performance debugger";
|
||||
homepage = http://llvm.org/;
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
}
|
89
pkgs/development/compilers/llvm/3.9/llvm.nix
Normal file
89
pkgs/development/compilers/llvm/3.9/llvm.nix
Normal file
@ -0,0 +1,89 @@
|
||||
{ stdenv
|
||||
, fetch
|
||||
, perl
|
||||
, groff
|
||||
, cmake
|
||||
, python
|
||||
, libffi
|
||||
, binutils
|
||||
, libxml2
|
||||
, valgrind
|
||||
, ncurses
|
||||
, version
|
||||
, zlib
|
||||
, compiler-rt_src
|
||||
, libcxxabi
|
||||
, debugVersion ? false
|
||||
, enableSharedLibraries ? true
|
||||
}:
|
||||
|
||||
let
|
||||
src = fetch "llvm" "0j49lkd5d7nnpdqzaybs2472bvcxyx0i4r3iccwf3kj2v9wk3iv6";
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "llvm-${version}";
|
||||
|
||||
unpackPhase = ''
|
||||
unpackFile ${src}
|
||||
mv llvm-${version}.src llvm
|
||||
sourceRoot=$PWD/llvm
|
||||
unpackFile ${compiler-rt_src}
|
||||
mv compiler-rt-* $sourceRoot/projects/compiler-rt
|
||||
'';
|
||||
|
||||
buildInputs = [ perl groff cmake libxml2 python libffi ]
|
||||
++ stdenv.lib.optional stdenv.isDarwin libcxxabi;
|
||||
|
||||
propagatedBuildInputs = [ ncurses zlib ];
|
||||
|
||||
# hacky fix: New LLVM releases require a newer OS X SDK than
|
||||
# 10.9. This is a temporary measure until nixpkgs darwin support is
|
||||
# updated.
|
||||
patchPhase = stdenv.lib.optionalString stdenv.isDarwin ''
|
||||
sed -i 's/os_trace(\(.*\)");$/printf(\1\\n");/g' ./projects/compiler-rt/lib/sanitizer_common/sanitizer_mac.cc
|
||||
'';
|
||||
|
||||
# hacky fix: created binaries need to be run before installation
|
||||
preBuild = ''
|
||||
mkdir -p $out/
|
||||
ln -sv $PWD/lib $out
|
||||
'';
|
||||
|
||||
cmakeFlags = with stdenv; [
|
||||
"-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}"
|
||||
"-DLLVM_INSTALL_UTILS=ON" # Needed by rustc
|
||||
"-DLLVM_BUILD_TESTS=ON"
|
||||
"-DLLVM_ENABLE_FFI=ON"
|
||||
"-DLLVM_ENABLE_RTTI=ON"
|
||||
"-DCOMPILER_RT_INCLUDE_TESTS=OFF" # FIXME: requires clang source code
|
||||
] ++ stdenv.lib.optional enableSharedLibraries [
|
||||
"-DLLVM_LINK_LLVM_DYLIB=ON"
|
||||
] ++ stdenv.lib.optional (!isDarwin)
|
||||
"-DLLVM_BINUTILS_INCDIR=${binutils.dev}/include"
|
||||
++ stdenv.lib.optionals ( isDarwin) [
|
||||
"-DLLVM_ENABLE_LIBCXX=ON"
|
||||
"-DCAN_TARGET_i386=false"
|
||||
];
|
||||
|
||||
postBuild = ''
|
||||
rm -fR $out
|
||||
|
||||
paxmark m bin/{lli,llvm-rtdyld}
|
||||
'';
|
||||
|
||||
postInstall = stdenv.lib.optionalString (stdenv.isDarwin && enableSharedLibraries) ''
|
||||
install_name_tool -id $out/lib/libLLVM.dylib $out/lib/libLLVM.dylib
|
||||
ln -s $out/lib/libLLVM.dylib $out/lib/libLLVM-${version}.dylib
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
passthru.src = src;
|
||||
|
||||
meta = {
|
||||
description = "Collection of modular and reusable compiler and toolchain technologies";
|
||||
homepage = http://llvm.org/;
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
maintainers = with stdenv.lib.maintainers; [ lovek323 raskin viric ];
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
}
|
@ -18,10 +18,6 @@ rec {
|
||||
};
|
||||
|
||||
cargo = callPackage ./cargo.nix rec {
|
||||
# TODO: We're temporarily tracking master here as Darwin needs the
|
||||
# `http.cainfo` option from .cargo/config which isn't released
|
||||
# yet.
|
||||
|
||||
version = "beta-2016-07-25";
|
||||
srcRev = "f09ef68cc47956ccc5f99212bdcdd15298c400a0";
|
||||
srcSha = "1r6q9jd0fl6mzhwkvrrcv358q2784hg51dfpy28xgh4n61m7c155";
|
||||
|
@ -25,10 +25,6 @@ rec {
|
||||
};
|
||||
|
||||
cargo = callPackage ./cargo.nix rec {
|
||||
# TODO: We're temporarily tracking master here as Darwin needs the
|
||||
# `http.cainfo` option from .cargo/config which isn't released
|
||||
# yet.
|
||||
|
||||
version = "0.12.0";
|
||||
srcRev = "6b98d1f8abf5b33c1ca2771d3f5f3bafc3407b93";
|
||||
srcSha = "0pq6l3yzmh2il6320f6501hvp9iikdxzl34i5b52v93ncpim36bk";
|
||||
|
@ -1,5 +1,5 @@
|
||||
{stdenv, fetchurl, libX11, xproto, indent, readline, gsl, freeglut, mesa, SDL
|
||||
, blas, binutils, intltool, gettext, zlib}:
|
||||
, blas, binutils, intltool, gettext, zlib, libSM}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
baseName = "lush";
|
||||
@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
libX11 xproto indent readline gsl freeglut mesa SDL blas binutils
|
||||
libX11 libSM xproto indent readline gsl freeglut mesa SDL blas binutils
|
||||
intltool gettext zlib
|
||||
];
|
||||
|
||||
|
35
pkgs/development/libraries/cxxtest/default.nix
Normal file
35
pkgs/development/libraries/cxxtest/default.nix
Normal file
@ -0,0 +1,35 @@
|
||||
{ stdenv, fetchFromGitHub, pythonPackages}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "4.4";
|
||||
name = "cxxtest";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "CxxTest";
|
||||
repo = name;
|
||||
rev = version;
|
||||
sha256 = "19w92kipfhp5wvs47l0qpibn3x49sbmvkk91yxw6nwk6fafcdl17";
|
||||
};
|
||||
|
||||
buildInputs = with pythonPackages; [ python wrapPython ];
|
||||
|
||||
installPhase = ''
|
||||
cd python
|
||||
python setup.py install --prefix=$out
|
||||
cd ..
|
||||
|
||||
mkdir -p $out/include
|
||||
cp -R cxxtest $out/include/
|
||||
|
||||
wrapPythonProgramsIn $out/bin "$out $pythonPath"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "http://cxxtest.com";
|
||||
description = "Unit testing framework for C++";
|
||||
platforms = platforms.unix ;
|
||||
license = licenses.lgpl3;
|
||||
maintainers = [ maintainers.juliendehos ];
|
||||
};
|
||||
}
|
||||
|
@ -5,8 +5,8 @@
|
||||
}@args:
|
||||
|
||||
callPackage ./generic.nix (args // rec {
|
||||
version = "${branch}.2";
|
||||
version = "${branch}.3";
|
||||
branch = "3.1";
|
||||
sha256 = "1xvh1c8nlws0wx6b7yl1pvkybgzaj5585h1r6z1gzhck1f0qvsv2";
|
||||
sha256 = "0f4ajs0c4088nkal4gqagx05wfyhd1izfxmzxxsdh56ibp38kg2q";
|
||||
darwinFrameworks = [ Cocoa CoreMedia ];
|
||||
})
|
||||
|
@ -1,11 +1,11 @@
|
||||
{ fetchurl, fetchpatch, stdenv }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gsl-2.1";
|
||||
name = "gsl-2.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/gsl/${name}.tar.gz";
|
||||
sha256 = "0rhcia9jhr3p1f1wybwyllwqfs9bggz99i3mi5lpyqcpff1hdbar";
|
||||
sha256 = "1pyq2c0j91z955746myn29c89jwkd435s2cbj8ks2hpag6d0mr2d";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
@ -14,6 +14,8 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildInputs = [ automake autoconf libtool which ];
|
||||
|
||||
NIX_CFLAGS_LINK = [ "-pthread" ];
|
||||
|
||||
patches = [ ./bootstrap.patch ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
@ -1,17 +1,18 @@
|
||||
{ fetchgit, qtbase, qmakeHook, which, stdenv
|
||||
{ stdenv, fetchFromGitHub, qtbase, qtdeclarative, qmakeHook, which
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libcommuni-${version}";
|
||||
version = "2016-03-23";
|
||||
version = "2016-08-17";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/communi/libcommuni.git";
|
||||
rev = "6a5110b25e2838e7dc2c62d16b9fd06d12beee7e";
|
||||
sha256 = "184ah5xqg5pgy8h6fyyz2k0vak1fmhrcidwz828yl4lsvz1vjqh1";
|
||||
src = fetchFromGitHub {
|
||||
owner = "communi";
|
||||
repo = "libcommuni";
|
||||
rev = "dedba6faf57c31c8c70fd563ba12d75a9caee8a3";
|
||||
sha256 = "0wvs53z34vfs5xlln4a6sbd4981svag89xm0f4k20mb1i052b20i";
|
||||
};
|
||||
|
||||
buildInputs = [ qtbase ];
|
||||
buildInputs = [ qtbase qtdeclarative ];
|
||||
nativeBuildInputs = [ qmakeHook which ];
|
||||
|
||||
enableParallelBuild = true;
|
||||
|
24
pkgs/development/libraries/libtelnet/default.nix
Normal file
24
pkgs/development/libraries/libtelnet/default.nix
Normal file
@ -0,0 +1,24 @@
|
||||
{ stdenv, fetchFromGitHub, pkgconfig, autoreconfHook, zlib }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libtelnet-${version}";
|
||||
version = "0.21+45f2d5c";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "seanmiddleditch";
|
||||
repo = "libtelnet";
|
||||
rev = "45f2d5cfcf383312280e61c85b107285fed260cf";
|
||||
sha256 = "1lp6gdbndsp2w8mhy88c2jknxj2klvnggvq04ln7qjg8407ifpda";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig autoreconfHook ];
|
||||
buildInputs = [ zlib ];
|
||||
|
||||
meta = {
|
||||
description = "Simple RFC-complient TELNET implementation as a C library";
|
||||
homepage = "https://github.com/seanmiddleditch/libtelnet";
|
||||
license = stdenv.lib.licenses.publicDomain;
|
||||
maintainers = [ stdenv.lib.maintainers.tomberek ];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
@ -2,10 +2,10 @@
|
||||
ftgl, freetype}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "opencascade-oce-0.16";
|
||||
name = "opencascade-oce-0.17.2";
|
||||
src = fetchurl {
|
||||
url = https://github.com/tpaviot/oce/archive/OCE-0.16.tar.gz;
|
||||
sha256 = "05bmg1cjz827bpq8s0hp96byirm4c3zc9vx26qz76kjsg8ry87w4";
|
||||
url = https://github.com/tpaviot/oce/archive/OCE-0.17.2.tar.gz;
|
||||
sha256 = "0vpmnb0k5y2f7lpmwx9pg9yfq24zjvnsak5alzacncfm1hv9b6cd";
|
||||
};
|
||||
|
||||
buildInputs = [ mesa tcl tk file libXmu libtool qt4 ftgl freetype cmake ];
|
||||
|
@ -21,6 +21,8 @@ stdenv.mkDerivation rec {
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
configureFlags = [
|
||||
"--enable-gtk2"
|
||||
(if compat24 then "--enable-compat24" else "--disable-compat24")
|
||||
|
@ -7,4 +7,8 @@ buildRubyGem rec {
|
||||
version = "1.12.5";
|
||||
sha256 = "1q84xiwm9j771lpmiply0ls9l2bpvl5axn3jblxjvrldh8di2pkc";
|
||||
dontPatchShebangs = true;
|
||||
|
||||
postFixup = ''
|
||||
sed -i -e "s/activate_bin_path/bin_path/g" $out/bin/bundle
|
||||
'';
|
||||
}
|
||||
|
@ -29,6 +29,21 @@ let
|
||||
in
|
||||
|
||||
{
|
||||
bundler = attrs:
|
||||
let
|
||||
templates = "${attrs.ruby.gemPath}/gems/${attrs.gemName}-${attrs.version}/lib/bundler/templates/";
|
||||
in {
|
||||
# patching shebangs would fail on the templates/Executable file, so we
|
||||
# temporarily remove the executable flag.
|
||||
preFixup = "chmod -x $out/${templates}/Executable";
|
||||
postFixup = ''
|
||||
chmod +x $out/${templates}/Executable
|
||||
|
||||
# Allows to load another bundler version
|
||||
sed -i -e "s/activate_bin_path/bin_path/g" $out/bin/bundle
|
||||
'';
|
||||
};
|
||||
|
||||
capybara-webkit = attrs: {
|
||||
buildInputs = [ qt48 ];
|
||||
};
|
||||
@ -177,14 +192,5 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
# patching shebangs would fail on the templates/Executable file, so we
|
||||
# temporarily remove the executable flag.
|
||||
bundler = attrs:
|
||||
let
|
||||
templates = "${attrs.ruby.gemPath}/gems/${attrs.gemName}-${attrs.version}/lib/bundler/templates/";
|
||||
in {
|
||||
preFixup = "chmod -x $out/${templates}/Executable";
|
||||
postFixup = "chmod +x $out/${templates}/Executable";
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -8,8 +8,8 @@ let
|
||||
inherit (darwin.apple_sdk.frameworks) CoreServices ApplicationServices;
|
||||
|
||||
in import ./nodejs.nix (args // rec {
|
||||
version = "6.3.1";
|
||||
sha256 = "06ran2ccfxkwyk6w4wikd7qws286952lbx93pqaygmbh9f0q9rbg";
|
||||
version = "6.4.0";
|
||||
sha256 = "1b3xpp38fd2y8zdkpvkyyvsddh5y4vly81hxkf9hi6wap0nqidj9";
|
||||
extraBuildInputs = stdenv.lib.optionals stdenv.isDarwin
|
||||
[ CoreServices ApplicationServices ];
|
||||
preBuild = stdenv.lib.optionalString stdenv.isDarwin ''
|
||||
|
@ -4,32 +4,14 @@ stdenv.mkDerivation {
|
||||
name = "fsg-4.4";
|
||||
|
||||
src = fetchurl {
|
||||
#url = http://www.piettes.com/fallingsandgame/fsg-src-4.4.tar.gz;
|
||||
url = http://www.sourcefiles.org/Games/Simulation/Other/fsg-src-4.4.tar.gz;
|
||||
sha256 = "1756y01rkvd3f1pkj88jqh83fqcfl2fy0c48mcq53pjzln9ycv8c";
|
||||
};
|
||||
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
buildInputs = [ gtk glib pkgconfig mesa wxGTK libX11 xproto ];
|
||||
|
||||
/*
|
||||
# One day Unicode will overcome?
|
||||
|
||||
preBuild = "
|
||||
sed -e '
|
||||
s/\\(str\\.Printf(\\)\\(\".*\"\\)/\\1_(\\2)/;
|
||||
s@\\<fopen(\\([^\"),]\\+\\)@fopen(wxConvertWX2MB(\\1)@
|
||||
s@\\<wxString(\\([^)]\\+\\)@wxString(wxConvertMB2WX(\\1)@
|
||||
s/\\(wxString str(\\)\\(\".*\"\\)/\\1_(\\2)/;
|
||||
' -i MainFrame.cpp Canvas.cpp;
|
||||
sed -e '
|
||||
s@\\(^[^\"]*([^\"]*[^(]\\|^[^\"].*[^_](\\)\\(\"\\([^\"]\\|\\\"\\)*\"\\)@\\1_(\\2)@;
|
||||
' -i DownloadFileDialog.cpp;
|
||||
sed -e '
|
||||
s@currentProbIndex != 100@0@;
|
||||
' -i MainFrame.cpp;
|
||||
cp -r . /tmp/fsg
|
||||
";*/
|
||||
|
||||
preBuild = ''
|
||||
sed -e '
|
||||
s@currentProbIndex != 100@0@;
|
||||
|
@ -1,5 +1,4 @@
|
||||
{ stdenv, fetchurl
|
||||
, libX11, SDL }:
|
||||
{ stdenv, fetchurl, libSM, libX11, SDL }:
|
||||
|
||||
with stdenv.lib;
|
||||
stdenv.mkDerivation rec{
|
||||
@ -11,7 +10,8 @@ stdenv.mkDerivation rec{
|
||||
sha256 = "1y5kwh08717jsa5agxrvxnggnwxq36irrid9rzfhca1nnvp9a45l";
|
||||
};
|
||||
|
||||
buildInputs = [ libX11 SDL ];
|
||||
buildInputs = [ libSM libX11 SDL ];
|
||||
|
||||
meta = {
|
||||
homepage = http://www.xl-project.com/;
|
||||
description = "An enhanced, cycle-accurated Atari emulator";
|
||||
|
@ -1,5 +1,9 @@
|
||||
{ stdenv, fetchFromGitHub }:
|
||||
|
||||
## Usage
|
||||
# In NixOS, simply add this package to services.udev.packages:
|
||||
# services.udev.packages = [ pkgs.android-udev-rules ];
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "android-udev-rules-${version}";
|
||||
version = "20160805";
|
||||
|
@ -12,6 +12,9 @@ stdenv.mkDerivation rec {
|
||||
|
||||
hardeningDisable = [ "pic" ];
|
||||
|
||||
# linux 3.12
|
||||
NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration";
|
||||
|
||||
configurePhase =
|
||||
''
|
||||
cd kernel/linux/ena
|
||||
|
@ -11,6 +11,8 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "06g691px0abndp5zvz2ba1g675rcqb64n055h5ahgnlck5cdpawg";
|
||||
};
|
||||
|
||||
dontStrip = true; # Stripping breaks some of the binaries
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/share/raspberrypi/boot
|
||||
cp -R boot/* $out/share/raspberrypi/boot
|
||||
|
@ -346,7 +346,7 @@ with stdenv.lib;
|
||||
LOGO n # not needed
|
||||
MEDIA_ATTACH y
|
||||
MEGARAID_NEWGEN y
|
||||
${optionalString (versionAtLeast version "3.15") ''
|
||||
${optionalString (versionAtLeast version "3.15" && versionOlder version "4.8") ''
|
||||
MLX4_EN_VXLAN y
|
||||
''}
|
||||
MODVERSIONS y
|
||||
@ -433,7 +433,9 @@ with stdenv.lib;
|
||||
PARAVIRT? y
|
||||
HYPERVISOR_GUEST y
|
||||
PARAVIRT_SPINLOCKS? y
|
||||
KVM_APIC_ARCHITECTURE y
|
||||
${optionalString (versionOlder version "4.8") ''
|
||||
KVM_APIC_ARCHITECTURE y
|
||||
''}
|
||||
KVM_ASYNC_PF y
|
||||
${optionalString (versionAtLeast version "4.0") ''
|
||||
KVM_COMPAT? y
|
||||
|
@ -1,13 +1,13 @@
|
||||
{ stdenv, fetchurl, perl, buildLinux, ... } @ args:
|
||||
|
||||
import ./generic.nix (args // rec {
|
||||
version = "4.8-rc3";
|
||||
modDirVersion = "4.8.0-rc3";
|
||||
extraMeta.branch = "4.7";
|
||||
version = "4.8-rc4";
|
||||
modDirVersion = "4.8.0-rc4";
|
||||
extraMeta.branch = "4.8";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kernel/linux/kernel/v4.x/testing/linux-${version}.tar.xz";
|
||||
sha256 = "08ir3w034qkalyi8mc6czgk9mcglm7wfazr2md94a8x98j69v38r";
|
||||
sha256 = "0is4pzmci1i59fxw9b645c8710zjnx19dfl20m4k06kxdbbs01wg";
|
||||
};
|
||||
|
||||
features.iwlwifi = true;
|
||||
|
@ -0,0 +1,14 @@
|
||||
diff --git a/scripts/Makefile.modinst b/scripts/Makefile.modinst
|
||||
index 07650ee..934a7a8 100644
|
||||
--- a/scripts/Makefile.modinst
|
||||
+++ b/scripts/Makefile.modinst
|
||||
@@ -9,7 +9,8 @@ include scripts/Kbuild.include
|
||||
|
||||
#
|
||||
|
||||
-__modules := $(sort $(shell grep -h '\.ko$$' /dev/null $(wildcard $(MODVERDIR)/*.mod)))
|
||||
+__modules := $(sort $(foreach f,$(wildcard $(MODVERDIR)/*.mod),$(shell \
|
||||
+ grep -h '\.ko$$' '$f')))
|
||||
modules := $(patsubst %.o,%.ko,$(wildcard $(__modules:.ko=.o)))
|
||||
|
||||
PHONY += $(modules)
|
@ -74,6 +74,11 @@ rec {
|
||||
patch = ./mips-ext3-n32.patch;
|
||||
};
|
||||
|
||||
modinst_arg_list_too_long =
|
||||
{ name = "modinst-arglist-too-long";
|
||||
patch = ./modinst-arg-list-too-long.patch;
|
||||
};
|
||||
|
||||
ubuntu_fan_4_4 =
|
||||
{ name = "ubuntu-fan";
|
||||
patch = ./ubuntu-fan-4.4.patch;
|
||||
|
@ -8,7 +8,7 @@ stdenv.mkDerivation {
|
||||
sha256 = "00f2wy6f0qng7qzga4iicyzl9j8b7mp6mrpfky5jxj93ms2w2rji";
|
||||
};
|
||||
|
||||
patches = [ ./systemd.patch ];
|
||||
patches = [ ./systemd.patch ./union-wait.patch ];
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-DSYSV";
|
||||
|
||||
|
11
pkgs/os-specific/linux/sysklogd/union-wait.patch
Normal file
11
pkgs/os-specific/linux/sysklogd/union-wait.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- sysklogd-1.5-old/syslogd.c 2016-08-30 22:50:59.812926945 +0100
|
||||
+++ sysklogd-1.5/syslogd.c 2016-08-30 22:51:12.008842890 +0100
|
||||
@@ -2094,7 +2094,7 @@
|
||||
(void) signal(SIGCHLD, reapchild); /* reset signal handler -ASP */
|
||||
wait ((int *)0);
|
||||
#else
|
||||
- union wait status;
|
||||
+ int status;
|
||||
|
||||
while (wait3(&status, WNOHANG, (struct rusage *) NULL) > 0)
|
||||
;
|
@ -1,13 +1,15 @@
|
||||
{ stdenv, fetchurl, buildPythonApplication, makeWrapper, ffmpeg, zip
|
||||
, pandoc ? null
|
||||
{ stdenv, fetchurl, buildPythonApplication, makeWrapper, zip, ffmpeg, pandoc
|
||||
, atomicparsley
|
||||
# Pandoc is required to build the package's man page. Release tarballs contain a
|
||||
# formatted man page already, though, it will still be installed. We keep the
|
||||
# manpage argument in place in case someone wants to use this derivation to
|
||||
# build a Git version of the tool that doesn't have the formatted man page
|
||||
# included.
|
||||
, generateManPage ? false
|
||||
, ffmpegSupport ? true
|
||||
}:
|
||||
|
||||
# Pandoc is required to build the package's man page. Release tarballs
|
||||
# contain a formatted man page already, though, so it's fine to pass
|
||||
# "pandoc = null" to this derivation; the man page will still be
|
||||
# installed. We keep the pandoc argument and build input in place in
|
||||
# case someone wants to use this derivation to build a Git version of
|
||||
# the tool that doesn't have the formatted man page included.
|
||||
with stdenv.lib;
|
||||
|
||||
buildPythonApplication rec {
|
||||
|
||||
@ -19,16 +21,20 @@ buildPythonApplication rec {
|
||||
sha256 = "017x2hqc2bacypjmn9ac9f91y9y6afydl0z7dich5l627494hvfg";
|
||||
};
|
||||
|
||||
buildInputs = [ makeWrapper zip pandoc ];
|
||||
buildInputs = [ makeWrapper zip ] ++ optional generateManPage pandoc;
|
||||
|
||||
# Ensure ffmpeg is available in $PATH for post-processing & transcoding support.
|
||||
postInstall = stdenv.lib.optionalString (ffmpeg != null)
|
||||
''wrapProgram $out/bin/youtube-dl --prefix PATH : "${ffmpeg.bin}/bin"'';
|
||||
# atomicparsley for embedding thumbnails
|
||||
postInstall = let
|
||||
packagesthatwillbeusedbelow = [ atomicparsley ] ++ optional ffmpegSupport ffmpeg;
|
||||
in ''
|
||||
wrapProgram $out/bin/youtube-dl --prefix PATH : "${makeBinPath packagesthatwillbeusedbelow}"
|
||||
'';
|
||||
|
||||
# Requires network
|
||||
doCheck = false;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
meta = {
|
||||
homepage = http://rg3.github.io/youtube-dl/;
|
||||
repositories.git = https://github.com/rg3/youtube-dl.git;
|
||||
description = "Command-line tool to download videos from YouTube.com and other sites";
|
||||
|
@ -1,17 +1,17 @@
|
||||
{ stdenv, fetchFromGitHub, fetchpatch, pkgconfig, autoreconfHook
|
||||
{ stdenv, fetchFromGitHub, pkgconfig, autoreconfHook
|
||||
, openssl, c-ares, libxml2, sqlite, zlib, libssh2
|
||||
, Security
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "aria2-${version}";
|
||||
version = "1.24.0";
|
||||
version = "1.26.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "aria2";
|
||||
repo = "aria2";
|
||||
rev = "release-${version}";
|
||||
sha256 = "0sb8s2rf2l0x7m8fx8kys7vad0lfw3k9071iai03kxplkdvg96n9";
|
||||
sha256 = "1nf7z55cc6ljpz7zzb8ppg8ybg531gfbhyggya7lnr5ka74h87b5";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig autoreconfHook ];
|
||||
@ -19,13 +19,6 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = [ openssl c-ares libxml2 sqlite zlib libssh2 ] ++
|
||||
stdenv.lib.optional stdenv.isDarwin Security;
|
||||
|
||||
patches = stdenv.lib.optionals stdenv.isDarwin [
|
||||
(fetchpatch {
|
||||
url = https://github.com/aria2/aria2/commit/1e59e357af626edc870b7f53c1ae8083658d0d1a.patch;
|
||||
sha256 = "1xjj4ll1v6adl6vdkl84v0mh7ma6p469ph1wpvksxrq6qp8345qj";
|
||||
})
|
||||
];
|
||||
|
||||
configureFlags = [ "--with-ca-bundle=/etc/ssl/certs/ca-certificates.crt" ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
@ -89,10 +89,10 @@ in rec {
|
||||
nix = nixStable;
|
||||
|
||||
nixStable = common rec {
|
||||
name = "nix-1.11.2";
|
||||
name = "nix-1.11.3";
|
||||
src = fetchurl {
|
||||
url = "http://nixos.org/releases/nix/${name}/${name}.tar.xz";
|
||||
sha256 = "fc1233814ebb385a2a991c1fb88c97b344267281e173fea7d9acd3f9caf969d6";
|
||||
sha256 = "054fya7q60nv4mcpnd5pxj4hxafrikdimjknpj46w4jd2fg61237";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -2412,6 +2412,8 @@ in
|
||||
|
||||
libtermkey = callPackage ../development/libraries/libtermkey { };
|
||||
|
||||
libtelnet = callPackage ../development/libraries/libtelnet { };
|
||||
|
||||
libtirpc = callPackage ../development/libraries/ti-rpc { };
|
||||
|
||||
libshout = callPackage ../development/libraries/libshout { };
|
||||
@ -4922,6 +4924,10 @@ in
|
||||
inherit (stdenvAdapters) overrideCC;
|
||||
};
|
||||
|
||||
llvmPackages_39 = callPackage ../development/compilers/llvm/3.9 {
|
||||
inherit (stdenvAdapters) overrideCC;
|
||||
};
|
||||
|
||||
manticore = callPackage ../development/compilers/manticore { };
|
||||
|
||||
mentorToolchains = recurseIntoAttrs (
|
||||
@ -5486,10 +5492,10 @@ in
|
||||
|
||||
rust = rustStable;
|
||||
rustStable = callPackage ../development/compilers/rust {};
|
||||
rustBeta = lowPrio (callPackage ../development/compilers/rust/beta.nix {});
|
||||
rustUnstable = lowPrio (callPackage ../development/compilers/rust/head.nix {
|
||||
rustBeta = callPackage ../development/compilers/rust/beta.nix {};
|
||||
rustUnstable = callPackage ../development/compilers/rust/head.nix {
|
||||
rustPlatform = recurseIntoAttrs (makeRustPlatform rustBeta);
|
||||
});
|
||||
};
|
||||
|
||||
cargo = rust.cargo;
|
||||
rustc = rust.rustc;
|
||||
@ -7073,6 +7079,8 @@ in
|
||||
|
||||
cxx-prettyprint = callPackage ../development/libraries/cxx-prettyprint { };
|
||||
|
||||
cxxtest = callPackage ../development/libraries/cxxtest { };
|
||||
|
||||
cyrus_sasl = callPackage ../development/libraries/cyrus-sasl {
|
||||
kerberos = if stdenv.isFreeBSD then libheimdal else kerberos;
|
||||
};
|
||||
@ -8741,7 +8749,7 @@ in
|
||||
# makes it slower, but during runtime we link against just mesa_drivers
|
||||
# through /run/opengl-driver*, which is overriden according to config.grsecurity
|
||||
grsecEnabled = true;
|
||||
llvmPackages = llvmPackages_38; # various problems with 3.7; see #11367, #11467
|
||||
llvmPackages = llvmPackages_39;
|
||||
});
|
||||
mesa_glu = mesaDarwinOr (callPackage ../development/libraries/mesa-glu { });
|
||||
mesa_drivers = mesaDarwinOr (
|
||||
@ -11185,12 +11193,14 @@ in
|
||||
};
|
||||
|
||||
linux_testing = callPackage ../os-specific/linux/kernel/linux-testing.nix {
|
||||
kernelPatches = [ kernelPatches.bridge_stp_helper ]
|
||||
++ lib.optionals ((platform.kernelArch or null) == "mips")
|
||||
[ kernelPatches.mips_fpureg_emu
|
||||
kernelPatches.mips_fpu_sigill
|
||||
kernelPatches.mips_ext3_n32
|
||||
];
|
||||
kernelPatches = [
|
||||
kernelPatches.bridge_stp_helper
|
||||
kernelPatches.modinst_arg_list_too_long
|
||||
] ++ lib.optionals ((platform.kernelArch or null) == "mips") [
|
||||
kernelPatches.mips_fpureg_emu
|
||||
kernelPatches.mips_fpu_sigill
|
||||
kernelPatches.mips_ext3_n32
|
||||
];
|
||||
};
|
||||
|
||||
linux_chromiumos_3_14 = callPackage ../os-specific/linux/kernel/linux-chromiumos-3.14.nix {
|
||||
@ -12100,6 +12110,8 @@ in
|
||||
|
||||
r5rs = callPackage ../data/documentation/rnrs/r5rs.nix { };
|
||||
|
||||
roboto = callPackage ../data/fonts/roboto { };
|
||||
|
||||
hasklig = callPackage ../data/fonts/hasklig {};
|
||||
|
||||
sound-theme-freedesktop = callPackage ../data/misc/sound-theme-freedesktop { };
|
||||
@ -13082,6 +13094,8 @@ in
|
||||
|
||||
wavesurfer = callPackage ../applications/misc/audio/wavesurfer { };
|
||||
|
||||
wavrsocvt = callPackage ../applications/misc/audio/wavrsocvt { };
|
||||
|
||||
wireshark-cli = callPackage ../applications/networking/sniffers/wireshark {
|
||||
withQt = false;
|
||||
withGtk = false;
|
||||
@ -15851,6 +15865,8 @@ in
|
||||
|
||||
privateer = callPackage ../games/privateer { };
|
||||
|
||||
qweechat = callPackage ../applications/networking/irc/qweechat { };
|
||||
|
||||
qqwing = callPackage ../games/qqwing { };
|
||||
|
||||
quake3wrapper = callPackage ../games/quake3/wrapper { };
|
||||
@ -17398,6 +17414,8 @@ in
|
||||
|
||||
utf8proc = callPackage ../development/libraries/utf8proc { };
|
||||
|
||||
valauncher = callPackage ../applications/misc/valauncher { };
|
||||
|
||||
vault = callPackage ../tools/security/vault { };
|
||||
|
||||
vbam = callPackage ../misc/emulators/vbam {
|
||||
|
@ -3597,6 +3597,25 @@ in modules // {
|
||||
};
|
||||
};
|
||||
|
||||
cmdline = buildPythonPackage rec {
|
||||
pname = "cmdline";
|
||||
version = "0.1.6";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/c/${pname}/${name}.tar.gz";
|
||||
sha256 = "be2cb4711e9111bb7386a408e3c66a730c36dd6ac05851a9f03d0f4eae63536a";
|
||||
};
|
||||
|
||||
# No tests, https://github.com/rca/cmdline/issues/1
|
||||
doCheck = false;
|
||||
propagatedBuildInputs = with self; [ pyyaml ];
|
||||
meta = {
|
||||
description = "Utilities for consistent command line tools";
|
||||
homepage = http://github.com/rca/cmdline;
|
||||
license = licenses.asl20;
|
||||
};
|
||||
};
|
||||
|
||||
cogapp = buildPythonPackage rec {
|
||||
version = "2.3";
|
||||
@ -3983,26 +4002,23 @@ in modules // {
|
||||
|
||||
cytoolz = buildPythonPackage rec {
|
||||
name = "cytoolz-${version}";
|
||||
version = "0.7.4";
|
||||
version = "0.8.0";
|
||||
|
||||
src = pkgs.fetchurl{
|
||||
url = "mirror://pypi/c/cytoolz/cytoolz-${version}.tar.gz";
|
||||
sha256 = "9c2e3dda8232b6cd5b84b8c8df6c8155c2adeb8734eb7ec38e189affc0f2eba5";
|
||||
sha256 = "2239890c8fe2da3eba82947c6a68cfa406e5a5045911c9ab3de8113462372629";
|
||||
};
|
||||
|
||||
# Extension types
|
||||
disabled = isPyPy;
|
||||
|
||||
buildInputs = with self; [ nose ];
|
||||
propagatedBuildInputs = with self; [ toolz ];
|
||||
|
||||
checkPhase = ''
|
||||
nosetests -v $out/${python.sitePackages}
|
||||
'';
|
||||
|
||||
# Several tests fail with Python 3.5
|
||||
# https://github.com/pytoolz/cytoolz/issues/73
|
||||
doCheck = !isPy35;
|
||||
|
||||
meta = {
|
||||
homepage = "http://github.com/pytoolz/cytoolz/";
|
||||
description = "Cython implementation of Toolz: High performance functional utilities";
|
||||
@ -4033,17 +4049,17 @@ in modules // {
|
||||
cryptography = buildPythonPackage rec {
|
||||
# also bump cryptography_vectors
|
||||
name = "cryptography-${version}";
|
||||
version = "1.4";
|
||||
version = "1.5";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/c/cryptography/${name}.tar.gz";
|
||||
sha256 = "0a6i4914ychryj7kqqmf970incynj5lzx57n3cbv5i4hxm09a55v";
|
||||
sha256 = "52f47ec9a57676043f88e3ca133638790b6b71e56e8890d9d7f3ae4fcd75fa24";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgs.openssl self.pretend self.cryptography_vectors
|
||||
self.iso8601 self.pyasn1 self.pytest self.py self.hypothesis1 ]
|
||||
++ optional stdenv.isDarwin pkgs.darwin.apple_sdk.frameworks.Security;
|
||||
propagatedBuildInputs = with self; [ six idna ipaddress pyasn1 cffi pyasn1-modules modules.sqlite3 ]
|
||||
propagatedBuildInputs = with self; [ six idna ipaddress pyasn1 cffi pyasn1-modules modules.sqlite3 pytz ]
|
||||
++ optional (pythonOlder "3.4") self.enum34;
|
||||
|
||||
# IOKit's dependencies are inconsistent between OSX versions, so this is the best we
|
||||
@ -4054,11 +4070,11 @@ in modules // {
|
||||
cryptography_vectors = buildPythonPackage rec {
|
||||
# also bump cryptography
|
||||
name = "cryptography_vectors-${version}";
|
||||
version = "1.4";
|
||||
version = "1.5";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/c/cryptography-vectors/${name}.tar.gz";
|
||||
sha256 = "1sk6yhphk2k2vzshi0djxi0jsxd9a02259bs8gynfgf5y1g82a07";
|
||||
sha256 = "ad19a2b98a475785c3b2ec8a8c9c974e0c48d00db0c23e79d776a2c489ad812d";
|
||||
};
|
||||
};
|
||||
|
||||
@ -4421,12 +4437,11 @@ in modules // {
|
||||
|
||||
bcrypt = buildPythonPackage rec {
|
||||
name = "bcrypt-${version}";
|
||||
version = "2.0.0";
|
||||
version = "3.1.0";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "https://api.github.com/repos/pyca/bcrypt/tarball/${version}";
|
||||
name = "bcrypt-${version}.tar.gz";
|
||||
sha256 = "14i1yp4qkjklx82jl61cjjcw367lc0pkvnix3gaz451ijdcmz3x8";
|
||||
url = "mirror://pypi/b/bcrypt/${name}.tar.gz";
|
||||
sha256 = "e54820d8b9eff357d1003f5b8d4b949a632b76b89610d8a933783fd476033ebe";
|
||||
};
|
||||
buildInputs = with self; [ pycparser mock pytest py ];
|
||||
propagatedBuildInputs = with self; optional (!isPyPy) cffi;
|
||||
@ -4612,6 +4627,31 @@ in modules // {
|
||||
};
|
||||
};
|
||||
|
||||
pytest-fixture-config = buildPythonPackage rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "pytest-fixture-config";
|
||||
version = "1.0.1";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/p/${pname}/${name}.tar.gz";
|
||||
sha256 = "7d7cc1cb25f88a707f083b1dc2e3c2fdfc6f37709567a2587dd0cd0bcd70edb6";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with self; [ pytest coverage virtualenv pytestcov six ];
|
||||
|
||||
checkPhase = ''
|
||||
py.test -k "not test_yield_requires_config_doesnt_skip and not test_yield_requires_config_skips"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Simple configuration objects for Py.test fixtures. Allows you to skip tests when their required config variables aren’t set.";
|
||||
homepage = https://github.com/manahl/pytest-plugins;
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ ryansydnor ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
};
|
||||
|
||||
pytestflakes = buildPythonPackage rec {
|
||||
name = "pytest-flakes-${version}";
|
||||
version = "1.0.0";
|
||||
@ -4630,6 +4670,27 @@ in modules // {
|
||||
};
|
||||
};
|
||||
|
||||
pytest-mock = buildPythonPackage rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "pytest-mock";
|
||||
version = "1.2";
|
||||
|
||||
propagatedBuildInputs = with self; [ mock pytest ];
|
||||
|
||||
meta = {
|
||||
description = "Thin-wrapper around the mock package for easier use with py.test.";
|
||||
homepage = "https://github.com/pytest-dev/pytest-mock";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ nand0p ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/p/${pname}/${name}.zip";
|
||||
sha256 = "03zxar5drzm7ksqyrwypjaza3cri6wqvpr6iam92djvg6znp32gp";
|
||||
};
|
||||
};
|
||||
|
||||
pytestpep8 = buildPythonPackage rec {
|
||||
name = "pytest-pep8";
|
||||
src = pkgs.fetchurl {
|
||||
@ -4726,15 +4787,69 @@ in modules // {
|
||||
};
|
||||
};
|
||||
|
||||
pytest-server-fixtures = buildPythonPackage rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "pytest-server-fixtures";
|
||||
version = "1.1.0";
|
||||
|
||||
propagatedBuildInputs = with self; [ setuptools-git pytest-shutil pytest-fixture-config psutil requests2 ];
|
||||
|
||||
meta = {
|
||||
description = "Extensible server fixures for py.test";
|
||||
homepage = "https://github.com/manahl/pytest-plugins";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ nand0p ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
|
||||
doCheck = false;
|
||||
# RuntimeError: Unable to find a free server number to start Xvfb
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/p/${pname}/${name}.tar.gz";
|
||||
sha256 = "1gs9qimcn8q6xi9d6i5624l0dziwvn6nj2rda07fg15g1cq66s8l";
|
||||
};
|
||||
};
|
||||
|
||||
pytest-shutil = buildPythonPackage rec {
|
||||
name = "pytest-shutil-${version}";
|
||||
version = "1.1.1";
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/p/pytest-shutil/${name}.tar.gz";
|
||||
sha256 = "bb3c4fc2dddaf70b38bd9bb7a710d07728fa14f88fbc89c2a07979b383ade5d4";
|
||||
};
|
||||
buildInputs = with self; [ cmdline ];
|
||||
propagatedBuildInputs = with self; [ pytest pytestcov coverage setuptools-git mock pathpy execnet contextlib2 ];
|
||||
meta = {
|
||||
description = "A goodie-bag of unix shell and environment tools for py.test";
|
||||
homepage = https://github.com/manahl/pytest-plugins;
|
||||
maintainers = with maintainers; [ ryansydnor ];
|
||||
platforms = platforms.all;
|
||||
license = licenses.mit;
|
||||
};
|
||||
|
||||
|
||||
checkPhase = ''
|
||||
py.test
|
||||
'';
|
||||
# Bunch of pickle errors
|
||||
doCheck = false;
|
||||
};
|
||||
|
||||
pytestcov = buildPythonPackage (rec {
|
||||
name = "pytest-cov-2.2.0";
|
||||
name = "pytest-cov-2.3.1";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/p/pytest-cov/${name}.tar.gz";
|
||||
sha256 = "1lf9jsmhqk5nc4w3kzwglmdzjvmi7ajvrsnwv826j3bn0wzx8c92";
|
||||
sha256 = "fa0a212283cdf52e2eecc24dd6459bb7687cc29adb60cb84258fab73be8dda0f";
|
||||
};
|
||||
|
||||
buildInputs = with self; [ covCore pytest ];
|
||||
buildInputs = with self; [ covCore pytest virtualenv process-tests helper ];
|
||||
|
||||
doCheck = false;
|
||||
checkPhase = ''
|
||||
py.test tests
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Plugin for coverage reporting with support for both centralised and distributed testing, including subprocesses and multiprocessing";
|
||||
@ -4895,11 +5010,11 @@ in modules // {
|
||||
|
||||
dask = buildPythonPackage rec {
|
||||
name = "dask-${version}";
|
||||
version = "0.9.0";
|
||||
version = "0.11.0";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/d/dask/${name}.tar.gz";
|
||||
sha256 = "1jm6riz6fbbd554i0dg0w1xfcmx3f9ryp4jrlavsy4zambilm6b3";
|
||||
sha256 = "ef32490c0b156584a71576dccec4dfe550a0cd81a9c131a4ee2e43c241b601c3";
|
||||
};
|
||||
|
||||
buildInputs = with self; [ pytest ];
|
||||
@ -6331,8 +6446,8 @@ in modules // {
|
||||
${python.interpreter} -m unittest discover
|
||||
'';
|
||||
|
||||
# Judging from SyntaxError in tests.
|
||||
disabled = isPy3k;
|
||||
# Tests are Python 2.x only judging from SyntaxError
|
||||
doCheck = !(isPy3k);
|
||||
|
||||
meta = {
|
||||
description = "Recursive descent parsing library based on functional combinators";
|
||||
@ -6737,6 +6852,31 @@ in modules // {
|
||||
};
|
||||
};
|
||||
|
||||
helper = buildPythonPackage rec {
|
||||
pname = "helper";
|
||||
version = "2.4.1";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/h/${pname}/${name}.tar.gz";
|
||||
sha256 = "4e33dde42ad4df30fb7790689f93d77252cff26a565610d03ff2e434865a53a2";
|
||||
};
|
||||
|
||||
buildInputs = with self; [ mock ];
|
||||
propagatedBuildInputs = with self; [ pyyaml ];
|
||||
|
||||
# No tests
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
description = "Development library for quickly writing configurable applications and daemons";
|
||||
homepage = https://helper.readthedocs.org/;
|
||||
license = licenses.bsd3;
|
||||
};
|
||||
|
||||
|
||||
};
|
||||
|
||||
hglib = buildPythonPackage rec {
|
||||
version = "1.7";
|
||||
name = "hglib-${version}";
|
||||
@ -7166,6 +7306,9 @@ in modules // {
|
||||
ipywidgets
|
||||
];
|
||||
|
||||
# Meta-package, no tests
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
description = "Installs all the Jupyter components in one go";
|
||||
homepage = "http://jupyter.org/";
|
||||
@ -12151,12 +12294,12 @@ in modules // {
|
||||
};
|
||||
|
||||
jupyter_client = buildPythonPackage rec {
|
||||
version = "4.2.2";
|
||||
version = "4.3.0";
|
||||
name = "jupyter_client-${version}";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/j/jupyter_client/${name}.tar.gz";
|
||||
sha256 = "052a02p38byp3n95k8cwidid05gc5cx44qinzsdzs605zw757z1z";
|
||||
sha256 = "70b2e88403835a1d54b83858783d9e5e5771fa4bb6f6904e0b5bb8cfde4b99dd";
|
||||
};
|
||||
|
||||
buildInputs = with self; [ nose ];
|
||||
@ -12178,12 +12321,12 @@ in modules // {
|
||||
};
|
||||
|
||||
jupyter_core = buildPythonPackage rec {
|
||||
version = "4.1.0";
|
||||
version = "4.1.1";
|
||||
name = "jupyter_core-${version}";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/j/jupyter_core/${name}.tar.gz";
|
||||
sha256 = "04xxqa2m8yjpzxb2szbym6ngycyrmhymyy2vp2s6vi9kkikz0shl";
|
||||
sha256 = "ae0e69435258126466c86cd989e465a9c334c50107ef4f257decc8693650bf4c";
|
||||
};
|
||||
|
||||
buildInputs = with self; [ pytest mock ];
|
||||
@ -12645,19 +12788,19 @@ in modules // {
|
||||
};
|
||||
};
|
||||
|
||||
llvmlite = buildPythonPackage rec {
|
||||
llvmlite = let
|
||||
llvm = pkgs.llvm_38;
|
||||
in buildPythonPackage rec {
|
||||
name = "llvmlite-${version}";
|
||||
version = "0.12.1";
|
||||
version = "0.13.0";
|
||||
|
||||
disabled = isPyPy;
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/l/llvmlite/${name}.tar.gz";
|
||||
sha256 = "3ce71beebd4cbc7a49abe4eadfc99725477fd43caeb7405650ebb746c7a1d0df";
|
||||
sha256 = "f852be3391acb2e77ef484c5d0ff90e7cf2821dcf9575e358a1f08c274c582eb";
|
||||
};
|
||||
|
||||
llvm = pkgs.llvm_37;
|
||||
|
||||
propagatedBuildInputs = with self; [ llvm ] ++ optional (pythonOlder "3.4") enum34;
|
||||
|
||||
# Disable static linking
|
||||
@ -17538,11 +17681,11 @@ in modules // {
|
||||
};
|
||||
|
||||
pillow = buildPythonPackage rec {
|
||||
name = "Pillow-3.3.0";
|
||||
name = "Pillow-3.3.1";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/P/Pillow/${name}.tar.gz";
|
||||
sha256 = "1lfc197rj4b4inib9b0q0g3rsi204gywfrnk38yk8kssi2f7q7h3";
|
||||
sha256 = "3491ca65d9fdba4db094ab3f8e17170425e7dd670e507921a665a1975d1b3df1";
|
||||
};
|
||||
|
||||
# Check is disabled because of assertion errors, see
|
||||
@ -19527,6 +19670,26 @@ in modules // {
|
||||
};
|
||||
});
|
||||
|
||||
process-tests = buildPythonPackage rec {
|
||||
pname = "process-tests";
|
||||
name = "${pname}-${version}";
|
||||
version = "1.2.1";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/p/${pname}/${name}.tar.gz";
|
||||
sha256 = "65c9d7a0260f31c15b4a22a851757e61f7072d0557db5f8a976112fbe81ff7e9";
|
||||
};
|
||||
|
||||
# No tests
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
description = "Tools for testing processes";
|
||||
license = licenses.bsd2;
|
||||
homepage = https://github.com/ionelmc/python-process-tests;
|
||||
};
|
||||
};
|
||||
|
||||
progressbar = buildPythonPackage (rec {
|
||||
name = "progressbar-2.2";
|
||||
|
||||
@ -20080,13 +20243,17 @@ in modules // {
|
||||
|
||||
pytz = buildPythonPackage rec {
|
||||
name = "pytz-${version}";
|
||||
version = "2016.3";
|
||||
version = "2016.6.1";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/p/pytz/${name}.tar.gz";
|
||||
sha256 = "1a3hjclyylc4m1v1dn04b38wm2vl649ijdswpg0d8m8n0lcxlj9l";
|
||||
sha256 = "6f57732f0f8849817e9853eb9d50d85d1ebb1404f702dbc44ee627c642a486ca";
|
||||
};
|
||||
|
||||
checkPhase = ''
|
||||
${python.interpreter} -m unittest discover -s pytz/tests
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "World timezone definitions, modern and historical";
|
||||
homepage = "http://pythonhosted.org/pytz";
|
||||
@ -20391,11 +20558,11 @@ in modules // {
|
||||
|
||||
requests2 = buildPythonPackage rec {
|
||||
name = "requests-${version}";
|
||||
version = "2.11.0";
|
||||
version = "2.11.1";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/r/requests/${name}.tar.gz";
|
||||
sha256 = "11d3vrbiqrz30qbplv80y72y9i47hihs35p5n04fl4ggjcz0bzxj";
|
||||
sha256 = "5acf980358283faba0b897c73959cecf8b841205bb4b2ad3ef545f46eae1a133";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ self.pytest ];
|
||||
@ -21982,11 +22149,11 @@ in modules // {
|
||||
|
||||
sounddevice = buildPythonPackage rec {
|
||||
name = "sounddevice-${version}";
|
||||
version = "0.3.1";
|
||||
version = "0.3.4";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/s/sounddevice/${name}.tar.gz";
|
||||
sha256 = "8e5a6816b369c7aea77e06092b2fee99c8b6efbeef4851f53ea3cb208a7607f5";
|
||||
sha256 = "f6c4120357c1458b23bd0d466c66808efdefad397bf97b1162600d079d4665ae";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with self; [ cffi numpy pkgs.portaudio ];
|
||||
@ -22706,6 +22873,55 @@ in modules // {
|
||||
};
|
||||
});
|
||||
|
||||
sphinx-testing = buildPythonPackage rec {
|
||||
name = "sphinx-testing-${version}";
|
||||
version = "0.7.1";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/s/sphinx-testing/${name}.tar.gz";
|
||||
sha256 = "0cd235ce939770ae5128eda01d8611fb1e36d8129399e98565f99fcbff3a8062";
|
||||
};
|
||||
|
||||
buildInputs = with self; [ mock ];
|
||||
propagatedBuildInputs = with self; [ sphinx six ];
|
||||
|
||||
checkPhase = ''
|
||||
${python.interpreter} -m unittest discover -s tests
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = https://github.com/sphinx-doc/sphinx-testing;
|
||||
license = licenses.bsd2;
|
||||
description = "Testing utility classes and functions for Sphinx extensions";
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
sphinxcontrib-blockdiag = buildPythonPackage (rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "sphinxcontrib-blockdiag";
|
||||
version = "1.5.5";
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/s/${pname}/${name}.tar.gz";
|
||||
sha256 = "1w7q2hhpzk159wd35hlbwkh80hnglqa475blcd9vjwpkv1kgkpvw";
|
||||
};
|
||||
|
||||
buildInputs = with self; [ mock sphinx-testing ];
|
||||
propagatedBuildInputs = with self; [ sphinx blockdiag ];
|
||||
|
||||
# Seems to look for files in the wrong dir
|
||||
doCheck = false;
|
||||
checkPhase = ''
|
||||
${python.interpreter} -m unittest discover -s tests
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Sphinx blockdiag extension";
|
||||
homepage = "https://github.com/blockdiag/sphinxcontrib-blockdiag";
|
||||
maintainers = with maintainers; [ nand0p ];
|
||||
license = licenses.bsd2;
|
||||
};
|
||||
});
|
||||
|
||||
sphinxcontrib_httpdomain = buildPythonPackage (rec {
|
||||
name = "sphinxcontrib-httpdomain-1.3.0";
|
||||
@ -22751,6 +22967,45 @@ in modules // {
|
||||
};
|
||||
});
|
||||
|
||||
sphinxcontrib-spelling = buildPythonPackage (rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "sphinxcontrib-spelling";
|
||||
version = "2.2.0";
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/s/${pname}/${name}.tar.gz";
|
||||
sha256 = "1f0fymrk4kvhqs0vj9gay4lhacxkfrlrpj4gvg0p4wjdczplxd3z";
|
||||
};
|
||||
propagatedBuildInputs = with self; [ sphinx pyenchant];
|
||||
# No tests included
|
||||
doCheck = false;
|
||||
meta = {
|
||||
description = "Sphinx spelling extension";
|
||||
homepage = "http://bitbucket.org/dhellmann/sphinxcontrib-spelling";
|
||||
maintainers = with maintainers; [ nand0p ];
|
||||
license = licenses.bsd2;
|
||||
};
|
||||
});
|
||||
|
||||
sphinx-jinja = buildPythonPackage (rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "sphinx-jinja";
|
||||
version = "0.2.1";
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/s/${pname}/${name}.tar.gz";
|
||||
sha256 = "1zsnhc573rvaww9qqyzs4f5h4hhvxklvppv14450vi5dk8rij81z";
|
||||
};
|
||||
buildInputs = with self; [ sphinx-testing pytest];
|
||||
propagatedBuildInputs = with self; [ sphinx blockdiag ];
|
||||
checkPhase = ''
|
||||
py.test -k "not test_build_epub"
|
||||
'';
|
||||
disabled = isPy3k;
|
||||
meta = {
|
||||
description = "includes jinja templates in a documentation";
|
||||
maintainers = with maintainers; [ nand0p ];
|
||||
license = licenses.mit;
|
||||
};
|
||||
});
|
||||
|
||||
sphinx_pypi_upload = buildPythonPackage (rec {
|
||||
name = "Sphinx-PyPI-upload-0.2.1";
|
||||
@ -23555,12 +23810,12 @@ in modules // {
|
||||
};
|
||||
|
||||
traitlets = buildPythonPackage rec {
|
||||
version = "4.2.1";
|
||||
version = "4.2.2";
|
||||
name = "traitlets-${version}";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/t/traitlets/${name}.tar.gz";
|
||||
sha256 = "1h0aryjiqz2f3ykcjb34k5wz6bmzyp5cll7r4k08yfvji4ya7svn";
|
||||
sha256 = "7d7e3070484b2fe490fa55e0acf7023afc5ed9ddabec57405f25c355158e152a";
|
||||
};
|
||||
|
||||
buildInputs = with self; [ nose mock ];
|
||||
@ -23688,11 +23943,11 @@ in modules // {
|
||||
|
||||
toolz = buildPythonPackage rec{
|
||||
name = "toolz-${version}";
|
||||
version = "0.7.4";
|
||||
version = "0.8.0";
|
||||
|
||||
src = pkgs.fetchurl{
|
||||
url = "mirror://pypi/t/toolz/toolz-${version}.tar.gz";
|
||||
sha256 = "43c2c9e5e7a16b6c88ba3088a9bfc82f7db8e13378be7c78d6c14a5f8ed05afd";
|
||||
sha256 = "e8451af61face57b7c5d09e71c0d27b8005f001ead56e9fdf470417e5cc6d479";
|
||||
};
|
||||
|
||||
buildInputs = with self; [ nose ];
|
||||
@ -23725,11 +23980,11 @@ in modules // {
|
||||
|
||||
tqdm = buildPythonPackage rec {
|
||||
name = "tqdm-${version}";
|
||||
version = "3.7.1";
|
||||
version = "3.8.4";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/t/tqdm/${name}.tar.gz";
|
||||
sha256 = "f12d792685f779e8754e623aff1a25a93b98a90457e3a2b7eb89b4401c2c239e";
|
||||
sha256 = "bab05f8bb6efd2702ab6c532e5e6a758a66c0d2f443e09784b73e4066e6b3a37";
|
||||
};
|
||||
|
||||
buildInputs = with self; [ nose coverage pkgs.glibcLocales flake8 ];
|
||||
@ -24914,11 +25169,11 @@ in modules // {
|
||||
|
||||
xarray = buildPythonPackage rec {
|
||||
name = "xarray-${version}";
|
||||
version = "0.7.2";
|
||||
version = "0.8.2";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/x/xarray/${name}.tar.gz";
|
||||
sha256 = "0gnhznv18iz478r8wg6a686dqgs1v4i3yra8y91x3vsfl23mgv34";
|
||||
sha256 = "4da06e38baea65c51347ba0770db416ebf003dbad5637215d2b25b191f2be1fb";
|
||||
};
|
||||
|
||||
buildInputs = with self; [ pytest ];
|
||||
@ -24957,17 +25212,10 @@ in modules // {
|
||||
};
|
||||
};
|
||||
|
||||
youtube-dl = callPackage ../tools/misc/youtube-dl {
|
||||
# Release versions don't need pandoc because the formatted man page
|
||||
# is included in the tarball.
|
||||
pandoc = null;
|
||||
};
|
||||
youtube-dl = callPackage ../tools/misc/youtube-dl {};
|
||||
|
||||
youtube-dl-light = callPackage ../tools/misc/youtube-dl {
|
||||
# Release versions don't need pandoc because the formatted man page
|
||||
# is included in the tarball.
|
||||
ffmpeg = null;
|
||||
pandoc = null;
|
||||
ffmpegSupport = false;
|
||||
};
|
||||
|
||||
zbase32 = buildPythonPackage (rec {
|
||||
@ -29421,6 +29669,58 @@ in modules // {
|
||||
'';
|
||||
};
|
||||
|
||||
txaio = buildPythonPackage rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "txaio";
|
||||
version = "2.5.1";
|
||||
|
||||
meta = {
|
||||
description = "Utilities to support code that runs unmodified on Twisted and asyncio.";
|
||||
homepage = "https://github.com/crossbario/txaio";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ nand0p ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
|
||||
buildInputs = with self; [ pytest mock ];
|
||||
propagatedBuildInputs = with self; [ six twisted ];
|
||||
|
||||
checkPhase = ''
|
||||
py.test -k "not test_sdist"
|
||||
'';
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/t/${pname}/${name}.tar.gz";
|
||||
sha256 = "1pni1m66mlmbybmaf3py4h7cpkmkssqb5l3rigkxvql2f53pcl32";
|
||||
};
|
||||
};
|
||||
|
||||
ramlfications = buildPythonPackage rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "ramlfications";
|
||||
version = "0.1.9";
|
||||
|
||||
meta = {
|
||||
description = "A Python RAML parser.";
|
||||
homepage = "https://ramlfications.readthedocs.org";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ nand0p ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
|
||||
doCheck = false;
|
||||
# [darwin] AssertionError: Expected 'update_mime_types' to have been called once. Called 0 times.
|
||||
|
||||
buildInputs = with self; [ mock pytest pytest-mock pytest-server-fixtures pytest-localserver ];
|
||||
|
||||
propagatedBuildInputs = with self; [ termcolor click markdown2 six jsonref pyyaml xmltodict attrs ];
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/r/${pname}/${name}.tar.gz";
|
||||
sha256 = "0xvnna7kaq4nm5nfnwcwbr5bcm2s532hgyp7kq4v9iivn48rrf3v";
|
||||
};
|
||||
};
|
||||
|
||||
yapf = buildPythonPackage rec {
|
||||
name = "yapf-${version}";
|
||||
version = "0.11.0";
|
||||
@ -29437,4 +29737,51 @@ in modules // {
|
||||
sha256 = "14kb9gxw39zhvrijhp066b4bm6bgv35iw56c394y4dyczpha0dij";
|
||||
};
|
||||
};
|
||||
|
||||
autobahn = buildPythonPackage rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "autobahn";
|
||||
version = "0.16.0";
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/a/${pname}/${name}.tar.gz";
|
||||
sha256 = "1158ml8h3g0vlsgw2jmy579glbg7dn0mjij8xibdl509b8qv9p51";
|
||||
};
|
||||
buildInputs = with self; [ unittest2 mock pytest txaio trollius ];
|
||||
propagatedBuildInputs = with self; [ six twisted ];
|
||||
checkPhase = ''
|
||||
py.test $out
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "WebSocket and WAMP in Python for Twisted and asyncio.";
|
||||
homepage = "http://crossbar.io/autobahn";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ nand0p ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
};
|
||||
|
||||
jsonref = buildPythonPackage rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "jsonref";
|
||||
version = "0.1";
|
||||
|
||||
meta = {
|
||||
description = "An implementation of JSON Reference for Python.";
|
||||
homepage = "http://github.com/gazpachoking/jsonref";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ nand0p ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
|
||||
buildInputs = with self; [ pytest mock ];
|
||||
checkPhase = ''
|
||||
py.test tests.py
|
||||
'';
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://pypi/j/${pname}/${name}.tar.gz";
|
||||
sha256 = "1lqa8dy1sr1bxi00ri79lmbxvzxi84ki8p46zynyrgcqhwicxq2n";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user