Merge master into staging-next

This commit is contained in:
Frederik Rietdijk 2020-02-06 19:43:36 +01:00
commit 38cf6eac19
78 changed files with 1180 additions and 1672 deletions

View file

@ -28,7 +28,8 @@ find . -type f | while read src; do
done
cat >"$SRCS" <<EOF
# DO NOT EDIT! This file is generated automatically by fetch-kde-qt.sh
# DO NOT EDIT! This file is generated automatically.
# Command: $0 $@
{ fetchurl, mirror }:
{

View file

@ -246,6 +246,23 @@ services.xserver.displayManager.defaultSession = "xfce+icewm";
upstream issue</link> for more information.
</para>
</listitem>
<listitem>
<para>
The <literal>roundcube</literal> module has been hardened.
<itemizedlist>
<listitem>
<para>
The password of the database is not written world readable in the store any more. If <literal>database.host</literal> is set to <literal>localhost</literal>, then a unix user of the same name as the database will be created and PostreSQL peer authentication will be used, removing the need for a password. Otherwise, a password is still needed and can be provided with the new option <literal>database.passwordFile</literal>, which should be set to the path of a file containing the password and readable by the user <literal>nginx</literal> only. The <literal>database.password</literal> option is insecure and deprecated. Usage of this option will print a warning.
</para>
</listitem>
<listitem>
<para>
A random <literal>des_key</literal> is set by default in the configuration of roundcube, instead of using the hardcoded and insecure default. To ensure a clean migration, all users will be logged out when you upgrade to this release.
</para>
</listitem>
</itemizedlist>
</para>
</listitem>
<listitem>
<para>
The packages <literal>openobex</literal> and <literal>obexftp</literal>

View file

@ -98,6 +98,7 @@
./programs/autojump.nix
./programs/bandwhich.nix
./programs/bash/bash.nix
./programs/bash-my-aws.nix
./programs/bcc.nix
./programs/browserpass.nix
./programs/captive-browser.nix

View file

@ -0,0 +1,25 @@
{ config, pkgs, lib, ... }:
with lib;
let
prg = config.programs;
cfg = prg.bash-my-aws;
initScript = ''
eval $(${pkgs.bash-my-aws}/bin/bma-init)
'';
in
{
options = {
programs.bash-my-aws = {
enable = mkEnableOption "bash-my-aws";
};
};
config = mkIf cfg.enable {
environment.systemPackages = with pkgs; [ bash-my-aws ];
programs.bash.interactiveShellInit = initScript;
};
}

View file

@ -29,8 +29,8 @@ let
listenInfo = unique (concatMap mkListenInfo vhosts);
enableHttp2 = any (vhost: vhost.http2) vhosts;
enableSSL = any (listen: listen.ssl) listenInfo;
enableUserDir = any (vhost: vhost.enableUserDir) vhosts;
# NOTE: generally speaking order of modules is very important
@ -44,6 +44,7 @@ let
"mpm_${cfg.multiProcessingModule}"
]
++ (if cfg.multiProcessingModule == "prefork" then [ "cgi" ] else [ "cgid" ])
++ optional enableHttp2 "http2"
++ optional enableSSL "ssl"
++ optional enableUserDir "userdir"
++ optional cfg.enableMellon { name = "auth_mellon"; path = "${pkgs.apacheHttpdPackages.mod_auth_mellon}/modules/mod_auth_mellon.so"; }
@ -164,6 +165,7 @@ let
SSLCertificateFile ${sslServerCert}
SSLCertificateKeyFile ${sslServerKey}
${optionalString (sslServerChain != null) "SSLCertificateChainFile ${sslServerChain}"}
${optionalString hostOpts.http2 "Protocols h2 h2c http/1.1"}
${acmeChallenge}
${mkVHostCommonConf hostOpts}
</VirtualHost>

View file

@ -135,6 +135,15 @@ in
description = "Path to server SSL chain file.";
};
http2 = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable HTTP 2. HTTP/2 is supported in all multi-processing modules that come with httpd. <emphasis>However, if you use the prefork mpm, there will
be severe restrictions.</emphasis> Refer to <link xlink:href="https://httpd.apache.org/docs/2.4/howto/http2.html#mpm-config"/> for details.
'';
};
adminAddr = mkOption {
type = types.nullOr types.str;
default = null;

View file

@ -60,7 +60,7 @@ in
-e '/^toolBarFont=/ s/,Regular$//'
fi
exec "${getBin plasma5.plasma-workspace}/bin/startkde"
exec "${getBin plasma5.plasma-workspace}/bin/startplasma-x11"
'';
};
@ -137,6 +137,7 @@ in
libkscreen
libksysguard
milou
plasma-browser-integration
plasma-integration
polkit-kde-agent
systemsettings

View file

@ -786,6 +786,18 @@ in
'';
};
systemd.suppressedSystemUnits = mkOption {
default = [ ];
type = types.listOf types.str;
example = [ "systemd-backlight@.service" ];
description = ''
A list of units to suppress when generating system systemd configuration directory. This has
priority over upstream units, <option>systemd.units</option>, and
<option>systemd.additionalUpstreamSystemUnits</option>. The main purpose of this is to
suppress a upstream systemd unit with any modifications made to it by other NixOS modules.
'';
};
};
@ -818,8 +830,11 @@ in
done
${concatStrings (mapAttrsToList (exec: target: "ln -s ${target} $out/${exec};\n") links)}
'';
enabledUpstreamSystemUnits = filter (n: ! elem n cfg.suppressedSystemUnits) upstreamSystemUnits;
enabledUnits = filterAttrs (n: v: ! elem n cfg.suppressedSystemUnits) cfg.units;
in ({
"systemd/system".source = generateUnits "system" cfg.units upstreamSystemUnits upstreamSystemWants;
"systemd/system".source = generateUnits "system" enabledUnits enabledUpstreamSystemUnits upstreamSystemWants;
"systemd/user".source = generateUnits "user" cfg.user.units upstreamUserUnits [];

View file

@ -39,7 +39,7 @@ let
entrypoint = mkOption {
type = with types; nullOr str;
description = "Overwrite the default entrypoint of the image.";
description = "Override the default entrypoint of the image.";
default = null;
example = "/bin/my-app";
};
@ -145,7 +145,7 @@ let
Note that this is a list of <literal>"src:dst"</literal> strings to
allow for <literal>src</literal> to refer to
<literal>/nix/store</literal> paths, which would difficult with an
<literal>/nix/store</literal> paths, which would be difficult with an
attribute set. There are also a variety of mount options available
as a third field; please refer to the
<link xlink:href="https://docs.docker.com/engine/reference/run/#volume-shared-filesystems">
@ -220,10 +220,9 @@ let
++ map escapeShellArg container.cmd
);
ExecStartPre = ["-${pkgs.docker}/bin/docker rm -f ${name}"
"-${pkgs.docker}/bin/docker image prune -f"] ++
(optional (container.imageFile != null)
["${pkgs.docker}/bin/docker load -i ${container.imageFile}"]);
ExecStartPre =
["-${pkgs.docker}/bin/docker rm -f ${name}"] ++
(optional (container.imageFile != null) "${pkgs.docker}/bin/docker load -i ${container.imageFile}");
ExecStop = ''${pkgs.bash}/bin/sh -c "[ $SERVICE_RESULT = success ] || ${pkgs.docker}/bin/docker stop ${name}"'';
ExecStopPost = "-${pkgs.docker}/bin/docker rm -f ${name}";

View file

@ -8,7 +8,7 @@
}
}:
with import ../lib/testing.nix { inherit system pkgs; };
with import ../lib/testing-python.nix { inherit system pkgs; };
with pkgs.lib;
mapAttrs (channel: chromiumPkg: makeTest rec {
@ -21,9 +21,11 @@ mapAttrs (channel: chromiumPkg: makeTest rec {
enableOCR = true;
user = "alice";
machine.imports = [ ./common/user-account.nix ./common/x11.nix ];
machine.virtualisation.memorySize = 2047;
machine.test-support.displayManager.auto.user = "alice";
machine.test-support.displayManager.auto.user = user;
machine.environment.systemPackages = [ chromiumPkg ];
startupHTML = pkgs.writeText "chromium-startup.html" ''
@ -47,155 +49,218 @@ mapAttrs (channel: chromiumPkg: makeTest rec {
xdoScript = pkgs.writeText "${name}.xdo" text;
in "${pkgs.xdotool}/bin/xdotool '${xdoScript}'";
in ''
import shlex
from contextlib import contextmanager, _GeneratorContextManager
# Run as user alice
sub ru ($) {
my $esc = $_[0] =~ s/'/'\\${"'"}'/gr;
return "su - alice -c '$esc'";
}
def ru(cmd):
return "su - ${user} -c " + shlex.quote(cmd)
sub createNewWin {
$machine->nest("creating a new Chromium window", sub {
$machine->execute(ru "${xdo "new-window" ''
search --onlyvisible --name "startup done"
windowfocus --sync
windowactivate --sync
''}");
$machine->execute(ru "${xdo "new-window" ''
key Ctrl+n
''}");
});
}
sub closeWin {
Machine::retry sub {
$machine->execute(ru "${xdo "close-window" ''
search --onlyvisible --name "new tab"
windowfocus --sync
windowactivate --sync
''}");
$machine->execute(ru "${xdo "close-window" ''
key Ctrl+w
''}");
for (1..20) {
my ($status, $out) = $machine->execute(ru "${xdo "wait-for-close" ''
search --onlyvisible --name "new tab"
''}");
return 1 if $status != 0;
$machine->sleep(1);
}
}
}
def create_new_win():
with machine.nested("Creating a new Chromium window"):
machine.execute(
ru(
"${xdo "new-window" ''
search --onlyvisible --name "startup done"
windowfocus --sync
windowactivate --sync
''}"
)
)
machine.execute(
ru(
"${xdo "new-window" ''
key Ctrl+n
''}"
)
)
sub waitForNewWin {
my $ret = 0;
$machine->nest("waiting for new Chromium window to appear", sub {
for (1..20) {
my ($status, $out) = $machine->execute(ru "${xdo "wait-for-window" ''
search --onlyvisible --name "new tab"
windowfocus --sync
windowactivate --sync
''}");
if ($status == 0) {
$ret = 1;
# XXX: Somehow Chromium is not accepting keystrokes for a few
# seconds after a new window has appeared, so let's wait a while.
$machine->sleep(10);
def close_win():
def try_close(_):
machine.execute(
ru(
"${xdo "close-window" ''
search --onlyvisible --name "new tab"
windowfocus --sync
windowactivate --sync
''}"
)
)
machine.execute(
ru(
"${xdo "close-window" ''
key Ctrl+w
''}"
)
)
for _ in range(1, 20):
status, out = machine.execute(
ru(
"${xdo "wait-for-close" ''
search --onlyvisible --name "new tab"
''}"
)
)
if status != 0:
return True
machine.sleep(1)
return False
last;
}
$machine->sleep(1);
}
});
return $ret;
}
retry(try_close)
sub createAndWaitForNewWin {
for (1..3) {
createNewWin;
return 1 if waitForNewWin;
}
die "new window didn't appear within 60 seconds";
}
sub testNewWin {
my ($desc, $code) = @_;
createAndWaitForNewWin;
subtest($desc, $code);
closeWin;
}
def wait_for_new_win():
ret = False
with machine.nested("Waiting for new Chromium window to appear"):
for _ in range(1, 20):
status, out = machine.execute(
ru(
"${xdo "wait-for-window" ''
search --onlyvisible --name "new tab"
windowfocus --sync
windowactivate --sync
''}"
)
)
if status == 0:
ret = True
machine.sleep(10)
break
machine.sleep(1)
return ret
$machine->waitForX;
my $url = "file://${startupHTML}";
$machine->execute(ru "ulimit -c unlimited; chromium \"$url\" & disown");
$machine->waitForText(qr/startup done/);
$machine->waitUntilSucceeds(ru "${xdo "check-startup" ''
search --sync --onlyvisible --name "startup done"
# close first start help popup
key -delay 1000 Escape
windowfocus --sync
windowactivate --sync
''}");
def create_and_wait_for_new_win():
for _ in range(1, 3):
create_new_win()
if wait_for_new_win():
return True
assert False, "new window did not appear within 60 seconds"
createAndWaitForNewWin;
$machine->screenshot("empty_windows");
closeWin;
$machine->screenshot("startup_done");
@contextmanager
def test_new_win(description):
create_and_wait_for_new_win()
with machine.nested(description):
yield
close_win()
testNewWin "check sandbox", sub {
$machine->succeed(ru "${xdo "type-url" ''
search --sync --onlyvisible --name "new tab"
windowfocus --sync
type --delay 1000 "chrome://sandbox"
''}");
$machine->succeed(ru "${xdo "submit-url" ''
search --sync --onlyvisible --name "new tab"
windowfocus --sync
key --delay 1000 Return
''}");
machine.wait_for_x()
$machine->screenshot("sandbox_info");
url = "file://${startupHTML}"
machine.succeed(ru(f'ulimit -c unlimited; chromium "{url}" & disown'))
machine.wait_for_text("startup done")
machine.wait_until_succeeds(
ru(
"${xdo "check-startup" ''
search --sync --onlyvisible --name "startup done"
# close first start help popup
key -delay 1000 Escape
windowfocus --sync
windowactivate --sync
''}"
)
)
$machine->succeed(ru "${xdo "find-window" ''
search --sync --onlyvisible --name "sandbox status"
windowfocus --sync
''}");
$machine->succeed(ru "${xdo "copy-sandbox-info" ''
key --delay 1000 Ctrl+a Ctrl+c
''}");
create_and_wait_for_new_win()
machine.screenshot("empty_windows")
close_win()
my $clipboard = $machine->succeed(ru "${pkgs.xclip}/bin/xclip -o");
die "sandbox not working properly: $clipboard"
unless $clipboard =~ /layer 1 sandbox.*namespace/mi
&& $clipboard =~ /pid namespaces.*yes/mi
&& $clipboard =~ /network namespaces.*yes/mi
&& $clipboard =~ /seccomp.*sandbox.*yes/mi
&& $clipboard =~ /you are adequately sandboxed/mi;
machine.screenshot("startup_done")
$machine->sleep(1);
$machine->succeed(ru "${xdo "find-window-after-copy" ''
search --onlyvisible --name "sandbox status"
''}");
with test_new_win("check sandbox"):
machine.succeed(
ru(
"${xdo "type-url" ''
search --sync --onlyvisible --name "new tab"
windowfocus --sync
type --delay 1000 "chrome://sandbox"
''}"
)
)
my $clipboard = $machine->succeed(ru "echo void | ${pkgs.xclip}/bin/xclip -i");
$machine->succeed(ru "${xdo "copy-sandbox-info" ''
key --delay 1000 Ctrl+a Ctrl+c
''}");
machine.succeed(
ru(
"${xdo "submit-url" ''
search --sync --onlyvisible --name "new tab"
windowfocus --sync
key --delay 1000 Return
''}"
)
)
my $clipboard = $machine->succeed(ru "${pkgs.xclip}/bin/xclip -o");
die "copying twice in a row does not work properly: $clipboard"
unless $clipboard =~ /layer 1 sandbox.*namespace/mi
&& $clipboard =~ /pid namespaces.*yes/mi
&& $clipboard =~ /network namespaces.*yes/mi
&& $clipboard =~ /seccomp.*sandbox.*yes/mi
&& $clipboard =~ /you are adequately sandboxed/mi;
machine.screenshot("sandbox_info")
$machine->screenshot("afer_copy_from_chromium");
};
machine.succeed(
ru(
"${xdo "find-window" ''
search --sync --onlyvisible --name "sandbox status"
windowfocus --sync
''}"
)
)
machine.succeed(
ru(
"${xdo "copy-sandbox-info" ''
key --delay 1000 Ctrl+a Ctrl+c
''}"
)
)
$machine->shutdown;
clipboard = machine.succeed(
ru("${pkgs.xclip}/bin/xclip -o")
)
filters = [
"layer 1 sandbox.*namespace",
"pid namespaces.*yes",
"network namespaces.*yes",
"seccomp.*sandbox.*yes",
"you are adequately sandboxed",
]
if not all(
re.search(filter, clipboard, flags=re.DOTALL | re.IGNORECASE)
for filter in filters
):
assert False, f"sandbox not working properly: {clipboard}"
machine.sleep(1)
machine.succeed(
ru(
"${xdo "find-window-after-copy" ''
search --onlyvisible --name "sandbox status"
''}"
)
)
clipboard = machine.succeed(
ru(
"echo void | ${pkgs.xclip}/bin/xclip -i"
)
)
machine.succeed(
ru(
"${xdo "copy-sandbox-info" ''
key --delay 1000 Ctrl+a Ctrl+c
''}"
)
)
clipboard = machine.succeed(
ru("${pkgs.xclip}/bin/xclip -o")
)
if not all(
re.search(filter, clipboard, flags=re.DOTALL | re.IGNORECASE)
for filter in filters
):
assert False, f"copying twice in a row does not work properly: {clipboard}"
machine.screenshot("after_copy_from_chromium")
machine.shutdown()
'';
}) channelMap

