Merge master into staging-next

This commit is contained in:
Frederik Rietdijk 2020-11-01 10:10:47 +01:00
commit 7a8d5dc8a6
63 changed files with 591 additions and 329 deletions

@ -6613,6 +6613,12 @@
githubId = 131844;
name = "Igor Pashev";
};
pasqui23 = {
email = "p3dimaria@hotmail.it";
github = "pasqui23";
githubId = 6931743;
name = "pasqui23";
};
patryk27 = {
email = "wychowaniec.patryk@gmail.com";
github = "Patryk27";

@ -63,6 +63,7 @@ let
"--stringparam html.script './highlightjs/highlight.pack.js ./highlightjs/loader.js'"
"--param xref.with.number.and.title 1"
"--param toc.section.depth 0"
"--param generate.consistent.ids 1"
"--stringparam admon.style ''"
"--stringparam callout.graphics.extension .svg"
"--stringparam current.docid manual"

@ -106,6 +106,12 @@
</arg>
</arg>
<arg>
<arg choice='plain'>
<option>--keep-going</option>
</arg>
</arg>
<arg>
<arg choice='plain'>
<option>--help</option>
@ -301,6 +307,17 @@
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<option>--keep-going</option>
</term>
<listitem>
<para>
Causes Nix to continue building derivations as far as possible
in the face of failed builds.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<option>--help</option>

@ -132,6 +132,14 @@
to <package>nextcloud20</package>.
</para>
</listitem>
<listitem>
<para>
NixOS now emits a deprecation warning if systemd's <literal>StartLimitInterval</literal> setting is used in a <literal>serviceConfig</literal> section instead of in a <literal>unitConfig</literal>; that setting is deprecated and now undocumented for the service section by systemd upstream, but still effective and somewhat buggy there, which can be confusing. See <link xlink:href="https://github.com/NixOS/nixpkgs/issues/45785">#45785</link> for details.
</para>
<para>
All services should use <xref linkend="opt-systemd.services._name_.startLimitIntervalSec" /> or <literal>StartLimitIntervalSec</literal> in <xref linkend="opt-systemd.services._name_.unitConfig" /> instead.
</para>
</listitem>
</itemizedlist>
</section>
</section>

@ -64,7 +64,7 @@ while [ "$#" -gt 0 ]; do
--no-bootloader)
noBootLoader=1
;;
--show-trace|--impure)
--show-trace|--impure|--keep-going)
extraBuildFlags+=("$i")
;;
--help)

@ -25,19 +25,18 @@ in
];
config = mkIf cfg.enable {
systemd.services.hercules-ci-agent = {
wantedBy = [ "multi-user.target" ];
after = [ "network-online.target" ];
wants = [ "network-online.target" ];
path = [ config.nix.package ];
startLimitBurst = 30 * 1000000; # practically infinite
serviceConfig = {
User = "hercules-ci-agent";
ExecStart = command;
ExecStartPre = testCommand;
Restart = "on-failure";
RestartSec = 120;
StartLimitBurst = 30 * 1000000; # practically infinite
};
};

@ -40,10 +40,10 @@ let cfg = config.services.victoriametrics; in
systemd.services.victoriametrics = {
description = "VictoriaMetrics time series database";
after = [ "network.target" ];
startLimitBurst = 5;
serviceConfig = {
Restart = "on-failure";
RestartSec = 1;
StartLimitBurst = 5;
StateDirectory = "victoriametrics";
DynamicUser = true;
ExecStart = ''

@ -151,14 +151,13 @@ in with lib; {
description = "LCDproc - client";
after = [ "lcdd.service" ];
wantedBy = [ "lcd.target" ];
# Allow restarting for eternity
startLimitIntervalSec = lib.mkIf cfg.client.restartForever 0;
serviceConfig = serviceCfg // {
ExecStart = "${pkg}/bin/lcdproc -f -c ${clientCfg}";
# If the server is being restarted at the same time, the client will
# fail as it cannot connect, so space it out a bit.
RestartSec = "5";
# Allow restarting for eternity
StartLimitIntervalSec = lib.mkIf cfg.client.restartForever "0";
StartLimitBurst = lib.mkIf cfg.client.restartForever "0";
};
};
};

@ -427,12 +427,12 @@ in
wantedBy = [ "multi-user.target" ];
restartTriggers = [ cfg.configFile modulesDir ];
startLimitIntervalSec = 60; # 1 min
serviceConfig = {
ExecStart = "${dovecotPkg}/sbin/dovecot -F";
ExecReload = "${dovecotPkg}/sbin/doveadm reload";
Restart = "on-failure";
RestartSec = "1s";
StartLimitInterval = "1min";
RuntimeDirectory = [ "dovecot2" ];
};

@ -37,9 +37,9 @@ in {
description = "Autorandr execution hook";
after = [ "sleep.target" ];
startLimitIntervalSec = 5;
startLimitBurst = 1;
serviceConfig = {
StartLimitInterval = 5;
StartLimitBurst = 1;
ExecStart = "${pkgs.autorandr}/bin/autorandr --batch --change --default ${cfg.defaultTarget}";
Type = "oneshot";
RemainAfterExit = false;

@ -126,12 +126,12 @@ in
GPU_USE_SYNC_OBJECTS = "1";
};
startLimitIntervalSec = 60; # 1 min
serviceConfig = {
ExecStart = "${pkgs.cgminer}/bin/cgminer --syslog --text-only --config ${cgminerConfig}";
User = cfg.user;
RestartSec = "30s";
Restart = "always";
StartLimitInterval = "1m";
};
};

@ -32,14 +32,14 @@ in
wantedBy = [ "graphical-session.target" ];
partOf = [ "graphical-session.target" ];
startLimitIntervalSec = 350;
startLimitBurst = 10;
serviceConfig = {
ExecStart = ''
${pkgs.safeeyes}/bin/safeeyes
'';
Restart = "on-failure";
RestartSec = 3;
StartLimitInterval = 350;
StartLimitBurst = 10;
};
};

@ -45,7 +45,7 @@ let
cmdlineArgs = cfg.extraFlags ++ [
"--storage.tsdb.path=${workingDir}/data/"
"--config.file=${prometheusYml}"
"--config.file=/run/prometheus/prometheus-substituted.yaml"
"--web.listen-address=${cfg.listenAddress}:${builtins.toString cfg.port}"
"--alertmanager.notification-queue-capacity=${toString cfg.alertmanagerNotificationQueueCapacity}"
"--alertmanager.timeout=${toString cfg.alertmanagerTimeout}s"
@ -522,6 +522,45 @@ in {
'';
};
environmentFile = mkOption {
type = types.nullOr types.path;
default = null;
example = "/root/prometheus.env";
description = ''
Environment file as defined in <citerefentry>
<refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum>
</citerefentry>.
Secrets may be passed to the service without adding them to the
world-readable Nix store, by specifying placeholder variables as
the option value in Nix and setting these variables accordingly in the
environment file.
Environment variables from this file will be interpolated into the
config file using envsubst with this syntax:
<literal>$ENVIRONMENT ''${VARIABLE}</literal>
<programlisting>
# Example scrape config entry handling an OAuth bearer token
{
job_name = "home_assistant";
metrics_path = "/api/prometheus";
scheme = "https";
bearer_token = "\''${HOME_ASSISTANT_BEARER_TOKEN}";
[...]
}
</programlisting>
<programlisting>
# Content of the environment file
HOME_ASSISTANT_BEARER_TOKEN=someoauthbearertoken
</programlisting>
Note that this file needs to be available on the host on which
<literal>Prometheus</literal> is running.
'';
};
configText = mkOption {
type = types.nullOr types.lines;
default = null;
@ -662,12 +701,19 @@ in {
systemd.services.prometheus = {
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ];
preStart = ''
${lib.getBin pkgs.envsubst}/bin/envsubst -o "/run/prometheus/prometheus-substituted.yaml" \
-i "${prometheusYml}"
'';
serviceConfig = {
ExecStart = "${cfg.package}/bin/prometheus" +
optionalString (length cmdlineArgs != 0) (" \\\n " +
concatStringsSep " \\\n " cmdlineArgs);
User = "prometheus";
Restart = "always";
EnvironmentFile = mkIf (cfg.environmentFile != null) [ cfg.environmentFile ];
RuntimeDirectory = "prometheus";
RuntimeDirectoryMode = "0700";
WorkingDirectory = workingDir;
StateDirectory = cfg.stateDir;
};

@ -31,14 +31,14 @@ in
after = [ "NetworkManager-wait-online.service" "network.target" ];
preStart = "mkdir -pv /var/lib/teamviewer /var/log/teamviewer";
startLimitIntervalSec = 60;
startLimitBurst = 10;
serviceConfig = {
Type = "forking";
ExecStart = "${pkgs.teamviewer}/bin/teamviewerd -d";
PIDFile = "/run/teamviewerd.pid";
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
Restart = "on-abort";
StartLimitInterval = "60";
StartLimitBurst = "10";
};
};
};

@ -28,6 +28,9 @@ let
# Don't start services that are not yet initialized
unitConfig.ConditionPathExists = "/var/lib/${stateDirectory}/keyring";
startLimitBurst =
if daemonType == "osd" then 30 else if lib.elem daemonType ["mgr" "mds"] then 3 else 5;
startLimitIntervalSec = 60 * 30; # 30 mins
serviceConfig = {
LimitNOFILE = 1048576;
@ -39,8 +42,6 @@ let
ProtectHome = "true";
ProtectSystem = "full";
Restart = "on-failure";
StartLimitBurst = "5";
StartLimitInterval = "30min";
StateDirectory = stateDirectory;
User = "ceph";
Group = if daemonType == "osd" then "disk" else "ceph";
@ -48,13 +49,10 @@ let
-f --cluster ${clusterName} --id ${daemonId}'';
} // optionalAttrs (daemonType == "osd") {
ExecStartPre = ''${ceph.lib}/libexec/ceph/ceph-osd-prestart.sh --id ${daemonId} --cluster ${clusterName}'';
StartLimitBurst = "30";
RestartSec = "20s";
PrivateDevices = "no"; # osd needs disk access
} // optionalAttrs ( daemonType == "mon") {
RestartSec = "10";
} // optionalAttrs (lib.elem daemonType ["mgr" "mds"]) {
StartLimitBurst = "3";
};
});

