Merge master into staging-next

This commit is contained in:
Frederik Rietdijk 2019-10-21 09:55:24 +02:00
commit b6ba25ce95
56 changed files with 608 additions and 359 deletions

View File

@ -1432,6 +1432,16 @@
} }
]; ];
}; };
dadada = {
name = "dadada";
email = "dadada@dadada.li";
github = "dadada";
githubId = 7216772;
keys = [{
longkeyid = "ed25519/0xEEB8D1CE62C4DFEA";
fingerprint = "D68C 8469 5C08 7E0F 733A 28D0 EEB8 D1CE 62C4 DFEA";
}];
};
dalance = { dalance = {
email = "dalance@gmail.com"; email = "dalance@gmail.com";
github = "dalance"; github = "dalance";

View File

@ -190,6 +190,13 @@
</listitem> </listitem>
</itemizedlist> </itemizedlist>
</listitem> </listitem>
<listitem>
<para>
<xref linkend="opt-services.blueman.enable"/> has been added.
If you previously had blueman installed via <option>environment.systemPackages</option> please
migrate to using the NixOS module, as this would result in an insufficiently configured blueman.
</para>
</listitem>
</itemizedlist> </itemizedlist>
</section> </section>
@ -563,6 +570,27 @@
earlier version of NixOS. earlier version of NixOS.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Due to the short lifetime of non-LTS kernel releases package attributes like <literal>linux_5_1</literal>,
<literal>linux_5_2</literal> and <literal>linux_5_3</literal> have been removed to discourage dependence
on specific non-LTS kernel versions in stable NixOS releases.
Going forward, versioned attributes like <literal>linux_4_9</literal> will exist for LTS versions only.
Please use <literal>linux_latest</literal> or <literal>linux_testing</literal> if you depend on non-LTS
releases. Keep in mind that <literal>linux_latest</literal> and <literal>linux_testing</literal> will
change versions under the hood during the lifetime of a stable release and might include breaking changes.
</para>
</listitem>
<listitem>
<para>
Because of the systemd upgrade,
some network interfaces might change their name. For details see
<link xlink:href="https://www.freedesktop.org/software/systemd/man/systemd.net-naming-scheme.html#History">
upstream docs</link> or <link xlink:href="https://github.com/NixOS/nixpkgs/issues/71086">
our ticket</link>.
</para>
</listitem>
</itemizedlist> </itemizedlist>
</section> </section>

View File

@ -85,7 +85,19 @@
<itemizedlist> <itemizedlist>
<listitem> <listitem>
<para /> <para>
The <literal>dynamicHosts</literal> option has been removed from the
<link linkend="opt-networking.networkmanager.enable">networkd</link>
module. Allowing (multiple) regular users to override host entries
affecting the whole system opens up a huge attack vector.
There seem to be very rare cases where this might be useful.
Consider setting system-wide host entries using
<link linkend="opt-networking.hosts">networking.hosts</link>, provide
them via the DNS server in your network, or use
<link linkend="opt-environment.etc">environment.etc</link>
to add a file into <literal>/etc/NetworkManager/dnsmasq.d</literal>
reconfiguring <literal>hostsdir</literal>.
</para>
</listitem> </listitem>
</itemizedlist> </itemizedlist>
</section> </section>

View File

@ -33,6 +33,9 @@ with lib;
pkgs.system-config-printer pkgs.system-config-printer
]; ];
# for $out/bin/install-printer-driver
services.packagekit.enable = true;
}; };
} }

View File