View file

@ -1,19 +1,18 @@
# Test printing via CUPS.
import ./make-test.nix ({pkgs, ... }:
import ./make-test-python.nix ({pkgs, ... }:
let
printingServer = startWhenNeeded: {
services.printing.enable = true;
services.printing.startWhenNeeded = startWhenNeeded;
services.printing.listenAddresses = [ "*:631" ];
services.printing.defaultShared = true;
services.printing.extraConf =
''
<Location />
Order allow,deny
Allow from all
</Location>
'';
services.printing.extraConf = ''
<Location />
Order allow,deny
Allow from all
</Location>
'';
networking.firewall.allowedTCPPorts = [ 631 ];
# Add a HP Deskjet printer connected via USB to the server.
hardware.printers.ensurePrinters = [{
@ -34,9 +33,7 @@ let
hardware.printers.ensureDefaultPrinter = "DeskjetRemote";
};
in
{
in {
name = "printing";
meta = with pkgs.stdenv.lib.maintainers; {
maintainers = [ domenkozar eelco matthewbauer ];
@ -50,65 +47,91 @@ in
serviceClient = { ... }: (printingClient false);
};
testScript =
''
startAll;
testScript = ''
import os
import re
import sys
# Make sure that cups is up on both sides.
$serviceServer->waitForUnit("cups.service");
$serviceClient->waitForUnit("cups.service");
# wait until cups is fully initialized and ensure-printers has executed with 10s delay
$serviceClient->sleep(20);
$socketActivatedClient->waitUntilSucceeds("systemctl status ensure-printers | grep -q -E 'code=exited, status=0/SUCCESS'");
sub testPrinting {
my ($client, $server) = (@_);
my $clientHostname = $client->name();
my $serverHostname = $server->name();
$client->succeed("lpstat -r") =~ /scheduler is running/ or die;
# Test that UNIX socket is used for connections.
$client->succeed("lpstat -H") =~ "/var/run/cups/cups.sock" or die;
# Test that HTTP server is available too.
$client->succeed("curl --fail http://localhost:631/");
$client->succeed("curl --fail http://$serverHostname:631/");
$server->fail("curl --fail --connect-timeout 2 http://$clientHostname:631/");
# Do some status checks.
$client->succeed("lpstat -a") =~ /DeskjetRemote accepting requests/ or die;
$client->succeed("lpstat -h $serverHostname:631 -a") =~ /DeskjetLocal accepting requests/ or die;
$client->succeed("cupsdisable DeskjetRemote");
$client->succeed("lpq") =~ /DeskjetRemote is not ready.*no entries/s or die;
$client->succeed("cupsenable DeskjetRemote");
$client->succeed("lpq") =~ /DeskjetRemote is ready.*no entries/s or die;
# Test printing various file types.
foreach my $file ("${pkgs.groff.doc}/share/doc/*/examples/mom/penguin.pdf",
"${pkgs.groff.doc}/share/doc/*/meref.ps",
"${pkgs.cups.out}/share/doc/cups/images/cups.png",
"${pkgs.pcre.doc}/share/doc/pcre/pcre.txt")
{
$file =~ /([^\/]*)$/; my $fn = $1;
subtest "print $fn", sub {
# Print the file on the client.
$client->succeed("lp $file");
$client->waitUntilSucceeds("lpq | grep -q -E 'active.*root.*$fn'");
# Ensure that a raw PCL file appeared in the server's queue
# (showing that the right filters have been applied). Of
# course, since there is no actual USB printer attached, the
# file will stay in the queue forever.
$server->waitForFile("/var/spool/cups/d*-001");
$server->waitUntilSucceeds("lpq -a | grep -q -E '$fn'");
# Delete the job on the client. It should disappear on the
# server as well.
$client->succeed("lprm");
$client->waitUntilSucceeds("lpq -a | grep -q -E 'no entries'");
Machine::retry sub {
return 1 if $server->succeed("lpq -a") =~ /no entries/;
};
# The queue is empty already, so this should be safe.
# Otherwise, pairs of "c*"-"d*-001" files might persist.
$server->execute("rm /var/spool/cups/*");
};
}
}
testPrinting($serviceClient, $serviceServer);
testPrinting($socketActivatedClient, $socketActivatedServer);
start_all()
with subtest("Make sure that cups is up on both sides"):
serviceServer.wait_for_unit("cups.service")
serviceClient.wait_for_unit("cups.service")
with subtest(
"Wait until cups is fully initialized and ensure-printers has "
"executed with 10s delay"
):
serviceClient.sleep(20)
socketActivatedClient.wait_until_succeeds(
"systemctl status ensure-printers | grep -q -E 'code=exited, status=0/SUCCESS'"
)
def test_printing(client, server):
assert "scheduler is running" in client.succeed("lpstat -r")
with subtest("UNIX socket is used for connections"):
assert "/var/run/cups/cups.sock" in client.succeed("lpstat -H")
with subtest("HTTP server is available too"):
client.succeed("curl --fail http://localhost:631/")
client.succeed(f"curl --fail http://{server.name}:631/")
server.fail(f"curl --fail --connect-timeout 2 http://{client.name}:631/")
with subtest("LP status checks"):
assert "DeskjetRemote accepting requests" in client.succeed("lpstat -a")
assert "DeskjetLocal accepting requests" in client.succeed(
f"lpstat -h {server.name}:631 -a"
)
client.succeed("cupsdisable DeskjetRemote")
out = client.succeed("lpq")
print(out)
assert re.search(
"DeskjetRemote is not ready.*no entries",
client.succeed("lpq"),
flags=re.DOTALL,
)
client.succeed("cupsenable DeskjetRemote")
assert re.match(
"DeskjetRemote is ready.*no entries", client.succeed("lpq"), flags=re.DOTALL
)
# Test printing various file types.
for file in [
"${pkgs.groff.doc}/share/doc/*/examples/mom/penguin.pdf",
"${pkgs.groff.doc}/share/doc/*/meref.ps",
"${pkgs.cups.out}/share/doc/cups/images/cups.png",
"${pkgs.pcre.doc}/share/doc/pcre/pcre.txt",
]:
file_name = os.path.basename(file)
with subtest(f"print {file_name}"):
# Print the file on the client.
print(client.succeed("lpq"))
client.succeed(f"lp {file}")
client.wait_until_succeeds(
f"lpq; lpq | grep -q -E 'active.*root.*{file_name}'"
)
# Ensure that a raw PCL file appeared in the server's queue
# (showing that the right filters have been applied). Of
# course, since there is no actual USB printer attached, the
# file will stay in the queue forever.
server.wait_for_file("/var/spool/cups/d*-001")
server.wait_until_succeeds(f"lpq -a | grep -q -E '{file_name}'")
# Delete the job on the client. It should disappear on the
# server as well.
client.succeed("lprm")
client.wait_until_succeeds("lpq -a | grep -q -E 'no entries'")
retry(lambda _: "no entries" in server.succeed("lpq -a"))
# The queue is empty already, so this should be safe.
# Otherwise, pairs of "c*"-"d*-001" files might persist.
server.execute("rm /var/spool/cups/*")
test_printing(serviceClient, serviceServer)
test_printing(socketActivatedClient, socketActivatedServer)
'';
})

View file

@ -4,13 +4,13 @@
stdenv.mkDerivation rec {
pname = "quilter";
version = "2.0.5";
version = "2.1.0";
src = fetchFromGitHub {
owner = "lainsce";
repo = pname;
rev = version;
sha256 = "1gij5gqidzvwym7yq5fx0344n4fkydx5diwz8g8kwkcsz7z1w45a";
sha256 = "1756gp3f2pmxz2k4xg4cfdbdav848qb0vjglyiy1n2k9xc79dyxz";
};
nativeBuildInputs = [

View file

@ -0,0 +1,63 @@
{ lib
, pkgs
, python
}:
let
py = python.override {
packageOverrides = self: super: {
pyproj = super.pyproj.overridePythonAttrs (oldAttrs: rec {
version = "1.9.6";
src = pkgs.fetchFromGitHub {
owner = "pyproj4";
repo = "pyproj";
rev = "v${version}rel";
sha256 = "sha256:18v4h7jx4mcc0x2xy8y7dfjq9bzsyxs8hdb6v67cabvlz2njziqy";
};
nativeBuildInputs = with python.pkgs; [ cython ];
patches = [ ];
checkPhase = ''
runHook preCheck
pushd unittest # changing directory should ensure we're importing the global pyproj
${python.interpreter} test.py && ${python.interpreter} -c "import doctest, pyproj, sys; sys.exit(doctest.testmod(pyproj)[0])"
popd
runHook postCheck
'';
});
};
};
in
with py.pkgs;
buildPythonApplication rec {
pname = "MapProxy";
version = "1.12.0";
src = fetchPypi {
inherit pname version;
sha256 = "622e3a7796ef861ba21e42231b49c18d00d75f03eaf3f01a2b7687be7568e2ec";
};
prePatch = ''
substituteInPlace mapproxy/util/ext/serving.py --replace "args = [sys.executable] + sys.argv" "args = sys.argv"
'';
propagatedBuildInputs = [
pillow
pyyaml
pyproj
shapely
gdal
lxml
setuptools
];
# Tests are disabled:
# 1) Dependency list is huge.
# https://github.com/mapproxy/mapproxy/blob/master/requirements-tests.txt
#
# 2) There are security issues with package Riak
# https://github.com/NixOS/nixpkgs/issues/33876
# https://github.com/NixOS/nixpkgs/pull/56480
doCheck = false;
meta = with lib; {
description = "MapProxy is an open source proxy for geospatial data";
homepage = https://mapproxy.org/;
license = licenses.asl20;
maintainers = with maintainers; [ rakesh4g ];
};
}

View file

@ -15,13 +15,13 @@ in
stdenv.mkDerivation rec {
pname = "next";
version = "1.3.4";
version = "1.4.0";
src = fetchFromGitHub {
owner = "atlas-engineer";
repo = "next";
rev = version;
sha256 = "00iqv4xarabl98gdl1rzqkc5v0vfljx1nawsxqsx9x3a9mnxmgxi";
sha256 = "1gkmr746rqqg94698a051gv79fblc8n9dq0zg04llba44adhpmjl";
};
nativeBuildInputs = [
@ -37,7 +37,6 @@ stdenv.mkDerivation rec {
cl-annot
cl-ansi-text
cl-css
cl-hooks
cl-json
cl-markup
cl-ppcre
@ -52,12 +51,15 @@ stdenv.mkDerivation rec {
lparallel
mk-string-metrics
parenscript
plump
quri
serapeum
sqlite
str
swank
trivia
trivial-clipboard
trivial-types
unix-opts
];

View file

@ -5,20 +5,20 @@ buildGoPackage rec {
/* Do not use "dev" as a version. If you do, Tilt will consider itself
running in development environment and try to serve assets from the
source tree, which is not there once build completes. */
version = "0.10.13";
version = "0.11.3";
src = fetchFromGitHub {
owner = "windmilleng";
repo = pname;
rev = "v${version}";
sha256 = "02xlqgmmn1a7pz6sliharz8l9fbn2raxqkm75qxdqs1ncbvgc65k";
sha256 = "035czgr0rn6gcv24vnlr35n9yvy0fwq4spdzsc76gfxckcbcmzz0";
};
goPackagePath = "github.com/windmilleng/tilt";
subPackages = [ "cmd/tilt" ];
buildFlagsArray = ("-ldflags=-X main.version=${version} -X main.date=2019-10-04");
buildFlagsArray = ("-ldflags=-X main.version=${version} -X main.date=2020-01-25");
meta = with stdenv.lib; {
description = "Local development tool to manage your developer instance when your team deploys to Kubernetes in production";

View file

@ -1,25 +1,27 @@
{ stdenv, fetchFromGitHub, makeWrapper
, python3, git, gnupg, less, cacert
, python3, git, gnupg, less
}:
stdenv.mkDerivation rec {
pname = "git-repo";
version = "1.13.9.1";
version = "1.13.9.2";
src = fetchFromGitHub {
owner = "android";
repo = "tools_repo";
rev = "v${version}";
sha256 = "0yns7n8gpac33cbkm85slslcnfdb55ax9c0vpvmmfbgcgkvqlknb";
sha256 = "1a6vyj7a9qba9nidi6x3hkpvpzikskh5jsagzkx7m95p0hcvvb7v";
};
patches = [ ./import-ssl-module.patch ];
nativeBuildInputs = [ makeWrapper ];
buildInputs = [ python3 ];
patchPhase = ''
postPatch = ''
substituteInPlace repo --replace \
'urllib.request.urlopen(url)' \
'urllib.request.urlopen(url, cafile="${cacert}/etc/ssl/certs/ca-bundle.crt")'
'urllib.request.urlopen(url, context=ssl.create_default_context())'
'';
installPhase = ''

View file

@ -0,0 +1,10 @@
--- a/repo 2020-02-05 21:11:52.773854798 +0100
+++ b/repo 2020-02-05 21:12:34.018329462 +0100
@@ -137,6 +137,7 @@
import stat
import subprocess
import sys
+import ssl
if sys.version_info[0] == 3:
import urllib.request

View file

@ -8,13 +8,13 @@ with stdenv.lib;
buildGoPackage rec {
pname = "gogs";
version = "0.11.86";
version = "0.11.91";
src = fetchFromGitHub {
owner = "gogs";
repo = "gogs";
rev = "v${version}";
sha256 = "0l8mwy0cyy3cdxqinf8ydb35kf7c8pj09xrhpr7rr7lldnvczabw";
sha256 = "1yfimgjg9n773kdml17119539w9736mi66bivpv5yp3cj2hj9mlj";
};
patches = [ ./static-root-path.patch ];

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "papirus-icon-theme";
version = "20200102";
version = "20200201";
src = fetchFromGitHub {
owner = "PapirusDevelopmentTeam";
repo = pname;
rev = version;
sha256 = "0jnx6prgrwz9i979a20sd58dwhsz8cakvl8ickakadca1j7gs7kb";
sha256 = "06scfncid3mhc99lj7iq99la5ls7gsc9kzzccbvcbfnvpzlmwjfh";
};
nativeBuildInputs = [ gtk3 ];

View file

@ -1 +1 @@
WGET_ARGS=( https://download.kde.org/stable/plasma/5.16.5/ )
WGET_ARGS=( https://download.kde.org/stable/plasma/5.17.5/ )

View file

@ -1,17 +1,17 @@
{
mkDerivation,
extra-cmake-modules,
kconfig, kconfigwidgets, kdbusaddons, kglobalaccel, ki18n, kwidgetsaddons,
kxmlgui, libkscreen, qtdeclarative, qtgraphicaleffects, kwindowsystem,
kdeclarative, plasma-framework
kconfig, kcmutils, kconfigwidgets, kdbusaddons, kglobalaccel, ki18n,
kwidgetsaddons, kxmlgui, libkscreen, qtdeclarative, qtgraphicaleffects,
kwindowsystem, kdeclarative, plasma-framework
}:
mkDerivation {
name = "kscreen";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [
kconfig kconfigwidgets kdbusaddons kglobalaccel ki18n kwidgetsaddons kxmlgui
libkscreen qtdeclarative qtgraphicaleffects kwindowsystem kdeclarative
plasma-framework
kconfig kcmutils kconfigwidgets kdbusaddons kglobalaccel ki18n
kwidgetsaddons kxmlgui libkscreen qtdeclarative qtgraphicaleffects
kwindowsystem kdeclarative plasma-framework
];
}

View file

@ -1,11 +1,11 @@
{
mkDerivation,
extra-cmake-modules,
kidletime, kwayland, kwindowsystem, qtbase,
kguiaddons, kidletime, kwayland, kwindowsystem, qtbase,
}:
mkDerivation {
name = "kwayland-integration";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ kidletime kwindowsystem kwayland qtbase ];
buildInputs = [ kguiaddons kidletime kwindowsystem kwayland qtbase ];
}

View file

@ -0,0 +1,25 @@
From 449896c45b23f50c168d8d2789832024c906ec36 Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@mailbox.org>
Date: Mon, 27 Jan 2020 05:31:13 -0600
Subject: [PATCH 1/2] follow symlinks
---
plugins/kdecorations/aurorae/src/aurorae.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/plugins/kdecorations/aurorae/src/aurorae.cpp b/plugins/kdecorations/aurorae/src/aurorae.cpp
index fd723a8..fb95633 100644
--- a/plugins/kdecorations/aurorae/src/aurorae.cpp
+++ b/plugins/kdecorations/aurorae/src/aurorae.cpp
@@ -211,7 +211,7 @@ void Helper::init()
// so let's try to locate our plugin:
QString pluginPath;
for (const QString &path : m_engine->importPathList()) {
- QDirIterator it(path, QDirIterator::Subdirectories);
+ QDirIterator it(path, QDirIterator::Subdirectories | QDirIterator::FollowSymlinks);
while (it.hasNext()) {
it.next();
QFileInfo fileInfo = it.fileInfo();
--
2.23.1

View file

@ -1,8 +1,17 @@
Index: kwin-5.15.5/xwl/xwayland.cpp
===================================================================
--- kwin-5.15.5.orig/xwl/xwayland.cpp
+++ kwin-5.15.5/xwl/xwayland.cpp
@@ -143,7 +143,7 @@ void Xwayland::init()
From d584b075d71c4486710c0bbed6d44038f2ff5075 Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@mailbox.org>
Date: Mon, 27 Jan 2020 05:31:23 -0600
Subject: [PATCH 2/2] xwayland
---
xwl/xwayland.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/xwl/xwayland.cpp b/xwl/xwayland.cpp
index 5f17d39..b4b69ba 100644
--- a/xwl/xwayland.cpp
+++ b/xwl/xwayland.cpp
@@ -145,7 +145,7 @@ void Xwayland::init()
m_xwaylandProcess = new Process(this);
m_xwaylandProcess->setProcessChannelMode(QProcess::ForwardedErrorChannel);
@ -11,3 +20,6 @@ Index: kwin-5.15.5/xwl/xwayland.cpp
QProcessEnvironment env = m_app->processStartupEnvironment();
env.insert("WAYLAND_SOCKET", QByteArray::number(wlfd));
env.insert("EGL_PLATFORM", QByteArrayLiteral("DRM"));
--
2.23.1

View file

@ -14,6 +14,9 @@
plasma-framework, qtsensors, libcap, libdrm
}:
# TODO (ttuegel): investigate qmlplugindump failure
# TODO (ttuegel): investigate gbm dependency
mkDerivation {
name = "kwin";
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
@ -30,7 +33,10 @@ mkDerivation {
libcap libdrm
];
outputs = [ "bin" "dev" "out" ];
patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
patches = [
./0001-follow-symlinks.patch
./0002-xwayland.patch
];
CXXFLAGS = [
''-DNIXPKGS_XWAYLAND=\"${lib.getBin xwayland}/bin/Xwayland\"''
];

View file

@ -1,13 +0,0 @@
Index: kwin-5.7.3/plugins/kdecorations/aurorae/src/aurorae.cpp
===================================================================
--- kwin-5.7.3.orig/plugins/kdecorations/aurorae/src/aurorae.cpp
+++ kwin-5.7.3/plugins/kdecorations/aurorae/src/aurorae.cpp
@@ -211,7 +211,7 @@ void Helper::init()
// so let's try to locate our plugin:
QString pluginPath;
for (const QString &path : m_engine->importPathList()) {
- QDirIterator it(path, QDirIterator::Subdirectories);
+ QDirIterator it(path, QDirIterator::Subdirectories | QDirIterator::FollowSymlinks);
while (it.hasNext()) {
it.next();
QFileInfo fileInfo = it.fileInfo();

View file

@ -1,24 +0,0 @@
Dont set capabilities on kwin_wayland executable at build time
This is handled by security.wrappers on NixOS
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 48cbcdbfe..93b410ed8 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -674,15 +674,6 @@ if (HAVE_LIBCAP)
endif()
install(TARGETS kwin_wayland ${INSTALL_TARGETS_DEFAULT_ARGS} )
-if (HAVE_LIBCAP)
- install(
- CODE "execute_process(
- COMMAND
- ${SETCAP_EXECUTABLE}
- CAP_SYS_NICE=+ep
- \$ENV{DESTDIR}${CMAKE_INSTALL_FULL_BINDIR}/kwin_wayland)"
- )
-endif()
add_subdirectory(platformsupport)
add_subdirectory(plugins)

View file

@ -1,3 +0,0 @@
follow-symlinks.patch
xwayland.patch
no-setcap-install.patch

View file

@ -1,15 +1,15 @@
{
mkDerivation,
extra-cmake-modules,
kcoreaddons, kdeclarative, ki18n, krunner, kservice, plasma-framework,
qtscript, qtdeclarative
kcoreaddons, kdeclarative, ki18n, kitemmodels, krunner, kservice,
plasma-framework, qtscript, qtdeclarative
}:
mkDerivation {
name = "milou";
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [
kcoreaddons kdeclarative ki18n krunner kservice plasma-framework
kcoreaddons kdeclarative ki18n kitemmodels krunner kservice plasma-framework
qtdeclarative qtscript
];
}

View file

@ -1,11 +1,18 @@
{ mkDerivation, extra-cmake-modules, qtbase, kio, ki18n, kconfig
, kdbusaddons, knotifications, krunner, kwindowsystem, kactivities
{
mkDerivation,
extra-cmake-modules,
qtbase,
kfilemetadata, kio, ki18n, kconfig , kdbusaddons, knotifications, kpurpose,
krunner, kwindowsystem, kactivities,
}:
mkDerivation {
name = "plasma-browser-integration";
nativeBuildInputs = [
extra-cmake-modules qtbase kio ki18n kconfig kdbusaddons
knotifications krunner kwindowsystem kactivities
extra-cmake-modules
];
buildInputs = [
qtbase kfilemetadata kio ki18n kconfig kdbusaddons knotifications kpurpose
krunner kwindowsystem kactivities
];
}

View file

@ -0,0 +1,129 @@
From 1796822e4c97062b919a596ce13db68e2c46c7e8 Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@mailbox.org>
Date: Tue, 28 Jan 2020 05:00:53 -0600
Subject: [PATCH 1/2] startkde
---
startkde/startplasma-waylandsession.cpp | 2 +-
startkde/startplasma-x11.cpp | 2 +-
startkde/startplasma.cpp | 32 ++++++++-----------------
3 files changed, 12 insertions(+), 24 deletions(-)
diff --git a/startkde/startplasma-waylandsession.cpp b/startkde/startplasma-waylandsession.cpp
index 87c71c6..5fc5314 100644
--- a/startkde/startplasma-waylandsession.cpp
+++ b/startkde/startplasma-waylandsession.cpp
@@ -67,7 +67,7 @@ int main(int /*argc*/, char** /*argv*/)
waitForKonqi();
out << "startplasma-waylandsession: Shutting down...\n";
- runSync(QStringLiteral("kdeinit5_shutdown"), {});
+ runSync(QStringLiteral(NIXPKGS_KDEINIT5_SHUTDOWN), {});
cleanupX11();
out << "startplasma-waylandsession: Done.\n";
diff --git a/startkde/startplasma-x11.cpp b/startkde/startplasma-x11.cpp
index 3314b62..14cbe29 100644
--- a/startkde/startplasma-x11.cpp
+++ b/startkde/startplasma-x11.cpp
@@ -111,7 +111,7 @@ int main(int /*argc*/, char** /*argv*/)
out << "startkde: Shutting down...\n";
- runSync(QStringLiteral("kdeinit5_shutdown"), {});
+ runSync(QStringLiteral(NIXPKGS_KDEINIT5_SHUTDOWN), {});
cleanupPlasmaEnvironment();
cleanupX11();
diff --git a/startkde/startplasma.cpp b/startkde/startplasma.cpp
index e0f7004..8ac41fd 100644
--- a/startkde/startplasma.cpp
+++ b/startkde/startplasma.cpp
@@ -34,7 +34,7 @@ QTextStream out(stderr);
void messageBox(const QString &text)
{
out << text;
- runSync(QStringLiteral("xmessage"), {QStringLiteral("-geometry"), QStringLiteral("500x100"), text});
+ runSync(QStringLiteral(NIXPKGS_XMESSAGE), {QStringLiteral("-geometry"), QStringLiteral("500x100"), text});
}
QStringList allServices(const QLatin1String& prefix)
@@ -184,14 +184,6 @@ void runEnvironmentScripts()
}
}
sourceFiles(scripts);
-
- // Make sure that the KDE prefix is first in XDG_DATA_DIRS and that it's set at all.
- // The spec allows XDG_DATA_DIRS to be not set, but X session startup scripts tend
- // to set it to a list of paths *not* including the KDE prefix if it's not /usr or
- // /usr/local.
- if (!qEnvironmentVariableIsSet("XDG_DATA_DIRS")) {
- qputenv("XDG_DATA_DIRS", KDE_INSTALL_FULL_DATAROOTDIR ":/usr/share:/usr/local/share");
- }
}
@@ -240,15 +232,15 @@ void setupX11()
// If the user has overwritten fonts, the cursor font may be different now
// so don't move this up.
- runSync(QStringLiteral("xsetroot"), {QStringLiteral("-cursor_name"), QStringLiteral("left_ptr")});
- runSync(QStringLiteral("xprop"), {QStringLiteral("-root"), QStringLiteral("-f"), QStringLiteral("KDE_FULL_SESSION"), QStringLiteral("8t"), QStringLiteral("-set"), QStringLiteral("KDE_FULL_SESSION"), QStringLiteral("true")});
- runSync(QStringLiteral("xprop"), {QStringLiteral("-root"), QStringLiteral("-f"), QStringLiteral("KDE_SESSION_VERSION"), QStringLiteral("32c"), QStringLiteral("-set"), QStringLiteral("KDE_SESSION_VERSION"), QStringLiteral("5")});
+ runSync(QStringLiteral(NIXPKGS_XSETROOT), {QStringLiteral("-cursor_name"), QStringLiteral("left_ptr")});
+ runSync(QStringLiteral(NIXPKGS_XPROP), {QStringLiteral("-root"), QStringLiteral("-f"), QStringLiteral("KDE_FULL_SESSION"), QStringLiteral("8t"), QStringLiteral("-set"), QStringLiteral("KDE_FULL_SESSION"), QStringLiteral("true")});
+ runSync(QStringLiteral(NIXPKGS_XPROP), {QStringLiteral("-root"), QStringLiteral("-f"), QStringLiteral("KDE_SESSION_VERSION"), QStringLiteral("32c"), QStringLiteral("-set"), QStringLiteral("KDE_SESSION_VERSION"), QStringLiteral("5")});
}
void cleanupX11()
{
- runSync(QStringLiteral("xprop"), { QStringLiteral("-root"), QStringLiteral("-remove"), QStringLiteral("KDE_FULL_SESSION") });
- runSync(QStringLiteral("xprop"), { QStringLiteral("-root"), QStringLiteral("-remove"), QStringLiteral("KDE_SESSION_VERSION") });
+ runSync(QStringLiteral(NIXPKGS_XPROP), { QStringLiteral("-root"), QStringLiteral("-remove"), QStringLiteral("KDE_FULL_SESSION") });
+ runSync(QStringLiteral(NIXPKGS_XPROP), { QStringLiteral("-root"), QStringLiteral("-remove"), QStringLiteral("KDE_SESSION_VERSION") });
}
// TODO: Check if Necessary
@@ -265,11 +257,7 @@ bool syncDBusEnvironment()
{
int exitCode;
// At this point all environment variables are set, let's send it to the DBus session server to update the activation environment
- if (!QStandardPaths::findExecutable(QStringLiteral("dbus-update-activation-environment")).isEmpty()) {
- exitCode = runSync(QStringLiteral("dbus-update-activation-environment"), { QStringLiteral("--systemd"), QStringLiteral("--all") });
- } else {
- exitCode = runSync(QStringLiteral(CMAKE_INSTALL_FULL_LIBEXECDIR "/ksyncdbusenv"), {});
- }
+ exitCode = runSync(QStringLiteral(NIXPKGS_DBUS_UPDATE_ACTIVATION_ENVIRONMENT), { QStringLiteral("--systemd"), QStringLiteral("--all") });
return exitCode == 0;
}
@@ -285,7 +273,7 @@ void setupFontDpi()
//TODO port to c++?
const QByteArray input = "Xft.dpi: " + QByteArray::number(fontsCfg.readEntry("forceFontDPI", 0));
QProcess p;
- p.start(QStringLiteral("xrdb"), { QStringLiteral("-quiet"), QStringLiteral("-merge"), QStringLiteral("-nocpp") });
+ p.start(QStringLiteral(NIXPKGS_XRDB), { QStringLiteral("-quiet"), QStringLiteral("-merge"), QStringLiteral("-nocpp") });
p.setProcessChannelMode(QProcess::ForwardedChannels);
p.write(input);
p.closeWriteChannel();
@@ -307,7 +295,7 @@ QProcess* setupKSplash()
KConfigGroup ksplashCfg = cfg.group("KSplash");
if (ksplashCfg.readEntry("Engine", QStringLiteral("KSplashQML")) == QLatin1String("KSplashQML")) {
p = new QProcess;
- p->start(QStringLiteral("ksplashqml"), { ksplashCfg.readEntry("Theme", QStringLiteral("Breeze")) });
+ p->start(QStringLiteral(CMAKE_INSTALL_FULL_BINDIR "/ksplashqml"), { ksplashCfg.readEntry("Theme", QStringLiteral("Breeze")) });
}
}
return p;
@@ -329,7 +317,7 @@ bool startKDEInit()
{
// We set LD_BIND_NOW to increase the efficiency of kdeinit.
// kdeinit unsets this variable before loading applications.
- const int exitCode = runSync(QStringLiteral(CMAKE_INSTALL_FULL_LIBEXECDIR_KF5 "/start_kdeinit_wrapper"), { QStringLiteral("--kded"), QStringLiteral("+kcminit_startup") }, { QStringLiteral("LD_BIND_NOW=true") });
+ const int exitCode = runSync(QStringLiteral(NIXPKGS_START_KDEINIT_WRAPPER), { QStringLiteral("--kded"), QStringLiteral("+kcminit_startup") }, { QStringLiteral("LD_BIND_NOW=true") });
if (exitCode != 0) {
messageBox(QStringLiteral("startkde: Could not start kdeinit5. Check your installation."));
return false;
--
2.23.1

View file

@ -0,0 +1,22 @@
From 7c6f939aea290bc3ec7629f26d02441d1d4bcb8a Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@mailbox.org>
Date: Wed, 5 Feb 2020 05:03:11 -0600
Subject: [PATCH 2/2] absolute-wallpaper-install-dir
---
sddm-theme/theme.conf.cmake | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sddm-theme/theme.conf.cmake b/sddm-theme/theme.conf.cmake
index ea9a943..c8458ba 100644
--- a/sddm-theme/theme.conf.cmake
+++ b/sddm-theme/theme.conf.cmake
@@ -2,4 +2,4 @@
type=image
color=#1d99f3
fontSize=10
-background=${CMAKE_INSTALL_PREFIX}/${WALLPAPER_INSTALL_DIR}/Next/contents/images/5120x2880.png
+background=${NIXPKGS_BREEZE_WALLPAPERS}/Next/contents/images/5120x2880.png
--
2.23.1

View file

@ -6,12 +6,12 @@
coreutils, dbus, gnugrep, gnused, isocodes, libdbusmenu, libSM, libXcursor,
libXtst, pam, wayland, xmessage, xprop, xrdb, xsetroot,
baloo, kactivities, kcmutils, kconfig, kcrash, kdbusaddons, kdeclarative,
kdelibs4support, kdesu, kglobalaccel, kidletime, kinit, kjsembed, knewstuff,
knotifyconfig, kpackage, krunner, kscreenlocker, ktexteditor, ktextwidgets,
kwallet, kwayland, kwin, kxmlrpcclient, libkscreen, libksysguard, libqalculate,
networkmanager-qt, phonon, plasma-framework, prison, solid, kholidays,
breeze-qt5,
baloo, breeze-qt5, kactivities, kactivities-stats, kcmutils, kconfig, kcrash,
kdbusaddons, kdeclarative, kdelibs4support, kdesu, kglobalaccel, kidletime,
kinit, kjsembed, knewstuff, knotifyconfig, kpackage, kpeople, krunner,
kscreenlocker, ktexteditor, ktextwidgets, kwallet, kwayland, kwin,
kxmlrpcclient, libkscreen, libksysguard, libqalculate, networkmanager-qt,
phonon, plasma-framework, prison, solid, kholidays,
qtgraphicaleffects, qtquickcontrols, qtquickcontrols2, qtscript, qttools,
qtwayland, qtx11extras,
@ -26,11 +26,12 @@ mkDerivation {
buildInputs = [
isocodes libdbusmenu libSM libXcursor libXtst pam wayland
baloo kactivities kcmutils kconfig kcrash kdbusaddons kdeclarative
kdelibs4support kdesu kglobalaccel kidletime kjsembed knewstuff
knotifyconfig kpackage krunner kscreenlocker ktexteditor ktextwidgets
kwallet kwayland kwin kxmlrpcclient libkscreen libksysguard libqalculate
networkmanager-qt phonon plasma-framework prison solid kholidays
baloo kactivities kactivities-stats kcmutils kconfig kcrash kdbusaddons
kdeclarative kdelibs4support kdesu kglobalaccel kidletime kjsembed knewstuff
knotifyconfig kpackage kpeople krunner kscreenlocker ktexteditor
ktextwidgets kwallet kwayland kwin kxmlrpcclient libkscreen libksysguard
libqalculate networkmanager-qt phonon plasma-framework prison solid
kholidays
qtgraphicaleffects qtquickcontrols qtquickcontrols2 qtscript qtwayland qtx11extras
];
@ -38,41 +39,22 @@ mkDerivation {
outputs = [ "out" "dev" ];
cmakeFlags = [
"-DNIXPKGS_XMESSAGE=${getBin xmessage}/bin/xmessage"
"-DNIXPKGS_MKDIR=${getBin coreutils}/bin/mkdir"
"-DNIXPKGS_XRDB=${getBin xrdb}/bin/xrdb"
"-DNIXPKGS_QTPATHS=${getBin qttools}/bin/qtpaths"
"-DNIXPKGS_XSETROOT=${getBin xsetroot}/bin/xsetroot"
"-DNIXPKGS_XPROP=${getBin xprop}/bin/xprop"
"-DNIXPKGS_ID=${getBin coreutils}/bin/id"
"-DNIXPKGS_DBUS_UPDATE_ACTIVATION_ENVIRONMENT=${getBin dbus}/bin/dbus-update-activation-environment"
"-DNIXPKGS_START_KDEINIT_WRAPPER=${getLib kinit}/libexec/kf5/start_kdeinit_wrapper"
"-DNIXPKGS_QDBUS=${getBin qttools}/bin/qdbus"
"-DNIXPKGS_KWRAPPER5=${getBin kinit}/bin/kwrapper5"
"-DNIXPKGS_KREADCONFIG5=${getBin kconfig}/bin/kreadconfig5"
"-DNIXPKGS_GREP=${getBin gnugrep}/bin/grep"
"-DNIXPKGS_KDEINIT5_SHUTDOWN=${getBin kinit}/bin/kdeinit5_shutdown"
"-DNIXPKGS_SED=${getBin gnused}/bin/sed"
"-DNIXPKGS_WALLPAPER_INSTALL_DIR=${getBin breeze-qt5}/share/wallpapers/"
''-DNIXPKGS_BREEZE_WALLPAPERS=${getBin breeze-qt5}/share/wallpapers''
];
# To regenerate ./plasma-workspace.patch,
#
# > git clone https://github.com/ttuegel/plasma-workspace
# > cd plasma-workspace
# > git checkout nixpkgs/$x.$y # where $x.$y.$z == $version
# ... make some commits ...
# > git diff v$x.$y.$z
#
# Add upstream patches to the list below. For new patchs, particularly if not
# submitted upstream, please make a pull request and add it to
# ./plasma-workspace.patch.
patches = [
./plasma-workspace.patch
./0001-startkde.patch
./0002-absolute-wallpaper-install-dir.patch
];
preConfigure = ''
NIX_CFLAGS_COMPILE+=" -DNIXPKGS_KDOSTARTUPCONFIG5=\"''${!outputBin}/bin/kdostartupconfig5\""
cmakeFlags+=" -DNIXPKGS_STARTPLASMA=''${!outputBin}/libexec/startplasma"
'';
NIX_CFLAGS_COMPILE = [
''-DNIXPKGS_XMESSAGE="${getBin xmessage}/bin/xmessage"''
''-DNIXPKGS_XRDB="${getBin xrdb}/bin/xrdb"''
''-DNIXPKGS_XSETROOT="${getBin xsetroot}/bin/xsetroot"''
''-DNIXPKGS_XPROP="${getBin xprop}/bin/xprop"''
''-DNIXPKGS_DBUS_UPDATE_ACTIVATION_ENVIRONMENT="${getBin dbus}/bin/dbus-update-activation-environment"''
''-DNIXPKGS_START_KDEINIT_WRAPPER="${getLib kinit}/libexec/kf5/start_kdeinit_wrapper"''
''-DNIXPKGS_KDEINIT5_SHUTDOWN="${getBin kinit}/bin/kdeinit5_shutdown"''
];
}

File diff suppressed because it is too large Load diff

View file

@ -1,365 +1,374 @@
# DO NOT EDIT! This file is generated automatically by fetch-kde-qt.sh
# DO NOT EDIT! This file is generated automatically.
# Command: ./maintainers/scripts/fetch-kde-qt.sh pkgs/desktops/plasma-5/
{ fetchurl, mirror }:
{
bluedevil = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/bluedevil-5.16.5.tar.xz";
sha256 = "60ac3471d30cb113b1959eacdaa1f4898f04f779f94a35dbca00993cda4ea464";
name = "bluedevil-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/bluedevil-5.17.5.tar.xz";
sha256 = "22e9c683dfc56a559e652809ade238f8eb0ffb09d5ab042f5cd4b8216f647c09";
name = "bluedevil-5.17.5.tar.xz";
};
};
breeze = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/breeze-5.16.5.tar.xz";
sha256 = "09225021a2cf396e74cabe692b0a5dcf9a12f0b47f02fb14df6ccc9db01f2e6b";
name = "breeze-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/breeze-5.17.5.tar.xz";
sha256 = "f89bf857321b18789089efc9271d7bd7b6459a173dd078dd03242775db76c8d7";
name = "breeze-5.17.5.tar.xz";
};
};
breeze-grub = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/breeze-grub-5.16.5.tar.xz";
sha256 = "ce73297350e7b79b04aa8ba44594e8eca2d37c0342eb331bd5d31679f3887878";
name = "breeze-grub-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/breeze-grub-5.17.5.tar.xz";
sha256 = "591a1d7a510c76a1f2729a61a4d14c0f33db4d1e8ea5dbc87b74f2e7e7e2a2ba";
name = "breeze-grub-5.17.5.tar.xz";
};
};
breeze-gtk = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/breeze-gtk-5.16.5.tar.xz";
sha256 = "d9849ecf6c2fc85fde76912410ab36c46ca65b96d80b4e51819ca35015a88098";
name = "breeze-gtk-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/breeze-gtk-5.17.5.tar.xz";
sha256 = "6dbd8e7d936840fbaf7016574d07729c9d0791711ad6d371136585ddb8f76e66";
name = "breeze-gtk-5.17.5.tar.xz";
};
};
breeze-plymouth = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/breeze-plymouth-5.16.5.tar.xz";
sha256 = "bb10d2f0185181e6f2fe8e3b85415dfcce6069595e0074b182688c6f567dd0b0";
name = "breeze-plymouth-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/breeze-plymouth-5.17.5.tar.xz";
sha256 = "e95f9eaf04e74383f5e1abe74d999787e408be7a34fd07a4f64e253e35150af0";
name = "breeze-plymouth-5.17.5.tar.xz";
};
};
discover = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/discover-5.16.5.tar.xz";
sha256 = "26c47a5c0f59a31f37da85e894a926c76805b66f91dde8ba6d2de8015842d5c1";
name = "discover-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/discover-5.17.5.tar.xz";
sha256 = "986ef367aef59c5a956d4163f987a60cfd3674a300880376ddedc0222769789f";
name = "discover-5.17.5.tar.xz";
};
};
drkonqi = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/drkonqi-5.16.5.tar.xz";
sha256 = "b4ae1518108c2d3ccbc533708801b52b83b7e9efd6eed9f1ee9d67936b9e78ff";
name = "drkonqi-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/drkonqi-5.17.5.tar.xz";
sha256 = "756c50f2458a8c564e608ea97244f6b2b3d5fb4a675a8cec29307be1d5ab5457";
name = "drkonqi-5.17.5.tar.xz";
};
};
kactivitymanagerd = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/kactivitymanagerd-5.16.5.tar.xz";
sha256 = "e35dbf7aae8a7b7f21b2304935cad96881af558a7c9d947f0114093038b1c4bc";
name = "kactivitymanagerd-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/kactivitymanagerd-5.17.5.tar.xz";
sha256 = "362721c3a9712751fba29cd1f1ef440a1e74561a611f2d171692a4ddc895b3e4";
name = "kactivitymanagerd-5.17.5.tar.xz";
};
};
kde-cli-tools = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/kde-cli-tools-5.16.5.tar.xz";
sha256 = "bc82b159d3c9a23f0ecb47a8314b645041b01692887a3be0ef0582d54f926de2";
name = "kde-cli-tools-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/kde-cli-tools-5.17.5.tar.xz";
sha256 = "d14299ebeaf89854cb89435cfaaa4da1d84bf23a97df23ff8c7f95dae5bec55f";
name = "kde-cli-tools-5.17.5.tar.xz";
};
};
kdecoration = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/kdecoration-5.16.5.tar.xz";
sha256 = "2b8c7b7cf114d0eff4ec842009cda264d8cf1254ec4bf65868b6d26f263829bb";
name = "kdecoration-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/kdecoration-5.17.5.tar.xz";
sha256 = "7d8f0128306d436aeba010e47a3dddbcb9fb9fd05ef9308cbad1934914875cd9";
name = "kdecoration-5.17.5.tar.xz";
};
};
kde-gtk-config = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/kde-gtk-config-5.16.5.tar.xz";
sha256 = "f78abf129aaa7afac2c7a71105b36b9553a975bbcb89ec65a0166099d1cca8c1";
name = "kde-gtk-config-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/kde-gtk-config-5.17.5.tar.xz";
sha256 = "5feff23c756f1fb0ba9ab88c2aed92c0e7c5521c757f5a0cdd057273538f0010";
name = "kde-gtk-config-5.17.5.tar.xz";
};
};
kdeplasma-addons = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/kdeplasma-addons-5.16.5.tar.xz";
sha256 = "a4737a54b75143053a9f8a5bc28c608f843c524872c665d4e5a65bd2853e1e00";
name = "kdeplasma-addons-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/kdeplasma-addons-5.17.5.tar.xz";
sha256 = "997d6a3542ab1f1fd7fb17580693dc8281ff29b03c82577dbae3fc1ec4cccdb8";
name = "kdeplasma-addons-5.17.5.tar.xz";
};
};
kgamma5 = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/kgamma5-5.16.5.tar.xz";
sha256 = "838fabf4312f022ee3df5bba940c0c73e26260cfee39235c1ba8da8a2e61bfa0";
name = "kgamma5-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/kgamma5-5.17.5.tar.xz";
sha256 = "3b8fd1539d035d4d39dcde6ca0dd214e6653c98778ac79b9cbf2f7009b155ca9";
name = "kgamma5-5.17.5.tar.xz";
};
};
khotkeys = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/khotkeys-5.16.5.tar.xz";
sha256 = "e7b866b5249ff7c5860a5a222dca79691ca1f09af176f786021fbbadbd718c8c";
name = "khotkeys-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/khotkeys-5.17.5.tar.xz";
sha256 = "cf78b5bfb8568fb4eea592b209bdb79aeac92bd08a580c3b6c08d45dd34a2d56";
name = "khotkeys-5.17.5.tar.xz";
};
};
kinfocenter = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/kinfocenter-5.16.5.tar.xz";
sha256 = "e3bbc5e2baedf35dc8750c99e18c115b651f2665218a105c08177bc5250eb9b1";
name = "kinfocenter-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/kinfocenter-5.17.5.tar.xz";
sha256 = "679870f10ee6494136d87a897a57a23c2905054d7a83ff11a4e85c204eb9fd9a";
name = "kinfocenter-5.17.5.tar.xz";
};
};
kmenuedit = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/kmenuedit-5.16.5.tar.xz";
sha256 = "8e95b81b910e5e78689fc7d4427c813ba7d39426df24cf8606adb850913a19a4";
name = "kmenuedit-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/kmenuedit-5.17.5.tar.xz";
sha256 = "59beed03298cd9fd6b05d67844794ed6a77be0d1b25b55d5bbcdf72e15e357de";
name = "kmenuedit-5.17.5.tar.xz";
};
};
kscreen = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/kscreen-5.16.5.tar.xz";
sha256 = "ce35f554014cee819767180f0c9381d539e497edfb9c290b279fa78e9dea4bb0";
name = "kscreen-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/kscreen-5.17.5.tar.xz";
sha256 = "de8a00b33d0254245a53a5c097347aa86709d415754b3e3c675eef8fb4fe5bc0";
name = "kscreen-5.17.5.tar.xz";
};
};
kscreenlocker = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/kscreenlocker-5.16.5.tar.xz";
sha256 = "5ed6fdeac9aaba014edf67c5f782fc210d58310d083afaa589d0ff1bb3e8e02d";
name = "kscreenlocker-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/kscreenlocker-5.17.5.tar.xz";
sha256 = "078cfaa9f117a985f5c71152bdf4a9f5cb65ef23c0090cfaaccc9539770f138f";
name = "kscreenlocker-5.17.5.tar.xz";
};
};
ksshaskpass = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/ksshaskpass-5.16.5.tar.xz";
sha256 = "78eaa38ebbf888a8905e9385173e7161335041d6d07720283ce6f3fa06426a33";
name = "ksshaskpass-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/ksshaskpass-5.17.5.tar.xz";
sha256 = "b09e0d780340fc5a6a65e67a30d08a3f117f31e2dbfbb35579aa4cefb15c3b27";
name = "ksshaskpass-5.17.5.tar.xz";
};
};
ksysguard = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/ksysguard-5.16.5.tar.xz";
sha256 = "5558977389cb1fac4a5ce52c9430b27d9d1ee92705ae1995d92bed5340477282";
name = "ksysguard-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/ksysguard-5.17.5.tar.xz";
sha256 = "69bc12311dcf363b168a259139d30456ed395ec03b948bd35e992300c7e7bd82";
name = "ksysguard-5.17.5.tar.xz";
};
};
kwallet-pam = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/kwallet-pam-5.16.5.tar.xz";
sha256 = "4a12a8ed51973f9ea318a39a699523bcc99ae4e1cac932fccd19dedd45e758a8";
name = "kwallet-pam-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/kwallet-pam-5.17.5.tar.xz";
sha256 = "c829c7a44408e58beb87c71f5c70bccd349d285c3fcefb16df98bf2f29357fe9";
name = "kwallet-pam-5.17.5.tar.xz";
};
};
kwayland-integration = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/kwayland-integration-5.16.5.tar.xz";
sha256 = "63724ecfb6db053ee949273979b393192309dbeed45b59bc193a605f90232282";
name = "kwayland-integration-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/kwayland-integration-5.17.5.tar.xz";
sha256 = "818b4e14611e26f297ef60427d399edc458a44e113bc092390fa65ecababcedb";
name = "kwayland-integration-5.17.5.tar.xz";
};
};
kwin = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/kwin-5.16.5.tar.xz";
sha256 = "7ff0e114e323ff7e10d78a157f8242b1d3cfa03967898d9e3fd3c039b7c9918b";
name = "kwin-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/kwin-5.17.5.tar.xz";
sha256 = "8517adaf8270d783aea7b3886d86b5abed6a5ec2b5c78b632479597d956baadc";
name = "kwin-5.17.5.tar.xz";
};
};
kwrited = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/kwrited-5.16.5.tar.xz";
sha256 = "4b122099b0a362fc409b50b7523689ba8a112508dad26f58753c6b648e7c5313";
name = "kwrited-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/kwrited-5.17.5.tar.xz";
sha256 = "ca22b1fa3e657fa2e58bf0c9dc1ebff3be8c0e003750223e7a7c5932d5b90823";
name = "kwrited-5.17.5.tar.xz";
};
};
libkscreen = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/libkscreen-5.16.5.tar.xz";
sha256 = "fd2d1e849315ac745ecfe757d6b2c5cc6486e0be5397f686dae3916c0252c938";
name = "libkscreen-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/libkscreen-5.17.5.tar.xz";
sha256 = "aa186e5751287701daec4d036aba776a911e4b84ca7eea44dc5fb531875afd94";
name = "libkscreen-5.17.5.tar.xz";
};
};
libksysguard = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/libksysguard-5.16.5.tar.xz";
sha256 = "f09b99737a937df890ecdd2a33720b6cba3c79fc8bc17ef1470572748a6e1976";
name = "libksysguard-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/libksysguard-5.17.5.tar.xz";
sha256 = "f5d237af554d65740a28360e6d8fa39d4912239c5f21288846b1c934897a7e14";
name = "libksysguard-5.17.5.tar.xz";
};
};
milou = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/milou-5.16.5.tar.xz";
sha256 = "bfcdba29262dda9f386ee99132053ad5751194b2df8219899fcbb0b3699afcd5";
name = "milou-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/milou-5.17.5.tar.xz";
sha256 = "b89796e34cc8b6d6d4196169e814249f7b75c1c15763e0b4c1da5c97ccc2c8cf";
name = "milou-5.17.5.tar.xz";
};
};
oxygen = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/oxygen-5.16.5.tar.xz";
sha256 = "0e85dcd874d2e69aaa2d4eefc379289c7dd572437f53e42f1d6d260d97c2f8a2";
name = "oxygen-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/oxygen-5.17.5.tar.xz";
sha256 = "58954374a4b9067365ee5d50b32b1986b2e7dd31e73cbf79fda8d978949943be";
name = "oxygen-5.17.5.tar.xz";
};
};
plasma-browser-integration = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/plasma-browser-integration-5.16.5.tar.xz";
sha256 = "99269c7e27fddb0c075bff28a5afba41298dc8d28297d69f35f6bc30f3af1d35";
name = "plasma-browser-integration-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/plasma-browser-integration-5.17.5.tar.xz";
sha256 = "07bc4285991ab43830873a12b8c07f60e4faea1ec81121db783c425f18a4f87d";
name = "plasma-browser-integration-5.17.5.tar.xz";
};
};
plasma-desktop = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/plasma-desktop-5.16.5.tar.xz";
sha256 = "49dc4c9eff5742eb52fc0d12c139c194eda837945389cd09f498a0c4c352a20f";
name = "plasma-desktop-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/plasma-desktop-5.17.5.tar.xz";
sha256 = "7f741ab026989bdcc68701955fc290d5ead38bf4bc310f18a2f32c64b411ab04";
name = "plasma-desktop-5.17.5.tar.xz";
};
};
plasma-integration = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/plasma-integration-5.16.5.tar.xz";
sha256 = "635f109e7b59bb440c6be0c7a4baae70d2f44e659ab0522e170693b664e6d709";
name = "plasma-integration-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/plasma-integration-5.17.5.tar.xz";
sha256 = "169206bebd790d2fee49cec621c46f6f64a8e20ee3e56bf16ee7373f61cad959";
name = "plasma-integration-5.17.5.tar.xz";
};
};
plasma-nm = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/plasma-nm-5.16.5.tar.xz";
sha256 = "b519429bd784ff2ede0bf10e1e943822ef08ea5cf85e901363fda36d32907460";
name = "plasma-nm-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/plasma-nm-5.17.5.tar.xz";
sha256 = "2165e47a0654d17735abc97aec287b46b52a2eafccc3591b667ea2755b731255";
name = "plasma-nm-5.17.5.tar.xz";
};
};
plasma-pa = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/plasma-pa-5.16.5.tar.xz";
sha256 = "e029563d50cc6266a4a3e22574c33fef4670e1aaab18630eb30769e2167acc96";
name = "plasma-pa-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/plasma-pa-5.17.5.tar.xz";
sha256 = "933c6ab1fda52b336a157a48b1ea64b81fd1d84ca08a40a52bfae276cca2bf23";
name = "plasma-pa-5.17.5.tar.xz";
};
};
plasma-sdk = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/plasma-sdk-5.16.5.tar.xz";
sha256 = "1b05f0501309099f241ebae857c24b31bc4e61fde8bfc33e854d3a1dd3d37385";
name = "plasma-sdk-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/plasma-sdk-5.17.5.tar.xz";
sha256 = "ff736029b1ae5773991db06f5827d9dcbd8e7a4e9a430c9014c35ddee2c55314";
name = "plasma-sdk-5.17.5.tar.xz";
};
};
plasma-tests = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/plasma-tests-5.16.5.tar.xz";
sha256 = "236a83c2caa99801b6db1debce53a6c7390087115899410a8139ad3b7268b7f7";
name = "plasma-tests-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/plasma-tests-5.17.5.tar.xz";
sha256 = "1b566b7118a5c8d1b25078d331a6bc77f48781010fbd3425d85b137811218982";
name = "plasma-tests-5.17.5.tar.xz";
};
};
plasma-thunderbolt = {
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.17.5/plasma-thunderbolt-5.17.5.tar.xz";
sha256 = "3743f9841d269d51f1b1419e24d5cd1b26a0ba5a90e76b531328a8cc43184382";
name = "plasma-thunderbolt-5.17.5.tar.xz";
};
};
plasma-vault = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/plasma-vault-5.16.5.tar.xz";
sha256 = "2bb40a80c35f3eaedc729013a8b6b76641cc74eca4fd171f1cda99237f83198c";
name = "plasma-vault-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/plasma-vault-5.17.5.tar.xz";
sha256 = "3e5c6b4dd6c1122b6a221205da506881959ab905e467b74b0536e7f5fe130d71";
name = "plasma-vault-5.17.5.tar.xz";
};
};
plasma-workspace = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/plasma-workspace-5.16.5.tar.xz";
sha256 = "43364fe4e7ea10ad7b5b1d7af4f1baa1d8796b60692f2dfc0d58693f63e458ff";
name = "plasma-workspace-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/plasma-workspace-5.17.5.tar.xz";
sha256 = "764488e66d52bc3017efb2c1471f57196aa50fbfa3a80637bf48f24955cfba88";
name = "plasma-workspace-5.17.5.tar.xz";
};
};
plasma-workspace-wallpapers = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/plasma-workspace-wallpapers-5.16.5.tar.xz";
sha256 = "ff6e0eac42c540c72556439e6477fb78be2dab456386218813cce021f82d42d9";
name = "plasma-workspace-wallpapers-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/plasma-workspace-wallpapers-5.17.5.tar.xz";
sha256 = "8a28ef67b65c340d40ff8f5bfc333ead68e6d8c9e410769c43af847ced9b4ca9";
name = "plasma-workspace-wallpapers-5.17.5.tar.xz";
};
};
plymouth-kcm = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/plymouth-kcm-5.16.5.tar.xz";
sha256 = "db839c5fe9f6df882b95f436983c129cd553dd50e6cf1065c4410a91b20f1dcc";
name = "plymouth-kcm-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/plymouth-kcm-5.17.5.tar.xz";
sha256 = "bbd6994f60ed9d63b4e4dd0abe78bf1f9c14b8ecce8ba4355d16cd52a0a86528";
name = "plymouth-kcm-5.17.5.tar.xz";
};
};
polkit-kde-agent = {
version = "1-5.16.5";
version = "1-5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/polkit-kde-agent-1-5.16.5.tar.xz";
sha256 = "6f7a17990d72bb25c93acae919b764f95ac226754209b2e177075fbe9251f95f";
name = "polkit-kde-agent-1-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/polkit-kde-agent-1-5.17.5.tar.xz";
sha256 = "a79d76a2f584f6567639228fde6f75b3960484f7a65cfc69b6acb6df1de53f5d";
name = "polkit-kde-agent-1-5.17.5.tar.xz";
};
};
powerdevil = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/powerdevil-5.16.5.tar.xz";
sha256 = "ac868f31df8c6bcc6b1c850efa0640695ba698caabefcb21fc0b0c3405712139";
name = "powerdevil-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/powerdevil-5.17.5.tar.xz";
sha256 = "27904361e85e1267d933d8f0a0d3be4dc712099ed2eb3cf90959209a4443dd82";
name = "powerdevil-5.17.5.tar.xz";
};
};
sddm-kcm = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/sddm-kcm-5.16.5.tar.xz";
sha256 = "4220d18f1a04c767649bffee1aed6c2b2c12c60cd7d6ca6fabc3dbec1ec3f127";
name = "sddm-kcm-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/sddm-kcm-5.17.5.tar.xz";
sha256 = "e85fb9e014439e8c0e73638112139561aff9a9f71f26c3eafedff5a98a07b33b";
name = "sddm-kcm-5.17.5.tar.xz";
};
};
systemsettings = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/systemsettings-5.16.5.tar.xz";
sha256 = "57944cf3f566cf5e25d5859f5716b2ad5dbd87de259f8d77efdfdd50a16fe1ec";
name = "systemsettings-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/systemsettings-5.17.5.tar.xz";
sha256 = "50fa4d7866639995a6859446fc6a02a73ae05203e8f2ed31221e232ed3491eaf";
name = "systemsettings-5.17.5.tar.xz";
};
};
user-manager = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/user-manager-5.16.5.tar.xz";
sha256 = "e9df3ec2718de68b0b46d0b86f993fe450b236e13dda6219f350121f08f4c468";
name = "user-manager-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/user-manager-5.17.5.tar.xz";
sha256 = "10ed3196063c7dfed3b3f25dd199a48ca39fa86db5d0126ec84a543b1c212f0d";
name = "user-manager-5.17.5.tar.xz";
};
};
xdg-desktop-portal-kde = {
version = "5.16.5";
version = "5.17.5";
src = fetchurl {
url = "${mirror}/stable/plasma/5.16.5/xdg-desktop-portal-kde-5.16.5.tar.xz";
sha256 = "4884652b642fb6e8db791a04e9d42b5fec53f28cc0f0d26f49eb2bdaaa1709df";
name = "xdg-desktop-portal-kde-5.16.5.tar.xz";
url = "${mirror}/stable/plasma/5.17.5/xdg-desktop-portal-kde-5.17.5.tar.xz";
sha256 = "a993bd4b86a44c8237a3f4957c2594aa2ca8916204ad866f8af32f7df34740f6";
name = "xdg-desktop-portal-kde-5.17.5.tar.xz";
};
};
}

