Merge branch 'master' into staging-next

This commit is contained in:
Jan Tojnar 2020-07-15 09:25:28 +02:00
commit 5788f7173e
No known key found for this signature in database
GPG Key ID: 7FAB2A15F7A607A4
158 changed files with 6077 additions and 4639 deletions

View File

@ -3024,6 +3024,16 @@
githubId = 615606;
name = "Glenn Searby";
};
glittershark = {
name = "Griffin Smith";
email = "root@gws.fyi";
github = "glittershark";
githubId = 1481027;
keys = [{
longkeyid = "rsa2048/0x44EF5B5E861C09A7";
fingerprint = "0F11 A989 879E 8BBB FDC1 E236 44EF 5B5E 861C 09A7";
}];
};
gloaming = {
email = "ch9871@gmail.com";
github = "gloaming";
@ -3959,6 +3969,12 @@
githubId = 4611077;
name = "Raymond Gauthier";
};
jschievink = {
email = "jonasschievink@gmail.com";
github = "jonas-schievink";
githubId = 1786438;
name = "Jonas Schievink";
};
jtcoolen = {
email = "jtcoolen@pm.me";
name = "Julien Coolen";
@ -5640,6 +5656,12 @@
githubId = 5047140;
name = "Victor Collod";
};
mupdt = {
email = "nix@pdtpartners.com";
github = "mupdt";
githubId = 25388474;
name = "Matej Urbas";
};
mvnetbiz = {
email = "mvnetbiz@gmail.com";
github = "mvnetbiz";

View File

@ -124,6 +124,12 @@ systemd.services.mysql.serviceConfig.ReadWritePaths = [ "/var/data" ];
<varname>services.postfix.sslCACert</varname> was replaced by <varname>services.postfix.tlsTrustedAuthorities</varname> which now defaults to system certifcate authorities.
</para>
</listitem>
<listitem>
<para>
Subordinate GID and UID mappings are now set up automatically for all normal users.
This will make container tools like Podman work as non-root users out of the box.
</para>
</listitem>
</itemizedlist>
</section>

View File

@ -281,3 +281,58 @@ foreach my $u (values %usersOut) {
}
updateFile("/etc/shadow", \@shadowNew, 0600);
# Rewrite /etc/subuid & /etc/subgid to include default container mappings
my $subUidMapFile = "/var/lib/nixos/auto-subuid-map";
my $subUidMap = -e $subUidMapFile ? decode_json(read_file($subUidMapFile)) : {};
my (%subUidsUsed, %subUidsPrevUsed);
$subUidsPrevUsed{$_} = 1 foreach values %{$subUidMap};
sub allocSubUid {
my ($name, @rest) = @_;
# TODO: No upper bounds?
my ($min, $max, $up) = (100000, 100000 * 100, 1);
my $prevId = $subUidMap->{$name};
if (defined $prevId && !defined $subUidsUsed{$prevId}) {
$subUidsUsed{$prevId} = 1;
return $prevId;
}
my $id = allocId(\%subUidsUsed, \%subUidsPrevUsed, $min, $max, $up, sub { my ($uid) = @_; getpwuid($uid) });
my $offset = $id - 100000;
my $count = $offset * 65536;
my $subordinate = 100000 + $count;
return $subordinate;
}
my @subGids;
my @subUids;
foreach my $u (values %usersOut) {
my $name = $u->{name};
foreach my $range (@{$u->{subUidRanges}}) {
my $value = join(":", ($name, $range->{startUid}, $range->{count}));
push @subUids, $value;
}
foreach my $range (@{$u->{subGidRanges}}) {
my $value = join(":", ($name, $range->{startGid}, $range->{count}));
push @subGids, $value;
}
if($u->{isNormalUser}) {
my $subordinate = allocSubUid($name);
$subUidMap->{$name} = $subordinate;
my $value = join(":", ($name, $subordinate, 65536));
push @subUids, $value;
push @subGids, $value;
}
}
updateFile("/etc/subuid", join("\n", @subUids) . "\n");
updateFile("/etc/subgid", join("\n", @subGids) . "\n");
updateFile($subUidMapFile, encode_json($subUidMap) . "\n");

View File

@ -375,18 +375,6 @@ let
};
};
mkSubuidEntry = user: concatStrings (
map (range: "${user.name}:${toString range.startUid}:${toString range.count}\n")
user.subUidRanges);
subuidFile = concatStrings (map mkSubuidEntry (attrValues cfg.users));
mkSubgidEntry = user: concatStrings (
map (range: "${user.name}:${toString range.startGid}:${toString range.count}\n")
user.subGidRanges);
subgidFile = concatStrings (map mkSubgidEntry (attrValues cfg.users));
idsAreUnique = set: idAttr: !(fold (name: args@{ dup, acc }:
let
id = builtins.toString (builtins.getAttr idAttr (builtins.getAttr name set));
@ -406,6 +394,7 @@ let
{ inherit (u)
name uid group description home createHome isSystemUser
password passwordFile hashedPassword
isNormalUser subUidRanges subGidRanges
initialPassword initialHashedPassword;
shell = utils.toShellPath u.shell;
}) cfg.users;
@ -567,16 +556,7 @@ in {
# Install all the user shells
environment.systemPackages = systemShells;
environment.etc = {
subuid = {
text = subuidFile;
mode = "0644";
};
subgid = {
text = subgidFile;
mode = "0644";
};
} // (mapAttrs' (name: { packages, ... }: {
environment.etc = (mapAttrs' (name: { packages, ... }: {
name = "profiles/per-user/${name}";
value.source = pkgs.buildEnv {
name = "user-environment";

View File

@ -16,7 +16,7 @@ in
type = types.lines;
description = ''
Configuration for Spotifyd. For syntax and directives, see
https://github.com/Spotifyd/spotifyd#Configuration.
<link xlink:href="https://github.com/Spotifyd/spotifyd#Configuration"/>.
'';
};
};

View File

@ -29,7 +29,7 @@ let
with open('${cfg.workerPassFile}', 'r', encoding='utf-8') as passwd_file:
passwd = passwd_file.read().strip('\r\n')
keepalive = 600
keepalive = ${toString cfg.keepalive}
umask = None
maxdelay = 300
numcpus = None
@ -116,6 +116,15 @@ in {
description = "Specifies the Buildbot Worker connection string.";
};
keepalive = mkOption {
default = 600;
type = types.int;
description = "
This is a number that indicates how frequently keepalive messages should be sent
from the worker to the buildmaster, expressed in seconds.
";
};
package = mkOption {
type = types.package;
default = pkgs.python3Packages.buildbot-worker;

View File

@ -27,7 +27,10 @@ in
type = types.str;
default = "/var/lib/gitolite";
description = ''
Gitolite home directory (used to store all the repositories).
The gitolite home directory used to store all repositories. If left as the default value
this directory will automatically be created before the gitolite server starts, otherwise
the sysadmin is responsible for ensuring the directory exists with appropriate ownership
and permissions.
'';
};
@ -149,14 +152,6 @@ in
};
users.groups.${cfg.group}.gid = config.ids.gids.gitolite;
systemd.tmpfiles.rules = [
"d '${cfg.dataDir}' 0750 ${cfg.user} ${cfg.group} - -"
"d '${cfg.dataDir}'/.gitolite - ${cfg.user} ${cfg.group} - -"
"d '${cfg.dataDir}'/.gitolite/logs - ${cfg.user} ${cfg.group} - -"
"Z ${cfg.dataDir} 0750 ${cfg.user} ${cfg.group} - -"
];
systemd.services.gitolite-init = {
description = "Gitolite initialization";
wantedBy = [ "multi-user.target" ];
@ -167,13 +162,19 @@ in
GITOLITE_RC_DEFAULT = "${rcDir}/gitolite.rc.default";
};
serviceConfig = {
Type = "oneshot";
User = cfg.user;
Group = cfg.group;
WorkingDirectory = "~";
RemainAfterExit = true;
};
serviceConfig = mkMerge [
(mkIf (cfg.dataDir == "/var/lib/gitolite") {
StateDirectory = "gitolite gitolite/.gitolite gitolite/.gitolite/logs";
StateDirectoryMode = "0750";
})
{
Type = "oneshot";
User = cfg.user;
Group = cfg.group;
WorkingDirectory = "~";
RemainAfterExit = true;
}
];
path = [ pkgs.gitolite pkgs.git pkgs.perl pkgs.bash pkgs.diffutils config.programs.ssh.package ];
script =

View File

@ -169,4 +169,4 @@ exec {logOutFd}>&- {logErrFd}>&-
echo "starting systemd..."
PATH=/run/current-system/systemd/lib/systemd:@fsPackagesPath@ \
LOCALE_ARCHIVE=/run/current-system/sw/lib/locale/locale-archive \
exec systemd
exec @systemdExecutable@

View File

@ -10,6 +10,7 @@ let
src = ./stage-2-init.sh;
shellDebug = "${pkgs.bashInteractive}/bin/bash";
shell = "${pkgs.bash}/bin/bash";
inherit (config.boot) systemdExecutable;
isExecutable = true;
inherit (config.nix) readOnlyStore;
inherit useHostResolvConf;
@ -72,6 +73,15 @@ in
'';
};
systemdExecutable = mkOption {
default = "systemd";
type = types.str;
description = ''
The program to execute to start systemd. Typically
<literal>systemd</literal>, which will find systemd in the
PATH.
'';
};
};
};

View File

@ -23,6 +23,15 @@ in
maintainers = [] ++ lib.teams.podman.members;
};
imports = [
(
lib.mkRemovedOptionModule
[ "virtualisation" "containers" "users" ]
"All users with `isNormaUser = true` set now get appropriate subuid/subgid mappings."
)
];
options.virtualisation.containers = {
enable =
@ -99,15 +108,6 @@ in
'';
};
users = mkOption {
default = [];
type = types.listOf types.str;
description = ''
List of users to set up subuid/subgid mappings for.
This is a requirement for running rootless containers.
'';
};
};
config = lib.mkIf cfg.enable {
@ -122,26 +122,6 @@ in
registries = lib.mapAttrs (n: v: { registries = v; }) cfg.registries;
};
users.extraUsers = builtins.listToAttrs (
(
builtins.foldl' (
acc: user: {
values = acc.values ++ [
{
name = user;
value = {
subUidRanges = [ { startUid = acc.offset; count = 65536; } ];
subGidRanges = [ { startGid = acc.offset; count = 65536; } ];
};
}
];
offset = acc.offset + 65536;
}
)
{ values = []; offset = 100000; } (lib.unique cfg.users)
).values
);
environment.etc."containers/policy.json".source =
if cfg.policy != {} then pkgs.writeText "policy.json" (builtins.toJSON cfg.policy)
else copyFile "${pkgs.skopeo.src}/default-policy.json";

View File

