Merge master into staging-next

This commit is contained in:
github-actions[bot] 2022-03-04 12:01:33 +00:00 committed by GitHub
commit fc22d0d5e2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
65 changed files with 608 additions and 284 deletions

View file

@ -12866,6 +12866,12 @@
githubId = 118959; githubId = 118959;
name = "VinyMeuh"; name = "VinyMeuh";
}; };
viraptor = {
email = "nix@viraptor.info";
github = "viraptor";
githubId = 188063;
name = "Stanisław Pitucha";
};
viric = { viric = {
email = "viric@viric.name"; email = "viric@viric.name";
github = "viric"; github = "viric";

View file

@ -41,17 +41,18 @@ checks:
`RefuseManualStop` in the `[Unit]` section, and `X-OnlyManualStart` in the `RefuseManualStop` in the `[Unit]` section, and `X-OnlyManualStart` in the
`[Unit]` section. `[Unit]` section.
- The rest of the behavior is decided whether the unit has `X-StopIfChanged` - Further behavior depends on the unit having `X-StopIfChanged` in the
in the `[Service]` section set (exposed via `[Service]` section set to `true` (exposed via
[systemd.services.\<name\>.stopIfChanged](#opt-systemd.services)). This is [systemd.services.\<name\>.stopIfChanged](#opt-systemd.services)). This is
set to `true` by default and must be explicitly turned off if not wanted. set to `true` by default and must be explicitly turned off if not wanted.
If the flag is enabled, the unit is **stop**ped and then **start**ed. If If the flag is enabled, the unit is **stop**ped and then **start**ed. If
not, the unit is **restart**ed. The goal of the flag is to make sure that not, the unit is **restart**ed. The goal of the flag is to make sure that
the new unit never runs in the old environment which is still in place the new unit never runs in the old environment which is still in place
before the activation script is run. before the activation script is run. This behavior is different when the
service is socket-activated, as outlined in the following steps.
- The last thing that is taken into account is whether the unit is a service - The last thing that is taken into account is whether the unit is a service
and socket-activated. Due to a bug, this is currently only done when and socket-activated. If `X-StopIfChanged` is **not** set, the service
`X-StopIfChanged` is set. If the unit is socket-activated, the socket is is **restart**ed with the others. If it is set, both the service and the
stopped and started, and the service is stopped and to be started by socket socket are **stop**ped and the socket is **start**ed, leaving socket
activation. activation to start the service when it's needed.

View file

@ -88,9 +88,10 @@
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
The rest of the behavior is decided whether the unit has Further behavior depends on the unit having
<literal>X-StopIfChanged</literal> in the <literal>X-StopIfChanged</literal> in the
<literal>[Service]</literal> section set (exposed via <literal>[Service]</literal> section set to
<literal>true</literal> (exposed via
<link linkend="opt-systemd.services">systemd.services.&lt;name&gt;.stopIfChanged</link>). <link linkend="opt-systemd.services">systemd.services.&lt;name&gt;.stopIfChanged</link>).
This is set to <literal>true</literal> by default and must This is set to <literal>true</literal> by default and must
be explicitly turned off if not wanted. If the flag is be explicitly turned off if not wanted. If the flag is
@ -100,17 +101,22 @@
is <emphasis role="strong">restart</emphasis>ed. The goal of is <emphasis role="strong">restart</emphasis>ed. The goal of
the flag is to make sure that the new unit never runs in the the flag is to make sure that the new unit never runs in the
old environment which is still in place before the old environment which is still in place before the
activation script is run. activation script is run. This behavior is different when
the service is socket-activated, as outlined in the
following steps.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
The last thing that is taken into account is whether the The last thing that is taken into account is whether the
unit is a service and socket-activated. Due to a bug, this unit is a service and socket-activated. If
is currently only done when <literal>X-StopIfChanged</literal> is
<literal>X-StopIfChanged</literal> is set. If the unit is <emphasis role="strong">not</emphasis> set, the service is
socket-activated, the socket is stopped and started, and the <emphasis role="strong">restart</emphasis>ed with the
service is stopped and to be started by socket activation. others. If it is set, both the service and the socket are
<emphasis role="strong">stop</emphasis>ped and the socket is
<emphasis role="strong">start</emphasis>ed, leaving socket
activation to start the service when its needed.
</para> </para>
</listitem> </listitem>
</itemizedlist> </itemizedlist>

View file

@ -307,6 +307,7 @@ sub handleModifiedUnit {
# seem to get applied on daemon-reload. # seem to get applied on daemon-reload.
} elsif ($unit =~ /\.mount$/) { } elsif ($unit =~ /\.mount$/) {
# Reload the changed mount unit to force a remount. # Reload the changed mount unit to force a remount.
# FIXME: only reload when Options= changed, restart otherwise
$unitsToReload->{$unit} = 1; $unitsToReload->{$unit} = 1;
recordUnit($reloadListFile, $unit); recordUnit($reloadListFile, $unit);
} elsif ($unit =~ /\.socket$/) { } elsif ($unit =~ /\.socket$/) {
@ -339,7 +340,7 @@ sub handleModifiedUnit {
# If this unit is socket-activated, then stop the # If this unit is socket-activated, then stop the
# socket unit(s) as well, and restart the # socket unit(s) as well, and restart the
# socket(s) instead of the service. # socket(s) instead of the service.
my $socketActivated = 0; my $socket_activated = 0;
if ($unit =~ /\.service$/) { if ($unit =~ /\.service$/) {
my @sockets = split(/ /, join(" ", @{$unitInfo{Service}{Sockets} // []})); my @sockets = split(/ /, join(" ", @{$unitInfo{Service}{Sockets} // []}));
if (scalar @sockets == 0) { if (scalar @sockets == 0) {
@ -347,13 +348,15 @@ sub handleModifiedUnit {
} }
foreach my $socket (@sockets) { foreach my $socket (@sockets) {
if (defined $activePrev->{$socket}) { if (defined $activePrev->{$socket}) {
# We can now be sure this is a socket-activate unit
$unitsToStop->{$socket} = 1; $unitsToStop->{$socket} = 1;
# Only restart sockets that actually # Only restart sockets that actually
# exist in new configuration: # exist in new configuration:
if (-e "$out/etc/systemd/system/$socket") { if (-e "$out/etc/systemd/system/$socket") {
$unitsToStart->{$socket} = 1; $unitsToStart->{$socket} = 1;
recordUnit($startListFile, $socket); recordUnit($startListFile, $socket);
$socketActivated = 1; $socket_activated = 1;
} }
# Remove from units to reload so we don't restart and reload # Remove from units to reload so we don't restart and reload
if ($unitsToReload->{$unit}) { if ($unitsToReload->{$unit}) {
@ -368,7 +371,7 @@ sub handleModifiedUnit {
# that this unit needs to be started below. # that this unit needs to be started below.
# We write this to a file to ensure that the # We write this to a file to ensure that the
# service gets restarted if we're interrupted. # service gets restarted if we're interrupted.
if (!$socketActivated) { if (!$socket_activated) {
$unitsToStart->{$unit} = 1; $unitsToStart->{$unit} = 1;
recordUnit($startListFile, $unit); recordUnit($startListFile, $unit);
} }

View file

@ -1,6 +1,46 @@
# Test configuration switching. # Test configuration switching.
import ./make-test-python.nix ({ pkgs, ...} : { import ./make-test-python.nix ({ pkgs, ...} : let
# Simple service that can either be socket-activated or that will
# listen on port 1234 if not socket-activated.
# A connection to the socket causes 'hello' to be written to the client.
socketTest = pkgs.writeScript "socket-test.py" /* python */ ''
#!${pkgs.python3}/bin/python3
from socketserver import TCPServer, StreamRequestHandler
import socket
import os
class Handler(StreamRequestHandler):
def handle(self):
self.wfile.write("hello".encode("utf-8"))
class Server(TCPServer):
def __init__(self, server_address, handler_cls):
listenFds = os.getenv('LISTEN_FDS')
if listenFds is None or int(listenFds) < 1:
print(f'Binding to {server_address}')
TCPServer.__init__(
self, server_address, handler_cls, bind_and_activate=True)
else:
TCPServer.__init__(
self, server_address, handler_cls, bind_and_activate=False)
# Override socket
print(f'Got activated by {os.getenv("LISTEN_FDNAMES")} '
f'with {listenFds} FDs')
self.socket = socket.fromfd(3, self.address_family,
self.socket_type)
if __name__ == "__main__":
server = Server(("localhost", 1234), Handler)
server.serve_forever()
'';
in {
name = "switch-test"; name = "switch-test";
meta = with pkgs.lib.maintainers; { meta = with pkgs.lib.maintainers; {
maintainers = [ gleber das_j ]; maintainers = [ gleber das_j ];
@ -8,6 +48,7 @@ import ./make-test-python.nix ({ pkgs, ...} : {
nodes = { nodes = {
machine = { pkgs, lib, ... }: { machine = { pkgs, lib, ... }: {
environment.systemPackages = [ pkgs.socat ]; # for the socket activation stuff
users.mutableUsers = false; users.mutableUsers = false;
specialisation = rec { specialisation = rec {
@ -231,6 +272,40 @@ import ./make-test-python.nix ({ pkgs, ...} : {
systemd.services.reload-triggers-and-restart.serviceConfig.X-Modified = "test"; systemd.services.reload-triggers-and-restart.serviceConfig.X-Modified = "test";
}; };
simple-socket.configuration = {
systemd.services.socket-activated = {
description = "A socket-activated service";
stopIfChanged = lib.mkDefault false;
serviceConfig = {
ExecStart = socketTest;
ExecReload = "${pkgs.coreutils}/bin/true";
};
};
systemd.sockets.socket-activated = {
wantedBy = [ "sockets.target" ];
listenStreams = [ "/run/test.sock" ];
socketConfig.SocketMode = lib.mkDefault "0777";
};
};
simple-socket-service-modified.configuration = {
imports = [ simple-socket.configuration ];
systemd.services.socket-activated.serviceConfig.X-Test = "test";
};
simple-socket-stop-if-changed.configuration = {
imports = [ simple-socket.configuration ];
systemd.services.socket-activated.stopIfChanged = true;
};
simple-socket-stop-if-changed-and-reloadtrigger.configuration = {
imports = [ simple-socket.configuration ];
systemd.services.socket-activated = {
stopIfChanged = true;
reloadTriggers = [ "test" ];
};
};
mount.configuration = { mount.configuration = {
systemd.mounts = [ systemd.mounts = [
{ {
@ -378,7 +453,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_lacks(out, "\nrestarting the following units:") assert_lacks(out, "\nrestarting the following units:")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
# Start a simple service # Start a simple service
out = switch_to_specialisation("${machine}", "simpleService") out = switch_to_specialisation("${machine}", "simpleService")
@ -388,7 +462,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_lacks(out, "\nrestarting the following units:") assert_lacks(out, "\nrestarting the following units:")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_contains(out, "the following new units were started: test.service\n") assert_contains(out, "the following new units were started: test.service\n")
assert_lacks(out, "as well:")
# Not changing anything doesn't do anything # Not changing anything doesn't do anything
out = switch_to_specialisation("${machine}", "simpleService") out = switch_to_specialisation("${machine}", "simpleService")
@ -398,7 +471,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_lacks(out, "\nrestarting the following units:") assert_lacks(out, "\nrestarting the following units:")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
# Restart the simple service # Restart the simple service
out = switch_to_specialisation("${machine}", "simpleServiceModified") out = switch_to_specialisation("${machine}", "simpleServiceModified")
@ -408,7 +480,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_lacks(out, "\nrestarting the following units:") assert_lacks(out, "\nrestarting the following units:")
assert_contains(out, "\nstarting the following units: test.service\n") assert_contains(out, "\nstarting the following units: test.service\n")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
# Restart the service with stopIfChanged=false # Restart the service with stopIfChanged=false
out = switch_to_specialisation("${machine}", "simpleServiceNostop") out = switch_to_specialisation("${machine}", "simpleServiceNostop")
@ -418,7 +489,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_contains(out, "\nrestarting the following units: test.service\n") assert_contains(out, "\nrestarting the following units: test.service\n")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
# Reload the service with reloadIfChanged=true # Reload the service with reloadIfChanged=true
out = switch_to_specialisation("${machine}", "simpleServiceReload") out = switch_to_specialisation("${machine}", "simpleServiceReload")
@ -428,7 +498,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_lacks(out, "\nrestarting the following units:") assert_lacks(out, "\nrestarting the following units:")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
# Nothing happens when restartIfChanged=false # Nothing happens when restartIfChanged=false
out = switch_to_specialisation("${machine}", "simpleServiceNorestart") out = switch_to_specialisation("${machine}", "simpleServiceNorestart")
@ -438,7 +507,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_lacks(out, "\nrestarting the following units:") assert_lacks(out, "\nrestarting the following units:")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
# Dry mode shows different messages # Dry mode shows different messages
out = switch_to_specialisation("${machine}", "simpleService", action="dry-activate") out = switch_to_specialisation("${machine}", "simpleService", action="dry-activate")
@ -448,7 +516,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_lacks(out, "\nrestarting the following units:") assert_lacks(out, "\nrestarting the following units:")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
assert_contains(out, "would start the following units: test.service\n") assert_contains(out, "would start the following units: test.service\n")
# Ensure \ works in unit names # Ensure \ works in unit names
@ -459,7 +526,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_lacks(out, "\nrestarting the following units:") assert_lacks(out, "\nrestarting the following units:")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_contains(out, "the following new units were started: escaped\\x2ddash.service\n") assert_contains(out, "the following new units were started: escaped\\x2ddash.service\n")
assert_lacks(out, "as well:")
out = switch_to_specialisation("${machine}", "unitWithBackslashModified") out = switch_to_specialisation("${machine}", "unitWithBackslashModified")
assert_contains(out, "stopping the following units: escaped\\x2ddash.service\n") assert_contains(out, "stopping the following units: escaped\\x2ddash.service\n")
@ -468,7 +534,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_lacks(out, "\nrestarting the following units:") assert_lacks(out, "\nrestarting the following units:")
assert_contains(out, "\nstarting the following units: escaped\\x2ddash.service\n") assert_contains(out, "\nstarting the following units: escaped\\x2ddash.service\n")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
with subtest("failing units"): with subtest("failing units"):
# Let the simple service fail # Let the simple service fail
@ -482,7 +547,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_contains(out, "warning: the following units failed: test.service\n") assert_contains(out, "warning: the following units failed: test.service\n")
assert_contains(out, "Main PID:") # output of systemctl assert_contains(out, "Main PID:") # output of systemctl
assert_lacks(out, "as well:")
# A unit that gets into autorestart without failing is not treated as failed # A unit that gets into autorestart without failing is not treated as failed
out = switch_to_specialisation("${machine}", "autorestartService") out = switch_to_specialisation("${machine}", "autorestartService")
@ -492,7 +556,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_lacks(out, "\nrestarting the following units:") assert_lacks(out, "\nrestarting the following units:")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_contains(out, "the following new units were started: autorestart.service\n") assert_contains(out, "the following new units were started: autorestart.service\n")
assert_lacks(out, "as well:")
machine.systemctl('stop autorestart.service') # cancel the 20y timer machine.systemctl('stop autorestart.service') # cancel the 20y timer
# Switching to the same system should do nothing (especially not treat the unit as failed) # Switching to the same system should do nothing (especially not treat the unit as failed)
@ -503,7 +566,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_lacks(out, "\nrestarting the following units:") assert_lacks(out, "\nrestarting the following units:")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_contains(out, "the following new units were started: autorestart.service\n") assert_contains(out, "the following new units were started: autorestart.service\n")
assert_lacks(out, "as well:")
machine.systemctl('stop autorestart.service') # cancel the 20y timer machine.systemctl('stop autorestart.service') # cancel the 20y timer
# If systemd thinks the unit has failed and is in autorestart, we should show it as failed # If systemd thinks the unit has failed and is in autorestart, we should show it as failed
@ -516,7 +578,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_contains(out, "warning: the following units failed: autorestart.service\n") assert_contains(out, "warning: the following units failed: autorestart.service\n")
assert_contains(out, "Main PID:") # output of systemctl assert_contains(out, "Main PID:") # output of systemctl
assert_lacks(out, "as well:")
with subtest("unit file parser"): with subtest("unit file parser"):
# Switch to a well-known state # Switch to a well-known state
@ -530,7 +591,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_contains(out, "\nrestarting the following units: test.service\n") assert_contains(out, "\nrestarting the following units: test.service\n")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
# Rename it # Rename it
out = switch_to_specialisation("${machine}", "simpleServiceWithExtraSectionOtherName") out = switch_to_specialisation("${machine}", "simpleServiceWithExtraSectionOtherName")
@ -540,7 +600,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_contains(out, "\nrestarting the following units: test.service\n") assert_contains(out, "\nrestarting the following units: test.service\n")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
# Remove it # Remove it
out = switch_to_specialisation("${machine}", "simpleServiceNostop") out = switch_to_specialisation("${machine}", "simpleServiceNostop")
@ -550,7 +609,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_contains(out, "\nrestarting the following units: test.service\n") assert_contains(out, "\nrestarting the following units: test.service\n")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
# [Install] section is ignored # [Install] section is ignored
out = switch_to_specialisation("${machine}", "simpleServiceWithInstallSection") out = switch_to_specialisation("${machine}", "simpleServiceWithInstallSection")
@ -560,7 +618,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_lacks(out, "\nrestarting the following units:") assert_lacks(out, "\nrestarting the following units:")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
# Add a key # Add a key
out = switch_to_specialisation("${machine}", "simpleServiceWithExtraKey") out = switch_to_specialisation("${machine}", "simpleServiceWithExtraKey")
@ -570,7 +627,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_contains(out, "\nrestarting the following units: test.service\n") assert_contains(out, "\nrestarting the following units: test.service\n")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
# Change its value # Change its value
out = switch_to_specialisation("${machine}", "simpleServiceWithExtraKeyOtherValue") out = switch_to_specialisation("${machine}", "simpleServiceWithExtraKeyOtherValue")
@ -580,7 +636,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_contains(out, "\nrestarting the following units: test.service\n") assert_contains(out, "\nrestarting the following units: test.service\n")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
# Rename it # Rename it
out = switch_to_specialisation("${machine}", "simpleServiceWithExtraKeyOtherName") out = switch_to_specialisation("${machine}", "simpleServiceWithExtraKeyOtherName")
@ -590,7 +645,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_contains(out, "\nrestarting the following units: test.service\n") assert_contains(out, "\nrestarting the following units: test.service\n")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
# Remove it # Remove it
out = switch_to_specialisation("${machine}", "simpleServiceNostop") out = switch_to_specialisation("${machine}", "simpleServiceNostop")
@ -600,7 +654,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_contains(out, "\nrestarting the following units: test.service\n") assert_contains(out, "\nrestarting the following units: test.service\n")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
# Add a reload trigger # Add a reload trigger
out = switch_to_specialisation("${machine}", "simpleServiceReloadTrigger") out = switch_to_specialisation("${machine}", "simpleServiceReloadTrigger")
@ -610,7 +663,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_lacks(out, "\nrestarting the following units:") assert_lacks(out, "\nrestarting the following units:")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
# Modify the reload trigger # Modify the reload trigger
out = switch_to_specialisation("${machine}", "simpleServiceReloadTriggerModified") out = switch_to_specialisation("${machine}", "simpleServiceReloadTriggerModified")
@ -620,7 +672,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_lacks(out, "\nrestarting the following units:") assert_lacks(out, "\nrestarting the following units:")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
# Modify the reload trigger and something else # Modify the reload trigger and something else
out = switch_to_specialisation("${machine}", "simpleServiceReloadTriggerModifiedAndSomethingElse") out = switch_to_specialisation("${machine}", "simpleServiceReloadTriggerModifiedAndSomethingElse")
@ -630,7 +681,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_contains(out, "\nrestarting the following units: test.service\n") assert_contains(out, "\nrestarting the following units: test.service\n")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
# Remove the reload trigger # Remove the reload trigger
out = switch_to_specialisation("${machine}", "simpleServiceReloadTriggerModifiedSomethingElse") out = switch_to_specialisation("${machine}", "simpleServiceReloadTriggerModifiedSomethingElse")
@ -640,7 +690,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_lacks(out, "\nrestarting the following units:") assert_lacks(out, "\nrestarting the following units:")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
with subtest("restart and reload by activation script"): with subtest("restart and reload by activation script"):
switch_to_specialisation("${machine}", "simpleServiceNorestart") switch_to_specialisation("${machine}", "simpleServiceNorestart")
@ -650,7 +699,7 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_lacks(out, "reloading the following units:") assert_lacks(out, "reloading the following units:")
assert_lacks(out, "restarting the following units:") assert_lacks(out, "restarting the following units:")
assert_contains(out, "\nstarting the following units: no-restart-service.service, reload-triggers-and-restart-by-as.service, simple-reload-service.service, simple-restart-service.service, simple-service.service\n") assert_contains(out, "\nstarting the following units: no-restart-service.service, reload-triggers-and-restart-by-as.service, simple-reload-service.service, simple-restart-service.service, simple-service.service\n")
assert_lacks(out, "as well:") assert_contains(out, "the following new units were started: no-restart-service.service, reload-triggers-and-restart-by-as.service, reload-triggers-and-restart.service, reload-triggers.service, simple-reload-service.service, simple-restart-service.service, simple-service.service\n")
# Switch to the same system where the example services get restarted # Switch to the same system where the example services get restarted
# and reloaded by the activation script # and reloaded by the activation script
out = switch_to_specialisation("${machine}", "restart-and-reload-by-activation-script") out = switch_to_specialisation("${machine}", "restart-and-reload-by-activation-script")
@ -659,7 +708,7 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_contains(out, "reloading the following units: reload-triggers-and-restart.service, reload-triggers.service, simple-reload-service.service\n") assert_contains(out, "reloading the following units: reload-triggers-and-restart.service, reload-triggers.service, simple-reload-service.service\n")
assert_contains(out, "restarting the following units: reload-triggers-and-restart-by-as.service, simple-restart-service.service, simple-service.service\n") assert_contains(out, "restarting the following units: reload-triggers-and-restart-by-as.service, simple-restart-service.service, simple-service.service\n")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "as well:") assert_lacks(out, "the following new units were started:")
# Switch to the same system and see if the service gets restarted when it's modified # Switch to the same system and see if the service gets restarted when it's modified
# while the fact that it's supposed to be reloaded by the activation script is ignored. # while the fact that it's supposed to be reloaded by the activation script is ignored.
out = switch_to_specialisation("${machine}", "restart-and-reload-by-activation-script-modified") out = switch_to_specialisation("${machine}", "restart-and-reload-by-activation-script-modified")
@ -668,7 +717,7 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_contains(out, "reloading the following units: reload-triggers.service, simple-reload-service.service\n") assert_contains(out, "reloading the following units: reload-triggers.service, simple-reload-service.service\n")
assert_contains(out, "restarting the following units: reload-triggers-and-restart-by-as.service, reload-triggers-and-restart.service, simple-restart-service.service, simple-service.service\n") assert_contains(out, "restarting the following units: reload-triggers-and-restart-by-as.service, reload-triggers-and-restart.service, simple-restart-service.service, simple-service.service\n")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "as well:") assert_lacks(out, "the following new units were started:")
# The same, but in dry mode # The same, but in dry mode
out = switch_to_specialisation("${machine}", "restart-and-reload-by-activation-script", action="dry-activate") out = switch_to_specialisation("${machine}", "restart-and-reload-by-activation-script", action="dry-activate")
assert_lacks(out, "would stop the following units:") assert_lacks(out, "would stop the following units:")
@ -676,7 +725,71 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_contains(out, "would reload the following units: reload-triggers.service, simple-reload-service.service\n") assert_contains(out, "would reload the following units: reload-triggers.service, simple-reload-service.service\n")
assert_contains(out, "would restart the following units: reload-triggers-and-restart-by-as.service, reload-triggers-and-restart.service, simple-restart-service.service, simple-service.service\n") assert_contains(out, "would restart the following units: reload-triggers-and-restart-by-as.service, reload-triggers-and-restart.service, simple-restart-service.service, simple-service.service\n")
assert_lacks(out, "\nwould start the following units:") assert_lacks(out, "\nwould start the following units:")
assert_lacks(out, "as well:")
with subtest("socket-activated services"):
# Socket-activated services don't get started, just the socket
machine.fail("[ -S /run/test.sock ]")
out = switch_to_specialisation("${machine}", "simple-socket")
# assert_lacks(out, "stopping the following units:") not relevant
assert_lacks(out, "NOT restarting the following changed units:")
assert_lacks(out, "reloading the following units:")
assert_lacks(out, "\nrestarting the following units:")
assert_lacks(out, "\nstarting the following units:")
assert_contains(out, "the following new units were started: socket-activated.socket\n")
machine.succeed("[ -S /run/test.sock ]")
# Changing a non-activated service does nothing
out = switch_to_specialisation("${machine}", "simple-socket-service-modified")
assert_lacks(out, "stopping the following units:")
assert_lacks(out, "NOT restarting the following changed units:")
assert_lacks(out, "reloading the following units:")
assert_lacks(out, "\nrestarting the following units:")
assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:")
machine.succeed("[ -S /run/test.sock ]")
# The unit is properly activated when the socket is accessed
if machine.succeed("socat - UNIX-CONNECT:/run/test.sock") != "hello":
raise Exception("Socket was not properly activated") # idk how that would happen tbh
# Changing an activated service with stopIfChanged=false restarts the service
out = switch_to_specialisation("${machine}", "simple-socket")
assert_lacks(out, "stopping the following units:")
assert_lacks(out, "NOT restarting the following changed units:")
assert_lacks(out, "reloading the following units:")
assert_contains(out, "\nrestarting the following units: socket-activated.service\n")
assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:")
machine.succeed("[ -S /run/test.sock ]")
# Socket-activation of the unit still works
if machine.succeed("socat - UNIX-CONNECT:/run/test.sock") != "hello":
raise Exception("Socket was not properly activated after the service was restarted")
# Changing an activated service with stopIfChanged=true stops the service and
# socket and starts the socket
out = switch_to_specialisation("${machine}", "simple-socket-stop-if-changed")
assert_contains(out, "stopping the following units: socket-activated.service, socket-activated.socket\n")
assert_lacks(out, "NOT restarting the following changed units:")
assert_lacks(out, "reloading the following units:")
assert_lacks(out, "\nrestarting the following units:")
assert_contains(out, "\nstarting the following units: socket-activated.socket\n")
assert_lacks(out, "the following new units were started:")
machine.succeed("[ -S /run/test.sock ]")
# Socket-activation of the unit still works
if machine.succeed("socat - UNIX-CONNECT:/run/test.sock") != "hello":
raise Exception("Socket was not properly activated after the service was restarted")
# Changing a reload trigger of a socket-activated unit only reloads it
out = switch_to_specialisation("${machine}", "simple-socket-stop-if-changed-and-reloadtrigger")
assert_lacks(out, "stopping the following units:")
assert_lacks(out, "NOT restarting the following changed units:")
assert_contains(out, "reloading the following units: socket-activated.service\n")
assert_lacks(out, "\nrestarting the following units:")
assert_lacks(out, "\nstarting the following units: socket-activated.socket")
assert_lacks(out, "the following new units were started:")
machine.succeed("[ -S /run/test.sock ]")
# Socket-activation of the unit still works
if machine.succeed("socat - UNIX-CONNECT:/run/test.sock") != "hello":
raise Exception("Socket was not properly activated after the service was restarted")
with subtest("mounts"): with subtest("mounts"):
switch_to_specialisation("${machine}", "mount") switch_to_specialisation("${machine}", "mount")
@ -689,7 +802,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_lacks(out, "\nrestarting the following units:") assert_lacks(out, "\nrestarting the following units:")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
# It changed # It changed
out = machine.succeed("mount | grep 'on /testmount'") out = machine.succeed("mount | grep 'on /testmount'")
assert_contains(out, "size=10240k") assert_contains(out, "size=10240k")
@ -700,11 +812,11 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_contains(out, "OnCalendar=2014-03-25 02:59:56 UTC") assert_contains(out, "OnCalendar=2014-03-25 02:59:56 UTC")
out = switch_to_specialisation("${machine}", "timerModified") out = switch_to_specialisation("${machine}", "timerModified")
assert_lacks(out, "stopping the following units:") assert_lacks(out, "stopping the following units:")
assert_lacks(out, "NOT restarting the following units:")
assert_lacks(out, "reloading the following units:") assert_lacks(out, "reloading the following units:")
assert_contains(out, "restarting the following units: test-timer.timer\n") assert_contains(out, "\nrestarting the following units: test-timer.timer\n")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:") assert_lacks(out, "the following new units were started:")
assert_lacks(out, "as well:")
# It changed # It changed
out = machine.succeed("systemctl show test-timer.timer") out = machine.succeed("systemctl show test-timer.timer")
assert_contains(out, "OnCalendar=Fri 2012-11-23 16:00:00") assert_contains(out, "OnCalendar=Fri 2012-11-23 16:00:00")
@ -716,8 +828,7 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert_lacks(out, "reloading the following units:") assert_lacks(out, "reloading the following units:")
assert_lacks(out, "\nrestarting the following units:") assert_lacks(out, "\nrestarting the following units:")
assert_lacks(out, "\nstarting the following units:") assert_lacks(out, "\nstarting the following units:")
assert_contains(out, "the following new units were started: test-watch.path") assert_contains(out, "the following new units were started: test-watch.path\n")
assert_lacks(out, "as well:")
machine.fail("test -f /testpath-modified") machine.fail("test -f /testpath-modified")
# touch the file, unit should be triggered # touch the file, unit should be triggered
@ -739,8 +850,21 @@ import ./make-test-python.nix ({ pkgs, ...} : {
with subtest("slices"): with subtest("slices"):
machine.succeed("echo 0 > /proc/sys/vm/panic_on_oom") # allow OOMing machine.succeed("echo 0 > /proc/sys/vm/panic_on_oom") # allow OOMing
out = switch_to_specialisation("${machine}", "slice") out = switch_to_specialisation("${machine}", "slice")
# assert_lacks(out, "stopping the following units:") not relevant
assert_lacks(out, "NOT restarting the following changed units:")
assert_lacks(out, "reloading the following units:")
assert_lacks(out, "\nrestarting the following units:")
assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:")
machine.fail("systemctl start testservice.service") machine.fail("systemctl start testservice.service")
out = switch_to_specialisation("${machine}", "sliceModified") out = switch_to_specialisation("${machine}", "sliceModified")
assert_lacks(out, "stopping the following units:")
assert_lacks(out, "NOT restarting the following changed units:")
assert_lacks(out, "reloading the following units:")
assert_lacks(out, "\nrestarting the following units:")
assert_lacks(out, "\nstarting the following units:")
assert_lacks(out, "the following new units were started:")
machine.succeed("systemctl start testservice.service") machine.succeed("systemctl start testservice.service")
machine.succeed("echo 1 > /proc/sys/vm/panic_on_oom") # disallow OOMing machine.succeed("echo 1 > /proc/sys/vm/panic_on_oom") # disallow OOMing
''; '';

View file

@ -24,13 +24,13 @@
with lib; with lib;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = if withGui then "elements" else "elementsd"; pname = if withGui then "elements" else "elementsd";
version = "0.21.0.1"; version = "0.21.0.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ElementsProject"; owner = "ElementsProject";
repo = "elements"; repo = "elements";
rev = "elements-${version}"; rev = "elements-${version}";
sha256 = "sha256-nZa5doiFQJhtK8cUUISTZhS61HzW7CMB9pPsWKc8Gac="; sha256 = "sha256-5b3wylp9Z2U0ueu2gI9jGeWiiJoddjcjQ/6zkFATyvA=";
}; };
nativeBuildInputs = nativeBuildInputs =

View file

@ -27,13 +27,13 @@ in
stdenv.mkDerivation { stdenv.mkDerivation {
pname = "macvim"; pname = "macvim";
version = "8.2.1719"; version = "8.2.3455";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "macvim-dev"; owner = "macvim-dev";
repo = "macvim"; repo = "macvim";
rev = "snapshot-166"; rev = "snapshot-172";
sha256 = "1p51q59l1dl5lnf1ms960lm8zfg39p8xq0pdjw6wdyypjj3r8v3v"; sha256 = "sha256-LLLQ/V1vyKTuSXzHW3SOlOejZD5AV16NthEdMoTnfko=";
}; };
enableParallelBuilding = true; enableParallelBuilding = true;

View file

@ -1,10 +1,10 @@
diff --git a/src/MacVim/vimrc b/src/MacVim/vimrc diff --git a/src/MacVim/vimrc b/src/MacVim/vimrc
index af43549..dfb10fe 100644 index 32c89b387..c2af70127 100644
--- a/src/MacVim/vimrc --- a/src/MacVim/vimrc
+++ b/src/MacVim/vimrc +++ b/src/MacVim/vimrc
@@ -14,35 +14,5 @@ set backspace+=indent,eol,start @@ -9,35 +9,5 @@ set nocompatible
" translated to English). " more sensible value. Add "set backspace&" to your ~/.vimrc to reset it.
set langmenu=none set backspace+=indent,eol,start
-" Python2 -" Python2
-" MacVim is configured by default to use the pre-installed System python2 -" MacVim is configured by default to use the pre-installed System python2
@ -29,22 +29,22 @@ index af43549..dfb10fe 100644
-" or an installation from python.org: -" or an installation from python.org:
-if exists("&pythonthreedll") && exists("&pythonthreehome") && -if exists("&pythonthreedll") && exists("&pythonthreehome") &&
- \ !filereadable(&pythonthreedll) - \ !filereadable(&pythonthreedll)
- if filereadable("/opt/local/Library/Frameworks/Python.framework/Versions/3.8/Python") - if filereadable("/opt/local/Library/Frameworks/Python.framework/Versions/3.9/Python")
- " MacPorts python 3.8 - " MacPorts python 3.9
- set pythonthreedll=/opt/local/Library/Frameworks/Python.framework/Versions/3.8/Python - set pythonthreedll=/opt/local/Library/Frameworks/Python.framework/Versions/3.9/Python
- elseif filereadable("/Library/Frameworks/Python.framework/Versions/3.8/Python") - elseif filereadable("/Library/Frameworks/Python.framework/Versions/3.9/Python")
- " https://www.python.org/downloads/mac-osx/ - " https://www.python.org/downloads/mac-osx/
- set pythonthreedll=/Library/Frameworks/Python.framework/Versions/3.8/Python - set pythonthreedll=/Library/Frameworks/Python.framework/Versions/3.9/Python
- endif - endif
-endif -endif
- -
+" Default cscopeprg to the Nix-installed path +" Default cscopeprg to the Nix-installed path
+set cscopeprg=@CSCOPE@ +set cscopeprg=@CSCOPE@
diff --git a/src/Makefile b/src/Makefile diff --git a/src/Makefile b/src/Makefile
index fd2d5e1..37a6d6a 100644 index c4a3ada37..06ee3de44 100644
--- a/src/Makefile --- a/src/Makefile
+++ b/src/Makefile +++ b/src/Makefile
@@ -1397,7 +1397,7 @@ MACVIMGUI_SRC = gui.c gui_beval.c MacVim/gui_macvim.m MacVim/MMBackend.m \ @@ -1402,7 +1402,7 @@ MACVIMGUI_SRC = gui.c gui_beval.c MacVim/gui_macvim.m MacVim/MMBackend.m \
MacVim/MacVim.m MacVim/MacVim.m
MACVIMGUI_OBJ = objects/gui.o objects/gui_beval.o \ MACVIMGUI_OBJ = objects/gui.o objects/gui_beval.o \
objects/gui_macvim.o objects/MMBackend.o objects/MacVim.o objects/gui_macvim.o objects/MMBackend.o objects/MacVim.o
@ -52,12 +52,12 @@ index fd2d5e1..37a6d6a 100644
+MACVIMGUI_DEFS = -DMACOS_X_DARWIN -DFEAT_GUI_MACVIM -Wall -Wno-unknown-pragmas -pipe +MACVIMGUI_DEFS = -DMACOS_X_DARWIN -DFEAT_GUI_MACVIM -Wall -Wno-unknown-pragmas -pipe
MACVIMGUI_IPATH = MACVIMGUI_IPATH =
MACVIMGUI_LIBS_DIR = MACVIMGUI_LIBS_DIR =
MACVIMGUI_LIBS1 = -framework Cocoa -framework Carbon MACVIMGUI_LIBS1 =
diff --git a/src/auto/configure b/src/auto/configure diff --git a/src/auto/configure b/src/auto/configure
index 06257a5..68437df 100755 index 39ef81449..d8fa7ec2f 100755
--- a/src/auto/configure --- a/src/auto/configure
+++ b/src/auto/configure +++ b/src/auto/configure
@@ -5872,10 +5872,7 @@ $as_echo "not found" >&6; } @@ -5896,10 +5896,7 @@ $as_echo "not found" >&6; }
for path in "${vi_cv_path_mzscheme_pfx}/lib" "${SCHEME_LIB}"; do for path in "${vi_cv_path_mzscheme_pfx}/lib" "${SCHEME_LIB}"; do
if test "X$path" != "X"; then if test "X$path" != "X"; then
@ -69,7 +69,7 @@ index 06257a5..68437df 100755
MZSCHEME_LIBS="${path}/libmzscheme3m.a" MZSCHEME_LIBS="${path}/libmzscheme3m.a"
MZSCHEME_CFLAGS="-DMZ_PRECISE_GC" MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
elif test -f "${path}/libracket3m.a"; then elif test -f "${path}/libracket3m.a"; then
@@ -6260,23 +6257,6 @@ $as_echo ">>> too old; need Perl version 5.003_01 or later <<<" >&6; } @@ -6287,23 +6284,6 @@ $as_echo ">>> too old; need Perl version 5.003_01 or later <<<" >&6; }
fi fi
if test "x$MACOS_X" = "xyes"; then if test "x$MACOS_X" = "xyes"; then
@ -93,7 +93,7 @@ index 06257a5..68437df 100755
PERL_LIBS=`echo "$PERL_LIBS" | sed -e 's/-arch\ ppc//' -e 's/-arch\ i386//' -e 's/-arch\ x86_64//'` PERL_LIBS=`echo "$PERL_LIBS" | sed -e 's/-arch\ ppc//' -e 's/-arch\ i386//' -e 's/-arch\ x86_64//'`
PERL_CFLAGS=`echo "$PERL_CFLAGS" | sed -e 's/-arch\ ppc//' -e 's/-arch\ i386//' -e 's/-arch\ x86_64//'` PERL_CFLAGS=`echo "$PERL_CFLAGS" | sed -e 's/-arch\ ppc//' -e 's/-arch\ i386//' -e 's/-arch\ x86_64//'`
fi fi
@@ -6499,13 +6479,7 @@ __: @@ -6526,13 +6506,6 @@ __:
eof eof
eval "`cd ${PYTHON_CONFDIR} && make -f "${tmp_mkf}" __ | sed '/ directory /d'`" eval "`cd ${PYTHON_CONFDIR} && make -f "${tmp_mkf}" __ | sed '/ directory /d'`"
rm -f -- "${tmp_mkf}" rm -f -- "${tmp_mkf}"
@ -104,11 +104,10 @@ index 06257a5..68437df 100755
- vi_cv_path_python_plibs="-F${python_PYTHONFRAMEWORKPREFIX} -framework Python" - vi_cv_path_python_plibs="-F${python_PYTHONFRAMEWORKPREFIX} -framework Python"
- fi - fi
- else - else
+
vi_cv_path_python_plibs="-L${PYTHON_CONFDIR} -lpython${vi_cv_var_python_version}" vi_cv_path_python_plibs="-L${PYTHON_CONFDIR} -lpython${vi_cv_var_python_version}"
if test -n "${python_LINKFORSHARED}" && test -n "${python_PYTHONFRAMEWORKPREFIX}"; then if test -n "${python_LINKFORSHARED}" && test -n "${python_PYTHONFRAMEWORKPREFIX}"; then
python_link_symbol=`echo ${python_LINKFORSHARED} | sed 's/\([^ \t][^ \t]*[ \t][ \t]*[^ \t][^ \t]*\)[ \t].*/\1/'` python_link_symbol=`echo ${python_LINKFORSHARED} | sed 's/\([^ \t][^ \t]*[ \t][ \t]*[^ \t][^ \t]*\)[ \t].*/\1/'`
@@ -6520,7 +6494,6 @@ eof @@ -6547,7 +6520,6 @@ eof
fi fi
vi_cv_path_python_plibs="${vi_cv_path_python_plibs} ${python_BASEMODLIBS} ${python_LIBS} ${python_SYSLIBS} ${python_LINKFORSHARED}" vi_cv_path_python_plibs="${vi_cv_path_python_plibs} ${python_BASEMODLIBS} ${python_LIBS} ${python_SYSLIBS} ${python_LINKFORSHARED}"
vi_cv_path_python_plibs=`echo $vi_cv_path_python_plibs | sed s/-ltermcap//` vi_cv_path_python_plibs=`echo $vi_cv_path_python_plibs | sed s/-ltermcap//`
@ -116,7 +115,7 @@ index 06257a5..68437df 100755
fi fi
@@ -6599,13 +6572,6 @@ rm -f core conftest.err conftest.$ac_objext \ @@ -6626,13 +6598,6 @@ rm -f core conftest.err conftest.$ac_objext \
$as_echo "no" >&6; } $as_echo "no" >&6; }
fi fi
@ -130,7 +129,7 @@ index 06257a5..68437df 100755
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if compile and link flags for Python are sane" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compile and link flags for Python are sane" >&5
$as_echo_n "checking if compile and link flags for Python are sane... " >&6; } $as_echo_n "checking if compile and link flags for Python are sane... " >&6; }
cflags_save=$CFLAGS cflags_save=$CFLAGS
@@ -7499,11 +7465,7 @@ $as_echo "$tclver - OK" >&6; }; @@ -7557,11 +7522,7 @@ $as_echo "$tclver - OK" >&6; };
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for location of Tcl include" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for location of Tcl include" >&5
$as_echo_n "checking for location of Tcl include... " >&6; } $as_echo_n "checking for location of Tcl include... " >&6; }
@ -142,7 +141,7 @@ index 06257a5..68437df 100755
TCL_INC= TCL_INC=
for try in $tclinc; do for try in $tclinc; do
if test -f "$try/tcl.h"; then if test -f "$try/tcl.h"; then
@@ -7521,13 +7483,8 @@ $as_echo "<not found>" >&6; } @@ -7579,13 +7540,8 @@ $as_echo "<not found>" >&6; }
if test -z "$SKIP_TCL"; then if test -z "$SKIP_TCL"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for location of tclConfig.sh script" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for location of tclConfig.sh script" >&5
$as_echo_n "checking for location of tclConfig.sh script... " >&6; } $as_echo_n "checking for location of tclConfig.sh script... " >&6; }
@ -156,9 +155,9 @@ index 06257a5..68437df 100755
for try in $tclcnf; do for try in $tclcnf; do
if test -f "$try/tclConfig.sh"; then if test -f "$try/tclConfig.sh"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $try/tclConfig.sh" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $try/tclConfig.sh" >&5
@@ -7717,10 +7674,6 @@ $as_echo "$rubyhdrdir" >&6; } @@ -7774,10 +7730,6 @@ $as_echo "$rubyhdrdir" >&6; }
if test -f "$rubylibdir/$librubya"; then rubylibdir=`$vi_cv_path_ruby -r rbconfig -e "print $ruby_rbconfig.expand($ruby_rbconfig::CONFIG['libdir'])"`
librubyarg="$librubyarg" if test -f "$rubylibdir/$librubya" || expr "$librubyarg" : "-lruby"; then
RUBY_LIBS="$RUBY_LIBS -L$rubylibdir" RUBY_LIBS="$RUBY_LIBS -L$rubylibdir"
- elif test "$vi_cv_path_ruby" = "/usr/bin/ruby" -a -d "/System/Library/Frameworks/Ruby.framework"; then - elif test "$vi_cv_path_ruby" = "/usr/bin/ruby" -a -d "/System/Library/Frameworks/Ruby.framework"; then
- RUBY_LIBS="-framework Ruby" - RUBY_LIBS="-framework Ruby"
@ -168,7 +167,7 @@ index 06257a5..68437df 100755
if test "X$librubyarg" != "X"; then if test "X$librubyarg" != "X"; then
diff --git a/src/vim.h b/src/vim.h diff --git a/src/vim.h b/src/vim.h
index bbc01ee..5a93591 100644 index 4ff59f201..f91cb9836 100644
--- a/src/vim.h --- a/src/vim.h
+++ b/src/vim.h +++ b/src/vim.h
@@ -244,17 +244,6 @@ @@ -244,17 +244,6 @@
@ -190,15 +189,14 @@ index bbc01ee..5a93591 100644
# include "os_amiga.h" # include "os_amiga.h"
#endif #endif
diff --git a/src/vimtutor b/src/vimtutor diff --git a/src/vimtutor b/src/vimtutor
index 1e8769b..47078b0 100755 index 3b154f288..e89f26060 100755
--- a/src/vimtutor --- a/src/vimtutor
+++ b/src/vimtutor +++ b/src/vimtutor
@@ -16,7 +16,7 @@ seq="vim vim81 vim80 vim8 vim74 vim73 vim72 vim71 vim70 vim7 vim6 vi" @@ -16,6 +16,6 @@ seq="vim vim81 vim80 vim8 vim74 vim73 vim72 vim71 vim70 vim7 vim6 vi"
if test "$1" = "-g"; then if test "$1" = "-g"; then
# Try to use the GUI version of Vim if possible, it will fall back # Try to use the GUI version of Vim if possible, it will fall back
# on Vim if Gvim is not installed. # on Vim if Gvim is not installed.
- seq="gvim gvim81 gvim80 gvim8 gvim74 gvim73 gvim72 gvim71 gvim70 gvim7 gvim6 $seq" - seq="gvim gvim81 gvim80 gvim8 gvim74 gvim73 gvim72 gvim71 gvim70 gvim7 gvim6 $seq"
+ seq="mvim gvim gvim81 gvim80 gvim8 gvim74 gvim73 gvim72 gvim71 gvim70 gvim7 gvim6 $seq" + seq="mvim gvim gvim81 gvim80 gvim8 gvim74 gvim73 gvim72 gvim71 gvim70 gvim7 gvim6 $seq"
shift shift
fi fi

View file

@ -820,7 +820,7 @@ self: super: {
libiconv libiconv
]; ];
cargoSha256 = "sha256-JKi51kzCHMctUX6tT8K2Rq1slV3Ek67dCgbPjBkwPTE="; cargoSha256 = "12xaxpg4ws09rnp9prrqcac8581ggr36mpy39xyfngjy5xvcalaq";
}; };
in in
'' ''

View file

@ -7,26 +7,19 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "avizo"; pname = "avizo";
# Note: remove the 'use-sysconfig' patch on the next update version = "1.2";
version = "1.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "misterdanb"; owner = "misterdanb";
repo = "avizo"; repo = "avizo";
rev = version; rev = version;
sha256 = "sha256-0BJodJ6WaHhuSph2D1AC+DMafctgiSCyaZ8MFn89AA8="; sha256 = "sha256-BRtdCOBFsKkJif/AlnF7N9ZDcmA+878M9lDQld+SAgo=";
}; };
nativeBuildInputs = [ meson ninja pkg-config vala gobject-introspection wrapGAppsHook ]; nativeBuildInputs = [ meson ninja pkg-config vala gobject-introspection wrapGAppsHook ];
buildInputs = [ dbus dbus-glib gdk-pixbuf glib gtk-layer-shell gtk3 librsvg ]; buildInputs = [ dbus dbus-glib gdk-pixbuf glib gtk-layer-shell gtk3 librsvg ];
patches = [
# Remove on next update
# See https://github.com/misterdanb/avizo/pull/30
./use-sysconfdir-instead-of-etc.patch
];
postInstall = '' postInstall = ''
substituteInPlace "$out"/bin/volumectl \ substituteInPlace "$out"/bin/volumectl \
--replace 'avizo-client' "$out/bin/avizo-client" --replace 'avizo-client' "$out/bin/avizo-client"

View file

@ -1,15 +0,0 @@
diff --git a/meson.build b/meson.build
index 1c789be..cd4b07a 100644
--- a/meson.build
+++ b/meson.build
@@ -12,7 +12,9 @@ app_resources_service = gnome.compile_resources(
source_dir : '.',
c_name : 'avizo_resources')
-install_data('config.ini', install_dir: '/etc/xdg/avizo')
+sysconfdir = get_option('sysconfdir')
+
+install_data('config.ini', install_dir: join_paths(sysconfdir, 'xdg/avizo'))
install_data('volumectl', install_dir: 'bin')
install_data('lightctl', install_dir: 'bin')

View file

@ -96,7 +96,6 @@ mkDerivation rec {
feedparser feedparser
html2text html2text
html5-parser html5-parser
jeepney
lxml lxml
markdown markdown
mechanize mechanize

View file

@ -2,7 +2,7 @@
let let
pname = "joplin-desktop"; pname = "joplin-desktop";
version = "2.6.10"; version = "2.7.13";
name = "${pname}-${version}"; name = "${pname}-${version}";
inherit (stdenv.hostPlatform) system; inherit (stdenv.hostPlatform) system;
@ -16,8 +16,8 @@ let
src = fetchurl { src = fetchurl {
url = "https://github.com/laurent22/joplin/releases/download/v${version}/Joplin-${version}.${suffix}"; url = "https://github.com/laurent22/joplin/releases/download/v${version}/Joplin-${version}.${suffix}";
sha256 = { sha256 = {
x86_64-linux = "sha256-2/QYEzQjB9n/4k5I/fry3ol8Fpsb5+tc1ttVdf2ID+4="; x86_64-linux = "sha256-ObuBcFV5fq2sryC+ETTAH+S19EW+nVlxdVOtOpiBeDs=";
x86_64-darwin = "sha256-BwBpq78hYJVUItUgs9lonBTV4YWJ+qvML6VTj5M4BQ4="; x86_64-darwin = "sha256-f0+/kUukP+zIzTSSGO1ctUBd/uCSrAKz+uBnrzpPy5k=";
}.${system} or throwSystem; }.${system} or throwSystem;
}; };

View file

@ -6,11 +6,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "upwork"; pname = "upwork";
version = "5.6.10.0"; version = "5.6.10.1";
src = fetchurl { src = fetchurl {
url = "https://upwork-usw2-desktopapp.upwork.com/binaries/v5_6_10_0_b124e6f3a4944b32/${pname}_${version}_amd64.deb"; url = "https://upwork-usw2-desktopapp.upwork.com/binaries/v5_6_10_1_de501d28cc034306/${pname}_${version}_amd64.deb";
sha256 = "fd201ce817abe32e1b582bb4b55fef85ac8132806f5ddf0548fd25bbfd48833c"; sha256 = "8faf896d2570d1d210793f46a3860e934d03498c1f11640d43721b6eb2b56860";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -1,9 +1,9 @@
{ lib, buildGoModule, fetchFromGitHub, fetchzip, installShellFiles }: { lib, buildGoModule, fetchFromGitHub, fetchzip, installShellFiles }:
let let
version = "0.27.2"; version = "0.27.3";
sha256 = "0rdsc9i8mjiwyb6l9sbhxirl4i3b50m6505wwvhxz4y5arzdi1k6"; sha256 = "08ax1033456hfm5qz0r671xm5ig0047nqp7xffyn9za498bm4i5q";
manifestsSha256 = "0h966xqjkvrblxd62iph9vwr2h7w1ig943hi5vg0swy4674v3ybf"; manifestsSha256 = "165kspq10nvlihcb1460qmbw5r1mlzs5gliw01qa4mymvzmlggk7";
manifests = fetchzip { manifests = fetchzip {
url = url =
@ -23,7 +23,7 @@ in buildGoModule rec {
inherit sha256; inherit sha256;
}; };
vendorSha256 = "sha256-xkhbGID+oI7+kLml8CveEet7gtPSty8LGv1gkqpqg6w="; vendorSha256 = "sha256-ENSfec7iSKOkILgVCVnORpAia4D+vBjQAUXDA7EIvVQ=";
postUnpack = '' postUnpack = ''
cp -r ${manifests} source/cmd/flux/manifests cp -r ${manifests} source/cmd/flux/manifests

View file

@ -17,6 +17,7 @@ let
comment = "Free Runtime Environment for Java Applications."; comment = "Free Runtime Environment for Java Applications.";
desktopName = "Jameica"; desktopName = "Jameica";
genericName = "Jameica"; genericName = "Jameica";
icon = "jameica";
categories = [ "Office" ]; categories = [ "Office" ];
}; };
in in

View file

@ -13,6 +13,8 @@ stdenv.mkDerivation rec {
buildInputs = [ zlib ]; buildInputs = [ zlib ];
makeFlags = lib.optionals stdenv.isAarch64 [ "arm_neon=1" "aarch64=1" ];
installPhase = '' installPhase = ''
mkdir -p $out/bin mkdir -p $out/bin
cp minimap2 $out/bin cp minimap2 $out/bin
@ -25,7 +27,6 @@ stdenv.mkDerivation rec {
homepage = "https://lh3.github.io/minimap2"; homepage = "https://lh3.github.io/minimap2";
license = licenses.mit; license = licenses.mit;
platforms = platforms.all; platforms = platforms.all;
badPlatforms = platforms.aarch64;
maintainers = [ maintainers.arcadio ]; maintainers = [ maintainers.arcadio ];
}; };
} }

View file

@ -16,12 +16,12 @@ with lib;
buildGoPackage rec { buildGoPackage rec {
pname = "gitea"; pname = "gitea";
version = "1.16.2"; version = "1.16.3";
# not fetching directly from the git repo, because that lacks several vendor files for the web UI # not fetching directly from the git repo, because that lacks several vendor files for the web UI
src = fetchurl { src = fetchurl {
url = "https://github.com/go-gitea/gitea/releases/download/v${version}/gitea-src-${version}.tar.gz"; url = "https://github.com/go-gitea/gitea/releases/download/v${version}/gitea-src-${version}.tar.gz";
sha256 = "sha256-fN7F76TzxBwvUbe2Ha5sfAk6x+FaUDIdx8YaQKfndSU="; sha256 = "sha256-kT87CV/P1MUBLRetzYdIsIGVDjp9F6zmD2ovmcmy4Ys=";
}; };
unpackPhase = '' unpackPhase = ''

View file

@ -58,6 +58,7 @@ buildGoModule rec {
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
mkdir -p {$out/{bin,etc,lib,share},$man} # ensure paths exist for the wrapper
${if stdenv.isDarwin then '' ${if stdenv.isDarwin then ''
mv bin/{darwin/podman,podman} mv bin/{darwin/podman,podman}
'' else '' '' else ''

View file

@ -1,13 +1,14 @@
{ lib, stdenv, fetchurl, acpica-tools, python3 }: { lib, stdenv, fetchgit, acpica-tools, python3 }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "seabios"; pname = "seabios";
version = "1.15.0"; version = "1.16.0";
src = fetchurl { src = fetchgit {
url = "https://www.seabios.org/downloads/${pname}-${version}.tar.gz"; url = "https://git.seabios.org/seabios.git";
sha256 = "sha256-YownF8mUMmtFMlFXPRBZ4qOhEtSqSIds4nyz8d4ZiPg="; rev = "rel-${version}";
sha256 = "0acal1rr7sya86wlhw2mgimabwhjnr0y1pl5zxwb79j8k1w1r8sh";
}; };
nativeBuildInputs = [ python3 ]; nativeBuildInputs = [ python3 ];
@ -43,7 +44,7 @@ stdenv.mkDerivation rec {
''; '';
homepage = "http://www.seabios.org"; homepage = "http://www.seabios.org";
license = licenses.lgpl3; license = licenses.lgpl3;
maintainers = [ maintainers.tstrobel ]; maintainers = with maintainers; [ tstrobel ];
platforms = [ "i686-linux" "x86_64-linux" ]; platforms = [ "i686-linux" "x86_64-linux" ];
}; };
} }

View file

@ -38,7 +38,8 @@ rec {
contents ? [], contents ? [],
diskSize ? 1024, diskSize ? 1024,
runScript ? "#!${stdenv.shell}\nexec /bin/sh", runScript ? "#!${stdenv.shell}\nexec /bin/sh",
runAsRoot ? null runAsRoot ? null,
memSize ? 512
}: }:
let layer = mkLayer { let layer = mkLayer {
inherit name; inherit name;
@ -54,6 +55,7 @@ rec {
size = diskSize; size = diskSize;
fullName = "singularity-run-disk"; fullName = "singularity-run-disk";
}; };
inherit memSize;
} }
'' ''
rm -rf $out rm -rf $out

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "numix-icon-theme-circle"; pname = "numix-icon-theme-circle";
version = "22.02.06"; version = "22.03.01";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "numixproject"; owner = "numixproject";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-a+h5DMxVM1TPVx8yuKwRzjjnBLnIWMCCKG+BPg1Hq5Y="; sha256 = "sha256-adSoFKvemirQtxoS6KrQvXxtIOKFZ73PTktVXytblbM=";
}; };
nativeBuildInputs = [ gtk3 ]; nativeBuildInputs = [ gtk3 ];

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "numix-icon-theme-square"; pname = "numix-icon-theme-square";
version = "22.02.06"; version = "22.03.01";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "numixproject"; owner = "numixproject";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-dKBNB1udRysDe3HbUh2qudQDeLgS/wmSnY3nAWnmjQo="; sha256 = "sha256-VCXHInaxn5BKY9Yth6DjoKa/JS2WVjvwAfRMiL2r1B0=";
}; };
nativeBuildInputs = [ gtk3 ]; nativeBuildInputs = [ gtk3 ];

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "papirus-icon-theme"; pname = "papirus-icon-theme";
version = "20220204"; version = "20220302";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "PapirusDevelopmentTeam"; owner = "PapirusDevelopmentTeam";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-DYz2fnn1ZfX09NQcRXmGTYY95K5wOWhlmJeDjEvN1vY="; sha256 = "sha256-X92an2jGRgZ/Q3cr6Q729DA2hs/2y34HoRpB1rxk0hI=";
}; };
nativeBuildInputs = [ gtk3 ]; nativeBuildInputs = [ gtk3 ];

View file

@ -80,9 +80,9 @@ rec {
}; };
cudatoolkit_11_6 = common { cudatoolkit_11_6 = common {
version = "11.6.0"; version = "11.6.1";
url = "https://developer.download.nvidia.com/compute/cuda/11.6.0/local_installers/cuda_11.6.0_510.39.01_linux.run"; url = "https://developer.download.nvidia.com/compute/cuda/11.6.1/local_installers/cuda_11.6.1_510.47.03_linux.run";
sha256 = "10wcv42ljp7hz1k0wzgwb4hi8834rfipzdc01428c1wpcdnxm0qp"; sha256 = "sha256-qyGa/OALdCABEyaYZvv/derQN7z8I1UagzjCaEyYTX4=";
gcc = gcc10; # can bump to 11 along with stdenv.cc gcc = gcc10; # can bump to 11 along with stdenv.cc
}; };

View file

@ -1,13 +1,13 @@
{ lib, stdenv, fetchFromGitHub, cmake }: { lib, stdenv, fetchFromGitHub, cmake }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "cmark-gfm"; pname = "cmark-gfm";
version = "0.29.0.gfm.2"; version = "0.29.0.gfm.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "github"; owner = "github";
repo = "cmark-gfm"; repo = "cmark-gfm";
rev = version; rev = version;
sha256 = "sha256-8PjG87hR66ozKx+PSuKi0vHIoKICHSLdl2cKUYf+5m8="; sha256 = "sha256-V3XegSjqKLCMpfnoYHr9/r5fSC2CC7A2jXkAcHUt7eA=";
}; };
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];

View file

@ -16,13 +16,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "libdeltachat"; pname = "libdeltachat";
version = "1.75.0"; version = "1.76.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "deltachat"; owner = "deltachat";
repo = "deltachat-core-rust"; repo = "deltachat-core-rust";
rev = version; rev = version;
hash = "sha256-3oYQwV1Srnq8VfS+M+BwIznXRxQFXr78SwXO3Xu08ws="; hash = "sha256-aeYOszOFyLaC1xKswYZLzqoWSFFWOOeOkc+WrtqU0jo=";
}; };
patches = [ patches = [
@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
cargoDeps = rustPlatform.fetchCargoTarball { cargoDeps = rustPlatform.fetchCargoTarball {
inherit src; inherit src;
name = "${pname}-${version}"; name = "${pname}-${version}";
hash = "sha256-jti1aY8a9YB8x6fz7UqTY4uDj6gkMnG1hTN/Mgc+mHs="; hash = "sha256-sBFXcLXpAkX+HzRKrLKaHhi5ieS8Yc/Uf30WcXyWrok=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -69,6 +69,7 @@ stdenv.mkDerivation rec {
"-Dintrospection=${mesonEnableFeature enableGI}" "-Dintrospection=${mesonEnableFeature enableGI}"
"-Dsystemd-system-service=true" "-Dsystemd-system-service=true"
"-Dsystemd-system-unit-dir=${placeholder "out"}/lib/systemd/system" "-Dsystemd-system-unit-dir=${placeholder "out"}/lib/systemd/system"
"-Dsysconfdir=/etc"
]; ];
passthru.updateScript = nix-update-script { passthru.updateScript = nix-update-script {

View file

@ -24,7 +24,7 @@ with self;
hash = "0gl89zpgsf3n30nb6v5cns27g2bfg4rf3s2427gqvwbkr5gcf7ri"; hash = "0gl89zpgsf3n30nb6v5cns27g2bfg4rf3s2427gqvwbkr5gcf7ri";
meta.description = "Full standard library replacement for OCaml"; meta.description = "Full standard library replacement for OCaml";
propagatedBuildInputs = [ sexplib0 ]; propagatedBuildInputs = [ sexplib0 ];
buildInputs = [ dune-configurator ]; buildInputs = [ dune_1 ];
}; };
stdio = janePackage { stdio = janePackage {
@ -208,7 +208,7 @@ with self;
pname = "jst-config"; pname = "jst-config";
hash = "0yxcz13vda1mdh9ah7qqxwfxpcqang5sgdssd8721rszbwqqaw93"; hash = "0yxcz13vda1mdh9ah7qqxwfxpcqang5sgdssd8721rszbwqqaw93";
meta.description = "Compile-time configuration for Jane Street libraries"; meta.description = "Compile-time configuration for Jane Street libraries";
buildInputs = [ ppx_assert ]; buildInputs = [ dune_1 ppx_assert ];
}; };
ppx_optcomp = janePackage { ppx_optcomp = janePackage {

View file

@ -1,13 +1,11 @@
{ lib, fetchFromGitHub, buildDunePackage, defaultVersion ? "0.12.0" }: { lib, fetchFromGitHub, buildDunePackage, defaultVersion ? "0.12.0" }:
{ pname, version ? defaultVersion, hash, buildInputs ? [], ...}@args: { pname, version ? defaultVersion, hash, ...}@args:
buildDunePackage (args // { buildDunePackage (args // {
inherit version buildInputs; inherit version;
minimumOCamlVersion = "4.07"; minimalOCamlVersion = "4.07";
useDune2 = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "janestreet"; owner = "janestreet";

View file

@ -6,13 +6,13 @@
}: }:
buildPythonPackage rec { buildPythonPackage rec {
version = "9.0.0"; version = "9.1.0";
pname = "azure-mgmt-containerregistry"; pname = "azure-mgmt-containerregistry";
disabled = isPy27; disabled = isPy27;
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "9f6c5894d32ba696527ecf0ff155bb43c325dff6a11a6de60cd22ea3f5fb180d"; sha256 = "sha256-jkzGLDqrJgwCnz27lGzFk4d2q+j0P+PU8uUVGQg7MkA=";
extension = "zip"; extension = "zip";
}; };

View file

@ -11,12 +11,12 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "azure-mgmt-datafactory"; pname = "azure-mgmt-datafactory";
version = "2.2.1"; version = "2.3.0";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
extension = "zip"; extension = "zip";
sha256 = "sha256-/YmFlK5xl3HjaKGAhQu0JUVeujzPkAb8gNik4Lzp470="; sha256 = "sha256-pjBjFPkKhKd8XI6wmzX/rAssHINMzDAZa+XRqG/pLYo=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View file

@ -13,12 +13,12 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "bandit"; pname = "bandit";
version = "1.7.3"; version = "1.7.4";
disabled = !isPy3k; disabled = !isPy3k;
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "sha256-WHcsqVG/ESndqKKA01FUfegycgv3tcKfrDEDknmAuKY="; sha256 = "sha256-LWOoxXNBe64ziWLUubBvvGCA907NlVoJKEnh5lxxe9I=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View file

@ -19,13 +19,13 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "cfn-lint"; pname = "cfn-lint";
version = "0.56.4"; version = "0.58.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "aws-cloudformation"; owner = "aws-cloudformation";
repo = "cfn-python-lint"; repo = "cfn-python-lint";
rev = "v${version}"; rev = "v${version}";
sha256 = "0li8zkdvmgfxqzqs1rvd48mwim0bhjwmxlywqxjix0a43kvkvh77"; sha256 = "sha256-ArpvP4tbRf1fK8BPokRXqS3YyaFiOLBrR8uQHko5iKo=";
}; };
postPatch = '' postPatch = ''

View file

@ -9,10 +9,15 @@ buildPythonPackage rec {
sha256 = "0fb7b3fd03d76eddd4474b0561e1c2662457593a74cc300fd27e5409cd4d7922"; sha256 = "0fb7b3fd03d76eddd4474b0561e1c2662457593a74cc300fd27e5409cd4d7922";
}; };
postPatch = ''
substituteInPlace setup.py --replace "lark-parser" "lark"
'';
propagatedBuildInputs = [ hypothesis lark libcst ]; propagatedBuildInputs = [ hypothesis lark libcst ];
checkInputs = [ black parso pytestCheckHook pytest-cov pytest-xdist ]; checkInputs = [ black parso pytestCheckHook pytest-cov pytest-xdist ];
pytestFlagsArray = [ "-v" ]; # tests are fairly slow, prevents timeout due to no stdout printing
pythonImportsCheck = [ "hypothesmith" ]; pythonImportsCheck = [ "hypothesmith" ];
meta = with lib; { meta = with lib; {

View file

@ -1,8 +1,8 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt
index 66e6d49..78f7b42 100644 index 17c7032..12ed398 100644
--- a/CMakeLists.txt --- a/CMakeLists.txt
+++ b/CMakeLists.txt +++ b/CMakeLists.txt
@@ -1,23 +1,6 @@ @@ -1,87 +1,12 @@
cmake_minimum_required(VERSION 3.13.0) cmake_minimum_required(VERSION 3.13.0)
project(kaldi_binaries) project(kaldi_binaries)
@ -24,9 +24,8 @@ index 66e6d49..78f7b42 100644
-endif() -endif()
- -
set(BINARIES set(BINARIES
tools/openfst/bin/fstarcsort${CMAKE_EXECUTABLE_SUFFIX} )
tools/openfst/bin/fstcompile${CMAKE_EXECUTABLE_SUFFIX} set(LIBRARIES
@@ -29,63 +12,6 @@ set(LIBRARIES
src/lib/libkaldi-dragonfly${CMAKE_SHARED_LIBRARY_SUFFIX} src/lib/libkaldi-dragonfly${CMAKE_SHARED_LIBRARY_SUFFIX}
) )
@ -87,30 +86,33 @@ index 66e6d49..78f7b42 100644
- message(FATAL_ERROR "KALDI_BRANCH not set! Use 'origin/master'?") - message(FATAL_ERROR "KALDI_BRANCH not set! Use 'origin/master'?")
- # set(KALDI_BRANCH "origin/master") - # set(KALDI_BRANCH "origin/master")
-endif() -endif()
-
message("MAKE_EXE = ${MAKE_EXE}") message("MAKE_EXE = ${MAKE_EXE}")
message("PYTHON_EXECUTABLE = ${PYTHON_EXECUTABLE}") message("PYTHON_EXECUTABLE = ${PYTHON_EXECUTABLE}")
@@ -99,63 +25,4 @@ message("CMAKE_CURRENT_BINARY_DIR = ${CMAKE_CURRENT_BINARY_DIR}") message("PYTHON_INCLUDE_DIR = ${PYTHON_INCLUDE_DIR}")
@@ -94,65 +19,4 @@ message("CMAKE_CURRENT_BINARY_DIR = ${CMAKE_CURRENT_BINARY_DIR}")
# CXXFLAGS are set and exported in kaldi-configure-wrapper.sh # CXXFLAGS are set and exported in kaldi-configure-wrapper.sh
-if(NOT "${CMAKE_HOST_SYSTEM_NAME}" STREQUAL "Windows") -if(NOT "${CMAKE_HOST_SYSTEM_NAME}" STREQUAL "Windows")
- set(STRIP_LIBS_COMMAND find src/lib tools/openfst/lib -name *${CMAKE_SHARED_LIBRARY_SUFFIX} | xargs strip) - set(STRIP_LIBS_COMMAND find src/lib tools/openfst/lib -name *${CMAKE_SHARED_LIBRARY_SUFFIX} | xargs strip)
- set(STRIP_DST_COMMAND find ${DST} | xargs strip) - # set(STRIP_DST_COMMAND find ${DST} [[[other specifiers]]] | xargs strip)
- if("${CMAKE_HOST_SYSTEM_NAME}" STREQUAL "Darwin") - if("${CMAKE_HOST_SYSTEM_NAME}" STREQUAL "Darwin")
- list(APPEND STRIP_LIBS_COMMAND -x) - list(APPEND STRIP_LIBS_COMMAND -x)
- list(APPEND STRIP_DST_COMMAND -x) - # list(APPEND STRIP_DST_COMMAND -x)
- endif() - endif()
- # set(STRIP_LIBS_COMMAND true)
- set(STRIP_DST_COMMAND true)
- ExternalProject_Add(kaldi - ExternalProject_Add(kaldi
- GIT_CONFIG advice.detachedHead=false - GIT_CONFIG advice.detachedHead=false
- GIT_REPOSITORY https://github.com/daanzu/kaldi-fork-active-grammar.git - GIT_REPOSITORY https://github.com/daanzu/kaldi-fork-active-grammar.git
- GIT_TAG ${KALDI_BRANCH} - GIT_TAG ${KALDI_BRANCH}
- GIT_SHALLOW TRUE - GIT_SHALLOW TRUE
- CONFIGURE_COMMAND sed -i.bak -e "s/status=0/exit 0/g" tools/extras/check_dependencies.sh && cp ${PROJECT_SOURCE_DIR}/building/kaldi-configure-wrapper.sh src/ - CONFIGURE_COMMAND sed -i.bak -e "s/status=0/exit 0/g" tools/extras/check_dependencies.sh && sed -i.bak -e "s/openfst_add_CXXFLAGS = -g -O2/openfst_add_CXXFLAGS = -g0 -O3/g" tools/Makefile && cp ${PROJECT_SOURCE_DIR}/building/kaldi-configure-wrapper.sh src/
- BUILD_IN_SOURCE TRUE - BUILD_IN_SOURCE TRUE
- BUILD_COMMAND ${MATHLIB_BUILD_COMMAND} && cd tools && ${MAKE_EXE} ${MAKE_FLAGS} && cd openfst && autoreconf && cd ../../src && bash ./kaldi-configure-wrapper.sh ./configure ${KALDI_CONFIG_FLAGS} && ${MAKE_EXE} ${MAKE_FLAGS} depend && ${MAKE_EXE} ${MAKE_FLAGS} dragonfly dragonflybin bin fstbin lmbin - BUILD_COMMAND ${MATHLIB_BUILD_COMMAND} && cd tools && ${MAKE_EXE} ${MAKE_FLAGS} && cd openfst && autoreconf && cd ../../src && bash ./kaldi-configure-wrapper.sh ./configure ${KALDI_CONFIG_FLAGS} && ${MAKE_EXE} ${MAKE_FLAGS} depend && ${MAKE_EXE} ${MAKE_FLAGS} dragonfly
- LIST_SEPARATOR " " - LIST_SEPARATOR " "
- INSTALL_COMMAND ${STRIP_LIBS_COMMAND} && mkdir -p ${DST} && cp ${BINARIES} ${LIBRARIES} ${DST} - INSTALL_COMMAND ${STRIP_LIBS_COMMAND} && mkdir -p ${DST} && cp ${BINARIES} ${LIBRARIES} ${DST} && ${STRIP_DST_COMMAND}
- ) - )
-endif() -endif()
- -

View file

@ -1,5 +1,5 @@
diff --git a/kaldi_active_grammar/utils.py b/kaldi_active_grammar/utils.py diff --git a/kaldi_active_grammar/utils.py b/kaldi_active_grammar/utils.py
index 0b70c7f..21e1d62 100644 index 823f997..3850336 100644
--- a/kaldi_active_grammar/utils.py --- a/kaldi_active_grammar/utils.py
+++ b/kaldi_active_grammar/utils.py +++ b/kaldi_active_grammar/utils.py
@@ -79,7 +79,7 @@ elif sys.platform.startswith('linux'): platform = 'linux' @@ -79,7 +79,7 @@ elif sys.platform.startswith('linux'): platform = 'linux'
@ -8,10 +8,10 @@ index 0b70c7f..21e1d62 100644
-exec_dir = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'exec', platform) -exec_dir = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'exec', platform)
+exec_dir = '/' +exec_dir = '/'
library_extension = dict(windows='.dll', linux='.so', macos='.dylib')[platform]
subprocess_seperator = '^&' if platform == 'windows' else ';'
@@ -89,13 +89,13 @@ class ExternalProcess(object): import ush
@@ -87,13 +87,13 @@ class ExternalProcess(object):
shell = ush.Shell(raise_on_error=True) shell = ush.Shell(raise_on_error=True)

View file

@ -50,6 +50,8 @@ buildPythonPackage rec {
nativeBuildInputs = [ scikit-build cmake ]; nativeBuildInputs = [ scikit-build cmake ];
propagatedBuildInputs = [ ush requests numpy cffi ]; propagatedBuildInputs = [ ush requests numpy cffi ];
doCheck = false; # no tests exist
meta = with lib; { meta = with lib; {
description = "Python Kaldi speech recognition"; description = "Python Kaldi speech recognition";
homepage = "https://github.com/daanzu/kaldi-active-grammar"; homepage = "https://github.com/daanzu/kaldi-active-grammar";

View file

@ -3,17 +3,18 @@
, fetchFromGitHub , fetchFromGitHub
, python , python
, regex , regex
, pytestCheckHook
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "lark"; pname = "lark";
version = "1.0.0"; version = "1.1.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "lark-parser"; owner = "lark-parser";
repo = "lark"; repo = "lark";
rev = version; rev = version;
sha256 = "0pfvjh4ydc49gs6m8b3ip85c8nd4da2bhz9714fwcyl3hdp33q7n"; sha256 = "sha256-Y1bDSiFnqAKTlIcd8aAgtc+I3TLnWF8hhQK2ez96TQs=";
}; };
# Optional import, but fixes some re known bugs & allows advanced regex features # Optional import, but fixes some re known bugs & allows advanced regex features
@ -26,15 +27,11 @@ buildPythonPackage rec {
"lark.grammars" "lark.grammars"
]; ];
checkPhase = '' checkInputs = [ pytestCheckHook ];
runHook preCheck
# Official way to run the tests. Runs unittest internally. disabledTestPaths = [
# pytest produces issues with some test resource paths (relies on __main__) "tests/test_nearley/test_nearley.py" # requires unpackaged Js2Py library
${python.interpreter} -m tests ];
runHook postCheck
'';
meta = with lib; { meta = with lib; {
description = "A modern parsing library for Python, implementing Earley & LALR(1) and an easy interface"; description = "A modern parsing library for Python, implementing Earley & LALR(1) and an easy interface";

View file

@ -9,7 +9,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "pycfmodel"; pname = "pycfmodel";
version = "0.17.0"; version = "0.17.1";
format = "setuptools"; format = "setuptools";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
@ -18,7 +18,7 @@ buildPythonPackage rec {
owner = "Skyscanner"; owner = "Skyscanner";
repo = pname; repo = pname;
rev = version; rev = version;
hash = "sha256-IfeGNAgVCnrzipQpGiEqfWWNkUNmeH7TInl8kje52js="; hash = "sha256-Rw0sZ2k+tXo04mvlL83hUgdHIND5NIsVH/CzrfmbKlE=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View file

@ -7,13 +7,15 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "pyobihai"; pname = "pyobihai";
version = "1.3.1"; version = "1.3.2";
disabled = pythonOlder "3.6"; format = "setuptools";
disabled = pythonOlder "3.7";
# GitHub release, https://github.com/dshokouhi/pyobihai/issues/10 # GitHub release, https://github.com/dshokouhi/pyobihai/issues/10
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "1vvf5if57dfd091a7fb5rvx63hvf0isrx28j72nj2aav1as460qp"; hash = "sha256-zhsnJyhXlugK0nJ7FJZZcrq2VDQt1a9uCgsJAIABZ28=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [
@ -23,7 +25,9 @@ buildPythonPackage rec {
# Project has no tests # Project has no tests
doCheck = false; doCheck = false;
pythonImportsCheck = [ "pyobihai" ]; pythonImportsCheck = [
"pyobihai"
];
meta = with lib; { meta = with lib; {
description = "Python package to interact with Obihai devices"; description = "Python package to interact with Obihai devices";

View file

@ -20,7 +20,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "slack-sdk"; pname = "slack-sdk";
version = "3.15.1"; version = "3.15.2";
format = "setuptools"; format = "setuptools";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
@ -29,7 +29,7 @@ buildPythonPackage rec {
owner = "slackapi"; owner = "slackapi";
repo = "python-slack-sdk"; repo = "python-slack-sdk";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-N8JvNK1ddlCabzCmEv9TItqXDT7A4Dt8dhMLBICWXHA="; sha256 = "sha256-lhdh4Eo7yIsukXoKI6Ss793fYmAu91O1UElmxV9xAc4=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View file

@ -7,14 +7,14 @@
buildPythonApplication rec { buildPythonApplication rec {
pname = "sybil"; pname = "sybil";
version = "3.0.0"; version = "3.0.1";
format = "setuptools"; format = "setuptools";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "sha256-dpLtZueT5eea5qcM8s+GGRftSOr/DYrfgl5k2Fgg8lE="; hash = "sha256-bwLcIgSvflohIDeSTZdPcngfbcGP08RMx85GOhIPUw0=";
}; };
checkInputs = [ checkInputs = [
@ -22,7 +22,7 @@ buildPythonApplication rec {
]; ];
disabledTests = [ disabledTests = [
# sensitive to output of other commands # Sensitive to output of other commands
"test_namespace" "test_namespace"
"test_unittest" "test_unittest"
]; ];

View file

@ -12,7 +12,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "testfixtures"; pname = "testfixtures";
version = "6.18.3"; version = "6.18.5";
format = "setuptools"; format = "setuptools";
# DO NOT CONTACT upstream. # DO NOT CONTACT upstream.
# https://github.com/simplistix/ is only concerned with internal CI process. # https://github.com/simplistix/ is only concerned with internal CI process.
@ -25,12 +25,9 @@ buildPythonPackage rec {
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "sha256-JgAQCulv/QgjNLN441VVD++LSlKab6TDT0cTCQXHQm0="; hash = "sha256-Atrog/Vn9bcP0608nu+5WRLniskL5sdES14vRr9XLIQ=";
}; };
# no longer compatible with sybil
# https://github.com/simplistix/testfixtures/issues/169
doCheck = false;
checkInputs = [ checkInputs = [
mock mock
pytestCheckHook pytestCheckHook
@ -44,19 +41,6 @@ buildPythonPackage rec {
"testfixtures/tests/test_django" "testfixtures/tests/test_django"
]; ];
disabledTests = lib.optionals (pythonAtLeast "3.10") [
# https://github.com/simplistix/testfixtures/issues/168
"test_invalid_communicate_call"
"test_invalid_kill"
"test_invalid_parameters"
"test_invalid_poll"
"test_invalid_send_signal"
"test_invalid_terminate"
"test_invalid_wait_call"
"test_replace_delattr_cant_remove"
"test_replace_delattr_cant_remove_not_strict"
];
pytestFlagsArray = [ pytestFlagsArray = [
"testfixtures/tests" "testfixtures/tests"
]; ];

View file

@ -0,0 +1,44 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, matplotlib
, numpy
, pillow
, webcolors
, flit-core
, pytestCheckHook
, pandas
}:
buildPythonPackage rec {
pname = "tikzplotlib";
version = "0.10.1";
format = "pyproject";
src = fetchFromGitHub {
owner = "nschloe";
repo = pname;
rev = "v${version}";
sha256 = "sha256-PLExHhEnxkEiXsE0rqvpNWwVZ+YoaDa2BTx8LktdHl0=";
};
propagatedBuildInputs = [
matplotlib
numpy
pillow
webcolors
flit-core
];
checkInputs = [
pytestCheckHook
pandas
];
meta = with lib; {
description = "Save matplotlib figures as TikZ/PGFplots for smooth integration into LaTeX";
homepage = "https://github.com/nschloe/tikzplotlib";
license = licenses.mit;
maintainers = with maintainers; [ doronbehar ];
};
}

View file

@ -5,16 +5,16 @@
buildGoModule rec { buildGoModule rec {
pname = "checkmate"; pname = "checkmate";
version = "0.5.7"; version = "0.5.8";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "adedayo"; owner = "adedayo";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-RCGJ7Xa5HLzcngv79NyocbNGoYZMAKyv/svRScM1vq0="; sha256 = "sha256-nzhzeXy70UQ1HP3/PCBnUPhrjg7CnKURMCH0iJ099E0=";
}; };
vendorSha256 = "sha256-ZURtNED8gb0QsuXxJd9oBSx68ABcwlvVpkbd7lhiA9s="; vendorSha256 = "sha256-uQRAVbLnzY+E3glMJ3AvmbtmwD2LkuqCh2mUpqZbmaA=";
subPackages = [ "." ]; subPackages = [ "." ];

View file

@ -1,26 +1,24 @@
{ lib { lib
, argon2-cffi-bindings
, buildPythonApplication , buildPythonApplication
, fetchPypi
# buildInputs
, glibcLocales
, pkginfo
, check-manifest , check-manifest
# propagatedBuildInputs
, py
, devpi-common , devpi-common
, pluggy
, setuptools
# CheckInputs
, pytest
, pytest-flake8
, webtest
, mock
, devpi-server , devpi-server
, tox , fetchPypi
, sphinx
, wheel
, git , git
, glibcLocales
, mercurial , mercurial
, mock
, pkginfo
, pluggy
, py
, pytestCheckHook
, pytest-flake8
, setuptools
, sphinx
, tox
, webtest
, wheel
}: }:
buildPythonApplication rec { buildPythonApplication rec {
@ -29,24 +27,45 @@ buildPythonApplication rec {
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "362eb26e95136a792491861cc2728d14a6309a9d4c4f13a7b9c3e6fd39de58ec"; hash = "sha256-Ni6ybpUTankkkYYcwnKNFKYwmp1MTxOnucPm/TneWOw=";
}; };
buildInputs = [ glibcLocales ]; buildInputs = [
glibcLocales
propagatedBuildInputs = [ py devpi-common pluggy setuptools check-manifest pkginfo ];
checkInputs = [
pytest pytest-flake8 webtest mock
devpi-server tox
sphinx wheel git mercurial
]; ];
# --fast skips tests which try to start a devpi-server improperly propagatedBuildInputs = [
checkPhase = '' argon2-cffi-bindings
HOME=$TMPDIR py.test --fast check-manifest
devpi-common
pkginfo
pluggy
py
setuptools
];
checkInputs = [
devpi-server
git
mercurial
mock
pytestCheckHook
pytest-flake8
sphinx
tox
webtest
wheel
];
preCheck = ''
export HOME=$(mktemp -d);
''; '';
pytestFlagsArray = [
# --fast skips tests which try to start a devpi-server improperly
"--fast"
];
LC_ALL = "en_US.UTF-8"; LC_ALL = "en_US.UTF-8";
__darwinAllowLocalNetworking = true; __darwinAllowLocalNetworking = true;
@ -57,5 +76,4 @@ buildPythonApplication rec {
license = licenses.mit; license = licenses.mit;
maintainers = with maintainers; [ lewo makefu ]; maintainers = with maintainers; [ lewo makefu ];
}; };
} }

View file

@ -2,13 +2,13 @@
buildGoModule rec { buildGoModule rec {
pname = "esbuild"; pname = "esbuild";
version = "0.14.23"; version = "0.14.24";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "evanw"; owner = "evanw";
repo = "esbuild"; repo = "esbuild";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-7J8l4PCXDSddlUdMYaTo3KQjhUl1IRpks0iMiYxJzD4="; sha256 = "sha256-ayL5aTfYFdsmZ4Zpkij27HE/2MCyt6J5qQ1d0BIX0eE=";
}; };
vendorSha256 = "sha256-QPkBR+FscUc3jOvH7olcGUhM6OW4vxawmNJuRQxPuGs="; vendorSha256 = "sha256-QPkBR+FscUc3jOvH7olcGUhM6OW4vxawmNJuRQxPuGs=";

View file

@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "cargo-llvm-lines"; pname = "cargo-llvm-lines";
version = "0.4.13"; version = "0.4.14";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "dtolnay"; owner = "dtolnay";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-sN0i2oo0XuxneIK/w+jpxkcdm2rtqhyH2Y3CMPnH+ro="; sha256 = "sha256-ooFkw6QlMnlvyHPMkqAZUDaOHH8dktzbob5WevQsYXQ=";
}; };
cargoSha256 = "sha256-Gv7C4NFThNawhT+IYO0ZbpOh6w/yPeIJKZjzTyM/GJw="; cargoSha256 = "sha256-MgtFNrSjSvyjp1uD/OueSh+MCYSvZCyDabP20pI/8HI=";
meta = with lib; { meta = with lib; {
description = "Count the number of lines of LLVM IR across all instantiations of a generic function"; description = "Count the number of lines of LLVM IR across all instantiations of a generic function";

View file

@ -1,8 +1,8 @@
{ {
"1.18": { "1.18": {
"url": "https://launcher.mojang.com/v1/objects/125e5adf40c659fd3bce3e66e67a16bb49ecc1b9/server.jar", "url": "https://launcher.mojang.com/v1/objects/c8f83c5655308435b3dcf03c06d9fe8740a77469/server.jar",
"sha1": "125e5adf40c659fd3bce3e66e67a16bb49ecc1b9", "sha1": "c8f83c5655308435b3dcf03c06d9fe8740a77469",
"version": "1.18.1", "version": "1.18.2",
"javaVersion": 17 "javaVersion": 17
}, },
"1.17": { "1.17": {

View file

@ -0,0 +1,22 @@
{ buildGoModule, fetchFromGitHub, lib }:
buildGoModule rec {
pname = "endlessh-go";
version = "20220213";
src = fetchFromGitHub {
owner = "shizunge";
repo = "endlessh-go";
rev = version;
sha256 = "sha256-x/38w0GtzYBGWr0ZkfY2HmDEAUI54R833aH0RZSCTC0=";
};
vendorSha256 = "sha256-h/DpbXO+LUsB9NOAXUfNx3VOfEsiolfBEMBrAqVlU3A=";
proxyVendor = true;
meta = with lib; {
homepage = "https://github.com/shizunge/endlessh-go";
description = "An implementation of endlessh exporting Prometheus metrics";
license = licenses.gpl3;
maintainers = with maintainers; [ azahi ];
};
}

View file

@ -2,16 +2,16 @@
buildGoModule rec { buildGoModule rec {
pname = "gobgpd"; pname = "gobgpd";
version = "2.34.0"; version = "3.0.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "osrg"; owner = "osrg";
repo = "gobgp"; repo = "gobgp";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-xyakq5DXwzONEP6EvDpAuzCrTDWcs+7asDlq9Vf4c1k="; sha256 = "sha256-gyaAtFJubvDiz5b7lk6vmPHIqr9ccWK3N2iy4LvYiMg=";
}; };
vendorSha256 = "sha256-+dX/XByFW5/zvfXvyWePAv9X71dJEKaQf6xNXAXoMxw="; vendorSha256 = "sha256-RSsvFD3RvYKxdwPDGG3YHVUzKLgwReZkoVabH5KWXMA=";
postConfigure = '' postConfigure = ''
export CGO_ENABLED=0 export CGO_ENABLED=0

View file

@ -0,0 +1,23 @@
{buildGoModule, fetchFromGitHub, lib}:
buildGoModule rec {
pname = "cf-vault";
version = "0.0.11";
src = fetchFromGitHub {
owner = "jacobbednarz";
repo = pname;
rev = version;
sha256 = "sha256-Imd9qeT4xg5ujVPLHSSqoteSPl9t97q3Oc4C/vzHphg=";
};
vendorSha256 = "sha256-PkmbVg5HnsUaSL/Kp3YJVdyzpjgvr/p9mKNmOubwXQA=";
meta = with lib; {
description = ''
A tool for managing your Cloudflare credentials, securely..
'';
homepage = "https://github.com/jacobbednarz/cf-vault/";
license = licenses.mit;
maintainers = with maintainers; [ viraptor ];
};
}

View file

@ -0,0 +1,22 @@
{ buildGoModule, fetchFromGitHub, lib }:
buildGoModule rec {
pname = "ejson2env";
version = "2.0.2";
src = fetchFromGitHub {
owner = "Shopify";
repo = pname;
rev = "v${version}";
sha256 = "sha256-1nfMmjYKRo5vjOwLb3fX9SQ0CDHme1DAz0AGGpV4piI=";
};
vendorSha256 = "sha256-lais54Gm4UGJN8D+iFbP8utTfDr+v8qXZKLdpNKzJi8=";
meta = with lib; {
description = "A tool to simplify storing secrets that should be accessible in the shell environment in your git repo.";
homepage = "https://github.com/Shopify/ejson2env";
maintainers = with maintainers; [ viraptor ];
license = licenses.mit;
};
}

View file

@ -2,13 +2,13 @@
buildGoPackage rec { buildGoPackage rec {
pname = "exoscale-cli"; pname = "exoscale-cli";
version = "1.49.3"; version = "1.50.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "exoscale"; owner = "exoscale";
repo = "cli"; repo = "cli";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-ANykklex/T7JwZ/G3dB4UPkYx5jSE5AnztGsWHGfL8I="; sha256 = "sha256-RpUnJzMnYIvPpJd6+IVpDxCS/FGM+PHXvbQPJQEoS8Y=";
}; };
goPackagePath = "github.com/exoscale/cli"; goPackagePath = "github.com/exoscale/cli";

View file

@ -0,0 +1,28 @@
{ lib
, stdenv
, fetchFromGitHub
, cmake
}:
stdenv.mkDerivation rec {
pname = "vtm";
version = "0.6.0";
src = fetchFromGitHub {
owner = "netxs-group";
repo = "vtm";
rev = "v${version}";
sha256 = "sha256-Z6PSx7TwarQx0Mc3fSRPwV7yIPJK3xtW4k0LJ6RPYRY=";
};
nativeBuildInputs = [ cmake ];
cmakeFlags = [ "../src" ];
meta = {
homepage = "https://vtm.netxs.online/";
description = "Terminal multiplexer with window manager and session sharing";
license = lib.licenses.mit;
platforms = lib.platforms.all;
maintainers = with lib.maintainers; [ ahuzik ];
};
}

View file

@ -2,16 +2,16 @@
buildGoModule rec { buildGoModule rec {
pname = "gobgp"; pname = "gobgp";
version = "2.34.0"; version = "3.0.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "osrg"; owner = "osrg";
repo = "gobgp"; repo = "gobgp";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-xyakq5DXwzONEP6EvDpAuzCrTDWcs+7asDlq9Vf4c1k="; sha256 = "sha256-gyaAtFJubvDiz5b7lk6vmPHIqr9ccWK3N2iy4LvYiMg=";
}; };
vendorSha256 = "sha256-+dX/XByFW5/zvfXvyWePAv9X71dJEKaQf6xNXAXoMxw="; vendorSha256 = "sha256-RSsvFD3RvYKxdwPDGG3YHVUzKLgwReZkoVabH5KWXMA=";
postConfigure = '' postConfigure = ''
export CGO_ENABLED=0 export CGO_ENABLED=0

View file

@ -19,12 +19,12 @@ in
openssh_hpn = common rec { openssh_hpn = common rec {
pname = "openssh-with-hpn"; pname = "openssh-with-hpn";
version = "8.8p1"; version = "8.9p1";
extraDesc = " with high performance networking patches"; extraDesc = " with high performance networking patches";
src = fetchurl { src = fetchurl {
url = "mirror://openbsd/OpenSSH/portable/openssh-${version}.tar.gz"; url = "mirror://openbsd/OpenSSH/portable/openssh-${version}.tar.gz";
sha256 = "1s8z6f7mi1pwsl79cqai8cr350m5lf2ifcxff57wx6mvm478k425"; sha256 = "1ry5prcax0134v6srkgznpl9ch5snkgq7yvjqvd8c5mbnxa7cjgx";
}; };
extraPatches = [ extraPatches = [
@ -33,9 +33,9 @@ in
# HPN Patch from FreeBSD ports # HPN Patch from FreeBSD ports
(fetchpatch { (fetchpatch {
name = "ssh-hpn.patch"; name = "ssh-hpn.patch";
url = "https://raw.githubusercontent.com/freebsd/freebsd-ports/a981593e/security/openssh-portable/files/extra-patch-hpn"; url = "https://raw.githubusercontent.com/freebsd/freebsd-ports/ae66cffc19f357cbd51d5841c9b110a9ffd63e32/security/openssh-portable/files/extra-patch-hpn";
stripLen = 1; stripLen = 1;
sha256 = "sha256-+JvpPxktZAjhxLLK1lF4ijG9VlSWkqbRwotaLe6en64="; sha256 = "sha256-p3CmMqTgrqFZUo4ZuqaPLczAhjmPufkCvptVW5dI+MI=";
}) })
]; ];

View file

@ -47,6 +47,9 @@ buildPythonApplication rec {
hash = "sha256:1dizf9j3z7zk4lxvnszwx63xzd9r68f2iva5sszzf8s8na831dvd"; hash = "sha256:1dizf9j3z7zk4lxvnszwx63xzd9r68f2iva5sszzf8s8na831dvd";
}) })
]; ];
postPatch = ''
substituteInPlace pyproject.toml --replace "pdm-pep517>=0.9,<0.10" "pdm-pep517"
'';
propagatedBuildInputs = [ propagatedBuildInputs = [
blinker blinker

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "exploitdb"; pname = "exploitdb";
version = "2022-03-01"; version = "2022-03-03";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "offensive-security"; owner = "offensive-security";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-3bMroTIVjSMHV4tg3Um2E90Ph6j0vXRy0fSjGe9EPNE="; sha256 = "sha256-EH4PlUb0PGUwkgfk1oFPKimoJcWI/mozzzaTST1De7A=";
}; };
nativeBuildInputs = [ makeWrapper ]; nativeBuildInputs = [ makeWrapper ];

View file

@ -2,13 +2,13 @@
let let
pname = "jadx"; pname = "jadx";
version = "1.3.2"; version = "1.3.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "skylot"; owner = "skylot";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
hash = "sha256-5meBBBijX49EQc9VejySwiIKsyCBEKGKIXvH7en6XuU="; hash = "sha256-z8u6j6YLBHmgZKSGh/rFDDSnWZrBgWsqfKP3vhaukbY=";
}; };
deps = stdenv.mkDerivation { deps = stdenv.mkDerivation {
@ -40,7 +40,7 @@ let
''; '';
outputHashMode = "recursive"; outputHashMode = "recursive";
outputHash = "sha256-t+CkjoZqWqphxbg/4E3/7U8nKoV0AlITyRScLN8x6yY="; outputHash = "sha256-kiNtA63sINX7VRsq4JKAiZYzymHe1TrNetZsE6S9KVM=";
}; };
in stdenv.mkDerivation { in stdenv.mkDerivation {
inherit pname version src; inherit pname version src;

View file

@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
sha256 = "18ks5g4bx6iz9hdjxmi6a41ncxpb1hnsscdlddp2gr40k3vgd0pa"; sha256 = "18ks5g4bx6iz9hdjxmi6a41ncxpb1hnsscdlddp2gr40k3vgd0pa";
}; };
cargoSha256 = "05rfjangmyvmqm0bvl4bcvc7m4zhg66gknh85sxr3bzrlwzacwgw"; cargoSha256 = "0pn3vqv13n29h8069a38306vjlzlxf1m08ldv7lpzgqxhl8an00r";
buildInputs = (lib.optional stdenv.isDarwin Security); buildInputs = (lib.optional stdenv.isDarwin Security);

View file

@ -0,0 +1,35 @@
{ lib
, rustPlatform
, fetchFromGitHub
, stdenv
, Security
, testVersion
, igrep
}:
rustPlatform.buildRustPackage rec {
pname = "igrep";
version = "0.1.2";
src = fetchFromGitHub {
owner = "konradsz";
repo = "igrep";
rev = "v${version}";
sha256 = "sha256-ZbJogp4rTc3GAD71iQUIf5EqwJ8XD9/WmvdAcGIgcvY=";
};
cargoSha256 = "sha256-sj2GEyUPq9+JXlGpKYRNfhfwGf5F/J46AoOjUu4xm7I=";
buildInputs = lib.optionals stdenv.isDarwin [ Security ];
passthru.tests = {
version = testVersion { package = igrep; command = "ig --version"; };
};
meta = with lib; {
description = "Interactive Grep";
homepage = "https://github.com/konradsz/igrep";
license = licenses.mit;
maintainers = with maintainers; [ _0x4A6F ];
};
}

View file

@ -1040,8 +1040,12 @@ with pkgs;
amidst = callPackage ../tools/games/minecraft/amidst { }; amidst = callPackage ../tools/games/minecraft/amidst { };
cf-vault = callPackage ../tools/admin/cf-vault { };
cope = callPackage ../tools/misc/cope { }; cope = callPackage ../tools/misc/cope { };
ejson2env = callPackage ../tools/admin/ejson2env { };
gamemode = callPackage ../tools/games/gamemode { gamemode = callPackage ../tools/games/gamemode {
libgamemode32 = pkgsi686Linux.gamemode.lib; libgamemode32 = pkgsi686Linux.gamemode.lib;
}; };
@ -4549,7 +4553,8 @@ with pkgs;
cudatoolkit_11_2 cudatoolkit_11_2
cudatoolkit_11_3 cudatoolkit_11_3
cudatoolkit_11_4 cudatoolkit_11_4
cudatoolkit_11_5; cudatoolkit_11_5
cudatoolkit_11_6;
cudatoolkit = cudatoolkit_10; cudatoolkit = cudatoolkit_10;
@ -5208,6 +5213,8 @@ with pkgs;
endlessh = callPackage ../servers/endlessh { }; endlessh = callPackage ../servers/endlessh { };
endlessh-go = callPackage ../servers/endlessh-go { };
ericw-tools = callPackage ../applications/misc/ericw-tools { }; ericw-tools = callPackage ../applications/misc/ericw-tools { };
cryfs = callPackage ../tools/filesystems/cryfs { }; cryfs = callPackage ../tools/filesystems/cryfs { };
@ -6210,6 +6217,10 @@ with pkgs;
grin = callPackage ../tools/text/grin { }; grin = callPackage ../tools/text/grin { };
igrep = callPackage ../tools/text/igrep {
inherit (darwin.apple_sdk.frameworks) Security;
};
ripgrep = callPackage ../tools/text/ripgrep { ripgrep = callPackage ../tools/text/ripgrep {
inherit (darwin.apple_sdk.frameworks) Security; inherit (darwin.apple_sdk.frameworks) Security;
}; };
@ -10843,6 +10854,8 @@ with pkgs;
SDL = SDL_sixel; SDL = SDL_sixel;
}; };
vtm = callPackage ../tools/misc/vtm { };
witness = callPackage ../tools/security/witness { }; witness = callPackage ../tools/security/witness { };
openconnect = openconnect_gnutls; openconnect = openconnect_gnutls;

View file

@ -18,7 +18,7 @@ self:
let let
inherit (self) callPackage; inherit (self) callPackage;
inherit (python.passthru) isPy27 isPy35 isPy36 isPy37 isPy38 isPy39 isPy3k isPyPy pythonAtLeast pythonOlder; inherit (python.passthru) isPy27 isPy35 isPy36 isPy37 isPy38 isPy39 isPy310 isPy311 isPy3k isPyPy pythonAtLeast pythonOlder;
namePrefix = python.libPrefix + "-"; namePrefix = python.libPrefix + "-";
@ -107,7 +107,7 @@ in {
inherit pkgs stdenv; inherit pkgs stdenv;
inherit (python.passthru) isPy27 isPy35 isPy36 isPy37 isPy38 isPy39 isPy3k isPyPy pythonAtLeast pythonOlder; inherit (python.passthru) isPy27 isPy35 isPy36 isPy37 isPy38 isPy39 isPy310 isPy311 isPy3k isPyPy pythonAtLeast pythonOlder;
inherit python bootstrapped-pip buildPythonPackage buildPythonApplication; inherit python bootstrapped-pip buildPythonPackage buildPythonApplication;
inherit fetchPypi; inherit fetchPypi;
inherit hasPythonModule requiredPythonModules makePythonPath disabled disabledIf; inherit hasPythonModule requiredPythonModules makePythonPath disabled disabledIf;
@ -9909,6 +9909,8 @@ in {
tika = callPackage ../development/python-modules/tika { }; tika = callPackage ../development/python-modules/tika { };
tikzplotlib = callPackage ../development/python-modules/tikzplotlib { };
tiledb = callPackage ../development/python-modules/tiledb { tiledb = callPackage ../development/python-modules/tiledb {
inherit (pkgs) tiledb; inherit (pkgs) tiledb;
}; };