View file

@ -119,9 +119,9 @@ in {
major = "3";
minor = "9";
patch = "0";
suffix = "a2";
suffix = "a3";
};
sha256 = "02a301bdcldin05ksdg8xw8xr6gdkpf73p0cabvn9rdl6yhkr3q8";
sha256 = "09l68jyfhhass3cqyqyp2cv3a3i86qs0x736isidmpbrbxsincva";
inherit (darwin) configd;
inherit passthruFun;
};

View file

@ -4,13 +4,13 @@
}:
stdenv.mkDerivation rec {
pname = "gusb";
version = "0.3.0";
version = "0.3.3";
outputs = [ "bin" "out" "dev" "devdoc" ];
src = fetchurl {
url = "https://people.freedesktop.org/~hughsient/releases/libgusb-${version}.tar.xz";
sha256 = "1p4f6jdjw6zl986f93gzdjg2hdcn5dlz6rcckcz4rbmnk47rbryq";
sha256 = "14pbd0812151ga7jrpzi88fcrwkckx6m07ay84l7dzkxbdc44fgr";
};
nativeBuildInputs = [

View file

@ -5,7 +5,6 @@
, glib
, gobject-introspection
, gtk-doc
, libuuid
, meson
, ninja
, pkgconfig
@ -16,7 +15,7 @@
stdenv.mkDerivation rec {
pname = "libxmlb";
version = "0.1.13";
version = "0.1.14";
outputs = [ "out" "lib" "dev" "devdoc" "installedTests" ];
@ -24,7 +23,7 @@ stdenv.mkDerivation rec {
owner = "hughsie";
repo = "libxmlb";
rev = version;
sha256 = "14bk7bk08mjbildak1l7jq7idcyask7384vigpq9zmwai1gax4s7";
sha256 = "05snbv1dvqa96k7xlwi2sj161315kps3baansr9xdpwim5ckmwc6";
};
patches = [
@ -45,7 +44,6 @@ stdenv.mkDerivation rec {
buildInputs = [
glib
libuuid
];
mesonFlags = [

View file

@ -1,18 +1,18 @@
diff --git a/meson.build b/meson.build
index b064cb8..1a470cf 100644
index 38486c9..c567613 100644
--- a/meson.build
+++ b/meson.build
@@ -103,8 +103,8 @@
libexecdir = join_paths(prefix, get_option('libexecdir'))
datadir = join_paths(prefix, get_option('datadir'))
-installed_test_bindir = join_paths(libexecdir, 'installed-tests', meson.project_name())
-installed_test_datadir = join_paths(datadir, 'installed-tests', meson.project_name())
+installed_test_bindir = join_paths(get_option('installed_test_prefix'), 'libexec', 'installed-tests', meson.project_name())
+installed_test_datadir = join_paths(get_option('installed_test_prefix'), 'share', 'installed-tests', meson.project_name())
@@ -110,8 +110,8 @@
prefix = get_option('prefix')
datadir = join_paths(prefix, get_option('datadir'))
libexecdir = join_paths(prefix, get_option('libexecdir'))
- installed_test_bindir = join_paths(libexecdir, 'installed-tests', meson.project_name())
- installed_test_datadir = join_paths(datadir, 'installed-tests', meson.project_name())
+ installed_test_bindir = join_paths(get_option('installed_test_prefix'), 'libexec', 'installed-tests', meson.project_name())
+ installed_test_datadir = join_paths(get_option('installed_test_prefix'), 'share', 'installed-tests', meson.project_name())
endif
gio = dependency('gio-2.0', version : '>= 2.45.8')
uuid = dependency('uuid')
diff --git a/meson_options.txt b/meson_options.txt
index 27e8cb6..74548ae 100644
--- a/meson_options.txt

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "totem-pl-parser";
version = "3.26.3";
version = "3.26.4";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "13a45py2j1r9967zgww8kd24bn2fhycd4m3kzr90sxx9l2w03z8f";
sha256 = "1w34hdr09v3wy1cfvzhcmxc6b5p9ngcabgix59iv7hk739anymy1";
};
passthru = {

View file

@ -12,9 +12,7 @@ buildDunePackage rec {
sha256 = "114gq48cpj2mvycypa9lfyqqb26wa2gkdfwkcqhnx7m6sdwv9a38";
};
buildInputs = [ base64 bos lwt_react ocamlgraph rresult tyxml ];
propagatedBuildInputs = [ core ];
propagatedBuildInputs = [ base64 bos core lwt_react ocamlgraph rresult tyxml ];
minimumOCamlVersion = "4.07";

View file

@ -45,6 +45,5 @@ buildPythonPackage rec {
description = "Best practices checker for Ansible";
license = licenses.mit;
maintainers = [ maintainers.sengaya ];
broken = true; # requires new flit to build
};
}

View file

@ -20,13 +20,13 @@
buildPythonPackage rec {
pname = "datasette";
version = "0.30.2";
version = "0.35";
src = fetchFromGitHub {
owner = "simonw";
repo = "datasette";
rev = version;
sha256 = "07swnpz4c7vzlc69vavs1xvbhr5fa8g63kyfj1hf3zafskgjnzwy";
sha256 = "0v6af7agg27lapz1nbab07595v4hl2x5wm2f03drj81f7pm8y7hc";
};
nativeBuildInputs = [ pytestrunner ];

View file

@ -1,4 +1,4 @@
{ stdenv, buildPythonPackage, fetchPypi, substituteAll, python, nose, mercurial }:
{ stdenv, buildPythonPackage, fetchPypi, fetchpatch, substituteAll, python, nose, mercurial }:
buildPythonPackage rec {
pname = "python-hglib";
@ -14,12 +14,24 @@ buildPythonPackage rec {
src = ./hgpath.patch;
hg = "${mercurial}/bin/hg";
})
# These two patches are needed to fix the tests.
# They will need to be removed on the next update.
(fetchpatch {
url = "https://www.mercurial-scm.org/repo/python-hglib/raw-rev/12e6aaef0f6e";
sha256 = "159pmhy23gqcc6rkh5jrni8fba4xbhxwcc0jf02wqr7f82kv8a7x";
})
(fetchpatch {
url = "https://www.mercurial-scm.org/repo/python-hglib/raw-rev/1a318162f06f";
sha256 = "04lxfc15m3yw5kvp133xg8zv09l8kndi146xk3lnbbm07fgcnn1z";
})
];
checkInputs = [ nose ];
checkPhase = ''
${python.interpreter} test.py --with-hg "${mercurial}/bin/hg"
${python.interpreter} test.py --with-hg "${mercurial}/bin/hg" -v \
--exclude=test_merge_prompt_cb # https://bz.mercurial-scm.org/show_bug.cgi?id=6265
'';
meta = with stdenv.lib; {

View file

@ -15,12 +15,12 @@
buildPythonPackage rec {
pname = "ipykernel";
version = "5.1.3";
version = "5.1.4";
disabled = pythonOlder "3.4";
src = fetchPypi {
inherit pname version;
sha256 = "1a08y677lpn80qzvv7z0smgggmr5m5ayf0bs6vds47xpxl9sss5k";
sha256 = "7f1f01df22f1229c8879501057877ccaf92a3b01c1d00db708aad5003e5f9238";
};
propagatedBuildInputs = [ ipython jupyter_client traitlets tornado ];

View file

@ -10,13 +10,13 @@
buildPythonPackage rec {
pname = "llvmlite";
version = "0.30.0";
version = "0.31.0";
disabled = isPyPy;
src = fetchPypi {
inherit pname version;
sha256 = "4eaa398d4cafb76e2d8f30ca6ab875039a1023c91e7a690c6ddec20e58bb9a07";
sha256 = "22ab2b9d7ec79fab66ac8b3d2133347de86addc2e2df1b3793e523ac84baa3c8";
};
nativeBuildInputs = [ llvm ];

View file

@ -2,13 +2,13 @@
buildPythonPackage rec {
pname = "mahotas";
version = "1.4.7";
version = "1.4.9";
src = fetchFromGitHub {
owner = "luispedro";
repo = "mahotas";
rev = "v${version}";
sha256 = "1a3nzxb7is8n7lpxwq1fw3fr03qflig334rb1zzr2znjrhq6g94b";
sha256 = "151hri3lwcm9p7w1nyw99h8c70j51698cvzaiazvwb6gl4khwavv";
};
# remove this as soon as https://github.com/luispedro/mahotas/issues/97 is fixed

View file

@ -11,7 +11,7 @@
, tqdm
# Advanced image processing (triples size of output)
, advancedProcessing ? false
, opencv ? null
, opencv3 ? null
, scikitimage ? null
, scikitlearn ? null
, scipy ? null
@ -20,7 +20,7 @@
}:
assert advancedProcessing -> (
opencv != null && scikitimage != null && scikitlearn != null
opencv3 != null && scikitimage != null && scikitlearn != null
&& scipy != null && matplotlib != null && youtube-dl != null);
buildPythonPackage rec {
@ -40,7 +40,7 @@ buildPythonPackage rec {
propagatedBuildInputs = [
numpy decorator imageio imageio-ffmpeg tqdm requests proglog
] ++ (stdenv.lib.optionals advancedProcessing [
opencv scikitimage scikitlearn scipy matplotlib youtube-dl
opencv3 scikitimage scikitlearn scipy matplotlib youtube-dl
]);
meta = with stdenv.lib; {

View file

@ -0,0 +1,41 @@
{ lib
, buildPythonPackage
, fetchPypi
, pytest
, glibcLocales
, ipython_genutils
, traitlets
, testpath
, jsonschema
, jupyter_core
}:
buildPythonPackage rec {
pname = "nbformat";
version = "4.4.0";
src = fetchPypi {
inherit pname version;
sha256 = "f7494ef0df60766b7cabe0a3651556345a963b74dbc16bc7c18479041170d402";
};
LC_ALL="en_US.utf8";
checkInputs = [ pytest glibcLocales ];
propagatedBuildInputs = [ ipython_genutils traitlets testpath jsonschema jupyter_core ];
preCheck = ''
mkdir tmp
export HOME=tmp
'';
# Some of the tests use localhost networking.
__darwinAllowLocalNetworking = true;
meta = {
description = "The Jupyter Notebook format";
homepage = https://jupyter.org/;
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ fridh globin ];
};
}

View file

@ -12,11 +12,11 @@
buildPythonPackage rec {
pname = "nbformat";
version = "4.4.0";
version = "5.0.4";
src = fetchPypi {
inherit pname version;
sha256 = "f7494ef0df60766b7cabe0a3651556345a963b74dbc16bc7c18479041170d402";
sha256 = "562de41fc7f4f481b79ab5d683279bf3a168858268d4387b489b7b02be0b324a";
};
LC_ALL="en_US.utf8";

View file

@ -25,12 +25,12 @@
buildPythonPackage rec {
pname = "notebook";
version = "6.0.2";
version = "6.0.3";
disabled = !isPy3k;
src = fetchPypi {
inherit pname version;
sha256 = "399a4411e171170173344761e7fd4491a3625659881f76ce47c50231ed714d9b";
sha256 = "47a9092975c9e7965ada00b9a20f0cf637d001db60d241d479f53c0be117ad48";
};
LC_ALL = "en_US.utf8";

View file

@ -13,12 +13,12 @@
}:
buildPythonPackage rec {
version = "0.46.0";
version = "0.48.0";
pname = "numba";
src = fetchPypi {
inherit pname version;
sha256 = "c2cbaeae60f80805290fff50175028726fae12692404a36babd3326730fbceee";
sha256 = "9d21bc77e67006b5723052840c88cc59248e079a907cc68f1a1a264e1eaba017";
};
NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin "-I${libcxx}/include/c++/v1";

View file

@ -2,12 +2,12 @@
, fftw, fftwFloat, fftwLongDouble, numpy, scipy, cython, dask }:
buildPythonPackage rec {
version = "0.11.1";
version = "0.12.0";
pname = "pyFFTW";
src = fetchPypi {
inherit pname version;
sha256 = "05ea28dede4c3aaaf5c66f56eb0f71849d0d50f5bc0f53ca0ffa69534af14926";
sha256 = "60988e823ca75808a26fd79d88dbae1de3699e72a293f812aa4534f8a0a58cb0";
};
buildInputs = [ fftw fftwFloat fftwLongDouble];

View file

@ -0,0 +1,31 @@
{ lib, buildPythonPackage, fetchFromGitHub, cmake, python
, libosmium, protozero, boost, expat, bzip2, zlib, pybind11
, nose, shapely, mock, isPy3k }:
buildPythonPackage rec {
pname = "pyosmium";
version = "2.15.3";
src = fetchFromGitHub {
owner = "osmcode";
repo = pname;
rev = "v${version}";
sha256 = "1523ym9i4rnwi5kcp7n2lm67kxlhar8xlv91s394ixzwax9bgg7w";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ libosmium protozero boost expat bzip2 zlib pybind11 ];
preBuild = "cd ..";
checkInputs = [ nose shapely ] ++ lib.optionals (!isPy3k) [ mock ];
checkPhase = "(cd test && ${python.interpreter} run_tests.py)";
meta = with lib; {
description = "Python bindings for libosmium";
homepage = "https://osmcode.org/pyosmium";
license = licenses.bsd2;
maintainers = with maintainers; [ sikmir ];
};
}

View file

@ -8,10 +8,10 @@
buildPythonPackage rec {
pname = "seaborn";
version = "0.9.0";
version = "0.10.0";
src = fetchPypi {
inherit pname version;
sha256 = "76c83f794ca320fb6b23a7c6192d5e185a5fcf4758966a0c0a54baee46d41e2f";
sha256 = "59fe414e138d7d5ea08b0feb01b86caf4682e36fa748e3987730523a89aecbb9";
};
checkInputs = [ nose ];

View file

@ -1,17 +1,28 @@
{ lib
, buildPythonPackage
, fetchPypi
, stdenv
, file
}:
buildPythonPackage rec {
pname = "sqlmap";
version = "1.4";
version = "1.4.2";
src = fetchPypi {
inherit pname version;
sha256 = "0s6lgp66bn0l4a5mwxiv9h04sa7braqvjskns315lb93lyb4y092";
sha256 = "12i5s3qs0lxfs06p5b354scbapldf4isfr00cg1dq47n4gnqwa99";
};
postPatch = ''
substituteInPlace sqlmap/thirdparty/magic/magic.py --replace "ctypes.util.find_library('magic')" \
"'${file}/lib/libmagic${stdenv.hostPlatform.extensions.sharedLibrary}'"
# the check for the last update date does not work in Nix,
# since the timestamp of the all files in the nix store is reset to the unix epoch
echo 'LAST_UPDATE_NAGGING_DAYS = float("inf")' >> sqlmap/lib/core/settings.py
'';
# No tests in archive
doCheck = false;

View file

@ -13,14 +13,14 @@
buildPythonPackage rec {
pname = "tiledb";
version = "0.5.3";
version = "0.5.6";
format = "setuptools";
src = fetchFromGitHub {
owner = "TileDB-Inc";
repo = "TileDB-Py";
rev = version;
sha256 = "1wzzq3ggrprnjqgx9168r4x8cj1rh2ikr6mlxgbi463p5hnlkb5m";
sha256 = "0cgm4dhyqay26xmrzlv21ha8qh55m4q3yr338lrv81ngz77zxsvw";
};
nativeBuildInputs = [

View file

@ -9,11 +9,11 @@
buildPythonPackage rec {
pname = "tqdm";
version = "4.40.2";
version = "4.42.1";
src = fetchPypi {
inherit pname version;
sha256 = "f0ab01cf3ae5673d18f918700c0165e5fad0f26b5ebe4b34f62ead92686b5340";
sha256 = "251ee8440dbda126b8dfa8a7c028eb3f13704898caaef7caa699b35e119301e2";
};
checkInputs = [ nose coverage glibcLocales flake8 ];

View file

@ -10,11 +10,11 @@
buildPythonPackage rec {
pname = "xarray";
version = "0.14.1";
version = "0.15.0";
src = fetchPypi {
inherit pname version;
sha256 = "04b2f4d24707b8871a7ffa37328d0a2de74e81bd30791c9608712612601abd23";
sha256 = "c72d160c970725201f769e80fb91cbad68d6ebf21d68fcc371385a6c950459c3";
};
checkInputs = [ pytest ];

View file

@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "racer";
version = "2.1.29";
version = "2.1.30";
src = fetchFromGitHub {
owner = "racer-rust";
repo = "racer";
rev = "5db1d0cf8bd1a1030983337c2079be09a1268c8c";
sha256 = "0kxi0krpc3abanphzpmi3jhmm831bn4wjzyas469q2gvqfhm71dj";
rev = "c2b0080243fefdad7f7b223e8a7fdef3e1f0fa77";
sha256 = "0svvdkfqpk2rw0wxyrhkxy553k55lg7jxc0ly4w1195iwv14ad3y";
};
cargoSha256 = "18hx0dfx6lw3azsnpqzhbjs0fpfya5y0pcyjmfywv42a8n7dr1jc";
cargoSha256 = "1qxg9r6wpv811fh2l889jm0ya96gsra00kqpyxh41fb7myvl2a4i";
buildInputs = [ makeWrapper ]
++ stdenv.lib.optional stdenv.isDarwin Security;

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "brightnessctl";
version = "0.4";
version = "0.5.1";
src = fetchFromGitHub {
owner = "Hummer12007";
repo = "brightnessctl";
rev = version;
sha256 = "1n1gb8ldgqv3vs565yhk1w4jfvrviczp94r8wqlkv5q6ab43c8w9";
sha256 = "0immxc7almmpg80n3bdn834p3nrrz7bspl2syhb04s3lawa5y2lq";
};
makeFlags = [ "PREFIX=" "DESTDIR=$(out)" ];

View file

@ -83,8 +83,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
mktplcRef = {
name = "cpptools";
publisher = "ms-vscode";
version = "0.26.1";
sha256 = "09khm0byxa9mv8qbqrikd7akz3p816ra5z8l86xqkmbm6j1k4wpc";
version = "0.26.3";
sha256 = "1rwyvqk3gp5f75x73d33biqvq67xx2vz1lmh3y3ax8kaf9z8jfvr";
};
buildInputs = [

View file

@ -41,8 +41,8 @@ in vscode-utils.buildVscodeMarketplaceExtension {
mktplcRef = {
name = "python";
publisher = "ms-python";
version = "2019.10.44104";
sha256 = "1k0wws430psrl8zp9ky5mifbg02qmh2brjyqk5k9pn3y1dks5gns";
version = "2020.1.58038";
sha256 = "09iawy1p2akan090461137d4p5gqqf0aanm9i534p0kmbxmjfpqv";
};
buildInputs = [

View file

@ -1,10 +1,10 @@
diff --git a/data/meson.build b/data/meson.build
index 25db9509..f394eb25 100644
index d59bdc88..4a4cfc35 100644
--- a/data/meson.build
+++ b/data/meson.build
@@ -13,7 +13,7 @@
if build_daemon
subdir('installed-tests')
@@ -16,7 +16,7 @@
if build_standalone
install_data(['daemon.conf'],
- install_dir : join_paths(sysconfdir, 'fwupd')
+ install_dir : join_paths(sysconfdir_install, 'fwupd')
@ -76,10 +76,10 @@ index 826a3c1d..b78db663 100644
+ install_dir: join_paths(sysconfdir_install, 'fwupd', 'remotes.d'),
)
diff --git a/meson.build b/meson.build
index 8e1de887..a5bb1fe6 100644
index b1a523d2..aacb8e0a 100644
--- a/meson.build
+++ b/meson.build
@@ -158,6 +158,12 @@
@@ -169,6 +169,12 @@
mandir = join_paths(prefix, get_option('mandir'))
localedir = join_paths(prefix, get_option('localedir'))
@ -89,14 +89,14 @@ index 8e1de887..a5bb1fe6 100644
+ sysconfdir_install = sysconfdir
+endif
+
diffcmd = find_program('diff')
gio = dependency('gio-2.0', version : '>= 2.45.8')
giounix = dependency('gio-unix-2.0', version : '>= 2.45.8')
if gio.version().version_compare ('>= 2.55.0')
giounix = dependency('gio-unix-2.0', version : '>= 2.45.8', required: false)
diff --git a/meson_options.txt b/meson_options.txt
index 71b50c6a..561c2031 100644
index be0adfef..73983333 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -24,6 +24,7 @@
@@ -26,6 +26,7 @@
option('systemd', type : 'boolean', value : true, description : 'enable systemd support')
option('systemdunitdir', type: 'string', value: '', description: 'Directory for systemd units')
option('elogind', type : 'boolean', value : false, description : 'enable elogind support')
@ -105,10 +105,10 @@ index 71b50c6a..561c2031 100644
option('udevdir', type: 'string', value: '', description: 'Directory for udev rules')
option('efi-cc', type : 'string', value : 'gcc', description : 'the compiler to use for EFI modules')
diff --git a/plugins/dell-esrt/meson.build b/plugins/dell-esrt/meson.build
index cb9f4555..b972d7fb 100644
index ed4eee70..76dbdb1d 100644
--- a/plugins/dell-esrt/meson.build
+++ b/plugins/dell-esrt/meson.build
@@ -36,5 +36,5 @@
@@ -37,5 +37,5 @@
output : 'dell-esrt.conf',
configuration : con2,
install: true,
@ -116,10 +116,10 @@ index cb9f4555..b972d7fb 100644
+ install_dir: join_paths(sysconfdir_install, 'fwupd', 'remotes.d'),
)
diff --git a/plugins/redfish/meson.build b/plugins/redfish/meson.build
index 5c88504e..7706da71 100644
index 25fc5c7d..77eb9a83 100644
--- a/plugins/redfish/meson.build
+++ b/plugins/redfish/meson.build
@@ -26,7 +26,7 @@
@@ -27,7 +27,7 @@
)
install_data(['redfish.conf'],
@ -129,7 +129,7 @@ index 5c88504e..7706da71 100644
if get_option('tests')
diff --git a/plugins/thunderbolt/meson.build b/plugins/thunderbolt/meson.build
index 42718abf..bc815491 100644
index 06ab34ee..297a9182 100644
--- a/plugins/thunderbolt/meson.build
+++ b/plugins/thunderbolt/meson.build
@@ -46,7 +46,7 @@
@ -142,10 +142,10 @@ index 42718abf..bc815491 100644
# we use functions from 2.52 in the tests
if get_option('tests') and umockdev.found() and gio.version().version_compare('>= 2.52')
diff --git a/plugins/uefi/meson.build b/plugins/uefi/meson.build
index 45b18d7d..ef8e0b04 100644
index 39b5f566..0f904a22 100644
--- a/plugins/uefi/meson.build
+++ b/plugins/uefi/meson.build
@@ -85,7 +85,7 @@
@@ -87,7 +87,7 @@
)
install_data(['uefi.conf'],

View file

@ -87,14 +87,14 @@ in
stdenv.mkDerivation rec {
pname = "fwupd";
version = "1.3.3";
version = "1.3.7";
src = fetchurl {
url = "https://people.freedesktop.org/~hughsient/releases/fwupd-${version}.tar.xz";
sha256 = "0nqzqvx8nzflhb4kzvkdcv7kixb50vh6h21kpkd7pjxp942ndzql";
sha256 = "02mzn3whk5mba4nxyrkypawr1gzjx79n4nrkhrp8vja6mxxgsf10";
};
outputs = [ "out" "lib" "dev" "devdoc" "man" "installedTests" ];
outputs = [ "out" "dev" "devdoc" "man" "installedTests" ];
nativeBuildInputs = [
meson
@ -148,10 +148,6 @@ stdenv.mkDerivation rec {
./fix-paths.patch
./add-option-for-installation-sysconfdir.patch
# do not require which
# https://github.com/fwupd/fwupd/pull/1568
./no-which.patch
# installed tests are installed to different output
# we also cannot have fwupd-tests.conf in $out/etc since it would form a cycle
(substituteAll {
@ -163,7 +159,8 @@ stdenv.mkDerivation rec {
postPatch = ''
patchShebangs \
libfwupd/generate-version-script.py \
contrib/get-version.py \
contrib/generate-version-script.py \
meson_post_install.sh \
po/make-images \
po/make-images.sh \
@ -173,11 +170,6 @@ stdenv.mkDerivation rec {
# https://github.com/NixOS/nix/issues/1846
substituteInPlace data/installed-tests/meson.build --subst-var installedTests
# install plug-ins to out, they are not really part of the library
substituteInPlace meson.build \
--replace "plugin_dir = join_paths(libdir, 'fwupd-plugins-3')" \
"plugin_dir = join_paths('${placeholder "out"}', 'fwupd_plugins-3')"
substituteInPlace data/meson.build --replace \
"install_dir: systemd.get_pkgconfig_variable('systemdshutdowndir')" \
"install_dir: '${placeholder "out"}/lib/systemd/system-shutdown'"
@ -211,7 +203,6 @@ stdenv.mkDerivation rec {
"--localstatedir=/var"
"--sysconfdir=/etc"
"-Dsysconfdir_install=${placeholder "out"}/etc"
"--libexecdir=${placeholder "out"}/libexec"
] ++ stdenv.lib.optionals (!haveDell) [
"-Dplugin_dell=false"
"-Dplugin_synaptics=false"

View file

@ -1,31 +0,0 @@
--- a/plugins/uefi/efi/generate_binary.sh
+++ b/plugins/uefi/efi/generate_binary.sh
@@ -1,9 +1,9 @@
#!/bin/sh
output=$2
-objcopy_cmd=$(which objcopy)
-genpeimg_cmd=$(which genpeimg)
+objcopy_cmd=$(command -v objcopy)
+genpeimg_cmd=$(command -v genpeimg)
-$objcopy_cmd -j .text \
+"$objcopy_cmd" -j .text \
-j .sdata \
-j .data \
-j .dynamic \
@@ -11,7 +11,7 @@
-j .rel \
-j .rela \
-j .reloc \
- $*
+ "$@"
if [ -n "${genpeimg_cmd}" ]; then
$genpeimg_cmd -d \
@@ -20,5 +20,5 @@
+n \
-d \
+s \
- $output
+ "$output"
fi

View file

@ -15,13 +15,13 @@ in
stdenv.mkDerivation rec {
name = "${package}-${version}";
version = "0.5.6";
version = "0.5.7";
src = fetchFromGitHub {
repo = "JFBView";
owner = "jichu4n";
rev = version;
sha256 = "09rcmlf04aka0yzr25imadi0fl4nlbsxcahs7fhvzx4nql4halqw";
sha256 = "0ppns49hnmp04zdjw6wc28v0yvz31rkzvd5ylcj7arikx20llpxf";
};
postPatch = ''

View file

@ -2,7 +2,7 @@
buildGoPackage rec {
pname = "alertmanager";
version = "0.19.0";
version = "0.20.0";
rev = "v${version}";
goPackagePath = "github.com/prometheus/alertmanager";
@ -11,7 +11,7 @@ buildGoPackage rec {
inherit rev;
owner = "prometheus";
repo = "alertmanager";
sha256 = "08k898x9ks5rzcmb7ps1rnxv36ynv64x8yq2ahpwmfkmv6nw1ylh";
sha256 = "1bq6vbpy25k7apvs2ga3fbp1cbnv9j0y1g1khvz2qgz6a2zvhgg3";
};
buildFlagsArray = let t = "${goPackagePath}/vendor/github.com/prometheus/common/version"; in ''

View file

@ -2,7 +2,7 @@
buildGoPackage rec {
pname = "telegraf";
version = "1.13.2";
version = "1.13.3";
goPackagePath = "github.com/influxdata/telegraf";
@ -14,7 +14,7 @@ buildGoPackage rec {
owner = "influxdata";
repo = "telegraf";
rev = version;
sha256 = "1vcnac1gj7ri1hdlkz5i6zpxiwljpfn1iag1zb3fymlw6c91b11p";
sha256 = "093695n83m1ywy4l7nswjh1xc0gkg7pxilxav7jjxkgl4p15yf28";
};
buildFlagsArray = [ ''-ldflags=

View file

@ -932,8 +932,8 @@
fetch = {
type = "git";
url = "https://github.com/safchain/ethtool";
rev = "42ed695e3de80b9d695f280295fd7994639f209d";
sha256 = "0n5hkrzc1bh46nidcssx4539kvcmgj501v3kzh2pljpg27509daj";
rev = "ef7e7c9c27639f149a3c4bfae07a9c0fc3a1691a";
sha256 = "140bd01ngh2jgqhr2av3d4xmwk71c2mq5crg8gy89al76dwrjb7b";
};
}
{

View file

@ -0,0 +1,71 @@
{ stdenv
, awscli
, jq
, fetchgit
, installShellFiles
, bashInteractive
}:
stdenv.mkDerivation rec {
pname = "bash-my-aws";
version = "20200111";
src = fetchgit {
url = "https://github.com/bash-my-aws/bash-my-aws";
rev = "5a97ce2c22affca1299022a5afa109d7b62242ba";
sha256 = "459bda8b244af059d96c7c8b916cf956b01cb2732d1c2888a3ae06a4d660bea6";
};
dontConfigure = true;
dontBuild = true;
propagatedBuildInputs = [
awscli
jq
bashInteractive
];
nativeBuildInputs = [ installShellFiles ];
checkPhase = ''
pushd test
./shared-spec.sh
./stack-spec.sh
popd
'';
installPhase=''
mkdir -p $out
cp -r . $out
'';
postFixup = ''
pushd $out
substituteInPlace scripts/build \
--replace '~/.bash-my-aws' $out
substituteInPlace scripts/build-completions \
--replace "{HOME}" $out \
--replace '~/.bash-my-aws' $out
./scripts/build
./scripts/build-completions
substituteInPlace bash_completion.sh \
--replace "{HOME}" $out \
--replace .bash-my-aws ""
substituteInPlace bin/bma \
--replace '~/.bash-my-aws' $out
installShellCompletion --bash --name bash-my-aws.bash bash_completion.sh
chmod +x $out/lib/*
patchShebangs --host $out/lib
installShellCompletion --bash --name bash-my-aws.bash bash_completion.sh
cat > $out/bin/bma-init <<EOF
echo source $out/aliases
echo source $out/bash_completion.sh
EOF
chmod +x $out/bin/bma-init
popd
'';
meta = with stdenv.lib; {
homepage = https://bash-my-aws.org;
description = "CLI commands for AWS";
license = licenses.mit;
maintainers = with maintainers; [ tomberek ];
};
}

View file

@ -2,13 +2,13 @@
rustPlatform.buildRustPackage rec {
pname = "procs";
version = "0.9.5";
version = "0.9.6";
src = fetchFromGitHub {
owner = "dalance";
repo = pname;
rev = "v${version}";
sha256 = "1c2faw88np5dsbnd915m9a2fkx3a7xy9ii0xvacxkrv3z2zab3fc";
sha256 = "06q18ynb4r9dcxc690291z9vvll9rfpc8j1gkkgfav2f1xdndzq3";
};
cargoSha256 = "11wv02nn6gp32zzcd6kmsh6ky0dzyk1qqhb5vxvmq2nxhxjlddwv";

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "screen";
version = "4.7.0";
version = "4.8.0";
src = fetchurl {
url = "mirror://gnu/screen/${pname}-${version}.tar.gz";
sha256 = "1h90bpy2wk304xw367y1zwz0kilrpm6h28nphykx4fvqz8l56xys";
sha256 = "18ascpjzsy70h6hk7wpg8zmzjwgdyrdr7c6z4pg5z4l9hhyv24bf";
};
configureFlags= [

View file

@ -3,13 +3,13 @@
rustPlatform.buildRustPackage rec {
pname = "starship";
version = "0.33.1";
version = "0.35.1";
src = fetchFromGitHub {
owner = "starship";
repo = pname;
rev = "v${version}";
sha256 = "15z8iwig10brjxirr9nm1aibjz6qpd82v7n9c4i2q1q9qvb3j5cs";
sha256 = "17338l3nj6rysl9qvlbi1amqk6n5p15x8fvd11md7hwiavy4c63c";
};
buildInputs = stdenv.lib.optionals stdenv.isDarwin [ libiconv Security ];
@ -19,7 +19,7 @@ rustPlatform.buildRustPackage rec {
--replace "/bin/echo" "echo"
'';
cargoSha256 = "16jr96ljd34x3fa2jahcqmjm1ds8519hx391wv1snk7y70fz1314";
cargoSha256 = "0q6g7i930n23aabkwfn30lpbm5brjls552ql5khc6w02sirshsng";
checkPhase = "cargo test -- --skip directory::home_directory --skip directory::directory_in_root";
meta = with stdenv.lib; {

View file

@ -1,13 +1,12 @@
{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, glib, fuse, curl, glib-networking
{ stdenv, fetchgit, autoreconfHook, pkgconfig, glib, fuse, curl, glib-networking
, asciidoc, libxml2, docbook_xsl, docbook_xml_dtd_45, libxslt, wrapGAppsHook }:
stdenv.mkDerivation rec {
pname = "megatools";
version = "1.10.2";
src = fetchFromGitHub {
owner = "megous";
repo = "megatools";
src = fetchgit {
url = "https://megous.com/git/megatools";
rev = version;
sha256 = "001hw8j36ld03wwaphq3xdaazf2dpl36h84k8xmk524x8vlia8lk";
};
@ -16,7 +15,8 @@ stdenv.mkDerivation rec {
autoreconfHook pkgconfig wrapGAppsHook asciidoc libxml2
docbook_xsl docbook_xml_dtd_45 libxslt
];
buildInputs = [ glib glib-networking fuse curl ];
buildInputs = [ glib glib-networking curl ]
++ stdenv.lib.optionals stdenv.isLinux [ fuse ];
enableParallelBuilding = true;
@ -25,6 +25,6 @@ stdenv.mkDerivation rec {
homepage = https://megatools.megous.com/;
license = licenses.gpl2Plus;
maintainers = [ maintainers.viric maintainers.AndersonTorres ];
platforms = platforms.linux;
platforms = platforms.unix;
};
}

View file

@ -14,11 +14,11 @@ with stdenv.lib;
stdenv.mkDerivation rec {
pname = "wireguard-tools";
version = "1.0.20200121";
version = "1.0.20200206";
src = fetchzip {
url = "https://git.zx2c4.com/wireguard-tools/snapshot/wireguard-tools-${version}.tar.xz";
sha256 = "0s82i8ibf0zj2wka625vh4rihdwmvlkv1v3bilrlcscwgfvzjfhf";
sha256 = "0ivc08lds5w39a6f2xdfih9wlk5g724hl3kpdvxvh5yff4l84qb7";
};
sourceRoot = "source/src";

View file

@ -782,6 +782,8 @@ in
automirror = callPackage ../tools/misc/automirror { };
bash-my-aws = callPackage ../tools/admin/bash-my-aws { };
bcachefs-tools = callPackage ../tools/filesystems/bcachefs-tools { };
bitwarden = callPackage ../tools/security/bitwarden { };
@ -1927,6 +1929,8 @@ in
lynis = callPackage ../tools/security/lynis { };
mapproxy = callPackage ../applications/misc/mapproxy { };
marlin-calc = callPackage ../tools/misc/marlin-calc {};
mathics = with python2Packages; toPythonApplication mathics;

View file

@ -4316,7 +4316,9 @@ in {
nbconvert = callPackage ../development/python-modules/nbconvert { };
nbformat = callPackage ../development/python-modules/nbformat { };
nbformat = if isPy3k then
callPackage ../development/python-modules/nbformat { }
else callPackage ../development/python-modules/nbformat/2.nix { };
nbmerge = callPackage ../development/python-modules/nbmerge { };
@ -4896,6 +4898,8 @@ in {
pyopencl = callPackage ../development/python-modules/pyopencl { };
pyosmium = callPackage ../development/python-modules/pyosmium { };
pyotp = callPackage ../development/python-modules/pyotp { };
pyproj = callPackage ../development/python-modules/pyproj { };