Merge staging-next into staging

This commit is contained in:
nixpkgs-ci[bot]
2026-03-11 18:19:30 +00:00
committed by GitHub
106 changed files with 2734 additions and 776 deletions
+6
View File
@@ -14589,6 +14589,12 @@
githubId = 2943605;
name = "Evgeny Kurnevsky";
};
kurogeek = {
email = "kurogeek@lmvhaus.com";
github = "kurogeek";
githubId = 7752934;
name = "kurogeek";
};
kuwii = {
name = "kuwii";
email = "kuwii.someone@gmail.com";
@@ -235,6 +235,8 @@ See <https://github.com/NixOS/nixpkgs/issues/481673>.
- `services.openssh` now supports generating host SSH keys by setting `services.openssh.generateHostKeys = true` while leaving `services.openssh.enable` disabled. This is particularly useful for systems that have no need of an SSH daemon but want SSH host keys for other purposes such as using agenix or sops-nix.
- IPVLAN interfaces can now be configured through the `networking.ipvlans` option in the networking module.
- `services.caddy` now supports setting `httpPort` and `httpsPort` and opening them in the firewall via `openFirewall`.
- `boot.initrd.secrets` is now deprecated in favour of `boot.initrd.secretPaths` and `boot.initrd.extraSecretsHook`.
+3
View File
@@ -153,6 +153,9 @@ in
+ optionalString (def.macvlan != [ ]) ''
${concatStringsSep "\n" (map (s: "MACVLAN=${s}") def.macvlan)}
''
+ optionalString (def.ipvlan != [ ]) ''
${concatStringsSep "\n" (map (s: "IPVLAN=${s}") def.ipvlan)}
''
+ optionalString (def.macvtap != [ ]) ''
${concatStringsSep "\n" (map (s: "MACVTAP=${s}") def.macvtap)}
''
+1
View File
@@ -878,6 +878,7 @@
./services/misc/ihaskell.nix
./services/misc/iio-niri.nix
./services/misc/input-remapper.nix
./services/misc/inventree.nix
./services/misc/invidious-router.nix
./services/misc/irkerd.nix
./services/misc/jackett.nix
+446
View File
@@ -0,0 +1,446 @@
{
config,
pkgs,
lib,
...
}:
let
cfg = config.services.inventree;
pkg = cfg.package;
mysqlLocal = cfg.database.createLocally && cfg.database.dbtype == "mysql";
pgsqlLocal = cfg.database.createLocally && cfg.database.dbtype == "postgresql";
manage = pkgs.writeShellScriptBin "inventree-manage" ''
set -a
${lib.toShellVars cfg.settings}
${lib.optionalString (
cfg.database.passwordFile != null
) ''INVENTREE_DB_PASSWORD="$(<"${cfg.database.passwordFile}")"''}
set +a
pushd "${cfg.dataDir}"
sudo=exec
if [[ "$USER" != ${cfg.user} ]]; then
${
if config.security.sudo.enable then
"sudo='exec ${config.security.wrapperDir}/sudo -u ${cfg.user} -E'"
else
">&2 echo 'Aborting, inventree-manage must be run as user `${cfg.user}`!'; exit 2"
}
fi
$sudo ${cfg.package}/bin/inventree "$@"
popd
'';
in
{
meta.buildDocsInSandbox = false;
meta.maintainers = with lib.maintainers; [
kurogeek
];
options.services.inventree = with lib; {
enable = lib.mkEnableOption "inventree";
dataDir = mkOption {
type = types.str;
default = "/var/lib/inventree";
description = "Inventree's data storage path. Will be `/var/lib/inventree` by default.";
};
package = mkOption {
type = types.package;
description = "Which package to use for the InvenTree instance.";
default = pkgs.inventree;
defaultText = literalExpression "pkgs.inventree";
};
adminPasswordFile = mkOption {
type = types.nullOr lib.types.path;
default = null;
example = "/run/keys/inventree-password";
description = "Path to a file containing admin password";
};
secretKeyFile = mkOption {
type = types.path;
default = "${cfg.dataDir}/secret_key.txt";
defaultText = lib.literalExpression ''"''${cfg.dataDir}/secret_key.txt"'';
example = "/run/keys/inventree-secret-key";
description = ''
Path to a file containing the secret key
'';
};
database = {
dbtype = mkOption {
type = lib.types.nullOr (
lib.types.enum [
"postgresql"
"mysql"
]
);
default = "postgresql";
description = "Database type.";
};
dbhost = lib.mkOption {
type = lib.types.nullOr lib.types.str;
default =
if pgsqlLocal then
"/run/postgresql"
else if mysqlLocal then
"/run/mysqld/mysqld.sock"
else
"localhost";
defaultText = "localhost";
example = "localhost";
description = ''
Database host or socket path.
If [](#opt-services.inventree.database.createLocally) is true and
[](#opt-services.inventree.database.dbtype) is either `postgresql` or `mysql`,
defaults to the correct Unix socket instead.
'';
};
dbport = mkOption {
type = types.port;
default = 5432;
description = "Database host port.";
};
dbname = mkOption {
type = types.str;
default = "inventree";
description = "Database name.";
};
dbuser = mkOption {
type = types.str;
default = "inventree";
description = "Database username.";
};
passwordFile = mkOption {
type = with types; nullOr path;
default = null;
example = "/run/keys/inventree-dbpassword";
description = ''
A file containing the password corresponding to
<option>database.dbuser</option>.
'';
};
createLocally = mkOption {
type = types.bool;
default = true;
description = "Create the database and database user locally.";
};
};
domain = mkOption {
type = types.str;
default = "localhost";
example = "inventree.example.com";
description = ''
The INVENTREE_SITE_URL option defines the base URL for the
InvenTree server. This is a critical setting, and it is required
for correct operation of the server. If not specified, the
server will attempt to determine the site URL automatically -
but this may not always be correct!
The site URL is the URL that users will use to access the
InvenTree server. For example, if the server is accessible at
`https://inventree.example.com`, the site URL should be set to
`https://inventree.example.com`. Note that this is not
necessarily the same as the internal URL that the server is
running on - the internal URL will depend entirely on your
server configuration and may be obscured by a reverse proxy or
other such setup.
'';
};
user = mkOption {
type = types.str;
default = "inventree";
description = "User under which InvenTree runs.";
};
group = mkOption {
type = types.str;
default = "inventree";
description = "Group under which InvenTree runs.";
};
settings = mkOption {
type =
with lib.types;
attrsOf (
nullOr (oneOf [
path
str
])
);
default = { };
description = ''
InvenTree config options.
See [the documentation](https://docs.inventree.org/en/stable/start/config/) for available options.
'';
example = {
INVENTREE_CACHE_ENABLED = true;
INVENTREE_CACHE_HOST = "localhost";
INVENTREE_EMAIL_HOST = "smtp.example.com";
INVENTREE_EMAIL_PORT = 25;
};
};
};
config = lib.mkIf cfg.enable (
lib.mkMerge [
{
services.inventree.settings = {
INVENTREE_DB_ENGINE = cfg.database.dbtype;
INVENTREE_DB_NAME = cfg.database.dbname;
INVENTREE_DB_HOST = cfg.database.dbhost;
INVENTREE_DB_USER = cfg.database.dbuser;
INVENTREE_DB_PORT = toString cfg.database.dbport;
INVENTREE_CONFIG_FILE = lib.mkDefault "${cfg.dataDir}/config/config.yaml";
INVENTREE_OIDC_PRIVATE_KEY_FILE = lib.mkDefault "${cfg.dataDir}/config/oidc_private_key.txt";
INVENTREE_STATIC_ROOT = lib.mkDefault "${cfg.dataDir}/data/static_root";
INVENTREE_MEDIA_ROOT = lib.mkDefault "${cfg.dataDir}/data/media";
INVENTREE_BACKUP_DIR = lib.mkDefault "${cfg.dataDir}/data/backups";
INVENTREE_SITE_URL = lib.mkDefault "http://${cfg.domain}";
INVENTREE_PLUGIN_FILE = lib.mkDefault "${cfg.dataDir}/data/plugins/plugins.txt";
INVENTREE_PLUGIN_DIR = lib.mkDefault "${cfg.dataDir}/data/plugins";
INVENTREE_ADMIN_PASSWORD_FILE = lib.mkDefault cfg.adminPasswordFile;
INVENTREE_SECRET_KEY_FILE = lib.mkDefault cfg.secretKeyFile;
INVENTREE_AUTO_UPDATE = lib.mkDefault "false";
};
environment.systemPackages = [ manage ];
systemd.tmpfiles.rules = (
map (dir: "d ${dir} 0755 inventree inventree") [
"${cfg.dataDir}"
"${cfg.dataDir}/config"
"${cfg.dataDir}/data"
"${cfg.dataDir}/data/static_root"
"${cfg.dataDir}/data/media"
"${cfg.dataDir}/data/backups"
"${cfg.dataDir}/data/plugins"
]
);
services.postgresql = lib.mkIf pgsqlLocal {
enable = true;
ensureDatabases = [ cfg.database.dbname ];
ensureUsers = [
{
name = cfg.database.dbuser;
ensureDBOwnership = true;
}
];
};
services.mysql = lib.mkIf mysqlLocal {
enable = true;
package = lib.mkDefault pkgs.mariadb;
ensureDatabases = [ cfg.database.dbname ];
ensureUsers = [
{
name = cfg.database.dbuser;
ensurePermissions = {
"${cfg.database.dbname}.*" = "ALL PRIVILEGES";
};
}
];
};
services.nginx.enable = true;
services.nginx.virtualHosts.${cfg.domain} = {
locations =
let
unixPath = config.systemd.sockets.inventree-server.socketConfig.ListenStream;
in
{
"/" = {
extraConfig = ''
proxy_set_header Host $host;
proxy_set_header X-Forwarded-By $server_addr:$server_port;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header CLIENT_IP $remote_addr;
proxy_pass_request_headers on;
proxy_redirect off;
client_max_body_size 100M;
proxy_buffering off;
proxy_request_buffering off;
'';
proxyPass = "http://unix:${unixPath}";
};
"/auth" = {
extraConfig = ''
internal;
proxy_pass_request_body off;
proxy_set_header Content-Length "";
proxy_set_header X-Original-URI $request_uri;
'';
proxyPass = "http://unix:${unixPath}:/auth/";
};
"/static/" = {
alias = "${cfg.settings.INVENTREE_STATIC_ROOT}/";
extraConfig = ''
autoindex on;
# Caching settings
expires 30d;
add_header Pragma public;
add_header Cache-Control "public";
'';
};
"/media/" = {
alias = "${cfg.settings.INVENTREE_MEDIA_ROOT}/";
extraConfig = ''
auth_request /auth;
add_header Content-disposition "attachment";
'';
};
};
};
systemd.services.inventree-setup = {
description = "Inventree setup";
wantedBy = [ "inventree.target" ];
partOf = [ "inventree.target" ];
after = lib.optional mysqlLocal "mysql.service" ++ lib.optional pgsqlLocal "postgresql.target";
requires = lib.optional mysqlLocal "mysql.service" ++ lib.optional pgsqlLocal "postgresql.target";
before = [
"inventree-static.service"
"inventree-server.service"
"inventree-qcluster.service"
];
serviceConfig = {
Type = "oneshot";
User = cfg.user;
Group = cfg.group;
RemainAfterExit = true;
PrivateTmp = true;
}
// lib.optionalAttrs (cfg.database.passwordFile != null) {
LoadCredential = "db_password:${cfg.database.passwordFile}";
};
environment = cfg.settings;
script = ''
set -euo pipefail
umask u=rwx,g=,o=
${
lib.optionalString (cfg.database.passwordFile != null) ''
INVENTREE_DB_PASSWORD=$(<"$CREDENTIALS_DIRECTORY/db_password")
''
} \
exec ${pkg}/bin/inventree migrate
'';
};
systemd.services.inventree-static = {
description = "Inventree static migration";
wantedBy = [ "inventree.target" ];
partOf = [ "inventree.target" ];
before = [ "inventree-server.service" ];
environment = cfg.settings;
serviceConfig = {
User = cfg.user;
Group = cfg.group;
StateDirectory = "inventree";
PrivateTmp = true;
}
// lib.optionalAttrs (cfg.database.passwordFile != null) {
LoadCredential = "db_password:${cfg.database.passwordFile}";
};
script = ''
${
lib.optionalString (cfg.database.passwordFile != null) ''
INVENTREE_DB_PASSWORD=$(<"$CREDENTIALS_DIRECTORY/db_password")
''
} \
exec ${pkg}/bin/inventree collectstatic --no-input
'';
};
systemd.services.inventree-server = {
description = "Inventree Gunicorn service";
requiredBy = [ "inventree.target" ];
partOf = [ "inventree.target" ];
environment = cfg.settings;
serviceConfig = {
User = cfg.user;
Group = cfg.group;
StateDirectory = "inventree";
PrivateTmp = true;
}
// lib.optionalAttrs (cfg.database.passwordFile != null) {
LoadCredential = "db_password:${cfg.database.passwordFile}";
};
script = ''
${
lib.optionalString (cfg.database.passwordFile != null) ''
INVENTREE_DB_PASSWORD=$(<"$CREDENTIALS_DIRECTORY/db_password")
''
} \
exec ${pkg}/bin/gunicorn InvenTree.wsgi
'';
};
systemd.sockets.inventree-server = {
wantedBy = [ "sockets.target" ];
partOf = [ "inventree.target" ];
socketConfig.ListenStream = "/run/inventree/gunicorn.socket";
};
systemd.services.inventree-qcluster = {
description = "InvenTree qcluster server";
requiredBy = [ "inventree.target" ];
wantedBy = [ "inventree.target" ];
partOf = [ "inventree.target" ];
environment = cfg.settings;
serviceConfig = {
User = cfg.user;
Group = cfg.group;
StateDirectory = "inventree";
PrivateTmp = true;
}
// lib.optionalAttrs (cfg.database.passwordFile != null) {
LoadCredential = "db_password:${cfg.database.passwordFile}";
};
script = ''
${
lib.optionalString (cfg.database.passwordFile != null) ''
INVENTREE_DB_PASSWORD=$(<"$CREDENTIALS_DIRECTORY/db_password")
''
} \
exec ${pkg}/bin/inventree qcluster
'';
};
systemd.targets.inventree = {
description = "Target for all InvenTree services";
wantedBy = [ "multi-user.target" ];
wants = [ "network-online.target" ];
after = [ "network-online.target" ];
};
users = lib.optionalAttrs (cfg.user == cfg.user) {
users.${cfg.user} = {
group = cfg.group;
isSystemUser = true;
home = cfg.dataDir;
};
groups.${cfg.group}.members = [ cfg.user ];
};
}
]
);
}
+9
View File
@@ -3037,6 +3037,15 @@ let
'';
};
ipvlan = mkOption {
default = [ ];
type = types.listOf types.str;
description = ''
A list of ipvlan interfaces to be added to the network section of the
unit. See {manpage}`systemd.network(5)` for details.
'';
};
macvtap = mkOption {
default = [ ];
type = types.listOf types.str;
@@ -21,6 +21,7 @@ let
attrValues cfg.vswitches
)
++ concatMap (i: [ i.interface ]) (attrValues cfg.macvlans)
++ concatMap (i: [ i.interface ]) (attrValues cfg.ipvlans)
++ concatMap (i: [ i.interface ]) (attrValues cfg.vlans);
# We must escape interfaces due to the systemd interpretation
@@ -106,6 +107,7 @@ let
|| (hasAttr dev cfg.bridges)
|| (hasAttr dev cfg.bonds)
|| (hasAttr dev cfg.macvlans)
|| (hasAttr dev cfg.ipvlans)
|| (hasAttr dev cfg.sits)
|| (hasAttr dev cfg.ipips)
|| (hasAttr dev cfg.vlans)
@@ -590,6 +592,39 @@ let
}
);
createIpvlanDevice =
n: v:
nameValuePair "${n}-netdev" (
let
deps = deviceDependency v.interface;
in
{
description = "IPVLAN Interface ${n}";
wantedBy = [
"network.target"
"network-setup.service"
(subsystemDevice n)
];
bindsTo = deps;
after = [ "network-pre.target" ] ++ deps;
before = [ "network-setup.service" ];
serviceConfig.Type = "oneshot";
serviceConfig.RemainAfterExit = true;
path = [ pkgs.iproute2 ];
script = ''
# Remove Dead Interfaces
ip link show dev "${n}" >/dev/null 2>&1 && ip link delete dev "${n}"
ip link add link "${v.interface}" name "${n}" type ipvlan \
${optionalString (v.mode != null) "mode ${v.mode}"} \
${optionalString (v.flags != null) "${v.flags}"}
ip link set dev "${n}" up
'';
postStop = ''
ip link delete dev "${n}" || true
'';
}
);
createFouEncapsulation =
n: v:
nameValuePair "${n}-fou-encap" (
@@ -803,6 +838,7 @@ let
// mapAttrs' createVswitchDevice cfg.vswitches
// mapAttrs' createBondDevice cfg.bonds
// mapAttrs' createMacvlanDevice cfg.macvlans
// mapAttrs' createIpvlanDevice cfg.ipvlans
// mapAttrs' createFouEncapsulation cfg.fooOverUDP
// mapAttrs' createSitDevice cfg.sits
// mapAttrs' createIpipDevice cfg.ipips
@@ -396,6 +396,24 @@ in
}
)
))
(mkMerge (
flip mapAttrsToList cfg.ipvlans (
name: ipvlan: {
netdevs."40-${name}" = {
netdevConfig = {
Name = name;
Kind = "ipvlan";
};
ipvlanConfig =
optionalAttrs (ipvlan.mode != null) { Mode = lib.toUpper ipvlan.mode; }
// optionalAttrs (ipvlan.flags != null) { Flags = ipvlan.flags; };
};
networks."40-${ipvlan.interface}" = {
ipvlan = [ name ];
};
}
)
))
(mkMerge (
flip mapAttrsToList cfg.fooOverUDP (
name: fou: {
@@ -1069,6 +1069,54 @@ in
});
};
networking.ipvlans = mkOption {
default = { };
example = literalExpression ''
{
wan = {
interface = "enp2s0";
mode = "l2";
flags = "vepa";
};
}
'';
description = ''
This option allows you to define ipvlan interfaces which should
be automatically created.
'';
type =
with types;
attrsOf (submodule {
options = {
interface = mkOption {
example = "enp4s0";
type = types.str;
description = "The interface the ipvlan will transmit packets through.";
};
mode = mkOption {
default = "l2";
type = types.enum [
"l2"
"l3"
"l3s"
];
description = "The mode of the interface.";
};
flags = mkOption {
default = null;
type = types.nullOr types.str;
example = "vepa";
description = "The flags of the ipvlan device.";
};
};
});
};
networking.fooOverUDP = mkOption {
default = { };
example = {
+1
View File
@@ -790,6 +790,7 @@ in
installer = handleTest ./installer.nix { };
installer-systemd-stage-1 = handleTest ./installer-systemd-stage-1.nix { };
intune = runTest ./intune.nix;
inventree = runTest ./inventree.nix;
invidious = runTest ./invidious.nix;
invoiceplane = runTest ./invoiceplane.nix;
iodine = runTest ./iodine.nix;
+33
View File
@@ -0,0 +1,33 @@
{ lib, ... }:
{
name = "inventree";
meta.maintainers = with lib.maintainers; [
kurogeek
];
nodes = {
psqlTest = {
services.inventree = {
enable = true;
};
};
mysqlTest = {
services.inventree = {
enable = true;
database.dbtype = "mysql";
};
};
};
testScript = ''
start_all()
psqlTest.wait_for_unit("inventree.target")
psqlTest.wait_for_unit("inventree-server.service")
psqlTest.wait_for_open_unix_socket("/run/inventree/gunicorn.socket")
psqlTest.wait_until_succeeds("curl -sf http://localhost/web")
mysqlTest.wait_for_unit("inventree.target")
mysqlTest.wait_for_unit("inventree-server.service")
mysqlTest.wait_for_open_unix_socket("/run/inventree/gunicorn.socket")
mysqlTest.wait_until_succeeds("curl -sf http://localhost/web")
'';
}
@@ -436,6 +436,38 @@ let
router.wait_until_succeeds("ping -c 1 192.168.1.3")
'';
};
ipvlan = {
name = "IPVLAN";
nodes.client = {
virtualisation.interfaces.enp1s0.vlan = 1;
networking = {
useNetworkd = networkd;
useDHCP = false;
ipvlans = {
ipvlan1.interface = "enp1s0";
ipvlan2.interface = "enp1s0";
};
};
};
testScript = ''
with subtest("Wait for networking to come up"):
client.wait_for_unit("network.target")
with subtest("Can move IPVLANs to separate network namespaces"):
client.succeed("ip netns add ns1 && ip link set dev ipvlan1 netns ns1")
client.succeed("ip netns add ns2 && ip link set dev ipvlan2 netns ns2")
with subtest("Can configure the IPVLAN interfaces"):
client.succeed("ip netns exec ns1 ip addr add 192.168.1.1/24 dev ipvlan1")
client.succeed("ip netns exec ns2 ip addr add 192.168.1.2/24 dev ipvlan2")
client.succeed("ip netns exec ns1 ip link set dev ipvlan1 up")
client.succeed("ip netns exec ns2 ip link set dev ipvlan2 up")
with subtest("IPVLAN interfaces can ping each other"):
client.succeed("ip netns exec ns1 ping -c 1 192.168.1.2")
client.succeed("ip netns exec ns2 ping -c 1 192.168.1.1")
'';
};
fou = {
name = "foo-over-udp";
nodes.machine = clientConfig {
+115
View File
@@ -0,0 +1,115 @@
{ config, lib, ... }:
let
/*
transform all plugins into an attrset
{ optional = bool; plugin = package; }
*/
normalizePlugins =
plugins:
let
defaultPlugin = {
plugin = null;
config = null;
optional = false;
};
in
map (x: defaultPlugin // (if (x ? plugin) then x else { plugin = x; })) plugins;
pluginWithConfigType =
with lib;
types.submodule {
options = {
config = mkOption {
type = types.nullOr types.lines;
description = "viml configuration associated with this plugin.";
default = null;
example = "set title";
};
optional = mkEnableOption "optional" // {
description = "Don't load automatically on startup (load with :packadd)";
};
plugin = mkOption {
type = types.package;
example = lib.literalExpression "vimPlugins.vim-fugitive";
description = "vim plugin";
};
};
};
in
{
options = {
plugins = lib.mkOption {
type = with lib.types; listOf (either package pluginWithConfigType);
default = [ ];
apply = normalizePlugins;
example = lib.literalExpression ''
with pkgs.vimPlugins; [
yankring
vim-nix
{ plugin = vim-startify;
config = "let g:startify_change_to_vcs_root = 0";
}
]
'';
description = ''
List of vim plugins to install optionally associated with
configuration to be placed in init.vim.
'';
};
runtimeDeps = lib.mkOption {
readOnly = true;
type = with lib.types; listOf package;
description = ''
List of derivations required at runtime
'';
};
pluginAdvisedLua = lib.mkOption {
readOnly = true;
type = lib.types.listOf lib.types.lines;
description = ''
Recommended configuration set in vim plugins via ".passthru.initLua".
'';
};
userPluginViml = lib.mkOption {
readOnly = true;
type = lib.types.listOf (lib.types.lines);
description = ''
The viml config set by the user.
'';
};
};
config =
let
pluginsNormalized = normalizePlugins config.plugins;
in
{
pluginAdvisedLua =
let
op =
acc: normalizedPlugin:
acc
++ lib.optional (
normalizedPlugin.plugin.passthru ? initLua
) normalizedPlugin.plugin.passthru.initLua;
in
lib.foldl' op [ ] pluginsNormalized;
runtimeDeps =
let
op = acc: normalizedPlugin: acc ++ normalizedPlugin.plugin.runtimeDeps or [ ];
in
lib.foldl' op [ ] pluginsNormalized;
userPluginViml = lib.foldl (
acc: p: if p.config != null then acc ++ [ p.config ] else acc
) [ ] pluginsNormalized;
};
}
+25 -25
View File
@@ -79,25 +79,30 @@ let
plugins:
let
neovimConfig =
structuredConfigure:
let
module = import ./module.nix;
# Generate init.vim configuration
cfg = (
lib.evalModules {
modules = [
module
structuredConfigure
];
}
);
in
cfg.config;
checked_cfg = neovimConfig {
inherit plugins;
};
pluginsNormalized = normalizePlugins plugins;
vimPackage = normalizedPluginsToVimPackage pluginsNormalized;
userPluginViml = lib.foldl (
acc: p: if p.config != null then acc ++ [ p.config ] else acc
) [ ] pluginsNormalized;
pluginAdvisedLua =
let
op =
acc: normalizedPlugin:
acc
++ lib.optional (
normalizedPlugin.plugin.passthru ? initLua
) normalizedPlugin.plugin.passthru.initLua;
in
lib.foldl' op [ ] pluginsNormalized;
getDeps = attrname: map (plugin: plugin.${attrname} or (_: [ ]));
requiredPlugins = vimUtils.requiredPluginsForPackage vimPackage;
@@ -108,10 +113,11 @@ let
inherit pluginPython3Packages;
# viml config set by the user along with the plugin
inherit userPluginViml;
# recommended configuration set in vim plugins ".passthru.initLua"
inherit pluginAdvisedLua;
inherit (checked_cfg)
userPluginViml
runtimeDeps
pluginAdvisedLua
;
# A Vim "package", see ':h packages'
# You most likely want to use vimPackage as follows:
@@ -119,12 +125,6 @@ let
# finalPackdir = neovimUtils.packDir packpathDirs;
inherit vimPackage;
runtimeDeps =
let
op = acc: normalizedPlugin: acc ++ normalizedPlugin.plugin.runtimeDeps or [ ];
in
lib.foldl' op [ ] pluginsNormalized;
};
/*
@@ -27,12 +27,12 @@ let
hash =
{
x86_64-linux = "sha256-ZtujuSjRzps2f7BchVAW4x8keCnHK5QHGNveCLRE+QQ=";
x86_64-darwin = "sha256-Xe+tWx3LJe65DFCk9pmXBghnSLnol3HA098WdRjs6vo=";
aarch64-linux = "sha256-AjWIfQWrLtGE4V3r6GACA916cwXl9yT/iobfwfLrCBE=";
aarch64-darwin = "sha256-zFRvn9BT5xx+HMWhnI5APKUDekOvZjzbN3SlqtdMBOE=";
armv7l-linux = "sha256-ikFIKd06N1Y1CYHd6RRSJUd9PqxSH2Po7QgDD15EZ5I=";
loongarch64-linux = "sha256-1mpodid9/Vz4OAXhE35UqqC99PuqCg7lRQJy20RL/Zs=";
x86_64-linux = "sha256-x2Un085IBlTTu98fv1Z+INu8UDRttbbNJMZJ3ReHPNE=";
x86_64-darwin = "sha256-3CzZlPCNHy9XtfTSh18Up/iJL0+X16O047UelMkpl10=";
aarch64-linux = "sha256-5prZ9RO8sPv4PunAqwo5Wjc7+ApfGF5FfWEai0Biaqw=";
aarch64-darwin = "sha256-jnAqT3KmQ590eTP4EHEIu03TeRcYDU+bLc/yuJ+Qx/s=";
armv7l-linux = "sha256-PVQ3UVmp8QQL1702kSRSSdh3QYNrD81/3ldFEPMwMKM=";
loongarch64-linux = "sha256-J+YIZbGjMJnHVrOmlML1wpGiwBbwcPJkMdtjxfAgT8w=";
}
.${system} or throwSystem;
@@ -43,7 +43,7 @@ buildVscode rec {
# Please backport all compatible updates to the stable release.
# This is important for the extension ecosystem.
version = "1.109.51242";
version = "1.110.11631";
pname = "vscodium";
executableName = "codium";
@@ -230,6 +230,7 @@ let
isElectron = packageName == "electron";
rustcVersion = buildPackages.rustc.version;
llvmVersion = buildPackages.rustc.llvmPackages.llvm.version;
# libpng has been replaced by the png rust crate
# https://github.com/image-rs/image-png/discussions/562
needsLibpng = !chromiumVersionAtLeast "143";
@@ -555,7 +556,7 @@ let
hash = "sha256-0ueOCHYheSFHRFzEat3TDhnU3Avf0TcNBBBpTkz+saw=";
})
]
++ lib.optionals (chromiumVersionAtLeast "144") [
++ lib.optionals (versionRange "144" "146") [
# Patch rustc_nightly_capability to eval to false instead of true.
# https://chromium-review.googlesource.com/c/chromium/src/+/7022369
./patches/chromium-144-rustc_nightly_capability.patch
@@ -576,27 +577,50 @@ let
hash = "sha256-k+xCfhDuHxtuGhY7LVE8HvbDJt8SEFkslBcJe7t5CAg=";
})
]
++ lib.optionals (chromiumVersionAtLeast "145" && !ungoogled) [
# Non-backported variant of the patch above for M145
++ lib.optionals (chromiumVersionAtLeast "146" && !ungoogled) [
# Same as the patch above, but from ungoogled-chromium and much
# cleaner (and smaller) than reverting an endless chain of CLs.
(fetchpatch {
name = "revert-devtools-frontend-esbuild-instead-of-rollup.patch";
# https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7485622
url = "https://chromium.googlesource.com/devtools/devtools-frontend/+/72846d78927b90a77b51b12d13009320a74067e0^!?format=TEXT";
decode = "base64 -d";
stripLen = 1;
extraPrefix = "third_party/devtools-frontend/src/";
revert = true;
hash = "sha256-vu60z6PuWavNoEoxW0thSy89WxztOEG50V1ZSfJRRug=";
name = "ungoogled-chromium-145-build-with-wasm-rollup.patch";
# https://github.com/ungoogled-software/ungoogled-chromium/blob/145.0.7632.159-1/patches/core/ungoogled-chromium/build-with-wasm-rollup.patch
url = "https://github.com/ungoogled-software/ungoogled-chromium/raw/refs/tags/145.0.7632.159-1/patches/core/ungoogled-chromium/build-with-wasm-rollup.patch";
hash = "sha256-Ho5I33FOgtYHvKSZlWXWuBaqnSHqy4+f6EZdiL+/rRQ=";
})
]
++ lib.optionals (chromiumVersionAtLeast "146") [
# Revert CL 7457194 to fix the following error:
# ERROR at //chrome/test/BUILD.gn:6355:9: Unable to load "/build/src/components/variations/test_data/cipd/BUILD.gn".
# "//components/variations/test_data/cipd:single_group_per_study_prefer_existing_behavior_seed",
(fetchpatch {
name = "revert-devtools-frontend-reland-use-native-rollup.patch";
# https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7368549
url = "https://chromium.googlesource.com/devtools/devtools-frontend/+/7c2d912b52f18fff4a9ef7bd64608f2feefc0d83^!?format=TEXT";
name = "chromium-146-revert-Add-finch-seeds-to-desktop-perf-builds.patch";
# https://chromium-review.googlesource.com/c/chromium/src/+/7457194
url = "https://chromium.googlesource.com/chromium/src/+/d2e8a550eece6051372da94a475a8661da203106^!?format=TEXT";
decode = "base64 -d";
stripLen = 1;
extraPrefix = "third_party/devtools-frontend/src/";
revert = true;
hash = "sha256-Qa4GvamZ//0WTAZmDXOQJVz9dnYNzBkD8lYcWOHdVIY=";
hash = "sha256-tJ//HE7o9R8nSQDGhi+MKXdNUwnkCZI++CzpAmFn2YY=";
})
]
++ lib.optionals (chromiumVersionAtLeast "146" && lib.versionOlder llvmVersion "23") [
# clang++: error: unknown argument: '-fsanitize-ignore-for-ubsan-feature=array-bounds'
(fetchpatch {
name = "chromium-146-revert-Update-fsanitizer=array-bounds-config.patch";
# https://chromium-review.googlesource.com/c/chromium/src/+/7539408
url = "https://chromium.googlesource.com/chromium/src/+/acb47d9a6b56c4889a2ed4216e9968cfc740086c^!?format=TEXT";
decode = "base64 -d";
revert = true;
hash = "sha256-WZsN2qm6lX121bDf7SoN75flXtCTmPPpwtHK0ayjkPc=";
})
]
++ lib.optionals (versionRange "146" "147") [
# Backport CL 7594600 from M147 to fix the following error:
# error[E0277]: the trait bound `LaneCount<N>: SupportedLaneCount` is not satisfied
# --> ../../third_party/rust/chromium_crates_io/vendor/bytemuck-v1/src/pod.rs:152:40
(fetchpatch {
name = "chromium-146-backport-Remove-now-obsolete-invalid-patch-on-bytemuck-v1.patch";
# https://chromium-review.googlesource.com/c/chromium/src/+/7594600
url = "https://chromium.googlesource.com/chromium/src/+/90b77efcecb262823fadb67b0ce218846cd9e756^!?format=TEXT";
decode = "base64 -d";
hash = "sha256-iDhDdVscy0tinQCRKXOghrn4ZRwlc8YjPZ0xPv0UMEU=";
})
];
@@ -697,20 +721,6 @@ let
'${glibc}/share/locale/'
''
# Workaround (crimes) for our rollup/esbuild revert in M145.
# https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7414812
# We cannot use fetchpatch{,2} because it silently drops blobs and messes up symlinks.
# We cannot use GNU patch (patchPhase) because it does not support git binary diffs.
# We cannot use Gerrit/Gitiles because the git sha lengths may change as the repo grows.
+ lib.optionalString (chromiumVersionAtLeast "145" && !ungoogled) ''
${lib.getExe buildPackages.git} apply --reverse --directory=third_party/devtools-frontend/src/ ${
fetchurl {
name = "revert-devtools-frontend-remove-rollup-wasm.patch";
url = "https://github.com/ChromeDevTools/devtools-frontend/commit/a377a8c570a370e1bfccaf82f128e3b977dbf866.patch?full_index=1";
hash = "sha256-83T37ts54iotGYQAAyVv5CF8fMVrh/tfVRhfWaOlUkI=";
}
}
''
+ ''
# Allow to put extensions into the system-path.
sed -i -e 's,/usr,/run/current-system/sw,' chrome/common/chrome_paths.cc
@@ -872,12 +882,20 @@ let
// (extraAttrs.gnFlags or { })
);
preConfigure = lib.optionalString (!isElectron) ''
(
cd third_party/node
grep patch update_npm_deps | sh
)
'';
preConfigure =
lib.optionalString (!isElectron) ''
(
cd third_party/node
grep patch update_npm_deps | sh
)
''
# Our node_modules, unlike the tarball from chromium, includes @lit/reactive-element/development,
# which causes a "error: TS2403: Subsequent variable declarations must have the same type" later in the build.
# TypeScript is parsing both @lit/reactive-element/reactive-element.d.ts and @lit/reactive-element/development/reactive-element.d.ts,
# but lit_reactive_element.patch only patches the former.
+ lib.optionalString (chromiumVersionAtLeast "146") ''
rm -r third_party/node/node_modules/@lit/reactive-element/development
'';
configurePhase = ''
runHook preConfigure
@@ -1,28 +1,28 @@
{
"chromium": {
"version": "145.0.7632.159",
"version": "146.0.7680.71",
"chromedriver": {
"version": "145.0.7632.160",
"hash_darwin": "sha256-JQpTpNyI50HuUFtM70JUqm/JVCZeXxojp54kJqjrrYg=",
"hash_darwin_aarch64": "sha256-eXip9I36nZw8PvzrA3+0/yMt+XmX5TNvVgQ2XaSlYzY="
"version": "146.0.7680.72",
"hash_darwin": "sha256-pm7HJA+yr7gQFYHpYC1ELD8zDFzrzcRDpkjbqmjWcbs=",
"hash_darwin_aarch64": "sha256-ffgeYa2Rvrg9LUTpKJ4tkBysVkMMUkrBkju6ULHU/dI="
},
"deps": {
"depot_tools": {
"rev": "fb0b652edba70f5c4ac867f3beca9e535f905b4c",
"hash": "sha256-feguZuDeGytydebRiIK2FqxNStXFdXv191IDEuhag+o="
"rev": "42786f6e46c25c30dd58f69283ab6fcd0c959f58",
"hash": "sha256-wI3L6w3G9QCWzvSSUXeLJFHZ+7iv01hs+ig12EXJFHk="
},
"gn": {
"version": "0-unstable-2026-01-07",
"rev": "5550ba0f4053c3cbb0bff3d60ded9d867b6fa371",
"hash": "sha256-SoXVnpCuNee80N4YdsTEHQd3jZNoHOwKVP6O8a67Ym0="
"version": "0-unstable-2026-02-05",
"rev": "304bbef6c7e9a86630c12986b99c8654eb7fe648",
"hash": "sha256-wFCuu4GR0N7QZCwT8UAhqH5moicYQjZ4ZLI58AM4pJ0="
},
"npmHash": "sha256-13sgV/5BD7QvDLBAEmoLN5vongw+S5v5znvZcctxhWc="
"npmHash": "sha256-ByB1Ea5tduIJZXyydeBWsoS8OPABOgwHe+dNXRssdvc="
},
"DEPS": {
"src": {
"url": "https://chromium.googlesource.com/chromium/src.git",
"rev": "838c69b2e5b8cd00a916e35097249bc20eb25a0a",
"hash": "sha256-lWw909vzUiAo0yzx3sZqEEWf9fpZkIxArP6G7+6ImXM=",
"rev": "e00a64ead1abef9447943efede7bc26362ac3797",
"hash": "sha256-hZPRH4Q2PQqXDhMXHHcav+37US+7vuN176rhpcoOeq8=",
"recompress": true
},
"src/third_party/clang-format/script": {
@@ -32,8 +32,8 @@
},
"src/third_party/compiler-rt/src": {
"url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/compiler-rt.git",
"rev": "c3c996fabde14dbbbb92d1a5cdd9d6592e1dd038",
"hash": "sha256-HCE+p1lYX7EhdkEzhr+8g2P5pSHUx/5pweAtWiQsgDI="
"rev": "86587046105639b66fe40059bf8fdb8a33522f97",
"hash": "sha256-Ah/ErOAoKo49VYXHg7MRRdwpjf1azOLp/k5RSf6LJbI="
},
"src/third_party/libc++/src": {
"url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git",
@@ -47,13 +47,13 @@
},
"src/third_party/libunwind/src": {
"url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git",
"rev": "a726f5347e1e423d59f5c2d434b6a29265c43051",
"hash": "sha256-aZCJlwWr+XxwzVFBqMRziFfMu1l2jM8Nf8/GdZIGt4Y="
"rev": "ba19d93d6d4f467fba11ff20fe2fc7c056f79345",
"hash": "sha256-iRfpzVN+QEpN6okwVs5oEtZqIJYzFGxsUO/IJY1c/W8="
},
"src/third_party/llvm-libc/src": {
"url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git",
"rev": "e9f0fd9932428fc109b848892050daadc2d91cc9",
"hash": "sha256-engzBRJGh2N3bemb/Q3bLnhFrpJNuIpVd4105Ny+1O0="
"rev": "5705ee75b1fafbf96ff11534a9976f10d6c47dfd",
"hash": "sha256-f4Xfk3SN+miTE6Fc3hqe8dlxBPblOPghTLYdnUmPDus="
},
"src/chrome/test/data/perf/canvas_bench": {
"url": "https://chromium.googlesource.com/chromium/canvas_bench.git",
@@ -72,8 +72,8 @@
},
"src/docs/website": {
"url": "https://chromium.googlesource.com/website.git",
"rev": "cb33846322e88ba1acc3188c1daa4b00b94be767",
"hash": "sha256-zjzyJ9glyV1tvETWS+TOByUOZ/OFCAzG30Bxf4ehT3Q="
"rev": "5522b25f3da74caafdcd3f1bcf33380f9f023a1c",
"hash": "sha256-NmU/u3gWFkjVhZeEaESGn013mnsPmIDUK79lsVc/JzE="
},
"src/media/cdm/api": {
"url": "https://chromium.googlesource.com/chromium/cdm.git",
@@ -82,8 +82,8 @@
},
"src/net/third_party/quiche/src": {
"url": "https://quiche.googlesource.com/quiche.git",
"rev": "022c607b07590ba1cf36ba3d0b24878ff3c03a77",
"hash": "sha256-CTujkLFcWNrHlhvFsXEZeB3fk66zK/3JmsGcwhpq4yM="
"rev": "24430cb4103438f3cd1680f8f89d7c9e4288d5ca",
"hash": "sha256-QEmVSKg1qbJ2aKrCq3AOgDQ3yMPx1dcvSJcGEjAffDg="
},
"src/testing/libfuzzer/fuzzers/wasm_corpus": {
"url": "https://chromium.googlesource.com/v8/fuzzer_wasm_corpus.git",
@@ -92,8 +92,8 @@
},
"src/third_party/angle": {
"url": "https://chromium.googlesource.com/angle/angle.git",
"rev": "2d051d9cef02bca69a97749a995b138e3dec0e1f",
"hash": "sha256-m/9vp7BAhRvVVOyRT6jCoNKP5PbiAZlCpqUHvFu1byA="
"rev": "1d3190bf5633327395d694d621258978d989dffd",
"hash": "sha256-QVtTxBBox8fiqTj0gjqvYx6HoBSlvuWIe5ki4iCQl08="
},
"src/third_party/angle/third_party/glmark2/src": {
"url": "https://chromium.googlesource.com/external/github.com/glmark2/glmark2",
@@ -107,8 +107,8 @@
},
"src/third_party/angle/third_party/VK-GL-CTS/src": {
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS",
"rev": "70cfd2061d441aaa600b3dc740220f231bd09d93",
"hash": "sha256-cB4zWtcDgsJcLDn2hzGdFp5Xs8KSOszVzk11CgvMxWg="
"rev": "1698899cb078aacfb11d6b8eb5c4753d86bd2661",
"hash": "sha256-oifCX+zx63p5eB7nnfE+FM895Ino3gmS39N5twBIAKg="
},
"src/third_party/anonymous_tokens/src": {
"url": "https://chromium.googlesource.com/external/github.com/google/anonymous-tokens.git",
@@ -132,8 +132,8 @@
},
"src/third_party/dawn": {
"url": "https://dawn.googlesource.com/dawn.git",
"rev": "3df397b5b33f950da92787d9a6ac655e0601bca2",
"hash": "sha256-UAKnxnEScteAj+14i56K6VA34JM+J4KCpG4HbY2bT4s="
"rev": "c46c81b25577c40de6e7e510743ae0454e0c8351",
"hash": "sha256-Duv3kNulPtVxCLPa3bFIev64O9Y4ObJP/IZz31oPJ0E="
},
"src/third_party/dawn/third_party/glfw": {
"url": "https://chromium.googlesource.com/external/github.com/glfw/glfw",
@@ -142,8 +142,8 @@
},
"src/third_party/dawn/third_party/dxc": {
"url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectXShaderCompiler",
"rev": "496974907e2ac7666f8bc889287d174755703016",
"hash": "sha256-/snH1gbxf1ghSNp371y6o8QIxLXz6pHwIZmbc9k4JAw="
"rev": "907ddace203afad066242f3c1b1b59e86dbb34ee",
"hash": "sha256-0bIw1sVkVqNinAqt9u1Zeyltrnd02TWSRTOT4TcT3OY="
},
"src/third_party/dawn/third_party/dxheaders": {
"url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectX-Headers",
@@ -162,8 +162,8 @@
},
"src/third_party/dawn/third_party/webgpu-cts": {
"url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts",
"rev": "cf6c5cd8e96d97754daa78b9e63976f8f9d84624",
"hash": "sha256-kP/sWmijWt+fDEHdN6CuXBu5qGYV7nGW4gvU2nS4M8Y="
"rev": "f1db17e4ab8b6a5a7d2709a67927d8a769a741a4",
"hash": "sha256-5Fdl72VNfNnofPMG/ZWO0MJ2N7Dmcn+6sOLNqw5+IF4="
},
"src/third_party/dawn/third_party/webgpu-headers/src": {
"url": "https://chromium.googlesource.com/external/github.com/webgpu-native/webgpu-headers",
@@ -187,13 +187,13 @@
},
"src/third_party/boringssl/src": {
"url": "https://boringssl.googlesource.com/boringssl.git",
"rev": "c88440cb71fa8bd7d758f6bd4fe14541acc81bdd",
"hash": "sha256-xx3ETtXon0vNuWMDuOdZIwEOPkf9SDvqjWwAfbG8WMU="
"rev": "2a7ca5404e136341b63a2c7608bd1f6924f09294",
"hash": "sha256-WglRBVPuUMskW0+bwV0sJiuHmXeWy1Nis0ln3KJlyKQ="
},
"src/third_party/breakpad/breakpad": {
"url": "https://chromium.googlesource.com/breakpad/breakpad.git",
"rev": "bcf7b6f1596e52a8ff0bbd0c9e32a321380b3954",
"hash": "sha256-zvGySunmbqmX+0GG4fR+ZiH6P26Ez380OT7ok3hHcfo="
"rev": "79099fdf668ae097c9eca7052fd5c4c5de6c9098",
"hash": "sha256-dtuBGcYwwaqSKiW7ASFveAeJqcdnFLeU97ip8D786/Q="
},
"src/third_party/cast_core/public/src": {
"url": "https://chromium.googlesource.com/cast_core/public",
@@ -202,8 +202,8 @@
},
"src/third_party/catapult": {
"url": "https://chromium.googlesource.com/catapult.git",
"rev": "6a01cf2195fd7b356ee5fc505bd72d988ae873ec",
"hash": "sha256-2rcl1/Ez7G47bKn+e+eU/rBx4BxxfPnMuGgXSSmyVAc="
"rev": "a476f554f8865b7d162ec9f1ad8aae1eab38e048",
"hash": "sha256-fdmcMUvK8h8q109tcwlOAD31lchNyTxkATfh1uRVDEA="
},
"src/third_party/ced/src": {
"url": "https://chromium.googlesource.com/external/github.com/google/compact_enc_det.git",
@@ -227,8 +227,8 @@
},
"src/third_party/cpuinfo/src": {
"url": "https://chromium.googlesource.com/external/github.com/pytorch/cpuinfo.git",
"rev": "0fea7f5f88243ee354df0e0082b5f27d13fc9551",
"hash": "sha256-WDerJmNMy2Rjs/Xxx/quYX8Youq1BTzaDeHw/8BihrQ="
"rev": "84818a41e074779dbb00521a4731d3e14160ff15",
"hash": "sha256-eXrfeFK0ADKAYoy/vESv7nQnH0oGpeZKlX8XEqPQspo="
},
"src/third_party/crc32c/src": {
"url": "https://chromium.googlesource.com/external/github.com/google/crc32c.git",
@@ -237,28 +237,28 @@
},
"src/third_party/cros_system_api": {
"url": "https://chromium.googlesource.com/chromiumos/platform2/system_api.git",
"rev": "3757fb80b4ba36fa44ce2d1e192d1164dc8627f2",
"hash": "sha256-F1+8NJkpuocpLIpbcHJ2cRbP0Xwpiaj430GozrMGcwM="
"rev": "9cd08527738f3684f5f74053f4b6db6cb1a3b165",
"hash": "sha256-nmwwvdgVGzg4tiYPHYAPCdU/49Cw61+7oythtpuejHM="
},
"src/third_party/crossbench": {
"url": "https://chromium.googlesource.com/crossbench.git",
"rev": "8f7c9b39f4c14b7a6a4b3b3006189bc81d9385b7",
"hash": "sha256-+1OQi7V1Z0f7J1fHkuj3Eg2DjTw8kEytm4YtEFHk4N8="
"rev": "274eec196c5343b2059a29558396a8a54b3f0695",
"hash": "sha256-fwD0OMubN3MY1xAYrIfOSq75Os8Ct6+Ev6ld8j/tkZg="
},
"src/third_party/crossbench-web-tests": {
"url": "https://chromium.googlesource.com/chromium/web-tests.git",
"rev": "3c76c8201f0732fe9781742229ab8ac43bf90cbf",
"hash": "sha256-yJmi1IpUiKhdoHAXyazkpm+Ezuc4Hp8pOIBntG5hN+U="
"rev": "d2424bbd8125374af35f0b9fe9f70ec2e1277548",
"hash": "sha256-mowr2K6jMn5tOR1McTIYHPmL7Mhn0k4SXE+RVjTn/XU="
},
"src/third_party/depot_tools": {
"url": "https://chromium.googlesource.com/chromium/tools/depot_tools.git",
"rev": "fb0b652edba70f5c4ac867f3beca9e535f905b4c",
"hash": "sha256-feguZuDeGytydebRiIK2FqxNStXFdXv191IDEuhag+o="
"rev": "42786f6e46c25c30dd58f69283ab6fcd0c959f58",
"hash": "sha256-wI3L6w3G9QCWzvSSUXeLJFHZ+7iv01hs+ig12EXJFHk="
},
"src/third_party/devtools-frontend/src": {
"url": "https://chromium.googlesource.com/devtools/devtools-frontend",
"rev": "b1eec47965f0f0bed968133496c5c097fb41cc0e",
"hash": "sha256-Ol7VWhAxk95jQE8umtvZxhJNtYIQDNj9DHSoEWs765I="
"rev": "890a74027b0fdeaee6bbf0a0b9b108bbda7af5b9",
"hash": "sha256-k4k7r5wcgl6t13TsDTPCrYhgG44To+yvmvNsx0FPWZE="
},
"src/third_party/dom_distiller_js/dist": {
"url": "https://chromium.googlesource.com/chromium/dom-distiller/dist.git",
@@ -272,8 +272,8 @@
},
"src/third_party/eigen3/src": {
"url": "https://chromium.googlesource.com/external/gitlab.com/libeigen/eigen.git",
"rev": "251bff28859af2ed2d5bdf14034175f03cafffc7",
"hash": "sha256-TPFCtsAO19suDfjJQmoJkVQllPK0Spz6ynQ/mvuDl2E="
"rev": "afb43805349cf1cbec0083d94256bb8f72cbc53b",
"hash": "sha256-GpuSoq887Z1qGKsc4+Vz8X+Sx40P6UnWhaQgrmigkdQ="
},
"src/third_party/farmhash/src": {
"url": "https://chromium.googlesource.com/external/github.com/google/farmhash.git",
@@ -292,8 +292,8 @@
},
"src/third_party/ffmpeg": {
"url": "https://chromium.googlesource.com/chromium/third_party/ffmpeg.git",
"rev": "fd8d327732d4c4a3ef831f4de49635e9528cb73e",
"hash": "sha256-yVhFttQOnuQAoOHt4crImcoFYmMvDz5b7Z6npqOKA/k="
"rev": "ae11d2ba5c835b822a61d6a99eeb853ca30d41d8",
"hash": "sha256-j8d6N+qmBHvWiQNaXtdYRaRkEYVMAMU7J2CZVc+0hG0="
},
"src/third_party/flac": {
"url": "https://chromium.googlesource.com/chromium/deps/flac.git",
@@ -322,8 +322,8 @@
},
"src/third_party/freetype/src": {
"url": "https://chromium.googlesource.com/chromium/src/third_party/freetype2.git",
"rev": "341049a95bacfc5debf6c9daf537b7acec27f3dd",
"hash": "sha256-8xzdxVv0pFCuW6tKgfsKkW1Rm5mZ1UZnB89LWiidCUU="
"rev": "e3a0652b6d706ee1ce77d4dda606b6597dd8b5c4",
"hash": "sha256-CorCyTiS2fumIF0jhqQgw7VjGkjGXNVD8efdmfZ2wUo="
},
"src/third_party/fxdiv/src": {
"url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FXdiv.git",
@@ -342,8 +342,8 @@
},
"src/third_party/ink_stroke_modeler/src": {
"url": "https://chromium.googlesource.com/external/github.com/google/ink-stroke-modeler.git",
"rev": "2cd45e8683025c28fa2efcf672ad46607e8af869",
"hash": "sha256-h/xI/TPV2yiRLqrBgaDAkr8Nfg3RLkjHVuYX+nH99CQ="
"rev": "278aacc769cd42e09e4d0cd4ac4dcff87fe32c20",
"hash": "sha256-z5heZU5X6CITxOTu92GwZjmsi30xcV93CUltCYnTL0o="
},
"src/third_party/instrumented_libs": {
"url": "https://chromium.googlesource.com/chromium/third_party/instrumented_libraries.git",
@@ -407,8 +407,8 @@
},
"src/third_party/fuzztest/src": {
"url": "https://chromium.googlesource.com/external/github.com/google/fuzztest.git",
"rev": "a72f099a943c257afe8d4d87c10a22b23e17786d",
"hash": "sha256-yanwxROo2cE8CntKWh4bcu1aNAlKVRqkowEc7nQlnYc="
"rev": "54dfec04d5c9ad1f22b08002ab6a5e2d0de77671",
"hash": "sha256-CqJJ1hj9nQkGONB+5tJgafg1xvrPgTuE3tM8RjO2RY0="
},
"src/third_party/domato/src": {
"url": "https://chromium.googlesource.com/external/github.com/googleprojectzero/domato.git",
@@ -422,8 +422,8 @@
},
"src/third_party/libaom/source/libaom": {
"url": "https://aomedia.googlesource.com/aom.git",
"rev": "e3d6ba6e5e9888a7ca69eb114c6eb913275f253c",
"hash": "sha256-XlTfcHKrT1kOF108WlBIIViM/5I2m1FWyaI+oSwz+aw="
"rev": "4018d3b63456eb657475e66c352bfa86f321e0f5",
"hash": "sha256-RuCmzPIR6hW8znjQH4kQqSJmIIJWtMkUQjYEVn3B9AE="
},
"src/third_party/crabbyavif/src": {
"url": "https://chromium.googlesource.com/external/github.com/webmproject/CrabbyAvif.git",
@@ -442,8 +442,8 @@
},
"src/third_party/jetstream/main": {
"url": "https://chromium.googlesource.com/external/github.com/WebKit/JetStream.git",
"rev": "181f3cc3eded22f2b6c0f086c334b27e91b58146",
"hash": "sha256-2raIaeYpN/2vgOjBYvw+N8vq9SZYyPwAGN6PS0PM5X0="
"rev": "ad5e39771904b63750ae410fb00b71c9d2992b03",
"hash": "sha256-y3JKkY2tQ9rC9piFlWaUVmsSOfeWkyKFx2Qv9Lo6nrI="
},
"src/third_party/jetstream/v2.2": {
"url": "https://chromium.googlesource.com/external/github.com/WebKit/JetStream.git",
@@ -487,8 +487,8 @@
},
"src/third_party/libdrm/src": {
"url": "https://chromium.googlesource.com/chromiumos/third_party/libdrm.git",
"rev": "ad78bb591d02162d3b90890aa4d0a238b2a37cde",
"hash": "sha256-woSYEDUfcEBpYOYnli13wLMt754A7KnUbmTEcFQdFGw="
"rev": "369990d9660a387f618d0eedc341eb285016243b",
"hash": "sha256-kOaTjBeo4IsfWEk/JBTNId5ikrnpoc9DEjIl7DUd2yE="
},
"src/third_party/expat/src": {
"url": "https://chromium.googlesource.com/external/github.com/libexpat/libexpat.git",
@@ -537,8 +537,8 @@
},
"src/third_party/libvpx/source/libvpx": {
"url": "https://chromium.googlesource.com/webm/libvpx.git",
"rev": "d5f35ac8d93cba7f7a3f7ddb8f9dc8bd28f785e1",
"hash": "sha256-98VKR36hEmGJtI7B5u2RBoFVUINETRSVwzldVRGJge0="
"rev": "e83e25f791932202256479052f18bdd03a091147",
"hash": "sha256-/FtYzbcOgOlaaWCoJfYns5oye7DoRZx1/xew3lN7tAM="
},
"src/third_party/libwebm/source": {
"url": "https://chromium.googlesource.com/webm/libwebm.git",
@@ -552,8 +552,8 @@
},
"src/third_party/libyuv": {
"url": "https://chromium.googlesource.com/libyuv/libyuv.git",
"rev": "022efdb0b771f7353741dbe360b8bef4e0a874eb",
"hash": "sha256-Em/B9HMHFHGSMpvh/Nn96FCFIf9fQe0INfkzC/8o+cM="
"rev": "917276084a49be726c90292ff0a6b0a3d571a6af",
"hash": "sha256-2lnobd22L9u+h6JGWJoWT/0gjhI5JImDsEjn+RRYzJg="
},
"src/third_party/lss": {
"url": "https://chromium.googlesource.com/linux-syscall-support.git",
@@ -587,8 +587,8 @@
},
"src/third_party/openscreen/src": {
"url": "https://chromium.googlesource.com/openscreen",
"rev": "8fc39671507f53d4c81fee9f7880b55ce21d9b10",
"hash": "sha256-pRUcOu+HM1KUYAzcP8x8RVQevB3OWNxpjOozTQZFpvQ="
"rev": "67cac118873cb41fd19e3fc8b1b4010b3eecf683",
"hash": "sha256-X2U179s+ZFUeazygFcCyu0/kskz0gORENXG/9NleCfQ="
},
"src/third_party/openscreen/src/buildtools": {
"url": "https://chromium.googlesource.com/chromium/src/buildtools",
@@ -602,13 +602,13 @@
},
"src/third_party/pdfium": {
"url": "https://pdfium.googlesource.com/pdfium.git",
"rev": "004b47619573a582c076679764e07725ace3e497",
"hash": "sha256-PHu3v/ZeEa11/CTGJh8aJjV/lTIVSJ6W7uH2njsHj1w="
"rev": "67cf48602b0c8aaa9807cd185212ee078eb30b21",
"hash": "sha256-jMoYwf63C0IHx/QcOT+LKCCYN3dJVUhC5COukkhwqx0="
},
"src/third_party/perfetto": {
"url": "https://chromium.googlesource.com/external/github.com/google/perfetto.git",
"rev": "698c3b289159cf14ac110e21d5ed424c8a9f35b4",
"hash": "sha256-EV2b1B7oSUlzleQOna+e0m+i6h2dfnEqiyLrXiWZekQ="
"rev": "436a00fb3edbec1ca5a12ea678a7ee81cf2b6f31",
"hash": "sha256-F3MmIOhwDGJnruz8nZNzbyElDZcpz6wEzLmoyehnvsU="
},
"src/third_party/protobuf-javascript/src": {
"url": "https://chromium.googlesource.com/external/github.com/protocolbuffers/protobuf-javascript",
@@ -617,8 +617,8 @@
},
"src/third_party/pthreadpool/src": {
"url": "https://chromium.googlesource.com/external/github.com/google/pthreadpool.git",
"rev": "d90cd6f1493e09d12c407243f7f331a8cda55efb",
"hash": "sha256-VdgC6LMzcfhH2Y65Gu+Osi6BXxIq01Fmw5AehsBlX70="
"rev": "9003ee6c137cea3b94161bd5c614fb43be523ee1",
"hash": "sha256-Es9QNblzo5b+x4K7myQJwIiUKvqyP16QExWPhGqqDO8="
},
"src/third_party/pyelftools": {
"url": "https://chromium.googlesource.com/chromiumos/third_party/pyelftools.git",
@@ -637,23 +637,23 @@
},
"src/third_party/re2/src": {
"url": "https://chromium.googlesource.com/external/github.com/google/re2.git",
"rev": "e7aec5985072c1dbe735add802653ef4b36c231a",
"hash": "sha256-WOwDr0VEjvJyEmvrpw0YmlAnHJP0+0q28fUVpl4E7Eg="
"rev": "972a15cedd008d846f1a39b2e88ce48d7f166cbd",
"hash": "sha256-oEU+dz8ax1S36+f9OysjB0GnQj8mjZx1VsZ/UgckdDI="
},
"src/third_party/ruy/src": {
"url": "https://chromium.googlesource.com/external/github.com/google/ruy.git",
"rev": "576e020f06334118994496b45f9796ed7fda3280",
"hash": "sha256-zJ7EYxIoZvN2uOfPscKzWycBO057g4bMnTys2sUrp2M="
"rev": "de9b160a51ab3a06ce8505b96f7548fa09837a10",
"hash": "sha256-qa9x2n+2R4C9DhMY3ued4IWWY3lnE03/dZ6wYjeQsQk="
},
"src/third_party/search_engines_data/resources": {
"url": "https://chromium.googlesource.com/external/search_engines_data.git",
"rev": "de5efa2da62237b03fad0775853b990f6b1ba307",
"hash": "sha256-1Usj0nS6pjFTpF1QDl+xsYsfogzUY8WK1Mto17kwzOM="
"rev": "9be56ed146f8334c39cd70ab7434fdf726a4f4a4",
"hash": "sha256-PFALT2hhIUrDB1YS2tMq29z1xG9aXLZzJnGOk6RthxM="
},
"src/third_party/skia": {
"url": "https://skia.googlesource.com/skia.git",
"rev": "fba326b8829e469ac02e5a68a0d36982ef1975bc",
"hash": "sha256-nh7zr1piXYNMyVcqswRqhepF89TF0rKASYM0QuJIof0="
"rev": "50841da4a7b7064b3cea8a851e60ef921c87a103",
"hash": "sha256-RoLgaE5mj9UqePhnfH+BOTit04TyiAvgF7/2PLuBG4Y="
},
"src/third_party/smhasher/src": {
"url": "https://chromium.googlesource.com/external/smhasher.git",
@@ -672,8 +672,8 @@
},
"src/third_party/swiftshader": {
"url": "https://swiftshader.googlesource.com/SwiftShader.git",
"rev": "76b5d96a9287a0ba62eaf407dc3e6bb3ba4781ca",
"hash": "sha256-JJNZvsL3UBWsWUTkZvtN5FigeztGHk71J0IkKkydaKU="
"rev": "b7b7fd22e5f28079b92412f47f6da4df43e4cd37",
"hash": "sha256-ARFgIJvRzKWin1DJBr7xoeWCuLjuTEu/U0Fqbq8/ono="
},
"src/third_party/text-fragments-polyfill/src": {
"url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/text-fragments-polyfill.git",
@@ -682,23 +682,23 @@
},
"src/third_party/tflite/src": {
"url": "https://chromium.googlesource.com/external/github.com/tensorflow/tensorflow.git",
"rev": "48401a9c25ddb7cb882074d48c79f91d1f6a89e0",
"hash": "sha256-O9ozY6eT5vMiLyt87/WP5MHtDEE338vVHUlYMakQMQU="
"rev": "01e030d23d3b904d98cbf908da74d63b3c186949",
"hash": "sha256-pIhOSb9eLzel5oDPCpxCvI2XJ2jGLdLURCRkd1BbMkk="
},
"src/third_party/litert/src": {
"url": "https://chromium.googlesource.com/external/github.com/google-ai-edge/LiteRT.git",
"rev": "ba80d53cf2e97763b48ebbd03120871b57820f99",
"hash": "sha256-RpJr48gUifdE4PxDcOYR7jh4iD5KeGK1X3Tf9Gs+/5g="
"rev": "320c13c17b995e7ccd7b8d6560db255d2f994199",
"hash": "sha256-pttQPrsptpnLmycmburH3Zh4pvIFgRDudZa9qLC3vjc="
},
"src/third_party/vulkan-deps": {
"url": "https://chromium.googlesource.com/vulkan-deps",
"rev": "6288ed7195cec9ae0fc04e2ffd81b642fa4afecf",
"hash": "sha256-fBYBYtfw8io7zghPJjBlqovNfIxKx8kt7e7OEMc1wRk="
"rev": "2cb91a73a9fb82fb967b9432286e7882d791ae91",
"hash": "sha256-duQjSjwS8T6q+l5VEr8MT+LEQNJPROOhBt93myD+3II="
},
"src/third_party/glslang/src": {
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang",
"rev": "b937eae5e2ae1e29efe8f8775feaa434239806d2",
"hash": "sha256-PpVXGRzxmsfUpYCtqx31GPToUI64sHZNc558YGqWNjk="
"rev": "e9c2cb495285706c6980932483e7fa9566107ac1",
"hash": "sha256-8sMsiLwOoEdgUsxwyZ6AoT7TAeC2/oApsQg8no1iNmQ="
},
"src/third_party/spirv-cross/src": {
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross",
@@ -707,38 +707,38 @@
},
"src/third_party/spirv-headers/src": {
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers",
"rev": "babee77020ff82b571d723ce2c0262e2ec0ee3f1",
"hash": "sha256-GWcNNw08XoKaZs/BTW9nPAEMHL8wqbhbUm56PUtEan4="
"rev": "f31ca173eff866369e54d35e53375fadbabd58f4",
"hash": "sha256-gND9ef2irqv3v79FSZcFElhiBC6jcKC4XSG6KP2mrFg="
},
"src/third_party/spirv-tools/src": {
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools",
"rev": "65b2ace21293057714b7fa1e87bd764d3dcef305",
"hash": "sha256-C+ftOmQgHBdDnaIvhJmsFBSxxUoGLTDKzF7ViC0mtrU="
"rev": "f139c64525c7c449c83d299a9fda4e1657bf37ab",
"hash": "sha256-yDcOY2t8n9sUOLo03KGHN95SNfsctOfou1dJ/2R/njQ="
},
"src/third_party/vulkan-headers/src": {
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers",
"rev": "0777a3ad88bad5f4b11cfd509458bbc0ddadc773",
"hash": "sha256-F/dPxVemqinpd6P+XlEvM/B+nJtTbT3bVzyRf6pBCxg="
"rev": "49f1a381e2aec33ef32adf4a377b5a39ec016ec4",
"hash": "sha256-K/8X9D7B0o6+osOzScplwea+OsfM3srAtDKCgfZpcJU="
},
"src/third_party/vulkan-loader/src": {
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader",
"rev": "255cef037950894f88f6e2b2f83a04c188661a95",
"hash": "sha256-Te8d4jrRZQ0EalxyIL8Rm0VcfHzPbOXwuz9yc2hkYYQ="
"rev": "ab275e43c69f273185a72afa031c7e881b587a42",
"hash": "sha256-nQqF0ff9IoBWnrauMQ/9BoI3aWh5syyvzqTvH/3vTfw="
},
"src/third_party/vulkan-tools/src": {
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools",
"rev": "e8a4ce73f3244d814ccc84e723bb0442fab4dcf7",
"hash": "sha256-jdOQb0uJ630k4IsmJizALd20Pr2nMj1NaJDP2wr25VE="
"rev": "39a19dccf79d28951516c3c7c9f1ee4a606fb733",
"hash": "sha256-TGgU9IIsuQKs7XKmnoOaD870aR8+txsRZu8nj//K+ks="
},
"src/third_party/vulkan-utility-libraries/src": {
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries",
"rev": "b4e9ebbfc779cba85f1efbe2f69fdfc5744ed5e5",
"hash": "sha256-aWbgeG7X498ctWCzzGw3HHQvkKjS6TxAooQVt+MpU1Y="
"rev": "50af38b6cd43afb1462f9ad26b8d015382d11a3d",
"hash": "sha256-4i9+7BXmJHkDRzUE+gbwCNBcW2h0xDP7hcHH/DH2QZg="
},
"src/third_party/vulkan-validation-layers/src": {
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers",
"rev": "50d1012d9ce7f7b7d6c801f01e55e0373b1401bc",
"hash": "sha256-4S0AK6URyRzOGphrkoaClXda+WB9AsJD1ZVKXBHK53g="
"rev": "cee14167434e805deb7010e1bbc1866a5f013d58",
"hash": "sha256-rCBqqcjGNjD8vIN/WSkxVLRRTxHnH+cAZTr87tuG2uU="
},
"src/third_party/vulkan_memory_allocator": {
"url": "https://chromium.googlesource.com/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git",
@@ -777,18 +777,18 @@
},
"src/third_party/webgpu-cts/src": {
"url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts.git",
"rev": "cf6c5cd8e96d97754daa78b9e63976f8f9d84624",
"hash": "sha256-kP/sWmijWt+fDEHdN6CuXBu5qGYV7nGW4gvU2nS4M8Y="
"rev": "eb9091d141e126fd9479a62aeceb927b73b6af47",
"hash": "sha256-BJuBJGsP+rEzLDREo8pARqyX/DOQS9BcZ4KWnris/EM="
},
"src/third_party/webpagereplay": {
"url": "https://chromium.googlesource.com/webpagereplay.git",
"rev": "2bfcbbe006bc877b35fe6bf5eb2fea96a0b0e33f",
"hash": "sha256-AzohiIs4Nu9rcxYJ+l+lnScgGU6xQ7HGE5lT6v8tv1E="
"rev": "50c853586c642039992d9b0215f87072a0967bd8",
"hash": "sha256-yR5+CafUHiJAZC7940dBboOrUPoAId8FjcxB1nwPbHw="
},
"src/third_party/webrtc": {
"url": "https://webrtc.googlesource.com/src.git",
"rev": "b47e68e6966d5a5a0e4bc861ff364221600f31c3",
"hash": "sha256-3pm524E7V9sOza8yOFEzIHUclJoY8ONhO3nTNVwrxUc="
"rev": "d1972add2a63b2a528a6471d447f82e0010b5215",
"hash": "sha256-evtOzxwWgKUaJl9zwpQDqPp1wM7w3DzjRcLg29z9ELQ="
},
"src/third_party/wuffs/src": {
"url": "https://skia.googlesource.com/external/github.com/google/wuffs-mirror-release-c.git",
@@ -797,8 +797,8 @@
},
"src/third_party/weston/src": {
"url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/weston.git",
"rev": "bdba2f9adaca673fd58339d8140bc04727ee279d",
"hash": "sha256-o49a3sp+D9FycxeB+uMcKouVvlKWoWpfws7FLEGJ/V8="
"rev": "b65be9e699847c975440108a42f05412cc7fddac",
"hash": "sha256-PySen9syu0OshtlHAZw666FeSQXdnsV8nlW9RmxgapM="
},
"src/third_party/xdg-utils": {
"url": "https://chromium.googlesource.com/chromium/deps/xdg-utils.git",
@@ -807,18 +807,18 @@
},
"src/third_party/xnnpack/src": {
"url": "https://chromium.googlesource.com/external/github.com/google/XNNPACK.git",
"rev": "4574c4d9b00703c15f2218634ddf101597b22b18",
"hash": "sha256-OdrwYAazY0E3han/fpFjlAiguY4M/xnCMJjL3KAIhvw="
"rev": "1154ae8178f0efc634cd1e8a681646dc22973255",
"hash": "sha256-chWb8gVyjdjJaXIbJzPLH9Bt9P7qkUNk4f0EeFePlSo="
},
"src/third_party/zstd/src": {
"url": "https://chromium.googlesource.com/external/github.com/facebook/zstd.git",
"rev": "ae9f20ca2716f2605822ca375995b7d876389b64",
"hash": "sha256-W39zzEag5ZdtQmFOeof3ROaonMoDhJWbGA/W8eDTPPc="
"rev": "1168da0e567960d50cba1b58c9b0ba047ece4733",
"hash": "sha256-T2CwRpL/XT/OsBrRfxC8kNIm43U4qPMBju8Ug13Qebo="
},
"src/v8": {
"url": "https://chromium.googlesource.com/v8/v8.git",
"rev": "1e1e0c88c55414e3ab7f98629a0233d3dc77fca0",
"hash": "sha256-iIrMXGer1CBX4MxOi56fKdzohiyv4bGKKnKOE3GZC1Y="
"rev": "bc343986bd4cb17e49ef15b70c4bdac710e27167",
"hash": "sha256-dsjddO/LCNAYLJ1XyDkJLJ9TToiy7pENlBryF1VcmtY="
}
}
},
@@ -73,13 +73,13 @@
"vendorHash": "sha256-CO09y7rdbY27VFX85pV2ocnO0rvhGJg3hXfLWaF+HTI="
},
"auth0_auth0": {
"hash": "sha256-7xAQGsDkw0JYP1Q+cEMHezNmQzccRyiwtUXKgJfnI6k=",
"hash": "sha256-JQC8532P5+PXCzqzxl9YUjhuEbd07WzJv7tfhJWyk3c=",
"homepage": "https://registry.terraform.io/providers/auth0/auth0",
"owner": "auth0",
"repo": "terraform-provider-auth0",
"rev": "v1.40.0",
"rev": "v1.41.0",
"spdx": "MPL-2.0",
"vendorHash": "sha256-57To9XMBDp6VQKXEU7TzkRHebCUUzlHWHV8+QU9PoI8="
"vendorHash": "sha256-JPgRr5DcAOkzUy24aUAjqhW6VhpITKxDA+55dNKrGu4="
},
"aviatrixsystems_aviatrix": {
"hash": "sha256-46djOfAj/5kfeoKLQHbeKefzdGbmlBATR+uN/IaAn8I=",
@@ -310,11 +310,11 @@
"vendorHash": null
},
"digitalocean_digitalocean": {
"hash": "sha256-lXPCwwGlGgddoCxTS5IgcZe26uSluNk+PZjopDY1jbc=",
"hash": "sha256-CNHGuChMDqSFz8YXETfQzgyQw8p8Ua6u3gevFFr69RI=",
"homepage": "https://registry.terraform.io/providers/digitalocean/digitalocean",
"owner": "digitalocean",
"repo": "terraform-provider-digitalocean",
"rev": "v2.78.0",
"rev": "v2.79.0",
"spdx": "MPL-2.0",
"vendorHash": null
},
@@ -472,13 +472,13 @@
"vendorHash": "sha256-mzDFyk2oImRXt72kFV5Ln++ScgoecpJEJtzUKjvCaws="
},
"grafana_grafana": {
"hash": "sha256-ski6B1mZCILcMM6JBWHx0IelYmx0UdDwPYi13PSgIAo=",
"hash": "sha256-ifE5W6sUo/BTxO+noss+nqw+LDPlkxdpySlJ08n7Kd4=",
"homepage": "https://registry.terraform.io/providers/grafana/grafana",
"owner": "grafana",
"repo": "terraform-provider-grafana",
"rev": "v4.26.0",
"rev": "v4.27.1",
"spdx": "MPL-2.0",
"vendorHash": "sha256-64XspOrtBa97fj9DXUQb6siecDfBQETqKvfwckjzU3c="
"vendorHash": "sha256-OCdknvuL/+khhFdopVLKEYKBwLbyPnziKamHDUEX+Zk="
},
"gridscale_gridscale": {
"hash": "sha256-FAKvQ/MEod5Ck0PG4ffQ+gQp6zZ0JDRXPOrOiDpWMls=",
@@ -508,13 +508,13 @@
"vendorHash": "sha256-LAte9NffWqGiIimDRyuQCfOoTpThWWHjFc72HhssDC0="
},
"hashicorp_awscc": {
"hash": "sha256-nyHKE0bpu7vbOE8uDwqaFjeAdXeMf324FjPb6stRiFU=",
"hash": "sha256-DXjGZCaDFLnp2cNoexi3eL3c13PYe4uiUNr4wxwG+GY=",
"homepage": "https://registry.terraform.io/providers/hashicorp/awscc",
"owner": "hashicorp",
"repo": "terraform-provider-awscc",
"rev": "v1.73.0",
"rev": "v1.74.0",
"spdx": "MPL-2.0",
"vendorHash": "sha256-NKuuX63rVjUk/+cqR4o/nWIsyNS2uUrAu/9fG3aWBwc="
"vendorHash": "sha256-/lITCpxw41IbRbyBj0OaeAo5Ldb2I6j2MUlaZ9OcG0U="
},
"hashicorp_azuread": {
"hash": "sha256-BkQwLkGu8Xmb4laoXOLDbSPyya5v8HBBNIya5hUBlV8=",
@@ -8,13 +8,13 @@
}:
mkHyprlandPlugin (finalAttrs: {
pluginName = "hy3";
version = "0.53.0.1";
version = "0.54.2";
src = fetchFromGitHub {
owner = "outfoxxed";
repo = "hy3";
tag = "hl${finalAttrs.version}";
hash = "sha256-0gUgUk8XFtu8HWZySFgb4bzvn+MHK9ZEZ1trVU8YfPw=";
hash = "sha256-ceT6njnsCLefWhn5C6FYdp68Te9UfcQLAaYIHGjt8bk=";
};
nativeBuildInputs = [ cmake ];
+10 -10
View File
@@ -1,28 +1,28 @@
{
"stable": {
"linux": {
"version": "8.12.5",
"version": "8.12.6",
"sources": {
"x86_64": {
"url": "https://downloads.1password.com/linux/tar/stable/x86_64/1password-8.12.5.x64.tar.gz",
"hash": "sha256-oa94KXgl4R/HElxSs8CLI5mvpT/4AYHfvODkGr3itJU="
"url": "https://downloads.1password.com/linux/tar/stable/x86_64/1password-8.12.6.x64.tar.gz",
"hash": "sha256-OLAPOgt5xgHudTUbu+XjpiN1lACWHZ86rYPZeX2idaw="
},
"aarch64": {
"url": "https://downloads.1password.com/linux/tar/stable/aarch64/1password-8.12.5.arm64.tar.gz",
"hash": "sha256-/y8pU8iXLgKGq2tcIMIiRnO4hiXR6rTPp8jTI43St5g="
"url": "https://downloads.1password.com/linux/tar/stable/aarch64/1password-8.12.6.arm64.tar.gz",
"hash": "sha256-dhSn/wPzny7eO2/5huEqBfus/TIkVAei7eqJVY0HdPI="
}
}
},
"darwin": {
"version": "8.12.5",
"version": "8.12.6",
"sources": {
"x86_64": {
"url": "https://downloads.1password.com/mac/1Password-8.12.5-x86_64.zip",
"hash": "sha256-jAaCSPpm3T7uC6y0A5BF821Q050f/P00kWlvYa0Hn5s="
"url": "https://downloads.1password.com/mac/1Password-8.12.6-x86_64.zip",
"hash": "sha256-fL0KXi4+4fZfLX0sChWz7T//AdW9SCQF3mZvd92brIE="
},
"aarch64": {
"url": "https://downloads.1password.com/mac/1Password-8.12.5-aarch64.zip",
"hash": "sha256-G4IOVxfaEyzhe74e/IbNt2TSPAgNcF1wri/Pbi4Xr7I="
"url": "https://downloads.1password.com/mac/1Password-8.12.6-aarch64.zip",
"hash": "sha256-1N5bKMFSuyZ5KHXhmLevewsCLZvjunWTObBw5QMfbcY="
}
}
}
+9 -9
View File
@@ -1,21 +1,21 @@
{
"version": "1.3.13-stable",
"version": "1.3.14-stable",
"sources": {
"aarch64-darwin": {
"url": "https://acli.atlassian.com/darwin/1.3.13-stable/acli_1.3.13-stable_darwin_arm64.tar.gz",
"sha256": "043c5422327610e82fd83ac79ca3ddf0c917611386f7527564db4c8bc99388b1"
"url": "https://acli.atlassian.com/darwin/1.3.14-stable/acli_1.3.14-stable_darwin_arm64.tar.gz",
"sha256": "1400b04908d4b099783dba261ba79ab6e09da67cf78d2ca35fb2456e99211634"
},
"aarch64-linux": {
"url": "https://acli.atlassian.com/linux/1.3.13-stable/acli_1.3.13-stable_linux_arm64.tar.gz",
"sha256": "522da066d9a4bc357eaf8fcca763a0be3048fd0e5595aa433d6904065472dd56"
"url": "https://acli.atlassian.com/linux/1.3.14-stable/acli_1.3.14-stable_linux_arm64.tar.gz",
"sha256": "b8742f5c3d4f5e1d5f531c1e50bcc775f272b2909e481c43ddd615808c77f156"
},
"x86_64-darwin": {
"url": "https://acli.atlassian.com/darwin/1.3.13-stable/acli_1.3.13-stable_darwin_amd64.tar.gz",
"sha256": "8cd7231e951222c0b75728359844a9c76238dcad31542d66226f08498b1da9aa"
"url": "https://acli.atlassian.com/darwin/1.3.14-stable/acli_1.3.14-stable_darwin_amd64.tar.gz",
"sha256": "0c66ff14f0db7a27a1d7e70ff03b8cbfde9bc019450539c0f6707de2dc908dd9"
},
"x86_64-linux": {
"url": "https://acli.atlassian.com/linux/1.3.13-stable/acli_1.3.13-stable_linux_amd64.tar.gz",
"sha256": "1873a8b53123aec8a9c015707c89a49f7dbd8ac995113146841f29ea06259f9a"
"url": "https://acli.atlassian.com/linux/1.3.14-stable/acli_1.3.14-stable_linux_amd64.tar.gz",
"sha256": "2c76293e9ba9ce6a233756b13e9c3eea1fc3fce992fc0ccefe8c32f6dbf36f29"
}
}
}
+2 -2
View File
@@ -26,7 +26,7 @@ buildGoModule (finalAttrs: {
# Use only versions specified in anytype-ts middleware.version file:
# https://github.com/anyproto/anytype-ts/blob/v<anytype-ts-version>/middleware.version
version = "0.48.1";
version = "0.48.4";
# Update only together with 'anytype' package.
# nixpkgs-update: no auto update
@@ -34,7 +34,7 @@ buildGoModule (finalAttrs: {
owner = "anyproto";
repo = "anytype-heart";
tag = "v${finalAttrs.version}";
hash = "sha256-xhEqSOpNtJcysVQGiqwCb3Eh+uvirGaBZka7Mo2MLgU=";
hash = "sha256-EUv/kJcAftqGqerrDhdnAl9YXPt5wWwviZD/uQ5pWmI=";
};
vendorHash = "sha256-4DiIU1ztmBCgI6axNKSeLSGQ5BuRLpSXl8RJAm1r2Eg=";
+5 -5
View File
@@ -17,23 +17,23 @@
buildNpmPackage (finalAttrs: {
pname = "anytype";
version = "0.54.2";
version = "0.54.5";
src = fetchFromGitHub {
owner = "anyproto";
repo = "anytype-ts";
tag = "v${finalAttrs.version}";
hash = "sha256-MzEgG//wptk0G9kn1c491qyqn62do9Z2nt8I6HtOaJQ=";
hash = "sha256-TLmmItt5ASlfQA/e1RtcGF/Gf9AU97pf4tpv3B7J9kE=";
};
locales = fetchFromGitHub {
owner = "anyproto";
repo = "l10n-anytype-ts";
rev = "d8c621ecfde8eab1123a4338fe50823cba047be1";
hash = "sha256-IUr9VJqPduW9gHdFZSwIyFAEycc6nfS/Rfz2vXO0iCY=";
rev = "d744bf573b72c6e8d11e093c8f6702acec263009";
hash = "sha256-UnqHXqtBTRmDR/qvS7bktMzDzk9gq+onvvLJgdzqJ7A=";
};
npmDepsHash = "sha256-fGn1L32bcyDI72Qlt9lf84zJDqlvSwbI4Vubj4DL388=";
npmDepsHash = "sha256-vvnUzzryW5nbAv9OEU+6xwP7lf8+K/mS0mcDswNRTxU=";
# npm dependency install fails with nodejs_24: https://github.com/NixOS/nixpkgs/issues/474535
nodejs = nodejs_22;
+3 -3
View File
@@ -11,16 +11,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "avml";
version = "0.15.0";
version = "0.17.0";
src = fetchFromGitHub {
owner = "microsoft";
repo = "avml";
tag = "v${finalAttrs.version}";
hash = "sha256-QN9GLrs0wjlEdkNnN7Q4Uqu1yJlxD7Dx0SnHJnfV/so=";
hash = "sha256-G+0Q4V+7K6GuMc7c1s7DYSrV9l+deu0+KYAWZYdxNU0=";
};
cargoHash = "sha256-u9oYchTvSvlth/Kn6SYuuP2VDVWQDNqueUsKumPooFU=";
cargoHash = "sha256-a6mCdhi2pBc+YE3iJnjjog37lZh/a2TQRihZc0X0M8g=";
nativeBuildInputs = [ pkg-config ];
buildInputs = [ openssl ];
@@ -13,11 +13,11 @@
stdenv.mkDerivation (finalAttrs: {
pname = "awakened-poe-trade";
version = "3.27.106";
version = "3.28.102";
src = fetchurl {
url = "https://github.com/SnosMe/awakened-poe-trade/releases/download/v${finalAttrs.version}/Awakened-PoE-Trade-${finalAttrs.version}.AppImage";
hash = "sha256-8L5Szn0KYfUMaTe+yyhJV1YZspmJCSlXSHXLPoiRhjE=";
hash = "sha256-tej1rjkrpAXmQ8ZzvlAuxHkMGAuRpPqg1TlBoWhorIE=";
};
passthru = {
-100
View File
@@ -1,100 +0,0 @@
{
stdenv,
lib,
fetchFromGitHub,
bluez-tools,
gnome-bluetooth_1_0,
gobject-introspection,
libnotify,
pavucontrol,
python3Packages,
util-linux,
wrapGAppsHook3,
xapp,
}:
python3Packages.buildPythonApplication rec {
pname = "blueberry";
version = "1.4.8";
pyproject = false;
src = fetchFromGitHub {
owner = "linuxmint";
repo = "blueberry";
tag = version;
sha256 = "sha256-MyIjcTyKn1aC2th6fCOw4cIqrRKatk2s4QD5R9cm83A=";
};
nativeBuildInputs = [
gobject-introspection
wrapGAppsHook3
];
buildInputs = [
bluez-tools
gnome-bluetooth_1_0
libnotify
util-linux
xapp
];
pythonPath = with python3Packages; [
dbus-python
pygobject3
setproctitle
];
installPhase = ''
runHook preInstall
mkdir -p $out
cp -a etc usr/* $out
# Fix paths
substituteInPlace $out/bin/blueberry \
--replace-fail /usr/lib/blueberry $out/lib/blueberry
substituteInPlace $out/bin/blueberry-tray \
--replace-fail /usr/lib/blueberry $out/lib/blueberry
substituteInPlace $out/etc/xdg/autostart/blueberry-obex-agent.desktop \
--replace-fail /usr/lib/blueberry $out/lib/blueberry
substituteInPlace $out/etc/xdg/autostart/blueberry-tray.desktop \
--replace-fail Exec=blueberry-tray Exec=$out/bin/blueberry-tray
substituteInPlace $out/lib/blueberry/blueberry-obex-agent.py \
--replace-fail /usr/share $out/share
substituteInPlace $out/lib/blueberry/blueberry-tray.py \
--replace-fail /usr/share $out/share
substituteInPlace $out/lib/blueberry/blueberry.py \
--replace-fail '"bt-adapter"' '"${bluez-tools}/bin/bt-adapter"' \
--replace-fail /usr/bin/pavucontrol ${pavucontrol}/bin/pavucontrol \
--replace-fail /usr/lib/blueberry $out/lib/blueberry \
--replace-fail /usr/share $out/share
substituteInPlace $out/lib/blueberry/rfkillMagic.py \
--replace-fail /usr/bin/rfkill ${util-linux}/bin/rfkill \
--replace-fail /usr/sbin/rfkill ${util-linux}/bin/rfkill \
--replace-fail /usr/lib/blueberry $out/lib/blueberry
substituteInPlace $out/share/applications/blueberry.desktop \
--replace-fail Exec=blueberry Exec=$out/bin/blueberry
glib-compile-schemas --strict $out/share/glib-2.0/schemas
runHook postInstall
'';
dontWrapGApps = true;
postFixup = ''
makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
wrapPythonProgramsIn $out/lib "$out ''${pythonPath[*]}"
'';
meta = {
description = "Bluetooth configuration tool";
homepage = "https://github.com/linuxmint/blueberry";
license = lib.licenses.gpl3Plus;
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [
bobby285271
romildo
];
};
}
+2 -2
View File
@@ -21,11 +21,11 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "briar-desktop";
version = "0.6.4-beta";
version = "0.6.5-beta";
src = fetchurl {
url = "https://desktop.briarproject.org/jars/linux/${finalAttrs.version}/briar-desktop-linux-${finalAttrs.version}.jar";
hash = "sha256-S7O625SWbgi4iby76Qe377NGiw4r9+VqgQh8kclKwMo=";
hash = "sha256-YDFvM6EicHe6s7SDTiKRySCTO9IUwDrEtO373bavfmw=";
};
dontUnpack = true;
+2 -2
View File
@@ -24,14 +24,14 @@
python3Packages.buildPythonApplication (finalAttrs: {
pname = "buildstream";
version = "2.6.0";
version = "2.7.0";
pyproject = true;
src = fetchFromGitHub {
owner = "apache";
repo = "buildstream";
tag = finalAttrs.version;
hash = "sha256-2Z+s0dQB85MBO06llhIEO3jwWfL53n74S28ENHcbe/Q=";
hash = "sha256-eHZmimuwOo3ZHZw5QF94B6wkso1+QbZIcgpDgsw1hiM=";
};
build-system = with python3Packages; [
+45
View File
@@ -0,0 +1,45 @@
{
lib,
rustPlatform,
fetchFromGitHub,
nix-update-script,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "cargo-arc";
version = "0.2.0";
src = fetchFromGitHub {
owner = "seflue";
repo = "cargo-arc";
tag = "v${finalAttrs.version}";
hash = "sha256-b6l9KIDM0V0DDXM5Q79w2ZAHg0nWnlphUdnJyzv3M4Q=";
};
cargoHash = "sha256-NNI1H96sMbGzxkXtvFIXxtPB6XNoPB2Ns4czmG+NGiE=";
checkFlags = [
# Tries to create temp dir
"--skip=test_analyze_not_git_repo"
# Tries to read from dir $CARGO_MANIFEST_DIR
"--skip=test_analyze_empty_history"
"--skip=test_analyze_real_repo"
];
passthru.updateScript = nix-update-script { };
meta = {
description = "Generate a collapsible arc diagram of your Cargo workspace as SVG";
homepage = "https://github.com/seflue/cargo-arc";
changelog = "https://github.com/seflue/cargo-arc/blob/${finalAttrs.src.rev}/CHANGELOG.md";
license = with lib.licenses; [
asl20
mit
];
maintainers = with lib.maintainers; [
kpbaks
matthiasbeyer
];
mainProgram = "cargo-arc";
};
})
+3 -3
View File
@@ -8,17 +8,17 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "codebook";
version = "0.3.31";
version = "0.3.32";
src = fetchFromGitHub {
owner = "blopker";
repo = "codebook";
tag = "v${finalAttrs.version}";
hash = "sha256-pe+u4scmoVgKJupqXejwq1mDpaq5QrTozVcbGfUkXJk=";
hash = "sha256-UkE1ND1ditGIlplHG6EslK2uDvRWz7jmn2UmUhlYbdE=";
};
buildAndTestSubdir = "crates/codebook-lsp";
cargoHash = "sha256-T6MCQZ8mWMMsI7+LoHTHZZyMaEq8taME3vWtrfKlzAY=";
cargoHash = "sha256-27+9vjTHBxJ3WM2e3xmTO2CmJvsmqN4nhqD0Sf0YtEw=";
env = {
CARGO_PROFILE_RELEASE_LTO = "fat";
+3 -3
View File
@@ -10,16 +10,16 @@
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "cook-cli";
version = "0.24.0";
version = "0.26.0";
src = fetchFromGitHub {
owner = "cooklang";
repo = "cookcli";
rev = "v${finalAttrs.version}";
hash = "sha256-ZRUnbhHXOl1FTvaMKzDxP7f7AkqTDfWjhVbBOdNsCvg=";
hash = "sha256-UIhecZu2iHOwuHSwoWpMKQ1LrEH5ryZZTZV5hMp+UHo=";
};
cargoHash = "sha256-9FgCYHqcTyroTCDHhYXm9w+BBu8Hr8bWlvcqMU0O5TU=";
cargoHash = "sha256-UcrrFYst6E31bgjknRBugBWBm/4w96u8Yl0UPCyfRX8=";
# Build without the self-updating feature
buildNoDefaultFeatures = true;
@@ -12,13 +12,13 @@
inherit hamlibSupport gpsdSupport extraScripts;
}).overrideAttrs
(oldAttrs: {
version = "1.8.1-unstable-2026-01-08";
version = "1.8.1-unstable-2026-03-09";
src = fetchFromGitHub {
owner = "wb2osz";
repo = "direwolf";
rev = "041f396de0ab2111b9ccc07960f8f083a81f9ad0";
hash = "sha256-W0MTS4UgbtIybhEHXm2ie50TnkvRLc23WB0FR0FGT2s=";
rev = "3b20d8210a1d6f77073fd3452bbe87a21ee35a79";
hash = "sha256-w/D5RO5dfcTh3nCOxe/GaHTSbzCYm+J1cJCt1K9lAaw=";
};
dontVersionCheck = true;
+2 -2
View File
@@ -6,13 +6,13 @@
buildGoModule (finalAttrs: {
pname = "dnsproxy";
version = "0.79.0";
version = "0.80.0";
src = fetchFromGitHub {
owner = "AdguardTeam";
repo = "dnsproxy";
tag = "v${finalAttrs.version}";
hash = "sha256-R/TBsge+Jd11EvDEx3B9FD/bHdi2BQZTpXLNlvEyERk=";
hash = "sha256-acgNACztAOudrtzh1MeSzJza+lH9V8s5AmHkyETpy0E=";
};
vendorHash = "sha256-NS7MsK7QXg8tcAytYd9FGvaYZcReYkO5ESPpLbzL0IQ=";
+3 -3
View File
@@ -7,7 +7,7 @@
versionCheckHook,
}:
let
version = "1.37.0";
version = "1.37.1";
inherit (stdenvNoCC.hostPlatform) system;
throwSystem = throw "envoy-bin is not available for ${system}.";
@@ -20,8 +20,8 @@ let
hash =
{
aarch64-linux = "sha256-9KEqySEbwO53yN2oaXIrbSih6dm2LNuX7I8g3oIA+ig=";
x86_64-linux = "sha256-Clcp7k6YDTRuvO6A8Y5+/lIyuRFBu0x3bsOtzKeG5gw=";
aarch64-linux = "sha256-ZYEeEq6PedT09kGNJ6LTL+vEzIpSM9Wuik2g4+Dz/nU=";
x86_64-linux = "sha256-jbkO4KoIWuaHPb8hISgW0p9sRV1HYMSuz01lk3Y9sYw=";
}
.${system} or throwSystem;
in
+2 -2
View File
@@ -7,13 +7,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "fast-float";
version = "8.2.3";
version = "8.2.4";
src = fetchFromGitHub {
owner = "fastfloat";
repo = "fast_float";
rev = "v${finalAttrs.version}";
hash = "sha256-cQxIzfVNMG0UPEUw/4GYcRzmfAcBJLcswO+gqQ8t6lw=";
hash = "sha256-VuiOuslq9BpATlMgcoIJSDC1Y4unF0GAs1ypnMMfrQU=";
};
nativeBuildInputs = [ cmake ];
+1 -1
View File
@@ -18,7 +18,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
src = fetchurl {
url = "https://github.com/4ian/GDevelop/releases/download/v${version}/GDevelop-5-${version}-universal-mac.zip";
hash = "sha256-3C++qdbngBdIVyyFV7VaOzH+rQBDEYp9wDcBVBjsrSc=";
hash = "sha256-kTqFfLk3TWITM5DVa8rMZoezq/Yct9wkyofZbUl2SBQ=";
};
sourceRoot = ".";
+1 -1
View File
@@ -13,7 +13,7 @@ let
if stdenv.hostPlatform.system == "x86_64-linux" then
fetchurl {
url = "https://github.com/4ian/GDevelop/releases/download/v${version}/GDevelop-5-${version}.AppImage";
hash = "sha256-9apZXwVF8MV0ZK7/FsoQf+30lTg4P42aTtqedBCnSls=";
hash = "sha256-Vg1uovP3gY3EQ0GNg/2dx8Uwj080Gf6YTHyu6OnZGNg=";
}
else
throw "${pname}-${version} is not supported on ${stdenv.hostPlatform.system}";
+1 -1
View File
@@ -4,7 +4,7 @@
callPackage,
}:
let
version = "5.6.258";
version = "5.6.260";
pname = "gdevelop";
meta = {
description = "Graphical Game Development Studio";
+2 -2
View File
@@ -7,7 +7,7 @@
}:
let
version = "18.9.1";
version = "18.9.2";
package_version = "v${lib.versions.major version}";
gitaly_package = "gitlab.com/gitlab-org/gitaly/${package_version}";
@@ -21,7 +21,7 @@ let
owner = "gitlab-org";
repo = "gitaly";
rev = "v${version}";
hash = "sha256-H5zAd5/sHrRuEp1v/gMDY/9DyCMWmzpb3Ws6aTfX2k8=";
hash = "sha256-qCOcy7JOR7OeY5uPZE6xo6NRi5OhVKdl5Q4n36S5XyI=";
};
vendorHash = "sha256-lK0fNBhDGFOZ+sCm1VuvN4CpAb0nAkUl4yL/30tZKBY=";
+2 -2
View File
@@ -6,14 +6,14 @@
buildGoModule (finalAttrs: {
pname = "gitlab-pages";
version = "18.9.1";
version = "18.9.2";
# nixpkgs-update: no auto update
src = fetchFromGitLab {
owner = "gitlab-org";
repo = "gitlab-pages";
rev = "v${finalAttrs.version}";
hash = "sha256-DYifmE0vuJFTCCJiEDcOHOKJA3suEAJ89Ecy/fkcwf4=";
hash = "sha256-sOJNwCcIAuLywL9r9c0RUqqtLbNmaaJ6ZMVBLQgus8k=";
};
vendorHash = "sha256-AZIv/CU01OAbn5faE4EkSuDCakYzDjRprB5ox5tIlck=";
+7 -7
View File
@@ -1,17 +1,17 @@
{
"version": "18.9.1",
"repo_hash": "sha256-Yq8G1gRA+p3Na3smPsMARj4w+cR2kvKjjffEwrR42vY=",
"version": "18.9.2",
"repo_hash": "sha256-0ax0wYOEiL9Vl/cw9DaoyhROehZjrtv7KIKmOWrrJY8=",
"yarn_hash": "sha256-uXyUJS4+YIRB3pPezVbj5u1fytOo+/bNR18Kq6FAKSQ=",
"frontend_islands_yarn_hash": "sha256-OkCoiyL9FFJcWcNUbeRSBGGSauYIm7l+yxNfA0CsNEQ=",
"owner": "gitlab-org",
"repo": "gitlab",
"rev": "v18.9.1-ee",
"rev": "v18.9.2-ee",
"passthru": {
"GITALY_SERVER_VERSION": "18.9.1",
"GITLAB_KAS_VERSION": "18.9.1",
"GITLAB_PAGES_VERSION": "18.9.1",
"GITALY_SERVER_VERSION": "18.9.2",
"GITLAB_KAS_VERSION": "18.9.2",
"GITLAB_PAGES_VERSION": "18.9.2",
"GITLAB_SHELL_VERSION": "14.45.6",
"GITLAB_ELASTICSEARCH_INDEXER_VERSION": "5.13.3",
"GITLAB_WORKHORSE_VERSION": "18.9.1"
"GITLAB_WORKHORSE_VERSION": "18.9.2"
}
}
@@ -10,7 +10,7 @@ in
buildGoModule (finalAttrs: {
pname = "gitlab-workhorse";
version = "18.9.1";
version = "18.9.2";
# nixpkgs-update: no auto update
src = fetchFromGitLab {
@@ -1,111 +0,0 @@
{
stdenv,
lib,
fetchurl,
fetchpatch,
gnome,
adwaita-icon-theme,
meson,
mesonEmulatorHook,
ninja,
pkg-config,
gtk3,
gettext,
glib,
udev,
itstool,
libxml2,
wrapGAppsHook3,
libnotify,
libcanberra-gtk3,
gobject-introspection,
gtk-doc,
docbook-xsl-nons,
docbook_xml_dtd_43,
python3,
gsettings-desktop-schemas,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "gnome-bluetooth";
version = "3.34.5";
# TODO: split out "lib"
outputs = [
"out"
"dev"
"devdoc"
"man"
];
src = fetchurl {
url = "mirror://gnome/sources/gnome-bluetooth/${lib.versions.majorMinor finalAttrs.version}/gnome-bluetooth-${finalAttrs.version}.tar.xz";
hash = "sha256-bJSeUsi+zCBU2qzWBJAfZs5c9wml+pHEu3ysyTm1Pqk=";
};
patches = [
# Fix build with meson 0.61.
# sendto/meson.build:24:5: ERROR: Function does not take positional arguments.
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/gnome-bluetooth/-/commit/755fd758f866d3a3f7ca482942beee749f13a91e.patch";
hash = "sha256-N0MJ0pYO411o2CTNZHWmEoG2m5TGUjR6YW6HSXHTR/A=";
})
];
nativeBuildInputs = [
meson
ninja
gettext
itstool
pkg-config
libxml2
wrapGAppsHook3
gobject-introspection
gtk-doc
docbook-xsl-nons
docbook_xml_dtd_43
python3
]
++ lib.optionals (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) [
mesonEmulatorHook
];
buildInputs = [
glib
gtk3
udev
libnotify
libcanberra-gtk3
adwaita-icon-theme
gsettings-desktop-schemas
];
mesonFlags = [
"-Dicon_update=false"
"-Dgtk_doc=true"
];
postPatch = ''
chmod +x meson_post_install.py # patchShebangs requires executable file
patchShebangs meson_post_install.py
'';
strictDeps = true;
passthru = {
updateScript = gnome.updateScript {
packageName = "gnome-bluetooth";
attrPath = "gnome-bluetooth_1_0";
freeze = true;
};
};
meta = {
homepage = "https://help.gnome.org/users/gnome-bluetooth/stable/index.html.en";
description = "Application that let you manage Bluetooth in the GNOME destkop";
mainProgram = "bluetooth-sendto";
maintainers = [ ];
license = lib.licenses.gpl2Plus;
platforms = lib.platforms.linux;
};
})
Binary file not shown.

After

Width:  |  Height:  |  Size: 447 B

-64
View File
@@ -1,64 +0,0 @@
/* XPM */
static char *gnujump[] = {
/* columns rows colors chars-per-pixel */
"32 32 26 1 ",
" c black",
". c #D10000",
"X c #E80000",
"o c #E90000",
"O c #F90000",
"+ c red",
"@ c #00C500",
"# c #00DC00",
"$ c #00DD00",
"% c #00EF00",
"& c #00FA00",
"* c #00FB00",
"= c green",
"- c #FFC882",
"; c #FFC982",
": c #FFD298",
"> c #FFD299",
", c #FFD399",
"< c #FFDAAB",
"1 c #FFDBAB",
"2 c #FFDBAC",
"3 c #FFE1BA",
"4 c #FFE5C3",
"5 c #FFE5C4",
"6 c #FFE7C7",
"7 c None",
/* pixels */
"77777777777777777777777777777777",
"77777777777777777777777777777777",
"7777777777777 77777777777777",
"77777777777 777777777777",
"7777777777 77777777777",
"777777777 7777777777",
"777777777 ;;;-- 7777777777",
"77777777 ::>>,>1: 777777777",
"77777777 :<1<1:>2: 777777777",
"77777777 :1331: :: 7777 7777",
"77777777 :<3431: :, 777 o 777",
"777 777 ->236531>:2: 77 oo 777",
"77 .o 77 -,145443<1, 77 oOo 777",
"77 .ooo 7 -:13333312: 7 oOo 7777",
"777 oOOo :,11<<<:: oOOo 7777",
"7777 XOOooo :::>: XooO+Oo 7777",
"77777 oOOOOoo ooOOO+Oo 77777",
"777777 oOO+OOoooooOO++OOo 777777",
"7777777 XoOOOOOOOOOOOOoo 7777777",
"77777777 oooooooooooo 77777777",
"7777777777 7777777777",
"777777777 @@@@@@@@@@@@ 7777777",
"77777777 #######$$##$#### 777777",
"7777777 #%%%%%%%%%%%%%%%%# 77777",
"7777777 #%*&*&*%%%%%%*&*%# 77777",
"777777 #%*=**%%#####$%%&*%# 7777",
"777777 #%&*%%## ##%&%# 7777",
"77777 #%*%%## 777777 #%%# 7777",
"77777 #%%#$ 777777777 #%%# 777",
"7777 @%## 777777777777 #%# 777",
"7777 ## 7777777777777777 $# 777",
"77777 7777777777777777777 7777"
};
+1 -1
View File
@@ -47,7 +47,7 @@ stdenv.mkDerivation (finalAttrs: {
];
postInstall = ''
install -Dm644 ${./gnujump.xpm} $out/share/pixmaps/gnujump.xpm
install -Dm644 ${./gnujump.png} $out/share/icons/hicolor/32x32/apps/gnujump.png
'';
meta = {
+291
View File
@@ -0,0 +1,291 @@
{
fetchFromGitHub,
fetchYarnDeps,
lib,
nodejs,
python312,
stdenv,
yarnBuildHook,
yarnConfigHook,
yarnInstallHook,
}:
let
python3 = python312.override {
self = python3;
packageOverrides = self: super: {
django = super.django_4;
};
};
version = "1.1.10";
src = fetchFromGitHub {
owner = "inventree";
repo = "inventree";
tag = "${version}";
hash = "sha256-TPB/3pFIU+ui4c+CbqIKTyAfJ/Xepm/RIhZeYhTrgI4=";
};
frontend =
let
frontendSource = src + "/src/frontend";
in
stdenv.mkDerivation (finalAttrs: {
pname = "inventree-frontend";
inherit version;
src = frontendSource;
yarnOfflineCache = fetchYarnDeps {
yarnLock = finalAttrs.src + "/yarn.lock";
hash = "sha256-Ijbkx+INZgsvMhkzo8h/FUY75W3UHnKAdUjQRD8kJZw=";
};
nativeBuildInputs = [
nodejs
yarnConfigHook
yarnBuildHook
yarnInstallHook
];
buildPhase = ''
mkdir -p $out
export PATH=$PATH:$TMP/frontend/node_modules/.bin
substituteInPlace $TMP/frontend/vite.config.ts --replace-warn "../../src/backend/InvenTree/web/static/web" "$out/static/web"
npm run extract
npm run compile
npm run build
'';
});
in
python3.pkgs.buildPythonApplication rec {
pname = "inventree";
pyproject = true;
inherit version src;
dependencies =
with python3.pkgs;
[
django
dj-rest-auth
django-allauth
django-cleanup
django-cors-headers
django-crispy-forms
django-dbbackup
django-error-report-2
django-filter
django-flags
django-formtools
django-ical
django-import-export
django-maintenance-mode
django-markdownify
django-money
django-mptt
django-mailbox
django-anymail
django-q2
django-redis
django-sesame
django-sql-utils
django-sslserver
django-stdimage
django-storages
django-structlog
django-taggit
django-oauth-toolkit
django-otp
django-user-sessions
django-weasyprint
standard-imghdr
django-xforwardedfor-middleware
djangorestframework-simplejwt
djangorestframework
drf-spectacular
bleach
cryptography
distutils
dulwich
feedparser
gunicorn
jinja2
pdf2image
pillow
pint
python-barcode
python-dotenv
qrcode
pytz
pyyaml
rapidfuzz
sentry-sdk
structlog
tablib
tinycss2
weasyprint
whitenoise
pypdf
ppf-datamatrix
psycopg2
mysqlclient
requests-mock
opentelemetry-api
opentelemetry-sdk
opentelemetry-exporter-otlp
opentelemetry-instrumentation-django
opentelemetry-instrumentation-requests
opentelemetry-instrumentation-redis
opentelemetry-instrumentation-sqlite3
opentelemetry-instrumentation-system-metrics
opentelemetry-instrumentation-wsgi
]
++ tablib.optional-dependencies.all
++ tablib.optional-dependencies.xls
++ tablib.optional-dependencies.xlsx
++ djangorestframework-simplejwt.optional-dependencies.crypto
++ django-anymail.optional-dependencies.amazon-ses
++ django-allauth.optional-dependencies.socialaccount
++ django-allauth.optional-dependencies.saml
++ django-allauth.optional-dependencies.openid
++ django-allauth.optional-dependencies.mfa;
build-system = [ python3.pkgs.setuptools ];
prePatch =
let
skippedCheckFunctions = [
"test_task_check_for_updates"
"test_download_image"
"test_commit_info"
"test_rates"
"test_download_build_orders"
"test_valid_url"
"test_refresh_endpoint"
"test_download_csv"
"test_download_line_items"
"test_export"
"test_download_xlsx"
"test_download_csv"
"test_export"
"test_part_label_translation"
"test_part_download"
"test_date_filters"
"test_bom_export"
"test_hash"
"test_date"
"test_api_call"
"test_function_errors"
"test_stocktake_exporter"
"test_return"
"test_plugin_install"
"test_full_process"
"test_package_loading"
"test_export"
"test_users_exist"
"test_import_part"
"test_model_names"
];
skippedFuncScripts = builtins.map (funcName: ''
grep -rlZ ${funcName} . | while IFS= read -r -d "" file; do
substituteInPlace "$file" --replace-fail "${funcName}" "skip_${funcName}"
done
'') skippedCheckFunctions;
in
''
${lib.concatStringsSep "\n" skippedFuncScripts}
'';
installPhase =
let
pythonPath = python3.pkgs.makePythonPath dependencies;
in
''
runHook preInstall
# Don't need to bother with a non-maintained library from ages ago
substituteInPlace src/backend/InvenTree/InvenTree/settings.py --replace-fail "django_slowtests.testrunner.DiscoverSlowestTestsRunner" "django.test.runner.DiscoverRunner"
mkdir -p $out/lib/${pname}/src/backend/InvenTree/web/
cp -r src $out/lib/${pname}
ln -s ${frontend}/static $out/lib/${pname}/src/backend/InvenTree/web
# cp -r ${frontend}/static $out/lib/${pname}/src/backend/InvenTree/web
chmod +x $out/lib/${pname}/src/backend/InvenTree/manage.py
makeWrapper $out/lib/${pname}/src/backend/InvenTree/manage.py $out/bin/${pname} \
--prefix PYTHONPATH : "${pythonPath}:$out/lib/${pname}/src/backend/InvenTree"
makeWrapper ${lib.getExe python3.pkgs.gunicorn} $out/bin/gunicorn \
--prefix PYTHONPATH : "${pythonPath}:$out/${python3.sitePackages}":"${pythonPath}:$out/lib/${pname}/src/backend/InvenTree"
runHook postInstall
'';
doCheck = true;
env = {
DJANGO_SETTINGS_MODULE = "InvenTree.settings";
};
checkPhase = ''
runHook preCheck
tmpDir=$(mktemp -d)
mkdir -p $tmpDir/media
mkdir -p $tmpDir/.cache/fontconfig
export HOME=$tmpDir
export INVENTREE_STATIC_ROOT=$tmpDir
export INVENTREE_MEDIA_ROOT=$tmpDir/media
export INVENTREE_BACKUP_DIR=$tmpDir
export INVENTREE_DB_ENGINE=django.db.backends.sqlite3
export INVENTREE_DB_NAME=inventree.db
export INVENTREE_SITE_URL="http://localhost:8000"
export INVENTREE_PLUGINS_ENABLED=true
export INVENTREE_PLUGIN_TESTING=true
export INVENTREE_PLUGIN_TESTING_SETUP=true
pushd src/backend/InvenTree
${python3.interpreter} ./manage.py check
${python3.interpreter} ./manage.py migrate
${python3.interpreter} ./manage.py test --failfast
popd
runHook postCheck
'';
nativeCheckInputs = with python3.pkgs; [
django-test-migrations
pytest-django
pytest-env
pytestCheckHook
invoke
coverage
pytest-cov
pdfminer-six
];
passthru =
let
pythonPath = python3.pkgs.makePythonPath dependencies;
in
{
inherit frontend;
pythonPath = pythonPath;
};
meta = {
description = "Open Source Inventory Management System";
homepage = "https://inventree.org/";
changelog = "https://github.com/paperless-ngx/paperless-ngx/releases/tag/${src.tag}";
license = lib.licenses.mit;
platforms = lib.platforms.linux;
mainProgram = "inventree";
maintainers = with lib.maintainers; [
kurogeek
];
};
}
+82
View File
@@ -0,0 +1,82 @@
{
lib,
stdenv,
buildGoModule,
buildNpmPackage,
fetchFromGitHub,
nodejs_22,
installShellFiles,
nix-update-script,
versionCheckHook,
}:
buildGoModule (finalAttrs: {
pname = "lakefs";
version = "1.79.0";
src = fetchFromGitHub {
owner = "treeverse";
repo = "lakeFS";
tag = "v${finalAttrs.version}";
hash = "sha256-UL9JvrNvtHADI0POguLXMDNNvO1oKHXXwfr8tOyvFYc=";
};
webui = buildNpmPackage {
pname = "lakefs-webui";
inherit (finalAttrs) version src;
sourceRoot = "${finalAttrs.src.name}/webui";
nodejs = nodejs_22;
npmDepsHash = "sha256-Z9oOIKK6Hm/Bg3E37f4FqFFL1exMIf0KNEHQXIyox+Q=";
installPhase = ''
runHook preInstall
cp -r dist $out
runHook postInstall
'';
};
subPackages = [ "cmd/lakefs" ];
proxyVendor = true;
vendorHash = "sha256-6XOJBDdAERD6mcneQ7UFqAPGq+pXroNlzQGNvycpVBc=";
ldflags = [
"-s"
"-w"
"-X github.com/treeverse/lakefs/pkg/version.Version=${finalAttrs.version}"
];
nativeBuildInputs = [ installShellFiles ];
preBuild = ''
mkdir -p webui/dist
cp -r ${finalAttrs.webui}/* webui/dist/
go generate ./pkg/api/apigen ./pkg/auth ./pkg/authentication
'';
postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
installShellCompletion --cmd lakefs \
--bash <($out/bin/lakefs completion bash) \
--fish <($out/bin/lakefs completion fish) \
--zsh <($out/bin/lakefs completion zsh)
'';
doInstallCheck = true;
nativeInstallCheckInputs = [ versionCheckHook ];
passthru.updateScript = nix-update-script { };
meta = {
description = "Data version control for object storage (Git for data)";
homepage = "https://lakefs.io/";
downloadPage = "https://github.com/treeverse/lakeFS";
changelog = "https://github.com/treeverse/lakeFS/blob/v${finalAttrs.version}/CHANGELOG.md";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ philocalyst ];
mainProgram = "lakefs";
platforms = lib.platforms.unix;
};
})
+3 -3
View File
@@ -8,16 +8,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "lintspec";
version = "0.15.0";
version = "0.16.0";
src = fetchFromGitHub {
owner = "beeb";
repo = "lintspec";
tag = "v${finalAttrs.version}";
hash = "sha256-giCPigyLkWv2d8hdXT3ZmYjl7mYRlTxua0N0JpeC/kc=";
hash = "sha256-hMBDOpmz8EMSWPKU16EleSxVZbLSbZPynqhrJifgt04=";
};
cargoHash = "sha256-XsGkEy/uNmd2Em+ypDAAVKDeioaGafzFFHVL18Z0pdg=";
cargoHash = "sha256-WaMuHTvadj1GoFyT0p4II6EFp7nmN5LJN3SOO2kYujM=";
cargoBuildFlags = [
"--package"
"lintspec"
+2 -2
View File
@@ -12,14 +12,14 @@
}:
python3Packages.buildPythonApplication (finalAttrs: {
pname = "monophony";
version = "4.4.1";
version = "4.4.3";
pyproject = true;
src = fetchFromGitLab {
owner = "zehkira";
repo = "monophony";
tag = "v${finalAttrs.version}";
hash = "sha256-punZetrvgnPwUT9Jgt3QySF2XxSz2Xbeq2tMxUS8FCU=";
hash = "sha256-bQ1oGXkeuUEKof/mGvsaqwQQ30NFSed64j7ysb8K9tI=";
};
sourceRoot = "${finalAttrs.src.name}/source";
+3 -3
View File
@@ -9,16 +9,16 @@
}:
buildGoModule (finalAttrs: {
pname = "nelm";
version = "1.19.1";
version = "1.20.1";
src = fetchFromGitHub {
owner = "werf";
repo = "nelm";
tag = "v${finalAttrs.version}";
hash = "sha256-iFr0IuIwZARGcU2xfavNuBu3Z6vKQjddwadU1PBE1/A=";
hash = "sha256-64OAyuqV8qryVNH0Mxo9FiHnVjeshG45rtiU7jumb+w=";
};
vendorHash = "sha256-7KMSdfumDlAMfJFLFalH8WneQ+AFnTTnCZKYRTP9gX8=";
vendorHash = "sha256-rMSEUKHyj/R+YTm2ADNHsrdeH4SbF6XQyrkjkgPvhx8=";
subPackages = [ "cmd/nelm" ];
+8 -3
View File
@@ -6,14 +6,14 @@
python3Packages.buildPythonApplication (finalAttrs: {
pname = "nemorosa";
version = "0.4.1";
version = "0.4.3";
pyproject = true;
src = fetchFromGitHub {
owner = "KyokoMiki";
repo = "nemorosa";
tag = finalAttrs.version;
hash = "sha256-AqFjpEakEZ21iXmIIxhX+ez2aI/RMsLaUoECipQcaM4=";
hash = "sha256-1mP+sdAScXAFp4wjPiSCez6BvzCDgOt/MtGWQv0PD0E=";
};
# Upstream uses overly strict, fresh version specifiers
@@ -29,24 +29,29 @@ python3Packages.buildPythonApplication (finalAttrs: {
dependencies =
with python3Packages;
[
aiohttp
aiolimiter
anyio
apprise
apscheduler
asyncer
beautifulsoup4
defusedxml
deluge-client
fastapi
httpx
humanfriendly
msgspec
platformdirs
qbittorrent-api
reflink-copy
sqlalchemy
tenacity
torf
transmission-rpc
uvicorn
uvloop
]
++ aiohttp.optional-dependencies.speedups
++ beautifulsoup4.optional-dependencies.lxml
++ msgspec.optional-dependencies.yaml
++ sqlalchemy.optional-dependencies.aiosqlite
+2 -2
View File
@@ -10,13 +10,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "pt2-clone";
version = "1.81";
version = "1.83";
src = fetchFromGitHub {
owner = "8bitbubsy";
repo = "pt2-clone";
rev = "v${finalAttrs.version}";
sha256 = "sha256-+Dm++OHrgrZmAaYJdCCQJ8Chc5y6KdHajH6gDOAg3Do=";
sha256 = "sha256-jA3cFn5q7ceLIgu42Ir1HdXdSqgm8mcdR35CJdqQP+I=";
};
nativeBuildInputs = [ cmake ];
+6 -3
View File
@@ -9,14 +9,14 @@
python3Packages.buildPythonApplication (finalAttrs: {
pname = "pwdsphinx";
version = "2.0.3";
version = "2.0.4";
pyproject = true;
src = fetchFromGitHub {
owner = "stef";
repo = "pwdsphinx";
tag = "v${finalAttrs.version}";
hash = "sha256-COSfA5QqIGWEnahmo5klFECK7XjyabGs1nG9vyhj/DM=";
hash = "sha256-wAvcXSAoaottnsnvlD2QnLP3QIithI6xplo5tN8yjVg=";
};
postPatch = ''
@@ -55,7 +55,10 @@ python3Packages.buildPythonApplication (finalAttrs: {
preCheck = ''
mkdir -p ~/.config/sphinx
cp ${finalAttrs.src}/configs/config ~/.config/sphinx/config
cp ${finalAttrs.src}/sphinx.cfg_sample ~/.config/sphinx/config
substituteInPlace ~/.config/sphinx/config \
--replace-fail 'pinentry=/usr/bin/pinentry' 'pinentry="/usr/bin/pinentry"' \
--replace-fail 'log=' 'log=""'
# command fails without key but the command generates the key, so always pass
$out/bin/sphinx init || true
'';
+4 -4
View File
@@ -15,7 +15,7 @@
withUi ? true,
buildFeatures ?
# enable all features except self_update by default
# https://github.com/dathere/qsv/blob/16.1.0/Cargo.toml#L370
# https://github.com/dathere/qsv/blob/17.0.0/Cargo.toml#L370
[
"apply"
"feature_capable"
@@ -33,7 +33,7 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "qsv";
version = "16.1.0";
version = "17.0.0";
inherit buildFeatures;
@@ -41,10 +41,10 @@ rustPlatform.buildRustPackage (finalAttrs: {
owner = "dathere";
repo = "qsv";
rev = finalAttrs.version;
hash = "sha256-7v4I5UufODXgEBeM5+s6zBBPRlrihHrfCYOPjrny53I=";
hash = "sha256-RIrphnw0opCvp0fhkvevNaOQJ8/25c34qYfg4IVNP9g=";
};
cargoHash = "sha256-wD5LjdHhCVltHYWij+/b8j9ER4OnwecVlc/2nGjvClE=";
cargoHash = "sha256-nTyxEX2jiFZxkao0/xFxGjpitc5K0BQSvvo3A+PFLEI=";
buildInputs = [
file
+2
View File
@@ -1,3 +1,5 @@
# nixpkgs-update: no auto update
# updated via the parent 'qsv' derivation
{ qsv }:
qsv.override {
buildFeatures = [ "lite" ];
+2 -2
View File
@@ -6,10 +6,10 @@
}:
let
pname = "remnote";
version = "1.23.10";
version = "1.24.0";
src = fetchurl {
url = "https://download2.remnote.io/remnote-desktop2/RemNote-${version}.AppImage";
hash = "sha256-EOmsV9tsp3fKH6Ktwx3O/Mk5XBq4byY19cCA7/JOWj8=";
hash = "sha256-OV8o2AOoDXdz02tXbtelcIOVOT3PIiBYJf38mRuvWdM=";
};
appimageContents = appimageTools.extractType2 { inherit pname version src; };
in
+4 -5
View File
@@ -11,23 +11,22 @@
buildGoModule (finalAttrs: {
pname = "seaweedfs";
version = "4.12";
version = "4.16";
src = fetchFromGitHub {
owner = "seaweedfs";
repo = "seaweedfs";
tag = finalAttrs.version;
hash = "sha256-AiNtGepaNZ/1cGWp3SFQ7l4+mjpag9MNZb2IXKar9Qo=";
hash = "sha256-BRdI/50YxwdCdBj91w6OPgTcOb7JkshkVSD8b8bHcYA=";
};
vendorHash = "sha256-P2wbXslmHF2dwNoXemuOscKUHrPrypRR+Ehv89tlVUM=";
vendorHash = "sha256-XbfKYftKfbJDkbp9DwVAs56w5lMvqdlW5cwhhivniBM=";
nativeBuildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ libredirect.hook ];
subPackages = [ "weed" ];
ldflags = [
"-w"
"-s"
"-X github.com/seaweedfs/seaweedfs/weed/util.COMMIT=N/A"
];
@@ -48,7 +47,7 @@ buildGoModule (finalAttrs: {
# Test all targets.
unset subPackages
# Remove unmaintained tests and those that require additional services.
rm -rf unmaintained test/s3 test/fuse_integration test/kafka test/sftp
rm -rf unmaintained test/s3 test/fuse_integration test/kafka test/sftp test/tus test/volume_server
# TestECEncodingVolumeLocationTimingBug, TestECEncodingMasterTimingRaceCondition: weed binary not found
export PATH=$PATH:$NIX_BUILD_TOP/go/bin
''
+3 -3
View File
@@ -9,16 +9,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "serie";
version = "0.6.1";
version = "0.7.0";
src = fetchFromGitHub {
owner = "lusingander";
repo = "serie";
rev = "v${finalAttrs.version}";
hash = "sha256-cnuQ6gAL0YRv0DIjuXstPmFRyfQh7c+MHZkc3lzRcRo=";
hash = "sha256-J84xop9QGRa9pgHGF8ioLwmnXu1t5iO9ZLV2MoYRdEI=";
};
cargoHash = "sha256-SavJ6OsTxWUWFWxyfq3B/maqqTRIRiBmwIeXAH3+ZCw=";
cargoHash = "sha256-B9Fn4okfS/OwhR34YwyjhPvpK6DLFuVY0BRubj4Y4MA=";
nativeCheckInputs = [ gitMinimal ];
@@ -6,13 +6,13 @@
callPackage ./generic.nix rec {
pname = "shattered-pixel-dungeon";
version = "3.3.5";
version = "3.3.7";
src = fetchFromGitHub {
owner = "00-Evan";
repo = "shattered-pixel-dungeon";
tag = "v${version}";
hash = "sha256-NxeDF0bfQJsJiWkAD8ynjtezPZZ5TaU0ih1t2uVtXVU=";
hash = "sha256-nWsIaAj4IqQWmNOGFOFJ+oX0Nz6DlWEp/47/qrcZ8qs=";
};
patches = [ ];
+3 -3
View File
@@ -6,7 +6,7 @@
buildGoModule (finalAttrs: {
pname = "snowflake";
version = "2.11.0";
version = "2.12.1";
src = fetchFromGitLab {
domain = "gitlab.torproject.org";
@@ -14,10 +14,10 @@ buildGoModule (finalAttrs: {
owner = "anti-censorship/pluggable-transports";
repo = "snowflake";
rev = "v${finalAttrs.version}";
sha256 = "sha256-VfKiY5XCUnhsWoSfMeYQ5rxxXmAtWzD94o4EvhDCwDM=";
sha256 = "sha256-3aXO6AvOHPX8QCXK5dFx3QVxQ7BNAi4DJAZ63BMOI1g=";
};
vendorHash = "sha256-vopRE4B4WhncUdBfmBTzRbZzCU20vsHoNCYcPG4BGc0=";
vendorHash = "sha256-X7SfTTxUL/4f2OndF8gnhz5JVpqGzeGLctiOFx5pJPI=";
meta = {
description = "System to defeat internet censorship";
+36
View File
@@ -0,0 +1,36 @@
{
buildGoModule,
fetchFromGitHub,
lib,
}:
buildGoModule (finalAttrs: {
pname = "vex-tui";
version = "2.0.1";
src = fetchFromGitHub {
owner = "CodeOne45";
repo = "vex-tui";
tag = "v${finalAttrs.version}";
hash = "sha256-NHGqfdto2geJD9FUFMC/MEpGocNrRN8gtJ0J/6kSJkc=";
};
vendorHash = "sha256-PvaV0tJjIVppB36Cxg4aAKX0MBjgFC5S4GTs1zHxCCU=";
ldflags = [
"-s"
"-w"
"-X main.version=${finalAttrs.version}"
];
postInstall = ''
mv $out/bin/{vex-tui,vex}
'';
meta = {
description = "Beautiful, fast, and feature-rich terminal-based Excel and CSV viewer built with Go";
homepage = "https://github.com/CodeOne45/vex-tui";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ Inarizxc ];
platforms = lib.platforms.linux;
};
})
+3 -3
View File
@@ -66,7 +66,7 @@
stdenv.mkDerivation rec {
pname = "vivaldi";
version = "7.8.3925.74";
version = "7.8.3925.76";
suffix =
{
@@ -79,8 +79,8 @@ stdenv.mkDerivation rec {
url = "https://downloads.vivaldi.com/stable/vivaldi-stable_${version}-1_${suffix}.deb";
hash =
{
aarch64-linux = "sha256-mjincXiugFWW4dnJEWC3AnBc7bk+pGmxS8w9kUJhTpM=";
x86_64-linux = "sha256-v7fAE8iUVYJCHnURD/XLpMz83X0RDK0IYrKmSMUtmxA=";
aarch64-linux = "sha256-gXbJyWY6demWPkOS+LIY87K4gbO2uOVM5JvPpW4YnSc=";
x86_64-linux = "sha256-BIlOykKzEbCoNryziVGppcoreTGt9xgkOmJbVd5zwAM=";
}
.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
};
+3 -3
View File
@@ -6,16 +6,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "watchlog";
version = "1.254.0";
version = "1.257.0";
src = fetchFromGitLab {
owner = "kevincox";
repo = "watchlog";
rev = "v${finalAttrs.version}";
hash = "sha256-gXglNyeIrLCarHwn0shSAOEcoVOW9yaCuXA/KGB1pdo=";
hash = "sha256-KesYMimT6GMo5HK7rsasgfylM0F98bZcqCEsJdNPgaM=";
};
cargoHash = "sha256-aw5WRBnQJqn9zUzXir4HNNywcwX3yZW5RKkPZBa5XD0=";
cargoHash = "sha256-y0U+AQ8a7SEyUl6LtGzD61ArJUx3GU19dnk6KHVaXxM=";
meta = {
description = "Easier monitoring of live logs";
+3 -3
View File
@@ -43,13 +43,13 @@ assert (
);
rustPlatform.buildRustPackage (finalAttrs: {
pname = "xremap${variant.suffix or ""}";
version = "0.14.17";
version = "0.14.18";
src = fetchFromGitHub {
owner = "xremap";
repo = "xremap";
tag = "v${finalAttrs.version}";
hash = "sha256-4WRJqRxfQ2udOo/U/iVoY9IB1XbDKH9yaSeOQAGciRM=";
hash = "sha256-bn5Qq3pcrxTKUBfMkoK1xtLl4c4tHafe74REMQS+cz8=";
};
nativeBuildInputs = [ pkg-config ];
@@ -57,7 +57,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
buildNoDefaultFeatures = true;
buildFeatures = variant.features;
cargoHash = "sha256-8zVUA2tpFe0MKzhu188FdQ/uAqffbaXkNh9Sl7XlI1E=";
cargoHash = "sha256-MJ41A8hUurevmy9MX1qB32T8J4KaZO/gDA96CmTuIBU=";
passthru = lib.mapAttrs (name: lib.const (xremap.override { withVariant = name; })) variants;
+2 -2
View File
@@ -6,14 +6,14 @@
python3Packages.buildPythonApplication (finalAttrs: {
pname = "yewtube";
version = "2.12.1";
version = "2.13.1";
format = "setuptools";
src = fetchFromGitHub {
owner = "mps-youtube";
repo = "yewtube";
tag = "v${finalAttrs.version}";
hash = "sha256-+V9t71Z8PKioM7HWlzTB6X7EokAWgqC3fQJr5tkPdq8=";
hash = "sha256-aRJQMm1Ykn6bs6OTSEGMTc5N8pinuRQQ+m54XpT45As=";
};
postPatch = ''
+2 -2
View File
@@ -9,11 +9,11 @@
# Based on https://gist.github.com/msteen/96cb7df66a359b827497c5269ccbbf94 and joplin-desktop nixpkgs.
let
pname = "zettlr";
version = "4.2.0";
version = "4.2.1";
src = fetchurl {
url = "https://github.com/Zettlr/Zettlr/releases/download/v${version}/Zettlr-${version}-x86_64.appimage";
hash = "sha256-csGQcOhV/NaFgAqfH2ZFP7ZOYIHKBnvscZ4Sy6GJuvc=";
hash = "sha256-/gRAfZhnYeHrZvpB/7bDuOxuwOphFLJOmn+HRBf0arQ=";
};
appimageContents = appimageTools.extractType2 {
inherit pname version src;
@@ -27,19 +27,12 @@ let
let
prefix = "https://${domain}/${owner}/${repo}/";
in
if sha256 != null then
if hash != null || sha256 != null then
fetchurl {
url = "${prefix}releases/download/${rev}/${
lib.concatStringsSep "-" (namePrefix ++ [ pname ])
}-${rev}.tbz";
inherit sha256;
}
else if hash != null then
fetchurl {
url = "${prefix}releases/download/v${rev}/${
lib.concatStringsSep "-" (namePrefix ++ [ pname ])
}-${rev}.tbz";
inherit hash;
hash = if hash != null then hash else sha256;
}
else
fetchTarball { url = "${prefix}archive/refs/heads/${rev}.tar.gz"; };
@@ -51,9 +44,10 @@ mkCoqDerivation {
repo = "coqword";
useDune = true;
releaseRev = v: if lib.versionAtLeast v "3.3" then v else "v${v}";
releaseRev = v: "v${v}";
release."3.3".hash = "sha256-z+2eerYZbaEytg3A00GQ12wpj4IjKLJYf6Ny5cARwog=";
release."3.4".hash = "sha256-AnyiM5B7JJZI5LR0vSi6baVIx9SibYRiho7UBg1uV5w=";
release."3.3".hash = "sha256-Zn9245fr0OhgaXjWlIO1QwSxrQYetj7qPHwZAXTdqNc=";
release."3.2".sha256 = "sha256-4HOFFQzKbHIq+ktjJaS5b2Qr8WL1eQ26YxF4vt1FdWM=";
release."3.1".sha256 = "sha256-qQHis6554sG7NpCpWhT2wvelnxsrbEPVNv3fpxwxHMU=";
release."3.0".sha256 = "sha256-xEgx5HHDOimOJbNMtIVf/KG3XBemOS9XwoCoW6btyJ4=";
@@ -78,7 +72,7 @@ mkCoqDerivation {
lib.switch
[ coq.coq-version mathcomp.version ]
[
(case (range "8.16" "9.1") (isGe "2.0") "3.3")
(case (range "8.16" "9.1") (isGe "2.0") "3.4")
(case (range "8.12" "8.20") (range "1.12" "1.19") "2.4")
]
null;
@@ -451,6 +451,12 @@ with haskellLib;
"$0!=\"tests.buf.t_iter\""
];
}) super.attoparsec;
attoparsec-isotropic = overrideCabal (drv: {
testFlags = drv.testFlags or [ ] ++ [
"-p"
"$0!=\"tests.leftToRight.buf.t_iter\""
];
}) super.attoparsec-isotropic;
# These packages (and their reverse deps) cannot be built with profiling enabled.
ghc-heap-view = lib.pipe super.ghc-heap-view [
@@ -92,9 +92,9 @@
major = "3";
minor = "15";
patch = "0";
suffix = "a6";
suffix = "a7";
};
hash = "sha256-jipOGyr7k6hNZZ1DGx84RUSz2gCkuP9b81gPB61P+Yk=";
hash = "sha256-j1kMQot/DUBt+Si4Vzfno6+ijt3U0UGUEOqAloftHqc=";
inherit passthruFun;
};
@@ -0,0 +1,80 @@
{
buildPythonPackage,
coverage,
django,
django-storages,
fetchFromGitHub,
flake8,
gnupg,
lib,
pep8,
psycopg2,
pylint,
pytest-django,
pytestCheckHook,
python-dotenv,
python-gnupg,
pytz,
setuptools,
testfixtures,
tox,
pythonOlder,
}:
buildPythonPackage rec {
pname = "django-dbbackup";
version = "4.3.0";
pyproject = true;
src = fetchFromGitHub {
owner = "django-dbbackup";
repo = "django-dbbackup";
tag = version;
hash = "sha256-w+LfU5I7swnCJpwqBqoCTRUCZjKoIxK3OC+8CrihLEI=";
};
disabled = pythonOlder "3.9";
dependencies = [
django
python-gnupg
pytz
];
build-system = [ setuptools ];
doCheck = true;
preCheck = ''
tempDir=$(mktemp -d)
export HOME=$tempDir
export DJANGO_SETTINGS_MODULE=dbbackup.tests.settings
'';
pythonImportsCheck = [ "dbbackup" ];
disabledTestPaths = [
# Specific gnupg version required, which aren't provided in upstream
"dbbackup/tests/commands/test_dbrestore.py::DbrestoreCommandRestoreBackupTest::test_decrypt"
"dbbackup/tests/test_connectors/test_base.py::BaseCommandDBConnectorTest::test_run_command_with_parent_env"
"dbbackup/tests/test_utils.py::Encrypt_FileTest::test_func"
"dbbackup/tests/test_utils.py::Compress_FileTest::test_func"
];
nativeCheckInputs = [
coverage
django-storages
flake8
gnupg
pep8
psycopg2
pylint
pytest-django
pytestCheckHook
python-dotenv
testfixtures
tox
];
meta = with lib; {
description = "Management commands to help backup and restore your project database and media files";
homepage = "https://github.com/Archmonger/django-dbbackup";
changelog = "https://github.com/Archmonger/django-dbbackup/releases/tag/${version}";
license = licenses.bsd3;
maintainers = with maintainers; [ kurogeek ];
};
}
@@ -0,0 +1,39 @@
{
buildPythonPackage,
django,
fetchFromGitHub,
lib,
setuptools,
pythonOlder,
}:
buildPythonPackage rec {
pname = "django-error-report-2";
version = "0.4.2";
pyproject = true;
src = fetchFromGitHub {
owner = "matmair";
repo = "django-error-report-2";
tag = version;
hash = "sha256-ZCaslqgruJxM8345/jSlZGruM+27H9hvwL0wtPkUzc0=";
};
disabled = pythonOlder "3.6";
dependencies = [
django
];
build-system = [ setuptools ];
# There is no tests on upstream
doCheck = false;
pythonImportsCheck = [ "error_report" ];
meta = with lib; {
description = "Log/View Django server errors.";
homepage = "https://github.com/matmair/django-error-report-2";
changelog = "https://github.com/matmair/django-error-report-2/releases/tag/${version}";
license = licenses.mit;
maintainers = with maintainers; [ kurogeek ];
};
}
@@ -0,0 +1,63 @@
{
buildPythonPackage,
coverage,
django,
django-debug-toolbar,
fetchFromGitHub,
jinja2,
lib,
pytest-django,
pytestCheckHook,
setuptools-scm,
setuptools,
pythonOlder,
}:
buildPythonPackage rec {
pname = "django-flags";
version = "5.0.14";
pyproject = true;
src = fetchFromGitHub {
owner = "cfpb";
repo = "django-flags";
tag = version;
hash = "sha256-0IOcpl8OamNlalqNqMvmx/bkuIkaNnLwCD7nFclR8S4=";
};
dependencies = [
django
];
disabled = pythonOlder "3.8";
build-system = [
setuptools
setuptools-scm
];
doCheck = true;
preCheck = ''
export DJANGO_SETTINGS_MODULE=flags.tests.settings
'';
pythonImportsCheck = [ "flags" ];
nativeCheckInputs = [
coverage
(django-debug-toolbar.overrideAttrs (old: rec {
version = "5.2.0";
src = old.src.override {
tag = version;
hash = "sha256-/oWirfJaiHVRI1m3N1QveutX2sag8fjYqJYCZ8BnMa0=";
};
}))
jinja2
pytest-django
pytestCheckHook
];
meta = with lib; {
description = "Feature flags for Django projects";
homepage = "https://github.com/cfpb/django-flags";
changelog = "https://github.com/cfpb/django-flags/releases/tag/${version}";
license = licenses.cc0;
maintainers = with maintainers; [ kurogeek ];
};
}
@@ -0,0 +1,61 @@
{
buildPythonPackage,
django,
fetchFromGitHub,
lib,
pytest-django,
pytestCheckHook,
setuptools-scm,
icalendar,
django-recurrence,
pythonOlder,
}:
buildPythonPackage rec {
pname = "django-ical";
version = "1.9.2";
pyproject = true;
src = fetchFromGitHub {
owner = "jazzband";
repo = "django-ical";
tag = version;
hash = "sha256-DUe0loayGcUS7MTyLn+g0KBxbIY7VsaoQNHGSMbMI3U=";
};
disabled = pythonOlder "3.7";
dependencies = [
django
django-recurrence
# Latest version didn't pass the test
(icalendar.overrideAttrs (old: rec {
version = "6.0.0";
src = old.src.override {
tag = "v${version}";
hash = "sha256-eWFDY/pNVfcUk3PfB0vXqh9swuSGtflUw44IMDJI+yI=";
};
}))
];
build-system = [ setuptools-scm ];
doCheck = true;
preCheck = ''
export DJANGO_SETTINGS_MODULE=test_settings
'';
pythonImportsCheck = [
"icalendar"
"django_ical"
];
nativeCheckInputs = [
pytest-django
pytestCheckHook
];
meta = with lib; {
description = "iCal feeds for Django based on Django's syndication feed framework.";
homepage = "https://github.com/jazzband/django-ical";
changelog = "https://github.com/jazzband/django-ical/releases/tag/${version}";
license = licenses.mit;
maintainers = with maintainers; [ kurogeek ];
};
}
@@ -0,0 +1,50 @@
{
buildPythonPackage,
django,
fetchFromGitHub,
lib,
pytest-django,
pytestCheckHook,
setuptools,
six,
pythonOlder,
}:
buildPythonPackage rec {
pname = "django-mailbox";
version = "4.10.1";
pyproject = true;
src = fetchFromGitHub {
owner = "coddingtonbear";
repo = "django-mailbox";
tag = version;
hash = "sha256-7CBUnqveTSfdc+8x8sZUqvwYW3vKjZKfOPVWFSo4es0=";
};
disabled = pythonOlder "3.8";
dependencies = [
django
six
];
build-system = [ setuptools ];
doCheck = true;
preCheck = ''
substituteInPlace setup.cfg --replace-fail "pytest" "tool:pytest"
export DJANGO_SETTINGS_MODULE=django_mailbox.tests.settings
'';
pythonImportsCheck = [ "django_mailbox" ];
nativeCheckInputs = [
pytest-django
pytestCheckHook
];
meta = with lib; {
description = "Import mail from POP3, IMAP, local email mailboxes or directly from Postfix or Exim4 into your Django application automatically.";
homepage = "https://github.com/coddingtonbear/django-mailbox";
changelog = "https://github.com/coddingtonbear/django-mailbox/releases/tag/${version}";
license = licenses.mit;
maintainers = with maintainers; [ kurogeek ];
};
}
@@ -0,0 +1,53 @@
{
buildPythonPackage,
django,
fetchFromGitHub,
lib,
pytest-django,
pytestCheckHook,
setuptools,
markdown,
bleach,
tinycss2,
}:
buildPythonPackage rec {
pname = "django-markdownify";
version = "0.9.5";
pyproject = true;
src = fetchFromGitHub {
owner = "erwinmatijsen";
repo = "django-markdownify";
tag = version;
hash = "sha256-KYU8p8NRD4EIS/KhOk9nvmXCf0RWEc+IFZ57YtsDSWE=";
};
dependencies = [
django
markdown
bleach
];
build-system = [ setuptools ];
doCheck = true;
preCheck = ''
export DJANGO_SETTINGS_MODULE=markdownify.checks
'';
nativeCheckInputs = [
tinycss2
pytest-django
pytestCheckHook
];
pythonImportsCheck = [ "markdownify" ];
disabledTests = [
# Test settings didn't setup DjangoTemplates
"test_markdownify_nodelist"
];
meta = with lib; {
description = "Markdown template filter for Django";
homepage = "https://github.com/erwinmatijsen/django-markdownify";
license = licenses.mit;
maintainers = with maintainers; [ kurogeek ];
};
}
@@ -0,0 +1,55 @@
{
fetchFromGitHub,
buildPythonPackage,
setuptools,
lib,
django,
py-moneyed,
certifi,
pytestCheckHook,
pytest-django,
pytest-cov,
pythonOlder,
}:
buildPythonPackage rec {
pname = "django-money";
version = "3.5.4";
pyproject = true;
src = fetchFromGitHub {
owner = "django-money";
repo = "django-money";
tag = version;
hash = "sha256-JqAZaiJ2zCb7Jwvumqi16IrQ6clmcw71WpPzbhE2Fms=";
};
disabled = pythonOlder "3.7";
dependencies = [
django
certifi
py-moneyed
];
build-system = [ setuptools ];
doCheck = true;
nativeCheckInputs = [
pytestCheckHook
pytest-django
pytest-cov
];
pythonImportsCheck = [ "djmoney" ];
# avoid tests which import mixer, an abandoned library
disabledTests = [
"test_mixer_blend"
];
meta = with lib; {
description = "Money fields for Django forms and models.";
homepage = "https://github.com/django-money/django-money";
changelog = "https://github.com/django-money/django-money/releases/tag/${version}";
license = licenses.bsd3;
maintainers = with maintainers; [ kurogeek ];
};
}
@@ -0,0 +1,50 @@
{
buildPythonPackage,
django,
fetchFromGitHub,
lib,
python-dateutil,
pytest-django,
pytestCheckHook,
pytest-cov,
pytest-sugar,
setuptools-scm,
pythonOlder,
}:
buildPythonPackage rec {
pname = "django-recurrence";
version = "1.11.1";
pyproject = true;
src = fetchFromGitHub {
owner = "jazzband";
repo = "django-recurrence";
tag = version;
hash = "sha256-Ytf4fFTVFIQ+6IBhwRMtCkonP0POivv4TrYok37nghA=";
};
disabled = pythonOlder "3.7";
dependencies = [
django
python-dateutil
];
build-system = [ setuptools-scm ];
doCheck = true;
pythonImportsCheck = [ "recurrence" ];
nativeCheckInputs = [
pytest-django
pytest-cov
pytest-sugar
pytestCheckHook
];
meta = with lib; {
description = "Utility for working with recurring dates in Django.";
homepage = "https://github.com/jazzband/django-recurrence";
changelog = "https://github.com/jazzband/django-recurrence/releases/tag/${version}";
license = licenses.bsd3;
maintainers = with maintainers; [ kurogeek ];
};
}
@@ -0,0 +1,34 @@
{
buildPythonPackage,
django,
lib,
fetchurl,
setuptools-scm,
pythonOlder,
}:
buildPythonPackage {
pname = "django-sslserver";
version = "0.22";
format = "wheel";
src = fetchurl {
url = "https://files.pythonhosted.org/packages/6f/97/e4011f3944f83a7d2aaaf893c3689ad70e8d2ae46fb6e14fd0e3b0c6ce0b/django_sslserver-0.22-py3-none-any.whl";
hash = "sha256-xZijY9LM3CQhwI3bPYsJc/gOjkejpbdOSiiW8hwpR8U=";
};
disabled = pythonOlder "3.4";
dependencies = [
django
];
build-system = [ setuptools-scm ];
doCheck = true;
meta = with lib; {
description = "A SSL-enabled development server for Django";
homepage = "https://github.com/teddziuba/django-sslserver";
license = licenses.mit;
maintainers = with maintainers; [ kurogeek ];
};
}
@@ -0,0 +1,63 @@
{
buildPythonPackage,
django,
fetchFromGitHub,
lib,
pytest-django,
pytestCheckHook,
setuptools-scm,
pillow,
pytest-cov,
gettext,
pythonOlder,
pythonAtLeast,
}:
buildPythonPackage rec {
pname = "django-stdimage";
version = "6.0.2";
pyproject = true;
src = fetchFromGitHub {
owner = "codingjoe";
repo = "django-stdimage";
tag = version;
hash = "sha256-uwVU3Huc5fitAweShJjcMW//GBeIpJcxqKKLGo/EdIs=";
};
disabled = pythonOlder "3.8" || pythonAtLeast "3.13";
dependencies = [
django
pillow
];
build-system = [ setuptools-scm ];
nativeBuildInputs = [ gettext ];
doCheck = true;
preCheck = ''
export DJANGO_SETTINGS_MODULE=tests.settings
'';
disabledTests = [
# SuspiciousFileOperation: Detected path traversal attempt (Even appear in upstream)
"test_variations_override"
];
pythonImportsCheck = [
"stdimage"
"stdimage.validators"
"stdimage.models"
];
nativeCheckInputs = [
pytest-django
pytest-cov
pytestCheckHook
];
meta = with lib; {
description = "Django Standardized Image Field";
homepage = "https://github.com/codingjoe/django-stdimage";
changelog = "https://github.com/codingjoe/django-stdimage/releases/tag/${version}";
license = licenses.mit;
maintainers = with maintainers; [ kurogeek ];
};
}
@@ -0,0 +1,82 @@
{
buildPythonPackage,
fetchFromGitHub,
lib,
setuptools,
python,
pkgs,
pythonOlder,
}:
buildPythonPackage rec {
pname = "django-structlog";
version = "9.1.1";
pyproject = true;
src = fetchFromGitHub {
owner = "jrobichaud";
repo = "django-structlog";
tag = version;
hash = "sha256-SEigOdlXZtfLAgRgGkv/eDNDAiiHd7YthRJ/H6e1v5U=";
};
disabled = pythonOlder "3.9";
dependencies = with python.pkgs; [
colorama
django
django-allauth
crispy-bootstrap5
django-crispy-forms
django-environ
django-extensions
django-ipware
django-model-utils
django-ninja
django-redis
djangorestframework
structlog
];
optional-dependencies.celery = with python.pkgs; [ celery ];
build-system = [ setuptools ];
doCheck = true;
preCheck = ''
export DJANGO_SETTINGS_MODULE=config.settings.test_demo_app
${pkgs.valkey}/bin/redis-server &
REDIS_PID=$!
'';
postCheck = ''
kill $REDIS_PID
'';
pytestFlags = [
"-x"
"--cov=./django_structlog_demo_project"
"--cov-append django_structlog_demo_project"
];
pythonImportsCheck = [
"structlog"
"django_structlog"
];
nativeCheckInputs = with python.pkgs; [
celery
factory-boy
pytest-asyncio
pytest-cov
pytest-django
pytest-mock
pytest-sugar
pytestCheckHook
];
meta = with lib; {
description = "Structured Logging for Django";
homepage = "https://github.com/jrobichaud/django-structlog";
changelog = "https://github.com/jrobichaud/django-structlog/releases/tag/${version}";
license = licenses.mit;
maintainers = with maintainers; [ kurogeek ];
};
}
@@ -0,0 +1,35 @@
{
fetchFromGitHub,
buildPythonPackage,
setuptools-scm,
lib,
django,
pythonOlder,
}:
buildPythonPackage rec {
pname = "django-user-sessions";
version = "2.0.0";
pyproject = true;
src = fetchFromGitHub {
owner = "jazzband";
repo = "django-user-sessions";
tag = version;
hash = "sha256-Wexy6G2pZ8LTnqtJkBZIePV7qhQW8gu/mKiQfZtgf/o=";
};
disabled = pythonOlder "3.7";
dependencies = [
django
];
build-system = [ setuptools-scm ];
meta = with lib; {
description = "Extend Django sessions with a foreign key back to the user, allowing enumerating all user's sessions.";
homepage = "https://github.com/jazzband/django-user-sessions";
license = licenses.mit;
maintainers = with maintainers; [ kurogeek ];
};
}
@@ -0,0 +1,33 @@
{
buildPythonPackage,
django,
fetchFromGitHub,
lib,
setuptools,
}:
buildPythonPackage rec {
pname = "django-xforwardedfor-middleware";
version = "2.0";
pyproject = true;
src = fetchFromGitHub {
owner = "allo-";
repo = "django-xforwardedfor-middleware";
tag = "v${version}";
hash = "sha256-dDXSb17kXOSeIgY6wid1QFHhUjrapasWgCEb/El51eA=";
};
dependencies = [
django
];
build-system = [ setuptools ];
doCheck = true;
meta = with lib; {
description = "Use the X-Forwarded-For header to get the real ip of a request";
homepage = "https://github.com/allo-/django-xforwardedfor-middleware";
license = licenses.publicDomain;
maintainers = with maintainers; [ kurogeek ];
};
}
@@ -9,14 +9,14 @@
buildPythonPackage rec {
pname = "hueble";
version = "2.1.0";
version = "2.1.1";
pyproject = true;
src = fetchFromGitHub {
owner = "flip-dots";
repo = "HueBLE";
tag = "v${version}";
hash = "sha256-1KDKfmP7fNe66ZMHbOsNvnikkm1/AGQPBKTh7h9ku6Y=";
hash = "sha256-CMipY44tfuOQE2P77mH44stevg1IOd0MeF+cS6jkPnw=";
};
build-system = [ setuptools ];
@@ -10,14 +10,14 @@
buildPythonPackage rec {
pname = "onedrive-personal-sdk";
version = "0.1.5";
version = "0.1.6";
pyproject = true;
src = fetchFromGitHub {
owner = "zweckj";
repo = "onedrive-personal-sdk";
tag = "v${version}";
hash = "sha256-l4cfSxF0D/qJPtA2YYcRfxMFL3TumfJw0jMQPoeIKGA=";
hash = "sha256-vNC7fXsTVCYizQnucyWOanYRoDCTfCfGD0zxGyigizk=";
};
build-system = [ setuptools ];
@@ -0,0 +1,38 @@
{
buildPythonPackage,
pythonOlder,
hatchling,
opentelemetry-instrumentation,
opentelemetry-instrumentation-dbapi,
opentelemetry-test-utils,
pytestCheckHook,
}:
buildPythonPackage {
inherit (opentelemetry-instrumentation) version src;
pname = "opentelemetry-instrumentation-sqlite3";
pyproject = true;
disabled = pythonOlder "3.8";
sourceRoot = "${opentelemetry-instrumentation.src.name}/instrumentation/opentelemetry-instrumentation-sqlite3";
build-system = [ hatchling ];
dependencies = [
opentelemetry-instrumentation
opentelemetry-instrumentation-dbapi
];
nativeCheckInputs = [
opentelemetry-test-utils
pytestCheckHook
];
pythonImportsCheck = [ "opentelemetry.instrumentation.sqlite3" ];
meta = opentelemetry-instrumentation.meta // {
homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/instrumentation/opentelemetry-instrumentation-sqlite3";
description = "OpenTelemetry Instrumentation for Django";
};
}
@@ -0,0 +1,40 @@
{
buildPythonPackage,
pythonOlder,
hatchling,
opentelemetry-instrumentation,
opentelemetry-api,
opentelemetry-test-utils,
psutil,
pytestCheckHook,
}:
buildPythonPackage {
inherit (opentelemetry-instrumentation) version src;
pname = "opentelemetry-instrumentation-system-metrics";
pyproject = true;
disabled = pythonOlder "3.8";
sourceRoot = "${opentelemetry-instrumentation.src.name}/instrumentation/opentelemetry-instrumentation-system-metrics";
build-system = [ hatchling ];
dependencies = [
opentelemetry-instrumentation
opentelemetry-api
psutil
];
nativeCheckInputs = [
opentelemetry-test-utils
pytestCheckHook
];
pythonImportsCheck = [ "opentelemetry.instrumentation.system_metrics" ];
meta = opentelemetry-instrumentation.meta // {
homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/instrumentation/opentelemetry-instrumentation-system-metrics";
description = "OpenTelemetry Instrumentation for Django";
};
}
@@ -13,14 +13,14 @@
buildPythonPackage rec {
pname = "pepit";
version = "0.4.0";
version = "0.5.0";
pyproject = true;
src = fetchFromGitHub {
owner = "PerformanceEstimation";
repo = "PEPit";
tag = version;
hash = "sha256-6HF/BkDFUvui7CaVfOeJUQhl3QLLyE7aabDWcZ4tgXc=";
hash = "sha256-JwJGJhBC7fS10D6cUkQwhwoT932Pi4oPTtNLNwyM3Q4=";
};
postPatch = ''
@@ -0,0 +1,34 @@
{
lib,
buildPythonPackage,
setuptools-scm,
pythonOlder,
fetchPypi,
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "ppf-datamatrix";
version = "0.2";
format = "pyproject";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
hash = "sha256-jwNNnJDkCPYPixCic7qrgQFMmoHJg9wevcMdTKWsVYI=";
};
doCheck = true;
pythonImportsCheck = [ "ppf.datamatrix" ];
nativeCheckInputs = [ pytestCheckHook ];
build-system = [ setuptools-scm ];
meta = {
description = "Pure-python package to generate data matrix codes.";
homepage = "https://github.com/adrianschlatter/ppf.datamatrix";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ kurogeek ];
};
}
@@ -0,0 +1,38 @@
{
lib,
buildPythonPackage,
fetchPypi,
setuptools,
babel,
pythonOlder,
typing-extensions,
}:
buildPythonPackage rec {
pname = "py-moneyed";
version = "3.0";
format = "pyproject";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-SQbw8CzyuR7bouFW8tTpp48iQFmrjI+i/yYjDHXYlOg=";
};
dependencies = [
babel
typing-extensions
];
pythonImportsCheck = [ "moneyed" ];
build-system = [ setuptools ];
meta = {
description = "Provides Currency and Money classes for use in your Python code.";
homepage = "https://github.com/py-moneyed/py-moneyed";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ kurogeek ];
};
}
@@ -12,14 +12,14 @@
buildPythonPackage rec {
pname = "pyanglianwater";
version = "3.1.0";
version = "3.1.1";
pyproject = true;
src = fetchFromGitHub {
owner = "pantherale0";
repo = "pyanglianwater";
tag = version;
hash = "sha256-NlAntGrc42jMxjaimG4AVvpsmDZfju9tHt3pZ8rldV0=";
hash = "sha256-iMUrX6tyPVf/L/kUymmrqUO4JOaQUhWdrkRPiOBIVGg=";
};
build-system = [ setuptools ];
@@ -746,6 +746,8 @@ buildPythonPackage.override { inherit stdenv; } (finalAttrs: {
rocmSupport
rocmPackages
unroll-src
gpuTargetString
rocmtoolkit_joined
;
cudaCapabilities = if cudaSupport then supportedCudaCapabilities else [ ];
# At least for 1.10.2 `torch.fft` is unavailable unless BLAS provider is MKL. This attribute allows for easy detection of its availability.
@@ -762,6 +764,7 @@ buildPythonPackage.override { inherit stdenv; } (finalAttrs: {
homepage = "https://pytorch.org/";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [
caniko
GaetanLepage
LunNova # esp. for ROCm
teh
@@ -1,6 +1,5 @@
{
lib,
symlinkJoin,
buildPythonPackage,
fetchFromGitHub,
@@ -19,62 +18,9 @@
cudaPackages,
rocmSupport ? torch.rocmSupport,
rocmPackages,
gpuTargets ? [ ],
}:
let
# TODO: Reuse one defined in torch?
# Some of those dependencies are probably not required,
# but it breaks when the store path is different between torch and torchaudio
rocmtoolkit_joined = symlinkJoin {
name = "rocm-merged";
paths = with rocmPackages; [
rocm-core
clr
rccl
miopen
rocrand
rocblas
rocsparse
hipsparse
rocthrust
rocprim
hipcub
roctracer
rocfft
rocsolver
hipfft
hipsolver
hipblas-common
hipblas
rocminfo
rocm-comgr
rocm-device-libs
rocm-runtime
clr.icd
hipify
];
# Fix `setuptools` not being found
postBuild = ''
rm -rf $out/nix-support
'';
};
# Only used for ROCm
gpuTargetString = lib.strings.concatStringsSep ";" (
if gpuTargets != [ ] then
# If gpuTargets is specified, it always takes priority.
gpuTargets
else if rocmSupport then
rocmPackages.clr.gpuTargets
else
throw "No GPU targets specified"
);
stdenv = torch.stdenv;
in
buildPythonPackage.override { inherit stdenv; } (finalAttrs: {
buildPythonPackage.override { stdenv = torch.stdenv; } (finalAttrs: {
pname = "torchaudio";
version = "2.10.0";
pyproject = true;
@@ -124,13 +70,13 @@ buildPythonPackage.override { inherit stdenv; } (finalAttrs: {
sox
torch.cxxdev
]
++ lib.optionals stdenv.cc.isClang [ llvmPackages.openmp ];
++ lib.optionals torch.stdenv.cc.isClang [ llvmPackages.openmp ];
dependencies = [ torch ];
preConfigure = lib.optionalString rocmSupport ''
export ROCM_PATH=${rocmtoolkit_joined}
export PYTORCH_ROCM_ARCH="${gpuTargetString}"
export ROCM_PATH=${torch.rocmtoolkit_joined}
export PYTORCH_ROCM_ARCH="${torch.gpuTargetString}"
'';
dontUseCmakeConfigure = true;
@@ -148,6 +94,7 @@ buildPythonPackage.override { inherit stdenv; } (finalAttrs: {
lib.platforms.linux ++ lib.optionals (!cudaSupport && !rocmSupport) lib.platforms.darwin;
maintainers = with lib.maintainers; [
GaetanLepage
caniko
junjihashimoto
];
};
@@ -207,12 +207,13 @@ stdenv.mkDerivation (finalAttrs: {
ln -s ${hipClang} $out/llvm
'';
# libamdhip64.so dlopens its own bare name for hipGetProcAddress symbol resolution.
# Add its own directory to its RPATH so it can find itself
# libamdhip64.so dlopens its own bare name for hipGetProcAddress symbol resolution,
# same pattern with libhiprtc.so, so add own lib directory to all .so's
# RPATHs so they can find themselves and neighbouring libs
# Must be in postFixup so it runs after patchelf --shrink-rpath which removes
# the apparently useless rpath
postFixup = ''
patchelf --add-rpath "$out/lib" "$out/lib/libamdhip64.so"
patchelf --add-rpath "$out/lib" "$out"/lib/*.so
'';
disallowedRequisites = [
@@ -266,9 +267,7 @@ stdenv.mkDerivation (finalAttrs: {
inherit rocm-smi;
clr = finalAttrs.finalPackage;
};
opencl-example = callPackage ./test-opencl-example.nix {
clr = finalAttrs.finalPackage;
};
# TODO(@LunNova): add OpenCL test with opencl-cts
generic-arch = callPackage ./test-isa-compat.nix {
clr = finalAttrs.finalPackage;
name = "generic-arch";
@@ -296,6 +295,10 @@ stdenv.mkDerivation (finalAttrs: {
"amdgcnspirv"
];
};
hiprtc-type-traits = callPackage ./test-hiprtc-type-traits.nix {
clr = finalAttrs.finalPackage;
inherit rocm-smi;
};
};
selectGpuTargets =
@@ -0,0 +1,68 @@
#include <hip/hip_runtime.h>
#include <hip/hiprtc.h>
#include <iostream>
#include <string>
#define CHECK_HIP(expr) do { \
if ((expr) != hipSuccess) { \
std::cerr << #expr << " failed" << std::endl; \
return 1; \
} \
} while(0)
#define CHECK_HIPRTC(expr) do { \
hiprtcResult _res = (expr); \
if (_res != HIPRTC_SUCCESS) { \
std::cerr << #expr << " failed: " << hiprtcGetErrorString(_res) << std::endl; \
hiprtcGetProgramLogSize(prog, &log_size); \
if (log_size > 0) { \
std::string log(log_size, '\0'); \
hiprtcGetProgramLog(prog, log.data()); \
std::cerr << "Compile log:\n" << log << std::endl; \
} \
return 1; \
} \
} while(0)
static const char* kernelSource = R"(
#include <type_traits>
extern "C" __global__ void test_kernel(int* out) {
static_assert(std::is_same<int, std::remove_const<const int>::type>::value,
"type_traits not working");
out[0] = 5;
}
)";
int main() {
hiprtcProgram prog;
size_t log_size = 0;
CHECK_HIPRTC(hiprtcCreateProgram(&prog, kernelSource, "test.hip", 0, nullptr, nullptr));
CHECK_HIPRTC(hiprtcCompileProgram(prog, 0, nullptr));
size_t code_size;
CHECK_HIPRTC(hiprtcGetCodeSize(prog, &code_size));
std::string code(code_size, '\0');
CHECK_HIPRTC(hiprtcGetCode(prog, code.data()));
hiprtcDestroyProgram(&prog);
hipModule_t module;
hipFunction_t kernel;
CHECK_HIP(hipModuleLoadData(&module, code.data()));
CHECK_HIP(hipModuleGetFunction(&kernel, module, "test_kernel"));
int* d_out;
int h_out = 0;
CHECK_HIP(hipMalloc(&d_out, sizeof(int)));
void* args[] = { &d_out };
CHECK_HIP(hipModuleLaunchKernel(kernel, 1, 1, 1, 1, 1, 1, 0, nullptr, args, nullptr));
CHECK_HIP(hipMemcpy(&h_out, d_out, sizeof(int), hipMemcpyDeviceToHost));
if (h_out != 5) {
std::cerr << "Kernel output mismatch: expected 5, got " << h_out << std::endl;
return 1;
}
std::cout << "HIPRTC type_traits test passed (output=" << h_out << ")" << std::endl;
return 0;
}
@@ -0,0 +1,57 @@
{
lib,
stdenv,
makeImpureTest,
clr,
rocm-smi,
}:
# minimal hiprtc test that compiles a kernel using <type_traits> at runtime
# mirrors an migraphx workload, better test/iteration UX to be able to confirm
# with just a build up to clr
let
hiprtc-test = stdenv.mkDerivation {
pname = "hiprtc-type-traits-test";
version = "0";
dontUnpack = true;
nativeBuildInputs = [ clr ];
buildPhase = ''
runHook preBuild
hipcc -o hiprtc-test ${./test-hiprtc-type-traits.cpp} -lhiprtc
runHook postBuild
'';
installPhase = ''
runHook preInstall
mkdir -p $out/bin
cp hiprtc-test $out/bin/
runHook postInstall
'';
};
in
makeImpureTest {
name = "hiprtc-type-traits";
testedPackage = "rocmPackages.clr";
sandboxPaths = [
"/sys"
"/dev/dri"
"/dev/kfd"
];
nativeBuildInputs = [
hiprtc-test
rocm-smi
];
testScript = ''
rocm-smi
hiprtc-test
'';
meta = {
teams = [ lib.teams.rocm ];
};
}
@@ -1,88 +0,0 @@
{
lib,
stdenv,
makeImpureTest,
fetchFromGitHub,
clr,
cmake,
pkg-config,
glew,
libglut,
opencl-headers,
ocl-icd,
}:
let
examples = stdenv.mkDerivation {
pname = "amd-app-samples";
version = "2018-06-10";
src = fetchFromGitHub {
owner = "OpenCL";
repo = "AMD_APP_samples";
rev = "54da6ca465634e78fc51fc25edf5840467ee2411";
hash = "sha256-qARQpUiYsamHbko/I1gPZE9pUGJ+3396Vk2n7ERSftA=";
};
nativeBuildInputs = [
cmake
pkg-config
];
buildInputs = [
glew
libglut
opencl-headers
ocl-icd
];
installPhase = ''
runHook preInstall
mkdir -p $out/bin
# Example path is bin/x86_64/Release/cl/Reduction/Reduction
cp -r bin/*/*/*/*/* $out/bin/
runHook postInstall
'';
cmakeFlags = [ "-DBUILD_CPP_CL=OFF" ];
meta = {
description = "Samples from the AMD APP SDK (with OpenCRun support)";
homepage = "https://github.com/OpenCL/AMD_APP_samples";
license = lib.licenses.bsd2;
platforms = lib.platforms.linux;
teams = [ lib.teams.rocm ];
};
};
in
makeImpureTest {
name = "opencl-example";
testedPackage = "rocmPackages.clr";
sandboxPaths = [
"/sys"
"/dev/dri"
"/dev/kfd"
];
nativeBuildInputs = [ examples ];
OCL_ICD_VENDORS = "${clr.icd}/etc/OpenCL/vendors";
testScript = ''
# Examples load resources from current directory
cd ${examples}/bin
echo OCL_ICD_VENDORS=$OCL_ICD_VENDORS
pwd
HelloWorld | grep HelloWorld
'';
meta = {
teams = [ lib.teams.rocm ];
};
}
@@ -1,6 +1,7 @@
{
lib,
stdenv,
callPackage,
fetchFromGitHub,
rocmUpdateScript,
pkg-config,
@@ -183,6 +184,12 @@ stdenv.mkDerivation (finalAttrs: {
patchelf $test/bin/test_* --shrink-rpath --allowed-rpath-prefixes "$NIX_STORE"
'';
passthru.impureTests = {
# NIXPKGS_ALLOW_UNFREE=1 bash $(nix-build -A rocmPackages.migraphx.impureTests.migraphx-driver)
migraphx-driver = callPackage ./test-migraphx-driver.nix {
migraphx = finalAttrs.finalPackage;
};
};
passthru.updateScript = rocmUpdateScript {
name = finalAttrs.pname;
inherit (finalAttrs.src) owner;
@@ -0,0 +1,47 @@
{
lib,
fetchurl,
makeImpureTest,
writableTmpDirAsHomeHook,
migraphx,
clr,
rocm-smi,
}:
# Verify that a ≈50MiB resnet onnx can run with migraphx
let
resnet18 = fetchurl {
url = "https://huggingface.co/onnxmodelzoo/resnet18_Opset18_timm/resolve/main/resnet18_Opset18_timm.onnx";
hash = "sha256-u2Io20n72qoA9atRsFIWb0zHF1WdJYgHQdMWfJhJGHA=";
meta.license = lib.licenses.unfree;
};
in
makeImpureTest {
name = "migraphx-driver";
testedPackage = "rocmPackages.migraphx";
sandboxPaths = [
"/sys"
"/dev/dri"
"/dev/kfd"
];
nativeBuildInputs = [
writableTmpDirAsHomeHook
migraphx
clr
rocm-smi
];
# FIXME(@LunNova): tol values are set too high - was seeing high divergence on iGPU
# want this test to be useful for verifying workloads run at all
# and will investigate what's broken for accuracy
testScript = ''
rocm-smi
migraphx-driver verify -O --rms-tol 0.03 --atol 1.0 --rtol 0.01 ${resnet18}
'';
meta = {
teams = [ lib.teams.rocm ];
};
}
@@ -235,6 +235,9 @@ stdenv.mkDerivation (finalAttrs: {
return()'
patchShebangs test src/composable_kernel fin utils install_deps.cmake
substituteInPlace src/comgr.cpp \
--replace-fail '"/opt/rocm"' '"${clr}"'
''
+ linkKDBsTo "src/kernels"
+ ''
@@ -274,6 +277,19 @@ stdenv.mkDerivation (finalAttrs: {
requiredSystemFeatures = [ "big-parallel" ];
passthru.impureTests = {
# bash $(nix-build -A rocmPackages.miopen.passthru.impureTests.conv)
conv = callPackage ./test-runtime-compilation.nix {
miopen = finalAttrs.finalPackage;
name = "conv";
testScript = "MIOpenDriver conv -n 1 -c 1 -H 4 -W 4 -k 1 -y 3 -x 3 -p 0 -q 0 -V 0";
};
pool = callPackage ./test-runtime-compilation.nix {
miopen = finalAttrs.finalPackage;
name = "pool";
testScript = "MIOpenDriver pool -W 1x1x4x4 -y 2 -x 2 -p 0 -q 0 -F 1 -V 0";
};
};
passthru.tests = {
# Ensure all .tn.model files can be loaded by whatever version of frugally-deep we have
# This is otherwise hard to verify as MIOpen will only use these models on specific,

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