Merge branch 'master' into staging

* master: (25 commits)
  prosody: 0.10.1 -> 0.10.2
  mpd: fix spelling in description
  pulseaudio-ctl: init at 1.66
  qt: remove install_name_tool stuff
  multimc: 0.6.1 -> 0.6.2
  lib: test for bitAnd, bitOr, bitXor
  pandas: fix check with the current pytest
  qt: fixup from c4cac55d69
  calibre: 2.24.1 -> 2.25.0
  spotify: 1.0.79.223.g92622cc2-21 -> 1.0.80.480.g51b03ac3-13 (#41356)
  libbsd-freedesktop: re-init at 0.9.1, use for samba
  sbt: 1.1.4 -> 1.1.6
  nixos/slurm: remove propagatedBuidInputs from slurmWrapped
  gitkraken: 3.6.1 -> 3.6.3
  pass-import: export PREFIX, set PASSWORD_STORE_BIN
  pass: Add pass-audit extension
  slurm: add maintainer
  nixos/slurm: update test, add test for enableStools
  slurm: add freeipmi, readline, libssh2, fix hwloc
  nixos/slurm: Add man pages to wrapedSlurm
  ...
This commit is contained in:
Orivej Desh 2018-06-03 12:15:25 +00:00
commit 420827170c
27 changed files with 314 additions and 162 deletions

View file

@ -56,10 +56,10 @@ let
hasAttr head isAttrs isBool isInt isList isString length
lessThan listToAttrs pathExists readFile replaceStrings seq
stringLength sub substring tail;
inherit (trivial) id const concat or and boolToString mergeAttrs
flip mapNullable inNixShell min max importJSON warn info
nixpkgsVersion version mod compare splitByAndCompare
functionArgs setFunctionArgs isFunction;
inherit (trivial) id const concat or and bitAnd bitOr bitXor
boolToString mergeAttrs flip mapNullable inNixShell min max
importJSON warn info nixpkgsVersion version mod compare
splitByAndCompare functionArgs setFunctionArgs isFunction;
inherit (fixedPoints) fix fix' extends composeExtensions
makeExtensible makeExtensibleWithCustomName;

View file

@ -45,6 +45,21 @@ runTests {
expected = true;
};
testBitAnd = {
expr = (bitAnd 3 10);
expected = 2;
};
testBitOr = {
expr = (bitOr 3 10);
expected = 11;
};
testBitXor = {
expr = (bitXor 3 10);
expected = 9;
};
# STRINGS
testConcatMapStrings = {

View file

@ -1,4 +1,38 @@
{ lib }:
let
zipIntBits = f: x: y:
let
# (intToBits 6) -> [ 0 1 1 ]
intToBits = x:
if x==0 then
[]
else
let
headbit = if (x / 2) * 2 != x then 1 else 0; # x & 1
tailbits = if x < 0 then 9223372036854775807 + ((x+1) / 2) else x / 2; # x >>> 1
in
[headbit] ++ (intToBits tailbits);
# (bitsToInt [ 0 1 1 ]) -> 6
bitsToInt = l:
if l==[] then
0
else
(builtins.head l) + (2 * (bitsToInt (builtins.tail l)));
zipListsWith' = fst: snd:
if fst==[] && snd==[] then
[]
else if fst==[] then
[(f 0 (builtins.head snd))] ++ (zipListsWith' [] (builtins.tail snd))
else if snd==[] then
[(f (builtins.head fst) 0 )] ++ (zipListsWith' (builtins.tail fst) [] )
else
[(f (builtins.head fst) (builtins.head snd))] ++ (zipListsWith' (builtins.tail fst) (builtins.tail snd));
in
assert (builtins.isInt x) && (builtins.isInt y);
bitsToInt (zipListsWith' (intToBits x) (intToBits y));
in
rec {
/* The identity function
@ -31,6 +65,15 @@ rec {
/* boolean and */
and = x: y: x && y;
/* bitwise and */
bitAnd = builtins.bitAnd or zipIntBits (a: b: if a==1 && b==1 then 1 else 0);
/* bitwise or */
bitOr = builtins.bitOr or zipIntBits (a: b: if a==1 || b==1 then 1 else 0);
/* bitwise xor */
bitXor = builtins.bitXor or zipIntBits (a: b: if a!=b then 1 else 0);
/* Convert a boolean to a string.
Note that toString on a bool returns "1" and "".
*/

View file

@ -133,7 +133,7 @@ in {
defaultText = ''''${dataDir}/tag_cache'';
description = ''
The path to MPD's database. If set to <literal>null</literal> the
paramter is omitted from the configuration.
parameter is omitted from the configuration.
'';
};
};

View file

@ -6,7 +6,7 @@ let
cfg = config.services.slurm;
# configuration file can be generated by http://slurm.schedmd.com/configurator.html
configFile = pkgs.writeText "slurm.conf"
configFile = pkgs.writeTextDir "slurm.conf"
''
${optionalString (cfg.controlMachine != null) ''controlMachine=${cfg.controlMachine}''}
${optionalString (cfg.controlAddr != null) ''controlAddr=${cfg.controlAddr}''}
@ -17,10 +17,25 @@ let
${cfg.extraConfig}
'';
plugStackConfig = pkgs.writeText "plugstack.conf"
plugStackConfig = pkgs.writeTextDir "plugstack.conf"
''
${optionalString cfg.enableSrunX11 ''optional ${pkgs.slurm-spank-x11}/lib/x11.so''}
${cfg.extraPlugstackConfig}
'';
cgroupConfig = pkgs.writeTextDir "cgroup.conf"
''
${cfg.extraCgroupConfig}
'';
# slurm expects some additional config files to be
# in the same directory as slurm.conf
etcSlurm = pkgs.symlinkJoin {
name = "etc-slurm";
paths = [ configFile cgroupConfig plugStackConfig ];
};
in
{
@ -46,7 +61,17 @@ in
client = {
enable = mkEnableOption "slurm client daemon";
};
enableStools = mkOption {
type = types.bool;
default = false;
description = ''
Wether to provide a slurm.conf file.
Enable this option if you do not run a slurm daemon on this host
(i.e. <literal>server.enable</literal> and <literal>client.enable</literal> are <literal>false</literal>)
but you still want to run slurm commands from this host.
'';
};
package = mkOption {
@ -97,7 +122,7 @@ in
example = "debug Nodes=linux[1-32] Default=YES MaxTime=INFINITE State=UP";
description = ''
Name by which the partition may be referenced. Note that now you have
to write patrition's parameters after the name.
to write the partition's parameters after the name.
'';
};
@ -107,8 +132,10 @@ in
description = ''
If enabled srun will accept the option "--x11" to allow for X11 forwarding
from within an interactive session or a batch job. This activates the
slurm-spank-x11 module. Note that this requires 'services.openssh.forwardX11'
to be enabled on the compute nodes.
slurm-spank-x11 module. Note that this option also enables
'services.openssh.forwardX11' on the client.
This option requires slurm to be compiled without native X11 support.
'';
};
@ -130,6 +157,23 @@ in
the end of the slurm configuration file.
'';
};
extraPlugstackConfig = mkOption {
default = "";
type = types.lines;
description = ''
Extra configuration that will be added to the end of <literal>plugstack.conf</literal>.
'';
};
extraCgroupConfig = mkOption {
default = "";
type = types.lines;
description = ''
Extra configuration for <literal>cgroup.conf</literal>. This file is
used when <literal>procTrackType=proctrack/cgroup</literal>.
'';
};
};
};
@ -142,8 +186,6 @@ in
wrappedSlurm = pkgs.stdenv.mkDerivation {
name = "wrappedSlurm";
propagatedBuildInputs = [ cfg.package configFile ];
builder = pkgs.writeText "builder.sh" ''
source $stdenv/setup
mkdir -p $out/bin
@ -155,17 +197,20 @@ in
#!/bin/sh
if [ -z "$SLURM_CONF" ]
then
SLURM_CONF="${configFile}" "$EXE" "\$@"
SLURM_CONF="${etcSlurm}/slurm.conf" "$EXE" "\$@"
else
"$EXE" "\$0"
fi
EOT
chmod +x "$wrappername"
done
mkdir -p $out/share
ln -s ${getBin cfg.package}/share/man $out/share/man
'';
};
in mkIf (cfg.client.enable || cfg.server.enable) {
in mkIf (cfg.enableStools || cfg.client.enable || cfg.server.enable) {
environment.systemPackages = [ wrappedSlurm ];
@ -190,6 +235,8 @@ in
'';
};
services.openssh.forwardX11 = mkIf cfg.client.enable (mkDefault true);
systemd.services.slurmctld = mkIf (cfg.server.enable) {
path = with pkgs; [ wrappedSlurm munge coreutils ]
++ lib.optional cfg.enableSrunX11 slurm-spank-x11;

View file

@ -1,7 +1,6 @@
import ./make-test.nix ({ pkgs, ... }:
let mungekey = "mungeverryweakkeybuteasytointegratoinatest";
slurmconfig = {
client.enable = true;
controlMachine = "control";
nodeName = ''
control
@ -20,9 +19,12 @@ in {
# TODO slrumd port and slurmctld port should be configurations and
# automatically allowed by the firewall.
networking.firewall.enable = false;
services.slurm = slurmconfig;
services.slurm = {
client.enable = true;
} // slurmconfig;
};
in {
control =
{ config, pkgs, ...}:
{
@ -31,17 +33,28 @@ in {
server.enable = true;
} // slurmconfig;
};
submit =
{ config, pkgs, ...}:
{
networking.firewall.enable = false;
services.slurm = {
enableStools = true;
} // slurmconfig;
};
node1 = computeNode;
node2 = computeNode;
node3 = computeNode;
};
testScript =
''
startAll;
# Set up authentification across the cluster
foreach my $node (($control,$node1,$node2,$node3))
foreach my $node (($submit,$control,$node1,$node2,$node3))
{
$node->waitForUnit("default.target");
@ -60,7 +73,7 @@ in {
};
subtest "can_start_slurmd", sub {
foreach my $node (($control,$node1,$node2,$node3))
foreach my $node (($node1,$node2,$node3))
{
$node->succeed("systemctl restart slurmd.service");
$node->waitForUnit("slurmd");
@ -72,7 +85,7 @@ in {
subtest "run_distributed_command", sub {
# Run `hostname` on 3 nodes of the partition (so on all the 3 nodes).
# The output must contain the 3 different names
$control->succeed("srun -N 3 hostname | sort | uniq | wc -l | xargs test 3 -eq");
$submit->succeed("srun -N 3 hostname | sort | uniq | wc -l | xargs test 3 -eq");
};
'';
})

View file

@ -0,0 +1,41 @@
{ stdenv, fetchFromGitHub, makeWrapper
, bc, dbus, gawk, gnused, libnotify, pulseaudioLight }:
let
path = stdenv.lib.makeBinPath [ bc dbus gawk gnused libnotify pulseaudioLight ];
pname = "pulseaudio-ctl";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
version = "1.66";
src = fetchFromGitHub {
owner = "graysky2";
repo = pname;
rev = "v${version}";
sha256 = "19a24w7y19551ar41q848w7r1imqkl9cpff4dpb7yry7qp1yjg0y";
};
postPatch = ''
substituteInPlace Makefile \
--replace /usr $out
substituteInPlace common/${pname}.in \
--replace '$0' ${pname}
'';
nativeBuildInputs = [ makeWrapper ];
postFixup = ''
wrapProgram $out/bin/${pname} \
--prefix PATH : ${path}
'';
meta = with stdenv.lib; {
description = "Control pulseaudio volume from the shell or mapped to keyboard shortcuts. No need for alsa-utils.";
homepage = https://bbs.archlinux.org/viewtopic.php?id=124513;
license = licenses.mit;
maintainers = with maintainers; [ peterhoeg ];
platforms = platforms.linux;
};
}

View file

@ -7,7 +7,7 @@ let
# Latest version number can be found at:
# http://repository-origin.spotify.com/pool/non-free/s/spotify-client/
# Be careful not to pick the testing version.
version = "1.0.79.223.g92622cc2-21";
version = "1.0.80.480.g51b03ac3-13";
deps = [
alsaLib
@ -51,7 +51,7 @@ stdenv.mkDerivation {
src = fetchurl {
url = "https://repository-origin.spotify.com/pool/non-free/s/spotify-client/spotify-client_${version}_amd64.deb";
sha256 = "1x1rpprzin4cmz1spzw036b4phd0yk1v7idlrcy4pkv97b4g5dw6";
sha256 = "e32f4816ae79dbfa0c14086e76df3bc83d526402aac1dbba534127fc00fe50ea";
};
buildInputs = [ dpkg makeWrapper ];

View file

@ -5,12 +5,12 @@
}:
stdenv.mkDerivation rec {
version = "3.24.1";
version = "3.25.0";
name = "calibre-${version}";
src = fetchurl {
url = "https://download.calibre-ebook.com/${version}/${name}.tar.xz";
sha256 = "1hgjnw8ynvpcfry4vanz5f54sjq55pqidvyy47lz59cz0s8lx50b";
sha256 = "018gxjbj5rak4ys5nyx6749rj9vszlf9k1wdcpl60ap3l83kxdnd";
};
patches = [

View file

@ -12,11 +12,11 @@ let
in
stdenv.mkDerivation rec {
name = "gitkraken-${version}";
version = "3.6.1";
version = "3.6.3";
src = fetchurl {
url = "https://release.gitkraken.com/linux/v${version}.deb";
sha256 = "1f77y281r3dp35vw3zdai2cgwwy2gpg7px6g66ylfz4gkig26dz8";
sha256 = "1bl4zz4k9whv5q6bkf6hyki26dkjhm19rzx2800zzadbrdgs7iz4";
};
libPath = makeLibraryPath [

View file

@ -408,8 +408,8 @@ self: super: {
# Older versions don't compile.
base-compat = self.base-compat_0_10_1;
brick = self.brick_0_37_1;
dhall = self.dhall_1_13_0;
dhall_1_13_0 = doJailbreak super.dhall_1_13_0; # support ansi-terminal 0.8.x
dhall = self.dhall_1_14_0;
dhall_1_13_0 = doJailbreak super.dhall_1_14_0; # support ansi-terminal 0.8.x
HaTeX = self.HaTeX_3_19_0_0;
hpack = self.hpack_0_28_2;
hspec = dontCheck super.hspec_2_5_1;

View file

@ -0,0 +1,21 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "libbsd-${version}";
version = "0.9.1";
src = fetchurl {
url = "http://libbsd.freedesktop.org/releases/${name}.tar.xz";
sha256 = "1957w2wi7iqar978qlfsm220dwywnrh5m58nrnn9zmi74ds3bn2n";
};
patches = [];
meta = with stdenv.lib; {
description = "Common functions found on BSD systems, Freedesktop fork";
homepage = https://libbsd.freedesktop.org/;
license = licenses.bsd3;
platforms = platforms.linux;
maintainers = with maintainers; [ raskin ];
};
}

View file

@ -3,7 +3,7 @@
, withData ? true, poppler_data
, qt5Support ? false, qtbase ? null
, introspectionSupport ? false, gobjectIntrospection ? null
, utils ? false
, utils ? false, nss ? null
, minimal ? false, suffix ? "glib"
}:
@ -28,6 +28,7 @@ stdenv.mkDerivation rec {
[ zlib freetype fontconfig libjpeg openjpeg ]
++ optionals (!minimal) [ cairo lcms curl ]
++ optional qt5Support qtbase
++ optional utils nss
++ optional introspectionSupport gobjectIntrospection;
nativeBuildInputs = [ cmake ninja pkgconfig ];
@ -49,7 +50,9 @@ stdenv.mkDerivation rec {
description = "A PDF rendering library";
longDescription = ''
Poppler is a PDF rendering library based on the xpdf-3.0 code base.
Poppler is a PDF rendering library based on the xpdf-3.0 code
base. In addition it provides a number of tools that can be
installed separately.
'';
license = licenses.gpl2;

View file

@ -16,9 +16,6 @@ let
optional (!debug) "-DQT_NO_DEBUG"
++ lib.toList (args.NIX_CFLAGS_COMPILE or []);
configureFlags = [ "-no-framework" ]
++ (args.configureFlags or []);
cmakeFlags =
(args.cmakeFlags or [])
++ [

View file

@ -298,6 +298,7 @@ stdenv.mkDerivation {
"-no-fontconfig"
"-qt-freetype"
"-qt-libpng"
"-no-framework"
]
else
[
@ -373,24 +374,6 @@ stdenv.mkDerivation {
''
+ (
if stdenv.isDarwin
then
''
fixDarwinDylibNames_rpath() {
local flags=()
for fn in "$@"; do
flags+=(-change "@rpath/$fn.framework/Versions/5/$fn" "$out/lib/$fn.framework/Versions/5/$fn")
done
for fn in "$@"; do
echo "$fn: fixing dylib"
install_name_tool -id "$out/lib/$fn.framework/Versions/5/$fn" "''${flags[@]}" "$out/lib/$fn.framework/Versions/5/$fn"
done
}
fixDarwinDylibNames_rpath "QtConcurrent" "QtPrintSupport" "QtCore" "QtSql" "QtDBus" "QtTest" "QtGui" "QtWidgets" "QtNetwork" "QtXml" "QtOpenGL"
''
else
# fixup .pc file (where to find 'moc' etc.)
''
sed -i "$dev/lib/pkgconfig/Qt5Core.pc" \

View file

@ -55,6 +55,8 @@ in buildPythonPackage rec {
xlwt
];
patches = [ ./pandas-0.22.0-pytest-3.5.1.patch ];
# For OSX, we need to add a dependency on libcxx, which provides
# `complex.h` and other libraries that pandas depends on to build.
postPatch = optionalString isDarwin ''

View file

@ -0,0 +1,13 @@
--- a/pandas/tests/io/test_pytables.py
+++ b/pandas/tests/io/test_pytables.py
@@ -5028,8 +5028,8 @@ class TestHDFStore(Base):
with ensure_clean_path(self.path) as path:
with catch_warnings(record=True):
with pytest.raises(
- ValueError, msg=("cannot have non-object label "
- "DataIndexableCol")):
+ ValueError, message=("cannot have non-object label "
+ "DataIndexableCol")):
df.to_hdf(path, 'df', format='table',
data_columns=True)

View file

@ -2,7 +2,7 @@
stdenv.mkDerivation rec {
name = "sbt-${version}";
version = "1.1.4";
version = "1.1.6";
src = fetchurl {
urls = [
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
"https://github.com/sbt/sbt/releases/download/v${version}/sbt-${version}.tgz"
"https://cocl.us/sbt-${version}.tgz"
];
sha256 = "0hc361gb71psadx9gj78j0j60fw4sljjk8sl45hw6yzx3hmmkg9g";
sha256 = "1hb8gcf3shcp4a65pnlqdlp8j5as7prqvw3d0b5bnfjfi0qbaigm";
};
patchPhase = ''

View file

@ -1,30 +0,0 @@
{ stdenv, lib, go, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }:
stdenv.mkDerivation rec {
version = "73";
name = "godep-${version}";
src = import ./deps.nix {
inherit stdenv lib fetchgit;
};
buildInputs = [ go ];
buildPhase = ''
export GOPATH=$src
go build -v -o godep github.com/tools/godep
'';
installPhase = ''
mkdir -p $out/bin
mv godep $out/bin
'';
meta = with stdenv.lib; {
description = "Dependency tool for go";
homepage = https://github.com/tools/godep;
license = licenses.bsd3;
maintainers = with maintainers; [ offline ];
platforms = platforms.unix;
};
}

View file

@ -1,67 +0,0 @@
# This file was generated by go2nix.
{ stdenv, lib, fetchgit }:
let
goDeps = [
{
root = "github.com/kr/fs";
src = fetchgit {
url = "https://github.com/kr/fs.git";
rev = "2788f0dbd16903de03cb8186e5c7d97b69ad387b";
sha256 = "1c0fipl4rsh0v5liq1ska1dl83v3llab4k6lm8mvrx9c4dyp71ly";
};
}
{
root = "github.com/tools/godep";
src = fetchgit {
url = "https://github.com/tools/godep.git";
rev = "f4edf338389e6e2bde0e8307886718133dc0613e";
sha256 = "1jdza8kwnzdsh3layqjzy9dnr92xdg3kfhnzvqkq3p50vsdims9w";
};
}
{
root = "github.com/kr/pretty";
src = fetchgit {
url = "https://github.com/kr/pretty";
rev = "f31442d60e51465c69811e2107ae978868dbea5c";
sha256 = "12nczwymikxmivb10q5ml5yxrwpz9s8p6k4vqig9g9707yhpxrkh";
};
}
{
root = "github.com/kr/text";
src = fetchgit {
url = "https://github.com/kr/text";
rev = "6807e777504f54ad073ecef66747de158294b639";
sha256 = "1wkszsg08zar3wgspl9sc8bdsngiwdqmg3ws4y0bh02sjx5a4698";
};
}
{
root = "github.com/pmezard/go-difflib";
src = fetchgit {
url = "https://github.com/pmezard/go-difflib";
rev = "f78a839676152fd9f4863704f5d516195c18fc14";
sha256 = "1bws3qyy572b62i3wkwfr1aw1g2nwcim2sy42jqsvh9pajjsf1vz";
};
}
{
root = "golang.org/x/tools";
src = fetchgit {
url = "https://go.googlesource.com/tools";
rev = "1f1b3322f67af76803c942fd237291538ec68262";
sha256 = "0h2yarcvcgg1px20r8n58psra1czv0sgly5gins2q3wp25iql6gj";
};
}
];
in
stdenv.mkDerivation rec {
name = "go-deps";
buildCommand =
lib.concatStrings
(map (dep: ''
mkdir -p $out/src/`dirname ${dep.root}`
ln -s ${dep.src} $out/src/${dep.root}
'') goDeps);
}

View file

@ -4,12 +4,12 @@ let
libpath = with xorg; stdenv.lib.makeLibraryPath [ libX11 libXext libXcursor libXrandr libXxf86vm libpulseaudio ];
in stdenv.mkDerivation rec {
name = "multimc-${version}";
version = "0.6.1";
version = "0.6.2";
src = fetchFromGitHub {
owner = "MultiMC";
repo = "MultiMC5";
rev = version;
sha256 = "0glsf4vfir8w24bpinf3cx2ninrcp7hpq9cl463wl78dvqfg47kx";
sha256 = "07jrr6si8nzfqwf073zhgw47y6snib23ad3imh1ik1nn5r7wqy3c";
fetchSubmodules = true;
};
nativeBuildInputs = [ cmake file makeWrapper ];
@ -18,6 +18,9 @@ in stdenv.mkDerivation rec {
enableParallelBuilding = true;
postInstall = ''
mkdir -p $out/share/{applications,pixmaps}
cp ../application/resources/multimc/scalable/multimc.svg $out/share/pixmaps
cp ../application/package/linux/multimc.desktop $out/share/applications
wrapProgram $out/bin/MultiMC --add-flags "-d \$HOME/.multimc/" --set GAME_LIBRARY_PATH /run/opengl-driver/lib:${libpath} --prefix PATH : ${jdk}/bin/
'';

View file

@ -1,5 +1,9 @@
{ stdenv, fetchurl, pkgconfig, libtool, curl, python, munge, perl, pam, openssl
{ stdenv, fetchurl, pkgconfig, libtool, curl
, python, munge, perl, pam, openssl
, ncurses, mysql, gtk2, lua, hwloc, numactl
, readline, freeipmi, libssh2, xorg
# enable internal X11 support via libssh2
, enableX11 ? true
}:
stdenv.mkDerivation rec {
@ -13,6 +17,11 @@ stdenv.mkDerivation rec {
outputs = [ "out" "dev" ];
prePatch = stdenv.lib.optional enableX11 ''
substituteInPlace src/common/x11_util.c \
--replace '"/usr/bin/xauth"' '"${xorg.xauth}/bin/xauth"'
'';
# nixos test fails to start slurmd with 'undefined symbol: slurm_job_preempt_mode'
# https://groups.google.com/forum/#!topic/slurm-devel/QHOajQ84_Es
# this doesn't fix tests completely at least makes slurmd to launch
@ -20,14 +29,20 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig libtool ];
buildInputs = [
curl python munge perl pam openssl mysql.connector-c ncurses gtk2 lua hwloc numactl
];
curl python munge perl pam openssl
mysql.connector-c ncurses gtk2
lua hwloc numactl readline freeipmi
] ++ stdenv.lib.optionals enableX11 [ libssh2 xorg.xauth ];
configureFlags =
configureFlags = with stdenv.lib;
[ "--with-munge=${munge}"
"--with-ssl=${openssl.dev}"
"--with-hwloc=${hwloc.dev}"
"--with-freeipmi=${freeipmi}"
"--sysconfdir=/etc/slurm"
] ++ stdenv.lib.optional (gtk2 == null) "--disable-gtktest";
] ++ (optional (gtk2 == null) "--disable-gtktest")
++ (optional enableX11 "--with-libssh2=${libssh2.dev}");
preConfigure = ''
patchShebangs ./doc/html/shtml2html.py
@ -45,6 +60,6 @@ stdenv.mkDerivation rec {
description = "Simple Linux Utility for Resource Management";
platforms = platforms.linux;
license = licenses.gpl2;
maintainers = [ maintainers.jagajaga ];
maintainers = with maintainers; [ jagajaga markuskowa ];
};
}

View file

@ -25,12 +25,12 @@ let
in
stdenv.mkDerivation rec {
version = "0.10.1";
version = "0.10.2";
name = "prosody-${version}";
src = fetchurl {
url = "http://prosody.im/downloads/source/${name}.tar.gz";
sha256 = "1kmmpkkgymg1r8r0k8j83pgmiskg1phl8hmpzjrnvlvsfnrnjplr";
sha256 = "13knr7izscw0zx648b9582dx11aap4cq9bzfiqh5ykd7wwsz1dbm";
};
communityModules = fetchhg {

View file

@ -0,0 +1,42 @@
{ stdenv, pass, fetchFromGitHub, pythonPackages, makeWrapper }:
let
pythonEnv = pythonPackages.python.withPackages (p: [ p.requests ]);
in stdenv.mkDerivation rec {
name = "pass-audit-${version}";
version = "0.1";
src = fetchFromGitHub {
owner = "roddhjav";
repo = "pass-audit";
rev = "v${version}";
sha256 = "0v0db8bzpcaa7zqz17syn3c78mgvw4mpg8qg1gh5rmbjsjfxw6sm";
};
nativeBuildInputs = [ makeWrapper ];
buildInputs = [ pythonEnv ];
patchPhase = ''
sed -i -e "s|/usr/lib|$out/lib|" audit.bash
sed -i -e 's|$0|${pass}/bin/pass|' audit.bash
'';
dontBuild = true;
installFlags = [ "PREFIX=$(out)" ];
postFixup = ''
wrapProgram $out/lib/password-store/extensions/audit.bash \
--prefix PATH : "${pythonEnv}/bin" \
--run "export PREFIX"
'';
meta = with stdenv.lib; {
description = "Pass extension for auditing your password repository.";
homepage = https://github.com/roddhjav/pass-audit;
license = licenses.gpl3Plus;
platforms = platforms.unix;
};
}

View file

@ -3,6 +3,9 @@
with pkgs;
{
pass-audit = callPackage ./audit.nix {
pythonPackages = python3Packages;
};
pass-import = callPackage ./import.nix {
pythonPackages = python3Packages;
};

View file

@ -18,13 +18,18 @@ in stdenv.mkDerivation rec {
buildInputs = [ pythonEnv ];
patchPhase = ''
sed -i -e 's|$0|${pass}/bin/pass|' import.bash
'';
dontBuild = true;
installFlags = [ "PREFIX=$(out)" ];
postFixup = ''
wrapProgram $out/lib/password-store/extensions/import.bash \
--prefix PATH : "${pythonEnv}/bin"
--prefix PATH : "${pythonEnv}/bin" \
--run "export PREFIX"
'';
meta = with stdenv.lib; {

View file

@ -12940,6 +12940,7 @@ with pkgs;
samba4 = callPackage ../servers/samba/4.x.nix {
python = python2;
libbsd = libbsd-freedesktop;
};
sambaMaster = callPackage ../servers/samba/master.nix { };
@ -13908,8 +13909,6 @@ with pkgs;
golint = callPackage ../development/tools/golint { };
godep = callPackage ../development/tools/godep { };
godef = callPackage ../development/tools/godef { };
goimports = callPackage ../development/tools/goimports { };
@ -17499,6 +17498,8 @@ with pkgs;
ptask = callPackage ../applications/misc/ptask { };
pulseaudio-ctl = callPackage ../applications/audio/pulseaudio-ctl { };
pulseaudio-dlna = callPackage ../applications/audio/pulseaudio-dlna { };
pulseview = libsForQt5.callPackage ../applications/science/electronics/pulseview { };
@ -21493,6 +21494,8 @@ with pkgs;
libbsd = netbsd.compat;
libbsd-freedesktop = callPackage ../development/libraries/libbsd {};
inherit (recurseIntoAttrs (callPackages ../os-specific/bsd { }))
netbsd;