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

This commit is contained in:
Frederik Rietdijk 2017-05-03 09:59:49 +02:00
commit c520e79842
49 changed files with 600 additions and 251 deletions

View File

@ -17,7 +17,29 @@ has the following highlights: </para>
A consequence is that UIDs and GIDs are no longer reused.
</para>
</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 = &quot;DVI-0&quot;;
primary = true;
monitorConfig = ''
Option &quot;Rotate&quot; &quot;right&quot;
'';
}
];
}
</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>
<para>The following new services were added since the last release:</para>

View File

@ -534,6 +534,7 @@
./services/security/munge.nix
./services/security/oauth2_proxy.nix
./services/security/physlock.nix
./services/security/shibboleth-sp.nix
./services/security/sshguard.nix
./services/security/tor.nix
./services/security/torify.nix

View File

@ -12,7 +12,7 @@ let
factory = util.BuildFactory()
c = BuildmasterConfig = dict(
workers = [${concatStringsSep "," cfg.workers}],
protocols = { 'pb': {'port': ${cfg.bpPort} } },
protocols = { 'pb': {'port': ${toString cfg.bpPort} } },
title = '${escapeStr cfg.title}',
titleURL = '${escapeStr cfg.titleUrl}',
buildbotURL = '${escapeStr cfg.buildbotUrl}',
@ -62,7 +62,7 @@ in {
extraConfig = mkOption {
type = types.str;
description = "Extra configuration to append to master.cfg";
default = "";
default = "c['buildbotNetUsageData'] = None";
};
masterCfg = mkOption {
@ -92,10 +92,7 @@ in {
workers = mkOption {
type = types.listOf types.str;
description = "List of Workers.";
default = [
"worker.Worker('example-worker', 'pass')"
];
example = [ "worker.LocalWorker('example-worker')" ];
default = [ "worker.Worker('example-worker', 'pass')" ];
};
status = mkOption {
@ -135,9 +132,8 @@ in {
};
bpPort = mkOption {
default = "9989";
type = types.string;
example = "tcp:10000:interface=127.0.0.1";
default = 9989;
type = types.int;
description = "Port where the master will listen to Buildbot Worker.";
};
@ -179,14 +175,14 @@ in {
package = mkOption {
type = types.package;
default = pkgs.buildbot-ui;
defaultText = "pkgs.buildbot-ui";
default = pkgs.buildbot-full;
defaultText = "pkgs.buildbot-full";
description = "Package to use for buildbot.";
example = literalExample "pkgs.buildbot-full";
};
packages = mkOption {
default = [ ];
default = with pkgs; [ python27Packages.twisted git ];
example = literalExample "[ pkgs.git ]";
type = types.listOf types.package;
description = "Packages to add to PATH for the buildbot process.";
@ -212,29 +208,30 @@ in {
systemd.services.buildbot-master = {
description = "Buildbot Continuous Integration Server.";
after = [ "network.target" ];
after = [ "network-online.target" ];
wantedBy = [ "multi-user.target" ];
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 = {
Type = "simple";
User = cfg.user;
Group = cfg.group;
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
'';
};
};

View File

@ -74,7 +74,7 @@ in {
};
packages = mkOption {
default = [ ];
default = with pkgs; [ python27Packages.twisted git ];
example = literalExample "[ pkgs.git ]";
type = types.listOf types.package;
description = "Packages to add to PATH for the buildbot process.";
@ -106,7 +106,8 @@ in {
path = cfg.packages;
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}
'';
@ -115,7 +116,11 @@ in {
User = cfg.user;
Group = cfg.group;
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";
};
};

View 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";
};
};
};
}

View File

@ -31,18 +31,51 @@ let
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.
xrandrHeads = let
mkHead = num: output: {
mkHead = num: config: {
name = "multihead${toString num}";
inherit output;
inherit config;
};
in imap mkHead cfg.xrandrHeads;
xrandrDeviceSection = let
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
# subsequent options aren't so we need to apply indentation to
@ -62,9 +95,13 @@ let
value = ''
Section "Monitor"
Identifier "${current.name}"
${optionalString (current.config.primary) ''
Option "Primary" "true"
''}
${optionalString (previous != []) ''
Option "RightOf" "${(head previous).name}"
''}
${current.config.monitorConfig}
EndSection
'';
} ++ previous;
@ -329,13 +366,39 @@ in
xrandrHeads = mkOption {
default = [];
example = [ "HDMI-0" "DVI-0" ];
type = with types; listOf string;
example = [
"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 = ''
Simple multiple monitor configuration, just specify a list of XRandR
outputs which will be mapped from left to right in the order of the
Multiple monitor configuration, just specify a list of XRandR
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.
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
drivers that have poor support for XRandR, unexpected things might
happen with those.
@ -469,11 +532,18 @@ in
nixpkgs.config.xorg = optionalAttrs (elem "vboxvideo" cfg.videoDrivers) { abiCompat = "1.18"; };
assertions =
[ { assertion = config.security.polkit.enable;
message = "X11 requires Polkit to be enabled (security.polkit.enable = true).";
}
];
assertions = [
{ assertion = config.security.polkit.enable;
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 =
(optionals cfg.exportConfiguration

View File

@ -4,18 +4,22 @@ import ./make-test.nix ({ pkgs, ... } : {
name = "buildbot";
nodes = {
bbmaster = { config, pkgs, nodes, ... }: {
bbmaster = { config, pkgs, ... }: {
services.buildbot-master = {
enable = true;
package = pkgs.buildbot-full;
# NOTE: use fake repo due to no internet in hydra ci
factorySteps = [
"steps.Git(repourl='git://github.com/buildbot/pyflakes.git', mode='incremental')"
"steps.ShellCommand(command=['trial', 'pyflakes'])"
"steps.Git(repourl='git://gitrepo/fakerepo.git', mode='incremental')"
"steps.ShellCommand(command=['bash', 'fakerepo.sh'])"
];
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, ... }: {
@ -23,24 +27,85 @@ import ./make-test.nix ({ pkgs, ... } : {
enable = true;
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 = ''
#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");
$bbworker->waitForUnit("network.target");
# Test gitrepo
$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
#$bbmaster->waitForUnit("buildbot-master.service");
#$bbmaster->waitUntilSucceeds("curl -s --head http://bbmaster:8010") =~ /200 OK/ or die;
#$bbworker->waitForUnit("buildbot-worker.service");
#$bbworker->waitUntilSucceeds("tail -10 /home/bbworker/worker/twistd.log") =~ /success/ or die;
# Test start master and connect worker
$bbmaster->waitForUnit("buildbot-master.service");
$bbmaster->waitUntilSucceeds("curl -s --head http://bbmaster:8010") =~ /200 OK/;
$bbworker->waitForUnit("network-online.target");
$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; {
maintainers = [ nand0p ];
};
meta.maintainers = with pkgs.stdenv.lib.maintainers; [ nand0p ];
})

View File

@ -24,8 +24,8 @@ let
src = fetchFromGitHub {
owner = "neovim";
repo = "libvterm";
rev = "11682793d84668057c5aedc3d7f8071bb54eaf2c";
sha256 = "0pd90yx6xsagrqjipi26sxri1l4wdnx23ziad1zbxnqx9njxa7g3";
rev = "5a748f97fbf27003e141002b58933a99f3addf8d";
sha256 = "1fnd57f5n9h7z50a4vj7g96k6ndsdknjqsibgnxi9ndhyz244qbx";
};
buildInputs = [ perl ];
@ -81,13 +81,13 @@ let
neovim = stdenv.mkDerivation rec {
name = "neovim-${version}";
version = "0.1.7";
version = "0.2.0";
src = fetchFromGitHub {
owner = "neovim";
repo = "neovim";
rev = "v${version}";
sha256 = "0bk0raxlb1xsqyw9pmqmxvcq5szqhimidrasnvzrci84gld8cwz4";
sha256 = "0fhjkgjwqqmzbfn9wk10l2vq9v74zkriz5j12b1rx0gdwzlfybn8";
};
enableParallelBuilding = true;

View File

@ -4,17 +4,17 @@ with stdenv.lib;
pythonPackages.buildPythonPackage rec {
name = "neovim-remote-${version}";
version = "v1.4.0";
version = "v1.6.0";
disabled = !pythonPackages.isPy3k;
src = fetchFromGitHub {
owner = "mhinz";
repo = "neovim-remote";
rev = version;
sha256 = "0msvfh27f56xj5ki59ikzavxz863nal5scm57n43618m49qzg8iz";
sha256 = "0x01zpmxi37jr7j2az2bd8902h7zhkpg6kpvc8xmll9f7703zz2l";
};
propagatedBuildInputs = [ pythonPackages.neovim ];
propagatedBuildInputs = with pythonPackages; [ neovim psutil ];
meta = {
description = "A tool that helps controlling nvim processes from a terminal";

View File

@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
name = "neovim-qt-${version}";
version = "0.2.6";
version = "0.2.7";
src = fetchFromGitHub {
owner = "equalsraf";
repo = "neovim-qt";
rev = "v${version}";
sha256 = "1wsxhy8fdayy4dsr2dxgh5k4jysybjlyzj134vk325v6cqz9bsgm";
sha256 = "1bfni38l7cs0wbd9c6hgz2jfc8h3ixmg94izdvydm8j7amdz0cb6";
};
cmakeFlags = [
@ -17,7 +17,13 @@ stdenv.mkDerivation rec {
"-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; [
neovim qtbase libmsgpack

View File

@ -1,13 +1,5 @@
{ stdenv, fetchurl, makeDesktopItem, cmake, boost163, zlib, openssl,
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
R, qt5, libuuid, hunspellDicts, unzip, ant, jdk, gnumake, makeWrapper, pandoc
}:
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;";
};
postInstall = let rProfile =
# RStudio seems to bypass the environment variables that the R
# 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}
postInstall = ''
wrapProgram $out/bin/rstudio --suffix PATH : ${gnumake}/bin
mkdir $out/share
cp -r ${desktopItem}/share/applications $out/share
mkdir $out/share/icons

View File

@ -1,7 +1,7 @@
{
kdeApp, lib,
kdeApp, lib, makeQtWrapper,
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,
ktextwidgets, kxmlgui, kwidgetsaddons, kwindowsystem
}:
@ -10,10 +10,13 @@ kdeApp {
name = "kgpg";
nativeBuildInputs = [ extra-cmake-modules kdoctools ki18n ];
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
kwidgetsaddons kwindowsystem
kwidgetsaddons kwindowsystem makeQtWrapper
];
postInstall = ''
wrapQtProgram $out/bin/kgpg --suffix PATH : ${lib.makeBinPath [ gnupg1 ]}
'';
meta = {
license = [ lib.licenses.gpl2 ];
maintainers = [ lib.maintainers.ttuegel ];

View File

@ -22,7 +22,7 @@ python3Packages.buildPythonApplication rec {
inherit (src.meta) homepage;
description = "Universal Radio Hacker: investigate wireless protocols like a boss";
license = licenses.asl20;
platform = platforms.all;
platforms = platforms.all;
maintainers = with maintainers; [ fpletz ];
};
}

View File

@ -4,7 +4,7 @@
, glib, fontconfig, freetype, pango, cairo, libX11, libXi, atk, gconf, nss, nspr
, libXcursor, libXext, libXfixes, libXrender, libXScrnSaver, libXcomposite, libxcb
, 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"
, commandLineArgs ? ""
@ -43,11 +43,10 @@ let
};
deps = [
stdenv.cc.cc
glib fontconfig freetype pango cairo libX11 libXi atk gconf nss nspr
libXcursor libXext libXfixes libXrender libXScrnSaver libXcomposite libxcb
alsaLib libXdamage libXtst libXrandr expat cups
dbus_libs gdk_pixbuf gcc
dbus_libs gdk_pixbuf gcc-unwrapped.lib
systemd
libexif
liberation_ttf curl utillinux xdg_utils wget

View File

@ -23,11 +23,11 @@
let
# NOTE: When updating, please also update in current stable,
# as older versions stop working
version = "24.4.17";
version = "25.4.28";
sha256 =
{
"x86_64-linux" = "1wjr92vrbxyjbwyqf134h8fp1zi4d5wyyirii545wqadbgg9grh9";
"i686-linux" = "1qsdidpy251irzkv0hx0ch0xnrwq6wq6b22g0n8b9d0a7xi08k7h";
"x86_64-linux" = "0r0bdl37rkar3nijxslp493mic5qd20l125p1kghqbradvh57rl3";
"i686-linux" = "1difq6ky1klvminbzjivvq6ap3l296gij0ghgyy1n4lca3jqq648";
}."${stdenv.system}" or (throw "system ${stdenv.system} not supported");
arch =

View File

@ -12,12 +12,12 @@ python2Packages.buildPythonApplication rec {
propagatedBuildInputs = with python2Packages; [ feedparser ];
namePrefix = "";
meta = with stdenv.lib; {
homepage = "http://offog.org/code/rawdog/";
description = "RSS Aggregator Without Delusions Of Grandeur";
license = licenses.gpl2;
platform = platforms.unix;
platforms = platforms.unix;
maintainers = with maintainers; [ nckx ];
};
}

View File

@ -26,6 +26,6 @@ python27Packages.buildPythonApplication rec {
description = "Qt remote GUI for WeeChat";
license = licenses.gpl3;
maintainers = with maintainers; [ ramkromberg ];
platform = with platforms; linux;
platforms = with platforms; linux;
};
}

View File

@ -21,7 +21,7 @@ set which contains `emacsWithPackages`. For example, to override
`emacsPackagesNg.emacsWithPackages`,
```
let customEmacsPackages =
emacsPackagesNg.override (super: self: {
emacsPackagesNg.overrideScope (super: self: {
# use a custom version of emacs
emacs = ...;
# use the unstable MELPA version of magit

View File

@ -1,12 +1,12 @@
{ stdenv, fetchurl, composableDerivation, unzip, libjpeg, libtiff, zlib
, postgresql, mysql, libgeotiff, pythonPackages, proj, geos, openssl
, libpng, sqlite, libspatialite
, netcdf, hdf5 , curl
, netcdfSupport ? true
}:
, libiconv
, netcdfSupport ? true, netcdf, hdf5 , curl
}:
with stdenv.lib;
composableDerivation.composableDerivation {} (fixed: rec {
version = "2.1.3";
name = "gdal-${version}";
@ -18,7 +18,8 @@ composableDerivation.composableDerivation {} (fixed: rec {
buildInputs = [ unzip libjpeg libtiff libpng proj openssl sqlite libspatialite ]
++ (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" ];

View File

@ -10,17 +10,6 @@ index 6abbc72..804f0f2 100644
#include "gettext.h"
#define _(String) dgettext (PACKAGE, String)
#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[])
}

View File

@ -2,7 +2,10 @@
stdenv.mkDerivation rec {
name = "qtinstaller";
buildInputs = [ qtdeclarative qttools qtbase qmakeHook ];
propagatedBuildInputs = [qtdeclarative qttools];
nativeBuildInputs = [ qmakeHook ];
version = "2.0.3";
src = fetchurl {
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" ];
setOutputFlags = false;
enableParallelBuilding = true;
NIX_QT_SUBMODULE = true;
installPhase = ''
mkdir -p $out/{bin,lib,share/qt-installer-framework}
cp -a bin/{archivegen,binarycreator,devtool,installerbase,repogen} $out/bin

View 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 ];
};
}

View File

@ -3,6 +3,8 @@
, fetchPypi
, cython
, isPyPy
, ipython
, python
}:
buildPythonPackage rec {
@ -17,8 +19,14 @@ buildPythonPackage rec {
buildInputs = [ cython ];
propagatedBuildInputs = [ ipython ];
disabled = isPyPy;
checkPhase = ''
${python.interpreter} -m unittest discover -s tests
'';
meta = {
description = "Line-by-line profiler";
homepage = https://github.com/rkern/line_profiler;

View File

@ -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 {
name = "magic-wormhole-${version}";
buildPythonPackage rec {
pname = "magic-wormhole";
version = "0.8.1";
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://pypi/m/magic-wormhole/${name}.tar.gz";
src = fetchPypi {
inherit pname version;
sha256 = "1yh5nbhh9z1am2pqnb5qqyq1zjl1m7z6jnkmvry2q14qwspw9had";
};
checkInputs = [ mock ];
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|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:
@ -24,10 +40,10 @@ pythonPackages.buildPythonApplication rec {
export PATH="$PATH:$out/bin"
export LANG="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";
homepage = "https://github.com/warner/magic-wormhole";
license = licenses.mit;

View 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 ];
};
}

View File

@ -16,6 +16,6 @@ buildPythonPackage rec {
homepage = https://github.com/svinota/pyroute2;
license = licenses.asl20;
maintainers = [maintainers.mic92];
platform = platforms.linux;
platforms = platforms.linux;
};
}

View 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;
};
}

View File

@ -55,28 +55,23 @@ available.
## RStudio
RStudio by default will not use the libraries installed like above.
You must override its R version with your custom R environment, and
set `useRPackages` to `true`, like below:
RStudio uses a standard set of packages and ignores any custom R
environments or installed packages you may have. To create a custom
environment, see `rstudioWrapper`, which functions similarly to
`rWrapper`:
```nix
{
packageOverrides = super: let self = super.pkgs; in
{
rEnv = super.rWrapper.override {
rstudioEnv = super.rstudioWrapper.override {
packages = with self.rPackages; [
devtools
dplyr
ggplot2
reshape2
yaml
optparse
];
};
rstudioEnv = super.rstudio.override {
R = rEnv;
useRPackages = true;
};
};
}
```

View 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;
};
}

View File

@ -1,19 +1,12 @@
{ stdenv, R, makeWrapper, recommendedPackages, packages }:
stdenv.mkDerivation rec {
stdenv.mkDerivation {
name = R.name + "-wrapper";
buildInputs = [makeWrapper R] ++ recommendedPackages ++ packages;
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 = ''
mkdir -p $out/bin
cd ${R}/bin
@ -21,17 +14,6 @@ stdenv.mkDerivation rec {
makeWrapper ${R}/bin/$exe $out/bin/$exe \
--prefix "R_LIBS_SITE" ":" "$R_LIBS_SITE"
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 = {

View File

@ -1,12 +1,13 @@
{ stdenv, lib, fetchurl, makeWrapper, jre }:
stdenv.mkDerivation rec {
name = "ammonite-repl-${version}";
version = "0.8.3";
name = "ammonite-${version}";
version = "0.8.4";
scalaVersion = "2.12";
src = fetchurl {
url = "https://github.com/lihaoyi/Ammonite/releases/download/${version}/2.12-${version}";
sha256 = "0y4524y2w7aq300djcazb7ckkr3gqpim2grcgb237mxq3fdvb0r8";
url = "https://github.com/lihaoyi/Ammonite/releases/download/${version}/${scalaVersion}-${version}";
sha256 = "04kni08yd53w8dhkkgbydzkka4cnp31l2d8g23iinkn10ckmz5jm";
};
propagatedBuildInputs = [ jre ] ;

View File

@ -5,17 +5,19 @@ let
buildInputs = [ makeWrapper ] ++ 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 {
name = "${pname}-${version}";
pname = "buildbot";
version = "0.9.4";
version = "0.9.5";
src = pythonPackages.fetchPypi {
inherit pname version;
sha256 = "0wklrn4fszac9wi8zw3vbsznwyff6y57cz0i81zvh46skb6n3086";
sha256 = "11r553nmh87a9pm58wycimapk2pw9hnlc7hffn97xwbqprd8qh66";
};
buildInputs = with pythonPackages; [
@ -49,6 +51,7 @@ let
txaio
autobahn
pyjwt
distro
# tls
pyopenssl
@ -68,6 +71,14 @@ let
postPatch = ''
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; };

View File

@ -1,14 +1,14 @@
{ stdenv, fetchurl, pythonPackages }:
{ stdenv, pythonPackages }:
let
buildbot-pkg = pythonPackages.buildPythonPackage rec {
name = "${pname}-${version}";
pname = "buildbot-pkg";
version = "0.9.4";
version = "0.9.5";
src = fetchurl {
url = "mirror://pypi/b/${pname}/${name}.tar.gz";
sha256 = "09a3yvs5hhf8syrkyydznmymgg86dpvgrwy9rb3bryq00wpjb3wn";
src = pythonPackages.fetchPypi {
inherit pname version;
sha256 = "1xpi4w0lc6z97pmmms85dvdspacbzlvs8zi3kv1r4rypk3znwmi1";
};
propagatedBuildInputs = with pythonPackages; [ setuptools ];
@ -25,15 +25,14 @@ in {
www = pythonPackages.buildPythonPackage rec {
name = "${pname}-${version}";
pname = "buildbot_www";
version = "0.9.4";
version = "0.9.5";
# NOTE: wheel is used due to buildbot circular dependency
format = "wheel";
src = pythonPackages.fetchPypi {
inherit pname version format;
python = "py2";
sha256 = "08m4h2pf6hgi8igh2j0qzfq49izc2z0qqj6ddxk0di5l306jx4im";
sha256 = "1d7yjxka6slflm3wbdpq4sr1kagmgbqdv2zgx9bq77jvjh7ga0py";
};
meta = with stdenv.lib; {
@ -47,11 +46,11 @@ in {
console-view = pythonPackages.buildPythonPackage rec {
name = "${pname}-${version}";
pname = "buildbot-console-view";
version = "0.9.4";
version = "0.9.5";
src = fetchurl {
url = "mirror://pypi/b/${pname}/${name}.tar.gz";
sha256 = "1w2vv8iyzl7ak4161avp9n6mhh08adav2fl82bbm17a3064apl8n";
src = pythonPackages.fetchPypi {
inherit pname version;
sha256 = "1s6mvw955dsgk7hvb1xa32bbd7w2yma62py5s0vmi5shv8nwq3hb";
};
propagatedBuildInputs = with pythonPackages; [ buildbot-pkg ];
@ -67,11 +66,11 @@ in {
waterfall-view = pythonPackages.buildPythonPackage rec {
name = "${pname}-${version}";
pname = "buildbot-waterfall-view";
version = "0.9.4";
version = "0.9.5";
src = fetchurl {
url = "mirror://pypi/b/${pname}/${name}.tar.gz";
sha256 = "17xn6vrr0k2xabw6hr9sdyy0ry3llyjfmc79qrpgp5bsly2qv3jf";
src = pythonPackages.fetchPypi {
inherit pname version;
sha256 = "116846d987wp1bz78f0h4lypqcns5073vzhb4vsqbf08sppgr67k";
};
propagatedBuildInputs = with pythonPackages; [ buildbot-pkg ];

View File

@ -3,11 +3,11 @@
pythonPackages.buildPythonApplication (rec {
name = "${pname}-${version}";
pname = "buildbot-worker";
version = "0.9.4";
version = "0.9.5";
src = pythonPackages.fetchPypi {
inherit pname version;
sha256 = "0rdrr8x7sn2nxl51p6h9ad42s3c28lb6sys84zrg0d7fm4zhv7hj";
sha256 = "1al7jam351sf781axj4kfhj70cc0g21zv81ynk410kdccjyxp2dy";
};
buildInputs = with pythonPackages; [ setuptoolsTrial mock ];

View File

@ -23,6 +23,8 @@ stdenv.mkDerivation rec {
sha256 = "0i1y50mf559flhxgaxy2gdpa7dvpp12ix9xfzgxa61rc135x0im4";
};
patches = [ ./linux_4_11_include_fix.patch ];
preConfigure =
''
cd ./src

View File

@ -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;

View File

@ -1,15 +1,15 @@
{ stdenv, fetchurl, zsh, pinentry, cryptsetup, gnupg1orig, makeWrapper }:
let
version = "2.2";
version = "2.4";
in
stdenv.mkDerivation rec {
name = "tomb-${version}";
src = fetchurl {
url = "https://files.dyne.org/tomb/tomb-${version}.tar.gz";
sha256 = "11msj38fdmymiqcmwq1883kjqi5zr01ybdjj58rfjjrw4zw2w5y0";
url = "https://files.dyne.org/tomb/Tomb-${version}.tar.gz";
sha256 = "1hv1w79as7swqj0n137vz8n8mwvcgwlvd91sdyssz41jarg7f1vr";
};
buildInputs = [ makeWrapper ];

View File

@ -139,7 +139,7 @@ in
};
zfsUnstable = common {
# comment/uncomment if breaking kernel versions are known
incompatibleKernelVersion = null;
incompatibleKernelVersion = "4.11";
version = "0.7.0-rc3";

View File

@ -28,7 +28,7 @@ pythonPackages.buildPythonApplication rec {
on mobile phones or computers.
'';
license = licenses.gpl3Plus;
platform = platforms.all;
platforms = platforms.all;
maintainers = with maintainers; [ edwtjo pSub aneeshusa ];
};
}

View File

@ -16,6 +16,6 @@ stdenv.mkDerivation rec {
'';
homepage = https://moxie.org/software/fakeroute/;
license = licenses.bsd3;
platform = platforms.linux;
platforms = platforms.linux;
};
}

View File

@ -2,11 +2,11 @@
, makeWrapper, perl, openssl, autoreconfHook, openssh }:
stdenv.mkDerivation rec {
name = "mosh-1.2.6";
name = "mosh-1.3.0";
src = fetchurl {
url = "https://mosh.org/${name}.tar.gz";
sha256 = "118fhpm754wpklf1blnlq5xbvrxqml6rdfs3b07wg666zkxvg0ky";
sha256 = "0xikz40q873g9ihvz3x6bwkcb9hb8kcnp5wpcmb72pg5c7s143ij";
};
buildInputs = [ autoreconfHook protobuf ncurses zlib pkgconfig IOTty makeWrapper perl openssl ];

View File

@ -52,6 +52,6 @@ in stdenv.mkDerivation rec {
description = "Free, private and secure password management tool and e-wallet";
license = licenses.unfree;
maintainers = with maintainers; [ guillaumekoenig ];
platform = platforms.linux;
platforms = platforms.linux;
};
}

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
name = "efivar-${version}";
version = "31";
version = "30";
src = fetchFromGitHub {
owner = "rhinstaller";
repo = "efivar";
rev = version;
sha256 = "0dhycikylm87jmds4ii5ygwq59g4sa5sv9mzryjzgqlgppw5arli";
sha256 = "1pghj019qr7qpqd9rxfhsr1hm3s0w1hd5cdndpl07vhys8hy4a8a";
};
nativeBuildInputs = [ pkgconfig ];

View File

@ -15,7 +15,7 @@ python2Packages.buildPythonApplication rec {
meta = {
homepage = https://pypi.python.org/pypi/grin;
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 ];
};
}

View File

@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
# The homepage is www.thaiopensource.com, but it links to googlecode.com
# for downloads and call it the "project site".
homepage = http://www.thaiopensource.com/relaxng/jing.html;
platforms = platforms.linux;
platforms = platforms.unix;
maintainers = [ maintainers.bjornfor ];
};
}

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, rustPlatform, makeWrapper }:
{ stdenv, fetchFromGitHub, rustPlatform }:
with rustPlatform;

View File

@ -20,6 +20,7 @@ doNotDisplayTwice rec {
accounts-qt = libsForQt5.accounts-qt; # added 2015-12-19
adobeReader = adobe-reader;
aircrackng = aircrack-ng; # added 2016-01-14
ammonite-repl = ammonite; # added 2017-05-02
arduino_core = arduino-core; # added 2015-02-04
asciidocFull = asciidoc-full; # added 2014-06-22
bar = lemonbar; # added 2015-01-16

View File

@ -402,7 +402,7 @@ with pkgs;
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 {};
@ -1117,6 +1117,8 @@ with pkgs;
pythonPackages = python2Packages;
};
bfg-repo-cleaner = gitAndTools.bfg-repo-cleaner;
bgs = callPackage ../tools/X11/bgs { };
biber = callPackage ../tools/typesetting/biber {
@ -4736,7 +4738,7 @@ with pkgs;
xsel = callPackage ../tools/misc/xsel { };
xsv = callPackages ../tools/text/xsv { };
xsv = callPackage ../tools/text/xsv { };
xtreemfs = callPackage ../tools/filesystems/xtreemfs {};
@ -10610,6 +10612,15 @@ with pkgs;
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 {
overrides = (config.rPackageOverrides or (p: {})) pkgs;
};

View File

@ -3695,22 +3695,7 @@ in {
};
};
certifi = buildPythonPackage rec {
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 ];
};
};
certifi = callPackage ../development/python-modules/certifi { };
characteristic = buildPythonPackage rec {
name = "characteristic-14.1.0";
@ -5439,8 +5424,8 @@ in {
sha256 = "03c2qc42r4bczyw93gd7n0qi1h1jfhw7fnbhi33c3vp1hs81gm2k";
};
buildInputs = with self; [ pytest_xdist virtualenv process-tests ];
propagatedBuildInputs = with self; [ pytest coverage ];
propagatedBuildInputs = with self; [ coverage ];
buildInputs = with self; [ pytest covCore virtualenv process-tests helper ];
# xdist related tests fail with the following error
# OSError: [Errno 13] Permission denied: 'py/_code'
@ -16688,6 +16673,11 @@ in {
propagatedBuildInputs = with self; [ pbr Babel testrepository subunit testtools ];
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 {
@ -19858,20 +19848,7 @@ in {
};
});
pydot = buildPythonPackage rec {
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 = callPackage ../development/python-modules/pydot { };
pydot_ng = buildPythonPackage rec {
name = "pydot_ng-1.0.0";
@ -21741,6 +21718,8 @@ in {
homepage = "http://github.com/diyan/pywinrm/";
description = "Python library for Windows Remote Management";
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";
sha256 = "14220f8f761c48ba1e2526f087195077cf54fad7098b382ce220422f0ff59b12";
};
buildInputs = with self; [ pytest_29 virtualenv pytestrunner pytest-virtualenv ];
buildInputs = with self; [ pytest virtualenv pytestrunner pytest-virtualenv ];
propagatedBuildInputs = with self; [ twisted pathlib2 ];
postPatch = ''
sed -i '12,$d' tests/test_main.py
'';
# Couldn't get tests working
doCheck = false;
meta = {
description = "Setuptools plugin that makes unit tests execute with trial instead of pyunit.";
homepage = "https://github.com/rutsky/setuptools-trial";
@ -23768,25 +23751,7 @@ in {
};
};
stevedore = buildPythonPackage rec {
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;
};
};
stevedore = callPackage ../development/python-modules/stevedore {};
Theano = self.TheanoWithoutCuda;
@ -26845,9 +26810,7 @@ EOF
};
});
magic-wormhole = callPackage ../development/python-modules/magic-wormhole {
pythonPackages = self;
};
magic-wormhole = callPackage ../development/python-modules/magic-wormhole { };
wsgiproxy2 = buildPythonPackage rec {
name = "WSGIProxy2-0.4.2";
@ -31348,6 +31311,7 @@ EOF
rev = "8eab90908f2a3adcc414347566f4434636202344";
sha256 = "18n14ha2d3j3ghg2f2aqnf2mks94nn7ma9ii7vkiwcay93zm82cf";
};
disabled = isPy3k; # Judging from SyntaxError
buildInputs = with self; [ pkgs.swig1 pkgs.coin3d pkgs.soqt pkgs.mesa pkgs.xorg.libXi ];
};