Merge staging-next into staging
This commit is contained in:
@@ -34,6 +34,8 @@
|
||||
|
||||
- `services.firezone.server.provision` has been removed due to it being unmaintanable. Remove all uses of provisioning and use the WebUI to configure firezone.
|
||||
|
||||
- The `services.syncthing` module now updates the Syncthing REST API using partial updates (`PATCH`) instead of full replacements (`PUT`) for general settings. Updating these settings was broken and prone to errors after updates, see [#428808](https://github.com/NixOS/nixpkgs/issues/428808) and [#528889](https://github.com/NixOS/nixpkgs/issues/528889). As a result, settings modified manually through the Syncthing Web UI that are not explicitly defined in your Nix configuration will now persist across rebuilds.
|
||||
|
||||
## Other Notable Changes {#sec-release-26.11-notable-changes}
|
||||
|
||||
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
|
||||
|
||||
@@ -6,15 +6,13 @@
|
||||
...
|
||||
}:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.syncthing;
|
||||
opt = options.services.syncthing;
|
||||
defaultUser = "syncthing";
|
||||
defaultGroup = defaultUser;
|
||||
settingsFormat = pkgs.formats.json { };
|
||||
cleanedConfig = converge (filterAttrsRecursive (_: v: v != null && v != { })) cfg.settings;
|
||||
cleanedConfig = lib.converge (lib.filterAttrsRecursive (_: v: v != null && v != { })) cfg.settings;
|
||||
|
||||
isUnixGui = lib.strings.hasPrefix "unix://" cfg.guiAddress;
|
||||
|
||||
@@ -35,7 +33,7 @@ let
|
||||
else
|
||||
"${cfg.guiAddress}${path}";
|
||||
|
||||
devices = mapAttrsToList (
|
||||
devices = lib.mapAttrsToList (
|
||||
_: device:
|
||||
device
|
||||
// {
|
||||
@@ -45,31 +43,10 @@ let
|
||||
|
||||
anyAutoAccept = builtins.any (dev: dev.autoAcceptFolders) devices;
|
||||
|
||||
folders = mapAttrsToList (
|
||||
_: folder:
|
||||
folder
|
||||
//
|
||||
throwIf (folder ? rescanInterval || folder ? watch || folder ? watchDelay)
|
||||
''
|
||||
The options services.syncthing.settings.folders.<name>.{rescanInterval,watch,watchDelay}
|
||||
were removed. Please use, respectively, {rescanIntervalS,fsWatcherEnabled,fsWatcherDelayS} instead.
|
||||
''
|
||||
{
|
||||
devices =
|
||||
let
|
||||
folderDevices = folder.devices;
|
||||
in
|
||||
map (
|
||||
device:
|
||||
if builtins.isString device then
|
||||
{ deviceId = cfg.settings.devices.${device}.id; }
|
||||
else if builtins.isAttrs device then
|
||||
{ deviceId = cfg.settings.devices.${device.name}.id; } // device
|
||||
else
|
||||
throw "Invalid type for devices in folder '${folderName}'; expected list or attrset."
|
||||
) folderDevices;
|
||||
}
|
||||
) (filterAttrs (_: folder: folder.enable) cfg.settings.folders);
|
||||
folders = lib.pipe cfg.settings.folders [
|
||||
(lib.filterAttrs (_: folder: folder.enable))
|
||||
builtins.attrValues
|
||||
];
|
||||
|
||||
jq = "${pkgs.jq}/bin/jq";
|
||||
grep = lib.getExe pkgs.gnugrep;
|
||||
@@ -179,7 +156,7 @@ let
|
||||
[
|
||||
# Now for each of these attributes, write the curl commands that are
|
||||
# identical to both folders and devices.
|
||||
(mapAttrs (
|
||||
(lib.mapAttrs (
|
||||
conf_type: s:
|
||||
# We iterate the `conf` list now, and run a curl -X POST command for each, that
|
||||
# should update that device/folder only.
|
||||
@@ -301,7 +278,7 @@ let
|
||||
+
|
||||
/*
|
||||
Now we update the other settings defined in cleanedConfig which are not
|
||||
"folders", "devices", or "guiPasswordFile".
|
||||
"folders", "devices", "guiPasswordFile", or "defaults".
|
||||
*/
|
||||
(lib.pipe cleanedConfig [
|
||||
builtins.attrNames
|
||||
@@ -309,14 +286,35 @@ let
|
||||
"folders"
|
||||
"devices"
|
||||
"guiPasswordFile"
|
||||
"defaults"
|
||||
])
|
||||
(map (subOption: ''
|
||||
curl -X PUT -d ${
|
||||
curl -X PATCH -d ${
|
||||
lib.escapeShellArg (builtins.toJSON cleanedConfig.${subOption})
|
||||
} ${curlAddressArgs "/rest/config/${subOption}"}
|
||||
''))
|
||||
(lib.concatStringsSep "\n")
|
||||
])
|
||||
+
|
||||
# Handle the "defaults" option separately, as it has multiple sub-endpoints.
|
||||
(lib.optionalString (cleanedConfig ? defaults) (
|
||||
lib.pipe cleanedConfig.defaults [
|
||||
builtins.attrNames
|
||||
(map (
|
||||
subOption:
|
||||
let
|
||||
# /rest/config/defaults/ignores only supports PUT
|
||||
method = if subOption == "ignores" then "PUT" else "PATCH";
|
||||
in
|
||||
''
|
||||
curl -X ${method} -d ${
|
||||
lib.escapeShellArg (builtins.toJSON cleanedConfig.defaults.${subOption})
|
||||
} ${curlAddressArgs "/rest/config/defaults/${subOption}"}
|
||||
''
|
||||
))
|
||||
(lib.concatStringsSep "\n")
|
||||
]
|
||||
))
|
||||
+
|
||||
# Now we hash the contents of guiPasswordFile and use the result to update the gui password
|
||||
(lib.optionalString (cfg.guiPasswordFile != null) ''
|
||||
@@ -337,10 +335,10 @@ in
|
||||
options = {
|
||||
services.syncthing = {
|
||||
|
||||
enable = mkEnableOption "Syncthing, a self-hosted open-source alternative to Dropbox and Bittorrent Sync";
|
||||
enable = lib.mkEnableOption "Syncthing, a self-hosted open-source alternative to Dropbox and Bittorrent Sync";
|
||||
|
||||
cert = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
cert = lib.mkOption {
|
||||
type = lib.types.nullOr lib.types.str;
|
||||
default = null;
|
||||
description = ''
|
||||
Path to the `cert.pem` file, which will be copied into Syncthing's
|
||||
@@ -348,8 +346,8 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
key = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
key = lib.mkOption {
|
||||
type = lib.types.nullOr lib.types.str;
|
||||
default = null;
|
||||
description = ''
|
||||
Path to the `key.pem` file, which will be copied into Syncthing's
|
||||
@@ -357,16 +355,16 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
guiPasswordFile = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
guiPasswordFile = lib.mkOption {
|
||||
type = lib.types.nullOr lib.types.str;
|
||||
default = null;
|
||||
description = ''
|
||||
Path to file containing the plaintext password for Syncthing's GUI.
|
||||
'';
|
||||
};
|
||||
|
||||
overrideDevices = mkOption {
|
||||
type = types.bool;
|
||||
overrideDevices = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = true;
|
||||
description = ''
|
||||
Whether to delete the devices which are not configured via the
|
||||
@@ -376,10 +374,10 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
overrideFolders = mkOption {
|
||||
type = types.bool;
|
||||
overrideFolders = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = !anyAutoAccept;
|
||||
defaultText = literalMD ''
|
||||
defaultText = lib.literalMD ''
|
||||
`true` unless any device has the
|
||||
[autoAcceptFolders](#opt-services.syncthing.settings.devices._name_.autoAcceptFolders)
|
||||
option set to `true`.
|
||||
@@ -392,47 +390,47 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
settings = mkOption {
|
||||
type = types.submodule {
|
||||
settings = lib.mkOption {
|
||||
type = lib.types.submodule {
|
||||
freeformType = settingsFormat.type;
|
||||
options = {
|
||||
# global options
|
||||
options = mkOption {
|
||||
options = lib.mkOption {
|
||||
default = { };
|
||||
description = ''
|
||||
The options element contains all other global configuration options
|
||||
'';
|
||||
type = types.submodule (
|
||||
{ name, ... }:
|
||||
type = lib.types.submodule (
|
||||
{ ... }:
|
||||
{
|
||||
freeformType = settingsFormat.type;
|
||||
options = {
|
||||
localAnnounceEnabled = mkOption {
|
||||
type = types.nullOr types.bool;
|
||||
localAnnounceEnabled = lib.mkOption {
|
||||
type = lib.types.nullOr lib.types.bool;
|
||||
default = null;
|
||||
description = ''
|
||||
Whether to send announcements to the local LAN, also use such announcements to find other devices.
|
||||
'';
|
||||
};
|
||||
|
||||
localAnnouncePort = mkOption {
|
||||
type = types.nullOr types.port;
|
||||
localAnnouncePort = lib.mkOption {
|
||||
type = lib.types.nullOr lib.types.port;
|
||||
default = null;
|
||||
description = ''
|
||||
The port on which to listen and send IPv4 broadcast announcements to.
|
||||
'';
|
||||
};
|
||||
|
||||
relaysEnabled = mkOption {
|
||||
type = types.nullOr types.bool;
|
||||
relaysEnabled = lib.mkOption {
|
||||
type = lib.types.nullOr lib.types.bool;
|
||||
default = null;
|
||||
description = ''
|
||||
When true, relays will be connected to and potentially used for device to device connections.
|
||||
'';
|
||||
};
|
||||
|
||||
urAccepted = mkOption {
|
||||
type = types.nullOr types.int;
|
||||
urAccepted = lib.mkOption {
|
||||
type = lib.types.nullOr lib.types.int;
|
||||
default = null;
|
||||
description = ''
|
||||
Whether the user has accepted to submit anonymous usage data.
|
||||
@@ -441,16 +439,16 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
limitBandwidthInLan = mkOption {
|
||||
type = types.nullOr types.bool;
|
||||
limitBandwidthInLan = lib.mkOption {
|
||||
type = lib.types.nullOr lib.types.bool;
|
||||
default = null;
|
||||
description = ''
|
||||
Whether to apply bandwidth limits to devices in the same broadcast domain as the local device.
|
||||
'';
|
||||
};
|
||||
|
||||
maxFolderConcurrency = mkOption {
|
||||
type = types.nullOr types.int;
|
||||
maxFolderConcurrency = lib.mkOption {
|
||||
type = lib.types.nullOr lib.types.int;
|
||||
default = null;
|
||||
description = ''
|
||||
This option controls how many folders may concurrently be in I/O-intensive operations such as syncing or scanning.
|
||||
@@ -463,7 +461,7 @@ in
|
||||
};
|
||||
|
||||
# device settings
|
||||
devices = mkOption {
|
||||
devices = lib.mkOption {
|
||||
default = { };
|
||||
description = ''
|
||||
Peers/devices which Syncthing should communicate with.
|
||||
@@ -478,30 +476,30 @@ in
|
||||
addresses = [ "tcp://192.168.0.10:51820" ];
|
||||
};
|
||||
};
|
||||
type = types.attrsOf (
|
||||
types.submodule (
|
||||
type = lib.types.attrsOf (
|
||||
lib.types.submodule (
|
||||
{ name, ... }:
|
||||
{
|
||||
freeformType = settingsFormat.type;
|
||||
options = {
|
||||
|
||||
name = mkOption {
|
||||
type = types.str;
|
||||
name = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = name;
|
||||
description = ''
|
||||
The name of the device.
|
||||
'';
|
||||
};
|
||||
|
||||
id = mkOption {
|
||||
type = types.str;
|
||||
id = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
description = ''
|
||||
The device ID. See <https://docs.syncthing.net/dev/device-ids.html>.
|
||||
'';
|
||||
};
|
||||
|
||||
autoAcceptFolders = mkOption {
|
||||
type = types.bool;
|
||||
autoAcceptFolders = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Automatically create or share folders that this device advertises at the default path.
|
||||
@@ -516,7 +514,7 @@ in
|
||||
};
|
||||
|
||||
# folder settings
|
||||
folders = mkOption {
|
||||
folders = lib.mkOption {
|
||||
default = { };
|
||||
description = ''
|
||||
Folders which should be shared by Syncthing.
|
||||
@@ -525,7 +523,7 @@ in
|
||||
will be reverted on restart if [overrideFolders](#opt-services.syncthing.overrideFolders)
|
||||
is enabled.
|
||||
'';
|
||||
example = literalExpression ''
|
||||
example = lib.literalExpression ''
|
||||
{
|
||||
"/home/user/sync" = {
|
||||
id = "syncme";
|
||||
@@ -533,15 +531,15 @@ in
|
||||
};
|
||||
}
|
||||
'';
|
||||
type = types.attrsOf (
|
||||
types.submodule (
|
||||
type = lib.types.attrsOf (
|
||||
lib.types.submodule (
|
||||
{ name, ... }:
|
||||
{
|
||||
freeformType = settingsFormat.type;
|
||||
options = {
|
||||
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
enable = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = true;
|
||||
description = ''
|
||||
Whether to share this folder.
|
||||
@@ -550,12 +548,12 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
path = mkOption {
|
||||
path = lib.mkOption {
|
||||
# TODO for release 23.05: allow relative paths again and set
|
||||
# working directory to cfg.dataDir
|
||||
type = types.str // {
|
||||
check = x: types.str.check x && (substring 0 1 x == "/" || substring 0 2 x == "~/");
|
||||
description = types.str.description + " starting with / or ~/";
|
||||
type = lib.types.str // {
|
||||
check = x: lib.types.str.check x && (lib.substring 0 1 x == "/" || lib.substring 0 2 x == "~/");
|
||||
description = lib.types.str.description + " starting with / or ~/";
|
||||
};
|
||||
default = name;
|
||||
description = ''
|
||||
@@ -566,24 +564,24 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
id = mkOption {
|
||||
type = types.str;
|
||||
id = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = name;
|
||||
description = ''
|
||||
The ID of the folder. Must be the same on all devices.
|
||||
'';
|
||||
};
|
||||
|
||||
label = mkOption {
|
||||
type = types.str;
|
||||
label = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = name;
|
||||
description = ''
|
||||
The label of the folder.
|
||||
'';
|
||||
};
|
||||
|
||||
type = mkOption {
|
||||
type = types.enum [
|
||||
type = lib.mkOption {
|
||||
type = lib.types.enum [
|
||||
"sendreceive"
|
||||
"sendonly"
|
||||
"receiveonly"
|
||||
@@ -596,17 +594,17 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
devices = mkOption {
|
||||
type = types.listOf (
|
||||
types.oneOf [
|
||||
types.str
|
||||
(types.submodule (
|
||||
devices = lib.mkOption {
|
||||
type = lib.types.listOf (
|
||||
lib.types.oneOf [
|
||||
lib.types.str
|
||||
(lib.types.submodule (
|
||||
{ ... }:
|
||||
{
|
||||
freeformType = settingsFormat.type;
|
||||
options = {
|
||||
name = mkOption {
|
||||
type = types.str;
|
||||
name = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = null;
|
||||
description = ''
|
||||
The name of a device defined in the
|
||||
@@ -614,8 +612,8 @@ in
|
||||
option.
|
||||
'';
|
||||
};
|
||||
encryptionPasswordFile = mkOption {
|
||||
type = types.nullOr types.externalPath;
|
||||
encryptionPasswordFile = lib.mkOption {
|
||||
type = lib.types.nullOr lib.types.externalPath;
|
||||
default = null;
|
||||
description = ''
|
||||
Path to encryption password. If set, the file will be read during
|
||||
@@ -637,14 +635,14 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
versioning = mkOption {
|
||||
versioning = lib.mkOption {
|
||||
default = null;
|
||||
description = ''
|
||||
How to keep changed/deleted files with Syncthing.
|
||||
There are 4 different types of versioning with different parameters.
|
||||
See <https://docs.syncthing.net/users/versioning.html>.
|
||||
'';
|
||||
example = literalExpression ''
|
||||
example = lib.literalExpression ''
|
||||
[
|
||||
{
|
||||
versioning = {
|
||||
@@ -680,13 +678,12 @@ in
|
||||
}
|
||||
]
|
||||
'';
|
||||
type =
|
||||
with types;
|
||||
nullOr (submodule {
|
||||
type = lib.types.nullOr (
|
||||
lib.types.submodule {
|
||||
freeformType = settingsFormat.type;
|
||||
options = {
|
||||
type = mkOption {
|
||||
type = enum [
|
||||
type = lib.mkOption {
|
||||
type = lib.types.enum [
|
||||
"external"
|
||||
"simple"
|
||||
"staggered"
|
||||
@@ -698,11 +695,12 @@ in
|
||||
'';
|
||||
};
|
||||
};
|
||||
});
|
||||
}
|
||||
);
|
||||
};
|
||||
|
||||
copyOwnershipFromParent = mkOption {
|
||||
type = types.bool;
|
||||
copyOwnershipFromParent = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
On Unix systems, tries to copy file/folder ownership from the parent directory (the directory it’s located in).
|
||||
@@ -710,8 +708,8 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
ignorePatterns = mkOption {
|
||||
type = types.nullOr (types.listOf types.str);
|
||||
ignorePatterns = lib.mkOption {
|
||||
type = lib.types.nullOr (lib.types.listOf lib.types.str);
|
||||
default = null;
|
||||
description = ''
|
||||
Syncthing can be configured to ignore certain files in a folder using ignore patterns.
|
||||
@@ -771,8 +769,8 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
guiAddress = mkOption {
|
||||
type = types.str;
|
||||
guiAddress = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "127.0.0.1:8384";
|
||||
apply = x: if lib.strings.hasPrefix "/" x then "unix://${x}" else x;
|
||||
description = ''
|
||||
@@ -780,16 +778,16 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
systemService = mkOption {
|
||||
type = types.bool;
|
||||
systemService = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = true;
|
||||
description = ''
|
||||
Whether to auto-launch Syncthing as a system service.
|
||||
'';
|
||||
};
|
||||
|
||||
user = mkOption {
|
||||
type = types.str;
|
||||
user = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = defaultUser;
|
||||
example = "yourUser";
|
||||
description = ''
|
||||
@@ -799,8 +797,8 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
group = mkOption {
|
||||
type = types.str;
|
||||
group = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = defaultGroup;
|
||||
example = "yourGroup";
|
||||
description = ''
|
||||
@@ -809,8 +807,8 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
all_proxy = mkOption {
|
||||
type = with types; nullOr str;
|
||||
all_proxy = lib.mkOption {
|
||||
type = lib.types.nullOr lib.types.str;
|
||||
default = null;
|
||||
example = "socks5://address.com:1234";
|
||||
description = ''
|
||||
@@ -821,8 +819,8 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
dataDir = mkOption {
|
||||
type = types.path;
|
||||
dataDir = lib.mkOption {
|
||||
type = lib.types.path;
|
||||
default = "/var/lib/syncthing";
|
||||
example = "/home/yourUser";
|
||||
description = ''
|
||||
@@ -832,15 +830,15 @@ in
|
||||
|
||||
configDir =
|
||||
let
|
||||
cond = versionAtLeast config.system.stateVersion "19.03";
|
||||
cond = lib.versionAtLeast config.system.stateVersion "19.03";
|
||||
in
|
||||
mkOption {
|
||||
type = types.path;
|
||||
lib.mkOption {
|
||||
type = lib.types.path;
|
||||
description = ''
|
||||
The path where the settings and keys will exist.
|
||||
'';
|
||||
default = cfg.dataDir + optionalString cond "/.config/syncthing";
|
||||
defaultText = literalMD ''
|
||||
default = cfg.dataDir + lib.optionalString cond "/.config/syncthing";
|
||||
defaultText = lib.literalMD ''
|
||||
* if `stateVersion >= 19.03`:
|
||||
|
||||
config.${opt.dataDir} + "/.config/syncthing"
|
||||
@@ -850,17 +848,17 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
databaseDir = mkOption {
|
||||
type = types.path;
|
||||
databaseDir = lib.mkOption {
|
||||
type = lib.types.path;
|
||||
description = ''
|
||||
The directory containing the database and logs.
|
||||
'';
|
||||
default = cfg.configDir;
|
||||
defaultText = literalExpression "config.${opt.configDir}";
|
||||
defaultText = lib.literalExpression "config.${opt.configDir}";
|
||||
};
|
||||
|
||||
extraFlags = mkOption {
|
||||
type = types.listOf types.str;
|
||||
extraFlags = lib.mkOption {
|
||||
type = lib.types.listOf lib.types.str;
|
||||
default = [ ];
|
||||
example = [ "--reset-deltas" ];
|
||||
description = ''
|
||||
@@ -868,8 +866,8 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
openDefaultPorts = mkOption {
|
||||
type = types.bool;
|
||||
openDefaultPorts = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
example = true;
|
||||
description = ''
|
||||
@@ -883,35 +881,37 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
package = mkPackageOption pkgs "syncthing" { };
|
||||
package = lib.mkPackageOption pkgs "syncthing" { };
|
||||
};
|
||||
};
|
||||
|
||||
imports = [
|
||||
(mkRemovedOptionModule [ "services" "syncthing" "useInotify" ] ''
|
||||
(lib.mkRemovedOptionModule [ "services" "syncthing" "useInotify" ] ''
|
||||
This option was removed because Syncthing now has the inotify functionality included under the name "fswatcher".
|
||||
It can be enabled on a per-folder basis through the web interface.
|
||||
'')
|
||||
(mkRenamedOptionModule
|
||||
(lib.mkRenamedOptionModule
|
||||
[ "services" "syncthing" "extraOptions" ]
|
||||
[ "services" "syncthing" "settings" ]
|
||||
)
|
||||
(mkRenamedOptionModule
|
||||
(lib.mkRenamedOptionModule
|
||||
[ "services" "syncthing" "folders" ]
|
||||
[ "services" "syncthing" "settings" "folders" ]
|
||||
)
|
||||
(mkRenamedOptionModule
|
||||
(lib.mkRenamedOptionModule
|
||||
[ "services" "syncthing" "devices" ]
|
||||
[ "services" "syncthing" "settings" "devices" ]
|
||||
)
|
||||
(mkRenamedOptionModule
|
||||
(lib.mkRenamedOptionModule
|
||||
[ "services" "syncthing" "options" ]
|
||||
[ "services" "syncthing" "settings" "options" ]
|
||||
)
|
||||
]
|
||||
++
|
||||
map
|
||||
(o: mkRenamedOptionModule [ "services" "syncthing" "declarative" o ] [ "services" "syncthing" o ])
|
||||
(
|
||||
o: lib.mkRenamedOptionModule [ "services" "syncthing" "declarative" o ] [ "services" "syncthing" o ]
|
||||
)
|
||||
[
|
||||
"cert"
|
||||
"key"
|
||||
@@ -924,7 +924,7 @@ in
|
||||
|
||||
###### implementation
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
config = lib.mkIf cfg.enable {
|
||||
assertions = [
|
||||
{
|
||||
assertion = !(cfg.overrideFolders && anyAutoAccept);
|
||||
@@ -941,7 +941,7 @@ in
|
||||
}
|
||||
];
|
||||
|
||||
networking.firewall = mkIf cfg.openDefaultPorts {
|
||||
networking.firewall = lib.mkIf cfg.openDefaultPorts {
|
||||
allowedTCPPorts = [ 22000 ];
|
||||
allowedUDPPorts = [
|
||||
21027
|
||||
@@ -952,7 +952,7 @@ in
|
||||
environment.systemPackages = [ cfg.package ];
|
||||
systemd.packages = [ cfg.package ];
|
||||
|
||||
users.users = mkIf (cfg.systemService && cfg.user == defaultUser) {
|
||||
users.users = lib.mkIf (cfg.systemService && cfg.user == defaultUser) {
|
||||
${defaultUser} = {
|
||||
group = cfg.group;
|
||||
home = cfg.dataDir;
|
||||
@@ -962,14 +962,14 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
users.groups = mkIf (cfg.systemService && cfg.group == defaultGroup) {
|
||||
users.groups = lib.mkIf (cfg.systemService && cfg.group == defaultGroup) {
|
||||
${defaultGroup}.gid = config.ids.gids.syncthing;
|
||||
};
|
||||
|
||||
systemd.services = {
|
||||
# upstream reference:
|
||||
# https://github.com/syncthing/syncthing/blob/main/etc/linux-systemd/system/syncthing%40.service
|
||||
syncthing = mkIf cfg.systemService {
|
||||
syncthing = lib.mkIf cfg.systemService {
|
||||
description = "Syncthing service";
|
||||
after = [ "network.target" ];
|
||||
environment = {
|
||||
@@ -986,13 +986,13 @@ in
|
||||
User = cfg.user;
|
||||
Group = cfg.group;
|
||||
ExecStartPre =
|
||||
mkIf (cfg.cert != null || cfg.key != null)
|
||||
lib.mkIf (cfg.cert != null || cfg.key != null)
|
||||
"+${pkgs.writers.writeBash "syncthing-copy-keys" ''
|
||||
install -dm700 -o ${cfg.user} -g ${cfg.group} ${cfg.configDir}
|
||||
${optionalString (cfg.cert != null) ''
|
||||
${lib.optionalString (cfg.cert != null) ''
|
||||
install -Dm644 -o ${cfg.user} -g ${cfg.group} ${toString cfg.cert} ${cfg.configDir}/cert.pem
|
||||
''}
|
||||
${optionalString (cfg.key != null) ''
|
||||
${lib.optionalString (cfg.key != null) ''
|
||||
install -Dm600 -o ${cfg.user} -g ${cfg.group} ${toString cfg.key} ${cfg.configDir}/key.pem
|
||||
''}
|
||||
''}";
|
||||
@@ -1034,7 +1034,7 @@ in
|
||||
];
|
||||
};
|
||||
};
|
||||
syncthing-init = mkIf (cleanedConfig != { }) {
|
||||
syncthing-init = lib.mkIf (cleanedConfig != { }) {
|
||||
description = "Syncthing configuration updater";
|
||||
requisite = [ "syncthing.service" ];
|
||||
after = [ "syncthing.service" ];
|
||||
@@ -1050,4 +1050,9 @@ in
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
meta.maintainers = with lib.maintainers; [
|
||||
doronbehar
|
||||
seudonym
|
||||
];
|
||||
}
|
||||
|
||||
@@ -1587,6 +1587,7 @@ in
|
||||
sx = runTest ./sx.nix;
|
||||
sympa = runTest ./sympa.nix;
|
||||
syncthing = runTest ./syncthing/main.nix;
|
||||
syncthing-defaults = runTest ./syncthing/defaults.nix;
|
||||
syncthing-folders = runTest ./syncthing/folders.nix;
|
||||
syncthing-guiPassword = runTest ./syncthing/guiPassword.nix;
|
||||
syncthing-guiPasswordFile = runTest ./syncthing/guiPasswordFile.nix;
|
||||
|
||||
@@ -89,12 +89,17 @@
|
||||
else
|
||||
"nixos-firewall-tool open tcp 80";
|
||||
reset = if backend == "firewalld" then "firewall-cmd --reload" else "nixos-firewall-tool reset";
|
||||
# https://github.com/firewalld/firewalld/issues/1571
|
||||
waitForFirewalld = lib.optionalString (backend == "firewalld") ''
|
||||
walled.wait_until_succeeds("firewall-cmd --state")
|
||||
'';
|
||||
in
|
||||
''
|
||||
start_all()
|
||||
|
||||
walled.wait_for_unit("${unit}")
|
||||
walled.wait_for_unit("httpd")
|
||||
${waitForFirewalld}
|
||||
attacker.wait_for_unit("network.target")
|
||||
|
||||
# Local connections should still work.
|
||||
|
||||
@@ -29,6 +29,8 @@
|
||||
|
||||
walled.wait_for_unit("firewalld")
|
||||
walled.wait_for_unit("httpd")
|
||||
# https://github.com/firewalld/firewalld/issues/1571
|
||||
walled.wait_until_succeeds("firewall-cmd --state")
|
||||
|
||||
open.wait_for_unit("network.target")
|
||||
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
{ lib, pkgs, ... }:
|
||||
let
|
||||
expectedPath = "/tmp/syncthing-default";
|
||||
in
|
||||
{
|
||||
name = "syncthing-defaults";
|
||||
meta.maintainers = with pkgs.lib.maintainers; [ seudonym ];
|
||||
|
||||
nodes.machine =
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
environment.systemPackages = [
|
||||
pkgs.libxml2
|
||||
pkgs.curl
|
||||
];
|
||||
services.syncthing = {
|
||||
enable = true;
|
||||
settings.defaults.folder.path = expectedPath;
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
import json
|
||||
|
||||
machine.wait_for_unit("syncthing.service")
|
||||
machine.wait_for_unit("syncthing-init.service")
|
||||
|
||||
# Get the API key by parsing the config.xml
|
||||
api_key = machine.succeed(
|
||||
"xmllint --xpath 'string(configuration/gui/apikey)' /var/lib/syncthing/.config/syncthing/config.xml"
|
||||
).strip()
|
||||
|
||||
# Query the defaults/folder endpoint via Syncthing's REST API
|
||||
config = json.loads(machine.succeed(
|
||||
f"curl -Ssf -H 'X-API-Key: {api_key}' http://127.0.0.1:8384/rest/config/defaults/folder"
|
||||
))
|
||||
|
||||
actual_path = config.get('path')
|
||||
assert actual_path == "${expectedPath}", f"Default folder path is '{actual_path}', but expected '${expectedPath}'"
|
||||
machine.log(f"Success: Default folder path is correctly set to '{actual_path}'")
|
||||
'';
|
||||
}
|
||||
@@ -5,13 +5,13 @@
|
||||
}:
|
||||
mkLibretroCore {
|
||||
core = "mame2003";
|
||||
version = "0-unstable-2026-05-22";
|
||||
version = "0-unstable-2026-06-05";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "libretro";
|
||||
repo = "mame2003-libretro";
|
||||
rev = "099c2ef21c67c463a97b9ab19403e58b31c69740";
|
||||
hash = "sha256-D3/d/TzTjK0t4bh6Il9CMfHTHdYgMsQNE52PxjrXeyE=";
|
||||
rev = "299789ce642b34c2679cfd89d7ecf06b09851bc1";
|
||||
hash = "sha256-FX+onEaaQUdcjAvgsrdW0m408oCSXJEJHQncrN2Uk/Y=";
|
||||
};
|
||||
|
||||
# Fix build with GCC 14
|
||||
|
||||
@@ -823,7 +823,7 @@
|
||||
}
|
||||
},
|
||||
"ungoogled-chromium": {
|
||||
"version": "149.0.7827.53",
|
||||
"version": "149.0.7827.102",
|
||||
"deps": {
|
||||
"depot_tools": {
|
||||
"rev": "45dedc4c3b87c982fd846b3dc599b233ed3aff90",
|
||||
@@ -835,16 +835,16 @@
|
||||
"hash": "sha256-oFs7fZAZEs/gQ7X1A4uigo9+Y+iEN9sMMQYwAjEuD04="
|
||||
},
|
||||
"ungoogled-patches": {
|
||||
"rev": "149.0.7827.53-1",
|
||||
"hash": "sha256-j4maEZiU38tqs57cTmg8OhIAAQcT+liWU0fDA7GMZHM="
|
||||
"rev": "149.0.7827.102-1",
|
||||
"hash": "sha256-I2yrFav9r+vfkKfCpa71F8amzApGViVT8Enlmukwe7s="
|
||||
},
|
||||
"npmHash": "sha256-pF0JtwFpPC4/fodbhSJnQKkczA9WlDg4VqEAy9aDVLg="
|
||||
},
|
||||
"DEPS": {
|
||||
"src": {
|
||||
"url": "https://chromium.googlesource.com/chromium/src.git",
|
||||
"rev": "9d2c8156a72129edca4785abb98866fad60ea338",
|
||||
"hash": "sha256-RPFeHTWAeJUzbWU7QyRPmT3sqf3bAEuJ7/IJ3TP40pA=",
|
||||
"rev": "112f665d98a2fe84b156c74fbea2aed742f16c15",
|
||||
"hash": "sha256-75PYsss5Qob493WCc28XHncjFIlvUr2HQx79w5UmK/k=",
|
||||
"recompress": true
|
||||
},
|
||||
"src/third_party/clang-format/script": {
|
||||
@@ -914,8 +914,8 @@
|
||||
},
|
||||
"src/third_party/angle": {
|
||||
"url": "https://chromium.googlesource.com/angle/angle.git",
|
||||
"rev": "ded782bca9d5f165d1c4a70124cdc5384043a8b3",
|
||||
"hash": "sha256-7+Hhx/V554hO3zzGuIZswkaRVDElz7ost7vbnf2wyZc="
|
||||
"rev": "4b8c7f0f321952bba4f81056b4aa57d0d6428642",
|
||||
"hash": "sha256-ADG0WfkeFRq4NF0m+s3a/N5+u3q4ApExuWUnV3m5uAI="
|
||||
},
|
||||
"src/third_party/angle/third_party/glmark2/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/glmark2/glmark2",
|
||||
@@ -954,8 +954,8 @@
|
||||
},
|
||||
"src/third_party/dawn": {
|
||||
"url": "https://dawn.googlesource.com/dawn.git",
|
||||
"rev": "1815a06195d9c74ac737a96f87c05111926e04f8",
|
||||
"hash": "sha256-71KbW0w60VB67+HM48WpOo18hrVId4/4QBDl+xl5pgo="
|
||||
"rev": "c1179de12ec3ed8feb91e922f12a90ae33f4a8cf",
|
||||
"hash": "sha256-VFEBqbSsn/3jqRGJgTM/r5DEtfhvTOIfS9fGIKzYo9I="
|
||||
},
|
||||
"src/third_party/dawn/third_party/glfw3/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/glfw/glfw",
|
||||
@@ -1374,8 +1374,8 @@
|
||||
},
|
||||
"src/third_party/libyuv": {
|
||||
"url": "https://chromium.googlesource.com/libyuv/libyuv.git",
|
||||
"rev": "a7849e8a5e9c996bef2332efae897e7301055a20",
|
||||
"hash": "sha256-ftOTwWULKNplqjQQ9oM9t+PU3S6/ySDOBoE5E/HWuHg="
|
||||
"rev": "644251f252a84bf8ce91ff0aca86a9b16b069ab8",
|
||||
"hash": "sha256-DsoOY8bg0sPOF8tF67Gk7fRqdQzG1hc9fVMlZVjKWU4="
|
||||
},
|
||||
"src/third_party/lss": {
|
||||
"url": "https://chromium.googlesource.com/linux-syscall-support.git",
|
||||
@@ -1429,8 +1429,8 @@
|
||||
},
|
||||
"src/third_party/perfetto": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/google/perfetto.git",
|
||||
"rev": "846203c4b3b25f834a0bebc101fa8e1b8f9d0ca9",
|
||||
"hash": "sha256-YOgOau9vNrOOqyUf6WylI/oQ2drCxoW7jnrHt7fAfQM="
|
||||
"rev": "97c58a94bb6495c4e202467fb1c55eaa22b5670f",
|
||||
"hash": "sha256-qtClkWAluLDRZn7yrHLU7qp9szP+/WsiG5JZZzRKd38="
|
||||
},
|
||||
"src/third_party/protobuf-javascript/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/protocolbuffers/protobuf-javascript",
|
||||
@@ -1474,8 +1474,8 @@
|
||||
},
|
||||
"src/third_party/skia": {
|
||||
"url": "https://skia.googlesource.com/skia.git",
|
||||
"rev": "53348aa333da02b77c4b5797e2de722f5abde7d0",
|
||||
"hash": "sha256-Qh0ytA45zP67VQE417iUtjPcJmJmDzcu4BAatyh6p0w="
|
||||
"rev": "92a56ebeef43061f4878aa869aa1f2160265c24c",
|
||||
"hash": "sha256-QEY9Wy2guRuS4CXeXHUhUNigCJWWndnNCbWQmaSYJ/A="
|
||||
},
|
||||
"src/third_party/smhasher/src": {
|
||||
"url": "https://chromium.googlesource.com/external/smhasher.git",
|
||||
@@ -1609,8 +1609,8 @@
|
||||
},
|
||||
"src/third_party/webrtc": {
|
||||
"url": "https://webrtc.googlesource.com/src.git",
|
||||
"rev": "5a7e0ff57a52e12f834d64c57d040d1105ea17f2",
|
||||
"hash": "sha256-V1accCSU6LV5Ixhd+HBOvqZ7GxT57ALsvaF8ABLIXxM="
|
||||
"rev": "e8b4d4c5952a8fb7b35c2a6cba4e8c3de2ea2e1e",
|
||||
"hash": "sha256-94U9URlFGLYe94KCFU0giY9bBbrHNDCBr9GEwbRbOK4="
|
||||
},
|
||||
"src/third_party/wuffs/src": {
|
||||
"url": "https://skia.googlesource.com/external/github.com/google/wuffs-mirror-release-c.git",
|
||||
@@ -1639,8 +1639,8 @@
|
||||
},
|
||||
"src/v8": {
|
||||
"url": "https://chromium.googlesource.com/v8/v8.git",
|
||||
"rev": "5a39b146dd810a52812202fae891281d5dc4db7d",
|
||||
"hash": "sha256-UbX88nE4VyWUm4PvFTOy3mC04MzSdgC006ZpQrEY8cQ="
|
||||
"rev": "16ef80c1f5d3cfade812bd1743952a4cfd480a31",
|
||||
"hash": "sha256-GI0NWA0XYGocxZp3+lPen6BkwaG7X3EDaEWM9rejgkI="
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,4 +16,3 @@ treat_warnings_as_errors=false
|
||||
use_official_google_api_keys=false
|
||||
use_unofficial_version_number=false
|
||||
v8_drumbrake_bounds_checks=true
|
||||
v8_enable_drumbrake=true
|
||||
|
||||
@@ -52,19 +52,7 @@ in
|
||||
pnpm-fixup-state-db' =
|
||||
if pnpm.nodejs-slim or null != null then
|
||||
pnpm-fixup-state-db.override {
|
||||
# FIXME: make npm-config-hook accept nodejs-slim
|
||||
nodejs =
|
||||
let
|
||||
inherit (pnpm) nodejs-slim;
|
||||
in
|
||||
if nodejs-slim ? paths && builtins.isList nodejs-slim.paths then
|
||||
# If nodejs-slim has a list `paths` attribute, it's likely a simlinkJoin
|
||||
nodejs-slim
|
||||
else
|
||||
# Otherwise we need to recreate one by overriding the default one
|
||||
pnpm-fixup-state-db.nodejs.override {
|
||||
inherit nodejs-slim;
|
||||
};
|
||||
inherit (pnpm) nodejs-slim;
|
||||
}
|
||||
else
|
||||
pnpm-fixup-state-db;
|
||||
|
||||
@@ -37,37 +37,44 @@
|
||||
|
||||
attrs:
|
||||
let
|
||||
argsToOverride = args: {
|
||||
name = "${args.name or "${args.pname}-${args.version}"}-source";
|
||||
argsToOverride =
|
||||
args:
|
||||
{
|
||||
name = "${args.name or "${args.pname}-${args.version}"}-source";
|
||||
|
||||
outputs = [ "out" ];
|
||||
outputs = [ "out" ];
|
||||
|
||||
phases = [
|
||||
"unpackPhase"
|
||||
"patchPhase"
|
||||
"installPhase"
|
||||
];
|
||||
separateDebugInfo = false;
|
||||
phases = [
|
||||
"unpackPhase"
|
||||
"patchPhase"
|
||||
"installPhase"
|
||||
];
|
||||
separateDebugInfo = false;
|
||||
|
||||
dontUnpack = lib.warnIf (args.dontUnpack or false
|
||||
) "srcOnly: derivation has dontUnpack set, overriding" false;
|
||||
dontUnpack = lib.warnIf (args.dontUnpack or false
|
||||
) "srcOnly: derivation has dontUnpack set, overriding" false;
|
||||
|
||||
dontInstall = false;
|
||||
installPhase = "cp -pr --reflink=auto -- . $out";
|
||||
dontInstall = false;
|
||||
installPhase = "cp -pr --reflink=auto -- . $out";
|
||||
|
||||
# the original derivation might've set something like outputDev = "lib", but "lib" isn't an output anymore
|
||||
# some things get confused and error if one of these is set to an output that doesn't exist
|
||||
# ex: pkgs/build-support/setup-hooks/multiple-outputs.sh
|
||||
outputDev = "out";
|
||||
outputBin = "out";
|
||||
outputInclude = "out";
|
||||
outputLib = "out";
|
||||
outputDoc = "out";
|
||||
outputDevdoc = "out";
|
||||
outputMan = "out";
|
||||
outputDevman = "out";
|
||||
outputInfo = "out";
|
||||
};
|
||||
# the original derivation might've set something like outputDev = "lib", but "lib" isn't an output anymore
|
||||
# some things get confused and error if one of these is set to an output that doesn't exist
|
||||
# ex: pkgs/build-support/setup-hooks/multiple-outputs.sh
|
||||
outputDev = "out";
|
||||
outputBin = "out";
|
||||
outputInclude = "out";
|
||||
outputLib = "out";
|
||||
outputDoc = "out";
|
||||
outputDevdoc = "out";
|
||||
outputMan = "out";
|
||||
outputDevman = "out";
|
||||
outputInfo = "out";
|
||||
|
||||
}
|
||||
// lib.optionalAttrs (lib.isAttrs args.outputChecks or null) {
|
||||
# If the original derivation includes outputChecks for output we are removing, we need to reset it to an empty check.
|
||||
outputChecks = { };
|
||||
};
|
||||
in
|
||||
|
||||
# If we are passed a derivation (based on stdenv*), we can use overrideAttrs to
|
||||
|
||||
@@ -6,18 +6,18 @@
|
||||
unzip,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "libipasirglucose4";
|
||||
# This library has no version number AFAICT (beyond generally being based on
|
||||
# Glucose 4.x), but it was submitted to the 2017 SAT competition so let's use
|
||||
# that as the version number, I guess.
|
||||
version = "2017";
|
||||
|
||||
libname = pname + stdenv.hostPlatform.extensions.sharedLibrary;
|
||||
libname = finalAttrs.pname + stdenv.hostPlatform.extensions.sharedLibrary;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://baldur.iti.kit.edu/sat-competition-2017/solvers/incremental/glucose-ipasir.zip";
|
||||
sha256 = "0xchgady9vwdh8frmc8swz6va53igp2wj1y9sshd0g7549n87wdj";
|
||||
hash = "sha256-svGDbCLlPNCg1skHycV9cRS1zecasZodgo3v5Jt6kHU=";
|
||||
};
|
||||
nativeBuildInputs = [ unzip ];
|
||||
|
||||
@@ -29,13 +29,13 @@ stdenv.mkDerivation rec {
|
||||
makeFlags = [ "CXX=${stdenv.cc.targetPrefix}c++" ];
|
||||
|
||||
postBuild = ''
|
||||
$CXX -shared -o ${libname} \
|
||||
${lib.optionalString (!stdenv.cc.isClang) "-Wl,-soname,${libname}"} \
|
||||
$CXX -shared -o ${finalAttrs.libname} \
|
||||
${lib.optionalString (!stdenv.cc.isClang) "-Wl,-soname,${finalAttrs.libname}"} \
|
||||
ipasirglucoseglue.o libipasirglucose4.a
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
install -D ${libname} $out/lib/${libname}
|
||||
install -D ${finalAttrs.libname} $out/lib/${finalAttrs.libname}
|
||||
'';
|
||||
|
||||
meta = {
|
||||
@@ -44,4 +44,4 @@ stdenv.mkDerivation rec {
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = with lib.maintainers; [ kini ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -32,15 +32,15 @@ let
|
||||
'';
|
||||
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "acl2";
|
||||
version = "8.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "acl2-devel";
|
||||
repo = "acl2-devel";
|
||||
rev = version;
|
||||
sha256 = "sha256-fF9bbEacwCHP1m/eVgFrTD4Ne7L2mzq0K9vJ1tiy9go=";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-fF9bbEacwCHP1m/eVgFrTD4Ne7L2mzq0K9vJ1tiy9go=";
|
||||
};
|
||||
|
||||
# You can swap this out with any other IPASIR implementation at
|
||||
@@ -58,7 +58,7 @@ stdenv.mkDerivation rec {
|
||||
})
|
||||
|
||||
(replaceVars ./0001-path-changes-for-nix.patch {
|
||||
libipasir = "${libipasir}/lib/${libipasir.libname}";
|
||||
libipasir = "${finalAttrs.libipasir}/lib/${finalAttrs.libipasir.libname}";
|
||||
libssl = "${lib.getLib openssl}/lib/libssl${stdenv.hostPlatform.extensions.sharedLibrary}";
|
||||
libcrypto = "${lib.getLib openssl}/lib/libcrypto${stdenv.hostPlatform.extensions.sharedLibrary}";
|
||||
})
|
||||
@@ -92,7 +92,7 @@ stdenv.mkDerivation rec {
|
||||
glucose
|
||||
minisat
|
||||
abc-verifier
|
||||
libipasir
|
||||
finalAttrs.libipasir
|
||||
z3
|
||||
(python3.withPackages (ps: [ ps.z3-solver ]))
|
||||
];
|
||||
@@ -115,10 +115,10 @@ stdenv.mkDerivation rec {
|
||||
# ACL2 and its books need to be built in place in the out directory because
|
||||
# the proof artifacts are not relocatable. Since ACL2 mostly expects
|
||||
# everything to exist in the original source tree layout, we put it in
|
||||
# $out/share/${pname} and create symlinks in $out/bin as necessary.
|
||||
mkdir -p $out/share/${pname}
|
||||
cp -pR . $out/share/${pname}
|
||||
cd $out/share/${pname}
|
||||
# $out/share/acl2 and create symlinks in $out/bin as necessary.
|
||||
mkdir -p $out/share/acl2
|
||||
cp -pR . $out/share/acl2
|
||||
cd $out/share/acl2
|
||||
'';
|
||||
|
||||
preBuild = "mkdir -p $HOME";
|
||||
@@ -132,19 +132,19 @@ stdenv.mkDerivation rec {
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
ln -s $out/share/${pname}/saved_acl2 $out/bin/${pname}
|
||||
ln -s $out/share/acl2/saved_acl2 $out/bin/acl2
|
||||
''
|
||||
+ lib.optionalString certifyBooks ''
|
||||
ln -s $out/share/${pname}/books/build/cert.pl $out/bin/${pname}-cert
|
||||
ln -s $out/share/${pname}/books/build/clean.pl $out/bin/${pname}-clean
|
||||
ln -s $out/share/acl2/books/build/cert.pl $out/bin/acl2-cert
|
||||
ln -s $out/share/acl2/books/build/clean.pl $out/bin/acl2-clean
|
||||
'';
|
||||
|
||||
preDistPhases = [ (if certifyBooks then "certifyBooksPhase" else "removeBooksPhase") ];
|
||||
|
||||
certifyBooksPhase = ''
|
||||
# Certify the community books
|
||||
pushd $out/share/${pname}/books
|
||||
makeFlags="ACL2=$out/share/${pname}/saved_acl2"
|
||||
pushd $out/share/acl2/books
|
||||
makeFlags="ACL2=$out/share/acl2/saved_acl2"
|
||||
buildFlags="all"
|
||||
buildPhase
|
||||
|
||||
@@ -157,7 +157,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
removeBooksPhase = ''
|
||||
# Delete the community books
|
||||
rm -rf $out/share/${pname}/books
|
||||
rm -rf $out/share/acl2/books
|
||||
'';
|
||||
|
||||
meta = {
|
||||
@@ -172,9 +172,9 @@ stdenv.mkDerivation rec {
|
||||
ACL2 is part of the Boyer-Moore family of provers, for which its authors
|
||||
have received the 2005 ACM Software System Award.
|
||||
|
||||
This package installs the main ACL2 executable ${pname}, as well as the
|
||||
build tools cert.pl and clean.pl, renamed to ${pname}-cert and
|
||||
${pname}-clean.
|
||||
This package installs the main ACL2 executable acl2, as well as the
|
||||
build tools cert.pl and clean.pl, renamed to acl2-cert and
|
||||
acl2-clean.
|
||||
|
||||
''
|
||||
+ (
|
||||
@@ -212,4 +212,4 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -4,13 +4,13 @@
|
||||
fetchurl,
|
||||
}:
|
||||
|
||||
gccStdenv.mkDerivation rec {
|
||||
gccStdenv.mkDerivation (finalAttrs: {
|
||||
pname = "altermime";
|
||||
version = "0.3.11";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pldaniels.com/altermime/altermime-${version}.tar.gz";
|
||||
sha256 = "15zxg6spcmd35r6xbidq2fgcg2nzyv1sbbqds08lzll70mqx4pj7";
|
||||
url = "https://pldaniels.com/altermime/altermime-${finalAttrs.version}.tar.gz";
|
||||
hash = "sha256-R17ScQWH0k8R0A2vpcP234rHnhO4xdVNLqNVdrV5/Zc=";
|
||||
};
|
||||
|
||||
env.NIX_CFLAGS_COMPILE = toString [
|
||||
@@ -36,4 +36,4 @@ gccStdenv.mkDerivation rec {
|
||||
downloadPage = "https://pldaniels.com/altermime/";
|
||||
mainProgram = "altermime";
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -81,7 +81,7 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "amnezia-vpn";
|
||||
version = "4.8.15.4";
|
||||
version = "4.8.18.0";
|
||||
|
||||
__structuredAttrs = true;
|
||||
|
||||
@@ -89,7 +89,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
owner = "amnezia-vpn";
|
||||
repo = "amnezia-client";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-ZUWesEpXb+L7NzL/jkWpS3b4DGq4733T5zc+VXSw9Ic=";
|
||||
hash = "sha256-/A1juZzNWjdShdg41M1nfO3pMukMFzyBjQaZvZjYaJs=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
||||
@@ -3,21 +3,27 @@
|
||||
stdenv,
|
||||
fetchFromGitLab,
|
||||
cmake,
|
||||
nix-update-script,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "arpa2cm";
|
||||
version = "1.0.4";
|
||||
version = "1.0.7";
|
||||
|
||||
__structuredAttrs = true;
|
||||
strictDeps = true;
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "arpa2";
|
||||
repo = "arpa2cm";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-2vb/7UL+uWGrQNh8yOZ3gih5G1/eOp064hF78SDsPGk=";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-JkMZUXqmrVzURVi8BJRsHprD4Jz6l83qhPxnOfq4KE4=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
description = "CMake Module library for the ARPA2 project";
|
||||
longDescription = ''
|
||||
@@ -33,8 +39,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
'';
|
||||
homepage = "https://gitlab.com/arpa2/arpa2cm";
|
||||
license = lib.licenses.bsd2;
|
||||
maintainers = with lib.maintainers; [
|
||||
fufexan
|
||||
];
|
||||
maintainers = with lib.maintainers; [ fufexan ];
|
||||
teams = [ lib.teams.ngi ];
|
||||
};
|
||||
})
|
||||
|
||||
@@ -30,10 +30,12 @@
|
||||
curl,
|
||||
texinfo,
|
||||
texliveSmall,
|
||||
vulkan-headers,
|
||||
glfw,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
version = "3.11";
|
||||
version = "3.12";
|
||||
pname = "asymptote";
|
||||
|
||||
outputs = [
|
||||
@@ -46,7 +48,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/asymptote/${finalAttrs.version}/asymptote-${finalAttrs.version}.src.tgz";
|
||||
hash = "sha256-U36fImIb+E8J7g1E3EVcTqkboZODDx12JKB9RxDX59E=";
|
||||
hash = "sha256-6uwel0Y+8hOjk8OI1GanNHiwgY+UA8liuRJAZZybjxs=";
|
||||
};
|
||||
|
||||
# override with TeX Live containers to avoid building sty, docs from source
|
||||
@@ -111,6 +113,8 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
pyqt5
|
||||
]
|
||||
))
|
||||
vulkan-headers
|
||||
glfw
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isLinux [ libtirpc ];
|
||||
|
||||
|
||||
@@ -5,13 +5,13 @@
|
||||
}:
|
||||
buildGoModule (finalAttrs: {
|
||||
pname = "betula";
|
||||
version = "1.7.0";
|
||||
version = "1.8.0";
|
||||
|
||||
src = fetchFromSourcehut {
|
||||
owner = "~bouncepaw";
|
||||
repo = "betula";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-8iDWWAL8JDZyKl3o0IJsWml410jh3cTPC2AoonvqiTI=";
|
||||
hash = "sha256-cZ7xMtJ6I1lvWllwdNSFzeUsvGXWJnUtUR4iPn3oosc=";
|
||||
};
|
||||
vendorHash = "sha256-HGjaS2Sqsjk/pilt8wtx5Ect8Y8S5638PWEpXCqeZ6w=";
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@ let
|
||||
{
|
||||
x86_64-linux = {
|
||||
name = "BombSquad_Linux_x86_64";
|
||||
hash = "sha256-Su7xEVzgFBl+Q2iFWdIRbyO8lRs8Xd4KabFhycZUVjs=";
|
||||
hash = "sha256-zKZpRsyBCTYDJbTwjaP/HFXfYvD9zBhetUGzriB9754=";
|
||||
};
|
||||
aarch64-linux = {
|
||||
name = "BombSquad_Linux_Arm64";
|
||||
@@ -45,7 +45,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
# Note: This version trails behind the latest version by one since the latest
|
||||
# version sometimes gets replaced for minor updates. The builds in /old/ are
|
||||
# stable.
|
||||
version = "1.7.62";
|
||||
version = "1.7.63";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://files.ballistica.net/bombsquad/builds/old/${archive.name}_${finalAttrs.version}.tar.gz";
|
||||
|
||||
@@ -6,14 +6,14 @@
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "cargo-rdme";
|
||||
version = "1.5.0";
|
||||
version = "1.5.1";
|
||||
|
||||
src = fetchCrate {
|
||||
inherit (finalAttrs) pname version;
|
||||
hash = "sha256-TmV6Fc5vlc4fm9w4+iuxmnonwsEbqoJ3jvpIyQOuxjg=";
|
||||
hash = "sha256-d3WughXxh9cBzy33s3iB75paldZFokGGI1L9yTLGYoc=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-EjIvKf1XgHubvyWPOAjysNH4nD0xqOWYg1FeiPSYh4c=";
|
||||
cargoHash = "sha256-26Poh5lUCYi+a+/E7pOYwilKX+eqRmbRNYRFdVfRSCw=";
|
||||
|
||||
meta = {
|
||||
description = "Cargo command to create the README.md from your crate's documentation";
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
|
||||
python3Packages.buildPythonApplication (finalAttrs: {
|
||||
pname = "daktari";
|
||||
version = "0.0.328";
|
||||
version = "0.0.334";
|
||||
pyproject = true;
|
||||
__structuredAttrs = true;
|
||||
|
||||
@@ -15,7 +15,7 @@ python3Packages.buildPythonApplication (finalAttrs: {
|
||||
owner = "genio-learn";
|
||||
repo = "daktari";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-WTxZTfW4KVACxR3wS9+nDV/pYlCrCu8TBQRVulxqiRo=";
|
||||
hash = "sha256-UmfR64zG7UHTCp1rh0LWoWNqPTaBqrT/eShggrmW2Yg=";
|
||||
};
|
||||
|
||||
patches = [ ./optional-pyclip.patch ];
|
||||
|
||||
@@ -32,8 +32,6 @@ let
|
||||
hash = "sha256-HtB5iCT3d3AprPM+1uNkPkX0v4wSerTJlEu5F4P6pp0=";
|
||||
};
|
||||
};
|
||||
|
||||
src = srcs.${stdenvNoCC.hostPlatform.system} or throwSystem;
|
||||
in
|
||||
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
@@ -49,18 +47,15 @@ stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
strictDeps = true;
|
||||
__structuredAttrs = true;
|
||||
|
||||
inherit src;
|
||||
src = srcs.${stdenvNoCC.hostPlatform.system} or throwSystem;
|
||||
|
||||
sourceRoot = ".";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
dontConfigure = true;
|
||||
dontStrip = true;
|
||||
dontBuild = true;
|
||||
|
||||
doCheck = true;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
@@ -83,7 +78,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
description = "Cognition's Devin Agent CLI";
|
||||
homepage = "https://devin.ai/cli";
|
||||
license = lib.licenses.unfree;
|
||||
sourceProvenance = [ lib.sourceTypes.binaryBytecode ];
|
||||
sourceProvenance = [ lib.sourceTypes.binaryNativeCode ];
|
||||
maintainers = with lib.maintainers; [
|
||||
ethancedwards8
|
||||
nhshah15
|
||||
|
||||
@@ -7,16 +7,16 @@
|
||||
|
||||
buildNpmPackage (finalAttrs: {
|
||||
pname = "dotenvx";
|
||||
version = "1.71.0";
|
||||
version = "1.71.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dotenvx";
|
||||
repo = "dotenvx";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-nnzjPyxqAu7r4rKkTEaQsHdORnVo6dqwG38ALjjmZMs=";
|
||||
hash = "sha256-51mmOF03j+JpyE4fyoqmZdgHtAOPhdEQiUTTATPFujM=";
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-XMNpCgFVphdfdAWjclqjpGyhggbNm6A/RdIAy/Ga9po=";
|
||||
npmDepsHash = "sha256-3+Dn4XE5BH3QfeHVILLP/3ZESmhbYuzfT6IAIOLCJkQ=";
|
||||
|
||||
dontNpmBuild = true;
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
python3.pkgs.buildPythonApplication (finalAttrs: {
|
||||
pname = "errbot";
|
||||
version = "6.2.0";
|
||||
version = "6.2.1";
|
||||
|
||||
pyproject = true;
|
||||
|
||||
@@ -14,7 +14,7 @@ python3.pkgs.buildPythonApplication (finalAttrs: {
|
||||
owner = "errbotio";
|
||||
repo = "errbot";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-UdqzBrlcb9NkuVo8ChADJmaKevadoGLyZUrckStb5ko=";
|
||||
hash = "sha256-ufJUcQUn+BbfnYRXqLlThis70sY5VLdsZlag6390wqs=";
|
||||
};
|
||||
|
||||
build-system = with python3.pkgs; [
|
||||
|
||||
@@ -6,16 +6,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "evtx";
|
||||
version = "0.11.2";
|
||||
version = "0.12.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "omerbenamram";
|
||||
repo = "evtx";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-LVGw/u5xq+m96zSMPbQDpMnfMHq7FyQnzkmGMUMVgwM=";
|
||||
hash = "sha256-zmXRUA2+x697AptONn5VUVySp4zz+VHwt8dqd6pJBGI=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-RnuWlfmzOZzOMfeKo8tv9I4elLQgpn9IbVa0EpYGnI0=";
|
||||
cargoHash = "sha256-5Jw+zem0XLLvn3tELXk8vTnH2zvUr82qFx9QUYUwXyY=";
|
||||
|
||||
postPatch = ''
|
||||
# CLI tests will fail in the sandbox
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
--- a/src/firewall-applet.in
|
||||
+++ b/src/firewall-applet.in
|
||||
@@ -59,14 +59,8 @@
|
||||
|
||||
NM_CONNECTION_EDITOR = ""
|
||||
for binary in [
|
||||
- "/usr/bin/systemsettings",
|
||||
- "/bin/systemsettings",
|
||||
- "/usr/bin/nm-connection-editor",
|
||||
- "/bin/nm-connection-editor",
|
||||
- "/usr/bin/kde5-nm-connection-editor",
|
||||
- "/bin/kde5-nm-connection-editor",
|
||||
- "/usr/bin/kde-nm-connection-editor",
|
||||
- "/bin/kde-nm-connection-editor",
|
||||
+ "/run/current-system/sw/bin/systemsettings",
|
||||
+ "/run/current-system/sw/bin/nm-connection-editor",
|
||||
]:
|
||||
if os.path.exists(binary):
|
||||
NM_CONNECTION_EDITOR = binary
|
||||
@@ -2,7 +2,6 @@
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
fetchpatch2,
|
||||
autoconf,
|
||||
automake,
|
||||
docbook_xml_dtd_42,
|
||||
@@ -13,14 +12,12 @@
|
||||
intltool,
|
||||
ipset,
|
||||
iptables,
|
||||
kdePackages,
|
||||
kmod,
|
||||
libnotify,
|
||||
librsvg,
|
||||
libxml2,
|
||||
libxslt,
|
||||
networkmanager,
|
||||
networkmanagerapplet,
|
||||
pkg-config,
|
||||
python3,
|
||||
qt6,
|
||||
@@ -46,13 +43,16 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "firewalld";
|
||||
version = "2.4.0";
|
||||
version = "2.4.2";
|
||||
|
||||
__structuredAttrs = true;
|
||||
strictDeps = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "firewalld";
|
||||
repo = "firewalld";
|
||||
rev = "v${finalAttrs.version}";
|
||||
sha256 = "sha256-P48qdgvcF3BQZ5h+HaylHb70ECa2bmEvYiAi9CeH0qs=";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-RUDDUvpGfWEKI+VtC4SBMLKsAHkStV1qAYpHLQbN5HM=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
@@ -61,28 +61,17 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
./specify-localedir.patch
|
||||
|
||||
./gettext-0.25.patch
|
||||
|
||||
# CVE-2026-4948: https://github.com/NixOS/nixpkgs/issues/505280
|
||||
(fetchpatch2 {
|
||||
url = "https://github.com/Prince213/firewalld/commit/e621b4b54be7cd8d77ce549ec17c6f814f9bd337.patch?full_index=1";
|
||||
hash = "sha256-8auXNPVYnNk1UI0jM82IEQrMBhG189/I+DbaXt0VEhc=";
|
||||
})
|
||||
];
|
||||
]
|
||||
++ lib.optional withGui ./nm-connection-editor.patch;
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace config/xmlschema/check.sh \
|
||||
--replace-fail /usr/bin/ ""
|
||||
|
||||
for file in src/{firewall-offline-cmd.in,firewall/config/__init__.py.in} \
|
||||
config/firewall-{applet,config}.desktop.in; do
|
||||
for file in src/{firewall-offline-cmd.in,firewall/config/__init__.py.in}; do
|
||||
substituteInPlace $file \
|
||||
--replace-fail /usr "$out"
|
||||
done
|
||||
''
|
||||
+ lib.optionalString withGui ''
|
||||
substituteInPlace src/firewall-applet.in \
|
||||
--replace-fail "/usr/bin/systemsettings" "${kdePackages.systemsettings}/bin/systemsettings" \
|
||||
--replace-fail "/usr/bin/nm-connection-editor" "${networkmanagerapplet}/bin/nm-connection-editor"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
@@ -162,8 +151,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
'';
|
||||
|
||||
passthru.tests = {
|
||||
firewalld = nixosTests.firewalld;
|
||||
firewall-firewalld = nixosTests.firewall-firewalld;
|
||||
inherit (nixosTests) firewalld firewall-firewalld;
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
||||
@@ -3,6 +3,8 @@ From: r-vdp <ramses@well-founded.dev>
|
||||
Date: Mon, 28 Oct 2024 12:07:51 +0100
|
||||
Subject: [PATCH] Install fwupdplugin to out
|
||||
|
||||
Install plug-ins and libfwupdplugin to $out output, they are not really
|
||||
part of the library.
|
||||
---
|
||||
meson.build | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
@@ -3,6 +3,8 @@ From: r-vdp <ramses@well-founded.dev>
|
||||
Date: Tue, 15 Oct 2024 14:49:53 +0200
|
||||
Subject: [PATCH] Add output for installed tests
|
||||
|
||||
Installed tests are installed to different output we also cannot have
|
||||
fwupd-tests.conf in $out/etc since it would form a cycle.
|
||||
---
|
||||
data/tests/meson.build | 2 +-
|
||||
meson.build | 5 +++--
|
||||
|
||||
@@ -3,6 +3,10 @@ From: r-vdp <ramses@well-founded.dev>
|
||||
Date: Tue, 15 Oct 2024 11:46:38 +0200
|
||||
Subject: [PATCH] Add option for installation sysconfdir
|
||||
|
||||
Since /etc is the domain of NixOS, not Nix, we cannot install files
|
||||
there. Let's install the files to $prefix/etc while still reading them
|
||||
from /etc. NixOS module for fwupd will take care of copying the files
|
||||
appropriately.
|
||||
---
|
||||
data/bios-settings.d/meson.build | 2 +-
|
||||
data/meson.build | 2 +-
|
||||
|
||||
@@ -3,6 +3,7 @@ From: r-vdp <ramses@well-founded.dev>
|
||||
Date: Mon, 28 Oct 2024 12:08:49 +0100
|
||||
Subject: [PATCH] Get the efi app from fwupd-efi
|
||||
|
||||
EFI capsule is located in fwupd-efi now.
|
||||
---
|
||||
meson.build | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
@@ -122,7 +122,7 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "fwupd";
|
||||
version = "2.1.4";
|
||||
version = "2.1.5";
|
||||
|
||||
# libfwupd goes to lib
|
||||
# daemon, plug-ins and libfwupdplugin go to out
|
||||
@@ -140,26 +140,13 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
owner = "fwupd";
|
||||
repo = "fwupd";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-bKBEZR7Wzi9nZYH+KAzh1q+sh2t2Gl3puQmeogNdIsE=";
|
||||
hash = "sha256-DzQ+N99ZmFRqZc2rN6PSqmoIMXUyrE8Kkn+KnT/AWPc=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Install plug-ins and libfwupdplugin to $out output,
|
||||
# they are not really part of the library.
|
||||
./0001-Install-fwupdplugin-to-out.patch
|
||||
|
||||
# Installed tests are installed to different output
|
||||
# we also cannot have fwupd-tests.conf in $out/etc since it would form a cycle.
|
||||
./0002-Add-output-for-installed-tests.patch
|
||||
|
||||
# Since /etc is the domain of NixOS, not Nix,
|
||||
# we cannot install files there.
|
||||
# Let’s install the files to $prefix/etc
|
||||
# while still reading them from /etc.
|
||||
# NixOS module for fwupd will take take care of copying the files appropriately.
|
||||
./0003-Add-option-for-installation-sysconfdir.patch
|
||||
|
||||
# EFI capsule is located in fwupd-efi now.
|
||||
./0004-Get-the-efi-app-from-fwupd-efi.patch
|
||||
];
|
||||
|
||||
|
||||
@@ -10,13 +10,13 @@
|
||||
|
||||
buildNpmPackage (finalAttrs: {
|
||||
pname = "glitchtip-frontend";
|
||||
version = "6.1.6";
|
||||
version = "6.1.8";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "glitchtip";
|
||||
repo = "glitchtip-frontend";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-CDszzMDvjC8GOg/Nuh1G2Vwq75tOrwBithYOTNubQhM=";
|
||||
hash = "sha256-y8NPj1xjGnGS9yBFaRjFRxLdTGrAq08T9N7cZN5IeSc=";
|
||||
};
|
||||
|
||||
nodejs = nodejs_22;
|
||||
@@ -25,7 +25,7 @@ buildNpmPackage (finalAttrs: {
|
||||
name = "${finalAttrs.pname}-${finalAttrs.version}-npm-deps";
|
||||
inherit (finalAttrs) src;
|
||||
npmDepsFetcherVersion = 3;
|
||||
hash = "sha256-pakglYUPHTB872cVG1IZ3WyYXR5+fFYQr5zvTh2IrMo=";
|
||||
hash = "sha256-AIzPJpNvGV/U71UFAUwOqx8kb31s7LXhMha4bXV+oCU=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -76,14 +76,14 @@ in
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "glitchtip";
|
||||
version = "6.1.6";
|
||||
version = "6.1.8";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "glitchtip";
|
||||
repo = "glitchtip-backend";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-BUWLN3+ob934MgIoDLirY0O8fn6G3zmGA5wuVGPPp7w=";
|
||||
hash = "sha256-4RAZYGoS1tUbcPVv8L0sFWqFfBX05yXKZHFZDbEn0C0=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -17,13 +17,13 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "libtoxcore";
|
||||
version = "0.2.22";
|
||||
version = "0.2.23";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "TokTok";
|
||||
repo = "c-toxcore";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-Oi0AYV252KPF6omiErCXZvQlxkWvubk0eiegc5OMQHM=";
|
||||
hash = "sha256-yII4U+PCkQax7d2ZgTClK+mMypZhVPjEcKDdxHcBf6Y=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
||||
@@ -5,12 +5,12 @@
|
||||
}:
|
||||
buildDartApplication (finalAttrs: {
|
||||
pname = "melos";
|
||||
version = "7.8.1";
|
||||
version = "7.8.2";
|
||||
src = fetchFromGitHub {
|
||||
owner = "invertase";
|
||||
repo = "melos";
|
||||
tag = "melos-v${finalAttrs.version}";
|
||||
hash = "sha256-ApD4F0JljoRKNnRVXZq4c2VFr8ewN1Bf0iKyeC/RF0Q=";
|
||||
hash = "sha256-5HLd0NUaRd0zl8WtTOGX4nHXwzCOOvCQcUW8GmmBqEw=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -4,21 +4,21 @@
|
||||
"dependency": "transitive",
|
||||
"description": {
|
||||
"name": "_fe_analyzer_shared",
|
||||
"sha256": "563c6992eaeda8625f45b87f6a6a0c547df16565d1c93d8271c7c11057710ca7",
|
||||
"sha256": "1b0e6a07425a3e460666e88bf1c949ccc7bb0116ad562ce94a1eca60fe820725",
|
||||
"url": "https://pub.dev"
|
||||
},
|
||||
"source": "hosted",
|
||||
"version": "101.0.0"
|
||||
"version": "103.0.0"
|
||||
},
|
||||
"analyzer": {
|
||||
"dependency": "transitive",
|
||||
"description": {
|
||||
"name": "analyzer",
|
||||
"sha256": "aa6a9365901532864cae51208f2a6bb18dd01972ebead19c431efc848f60080b",
|
||||
"sha256": "61c04d0c1bfed555c681ea079519933f071a5a026578ff73c4ff0df2d3462e5e",
|
||||
"url": "https://pub.dev"
|
||||
},
|
||||
"source": "hosted",
|
||||
"version": "13.1.0"
|
||||
"version": "13.3.0"
|
||||
},
|
||||
"ansi_styles": {
|
||||
"dependency": "transitive",
|
||||
@@ -134,11 +134,11 @@
|
||||
"dependency": "transitive",
|
||||
"description": {
|
||||
"name": "cli_util",
|
||||
"sha256": "ff6785f7e9e3c38ac98b2fb035701789de90154024a75b6cb926445e83197d1c",
|
||||
"sha256": "5909d2c6b66817222779e1eedc19e0e28b76d1df7bd9856a4792ccb9881df358",
|
||||
"url": "https://pub.dev"
|
||||
},
|
||||
"source": "hosted",
|
||||
"version": "0.4.2"
|
||||
"version": "0.5.1"
|
||||
},
|
||||
"code_builder": {
|
||||
"dependency": "transitive",
|
||||
@@ -200,6 +200,16 @@
|
||||
"source": "hosted",
|
||||
"version": "3.1.9"
|
||||
},
|
||||
"ffi": {
|
||||
"dependency": "transitive",
|
||||
"description": {
|
||||
"name": "ffi",
|
||||
"sha256": "6d7fd89431262d8f3125e81b50d3847a091d846eafcd4fdb88dd06f36d705a45",
|
||||
"url": "https://pub.dev"
|
||||
},
|
||||
"source": "hosted",
|
||||
"version": "2.2.0"
|
||||
},
|
||||
"file": {
|
||||
"dependency": "transitive",
|
||||
"description": {
|
||||
|
||||
@@ -28,7 +28,7 @@ let
|
||||
in
|
||||
python3Packages.buildPythonApplication (finalAttrs: {
|
||||
pname = "mistral-vibe";
|
||||
version = "2.13.0";
|
||||
version = "2.14.1";
|
||||
pyproject = true;
|
||||
__structuredAttrs = true;
|
||||
|
||||
@@ -36,7 +36,7 @@ python3Packages.buildPythonApplication (finalAttrs: {
|
||||
owner = "mistralai";
|
||||
repo = "mistral-vibe";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-N4VkqsqcjJfRJwShs5JGyoeGXgc8Ioa0M3UZbO68z0A=";
|
||||
hash = "sha256-Mkz4COMQDQvMZ5rKOYLsIUWFcZfI/dUqpf8z/23YDrY=";
|
||||
};
|
||||
|
||||
build-system = with python3Packages; [
|
||||
@@ -70,6 +70,7 @@ python3Packages.buildPythonApplication (finalAttrs: {
|
||||
httpcore
|
||||
httpx
|
||||
httpx-sse
|
||||
humanize
|
||||
idna
|
||||
importlib-metadata
|
||||
jaraco-classes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
buildNpmPackage,
|
||||
lib,
|
||||
nodejs,
|
||||
nodejs-slim,
|
||||
pnpm,
|
||||
tests,
|
||||
}:
|
||||
@@ -11,12 +11,13 @@ buildNpmPackage {
|
||||
|
||||
src = ./src;
|
||||
|
||||
inherit nodejs;
|
||||
nodejs = nodejs-slim;
|
||||
nativeBuildInputs = lib.optional (builtins.hasAttr "npm" nodejs-slim) nodejs-slim.npm;
|
||||
|
||||
npmDepsHash = "sha256-um6a4pEtPtdxHBRq9g5ZW20wIQAMjWJ3qF96XuxJg8o=";
|
||||
|
||||
postInstall = ''
|
||||
makeWrapper ${lib.getExe nodejs} $out/bin/pnpm-fixup-state-db \
|
||||
makeWrapper ${lib.getExe nodejs-slim} $out/bin/pnpm-fixup-state-db \
|
||||
--add-flags "$out/lib/node_modules/pnpm-fixup-state-db"
|
||||
'';
|
||||
|
||||
|
||||
@@ -3,13 +3,11 @@
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
makeBinaryWrapper,
|
||||
copyDesktopItems,
|
||||
electron_41,
|
||||
nodejs-slim_24,
|
||||
pnpm_10_29_2,
|
||||
pnpm_10,
|
||||
fetchPnpmDeps,
|
||||
pnpmConfigHook,
|
||||
makeDesktopItem,
|
||||
darwin,
|
||||
nix-update-script,
|
||||
_experimental-update-script-combinators,
|
||||
@@ -22,7 +20,7 @@
|
||||
|
||||
let
|
||||
nodejs-slim = nodejs-slim_24;
|
||||
pnpm = pnpm_10_29_2.override { inherit nodejs-slim; };
|
||||
pnpm = pnpm_10.override { inherit nodejs-slim; };
|
||||
electron = electron_41;
|
||||
appName = "Podman Desktop";
|
||||
in
|
||||
@@ -96,9 +94,6 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
pnpm
|
||||
pnpmConfigHook
|
||||
]
|
||||
++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
|
||||
copyDesktopItems
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isDarwin [
|
||||
darwin.autoSignDarwinBinariesHook
|
||||
];
|
||||
@@ -147,6 +142,13 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
install -Dm644 buildResources/icon.svg "$out/share/icons/hicolor/scalable/apps/podman-desktop.svg"
|
||||
|
||||
# Derive the .desktop entry from upstream to keep it aligned and avoid regressions.
|
||||
install -Dm644 .flatpak.desktop "$out/share/applications/podman-desktop.desktop"
|
||||
substituteInPlace "$out/share/applications/podman-desktop.desktop" \
|
||||
--replace-fail 'Exec=run.sh %U' 'Exec=podman-desktop %U' \
|
||||
--replace-fail 'Icon=io.podman_desktop.PodmanDesktop' 'Icon=podman-desktop'
|
||||
sed -i '/^X-Flatpak=/d' "$out/share/applications/podman-desktop.desktop"
|
||||
|
||||
makeWrapper '${electron}/bin/electron' "$out/bin/podman-desktop" \
|
||||
--add-flags "$out/share/lib/podman-desktop/resources/app.asar" \
|
||||
--set XDG_SESSION_TYPE 'x11' \
|
||||
@@ -159,20 +161,6 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
''
|
||||
);
|
||||
|
||||
# see: https://github.com/podman-desktop/podman-desktop/blob/main/.flatpak.desktop
|
||||
desktopItems = [
|
||||
(makeDesktopItem {
|
||||
name = "podman-desktop";
|
||||
exec = "podman-desktop %U";
|
||||
icon = "podman-desktop";
|
||||
desktopName = appName;
|
||||
genericName = "Desktop client for podman";
|
||||
comment = finalAttrs.meta.description;
|
||||
categories = [ "Utility" ];
|
||||
startupWMClass = appName;
|
||||
})
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "Graphical tool for developing on containers and Kubernetes";
|
||||
homepage = "https://podman-desktop.io";
|
||||
|
||||
@@ -2,12 +2,16 @@
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
installShellFiles,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "rasm";
|
||||
version = "3.2.4bis";
|
||||
|
||||
__structuredAttrs = true;
|
||||
strictDeps = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "EdouardBERGE";
|
||||
repo = "rasm";
|
||||
@@ -15,11 +19,17 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
hash = "sha256-D9V9CqCCy0EYRIX0nr+kwxPH7W2KIIq67jabP7ZzETE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
# by default the EXEC variable contains `rasm.exe`
|
||||
makeFlags = [ "EXEC=rasm" ];
|
||||
|
||||
installPhase = ''
|
||||
install -Dt $out/bin rasm
|
||||
runHook preInstall
|
||||
|
||||
installBin rasm
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = {
|
||||
|
||||
@@ -40,17 +40,17 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "reaper";
|
||||
version = "7.73";
|
||||
version = "7.74";
|
||||
|
||||
src = fetchurl {
|
||||
url = url_for_platform finalAttrs.version stdenv.hostPlatform.qemuArch;
|
||||
hash =
|
||||
if stdenv.hostPlatform.isDarwin then
|
||||
"sha256-iEslm5gmkkCwCfwilgXgRrwpj6D6lNypDZnNIv1ZPKw="
|
||||
"sha256-QxmAag1tPB3bjz68lFsxSlMim06IfjWUTa++rE4fudE="
|
||||
else
|
||||
{
|
||||
x86_64-linux = "sha256-tXyflaxx00SCqjo7xZFOigMwAc0i/i3Jakwr6BuasbQ=";
|
||||
aarch64-linux = "sha256-+fbpuu0iAqEnchKwkct/FmooE0cpBUkSUyI3HCT+Nwg=";
|
||||
x86_64-linux = "sha256-4Mf2q/eJz8djJv5JlrGGAWjivjEriRrkbrfKXd/iS6w=";
|
||||
aarch64-linux = "sha256-zQ4XmFrACfUD04UWs0fYWW+m4L4B1xxe4Rg18xCUemc=";
|
||||
}
|
||||
.${stdenv.hostPlatform.system};
|
||||
};
|
||||
|
||||
@@ -6,16 +6,16 @@
|
||||
|
||||
buildGoModule (finalAttrs: {
|
||||
pname = "ssh-to-age";
|
||||
version = "1.2.0";
|
||||
version = "1.3.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Mic92";
|
||||
repo = "ssh-to-age";
|
||||
rev = finalAttrs.version;
|
||||
sha256 = "sha256-0i3h46lVyCbA4zJdjHM9GyRxZR6IsavpdDG3pdFEGjk=";
|
||||
rev = "v${finalAttrs.version}";
|
||||
sha256 = "sha256-j+X+kZCOmMdNw8LBDoixl8ToRmDjbmRVe7+IGS/2sMg=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-4R+44AM0zS6WyKWfg0TH5OxmrC1c4xN0MSBgaZrWPX4=";
|
||||
vendorHash = "sha256-FveYuYa6C3R50+jdAlU1jorRw/mg482eZ4ZJ8Pu+R0s=";
|
||||
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
|
||||
@@ -18,13 +18,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "stress-ng";
|
||||
version = "0.21.02";
|
||||
version = "0.21.03";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ColinIanKing";
|
||||
repo = "stress-ng";
|
||||
tag = "V${finalAttrs.version}";
|
||||
hash = "sha256-kRyQCuDarSUkJRqYEj3JAii4JeFlruZe+b5Hz81VVdU=";
|
||||
hash = "sha256-gk66OY9QLDRKf4qQuPnRP0jPz+nArLbTKW5sKKiw5gY=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -2530,12 +2530,12 @@ with haskellLib;
|
||||
doJailbreak
|
||||
# 2022-12-02: Hackage release lags behind actual releases: https://github.com/PostgREST/postgrest/issues/2275
|
||||
(overrideSrc rec {
|
||||
version = "14.12";
|
||||
version = "14.13";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "PostgREST";
|
||||
repo = "postgrest";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-9Y14sDjHf51qv78DGIrcoU1S/nSHOhc6lGM9wRlegMs=";
|
||||
hash = "sha256-F34fAoNBcww9n6MsxYTjuBorOMcFzmo8nEj8rRomcrs=";
|
||||
};
|
||||
})
|
||||
];
|
||||
|
||||
@@ -358,13 +358,13 @@
|
||||
|
||||
buildPythonPackage (finalAttrs: {
|
||||
pname = "boto3-stubs";
|
||||
version = "1.43.27";
|
||||
version = "1.43.28";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchPypi {
|
||||
pname = "boto3_stubs";
|
||||
inherit (finalAttrs) version;
|
||||
hash = "sha256-p1ZVLxdk29KeJVq1xFwpEkbEE/u+kEe04IXvDxAQaI0=";
|
||||
hash = "sha256-G4JqUi5Hf70SFprLaFH3mamHmGNEHKhfbBFmvNRx5Fs=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -15,10 +15,13 @@
|
||||
quack-kernels,
|
||||
torch,
|
||||
torch-c-dlpack-ext,
|
||||
|
||||
# passthru
|
||||
nix-update-script,
|
||||
}:
|
||||
buildPythonPackage (finalAttrs: {
|
||||
pname = "flash-attn-4";
|
||||
version = "4.0.0.beta15";
|
||||
version = "4.0.0.beta17";
|
||||
pyproject = true;
|
||||
__structuredAttrs = true;
|
||||
|
||||
@@ -26,7 +29,7 @@ buildPythonPackage (finalAttrs: {
|
||||
owner = "Dao-AILab";
|
||||
repo = "flash-attention";
|
||||
tag = "fa4-v${finalAttrs.version}";
|
||||
hash = "sha256-k6158mEJocKIRS4MQIM+Ih4VMHnXCKJGcykZFi91J2w=";
|
||||
hash = "sha256-DL3qe3sPU/GY/iyPibVXli/lw4U/Ul04XIv0NEQk9ns=";
|
||||
};
|
||||
|
||||
# FA4 is a separate distribution shipped under flash_attn/cute/ with its own pyproject.toml.
|
||||
@@ -55,6 +58,13 @@ buildPythonPackage (finalAttrs: {
|
||||
# No tests
|
||||
doCheck = false;
|
||||
|
||||
passthru.updateScript = nix-update-script {
|
||||
extraArgs = [
|
||||
"--version-regex=fa4-v(.*)"
|
||||
"--version=unstable"
|
||||
];
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "CuTeDSL-based implementation of FlashAttention for Hopper and Blackwell GPUs";
|
||||
homepage = "https://github.com/Dao-AILab/flash-attention/tree/main/flash_attn/cute";
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
|
||||
buildPythonPackage (finalAttrs: {
|
||||
pname = "hydra-core";
|
||||
version = "1.3.2";
|
||||
version = "1.3.3";
|
||||
pyproject = true;
|
||||
__structuredAttrs = true;
|
||||
|
||||
@@ -34,7 +34,7 @@ buildPythonPackage (finalAttrs: {
|
||||
owner = "facebookresearch";
|
||||
repo = "hydra";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-kD4BStnstr5hwyAOxdpPzLAJ9MZqU/CPiHkaD2HnUPI=";
|
||||
hash = "sha256-5+uD3AzkV9MVRUWhYoIPo7D0GozQasEjeCNl8tBAB8c=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -8,14 +8,14 @@
|
||||
|
||||
buildPythonPackage (finalAttrs: {
|
||||
pname = "iamdata";
|
||||
version = "0.1.202606111";
|
||||
version = "0.1.202606121";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cloud-copilot";
|
||||
repo = "iam-data-python";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-1TQlMrNuBiUHB4APdFq2cQE/MAxaZ+P6VF+/q8pzeXQ=";
|
||||
hash = "sha256-d7joiPl5EQaGH0co6SC1ifnjRV7FowFswGFF6mSmIcM=";
|
||||
};
|
||||
|
||||
__darwinAllowLocalNetworking = true;
|
||||
|
||||
@@ -467,8 +467,8 @@ in
|
||||
"sha256-11KpPRxGId76g/I4jXwMQ55kwGEQVsasgvMUXsiLbM4=";
|
||||
|
||||
mypy-boto3-eks =
|
||||
buildMypyBoto3Package "eks" "1.43.1"
|
||||
"sha256-ZC5DCPPLUWIEV9mVAtG/DBhrdIawwrtMBCY/DGB6MvM=";
|
||||
buildMypyBoto3Package "eks" "1.43.28"
|
||||
"sha256-+mB3Dz5wx0uP8LPGZdJOGkjebCAYNPfEHhHybT1Pk98=";
|
||||
|
||||
mypy-boto3-elastic-inference =
|
||||
buildMypyBoto3Package "elastic-inference" "1.36.0"
|
||||
@@ -598,8 +598,8 @@ in
|
||||
"sha256-UHDodWN6MLV54LA31Pc7vlMr7a0tVrmCfVjXl96cjsE=";
|
||||
|
||||
mypy-boto3-healthlake =
|
||||
buildMypyBoto3Package "healthlake" "1.43.0"
|
||||
"sha256-YeeEfYiM8ZJxcmxk6an+uCan9sMzYN4SWiApLaGCyzo=";
|
||||
buildMypyBoto3Package "healthlake" "1.43.28"
|
||||
"sha256-qRmvgKIela1k38muCLMKrGbFWiOjapQPS0oXQ2mPU+s=";
|
||||
|
||||
mypy-boto3-iam =
|
||||
buildMypyBoto3Package "iam" "1.43.2"
|
||||
@@ -938,8 +938,8 @@ in
|
||||
"sha256-K6PcvRVHUGRXbsro9CbPJ9GQQ8mrjsrgU6nr/MXV4vg=";
|
||||
|
||||
mypy-boto3-neptune =
|
||||
buildMypyBoto3Package "neptune" "1.43.0"
|
||||
"sha256-++taPLvX9mWzlCBHtr3pLVPWUT/WcFdtCD73pxoDqjY=";
|
||||
buildMypyBoto3Package "neptune" "1.43.28"
|
||||
"sha256-igWmbkUqAiS+kCoH5DV72SaVD1eaX+70V1HcYnTGXfw=";
|
||||
|
||||
mypy-boto3-neptunedata =
|
||||
buildMypyBoto3Package "neptunedata" "1.43.0"
|
||||
@@ -962,8 +962,8 @@ in
|
||||
"sha256-BUl/wnJKR3TB1YsTCLrJdEoH9Lz8DZ6H94STOOX8gkQ=";
|
||||
|
||||
mypy-boto3-omics =
|
||||
buildMypyBoto3Package "omics" "1.43.25"
|
||||
"sha256-EcyGzTAvrwhS25jx7LrKCa4cKgcO+FvlS41Va0YhOIY=";
|
||||
buildMypyBoto3Package "omics" "1.43.28"
|
||||
"sha256-dlZYG0M6H1b3SyocmFc+HQYn9MX1fryNJo6cIu6paBA=";
|
||||
|
||||
mypy-boto3-opensearch =
|
||||
buildMypyBoto3Package "opensearch" "1.43.16"
|
||||
@@ -1330,8 +1330,8 @@ in
|
||||
"sha256-fDjP/Q8H/yJtC4AWYQv1+hm9b6KnWgTP3uy6LKvqikw=";
|
||||
|
||||
mypy-boto3-support =
|
||||
buildMypyBoto3Package "support" "1.43.0"
|
||||
"sha256-e6w7bGtbIWb/Jj2RSfEWup+zLjONPbYMUpWL0oEHgwo=";
|
||||
buildMypyBoto3Package "support" "1.43.28"
|
||||
"sha256-2smd+BvF4sNeJg7dd/eVzEqL6IXSp/iYyECcqVcMpFs=";
|
||||
|
||||
mypy-boto3-support-app =
|
||||
buildMypyBoto3Package "support-app" "1.43.0"
|
||||
|
||||
@@ -11,12 +11,12 @@
|
||||
|
||||
buildPythonPackage (finalAttrs: {
|
||||
pname = "publicsuffixlist";
|
||||
version = "1.0.2.20260529";
|
||||
version = "1.0.2.20260611";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit (finalAttrs) pname version;
|
||||
hash = "sha256-q50y20Gy9GaW2bTZ5ArPK8Kpl/m2NG3CkO6Xxlxc3+o=";
|
||||
hash = "sha256-zwFR1F4yqo0O7rLHbhQcaPlxVnttEaylk/duiX7SxcY=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
|
||||
buildPythonPackage (finalAttrs: {
|
||||
pname = "pytorch-lightning";
|
||||
version = "2.6.4";
|
||||
version = "2.6.5";
|
||||
pyproject = true;
|
||||
__structuredAttrs = true;
|
||||
|
||||
@@ -32,7 +32,7 @@ buildPythonPackage (finalAttrs: {
|
||||
owner = "Lightning-AI";
|
||||
repo = "pytorch-lightning";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-Qysnr76OCO9eZzhQW5EoGT2hUAYGw/qY+j6dF8XCXC4=";
|
||||
hash = "sha256-j29UvQbm+R/uDqwj3kZrXw5YSbUPlJWZUT8RUPc4QyY=";
|
||||
};
|
||||
|
||||
env.PACKAGE_NAME = "pytorch";
|
||||
|
||||
@@ -9,14 +9,14 @@
|
||||
|
||||
buildPythonPackage (finalAttrs: {
|
||||
pname = "tencentcloud-sdk-python";
|
||||
version = "3.1.112";
|
||||
version = "3.1.114";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "TencentCloud";
|
||||
repo = "tencentcloud-sdk-python";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-uB9WcR2XT9BsCB8D7IWCBcTf4Re6dGGxtuiSJ1Wik/k=";
|
||||
hash = "sha256-j9VOVuCa8XLJ3Ali1fWV7K47fm1xbnTSwtXDHYqevUA=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -41,6 +41,10 @@
|
||||
"man"
|
||||
"out"
|
||||
"static"
|
||||
|
||||
# Filter out outputs that didn't exist on 25.11
|
||||
"npm"
|
||||
"corepack"
|
||||
])
|
||||
&& !(builtins.hasAttr name nodejs)
|
||||
) (builtins.attrNames nodejs-slim)
|
||||
|
||||
@@ -20,8 +20,8 @@ let
|
||||
plasma = import ./plasma { inherit (self) callPackage; };
|
||||
|
||||
sets = [
|
||||
"gear"
|
||||
"frameworks"
|
||||
"gear"
|
||||
"plasma"
|
||||
];
|
||||
|
||||
@@ -81,7 +81,6 @@ let
|
||||
kup = self.callPackage ./misc/kup { };
|
||||
marknote = self.callPackage ./misc/marknote { };
|
||||
mpvqt = self.callPackage ./misc/mpvqt { };
|
||||
oxygen-icons = self.callPackage ./misc/oxygen-icons { };
|
||||
phonon = self.callPackage ./misc/phonon { };
|
||||
phonon-vlc = self.callPackage ./misc/phonon-vlc { };
|
||||
plasma-pass = self.callPackage ./misc/plasma-pass { };
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
kitemmodels = callPackage ./kitemmodels { };
|
||||
kitemviews = callPackage ./kitemviews { };
|
||||
kjobwidgets = callPackage ./kjobwidgets { };
|
||||
kmime = callPackage ./kmime { };
|
||||
knewstuff = callPackage ./knewstuff { };
|
||||
knotifications = callPackage ./knotifications { };
|
||||
knotifyconfig = callPackage ./knotifyconfig { };
|
||||
@@ -64,6 +65,7 @@
|
||||
kxmlgui = callPackage ./kxmlgui { };
|
||||
modemmanager-qt = callPackage ./modemmanager-qt { };
|
||||
networkmanager-qt = callPackage ./networkmanager-qt { };
|
||||
oxygen-icons = callPackage ./oxygen-icons { };
|
||||
prison = callPackage ./prison { };
|
||||
purpose = callPackage ./purpose { };
|
||||
qqc2-desktop-style = callPackage ./qqc2-desktop-style { };
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
mkKdeDerivation,
|
||||
qttools,
|
||||
}:
|
||||
mkKdeDerivation {
|
||||
pname = "kmime";
|
||||
|
||||
extraNativeBuildInputs = [ qttools ];
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
{ mkKdeDerivation }:
|
||||
mkKdeDerivation {
|
||||
pname = "oxygen-icons";
|
||||
|
||||
dontStrip = true;
|
||||
}
|
||||
@@ -735,10 +735,15 @@
|
||||
"MIT"
|
||||
],
|
||||
"kcalendarcore": [
|
||||
"BSD-2-Clause",
|
||||
"BSD-3-Clause",
|
||||
"CC0-1.0",
|
||||
"LGPL-2.0-or-later",
|
||||
"LGPL-3.0-or-later"
|
||||
"LGPL-2.1-only",
|
||||
"LGPL-3.0-only",
|
||||
"LGPL-3.0-or-later",
|
||||
"LicenseRef-KDE-Accepted-LGPL",
|
||||
"MIT"
|
||||
],
|
||||
"kcalutils": [
|
||||
"BSD-3-Clause",
|
||||
@@ -843,6 +848,7 @@
|
||||
"Qt-LGPL-exception-1.1"
|
||||
],
|
||||
"kcrash": [
|
||||
"BSD-2-Clause",
|
||||
"CC0-1.0",
|
||||
"LGPL-2.0-or-later"
|
||||
],
|
||||
@@ -1246,7 +1252,8 @@
|
||||
"LGPL-2.0-or-later",
|
||||
"LGPL-2.1-only",
|
||||
"LGPL-3.0-only",
|
||||
"LicenseRef-KDE-Accepted-LGPL"
|
||||
"LicenseRef-KDE-Accepted-LGPL",
|
||||
"MIT"
|
||||
],
|
||||
"ki18n": [
|
||||
"BSD-3-Clause",
|
||||
@@ -1461,6 +1468,7 @@
|
||||
"BSD-3-Clause",
|
||||
"CC0-1.0",
|
||||
"LGPL-2.1-or-later",
|
||||
"LGPL-3.0-or-later",
|
||||
"MIT"
|
||||
],
|
||||
"kjumpingcube": [
|
||||
@@ -2587,6 +2595,10 @@
|
||||
"LicenseRef-KDE-Accepted-LGPL",
|
||||
"MIT"
|
||||
],
|
||||
"oxygen-icons": [
|
||||
"CC0-1.0",
|
||||
"LGPL-3.0-or-later"
|
||||
],
|
||||
"oxygen-sounds": [
|
||||
"BSD-2-Clause",
|
||||
"CC-BY-3.0",
|
||||
@@ -2982,6 +2994,7 @@
|
||||
"MIT"
|
||||
],
|
||||
"purpose": [
|
||||
"BSD-2-Clause",
|
||||
"CC0-1.0",
|
||||
"GPL-2.0-or-later",
|
||||
"LGPL-2.0-or-later",
|
||||
@@ -3135,6 +3148,7 @@
|
||||
"BSD-3-Clause",
|
||||
"CC0-1.0",
|
||||
"GPL-2.0-only",
|
||||
"GPL-3.0-or-later",
|
||||
"LGPL-2.0-or-later",
|
||||
"LGPL-2.1-or-later",
|
||||
"MIT"
|
||||
|
||||
@@ -1,362 +1,372 @@
|
||||
{
|
||||
"attica": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/attica-6.26.0.tar.xz",
|
||||
"hash": "sha256-6y09LYsSwqtNGSxK5vB7AYikCqACswVttjabR7L535Y="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/attica-6.27.0.tar.xz",
|
||||
"hash": "sha256-jz09YeyKdFbbinXKqAGi5fXgRnKL0kCgA+cbiBMJOuQ="
|
||||
},
|
||||
"baloo": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/baloo-6.26.0.tar.xz",
|
||||
"hash": "sha256-cC9bhoqu9IFTxsOCgRGzszVAMHlJGo83BD69icaZWzA="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/baloo-6.27.0.tar.xz",
|
||||
"hash": "sha256-ayJhGL3ijoEhf4zWEp9uJMXUIr16Mi/mguWSsCi3Lbc="
|
||||
},
|
||||
"bluez-qt": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/bluez-qt-6.26.0.tar.xz",
|
||||
"hash": "sha256-6+swHq627GcpsnlpVWg5FlulguviQrQs3nHI+qgNY98="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/bluez-qt-6.27.0.tar.xz",
|
||||
"hash": "sha256-PiLB9x89k/VywqESbtwqoWFR+LrRD58d235B3Tcq7nA="
|
||||
},
|
||||
"breeze-icons": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/breeze-icons-6.26.0.tar.xz",
|
||||
"hash": "sha256-ThI/rFEd+rK3xQWFeEmlzs+sLOYZTjIwxRzuwxZ2sG4="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/breeze-icons-6.27.0.tar.xz",
|
||||
"hash": "sha256-vIwjN4AoN/8YCSaajkxDEbk+fpDHirT+KobPUwD/1BQ="
|
||||
},
|
||||
"extra-cmake-modules": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/extra-cmake-modules-6.26.0.tar.xz",
|
||||
"hash": "sha256-9OENnUWq+1Jz6ZYZYED05CDwvEBxwggoKq6U2a2OF0M="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/extra-cmake-modules-6.27.0.tar.xz",
|
||||
"hash": "sha256-87WvV4AXpqDxJ/scMWCdsuTwFumbkA1aEfb/tsVQBqM="
|
||||
},
|
||||
"frameworkintegration": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/frameworkintegration-6.26.0.tar.xz",
|
||||
"hash": "sha256-hOu605tVnicbzsSBfrqRJJA8pmCtT1w/c/IaX0oyBi0="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/frameworkintegration-6.27.0.tar.xz",
|
||||
"hash": "sha256-Ve7+jrxnoEDmTHVIInbCmmnQxYd7ezZ09MekAjjG1Ew="
|
||||
},
|
||||
"kapidox": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kapidox-6.26.0.tar.xz",
|
||||
"hash": "sha256-be8hYA76d3rt2OrJdmTg49VfstwImFWebHu6/ah+Fu8="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kapidox-6.27.0.tar.xz",
|
||||
"hash": "sha256-qC+dLkofqnH2MwksKalZ4t7hoXLNJUZc9KBMU4igUCI="
|
||||
},
|
||||
"karchive": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/karchive-6.26.0.tar.xz",
|
||||
"hash": "sha256-p/320LjbiNYKpSvMh9jgDZU5GhrTmksqjp8wJ7j/QDU="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/karchive-6.27.0.tar.xz",
|
||||
"hash": "sha256-Q07feN+PTJ8lAA0QetFSDXrBTbWAogIEe/Gcv3c3ZSI="
|
||||
},
|
||||
"kauth": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kauth-6.26.0.tar.xz",
|
||||
"hash": "sha256-5rZWIRTCy3HbbKSP3w6+0t9w4WTEgpWzVDOoCwM4WEc="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kauth-6.27.0.tar.xz",
|
||||
"hash": "sha256-dBk0dl8MnxxTVZggP7rT8blyMcxoOiGKfzn6uUjBPqs="
|
||||
},
|
||||
"kbookmarks": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kbookmarks-6.26.0.tar.xz",
|
||||
"hash": "sha256-guh5QoGHBobann57XdwIOfULFdkZNXSQ1Qj6zLJjUDA="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kbookmarks-6.27.0.tar.xz",
|
||||
"hash": "sha256-daQ3de8DywxXfHDZYFIDeJs8dbeG76F6LowobQxV+5M="
|
||||
},
|
||||
"kcalendarcore": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kcalendarcore-6.26.0.tar.xz",
|
||||
"hash": "sha256-OGvg7uOS2EMra3+v096tld0fx0+BeQkoxYD4HmIioXw="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kcalendarcore-6.27.0.tar.xz",
|
||||
"hash": "sha256-QiiGlyLFu1Mlt8WxBVXmt0e94ONsvUNRnYaB/js4MXM="
|
||||
},
|
||||
"kcmutils": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kcmutils-6.26.0.tar.xz",
|
||||
"hash": "sha256-bQgQZJtxUoEkzfnb3rizxsbTHXhzJco+SiDFNuy98tk="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kcmutils-6.27.0.tar.xz",
|
||||
"hash": "sha256-vrClCiIjD92UFkpdblPqf0y8l7hsurP/KlkuqGY++kE="
|
||||
},
|
||||
"kcodecs": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kcodecs-6.26.0.tar.xz",
|
||||
"hash": "sha256-7h/jvYvNk6hNRBhqX8UDlba/Q90r+JcjOKeq1yqgvLQ="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kcodecs-6.27.0.tar.xz",
|
||||
"hash": "sha256-d/UfdYbotFdTTZXdJBKA6LdHWRXGVuZh3Dex6KdzxZU="
|
||||
},
|
||||
"kcolorscheme": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kcolorscheme-6.26.0.tar.xz",
|
||||
"hash": "sha256-dBSaA3m9i/ZZDTwff4xQNmXg862vwq29RPxrt2TJafE="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kcolorscheme-6.27.0.tar.xz",
|
||||
"hash": "sha256-V04SNQ6hrfJIxSY88Y0UVHbTaGZKMCUU0QZaolY+Hv0="
|
||||
},
|
||||
"kcompletion": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kcompletion-6.26.0.tar.xz",
|
||||
"hash": "sha256-lfceuAfk3kDs3+cjTJw9hEQjFxrFJYiuzKZC942QTkg="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kcompletion-6.27.0.tar.xz",
|
||||
"hash": "sha256-AGhk3LpdX8h7TKXcwSOVOGV6XQUgV7rl07w+ceq6BVE="
|
||||
},
|
||||
"kconfig": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kconfig-6.26.0.tar.xz",
|
||||
"hash": "sha256-i7WqkY2OYOwUCjPbPDKUFNIxncl6FkSzaNpVdhJckrU="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kconfig-6.27.0.tar.xz",
|
||||
"hash": "sha256-4ZcouA5swBdQL8tQ/m1+m1upcnhxrDpOmBGHXgHLX+k="
|
||||
},
|
||||
"kconfigwidgets": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kconfigwidgets-6.26.0.tar.xz",
|
||||
"hash": "sha256-O6vO8irqKT+tDbZfzb9260rJB3vHWO6NrsEICQJC6jw="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kconfigwidgets-6.27.0.tar.xz",
|
||||
"hash": "sha256-QE7QYG37E8xEw23q9fiA7ux1AYroeBJdq/g/Mu/rCn8="
|
||||
},
|
||||
"kcontacts": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kcontacts-6.26.0.tar.xz",
|
||||
"hash": "sha256-3OmvNAUPzwnItOzm31oKvtuvAv6FA5/DccXhHpFEPPA="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kcontacts-6.27.0.tar.xz",
|
||||
"hash": "sha256-3Y1t0EWw/XHHzj/Bi7Fbd+yDFuV/TYPdrmfzpit5bvs="
|
||||
},
|
||||
"kcoreaddons": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kcoreaddons-6.26.0.tar.xz",
|
||||
"hash": "sha256-kv2/q2jlLZ6s9EqZLwHLNk1jlcJEQeL9R91IojsygfY="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kcoreaddons-6.27.0.tar.xz",
|
||||
"hash": "sha256-rQ0BR5aNq9zwEUJc93ZOcaDQz9ww6eNLVh6lupp2gAE="
|
||||
},
|
||||
"kcrash": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kcrash-6.26.0.tar.xz",
|
||||
"hash": "sha256-0F2Thjp0XODUq4zP9oSoSoE+5MvMaMnHpRdRB7EH6TE="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kcrash-6.27.0.tar.xz",
|
||||
"hash": "sha256-+OEIOGPawsBwaLEGFMp9S1LGkg3wIohUz8N+DWV42QI="
|
||||
},
|
||||
"kdav": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kdav-6.26.0.tar.xz",
|
||||
"hash": "sha256-dTWyuabrNeW1Od54Dy0rhGaOuX7sO3ps8U2R++a+3+w="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kdav-6.27.0.tar.xz",
|
||||
"hash": "sha256-4K9BkJYNZfXIR18BIT6k5ooHdj/+qmdm3kt/UFKeBJg="
|
||||
},
|
||||
"kdbusaddons": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kdbusaddons-6.26.0.tar.xz",
|
||||
"hash": "sha256-iUuy4DLG9tm0pYuLJGeGkqn05w6VP/TavaLtTptUMeI="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kdbusaddons-6.27.0.tar.xz",
|
||||
"hash": "sha256-nqN5Ky8cQ9VVFDcmCAP91nbJA+J2j0qsQYYFTlsi1Mo="
|
||||
},
|
||||
"kdeclarative": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kdeclarative-6.26.0.tar.xz",
|
||||
"hash": "sha256-mkZOVg5DbNOmJspqq4lPQUxiEtLei5xajtozviE+ANg="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kdeclarative-6.27.0.tar.xz",
|
||||
"hash": "sha256-sU6BFDrtJe5iQT+cKzdCxVj1tqHabFuSypqVu2NB6WQ="
|
||||
},
|
||||
"kded": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kded-6.26.0.tar.xz",
|
||||
"hash": "sha256-QmXRFiy9f+vxbRA78b2fq4WPo/VPUnl+0JOENr7jR68="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kded-6.27.0.tar.xz",
|
||||
"hash": "sha256-TyQGeRWwWh0MyH4sN/N+sOjEQej8zfBson7nuSMFgkM="
|
||||
},
|
||||
"kdesu": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kdesu-6.26.0.tar.xz",
|
||||
"hash": "sha256-N98zoSNoULa+vXc6Guq1bKWX40dDKSTKWFU2kzfUviQ="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kdesu-6.27.0.tar.xz",
|
||||
"hash": "sha256-qKDFEDy0PcYpUqq3a7flduhkPbsxZy4qwpiCeatXFwA="
|
||||
},
|
||||
"kdnssd": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kdnssd-6.26.0.tar.xz",
|
||||
"hash": "sha256-hDna7ZxLlCp0OT2vI8jZf9qr2BuT3DR/kbu0Wiv4Ukg="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kdnssd-6.27.0.tar.xz",
|
||||
"hash": "sha256-pgdGrKHObP0vvSAUS8SGnSsA0EtZeu2rPdN6NF+wO7Q="
|
||||
},
|
||||
"kdoctools": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kdoctools-6.26.0.tar.xz",
|
||||
"hash": "sha256-P76l3iFQdhMAB/PBjha4cHdP+k/IXdrOIBrAINAkX7Y="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kdoctools-6.27.0.tar.xz",
|
||||
"hash": "sha256-aQJu+GB8tiV+TR8ORuRREw73umeZSoPk+abEbu/Vo/M="
|
||||
},
|
||||
"kfilemetadata": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kfilemetadata-6.26.0.tar.xz",
|
||||
"hash": "sha256-91lCuaPRvgsJEM1Qoiw8Qy7e3cUGhYyNVRHd9UmAUfI="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kfilemetadata-6.27.0.tar.xz",
|
||||
"hash": "sha256-J/aFWCWTlK2E01eqMWghZy7mZIH6hR3fKmEJ9mimxqM="
|
||||
},
|
||||
"kglobalaccel": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kglobalaccel-6.26.0.tar.xz",
|
||||
"hash": "sha256-PxnSLRQ1d+XdzIgxcP4ZpW+PZXZuQcT5wBHE373hemE="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kglobalaccel-6.27.0.tar.xz",
|
||||
"hash": "sha256-57oWAaFZ6nn0JKTVNkdBU5P5Db7aHjIW0CPutUIIN9M="
|
||||
},
|
||||
"kguiaddons": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kguiaddons-6.26.0.tar.xz",
|
||||
"hash": "sha256-g3U0L4UhBPNv1ypocOuXlRg69FFlks1vpzRF6muBMXI="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kguiaddons-6.27.0.tar.xz",
|
||||
"hash": "sha256-KbBDSAxF0+UcV8rHT9g1icx3KckHplhbcogMvwf+r4I="
|
||||
},
|
||||
"kholidays": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kholidays-6.26.0.tar.xz",
|
||||
"hash": "sha256-/E9Gy1u45HZvVQ/hqLQBcx15f89q+ny1NnkEjCFaYL4="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kholidays-6.27.0.tar.xz",
|
||||
"hash": "sha256-hM4qzVVlqVENdJReojEfjAmcsDE5MlXRyNOZZl1XuRQ="
|
||||
},
|
||||
"ki18n": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/ki18n-6.26.0.tar.xz",
|
||||
"hash": "sha256-SEqtSGv6/vbIbY1bJlKSWOZ8dMliUMGsIS3fVoRIx8A="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/ki18n-6.27.0.tar.xz",
|
||||
"hash": "sha256-zYEq6VsOlbQORqULneptGI7sABvpax4aXZYnMOX5vFg="
|
||||
},
|
||||
"kiconthemes": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kiconthemes-6.26.0.tar.xz",
|
||||
"hash": "sha256-7WwMC/7VF91bZGLZschOvnvJnHp1IUkhtZePCG34ZT0="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kiconthemes-6.27.0.tar.xz",
|
||||
"hash": "sha256-b+hvDA/0EET0TR83+a4AG40sGlqLwGxBxD7VdBOK9b4="
|
||||
},
|
||||
"kidletime": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kidletime-6.26.0.tar.xz",
|
||||
"hash": "sha256-8O/WfuDlteuSAOkk6UeMHssXm0o44M8SWzd+f6Nz7wc="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kidletime-6.27.0.tar.xz",
|
||||
"hash": "sha256-LLAZbuO7G2C+m60UtNBN+vU7PQAXzUWQgwNccVkQVRs="
|
||||
},
|
||||
"kimageformats": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kimageformats-6.26.0.tar.xz",
|
||||
"hash": "sha256-wZJVLuGDH9XgmvTjYzuyRybftAMRcMQoUCRoO+2vmXI="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kimageformats-6.27.0.tar.xz",
|
||||
"hash": "sha256-ap9Ak2upRieQY8va6kc7nrc1tTBHsBJMiKyn2xfMq6w="
|
||||
},
|
||||
"kio": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kio-6.26.0.tar.xz",
|
||||
"hash": "sha256-Vn9k25dmmGtVNdiEpdswIDaFwz5n9WiSvO/zDhvVzIo="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kio-6.27.0.tar.xz",
|
||||
"hash": "sha256-/CAbAsJ3o1zoFBSx3n5vhR5GsLXUO+t4STakptxhZ9A="
|
||||
},
|
||||
"kirigami": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kirigami-6.26.0.tar.xz",
|
||||
"hash": "sha256-smh4WycRmKzsf+S2F36v3uiQ4YAkXHFokW2jzP8UJf8="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kirigami-6.27.0.tar.xz",
|
||||
"hash": "sha256-19qnTp/oG2dOVObpef64XT0vQha/bZwCv6osAh/hrC0="
|
||||
},
|
||||
"kitemmodels": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kitemmodels-6.26.0.tar.xz",
|
||||
"hash": "sha256-qZYgEGL/fSH525ct68LZYVdi3bD9naBppCt/17uh5h0="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kitemmodels-6.27.0.tar.xz",
|
||||
"hash": "sha256-9a7HGYsWFWJhbBOe0DflYueuaCK4OfZ8jC4vl2ePxY4="
|
||||
},
|
||||
"kitemviews": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kitemviews-6.26.0.tar.xz",
|
||||
"hash": "sha256-52zJ11YdCq4isHp3VS+83fYcgGa6xc+smVisBlthfnQ="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kitemviews-6.27.0.tar.xz",
|
||||
"hash": "sha256-eihvFHFEcUqp6PVn3VoGOKj7gd+Xo0oBEvcltyqjaXk="
|
||||
},
|
||||
"kjobwidgets": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kjobwidgets-6.26.0.tar.xz",
|
||||
"hash": "sha256-gFe3vRMswrRprEBvlboivDz8JAwQMUhfGfoHKrlC9x4="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kjobwidgets-6.27.0.tar.xz",
|
||||
"hash": "sha256-MUnNB9giBMa/qNhsWQvwySkF4bWwdce1Q1QJFqYdegM="
|
||||
},
|
||||
"kmime": {
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kmime-6.27.0.tar.xz",
|
||||
"hash": "sha256-sMgft+ABrEwFvWyLG7Qar3ZfeeTT6NFxCEWKiQ1xLHY="
|
||||
},
|
||||
"knewstuff": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/knewstuff-6.26.0.tar.xz",
|
||||
"hash": "sha256-lO85B3ulOnL05VW2+UonYsunlzBhnLgKMcVDVkLr4ao="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/knewstuff-6.27.0.tar.xz",
|
||||
"hash": "sha256-jBnfe6WUDDb/FQUXA6zToWxmS0pXCBe2dw+vx6tZ1t4="
|
||||
},
|
||||
"knotifications": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/knotifications-6.26.0.tar.xz",
|
||||
"hash": "sha256-IDOnmIVqnSd25uTO9vPrO8JLk4wNALBrL25xvkThRGo="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/knotifications-6.27.0.tar.xz",
|
||||
"hash": "sha256-7rBn+rAB3SRzWtVujsSAj8p25ezfADz2FCRsmr4cPhk="
|
||||
},
|
||||
"knotifyconfig": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/knotifyconfig-6.26.0.tar.xz",
|
||||
"hash": "sha256-Bi4i9IodpIXULvVrN9sfxQL1+TBYcUg2J9IY81dWCig="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/knotifyconfig-6.27.0.tar.xz",
|
||||
"hash": "sha256-gYYTFtYV5+X/BxQ8HVjZtSytxeAqs4yPJnfAH3HlHyY="
|
||||
},
|
||||
"kpackage": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kpackage-6.26.0.tar.xz",
|
||||
"hash": "sha256-MTzaSjNezbZ7uOL8wVvetZcNsX1VlygsplW/l6mKurU="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kpackage-6.27.0.tar.xz",
|
||||
"hash": "sha256-X6Swf3KcP/a382LTGDdIEPpVsTqSLSskBGLrjvwQReg="
|
||||
},
|
||||
"kparts": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kparts-6.26.0.tar.xz",
|
||||
"hash": "sha256-BJws8Ei0y7/+C+qTV72atTuL5nK6UJsrsFj3ZNIbP1s="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kparts-6.27.0.tar.xz",
|
||||
"hash": "sha256-DCzjnxEOEv8IgsclvudFW5CFSJwS0x60sxZLFQ+43iQ="
|
||||
},
|
||||
"kpeople": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kpeople-6.26.0.tar.xz",
|
||||
"hash": "sha256-vRCSzZkA0O47PQjQlx5mmoLRoRyb7G4jItcTtZGRuHM="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kpeople-6.27.0.tar.xz",
|
||||
"hash": "sha256-WGQHMQNw+af+iHc8kOg+Invsf19vhg32VA1p20JVgdY="
|
||||
},
|
||||
"kplotting": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kplotting-6.26.0.tar.xz",
|
||||
"hash": "sha256-uxIPRG5r/DdhKeA2Y+SzuecUaryUjMxo2hkYeED58YE="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kplotting-6.27.0.tar.xz",
|
||||
"hash": "sha256-svjX5yAYfqgVllPLPIyvDQP7Xz1+zvGyuArAsqd7Q2c="
|
||||
},
|
||||
"kpty": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kpty-6.26.0.tar.xz",
|
||||
"hash": "sha256-dhPCbPqnRlov4ooidizrOCZkFOf0qUoSfAncBihiVVM="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kpty-6.27.0.tar.xz",
|
||||
"hash": "sha256-rQa/2o3wGbsrM1Z8499Tm8wQfg3+AEKB5f+a5GF8bsw="
|
||||
},
|
||||
"kquickcharts": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kquickcharts-6.26.0.tar.xz",
|
||||
"hash": "sha256-rj4HhKKi0Tlst1HMYfQ6Vn4GbWQ0lxJGsaGDZUgaG1I="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kquickcharts-6.27.0.tar.xz",
|
||||
"hash": "sha256-0qUzu/PX8lfpMGAJvDK96kE0bL2OgtBsGIh51fBGA4A="
|
||||
},
|
||||
"krunner": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/krunner-6.26.0.tar.xz",
|
||||
"hash": "sha256-NRnH/hcL4TWaTDjdUmneZMAgjM/rlQZhAC3fpOkvK/A="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/krunner-6.27.0.tar.xz",
|
||||
"hash": "sha256-RtBjIbvMrbjz+7lI/6rF7/GNrZVS/eZ3dh3d25RwIC8="
|
||||
},
|
||||
"kservice": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kservice-6.26.0.tar.xz",
|
||||
"hash": "sha256-+FKFJMyvtqSVli3TJgxEI3eSAWnxxETxFlfqQlWKU7Y="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kservice-6.27.0.tar.xz",
|
||||
"hash": "sha256-NzbG1s04nvyJrby2T+e6Jf/J1i646vY5P0K7hfZVqMc="
|
||||
},
|
||||
"kstatusnotifieritem": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kstatusnotifieritem-6.26.0.tar.xz",
|
||||
"hash": "sha256-iYkUyUgg+ZiJ2HnzPKu7X757n04kpqHZqbRDlIm8MmY="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kstatusnotifieritem-6.27.0.tar.xz",
|
||||
"hash": "sha256-ou7CqYHtnabP/JVcwhpQ3Lx3FBy7hA2RX5LRiXRC0jk="
|
||||
},
|
||||
"ksvg": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/ksvg-6.26.0.tar.xz",
|
||||
"hash": "sha256-86dBLiJ9E7HK/skcG1jdP4aYCr78CLJTW0a+82K0wH4="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/ksvg-6.27.0.tar.xz",
|
||||
"hash": "sha256-aNQ/AUY5rmCXASzdZ72779VCWxfSMi2U9VvisThhPgo="
|
||||
},
|
||||
"ktexteditor": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/ktexteditor-6.26.0.tar.xz",
|
||||
"hash": "sha256-7HvAlPk9UUtfZ1rpXCdN0krMR3adlxYG2HCMyI+BE0E="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/ktexteditor-6.27.0.tar.xz",
|
||||
"hash": "sha256-K3N6YXN+c2UM0LQNniRqGC3MzGyK6BIc/LlBVDPuQa4="
|
||||
},
|
||||
"ktexttemplate": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/ktexttemplate-6.26.0.tar.xz",
|
||||
"hash": "sha256-i4RkPDLK9YgS/sWpEKH7mIZbx/ked4r4YPqYt50P8Dg="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/ktexttemplate-6.27.0.tar.xz",
|
||||
"hash": "sha256-GKkrgCscMTD/Igh/ngSIB73znEFHg16aqhvhhAi5Nhs="
|
||||
},
|
||||
"ktextwidgets": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/ktextwidgets-6.26.0.tar.xz",
|
||||
"hash": "sha256-ZRH5kJ+Q+slR4oc6RN1FG4rHHTgIWmLGWm+1Ao5i2E0="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/ktextwidgets-6.27.0.tar.xz",
|
||||
"hash": "sha256-A8NdiJlVnvwXtPdOhu79g1ja/XqpMRyJucCfezVwB1Y="
|
||||
},
|
||||
"kunitconversion": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kunitconversion-6.26.0.tar.xz",
|
||||
"hash": "sha256-lEBEUwEe7Dc/hY70pYCR0k+627kPlru/RwwJhkbZZ14="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kunitconversion-6.27.0.tar.xz",
|
||||
"hash": "sha256-QE4GQRTJXsoO91m5bKTgul+bi8VjE4V0NYJwlj8/VVQ="
|
||||
},
|
||||
"kuserfeedback": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kuserfeedback-6.26.0.tar.xz",
|
||||
"hash": "sha256-bMGNymWiSvKsJiy5yHYZkXAcgIGnEzSHtOyTYAPz+GQ="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kuserfeedback-6.27.0.tar.xz",
|
||||
"hash": "sha256-WtAiiqSHL2I4uTgn6Z0mOuvMfgv8Tyi6PPOcD9Kt16k="
|
||||
},
|
||||
"kwallet": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kwallet-6.26.0.tar.xz",
|
||||
"hash": "sha256-IyH4WR8fIl09clP66e5h0HidsjGz7q5qX4oUwBNTE4k="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kwallet-6.27.0.tar.xz",
|
||||
"hash": "sha256-2qA6zEDuyHO7RQ/YEWrnx4i4anzuvJ+lVbShZv7reYM="
|
||||
},
|
||||
"kwidgetsaddons": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kwidgetsaddons-6.26.0.tar.xz",
|
||||
"hash": "sha256-ZQRIguMLMF/p+yAzGjVM2BHKnYC1x/n6ciY58zNP5jA="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kwidgetsaddons-6.27.0.tar.xz",
|
||||
"hash": "sha256-TLqGmZMxlgs/3ayO0CzMsx/ElAZCI2AhcTX2vz+8qNk="
|
||||
},
|
||||
"kwindowsystem": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kwindowsystem-6.26.0.tar.xz",
|
||||
"hash": "sha256-X3lit8mG53xdJfpPfQnNiRRLh4Hlfrw3/UXq7BlhuwI="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kwindowsystem-6.27.0.tar.xz",
|
||||
"hash": "sha256-QB5XAKs2UwpgVBBGQmi/cmyJjaQsb3178FqdsAzP4XI="
|
||||
},
|
||||
"kxmlgui": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/kxmlgui-6.26.0.tar.xz",
|
||||
"hash": "sha256-Q4OFXOpaf5omnHLdoVSQuNcMHSPReVCWOTczL8XWt6A="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/kxmlgui-6.27.0.tar.xz",
|
||||
"hash": "sha256-NtXJz4qFGmPBBk1qmYfpYcCGDr0Tls2pkRnlcIR99yE="
|
||||
},
|
||||
"modemmanager-qt": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/modemmanager-qt-6.26.0.tar.xz",
|
||||
"hash": "sha256-vvRWrApZg7zBShWAyw0yoAEkHzgNkBy1A2E4VTgK86U="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/modemmanager-qt-6.27.0.tar.xz",
|
||||
"hash": "sha256-qJOhad1AxDDFHTkyaxrwqrKp1sIK3DTyuOYzLBUvYjQ="
|
||||
},
|
||||
"networkmanager-qt": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/networkmanager-qt-6.26.0.tar.xz",
|
||||
"hash": "sha256-pc/tBq9hVhYff+5W7+FSGm6eJhGTJwafF5mYb5C0MuU="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/networkmanager-qt-6.27.0.tar.xz",
|
||||
"hash": "sha256-qBk4lbQg1Xb6wig4i6j9GyTW8inEO3lj4u1YHvgsrZo="
|
||||
},
|
||||
"oxygen-icons": {
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/oxygen-icons-6.27.0.tar.xz",
|
||||
"hash": "sha256-82oIhOa55VRyHA+MvUDCDtT/Ght9fik8Z9PRHQtyz5o="
|
||||
},
|
||||
"prison": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/prison-6.26.0.tar.xz",
|
||||
"hash": "sha256-BBTdwxC8pe7Pwab51EY7im2BiU20EorEO0+MHhS3O1s="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/prison-6.27.0.tar.xz",
|
||||
"hash": "sha256-dgkD6a5AH4vNue/JrWVImCZC50EaIjyM60HlSRprETU="
|
||||
},
|
||||
"purpose": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/purpose-6.26.0.tar.xz",
|
||||
"hash": "sha256-zHt1mdGsfOftBzUaNddC+sG35VSyCKexyS6FmztK3TA="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/purpose-6.27.0.tar.xz",
|
||||
"hash": "sha256-xONI+lrJkKd7OSYQXGK8Ty3dr411VMQ+5PGN49FqNpk="
|
||||
},
|
||||
"qqc2-desktop-style": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/qqc2-desktop-style-6.26.0.tar.xz",
|
||||
"hash": "sha256-GAX6MTVf+GwCFY/SuNOW/YiDXQHbl9hwAxTEjuM2CYY="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/qqc2-desktop-style-6.27.0.tar.xz",
|
||||
"hash": "sha256-bABfBsX4xKw0kjir8UmZu5FyFaj3uMUTZOL90S6eY1U="
|
||||
},
|
||||
"solid": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/solid-6.26.0.tar.xz",
|
||||
"hash": "sha256-hc+rmweH9ZR4ZhFAmXxIX62rYs7FNf/O8pU9MS9zbEo="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/solid-6.27.0.tar.xz",
|
||||
"hash": "sha256-cKnuabQ1fr+DzIeqYdtv3/jJalniT5Vy5RcW8dPFef4="
|
||||
},
|
||||
"sonnet": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/sonnet-6.26.0.tar.xz",
|
||||
"hash": "sha256-OsThZcCzx57aQWt1S7g3KS81QYihIg8gZfV/aGSJryU="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/sonnet-6.27.0.tar.xz",
|
||||
"hash": "sha256-+Ny7pY00ed+kkiFGJw9uy3zg2YfYLtxZsMfCf/ll9lo="
|
||||
},
|
||||
"syndication": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/syndication-6.26.0.tar.xz",
|
||||
"hash": "sha256-YTC4vJdssHjto0uDPs1VihVrTmvEy1XlesNiyymYukc="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/syndication-6.27.0.tar.xz",
|
||||
"hash": "sha256-4oA266m/lPYkZur/ZvSTBf/53VdqMX3yR01r/lv7x1k="
|
||||
},
|
||||
"syntax-highlighting": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/syntax-highlighting-6.26.0.tar.xz",
|
||||
"hash": "sha256-pOhtFnzV88QxhYQRlFH4kVUcJM1KD/H375XiR2o5xaw="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/syntax-highlighting-6.27.0.tar.xz",
|
||||
"hash": "sha256-y/8AG58A0DL+slQxPs/umm4KCzxajIKn4IBsXxkVpUU="
|
||||
},
|
||||
"threadweaver": {
|
||||
"version": "6.26.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.26/threadweaver-6.26.0.tar.xz",
|
||||
"hash": "sha256-rTLa6vrGIHdZCIXzq8S8rBq7xvrrNMILMvYEBkj33hs="
|
||||
"version": "6.27.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.27/threadweaver-6.27.0.tar.xz",
|
||||
"hash": "sha256-a+idQ7TXz9TOUZ7SS4vPhADJO8/G9C2ZMc0PhSJpvcs="
|
||||
}
|
||||
}
|
||||
@@ -1,18 +0,0 @@
|
||||
{
|
||||
lib,
|
||||
mkKdeDerivation,
|
||||
fetchurl,
|
||||
}:
|
||||
mkKdeDerivation rec {
|
||||
pname = "oxygen-icons";
|
||||
version = "6.2.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kde/stable/oxygen-icons/oxygen-icons-${version}.tar.xz";
|
||||
hash = "sha256-Yf0u9W56+7urA0BSAXJkrQDQdMe+BvCFXUyAWly6z90=";
|
||||
};
|
||||
|
||||
dontStrip = true;
|
||||
|
||||
meta.license = [ lib.licenses.lgpl3Plus ];
|
||||
}
|
||||
@@ -9,13 +9,13 @@
|
||||
|
||||
postgresqlBuildExtension (finalAttrs: {
|
||||
pname = "pg_squeeze";
|
||||
version = "1.9.1";
|
||||
version = "1.9.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cybertec-postgresql";
|
||||
repo = "pg_squeeze";
|
||||
tag = "REL${lib.replaceString "." "_" finalAttrs.version}";
|
||||
hash = "sha256-KbCS3kg2MoxKHl+35UOFCSF4kPPsIMeO7AfwfHZYZVg=";
|
||||
hash = "sha256-gzep34mxV9D9xk/J7JfSTWg8EaM/BJezpM3tt/tlxmM=";
|
||||
};
|
||||
|
||||
passthru.updateScript = nix-update-script {
|
||||
|
||||
Reference in New Issue
Block a user