@ -17,9 +17,6 @@ let
networkmanager-vpnc networkmanager-vpnc
] ++ optional (!delegateWireless && !enableIwd) wpa_supplicant; ] ++ optional (!delegateWireless && !enableIwd) wpa_supplicant;
dynamicHostsEnabled =
cfg.dynamicHosts.enable && cfg.dynamicHosts.hostsDirs != {};
delegateWireless = config.networking.wireless.enable == true && cfg.unmanaged != []; delegateWireless = config.networking.wireless.enable == true && cfg.unmanaged != [];
enableIwd = cfg.wifi.backend == "iwd"; enableIwd = cfg.wifi.backend == "iwd";
@ -335,55 +332,20 @@ in {
so you don't need to to that yourself. so you don't need to to that yourself.
''; '';
}; };
dynamicHosts = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Enabling this option requires the
<option>networking.networkmanager.dns</option> option to be
set to <literal>dnsmasq</literal>. If enabled, the directories
defined by the
<option>networking.networkmanager.dynamicHosts.hostsDirs</option>
option will be set up when the service starts. The dnsmasq instance
managed by NetworkManager will then watch those directories for
hosts files (see the <literal>--hostsdir</literal> option of
dnsmasq). This way a non-privileged user can add or override DNS
entries on the local system (depending on what hosts directories
that are configured)..
'';
};
hostsDirs = mkOption {
type = with types; attrsOf (submodule {
options = {
user = mkOption {
type = types.str;
default = "root";
description = ''
The user that will own the hosts directory.
'';
};
group = mkOption {
type = types.str;
default = "root";
description = ''
The group that will own the hosts directory.
'';
};
};
});
default = {};
description = ''
Defines a set of directories (relative to
<literal>/run/NetworkManager/hostdirs</literal>) that dnsmasq will
watch for hosts files.
'';
};
};
}; };
}; };
imports = [
(mkRemovedOptionModule ["networking" "networkmanager" "dynamicHosts"] ''
This option was removed because allowing (multiple) regular users to
override host entries affecting the whole system opens up a huge attack
vector. There seem to be very rare cases where this might be useful.
Consider setting system-wide host entries using networking.hosts, provide
them via the DNS server in your network, or use environment.etc
to add a file into /etc/NetworkManager/dnsmasq.d reconfiguring hostsdir.
'')
];
###### implementation ###### implementation
@ -396,12 +358,6 @@ in {
Except if you mark some interfaces as <literal>unmanaged</literal> by NetworkManager. Except if you mark some interfaces as <literal>unmanaged</literal> by NetworkManager.
''; '';
} }
{ assertion = !dynamicHostsEnabled || (dynamicHostsEnabled && cfg.dns == "dnsmasq");
message = ''
To use networking.networkmanager.dynamicHosts you also need to set
`networking.networkmanager.dns = "dnsmasq"`
'';
}
]; ];
environment.etc = with pkgs; [ environment.etc = with pkgs; [
@ -435,12 +391,6 @@ in {
target = "NetworkManager/dispatcher.d/${dispatcherTypesSubdirMap.${s.type}}03userscript${lib.fixedWidthNumber 4 i}"; target = "NetworkManager/dispatcher.d/${dispatcherTypesSubdirMap.${s.type}}03userscript${lib.fixedWidthNumber 4 i}";
mode = "0544"; mode = "0544";
}) cfg.dispatcherScripts }) cfg.dispatcherScripts
++ optional dynamicHostsEnabled
{ target = "NetworkManager/dnsmasq.d/dyndns.conf";
text = concatMapStrings (n: ''
hostsdir=/run/NetworkManager/hostsdirs/${n}
'') (attrNames cfg.dynamicHosts.hostsDirs);
}
++ optional cfg.enableStrongSwan ++ optional cfg.enableStrongSwan
{ source = "${pkgs.networkmanager_strongswan}/lib/NetworkManager/VPN/nm-strongswan-service.name"; { source = "${pkgs.networkmanager_strongswan}/lib/NetworkManager/VPN/nm-strongswan-service.name";
target = "NetworkManager/VPN/nm-strongswan-service.name"; target = "NetworkManager/VPN/nm-strongswan-service.name";
@ -496,21 +446,6 @@ in {
systemd.services.ModemManager.aliases = [ "dbus-org.freedesktop.ModemManager1.service" ]; systemd.services.ModemManager.aliases = [ "dbus-org.freedesktop.ModemManager1.service" ];
systemd.services.nm-setup-hostsdirs = mkIf dynamicHostsEnabled {
wantedBy = [ "NetworkManager.service" ];
before = [ "NetworkManager.service" ];
partOf = [ "NetworkManager.service" ];
script = concatStrings (mapAttrsToList (n: d: ''
mkdir -p "/run/NetworkManager/hostsdirs/${n}"
chown "${d.user}:${d.group}" "/run/NetworkManager/hostsdirs/${n}"
chmod 0775 "/run/NetworkManager/hostsdirs/${n}"
'') cfg.dynamicHosts.hostsDirs);
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
};
};
systemd.services.NetworkManager-dispatcher = { systemd.services.NetworkManager-dispatcher = {
wantedBy = [ "network.target" ]; wantedBy = [ "network.target" ];
restartTriggers = [ configFile ]; restartTriggers = [ configFile ];

View File

@ -31,70 +31,8 @@ let
extraForeignModules = filter isAttrs extraModules; extraForeignModules = filter isAttrs extraModules;
extraApacheModules = filter isString extraModules; extraApacheModules = filter isString extraModules;
makeServerInfo = cfg: {
# Canonical name must not include a trailing slash.
canonicalNames =
let defaultPort = (head (defaultListen cfg)).port; in
map (port:
(if cfg.enableSSL then "https" else "http") + "://" +
cfg.hostName +
(if port != defaultPort then ":${toString port}" else "")
) (map (x: x.port) (getListen cfg));
# Admin address: inherit from the main server if not specified for
# a virtual host.
adminAddr = if cfg.adminAddr != null then cfg.adminAddr else mainCfg.adminAddr;
vhostConfig = cfg;
serverConfig = mainCfg;
fullConfig = config; # machine config
};
allHosts = [mainCfg] ++ mainCfg.virtualHosts; allHosts = [mainCfg] ++ mainCfg.virtualHosts;
callSubservices = serverInfo: defs:
let f = svc:
let
svcFunction =
if svc ? function then svc.function
# instead of using serviceType="mediawiki"; you can copy mediawiki.nix to any location outside nixpkgs, modify it at will, and use serviceExpression=./mediawiki.nix;
else if svc ? serviceExpression then import (toString svc.serviceExpression)
else import (toString "${toString ./.}/${if svc ? serviceType then svc.serviceType else svc.serviceName}.nix");
config = (evalModules
{ modules = [ { options = res.options; config = svc.config or svc; } ];
check = false;
}).config;
defaults = {
extraConfig = "";
extraModules = [];
extraModulesPre = [];
extraPath = [];
extraServerPath = [];
globalEnvVars = [];
robotsEntries = "";
startupScript = "";
enablePHP = false;
enablePerl = false;
phpOptions = "";
options = {};
documentRoot = null;
};
res = defaults // svcFunction { inherit config lib pkgs serverInfo php; };
in res;
in map f defs;
# !!! callSubservices is expensive
subservicesFor = cfg: callSubservices (makeServerInfo cfg) cfg.extraSubservices;
mainSubservices = subservicesFor mainCfg;
allSubservices = mainSubservices ++ concatMap subservicesFor mainCfg.virtualHosts;
enableSSL = any (vhost: vhost.enableSSL) allHosts; enableSSL = any (vhost: vhost.enableSSL) allHosts;
@ -188,13 +126,18 @@ let
perServerConf = isMainServer: cfg: let perServerConf = isMainServer: cfg: let
serverInfo = makeServerInfo cfg; # Canonical name must not include a trailing slash.
canonicalNames =
subservices = callSubservices serverInfo cfg.extraSubservices; let defaultPort = (head (defaultListen cfg)).port; in
map (port:
(if cfg.enableSSL then "https" else "http") + "://" +
cfg.hostName +
(if port != defaultPort then ":${toString port}" else "")
) (map (x: x.port) (getListen cfg));
maybeDocumentRoot = fold (svc: acc: maybeDocumentRoot = fold (svc: acc:
if acc == null then svc.documentRoot else assert svc.documentRoot == null; acc if acc == null then svc.documentRoot else assert svc.documentRoot == null; acc
) null ([ cfg ] ++ subservices); ) null ([ cfg ]);
documentRoot = if maybeDocumentRoot != null then maybeDocumentRoot else documentRoot = if maybeDocumentRoot != null then maybeDocumentRoot else
pkgs.runCommand "empty" { preferLocalBuild = true; } "mkdir -p $out"; pkgs.runCommand "empty" { preferLocalBuild = true; } "mkdir -p $out";
@ -209,15 +152,11 @@ let
</Directory> </Directory>
''; '';
robotsTxt = # If this is a vhost, the include the entries for the main server as well.
concatStringsSep "\n" (filter (x: x != "") ( robotsTxt = concatStringsSep "\n" (filter (x: x != "") ([ cfg.robotsEntries ] ++ lib.optional (!isMainServer) mainCfg.robotsEntries));
# If this is a vhost, the include the entries for the main server as well.
(if isMainServer then [] else [mainCfg.robotsEntries] ++ map (svc: svc.robotsEntries) mainSubservices)
++ [cfg.robotsEntries]
++ (map (svc: svc.robotsEntries) subservices)));
in '' in ''
${concatStringsSep "\n" (map (n: "ServerName ${n}") serverInfo.canonicalNames)} ${concatStringsSep "\n" (map (n: "ServerName ${n}") canonicalNames)}
${concatMapStrings (alias: "ServerAlias ${alias}\n") cfg.serverAliases} ${concatMapStrings (alias: "ServerAlias ${alias}\n") cfg.serverAliases}
@ -292,8 +231,6 @@ let
in concatMapStrings makeDirConf cfg.servedDirs in concatMapStrings makeDirConf cfg.servedDirs
} }
${concatMapStrings (svc: svc.extraConfig) subservices}
${cfg.extraConfig} ${cfg.extraConfig}
''; '';
@ -328,13 +265,10 @@ let
${let ${let
load = {name, path}: "LoadModule ${name}_module ${path}\n"; load = {name, path}: "LoadModule ${name}_module ${path}\n";
allModules = allModules = map (name: {inherit name; path = "${httpd}/modules/mod_${name}.so";}) apacheModules
concatMap (svc: svc.extraModulesPre) allSubservices
++ map (name: {inherit name; path = "${httpd}/modules/mod_${name}.so";}) apacheModules
++ optional mainCfg.enableMellon { name = "auth_mellon"; path = "${pkgs.apacheHttpdPackages.mod_auth_mellon}/modules/mod_auth_mellon.so"; } ++ optional mainCfg.enableMellon { name = "auth_mellon"; path = "${pkgs.apacheHttpdPackages.mod_auth_mellon}/modules/mod_auth_mellon.so"; }
++ optional enablePHP { name = "php${phpMajorVersion}"; path = "${php}/modules/libphp${phpMajorVersion}.so"; } ++ optional mainCfg.enablePHP { name = "php${phpMajorVersion}"; path = "${php}/modules/libphp${phpMajorVersion}.so"; }
++ optional enablePerl { name = "perl"; path = "${mod_perl}/modules/mod_perl.so"; } ++ optional mainCfg.enablePerl { name = "perl"; path = "${mod_perl}/modules/mod_perl.so"; }
++ concatMap (svc: svc.extraModules) allSubservices
++ extraForeignModules; ++ extraForeignModules;
in concatMapStrings load (unique allModules) in concatMapStrings load (unique allModules)
} }
@ -385,17 +319,10 @@ let
} }
''; '';
enablePHP = mainCfg.enablePHP || any (svc: svc.enablePHP) allSubservices;
enablePerl = mainCfg.enablePerl || any (svc: svc.enablePerl) allSubservices;
# Generate the PHP configuration file. Should probably be factored # Generate the PHP configuration file. Should probably be factored
# out into a separate module. # out into a separate module.
phpIni = pkgs.runCommand "php.ini" phpIni = pkgs.runCommand "php.ini"
{ options = concatStringsSep "\n" { options = mainCfg.phpOptions;
([ mainCfg.phpOptions ] ++ (map (svc: svc.phpOptions) allSubservices));
preferLocalBuild = true; preferLocalBuild = true;
} }
'' ''
@ -408,6 +335,10 @@ in
{ {
imports = [
(mkRemovedOptionModule [ "services" "httpd" "extraSubservices" ] "Most existing subservices have been ported to the NixOS module system. Please update your configuration accordingly.")
];
###### interface ###### interface
options = { options = {
@ -637,8 +568,6 @@ in
message = "SSL is enabled for httpd, but sslServerCert and/or sslServerKey haven't been specified."; } message = "SSL is enabled for httpd, but sslServerCert and/or sslServerKey haven't been specified."; }
]; ];
warnings = map (cfg: "apache-httpd's extraSubservices option is deprecated. Most existing subservices have been ported to the NixOS module system. Please update your configuration accordingly.") (lib.filter (cfg: cfg.extraSubservices != []) allHosts);
users.users = optionalAttrs (mainCfg.user == "wwwrun") (singleton users.users = optionalAttrs (mainCfg.user == "wwwrun") (singleton
{ name = "wwwrun"; { name = "wwwrun";
group = mainCfg.group; group = mainCfg.group;
@ -651,7 +580,7 @@ in
gid = config.ids.gids.wwwrun; gid = config.ids.gids.wwwrun;
}); });
environment.systemPackages = [httpd] ++ concatMap (svc: svc.extraPath) allSubservices; environment.systemPackages = [httpd];
services.httpd.phpOptions = services.httpd.phpOptions =
'' ''
@ -674,13 +603,11 @@ in
path = path =
[ httpd pkgs.coreutils pkgs.gnugrep ] [ httpd pkgs.coreutils pkgs.gnugrep ]
++ optional enablePHP pkgs.system-sendmail # Needed for PHP's mail() function. ++ optional mainCfg.enablePHP pkgs.system-sendmail; # Needed for PHP's mail() function.
++ concatMap (svc: svc.extraServerPath) allSubservices;
environment = environment =
optionalAttrs enablePHP { PHPRC = phpIni; } optionalAttrs mainCfg.enablePHP { PHPRC = phpIni; }
// optionalAttrs mainCfg.enableMellon { LD_LIBRARY_PATH = "${pkgs.xmlsec}/lib"; } // optionalAttrs mainCfg.enableMellon { LD_LIBRARY_PATH = "${pkgs.xmlsec}/lib"; };
// (listToAttrs (concatMap (svc: svc.globalEnvVars) allSubservices));
preStart = preStart =
'' ''
@ -698,12 +625,6 @@ in
for i in $(${pkgs.utillinux}/bin/ipcs -s | grep ' ${mainCfg.user} ' | cut -f2 -d ' '); do for i in $(${pkgs.utillinux}/bin/ipcs -s | grep ' ${mainCfg.user} ' | cut -f2 -d ' '); do
${pkgs.utillinux}/bin/ipcrm -s $i ${pkgs.utillinux}/bin/ipcrm -s $i
done done
# Run the startup hooks for the subservices.
for i in ${toString (map (svn: svn.startupScript) allSubservices)}; do
echo Running Apache startup hook $i...
$i
done
''; '';
serviceConfig.ExecStart = "@${httpd}/bin/httpd httpd -f ${httpdConf}"; serviceConfig.ExecStart = "@${httpd}/bin/httpd httpd -f ${httpdConf}";

View File

@ -133,12 +133,6 @@ with lib;
''; '';
}; };
extraSubservices = mkOption {
type = types.listOf types.unspecified;
default = [];
description = "Extra subservices to enable in the webserver.";
};
enableUserDir = mkOption { enableUserDir = mkOption {
type = types.bool; type = types.bool;
default = false; default = false;

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.2.1"; version = "2.2.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "metabrainz"; owner = "metabrainz";
repo = pname; repo = pname;
rev = "release-${version}"; rev = "release-${version}";
sha256 = "1g7pbicf65hswbqmhrwlba9jm4r2vnggy7vy75z4256y7qcpwdfd"; sha256 = "1iibkvwpj862wcrl0fmyi6qhcgx4q5ay63yr0zyg0bkqgcka0gpr";
}; };
nativeBuildInputs = [ gettext qt5.wrapQtAppsHook qt5.qtbase ]; nativeBuildInputs = [ gettext qt5.wrapQtAppsHook qt5.qtbase ];

View File

@ -7,13 +7,13 @@ with stdenv.lib;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "bitcoin" + (toString (optional (!withGui) "d")) + "-abc-" + version; name = "bitcoin" + (toString (optional (!withGui) "d")) + "-abc-" + version;
version = "0.20.2"; version = "0.20.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "bitcoin-ABC"; owner = "bitcoin-ABC";
repo = "bitcoin-abc"; repo = "bitcoin-abc";
rev = "v${version}"; rev = "v${version}";
sha256 = "1hii6wjz6095jpy5kw7z6i3fn2jf1dvsppf162xx2c08n9vmz3s3"; sha256 = "1m0k685czpywmkzhzfa09jc0hvmh7rk5rywwlq2chxz50pzm2m3a";
}; };
patches = [ ./fix-bitcoin-qt-build.patch ]; patches = [ ./fix-bitcoin-qt-build.patch ];

