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

View file

@ -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";

View file

@ -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"

View file

@ -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>

View file

@ -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>

View file

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

View file

@ -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
};
};

View file

@ -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 = ''

View file

@ -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";
};
};
};

View file

@ -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" ];
};

View file

@ -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;

View file

@ -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";
};
};

View file

@ -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;
};
};

View file

@ -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;
};

View file

@ -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";
};
};
};

View file

@ -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";
};
});

View file

@ -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;

View file

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

View file

@ -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;

View file

@ -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") ''

View file

@ -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";

View file

@ -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} \

View file

@ -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 = ''

View file

@ -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;

View file

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

View file

@ -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;

View file

@ -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";

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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";
};
};

View file

@ -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 = ''

View file

@ -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;

View file

@ -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")

View file

@ -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

View file

@ -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 ];

View file

@ -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;

View file

@ -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;

View file

@ -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 ];

View file

@ -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 ];

View file

@ -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 ];

View file

@ -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";

View file

@ -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 = {

View file

@ -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 ];
};
}

View file

@ -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
'';

View file

@ -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 ];
};
}

View file

@ -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";
};
}

View file

@ -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

View file

@ -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; {

View file

@ -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

View file

@ -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";
};
}

View file

@ -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/";

View file

@ -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 ];

View file

@ -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 = [

View file

@ -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;

View file

@ -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 ];
};
}

View file

@ -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 ];

View file

@ -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 =

View file

@ -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";

View file

@ -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

View file

@ -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 ];

View file

@ -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),

View file

@ -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

View file

@ -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 { };