Merge staging-next into staging

This commit is contained in:
github-actions[bot] 2022-04-18 00:02:54 +00:00 committed by GitHub
commit bba1ee20b1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
78 changed files with 648 additions and 550 deletions

View file

@ -2089,12 +2089,6 @@
githubId = 18648043;
name = "Daniel Cartwright";
};
chiiruno = {
email = "okinan@protonmail.com";
github = "chiiruno";
githubId = 30435868;
name = "Okina Matara";
};
Chili-Man = {
email = "dr.elhombrechile@gmail.com";
name = "Diego Rodriguez";
@ -14234,6 +14228,12 @@
github = "zbioe";
githubId = 7332055;
};
zendo = {
name = "zendo";
email = "linzway@qq.com";
github = "zendo";
githubId = 348013;
};
zenithal = {
name = "zenithal";
email = "i@zenithal.me";

View file

@ -462,6 +462,44 @@
kernel messages is handled by systemd since Linux 3.5.
</para>
</listitem>
<listitem>
<para>
<literal>pkgs.ssmtp</literal> has been dropped due to the
program being unmaintained. <literal>pkgs.msmtp</literal> can
be used instead as a substitute <literal>sendmail</literal>
implementation. The corresponding options
<literal>services.ssmtp.*</literal> have been removed as well.
<literal>programs.msmtp.*</literal> can be used instead for an
equivalent setup. For example:
</para>
<programlisting language="bash">
{
# Original ssmtp configuration:
services.ssmtp = {
enable = true;
useTLS = true;
useSTARTTLS = true;
hostName = &quot;smtp.example:587&quot;;
authUser = &quot;someone&quot;;
authPassFile = &quot;/secrets/password.txt&quot;;
};
# Equivalent msmtp configuration:
programs.msmtp = {
enable = true;
accounts.default = {
tls = true;
tls_starttls = true;
auth = true;
host = &quot;smtp.example&quot;;
port = 587;
user = &quot;someone&quot;;
passwordeval = &quot;cat /secrets/password.txt&quot;;
};
};
}
</programlisting>
</listitem>
<listitem>
<para>
<literal>services.kubernetes.addons.dashboard</literal> was
@ -598,6 +636,13 @@
work.
</para>
</listitem>
<listitem>
<para>
<literal>hbase</literal> version 0.98.24 has been removed. The
package now defaults to version 2.4.11. Versions 1.7.1 and
3.0.0-alpha-2 are also available.
</para>
</listitem>
<listitem>
<para>
<literal>services.paperless-ng</literal> was renamed to
@ -1807,6 +1852,29 @@
configuration.
</para>
</listitem>
<listitem>
<para>
The option
<link linkend="opt-services.xserver.desktopManager.runXdgAutostartIfNone">services.xserver.desktopManager.runXdgAutostartIfNone</link>
was added in order to automatically run XDG autostart files
for sessions without a desktop manager. This replaces helpers
like the <literal>dex</literal> package.
</para>
</listitem>
<listitem>
<para>
When setting
<link linkend="opt-i18n.inputMethod.enabled">i18n.inputMethod.enabled</link>
to <literal>fcitx5</literal>, it no longer creates
corresponding systemd user services. It now relies on XDG
autostart files to start and work properly in your desktop
sessions. If you are using only a window manager without a
desktop manager, you need to enable
<literal>services.xserver.desktopManager.runXdgAutostartIfNone</literal>
or using the <literal>dex</literal> package to make
<literal>fcitx5</literal> work.
</para>
</listitem>
<listitem>
<para>
A new module was added for the Envoy reverse proxy, providing

View file

@ -150,6 +150,39 @@ In addition to numerous new and upgraded packages, this release has the followin
- `security.klogd` was removed. Logging of kernel messages is handled
by systemd since Linux 3.5.
- `pkgs.ssmtp` has been dropped due to the program being unmaintained.
`pkgs.msmtp` can be used instead as a substitute `sendmail` implementation.
The corresponding options `services.ssmtp.*` have been removed as well.
`programs.msmtp.*` can be used instead for an equivalent setup. For example:
```nix
{
# Original ssmtp configuration:
services.ssmtp = {
enable = true;
useTLS = true;
useSTARTTLS = true;
hostName = "smtp.example:587";
authUser = "someone";
authPassFile = "/secrets/password.txt";
};
# Equivalent msmtp configuration:
programs.msmtp = {
enable = true;
accounts.default = {
tls = true;
tls_starttls = true;
auth = true;
host = "smtp.example";
port = 587;
user = "someone";
passwordeval = "cat /secrets/password.txt";
};
};
}
```
- `services.kubernetes.addons.dashboard` was removed due to it being an outdated version.
- `services.kubernetes.scheduler.{port,address}` now set `--secure-port` and `--bind-address` instead of `--port` and `--address`, since the former have been deprecated and are no longer functional in kubernetes>=1.23. Ensure that you are not relying on the insecure behaviour before upgrading.
@ -194,6 +227,8 @@ In addition to numerous new and upgraded packages, this release has the followin
- `services.ipfs.extraFlags` is now escaped with `utils.escapeSystemdExecArgs`. If you rely on systemd interpolating `extraFlags` in the service `ExecStart`, this will no longer work.
- `hbase` version 0.98.24 has been removed. The package now defaults to version 2.4.11. Versions 1.7.1 and 3.0.0-alpha-2 are also available.
- `services.paperless-ng` was renamed to `services.paperless`. Accordingly, the `paperless-ng-manage` script (located in `dataDir`) was renamed to `paperless-manage`. `services.paperless` now uses `paperless-ngx`.
- The `matrix-synapse` service (`services.matrix-synapse`) has been converted to use the `settings` option defined in RFC42.
@ -658,6 +693,17 @@ In addition to numerous new and upgraded packages, this release has the followin
- The `services.stubby` module was converted to a [settings-style](https://github.com/NixOS/rfcs/blob/master/rfcs/0042-config-option.md) configuration.
- The option
[services.xserver.desktopManager.runXdgAutostartIfNone](#opt-services.xserver.desktopManager.runXdgAutostartIfNone)
was added in order to automatically run XDG autostart files for sessions without a desktop manager.
This replaces helpers like the `dex` package.
- When setting [i18n.inputMethod.enabled](#opt-i18n.inputMethod.enabled) to `fcitx5`,
it no longer creates corresponding systemd user services.
It now relies on XDG autostart files to start and work properly in your desktop sessions.
If you are using only a window manager without a desktop manager, you need to enable
`services.xserver.desktopManager.runXdgAutostartIfNone` or using the `dex` package to make `fcitx5` work.
- A new module was added for the Envoy reverse proxy, providing the options `services.envoy.enable` and `services.envoy.settings`.
- The option `services.duplicati.dataDir` has been added to allow changing the location of duplicati's files.

View file

@ -28,11 +28,5 @@ in {
QT_IM_MODULE = "fcitx";
XMODIFIERS = "@im=fcitx";
};
systemd.user.services.fcitx5-daemon = {
enable = true;
script = "${fcitx5Package}/bin/fcitx5";
wantedBy = [ "graphical-session.target" ];
};
};
}

View file

@ -205,7 +205,6 @@
./programs/spacefm.nix
./programs/singularity.nix
./programs/ssh.nix
./programs/ssmtp.nix
./programs/sysdig.nix
./programs/systemtap.nix
./programs/starship.nix

View file

@ -1,190 +0,0 @@
# Configuration for `ssmtp', a trivial mail transfer agent that can
# replace sendmail/postfix on simple systems. It delivers email
# directly to an SMTP server defined in its configuration file, without
# queueing mail locally.
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.ssmtp;
in
{
imports = [
(mkRenamedOptionModule [ "networking" "defaultMailServer" "directDelivery" ] [ "services" "ssmtp" "enable" ])
(mkRenamedOptionModule [ "networking" "defaultMailServer" "hostName" ] [ "services" "ssmtp" "hostName" ])
(mkRenamedOptionModule [ "networking" "defaultMailServer" "domain" ] [ "services" "ssmtp" "domain" ])
(mkRenamedOptionModule [ "networking" "defaultMailServer" "root" ] [ "services" "ssmtp" "root" ])
(mkRenamedOptionModule [ "networking" "defaultMailServer" "useTLS" ] [ "services" "ssmtp" "useTLS" ])
(mkRenamedOptionModule [ "networking" "defaultMailServer" "useSTARTTLS" ] [ "services" "ssmtp" "useSTARTTLS" ])
(mkRenamedOptionModule [ "networking" "defaultMailServer" "authUser" ] [ "services" "ssmtp" "authUser" ])
(mkRenamedOptionModule [ "networking" "defaultMailServer" "authPassFile" ] [ "services" "ssmtp" "authPassFile" ])
(mkRenamedOptionModule [ "networking" "defaultMailServer" "setSendmail" ] [ "services" "ssmtp" "setSendmail" ])
(mkRemovedOptionModule [ "networking" "defaultMailServer" "authPass" ] "authPass has been removed since it leaks the clear-text password into the world-readable store. Use authPassFile instead and make sure it's not a store path")
(mkRemovedOptionModule [ "services" "ssmtp" "authPass" ] "authPass has been removed since it leaks the clear-text password into the world-readable store. Use authPassFile instead and make sure it's not a store path")
];
options = {
services.ssmtp = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Use the trivial Mail Transfer Agent (MTA)
<command>ssmtp</command> package to allow programs to send
e-mail. If you don't want to run a real MTA like
<command>sendmail</command> or <command>postfix</command> on
your machine, set this option to <literal>true</literal>, and
set the option
<option>services.ssmtp.hostName</option> to the
host name of your preferred mail server.
'';
};
settings = mkOption {
type = with types; attrsOf (oneOf [ bool str ]);
default = {};
description = ''
<citerefentry><refentrytitle>ssmtp</refentrytitle><manvolnum>5</manvolnum></citerefentry> configuration. Refer
to <link xlink:href="https://linux.die.net/man/5/ssmtp.conf"/> for details on supported values.
'';
example = literalExpression ''
{
Debug = true;
FromLineOverride = false;
}
'';
};
hostName = mkOption {
type = types.str;
example = "mail.example.org";
description = ''
The host name of the default mail server to use to deliver
e-mail. Can also contain a port number (ex: mail.example.org:587),
defaults to port 25 if no port is given.
'';
};
root = mkOption {
type = types.str;
default = "";
example = "root@example.org";
description = ''
The e-mail to which mail for users with UID &lt; 1000 is forwarded.
'';
};
domain = mkOption {
type = types.str;
default = "";
example = "example.org";
description = ''
The domain from which mail will appear to be sent.
'';
};
useTLS = mkOption {
type = types.bool;
default = false;
description = ''
Whether TLS should be used to connect to the default mail
server.
'';
};
useSTARTTLS = mkOption {
type = types.bool;
default = false;
description = ''
Whether the STARTTLS should be used to connect to the default
mail server. (This is needed for TLS-capable mail servers
running on the default SMTP port 25.)
'';
};
authUser = mkOption {
type = types.str;
default = "";
example = "foo@example.org";
description = ''
Username used for SMTP auth. Leave blank to disable.
'';
};
authPassFile = mkOption {
type = types.nullOr types.str;
default = null;
example = "/run/keys/ssmtp-authpass";
description = ''
Path to a file that contains the password used for SMTP auth. The file
should not contain a trailing newline, if the password does not contain one
(e.g. use <command>echo -n "password" > file</command>).
This file should be readable by the users that need to execute ssmtp.
'';
};
setSendmail = mkOption {
type = types.bool;
default = true;
description = "Whether to set the system sendmail to ssmtp's.";
};
};
};
config = mkIf cfg.enable {
assertions = [
{
assertion = cfg.useSTARTTLS -> cfg.useTLS;
message = "services.ssmtp.useSTARTTLS has no effect without services.ssmtp.useTLS";
}
];
services.ssmtp.settings = mkMerge [
({
MailHub = cfg.hostName;
FromLineOverride = mkDefault true;
UseTLS = cfg.useTLS;
UseSTARTTLS = cfg.useSTARTTLS;
})
(mkIf (cfg.root != "") { root = cfg.root; })
(mkIf (cfg.domain != "") { rewriteDomain = cfg.domain; })
(mkIf (cfg.authUser != "") { AuthUser = cfg.authUser; })
(mkIf (cfg.authPassFile != null) { AuthPassFile = cfg.authPassFile; })
];
# careful here: ssmtp REQUIRES all config lines to end with a newline char!
environment.etc."ssmtp/ssmtp.conf".text = with generators; toKeyValue {
mkKeyValue = mkKeyValueDefault {
mkValueString = value:
if value == true then "YES"
else if value == false then "NO"
else mkValueStringDefault {} value
;
} "=";
} cfg.settings;
environment.systemPackages = [pkgs.ssmtp];
services.mail.sendmailSetuidWrapper = mkIf cfg.setSendmail {
program = "sendmail";
source = "${pkgs.ssmtp}/bin/sendmail";
setuid = false;
setgid = false;
owner = "root";
group = "root";
};
};
}

