Merge branch 'master' into networkd-disallow-dhcp

This commit is contained in:
Robin Gloster 2019-09-25 11:28:20 +02:00 committed by GitHub
commit 68b42a84fd
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
60 changed files with 1694 additions and 4573 deletions

View file

@ -5370,6 +5370,12 @@
github = "rickynils";
name = "Rickard Nilsson";
};
rileyinman = {
email = "rileyminman@gmail.com";
github = "rileyinman";
githubId = 37246692;
name = "Riley Inman";
};
ris = {
email = "code@humanleg.org.uk";
github = "risicle";

View file

@ -226,7 +226,7 @@ sub pkg_to_attr {
sub get_pkg_name {
my ($module) = @_;
return $module->package_name . '-' . $module->package_version;
return ( $module->package_name, $module->package_version =~ s/^v(\d)/$1/r );
}
sub read_meta {
@ -375,13 +375,13 @@ die "module $module_name not found\n" if scalar @modules == 0;
die "multiple packages that match module $module_name\n" if scalar @modules > 1;
my $module = $modules[0];
my $pkg_name = get_pkg_name $module;
my ($pkg_name, $pkg_version) = get_pkg_name $module;
my $attr_name = pkg_to_attr $module;
INFO( "attribute name: ", $attr_name );
INFO( "module: ", $module->module );
INFO( "version: ", $module->version );
INFO( "package: ", $module->package, " (", $pkg_name, ", ", $attr_name, ")" );
INFO( "package: ", $module->package, " (", "$pkg_name-$pkg_version", ", ", $attr_name, ")" );
INFO( "path: ", $module->path );
my $tar_path = $module->fetch();
@ -436,10 +436,11 @@ my $build_fun = -e "$pkg_path/Build.PL"
print STDERR "===\n";
print <<EOF;
${\(is_reserved($attr_name) ? "\"$attr_name\"" : $attr_name)} = $build_fun rec {
name = "$pkg_name";
${\(is_reserved($attr_name) ? "\"$attr_name\"" : $attr_name)} = $build_fun {
pname = "$pkg_name";
version = "$pkg_version";
src = fetchurl {
url = "mirror://cpan/${\$module->path}/\${name}.${\$module->package_extension}";
url = "mirror://cpan/${\$module->path}/${\$module->package}";
sha256 = "${\$module->status->checksum_value}";
};
EOF

View file

@ -485,7 +485,34 @@
</para>
</listitem>
<listitem>
<para>
<para>
The <literal>services.gitlab</literal> module has had its literal secret options (<option>services.gitlab.smtp.password</option>,
<option>services.gitlab.databasePassword</option>,
<option>services.gitlab.initialRootPassword</option>,
<option>services.gitlab.secrets.secret</option>,
<option>services.gitlab.secrets.db</option>,
<option>services.gitlab.secrets.otp</option> and
<option>services.gitlab.secrets.jws</option>) replaced by file-based versions (<option>services.gitlab.smtp.passwordFile</option>,
<option>services.gitlab.databasePasswordFile</option>,
<option>services.gitlab.initialRootPasswordFile</option>,
<option>services.gitlab.secrets.secretFile</option>,
<option>services.gitlab.secrets.dbFile</option>,
<option>services.gitlab.secrets.otpFile</option> and
<option>services.gitlab.secrets.jwsFile</option>). This was done so that secrets aren't stored
in the world-readable nix store, but means that for each option you'll have to create a file with
the same exact string, add "File" to the end of the option name, and change the definition to a
string pointing to the corresponding file; e.g. <literal>services.gitlab.databasePassword = "supersecurepassword"</literal>
becomes <literal>services.gitlab.databasePasswordFile = "/path/to/secret_file"</literal> where the
file <literal>secret_file</literal> contains the string <literal>supersecurepassword</literal>.
</para>
<para>
The state path (<option>services.gitlab.statePath</option>) now has the following restriction:
no parent directory can be owned by any other user than <literal>root</literal> or the user
specified in <option>services.gitlab.user</option>; i.e. if <option>services.gitlab.statePath</option>
is set to <literal>/var/lib/gitlab/state</literal>, <literal>gitlab</literal> and all parent directories
must be owned by either <literal>root</literal> or the user specified in <option>services.gitlab.user</option>.
</para>
<para>
The <option>networking.useDHCP</option> option is unsupported in combination with
<option>networking.useNetworkd</option> in anticipation of defaulting to it by default.
It has to be set to <literal>false</literal> and enabled per

View file

@ -66,6 +66,8 @@ with lib;
(mkRenamedOptionModule [ "services" "clamav" "updater" "config" ] [ "services" "clamav" "updater" "extraConfig" ])
(mkRemovedOptionModule [ "services" "pykms" "verbose" ] "Use services.pykms.logLevel instead")
(mkRemovedOptionModule [ "security" "setuidOwners" ] "Use security.wrappers instead")
(mkRemovedOptionModule [ "security" "setuidPrograms" ] "Use security.wrappers instead")

View file

@ -223,7 +223,15 @@ in {
statePath = mkOption {
type = types.str;
default = "/var/gitlab/state";
description = "Gitlab state directory, logs are stored here.";
description = ''
Gitlab state directory. Configuration, repositories and
logs, among other things, are stored here.
The directory will be created automatically if it doesn't
exist already. Its parent directories must be owned by
either <literal>root</literal> or the user set in
<option>services.gitlab.user</option>.
'';
};
backupPath = mkOption {

View file

@ -224,6 +224,7 @@ in {
KillSignal = "SIGINT";
PrivateTmp = true;
RemoveIPC = true;
AmbientCapabilities = "cap_net_raw,cap_net_admin+eip";
};
path = [
"/run/wrappers" # needed for ping

View file

@ -4,6 +4,7 @@ with lib;
let
cfg = config.services.pykms;
libDir = "/var/lib/pykms";
in {
meta.maintainers = with lib.maintainers; [ peterhoeg ];
@ -28,12 +29,6 @@ in {
description = "The port on which to listen.";
};
verbose = mkOption {
type = types.bool;
default = false;
description = "Show verbose output.";
};
openFirewallPort = mkOption {
type = types.bool;
default = false;
@ -45,30 +40,44 @@ in {
default = "64M";
description = "How much memory to use at most.";
};
logLevel = mkOption {
type = types.enum [ "CRITICAL" "ERROR" "WARNING" "INFO" "DEBUG" "MINI" ];
default = "INFO";
description = "How much to log";
};
extraArgs = mkOption {
type = types.listOf types.str;
default = [];
description = "Additional arguments";
};
};
};
config = mkIf cfg.enable {
networking.firewall.allowedTCPPorts = lib.mkIf cfg.openFirewallPort [ cfg.port ];
systemd.services.pykms = let
home = "/var/lib/pykms";
in {
systemd.services.pykms = {
description = "Python KMS";
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
# python programs with DynamicUser = true require HOME to be set
environment.HOME = home;
environment.HOME = libDir;
serviceConfig = with pkgs; {
DynamicUser = true;
StateDirectory = baseNameOf home;
ExecStartPre = "${getBin pykms}/bin/create_pykms_db.sh ${home}/clients.db";
StateDirectory = baseNameOf libDir;
ExecStartPre = "${getBin pykms}/libexec/create_pykms_db.sh ${libDir}/clients.db";
ExecStart = lib.concatStringsSep " " ([
"${getBin pykms}/bin/server.py"
"${getBin pykms}/bin/server"
"--logfile STDOUT"
"--loglevel ${cfg.logLevel}"
] ++ cfg.extraArgs ++ [
cfg.listenAddress
(toString cfg.port)
] ++ lib.optional cfg.verbose "--verbose");
WorkingDirectory = home;
]);
ProtectHome = "tmpfs";
WorkingDirectory = libDir;
Restart = "on-failure";
MemoryLimit = cfg.memoryLimit;
};

View file

@ -12,7 +12,7 @@ let
i.ipv4.addresses
++ optionals cfg.enableIPv6 i.ipv6.addresses;
dhcpStr = useDHCP: if useDHCP == true || useDHCP == null then "both" else "no";
dhcpStr = useDHCP: if useDHCP == true || useDHCP == null then "yes" else "no";
slaves =
concatLists (map (bond: bond.interfaces) (attrValues cfg.bonds))

View file

@ -1,5 +1,7 @@
{ stdenv, fetchFromGitHub, audiofile, libvorbis, fltk, fftw, fftwFloat,
minixml, pkgconfig, libmad, libjack2, portaudio, libsamplerate }:
{ stdenv, fetchFromGitHub, fetchpatch
, audiofile, libvorbis, fltk, fftw, fftwFloat
, minixml, pkgconfig, libmad, libjack2, portaudio, libsamplerate
}:
stdenv.mkDerivation {
pname = "paulstretch";
@ -27,6 +29,13 @@ stdenv.mkDerivation {
libsamplerate
];
patches = [
(fetchpatch {
url = "https://github.com/paulnasca/paulstretch_cpp/pull/12.patch";
sha256 = "0lx1rfrs53afkiz1drp456asqgj5yv6hx3lkc01165cv1jsbw6q4";
})
];
buildPhase = ''
bash compile_linux_fftw_jack.sh
'';

View file

@ -4,13 +4,13 @@ let
pythonPackages = python3Packages;
in pythonPackages.buildPythonApplication rec {
pname = "picard";
version = "2.1.3";
version = "2.2.1";
src = fetchFromGitHub {
owner = "metabrainz";
repo = pname;
rev = "release-${version}";
sha256 = "1armg8vpvnbpk7rrfk9q7nj5gm56rza00ni9qwdyqpxp1xaz6apj";
sha256 = "1g7pbicf65hswbqmhrwlba9jm4r2vnggy7vy75z4256y7qcpwdfd";
};
nativeBuildInputs = [ gettext qt5.wrapQtAppsHook qt5.qtbase ];

View file

@ -201,11 +201,11 @@ let
platforms = platforms.linux;
};
}) (attrs: {
patchPhase = attrs.patchPhase + ''
patchPhase = lib.optionalString (!stdenv.isDarwin) (attrs.patchPhase + ''
# Patch built-in mono for ReSharperHost to start successfully
interpreter=$(echo ${stdenv.glibc.out}/lib/ld-linux*.so.2)
patchelf --set-interpreter "$interpreter" lib/ReSharperHost/linux-x64/mono/bin/mono-sgen
'';
'');
});
buildRubyMine = { name, version, src, license, description, wmClass, ... }:

View file

@ -1,8 +1,16 @@
{ stdenv, fetchurl, pkgconfig
, djvulibre, qt4, xorg, libtiff
, darwin }:
{ stdenv
, mkDerivation
, fetchurl
, pkgconfig
, djvulibre
, qtbase
, qttools
, xorg
, libtiff
, darwin
}:
stdenv.mkDerivation rec {
mkDerivation rec {
pname = "djview";
version = "4.10.6";
@ -11,20 +19,56 @@ stdenv.mkDerivation rec {
sha256 = "08bwv8ppdzhryfcnifgzgdilb12jcnivl4ig6hd44f12d76z6il4";
};
nativeBuildInputs = [ pkgconfig ];
nativeBuildInputs = [
pkgconfig
qttools
];
buildInputs = [ djvulibre qt4 xorg.libXt libtiff ]
++ stdenv.lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.AGL ];
buildInputs = [
djvulibre
qtbase
xorg.libXt
libtiff
] ++ stdenv.lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.AGL;
configureFlags = [
"--disable-silent-rules"
"--disable-dependency-tracking"
"--with-x"
"--with-tiff"
# NOTE: 2019-09-19: experimental "--enable-npdjvu" fails
] ++ stdenv.lib.optional stdenv.isDarwin "--enable-mac";
passthru = {
mozillaPlugin = "/lib/mozilla/plugins";
};
meta = with stdenv.lib; {
homepage = http://djvu.sourceforge.net/djview4.html;
description = "A portable DjVu viewer and browser plugin";
description = "A portable DjVu viewer (Qt5) and browser (nsdejavu) plugin";
homepage = "http://djvu.sourceforge.net/djview4.html";
license = licenses.gpl2;
platforms = platforms.unix;
maintainers = [ ];
maintainers = with maintainers; [ Anton-Latukha ];
longDescription = ''
The portable DjVu viewer (Qt5) and browser (nsdejavu) plugin.
Djview highlights:
- entirely based on the public DjVulibre api.
- entirely written in portable Qt5.
- works natively under Unix/X11, MS Windows, and macOS X.
- continuous scrolling of pages
- side-by-side display of pages
- ability to specify a url to the djview command
- all plugin and cgi options available from the command line
- all silly annotations implemented
- display thumbnails as a grid
- display outlines
- page names supported (see djvused command set-page-title)
- metadata dialog (see djvused command set-meta)
- implemented as reusable Qt widgets
nsdejavu: browser plugin for DjVu. It internally uses djview.
Has CGI-style arguments to configure the view of document (see man).
'';
};
}

View file

@ -7,7 +7,7 @@
stdenv.mkDerivation rec {
pname = "dbeaver-ce";
version = "6.1.5";
version = "6.2.1";
desktopItem = makeDesktopItem {
name = "dbeaver";
@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "https://dbeaver.io/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz";
sha256 = "0lkycm1152wd56i1hjq7q3sd05h51fyz99qr2n65lwi33vz2qk9m";
sha256 = "1ix6isahpk7zk741wdx5cf4i13wc5gp0j1gj4ja80bzfswbc38na";
};
installPhase = ''

View file

@ -1,33 +1,72 @@
{ stdenv, fetchurl, patchelf, makeWrapper, xorg, gcc, gcc-unwrapped }:
{ stdenv
, fetchurl
, makeDesktopItem
, makeWrapper
, patchelf
, fontconfig
, freetype
, gcc
, gcc-unwrapped
, iputils
, psmisc
, xorg }:
stdenv.mkDerivation rec {
pname = "IPMIView";
version = "2.14.0";
buildVersion = "180213";
pname = "IPMIView";
version = "2.16.0";
buildVersion = "190815";
src = fetchurl {
url = "ftp://ftp.supermicro.com/utility/IPMIView/Linux/IPMIView_${version}_build.${buildVersion}_bundleJRE_Linux_x64.tar.gz";
sha256 = "1wp22wm7smlsb25x0cck4p660cycfczxj381930crd1qrf68mw4h";
src = fetchurl {
url = "https://www.supermicro.com/wftp/utility/IPMIView/Linux/IPMIView_${version}_build.${buildVersion}_bundleJRE_Linux_x64.tar.gz";
sha256 = "0qw9zfnj0cyvab7ndamlw2y0gpczjhh1jkz8340kl42r2xmhkvpl";
};
nativeBuildInputs = [ patchelf makeWrapper ];
nativeBuildInputs = [ patchelf makeWrapper ];
buildPhase = with xorg;
let
stunnelBinary = if stdenv.hostPlatform.system == "x86_64-linux" then "linux/stunnel64"
else if stdenv.hostPlatform.system == "i686-linux" then "linux/stunnel32"
else throw "IPMIView is not supported on this platform";
in
''
patchelf --set-rpath "${stdenv.lib.makeLibraryPath [ libX11 libXext libXrender libXtst libXi ]}" ./jre/lib/amd64/libawt_xawt.so
patchelf --set-rpath "${stdenv.lib.makeLibraryPath [ freetype ]}" ./jre/lib/amd64/libfontmanager.so
patchelf --set-rpath "${gcc-unwrapped.lib}/lib" ./libiKVM64.so
patchelf --set-rpath "${gcc.cc}/lib:$out/jre/lib/amd64/jli" --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" ./jre/bin/java
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" ./BMCSecurity/${stunnelBinary}
'';
buildPhase = with xorg; ''
patchelf --set-rpath "${stdenv.lib.makeLibraryPath [ libX11 libXext libXrender libXtst libXi ]}" ./jre/lib/amd64/xawt/libmawt.so
patchelf --set-rpath "${gcc-unwrapped.lib}/lib" ./libiKVM64.so
patchelf --set-rpath "${stdenv.lib.makeLibraryPath [ libXcursor libX11 libXext libXrender libXtst libXi ]}" --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" ./jre/bin/javaws
patchelf --set-rpath "${gcc.cc}/lib:$out/jre/lib/amd64/jli" --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" ./jre/bin/java
'';
desktopItem = makeDesktopItem rec {
name = "IPMIView";
exec = "IPMIView";
desktopName = name;
genericName = "Supermicro BMC manager";
categories = "Network;Configuration";
};
installPhase = ''
mkdir -p $out/bin
cp -R . $out/
makeWrapper $out/jre/bin/java $out/bin/IPMIView \
--prefix PATH : "$out/jre/bin" \
--add-flags "-jar $out/IPMIView20.jar"
'';
installPhase = ''
mkdir -p $out/bin
cp -R . $out/
meta = with stdenv.lib; {
ln -s ${desktopItem}/share $out/share
# LD_LIBRARY_PATH: fontconfig is used from java code
# PATH: iputils is used for ping, and psmisc is for killall
# WORK_DIR: unfortunately the ikvm related binaries are loaded from
# and user configuration is written to files in the CWD
makeWrapper $out/jre/bin/java $out/bin/IPMIView \
--set LD_LIBRARY_PATH "${stdenv.lib.makeLibraryPath [ fontconfig ]}" \
--prefix PATH : "$out/jre/bin:${iputils}/bin:${psmisc}/bin" \
--add-flags "-jar $out/IPMIView20.jar" \
--run 'WORK_DIR=''${XDG_DATA_HOME:-~/.local/share}/ipmiview
mkdir -p $WORK_DIR
ln -snf '$out'/iKVM.jar '$out'/libiKVM* '$out'/libSharedLibrary* $WORK_DIR
cd $WORK_DIR'
'';
meta = with stdenv.lib; {
license = licenses.unfree;
};
}
maintainers = with maintainers; [ vlaci ];
platforms = [ "x86_64-linux" "i686-linux" ];
};
}

View file

@ -17,11 +17,11 @@ let
vivaldiName = if isSnapshot then "vivaldi-snapshot" else "vivaldi";
in stdenv.mkDerivation rec {
pname = "vivaldi";
version = "2.8.1664.35-1";
version = "2.8.1664.38-1";
src = fetchurl {
url = "https://downloads.vivaldi.com/${branch}/vivaldi-${branch}_${version}_amd64.deb";
sha256 = "0wrpn2figljvq9xldpqb1wf81fpwj91ppi2lzvcg5ycpl2a90x7j";
sha256 = "1znhlwwgq4k0fplr4l8ixgn6g5k26ns77j2dm0pjg3a2jgjq6rdr";
};
unpackPhase = ''

View file

@ -43,7 +43,7 @@ let
description = "Easiest way to get a production Kubernetes up and running";
homepage = https://github.com/kubernetes/kops;
license = licenses.asl20;
maintainers = with maintainers; [offline zimbatm];
maintainers = with maintainers; [offline zimbatm kampka];
platforms = platforms.unix;
};
} // attrs';
@ -57,7 +57,7 @@ in rec {
};
kops_1_13 = mkKops {
version = "1.13.0";
sha256 = "04kbbg3gqzwzzzq1lmnpw2gqky3pfwfk7pc0laxv2yssk9wac5k1";
version = "1.13.1";
sha256 = "0knypbrpipxplgdg6r0r6ycsj7w46virmzwn5s4sdim0y8d2ppyb";
};
}

View file

@ -44,7 +44,7 @@ python3.pkgs.buildPythonApplication rec {
];
propagatedBuildInputs = with python3.pkgs; [
nbxmpp pyasn1 pygobject3 dbus-python pillow cssutils precis-i18n keyring
nbxmpp pyasn1 pygobject3 dbus-python pillow cssutils precis-i18n keyring setuptools
] ++ lib.optionals enableE2E [ pycrypto python-gnupg ]
++ lib.optional enableRST docutils
++ lib.optionals enableOmemoPluginDependencies [ python-axolotl qrcode ]

View file

@ -1,37 +1,50 @@
{ mkDerivation
, lib
, fetchurl
{ akonadi-contacts
, cmake
, fetchgit
, gpgme
, kcontacts
, lib
, mimetic
, mkDerivation
, pkgconfig
, qgpgme
, qtbase
, qtwebkit
, qtkeychain
, qttools
, qtwebkit
}:
mkDerivation rec {
pname = "trojita";
version = "0.7";
version = "0.7.20190618";
src = fetchurl {
url = "mirror://sourceforge/trojita/trojita/${pname}-${version}.tar.xz";
sha256 = "1n9n07md23ny6asyw0xpih37vlwzp7vawbkprl7a1bqwfa0si3g0";
src = fetchgit {
url = "https://anongit.kde.org/trojita.git";
rev = "90b417b131853553c94ff93aef62abaf301aa8f1";
sha256 = "0xpxq5bzqaa68lkz90wima5q2m0mdcn0rvnigb66lylb4n20mnql";
};
buildInputs = [
akonadi-contacts
gpgme
kcontacts
mimetic
qgpgme
qtbase
qtkeychain
qtwebkit
];
nativeBuildInputs = [
cmake
pkgconfig
qttools
];
meta = with lib; {
description = "A Qt IMAP e-mail client";
homepage = http://trojita.flaska.net/;
homepage = "http://trojita.flaska.net/";
license = with licenses; [ gpl2 gpl3 ];
platforms = platforms.linux;
};
}

View file

@ -1,10 +1,23 @@
{ stdenv, fetchFromGitHub, SDL2, frei0r, gettext, mlt, jack1, mkDerivation
, pkgconfig, qtbase, qtmultimedia, qtwebkit, qtx11extras, qtwebsockets
, qtquickcontrols, qtgraphicaleffects, libmlt, qmake, qttools }:
{ stdenv, fetchFromGitHub, fetchpatch, mkDerivation, SDL2, frei0r, gettext, mlt
, jack1, pkgconfig, qtbase, qtmultimedia, qtwebkit, qtx11extras, qtwebsockets
, qtquickcontrols, qtgraphicaleffects, libmlt, qmake, qttools
}:
assert stdenv.lib.versionAtLeast libmlt.version "6.8.0";
assert stdenv.lib.versionAtLeast mlt.version "6.8.0";
let
# https://github.com/mltframework/shotcut/issues/771
fixVaapiRendering1 = fetchpatch {
url = "https://github.com/peti/shotcut/commit/038f6839298fc1e9e80ddf84fe168a78118bc625.patch";
sha256 = "153z1g6criszd6gdkw4f5zk0gmh0jar6l2g8fzwjhhcvkdz30vbp";
};
fixVaapiRendering2 = fetchpatch {
url = "https://github.com/peti/shotcut/commit/653c485f92d2847fdac517e3f797c9254826ffab.patch";
sha256 = "1qd0zgyahda72xh3avlg7lg0jq94wq5847154qlrgzj8b4n7vizw";
};
in
mkDerivation rec {
pname = "shotcut";
version = "19.09.14";
@ -16,6 +29,8 @@ mkDerivation rec {
sha256 = "1cl8ba1n0h450r4n5mfqmyjaxvczs3m19blwxslqskvmxy5my3cn";
};
patches = [ fixVaapiRendering1 fixVaapiRendering2 ];
enableParallelBuilding = true;
nativeBuildInputs = [ pkgconfig qmake ];
buildInputs = [
@ -33,8 +48,6 @@ mkDerivation rec {
sed 's_qApp->applicationDirPath(), "ffmpeg"_"${mlt.ffmpeg}/bin/ffmpeg"_' -i src/docks/encodedock.cpp
NICE=$(type -P nice)
sed "s_/usr/bin/nice_''${NICE}_" -i src/jobs/meltjob.cpp src/jobs/ffmpegjob.cpp
# Fix VAAPI auto-config: https://github.com/mltframework/shotcut/issues/771
sed 's#"-vaapi_device" << ":0"#"-vaapi_device" << "/dev/dri/renderD128"#' -i src/docks/encodedock.cpp
'';
qtWrapperArgs = [

View file

@ -92,6 +92,9 @@ in stdenv.mkDerivation {
})
++ [
./qtx11extras.patch
# Kernel 5.3 fix, should be fixed with VirtualBox 6.0.14
# https://www.virtualbox.org/ticket/18911
./kernel-5.3-fix.patch
];
postPatch = ''

View file

@ -12,9 +12,16 @@ let
# It's likely to work again in some future update.
xserverABI = let abi = xserverVListFunc 0 + xserverVListFunc 1;
in if abi == "119" || abi == "120" then "118" else abi;
in
stdenv.mkDerivation {
# Specifies how to patch binaries to make sure that libraries loaded using
# dlopen are found. We grep binaries for specific library names and patch
# RUNPATH in matching binaries to contain the needed library paths.
dlopenLibs = [
{ name = "libdbus-1.so"; pkg = dbus; }
{ name = "libXfixes.so"; pkg = xorg.libXfixes; }
];
in stdenv.mkDerivation {
name = "VirtualBox-GuestAdditions-${version}-${kernel.version}";
src = fetchurl {
@ -134,13 +141,13 @@ stdenv.mkDerivation {
# Stripping breaks these binaries for some reason.
dontStrip = true;
# Some code dlopen() libdbus, patch RUNPATH in fixupPhase so it isn't stripped.
postFixup = ''
for i in $(grep -F libdbus-1.so -l -r $out/{lib,bin}); do
# Patch RUNPATH according to dlopenLibs (see the comment there).
postFixup = lib.concatMapStrings (library: ''
for i in $(grep -F ${lib.escapeShellArg library.name} -l -r $out/{lib,bin}); do
origRpath=$(patchelf --print-rpath "$i")
patchelf --set-rpath "$origRpath:${lib.makeLibraryPath [ dbus ]}" "$i"
patchelf --set-rpath "$origRpath:${lib.makeLibraryPath [ library.pkg ]}" "$i"
done
'';
'') dlopenLibs;
meta = {
description = "Guest additions for VirtualBox";

View file

@ -0,0 +1,72 @@
--- a/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c
+++ b/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c
@@ -2123,7 +2123,9 @@
#endif
if (in_dev != NULL)
{
- for_ifa(in_dev) {
+ struct in_ifaddr *ifa;
+
+ for (ifa = in_dev->ifa_list; ifa; ifa = ifa->ifa_next) {
if (VBOX_IPV4_IS_LOOPBACK(ifa->ifa_address))
return NOTIFY_OK;
@@ -2137,7 +2139,7 @@
pThis->pSwitchPort->pfnNotifyHostAddress(pThis->pSwitchPort,
/* :fAdded */ true, kIntNetAddrType_IPv4, &ifa->ifa_address);
- } endfor_ifa(in_dev);
+ }
}
/*
--- a/src/VBox/Runtime/r0drv/linux/mp-r0drv-linux.c
+++ a/src/VBox/Runtime/r0drv/linux/mp-r0drv-linux.c
@@ -283,12 +283,15 @@
if (RTCpuSetCount(&OnlineSet) > 1)
{
/* Fire the function on all other CPUs without waiting for completion. */
-# if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27)
+# if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 3, 0)
+ smp_call_function(rtmpLinuxAllWrapper, &Args, 0 /* wait */);
+# elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27)
int rc = smp_call_function(rtmpLinuxAllWrapper, &Args, 0 /* wait */);
+ Assert(!rc); NOREF(rc);
# else
int rc = smp_call_function(rtmpLinuxAllWrapper, &Args, 0 /* retry */, 0 /* wait */);
-# endif
Assert(!rc); NOREF(rc);
+# endif
}
#endif
@@ -326,7 +329,6 @@
{
#ifdef CONFIG_SMP
IPRT_LINUX_SAVE_EFL_AC();
- int rc;
RTMPARGS Args;
RTTHREADPREEMPTSTATE PreemptState = RTTHREADPREEMPTSTATE_INITIALIZER;
@@ -337,14 +339,17 @@
Args.cHits = 0;
RTThreadPreemptDisable(&PreemptState);
-# if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27)
- rc = smp_call_function(rtmpLinuxWrapper, &Args, 1 /* wait */);
+# if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 3, 0)
+ smp_call_function(rtmpLinuxWrapper, &Args, 1 /* wait */);
+# elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27)
+ int rc = smp_call_function(rtmpLinuxWrapper, &Args, 1 /* wait */);
+ Assert(rc == 0); NOREF(rc);
# else /* older kernels */
- rc = smp_call_function(rtmpLinuxWrapper, &Args, 0 /* retry */, 1 /* wait */);
+ int rc = smp_call_function(rtmpLinuxWrapper, &Args, 0 /* retry */, 1 /* wait */);
+ Assert(rc == 0); NOREF(rc);
# endif /* older kernels */
RTThreadPreemptRestore(&PreemptState);
- Assert(rc == 0); NOREF(rc);
IPRT_LINUX_RESTORE_EFL_AC();
#else
RT_NOREF(pfnWorker, pvUser1, pvUser2);

View file

@ -1,83 +1,70 @@
{
stdenv, lib, pkgs,
fetchFromGitHub, fetchurl,
nodejs, ttfautohint-nox, otfcc,
{ stdenv, lib, pkgs, fetchFromGitHub
, nodejs, nodePackages, remarshal, ttfautohint-nox, otfcc
# Custom font set options.
# See https://github.com/be5invis/Iosevka#build-your-own-style
design ? [], upright ? [], italic ? [], oblique ? [],
family ? null, weights ? [],
# Custom font set name. Required if any custom settings above.
set ? null,
# Extra parameters. Can be used for ligature mapping.
extraParameters ? null
# Custom font set options.
# See https://github.com/be5invis/Iosevka#build-your-own-style
# Ex:
# privateBuildPlan = {
# family = "Iosevka Expanded";
#
# design = [
# "sans"
# "expanded"
# ];
# };
, privateBuildPlan ? null
# Extra parameters. Can be used for ligature mapping.
, extraParameters ? null
# Custom font set name. Required if any custom settings above.
, set ? null
}:
assert (design != []) -> set != null;
assert (upright != []) -> set != null;
assert (italic != []) -> set != null;
assert (oblique != []) -> set != null;
assert (family != null) -> set != null;
assert (weights != []) -> set != null;
assert (privateBuildPlan != null) -> set != null;
let
system = builtins.currentSystem;
nodePackages = import ./node-packages.nix { inherit pkgs system nodejs; };
in
stdenv.mkDerivation rec {
pname =
if set != null
then "iosevka-${set}"
else "iosevka";
let pname = if set != null then "iosevka-${set}" else "iosevka"; in
let
version = "2.3.0";
name = "${pname}-${version}";
src = fetchFromGitHub {
owner = "be5invis";
repo ="Iosevka";
repo = "Iosevka";
rev = "v${version}";
sha256 = "1qnbxhx9wvij9zia226mc3sy8j7bfsw5v1cvxvsbbwjskwqdamvv";
};
in
with lib;
let quote = str: "\"" + str + "\""; in
let toTomlList = list: "[" + (concatMapStringsSep ", " quote list) +"]"; in
let unlines = concatStringsSep "\n"; in
nativeBuildInputs = [
nodejs
nodePackages."iosevka-build-deps-../../data/fonts/iosevka"
remarshal
otfcc
ttfautohint-nox
];
let
param = name: options:
if options != [] then "${name}=${toTomlList options}" else null;
config = unlines (lib.filter (x: x != null) [
"[buildPlans.${pname}]"
(param "design" design)
(param "upright" upright)
(param "italic" italic)
(param "oblique" oblique)
(if family != null then "family=\"${family}\"" else null)
(param "weights" weights)
]);
installNodeModules = unlines (lib.mapAttrsToList
(name: value: "mkdir -p node_modules/${name}\n cp -r ${value.outPath}/lib/node_modules/. node_modules")
nodePackages);
in
stdenv.mkDerivation {
inherit name pname version src;
nativeBuildInputs = [ nodejs ttfautohint-nox otfcc ];
passAsFile = [ "config" "extraParameters" ];
config = config;
extraParameters = extraParameters;
privateBuildPlanJSON = builtins.toJSON { buildPlans.${pname} = privateBuildPlan; };
extraParametersJSON = builtins.toJSON { ${pname} = extraParameters; };
passAsFile = [ "privateBuildPlanJSON" "extraParametersJSON" ];
configurePhase = ''
mkdir -p node_modules/.bin
${installNodeModules}
${optionalString (set != null) ''mv "$configPath" private-build-plans.toml''}
${optionalString (extraParameters != null) ''cat "$extraParametersPath" >> parameters.toml''}
runHook preConfigure
${lib.optionalString (privateBuildPlan != null) ''
remarshal -i "$privateBuildPlanJSONPath" -o private-build-plans.toml -if json -of toml
''}
${lib.optionalString (extraParameters != null) ''
echo -e "\n" >> parameters.toml
remarshal -i "$extraParametersJSONPath" -if json -of toml >> parameters.toml
''}
ln -s ${nodePackages."iosevka-build-deps-../../data/fonts/iosevka"}/lib/node_modules/iosevka-build-deps/node_modules .
runHook postConfigure
'';
buildPhase = ''
npm run build -- ttf::${pname}
runHook preBuild
npm run build -- ttf::$pname
runHook postBuild
'';
installPhase = ''
@ -89,14 +76,20 @@ stdenv.mkDerivation {
enableParallelBuilding = true;
meta = with stdenv.lib; {
homepage = https://be5invis.github.io/Iosevka/;
downloadPage = "https://github.com/be5invis/Iosevka/releases";
homepage = https://be5invis.github.io/Iosevka;
downloadPage = https://github.com/be5invis/Iosevka/releases;
description = ''
Slender monospace sans-serif and slab-serif typeface inspired by Pragmata
Pro, M+ and PF DIN Mono, designed to be the ideal font for programming.
'';
license = licenses.ofl;
platforms = platforms.all;
maintainers = with maintainers; [ cstrahan jfrankenau ttuegel babariviere ];
maintainers = with maintainers; [
cstrahan
jfrankenau
ttuegel
babariviere
rileyinman
];
};
}

View file

@ -1,6 +0,0 @@
#!/bin/sh
node2nix --nodejs-10 --input node-packages.json \
--output node-packages-generated.nix \
--composition node-packages.nix \
--node-env ./../../../development/node-packages/node-env.nix

File diff suppressed because it is too large Load diff

View file

@ -1,20 +0,0 @@
[
"caryll-shapeops",
"libspiro-js",
"megaminx",
"object-assign",
"otfcc-ttcize",
"primitive-quadify-off-curves",
"toml",
"topsort",
"ttf2woff",
"ttf2woff2",
"unorm",
"verda",
"yargs",
"colors",
"patel",
"patrisika-scopes",
"eslint",
"stylus"
]

View file

@ -1,17 +0,0 @@
# This file has been generated by node2nix 1.7.0. Do not edit!
{pkgs ? import <nixpkgs> {
inherit system;
}, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-10_x"}:
let
nodeEnv = import ../../../development/node-packages/node-env.nix {
inherit (pkgs) stdenv python2 utillinux runCommand writeTextFile;
inherit nodejs;
libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
};
in
import ./node-packages-generated.nix {
inherit (pkgs) fetchurl fetchgit;
inherit nodeEnv;
}

View file

@ -0,0 +1,26 @@
{
"name": "iosevka-build-deps",
"version": "2.3.0",
"scripts": {
"build": "verda -f verdafile.js"
},
"dependencies": {
"caryll-shapeops": "^0.3.1",
"colors": "^1.3.3",
"libspiro-js": "^0.3.1",
"megaminx": "^0.9.0",
"object-assign": "^4.1.1",
"otfcc-ttcize": "^0.8.0",
"patel": "^0.33.1",
"patrisika-scopes": "^0.11.1",
"primitive-quadify-off-curves": "^0.4.0",
"stylus": "^0.54.5",
"toml": "^2.3.2",
"topsort": "0.0.2",
"ttf2woff": "^2.0.1",
"ttf2woff2": "^2.0.3",
"unorm": "^1.4.1",
"verda": "^1.0.0-0",
"yargs": "^12.0.0"
}
}

View file

@ -103,6 +103,6 @@ rec {
cp -r ${buildAndroidndk}/libexec/android-sdk/ndk-bundle/sysroot/usr/include $out/include
chmod +w $out/include
cp -r ${buildAndroidndk}/libexec/android-sdk/ndk-bundle/sysroot/usr/include/${targetInfo.triple}/* $out/include
ln -s ${buildAndroidndk}/libexec/android-sdk/ndk-bundle/platforms/android-${stdenv.hostPlatform.sdkVer}/arch-${hostInfo.arch}/usr/lib $out/lib
ln -s ${buildAndroidndk}/libexec/android-sdk/ndk-bundle/platforms/android-${stdenv.hostPlatform.sdkVer}/arch-${hostInfo.arch}/usr/${if hostInfo.arch == "x86_64" then "lib64" else "lib"} $out/lib
'';
}

View file

@ -1,15 +1,15 @@
{ stdenv, fetchFromGitHub, coreutils, autoreconfHook, smlnj }:
let
rev= "47273c463fc3c5d0a0ae655cf75a4700bdb020b4";
rev= "4528ccacdfd53d36f5959c005b27cd7ab6175b83";
in stdenv.mkDerivation {
pname = "manticore";
version = "2018.09.29";
version = "2019.09.20";
src = fetchFromGitHub {
owner = "ManticoreProject";
repo = "manticore";
sha256 = "1prrgp7ldkdnrdbj224qqkirw8bj72460ix97c96fy264j9c97cn";
sha256 = "1xz7msiq5x2c56zjxydbxlj6r001mm5zszcda6f6v5qfmmd1bakz";
inherit rev;
};

View file

@ -37,7 +37,7 @@ let self = stdenv.mkDerivation rec {
"--build=${stdenv.buildPlatform.config}"
] ++ optional (cxx && stdenv.isDarwin) "CPPFLAGS=-fexceptions"
++ optional (stdenv.isDarwin && stdenv.is64bit) "ABI=64"
++ optional (with stdenv.hostPlatform; useAndroidPrebuilt || useiOSPrebuilt) "--disable-assembly"
++ optional (with stdenv.hostPlatform; (useAndroidPrebuilt || useiOSPrebuilt) && !isx86) "--disable-assembly"
;
doCheck = true; # not cross;

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, cmake, libGLU_combined, libX11, xorgproto, libXt
{ stdenv, fetchurl, cmake, libGLU_combined, libX11, xorgproto, libXt, libtiff
, qtLib ? null
# Darwin support
, Cocoa, CoreServices, DiskArbitration, IOKit, CFNetwork, Security, GLUT, OpenGL
@ -20,7 +20,9 @@ stdenv.mkDerivation rec {
sha256 = "0nm7xwwj7rnsxjdv2ssviys8nhci4n9iiiqm2y14s520hl2dsp1d";
};
buildInputs = [ cmake ]
nativeBuildInputs = [ cmake ];
buildInputs = [ libtiff ]
++ optional (qtLib != null) qtLib
++ optionals stdenv.isLinux [ libGLU_combined libX11 xorgproto libXt ]
++ optionals stdenv.isDarwin [ xpc Cocoa CoreServices DiskArbitration IOKit
@ -38,7 +40,7 @@ stdenv.mkDerivation rec {
# built and requiring one of the shared objects.
# At least, we use -fPIC for other packages to be able to use this in shared
# objects.
cmakeFlags = [ "-DCMAKE_C_FLAGS=-fPIC" "-DCMAKE_CXX_FLAGS=-fPIC" ]
cmakeFlags = [ "-DCMAKE_C_FLAGS=-fPIC" "-DCMAKE_CXX_FLAGS=-fPIC" "-DVTK_USE_SYSTEM_TIFF=1" ]
++ optional (qtLib != null) [ "-DVTK_USE_QT:BOOL=ON" ]
++ optional stdenv.isDarwin "-DOPENGL_INCLUDE_DIR=${OpenGL}/Library/Frameworks";

View file

@ -57,6 +57,7 @@
, "indium"
, "ionic"
, "ios-deploy"
, { "iosevka-build-deps": "../../data/fonts/iosevka" }
, "jake"
, "javascript-typescript-langserver"
, "joplin"

File diff suppressed because it is too large Load diff

View file

@ -39,6 +39,9 @@ buildPythonPackage rec {
pytest
'';
# 368 failed, 10889 passed, 978 skipped, 69 xfailed in 196.24s
doCheck = false;
meta = {
description = "Astronomy/Astrophysics library for Python";
homepage = https://www.astropy.org;

View file

@ -0,0 +1,59 @@
{ stdenv, lib, buildPythonPackage, fetchPypi, python, isPy27
, dotnet-sdk
, substituteAll
, distro
, unzip
}:
buildPythonPackage rec {
pname = "dotnetcore2";
version = "2.1.8.1";
format = "wheel";
disabled = isPy27;
src = fetchPypi {
inherit pname version format;
python = "py3";
platform = "manylinux1_x86_64";
sha256 = "13zrff5j767d3f8drl397sjhl28winsrfa8pa20svf00xfcsy34s";
};
nativeBuildInputs = [ unzip ];
propagatedBuildInputs = [ distro ];
# needed to apply patches
prePatch = ''
unzip dist/dotnet*
'';
patches = [
( substituteAll {
src = ./runtime.patch;
dotnet = dotnet-sdk;
}
)
];
# unfortunately the noraml pip install fails because the manylinux1 format check fails with NixOS
installPhase = ''
mkdir -p $out/${python.sitePackages}/${pname}
# copy metadata
cp -r dotnetcore2-2* $out/${python.sitePackages}
# copy non-dotnetcore related files
cp -r dotnetcore2/{__init__.py,runtime.py} $out/${python.sitePackages}/${pname}
'';
# no tests, ensure it's one useful function works
checkPhase = ''
${python.interpreter} -c 'from dotnetcore2 import runtime; print(runtime.get_runtime_path())'
'';
meta = with lib; {
description = "DotNet Core runtime";
homepage = "https://github.com/dotnet/core";
license = licenses.mit;
platforms = [ "x86_64-linux" ];
maintainers = with maintainers; [ jonringer ];
};
}

View file

@ -0,0 +1,19 @@
diff a/dotnetcore2/runtime.py b/dotnetcore2/runtime.py
--- a/dotnetcore2/runtime.py
+++ b/dotnetcore2/runtime.py
@@ -39,13 +39,13 @@ def _get_bin_folder() -> str:
def get_runtime_path():
+ return "@dotnet@/dotnet"
search_string = os.path.join(_get_bin_folder(), 'dotnet*')
matches = [f for f in glob.glob(search_string, recursive=True)]
return matches[0]
def ensure_dependencies() -> Optional[str]:
- if dist is None:
- return None
+ return None
bin_folder = _get_bin_folder()
deps_path = os.path.join(bin_folder, 'deps')

View file

@ -0,0 +1,24 @@
{ lib, buildPythonPackage, fetchPypi, isPy3k }:
buildPythonPackage rec {
pname = "impacket";
version = "0.9.15";
src = fetchPypi {
inherit pname version;
sha256 = "1sq1698g7wqj731h24f7gr4lc0fz0mxrqv6mm3j4hm2j6h3rrbr6";
};
disabled = isPy3k;
# no tests
doCheck = false;
meta = with lib; {
description = "Network protocols Constructors and Dissectors";
homepage = "https://github.com/CoreSecurity/impacket";
# Modified Apache Software License, Version 1.1
license = licenses.free;
maintainers = with maintainers; [ peterhoeg ];
};
}

View file

@ -1,6 +1,4 @@
{ stdenv
, buildPythonPackage
, fetchgit
{ lib, buildPythonPackage, fetchFromGitHub
, isPy3k
, simplejson
, unittest2
@ -13,8 +11,9 @@ buildPythonPackage {
version = "7.20.0";
disabled = isPy3k;
src = fetchgit {
url = "https://github.com/Lispython/pycurl.git";
src = fetchFromGitHub {
owner = "Lispython";
repo = "pycurl";
rev = "0f00109950b883d680bd85dc6e8a9c731a7d0d13";
sha256 = "1qmw3cm93kxj94s71a8db9lwv2cxmr2wjv7kp1r8zildwdzhaw7j";
};
@ -22,9 +21,10 @@ buildPythonPackage {
# error: (6, "Couldn't resolve host 'h.wrttn.me'")
doCheck = false;
buildInputs = [ pkgs.curl simplejson unittest2 nose ];
nativeBuildInputs = [ pkgs.curl.dev ];
buildInputs = [ simplejson unittest2 nose ];
meta = with stdenv.lib; {
meta = with lib; {
homepage = https://pypi.python.org/pypi/pycurl2;
description = "A fork from original PycURL library that no maintained from 7.19.0";
license = licenses.mit;

View file

@ -1,35 +1,33 @@
{ stdenv, fetchFromGitHub, ocamlPackages }:
{ lib, fetchFromGitHub, ocamlPackages }:
with ocamlPackages; buildDunePackage rec {
pname = "ocamlformat";
version = "0.8";
version = "0.11.0";
minimumOCamlVersion = "4.05";
minimumOCamlVersion = "4.06";
src = fetchFromGitHub {
owner = "ocaml-ppx";
repo = pname;
rev = version;
sha256 = "1i7rsbs00p43362yv7z7dw0qsnv7vjf630qk676qvfg7kg422w6j";
sha256 = "0zvjn71jd4d3znnpgh0yphb2w8ggs457b6bl6cg1fmpdgxnds6yx";
};
buildInputs = [
base
cmdliner
fpath
ocaml-migrate-parsetree
odoc
re
stdio
uuseg
uutf
];
configurePhase = ''
patchShebangs tools/gen_version.sh
tools/gen_version.sh src/Version.ml version
'';
meta = {
inherit (src.meta) homepage;
description = "Auto-formatter for OCaml code";
maintainers = [ stdenv.lib.maintainers.Zimmi48 ];
license = stdenv.lib.licenses.mit;
maintainers = [ lib.maintainers.Zimmi48 ];
license = lib.licenses.mit;
};
}

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, fetchpatch, scons, pkgconfig
{ gcc6Stdenv, fetchurl, fetchpatch, scons, pkgconfig
, SDL, SDL_mixer, libGLU_combined, physfs
}:
@ -8,7 +8,7 @@ let
sha256 = "05mz77vml396mff43dbs50524rlm4fyds6widypagfbh5hc55qdc";
};
in stdenv.mkDerivation rec {
in gcc6Stdenv.mkDerivation rec {
pname = "dxx-rebirth";
version = "0.59.100";
@ -44,9 +44,9 @@ in stdenv.mkDerivation rec {
install -Dm644 -t $out/share/doc/dxx-rebirth *.txt
'';
meta = with stdenv.lib; {
meta = with gcc6Stdenv.lib; {
description = "Source Port of the Descent 1 and 2 engines";
homepage = https://www.dxx-rebirth.com/;
homepage = "https://www.dxx-rebirth.com/";
license = licenses.free;
maintainers = with maintainers; [ peterhoeg ];
platforms = with platforms; linux;

View file

@ -1,11 +1,11 @@
{ callPackage, fetchgit, ... } @ args:
callPackage ./generic.nix (args // {
version = "1.0.4";
version = "1.2.14";
src = fetchgit {
url = "git://git.gniibe.org/gnuk/gnuk.git";
rev = "93867d0c8b90c485f9832c0047c3a2e17a029aca";
sha256 = "0ah2gc772kdq7gdwpqwdmfh5nzbx2wgpk5ljnhwc4i3mrkafdiih";
rev = "177ef67edfa2306c2a369a037362385c354083e1";
sha256 = "16wa3xsaq4r8caw6c24hnv4j78bklacix4in2y66j35h68ggr3j1";
};
})

View file

@ -1,7 +1,10 @@
{ stdenv, lib, python, kernel, makeWrapper, writeText }:
{ stdenv, lib, python, kernel, makeWrapper, writeText
, gawk, iproute }:
let
daemons = stdenv.mkDerivation {
libexec = "libexec/hypervkvpd";
daemons = stdenv.mkDerivation rec {
pname = "hyperv-daemons-bin";
inherit (kernel) src version;
@ -10,10 +13,15 @@ let
# as of 4.9 compilation will fail due to -Werror=format-security
hardeningDisable = [ "format" ];
preConfigure = ''
postPatch = ''
cd tools/hv
substituteInPlace hv_kvp_daemon.c \
--replace /usr/libexec/hypervkvpd/ $out/${libexec}/
'';
# We don't actually need the hv_get_{dhcp,dns}_info scripts on NixOS in
# their current incarnation but with them in place, we stop the spam of
# errors in the log.
installPhase = ''
runHook preInstall
@ -21,7 +29,9 @@ let
install -Dm755 hv_''${f}_daemon -t $out/bin
done
install -Dm755 hv_get_dns_info.sh lsvmbus -t $out/bin
install -Dm755 lsvmbus $out/bin/lsvmbus
install -Dm755 hv_get_dhcp_info.sh $out/${libexec}/hv_get_dhcp_info
install -Dm755 hv_get_dns_info.sh $out/${libexec}/hv_get_dns_info
# I don't know why this isn't being handled automatically by fixupPhase
substituteInPlace $out/bin/lsvmbus \
@ -31,8 +41,8 @@ let
'';
postFixup = ''
# kvp needs to be able to find the script(s)
wrapProgram $out/bin/hv_kvp_daemon --prefix PATH : $out/bin
wrapProgram $out/bin/hv_kvp_daemon \
--prefix PATH : $out/bin:${lib.makeBinPath [ gawk iproute ]}
'';
};
@ -56,24 +66,19 @@ let
in stdenv.mkDerivation {
pname = "hyperv-daemons";
inherit (kernel) version;
# we just stick the bins into out as well as it requires "out"
outputs = [ "bin" "lib" "out" ];
phases = [ "installPhase" ];
buildInputs = [ daemons ];
installPhase = ''
buildCommand = ''
system=$lib/lib/systemd/system
mkdir -p $system
cp ${service "fcopy" "file copy (FCOPY)" "hv_fcopy" } $system/hv-fcopy.service
cp ${service "kvp" "key-value pair (KVP)" "" } $system/hv-kvp.service
cp ${service "vss" "volume shadow copy (VSS)" "" } $system/hv-vss.service
install -Dm444 ${service "fcopy" "file copy (FCOPY)" "hv_fcopy" } $system/hv-fcopy.service
install -Dm444 ${service "kvp" "key-value pair (KVP)" "" } $system/hv-kvp.service
install -Dm444 ${service "vss" "volume shadow copy (VSS)" "" } $system/hv-vss.service
cat > $system/hyperv-daemons.target <<EOF
[Unit]
@ -102,7 +107,7 @@ in stdenv.mkDerivation {
Microsoft calls their guest agents "Integration Services" which is why
we use that name here.
'';
homepage = https://kernel.org;
homepage = "https://kernel.org";
maintainers = with maintainers; [ peterhoeg ];
platforms = kernel.meta.platforms;
};

View file

@ -1,4 +1,4 @@
{ stdenv, kernel, fetchFromGitHub, autoreconfHook, yacc, flex, p7zip }:
{ stdenv, kernel, fetchFromGitHub, autoreconfHook, yacc, flex, p7zip, rsync }:
assert kernel != null -> stdenv.lib.versionAtLeast kernel.version "4.0";
@ -7,7 +7,7 @@ let
in stdenv.mkDerivation {
pname = "ply";
inherit version;
nativeBuildInputs = [ autoreconfHook flex yacc p7zip ];
nativeBuildInputs = [ autoreconfHook flex yacc p7zip rsync ];
src = fetchFromGitHub {
owner = "iovisor";

View file

@ -7,11 +7,11 @@ let inherit (stdenv.lib) optional optionals; in
# Note: ATM only the libraries have been tested in nixpkgs.
stdenv.mkDerivation rec {
pname = "knot-dns";
version = "2.8.3";
version = "2.8.4";
src = fetchurl {
url = "https://secure.nic.cz/files/knot-dns/knot-${version}.tar.xz";
sha256 = "8a62d81e5cf3df938f469b60ed4e46d9161007c2b89fbf7ae07525fa68368bad";
sha256 = "541e7e43503765c91405c5797b3838103bb656154712e69b3f959c6ab0e700a9";
};
outputs = [ "bin" "out" "dev" ];

View file

@ -2,7 +2,7 @@
# Do not edit!
{
version = "0.96.2";
version = "0.99.2";
components = {
"abode" = ps: with ps; [ ];
"acer_projector" = ps: with ps; [ pyserial ];
@ -28,6 +28,7 @@
"androidtv" = ps: with ps; [ ];
"anel_pwrctrl" = ps: with ps; [ ];
"anthemav" = ps: with ps; [ ];
"apache_kafka" = ps: with ps; [ ];
"apcupsd" = ps: with ps; [ ];
"api" = ps: with ps; [ aiohttp-cors ];
"apns" = ps: with ps; [ ];
@ -44,12 +45,14 @@
"asterisk_cdr" = ps: with ps; [ ];
"asterisk_mbox" = ps: with ps; [ ];
"asuswrt" = ps: with ps; [ ];
"atome" = ps: with ps; [ ];
"august" = ps: with ps; [ ];
"aurora" = ps: with ps; [ ];
"aurora_abb_powerone" = ps: with ps; [ ];
"auth" = ps: with ps; [ aiohttp-cors ];
"automatic" = ps: with ps; [ aiohttp-cors ];
"automation" = ps: with ps; [ aiohttp-cors ];
"avea" = ps: with ps; [ ];
"avion" = ps: with ps; [ ];
"awair" = ps: with ps; [ ];
"aws" = ps: with ps; [ ];
@ -59,6 +62,7 @@
"bayesian" = ps: with ps; [ ];
"bbb_gpio" = ps: with ps; [ ];
"bbox" = ps: with ps; [ ];
"beewi_smartclim" = ps: with ps; [ ];
"bh1750" = ps: with ps; [ ];
"binary_sensor" = ps: with ps; [ ];
"bitcoin" = ps: with ps; [ ];
@ -131,6 +135,7 @@
"decora" = ps: with ps; [ ];
"decora_wifi" = ps: with ps; [ ];
"default_config" = ps: with ps; [ pynacl aiohttp-cors distro netdisco sqlalchemy zeroconf ];
"delijn" = ps: with ps; [ ];
"deluge" = ps: with ps; [ deluge-client ];
"demo" = ps: with ps; [ aiohttp-cors ];
"denon" = ps: with ps; [ ];
@ -173,7 +178,6 @@
"ecovacs" = ps: with ps; [ ];
"eddystone_temperature" = ps: with ps; [ construct ];
"edimax" = ps: with ps; [ ];
"edp_redy" = ps: with ps; [ ];
"ee_brightbox" = ps: with ps; [ ];
"efergy" = ps: with ps; [ ];
"egardia" = ps: with ps; [ ];
@ -222,6 +226,7 @@
"fints" = ps: with ps; [ fints ];
"fitbit" = ps: with ps; [ aiohttp-cors fitbit ];
"fixer" = ps: with ps; [ ];
"fleetgo" = ps: with ps; [ ];
"flexit" = ps: with ps; [ ];
"flic" = ps: with ps; [ ];
"flock" = ps: with ps; [ ];
@ -231,6 +236,8 @@
"folder" = ps: with ps; [ ];
"folder_watcher" = ps: with ps; [ watchdog ];
"foobot" = ps: with ps; [ ];
"fortigate" = ps: with ps; [ ];
"fortios" = ps: with ps; [ ];
"foscam" = ps: with ps; [ ];
"foursquare" = ps: with ps; [ aiohttp-cors ];
"free_mobile" = ps: with ps; [ ];
@ -256,6 +263,7 @@
"geo_location" = ps: with ps; [ ];
"geo_rss_events" = ps: with ps; [ ];
"geofency" = ps: with ps; [ aiohttp-cors ];
"geonetnz_quakes" = ps: with ps; [ ];
"github" = ps: with ps; [ PyGithub ];
"gitlab_ci" = ps: with ps; [ python-gitlab ];
"gitter" = ps: with ps; [ ];
@ -272,7 +280,6 @@
"google_translate" = ps: with ps; [ gtts-token ];
"google_travel_time" = ps: with ps; [ ];
"google_wifi" = ps: with ps; [ ];
"googlehome" = ps: with ps; [ ];
"gpmdp" = ps: with ps; [ websocket_client ];
"gpsd" = ps: with ps; [ ];
"gpslogger" = ps: with ps; [ aiohttp-cors ];
@ -280,6 +287,7 @@
"greeneye_monitor" = ps: with ps; [ ];
"greenwave" = ps: with ps; [ ];
"group" = ps: with ps; [ ];
"growatt_server" = ps: with ps; [ ];
"gstreamer" = ps: with ps; [ ];
"gtfs" = ps: with ps; [ ];
"gtt" = ps: with ps; [ ];
@ -323,6 +331,7 @@
"hydroquebec" = ps: with ps; [ ];
"hyperion" = ps: with ps; [ ];
"ialarm" = ps: with ps; [ ];
"iaqualink" = ps: with ps; [ ];
"icloud" = ps: with ps; [ ];
"idteck_prox" = ps: with ps; [ ];
"ifttt" = ps: with ps; [ aiohttp-cors pyfttt ];
@ -357,6 +366,7 @@
"joaoapps_join" = ps: with ps; [ ];
"juicenet" = ps: with ps; [ ];
"kankun" = ps: with ps; [ ];
"keba" = ps: with ps; [ ];
"keenetic_ndms2" = ps: with ps; [ ];
"keyboard" = ps: with ps; [ ];
"keyboard_remote" = ps: with ps; [ evdev ];
@ -402,7 +412,7 @@
"london_underground" = ps: with ps; [ ];
"loopenergy" = ps: with ps; [ ];
"lovelace" = ps: with ps; [ ];
"luci" = ps: with ps; [ ];
"luci" = ps: with ps; [ packaging ];
"luftdaten" = ps: with ps; [ luftdaten ];
"lupusec" = ps: with ps; [ ];
"lutron" = ps: with ps; [ ];
@ -440,6 +450,7 @@
"mikrotik" = ps: with ps; [ ];
"mill" = ps: with ps; [ ];
"min_max" = ps: with ps; [ ];
"minio" = ps: with ps; [ minio ];
"mitemp_bt" = ps: with ps; [ ];
"mjpeg" = ps: with ps; [ ];
"mobile_app" = ps: with ps; [ pynacl aiohttp-cors ];
@ -497,9 +508,11 @@
"nuimo_controller" = ps: with ps; [ ];
"nuki" = ps: with ps; [ ];
"nut" = ps: with ps; [ ];
"nws" = ps: with ps; [ ];
"nx584" = ps: with ps; [ ];
"nzbget" = ps: with ps; [ ];
"oasa_telematics" = ps: with ps; [ ];
"obihai" = ps: with ps; [ ];
"octoprint" = ps: with ps; [ ];
"oem" = ps: with ps; [ ];
"ohmconnect" = ps: with ps; [ defusedxml ];
@ -546,6 +559,7 @@
"plaato" = ps: with ps; [ aiohttp-cors ];
"plant" = ps: with ps; [ ];
"plex" = ps: with ps; [ ];
"plugwise" = ps: with ps; [ ];
"plum_lightpad" = ps: with ps; [ ];
"pocketcasts" = ps: with ps; [ ];
"point" = ps: with ps; [ aiohttp-cors ];
@ -578,6 +592,7 @@
"radiotherm" = ps: with ps; [ ];
"rainbird" = ps: with ps; [ ];
"raincloud" = ps: with ps; [ ];
"rainforest_eagle" = ps: with ps; [ ];
"rainmachine" = ps: with ps; [ ];
"random" = ps: with ps; [ ];
"raspihats" = ps: with ps; [ ];
@ -597,7 +612,6 @@
"rfxtrx" = ps: with ps; [ ];
"ring" = ps: with ps; [ ha-ffmpeg ];
"ripple" = ps: with ps; [ ];
"ritassist" = ps: with ps; [ ];
"rmvtransport" = ps: with ps; [ ];
"rocketchat" = ps: with ps; [ ];
"roku" = ps: with ps; [ ];
@ -613,7 +627,6 @@
"rtorrent" = ps: with ps; [ ];
"russound_rio" = ps: with ps; [ ];
"russound_rnet" = ps: with ps; [ ];
"ruter" = ps: with ps; [ ];
"sabnzbd" = ps: with ps; [ ];
"samsungtv" = ps: with ps; [ wakeonlan ];
"satel_integra" = ps: with ps; [ ];
@ -647,6 +660,7 @@
"skybell" = ps: with ps; [ ];
"slack" = ps: with ps; [ ];
"sleepiq" = ps: with ps; [ ];
"slide" = ps: with ps; [ ];
"sma" = ps: with ps; [ ];
"smappee" = ps: with ps; [ ];
"smarthab" = ps: with ps; [ ];
@ -689,6 +703,7 @@
"stream" = ps: with ps; [ aiohttp-cors av ];
"streamlabswater" = ps: with ps; [ ];
"stride" = ps: with ps; [ ];
"suez_water" = ps: with ps; [ ];
"sun" = ps: with ps; [ ];
"supervisord" = ps: with ps; [ ];
"supla" = ps: with ps; [ ];
@ -724,7 +739,7 @@
"telnet" = ps: with ps; [ ];
"temper" = ps: with ps; [ ];
"template" = ps: with ps; [ ];
"tensorflow" = ps: with ps; [ numpy pillow protobuf ];
"tensorflow" = ps: with ps; [ numpy pillow protobuf tensorflow ];
"tesla" = ps: with ps; [ ];
"tfiac" = ps: with ps; [ ];
"thermoworks_smoke" = ps: with ps; [ stringcase ];
@ -748,7 +763,7 @@
"touchline" = ps: with ps; [ ];
"tplink" = ps: with ps; [ ];
"tplink_lte" = ps: with ps; [ ];
"traccar" = ps: with ps; [ stringcase ];
"traccar" = ps: with ps; [ aiohttp-cors stringcase ];
"trackr" = ps: with ps; [ ];
"tradfri" = ps: with ps; [ ];
"trafikverket_train" = ps: with ps; [ ];
@ -759,6 +774,7 @@
"trend" = ps: with ps; [ numpy ];
"tts" = ps: with ps; [ aiohttp-cors mutagen ];
"tuya" = ps: with ps; [ ];
"twentemilieu" = ps: with ps; [ ];
"twilio" = ps: with ps; [ aiohttp-cors twilio ];
"twilio_call" = ps: with ps; [ aiohttp-cors twilio ];
"twilio_sms" = ps: with ps; [ aiohttp-cors twilio ];
@ -771,7 +787,7 @@
"unifi" = ps: with ps; [ aiounifi ];
"unifi_direct" = ps: with ps; [ pexpect ];
"universal" = ps: with ps; [ ];
"upc_connect" = ps: with ps; [ defusedxml ];
"upc_connect" = ps: with ps; [ ];
"upcloud" = ps: with ps; [ ];
"updater" = ps: with ps; [ distro ];
"upnp" = ps: with ps; [ ];
@ -794,6 +810,8 @@
"version" = ps: with ps; [ ];
"vesync" = ps: with ps; [ ];
"viaggiatreno" = ps: with ps; [ ];
"vicare" = ps: with ps; [ ];
"vivotek" = ps: with ps; [ ];
"vizio" = ps: with ps; [ ];
"vlc" = ps: with ps; [ ];
"vlc_telnet" = ps: with ps; [ ];
@ -819,6 +837,7 @@
"whois" = ps: with ps; [ ];
"wink" = ps: with ps; [ ];
"wirelesstag" = ps: with ps; [ ];
"withings" = ps: with ps; [ aiohttp-cors ];
"workday" = ps: with ps; [ ];
"worldclock" = ps: with ps; [ ];
"worldtidesinfo" = ps: with ps; [ ];

View file

@ -98,7 +98,7 @@ let
extraBuildInputs = extraPackages py.pkgs;
# Don't forget to run parse-requirements.py after updating
hassVersion = "0.96.2";
hassVersion = "0.99.2";
in with py.pkgs; buildPythonApplication rec {
pname = "homeassistant";

View file

@ -33,7 +33,9 @@ PKG_SET = 'python3Packages'
# the following can be used to choose one of them
PKG_PREFERENCES = {
# Use python3Packages.youtube-dl-light instead of python3Packages.youtube-dl
'youtube-dl': 'youtube-dl-light'
'youtube-dl': 'youtube-dl-light',
'tensorflow-bin': 'tensorflow',
'tensorflowWithoutCuda': 'tensorflow'
}
def get_version():

View file

@ -0,0 +1,77 @@
{ stdenv, fetchFromGitHub, makeWrapper, perlPackages, txt2man
, monitoring-plugins
, wmic-bin ? null }:
stdenv.mkDerivation rec {
pname = "check-wmiplus";
version = "1.64";
# We fetch from github.com instead of the proper upstream as nix-build errors
# out with 406 when trying to fetch the sources
src = fetchFromGitHub {
owner = "speartail";
repo = "checkwmiplus";
rev = "v${version}";
sha256 = "1m36rd2wnc5dk4mm9q4ch67w19144dl112p9s6lhc1sh6h25ln6r";
};
patches = [
./wmiplus_fix_manpage.patch
];
propagatedBuildInputs = with perlPackages; [
BHooksEndOfScope ClassDataInheritable ClassInspector ClassSingleton
ConfigIniFiles DateTime DateTimeLocale DateTimeTimeZone DevelStackTrace
EvalClosure ExceptionClass FileShareDir ModuleImplementation ModuleRuntime
MROCompat namespaceautoclean namespaceclean NumberFormat PackageStash
ParamsValidate ParamsValidationCompiler RoleTiny Specio
SubExporterProgressive SubIdentify TryTiny
];
nativeBuildInputs = [ makeWrapper txt2man ];
dontConfigure = true;
dontBuild = true;
doCheck = false; # no checks
postPatch = ''
substituteInPlace check_wmi_plus.pl \
--replace /usr/bin/wmic ${wmic-bin}/bin/wmic \
--replace /etc/check_wmi_plus $out/etc/check_wmi_plus \
--replace /opt/nagios/bin/plugins $out/etc/check_wmi_plus \
--replace /usr/lib/nagios/plugins ${monitoring-plugins}/libexec \
--replace '$base_dir/check_wmi_plus_help.pl' "$out/bin/check_wmi_plus_help.pl"
for f in *.pl ; do
substituteInPlace $f --replace /usr/bin/perl ${perlPackages.perl}/bin/perl
done
'';
installPhase = ''
runHook preInstall
install -Dm755 -t $out/bin *.pl
install -Dm644 -t $out/share/doc/${pname} *.txt
cp -r etc $out/
runHook postInstall
'';
# 1. we need to wait until the main binary has been fixed up with proper perl paths before we can run it to generate the man page
# 2. txt2man returns exit code 3 even if it works, so we add the || true bit
postFixup = ''
wrapProgram $out/bin/check_wmi_plus.pl \
--set PERL5LIB "${perlPackages.makePerlPath propagatedBuildInputs}"
mkdir -p $out/share/man/man1
$out/bin/check_wmi_plus.pl --help | txt2man -d 1970-01-01 -s 1 -t check_wmi_plus -r "Check WMI Plus ${version}" > $out/share/man/man1/check_wmi_plus.1 || true
gzip $out/share/man/man1/check_wmi_plus.1
'';
meta = with stdenv.lib; {
description = "A sensu/nagios plugin using WMI to query Windows hosts";
homepage = "http://edcint.co.nz/checkwmiplus";
license = licenses.gpl2;
maintainers = with maintainers; [ peterhoeg ];
};
}

View file

@ -0,0 +1,40 @@
diff --git a/check_wmi_plus.makeman.sh b/check_wmi_plus.makeman.sh
index 38dc7a4..3fe4369 100755
--- a/check_wmi_plus.makeman.sh
+++ b/check_wmi_plus.makeman.sh
@@ -19,15 +19,6 @@ mkdir -p "$manpage_dir/man1"
# the full path to the manpage file
manfile="$manpage_dir/man1/check_wmi_plus.1"
-# if we are not running in a terminal then only show the text-based help
-if [ ! -t 0 ]; then
- # we are not running in a terminal
- echo "Not running in a terminal - showing text-based help"
- echo
- exec $check_wmi_plus_text_help
-fi
-
-
usage()
{
cat << EOT
diff --git a/check_wmi_plus_help.pl b/check_wmi_plus_help.pl
index 3440db2..2982da2 100755
--- a/check_wmi_plus_help.pl
+++ b/check_wmi_plus_help.pl
@@ -24,7 +24,7 @@ if ($opt_help) {
# we have the script to make the manpage and have not been asked to show text only help
exec ("$make_manpage_script \"$0 --itexthelp\" \"$manpage_dir\"") or print STDERR "couldn't exec $make_manpage_script: $!";
} else {
- print "Warning: Can not access/execute Manpage script ($make_manpage_script).\nShowing help in text-only format.\n\n";
+ # print "Warning: Can not access/execute Manpage script ($make_manpage_script).\nShowing help in text-only format.\n\n";
}
}
@@ -692,4 +692,4 @@ show_ini_help_overview(1);
finish_program($ERRORS{'UNKNOWN'});
}
-1;
\ No newline at end of file
+1;

View file

@ -66,5 +66,6 @@ stdenv.mkDerivation {
maintainers = with lib.maintainers; [ raskin matejc ];
platforms = lib.platforms.linux;
license = lib.licenses.bsd3;
broken = true; # does not support openssl 1.1
};
}

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, pkgconfig, geoipWithDatabase, ncurses, glib }:
{ stdenv, fetchurl, pkgconfig, ncurses, glib, libmaxminddb }:
stdenv.mkDerivation rec {
version = "1.3";
@ -10,13 +10,13 @@ stdenv.mkDerivation rec {
};
configureFlags = [
"--enable-geoip"
"--enable-geoip=mmdb"
"--enable-utf8"
];
nativeBuildInputs = [ pkgconfig ];
buildInputs = [
geoipWithDatabase
libmaxminddb
ncurses
glib
];

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "graylog";
version = "3.1.0";
version = "3.1.2";
src = fetchurl {
url = "https://packages.graylog2.org/releases/graylog/graylog-${version}.tgz";
sha256 = "0zv64cnd5nrn2hgbjmcwjam8dx5y2a7gz5x7xb9kr134132dm0yd";
sha256 = "14zr1aln34j5wifhg6ak3f83l959vic8i11jr90ibmnxl5v4hcqp";
};
dontBuild = true;

View file

@ -38,10 +38,10 @@ in {
auth_sso = glPlugin rec {
name = "graylog-auth-sso-${version}";
pluginName = "graylog-plugin-auth-sso";
version = "3.0.0";
version = "3.1.0";
src = fetchurl {
url = "https://github.com/Graylog2/${pluginName}/releases/download/${version}/${pluginName}-${version}.jar";
sha256 = "09y1s71mk8fm6lsghla7mrh9z5y230r8zpv84klhavh2dacs8gq5";
sha256 = "0hwgpq1j3qk0j1zgap5f1avh2nvkcscgds81x8xr0gamphgps8y2";
};
meta = {
homepage = https://github.com/Graylog2/graylog-plugin-auth-sso;

View file

@ -0,0 +1,25 @@
{ lib, pythonPackages, fetchFromGitHub }:
pythonPackages.buildPythonApplication rec {
pname = "py-wmi-client";
version = "unstable-20160601";
src = fetchFromGitHub {
owner = "dlundgren";
repo = pname;
rev = "9702b036df85c3e0ecdde84a753b353069f58208";
sha256 = "1kd12gi1knqv477f1shzqr0h349s5336vzp3fpfp3xl0b502ld8d";
};
propagatedBuildInputs = with pythonPackages; [ impacket natsort pyasn1 pycrypto ];
# no tests
doCheck = false;
meta = with lib; {
description = "Python WMI Client implementation";
homepage = "https://github.com/dlundgren/py-wmi-client";
license = licenses.mit;
maintainers = with maintainers; [ peterhoeg ];
};
}

View file

@ -1,7 +1,7 @@
{ stdenv, fetchFromGitHub, python3Packages, writeText, writeScript
{ stdenv, runtimeShell, fetchFromGitHub, python3, writeText, writeScript
, coreutils, sqlite }:
with python3Packages;
with python3.pkgs;
let
dbSql = writeText "create_pykms_db.sql" ''
@ -18,38 +18,45 @@ let
'';
dbScript = writeScript "create_pykms_db.sh" (with stdenv.lib; ''
#!${stdenv.shell} -eu
#!${runtimeShell}
set -eEuo pipefail
db=$1
${getBin coreutils}/bin/install -d $(dirname $db)
if [ ! -e $db ] ; then
${getBin sqlite}/bin/sqlite3 $db < ${dbSql}
fi
'');
in buildPythonApplication {
in buildPythonApplication rec {
pname = "pykms";
version = "20180208";
version = "20190611";
src = fetchFromGitHub {
owner = "ThunderEX";
owner = "SystemRage";
repo = "py-kms";
rev = "a1666a0ee5b404569a234afd05b164accc9a8845";
sha256 = "17yj5n8byxp09l5zkap73hpphjy35px84wy68ps824w8l0l8kcd4";
rev = "dead208b1593655377fe8bc0d74cc4bead617103";
sha256 = "065qpkfqrahsam1rb43vnasmzrangan5z1pr3p6s0sqjz5l2jydp";
};
propagatedBuildInputs = [ pytz ];
sourceRoot = "source/py-kms";
prePatch = ''
siteDir=$out/${python.sitePackages}
propagatedBuildInputs = [ systemd pytz tzlocal ];
substituteInPlace kmsBase.py \
postPatch = ''
siteDir=$out/${python3.sitePackages}
substituteInPlace pykms_DB2Dict.py \
--replace "'KmsDataBase.xml'" "'$siteDir/KmsDataBase.xml'"
# we are logging to journal
sed -i pykms_Misc.py \
-e '6ifrom systemd import journal' \
-e 's/log_obj.addHandler(log_handler)/log_obj.addHandler(journal.JournalHandler())/'
'';
dontBuild = true;
format = "other";
# there are no tests
doCheck = false;
@ -57,18 +64,19 @@ in buildPythonApplication {
installPhase = ''
runHook preInstall
mkdir -p $out/{bin,share/doc/pykms} $siteDir
mkdir -p $siteDir
mv * $siteDir
for b in client server ; do
makeWrapper ${python.interpreter} $out/bin/$b.py \
--argv0 $b \
--add-flags $siteDir/$b.py
for b in Client Server ; do
makeWrapper ${python.interpreter} $out/bin/''${b,,} \
--argv0 ''${b,,} \
--add-flags $siteDir/pykms_$b.py \
--prefix PYTHONPATH : "$(toPythonPath ${systemd})"
done
install -m755 ${dbScript} $out/bin/create_pykms_db.sh
install -Dm755 ${dbScript} $out/libexec/create_pykms_db.sh
mv $siteDir/README.md $out/share/doc/pykms/
install -Dm644 ../README.md -t $out/share/doc/pykms
${python.interpreter} -m compileall $siteDir
@ -77,7 +85,7 @@ in buildPythonApplication {
meta = with stdenv.lib; {
description = "Windows KMS (Key Management Service) server written in Python";
homepage = https://github.com/ThunderEX/py-kms;
homepage = "https://github.com/SystemRage/py-kms";
license = licenses.mit;
maintainers = with maintainers; [ peterhoeg ];
};

View file

@ -1,30 +1,37 @@
{ stdenv, lib, fetchurl, zlib, openssl, ncurses, libidn, pcre, libssh, mysql, postgresql
{ stdenv, lib, fetchFromGitHub, zlib, openssl, ncurses, libidn, pcre, libssh, mysql, postgresql
, withGUI ? false, makeWrapper, pkgconfig, gtk2 }:
let
makeDirs = output: subDir: pkgs: lib.concatStringsSep " " (map (path: lib.getOutput output path + "/" + subDir) pkgs);
in stdenv.mkDerivation rec {
stdenv.mkDerivation rec {
pname = "thc-hydra";
version = "8.5";
version = "9.0";
src = fetchurl {
url = "http://www.thc.org/releases/hydra-${version}.tar.gz";
sha256 = "0vfx6xwmw0r7nd0s232y7rckcj58fc1iqjgp4s56rakpz22b4yjm";
src = fetchFromGitHub {
owner = "vanhauser-thc";
repo = "thc-hydra";
rev = "v${version}";
sha256 = "09d2f55wky1iabnl871d4r6dyyvr8zhp47d9j1p6d0pvdv93kl4z";
};
preConfigure = ''
postPatch = let
makeDirs = output: subDir: lib.concatStringsSep " " (map (path: lib.getOutput output path + "/" + subDir) buildInputs);
in ''
substituteInPlace configure \
--replace "\$LIBDIRS" "${makeDirs "lib" "lib" buildInputs}" \
--replace "\$INCDIRS" "${makeDirs "dev" "include" buildInputs}" \
--replace '$LIBDIRS' "${makeDirs "lib" "lib"}" \
--replace '$INCDIRS' "${makeDirs "dev" "include"}" \
--replace "/usr/include/math.h" "${lib.getDev stdenv.cc.libc}/include/math.h" \
--replace "libcurses.so" "libncurses.so" \
--replace "-lcurses" "-lncurses"
'';
nativeBuildInputs = lib.optionals withGUI [ pkgconfig makeWrapper ];
buildInputs = [ zlib openssl ncurses libidn pcre libssh mysql.connector-c postgresql ]
++ lib.optional withGUI gtk2;
buildInputs = [
zlib openssl ncurses libidn pcre libssh mysql.connector-c postgresql
] ++ lib.optional withGUI gtk2;
enableParallelBuilding = true;
DATADIR = "/share/${pname}";
postInstall = lib.optionalString withGUI ''
wrapProgram $out/bin/xhydra \
@ -33,9 +40,9 @@ in stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "A very fast network logon cracker which support many different services";
homepage = "https://www.thc.org/thc-hydra/";
license = licenses.agpl3;
homepage = https://www.thc.org/thc-hydra/;
maintainers = with maintainers; [offline];
maintainers = with maintainers; [ offline ];
platforms = platforms.linux;
};
}

View file

@ -15187,6 +15187,8 @@ in
sensu-go-backend
sensu-go-cli;
check-wmiplus = callPackage ../servers/monitoring/plugins/wmiplus { };
uchiwa = callPackage ../servers/monitoring/uchiwa { };
shishi = callPackage ../servers/shishi {
@ -17811,7 +17813,7 @@ in
djvu2pdf = callPackage ../tools/typesetting/djvu2pdf { };
djview = callPackage ../applications/graphics/djview { };
djview = libsForQt5.callPackage ../applications/graphics/djview { };
djview4 = pkgs.djview;
dmenu = callPackage ../applications/misc/dmenu { };
@ -20925,7 +20927,9 @@ in
tribler = callPackage ../applications/networking/p2p/tribler { };
trojita = libsForQt5.callPackage ../applications/networking/mailreaders/trojita { };
trojita = libsForQt5.callPackage ../applications/networking/mailreaders/trojita {
inherit (kdeApplications) akonadi-contacts;
};
tudu = callPackage ../applications/office/tudu { };
@ -24236,6 +24240,8 @@ in
qMasterPassword = libsForQt5.callPackage ../applications/misc/qMasterPassword { };
py-wmi-client = callPackage ../tools/networking/py-wmi-client { };
redprl = callPackage ../applications/science/logic/redprl { };
retroarchBare = callPackage ../misc/emulators/retroarch {

View file

@ -12280,6 +12280,20 @@ let
doCheck = false; # Test performs network access.
};
MustacheSimple = buildPerlPackage {
pname = "Mustache-Simple";
version = "1.3.6";
src = fetchurl {
url = "mirror://cpan/authors/id/C/CM/CMS/Mustache-Simple-v1.3.6.tar.gz";
sha256 = "51db5d51ff4b25a670d8bfabe3902b6d45434ecf78b29bc1fff19af6e7383003";
};
propagatedBuildInputs = [ YAMLLibYAML ];
meta = {
description = "A simple Mustache Renderer";
license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
};
};
namespaceautoclean = buildPerlPackage {
pname = "namespace-autoclean";
version = "0.28";
@ -12665,6 +12679,21 @@ let
};
};
NetPrometheus = buildPerlModule {
pname = "Net-Prometheus";
version = "0.07";
src = fetchurl {
url = mirror://cpan/authors/id/P/PE/PEVANS/Net-Prometheus-0.07.tar.gz;
sha256 = "1dh498b26wdaip053hw52317jjmb2n2r5209a1zv5yfrlxpblqm7";
};
propagatedBuildInputs = [ RefUtil StructDumb ];
buildInputs = [ TestFatal ];
meta = {
description = "export monitoring metrics for F<prometheus>";
license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
};
};
NetSCP = buildPerlPackage {
pname = "Net-SCP";
version = "0.08.reprise";
@ -15736,6 +15765,20 @@ let
};
};
StructDumb = buildPerlModule {
pname = "Struct-Dumb";
version = "0.09";
src = fetchurl {
url = mirror://cpan/authors/id/P/PE/PEVANS/Struct-Dumb-0.09.tar.gz;
sha256 = "0g9rziaqxkm00vh30g1yfwzq3b1xl23p8fbm4rszqsp641wr2z9k";
};
buildInputs = [ TestFatal ];
meta = {
description = "make simple lightweight record-like structures";
license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
};
};
SubExporter = buildPerlPackage {
pname = "Sub-Exporter";
version = "0.987";

View file

@ -523,6 +523,10 @@ in {
dominate = callPackage ../development/python-modules/dominate { };
dotnetcore2 = callPackage ../development/python-modules/dotnetcore2 {
inherit (pkgs) substituteAll dotnet-sdk;
};
emcee = callPackage ../development/python-modules/emcee { };
emailthreads = callPackage ../development/python-modules/emailthreads { };
@ -1902,6 +1906,8 @@ in {
eth-utils = callPackage ../development/python-modules/eth-utils { };
impacket = callPackage ../development/python-modules/impacket { };
jsonrpc-async = callPackage ../development/python-modules/jsonrpc-async { };
jsonrpc-base = callPackage ../development/python-modules/jsonrpc-base { };