Merge staging-next into staging

This commit is contained in:
github-actions[bot]
2025-01-09 00:15:01 +00:00
committed by GitHub
106 changed files with 519 additions and 21831 deletions
+6 -6
View File
@@ -606,12 +606,12 @@ in rec {
in
# TODO: As discussed in #356502, deprecated functionality should be removed sometime after 25.11.
lib.warnIf (!escape && lib.oldestSupportedReleaseIsAtLeast 2505) "Using `lib.generators.toPlist` without `escape = true` is deprecated"
''<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
${expr "" v}
</plist>'';
lib.warnIf (!escape && lib.oldestSupportedReleaseIsAtLeast 2505) "Using `lib.generators.toPlist` without `escape = true` is deprecated" ''
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
${expr "" v}
</plist>'';
/**
Translate a simple Nix expression to Dhall notation.
+2 -2
View File
@@ -1748,8 +1748,8 @@ rec {
```
:::
*/
crossLists = warn
''lib.crossLists is deprecated, use lib.mapCartesianProduct instead.
crossLists = warn ''
lib.crossLists is deprecated, use lib.mapCartesianProduct instead.
For example, the following function call:
+1 -1
View File
@@ -475,7 +475,7 @@ rec {
"lib.meta.getExe': The first argument is of type ${typeOf x}, but it should be a derivation instead.";
assert assertMsg (isString y)
"lib.meta.getExe': The second argument is of type ${typeOf y}, but it should be a string instead.";
assert assertMsg (match ".*\/.*" y == null)
assert assertMsg (match ".*/.*" y == null)
"lib.meta.getExe': The second argument \"${y}\" is a nested path with a \"/\" character, but it should just be the name of the executable instead.";
"${getBin x}/bin/${y}";
}
+1 -1
View File
@@ -426,7 +426,7 @@ rec {
# If the part is a named placeholder of the form "<...>" don't escape it.
# It may cause misleading escaping if somebody uses literally "<...>" in their option names.
# This is the trade-off to allow for placeholders in option names.
isNamedPlaceholder = builtins.match "\<(.*)\>";
isNamedPlaceholder = builtins.match "<(.*)>";
escapeOptionPart = part:
if part == "*" || isNamedPlaceholder part != null
then part
+2 -2
View File
@@ -3,12 +3,12 @@
imports = [
{
options.sm = lib.mkOption {
type = lib.types.strMatching "\(.*\)";
type = lib.types.strMatching "\\(.*\\)";
};
}
{
options.sm = lib.mkOption {
type = lib.types.strMatching "\(.*\)";
type = lib.types.strMatching "\\(.*\\)";
};
}
];
+6
View File
@@ -13634,6 +13634,12 @@
githubId = 7910815;
name = "Alex McGrath";
};
lyn = {
name = "Lyn";
matrix = "@lynatic:catgirl.cloud";
github = "lynatic1337";
githubId = 39234676;
};
lyndeno = {
name = "Lyndon Sanche";
email = "lsanche@lyndeno.ca";
+1 -1
View File
@@ -17,7 +17,7 @@ let
offloadCfg = pCfg.offload;
reverseSyncCfg = pCfg.reverseSync;
primeEnabled = syncCfg.enable || reverseSyncCfg.enable || offloadCfg.enable;
busIDType = lib.types.strMatching "([[:print:]]+[\:\@][0-9]{1,3}\:[0-9]{1,2}\:[0-9])?";
busIDType = lib.types.strMatching "([[:print:]]+[:@][0-9]{1,3}:[0-9]{1,2}:[0-9])?";
ibtSupport = useOpenModules || (nvidia_x11.ibtSupport or false);
settingsFormat = pkgs.formats.keyValue { };
in
+1 -1
View File
@@ -24,7 +24,7 @@ let
;
needsEscaping = s: null != builtins.match "[a-zA-Z0-9]+" s;
escapeIfNecessary = s: if needsEscaping s then s else ''"${lib.escape [ "\$" "\"" "\\" "\`" ] s}"'';
escapeIfNecessary = s: if needsEscaping s then s else ''"${lib.escape [ "$" "\"" "\\" "`" ] s}"'';
attrsToText =
attrs:
concatStringsSep "\n" (mapAttrsToList (n: v: ''${n}=${escapeIfNecessary (toString v)}'') attrs)
+2 -2
View File
@@ -106,7 +106,7 @@ let
path = [
config.services.borgbackup.package pkgs.openssh
];
script = "exec " + lib.optionalString cfg.inhibitsSleep ''\
script = "exec " + lib.optionalString cfg.inhibitsSleep ''
${pkgs.systemd}/bin/systemd-inhibit \
--who="borgbackup" \
--what="sleep" \
@@ -183,7 +183,7 @@ let
mode != "none" -> passCommand != null || passphrase != null;
message =
"passCommand or passphrase has to be specified because"
+ '' borgbackup.jobs.${name}.encryption != "none"'';
+ " borgbackup.jobs.${name}.encryption != \"none\"";
};
mkRepoService = name: cfg:
@@ -320,7 +320,8 @@ in
after = [ "network.target" ];
serviceConfig = {
Slice = "kubernetes.slice";
ExecStart = ''${top.package}/bin/kube-apiserver \
ExecStart = ''
${top.package}/bin/kube-apiserver \
--allow-privileged=${lib.boolToString cfg.allowPrivileged} \
--authorization-mode=${lib.concatStringsSep "," cfg.authorizationMode} \
${lib.optionalString (lib.elem "ABAC" cfg.authorizationMode)
@@ -65,7 +65,8 @@ in
path = with pkgs; [ iptables conntrack-tools ];
serviceConfig = {
Slice = "kubernetes.slice";
ExecStart = ''${top.package}/bin/kube-proxy \
ExecStart = ''
${top.package}/bin/kube-proxy \
--bind-address=${cfg.bindAddress} \
${optionalString (top.clusterCidr!=null)
"--cluster-cidr=${top.clusterCidr}"} \
+2 -1
View File
@@ -211,7 +211,8 @@ in {
masterAuth = lib.mkOption {
type = with types; nullOr str;
default = null;
description = ''If the master is password protected (using the requirePass configuration)
description = ''
If the master is password protected (using the requirePass configuration)
it is possible to tell the slave to authenticate before starting the replication synchronization
process, otherwise the master will refuse the slave request.
(STORED PLAIN TEXT, WORLD-READABLE IN NIX STORE)'';
@@ -61,7 +61,8 @@ in
# in sections.
type = attrsOf (attrsOf json.type);
default = { };
example = literalExpression ''{
example = literalExpression ''
{
"log-level-debug" = {
"context.properties" = {
# Output Debug log messages as opposed to only the default level (Notice)
@@ -88,7 +89,8 @@ in
}
];
};
}'';
}
'';
description = ''
Additional configuration for the WirePlumber daemon when run in
single-instance mode (the default in nixpkgs and currently the only
@@ -166,7 +168,8 @@ in
configPackages = mkOption {
type = listOf package;
default = [ ];
example = literalExpression ''[
example = literalExpression ''
[
(pkgs.writeTextDir "share/wireplumber/wireplumber.conf.d/10-bluez.conf" '''
monitor.bluez.properties = {
bluez5.roles = [ a2dp_sink a2dp_source bap_sink bap_source hsp_hs hsp_ag hfp_hf hfp_ag ]
@@ -175,7 +178,8 @@ in
bluez5.hfphsp-backend = "native"
}
''')
]'';
]
'';
description = ''
List of packages that provide WirePlumber configuration, in the form of
`share/wireplumber/*/*.conf` files.
+1
View File
@@ -463,6 +463,7 @@ in
systemd.services.systemd-udevd = {
restartTriggers = [ config.environment.etc."udev/rules.d".source ];
notSocketActivated = true;
stopIfChanged = false;
};
};
+1 -1
View File
@@ -93,7 +93,7 @@ let
# The idea is to match everything that looks like `$term =`
# but not `# $term something something`
# or `# $term = some value` because those are comments.
configContainsSetting = lines: term: (match "^[^#]*\b${term}\b.*=" lines) != null;
configContainsSetting = lines: term: (match "[[:blank:]]*${term}[[:blank:]]*=.*" lines) != null;
warnAboutExtraConfigCollisions = map mkExtraConfigCollisionWarning (
filter (configContainsSetting cfg.extraConfig) automaticallySetPluginSettings
+4 -3
View File
@@ -1080,12 +1080,13 @@ in {
warnings = [
(mkIf
(cfg.registry.enable && versionAtLeast (getVersion cfg.packages.gitlab) "16.0.0" && cfg.registry.package == pkgs.docker-distribution)
''Support for container registries other than gitlab-container-registry has ended since GitLab 16.0.0 and is scheduled for removal in a future release.
''
Support for container registries other than gitlab-container-registry has ended since GitLab 16.0.0 and is scheduled for removal in a future release.
Please back up your data and migrate to the gitlab-container-registry package.''
)
(mkIf
(versionAtLeast (getVersion cfg.packages.gitlab) "16.2.0" && versionOlder (getVersion cfg.packages.gitlab) "16.5.0")
''GitLab instances created or updated between versions [15.11.0, 15.11.2] have an incorrect database schema.
(versionAtLeast (getVersion cfg.packages.gitlab) "16.2.0" && versionOlder (getVersion cfg.packages.gitlab) "16.5.0") ''
GitLab instances created or updated between versions [15.11.0, 15.11.2] have an incorrect database schema.
Check the upstream documentation for a workaround: https://docs.gitlab.com/ee/update/versions/gitlab_16_changes.html#undefined-column-error-upgrading-to-162-or-later''
)
];
+1 -1
View File
@@ -36,7 +36,7 @@ let
};
intOrNumberOrRange = lib.types.either lib.types.ints.unsigned (
lib.types.strMatching "[[:digit:]]+(\-[[:digit:]]+)?"
lib.types.strMatching "[[:digit:]]+(-[[:digit:]]+)?"
// {
description = "string containing either a number or a range";
descriptionClass = "conjunction";
@@ -13,7 +13,7 @@ let
name = "goDuration";
description = "Go duration (https://golang.org/pkg/time/#ParseDuration)";
check =
x: types.str.check x && builtins.match "(-?[0-9]+(\.[0-9]+)?(ns|us|µs|ms|s|m|h))+" x != null;
x: types.str.check x && builtins.match "(-?[0-9]+(\\.[0-9]+)?(ns|us|µs|ms|s|m|h))+" x != null;
inherit (types.str) merge;
};
in
@@ -42,8 +42,9 @@ let
StateDirectory = stateDirectory;
User = "ceph";
Group = if daemonType == "osd" then "disk" else "ceph";
ExecStart = ''${ceph.out}/bin/${if daemonType == "rgw" then "radosgw" else "ceph-${daemonType}"} \
-f --cluster ${clusterName} --id ${daemonId}'';
ExecStart = ''
${ceph.out}/bin/${if daemonType == "rgw" then "radosgw" else "ceph-${daemonType}"} \
-f --cluster ${clusterName} --id ${daemonId}'';
} // lib.optionalAttrs (daemonType == "osd") {
ExecStartPre = "${ceph.lib}/libexec/ceph/ceph-osd-prestart.sh --id ${daemonId} --cluster ${clusterName}";
RestartSec = "20s";
@@ -105,19 +105,19 @@ in
};
# Serve json files with content type header application/json
"~ \.json$" = {
"~ \\.json$" = {
extraConfig = ''
add_header Content-Type application/json;
'';
};
"~ \.tar.xz$" = {
"~ \\.tar.xz$" = {
extraConfig = ''
add_header Content-Type application/octet-stream;
'';
};
"~ \.tar.gz$" = {
"~ \\.tar.gz$" = {
extraConfig = ''
add_header Content-Type application/octet-stream;
'';
@@ -119,7 +119,8 @@ in
MAX 0.5 144 7200
MIN 0.5 144 7200
'';
description = ''Configure the ping frequency and retention of the rrd files.
description = ''
Configure the ping frequency and retention of the rrd files.
Once set, changing the interval will require deletion or migration of all
the collected data.'';
};
@@ -33,14 +33,16 @@ in
settings = mkOption {
description = "Configuration for [tinyproxy](https://tinyproxy.github.io/).";
default = { };
example = literalExpression ''{
example = literalExpression ''
{
Port 8888;
Listen 127.0.0.1;
Timeout 600;
Allow 127.0.0.1;
Anonymous = ['"Host"' '"Authorization"'];
ReversePath = '"/example/" "http://www.example.com/"';
}'';
}
'';
type = types.submodule ({name, ...}: {
freeformType = settingsFormat.type;
options = {
@@ -194,7 +194,8 @@ let
allowedIPs = mkOption {
example = [ "10.192.122.3/32" "10.192.124.1/24" ];
type = with types; listOf str;
description = ''List of IP (v4 or v6) addresses with CIDR masks from
description = ''
List of IP (v4 or v6) addresses with CIDR masks from
which this peer is allowed to send incoming traffic and to which
outgoing traffic for this peer is directed. The catch-all 0.0.0.0/0 may
be specified for matching all IPv4 addresses, and ::/0 may be specified
@@ -205,7 +206,8 @@ let
default = null;
example = "demo.wireguard.io:12913";
type = with types; nullOr str;
description = ''Endpoint IP or hostname of the peer, followed by a colon,
description = ''
Endpoint IP or hostname of the peer, followed by a colon,
and then a port number of the peer.'';
};
@@ -213,7 +215,8 @@ let
default = null;
type = with types; nullOr int;
example = 25;
description = ''This is optional and is by default off, because most
description = ''
This is optional and is by default off, because most
users will not need it. It represents, in seconds, between 1 and 65535
inclusive, how often to send an authenticated empty packet to the peer,
for the purpose of keeping a stateful firewall or NAT mapping valid
@@ -127,7 +127,8 @@ let
default = null;
type = with types; nullOr str;
example = "container";
description = ''The pre-existing network namespace in which the
description = ''
The pre-existing network namespace in which the
WireGuard interface is created, and which retains the socket even if the
interface is moved via {option}`interfaceNamespace`. When
`null`, the interface is created in the init namespace.
@@ -139,7 +140,8 @@ let
default = null;
type = with types; nullOr str;
example = "init";
description = ''The pre-existing network namespace the WireGuard
description = ''
The pre-existing network namespace the WireGuard
interface is moved to. The special value `init` means
the init namespace. When `null`, the interface is not
moved.
@@ -262,7 +264,8 @@ let
allowedIPs = mkOption {
example = [ "10.192.122.3/32" "10.192.124.1/24" ];
type = with types; listOf str;
description = ''List of IP (v4 or v6) addresses with CIDR masks from
description = ''
List of IP (v4 or v6) addresses with CIDR masks from
which this peer is allowed to send incoming traffic and to which
outgoing traffic for this peer is directed. The catch-all 0.0.0.0/0 may
be specified for matching all IPv4 addresses, and ::/0 may be specified
@@ -328,7 +331,8 @@ let
default = null;
type = with types; nullOr int;
example = 25;
description = ''This is optional and is by default off, because most
description = ''
This is optional and is by default off, because most
users will not need it. It represents, in seconds, between 1 and 65535
inclusive, how often to send an authenticated empty packet to the peer,
for the purpose of keeping a stateful firewall or NAT mapping valid
+1 -1
View File
@@ -123,7 +123,7 @@ in
service = lib.mkOption {
type = nullOr str;
default = null;
description = "The service on which to perform \<action\> after fetching.";
description = "The service on which to perform \\<action\\> after fetching.";
};
action = lib.mkOption {
+1 -1
View File
@@ -403,7 +403,7 @@ in
}
'';
};
"~* /api/.*\.(jpg|jpeg|png|webp|gif)$" = {
"~* /api/.*\\.(jpg|jpeg|png|webp|gif)$" = {
proxyPass = "http://frigate-api";
recommendedProxySettings = true;
extraConfig = nginxAuthRequest + nginxProxySettings + ''
+2 -2
View File
@@ -367,10 +367,10 @@ in
index = "index.php";
tryFiles = "$uri $uri/ /index.php?$query_string";
};
"~ \.php$".extraConfig = ''
"~ \\.php$".extraConfig = ''
fastcgi_pass unix:${config.services.phpfpm.pools."agorakit".socket};
'';
"~ \.(js|css|gif|png|ico|jpg|jpeg)$" = {
"~ \\.(js|css|gif|png|ico|jpg|jpeg)$" = {
extraConfig = "expires 365d;";
};
};
+1 -1
View File
@@ -328,7 +328,7 @@ in
'';
};
locations."~ \.php$" = {
locations."~ \\.php$" = {
fastcgiParams = {
SERVER_NAME = "$host";
};
+1 -1
View File
@@ -496,7 +496,7 @@ in
return 302 https://$host/dav/;
'';
};
"~ ^(.+\.php)(.*)$" = {
"~ ^(.+\\.php)(.*)$" = {
extraConfig = ''
try_files $fastcgi_script_name =404;
include ${config.services.nginx.package}/conf/fastcgi_params;
@@ -925,7 +925,7 @@ in
};
"~ ^/uploads/short-url/" = proxy { };
"~ ^/secure-media-uploads/" = proxy { };
"~* (fonts|assets|plugins|uploads)/.*\.(eot|ttf|woff|woff2|ico|otf)$".extraConfig =
"~* (fonts|assets|plugins|uploads)/.*\\.(eot|ttf|woff|woff2|ico|otf)$".extraConfig =
cache_1y
+ ''
add_header Access-Control-Allow-Origin *;
+1 -1
View File
@@ -436,7 +436,7 @@ in
extraConfig = "internal;";
};
"~ ^/lib.*\.(js|css|gif|png|ico|jpg|jpeg)$" = {
"~ ^/lib.*\\.(js|css|gif|png|ico|jpg|jpeg)$" = {
extraConfig = "expires 365d;";
};
@@ -239,7 +239,7 @@ in
sendfile off;
'';
};
"~ \.php$" = {
"~ \\.php$" = {
extraConfig = ''
include ${config.services.nginx.package}/conf/fastcgi_params ;
fastcgi_param SCRIPT_FILENAME $request_filename;
@@ -361,7 +361,7 @@ in
sendfile off;
'';
};
"~ \.php$" = {
"~ \\.php$" = {
extraConfig = ''
include ${config.services.nginx.package}/conf/fastcgi_params ;
fastcgi_param SCRIPT_FILENAME $request_filename;
+1 -1
View File
@@ -164,7 +164,7 @@ in
enable = true;
virtualHosts."${cfg.domain}" = {
root = "${cfg.stateDir}/public";
locations."~ \.php$".extraConfig = ''
locations."~ \\.php$".extraConfig = ''
fastcgi_pass unix:${config.services.phpfpm.pools.flarum.socket};
fastcgi_index site.php;
'';
+1 -1
View File
@@ -211,7 +211,7 @@ in
# php files handling
# this regex is mandatory because of the API
locations."~ ^.+?\.php(/.*)?$".extraConfig = ''
locations."~ ^.+?\\.php(/.*)?$".extraConfig = ''
fastcgi_pass unix:${config.services.phpfpm.pools.${cfg.pool}.socket};
fastcgi_split_path_info ^(.+\.php)(/.*)$;
# By default, the variable PATH_INFO is not set under PHP-FPM
+2 -1
View File
@@ -150,7 +150,8 @@ in
User = cfg.user;
Group = cfg.group;
WorkingDirectory = cfg.stateDir;
ExecStart = ''${cfg.package}/bin/galene \
ExecStart = ''
${cfg.package}/bin/galene \
${optionalString (cfg.insecure) "-insecure"} \
-http ${cfg.httpAddress}:${toString cfg.httpPort} \
-turn ${cfg.turnAddress} \
+2 -2
View File
@@ -355,10 +355,10 @@ in {
index = "index.php";
tryFiles = "$uri $uri/ /index.php?$query_string";
};
"~ \.php$".extraConfig = ''
"~ \\.php$".extraConfig = ''
fastcgi_pass unix:${config.services.phpfpm.pools."monica".socket};
'';
"~ \.(js|css|gif|png|ico|jpg|jpeg)$" = {
"~ \\.(js|css|gif|png|ico|jpg|jpeg)$" = {
extraConfig = "expires 365d;";
};
};
+11 -9
View File
@@ -770,15 +770,17 @@ in {
description = ''
Extra options which should be appended to Nextcloud's config.php file.
'';
example = literalExpression '' {
redis = {
host = "/run/redis/redis.sock";
port = 0;
dbindex = 0;
password = "secret";
timeout = 1.5;
};
} '';
example = literalExpression ''
{
redis = {
host = "/run/redis/redis.sock";
port = 0;
dbindex = 0;
password = "secret";
timeout = 1.5;
};
}
'';
};
secretFile = mkOption {
+10 -10
View File
@@ -105,27 +105,27 @@ in
virtualHosts.${cfg.hostname} = {
locations = {
# /etc/nginx/includes/ds-docservice.conf
"~ ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?\/(web-apps\/apps\/api\/documents\/api\.js)$".extraConfig =
"~ ^(\\/[\\d]+\\.[\\d]+\\.[\\d]+[\\.|-][\\d]+)?\\/(web-apps\\/apps\\/api\\/documents\\/api\\.js)$".extraConfig =
''
expires -1;
alias ${cfg.package}/var/www/onlyoffice/documentserver/$2;
'';
"~ ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?\/(web-apps)(\/.*\.json)$".extraConfig = ''
"~ ^(\\/[\\d]+\\.[\\d]+\\.[\\d]+[\\.|-][\\d]+)?\\/(web-apps)(\\/.*\\.json)$".extraConfig = ''
expires 365d;
error_log /dev/null crit;
alias ${cfg.package}/var/www/onlyoffice/documentserver/$2$3;
'';
"~ ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?\/(sdkjs-plugins)(\/.*\.json)$".extraConfig = ''
"~ ^(\\/[\\d]+\\.[\\d]+\\.[\\d]+[\\.|-][\\d]+)?\\/(sdkjs-plugins)(\\/.*\\.json)$".extraConfig = ''
expires 365d;
error_log /dev/null crit;
alias ${cfg.package}/var/www/onlyoffice/documentserver/$2$3;
'';
"~ ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?\/(web-apps|sdkjs|sdkjs-plugins|fonts)(\/.*)$".extraConfig =
"~ ^(\\/[\\d]+\\.[\\d]+\\.[\\d]+[\\.|-][\\d]+)?\\/(web-apps|sdkjs|sdkjs-plugins|fonts)(\\/.*)$".extraConfig =
''
expires 365d;
alias ${cfg.package}/var/www/onlyoffice/documentserver/$2$3;
'';
"~* ^(\/cache\/files.*)(\/.*)".extraConfig = ''
"~* ^(\\/cache\\/files.*)(\\/.*)".extraConfig = ''
alias /var/lib/onlyoffice/documentserver/App_Data$1;
add_header Content-Disposition "attachment; filename*=UTF-8''$arg_filename";
@@ -141,12 +141,12 @@ in
return 410;
}
'';
"~* ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?\/(internal)(\/.*)$".extraConfig = ''
"~* ^(\\/[\\d]+\\.[\\d]+\\.[\\d]+[\\.|-][\\d]+)?\\/(internal)(\\/.*)$".extraConfig = ''
allow 127.0.0.1;
deny all;
proxy_pass http://onlyoffice-docservice/$2$3;
'';
"~* ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?\/(info)(\/.*)$".extraConfig = ''
"~* ^(\\/[\\d]+\\.[\\d]+\\.[\\d]+[\\.|-][\\d]+)?\\/(info)(\\/.*)$".extraConfig = ''
allow 127.0.0.1;
deny all;
proxy_pass http://onlyoffice-docservice/$2$3;
@@ -154,19 +154,19 @@ in
"/".extraConfig = ''
proxy_pass http://onlyoffice-docservice;
'';
"~ ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?(\/doc\/.*)".extraConfig = ''
"~ ^(\\/[\\d]+\\.[\\d]+\\.[\\d]+[\\.|-][\\d]+)?(\\/doc\\/.*)".extraConfig = ''
proxy_pass http://onlyoffice-docservice$2;
proxy_http_version 1.1;
'';
"/${cfg.package.version}/".extraConfig = ''
proxy_pass http://onlyoffice-docservice/;
'';
"~ ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?\/(dictionaries)(\/.*)$".extraConfig = ''
"~ ^(\\/[\\d]+\\.[\\d]+\\.[\\d]+[\\.|-][\\d]+)?\\/(dictionaries)(\\/.*)$".extraConfig = ''
expires 365d;
alias ${cfg.package}/var/www/onlyoffice/documentserver/$2$3;
'';
# /etc/nginx/includes/ds-example.conf
"~ ^(\/welcome\/.*)$".extraConfig = ''
"~ ^(\\/welcome\\/.*)$".extraConfig = ''
expires 365d;
alias ${cfg.package}/var/www/onlyoffice/documentserver-example$1;
index docker.html;
+2 -2
View File
@@ -696,7 +696,7 @@ in
};
# Bypass PeerTube for performance reasons.
locations."~ ^/client/(assets/images/(icons/icon-36x36\.png|icons/icon-48x48\.png|icons/icon-72x72\.png|icons/icon-96x96\.png|icons/icon-144x144\.png|icons/icon-192x192\.png|icons/icon-512x512\.png|logo\.svg|favicon\.png|default-playlist\.jpg|default-avatar-account\.png|default-avatar-account-48x48\.png|default-avatar-video-channel\.png|default-avatar-video-channel-48x48\.png))$" =
locations."~ ^/client/(assets/images/(icons/icon-36x36\\.png|icons/icon-48x48\\.png|icons/icon-72x72\\.png|icons/icon-96x96\\.png|icons/icon-144x144\\.png|icons/icon-192x192\\.png|icons/icon-512x512\\.png|logo\\.svg|favicon\\.png|default-playlist\\.jpg|default-avatar-account\\.png|default-avatar-account-48x48\\.png|default-avatar-video-channel\\.png|default-avatar-video-channel-48x48\\.png))$" =
{
tryFiles = "/client-overrides/$1 /client/$1 $1";
priority = 1310;
@@ -704,7 +704,7 @@ in
extraConfig = nginxCommonHeaders;
};
locations."~ ^/client/(.*\.(js|css|png|svg|woff2|otf|ttf|woff|eot))$" = {
locations."~ ^/client/(.*\\.(js|css|png|svg|woff2|otf|ttf|woff|eot))$" = {
alias = "${cfg.package}/client/dist/$1";
priority = 1320;
extraConfig =
@@ -186,7 +186,7 @@ in
sendfile off;
'';
};
"~ \.php$" = {
"~ \\.php$" = {
extraConfig = ''
include ${config.services.nginx.package}/conf/fastcgi_params ;
fastcgi_param SCRIPT_FILENAME $request_filename;
@@ -305,7 +305,7 @@ in
${cfg.hostName} = {
root = cfg.dataDir;
locations = {
"~ [^/]\.php(/|$)" = {
"~ [^/]\\.php(/|$)" = {
extraConfig = ''
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
if (!-f $document_root$fastcgi_script_name) {
+2 -2
View File
@@ -368,7 +368,7 @@ in {
index = "index.php";
extraConfig = ''try_files $uri $uri/ /index.php?$query_string;'';
};
"~ \.php$" = {
"~ \\.php$" = {
extraConfig = ''
try_files $uri $uri/ /index.php?$query_string;
include ${config.services.nginx.package}/conf/fastcgi_params;
@@ -378,7 +378,7 @@ in {
${optionalString (cfg.nginx.addSSL || cfg.nginx.forceSSL || cfg.nginx.onlySSL || cfg.nginx.enableACME) "fastcgi_param HTTPS on;"}
'';
};
"~ \.(js|css|gif|png|ico|jpg|jpeg)$" = {
"~ \\.(js|css|gif|png|ico|jpg|jpeg)$" = {
extraConfig = "expires 365d;";
};
};
+1 -1
View File
@@ -342,7 +342,7 @@ in
index = "index.html index.htm index.php";
tryFiles = "$uri $uri/ =404";
};
locations."~ \.php$".extraConfig = ''
locations."~ \\.php$".extraConfig = ''
fastcgi_pass unix:${fpm.socket};
fastcgi_index index.php;
'';
@@ -155,7 +155,7 @@ in
};
background = mkOption {
type = types.either types.path (types.strMatching "^#[0-9]\{6\}$");
type = types.either types.path (types.strMatching "^#[0-9]{6}$");
# Manual cannot depend on packages, we are actually setting the default in config below.
defaultText = literalExpression "pkgs.nixos-artwork.wallpapers.simple-dark-gray-bottom.gnomeFilePath";
description = ''
@@ -319,8 +319,8 @@ in
system.extraSystemBuilderCmds =
optionalString
config.system.copySystemConfiguration
''ln -s '${import ../../../lib/from-env.nix "NIXOS_CONFIG" <nixos-config>}' \
config.system.copySystemConfiguration ''
ln -s '${import ../../../lib/from-env.nix "NIXOS_CONFIG" <nixos-config>}' \
"$out/configuration.nix"
'' +
optionalString
+1
View File
@@ -2902,6 +2902,7 @@ let
];
aliases = [ "dbus-org.freedesktop.network1.service" ];
notSocketActivated = true;
stopIfChanged = false;
};
networking.iproute2 = mkIf (cfg.config.addRouteTablesToIPRoute2 && cfg.config.routeTables != { }) {
+2 -1
View File
@@ -193,7 +193,8 @@ in
systemd.services.systemd-resolved = {
wantedBy = [ "sysinit.target" ];
aliases = [ "dbus-org.freedesktop.resolve1.service" ];
restartTriggers = [ config.environment.etc."systemd/resolved.conf".source ];
reloadTriggers = [ config.environment.etc."systemd/resolved.conf".source ];
stopIfChanged = false;
};
environment.etc =
File diff suppressed because it is too large Load Diff
+4 -9
View File
@@ -4,7 +4,6 @@
callPackage,
rustPlatform,
fetchFromGitHub,
cargo-tauri,
gtk4,
nix-update-script,
openssl,
@@ -14,21 +13,17 @@
rustPlatform.buildRustPackage rec {
pname = "tauri";
version = "2.1.1";
version = "2.2.0";
src = fetchFromGitHub {
owner = "tauri-apps";
repo = "tauri";
tag = "tauri-v${version}";
hash = "sha256-HPmViOowP1xAjDJ89YS0BTjNnKI1P0L777ywkqAhhc4=";
hash = "sha256-lkTkRNJIdGMJCkqxpBAM4r3JzO55nCjl2l+1xjsCtRI=";
};
cargoLock = {
lockFile = ./Cargo.lock;
outputHashes = {
"schemars_derive-0.8.21" = "sha256-AmxBKZXm2Eb+w8/hLQWTol5f22uP8UqaIh+LVLbS20g=";
};
};
useFetchCargoVendor = true;
cargoHash = "sha256-fZ3SGF+iIeu9TIyJvKm8vAo2PUT1VREyTKUpcqyC5vo=";
nativeBuildInputs = [ pkg-config ];
+1 -1
View File
@@ -34,7 +34,7 @@ stdenv.mkDerivation (finalAttrs: {
src
;
hash = "sha256-kTr61DFPIIYceB8tZrKFaMG65CZ//djGEOQBLRNPotk=";
hash = "sha256-jrp7epYWnfyqQbNL+XhrO4NvSTt2NOMd/icfbUYLvpA=";
};
nativeBuildInputs = [
+3 -3
View File
@@ -8,16 +8,16 @@
let
argset = {
pname = "chezmoi";
version = "2.56.0";
version = "2.57.0";
src = fetchFromGitHub {
owner = "twpayne";
repo = "chezmoi";
rev = "v${argset.version}";
hash = "sha256-PjbfGWERJmV/vHF9BitsA8Cn9oTcCwJOnUgvTV6v7mg=";
hash = "sha256-fExZr4SOTdaob84ryGGCGuKZoypcRmZ81XI6zxa7KWQ=";
};
vendorHash = "sha256-ACGXJqpELysLRFoWHtCMrAFjdmuYoP+ZpCQZYOd/GoE=";
vendorHash = "sha256-fSOmpDVMIcIIpbdlHPS41u0VHRddyJIQNOLv8/Gwr+Q=";
nativeBuildInputs = [
installShellFiles
+1 -8
View File
@@ -6,8 +6,6 @@
bzip2,
zstd,
stdenv,
apple-sdk_15,
darwinMinVersionHook,
rocksdb,
nix-update-script,
testers,
@@ -55,12 +53,7 @@ rustPlatform.buildRustPackage rec {
zstd
]
++ lib.optional enableJemalloc rust-jemalloc-sys'
++ lib.optional enableLiburing liburing
++ lib.optionals stdenv.hostPlatform.isDarwin [
apple-sdk_15
# aws-lc-sys requires CryptoKit's CommonCrypto, which is available on macOS 10.15+
(darwinMinVersionHook "10.15")
];
++ lib.optional enableLiburing liburing;
env = {
ZSTD_SYS_USE_PKG_CONFIG = true;
+1 -1
View File
@@ -68,7 +68,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Client for the Dynamic Host Configuration Protocol (DHCP)";
homepage = "https://roy.marples.name/projects/dhcpcd";
platforms = platforms.linux ++ platforms.freebsd;
platforms = platforms.linux ++ platforms.freebsd ++ platforms.openbsd;
license = licenses.bsd2;
maintainers = [ ];
mainProgram = "dhcpcd";
+1 -7
View File
@@ -29,8 +29,6 @@
stdenv,
testers,
zlib-ng,
apple-sdk_15,
darwinMinVersionHook,
}:
stdenv.mkDerivation (finalAttrs: {
@@ -81,11 +79,7 @@ stdenv.mkDerivation (finalAttrs: {
speexdsp
zlib-ng
]
++ lib.optionals stdenv.hostPlatform.isLinux [ alsa-lib ]
++ lib.optionals stdenv.hostPlatform.isDarwin [
apple-sdk_15
(darwinMinVersionHook "10.15") # from https://www.dosbox-staging.org/releases/macos/
];
++ lib.optionals stdenv.hostPlatform.isLinux [ alsa-lib ];
outputs = [ "out" "man" ];
+3 -3
View File
@@ -10,16 +10,16 @@
rustPlatform.buildRustPackage rec {
pname = "fzf-make";
version = "0.52.0";
version = "0.55.0";
src = fetchFromGitHub {
owner = "kyu08";
repo = "fzf-make";
rev = "v${version}";
hash = "sha256-KJdGUo7qSMIDJ8jvcBX/cla8pQkB/EGytIP0YzV/3fY=";
hash = "sha256-YPflHIHOnl6j2J60g1K2HjjUVf21P4Tofi65K3FUZxs=";
};
cargoHash = "sha256-nrttuY9x61aE3RJOtbUWZbqOX6ZRyghQSruu5EdX470=";
cargoHash = "sha256-oXxCPuUtzUNYrlqUdksGodITnWt7pGrA8UsNYSzOJVA=";
useFetchCargoVendor = true;
+3 -3
View File
@@ -5,16 +5,16 @@
buildGoModule rec {
pname = "go2rtc";
version = "1.9.7";
version = "1.9.8";
src = fetchFromGitHub {
owner = "AlexxIT";
repo = "go2rtc";
tag = "v${version}";
hash = "sha256-pxKocvnFy1XMrjQ57VAmCnavcBgVPuNqWzT0v5+pWMI=";
hash = "sha256-gX1hNm3X0OQdmslQ/2pw0F05TO43YsGtz1yn8bbaxR0=";
};
vendorHash = "sha256-N8aJmxNQ/p2ddJG9DuIVVjcgzEC6TzD0sz992h3q0RU=";
vendorHash = "sha256-6QVqBTWI2BJFttWbHHjfSztvOx2oyk7ShxAZmz51oVI=";
env.CGO_ENABLED = 0;
+4 -12
View File
@@ -11,8 +11,6 @@
# buildInputs
fontconfig,
openssl,
apple-sdk_15,
darwinMinVersionHook,
redis,
versionCheckHook,
@@ -40,16 +38,10 @@ rustPlatform.buildRustPackage rec {
rustPlatform.bindgenHook
];
buildInputs =
[
fontconfig
(lib.getDev openssl)
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
apple-sdk_15
# aws-lc-sys requires CryptoKit's CommonCrypto, which is available on macOS 10.15+
(darwinMinVersionHook "10.15")
];
buildInputs = [
fontconfig
(lib.getDev openssl)
];
# Required for golem-wasm-rpc's build.rs to find the required protobuf files
# https://github.com/golemcloud/wasm-rpc/blob/v1.0.6/wasm-rpc/build.rs#L7
@@ -0,0 +1,24 @@
diff --git a/src/lxterminal.c b/src/lxterminal.c
index 015f5e4..32e3b68 100644
--- a/src/lxterminal.c
+++ b/src/lxterminal.c
@@ -1210,6 +1210,8 @@ static Term * terminal_new(LXTerminal * terminal, const gchar * label, const gch
vte_terminal_match_set_cursor_type(VTE_TERMINAL(term->vte), ret, GDK_HAND2);
ret = vte_terminal_match_add_regex(VTE_TERMINAL(term->vte), dingus2, 0);
vte_terminal_match_set_cursor_type(VTE_TERMINAL(term->vte), ret, GDK_HAND2);
+ vte_regex_unref(dingus1);
+ vte_regex_unref(dingus2);
#else
GRegex * dingus1 = g_regex_new(DINGUS1, G_REGEX_OPTIMIZE, 0, NULL);
GRegex * dingus2 = g_regex_new(DINGUS2, G_REGEX_OPTIMIZE, 0, NULL);
@@ -1217,9 +1219,9 @@ static Term * terminal_new(LXTerminal * terminal, const gchar * label, const gch
vte_terminal_match_set_cursor_type(VTE_TERMINAL(term->vte), ret, GDK_HAND2);
ret = vte_terminal_match_add_gregex(VTE_TERMINAL(term->vte), dingus2, 0);
vte_terminal_match_set_cursor_type(VTE_TERMINAL(term->vte), ret, GDK_HAND2);
-#endif
g_regex_unref(dingus1);
g_regex_unref(dingus2);
+#endif
/* Create a horizontal box inside an event box as the toplevel for the tab label. */
term->tab = gtk_event_box_new();
+1
View File
@@ -54,6 +54,7 @@ stdenv.mkDerivation rec {
];
patches = [
./fix-gcc14-pr122.patch # manual port of https://github.com/lxde/lxterminal/pull/122
./respect-xml-catalog-files-var.patch
];
-2
View File
@@ -5,7 +5,6 @@
fetchpatch2,
gitUpdater,
apple-sdk_15,
darwinMinVersionHook,
cereal,
libcxx,
glslang,
@@ -31,7 +30,6 @@ stdenv.mkDerivation (finalAttrs: {
buildInputs = [
apple-sdk_15
cereal
(darwinMinVersionHook "10.15")
glslang
spirv-cross
spirv-headers
+114
View File
@@ -0,0 +1,114 @@
{
lib,
rustPlatform,
fetchFromGitHub,
pkg-config,
protobuf,
bzip2,
oniguruma,
sqlite,
xz,
zlib,
zstd,
buildNpmPackage,
gitUpdater,
}:
let
version = "0.14.0";
src = fetchFromGitHub {
owner = "openobserve";
repo = "openobserve";
tag = "v${version}";
hash = "sha256-rTp+DkADqYkJg1zJog1yURE082V5kCqgid/oUd81SN8=";
};
web = buildNpmPackage {
inherit src version;
pname = "openobserve-ui";
sourceRoot = "${src.name}/web";
npmDepsHash = "sha256-awfQR1wZBX3ggmD0uJE9Fur4voPydeygrviRijKnBTE=";
preBuild = ''
# Patch vite config to not open the browser to visualize plugin composition
substituteInPlace vite.config.ts \
--replace "open: true" "open: false";
'';
env = {
NODE_OPTIONS = "--max-old-space-size=8192";
# cypress tries to download binaries otherwise
CYPRESS_INSTALL_BINARY = 0;
};
installPhase = ''
runHook preInstall
mkdir -p $out/share
mv dist $out/share/openobserve-ui
runHook postInstall
'';
};
in
rustPlatform.buildRustPackage {
pname = "openobserve";
inherit version src;
patches = [
# prevent using git to determine version info during build time
./build.rs.patch
];
preBuild = ''
cp -r ${web}/share/openobserve-ui web/dist
'';
useFetchCargoVendor = true;
cargoHash = "sha256-FWMUPghx9CxuzP7jFZYSIwZsylApWzQsfx8DuwS4GTo=";
nativeBuildInputs = [
pkg-config
protobuf
];
buildInputs = [
bzip2
oniguruma
sqlite
xz
zlib
zstd
];
env = {
RUSTONIG_SYSTEM_LIBONIG = true;
ZSTD_SYS_USE_PKG_CONFIG = true;
RUSTC_BOOTSTRAP = 1; # uses experimental features
# the patched build.rs file sets these variables
GIT_VERSION = src.tag;
GIT_COMMIT_HASH = "builtByNix";
GIT_BUILD_DATE = "1970-01-01T00:00:00Z";
};
# requires network access or filesystem mutations
checkFlags = [
"--skip=handler::http::router::tests::test_get_proxy_routes"
"--skip=tests::e2e_test"
];
passthru.updateScript = gitUpdater {
rev-prefix = "v";
ignoredVersions = "rc";
};
meta = {
description = "Cloud-native observability platform built specifically for logs, metrics, traces, analytics & realtime user-monitoring";
homepage = "https://github.com/openobserve/openobserve";
changelog = "https://github.com/openobserve/openobserve/releases/tag/v${version}";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ happysalada ];
mainProgram = "openobserve";
};
}
+1 -1
View File
@@ -43,6 +43,6 @@ stdenv.mkDerivation rec {
homepage = "https://roy.marples.name/projects/openresolv";
license = lib.licenses.bsd2;
maintainers = [ ];
platforms = lib.platforms.linux ++ lib.platforms.freebsd;
platforms = lib.platforms.unix;
};
}
@@ -12,14 +12,14 @@
rustPlatform.buildRustPackage rec {
pname = "rust-analyzer-unwrapped";
version = "2024-12-23";
cargoHash = "sha256-9fPKd94erhUIBIeg8gDaCvJmKHwwNuLUMiEwCMdVeFE=";
version = "2025-01-08";
cargoHash = "sha256-5PRfmjDamboKf77oeCOG1EPlsDvqjQzRZavFyN3gLK8=";
src = fetchFromGitHub {
owner = "rust-lang";
repo = "rust-analyzer";
rev = version;
hash = "sha256-NlsVD/fI32wsHFua9Xvc7IFHCUpQIOs6D6RS/3AhMT8=";
hash = "sha256-dzslslI/5YEppCztz4FZ1VwXnb4SbuXWbSvDuWs0KKI=";
};
cargoBuildFlags = [
+4
View File
@@ -26,6 +26,10 @@ stdenv.mkDerivation rec {
fplll
];
configureFlags = [
"--with-xml2-config=${lib.getExe' (lib.getDev libxml2) "xml2-config"}"
];
doCheck = true;
meta = with lib; {
+2 -2
View File
@@ -6,13 +6,13 @@
buildGoModule rec {
pname = "storj-uplink";
version = "1.119.8";
version = "1.119.15";
src = fetchFromGitHub {
owner = "storj";
repo = "storj";
rev = "v${version}";
hash = "sha256-7SlKUqniRgQfmrBEVnvn7KDa9/QmMmYb7NMrNABGSiU=";
hash = "sha256-XKTsgSkcVZ/2iYnEP0eeLjLEM4c2w9+XhvBqRFQAW+U=";
};
subPackages = [ "cmd/uplink" ];
+3 -3
View File
@@ -14,16 +14,16 @@
rustPlatform.buildRustPackage rec {
pname = "tpnote";
version = "1.24.12";
version = "1.25.1";
src = fetchFromGitHub {
owner = "getreu";
repo = "tp-note";
rev = "v${version}";
hash = "sha256-1Y7Sw9wiUno4A6i0lYDJpqfIT/HV5rxXfuJnJ+FJTBU=";
hash = "sha256-TT34+r4f3TaurLwyXxQa5AZT1xPOKkDYPra/bgchoTc=";
};
cargoHash = "sha256-ZOE2D8GXrJ7BQK7iMoUnqyrj4zc+ODJxZ1jgH7xYMI0=";
cargoHash = "sha256-1+LPsTvJwouFkJoCEkRUjKGqldXLYyF3Y4UuISoYF2A=";
nativeBuildInputs = [
cmake
-2
View File
@@ -3,7 +3,6 @@
apple-sdk_14,
buildGoModule,
darwin,
darwinMinVersionHook,
fetchFromGitHub,
testers,
vfkit,
@@ -36,7 +35,6 @@ buildGoModule rec {
buildInputs = [
apple-sdk_14
(darwinMinVersionHook "11")
];
postFixup = ''
+3
View File
@@ -20,6 +20,9 @@ stdenv.mkDerivation rec {
s:mkdir:mkdir -p:g
s:^CFLAGS:#CFLAGS:
' Makefile
sed -i '28i#include <time.h>' xtserv.c
sed -i '35i#include <time.h>' xtbot.c
'';
buildInputs = [ xorg.libX11 ];
+2 -2
View File
@@ -12,13 +12,13 @@ let
in
buildDotnetModule (finalAttrs: {
pname = "yafc-ce";
version = "2.4.0";
version = "2.5.0";
src = fetchFromGitHub {
owner = "shpaass";
repo = "yafc-ce";
rev = finalAttrs.version;
hash = "sha256-Tx9C7xhmfUfHAbrVKtGQ0lO+UZvzErndswFoBnWVzEw=";
hash = "sha256-NttLFx6b3T5/JzCkUg8laSQ3ipNUkAPlPPC+dsdnCO4=";
};
projectFile = [ "Yafc/Yafc.csproj" ];
+3 -3
View File
@@ -93,13 +93,13 @@ let
in
rustPlatform.buildRustPackage rec {
pname = "zed-editor";
version = "0.167.2";
version = "0.168.2";
src = fetchFromGitHub {
owner = "zed-industries";
repo = "zed";
tag = "v${version}";
hash = "sha256-2Cgh3dv+3CSZoj2bY1SdNA4xicn03hSvfAl0GyKYF/A=";
hash = "sha256-ar1JpLbfKdFZFszCCmYMzTQx6yhVIFFT+EbeA7H5H2g=";
};
patches = [
@@ -119,7 +119,7 @@ rustPlatform.buildRustPackage rec {
'';
useFetchCargoVendor = true;
cargoHash = "sha256-PAwgPQEvaU/9fTlsYQPalv9M7oRLafdnNoidtwpGI5Q=";
cargoHash = "sha256-Vw/WUOLiIOuULSMT57G8MsubQR63J+oh88lmlPNkRYs=";
nativeBuildInputs =
[
@@ -12,6 +12,7 @@
lomiri-sounds,
lomiri-ui-toolkit,
makeWrapper,
mesa,
pkg-config,
qtbase,
qtdeclarative,
@@ -77,6 +78,7 @@ stdenv.mkDerivation (finalAttrs: {
];
nativeCheckInputs = [
mesa.llvmpipeHook # ShapeMaterial needs an OpenGL context: https://gitlab.com/ubports/development/core/lomiri-ui-toolkit/-/issues/35
qtdeclarative # qmltestrunner
xvfb-run
];
@@ -87,20 +89,6 @@ stdenv.mkDerivation (finalAttrs: {
(lib.cmakeBool "CLICK_MODE" false)
(lib.cmakeBool "INSTALL_TESTS" false)
(lib.cmakeBool "USE_XVFB" true)
(lib.cmakeFeature "CMAKE_CTEST_ARGUMENTS" (
lib.concatStringsSep ";" [
# Exclude tests
"-E"
(lib.strings.escapeShellArg "(${
lib.concatStringsSep "|" [
# Runs into ShapeMaterial codepath in lomiri-ui-toolkit which needs OpenGL, see LUITK for details
"^AlarmLabel"
"^AlarmRepeat"
"^AlarmSound"
]
})")
]
))
];
doCheck = stdenv.buildPlatform.canExecute stdenv.hostPlatform;
@@ -29,6 +29,7 @@
lomiri-settings-components,
lomiri-ui-toolkit,
maliit-keyboard,
mesa,
pkg-config,
polkit,
python3,
@@ -136,6 +137,7 @@ stdenv.mkDerivation (finalAttrs: {
nativeCheckInputs = [
dbus
mesa.llvmpipeHook # ShapeMaterial needs an OpenGL context: https://gitlab.com/ubports/development/core/lomiri-ui-toolkit/-/issues/35
(python3.withPackages (ps: with ps; [ python-dbusmock ]))
xvfb-run
];
@@ -151,19 +153,6 @@ stdenv.mkDerivation (finalAttrs: {
cmakeFlags = [
(lib.cmakeBool "ENABLE_LIBDEVICEINFO" true)
(lib.cmakeBool "ENABLE_TESTS" finalAttrs.finalPackage.doCheck)
(lib.cmakeFeature "CMAKE_CTEST_ARGUMENTS" (
lib.concatStringsSep ";" [
# Exclude tests
"-E"
(lib.strings.escapeShellArg "(${
lib.concatStringsSep "|" [
# Hits OpenGL context issue inside lomiri-ui-toolkit, see derivation of that on details
"^testmouse"
"^tst_notifications"
]
})")
]
))
];
# The linking for this normally ignores missing symbols, which is inconvenient for figuring out why subpages may be
@@ -12,6 +12,7 @@
lomiri-content-hub,
lomiri-ui-extras,
lomiri-ui-toolkit,
mesa,
pkg-config,
qqc2-suru-style,
qtbase,
@@ -90,6 +91,7 @@ stdenv.mkDerivation (finalAttrs: {
];
nativeCheckInputs = [
mesa.llvmpipeHook # ShapeMaterial needs an OpenGL context: https://gitlab.com/ubports/development/core/lomiri-ui-toolkit/-/issues/35
xvfb-run
];
@@ -102,9 +104,6 @@ stdenv.mkDerivation (finalAttrs: {
lib.concatStringsSep "|" [
# Don't care about linter failures
"^flake8"
# Runs into ShapeMaterial codepath in lomiri-ui-toolkit which needs OpenGL, see LUITK for details
"^tst_QmlTests"
]
})")
]
@@ -8,6 +8,7 @@
cups,
exiv2,
lomiri-ui-toolkit,
mesa,
pam,
pkg-config,
qtbase,
@@ -48,6 +49,7 @@ stdenv.mkDerivation (finalAttrs: {
];
nativeCheckInputs = [
mesa.llvmpipeHook # ShapeMaterial needs an OpenGL context: https://gitlab.com/ubports/development/core/lomiri-ui-toolkit/-/issues/35
qtdeclarative # qmltestrunner
xvfb-run
];
@@ -66,8 +68,6 @@ stdenv.mkDerivation (finalAttrs: {
"-E"
(lib.strings.escapeShellArg "(${
lib.concatStringsSep "|" [
# tst_busy_indicator runs into a codepath in lomiri-ui-toolkit that expects a working GL context
"^tst_busy_indicator"
# Photo & PhotoImageProvider Randomly fail, unsure why
"^tst_PhotoEditorPhoto"
]
@@ -1,155 +0,0 @@
From c71d5fed4ef1f0b6d56400cddf02d8ac438168c8 Mon Sep 17 00:00:00 2001
From: OPNA2608 <opna2608@protonmail.com>
Date: Wed, 17 Apr 2024 16:18:23 +0200
Subject: [PATCH] Mark problematic tests
- ShapeMaterial requires a Qt OpenGL context, doesn't work in our sandbox
- SignalSpy on QML shaders compilers don't see changes
- TypeError on some properties with Qt 5.15
https://gitlab.com/ubports/development/core/lomiri-ui-toolkit/-/issues/9
---
tests/checkresults.sh | 88 ++++++++++++++++++++++++++++++++++++++++---
1 file changed, 82 insertions(+), 6 deletions(-)
diff --git a/tests/checkresults.sh b/tests/checkresults.sh
index fc498985e..b5d204d0d 100755
--- a/tests/checkresults.sh
+++ b/tests/checkresults.sh
@@ -22,6 +22,7 @@ ERRORS_PATTERN='<failure'
FAILURES=0
FATAL_WARNINGS=0
+EXCEPTED_FAILURES=0
EXCEPTED=0
for _XML in $*; do
_TESTNAME=$(basename $_XML | sed -r 's@(.+)\.xml@\1@' -)
@@ -31,7 +32,71 @@ for _XML in $*; do
exit 1
fi
- EXCEPTIONS='components_benchmark \
+ ERROR_EXCEPTIONS='\
+ tst_actionbar.13.qml \
+ tst_actionlist.13.qml \
+ tst_adaptivepagelayout.13.qml \
+ tst_adaptivepagelayout_configuration.13.qml \
+ tst_combobutton.11.qml \
+ tst_combobutton.13.qml \
+ tst_contextual_actions.13.qml \
+ tst_focus.13.qml \
+ tst_header.13.qml \
+ tst_hide_chrome.11.qml \
+ tst_listitem.12.qml \
+ tst_listitem.13.qml \
+ tst_listitem_actions_breaks_selectmode.12.qml \
+ tst_listitem_extras.13.qml \
+ tst_listitem_focus.13.qml \
+ tst_listitem_horizontal_navigation.13.qml \
+ tst_listitem_selectmode.12.qml \
+ tst_listitem_selectmode.13.qml \
+ tst_listitems_itemselector.11.qml \
+ tst_listitems_standard.11.qml \
+ tst_listitems_standard.13.qml \
+ tst_lomirilistview.11.qml \
+ tst_lomiritestcase.qml \
+ tst_multicolumnheader.13.qml \
+ tst_optionselector.11.qml \
+ tst_optionselector.13.qml \
+ tst_page_with_header.13.qml \
+ tst_pagehead_back_action.13.qml \
+ tst_pagehead_contents_width.13.qml \
+ tst_pagehead_sections.13.qml \
+ tst_pagehead_visible.13.qml \
+ tst_pageheader.13.qml \
+ tst_pagestack.13.qml \
+ tst_pagestack.DEPRECATED_APPHEADER_TABS.13.qml \
+ tst_picker.11.qml \
+ tst_picker.13.qml \
+ tst_popover.12.qml \
+ tst_popover.13.qml \
+ tst_popups_dialog.13.qml \
+ tst_popups_pagestack.13.qml \
+ tst_pulltorefresh_pagestack_topmargin.13.qml \
+ tst_slider.11.qml \
+ tst_slider.13.qml \
+ tst_switch_bug1510919.13.qml \
+ tst_tabs.11.qml \
+ tst_tabs.13.qml \
+ tst_tabs.DEPRECATED_TOOLBAR.11.qml \
+ tst_textarea.11.qml \
+ tst_textarea_in_flickable.11.qml \
+ tst_textfield.11.qml \
+ tst_textinput_common.12.qml \
+ tst_textinput_common.13.qml \
+ tst_toggles.13.qml \
+ inversemousearea \
+ layouts \
+ recreateview \
+ subtheming \
+ swipearea \
+ tst_icon.11.qml \
+ tst_icon.13.qml \
+ '
+
+ EXCEPTIONS='\
+ components_benchmark \
tst_tabbar.11.qml \
tst_datepicker.bug1567840.SEGFAULT.12.qml \
tst_datepicker.bug1567840.SEGFAULT.13.qml \
@@ -49,22 +114,28 @@ for _XML in $*; do
inversemousearea \
tst_listitem_focus_bug.13.qml \
tst_shortcuts.13.qml \
+ tst_pagestack.DEPRECATED_TOOLBAR.11.qml \
'
WARNINGS=$(grep -c -P "$WARNINGS_PATTERN" $_XML)
ERRORS=$(grep -c -P "$ERRORS_PATTERN" $_XML)
if [ $ERRORS -ne 0 ]; then
- FAILURES_FILES="${FAILURES_FILES} ${_TESTNAME}\n"
- ((FAILURES+=$ERRORS))
+ if [[ " $ERROR_EXCEPTIONS " == *" $_TESTNAME "* ]]; then
+ EXCEPTED_FAILURES_FILES="${EXCEPTED_FAILURES_FILES} ${_TESTNAME}\n"
+ ((EXCEPTED_FAILURES+=$ERRORS))
+ else
+ FAILURES_FILES="${FAILURES_FILES} ${_TESTNAME}\n"
+ ((FAILURES+=$ERRORS))
+ fi
elif [ $WARNINGS -ne 0 ]; then
- if [[ $EXCEPTIONS == *$_TESTNAME* ]]; then
+ if [[ " $EXCEPTIONS " == *" $_TESTNAME "* ]]; then
EXCEPTED_FILES="${EXCEPTED_FILES} ${_TESTNAME}\n"
((EXCEPTED+=$WARNINGS))
else
FATAL_WARNINGS_FILES="${FATAL_WARNINGS_FILES} ${_TESTNAME}\n"
((FATAL_WARNINGS+=$WARNINGS))
fi
- elif [[ $EXCEPTIONS == *$_TESTNAME* ]]; then
+ elif [[ " $ERROR_EXCEPTIONS " == *" $_TESTNAME "* || " $EXCEPTIONS " == *" $_TESTNAME "* ]]; then
WOOT_FILES="${WOOT_FILES} ${_TESTNAME}\n"
fi
done
@@ -82,6 +153,11 @@ if [ -n "$FATAL_WARNINGS_FILES" ]; then
echo -e "$FATAL_WARNINGS_FILES"
fi
+if [ -n "$EXCEPTED_FAILURES_FILES" ]; then
+ echo The following tests issued $EXCEPTED_FAILURES expected failures:
+ echo -e "$EXCEPTED_FAILURES_FILES"
+fi
+
if [ -n "$EXCEPTED_FILES" ]; then
echo The following tests issued $EXCEPTED expected warnings:
echo -e "$EXCEPTED_FILES"
@@ -89,7 +165,7 @@ fi
if [ -n "$WOOT_FILES" ]; then
echo Woot! Known problematic tests passed!
- echo Consider removing these from EXCEPTIONS in ${0#$(pwd)/}!
+ echo Consider removing these from ERROR_EXCEPTIONS/EXCEPTIONS in ${0#$(pwd)/}!
echo -e "$WOOT_FILES"
fi
--
2.42.0
@@ -10,6 +10,7 @@
gdb,
glib,
lttng-ust,
mesa,
perl,
pkg-config,
python3,
@@ -60,8 +61,6 @@ stdenv.mkDerivation (finalAttrs: {
];
patches = [
./2001-Mark-problematic-tests.patch
(substituteAll {
src = ./2002-Nixpkgs-versioned-QML-path.patch.in;
name = "2002-Nixpkgs-versioned-QML-path.patch";
@@ -149,6 +148,7 @@ stdenv.mkDerivation (finalAttrs: {
dbus-test-runner
dpkg # `dpkg-architecture -qDEB_HOST_ARCH` response decides how tests are run
gdb
mesa.llvmpipeHook # ShapeMaterial needs an OpenGL context: https://gitlab.com/ubports/development/core/lomiri-ui-toolkit/-/issues/35
xvfb-run
];
@@ -234,13 +234,11 @@ in stdenv.mkDerivation {
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
apple-sdk_swift
(darwinMinVersionHook deploymentVersion)
];
# Will effectively be `buildInputs` when swift is put in `nativeBuildInputs`.
depsTargetTargetPropagated = lib.optionals stdenv.targetPlatform.isDarwin [
apple-sdk_swift
(darwinMinVersionHook deploymentVersion)
];
# This is a partial reimplementation of our setup hook. Because we reuse
@@ -77,7 +77,6 @@ let
swiftpm = callPackage ./swiftpm {
inherit (darwin) DarwinTools;
inherit (apple_sdk.frameworks) CryptoKit LocalAuthentication;
swift = swiftNoSwiftDriver;
};
@@ -18,10 +18,7 @@
makeWrapper,
DarwinTools, # sw_vers
cctools, # vtool
darwinMinVersionHook,
xcbuild,
CryptoKit,
LocalAuthentication,
}:
let
@@ -387,7 +384,7 @@ let
swift-driver
swift-system
swift-tools-support-core
] ++ lib.optionals stdenv.hostPlatform.isDarwin [ (darwinMinVersionHook "10.15.4") ];
];
cmakeFlags = [
"-DUSE_CMAKE_INSTALL=ON"
@@ -413,17 +410,11 @@ stdenv.mkDerivation (
swift
swiftpm-bootstrap
];
buildInputs =
[
ncursesInput
sqlite
XCTest
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
CryptoKit
LocalAuthentication
]
++ lib.optionals stdenv.hostPlatform.isDarwin [ (darwinMinVersionHook "10.15.4") ];
buildInputs = [
ncursesInput
sqlite
XCTest
];
configurePhase =
generated.configure
@@ -348,6 +348,16 @@ self: super: {
ghc-datasize = disableLibraryProfiling super.ghc-datasize;
ghc-vis = disableLibraryProfiling super.ghc-vis;
# Fix 32bit struct being used for 64bit syscall on 32bit platforms
# https://github.com/haskellari/lukko/issues/15
lukko = appendPatches [
(fetchpatch {
name = "lukko-ofd-locking-32bit.patch";
url = "https://github.com/haskellari/lukko/pull/32/commits/4e69ffad996c3771f50017b97375af249dd17c85.patch";
sha256 = "0n8vig48irjz0jckc20dzc23k16fl5hznrc0a81y02ms72msfwi1";
})
] super.lukko;
# Fixes compilation for basement on i686 for GHC >= 9.4
# https://github.com/haskell-foundation/foundation/pull/573
# Patch would not work for GHC >= 9.2 where it breaks compilation on x86_64
@@ -1414,6 +1414,16 @@ self: super: builtins.intersectAttrs super {
'';
hydraPlatforms = pkgs.lib.platforms.all;
broken = false;
patches = old.patches or [ ] ++ [
(pkgs.fetchpatch {
# related: https://github.com/haskell/cabal/issues/10504
name = "suppress-error-about-missing-local-index.patch";
url = "https://github.com/haskell/cabal/commit/d58a75ef4adab36688878420cc9e2c25bca41ec4.patch";
hash = "sha256-IZ+agNNN9AcIJBBsT30LAkAXCAoYKF+kIhccGPFdm+8=";
stripLen = 1;
includes = [ "src/Distribution/Client/IndexUtils.hs" ];
})
];
}) super.cabal-install;
tailwind = addBuildDepend
@@ -397,7 +397,10 @@ let
outputs = outputs ++ optional withDistOutput "dist";
passthru =
attrs.passthru or { }
{
inherit disabled;
}
// attrs.passthru or { }
// {
updateScript =
let
@@ -1,4 +1,4 @@
{ lib, stdenv, fetchurl, libwpg, libwpd, lcms, pkg-config, librevenge, icu, boost, cppunit }:
{ lib, stdenv, fetchurl, libwpg, libwpd, lcms, pkg-config, librevenge, icu, boost, cppunit, zlib }:
stdenv.mkDerivation rec {
pname = "libcdr";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
strictDeps = true;
buildInputs = [ libwpg libwpd lcms librevenge icu boost cppunit ];
buildInputs = [ libwpg libwpd lcms librevenge icu boost cppunit zlib ];
nativeBuildInputs = [ pkg-config ];
@@ -14,7 +14,7 @@ let
};
patches = [
./dont-set-cmake-skip-rpath-${version}.patch
(./. + "/dont-set-cmake-skip-rpath-${version}.patch")
];
nativeBuildInputs = [ cmake doxygen ];
@@ -18,7 +18,7 @@
buildPythonPackage rec {
pname = "fastavro";
version = "1.9.7";
version = "1.10.0";
pyproject = true;
disabled = pythonOlder "3.6";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
owner = pname;
repo = pname;
tag = version;
hash = "sha256-hKhwQqNJ+QvYf4x9FesNOPg36m8zC6D6dmlhANXCcsk=";
hash = "sha256-/YZFrEs7abm+oPn9yyLMV1X/G5VZ/s+ThpvzoQtYQu0=";
};
preBuild = ''
@@ -0,0 +1,55 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
# build-system
setuptools,
llm,
# dependencies
prompt-toolkit,
pygments,
# tests
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "llm-cmd";
version = "0.2a0";
pyproject = true;
src = fetchFromGitHub {
owner = "simonw";
repo = "llm-cmd";
tag = version;
hash = "sha256-RhwQEllpee/XP1p0nrgL4m+KjSZzf61J8l1jJGlg94E=";
};
# Only needed until https://github.com/simonw/llm-cmd/pull/18 is merged and released
patches = [ ./fix-test.patch ];
build-system = [
setuptools
# Follows the reasoning from https://github.com/NixOS/nixpkgs/pull/327800#discussion_r1681586659 about including llm in build-system
llm
];
dependencies = [
prompt-toolkit
pygments
];
nativeCheckInputs = [
pytestCheckHook
];
pythonImportCheck = [
"llm_cmd"
];
meta = {
description = "Use LLM to generate and execute commands in your shell";
homepage = "https://github.com/simonw/llm-cmd";
changelog = "https://github.com/simonw/llm-cmd/releases/tag/${version}";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ erethon ];
};
}
@@ -0,0 +1,13 @@
diff --git a/tests/test_cmd.py b/tests/test_cmd.py
index 02b5db8..578ebaa 100644
--- a/tests/test_cmd.py
+++ b/tests/test_cmd.py
@@ -1,6 +1,7 @@
-from llm.plugins import pm
+from llm.plugins import load_plugins, pm
def test_plugin_is_installed():
+ load_plugins()
names = [mod.__name__ for mod in pm.get_plugins()]
assert "llm_cmd" in names
@@ -11,7 +11,6 @@
openimageio,
imath,
python,
darwinMinVersionHook,
apple-sdk_14,
}:
@@ -40,7 +39,6 @@ buildPythonPackage rec {
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
apple-sdk_14
(darwinMinVersionHook "10.15")
]
++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
libX11
@@ -18,7 +18,7 @@
buildPythonPackage rec {
pname = "pylibjpeg-openjpeg";
version = "2.3.0";
version = "2.4.0";
pyproject = true;
disabled = pythonOlder "3.8";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
owner = "pydicom";
repo = "pylibjpeg-openjpeg";
tag = "v${version}";
hash = "sha256-cCDnARElNn+uY+HQ39OnGJRz2vTz0I8s0Oe+qGvqM1o=";
hash = "sha256-T38Ur5NLF9iPTrDwT3GYgI6621A90zWP/leUxSqA70w=";
};
# don't use vendored openjpeg submodule:
@@ -24,7 +24,7 @@
buildPythonPackage rec {
pname = "python-telegram-bot";
version = "21.9";
version = "21.10";
pyproject = true;
disabled = pythonOlder "3.8";
@@ -33,7 +33,7 @@ buildPythonPackage rec {
owner = "python-telegram-bot";
repo = "python-telegram-bot";
tag = "v${version}";
hash = "sha256-eJC8oH5iAMdCN546LzoRwlNq0gQqu8fZGscQlOzb/aY=";
hash = "sha256-iiKdEYCQgYehiyM6/rWrm76n6m2q7ok2OIfkkWztBSs=";
};
build-system = [
@@ -23,14 +23,14 @@
buildPythonPackage rec {
pname = "unstructured-inference";
version = "0.7.37";
version = "0.8.1";
format = "setuptools";
src = fetchFromGitHub {
owner = "Unstructured-IO";
repo = "unstructured-inference";
tag = version;
hash = "sha256-2k7gFlBUevVnz2A5pvUE4eIGmXwEr5s4F8BbX6j5lzc=";
hash = "sha256-U4mB3A0a1el7lmzsqTzjDBxp6lA4RpsceUt0OVGYVG4=";
};
propagatedBuildInputs =
@@ -5,6 +5,7 @@
poetry-core,
pscript,
pytestCheckHook,
pythonAtLeast,
pythonOlder,
}:
@@ -38,10 +39,21 @@ buildPythonPackage rec {
pythonImportsCheck = [ "vbuild" ];
disabledTests = [
# Tests require network access
"test_min"
"test_pycomp_onlineClosurable"
disabledTests =
[
# Tests require network access
"test_min"
"test_pycomp_onlineClosurable"
]
++ lib.optionals (pythonAtLeast "3.13") [
"test_ok"
];
disabledTestPaths = lib.optionals (pythonAtLeast "3.13") [
# https://github.com/manatlan/vbuild/issues/13
"tests/test_py2js.py"
"tests/test_PyStdLibIncludeOrNot.py"
"test_py_comp.py"
];
meta = {
+2 -2
View File
@@ -10,13 +10,13 @@
stdenv.mkDerivation rec {
pname = "premake5";
version = "5.0.0-beta2";
version = "5.0.0-beta4";
src = fetchFromGitHub {
owner = "premake";
repo = "premake-core";
rev = "v${version}";
sha256 = "sha256-2R5gq4jaQsp8Ny1oGuIYkef0kn2UG9jMf20vq0714oY=";
sha256 = "sha256-sNLCyIHWDW/8jIrMFCZAqtWsh4SRugqtPR4HaoW/Vzk=";
};
buildInputs =
@@ -11,25 +11,27 @@ diff --git a/contrib/curl/premake5.lua b/contrib/curl/premake5.lua
index 474f5cfa..553bbd02 100644
--- a/contrib/curl/premake5.lua
+++ b/contrib/curl/premake5.lua
@@ -32,19 +32,6 @@ project "curl-lib"
@@ -36,21 +36,6 @@ project "curl-lib"
-- find the location of the ca bundle
local ca = nil
- for _, f in ipairs {
- "/etc/ssl/certs/ca-certificates.crt",
- "/etc/openssl/certs/ca-certificates.crt",
- "/etc/pki/tls/certs/ca-bundle.crt",
- "/usr/share/ssl/certs/ca-bundle.crt",
- "/usr/local/share/certs/ca-root.crt",
- "/usr/local/share/certs/ca-root-nss.crt",
- "/etc/certs/ca-certificates.crt",
- "/etc/ssl/cert.pem" } do
- "/etc/ssl/cert.pem",
- "/boot/system/data/ssl/CARootCertificates.pem" } do
- if os.isfile(f) then
- ca = f
- break
- end
- end
if ca then
defines { 'CURL_CA_BUNDLE="' .. ca .. '"' }
defines { 'CURL_CA_BUNDLE="' .. ca .. '"', 'CURL_CA_PATH="' .. path.getdirectory(ca) .. '"' }
end
--
2.37.2
@@ -0,0 +1,38 @@
{
lib,
stdenv,
fetchFromGitHub,
kernel,
}:
stdenv.mkDerivation {
pname = "tsme-test";
version = "${kernel.version}-unstable-2022-12-07";
src = fetchFromGitHub {
owner = "AMDESE";
repo = "mem-encryption-tests";
rev = "7abb072ffc50ceb0b4145ae84105ce6c91bd1ff4";
hash = "sha256-v0KAGlo6ci0Ij1NAiMUK0vWDHBiFnpQG4Er6ArIKncQ=";
};
nativeBuildInputs = kernel.moduleBuildDependencies;
makeFlags = kernel.makeFlags ++ [
"KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
];
installPhase = ''
runHook preInstall
install -Dm644 -t $out/lib/modules/${kernel.modDirVersion}/extra tsme-test.ko
runHook postInstall
'';
meta = {
description = "Kernel driver to test the status of AMD TSME (Transparent Secure Memory Encryption)";
license = lib.licenses.gpl2Only;
maintainers = with lib.maintainers; [ lyn ];
platforms = lib.platforms.linux;
homepage = "https://github.com/AMDESE/mem-encryption-tests";
};
}
@@ -7,19 +7,18 @@
icalevents,
lxml,
pycryptodome,
recurring-ical-events,
}:
buildHomeAssistantComponent rec {
owner = "mampfes";
domain = "waste_collection_schedule";
version = "2.5.0";
version = "2.6.0";
src = fetchFromGitHub {
inherit owner;
repo = "hacs_waste_collection_schedule";
tag = version;
hash = "sha256-8AUaVcVCZ+WCLrmEQhIEohEWmeG6g7t3EjVdF9FUyJQ=";
hash = "sha256-gfL5Nxe8io7DTya5x8aQ5PhxiH8rb8L3/CA+UqKEDAk=";
};
dependencies = [
@@ -28,7 +27,6 @@ buildHomeAssistantComponent rec {
icalevents
lxml
pycryptodome
recurring-ical-events
];
meta = with lib; {
File diff suppressed because it is too large Load Diff
@@ -1,150 +0,0 @@
{
lib,
rustPlatform,
fetchFromGitHub,
pkg-config,
protobuf,
bzip2,
oniguruma,
sqlite,
xz,
zlib,
zstd,
stdenv,
apple_sdk,
buildNpmPackage,
}:
let
version = "0.11.0";
src = fetchFromGitHub {
owner = "openobserve";
repo = "openobserve";
rev = "v${version}";
hash = "sha256-VRkAOUtF/eOxE7/Xjxi/WEfeSseGEJ9IROCFbgeFUkI=";
};
web = buildNpmPackage {
inherit src version;
pname = "openobserve-ui";
sourceRoot = "${src.name}/web";
npmDepsHash = "sha256-2beTB6BHHshQkgbqVc195j2/0hBEn/fFz8+0ViSG5Gc=";
preBuild = ''
# Patch vite config to not open the browser to visualize plugin composition
substituteInPlace vite.config.ts \
--replace "open: true" "open: false";
'';
env = {
NODE_OPTIONS = "--max-old-space-size=8192";
# cypress tries to download binaries otherwise
CYPRESS_INSTALL_BINARY = 0;
};
installPhase = ''
runHook preInstall
mkdir -p $out/share
mv dist $out/share/openobserve-ui
runHook postInstall
'';
};
in
rustPlatform.buildRustPackage {
pname = "openobserve";
inherit version src;
patches = [
# prevent using git to determine version info during build time
./build.rs.patch
];
preBuild = ''
cp -r ${web}/share/openobserve-ui web/dist
'';
cargoLock = {
lockFile = ./Cargo.lock;
outputHashes = {
"chromiumoxide-0.5.7" = "sha256-GHrm5u8FtXRUjSRGMU4PNU6AJZ5W2KcgfZY1c/CBVYA=";
"enrichment-0.1.0" = "sha256-Ui4rsvmemOF00E4yBRFRS2gw9qliDrNEVQu5fvIpahA=";
};
};
nativeBuildInputs = [
pkg-config
protobuf
];
buildInputs =
[
bzip2
oniguruma
sqlite
xz
zlib
zstd
]
++ lib.optionals stdenv.hostPlatform.isDarwin (
with apple_sdk.frameworks;
[
CoreFoundation
CoreServices
IOKit
Security
SystemConfiguration
]
);
env = {
RUSTONIG_SYSTEM_LIBONIG = true;
ZSTD_SYS_USE_PKG_CONFIG = true;
RUSTC_BOOTSTRAP = 1; # uses experimental features
# the patched build.rs file sets these variables
GIT_VERSION = src.rev;
GIT_COMMIT_HASH = "builtByNix";
GIT_BUILD_DATE = "1970-01-01T00:00:00Z";
};
# requires network access or filesystem mutations
checkFlags = [
"--skip handler::http::auth::tests::test_validate"
"--skip handler::http::router::tests::test_get_proxy_routes"
"--skip handler::http::router::ui::tests::test_index_not_ok"
"--skip handler::http::router::ui::tests::test_index_ok"
"--skip handler::http::request::search::saved_view::tests::test_create_view_post"
"--skip infra::cache::file_list::tests::test_get_file_from_cache"
"--skip infra::cache::tmpfs::tests::test_delete_prefix"
"--skip infra::cluster::tests::test_get_node_ip"
"--skip infra::db::tests::test_delete"
"--skip service::alerts::test::test_alerts"
"--skip service::compact::merge::tests::test_compact"
"--skip service::db::compact::file_list::tests::test_files"
"--skip service::db::compact::file_list::tests::test_file_list_offset"
"--skip service::db::compact::file_list::tests::test_file_list_process_offset"
"--skip service::db::compact::files::tests::test_compact_files"
"--skip service::db::user::tests::test_user"
"--skip service::ingestion::grpc::tests::test_get_val"
"--skip service::metadata::trace_list_index::tests::test_write"
"--skip service::organization::tests::test_organization"
"--skip service::search::sql::tests::test_sql_full"
"--skip service::triggers::tests::test_triggers"
"--skip service::users::tests::test_post_user"
"--skip service::users::tests::test_user"
"--skip common::infra::cache::file_data::disk::tests::test_get_file_from_cache"
"--skip common::infra::cluster::tests::test_consistent_hashing"
"--skip common::infra::db::tests::test_get"
"--skip common::utils::auth::tests::test_is_root_user2"
"--skip tests::e2e_test"
];
meta = with lib; {
description = "Cloud-native observability platform built specifically for logs, metrics, traces, analytics & realtime user-monitoring";
homepage = "https://github.com/openobserve/openobserve";
license = licenses.asl20;
maintainers = with maintainers; [ happysalada ];
mainProgram = "openobserve";
};
}

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