diff --git a/lib/default.nix b/lib/default.nix
index 4ca2e2ea6e3..d608d709447 100644
--- a/lib/default.nix
+++ b/lib/default.nix
@@ -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;
diff --git a/lib/tests/misc.nix b/lib/tests/misc.nix
index c683df7d7ca..eab20d0f14d 100644
--- a/lib/tests/misc.nix
+++ b/lib/tests/misc.nix
@@ -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 = {
diff --git a/lib/trivial.nix b/lib/trivial.nix
index 251cb796db0..86e3c939dd6 100644
--- a/lib/trivial.nix
+++ b/lib/trivial.nix
@@ -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 "".
*/
diff --git a/nixos/modules/services/audio/mpd.nix b/nixos/modules/services/audio/mpd.nix
index 500a9e35a13..94020ed05d6 100644
--- a/nixos/modules/services/audio/mpd.nix
+++ b/nixos/modules/services/audio/mpd.nix
@@ -133,7 +133,7 @@ in {
defaultText = ''''${dataDir}/tag_cache'';
description = ''
The path to MPD's database. If set to null the
- paramter is omitted from the configuration.
+ parameter is omitted from the configuration.
'';
};
};
diff --git a/nixos/modules/services/computing/slurm/slurm.nix b/nixos/modules/services/computing/slurm/slurm.nix
index 3e513ab1571..1e1c5bc9f03 100644
--- a/nixos/modules/services/computing/slurm/slurm.nix
+++ b/nixos/modules/services/computing/slurm/slurm.nix
@@ -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. server.enable and client.enable are false)
+ 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 plugstack.conf.
+ '';
+ };
+
+ extraCgroupConfig = mkOption {
+ default = "";
+ type = types.lines;
+ description = ''
+ Extra configuration for cgroup.conf. This file is
+ used when procTrackType=proctrack/cgroup.
+ '';
+ };
};
};
@@ -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;
diff --git a/nixos/tests/slurm.nix b/nixos/tests/slurm.nix
index dc4f62af564..c23d85e4002 100644
--- a/nixos/tests/slurm.nix
+++ b/nixos/tests/slurm.nix
@@ -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");
};
'';
})
diff --git a/pkgs/applications/audio/pulseaudio-ctl/default.nix b/pkgs/applications/audio/pulseaudio-ctl/default.nix
new file mode 100644
index 00000000000..6e1e576043d
--- /dev/null
+++ b/pkgs/applications/audio/pulseaudio-ctl/default.nix
@@ -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;
+ };
+}
diff --git a/pkgs/applications/audio/spotify/default.nix b/pkgs/applications/audio/spotify/default.nix
index 5f6772256ca..b8495465db5 100644
--- a/pkgs/applications/audio/spotify/default.nix
+++ b/pkgs/applications/audio/spotify/default.nix
@@ -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 ];
diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix
index 68f95195b6e..93a5d942853 100644
--- a/pkgs/applications/misc/calibre/default.nix
+++ b/pkgs/applications/misc/calibre/default.nix
@@ -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 = [
diff --git a/pkgs/applications/version-management/gitkraken/default.nix b/pkgs/applications/version-management/gitkraken/default.nix
index 74364327645..dc983e00336 100644
--- a/pkgs/applications/version-management/gitkraken/default.nix
+++ b/pkgs/applications/version-management/gitkraken/default.nix
@@ -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 [
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
index 55e80d7fb0c..b0dc20128fc 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
@@ -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;
diff --git a/pkgs/development/libraries/libbsd/default.nix b/pkgs/development/libraries/libbsd/default.nix
new file mode 100644
index 00000000000..114d3209b58
--- /dev/null
+++ b/pkgs/development/libraries/libbsd/default.nix
@@ -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 ];
+ };
+}
diff --git a/pkgs/development/libraries/poppler/default.nix b/pkgs/development/libraries/poppler/default.nix
index 960a792822d..bfc94e1fac8 100644
--- a/pkgs/development/libraries/poppler/default.nix
+++ b/pkgs/development/libraries/poppler/default.nix
@@ -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;
diff --git a/pkgs/development/libraries/qt-5/mkDerivation.nix b/pkgs/development/libraries/qt-5/mkDerivation.nix
index 53949ddd492..96014cfbc77 100644
--- a/pkgs/development/libraries/qt-5/mkDerivation.nix
+++ b/pkgs/development/libraries/qt-5/mkDerivation.nix
@@ -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 [])
++ [
diff --git a/pkgs/development/libraries/qt-5/modules/qtbase.nix b/pkgs/development/libraries/qt-5/modules/qtbase.nix
index 28b250437d0..0c7af9e185d 100644
--- a/pkgs/development/libraries/qt-5/modules/qtbase.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtbase.nix
@@ -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" \
diff --git a/pkgs/development/python-modules/pandas/default.nix b/pkgs/development/python-modules/pandas/default.nix
index 3f9188a6322..cb497742e47 100644
--- a/pkgs/development/python-modules/pandas/default.nix
+++ b/pkgs/development/python-modules/pandas/default.nix
@@ -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 ''
diff --git a/pkgs/development/python-modules/pandas/pandas-0.22.0-pytest-3.5.1.patch b/pkgs/development/python-modules/pandas/pandas-0.22.0-pytest-3.5.1.patch
new file mode 100644
index 00000000000..cba71b91316
--- /dev/null
+++ b/pkgs/development/python-modules/pandas/pandas-0.22.0-pytest-3.5.1.patch
@@ -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)
+
diff --git a/pkgs/development/tools/build-managers/sbt/default.nix b/pkgs/development/tools/build-managers/sbt/default.nix
index 04102e7e8f8..76d09962562 100644
--- a/pkgs/development/tools/build-managers/sbt/default.nix
+++ b/pkgs/development/tools/build-managers/sbt/default.nix
@@ -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 = ''
diff --git a/pkgs/development/tools/godep/default.nix b/pkgs/development/tools/godep/default.nix
deleted file mode 100644
index 3503a6c2c62..00000000000
--- a/pkgs/development/tools/godep/default.nix
+++ /dev/null
@@ -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;
- };
-}
diff --git a/pkgs/development/tools/godep/deps.nix b/pkgs/development/tools/godep/deps.nix
deleted file mode 100644
index 10071fa5195..00000000000
--- a/pkgs/development/tools/godep/deps.nix
+++ /dev/null
@@ -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);
-}
diff --git a/pkgs/games/multimc/default.nix b/pkgs/games/multimc/default.nix
index 35444f82f66..c6697f5806d 100644
--- a/pkgs/games/multimc/default.nix
+++ b/pkgs/games/multimc/default.nix
@@ -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/
'';
diff --git a/pkgs/servers/computing/slurm/default.nix b/pkgs/servers/computing/slurm/default.nix
index b0460f21bfa..7a03bf75802 100644
--- a/pkgs/servers/computing/slurm/default.nix
+++ b/pkgs/servers/computing/slurm/default.nix
@@ -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 ];
};
}
diff --git a/pkgs/servers/xmpp/prosody/default.nix b/pkgs/servers/xmpp/prosody/default.nix
index 6f092dd80cd..40f63099945 100644
--- a/pkgs/servers/xmpp/prosody/default.nix
+++ b/pkgs/servers/xmpp/prosody/default.nix
@@ -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 {
diff --git a/pkgs/tools/security/pass/extensions/audit.nix b/pkgs/tools/security/pass/extensions/audit.nix
new file mode 100644
index 00000000000..79dd1fadb01
--- /dev/null
+++ b/pkgs/tools/security/pass/extensions/audit.nix
@@ -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;
+ };
+}
diff --git a/pkgs/tools/security/pass/extensions/default.nix b/pkgs/tools/security/pass/extensions/default.nix
index dfb853c0a0b..f69687e512b 100644
--- a/pkgs/tools/security/pass/extensions/default.nix
+++ b/pkgs/tools/security/pass/extensions/default.nix
@@ -3,6 +3,9 @@
with pkgs;
{
+ pass-audit = callPackage ./audit.nix {
+ pythonPackages = python3Packages;
+ };
pass-import = callPackage ./import.nix {
pythonPackages = python3Packages;
};
diff --git a/pkgs/tools/security/pass/extensions/import.nix b/pkgs/tools/security/pass/extensions/import.nix
index 8ba4abc5e3d..9e69cf37621 100644
--- a/pkgs/tools/security/pass/extensions/import.nix
+++ b/pkgs/tools/security/pass/extensions/import.nix
@@ -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; {
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 5a561d6ff0c..cc8bd077376 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -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;