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"; github = "rickynils";
name = "Rickard Nilsson"; name = "Rickard Nilsson";
}; };
rileyinman = {
email = "rileyminman@gmail.com";
github = "rileyinman";
githubId = 37246692;
name = "Riley Inman";
};
ris = { ris = {
email = "code@humanleg.org.uk"; email = "code@humanleg.org.uk";
github = "risicle"; github = "risicle";

View File

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

View File

@ -485,6 +485,33 @@
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<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> <para>
The <option>networking.useDHCP</option> option is unsupported in combination with The <option>networking.useDHCP</option> option is unsupported in combination with
<option>networking.useNetworkd</option> in anticipation of defaulting to it by default. <option>networking.useNetworkd</option> in anticipation of defaulting to it by default.

View File

@ -66,6 +66,8 @@ with lib;
(mkRenamedOptionModule [ "services" "clamav" "updater" "config" ] [ "services" "clamav" "updater" "extraConfig" ]) (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" "setuidOwners" ] "Use security.wrappers instead")
(mkRemovedOptionModule [ "security" "setuidPrograms" ] "Use security.wrappers instead") (mkRemovedOptionModule [ "security" "setuidPrograms" ] "Use security.wrappers instead")

View File

@ -223,7 +223,15 @@ in {
statePath = mkOption { statePath = mkOption {
type = types.str; type = types.str;
default = "/var/gitlab/state"; 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 { backupPath = mkOption {

View File

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

View File

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

View File

@ -12,7 +12,7 @@ let
i.ipv4.addresses i.ipv4.addresses
++ optionals cfg.enableIPv6 i.ipv6.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 = slaves =
concatLists (map (bond: bond.interfaces) (attrValues cfg.bonds)) concatLists (map (bond: bond.interfaces) (attrValues cfg.bonds))

View File

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

View File

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

View File

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

View File

@ -1,8 +1,16 @@
{ stdenv, fetchurl, pkgconfig { stdenv
, djvulibre, qt4, xorg, libtiff , mkDerivation
, darwin }: , fetchurl
, pkgconfig
, djvulibre
, qtbase
, qttools
, xorg
, libtiff
, darwin
}:
stdenv.mkDerivation rec { mkDerivation rec {
pname = "djview"; pname = "djview";
version = "4.10.6"; version = "4.10.6";
@ -11,20 +19,56 @@ stdenv.mkDerivation rec {
sha256 = "08bwv8ppdzhryfcnifgzgdilb12jcnivl4ig6hd44f12d76z6il4"; sha256 = "08bwv8ppdzhryfcnifgzgdilb12jcnivl4ig6hd44f12d76z6il4";
}; };
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [
pkgconfig
qttools
];
buildInputs = [ djvulibre qt4 xorg.libXt libtiff ] buildInputs = [
++ stdenv.lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.AGL ]; 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 = { passthru = {
mozillaPlugin = "/lib/mozilla/plugins"; mozillaPlugin = "/lib/mozilla/plugins";
}; };
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = http://djvu.sourceforge.net/djview4.html; description = "A portable DjVu viewer (Qt5) and browser (nsdejavu) plugin";
description = "A portable DjVu viewer and browser plugin"; homepage = "http://djvu.sourceforge.net/djview4.html";
license = licenses.gpl2; license = licenses.gpl2;
platforms = platforms.unix; 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 { stdenv.mkDerivation rec {
pname = "dbeaver-ce"; pname = "dbeaver-ce";
version = "6.1.5"; version = "6.2.1";
desktopItem = makeDesktopItem { desktopItem = makeDesktopItem {
name = "dbeaver"; name = "dbeaver";
@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
src = fetchurl { src = fetchurl {
url = "https://dbeaver.io/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz"; url = "https://dbeaver.io/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz";
sha256 = "0lkycm1152wd56i1hjq7q3sd05h51fyz99qr2n65lwi33vz2qk9m"; sha256 = "1ix6isahpk7zk741wdx5cf4i13wc5gp0j1gj4ja80bzfswbc38na";
}; };
installPhase = '' 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 { stdenv.mkDerivation rec {
pname = "IPMIView"; pname = "IPMIView";
version = "2.14.0"; version = "2.16.0";
buildVersion = "180213"; buildVersion = "190815";
src = fetchurl { src = fetchurl {
url = "ftp://ftp.supermicro.com/utility/IPMIView/Linux/IPMIView_${version}_build.${buildVersion}_bundleJRE_Linux_x64.tar.gz"; url = "https://www.supermicro.com/wftp/utility/IPMIView/Linux/IPMIView_${version}_build.${buildVersion}_bundleJRE_Linux_x64.tar.gz";
sha256 = "1wp22wm7smlsb25x0cck4p660cycfczxj381930crd1qrf68mw4h"; sha256 = "0qw9zfnj0cyvab7ndamlw2y0gpczjhh1jkz8340kl42r2xmhkvpl";
}; };
nativeBuildInputs = [ patchelf makeWrapper ]; nativeBuildInputs = [ patchelf makeWrapper ];
buildPhase = with xorg;
buildPhase = with xorg; '' let
patchelf --set-rpath "${stdenv.lib.makeLibraryPath [ libX11 libXext libXrender libXtst libXi ]}" ./jre/lib/amd64/xawt/libmawt.so 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-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 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}
''; '';
desktopItem = makeDesktopItem rec {
name = "IPMIView";
exec = "IPMIView";
desktopName = name;
genericName = "Supermicro BMC manager";
categories = "Network;Configuration";
};
installPhase = '' installPhase = ''
mkdir -p $out/bin mkdir -p $out/bin
cp -R . $out/ cp -R . $out/
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 \ makeWrapper $out/jre/bin/java $out/bin/IPMIView \
--prefix PATH : "$out/jre/bin" \ --set LD_LIBRARY_PATH "${stdenv.lib.makeLibraryPath [ fontconfig ]}" \
--add-flags "-jar $out/IPMIView20.jar" --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; { meta = with stdenv.lib; {
license = licenses.unfree; 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"; vivaldiName = if isSnapshot then "vivaldi-snapshot" else "vivaldi";
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
pname = "vivaldi"; pname = "vivaldi";
version = "2.8.1664.35-1"; version = "2.8.1664.38-1";
src = fetchurl { src = fetchurl {
url = "https://downloads.vivaldi.com/${branch}/vivaldi-${branch}_${version}_amd64.deb"; url = "https://downloads.vivaldi.com/${branch}/vivaldi-${branch}_${version}_amd64.deb";
sha256 = "0wrpn2figljvq9xldpqb1wf81fpwj91ppi2lzvcg5ycpl2a90x7j"; sha256 = "1znhlwwgq4k0fplr4l8ixgn6g5k26ns77j2dm0pjg3a2jgjq6rdr";
}; };
unpackPhase = '' unpackPhase = ''

View File

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

View File

@ -44,7 +44,7 @@ python3.pkgs.buildPythonApplication rec {
]; ];
propagatedBuildInputs = with python3.pkgs; [ 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.optionals enableE2E [ pycrypto python-gnupg ]
++ lib.optional enableRST docutils ++ lib.optional enableRST docutils
++ lib.optionals enableOmemoPluginDependencies [ python-axolotl qrcode ] ++ lib.optionals enableOmemoPluginDependencies [ python-axolotl qrcode ]

View File

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

View File

@ -1,10 +1,23 @@
{ stdenv, fetchFromGitHub, SDL2, frei0r, gettext, mlt, jack1, mkDerivation { stdenv, fetchFromGitHub, fetchpatch, mkDerivation, SDL2, frei0r, gettext, mlt
, pkgconfig, qtbase, qtmultimedia, qtwebkit, qtx11extras, qtwebsockets , jack1, pkgconfig, qtbase, qtmultimedia, qtwebkit, qtx11extras, qtwebsockets
, qtquickcontrols, qtgraphicaleffects, libmlt, qmake, qttools }: , qtquickcontrols, qtgraphicaleffects, libmlt, qmake, qttools
}:
assert stdenv.lib.versionAtLeast libmlt.version "6.8.0"; assert stdenv.lib.versionAtLeast libmlt.version "6.8.0";
assert stdenv.lib.versionAtLeast mlt.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 { mkDerivation rec {
pname = "shotcut"; pname = "shotcut";
version = "19.09.14"; version = "19.09.14";
@ -16,6 +29,8 @@ mkDerivation rec {
sha256 = "1cl8ba1n0h450r4n5mfqmyjaxvczs3m19blwxslqskvmxy5my3cn"; sha256 = "1cl8ba1n0h450r4n5mfqmyjaxvczs3m19blwxslqskvmxy5my3cn";
}; };
patches = [ fixVaapiRendering1 fixVaapiRendering2 ];
enableParallelBuilding = true; enableParallelBuilding = true;
nativeBuildInputs = [ pkgconfig qmake ]; nativeBuildInputs = [ pkgconfig qmake ];
buildInputs = [ buildInputs = [
@ -33,8 +48,6 @@ mkDerivation rec {
sed 's_qApp->applicationDirPath(), "ffmpeg"_"${mlt.ffmpeg}/bin/ffmpeg"_' -i src/docks/encodedock.cpp sed 's_qApp->applicationDirPath(), "ffmpeg"_"${mlt.ffmpeg}/bin/ffmpeg"_' -i src/docks/encodedock.cpp
NICE=$(type -P nice) NICE=$(type -P nice)
sed "s_/usr/bin/nice_''${NICE}_" -i src/jobs/meltjob.cpp src/jobs/ffmpegjob.cpp 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 = [ qtWrapperArgs = [

View File

@ -92,6 +92,9 @@ in stdenv.mkDerivation {
}) })
++ [ ++ [
./qtx11extras.patch ./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 = '' postPatch = ''

View File

@ -12,9 +12,16 @@ let
# It's likely to work again in some future update. # It's likely to work again in some future update.
xserverABI = let abi = xserverVListFunc 0 + xserverVListFunc 1; xserverABI = let abi = xserverVListFunc 0 + xserverVListFunc 1;
in if abi == "119" || abi == "120" then "118" else abi; 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}"; name = "VirtualBox-GuestAdditions-${version}-${kernel.version}";
src = fetchurl { src = fetchurl {
@ -134,13 +141,13 @@ stdenv.mkDerivation {
# Stripping breaks these binaries for some reason. # Stripping breaks these binaries for some reason.
dontStrip = true; dontStrip = true;
# Some code dlopen() libdbus, patch RUNPATH in fixupPhase so it isn't stripped. # Patch RUNPATH according to dlopenLibs (see the comment there).
postFixup = '' postFixup = lib.concatMapStrings (library: ''
for i in $(grep -F libdbus-1.so -l -r $out/{lib,bin}); do for i in $(grep -F ${lib.escapeShellArg library.name} -l -r $out/{lib,bin}); do
origRpath=$(patchelf --print-rpath "$i") origRpath=$(patchelf --print-rpath "$i")
patchelf --set-rpath "$origRpath:${lib.makeLibraryPath [ dbus ]}" "$i" patchelf --set-rpath "$origRpath:${lib.makeLibraryPath [ library.pkg ]}" "$i"
done done
''; '') dlopenLibs;
meta = { meta = {
description = "Guest additions for VirtualBox"; 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
stdenv, lib, pkgs, , nodejs, nodePackages, remarshal, ttfautohint-nox, otfcc
fetchFromGitHub, fetchurl,
nodejs, ttfautohint-nox, otfcc,
# Custom font set options. # Custom font set options.
# See https://github.com/be5invis/Iosevka#build-your-own-style # See https://github.com/be5invis/Iosevka#build-your-own-style
design ? [], upright ? [], italic ? [], oblique ? [], # Ex:
family ? null, weights ? [], # privateBuildPlan = {
# Custom font set name. Required if any custom settings above. # family = "Iosevka Expanded";
set ? null, #
# design = [
# "sans"
# "expanded"
# ];
# };
, privateBuildPlan ? null
# Extra parameters. Can be used for ligature mapping. # Extra parameters. Can be used for ligature mapping.
extraParameters ? null , extraParameters ? null
# Custom font set name. Required if any custom settings above.
, set ? null
}: }:
assert (design != []) -> set != null; assert (privateBuildPlan != null) -> set != null;
assert (upright != []) -> set != null;
assert (italic != []) -> set != null;
assert (oblique != []) -> set != null;
assert (family != null) -> set != null;
assert (weights != []) -> set != null;
let stdenv.mkDerivation rec {
system = builtins.currentSystem; pname =
nodePackages = import ./node-packages.nix { inherit pkgs system nodejs; }; if set != null
in then "iosevka-${set}"
else "iosevka";
let pname = if set != null then "iosevka-${set}" else "iosevka"; in
let
version = "2.3.0"; version = "2.3.0";
name = "${pname}-${version}";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "be5invis"; owner = "be5invis";
repo = "Iosevka"; repo = "Iosevka";
rev = "v${version}"; rev = "v${version}";
sha256 = "1qnbxhx9wvij9zia226mc3sy8j7bfsw5v1cvxvsbbwjskwqdamvv"; sha256 = "1qnbxhx9wvij9zia226mc3sy8j7bfsw5v1cvxvsbbwjskwqdamvv";
}; };
in
with lib; nativeBuildInputs = [
let quote = str: "\"" + str + "\""; in nodejs
let toTomlList = list: "[" + (concatMapStringsSep ", " quote list) +"]"; in nodePackages."iosevka-build-deps-../../data/fonts/iosevka"
let unlines = concatStringsSep "\n"; in remarshal
otfcc
ttfautohint-nox
];
let privateBuildPlanJSON = builtins.toJSON { buildPlans.${pname} = privateBuildPlan; };
param = name: options: extraParametersJSON = builtins.toJSON { ${pname} = extraParameters; };
if options != [] then "${name}=${toTomlList options}" else null; passAsFile = [ "privateBuildPlanJSON" "extraParametersJSON" ];
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;
configurePhase = '' configurePhase = ''
mkdir -p node_modules/.bin runHook preConfigure
${installNodeModules} ${lib.optionalString (privateBuildPlan != null) ''
${optionalString (set != null) ''mv "$configPath" private-build-plans.toml''} remarshal -i "$privateBuildPlanJSONPath" -o private-build-plans.toml -if json -of toml
${optionalString (extraParameters != null) ''cat "$extraParametersPath" >> parameters.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 = '' buildPhase = ''
npm run build -- ttf::${pname} runHook preBuild
npm run build -- ttf::$pname
runHook postBuild
''; '';
installPhase = '' installPhase = ''
@ -89,14 +76,20 @@ stdenv.mkDerivation {
enableParallelBuilding = true; enableParallelBuilding = true;
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = https://be5invis.github.io/Iosevka/; homepage = https://be5invis.github.io/Iosevka;
downloadPage = "https://github.com/be5invis/Iosevka/releases"; downloadPage = https://github.com/be5invis/Iosevka/releases;
description = '' description = ''
Slender monospace sans-serif and slab-serif typeface inspired by Pragmata 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. Pro, M+ and PF DIN Mono, designed to be the ideal font for programming.
''; '';
license = licenses.ofl; license = licenses.ofl;
platforms = platforms.all; 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 cp -r ${buildAndroidndk}/libexec/android-sdk/ndk-bundle/sysroot/usr/include $out/include
chmod +w $out/include chmod +w $out/include
cp -r ${buildAndroidndk}/libexec/android-sdk/ndk-bundle/sysroot/usr/include/${targetInfo.triple}/* $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 }: { stdenv, fetchFromGitHub, coreutils, autoreconfHook, smlnj }:
let let
rev= "47273c463fc3c5d0a0ae655cf75a4700bdb020b4"; rev= "4528ccacdfd53d36f5959c005b27cd7ab6175b83";
in stdenv.mkDerivation { in stdenv.mkDerivation {
pname = "manticore"; pname = "manticore";
version = "2018.09.29"; version = "2019.09.20";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ManticoreProject"; owner = "ManticoreProject";
repo = "manticore"; repo = "manticore";
sha256 = "1prrgp7ldkdnrdbj224qqkirw8bj72460ix97c96fy264j9c97cn"; sha256 = "1xz7msiq5x2c56zjxydbxlj6r001mm5zszcda6f6v5qfmmd1bakz";
inherit rev; inherit rev;
}; };

View File

@ -37,7 +37,7 @@ let self = stdenv.mkDerivation rec {
"--build=${stdenv.buildPlatform.config}" "--build=${stdenv.buildPlatform.config}"
] ++ optional (cxx && stdenv.isDarwin) "CPPFLAGS=-fexceptions" ] ++ optional (cxx && stdenv.isDarwin) "CPPFLAGS=-fexceptions"
++ optional (stdenv.isDarwin && stdenv.is64bit) "ABI=64" ++ 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; 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 , qtLib ? null
# Darwin support # Darwin support
, Cocoa, CoreServices, DiskArbitration, IOKit, CFNetwork, Security, GLUT, OpenGL , Cocoa, CoreServices, DiskArbitration, IOKit, CFNetwork, Security, GLUT, OpenGL
@ -20,7 +20,9 @@ stdenv.mkDerivation rec {
sha256 = "0nm7xwwj7rnsxjdv2ssviys8nhci4n9iiiqm2y14s520hl2dsp1d"; sha256 = "0nm7xwwj7rnsxjdv2ssviys8nhci4n9iiiqm2y14s520hl2dsp1d";
}; };
buildInputs = [ cmake ] nativeBuildInputs = [ cmake ];
buildInputs = [ libtiff ]
++ optional (qtLib != null) qtLib ++ optional (qtLib != null) qtLib
++ optionals stdenv.isLinux [ libGLU_combined libX11 xorgproto libXt ] ++ optionals stdenv.isLinux [ libGLU_combined libX11 xorgproto libXt ]
++ optionals stdenv.isDarwin [ xpc Cocoa CoreServices DiskArbitration IOKit ++ optionals stdenv.isDarwin [ xpc Cocoa CoreServices DiskArbitration IOKit
@ -38,7 +40,7 @@ stdenv.mkDerivation rec {
# built and requiring one of the shared objects. # built and requiring one of the shared objects.
# At least, we use -fPIC for other packages to be able to use this in shared # At least, we use -fPIC for other packages to be able to use this in shared
# objects. # 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 (qtLib != null) [ "-DVTK_USE_QT:BOOL=ON" ]
++ optional stdenv.isDarwin "-DOPENGL_INCLUDE_DIR=${OpenGL}/Library/Frameworks"; ++ optional stdenv.isDarwin "-DOPENGL_INCLUDE_DIR=${OpenGL}/Library/Frameworks";

View File

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

File diff suppressed because it is too large Load Diff

View File

@ -39,6 +39,9 @@ buildPythonPackage rec {
pytest pytest
''; '';
# 368 failed, 10889 passed, 978 skipped, 69 xfailed in 196.24s
doCheck = false;
meta = { meta = {
description = "Astronomy/Astrophysics library for Python"; description = "Astronomy/Astrophysics library for Python";
homepage = https://www.astropy.org; 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 { lib, buildPythonPackage, fetchFromGitHub
, buildPythonPackage
, fetchgit
, isPy3k , isPy3k
, simplejson , simplejson
, unittest2 , unittest2
@ -13,8 +11,9 @@ buildPythonPackage {
version = "7.20.0"; version = "7.20.0";
disabled = isPy3k; disabled = isPy3k;
src = fetchgit { src = fetchFromGitHub {
url = "https://github.com/Lispython/pycurl.git"; owner = "Lispython";
repo = "pycurl";
rev = "0f00109950b883d680bd85dc6e8a9c731a7d0d13"; rev = "0f00109950b883d680bd85dc6e8a9c731a7d0d13";
sha256 = "1qmw3cm93kxj94s71a8db9lwv2cxmr2wjv7kp1r8zildwdzhaw7j"; sha256 = "1qmw3cm93kxj94s71a8db9lwv2cxmr2wjv7kp1r8zildwdzhaw7j";
}; };
@ -22,9 +21,10 @@ buildPythonPackage {
# error: (6, "Couldn't resolve host 'h.wrttn.me'") # error: (6, "Couldn't resolve host 'h.wrttn.me'")
doCheck = false; 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; homepage = https://pypi.python.org/pypi/pycurl2;
description = "A fork from original PycURL library that no maintained from 7.19.0"; description = "A fork from original PycURL library that no maintained from 7.19.0";
license = licenses.mit; license = licenses.mit;

View File

@ -1,35 +1,33 @@
{ stdenv, fetchFromGitHub, ocamlPackages }: { lib, fetchFromGitHub, ocamlPackages }:
with ocamlPackages; buildDunePackage rec { with ocamlPackages; buildDunePackage rec {
pname = "ocamlformat"; pname = "ocamlformat";
version = "0.8"; version = "0.11.0";
minimumOCamlVersion = "4.05"; minimumOCamlVersion = "4.06";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ocaml-ppx"; owner = "ocaml-ppx";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "1i7rsbs00p43362yv7z7dw0qsnv7vjf630qk676qvfg7kg422w6j"; sha256 = "0zvjn71jd4d3znnpgh0yphb2w8ggs457b6bl6cg1fmpdgxnds6yx";
}; };
buildInputs = [ buildInputs = [
base
cmdliner cmdliner
fpath fpath
ocaml-migrate-parsetree ocaml-migrate-parsetree
odoc
re
stdio stdio
uuseg
uutf
]; ];
configurePhase = ''
patchShebangs tools/gen_version.sh
tools/gen_version.sh src/Version.ml version
'';
meta = { meta = {
inherit (src.meta) homepage; inherit (src.meta) homepage;
description = "Auto-formatter for OCaml code"; description = "Auto-formatter for OCaml code";
maintainers = [ stdenv.lib.maintainers.Zimmi48 ]; maintainers = [ lib.maintainers.Zimmi48 ];
license = stdenv.lib.licenses.mit; 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 , SDL, SDL_mixer, libGLU_combined, physfs
}: }:
@ -8,7 +8,7 @@ let
sha256 = "05mz77vml396mff43dbs50524rlm4fyds6widypagfbh5hc55qdc"; sha256 = "05mz77vml396mff43dbs50524rlm4fyds6widypagfbh5hc55qdc";
}; };
in stdenv.mkDerivation rec { in gcc6Stdenv.mkDerivation rec {
pname = "dxx-rebirth"; pname = "dxx-rebirth";
version = "0.59.100"; version = "0.59.100";
@ -44,9 +44,9 @@ in stdenv.mkDerivation rec {
install -Dm644 -t $out/share/doc/dxx-rebirth *.txt 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"; 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; license = licenses.free;
maintainers = with maintainers; [ peterhoeg ]; maintainers = with maintainers; [ peterhoeg ];
platforms = with platforms; linux; platforms = with platforms; linux;

View File

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

View File

@ -1,7 +1,10 @@
{ stdenv, lib, python, kernel, makeWrapper, writeText }: { stdenv, lib, python, kernel, makeWrapper, writeText
, gawk, iproute }:
let let
daemons = stdenv.mkDerivation { libexec = "libexec/hypervkvpd";
daemons = stdenv.mkDerivation rec {
pname = "hyperv-daemons-bin"; pname = "hyperv-daemons-bin";
inherit (kernel) src version; inherit (kernel) src version;
@ -10,10 +13,15 @@ let
# as of 4.9 compilation will fail due to -Werror=format-security # as of 4.9 compilation will fail due to -Werror=format-security
hardeningDisable = [ "format" ]; hardeningDisable = [ "format" ];
preConfigure = '' postPatch = ''
cd tools/hv 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 = '' installPhase = ''
runHook preInstall runHook preInstall
@ -21,7 +29,9 @@ let
install -Dm755 hv_''${f}_daemon -t $out/bin install -Dm755 hv_''${f}_daemon -t $out/bin
done 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 # I don't know why this isn't being handled automatically by fixupPhase
substituteInPlace $out/bin/lsvmbus \ substituteInPlace $out/bin/lsvmbus \
@ -31,8 +41,8 @@ let
''; '';
postFixup = '' postFixup = ''
# kvp needs to be able to find the script(s) wrapProgram $out/bin/hv_kvp_daemon \
wrapProgram $out/bin/hv_kvp_daemon --prefix PATH : $out/bin --prefix PATH : $out/bin:${lib.makeBinPath [ gawk iproute ]}
''; '';
}; };
@ -56,24 +66,19 @@ let
in stdenv.mkDerivation { in stdenv.mkDerivation {
pname = "hyperv-daemons"; pname = "hyperv-daemons";
inherit (kernel) version; inherit (kernel) version;
# we just stick the bins into out as well as it requires "out" # we just stick the bins into out as well as it requires "out"
outputs = [ "bin" "lib" "out" ]; outputs = [ "bin" "lib" "out" ];
phases = [ "installPhase" ];
buildInputs = [ daemons ]; buildInputs = [ daemons ];
installPhase = '' buildCommand = ''
system=$lib/lib/systemd/system system=$lib/lib/systemd/system
mkdir -p $system 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
cp ${service "fcopy" "file copy (FCOPY)" "hv_fcopy" } $system/hv-fcopy.service install -Dm444 ${service "vss" "volume shadow copy (VSS)" "" } $system/hv-vss.service
cp ${service "kvp" "key-value pair (KVP)" "" } $system/hv-kvp.service
cp ${service "vss" "volume shadow copy (VSS)" "" } $system/hv-vss.service
cat > $system/hyperv-daemons.target <<EOF cat > $system/hyperv-daemons.target <<EOF
[Unit] [Unit]
@ -102,7 +107,7 @@ in stdenv.mkDerivation {
Microsoft calls their guest agents "Integration Services" which is why Microsoft calls their guest agents "Integration Services" which is why
we use that name here. we use that name here.
''; '';
homepage = https://kernel.org; homepage = "https://kernel.org";
maintainers = with maintainers; [ peterhoeg ]; maintainers = with maintainers; [ peterhoeg ];
platforms = kernel.meta.platforms; 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"; assert kernel != null -> stdenv.lib.versionAtLeast kernel.version "4.0";
@ -7,7 +7,7 @@ let
in stdenv.mkDerivation { in stdenv.mkDerivation {
pname = "ply"; pname = "ply";
inherit version; inherit version;
nativeBuildInputs = [ autoreconfHook flex yacc p7zip ]; nativeBuildInputs = [ autoreconfHook flex yacc p7zip rsync ];
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "iovisor"; 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. # Note: ATM only the libraries have been tested in nixpkgs.
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "knot-dns"; pname = "knot-dns";
version = "2.8.3"; version = "2.8.4";
src = fetchurl { src = fetchurl {
url = "https://secure.nic.cz/files/knot-dns/knot-${version}.tar.xz"; url = "https://secure.nic.cz/files/knot-dns/knot-${version}.tar.xz";
sha256 = "8a62d81e5cf3df938f469b60ed4e46d9161007c2b89fbf7ae07525fa68368bad"; sha256 = "541e7e43503765c91405c5797b3838103bb656154712e69b3f959c6ab0e700a9";
}; };
outputs = [ "bin" "out" "dev" ]; outputs = [ "bin" "out" "dev" ];

View File

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

View File

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

View File

@ -33,7 +33,9 @@ PKG_SET = 'python3Packages'
# the following can be used to choose one of them # the following can be used to choose one of them
PKG_PREFERENCES = { PKG_PREFERENCES = {
# Use python3Packages.youtube-dl-light instead of python3Packages.youtube-dl # 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(): 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 ]; maintainers = with lib.maintainers; [ raskin matejc ];
platforms = lib.platforms.linux; platforms = lib.platforms.linux;
license = lib.licenses.bsd3; 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 { stdenv.mkDerivation rec {
version = "1.3"; version = "1.3";
@ -10,13 +10,13 @@ stdenv.mkDerivation rec {
}; };
configureFlags = [ configureFlags = [
"--enable-geoip" "--enable-geoip=mmdb"
"--enable-utf8" "--enable-utf8"
]; ];
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];
buildInputs = [ buildInputs = [
geoipWithDatabase libmaxminddb
ncurses ncurses
glib glib
]; ];

View File

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

View File

@ -38,10 +38,10 @@ in {
auth_sso = glPlugin rec { auth_sso = glPlugin rec {
name = "graylog-auth-sso-${version}"; name = "graylog-auth-sso-${version}";
pluginName = "graylog-plugin-auth-sso"; pluginName = "graylog-plugin-auth-sso";
version = "3.0.0"; version = "3.1.0";
src = fetchurl { src = fetchurl {
url = "https://github.com/Graylog2/${pluginName}/releases/download/${version}/${pluginName}-${version}.jar"; url = "https://github.com/Graylog2/${pluginName}/releases/download/${version}/${pluginName}-${version}.jar";
sha256 = "09y1s71mk8fm6lsghla7mrh9z5y230r8zpv84klhavh2dacs8gq5"; sha256 = "0hwgpq1j3qk0j1zgap5f1avh2nvkcscgds81x8xr0gamphgps8y2";
}; };
meta = { meta = {
homepage = https://github.com/Graylog2/graylog-plugin-auth-sso; 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 }: , coreutils, sqlite }:
with python3Packages; with python3.pkgs;
let let
dbSql = writeText "create_pykms_db.sql" '' dbSql = writeText "create_pykms_db.sql" ''
@ -18,38 +18,45 @@ let
''; '';
dbScript = writeScript "create_pykms_db.sh" (with stdenv.lib; '' dbScript = writeScript "create_pykms_db.sh" (with stdenv.lib; ''
#!${stdenv.shell} -eu #!${runtimeShell}
set -eEuo pipefail
db=$1 db=$1
${getBin coreutils}/bin/install -d $(dirname $db)
if [ ! -e $db ] ; then if [ ! -e $db ] ; then
${getBin sqlite}/bin/sqlite3 $db < ${dbSql} ${getBin sqlite}/bin/sqlite3 $db < ${dbSql}
fi fi
''); '');
in buildPythonApplication { in buildPythonApplication rec {
pname = "pykms"; pname = "pykms";
version = "20180208"; version = "20190611";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ThunderEX"; owner = "SystemRage";
repo = "py-kms"; repo = "py-kms";
rev = "a1666a0ee5b404569a234afd05b164accc9a8845"; rev = "dead208b1593655377fe8bc0d74cc4bead617103";
sha256 = "17yj5n8byxp09l5zkap73hpphjy35px84wy68ps824w8l0l8kcd4"; sha256 = "065qpkfqrahsam1rb43vnasmzrangan5z1pr3p6s0sqjz5l2jydp";
}; };
propagatedBuildInputs = [ pytz ]; sourceRoot = "source/py-kms";
prePatch = '' propagatedBuildInputs = [ systemd pytz tzlocal ];
siteDir=$out/${python.sitePackages}
substituteInPlace kmsBase.py \ postPatch = ''
siteDir=$out/${python3.sitePackages}
substituteInPlace pykms_DB2Dict.py \
--replace "'KmsDataBase.xml'" "'$siteDir/KmsDataBase.xml'" --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 # there are no tests
doCheck = false; doCheck = false;
@ -57,18 +64,19 @@ in buildPythonApplication {
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
mkdir -p $out/{bin,share/doc/pykms} $siteDir mkdir -p $siteDir
mv * $siteDir mv * $siteDir
for b in client server ; do for b in Client Server ; do
makeWrapper ${python.interpreter} $out/bin/$b.py \ makeWrapper ${python.interpreter} $out/bin/''${b,,} \
--argv0 $b \ --argv0 ''${b,,} \
--add-flags $siteDir/$b.py --add-flags $siteDir/pykms_$b.py \
--prefix PYTHONPATH : "$(toPythonPath ${systemd})"
done 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 ${python.interpreter} -m compileall $siteDir
@ -77,7 +85,7 @@ in buildPythonApplication {
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Windows KMS (Key Management Service) server written in Python"; 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; license = licenses.mit;
maintainers = with maintainers; [ peterhoeg ]; 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 }: , withGUI ? false, makeWrapper, pkgconfig, gtk2 }:
let stdenv.mkDerivation rec {
makeDirs = output: subDir: pkgs: lib.concatStringsSep " " (map (path: lib.getOutput output path + "/" + subDir) pkgs);
in stdenv.mkDerivation rec {
pname = "thc-hydra"; pname = "thc-hydra";
version = "8.5"; version = "9.0";
src = fetchurl { src = fetchFromGitHub {
url = "http://www.thc.org/releases/hydra-${version}.tar.gz"; owner = "vanhauser-thc";
sha256 = "0vfx6xwmw0r7nd0s232y7rckcj58fc1iqjgp4s56rakpz22b4yjm"; 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 \ substituteInPlace configure \
--replace "\$LIBDIRS" "${makeDirs "lib" "lib" buildInputs}" \ --replace '$LIBDIRS' "${makeDirs "lib" "lib"}" \
--replace "\$INCDIRS" "${makeDirs "dev" "include" buildInputs}" \ --replace '$INCDIRS' "${makeDirs "dev" "include"}" \
--replace "/usr/include/math.h" "${lib.getDev stdenv.cc.libc}/include/math.h" \ --replace "/usr/include/math.h" "${lib.getDev stdenv.cc.libc}/include/math.h" \
--replace "libcurses.so" "libncurses.so" \ --replace "libcurses.so" "libncurses.so" \
--replace "-lcurses" "-lncurses" --replace "-lcurses" "-lncurses"
''; '';
nativeBuildInputs = lib.optionals withGUI [ pkgconfig makeWrapper ]; 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 '' postInstall = lib.optionalString withGUI ''
wrapProgram $out/bin/xhydra \ wrapProgram $out/bin/xhydra \
@ -33,8 +40,8 @@ in stdenv.mkDerivation rec {
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "A very fast network logon cracker which support many different services"; description = "A very fast network logon cracker which support many different services";
homepage = "https://www.thc.org/thc-hydra/";
license = licenses.agpl3; license = licenses.agpl3;
homepage = https://www.thc.org/thc-hydra/;
maintainers = with maintainers; [ offline ]; maintainers = with maintainers; [ offline ];
platforms = platforms.linux; platforms = platforms.linux;
}; };

View File

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

View File

@ -12280,6 +12280,20 @@ let
doCheck = false; # Test performs network access. 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 { namespaceautoclean = buildPerlPackage {
pname = "namespace-autoclean"; pname = "namespace-autoclean";
version = "0.28"; 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 { NetSCP = buildPerlPackage {
pname = "Net-SCP"; pname = "Net-SCP";
version = "0.08.reprise"; 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 { SubExporter = buildPerlPackage {
pname = "Sub-Exporter"; pname = "Sub-Exporter";
version = "0.987"; version = "0.987";

View File

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