View file

@ -69,6 +69,11 @@ with lib;
'')
(mkRemovedOptionModule [ "services" "quagga" ] "the corresponding package has been removed from nixpkgs")
(mkRemovedOptionModule [ "services" "seeks" ] "")
(mkRemovedOptionModule [ "services" "ssmtp" ] ''
The ssmtp package and the corresponding module have been removed due to
the program being unmaintained. The options `programs.msmtp.*` can be
used instead.
'')
(mkRemovedOptionModule [ "services" "venus" ] "The corresponding package was removed from nixpkgs.")
(mkRemovedOptionModule [ "services" "wakeonlan"] "This module was removed in favor of enabling it with networking.interfaces.<name>.wakeOnLan")
(mkRemovedOptionModule [ "services" "winstone" ] "The corresponding package was removed from nixpkgs.")

View file

@ -102,8 +102,8 @@ in
plugins = mkOption {
type = types.listOf types.package;
default = with pkgs; [ monitoring-plugins ssmtp mailutils ];
defaultText = literalExpression "[pkgs.monitoring-plugins pkgs.ssmtp pkgs.mailutils]";
default = with pkgs; [ monitoring-plugins msmtp mailutils ];
defaultText = literalExpression "[pkgs.monitoring-plugins pkgs.msmtp pkgs.mailutils]";
description = "
Packages to be added to the Nagios <envar>PATH</envar>.
Typically used to add plugins, but can be anything.

View file

@ -479,7 +479,7 @@ in
NoNewPrivileges = true;
LockPersonality = true;
RestrictRealtime = true;
SystemCallFilter = [ "@system-service" "~@priviledged" "@chown" ];
SystemCallFilter = [ "@system-service" "~@privileged" "@chown" ];
SystemCallArchitectures = "native";
RestrictAddressFamilies = "AF_INET AF_INET6 AF_UNIX";
};

View file

@ -21,6 +21,12 @@ in {
description = ''The interface name for tunnel traffic. Use "userspace-networking" (beta) to not use TUN.'';
};
permitCertUid = mkOption {
type = types.nullOr types.nonEmptyStr;
default = null;
description = "Username or user ID of the user allowed to to fetch Tailscale TLS certificates for the node.";
};
package = mkOption {
type = types.package;
default = pkgs.tailscale;
@ -38,7 +44,9 @@ in {
serviceConfig.Environment = [
"PORT=${toString cfg.port}"
''"FLAGS=--tun ${lib.escapeShellArg cfg.interfaceName}"''
];
] ++ (lib.optionals (cfg.permitCertUid != null) [
"TS_PERMIT_CERT_UID=${cfg.permitCertUid}"
]);
};
};
}

View file

@ -90,5 +90,5 @@ in with lib; {
(mkRemovedOptionModule [ "services" "zeronet" "logDir" ] "Zeronet will log by default in /var/lib/zeronet")
];
meta.maintainers = with maintainers; [ chiiruno ];
meta.maintainers = with maintainers; [ Madouura ];
}

View file

@ -161,5 +161,5 @@ in with lib; {
(mkRenamedOptionModule [ "services" "hydron" "baseDir" ] [ "services" "hydron" "dataDir" ])
];
meta.maintainers = with maintainers; [ chiiruno ];
meta.maintainers = with maintainers; [ Madouura ];
}

View file

@ -1,7 +1,46 @@
{ config, lib, pkgs, ... }:
with lib;
let
runXdgAutostart = config.services.xserver.desktopManager.runXdgAutostartIfNone;
in
{
services.xserver.desktopManager.session =
[ { name = "none";
start = "";
}
];
options = {
services.xserver.desktopManager.runXdgAutostartIfNone = mkOption {
type = types.bool;
default = false;
description = ''
Whether to run XDG autostart files for sessions without a desktop manager
(with only a window manager), these sessions usually don't handle XDG
autostart files by default.
Some services like <option>i18n.inputMethod</option> and
<option>service.earlyoom</option> use XDG autostart files to start.
If this option is not set to <literal>true</literal> and you are using
a window manager without a desktop manager, you need to manually start
them or running <package>dex</package> somewhere.
'';
};
};
config = mkMerge [
{
services.xserver.desktopManager.session = [
{
name = "none";
start = optionalString runXdgAutostart ''
/run/current-system/systemd/bin/systemctl --user start xdg-autostart-if-no-desktop-manager.target
'';
}
];
}
(mkIf runXdgAutostart {
systemd.user.targets.xdg-autostart-if-no-desktop-manager = {
description = "Run XDG autostart files";
# From `plasma-workspace`, `share/systemd/user/plasma-workspace@.target`.
requires = [ "xdg-desktop-autostart.target" "graphical-session.target" ];
before = [ "xdg-desktop-autostart.target" "graphical-session.target" ];
bindsTo = [ "graphical-session.target" ];
};
})
];
}

View file

