Merge remote-tracking branch 'upstream/master' into HEAD
This commit is contained in:
commit
c520e79842
@ -17,7 +17,29 @@ has the following highlights: </para>
|
|||||||
A consequence is that UIDs and GIDs are no longer reused.
|
A consequence is that UIDs and GIDs are no longer reused.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
The module option <option>services.xserver.xrandrHeads</option> now
|
||||||
|
causes the first head specified in this list to be set as the primary
|
||||||
|
head. Apart from that, it's now possible to also set additional options
|
||||||
|
by using an attribute set, for example:
|
||||||
|
<programlisting>
|
||||||
|
{ services.xserver.xrandrHeads = [
|
||||||
|
"HDMI-0"
|
||||||
|
{
|
||||||
|
output = "DVI-0";
|
||||||
|
primary = true;
|
||||||
|
monitorConfig = ''
|
||||||
|
Option "Rotate" "right"
|
||||||
|
'';
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
|
</programlisting>
|
||||||
|
This will set the <literal>DVI-0</literal> output to be the primary head,
|
||||||
|
even though <literal>HDMI-0</literal> is the first head in the list.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
|
|
||||||
<para>The following new services were added since the last release:</para>
|
<para>The following new services were added since the last release:</para>
|
||||||
|
@ -534,6 +534,7 @@
|
|||||||
./services/security/munge.nix
|
./services/security/munge.nix
|
||||||
./services/security/oauth2_proxy.nix
|
./services/security/oauth2_proxy.nix
|
||||||
./services/security/physlock.nix
|
./services/security/physlock.nix
|
||||||
|
./services/security/shibboleth-sp.nix
|
||||||
./services/security/sshguard.nix
|
./services/security/sshguard.nix
|
||||||
./services/security/tor.nix
|
./services/security/tor.nix
|
||||||
./services/security/torify.nix
|
./services/security/torify.nix
|
||||||
|
@ -12,7 +12,7 @@ let
|
|||||||
factory = util.BuildFactory()
|
factory = util.BuildFactory()
|
||||||
c = BuildmasterConfig = dict(
|
c = BuildmasterConfig = dict(
|
||||||
workers = [${concatStringsSep "," cfg.workers}],
|
workers = [${concatStringsSep "," cfg.workers}],
|
||||||
protocols = { 'pb': {'port': ${cfg.bpPort} } },
|
protocols = { 'pb': {'port': ${toString cfg.bpPort} } },
|
||||||
title = '${escapeStr cfg.title}',
|
title = '${escapeStr cfg.title}',
|
||||||
titleURL = '${escapeStr cfg.titleUrl}',
|
titleURL = '${escapeStr cfg.titleUrl}',
|
||||||
buildbotURL = '${escapeStr cfg.buildbotUrl}',
|
buildbotURL = '${escapeStr cfg.buildbotUrl}',
|
||||||
@ -62,7 +62,7 @@ in {
|
|||||||
extraConfig = mkOption {
|
extraConfig = mkOption {
|
||||||
type = types.str;
|
type = types.str;
|
||||||
description = "Extra configuration to append to master.cfg";
|
description = "Extra configuration to append to master.cfg";
|
||||||
default = "";
|
default = "c['buildbotNetUsageData'] = None";
|
||||||
};
|
};
|
||||||
|
|
||||||
masterCfg = mkOption {
|
masterCfg = mkOption {
|
||||||
@ -92,10 +92,7 @@ in {
|
|||||||
workers = mkOption {
|
workers = mkOption {
|
||||||
type = types.listOf types.str;
|
type = types.listOf types.str;
|
||||||
description = "List of Workers.";
|
description = "List of Workers.";
|
||||||
default = [
|
default = [ "worker.Worker('example-worker', 'pass')" ];
|
||||||
"worker.Worker('example-worker', 'pass')"
|
|
||||||
];
|
|
||||||
example = [ "worker.LocalWorker('example-worker')" ];
|
|
||||||
};
|
};
|
||||||
|
|
||||||
status = mkOption {
|
status = mkOption {
|
||||||
@ -135,9 +132,8 @@ in {
|
|||||||
};
|
};
|
||||||
|
|
||||||
bpPort = mkOption {
|
bpPort = mkOption {
|
||||||
default = "9989";
|
default = 9989;
|
||||||
type = types.string;
|
type = types.int;
|
||||||
example = "tcp:10000:interface=127.0.0.1";
|
|
||||||
description = "Port where the master will listen to Buildbot Worker.";
|
description = "Port where the master will listen to Buildbot Worker.";
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -179,14 +175,14 @@ in {
|
|||||||
|
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
type = types.package;
|
type = types.package;
|
||||||
default = pkgs.buildbot-ui;
|
default = pkgs.buildbot-full;
|
||||||
defaultText = "pkgs.buildbot-ui";
|
defaultText = "pkgs.buildbot-full";
|
||||||
description = "Package to use for buildbot.";
|
description = "Package to use for buildbot.";
|
||||||
example = literalExample "pkgs.buildbot-full";
|
example = literalExample "pkgs.buildbot-full";
|
||||||
};
|
};
|
||||||
|
|
||||||
packages = mkOption {
|
packages = mkOption {
|
||||||
default = [ ];
|
default = with pkgs; [ python27Packages.twisted git ];
|
||||||
example = literalExample "[ pkgs.git ]";
|
example = literalExample "[ pkgs.git ]";
|
||||||
type = types.listOf types.package;
|
type = types.listOf types.package;
|
||||||
description = "Packages to add to PATH for the buildbot process.";
|
description = "Packages to add to PATH for the buildbot process.";
|
||||||
@ -212,29 +208,30 @@ in {
|
|||||||
|
|
||||||
systemd.services.buildbot-master = {
|
systemd.services.buildbot-master = {
|
||||||
description = "Buildbot Continuous Integration Server.";
|
description = "Buildbot Continuous Integration Server.";
|
||||||
after = [ "network.target" ];
|
after = [ "network-online.target" ];
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
path = cfg.packages;
|
path = cfg.packages;
|
||||||
|
|
||||||
|
preStart = ''
|
||||||
|
env > envvars
|
||||||
|
mkdir -vp ${cfg.buildbotDir}
|
||||||
|
ln -sfv ${masterCfg} ${cfg.buildbotDir}/master.cfg
|
||||||
|
rm -fv $cfg.buildbotDir}/buildbot.tac
|
||||||
|
${cfg.package}/bin/buildbot create-master ${cfg.buildbotDir}
|
||||||
|
'';
|
||||||
|
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
Type = "simple";
|
Type = "simple";
|
||||||
User = cfg.user;
|
User = cfg.user;
|
||||||
Group = cfg.group;
|
Group = cfg.group;
|
||||||
WorkingDirectory = cfg.home;
|
WorkingDirectory = cfg.home;
|
||||||
ExecStart = "${cfg.package}/bin/buildbot start --nodaemon ${cfg.buildbotDir}";
|
Environment = "PYTHONPATH=${cfg.package}/lib/python2.7/site-packages:${pkgs.buildbot-plugins.www}/lib/python2.7/site-packages:${pkgs.buildbot-plugins.waterfall-view}/lib/python2.7/site-packages:${pkgs.buildbot-plugins.console-view}/lib/python2.7/site-packages:${pkgs.python27Packages.future}/lib/python2.7/site-packages:${pkgs.python27Packages.dateutil}/lib/python2.7/site-packages:${pkgs.python27Packages.six}/lib/python2.7/site-packages:${pkgs.python27Packages.sqlalchemy}/lib/python2.7/site-packages:${pkgs.python27Packages.jinja2}/lib/python2.7/site-packages:${pkgs.python27Packages.markupsafe}/lib/python2.7/site-packages:${pkgs.python27Packages.sqlalchemy_migrate}/lib/python2.7/site-packages:${pkgs.python27Packages.tempita}/lib/python2.7/site-packages:${pkgs.python27Packages.decorator}/lib/python2.7/site-packages:${pkgs.python27Packages.sqlparse}/lib/python2.7/site-packages:${pkgs.python27Packages.txaio}/lib/python2.7/site-packages:${pkgs.python27Packages.autobahn}/lib/python2.7/site-packages:${pkgs.python27Packages.pyjwt}/lib/python2.7/site-packages:${pkgs.python27Packages.distro}/lib/python2.7/site-packages:${pkgs.python27Packages.pbr}/lib/python2.7/site-packages:${pkgs.python27Packages.urllib3}/lib/python2.7/site-packages";
|
||||||
|
|
||||||
|
# NOTE: call twistd directly with stdout logging for systemd
|
||||||
|
#ExecStart = "${cfg.package}/bin/buildbot start --nodaemon ${cfg.buildbotDir}";
|
||||||
|
ExecStart = "${pkgs.python27Packages.twisted}/bin/twistd -n -l - -y ${cfg.buildbotDir}/buildbot.tac";
|
||||||
};
|
};
|
||||||
|
|
||||||
preStart = ''
|
|
||||||
${pkgs.coreutils}/bin/mkdir -vp ${cfg.buildbotDir}
|
|
||||||
${pkgs.coreutils}/bin/ln -sfv ${masterCfg} ${cfg.buildbotDir}/master.cfg
|
|
||||||
${cfg.package}/bin/buildbot create-master ${cfg.buildbotDir}
|
|
||||||
'';
|
|
||||||
|
|
||||||
postStart = ''
|
|
||||||
until [[ $(${pkgs.curl}/bin/curl -s --head -w '\n%{http_code}' http://localhost:${toString cfg.port} | tail -n1) =~ ^(200|403)$ ]]; do
|
|
||||||
sleep 1
|
|
||||||
done
|
|
||||||
'';
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -74,7 +74,7 @@ in {
|
|||||||
};
|
};
|
||||||
|
|
||||||
packages = mkOption {
|
packages = mkOption {
|
||||||
default = [ ];
|
default = with pkgs; [ python27Packages.twisted git ];
|
||||||
example = literalExample "[ pkgs.git ]";
|
example = literalExample "[ pkgs.git ]";
|
||||||
type = types.listOf types.package;
|
type = types.listOf types.package;
|
||||||
description = "Packages to add to PATH for the buildbot process.";
|
description = "Packages to add to PATH for the buildbot process.";
|
||||||
@ -106,7 +106,8 @@ in {
|
|||||||
path = cfg.packages;
|
path = cfg.packages;
|
||||||
|
|
||||||
preStart = ''
|
preStart = ''
|
||||||
${pkgs.coreutils}/bin/mkdir -vp ${cfg.buildbotDir}
|
mkdir -vp ${cfg.buildbotDir}
|
||||||
|
rm -fv $cfg.buildbotDir}/buildbot.tac
|
||||||
${cfg.package}/bin/buildbot-worker create-worker ${cfg.buildbotDir} ${cfg.masterUrl} ${cfg.workerUser} ${cfg.workerPass}
|
${cfg.package}/bin/buildbot-worker create-worker ${cfg.buildbotDir} ${cfg.masterUrl} ${cfg.workerUser} ${cfg.workerPass}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
@ -115,7 +116,11 @@ in {
|
|||||||
User = cfg.user;
|
User = cfg.user;
|
||||||
Group = cfg.group;
|
Group = cfg.group;
|
||||||
WorkingDirectory = cfg.home;
|
WorkingDirectory = cfg.home;
|
||||||
ExecStart = "${cfg.package}/bin/buildbot-worker start --nodaemon ${cfg.buildbotDir}";
|
Environment = "PYTHONPATH=${cfg.package}/lib/python2.7/site-packages:${pkgs.python27Packages.future}/lib/python2.7/site-packages";
|
||||||
|
|
||||||
|
# NOTE: call twistd directly with stdout logging for systemd
|
||||||
|
#ExecStart = "${cfg.package}/bin/buildbot-worker start --nodaemon ${cfg.buildbotDir}";
|
||||||
|
ExecStart = "${pkgs.python27Packages.twisted}/bin/twistd -n -l - -y ${cfg.buildbotDir}/buildbot.tac";
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
73
nixos/modules/services/security/shibboleth-sp.nix
Normal file
73
nixos/modules/services/security/shibboleth-sp.nix
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
{pkgs, config, lib, ...}:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
let
|
||||||
|
cfg = config.services.shibboleth-sp;
|
||||||
|
in {
|
||||||
|
options = {
|
||||||
|
services.shibboleth-sp = {
|
||||||
|
enable = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = "Whether to enable the shibboleth service";
|
||||||
|
};
|
||||||
|
|
||||||
|
configFile = mkOption {
|
||||||
|
type = types.path;
|
||||||
|
example = "${pkgs.shibboleth-sp}/etc/shibboleth/shibboleth2.xml";
|
||||||
|
description = "Path to shibboleth config file";
|
||||||
|
};
|
||||||
|
|
||||||
|
fastcgi.enable = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = "Whether to include the shibauthorizer and shibresponder FastCGI processes";
|
||||||
|
};
|
||||||
|
|
||||||
|
fastcgi.shibAuthorizerPort = mkOption {
|
||||||
|
type = types.int;
|
||||||
|
default = 9100;
|
||||||
|
description = "Port for shibauthorizer FastCGI proccess to bind to";
|
||||||
|
};
|
||||||
|
|
||||||
|
fastcgi.shibResponderPort = mkOption {
|
||||||
|
type = types.int;
|
||||||
|
default = 9101;
|
||||||
|
description = "Port for shibauthorizer FastCGI proccess to bind to";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
systemd.services.shibboleth-sp = {
|
||||||
|
description = "Provides SSO and federation for web applications";
|
||||||
|
after = lib.optionals cfg.fastcgi.enable [ "shibresponder.service" "shibauthorizer.service" ];
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
serviceConfig = {
|
||||||
|
ExecStart = "${pkgs.shibboleth-sp}/bin/shibd -F -d ${pkgs.shibboleth-sp} -c ${cfg.configFile}";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.shibresponder = mkIf cfg.fastcgi.enable {
|
||||||
|
description = "Provides SSO through Shibboleth via FastCGI";
|
||||||
|
after = [ "network.target" ];
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
path = [ "${pkgs.spawn_fcgi}" ];
|
||||||
|
environment.SHIBSP_CONFIG = "${cfg.configFile}";
|
||||||
|
serviceConfig = {
|
||||||
|
ExecStart = "${pkgs.spawn_fcgi}/bin/spawn-fcgi -n -p ${toString cfg.fastcgi.shibResponderPort} ${pkgs.shibboleth-sp}/lib/shibboleth/shibresponder";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.shibauthorizer = mkIf cfg.fastcgi.enable {
|
||||||
|
description = "Provides SSO through Shibboleth via FastCGI";
|
||||||
|
after = [ "network.target" ];
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
path = [ "${pkgs.spawn_fcgi}" ];
|
||||||
|
environment.SHIBSP_CONFIG = "${cfg.configFile}";
|
||||||
|
serviceConfig = {
|
||||||
|
ExecStart = "${pkgs.spawn_fcgi}/bin/spawn-fcgi -n -p ${toString cfg.fastcgi.shibAuthorizerPort} ${pkgs.shibboleth-sp}/lib/shibboleth/shibauthorizer";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
@ -31,18 +31,51 @@ let
|
|||||||
pkgs.xorg.fontadobe75dpi
|
pkgs.xorg.fontadobe75dpi
|
||||||
];
|
];
|
||||||
|
|
||||||
|
xrandrOptions = {
|
||||||
|
output = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
example = "DVI-0";
|
||||||
|
description = ''
|
||||||
|
The output name of the monitor, as shown by <citerefentry>
|
||||||
|
<refentrytitle>xrandr</refentrytitle>
|
||||||
|
<manvolnum>1</manvolnum>
|
||||||
|
</citerefentry> invoked without arguments.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
primary = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = ''
|
||||||
|
Whether this head is treated as the primary monitor,
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
monitorConfig = mkOption {
|
||||||
|
type = types.lines;
|
||||||
|
default = "";
|
||||||
|
example = ''
|
||||||
|
DisplaySize 408 306
|
||||||
|
Option "DPMS" "false"
|
||||||
|
'';
|
||||||
|
description = ''
|
||||||
|
Extra lines to append to the <literal>Monitor</literal> section
|
||||||
|
verbatim.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
# Just enumerate all heads without discarding XRandR output information.
|
# Just enumerate all heads without discarding XRandR output information.
|
||||||
xrandrHeads = let
|
xrandrHeads = let
|
||||||
mkHead = num: output: {
|
mkHead = num: config: {
|
||||||
name = "multihead${toString num}";
|
name = "multihead${toString num}";
|
||||||
inherit output;
|
inherit config;
|
||||||
};
|
};
|
||||||
in imap mkHead cfg.xrandrHeads;
|
in imap mkHead cfg.xrandrHeads;
|
||||||
|
|
||||||
xrandrDeviceSection = let
|
xrandrDeviceSection = let
|
||||||
monitors = flip map xrandrHeads (h: ''
|
monitors = flip map xrandrHeads (h: ''
|
||||||
Option "monitor-${h.output}" "${h.name}"
|
Option "monitor-${h.config.output}" "${h.name}"
|
||||||
'');
|
'');
|
||||||
# First option is indented through the space in the config but any
|
# First option is indented through the space in the config but any
|
||||||
# subsequent options aren't so we need to apply indentation to
|
# subsequent options aren't so we need to apply indentation to
|
||||||
@ -62,9 +95,13 @@ let
|
|||||||
value = ''
|
value = ''
|
||||||
Section "Monitor"
|
Section "Monitor"
|
||||||
Identifier "${current.name}"
|
Identifier "${current.name}"
|
||||||
|
${optionalString (current.config.primary) ''
|
||||||
|
Option "Primary" "true"
|
||||||
|
''}
|
||||||
${optionalString (previous != []) ''
|
${optionalString (previous != []) ''
|
||||||
Option "RightOf" "${(head previous).name}"
|
Option "RightOf" "${(head previous).name}"
|
||||||
''}
|
''}
|
||||||
|
${current.config.monitorConfig}
|
||||||
EndSection
|
EndSection
|
||||||
'';
|
'';
|
||||||
} ++ previous;
|
} ++ previous;
|
||||||
@ -329,13 +366,39 @@ in
|
|||||||
|
|
||||||
xrandrHeads = mkOption {
|
xrandrHeads = mkOption {
|
||||||
default = [];
|
default = [];
|
||||||
example = [ "HDMI-0" "DVI-0" ];
|
example = [
|
||||||
type = with types; listOf string;
|
"HDMI-0"
|
||||||
|
{ output = "DVI-0"; primary = true; }
|
||||||
|
{ output = "DVI-1"; monitorConfig = "Option \"Rotate\" \"left\""; }
|
||||||
|
];
|
||||||
|
type = with types; listOf (coercedTo str (output: {
|
||||||
|
inherit output;
|
||||||
|
}) (submodule { options = xrandrOptions; }));
|
||||||
|
# Set primary to true for the first head if no other has been set
|
||||||
|
# primary already.
|
||||||
|
apply = heads: let
|
||||||
|
hasPrimary = any (x: x.primary) heads;
|
||||||
|
firstPrimary = head heads // { primary = true; };
|
||||||
|
newHeads = singleton firstPrimary ++ tail heads;
|
||||||
|
in if heads != [] && !hasPrimary then newHeads else heads;
|
||||||
description = ''
|
description = ''
|
||||||
Simple multiple monitor configuration, just specify a list of XRandR
|
Multiple monitor configuration, just specify a list of XRandR
|
||||||
outputs which will be mapped from left to right in the order of the
|
outputs. The individual elements should be either simple strings or
|
||||||
|
an attribute set of output options.
|
||||||
|
|
||||||
|
If the element is a string, it is denoting the physical output for a
|
||||||
|
monitor, if it's an attribute set, you must at least provide the
|
||||||
|
<option>output</option> option.
|
||||||
|
|
||||||
|
The monitors will be mapped from left to right in the order of the
|
||||||
list.
|
list.
|
||||||
|
|
||||||
|
By default, the first monitor will be set as the primary monitor if
|
||||||
|
none of the elements contain an option that has set
|
||||||
|
<option>primary</option> to <literal>true</literal>.
|
||||||
|
|
||||||
|
<note><para>Only one monitor is allowed to be primary.</para></note>
|
||||||
|
|
||||||
Be careful using this option with multiple graphic adapters or with
|
Be careful using this option with multiple graphic adapters or with
|
||||||
drivers that have poor support for XRandR, unexpected things might
|
drivers that have poor support for XRandR, unexpected things might
|
||||||
happen with those.
|
happen with those.
|
||||||
@ -469,11 +532,18 @@ in
|
|||||||
|
|
||||||
nixpkgs.config.xorg = optionalAttrs (elem "vboxvideo" cfg.videoDrivers) { abiCompat = "1.18"; };
|
nixpkgs.config.xorg = optionalAttrs (elem "vboxvideo" cfg.videoDrivers) { abiCompat = "1.18"; };
|
||||||
|
|
||||||
assertions =
|
assertions = [
|
||||||
[ { assertion = config.security.polkit.enable;
|
{ assertion = config.security.polkit.enable;
|
||||||
message = "X11 requires Polkit to be enabled (‘security.polkit.enable = true’).";
|
message = "X11 requires Polkit to be enabled (‘security.polkit.enable = true’).";
|
||||||
}
|
}
|
||||||
];
|
(let primaryHeads = filter (x: x.primary) cfg.xrandrHeads; in {
|
||||||
|
assertion = length primaryHeads < 2;
|
||||||
|
message = "Only one head is allowed to be primary in "
|
||||||
|
+ "‘services.xserver.xrandrHeads’, but there are "
|
||||||
|
+ "${toString (length primaryHeads)} heads set to primary: "
|
||||||
|
+ concatMapStringsSep ", " (x: x.output) primaryHeads;
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
environment.etc =
|
environment.etc =
|
||||||
(optionals cfg.exportConfiguration
|
(optionals cfg.exportConfiguration
|
||||||
|
@ -4,18 +4,22 @@ import ./make-test.nix ({ pkgs, ... } : {
|
|||||||
name = "buildbot";
|
name = "buildbot";
|
||||||
|
|
||||||
nodes = {
|
nodes = {
|
||||||
bbmaster = { config, pkgs, nodes, ... }: {
|
bbmaster = { config, pkgs, ... }: {
|
||||||
services.buildbot-master = {
|
services.buildbot-master = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
package = pkgs.buildbot-full;
|
||||||
|
|
||||||
|
# NOTE: use fake repo due to no internet in hydra ci
|
||||||
factorySteps = [
|
factorySteps = [
|
||||||
"steps.Git(repourl='git://github.com/buildbot/pyflakes.git', mode='incremental')"
|
"steps.Git(repourl='git://gitrepo/fakerepo.git', mode='incremental')"
|
||||||
"steps.ShellCommand(command=['trial', 'pyflakes'])"
|
"steps.ShellCommand(command=['bash', 'fakerepo.sh'])"
|
||||||
];
|
];
|
||||||
changeSource = [
|
changeSource = [
|
||||||
"changes.GitPoller('git://github.com/buildbot/pyflakes.git', workdir='gitpoller-workdir', branch='master', pollinterval=300)"
|
"changes.GitPoller('git://gitrepo/fakerepo.git', workdir='gitpoller-workdir', branch='master', pollinterval=300)"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
networking.firewall.allowedTCPPorts = [ 8010 9989 ];
|
networking.firewall.allowedTCPPorts = [ 8010 8011 9989 ];
|
||||||
|
environment.systemPackages = with pkgs; [ git buildbot-full ];
|
||||||
};
|
};
|
||||||
|
|
||||||
bbworker = { config, pkgs, ... }: {
|
bbworker = { config, pkgs, ... }: {
|
||||||
@ -23,24 +27,85 @@ import ./make-test.nix ({ pkgs, ... } : {
|
|||||||
enable = true;
|
enable = true;
|
||||||
masterUrl = "bbmaster:9989";
|
masterUrl = "bbmaster:9989";
|
||||||
};
|
};
|
||||||
|
environment.systemPackages = with pkgs; [ git buildbot-worker ];
|
||||||
|
};
|
||||||
|
|
||||||
|
gitrepo = { config, pkgs, ... }: {
|
||||||
|
services.openssh.enable = true;
|
||||||
|
networking.firewall.allowedTCPPorts = [ 22 9418 ];
|
||||||
|
environment.systemPackages = with pkgs; [ git ];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
testScript = ''
|
testScript = ''
|
||||||
|
#Start up and populate fake repo
|
||||||
|
$gitrepo->waitForUnit("multi-user.target");
|
||||||
|
print($gitrepo->execute(" \
|
||||||
|
git config --global user.name 'Nobody Fakeuser' && \
|
||||||
|
git config --global user.email 'nobody\@fakerepo.com' && \
|
||||||
|
rm -rvf /srv/repos/fakerepo.git /tmp/fakerepo && \
|
||||||
|
mkdir -pv /srv/repos/fakerepo ~/.ssh && \
|
||||||
|
ssh-keyscan -H gitrepo > ~/.ssh/known_hosts && \
|
||||||
|
cat ~/.ssh/known_hosts && \
|
||||||
|
cd /srv/repos/fakerepo && \
|
||||||
|
git init && \
|
||||||
|
echo -e '#!/bin/sh\necho fakerepo' > fakerepo.sh && \
|
||||||
|
cat fakerepo.sh && \
|
||||||
|
touch .git/git-daemon-export-ok && \
|
||||||
|
git add fakerepo.sh .git/git-daemon-export-ok && \
|
||||||
|
git commit -m fakerepo && \
|
||||||
|
git daemon --verbose --export-all --base-path=/srv/repos --reuseaddr & \
|
||||||
|
"));
|
||||||
|
|
||||||
$bbmaster->waitForUnit("network.target");
|
# Test gitrepo
|
||||||
$bbworker->waitForUnit("network.target");
|
$bbmaster->waitForUnit("network-online.target");
|
||||||
|
#$bbmaster->execute("nc -z gitrepo 9418");
|
||||||
|
print($bbmaster->execute(" \
|
||||||
|
rm -rfv /tmp/fakerepo && \
|
||||||
|
git clone git://gitrepo/fakerepo /tmp/fakerepo && \
|
||||||
|
pwd && \
|
||||||
|
ls -la && \
|
||||||
|
ls -la /tmp/fakerepo \
|
||||||
|
"));
|
||||||
|
|
||||||
# Additional tests to be added
|
# Test start master and connect worker
|
||||||
#$bbmaster->waitForUnit("buildbot-master.service");
|
$bbmaster->waitForUnit("buildbot-master.service");
|
||||||
#$bbmaster->waitUntilSucceeds("curl -s --head http://bbmaster:8010") =~ /200 OK/ or die;
|
$bbmaster->waitUntilSucceeds("curl -s --head http://bbmaster:8010") =~ /200 OK/;
|
||||||
#$bbworker->waitForUnit("buildbot-worker.service");
|
$bbworker->waitForUnit("network-online.target");
|
||||||
#$bbworker->waitUntilSucceeds("tail -10 /home/bbworker/worker/twistd.log") =~ /success/ or die;
|
$bbworker->execute("nc -z bbmaster 8010");
|
||||||
|
$bbworker->execute("nc -z bbmaster 9989");
|
||||||
|
$bbworker->waitForUnit("buildbot-worker.service");
|
||||||
|
print($bbworker->execute("ls -la /home/bbworker/worker"));
|
||||||
|
|
||||||
|
|
||||||
|
# Test stop buildbot master and worker
|
||||||
|
print($bbmaster->execute(" \
|
||||||
|
systemctl -l --no-pager status buildbot-master && \
|
||||||
|
systemctl stop buildbot-master \
|
||||||
|
"));
|
||||||
|
$bbworker->fail("nc -z bbmaster 8010");
|
||||||
|
$bbworker->fail("nc -z bbmaster 9989");
|
||||||
|
print($bbworker->execute(" \
|
||||||
|
systemctl -l --no-pager status buildbot-worker && \
|
||||||
|
systemctl stop buildbot-worker && \
|
||||||
|
ls -la /home/bbworker/worker \
|
||||||
|
"));
|
||||||
|
|
||||||
|
|
||||||
|
# Test buildbot daemon mode
|
||||||
|
# NOTE: daemon mode tests disabled due to broken PYTHONPATH child inheritence
|
||||||
|
#
|
||||||
|
#$bbmaster->execute("buildbot create-master /tmp");
|
||||||
|
#$bbmaster->execute("mv -fv /tmp/master.cfg.sample /tmp/master.cfg");
|
||||||
|
#$bbmaster->execute("sed -i 's/8010/8011/' /tmp/master.cfg");
|
||||||
|
#$bbmaster->execute("buildbot start /tmp");
|
||||||
|
#$bbworker->execute("nc -z bbmaster 8011");
|
||||||
|
#$bbworker->waitUntilSucceeds("curl -s --head http://bbmaster:8011") =~ /200 OK/;
|
||||||
|
#$bbmaster->execute("buildbot stop /tmp");
|
||||||
|
#$bbworker->fail("nc -z bbmaster 8011");
|
||||||
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with pkgs.stdenv.lib.maintainers; {
|
meta.maintainers = with pkgs.stdenv.lib.maintainers; [ nand0p ];
|
||||||
maintainers = [ nand0p ];
|
|
||||||
};
|
|
||||||
|
|
||||||
})
|
})
|
||||||
|
@ -24,8 +24,8 @@ let
|
|||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "neovim";
|
owner = "neovim";
|
||||||
repo = "libvterm";
|
repo = "libvterm";
|
||||||
rev = "11682793d84668057c5aedc3d7f8071bb54eaf2c";
|
rev = "5a748f97fbf27003e141002b58933a99f3addf8d";
|
||||||
sha256 = "0pd90yx6xsagrqjipi26sxri1l4wdnx23ziad1zbxnqx9njxa7g3";
|
sha256 = "1fnd57f5n9h7z50a4vj7g96k6ndsdknjqsibgnxi9ndhyz244qbx";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ perl ];
|
buildInputs = [ perl ];
|
||||||
@ -81,13 +81,13 @@ let
|
|||||||
|
|
||||||
neovim = stdenv.mkDerivation rec {
|
neovim = stdenv.mkDerivation rec {
|
||||||
name = "neovim-${version}";
|
name = "neovim-${version}";
|
||||||
version = "0.1.7";
|
version = "0.2.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "neovim";
|
owner = "neovim";
|
||||||
repo = "neovim";
|
repo = "neovim";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0bk0raxlb1xsqyw9pmqmxvcq5szqhimidrasnvzrci84gld8cwz4";
|
sha256 = "0fhjkgjwqqmzbfn9wk10l2vq9v74zkriz5j12b1rx0gdwzlfybn8";
|
||||||
};
|
};
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
@ -4,17 +4,17 @@ with stdenv.lib;
|
|||||||
|
|
||||||
pythonPackages.buildPythonPackage rec {
|
pythonPackages.buildPythonPackage rec {
|
||||||
name = "neovim-remote-${version}";
|
name = "neovim-remote-${version}";
|
||||||
version = "v1.4.0";
|
version = "v1.6.0";
|
||||||
disabled = !pythonPackages.isPy3k;
|
disabled = !pythonPackages.isPy3k;
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "mhinz";
|
owner = "mhinz";
|
||||||
repo = "neovim-remote";
|
repo = "neovim-remote";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "0msvfh27f56xj5ki59ikzavxz863nal5scm57n43618m49qzg8iz";
|
sha256 = "0x01zpmxi37jr7j2az2bd8902h7zhkpg6kpvc8xmll9f7703zz2l";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [ pythonPackages.neovim ];
|
propagatedBuildInputs = with pythonPackages; [ neovim psutil ];
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "A tool that helps controlling nvim processes from a terminal";
|
description = "A tool that helps controlling nvim processes from a terminal";
|
||||||
|
@ -3,13 +3,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "neovim-qt-${version}";
|
name = "neovim-qt-${version}";
|
||||||
version = "0.2.6";
|
version = "0.2.7";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "equalsraf";
|
owner = "equalsraf";
|
||||||
repo = "neovim-qt";
|
repo = "neovim-qt";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1wsxhy8fdayy4dsr2dxgh5k4jysybjlyzj134vk325v6cqz9bsgm";
|
sha256 = "1bfni38l7cs0wbd9c6hgz2jfc8h3ixmg94izdvydm8j7amdz0cb6";
|
||||||
};
|
};
|
||||||
|
|
||||||
cmakeFlags = [
|
cmakeFlags = [
|
||||||
@ -17,7 +17,13 @@ stdenv.mkDerivation rec {
|
|||||||
"-DMSGPACK_LIBRARIES=${libmsgpack}/lib/libmsgpackc.so"
|
"-DMSGPACK_LIBRARIES=${libmsgpack}/lib/libmsgpackc.so"
|
||||||
];
|
];
|
||||||
|
|
||||||
doCheck = true;
|
# The following tests FAILED:
|
||||||
|
# 2 - tst_neovimconnector (Failed)
|
||||||
|
# 3 - tst_callallmethods (Failed)
|
||||||
|
# 4 - tst_encoding (Failed)
|
||||||
|
#
|
||||||
|
# Tests failed when upgraded to neovim 0.2.0
|
||||||
|
doCheck = false;
|
||||||
|
|
||||||
buildInputs = with pythonPackages; [
|
buildInputs = with pythonPackages; [
|
||||||
neovim qtbase libmsgpack
|
neovim qtbase libmsgpack
|
||||||
|
@ -1,13 +1,5 @@
|
|||||||
{ stdenv, fetchurl, makeDesktopItem, cmake, boost163, zlib, openssl,
|
{ stdenv, fetchurl, makeDesktopItem, cmake, boost163, zlib, openssl,
|
||||||
R, qt5, libuuid, hunspellDicts, unzip, ant, jdk, gnumake, makeWrapper, pandoc,
|
R, qt5, libuuid, hunspellDicts, unzip, ant, jdk, gnumake, makeWrapper, pandoc
|
||||||
# If you have set up an R wrapper with other packages by following
|
|
||||||
# something like https://nixos.org/nixpkgs/manual/#r-packages, RStudio
|
|
||||||
# by default not be able to access any of those R packages. In order
|
|
||||||
# to do this, override the argument "R" here with your respective R
|
|
||||||
# wrapper, and set "useRPackages" to true. This will add the
|
|
||||||
# environment variable R_PROFILE_USER to the RStudio wrapper, pointing
|
|
||||||
# to an R script which will allow R to use these packages.
|
|
||||||
useRPackages ? false
|
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
@ -111,14 +103,8 @@ stdenv.mkDerivation rec {
|
|||||||
mimeType = "text/x-r-source;text/x-r;text/x-R;text/x-r-doc;text/x-r-sweave;text/x-r-markdown;text/x-r-html;text/x-r-presentation;application/x-r-data;application/x-r-project;text/x-r-history;text/x-r-profile;text/x-tex;text/x-markdown;text/html;text/css;text/javascript;text/x-chdr;text/x-csrc;text/x-c++hdr;text/x-c++src;";
|
mimeType = "text/x-r-source;text/x-r;text/x-R;text/x-r-doc;text/x-r-sweave;text/x-r-markdown;text/x-r-html;text/x-r-presentation;application/x-r-data;application/x-r-project;text/x-r-history;text/x-r-profile;text/x-tex;text/x-markdown;text/html;text/css;text/javascript;text/x-chdr;text/x-csrc;text/x-c++hdr;text/x-c++src;";
|
||||||
};
|
};
|
||||||
|
|
||||||
postInstall = let rProfile =
|
postInstall = ''
|
||||||
# RStudio seems to bypass the environment variables that the R
|
wrapProgram $out/bin/rstudio --suffix PATH : ${gnumake}/bin
|
||||||
# wrapper already applies, and so this sets R_PROFILE_USER to
|
|
||||||
# again make those R packages accessible:
|
|
||||||
if useRPackages
|
|
||||||
then "--set R_PROFILE_USER ${R}/${R.passthru.fixLibsR}" else "";
|
|
||||||
in ''
|
|
||||||
wrapProgram $out/bin/rstudio --suffix PATH : ${gnumake}/bin ${rProfile}
|
|
||||||
mkdir $out/share
|
mkdir $out/share
|
||||||
cp -r ${desktopItem}/share/applications $out/share
|
cp -r ${desktopItem}/share/applications $out/share
|
||||||
mkdir $out/share/icons
|
mkdir $out/share/icons
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
kdeApp, lib,
|
kdeApp, lib, makeQtWrapper,
|
||||||
extra-cmake-modules, kdoctools, ki18n,
|
extra-cmake-modules, kdoctools, ki18n,
|
||||||
akonadi-contacts, gpgme, karchive, kcodecs, kcontacts, kcoreaddons, kcrash,
|
akonadi-contacts, gnupg1, gpgme, karchive, kcodecs, kcontacts, kcoreaddons, kcrash,
|
||||||
kdbusaddons, kiconthemes, kjobwidgets, kio, knotifications, kservice,
|
kdbusaddons, kiconthemes, kjobwidgets, kio, knotifications, kservice,
|
||||||
ktextwidgets, kxmlgui, kwidgetsaddons, kwindowsystem
|
ktextwidgets, kxmlgui, kwidgetsaddons, kwindowsystem
|
||||||
}:
|
}:
|
||||||
@ -10,10 +10,13 @@ kdeApp {
|
|||||||
name = "kgpg";
|
name = "kgpg";
|
||||||
nativeBuildInputs = [ extra-cmake-modules kdoctools ki18n ];
|
nativeBuildInputs = [ extra-cmake-modules kdoctools ki18n ];
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
akonadi-contacts gpgme karchive kcodecs kcontacts kcoreaddons kcrash kdbusaddons
|
akonadi-contacts gnupg1 gpgme karchive kcodecs kcontacts kcoreaddons kcrash kdbusaddons
|
||||||
kiconthemes kjobwidgets kio knotifications kservice ktextwidgets kxmlgui
|
kiconthemes kjobwidgets kio knotifications kservice ktextwidgets kxmlgui
|
||||||
kwidgetsaddons kwindowsystem
|
kwidgetsaddons kwindowsystem makeQtWrapper
|
||||||
];
|
];
|
||||||
|
postInstall = ''
|
||||||
|
wrapQtProgram $out/bin/kgpg --suffix PATH : ${lib.makeBinPath [ gnupg1 ]}
|
||||||
|
'';
|
||||||
meta = {
|
meta = {
|
||||||
license = [ lib.licenses.gpl2 ];
|
license = [ lib.licenses.gpl2 ];
|
||||||
maintainers = [ lib.maintainers.ttuegel ];
|
maintainers = [ lib.maintainers.ttuegel ];
|
||||||
|
@ -22,7 +22,7 @@ python3Packages.buildPythonApplication rec {
|
|||||||
inherit (src.meta) homepage;
|
inherit (src.meta) homepage;
|
||||||
description = "Universal Radio Hacker: investigate wireless protocols like a boss";
|
description = "Universal Radio Hacker: investigate wireless protocols like a boss";
|
||||||
license = licenses.asl20;
|
license = licenses.asl20;
|
||||||
platform = platforms.all;
|
platforms = platforms.all;
|
||||||
maintainers = with maintainers; [ fpletz ];
|
maintainers = with maintainers; [ fpletz ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
, glib, fontconfig, freetype, pango, cairo, libX11, libXi, atk, gconf, nss, nspr
|
, glib, fontconfig, freetype, pango, cairo, libX11, libXi, atk, gconf, nss, nspr
|
||||||
, libXcursor, libXext, libXfixes, libXrender, libXScrnSaver, libXcomposite, libxcb
|
, libXcursor, libXext, libXfixes, libXrender, libXScrnSaver, libXcomposite, libxcb
|
||||||
, alsaLib, libXdamage, libXtst, libXrandr, expat, cups
|
, alsaLib, libXdamage, libXtst, libXrandr, expat, cups
|
||||||
, dbus_libs, gtk2, gtk3, gdk_pixbuf, gcc
|
, dbus_libs, gtk2, gtk3, gdk_pixbuf, gcc-unwrapped
|
||||||
|
|
||||||
# command line arguments which are always set e.g "--disable-gpu"
|
# command line arguments which are always set e.g "--disable-gpu"
|
||||||
, commandLineArgs ? ""
|
, commandLineArgs ? ""
|
||||||
@ -43,11 +43,10 @@ let
|
|||||||
};
|
};
|
||||||
|
|
||||||
deps = [
|
deps = [
|
||||||
stdenv.cc.cc
|
|
||||||
glib fontconfig freetype pango cairo libX11 libXi atk gconf nss nspr
|
glib fontconfig freetype pango cairo libX11 libXi atk gconf nss nspr
|
||||||
libXcursor libXext libXfixes libXrender libXScrnSaver libXcomposite libxcb
|
libXcursor libXext libXfixes libXrender libXScrnSaver libXcomposite libxcb
|
||||||
alsaLib libXdamage libXtst libXrandr expat cups
|
alsaLib libXdamage libXtst libXrandr expat cups
|
||||||
dbus_libs gdk_pixbuf gcc
|
dbus_libs gdk_pixbuf gcc-unwrapped.lib
|
||||||
systemd
|
systemd
|
||||||
libexif
|
libexif
|
||||||
liberation_ttf curl utillinux xdg_utils wget
|
liberation_ttf curl utillinux xdg_utils wget
|
||||||
|
@ -23,11 +23,11 @@
|
|||||||
let
|
let
|
||||||
# NOTE: When updating, please also update in current stable,
|
# NOTE: When updating, please also update in current stable,
|
||||||
# as older versions stop working
|
# as older versions stop working
|
||||||
version = "24.4.17";
|
version = "25.4.28";
|
||||||
sha256 =
|
sha256 =
|
||||||
{
|
{
|
||||||
"x86_64-linux" = "1wjr92vrbxyjbwyqf134h8fp1zi4d5wyyirii545wqadbgg9grh9";
|
"x86_64-linux" = "0r0bdl37rkar3nijxslp493mic5qd20l125p1kghqbradvh57rl3";
|
||||||
"i686-linux" = "1qsdidpy251irzkv0hx0ch0xnrwq6wq6b22g0n8b9d0a7xi08k7h";
|
"i686-linux" = "1difq6ky1klvminbzjivvq6ap3l296gij0ghgyy1n4lca3jqq648";
|
||||||
}."${stdenv.system}" or (throw "system ${stdenv.system} not supported");
|
}."${stdenv.system}" or (throw "system ${stdenv.system} not supported");
|
||||||
|
|
||||||
arch =
|
arch =
|
||||||
|
@ -12,12 +12,12 @@ python2Packages.buildPythonApplication rec {
|
|||||||
propagatedBuildInputs = with python2Packages; [ feedparser ];
|
propagatedBuildInputs = with python2Packages; [ feedparser ];
|
||||||
|
|
||||||
namePrefix = "";
|
namePrefix = "";
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
homepage = "http://offog.org/code/rawdog/";
|
homepage = "http://offog.org/code/rawdog/";
|
||||||
description = "RSS Aggregator Without Delusions Of Grandeur";
|
description = "RSS Aggregator Without Delusions Of Grandeur";
|
||||||
license = licenses.gpl2;
|
license = licenses.gpl2;
|
||||||
platform = platforms.unix;
|
platforms = platforms.unix;
|
||||||
maintainers = with maintainers; [ nckx ];
|
maintainers = with maintainers; [ nckx ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -26,6 +26,6 @@ python27Packages.buildPythonApplication rec {
|
|||||||
description = "Qt remote GUI for WeeChat";
|
description = "Qt remote GUI for WeeChat";
|
||||||
license = licenses.gpl3;
|
license = licenses.gpl3;
|
||||||
maintainers = with maintainers; [ ramkromberg ];
|
maintainers = with maintainers; [ ramkromberg ];
|
||||||
platform = with platforms; linux;
|
platforms = with platforms; linux;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -21,7 +21,7 @@ set which contains `emacsWithPackages`. For example, to override
|
|||||||
`emacsPackagesNg.emacsWithPackages`,
|
`emacsPackagesNg.emacsWithPackages`,
|
||||||
```
|
```
|
||||||
let customEmacsPackages =
|
let customEmacsPackages =
|
||||||
emacsPackagesNg.override (super: self: {
|
emacsPackagesNg.overrideScope (super: self: {
|
||||||
# use a custom version of emacs
|
# use a custom version of emacs
|
||||||
emacs = ...;
|
emacs = ...;
|
||||||
# use the unstable MELPA version of magit
|
# use the unstable MELPA version of magit
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
{ stdenv, fetchurl, composableDerivation, unzip, libjpeg, libtiff, zlib
|
{ stdenv, fetchurl, composableDerivation, unzip, libjpeg, libtiff, zlib
|
||||||
, postgresql, mysql, libgeotiff, pythonPackages, proj, geos, openssl
|
, postgresql, mysql, libgeotiff, pythonPackages, proj, geos, openssl
|
||||||
, libpng, sqlite, libspatialite
|
, libpng, sqlite, libspatialite
|
||||||
, netcdf, hdf5 , curl
|
, libiconv
|
||||||
, netcdfSupport ? true
|
, netcdfSupport ? true, netcdf, hdf5 , curl
|
||||||
}:
|
}:
|
||||||
|
|
||||||
with stdenv.lib;
|
with stdenv.lib;
|
||||||
|
|
||||||
composableDerivation.composableDerivation {} (fixed: rec {
|
composableDerivation.composableDerivation {} (fixed: rec {
|
||||||
version = "2.1.3";
|
version = "2.1.3";
|
||||||
name = "gdal-${version}";
|
name = "gdal-${version}";
|
||||||
@ -18,7 +18,8 @@ composableDerivation.composableDerivation {} (fixed: rec {
|
|||||||
|
|
||||||
buildInputs = [ unzip libjpeg libtiff libpng proj openssl sqlite libspatialite ]
|
buildInputs = [ unzip libjpeg libtiff libpng proj openssl sqlite libspatialite ]
|
||||||
++ (with pythonPackages; [ python numpy wrapPython ])
|
++ (with pythonPackages; [ python numpy wrapPython ])
|
||||||
++ (stdenv.lib.optionals netcdfSupport [ netcdf hdf5 curl ]);
|
++ stdenv.lib.optional stdenv.isDarwin libiconv
|
||||||
|
++ stdenv.lib.optionals netcdfSupport [ netcdf hdf5 curl ];
|
||||||
|
|
||||||
hardeningDisable = [ "format" ];
|
hardeningDisable = [ "format" ];
|
||||||
|
|
||||||
|
@ -10,17 +10,6 @@ index 6abbc72..804f0f2 100644
|
|||||||
#include "gettext.h"
|
#include "gettext.h"
|
||||||
#define _(String) dgettext (PACKAGE, String)
|
#define _(String) dgettext (PACKAGE, String)
|
||||||
#include "progname.h"
|
#include "progname.h"
|
||||||
@@ -161,9 +160,7 @@ process_input (char *readbuf, int flags)
|
|
||||||
free (output);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
- error (EXIT_FAILURE, 0, "%s: %s",
|
|
||||||
- args_info.register_given ? "register" : "lookup",
|
|
||||||
- idn2_strerror (rc));
|
|
||||||
+ perror (idn2_strerror (rc));
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
|
||||||
@@ -222,7 +219,7 @@ main (int argc, char *argv[])
|
@@ -222,7 +219,7 @@ main (int argc, char *argv[])
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2,7 +2,10 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "qtinstaller";
|
name = "qtinstaller";
|
||||||
buildInputs = [ qtdeclarative qttools qtbase qmakeHook ];
|
|
||||||
|
propagatedBuildInputs = [qtdeclarative qttools];
|
||||||
|
nativeBuildInputs = [ qmakeHook ];
|
||||||
|
|
||||||
version = "2.0.3";
|
version = "2.0.3";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://download.qt.io/official_releases/qt-installer-framework/${version}/qt-installer-framework-opensource-${version}-src.tar.gz";
|
url = "http://download.qt.io/official_releases/qt-installer-framework/${version}/qt-installer-framework-opensource-${version}-src.tar.gz";
|
||||||
@ -12,6 +15,10 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
outputs = [ "out" "dev" "doc" ];
|
outputs = [ "out" "dev" "doc" ];
|
||||||
|
|
||||||
|
setOutputFlags = false;
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
NIX_QT_SUBMODULE = true;
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir -p $out/{bin,lib,share/qt-installer-framework}
|
mkdir -p $out/{bin,lib,share/qt-installer-framework}
|
||||||
cp -a bin/{archivegen,binarycreator,devtool,installerbase,repogen} $out/bin
|
cp -a bin/{archivegen,binarycreator,devtool,installerbase,repogen} $out/bin
|
||||||
|
22
pkgs/development/python-modules/certifi/default.nix
Normal file
22
pkgs/development/python-modules/certifi/default.nix
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
{ lib
|
||||||
|
, fetchPypi
|
||||||
|
, buildPythonPackage
|
||||||
|
}:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
pname = "certifi";
|
||||||
|
version = "2017.1.23";
|
||||||
|
name = "${pname}-${version}";
|
||||||
|
|
||||||
|
src = fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
sha256 = "1klrzl3hgvcf2mjk00g0k3kk1p2z27vzwnxivwar4vhjmjvpz1w1";
|
||||||
|
};
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
homepage = http://certifi.io/;
|
||||||
|
description = "Python package for providing Mozilla's CA Bundle";
|
||||||
|
license = lib.licenses.isc;
|
||||||
|
maintainers = with lib.maintainers; [ koral ];
|
||||||
|
};
|
||||||
|
}
|
@ -3,6 +3,8 @@
|
|||||||
, fetchPypi
|
, fetchPypi
|
||||||
, cython
|
, cython
|
||||||
, isPyPy
|
, isPyPy
|
||||||
|
, ipython
|
||||||
|
, python
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
@ -17,8 +19,14 @@ buildPythonPackage rec {
|
|||||||
|
|
||||||
buildInputs = [ cython ];
|
buildInputs = [ cython ];
|
||||||
|
|
||||||
|
propagatedBuildInputs = [ ipython ];
|
||||||
|
|
||||||
disabled = isPyPy;
|
disabled = isPyPy;
|
||||||
|
|
||||||
|
checkPhase = ''
|
||||||
|
${python.interpreter} -m unittest discover -s tests
|
||||||
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Line-by-line profiler";
|
description = "Line-by-line profiler";
|
||||||
homepage = https://github.com/rkern/line_profiler;
|
homepage = https://github.com/rkern/line_profiler;
|
||||||
|
@ -1,18 +1,34 @@
|
|||||||
{ stdenv, fetchurl, nettools, glibcLocales, pythonPackages }:
|
{ lib
|
||||||
|
, buildPythonPackage
|
||||||
|
, fetchPypi
|
||||||
|
, nettools
|
||||||
|
, glibcLocales
|
||||||
|
, autobahn
|
||||||
|
, cffi
|
||||||
|
, click
|
||||||
|
, hkdf
|
||||||
|
, pynacl
|
||||||
|
, spake2
|
||||||
|
, tqdm
|
||||||
|
, python
|
||||||
|
, mock
|
||||||
|
}:
|
||||||
|
|
||||||
pythonPackages.buildPythonApplication rec {
|
buildPythonPackage rec {
|
||||||
name = "magic-wormhole-${version}";
|
pname = "magic-wormhole";
|
||||||
version = "0.8.1";
|
version = "0.8.1";
|
||||||
|
name = "${pname}-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchPypi {
|
||||||
url = "mirror://pypi/m/magic-wormhole/${name}.tar.gz";
|
inherit pname version;
|
||||||
sha256 = "1yh5nbhh9z1am2pqnb5qqyq1zjl1m7z6jnkmvry2q14qwspw9had";
|
sha256 = "1yh5nbhh9z1am2pqnb5qqyq1zjl1m7z6jnkmvry2q14qwspw9had";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
checkInputs = [ mock ];
|
||||||
buildInputs = [ nettools glibcLocales ];
|
buildInputs = [ nettools glibcLocales ];
|
||||||
propagatedBuildInputs = with pythonPackages; [ autobahn cffi click hkdf pynacl spake2 tqdm ];
|
propagatedBuildInputs = [ autobahn cffi click hkdf pynacl spake2 tqdm ];
|
||||||
|
|
||||||
patchPhase = ''
|
postPatch = ''
|
||||||
sed -i -e "s|'ifconfig'|'${nettools}/bin/ifconfig'|" src/wormhole/ipaddrs.py
|
sed -i -e "s|'ifconfig'|'${nettools}/bin/ifconfig'|" src/wormhole/ipaddrs.py
|
||||||
sed -i -e "s|if (os.path.dirname(os.path.abspath(wormhole))|if not os.path.abspath(wormhole).startswith('/nix/store') and (os.path.dirname(os.path.abspath(wormhole))|" src/wormhole/test/test_scripts.py
|
sed -i -e "s|if (os.path.dirname(os.path.abspath(wormhole))|if not os.path.abspath(wormhole).startswith('/nix/store') and (os.path.dirname(os.path.abspath(wormhole))|" src/wormhole/test/test_scripts.py
|
||||||
# XXX: disable one test due to warning:
|
# XXX: disable one test due to warning:
|
||||||
@ -24,10 +40,10 @@ pythonPackages.buildPythonApplication rec {
|
|||||||
export PATH="$PATH:$out/bin"
|
export PATH="$PATH:$out/bin"
|
||||||
export LANG="en_US.UTF-8"
|
export LANG="en_US.UTF-8"
|
||||||
export LC_ALL="en_US.UTF-8"
|
export LC_ALL="en_US.UTF-8"
|
||||||
${pythonPackages.python.interpreter} -m wormhole.test.run_trial wormhole
|
${python.interpreter} -m wormhole.test.run_trial wormhole
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with lib; {
|
||||||
description = "Securely transfer data between computers";
|
description = "Securely transfer data between computers";
|
||||||
homepage = "https://github.com/warner/magic-wormhole";
|
homepage = "https://github.com/warner/magic-wormhole";
|
||||||
license = licenses.mit;
|
license = licenses.mit;
|
||||||
|
27
pkgs/development/python-modules/pydot/default.nix
Normal file
27
pkgs/development/python-modules/pydot/default.nix
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
{ lib
|
||||||
|
, buildPythonPackage
|
||||||
|
, fetchPypi
|
||||||
|
, chardet
|
||||||
|
, pyparsing
|
||||||
|
, graphviz
|
||||||
|
}:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
pname = "pydot";
|
||||||
|
version = "1.2.3";
|
||||||
|
name = "${pname}-${version}";
|
||||||
|
|
||||||
|
src = fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
sha256 = "edb5d3f249f97fbd9c4bb16959e61bc32ecf40eee1a9f6d27abe8d01c0a73502";
|
||||||
|
};
|
||||||
|
checkInputs = [ chardet ];
|
||||||
|
# No tests in archive
|
||||||
|
doCheck = false;
|
||||||
|
propagatedBuildInputs = [pyparsing graphviz];
|
||||||
|
meta = {
|
||||||
|
homepage = https://github.com/erocarrera/pydot;
|
||||||
|
description = "Allows to easily create both directed and non directed graphs from Python";
|
||||||
|
licenses = with lib.licenses; [ mit ];
|
||||||
|
};
|
||||||
|
}
|
@ -16,6 +16,6 @@ buildPythonPackage rec {
|
|||||||
homepage = https://github.com/svinota/pyroute2;
|
homepage = https://github.com/svinota/pyroute2;
|
||||||
license = licenses.asl20;
|
license = licenses.asl20;
|
||||||
maintainers = [maintainers.mic92];
|
maintainers = [maintainers.mic92];
|
||||||
platform = platforms.linux;
|
platforms = platforms.linux;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
23
pkgs/development/python-modules/stevedore/default.nix
Normal file
23
pkgs/development/python-modules/stevedore/default.nix
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
{ stdenv, buildPythonPackage, fetchPypi, oslosphinx, pbr, six, argparse }:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
pname = "stevedore";
|
||||||
|
version = "1.21.0";
|
||||||
|
name = "${pname}-${version}";
|
||||||
|
|
||||||
|
src = fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
sha256 = "12sg88ax0lv2sxr685rqdaxm9gryjrpj4fvax459zvwy1r4n83ma";
|
||||||
|
};
|
||||||
|
|
||||||
|
doCheck = false;
|
||||||
|
|
||||||
|
buildInputs = [ oslosphinx ];
|
||||||
|
propagatedBuildInputs = [ pbr six argparse ];
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "Manage dynamic plugins for Python applications";
|
||||||
|
homepage = "https://pypi.python.org/pypi/stevedore";
|
||||||
|
license = licenses.asl20;
|
||||||
|
};
|
||||||
|
}
|
@ -55,28 +55,23 @@ available.
|
|||||||
|
|
||||||
## RStudio
|
## RStudio
|
||||||
|
|
||||||
RStudio by default will not use the libraries installed like above.
|
RStudio uses a standard set of packages and ignores any custom R
|
||||||
You must override its R version with your custom R environment, and
|
environments or installed packages you may have. To create a custom
|
||||||
set `useRPackages` to `true`, like below:
|
environment, see `rstudioWrapper`, which functions similarly to
|
||||||
|
`rWrapper`:
|
||||||
|
|
||||||
```nix
|
```nix
|
||||||
{
|
{
|
||||||
packageOverrides = super: let self = super.pkgs; in
|
packageOverrides = super: let self = super.pkgs; in
|
||||||
{
|
{
|
||||||
|
|
||||||
rEnv = super.rWrapper.override {
|
rstudioEnv = super.rstudioWrapper.override {
|
||||||
packages = with self.rPackages; [
|
packages = with self.rPackages; [
|
||||||
devtools
|
dplyr
|
||||||
ggplot2
|
ggplot2
|
||||||
reshape2
|
reshape2
|
||||||
yaml
|
|
||||||
optparse
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
rstudioEnv = super.rstudio.override {
|
|
||||||
R = rEnv;
|
|
||||||
useRPackages = true;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
33
pkgs/development/r-modules/wrapper-rstudio.nix
Normal file
33
pkgs/development/r-modules/wrapper-rstudio.nix
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
{ stdenv, R, rstudio, makeWrapper, recommendedPackages, packages }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
|
||||||
|
name = rstudio.name + "-wrapper";
|
||||||
|
|
||||||
|
buildInputs = [makeWrapper R rstudio] ++ recommendedPackages ++ packages;
|
||||||
|
|
||||||
|
unpackPhase = ":";
|
||||||
|
|
||||||
|
# rWrapper points R to a specific set of packages by using a wrapper
|
||||||
|
# (as in https://nixos.org/nixpkgs/manual/#r-packages) which sets
|
||||||
|
# R_LIBS_SITE. Ordinarily, it would be possible to make RStudio use
|
||||||
|
# this same set of packages by simply overriding its version of R
|
||||||
|
# with the wrapped one, however, RStudio internally overrides
|
||||||
|
# R_LIBS_SITE. The below works around this by turning R_LIBS_SITE
|
||||||
|
# into an R file (fixLibsR) which achieves the same effect, then
|
||||||
|
# uses R_PROFILE_USER to load this code at startup in RStudio.
|
||||||
|
fixLibsR = "fix_libs.R";
|
||||||
|
installPhase = ''
|
||||||
|
mkdir $out
|
||||||
|
echo "# Autogenerated by wrapper-rstudio.nix from R_LIBS_SITE" > $out/${fixLibsR}
|
||||||
|
echo -n ".libPaths(c(.libPaths(), \"" >> $out/${fixLibsR}
|
||||||
|
echo -n $R_LIBS_SITE | sed -e 's/:/", "/g' >> $out/${fixLibsR}
|
||||||
|
echo -n "\"))" >> $out/${fixLibsR}
|
||||||
|
echo >> $out/${fixLibsR}
|
||||||
|
makeWrapper ${rstudio}/bin/rstudio $out/bin/rstudio --set R_PROFILE_USER $out/${fixLibsR}
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
platforms = stdenv.lib.platforms.unix;
|
||||||
|
};
|
||||||
|
}
|
@ -1,19 +1,12 @@
|
|||||||
{ stdenv, R, makeWrapper, recommendedPackages, packages }:
|
{ stdenv, R, makeWrapper, recommendedPackages, packages }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation {
|
||||||
name = R.name + "-wrapper";
|
name = R.name + "-wrapper";
|
||||||
|
|
||||||
buildInputs = [makeWrapper R] ++ recommendedPackages ++ packages;
|
buildInputs = [makeWrapper R] ++ recommendedPackages ++ packages;
|
||||||
|
|
||||||
unpackPhase = ":";
|
unpackPhase = ":";
|
||||||
|
|
||||||
# This filename is used in 'installPhase', but needs to be
|
|
||||||
# referenced elsewhere. This will be relative to this package's
|
|
||||||
# path.
|
|
||||||
passthru = {
|
|
||||||
fixLibsR = "fix_libs.R";
|
|
||||||
};
|
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir -p $out/bin
|
mkdir -p $out/bin
|
||||||
cd ${R}/bin
|
cd ${R}/bin
|
||||||
@ -21,17 +14,6 @@ stdenv.mkDerivation rec {
|
|||||||
makeWrapper ${R}/bin/$exe $out/bin/$exe \
|
makeWrapper ${R}/bin/$exe $out/bin/$exe \
|
||||||
--prefix "R_LIBS_SITE" ":" "$R_LIBS_SITE"
|
--prefix "R_LIBS_SITE" ":" "$R_LIBS_SITE"
|
||||||
done
|
done
|
||||||
# RStudio (and perhaps other packages) overrides the R_LIBS_SITE
|
|
||||||
# which the wrapper above applies, and as a result packages
|
|
||||||
# installed in the wrapper (as in the method described in
|
|
||||||
# https://nixos.org/nixpkgs/manual/#r-packages) aren't visible.
|
|
||||||
# The below turns R_LIBS_SITE into some R startup code which can
|
|
||||||
# correct this.
|
|
||||||
echo "# Autogenerated by wrapper.nix from R_LIBS_SITE" > $out/${passthru.fixLibsR}
|
|
||||||
echo -n ".libPaths(c(.libPaths(), \"" >> $out/${passthru.fixLibsR}
|
|
||||||
echo -n $R_LIBS_SITE | sed -e 's/:/", "/g' >> $out/${passthru.fixLibsR}
|
|
||||||
echo -n "\"))" >> $out/${passthru.fixLibsR}
|
|
||||||
echo >> $out/${passthru.fixLibsR}
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -1,12 +1,13 @@
|
|||||||
{ stdenv, lib, fetchurl, makeWrapper, jre }:
|
{ stdenv, lib, fetchurl, makeWrapper, jre }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "ammonite-repl-${version}";
|
name = "ammonite-${version}";
|
||||||
version = "0.8.3";
|
version = "0.8.4";
|
||||||
|
scalaVersion = "2.12";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/lihaoyi/Ammonite/releases/download/${version}/2.12-${version}";
|
url = "https://github.com/lihaoyi/Ammonite/releases/download/${version}/${scalaVersion}-${version}";
|
||||||
sha256 = "0y4524y2w7aq300djcazb7ckkr3gqpim2grcgb237mxq3fdvb0r8";
|
sha256 = "04kni08yd53w8dhkkgbydzkka4cnp31l2d8g23iinkn10ckmz5jm";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [ jre ] ;
|
propagatedBuildInputs = [ jre ] ;
|
||||||
|
@ -5,17 +5,19 @@ let
|
|||||||
buildInputs = [ makeWrapper ] ++ plugins;
|
buildInputs = [ makeWrapper ] ++ plugins;
|
||||||
passthru.withPlugins = moarPlugins: withPlugins (moarPlugins ++ plugins);
|
passthru.withPlugins = moarPlugins: withPlugins (moarPlugins ++ plugins);
|
||||||
} ''
|
} ''
|
||||||
makeWrapper ${package}/bin/buildbot $out/bin/buildbot --prefix PYTHONPATH : $PYTHONPATH
|
makeWrapper ${package}/bin/buildbot $out/bin/buildbot \
|
||||||
|
--prefix PYTHONPATH : "${package}/lib/python2.7/site-packages:$PYTHONPATH"
|
||||||
|
ln -sfv ${package}/lib $out/lib
|
||||||
'';
|
'';
|
||||||
|
|
||||||
package = pythonPackages.buildPythonApplication (rec {
|
package = pythonPackages.buildPythonApplication (rec {
|
||||||
name = "${pname}-${version}";
|
name = "${pname}-${version}";
|
||||||
pname = "buildbot";
|
pname = "buildbot";
|
||||||
version = "0.9.4";
|
version = "0.9.5";
|
||||||
|
|
||||||
src = pythonPackages.fetchPypi {
|
src = pythonPackages.fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "0wklrn4fszac9wi8zw3vbsznwyff6y57cz0i81zvh46skb6n3086";
|
sha256 = "11r553nmh87a9pm58wycimapk2pw9hnlc7hffn97xwbqprd8qh66";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = with pythonPackages; [
|
buildInputs = with pythonPackages; [
|
||||||
@ -49,6 +51,7 @@ let
|
|||||||
txaio
|
txaio
|
||||||
autobahn
|
autobahn
|
||||||
pyjwt
|
pyjwt
|
||||||
|
distro
|
||||||
|
|
||||||
# tls
|
# tls
|
||||||
pyopenssl
|
pyopenssl
|
||||||
@ -68,6 +71,14 @@ let
|
|||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
substituteInPlace buildbot/scripts/logwatcher.py --replace '/usr/bin/tail' "$(type -P tail)"
|
substituteInPlace buildbot/scripts/logwatcher.py --replace '/usr/bin/tail' "$(type -P tail)"
|
||||||
|
|
||||||
|
# NOTE: secrets management tests currently broken
|
||||||
|
rm -fv buildbot/test/integration/test_integration_secrets.py
|
||||||
|
rm -fv buildbot/test/integration/test_integration_secrets_with_vault.py
|
||||||
|
rm -fv buildbot/test/unit/test_fake_secrets_manager.py
|
||||||
|
rm -fv buildbot/test/unit/test_interpolate_secrets.py
|
||||||
|
rm -fv buildbot/test/unit/test_secret_in_file.py
|
||||||
|
rm -fv buildbot/test/unit/test_secret_in_vault.py
|
||||||
'';
|
'';
|
||||||
|
|
||||||
passthru = { inherit withPlugins; };
|
passthru = { inherit withPlugins; };
|
||||||
|
@ -1,14 +1,14 @@
|
|||||||
{ stdenv, fetchurl, pythonPackages }:
|
{ stdenv, pythonPackages }:
|
||||||
|
|
||||||
let
|
let
|
||||||
buildbot-pkg = pythonPackages.buildPythonPackage rec {
|
buildbot-pkg = pythonPackages.buildPythonPackage rec {
|
||||||
name = "${pname}-${version}";
|
name = "${pname}-${version}";
|
||||||
pname = "buildbot-pkg";
|
pname = "buildbot-pkg";
|
||||||
version = "0.9.4";
|
version = "0.9.5";
|
||||||
|
|
||||||
src = fetchurl {
|
src = pythonPackages.fetchPypi {
|
||||||
url = "mirror://pypi/b/${pname}/${name}.tar.gz";
|
inherit pname version;
|
||||||
sha256 = "09a3yvs5hhf8syrkyydznmymgg86dpvgrwy9rb3bryq00wpjb3wn";
|
sha256 = "1xpi4w0lc6z97pmmms85dvdspacbzlvs8zi3kv1r4rypk3znwmi1";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = with pythonPackages; [ setuptools ];
|
propagatedBuildInputs = with pythonPackages; [ setuptools ];
|
||||||
@ -25,15 +25,14 @@ in {
|
|||||||
www = pythonPackages.buildPythonPackage rec {
|
www = pythonPackages.buildPythonPackage rec {
|
||||||
name = "${pname}-${version}";
|
name = "${pname}-${version}";
|
||||||
pname = "buildbot_www";
|
pname = "buildbot_www";
|
||||||
version = "0.9.4";
|
version = "0.9.5";
|
||||||
|
|
||||||
# NOTE: wheel is used due to buildbot circular dependency
|
# NOTE: wheel is used due to buildbot circular dependency
|
||||||
format = "wheel";
|
format = "wheel";
|
||||||
|
|
||||||
src = pythonPackages.fetchPypi {
|
src = pythonPackages.fetchPypi {
|
||||||
inherit pname version format;
|
inherit pname version format;
|
||||||
python = "py2";
|
sha256 = "1d7yjxka6slflm3wbdpq4sr1kagmgbqdv2zgx9bq77jvjh7ga0py";
|
||||||
sha256 = "08m4h2pf6hgi8igh2j0qzfq49izc2z0qqj6ddxk0di5l306jx4im";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
@ -47,11 +46,11 @@ in {
|
|||||||
console-view = pythonPackages.buildPythonPackage rec {
|
console-view = pythonPackages.buildPythonPackage rec {
|
||||||
name = "${pname}-${version}";
|
name = "${pname}-${version}";
|
||||||
pname = "buildbot-console-view";
|
pname = "buildbot-console-view";
|
||||||
version = "0.9.4";
|
version = "0.9.5";
|
||||||
|
|
||||||
src = fetchurl {
|
src = pythonPackages.fetchPypi {
|
||||||
url = "mirror://pypi/b/${pname}/${name}.tar.gz";
|
inherit pname version;
|
||||||
sha256 = "1w2vv8iyzl7ak4161avp9n6mhh08adav2fl82bbm17a3064apl8n";
|
sha256 = "1s6mvw955dsgk7hvb1xa32bbd7w2yma62py5s0vmi5shv8nwq3hb";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = with pythonPackages; [ buildbot-pkg ];
|
propagatedBuildInputs = with pythonPackages; [ buildbot-pkg ];
|
||||||
@ -67,11 +66,11 @@ in {
|
|||||||
waterfall-view = pythonPackages.buildPythonPackage rec {
|
waterfall-view = pythonPackages.buildPythonPackage rec {
|
||||||
name = "${pname}-${version}";
|
name = "${pname}-${version}";
|
||||||
pname = "buildbot-waterfall-view";
|
pname = "buildbot-waterfall-view";
|
||||||
version = "0.9.4";
|
version = "0.9.5";
|
||||||
|
|
||||||
src = fetchurl {
|
src = pythonPackages.fetchPypi {
|
||||||
url = "mirror://pypi/b/${pname}/${name}.tar.gz";
|
inherit pname version;
|
||||||
sha256 = "17xn6vrr0k2xabw6hr9sdyy0ry3llyjfmc79qrpgp5bsly2qv3jf";
|
sha256 = "116846d987wp1bz78f0h4lypqcns5073vzhb4vsqbf08sppgr67k";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = with pythonPackages; [ buildbot-pkg ];
|
propagatedBuildInputs = with pythonPackages; [ buildbot-pkg ];
|
||||||
|
@ -3,11 +3,11 @@
|
|||||||
pythonPackages.buildPythonApplication (rec {
|
pythonPackages.buildPythonApplication (rec {
|
||||||
name = "${pname}-${version}";
|
name = "${pname}-${version}";
|
||||||
pname = "buildbot-worker";
|
pname = "buildbot-worker";
|
||||||
version = "0.9.4";
|
version = "0.9.5";
|
||||||
|
|
||||||
src = pythonPackages.fetchPypi {
|
src = pythonPackages.fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "0rdrr8x7sn2nxl51p6h9ad42s3c28lb6sys84zrg0d7fm4zhv7hj";
|
sha256 = "1al7jam351sf781axj4kfhj70cc0g21zv81ynk410kdccjyxp2dy";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = with pythonPackages; [ setuptoolsTrial mock ];
|
buildInputs = with pythonPackages; [ setuptoolsTrial mock ];
|
||||||
|
@ -23,6 +23,8 @@ stdenv.mkDerivation rec {
|
|||||||
sha256 = "0i1y50mf559flhxgaxy2gdpa7dvpp12ix9xfzgxa61rc135x0im4";
|
sha256 = "0i1y50mf559flhxgaxy2gdpa7dvpp12ix9xfzgxa61rc135x0im4";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [ ./linux_4_11_include_fix.patch ];
|
||||||
|
|
||||||
preConfigure =
|
preConfigure =
|
||||||
''
|
''
|
||||||
cd ./src
|
cd ./src
|
||||||
|
@ -0,0 +1,30 @@
|
|||||||
|
diff -Naur ProCaptureForLinux_3269/src/sources/avstream/capture.c ProCaptureForLinux_3269_new/src/sources/avstream/capture.c
|
||||||
|
--- ProCaptureForLinux_3269/src/sources/avstream/capture.c 2016-12-12 17:17:18.000000000 -0800
|
||||||
|
+++ ProCaptureForLinux_3269_new/src/sources/avstream/capture.c 2017-05-02 23:58:28.270827491 -0700
|
||||||
|
@@ -154,7 +154,9 @@
|
||||||
|
if (IS_ERR_OR_NULL(fp))
|
||||||
|
return IS_ERR(fp) ? PTR_ERR(fp) : -1;
|
||||||
|
|
||||||
|
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,0)
|
||||||
|
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,11,0)
|
||||||
|
+ ret = vfs_getattr(&fp->f_path, &stat, STATX_BASIC_STATS, AT_STATX_SYNC_AS_STAT);
|
||||||
|
+#elif LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,0)
|
||||||
|
ret = vfs_getattr(&fp->f_path, &stat);
|
||||||
|
#else
|
||||||
|
ret = vfs_getattr(fp->f_path.mnt, fp->f_path.dentry, &stat);
|
||||||
|
diff -Naur ProCaptureForLinux_3269/src/sources/ospi/ospi-linux.c ProCaptureForLinux_3269_new/src/sources/ospi/ospi-linux.c
|
||||||
|
--- ProCaptureForLinux_3269/src/sources/ospi/ospi-linux.c 2016-12-12 17:17:18.000000000 -0800
|
||||||
|
+++ ProCaptureForLinux_3269_new/src/sources/ospi/ospi-linux.c 2017-05-02 23:51:02.197633628 -0700
|
||||||
|
@@ -21,6 +21,12 @@
|
||||||
|
#include <linux/freezer.h>
|
||||||
|
#include <linux/pci.h>
|
||||||
|
|
||||||
|
+// some functions were moved from linux/sched.h out to their own headers in 4.11.x
|
||||||
|
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,11,0)
|
||||||
|
+#include <linux/sched/signal.h>
|
||||||
|
+#include <linux/sched/debug.h>
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
unsigned int debug_level = 0;
|
||||||
|
|
||||||
|
struct kmem_cache *g_spin_cache = NULL;
|
@ -1,15 +1,15 @@
|
|||||||
{ stdenv, fetchurl, zsh, pinentry, cryptsetup, gnupg1orig, makeWrapper }:
|
{ stdenv, fetchurl, zsh, pinentry, cryptsetup, gnupg1orig, makeWrapper }:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "2.2";
|
version = "2.4";
|
||||||
in
|
in
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "tomb-${version}";
|
name = "tomb-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://files.dyne.org/tomb/tomb-${version}.tar.gz";
|
url = "https://files.dyne.org/tomb/Tomb-${version}.tar.gz";
|
||||||
sha256 = "11msj38fdmymiqcmwq1883kjqi5zr01ybdjj58rfjjrw4zw2w5y0";
|
sha256 = "1hv1w79as7swqj0n137vz8n8mwvcgwlvd91sdyssz41jarg7f1vr";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ makeWrapper ];
|
buildInputs = [ makeWrapper ];
|
||||||
|
@ -139,7 +139,7 @@ in
|
|||||||
};
|
};
|
||||||
zfsUnstable = common {
|
zfsUnstable = common {
|
||||||
# comment/uncomment if breaking kernel versions are known
|
# comment/uncomment if breaking kernel versions are known
|
||||||
incompatibleKernelVersion = null;
|
incompatibleKernelVersion = "4.11";
|
||||||
|
|
||||||
version = "0.7.0-rc3";
|
version = "0.7.0-rc3";
|
||||||
|
|
||||||
|
@ -28,7 +28,7 @@ pythonPackages.buildPythonApplication rec {
|
|||||||
on mobile phones or computers.
|
on mobile phones or computers.
|
||||||
'';
|
'';
|
||||||
license = licenses.gpl3Plus;
|
license = licenses.gpl3Plus;
|
||||||
platform = platforms.all;
|
platforms = platforms.all;
|
||||||
maintainers = with maintainers; [ edwtjo pSub aneeshusa ];
|
maintainers = with maintainers; [ edwtjo pSub aneeshusa ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -16,6 +16,6 @@ stdenv.mkDerivation rec {
|
|||||||
'';
|
'';
|
||||||
homepage = https://moxie.org/software/fakeroute/;
|
homepage = https://moxie.org/software/fakeroute/;
|
||||||
license = licenses.bsd3;
|
license = licenses.bsd3;
|
||||||
platform = platforms.linux;
|
platforms = platforms.linux;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -2,11 +2,11 @@
|
|||||||
, makeWrapper, perl, openssl, autoreconfHook, openssh }:
|
, makeWrapper, perl, openssl, autoreconfHook, openssh }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "mosh-1.2.6";
|
name = "mosh-1.3.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://mosh.org/${name}.tar.gz";
|
url = "https://mosh.org/${name}.tar.gz";
|
||||||
sha256 = "118fhpm754wpklf1blnlq5xbvrxqml6rdfs3b07wg666zkxvg0ky";
|
sha256 = "0xikz40q873g9ihvz3x6bwkcb9hb8kcnp5wpcmb72pg5c7s143ij";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ autoreconfHook protobuf ncurses zlib pkgconfig IOTty makeWrapper perl openssl ];
|
buildInputs = [ autoreconfHook protobuf ncurses zlib pkgconfig IOTty makeWrapper perl openssl ];
|
||||||
|
@ -52,6 +52,6 @@ in stdenv.mkDerivation rec {
|
|||||||
description = "Free, private and secure password management tool and e-wallet";
|
description = "Free, private and secure password management tool and e-wallet";
|
||||||
license = licenses.unfree;
|
license = licenses.unfree;
|
||||||
maintainers = with maintainers; [ guillaumekoenig ];
|
maintainers = with maintainers; [ guillaumekoenig ];
|
||||||
platform = platforms.linux;
|
platforms = platforms.linux;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -2,13 +2,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "efivar-${version}";
|
name = "efivar-${version}";
|
||||||
version = "31";
|
version = "30";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "rhinstaller";
|
owner = "rhinstaller";
|
||||||
repo = "efivar";
|
repo = "efivar";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "0dhycikylm87jmds4ii5ygwq59g4sa5sv9mzryjzgqlgppw5arli";
|
sha256 = "1pghj019qr7qpqd9rxfhsr1hm3s0w1hd5cdndpl07vhys8hy4a8a";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
nativeBuildInputs = [ pkgconfig ];
|
||||||
|
@ -15,7 +15,7 @@ python2Packages.buildPythonApplication rec {
|
|||||||
meta = {
|
meta = {
|
||||||
homepage = https://pypi.python.org/pypi/grin;
|
homepage = https://pypi.python.org/pypi/grin;
|
||||||
description = "A grep program configured the way I like it";
|
description = "A grep program configured the way I like it";
|
||||||
platform = stdenv.lib.platforms.all;
|
platforms = stdenv.lib.platforms.all;
|
||||||
maintainers = [ stdenv.lib.maintainers.sjagoe ];
|
maintainers = [ stdenv.lib.maintainers.sjagoe ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
|
|||||||
# The homepage is www.thaiopensource.com, but it links to googlecode.com
|
# The homepage is www.thaiopensource.com, but it links to googlecode.com
|
||||||
# for downloads and call it the "project site".
|
# for downloads and call it the "project site".
|
||||||
homepage = http://www.thaiopensource.com/relaxng/jing.html;
|
homepage = http://www.thaiopensource.com/relaxng/jing.html;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.unix;
|
||||||
maintainers = [ maintainers.bjornfor ];
|
maintainers = [ maintainers.bjornfor ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{ stdenv, fetchFromGitHub, rustPlatform, makeWrapper }:
|
{ stdenv, fetchFromGitHub, rustPlatform }:
|
||||||
|
|
||||||
with rustPlatform;
|
with rustPlatform;
|
||||||
|
|
||||||
|
@ -20,6 +20,7 @@ doNotDisplayTwice rec {
|
|||||||
accounts-qt = libsForQt5.accounts-qt; # added 2015-12-19
|
accounts-qt = libsForQt5.accounts-qt; # added 2015-12-19
|
||||||
adobeReader = adobe-reader;
|
adobeReader = adobe-reader;
|
||||||
aircrackng = aircrack-ng; # added 2016-01-14
|
aircrackng = aircrack-ng; # added 2016-01-14
|
||||||
|
ammonite-repl = ammonite; # added 2017-05-02
|
||||||
arduino_core = arduino-core; # added 2015-02-04
|
arduino_core = arduino-core; # added 2015-02-04
|
||||||
asciidocFull = asciidoc-full; # added 2014-06-22
|
asciidocFull = asciidoc-full; # added 2014-06-22
|
||||||
bar = lemonbar; # added 2015-01-16
|
bar = lemonbar; # added 2015-01-16
|
||||||
|
@ -402,7 +402,7 @@ with pkgs;
|
|||||||
|
|
||||||
amazon-glacier-cmd-interface = callPackage ../tools/backup/amazon-glacier-cmd-interface { };
|
amazon-glacier-cmd-interface = callPackage ../tools/backup/amazon-glacier-cmd-interface { };
|
||||||
|
|
||||||
ammonite-repl = callPackage ../development/tools/ammonite {};
|
ammonite = callPackage ../development/tools/ammonite {};
|
||||||
|
|
||||||
amtterm = callPackage ../tools/system/amtterm {};
|
amtterm = callPackage ../tools/system/amtterm {};
|
||||||
|
|
||||||
@ -1117,6 +1117,8 @@ with pkgs;
|
|||||||
pythonPackages = python2Packages;
|
pythonPackages = python2Packages;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
bfg-repo-cleaner = gitAndTools.bfg-repo-cleaner;
|
||||||
|
|
||||||
bgs = callPackage ../tools/X11/bgs { };
|
bgs = callPackage ../tools/X11/bgs { };
|
||||||
|
|
||||||
biber = callPackage ../tools/typesetting/biber {
|
biber = callPackage ../tools/typesetting/biber {
|
||||||
@ -4736,7 +4738,7 @@ with pkgs;
|
|||||||
|
|
||||||
xsel = callPackage ../tools/misc/xsel { };
|
xsel = callPackage ../tools/misc/xsel { };
|
||||||
|
|
||||||
xsv = callPackages ../tools/text/xsv { };
|
xsv = callPackage ../tools/text/xsv { };
|
||||||
|
|
||||||
xtreemfs = callPackage ../tools/filesystems/xtreemfs {};
|
xtreemfs = callPackage ../tools/filesystems/xtreemfs {};
|
||||||
|
|
||||||
@ -10610,6 +10612,15 @@ with pkgs;
|
|||||||
packages = [];
|
packages = [];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
rstudioWrapper = callPackage ../development/r-modules/wrapper-rstudio.nix {
|
||||||
|
recommendedPackages = with rPackages; [
|
||||||
|
boot class cluster codetools foreign KernSmooth lattice MASS
|
||||||
|
Matrix mgcv nlme nnet rpart spatial survival
|
||||||
|
];
|
||||||
|
# Override this attribute to register additional libraries.
|
||||||
|
packages = [];
|
||||||
|
};
|
||||||
|
|
||||||
rPackages = callPackage ../development/r-modules {
|
rPackages = callPackage ../development/r-modules {
|
||||||
overrides = (config.rPackageOverrides or (p: {})) pkgs;
|
overrides = (config.rPackageOverrides or (p: {})) pkgs;
|
||||||
};
|
};
|
||||||
|
@ -3695,22 +3695,7 @@ in {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
certifi = buildPythonPackage rec {
|
certifi = callPackage ../development/python-modules/certifi { };
|
||||||
name = "certifi-${version}";
|
|
||||||
version = "2017.1.23";
|
|
||||||
|
|
||||||
src = pkgs.fetchurl {
|
|
||||||
url = "mirror://pypi/c/certifi/${name}.tar.gz";
|
|
||||||
sha256 = "1klrzl3hgvcf2mjk00g0k3kk1p2z27vzwnxivwar4vhjmjvpz1w1";
|
|
||||||
};
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = http://certifi.io/;
|
|
||||||
description = "Python package for providing Mozilla's CA Bundle";
|
|
||||||
license = licenses.isc;
|
|
||||||
maintainers = with maintainers; [ koral ];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
characteristic = buildPythonPackage rec {
|
characteristic = buildPythonPackage rec {
|
||||||
name = "characteristic-14.1.0";
|
name = "characteristic-14.1.0";
|
||||||
@ -5439,8 +5424,8 @@ in {
|
|||||||
sha256 = "03c2qc42r4bczyw93gd7n0qi1h1jfhw7fnbhi33c3vp1hs81gm2k";
|
sha256 = "03c2qc42r4bczyw93gd7n0qi1h1jfhw7fnbhi33c3vp1hs81gm2k";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = with self; [ pytest_xdist virtualenv process-tests ];
|
propagatedBuildInputs = with self; [ coverage ];
|
||||||
propagatedBuildInputs = with self; [ pytest coverage ];
|
buildInputs = with self; [ pytest covCore virtualenv process-tests helper ];
|
||||||
|
|
||||||
# xdist related tests fail with the following error
|
# xdist related tests fail with the following error
|
||||||
# OSError: [Errno 13] Permission denied: 'py/_code'
|
# OSError: [Errno 13] Permission denied: 'py/_code'
|
||||||
@ -16688,6 +16673,11 @@ in {
|
|||||||
|
|
||||||
propagatedBuildInputs = with self; [ pbr Babel testrepository subunit testtools ];
|
propagatedBuildInputs = with self; [ pbr Babel testrepository subunit testtools ];
|
||||||
buildInputs = with self; [ coverage oslosphinx oslotest testscenarios six ddt ];
|
buildInputs = with self; [ coverage oslosphinx oslotest testscenarios six ddt ];
|
||||||
|
|
||||||
|
# Requires pbr < 2
|
||||||
|
# Or update to latest version but that requires updating the whole of openstack / oslo
|
||||||
|
meta.broken = true;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
bandit = buildPythonPackage rec {
|
bandit = buildPythonPackage rec {
|
||||||
@ -19858,20 +19848,7 @@ in {
|
|||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
pydot = buildPythonPackage rec {
|
pydot = callPackage ../development/python-modules/pydot { };
|
||||||
name = "pydot-1.2.3";
|
|
||||||
disabled = isPy3k;
|
|
||||||
|
|
||||||
src = pkgs.fetchurl {
|
|
||||||
url = "mirror://pypi/p/pydot/${name}.tar.gz";
|
|
||||||
sha256 = "edb5d3f249f97fbd9c4bb16959e61bc32ecf40eee1a9f6d27abe8d01c0a73502";
|
|
||||||
};
|
|
||||||
propagatedBuildInputs = with self; [pyparsing pkgs.graphviz];
|
|
||||||
meta = {
|
|
||||||
homepage = https://github.com/erocarrera/pydot;
|
|
||||||
description = "Allows to easily create both directed and non directed graphs from Python";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
pydot_ng = buildPythonPackage rec {
|
pydot_ng = buildPythonPackage rec {
|
||||||
name = "pydot_ng-1.0.0";
|
name = "pydot_ng-1.0.0";
|
||||||
@ -21741,6 +21718,8 @@ in {
|
|||||||
homepage = "http://github.com/diyan/pywinrm/";
|
homepage = "http://github.com/diyan/pywinrm/";
|
||||||
description = "Python library for Windows Remote Management";
|
description = "Python library for Windows Remote Management";
|
||||||
license = licenses.mit;
|
license = licenses.mit;
|
||||||
|
# error: libgssapi_krb5.so: cannot open shared object file: No such file or directory
|
||||||
|
broken = true; #
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -23319,11 +23298,15 @@ in {
|
|||||||
url = "mirror://pypi/s/${pname}/${name}.tar.gz";
|
url = "mirror://pypi/s/${pname}/${name}.tar.gz";
|
||||||
sha256 = "14220f8f761c48ba1e2526f087195077cf54fad7098b382ce220422f0ff59b12";
|
sha256 = "14220f8f761c48ba1e2526f087195077cf54fad7098b382ce220422f0ff59b12";
|
||||||
};
|
};
|
||||||
buildInputs = with self; [ pytest_29 virtualenv pytestrunner pytest-virtualenv ];
|
buildInputs = with self; [ pytest virtualenv pytestrunner pytest-virtualenv ];
|
||||||
propagatedBuildInputs = with self; [ twisted pathlib2 ];
|
propagatedBuildInputs = with self; [ twisted pathlib2 ];
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
sed -i '12,$d' tests/test_main.py
|
sed -i '12,$d' tests/test_main.py
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
# Couldn't get tests working
|
||||||
|
doCheck = false;
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Setuptools plugin that makes unit tests execute with trial instead of pyunit.";
|
description = "Setuptools plugin that makes unit tests execute with trial instead of pyunit.";
|
||||||
homepage = "https://github.com/rutsky/setuptools-trial";
|
homepage = "https://github.com/rutsky/setuptools-trial";
|
||||||
@ -23768,25 +23751,7 @@ in {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
stevedore = buildPythonPackage rec {
|
stevedore = callPackage ../development/python-modules/stevedore {};
|
||||||
name = "stevedore-1.7.0";
|
|
||||||
|
|
||||||
src = pkgs.fetchurl {
|
|
||||||
url = "mirror://pypi/s/stevedore/${name}.tar.gz";
|
|
||||||
sha256 = "149pjc0c3z6khjisn4yil3f94qjnzwafz093wc8rrzbw828qdkv8";
|
|
||||||
};
|
|
||||||
|
|
||||||
doCheck = false;
|
|
||||||
|
|
||||||
buildInputs = with self; [ oslosphinx ];
|
|
||||||
propagatedBuildInputs = with self; [ pbr six argparse ];
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "Manage dynamic plugins for Python applications";
|
|
||||||
homepage = "https://pypi.python.org/pypi/stevedore";
|
|
||||||
license = licenses.asl20;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
Theano = self.TheanoWithoutCuda;
|
Theano = self.TheanoWithoutCuda;
|
||||||
|
|
||||||
@ -26845,9 +26810,7 @@ EOF
|
|||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
magic-wormhole = callPackage ../development/python-modules/magic-wormhole {
|
magic-wormhole = callPackage ../development/python-modules/magic-wormhole { };
|
||||||
pythonPackages = self;
|
|
||||||
};
|
|
||||||
|
|
||||||
wsgiproxy2 = buildPythonPackage rec {
|
wsgiproxy2 = buildPythonPackage rec {
|
||||||
name = "WSGIProxy2-0.4.2";
|
name = "WSGIProxy2-0.4.2";
|
||||||
@ -31348,6 +31311,7 @@ EOF
|
|||||||
rev = "8eab90908f2a3adcc414347566f4434636202344";
|
rev = "8eab90908f2a3adcc414347566f4434636202344";
|
||||||
sha256 = "18n14ha2d3j3ghg2f2aqnf2mks94nn7ma9ii7vkiwcay93zm82cf";
|
sha256 = "18n14ha2d3j3ghg2f2aqnf2mks94nn7ma9ii7vkiwcay93zm82cf";
|
||||||
};
|
};
|
||||||
|
disabled = isPy3k; # Judging from SyntaxError
|
||||||
buildInputs = with self; [ pkgs.swig1 pkgs.coin3d pkgs.soqt pkgs.mesa pkgs.xorg.libXi ];
|
buildInputs = with self; [ pkgs.swig1 pkgs.coin3d pkgs.soqt pkgs.mesa pkgs.xorg.libXi ];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user