Merge master into staging-nixos

This commit is contained in:
nixpkgs-ci[bot]
2026-03-11 18:20:26 +00:00
committed by GitHub
105 changed files with 2728 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`.
- The latest available version of Nextcloud is v33 (available as `pkgs.nextcloud33`). The installation logic is as follows:
+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;
@@ -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,
@@ -0,0 +1,37 @@
{
lib,
makeImpureTest,
writableTmpDirAsHomeHook,
miopen,
clr,
rocm-smi,
name,
testScript,
}:
makeImpureTest {
inherit name;
testedPackage = "rocmPackages.miopen";
sandboxPaths = [
"/sys"
"/dev/dri"
"/dev/kfd"
];
nativeBuildInputs = [
writableTmpDirAsHomeHook
miopen
clr
rocm-smi
];
testScript = ''
rocm-smi
${testScript}
'';
meta = {
teams = [ lib.teams.rocm ];
};
}

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