View File

@ -85,6 +85,15 @@ env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate --show-trace ../../../../ -A emacsPac
stripDebugList = [ "share" ]; stripDebugList = [ "share" ];
}); });
# https://github.com/syl20bnr/evil-escape/pull/86
evil-escape = super.evil-escape.overrideAttrs (attrs: {
postPatch = ''
substituteInPlace evil-escape.el \
--replace ' ;;; evil' ';;; evil'
'';
packageRequires = with self; [ evil ];
});
evil-magit = super.evil-magit.overrideAttrs (attrs: { evil-magit = super.evil-magit.overrideAttrs (attrs: {
# searches for Git at build time # searches for Git at build time
nativeBuildInputs = nativeBuildInputs =

View File

@ -43,7 +43,7 @@ let
description = "Tool for building, changing, and versioning infrastructure"; description = "Tool for building, changing, and versioning infrastructure";
homepage = https://www.terraform.io/; homepage = https://www.terraform.io/;
license = licenses.mpl20; license = licenses.mpl20;
maintainers = with maintainers; [ zimbatm peterhoeg kalbasit ]; maintainers = with maintainers; [ zimbatm peterhoeg kalbasit marsam ];
}; };
} // attrs'); } // attrs');
@ -97,8 +97,8 @@ in rec {
terraform_0_11-full = terraform_0_11.full; terraform_0_11-full = terraform_0_11.full;
terraform_0_12 = pluggable (generic { terraform_0_12 = pluggable (generic {
version = "0.12.10"; version = "0.12.12";
sha256 = "0bmqcmzjsrpvvnd9pn40f774c8jy6j810qz0njxqh60yh27f5rhx"; sha256 = "04qvzbm33ngkbkh45jbcv06c9s1lkgjk39sxvfxw7y6ygxzsrqq5";
patches = [ ./provider-path.patch ]; patches = [ ./provider-path.patch ];
passthru = { inherit plugins; }; passthru = { inherit plugins; };
}); });

View File

@ -0,0 +1,19 @@
*** suricata-5.0.0/ebpf/Makefile.in 2019-10-16 22:39:13.174649416 +0200
--- suricata-5.0.0/ebpf/Makefile.in.fixed 2019-10-16 22:38:41.822201802 +0200
***************
*** 527,533 ****
@BUILD_EBPF_TRUE@$(BPF_TARGETS): %.bpf: %.c
# From C-code to LLVM-IR format suffix .ll (clang -S -emit-llvm)
@BUILD_EBPF_TRUE@ ${CLANG} -Wall $(BPF_CFLAGS) -O2 \
! @BUILD_EBPF_TRUE@ -I/usr/include/$(build_cpu)-$(build_os)/ \
@BUILD_EBPF_TRUE@ -D__KERNEL__ -D__ASM_SYSREG_H \
@BUILD_EBPF_TRUE@ -target bpf -S -emit-llvm $< -o ${@:.bpf=.ll}
# From LLVM-IR to BPF-bytecode in ELF-obj file
--- 527,533 ----
@BUILD_EBPF_TRUE@$(BPF_TARGETS): %.bpf: %.c
# From C-code to LLVM-IR format suffix .ll (clang -S -emit-llvm)
@BUILD_EBPF_TRUE@ ${CLANG} -Wall $(BPF_CFLAGS) -O2 \
! @BUILD_EBPF_TRUE@ -idirafter ../bpf_stubs_workaround \
@BUILD_EBPF_TRUE@ -D__KERNEL__ -D__ASM_SYSREG_H \
@BUILD_EBPF_TRUE@ -target bpf -S -emit-llvm $< -o ${@:.bpf=.ll}
# From LLVM-IR to BPF-bytecode in ELF-obj file

View File

@ -1,14 +1,18 @@
{ stdenv { stdenv
, lib , lib
, fetchurl , fetchurl
, clang
, llvm
, pkgconfig , pkgconfig
, makeWrapper , makeWrapper
, file , file
, geoip
, hyperscan , hyperscan
, jansson , jansson
, libbpf
, libcap_ng , libcap_ng
, libelf
, libevent , libevent
, libmaxminddb
, libnet , libnet
, libnetfilter_log , libnetfilter_log
, libnetfilter_queue , libnetfilter_queue
@ -30,24 +34,30 @@
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "suricata"; pname = "suricata";
version = "4.1.5"; version = "5.0.0";
src = fetchurl { src = fetchurl {
url = "https://www.openinfosecfoundation.org/download/${pname}-${version}.tar.gz"; url = "https://www.openinfosecfoundation.org/download/${pname}-${version}.tar.gz";
sha256 = "0jy738rs3ds1gbn8hv26ck23z9k6pjrjxdpavkyn7znpbi9zdrff"; sha256 = "0qwav4qpvx3i5khkyvdvx42n8b9mza8c4cpxvrf7m4lnf51cqgba";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
clang
llvm
makeWrapper makeWrapper
pkgconfig pkgconfig
]; ]
++ lib.optionals rustSupport [ rustc cargo ]
;
buildInputs = [ buildInputs = [
geoip
jansson jansson
libbpf
libcap_ng libcap_ng
libelf
libevent libevent
libmagic libmagic
libmaxminddb
libnet libnet
libnetfilter_log libnetfilter_log
libnetfilter_queue libnetfilter_queue
@ -62,17 +72,29 @@ stdenv.mkDerivation rec {
python python
zlib zlib
] ]
++ lib.optional hyperscanSupport [ hyperscan ] ++ lib.optional hyperscanSupport hyperscan
++ lib.optional redisSupport [ redis hiredis ] ++ lib.optionals redisSupport [ redis hiredis ]
++ lib.optional rustSupport [ rustc cargo ]
; ;
enableParallelBuilding = true; enableParallelBuilding = true;
patches = lib.optional stdenv.is64bit ./bpf_stubs_workaround.patch;
postPatch = ''
substituteInPlace ./configure \
--replace "/usr/bin/file" "${file}/bin/file"
substituteInPlace ./libhtp/configure \
--replace "/usr/bin/file" "${file}/bin/file"
mkdir -p bpf_stubs_workaround/gnu
touch bpf_stubs_workaround/gnu/stubs-32.h
'';
configureFlags = [ configureFlags = [
"--disable-gccmarch-native" "--disable-gccmarch-native"
"--enable-afl"
"--enable-af-packet" "--enable-af-packet"
"--enable-ebpf"
"--enable-ebpf-build"
"--enable-gccprotect" "--enable-gccprotect"
"--enable-geoip" "--enable-geoip"
"--enable-luajit" "--enable-luajit"
@ -97,6 +119,13 @@ stdenv.mkDerivation rec {
"--enable-rust-experimental" "--enable-rust-experimental"
]; ];
postConfigure = ''
# Avoid unintended clousure growth.
sed -i 's|/nix/store/\(.\{8\}\)[^-]*-|/nix/store/\1...-|g' ./src/build-info.h
'';
hardeningDisable = [ "stackprotector" ];
installFlags = [ installFlags = [
"e_localstatedir=\${TMPDIR}" "e_localstatedir=\${TMPDIR}"
"e_logdir=\${TMPDIR}" "e_logdir=\${TMPDIR}"
@ -115,6 +144,8 @@ stdenv.mkDerivation rec {
postInstall = '' postInstall = ''
wrapProgram "$out/bin/suricatasc" \ wrapProgram "$out/bin/suricatasc" \
--prefix PYTHONPATH : $PYTHONPATH:$(toPythonPath "$out") --prefix PYTHONPATH : $PYTHONPATH:$(toPythonPath "$out")
substituteInPlace "$out/etc/suricata/suricata.yaml" \
--replace "/etc/suricata" "$out/etc/suricata"
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -2,11 +2,11 @@
python3.pkgs.buildPythonApplication rec { python3.pkgs.buildPythonApplication rec {
pname = "mlarchive2maildir"; pname = "mlarchive2maildir";
version = "0.0.6"; version = "0.0.8";
src = python3.pkgs.fetchPypi { src = python3.pkgs.fetchPypi {
inherit pname version; inherit pname version;
sha256 = "025mv890zsk25cral9cas3qgqdsszh5025khz473zs36innjd0mw"; sha256 = "1din3yay2sas85178v0xr0hbm2396y4dalkcqql1ny9vdm94h6sp";
}; };
nativeBuildInputs = with python3.pkgs; [ setuptools_scm ]; nativeBuildInputs = with python3.pkgs; [ setuptools_scm ];

View File

@ -1,6 +1,7 @@
{ stdenv, fetchurl, makeWrapper, makeDesktopItem { stdenv, fetchurl, makeWrapper, makeDesktopItem
, atk, cairo, gdk-pixbuf, glib, gnome2, gtk2, libGLU_combined, pango, xorg , atk, cairo, gdk-pixbuf, glib, gnome2, gtk2, libGLU_combined, pango, xorg
, lsb-release, freetype, fontconfig, pangox_compat, polkit, polkit_gnome }: , lsb-release, freetype, fontconfig, pangox_compat, polkit, polkit_gnome
, pulseaudio }:
let let
sha256 = { sha256 = {
@ -37,7 +38,7 @@ in stdenv.mkDerivation rec {
buildInputs = [ buildInputs = [
atk cairo gdk-pixbuf glib gtk2 stdenv.cc.cc pango atk cairo gdk-pixbuf glib gtk2 stdenv.cc.cc pango
gnome2.gtkglext libGLU_combined freetype fontconfig gnome2.gtkglext libGLU_combined freetype fontconfig
pangox_compat polkit polkit_gnome pangox_compat polkit polkit_gnome pulseaudio
] ++ (with xorg; [ ] ++ (with xorg; [
libxcb libX11 libXdamage libXext libXfixes libXi libXmu libxcb libX11 libXdamage libXext libXfixes libXi libXmu
libXrandr libXtst libXt libICE libSM libXrender libXrandr libXtst libXt libICE libSM libXrender

View File

@ -2,13 +2,13 @@
buildGoPackage rec { buildGoPackage rec {
pname = "rclone"; pname = "rclone";
version = "1.49.4"; version = "1.49.5";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = pname; owner = pname;
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "04fa85ch85dxm2nq7vqria34zn6fbgvky7p1i59j1wib753jpxyp"; sha256 = "0firfb2300grfp5fnqaifhp346m4d0x8r1xshs9d8r6jxb160n03";
}; };
goPackagePath = "github.com/rclone/rclone"; goPackagePath = "github.com/rclone/rclone";

View File

@ -1,22 +1,22 @@
{stdenv, fetchurl, unzip, makeDesktopItem, nwjs, wrapGAppsHook, gsettings-desktop-schemas, gtk3 }: {stdenv, fetchurl, unzip, makeDesktopItem, nwjs, wrapGAppsHook, gsettings-desktop-schemas, gtk3 }:
let let
strippedName = "betaflight-configurator"; pname = "betaflight-configurator";
desktopItem = makeDesktopItem { desktopItem = makeDesktopItem {
name = strippedName; name = pname;
exec = strippedName; exec = pname;
icon = "${strippedName}-icon.png"; icon = pname;
comment = "Betaflight configuration tool"; comment = "Betaflight configuration tool";
desktopName = "Betaflight Configurator"; desktopName = "Betaflight Configurator";
genericName = "Flight controller configuration tool"; genericName = "Flight controller configuration tool";
}; };
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "${strippedName}-${version}"; inherit pname;
version = "10.5.1"; version = "10.6.0";
src = fetchurl { src = fetchurl {
url = "https://github.com/betaflight/betaflight-configurator/releases/download/${version}/${strippedName}_${version}_linux64.zip"; url = "https://github.com/betaflight/${pname}/releases/download/${version}/${pname}_${version}_linux64.zip";
sha256 = "1l4blqgaqfrnydk05q6pwdqdhcly2f8nwzrv0749cqmfiinh8ygc"; sha256 = "09hayzhwangh8b81r038p320vbg0xxlyzrdp9pcmfyxp6s00xslw";
}; };
nativeBuildInputs = [ wrapGAppsHook ]; nativeBuildInputs = [ wrapGAppsHook ];
@ -25,14 +25,13 @@ stdenv.mkDerivation rec {
installPhase = '' installPhase = ''
mkdir -p $out/bin \ mkdir -p $out/bin \
$out/opt/${strippedName} \ $out/opt/${pname}
$out/share/icons
cp -r . $out/opt/${strippedName}/ cp -r . $out/opt/${pname}/
cp icon/*_icon_128.png $out/share/icons/${strippedName}-icon.png install -m 444 -D icon/bf_icon_128.png $out/share/icons/hicolor/128x128/apps/${pname}.png
cp -r ${desktopItem}/share/applications $out/share/ cp -r ${desktopItem}/share/applications $out/share/
makeWrapper ${nwjs}/bin/nw $out/bin/${strippedName} --add-flags $out/opt/${strippedName} makeWrapper ${nwjs}/bin/nw $out/bin/${pname} --add-flags $out/opt/${pname}
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -1,17 +1,17 @@
{ stdenv, fetchgit, git, SDL2, udev, doxygen { lib, mkDerivation, fetchgit, SDL2
, qtbase, qtlocation, qtserialport, qtdeclarative, qtconnectivity, qtxmlpatterns , qtbase, qtcharts, qtlocation, qtserialport, qtsvg, qtquickcontrols2
, qtsvg, qtquick1, qtquickcontrols, qtgraphicaleffects, qmake, qtspeech , qtgraphicaleffects, qtspeech, qmake
, makeWrapper , makeWrapper
, gst_all_1, pkgconfig , gst_all_1, pkgconfig
}: }:
stdenv.mkDerivation rec { mkDerivation rec {
pname = "qgroundcontrol"; pname = "qgroundcontrol";
version = "3.3.0"; version = "3.5.5";
qtInputs = [ qtInputs = [
qtbase qtlocation qtserialport qtdeclarative qtconnectivity qtxmlpatterns qtsvg qtbase qtcharts qtlocation qtserialport qtsvg qtquickcontrols2
qtquick1 qtquickcontrols qtgraphicaleffects qtspeech qtgraphicaleffects qtspeech
]; ];
gstInputs = with gst_all_1; [ gstInputs = with gst_all_1; [
@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
]; ];
enableParallelBuilding = true; enableParallelBuilding = true;
buildInputs = [ SDL2 udev doxygen git ] ++ gstInputs ++ qtInputs; buildInputs = [ SDL2 ] ++ gstInputs ++ qtInputs;
nativeBuildInputs = [ pkgconfig makeWrapper qmake ]; nativeBuildInputs = [ pkgconfig makeWrapper qmake ];
preConfigure = '' preConfigure = ''
@ -58,17 +58,16 @@ stdenv.mkDerivation rec {
# TODO: package mavlink so we can build from a normal source tarball # TODO: package mavlink so we can build from a normal source tarball
src = fetchgit { src = fetchgit {
url = "https://github.com/mavlink/qgroundcontrol.git"; url = "https://github.com/mavlink/qgroundcontrol.git";
rev = "refs/tags/v${version}"; rev = "v${version}";
sha256 = "0abjm0wywp24qlgg9w8g35ijprjg5csq4fgba9caaiwvmpfbhmpw"; sha256 = "05zy6w9lwwh254wa8c6wysa67kk0flywcvipii9b1rmy47slflhs";
fetchSubmodules = true; fetchSubmodules = true;
}; };
meta = with stdenv.lib; { meta = with lib; {
description = "Provides full ground station support and configuration for the PX4 and APM Flight Stacks"; description = "Provides full ground station support and configuration for the PX4 and APM Flight Stacks";
homepage = http://qgroundcontrol.org/; homepage = "http://qgroundcontrol.org/";
license = licenses.gpl3Plus; license = licenses.gpl3Plus;
platforms = platforms.linux; platforms = platforms.linux;
maintainers = with maintainers; [ pxc ]; maintainers = with maintainers; [ pxc ];
broken = true;
}; };
} }

View File

@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
version = "4.1.1"; version = "4.1.1";
src = fetchurl { src = fetchurl {
url = "https://www.rs.tus.ac.jp/yyusa/ricty/ricty_generator-${version}.sh"; url = "http://www.yusa.lab.uec.ac.jp/~yusa/ricty/ricty_generator-${version}.sh";
sha256 = "03fngb8f5hl7ifigdm5yljhs4z2x80cq8y8kna86d07ghknhzgw6"; sha256 = "03fngb8f5hl7ifigdm5yljhs4z2x80cq8y8kna86d07ghknhzgw6";
}; };
@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "A high-quality Japanese font based on Inconsolata and Migu 1M"; description = "A high-quality Japanese font based on Inconsolata and Migu 1M";
homepage = https://www.rs.tus.ac.jp/yyusa/ricty.html; homepage = http://www.yusa.lab.uec.ac.jp/~yusa/ricty.html;
license = licenses.unfree; license = licenses.unfree;
maintainers = [ maintainers.mikoim ]; maintainers = [ maintainers.mikoim ];
}; };

View File

@ -2,13 +2,13 @@
mkDerivation rec { mkDerivation rec {
pname = "lxqt-globalkeys"; pname = "lxqt-globalkeys";
version = "0.14.1"; version = "0.14.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "lxqt"; owner = "lxqt";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "0q7hfbs4dhsgyzch2msq2hsfzzfgbc611ki9x1x132n7zqk76pmp"; sha256 = "1ij9abjnqbnkcb7qqk3x7y4amr6l7kkmwhdpc0x2qk4yikn5ijdg";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
@ -27,7 +27,7 @@ mkDerivation rec {
]; ];
meta = with lib; { meta = with lib; {
description = "Daemon used to register global keyboard shortcuts"; description = "LXQt service for global keyboard shortcuts registration";
homepage = https://github.com/lxqt/lxqt-globalkeys; homepage = https://github.com/lxqt/lxqt-globalkeys;
license = licenses.lgpl21; license = licenses.lgpl21;
platforms = with platforms; unix; platforms = with platforms; unix;

View File

@ -3,13 +3,13 @@
mkDerivation rec { mkDerivation rec {
pname = "qps"; pname = "qps";
version = "1.10.20"; version = "2.0.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "lxqt"; owner = "lxqt";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "1g8j4cjy5x33jzjkx6vwyl5qbf9i2z2w01ipgk7nrik5drf9crbf"; sha256 = "03rl59yk3b24j0y0k8dpdpb3yi4f1l642zn5pp5br3s2vwx1vzkg";
}; };
nativeBuildInputs = [ cmake lxqt-build-tools ]; nativeBuildInputs = [ cmake lxqt-build-tools ];
@ -17,10 +17,10 @@ mkDerivation rec {
buildInputs = [ qtbase qtx11extras qttools ]; buildInputs = [ qtbase qtx11extras qttools ];
meta = with lib; { meta = with lib; {
description = "The Qt process manager"; description = "Qt based process manager";
homepage = https://github.com/lxqt/qps; homepage = https://github.com/lxqt/qps;
license = licenses.gpl2; license = licenses.gpl2;
platforms = with platforms; linux; # does not build on darwin
maintainers = with maintainers; [ romildo ]; maintainers = with maintainers; [ romildo ];
platforms = with platforms; unix;
}; };
} }

View File

@ -2,8 +2,8 @@
, python, libconfig, lit, gdb, unzip, darwin, bash , python, libconfig, lit, gdb, unzip, darwin, bash
, callPackage, makeWrapper, targetPackages , callPackage, makeWrapper, targetPackages
, bootstrapVersion ? false , bootstrapVersion ? false
, version ? "1.16.0" , version ? "1.17.0"
, ldcSha256 ? "00kk6pijn1ay2kkrp6b5ismawxr10azwij89k1rkszavqq6rsva2" , ldcSha256 ? "1aag5jfrng6p4ms0fs90hjbv9bcj3hj8h52r68c3cm6racdajbva"
}: }:
let let

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "libabw"; pname = "libabw";
version = "0.1.2"; version = "0.1.3";
src = fetchurl { src = fetchurl {
url = "https://dev-www.libreoffice.org/src/libabw/${pname}-${version}.tar.xz"; url = "https://dev-www.libreoffice.org/src/libabw/${pname}-${version}.tar.xz";
sha256 = "11949iscdb99f2jplxjd39282jxcrf2fw0sqbh5dl7gqb96r8whb"; sha256 = "1vbfrmnvib3cym0yyyabnd8xpx4f7wp20vnn09s6dln347fajqz7";
}; };
# Boost 1.59 compatability fix # Boost 1.59 compatability fix

View File

@ -1,23 +1,29 @@
{ stdenv, fetchurl, xercesc }: { stdenv, fetchurl, xercesc }:
let
major = "1.9";
minor = "0";
in
with stdenv; with lib;
mkDerivation rec {
name = "libcutl-${major}.${minor}";
meta = { stdenv.mkDerivation rec {
description = "A collection of generic and independent components such as meta-programming tests, smart pointers, containers, compiler building blocks" ; pname = "libcutl";
version = "1.10.0";
meta = with stdenv.lib; {
description = "C++ utility library from Code Synthesis";
longDescription = ''
libcutl is a C++ utility library.
It contains a collection of generic and independent components such as
meta-programming tests, smart pointers, containers, compiler building blocks, etc.
'';
homepage = "https://codesynthesis.com/projects/libcutl/";
changelog = "https://git.codesynthesis.com/cgit/libcutl/libcutl/plain/NEWS?h=${version}";
platforms = platforms.all; platforms = platforms.all;
maintainers = with maintainers; [ ]; maintainers = with maintainers; [ ];
license = licenses.mit; license = licenses.mit;
}; };
majmin = builtins.head ( builtins.match "([[:digit:]]\.[[:digit:]]*+)\.*" "${version}" );
src = fetchurl { src = fetchurl {
url = "https://codesynthesis.com/download/libcutl/1.9/${name}.tar.bz2"; url = "https://codesynthesis.com/download/${pname}/${majmin}/${pname}-${version}.tar.bz2";
sha1 = "0e8d255145afbc339a3284ef85a43f4baf3fec43"; sha256 = "070j2x02m4gm1fn7gnymrkbdxflgzxwl7m96aryv8wp3f3366l8j";
}; };
buildInputs = [ xercesc ]; buildInputs = [ xercesc ];
enableParallelBuilding = true;
} }

View File

@ -24,8 +24,7 @@ stdenv.mkDerivation rec {
description = "Library to report hypervisor information from inside a VM"; description = "Library to report hypervisor information from inside a VM";
license = licenses.asl20; license = licenses.asl20;
maintainers = [ maintainers.womfoo ]; maintainers = [ maintainers.womfoo ];
platforms = platforms.linux; platforms = with platforms; [ "i686-linux" "x86_64-linux" ]; # fails on aarch64
badPlatforms = platforms.arm;
}; };
} }

View File

@ -0,0 +1,26 @@
{ lib, fetchurl, buildDunePackage
, cstruct, fmt
, bos, cmdliner, fpath, logs
, alcotest
}:
buildDunePackage rec {
pname = "duff";
version = "0.2";
src = fetchurl {
url = "https://github.com/mirage/duff/releases/download/v${version}/duff-v${version}.tbz";
sha256 = "0bi081w4349cqc1n9jsjh1lrcqlnv3nycmvh9fniscv8lz1c0gjq";
};
buildInputs = [ bos cmdliner fpath logs ] ++ lib.optional doCheck alcotest;
propagatedBuildInputs = [ cstruct fmt ];
doCheck = true;
meta = {
description = "Pure OCaml implementation of libXdiff (Rabins fingerprint)";
homepage = "https://github.com/mirage/duff";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.vbgl ];
};
}

View File

@ -0,0 +1,26 @@
{ lib
, buildPythonPackage
, fetchPypi
, pytestrunner
, pytest
}:
buildPythonPackage rec {
pname = "managesieve";
version = "0.6";
src = fetchPypi {
inherit pname version;
sha256 = "ee70e298e9b68eb81f93d52a1320a034fdc182f3927fdd551836fc93b0ed2c5f";
};
checkInputs = [ pytestrunner pytest ];
meta = with lib; {
description = "ManageSieve client library for remotely managing Sieve scripts";
homepage = "https://managesieve.readthedocs.io/";
# PSFL for the python module, GPLv3 for sieveshell
license = with licenses; [ gpl3 psfl ];
maintainers = with maintainers; [ dadada ];
};
}

View File

@ -0,0 +1,54 @@
{ lib
, buildPythonPackage
, fetchPypi
, isPy3k
, pytest
, pytest-pylint
, nbconvert
, jupyter_client
, numpy
, scipy
, pandas
, matplotlib
, numba
}:
buildPythonPackage rec {
pname = "phik";
version = "0.9.8";
format = "wheel";
disabled = !isPy3k;
src = fetchPypi {
inherit pname version format;
python = "py3";
sha256 = "c398452c5c1eea153905666b289c6a153712cf3d58811fa41e2bbbd27a65d678";
};
checkInputs = [
pytest
pytest-pylint
nbconvert
jupyter_client
];
propagatedBuildInputs = [
numpy
scipy
pandas
matplotlib
numba
];
postInstall = ''
rm -r $out/bin
'';
meta = with lib; {
description = "Phi_K correlation analyzer library";
longDescription = "Phi_K is a new and practical correlation coefficient based on several refinements to Pearsons hypothesis test of independence of two variables.";
homepage = https://phik.readthedocs.io/en/latest/;
maintainers = with maintainers; [ melsigl ];
license = licenses.asl20;
};
}

View File

@ -0,0 +1,53 @@
{ stdenv, buildPythonPackage, fetchFromGitHub
, betamax
, betamax-serializers
, betamax-matchers
, mock
, six
, pytestrunner
, prawcore
, pytest
, requests-toolbelt
, update_checker
, websocket_client
}:
buildPythonPackage rec {
pname = "praw";
version = "6.3.1";
src = fetchFromGitHub {
owner = "praw-dev";
repo = "praw";
rev = "v${version}";
sha256 = "0by89aw7m803dvjcc33m9390msjm6v5v8g3k8ink9gfm421lw8ky";
};
nativeBuildInputs = [
pytestrunner
];
propagatedBuildInputs = [
mock
prawcore
update_checker
websocket_client
];
checkInputs = [
betamax
betamax-serializers
betamax-matchers
mock
pytest
requests-toolbelt
six
];
meta = with stdenv.lib; {
description = "Python Reddit API wrapper";
homepage = "https://praw.readthedocs.org/";
license = licenses.bsd2;
maintainers = with maintainers; [ ];
};
}

View File

@ -14,13 +14,13 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "praw"; pname = "praw";
version = "6.3.1"; version = "6.4.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "praw-dev"; owner = "praw-dev";
repo = "praw"; repo = "praw";
rev = "v${version}"; rev = "v${version}";
sha256 = "0by89aw7m803dvjcc33m9390msjm6v5v8g3k8ink9gfm421lw8ky"; sha256 = "0j92wqyppif2k80zhzq30b04r8ljwjviply400kn4rjn54hxd4hb";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
@ -48,7 +48,6 @@ buildPythonPackage rec {
description = "Python Reddit API wrapper"; description = "Python Reddit API wrapper";
homepage = "https://praw.readthedocs.org/"; homepage = "https://praw.readthedocs.org/";
license = licenses.bsd2; license = licenses.bsd2;
platforms = platforms.all;
maintainers = with maintainers; [ ]; maintainers = with maintainers; [ ];
}; };
} }

View File

@ -1,12 +1,12 @@
{ stdenv, fetchurl, makeWrapper, jre }: { stdenv, fetchurl, makeWrapper, jre }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "8.24"; version = "8.25";
pname = "checkstyle"; pname = "checkstyle";
src = fetchurl { src = fetchurl {
url = "https://github.com/checkstyle/checkstyle/releases/download/checkstyle-${version}/checkstyle-${version}-all.jar"; url = "https://github.com/checkstyle/checkstyle/releases/download/checkstyle-${version}/checkstyle-${version}-all.jar";
sha256 = "01h1xv6lqf1fhmzbghdj2dbygdspcb6dxk0fil16s2ggs3w62fmm"; sha256 = "04asn3cqh0f78c4b0968ic2fxgijf47paw3zgh9dh96x1165yhkf";
}; };
nativeBuildInputs = [ makeWrapper ]; nativeBuildInputs = [ makeWrapper ];

View File

@ -2,12 +2,12 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "avro-tools"; pname = "avro-tools";
version = "1.9.0"; version = "1.9.1";
src = fetchurl { src = fetchurl {
url = url =
"https://repo1.maven.org/maven2/org/apache/avro/avro-tools/${version}/${pname}-${version}.jar"; "https://repo1.maven.org/maven2/org/apache/avro/avro-tools/${version}/${pname}-${version}.jar";
sha256 = "164mcz7ljd2ikwsq9ba98galcjar4g4n6ag7kkh466nwrpbmd2zi"; sha256 = "0d73qbfx59pa4mgsjwgl5dvc4895rm90pdwr4sbd77biscjad94s";
}; };
dontUnpack = true; dontUnpack = true;

View File

@ -2,16 +2,16 @@
buildGoModule rec { buildGoModule rec {
pname = "bazelisk"; pname = "bazelisk";
version = "1.0"; version = "1.1.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "bazelbuild"; owner = "bazelbuild";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "0516rx3qx6nxavy0a1qxjx2rcvdfb2ggig0q4n7fkmrxbnwxh2c9"; sha256 = "1pv113sk7hfxp4m2rcriqqp6mbbzcfdr0yrx4g1yiam93rx34yb7";
}; };
modSha256 = "1f73j6ryidzi3kfy3rhsqx047vzwvzaqcsl7ykhg87rn2l2s7fdl"; modSha256 = "0gs8y618izqi0gfa46jqh79yj8lzsmc6yj95fakhp2f5i8v1xrmx";
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "A user-friendly launcher for Bazel"; description = "A user-friendly launcher for Bazel";

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "buck"; pname = "buck";
version = "2019.09.12.01"; version = "2019.10.17.01";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "facebook"; owner = "facebook";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "02rid0r0swxa6n6hl89lcll7hgxn1wjh2kjzxcj4arm7d34243bw"; sha256 = "1irgp8yq1z11bq3b83yxvj35wqqq7y7b8q4d4y0hc05ac19ja0vj";
}; };
patches = [ ./pex-mtime.patch ]; patches = [ ./pex-mtime.patch ];

View File

@ -6,16 +6,16 @@ with rustPlatform;
buildRustPackage rec { buildRustPackage rec {
pname = "chit"; pname = "chit";
version = "0.1.14"; version = "0.1.15";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "peterheesterman"; owner = "peterheesterman";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "1rzy15xwlf87c8kpy9pwvir6s9z3qc8d9iz4pk0gfdj2il3vmjwv"; sha256 = "0iixczy3cad44j2d7zzj8f3lnmp4jwnb0snmwfgiq3vj9wrn28pz";
}; };
cargoSha256 = "1jqnnf4jgjpm1i310hda15423nxfw9frgpmc2kbrs66qcsj7avaw"; cargoSha256 = "0k6z69a09ps55w2rdgnf92yscw6rlbcpb4q9yf3rsav15pgpqvw8";
nativeBuildInputs = stdenv.lib.optionals stdenv.isLinux [ pkgconfig ]; nativeBuildInputs = stdenv.lib.optionals stdenv.isLinux [ pkgconfig ];
buildInputs = [] buildInputs = []

View File

@ -1,29 +1,29 @@
{ lib, buildGoModule, fetchFromGitHub }: { lib, buildGoModule, fetchFromGitHub, tree }:
buildGoModule rec { buildGoModule rec {
pname = "kustomize"; pname = "kustomize";
version = "3.1.0"; version = "3.3.1";
# rev is the 3.1.0 commit, mainly for kustomize version command output # rev is the 3.3.1 commit, mainly for kustomize version command output
rev = "95f3303493fdea243ae83b767978092396169baf"; rev = "f2ac5a2d0df13c047fb20cbc12ef1a3b41ce2dad";
goPackagePath = "sigs.k8s.io/kustomize"; buildFlagsArray = let t = "sigs.k8s.io/kustomize/v3/provenance"; in ''
subPackages = [ "cmd/kustomize" ];
buildFlagsArray = let t = "${goPackagePath}/v3/pkg/commands/misc"; in ''
-ldflags= -ldflags=
-s -X ${t}.kustomizeVersion=${version} -s -X ${t}.version=${version}
-X ${t}.gitCommit=${rev} -X ${t}.gitCommit=${rev}
-X ${t}.buildDate=unknown -X ${t}.buildDate=unknown
''; '';
src = fetchFromGitHub { src = fetchFromGitHub {
sha256 = "0kigcirkjvnj3xi1p28p9yp3s0lff24q5qcvf8ahjwvpbwka14sh";
rev = "v${version}";
repo = pname;
owner = "kubernetes-sigs"; owner = "kubernetes-sigs";
repo = pname;
rev = "v${version}";
sha256 = "0yxxz0b56r18w178y32s619zy8ci6l93c6vlzx11hhxhbw43f6v6";
}; };
modSha256 = "0w8sp73pmj2wqrg7x7z8diglyfq6c6gn9mmck0k1gk90nv7s8rf1"; # avoid finding test and development commands
sourceRoot = "source/kustomize";
modSha256 = "1bas6al14ck0d2ccb4235426a5hldqsm0nf8vi76chz4nahzb71g";
meta = with lib; { meta = with lib; {
description = "Customization of kubernetes YAML configurations"; description = "Customization of kubernetes YAML configurations";

View File

@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "cargo-generate"; pname = "cargo-generate";
version = "0.3.0"; version = "0.4.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ashleygwilliams"; owner = "ashleygwilliams";
repo = "cargo-generate"; repo = "cargo-generate";
rev = "v${version}"; rev = "v${version}";
sha256 = "0n6na6xq4bvs9hc7vc86qqmlrkv824qdmja27b21l2wz3l77r4jb"; sha256 = "09276jrb0a735v6p06wz94kbk8bblwpca13vpvy8n0jjmqack2xb";
}; };
cargoSha256 = "00fgzh1s63rr1vs3ahra604m81fc4imx3s09brw2y0n46syhwypi"; cargoSha256 = "1gbxfmhwzpxm0gs3zwzs010j0ndi5aw6xsvvngg0h1lpwg9ypnbr";
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];

View File

@ -1,28 +1,30 @@
{ stdenv, fetchFromGitHub, cmake, SDL2, SDL2_mixer, SDL2_ttf, libsodium, pkg-config }: { stdenv, fetchFromGitHub, cmake, SDL2, SDL2_mixer, SDL2_ttf, libsodium, pkg-config }:
stdenv.mkDerivation { stdenv.mkDerivation rec {
version = "unstable-2019-07-28"; version = "0.5.0";
pname = "devilutionx"; pname = "devilutionx";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "diasurgical"; owner = "diasurgical";
repo = "devilutionX"; repo = "devilutionX";
rev = "b2f358874705598ec139f290b21e340c73d250f6"; rev = version;
sha256 = "0s812km118qq5pzlzvzfndvag0mp6yzvm69ykc97frdiq608zw4f"; sha256 = "010hxj129zmsynvizk89vm2y29dcxsfi585czh3f03wfr38rxa6b";
}; };
NIX_CFLAGS_COMPILE = "-I${SDL2_ttf}/include/SDL2"; NIX_CFLAGS_COMPILE = "-I${SDL2_ttf}/include/SDL2";
# compilation will fail due to -Werror=format-security
hardeningDisable = [ "format" ];
nativeBuildInputs = [ pkg-config cmake ]; nativeBuildInputs = [ pkg-config cmake ];
buildInputs = [ libsodium SDL2 SDL2_mixer SDL2_ttf ]; buildInputs = [ libsodium SDL2 SDL2_mixer SDL2_ttf ];
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
'' + (if stdenv.isDarwin then ''
mkdir -p $out/Applications
mv devilutionx.app $out/Applications
'' else ''
mkdir -p $out/bin mkdir -p $out/bin
cp devilutionx $out/bin cp devilutionx $out/bin
'') + ''
runHook postInstall runHook postInstall
''; '';
@ -30,6 +32,7 @@ stdenv.mkDerivation {
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = "https://github.com/diasurgical/devilutionX"; homepage = "https://github.com/diasurgical/devilutionX";
description = "Diablo build for modern operating systems"; description = "Diablo build for modern operating systems";
longDescription = "In order to play this game a copy of diabdat.mpq is required. Place a copy of diabdat.mpq in ~/.local/share/diasurgical/devilution before executing the game.";
license = licenses.unlicense; license = licenses.unlicense;
maintainers = [ maintainers.karolchmist ]; maintainers = [ maintainers.karolchmist ];
platforms = platforms.linux ++ platforms.darwin ++ platforms.windows; platforms = platforms.linux ++ platforms.darwin ++ platforms.windows;

View File

@ -29,11 +29,11 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "musl"; pname = "musl";
version = "1.1.22"; version = "1.1.24";
src = fetchurl { src = fetchurl {
url = "https://www.musl-libc.org/releases/${pname}-${version}.tar.gz"; url = "https://www.musl-libc.org/releases/${pname}-${version}.tar.gz";
sha256 = "1qr9xqdzziy5bsyyqlh6k8yz056ll55d5yvc0gbhz61ginj422cb"; sha256 = "18r2a00k82hz0mqdvgm7crzc7305l36109c0j9yjmkxj2alcjw0k";
}; };
enableParallelBuilding = true; enableParallelBuilding = true;
@ -110,11 +110,11 @@ stdenv.mkDerivation rec {
passthru.linuxHeaders = linuxHeaders; passthru.linuxHeaders = linuxHeaders;
meta = { meta = with lib; {
description = "An efficient, small, quality libc implementation"; description = "An efficient, small, quality libc implementation";
homepage = "http://www.musl-libc.org"; homepage = "http://www.musl-libc.org";
license = lib.licenses.mit; license = licenses.mit;
platforms = lib.platforms.linux; platforms = platforms.linux;
maintainers = [ lib.maintainers.thoughtpolice ]; maintainers = with maintainers; [ thoughtpolice dtzWill ];
}; };
} }

View File

@ -58,7 +58,7 @@ in
}; };
bird2 = generic { bird2 = generic {
version = "2.0.6"; version = "2.0.7";
sha256 = "1ankpxvmn12kzgv5vh7awnkj34jzjciy5baq3smkj079db74r4wh"; sha256 = "0rhhbfmfw2d93rvhglv03rdzxsq2disw6s1wm8d6bgdxmrc2n7b3";
}; };
} }

View File

@ -10,11 +10,11 @@ assert enablePython -> python3 != null;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "bind"; pname = "bind";
version = "9.14.6"; version = "9.14.7";
src = fetchurl { src = fetchurl {
url = "https://ftp.isc.org/isc/bind9/${version}/${pname}-${version}.tar.gz"; url = "https://ftp.isc.org/isc/bind9/${version}/${pname}-${version}.tar.gz";
sha256 = "1zpd47ckn5lf4qbscfkj7krngwn2gwsp961v5401h3lhxm0a0rw9"; sha256 = "07998nx0yv3xy8c62b1ira9qygsgvpljwcgb47ypzxq8b57gb86f";
}; };
outputs = [ "out" "lib" "dev" "man" "dnsutils" "host" ]; outputs = [ "out" "lib" "dev" "man" "dnsutils" "host" ];

View File

@ -1,12 +1,14 @@
{ lib, fetchPypi, buildPythonPackage }: { lib, fetchPypi, buildPythonPackage }:
buildPythonPackage rec { buildPythonPackage rec {
# the frontend version corresponding to a specific home-assistant version can be found here
# https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/frontend/manifest.json
pname = "home-assistant-frontend"; pname = "home-assistant-frontend";
version = "20190514.0"; version = "20190919.0";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "ba8cfa01b00ff2ee94a91cd83197b4d213e9b9df151daaef11dd0a56d34c5414"; sha256 = "1xdw8fj4njc3sf15mlyiwigrwf89xsz4r2dsv6zs5fnl512r439a";
}; };
# no Python tests implemented # no Python tests implemented

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "mod_wsgi"; pname = "mod_wsgi";
version = "4.6.7"; version = "4.6.8";
src = fetchurl { src = fetchurl {
url = "https://github.com/GrahamDumpleton/mod_wsgi/archive/${version}.tar.gz"; url = "https://github.com/GrahamDumpleton/mod_wsgi/archive/${version}.tar.gz";
sha256 = "1j8pqn0xhd502ardlmkqx8y85s1npmk9nifqps60wjh29nny03f2"; sha256 = "0xym7i3iaxqi23dayacv2llhi0klxcb4ldll5cjxv6lg9v5r88x2";
}; };
buildInputs = [ apacheHttpd python ncurses ]; buildInputs = [ apacheHttpd python ncurses ];

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "airsonic"; pname = "airsonic";
version = "10.4.0"; version = "10.4.1";
src = fetchurl { src = fetchurl {
url = "https://github.com/airsonic/airsonic/releases/download/v${version}/airsonic.war"; url = "https://github.com/airsonic/airsonic/releases/download/v${version}/airsonic.war";
sha256 = "1m4l10hp5m010ljsvn2ba4bbh8i26d04xffw81gfgjw08gya2hh8"; sha256 = "18vm59x8pcgsyf3kl8ndvdszwf62df9vsqzv5jgbzayb3s0yjghx";
}; };
buildCommand = '' buildCommand = ''

View File

@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
name = "rt-perl-deps"; name = "rt-perl-deps";
paths = (with perlPackages; [ paths = (with perlPackages; [
ApacheSession BusinessHours CGIEmulatePSGI CGIPSGI ApacheSession BusinessHours CGIEmulatePSGI CGIPSGI
CSSMinifierXP CSSSquish ConvertColor CryptEksblowfish CSSMinifierXS CSSSquish ConvertColor CryptEksblowfish
CryptSSLeay DBDSQLite DBDmysql DBIxSearchBuilder DataGUID CryptSSLeay DBDSQLite DBDmysql DBIxSearchBuilder DataGUID
DataICal DataPagePageset DateExtract DateManip DataICal DataPagePageset DateExtract DateManip
DateTimeFormatNatural DevelGlobalDestruction EmailAddress DateTimeFormatNatural DevelGlobalDestruction EmailAddress

View File

@ -4,11 +4,11 @@ gobject-introspection, gsettings-desktop-schemas, wrapGAppsHook }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "birdfont"; pname = "birdfont";
version = "2.27.0"; version = "2.28.0";
src = fetchurl { src = fetchurl {
url = "https://birdfont.org/releases/${pname}-${version}.tar.xz"; url = "https://birdfont.org/releases/${pname}-${version}.tar.xz";
sha256 = "0dr2cnvq30wak0j2k8089is7fvhw0ppwkfrrw1m649s2b95wav3q"; sha256 = "19i7wzngi695dp4w0235wmfcnagdw3i40mzf89sddr1mqzvipfrz";
}; };
nativeBuildInputs = [ python3 pkgconfig vala_0_44 gobject-introspection wrapGAppsHook ]; nativeBuildInputs = [ python3 pkgconfig vala_0_44 gobject-introspection wrapGAppsHook ];

View File

@ -1,47 +1,56 @@
{ stdenv, fetchurl, udev, intltool, pkgconfig, glib, xmlto, wrapGAppsHook { stdenv, fetchFromGitHub, udev, intltool, pkgconfig, glib, xmlto, wrapGAppsHook
, docbook_xml_dtd_412, docbook_xsl , docbook_xml_dtd_412, docbook_xsl
, libxml2, desktop-file-utils, libusb1, cups, gdk-pixbuf, pango, atk, libnotify , libxml2, desktop-file-utils, libusb1, cups, gdk-pixbuf, pango, atk, libnotify
, gobject-introspection, libsecret , gobject-introspection, libsecret, packagekit
, cups-filters , cups-filters
, pythonPackages , python3Packages, autoreconfHook, bash
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "system-config-printer"; pname = "system-config-printer";
version = "1.5.11"; version = "1.5.12";
src = fetchurl { src = fetchFromGitHub {
url = "https://github.com/zdohnal/system-config-printer/releases/download/${version}/${pname}-${version}.tar.xz"; owner = "openPrinting";
sha256 = "1lq0q51bhanirpjjvvh4xiafi8hgpk8r32h0dj6dn3f32z8pib9q"; repo = pname;
rev = version;
sha256 = "1a812jsd9pb02jbz9bq16qj5j6k2kw44g7s1xdqqkg7061rd7mwf";
}; };
prePatch = ''
# for automake
touch README ChangeLog
# for tests
substituteInPlace Makefile.am --replace /bin/bash ${bash}/bin/bash
'';
patches = [ ./detect_serverbindir.patch ]; patches = [ ./detect_serverbindir.patch ];
buildInputs = [ buildInputs = [
glib udev libusb1 cups glib udev libusb1 cups
pythonPackages.python python3Packages.python
libnotify gobject-introspection gdk-pixbuf pango atk libnotify gobject-introspection gdk-pixbuf pango atk packagekit
libsecret libsecret
]; ];
nativeBuildInputs = [ nativeBuildInputs = [
intltool pkgconfig intltool pkgconfig
xmlto libxml2 docbook_xml_dtd_412 docbook_xsl desktop-file-utils xmlto libxml2 docbook_xml_dtd_412 docbook_xsl desktop-file-utils
pythonPackages.wrapPython python3Packages.wrapPython
wrapGAppsHook wrapGAppsHook autoreconfHook
]; ];
pythonPath = with pythonPackages; requiredPythonModules [ pycups pycurl dbus-python pygobject3 requests pycairo pysmbc ]; pythonPath = with python3Packages; requiredPythonModules [ pycups pycurl dbus-python pygobject3 requests pycairo pysmbc ];
configureFlags = [ configureFlags = [
"--with-udev-rules" "--with-udev-rules"
"--with-udevdir=$(out)/etc/udev" "--with-udevdir=${placeholder "out"}/etc/udev"
"--with-systemdsystemunitdir=$(out)/etc/systemd/system" "--with-systemdsystemunitdir=${placeholder "out"}/etc/systemd/system"
]; ];
stripDebugList = [ "bin" "lib" "etc/udev" ]; stripDebugList = [ "bin" "lib" "etc/udev" ];
doCheck = false; # generates shebangs in check phase, too lazy to fix doCheck = true;
postInstall = postInstall =
'' ''
@ -54,20 +63,14 @@ stdenv.mkDerivation rec {
find $out/share/system-config-printer -name \*.py -type f -perm -0100 -print0 | while read -d "" f; do find $out/share/system-config-printer -name \*.py -type f -perm -0100 -print0 | while read -d "" f; do
patchPythonScript "$f" patchPythonScript "$f"
done done
patchPythonScript $out/etc/udev/udev-add-printer
# The below line will be unneeded when the next upstream release arrives.
sed -i -e "s|/usr/local/bin|$out/bin|" "$out/share/dbus-1/services/org.fedoraproject.Config.Printing.service"
# Manually expand literal "$(out)", which have failed to expand
sed -e "s|ExecStart=\$(out)|ExecStart=$out|" \
-i "$out/etc/systemd/system/configure-printer@.service"
substituteInPlace $out/etc/udev/rules.d/70-printers.rules \ substituteInPlace $out/etc/udev/rules.d/70-printers.rules \
--replace "udev-configure-printer" "$out/etc/udev/udev-configure-printer" --replace "udev-configure-printer" "$out/etc/udev/udev-configure-printer"
''; '';
meta = { meta = {
homepage = http://cyberelk.net/tim/software/system-config-printer/; homepage = "https://github.com/openprinting/system-config-printer";
platforms = stdenv.lib.platforms.linux; platforms = stdenv.lib.platforms.linux;
license = stdenv.lib.licenses.gpl2; license = stdenv.lib.licenses.gpl2;
}; };

View File

@ -5,11 +5,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "nss-pam-ldapd"; pname = "nss-pam-ldapd";
version = "0.9.10"; version = "0.9.11";
src = fetchurl { src = fetchurl {
url = "https://arthurdejong.org/nss-pam-ldapd/${pname}-${version}.tar.gz"; url = "https://arthurdejong.org/nss-pam-ldapd/${pname}-${version}.tar.gz";
sha256 = "1cqamcr6qpgwxijlr6kg7jspjamjra8w0haan0qssn0yxn95d7c0"; sha256 = "1dna3r0q6sjhhlkhcp8x2zkslrd4y7701kk6fl5r940sdph1pmyh";
}; };
nativeBuildInputs = [ pkgconfig makeWrapper autoreconfHook ]; nativeBuildInputs = [ pkgconfig makeWrapper autoreconfHook ];

View File

@ -16,11 +16,11 @@ let
pname = "bitwarden"; pname = "bitwarden";
version = { version = {
x86_64-linux = "1.16.4"; x86_64-linux = "1.16.6";
}.${system} or ""; }.${system} or "";
sha256 = { sha256 = {
x86_64-linux = "1g9ljxjqs7mx509lkfd7db7xvm9srzypbgv0qfzrr2flqbsfl06m"; x86_64-linux = "074hqm4gjljc82nhn7h6wsd74567390018fi3v38g7jh7aph10jj";
}.${system} or ""; }.${system} or "";
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "bitwarden_rs-vault"; pname = "bitwarden_rs-vault";
version = "2.11.0"; version = "2.12.0";
src = fetchurl { src = fetchurl {
url = "https://github.com/dani-garcia/bw_web_builds/releases/download/v${version}/bw_web_v${version}.tar.gz"; url = "https://github.com/dani-garcia/bw_web_builds/releases/download/v${version}/bw_web_v${version}.tar.gz";
sha256 = "06f0rcpqhz5qjm01jbxx2czhnj9ng29rgsrilm5r5xx31s9dnhg7"; sha256 = "064dxfplqn67grpx03ryzshwmr7s00w4mll0hk0anddviwvd8r1n";
}; };
buildCommand = '' buildCommand = ''

View File

@ -2,29 +2,30 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "facter"; pname = "facter";
version = "3.13.2"; version = "3.14.5";
src = fetchFromGitHub { src = fetchFromGitHub {
sha256 = "1yaj1qlyzsaffzpm4zmzm53mc6bhpzka8wc3dfk909nzykxg34zf"; sha256 = "0xzzhlsfw8yd3ac4kvr3za0rlkgfw28dzxzi5i1qbhzljivvipm5";
rev = version; rev = version;
repo = "facter"; repo = pname;
owner = "puppetlabs"; owner = "puppetlabs";
}; };
CXXFLAGS = "-fpermissive -Wno-error=catch-value"; CXXFLAGS = "-fpermissive -Wno-error=catch-value";
NIX_LDFLAGS = "-lblkid"; NIX_LDFLAGS = "-lblkid";
cmakeFlags = [ "-DFACTER_RUBY=${ruby}/lib/libruby.so" ]; cmakeFlags = [
"-DFACTER_RUBY=${ruby}/lib/libruby.so"
"-DRUBY_LIB_INSTALL=${placeholder "out"}/lib/ruby"
];
# since we cant expand $out in cmakeFlags nativeBuildInputs = [ cmake ];
preConfigure = "cmakeFlags+=\" -DRUBY_LIB_INSTALL=$out/lib/ruby\""; buildInputs = [ boost cpp-hocon curl leatherman libwhereami libyamlcpp openssl ruby utillinux ];
buildInputs = [ boost cmake cpp-hocon curl leatherman libwhereami libyamlcpp openssl ruby utillinux ];
enableParallelBuilding = true; enableParallelBuilding = true;
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = https://github.com/puppetlabs/facter; homepage = "https://github.com/puppetlabs/facter";
description = "A system inventory tool"; description = "A system inventory tool";
license = licenses.asl20; license = licenses.asl20;
maintainers = [ maintainers.womfoo ]; maintainers = [ maintainers.womfoo ];

View File

@ -0,0 +1,36 @@
{ stdenv, fetchFromBitbucket, python2 }:
stdenv.mkDerivation rec {
version = "7.2";
pname = "tab";
src = fetchFromBitbucket {
owner = "tkatchev";
repo = pname;
rev = version;
sha256 = "1bm15lw0vp901dj2vsqx6yixmn7ls3brrzh1w6zgd1ksjzlm5aax";
};
nativeBuildInputs = [ python2 ];
doCheck = true;
checkTarget = "test";
installPhase = ''
runHook preInstall
install -Dm555 -t $out/bin tab
install -Dm444 -t $out/share/doc/tab docs/*.html
runHook postInstall
'';
meta = with stdenv.lib; {
description = "Programming language/shell calculator";
homepage = https://tkatchev.bitbucket.io/tab/;
license = licenses.boost;
maintainers = with maintainers; [ mstarzyk ];
platforms = with platforms; linux;
};
}

View File

@ -5589,6 +5589,8 @@ in
plex = callPackage ../servers/plex { }; plex = callPackage ../servers/plex { };
plexRaw = callPackage ../servers/plex/raw.nix { }; plexRaw = callPackage ../servers/plex/raw.nix { };
tab = callPackage ../tools/text/tab { };
tautulli = callPackage ../servers/tautulli { python = python2; }; tautulli = callPackage ../servers/tautulli { python = python2; };
ploticus = callPackage ../tools/graphics/ploticus { ploticus = callPackage ../tools/graphics/ploticus {
@ -6250,7 +6252,9 @@ in
sshguard = callPackage ../tools/security/sshguard {}; sshguard = callPackage ../tools/security/sshguard {};
suricata = callPackage ../applications/networking/ids/suricata { }; suricata = callPackage ../applications/networking/ids/suricata {
python = python3;
};
softhsm = callPackage ../tools/security/softhsm { softhsm = callPackage ../tools/security/softhsm {
inherit (darwin) libobjc; inherit (darwin) libobjc;
@ -6424,7 +6428,6 @@ in
system-config-printer = callPackage ../tools/misc/system-config-printer { system-config-printer = callPackage ../tools/misc/system-config-printer {
libxml2 = libxml2Python; libxml2 = libxml2Python;
pythonPackages = python3Packages;
}; };
stricat = callPackage ../tools/security/stricat { }; stricat = callPackage ../tools/security/stricat { };
@ -25204,4 +25207,6 @@ in
keycard-cli = callPackage ../tools/security/keycard-cli {}; keycard-cli = callPackage ../tools/security/keycard-cli {};
sieveshell = with python3.pkgs; toPythonApplication managesieve;
} }

View File

@ -219,6 +219,8 @@ let
dtoa = callPackage ../development/ocaml-modules/dtoa { }; dtoa = callPackage ../development/ocaml-modules/dtoa { };
duff = callPackage ../development/ocaml-modules/duff { };
dune = callPackage ../development/tools/ocaml/dune { }; dune = callPackage ../development/tools/ocaml/dune { };
earley = callPackage ../development/ocaml-modules/earley { }; earley = callPackage ../development/ocaml-modules/earley { };

View File

@ -3451,6 +3451,23 @@ let
}; };
}; };
CryptScryptKDF = buildPerlModule {
pname = "Crypt-ScryptKDF";
version = "0.010";
src = fetchurl {
url = "mirror://cpan/authors/id/M/MI/MIK/Crypt-ScryptKDF-0.010.tar.gz";
sha256 = "7d16ee95cce3eb54c174673a7299f4c086fba3ac85f847d0e134feed5f776017";
};
propagatedBuildInputs = [ CryptOpenSSLRandom ];
perlPreHook = "export LD=$CC";
meta = {
description = "Scrypt password based key derivation function";
license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
homepage = "https://github.com/DCIT/perl-Crypt-ScryptKDF";
maintainers = [ maintainers.sgo ];
};
};
CryptSmbHash = buildPerlPackage { CryptSmbHash = buildPerlPackage {
pname = "Crypt-SmbHash"; pname = "Crypt-SmbHash";
version = "0.12"; version = "0.12";
@ -3582,7 +3599,7 @@ let
propagatedBuildInputs = [ Clone ]; propagatedBuildInputs = [ Clone ];
}; };
CSSMinifierXP = buildPerlModule { CSSMinifierXS = buildPerlModule {
pname = "CSS-Minifier-XS"; pname = "CSS-Minifier-XS";
version = "0.09"; version = "0.09";
src = fetchurl { src = fetchurl {
@ -10921,6 +10938,22 @@ let
buildInputs = [ ProcWaitStat ]; buildInputs = [ ProcWaitStat ];
}; };
MIMEEncWords = buildPerlPackage {
pname = "MIME-EncWords";
version = "1.014.3";
src = fetchurl {
url = "mirror://cpan/authors/id/N/NE/NEZUMI/MIME-EncWords-1.014.3.tar.gz";
sha256 = "e9afb548611d4e7e6c50b7f06bbd2b1bb2808e37a810deefb537c67af5485238";
};
propagatedBuildInputs = [ MIMECharset ];
meta = {
homepage = "https://metacpan.org/pod/MIME::EncWords";
description = "Deal with RFC 2047 encoded words (improved)";
license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
maintainers = [ maintainers.sgo ];
};
};
MIMELite = buildPerlPackage { MIMELite = buildPerlPackage {
pname = "MIME-Lite"; pname = "MIME-Lite";
version = "3.030"; version = "3.030";
@ -11460,6 +11493,38 @@ let
}; };
}; };
MojoliciousPluginMail = buildPerlModule {
pname = "Mojolicious-Plugin-Mail";
version = "1.5";
src = fetchurl {
url = "mirror://cpan/authors/id/S/SH/SHARIFULN/Mojolicious-Plugin-Mail-1.5.tar.gz";
sha256 = "56f0d341ebc3a7acf3919f5add43e98216ea1285aa0d87e7fb00c02bb0eff146";
};
propagatedBuildInputs = [ MIMEEncWords MIMELite Mojolicious ];
meta = {
homepage = "https://github.com/sharifulin/Mojolicious-Plugin-Mail";
description = "Mojolicious Plugin for send mail";
license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
maintainers = [ maintainers.sgo ];
};
};
MojoliciousPluginOpenAPI = buildPerlPackage {
pname = "Mojolicious-Plugin-OpenAPI";
version = "2.17";
src = fetchurl {
url = "mirror://cpan/authors/id/J/JH/JHTHORSEN/Mojolicious-Plugin-OpenAPI-2.17.tar.gz";
sha256 = "c20f8b07fb8582fdbf0b540f4cfc5fe95f262743522a160526024342a7f0a1f0";
};
propagatedBuildInputs = [ JSONValidator ];
meta = {
homepage = "https://github.com/jhthorsen/mojolicious-plugin-openapi";
description = "OpenAPI / Swagger plugin for Mojolicious";
license = stdenv.lib.licenses.artistic2;
maintainers = [ maintainers.sgo ];
};
};
MojoliciousPluginStatus = buildPerlPackage { MojoliciousPluginStatus = buildPerlPackage {
pname = "Mojolicious-Plugin-Status"; pname = "Mojolicious-Plugin-Status";
version = "1.0"; version = "1.0";
@ -12848,6 +12913,7 @@ let
sha256 = "1aiy7adirk3wpwlczd8sldi9k1dray0jrg1lbcrcw97zwcrkciam"; sha256 = "1aiy7adirk3wpwlczd8sldi9k1dray0jrg1lbcrcw97zwcrkciam";
}; };
buildInputs = [ TestNoWarnings ]; buildInputs = [ TestNoWarnings ];
perlPreHook = "export LD=$CC";
meta = { meta = {
description = "Internationalizing Domain Names in Applications (IDNA)"; description = "Internationalizing Domain Names in Applications (IDNA)";
}; };
@ -15722,6 +15788,7 @@ let
}; };
buildInputs = [ LWP TestSharedFork TestTCP ]; buildInputs = [ LWP TestSharedFork TestTCP ];
propagatedBuildInputs = [ ParallelPrefork Plack ServerStarter ]; propagatedBuildInputs = [ ParallelPrefork Plack ServerStarter ];
doCheck = !stdenv.isDarwin;
meta = { meta = {
description = "A simple, high-performance PSGI/Plack HTTP server"; description = "A simple, high-performance PSGI/Plack HTTP server";
license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];

View File

@ -848,6 +848,8 @@ in {
phonopy = callPackage ../development/python-modules/phonopy { }; phonopy = callPackage ../development/python-modules/phonopy { };
phik = callPackage ../development/python-modules/phik {};
piccata = callPackage ../development/python-modules/piccata {}; piccata = callPackage ../development/python-modules/piccata {};
pims = callPackage ../development/python-modules/pims { }; pims = callPackage ../development/python-modules/pims { };
@ -4324,7 +4326,8 @@ in {
ppft = callPackage ../development/python-modules/ppft { }; ppft = callPackage ../development/python-modules/ppft { };
praw = callPackage ../development/python-modules/praw { }; praw = if isPy3k then callPackage ../development/python-modules/praw { }
else callPackage ../development/python-modules/praw/6.3.nix { };
prawcore = callPackage ../development/python-modules/prawcore { }; prawcore = callPackage ../development/python-modules/prawcore { };
@ -6338,6 +6341,9 @@ in {
pyprof2calltree = callPackage ../development/python-modules/pyprof2calltree { }; pyprof2calltree = callPackage ../development/python-modules/pyprof2calltree { };
hcloud = callPackage ../development/python-modules/hcloud { }; hcloud = callPackage ../development/python-modules/hcloud { };
managesieve = callPackage ../development/python-modules/managesieve { };
}); });
in fix' (extends overrides packages) in fix' (extends overrides packages)