diff --git a/doc/release-notes/rl-2605.section.md b/doc/release-notes/rl-2605.section.md
index 2cbe63791ba2..e18d349108a9 100644
--- a/doc/release-notes/rl-2605.section.md
+++ b/doc/release-notes/rl-2605.section.md
@@ -196,8 +196,6 @@
- `openrgb` was updated to 1.0rc2, which now uses Plugin API version 4.
Some existing OpenRGB plugins may be incompatible or require updates.
-- the `neovim` wrapper sets provider-related configuration in its generated config rather than as wrapper arguments. It should not affect configuration unless you set `wrapRc` to false.
-
- We now use the upstream wrapper script for Gradle, supporting both the `JAVA_HOME` and `GRADLE_OPTS` environment variables.
## Nixpkgs Library {#sec-nixpkgs-release-26.05-lib}
diff --git a/nixos/modules/services/misc/n8n.nix b/nixos/modules/services/misc/n8n.nix
index edb387fa8bca..7e302a190a87 100644
--- a/nixos/modules/services/misc/n8n.nix
+++ b/nixos/modules/services/misc/n8n.nix
@@ -30,8 +30,35 @@ let
path = "${pkg}/lib/node_modules/${pkg.pname}";
}) cfg.customNodes
);
+
+ # Runners
+ runnersCfg = cfg.taskRunners;
+ runnersEnv = partitionEnv runnersCfg.environment;
+ commonAllowedEnv = lib.attrNames runnersEnv.regular;
+ enabledRunners = lib.filterAttrs (_name: runnerCfg: runnerCfg.enable) runnersCfg.runners;
+ anyRunnerEnabled = runnersCfg.enable && (enabledRunners != { });
+ runnerTypes = lib.attrNames enabledRunners;
+ runnersStateDir = "n8n-task-runners";
+ taskRunnerConfigs = lib.mapAttrsToList (runnerType: runnerCfg: {
+ runner-type = runnerType;
+ workdir = "/var/lib/${runnersStateDir}";
+ command = runnerCfg.command;
+ args = runnerCfg.args;
+ allowed-env = commonAllowedEnv;
+ env-overrides = runnerCfg.environment;
+ health-check-server-port = toString runnerCfg.healthCheckPort;
+ }) enabledRunners;
+
+ launcherConfigFile = pkgs.writeText "n8n-task-runners.json" (
+ builtins.toJSON { task-runners = taskRunnerConfigs; }
+ );
in
{
+ meta.maintainers = with lib.maintainers; [
+ sweenu
+ gepbird
+ ];
+
imports = [
(lib.mkRemovedOptionModule [ "services" "n8n" "settings" ] "Use services.n8n.environment instead.")
(lib.mkRemovedOptionModule [
@@ -128,13 +155,188 @@ in
When enabled, n8n sends notifications of new versions and security updates.
'';
};
+ N8N_CUSTOM_EXTENSIONS = lib.mkOption {
+ internal = true;
+ type = with lib.types; nullOr path;
+ default = if cfg.customNodes != [ ] then toString customNodesDir else null;
+ description = ''
+ Specify the path to directories containing your custom nodes.
+ '';
+ };
+ N8N_RUNNERS_MODE = lib.mkOption {
+ internal = true;
+ type =
+ with lib.types;
+ enum [
+ "internal"
+ "external"
+ ];
+ default = if runnersCfg.enable then "external" else "internal";
+ description = ''
+ How to launch and run the task runner.
+ `internal` means n8n will launch a task runner as child process.
+ `external` means an external orchestrator will launch the task runner.
+ '';
+ };
+ N8N_RUNNERS_BROKER_PORT = lib.mkOption {
+ type = with lib.types; coercedTo port toString str;
+ default = 5679;
+ description = ''
+ Port the task broker listens on for task runner connections.
+ '';
+ };
+ N8N_RUNNERS_BROKER_LISTEN_ADDRESS = lib.mkOption {
+ type = lib.types.str;
+ default = "127.0.0.1";
+ description = ''
+ Address the task broker listens on.
+ '';
+ };
+ N8N_RUNNERS_AUTH_TOKEN_FILE = lib.mkOption {
+ type = with lib.types; nullOr path;
+ default = null;
+ description = ''
+ Path to a file containing the shared authentication token
+ used between the n8n server (task broker) and the task runners.
+
+ This option is required when {option}`services.n8n.taskRunners.enable` is true.
+ The file should be readable by the service and not stored in the Nix store.
+ Use tools like `agenix` or `sops-nix` to manage this secret.
+ '';
+ };
};
};
default = { };
};
+
+ taskRunners = {
+ enable = lib.mkEnableOption "n8n task runners for sandboxed Code node execution";
+
+ launcherPackage = lib.mkPackageOption pkgs "n8n-task-runner-launcher" { };
+
+ environment = lib.mkOption {
+ description = ''
+ Environment variables for the task runner launcher and runners.
+ These are common to all runners and passed via `allowed-env` in the launcher config.
+ See for available options.
+
+ Environment variables ending with `_FILE` are automatically handled as secrets:
+ they are loaded via systemd credentials for secure access with `DynamicUser=true`.
+
+ Note: The authentication token should be set via {option}`services.n8n.environment.N8N_RUNNERS_AUTH_TOKEN_FILE`.
+ '';
+ example = lib.literalExpression ''
+ {
+ N8N_RUNNERS_AUTO_SHUTDOWN_TIMEOUT = 15;
+ N8N_RUNNERS_MAX_CONCURRENCY = 10;
+ }
+ '';
+ type = lib.types.submodule {
+ freeformType =
+ with lib.types;
+ attrsOf (oneOf [
+ str
+ (coercedTo int toString str)
+ (coercedTo bool builtins.toJSON str)
+ ]);
+ options = {
+ N8N_RUNNERS_CONFIG_PATH = lib.mkOption {
+ internal = true;
+ type = with lib.types; nullOr path;
+ default = launcherConfigFile;
+ description = ''
+ Path to the configuration file for the task runner launcher.
+ '';
+ };
+ N8N_RUNNERS_AUTH_TOKEN_FILE = lib.mkOption {
+ type = with lib.types; nullOr path;
+ default = cfg.environment.N8N_RUNNERS_AUTH_TOKEN_FILE;
+ defaultText = lib.literalExpression "config.services.n8n.environment.N8N_RUNNERS_AUTH_TOKEN_FILE";
+ description = ''
+ Path to the authentication token file for the task runner.
+ '';
+ };
+ N8N_RUNNERS_TASK_BROKER_URI = lib.mkOption {
+ type = lib.types.str;
+ default = "http://${cfg.environment.N8N_RUNNERS_BROKER_LISTEN_ADDRESS}:${cfg.environment.N8N_RUNNERS_BROKER_PORT}";
+ defaultText = lib.literalExpression ''"http://''${config.services.n8n.environment.N8N_RUNNERS_BROKER_LISTEN_ADDRESS}:''${config.services.n8n.environment.N8N_RUNNERS_BROKER_PORT}"'';
+ description = ''
+ URI of the n8n task broker that the runner connects to.
+ '';
+ };
+ };
+ };
+ default = { };
+ };
+
+ runners = lib.mkOption {
+ type = lib.types.attrsOf (
+ lib.types.submodule (
+ { name, ... }:
+ {
+ options = {
+ enable = lib.mkOption {
+ type = lib.types.bool;
+ default = true;
+ description = ''
+ Whether to enable the ${name} task runner.
+ Only takes effect when {option}`services.n8n.taskRunners.enable` is true.
+ '';
+ };
+
+ command = lib.mkOption {
+ type = lib.types.str;
+ description = "Command to execute for this runner.";
+ };
+
+ healthCheckPort = lib.mkOption {
+ type = lib.types.port;
+ description = "Port for the runner's health check server.";
+ };
+
+ args = lib.mkOption {
+ type = with lib.types; listOf str;
+ default = [ ];
+ description = "Additional command-line arguments to pass to the task runner.";
+ };
+
+ environment = lib.mkOption {
+ type = with lib.types; attrsOf str;
+ default = { };
+ description = "Environment variables specific to this task runner.";
+ };
+ };
+ }
+ )
+ );
+ default = { };
+ defaultText = lib.literalExpression ''
+ {
+ javascript = {
+ enable = true;
+ command = lib.getExe' config.services.n8n.package "n8n-task-runner";
+ healthCheckPort = 5681;
+ };
+ python = {
+ enable = true;
+ command = lib.getExe' config.services.n8n.package "n8n-task-runner-python";
+ healthCheckPort = 5682;
+ };
+ }
+ '';
+ description = "Configuration for individual task runners.";
+ };
+ };
};
config = lib.mkIf cfg.enable {
+ assertions = [
+ {
+ assertion = anyRunnerEnabled -> cfg.environment.N8N_RUNNERS_AUTH_TOKEN_FILE != null;
+ message = "services.n8n.environment.N8N_RUNNERS_AUTH_TOKEN_FILE must be set when task runners are enabled.";
+ }
+ ];
+
systemd.services.n8n = {
description = "n8n service";
after = [ "network.target" ];
@@ -144,15 +346,12 @@ in
// {
HOME = cfg.environment.N8N_USER_FOLDER;
}
- // lib.optionalAttrs (cfg.customNodes != [ ]) {
- N8N_CUSTOM_EXTENSIONS = toString customNodesDir;
- }
// n8nEnv.fileBasedTransformed;
serviceConfig = {
Type = "simple";
ExecStart = lib.getExe cfg.package;
Restart = "on-failure";
- StateDirectory = "n8n";
+ StateDirectory = baseNameOf cfg.environment.N8N_USER_FOLDER;
LoadCredential = lib.mapAttrsToList (
varName: secretPath: "${envVarToCredName varName}:${secretPath}"
@@ -178,6 +377,62 @@ in
};
};
+ warnings = lib.optional (runnersCfg.enable && !anyRunnerEnabled) ''
+ services.n8n.taskRunners.enable is true, but both JavaScript and Python runners are disabled.
+ Enable at least one runner or disable taskRunners.
+ '';
+
+ # We set the defaults here to ease adding attributes
+ services.n8n.taskRunners.runners = {
+ javascript = lib.mapAttrs (_: lib.mkDefault) {
+ enable = true;
+ command = lib.getExe' cfg.package "n8n-task-runner";
+ healthCheckPort = 5681;
+ };
+ python = lib.mapAttrs (_: lib.mkDefault) {
+ enable = true;
+ command = lib.getExe' cfg.package "n8n-task-runner-python";
+ healthCheckPort = 5682;
+ };
+ };
+
+ systemd.services.n8n-task-runner = lib.mkIf anyRunnerEnabled {
+ description = "n8n task runner";
+ after = [ "n8n.service" ];
+ requires = [ "n8n.service" ];
+ wantedBy = [ "multi-user.target" ];
+ environment = runnersEnv.regular // runnersEnv.fileBasedTransformed;
+ serviceConfig = {
+ Type = "simple";
+ ExecStart = "${lib.getExe runnersCfg.launcherPackage} ${lib.concatStringsSep " " runnerTypes}";
+ Restart = "on-failure";
+
+ StateDirectory = runnersStateDir;
+
+ LoadCredential = lib.mapAttrsToList (
+ varName: secretPath: "${envVarToCredName varName}:${secretPath}"
+ ) runnersEnv.fileBased;
+
+ # Hardening
+ DynamicUser = "true";
+ NoNewPrivileges = "yes";
+ PrivateTmp = "yes";
+ PrivateDevices = "yes";
+ DevicePolicy = "closed";
+ ProtectSystem = "strict";
+ ProtectHome = "read-only";
+ ProtectControlGroups = "yes";
+ ProtectKernelModules = "yes";
+ ProtectKernelTunables = "yes";
+ RestrictAddressFamilies = "AF_UNIX AF_INET AF_INET6 AF_NETLINK";
+ RestrictNamespaces = "yes";
+ RestrictRealtime = "yes";
+ RestrictSUIDSGID = "yes";
+ MemoryDenyWriteExecute = "no"; # v8 JIT requires memory segments to be Writable-Executable.
+ LockPersonality = "yes";
+ };
+ };
+
networking.firewall = lib.mkIf cfg.openFirewall {
allowedTCPPorts = [ (lib.toInt cfg.environment.N8N_PORT) ];
};
diff --git a/nixos/tests/n8n.nix b/nixos/tests/n8n.nix
index d3226e2ed0f4..270f63648904 100644
--- a/nixos/tests/n8n.nix
+++ b/nixos/tests/n8n.nix
@@ -1,12 +1,18 @@
{ lib, pkgs, ... }:
let
port = 5678;
+ brokerPort = 5679;
webhookUrl = "http://example.com";
secretFile = toString (pkgs.writeText "n8n-encryption-key" "test-encryption-key-12345");
+ authTokenFile = toString (pkgs.writeText "n8n-runner-auth-token" "test-runner-auth-token-12345");
in
{
name = "n8n";
- meta.maintainers = with lib.maintainers; [ k900 ];
+ meta.maintainers = with lib.maintainers; [
+ k900
+ sweenu
+ gepbird
+ ];
node.pkgsReadOnly = false;
@@ -20,8 +26,26 @@ in
WEBHOOK_URL = webhookUrl;
N8N_TEMPLATES_ENABLED = false;
DB_PING_INTERVAL_SECONDS = 2;
- # !!! Don't do this with real keys. The /nix store is world-readable!
+ # !!! Don't do this with real keys/tokens. The /nix store is world-readable!
N8N_ENCRYPTION_KEY_FILE = secretFile;
+ N8N_RUNNERS_AUTH_TOKEN_FILE = authTokenFile;
+ };
+ taskRunners = {
+ enable = true;
+ environment = {
+ # Common env var for all runners
+ N8N_RUNNERS_MAX_CONCURRENCY = 10;
+ };
+ runners = {
+ javascript = {
+ args = [ "--disallow-code-generation-from-strings" ];
+ environment.NODE_FUNCTION_ALLOW_BUILTIN = "*";
+ };
+ python = {
+ args = [ "--test-arg" ];
+ environment.N8N_RUNNERS_STDLIB_ALLOW = "*";
+ };
+ };
};
};
};
@@ -48,5 +72,35 @@ in
custom_extensions_dir = machine.succeed("grep -oP 'N8N_CUSTOM_EXTENSIONS=\\K[^\"]+' /etc/systemd/system/n8n.service").strip()
machine.succeed(f"test -L {custom_extensions_dir}/n8n-nodes-carbonejs")
machine.succeed(f"test -f {custom_extensions_dir}/n8n-nodes-carbonejs/package.json")
+
+ # Test task runner integration on n8n service
+ machine.succeed("grep -qF 'N8N_RUNNERS_MODE=external' /etc/systemd/system/n8n.service")
+ machine.succeed("grep -qF 'N8N_RUNNERS_BROKER_PORT=${toString brokerPort}' /etc/systemd/system/n8n.service")
+ machine.succeed("grep -qF 'LoadCredential=n8n_runners_auth_token_file:${authTokenFile}' /etc/systemd/system/n8n.service")
+
+ # Test task runner service
+ machine.wait_for_unit("n8n-task-runner.service")
+ machine.succeed("systemctl is-active n8n-task-runner.service")
+
+ # Test that both runner types are enabled
+ machine.succeed("grep -qF 'javascript python' /etc/systemd/system/n8n-task-runner.service")
+
+ # Test common environment variables are passed to launcher
+ machine.succeed("grep -qF 'N8N_RUNNERS_MAX_CONCURRENCY=10' /etc/systemd/system/n8n-task-runner.service")
+ machine.succeed("grep -qF 'N8N_RUNNERS_TASK_BROKER_URI=http://127.0.0.1:${toString brokerPort}' /etc/systemd/system/n8n-task-runner.service")
+
+ # Test auth token is loaded via credentials
+ machine.succeed("grep -qF 'LoadCredential=n8n_runners_auth_token_file:${authTokenFile}' /etc/systemd/system/n8n-task-runner.service")
+
+ # Test launcher config file
+ config_path = machine.succeed("grep -oP 'N8N_RUNNERS_CONFIG_PATH=\\K[^[:space:]\"]+' /etc/systemd/system/n8n-task-runner.service").strip()
+ config = machine.succeed(f"cat {config_path}")
+ assert "NODE_FUNCTION_ALLOW_BUILTIN" in config, "JavaScript env-override not in config"
+ assert "N8N_RUNNERS_STDLIB_ALLOW" in config, "Python env-override not in config"
+ assert "N8N_RUNNERS_MAX_CONCURRENCY" in config, "Common allowed-env not in config"
+ assert "--disallow-code-generation-from-strings" in config, "JavaScript args not in config"
+ assert "--test-arg" in config, "Python args not in config"
+ assert '"health-check-server-port":"5681"' in config, "JavaScript health check port not in config"
+ assert '"health-check-server-port":"5682"' in config, "Python health check port not in config"
'';
}
diff --git a/pkgs/applications/audio/quodlibet/default.nix b/pkgs/applications/audio/quodlibet/default.nix
index d1740db71df6..afade20b517c 100644
--- a/pkgs/applications/audio/quodlibet/default.nix
+++ b/pkgs/applications/audio/quodlibet/default.nix
@@ -140,21 +140,6 @@ python3.pkgs.buildPythonApplication rec {
pytest-xdist
]);
- pytestFlags = [
- # missing translation strings in potfiles
- "--deselect=tests/test_po.py::TPOTFILESIN::test_missing"
- # require networking
- "--deselect=tests/plugin/test_covers.py::test_live_cover_download"
- "--deselect=tests/test_browsers_iradio.py::TInternetRadio::test_click_add_station"
- # upstream does actually not enforce source code linting
- "--ignore=tests/quality"
- # marked as flaky, breaks in sandbox
- "--deselect=tests/test_library_file.py::TWatchedFileLibrary::test_watched_adding"
- ]
- ++ lib.optionals (withXineBackend || !withGstPlugins) [
- "--ignore=tests/plugin/test_replaygain.py"
- ];
-
env.LC_ALL = "en_US.UTF-8";
preCheck = ''
@@ -162,15 +147,32 @@ python3.pkgs.buildPythonApplication rec {
export XDG_DATA_DIRS="$out/share:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_ICON_DIRS:$XDG_DATA_DIRS"
'';
- checkPhase = ''
- runHook preCheck
+ checkPhase =
+ let
+ pytestFlags = [
+ # missing translation strings in potfiles
+ "--deselect=tests/test_po.py::TPOTFILESIN::test_missing"
+ # require networking
+ "--deselect=tests/plugin/test_covers.py::test_live_cover_download"
+ "--deselect=tests/test_browsers_iradio.py::TInternetRadio::test_click_add_station"
+ # upstream does actually not enforce source code linting
+ "--ignore=tests/quality"
+ # marked as flaky, breaks in sandbox
+ "--deselect=tests/test_library_file.py::TWatchedFileLibrary::test_watched_adding"
+ ]
+ ++ lib.optionals (withXineBackend || !withGstPlugins) [
+ "--ignore=tests/plugin/test_replaygain.py"
+ ];
+ in
+ ''
+ runHook preCheck
- xvfb-run -s '-screen 0 1920x1080x24' \
- dbus-run-session --config-file=${dbus}/share/dbus-1/session.conf \
- pytest $pytestFlags
+ xvfb-run -s '-screen 0 1920x1080x24' \
+ dbus-run-session --config-file=${dbus}/share/dbus-1/session.conf \
+ pytest ${lib.concatStringsSep " " pytestFlags}
- runHook postCheck
- '';
+ runHook postCheck
+ '';
preFixup = lib.optionalString (kakasi != null) ''
gappsWrapperArgs+=(--prefix PATH : ${lib.getBin kakasi})
diff --git a/pkgs/applications/audio/zynaddsubfx/default.nix b/pkgs/applications/audio/zynaddsubfx/default.nix
index 1a76c7b2acbc..47f52d27c486 100644
--- a/pkgs/applications/audio/zynaddsubfx/default.nix
+++ b/pkgs/applications/audio/zynaddsubfx/default.nix
@@ -139,7 +139,7 @@ stdenv.mkDerivation rec {
# Find FLTK without requiring an OpenGL library in buildInputs
++ lib.optional (guiModule == "fltk") "-DFLTK_SKIP_OPENGL=ON";
- CXXFLAGS = [
+ env.CXXFLAGS = toString [
# GCC 13: error: 'uint8_t' does not name a type
"-include cstdint"
];
diff --git a/pkgs/applications/blockchains/zcash/default.nix b/pkgs/applications/blockchains/zcash/default.nix
index 5b019e254e7f..1dfbd0f39559 100644
--- a/pkgs/applications/blockchains/zcash/default.nix
+++ b/pkgs/applications/blockchains/zcash/default.nix
@@ -69,7 +69,7 @@ stdenv.mkDerivation rec {
zeromq
];
- CXXFLAGS = [
+ env.CXXFLAGS = toString [
"-I${lib.getDev utf8cpp}/include/utf8cpp"
"-I${lib.getDev cxx-rs}/include"
];
diff --git a/pkgs/applications/editors/neovim/wrapper.nix b/pkgs/applications/editors/neovim/wrapper.nix
index 6c97a6f22377..e8f04ad30fc3 100644
--- a/pkgs/applications/editors/neovim/wrapper.nix
+++ b/pkgs/applications/editors/neovim/wrapper.nix
@@ -104,16 +104,13 @@ let
packpathDirs.myNeovimPackages = vimPackageInfo.vimPackage;
finalPackdir = neovimUtils.packDir packpathDirs;
- rcContent = lib.concatStringsSep "\n" (
- [
- providerLuaRc
- ]
- ++ lib.optional (luaRcContent != "") luaRcContent
- ++ lib.optional (neovimRcContent' != "") ''
- vim.cmd.source "${writeText "init.vim" neovimRcContent'}"
- ''
- ++ lib.optionals autoconfigure vimPackageInfo.pluginAdvisedLua
- );
+ rcContent = ''
+ ${luaRcContent}
+ ''
+ + lib.optionalString (neovimRcContent' != "") ''
+ vim.cmd.source "${writeText "init.vim" neovimRcContent'}"
+ ''
+ + lib.optionalString autoconfigure (lib.concatStringsSep "\n" vimPackageInfo.pluginAdvisedLua);
python3Env =
lib.warnIf (attrs ? python3Env)
@@ -128,7 +125,12 @@ let
wrapperArgsStr = if lib.isString wrapperArgs then wrapperArgs else lib.escapeShellArgs wrapperArgs;
- generatedWrapperArgs =
+ generatedWrapperArgs = [
+ # vim accepts a limited number of commands so we join all the provider ones
+ "--add-flags"
+ ''--cmd "lua ${providerLuaRc}"''
+ ]
+ ++
lib.optionals
(
finalAttrs.packpathDirs.myNeovimPackages.start != [ ]
@@ -140,17 +142,17 @@ let
"--add-flags"
''--cmd "set rtp^=${finalPackdir}"''
]
- ++ lib.optionals finalAttrs.withRuby [
- "--set"
- "GEM_HOME"
- "${rubyEnv}/${rubyEnv.ruby.gemPath}"
- ]
- ++ lib.optionals (finalAttrs.runtimeDeps != [ ]) [
- "--suffix"
- "PATH"
- ":"
- (lib.makeBinPath finalAttrs.runtimeDeps)
- ];
+ ++ lib.optionals finalAttrs.withRuby [
+ "--set"
+ "GEM_HOME"
+ "${rubyEnv}/${rubyEnv.ruby.gemPath}"
+ ]
+ ++ lib.optionals (finalAttrs.runtimeDeps != [ ]) [
+ "--suffix"
+ "PATH"
+ ":"
+ (lib.makeBinPath finalAttrs.runtimeDeps)
+ ];
providerLuaRc = neovimUtils.generateProviderRc {
inherit (finalAttrs)
@@ -179,7 +181,7 @@ let
++ lib.optionals finalAttrs.wrapRc [
"--set-default"
"VIMINIT"
- "lua dofile('${writeText "init.lua" finalAttrs.luaRcContent}')"
+ "lua dofile('${writeText "init.lua" rcContent}')"
]
++ finalAttrs.generatedWrapperArgs;
diff --git a/pkgs/applications/graphics/tesseract/tesseract3.nix b/pkgs/applications/graphics/tesseract/tesseract3.nix
index 4d3a97ade7dd..ffe3cbc7039e 100644
--- a/pkgs/applications/graphics/tesseract/tesseract3.nix
+++ b/pkgs/applications/graphics/tesseract/tesseract3.nix
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
opencl-headers
];
- LIBLEPT_HEADERSDIR = "${leptonica}/include";
+ env.LIBLEPT_HEADERSDIR = "${leptonica}/include";
meta = {
description = "OCR engine";
diff --git a/pkgs/applications/networking/cluster/rke2/builder.nix b/pkgs/applications/networking/cluster/rke2/builder.nix
index 68fe28b50075..bb2381c8f9a0 100644
--- a/pkgs/applications/networking/cluster/rke2/builder.nix
+++ b/pkgs/applications/networking/cluster/rke2/builder.nix
@@ -75,7 +75,7 @@ buildGoModule (finalAttrs: {
];
# Passing boringcrypto to GOEXPERIMENT variable to build with goboring library
- GOEXPERIMENT = "boringcrypto";
+ env.GOEXPERIMENT = "boringcrypto";
# https://github.com/rancher/rke2/blob/104ddbf3de65ab5490aedff36df2332d503d90fe/scripts/build-binary#L27-L39
ldflags =
diff --git a/pkgs/applications/science/machine-learning/shogun/default.nix b/pkgs/applications/science/machine-learning/shogun/default.nix
index e1e7c4d8a0ae..fae5f8a00782 100644
--- a/pkgs/applications/science/machine-learning/shogun/default.nix
+++ b/pkgs/applications/science/machine-learning/shogun/default.nix
@@ -191,7 +191,7 @@ stdenv.mkDerivation (finalAttrs: {
(lib.cmakeBool "USE_SVMLIGHT" withSvmLight)
];
- CXXFLAGS = "-faligned-new";
+ env.CXXFLAGS = "-faligned-new";
doCheck = true;
diff --git a/pkgs/applications/version-management/monotone/default.nix b/pkgs/applications/version-management/monotone/default.nix
index 7a4fdb9d0811..d72a5d37a394 100644
--- a/pkgs/applications/version-management/monotone/default.nix
+++ b/pkgs/applications/version-management/monotone/default.nix
@@ -71,7 +71,7 @@ stdenv.mkDerivation rec {
{} +
'';
- CXXFLAGS = " --std=c++11 ";
+ env.CXXFLAGS = " --std=c++11 ";
nativeBuildInputs = [
pkg-config
diff --git a/pkgs/applications/window-managers/awesome/default.nix b/pkgs/applications/window-managers/awesome/default.nix
index 8c7ef0442848..4d9db85dbc2f 100644
--- a/pkgs/applications/window-managers/awesome/default.nix
+++ b/pkgs/applications/window-managers/awesome/default.nix
@@ -114,8 +114,6 @@ stdenv.mkDerivation rec {
"doc"
];
- FONTCONFIG_FILE = toString fontsConf;
-
propagatedUserEnvPkgs = [ hicolor-icon-theme ];
buildInputs = [
cairo
@@ -150,11 +148,14 @@ stdenv.mkDerivation rec {
]
++ lib.optional lua.pkgs.isLuaJIT "-DLUA_LIBRARY=${lua}/lib/libluajit-5.1.so";
- GI_TYPELIB_PATH = "${pango.out}/lib/girepository-1.0";
- # LUA_CPATH and LUA_PATH are used only for *building*, see the --search flags
- # below for how awesome finds the libraries it needs at runtime.
- LUA_CPATH = "${luaEnv}/lib/lua/${lua.luaversion}/?.so";
- LUA_PATH = "${luaEnv}/share/lua/${lua.luaversion}/?.lua;;";
+ env = {
+ FONTCONFIG_FILE = toString fontsConf;
+ GI_TYPELIB_PATH = "${pango.out}/lib/girepository-1.0";
+ # LUA_CPATH and LUA_PATH are used only for *building*, see the --search flags
+ # below for how awesome finds the libraries it needs at runtime.
+ LUA_CPATH = "${luaEnv}/lib/lua/${lua.luaversion}/?.so";
+ LUA_PATH = "${luaEnv}/share/lua/${lua.luaversion}/?.lua;;";
+ };
postInstall = ''
# Don't use wrapProgram or the wrapper will duplicate the --search
diff --git a/pkgs/build-support/cc-wrapper/default.nix b/pkgs/build-support/cc-wrapper/default.nix
index 9bb07456e8f2..808fe5db2780 100644
--- a/pkgs/build-support/cc-wrapper/default.nix
+++ b/pkgs/build-support/cc-wrapper/default.nix
@@ -603,7 +603,7 @@ stdenvNoCC.mkDerivation {
installPhase =
if targetPlatform.isCygwin then
''
- echo addToSearchPath "LINK_DLL_FOLDERS" "${cc_bin}/lib" >> $out
+ echo addToSearchPath "_linkDeps_inputPath" "${cc_solib}/bin" >> $out
# Work around build failure caused by the gnulib workaround for
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114870. remove after
# gnulib is updated in core packages (e.g. iconv, gnupatch, gnugrep)
diff --git a/pkgs/build-support/docker/tarsum.nix b/pkgs/build-support/docker/tarsum.nix
index 9358c571e94b..6c82fb8f4238 100644
--- a/pkgs/build-support/docker/tarsum.nix
+++ b/pkgs/build-support/docker/tarsum.nix
@@ -13,9 +13,11 @@ stdenv.mkDerivation {
dontUnpack = true;
- CGO_ENABLED = 0;
- GOFLAGS = "-trimpath";
- GO111MODULE = "off";
+ env = {
+ CGO_ENABLED = 0;
+ GOFLAGS = "-trimpath";
+ GO111MODULE = "off";
+ };
buildPhase = ''
runHook preBuild
diff --git a/pkgs/build-support/setup-hooks/cygwin-dll-link.sh b/pkgs/build-support/setup-hooks/cygwin-dll-link.sh
deleted file mode 100644
index a9309925e658..000000000000
--- a/pkgs/build-support/setup-hooks/cygwin-dll-link.sh
+++ /dev/null
@@ -1,77 +0,0 @@
-# shellcheck shell=bash
-
-addLinkDLLPaths() {
- addToSearchPath "LINK_DLL_FOLDERS" "$1/lib"
- addToSearchPath "LINK_DLL_FOLDERS" "$1/bin"
-}
-
-# shellcheck disable=SC2154
-addEnvHooks "$targetOffset" addLinkDLLPaths
-
-addOutputDLLPaths() {
- for output in $(getAllOutputNames); do
- addToSearchPath "LINK_DLL_FOLDERS" "${!output}/lib"
- addToSearchPath "LINK_DLL_FOLDERS" "${!output}/bin"
- done
-}
-
-postInstallHooks+=(addOutputDLLPaths)
-
-_dllDeps() {
- "$OBJDUMP" -p "$1" \
- | sed -n 's/.*DLL Name: \(.*\)/\1/p' \
- | sort -u
-}
-
-_linkDeps() {
- local target="$1" dir="$2" check="$3"
- echo 'target:' "$target"
- local dll
- _dllDeps "$target" | while read -r dll; do
- echo ' dll:' "$dll"
- if [[ -e "$dir/$dll" ]]; then continue; fi
- # Locate the DLL - it should be an *executable* file on $LINK_DLL_FOLDERS.
- local dllPath
- if ! dllPath="$(PATH="$(dirname "$target"):$LINK_DLL_FOLDERS" type -P "$dll")"; then
- if [[ -z "$check" || -n "${allowedImpureDLLsMap[$dll]}" ]]; then
- continue
- fi
- echo unable to find "$dll" in "$LINK_DLL_FOLDERS" >&2
- exit 1
- fi
- echo ' linking to:' "$dllPath"
- CYGWIN+=\ winsymlinks:nativestrict ln -sr "$dllPath" "$dir"
- # That DLL might have its own (transitive) dependencies,
- # so add also all DLLs from its directory to be sure.
- _linkDeps "$dllPath" "$dir" ""
- done
-}
-
-linkDLLs() {
- # shellcheck disable=SC2154
- if [ ! -d "$prefix" ]; then return; fi
- (
- set -e
- shopt -s globstar nullglob
-
- local -a allowedImpureDLLsArray
- concatTo allowedImpureDLLsArray allowedImpureDLLs
-
- local -A allowedImpureDLLsMap;
-
- for dll in "${allowedImpureDLLsArray[@]}"; do
- allowedImpureDLLsMap[$dll]=1
- done
-
- cd "$prefix"
-
- # Iterate over any DLL that we depend on.
- local target
- for target in {bin,libexec}/**/*.{exe,dll}; do
- [[ ! -f "$target" || ! -x "$target" ]] ||
- _linkDeps "$target" "$(dirname "$target")" "1"
- done
- )
-}
-
-fixupOutputHooks+=(linkDLLs)
diff --git a/pkgs/by-name/ac/acpica-tools/package.nix b/pkgs/by-name/ac/acpica-tools/package.nix
index 2b0d3601c46b..4f3420a991d8 100644
--- a/pkgs/by-name/ac/acpica-tools/package.nix
+++ b/pkgs/by-name/ac/acpica-tools/package.nix
@@ -34,21 +34,23 @@ stdenv.mkDerivation (finalAttrs: {
"iasl"
];
- env.NIX_CFLAGS_COMPILE = toString [
- "-O3"
- ];
+ env = {
+ NIX_CFLAGS_COMPILE = toString [
+ "-O3"
+ ];
+
+ # i686 builds fail with hardening enabled (due to -Wformat-overflow). Disable
+ # -Werror altogether to make this derivation less fragile to toolchain
+ # updates.
+ NOWERROR = "TRUE";
+
+ # We can handle stripping ourselves.
+ # Unless we are on Darwin. Upstream makefiles degrade coreutils install to cp if _APPLE is detected.
+ INSTALLFLAGS = lib.optionals (!stdenv.hostPlatform.isDarwin) "-m 555";
+ };
enableParallelBuilding = true;
- # i686 builds fail with hardening enabled (due to -Wformat-overflow). Disable
- # -Werror altogether to make this derivation less fragile to toolchain
- # updates.
- NOWERROR = "TRUE";
-
- # We can handle stripping ourselves.
- # Unless we are on Darwin. Upstream makefiles degrade coreutils install to cp if _APPLE is detected.
- INSTALLFLAGS = lib.optionals (!stdenv.hostPlatform.isDarwin) "-m 555";
-
installFlags = [ "PREFIX=${placeholder "out"}" ];
passthru.updateScript = nix-update-script { };
diff --git a/pkgs/by-name/ar/ardour/package.nix b/pkgs/by-name/ar/ardour/package.nix
index 9f7f7be04f7d..1a2e14771506 100644
--- a/pkgs/by-name/ar/ardour/package.nix
+++ b/pkgs/by-name/ar/ardour/package.nix
@@ -192,14 +192,17 @@ stdenv.mkDerivation (
]
++ lib.optional optimize "--optimize";
- env.NIX_CFLAGS_COMPILE = toString [
- # 'ioprio_set' syscall support:
- "-D_GNU_SOURCE"
- # compiler doesn't find headers without these:
- "-I${lib.getDev serd}/include/serd-0"
- "-I${lib.getDev sratom}/include/sratom-0"
- "-I${lib.getDev sord}/include/sord-0"
- ];
+ env = {
+ NIX_CFLAGS_COMPILE = toString [
+ # 'ioprio_set' syscall support:
+ "-D_GNU_SOURCE"
+ # compiler doesn't find headers without these:
+ "-I${lib.getDev serd}/include/serd-0"
+ "-I${lib.getDev sratom}/include/sratom-0"
+ "-I${lib.getDev sord}/include/sord-0"
+ ];
+ LINKFLAGS = "-lpthread";
+ };
postInstall = ''
# wscript does not install these for some reason
@@ -227,8 +230,6 @@ stdenv.mkDerivation (
}"
'';
- LINKFLAGS = "-lpthread";
-
meta = {
description = "Multi-track hard disk recording software";
longDescription = ''
diff --git a/pkgs/by-name/au/authentik/client-go-config.patch b/pkgs/by-name/au/authentik/client-go-config.patch
new file mode 100644
index 000000000000..8398b16160c7
--- /dev/null
+++ b/pkgs/by-name/au/authentik/client-go-config.patch
@@ -0,0 +1,9 @@
+diff --git a/config.yaml b/config.yaml
+index 2f07ea7..0f90432 100644
+--- a/config.yaml
++++ b/config.yaml
+@@ -4,3 +4,4 @@ additionalProperties:
+ packageName: api
+ enumClassPrefix: true
+ useOneOfDiscriminatorLookup: true
++ disallowAdditionalPropertiesIfNotPresent: false
diff --git a/pkgs/by-name/au/authentik/ldap.nix b/pkgs/by-name/au/authentik/ldap.nix
index 5d4159ae9737..bf6b88202e11 100644
--- a/pkgs/by-name/au/authentik/ldap.nix
+++ b/pkgs/by-name/au/authentik/ldap.nix
@@ -1,6 +1,7 @@
{
buildGoModule,
authentik,
+ apiGoVendorHook,
vendorHash,
}:
@@ -9,6 +10,8 @@ buildGoModule {
inherit (authentik) version src;
inherit vendorHash;
+ nativeBuildInputs = [ apiGoVendorHook ];
+
env.CGO_ENABLED = 0;
subPackages = [ "cmd/ldap" ];
diff --git a/pkgs/by-name/au/authentik/outposts.nix b/pkgs/by-name/au/authentik/outposts.nix
index 485dd81e8c20..0548c36e888d 100644
--- a/pkgs/by-name/au/authentik/outposts.nix
+++ b/pkgs/by-name/au/authentik/outposts.nix
@@ -1,10 +1,11 @@
{
callPackage,
authentik,
+ apiGoVendorHook ? authentik.apiGoVendorHook,
vendorHash ? authentik.proxy.vendorHash,
}:
{
- ldap = callPackage ./ldap.nix { inherit vendorHash; };
- proxy = callPackage ./proxy.nix { inherit vendorHash; };
- radius = callPackage ./radius.nix { inherit vendorHash; };
+ ldap = callPackage ./ldap.nix { inherit apiGoVendorHook vendorHash; };
+ proxy = callPackage ./proxy.nix { inherit apiGoVendorHook vendorHash; };
+ radius = callPackage ./radius.nix { inherit apiGoVendorHook vendorHash; };
}
diff --git a/pkgs/by-name/au/authentik/package.nix b/pkgs/by-name/au/authentik/package.nix
index 8a4a7c6409e3..680c719f0f06 100644
--- a/pkgs/by-name/au/authentik/package.nix
+++ b/pkgs/by-name/au/authentik/package.nix
@@ -10,18 +10,23 @@
nodejs_24,
python3,
makeWrapper,
+ openapi-generator-cli,
+ go,
+ typescript,
+ makeSetupHook,
+ writeShellScript,
}:
let
nodejs = nodejs_24;
- version = "2025.10.1";
+ version = "2025.12.4";
src = fetchFromGitHub {
owner = "goauthentik";
repo = "authentik";
tag = "version/${version}";
- hash = "sha256-HowB6DTGCqz770fKYbnE+rQ11XRV0WSNkLD+HSWZwz8=";
+ hash = "sha256-alTyrMBbjZbw4jhEna8saabf93sqSrZCu+Z5xH3pZ7M=";
};
meta = {
@@ -39,6 +44,90 @@ let
];
};
+ client-go = stdenvNoCC.mkDerivation {
+ pname = "authentik-client-go";
+ version = "3.${version}";
+ inherit meta;
+
+ src = fetchFromGitHub {
+ owner = "goauthentik";
+ repo = "client-go";
+ tag = "v3.${version}";
+ hash = "sha256-+/CfOE2HkBU+ZddvdXGenB/z8xNFk8cujpZpMXyh3cY=";
+ };
+
+ patches = [
+ ./client-go-config.patch
+ ];
+
+ postPatch = ''
+ substituteInPlace ./config.yaml \
+ --replace-fail '/local' "$(pwd)"
+ '';
+
+ nativeBuildInputs = [
+ openapi-generator-cli
+ go
+ ];
+
+ buildPhase = ''
+ runHook preBuild
+
+ openapi-generator-cli generate \
+ -i ${src}/schema.yml -o $out \
+ -g go \
+ -c ./config.yaml
+
+ gofmt -w $out
+
+ runHook postBuild
+ '';
+
+ installPhase = ''
+ runHook preInstall
+
+ cp go.mod go.sum $out
+
+ cd $out
+ rm -rf test
+ rm -f .travis.yml git_push.sh
+
+ runHook postInstall
+ '';
+ };
+
+ client-ts = stdenvNoCC.mkDerivation {
+ pname = "authentik-client-ts";
+ inherit version src meta;
+
+ postPatch = ''
+ substituteInPlace ./scripts/api/ts-config.yaml \
+ --replace-fail '/local' "$(pwd)"
+ '';
+
+ nativeBuildInputs = [
+ nodejs
+ openapi-generator-cli
+ typescript
+ ];
+
+ buildPhase = ''
+ runHook preBuild
+
+ openapi-generator-cli generate \
+ -i ./schema.yml -o $out \
+ -g typescript-fetch \
+ -c ./scripts/api/ts-config.yaml \
+ --additional-properties=npmVersion=${version} \
+ --git-repo-id authentik --git-user-id goauthentik
+
+ cd $out
+ npm run build
+
+ runHook postBuild
+ '';
+ };
+
# prefetch-npm-deps does not save all dependencies even though the lockfile is fine
website-deps = stdenvNoCC.mkDerivation {
pname = "authentik-website-deps";
@@ -48,8 +137,8 @@ let
outputHash =
{
- "aarch64-linux" = "sha256-aXXlzTsZp5mOrsxy9oHNzcc+1cFSnbC9RmtawBohmLI=";
- "x86_64-linux" = "sha256-Hi0HXzwTLuer0v4IKF3aim0tVe7AVLi67DiMimrIq5s=";
+ "aarch64-linux" = "sha256-GL5FPIBnoEXYtw8DPJpRPe3tT3qioN4AdoeOmCoiYsM=";
+ "x86_64-linux" = "sha256-AnceTipq6uUvTbOAZanVshAbAJ9LS1kwImbttTOcWxc=";
}
.${stdenvNoCC.hostPlatform.system} or (throw "authentik-website-deps: unsupported host platform");
@@ -119,8 +208,8 @@ let
outputHash =
{
- "aarch64-linux" = "sha256-t/jyzG3ibTW3fu8Gl1tWkSjMG6Lek/7JDccDrZX6sD0=";
- "x86_64-linux" = "sha256-8I1YAKvgWjM3p9O1mCetZvhZelrfB31w0ZwkZBUEoh4=";
+ "aarch64-linux" = "sha256-eZZ5Ynj81KwFsU5emPtYZ2CxO8MFvWbJnCHs+L88KQQ=";
+ "x86_64-linux" = "sha256-yUAyyO1NFav1EptrRYGSzC8dxCxYVj0FmzHk8IckFZM=";
}
.${stdenvNoCC.hostPlatform.system} or (throw "authentik-webui-deps: unsupported host platform");
outputHashMode = "recursive";
@@ -172,6 +261,10 @@ let
find -type d -name node_modules -prune -print -exec cp -rT {} $buildRoot/{} \;
popd
+ chmod -R +w node_modules/@goauthentik
+ rm -R node_modules/@goauthentik/api
+ ln -sn ${client-ts} node_modules/@goauthentik/api
+
pushd node_modules/.bin
patchShebangs $(readlink rollup)
patchShebangs $(readlink wireit)
@@ -208,6 +301,21 @@ let
# https://github.com/goauthentik/authentik/pull/16324
django = final.django_5;
+ ak-guardian = final.buildPythonPackage {
+ pname = "ak-guardian";
+ inherit version src meta;
+ pyproject = true;
+
+ sourceRoot = "${src.name}/packages/ak-guardian";
+
+ build-system = with final; [ hatchling ];
+
+ propagatedBuildInputs = with final; [
+ django
+ typing-extensions
+ ];
+ };
+
django-channels-postgres = final.buildPythonPackage {
pname = "django-channels-postgres";
inherit version src meta;
@@ -330,14 +438,15 @@ let
pyproject = true;
postPatch = ''
- rm lifecycle/system_migrations/tenant_files.py
substituteInPlace authentik/root/settings.py \
--replace-fail 'Path(__file__).absolute().parent.parent.parent' "Path(\"$out\")"
substituteInPlace authentik/lib/default.yml \
- --replace-fail '/blueprints' "$out/blueprints" \
- --replace-fail './media' '/var/lib/authentik/media'
+ --replace-fail '/blueprints' "$out/blueprints"
substituteInPlace authentik/stages/email/utils.py \
--replace-fail 'web/' '${webui}/'
+ # allways allow file upload if the data directoy exists
+ substituteInPlace authentik/admin/files/backends/file.py \
+ --replace-fail "and (self._base_dir.is_mount() or (self._base_dir / self.usage.value).is_mount())" ""
'';
build-system = [
@@ -351,6 +460,7 @@ let
dependencies =
with final;
[
+ ak-guardian
argon2-cffi
cachetools
channels
@@ -364,7 +474,6 @@ let
django-cte
django-dramatiq-postgres
django-filter
- django-guardian
django-model-utils
django-pglock
django-pgtrigger
@@ -375,7 +484,6 @@ let
django-tenants
djangoql
djangorestframework
- djangorestframework-guardian
docker
drf-orjson-renderer
drf-spectacular
@@ -440,6 +548,31 @@ let
inherit (python.pkgs) authentik-django;
+ # Provide a setup-hook to configure the Go vendor directory with up-to-date API bindings.
+ # This is done to avoid the `vendorHash` depending on anything in the `client-go` build (e.g.
+ # openapi-generator-cli version updates changing the produced content) and invalidating the hash.
+ apiGoVendorHook =
+ makeSetupHook
+ {
+ name = "authentik-api-go-vendor-hook";
+ }
+ (
+ writeShellScript "authentik-api-go-vendor-hook" ''
+ authentikApiGoVendorHook() {
+ chmod -R +w vendor/goauthentik.io/api
+ rm -rf vendor/goauthentik.io/api/v3
+ cp -r ${client-go} vendor/goauthentik.io/api/v3
+
+ echo "Finished authentikApiGoVendorHook"
+ }
+
+ # don't run for FOD, e.g. the `goModules` build
+ if [ -z ''${outputHash-} ]; then
+ postConfigureHooks+=(authentikApiGoVendorHook)
+ fi
+ ''
+ );
+
proxy = buildGoModule {
pname = "authentik-proxy";
inherit version src meta;
@@ -453,9 +586,14 @@ let
--replace-fail './web' "${authentik-django}/web"
'';
+ nativeBuildInputs = [ apiGoVendorHook ];
+
env.CGO_ENABLED = 0;
- vendorHash = "sha256-m2shrCwoVdbtr8B83ZcAyG+J6dEys2xdjtlfFFF4CDo=";
+ # calculate the vendorHash without other dependencies, so it is only based on the `go.sum` file
+ overrideModAttrs.postPatch = "";
+
+ vendorHash = "sha256-pdQg02f1K4nOhsnadoplQYOhEybqZxn+yDQRN5RNygM=";
postInstall = ''
mv $out/bin/server $out/bin/authentik
@@ -500,9 +638,10 @@ stdenvNoCC.mkDerivation {
'';
passthru = {
- inherit proxy;
+ inherit proxy apiGoVendorHook;
outposts = callPackages ./outposts.nix {
inherit (proxy) vendorHash;
+ inherit apiGoVendorHook;
};
};
diff --git a/pkgs/by-name/au/authentik/proxy.nix b/pkgs/by-name/au/authentik/proxy.nix
index 37cb9e88dc82..f1db56006460 100644
--- a/pkgs/by-name/au/authentik/proxy.nix
+++ b/pkgs/by-name/au/authentik/proxy.nix
@@ -1,6 +1,7 @@
{
buildGoModule,
authentik,
+ apiGoVendorHook,
vendorHash,
}:
@@ -9,6 +10,8 @@ buildGoModule {
inherit (authentik) version src;
inherit vendorHash;
+ nativeBuildInputs = [ apiGoVendorHook ];
+
env.CGO_ENABLED = 0;
subPackages = [ "cmd/proxy" ];
diff --git a/pkgs/by-name/au/authentik/radius.nix b/pkgs/by-name/au/authentik/radius.nix
index 4c44ecfe6d07..ba348a72515f 100644
--- a/pkgs/by-name/au/authentik/radius.nix
+++ b/pkgs/by-name/au/authentik/radius.nix
@@ -1,6 +1,7 @@
{
buildGoModule,
authentik,
+ apiGoVendorHook,
vendorHash,
}:
@@ -9,6 +10,8 @@ buildGoModule {
inherit (authentik) version src;
inherit vendorHash;
+ nativeBuildInputs = [ apiGoVendorHook ];
+
env.CGO_ENABLED = 0;
subPackages = [ "cmd/radius" ];
diff --git a/pkgs/by-name/ba/bant/package.nix b/pkgs/by-name/ba/bant/package.nix
index 6b364c284223..fbf07613ed3c 100644
--- a/pkgs/by-name/ba/bant/package.nix
+++ b/pkgs/by-name/ba/bant/package.nix
@@ -33,7 +33,10 @@ buildBazelPackage rec {
"--registry"
"file://${registry}"
];
- LIBTOOL = lib.optionalString stdenv.hostPlatform.isDarwin "${cctools}/bin/libtool";
+
+ env = lib.optionalAttrs stdenv.hostPlatform.isDarwin {
+ LIBTOOL = "${cctools}/bin/libtool";
+ };
postPatch = ''
patchShebangs scripts/create-workspace-status.sh
diff --git a/pkgs/by-name/bl/bluespec/package.nix b/pkgs/by-name/bl/bluespec/package.nix
index d5d1ac88333a..53dbfc6655a6 100644
--- a/pkgs/by-name/bl/bluespec/package.nix
+++ b/pkgs/by-name/bl/bluespec/package.nix
@@ -177,12 +177,17 @@ stdenv.mkDerivation rec {
cctools
];
- env.NIX_CFLAGS_COMPILE = toString (
- lib.optionals (stdenv.cc.isClang) [
- # wide_data.cxx:1750:15: error: variable length arrays in C++ are a Clang extension [-Werror,-Wvla-cxx-extension]
- "-Wno-error"
- ]
- );
+ env =
+ lib.optionalAttrs (stdenv.cc.isClang) {
+ NIX_CFLAGS_COMPILE = toString [
+ # wide_data.cxx:1750:15: error: variable length arrays in C++ are a Clang extension [-Werror,-Wvla-cxx-extension]
+ "-Wno-error"
+ ];
+ }
+ // lib.optionalAttrs (withSuiteCheck && stdenv.hostPlatform.isLinux) {
+ # bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
+ LOCALE_ARCHIVE = "${glibcLocales}/lib/locale/locale-archive";
+ };
makeFlags = [
"NO_DEPS_CHECKS=1" # skip the subrepo check (this deriviation uses yices-src instead of the subrepo)
@@ -235,11 +240,6 @@ stdenv.mkDerivation rec {
checkTarget = if withSuiteCheck then "checkparallel" else "check-smoke"; # this is the shortest check but "check-suite" tests much more
- # bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
- LOCALE_ARCHIVE = lib.optionalString (
- withSuiteCheck && stdenv.hostPlatform.isLinux
- ) "${glibcLocales}/lib/locale/locale-archive";
-
nativeCheckInputs = [
gmp-static
iverilog
diff --git a/pkgs/by-name/bo/botamusique/package.nix b/pkgs/by-name/bo/botamusique/package.nix
index 55b85a96111d..8d86a367d3ee 100644
--- a/pkgs/by-name/bo/botamusique/package.nix
+++ b/pkgs/by-name/bo/botamusique/package.nix
@@ -70,7 +70,7 @@ stdenv.mkDerivation rec {
--replace "version = 'git'" "version = '${version}'"
'';
- NODE_OPTIONS = "--openssl-legacy-provider";
+ env.NODE_OPTIONS = "--openssl-legacy-provider";
nativeBuildInputs = [
makeWrapper
diff --git a/pkgs/by-name/br/browserpass/package.nix b/pkgs/by-name/br/browserpass/package.nix
index 3e7f17629ed2..24138be165e7 100644
--- a/pkgs/by-name/br/browserpass/package.nix
+++ b/pkgs/by-name/br/browserpass/package.nix
@@ -39,7 +39,7 @@ buildGoModule (finalAttrs: {
sed -i -e 's/INSTALL =.*/INSTALL = install/' Makefile
'';
- DESTDIR = placeholder "out";
+ env.DESTDIR = placeholder "out";
postConfigure = ''
make configure
diff --git a/pkgs/by-name/br/bruno-cli/package.nix b/pkgs/by-name/br/bruno-cli/package.nix
index af0138114a91..455360f85785 100644
--- a/pkgs/by-name/br/bruno-cli/package.nix
+++ b/pkgs/by-name/br/bruno-cli/package.nix
@@ -42,7 +42,7 @@ buildNpmPackage {
patchShebangs packages/*/node_modules
'';
- ELECTRON_SKIP_BINARY_DOWNLOAD = 1;
+ env.ELECTRON_SKIP_BINARY_DOWNLOAD = 1;
buildPhase = ''
runHook preBuild
diff --git a/pkgs/by-name/br/bruno/package.nix b/pkgs/by-name/br/bruno/package.nix
index a398b4b1ae4a..461f2882a82f 100644
--- a/pkgs/by-name/br/bruno/package.nix
+++ b/pkgs/by-name/br/bruno/package.nix
@@ -84,7 +84,7 @@ buildNpmPackage rec {
patchShebangs packages/*/node_modules
'';
- ELECTRON_SKIP_BINARY_DOWNLOAD = 1;
+ env.ELECTRON_SKIP_BINARY_DOWNLOAD = 1;
# remove giflib dependency
npmRebuildFlags = [ "--ignore-scripts" ];
diff --git a/pkgs/by-name/bu/bupc/package.nix b/pkgs/by-name/bu/bupc/package.nix
index 0077d8ad9730..e25dbf1e111b 100644
--- a/pkgs/by-name/bu/bupc/package.nix
+++ b/pkgs/by-name/bu/bupc/package.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation (finalAttrs: {
'';
# Used during the configure phase
- ENVCMD = "${coreutils}/bin/env";
+ env.ENVCMD = "${coreutils}/bin/env";
buildInputs = [ perl ];
diff --git a/pkgs/by-name/ca/caprine/package.nix b/pkgs/by-name/ca/caprine/package.nix
index ad6b054a84b1..18161241ebc4 100644
--- a/pkgs/by-name/ca/caprine/package.nix
+++ b/pkgs/by-name/ca/caprine/package.nix
@@ -20,7 +20,7 @@ buildNpmPackage rec {
hash = "sha256-hBGsqOqKMHNy2SNw1kHCQq1lPDd2S36L5pdKgD2O8FA=";
};
- ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
+ env.ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
npmDepsHash = "sha256-FgOHuMMUX92VHF6hdznoi7bhO/27t6+l038kmpqjctQ=";
diff --git a/pkgs/by-name/ca/cargo-expand/package.nix b/pkgs/by-name/ca/cargo-expand/package.nix
index 17607da8aeb2..8e92fbdbe0f8 100644
--- a/pkgs/by-name/ca/cargo-expand/package.nix
+++ b/pkgs/by-name/ca/cargo-expand/package.nix
@@ -8,16 +8,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "cargo-expand";
- version = "1.0.120";
+ version = "1.0.121";
src = fetchFromGitHub {
owner = "dtolnay";
repo = "cargo-expand";
tag = finalAttrs.version;
- hash = "sha256-KXnAKv8202Trkkr9D9HRmxTOZ67M2Jt4dhZ9o7D86uI=";
+ hash = "sha256-Mwc1toL3kF+ZSmSwE24FRHXtIGHB0IVBiKtHGEpsn2E=";
};
- cargoHash = "sha256-eCDjGKLPy98SuknzzIE2GZEsxFjNZKuV30Y5nBQao3s=";
+ cargoHash = "sha256-F5g70cQYSiz63DD4uQTYIQ6I7Xf6fXL4ZwfDzOYpXzQ=";
nativeInstallCheckInputs = [ versionCheckHook ];
doInstallCheck = true;
diff --git a/pkgs/by-name/ca/cargo-hack/package.nix b/pkgs/by-name/ca/cargo-hack/package.nix
index 66aa21aa6bdd..2ef25d040f36 100644
--- a/pkgs/by-name/ca/cargo-hack/package.nix
+++ b/pkgs/by-name/ca/cargo-hack/package.nix
@@ -7,14 +7,14 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "cargo-hack";
- version = "0.6.42";
+ version = "0.6.43";
src = fetchCrate {
inherit (finalAttrs) pname version;
- hash = "sha256-ebKnXTEWROIy4MREcBQ+ahbQoQZCSttiCMrgW+/buj4=";
+ hash = "sha256-5C2qqmP+k7WtvjEOPuhlcj2MbcOJJEMsAwmr928Uw4E=";
};
- cargoHash = "sha256-4Vg0JD2FeZV8SiD5Kzg1KLkPnQ20NVlkbiguwbpYip8=";
+ cargoHash = "sha256-sG+ltuEbptHeYgXAUIOlQ82f5z8MvKwHWHsU9aGC/K0=";
# some necessary files are absent in the crate version
doCheck = false;
diff --git a/pkgs/by-name/ca/cargo-llvm-cov/package.nix b/pkgs/by-name/ca/cargo-llvm-cov/package.nix
index 6c4f39d2aa91..18b8a9b3a699 100644
--- a/pkgs/by-name/ca/cargo-llvm-cov/package.nix
+++ b/pkgs/by-name/ca/cargo-llvm-cov/package.nix
@@ -57,10 +57,12 @@ rustPlatform.buildRustPackage (finalAttrs: {
};
};
- # `cargo-llvm-cov` reads these environment variables to find these binaries,
- # which are needed to run the tests
- LLVM_COV = "${llvm}/bin/llvm-cov";
- LLVM_PROFDATA = "${llvm}/bin/llvm-profdata";
+ env = {
+ # `cargo-llvm-cov` reads these environment variables to find these binaries,
+ # which are needed to run the tests
+ LLVM_COV = "${llvm}/bin/llvm-cov";
+ LLVM_PROFDATA = "${llvm}/bin/llvm-profdata";
+ };
nativeCheckInputs = [
gitMinimal
diff --git a/pkgs/by-name/cd/cdk8s-cli/package.nix b/pkgs/by-name/cd/cdk8s-cli/package.nix
index 165c044da9c7..9cec2ba1663e 100644
--- a/pkgs/by-name/cd/cdk8s-cli/package.nix
+++ b/pkgs/by-name/cd/cdk8s-cli/package.nix
@@ -12,18 +12,18 @@
stdenv.mkDerivation (finalAttrs: {
pname = "cdk8s-cli";
- version = "2.204.7";
+ version = "2.204.9";
src = fetchFromGitHub {
owner = "cdk8s-team";
repo = "cdk8s-cli";
rev = "v${finalAttrs.version}";
- hash = "sha256-+VY9vGGb/Fk2YhqDLDsdA/2jjKsiyGEOgaY+YNr0LCo=";
+ hash = "sha256-FV9/v8/UFrLtNPIZCh8No8A7n5oIzd9BlyjP1np8VZY=";
};
yarnOfflineCache = fetchYarnDeps {
inherit (finalAttrs) src;
- hash = "sha256-BFkXKEpK/iTaO7MnkqyTt0VX+yYbSy0y8eqrQb88JdM=";
+ hash = "sha256-4/1euuWSaZcRO2gwMj55g+m+K46D/bEd+yFJojGap5k=";
};
nativeBuildInputs = [
diff --git a/pkgs/by-name/cd/cdktf-cli/package.nix b/pkgs/by-name/cd/cdktn-cli/package.nix
similarity index 72%
rename from pkgs/by-name/cd/cdktf-cli/package.nix
rename to pkgs/by-name/cd/cdktn-cli/package.nix
index 7d338e863da8..33b3856011d8 100644
--- a/pkgs/by-name/cd/cdktf-cli/package.nix
+++ b/pkgs/by-name/cd/cdktn-cli/package.nix
@@ -8,7 +8,7 @@
fixup-yarn-lock,
go,
makeWrapper,
- nodejs,
+ nodejs_20,
nix-update-script,
patchelf,
removeReferencesTo,
@@ -18,26 +18,26 @@
}:
stdenv.mkDerivation (finalAttrs: {
- pname = "cdktf-cli";
- version = "0.21.0";
+ pname = "cdktn-cli";
+ version = "0.22.0";
src = fetchFromGitHub {
- owner = "hashicorp";
- repo = "terraform-cdk";
+ owner = "open-constructs";
+ repo = "cdk-terrain";
tag = "v${finalAttrs.version}";
- hash = "sha256-iqy8j1bqwjSRBOj8kjFtAq9dLiv6dDbJsiFGQUhGW7k=";
+ hash = "sha256-KgDRQ76ePLJEdULMCTJTouMaWu0SCeV4NwNW2WpoaNY=";
};
offlineCache = fetchYarnDeps {
yarnLock = "${finalAttrs.src}/yarn.lock";
- hash = "sha256-qGjzy/+u8Ui9aHK0sX3MfYbkj5Cqab4RlhOgrwbEmGs=";
+ hash = "sha256-0aOwRdfCTiQHmWzOk+ExLX+/EAryxheyILe7L7oyd4w=";
};
hcl2json-go-modules =
(buildGoModule {
- pname = "cdktf-hcl2json-go-modules";
+ pname = "cdktn-hcl2json-go-modules";
inherit (finalAttrs) version src;
- modRoot = "packages/@cdktf/hcl2json";
+ modRoot = "packages/@cdktn/hcl2json";
vendorHash = "sha256-OiKPq0CHkOxJaFzgsaNJ02tasvHtHWylmaPRPayJob4=";
proxyVendor = true;
doCheck = false;
@@ -46,9 +46,9 @@ stdenv.mkDerivation (finalAttrs: {
hcltools-go-modules =
(buildGoModule {
- pname = "cdktf-hcltools-go-modules";
+ pname = "cdktn-hcltools-go-modules";
inherit (finalAttrs) version src;
- modRoot = "packages/@cdktf/hcl-tools";
+ modRoot = "packages/@cdktn/hcl-tools";
vendorHash = "sha256-orGxkYEQVtTKvXb7/FD/CLwqSINgBQFTF5arbR0xAvE=";
proxyVendor = true;
doCheck = false;
@@ -63,7 +63,7 @@ stdenv.mkDerivation (finalAttrs: {
fixup-yarn-lock
go
makeWrapper
- nodejs
+ nodejs_20
patchelf
removeReferencesTo
yarn
@@ -71,9 +71,9 @@ stdenv.mkDerivation (finalAttrs: {
postPatch = ''
# wasm_exec has moved to lib in newer versions of Go
- substituteInPlace packages/@cdktf/hcl-tools/prebuild.sh \
+ substituteInPlace packages/@cdktn/hcl-tools/prebuild.sh \
--replace-fail "misc/wasm/wasm_exec.js" "lib/wasm/wasm_exec.js"
- substituteInPlace packages/@cdktf/hcl2json/prebuild.sh \
+ substituteInPlace packages/@cdktn/hcl2json/prebuild.sh \
--replace-fail "misc/wasm/wasm_exec.js" "lib/wasm/wasm_exec.js"
'';
@@ -114,7 +114,7 @@ stdenv.mkDerivation (finalAttrs: {
runHook preCheck
# Skip tests that require terraform (unfree)
- yarn --offline workspace cdktf-cli test -- \
+ yarn --offline workspace cdktn-cli test -- \
--testPathIgnorePatterns \
"src/test/cmds/(convert|init).test.ts"
@@ -126,11 +126,11 @@ stdenv.mkDerivation (finalAttrs: {
yarn --offline --production install
- mkdir -p "$out/lib/node_modules/cdktf-cli"
- cp -rL node_modules packages/cdktf-cli/bundle packages/cdktf-cli/package.json "$out/lib/node_modules/cdktf-cli/"
+ mkdir -p "$out/lib/node_modules/cdktn-cli"
+ cp -rL node_modules packages/cdktn-cli/bundle packages/cdktn-cli/package.json "$out/lib/node_modules/cdktn-cli/"
- makeWrapper "${lib.getExe nodejs}" "$out/bin/cdktf" \
- --add-flags "$out/lib/node_modules/cdktf-cli/bundle/bin/cdktf.js"
+ makeWrapper "${lib.getExe nodejs_20}" "$out/bin/cdktn" \
+ --add-flags "$out/lib/node_modules/cdktn-cli/bundle/bin/cdktn.js"
runHook postInstall
'';
@@ -138,8 +138,8 @@ stdenv.mkDerivation (finalAttrs: {
postInstall = ''
# Go isn't needed at runtime, so remove these to decrease the closure size
remove-references-to -t ${go} \
- "$out/lib/node_modules/cdktf-cli/node_modules/@cdktf/hcl-tools/main.wasm" \
- "$out/lib/node_modules/cdktf-cli/node_modules/@cdktf/hcl2json/main.wasm"
+ "$out/lib/node_modules/cdktn-cli/node_modules/@cdktn/hcl-tools/main.wasm" \
+ "$out/lib/node_modules/cdktn-cli/node_modules/@cdktn/hcl2json/main.wasm"
'';
nativeInstallCheckInputs = [
@@ -154,10 +154,10 @@ stdenv.mkDerivation (finalAttrs: {
meta = {
description = "CDK for Terraform CLI";
- homepage = "https://github.com/hashicorp/terraform-cdk";
- changelog = "https://github.com/hashicorp/terraform-cdk/releases/tag/${finalAttrs.src.tag}";
+ homepage = "https://cdktn.io";
+ changelog = "https://github.com/open-constructs/cdk-terrain/releases/tag/${finalAttrs.src.tag}";
license = lib.licenses.mpl20;
- mainProgram = "cdktf";
+ mainProgram = "cdktn";
maintainers = with lib.maintainers; [ deejayem ];
platforms = lib.platforms.unix;
};
diff --git a/pkgs/by-name/ch/chatd/package.nix b/pkgs/by-name/ch/chatd/package.nix
index 70e5ba36afeb..5a7a52e44a68 100644
--- a/pkgs/by-name/ch/chatd/package.nix
+++ b/pkgs/by-name/ch/chatd/package.nix
@@ -24,7 +24,7 @@ buildNpmPackage rec {
};
makeCacheWritable = true; # sharp tries to build stuff in node_modules
- ELECTRON_SKIP_BINARY_DOWNLOAD = true;
+ env.ELECTRON_SKIP_BINARY_DOWNLOAD = true;
npmDepsHash = "sha256-jvGvhgNhY+wz/DFS7NDtmzKXbhHbNF3i0qVQoFFeB0M=";
diff --git a/pkgs/by-name/ch/checkov/package.nix b/pkgs/by-name/ch/checkov/package.nix
index 52351f1c8e3f..45ecb9a2fb3f 100644
--- a/pkgs/by-name/ch/checkov/package.nix
+++ b/pkgs/by-name/ch/checkov/package.nix
@@ -37,14 +37,14 @@ with py.pkgs;
python3.pkgs.buildPythonApplication rec {
pname = "checkov";
- version = "3.2.501";
+ version = "3.2.504";
pyproject = true;
src = fetchFromGitHub {
owner = "bridgecrewio";
repo = "checkov";
tag = version;
- hash = "sha256-kvUPhCuKWcklrrTnzbNWIg2Vqhv5dFP52+QkYas3kww=";
+ hash = "sha256-w6U8XW/hSPy/WJy4a6N41Hu+i9OVqiwI5buAE2uFjoI=";
};
pythonRelaxDeps = [
diff --git a/pkgs/by-name/ch/chipsec/package.nix b/pkgs/by-name/ch/chipsec/package.nix
index 945617e41e4b..bd9f6db867ff 100644
--- a/pkgs/by-name/ch/chipsec/package.nix
+++ b/pkgs/by-name/ch/chipsec/package.nix
@@ -25,7 +25,9 @@ python3.pkgs.buildPythonApplication (finalAttrs: {
./log-path.diff
];
- KSRC = lib.optionalString withDriver "${kernel.dev}/lib/modules/${kernel.modDirVersion}/build";
+ env = lib.optionalAttrs withDriver {
+ KSRC = "${kernel.dev}/lib/modules/${kernel.modDirVersion}/build";
+ };
nativeBuildInputs = [
nasm
diff --git a/pkgs/by-name/ch/chrysalis/package.nix b/pkgs/by-name/ch/chrysalis/package.nix
index 8b4c30b8e65e..323369883d9d 100644
--- a/pkgs/by-name/ch/chrysalis/package.nix
+++ b/pkgs/by-name/ch/chrysalis/package.nix
@@ -32,9 +32,9 @@ appimageTools.wrapType2 {
-t $out/share/applications
substituteInPlace \
$out/share/applications/Chrysalis.desktop \
- --replace-fail 'Exec=Chrysalis' 'Exec=${pname}'
+ --replace-fail 'Exec=Chrysalis' 'Exec=chrysalis'
- install -Dm444 ${appimageContents}/usr/share/icons/hicolor/256x256/chrysalis.png -t $out/share/pixmaps
+ cp -r ${appimageContents}/usr/share $out/share
'';
passthru.updateScript = ./update.sh;
diff --git a/pkgs/by-name/ci/cider-2/package.nix b/pkgs/by-name/ci/cider-2/package.nix
index fef24e1b7101..88f6e1e16a4d 100644
--- a/pkgs/by-name/ci/cider-2/package.nix
+++ b/pkgs/by-name/ci/cider-2/package.nix
@@ -86,6 +86,8 @@ stdenv.mkDerivation rec {
install -Dm444 $out/share/pixmaps/cider.png \
$out/share/icons/hicolor/256x256/apps/cider.png
+
+ rm -r $out/share/pixmaps
'';
passthru.updateScript = ./updater.sh;
diff --git a/pkgs/by-name/ci/circt/package.nix b/pkgs/by-name/ci/circt/package.nix
index d28a4de75e5f..f855bf648c17 100644
--- a/pkgs/by-name/ci/circt/package.nix
+++ b/pkgs/by-name/ci/circt/package.nix
@@ -69,7 +69,7 @@ stdenv.mkDerivation (finalAttrs: {
];
# cannot use lib.optionalString as it creates an empty string, disabling all tests
- LIT_FILTER_OUT =
+ env.LIT_FILTER_OUT =
let
lit-filters =
# There are some tests depending on `clang-tools` to work. They are activated only when detected
diff --git a/pkgs/by-name/cl/clever-tools/package.nix b/pkgs/by-name/cl/clever-tools/package.nix
index 6e3f05f33c33..455cb1c2858d 100644
--- a/pkgs/by-name/cl/clever-tools/package.nix
+++ b/pkgs/by-name/cl/clever-tools/package.nix
@@ -11,7 +11,7 @@
buildNpmPackage rec {
pname = "clever-tools";
- version = "4.5.3";
+ version = "4.6.0";
nodejs = nodejs_22;
@@ -19,10 +19,10 @@ buildNpmPackage rec {
owner = "CleverCloud";
repo = "clever-tools";
rev = version;
- hash = "sha256-/PVVnTzRPy4AM3OEfTdrSrvdWfbPSrP/LoenzPA0d2Q=";
+ hash = "sha256-0c2SBArtMUffQ7hd2fH9l5DMGm+UIWNeY/aSU0cUHzg=";
};
- npmDepsHash = "sha256-i9cZI+P363EqODlnggqKT6XxoDYTNVrg5rTYNWWHm8A=";
+ npmDepsHash = "sha256-Quzpdmu9qvJ4P77nsXzqLg3k7tQvuYtvEioDuUSU0+M=";
nativeBuildInputs = [
installShellFiles
diff --git a/pkgs/by-name/cl/clfft/package.nix b/pkgs/by-name/cl/clfft/package.nix
index b3d55f41e5c0..be470ec69e6b 100644
--- a/pkgs/by-name/cl/clfft/package.nix
+++ b/pkgs/by-name/cl/clfft/package.nix
@@ -46,7 +46,7 @@ stdenv.mkDerivation (finalAttrs: {
];
# https://github.com/clMathLibraries/clFFT/issues/237
- CXXFLAGS = "-std=c++98";
+ env.CXXFLAGS = "-std=c++98";
meta = {
description = "Library containing FFT functions written in OpenCL";
diff --git a/pkgs/by-name/cl/cljfmt/package.nix b/pkgs/by-name/cl/cljfmt/package.nix
index 6513a016ad04..a4f8361f2ea2 100644
--- a/pkgs/by-name/cl/cljfmt/package.nix
+++ b/pkgs/by-name/cl/cljfmt/package.nix
@@ -8,11 +8,11 @@
buildGraalvmNativeImage (finalAttrs: {
pname = "cljfmt";
- version = "0.15.6";
+ version = "0.16.0";
src = fetchurl {
url = "https://github.com/weavejester/cljfmt/releases/download/${finalAttrs.version}/cljfmt-${finalAttrs.version}-standalone.jar";
- hash = "sha256-/ihm/b/B9cSay2Zgshie7D0KwaKuIjiNI5FOnWOHfOw=";
+ hash = "sha256-56llKSnJJzjv9mf33ir7b3gk8Jp+jxyuax6vEXj0xDk=";
};
extraNativeImageBuildArgs = [
diff --git a/pkgs/by-name/cl/clmagma/package.nix b/pkgs/by-name/cl/clmagma/package.nix
index bfd23cb0bcb5..dbcbd91dc96f 100644
--- a/pkgs/by-name/cl/clmagma/package.nix
+++ b/pkgs/by-name/cl/clmagma/package.nix
@@ -60,12 +60,14 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
- MKLROOT = "${mkl}";
- clBLAS = "${clblas}";
+ env = {
+ MKLROOT = mkl;
+ clBLAS = clblas;
- # Otherwise build looks for it in /run/opengl-driver/etc/OpenCL/vendors,
- # which is not available.
- OPENCL_VENDOR_PATH = "${intel-ocl}/etc/OpenCL/vendors";
+ # Otherwise build looks for it in /run/opengl-driver/etc/OpenCL/vendors,
+ # which is not available.
+ OPENCL_VENDOR_PATH = "${intel-ocl}/etc/OpenCL/vendors";
+ };
preBuild = ''
# By default it tries to use GPU, and thus fails for CPUs
diff --git a/pkgs/by-name/cl/clockify/package.nix b/pkgs/by-name/cl/clockify/package.nix
index d25c393bc3a0..133293f75f87 100644
--- a/pkgs/by-name/cl/clockify/package.nix
+++ b/pkgs/by-name/cl/clockify/package.nix
@@ -19,7 +19,7 @@ appimageTools.wrapType2 rec {
in
''
install -Dm 444 ${appimageContents}/clockify.desktop -t $out/share/applications
- install -Dm 444 ${appimageContents}/clockify.png -t $out/share/pixmaps
+ install -Dm 444 ${appimageContents}/clockify.png -t $out/share/icons/hicolor/1024x1024/apps
substituteInPlace $out/share/applications/clockify.desktop \
--replace-fail 'Exec=AppRun' 'Exec=${pname}'
diff --git a/pkgs/by-name/co/coc-emmet/package.nix b/pkgs/by-name/co/coc-emmet/package.nix
index 7d2bd93c087d..40cac7149897 100644
--- a/pkgs/by-name/co/coc-emmet/package.nix
+++ b/pkgs/by-name/co/coc-emmet/package.nix
@@ -32,7 +32,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
nodejs
];
- NODE_OPTIONS = "--openssl-legacy-provider";
+ env.NODE_OPTIONS = "--openssl-legacy-provider";
passthru.updateScript = nix-update-script { };
diff --git a/pkgs/by-name/co/coc-r-lsp/package.nix b/pkgs/by-name/co/coc-r-lsp/package.nix
index 5041dd5de652..da487906c18e 100644
--- a/pkgs/by-name/co/coc-r-lsp/package.nix
+++ b/pkgs/by-name/co/coc-r-lsp/package.nix
@@ -32,7 +32,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
nodejs
];
- NODE_OPTIONS = "--openssl-legacy-provider";
+ env.NODE_OPTIONS = "--openssl-legacy-provider";
passthru.updateScript = nix-update-script { };
diff --git a/pkgs/by-name/co/coc-spell-checker/package.nix b/pkgs/by-name/co/coc-spell-checker/package.nix
index b02556e9f636..4b6be645132a 100644
--- a/pkgs/by-name/co/coc-spell-checker/package.nix
+++ b/pkgs/by-name/co/coc-spell-checker/package.nix
@@ -33,7 +33,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
nodejs
];
- NODE_OPTIONS = "--openssl-legacy-provider";
+ env.NODE_OPTIONS = "--openssl-legacy-provider";
passthru.updateScript = nix-update-script { extraArgs = [ "--version=branch" ]; };
diff --git a/pkgs/by-name/co/coc-stylelint/package.nix b/pkgs/by-name/co/coc-stylelint/package.nix
index 40a12dbd98e4..482717d78380 100644
--- a/pkgs/by-name/co/coc-stylelint/package.nix
+++ b/pkgs/by-name/co/coc-stylelint/package.nix
@@ -38,7 +38,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
nodejs
];
- NODE_OPTIONS = "--openssl-legacy-provider";
+ env.NODE_OPTIONS = "--openssl-legacy-provider";
passthru.updateScript = nix-update-script { };
diff --git a/pkgs/by-name/co/coc-vimlsp/package.nix b/pkgs/by-name/co/coc-vimlsp/package.nix
index 395441c17dea..f08f17be1d96 100644
--- a/pkgs/by-name/co/coc-vimlsp/package.nix
+++ b/pkgs/by-name/co/coc-vimlsp/package.nix
@@ -32,7 +32,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
nodejs
];
- NODE_OPTIONS = "--openssl-legacy-provider";
+ env.NODE_OPTIONS = "--openssl-legacy-provider";
passthru.updateScript = nix-update-script { extraArgs = [ "--version=branch" ]; };
diff --git a/pkgs/by-name/co/coc-wxml/package.nix b/pkgs/by-name/co/coc-wxml/package.nix
index caf706f21679..5ec0005ef3df 100644
--- a/pkgs/by-name/co/coc-wxml/package.nix
+++ b/pkgs/by-name/co/coc-wxml/package.nix
@@ -38,7 +38,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
nodejs
];
- NODE_OPTIONS = "--openssl-legacy-provider";
+ env.NODE_OPTIONS = "--openssl-legacy-provider";
passthru.updateScript = nix-update-script { };
diff --git a/pkgs/by-name/cr/cryptopp/package.nix b/pkgs/by-name/cr/cryptopp/package.nix
index a57949bea97c..bcc57aa3972a 100644
--- a/pkgs/by-name/cr/cryptopp/package.nix
+++ b/pkgs/by-name/cr/cryptopp/package.nix
@@ -42,7 +42,10 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
hardeningDisable = [ "fortify" ];
- CXXFLAGS = lib.optionals withOpenMP [ "-fopenmp" ];
+
+ env = lib.optionalAttrs withOpenMP {
+ CXXFLAGS = "-fopenmp";
+ };
doCheck = true;
diff --git a/pkgs/by-name/cs/csmith/package.nix b/pkgs/by-name/cs/csmith/package.nix
index 261f5bf1bbf0..80830a36167a 100644
--- a/pkgs/by-name/cs/csmith/package.nix
+++ b/pkgs/by-name/cs/csmith/package.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
SysCPU
]);
- CXXFLAGS = "-std=c++98";
+ env.CXXFLAGS = "-std=c++98";
postInstall = ''
substituteInPlace $out/bin/compiler_test.pl \
diff --git a/pkgs/by-name/cu/curlMinimal/package.nix b/pkgs/by-name/cu/curlMinimal/package.nix
index ca46d135e389..422f2ff3a7bf 100644
--- a/pkgs/by-name/cu/curlMinimal/package.nix
+++ b/pkgs/by-name/cu/curlMinimal/package.nix
@@ -119,7 +119,11 @@ stdenv.mkDerivation (finalAttrs: {
strictDeps = true;
- env = lib.optionalAttrs (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isStatic) {
+ env = {
+ CXX = "${stdenv.cc.targetPrefix}c++";
+ CXXCPP = "${stdenv.cc.targetPrefix}c++ -E";
+ }
+ // lib.optionalAttrs (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isStatic) {
# Not having this causes curl’s `configure` script to fail with static builds on Darwin because
# some of curl’s propagated inputs need libiconv.
NIX_LDFLAGS = "-liconv";
@@ -209,9 +213,6 @@ stdenv.mkDerivation (finalAttrs: {
"--with-ca-path=/etc/ssl/certs"
];
- CXX = "${stdenv.cc.targetPrefix}c++";
- CXXCPP = "${stdenv.cc.targetPrefix}c++ -E";
-
# takes 14 minutes on a 24 core and because many other packages depend on curl
# they cannot be run concurrently and are a bottleneck
# tests are available in passthru.tests.withCheck
diff --git a/pkgs/by-name/da/darling-dmg/package.nix b/pkgs/by-name/da/darling-dmg/package.nix
index 3a71869edd4b..9f5654adea22 100644
--- a/pkgs/by-name/da/darling-dmg/package.nix
+++ b/pkgs/by-name/da/darling-dmg/package.nix
@@ -47,7 +47,7 @@ stdenv.mkDerivation {
]
++ lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ];
- CXXFLAGS = [
+ env.CXXFLAGS = toString [
"-DCOMPILE_WITH_LZFSE=1"
"-llzfse"
];
diff --git a/pkgs/by-name/di/diffuse/package.nix b/pkgs/by-name/di/diffuse/package.nix
index 8b5bf717ac97..d241ed6d1cf0 100644
--- a/pkgs/by-name/di/diffuse/package.nix
+++ b/pkgs/by-name/di/diffuse/package.nix
@@ -58,7 +58,7 @@ python3.pkgs.buildPythonApplication (finalAttrs: {
];
# to avoid running gtk-update-icon-cache, update-desktop-database and glib-compile-schemas
- DESTDIR = "/";
+ env.DESTDIR = "/";
makeWrapperArgs = [
"--prefix XDG_DATA_DIRS : ${hicolor-icon-theme}/share"
diff --git a/pkgs/by-name/dn/dnspeep/package.nix b/pkgs/by-name/dn/dnspeep/package.nix
index bbdb1a80aecf..a7767de99e47 100644
--- a/pkgs/by-name/dn/dnspeep/package.nix
+++ b/pkgs/by-name/dn/dnspeep/package.nix
@@ -18,8 +18,10 @@ rustPlatform.buildRustPackage (finalAttrs: {
cargoHash = "sha256-tZlh7+END6oOy3uWOrjle+nwqFhMU6bbXmr4hdt6gqY=";
- LIBPCAP_LIBDIR = lib.makeLibraryPath [ libpcap ];
- LIBPCAP_VER = libpcap.version;
+ env = {
+ LIBPCAP_LIBDIR = lib.makeLibraryPath [ libpcap ];
+ LIBPCAP_VER = libpcap.version;
+ };
meta = {
description = "Spy on the DNS queries your computer is making";
diff --git a/pkgs/by-name/do/docbook2x/package.nix b/pkgs/by-name/do/docbook2x/package.nix
index fbbe6e3daeb2..3413918f9499 100644
--- a/pkgs/by-name/do/docbook2x/package.nix
+++ b/pkgs/by-name/do/docbook2x/package.nix
@@ -54,7 +54,7 @@ stdenv.mkDerivation (finalAttrs: {
# configure tries to find osx in PATH and hardcodes the resulting path
# (if any) on the Perl code. this fails under strictDeps, so override
# the autoconf test:
- OSX = "${opensp}/bin/osx";
+ env.OSX = "${opensp}/bin/osx";
postConfigure = ''
# Broken substitution is used for `perl/config.pl', which leaves literal
diff --git a/pkgs/by-name/do/dotnet-outdated/package.nix b/pkgs/by-name/do/dotnet-outdated/package.nix
index 254f59463939..738696dbaf2b 100644
--- a/pkgs/by-name/do/dotnet-outdated/package.nix
+++ b/pkgs/by-name/do/dotnet-outdated/package.nix
@@ -6,11 +6,11 @@
buildDotnetGlobalTool rec {
pname = "dotnet-outdated";
nugetName = "dotnet-outdated-tool";
- version = "4.6.9";
+ version = "4.7.0";
dotnet-sdk = dotnetCorePackages.sdk_10_0;
- nugetHash = "sha256-LVe/b18hxM9A0Kni6Kl4sE38KgzIihDuc+xRw8qaKv0=";
+ nugetHash = "sha256-96tYVEN6sWw2H5xB6UaDUO7EtOn839Nfagamxf8bLvA=";
meta = {
description = ".NET Core global tool to display and update outdated NuGet packages in a project";
diff --git a/pkgs/by-name/dr/draco/package.nix b/pkgs/by-name/dr/draco/package.nix
index 24352556e86a..d17e8e471f63 100644
--- a/pkgs/by-name/dr/draco/package.nix
+++ b/pkgs/by-name/dr/draco/package.nix
@@ -61,9 +61,10 @@ stdenv.mkDerivation (finalAttrs: {
"-DDRACO_TINYGLTF_PATH=${tinygltf}"
];
- CXXFLAGS = [
+ env.CXXFLAGS = toString [
# error: expected ')' before 'value' in 'explicit GltfValue(uint8_t value)'
- "-include cstdint"
+ "-include"
+ "cstdint"
];
passthru.updateScript = nix-update-script { };
diff --git a/pkgs/by-name/dr/drawio/package.nix b/pkgs/by-name/dr/drawio/package.nix
index f34850f7c99b..a86bddff9fff 100644
--- a/pkgs/by-name/dr/drawio/package.nix
+++ b/pkgs/by-name/dr/drawio/package.nix
@@ -49,7 +49,7 @@ stdenv.mkDerivation (finalAttrs: {
darwin.autoSignDarwinBinariesHook
];
- ELECTRON_SKIP_BINARY_DOWNLOAD = true;
+ env.ELECTRON_SKIP_BINARY_DOWNLOAD = true;
configurePhase = ''
runHook preConfigure
diff --git a/pkgs/by-name/dr/drill/package.nix b/pkgs/by-name/dr/drill/package.nix
index 1e88a744405b..2d06e6cf7905 100644
--- a/pkgs/by-name/dr/drill/package.nix
+++ b/pkgs/by-name/dr/drill/package.nix
@@ -24,8 +24,10 @@ rustPlatform.buildRustPackage (finalAttrs: {
pkg-config
];
- OPENSSL_LIB_DIR = "${lib.getLib openssl}/lib";
- OPENSSL_DIR = "${lib.getDev openssl}";
+ env = {
+ OPENSSL_LIB_DIR = "${lib.getLib openssl}/lib";
+ OPENSSL_DIR = "${lib.getDev openssl}";
+ };
buildInputs = lib.optionals stdenv.hostPlatform.isLinux [
openssl
diff --git a/pkgs/by-name/dw/dwarfs/package.nix b/pkgs/by-name/dw/dwarfs/package.nix
index 8669f2eb3dde..c0d7424775f1 100644
--- a/pkgs/by-name/dw/dwarfs/package.nix
+++ b/pkgs/by-name/dw/dwarfs/package.nix
@@ -100,7 +100,7 @@ stdenv.mkDerivation (finalAttrs: {
];
# these fail inside of the sandbox due to missing access
# to the FUSE device
- GTEST_FILTER =
+ env.GTEST_FILTER =
let
disabledTests = [
"dwarfs/tools_test.end_to_end/*"
diff --git a/pkgs/by-name/ea/eask-cli/package.nix b/pkgs/by-name/ea/eask-cli/package.nix
index d94b62a9fe4f..7b54749c6880 100644
--- a/pkgs/by-name/ea/eask-cli/package.nix
+++ b/pkgs/by-name/ea/eask-cli/package.nix
@@ -6,16 +6,16 @@
buildNpmPackage rec {
pname = "eask-cli";
- version = "0.12.5";
+ version = "0.12.8";
src = fetchFromGitHub {
owner = "emacs-eask";
repo = "cli";
rev = version;
- hash = "sha256-GYpFbCEgS9GgZs/XC3NwA8GuCiovaUTL1bVqlsnyFKI=";
+ hash = "sha256-eH46NlHQs+OVbc3WVUKHQGgXi9rvFMTrbd3UB8WCB6k=";
};
- npmDepsHash = "sha256-712QW0tTKg7THsBzvEHcG97FBMw3ESzpoqdw0kv3mMU=";
+ npmDepsHash = "sha256-U/VKtefL31FNYUegt8+Qg2jM6fx4cX660UcNqGsWMOc=";
dontBuild = true;
diff --git a/pkgs/by-name/ec/ecasound/package.nix b/pkgs/by-name/ec/ecasound/package.nix
index b643c8aa7fe5..395c103a6a3c 100644
--- a/pkgs/by-name/ec/ecasound/package.nix
+++ b/pkgs/by-name/ec/ecasound/package.nix
@@ -61,7 +61,7 @@ stdenv.mkDerivation (finalAttrs: {
strictDeps = true;
- CXXFLAGS = "-std=c++11";
+ env.CXXFLAGS = "-std=c++11";
configureFlags = [
"--enable-liblilv"
"--with-extra-cppflags=-Dnullptr=0"
diff --git a/pkgs/by-name/ed/edk2/package.nix b/pkgs/by-name/ed/edk2/package.nix
index 19c0aabd0642..e4ded1dfd220 100644
--- a/pkgs/by-name/ed/edk2/package.nix
+++ b/pkgs/by-name/ed/edk2/package.nix
@@ -169,7 +169,7 @@ stdenv.mkDerivation (finalAttrs: {
++ attrs.nativeBuildInputs or [ ];
strictDeps = true;
- ${"GCC5_${targetArch}_PREFIX"} = stdenv.cc.targetPrefix;
+ env.${"GCC5_${targetArch}_PREFIX"} = stdenv.cc.targetPrefix;
prePatch = ''
rm -rf BaseTools
diff --git a/pkgs/by-name/ek/ekho/package.nix b/pkgs/by-name/ek/ekho/package.nix
index f99ac8376ef9..93a928c216ce 100644
--- a/pkgs/by-name/ek/ekho/package.nix
+++ b/pkgs/by-name/ek/ekho/package.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation (finalAttrs: {
./autogen.sh
'';
- CXXFLAGS = [
+ env.CXXFLAGS = toString [
"-O0"
"-I${lib.getDev utf8cpp}/include/utf8cpp"
];
diff --git a/pkgs/by-name/en/ente-auth/package.nix b/pkgs/by-name/en/ente-auth/package.nix
index da702d2a11eb..13a9da94e9c6 100644
--- a/pkgs/by-name/en/ente-auth/package.nix
+++ b/pkgs/by-name/en/ente-auth/package.nix
@@ -61,7 +61,7 @@ flutter332.buildFlutterApplication rec {
];
# https://github.com/juliansteenbakker/flutter_secure_storage/issues/965
- CXXFLAGS = [ "-Wno-deprecated-literal-operator" ];
+ env.CXXFLAGS = toString [ "-Wno-deprecated-literal-operator" ];
# Based on https://github.com/ente-io/ente/blob/main/auth/linux/packaging/rpm/make_config.yaml
# and https://github.com/ente-io/ente/blob/main/auth/linux/packaging/enteauth.appdata.xml
diff --git a/pkgs/by-name/er/ergogen/package.nix b/pkgs/by-name/er/ergogen/package.nix
index 2dfc6400de20..169ac57f788e 100644
--- a/pkgs/by-name/er/ergogen/package.nix
+++ b/pkgs/by-name/er/ergogen/package.nix
@@ -24,7 +24,8 @@ buildNpmPackage (finalAttrs: {
makeCacheWritable = true;
dontNpmBuild = true;
npmPackFlags = [ "--ignore-scripts" ];
- NODE_OPTIONS = "--openssl-legacy-provider";
+
+ env.NODE_OPTIONS = "--openssl-legacy-provider";
doInstallCheck = true;
nativeInstallCheckInputs = [ versionCheckHook ];
diff --git a/pkgs/by-name/er/ergoscf/package.nix b/pkgs/by-name/er/ergoscf/package.nix
index 322f6915cae3..de4d74093589 100644
--- a/pkgs/by-name/er/ergoscf/package.nix
+++ b/pkgs/by-name/er/ergoscf/package.nix
@@ -35,13 +35,15 @@ stdenv.mkDerivation (finalAttrs: {
env = {
# Required for compilation with gcc-14
NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration";
- LDFLAGS = "-lblas -llapack";
+ LDFLAGS = toString [
+ "-lblas"
+ "-llapack"
+ ];
+ OMP_NUM_THREADS = 2; # required for check phase
};
enableParallelBuilding = true;
- OMP_NUM_THREADS = 2; # required for check phase
-
# With "fortify3", there are test failures, such as:
# Testing cnof CAMB3LYP/6-31G using FMM
# *** buffer overflow detected ***: terminated
diff --git a/pkgs/by-name/et/eternal-terminal/package.nix b/pkgs/by-name/et/eternal-terminal/package.nix
index 98d93face05c..cfcc629d5e26 100644
--- a/pkgs/by-name/et/eternal-terminal/package.nix
+++ b/pkgs/by-name/et/eternal-terminal/package.nix
@@ -45,9 +45,9 @@ stdenv.mkDerivation (finalAttrs: {
"-DDISABLE_CRASH_LOG=TRUE"
];
- CXXFLAGS = lib.optionals stdenv.cc.isClang [
- "-std=c++17"
- ];
+ env = lib.optionalAttrs stdenv.cc.isClang {
+ CXXFLAGS = toString [ "-std=c++17" ];
+ };
doCheck = true;
diff --git a/pkgs/by-name/ev/evcc/package.nix b/pkgs/by-name/ev/evcc/package.nix
index 8380018141d9..b6372cd0a171 100644
--- a/pkgs/by-name/ev/evcc/package.nix
+++ b/pkgs/by-name/ev/evcc/package.nix
@@ -1,12 +1,12 @@
{
lib,
stdenv,
- buildGo125Module,
+ buildGo126Module,
fetchFromGitHub,
fetchNpmDeps,
cacert,
git,
- go_1_25,
+ go_1_26,
gokrazy,
enumer,
mockgen,
@@ -17,23 +17,23 @@
}:
let
- version = "0.300.8";
+ version = "0.301.0";
src = fetchFromGitHub {
owner = "evcc-io";
repo = "evcc";
tag = version;
- hash = "sha256-IbyE9Y9crdoaPy1/PkKaA1iOAUFOf2cYzoB9Cj3luSo=";
+ hash = "sha256-ns6Kl0sN8GeF0Br7HrRLdVmKaGMqT3Y5REuH9UJg+Yg=";
};
- vendorHash = "sha256-j+tmZeVUqUpETIg8ILlxRRdN5/OV8pYmgH2FM1uweAY=";
+ vendorHash = "sha256-LGTT7WxBlWA4pCunvFDpsqDkUhTN96PohBKTLAffr0o=";
commonMeta = {
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ hexa ];
};
- decorate = buildGo125Module {
+ decorate = buildGo126Module {
pname = "evcc-decorate";
inherit version src vendorHash;
@@ -46,13 +46,13 @@ let
};
in
-buildGo125Module rec {
+buildGo126Module rec {
pname = "evcc";
inherit version src vendorHash;
npmDeps = fetchNpmDeps {
inherit src;
- hash = "sha256-DGDPbc/N+c3lt1rIx/nAt1i44J//egPQXGWH7tomJTw=";
+ hash = "sha256-fblf49V+fn+9iuIwwOZ/iYMxUbjtWcm3iEs9mP9l59I=";
};
nativeBuildInputs = [
@@ -64,7 +64,7 @@ buildGo125Module rec {
nativeBuildInputs = [
decorate
enumer
- go_1_25
+ go_1_26
gokrazy
git
cacert
diff --git a/pkgs/by-name/ev/eventstore/package.nix b/pkgs/by-name/ev/eventstore/package.nix
index fd730c0fd77c..51452be3c28b 100644
--- a/pkgs/by-name/ev/eventstore/package.nix
+++ b/pkgs/by-name/ev/eventstore/package.nix
@@ -27,7 +27,7 @@ buildDotnetModule rec {
};
# Fixes application reporting 0.0.0.0 as its version.
- MINVERVERSIONOVERRIDE = version;
+ env.MINVERVERSIONOVERRIDE = version;
dotnet-sdk = dotnetCorePackages.sdk_8_0;
dotnet-runtime = dotnetCorePackages.aspnetcore_8_0;
diff --git a/pkgs/by-name/fi/fig2dev/package.nix b/pkgs/by-name/fi/fig2dev/package.nix
index 73444a95bd14..a42db77a1cda 100644
--- a/pkgs/by-name/fi/fig2dev/package.nix
+++ b/pkgs/by-name/fi/fig2dev/package.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [ makeWrapper ];
buildInputs = [ libpng ];
- GSEXE = "${ghostscript}/bin/gs";
+ env.GSEXE = "${ghostscript}/bin/gs";
configureFlags = [ "--enable-transfig" ];
diff --git a/pkgs/by-name/fi/firefoxpwa/package.nix b/pkgs/by-name/fi/firefoxpwa/package.nix
index 57f7b0a7fc5c..3f6c43bc42e4 100644
--- a/pkgs/by-name/fi/firefoxpwa/package.nix
+++ b/pkgs/by-name/fi/firefoxpwa/package.nix
@@ -56,8 +56,10 @@ rustPlatform.buildRustPackage rec {
];
buildInputs = [ openssl ];
- FFPWA_EXECUTABLES = ""; # .desktop entries generated without any store path references
- FFPWA_SYSDATA = "${placeholder "out"}/share/firefoxpwa";
+ env = {
+ FFPWA_EXECUTABLES = ""; # .desktop entries generated without any store path references
+ FFPWA_SYSDATA = "${placeholder "out"}/share/firefoxpwa";
+ };
completions = "target/${stdenv.targetPlatform.config}/release/completions";
gtk_modules = map (x: x + x.gtkModule) [ libcanberra-gtk3 ];
diff --git a/pkgs/by-name/fl/floorp-bin-unwrapped/sources.json b/pkgs/by-name/fl/floorp-bin-unwrapped/sources.json
index a29f47c045be..a3f3a55e1472 100644
--- a/pkgs/by-name/fl/floorp-bin-unwrapped/sources.json
+++ b/pkgs/by-name/fl/floorp-bin-unwrapped/sources.json
@@ -1,21 +1,21 @@
{
- "version": "12.10.3",
+ "version": "12.10.4",
"sources": {
"aarch64-linux": {
- "url": "https://github.com/Floorp-Projects/Floorp/releases/download/v12.10.3/floorp-linux-aarch64.tar.xz",
- "sha256": "b2f62db7941f819375a9f8627bd55442c30310e93cb270621fdf9e5c707801e3"
+ "url": "https://github.com/Floorp-Projects/Floorp/releases/download/v12.10.4/floorp-linux-aarch64.tar.xz",
+ "sha256": "6fb5030be0209744dd9aac0fa5645c45a21d135d4e487836a300359a695327e5"
},
"x86_64-linux": {
- "url": "https://github.com/Floorp-Projects/Floorp/releases/download/v12.10.3/floorp-linux-x86_64.tar.xz",
- "sha256": "fb866cd00da594c5c6435238e32ac2c13eaca40ead4936656aee88ea3446983f"
+ "url": "https://github.com/Floorp-Projects/Floorp/releases/download/v12.10.4/floorp-linux-x86_64.tar.xz",
+ "sha256": "1cc457b0b23d29d863749a9a4f000b47fa480aa0579774bb39eff5978160df21"
},
"aarch64-darwin": {
- "url": "https://github.com/Floorp-Projects/Floorp/releases/download/v12.10.3/floorp-macOS-universal.dmg",
- "sha256": "56477ebaae97aee37c0a93294f8770ae901bf2e35d2be03540daf0a779db6dae"
+ "url": "https://github.com/Floorp-Projects/Floorp/releases/download/v12.10.4/floorp-macOS-universal.dmg",
+ "sha256": "1fa4e85c9aa58d989f0aa01389c0b3a5f231ad08485606427498777daba81398"
},
"x86_64-darwin": {
- "url": "https://github.com/Floorp-Projects/Floorp/releases/download/v12.10.3/floorp-macOS-universal.dmg",
- "sha256": "56477ebaae97aee37c0a93294f8770ae901bf2e35d2be03540daf0a779db6dae"
+ "url": "https://github.com/Floorp-Projects/Floorp/releases/download/v12.10.4/floorp-macOS-universal.dmg",
+ "sha256": "1fa4e85c9aa58d989f0aa01389c0b3a5f231ad08485606427498777daba81398"
}
}
}
diff --git a/pkgs/by-name/fo/fortune-kind/package.nix b/pkgs/by-name/fo/fortune-kind/package.nix
index 4b5c28281cf2..86a8b7b5508c 100644
--- a/pkgs/by-name/fo/fortune-kind/package.nix
+++ b/pkgs/by-name/fo/fortune-kind/package.nix
@@ -32,7 +32,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
buildNoDefaultFeatures = true;
- MAN_OUT = "./man";
+ env.MAN_OUT = "./man";
preBuild = ''
mkdir -p "./$MAN_OUT";
diff --git a/pkgs/by-name/fr/freeswitch/package.nix b/pkgs/by-name/fr/freeswitch/package.nix
index 1b43feeca048..c80de735f401 100644
--- a/pkgs/by-name/fr/freeswitch/package.nix
+++ b/pkgs/by-name/fr/freeswitch/package.nix
@@ -159,17 +159,19 @@ stdenv.mkDerivation (finalAttrs: {
enableParallelBuilding = true;
- env.NIX_CFLAGS_COMPILE = toString [
- "-Wno-error"
- # https://github.com/signalwire/freeswitch/issues/2495
- "-Wno-incompatible-pointer-types"
- ];
+ env = {
+ NIX_CFLAGS_COMPILE = toString [
+ "-Wno-error"
+ # https://github.com/signalwire/freeswitch/issues/2495
+ "-Wno-incompatible-pointer-types"
+ ];
- # Using c++14 because of build error
- # gsm_at.h:94:32: error: ISO C++17 does not allow dynamic exception specifications
- CXXFLAGS = "-std=c++14";
+ # Using c++14 because of build error
+ # gsm_at.h:94:32: error: ISO C++17 does not allow dynamic exception specifications
+ CXXFLAGS = "-std=c++14";
- CFLAGS = "-D_ANSI_SOURCE";
+ CFLAGS = "-D_ANSI_SOURCE";
+ };
hardeningDisable = [ "format" ];
diff --git a/pkgs/by-name/fr/frr/package.nix b/pkgs/by-name/fr/frr/package.nix
index fd0dc3eebf34..ef3a202c00c6 100644
--- a/pkgs/by-name/fr/frr/package.nix
+++ b/pkgs/by-name/fr/frr/package.nix
@@ -91,7 +91,7 @@ stdenv.mkDerivation (finalAttrs: {
# Without the std explicitly set, we may run into abseil-cpp
# compilation errors.
- CXXFLAGS = "-std=gnu++23";
+ env.CXXFLAGS = "-std=gnu++23";
nativeBuildInputs = [
autoreconfHook
diff --git a/pkgs/by-name/gh/ghciwatch/package.nix b/pkgs/by-name/gh/ghciwatch/package.nix
index 55c66944929a..9fe7f3455ac3 100644
--- a/pkgs/by-name/gh/ghciwatch/package.nix
+++ b/pkgs/by-name/gh/ghciwatch/package.nix
@@ -19,7 +19,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
cargoHash = "sha256-kH5YTadpaUXDma+7SfBJxrOIsd9Gm0EU3MfhFmQ3U80=";
# integration tests are not run but the macros need this variable to be set
- GHC_VERSIONS = "";
+ env.GHC_VERSIONS = "";
checkFlags = "--test \"unit\"";
meta = {
diff --git a/pkgs/by-name/gh/ghdl/package.nix b/pkgs/by-name/gh/ghdl/package.nix
index 90f62294bad8..3d9943397e0b 100644
--- a/pkgs/by-name/gh/ghdl/package.nix
+++ b/pkgs/by-name/gh/ghdl/package.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-vPeODNTptxIjN6qLoIHaKOFf3P3iAK2GloVreHPaAz8=";
};
- LIBRARY_PATH = "${stdenv.cc.libc}/lib";
+ env.LIBRARY_PATH = "${stdenv.cc.libc}/lib";
nativeBuildInputs = [
gnat
diff --git a/pkgs/by-name/gi/git-crypt/package.nix b/pkgs/by-name/gi/git-crypt/package.nix
index 46ff7e4602d2..aeb5635f37a4 100644
--- a/pkgs/by-name/gi/git-crypt/package.nix
+++ b/pkgs/by-name/gi/git-crypt/package.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation (finalAttrs: {
];
# https://github.com/AGWA/git-crypt/issues/232
- CXXFLAGS = [
+ env.CXXFLAGS = toString [
"-DOPENSSL_API_COMPAT=0x30000000L"
];
diff --git a/pkgs/by-name/gi/github-runner/package.nix b/pkgs/by-name/gi/github-runner/package.nix
index bba388654e88..710f952a5223 100644
--- a/pkgs/by-name/gi/github-runner/package.nix
+++ b/pkgs/by-name/gi/github-runner/package.nix
@@ -103,10 +103,12 @@ buildDotnetModule (finalAttrs: {
'true'
'';
- DOTNET_SYSTEM_GLOBALIZATION_INVARIANT = isNull glibcLocales;
- LOCALE_ARCHIVE = lib.optionalString (
- !finalAttrs.DOTNET_SYSTEM_GLOBALIZATION_INVARIANT
- ) "${glibcLocales}/lib/locale/locale-archive";
+ env = {
+ DOTNET_SYSTEM_GLOBALIZATION_INVARIANT = isNull glibcLocales;
+ }
+ // lib.optionalAttrs (!isNull glibcLocales) {
+ LOCALE_ARCHIVE = "${glibcLocales}/lib/locale/locale-archive";
+ };
postConfigure = ''
# Generate src/Runner.Sdk/BuildConstants.cs
@@ -220,7 +222,7 @@ buildDotnetModule (finalAttrs: {
"GitHub.Runner.Common.Tests.Worker.StepHostL0.DetermineNode20RuntimeVersionInAlpineContainerAsync"
"GitHub.Runner.Common.Tests.Worker.StepHostL0.DetermineNode24RuntimeVersionInAlpineContainerAsync"
]
- ++ lib.optionals finalAttrs.DOTNET_SYSTEM_GLOBALIZATION_INVARIANT [
+ ++ lib.optionals finalAttrs.env.DOTNET_SYSTEM_GLOBALIZATION_INVARIANT [
"GitHub.Runner.Common.Tests.Util.StringUtilL0.FormatUsesInvariantCulture"
"GitHub.Runner.Common.Tests.Worker.VariablesL0.Constructor_SetsOrdinalIgnoreCaseComparer"
"GitHub.Runner.Common.Tests.Worker.WorkerL0.DispatchCancellation"
diff --git a/pkgs/by-name/gi/gitlab/package.nix b/pkgs/by-name/gi/gitlab/package.nix
index a244ea5474d0..2e0616ee636b 100644
--- a/pkgs/by-name/gi/gitlab/package.nix
+++ b/pkgs/by-name/gi/gitlab/package.nix
@@ -228,14 +228,16 @@ let
chmod 777 ee/frontend_islands/yarn.lock
'';
- # One of the patches uses this variable - if it's unset, execution
- # of rake tasks fails.
- GITLAB_LOG_PATH = "log";
- FOSS_ONLY = !gitlabEnterprise;
- SKIP_FRONTEND_ISLANDS_BUILD = lib.optionalString (!gitlabEnterprise) "true";
+ env = {
+ # One of the patches uses this variable - if it's unset, execution
+ # of rake tasks fails.
+ GITLAB_LOG_PATH = "log";
+ FOSS_ONLY = !gitlabEnterprise;
+ SKIP_FRONTEND_ISLANDS_BUILD = lib.optionalString (!gitlabEnterprise) "true";
- SKIP_YARN_INSTALL = 1;
- NODE_OPTIONS = "--max-old-space-size=8192";
+ SKIP_YARN_INSTALL = 1;
+ NODE_OPTIONS = "--max-old-space-size=8192";
+ };
postConfigure = ''
# Some rake tasks try to run yarn automatically, which won't work
diff --git a/pkgs/by-name/gl/glib/package.nix b/pkgs/by-name/gl/glib/package.nix
index 430755541a16..c9f8ba26d34b 100644
--- a/pkgs/by-name/gl/glib/package.nix
+++ b/pkgs/by-name/gl/glib/package.nix
@@ -252,6 +252,7 @@ stdenv.mkDerivation (finalAttrs: {
# we're using plain
"-DG_DISABLE_CAST_CHECKS"
];
+ DETERMINISTIC_BUILD = 1;
};
postPatch = ''
@@ -280,8 +281,6 @@ stdenv.mkDerivation (finalAttrs: {
patchShebangs gio/gdbus-2.0/codegen/gdbus-codegen gobject/glib-{genmarshal,mkenums}
'';
- DETERMINISTIC_BUILD = 1;
-
postInstall = ''
moveToOutput "share/glib-2.0" "$dev"
moveToOutput "share/glib-2.0/gdb" "$out"
diff --git a/pkgs/by-name/gl/global-platform-pro/package.nix b/pkgs/by-name/gl/global-platform-pro/package.nix
index 1bc0cc605163..a89e1057c104 100644
--- a/pkgs/by-name/gl/global-platform-pro/package.nix
+++ b/pkgs/by-name/gl/global-platform-pro/package.nix
@@ -26,7 +26,7 @@ in
maven.buildMavenPackage rec {
pname = "global-platform-pro";
version = "25.10.20";
- GPPRO_VERSION = "v25.10.20-0-g72f85b9"; # git describe --tags --always --long --dirty
+ env.GPPRO_VERSION = "v25.10.20-0-g72f85b9"; # git describe --tags --always --long --dirty
src = fetchFromGitHub {
owner = "martinpaljak";
diff --git a/pkgs/by-name/go/golem/package.nix b/pkgs/by-name/go/golem/package.nix
index 527d1d69ea48..0ba5fff942db 100644
--- a/pkgs/by-name/go/golem/package.nix
+++ b/pkgs/by-name/go/golem/package.nix
@@ -43,12 +43,14 @@ rustPlatform.buildRustPackage rec {
(lib.getDev openssl)
];
- # Required for golem-wasm-rpc's build.rs to find the required protobuf files
- # https://github.com/golemcloud/wasm-rpc/blob/v1.0.6/wasm-rpc/build.rs#L7
- GOLEM_WASM_AST_ROOT = "../golem-wasm-ast-1.1.0";
- # Required for golem-examples's build.rs to find the required Wasm Interface Type (WIT) files
- # https://github.com/golemcloud/golem-examples/blob/v1.0.6/build.rs#L9
- GOLEM_WIT_ROOT = "../golem-wit-1.1.0";
+ env = {
+ # Required for golem-wasm-rpc's build.rs to find the required protobuf files
+ # https://github.com/golemcloud/wasm-rpc/blob/v1.0.6/wasm-rpc/build.rs#L7
+ GOLEM_WASM_AST_ROOT = "../golem-wasm-ast-1.1.0";
+ # Required for golem-examples's build.rs to find the required Wasm Interface Type (WIT) files
+ # https://github.com/golemcloud/golem-examples/blob/v1.0.6/build.rs#L9
+ GOLEM_WIT_ROOT = "../golem-wit-1.1.0";
+ };
cargoHash = "sha256-zf/L7aNsfQXCdGpzvBZxgoatAGB92bvIuj59jANrXIc=";
diff --git a/pkgs/by-name/gp/gpuvis/package.nix b/pkgs/by-name/gp/gpuvis/package.nix
index 802627e8eb6a..012ad4ad4541 100644
--- a/pkgs/by-name/gp/gpuvis/package.nix
+++ b/pkgs/by-name/gp/gpuvis/package.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation (finalAttrs: {
freetype
];
- CXXFLAGS = [
+ env.CXXFLAGS = toString [
# GCC 13: error: 'uint32_t' has not been declared
"-include cstdint"
];
diff --git a/pkgs/by-name/gr/greenmask/package.nix b/pkgs/by-name/gr/greenmask/package.nix
index df1ca94e3107..b3909b3cfa85 100644
--- a/pkgs/by-name/gr/greenmask/package.nix
+++ b/pkgs/by-name/gr/greenmask/package.nix
@@ -7,13 +7,13 @@
buildGoModule (finalAttrs: {
pname = "greenmask";
- version = "0.2.15";
+ version = "0.2.16";
src = fetchFromGitHub {
owner = "GreenmaskIO";
repo = "greenmask";
tag = "v${finalAttrs.version}";
- hash = "sha256-/At0boolTyge4VNy1EDpK09Yo7hLAdq6SvCbyBTKGbw=";
+ hash = "sha256-0XWVYkC5ltpJZ1VLG3G1gvTwGdgqY4nzmOvDDnbz0Ss=";
};
vendorHash = "sha256-t2U65GAGBGdMRXPTkCQCuXfLuqohA6erTlvAN/xx/ek=";
diff --git a/pkgs/by-name/gv/gvm-libs/package.nix b/pkgs/by-name/gv/gvm-libs/package.nix
index 426dbb1a8eaa..18756a07c037 100644
--- a/pkgs/by-name/gv/gvm-libs/package.nix
+++ b/pkgs/by-name/gv/gvm-libs/package.nix
@@ -26,13 +26,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "gvm-libs";
- version = "22.35.6";
+ version = "22.35.7";
src = fetchFromGitHub {
owner = "greenbone";
repo = "gvm-libs";
tag = "v${finalAttrs.version}";
- hash = "sha256-oXfxgoFxInx3MyolVxzwRP3EpMsa35G5sdt1GxBUmUU=";
+ hash = "sha256-A3FO2el1ytsXUJEWA+7zthcTN2WpEnNIO2fWQI+0bjc=";
};
postPatch = ''
diff --git a/pkgs/by-name/ha/hackedbox/package.nix b/pkgs/by-name/ha/hackedbox/package.nix
index a53d96c0ff3e..bce90fa612ad 100644
--- a/pkgs/by-name/ha/hackedbox/package.nix
+++ b/pkgs/by-name/ha/hackedbox/package.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation (finalAttrs: {
pkg-config
];
- CXXFLAGS = "-std=c++98";
+ env.CXXFLAGS = "-std=c++98";
buildInputs = [
freetype
diff --git a/pkgs/by-name/he/helm/package.nix b/pkgs/by-name/he/helm/package.nix
index 96c3fa7b7457..1d71ea4ee24a 100644
--- a/pkgs/by-name/he/helm/package.nix
+++ b/pkgs/by-name/he/helm/package.nix
@@ -49,7 +49,7 @@ stdenv.mkDerivation (finalAttrs: {
];
nativeBuildInputs = [ pkg-config ];
- CXXFLAGS = [
+ env.CXXFLAGS = toString [
"-DHAVE_LROUND"
"-fpermissive"
];
diff --git a/pkgs/by-name/he/hentai-at-home/package.nix b/pkgs/by-name/he/hentai-at-home/package.nix
index 9d819530488c..b94b3f0eeba5 100644
--- a/pkgs/by-name/he/hentai-at-home/package.nix
+++ b/pkgs/by-name/he/hentai-at-home/package.nix
@@ -22,10 +22,12 @@ stdenvNoCC.mkDerivation (finalAttrs: {
makeWrapper
];
- LANG = "en_US.UTF-8";
- LOCALE_ARCHIVE = lib.optionalString (
- stdenvNoCC.buildPlatform.libc == "glibc"
- ) "${buildPackages.glibcLocales}/lib/locale/locale-archive";
+ env = {
+ LANG = "en_US.UTF-8";
+ }
+ // lib.optionalAttrs (stdenvNoCC.buildPlatform.libc == "glibc") {
+ LOCALE_ARCHIVE = "${buildPackages.glibcLocales}/lib/locale/locale-archive";
+ };
makeFlags = [ "all" ];
enableParallelBuilding = false;
diff --git a/pkgs/by-name/ho/honeycomb-refinery/package.nix b/pkgs/by-name/ho/honeycomb-refinery/package.nix
index f64c596e492f..142581a155cf 100644
--- a/pkgs/by-name/ho/honeycomb-refinery/package.nix
+++ b/pkgs/by-name/ho/honeycomb-refinery/package.nix
@@ -17,7 +17,7 @@ buildGoModule (finalAttrs: {
hash = "sha256-JHjjaK5WFRzDYuVkenfYowFsPnrF+Wjo85gQAbaVxO8=";
};
- NO_REDIS_TEST = true;
+ env.NO_REDIS_TEST = true;
patches = [
# Allows turning off the one test requiring a Redis service during build.
diff --git a/pkgs/by-name/hy/hyperrogue/package.nix b/pkgs/by-name/hy/hyperrogue/package.nix
index e6b287554de2..cd0492506027 100644
--- a/pkgs/by-name/hy/hyperrogue/package.nix
+++ b/pkgs/by-name/hy/hyperrogue/package.nix
@@ -32,13 +32,13 @@ stdenv.mkDerivation (finalAttrs: {
HYPERROGUE_USE_GLEW = 1;
HYPERROGUE_USE_PNG = 1;
HYPERROGUE_USE_ROGUEVIZ = 1;
- };
- CXXFLAGS = [
- "-I${lib.getDev SDL}/include/SDL"
- "-DHYPERPATH='\"${placeholder "out"}/share/hyperrogue/\"'"
- "-DRESOURCEDESTDIR=HYPERPATH"
- ];
+ CXXFLAGS = toString [
+ "-I${lib.getDev SDL}/include/SDL"
+ "-DHYPERPATH='\"${placeholder "out"}/share/hyperrogue/\"'"
+ "-DRESOURCEDESTDIR=HYPERPATH"
+ ];
+ };
nativeBuildInputs = [
pkg-config
diff --git a/pkgs/by-name/ig/igprof/package.nix b/pkgs/by-name/ig/igprof/package.nix
index 3cb0885b43f7..a0fc1c0a5e58 100644
--- a/pkgs/by-name/ig/igprof/package.nix
+++ b/pkgs/by-name/ig/igprof/package.nix
@@ -32,7 +32,8 @@ stdenv.mkDerivation (finalAttrs: {
pcre
];
nativeBuildInputs = [ cmake ];
- CXXFLAGS = [
+
+ env.CXXFLAGS = toString [
"-fPIC"
"-O2"
"-w"
diff --git a/pkgs/by-name/in/infnoise/package.nix b/pkgs/by-name/in/infnoise/package.nix
index f5c6f3855403..762f9a629e81 100644
--- a/pkgs/by-name/in/infnoise/package.nix
+++ b/pkgs/by-name/in/infnoise/package.nix
@@ -27,9 +27,11 @@ stdenv.mkDerivation (finalAttrs: {
})
];
- GIT_COMMIT = finalAttrs.src.rev;
- GIT_VERSION = finalAttrs.version;
- GIT_DATE = "2023-02-14";
+ env = {
+ GIT_COMMIT = finalAttrs.src.rev;
+ GIT_VERSION = finalAttrs.version;
+ GIT_DATE = "2023-02-14";
+ };
buildInputs = [ libftdi ];
diff --git a/pkgs/by-name/in/intel-vaapi-driver/package.nix b/pkgs/by-name/in/intel-vaapi-driver/package.nix
index b461933e2d85..33f06004ae1b 100644
--- a/pkgs/by-name/in/intel-vaapi-driver/package.nix
+++ b/pkgs/by-name/in/intel-vaapi-driver/package.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation {
};
# Set the correct install path:
- LIBVA_DRIVERS_PATH = "${placeholder "out"}/lib/dri";
+ env.LIBVA_DRIVERS_PATH = "${placeholder "out"}/lib/dri";
postInstall = lib.optionalString enableHybridCodec ''
ln -s ${vaapi-intel-hybrid}/lib/dri/* $out/lib/dri/
diff --git a/pkgs/by-name/is/isso/package.nix b/pkgs/by-name/is/isso/package.nix
index 2b1959ae6203..cd8486a3de53 100644
--- a/pkgs/by-name/is/isso/package.nix
+++ b/pkgs/by-name/is/isso/package.nix
@@ -54,7 +54,7 @@ python3Packages.buildPythonApplication (finalAttrs: {
npmHooks.npmConfigHook
];
- NODE_PATH = "$npmDeps";
+ env.NODE_PATH = "$npmDeps";
preBuild = ''
ln -s ${finalAttrs.npmDeps}/node_modules ./node_modules
diff --git a/pkgs/applications/video/jellyfin-desktop/non-fatal-unique-app.patch b/pkgs/by-name/je/jellyfin-desktop/non-fatal-unique-app.patch
similarity index 100%
rename from pkgs/applications/video/jellyfin-desktop/non-fatal-unique-app.patch
rename to pkgs/by-name/je/jellyfin-desktop/non-fatal-unique-app.patch
diff --git a/pkgs/applications/video/jellyfin-desktop/default.nix b/pkgs/by-name/je/jellyfin-desktop/package.nix
similarity index 86%
rename from pkgs/applications/video/jellyfin-desktop/default.nix
rename to pkgs/by-name/je/jellyfin-desktop/package.nix
index 12ac1682972f..0c62dc24ed2d 100644
--- a/pkgs/applications/video/jellyfin-desktop/default.nix
+++ b/pkgs/by-name/je/jellyfin-desktop/package.nix
@@ -5,27 +5,22 @@
cmake,
ninja,
python3,
- wrapQtAppsHook,
- qtbase,
- qtdeclarative,
- qtwebchannel,
- qtwebengine,
+ kdePackages,
mpv-unwrapped,
- mpvqt,
libcec,
SDL2,
libxrandr,
cacert,
nix-update-script,
}:
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
pname = "jellyfin-desktop";
version = "2.0.0";
src = fetchFromGitHub {
owner = "jellyfin";
repo = "jellyfin-desktop";
- rev = "v${version}";
+ tag = "v${finalAttrs.version}";
hash = "sha256-ITlYOrMS6COx9kDRSBi4wM6mzL/Q2G5X9GbABwDIOe4=";
fetchSubmodules = true;
};
@@ -36,15 +31,15 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [
cmake
ninja
- wrapQtAppsHook
+ kdePackages.wrapQtAppsHook
]
++ lib.optional stdenv.hostPlatform.isDarwin python3;
buildInputs = [
- qtbase
- qtdeclarative
- qtwebchannel
- qtwebengine
+ kdePackages.qtbase
+ kdePackages.qtdeclarative
+ kdePackages.qtwebchannel
+ kdePackages.qtwebengine
mpv-unwrapped
# input sources
@@ -55,7 +50,7 @@ stdenv.mkDerivation rec {
libxrandr
cacert
]
- ++ lib.optional (!stdenv.hostPlatform.isDarwin) mpvqt;
+ ++ lib.optional (!stdenv.hostPlatform.isDarwin) kdePackages.mpvqt;
cmakeFlags = [
"-DCHECK_FOR_UPDATES=OFF"
@@ -97,4 +92,4 @@ stdenv.mkDerivation rec {
];
mainProgram = "jellyfin-desktop";
};
-}
+})
diff --git a/pkgs/by-name/ka/kanban/package.nix b/pkgs/by-name/ka/kanban/package.nix
index f63dfdfe46c5..f0b5c5169f94 100644
--- a/pkgs/by-name/ka/kanban/package.nix
+++ b/pkgs/by-name/ka/kanban/package.nix
@@ -16,7 +16,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
hash = "sha256-w1NoWgaUBny//3t1S5z/juPOYFomwJKtTq/M4qKoNv0=";
};
- GIT_COMMIT_HASH = finalAttrs.src.rev;
+ env.GIT_COMMIT_HASH = finalAttrs.src.rev;
cargoHash = "sha256-N+c2jnJ7a+Nh2UibkaOByh4tKDX52VovYIpeHTpawXo=";
diff --git a/pkgs/by-name/ka/kaufkauflist/package.nix b/pkgs/by-name/ka/kaufkauflist/package.nix
index 8e4ad879104a..9ba0a388d6a9 100644
--- a/pkgs/by-name/ka/kaufkauflist/package.nix
+++ b/pkgs/by-name/ka/kaufkauflist/package.nix
@@ -39,7 +39,7 @@ buildNpmPackage rec {
npmDepsHash = "sha256-HDv6sW6FmKZpUjymrUjz/WG9XrKgLmM6qHMAxP6gBtU=";
- ESBUILD_BINARY_PATH = lib.getExe esbuild';
+ env.ESBUILD_BINARY_PATH = lib.getExe esbuild';
postInstall = ''
mkdir -p $out/share/kaufkauflist $out/share/pocketbase
diff --git a/pkgs/by-name/ki/kinect-audio-setup/package.nix b/pkgs/by-name/ki/kinect-audio-setup/package.nix
index 76cd1370d66b..16c26dfd17a8 100644
--- a/pkgs/by-name/ki/kinect-audio-setup/package.nix
+++ b/pkgs/by-name/ki/kinect-audio-setup/package.nix
@@ -17,7 +17,7 @@ let
# redirects to the following url:
licenseUrl = "https://www.microsoft.com/en-us/legal/terms-of-use";
in
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
pname = "kinect-audio-setup";
# On update: Make sure that the `firmwareURL` is still in sync with upstream.
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
version = "0.5";
# This is an MSI or CAB file
- FIRMWARE = requireFile {
+ env.FIRMWARE = requireFile {
name = "UACFirmware";
sha256 = "08a2vpgd061cmc6h3h8i6qj3sjvjr1fwcnwccwywqypz3icn8xw1";
message = ''
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
src = fetchgit {
url = "git://git.ao2.it/kinect-audio-setup.git";
- rev = "v${version}";
+ rev = "v${finalAttrs.version}";
hash = "sha256-bFwmWh822KvFwP/0Gu097nF5K2uCwCLMB1RtP7k+Zt0=";
};
@@ -77,7 +77,7 @@ stdenv.mkDerivation rec {
install -Dm755 kinect_upload_fw/kinect_upload_fw $out/libexec/
# 7z extract "assume yes on all queries" "only extract/keep files/directories matching UACFIRMWARE.* recursively"
- 7z e -y -r "${FIRMWARE}" "UACFirmware.*" >/dev/null
+ 7z e -y -r "${finalAttrs.env.FIRMWARE}" "UACFirmware.*" >/dev/null
# The filename is bound to change with the Firmware SDK
mv UACFirmware.* $out/lib/firmware/UACFirmware
@@ -93,4 +93,4 @@ stdenv.mkDerivation rec {
platforms = lib.platforms.linux;
license = lib.licenses.unfree;
};
-}
+})
diff --git a/pkgs/by-name/ki/kitty/package.nix b/pkgs/by-name/ki/kitty/package.nix
index 9cd9d0ed1757..06df3c4cd49f 100644
--- a/pkgs/by-name/ki/kitty/package.nix
+++ b/pkgs/by-name/ki/kitty/package.nix
@@ -150,8 +150,10 @@ buildPythonApplication rec {
"fortify3"
];
- env.CGO_ENABLED = 0;
- GOFLAGS = "-trimpath";
+ env = {
+ CGO_ENABLED = 0;
+ GOFLAGS = "-trimpath";
+ };
configurePhase = ''
export GOCACHE=$TMPDIR/go-cache
diff --git a/pkgs/by-name/lc/lc3tools/package.nix b/pkgs/by-name/lc/lc3tools/package.nix
index c9ef1484bb24..461a85ea2aea 100644
--- a/pkgs/by-name/lc/lc3tools/package.nix
+++ b/pkgs/by-name/lc/lc3tools/package.nix
@@ -41,10 +41,12 @@ stdenv.mkDerivation {
readline
];
- # lumetta published this a while ago but handrolled his configure
- # jank in the original packaging makes this necessary:
- LIBS = "${flex}/lib:${ncurses}/lib:${readline}/lib";
- INCLUDES = "${flex}/include:${ncurses}/include:${readline}/include";
+ env = {
+ # lumetta published this a while ago but handrolled his configure
+ # jank in the original packaging makes this necessary:
+ LIBS = "${flex}/lib:${ncurses}/lib:${readline}/lib";
+ INCLUDES = "${flex}/include:${ncurses}/include:${readline}/include";
+ };
# it doesn't take `--prefix`
prefixKey = "--installdir ";
diff --git a/pkgs/by-name/li/libe57format/package.nix b/pkgs/by-name/li/libe57format/package.nix
index fe9d3bc5cbb2..892083d77d6a 100644
--- a/pkgs/by-name/li/libe57format/package.nix
+++ b/pkgs/by-name/li/libe57format/package.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-JARpxp6Z2VioBfY0pZSyQU2mG/EllbaF3qteSFM9u8o=";
};
- CXXFLAGS = [
+ env.CXXFLAGS = toString [
# GCC 13: error: 'int16_t' has not been declared in 'std'
"-include cstdint"
];
diff --git a/pkgs/by-name/li/libfolia/package.nix b/pkgs/by-name/li/libfolia/package.nix
index 75612f075e9f..5269e5c5a101 100644
--- a/pkgs/by-name/li/libfolia/package.nix
+++ b/pkgs/by-name/li/libfolia/package.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation (finalAttrs: {
];
# compat with icu61+ https://github.com/unicode-org/icu/blob/release-64-2/icu4c/readme.html#L554
- CXXFLAGS = [ "-DU_USING_ICU_NAMESPACE=1" ];
+ env.CXXFLAGS = toString [ "-DU_USING_ICU_NAMESPACE=1" ];
passthru = {
updateScript = gitUpdater { rev-prefix = "v"; };
diff --git a/pkgs/by-name/li/libpar2/package.nix b/pkgs/by-name/li/libpar2/package.nix
index 2b1a3b69ebcf..2d29d4d81eb7 100644
--- a/pkgs/by-name/li/libpar2/package.nix
+++ b/pkgs/by-name/li/libpar2/package.nix
@@ -20,7 +20,9 @@ stdenv.mkDerivation (finalAttrs: {
patches = [ ./libpar2-0.4-external-verification.patch ];
- CXXFLAGS = lib.optionalString stdenv.cc.isClang "-std=c++11";
+ env = lib.optionalAttrs stdenv.cc.isClang {
+ CXXFLAGS = "-std=c++11";
+ };
meta = {
homepage = "https://parchive.sourceforge.net/";
diff --git a/pkgs/by-name/li/libphonenumber/package.nix b/pkgs/by-name/li/libphonenumber/package.nix
index 5b4ecd3e530d..4b2d500c76d1 100644
--- a/pkgs/by-name/li/libphonenumber/package.nix
+++ b/pkgs/by-name/li/libphonenumber/package.nix
@@ -8,7 +8,8 @@
gtest,
jre,
pkg-config,
- boost,
+ # complains about missing boost.system on 1.89
+ boost188,
icu,
protobuf,
}:
@@ -52,7 +53,7 @@ stdenv.mkDerivation (finalAttrs: {
];
propagatedBuildInputs = lib.optionals enableTests [
- boost
+ boost188
];
cmakeDir = "../cpp";
diff --git a/pkgs/by-name/li/libretrack/package.nix b/pkgs/by-name/li/libretrack/package.nix
index 22e4c7198518..28a007312faa 100644
--- a/pkgs/by-name/li/libretrack/package.nix
+++ b/pkgs/by-name/li/libretrack/package.nix
@@ -32,7 +32,7 @@ flutter329.buildFlutterApplication rec {
];
# https://github.com/juliansteenbakker/flutter_secure_storage/issues/965
- CXXFLAGS = [ "-Wno-deprecated-literal-operator" ];
+ env.CXXFLAGS = toString [ "-Wno-deprecated-literal-operator" ];
postInstall = ''
substituteInPlace snap/gui/org.proninyaroslav.libretrack.desktop \
diff --git a/pkgs/by-name/li/libthreadar/package.nix b/pkgs/by-name/li/libthreadar/package.nix
index 60b786662501..60d35b030630 100644
--- a/pkgs/by-name/li/libthreadar/package.nix
+++ b/pkgs/by-name/li/libthreadar/package.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation (finalAttrs: {
buildInputs = [ gcc-unwrapped ];
- CXXFLAGS = [ "-std=c++14" ];
+ env.CXXFLAGS = toString [ "-std=c++14" ];
configureFlags = [
"--disable-build-html"
diff --git a/pkgs/by-name/li/linuxdoc-tools/package.nix b/pkgs/by-name/li/linuxdoc-tools/package.nix
index 7d3feb00d414..45cd774c6d00 100644
--- a/pkgs/by-name/li/linuxdoc-tools/package.nix
+++ b/pkgs/by-name/li/linuxdoc-tools/package.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation (finalAttrs: {
("--enable-docs=txt info lyx html rtf" + lib.optionalString withLatex " pdf")
];
- LEX = "flex";
+ env.LEX = "flex";
postInstall = ''
wrapProgram $out/bin/linuxdoc \
diff --git a/pkgs/by-name/li/lirc/package.nix b/pkgs/by-name/li/lirc/package.nix
index ed1e36cafe29..730b003723a3 100644
--- a/pkgs/by-name/li/lirc/package.nix
+++ b/pkgs/by-name/li/lirc/package.nix
@@ -95,7 +95,7 @@ stdenv.mkDerivation (finalAttrs: {
libx11
];
- DEVINPUT_HEADER = "${linuxHeaders}/include/linux/input-event-codes.h";
+ env.DEVINPUT_HEADER = "${linuxHeaders}/include/linux/input-event-codes.h";
configureFlags = [
"--sysconfdir=/etc"
diff --git a/pkgs/by-name/lo/log4shib/package.nix b/pkgs/by-name/lo/log4shib/package.nix
index ef90d78fecbd..3b421146e8cb 100644
--- a/pkgs/by-name/lo/log4shib/package.nix
+++ b/pkgs/by-name/lo/log4shib/package.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
nativeBuildInputs = [ autoreconfHook ];
- CXXFLAGS = "-std=c++11";
+ env.CXXFLAGS = "-std=c++11";
meta = {
description = "Forked version of log4cpp that has been created for the Shibboleth project";
diff --git a/pkgs/by-name/ls/lsof/package.nix b/pkgs/by-name/ls/lsof/package.nix
index f438a33b5465..8976e83d5069 100644
--- a/pkgs/by-name/ls/lsof/package.nix
+++ b/pkgs/by-name/ls/lsof/package.nix
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
buildInputs = [ ncurses ];
# Stop build scripts from searching global include paths
- LSOF_INCLUDE = "${lib.getDev stdenv.cc.libc}/include";
+ env.LSOF_INCLUDE = "${lib.getDev stdenv.cc.libc}/include";
configurePhase =
let
genericFlags = "LSOF_CC=$CC LSOF_AR=\"$AR cr\" LSOF_RANLIB=$RANLIB";
diff --git a/pkgs/by-name/ma/maestral-gui/package.nix b/pkgs/by-name/ma/maestral-gui/package.nix
index ba047ae40420..0d2ecbeee604 100644
--- a/pkgs/by-name/ma/maestral-gui/package.nix
+++ b/pkgs/by-name/ma/maestral-gui/package.nix
@@ -6,7 +6,7 @@
nixosTests,
}:
-python3.pkgs.buildPythonApplication rec {
+python3.pkgs.buildPythonApplication (finalAttrs: {
pname = "maestral-qt";
version = "1.9.5";
pyproject = true;
@@ -14,7 +14,7 @@ python3.pkgs.buildPythonApplication rec {
src = fetchFromGitHub {
owner = "SamSchott";
repo = "maestral-qt";
- tag = "v${version}";
+ tag = "v${finalAttrs.version}";
hash = "sha256-FCn9ELbodk+zCJNmlOVoxE/KSSqbxy5HTB1vpiu7AJA=";
};
@@ -39,14 +39,22 @@ python3.pkgs.buildPythonApplication rec {
dontWrapQtApps = true;
makeWrapperArgs = with python3.pkgs; [
- # Firstly, add all necessary QT variables
- "\${qtWrapperArgs[@]}"
-
# Add the installed directories to the python path so the daemon can find them
- "--prefix PYTHONPATH : ${makePythonPath (requiredPythonModules maestral.propagatedBuildInputs)}"
- "--prefix PYTHONPATH : ${makePythonPath [ maestral ]}"
+ "--prefix"
+ "PYTHONPATH"
+ ":"
+ (makePythonPath (requiredPythonModules maestral.propagatedBuildInputs))
+ "--prefix"
+ "PYTHONPATH"
+ ":"
+ (makePythonPath [ maestral ])
];
+ preFixup = ''
+ # Add all necessary QT variables
+ makeWrapperArgs+=("''${qtWrapperArgs[@]}")
+ '';
+
postInstall = ''
install -Dm444 -t $out/share/icons/hicolor/512x512/apps src/maestral_qt/resources/maestral.png
'';
@@ -58,10 +66,12 @@ python3.pkgs.buildPythonApplication rec {
passthru.tests.maestral = nixosTests.maestral;
+ __structuredAttrs = true;
+
meta = {
description = "GUI front-end for maestral (an open-source Dropbox client) for Linux";
homepage = "https://maestral.app";
- changelog = "https://github.com/samschott/maestral/releases/tag/v${version}";
+ changelog = "https://github.com/samschott/maestral/releases/tag/v${finalAttrs.version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [
peterhoeg
@@ -70,4 +80,4 @@ python3.pkgs.buildPythonApplication rec {
platforms = lib.platforms.linux;
mainProgram = "maestral_qt";
};
-}
+})
diff --git a/pkgs/by-name/ma/mainsail/package.nix b/pkgs/by-name/ma/mainsail/package.nix
index b9d6961fc1f9..2118f7775d5a 100644
--- a/pkgs/by-name/ma/mainsail/package.nix
+++ b/pkgs/by-name/ma/mainsail/package.nix
@@ -21,7 +21,7 @@ buildNpmPackage rec {
nodejs = nodejs_20;
# Prevent Cypress binary download.
- CYPRESS_INSTALL_BINARY = 0;
+ env.CYPRESS_INSTALL_BINARY = 0;
preConfigure = ''
# Make the build.zip target do nothing, since we will just copy these files later.
diff --git a/pkgs/by-name/ma/materialize/package.nix b/pkgs/by-name/ma/materialize/package.nix
index b684305768a5..196f6769ed02 100644
--- a/pkgs/by-name/ma/materialize/package.nix
+++ b/pkgs/by-name/ma/materialize/package.nix
@@ -92,7 +92,6 @@ in
rustPlatform.buildRustPackage rec {
pname = "materialize";
version = "0.87.2";
- MZ_DEV_BUILD_SHA = "000000000000000000000000000000000000000000000000000";
src = fetchFromGitHub {
owner = "MaterializeInc";
@@ -112,6 +111,7 @@ rustPlatform.buildRustPackage rec {
'';
env = {
+ MZ_DEV_BUILD_SHA = "000000000000000000000000000000000000000000000000000";
# needed for internal protobuf c wrapper library
PROTOC = lib.getExe protobuf;
PROTOC_INCLUDE = "${protobuf}/include";
diff --git a/pkgs/by-name/mh/mhabit/package.nix b/pkgs/by-name/mh/mhabit/package.nix
index 82aec6204858..4d7552d03a40 100644
--- a/pkgs/by-name/mh/mhabit/package.nix
+++ b/pkgs/by-name/mh/mhabit/package.nix
@@ -35,7 +35,7 @@ flutter338.buildFlutterApplication {
];
# https://github.com/juliansteenbakker/flutter_secure_storage/issues/965
- CXXFLAGS = [ "-Wno-deprecated-literal-operator" ];
+ env.CXXFLAGS = toString [ "-Wno-deprecated-literal-operator" ];
postInstall = ''
install -Dm644 flatpak/io.github.friesi23.mhabit.desktop --target-directory=$out/share/applications
diff --git a/pkgs/by-name/mi/mirakurun/package.nix b/pkgs/by-name/mi/mirakurun/package.nix
index 825ff812f01c..4317d296276b 100644
--- a/pkgs/by-name/mi/mirakurun/package.nix
+++ b/pkgs/by-name/mi/mirakurun/package.nix
@@ -37,7 +37,7 @@ buildNpmPackage rec {
];
# workaround for https://github.com/webpack/webpack/issues/14532
- NODE_OPTIONS = "--openssl-legacy-provider";
+ env.NODE_OPTIONS = "--openssl-legacy-provider";
postInstall =
let
diff --git a/pkgs/by-name/mk/mktemp/package.nix b/pkgs/by-name/mk/mktemp/package.nix
index e0b6f1e88470..56d24f7ede8a 100644
--- a/pkgs/by-name/mk/mktemp/package.nix
+++ b/pkgs/by-name/mk/mktemp/package.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation (finalAttrs: {
version = "1.7";
# Have `configure' avoid `/usr/bin/nroff' in non-chroot builds.
- NROFF = "${groff}/bin/nroff";
+ env.NROFF = "${groff}/bin/nroff";
patches = [
# Pull upstream fix for parallel install failures.
diff --git a/pkgs/by-name/mm/mmtc/package.nix b/pkgs/by-name/mm/mmtc/package.nix
index 623b9e3ed060..15057ca33a36 100644
--- a/pkgs/by-name/mm/mmtc/package.nix
+++ b/pkgs/by-name/mm/mmtc/package.nix
@@ -25,7 +25,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
installShellCompletion artifacts/mmtc.{bash,fish} --zsh artifacts/_mmtc
'';
- GEN_ARTIFACTS = "artifacts";
+ env.GEN_ARTIFACTS = "artifacts";
meta = {
description = "Minimal mpd terminal client that aims to be simple yet highly configurable";
diff --git a/pkgs/by-name/mo/modelscan/package.nix b/pkgs/by-name/mo/modelscan/package.nix
index a3b180618484..d506e3d3211d 100644
--- a/pkgs/by-name/mo/modelscan/package.nix
+++ b/pkgs/by-name/mo/modelscan/package.nix
@@ -6,14 +6,14 @@
python3.pkgs.buildPythonApplication (finalAttrs: {
pname = "modelscan";
- version = "0.8.5";
+ version = "0.8.8";
pyproject = true;
src = fetchFromGitHub {
owner = "protectai";
repo = "modelscan";
tag = "v${finalAttrs.version}";
- hash = "sha256-8VupkPiHebVtOqMdtkBflAI1zPRdDSvHCEq3ghjASaE=";
+ hash = "sha256-mN2X6Zbai7xm8bdr2hi9fwzIsfQtukeGcOIS32G4hA0=";
};
pythonRelaxDeps = [ "rich" ];
diff --git a/pkgs/by-name/mo/morse-linux/package.nix b/pkgs/by-name/mo/morse-linux/package.nix
new file mode 100644
index 000000000000..7d0a5be31e4f
--- /dev/null
+++ b/pkgs/by-name/mo/morse-linux/package.nix
@@ -0,0 +1,60 @@
+{
+ lib,
+ stdenv,
+ fetchFromGitLab,
+ alsa-lib,
+ pulseaudio,
+ pkg-config,
+ xmlto,
+ docbook_xsl,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+ pname = "morse";
+ version = "2.6";
+
+ src = fetchFromGitLab {
+ owner = "esr";
+ repo = "morse-classic";
+ tag = finalAttrs.version;
+ hash = "sha256-wk/Jcp2YWUlecV3OMELD6IWrlj3IC8kh0U4geMxG4fw=";
+ };
+
+ buildInputs = [
+ alsa-lib
+ pulseaudio
+ ];
+
+ nativeBuildInputs = [
+ pkg-config
+ xmlto
+ docbook_xsl
+ ];
+
+ postPatch = ''
+ substituteInPlace Makefile --replace-fail "xmlto" "xmlto --skip-validation"
+ '';
+
+ env.NIX_CFLAGS_COMPILE = "-std=gnu99";
+
+ installPhase = ''
+ runHook preInstall
+ install -Dm755 morse -t "$out/bin/"
+ install -Dm755 QSO -t "$out/bin/"
+ install -Dm644 morse.1 -t "$out/share/man/man1/"
+ install -Dm644 QSO.1 -t "$out/share/man/man1/"
+ runHook postInstall
+ '';
+
+ meta = {
+ description = "Training program about morse-code for aspiring radio hams";
+ homepage = "https://gitlab.com/esr/morse-classic";
+ license = lib.licenses.bsd2;
+ maintainers = with lib.maintainers; [
+ matthewcroughan
+ sarcasticadmin
+ ];
+ platforms = lib.platforms.linux;
+ mainProgram = "morse";
+ };
+})
diff --git a/pkgs/by-name/mo/movit/package.nix b/pkgs/by-name/mo/movit/package.nix
index 12e8be4d619f..a36ebab3f3db 100644
--- a/pkgs/by-name/mo/movit/package.nix
+++ b/pkgs/by-name/mo/movit/package.nix
@@ -26,8 +26,6 @@ stdenv.mkDerivation rec {
"dev"
];
- GTEST_DIR = "${gtest.src}/googletest";
-
nativeBuildInputs = [
pkg-config
];
@@ -45,13 +43,15 @@ stdenv.mkDerivation rec {
libepoxy
];
- env =
- lib.optionalAttrs stdenv.cc.isGNU {
- NIX_CFLAGS_COMPILE = "-std=c++17"; # needed for latest gtest
- }
- // lib.optionalAttrs stdenv.hostPlatform.isDarwin {
- NIX_LDFLAGS = "-framework OpenGL";
- };
+ env = {
+ GTEST_DIR = "${gtest.src}/googletest";
+ }
+ // lib.optionalAttrs stdenv.cc.isGNU {
+ NIX_CFLAGS_COMPILE = "-std=c++17"; # needed for latest gtest
+ }
+ // lib.optionalAttrs stdenv.hostPlatform.isDarwin {
+ NIX_LDFLAGS = "-framework OpenGL";
+ };
enableParallelBuilding = true;
diff --git a/pkgs/by-name/mp/mpd/package.nix b/pkgs/by-name/mp/mpd/package.nix
index 850a8880a5d9..51df5dbb4064 100644
--- a/pkgs/by-name/mp/mpd/package.nix
+++ b/pkgs/by-name/mp/mpd/package.nix
@@ -257,9 +257,11 @@ stdenv.mkDerivation (finalAttrs: {
]
++ lib.optional (builtins.elem "documentation" features_) "man";
- CXXFLAGS = lib.optionals stdenv.hostPlatform.isDarwin [
- "-D__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES=0"
- ];
+ env = lib.optionalAttrs stdenv.hostPlatform.isDarwin {
+ CXXFLAGS = toString [
+ "-D__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES=0"
+ ];
+ };
mesonFlags = [
(lib.mesonBool "test" true)
diff --git a/pkgs/by-name/ms/msbuild/package.nix b/pkgs/by-name/ms/msbuild/package.nix
index 6d8010e4e0cb..ce9f87d20088 100644
--- a/pkgs/by-name/ms/msbuild/package.nix
+++ b/pkgs/by-name/ms/msbuild/package.nix
@@ -55,9 +55,11 @@ mkPackage rec {
glibcLocales
];
- # https://github.com/NixOS/nixpkgs/issues/38991
- # bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
- LOCALE_ARCHIVE = lib.optionalString stdenv.hostPlatform.isLinux "${glibcLocales}/lib/locale/locale-archive";
+ env = lib.optionalAttrs stdenv.hostPlatform.isLinux {
+ # https://github.com/NixOS/nixpkgs/issues/38991
+ # bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
+ LOCALE_ARCHIVE = "${glibcLocales}/lib/locale/locale-archive";
+ };
postPatch = ''
# not patchShebangs, there is /bin/bash in the body of the script as well
diff --git a/pkgs/by-name/ms/msieve/package.nix b/pkgs/by-name/ms/msieve/package.nix
index 3370bc459f32..c80468d07815 100644
--- a/pkgs/by-name/ms/msieve/package.nix
+++ b/pkgs/by-name/ms/msieve/package.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation (finalAttrs: {
ecm
];
- ECM = if ecm == null then "0" else "1";
+ env.ECM = if ecm == null then "0" else "1";
# Doesn't hurt Linux but lets clang-based platforms like Darwin work fine too
makeFlags = [
diff --git a/pkgs/by-name/ne/netcdffortran/package.nix b/pkgs/by-name/ne/netcdffortran/package.nix
index 50c745633639..0891559c5b78 100644
--- a/pkgs/by-name/ne/netcdffortran/package.nix
+++ b/pkgs/by-name/ne/netcdffortran/package.nix
@@ -27,8 +27,10 @@ stdenv.mkDerivation (finalAttrs: {
doCheck = true;
- FFLAGS = [ "-std=legacy" ];
- FCFLAGS = [ "-std=legacy" ];
+ env = {
+ FFLAGS = toString [ "-std=legacy" ];
+ FCFLAGS = toString [ "-std=legacy" ];
+ };
meta = {
description = "Fortran API to manipulate netcdf files";
diff --git a/pkgs/by-name/ne/netop/package.nix b/pkgs/by-name/ne/netop/package.nix
index e303475d1804..103fa61fd84a 100644
--- a/pkgs/by-name/ne/netop/package.nix
+++ b/pkgs/by-name/ne/netop/package.nix
@@ -16,8 +16,10 @@ rustPlatform.buildRustPackage (finalAttrs: {
hash = "sha256-Rnp2VNAi8BNbKqkGFoYUb4C5db5BS1P1cqpWlroTmdQ=";
};
- LIBPCAP_LIBDIR = lib.makeLibraryPath [ libpcap ];
- LIBPCAP_VER = libpcap.version;
+ env = {
+ LIBPCAP_LIBDIR = lib.makeLibraryPath [ libpcap ];
+ LIBPCAP_VER = libpcap.version;
+ };
cargoHash = "sha256-WGwtRMARwRvcUflN3JYL32aib+IG1Q0j0D9BEfaiME4=";
diff --git a/pkgs/by-name/ne/newsboat/package.nix b/pkgs/by-name/ne/newsboat/package.nix
index a2e87e041013..bd821281dcfe 100644
--- a/pkgs/by-name/ne/newsboat/package.nix
+++ b/pkgs/by-name/ne/newsboat/package.nix
@@ -66,12 +66,14 @@ stdenv.mkDerivation (finalAttrs: {
gettext
];
- # https://github.com/NixOS/nixpkgs/pull/98471#issuecomment-703100014 . We set
- # these for all platforms, since upstream's gettext crate behavior might
- # change in the future.
- GETTEXT_LIB_DIR = "${lib.getLib gettext}/lib";
- GETTEXT_INCLUDE_DIR = "${lib.getDev gettext}/include";
- GETTEXT_BIN_DIR = "${lib.getBin gettext}/bin";
+ env = {
+ # https://github.com/NixOS/nixpkgs/pull/98471#issuecomment-703100014 . We set
+ # these for all platforms, since upstream's gettext crate behavior might
+ # change in the future.
+ GETTEXT_LIB_DIR = "${lib.getLib gettext}/lib";
+ GETTEXT_INCLUDE_DIR = "${lib.getDev gettext}/include";
+ GETTEXT_BIN_DIR = "${lib.getBin gettext}/bin";
+ };
makeFlags = [ "prefix=$(out)" ];
enableParallelBuilding = true;
diff --git a/pkgs/by-name/ni/nirius/package.nix b/pkgs/by-name/ni/nirius/package.nix
index 30fc65aa9a72..d55ec4204e99 100644
--- a/pkgs/by-name/ni/nirius/package.nix
+++ b/pkgs/by-name/ni/nirius/package.nix
@@ -6,16 +6,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "nirius";
- version = "0.6.1";
+ version = "0.7.0";
src = fetchFromSourcehut {
owner = "~tsdh";
repo = "nirius";
rev = "nirius-${finalAttrs.version}";
- hash = "sha256-KAh45AcNB9Y4ahxamtI6/z3l1xg6yf17h4rnZl3w89I=";
+ hash = "sha256-e/3FOlA29u214gs8Y4Tvk+XJUhT5Bn4GLrptbqrDRw8=";
};
- cargoHash = "sha256-p123QvlB/j0b5kFjICcTI/5ZKL8pzGfIvH80doAhqFA=";
+ cargoHash = "sha256-4tdPm4+ykEjGeYpQxR3M8Zh84VMDkkQXAaWlehunZ8c=";
meta = {
description = "Utility commands for the niri wayland compositor";
diff --git a/pkgs/by-name/ni/nix-heuristic-gc/package.nix b/pkgs/by-name/ni/nix-heuristic-gc/package.nix
index 07a43fa9a1d7..4158c0d01421 100644
--- a/pkgs/by-name/ni/nix-heuristic-gc/package.nix
+++ b/pkgs/by-name/ni/nix-heuristic-gc/package.nix
@@ -20,7 +20,7 @@ python3Packages.buildPythonPackage rec {
# NIX_SYSTEM suggested at
# https://github.com/NixOS/nixpkgs/issues/386184#issuecomment-2692433531
- NIX_SYSTEM = nixVersions.nixComponents_2_30.nix-store.stdenv.hostPlatform.system;
+ env.NIX_SYSTEM = nixVersions.nixComponents_2_30.nix-store.stdenv.hostPlatform.system;
buildInputs = [
boost
diff --git a/pkgs/by-name/ni/nix-weather/package.nix b/pkgs/by-name/ni/nix-weather/package.nix
index 3f6aa492a66b..00f904a9144d 100644
--- a/pkgs/by-name/ni/nix-weather/package.nix
+++ b/pkgs/by-name/ni/nix-weather/package.nix
@@ -41,7 +41,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
];
# This is where `build.rs` puts manpages
- MAN_OUT = "./man";
+ env.MAN_OUT = "./man";
postInstall = ''
cd crates/nix-weather
diff --git a/pkgs/by-name/ni/nix-web/package.nix b/pkgs/by-name/ni/nix-web/package.nix
index 95bebd4c0e40..339a85f4789c 100644
--- a/pkgs/by-name/ni/nix-web/package.nix
+++ b/pkgs/by-name/ni/nix-web/package.nix
@@ -42,7 +42,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
cargoBuildFlags = cargoFlags;
cargoTestFlags = cargoFlags;
- NIX_WEB_BUILD_NIX_CLI_PATH = "${nixPackage}/bin/nix";
+ env.NIX_WEB_BUILD_NIX_CLI_PATH = "${nixPackage}/bin/nix";
meta = {
description = "Web interface for the Nix store";
diff --git a/pkgs/by-name/no/nostui/package.nix b/pkgs/by-name/no/nostui/package.nix
index ee987669e91e..d7a113a01d9b 100644
--- a/pkgs/by-name/no/nostui/package.nix
+++ b/pkgs/by-name/no/nostui/package.nix
@@ -15,7 +15,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
hash = "sha256-7i76JPg6MAk4/sO8/JI4ody4iYFJPeLkD2SWncFhT4o=";
};
- GIT_HASH = "000000000000000000000000000000000000000000000000000";
+ env.GIT_HASH = "000000000000000000000000000000000000000000000000000";
checkFlags = [
# skip failing test due to nix build timestamps
diff --git a/pkgs/by-name/ns/ns-3/package.nix b/pkgs/by-name/ns/ns-3/package.nix
index ffeac414ee46..64f4beb62aa4 100644
--- a/pkgs/by-name/ns/ns-3/package.nix
+++ b/pkgs/by-name/ns/ns-3/package.nix
@@ -133,7 +133,7 @@ stdenv.mkDerivation (finalAttrs: {
"build" + lib.optionalString enableDoxygen " doxygen" + lib.optionalString withManual "sphinx";
# to prevent fatal error: 'backward_warning.h' file not found
- CXXFLAGS = "-D_GLIBCXX_PERMIT_BACKWARD_HASH";
+ env.CXXFLAGS = "-D_GLIBCXX_PERMIT_BACKWARD_HASH";
# Make generated python bindings discoverable in customized python environment
passthru = {
diff --git a/pkgs/by-name/ns/nsis/package.nix b/pkgs/by-name/ns/nsis/package.nix
index 172d5d0459a5..05e25a5ed97d 100644
--- a/pkgs/by-name/ns/nsis/package.nix
+++ b/pkgs/by-name/ns/nsis/package.nix
@@ -32,14 +32,16 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [ scons ];
buildInputs = [ zlib ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ];
- CPPPATH = symlinkJoin {
- name = "nsis-includes";
- paths = [ zlib.dev ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ];
- };
+ env = {
+ CPPPATH = symlinkJoin {
+ name = "nsis-includes";
+ paths = [ zlib.dev ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ];
+ };
- LIBPATH = symlinkJoin {
- name = "nsis-libs";
- paths = [ zlib ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ];
+ LIBPATH = symlinkJoin {
+ name = "nsis-libs";
+ paths = [ zlib ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ];
+ };
};
sconsFlags = [
diff --git a/pkgs/by-name/nu/nushell-plugin-bson/package.nix b/pkgs/by-name/nu/nushell-plugin-bson/package.nix
index d0208edde789..df0ab8b9d969 100644
--- a/pkgs/by-name/nu/nushell-plugin-bson/package.nix
+++ b/pkgs/by-name/nu/nushell-plugin-bson/package.nix
@@ -23,7 +23,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
llvmPackages.libclang
];
- LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
+ env.LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
passthru.update-script = nix-update-script { };
meta = {
diff --git a/pkgs/by-name/op/opentabletdriver/package.nix b/pkgs/by-name/op/opentabletdriver/package.nix
index f3b81bd51a94..ea6735f171dc 100644
--- a/pkgs/by-name/op/opentabletdriver/package.nix
+++ b/pkgs/by-name/op/opentabletdriver/package.nix
@@ -67,7 +67,7 @@ buildDotnetModule (finalAttrs: {
buildInputs = finalAttrs.runtimeDeps;
- OTD_CONFIGURATIONS = "${finalAttrs.src}/OpenTabletDriver.Configurations/Configurations";
+ env.OTD_CONFIGURATIONS = "${finalAttrs.src}/OpenTabletDriver.Configurations/Configurations";
doCheck = true;
testProjectFile = "OpenTabletDriver.Tests/OpenTabletDriver.Tests.csproj";
diff --git a/pkgs/by-name/op/openzwave/package.nix b/pkgs/by-name/op/openzwave/package.nix
index 1d27e9bf8640..a593b6c93ed4 100644
--- a/pkgs/by-name/op/openzwave/package.nix
+++ b/pkgs/by-name/op/openzwave/package.nix
@@ -46,8 +46,10 @@ stdenv.mkDerivation {
"PREFIX=${placeholder "out"}"
];
- FONTCONFIG_FILE = "${fontconfig.out}/etc/fonts/fonts.conf";
- FONTCONFIG_PATH = "${fontconfig.out}/etc/fonts/";
+ env = {
+ FONTCONFIG_FILE = "${fontconfig.out}/etc/fonts/fonts.conf";
+ FONTCONFIG_PATH = "${fontconfig.out}/etc/fonts/";
+ };
postPatch = ''
substituteInPlace cpp/src/Options.cpp \
diff --git a/pkgs/by-name/pa/pacu/package.nix b/pkgs/by-name/pa/pacu/package.nix
index f9a9f1d4914e..64b5a12279f0 100644
--- a/pkgs/by-name/pa/pacu/package.nix
+++ b/pkgs/by-name/pa/pacu/package.nix
@@ -13,14 +13,14 @@ let
in
python.pkgs.buildPythonApplication (finalAttrs: {
pname = "pacu";
- version = "1.6.1";
+ version = "1.6.2";
pyproject = true;
src = fetchFromGitHub {
owner = "RhinoSecurityLabs";
repo = "pacu";
tag = "v${finalAttrs.version}";
- hash = "sha256-Td5H4O6/7Gh/rvP191xjCJmIbyc4ezZC5Fh4FZ39ZUM=";
+ hash = "sha256-Hrks6mvvmmdCMxprB/SPlkfcSu6uyoEVtb0eUD3CALo=";
};
pythonRelaxDeps = [
diff --git a/pkgs/by-name/pa/parseable/package.nix b/pkgs/by-name/pa/parseable/package.nix
index b9ad8934f384..e69eb7bdd8e1 100644
--- a/pkgs/by-name/pa/parseable/package.nix
+++ b/pkgs/by-name/pa/parseable/package.nix
@@ -21,7 +21,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
hash = "sha256-Asb6064TqvL9kNkWBMj4Z+1j1yIM+iBWsN+R5EuMOVA=";
};
- LOCAL_ASSETS_PATH = fetchzip {
+ env.LOCAL_ASSETS_PATH = fetchzip {
url = "https://parseable-prism-build.s3.us-east-2.amazonaws.com/v${finalAttrs.version}/build.zip";
hash = "sha256-gWzfucetsJJSSjI9nGm7I8xLo0t1VKb4AertiEGuLWA=";
};
diff --git a/pkgs/by-name/pd/pdfslicer/package.nix b/pkgs/by-name/pd/pdfslicer/package.nix
index b2834f28cdcf..de9635d0b3bb 100644
--- a/pkgs/by-name/pd/pdfslicer/package.nix
+++ b/pkgs/by-name/pd/pdfslicer/package.nix
@@ -56,9 +56,10 @@ stdenv.mkDerivation (finalAttrs: {
qpdf
];
- CXXFLAGS =
+ env = lib.optionalAttrs (stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.version "13") {
# Pending upstream compatibility with GCC 13
- lib.optional (stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.version "13") "-Wno-changes-meaning";
+ CXXFLAGS = "-Wno-changes-meaning";
+ };
meta = {
description = "Simple application to extract, merge, rotate and reorder pages of PDF documents";
diff --git a/pkgs/by-name/pi/pixieditor/deps.json b/pkgs/by-name/pi/pixieditor/deps.json
index e9fa64d94cb5..24900dfa0d0f 100644
--- a/pkgs/by-name/pi/pixieditor/deps.json
+++ b/pkgs/by-name/pi/pixieditor/deps.json
@@ -249,6 +249,11 @@
"version": "6.9.0",
"hash": "sha256-MwPAPFD/gs9WZ8gB5BQMEwYswd3EEIpLlvMN5vmz1Wc="
},
+ {
+ "pname": "DeviceId.Mac",
+ "version": "6.9.0",
+ "hash": "sha256-bQ59eaeDGRgk4ow7bk7U9yEnJgiV2Ok9U3fbBIOdRVw="
+ },
{
"pname": "DiscordRichPresence",
"version": "1.3.0.28",
diff --git a/pkgs/by-name/pi/pixieditor/package.nix b/pkgs/by-name/pi/pixieditor/package.nix
index 7221d9d3564d..ffd013ab9fb1 100644
--- a/pkgs/by-name/pi/pixieditor/package.nix
+++ b/pkgs/by-name/pi/pixieditor/package.nix
@@ -23,6 +23,7 @@
makeDesktopItem,
copyDesktopItems,
+ desktopToDarwinBundle,
nix-update-script,
}:
@@ -70,6 +71,9 @@ buildDotnetModule (finalAttrs: {
nativeBuildInputs = [
copyDesktopItems
+ ]
+ ++ lib.optionals stdenv.hostPlatform.isDarwin [
+ desktopToDarwinBundle
];
buildInputs = [
@@ -85,15 +89,20 @@ buildDotnetModule (finalAttrs: {
dotnet-sdk = dotnetCorePackages.sdk_8_0;
dotnet-runtime = dotnetCorePackages.runtime_8_0;
- dotnetFlags =
- lib.optionals stdenv.hostPlatform.isx86_64 [ "-p:Runtimeidentifier=linux-x64" ]
- ++ lib.optionals stdenv.hostPlatform.isAarch64 [ "-p:Runtimeidentifier=linux-arm64" ];
+ dotnetFlags = [
+ "-p:RuntimeIdentifier=${dotnetCorePackages.systemToDotnetRid stdenv.hostPlatform.system}"
+ ];
buildType = "ReleaseNoUpdate";
projectFile = [
"src/PixiEditor.Desktop/PixiEditor.Desktop.csproj"
"src/PixiEditor/PixiEditor.csproj"
- "src/PixiEditor.Linux/PixiEditor.Linux.csproj"
+ (
+ if stdenv.hostPlatform.isLinux then
+ "src/PixiEditor.Linux/PixiEditor.Linux.csproj"
+ else
+ "src/PixiEditor.MacOs/PixiEditor.MacOs.csproj"
+ )
"src/PixiEditor.Platform.Standalone/PixiEditor.Platform.Standalone.csproj"
];
executables = [ "PixiEditor.Desktop" ];
@@ -183,6 +192,8 @@ buildDotnetModule (finalAttrs: {
platforms = [
"x86_64-linux"
"aarch64-linux"
+ "x86_64-darwin"
+ "aarch64-darwin"
];
};
})
diff --git a/pkgs/by-name/pm/pmacct/package.nix b/pkgs/by-name/pm/pmacct/package.nix
index 491735246210..e58d1558dd26 100644
--- a/pkgs/by-name/pm/pmacct/package.nix
+++ b/pkgs/by-name/pm/pmacct/package.nix
@@ -68,7 +68,7 @@ stdenv.mkDerivation (finalAttrs: {
]
++ lib.optional gnutlsSupport gnutls;
- MYSQL_CONFIG = lib.optionalString withMysql "${lib.getDev libmysqlclient}/bin/mysql_config";
+ env.MYSQL_CONFIG = lib.optionalString withMysql "${lib.getDev libmysqlclient}/bin/mysql_config";
configureFlags = [
"--with-pcap-includes=${libpcap}/include"
diff --git a/pkgs/by-name/po/poco/package.nix b/pkgs/by-name/po/poco/package.nix
index 3d6dd586095f..fd6eb26914f9 100644
--- a/pkgs/by-name/po/poco/package.nix
+++ b/pkgs/by-name/po/poco/package.nix
@@ -52,8 +52,10 @@ stdenv.mkDerivation rec {
"dev"
];
- MYSQL_DIR = libmysqlclient;
- MYSQL_INCLUDE_DIR = "${MYSQL_DIR}/include/mysql";
+ env = {
+ MYSQL_DIR = libmysqlclient;
+ MYSQL_INCLUDE_DIR = "${env.MYSQL_DIR}/include/mysql";
+ };
cmakeFlags =
let
diff --git a/pkgs/by-name/po/podman-desktop/package.nix b/pkgs/by-name/po/podman-desktop/package.nix
index 2786cd00360b..3ff7d7425ec6 100644
--- a/pkgs/by-name/po/podman-desktop/package.nix
+++ b/pkgs/by-name/po/podman-desktop/package.nix
@@ -75,7 +75,7 @@ stdenv.mkDerivation (finalAttrs: {
./system-defaults-dir.patch
];
- ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
+ env.ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
nativeBuildInputs = [
makeBinaryWrapper
diff --git a/pkgs/by-name/pr/prisma-engines_7/package.nix b/pkgs/by-name/pr/prisma-engines_7/package.nix
index 39b5444528b9..9bcc16bc61bd 100644
--- a/pkgs/by-name/pr/prisma-engines_7/package.nix
+++ b/pkgs/by-name/pr/prisma-engines_7/package.nix
@@ -23,7 +23,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
cargoHash = "sha256-U5d/HkuWnD/XSrAJr5AYh+WPVGDOcK/e4sC0udPZoyU=";
# Use system openssl.
- OPENSSL_NO_VENDOR = 1;
+ env.OPENSSL_NO_VENDOR = 1;
nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/by-name/pr/proj/package.nix b/pkgs/by-name/pr/proj/package.nix
index 610fcb26d9bf..7c2529f008fe 100644
--- a/pkgs/by-name/pr/proj/package.nix
+++ b/pkgs/by-name/pr/proj/package.nix
@@ -59,9 +59,11 @@ stdenv.mkDerivation (finalAttrs: {
"-DNLOHMANN_JSON_ORIGIN=external"
"-DEXE_SQLITE3=${buildPackages.sqlite}/bin/sqlite3"
];
- CXXFLAGS = [
+
+ env.CXXFLAGS = toString [
# GCC 13: error: 'int64_t' in namespace 'std' does not name a type
- "-include cstdint"
+ "-include"
+ "cstdint"
];
preCheck =
diff --git a/pkgs/by-name/pr/protoc-gen-js/package.nix b/pkgs/by-name/pr/protoc-gen-js/package.nix
index 57ede878199f..324ad5d431b2 100644
--- a/pkgs/by-name/pr/protoc-gen-js/package.nix
+++ b/pkgs/by-name/pr/protoc-gen-js/package.nix
@@ -40,7 +40,9 @@ buildBazelPackage' rec {
removeRulesCC = false;
removeLocalConfigCC = false;
- LIBTOOL = lib.optionalString stdenv.hostPlatform.isDarwin "${cctools}/bin/libtool";
+ env = lib.optionalAttrs stdenv.hostPlatform.isDarwin {
+ LIBTOOL = "${cctools}/bin/libtool";
+ };
fetchAttrs = {
preInstall = ''
diff --git a/pkgs/by-name/pr/proxysql/package.nix b/pkgs/by-name/pr/proxysql/package.nix
index 885bf4d5de3d..373a1bab4b58 100644
--- a/pkgs/by-name/pr/proxysql/package.nix
+++ b/pkgs/by-name/pr/proxysql/package.nix
@@ -77,7 +77,7 @@ stdenv.mkDerivation (finalAttrs: {
enableParallelBuilding = true;
- GIT_VERSION = finalAttrs.version;
+ env.GIT_VERSION = finalAttrs.version;
dontConfigure = true;
diff --git a/pkgs/by-name/ps/pspp/package.nix b/pkgs/by-name/ps/pspp/package.nix
index 3ef4dbbe2423..bb720dc07489 100644
--- a/pkgs/by-name/ps/pspp/package.nix
+++ b/pkgs/by-name/ps/pspp/package.nix
@@ -55,9 +55,11 @@ stdenv.mkDerivation rec {
iconv
];
- C_INCLUDE_PATH =
- "${libxml2.dev}/include/libxml2/:" + lib.makeSearchPathOutput "dev" "include" buildInputs;
- LIBRARY_PATH = lib.makeLibraryPath buildInputs;
+ env = {
+ C_INCLUDE_PATH =
+ "${libxml2.dev}/include/libxml2/:" + lib.makeSearchPathOutput "dev" "include" buildInputs;
+ LIBRARY_PATH = lib.makeLibraryPath buildInputs;
+ };
doCheck = false;
diff --git a/pkgs/by-name/qc/qcdnum/package.nix b/pkgs/by-name/qc/qcdnum/package.nix
index 0b147eddce75..96887b55ff2c 100644
--- a/pkgs/by-name/qc/qcdnum/package.nix
+++ b/pkgs/by-name/qc/qcdnum/package.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [ gfortran ];
buildInputs = [ zlib ];
- FFLAGS = [
+ env.FFLAGS = toString [
"-std=legacy" # fix build with gfortran 10
];
diff --git a/pkgs/by-name/ra/rapidfuzz-cpp/package.nix b/pkgs/by-name/ra/rapidfuzz-cpp/package.nix
index 3df57342a13e..348a309d47a3 100644
--- a/pkgs/by-name/ra/rapidfuzz-cpp/package.nix
+++ b/pkgs/by-name/ra/rapidfuzz-cpp/package.nix
@@ -26,10 +26,13 @@ stdenv.mkDerivation (finalAttrs: {
"-DRAPIDFUZZ_BUILD_TESTING=ON"
];
- CXXFLAGS = lib.optionals stdenv.cc.isClang [
- # error: no member named 'fill' in namespace 'std'
- "-include algorithm"
- ];
+ env = lib.optionalAttrs stdenv.cc.isClang {
+ CXXFLAGS = toString [
+ # error: no member named 'fill' in namespace 'std'
+ "-include"
+ "algorithm"
+ ];
+ };
nativeCheckInputs = [
catch2_3
diff --git a/pkgs/by-name/rc/rcs/package.nix b/pkgs/by-name/rc/rcs/package.nix
index 839c47a30bbe..73fec8b194e5 100644
--- a/pkgs/by-name/rc/rcs/package.nix
+++ b/pkgs/by-name/rc/rcs/package.nix
@@ -17,16 +17,17 @@ stdenv.mkDerivation (finalAttrs: {
sha256 = "sha256-Q93+EHJKi4XiRo9kA7YABzcYbwHmDgvWL95p2EIjTMU=";
};
- ac_cv_path_ED = "${ed}/bin/ed";
- DIFF = "${diffutils}/bin/diff";
- DIFF3 = "${diffutils}/bin/diff3";
-
disallowedReferences = lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
buildPackages.diffutils
buildPackages.ed
];
- env.NIX_CFLAGS_COMPILE = "-std=c99";
+ env = {
+ NIX_CFLAGS_COMPILE = "-std=c99";
+ ac_cv_path_ED = "${ed}/bin/ed";
+ DIFF = "${diffutils}/bin/diff";
+ DIFF3 = "${diffutils}/bin/diff3";
+ };
hardeningDisable = lib.optional stdenv.cc.isClang "format";
diff --git a/pkgs/by-name/re/readeck/package.nix b/pkgs/by-name/re/readeck/package.nix
index 55ff948ef227..80d53127f561 100644
--- a/pkgs/by-name/re/readeck/package.nix
+++ b/pkgs/by-name/re/readeck/package.nix
@@ -27,7 +27,7 @@ buildGoModule (finalAttrs: {
npmRoot = "web";
- NODE_PATH = "$npmDeps";
+ env.NODE_PATH = "$npmDeps";
preBuild = ''
make generate
diff --git a/pkgs/by-name/re/renode-bin/package.nix b/pkgs/by-name/re/renode-bin/package.nix
index edf34d337346..d8314e908541 100644
--- a/pkgs/by-name/re/renode-bin/package.nix
+++ b/pkgs/by-name/re/renode-bin/package.nix
@@ -51,11 +51,11 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "renode";
- version = "1.16.0";
+ version = "1.16.1";
src = fetchurl {
url = "https://github.com/renode/renode/releases/download/v${finalAttrs.version}/renode-${finalAttrs.version}.linux-dotnet.tar.gz";
- hash = "sha256-oNlTz5LBggPkjKM4TJO2UDKQdt2Ga7rBTdgyGjN8/zA=";
+ hash = "sha256-YmKcqjMe1L1Ot6vhPuLkg0+8qnDeSS2zll+vpO3FaU8=";
};
nativeBuildInputs = [
diff --git a/pkgs/by-name/sa/sagoin/package.nix b/pkgs/by-name/sa/sagoin/package.nix
index 1b75e28938fd..73452dc2f3bf 100644
--- a/pkgs/by-name/sa/sagoin/package.nix
+++ b/pkgs/by-name/sa/sagoin/package.nix
@@ -25,7 +25,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
installShellCompletion artifacts/sagoin.{bash,fish} --zsh artifacts/_sagoin
'';
- GEN_ARTIFACTS = "artifacts";
+ env.GEN_ARTIFACTS = "artifacts";
meta = {
description = "Command-line submission tool for the UMD CS Submit Server";
diff --git a/pkgs/by-name/sc/scite/package.nix b/pkgs/by-name/sc/scite/package.nix
index 94865c79ca06..c73a7f6b132e 100644
--- a/pkgs/by-name/sc/scite/package.nix
+++ b/pkgs/by-name/sc/scite/package.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation (finalAttrs: {
"prefix=${placeholder "out"}"
];
- CXXFLAGS = [
+ env.CXXFLAGS = toString [
# GCC 13: error: 'intptr_t' does not name a type
"-include cstdint"
"-include system_error"
diff --git a/pkgs/by-name/se/search-vulns/package.nix b/pkgs/by-name/se/search-vulns/package.nix
index e419934a7a78..b669d34839ac 100644
--- a/pkgs/by-name/se/search-vulns/package.nix
+++ b/pkgs/by-name/se/search-vulns/package.nix
@@ -6,14 +6,14 @@
python3.pkgs.buildPythonApplication (finalAttrs: {
pname = "search-vulns";
- version = "1.0.2";
+ version = "1.0.4";
pyproject = true;
src = fetchFromGitHub {
owner = "ra1nb0rn";
repo = "search_vulns";
tag = "v${finalAttrs.version}";
- hash = "sha256-xdZq4Er+0CT59Iv0mEcmkZcUM+xbBi/x+TtBNCiyhbY=";
+ hash = "sha256-lQyd5FmiBlno+BEXou70XOAv1hkwxIs0BCoNESYjjZM=";
fetchSubmodules = true;
};
diff --git a/pkgs/by-name/se/send/package.nix b/pkgs/by-name/se/send/package.nix
index 9c6ebdbb96b7..51486020a37c 100644
--- a/pkgs/by-name/se/send/package.nix
+++ b/pkgs/by-name/se/send/package.nix
@@ -28,14 +28,14 @@ buildNpmPackage rec {
env = {
PUPPETEER_SKIP_CHROMIUM_DOWNLOAD = "true";
+
+ NODE_OPTIONS = "--openssl-legacy-provider";
};
makeCacheWritable = true;
npmPackFlags = [ "--ignore-scripts" ];
- NODE_OPTIONS = "--openssl-legacy-provider";
-
postInstall = ''
cp -r dist $out/lib/node_modules/send/
ln -s $out/lib/node_modules/send/dist/version.json $out/lib/node_modules/send/version.json
diff --git a/pkgs/by-name/se/server-box/package.nix b/pkgs/by-name/se/server-box/package.nix
index 3057a4975dee..e32c77a8af7b 100644
--- a/pkgs/by-name/se/server-box/package.nix
+++ b/pkgs/by-name/se/server-box/package.nix
@@ -36,7 +36,7 @@ flutter338.buildFlutterApplication {
];
# https://github.com/juliansteenbakker/flutter_secure_storage/issues/965
- CXXFLAGS = [ "-Wno-deprecated-literal-operator" ];
+ env.CXXFLAGS = toString [ "-Wno-deprecated-literal-operator" ];
desktopItems = [
(makeDesktopItem {
diff --git a/pkgs/by-name/sh/sharing/package.nix b/pkgs/by-name/sh/sharing/package.nix
index dcad6dd71b16..185080b2c5da 100644
--- a/pkgs/by-name/sh/sharing/package.nix
+++ b/pkgs/by-name/sh/sharing/package.nix
@@ -22,7 +22,7 @@ buildNpmPackage rec {
# The prepack script runs the build script, which we'd rather do in the build phase.
npmPackFlags = [ "--ignore-scripts" ];
- NODE_OPTIONS = "--openssl-legacy-provider";
+ env.NODE_OPTIONS = "--openssl-legacy-provider";
meta = {
description = "Command-line tool to share directories and files to mobile devices";
diff --git a/pkgs/by-name/si/sirius/package.nix b/pkgs/by-name/si/sirius/package.nix
index d352d6d571fd..102acd62b3ff 100644
--- a/pkgs/by-name/si/sirius/package.nix
+++ b/pkgs/by-name/si/sirius/package.nix
@@ -133,7 +133,7 @@ stdenv.mkDerivation (finalAttrs: {
]
);
- CXXFLAGS = [
+ env.CXXFLAGS = toString [
# GCC 13: error: 'uintptr_t' in namespace 'std' does not name a type
"-include cstdint"
];
diff --git a/pkgs/by-name/sm/smlpkg/package.nix b/pkgs/by-name/sm/smlpkg/package.nix
index 5f9123f7a528..b5d66880f220 100644
--- a/pkgs/by-name/sm/smlpkg/package.nix
+++ b/pkgs/by-name/sm/smlpkg/package.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [ mlton ];
# Set as an environment variable in all the phase scripts.
- MLCOMP = "mlton";
+ env.MLCOMP = "mlton";
buildFlags = [ "all" ];
installFlags = [ "prefix=$(out)" ];
diff --git a/pkgs/by-name/sp/spdx-license-list-data/package.nix b/pkgs/by-name/sp/spdx-license-list-data/package.nix
index d6dba6e518dc..de5505415de6 100644
--- a/pkgs/by-name/sp/spdx-license-list-data/package.nix
+++ b/pkgs/by-name/sp/spdx-license-list-data/package.nix
@@ -3,18 +3,7 @@
lib,
fetchFromGitHub,
}:
-
-stdenvNoCC.mkDerivation rec {
- pname = "spdx-license-list-data";
- version = "3.27.0";
-
- src = fetchFromGitHub {
- owner = "spdx";
- repo = "license-list-data";
- rev = "v${version}";
- hash = "sha256-TRrsxk+gtxI9KqJvFzD0Cfy1h5cZAJ2kT9KUARjlXcY=";
- };
-
+let
# List of file formats to package.
_types = [
"html"
@@ -27,6 +16,17 @@ stdenvNoCC.mkDerivation rec {
"template"
"text"
];
+in
+stdenvNoCC.mkDerivation (finalAttrs: {
+ pname = "spdx-license-list-data";
+ version = "3.27.0";
+
+ src = fetchFromGitHub {
+ owner = "spdx";
+ repo = "license-list-data";
+ tag = "v${finalAttrs.version}";
+ hash = "sha256-TRrsxk+gtxI9KqJvFzD0Cfy1h5cZAJ2kT9KUARjlXcY=";
+ };
outputs = [ "out" ] ++ _types;
@@ -38,7 +38,7 @@ stdenvNoCC.mkDerivation rec {
runHook preInstall
mkdir -pv $out
- for t in $_types
+ for t in ${lib.concatStringsSep " " _types}
do
_outpath=''${!t}
mkdir -pv $_outpath
@@ -60,4 +60,4 @@ stdenvNoCC.mkDerivation rec {
];
platforms = lib.platforms.all;
};
-}
+})
diff --git a/pkgs/by-name/sp/sphinxsearch/package.nix b/pkgs/by-name/sp/sphinxsearch/package.nix
index 8be034f42a33..87cd529882aa 100644
--- a/pkgs/by-name/sp/sphinxsearch/package.nix
+++ b/pkgs/by-name/sp/sphinxsearch/package.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation (finalAttrs: {
expat
];
- CXXFLAGS = "-std=c++98";
+ env.CXXFLAGS = "-std=c++98";
meta = {
description = "Open source full text search server";
diff --git a/pkgs/by-name/sq/sql-formatter/package.nix b/pkgs/by-name/sq/sql-formatter/package.nix
index 4671dd6f57e8..56514cdba7fb 100644
--- a/pkgs/by-name/sq/sql-formatter/package.nix
+++ b/pkgs/by-name/sq/sql-formatter/package.nix
@@ -11,13 +11,13 @@
}:
stdenv.mkDerivation (finalAttrs: {
pname = "sql-formatter";
- version = "15.7.0";
+ version = "15.7.2";
src = fetchFromGitHub {
owner = "sql-formatter-org";
repo = "sql-formatter";
rev = "v${finalAttrs.version}";
- hash = "sha256-k105xoppmxW1jSbkzbqHF7bg/IbY1P9kZVwa3pdKF7k=";
+ hash = "sha256-0EV35Hz+xyNfKEYMAMIkYNjE3erN1G6db+A9i4hNrJY=";
};
yarnOfflineCache = fetchYarnDeps {
diff --git a/pkgs/by-name/sq/squeezelite/package.nix b/pkgs/by-name/sq/squeezelite/package.nix
index 46a973d744d3..38d6f1cd6c56 100644
--- a/pkgs/by-name/sq/squeezelite/package.nix
+++ b/pkgs/by-name/sq/squeezelite/package.nix
@@ -72,23 +72,31 @@ stdenv.mkDerivation {
--replace "" ""
'';
- EXECUTABLE = binName;
+ env = {
+ EXECUTABLE = binName;
- OPTS = [
- "-DLINKALL"
- "-DGPIO"
- ]
- ++ optional dsdSupport "-DDSD"
- ++ optional (!faad2Support) "-DNO_FAAD"
- ++ optional ffmpegSupport "-DFFMPEG"
- ++ optional opusSupport "-DOPUS"
- ++ optional portaudioSupport "-DPORTAUDIO"
- ++ optional pulseSupport "-DPULSEAUDIO"
- ++ optional resampleSupport "-DRESAMPLE"
- ++ optional sslSupport "-DUSE_SSL"
- ++ optional (stdenv.hostPlatform.isAarch32 or stdenv.hostPlatform.isAarch64) "-DRPI";
-
- env = lib.optionalAttrs stdenv.hostPlatform.isDarwin { LDADD = "-lportaudio -lpthread"; };
+ OPTS = toString (
+ [
+ "-DLINKALL"
+ "-DGPIO"
+ ]
+ ++ optional dsdSupport "-DDSD"
+ ++ optional (!faad2Support) "-DNO_FAAD"
+ ++ optional ffmpegSupport "-DFFMPEG"
+ ++ optional opusSupport "-DOPUS"
+ ++ optional portaudioSupport "-DPORTAUDIO"
+ ++ optional pulseSupport "-DPULSEAUDIO"
+ ++ optional resampleSupport "-DRESAMPLE"
+ ++ optional sslSupport "-DUSE_SSL"
+ ++ optional (stdenv.hostPlatform.isAarch32 or stdenv.hostPlatform.isAarch64) "-DRPI"
+ );
+ }
+ // lib.optionalAttrs stdenv.hostPlatform.isDarwin {
+ LDADD = toString [
+ "-lportaudio"
+ "-lpthread"
+ ];
+ };
installPhase = ''
runHook preInstall
diff --git a/pkgs/by-name/st/stalwart/webadmin.nix b/pkgs/by-name/st/stalwart/webadmin.nix
index d62ee5258c28..323a4833303a 100644
--- a/pkgs/by-name/st/stalwart/webadmin.nix
+++ b/pkgs/by-name/st/stalwart/webadmin.nix
@@ -51,7 +51,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
zip
];
- NODE_PATH = "$npmDeps";
+ env.NODE_PATH = "$npmDeps";
buildPhase = ''
trunk build --offline --frozen --release
diff --git a/pkgs/by-name/su/superTuxKart/package.nix b/pkgs/by-name/su/superTuxKart/package.nix
index 8ece4444bad2..b6fae7be863e 100644
--- a/pkgs/by-name/su/superTuxKart/package.nix
+++ b/pkgs/by-name/su/superTuxKart/package.nix
@@ -125,7 +125,7 @@ stdenv.mkDerivation (finalAttrs: {
"-DOpenGL_GL_PREFERENCE=GLVND"
];
- CXXFLAGS = [
+ env.CXXFLAGS = toString [
# GCC 13: error: 'snprintf' was not declared in this scope
"-include cstdio"
# GCC 13: error: 'runtime_error' is not a member of 'std'
diff --git a/pkgs/by-name/sw/swagger-typescript-api/missing-hashes.json b/pkgs/by-name/sw/swagger-typescript-api/missing-hashes.json
deleted file mode 100644
index e69a0ea7abd4..000000000000
--- a/pkgs/by-name/sw/swagger-typescript-api/missing-hashes.json
+++ /dev/null
@@ -1,72 +0,0 @@
-{
- "@biomejs/cli-darwin-arm64@npm:2.2.6": "38ade81bfc2cf3c981fc6c06f15d41faefec1eed3be7a9c856304db9d0010700769479e2df16f7f421bf335a910b72fa1bf5185f30dd8372d416972a623c7841",
- "@biomejs/cli-darwin-x64@npm:2.2.6": "42d5a3ca874969d3e1d72a7151f1ef3a40cb887f8c6c315a1898cf53f8a825eeb1419fbc691adf1551ec06355cf4c11f5400ecb42720e63a44c5c5b0db6f1cbc",
- "@biomejs/cli-linux-arm64-musl@npm:2.2.6": "866839019a2a5ad2e731a4f04c1effdeb41a2559e04639ecc33bbc119c0d217175dd8e972ec54d34f84edea8db00ee75fda7bca44bbdcba5495ebffbaf3dc709",
- "@biomejs/cli-linux-arm64@npm:2.2.6": "18db4d7c04347b2095584b9ed851234aeb31599a112176418d8b29d3dcc73f6e2b4a759e3c20b3a0440d57b6656056c418f8b9f52aad5e1bbb02385f97792bee",
- "@biomejs/cli-linux-x64-musl@npm:2.2.6": "b43573c8cda9b9026d911931b8fd517a0e1f661ff6529ad718852cc8716a68632361d06f1c14bcc73fd600c69aeb7542680ac66a46a2461f6a4a645e7cef1d9b",
- "@biomejs/cli-linux-x64@npm:2.2.6": "06f32d1d001eb09d9783587318f94fa52c3055826c0b835f48c18fc480aecfd311bcc0ddac678c709949f3b99b1283450cb073bbcc8b1631c39877d7264ac62e",
- "@biomejs/cli-win32-arm64@npm:2.2.6": "fbdbb024198c027edc2043e1f6416592263624a4534768a98a46b359bfa813e9b919e2bb89f10114b7bfd7e78d29b298773262a255c924555096b39df9d35323",
- "@biomejs/cli-win32-x64@npm:2.2.6": "7ceac86065c5e7c765993d4b300fd29c710678d2c65ea4394ed68ccf6ae1fa5133730829a7db8915dfb2877792093b8d5fe6eaea3ed727826ee5e2ac11530274",
- "@esbuild/aix-ppc64@npm:0.25.11": "46c2697b0e5bf6a1d1d57e80358ee04fcb0d59a1c6648759ec94e12a83af50d35ecf2469cf7c5643f85a9b2c5b2f91173bc6485ebec9bb9add4a6b30b5dab95c",
- "@esbuild/android-arm64@npm:0.25.11": "cc45d931e813767a15ad6e7fd6071c97865a2e9aaa0d3a78374da452d303dbea71a4f13c63426b01f71ce3c10dd208f9382e6387505111adaf631e39749aa404",
- "@esbuild/android-arm@npm:0.25.11": "b8ee90079d3d6c02b732529b04d2e6c017d12b2c401f2f8d6e60ec5fb1060d819edde5429acfbc7471b2224b4457de8cb99b97bea4164e94a3da2cbf121e60a4",
- "@esbuild/android-x64@npm:0.25.11": "c03182ed17c50ab29973b19814cbdee85ff67ba00e13f001fafabcf7538d061fd737a783fc4131f96e22b2e7bed26936e5e730b717bb88ffb0b8c429fadd6536",
- "@esbuild/darwin-arm64@npm:0.25.11": "67114421780e01c947d3a646d9737d5965e2bf39ea75a2440d614971b7b2565a8cc91c39780f5b86adc25cdc466bbf1ade79a05cef71827e3f3a2be00435d868",
- "@esbuild/darwin-x64@npm:0.25.11": "da5612584d5fc2e714efc0876826fa45a48fa3b881be4a728516f2394c6aeb72f6ca8ce08272106c24ea6a9b040513afd847b4ea9bfcc5a6637e427a1634acd7",
- "@esbuild/freebsd-arm64@npm:0.25.11": "8ad357e0b7605a320d428b10ab704a2f34383786bb43e663ebb62ded22297343c72149ab126257629308195cd18b4828f9b90579b224c26d2ca56f416dcb3e48",
- "@esbuild/freebsd-x64@npm:0.25.11": "a42ea4c6801eb2ff09b0f1e67a04b2d4a00da9dc08233a8dc227b25468efa954ea13478bd2f2dad46bf78e8d1ec3cf11b1edbc1b50af7e61da05e715f0ea0fc7",
- "@esbuild/linux-arm64@npm:0.25.11": "c8f87df1d15ff5c835d782e26213bb28653eed9388351e42c073431ffa8e3606fa8e0670ccb0df325f56a9695782b34c98af2fe30756953a883f9da63d1eb42a",
- "@esbuild/linux-arm@npm:0.25.11": "122d069ed8332d3eb6e3f0d99c7f25d8920d6aff3655013d6bc2f3666fcba85ae074402b54f3a2ca9a3a3a9cd54350fac1f56252d84d466daefca7a8dc82975b",
- "@esbuild/linux-ia32@npm:0.25.11": "dbd90c3efbbb33b920abb3f3def4a61fcff258b8a60289c61c0ba6d5210fae8fd569af991ff9aaebe03b3c24a0c67a5fd74d8e32e8fd7c5a0dbf1898aeeb2bf3",
- "@esbuild/linux-loong64@npm:0.25.11": "c58d14d84cf4f024f5cc585efd759b161ec4122767d94500578cf32f9649542ab7e7b5e2b88389d774d4544d50a39ba1e0d791793170643645ec6a2eb8836ffe",
- "@esbuild/linux-mips64el@npm:0.25.11": "5a3f4ccefe0d8ed30806a6984b7b6cee17e2f2a14d3f6d64c37f05f78f6dddd04821fd5ff4d61044ce23c0206a8fd4f1535a90d534e26cb5e90c8c04d1203a0a",
- "@esbuild/linux-ppc64@npm:0.25.11": "e35d0a4e54f7d48aa931abe6211b7fc374291b26cd59849fff938499114b5b34e3da15b71e67b76f83c1d712d6f78a50255d8b96bacaad8df233771126544ebe",
- "@esbuild/linux-riscv64@npm:0.25.11": "4e932cf5950d97aec76aa5c52d7d15e7135f2b865414c97cd4410adc3f8b26e1588cda7a09222b92f54fff8c888180219e822b9a633c833098bb876b1e66ac02",
- "@esbuild/linux-s390x@npm:0.25.11": "af2b8a5c0a6147985b1d194a7c1323b4693b72ad5884de1292f045882b41436cf4e64828c18cdbf7b85763060404279cc070fbf74c00f9f82d8f35469b8c0073",
- "@esbuild/linux-x64@npm:0.25.11": "1e1fe2d9c8ae8ed76f3090ff2e4d3d084d581cc9298e349daf8addd398ae9b466a1817d9640202956d72479a82e602979ca364035d10e8cb6e2c2baf6e850081",
- "@esbuild/netbsd-arm64@npm:0.25.11": "03e86862f25a9d3ed05383031ab3430ba73b80e5a1617cf0b9f91ce2a4d5700125398722a4a6145299d6f3626caca556d30604bd24f88af1a289794822322814",
- "@esbuild/netbsd-x64@npm:0.25.11": "af848a8e720c5ba4fb63a748c657e366770e4f00a249dd4a0eb996bdafa0fcad7f04c88df3ed29cb1b488f76c4f7c3355e192ff71392c81d641dd52bc453355c",
- "@esbuild/openbsd-arm64@npm:0.25.11": "40d46a15da7643aa57ba7a61aa8174cc7ead37f67b3438eaeb407f6527712b848327a025484a57ce936debced507a2d405614e790491aa181f8178c09b8f2ad2",
- "@esbuild/openbsd-x64@npm:0.25.11": "8ee73b8cfe0b5d24433400bddcb20c3ceb2cab3d11112ba01c5ee799e3629d24267f6dcfcb2f3aef89726ddc5d10592e35ec46b9725cc9e297af3d8d35a3122b",
- "@esbuild/openharmony-arm64@npm:0.25.11": "bf2fa9985a1aaba0a4376657e72e73c7d5368d0a1972e12788ec276384e6a20637904c5d07b52a9f10306735898730dbebd55a6234cc0cd30962ee130c7b9a8b",
- "@esbuild/sunos-x64@npm:0.25.11": "7ac357650fadc4ad44a0615a184920734ab5f4432ddd913bef2cf4e4ef7855f7ffd1995cfabb323c10cb9b876f252cf3f7938b4450cfa9ce3b1488e47d91b6cf",
- "@esbuild/win32-arm64@npm:0.25.11": "01a7db317fecb784cd273ddfb0f3eb35871709904cc879adfbeca139cb33fbe8db6d33ee53ae4eb3b4185ef9fb6d6f140d9ac0fcbbe61518cf546487d7430dcb",
- "@esbuild/win32-ia32@npm:0.25.11": "cdb90fcd780022685374b762b2f6fdd19501ff43c4b4b63b9b875cdb56d4c79b4747f36f4893ce57d3f0c520aaf30b0f31309e606bae14738300b22bbb30b1df",
- "@esbuild/win32-x64@npm:0.25.11": "a7b6080abc4d575c0572e880cefcb24faf89f7e48057652d6ab11e2e5b3fbd4555d27246ee281d5a1ac1f744a29ff90573e7075310e171ade9e2838665caefce",
- "@rolldown/binding-android-arm64@npm:1.0.0-beta.44": "3584478753a119db5c345c314b7a80a122fe1f4aa868773d5103942f62e81493f922f440c040af86902296b8343a418f8ff325f0336ca477c58a3f00a5fe92cd",
- "@rolldown/binding-darwin-arm64@npm:1.0.0-beta.44": "b3ffe5e3e54d7db2aa77ea24399016c934b68e3c4e7d5124ea90e85a7814e74ef933e07fd640ca0608fbf4a46f6db21087fa301ebf209883db8d0f43b97b5081",
- "@rolldown/binding-darwin-x64@npm:1.0.0-beta.44": "ecad93425fde8cbc0ab451592887f068fbd3b2e6e7c6a54c12e4f02dceb499ec584a5ebd854b94691e78ad1a097846e0328485adc7c8f69a66531001dfd3afa0",
- "@rolldown/binding-freebsd-x64@npm:1.0.0-beta.44": "4b397b3e5bf3ba2b3f4af648921bd027fbaf9859041b92aa36c9a60d4e25eb7f67da8812d61b80078957ffd2836d3a9618dfa6c4d1141e2c4eb1dd6d4b7a051c",
- "@rolldown/binding-linux-arm-gnueabihf@npm:1.0.0-beta.44": "0d2be4daa7358490a081769efc6bf5a7ef8007706bf8a54d354950214b4eff91b367f21f4cb4d05d0e0a3dc759528bf8d7eab7e482754c74321d66d612997f43",
- "@rolldown/binding-linux-arm64-gnu@npm:1.0.0-beta.44": "4a0d9d0e06fae39dcd984e5dcb858aa38d34d412e8472290593f3b907aac6e8c1e60b7659020b71063d469faa904dee78fb6678979292ddc7060e765cf0258a7",
- "@rolldown/binding-linux-arm64-musl@npm:1.0.0-beta.44": "3dfb95b4663bc950d1ed5f93162ed1b7a2cb02281f1ee82901844a9e22e34369dece54d5a9bbf9d3d2381407ca363b8536d236421a793dbd72350dc65d7bfc46",
- "@rolldown/binding-linux-x64-gnu@npm:1.0.0-beta.44": "d6329c568d9ccd363b215ebffff7b86df0a102d0dcf2b56e32a81e2d1961d052691d8a90e9df5dff3c819a0965635b3b5beb71e125fb7f385aebdf458b3f53a8",
- "@rolldown/binding-linux-x64-musl@npm:1.0.0-beta.44": "b0fd15a216b02ff03cb927e84802bc9d8454d5cafcc3561cb9f642997fd5869c6611bdbb5e3391d9d6866ea8b764876db8dcbab6a52017025f4f349c83c6a51f",
- "@rolldown/binding-openharmony-arm64@npm:1.0.0-beta.44": "e367f21610a6daf111f337824334474213172f4050d67bf4c7a29f69ba43e35733911cf4c44906b3170cdcaf9fb96ba6386eff29e02650109e11130da46dc53a",
- "@rolldown/binding-wasm32-wasi@npm:1.0.0-beta.44": "a53092c1338dfc25fc0447a223748ef5048058ee420fefda15e846131b31c3c8fc6d3f2e975467190905f91abccf8de570653aed77a147513d3dae7ff0004931",
- "@rolldown/binding-win32-arm64-msvc@npm:1.0.0-beta.44": "d985908536816c176699b21626ad57106af36a99d665437cf58f827f54491200763f2b47870c218ac3022d4a43c6ff5bb38438f81a18a1fc88fc837d9e53a459",
- "@rolldown/binding-win32-ia32-msvc@npm:1.0.0-beta.44": "f247d3a00caa1238fed18d6d7f884d02291e3fd570d987f50bf77b0886e767529dae2586093bfd820320eb0548cbdba6784f5b49afd49032a883bfc3f1ea19b4",
- "@rolldown/binding-win32-x64-msvc@npm:1.0.0-beta.44": "9f13f6cd9f6ba17c79a7c398c1931cd2e8321703d30aea0de56e5c6175e4979d96988ca941576d0d424e928e873625c5802d081498e8111e52382ada737656f2",
- "@rollup/rollup-android-arm-eabi@npm:4.52.5": "62451748fde2f4a8e8423b2e7f83fd0342e57433fa0f71d378ea38ed3f85dc6a0706ef9feae21d79428f4e274da45c07bc49eb1b3a82c08f6b98d8cf20de83f7",
- "@rollup/rollup-android-arm64@npm:4.52.5": "d050880ec4e14c0d1ab7e32e6a843c3f39b4161ddd574532482807e6e559e34dee8bfe3862bf06a62e79e46a410afaa3dafedc5e0db41db5cf39c10bbcf32330",
- "@rollup/rollup-darwin-arm64@npm:4.52.5": "4c7a2994ec5bb915b5b455a507b296c892c914ed0c0c3e8e1958d7e021dc47627a27c756f1628aca2e2ace8487dc93dd801483f0ec40f92603b6a788322e66ed",
- "@rollup/rollup-darwin-x64@npm:4.52.5": "fcdc3b7954afea6dc191a6244e793a32e8373e1798020d1cfcaf5da48bd23c533b661763d2dbfb87412bf5b1a59377ec06560f64da869126ab8c995391de9047",
- "@rollup/rollup-freebsd-arm64@npm:4.52.5": "f52788b616f5bc4c5edbc41ca2ac4fde7fbed678a0d2c3249111f4322a76550e682037563d07a0f07eb21f82289e9c5616c41797f3d9caa6d5b4261b8e1ce642",
- "@rollup/rollup-freebsd-x64@npm:4.52.5": "8fcb45fd9b7ec02848230cefac866bca73f38071e2e85e1217627007df211e814743e3e2525b236dc410acea7f7c4484050e2338391bda509bac34e7e0bc9ca4",
- "@rollup/rollup-linux-arm-gnueabihf@npm:4.52.5": "ff055f9efd2f8d1e1ced74a0defa0d089b54789f2b3d3d8f9261180059d6cd45fb895399c938c87467419ce1b37f7c50eaec333d5f140e7d8b53874cfba7bad9",
- "@rollup/rollup-linux-arm-musleabihf@npm:4.52.5": "2932799d8e79831d1f79032d2bced666503466a5d3b87e98a12f577400bad80dfb5ce2883318059c038d061319ed51ed58213bc9b253b3c60a1ac5ca3807ba46",
- "@rollup/rollup-linux-arm64-gnu@npm:4.52.5": "f2bf47b114856efd75e23baa3c3954fc2a8b864d678610fec5c2ecdab5736d1068fe3c813d29592a9de3f54c0de4055190670ef842333f5bc9e34e1221fb403e",
- "@rollup/rollup-linux-arm64-musl@npm:4.52.5": "26c8ded405da1a31c414677de84c261d1139cd7bf568e979036d39c613a2783bff559ba9cd4ebeda06c517d709050fea97ed65ca482316322984a1bad51ccc05",
- "@rollup/rollup-linux-loong64-gnu@npm:4.52.5": "3fec9dbb69d304495c40c26d49e736ae98ac173368ed0f0115fdf90b464e8bdd716b5a10f0458438a8ee31d5b13cb219ceff2ea0773537a87b597a3aaf6c0fbd",
- "@rollup/rollup-linux-ppc64-gnu@npm:4.52.5": "542b1171f910f3298a1f326ca6dfb41463ac8a9291f21502830a75217d91c38a0701517c4424c1d114b7fcba06b5fdc1ac95b9814ff542fc1c5741c965a12fc0",
- "@rollup/rollup-linux-riscv64-gnu@npm:4.52.5": "3f8a728b372d5cd2964281bdfe6184cd6dcff579681ea3a9bcb240d2fdaa0181a763f6f34930eae206d00c687cbecfa3d3b18b49bfdef0b772809fac80e007d8",
- "@rollup/rollup-linux-riscv64-musl@npm:4.52.5": "26b5a6d0983aeea544421d697787a540de653a84f948389280cfde0add366fa0fb7af4a5e67ca490a63a8fabca801f04b23a70bb948cbe06d48aa0ab0b3fff73",
- "@rollup/rollup-linux-s390x-gnu@npm:4.52.5": "6f4b1605d9cb191ec404ad2418f5fbc43d5585a83eeb33f8a8de6d2393e4ec85fb42a4e55da7d100bdd708e830e89b815d4e444f34b3002096370b1e1e80bee7",
- "@rollup/rollup-linux-x64-gnu@npm:4.52.5": "70fdee240db9c56c9a2a202450f4fb2b8cad059bb001c10cfc37b8ba1a333f1ad61b4a9bc01df005d9d0eb9c7ae57103c70c4ba58ef89942e11b0eb449cb3fd8",
- "@rollup/rollup-linux-x64-musl@npm:4.52.5": "871865574e0a5f79af49151685b1e243d43f0eb11100cffb9d835c4aa3423a471dfbb56ba7d16928eb11df7956e307c74d0b5cd872db711cd382bc36e487be9a",
- "@rollup/rollup-openharmony-arm64@npm:4.52.5": "15150989aa46138a5675962f1bfb01640a212e26976e799be4b0029c2e6f0e7a21b32754457b13dac05d02aa04814b6d0a6ee43dbf3473dc9fce00c7d8c0155f",
- "@rollup/rollup-win32-arm64-msvc@npm:4.52.5": "6433d349de33e71bb1cd11192ac58827630ef1b4eef79af40708cd7a8375922bfdcde69ed9e31309ae9b9224e3d9237ac00191a1c8406c7e3bbfa99d57baae00",
- "@rollup/rollup-win32-ia32-msvc@npm:4.52.5": "0da2d66ad1bc046a601b9de5a1266ba61a08e211df670d056451a58ee92a1a1de3739cfae853bf133c4204802ec7c72d2fae607f7ef31789e6124c23441f3f07",
- "@rollup/rollup-win32-x64-gnu@npm:4.52.5": "a7d3489e79f1cd8e4d34e784f3e32e9681170e4fc7d568cf43b31511c6b9c0e03db722c76baa595799c85ebd96a7e6ce66670ec00ed253e674d7e732a244c554",
- "@rollup/rollup-win32-x64-msvc@npm:4.52.5": "eb1c823b1e13f27b49321ae56f4c35710194d674034820f6c0b66a2309cbefaff7bc4a58e6c3fbb2453f8913f4aa1cc173cf9f6e9085df47f1922626630260da"
-}
diff --git a/pkgs/by-name/sw/swagger-typescript-api/package.nix b/pkgs/by-name/sw/swagger-typescript-api/package.nix
index b54a6c588812..0134079d766c 100644
--- a/pkgs/by-name/sw/swagger-typescript-api/package.nix
+++ b/pkgs/by-name/sw/swagger-typescript-api/package.nix
@@ -1,15 +1,19 @@
{
lib,
fetchFromGitHub,
- yarn-berry_4,
stdenv,
+ makeBinaryWrapper,
+ writableTmpDirAsHomeHook,
nodejs,
- makeWrapper,
+ bun,
}:
let
pname = "swagger-typescript-api";
- version = "13.2.16";
- yarn-berry = yarn-berry_4;
+ version = "13.2.18";
+
+ node-modules-hash = {
+ "x86_64-linux" = "sha256-IkJk9g5FdvNaBsXaazNg0YX5f2jb/KxHU7BSm0/u4cs=";
+ };
in
stdenv.mkDerivation (finalAttrs: {
inherit pname version;
@@ -17,27 +21,59 @@ stdenv.mkDerivation (finalAttrs: {
src = fetchFromGitHub {
owner = "acacode";
repo = "swagger-typescript-api";
- rev = version;
- hash = "sha256-SPvOCoxtf7x8MLPV8kylyaNXHaNtsHvs6liagd7iyF8=";
+ rev = "v${version}";
+ hash = "sha256-2EC3bLP57qOMXATXVQzlFSUs/KCm8L24saJq0HMgHaY=";
+ };
+
+ node_modules = stdenv.mkDerivation {
+ inherit (finalAttrs) src version;
+ pname = "${pname}-node_modules";
+
+ nativeBuildInputs = [
+ bun
+ writableTmpDirAsHomeHook
+ ];
+
+ dontConfigure = true;
+
+ buildPhase = ''
+ runHook preBuild
+
+ export BUN_INSTALL_CACHE_DIR=$(mktemp -d)
+ bun install --no-progress --frozen-lockfile --no-cache
+
+ runHook postBuild
+ '';
+
+ installPhase = ''
+ runHook preInstall
+
+ mkdir -p $out/node_modules
+ cp -R ./node_modules $out
+
+ runHook postInstall
+ '';
+
+ outputHash =
+ node-modules-hash.${stdenv.hostPlatform.system}
+ or (throw "${finalAttrs.pname}: Platform ${stdenv.hostPlatform.system} is not packaged yet. Supported platforms: x86_64-linux.");
+ outputHashAlgo = "sha256";
+ outputHashMode = "recursive";
};
nativeBuildInputs = [
- makeWrapper
- yarn-berry.yarnBerryConfigHook
- yarn-berry
+ makeBinaryWrapper
nodejs
+ bun
];
- missingHashes = ./missing-hashes.json;
- offlineCache = yarn-berry.fetchYarnBerryDeps {
- inherit (finalAttrs) src missingHashes;
- hash = "sha256-ZIF+sA/Wp2Rbu9CeERZo1X1oC00SjE64Mk5verb8IxU=";
- };
-
buildPhase = ''
runHook preBuild
- yarn run build
+ cp -R ${finalAttrs.node_modules}/node_modules .
+ patchShebangs node_modules
+
+ bun run build
runHook postBuild
'';
@@ -48,8 +84,8 @@ stdenv.mkDerivation (finalAttrs: {
mkdir -p $out/lib
cp -r {dist,templates,node_modules} $out/lib
- makeWrapper ${nodejs}/bin/node $out/bin/${pname} \
- --add-flags $out/lib/dist/cli.js \
+ makeBinaryWrapper ${nodejs}/bin/node $out/bin/${pname} \
+ --add-flags $out/lib/dist/cli.cjs \
--set NODE_ENV production \
--set NODE_PATH "$out/lib/node_modules"
@@ -60,9 +96,9 @@ stdenv.mkDerivation (finalAttrs: {
mainProgram = "swagger-typescript-api";
description = "Generate TypeScript API client and definitions for fetch or axios from an OpenAPI specification";
homepage = "https://github.com/acacode/swagger-typescript-api";
- changelog = "https://github.com/acacode/swagger-typescript-api/blob/${version}/CHANGELOG.md";
+ changelog = "https://github.com/acacode/swagger-typescript-api/blob/v${version}/CHANGELOG.md";
license = lib.licenses.mit;
- platforms = lib.platforms.all;
+ platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [ angelodlfrtr ];
};
})
diff --git a/pkgs/by-name/sy/system76-scheduler/package.nix b/pkgs/by-name/sy/system76-scheduler/package.nix
index e37b663187fb..c92b38081820 100644
--- a/pkgs/by-name/sy/system76-scheduler/package.nix
+++ b/pkgs/by-name/sy/system76-scheduler/package.nix
@@ -32,7 +32,7 @@ rustPlatform.buildRustPackage {
pipewire
];
- EXECSNOOP_PATH = "${bcc}/bin/execsnoop";
+ env.EXECSNOOP_PATH = "${bcc}/bin/execsnoop";
# tests don't build
doCheck = false;
diff --git a/pkgs/by-name/te/termcolor/package.nix b/pkgs/by-name/te/termcolor/package.nix
index f2474f74b3a7..49e3f5d0cecf 100644
--- a/pkgs/by-name/te/termcolor/package.nix
+++ b/pkgs/by-name/te/termcolor/package.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [ cmake ];
cmakeFlags = [ "-DTERMCOLOR_TESTS=ON" ];
- CXXFLAGS = [
+ env.CXXFLAGS = toString [
# GCC 13: error: 'uint8_t' has not been declared
"-include cstdint"
];
diff --git a/pkgs/by-name/th/thc-hydra/package.nix b/pkgs/by-name/th/thc-hydra/package.nix
index b27d967fabb5..db87bf2d2597 100644
--- a/pkgs/by-name/th/thc-hydra/package.nix
+++ b/pkgs/by-name/th/thc-hydra/package.nix
@@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
- DATADIR = "/share/${pname}";
+ env.DATADIR = "/share/${pname}";
postInstall = lib.optionalString withGUI ''
wrapProgram $out/bin/xhydra \
diff --git a/pkgs/by-name/th/thunar-shares-plugin/package.nix b/pkgs/by-name/th/thunar-shares-plugin/package.nix
new file mode 100644
index 000000000000..23b448124205
--- /dev/null
+++ b/pkgs/by-name/th/thunar-shares-plugin/package.nix
@@ -0,0 +1,54 @@
+{
+ stdenv,
+ lib,
+ fetchFromGitLab,
+ gettext,
+ glib,
+ gtk3,
+ meson,
+ ninja,
+ pkg-config,
+ thunar,
+ xfconf,
+ gitUpdater,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+ pname = "thunar-shares-plugin";
+ version = "0.5.0";
+
+ src = fetchFromGitLab {
+ domain = "gitlab.xfce.org";
+ owner = "thunar-plugins";
+ repo = "thunar-shares-plugin";
+ tag = "thunar-shares-plugin-${finalAttrs.version}";
+ hash = "sha256-sWLFagoLy1lbAsPYKm8GWwCH+Aa++cDXbRDwkNh6bKk=";
+ };
+
+ strictDeps = true;
+
+ nativeBuildInputs = [
+ gettext
+ meson
+ ninja
+ pkg-config
+ ];
+
+ buildInputs = [
+ glib
+ gtk3
+ thunar
+ xfconf
+ ];
+
+ passthru.updateScript = gitUpdater { rev-prefix = "thunar-shares-plugin-"; };
+
+ meta = {
+ description = "Thunar plugin providing quick folder sharing using Samba without requiring root access";
+ homepage = "https://gitlab.xfce.org/thunar-plugins/thunar-shares-plugin";
+ license = lib.licenses.gpl2Plus;
+ maintainers = with lib.maintainers; [ fgaz ];
+ platforms = lib.platforms.linux;
+ teams = [ lib.teams.xfce ];
+ };
+})
diff --git a/pkgs/by-name/ti/timekpr/package.nix b/pkgs/by-name/ti/timekpr/package.nix
index e56b2aefc406..5248b0546b4f 100644
--- a/pkgs/by-name/ti/timekpr/package.nix
+++ b/pkgs/by-name/ti/timekpr/package.nix
@@ -9,6 +9,7 @@
sound-theme-freedesktop,
stdenv,
wrapGAppsHook4,
+ writeText,
}:
python3Packages.buildPythonApplication rec {
pname = "timekpr";
@@ -42,49 +43,51 @@ python3Packages.buildPythonApplication rec {
psutil
];
- # Generate setup.py because the upstream repository does not include it
- SETUP_PY = ''
- from setuptools import setup, find_namespace_packages
+ postPatch =
+ let
+ # Generate setup.py because the upstream repository does not include it
+ setup-py = writeText "setup.py" ''
+ from setuptools import setup, find_namespace_packages
- package_dir={"timekpr": "."}
- setup(
- name="timekpr-next",
- version="${version}",
- package_dir=package_dir,
- packages=[
- f"{package_prefix}.{package_suffix}"
- for package_prefix, where in package_dir.items()
- for package_suffix in find_namespace_packages(where=where)
- ],
- install_requires=[
- ${lib.concatMapStringsSep ", " (dependency: "'${dependency.pname}'") dependencies}
- ],
- )
- '';
+ package_dir={"timekpr": "."}
+ setup(
+ name="timekpr-next",
+ version="${version}",
+ package_dir=package_dir,
+ packages=[
+ f"{package_prefix}.{package_suffix}"
+ for package_prefix, where in package_dir.items()
+ for package_suffix in find_namespace_packages(where=where)
+ ],
+ install_requires=[
+ ${lib.concatMapStringsSep ", " (dependency: "'${dependency.pname}'") dependencies}
+ ],
+ )
+ '';
+ in
+ ''
+ shopt -s globstar extglob nullglob
- postPatch = ''
- shopt -s globstar extglob nullglob
+ substituteInPlace bin/* **/*.py resource/server/systemd/timekpr.service \
+ --replace-quiet /usr/lib/python3/dist-packages "$out"/${lib.escapeShellArg python3Packages.python.sitePackages}
- substituteInPlace bin/* **/*.py resource/server/systemd/timekpr.service \
- --replace-quiet /usr/lib/python3/dist-packages "$out"/${lib.escapeShellArg python3Packages.python.sitePackages}
+ substituteInPlace **/*.desktop **/*.policy **/*.service \
+ --replace-fail /usr/bin/timekpr "$out"/bin/timekpr
- substituteInPlace **/*.desktop **/*.policy **/*.service \
- --replace-fail /usr/bin/timekpr "$out"/bin/timekpr
+ substituteInPlace common/constants/constants.py \
+ --replace-fail /usr/share/sounds/freedesktop ${lib.escapeShellArg sound-theme-freedesktop}/share/sounds/freedesktop \
+ --replace-fail /usr/share/timekpr "$out"/share/timekpr \
+ --replace-fail /usr/share/locale "$out"/share/locale
- substituteInPlace common/constants/constants.py \
- --replace-fail /usr/share/sounds/freedesktop ${lib.escapeShellArg sound-theme-freedesktop}/share/sounds/freedesktop \
- --replace-fail /usr/share/timekpr "$out"/share/timekpr \
- --replace-fail /usr/share/locale "$out"/share/locale
+ substituteInPlace resource/server/timekpr.conf \
+ --replace-fail /usr/share/timekpr "$out"/share/timekpr \
- substituteInPlace resource/server/timekpr.conf \
- --replace-fail /usr/share/timekpr "$out"/share/timekpr \
+ # The original file name `timekpra` is renamed to `..timekpra-wrapped-wrapped` because `makeCWrapper` was used multiple times.
+ substituteInPlace client/admin/adminprocessor.py \
+ --replace-fail '"/timekpra" in ' '"/..timekpra-wrapped-wrapped" in '
- # The original file name `timekpra` is renamed to `..timekpra-wrapped-wrapped` because `makeCWrapper` was used multiple times.
- substituteInPlace client/admin/adminprocessor.py \
- --replace-fail '"/timekpra" in ' '"/..timekpra-wrapped-wrapped" in '
-
- printf %s "$SETUP_PY" > setup.py
- '';
+ ln -s ${setup-py} setup.py
+ '';
# We need to manually inject $PYTHONPATH here, because `buildPythonApplication` does not recognize timekpr's executables as Python scripts, and therefore it does not automatically inject $PYTHONPATH into them.
postFixup = ''
diff --git a/pkgs/by-name/tr/trackma/package.nix b/pkgs/by-name/tr/trackma/package.nix
index a9f97259e755..87417d91dd16 100644
--- a/pkgs/by-name/tr/trackma/package.nix
+++ b/pkgs/by-name/tr/trackma/package.nix
@@ -10,6 +10,7 @@
qt5,
makeDesktopItem,
copyDesktopItems,
+ imagemagick,
withCurses ? false,
withGTK ? false,
withQT ? false,
@@ -46,6 +47,7 @@ python3.pkgs.buildPythonApplication (finalAttrs: {
nativeBuildInputs = [
copyDesktopItems
python3.pkgs.poetry-core
+ imagemagick
]
++ lib.optionals withGTK [
wrapGAppsHook3
@@ -94,7 +96,8 @@ python3.pkgs.buildPythonApplication (finalAttrs: {
);
postInstall = ''
- install -Dvm444 $src/trackma/data/icon.png $out/share/pixmaps/trackma.png
+ mkdir -p $out/share/icons/hicolor/64x64/apps
+ magick $src/trackma/data/icon.png -resize 64x64! $out/share/icons/hicolor/64x64/apps/trackma.png
'';
doCheck = false;
diff --git a/pkgs/by-name/tu/tutanota-desktop/package.nix b/pkgs/by-name/tu/tutanota-desktop/package.nix
index ad3159c5b747..7c445f261307 100644
--- a/pkgs/by-name/tu/tutanota-desktop/package.nix
+++ b/pkgs/by-name/tu/tutanota-desktop/package.nix
@@ -25,7 +25,6 @@ appimageTools.wrapType2 rec {
in
''
install -Dm 444 ${appimageContents}/tutanota-desktop.desktop -t $out/share/applications
- install -Dm 444 ${appimageContents}/tutanota-desktop.png -t $out/share/pixmaps
cp -r ${appimageContents}/usr/share/icons/. $out/share/icons
substituteInPlace $out/share/applications/tutanota-desktop.desktop \
diff --git a/pkgs/by-name/tu/tuxpaint/package.nix b/pkgs/by-name/tu/tuxpaint/package.nix
index 27146a18264b..3152be909715 100644
--- a/pkgs/by-name/tu/tuxpaint/package.nix
+++ b/pkgs/by-name/tu/tuxpaint/package.nix
@@ -91,7 +91,6 @@ stdenv.mkDerivation (finalAttrs: {
postInstall = ''
# Install desktop file
mkdir -p $out/share/applications
- cp hildon/tuxpaint.xpm $out/share/pixmaps
sed -e "s+Exec=tuxpaint+Exec=$out/bin/tuxpaint+" < src/tuxpaint.desktop > $out/share/applications/tuxpaint.desktop
# Install stamps
@@ -99,6 +98,10 @@ stdenv.mkDerivation (finalAttrs: {
cd tuxpaint-stamps-*
make install-all PREFIX=$out
+ mkdir -p $out/share/icons/hicolor/32x32/apps
+ magick $out/share/pixmaps/tuxpaint.png -resize 32x32 $out/share/icons/hicolor/32x32/apps/tuxpaint.png
+ rm -r $out/share/pixmaps
+
# Requirements for tuxpaint-import
wrapProgram $out/bin/tuxpaint-import \
--prefix PATH : ${lib.makeBinPath [ netpbm ]}
diff --git a/pkgs/by-name/uc/ucommon/package.nix b/pkgs/by-name/uc/ucommon/package.nix
index a4e623a24d81..1e5830224512 100644
--- a/pkgs/by-name/uc/ucommon/package.nix
+++ b/pkgs/by-name/uc/ucommon/package.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [ pkg-config ];
# use C++14 Standard until error handling code gets updated upstream
- CXXFLAGS = [ "-std=c++14" ];
+ env.CXXFLAGS = toString [ "-std=c++14" ];
# disable flaky networking test
postPatch = ''
diff --git a/pkgs/by-name/up/upscayl/linux.nix b/pkgs/by-name/up/upscayl/linux.nix
index 0eba61244f05..1833aa9b7f9b 100644
--- a/pkgs/by-name/up/upscayl/linux.nix
+++ b/pkgs/by-name/up/upscayl/linux.nix
@@ -31,10 +31,8 @@ appimageTools.wrapType2 {
];
extraInstallCommands = ''
- mkdir -p $out/share/{applications,pixmaps}
-
- cp ${appimageContents}/upscayl.desktop $out/share/applications/upscayl.desktop
- cp ${appimageContents}/upscayl.png $out/share/pixmaps/upscayl.png
+ install -D ${appimageContents}/upscayl.desktop -t $out/share/applications
+ install -D ${appimageContents}/upscayl.png -t $out/share/icons/hicolor/512x512/apps
substituteInPlace $out/share/applications/upscayl.desktop \
--replace-fail 'Exec=AppRun --no-sandbox %U' 'Exec=upscayl'
diff --git a/pkgs/by-name/ur/urh/package.nix b/pkgs/by-name/ur/urh/package.nix
index d71ce5ee0bd5..7beff4db9e02 100644
--- a/pkgs/by-name/ur/urh/package.nix
+++ b/pkgs/by-name/ur/urh/package.nix
@@ -85,7 +85,7 @@ python3Packages.buildPythonApplication (finalAttrs: {
];
postInstall = ''
- install -Dm644 data/icons/appicon.png $out/share/pixmaps/urh.png
+ install -Dm644 data/icons/appicon.png $out/share/icons/hicolor/512x512/apps/urh.png
'';
meta = {
diff --git a/pkgs/by-name/ve/verible/package.nix b/pkgs/by-name/ve/verible/package.nix
index ae5a1c37bec8..067d8d8336e6 100644
--- a/pkgs/by-name/ve/verible/package.nix
+++ b/pkgs/by-name/ve/verible/package.nix
@@ -19,15 +19,21 @@ let
rev = "3f863a3f35f31b61982d813835d8637b3d93d87a";
hash = "sha256-BsxP3GrS98ubIAkFx/c4pB1i97ZZL2TijS+2ORnooww=";
};
-in
-buildBazelPackage rec {
- pname = "verible";
-
- # These environment variables are read in bazel/build-version.py to create
- # a build string shown in the tools --version output.
- # If env variables not set, it would attempt to extract it from .git/.
GIT_DATE = "2025-08-29";
GIT_VERSION = "v0.0-4023-gc1271a00";
+in
+buildBazelPackage {
+ pname = "verible";
+
+ env = {
+ # These environment variables are read in bazel/build-version.py to create
+ # a build string shown in the tools --version output.
+ # If env variables not set, it would attempt to extract it from .git/.
+ inherit GIT_DATE GIT_VERSION;
+ }
+ // lib.optionalAttrs stdenv.hostPlatform.isDarwin {
+ LIBTOOL = "${cctools}/bin/libtool";
+ };
# Derive nix package version from GIT_VERSION: "v1.2-345-abcde" -> "1.2.345"
version = builtins.concatStringsSep "." (
@@ -64,7 +70,6 @@ buildBazelPackage rec {
flex # .. to compile with newer glibc
python3
];
- LIBTOOL = lib.optionalString stdenv.hostPlatform.isDarwin "${cctools}/bin/libtool";
postPatch = ''
patchShebangs \
diff --git a/pkgs/by-name/vi/vice/package.nix b/pkgs/by-name/vi/vice/package.nix
index 634b05fddb05..ac958fb50f26 100644
--- a/pkgs/by-name/vi/vice/package.nix
+++ b/pkgs/by-name/vi/vice/package.nix
@@ -72,7 +72,7 @@ stdenv.mkDerivation (finalAttrs: {
"--with-gif"
];
- LIBS = "-lGL";
+ env.LIBS = "-lGL";
preBuild = ''
sed -i -e 's|#!/usr/bin/env bash|${runtimeShell}/bin/bash|' src/arch/gtk3/novte/box_drawing_generate.sh
diff --git a/pkgs/by-name/vi/vintagestory/package.nix b/pkgs/by-name/vi/vintagestory/package.nix
index 333a51bf753f..60f5ba20d977 100644
--- a/pkgs/by-name/vi/vintagestory/package.nix
+++ b/pkgs/by-name/vi/vintagestory/package.nix
@@ -23,6 +23,7 @@
waylandSupport ? false,
wayland ? null,
libxkbcommon ? null,
+ imagemagick,
}:
assert x11Support || waylandSupport;
@@ -41,6 +42,7 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
makeWrapper
copyDesktopItems
+ imagemagick
];
runtimeLibs = [
@@ -89,9 +91,9 @@ stdenv.mkDerivation (finalAttrs: {
installPhase = ''
runHook preInstall
- mkdir -p $out/share/vintagestory $out/bin $out/share/pixmaps $out/share/fonts/truetype
+ mkdir -p $out/share/vintagestory $out/bin $out/share/icons/hicolor/512x512/apps $out/share/fonts/truetype
cp -r * $out/share/vintagestory
- cp $out/share/vintagestory/assets/gameicon.xpm $out/share/pixmaps/vintagestory.xpm
+ magick $out/share/vintagestory/assets/gameicon.xpm $out/share/icons/hicolor/512x512/apps/vintagestory.png
cp $out/share/vintagestory/assets/game/fonts/*.ttf $out/share/fonts/truetype
runHook postInstall
diff --git a/pkgs/by-name/vi/virtiofsd/package.nix b/pkgs/by-name/vi/virtiofsd/package.nix
index 19b607a1aab7..1b3ef67272c8 100644
--- a/pkgs/by-name/vi/virtiofsd/package.nix
+++ b/pkgs/by-name/vi/virtiofsd/package.nix
@@ -23,8 +23,10 @@ rustPlatform.buildRustPackage (finalAttrs: {
cargoHash = "sha256-AOWHlvFvKj05f4/KE1F37qkRstW5gUlRH0HZVZrg7Dg=";
- LIBCAPNG_LIB_PATH = "${lib.getLib libcap_ng}/lib";
- LIBCAPNG_LINK_TYPE = if stdenv.hostPlatform.isStatic then "static" else "dylib";
+ env = {
+ LIBCAPNG_LIB_PATH = "${lib.getLib libcap_ng}/lib";
+ LIBCAPNG_LINK_TYPE = if stdenv.hostPlatform.isStatic then "static" else "dylib";
+ };
buildInputs = [
libcap_ng
diff --git a/pkgs/by-name/wa/waypipe/package.nix b/pkgs/by-name/wa/waypipe/package.nix
index b32e73714ff1..eacc5b6cbdc4 100644
--- a/pkgs/by-name/wa/waypipe/package.nix
+++ b/pkgs/by-name/wa/waypipe/package.nix
@@ -38,7 +38,7 @@ llvmPackages.stdenv.mkDerivation (finalAttrs: {
};
strictDeps = true;
- LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
+ env.LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
depsBuildBuild = [ pkg-config ];
nativeBuildInputs = [
diff --git a/pkgs/by-name/we/weblate/package.nix b/pkgs/by-name/we/weblate/package.nix
index 2fc9c6dbe630..213dcf3935c1 100644
--- a/pkgs/by-name/we/weblate/package.nix
+++ b/pkgs/by-name/we/weblate/package.nix
@@ -35,6 +35,15 @@ let
django = prev.django_5;
};
};
+
+ GI_TYPELIB_PATH = lib.makeSearchPathOutput "out" "lib/girepository-1.0" [
+ pango
+ harfbuzz
+ librsvg
+ gdk-pixbuf
+ glib
+ gobject-introspection
+ ];
in
python.pkgs.buildPythonApplication rec {
pname = "weblate";
@@ -197,14 +206,10 @@ python.pkgs.buildPythonApplication rec {
};
# We don't just use wrapGAppsNoGuiHook because we need to expose GI_TYPELIB_PATH
- GI_TYPELIB_PATH = lib.makeSearchPathOutput "out" "lib/girepository-1.0" [
- pango
- harfbuzz
- librsvg
- gdk-pixbuf
- glib
- gobject-introspection
- ];
+ env = {
+ inherit GI_TYPELIB_PATH;
+ };
+
makeWrapperArgs = [ "--set GI_TYPELIB_PATH \"$GI_TYPELIB_PATH\"" ];
nativeCheckInputs =
diff --git a/pkgs/by-name/xg/xgboost/package.nix b/pkgs/by-name/xg/xgboost/package.nix
index 486801e20524..134da018efd4 100644
--- a/pkgs/by-name/xg/xgboost/package.nix
+++ b/pkgs/by-name/xg/xgboost/package.nix
@@ -90,9 +90,6 @@ effectiveStdenv.mkDerivation rec {
++ lib.optionals ncclSupport [ "-DUSE_NCCL=ON" ]
++ lib.optionals rLibrary [ "-DR_LIB=ON" ];
- # on Darwin, cmake uses find_library to locate R instead of using the PATH
- env.NIX_LDFLAGS = "-L${R}/lib/R/lib";
-
preConfigure = lib.optionals rLibrary ''
substituteInPlace cmake/RPackageInstall.cmake.in --replace "CMD INSTALL" "CMD INSTALL -l $out/library"
export R_LIBS_SITE="$R_LIBS_SITE''${R_LIBS_SITE:+:}$out/library"
@@ -106,70 +103,75 @@ effectiveStdenv.mkDerivation rec {
ctest --force-new-ctest-process ${lib.optionalString cudaSupport "-E TestXGBoostLib"}
'';
- # Disable finicky tests from dmlc core that fail in Hydra. XGboost team
- # confirmed xgboost itself does not use this part of the dmlc code.
- GTEST_FILTER =
- let
- # Upstream Issue: https://github.com/xtensor-stack/xsimd/issues/456
- xsimdTests = lib.optionals effectiveStdenv.hostPlatform.isDarwin [
- "ThreadGroup.TimerThread"
- "ThreadGroup.TimerThreadSimple"
- ];
- networkingTest = [
- "AllgatherTest.Basic"
- "AllgatherTest.VAlgo"
- "AllgatherTest.VBasic"
- "AllgatherTest.VRing"
- "AllreduceGlobal.Basic"
- "AllreduceGlobal.Small"
- "AllreduceTest.Basic"
- "AllreduceTest.BitOr"
- "AllreduceTest.Restricted"
- "AllreduceTest.Sum"
- "Approx.PartitionerColumnSplit"
- "BroadcastTest.Basic"
- "CPUHistogram.BuildHistColSplit"
- "CPUHistogram.BuildHistColumnSplit"
- "CPUPredictor.CategoricalPredictLeafColumnSplit"
- "CPUPredictor.CategoricalPredictionColumnSplit"
- "ColumnSplit/ColumnSplitTrainingTest*"
- "ColumnSplit/TestApproxColumnSplit*"
- "ColumnSplit/TestHistColumnSplit*"
- "ColumnSplitObjective/TestColumnSplit*"
- "Cpu/ColumnSplitTrainingTest*"
- "CommGroupTest.Basic"
- "CommTest.Channel"
- "CpuPredictor.BasicColumnSplit"
- "CpuPredictor.IterationRangeColmnSplit"
- "CpuPredictor.LesserFeaturesColumnSplit"
- "CpuPredictor.SparseColumnSplit"
- "DistributedMetric/TestDistributedMetric.BinaryAUCRowSplit/Dist_*"
- "InitEstimation.FitStumpColumnSplit"
- "MetaInfo.GetSetFeatureColumnSplit"
- "Quantile.ColumnSplit"
- "Quantile.ColumnSplitBasic"
- "Quantile.ColumnSplitSorted"
- "Quantile.ColumnSplitSortedBasic"
- "Quantile.Distributed"
- "Quantile.DistributedBasic"
- "Quantile.SameOnAllWorkers"
- "Quantile.SortedDistributed"
- "Quantile.SortedDistributedBasic"
- "QuantileHist.MultiPartitionerColumnSplit"
- "QuantileHist.PartitionerColumnSplit"
- "Stats.SampleMean"
- "Stats.WeightedSampleMean"
- "SimpleDMatrix.ColumnSplit"
- "TrackerAPITest.CAPI"
- "TrackerTest.AfterShutdown"
- "TrackerTest.Bootstrap"
- "TrackerTest.GetHostAddress"
- "TrackerTest.Print"
- "VectorAllgatherV.Basic"
- ];
- excludedTests = xsimdTests ++ networkingTest;
- in
- "-${builtins.concatStringsSep ":" excludedTests}";
+ env = {
+ # on Darwin, cmake uses find_library to locate R instead of using the PATH
+ NIX_LDFLAGS = "-L${R}/lib/R/lib";
+
+ # Disable finicky tests from dmlc core that fail in Hydra. XGboost team
+ # confirmed xgboost itself does not use this part of the dmlc code.
+ GTEST_FILTER =
+ let
+ # Upstream Issue: https://github.com/xtensor-stack/xsimd/issues/456
+ xsimdTests = lib.optionals effectiveStdenv.hostPlatform.isDarwin [
+ "ThreadGroup.TimerThread"
+ "ThreadGroup.TimerThreadSimple"
+ ];
+ networkingTest = [
+ "AllgatherTest.Basic"
+ "AllgatherTest.VAlgo"
+ "AllgatherTest.VBasic"
+ "AllgatherTest.VRing"
+ "AllreduceGlobal.Basic"
+ "AllreduceGlobal.Small"
+ "AllreduceTest.Basic"
+ "AllreduceTest.BitOr"
+ "AllreduceTest.Restricted"
+ "AllreduceTest.Sum"
+ "Approx.PartitionerColumnSplit"
+ "BroadcastTest.Basic"
+ "CPUHistogram.BuildHistColSplit"
+ "CPUHistogram.BuildHistColumnSplit"
+ "CPUPredictor.CategoricalPredictLeafColumnSplit"
+ "CPUPredictor.CategoricalPredictionColumnSplit"
+ "ColumnSplit/ColumnSplitTrainingTest*"
+ "ColumnSplit/TestApproxColumnSplit*"
+ "ColumnSplit/TestHistColumnSplit*"
+ "ColumnSplitObjective/TestColumnSplit*"
+ "Cpu/ColumnSplitTrainingTest*"
+ "CommGroupTest.Basic"
+ "CommTest.Channel"
+ "CpuPredictor.BasicColumnSplit"
+ "CpuPredictor.IterationRangeColmnSplit"
+ "CpuPredictor.LesserFeaturesColumnSplit"
+ "CpuPredictor.SparseColumnSplit"
+ "DistributedMetric/TestDistributedMetric.BinaryAUCRowSplit/Dist_*"
+ "InitEstimation.FitStumpColumnSplit"
+ "MetaInfo.GetSetFeatureColumnSplit"
+ "Quantile.ColumnSplit"
+ "Quantile.ColumnSplitBasic"
+ "Quantile.ColumnSplitSorted"
+ "Quantile.ColumnSplitSortedBasic"
+ "Quantile.Distributed"
+ "Quantile.DistributedBasic"
+ "Quantile.SameOnAllWorkers"
+ "Quantile.SortedDistributed"
+ "Quantile.SortedDistributedBasic"
+ "QuantileHist.MultiPartitionerColumnSplit"
+ "QuantileHist.PartitionerColumnSplit"
+ "Stats.SampleMean"
+ "Stats.WeightedSampleMean"
+ "SimpleDMatrix.ColumnSplit"
+ "TrackerAPITest.CAPI"
+ "TrackerTest.AfterShutdown"
+ "TrackerTest.Bootstrap"
+ "TrackerTest.GetHostAddress"
+ "TrackerTest.Print"
+ "VectorAllgatherV.Basic"
+ ];
+ excludedTests = xsimdTests ++ networkingTest;
+ in
+ "-${builtins.concatStringsSep ":" excludedTests}";
+ };
installPhase = ''
runHook preInstall
diff --git a/pkgs/by-name/yt/ytdownloader/package.nix b/pkgs/by-name/yt/ytdownloader/package.nix
index 47aff6b74a2d..341edc43421e 100644
--- a/pkgs/by-name/yt/ytdownloader/package.nix
+++ b/pkgs/by-name/yt/ytdownloader/package.nix
@@ -45,7 +45,7 @@ buildNpmPackage rec {
})
];
- ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
+ env.ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
dontNpmBuild = true;
diff --git a/pkgs/by-name/zp/zpaq/package.nix b/pkgs/by-name/zp/zpaq/package.nix
index ee9ebd2a53e2..38c1bebead71 100644
--- a/pkgs/by-name/zp/zpaq/package.nix
+++ b/pkgs/by-name/zp/zpaq/package.nix
@@ -20,14 +20,20 @@ stdenv.mkDerivation (finalAttrs: {
perl # for pod2man
];
- CPPFLAGS = [
- "-Dunix"
- ]
- ++ lib.optional (!stdenv.hostPlatform.isi686 && !stdenv.hostPlatform.isx86_64) "-DNOJIT";
- CXXFLAGS = [
- "-O3"
- "-DNDEBUG"
- ];
+ env = {
+ CPPFLAGS = toString (
+ [
+ "-Dunix"
+ ]
+ ++ lib.optionals (!stdenv.hostPlatform.isi686 && !stdenv.hostPlatform.isx86_64) [
+ "-DNOJIT"
+ ]
+ );
+ CXXFLAGS = toString [
+ "-O3"
+ "-DNDEBUG"
+ ];
+ };
enableParallelBuilding = true;
diff --git a/pkgs/by-name/zw/zwave-js-ui/package.nix b/pkgs/by-name/zw/zwave-js-ui/package.nix
index 4534be6b4677..cdab52b5909b 100644
--- a/pkgs/by-name/zw/zwave-js-ui/package.nix
+++ b/pkgs/by-name/zw/zwave-js-ui/package.nix
@@ -7,15 +7,15 @@
buildNpmPackage rec {
pname = "zwave-js-ui";
- version = "11.11.0";
+ version = "11.12.0";
src = fetchFromGitHub {
owner = "zwave-js";
repo = "zwave-js-ui";
tag = "v${version}";
- hash = "sha256-pxLpHeFBdmbuw4VtVgrOMfE8uPft2AyYcwdIyXpUz2s=";
+ hash = "sha256-ewJJCeGR2jmw0CeEB4Ip4wkQ0V+NDwkqOAr/1wGiULI=";
};
- npmDepsHash = "sha256-BZnHHIjRbhMCq8miK4lPkhIfE13sEv4q0Ting/mmavQ=";
+ npmDepsHash = "sha256-IKZTmA410mFLZuf2AgPI8P8csBNI+Nx1+P8WGqk3fQ8=";
passthru.tests.zwave-js-ui = nixosTests.zwave-js-ui;
diff --git a/pkgs/development/beam-modules/livebook/default.nix b/pkgs/development/beam-modules/livebook/default.nix
index ab484ea47cac..81adf8d0e35a 100644
--- a/pkgs/development/beam-modules/livebook/default.nix
+++ b/pkgs/development/beam-modules/livebook/default.nix
@@ -9,7 +9,7 @@
beamPackages.mixRelease rec {
pname = "livebook";
- version = "0.18.5";
+ version = "0.18.6";
inherit (beamPackages) elixir;
@@ -21,7 +21,7 @@ beamPackages.mixRelease rec {
owner = "livebook-dev";
repo = "livebook";
tag = "v${version}";
- hash = "sha256-yClo+PkEDuRHzVm/XPGxq896MwuM2305Tu7/B5M900A=";
+ hash = "sha256-8pFvY86ht2NMUtknjt5M7QasOKnoHvQdYJrOlgTyueU=";
};
mixFodDeps = beamPackages.fetchMixDeps {
diff --git a/pkgs/development/compilers/chicken/4/eggDerivation.nix b/pkgs/development/compilers/chicken/4/eggDerivation.nix
index 7e334782fe78..a4eb19b8a927 100644
--- a/pkgs/development/compilers/chicken/4/eggDerivation.nix
+++ b/pkgs/development/compilers/chicken/4/eggDerivation.nix
@@ -26,10 +26,13 @@ stdenv.mkDerivation (
nativeBuildInputs = [ makeWrapper ];
buildInputs = [ chicken ];
- CSC_OPTIONS = lib.concatStringsSep " " cscOptions;
+ env = {
+ CSC_OPTIONS = lib.concatStringsSep " " cscOptions;
- CHICKEN_REPOSITORY = libPath;
- CHICKEN_INSTALL_PREFIX = "$out";
+ CHICKEN_REPOSITORY = libPath;
+ CHICKEN_INSTALL_PREFIX = "$out";
+ }
+ // (args.env or { });
installPhase = ''
runHook preInstall
diff --git a/pkgs/development/compilers/chicken/5/eggDerivation.nix b/pkgs/development/compilers/chicken/5/eggDerivation.nix
index 6629a30ad973..dcb8e8dbd6f4 100644
--- a/pkgs/development/compilers/chicken/5/eggDerivation.nix
+++ b/pkgs/development/compilers/chicken/5/eggDerivation.nix
@@ -41,7 +41,10 @@ in
strictDeps = true;
- CSC_OPTIONS = lib.concatStringsSep " " cscOptions;
+ env = {
+ CSC_OPTIONS = lib.concatStringsSep " " cscOptions;
+ }
+ // (args.env or { });
buildPhase = ''
runHook preBuild
diff --git a/pkgs/development/compilers/chicken/5/overrides.nix b/pkgs/development/compilers/chicken/5/overrides.nix
index ef48b8c0232c..1c3d7776ed94 100644
--- a/pkgs/development/compilers/chicken/5/overrides.nix
+++ b/pkgs/development/compilers/chicken/5/overrides.nix
@@ -24,7 +24,7 @@ let
broken = addMetaAttrs { broken = true; };
brokenOnDarwin = addMetaAttrs { broken = stdenv.hostPlatform.isDarwin; };
addToCscOptions = opt: old: {
- CSC_OPTIONS = lib.concatStringsSep " " ([ old.CSC_OPTIONS or "" ] ++ lib.toList opt);
+ env.CSC_OPTIONS = lib.concatStringsSep " " ([ old.env.CSC_OPTIONS or "" ] ++ lib.toList opt);
};
in
{
diff --git a/pkgs/development/compilers/gcc/common/builder.nix b/pkgs/development/compilers/gcc/common/builder.nix
index b1b5daeb00f1..1e90828a6643 100644
--- a/pkgs/development/compilers/gcc/common/builder.nix
+++ b/pkgs/development/compilers/gcc/common/builder.nix
@@ -363,6 +363,13 @@ originalAttrs:
fi
done
''
+ + lib.optionalString stdenv.targetPlatform.isCygwin ''
+ targetBinDir="''${targetConfig+$targetConfig/}bin"
+ for i in "''${!outputBin}/$targetLibDir"/cyg*.dll; do
+ mkdir -p "''${!outputLib}/$targetBinDir"
+ mv "$i" "''${!outputLib}/$targetBinDir"/
+ done
+ ''
# if cross-compiling, link from $lib/lib to $lib/${targetConfig}.
# since native-compiles have $lib/lib as a directory (not a
# symlink), this ensures that in every case we can assume that
diff --git a/pkgs/development/coq-modules/mathcomp-bigenough/default.nix b/pkgs/development/coq-modules/mathcomp-bigenough/default.nix
index 0d890af79364..15bf8d24756d 100644
--- a/pkgs/development/coq-modules/mathcomp-bigenough/default.nix
+++ b/pkgs/development/coq-modules/mathcomp-bigenough/default.nix
@@ -6,37 +6,47 @@
version ? null,
}:
-mkCoqDerivation {
+let
+ derivation = mkCoqDerivation {
- namePrefix = [
- "coq"
- "mathcomp"
- ];
- pname = "bigenough";
- owner = "math-comp";
+ namePrefix = [
+ "coq"
+ "mathcomp"
+ ];
+ pname = "bigenough";
+ owner = "math-comp";
- release = {
- "1.0.0".sha256 = "10g0gp3hk7wri7lijkrqna263346wwf6a3hbd4qr9gn8hmsx70wg";
- "1.0.1".sha256 = "sha256:02f4dv4rz72liciwxb2k7acwx6lgqz4381mqyq5854p3nbyn06aw";
- "1.0.2".sha256 = "sha256-fJ/5xr91VtvpIoaFwb3PlnKl6UHG6GEeBRVGZrVLMU0=";
- "1.0.3".sha256 = "sha256-9ObUoaavnninL72r5iqkLz7lJBpcKXXi8LXKGhgx/N4=";
+ release = {
+ "1.0.0".sha256 = "10g0gp3hk7wri7lijkrqna263346wwf6a3hbd4qr9gn8hmsx70wg";
+ "1.0.1".sha256 = "sha256:02f4dv4rz72liciwxb2k7acwx6lgqz4381mqyq5854p3nbyn06aw";
+ "1.0.2".sha256 = "sha256-fJ/5xr91VtvpIoaFwb3PlnKl6UHG6GEeBRVGZrVLMU0=";
+ "1.0.3".sha256 = "sha256-9ObUoaavnninL72r5iqkLz7lJBpcKXXi8LXKGhgx/N4=";
+ };
+ inherit version;
+ defaultVersion =
+ let
+ case = case: out: { inherit case out; };
+ in
+ with lib.versions;
+ lib.switch coq.coq-version [
+ (case (range "8.10" "9.1") "1.0.3")
+ (case (range "8.10" "9.1") "1.0.2")
+ (case (range "8.5" "8.14") "1.0.0")
+ ] null;
+
+ propagatedBuildInputs = [ mathcomp-boot ];
+
+ meta = {
+ description = "Small library to do epsilon - N reasonning";
+ license = lib.licenses.cecill-b;
+ };
};
- inherit version;
- defaultVersion =
- let
- case = case: out: { inherit case out; };
- in
- with lib.versions;
- lib.switch coq.coq-version [
- (case (range "8.10" "9.1") "1.0.3")
- (case (range "8.10" "9.1") "1.0.2")
- (case (range "8.5" "8.14") "1.0.0")
- ] null;
-
- propagatedBuildInputs = [ mathcomp-boot ];
-
- meta = {
- description = "Small library to do epsilon - N reasonning";
- license = lib.licenses.cecill-b;
- };
-}
+in
+# this is just a wrapper for rocqPackages.mathcomp-bigenough for Rocq >= 9.0
+if coq.rocqPackages ? mathcomp-bigenough then
+ coq.rocqPackages.mathcomp-bigenough.override {
+ inherit version mathcomp-boot;
+ inherit (coq.rocqPackages) rocq-core;
+ }
+else
+ derivation
diff --git a/pkgs/development/coq-modules/mathcomp-finmap/default.nix b/pkgs/development/coq-modules/mathcomp-finmap/default.nix
index 3aab002a5897..9c6b4b2bd49f 100644
--- a/pkgs/development/coq-modules/mathcomp-finmap/default.nix
+++ b/pkgs/development/coq-modules/mathcomp-finmap/default.nix
@@ -6,64 +6,74 @@
version ? null,
}:
-mkCoqDerivation {
+let
+ derivation = mkCoqDerivation {
- namePrefix = [
- "coq"
- "mathcomp"
- ];
- pname = "finmap";
- owner = "math-comp";
- inherit version;
- defaultVersion =
- let
- case = coq: mc: out: {
- cases = [
- coq
- mc
- ];
- inherit out;
- };
- in
- with lib.versions;
- lib.switch
- [ coq.coq-version mathcomp-boot.version ]
- [
- (case (range "8.20" "9.1") (range "2.3" "2.5") "2.2.2")
- (case (range "8.20" "9.1") (range "2.3" "2.4") "2.2.0")
- (case (range "8.16" "9.0") (range "2.0" "2.3") "2.1.0")
- (case (range "8.16" "8.18") (range "2.0" "2.1") "2.0.0")
- (case (range "8.13" "8.20") (range "1.12" "1.19") "1.5.2")
- (case (isGe "8.10") (range "1.11" "1.17") "1.5.1")
- (case (range "8.7" "8.11") "1.11.0" "1.5.0")
- (case (isEq "8.11") (range "1.8" "1.10") "1.4.0+coq-8.11")
- (case (range "8.7" "8.11.0") (range "1.8" "1.10") "1.4.0")
- (case (range "8.7" "8.11.0") (range "1.8" "1.10") "1.3.4")
- (case (range "8.7" "8.9") "1.7.0" "1.1.0")
- (case (range "8.6" "8.7") (range "1.6.1" "1.7") "1.0.0")
- ]
- null;
- release = {
- "2.2.2".sha256 = "sha256-G5fSdx4MhOXtQ2H8lpyK5FuIbWAZNc7vRL3hcYmGA2o=";
- "2.2.0".sha256 = "sha256-oDQEZOutrJxmN8FvzovUIhqw0mwc8Ej7thrieJrW8BY=";
- "2.1.0".sha256 = "sha256-gh0cnhdVDyo+D5zdtxLc10kGKQLQ3ITzHnMC45mCtpY=";
- "2.0.0".sha256 = "sha256-0Wr1ZUYVuZH74vawO4EZlZ+K3kq+s1xEz/BfzyKj+wk=";
- "1.5.2".sha256 = "sha256-0KmmSjc2AlUo6BKr9RZ4FjL9wlGISlTGU0X1Eu7l4sw=";
- "1.5.1".sha256 = "0ryfml4pf1dfya16d8ma80favasmrygvspvb923n06kfw9v986j7";
- "1.5.0".sha256 = "0vx9n1fi23592b3hv5p5ycy7mxc8qh1y5q05aksfwbzkk5zjkwnq";
- "1.4.1".sha256 = "0kx4nx24dml1igk0w0qijmw221r5bgxhwhl5qicnxp7ab3c35s8p";
- "1.4.0+coq-8.11".sha256 = "1fd00ihyx0kzq5fblh9vr8s5mr1kg7p6pk11c4gr8svl1n69ppmb";
- "1.4.0".sha256 = "0mp82mcmrs424ff1vj3cvd8353r9vcap027h3p0iprr1vkkwjbzd";
- "1.3.4".sha256 = "0f5a62ljhixy5d7gsnwd66gf054l26k3m79fb8nz40i2mgp6l9ii";
- "1.2.1".sha256 = "0jryb5dq8js3imbmwrxignlk5zh8gwfb1wr4b1s7jbwz410vp7zf";
- "1.1.0".sha256 = "05df59v3na8jhpsfp7hq3niam6asgcaipg2wngnzxzqnl86srp2a";
- "1.0.0".sha256 = "0sah7k9qm8sw17cgd02f0x84hki8vj8kdz7h15i7rmz08rj0whpa";
+ namePrefix = [
+ "coq"
+ "mathcomp"
+ ];
+ pname = "finmap";
+ owner = "math-comp";
+ inherit version;
+ defaultVersion =
+ let
+ case = coq: mc: out: {
+ cases = [
+ coq
+ mc
+ ];
+ inherit out;
+ };
+ in
+ with lib.versions;
+ lib.switch
+ [ coq.coq-version mathcomp-boot.version ]
+ [
+ (case (range "8.20" "9.1") (range "2.3" "2.5") "2.2.2")
+ (case (range "8.20" "9.1") (range "2.3" "2.4") "2.2.0")
+ (case (range "8.16" "9.0") (range "2.0" "2.3") "2.1.0")
+ (case (range "8.16" "8.18") (range "2.0" "2.1") "2.0.0")
+ (case (range "8.13" "8.20") (range "1.12" "1.19") "1.5.2")
+ (case (isGe "8.10") (range "1.11" "1.17") "1.5.1")
+ (case (range "8.7" "8.11") "1.11.0" "1.5.0")
+ (case (isEq "8.11") (range "1.8" "1.10") "1.4.0+coq-8.11")
+ (case (range "8.7" "8.11.0") (range "1.8" "1.10") "1.4.0")
+ (case (range "8.7" "8.11.0") (range "1.8" "1.10") "1.3.4")
+ (case (range "8.7" "8.9") "1.7.0" "1.1.0")
+ (case (range "8.6" "8.7") (range "1.6.1" "1.7") "1.0.0")
+ ]
+ null;
+ release = {
+ "2.2.2".sha256 = "sha256-G5fSdx4MhOXtQ2H8lpyK5FuIbWAZNc7vRL3hcYmGA2o=";
+ "2.2.0".sha256 = "sha256-oDQEZOutrJxmN8FvzovUIhqw0mwc8Ej7thrieJrW8BY=";
+ "2.1.0".sha256 = "sha256-gh0cnhdVDyo+D5zdtxLc10kGKQLQ3ITzHnMC45mCtpY=";
+ "2.0.0".sha256 = "sha256-0Wr1ZUYVuZH74vawO4EZlZ+K3kq+s1xEz/BfzyKj+wk=";
+ "1.5.2".sha256 = "sha256-0KmmSjc2AlUo6BKr9RZ4FjL9wlGISlTGU0X1Eu7l4sw=";
+ "1.5.1".sha256 = "0ryfml4pf1dfya16d8ma80favasmrygvspvb923n06kfw9v986j7";
+ "1.5.0".sha256 = "0vx9n1fi23592b3hv5p5ycy7mxc8qh1y5q05aksfwbzkk5zjkwnq";
+ "1.4.1".sha256 = "0kx4nx24dml1igk0w0qijmw221r5bgxhwhl5qicnxp7ab3c35s8p";
+ "1.4.0+coq-8.11".sha256 = "1fd00ihyx0kzq5fblh9vr8s5mr1kg7p6pk11c4gr8svl1n69ppmb";
+ "1.4.0".sha256 = "0mp82mcmrs424ff1vj3cvd8353r9vcap027h3p0iprr1vkkwjbzd";
+ "1.3.4".sha256 = "0f5a62ljhixy5d7gsnwd66gf054l26k3m79fb8nz40i2mgp6l9ii";
+ "1.2.1".sha256 = "0jryb5dq8js3imbmwrxignlk5zh8gwfb1wr4b1s7jbwz410vp7zf";
+ "1.1.0".sha256 = "05df59v3na8jhpsfp7hq3niam6asgcaipg2wngnzxzqnl86srp2a";
+ "1.0.0".sha256 = "0sah7k9qm8sw17cgd02f0x84hki8vj8kdz7h15i7rmz08rj0whpa";
+ };
+
+ propagatedBuildInputs = [ mathcomp-boot ];
+
+ meta = {
+ description = "Finset and finmap library";
+ license = lib.licenses.cecill-b;
+ };
};
-
- propagatedBuildInputs = [ mathcomp-boot ];
-
- meta = {
- description = "Finset and finmap library";
- license = lib.licenses.cecill-b;
- };
-}
+in
+# this is just a wrapper for rocqPackages.mathcomp-finmap for Rocq >= 9.0
+if coq.rocqPackages ? mathcomp-finmap then
+ coq.rocqPackages.mathcomp-finmap.override {
+ inherit version mathcomp-boot;
+ inherit (coq.rocqPackages) rocq-core;
+ }
+else
+ derivation
diff --git a/pkgs/development/libraries/librsb/default.nix b/pkgs/development/libraries/librsb/default.nix
index e878e84e8d18..83caf9d4ac24 100644
--- a/pkgs/development/libraries/librsb/default.nix
+++ b/pkgs/development/libraries/librsb/default.nix
@@ -45,14 +45,16 @@ stdenv.mkDerivation rec {
];
# Ensure C/Fortran code is position-independent.
- env.NIX_CFLAGS_COMPILE = toString [
- "-fPIC"
- "-Ofast"
- ];
- FCFLAGS = [
- "-fPIC"
- "-Ofast"
- ];
+ env = {
+ NIX_CFLAGS_COMPILE = toString [
+ "-fPIC"
+ "-Ofast"
+ ];
+ FCFLAGS = toString [
+ "-fPIC"
+ "-Ofast"
+ ];
+ };
enableParallelBuilding = true;
diff --git a/pkgs/development/libraries/opencolorio/default.nix b/pkgs/development/libraries/opencolorio/default.nix
index 5ffa44c14037..64c6ef1defee 100644
--- a/pkgs/development/libraries/opencolorio/default.nix
+++ b/pkgs/development/libraries/opencolorio/default.nix
@@ -68,7 +68,7 @@ stdenv.mkDerivation rec {
# Gcc blindly tries to optimize all float operations instead of just marked ones.
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122304
- CXXFLAGS = "-ffp-contract=on";
+ env.CXXFLAGS = "-ffp-contract=on";
cmakeFlags = [
"-DOCIO_INSTALL_EXT_PACKAGES=NONE"
"-DOCIO_USE_SSE2NEON=OFF"
diff --git a/pkgs/development/libraries/wayland/default.nix b/pkgs/development/libraries/wayland/default.nix
index eec81c239e59..ca472fb06234 100644
--- a/pkgs/development/libraries/wayland/default.nix
+++ b/pkgs/development/libraries/wayland/default.nix
@@ -108,6 +108,11 @@ stdenv.mkDerivation (finalAttrs: {
homepage = "https://wayland.freedesktop.org/";
license = lib.licenses.mit; # Expat version
platforms = lib.platforms.unix;
+ # Builds with a large downstream patch, but breaks at least the
+ # `qt6Packages.qtbase` build. Please audit Wayland availability
+ # checks throughout the tree before enabling (and work with
+ # upstream if you want sustainable Wayland support on macOS).
+ badPlatforms = lib.platforms.darwin;
maintainers = with lib.maintainers; [
codyopel
qyliss
diff --git a/pkgs/development/php-packages/phan/default.nix b/pkgs/development/php-packages/phan/default.nix
index 18e33ed93875..3cf0ec59b8b2 100644
--- a/pkgs/development/php-packages/phan/default.nix
+++ b/pkgs/development/php-packages/phan/default.nix
@@ -8,16 +8,16 @@
(php.withExtensions ({ enabled, all }: enabled ++ (with all; [ ast ]))).buildComposerProject2
(finalAttrs: {
pname = "phan";
- version = "6.0.0";
+ version = "6.0.1";
src = fetchFromGitHub {
owner = "phan";
repo = "phan";
tag = finalAttrs.version;
- hash = "sha256-1qRGNDptiAdcGc1x+iLrxe9TjLGaL8EM8xuTOUNB+Ww=";
+ hash = "sha256-B6n4hGsUFwFsTLUMhtmElgF0xNqfol9RQ83aP9Zs/AI=";
};
- vendorHash = "sha256-Ro5/lA72xVIkZyuRNix77Cpeyyj1GbW5J4DzjQMq0Rc=";
+ vendorHash = "sha256-8m0aoK6P6HUhNLh4avMm9C0qBKVfsK9zQ+iJVWVhWm4=";
composerStrictValidation = false;
doInstallCheck = true;
diff --git a/pkgs/development/python-modules/emborg/default.nix b/pkgs/development/python-modules/emborg/default.nix
index b45a6e5c1a9e..223613f55988 100644
--- a/pkgs/development/python-modules/emborg/default.nix
+++ b/pkgs/development/python-modules/emborg/default.nix
@@ -50,7 +50,7 @@ buildPythonPackage rec {
];
# this disables testing fuse mounts
- MISSING_DEPENDENCIES = "fuse";
+ env.MISSING_DEPENDENCIES = "fuse";
postPatch = ''
patchShebangs .
diff --git a/pkgs/development/python-modules/geniushub-client/default.nix b/pkgs/development/python-modules/geniushub-client/default.nix
index 6eceb28fd3f6..cdb5f955f682 100644
--- a/pkgs/development/python-modules/geniushub-client/default.nix
+++ b/pkgs/development/python-modules/geniushub-client/default.nix
@@ -8,14 +8,14 @@
buildPythonPackage rec {
pname = "geniushub-client";
- version = "0.7.2";
+ version = "0.7.3";
format = "setuptools";
src = fetchFromGitHub {
owner = "manzanotti";
repo = "geniushub-client";
tag = "v${version}";
- hash = "sha256-RBXqSpumJMLZIT+nQr/BUE315krjRy/Qk9OlX9Ukn3Y=";
+ hash = "sha256-9/LOybFJdVxImr/i/RIbrYSPZ7vA5ffdSBxzg51UM8s=";
};
postPatch = ''
diff --git a/pkgs/development/python-modules/iamdata/default.nix b/pkgs/development/python-modules/iamdata/default.nix
index 19f83ae76045..6f41f95fdb7e 100644
--- a/pkgs/development/python-modules/iamdata/default.nix
+++ b/pkgs/development/python-modules/iamdata/default.nix
@@ -8,14 +8,14 @@
buildPythonPackage (finalAttrs: {
pname = "iamdata";
- version = "0.1.202602181";
+ version = "0.1.202602191";
pyproject = true;
src = fetchFromGitHub {
owner = "cloud-copilot";
repo = "iam-data-python";
tag = "v${finalAttrs.version}";
- hash = "sha256-6HLwpTFTqS3T6VQ9jwr7+wVv8ARLDbh9a/68txWMvJU=";
+ hash = "sha256-yvfJith7JfwO6lO57K3y98vqGHkEiEzmfM0WAktufck=";
};
__darwinAllowLocalNetworking = true;
diff --git a/pkgs/development/python-modules/maestral/default.nix b/pkgs/development/python-modules/maestral/default.nix
index 116a94520802..bb7e36e65961 100644
--- a/pkgs/development/python-modules/maestral/default.nix
+++ b/pkgs/development/python-modules/maestral/default.nix
@@ -28,7 +28,7 @@
nixosTests,
}:
-buildPythonPackage rec {
+buildPythonPackage (finalAttrs: {
pname = "maestral";
version = "1.9.6";
pyproject = true;
@@ -36,7 +36,7 @@ buildPythonPackage rec {
src = fetchFromGitHub {
owner = "SamSchott";
repo = "maestral";
- tag = "v${version}";
+ tag = "v${finalAttrs.version}";
hash = "sha256-mYFiQL4FumJWP2y1u5tIo1CZL027J8/EIYqJQde7G/c=";
};
@@ -65,8 +65,14 @@ buildPythonPackage rec {
makeWrapperArgs = [
# Add the installed directories to the python path so the daemon can find them
- "--prefix PYTHONPATH : ${makePythonPath dependencies}"
- "--prefix PYTHONPATH : $out/${python.sitePackages}"
+ "--prefix"
+ "PYTHONPATH"
+ ":"
+ (makePythonPath finalAttrs.finalPackage.dependencies)
+ "--prefix"
+ "PYTHONPATH"
+ ":"
+ "$out/${python.sitePackages}"
];
nativeCheckInputs = [ pytestCheckHook ];
@@ -117,7 +123,7 @@ buildPythonPackage rec {
description = "Open-source Dropbox client for macOS and Linux";
mainProgram = "maestral";
homepage = "https://maestral.app";
- changelog = "https://github.com/samschott/maestral/releases/tag/v${version}";
+ changelog = "https://github.com/samschott/maestral/releases/tag/v${finalAttrs.version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [
natsukium
@@ -125,4 +131,4 @@ buildPythonPackage rec {
sfrijters
];
};
-}
+})
diff --git a/pkgs/development/python-modules/nix-prefetch-github/default.nix b/pkgs/development/python-modules/nix-prefetch-github/default.nix
index ae1d3c35eac2..d4aed2d8de0d 100644
--- a/pkgs/development/python-modules/nix-prefetch-github/default.nix
+++ b/pkgs/development/python-modules/nix-prefetch-github/default.nix
@@ -47,7 +47,7 @@ buildPythonPackage rec {
sphinxRoot = "docs";
# ignore tests which are impure
- DISABLED_TESTS = "network requires_nix_build";
+ env.DISABLED_TESTS = "network requires_nix_build";
meta = {
description = "Prefetch sources from github";
diff --git a/pkgs/development/python-modules/playwright-stealth/default.nix b/pkgs/development/python-modules/playwright-stealth/default.nix
index e6b716e9b2e2..18032f8b0b0e 100644
--- a/pkgs/development/python-modules/playwright-stealth/default.nix
+++ b/pkgs/development/python-modules/playwright-stealth/default.nix
@@ -8,13 +8,13 @@
buildPythonPackage (finalAttrs: {
pname = "playwright-stealth";
- version = "2.0.1";
+ version = "2.0.2";
pyproject = true;
src = fetchPypi {
pname = "playwright_stealth";
inherit (finalAttrs) version;
- hash = "sha256-o29zXWFGnBK9oXm1jV/EIou+5hyc9bE0OxSXpf1R7Bo=";
+ hash = "sha256-rFflGHMZDaXmU+A3IOlIyPCj0GsJjx1WdjED0j7kgUM=";
};
build-system = [ poetry-core ];
diff --git a/pkgs/development/python-modules/py-cid/default.nix b/pkgs/development/python-modules/py-cid/default.nix
index 2f75be74fc96..f60f46f4c2f6 100644
--- a/pkgs/development/python-modules/py-cid/default.nix
+++ b/pkgs/development/python-modules/py-cid/default.nix
@@ -9,12 +9,14 @@
morphys,
py-multihash,
hypothesis,
+ pytest-cov-stub,
+ setuptools,
}:
buildPythonPackage rec {
pname = "py-cid";
version = "0.4.0";
- format = "setuptools";
+ pyproject = true;
src = fetchFromGitHub {
owner = "ipld";
@@ -23,14 +25,11 @@ buildPythonPackage rec {
hash = "sha256-IYjk7sajHFWgsOMxwk1tWvKtTfPN8vHoNeENQed7MiU=";
};
- postPatch = ''
- substituteInPlace setup.py \
- --replace "base58>=1.0.2,<2.0" "base58>=1.0.2" \
- --replace "py-multihash>=0.2.0,<1.0.0" "py-multihash>=0.2.0" \
- --replace "'pytest-runner'," ""
- '';
+ pythonRelaxDeps = [ "base58" ];
- propagatedBuildInputs = [
+ build-system = [ setuptools ];
+
+ dependencies = [
base58
py-multibase
py-multicodec
@@ -40,6 +39,7 @@ buildPythonPackage rec {
nativeCheckInputs = [
pytestCheckHook
+ pytest-cov-stub
hypothesis
];
@@ -48,6 +48,7 @@ buildPythonPackage rec {
meta = {
description = "Self-describing content-addressed identifiers for distributed systems implementation in Python";
homepage = "https://github.com/ipld/py-cid";
+ changelog = "https://github.com/ipld/py-cid/blob/${src.tag}/HISTORY.rst";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ Luflosi ];
};
diff --git a/pkgs/development/python-modules/py-multiaddr/default.nix b/pkgs/development/python-modules/py-multiaddr/default.nix
index b2ad11184d14..9b002fd4058e 100644
--- a/pkgs/development/python-modules/py-multiaddr/default.nix
+++ b/pkgs/development/python-modules/py-multiaddr/default.nix
@@ -1,38 +1,45 @@
{
lib,
+ base58,
buildPythonPackage,
fetchFromGitHub,
- varint,
- base58,
- netaddr,
idna,
+ netaddr,
py-cid,
py-multicodec,
+ trio,
pytestCheckHook,
+ setuptools,
+ psutil,
+ varint,
+ dnspython,
+ trio-typing,
}:
buildPythonPackage rec {
pname = "py-multiaddr";
- version = "0.0.10";
- format = "setuptools";
+ version = "0.0.11";
+ pyproject = true;
src = fetchFromGitHub {
owner = "multiformats";
repo = "py-multiaddr";
tag = "v${version}";
- hash = "sha256-N46D2H3RG6rtdBrSyDjh8UxD+Ph/FXEa4FcEI2uz4y8=";
+ hash = "sha256-mlHcuLVtczp3APXJFkWbjeY7xU39eFERa8hhiOEwBSU=";
};
- postPatch = ''
- substituteInPlace setup.py --replace "'pytest-runner'," ""
- '';
+ build-system = [ setuptools ];
- propagatedBuildInputs = [
+ dependencies = [
varint
base58
netaddr
+ dnspython
+ trio-typing
+ trio
idna
py-cid
+ psutil
py-multicodec
];
@@ -40,9 +47,22 @@ buildPythonPackage rec {
pythonImportsCheck = [ "multiaddr" ];
+ disabledTests = [
+ # Test is outdated
+ "test_resolve_cancellation_with_error"
+ # AssertionError
+ "test_ipv4_wildcard"
+ ];
+
+ disabledTestPaths = [
+ # Tests require network access
+ "tests/test_resolvers.py"
+ ];
+
meta = {
description = "Composable and future-proof network addresses";
homepage = "https://github.com/multiformats/py-multiaddr";
+ changelog = "https://github.com/multiformats/py-multiaddr/releases/tag/${src.tag}";
license = with lib.licenses; [
mit
asl20
diff --git a/pkgs/development/python-modules/python-kadmin-rs/default.nix b/pkgs/development/python-modules/python-kadmin-rs/default.nix
index 7694ed48dc34..35ccf09e80dc 100644
--- a/pkgs/development/python-modules/python-kadmin-rs/default.nix
+++ b/pkgs/development/python-modules/python-kadmin-rs/default.nix
@@ -5,56 +5,69 @@
rustPlatform,
pythonImportsCheckHook,
buildPythonPackage,
-
- cargo,
- rustc,
pkg-config,
- sccache,
- setuptools,
- setuptools-rust,
- setuptools-scm,
+ heimdal,
}:
-
buildPythonPackage rec {
pname = "python-kadmin-rs";
- version = "0.6.3";
+ version = "0.7.0";
pyproject = true;
src = fetchFromGitHub {
owner = "authentik-community";
repo = "kadmin-rs";
rev = "kadmin/version/${version}";
- hash = "sha256-ofoxgaTflem/QG/aQc6M5oxrUl/YoLHzDWlNyeVr0H8=";
+ hash = "sha256-7aRbpQblRFoCmuZJgm2mrGoUNL0BBcIpzlKblCnHVPc=";
};
cargoDeps = rustPlatform.fetchCargoVendor {
inherit src;
- hash = "sha256-mSwuR8TCljPYgVhguZiu2fXprCl+IEyZxE7ML+FBI98=";
+ hash = "sha256-dzTcB5GfeUbgikznq4YFEzZ75z0zvz4I1/+5UCQ0e2o=";
};
+ # The include directories of krb5 and heimdal contain overlapping paths.
+ # Only add one and set the other required paths via environment variables.
buildInputs = [
pkgs.krb5
];
+ env = {
+ KADMIN_MIT_CLIENT_INCLUDES = "${pkgs.krb5.dev}/include";
+ KADMIN_MIT_SERVER_INCLUDES = "${pkgs.krb5.dev}/include";
+ KADMIN_HEIMDAL_CLIENT_INCLUDES = "${heimdal.dev}/include";
+ KADMIN_HEIMDAL_SERVER_INCLUDES = "${heimdal.dev}/include";
+ KADMIN_MIT_CLIENT_KRB5_CONFIG = "${pkgs.krb5.dev}/bin/krb5-config";
+ KADMIN_MIT_SERVER_KRB5_CONFIG = "${pkgs.krb5.dev}/bin/krb5-config";
+ KADMIN_HEIMDAL_CLIENT_KRB5_CONFIG = "${heimdal.dev}/bin/krb5-config";
+ KADMIN_HEIMDAL_SERVER_KRB5_CONFIG = "${heimdal.dev}/bin/krb5-config";
+
+ K5TEST_MIT_KDB5_UTIL = "${pkgs.krb5}/bin/kdb5_util";
+ K5TEST_MIT_KRB5KDC = "${pkgs.krb5}/bin/krb5kdc";
+ K5TEST_MIT_KADMIN = "${pkgs.krb5}/bin/kadmin";
+ K5TEST_MIT_KADMIN_LOCAL = "${pkgs.krb5}/bin/kadmin.local";
+ K5TEST_MIT_KADMIND = "${pkgs.krb5}/bin/kadmind";
+ K5TEST_MIT_KPROP = "${pkgs.krb5}/bin/kprop";
+ K5TEST_MIT_KINIT = "${pkgs.krb5}/bin/kinit";
+ K5TEST_MIT_KLIST = "${pkgs.krb5}/bin/klist";
+
+ K5TEST_HEIMDAL_KDC = "${heimdal}/libexec/kdc";
+ K5TEST_HEIMDAL_KADMIN = "${heimdal}/bin/kadmin";
+ K5TEST_HEIMDAL_KADMIND = "${heimdal}/libexec/kadmind";
+ K5TEST_HEIMDAL_KINIT = "${heimdal}/bin/kinit";
+ K5TEST_HEIMDAL_KLIST = "${heimdal}/bin/klist";
+ K5TEST_HEIMDAL_KTUTIL = "${heimdal}/bin/ktutil";
+ };
+
nativeBuildInputs = [
- sccache
pkg-config
pythonImportsCheckHook
rustPlatform.bindgenHook
rustPlatform.cargoSetupHook
- cargo
- rustc
- ];
-
- build-system = [
- setuptools
- setuptools-rust
- setuptools-scm
+ rustPlatform.maturinBuildHook
];
pythonImportsCheck = [
"kadmin"
- "kadmin_local"
];
meta = {
diff --git a/pkgs/development/python-modules/sacremoses/default.nix b/pkgs/development/python-modules/sacremoses/default.nix
index 9bcfb97d989b..98b49fa4cac0 100644
--- a/pkgs/development/python-modules/sacremoses/default.nix
+++ b/pkgs/development/python-modules/sacremoses/default.nix
@@ -1,38 +1,44 @@
{
- buildPythonPackage,
lib,
+ buildPythonPackage,
fetchFromGitHub,
+ # build-system
+ setuptools,
+ # dependencies
click,
- six,
- tqdm,
joblib,
- pytest,
+ regex,
+ tqdm,
+ # tests
+ pytestCheckHook,
}:
-buildPythonPackage rec {
+buildPythonPackage (finalAttrs: {
pname = "sacremoses";
- version = "0.0.35";
- format = "setuptools";
+ version = "0.1.1";
+ pyproject = true;
src = fetchFromGitHub {
- owner = "alvations";
+ owner = "hplt-project";
repo = "sacremoses";
- rev = version;
- sha256 = "1gzr56w8yx82mn08wax5m0xyg15ym4ri5l80gmagp8r53443j770";
+ tag = finalAttrs.version;
+ sha256 = "sha256-ked6/8oaGJwVW1jvpjrWtJYfr0GKUHdJyaEuzid/S3M=";
};
- propagatedBuildInputs = [
+ build-system = [ setuptools ];
+
+ dependencies = [
click
- six
- tqdm
joblib
+ regex
+ tqdm
];
- nativeCheckInputs = [ pytest ];
+ nativeCheckInputs = [ pytestCheckHook ];
# ignore tests which call to remote host
- checkPhase = ''
- pytest -k 'not truecase'
- '';
+ disabledTestPaths = [
+ "sacremoses/test/test_truecaser.py::TestTruecaser"
+ ];
meta = {
homepage = "https://github.com/alvations/sacremoses";
@@ -42,4 +48,4 @@ buildPythonPackage rec {
platforms = lib.platforms.unix;
maintainers = with lib.maintainers; [ pashashocky ];
};
-}
+})
diff --git a/pkgs/development/python-modules/scikit-build-core/default.nix b/pkgs/development/python-modules/scikit-build-core/default.nix
index a436bb78aa32..b4f68998eb7f 100644
--- a/pkgs/development/python-modules/scikit-build-core/default.nix
+++ b/pkgs/development/python-modules/scikit-build-core/default.nix
@@ -1,7 +1,9 @@
{
lib,
+ stdenv,
buildPythonPackage,
fetchFromGitHub,
+ fetchpatch,
# build-system
hatch-vcs,
@@ -25,7 +27,7 @@
wheel,
}:
-buildPythonPackage rec {
+buildPythonPackage (finalAttrs: {
pname = "scikit-build-core";
version = "0.11.6";
pyproject = true;
@@ -33,10 +35,20 @@ buildPythonPackage rec {
src = fetchFromGitHub {
owner = "scikit-build";
repo = "scikit-build-core";
- tag = "v${version}";
+ tag = "v${finalAttrs.version}";
hash = "sha256-zBTDacTkeclz+/X0SUl1xkxLz4zsfeLOD4Ew0V1Y1iU=";
};
+ # TODO: Rebuild avoidance; clean up on `staging`.
+ ${if stdenv.hostPlatform.isDarwin then "patches" else null} = [
+ # Backport an upstream commit to fix the tests on Darwin.
+ (fetchpatch {
+ url = "https://github.com/scikit-build/scikit-build-core/commit/c30f52a3b2bd01dc05f23d3b89332c213006afe0.patch";
+ excludes = [ ".github/workflows/ci.yml" ];
+ hash = "sha256-5E9QfF5UcSNY1wzHzieEEHEPYzPjUTb66CKCodYb9vo=";
+ })
+ ];
+
postPatch = "";
build-system = [
@@ -84,8 +96,8 @@ buildPythonPackage rec {
meta = {
description = "Next generation Python CMake adaptor and Python API for plugins";
homepage = "https://github.com/scikit-build/scikit-build-core";
- changelog = "https://github.com/scikit-build/scikit-build-core/blob/${src.tag}/docs/about/changelog.md";
+ changelog = "https://github.com/scikit-build/scikit-build-core/blob/${finalAttrs.src.tag}/docs/about/changelog.md";
license = with lib.licenses; [ asl20 ];
maintainers = with lib.maintainers; [ veprbl ];
};
-}
+})
diff --git a/pkgs/development/python-modules/signxml/default.nix b/pkgs/development/python-modules/signxml/default.nix
index fa4ae55d6465..e1f33a11763e 100644
--- a/pkgs/development/python-modules/signxml/default.nix
+++ b/pkgs/development/python-modules/signxml/default.nix
@@ -13,14 +13,14 @@
buildPythonPackage (finalAttrs: {
pname = "signxml";
- version = "4.2.2";
+ version = "4.3.1";
pyproject = true;
src = fetchFromGitHub {
owner = "XML-Security";
repo = "signxml";
tag = "v${finalAttrs.version}";
- hash = "sha256-IZa62HIsCsNiIlHhLgy0GRIq+E3HBnYSdy/LtDvPa/E=";
+ hash = "sha256-yAqew1y9LBCKGSc4B9r/c/2XtQzQur4lvVQJUExk95E=";
};
build-system = [
diff --git a/pkgs/development/python-modules/tensorflow/default.nix b/pkgs/development/python-modules/tensorflow/default.nix
index 75cd0d771d71..22f2220d30c2 100644
--- a/pkgs/development/python-modules/tensorflow/default.nix
+++ b/pkgs/development/python-modules/tensorflow/default.nix
@@ -344,84 +344,89 @@ let
++ lib.optionals mklSupport [ mkl ]
++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ nsync ];
- # arbitrarily set to the current latest bazel version, overly careful
- TF_IGNORE_MAX_BAZEL_VERSION = true;
+ env = {
+ # arbitrarily set to the current latest bazel version, overly careful
+ TF_IGNORE_MAX_BAZEL_VERSION = true;
- LIBTOOL = lib.optionalString stdenv.hostPlatform.isDarwin "${cctools}/bin/libtool";
+ LIBTOOL = lib.optionalString stdenv.hostPlatform.isDarwin "${cctools}/bin/libtool";
- # Take as many libraries from the system as possible. Keep in sync with
- # list of valid syslibs in
- # https://github.com/tensorflow/tensorflow/blob/master/third_party/systemlibs/syslibs_configure.bzl
- TF_SYSTEM_LIBS = lib.concatStringsSep "," (
- [
- "absl_py"
- "astor_archive"
- "astunparse_archive"
- "boringssl"
- "com_google_absl"
- # Not packaged in nixpkgs
- # "com_github_googleapis_googleapis"
- # "com_github_googlecloudplatform_google_cloud_cpp"
- "com_github_grpc_grpc"
- "com_google_protobuf"
- # Fails with the error: external/org_tensorflow/tensorflow/core/profiler/utils/tf_op_utils.cc:46:49: error: no matching function for call to 're2::RE2::FullMatch(absl::lts_2020_02_25::string_view&, re2::RE2&)'
- # "com_googlesource_code_re2"
- "curl"
- "cython"
- "dill_archive"
- "double_conversion"
- "flatbuffers"
- "functools32_archive"
- "gast_archive"
- "gif"
- "hwloc"
- "icu"
- "jsoncpp_git"
- "libjpeg_turbo"
- "nasm"
- "opt_einsum_archive"
- "org_sqlite"
- "pasta"
- "png"
- "pybind11"
- "six_archive"
- "snappy"
- "tblib_archive"
- "termcolor_archive"
- "typing_extensions_archive"
- "wrapt"
- "zlib"
- ]
- ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
- "nsync" # fails to build on darwin
- ]
- );
+ # Take as many libraries from the system as possible. Keep in sync with
+ # list of valid syslibs in
+ # https://github.com/tensorflow/tensorflow/blob/master/third_party/systemlibs/syslibs_configure.bzl
+ TF_SYSTEM_LIBS = lib.concatStringsSep "," (
+ [
+ "absl_py"
+ "astor_archive"
+ "astunparse_archive"
+ "boringssl"
+ "com_google_absl"
+ # Not packaged in nixpkgs
+ # "com_github_googleapis_googleapis"
+ # "com_github_googlecloudplatform_google_cloud_cpp"
+ "com_github_grpc_grpc"
+ "com_google_protobuf"
+ # Fails with the error: external/org_tensorflow/tensorflow/core/profiler/utils/tf_op_utils.cc:46:49: error: no matching function for call to 're2::RE2::FullMatch(absl::lts_2020_02_25::string_view&, re2::RE2&)'
+ # "com_googlesource_code_re2"
+ "curl"
+ "cython"
+ "dill_archive"
+ "double_conversion"
+ "flatbuffers"
+ "functools32_archive"
+ "gast_archive"
+ "gif"
+ "hwloc"
+ "icu"
+ "jsoncpp_git"
+ "libjpeg_turbo"
+ "nasm"
+ "opt_einsum_archive"
+ "org_sqlite"
+ "pasta"
+ "png"
+ "pybind11"
+ "six_archive"
+ "snappy"
+ "tblib_archive"
+ "termcolor_archive"
+ "typing_extensions_archive"
+ "wrapt"
+ "zlib"
+ ]
+ ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
+ "nsync" # fails to build on darwin
+ ]
+ );
- INCLUDEDIR = "${includes_joined}/include";
+ INCLUDEDIR = "${includes_joined}/include";
- # This is needed for the Nix-provided protobuf dependency to work,
- # as otherwise the rule `link_proto_files` tries to create the links
- # to `/usr/include/...` which results in build failures.
- PROTOBUF_INCLUDE_PATH = "${protobuf-core}/include";
+ # This is needed for the Nix-provided protobuf dependency to work,
+ # as otherwise the rule `link_proto_files` tries to create the links
+ # to `/usr/include/...` which results in build failures.
+ PROTOBUF_INCLUDE_PATH = "${protobuf-core}/include";
- PYTHON_BIN_PATH = pythonEnv.interpreter;
+ PYTHON_BIN_PATH = pythonEnv.interpreter;
- TF_NEED_GCP = true;
- TF_NEED_HDFS = true;
- TF_ENABLE_XLA = tfFeature xlaSupport;
+ TF_NEED_GCP = true;
+ TF_NEED_HDFS = true;
+ TF_ENABLE_XLA = tfFeature xlaSupport;
- CC_OPT_FLAGS = " ";
+ CC_OPT_FLAGS = " ";
- # https://github.com/tensorflow/tensorflow/issues/14454
- TF_NEED_MPI = tfFeature cudaSupport;
+ # https://github.com/tensorflow/tensorflow/issues/14454
+ TF_NEED_MPI = tfFeature cudaSupport;
- TF_NEED_CUDA = tfFeature cudaSupport;
- TF_CUDA_PATHS = lib.optionalString cudaSupport "${cudatoolkitDevMerged},${cudnnMerged},${lib.getLib nccl}";
- TF_CUDA_COMPUTE_CAPABILITIES = lib.concatStringsSep "," cudaCapabilities;
+ TF_NEED_CUDA = tfFeature cudaSupport;
+ TF_CUDA_PATHS = lib.optionalString cudaSupport "${cudatoolkitDevMerged},${cudnnMerged},${lib.getLib nccl}";
+ TF_CUDA_COMPUTE_CAPABILITIES = lib.concatStringsSep "," cudaCapabilities;
- # Needed even when we override stdenv: e.g. for ar
- GCC_HOST_COMPILER_PREFIX = lib.optionalString cudaSupport "${cudatoolkit_cc_joined}/bin";
- GCC_HOST_COMPILER_PATH = lib.optionalString cudaSupport "${cudatoolkit_cc_joined}/bin/cc";
+ # Needed even when we override stdenv: e.g. for ar
+ GCC_HOST_COMPILER_PREFIX = lib.optionalString cudaSupport "${cudatoolkit_cc_joined}/bin";
+ GCC_HOST_COMPILER_PATH = lib.optionalString cudaSupport "${cudatoolkit_cc_joined}/bin/cc";
+
+ # https://github.com/tensorflow/tensorflow/pull/39470
+ NIX_CFLAGS_COMPILE = toString [ "-Wno-stringop-truncation" ];
+ };
patches = [
"${gentoo-patches}/0002-systemlib-Latest-absl-LTS-has-split-cord-libs.patch"
@@ -453,9 +458,6 @@ let
sed -i '/tensorboard ~=/d' tensorflow/tools/pip_package/setup.py
'';
- # https://github.com/tensorflow/tensorflow/pull/39470
- env.NIX_CFLAGS_COMPILE = toString [ "-Wno-stringop-truncation" ];
-
preConfigure =
let
opt_flags =
diff --git a/pkgs/development/python-modules/zammad-py/default.nix b/pkgs/development/python-modules/zammad-py/default.nix
index 656c153ac682..b7249c9b4416 100644
--- a/pkgs/development/python-modules/zammad-py/default.nix
+++ b/pkgs/development/python-modules/zammad-py/default.nix
@@ -7,16 +7,16 @@
pytestCheckHook,
}:
-buildPythonPackage rec {
+buildPythonPackage (finalAttrs: {
pname = "zammad-py";
- version = "3.2.0";
+ version = "3.2.1";
pyproject = true;
src = fetchFromGitHub {
owner = "joeirimpan";
repo = "zammad_py";
- tag = "v${version}";
- hash = "sha256-gU5OA5m8X03GM7ImXZZVLkEyoAXRCoFskfop8oXJFH0=";
+ tag = "v${finalAttrs.version}";
+ hash = "sha256-idPT3H2mlHoC8gHAQHOAcQJKciPZyagVEmojcKbj8ls=";
};
build-system = [
@@ -37,6 +37,9 @@ buildPythonPackage rec {
"test_tickets"
"test_groups"
"test_pagination"
+ "test_knowledge_bases"
+ "test_knowledge_bases_answers"
+ "test_knowledge_bases_categories"
];
pythonImportsCheck = [
@@ -44,10 +47,10 @@ buildPythonPackage rec {
];
meta = {
- changelog = "https://github.com/joeirimpan/zammad_py/blob/${src.tag}/HISTORY.rst";
+ changelog = "https://github.com/joeirimpan/zammad_py/blob/${finalAttrs.src.tag}/HISTORY.md";
description = "Python API client for accessing zammad REST API";
homepage = "https://github.com/joeirimpan/zammad_py";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ hexa ];
};
-}
+})
diff --git a/pkgs/development/rocq-modules/mathcomp-bigenough/default.nix b/pkgs/development/rocq-modules/mathcomp-bigenough/default.nix
new file mode 100644
index 000000000000..2643fdda7456
--- /dev/null
+++ b/pkgs/development/rocq-modules/mathcomp-bigenough/default.nix
@@ -0,0 +1,37 @@
+{
+ rocq-core,
+ mkRocqDerivation,
+ mathcomp-boot,
+ lib,
+ version ? null,
+}:
+
+mkRocqDerivation {
+
+ namePrefix = [
+ "rocq-core"
+ "mathcomp"
+ ];
+ pname = "bigenough";
+ owner = "math-comp";
+
+ release = {
+ "1.0.4".sha256 = "sha256-cwfDCEFSXWnqV5aIrhTviUti0CXNwmFe6zVbqlD2iZw=";
+ };
+ inherit version;
+ defaultVersion =
+ let
+ case = case: out: { inherit case out; };
+ in
+ with lib.versions;
+ lib.switch rocq-core.rocq-version [
+ (case (range "9.0" "9.1") "1.0.4")
+ ] null;
+
+ propagatedBuildInputs = [ mathcomp-boot ];
+
+ meta = {
+ description = "Small library to do epsilon - N reasonning";
+ license = lib.licenses.cecill-b;
+ };
+}
diff --git a/pkgs/development/rocq-modules/mathcomp-finmap/default.nix b/pkgs/development/rocq-modules/mathcomp-finmap/default.nix
new file mode 100644
index 000000000000..5fd9b61f82e4
--- /dev/null
+++ b/pkgs/development/rocq-modules/mathcomp-finmap/default.nix
@@ -0,0 +1,45 @@
+{
+ rocq-core,
+ mkRocqDerivation,
+ mathcomp-boot,
+ lib,
+ version ? null,
+}:
+
+mkRocqDerivation {
+
+ namePrefix = [
+ "rocq-core"
+ "mathcomp"
+ ];
+ pname = "finmap";
+ owner = "math-comp";
+ inherit version;
+ defaultVersion =
+ let
+ case = rocq: mc: out: {
+ cases = [
+ rocq
+ mc
+ ];
+ inherit out;
+ };
+ in
+ with lib.versions;
+ lib.switch
+ [ rocq-core.rocq-version mathcomp-boot.version ]
+ [
+ (case (range "9.0" "9.1") (range "2.3" "2.5") "2.2.2")
+ ]
+ null;
+ release = {
+ "2.2.2".sha256 = "sha256-G5fSdx4MhOXtQ2H8lpyK5FuIbWAZNc7vRL3hcYmGA2o=";
+ };
+
+ propagatedBuildInputs = [ mathcomp-boot ];
+
+ meta = {
+ description = "Finset and finmap library";
+ license = lib.licenses.cecill-b;
+ };
+}
diff --git a/pkgs/development/tools/godot/4.6/default.nix b/pkgs/development/tools/godot/4.6/default.nix
index 39613ff06e5b..a0ac2cbb947a 100644
--- a/pkgs/development/tools/godot/4.6/default.nix
+++ b/pkgs/development/tools/godot/4.6/default.nix
@@ -1,11 +1,11 @@
{
- version = "4.6-stable";
- hash = "sha256-lK9KQsmrNZLx7yP3PwbN93otwkWq2H+nWt85WH/u8oI=";
+ version = "4.6.1-stable";
+ hash = "sha256-C3AX+Gl6a3nX/k0TP6FYjYCK9AbKmtku+1ilYBu0R74=";
default = {
- exportTemplatesHash = "sha256-OzCsjBdy8l9d+l9lkiyrCpDnuWAXaJEjfFdyUV68zEY=";
+ exportTemplatesHash = "sha256-5tNyr9T9+q6VceteNWivzZbObbmlaSRANBVPrwrGmHU=";
};
mono = {
- exportTemplatesHash = "sha256-RgVug5TNHx+FzPqr3f/Bpn9ZW/2Z+9ps1ir6dR2/xRk=";
+ exportTemplatesHash = "sha256-V5JmHtCJVQNX4OEJVK9pWEa+CjLtdJT6QKAAnjtaPqk=";
nugetDeps = ./deps.json;
};
}
diff --git a/pkgs/development/tools/godot/common.nix b/pkgs/development/tools/godot/common.nix
index 48eeca61fa6a..6e8f5b668890 100644
--- a/pkgs/development/tools/godot/common.nix
+++ b/pkgs/development/tools/godot/common.nix
@@ -461,35 +461,36 @@ let
(allow file-read* (subpath "/System/Library/CoreServices/SystemAppearance.bundle"))
'';
- patches = [
- ./Linux-fix-missing-library-with-builtin_glslang-false.patch
- ]
- ++ lib.optionals (lib.versionAtLeast version "4.6") [
- # https://github.com/godotengine/godot/pull/115450
- (fetchpatch {
- name = "fix-tls-handshake-fail-preventing-assetlib-use.patch";
- url = "https://github.com/godotengine/godot/commit/29acd734c71f06268d6ef4715d7df70b14731f48.patch";
- hash = "sha256-wxkr6jPtutUTG+mYrXoxcDcWIIZghlSJ79XqhFh/0P4=";
- })
- ]
- ++ lib.optionals (lib.versionOlder version "4.4") [
- (fetchpatch {
- name = "wayland-header-fix.patch";
- url = "https://github.com/godotengine/godot/commit/6ce71f0fb0a091cffb6adb4af8ab3f716ad8930b.patch";
- hash = "sha256-hgAtAtCghF5InyGLdE9M+9PjPS1BWXWGKgIAyeuqkoU=";
- })
- (fetchpatch {
- name = "thorvg-header-fix.patch";
- url = "https://github.com/godotengine/godot/commit/1823460787a6c1bb8e4eaf21ac2a3f90d24d5ee0.patch";
- hash = "sha256-PcHEMXd0v2c3j6Eitxt5uWi6cD+OmsBAn3TNMNRNPog=";
- })
- # Fix a crash in the mono test project build. It no longer seems to
- # happen in 4.4, but an existing fix couldn't be identified.
- ./CSharpLanguage-fix-crash-in-reload_assemblies-after-.patch
- ]
- ++ lib.optional (
- stdenv.hostPlatform.isDarwin && lib.versionAtLeast version "4.4"
- ) ./fix-moltenvk-detection.patch;
+ patches =
+ lib.optionals (lib.versionOlder version "4.6") [
+ ./Linux-fix-missing-library-with-builtin_glslang-false.patch
+ ]
+ ++ lib.optionals (lib.versionAtLeast version "4.6") [
+ # https://github.com/godotengine/godot/pull/115450
+ (fetchpatch {
+ name = "fix-tls-handshake-fail-preventing-assetlib-use.patch";
+ url = "https://github.com/godotengine/godot/commit/29acd734c71f06268d6ef4715d7df70b14731f48.patch";
+ hash = "sha256-wxkr6jPtutUTG+mYrXoxcDcWIIZghlSJ79XqhFh/0P4=";
+ })
+ ]
+ ++ lib.optionals (lib.versionOlder version "4.4") [
+ (fetchpatch {
+ name = "wayland-header-fix.patch";
+ url = "https://github.com/godotengine/godot/commit/6ce71f0fb0a091cffb6adb4af8ab3f716ad8930b.patch";
+ hash = "sha256-hgAtAtCghF5InyGLdE9M+9PjPS1BWXWGKgIAyeuqkoU=";
+ })
+ (fetchpatch {
+ name = "thorvg-header-fix.patch";
+ url = "https://github.com/godotengine/godot/commit/1823460787a6c1bb8e4eaf21ac2a3f90d24d5ee0.patch";
+ hash = "sha256-PcHEMXd0v2c3j6Eitxt5uWi6cD+OmsBAn3TNMNRNPog=";
+ })
+ # Fix a crash in the mono test project build. It no longer seems to
+ # happen in 4.4, but an existing fix couldn't be identified.
+ ./CSharpLanguage-fix-crash-in-reload_assemblies-after-.patch
+ ]
+ ++ lib.optional (
+ stdenv.hostPlatform.isDarwin && lib.versionAtLeast version "4.4"
+ ) ./fix-moltenvk-detection.patch;
postPatch = ''
# this stops scons from hiding e.g. NIX_CFLAGS_COMPILE
diff --git a/pkgs/development/tools/misc/libtool/libtool2.nix b/pkgs/development/tools/misc/libtool/libtool2.nix
index 059fbf70e4d0..f087e49b13a8 100644
--- a/pkgs/development/tools/misc/libtool/libtool2.nix
+++ b/pkgs/development/tools/misc/libtool/libtool2.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
# FILECMD was added in libtool 2.4.7; previous versions hardwired `/usr/bin/file`
# https://lists.gnu.org/archive/html/autotools-announce/2022-03/msg00000.html
- FILECMD = "${file}/bin/file";
+ env.FILECMD = "${file}/bin/file";
postPatch =
# libtool commit da2e352735722917bf0786284411262195a6a3f6 changed
diff --git a/pkgs/development/tools/parsing/antlr/2.7.7.nix b/pkgs/development/tools/parsing/antlr/2.7.7.nix
index dc476806e1bb..cee3ff1b2e32 100644
--- a/pkgs/development/tools/parsing/antlr/2.7.7.nix
+++ b/pkgs/development/tools/parsing/antlr/2.7.7.nix
@@ -15,7 +15,9 @@ stdenv.mkDerivation rec {
patches = [ ./2.7.7-fixes.patch ];
buildInputs = [ jdk ];
- CXXFLAGS = lib.optionalString stdenv.hostPlatform.isDarwin "-D_LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION";
+ env = lib.optionalAttrs stdenv.hostPlatform.isDarwin {
+ CXXFLAGS = "-D_LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION";
+ };
meta = {
description = "Powerful parser generator";
diff --git a/pkgs/misc/uboot/default.nix b/pkgs/misc/uboot/default.nix
index 1c4fab7c75ab..78abd41049ac 100644
--- a/pkgs/misc/uboot/default.nix
+++ b/pkgs/misc/uboot/default.nix
@@ -261,8 +261,10 @@ in
ubootBananaPim64 = buildUBoot {
defconfig = "bananapi_m64_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareAllwinner}/bl31.bin";
- SCP = "/dev/null";
+ env = {
+ BL31 = "${armTrustedFirmwareAllwinner}/bl31.bin";
+ SCP = "/dev/null";
+ };
filesToInstall = [ "u-boot-sunxi-with-spl.bin" ];
};
@@ -276,8 +278,10 @@ in
ubootCM3588NAS = buildUBoot {
defconfig = "cm3588-nas-rk3588_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareRK3588}/bl31.elf";
- ROCKCHIP_TPL = rkbin.TPL_RK3588;
+ env = {
+ BL31 = "${armTrustedFirmwareRK3588}/bl31.elf";
+ ROCKCHIP_TPL = rkbin.TPL_RK3588;
+ };
filesToInstall = [
"u-boot.itb"
"idbloader.img"
@@ -377,7 +381,7 @@ in
platforms = [ "aarch64-linux" ];
license = lib.licenses.unfreeRedistributableFirmware;
};
- BL31 = "${armTrustedFirmwareRK3399}/bl31.elf";
+ env.BL31 = "${armTrustedFirmwareRK3399}/bl31.elf";
filesToInstall = [
"u-boot.itb"
"idbloader.img"
@@ -391,8 +395,10 @@ in
ubootNanoPCT6 = buildUBoot {
defconfig = "nanopc-t6-rk3588_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareRK3588}/bl31.elf";
- ROCKCHIP_TPL = rkbin.TPL_RK3588;
+ env = {
+ BL31 = "${armTrustedFirmwareRK3588}/bl31.elf";
+ ROCKCHIP_TPL = rkbin.TPL_RK3588;
+ };
filesToInstall = [
"u-boot.itb"
"idbloader.img"
@@ -404,8 +410,10 @@ in
ubootNanoPiR5S = buildUBoot {
defconfig = "nanopi-r5s-rk3568_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = rkbin.BL31_RK3568;
- ROCKCHIP_TPL = rkbin.TPL_RK3568;
+ env = {
+ BL31 = rkbin.BL31_RK3568;
+ ROCKCHIP_TPL = rkbin.TPL_RK3568;
+ };
filesToInstall = [
"idbloader.img"
"u-boot.itb"
@@ -490,25 +498,31 @@ in
ubootOlimexA64Olinuxino = buildUBoot {
defconfig = "a64-olinuxino-emmc_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareAllwinner}/bl31.bin";
- SCP = "/dev/null";
+ env = {
+ BL31 = "${armTrustedFirmwareAllwinner}/bl31.bin";
+ SCP = "/dev/null";
+ };
filesToInstall = [ "u-boot-sunxi-with-spl.bin" ];
};
ubootOlimexA64Teres1 = buildUBoot {
defconfig = "teres_i_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareAllwinner}/bl31.bin";
- # Using /dev/null here is upstream-specified way that disables the inclusion of crust-firmware as it's not yet packaged and without which the build will fail -- https://docs.u-boot.org/en/latest/board/allwinner/sunxi.html#building-the-crust-management-processor-firmware
- SCP = "/dev/null";
+ env = {
+ BL31 = "${armTrustedFirmwareAllwinner}/bl31.bin";
+ # Using /dev/null here is upstream-specified way that disables the inclusion of crust-firmware as it's not yet packaged and without which the build will fail -- https://docs.u-boot.org/en/latest/board/allwinner/sunxi.html#building-the-crust-management-processor-firmware
+ SCP = "/dev/null";
+ };
filesToInstall = [ "u-boot-sunxi-with-spl.bin" ];
};
ubootOrangePi5 = buildUBoot {
defconfig = "orangepi-5-rk3588s_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareRK3588}/bl31.elf";
- ROCKCHIP_TPL = rkbin.TPL_RK3588;
+ env = {
+ BL31 = "${armTrustedFirmwareRK3588}/bl31.elf";
+ ROCKCHIP_TPL = rkbin.TPL_RK3588;
+ };
filesToInstall = [
"u-boot.itb"
"idbloader.img"
@@ -520,8 +534,10 @@ in
ubootOrangePi5Max = buildUBoot {
defconfig = "orangepi-5-max-rk3588_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareRK3588}/bl31.elf";
- ROCKCHIP_TPL = rkbin.TPL_RK3588;
+ env = {
+ BL31 = "${armTrustedFirmwareRK3588}/bl31.elf";
+ ROCKCHIP_TPL = rkbin.TPL_RK3588;
+ };
filesToInstall = [
"u-boot.itb"
"idbloader.img"
@@ -533,8 +549,10 @@ in
ubootOrangePi5Plus = buildUBoot {
defconfig = "orangepi-5-plus-rk3588_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareRK3588}/bl31.elf";
- ROCKCHIP_TPL = rkbin.TPL_RK3588;
+ env = {
+ BL31 = "${armTrustedFirmwareRK3588}/bl31.elf";
+ ROCKCHIP_TPL = rkbin.TPL_RK3588;
+ };
filesToInstall = [
"u-boot.itb"
"idbloader.img"
@@ -552,8 +570,10 @@ in
ubootOrangePiZeroPlus2H5 = buildUBoot {
defconfig = "orangepi_zero_plus2_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareAllwinner}/bl31.bin";
- SCP = "/dev/null";
+ env = {
+ BL31 = "${armTrustedFirmwareAllwinner}/bl31.bin";
+ SCP = "/dev/null";
+ };
filesToInstall = [ "u-boot-sunxi-with-spl.bin" ];
};
@@ -566,7 +586,7 @@ in
ubootOrangePiZero2 = buildUBoot {
defconfig = "orangepi_zero2_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareAllwinnerH616}/bl31.bin";
+ env.BL31 = "${armTrustedFirmwareAllwinnerH616}/bl31.bin";
filesToInstall = [ "u-boot-sunxi-with-spl.bin" ];
};
@@ -576,23 +596,27 @@ in
# According to https://linux-sunxi.org/H616 the H618 "is a minor update with a larger (1MB) L2 cache" (compared to the H616)
# but "does require extra support in U-Boot, TF-A and sunxi-fel. Support for that has been merged in mainline releases."
# But no extra support seems to be in TF-A.
- BL31 = "${armTrustedFirmwareAllwinnerH616}/bl31.bin";
+ env.BL31 = "${armTrustedFirmwareAllwinnerH616}/bl31.bin";
filesToInstall = [ "u-boot-sunxi-with-spl.bin" ];
};
ubootOrangePi3 = buildUBoot {
defconfig = "orangepi_3_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareAllwinnerH6}/bl31.bin";
- SCP = "/dev/null";
+ env = {
+ BL31 = "${armTrustedFirmwareAllwinnerH6}/bl31.bin";
+ SCP = "/dev/null";
+ };
filesToInstall = [ "u-boot-sunxi-with-spl.bin" ];
};
ubootOrangePi3B = buildUBoot {
defconfig = "orangepi-3b-rk3566_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- ROCKCHIP_TPL = rkbin.TPL_RK3568;
- BL31 = rkbin.BL31_RK3568;
+ env = {
+ ROCKCHIP_TPL = rkbin.TPL_RK3568;
+ BL31 = rkbin.BL31_RK3568;
+ };
filesToInstall = [
"u-boot.itb"
"idbloader.img"
@@ -610,31 +634,37 @@ in
ubootPine64 = buildUBoot {
defconfig = "pine64_plus_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareAllwinner}/bl31.bin";
- SCP = "/dev/null";
+ env = {
+ BL31 = "${armTrustedFirmwareAllwinner}/bl31.bin";
+ SCP = "/dev/null";
+ };
filesToInstall = [ "u-boot-sunxi-with-spl.bin" ];
};
ubootPine64LTS = buildUBoot {
defconfig = "pine64-lts_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareAllwinner}/bl31.bin";
- SCP = "/dev/null";
+ env = {
+ BL31 = "${armTrustedFirmwareAllwinner}/bl31.bin";
+ SCP = "/dev/null";
+ };
filesToInstall = [ "u-boot-sunxi-with-spl.bin" ];
};
ubootPinebook = buildUBoot {
defconfig = "pinebook_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareAllwinner}/bl31.bin";
- SCP = "/dev/null";
+ env = {
+ BL31 = "${armTrustedFirmwareAllwinner}/bl31.bin";
+ SCP = "/dev/null";
+ };
filesToInstall = [ "u-boot-sunxi-with-spl.bin" ];
};
ubootPinebookPro = buildUBoot {
defconfig = "pinebook-pro-rk3399_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareRK3399}/bl31.elf";
+ env.BL31 = "${armTrustedFirmwareRK3399}/bl31.elf";
filesToInstall = [
"u-boot.itb"
"idbloader.img"
@@ -689,8 +719,10 @@ in
ubootQuartz64B = buildUBoot {
defconfig = "quartz64-b-rk3566_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareRK3568}/bl31.elf";
- ROCKCHIP_TPL = rkbin.TPL_RK3566;
+ env = {
+ BL31 = "${armTrustedFirmwareRK3568}/bl31.elf";
+ ROCKCHIP_TPL = rkbin.TPL_RK3566;
+ };
filesToInstall = [
"idbloader.img"
"idbloader-spi.img"
@@ -703,8 +735,10 @@ in
ubootRadxaZero3W = buildUBoot {
defconfig = "radxa-zero-3-rk3566_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareRK3568}/bl31.elf";
- ROCKCHIP_TPL = rkbin.TPL_RK3566;
+ env = {
+ BL31 = "${armTrustedFirmwareRK3568}/bl31.elf";
+ ROCKCHIP_TPL = rkbin.TPL_RK3566;
+ };
filesToInstall = [
"idbloader.img"
"u-boot.itb"
@@ -757,7 +791,7 @@ in
ubootRock4CPlus = buildUBoot {
defconfig = "rock-4c-plus-rk3399_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareRK3399}/bl31.elf";
+ env.BL31 = "${armTrustedFirmwareRK3399}/bl31.elf";
filesToInstall = [
"u-boot.itb"
"idbloader.img"
@@ -767,8 +801,10 @@ in
ubootRock5ModelB = buildUBoot {
defconfig = "rock5b-rk3588_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareRK3588}/bl31.elf";
- ROCKCHIP_TPL = rkbin.TPL_RK3588;
+ env = {
+ BL31 = "${armTrustedFirmwareRK3588}/bl31.elf";
+ ROCKCHIP_TPL = rkbin.TPL_RK3588;
+ };
filesToInstall = [
"u-boot.itb"
"idbloader.img"
@@ -780,7 +816,7 @@ in
ubootRock64 = buildUBoot {
defconfig = "rock64-rk3328_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareRK3328}/bl31.elf";
+ env.BL31 = "${armTrustedFirmwareRK3328}/bl31.elf";
filesToInstall = [
"u-boot.itb"
"idbloader.img"
@@ -805,7 +841,7 @@ in
'';
defconfig = "rock64-rk3328_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareRK3328}/bl31.elf";
+ env.BL31 = "${armTrustedFirmwareRK3328}/bl31.elf";
filesToInstall = [
"u-boot.itb"
"idbloader.img"
@@ -816,7 +852,7 @@ in
ubootRockPiE = buildUBoot {
defconfig = "rock-pi-e-rk3328_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareRK3328}/bl31.elf";
+ env.BL31 = "${armTrustedFirmwareRK3328}/bl31.elf";
filesToInstall = [
"u-boot.itb"
"idbloader.img"
@@ -827,7 +863,7 @@ in
ubootRockPro64 = buildUBoot {
defconfig = "rockpro64-rk3399_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareRK3399}/bl31.elf";
+ env.BL31 = "${armTrustedFirmwareRK3399}/bl31.elf";
filesToInstall = [
"u-boot.itb"
"idbloader.img"
@@ -842,7 +878,7 @@ in
"u-boot.itb"
"idbloader.img"
];
- BL31 = "${armTrustedFirmwareRK3399}/bl31.elf";
+ env.BL31 = "${armTrustedFirmwareRK3399}/bl31.elf";
};
ubootSheevaplug = buildUBoot {
@@ -857,16 +893,20 @@ in
ubootSopine = buildUBoot {
defconfig = "sopine_baseboard_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareAllwinner}/bl31.bin";
- SCP = "/dev/null";
+ env = {
+ BL31 = "${armTrustedFirmwareAllwinner}/bl31.bin";
+ SCP = "/dev/null";
+ };
filesToInstall = [ "u-boot-sunxi-with-spl.bin" ];
};
ubootTuringRK1 = buildUBoot {
defconfig = "turing-rk1-rk3588_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareRK3588}/bl31.elf";
- ROCKCHIP_TPL = rkbin.TPL_RK3588;
+ env = {
+ BL31 = "${armTrustedFirmwareRK3588}/bl31.elf";
+ ROCKCHIP_TPL = rkbin.TPL_RK3588;
+ };
filesToInstall = [
"u-boot.itb"
"idbloader.img"
@@ -896,7 +936,7 @@ in
ubootVisionFive2 = buildUBoot {
defconfig = "starfive_visionfive2_defconfig";
extraMeta.platforms = [ "riscv64-linux" ];
- OPENSBI = "${opensbi}/share/opensbi/lp64/generic/firmware/fw_dynamic.bin";
+ env.OPENSBI = "${opensbi}/share/opensbi/lp64/generic/firmware/fw_dynamic.bin";
filesToInstall = [
"spl/u-boot-spl.bin.normal.out"
"u-boot.itb"
@@ -915,7 +955,7 @@ in
ubootRockPi4 = buildUBoot {
defconfig = "rock-pi-4-rk3399_defconfig";
extraMeta.platforms = [ "aarch64-linux" ];
- BL31 = "${armTrustedFirmwareRK3399}/bl31.elf";
+ env.BL31 = "${armTrustedFirmwareRK3399}/bl31.elf";
filesToInstall = [
"u-boot.itb"
"idbloader.img"
diff --git a/pkgs/os-specific/cygwin/cygwin-dll-link-hook/cygwin-dll-link.sh b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/cygwin-dll-link.sh
new file mode 100644
index 000000000000..95e63b5458ab
--- /dev/null
+++ b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/cygwin-dll-link.sh
@@ -0,0 +1,142 @@
+# shellcheck shell=bash
+
+_moveDLLsToLib() {
+ if [[ "${dontMoveDLLsToLib-}" ]]; then return; fi
+ # shellcheck disable=SC2154
+ moveToOutput "bin/*.dll" "${!outputLib}"
+}
+
+preFixupHooks+=(_moveDLLsToLib)
+
+declare _linkDeps_inputPath _linkDeps_outputPath
+
+_addOutputDLLPaths() {
+ for output in $(getAllOutputNames); do
+ addToSearchPath _linkDeps_outputPath "${!output}/bin"
+ done
+}
+
+preFixupHooks+=(_addOutputDLLPaths)
+
+_dllDeps() {
+ @objdump@ -p "$1" \
+ | sed -n 's/.*DLL Name: \(.*\)/\1/p' \
+ | sort -u
+}
+
+declare -Ag _linkDeps_visited
+
+_linkDeps() {
+ local target="$1" dir="$2"
+
+ # canonicalise these for the dictionary
+ target=$(realpath -s "$target")
+ dir=$(realpath -s "$dir")
+
+ if [[ -v _linkDeps_visited[$target] ]]; then
+ echo "_linkDeps: $target was already linked." 1>&2
+ return
+ fi
+ if [[ ! -f $target || ! -x $target ]]; then
+ echo "_linkDeps: $target is not an executable file, skipping." 1>&2
+ return
+ fi
+
+ local output inOutput
+ for output in $outputs ; do
+ if [[ $target == "${!output}"* && ! -L $target ]]; then
+ echo "_linkDeps: $target is in $output (${!output})." 1>&2
+ inOutput=1
+ break
+ fi
+ done
+
+ echo 'target:' "$target"
+ local dll
+ while read -r dll; do
+ echo ' dll:' "$dll"
+ local dllPath=$dir/$dll
+ if [[ -v _linkDeps_visited[$dllPath] ]]; then
+ echo "_linkDeps: $dll was already linked into $dir." 1>&2
+ continue
+ fi
+ if [[ -L $dllPath ]]; then
+ echo ' already linked'
+ dllPath=$(realpath -s "$(readlink "$dllPath")")
+ _linkDeps "$dllPath" "$dir"
+ elif [[ -e $dllPath ]]; then
+ echo ' already exits'
+ _linkDeps "$dllPath" "$dir"
+ else
+ if [[ $dll = cygwin1.dll ]]; then
+ dllPath=/bin/cygwin1.dll
+ else
+ # This intentionally doesn't use $dir because we want to prefer
+ # dependencies that are already linked next to the target.
+ local searchPath realTarget
+ searchPath=$_linkDeps_outputPath:$_linkDeps_inputPath:$HOST_PATH
+ if [[ -L $target ]]; then
+ searchPath=$searchPath:$(dirname "$(readlink "$target")")
+ fi
+ searchPath=$(dirname "$target"):$searchPath
+ if ! dllPath=$(PATH="$searchPath" type -P "$dll"); then
+ if [[ -z $inOutput || -n ${allowedImpureDLLsMap[$dll]} ]]; then
+ continue
+ fi
+ echo unable to find "$dll" in "$searchPath" >&2
+ exit 1
+ fi
+ fi
+ echo ' linking to:' "$dllPath"
+ CYGWIN+=' winsymlinks:nativestrict' ln -sr "$dllPath" "$dir"
+ _linkDeps "$dllPath" "$dir"
+ fi
+ _linkDeps_visited[$dir/$dll]=1
+ done < <(_dllDeps "$target")
+ wait $!
+}
+
+# linkDLLsDir can be used to override the destination path for links. This is
+# useful if you're trying to link dependencies of libraries into the directory
+# containing an executable.
+#
+# Arguments can be a file or directory path. Directories are searched
+# recursively.
+linkDLLs() {
+ # shellcheck disable=SC2154
+ (
+ set -e
+ shopt -s globstar nullglob dotglob
+
+ local -a allowedImpureDLLsArray
+ concatTo allowedImpureDLLsArray allowedImpureDLLs
+
+ local -A allowedImpureDLLsMap;
+
+ for dll in "${allowedImpureDLLsArray[@]}"; do
+ allowedImpureDLLsMap[$dll]=1
+ done
+
+ local target file
+ for target in "$@"; do
+ # Iterate over any DLL that we depend on.
+ if [[ -f "$target" ]]; then
+ _linkDeps "$target" "${linkDLLsDir-$(dirname "$target")}"
+ elif [[ -d "$target" ]]; then
+ for file in "${target%/}"/**/*.{exe,dll}; do
+ _linkDeps "$file" "${linkDLLsDir-$(dirname "$file")}"
+ done
+ else
+ echo "linkDLLs: $target is not a file or directory, skipping." 1>&2
+ fi
+ done
+ )
+}
+
+_linkDLLs() {
+ # shellcheck disable=SC2154
+ if [[ ! -d $prefix || ${dontLinkDLLs-} ]]; then return; fi
+ linkDLLs "$prefix"/{bin,lib,libexec}/
+}
+
+fixupOutputHooks+=(_linkDLLs)
diff --git a/pkgs/os-specific/cygwin/cygwin-dll-link-hook/default.nix b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/default.nix
new file mode 100644
index 000000000000..ff9eed6bdeef
--- /dev/null
+++ b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/default.nix
@@ -0,0 +1,15 @@
+{
+ lib,
+ makeSetupHook,
+ binutils-unwrapped,
+ stdenv,
+ callPackage,
+}:
+makeSetupHook {
+ name = "cygwin-dll-link-hook";
+ substitutions = {
+ objdump = "${lib.getBin binutils-unwrapped}/${stdenv.targetPlatform.config}/bin/objdump";
+ };
+
+ passthru.tests = callPackage ./tests { };
+} ./cygwin-dll-link.sh
diff --git a/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/default.nix b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/default.nix
new file mode 100644
index 000000000000..a8744001dc2d
--- /dev/null
+++ b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/default.nix
@@ -0,0 +1,130 @@
+{
+ dieHook,
+ lib,
+ stdenv,
+ testers,
+ runCommand,
+}:
+
+rec {
+ dll = stdenv.mkDerivation {
+ name = "dll";
+ src = ./dll;
+ outputs = [
+ "out"
+ "dev"
+ ];
+ buildInputs = [ dll2 ];
+ strictDeps = true;
+ };
+
+ dll2 = stdenv.mkDerivation {
+ name = "dll2";
+ src = ./dll2;
+ outputs = [
+ "out"
+ "dev"
+ ];
+ };
+
+ exe = stdenv.mkDerivation {
+ name = "exe";
+ src = ./exe;
+ buildInputs = [ dll ];
+ nativeBuildInputs = [ dieHook ];
+ strictDeps = true;
+ doCheck = true;
+ postFixup = ''[[ -e "$out"/bin/cyghello2.dll ]] || die missing indirect dependency'';
+ };
+
+ link-dll = exe.overrideAttrs {
+ name = "link-dll";
+ preFixup = ''
+ ln -s ${lib.getLib dll}/bin/cyghello.dll "$out"/bin/
+ '';
+ };
+
+ user32 = stdenv.mkDerivation {
+ name = "user32";
+ src = ./user32;
+ allowedImpureDLLs = [ "USER32.dll" ];
+ };
+
+ impure-dll = testers.testBuildFailure (
+ user32.overrideAttrs {
+ name = "impure-dll";
+ allowedImpureDLLs = [ ];
+ }
+ );
+
+ user32-dll = stdenv.mkDerivation {
+ name = "user32-dll";
+ src = ./user32-dll;
+ outputs = [
+ "out"
+ "dev"
+ ];
+ allowedImpureDLLs = [ "USER32.dll" ];
+ };
+
+ user32-exe = stdenv.mkDerivation {
+ name = "user32-exe";
+ src = ./user32-exe;
+ buildInputs = [ user32-dll ];
+ strictDeps = true;
+ doCheck = true;
+ };
+
+ link-dir-dll = exe.overrideAttrs {
+ name = "link-dir-dll";
+ preFixup = ''
+ mkdir "$out"/libexec
+ ln -s ${lib.getLib user32-dll}/bin/cygpeek.dll "$out"/libexec/
+ linkDLLsDir="$out"/bin linkDLLs "$out"/libexec/cygpeek.dll
+ '';
+ };
+
+ link-dir-exe = exe.overrideAttrs {
+ name = "link-dir-exe";
+ preFixup = ''
+ mkdir "$out"/libexec
+ ln -s ${lib.getLib user32-exe}/bin/{peek.exe,cygpeek.dll} "$out"/libexec/
+ linkDLLsDir="$out"/bin linkDLLs "$out"/libexec/peek.exe
+ '';
+ };
+
+ link-user32-dll = exe.overrideAttrs {
+ name = "link-user32-dll";
+ preFixup = ''
+ ln -s ${lib.getLib user32-dll}/bin/cygpeek.dll "$out"/bin/
+ '';
+ };
+
+ copy-dll-impure = testers.testBuildFailure (
+ user32-exe.overrideAttrs {
+ name = "copy-dll-impure";
+ preFixup = ''
+ cp ${lib.getLib user32-dll}/bin/cygpeek.dll "$out"/bin/
+ '';
+ }
+ );
+
+ copy-dll = user32-exe.overrideAttrs {
+ name = "copy-dll";
+ preFixup = ''
+ cp ${lib.getLib user32-dll}/bin/cygpeek.dll "$out"/bin/
+ linkDLLs "$out"/bin/cygpeek.dll
+ '';
+ allowedImpureDLLs = [ "USER32.dll" ];
+ };
+
+ double-link = user32-exe.overrideAttrs {
+ name = "double-link";
+ preFixup = ''linkDLLs "$out"'';
+ };
+
+ utf8-glob = runCommand "utf8-glob" { } ''
+ touch NetLock_Arany_=Class_Gold=_Főtanstvny:49412ce40010.crt
+ ls -l NetLock* > "$out"
+ '';
+}
diff --git a/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/dll/Makefile b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/dll/Makefile
new file mode 100644
index 000000000000..25e1e53c38e4
--- /dev/null
+++ b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/dll/Makefile
@@ -0,0 +1,16 @@
+.PHONY: all install
+all: cyghello.dll
+
+install: $(out)/bin/cyghello.dll $(out)/lib/libhello.dll.a $(out)/include/hello.h
+
+cyghello.dll libhello.dll.a: hello.c
+ $(CC) -o $@ $^ -shared -Wl,--out-implib,libhello.dll.a -Wl,--export-all-symbols -lhello2
+
+$(out)/bin/cyghello.dll: cyghello.dll
+ install -m755 -D $< $@
+
+$(out)/lib/libhello.dll.a: libhello.dll.a
+ install -m644 -D $< $@
+
+$(out)/include/hello.h: hello.h
+ install -m644 -D $< $@
diff --git a/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/dll/hello.c b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/dll/hello.c
new file mode 100644
index 000000000000..db1a301c91a4
--- /dev/null
+++ b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/dll/hello.c
@@ -0,0 +1,7 @@
+#include "hello.h"
+#include
+#include
+
+void hello() {
+ hello2();
+}
diff --git a/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/dll/hello.h b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/dll/hello.h
new file mode 100644
index 000000000000..a4a0b54c6052
--- /dev/null
+++ b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/dll/hello.h
@@ -0,0 +1,2 @@
+#pragma once
+void hello();
diff --git a/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/dll2/Makefile b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/dll2/Makefile
new file mode 100644
index 000000000000..87c5c1a9b9cc
--- /dev/null
+++ b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/dll2/Makefile
@@ -0,0 +1,16 @@
+.PHONY: all install
+all: cyghello2.dll
+
+install: $(out)/bin/cyghello2.dll $(out)/lib/libhello2.dll.a $(out)/include/hello2.h
+
+cyghello2.dll libhello2.dll.a: hello2.c
+ $(CC) -o $@ $^ -shared -Wl,--out-implib,libhello2.dll.a -Wl,--export-all-symbols
+
+$(out)/bin/cyghello2.dll: cyghello2.dll
+ install -m755 -D $< $@
+
+$(out)/lib/libhello2.dll.a: libhello2.dll.a
+ install -m644 -D $< $@
+
+$(out)/include/hello2.h: hello2.h
+ install -m644 -D $< $@
diff --git a/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/dll2/hello2.c b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/dll2/hello2.c
new file mode 100644
index 000000000000..d23050fbb776
--- /dev/null
+++ b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/dll2/hello2.c
@@ -0,0 +1,6 @@
+#include
+#include "hello2.h"
+
+void hello2() {
+ printf("Hello, World!\n");
+}
diff --git a/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/dll2/hello2.h b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/dll2/hello2.h
new file mode 100644
index 000000000000..34e200a07e95
--- /dev/null
+++ b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/dll2/hello2.h
@@ -0,0 +1,2 @@
+#pragma once
+void hello2();
diff --git a/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/exe/Makefile b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/exe/Makefile
new file mode 100644
index 000000000000..da16b5d08c79
--- /dev/null
+++ b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/exe/Makefile
@@ -0,0 +1,13 @@
+.PHONY: all check install
+all: hello.exe
+
+install: $(out)/bin/hello.exe
+
+hello.exe: main.c
+ $(CC) -o $@ $^ -lhello
+
+check: hello.exe
+ ./hello.exe
+
+$(out)/bin/hello.exe: hello.exe
+ install -m755 -D $< $@
diff --git a/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/exe/main.c b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/exe/main.c
new file mode 100644
index 000000000000..9dbc882ea430
--- /dev/null
+++ b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/exe/main.c
@@ -0,0 +1,6 @@
+#include
+
+int main() {
+ hello();
+ return 0;
+}
diff --git a/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/user32-dll/Makefile b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/user32-dll/Makefile
new file mode 100644
index 000000000000..483ad8854a06
--- /dev/null
+++ b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/user32-dll/Makefile
@@ -0,0 +1,16 @@
+.PHONY: all install
+all: cygpeek.dll
+
+install: $(out)/bin/cygpeek.dll $(out)/lib/libpeek.dll.a $(out)/include/peek.h
+
+cygpeek.dll libpeek.dll.a: peek.c
+ $(CC) -o $@ $^ -shared -Wl,--out-implib,libpeek.dll.a -Wl,--export-all-symbols
+
+$(out)/bin/cygpeek.dll: cygpeek.dll
+ install -m755 -D $< $@
+
+$(out)/lib/libpeek.dll.a: libpeek.dll.a
+ install -m644 -D $< $@
+
+$(out)/include/peek.h: peek.h
+ install -m644 -D $< $@
diff --git a/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/user32-dll/peek.c b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/user32-dll/peek.c
new file mode 100644
index 000000000000..715adb003c15
--- /dev/null
+++ b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/user32-dll/peek.c
@@ -0,0 +1,7 @@
+#include
+
+int peek()
+{
+ MSG msg;
+ PeekMessage(&msg, NULL, 0, 0, PM_NOREMOVE);
+}
diff --git a/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/user32-dll/peek.h b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/user32-dll/peek.h
new file mode 100644
index 000000000000..800f23f77da5
--- /dev/null
+++ b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/user32-dll/peek.h
@@ -0,0 +1,2 @@
+#pragma once
+void peek();
diff --git a/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/user32-exe/Makefile b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/user32-exe/Makefile
new file mode 100644
index 000000000000..231601818914
--- /dev/null
+++ b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/user32-exe/Makefile
@@ -0,0 +1,13 @@
+.PHONY: all check install
+all: peek.exe
+
+install: $(out)/bin/peek.exe
+
+peek.exe: main.c
+ $(CC) -o $@ $^ -lpeek
+
+check: peek.exe
+ ./peek.exe
+
+$(out)/bin/peek.exe: peek.exe
+ install -m755 -D $< $@
diff --git a/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/user32-exe/main.c b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/user32-exe/main.c
new file mode 100644
index 000000000000..cddc78c91cab
--- /dev/null
+++ b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/user32-exe/main.c
@@ -0,0 +1,6 @@
+#include
+
+int main() {
+ peek();
+ return 0;
+}
diff --git a/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/user32/Makefile b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/user32/Makefile
new file mode 100644
index 000000000000..6c696a2e8cd0
--- /dev/null
+++ b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/user32/Makefile
@@ -0,0 +1,13 @@
+.PHONY: all check install
+all: hello.exe
+
+install: $(out)/bin/hello.exe
+
+hello.exe: main.c
+ $(CC) -o $@ $^
+
+check: hello.exe
+ ./hello.exe
+
+$(out)/bin/hello.exe: hello.exe
+ install -m755 -D $< $@
diff --git a/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/user32/main.c b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/user32/main.c
new file mode 100644
index 000000000000..9cc135770d21
--- /dev/null
+++ b/pkgs/os-specific/cygwin/cygwin-dll-link-hook/tests/user32/main.c
@@ -0,0 +1,7 @@
+#include
+
+int main()
+{
+ MSG msg;
+ PeekMessage(&msg, NULL, 0, 0, PM_NOREMOVE);
+}
diff --git a/pkgs/os-specific/cygwin/default.nix b/pkgs/os-specific/cygwin/default.nix
index 09f69ff9f9b2..d1217f7880c1 100644
--- a/pkgs/os-specific/cygwin/default.nix
+++ b/pkgs/os-specific/cygwin/default.nix
@@ -21,5 +21,7 @@ makeScopeWithSplicing' {
# this is here to avoid symlinks being made to cygwin1.dll in /nix/store
newlib-cygwin-nobin = callPackage ./newlib-cygwin/nobin.nix { };
newlib-cygwin-headers = callPackage ./newlib-cygwin { headersOnly = true; };
+
+ cygwinDllLinkHook = callPackage ./cygwin-dll-link-hook { };
};
}
diff --git a/pkgs/os-specific/linux/kernel/xanmod-kernels.nix b/pkgs/os-specific/linux/kernel/xanmod-kernels.nix
index 00c749585e6d..67297d1aabbb 100644
--- a/pkgs/os-specific/linux/kernel/xanmod-kernels.nix
+++ b/pkgs/os-specific/linux/kernel/xanmod-kernels.nix
@@ -15,14 +15,14 @@ let
variants = {
# ./update-xanmod.sh lts
lts = {
- version = "6.12.70";
- hash = "sha256-Azhv4au48TQbhGsngPvY8Uue71K9KQuJyqcYrM655xM=";
+ version = "6.12.73";
+ hash = "sha256-kmfxbFQduQ+ZLlvJ6M+ZvcEvDza12040SuQjIvHme+o=";
isLTS = true;
};
# ./update-xanmod.sh main
main = {
- version = "6.18.10";
- hash = "sha256-bYKYx9ctHuWG+WS/Wtt4p2uW6vy2g5ikLqSPWeNeSn0=";
+ version = "6.18.12";
+ hash = "sha256-MU0Xc+UZSleOv0GIkil7RnoaCmMBxv5Zzz6Ng1NNDy8=";
};
};
diff --git a/pkgs/os-specific/linux/trace-cmd/default.nix b/pkgs/os-specific/linux/trace-cmd/default.nix
index 4a71afc5b9b9..8095c5cbece6 100644
--- a/pkgs/os-specific/linux/trace-cmd/default.nix
+++ b/pkgs/os-specific/linux/trace-cmd/default.nix
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
"devman"
];
- MANPAGE_DOCBOOK_XSL = "${docbook_xsl}/xml/xsl/docbook/manpages/docbook.xsl";
+ env.MANPAGE_DOCBOOK_XSL = "${docbook_xsl}/xml/xsl/docbook/manpages/docbook.xsl";
dontConfigure = true;
diff --git a/pkgs/servers/samba/4.x.nix b/pkgs/servers/samba/4.x.nix
index 1560e32c89b5..8828a1ec1bfb 100644
--- a/pkgs/servers/samba/4.x.nix
+++ b/pkgs/servers/samba/4.x.nix
@@ -212,9 +212,17 @@ stdenv.mkDerivation (finalAttrs: {
chmod +w answers
'';
- env.NIX_LDFLAGS = lib.optionalString (
- stdenv.cc.bintools.isLLVM && lib.versionAtLeast stdenv.cc.bintools.version "17"
- ) "--undefined-version";
+ env = {
+ # python-config from build Python gives incorrect values when cross-compiling.
+ # If python-config is not found, the build falls back to using the sysconfig
+ # module, which works correctly in all cases.
+ PYTHON_CONFIG = "/invalid";
+ }
+ //
+ lib.optionalAttrs (stdenv.cc.bintools.isLLVM && lib.versionAtLeast stdenv.cc.bintools.version "17")
+ {
+ NIX_LDFLAGS = "--undefined-version";
+ };
wafConfigureFlags = [
"--with-static-modules=NONE"
@@ -261,11 +269,6 @@ stdenv.mkDerivation (finalAttrs: {
"--jobs 1"
];
- # python-config from build Python gives incorrect values when cross-compiling.
- # If python-config is not found, the build falls back to using the sysconfig
- # module, which works correctly in all cases.
- PYTHON_CONFIG = "/invalid";
-
pythonPath = [
python3Packages.dnspython
python3Packages.markdown
diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix
index 294876c28d17..ecb8349406a8 100644
--- a/pkgs/servers/sql/mariadb/default.nix
+++ b/pkgs/servers/sql/mariadb/default.nix
@@ -365,7 +365,9 @@ let
rm -r "$out"/OFF
'';
- CXXFLAGS = lib.optionalString stdenv.hostPlatform.isi686 "-fpermissive";
+ env = lib.optionalAttrs stdenv.hostPlatform.isi686 {
+ CXXFLAGS = "-fpermissive";
+ };
passthru = {
inherit client;
diff --git a/pkgs/stdenv/cross/default.nix b/pkgs/stdenv/cross/default.nix
index cc53957eee0d..b194c780a319 100644
--- a/pkgs/stdenv/cross/default.nix
+++ b/pkgs/stdenv/cross/default.nix
@@ -83,7 +83,10 @@ lib.init bootStages
|| p.isGenode;
in
f hostPlatform && !(f buildPlatform)
- ) buildPackages.updateAutotoolsGnuConfigScriptsHook;
+ ) buildPackages.updateAutotoolsGnuConfigScriptsHook
+ ++ lib.optional (
+ hostPlatform.isCygwin && !buildPlatform.isCygwin
+ ) buildPackages.cygwin.cygwinDllLinkHook;
})
);
in
diff --git a/pkgs/stdenv/generic/make-derivation.nix b/pkgs/stdenv/generic/make-derivation.nix
index 0a512f703b49..5177b2245f1b 100644
--- a/pkgs/stdenv/generic/make-derivation.nix
+++ b/pkgs/stdenv/generic/make-derivation.nix
@@ -476,7 +476,6 @@ let
nativeBuildInputs
++ optional separateDebugInfo' ../../build-support/setup-hooks/separate-debug-info.sh
++ optional isWindows ../../build-support/setup-hooks/win-dll-link.sh
- ++ optional isCygwin ../../build-support/setup-hooks/cygwin-dll-link.sh
++ optionals doCheck nativeCheckInputs
++ optionals doInstallCheck nativeInstallCheckInputs;
@@ -706,7 +705,6 @@ let
allowedImpureDLLs
++ lib.optionals isCygwin [
"KERNEL32.dll"
- "cygwin1.dll"
];
}
// (
diff --git a/pkgs/tools/archivers/gnutar/default.nix b/pkgs/tools/archivers/gnutar/default.nix
index 1ddcfb22f04b..c7e65d9ce7f9 100644
--- a/pkgs/tools/archivers/gnutar/default.nix
+++ b/pkgs/tools/archivers/gnutar/default.nix
@@ -57,7 +57,7 @@ stdenv.mkDerivation rec {
# May have some issues with root compilation because the bootstrap tool
# cannot be used as a login shell for now.
- FORCE_UNSAFE_CONFIGURE = lib.optionalString (
+ env.FORCE_UNSAFE_CONFIGURE = lib.optionalString (
stdenv.hostPlatform.system == "armv7l-linux" || stdenv.hostPlatform.isSunOS
) "1";
diff --git a/pkgs/tools/misc/coreutils/default.nix b/pkgs/tools/misc/coreutils/default.nix
index 0cc7d5e91b07..c09bc4ff35d0 100644
--- a/pkgs/tools/misc/coreutils/default.nix
+++ b/pkgs/tools/misc/coreutils/default.nix
@@ -193,23 +193,26 @@ stdenv.mkDerivation (finalAttrs: {
&& (stdenv.hostPlatform.libc == "glibc" || stdenv.hostPlatform.libc == "musl")
&& !stdenv.hostPlatform.isAarch32;
- # Prevents attempts of running 'help2man' on cross-built binaries.
- PERL = if isCross then "missing" else null;
-
enableParallelBuilding = true;
- NIX_LDFLAGS = optionalString selinuxSupport "-lsepol";
- FORCE_UNSAFE_CONFIGURE = optionalString stdenv.hostPlatform.isSunOS "1";
- env.NIX_CFLAGS_COMPILE = toString (
- [ ]
- # Work around a bogus warning in conjunction with musl.
- ++ optional stdenv.hostPlatform.isMusl "-Wno-error"
- ++ optional stdenv.hostPlatform.isAndroid "-D__USE_FORTIFY_LEVEL=0"
- # gnulib does not consider Clang-specific warnings to be bugs:
- # https://lists.gnu.org/r/bug-gnulib/2025-06/msg00325.html
- # TODO: find out why these are happening on cygwin, which is gcc
- ++ optional (stdenv.cc.isClang || stdenv.hostPlatform.isCygwin) "-Wno-error=format-security"
- );
+ env = {
+ NIX_LDFLAGS = optionalString selinuxSupport "-lsepol";
+ FORCE_UNSAFE_CONFIGURE = optionalString stdenv.hostPlatform.isSunOS "1";
+ NIX_CFLAGS_COMPILE = toString (
+ [ ]
+ # Work around a bogus warning in conjunction with musl.
+ ++ optional stdenv.hostPlatform.isMusl "-Wno-error"
+ ++ optional stdenv.hostPlatform.isAndroid "-D__USE_FORTIFY_LEVEL=0"
+ # gnulib does not consider Clang-specific warnings to be bugs:
+ # https://lists.gnu.org/r/bug-gnulib/2025-06/msg00325.html
+ # TODO: find out why these are happening on cygwin, which is gcc
+ ++ optional (stdenv.cc.isClang || stdenv.hostPlatform.isCygwin) "-Wno-error=format-security"
+ );
+ }
+ // optionalAttrs isCross {
+ # Prevents attempts of running 'help2man' on cross-built binaries.
+ PERL = "missing";
+ };
# Works around a bug with 8.26:
# Makefile:3440: *** Recursive variable 'INSTALL' references itself (eventually). Stop.
diff --git a/pkgs/tools/system/rsyslog/default.nix b/pkgs/tools/system/rsyslog/default.nix
index f9e2b7668110..4bcd050f7cbf 100644
--- a/pkgs/tools/system/rsyslog/default.nix
+++ b/pkgs/tools/system/rsyslog/default.nix
@@ -180,6 +180,8 @@ stdenv.mkDerivation rec {
(lib.enableFeature true "generate-man-pages")
];
+ NIX_CFLAGS_LINK = "-lz";
+
passthru.tests = {
nixos-rsyslogd = nixosTests.rsyslogd;
};
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index 3672a47eac6e..3dd997ad269b 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -426,6 +426,7 @@ mapAliases {
cataract-unstable = throw "'cataract-unstable' has been removed due to a lack of maintenace"; # Added 2025-08-25
catch = throw "catch has been removed. Please upgrade to catch2 or catch2_3"; # Added 2025-08-21
catnip-gtk4 = throw "'catnip-gtk4' has been removed, as it has been unmaintained upstream since June 2023, use cavasik or cavalier instead"; # Added 2026-01-01
+ cdktf-cli = warnAlias "'cdktf-cli' has been renamed to/replaced by 'cdktn-cli'" cdktn-cli; # Added 2026-02-18
cdparanoiaIII = cdparanoia-iii; # Added 2026-02-08
cdwe = throw "'cdwe' has been removed, as it has been unmaintained upstream since June 2023"; # Added 2026-01-01
cedille = throw "'cedille' has been removed due to being broken for more than a year; see RFC 180"; # Added 2026-02-05
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 3c70361588d3..d9acd2783756 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1791,8 +1791,6 @@ with pkgs;
intensity-normalization = with python3Packages; toPythonApplication intensity-normalization;
- jellyfin-desktop = kdePackages.callPackage ../applications/video/jellyfin-desktop { };
-
jellyfin-mpv-shim = python3Packages.callPackage ../applications/video/jellyfin-mpv-shim { };
klaus = with python3Packages; toPythonApplication klaus;
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 716a769990a7..73ccd177f969 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -548,7 +548,7 @@ with self;
installPhase = "./Build install --prefix $out";
- SDL_INST_DIR = lib.getDev pkgs.SDL;
+ env.SDL_INST_DIR = lib.getDev pkgs.SDL;
buildInputs = [
pkgs.SDL
ArchiveExtract
@@ -579,7 +579,7 @@ with self;
};
buildInputs = [ ArchiveExtract ];
- TIDYP_DIR = pkgs.tidyp;
+ env.TIDYP_DIR = pkgs.tidyp;
propagatedBuildInputs = [ FileShareDir ];
meta = {
description = "Building, finding and using tidyp library";
@@ -1893,7 +1893,7 @@ with self;
TestWarn
];
env.NIX_CFLAGS_COMPILE = "-I${pkgs.zlib.dev}/include";
- NIX_CFLAGS_LINK = "-L${pkgs.zlib.out}/lib -lz";
+ env.NIX_CFLAGS_LINK = "-L${pkgs.zlib.out}/lib -lz";
meta = {
description = "Fast C metadata and tag reader for all common audio file formats, slimserver fork";
homepage = "https://github.com/Logitech/slimserver-vendor";
@@ -2436,7 +2436,7 @@ with self;
hash = "sha256-o/LKnSuu/BqqQJCLL5y5KS/aPn15fji7146rudna62s=";
};
env.NIX_CFLAGS_COMPILE = "-I${pkgs.db4.dev}/include";
- NIX_CFLAGS_LINK = "-L${pkgs.db4.out}/lib -ldb";
+ env.NIX_CFLAGS_LINK = "-L${pkgs.db4.out}/lib -ldb";
buildInputs = [ pkgs.db4 ];
propagatedBuildInputs = [ commonsense ];
meta = {
@@ -4706,7 +4706,7 @@ with self;
postPatch = ''
substituteInPlace Makefile.PL --replace pkg-config $PKG_CONFIG
'';
- NIX_CFLAGS_LINK = "-L${lib.getLib pkgs.pcsclite}/lib -lpcsclite";
+ env.NIX_CFLAGS_LINK = "-L${lib.getLib pkgs.pcsclite}/lib -lpcsclite";
# tests fail; look unfinished
doCheck = false;
meta = {
@@ -5779,9 +5779,9 @@ with self;
};
# Don't build a private copy of bzip2.
- BUILD_BZIP2 = false;
- BZIP2_LIB = "${pkgs.bzip2.out}/lib";
- BZIP2_INCLUDE = "${pkgs.bzip2.dev}/include";
+ env.BUILD_BZIP2 = false;
+ env.BZIP2_LIB = "${pkgs.bzip2.out}/lib";
+ env.BZIP2_INCLUDE = "${pkgs.bzip2.dev}/include";
meta = {
description = "Low-Level Interface to bzip2 compression library";
@@ -6995,7 +6995,7 @@ with self;
TestRequires
];
env.NIX_CFLAGS_COMPILE = "-I${pkgs.gmp.dev}/include";
- NIX_CFLAGS_LINK = "-L${pkgs.gmp.out}/lib -lgmp";
+ env.NIX_CFLAGS_LINK = "-L${pkgs.gmp.out}/lib -lgmp";
meta = {
description = "Crypt::DH Using GMP Directly";
license = with lib.licenses; [
@@ -7483,7 +7483,7 @@ with self;
hash = "sha256-kHxzoQVs6gV9qYGa6kipKreG5qqq858c3ZZHsj8RbHg=";
};
env.NIX_CFLAGS_COMPILE = "-I${pkgs.libsodium.dev}/include";
- NIX_CFLAGS_LINK = "-L${pkgs.libsodium.out}/lib -lsodium";
+ env.NIX_CFLAGS_LINK = "-L${pkgs.libsodium.out}/lib -lsodium";
meta = {
description = "Perl bindings for libsodium (NaCL)";
homepage = "https://metacpan.org/release/Crypt-Sodium";
@@ -7580,7 +7580,7 @@ with self;
pkgs.openssl
];
env.NIX_CFLAGS_COMPILE = "-I${pkgs.openssl.dev}/include";
- NIX_CFLAGS_LINK = "-L${lib.getLib pkgs.openssl}/lib -lcrypto";
+ env.NIX_CFLAGS_LINK = "-L${lib.getLib pkgs.openssl}/lib -lcrypto";
meta = {
description = "Perl wrapper around OpenSSL's AES library";
license = with lib.licenses; [
@@ -7598,7 +7598,7 @@ with self;
hash = "sha256-I05y+4OW1FUn5v1F5DdZxcPzogjPjynmoiFhqZb9Qtw=";
};
env.NIX_CFLAGS_COMPILE = "-I${pkgs.openssl.dev}/include";
- NIX_CFLAGS_LINK = "-L${lib.getLib pkgs.openssl}/lib -lcrypto";
+ env.NIX_CFLAGS_LINK = "-L${lib.getLib pkgs.openssl}/lib -lcrypto";
meta = {
description = "OpenSSL's multiprecision integer arithmetic";
license = with lib.licenses; [
@@ -7633,8 +7633,8 @@ with self;
hash = "sha256-8IdvqhujER45uGqnMMYDIR7/KQXkYMcqV7YejPR1zvQ=";
};
env.NIX_CFLAGS_COMPILE = "-I${pkgs.openssl.dev}/include";
- NIX_CFLAGS_LINK = "-L${lib.getLib pkgs.openssl}/lib -lcrypto";
- OPENSSL_PREFIX = pkgs.openssl;
+ env.NIX_CFLAGS_LINK = "-L${lib.getLib pkgs.openssl}/lib -lcrypto";
+ env.OPENSSL_PREFIX = pkgs.openssl;
buildInputs = [ CryptOpenSSLGuess ];
meta = {
description = "OpenSSL/LibreSSL pseudo-random number generator access";
@@ -7654,8 +7654,8 @@ with self;
};
propagatedBuildInputs = [ CryptOpenSSLRandom ];
env.NIX_CFLAGS_COMPILE = "-I${pkgs.openssl.dev}/include";
- NIX_CFLAGS_LINK = "-L${lib.getLib pkgs.openssl}/lib -lcrypto";
- OPENSSL_PREFIX = pkgs.openssl;
+ env.NIX_CFLAGS_LINK = "-L${lib.getLib pkgs.openssl}/lib -lcrypto";
+ env.OPENSSL_PREFIX = pkgs.openssl;
buildInputs = [ CryptOpenSSLGuess ];
meta = {
description = "RSA encoding and decoding, using the openSSL libraries";
@@ -7674,8 +7674,8 @@ with self;
hash = "sha256-xNvBbE/CloV4I3v8MkWH/9eSSacQFQJlLbnjjUSJUX8=";
};
env.NIX_CFLAGS_COMPILE = "-I${pkgs.openssl.dev}/include";
- NIX_CFLAGS_LINK = "-L${lib.getLib pkgs.openssl}/lib -lcrypto";
- OPENSSL_PREFIX = pkgs.openssl;
+ env.NIX_CFLAGS_LINK = "-L${lib.getLib pkgs.openssl}/lib -lcrypto";
+ env.OPENSSL_PREFIX = pkgs.openssl;
buildInputs = [ CryptOpenSSLGuess ];
propagatedBuildInputs = [ ConvertASN1 ];
meta = {
@@ -7883,7 +7883,7 @@ with self;
--replace '#! /usr/bin/perl' '#!${perl}/bin/perl'
'';
propagatedBuildInputs = [ pkgs.ncurses ];
- NIX_CFLAGS_LINK = "-L${pkgs.ncurses.out}/lib -lncurses";
+ env.NIX_CFLAGS_LINK = "-L${pkgs.ncurses.out}/lib -lncurses";
meta = {
description = "Perl bindings to ncurses";
license = with lib.licenses; [ artistic1 ];
@@ -9853,7 +9853,7 @@ with self;
hash = "sha256-Uf6cFYlV/aDKkXqAaGPwvFEGi1M/u8dCOzzErVle0VM=";
};
- ORACLE_HOME = "${pkgs.oracle-instantclient.lib}/lib";
+ env.ORACLE_HOME = "${pkgs.oracle-instantclient.lib}/lib";
buildInputs = [
pkgs.oracle-instantclient
@@ -9920,7 +9920,7 @@ with self;
hash = "sha256-B1e6aqyaKaLcOFmV1myPQSqIlo/SNsDYu0ZZAo5OmWU=";
};
- SYBASE = pkgs.freetds;
+ env.SYBASE = pkgs.freetds;
buildInputs = [ pkgs.freetds ];
propagatedBuildInputs = [ DBI ];
@@ -15261,8 +15261,8 @@ with self;
];
# needed for fontconfig tests
- HOME = "/build";
- FONTCONFIG_PATH = "${lib.getOutput "out" pkgs.fontconfig}/etc/fonts";
+ env.HOME = "/build";
+ env.FONTCONFIG_PATH = "${lib.getOutput "out" pkgs.fontconfig}/etc/fonts";
meta = {
description = "Perl interface to the GraphViz graphing tool";
@@ -19024,7 +19024,7 @@ with self;
hash = "sha256-MSlAwfYPR8T8k/oKnSpiZCX6qDcEDIwvGtWO4J9i83E=";
};
buildInputs = [ pkgs.acl ];
- NIX_CFLAGS_LINK = "-L${pkgs.acl.out}/lib -lacl";
+ env.NIX_CFLAGS_LINK = "-L${pkgs.acl.out}/lib -lacl";
meta = {
description = "Perl extension for reading and setting Access Control Lists for files by libacl linux library";
license = with lib.licenses; [
@@ -19276,7 +19276,7 @@ with self;
url = "mirror://cpan/authors/id/P/PV/PVANDRY/gettext-1.07.tar.gz";
hash = "sha256-kJ1HlUaX58BCGPlykVt4e9EkTXXjvQFiC8Fn1bvEnBU=";
};
- LANG = "C";
+ env.LANG = "C";
meta = {
description = "Perl extension for emulating gettext-related API";
license = with lib.licenses; [
@@ -20707,7 +20707,7 @@ with self;
buildInputs = [ pkgs.gmp ];
doCheck = false;
env.NIX_CFLAGS_COMPILE = "-I${pkgs.gmp.dev}/include";
- NIX_CFLAGS_LINK = "-L${pkgs.gmp.out}/lib -lgmp";
+ env.NIX_CFLAGS_LINK = "-L${pkgs.gmp.out}/lib -lgmp";
propagatedBuildInputs = [ MathBigInt ];
meta = {
description = "Backend library for Math::BigInt etc. based on GMP";
@@ -20800,7 +20800,7 @@ with self;
AlienGMP
];
env.NIX_CFLAGS_COMPILE = "-I${pkgs.gmp.dev}/include";
- NIX_CFLAGS_LINK = "-L${pkgs.gmp.out}/lib -lgmp";
+ env.NIX_CFLAGS_LINK = "-L${pkgs.gmp.out}/lib -lgmp";
meta = {
description = "High speed arbitrary size integer math";
license = with lib.licenses; [ lgpl21Plus ];
@@ -20818,7 +20818,7 @@ with self;
TestWarn
pkgs.gmp
];
- NIX_CFLAGS_LINK = "-L${pkgs.gmp.out}/lib -lgmp";
+ env.NIX_CFLAGS_LINK = "-L${pkgs.gmp.out}/lib -lgmp";
meta = {
description = "Perl interface to the GMP integer functions";
homepage = "https://github.com/sisyphus/math-gmpz";
@@ -20967,7 +20967,7 @@ with self;
};
buildInputs = [ pkgs.gmp ];
env.NIX_CFLAGS_COMPILE = "-I${pkgs.gmp.dev}/include";
- NIX_CFLAGS_LINK = "-L${pkgs.gmp.out}/lib -lgmp";
+ env.NIX_CFLAGS_LINK = "-L${pkgs.gmp.out}/lib -lgmp";
meta = {
description = "Utilities related to prime numbers, using GMP";
homepage = "https://github.com/danaj/Math-Prime-Util-GMP";
@@ -25343,7 +25343,7 @@ with self;
pkgs.cups
pkgs.libcupsfilters
];
- NIX_CFLAGS_LINK = "-L${lib.getLib pkgs.cups}/lib -lcups";
+ env.NIX_CFLAGS_LINK = "-L${lib.getLib pkgs.cups}/lib -lcups";
meta = {
description = "Common Unix Printing System Interface";
homepage = "https://github.com/niner/perl-Net-CUPS";
@@ -26817,7 +26817,7 @@ with self;
hardeningDisable = [ "format" ];
# Make the async API accessible
env.NIX_CFLAGS_COMPILE = "-DTHREADED";
- NIX_CFLAGS_LINK = "-L${pkgs.zookeeper_mt.out}/lib -lzookeeper_mt";
+ env.NIX_CFLAGS_LINK = "-L${pkgs.zookeeper_mt.out}/lib -lzookeeper_mt";
# Most tests are skipped as no server is available in the sandbox.
# `t/35_log.t` seems to suffer from a race condition; remove it. See
# https://github.com/NixOS/nixpkgs/pull/104889#issuecomment-737144513
@@ -27953,7 +27953,7 @@ with self;
hash = "sha256-SEhnmj8gHj87DF9vlSbmAq9Skj/6RxoqNlfbeGvTvcU=";
};
buildInputs = [ pkgs.zlib ];
- NIX_CFLAGS_LINK = "-L${pkgs.zlib.out}/lib -lz";
+ env.NIX_CFLAGS_LINK = "-L${pkgs.zlib.out}/lib -lz";
meta = {
description = "Perl extension to provide a PerlIO layer to gzip/gunzip";
license = with lib.licenses; [
@@ -33082,7 +33082,7 @@ with self;
pkgs.readline
pkgs.ncurses
];
- NIX_CFLAGS_LINK = "-lreadline -lncursesw";
+ env.NIX_CFLAGS_LINK = "-lreadline -lncursesw";
# For some crazy reason Makefile.PL doesn't generate a Makefile if
# AUTOMATED_TESTING is set.
@@ -35770,9 +35770,9 @@ with self;
hash = "sha256-K+oyCfGOJzsZPjF1pC0mk5GRnkmrEGtuJSOV0nIYL2U=";
};
propagatedBuildInputs = [ pkgs.aspell ];
- ASPELL_CONF = "dict-dir ${pkgs.aspellDicts.en}/lib/aspell";
+ env.ASPELL_CONF = "dict-dir ${pkgs.aspellDicts.en}/lib/aspell";
env.NIX_CFLAGS_COMPILE = "-I${pkgs.aspell}/include";
- NIX_CFLAGS_LINK = "-L${pkgs.aspell}/lib -laspell";
+ env.NIX_CFLAGS_LINK = "-L${pkgs.aspell}/lib -laspell";
meta = {
description = "Perl interface to the GNU Aspell library";
license = with lib.licenses; [
@@ -38384,7 +38384,7 @@ with self;
pkgs.libxt
pkgs.libxtst
];
- NIX_CFLAGS_LINK = "-lX11";
+ env.NIX_CFLAGS_LINK = "-lX11";
doCheck = false; # requires an X server
meta = {
description = "Provides GUI testing/interaction routines";
@@ -38427,7 +38427,7 @@ with self;
XMLSimple
XSObjectMagic
];
- NIX_CFLAGS_LINK = "-lxcb -lxcb-util -lxcb-xinerama -lxcb-icccm -lxcb-randr -lxcb-xkb";
+ env.NIX_CFLAGS_LINK = "-lxcb -lxcb-util -lxcb-xinerama -lxcb-icccm -lxcb-randr -lxcb-xkb";
doCheck = false; # requires an X server
meta = {
description = "Perl bindings for libxcb";
@@ -38670,7 +38670,7 @@ with self;
url = "mirror://cpan/authors/id/S/SH/SHLOMIF/XML-LibXML-2.0210.tar.gz";
hash = "sha256-opvz8Aq5ye4EIYFU4K/I95m/I2dOuZwantTeH0BZpI0=";
};
- SKIP_SAX_INSTALL = 1;
+ env.SKIP_SAX_INSTALL = 1;
buildInputs = [
AlienBuild
AlienLibxml2
@@ -39523,7 +39523,7 @@ with self;
hash = "sha256-BpsWQRcpX6gtJSlAocqLMIrYsfPocjvk6CaqqX9wbWw=";
};
env.NIX_CFLAGS_COMPILE = "-I${pkgs.openssl.dev}/include -I${pkgs.libidn2}.dev}/include";
- NIX_CFLAGS_LINK = "-L${lib.getLib pkgs.openssl}/lib -L${lib.getLib pkgs.libidn2}/lib -lcrypto -lidn2";
+ env.NIX_CFLAGS_LINK = "-L${lib.getLib pkgs.openssl}/lib -L${lib.getLib pkgs.libidn2}/lib -lcrypto -lidn2";
makeMakerFlags = [ "--prefix-openssl=${pkgs.openssl.dev}" ];
diff --git a/pkgs/top-level/rocq-packages.nix b/pkgs/top-level/rocq-packages.nix
index 0ce9d5f897de..53f5720c53d9 100644
--- a/pkgs/top-level/rocq-packages.nix
+++ b/pkgs/top-level/rocq-packages.nix
@@ -46,6 +46,8 @@ let
mathcomp-solvable = self.mathcomp.solvable;
mathcomp-field = self.mathcomp.field;
mathcomp-character = self.mathcomp.character;
+ mathcomp-bigenough = callPackage ../development/rocq-modules/mathcomp-bigenough { };
+ mathcomp-finmap = callPackage ../development/rocq-modules/mathcomp-finmap { };
parseque = callPackage ../development/rocq-modules/parseque { };
relation-algebra = callPackage ../development/rocq-modules/relation-algebra { };
rocq-elpi = callPackage ../development/rocq-modules/rocq-elpi { };