@ -264,10 +264,10 @@ in
''
);
startLimitIntervalSec = 0;
serviceConfig = {
Type = "forking";
Restart = "always";
StartLimitInterval = 0;
RestartSec = 1;
CapabilityBoundingSet = "CAP_NET_ADMIN CAP_NET_RAW CAP_SETUID";
ProtectSystem = true;

@ -41,6 +41,7 @@ in {
systemd.services.dnsdist = {
wantedBy = [ "multi-user.target" ];
startLimitIntervalSec = 0;
serviceConfig = {
DynamicUser = true;

@ -29,9 +29,9 @@ with lib;
# Needed for ping
"/run/wrappers"
];
startLimitBurst = 5;
startLimitIntervalSec = 20;
serviceConfig = {
StartLimitBurst = 5;
StartLimitIntervalSec = 20;
ExecStart = "${pkgs.mullvad-vpn}/bin/mullvad-daemon -v --disable-stdout-timestamps";
Restart = "always";
RestartSec = 1;

@ -165,6 +165,8 @@ in
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
startLimitIntervalSec = 120;
startLimitBurst = 5;
serviceConfig = {
User = "namecoin";
Group = "namecoin";
@ -176,8 +178,6 @@ in
TimeoutStopSec = "60s";
TimeoutStartSec = "2s";
Restart = "always";
StartLimitInterval = "120s";
StartLimitBurst = "5";
};
preStart = optionalString (cfg.wallet != "${dataDir}/wallet.dat") ''

@ -28,9 +28,9 @@ in {
environment = {
SERVICE_RUN_MODE = "1";
};
startLimitIntervalSec = 5;
startLimitBurst = 10;
serviceConfig = {
StartLimitInterval = 5;
StartLimitBurst = 10;
ExecStart = "${pkgs.nextdns}/bin/nextdns run ${escapeShellArgs config.services.nextdns.arguments}";
RestartSec = 120;
LimitMEMLOCK = "infinity";

@ -42,9 +42,9 @@ in
description = "A HTTP nix store that proxies requests to Google Storage";
wantedBy = ["multi-user.target"];
startLimitIntervalSec = 10;
serviceConfig = {
RestartSec = 5;
StartLimitInterval = 10;
ExecStart = ''
${pkgs.nix-store-gcs-proxy}/bin/nix-store-gcs-proxy \
--bucket-name ${cfg.bucketName} \

@ -916,14 +916,14 @@ in
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
startLimitBurst = 4;
startLimitIntervalSec = 5 * 60; # 5 mins
serviceConfig = {
ExecStart = "${nsdPkg}/sbin/nsd -d -c ${nsdEnv}/nsd.conf";
StandardError = "null";
PIDFile = pidFile;
Restart = "always";
RestartSec = "4s";
StartLimitBurst = 4;
StartLimitInterval = "5min";
};
preStart = ''

@ -103,6 +103,8 @@ in
rm -f '${cfg.stateDir}/supybot.cfg.bak'
'';
startLimitIntervalSec = 5 * 60; # 5 min
startLimitBurst = 1;
serviceConfig = {
ExecStart = "${pyEnv}/bin/supybot ${cfg.stateDir}/supybot.cfg";
PIDFile = "/run/supybot.pid";
@ -110,8 +112,6 @@ in
Group = "supybot";
UMask = "0007";
Restart = "on-abort";
StartLimitInterval = "5m";
StartLimitBurst = "1";
NoNewPrivileges = true;
PrivateDevices = true;

@ -25,10 +25,7 @@ in {
wants = [ "network-pre.target" ];
wantedBy = [ "multi-user.target" ];
unitConfig = {
StartLimitIntervalSec = 0;
StartLimitBurst = 0;
};
startLimitIntervalSec = 0;
serviceConfig = {
ExecStart =

@ -131,6 +131,8 @@ in
restartIfChanged = false; # do not restart on "nixos-rebuild switch". It would seal the storage and disrupt the clients.
startLimitIntervalSec = 60;
startLimitBurst = 3;
serviceConfig = {
User = "vault";
Group = "vault";
@ -145,8 +147,6 @@ in
KillSignal = "SIGINT";
TimeoutStopSec = "30s";
Restart = "on-failure";
StartLimitInterval = "60s";
StartLimitBurst = 3;
};
unitConfig.RequiresMountsFor = optional (cfg.storagePath != null) cfg.storagePath;

@ -224,6 +224,8 @@ in
chmod -R u+w ${dataDir}/${wikiIdent}/underlay
'';
startLimitIntervalSec = 30;
serviceConfig = {
User = user;
Group = group;
@ -237,7 +239,6 @@ in
Restart = "on-failure";
RestartSec = "2s";
StartLimitIntervalSec = "30s";
StateDirectory = "moin/${wikiIdent}";
StateDirectoryMode = "0750";

@ -101,6 +101,8 @@ in {
after = [ "network-online.target" ];
wants = [ "network-online.target" ]; # systemd-networkd-wait-online.service
wantedBy = [ "multi-user.target" ];
startLimitIntervalSec = 14400;
startLimitBurst = 10;
serviceConfig = {
ExecStart = "${cfg.package}/bin/caddy run --config ${configJSON}";
ExecReload = "${cfg.package}/bin/caddy reload --config ${configJSON}";
@ -108,8 +110,6 @@ in {
User = "caddy";
Group = "caddy";
Restart = "on-abnormal";
StartLimitIntervalSec = 14400;
StartLimitBurst = 10;
AmbientCapabilities = "cap_net_bind_service";
CapabilityBoundingSet = "cap_net_bind_service";
NoNewPrivileges = true;

@ -693,6 +693,8 @@ in
${cfg.preStart}
${execCommand} -t
'';
startLimitIntervalSec = 60;
serviceConfig = {
ExecStart = execCommand;
ExecReload = [
@ -701,7 +703,6 @@ in
];
Restart = "always";
RestartSec = "10s";
StartLimitInterval = "1min";
# User and group
User = cfg.user;
Group = cfg.group;

@ -136,6 +136,8 @@ in {
description = "Traefik web server";
after = [ "network-online.target" ];
wantedBy = [ "multi-user.target" ];
startLimitIntervalSec = 86400;
startLimitBurst = 5;
serviceConfig = {
ExecStart =
"${cfg.package}/bin/traefik --configfile=${staticConfigFile}";
@ -143,8 +145,6 @@ in {
User = "traefik";
Group = cfg.group;
Restart = "on-failure";
StartLimitInterval = 86400;
StartLimitBurst = 5;
AmbientCapabilities = "cap_net_bind_service";
CapabilityBoundingSet = "cap_net_bind_service";
NoNewPrivileges = true;

@ -678,14 +678,14 @@ in
script = "${cfg.displayManager.job.execCmd}";
# Stop restarting if the display manager stops (crashes) 2 times
# in one minute. Starting X typically takes 3-4s.
startLimitIntervalSec = 30;
startLimitBurst = 3;
serviceConfig = {
Restart = "always";
RestartSec = "200ms";
SyslogIdentifier = "display-manager";
# Stop restarting if the display manager stops (crashes) 2 times
# in one minute. Starting X typically takes 3-4s.
StartLimitInterval = "30s";
StartLimitBurst = "3";
};
};

@ -210,12 +210,21 @@ in rec {
'';
};
startLimitBurst = mkOption {
type = types.int;
description = ''
Configure unit start rate limiting. Units which are started
more than startLimitBurst times within an interval time
interval are not permitted to start any more.
'';
};
startLimitIntervalSec = mkOption {
type = types.int;
description = ''
Configure unit start rate limiting. Units which are started
more than burst times within an interval time interval are
not permitted to start any more.
more than startLimitBurst times within an interval time
interval are not permitted to start any more.
'';
};
@ -245,8 +254,7 @@ in rec {
serviceConfig = mkOption {
default = {};
example =
{ StartLimitInterval = 10;
RestartSec = 5;
{ RestartSec = 5;
};
type = types.addCheck (types.attrsOf unitOption) checkService;
description = ''

@ -243,6 +243,8 @@ let
OnFailure = toString config.onFailure; }
// optionalAttrs (options.startLimitIntervalSec.isDefined) {
StartLimitIntervalSec = toString config.startLimitIntervalSec;
} // optionalAttrs (options.startLimitBurst.isDefined) {
StartLimitBurst = toString config.startLimitBurst;
};
};
};
@ -884,14 +886,25 @@ in
config = {
warnings = concatLists (mapAttrsToList (name: service:
let
type = service.serviceConfig.Type or "";
restart = service.serviceConfig.Restart or "no";
in optional
(type == "oneshot" && (restart == "always" || restart == "on-success"))
"Service '${name}.service' with 'Type=oneshot' cannot have 'Restart=always' or 'Restart=on-success'")
cfg.services);
warnings = concatLists (
mapAttrsToList
(name: service:
let
type = service.serviceConfig.Type or "";
restart = service.serviceConfig.Restart or "no";
hasDeprecated = builtins.hasAttr "StartLimitInterval" service.serviceConfig;
in
concatLists [
(optional (type == "oneshot" && (restart == "always" || restart == "on-success"))
"Service '${name}.service' with 'Type=oneshot' cannot have 'Restart=always' or 'Restart=on-success'"
)
(optional hasDeprecated
"Service '${name}.service' uses the attribute 'StartLimitInterval' in the Service section, which is deprecated. See https://github.com/NixOS/nixpkgs/issues/45786."
)
]
)
cfg.services
);
system.build.units = cfg.units;

@ -11,26 +11,105 @@ import ./make-test-python.nix ({ pkgs, esr ? false, ... }: {
environment.systemPackages =
(if esr then [ pkgs.firefox-esr ] else [ pkgs.firefox ])
++ [ pkgs.xdotool ];
# Need some more memory to record audio.
virtualisation.memorySize = "500";
# Create a virtual sound device, with mixing
# and all, for recording audio.
boot.kernelModules = [ "snd-aloop" ];
sound.enable = true;
sound.extraConfig = ''
pcm.!default {
type plug
slave.pcm pcm.dmixer
}
pcm.dmixer {
type dmix
ipc_key 1
slave {
pcm "hw:Loopback,0,0"
rate 48000
periods 128
period_time 0
period_size 1024
buffer_size 8192
}
}
pcm.recorder {
type hw
card "Loopback"
device 1
subdevice 0
}
'';
systemd.services.audio-recorder = {
description = "Record NixOS test audio to /tmp/record.wav";
script = "${pkgs.alsaUtils}/bin/arecord -D recorder -f S16_LE -r48000 /tmp/record.wav";
};
};
testScript = ''
from contextlib import contextmanager
@contextmanager
def audio_recording(machine: Machine) -> None:
"""
Perform actions while recording the
machine audio output.
"""
machine.systemctl("start audio-recorder")
yield
machine.systemctl("stop audio-recorder")
def wait_for_sound(machine: Machine) -> None:
"""
Wait until any sound has been emitted.
"""
machine.wait_for_file("/tmp/record.wav")
while True:
# Get at most 2M of the recording
machine.execute("tail -c 2M /tmp/record.wav > /tmp/last")
# Get the exact size
size = int(machine.succeed("stat -c '%s' /tmp/last").strip())
# Compare it against /dev/zero using `cmp` (skipping 50B of WAVE header).
# If some non-NULL bytes are found it returns 1.
status, output = machine.execute(
f"cmp -i 50 -n {size - 50} /tmp/last /dev/zero 2>&1"
)
if status == 1:
break
machine.sleep(2)
machine.wait_for_x()
with subtest("wait until Firefox has finished loading the Valgrind docs page"):
with subtest("Wait until Firefox has finished loading the Valgrind docs page"):
machine.execute(
"xterm -e 'firefox file://${pkgs.valgrind.doc}/share/doc/valgrind/html/index.html' &"
)
machine.wait_for_window("Valgrind")
machine.sleep(40)
with subtest("Check whether Firefox can play sound"):
with audio_recording(machine):
machine.succeed(
"firefox file://${pkgs.sound-theme-freedesktop}/share/sounds/freedesktop/stereo/phone-incoming-call.oga &"
)
wait_for_sound(machine)
machine.copy_from_vm("/tmp/record.wav")
with subtest("Close sound test tab"):
machine.execute("xdotool key ctrl+w")
with subtest("Close default browser prompt"):
machine.execute("xdotool key space")
with subtest("Hide default browser window"):
machine.sleep(2)
machine.execute("xdotool key F12")
with subtest("wait until Firefox draws the developer tool panel"):
with subtest("Wait until Firefox draws the developer tool panel"):
machine.sleep(10)
machine.succeed("xwininfo -root -tree | grep Valgrind")
machine.screenshot("screen")

@ -118,7 +118,7 @@ let
# to keep backwards compatibility
legacyWrapper = neovim: {
extraMakeWrapperArgs ? []
extraMakeWrapperArgs ? ""
, withPython ? true
/* the function you would have passed to python.withPackages */
, extraPythonPackages ? (_: [])
@ -147,13 +147,9 @@ let
};
in
wrapNeovimUnstable neovim (res // {
wrapperArgs = res.wrapperArgs
++ [
"--add-flags" "-u ${writeText "init.vim" res.neovimRcContent}"
]
++ (if builtins.isList extraMakeWrapperArgs then extraMakeWrapperArgs
else lib.warn "Passing a string as extraMakeWrapperArgs to the neovim wrapper is
deprecated, please use a list instead")
wrapperArgs = lib.escapeShellArgs (
res.wrapperArgs ++ [ "--add-flags" "-u ${writeText "init.vim" res.neovimRcContent}" ])
+ " " + extraMakeWrapperArgs
;
});
in

@ -14,7 +14,7 @@ neovim:
let
wrapper = {
# should contain all args but the binary
wrapperArgs ? []
wrapperArgs ? ""
, manifestRc ? null
, withPython2 ? true, python2Env ? null
, withPython3 ? true, python3Env ? null
@ -33,7 +33,7 @@ let
# wrapper with most arguments we need, excluding those that cause problems to
# generate rplugin.vim, but still required for the final wrapper.
finalMakeWrapperArgs =
[ "${neovim}/bin/nvim" "${placeholder "out"}/bin/nvim" ] ++ wrapperArgs ++
[ "${neovim}/bin/nvim" "${placeholder "out"}/bin/nvim" ] ++
[ "--set" "NVIM_SYSTEM_RPLUGIN_MANIFEST" "${placeholder "out"}/rplugin.vim" ];
in
symlinkJoin {
@ -66,11 +66,11 @@ let
''
+ optionalString (manifestRc != null) (let
manifestWrapperArgs =
[ "${neovim}/bin/nvim" "${placeholder "out"}/bin/nvim-wrapper" ] ++ wrapperArgs;
[ "${neovim}/bin/nvim" "${placeholder "out"}/bin/nvim-wrapper" ];
in ''
echo "Generating remote plugin manifest"
export NVIM_RPLUGIN_MANIFEST=$out/rplugin.vim
makeWrapper ${lib.escapeShellArgs manifestWrapperArgs}
makeWrapper ${lib.escapeShellArgs manifestWrapperArgs} ${wrapperArgs}
# Some plugins assume that the home directory is accessible for
# initializing caches, temporary files, etc. Even if the plugin isn't
@ -100,7 +100,7 @@ let
'')
+ ''
rm $out/bin/nvim
makeWrapper ${lib.escapeShellArgs finalMakeWrapperArgs}
makeWrapper ${lib.escapeShellArgs finalMakeWrapperArgs} ${wrapperArgs}
'';
paths = [ neovim ];

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "hugo";
version = "0.76.5";
version = "0.77.0";
src = fetchFromGitHub {
owner = "gohugoio";
repo = pname;
rev = "v${version}";
sha256 = "0p7zz9cif1vihhs21nvh4n3y1p2cwpga59rilpam7yvza4nzx7ay";
sha256 = "1vjqddcbk8afqkjzrj9wwvz697bxhv9vz0rk2vj2ji6lz1slhc56";
};
vendorSha256 = "0kiqy8n2df52gsgsbmr96rph8lpnw06g622123hlwk7kqg0z9ifh";
vendorSha256 = "03xv188jw5scqd6a8xd2s13vkn721d37bgs6a6rik7pgqmjh46c6";
doCheck = false;

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "cloudflared";
version = "2020.10.0";
version = "2020.10.2";
src = fetchFromGitHub {
owner = "cloudflare";
repo = "cloudflared";
rev = version;
sha256 = "1ssmyll13pf19fxq34iw4x7ps8p4mcg9nwlx00hp5sahhwx4iz01";
sha256 = "0ppl74gb46r2x65hl7z1hjdqlr8la0pvhy8af8isk11sbxmprqjj";
};
vendorSha256 = null;

@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "git-gone";
version = "0.3.6";
version = "0.3.7";
src = fetchFromGitHub {
owner = "lunaryorn";
repo = pname;
rev = "v${version}";
sha256 = "0wpmabd5lshsga3dhv1hix7i99f1f82rpl6kjmpi315whg11kki3";
sha256 = "0hhy1yazda9r4n753a5m9jf31fbzmm4v8wvl3pksspj2syglmll8";
};
cargoSha256 = "0ayqsrhy6hpi20gfryhnwl2c1na4nnmzxkp7him104cc07vsdllq";
cargoSha256 = "1g2jijx8y34lid9qwa26v4svab5v9ki6gn9vcfiy61dqa964c3l9";
nativeBuildInputs = [ pkgconfig makeWrapper installShellFiles ];

@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "git-trim";
version = "0.4.0";
version = "0.4.2";
src = fetchFromGitHub {
owner = "foriequal0";
repo = pname;
rev = "v${version}";
sha256 = "0w6qrr53wal4p4jvz35f9mpqwz1vfcymj17sz418n9p9lw45f24n";
sha256 = "1rb9dhj7b7mjrhsvm9vw5gzjfxj10idnzv488jkfdz7sfhd3fcvz";
};
cargoSha256 = "1mlvkvgcln59bi249z87v8i0ixq1a7walkzsjml6d219rmy5550h";
cargoSha256 = "1q62gqqhf78ljcvzp7yrnr0vk65rif2f7axzjq0b87prbcsr7ij4";
nativeBuildInputs = [ pkg-config ];

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "armadillo";
version = "10.1.0";
version = "10.1.1";
src = fetchurl {
url = "mirror://sourceforge/arma/armadillo-${version}.tar.xz";
sha256 = "15c3amyrk496v0s6r2pn8dw4v82f4ld347nbv5qdzd6injsg3qvj";
sha256 = "13hwynp1dnk3flw8ly00wjj12x2wsvj2da39bzay8c08m3dj3q4m";
};
nativeBuildInputs = [ cmake ];

@ -5,6 +5,7 @@
buildDunePackage rec {
pname = "fiat-p256";
version = "0.2.1";
useDune2 = true;
src = fetchurl {
url = "https://github.com/mirage/fiat/releases/download/v${version}/${pname}-v${version}.tbz";

@ -1,17 +1,19 @@
{ stdenv, fetchurl, buildDunePackage, cstruct }:
{ stdenv, fetchurl, buildDunePackage, bigarray-compat, cstruct }:
buildDunePackage rec {
pname = "hex";
version = "1.3.0";
version = "1.4.0";
useDune2 = true;
minimumOCamlVersion = "4.02";
src = fetchurl {
url = "https://github.com/mirage/ocaml-${pname}/releases/download/v${version}/hex-v${version}.tbz";
sha256 = "193567pn58df3b824vmfanncdfgf9cxzl7q3rq39zl9szvzhvkja";
sha256 = "07b9y0lmnflsslkrm6xilkj40n8sf2hjqkyqghnk7sw5l0plkqsp";
};
propagatedBuildInputs = [ cstruct ];
propagatedBuildInputs = [ bigarray-compat cstruct ];
doCheck = true;
meta = {

@ -0,0 +1,28 @@
{ lib
, buildPythonPackage
, fetchPypi
, nose
}:
buildPythonPackage rec {
pname = "toolz";
version = "0.10.0";
src = fetchPypi {
inherit pname version;
sha256 = "08fdd5ef7c96480ad11c12d472de21acd32359996f69a5259299b540feba4560";
};
checkInputs = [ nose ];
checkPhase = ''
nosetests toolz/tests
'';
meta = with lib; {
homepage = "https://github.com/pytoolz/toolz";
description = "List processing tools and functional utilities";
license = licenses.bsd3;
maintainers = with maintainers; [ fridh ];
};
}

@ -6,18 +6,16 @@
buildPythonPackage rec {
pname = "toolz";
version = "0.10.0";
version = "0.11.1";
src = fetchPypi {
inherit pname version;
sha256 = "08fdd5ef7c96480ad11c12d472de21acd32359996f69a5259299b540feba4560";
sha256 = "1grz3zvw5ixwqqlbv0n7j11mlcxb66cirh5i9x9zw8kqy0hpk967";
};
checkInputs = [ nose ];
checkPhase = ''
# https://github.com/pytoolz/toolz/issues/357
rm toolz/tests/test_serialization.py
nosetests toolz/tests
'';

@ -1,24 +1,30 @@
{ stdenv, openssl, fetchFromGitHub }:
stdenv.mkDerivation {
name = "pev-unstable-2018-07-22";
buildInputs = [ openssl ];
pname = "pev";
version = "unstable-2020-05-23";
src = fetchFromGitHub {
owner = "merces";
repo = "pev";
rev = "aa4ef7f";
sha256 = "00a3g486343lhqcsf4vrdy5xif6v3cgcf2y8yp5b96x15c0wid36";
rev = "beec2b4f09585fea919ed41ce466dee06be0b6bf";
sha256 = "sha256-HrMbk9YbuqkoBBM7+rfXpqVEnd1rDl2rMePdcfU1WDg=";
fetchSubmodules = true;
};
buildInputs = [ openssl ];
enableParallelBuilding = true;
makeFlags = [ "prefix=$(out)" ];
installFlags = [ "prefix=$(out)" ];
meta = with stdenv.lib; {
description = "A full-featured, open source, multiplatform command line toolkit to work with PE (Portable Executables) binaries";
homepage = "http://pev.sourceforge.net/";
homepage = "https://pev.sourceforge.net/";
license = licenses.gpl2;
maintainers = with maintainers; [ jeschli ];
platforms = platforms.linux;
maintainers = [ maintainers.jeschli ];
};
}

@ -47,27 +47,27 @@ rec {
aarch64-linux = "03d06120464c353068e2ac6c40f89eedffd6b5b3c4c96efdb406c96a6136a066";
};
electron_8 = mkElectron "8.5.1" {
x86_64-linux = "e58bf26ba52e43de77115b6e6844eba8a8cec2ac8aae500cf48fe862014202d9";
x86_64-darwin = "cf0d42ecde7ca374ddf1b440aaaf441e16a02890112fcbffc03f37f8ec3b1958";
i686-linux = "4c7ff6225b1ac4b710c454072d9fb8c04a66bb0353e7d6cffb89bcf6d4458d81";
armv7l-linux = "13afd8b2e36eb8d1582687e16fac5394d6d3b9734d73f94d0d6ef843ba14cec2";
aarch64-linux = "ff39e5e0e644cbf4ff1d29fc25e94b9eced7ea45d787d1b86fa4e50513336b7b";
electron_8 = mkElectron "8.5.2" {
x86_64-linux = "c5b8c95b410436066b06165e9759b31336c907268339433db4f8610ccf644a51";
x86_64-darwin = "079d951a28cfb7d1e0d3660e0fcb2dab85bd9e9f6848df5a06a7ac88ab3aa14c";
i686-linux = "0d108ac2420a437100f7a8d06aa019cd8138da4372fb94039b6d23c6253a6aea";
armv7l-linux = "f06ed475d1b206c3aa31e768add3517a64aabce5e2946e4d9707e615e6f398c0";
aarch64-linux = "e9765584bbedad8a806f96ac1381c114a357fdbed8c67573decefde2d15d9cd7";
};
electron_9 = mkElectron "9.3.0" {
x86_64-linux = "0c34fa1dbf7708bd4a3f08fde50eafb9903b1c467104dca3e3ced5e7f764b302";
x86_64-darwin = "25057470c2f3a1c40fa1c25086256041fa70419378fa3d41eeb805ebd3919b20";
i686-linux = "ea09d10e496450d2d7bb7a37cab7124cc5484117dd7d7d6c4106586ff675d1d5";
armv7l-linux = "a8b46d6c98546d605a02850c906408dc11104e8ee4366c3d8a956896fafdfcd3";
aarch64-linux = "791d898d02e45975657ed15f2d83af31d5688e7db0075a6e20021db3420eb320";
electron_9 = mkElectron "9.3.3" {
x86_64-linux = "17f4db5e040ea20ce89d1d492ac575ed0b9ba451ef9cb0e8cd50918505c85243";
x86_64-darwin = "bb6188178ed1250ddaf29a2f232758c0f7878f1541ddb2ae2a0d20298599c7f4";
i686-linux = "e413b0879247b32bfbcc114e8d49109267137b2ece97db13eaf0ce3ac6187881";
armv7l-linux = "313abeb91efbc29d4f807a01937640580940a5fb2699c70b1c303b184ac7bec4";
aarch64-linux = "263eb89ccb47920baef43898d373531d369d2adc8b2f9e5ebc6429fe44b2fd5a";
};
electron_10 = mkElectron "10.1.1" {
x86_64-linux = "4147e88bdbec6893bf9927f0d4f3dd090d26705f5b7f688223bc65253a8b0220";
x86_64-darwin = "5b6814ae1064cc337efcdb2ad01ab9daa003a6a1d6e05d79288ede0a3665b991";
i686-linux = "d29682b7ea44dcdca5e7265bd1e28046275295a9ac23982af3d216a7f47a7a57";
armv7l-linux = "341a2eacb0381c1f409b8e28cf2c0fe6f75a61410614baf80309f51dd4201a34";
aarch64-linux = "d5e5b069f3173ed89f4cca7e9723f28a5f7a720637b7addac02972c5db042b6c";
electron_10 = mkElectron "10.1.5" {
x86_64-linux = "9db65dfe26d4fa9524b3005c6002d858ab256722cefb6a058de8e72e2d5c4083";
x86_64-darwin = "30dc5d5a913c38c6ae7fa6913b1a907545f0230157efc066e2d5a7affd26cd1e";
i686-linux = "bf8e1731e8b9b972c9054964b219d9b1b6baae9612afc8a5edf3503b815dd8c3";
armv7l-linux = "e270eab1a87283d7ae25c8127d904a52f130d53cc399bd288af7f99563273f33";
aarch64-linux = "03fa2418472f762377149fdd45d1e6ff0a324be3eb1b04e58c63d41df3dd0f16";
};
}

@ -21,8 +21,8 @@ SYSTEMS=(
hashfile="$(nix-prefetch-url --print-path "https://github.com/electron/electron/releases/download/v${VERSION}/SHASUMS256.txt" 2>/dev/null | tail -n1)"
echo "Entry similar to the following goes in default.nix:"
echo
# Entry similar to the following goes in default.nix:
echo " electron_${VERSION%%.*} = mkElectron \"${VERSION}\" {"
for S in "${!SYSTEMS[@]}"; do

@ -1,7 +1,7 @@
{ stdenv, buildGoPackage, fetchFromGitHub }:
buildGoPackage rec {
pname = "packer";
version = "1.6.4";
version = "1.6.5";
goPackagePath = "github.com/hashicorp/packer";
@ -11,7 +11,7 @@ buildGoPackage rec {
owner = "hashicorp";
repo = "packer";
rev = "v${version}";
sha256 = "0nkbm5iamkzi5x64107apnwmqxs4a75pxw935pwpm69ry4535r7w";
sha256 = "sha256-M4PZnqdU5+w/B821cs1bJYzeilqdZ93fh5PErVgqBOQ=";
};
meta = with stdenv.lib; {

@ -1,21 +1,26 @@
GEM
remote: https://rubygems.org/
specs:
ast (2.4.0)
jaro_winkler (1.5.4)
parallel (1.19.1)
parser (2.6.5.0)
ast (~> 2.4.0)
ast (2.4.1)
parallel (1.19.2)
parser (2.7.2.0)
ast (~> 2.4.1)
rainbow (3.0.0)
rubocop (0.77.0)
jaro_winkler (~> 1.5.1)
regexp_parser (1.8.2)
rexml (3.2.4)
rubocop (1.1.0)
parallel (~> 1.10)
parser (>= 2.6)
parser (>= 2.7.1.5)
rainbow (>= 2.2.2, < 4.0)
regexp_parser (>= 1.8)
rexml
rubocop-ast (>= 1.0.1)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 1.4.0, < 1.7)
unicode-display_width (>= 1.4.0, < 2.0)
rubocop-ast (1.1.0)
parser (>= 2.7.1.5)
ruby-progressbar (1.10.1)
unicode-display_width (1.6.0)
unicode-display_width (1.7.0)
PLATFORMS
ruby

@ -4,30 +4,20 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "184ssy3w93nkajlz2c70ifm79jp3j737294kbc5fjw69v1w0n9x7";
sha256 = "1l3468czzjmxl93ap40hp7z94yxp4nbag0bxqs789bm30md90m2a";
type = "gem";
};
version = "2.4.0";
};
jaro_winkler = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1y8l6k34svmdyqxya3iahpwbpvmn3fswhwsvrz0nk1wyb8yfihsh";
type = "gem";
};
version = "1.5.4";
version = "2.4.1";
};
parallel = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "12jijkap4akzdv11lm08dglsc8jmc87xcgq6947i1s3qb69f4zn2";
sha256 = "17b127xxmm2yqdz146qwbs57046kn0js1h8synv01dwqz2z1kp2l";
type = "gem";
};
version = "1.19.1";
version = "1.19.2";
};
parser = {
dependencies = ["ast"];
@ -35,10 +25,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "09davv4ld6caqlczw64vhwf8hr41apys3cj8v2h96yxs4qg1m2iw";
sha256 = "1f7gmm60yla325wlnd3qkxs59qm2y0aan8ljpg6k18rwzrrfil6z";
type = "gem";
};
version = "2.6.5.0";
version = "2.7.2.0";
};
rainbow = {
groups = ["default"];
@ -50,16 +40,47 @@
};
version = "3.0.0";
};
rubocop = {
dependencies = ["jaro_winkler" "parallel" "parser" "rainbow" "ruby-progressbar" "unicode-display_width"];
regexp_parser = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0m88b1bgbhmmbdnz2xv6n0il0j4q5qm9jbc0vf1zsaxmxqp06nx9";
sha256 = "0x4s82lgf0l71y3xc9gp4qxkrgx1kv8f6avdqd68l46ijbyvicdm";
type = "gem";
};
version = "0.77.0";
version = "1.8.2";
};
rexml = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1mkvkcw9fhpaizrhca0pdgjcrbns48rlz4g6lavl5gjjq3rk2sq3";
type = "gem";
};
version = "3.2.4";
};
rubocop = {
dependencies = ["parallel" "parser" "rainbow" "regexp_parser" "rexml" "rubocop-ast" "ruby-progressbar" "unicode-display_width"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1nw87ngw4a9r3dpgykb872zcm640m7k0nk17qv537fmss2hl8shl";
type = "gem";
};
version = "1.1.0";
};
rubocop-ast = {
dependencies = ["parser"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0ami6n3vnpm9y5z6wd4c6y2infijajizjjwv8fq0wrcjvr3zivzz";
type = "gem";
};
version = "1.1.0";
};
ruby-progressbar = {
groups = ["default"];
@ -76,9 +97,9 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "08kfiniak1pvg3gn5k6snpigzvhvhyg7slmm0s2qx5zkj62c1z2w";
sha256 = "06i3id27s60141x6fdnjn5rar1cywdwy64ilc59cz937303q3mna";
type = "gem";
};
version = "1.6.0";
version = "1.7.0";
};
}

@ -389,12 +389,12 @@ let
coc-explorer = buildVimPluginFrom2Nix {
pname = "coc-explorer";
version = "2020-10-27";
version = "2020-10-30";
src = fetchFromGitHub {
owner = "weirongxu";
repo = "coc-explorer";
rev = "9e3fdc4079255b7e77207011119bf47aae8c08f5";
sha256 = "0jkm2qf01w8m5x50h24y79l5qmxvwpv2hrl8v34bqhz6jvm10zz4";
rev = "a8a3cf41638e5b7b128086888e2dead665407beb";
sha256 = "19a3blvfzqjzd5y3l4g03h3c8yxfl9fsdvc6mir0n76krpnk647l";
};
meta.homepage = "https://github.com/weirongxu/coc-explorer/";
};
@ -461,12 +461,12 @@ let
coc-nvim = buildVimPluginFrom2Nix {
pname = "coc-nvim";
version = "2020-10-27";
version = "2020-10-28";
src = fetchFromGitHub {
owner = "neoclide";
repo = "coc.nvim";
rev = "6a903340710a808401120bd1a32f204529f00935";
sha256 = "1cznyvwgdgbg60hfd423h0fqdyzxhwwy5w88b5rmf44maspjr41i";
rev = "ad1793dce0a59afcf8b324b45a1168c032deb162";
sha256 = "1khmmvba6cg0pff37nkbm7zmp3mnvpc889pql6dm6xjqrhpqsda7";
};
meta.homepage = "https://github.com/neoclide/coc.nvim/";
};
@ -594,12 +594,12 @@ let
Coqtail = buildVimPluginFrom2Nix {
pname = "Coqtail";
version = "2020-10-23";
version = "2020-10-30";
src = fetchFromGitHub {
owner = "whonore";
repo = "Coqtail";
rev = "2aa48079243de581b498f11bb3c4e8aba9e09f71";
sha256 = "07bxcvvxrfvifxk9yyg0vnisj0fsrb1mzlrrzg8qjrr571cjvj6x";
rev = "778f5f5868aec79bb5415f790c8f18b8253fd99c";
sha256 = "1p7lg6ln9vkw6ds3bllyf1rlpnlhb5cyly6cab1v9zgjz4xagx80";
};
meta.homepage = "https://github.com/whonore/Coqtail/";
};
@ -738,12 +738,12 @@ let
defx-nvim = buildVimPluginFrom2Nix {
pname = "defx-nvim";
version = "2020-10-27";
version = "2020-10-28";
src = fetchFromGitHub {
owner = "Shougo";
repo = "defx.nvim";
rev = "77956f66722f3a8b7d7e1c86092a3ac84af70b90";
sha256 = "0iqib5fgz2hal3qm4az4glikml6i33sfk7fgwmdy5kgkx512vqb8";
rev = "152c61f409d6a58b4c10bbd70b51bedd3db11a3c";
sha256 = "02izychnj48gb108a4npk8v1nfhw99x5368jv2yqrxaixqmykkrs";
};
meta.homepage = "https://github.com/Shougo/defx.nvim/";
};
@ -932,12 +932,12 @@ let
deoplete-lsp = buildVimPluginFrom2Nix {
pname = "deoplete-lsp";
version = "2020-09-18";
version = "2020-10-28";
src = fetchFromGitHub {
owner = "Shougo";
repo = "deoplete-lsp";
rev = "17cd3fae3044eb8148bc22167257d4ae13165eb1";
sha256 = "1xag51j71ifjn64xyaz7whml796pdl8vsw0ad22wndwzb95kyxdm";
rev = "fb51bfebd8ac57282154d119f80368b4b94199b7";
sha256 = "09k2i02vrgn0qc3bhjz3hzaiab3h2cwqvk619a1xp5bpxr9qc78w";
};
meta.homepage = "https://github.com/Shougo/deoplete-lsp/";
};
@ -1028,12 +1028,12 @@ let
deoplete-nvim = buildVimPluginFrom2Nix {
pname = "deoplete-nvim";
version = "2020-10-23";
version = "2020-10-29";
src = fetchFromGitHub {
owner = "Shougo";
repo = "deoplete.nvim";
rev = "c09da81e9824fc113323573abea3a2ec13c04409";
sha256 = "0b8sp5kj6nnv3wlkpy2q14k9v9qxsf8lskb11rssrjwhfys12bn0";
rev = "3c94074f71faac00a7d8f4eef2c4bdea96212cd5";
sha256 = "1g5bll38gw1bpmhss398s1lj9jhvszv1xzbi5qc698y2zi5cm87z";
};
meta.homepage = "https://github.com/Shougo/deoplete.nvim/";
};
@ -1331,12 +1331,12 @@ let
fzf-vim = buildVimPluginFrom2Nix {
pname = "fzf-vim";
version = "2020-10-27";
version = "2020-10-30";
src = fetchFromGitHub {
owner = "junegunn";
repo = "fzf.vim";
rev = "7d45724fdd323d5eb7d39c8caa2e38e63c5e84a7";
sha256 = "1v9ry3k8si26h2f9as7dnxrh5qihl3a1spinqqlwsk9faq7d511w";
rev = "bd3a021ec11617c56e6aa95578fee619445b029d";
sha256 = "1jd0bs7v28za6sba6f2i49mvjcnicid25ab3jljcax18c4kd6dl1";
};
meta.homepage = "https://github.com/junegunn/fzf.vim/";
};
@ -1920,12 +1920,12 @@ let
lightline-bufferline = buildVimPluginFrom2Nix {
pname = "lightline-bufferline";
version = "2020-09-04";
version = "2020-10-29";
src = fetchFromGitHub {
owner = "mengelbrecht";
repo = "lightline-bufferline";
rev = "6417dd8c864ccd6fb2b79882d30ca0227bfd2204";
sha256 = "0aars37arix00l63kn5p4gq3dvzpmrzxz1ap20k1mr2dy7pmval5";
rev = "3933dcda3630474ba448cb486e8c630dade7b2ce";
sha256 = "09p759i41acyyyqk629sbcp36v66xf5y369xagjy8n2gzczj0mwa";
};
meta.homepage = "https://github.com/mengelbrecht/lightline-bufferline/";
};
@ -1956,12 +1956,12 @@ let
lsp_extensions-nvim = buildVimPluginFrom2Nix {
pname = "lsp_extensions-nvim";
version = "2020-10-19";
version = "2020-10-30";
src = fetchFromGitHub {
owner = "nvim-lua";
repo = "lsp_extensions.nvim";
rev = "85ce064c36b93cd8856d6dfc41ea5089764ec1c6";
sha256 = "0vljxb9cvq042f70cq01n5mf2vd2wg2qpj75nlva9rjhiw9q3qw8";
rev = "8740c4b52dd6f9c2a564209db466ae72a3412dcc";
sha256 = "0sakmg4fkzji3rl9qmfx2rphz3ma5b6sysf7h7sag4n4lykinayj";
};
meta.homepage = "https://github.com/nvim-lua/lsp_extensions.nvim/";
};
@ -2424,12 +2424,12 @@ let
nerdcommenter = buildVimPluginFrom2Nix {
pname = "nerdcommenter";
version = "2020-06-08";
version = "2020-10-30";
src = fetchFromGitHub {
owner = "preservim";
repo = "nerdcommenter";
rev = "fade3d4b26f5a0d58f256a06ba7b0a04d9fb4f3b";
sha256 = "1vb5n4g5x3hpnc013gjf8frxxdrcq1zdcm3mpx90b0cjxi252cn3";
rev = "85750560a680907c50c1545abc4dd0e0b2452ff4";
sha256 = "1395m95ry4c52bj2zpxryks70c3abfwhb140kpx4rifl2ccpnwwp";
};
meta.homepage = "https://github.com/preservim/nerdcommenter/";
};
@ -2580,12 +2580,12 @@ let
nvim-treesitter = buildVimPluginFrom2Nix {
pname = "nvim-treesitter";
version = "2020-10-27";
version = "2020-10-30";
src = fetchFromGitHub {
owner = "nvim-treesitter";
repo = "nvim-treesitter";
rev = "d9454afd93b8396fb72ff15179b5c59df21713c3";
sha256 = "0kx2ljal46fj2pgvv2cpflxp6s0qzlry8i5mk0in27qs8bix79jn";
rev = "dd7900fc44b9cc6773bd4f8b5c0175887991520c";
sha256 = "0nfdvmlzqfga596n5awdhz9mc6gwnys73ixxkqi49f2g9x215ksd";
};
meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter/";
};
@ -3337,12 +3337,12 @@ let
tagbar = buildVimPluginFrom2Nix {
pname = "tagbar";
version = "2020-10-27";
version = "2020-10-30";
src = fetchFromGitHub {
owner = "preservim";
repo = "tagbar";
rev = "aa8c59220148640d66e779c1da495e6c5dfa78a9";
sha256 = "17ll4hgf67pc24r0bf9zz4l4g5xd3bchgh8i7acd2svsxckjjy3z";
rev = "99c22f1bb209e3393053a4dfb38039534b6b8a8d";
sha256 = "1bj7qi36yakxqds43fqp2876za4aq3bbb9444yvna2l0n504iy9j";
};
meta.homepage = "https://github.com/preservim/tagbar/";
};
@ -3373,24 +3373,24 @@ let
tcomment_vim = buildVimPluginFrom2Nix {
pname = "tcomment_vim";
version = "2020-10-09";
version = "2020-10-28";
src = fetchFromGitHub {
owner = "tomtom";
repo = "tcomment_vim";
rev = "cfd1360119f5d41ed161cdf8a3e8502680f2fb4c";
sha256 = "040vwmgqlhnvjc8d32d9lw3a5lr7flgj4h6gnz6m1zw9jw5l68gh";
rev = "c28fdd5c59144a4725a31f011738991696896170";
sha256 = "03nqhdnq4i4r75ma7gslr5mlfxia7xscykdywc70glrdqfrpsa5g";
};
meta.homepage = "https://github.com/tomtom/tcomment_vim/";
};
telescope-nvim = buildVimPluginFrom2Nix {
pname = "telescope-nvim";
version = "2020-10-28";
version = "2020-10-30";
src = fetchFromGitHub {
owner = "nvim-lua";
repo = "telescope.nvim";
rev = "78cf7ebd7f2dcfcf6fec1d0195ccf46cb479d72c";
sha256 = "1wl30nqdbl90a9zky524k1cszwii4vg5rhlrrvg4n6hdw9kkyi4m";
rev = "37c4f1b355d843e95ba41f2a73d83de58fb74dae";
sha256 = "0ly9vcnmf1b881fh1r5v4231h5n8kld2k9q1bxzvy87p2wsfb5sn";
};
meta.homepage = "https://github.com/nvim-lua/telescope.nvim/";
};
@ -3626,12 +3626,12 @@ let
vim-abolish = buildVimPluginFrom2Nix {
pname = "vim-abolish";
version = "2020-09-26";
version = "2020-10-30";
src = fetchFromGitHub {
owner = "tpope";
repo = "vim-abolish";
rev = "1329f888a777cc1f8228f048a532502a30f1df01";
sha256 = "1jxwvqpiliq57mddbdbrspfv60vw0gzvh677mabnryg6wb94adds";
rev = "68bc80c88617672fd41da7a6ace87d29cd3fe1e3";
sha256 = "1cgaf8nhprm8sligmq4km2p374a2x08fg3isl1k0mac1iz9vz1z8";
};
meta.homepage = "https://github.com/tpope/vim-abolish/";
};
@ -3878,12 +3878,12 @@ let
vim-airline = buildVimPluginFrom2Nix {
pname = "vim-airline";
version = "2020-10-18";
version = "2020-10-30";
src = fetchFromGitHub {
owner = "vim-airline";
repo = "vim-airline";
rev = "8608270bd39e9aa31bbdb8cd22b2ba776037feb6";
sha256 = "1g9nq313zdmklwcnn4lakyndc96qiq2zp9l3cg119i5470y7i1lz";
rev = "44b7b729381738cef0fc28a35fbe78fc2abe4d48";
sha256 = "09kvdm8yakqg0pjv1zbq5yy2wzzl3ax639mykk833b7g8hi6115q";
};
meta.homepage = "https://github.com/vim-airline/vim-airline/";
};
@ -3902,12 +3902,12 @@ let
vim-airline-themes = buildVimPluginFrom2Nix {
pname = "vim-airline-themes";
version = "2020-10-08";
version = "2020-10-29";
src = fetchFromGitHub {
owner = "vim-airline";
repo = "vim-airline-themes";
rev = "e1b0d9f86cf89e84b15c459683fd72730e51a054";
sha256 = "1mlp2yvam11cyscqy6ifn4chhm4w9ccf5hvjd4g3v2nb31zw5h3f";
rev = "5307367693f770a6b06d1a498c9bc9bf4cf9a884";
sha256 = "14iyfihlirp5adih8v117nz02wskaap4qlbrkgb7w0x87gfa3yqp";
};
meta.homepage = "https://github.com/vim-airline/vim-airline-themes/";
};
@ -3962,12 +3962,12 @@ let
vim-autoformat = buildVimPluginFrom2Nix {
pname = "vim-autoformat";
version = "2020-10-18";
version = "2020-10-28";
src = fetchFromGitHub {
owner = "Chiel92";
repo = "vim-autoformat";
rev = "ba41779884d23fc1f865c5077dfea7b53377e7b2";
sha256 = "1qfq3clgizk7h992x0j3khh53snxm4jjdaq46cy1mgapw4za7d2a";
rev = "ff16950ba5e07353f25ee33732982a67af451eb2";
sha256 = "12h6dznfwpifyr6ahk1b45pb59nlm6wkrfhgh65g1clnpzvchkiw";
};
meta.homepage = "https://github.com/Chiel92/vim-autoformat/";
};
@ -4070,12 +4070,12 @@ let
vim-carbon-now-sh = buildVimPluginFrom2Nix {
pname = "vim-carbon-now-sh";
version = "2020-10-25";
version = "2020-10-28";
src = fetchFromGitHub {
owner = "kristijanhusak";
repo = "vim-carbon-now-sh";
rev = "f348932f5b65bfccaaa54cfc018fbd251240434f";
sha256 = "17hj0mfl636hdw4m37xgjg8lahiir3g8bh9rfyq0avqqscjhzc58";
rev = "f4a3e5c9be2e587511f79e46fb0b48d6d646d719";
sha256 = "1ldv9l0swh6wk3wpyy0apnmg9gfcdzkgfdv8p0qm7j7pqdz981br";
};
meta.homepage = "https://github.com/kristijanhusak/vim-carbon-now-sh/";
};
@ -4106,12 +4106,12 @@ let
vim-clap = buildVimPluginFrom2Nix {
pname = "vim-clap";
version = "2020-10-27";
version = "2020-10-31";
src = fetchFromGitHub {
owner = "liuchengxu";
repo = "vim-clap";
rev = "6bf6a490c27737f04b92082a5859357ad43887c9";
sha256 = "1nl3bzkqkzxya5a4wpqiads7xyx4prxyzllp9anyg0imbvqd54ms";
rev = "f7f800f59bb1e199993c5554f014c7e8e2685165";
sha256 = "1ka6q9fqzhjxzi0n803mk9f6rwnlbrjsjzjq52b8dghc9n0359a1";
};
meta.homepage = "https://github.com/liuchengxu/vim-clap/";
};
@ -4526,12 +4526,12 @@ let
vim-elm-syntax = buildVimPluginFrom2Nix {
pname = "vim-elm-syntax";
version = "2020-06-10";
version = "2020-10-29";
src = fetchFromGitHub {
owner = "andys8";
repo = "vim-elm-syntax";
rev = "68cd8988fe9eaa190052fadaee0fea2c21338d4c";
sha256 = "0yhvx8k83xfzmgy10r9mz0rjagbyzx5rrmn8123vw49ncksvw49q";
rev = "998ef67262dcbeadd596458d7ff40079b5bc5cbb";
sha256 = "0gja4ifdpl6wfq3n897h1h635kf92v5c44jzr0ixbv3i924xqjhj";
};
meta.homepage = "https://github.com/andys8/vim-elm-syntax/";
};
@ -4610,12 +4610,12 @@ let
vim-fireplace = buildVimPluginFrom2Nix {
pname = "vim-fireplace";
version = "2020-10-11";
version = "2020-10-30";
src = fetchFromGitHub {
owner = "tpope";
repo = "vim-fireplace";
rev = "a465d598b23b4fa04f0cd61895918cca498f1c9b";
sha256 = "0ydpx8x931wix35fv9hamms4bl4s1hvzawsalhfi4cg4qnp3dkj8";
rev = "433ff6468d8ee0be5cbcf5bbd940f9ce2acf0f79";
sha256 = "1mjiwzl631v4yxgfbvgc66rxbyn3w1shy7836ksd2xnbd0m6kx8h";
};
meta.homepage = "https://github.com/tpope/vim-fireplace/";
};
@ -4778,12 +4778,12 @@ let
vim-gitgutter = buildVimPluginFrom2Nix {
pname = "vim-gitgutter";
version = "2020-10-27";
version = "2020-10-30";
src = fetchFromGitHub {
owner = "airblade";
repo = "vim-gitgutter";
rev = "e480eb2b63e337b07e7e5fef288df0b77c06cac5";
sha256 = "16vidy7kws3n29x9cm4pvb8cvam183wnv2ybvr8iyn8y3p9w3l2j";
rev = "696a6ed389e5b54c8bf480f44ee4e8fc59e6f903";
sha256 = "1x38qi9kzhvhfyrzhfbzj8xvgmi02prqg6zcvpnwdmxcs5asgj39";
};
meta.homepage = "https://github.com/airblade/vim-gitgutter/";
};
@ -5415,12 +5415,12 @@ let
vim-lsp = buildVimPluginFrom2Nix {
pname = "vim-lsp";
version = "2020-10-24";
version = "2020-10-29";
src = fetchFromGitHub {
owner = "prabirshrestha";
repo = "vim-lsp";
rev = "fdb69ab91317ce37c167b9820fcce2c35bce47ef";
sha256 = "13jxzdi3yp4qhlrx9fk0591db1gx3kzmwrmlq3bvicaziip2izsy";
rev = "eba0839b79b7f036f492b2b8c4a62269f72b3dab";
sha256 = "0fbz5yfjcjslpwkw81x1x2i6gd3p5rbssfqw13rbvj6ivf5qgglh";
};
meta.homepage = "https://github.com/prabirshrestha/vim-lsp/";
};
@ -5439,12 +5439,12 @@ let
vim-manpager = buildVimPluginFrom2Nix {
pname = "vim-manpager";
version = "2017-05-08";
version = "2020-10-28";
src = fetchFromGitHub {
owner = "lambdalisue";
repo = "vim-manpager";
rev = "25bdd9448651a7669659b1b8d8d7a82acdfbf8af";
sha256 = "0d7rg4lvyxr4v34bimxpdkynmvs606fqvv0qpi7g139ng9hv6wqm";
rev = "c23c02dd79b0a5cabe140d1f10f9aa2591cf55ed";
sha256 = "0g61qbp4vl010isigp6j3jjb3vb2kxalcbb56xzfa6c9k5zap5j9";
};
meta.homepage = "https://github.com/lambdalisue/vim-manpager/";
};
@ -6435,12 +6435,12 @@ let
vim-snippets = buildVimPluginFrom2Nix {
pname = "vim-snippets";
version = "2020-10-27";
version = "2020-10-29";
src = fetchFromGitHub {
owner = "honza";
repo = "vim-snippets";
rev = "d48c1e2dae8f40391b2bd4b4daf97527c4d75130";
sha256 = "04dmcikkxlx2vm3lnhw94nw59wi4x1yf27k6j85a0lifwgra1a2m";
rev = "0161732b61a60a8dc8dd80db7ff678197fc2c2aa";
sha256 = "1hyinjg9x80i6zpmf1l6lwnv58amkd5bw26w27xakd74c4am2603";
};
meta.homepage = "https://github.com/honza/vim-snippets/";
};
@ -6916,12 +6916,12 @@ let
vim-visual-multi = buildVimPluginFrom2Nix {
pname = "vim-visual-multi";
version = "2020-09-30";
version = "2020-10-27";
src = fetchFromGitHub {
owner = "mg979";
repo = "vim-visual-multi";
rev = "61855432df721f01e5b64fec07bf7a9077ff32b5";
sha256 = "017pydd4yzkz3s8ncpy99mh35f1pdk1ql7v7grm31ccqwsn8h565";
rev = "812ca5cff230cc0a21cce6b9d71db3868a6d6f85";
sha256 = "1si42l80axlilbr65x8zw2ivyn9f8y9x1yg77xi4rjqpqj7af5ka";
};
meta.homepage = "https://github.com/mg979/vim-visual-multi/";
};
@ -7217,12 +7217,12 @@ let
vimtex = buildVimPluginFrom2Nix {
pname = "vimtex";
version = "2020-10-24";
version = "2020-10-29";
src = fetchFromGitHub {
owner = "lervag";
repo = "vimtex";
rev = "eb7d89178319fd21601d2fe057e3f7cae2130b74";
sha256 = "14gj3n54q475cw9j6h12ir3lynn048829zjrb6nyhrzplikhpc9n";
rev = "982185bb454942a5c04d41b647ab58fceb4e7683";
sha256 = "16vy97k6lgl62pibhdfdigfv2gp16hvzlfywv1i6wx46hycb3swq";
};
meta.homepage = "https://github.com/lervag/vimtex/";
};
@ -7385,12 +7385,12 @@ let
yats-vim = buildVimPluginFrom2Nix {
pname = "yats-vim";
version = "2020-10-27";
version = "2020-10-30";
src = fetchFromGitHub {
owner = "HerringtonDarkholme";
repo = "yats.vim";
rev = "0635a855ff1c56073d5e372001a3843e15c8aedb";
sha256 = "0883lz5sv4w38awwxgff8lx2n1fcy6lw6dd1f8zkambvd7n4v19l";
rev = "2c1dce274988814102aafc57c4e0675c2d130e6c";
sha256 = "10kzqzm587nz1qgscgwrvjs77vk6grck28g5z1lhrxhpn1jng943";
fetchSubmodules = true;
};
meta.homepage = "https://github.com/HerringtonDarkholme/yats.vim/";
@ -7398,12 +7398,12 @@ let
YouCompleteMe = buildVimPluginFrom2Nix {
pname = "YouCompleteMe";
version = "2020-10-25";
version = "2020-10-30";
src = fetchFromGitHub {
owner = "ycm-core";
repo = "YouCompleteMe";
rev = "dd61ad7a101e0c0467f2c9942c7cbd3f31f6a06b";
sha256 = "0xjy6zpz02db5fcwwpdw3kp7kjgrvhlm3bk62syn0hxjghgd7pyb";
rev = "fa8c985dee864d33e48e3b3e803b541bdc433ffa";
sha256 = "1cc9wyp3dbh4fvic9zvh2bxqw0nrb3zwzlfj106cs2qbrpkiqszd";
fetchSubmodules = true;
};
meta.homepage = "https://github.com/ycm-core/YouCompleteMe/";

@ -4,13 +4,13 @@
stdenv.mkDerivation rec {
pname = "checksec";
version = "2.2.3";
version = "2.4.0";
src = fetchFromGitHub {
owner = "slimm609";
repo = "checksec.sh";
rev = version;
sha256 = "0hw8bd7dj71m1ml9zvfab2j87jacs542z7a89nziapckmg6kmh6f";
sha256 = "1gbbq85d3g3mnm3xvgvi2085aba7qc3cmsbwn76al50ax1518j2q";
};
patches = [ ./0001-attempt-to-modprobe-config-before-checking-kernel.patch ];

@ -10,11 +10,11 @@ let
in
buildPythonApplication rec {
pname = "matrix-synapse";
version = "1.22.0";
version = "1.22.1";
src = fetchPypi {
inherit pname version;
sha256 = "0dl4a5zirrjabbfibl9vj4zb16md11kqkz2v9l299gxbwwvzqc39";
sha256 = "1pbxdqpfa7wzdz61p6x58x7841vng1g65qayxgcw73bn1shl50jb";
};
patches = [

@ -1,24 +1,28 @@
{ stdenv, lib, buildGoPackage, fetchFromGitHub, makeWrapper, systemd }:
{ stdenv, lib, buildGoModule, fetchFromGitHub, makeWrapper, systemd, fetchpatch }:
buildGoPackage rec {
version = "1.6.1";
buildGoModule rec {
version = "2.0.0";
pname = "grafana-loki";
goPackagePath = "github.com/grafana/loki";
doCheck = true;
src = fetchFromGitHub {
rev = "v${version}";
owner = "grafana";
repo = "loki";
sha256 = "0bakskzizazc5cd6km3n6facc5val5567zinnxg3yjy29xdi64ww";
sha256 = "09a0mqdmk754vigd1xqijzwazwrmfaqcgdr2c6dz25p7a65568hj";
};
postPatch = ''
substituteInPlace pkg/distributor/distributor_test.go --replace \
'"eth0", "en0", "lo0"' \
'"lo"'
'';
vendorSha256 = null;
subPackages = [ "..." ];
patches = [
(fetchpatch {
# Fix expected return value in Test_validateDropConfig
# https://github.com/grafana/loki/issues/2519
url = "https://github.com/grafana/loki/commit/1316c0f0c5cda7c272c4873ea910211476fc1db8.patch";
sha256 = "06hwga58qpmivbhyjgyqzb75602hy8212a4b5vh99y9pnn6c913h";
})
];
nativeBuildInputs = [ makeWrapper ];
buildInputs = stdenv.lib.optionals stdenv.isLinux [ systemd.dev ];
@ -28,6 +32,8 @@ buildGoPackage rec {
--prefix LD_LIBRARY_PATH : "${lib.getLib systemd}/lib"
'';
doCheck = true;
meta = with stdenv.lib; {
description = "Like Prometheus, but for logs";
license = licenses.asl20;

@ -0,0 +1,40 @@
{ stdenvNoCC, lib, fetchFromGitHub, installShellFiles }:
stdenvNoCC.mkDerivation rec {
pname = "zplugin";
version = "2.3";
src = fetchFromGitHub {
owner = "zdharma";
repo = pname;
rev = "v${version}";
sha256 = "0qqv5p19s8jb06d6h55dm4acji9x2rpxb2ni3h7fb0q43iz6y85w";
};
# adapted from https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=zsh-zplugin-git
dontBuild = true;
nativeBuildInputs = [ installShellFiles ];
installPhase = ''
outdir="$out/share/$pname"
cd "$src"
# Zplugin's source files
install -dm0755 "$outdir"
install -m0644 zplugin{,-side,-install,-autoload}.zsh "$outdir"
install -m0755 git-process-output.zsh "$outdir"
# Zplugin autocompletion
installShellCompletion --zsh _zplugin
#TODO:Zplugin-module files
# find zmodules/ -type d -exec install -dm 755 "{}" "$outdir/{}" \;
# find zmodules/ -type f -exec install -m 744 "{}" "$outdir/{}" \;
'';
#TODO:doc output
meta = with lib; {
homepage = "https://github.com/zdharma/zplugin";
description = "Flexible zsh plugin manager";
license = licenses.mit;
maintainers = with maintainers; [ pasqui23 ];
};
}

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "bdf2psf";
version = "1.197";
version = "1.198";
src = fetchurl {
url = "mirror://debian/pool/main/c/console-setup/bdf2psf_${version}_all.deb";
sha256 = "023zj08rk8pmvpr8zybxn2ibrl5qsarkn8rb908mxhhlwpp12f7n";
sha256 = "1b57pk10wf667aag3mhh397sfra44gilnyyg7fm532qaw3xapv2i";
};
nativeBuildInputs = [ dpkg ];

@ -16,16 +16,16 @@ with rustPlatform;
buildRustPackage rec {
pname = "ffsend";
version = "0.2.65";
version = "0.2.68";
src = fetchFromGitLab {
owner = "timvisee";
repo = "ffsend";
rev = "v${version}";
sha256 = "02yw129rw072jlf36k60jbhfdv9ayx2wb5il61fc0v07h1nd7i0d";
sha256 = "0ga1v4s8ks2v632mim8ljya0gi2j8bbwj98yfm3g00p0z1i526qk";
};
cargoSha256 = "04waki61b5pjlgznbhbrjpi9rxgdwg9mjbx2apfh9swvfip602r6";
cargoSha256 = "1n9pf29xid6jcas5yx94k4cpmqgx0kpqq7gwf83jisjywxzygh6w";
nativeBuildInputs = [ cmake pkgconfig installShellFiles ];
buildInputs =

@ -1,11 +1,20 @@
{ lib
, stdenv
, fetchFromGitHub
, rustPlatform
, withFzf ? true
, fzf
# checkInputs
, fish
, powershell
, shellcheck
, shfmt
, xonsh
, zsh
}:
let
version = "0.4.3";
version = "0.5.0";
in
rustPlatform.buildRustPackage {
pname = "zoxide";
@ -15,15 +24,32 @@ rustPlatform.buildRustPackage {
owner = "ajeetdsouza";
repo = "zoxide";
rev = "v${version}";
sha256 = "1ghdal6pqkp56rqawhj26ch1x4cvnjj032xz3626aiddqgn134zj";
sha256 = "143lh94mw31pm9q7ib63h2k842g3h222mdabhf25hpb19lka2w5y";
};
# tests are broken on darwin
doCheck = !stdenv.isDarwin;
# fish needs a writable HOME for whatever reason
preCheck = ''
export HOME=$(mktemp -d)
'';
checkInputs = [
fish
powershell
shellcheck
shfmt
xonsh
zsh
];
postPatch = lib.optionalString withFzf ''
substituteInPlace src/fzf.rs \
--replace '"fzf"' '"${fzf}/bin/fzf"'
'';
cargoSha256 = "0klnjmda77bq9i9f0rz48jzaw4rcf7hafcjjpb0i570d7hlxnwsr";
cargoSha256 = "05mp101yk1zkjj1gwbkldizq6f9f8089gqgvq42c4ngq88pc7v9a";
meta = with lib; {
description = "A fast cd command that learns your habits";

@ -1,26 +0,0 @@
From 0cf506c92967c84f9ed83ba9e1be946a7fda6425 Mon Sep 17 00:00:00 2001
From: Miroslav Lichvar <mlichvar@redhat.com>
Date: Mon, 2 Dec 2019 12:47:13 +0100
Subject: sys_linux: allow clock_adjtime in seccomp filter
The adjtimex() function in glibc was switched to the clock_adjtime
system call.
diff --git a/sys_linux.c b/sys_linux.c
index 63eb8f1..fcf89c2 100644
--- a/sys_linux.c
+++ b/sys_linux.c
@@ -478,8 +478,8 @@ SYS_Linux_EnableSystemCallFilter(int level)
{
const int syscalls[] = {
/* Clock */
- SCMP_SYS(adjtimex), SCMP_SYS(clock_gettime), SCMP_SYS(gettimeofday),
- SCMP_SYS(settimeofday), SCMP_SYS(time),
+ SCMP_SYS(adjtimex), SCMP_SYS(clock_adjtime), SCMP_SYS(clock_gettime),
+ SCMP_SYS(gettimeofday), SCMP_SYS(settimeofday), SCMP_SYS(time),
/* Process */
SCMP_SYS(clone), SCMP_SYS(exit), SCMP_SYS(exit_group), SCMP_SYS(getpid),
SCMP_SYS(getrlimit), SCMP_SYS(rt_sigaction), SCMP_SYS(rt_sigreturn),
--
cgit v0.10.2

@ -1,27 +1,22 @@
{ stdenv, fetchurl, pkgconfig, libcap, readline, texinfo, nss, nspr
, libseccomp, pps-tools }:
, libseccomp, pps-tools, gnutls }:
assert stdenv.isLinux -> libcap != null;
stdenv.mkDerivation rec {
pname = "chrony";
version = "3.5.1";
version = "4.0";
src = fetchurl {
url = "https://download.tuxfamily.org/chrony/${pname}-${version}.tar.gz";
sha256 = "19ywl8a3lb2id7lcna5hp2g4pjnfwdc9ihr0fk6i9m45vdq2za0v";
sha256 = "09f6w2x5h5kamb4rhcbaz911q1f730qdalgsn8s48yjyqlafl9xy";
};
patches = [
./allow-clock_adjtime.patch
./fix-seccomp-build.patch
];
postPatch = ''
patchShebangs test
'';
buildInputs = [ readline texinfo nss nspr ]
buildInputs = [ readline texinfo nss nspr gnutls ]
++ stdenv.lib.optionals stdenv.isLinux [ libcap libseccomp pps-tools ];
nativeBuildInputs = [ pkgconfig ];

@ -1,13 +0,0 @@
diff --git a/sys_linux.c b/sys_linux.c
index 898dc7a7f75..fcd334ecf03 100644
--- a/sys_linux.c
+++ b/sys_linux.c
@@ -503,7 +503,7 @@ SYS_Linux_EnableSystemCallFilter(int level)
SCMP_SYS(socketcall),
/* General I/O */
SCMP_SYS(_newselect), SCMP_SYS(close), SCMP_SYS(open), SCMP_SYS(openat), SCMP_SYS(pipe),
- SCMP_SYS(pipe2), SCMP_SYS(poll), SCMP_SYS(ppoll), SCMP_SYS(pselect6), SCMP_SYS(read),
+ SCMP_SYS(pipe2), SCMP_SYS(poll), SCMP_SYS(pselect6), SCMP_SYS(read),
SCMP_SYS(futex), SCMP_SYS(select), SCMP_SYS(set_robust_list), SCMP_SYS(write),
/* Miscellaneous */
SCMP_SYS(getrandom), SCMP_SYS(sysinfo), SCMP_SYS(uname),

@ -8414,6 +8414,8 @@ in
zplug = callPackage ../shells/zsh/zplug { };
zplugin = callPackage ../shells/zsh/zplugin {} ;
zsh-autoenv = callPackage ../tools/misc/zsh-autoenv { };
zsh-bd = callPackage ../shells/zsh/zsh-bd { };
@ -16658,9 +16660,7 @@ in
grafana = callPackage ../servers/monitoring/grafana { };
grafana-loki = callPackage ../servers/monitoring/loki {
buildGoPackage = buildGo114Package;
};
grafana-loki = callPackage ../servers/monitoring/loki { };
grafana_reporter = callPackage ../servers/monitoring/grafana-reporter { };
@ -24003,7 +24003,7 @@ in
# more usecases when wrapping neovim. The interface is being actively worked on
# so expect breakage. use wrapNeovim instead if you want a stable alternative
wrapNeovimUnstable = callPackage ../applications/editors/neovim/wrapper.nix { };
wrapNeovim = neovimUtils.legacyWrapper;
wrapNeovim = neovim-unwrapped: lib.makeOverridable (neovimUtils.legacyWrapper neovim-unwrapped);
neovim-unwrapped = callPackage ../applications/editors/neovim {
lua =
# neovim doesn't work with luajit on aarch64: https://github.com/neovim/neovim/issues/7879

@ -7189,7 +7189,10 @@ in {
tomlkit = callPackage ../development/python-modules/tomlkit { };
toolz = callPackage ../development/python-modules/toolz { };
toolz = if isPy3k then
callPackage ../development/python-modules/toolz { }
else
callPackage ../development/python-modules/toolz/2.nix { };
toposort = callPackage ../development/python-modules/toposort { };