@ -199,6 +199,9 @@ in
haste-server = handleTest ./haste-server.nix {};
haproxy = handleTest ./haproxy.nix {};
hardened = handleTest ./hardened.nix {};
hbase1 = handleTest ./hbase.nix { package=pkgs.hbase1; };
hbase2 = handleTest ./hbase.nix { package=pkgs.hbase2; };
hbase3 = handleTest ./hbase.nix { package=pkgs.hbase3; };
hedgedoc = handleTest ./hedgedoc.nix {};
herbstluftwm = handleTest ./herbstluftwm.nix {};
installed-tests = pkgs.recurseIntoAttrs (handleTest ./installed-tests {});
@ -591,6 +594,7 @@ in
xautolock = handleTest ./xautolock.nix {};
xfce = handleTest ./xfce.nix {};
xmonad = handleTest ./xmonad.nix {};
xmonad-xdg-autostart = handleTest ./xmonad-xdg-autostart.nix {};
xrdp = handleTest ./xrdp.nix {};
xss-lock = handleTest ./xss-lock.nix {};
xterm = handleTest ./xterm.nix {};

View file

@ -1,6 +1,6 @@
import ./make-test-python.nix ({ pkgs, ... }: {
name = "bcachefs";
meta.maintainers = with pkgs.lib.maintainers; [ chiiruno ];
meta.maintainers = with pkgs.lib.maintainers; [ Madouura ];
nodes.machine = { pkgs, ... }: {
virtualisation.emptyDiskImages = [ 4096 ];

30
nixos/tests/hbase.nix Normal file
View file

@ -0,0 +1,30 @@
import ./make-test-python.nix ({ pkgs, lib, package ? pkgs.hbase, ... }:
{
name = "hbase";
meta = with lib.maintainers; {
maintainers = [ illustris ];
};
nodes = {
hbase = { pkgs, ... }: {
services.hbase = {
enable = true;
inherit package;
# Needed for standalone mode in hbase 2+
# This setting and standalone mode are not suitable for production
settings."hbase.unsafe.stream.capability.enforce" = "false";
};
environment.systemPackages = with pkgs; [
package
];
};
};
testScript = ''
start_all()
hbase.wait_for_unit("hbase.service")
hbase.wait_until_succeeds("echo \"create 't1','f1'\" | sudo -u hbase hbase shell -n")
assert "NAME => 'f1'" in hbase.succeed("echo \"describe 't1'\" | sudo -u hbase hbase shell -n")
'';
})

View file

@ -9,8 +9,13 @@ import ./make-test-python.nix ({ lib, ... }:
{
services.mailcatcher.enable = true;
services.ssmtp.enable = true;
services.ssmtp.hostName = "localhost:1025";
programs.msmtp = {
enable = true;
accounts.default = {
host = "localhost";
port = 1025;
};
};
environment.systemPackages = [ pkgs.mailutils ];
};

View file

@ -0,0 +1,35 @@
import ./make-test-python.nix ({ lib, ... }: {
name = "xmonad-xdg-autostart";
meta.maintainers = with lib.maintainers; [ oxalica ];
nodes.machine = { pkgs, config, ... }: {
imports = [ ./common/x11.nix ./common/user-account.nix ];
test-support.displayManager.auto.user = "alice";
services.xserver.displayManager.defaultSession = "none+xmonad";
services.xserver.windowManager.xmonad.enable = true;
services.xserver.desktopManager.runXdgAutostartIfNone = true;
environment.systemPackages = [
(pkgs.writeTextFile {
name = "test-xdg-autostart";
destination = "/etc/xdg/autostart/test-xdg-autostart.desktop";
text = ''
[Desktop Entry]
Name=test-xdg-autoatart
Type=Application
Terminal=false
Exec=${pkgs.coreutils}/bin/touch ${config.users.users.alice.home}/xdg-autostart-executed
'';
})
];
};
testScript = { nodes, ... }:
let
user = nodes.machine.config.users.users.alice;
in
''
machine.wait_for_x()
machine.wait_for_file("${user.home}/xdg-autostart-executed")
'';
})

View file

@ -33,11 +33,10 @@ in mkDerivation rec {
};
patches = [
# Poppler requires at least C++17
# Fix build with poppler >= 22.01
(fetchpatch {
name = "use-c-17-for-pdf-on-linux-builds";
url = "https://aur.archlinux.org/cgit/aur.git/plain/use-c-17-for-pdf-on-linux-builds.patch?h=openboard";
sha256 = "sha256-M6HigpOo8ul7qaub4cd7/ATUc85HezEyKyDuzsrZvC8=";
url = "https://github.com/OpenBoard-org/OpenBoard/commit/3a9b043e0fafec08e4123f362dcb7750f7476b59.patch";
sha256 = "sha256-yD163FK79HBU1W7m6sLxhfsRo4r/38zYTFWgeyqwU1o=";
})
];

View file

@ -59,6 +59,10 @@ mkDerivation rec {
enableParallelBuilding = true;
preBuild = ''
make objects/parser.cxx
'';
postInstall = lib.optionalString stdenv.isDarwin ''
mkdir $out/Applications
mv $out/bin/*.app $out/Applications

View file

@ -0,0 +1,53 @@
{ buildGoModule, fetchFromGitHub, lib, libGL, nssmdns, pkg-config, xorg }:
buildGoModule rec {
pname = "keylight-controller-mschneider82";
version = "0.1.0";
src = fetchFromGitHub {
owner = "mschneider82";
repo = "keylight-control";
rev = "v${version}";
sha256 = "sha256-UZfbGihCgFBQE1oExuzCexoNgpVGwNoA9orjZ9fh4gA=";
};
vendorSha256 = "sha256-nFttVJbEAAGsrAglMphuw0wJ2Kf8sWB4HrpVqfHO76o=";
nativeBuildInputs = [
pkg-config
];
buildInputs = [
libGL
nssmdns
] ++ (with xorg; [
libX11
libX11.dev
libXcursor
libXext
libXi
libXinerama
libXrandr
libXxf86vm
xinput
]);
meta = with lib; {
description = "A desktop application to control Elgato Keylights";
longDescription = ''
Requires having:
* Elgato's Keylight paired to local wifi network.
* Service avahi with nssmdns enabled.
'';
license = licenses.mit;
homepage = "https://github.com/mschneider82/keylight-control";
maintainers = with maintainers; [ superherointj ];
};
}
# Note: Application errors on first executions but works on re-runs.
# Troubleshooting
# 1. Keylight lists at: `avahi-browse --all --resolve --ignore-local`
# 2. Ping Keylight's IP
# 3. Resolve Keylight's hostname: `getent hosts elgato-key-light-XXXX.local`

View file

@ -148,7 +148,7 @@ buildPythonApplication rec {
homepage = "https://lutris.net";
description = "Open Source gaming platform for GNU/Linux";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ chiiruno ];
maintainers = with maintainers; [ Madouura ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,28 @@
{ lib, fetchFromGitHub, buildGoModule }:
buildGoModule rec {
pname = "ydict";
version = "2.2.0";
src = fetchFromGitHub {
owner = "TimothyYe";
repo = "ydict";
rev = "v${version}";
sha256 = "sha256-zhjsXZsRk0UNijjqjGjZh4TiPxAM5p+ic3JMx2wrPeY=";
};
vendorSha256 = "sha256-O6czDfKD18rGVMIZv6II09oQu1w0ijQRuZRGt2gj9Cs=";
ldflags = [ "-s" "-w" "-X=main.Version=${version}" ];
# has no tests
doCheck = false;
meta = with lib; {
description = "A command-line Chinese dictionary";
homepage = "https://github.com/TimothyYe/ydict";
license = licenses.mit;
platforms = platforms.linux;
maintainers = with maintainers; [ zendo ];
};
}

View file

@ -24,7 +24,7 @@ mkDerivation rec {
description = "4chan browser in qt5";
homepage = "https://github.com/siavash119/qtchan";
license = licenses.mit;
maintainers = with maintainers; [ chiiruno ];
maintainers = with maintainers; [ Madouura ];
platforms = platforms.unix;
};
}

View file

@ -17,6 +17,8 @@
, openssl
, glibc
, nixosTests
, sparkSupport ? true
, spark
}:
with lib;
@ -52,6 +54,9 @@ let
--prefix PATH : "${makeBinPath [ bash coreutils which]}"\
--prefix JAVA_LIBRARY_PATH : "${makeLibraryPath buildInputs}"
done
'' + optionalString sparkSupport ''
# Add the spark shuffle service jar to YARN
cp ${spark.src}/yarn/spark-${spark.version}-yarn-shuffle.jar $out/lib/${untarDir}/share/hadoop/yarn/
'' + libPatches;
passthru = { inherit tests; };

View file

@ -6,6 +6,7 @@
, python3Packages
, extraPythonPackages ? [ ]
, coreutils
, hadoopSupport ? true
, hadoop
, RSupport ? true
, R
@ -17,12 +18,13 @@ let
spark = { pname, version, sha256, extraMeta ? {} }:
stdenv.mkDerivation rec {
inherit pname version;
jdk = if hadoopSupport then hadoop.jdk else jdk8;
src = fetchzip {
url = "mirror://apache/spark/${pname}-${version}/${pname}-${version}-bin-without-hadoop.tgz";
sha256 = sha256;
};
nativeBuildInputs = [ makeWrapper ];
buildInputs = [ jdk8 python3Packages.python ]
buildInputs = [ jdk python3Packages.python ]
++ extraPythonPackages
++ optional RSupport R;
@ -34,9 +36,11 @@ let
cp $out/lib/${untarDir}/conf/log4j.properties{.template,}
cat > $out/lib/${untarDir}/conf/spark-env.sh <<- EOF
export JAVA_HOME="${jdk8}"
export JAVA_HOME="${jdk}"
export SPARK_HOME="$out/lib/${untarDir}"
'' + optionalString hadoopSupport ''
export SPARK_DIST_CLASSPATH=$(${hadoop}/bin/hadoop classpath)
'' + ''
export PYSPARK_PYTHON="${python3Packages.python}/bin/${python3Packages.python.executable}"
export PYTHONPATH="\$PYTHONPATH:$PYTHONPATH"
${optionalString RSupport ''

View file

@ -1,76 +0,0 @@
{ lib
, stdenv
, fetchFromGitHub
, nix-update-script
, meson
, ninja
, vala
, pkg-config
, pantheon
, python3
, glib
, gtk3
, gtksourceview
, json-glib
, libsoup
, libgee
, wrapGAppsHook
}:
stdenv.mkDerivation rec {
pname = "ping";
version = "0.6.0";
src = fetchFromGitHub {
owner = "jeremyvaartjes";
repo = "ping";
rev = version;
sha256 = "1h9cdy2jxa2ffykjg89j21hazls32z9yyv3g0x07x3vizzl5xcij";
};
nativeBuildInputs = [
meson
ninja
vala
pkg-config
python3
wrapGAppsHook
];
buildInputs = [
glib
gtk3
gtksourceview
json-glib
libgee
libsoup
pantheon.granite
];
postPatch = ''
chmod +x meson/post_install.py
patchShebangs meson/post_install.py
'';
passthru = {
updateScript = nix-update-script {
attrPath = pname;
};
};
meta = with lib; {
description = "A helpful tool that lets you debug what part of your API is causing you issues";
homepage = "https://github.com/jeremyvaartjes/ping";
maintainers = with maintainers; [ xiorcale ] ++ teams.pantheon.members;
platforms = platforms.linux;
license = licenses.gpl3;
mainProgram = "com.github.jeremyvaartjes.ping";
# Does not build with vala 0.48 or later
# ../src/Application.vala:696.46-696.57: error: Assignment: Cannot convert from
# `GLib.HashTable<weak string,weak string>' to `GLib.HashTable<string,string>?'
# HashTable<string,string> tempDataList = Soup.Form.decode(testObjs[id].data);
# ^^^^^^^^^^^^
# Upstream has no activity since 28 Dec 2020
broken = true;
};
}

View file

@ -1,9 +1,9 @@
{ stdenv, lib, qt5, fetchurl, autoPatchelfHook, dpkg, glibc, cpio, xar, undmg, gtk3, pango }:
let
pname = "synology-drive-client";
buildNumber = "12682";
version = "3.0.2";
baseUrl = "https://global.download.synology.com/download/Utility/SynologyDriveClient";
buildNumber = "12920";
version = "3.1.0";
meta = with lib; {
description = "Desktop application to synchronize files and folders between the computer and the Synology Drive server.";
homepage = "https://www.synology.com/en-global/dsm/feature/drive";
@ -17,7 +17,7 @@ let
src = fetchurl {
url = "${baseUrl}/${version}-${buildNumber}/Ubuntu/Installer/x86_64/synology-drive-client-${buildNumber}.x86_64.deb";
sha256 = "19fd2r39lb7bb6vkxfxyq0gp3l7pk5wy9fl0r7qwhym2jpi8yv6l";
sha256 = "sha256-UAO/LwqPchIMhjdQP4METjVorMJsbvIDRkp4JxtZgOs=";
};
nativeBuildInputs = [ autoPatchelfHook dpkg ];
@ -47,7 +47,7 @@ let
src = fetchurl {
url = "${baseUrl}/${version}-${buildNumber}/Mac/Installer/synology-drive-client-${buildNumber}.dmg";
sha256 = "1mlv8gxzivgxm59mw1pd63yq9d7as79ihm7166qyy0h0b0m04q2m";
sha256 = "15wici8ycil1mfh5cf89rfan4kb93wfkdsd4kmpvzjj4bnddwlxa";
};
nativeBuildInputs = [ cpio xar undmg ];

View file

@ -135,9 +135,14 @@ runCommand
''}
}
siteAutoloads="$out/share/emacs/site-lisp/nix-generated-autoload.el"
touch $siteAutoloads
# Iterate over the array of inputs (avoiding nix's own interpolation)
for pkg in "''${requires[@]}"; do
linkEmacsPackage $pkg
find $pkg -name "*-autoloads.el" \
-exec echo \(load \"{}\" \'noerror \'nomessage\) \; >> $siteAutoloads
done
siteStart="$out/share/emacs/site-lisp/site-start.el"
@ -174,12 +179,12 @@ runCommand
> "$subdirs"
# Byte-compiling improves start-up time only slightly, but costs nothing.
$emacs/bin/emacs --batch -f batch-byte-compile "$siteStart" "$subdirs"
$emacs/bin/emacs --batch -f batch-byte-compile "$siteStart" "$subdirs" "$siteAutoloads"
${optionalString nativeComp ''
$emacs/bin/emacs --batch \
--eval "(add-to-list 'native-comp-eln-load-path \"$out/share/emacs/native-lisp/\")" \
-f batch-native-compile "$siteStart" "$subdirs"
-f batch-native-compile "$siteStart" "$subdirs" "$siteAutoloads"
''}
'';

View file

@ -44,4 +44,4 @@ export emacsWithPackages_siteLisp=@wrapperSiteLisp@
export EMACSNATIVELOADPATH="${newNativeLoadPath[*]}"
export emacsWithPackages_siteLispNative=@wrapperSiteLispNative@
exec @prog@ "$@"
exec @prog@ -l cl-loaddefs -l nix-generated-autoload "$@"

View file

@ -18,6 +18,7 @@
# Apache
apache = [
"https://dlcdn.apache.org/"
"https://www-eu.apache.org/dist/"
"https://ftp.wayne.edu/apache/"
"https://www.apache.org/dist/"

View file

@ -814,7 +814,11 @@ rec {
command ? "${package.meta.mainProgram or package.pname or package.name} --version",
version ? package.version,
}: runCommand "${package.name}-test-version" { nativeBuildInputs = [ package ]; meta.timeout = 60; } ''
${command} |& grep -Fw ${version}
touch $out
if output=$(${command} 2>&1); then
grep -Fw "${version}" - <<< "$output"
touch $out
else
echo "$output" >&2 && exit 1
fi
'';
}

View file

@ -59,6 +59,6 @@ buildGoModule rec {
homepage = "https://tinygo.org/";
description = "Go compiler for small places";
license = licenses.bsd3;
maintainers = with maintainers; [ chiiruno ];
maintainers = with maintainers; [ Madouura ];
};
}

View file

@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
homepage = "https://vlang.io/";
description = "Simple, fast, safe, compiled language for developing maintainable software";
license = licenses.mit;
maintainers = with maintainers; [ chiiruno ];
maintainers = with maintainers; [ Madouura ];
platforms = platforms.all;
};
}

View file

@ -8,12 +8,12 @@
buildPythonPackage rec {
pname = "aenum";
version = "3.1.8";
version = "3.1.11";
format = "setuptools";
src = fetchPypi {
inherit pname version;
sha256 = "8dbe15f446eb8264b788dfeca163fb0a043d408d212152397dc11377b851e4ae";
sha256 = "sha256-rtLCc1R65yoNXuhpcZwCpkPaFr9QfICVj6rcfgOOP3M=";
};
checkInputs = [

View file

@ -19,14 +19,14 @@
buildPythonPackage rec {
pname = "asyncssh";
version = "2.10.0";
version = "2.10.1";
format = "setuptools";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-WF5JmDzHlXFB4D7p9IvRU2pepXFdCqHOnM4Ecobmaws=";
sha256 = "sha256-SZuDbPWKnxknrStaQMPL0N042+CNLfj6is1TjCj8j6k=";
};
propagatedBuildInputs = [

View file

@ -9,7 +9,7 @@
buildPythonPackage rec {
pname = "casbin";
version = "1.15.4";
version = "1.15.5";
format = "setuptools";
disabled = pythonOlder "3.6";
@ -17,8 +17,8 @@ buildPythonPackage rec {
src = fetchFromGitHub {
owner = pname;
repo = "pycasbin";
rev = "v${version}";
sha256 = "0vczml14dvvrj401r08d6b0rfn5p5kfm1wr0vrfi8rqk2z5x1w0g";
rev = "refs/tags/v${version}";
sha256 = "sha256-7q9zTuqdIUAiipA5kh8CwQa/TeiXGsKuGGvYYwTjObw=";
};
propagatedBuildInputs = [

View file

@ -3,6 +3,7 @@
, blas
, buildPythonPackage
, fetchFromGitHub
, fetchpatch
, jaxlib
, lapack
, numpy
@ -19,7 +20,7 @@ let
in
buildPythonPackage rec {
pname = "jax";
version = "0.3.5";
version = "0.3.6";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -28,12 +29,18 @@ buildPythonPackage rec {
owner = "google";
repo = pname;
rev = "jax-v${version}";
hash = "sha256-c+5r0Xvd2zrIVF9VG+yve5QDvCcfMiOYp6JqaabowhA=";
hash = "sha256-eGdAEZFHadNTHgciP4KMYHdwksz9g6un0Ar+A/KV5TE=";
};
patches = [
# See https://github.com/google/jax/issues/7944
./cache-fix.patch
# See https://github.com/google/jax/issues/10292
(fetchpatch {
url = "https://github.com/google/jax/commit/cadc8046d56e0c1433cf48a2f106947d5f4ecbfd.patch";
hash = "sha256-jrpIqt4LzWAswt/Cpwtfa5d1Yn31HcXkVH3ETmaigA0=";
})
];
# jaxlib is _not_ included in propagatedBuildInputs because there are

View file

@ -7,7 +7,7 @@
buildPythonPackage rec {
pname = "lxmf";
version = "0.1.4";
version = "0.1.5";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -15,8 +15,8 @@ buildPythonPackage rec {
src = fetchFromGitHub {
owner = "markqvist";
repo = "lxmf";
rev = version;
hash = "sha256-kWawKlEAnn/uNjM2TT2aVW2V4M0+S/1Ysrw/muJhC0s=";
rev = "refs/tags/${version}";
hash = "sha256-9JG/EnL7vW4P7QiT6Xa0GLfmu1JeM0dlFSp3VRE47NI=";
};
propagatedBuildInputs = [

View file

@ -6,14 +6,14 @@
buildPythonPackage rec {
pname = "mailchecker";
version = "4.1.14";
version = "4.1.15";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-58LwaVwYzjYlIB3sAkMDat1FX8wA7IiAYBwPZ0hMOdE=";
hash = "sha256-DOtLJKNvmj5dlveZX9sScfJZa3SY7GH7xfZHhIsybVQ=";
};
# Module has no tests

View file

@ -15,6 +15,6 @@ buildPythonPackage rec {
description = "Python tools for creating Merkle trees, generating Merkle proofs, and verification of Merkle proofs";
homepage = "https://github.com/Tierion/pymerkletools";
license = licenses.mit;
maintainers = with maintainers; [ chiiruno ];
maintainers = with maintainers; [ Madouura ];
};
}

View file

@ -6,12 +6,12 @@
buildPythonPackage rec {
pname = "policyuniverse";
version = "1.5.0.20220414";
version = "1.5.0.20220416";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-BtNxU5NdOJfJejN4RpsUJJytWkQxJxbNjnY8hLPb3q0=";
sha256 = "sha256-RGXOqhXPsEQR5wcXDWz00J6KcdJOY5ZXSLVXT18wDDk=";
};
# Tests are not shipped and there are no GitHub tags

View file

@ -0,0 +1,38 @@
{ lib
, buildPythonPackage
, pythonOlder
, fetchPypi
, aiohttp
, pytest-asyncio
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "pytomorrowio";
version = "0.2.1";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
sha256 = "aabb41436fb5834b687d73b334d95be07a18d5943d27a1fd06271b749558ba0e";
};
propagatedBuildInputs = [
aiohttp
];
checkInputs = [
pytest-asyncio
pytestCheckHook
];
pythonImportsCheck = [ "pytomorrowio" ];
meta = {
description = "Async Python package to access the Tomorrow.io API";
homepage = "https://github.com/raman325/pytomorrowio";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ dotlambda ];
};
}

View file

@ -0,0 +1,33 @@
{ lib
, buildPythonPackage
, fetchPypi
, requests
}:
buildPythonPackage rec {
pname = "stookalert";
version = "0.1.4";
format = "setuptools";
src = fetchPypi {
inherit pname version;
sha256 = "38c479e2fb7668f9b37aff0f9ffdd7bfd1ee9393528f2d3d36b5911b40da70a1";
};
propagatedBuildInputs = [
requests
];
# upstream has no tests
doCheck = false;
pythonImportsCheck = [ "stookalert" ];
meta = {
description = "Python package for the RIVM Stookalert";
homepage = "https://github.com/fwestenberg/stookalert";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ dotlambda ];
};
}

View file

@ -7,11 +7,11 @@
buildPythonPackage rec {
pname = "types-cryptography";
version = "3.3.19";
version = "3.3.20";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-+VcTjwczMrnAfq2wgx76pXj9tgTlU6w41yxGeutLfCM=";
sha256 = "sha256-u+9bZpcllvPNYbMJFxn8k14IHzu6h+zqVhvA27Fnh1M=";
};
pythonImportsCheck = [

View file

@ -5,12 +5,12 @@
buildPythonPackage rec {
pname = "types-python-dateutil";
version = "2.8.10";
version = "2.8.11";
format = "setuptools";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-a886rnJC5Xk7r9eyvPtOJV63srMUSs0N8OGC3OWMytM=";
sha256 = "sha256-7cBdC5MgGSirC1/ysxRBPdPSsk6xLEcCl++Sned8k+8=";
};
pythonImportsCheck = [ "dateutil-stubs" ];

View file

@ -5,12 +5,12 @@
buildPythonPackage rec {
pname = "types-decorator";
version = "5.1.4";
version = "5.1.5";
format = "setuptools";
src = fetchPypi {
inherit pname version;
sha256 = "463c04b192108e2b3f409df8a3eaaf8d44e3e98965c11e473ed2a97da591798b";
sha256 = "sha256-CrPgAZyBGRIrXzD0IlUkcbkc8xOLPI69krQb1d3h3QI=";
};
# Modules doesn't have tests

View file

@ -6,11 +6,11 @@
buildPythonPackage rec {
pname = "types-paramiko";
version = "2.8.17";
version = "2.8.19";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-1toFPkau9cYpvE6lvatWZwhlNerg/P2N6EBpQ7g00uY=";
sha256 = "sha256-UhkthDZk73wfh7n+Bpe7u1qPgS5DAWlEz+q+x93spCM=";
};
pythonImportsCheck = [

View file

@ -6,12 +6,12 @@
buildPythonPackage rec {
pname = "types-requests";
version = "2.27.16";
version = "2.27.19";
format = "setuptools";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-yAEMGLKRp++2CxRS2+ElMLwlaT3WV+cMYoA/zcS//ps=";
sha256 = "sha256-eV43gRcIjR5L9BosAaFTtz1upAqp18CsdTq96EwNOo8=";
};
propagatedBuildInputs = [

View file

@ -5,11 +5,11 @@
buildPythonPackage rec {
pname = "types-tabulate";
version = "0.8.6";
version = "0.8.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-P037eVRJwheO1cIU7FEUwESx7t1xrQoQA7xnDwnYcQo=";
hash = "sha256-Cs0ClYZuXy3i6Qc4/wvBIBdR4d0Ci9MMv6Qap6Zpkp4=";
};
# Module doesn't have tests

View file

@ -5,12 +5,12 @@
buildPythonPackage rec {
pname = "types-urllib3";
version = "1.26.11";
version = "1.26.13";
format = "setuptools";
src = fetchPypi {
inherit pname version;
hash = "sha256-JNZORBFohR6wXx0CLeGK4xVY9WScjxEX44TC6F4xMVs=";
hash = "sha256-QPj7XozX1X6K797j/dXpMKoaG7QXnNrdVSJs6liK95A=";
};
# Module doesn't have tests

View file

@ -1,21 +1,22 @@
{ lib, buildGoPackage, fetchFromGitHub }:
buildGoPackage {
buildGoPackage rec {
pname = "easyjson";
version = "unstable-2019-06-26";
version = "0.7.7";
goPackagePath = "github.com/mailru/easyjson";
goDeps = ./deps.nix;
src = fetchFromGitHub {
owner = "mailru";
repo = "easyjson";
rev = "b2ccc519800e761ac8000b95e5d57c80a897ff9e";
sha256 = "0q85h383mhbkcjm2vqm72bi8n2252fv3c56q3lclzb8n2crnjcdk";
rev = "v${version}";
sha256 = "0clifkvvy8f45rv3cdyv58dglzagyvfcqb63wl6rij30c5j2pzc1";
};
meta = with lib; {
homepage = "https://github.com/mailru/easyjson";
description = "Fast JSON serializer for golang";
license = licenses.mit;
maintainers = with maintainers; [ chiiruno ];
maintainers = with maintainers; [ Madouura ];
};
}

11
pkgs/development/tools/easyjson/deps.nix generated Normal file
View file

@ -0,0 +1,11 @@
[
{
goPackagePath = "github.com/josharian/intern";
fetch = {
type = "git";
url = "https://github.com/josharian/intern";
rev = "8e6ff32b3e7c0b018c43953085fe2ac330fe9acd";
sha256 = "1za48ppvwd5vg8vv25ldmwz1biwpb3p6qhf8vazhsfdg9m07951c";
};
}
]

View file

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "quicktemplate";
version = "1.6.3";
version = "1.7.0";
src = fetchFromGitHub {
owner = "valyala";
repo = "quicktemplate";
rev = "v${version}";
sha256 = "mQhrQcKRDtcXha7FIwCIUwWfoPGIJ5YLbA4HdatIdn8=";
sha256 = "0xzsvhpllmzmyfg8sj1dpp02826j1plmyrdvqbwryzhf2ci33nqr";
};
vendorSha256 = null;
@ -17,7 +17,7 @@ buildGoModule rec {
homepage = "https://github.com/valyala/quicktemplate";
description = "Fast, powerful, yet easy to use template engine for Go";
license = licenses.mit;
maintainers = with maintainers; [ chiiruno ];
maintainers = with maintainers; [ Madouura ];
mainProgram = "qtc";
};
}

View file

@ -2,14 +2,14 @@
rustPlatform.buildRustPackage rec {
pname = "racer";
version = "2.1.48";
version = "2.2.1";
src = fetchCrate {
inherit pname version;
sha256 = "sha256-lat5s9+AMFI3VXiWqjLESZrtq3IwOZhlt+5BhYoonfA=";
sha256 = "sha256-uAVtJwOyhe1lPz+MUUFCgHJPVGuIk/lNUkQWiNdOZ5Y=";
};
cargoSha256 = "sha256-jGsvCmrPGVzWdx7V3J4bBK+SF2o+icORmVKuwqYxdh4=";
cargoSha256 = "sha256-U2mI1y6t8CwxW/iPcPzxAafu61GNm/XLCKVGuyybV/4=";
nativeBuildInputs = [ makeWrapper ];
buildInputs = lib.optional stdenv.isDarwin Security;
@ -32,6 +32,10 @@ rustPlatform.buildRustPackage rec {
"--skip test_resolve_global_path_in_modules"
];
# [2022-04-06] Its test suite contains two function calls with the
# wrong number of arguments, breaking its build.
doCheck = false;
doInstallCheck = true;
installCheckPhase = ''
$out/bin/racer --version
@ -42,7 +46,5 @@ rustPlatform.buildRustPackage rec {
homepage = "https://github.com/racer-rust/racer";
license = licenses.mit;
maintainers = with maintainers; [ jagajaga ];
# error[E0199]: implementing the trait `Step` is not unsafe
broken = true;
};
}

View file

@ -24,6 +24,6 @@ buildGoModule rec {
homepage = "https://github.com/rakyll/statik";
description = "Embed files into a Go executable ";
license = licenses.asl20;
maintainers = with maintainers; [ chiiruno ];
maintainers = with maintainers; [ Madouura ];
};
}

View file

@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
homepage = "https://github.com/kode54/dumb";
description = "Module/tracker based music format parser and player library";
license = licenses.free; # Derivative of GPL
maintainers = with maintainers; [ chiiruno ];
maintainers = with maintainers; [ Madouura ];
platforms = platforms.all;
};
}

View file

@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
homepage = "https://www.sndio.org";
description = "Small audio and MIDI framework part of the OpenBSD project";
license = licenses.isc;
maintainers = with maintainers; [ chiiruno ];
maintainers = with maintainers; [ Madouura ];
platforms = platforms.all;
};
}

View file

@ -1,22 +1,55 @@
{ lib, stdenv, fetchurl, makeWrapper }:
stdenv.mkDerivation rec {
pname = "hbase";
version = "0.98.24";
{ lib
, stdenv
, fetchurl
, makeWrapper
, jdk8_headless
, jdk11_headless
, nixosTests
}:
src = fetchurl {
url = "mirror://apache/hbase/${version}/hbase-${version}-hadoop2-bin.tar.gz";
sha256 = "0kz72wqsii09v9hxkw10mzyvjhji5sx3l6aijjalgbybavpcxglb";
let common = { version, hash, jdk ? jdk11_headless, tests }:
stdenv.mkDerivation rec {
pname = "hbase";
inherit version;
src = fetchurl {
url = "mirror://apache/hbase/${version}/hbase-${version}-bin.tar.gz";
inherit hash;
};
nativeBuildInputs = [ makeWrapper ];
installPhase = ''
mkdir -p $out
cp -R * $out
wrapProgram $out/bin/hbase --set-default JAVA_HOME ${jdk.home}
'';
passthru = { inherit tests; };
meta = with lib; {
description = "A distributed, scalable, big data store";
homepage = "https://hbase.apache.org";
license = licenses.asl20;
maintainers = with lib.maintainers; [ illustris ];
platforms = lib.platforms.linux;
};
};
nativeBuildInputs = [ makeWrapper ];
installPhase = ''
mkdir -p $out
cp -R * $out
'';
meta = with lib; {
description = "A distributed, scalable, big data store";
homepage = "https://hbase.apache.org";
license = licenses.asl20;
platforms = lib.platforms.linux;
in
{
hbase_1_7 = common {
version = "1.7.1";
hash = "sha256-DrH2G79QLT8L0YTTmAGC9pUWU8semSaTOsrsQRCI2rY=";
jdk = jdk8_headless;
tests.standalone = nixosTests.hbase1;
};
hbase_2_4 = common {
version = "2.4.11";
hash = "sha256-m0vjUtPaj8czHHh+rQNJJgrFAM744cHd06KE0ut7QeU=";
tests.standalone = nixosTests.hbase2;
};
hbase_3_0 = common {
version = "3.0.0-alpha-2";
hash = "sha256-QPvgO1BeFWvMT5PdUm/SL92ZgvSvYIuJbzolbBTenz4=";
tests.standalone = nixosTests.hbase3;
};
}

View file

@ -382,7 +382,8 @@
];
"climacell" = ps: with ps; [
pyclimacell
]; # missing inputs: pytomorrowio
pytomorrowio
];
"climate" = ps: with ps; [
];
"cloud" = ps: with ps; [
@ -2518,7 +2519,8 @@
pymodbus
]; # missing inputs: pystiebeleltron
"stookalert" = ps: with ps; [
]; # missing inputs: stookalert
stookalert
];
"stream" = ps: with ps; [
pyturbojpeg
aiohttp-cors
@ -2696,7 +2698,8 @@
"tomato" = ps: with ps; [
];
"tomorrowio" = ps: with ps; [
]; # missing inputs: pytomorrowio
pytomorrowio
];
"toon" = ps: with ps; [
pyturbojpeg
aiohttp-cors
@ -3191,6 +3194,7 @@
"canary"
"cast"
"cert_expiry"
"climacell"
"climate"
"cloud"
"cloudflare"
@ -3607,6 +3611,7 @@
"statistics"
"statsd"
"steamist"
"stookalert"
"stream"
"stt"
"subaru"
@ -3642,6 +3647,7 @@
"todoist"
"tolo"
"tomato"
"tomorrowio"
"toon"
"totalconnect"
"tplink"

View file

@ -14,6 +14,7 @@ let
lovelace = [ PyChromecast ];
nest = [ av ];
onboarding = [ pymetno radios rpi-bad-power ];
tomorrowio = [ pyclimacell ];
version = [ aioaseko ];
voicerss = [ mutagen ];
yandextts = [ mutagen ];

View file

@ -2,26 +2,24 @@
buildGoModule rec {
pname = "hydron";
version = "3.0.4";
version = "3.3.5";
src = fetchFromGitHub {
owner = "bakape";
repo = "hydron";
rev = "v${version}";
sha256 = "BfMkKwz7ITEnAIMGUHlBH/Dn9yLjWKoqFWupPo1s2cs=";
sha256 = "0c958dsw5pq9z8n1b9q9j8y6vgiqf6mmlsf77ncb7yrlilhbrz6s";
};
nativeBuildInputs = [ pkg-config ];
vendorSha256 = "sha256-hvmIOCqVZTfV7EnkDUWiChynGkwTpHClMbW4LpbdAgo=";
vendorSha256 = "0cc8ar8p7lgg6rj76vhfp6bzrxyn5yaqjwj8i1bn0zp6sj6zcfam";
proxyVendor = true;
nativeBuildInputs = [ pkg-config ];
buildInputs = [ ffmpeg ];
meta = with lib; {
homepage = "https://github.com/bakape/hydron";
description = "High performance media tagger and organizer";
license = licenses.lgpl3Plus;
maintainers = with maintainers; [ chiiruno ];
maintainers = with maintainers; [ Madouura ];
};
}

View file

@ -6,13 +6,13 @@
python3.pkgs.buildPythonApplication rec {
pname = "spotdl";
version = "3.9.4";
version = "3.9.5";
src = fetchFromGitHub {
owner = "spotDL";
repo = "spotify-downloader";
rev = "v${version}";
sha256 = "sha256-PJ9m+697bdrhHZ80wJvL6V366Vn3tmPfioK1sZAyB/Q=";
hash = "sha256-Zdm+OVcFgOO8kbJDNQSVDLnIHzhvm9EPbcG95mNrnTk=";
};
propagatedBuildInputs = with python3.pkgs; [
@ -22,10 +22,11 @@ python3.pkgs.buildPythonApplication rec {
rapidfuzz
mutagen
ytmusicapi
yt-dlp
beautifulsoup4
requests
unidecode
yt-dlp
setuptools
];
checkInputs = with python3.pkgs; [

View file

@ -1,40 +1,23 @@
{ lib, stdenv
, fetchFromGitHub
, fetchpatch
, autoreconfHook
, zlib
}:
stdenv.mkDerivation rec {
pname = "advancecomp";
version = "2.1";
version = "2.3";
src = fetchFromGitHub {
owner = "amadvance";
repo = "advancecomp";
rev = "v${version}";
sha256 = "1pd6czamamrd0ppk5a3a65hcgdlqwja98aandhqiajhnibwldv8x";
hash = "sha256-klyTqqZs5TwadgDP8LJ1wUhXlO+/kQPM6qhiSki31Q8=";
};
nativeBuildInputs = [ autoreconfHook ];
buildInputs = [ zlib ];
patches = [
(fetchpatch {
name = "CVE-2019-9210.patch";
url = "https://github.com/amadvance/advancecomp/commit/fcf71a89265c78fc26243574dda3a872574a5c02.patch";
sha256 = "0cdv9g87c1y8zwhqkd9ba2zjw4slcvg7yzcqv43idvnwb5fl29n7";
excludes = [ "doc/history.d" ];
})
# Pull upstream fix for gcc-11:
(fetchpatch {
name = "gcc-11.patch";
url = "https://github.com/amadvance/advancecomp/commit/7b08f7a2af3f66ab95437e4490499cebb20e5e41.patch";
sha256 = "0gpppq6b760m1429g7d808ipdgb4lrqc1b6xk2457y66pbaiwc9s";
})
];
# autover.sh relies on 'git describe', which obviously doesn't work as we're not cloning
# the full git repo. so we have to put the version number in `.version`, otherwise
# the binaries get built reporting "none" as their version number.

View file

@ -15,11 +15,11 @@ stdenv.mkDerivation rec {
cp edid-decode $out/bin
'';
meta = {
meta = with lib; {
description = "EDID decoder and conformance tester";
homepage = "https://cgit.freedesktop.org/xorg/app/edid-decode/";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.chiiruno ];
license = licenses.mit;
maintainers = with maintainers; [ Madouura ];
platforms = lib.platforms.all;
};
}

View file

@ -26,10 +26,10 @@ buildGoPackage rec {
--prefix COWPATH : $out/share/tewisay/cows
'';
meta = {
meta = with lib; {
homepage = "https://github.com/lucy/tewisay";
description = "Cowsay replacement with unicode and partial ansi escape support";
license = lib.licenses.cc0;
maintainers = [ lib.maintainers.chiiruno ];
license = licenses.cc0;
maintainers = with maintainers; [ Madouura ];
};
}

View file

@ -110,7 +110,8 @@ stdenv.mkDerivation rec {
"--disable-manual"
# Disable default CA bundle, use NIX_SSL_CERT_FILE or fallback
# to nss-cacert from the default profile.
"--without-ca-bundle"
# https://github.com/curl/curl/issues/8696 - fallback is not supported by HTTP3
(if http3Support then "--with-ca-bundle=/etc/ssl/certs/ca-certificates.crt" else "--without-ca-bundle")
"--without-ca-path"
(lib.enableFeature c-aresSupport "ares")
(lib.enableFeature ldapSupport "ldap")

View file

@ -1,45 +0,0 @@
{ lib, stdenv, fetchurl, tlsSupport ? true, openssl }:
stdenv.mkDerivation rec {
pname = "ssmtp";
version = "2.64";
src = fetchurl {
url = "mirror://debian/pool/main/s/ssmtp/ssmtp_${version}.orig.tar.bz2";
sha256 = "0dps8s87ag4g3jr6dk88hs9zl46h3790marc5c2qw7l71k4pvhr2";
};
# A request has been made to merge this patch into ssmtp.
# See: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=858781
patches = [ ./ssmtp_support_AuthPassFile_parameter.patch ];
configureFlags = [
"--sysconfdir=/etc"
(lib.enableFeature tlsSupport "ssl")
];
postConfigure = ''
# Don't run the script that interactively generates a config file.
# Also don't install the broken, cyclic symlink /lib/sendmail.
sed -e '/INSTALLED_CONFIGURATION_FILE/d' \
-e 's|/lib/sendmail|$(TMPDIR)/sendmail|' \
-i Makefile
substituteInPlace Makefile \
--replace '$(INSTALL) -s' '$(INSTALL) -s --strip-program $(STRIP)'
'';
installFlags = [ "etcdir=$(out)/etc" ];
installTargets = [ "install" "install-sendmail" ];
buildInputs = lib.optional tlsSupport openssl;
NIX_LDFLAGS = lib.optionalString tlsSupport "-lcrypto";
meta = with lib; {
description = "simple MTA to deliver mail from a computer to a mail hub";
platforms = platforms.linux;
license = licenses.gpl2;
maintainers = with maintainers; [ basvandijk ];
};
}

View file

@ -1,69 +0,0 @@
diff -Naurb a/ssmtp.c b/ssmtp.c
--- a/ssmtp.c 2009-11-23 10:55:11.000000000 +0100
+++ b/ssmtp.c 2017-03-25 03:00:26.508283016 +0100
@@ -57,6 +57,7 @@
char arpadate[ARPADATE_LENGTH];
char *auth_user = (char)NULL;
char *auth_pass = (char)NULL;
+char *auth_passfile = (char)NULL;
char *auth_method = (char)NULL; /* Mechanism for SMTP authentication */
char *mail_domain = (char)NULL;
char *from = (char)NULL; /* Use this as the From: address */
@@ -1053,6 +1054,15 @@
log_event(LOG_INFO, "Set AuthPass=\"%s\"\n", auth_pass);
}
}
+ else if(strcasecmp(p, "AuthPassFile") == 0 && !auth_passfile) {
+ if((auth_passfile = strdup(q)) == (char *)NULL) {
+ die("parse_config() -- strdup() failed");
+ }
+
+ if(log_level > 0) {
+ log_event(LOG_INFO, "Set AuthPassFile=\"%s\"\n", auth_passfile);
+ }
+ }
else if(strcasecmp(p, "AuthMethod") == 0 && !auth_method) {
if((auth_method = strdup(q)) == (char *)NULL) {
die("parse_config() -- strdup() failed");
@@ -1415,6 +1425,8 @@
struct passwd *pw;
int i, sock;
uid_t uid;
+ FILE *fp;
+ char pass_buf[BUF_SZ+1];
bool_t minus_v_save, leadingdot, linestart = True;
int timeout = 0;
int bufsize = sizeof(b)-1;
@@ -1433,6 +1445,17 @@
log_event(LOG_INFO, "%s not found", config_file);
}
+ if(auth_passfile != (char *)NULL) {
+ if((fp = fopen(auth_passfile, "r")) == (FILE *)NULL) {
+ die("Could not open the AuthPassFile %s", auth_passfile);
+ }
+ if (fgets(pass_buf, BUF_SZ, fp) == NULL) {
+ die("Error while reading a line from the AuthPassFile %s, or it is empty", auth_passfile);
+ }
+ fclose(fp);
+ auth_pass = strdup(pass_buf);
+ }
+
if((p = strtok(pw->pw_gecos, ";,"))) {
if((gecos = strdup(p)) == (char *)NULL) {
die("ssmtp() -- strdup() failed");
diff -Naurb a/ssmtp.conf.5 b/ssmtp.conf.5
--- a/ssmtp.conf.5 2008-02-29 03:50:15.000000000 +0100
+++ b/ssmtp.conf.5 2017-03-25 01:45:52.890165426 +0100
@@ -61,6 +61,11 @@
.Pp
.It Cm AuthPass
The password to use for SMTP AUTH.
+It is recommended to use AuthPassFile which also takes precedence over AuthPass.
+.Pp
+.It Cm AuthPassFile
+A file that should contain the password to use for SMTP AUTH.
+This takes precedence over AuthPass.
.Pp
.It Cm AuthMethod
The authorization method to use.

View file

@ -6,13 +6,13 @@
stdenv.mkDerivation rec {
pname = "home-manager";
version = "2021-12-25";
version = "2022-04-17";
src = fetchFromGitHub {
owner = "nix-community";
repo = "home-manager";
rev = "48f2b381dd397ec88040d3354ac9c036739ba139";
sha256 = "1i9v94brh9vhyhzcqyfj64nzhaibdj0sw74pxgk4bcsp0hqawgcd";
rev = "620ed197f3624dafa5f42e61d5c043f39b8df366";
sha256 = "sha256-BoBvGT71yOfrNDTZQs7+FX0zb4yjMBETgIjtTsdJw+o=";
};
nativeBuildInputs = [ makeWrapper ];

View file

@ -6,13 +6,13 @@
let
pname = "cryptomator";
version = "1.6.7";
version = "1.6.8";
src = fetchFromGitHub {
owner = "cryptomator";
repo = "cryptomator";
rev = version;
sha256 = "sha256-hOILOdVYBnS9XuEXaIJcf2bPF72Lcr7IBX4CFCIsC8k=";
sha256 = "sha256-2bvIjfutxfTPBtYiSXpgdEh63Eg74uqSf8CDo/Oma0U=";
};
# perform fake build to make a fixed-output derivation out of the files downloaded from maven central (120MB)
@ -37,7 +37,7 @@ let
outputHashAlgo = "sha256";
outputHashMode = "recursive";
outputHash = "sha256-XFqXjNjPN2vwA3jay7TS79S4FHksjjrODdD/p4oTvpg=";
outputHash = "sha256-quYUJX/JErtWuUQBYXXee/uZGkO0UBr4qxcGticxGUc=";
doCheck = false;
};
@ -46,9 +46,14 @@ in stdenv.mkDerivation rec {
inherit pname version src;
buildPhase = ''
VERSION=${version}
SEMVER_STR=${version}
mvn -Plinux package --offline -Dmaven.test.skip=true -Dmaven.repo.local=$(cp -dpR ${deps}/.m2 ./ && chmod +w -R .m2 && pwd)/.m2
'';
# This is based on the instructins in https://github.com/cryptomator/cryptomator/blob/develop/dist/linux/appimage/build.sh
installPhase = ''
mkdir -p $out/bin/ $out/share/cryptomator/libs/ $out/share/cryptomator/mods/
@ -63,10 +68,14 @@ in stdenv.mkDerivation rec {
makeWrapper ${jre}/bin/java $out/bin/cryptomator \
--add-flags "--class-path '$out/share/cryptomator/libs/*'" \
--add-flags "--module-path '$out/share/cryptomator/mods'" \
--add-flags "-Dcryptomator.logDir='~/.local/share/Cryptomator/logs'" \
--add-flags "-Dcryptomator.pluginDir='~/.local/share/Cryptomator/plugins'" \
--add-flags "-Dcryptomator.settingsPath='~/.config/Cryptomator/settings.json'" \
--add-flags "-Dcryptomator.ipcSocketPath='~/.config/Cryptomator/ipc.socket'" \
--add-flags "-Dcryptomator.logDir='~/.local/share/Cryptomator/logs'" \
--add-flags "-Dcryptomator.mountPointsDir='~/.local/share/Cryptomator/mnt'" \
--add-flags "-Dcryptomator.showTrayIcon=false" \
--add-flags "-Dcryptomator.buildNumber='nix'" \
--add-flags "-Dcryptomator.appVersion='${version}'" \
--add-flags "-Djdk.gtk.version=3" \
--add-flags "-Xss20m" \
--add-flags "-Xmx512m" \
@ -79,6 +88,14 @@ in stdenv.mkDerivation rec {
# install desktop entry and icons
cp -r ${src}/dist/linux/appimage/resources/AppDir/usr/* $out/
# The directory is read only when copied, enable read to install additional files
chmod +w -R $out/
cp ${src}/dist/linux/common/org.cryptomator.Cryptomator256.png $out/share/icons/hicolor/256x256/apps/org.cryptomator.Cryptomator.png
cp ${src}/dist/linux/common/org.cryptomator.Cryptomator512.png $out/share/icons/hicolor/512x512/apps/org.cryptomator.Cryptomator.png
cp ${src}/dist/linux/common/org.cryptomator.Cryptomator.svg $out/share/icons/hicolor/scalable/apps/org.cryptomator.Cryptomator.svg
cp ${src}/dist/linux/common/org.cryptomator.Cryptomator.desktop $out/share/applications/org.cryptomator.Cryptomator.desktop
cp ${src}/dist/linux/common/org.cryptomator.Cryptomator.metainfo.xml $out/share/metainfo/org.cryptomator.Cryptomator.metainfo.xml
cp ${src}/dist/linux/common/application-vnd.cryptomator.vault.xml $out/share/mime/packages/application-vnd.cryptomator.vault.xml
'';
nativeBuildInputs = [ autoPatchelfHook maven makeWrapper wrapGAppsHook jdk ];

View file

@ -5,16 +5,16 @@
buildGoModule rec {
pname = "nuclei";
version = "2.6.7";
version = "2.6.8";
src = fetchFromGitHub {
owner = "projectdiscovery";
repo = pname;
rev = "v${version}";
sha256 = "sha256-lW9QTk9TBXf/W483hGny9p2isoiDl3z0+UecDm9VLOs=";
sha256 = "sha256-XVABgsmPRNseWN+iNfbjicoNuHyZSrrlVOV3YEX7DPU=";
};
vendorSha256 = "sha256-oiRpxCAdxDjlUUHqRmpAHypmESQJpziOmBtTwKig7nk=";
vendorSha256 = "sha256-Mibn93EviweuEsMF2d1kQAJtss/ELlJQIZTM7To2dkg=";
modRoot = "./v2";
subPackages = [

View file

@ -32,6 +32,6 @@ stdenv.mkDerivation rec {
];
platforms = platforms.unix;
broken = stdenv.isAarch64; # undefined reference to `cpuinfo_arm_linux_init'
maintainers = with maintainers; [ chiiruno ];
maintainers = with maintainers; [ Madouura ];
};
}

View file

@ -26,16 +26,17 @@ in
stdenv.mkDerivation rec {
pname = "wl-mirror";
version = "0.10.0";
version = "0.11.2";
src = fetchFromGitHub {
owner = "Ferdi265";
repo = "wl-mirror";
rev = "v${version}";
hash = "sha256-ygzSLbzn4P/BdYbqUDduUGwSbRHeU/OBYOX2uznVy1g=";
hash = "sha256-D5uUKaepcSW9v2x6uBeLGXAyuLorlt4Lb6lZD/prfp8=";
};
patchPhase = ''
postPatch = ''
echo 'v${version}' > version.txt
substituteInPlace CMakeLists.txt \
--replace 'WL_PROTOCOL_DIR "/usr' 'WL_PROTOCOL_DIR "${wayland-protocols}' \
--replace 'WLR_PROTOCOL_DIR "/usr' 'WLR_PROTOCOL_DIR "${wlr-protocols}'

View file

@ -1207,6 +1207,7 @@ mapAliases ({
sqliteInteractive = throw "'sqliteInteractive' has been renamed to/replaced by 'sqlite-interactive'"; # Converted to throw 2022-02-22
squid4 = squid; # added 2019-08-22
sshfsFuse = throw "'sshfsFuse' has been renamed to/replaced by 'sshfs-fuse'"; # Converted to throw 2022-02-22
ssmtp = throw "'ssmtp' has been removed due to the software being unmaintained. 'msmtp' can be used as a replacement"; # Added 2022-04-17
stanchion = throw "Stanchion was part of riak-cs which is not maintained anymore"; # added 2020-10-14
steam-run-native = steam-run; # added 2022-02-21
stumpwm-git = throw "stumpwm-git has been broken for a long time and lispPackages.stumpwm follows Quicklisp that is close to git version"; # Added 2021-05-09

View file

@ -10231,8 +10231,6 @@ with pkgs;
sshoogr = callPackage ../tools/networking/sshoogr { };
ssmtp = callPackage ../tools/networking/ssmtp { };
ssocr = callPackage ../applications/misc/ssocr { };
ssss = callPackage ../tools/security/ssss { };
@ -21416,7 +21414,11 @@ with pkgs;
hasura-cli = callPackage ../servers/hasura/cli.nix { };
hbase = callPackage ../servers/hbase {};
inherit (callPackage ../servers/hbase {}) hbase_1_7 hbase_2_4 hbase_3_0;
hbase1 = hbase_1_7;
hbase2 = hbase_2_4;
hbase3 = hbase_3_0;
hbase = hbase2; # when updating, point to the latest stable release
headphones = callPackage ../servers/headphones {};
@ -26613,6 +26615,8 @@ with pkgs;
jackline = callPackage ../applications/networking/instant-messengers/jackline { };
keylight-controller-mschneider82 = callPackage ../applications/misc/keylight-controller-mschneider82 { };
leftwm = callPackage ../applications/window-managers/leftwm { };
levant = callPackage ../applications/networking/cluster/levant { };
@ -28008,8 +28012,6 @@ with pkgs;
pinegrow = callPackage ../applications/editors/pinegrow { };
ping = callPackage ../applications/networking/ping { };
piper = callPackage ../os-specific/linux/piper { };
pipe-viewer = perlPackages.callPackage ../applications/video/pipe-viewer {};
@ -30476,6 +30478,8 @@ with pkgs;
ydiff = with python3.pkgs; toPythonApplication ydiff;
ydict = callPackage ../applications/misc/ydict {};
yed = callPackage ../applications/graphics/yed {};
yeetgif = callPackage ../applications/graphics/yeetgif { };

View file

@ -6384,6 +6384,8 @@ in {
pythonfinder = callPackage ../development/python-modules/pythonfinder { };
pytomorrowio = callPackage ../development/python-modules/pytomorrowio { };
pyutil = callPackage ../development/python-modules/pyutil { };
pyzbar = callPackage ../development/python-modules/pyzbar { };
@ -9747,6 +9749,8 @@ in {
stone = callPackage ../development/python-modules/stone { };
stookalert = callPackage ../development/python-modules/stookalert { };
stopit = callPackage ../development/python-modules/stopit { };
strategies = callPackage ../development/python-modules/strategies { };

View file

@ -124,7 +124,7 @@ with import ./release-lib.nix { inherit supportedSystems nixpkgsArgs; };
smartmontools = all;
sqlite = unix; # Cygwin builds fail
squid = linux;
ssmtp = linux;
msmtp = linux;
stdenv = all;
strace = linux;
su = linux;