@ -183,15 +183,15 @@ let
monA.wait_until_succeeds("ceph -s | grep 'HEALTH_OK'")
monA.succeed(
"ceph osd pool create multi-node-test 128 128",
"ceph osd pool create multi-node-test 32 32",
"ceph osd pool ls | grep 'multi-node-test'",
"ceph osd pool rename multi-node-test multi-node-other-test",
"ceph osd pool ls | grep 'multi-node-other-test'",
)
monA.wait_until_succeeds("ceph -s | grep '1 pools, 128 pgs'")
monA.wait_until_succeeds("ceph -s | grep '2 pools, 33 pgs'")
monA.succeed("ceph osd pool set multi-node-other-test size 2")
monA.wait_until_succeeds("ceph -s | grep 'HEALTH_OK'")
monA.wait_until_succeeds("ceph -s | grep '128 active+clean'")
monA.wait_until_succeeds("ceph -s | grep '33 active+clean'")
monA.fail(
"ceph osd pool ls | grep 'multi-node-test'",
"ceph osd pool delete multi-node-other-test multi-node-other-test --yes-i-really-really-mean-it",

View File

@ -143,12 +143,12 @@ let
monA.wait_until_succeeds("ceph -s | grep 'HEALTH_OK'")
monA.succeed(
"ceph osd pool create single-node-test 128 128",
"ceph osd pool create single-node-test 32 32",
"ceph osd pool ls | grep 'single-node-test'",
"ceph osd pool rename single-node-test single-node-other-test",
"ceph osd pool ls | grep 'single-node-other-test'",
)
monA.wait_until_succeeds("ceph -s | grep '1 pools, 128 pgs'")
monA.wait_until_succeeds("ceph -s | grep '2 pools, 33 pgs'")
monA.succeed(
"ceph osd getcrushmap -o crush",
"crushtool -d crush -o decrushed",
@ -158,7 +158,7 @@ let
"ceph osd pool set single-node-other-test size 2",
)
monA.wait_until_succeeds("ceph -s | grep 'HEALTH_OK'")
monA.wait_until_succeeds("ceph -s | grep '128 active+clean'")
monA.wait_until_succeeds("ceph -s | grep '33 active+clean'")
monA.fail(
"ceph osd pool ls | grep 'multi-node-test'",
"ceph osd pool delete single-node-other-test single-node-other-test --yes-i-really-really-mean-it",

View File

@ -14,6 +14,7 @@ import ./make-test-python.nix ({ pkgs, lib, ...} : {
services.xserver.displayManager = {
gdm.enable = true;
gdm.debug = true;
autoLogin = {
enable = true;
user = user.name;
@ -21,6 +22,7 @@ import ./make-test-python.nix ({ pkgs, lib, ...} : {
};
services.xserver.desktopManager.gnome3.enable = true;
services.xserver.desktopManager.gnome3.debug = true;
services.xserver.displayManager.defaultSession = "gnome-xorg";
virtualisation.memorySize = 1024;

View File

@ -13,6 +13,7 @@ import ./make-test-python.nix ({ pkgs, lib, ...} : {
services.xserver.displayManager = {
gdm.enable = true;
gdm.debug = true;
autoLogin = {
enable = true;
user = "alice";
@ -20,6 +21,7 @@ import ./make-test-python.nix ({ pkgs, lib, ...} : {
};
services.xserver.desktopManager.gnome3.enable = true;
services.xserver.desktopManager.gnome3.debug = true;
virtualisation.memorySize = 1024;
};

View File

@ -12,9 +12,6 @@ import ./make-test-python.nix (
{ pkgs, ... }:
{
virtualisation.podman.enable = true;
virtualisation.containers.users = [
"alice"
];
users.users.alice = {
isNormalUser = true;

View File

@ -20,7 +20,7 @@
}:
rustPlatform.buildRustPackage rec {
version = "0.4.7";
version = "0.4.8";
pname = "gnome-podcasts";
src = fetchFromGitLab {
@ -28,10 +28,10 @@ rustPlatform.buildRustPackage rec {
owner = "World";
repo = "podcasts";
rev = version;
sha256 = "0vy5i77bv8c22ldhrnr4z6kx22zqnb1lg3s7y8673bqjgd7dppi0";
sha256 = "0y2332zjq7vf1v38wzwz98fs19vpzy9kl7y0xbdzqr303l59hjb1";
};
cargoSha256 = "1dlbdxsf9p2jzrsclm43k95y8m3zcd41qd9ajg1ii3fpnahi58kd";
cargoSha256 = "1jbii9k4bkrivdk1ffr6556q1sgk9j4jbzwnn8vbxmksyl1x328q";
nativeBuildInputs = [
meson

View File

@ -0,0 +1,70 @@
{ cmake
, fetchFromGitLab
, lib
, libnotify
, mkDerivation
, pkgconfig
, qtbase
, qtdeclarative
, qtgraphicaleffects
, qtquickcontrols2
, qttools
, qtwebengine
}:
mkDerivation rec {
pname = "MellowPlayer";
version = "3.6.4";
src = fetchFromGitLab {
owner = "ColinDuquesnoy";
repo = "MellowPlayer";
rev = version;
sha256 = "1ss7s3kal4vzhz7ld0yy2kvp1rk2w3i6fya0z3xd7nff9p31gqvw";
};
nativeBuildInputs = [ cmake pkgconfig ];
buildInputs = [
libnotify
qtbase
qtdeclarative
qtgraphicaleffects
qtquickcontrols2
qttools
qtwebengine
];
doCheck = true;
cmakeFlags = [ "-DBUILD_TESTS=ON" ];
preCheck = ''
# Running the tests requires a location at the home directory for logging.
export HOME="$NIX_BUILD_TOP/home"
mkdir -p "$HOME/.local/share/MellowPlayer.Tests/MellowPlayer.Tests/Logs"
# Without this, the tests fail because they cannot create the QT Window
export QT_QPA_PLATFORM=offscreen
''
# TODO: The tests are failing because it can't locate QT plugins. Is there a better way to do this?
+ (builtins.concatStringsSep "\n" (lib.lists.flatten (builtins.map
(pkg: [
(lib.optionalString (pkg ? qtPluginPrefix) ''
export QT_PLUGIN_PATH="${pkg}/${pkg.qtPluginPrefix}"''${QT_PLUGIN_PATH:+':'}$QT_PLUGIN_PATH
'')
(lib.optionalString (pkg ? qtQmlPrefix) ''
export QML2_IMPORT_PATH="${pkg}/${pkg.qtQmlPrefix}"''${QML2_IMPORT_PATH:+':'}$QML2_IMPORT_PATH
'')
]) buildInputs)));
meta = with lib; {
inherit (qtbase.meta) platforms;
description = "Cloud music integration for your desktop.";
homepage = "https://gitlab.com/ColinDuquesnoy/MellowPlayer";
license = licenses.gpl2;
maintainers = with maintainers; [ kalbasit ];
};
}

View File

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "go-ethereum";
version = "1.9.15";
version = "1.9.16";
src = fetchFromGitHub {
owner = "ethereum";
repo = pname;
rev = "v${version}";
sha256 = "1c69rfnx9130b87pw9lnaxyrbzwfhqb2dxyl7qyiscq85hqs16f9";
sha256 = "0vycnyz6v39cfrck70h3dbn7jkkh67q0fli240ksw2cp4pqwpwcn";
};
usb = fetchFromGitHub {
@ -18,7 +18,7 @@ buildGoModule rec {
sha256 = "0asd5fz2rhzkjmd8wjgmla5qmqyz4jaa6qf0n2ycia16jsck6wc2";
};
vendorSha256 = "1pjgcx6sydfipsx8s0kl7n6r3lk61klsfrkd7cg4l934k590q2n7";
vendorSha256 = "0w2214fllw93xbrlxayhl014aqbjsc8zz7mpik7w5b26m60hn5kr";
overrideModAttrs = (_: {
postBuild = ''

View File

@ -1,24 +1,38 @@
{ buildGoModule, fetchFromGitHub, lib }:
{ buildGoModule, fetchFromGitHub, lib
, tags ? [ "autopilotrpc" "signrpc" "walletrpc" "chainrpc" "invoicesrpc" "watchtowerrpc" ]
}:
buildGoModule rec {
pname = "lnd";
version = "0.10.0-beta";
version = "0.10.3-beta";
src = fetchFromGitHub {
owner = "lightningnetwork";
repo = "lnd";
rev = "v${version}";
sha256 = "1amciz924s2h6qhy7w34jpv1jc25p5ayfxzvjph6hhx0bccrm88w";
sha256 = "129vi8z2sk4hagk7axa675nba6sbj9km88zlq8a1g8di7v2k9z6a";
};
vendorSha256 = "1iyghg11cxvbzi0gl40fvv8pl3d3k52j179w3x5m1f09r5ji223y";
vendorSha256 = "0a4bk2qry0isnrvl0adwikqn6imxwzlaq5j3nglb5rmwwq2cdz0r";
subPackages = ["cmd/lncli" "cmd/lnd"];
preBuild = let
buildVars = {
RawTags = lib.concatStringsSep "," tags;
GoVersion = "$(go version | egrep -o 'go[0-9]+[.][^ ]*')";
};
buildVarsFlags = lib.concatStringsSep " " (lib.mapAttrsToList (k: v: "-X github.com/lightningnetwork/lnd/build.${k}=${v}") buildVars);
in
lib.optionalString (tags != []) ''
buildFlagsArray+=("-tags=${lib.concatStringsSep " " tags}")
buildFlagsArray+=("-ldflags=${buildVarsFlags}")
'';
meta = with lib; {
description = "Lightning Network Daemon";
homepage = "https://github.com/lightningnetwork/lnd";
license = lib.licenses.mit;
maintainers = with maintainers; [ cypherpunk2140 ];
};
}
}

View File

@ -10,13 +10,13 @@ assert stdenv.isDarwin -> IOKit != null;
stdenv.mkDerivation rec {
pname = "monero";
version = "0.16.0.0";
version = "0.16.0.1";
src = fetchFromGitHub {
owner = "monero-project";
repo = "monero";
rev = "v${version}";
sha256 = "0x74h5z0nxxxip97ibc854pqmrgd8r4d6w62m424f66i8gbzfskh";
sha256 = "0n2cviqm8radpynx70fc0819k1xknjc58cvb4whlc49ilyvh8ky6";
fetchSubmodules = true;
};

View File

@ -1,26 +1,26 @@
{ stdenv, fetchFromGitHub, cmake, boost, miniupnpc_2, openssl, unbound
{ stdenv, fetchgit, cmake, boost, miniupnpc_2, openssl, unbound
, readline, libsodium, rapidjson, fetchurl
}:
with stdenv.lib;
let
randomwowVersion = "1.1.6";
randomwowVersion = "1.1.7";
randomwow = fetchurl {
url = "https://github.com/wownero/RandomWOW/archive/${randomwowVersion}.tar.gz";
sha256 = "1c55y2dwrayh6k1avpchs89gq1mvy5c305h92jm2k48kzhw6a792";
sha256 = "1xp76zf01hnhnk6rjvqjav9n9pnvxzxlzqa5rc574d1c2qczfy3q";
};
in
stdenv.mkDerivation rec {
pname = "wownero";
version = "0.8.0.0";
version = "0.8.0.1";
src = fetchFromGitHub {
owner = "wownero";
repo = "wownero";
rev = "v${version}";
sha256 = "14nggivilgzaqhjd4ng3g2p884yp2hc322hpcpwjdnz2zfc3qq6c";
src = fetchgit {
url = "https://git.wownero.com/wownero/wownero.git";
rev = "v${version}";
sha256 = "15443xv6q1nw4627ajk6k4ghhahvh82lb4gyb8nvq753p2v838g3";
fetchSubmodules = false;
};
nativeBuildInputs = [ cmake ];

View File

@ -34,6 +34,8 @@ stdenv.mkDerivation rec {
"-DUSE_KWALLET=OFF"
];
# Doc has high risk of collisions
postInstall = "rm -r $out/share/doc";
# darktable changed its rpath handling in commit
# 83c70b876af6484506901e6b381304ae0d073d3c and as a result the

View File

@ -10,11 +10,11 @@ with stdenv.lib;
perlPackages.buildPerlPackage rec {
pname = "gscan2pdf";
version = "2.8.0";
version = "2.8.1";
src = fetchurl {
url = "mirror://sourceforge/gscan2pdf/${version}/${pname}-${version}.tar.xz";
sha256 = "0rqx41hkppil3lp1dhkxwlhv0kwp8w8fkgzlapryq1yd9pgkx6lw";
sha256 = "00g2vw7lz3yb4nq358x8d3r4mf3hkrq2vw1g9lli27zdp5p6jja1";
};
nativeBuildInputs = [ wrapGAppsHook ];

View File

@ -1,27 +1,42 @@
Index: akonadi-19.08.0/src/akonadicontrol/agentmanager.cpp
===================================================================
--- akonadi-19.08.0.orig/src/akonadicontrol/agentmanager.cpp
+++ akonadi-19.08.0/src/akonadicontrol/agentmanager.cpp
@@ -78,12 +78,12 @@ AgentManager::AgentManager(bool verbose,
mStorageController = new Akonadi::ProcessControl;
mStorageController->setShutdownTimeout(15 * 1000); // the server needs more time for shutdown if we are using an internal mysqld
connect(mStorageController, &Akonadi::ProcessControl::unableToStart, this, &AgentManager::serverFailure);
- mStorageController->start(QStringLiteral("akonadiserver"), serviceArgs, Akonadi::ProcessControl::RestartOnCrash);
+ mStorageController->start(QLatin1String(NIX_OUT "/bin/akonadiserver"), serviceArgs, Akonadi::ProcessControl::RestartOnCrash);
if (mAgentServerEnabled) {
mAgentServer = new Akonadi::ProcessControl;
connect(mAgentServer, &Akonadi::ProcessControl::unableToStart, this, &AgentManager::agentServerFailure);
- mAgentServer->start(QStringLiteral("akonadi_agent_server"), serviceArgs, Akonadi::ProcessControl::RestartOnCrash);
+ mAgentServer->start(QLatin1String(NIX_OUT "/bin/akonadi_agent_server"), serviceArgs, Akonadi::ProcessControl::RestartOnCrash);
From 90969b9b36400d47b1afe761fb8468c1acb8a04a Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@mailbox.org>
Date: Mon, 13 Jul 2020 11:41:19 -0500
Subject: [PATCH 1/3] akonadi paths
---
src/akonadicontrol/agentmanager.cpp | 4 ++--
src/akonadicontrol/agentprocessinstance.cpp | 2 +-
src/server/storage/dbconfigmysql.cpp | 26 ++++-----------------
src/server/storage/dbconfigpostgresql.cpp | 19 +++------------
4 files changed, 11 insertions(+), 40 deletions(-)
diff --git a/src/akonadicontrol/agentmanager.cpp b/src/akonadicontrol/agentmanager.cpp
index 23b4a1f..c13b658 100644
--- a/src/akonadicontrol/agentmanager.cpp
+++ b/src/akonadicontrol/agentmanager.cpp
@@ -61,7 +61,7 @@ public:
[]() {
QCoreApplication::instance()->exit(255);
});
- start(QStringLiteral("akonadiserver"), args, RestartOnCrash);
+ start(QLatin1String(NIX_OUT "/bin/akonadiserver"), args, RestartOnCrash);
}
}
Index: akonadi-19.08.0/src/akonadicontrol/agentprocessinstance.cpp
===================================================================
--- akonadi-19.08.0.orig/src/akonadicontrol/agentprocessinstance.cpp
+++ akonadi-19.08.0/src/akonadicontrol/agentprocessinstance.cpp
@@ -62,7 +62,7 @@ bool AgentProcessInstance::start(const A
~StorageProcessControl() override
@@ -84,7 +84,7 @@ public:
[]() {
qCCritical(AKONADICONTROL_LOG) << "Failed to start AgentServer!";
});
- start(QStringLiteral("akonadi_agent_server"), args, RestartOnCrash);
+ start(QLatin1String(NIX_OUT "/bin/akonadi_agent_server"), args, RestartOnCrash);
}
~AgentServerProcessControl() override
diff --git a/src/akonadicontrol/agentprocessinstance.cpp b/src/akonadicontrol/agentprocessinstance.cpp
index 4e58f7e..e8bb532 100644
--- a/src/akonadicontrol/agentprocessinstance.cpp
+++ b/src/akonadicontrol/agentprocessinstance.cpp
@@ -62,7 +62,7 @@ bool AgentProcessInstance::start(const AgentType &agentInfo)
} else {
Q_ASSERT(agentInfo.launchMethod == AgentType::Launcher);
const QStringList arguments = QStringList() << executable << identifier();
@ -30,11 +45,11 @@ Index: akonadi-19.08.0/src/akonadicontrol/agentprocessinstance.cpp
mController->start(agentLauncherExec, arguments);
}
return true;
Index: akonadi-19.08.0/src/server/storage/dbconfigmysql.cpp
===================================================================
--- akonadi-19.08.0.orig/src/server/storage/dbconfigmysql.cpp
+++ akonadi-19.08.0/src/server/storage/dbconfigmysql.cpp
@@ -83,7 +83,6 @@ bool DbConfigMysql::init(QSettings &sett
diff --git a/src/server/storage/dbconfigmysql.cpp b/src/server/storage/dbconfigmysql.cpp
index cac40f5..527649b 100644
--- a/src/server/storage/dbconfigmysql.cpp
+++ b/src/server/storage/dbconfigmysql.cpp
@@ -83,7 +83,6 @@ bool DbConfigMysql::init(QSettings &settings)
// determine default settings depending on the driver
QString defaultHostName;
QString defaultOptions;
@ -42,7 +57,7 @@ Index: akonadi-19.08.0/src/server/storage/dbconfigmysql.cpp
QString defaultCleanShutdownCommand;
#ifndef Q_OS_WIN
@@ -92,16 +91,7 @@ bool DbConfigMysql::init(QSettings &sett
@@ -92,16 +91,7 @@ bool DbConfigMysql::init(QSettings &settings)
#endif
const bool defaultInternalServer = true;
@ -60,7 +75,7 @@ Index: akonadi-19.08.0/src/server/storage/dbconfigmysql.cpp
if (!mysqladminPath.isEmpty()) {
#ifndef Q_OS_WIN
defaultCleanShutdownCommand = QStringLiteral("%1 --defaults-file=%2/mysql.conf --socket=%3/%4 shutdown")
@@ -111,10 +101,10 @@ bool DbConfigMysql::init(QSettings &sett
@@ -111,10 +101,10 @@ bool DbConfigMysql::init(QSettings &settings)
#endif
}
@ -73,7 +88,7 @@ Index: akonadi-19.08.0/src/server/storage/dbconfigmysql.cpp
qCDebug(AKONADISERVER_LOG) << "Found mysqlcheck: " << mMysqlCheckPath;
mInternalServer = settings.value(QStringLiteral("QMYSQL/StartServer"), defaultInternalServer).toBool();
@@ -131,7 +121,7 @@ bool DbConfigMysql::init(QSettings &sett
@@ -131,7 +121,7 @@ bool DbConfigMysql::init(QSettings &settings)
mUserName = settings.value(QStringLiteral("User")).toString();
mPassword = settings.value(QStringLiteral("Password")).toString();
mConnectionOptions = settings.value(QStringLiteral("Options"), defaultOptions).toString();
@ -82,7 +97,7 @@ Index: akonadi-19.08.0/src/server/storage/dbconfigmysql.cpp
mCleanServerShutdownCommand = settings.value(QStringLiteral("CleanServerShutdownCommand"), defaultCleanShutdownCommand).toString();
settings.endGroup();
@@ -141,9 +131,6 @@ bool DbConfigMysql::init(QSettings &sett
@@ -141,9 +131,6 @@ bool DbConfigMysql::init(QSettings &settings)
// intentionally not namespaced as we are the only one in this db instance when using internal mode
mDatabaseName = QStringLiteral("akonadi");
}
@ -92,7 +107,7 @@ Index: akonadi-19.08.0/src/server/storage/dbconfigmysql.cpp
qCDebug(AKONADISERVER_LOG) << "Using mysqld:" << mMysqldPath;
@@ -152,9 +139,6 @@ bool DbConfigMysql::init(QSettings &sett
@@ -152,9 +139,6 @@ bool DbConfigMysql::init(QSettings &settings)
settings.setValue(QStringLiteral("Name"), mDatabaseName);
settings.setValue(QStringLiteral("Host"), mHostName);
settings.setValue(QStringLiteral("Options"), mConnectionOptions);
@ -102,7 +117,7 @@ Index: akonadi-19.08.0/src/server/storage/dbconfigmysql.cpp
settings.setValue(QStringLiteral("StartServer"), mInternalServer);
settings.endGroup();
settings.sync();
@@ -209,7 +193,7 @@ bool DbConfigMysql::startInternalServer(
@@ -209,7 +193,7 @@ bool DbConfigMysql::startInternalServer()
#endif
// generate config file
@ -111,11 +126,11 @@ Index: akonadi-19.08.0/src/server/storage/dbconfigmysql.cpp
const QString localConfig = StandardDirs::locateResourceFile("config", QStringLiteral("mysql-local.conf"));
const QString actualConfig = StandardDirs::saveDir("data") + QLatin1String("/mysql.conf");
if (globalConfig.isEmpty()) {
Index: akonadi-19.08.0/src/server/storage/dbconfigpostgresql.cpp
===================================================================
--- akonadi-19.08.0.orig/src/server/storage/dbconfigpostgresql.cpp
+++ akonadi-19.08.0/src/server/storage/dbconfigpostgresql.cpp
@@ -140,9 +140,7 @@ bool DbConfigPostgresql::init(QSettings
diff --git a/src/server/storage/dbconfigpostgresql.cpp b/src/server/storage/dbconfigpostgresql.cpp
index 09cdbd5..1c8996b 100644
--- a/src/server/storage/dbconfigpostgresql.cpp
+++ b/src/server/storage/dbconfigpostgresql.cpp
@@ -141,9 +141,7 @@ bool DbConfigPostgresql::init(QSettings &settings)
// determine default settings depending on the driver
QString defaultHostName;
QString defaultOptions;
@ -125,7 +140,7 @@ Index: akonadi-19.08.0/src/server/storage/dbconfigpostgresql.cpp
QString defaultPgData;
#ifndef Q_WS_WIN // We assume that PostgreSQL is running as service on Windows
@@ -153,12 +151,8 @@ bool DbConfigPostgresql::init(QSettings
@@ -154,12 +152,8 @@ bool DbConfigPostgresql::init(QSettings &settings)
mInternalServer = settings.value(QStringLiteral("QPSQL/StartServer"), defaultInternalServer).toBool();
if (mInternalServer) {
@ -139,7 +154,7 @@ Index: akonadi-19.08.0/src/server/storage/dbconfigpostgresql.cpp
defaultPgData = StandardDirs::saveDir("data", QStringLiteral("db_data"));
}
@@ -177,20 +171,14 @@ bool DbConfigPostgresql::init(QSettings
@@ -178,20 +172,14 @@ bool DbConfigPostgresql::init(QSettings &settings)
mUserName = settings.value(QStringLiteral("User")).toString();
mPassword = settings.value(QStringLiteral("Password")).toString();
mConnectionOptions = settings.value(QStringLiteral("Options"), defaultOptions).toString();
@ -162,7 +177,7 @@ Index: akonadi-19.08.0/src/server/storage/dbconfigpostgresql.cpp
qCDebug(AKONADISERVER_LOG) << "Found pg_upgrade:" << mPgUpgradePath;
mPgData = settings.value(QStringLiteral("PgData"), defaultPgData).toString();
if (mPgData.isEmpty()) {
@@ -206,7 +194,6 @@ bool DbConfigPostgresql::init(QSettings
@@ -207,7 +195,6 @@ bool DbConfigPostgresql::init(QSettings &settings)
settings.setValue(QStringLiteral("Port"), mHostPort);
}
settings.setValue(QStringLiteral("Options"), mConnectionOptions);
@ -170,3 +185,6 @@ Index: akonadi-19.08.0/src/server/storage/dbconfigpostgresql.cpp
settings.setValue(QStringLiteral("InitDbPath"), mInitDbPath);
settings.setValue(QStringLiteral("StartServer"), mInternalServer);
settings.endGroup();
--
2.25.4

View File

@ -0,0 +1,26 @@
From b8c6a2a017321649db8fec553a644b8da2300514 Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@mailbox.org>
Date: Mon, 13 Jul 2020 11:41:35 -0500
Subject: [PATCH 2/3] akonadi timestamps
---
src/server/storage/dbconfigmysql.cpp | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/src/server/storage/dbconfigmysql.cpp b/src/server/storage/dbconfigmysql.cpp
index 527649b..08c3dd4 100644
--- a/src/server/storage/dbconfigmysql.cpp
+++ b/src/server/storage/dbconfigmysql.cpp
@@ -235,8 +235,7 @@ bool DbConfigMysql::startInternalServer()
bool confUpdate = false;
QFile actualFile(actualConfig);
// update conf only if either global (or local) is newer than actual
- if ((QFileInfo(globalConfig).lastModified() > QFileInfo(actualFile).lastModified()) ||
- (QFileInfo(localConfig).lastModified() > QFileInfo(actualFile).lastModified())) {
+ if (true) {
QFile globalFile(globalConfig);
QFile localFile(localConfig);
if (globalFile.open(QFile::ReadOnly) && actualFile.open(QFile::WriteOnly)) {
--
2.25.4

View File

@ -1,19 +1,18 @@
From bc018b4bc816a3b51deb9739bedbf8a2268d0684 Mon Sep 17 00:00:00 2001
From: gnidorah <gnidorah@users.noreply.github.com>
Date: Fri, 22 Dec 2017 17:36:03 +0300
Subject: [PATCH] Revert "Make Akonadi installation properly relocatable"
From 7afe018382cf68b477b35f87b666424d62d19ef4 Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@mailbox.org>
Date: Mon, 13 Jul 2020 11:41:55 -0500
Subject: [PATCH 3/3] akonadi revert make relocatable
This reverts commit b2bb55f13f2ac783f89cc414de8c39f62fa2096a.
---
CMakeLists.txt | 3 ---
KF5AkonadiConfig.cmake.in | 6 +++---
2 files changed, 3 insertions(+), 6 deletions(-)
Index: akonadi-19.08.0/CMakeLists.txt
===================================================================
--- akonadi-19.08.0.orig/CMakeLists.txt
+++ akonadi-19.08.0/CMakeLists.txt
@@ -306,9 +306,6 @@ configure_package_config_file(
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d927471..83a74c0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -330,9 +330,6 @@ configure_package_config_file(
"${CMAKE_CURRENT_SOURCE_DIR}/KF5AkonadiConfig.cmake.in"
"${CMAKE_CURRENT_BINARY_DIR}/KF5AkonadiConfig.cmake"
INSTALL_DESTINATION ${CMAKECONFIG_INSTALL_DIR}
@ -23,11 +22,11 @@ Index: akonadi-19.08.0/CMakeLists.txt
)
install(FILES
Index: akonadi-19.08.0/KF5AkonadiConfig.cmake.in
===================================================================
--- akonadi-19.08.0.orig/KF5AkonadiConfig.cmake.in
+++ akonadi-19.08.0/KF5AkonadiConfig.cmake.in
@@ -26,8 +26,8 @@ if(BUILD_TESTING)
diff --git a/KF5AkonadiConfig.cmake.in b/KF5AkonadiConfig.cmake.in
index 421e1df..e3abf27 100644
--- a/KF5AkonadiConfig.cmake.in
+++ b/KF5AkonadiConfig.cmake.in
@@ -24,8 +24,8 @@ if(BUILD_TESTING)
find_dependency(Qt5Test "@QT_REQUIRED_VERSION@")
endif()
@ -38,7 +37,7 @@ Index: akonadi-19.08.0/KF5AkonadiConfig.cmake.in
find_dependency(Boost "@Boost_MINIMUM_VERSION@")
@@ -35,7 +35,7 @@ include(${CMAKE_CURRENT_LIST_DIR}/KF5Ako
@@ -33,7 +33,7 @@ include(${CMAKE_CURRENT_LIST_DIR}/KF5AkonadiTargets.cmake)
include(${CMAKE_CURRENT_LIST_DIR}/KF5AkonadiMacros.cmake)
# The directory where akonadi-xml.xsd and kcfg2dbus.xsl are installed
@ -47,3 +46,6 @@ Index: akonadi-19.08.0/KF5AkonadiConfig.cmake.in
####################################################################################
# CMAKE_AUTOMOC
--
2.25.4

View File

@ -1,14 +0,0 @@
Index: akonadi-19.08.0/src/server/storage/dbconfigmysql.cpp
===================================================================
--- akonadi-19.08.0.orig/src/server/storage/dbconfigmysql.cpp
+++ akonadi-19.08.0/src/server/storage/dbconfigmysql.cpp
@@ -235,8 +235,7 @@ bool DbConfigMysql::startInternalServer(
bool confUpdate = false;
QFile actualFile(actualConfig);
// update conf only if either global (or local) is newer than actual
- if ((QFileInfo(globalConfig).lastModified() > QFileInfo(actualFile).lastModified()) ||
- (QFileInfo(localConfig).lastModified() > QFileInfo(actualFile).lastModified())) {
+ if (true) {
QFile globalFile(globalConfig);
QFile localFile(localConfig);
if (globalFile.open(QFile::ReadOnly) && actualFile.open(QFile::WriteOnly)) {

View File

@ -11,7 +11,11 @@ mkDerivation {
license = [ lib.licenses.lgpl21 ];
maintainers = kdepimTeam;
};
patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
patches = [
./0001-akonadi-paths.patch
./0002-akonadi-timestamps.patch
./0003-akonadi-revert-make-relocatable.patch
];
nativeBuildInputs = [ extra-cmake-modules shared-mime-info ];
buildInputs = [
kcompletion kconfigwidgets kcrash kdbusaddons kdesignerplugin ki18n

View File

@ -1,3 +0,0 @@
akonadi-paths.patch
akonadi-timestamps.patch
0001-Revert-Make-Akonadi-installation-properly-relocatabl.patch

View File

@ -0,0 +1,28 @@
{ mkDerivation, lib
, libkdegames, extra-cmake-modules
, kdeclarative, knewstuff
}:
mkDerivation {
name = "bovo";
meta = with lib; {
homepage = "https://kde.org/applications/en/games/org.kde.bovo";
description = "Five in a row application";
longDescription = ''
Bovo is a Gomoku (from Japanese - lit. "five points") like game for two players,
where the opponents alternate in placing their respective pictogram on the game board.
(Also known as: Connect Five, Five in a row, X and O, Naughts and Crosses)
'';
maintainers = with maintainers; [ freezeboy ];
license = licenses.gpl2Plus;
platforms = platforms.linux;
};
nativeBuildInputs = [
extra-cmake-modules
];
buildInputs = [
kdeclarative
knewstuff
libkdegames
];
}

View File

@ -74,6 +74,7 @@ let
akregator = callPackage ./akregator.nix {};
ark = callPackage ./ark {};
baloo-widgets = callPackage ./baloo-widgets.nix {};
bovo = callPackage ./bovo.nix {};
calendarsupport = callPackage ./calendarsupport.nix {};
dolphin = callPackage ./dolphin.nix {};
dolphin-plugins = callPackage ./dolphin-plugins.nix {};
@ -174,6 +175,7 @@ let
messagelib = callPackage ./messagelib.nix {};
minuet = callPackage ./minuet.nix {};
okular = callPackage ./okular.nix {};
picmi = callPackage ./picmi.nix {};
pimcommon = callPackage ./pimcommon.nix {};
pim-data-exporter = callPackage ./pim-data-exporter.nix {};
pim-sieve-editor = callPackage ./pim-sieve-editor.nix {};

View File

@ -1 +1 @@
WGET_ARGS=( http://download.kde.org/stable/release-service/19.12.3/src )
WGET_ARGS=(http://download.kde.org/stable/release-service/20.04.1/src)

View File

@ -9,14 +9,6 @@ mkDerivation {
license = [ lib.licenses.lgpl21 ];
maintainers = [ lib.maintainers.ttuegel ];
};
patches = [
# Fix a bug with thumbnail.so processes hanging:
# https://bugs.kde.org/show_bug.cgi?id=404652
(fetchpatch {
url = "https://github.com/KDE/kdegraphics-thumbnailers/commit/3e2ea6e924d0e2a2cdd9bb435b06965117d6d34c.patch";
sha256 = "0fq85zhymmrq8vl0y6vgh87qf4c6fhcq704p4kpkaq7y0isxj4h1";
})
];
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ karchive kio libkexiv2 libkdcraw ];
}

View File

@ -25,7 +25,7 @@
, frei0r
, phonon-backend-gstreamer
, qtdeclarative
, qtquickcontrols
, qtquickcontrols2
, qtscript
, qtwebkit
, rttr
@ -60,7 +60,7 @@ mkDerivation {
mlt
phonon-backend-gstreamer
qtdeclarative
qtquickcontrols
qtquickcontrols2
qtscript
qtwebkit
shared-mime-info

View File

@ -1,9 +1,9 @@
{
mkDerivation, lib, extra-cmake-modules, kdoctools, shared-mime-info,
exiv2, kactivities, karchive, kbookmarks, kconfig, kconfigwidgets,
kcoreaddons, kdbusaddons, kguiaddons, kdnssd, kiconthemes, ki18n, kio, khtml,
kdelibs4support, kpty, syntax-highlighting, libmtp, libssh, openexr, ilmbase,
openslp, phonon, qtsvg, samba, solid, gperf
kcoreaddons, kdbusaddons, kdsoap, kguiaddons, kdnssd, kiconthemes, ki18n, kio,
khtml, kdelibs4support, kpty, syntax-highlighting, libmtp, libssh, openexr,
ilmbase, openslp, phonon, qtsvg, samba, solid, gperf
}:
mkDerivation {
@ -15,9 +15,9 @@ mkDerivation {
nativeBuildInputs = [ extra-cmake-modules kdoctools shared-mime-info ];
buildInputs = [
exiv2 kactivities karchive kbookmarks kconfig kconfigwidgets kcoreaddons
kdbusaddons kguiaddons kdnssd kiconthemes ki18n kio khtml kdelibs4support
kpty syntax-highlighting libmtp libssh openexr openslp phonon qtsvg samba
solid gperf
kdbusaddons kdsoap kguiaddons kdnssd kiconthemes ki18n kio khtml
kdelibs4support kpty syntax-highlighting libmtp libssh openexr openslp
phonon qtsvg samba solid gperf
];
CXXFLAGS = [ "-I${ilmbase.dev}/include/OpenEXR" ];
}

View File

@ -7,7 +7,7 @@
kmail-account-wizard, kmailtransport, knotifications, knotifyconfig,
kontactinterface, kparts, kpty, kservice, ktextwidgets, ktnef, kwallet,
kwidgetsaddons, kwindowsystem, kxmlgui, libgravatar, libksieve, mailcommon,
messagelib, pim-sieve-editor, qtscript, qtwebengine, akonadi
messagelib, pim-sieve-editor, qtscript, qtwebengine, akonadi, kdepim-addons
}:
mkDerivation {
@ -24,6 +24,7 @@ mkDerivation {
knotifications knotifyconfig kontactinterface kparts kpty kservice
ktextwidgets ktnef kwidgetsaddons kwindowsystem kxmlgui libgravatar
libksieve mailcommon messagelib pim-sieve-editor qtscript qtwebengine
kdepim-addons
];
propagatedUserEnvPkgs = [ kdepim-runtime kwallet akonadi ];
patches = [ ./kmail.patch ];

View File

@ -5,7 +5,7 @@
grantleetheme, karchive, kcodecs, kconfig, kconfigwidgets, kcontacts,
kdepim-apps-libs, kiconthemes, kidentitymanagement, kio, kjobwidgets, kldap,
kmailtransport, kmbox, kmime, kwindowsystem, libgravatar, libkdepim, libkleo,
pimcommon, qtwebengine, qtwebkit, syntax-highlighting
pimcommon, qca-qt5, qtwebengine, qtwebkit, syntax-highlighting
}:
mkDerivation {
@ -18,7 +18,7 @@ mkDerivation {
buildInputs = [
akonadi-notes akonadi-search gpgme grantlee grantleetheme karchive kcodecs
kconfig kconfigwidgets kdepim-apps-libs kiconthemes kio kjobwidgets kldap
kmailtransport kmbox kmime kwindowsystem libgravatar libkdepim qtwebkit
kmailtransport kmbox kmime kwindowsystem libgravatar libkdepim qca-qt5 qtwebkit
syntax-highlighting
];
propagatedBuildInputs = [

View File

@ -0,0 +1,25 @@
{ mkDerivation, lib
, libkdegames, extra-cmake-modules
, kdeclarative, knewstuff
}:
mkDerivation {
name = "picmi";
meta = with lib; {
description = "Nonogram game";
longDescription = ''The goal is to reveal the hidden pattern in the board by coloring or
leaving blank the cells in a grid according to numbers given at the side of the grid.
'';
maintainers = with maintainers; [ freezeboy ];
license = licenses.gpl2Plus;
platforms = platforms.linux;
};
nativeBuildInputs = [
extra-cmake-modules
];
buildInputs = [
kdeclarative
knewstuff
libkdegames
];
}

View File

@ -17,8 +17,8 @@ mkDerivation {
knewstuff kwayland
];
postPatch = ''
substituteInPlace desktop/org.kde.spectacle.desktop \
--replace "Exec=qdbus" "Exec=${lib.getBin qttools}/bin/qdbus"
substituteInPlace desktop/org.kde.spectacle.desktop.cmake \
--replace "Exec=@QtBinariesDir@/qdbus" "Exec=${lib.getBin qttools}/bin/qdbus"
'';
propagatedUserEnvPkgs = [ kipi-plugins libkipi ];
}

File diff suppressed because it is too large Load Diff

View File

@ -7,6 +7,7 @@
, qtbase
, qttools
, qtx11extras
, qttranslations
}:
mkDerivation rec {
@ -20,11 +21,21 @@ mkDerivation rec {
sha256 = "15l8drdmamq1dpqpj0h9ajj2r5vcs23cx421drvhfgs6bqlzd1hl";
};
patches = [
# See https://github.com/NixOS/nixpkgs/issues/86054
./fix-qttranslations-path.diff
];
nativeBuildInputs = [ cmake pkgconfig ];
buildInputs = [
qtbase qttools qtx11extras
];
postPatch = ''
substituteInPlace src/birdtrayapp.cpp \
--subst-var-by qttranslations ${qttranslations}
'';
meta = with lib; {
description = "Mail system tray notification icon for Thunderbird";
homepage = "https://github.com/gyunaev/birdtray";

View File

@ -0,0 +1,13 @@
diff --git a/src/birdtrayapp.cpp b/src/birdtrayapp.cpp
index 847b4d3..3a3709a 100644
--- a/src/birdtrayapp.cpp
+++ b/src/birdtrayapp.cpp
@@ -130,7 +130,7 @@ bool BirdtrayApp::loadTranslations() {
[](QString path) { return path.append("/translations"); });
QLocale locale = QLocale::system();
bool success = loadTranslation(
- qtTranslator, locale, "qt", {QLibraryInfo::location(QLibraryInfo::TranslationsPath)});
+ qtTranslator, locale, "qt", {QLatin1String("@qttranslations@/translations")});
success &= loadTranslation(dynamicTranslator, locale, "dynamic", locations);
success &= loadTranslation(mainTranslator, locale, "main", locations);
return success;

View File

@ -4,13 +4,13 @@ with stdenv.lib;
stdenv.mkDerivation rec {
pname = "nnn";
version = "3.2";
version = "3.3";
src = fetchFromGitHub {
owner = "jarun";
repo = pname;
rev = "v${version}";
sha256 = "13p3379c26l57121ymx0kw7afh51zv614p57di311d2a41jaz5cw";
sha256 = "1dxa5blpdf0s03znhnr23zzpsz8yzqpnwknycz42h1w9g9s9jz1v";
};
configFile = optionalString (conf != null) (builtins.toFile "nnn.h" conf);

View File

@ -2,13 +2,13 @@
python3Packages.buildPythonApplication rec {
pname = "urlscan";
version = "0.9.4";
version = "0.9.5";
src = fetchFromGitHub {
owner = "firecat53";
repo = pname;
rev = version;
sha256 = "11wkwjqsq848ks6m2jqsb8h0xnz75fb60bm0c4jkxys9wzy4chg5";
sha256 = "16g7dzvjcfhaz52wbmcapamy55l7vfhgizqy3m8dv9gkmy8vap89";
};
propagatedBuildInputs = [ python3Packages.urwid ];

View File

@ -7,16 +7,16 @@
buildGoModule rec {
pname = "wtf";
version = "0.30.0";
version = "0.31.0";
src = fetchFromGitHub {
owner = "wtfutil";
repo = pname;
rev = "v${version}";
sha256 = "11vy39zygk1gxb1nc1zmxlgs6fn7yq68090fwm2jar0lsxx8a83i";
sha256 = "07ngk83p753w9qxm8bvw6n5vk0zldn14yv08d900sxny8cg2h0rb";
};
vendorSha256 = "0qfb352gmsmy5glrsjwc3w57di5k2kjdsyfqn4xf7p4v12yg88va";
vendorSha256 = "09iy148pnbdrzjj2j50lbd8s9mkv7vggrx77mj88p1gnqclz3lip";
buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];

View File

@ -85,7 +85,7 @@ in
stdenv.mkDerivation {
inherit name;
src = fetchurl { inherit (source) url sha512; };
src = fetchurl { inherit (source) url sha256; };
phases = [ "unpackPhase" "patchPhase" "installPhase" "fixupPhase" ];

View File

@ -47,12 +47,13 @@ in writeScript "update-${name}" ''
grep -e "${if isBeta then "b" else ""}\([[:digit:]]\|[[:digit:]][[:digit:]]\)$" | ${if isBeta then "" else "grep -v \"b\" |"} \
tail -1`
curl --silent -o $HOME/shasums "$url$version/SHA512SUMS"
curl --silent -o $HOME/shasums.asc "$url$version/SHA512SUMS.asc"
curl --silent -o $HOME/shasums "$url$version/SHA256SUMS"
curl --silent -o $HOME/shasums.asc "$url$version/SHA256SUMS.asc"
gpgv --keyring=$GNUPGHOME/pubring.kbx $HOME/shasums.asc $HOME/shasums
# this is a list of sha512 and tarballs for both arches
shasums=`cat $HOME/shasums`
# this is a list of sha256 and tarballs for both arches
# Upstream files contains python repr strings like b'somehash', hence the sed dance
shasums=`cat $HOME/shasums | sed -E s/"b'([a-f0-9]{64})'?(.*)"/'\1\2'/`
cat > $tmpfile <<EOF
{
@ -74,7 +75,7 @@ in writeScript "update-${name}" ''
{ url = "$url$version/`echo $line | cut -d":" -f3`";
locale = "`echo $line | cut -d":" -f3 | sed "s/$arch\///" | sed "s/\/.*//"`";
arch = "$arch";
sha512 = "`echo $line | cut -d":" -f1`";
sha256 = "`echo $line | cut -d":" -f1`";
}
EOF
done

View File

@ -54,23 +54,4 @@ rec {
versionKey = "ffversion";
};
};
} // lib.optionalAttrs (config.allowAliases or true) {
#### ALIASES
#### remove after 20.03 branchoff
firefox-esr-52 = throw ''
firefoxPackages.firefox-esr-52 was removed as it's an unsupported ESR with
open security issues. If you need it because you need to run some plugins
not having been ported to WebExtensions API, import it from an older
nixpkgs checkout still containing it.
'';
firefox-esr-60 = throw "firefoxPackages.firefox-esr-60 was removed as it's an unsupported ESR with open security issues.";
icecat = throw "firefoxPackages.icecat was removed as even its latest upstream version is based on an unsupported ESR release with open security issues.";
icecat-52 = throw "firefoxPackages.icecat was removed as even its latest upstream version is based on an unsupported ESR release with open security issues.";
tor-browser-7-5 = throw "firefoxPackages.tor-browser-7-5 was removed because it was out of date and inadequately maintained. Please use tor-browser-bundle-bin instead. See #77452.";
tor-browser-8-5 = throw "firefoxPackages.tor-browser-8-5 was removed because it was out of date and inadequately maintained. Please use tor-browser-bundle-bin instead. See #77452.";
tor-browser = throw "firefoxPackages.tor-browser was removed because it was out of date and inadequately maintained. Please use tor-browser-bundle-bin instead. See #77452.";
}

View File

@ -1,12 +1,12 @@
{ lib, buildGoModule, minikube }:
buildGoModule rec {
inherit (minikube) version src nativeBuildInputs buildInputs vendorSha256 commit;
inherit (minikube) version src nativeBuildInputs buildInputs vendorSha256;
pname = "docker-machine-hyperkit";
buildPhase = ''
make docker-machine-driver-hyperkit COMMIT=${commit}
make docker-machine-driver-hyperkit COMMIT=${src.rev}
'';
installPhase = ''

View File

@ -1,7 +1,7 @@
{ lib, buildGoModule, minikube }:
buildGoModule rec {
inherit (minikube) version src nativeBuildInputs buildInputs vendorSha256 commit;
inherit (minikube) version src nativeBuildInputs buildInputs vendorSha256;
pname = "docker-machine-kvm2";
@ -10,7 +10,7 @@ buildGoModule rec {
'';
buildPhase = ''
make docker-machine-driver-kvm2 COMMIT=${commit}
make docker-machine-driver-kvm2 COMMIT=${src.rev}
'';
installPhase = ''

View File

@ -11,18 +11,15 @@
buildGoModule rec {
pname = "minikube";
version = "1.11.0";
version = "1.12.0";
# for -ldflags
commit = "57e2f55f47effe9ce396cea42a1e0eb4f611ebbd";
vendorSha256 = "1l9dxn7yy21x4b3cg6l5a08wx2ng8qf531ilg8yf1rznwfwjajrv";
vendorSha256 = "0wcm7kw5z7d0ch59nyx5xlv5ci7jrwnzspmsh1yb76318cx2aghi";
src = fetchFromGitHub {
owner = "kubernetes";
repo = "minikube";
rev = "v${version}";
sha256 = "0y761svwyrpc4ywdd4vr9hxkg6593wg4wwqzn8n86g0zcz6qg11d";
sha256 = "0bvdyfx5vjcgnkqd23rpbbhxf1zigpzxlqpay2sb6dpldsj0nhdk";
};
nativeBuildInputs = [ go-bindata installShellFiles pkg-config which ];
@ -30,7 +27,7 @@ buildGoModule rec {
buildInputs = if stdenv.isDarwin then [ vmnet ] else if stdenv.isLinux then [ libvirt ] else null;
buildPhase = ''
make COMMIT=${commit}
make COMMIT=${src.rev}
'';
installPhase = ''
@ -40,7 +37,7 @@ buildGoModule rec {
export MINIKUBE_WANTUPDATENOTIFICATION=false
export MINIKUBE_WANTKUBECTLDOWNLOADMSG=false
for shell in bash zsh; do
for shell in bash zsh fish; do
$out/bin/minikube completion $shell > minikube.$shell
installShellCompletion minikube.$shell
done

View File

@ -144,6 +144,7 @@ let
elasticsearch = callPackage ./elasticsearch {};
libvirt = callPackage ./libvirt {};
lxd = callPackage ./lxd {};
shell = callPackage ./shell {};
vpsadmin = callPackage ./vpsadmin {};
};
in

View File

@ -0,0 +1,28 @@
{ stdenv, fetchFromGitHub, buildGoModule }:
buildGoModule rec {
pname = "terraform-provider-shell";
version = "1.6.0";
src = fetchFromGitHub {
owner = "scottwinkler";
repo = pname;
rev = "v${version}";
sha256 = "0jxb30vw93ibnwz8nfqapac7p9r2famzvsf2h4nfbmhkm6mpan4l";
};
vendorSha256 = "1p2ja6cw3dl7mx41svri6frjpgb9pxsrl7sq0rk1d3sviw0f88sg";
subPackages = [ "." ];
# Terraform allows checking the provider versions, but this breaks
# if the versions are not provided via file paths.
postInstall = "mv $out/bin/${pname}{,_v${version}}";
meta = with stdenv.lib; {
inherit (src.meta) homepage;
description = "Terraform provider for executing shell commands and saving output to state file";
changelog = "https://github.com/scottwinkler/terraform-provider-shell/releases/tag/v${version}";
license = licenses.mpl20;
maintainers = with maintainers; [ mupdt ];
};
}

View File

@ -12,11 +12,11 @@ let
in stdenv.mkDerivation rec {
pname = "riot-web";
version = "1.6.7";
version = "1.6.8";
src = fetchurl {
url = "https://github.com/vector-im/riot-web/releases/download/v${version}/riot-v${version}.tar.gz";
sha256 = "14g5rbvcw6p0q50slbf0c7s39i54ggv2cjc5iv93yvfrwn3z0f8p";
sha256 = "09jazixxaq9fcw3qld73hpknw7pcjg3b94hhgipl3zyn6dvqk3xv";
};
installPhase = ''

View File

@ -57,6 +57,9 @@ in stdenv.mkDerivation {
++ lib.optionals enableQt [ qt5.wrapQtAppsHook ]
;
# Doc has high risk of collisions
postInstall = "rm -r $out/share/doc";
buildInputs = [
openssl
curl

View File

@ -9,11 +9,11 @@
}:
stdenv.mkDerivation {
name = "gromacs-2020.2";
name = "gromacs-2020.3";
src = fetchurl {
url = "ftp://ftp.gromacs.org/pub/gromacs/gromacs-2020.2.tar.gz";
sha256 = "1wyjgcdl30wy4hy6jvi9lkq53bqs9fgfq6fri52dhnb3c76y8rbl";
url = "ftp://ftp.gromacs.org/pub/gromacs/gromacs-2020.3.tar.gz";
sha256 = "1acjrhcfzpqy2dncblhj97602jbg9gdha4q1bgji9nrj25lq6cch";
};
nativeBuildInputs = [ cmake ];

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "gerrit";
version = "3.1.5";
version = "3.2.2";
src = fetchurl {
url = "https://gerrit-releases.storage.googleapis.com/gerrit-${version}.war";
sha256 = "0gyh6a0p8gcrfnkm0sdjvzg6is9iirxjyffgza6k4v9rz6pjx8i8";
sha256 = "08i6rb8hawj44gg57mbhwjjmfn7mc45racl8gjsyrcyb8jm6zj1s";
};
buildCommand = ''
@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
homepage = "https://www.gerritcodereview.com/index.md";
license = licenses.asl20;
description = "A web based code review and repository management for the git version control system";
maintainers = with maintainers; [ jammerful zimbatm ];
maintainers = with maintainers; [ flokli jammerful zimbatm ];
platforms = platforms.unix;
};
}

View File

@ -9,16 +9,16 @@
rustPlatform.buildRustPackage rec {
pname = "delta";
version = "0.2.0";
version = "0.3.0";
src = fetchFromGitHub {
owner = "dandavison";
repo = pname;
rev = version;
sha256 = "15c7rsmiinnpxh12520jz3wr0j86vgzjq1ss5pf30fa7lcgicb32";
sha256 = "0y3gkan5v0d6637yf5p5a9dklyv5zngw7a8pyqzj4ixys72ixg20";
};
cargoSha256 = "0lzz32qh80s4dxr0d4pg0qagkn549lr4vbqknl2l0cmlq1bvvq6g";
cargoSha256 = "15sh2lsc16nf9w7sp3avy77f4vyj0rdsm6m1bn60y8gmv2r16v6i";
nativeBuildInputs = [ installShellFiles ];

View File

@ -1,14 +1,14 @@
{ lib, fetchzip }:
let
version = "2.000";
version = "2.001";
in
fetchzip {
name = "JetBrainsMono-${version}";
url = "https://github.com/JetBrains/JetBrainsMono/releases/download/v${version}/JetBrains.Mono.${version}.zip";
sha256 = "1kmb0fckiwaphqxw08xd5fbfjrwnwxz48bidj16ixw8lgcr29b8g";
sha256 = "06rh8dssq6qzgb9rri3an2ka24j47c0i8yhgq81yyg471spc39h1";
postFetch = ''
mkdir -p $out/share/fonts

View File

@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
pname = "yaru";
version = "20.04.7";
version = "20.10.1";
src = fetchFromGitHub {
owner = "ubuntu";
repo = "yaru";
rev = version;
sha256 = "05fpr928kgyly7ac3zf6hfw9wqgc7fjn6980ih54iqc2qffcglsk";
sha256 = "08zws1qwvfr126fgdkqxxmpsqgfk02s31n90555bd5d66cfgdh72";
};
nativeBuildInputs = [ meson sassc pkg-config glib ninja python3 ];

View File

@ -50,7 +50,7 @@ with stdenv; mkDerivation rec {
"-DBUILD_TESTS=ON"
"-DICEBOX_ROOT=${icestorm}/share/icebox"
"-DTRELLIS_INSTALL_PREFIX=${trellis}"
"-DPYTRELLIS_LIBDIR=${trellis}/lib/trellis"
"-DTRELLIS_LIBDIR=${trellis}/lib/trellis"
"-DUSE_OPENMP=ON"
# warning: high RAM usage
"-DSERIALIZE_CHIPDB=OFF"

View File

@ -0,0 +1,13 @@
{ mkDerivation }:
# How to obtain `sha256`:
# nix-prefetch-url --unpack https://github.com/erlang/otp/archive/OTP-${version}.tar.gz
mkDerivation {
version = "23.0.2";
sha256 = "19ly2m0rjay6071r75s9870cm3sph25zd1mvy67l5v4jg7mxdjzy";
prePatch = ''
substituteInPlace make/configure.in --replace '`sw_vers -productVersion`' "''${MACOSX_DEPLOYMENT_TARGET:-10.12}"
substituteInPlace erts/configure.in --replace '-Wl,-no_weak_imports' ""
'';
}

View File

@ -3,6 +3,7 @@
, openjdk ? null # javacSupport
, unixODBC ? null # odbcSupport
, libGL ? null, libGLU ? null, wxGTK ? null, wxmac ? null, xorg ? null # wxSupport
, parallelBuild ? false
, withSystemd ? stdenv.isLinux, systemd # systemd support in epmd
}:
@ -60,7 +61,7 @@ in stdenv.mkDerivation ({
debugInfo = enableDebugInfo;
# On some machines, parallel build reliably crashes on `GEN asn1ct_eval_ext.erl` step
enableParallelBuilding = false;
enableParallelBuilding = parallelBuild;
# Clang 4 (rightfully) thinks signed comparisons of pointers with NULL are nonsense
prePatch = ''

View File

@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
depsBuildBuild = [ pkgconfig ];
nativeBuildInputs = [ pkgconfig wayland ];
nativeBuildInputs = [ pkgconfig ] ++ optionals waylandSupport [ wayland ];
propagatedBuildInputs = dlopenPropagatedBuildInputs;

View File

@ -3,13 +3,13 @@
stdenv.mkDerivation rec
{
pname = "alembic";
version = "1.7.12";
version = "1.7.13";
src = fetchFromGitHub {
owner = "alembic";
repo = "alembic";
rev = version;
sha256 = "0a9icrv6pwh2b73lywq1aj7i19pmzpg59iy3ngal8vq4zdciylqc";
sha256 = "01j4fsq917jckdh16nvmc35xiy11j4g1sc17y6g8qxa00s2sfsa4";
};
outputs = [ "bin" "dev" "out" "lib" ];

View File

@ -3,14 +3,14 @@
#TODO: tests
stdenv.mkDerivation rec {
pname = "faudio";
version = "20.06";
pname = "faudio";
version = "20.07";
src = fetchFromGitHub {
owner = "FNA-XNA";
repo = "FAudio";
rev = version;
sha256 = "1dyx9l7ldhlbb77ca3wk0l218589blvh78mdfyzpk9k1izk2yih1";
sha256 = "14fi0jwax9qzn2k89qazdkhxvklk5zcwhbi6pxi1l5i9zk4ly2h7";
};
nativeBuildInputs = [cmake];

View File

@ -1,4 +1,8 @@
{ stdenv, fetchurl, pkgconfig, mono
{ stdenv
, fetchurl
, fetchpatch
, pkgconfig
, mono
, glib
, pango
, gtk3
@ -14,29 +18,32 @@
, monoDLLFixer
}:
stdenv.mkDerivation {
name = "gtk-sharp-2.99.3";
stdenv.mkDerivation rec {
pname = "gtk-sharp";
version = "2.99.3";
builder = ./builder.sh;
src = fetchurl {
#"mirror://gnome/sources/gtk-sharp/2.99/gtk-sharp-2.99.3.tar.xz";
url = "http://ftp.gnome.org/pub/GNOME/sources/gtk-sharp/2.99/gtk-sharp-2.99.3.tar.xz";
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "18n3l9zcldyvn4lwi8izd62307mkhz873039nl6awrv285qzah34";
};
# patch bad usage of glib, which wasn't tolerated anymore
# prePatch = ''
# for f in glib/glue/{thread,list,slist}.c; do
# sed -i 's,#include <glib/.*\.h>,#include <glib.h>,g' "$f"
# done
# '';
nativeBuildInputs = [ pkgconfig ];
buildInputs = [
mono glib pango gtk3 GConf libglade libgnomecanvas
libgtkhtml libgnomeui libgnomeprint libgnomeprintui gtkhtml libxml2
];
patches = [
# Fixes MONO_PROFILE_ENTER_LEAVE undeclared when compiling against newer versions of mono.
# @see https://github.com/mono/gtk-sharp/pull/266
(fetchpatch {
name = "MONO_PROFILE_ENTER_LEAVE.patch";
url = "https://github.com/mono/gtk-sharp/commit/401df51bc461de93c1a78b6a7a0d5adc63cf186c.patch";
sha256 = "0hrkcr5a7wkixnyp60v4d6j3arsb63h54rd30lc5ajfjb3p92kcf";
})
];
dontStrip = true;
inherit monoDLLFixer;
@ -47,6 +54,5 @@ stdenv.mkDerivation {
meta = {
platforms = stdenv.lib.platforms.linux;
broken = true; # 2018-09-21, build has failed since 2018-04-28
};
}

View File

@ -3,11 +3,11 @@
stdenv.mkDerivation rec {
pname = "intel-media-sdk";
version = "20.1.1";
version = "20.2.0";
src = fetchurl {
url = "https://github.com/Intel-Media-SDK/MediaSDK/archive/intel-mediasdk-${version}.tar.gz";
sha256 = "1p13b4abslq31pbgqf0bzs2ixns85yfdsm94326h2vcg0q7hqc24";
sha256 = "1b138xpa73y78gxwappxkm58c9j2vqq8zy173z7n4pdwiwsx1kxc";
};
nativeBuildInputs = [ cmake pkgconfig ];

View File

@ -0,0 +1,46 @@
{ stdenv
, fetchFromGitHub
, lib
, subproject ? "library" # one of "library", "reader" or "writer"
, zlib, libpng, libtiff
, jabcode
}:
let
subdir = lib.getAttr subproject {
"library" = "jabcode";
"reader" = "jabcodeReader";
"writer" = "jabcodeWriter";
};
in stdenv.mkDerivation rec {
pname = "jabcode-${subproject}";
version = "git-2020-05-13";
src = fetchFromGitHub {
repo = "jabcode";
owner = "jabcode";
rev = "a7c25d4f248078f257b014e31c791bfcfcd083e1";
sha256 = "1c4cv9b0d7r4bxzkwzdv9h651ziq822iya6fbyizm57n1nzdkk4s";
};
nativeBuildInputs =
[ zlib libpng libtiff ]
++ lib.optionals (subproject != "library") [ jabcode ];
preConfigure = "cd src/${subdir}";
installPhase = if subproject == "library" then ''
mkdir -p $out/lib
cp build/* $out/lib
'' else ''
mkdir -p $out/bin
cp -RT bin $out/bin
'';
meta = with lib; {
description = "A high-capacity 2D color bar code (${subproject})";
longDescription = "JAB Code (Just Another Bar Code) is a high-capacity 2D color bar code, which can encode more data than traditional black/white (QR) codes. This is the ${subproject} part.";
homepage = "https://jabcode.org/";
license = licenses.lgpl21;
maintainers = [ maintainers.xaverdh ];
platforms = platforms.unix;
};
}

View File

@ -1 +1 @@
WGET_ARGS=( https://download.kde.org/stable/frameworks/5.68/ )
WGET_ARGS=(https://download.kde.org/stable/frameworks/5.71/)

View File

@ -1,8 +1,17 @@
From 4d5dcc309fba688aa1db8dd915a0abdf07f61e81 Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@mailbox.org>
Date: Mon, 13 Jul 2020 11:23:36 -0500
Subject: [PATCH] kcmutils follow symlinks
---
src/kpluginselector.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/kpluginselector.cpp b/src/kpluginselector.cpp
index 137c865..097ab75 100644
index 46deef5..2eacb9f 100644
--- a/src/kpluginselector.cpp
+++ b/src/kpluginselector.cpp
@@ -303,7 +303,7 @@ void KPluginSelector::addPlugins(const QString &componentName,
@@ -309,7 +309,7 @@ void KPluginSelector::addPlugins(const QString &componentName,
QStringList desktopFileNames;
const QStringList dirs = QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, componentName + QStringLiteral("/kpartplugins"), QStandardPaths::LocateDirectory);
for (const QString &dir : dirs) {
@ -11,3 +20,6 @@ index 137c865..097ab75 100644
while (it.hasNext()) {
desktopFileNames.append(it.next());
}
--
2.25.4

View File

@ -14,5 +14,7 @@ mkDerivation {
qtdeclarative
];
propagatedBuildInputs = [ kconfigwidgets kservice ];
patches = (copyPathsToStore (lib.readPathsFromFile ./. ./series));
patches = [
./0001-kcmutils-follow-symlinks.patch
];
}

View File

@ -1,13 +0,0 @@
Index: kcmutils-5.33.0/src/kcmoduleloader.cpp
===================================================================
--- kcmutils-5.33.0.orig/src/kcmoduleloader.cpp
+++ kcmutils-5.33.0/src/kcmoduleloader.cpp
@@ -95,7 +95,7 @@ KCModule *KCModuleLoader::loadModule(const KCModuleInfo &mod, ErrorReporting rep
KPluginLoader loader(KPluginLoader::findPlugin(QLatin1String("kcms/") + mod.service()->library()));
KPluginFactory* factory = loader.factory();
if (!factory) {
- qWarning() << "Couldn't load plugin:" << loader.errorString();
+ qWarning() << "Error loading KCM plugin" << mod.service()->library() << loader.errorString();
} else {
std::unique_ptr<KQuickAddons::ConfigModule> cm(factory->create<KQuickAddons::ConfigModule>(nullptr, args2));
if (!cm) {

View File

@ -1,2 +0,0 @@
kcmutils-follow-symlinks.patch
kcmutils-debug-module-loader.patch

View File

@ -1,28 +1,14 @@
Index: kio-5.17.0/src/core/ksambashare.cpp
===================================================================
--- kio-5.17.0.orig/src/core/ksambashare.cpp
+++ kio-5.17.0/src/core/ksambashare.cpp
@@ -67,13 +67,18 @@ KSambaSharePrivate::~KSambaSharePrivate(
diff --git a/src/core/ksambashare.cpp b/src/core/ksambashare.cpp
index 1895783..9fe7286 100644
--- a/src/core/ksambashare.cpp
+++ b/src/core/ksambashare.cpp
@@ -73,8 +73,7 @@ KSambaSharePrivate::~KSambaSharePrivate()
bool KSambaSharePrivate::isSambaInstalled()
{
- if (QFile::exists(QStringLiteral("/usr/sbin/smbd"))
- || QFile::exists(QStringLiteral("/usr/local/sbin/smbd"))) {
- return true;
+ const QByteArray pathEnv = qgetenv("PATH");
+ if (!pathEnv.isEmpty()) {
+ QLatin1Char pathSep(':');
+ QStringList paths = QFile::decodeName(pathEnv).split(pathSep, QString::SkipEmptyParts);
+ for (QStringList::iterator it = paths.begin(); it != paths.end(); ++it) {
+ it->append(QStringLiteral("/smbd"));
+ if (QFile::exists(*it)) {
+ return true;
+ }
+ }
const bool daemonExists =
- !QStandardPaths::findExecutable(QStringLiteral("smbd"),
- {QStringLiteral("/usr/sbin/"), QStringLiteral("/usr/local/sbin/")}).isEmpty();
+ !QStandardPaths::findExecutable(QStringLiteral("smbd")).isEmpty();
if (!daemonExists) {
qCDebug(KIO_CORE_SAMBASHARE) << "KSambaShare: Could not find smbd";
}
- //qDebug() << "Samba is not installed!";
-
return false;
}

View File

@ -2,7 +2,7 @@
mkDerivation, lib, fetchpatch,
extra-cmake-modules,
attica, karchive, kcompletion, kconfig, kcoreaddons, ki18n, kiconthemes,
kio, kitemviews, kservice, ktextwidgets, kwidgetsaddons, kxmlgui, qtbase,
kio, kitemviews, kpackage, kservice, ktextwidgets, kwidgetsaddons, kxmlgui, qtbase,
qtdeclarative, kirigami2,
}:
@ -12,6 +12,7 @@ mkDerivation {
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [
karchive kcompletion kconfig kcoreaddons ki18n kiconthemes kio kitemviews
kpackage
ktextwidgets kwidgetsaddons qtbase qtdeclarative kirigami2
];
propagatedBuildInputs = [ attica kservice kxmlgui ];

View File

@ -4,659 +4,659 @@
{
attica = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/attica-5.68.0.tar.xz";
sha256 = "9b4001a32831c9bae1d44161247acd5e6d3048ca2ece98c2c756c72a1464b9e9";
name = "attica-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/attica-5.71.0.tar.xz";
sha256 = "9e24fd7f58c66879a05e056b781637196eea69d3276ed470643c505f9fd46d3d";
name = "attica-5.71.0.tar.xz";
};
};
baloo = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/baloo-5.68.0.tar.xz";
sha256 = "4b599fb279ef92dc4f575847767c370f2633b27e884e372c3f7b92f08917865e";
name = "baloo-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/baloo-5.71.0.tar.xz";
sha256 = "23378213d00ecf1f26eeb417987984f5a63bbd643359403dfd20638cbc1ec84b";
name = "baloo-5.71.0.tar.xz";
};
};
bluez-qt = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/bluez-qt-5.68.0.tar.xz";
sha256 = "99889cac874820e83a32bee938b6cc8e25dca6a3013d4a589ac7b8f5d32b4224";
name = "bluez-qt-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/bluez-qt-5.71.0.tar.xz";
sha256 = "7014e946f16db62218fe8e9af808999922d447034355f17b9e09b31321e53bad";
name = "bluez-qt-5.71.0.tar.xz";
};
};
breeze-icons = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/breeze-icons-5.68.0.tar.xz";
sha256 = "750fff6560abfa85a2243187d14f1b8f1d3d1c4097d84cbf8c58d2f48102fe8d";
name = "breeze-icons-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/breeze-icons-5.71.0.tar.xz";
sha256 = "72217c46e071b204a80ff8064b1b7319c7a7f9f0b08e69d8add2065e5d301155";
name = "breeze-icons-5.71.0.tar.xz";
};
};
extra-cmake-modules = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/extra-cmake-modules-5.68.0.tar.xz";
sha256 = "4d60869ca96a323b56f00b40c4728a70dfebe2132bbae040442a6a2ef90e2d6e";
name = "extra-cmake-modules-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/extra-cmake-modules-5.71.0.tar.xz";
sha256 = "64f41c0b4b3164c7be8fcab5c0181253d97d1e9d62455fd540cb463afd051878";
name = "extra-cmake-modules-5.71.0.tar.xz";
};
};
frameworkintegration = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/frameworkintegration-5.68.0.tar.xz";
sha256 = "5bb3c2e56b2c4c41d8a472363f80445fd3fc28656e6a3163d48ed826a133985a";
name = "frameworkintegration-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/frameworkintegration-5.71.0.tar.xz";
sha256 = "f5ba2d5c363dcb09177424b82d9a59ce0f0a6b2dea372799dcba000452764961";
name = "frameworkintegration-5.71.0.tar.xz";
};
};
kactivities = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kactivities-5.68.0.tar.xz";
sha256 = "1853135feb6adfec252e6fab0b1472450422afd5998a9a31d942e8672fbe7111";
name = "kactivities-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kactivities-5.71.0.tar.xz";
sha256 = "b4e63fec6532e4bdc41470985cea46b0a88c1b2298b80286cbf0ed2d2139b66f";
name = "kactivities-5.71.0.tar.xz";
};
};
kactivities-stats = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kactivities-stats-5.68.0.tar.xz";
sha256 = "fb645db4685113dfd98834f48d8941529fee53d5e26ec5e36cfee8a9bfae97ae";
name = "kactivities-stats-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kactivities-stats-5.71.0.tar.xz";
sha256 = "79fe4f674d7bae457ce6af0357104a8691f5822963b0ef1f99cd5a43e3666978";
name = "kactivities-stats-5.71.0.tar.xz";
};
};
kapidox = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kapidox-5.68.0.tar.xz";
sha256 = "4f60582cb0771c38733989f192694636b1c93ecae290bfbe551030dd397e976e";
name = "kapidox-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kapidox-5.71.0.tar.xz";
sha256 = "da75660fc2808f38441ec0f59d3c58ce29fcfdcea29e251308a11a92546f1ed5";
name = "kapidox-5.71.0.tar.xz";
};
};
karchive = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/karchive-5.68.0.tar.xz";
sha256 = "518f07629d87e5778e1d8ce066f5590941472d9fffa7bd74819759be5c6edf0d";
name = "karchive-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/karchive-5.71.0.tar.xz";
sha256 = "cc81e856365dec2bcf3ec78aa01d42347ca390a2311ea12050f309dfbdb09624";
name = "karchive-5.71.0.tar.xz";
};
};
kauth = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kauth-5.68.0.tar.xz";
sha256 = "b9a7cd724709ea188852f7656fbeda2dc3cc40cc5d09573049c2680c0edbd41f";
name = "kauth-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kauth-5.71.0.tar.xz";
sha256 = "a0de83bd662e20253011216ab8cba597f8db7429f8706237e7307580125025b5";
name = "kauth-5.71.0.tar.xz";
};
};
kbookmarks = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kbookmarks-5.68.0.tar.xz";
sha256 = "80dc06188a5e1d960d46f527bd82d9b79df75a785164fa29a088a7b705abbf84";
name = "kbookmarks-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kbookmarks-5.71.0.tar.xz";
sha256 = "e00db1e62a769863a1bf90bb508f108f2740298aa40173cad34ef34a1c23a01a";
name = "kbookmarks-5.71.0.tar.xz";
};
};
kcalendarcore = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kcalendarcore-5.68.0.tar.xz";
sha256 = "50ffbe4feb9a602c09e130d6f10f0f260fa7625bc266003697895e1d716d6ba9";
name = "kcalendarcore-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kcalendarcore-5.71.0.tar.xz";
sha256 = "d5138db971f6be606be8ae7d761bad778af3cacada8e85fb2f469190c347cd94";
name = "kcalendarcore-5.71.0.tar.xz";
};
};
kcmutils = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kcmutils-5.68.0.tar.xz";
sha256 = "a688d54286fe11b23e11e2100536a513a332d2a7d784fcbebeaccbfb980d83d1";
name = "kcmutils-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kcmutils-5.71.0.tar.xz";
sha256 = "27743a81e9aa48baac12bb844e48d3098250699122ed6040b1e3c50a5e8f276d";
name = "kcmutils-5.71.0.tar.xz";
};
};
kcodecs = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kcodecs-5.68.0.tar.xz";
sha256 = "5f1e6ae3a51ca817aa0a5082ce4ce5490cb527388ef1888a642fb374c5e2bb48";
name = "kcodecs-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kcodecs-5.71.0.tar.xz";
sha256 = "3392c4df652e3a44a2b941ccb419dee9521642e503104de403ec1c6be9f43a28";
name = "kcodecs-5.71.0.tar.xz";
};
};
kcompletion = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kcompletion-5.68.0.tar.xz";
sha256 = "642d68b4c472e11a8861a61238297633be288bfd72c13547707754f1ae2be33a";
name = "kcompletion-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kcompletion-5.71.0.tar.xz";
sha256 = "bf0b6ce1ee133900f169662dbd35da6f766d3e4e02c0c102a9402e20450a22a4";
name = "kcompletion-5.71.0.tar.xz";
};
};
kconfig = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kconfig-5.68.0.tar.xz";
sha256 = "c3bf138a7a4d002475f2483987baf40a61cda7d491c3cc292dd2c6da726ee898";
name = "kconfig-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kconfig-5.71.0.tar.xz";
sha256 = "618ff0d168abf8fb73dc83431b9a76f7859d522bea100ff07c7e1632e129e3f4";
name = "kconfig-5.71.0.tar.xz";
};
};
kconfigwidgets = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kconfigwidgets-5.68.0.tar.xz";
sha256 = "f50421e9dbb6669e8d7c10605f7779ad03f30ea7c9c4451a70a7be66cd9df995";
name = "kconfigwidgets-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kconfigwidgets-5.71.0.tar.xz";
sha256 = "5778523c49a5294e9376ce8ee6db1a51ffaa506418a19e8632f73287a596276f";
name = "kconfigwidgets-5.71.0.tar.xz";
};
};
kcontacts = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kcontacts-5.68.0.tar.xz";
sha256 = "532f1e89c7412e971db8c431d627d38144470ddf5c978a7fa9348e418b6cd3c3";
name = "kcontacts-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kcontacts-5.71.0.tar.xz";
sha256 = "57f511a624406b27a7de25c83deb4104c95e851f9fda4f6d94450155ab08f4bd";
name = "kcontacts-5.71.0.tar.xz";
};
};
kcoreaddons = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kcoreaddons-5.68.0.tar.xz";
sha256 = "c578ae30b4161e45e672d613d2d9c5575a849d21909d9817f90a441044df65d7";
name = "kcoreaddons-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kcoreaddons-5.71.0.tar.xz";
sha256 = "e95008b032e299cf47f596739d9236701e2f55e507734f33b8ea497882fd130b";
name = "kcoreaddons-5.71.0.tar.xz";
};
};
kcrash = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kcrash-5.68.0.tar.xz";
sha256 = "60daf2cee87c652619b098b688edce6f993c7960783159cd8be9d9145df29f7f";
name = "kcrash-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kcrash-5.71.0.tar.xz";
sha256 = "526242aa9fde7cff11ecaa88bf75d6fbbfc412f46bf19a7a9e185f2adb616005";
name = "kcrash-5.71.0.tar.xz";
};
};
kdbusaddons = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kdbusaddons-5.68.0.tar.xz";
sha256 = "839fe42f9ac8df353f87245110fd7b515a8eb29f0840f54481bd89e5175bf1af";
name = "kdbusaddons-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kdbusaddons-5.71.0.tar.xz";
sha256 = "b441f525248d9d675333cebedf97ee0232a3a9b7aa9aff84d825dfcdb3bcd23c";
name = "kdbusaddons-5.71.0.tar.xz";
};
};
kdeclarative = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kdeclarative-5.68.0.tar.xz";
sha256 = "96a032bcb360e0ffcfe51d4d2f6153786682c2f967592bffcf15b9e6cd4cd3ae";
name = "kdeclarative-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kdeclarative-5.71.0.tar.xz";
sha256 = "ace0e52f561a9cfba1de4b77144a0a68037a1229530fb39070dc837da80ac8f8";
name = "kdeclarative-5.71.0.tar.xz";
};
};
kded = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kded-5.68.0.tar.xz";
sha256 = "b03afe48fbdbd7d92c46b3b60bdb4b825f77e1a9d00c16a5f236b24a0135e4b7";
name = "kded-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kded-5.71.0.tar.xz";
sha256 = "404c8caae0f4abe2ef85c2e82b5db2b14ae4b607fa30e4f16d15dad53c269fcc";
name = "kded-5.71.0.tar.xz";
};
};
kdelibs4support = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/portingAids/kdelibs4support-5.68.0.tar.xz";
sha256 = "2fca7bf9d31b081e7568631b6b6d2f7847068217261e47ef0dea106470c22df1";
name = "kdelibs4support-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/portingAids/kdelibs4support-5.71.0.tar.xz";
sha256 = "1110ed68a29e38059d195817735d58df45e59b57fa9ac48ef2036c1037a23fb7";
name = "kdelibs4support-5.71.0.tar.xz";
};
};
kdesignerplugin = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/portingAids/kdesignerplugin-5.68.0.tar.xz";
sha256 = "ae433e0eeaf0007312b1f32fc4349cf26c34617a5a9951ae4155c5c4e4009b72";
name = "kdesignerplugin-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/portingAids/kdesignerplugin-5.71.0.tar.xz";
sha256 = "e77a96c2a6cd518f3040e9366f013f0128200791b6c93c3c5b2310af16fb040b";
name = "kdesignerplugin-5.71.0.tar.xz";
};
};
kdesu = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kdesu-5.68.0.tar.xz";
sha256 = "427ba50bcd14308980cbdfdc77a6b7419277942a42d83da72ff3afbc1ec78903";
name = "kdesu-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kdesu-5.71.0.tar.xz";
sha256 = "b183e67c089b02f984284b5eb3c05f7216d289bef7ae08a9e6c6f991b2a1a23a";
name = "kdesu-5.71.0.tar.xz";
};
};
kdewebkit = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/portingAids/kdewebkit-5.68.0.tar.xz";
sha256 = "181b14bd80e9f34aa2f896d39aca5be91f65d65bfaaf47660e91fdd98b7f36a2";
name = "kdewebkit-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/portingAids/kdewebkit-5.71.0.tar.xz";
sha256 = "04b8b90734ddf6d5e72ffa69707d473e1d1f8605ba06d4ceca83f4a1d195c65d";
name = "kdewebkit-5.71.0.tar.xz";
};
};
kdnssd = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kdnssd-5.68.0.tar.xz";
sha256 = "3369da85c0088c375f2123a82132fb84490c46ebc8e9cd1253c795ef45fd4403";
name = "kdnssd-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kdnssd-5.71.0.tar.xz";
sha256 = "bc269f0a74eee99d6c49550fc608450ced753a599cd03f77ea577af4c2e87958";
name = "kdnssd-5.71.0.tar.xz";
};
};
kdoctools = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kdoctools-5.68.0.tar.xz";
sha256 = "93f5bee9dfaacacacfbeb3e915b192b5e645c1d01057b0cea4081c9ae5285670";
name = "kdoctools-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kdoctools-5.71.0.tar.xz";
sha256 = "1e2fcaa97a014e82f68c0c36591ce84568ead7abd59b66e534789103e162cd09";
name = "kdoctools-5.71.0.tar.xz";
};
};
kemoticons = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kemoticons-5.68.0.tar.xz";
sha256 = "e03fe81ad34e107dc5fe61f9bf424ecef7716bf8a62f8abb78fd3f6bd6806f56";
name = "kemoticons-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kemoticons-5.71.0.tar.xz";
sha256 = "20bcb111971cc2e8c17b38a0c20aff7cf453174f885c4b4bcc5899141113e2fc";
name = "kemoticons-5.71.0.tar.xz";
};
};
kfilemetadata = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kfilemetadata-5.68.0.tar.xz";
sha256 = "c2a8aee8243efa30fc921b7f50b390b47ee2cf83aa83b125a530a25de6d6fe21";
name = "kfilemetadata-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kfilemetadata-5.71.0.tar.xz";
sha256 = "2e302958065157c1f9ea4a189bbca40b7dbed019767a3380e34e0b6a633c75fe";
name = "kfilemetadata-5.71.0.tar.xz";
};
};
kglobalaccel = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kglobalaccel-5.68.0.tar.xz";
sha256 = "2eb710a3f29cbc8b7875fb3e8315d7c8e3b5bb93867e0a34cd5cdbac690bcbbf";
name = "kglobalaccel-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kglobalaccel-5.71.0.tar.xz";
sha256 = "218d77aa4f6089d57932d627c4a46a8a4a5e964c2bfcee0d1c54338c25c7a06c";
name = "kglobalaccel-5.71.0.tar.xz";
};
};
kguiaddons = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kguiaddons-5.68.0.tar.xz";
sha256 = "cdbf694e92b47358c2e2c31917bf5f01382042c2cb99b65faf3bc00a0eb52c64";
name = "kguiaddons-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kguiaddons-5.71.0.tar.xz";
sha256 = "c1f7bf540a689319962275916c0434f47ba5ed8f7d46a78704393163e32eccd2";
name = "kguiaddons-5.71.0.tar.xz";
};
};
kholidays = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kholidays-5.68.0.tar.xz";
sha256 = "067a544c22f5988cf959a475b66ed62e419b975b3ee22810667a076f3d50dbba";
name = "kholidays-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kholidays-5.71.0.tar.xz";
sha256 = "5469718d6ede7edb2ab06bbaff8af01567ba77ffe2160c2c2d47c666cfebf417";
name = "kholidays-5.71.0.tar.xz";
};
};
khtml = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/portingAids/khtml-5.68.0.tar.xz";
sha256 = "af97da0a5d877c928d98690c3629a8f9788b29b27f583c9e3e26144a6abb9dcc";
name = "khtml-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/portingAids/khtml-5.71.0.tar.xz";
sha256 = "df8d2a4776f98e1490a21e71e31a2ea7694bc7452da35f88623b19214b6e1c10";
name = "khtml-5.71.0.tar.xz";
};
};
ki18n = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/ki18n-5.68.0.tar.xz";
sha256 = "2c59dd55d032c95710e338e376a31bf11d799bceba8ebfdb148c8b77067a1e92";
name = "ki18n-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/ki18n-5.71.0.tar.xz";
sha256 = "f2fc8c40c10576da8b74070b7dc8e752fdd04204cb2bfe522f37a0458fbaf881";
name = "ki18n-5.71.0.tar.xz";
};
};
kiconthemes = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kiconthemes-5.68.0.tar.xz";
sha256 = "ac3f322f2644dd0468cd2b07cc0c7f853f1ac4bc714fe532bbe92e88141f6729";
name = "kiconthemes-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kiconthemes-5.71.0.tar.xz";
sha256 = "3fa986207e9d967840bd7a3f1af1e4d0105905012a0e4cf56f7ef1b3740b3496";
name = "kiconthemes-5.71.0.tar.xz";
};
};
kidletime = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kidletime-5.68.0.tar.xz";
sha256 = "cd6309d403ea36553abc99af4fa7e4ed3f8b3b2c55d14887ef09d68e5627b3e7";
name = "kidletime-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kidletime-5.71.0.tar.xz";
sha256 = "1bcacd6c9ec8d65f93434f51d865723a50609ec074f88da2890a8f37ea8d207d";
name = "kidletime-5.71.0.tar.xz";
};
};
kimageformats = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kimageformats-5.68.0.tar.xz";
sha256 = "498fab29d19f10f2c91c796134f959b2cf3ce8372087b5eeb62f07e62af85949";
name = "kimageformats-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kimageformats-5.71.0.tar.xz";
sha256 = "0d6d6a8664e4a01df27e9970ec9ec10a92c1d43a00a3e9ef0471d740b4c93d94";
name = "kimageformats-5.71.0.tar.xz";
};
};
kinit = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kinit-5.68.0.tar.xz";
sha256 = "fa136996eaaa7d2adb5a341c2b7a1abe86d8139c6f18999e0b0dc0220e512559";
name = "kinit-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kinit-5.71.0.tar.xz";
sha256 = "6ea625bced2c19b0f3e5bb504775dd6764358f02412364a16cbad731c5c299b6";
name = "kinit-5.71.0.tar.xz";
};
};
kio = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kio-5.68.0.tar.xz";
sha256 = "9cc2fb2da84d6661a90eac81eb12c2e37921a5c34cbc1975f48d613e5a9d9eef";
name = "kio-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kio-5.71.0.tar.xz";
sha256 = "b972c8dede50be3e89babb5a536054759db2a87003e6df770c598c7c1c94b8d6";
name = "kio-5.71.0.tar.xz";
};
};
kirigami2 = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kirigami2-5.68.0.tar.xz";
sha256 = "ad5f78afc916e9cb26f23918a6eb1983d4a57aa7e4f7314a8c23fb81e0fcaf4b";
name = "kirigami2-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kirigami2-5.71.0.tar.xz";
sha256 = "f323efb96a809dc9e572a0e68e04c4f485fc27f9ae65ffa3988830e348151356";
name = "kirigami2-5.71.0.tar.xz";
};
};
kitemmodels = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kitemmodels-5.68.0.tar.xz";
sha256 = "4f435db4362832cf63e49896229affd07f125567931fc499751d37ac3bafb149";
name = "kitemmodels-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kitemmodels-5.71.0.tar.xz";
sha256 = "68205f09d63a916f236e2b3b729c0055377d852de48f7cf29fa7174ca97b84e7";
name = "kitemmodels-5.71.0.tar.xz";
};
};
kitemviews = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kitemviews-5.68.0.tar.xz";
sha256 = "5196885ac42347d67779df61a03d7f9c54f38053ff91348ef6fdc08439b4742f";
name = "kitemviews-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kitemviews-5.71.0.tar.xz";
sha256 = "2843ef166ff5bf69c1132bbc09545b59ad208313c0acad71d0cd951fde1d33de";
name = "kitemviews-5.71.0.tar.xz";
};
};
kjobwidgets = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kjobwidgets-5.68.0.tar.xz";
sha256 = "a11ba51ed0ab330f9a921cf0a61e604c27d88c1c2ea477a875bc0a0cd228a292";
name = "kjobwidgets-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kjobwidgets-5.71.0.tar.xz";
sha256 = "63f3b2fc1c062b1a485ff543e2d5afa68a9f9a918676bf3a6a5dc8f56f5f30e3";
name = "kjobwidgets-5.71.0.tar.xz";
};
};
kjs = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/portingAids/kjs-5.68.0.tar.xz";
sha256 = "18e3d7c667aec21e9e4d0d4730ad32a10475b7db5a574a674a8b90a6f9e0cd0e";
name = "kjs-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/portingAids/kjs-5.71.0.tar.xz";
sha256 = "702224482139e500da1ea4e0d2b5132bf762f87f426f294587a0f2f47b9a9734";
name = "kjs-5.71.0.tar.xz";
};
};
kjsembed = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/portingAids/kjsembed-5.68.0.tar.xz";
sha256 = "e9b9ac63f06447ffc6870806eb1507f0281281bae907fdbae42ee87a2b926db2";
name = "kjsembed-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/portingAids/kjsembed-5.71.0.tar.xz";
sha256 = "9352a31b5f735d71d6db4b09825ca01adb337e37f2b0cfce48c679e932238486";
name = "kjsembed-5.71.0.tar.xz";
};
};
kmediaplayer = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/portingAids/kmediaplayer-5.68.0.tar.xz";
sha256 = "aa07466ea27b2e042e03d76fe3a23c570ba6521f57a2a51dc0ddf32fc8276db0";
name = "kmediaplayer-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/portingAids/kmediaplayer-5.71.0.tar.xz";
sha256 = "72492a6c877dded4f2333f140c025fdc4a271a68695c635c0dbc09b08d832eca";
name = "kmediaplayer-5.71.0.tar.xz";
};
};
knewstuff = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/knewstuff-5.68.0.tar.xz";
sha256 = "f7c13b133f8b87ceece2d33d3f69215912b3b8c1dbb92ac39a1a6a0a42b7c93a";
name = "knewstuff-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/knewstuff-5.71.0.tar.xz";
sha256 = "aba867855d69641f73db30405e787fc9ea22e3386a45be9626ba84cbe208f855";
name = "knewstuff-5.71.0.tar.xz";
};
};
knotifications = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/knotifications-5.68.0.tar.xz";
sha256 = "646bd3bac073fbf4f19f9047360325c933751d605cf1311f4c922d7457fbda51";
name = "knotifications-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/knotifications-5.71.0.tar.xz";
sha256 = "b900146340621d54f6113600e85d287b28225d82515affb8690704433e5d0440";
name = "knotifications-5.71.0.tar.xz";
};
};
knotifyconfig = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/knotifyconfig-5.68.0.tar.xz";
sha256 = "36c7c93964f2b9b584d73de1757f75d6ee8bb29ebe860e8fd6905354d2f10145";
name = "knotifyconfig-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/knotifyconfig-5.71.0.tar.xz";
sha256 = "226b7f956f7013027621c4018b4376b76129ea4195df67fc7df4435c54baf50e";
name = "knotifyconfig-5.71.0.tar.xz";
};
};
kpackage = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kpackage-5.68.0.tar.xz";
sha256 = "49727d89f1ca7ee504397d6e8b5cd25c26cd0061596b26d8ab2b64e3987d2d16";
name = "kpackage-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kpackage-5.71.0.tar.xz";
sha256 = "c4b924e7c506cb75bdaaf68bd881e79a73999bd6436f29157f56c76f32b48cba";
name = "kpackage-5.71.0.tar.xz";
};
};
kparts = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kparts-5.68.0.tar.xz";
sha256 = "fd17d0b0ff41d66c122530bbd8d1187f3271382207f63237ce72147865bf6d29";
name = "kparts-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kparts-5.71.0.tar.xz";
sha256 = "d038f97dfdccdd85dbac09c0f64cf852191ec2e535fd7928740e03d4ffe63b90";
name = "kparts-5.71.0.tar.xz";
};
};
kpeople = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kpeople-5.68.0.tar.xz";
sha256 = "1cae86d527d650d9fa311f6007cc33b5dcd858bcfe4eb7cae65b5402205c4675";
name = "kpeople-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kpeople-5.71.0.tar.xz";
sha256 = "d63d5f5cbbedc2e4ef85fa8c2ff4adcd5cb9e05d1d1ee0e7b2c2d151193f5403";
name = "kpeople-5.71.0.tar.xz";
};
};
kplotting = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kplotting-5.68.0.tar.xz";
sha256 = "ccae7f90c016a1c517db820f352bb962f600678efdc4ac6b12e33d2c48f5c268";
name = "kplotting-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kplotting-5.71.0.tar.xz";
sha256 = "84bacfbd86105e454f3d97f4ac4062e2f992556fca66d2c73806d1d12095bec1";
name = "kplotting-5.71.0.tar.xz";
};
};
kpty = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kpty-5.68.0.tar.xz";
sha256 = "35b838cff80311db52d83e1f61bc365277d54929742ee34265f36a12ce7689e3";
name = "kpty-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kpty-5.71.0.tar.xz";
sha256 = "7629d35ff783aff8fe801db30eb146efe50620f7500c4f7f1bf7d2619568c6b9";
name = "kpty-5.71.0.tar.xz";
};
};
kquickcharts = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kquickcharts-5.68.0.tar.xz";
sha256 = "2cfb78bc2a7659a8c4ca6b072ff586c44e6da64e10b84a0fb0c5e3f03c944628";
name = "kquickcharts-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kquickcharts-5.71.0.tar.xz";
sha256 = "a1befe13903676a9779030b02b91da9889540e689e1f6a0afd54ff484109642a";
name = "kquickcharts-5.71.0.tar.xz";
};
};
kross = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/portingAids/kross-5.68.0.tar.xz";
sha256 = "2f5a79a2097f84bfd2033ca183abdbf6626f6e5dc2c6f781c312f15c97dace33";
name = "kross-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/portingAids/kross-5.71.0.tar.xz";
sha256 = "ac42ed4ec39ddaea0a4668803271f6f5de513fcdd1243d02b296544ab601bb1c";
name = "kross-5.71.0.tar.xz";
};
};
krunner = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/krunner-5.68.0.tar.xz";
sha256 = "4575ae1d658d32c15f9d57dc30616073e9d143d1a7f9632556906ef10e82e3b8";
name = "krunner-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/krunner-5.71.0.tar.xz";
sha256 = "fb3ce4c587a1b114550487b5716f0aba53b775018b6eef2ae48b8d6fdda40952";
name = "krunner-5.71.0.tar.xz";
};
};
kservice = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kservice-5.68.0.tar.xz";
sha256 = "c774ce1738081c17e6e105e506aa89c22a9db07e73972d4b18ce733ec8ad0a8a";
name = "kservice-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kservice-5.71.0.tar.xz";
sha256 = "6b7f4784cb514ec966f3cb01d26aa2dbdfd2425919efa57a4efa6117fcafc9ce";
name = "kservice-5.71.0.tar.xz";
};
};
ktexteditor = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/ktexteditor-5.68.0.tar.xz";
sha256 = "dad373d4c136d113cca1ee6d700753563b7348813ff3229db670eedc63980cd6";
name = "ktexteditor-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/ktexteditor-5.71.0.tar.xz";
sha256 = "6e50b6669b288f8e624cba11bca53b78748faf6cb978628f02664038cfa294da";
name = "ktexteditor-5.71.0.tar.xz";
};
};
ktextwidgets = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/ktextwidgets-5.68.0.tar.xz";
sha256 = "23b354469afed21c840ca36e2bb5b2b383ed5c4ec3690bb009e273c39fbe00c0";
name = "ktextwidgets-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/ktextwidgets-5.71.0.tar.xz";
sha256 = "0a7fae03d8b59ec8a4f7c49a228536ea4121bd3d8f19fb1ff9831ada428509f4";
name = "ktextwidgets-5.71.0.tar.xz";
};
};
kunitconversion = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kunitconversion-5.68.0.tar.xz";
sha256 = "39ec06e2439306ce5b5efe5fe972d201e8c8e5fda634652cdc01c58427574adb";
name = "kunitconversion-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kunitconversion-5.71.0.tar.xz";
sha256 = "65bfba8e88e2cf6de40e06ce24fe5f48948cc92f16ce78eb8538de532dcf36cb";
name = "kunitconversion-5.71.0.tar.xz";
};
};
kwallet = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kwallet-5.68.0.tar.xz";
sha256 = "7524eeffdde3166df182f0dbf0f3f461905547bfd7a06387c7c503cd1ab75ecf";
name = "kwallet-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kwallet-5.71.0.tar.xz";
sha256 = "d53b5bc4bbe054101b012d63672efc30af6a5aea58f467037cab4735b6ace9b5";
name = "kwallet-5.71.0.tar.xz";
};
};
kwayland = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kwayland-5.68.0.tar.xz";
sha256 = "7c99bfac8f4bff457a5384c846be776c385649ced76be0f48699c6e12de24e7c";
name = "kwayland-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kwayland-5.71.0.tar.xz";
sha256 = "369ba54b485214687e719bc9216e3bb50849df3af9a3ec0e95cf5d5687c847c2";
name = "kwayland-5.71.0.tar.xz";
};
};
kwidgetsaddons = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kwidgetsaddons-5.68.0.tar.xz";
sha256 = "b4ff96b4ec6365e5f9e4da5e651da99be491799a4e6cfd982d0838dda39844ac";
name = "kwidgetsaddons-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kwidgetsaddons-5.71.0.tar.xz";
sha256 = "897077995bcf4125d0f90d2964500e718d2a3fd5f117e1b7906177ad13a5082e";
name = "kwidgetsaddons-5.71.0.tar.xz";
};
};
kwindowsystem = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kwindowsystem-5.68.0.tar.xz";
sha256 = "859c930a04c2588f792bfb9a28ed40b226db632b15c2851b186301b70d4c825a";
name = "kwindowsystem-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kwindowsystem-5.71.0.tar.xz";
sha256 = "a3613aea6fa73ebc53f28c011a6bca31ed157e29f85df767e617c44399360cda";
name = "kwindowsystem-5.71.0.tar.xz";
};
};
kxmlgui = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kxmlgui-5.68.0.tar.xz";
sha256 = "6310e9a725a982d3b70672367c5858727437fe08c8e409458e48b6015c7bf10e";
name = "kxmlgui-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/kxmlgui-5.71.0.tar.xz";
sha256 = "2e4b2563daeedf35a54d38002c05d7c39017a36c0b8a19c236ea87324eebf7cc";
name = "kxmlgui-5.71.0.tar.xz";
};
};
kxmlrpcclient = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/kxmlrpcclient-5.68.0.tar.xz";
sha256 = "e49f2ab649aafb292e01dacefb7b6f28fc596606764bef61e7ce622b67241324";
name = "kxmlrpcclient-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/portingAids/kxmlrpcclient-5.71.0.tar.xz";
sha256 = "5947de8ec9cd57d8ccf6ea8a764066733d2633d93e11f94ecfb47a75e1e7a91f";
name = "kxmlrpcclient-5.71.0.tar.xz";
};
};
modemmanager-qt = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/modemmanager-qt-5.68.0.tar.xz";
sha256 = "9c0febf18a04b69e47cffdb4563390a79a4a673da856502cbf50d5c7707670ec";
name = "modemmanager-qt-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/modemmanager-qt-5.71.0.tar.xz";
sha256 = "b2e5e2a8b8fe2e9fb22bb7dc77177a975727991c6c0ee19d5a9b0a2ab513531d";
name = "modemmanager-qt-5.71.0.tar.xz";
};
};
networkmanager-qt = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/networkmanager-qt-5.68.0.tar.xz";
sha256 = "6a9bea5e6d58f5322848114e4e827edadee6b5a890a3549446ff23a568325e2c";
name = "networkmanager-qt-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/networkmanager-qt-5.71.0.tar.xz";
sha256 = "7fe6a0c9d9b25c434c6a200de19f722d942165252cc9161f1d8fcddf64147034";
name = "networkmanager-qt-5.71.0.tar.xz";
};
};
oxygen-icons5 = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/oxygen-icons5-5.68.0.tar.xz";
sha256 = "75a8113e567d8cbba57bda3c8829d116d58ebf6bc5ace88aed7700b28a00c463";
name = "oxygen-icons5-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/oxygen-icons5-5.71.0.tar.xz";
sha256 = "a75a82164e2af5b6f269a386762ff2abba052dbfca18c9aed8d738c9cd958b04";
name = "oxygen-icons5-5.71.0.tar.xz";
};
};
plasma-framework = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/plasma-framework-5.68.0.tar.xz";
sha256 = "d27c7a62231784ecad1246f8a81b02fd6db2e9818244a06650fd6c972a69ea74";
name = "plasma-framework-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/plasma-framework-5.71.0.tar.xz";
sha256 = "a54c8603ca261c89609a3009536a9217ce3415a7fd63527ed36f266399613067";
name = "plasma-framework-5.71.0.tar.xz";
};
};
prison = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/prison-5.68.0.tar.xz";
sha256 = "22e2b8e9ca06e4fb7ab91afeddbaebe6e2b6792bbcd5ba6c440c6fad0df176b7";
name = "prison-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/prison-5.71.0.tar.xz";
sha256 = "44762ee7a3993bd7527f0b33ee09bacc1d5a518641b79932e5490a511ac7e87f";
name = "prison-5.71.0.tar.xz";
};
};
purpose = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/purpose-5.68.0.tar.xz";
sha256 = "c8c8f8244b568e52b4c02b89b71611bb8ba7cd07173645caa022b4bd90b41ab0";
name = "purpose-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/purpose-5.71.0.tar.xz";
sha256 = "de0531a84f671a15fe4a6348220e922a3230178554e26baf392a1f295044e4be";
name = "purpose-5.71.0.tar.xz";
};
};
qqc2-desktop-style = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/qqc2-desktop-style-5.68.0.tar.xz";
sha256 = "0f522861e5757de6a1205c86a2e5f8d2a7375c96eac1ece95d03a35858dc7b03";
name = "qqc2-desktop-style-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/qqc2-desktop-style-5.71.0.tar.xz";
sha256 = "b968ce6fc7c1d111aa2c63584dddc0f74e9066a0b4ea26d1194e46e2f7b38700";
name = "qqc2-desktop-style-5.71.0.tar.xz";
};
};
solid = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/solid-5.68.0.tar.xz";
sha256 = "472c1934b3c9cf917f28ac0e5b0864de442b96852744c301d88d8ab7269d74c3";
name = "solid-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/solid-5.71.0.tar.xz";
sha256 = "72a7bdd8306ec4cda5f504819e0ff3f8baca6530fa04e33f10b6b89dc010505b";
name = "solid-5.71.0.tar.xz";
};
};
sonnet = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/sonnet-5.68.0.tar.xz";
sha256 = "079c4f5fcb9fe670e1242b18648e178aaa01eb81dbdfc881805eea1ec585bd67";
name = "sonnet-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/sonnet-5.71.0.tar.xz";
sha256 = "cd663b3e1b23aef58d85f72dfdc92aaae33f358b22ad1fc36fde6c66eb7f0e72";
name = "sonnet-5.71.0.tar.xz";
};
};
syndication = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/syndication-5.68.0.tar.xz";
sha256 = "0715fc1b7312b5081521b781d0878d88cc70dcb77272ee173cecca03cc221fd3";
name = "syndication-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/syndication-5.71.0.tar.xz";
sha256 = "c515fd48d3736b55c8e7990c72471bfddd55363c4bcb049713be741eaa7b07e0";
name = "syndication-5.71.0.tar.xz";
};
};
syntax-highlighting = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/syntax-highlighting-5.68.0.tar.xz";
sha256 = "a857c743aa60b21eea7e4b986e8b195882aa2c18358412e767e68d93ce35e134";
name = "syntax-highlighting-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/syntax-highlighting-5.71.0.tar.xz";
sha256 = "845ae0c7b8523c23c3ad704a6c551260a358d96b0094a5c2b062879e58173f84";
name = "syntax-highlighting-5.71.0.tar.xz";
};
};
threadweaver = {
version = "5.68.0";
version = "5.71.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.68/threadweaver-5.68.0.tar.xz";
sha256 = "e28c0bfff375b3e1e9e4eec72f0a804f3f41c4ec5fd59af9b951708d229eff64";
name = "threadweaver-5.68.0.tar.xz";
url = "${mirror}/stable/frameworks/5.71/threadweaver-5.71.0.tar.xz";
sha256 = "039e73d70f38af38a63235cfb554111ee0d58a6ac168bff0745f0d029c5c528d";
name = "threadweaver-5.71.0.tar.xz";
};
};
}

View File

@ -0,0 +1,39 @@
{ mkDerivation, lib, fetchurl
, cmake
, qtbase
}:
let
version = "1.9.0";
in
mkDerivation {
pname = "kdsoap";
inherit version;
meta = {
description = "A Qt-based client-side and server-side SOAP component";
longDescription = ''
KD Soap is a Qt-based client-side and server-side SOAP component.
It can be used to create client applications for web services and also
provides the means to create web services without the need for any further
component such as a dedicated web server.
'';
license = with lib.licenses; [ gpl2 gpl3 lgpl21 ];
maintainers = [ lib.maintainers.ttuegel ];
};
src = fetchurl {
url = "https://github.com/KDAB/KDSoap/releases/download/kdsoap-${version}/kdsoap-${version}.tar.gz";
sha256 = "0a28k48cmagqxhaayyrqnxsx1zbvw4f06dgs16kl33xhbinn5fg3";
};
outputs = [ "out" "dev" ];
nativeBuildInputs = [ cmake ];
buildInputs = [ qtbase ];
postInstall = ''
moveToOutput bin/kdwsdl2cpp "$dev"
sed -i "$out/lib/cmake/KDSoap/KDSoapTargets.cmake" \
-e "/^ INTERFACE_INCLUDE_DIRECTORIES/ c INTERFACE_INCLUDE_DIRECTORIES \"$dev/include\""
sed -i "$out/lib/cmake/KDSoap/KDSoapTargets-release.cmake" \
-e "s@$out/bin@$dev/bin@"
'';
}

View File

@ -2,7 +2,7 @@
stdenv.mkDerivation rec {
pname = "librealsense";
version = "2.35.2";
version = "2.36.0";
outputs = [ "out" "dev" ];
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
owner = "IntelRealSense";
repo = pname;
rev = "v${version}";
sha256 = "14vf76vlyhh7b4yjzsnqpg1x3wdhwxrf1syvgf8wyxbjwb9plw82";
sha256 = "1dfkhnybnd8qnljf3y3hjyamaqzw733hb3swy4hjcsdm9dh0wpay";
};
buildInputs = [

View File

@ -8,14 +8,14 @@
stdenv.mkDerivation rec {
pname = "libslirp";
version = "4.3.0";
version = "4.3.1";
src = fetchFromGitLab {
domain = "gitlab.freedesktop.org";
owner = "slirp";
repo = pname;
rev = "v${version}";
sha256 = "1hajbdwx20a48hp8kv6jqbjvnzjvcdqmbjfsymzy2xa80idqkfab";
sha256 = "0pzgjj2x2vrjshrzrl2x39xp5lgwg4b4y9vs8xvadh1ycl10v3fv";
};
nativeBuildInputs = [ meson ninja pkg-config ];

View File

@ -2,12 +2,12 @@
stdenv.mkDerivation rec {
pname = "openimagedenoise";
version = "1.2.1";
version = "1.2.2";
# The release tarballs include pretrained weights, which would otherwise need to be fetched with git-lfs
src = fetchzip {
url = "https://github.com/OpenImageDenoise/oidn/releases/download/v${version}/oidn-${version}.src.tar.gz";
sha256 = "1f8s69ixv7nsdap9hc2njli2x75zmlrfq8cy79772gz83kph8s25";
sha256 = "0wyaarjxkzlvljmpnr7qm06ma2wl1aik3z664gwpzhizswygk6yp";
};
nativeBuildInputs = [ cmake python ispc ];

View File

@ -0,0 +1,28 @@
{ stdenv, fetchFromGitHub, git, cmake, catch2, asio, udev }:
stdenv.mkDerivation rec {
pname = "pc-ble-driver";
version = "4.1.1";
src = fetchFromGitHub {
owner = "NordicSemiconductor";
repo = "pc-ble-driver";
rev = "v${version}";
sha256 = "1llhkpbdbsq9d91m873vc96bprkgpb5wsm5fgs1qhzdikdhg077q";
};
cmakeFlags = [
"-DNRF_BLE_DRIVER_VERSION=${version}"
];
nativeBuildInputs = [ cmake git ];
buildInputs = [ catch2 asio udev ];
meta = with stdenv.lib; {
description = "Desktop library for Bluetooth low energy development";
homepage = "https://github.com/NordicSemiconductor/pc-ble-driver";
license = licenses.unfreeRedistributable;
platforms = platforms.unix;
maintainers = with maintainers; [ jschievink ];
};
}

View File

@ -115,6 +115,7 @@
, {"lumo-build-deps": "../interpreters/clojurescript/lumo" }
, "madoko"
, "markdown-link-check"
, "mastodon-bot"
, "mathjax"
, "meat"
, "meguca"

File diff suppressed because it is too large Load Diff

View File

@ -6,11 +6,11 @@
buildPythonPackage rec {
pname = "Wand";
version = "0.6.1";
version = "0.6.2";
src = fetchPypi {
inherit pname version;
sha256 = "1wg7dlz6mhjp7mkqm5f8a2ak87p1zn46b6i754ys8f29nnqq01yz";
sha256 = "0jm1jdrlmm0gkvaxhbwwqic48vfgv8d0j99y90calnjrid3hwi35";
};
postPatch = ''

View File

@ -0,0 +1,27 @@
{ stdenv
, buildPythonPackage
, fetchPypi
, six
, nose
, coverage
}:
buildPythonPackage rec {
pname = "aadict";
version = "0.2.3";
src = fetchPypi {
inherit pname version;
sha256 = "013pn9ii6mkql6khgdvsd1gi7zmya418fhclm5fp7dfvann2hwx7";
};
propagatedBuildInputs = [ six ];
checkInputs = [ nose coverage ];
meta = with stdenv.lib; {
homepage = "https://github.com/metagriffin/aadict";
description = "An auto-attribute dict (and a couple of other useful dict functions).";
maintainers = with maintainers; [ glittershark ];
license = licenses.gpl3;
};
}

View File

@ -12,14 +12,14 @@
}:
buildPythonPackage rec {
version = "1.6.0";
version = "1.7.0";
pname = "azure-core";
disabled = isPy27;
src = fetchPypi {
inherit pname version;
extension = "zip";
sha256 = "d10b74e783cff90d56360e61162afdd22276d62dc9467e657ae866449eae7648";
sha256 = "0p6pzpgfxr0c95gqr8ryq779an13x84vlm3zhvwlgx47l90a4vd6";
};
propagatedBuildInputs = [

View File

@ -16,7 +16,7 @@ buildPythonPackage rec {
homepage = "https://github.com/nicolargo/batinfo";
description = "A simple Python lib to retrieve battery information";
license = licenses.lgpl3;
platforms = platforms.all;
platforms = platforms.linux;
maintainers = with maintainers; [ koral ];
};
}

View File

@ -0,0 +1,35 @@
{ lib, buildPythonPackage, fetchPypi
, pytest
}:
buildPythonPackage rec {
version = "1.0.3";
pname = "biplist";
src = fetchPypi {
inherit pname version;
sha256 = "1im45a9z7ryrfyp1v6i39qia5qagw6i1mhif0hl0praz9iv4j1ac";
};
checkInputs = [
pytest
];
checkPhase = ''
pytest
'';
meta = with lib; {
homepage = "https://bitbucket.org/wooster/biplist/src/master/";
description = "Binary plist parser/generator for Python";
longDescription = ''
Binary Property List (plist) files provide a faster and smaller
serialization format for property lists on OS X.
This is a library for generating binary plists which can be read
by OS X, iOS, or other clients.
'';
license = licenses.bsd3;
maintainers = with maintainers; [ siriobalmelli ];
};
}

View File

@ -0,0 +1,28 @@
{ stdenv
, pythonAtLeast
, buildPythonPackage
, fetchPypi
, nose
, coverage
}:
buildPythonPackage rec {
pname = "globre";
version = "0.1.5";
# https://github.com/metagriffin/globre/issues/7
disabled = pythonAtLeast "3.7";
src = fetchPypi {
inherit pname version;
sha256 = "1qhjpg0722871dm5m7mmldf6c7mx58fbdvk1ix5i3s9py82448gf";
};
checkInputs = [ nose coverage ];
meta = with stdenv.lib; {
homepage = "https://github.com/metagriffin/globre";
description = "A python glob-like regular expression generation library.";
maintainers = with maintainers; [ glittershark ];
license = licenses.gpl3;
};
}

View File

@ -0,0 +1,31 @@
{ lib, buildPythonPackage, fetchPypi
}:
buildPythonPackage rec {
version = "2.0.7";
pname = "mac_alias";
src = fetchPypi {
inherit pname version;
sha256 = "08z2i68mk5j0vfy8jqihjm9m6njp1lpjh1m91b60h0k0kpmy71f4";
};
# pypi package does not include tests;
# tests anyway require admin privileges to succeed
doCheck = false;
pythonImportsCheck = [ "mac_alias" ];
meta = with lib; {
homepage = "https://github.com/al45tair/mac_alias";
description = "Generate or read binary Alias and Bookmark records from Python code";
longDescription = ''
mac_alias lets you generate or read binary Alias and Bookmark records from Python code.
While it is written in pure Python, some OS X specific code is required
to generate a proper Alias or Bookmark record for a given file,
so this module currently is not portable to other platforms.
'';
license = licenses.mit;
maintainers = with maintainers; [ siriobalmelli ];
};
}

View File

@ -4,13 +4,13 @@ let
py = python;
in buildPythonPackage rec {
pname = "mysql-connector";
version = "8.0.20";
version = "8.0.21";
src = fetchFromGitHub {
owner = "mysql";
repo = "mysql-connector-python";
rev = version;
sha256 = "1pm98mjbkhwawhni98cjhp0gg3mim75i0sdby77vzrlcrxajxkbw";
sha256 = "0ky7rn9259807gji3fhvkmdmrgyaps431l9l9y6gh66i84kw1b3l";
};
propagatedBuildInputs = with py.pkgs; [ protobuf dnspython ];

View File

@ -29,5 +29,6 @@ stdenv.mkDerivation {
# ensures not built on hydra
# https://github.com/NixOS/nixpkgs/pull/46846#issuecomment-436388048
hydraPlatforms = [ ];
broken = true; # cmake unable to find Qt5Core and other dependencies
};
}

View File

@ -1,45 +1,25 @@
{ stdenv, buildPythonPackage, fetchpatch, fetchFromGitHub,
python, cmake, git, swig, boost, udev,
setuptools, enum34, wrapt, future }:
{ stdenv, fetchFromGitHub, cmake, git, swig, boost, udev, pc-ble-driver
, buildPythonPackage, enum34, wrapt, future, setuptools, scikit-build }:
buildPythonPackage rec {
pname = "pc-ble-driver-py";
version = "0.11.4";
disabled = python.isPy3k;
version = "0.14.2";
src = fetchFromGitHub {
owner = "NordicSemiconductor";
repo = "pc-ble-driver-py";
rev = "v${version}";
fetchSubmodules = true;
sha256 = "0lgmcnrlcivmawmlcwnn4pdp6afdbnf3fyfgq22xzs6v72m9gp81";
sha256 = "1zbi3v4jmgq1a3ml34dq48y1hinw2008vwqn30l09r5vqvdgnj8m";
};
nativeBuildInputs = [ cmake swig git setuptools ];
buildInputs = [ boost udev ];
# doCheck tries to write to the global python directory to install things
doCheck = false;
nativeBuildInputs = [ cmake swig git setuptools scikit-build ];
buildInputs = [ boost udev pc-ble-driver ];
propagatedBuildInputs = [ enum34 wrapt future ];
patches = [
# build system expects case-insensitive file system
(fetchpatch {
url = "https://patch-diff.githubusercontent.com/raw/NordicSemiconductor/pc-ble-driver-py/pull/84.patch";
sha256 = "0ibx5g2bndr5h9sfnx51bk9b62q4jvpdwhxadbnj3da8kvcz13cy";
})
];
postPatch = ''
# do not force static linking of boost
sed -i /Boost_USE_STATIC_LIBS/d pc-ble-driver/cmake/*.cmake
cd python
'';
preBuild = ''
pushd ../build
cmake ..
make -j $NIX_BUILD_CORES
popd
'';
dontUseCmakeConfigure = true;
meta = with stdenv.lib; {
description = "Bluetooth Low Energy nRF5 SoftDevice serialization";

View File

@ -0,0 +1,41 @@
{ lib
, pythonOlder
, buildPythonPackage
, isPy3k
, fetchFromGitHub
, semver
# Check Inputs
, nose
}:
buildPythonPackage rec {
pname = "pkutils";
version = "1.1.1";
disabled = !isPy3k; # some tests using semver fail due to unicode errors on Py2.7
src = fetchFromGitHub {
owner = "reubano";
repo = "pkutils";
rev = "v${version}";
sha256 = "01yaq9sz6vyxk8yiss6hsmy70qj642cr2ifk0sx1mlh488flcm62";
};
propagatedBuildInputs = [ semver ];
# Remove when https://github.com/reubano/pkutils/pull/4 merged
postPatch = ''
substituteInPlace requirements.txt --replace "semver>=2.2.1,<2.7.3" "semver"
'';
checkInputs = [ nose ];
pythonImportsCheck = [ "pkutils" ];
checkPhase = "nosetests";
meta = with lib; {
description = "A Python packaging utility library";
homepage = "https://github.com/reubano/pkutils/";
license = licenses.mit;
maintainers = with maintainers; [ drewrisinger ];
};
}

View File

@ -0,0 +1,37 @@
{ stdenv
, pythonAtLeast
, isPy27
, buildPythonPackage
, fetchPypi
, blessings
, six
, nose
, coverage
}:
buildPythonPackage rec {
pname = "pxml";
version = "0.2.13";
disabled = pythonAtLeast "3.8";
src = fetchPypi {
inherit pname version;
sha256 = "0c9zzfv6ciyf9qm7556wil45xxgykg1cj8isp1b88gimwcb2hxg4";
};
propagatedBuildInputs = [ blessings six ];
checkInputs = [ nose coverage ];
# test_prefixedWhitespace fails due to a python3 StringIO issue requiring
# bytes rather than str
checkPhase = ''
nosetests -e 'test_prefixedWhitespace'
'';
meta = with stdenv.lib; {
homepage = "https://github.com/metagriffin/pxml";
description = ''A python library and command-line tool to "prettify" and colorize XML.'';
maintainers = with maintainers; [ glittershark ];
license = licenses.gpl3;
};
}

View File

@ -0,0 +1,36 @@
{ lib
, pythonOlder
, buildPythonPackage
, fetchFromGitHub
, pkutils
# Check Inputs
, pytestCheckHook
, nose
}:
buildPythonPackage rec {
pname = "pygogo";
version = "0.13.2";
disabled = pythonOlder "3.6";
src = fetchFromGitHub {
owner = "reubano";
repo = "pygogo";
rev = "v${version}";
sha256 = "19rdf4sjrm5lp1vq1bki21a9lrkzz8sgrfwgjdkq4sgy90hn1jn9";
};
nativeBuildInputs = [ pkutils ];
checkInputs = [ nose ];
checkPhase = "nosetests";
pythonImportsCheck = [ "pygogo" ];
meta = with lib; {
description = "A Python logging library with super powers";
homepage = "https://github.com/reubano/pygogo/";
license = licenses.mit;
maintainers = with maintainers; [ drewrisinger ];
};
}

Some files were not shown because too many files have changed in this diff Show More