Merge staging-next into staging

This commit is contained in:
nixpkgs-ci[bot]
2025-09-05 18:06:13 +00:00
committed by GitHub
95 changed files with 8166 additions and 1171 deletions
+2
View File
@@ -125,6 +125,8 @@
- `go-mockery` has been updated to v3. For migration instructions see the [upstream documentation](https://vektra.github.io/mockery/latest/v3/). If v2 is still required `go-mockery_v2` has been added but will be removed on or before 2029-12-31 in-line with its [upstream support lifecycle](https://vektra.github.io/mockery/)
- `prometheus-script-exporter` has been updated to use a new maintained alternative. This release updates from `1.2.0 -> 3.0.1` and largely changes configuration options formats from json to yaml, among other changes.
- [private-gpt](https://github.com/zylon-ai/private-gpt) service has been removed by lack of maintenance upstream.
- `lxde` scope has been removed, and its packages have been moved the top-level.
+5
View File
@@ -15287,6 +15287,11 @@
github = "M0NsTeRRR";
githubId = 37785089;
};
m0ustache3 = {
name = "M0ustach3";
github = "M0ustach3";
githubId = 37956764;
};
m1cr0man = {
email = "lucas+nix@m1cr0man.com";
github = "m1cr0man";
@@ -14,46 +14,29 @@ let
literalExpression
concatStringsSep
;
configFile = pkgs.writeText "script-exporter.yaml" (builtins.toJSON cfg.settings);
settingsFormat = pkgs.formats.yaml { };
configFile = settingsFormat.generate "script-exporter.yaml" cfg.settings;
in
{
port = 9172;
extraOpts = {
settings.scripts = mkOption {
type =
with types;
listOf (submodule {
options = {
name = mkOption {
type = str;
example = "sleep";
description = "Name of the script.";
};
script = mkOption {
type = str;
example = "sleep 5";
description = "Shell script to execute when metrics are requested.";
};
timeout = mkOption {
type = nullOr int;
default = null;
example = 60;
description = "Optional timeout for the script in seconds.";
};
};
});
settings = mkOption {
type = (pkgs.formats.yaml { }).type;
default = { };
example = literalExpression ''
{
scripts = [
{ name = "sleep"; script = "sleep 5"; }
{ name = "sleep"; command = [ "sleep" ]; args = [ "5" ]; }
];
}
'';
description = ''
All settings expressed as an Nix attrset.
Free-form configuration for script_exporter, expressed as a Nix attrset and rendered to YAML.
Check the official documentation for the corresponding YAML
settings that can all be used here: <https://github.com/adhocteam/script_exporter#sample-configuration>
**Migration note:**
The previous format using `script = "sleep 5"` is no longer supported. You must use `command` (list) and `args` (list), e.g. `{ command = [ "sleep" ]; args = [ "5" ]; }`.
See the official documentation for all available options: <https://github.com/ricoberger/script_exporter#configuration-file>
'';
};
};
@@ -62,7 +45,7 @@ in
ExecStart = ''
${pkgs.prometheus-script-exporter}/bin/script_exporter \
--web.listen-address ${cfg.listenAddress}:${toString cfg.port} \
--config.file ${configFile} \
--config.files ${configFile} \
${concatStringsSep " \\\n " cfg.extraFlags}
'';
NoNewPrivileges = true;
@@ -0,0 +1,973 @@
{
config,
pkgs,
lib,
...
}:
let
format = pkgs.formats.yaml { };
rootDir = "/var/lib/crowdsec";
stateDir = "${rootDir}/state";
confDir = "/etc/crowdsec/";
hubDir = "${stateDir}/hub/";
notificationsDir = "${confDir}/notifications/";
pluginDir = "${confDir}/plugins/";
parsersDir = "${confDir}/parsers/";
localPostOverflowsDir = "${confDir}/postoverflows/";
localPostOverflowsS01WhitelistDir = "${localPostOverflowsDir}/s01-whitelist/";
localScenariosDir = "${confDir}/scenarios/";
localParsersS00RawDir = "${parsersDir}/s00-raw/";
localParsersS01ParseDir = "${parsersDir}/s01-parse/";
localParsersS02EnrichDir = "${parsersDir}/s02-enrich/";
localContextsDir = "${confDir}/contexts/";
in
{
options.services.crowdsec = {
enable = lib.mkEnableOption "CrowdSec Security Engine";
package = lib.mkPackageOption pkgs "crowdsec" { };
autoUpdateService = lib.mkEnableOption "if `true` `cscli hub update` will be executed daily. See `https://docs.crowdsec.net/docs/cscli/cscli_hub_update/` for more information";
openFirewall = lib.mkOption {
type = lib.types.bool;
default = false;
example = true;
description = ''
Whether to automatically open firewall ports for `crowdsec`.
'';
};
user = lib.mkOption {
type = lib.types.str;
description = "The user to run crowdsec as";
default = "crowdsec";
};
group = lib.mkOption {
type = lib.types.str;
description = "The group to run crowdsec as";
default = "crowdsec";
};
name = lib.mkOption {
type = lib.types.str;
description = ''
Name of the machine when registering it at the central or local api.
'';
default = config.networking.hostName;
defaultText = lib.literalExpression "config.networking.hostName";
};
localConfig = lib.mkOption {
type = lib.types.submodule {
options = {
acquisitions = lib.mkOption {
type = lib.types.listOf format.type;
default = [ ];
description = ''
A list of acquisition specifications, which define the data sources you want to be parsed.
See <https://docs.crowdsec.net/docs/data_sources/intro> for details.
'';
example = [
{
source = "journalctl";
journalctl_filter = [ "_SYSTEMD_UNIT=sshd.service" ];
labels = {
type = "syslog";
};
}
];
};
scenarios = lib.mkOption {
type = lib.types.listOf format.type;
default = [ ];
description = ''
A list of scenarios specifications.
See <https://docs.crowdsec.net/docs/scenarios/intro> for details.
'';
example = [
{
type = "leaky";
name = "crowdsecurity/myservice-bf";
description = "Detect myservice bruteforce";
filter = "evt.Meta.log_type == 'myservice_failed_auth'";
leakspeed = "10s";
capacity = 5;
groupby = "evt.Meta.source_ip";
}
];
};
parsers = lib.mkOption {
type = lib.types.submodule {
options = {
s00Raw = lib.mkOption {
type = lib.types.listOf format.type;
default = [ ];
description = ''
A list of stage s00-raw specifications. Most of the time, those are already included in the hub, but are presented here anyway.
See <https://docs.crowdsec.net/docs/parsers/intro> for details.
'';
};
s01Parse = lib.mkOption {
type = lib.types.listOf format.type;
default = [ ];
description = ''
A list of stage s01-parse specifications.
See <https://docs.crowdsec.net/docs/parsers/intro> for details.
'';
example = [
{
filter = "1=1";
debug = true;
onsuccess = "next_stage";
name = "example/custom-service-logs";
description = "Parsing custom service logs";
grok = {
pattern = "^%{DATA:some_data}$";
apply_on = "message";
};
statics = [
{
parsed = "is_my_custom_service";
value = "yes";
}
];
}
];
};
s02Enrich = lib.mkOption {
type = lib.types.listOf format.type;
default = [ ];
description = ''
A list of stage s02-enrich specifications. Inside this list, you can specify Parser Whitelists.
See <https://docs.crowdsec.net/docs/whitelist/intro> for details.
'';
example = [
{
name = "myips/whitelist";
description = "Whitelist parse events from my IPs";
whitelist = {
reason = "My IP ranges";
ip = [
"1.2.3.4"
];
cidr = [
"1.2.3.0/24"
];
};
}
];
};
};
};
default = { };
};
postOverflows = lib.mkOption {
type = lib.types.submodule {
options = {
s01Whitelist = lib.mkOption {
type = lib.types.listOf format.type;
default = [ ];
description = ''
A list of stage s01-whitelist specifications. Inside this list, you can specify Postoverflows Whitelists.
See <https://docs.crowdsec.net/docs/whitelist/intro> for details.
'';
example = [
{
name = "postoverflows/whitelist_my_dns_domain";
description = "Whitelist my reverse DNS";
whitelist = {
reason = "Don't ban me";
expression = [
"evt.Enriched.reverse_dns endsWith '.local.'"
];
};
}
];
};
};
};
default = { };
};
contexts = lib.mkOption {
type = lib.types.listOf format.type;
description = ''
A list of additional contexts to specify.
See <https://docs.crowdsec.net/docs/next/log_processor/alert_context/intro> for details.
'';
example = [
{
context = {
target_uri = [ "evt.Meta.http_path" ];
user_agent = [ "evt.Meta.http_user_agent" ];
method = [ "evt.Meta.http_verb" ];
status = [ "evt.Meta.http_status" ];
};
}
];
default = [ ];
};
notifications = lib.mkOption {
type = lib.types.listOf format.type;
description = ''
A list of notifications to enable and use in your profiles. Note that for now, only the plugins shipped by default with CrowdSec are supported.
See <https://docs.crowdsec.net/docs/notification_plugins/intro> for details.
'';
example = [
{
type = "http";
name = "default_http_notification";
log_level = "info";
format = ''
{{.|toJson}}
'';
url = "https://example.com/hook";
method = "POST";
}
];
default = [ ];
};
profiles = lib.mkOption {
type = lib.types.listOf format.type;
description = ''
A list of profiles to enable.
See <https://docs.crowdsec.net/docs/profiles/intro> for more details.
'';
example = [
{
name = "default_ip_remediation";
filters = [
"Alert.Remediation == true && Alert.GetScope() == 'Ip'"
];
decisions = [
{
type = "ban";
duration = "4h";
}
];
on_success = "break";
}
{
name = "default_range_remediation";
filters = [
"Alert.Remediation == true && Alert.GetScope() == 'Range'"
];
decisions = [
{
type = "ban";
duration = "4h";
}
];
on_success = "break";
}
];
default = [
{
name = "default_ip_remediation";
filters = [
"Alert.Remediation == true && Alert.GetScope() == 'Ip'"
];
decisions = [
{
type = "ban";
duration = "4h";
}
];
on_success = "break";
}
{
name = "default_range_remediation";
filters = [
"Alert.Remediation == true && Alert.GetScope() == 'Range'"
];
decisions = [
{
type = "ban";
duration = "4h";
}
];
on_success = "break";
}
];
};
patterns = lib.mkOption {
type = lib.types.listOf lib.types.package;
default = [ ];
example = lib.literalExpression ''
[ (pkgs.writeTextDir "custom_service_logs" (builtins.readFile ./custom_service_logs)) ]
'';
};
};
};
default = { };
};
hub = lib.mkOption {
type = lib.types.submodule {
options = {
collections = lib.mkOption {
type = lib.types.listOf lib.types.str;
default = [ ];
description = "List of hub collections to install";
example = [ "crowdsecurity/linux" ];
};
scenarios = lib.mkOption {
type = lib.types.listOf lib.types.str;
default = [ ];
description = "List of hub scenarios to install";
example = [ "crowdsecurity/ssh-bf" ];
};
parsers = lib.mkOption {
type = lib.types.listOf lib.types.str;
default = [ ];
description = "List of hub parsers to install";
example = [ "crowdsecurity/sshd-logs" ];
};
postOverflows = lib.mkOption {
type = lib.types.listOf lib.types.str;
default = [ ];
description = "List of hub postoverflows to install";
example = [ "crowdsecurity/auditd-nix-wrappers-whitelist-process" ];
};
appSecConfigs = lib.mkOption {
type = lib.types.listOf lib.types.str;
default = [ ];
description = "List of hub appsec configurations to install";
example = [ "crowdsecurity/appsec-default" ];
};
appSecRules = lib.mkOption {
type = lib.types.listOf lib.types.str;
default = [ ];
description = "List of hub appsec rules to install";
example = [ "crowdsecurity/base-config" ];
};
branch = lib.mkOption {
type = lib.types.str;
default = "master";
description = ''
The git branch on which cscli is going to fetch configurations.
See `https://docs.crowdsec.net/docs/configuration/crowdsec_configuration/#hub_branch` for more information.
'';
example = [
"master"
"v1.4.3"
"v1.4.2"
];
};
};
};
default = { };
description = ''
Hub collections, parsers, AppSec rules, etc.
'';
};
settings = lib.mkOption {
type = lib.types.submodule {
options = {
general = lib.mkOption {
description = ''
Settings for the main CrowdSec configuration file.
Refer to the defaults at <https://github.com/crowdsecurity/crowdsec/blob/master/config/config.yaml>.
'';
type = format.type;
default = { };
};
simulation = lib.mkOption {
type = format.type;
default = {
simulation = false;
};
description = ''
Attributes inside the simulation.yaml file.
'';
};
lapi = lib.mkOption {
type = lib.types.submodule {
options = {
credentialsFile = lib.mkOption {
type = lib.types.nullOr lib.types.path;
example = "/run/crowdsec/lapi.yaml";
description = ''
The LAPI credential file to use.
'';
default = null;
};
};
};
description = ''
LAPI Configuration attributes
'';
default = { };
};
capi = lib.mkOption {
type = lib.types.submodule {
options = {
credentialsFile = lib.mkOption {
type = lib.types.nullOr lib.types.path;
example = "/run/crowdsec/capi.yaml";
description = ''
The CAPI credential file to use.
'';
default = null;
};
};
};
description = ''
CAPI Configuration attributes
'';
default = { };
};
console = lib.mkOption {
type = lib.types.submodule {
options = {
tokenFile = lib.mkOption {
type = lib.types.nullOr lib.types.path;
example = "/run/crowdsec/console_token.yaml";
description = ''
The Console Token file to use.
'';
default = null;
};
configuration = lib.mkOption {
type = format.type;
default = {
share_manual_decisions = false;
share_custom = false;
share_tainted = false;
share_context = false;
};
description = ''
Attributes inside the console.yaml file.
'';
};
};
};
description = ''
Console Configuration attributes
'';
default = { };
};
};
};
};
};
config =
let
cfg = config.services.crowdsec;
configFile = format.generate "crowdsec.yaml" cfg.settings.general;
simulationFile = format.generate "simulation.yaml" cfg.settings.simulation;
consoleFile = format.generate "console.yaml" cfg.settings.console.configuration;
patternsDir = pkgs.buildPackages.symlinkJoin {
name = "crowdsec-patterns";
paths = [
cfg.localConfig.patterns
"${lib.attrsets.getOutput "out" cfg.package}/share/crowdsec/config/patterns/"
];
};
cscli = pkgs.writeShellScriptBin "cscli" ''
set -euo pipefail
# cscli needs crowdsec on it's path in order to be able to run `cscli explain`
export PATH="$PATH:${lib.makeBinPath [ cfg.package ]}"
sudo=exec
if [ "$USER" != "${cfg.user}" ]; then
${
if config.security.sudo.enable then
"sudo='exec ${config.security.wrapperDir}/sudo -u ${cfg.user}'"
else
">&2 echo 'Aborting, cscli must be run as user `${cfg.user}`!'; exit 2"
}
fi
$sudo ${lib.getExe' cfg.package "cscli"} -c=${configFile} "$@"
'';
localScenariosMap = (map (format.generate "scenario.yaml") cfg.localConfig.scenarios);
localParsersS00RawMap = (
map (format.generate "parsers-s00-raw.yaml") cfg.localConfig.parsers.s00Raw
);
localParsersS01ParseMap = (
map (format.generate "parsers-s01-parse.yaml") cfg.localConfig.parsers.s01Parse
);
localParsersS02EnrichMap = (
map (format.generate "parsers-s02-enrich.yaml") cfg.localConfig.parsers.s02Enrich
);
localPostOverflowsS01WhitelistMap = (
map (format.generate "postoverflows-s01-whitelist.yaml") cfg.localConfig.postOverflows.s01Whitelist
);
localContextsMap = (map (format.generate "context.yaml") cfg.localConfig.contexts);
localNotificationsMap = (map (format.generate "notification.yaml") cfg.localConfig.notifications);
localProfilesFile = pkgs.writeText "local_profiles.yaml" ''
---
${lib.strings.concatMapStringsSep "\n---\n" builtins.toJSON cfg.localConfig.profiles}
---
'';
localAcquisisionFile = pkgs.writeText "local_acquisisions.yaml" ''
---
${lib.strings.concatMapStringsSep "\n---\n" builtins.toJSON cfg.localConfig.acquisitions}
---
'';
scriptArray = [
"set -euo pipefail"
"${lib.getExe' pkgs.coreutils "mkdir"} -p '${hubDir}'"
"${lib.getExe cscli} hub update"
]
++ lib.optionals (cfg.hub.collections != [ ]) [
"${lib.getExe cscli} collections install ${
lib.strings.concatMapStringsSep " " (x: lib.escapeShellArg x) cfg.hub.collections
}"
]
++ lib.optionals (cfg.hub.scenarios != [ ]) [
"${lib.getExe cscli} scenarios install ${
lib.strings.concatMapStringsSep " " (x: lib.escapeShellArg x) cfg.hub.scenarios
}"
]
++ lib.optionals (cfg.hub.parsers != [ ]) [
"${lib.getExe cscli} parsers install ${
lib.strings.concatMapStringsSep " " (x: lib.escapeShellArg x) cfg.hub.parsers
}"
]
++ lib.optionals (cfg.hub.postOverflows != [ ]) [
"${lib.getExe cscli} postoverflows install ${
lib.strings.concatMapStringsSep " " (x: lib.escapeShellArg x) cfg.hub.postOverflows
}"
]
++ lib.optionals (cfg.hub.appSecConfigs != [ ]) [
"${lib.getExe cscli} appsec-configs install ${
lib.strings.concatMapStringsSep " " (x: lib.escapeShellArg x) cfg.hub.appSecConfigs
}"
]
++ lib.optionals (cfg.hub.appSecRules != [ ]) [
"${lib.getExe cscli} appsec-rules install ${
lib.strings.concatMapStringsSep " " (x: lib.escapeShellArg x) cfg.hub.appSecRules
}"
]
++ lib.optionals (cfg.settings.general.api.server.enable) [
''
if [ ! -s "${cfg.settings.general.api.client.credentials_path}" ]; then
${lib.getExe cscli} machine add "${cfg.name}" --auto
fi
''
]
++ lib.optionals (cfg.settings.capi.credentialsFile != null) [
''
if ! grep -q password "${cfg.settings.capi.credentialsFile}" ]; then
${lib.getExe cscli} capi register
fi
''
]
++ lib.optionals (cfg.settings.console.tokenFile != null) [
''
if [ ! -e "${cfg.settings.console.tokenFile}" ]; then
${lib.getExe cscli} console enroll "$(cat ${cfg.settings.console.tokenFile})" --name ${cfg.name}
fi
''
];
setupScript = pkgs.writeShellScriptBin "crowdsec-setup" (
lib.strings.concatStringsSep "\n" scriptArray
);
in
lib.mkIf (cfg.enable) {
warnings =
[ ]
++ lib.optionals (cfg.localConfig.profiles == [ ]) [
"By not specifying profiles in services.crowdsec.localConfig.profiles, CrowdSec will not react to any alert by default."
]
++ lib.optionals (cfg.localConfig.acquisitions == [ ]) [
"By not specifying acquisitions in services.crowdsec.localConfig.acquisitions, CrowdSec will not look for any data source."
];
services.crowdsec.settings.general = {
common = {
daemonize = false;
log_media = "stdout";
};
config_paths = {
config_dir = confDir;
data_dir = stateDir;
simulation_path = simulationFile;
hub_dir = hubDir;
index_path = lib.strings.normalizePath "${stateDir}/hub/.index.json";
notification_dir = notificationsDir;
plugin_dir = pluginDir;
pattern_dir = patternsDir;
};
db_config = {
type = lib.mkDefault "sqlite";
db_path = lib.mkDefault (lib.strings.normalizePath "${stateDir}/crowdsec.db");
use_wal = lib.mkDefault true;
};
crowdsec_service = {
enable = lib.mkDefault true;
acquisition_path = lib.mkDefault localAcquisisionFile;
};
api = {
client = {
credentials_path = cfg.settings.lapi.credentialsFile;
};
server = {
enable = lib.mkDefault false;
listen_uri = lib.mkDefault "127.0.0.1:8080";
console_path = lib.mkDefault consoleFile;
profiles_path = lib.mkDefault localProfilesFile;
online_client = lib.mkDefault {
sharing = lib.mkDefault true;
pull = lib.mkDefault {
community = lib.mkDefault true;
blocklists = lib.mkDefault true;
};
credentials_path = cfg.settings.capi.credentialsFile;
};
};
};
prometheus = {
enabled = lib.mkDefault true;
level = lib.mkDefault "full";
listen_addr = lib.mkDefault "127.0.0.1";
listen_port = lib.mkDefault 6060;
};
cscli = {
hub_branch = cfg.hub.branch;
};
};
environment = {
systemPackages = [ cscli ];
};
systemd.packages = [ cfg.package ];
systemd.timers.crowdsec-update-hub = lib.mkIf (cfg.autoUpdateService) {
description = "Update the crowdsec hub index";
wantedBy = [ "timers.target" ];
timerConfig = {
OnCalendar = "daily";
RandomizedDelaySec = 300;
Persistent = "yes";
Unit = "crowdsec-update-hub.service";
};
};
systemd.services = {
crowdsec-update-hub = lib.mkIf (cfg.autoUpdateService) {
description = "Update the crowdsec hub index";
serviceConfig = {
Type = "oneshot";
User = cfg.user;
Group = cfg.group;
LimitNOFILE = 65536;
NoNewPrivileges = true;
LockPersonality = true;
RemoveIPC = true;
ReadWritePaths = [
rootDir
confDir
];
ProtectSystem = "strict";
PrivateUsers = true;
ProtectHome = true;
PrivateTmp = true;
PrivateDevices = true;
ProtectHostname = true;
UMask = "0077";
ProtectKernelTunables = true;
ProtectKernelModules = true;
ProtectControlGroups = true;
ProtectProc = "invisible";
SystemCallFilter = [
" " # This is needed to clear the SystemCallFilter existing definitions
"~@reboot"
"~@swap"
"~@obsolete"
"~@mount"
"~@module"
"~@debug"
"~@cpu-emulation"
"~@clock"
"~@raw-io"
"~@privileged"
"~@resources"
];
CapabilityBoundingSet = [
" " # Reset all capabilities to an empty set
];
RestrictAddressFamilies = [
" " # This is needed to clear the RestrictAddressFamilies existing definitions
"none" # Remove all addresses families
"AF_UNIX"
"AF_INET"
"AF_INET6"
];
DevicePolicy = "closed";
ProtectKernelLogs = true;
SystemCallArchitectures = "native";
RestrictNamespaces = true;
RestrictRealtime = true;
RestrictSUIDSGID = true;
ExecStart = "${lib.getExe cscli} --error hub update";
ExecStartPost = "systemctl reload crowdsec.service";
DynamicUser = true;
};
};
crowdsec = {
description = "CrowdSec agent";
wantedBy = [ "multi-user.target" ];
after = [ "network-online.target" ];
wants = [ "network-online.target" ];
path = lib.mkForce [ ];
environment = {
LC_ALL = "C";
LANG = "C";
};
serviceConfig = {
User = cfg.user;
Group = cfg.group;
Type = "simple";
RestartSec = 60;
LimitNOFILE = 65536;
NoNewPrivileges = true;
LockPersonality = true;
RemoveIPC = true;
ReadWritePaths = [
rootDir
confDir
];
ProtectSystem = "strict";
PrivateUsers = true;
ProtectHome = true;
PrivateTmp = true;
PrivateDevices = true;
ProtectHostname = true;
ProtectClock = true;
UMask = "0077";
ProtectKernelTunables = true;
ProtectKernelModules = true;
ProtectControlGroups = true;
ProtectProc = "invisible";
SystemCallFilter = [
" " # This is needed to clear the SystemCallFilter existing definitions
"~@reboot"
"~@swap"
"~@obsolete"
"~@mount"
"~@module"
"~@debug"
"~@cpu-emulation"
"~@clock"
"~@raw-io"
"~@privileged"
"~@resources"
];
CapabilityBoundingSet = [
" " # Reset all capabilities to an empty set
"CAP_SYSLOG" # Add capability to read syslog
];
RestrictAddressFamilies = [
" " # This is needed to clear the RestrictAddressFamilies existing definitions
"none" # Remove all addresses families
"AF_UNIX"
"AF_INET"
"AF_INET6"
];
DevicePolicy = "closed";
ProtectKernelLogs = true;
SystemCallArchitectures = "native";
DynamicUser = true;
RestrictNamespaces = true;
RestrictRealtime = true;
RestrictSUIDSGID = true;
ExecReload = [
" " # This is needed to clear the ExecReload definitions from upstream
];
ExecStart = [
" " # This is needed to clear the ExecStart definitions from upstream
"${lib.getExe' cfg.package "crowdsec"} -c ${configFile} -info"
];
ExecStartPre = [
" " # This is needed to clear the ExecStartPre definitions from upstream
"${lib.getExe setupScript}"
"${lib.getExe' cfg.package "crowdsec"} -c ${configFile} -t -error"
];
};
};
};
systemd.tmpfiles.settings = {
"10-crowdsec" =
builtins.listToAttrs (
map
(dirName: {
inherit cfg;
name = lib.strings.normalizePath dirName;
value = {
d = {
user = cfg.user;
group = cfg.group;
mode = "0750";
};
};
})
[
stateDir
hubDir
confDir
localScenariosDir
localPostOverflowsDir
localPostOverflowsS01WhitelistDir
parsersDir
localParsersS00RawDir
localParsersS01ParseDir
localParsersS02EnrichDir
localContextsDir
notificationsDir
pluginDir
]
)
// builtins.listToAttrs (
map (scenarioFile: {
inherit cfg;
name = lib.strings.normalizePath "${localScenariosDir}/${builtins.unsafeDiscardStringContext (builtins.baseNameOf scenarioFile)}";
value = {
link = {
type = "L+";
argument = "${scenarioFile}";
};
};
}) localScenariosMap
)
// builtins.listToAttrs (
map (parser: {
inherit cfg;
name = lib.strings.normalizePath "${localParsersS00RawDir}/${builtins.unsafeDiscardStringContext (builtins.baseNameOf parser)}";
value = {
link = {
type = "L+";
argument = "${parser}";
};
};
}) localParsersS00RawMap
)
// builtins.listToAttrs (
map (parser: {
inherit cfg;
name = lib.strings.normalizePath "${localParsersS01ParseDir}/${builtins.unsafeDiscardStringContext (builtins.baseNameOf parser)}";
value = {
link = {
type = "L+";
argument = "${parser}";
};
};
}) localParsersS01ParseMap
)
// builtins.listToAttrs (
map (parser: {
inherit cfg;
name = lib.strings.normalizePath "${localParsersS02EnrichDir}/${builtins.unsafeDiscardStringContext (builtins.baseNameOf parser)}";
value = {
link = {
type = "L+";
argument = "${parser}";
};
};
}) localParsersS02EnrichMap
)
// builtins.listToAttrs (
map (postoverflow: {
inherit cfg;
name = lib.strings.normalizePath "${localPostOverflowsS01WhitelistDir}/${builtins.unsafeDiscardStringContext (builtins.baseNameOf postoverflow)}";
value = {
link = {
type = "L+";
argument = "${postoverflow}";
};
};
}) localPostOverflowsS01WhitelistMap
)
// builtins.listToAttrs (
map (context: {
inherit cfg;
name = lib.strings.normalizePath "${localContextsDir}/${builtins.unsafeDiscardStringContext (builtins.baseNameOf context)}";
value = {
link = {
type = "L+";
argument = "${context}";
};
};
}) localContextsMap
)
// builtins.listToAttrs (
map (notification: {
inherit cfg;
name = lib.strings.normalizePath "${notificationsDir}/${builtins.unsafeDiscardStringContext (builtins.baseNameOf notification)}";
value = {
link = {
type = "L+";
argument = "${notification}";
};
};
}) localNotificationsMap
);
};
users.users.${cfg.user} = {
name = cfg.user;
description = lib.mkDefault "CrowdSec service user";
isSystemUser = true;
group = cfg.group;
extraGroups = [ "systemd-journal" ];
};
users.groups.${cfg.group} = lib.mapAttrs (name: lib.mkDefault) { };
networking.firewall.allowedTCPPorts =
let
parsePortFromURLOption =
url: option:
builtins.addErrorContext "extracting a port from URL: `${option}` requires a port to be specified, but we failed to parse a port from '${url}'" (
lib.strings.toInt (lib.last (lib.strings.splitString ":" url))
);
in
lib.mkIf cfg.openFirewall [
cfg.settings.general.prometheus.listen_port
(parsePortFromURLOption cfg.settings.general.api.server.listen_uri "config.services.crowdsec.settings.general.api.server.listen_uri")
];
};
meta = {
maintainers = with lib.maintainers; [
m0ustach3
tornax
jk
];
};
}
+3 -2
View File
@@ -1564,7 +1564,8 @@ let
settings.scripts = [
{
name = "success";
script = "sleep 1";
command = [ "sleep" ];
args = [ "1" ];
}
];
};
@@ -1572,7 +1573,7 @@ let
wait_for_unit("prometheus-script-exporter.service")
wait_for_open_port(9172)
wait_until_succeeds(
"curl -sSf 'localhost:9172/probe?name=success' | grep -q '{}'".format(
"curl -sSf 'localhost:9172/probe?script=success' | grep -q '{}'".format(
'script_success{script="success"} 1'
)
)
@@ -95,10 +95,11 @@
withX ? !(stdenv.hostPlatform.isDarwin || noGui || withPgtk),
withXinput2 ? withX,
withXwidgets ?
!stdenv.hostPlatform.isDarwin
&& !noGui
&& (withGTK3 || withPgtk)
&& (lib.versionOlder version "30"), # XXX: upstream bug 66068 precludes newer versions of webkit2gtk (https://lists.gnu.org/archive/html/bug-gnu-emacs/2024-09/msg00695.html)
!noGui
&& (withGTK3 || withPgtk || withNS || variant == "macport")
&& (stdenv.hostPlatform.isDarwin || lib.versionOlder version "30"),
# XXX: - upstream bug 66068 precludes newer versions of webkit2gtk (https://lists.gnu.org/archive/html/bug-gnu-emacs/2024-09/msg00695.html)
# XXX: - Apple_SDK WebKit is compatible with Emacs.
withSmallJaDic ? false,
withCompressInstall ? true,
@@ -128,7 +129,8 @@ assert withGpm -> stdenv.hostPlatform.isLinux;
assert withImageMagick -> (withX || withNS);
assert withNS -> stdenv.hostPlatform.isDarwin && !(withX || variant == "macport");
assert withPgtk -> withGTK3 && !withX;
assert withXwidgets -> !noGui && (withGTK3 || withPgtk);
assert withXwidgets -> !noGui && (withGTK3 || withPgtk || withNS || variant == "macport");
# XXX: The upstream --with-xwidgets flag is enabled only when Emacs is built with GTK3 or with Cocoa (including the withNS and macport variant).
let
libGccJitLibraryPaths = [
@@ -348,7 +350,7 @@ stdenv.mkDerivation (finalAttrs: {
++ lib.optionals withXinput2 [
libXi
]
++ lib.optionals withXwidgets [
++ lib.optionals (withXwidgets && stdenv.hostPlatform.isLinux) [
webkitgtk_4_0
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
@@ -0,0 +1,55 @@
{
autoPatchelfHook,
lib,
stdenv,
vscode-utils,
}:
vscode-utils.buildVscodeMarketplaceExtension {
mktplcRef =
let
sources = {
"x86_64-linux" = {
arch = "linux-x64";
hash = "sha256-HXyY96fP9WjGWIe6ggQvygBnTEKRLUb5Qy18Vbjn160=";
};
"x86_64-darwin" = {
arch = "darwin-x64";
hash = "sha256-2b04CLmbOxXsTzheEUacqZuBtA/rSZqRMLor0lT2gsU=";
};
"aarch64-linux" = {
arch = "linux-arm64";
hash = "sha256-/eKZ3bkZ2jFr8cTpNLO6t8wsRfLyhLkQHMrkTWtCWb8=";
};
"aarch64-darwin" = {
arch = "darwin-arm64";
hash = "sha256-JRVrV2yYSfuwuBcM2MDJZz5vNRYHG4n6I/GozgdDOgk=";
};
};
in
{
name = "continue";
publisher = "Continue";
version = "1.1.76";
}
// sources.${stdenv.system} or (throw "Unsupported system: ${stdenv.system}");
nativeBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook ];
buildInputs = [ (lib.getLib stdenv.cc.cc) ];
meta = {
changelog = "https://marketplace.visualstudio.com/items/Continue.continue";
description = "Open-source AI code assistant";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=Continue.continue";
homepage = "https://github.com/continuedev/continue";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [
raroh73
flacks
];
platforms = [
"x86_64-linux"
"x86_64-darwin"
"aarch64-darwin"
"aarch64-linux"
];
};
}
@@ -1071,50 +1071,7 @@ let
callPackage ./contextmapper.context-mapper-vscode-extension
{ };
continue.continue = buildVscodeMarketplaceExtension {
mktplcRef =
let
sources = {
"x86_64-linux" = {
arch = "linux-x64";
hash = "sha256-mm7/ITiXuSrFrAwRPVYYJ6l5b4ODyiCPv5H+WioDAWY=";
};
"x86_64-darwin" = {
arch = "darwin-x64";
hash = "sha256-ySFiSJ+6AgxECzekBIlPl2BhWJvt5Rf1DFqg6b/6PDs=";
};
"aarch64-linux" = {
arch = "linux-arm64";
hash = "sha256-zqvhlA9APWtJowCOceB52HsfU3PaAWciZWxY/QcOYgg=";
};
"aarch64-darwin" = {
arch = "darwin-arm64";
hash = "sha256-CjzAntSjbYlauVptCnqE/HpwdudoGaTMML6Fyzj48pU=";
};
};
in
{
name = "continue";
publisher = "Continue";
version = "1.1.49";
}
// sources.${stdenv.system} or (throw "Unsupported system: ${stdenv.system}");
nativeBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook ];
buildInputs = [ (lib.getLib stdenv.cc.cc) ];
meta = {
description = "Open-source autopilot for software development - bring the power of ChatGPT to your IDE";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=Continue.continue";
homepage = "https://github.com/continuedev/continue";
license = lib.licenses.asl20;
maintainers = [ lib.maintainers.raroh73 ];
platforms = [
"x86_64-linux"
"x86_64-darwin"
"aarch64-darwin"
"aarch64-linux"
];
};
};
continue.continue = callPackage ./continue.continue { };
coolbear.systemd-unit-file = buildVscodeMarketplaceExtension {
mktplcRef = {
@@ -4457,8 +4414,8 @@ let
mktplcRef = {
publisher = "streetsidesoftware";
name = "code-spell-checker";
version = "4.0.47";
hash = "sha256-g9r8I909ge44JfBRm1JBHFluXr9H8zl0ERqkwoxtQaI=";
version = "4.2.6";
hash = "sha256-veP2G/5vcaimjd98ur6Mhl4x1NKuvS21oO+HFJLHN+I=";
};
meta = {
changelog = "https://marketplace.visualstudio.com/items/streetsidesoftware.code-spell-checker/changelog";
+5 -5
View File
@@ -11,13 +11,13 @@
}:
let
yarn-berry = yarn-berry_4;
version = "25.8.0";
version = "25.9.0";
src = fetchFromGitHub {
name = "actualbudget-actual-source";
owner = "actualbudget";
repo = "actual";
tag = "v${version}";
hash = "sha256-9Ov9AR+WEKtjiX+C2lvjxerc295DWSRHpTb4Lu1stoo=";
hash = "sha256-TYvGavj0Ts1ahgseFhuOtmfOSgPkjBIr19SIGOgx++Q=";
};
translations = fetchFromGitHub {
name = "actualbudget-translations-source";
@@ -25,8 +25,8 @@ let
repo = "translations";
# Note to updaters: this repo is not tagged, so just update this to the Git
# tip at the time the update is performed.
rev = "c1c2f298013ca3223e6cd6a4a4720bca5e8b8274";
hash = "sha256-3dtdymdKfEzUIzButA3L88GrehO4EjCrd/gq0Y5bcuE=";
rev = "3d88d15bf5125497de731f4e9dce19244bd4c7e0";
hash = "sha256-tOtDGNwR/DVEiOYilOLSJzNjBqvzxOF78ZJtmlz3fdg=";
};
in
@@ -82,7 +82,7 @@ stdenv.mkDerivation (finalAttrs: {
missingHashes = ./missing-hashes.json;
offlineCache = yarn-berry.fetchYarnBerryDeps {
inherit (finalAttrs) src missingHashes;
hash = "sha256-kbQjtZivn9ni6PLk04kAJTzhhGgubhnxgHqMnGwEXZk=";
hash = "sha256-Vod0VfoZG2nwnu35XLAPqY5uuRLVD751D3ZysD0ypL0=";
};
pname = "actual-server";
+11 -7
View File
@@ -1,7 +1,7 @@
{
lib,
fetchFromGitHub,
crystal_1_11,
crystal,
copyDesktopItems,
gtk3,
libxkbcommon,
@@ -11,6 +11,8 @@
openbox,
xvfb-run,
xdotool,
nix-update-script,
versionCheckHook,
buildDevTarget ? false, # the dev version prints debug info
}:
@@ -18,7 +20,7 @@
# NOTICE: AHK_X11 from this package does not support compiling scripts into portable executables.
let
pname = "ahk_x11";
version = "1.0.4-unstable-2025-01-30"; # 1.0.4 cannot build on Crystal 1.12 or below.
version = "1.0.5-unstable-2025-09-04";
inherit (xorg)
libXinerama
@@ -27,9 +29,6 @@ let
libXi
;
# See upstream README. Crystal 1.11 or below is needed to work around phil294/AHK_X11#89.
crystal = crystal_1_11;
in
crystal.buildCrystalPackage {
inherit pname version;
@@ -37,8 +36,8 @@ crystal.buildCrystalPackage {
src = fetchFromGitHub {
owner = "phil294";
repo = "AHK_X11";
rev = "66eb5208d95f4239822053c7d35f32bc62d57573"; # tag = version;
hash = "sha256-KzD5ExYPRYgsYO+/hlnoQpBJwokjaK5lYL2kobI2XQ0=";
rev = "f5375887dec3953c4cb3d78271821645bc3840f2";
hash = "sha256-GTcbwCVWnC+KP2qLArEUIUMs5S0vpkA4gJHQpWP1TNg=";
fetchSubmodules = true;
};
@@ -100,6 +99,11 @@ crystal.buildCrystalPackage {
# I don't know how to fix it for xvfb and openbox.
doCheck = false;
doInstallCheck = true;
nativeInstallCheckInputs = [ versionCheckHook ];
passthru.updateScript = nix-update-script { };
meta = {
description = "AutoHotkey for X11";
homepage = "https://phil294.github.io/AHK_X11";
+6 -6
View File
@@ -6,17 +6,17 @@
};
cron_parser = {
url = "https://github.com/kostya/cron_parser.git";
tag = "v0.4.0";
rev = "v0.4.0";
sha256 = "17fgg2nvyx99v05l10h6cnxfr7swz8yaxhmnk4l47kg2spi8w90a";
};
future = {
url = "https://github.com/crystal-community/future.cr.git";
tag = "v1.0.0";
rev = "v1.0.0";
sha256 = "1mji2djkrf4vxgs432kgkzxx54ybzk636789k2vsws3sf14l74i8";
};
gi-crystal = {
url = "https://github.com/hugopl/gi-crystal.git";
tag = "v0.22.1";
rev = "v0.22.1";
sha256 = "1bwsr5i6cmvnc72qdnmq4v6grif1hahrc7s6js2ivdrfix72flyg";
};
gtk3 = {
@@ -26,7 +26,7 @@
};
harfbuzz = {
url = "https://github.com/hugopl/harfbuzz.cr.git";
tag = "v0.2.0";
rev = "v0.2.0";
sha256 = "06wgqxwyib5416yp53j2iwcbr3bl4jjxb1flm7z103l365par694";
};
notify = {
@@ -36,12 +36,12 @@
};
pango = {
url = "https://github.com/hugopl/pango.cr.git";
tag = "v0.3.1";
rev = "v0.3.1";
sha256 = "0xlf127flimnll875mcq92q7xsi975rrgdpcpmnrwllhdhfx9qmv";
};
tasker = {
url = "https://github.com/spider-gazelle/tasker.git";
tag = "v2.1.4";
rev = "v2.1.4";
sha256 = "0254sl279nrw5nz43dz5gm89ah1zrw5bvxfma81navpx5gfg9pyb";
};
x11 = {
+2 -2
View File
@@ -65,13 +65,13 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "amnezia-vpn";
version = "4.8.9.2";
version = "4.8.10.0";
src = fetchFromGitHub {
owner = "amnezia-vpn";
repo = "amnezia-client";
tag = finalAttrs.version;
hash = "sha256-UavKtAwnEa+Ym1a7XzC3JPDLovqggjsav4q2MiYUxbI=";
hash = "sha256-w1uBhp47XRinZpSuKeFaASOIOyjRDkDA81uqW4pK3F4=";
fetchSubmodules = true;
};
+13 -15
View File
@@ -3,30 +3,29 @@
rustPlatform,
fetchFromGitHub,
pkg-config,
wrapGAppsHook3,
atk,
wrapGAppsHook4,
cairo,
gdk-pixbuf,
glib,
gtk3,
gtk4,
pango,
wayland,
gtk-layer-shell,
gtk4-layer-shell,
nix-update-script,
}:
rustPlatform.buildRustPackage {
rustPlatform.buildRustPackage (finalAttrs: {
pname = "anyrun";
version = "25.9.0.pre-release.1-unstable-2025-08-19";
version = "25.9.0";
src = fetchFromGitHub {
owner = "anyrun-org";
repo = "anyrun";
rev = "af1ffe4f17921825ff2a773995604dce2b2df3cd";
hash = "sha256-PKxVhfjd2AlzTopuVEx5DJMC4R7LnM5NIoMmirKMsKI=";
tag = "v${finalAttrs.version}";
hash = "sha256-01XBO8U2PyhhYXo3oZAu7dghqXkxdemeG82MqnNp4wE=";
};
cargoHash = "sha256-KpAnfytTtCJunhpk9exv8LYtF8mKDGFUUbsPP47M+Kk=";
cargoHash = "sha256-Xh+RWrAxa1cg0z6IGr7apzoAIlhDl8ZMpQTfoBAZXRk=";
strictDeps = true;
enableParallelBuilding = true;
@@ -34,16 +33,15 @@ rustPlatform.buildRustPackage {
nativeBuildInputs = [
pkg-config
wrapGAppsHook3
wrapGAppsHook4
];
buildInputs = [
atk
cairo
gdk-pixbuf
glib
gtk3
gtk-layer-shell
gtk4
gtk4-layer-shell
pango
wayland
];
@@ -58,7 +56,7 @@ rustPlatform.buildRustPackage {
install -Dm444 anyrun/res/style.css examples/config.ron -t $out/share/doc/anyrun/examples/
'';
passthru.updateScript = nix-update-script { extraArgs = [ "--version=branch" ]; };
passthru.updateScript = nix-update-script { };
meta = {
description = "Wayland-native, highly customizable runner";
@@ -71,4 +69,4 @@ rustPlatform.buildRustPackage {
mainProgram = "anyrun";
platforms = lib.platforms.linux;
};
}
})
+1 -1
View File
@@ -16,7 +16,7 @@ stdenvNoCC.mkDerivation {
src = fetchurl {
url = "https://github.com/aptakube/aptakube/releases/download/${version}/Aptakube_${version}_universal.dmg";
sha256 = "sha256-ljVl490cZuIcRSP8RKmf8Eq5D4OibLfuA8SugUlf1Yw=";
sha256 = "89828e1ac030f9532ba24afdd91d357280b32fcc475830b6667d5066e7a576ac";
};
nativeBuildInputs = [ undmg ];
+1 -1
View File
@@ -18,7 +18,7 @@ stdenvNoCC.mkDerivation {
src = fetchurl {
url = "https://github.com/aptakube/aptakube/releases/download/${version}/aptakube_${version}_amd64.deb";
sha256 = "sha256-lT8v2nXVfZb5W/FP/ymWjGypQLz7ONlp9+GblMKKXuw=";
sha256 = "9660c87da400dad1451f685defff774c6f5af9b3f713ad1cbd48284e965457dd";
};
nativeBuildInputs = [
+1 -1
View File
@@ -5,7 +5,7 @@
}:
let
pname = "aptakube";
version = "1.11.10";
version = "1.13.0";
meta = {
homepage = "https://aptakube.com/";
description = "Modern, lightweight and multi-cluster Kubernetes GUI";
+1
View File
@@ -35,6 +35,7 @@ python3Packages.buildPythonPackage rec {
postInstall = "installManPage doc/autotrash.1";
pythonImportsCheck = [ "autotrash" ];
nativeCheckInputs = [ python3Packages.pytestCheckHook ];
meta = {
description = "Tool to automatically purge old trashed files";
+10
View File
@@ -0,0 +1,10 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 0d6b915..0a004f7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -32,4 +32,5 @@ elseif (MACOS)
link_directories(${LIBUSB_LIBRARY_DIRS} ${LIBFTDI_LIBRARY_DIRS} ${LIBYAML_LIBRARY_DIRS})
target_link_libraries (bcu_mac ${LIBUSB_LIBDIR}/lib${LIBUSB_LIBRARIES}.dylib ${LIBFTDI_LIBDIR}/${LIBFTDI_MODULE_NAME}.dylib ${LIBYAML_LIBDIR}/lib${LIBYAML_LIBRARIES}.dylib -lpthread -lm)
execute_process( COMMAND sh ${PROJECT_SOURCE_DIR}/create_version_h.sh ${PROJECT_SOURCE_DIR} )
+ install(TARGETS bcu_mac DESTINATION bin)
endif ()
+63
View File
@@ -0,0 +1,63 @@
{
cmake,
fetchFromGitHub,
lib,
libftdi1,
libusb1,
libyaml,
ncurses,
nix-update-script,
pkg-config,
stdenv,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "bcu";
version = "1.1.119";
src = fetchFromGitHub {
owner = "nxp-imx";
repo = "bcu";
tag = "bcu_${finalAttrs.version}";
hash = "sha256-GVnUkIoqHED/9c3Tr4M29DB+t6Q8OPDcxVWKNn/lU/8=";
};
patches = [ ./darwin-install.patch ];
postPatch = ''
substituteInPlace create_version_h.sh \
--replace-fail "version=\`git describe --tags --long\`" "version=${finalAttrs.src.tag}"
'';
enableParallelBuilding = true;
strictDeps = true;
nativeBuildInputs = [
cmake
pkg-config
];
buildInputs = [
libftdi1
libusb1
libyaml
ncurses
];
passthru.updateScript = nix-update-script { };
env.NIX_CFLAGS_COMPILE = "-Wno-pointer-sign -Wno-deprecated-declarations -Wno-switch";
preFixup = lib.optionalString stdenv.hostPlatform.isDarwin ''
ln -sf $out/bin/bcu_mac $out/bin/bcu
'';
meta = {
description = "NXP i.MX remote control and power measurement tools";
homepage = "https://github.com/nxp-imx/bcu";
license = lib.licenses.bsd3;
mainProgram = "bcu";
maintainers = [ lib.maintainers.jmbaur ];
platforms = lib.platforms.linux ++ lib.platforms.darwin;
};
})
+3 -2
View File
@@ -21,11 +21,11 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "briar-desktop";
version = "0.6.3-beta";
version = "0.6.4-beta";
src = fetchurl {
url = "https://desktop.briarproject.org/jars/linux/${finalAttrs.version}/briar-desktop-linux-${finalAttrs.version}.jar";
hash = "sha256-8JX4cgRJZDCBlu5iVL7t5nZSZn8XTk3DU3rasViQgtg=";
hash = "sha256-S7O625SWbgi4iby76Qe377NGiw4r9+VqgQh8kclKwMo=";
};
dontUnpack = true;
@@ -58,6 +58,7 @@ stdenv.mkDerivation (finalAttrs: {
done
'';
# TODO: Add a custom update script
meta = {
description = "Decentralized and secure messenger";
mainProgram = "briar-desktop";
+3 -3
View File
@@ -12,16 +12,16 @@
rustPlatform.buildRustPackage rec {
pname = "brush";
version = "0.2.21";
version = "0.2.23";
src = fetchFromGitHub {
owner = "reubeno";
repo = "brush";
tag = "brush-shell-v${version}";
hash = "sha256-CAQkbesP0wqyt7yA53BQlW/tkCoCPKEBoDLTVJBnR6o=";
hash = "sha256-b3foza29ty4P09PaBFh1nmGyn1YsxNPiVQHUcwWo6Lg=";
};
cargoHash = "sha256-x/OyO96XKABf1hqSg0GMzWw6aeLOu7z2yu9rQQSM4Lc=";
cargoHash = "sha256-+HUZNOPPyRn2tQel/8fIiRQo761G3ygfRPuvjHkRAV8=";
nativeInstallCheckInputs = [
versionCheckHook
+3 -3
View File
@@ -8,16 +8,16 @@
rustPlatform.buildRustPackage rec {
pname = "cargo-about";
version = "0.7.1";
version = "0.8.0";
src = fetchFromGitHub {
owner = "EmbarkStudios";
repo = "cargo-about";
rev = version;
sha256 = "sha256-h5+Fp6+yGa1quJENsCv6WE4NC2A+ceIGMXVWyeTPPLQ=";
sha256 = "sha256-EHqivIsS3wWvm3kJylynyobAsN2OlogXwLv9WdvzvJg=";
};
cargoHash = "sha256-JTcRYdBZdXxM7r+XZSbFaAeWrJ5HULM1YE3p3smRW/Q=";
cargoHash = "sha256-J3kSBu81jQ/u6uLOT3pKFl4tfE6qOABWhpEea1O0BZI=";
nativeBuildInputs = [ pkg-config ];
+3 -3
View File
@@ -7,16 +7,16 @@
rustPlatform.buildRustPackage rec {
pname = "cargo-nextest";
version = "0.9.102";
version = "0.9.103";
src = fetchFromGitHub {
owner = "nextest-rs";
repo = "nextest";
rev = "cargo-nextest-${version}";
hash = "sha256-NaWEJEmE8LW1qankVu2Z8eU2yj4/P4DKDLrCEDXPfOc=";
hash = "sha256-n7VVfk6bvO97tY7woEYUAuxEay/fN6F0eWBDohqIBD0=";
};
cargoHash = "sha256-plZYGm/Sh+pKx1srRPXpZPTZ4k9k/rWZreJqJKFmiG4=";
cargoHash = "sha256-Nfm2KdyIgJ2rxYKn6r4lZbNkEWNQ+UAdkMiZAJfbzo8=";
cargoBuildFlags = [
"-p"
+4 -4
View File
@@ -6,13 +6,13 @@
"packages": {
"": {
"dependencies": {
"@anthropic-ai/claude-code": "^1.0.105"
"@anthropic-ai/claude-code": "^1.0.107"
}
},
"node_modules/@anthropic-ai/claude-code": {
"version": "1.0.105",
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-code/-/claude-code-1.0.105.tgz",
"integrity": "sha512-tYyWmdCmbbE7hbr1v4FZq6zwU5joJATijcjsVFh77HnUHp1L7svraIhRr0o+cI0PNyQR3eCt9KGxgCh3aFM4sg==",
"version": "1.0.107",
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-code/-/claude-code-1.0.107.tgz",
"integrity": "sha512-YYbOLIZF6aIwUeLa9Yg2gsHggBC5IWJwsA3B0wpl1z412yIgjp2CjWJ2GGLMTxCrrL5WgUe4SDmNxiAYEPP0yQ==",
"license": "SEE LICENSE IN README.md",
"bin": {
"claude": "cli.js"
+3 -3
View File
@@ -7,16 +7,16 @@
buildNpmPackage rec {
pname = "claude-code";
version = "1.0.105";
version = "1.0.107";
nodejs = nodejs_20; # required for sandboxed Nix builds on Darwin
src = fetchzip {
url = "https://registry.npmjs.org/@anthropic-ai/claude-code/-/claude-code-${version}.tgz";
hash = "sha256-9beqR/jIBazW6y9yw1cgJOESrrSmbKdRLyH5Vg2Uss8=";
hash = "sha256-ht8MReur4K/QrEY9/MH6srQL3/8LHk8pCuSDld+LlEg=";
};
npmDepsHash = "sha256-I+B9mTj/+jfH4tAgxcSQ2zy920brobKnLubfDZ2GCIE=";
npmDepsHash = "sha256-xbxMjwVvkUmjiaklcYsrWLcb2c9qxiYWcT5eM8LN/h8=";
postPatch = ''
cp ${./package-lock.json} package-lock.json
+7
View File
@@ -10,6 +10,7 @@
stdenv,
llvmPackages_19,
fetchFromGitHub,
fetchpatch,
cmake,
ninja,
python3,
@@ -89,6 +90,12 @@ llvmPackages_19.stdenv.mkDerivation (finalAttrs: {
dontCargoSetupPostUnpack = true;
# Should not be necessary after 25.9
patches = lib.optional (lib.versions.majorMinor version == "25.8") (fetchpatch {
url = "https://github.com/ClickHouse/ClickHouse/commit/67a42b78cdf1c793e78c1adbcc34162f67044032.patch";
sha256 = "7VF+JSztqTWD+aunCS3UVNxlRdwHc2W5fNqzDyeo3Fc=";
});
postPatch = ''
patchShebangs src/ utils/
+2 -2
View File
@@ -1,6 +1,6 @@
import ./generic.nix {
version = "25.3.6.56-lts";
hash = "sha256-wpC6uw811IWImLWAatYbghp3aZ+esEEBFng6AHIesK4=";
version = "25.8.2.29-lts";
hash = "sha256-S+1fZuYlZUMkiBlMtufMT5aAi9uwbFMjYW7Dmkt/Now=";
lts = true;
nixUpdateExtraArgs = [
"--version-regex"
+3 -3
View File
@@ -1,10 +1,10 @@
import ./generic.nix {
version = "25.7.5.34-stable";
hash = "sha256-0+e2QPsn6EZ28j3HE2TYOpJBN9jSl19Ytbvj+124viw=";
version = "25.8.2.29-lts";
hash = "sha256-S+1fZuYlZUMkiBlMtufMT5aAi9uwbFMjYW7Dmkt/Now=";
lts = false;
nixUpdateExtraArgs = [
"--version-regex"
"^v?(.*-stable)$"
"^v?(.*-stable|.*-lts)$"
"--override-filename"
"pkgs/by-name/cl/clickhouse/package.nix"
];
+3 -3
View File
@@ -12,18 +12,18 @@
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "codex";
version = "0.27.0";
version = "0.29.0";
src = fetchFromGitHub {
owner = "openai";
repo = "codex";
tag = "rust-v${finalAttrs.version}";
hash = "sha256-vsZmHkph2rrb0K+ZRymweRculh+SIASCJCRP3V09hKU=";
hash = "sha256-YCQfycmDPRxMAqo57tt/6IXkUn1JIPTzEHMNbt7m3w0=";
};
sourceRoot = "${finalAttrs.src.name}/codex-rs";
cargoHash = "sha256-NK1TOY5Puo881bhgF3w470k2N4LoC6/qTI93uhg7Alw=";
cargoHash = "sha256-kGjpqkV0OJW8mOW/OhyfXoTgLHHrtHQcw9c8zyVtzgs=";
nativeBuildInputs = [
installShellFiles
+2
View File
@@ -1,2 +1,4 @@
source 'https://rubygems.org'
gem 'danger-gitlab'
gem "faraday-retry", "~> 2.3"
+49 -19
View File
@@ -1,48 +1,69 @@
GEM
remote: https://rubygems.org/
specs:
activesupport (8.0.2.1)
base64
benchmark (>= 0.3)
bigdecimal
concurrent-ruby (~> 1.0, >= 1.3.1)
connection_pool (>= 2.2.5)
drb
i18n (>= 1.6, < 2)
logger (>= 1.4.2)
minitest (>= 5.1)
securerandom (>= 0.3)
tzinfo (~> 2.0, >= 2.0.5)
uri (>= 0.13.1)
addressable (2.8.7)
public_suffix (>= 2.0.2, < 7.0)
base64 (0.2.0)
bigdecimal (3.1.9)
benchmark (0.4.1)
bigdecimal (3.2.2)
claide (1.1.0)
claide-plugins (0.9.2)
cork
nap
open4 (~> 1.3)
colored2 (3.1.2)
concurrent-ruby (1.3.5)
connection_pool (2.5.3)
cork (0.3.0)
colored2 (~> 3.1)
csv (3.3.4)
danger (9.5.1)
csv (3.3.5)
danger (9.5.3)
base64 (~> 0.2)
claide (~> 1.0)
claide-plugins (>= 0.9.2)
colored2 (~> 3.1)
colored2 (>= 3.1, < 5)
cork (~> 0.1)
faraday (>= 0.9.0, < 3.0)
faraday-http-cache (~> 2.0)
git (~> 1.13)
kramdown (~> 2.3)
git (>= 1.13, < 3.0)
kramdown (>= 2.5.1, < 3.0)
kramdown-parser-gfm (~> 1.0)
octokit (>= 4.0)
pstore (~> 0.1)
terminal-table (>= 1, < 4)
danger-gitlab (9.0.0)
terminal-table (>= 1, < 5)
danger-gitlab (10.0.0)
danger
gitlab (~> 5.0)
faraday (2.13.1)
gitlab (~> 6.0)
drb (2.2.3)
faraday (2.13.4)
faraday-net_http (>= 2.0, < 3.5)
json
logger
faraday-http-cache (2.5.1)
faraday (>= 0.8)
faraday-net_http (3.4.0)
faraday-net_http (3.4.1)
net-http (>= 0.5.0)
git (1.19.1)
faraday-retry (2.3.2)
faraday (~> 2.0)
git (2.3.3)
activesupport (>= 5.0)
addressable (~> 2.8)
process_executer (~> 1.1)
rchardet (~> 1.8)
gitlab (5.1.0)
gitlab (6.0.0)
base64 (~> 0.2.0)
httparty (~> 0.20)
terminal-table (>= 1.5.1)
@@ -50,13 +71,16 @@ GEM
csv
mini_mime (>= 1.0.0)
multi_xml (>= 0.5.2)
json (2.12.0)
i18n (1.14.7)
concurrent-ruby (~> 1.0)
json (2.13.2)
kramdown (2.5.1)
rexml (>= 3.3.9)
kramdown-parser-gfm (1.1.0)
kramdown (~> 2.0)
logger (1.7.0)
mini_mime (1.1.5)
minitest (5.25.5)
multi_xml (0.7.2)
bigdecimal (~> 3.1)
nap (1.1.0)
@@ -66,6 +90,7 @@ GEM
faraday (>= 1, < 3)
sawyer (~> 0.9)
open4 (1.3.4)
process_executer (1.3.0)
pstore (0.2.0)
public_suffix (6.0.2)
rchardet (1.9.0)
@@ -73,17 +98,22 @@ GEM
sawyer (0.9.2)
addressable (>= 2.3.5)
faraday (>= 0.17.3, < 3)
terminal-table (3.0.2)
unicode-display_width (>= 1.1.1, < 3)
unicode-display_width (2.6.0)
securerandom (0.4.1)
terminal-table (4.0.0)
unicode-display_width (>= 1.1.1, < 4)
tzinfo (2.0.6)
concurrent-ruby (~> 1.0)
unicode-display_width (3.1.5)
unicode-emoji (~> 4.0, >= 4.0.4)
unicode-emoji (4.0.4)
uri (1.0.3)
PLATFORMS
ruby
x86_64-linux
DEPENDENCIES
danger-gitlab
faraday-retry (~> 2.3)
BUNDLED WITH
2.5.22
2.6.9
+163 -23
View File
@@ -1,4 +1,28 @@
{
activesupport = {
dependencies = [
"base64"
"benchmark"
"bigdecimal"
"concurrent-ruby"
"connection_pool"
"drb"
"i18n"
"logger"
"minitest"
"securerandom"
"tzinfo"
"uri"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1ik1sm5sizrsnr3di0klh7rvsy9r9mmd805fv5srk66as5psf184";
type = "gem";
};
version = "8.0.2.1";
};
addressable = {
dependencies = [ "public_suffix" ];
groups = [ "default" ];
@@ -20,15 +44,25 @@
};
version = "0.2.0";
};
benchmark = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1kicilpma5l0lwayqjb5577bm0hbjndj2gh150xz09xsgc1l1vyl";
type = "gem";
};
version = "0.4.1";
};
bigdecimal = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1k6qzammv9r6b2cw3siasaik18i6wjc5m0gw5nfdc6jj64h79z1g";
sha256 = "1p2szbr4jdvmwaaj2kxlbv1rp0m6ycbgfyp0kjkkkswmniv5y21r";
type = "gem";
};
version = "3.1.9";
version = "3.2.2";
};
claide = {
groups = [ "default" ];
@@ -65,6 +99,26 @@
};
version = "3.1.2";
};
concurrent-ruby = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1ipbrgvf0pp6zxdk5ascp6i29aybz2bx9wdrlchjmpx6mhvkwfw1";
type = "gem";
};
version = "1.3.5";
};
connection_pool = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0nrhsk7b3sjqbyl1cah6ibf1kvi3v93a7wf4637d355hp614mmyg";
type = "gem";
};
version = "2.5.3";
};
cork = {
dependencies = [ "colored2" ];
groups = [ "default" ];
@@ -81,10 +135,10 @@
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1kfqg0m6vqs6c67296f10cr07im5mffj90k2b5dsm51liidcsvp9";
sha256 = "0gz7r2kazwwwyrwi95hbnhy54kwkfac5swh2gy5p5vw36fn38lbf";
type = "gem";
};
version = "3.3.4";
version = "3.3.5";
};
danger = {
dependencies = [
@@ -106,10 +160,10 @@
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0s6liclz7vn2q1vzraq7gq6n2rfj4p3hn2gixgnx2qvggg2qsai1";
sha256 = "0dma7aj2pcpndbpvl259n8hssik3kqjdvnsmdgq521njxg6k7p6i";
type = "gem";
};
version = "9.5.1";
version = "9.5.3";
};
danger-gitlab = {
dependencies = [
@@ -120,10 +174,20 @@
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0bmsyv03n2ravjc0mzq73iairgc1apzc388jalg2c3rag1psgr47";
sha256 = "033w7rrm6sdp3f5fha4x6ycd657gliq61p4sb2zxqkk3imvpxvm1";
type = "gem";
};
version = "9.0.0";
version = "10.0.0";
};
drb = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0wrkl7yiix268s2md1h6wh91311w95ikd8fy8m5gx589npyxc00b";
type = "gem";
};
version = "2.2.3";
};
faraday = {
dependencies = [
@@ -135,10 +199,10 @@
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0xbv450qj2bx0qz9l2pjrd3kc057y6bglc3na7a78zby8ssiwlyc";
sha256 = "09mcghancmn0s5cwk2xz581j3xm3xqxfv0yxg75axnyhrx9gy6f7";
type = "gem";
};
version = "2.13.1";
version = "2.13.4";
};
faraday-http-cache = {
dependencies = [ "faraday" ];
@@ -157,24 +221,37 @@
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0jp5ci6g40d6i50bsywp35l97nc2fpi9a592r2cibwicdb6y9wd1";
sha256 = "0fxbckg468dabkkznv48ss8zv14d9cd8mh1rr3m98aw7wzx5fmq9";
type = "gem";
};
version = "3.4.0";
version = "3.4.1";
};
faraday-retry = {
dependencies = [ "faraday" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1laici6jximrz3a8rkm8qmwdmw3fgzk22qh4l8wd5srjj01d40i4";
type = "gem";
};
version = "2.3.2";
};
git = {
dependencies = [
"activesupport"
"addressable"
"process_executer"
"rchardet"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0w3xhay1z7qx9ab04wmy5p4f1fadvqa6239kib256wsiyvcj595h";
sha256 = "1rbhfyzvzgzn6zsjnmxls0q1g7g7k9p5adk8vmf2d1aij1gly59f";
type = "gem";
};
version = "1.19.1";
version = "2.3.3";
};
gitlab = {
dependencies = [
@@ -186,10 +263,10 @@
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1ivj6pq3s3lz8z0islynvdb3fv82ghr5k97drz07kwwqga02f702";
sha256 = "0fm90lis0ikw2m77q33bxjg1bhsn8cdj06z9z4qv6kxqfmkhk3my";
type = "gem";
};
version = "5.1.0";
version = "6.0.0";
};
httparty = {
dependencies = [
@@ -206,15 +283,26 @@
};
version = "0.23.1";
};
i18n = {
dependencies = [ "concurrent-ruby" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "03sx3ahz1v5kbqjwxj48msw3maplpp2iyzs22l4jrzrqh4zmgfnf";
type = "gem";
};
version = "1.14.7";
};
json = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0l0av82l1i5703fd5qnxr263zw21xmbpx737av3r9pjn0w0cw3xk";
sha256 = "0s5vklcy2fgdxa9c6da34jbfrqq7xs6mryjglqqb5iilshcg3q82";
type = "gem";
};
version = "2.12.0";
version = "2.13.2";
};
kramdown = {
dependencies = [ "rexml" ];
@@ -258,6 +346,16 @@
};
version = "1.1.5";
};
minitest = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0mn7q9yzrwinvfvkyjiz548a4rmcwbmz2fn9nyzh4j1snin6q6rr";
type = "gem";
};
version = "5.25.5";
};
multi_xml = {
dependencies = [ "bigdecimal" ];
groups = [ "default" ];
@@ -314,6 +412,16 @@
};
version = "1.3.4";
};
process_executer = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0vslspnp4aki1cw4lwk9d5bmjfqwbf5i2wwgimch8cp14wns409v";
type = "gem";
};
version = "1.3.0";
};
pstore = {
groups = [ "default" ];
platforms = [ ];
@@ -368,26 +476,58 @@
};
version = "0.9.2";
};
securerandom = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1cd0iriqfsf1z91qg271sm88xjnfd92b832z49p1nd542ka96lfc";
type = "gem";
};
version = "0.4.1";
};
terminal-table = {
dependencies = [ "unicode-display_width" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "14dfmfjppmng5hwj7c5ka6qdapawm3h6k9lhn8zj001ybypvclgr";
sha256 = "1lh18gwpksk25sbcjgh94vmfw2rz0lrq61n7lwp1n9gq0cr7j17m";
type = "gem";
};
version = "3.0.2";
version = "4.0.0";
};
unicode-display_width = {
tzinfo = {
dependencies = [ "concurrent-ruby" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0nkz7fadlrdbkf37m0x7sw8bnz8r355q3vwcfb9f9md6pds9h9qj";
sha256 = "16w2g84dzaf3z13gxyzlzbf748kylk5bdgg3n1ipvkvvqy685bwd";
type = "gem";
};
version = "2.6.0";
version = "2.0.6";
};
unicode-display_width = {
dependencies = [ "unicode-emoji" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0knx0bgwwpwa7wcmknqp2i019jq6b46wxfppvhxfxrsyhlbnhmmz";
type = "gem";
};
version = "3.1.5";
};
unicode-emoji = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0ajk6rngypm3chvl6r0vwv36q1931fjqaqhjjya81rakygvlwb1c";
type = "gem";
};
version = "4.0.4";
};
uri = {
groups = [ "default" ];
+10 -4
View File
@@ -1,15 +1,21 @@
{ lib, bundlerApp }:
{
lib,
bundlerApp,
bundlerUpdateScript,
}:
bundlerApp {
pname = "danger-gitlab";
gemdir = ./.;
exes = [ "danger" ];
meta = with lib; {
passthru.updateScript = bundlerUpdateScript "danger-gitlab";
meta = {
description = "Gem that exists to ensure all dependencies are set up for Danger with GitLab";
homepage = "https://github.com/danger/danger-gitlab-gem";
license = licenses.mit;
teams = [ teams.serokell ];
license = lib.licenses.mit;
teams = with lib.teams; [ serokell ];
mainProgram = "danger";
};
}
+6034 -374
View File
File diff suppressed because it is too large Load Diff
+3 -3
View File
@@ -7,13 +7,13 @@
}:
buildNpmPackage rec {
pname = "eslint";
version = "9.33.0";
version = "9.34.0";
src = fetchFromGitHub {
owner = "eslint";
repo = "eslint";
tag = "v${version}";
hash = "sha256-yMB1LuLKDiFi/ufIcYAsgVQGFoUIKVezxoEBUCC99/0=";
hash = "sha256-C56uNYpXLO0LgURW+7iXWTWqmXQHc1nx1bKf7DFSHs4=";
};
# NOTE: Generating lock-file
@@ -25,7 +25,7 @@ buildNpmPackage rec {
cp ${./package-lock.json} package-lock.json
'';
npmDepsHash = "sha256-CCiAn0abYLIHBGQZKwqfnK5OA0S+SK4ick3QRCCa3gc=";
npmDepsHash = "sha256-ZF7+IJakVkwswL0FV5wAc0dOK+gd9I6A7DaZbMiMaDU=";
npmInstallFlags = [ "--omit=dev" ];
dontNpmBuild = true;
+3 -3
View File
@@ -6,16 +6,16 @@
buildGoModule rec {
pname = "gat";
version = "0.25.1";
version = "0.25.2";
src = fetchFromGitHub {
owner = "koki-develop";
repo = "gat";
tag = "v${version}";
hash = "sha256-DgIAAlA7rhMvTovmIZOsJ7KoXizGZXT2GRkTnxOh7L0=";
hash = "sha256-pfR7sjN1LrZ9+x3uqMyOAWMRQSSzlUa/q918yFaY17M=";
};
vendorHash = "sha256-Aq+wcBeYpKWwXgGUZbAqT0zm1Bri7Df3rt7ycwy060o=";
vendorHash = "sha256-amF8TQ+BEZN9A0c43pDTKaJ1FcfZ1FzRdfKRlpocPr8=";
env.CGO_ENABLED = 0;
@@ -3,7 +3,7 @@ GEM
specs:
homesick (1.1.6)
thor (>= 0.14.0)
thor (0.20.0)
thor (1.4.0)
PLATFORMS
ruby
@@ -12,4 +12,4 @@ DEPENDENCIES
homesick
BUNDLED WITH
2.1.4
2.6.9
@@ -1,6 +1,8 @@
{
homesick = {
dependencies = [ "thor" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0lxvnp4ncbx0irlblfxbd1f8h4hl11hgmyiy35q79w137r3prxml";
@@ -9,11 +11,13 @@
version = "1.1.6";
};
thor = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0nmqpyj642sk4g16nkbq6pj856adpv91lp4krwhqkh2iw63aszdl";
sha256 = "0gcarlmpfbmqnjvwfz44gdjhcmm634di7plcx2zdgwdhrhifhqw7";
type = "gem";
};
version = "0.20.0";
version = "1.4.0";
};
}
@@ -17,7 +17,7 @@ bundlerEnv {
passthru.updateScript = bundlerUpdateScript "homesick";
meta = with lib; {
meta = {
description = "Your home directory is your castle. Don't leave your dotfiles behind";
longDescription = ''
Homesick is sorta like rip, but for dotfiles. It uses git to clone a repository containing
@@ -25,12 +25,12 @@ bundlerEnv {
place with a single command.
'';
homepage = "https://github.com/technicalpickles/homesick";
license = licenses.mit;
maintainers = with maintainers; [
license = lib.licenses.mit;
maintainers = with lib.maintainers; [
aaronschif
nicknovitski
];
platforms = platforms.unix;
platforms = lib.platforms.unix;
mainProgram = "homesick";
};
}
+35 -27
View File
@@ -7,25 +7,25 @@
}:
let
pname = "immersed";
version = "10.6.0";
version = "10.9.0";
sources = rec {
sources = lib.mapAttrs (_: fetchurl) (rec {
x86_64-linux = {
url = "https://web.archive.org/web/20241229041449/https://static.immersed.com/dl/Immersed-x86_64.AppImage";
hash = "sha256-u07QpGXEXbp7ApZgerq36x+4Wxsz08YAruIVnZeS0ck=";
url = "https://web.archive.org/web/20250725134919if_/https://static.immersed.com/dl/Immersed-x86_64.AppImage";
hash = "sha256-plGcvZRpV+nhQ4FoYiIuLmyOg/SHJ8ZjT4Fh6UyH9W0=";
};
aarch64-linux = {
url = "https://web.archive.org/web/20241229041902/https://static.immersed.com/dl/Immersed-aarch64.AppImage";
url = "https://web.archive.org/web/20250725135029if_/https://static.immersed.com/dl/Immersed-aarch64.AppImage";
hash = "sha256-3BokV30y6QRjE94K7JQ6iIuQw1t+h3BKZY+nEFGTVHI=";
};
x86_64-darwin = {
url = "https://web.archive.org/web/20241229041652/https://static.immersed.com/dl/Immersed.dmg";
hash = "sha256-Sgfm0giVR1dDIFIDpNmGmXLXLRgpMXrVxD/oyPc+Lq0=";
url = "https://web.archive.org/web/20250725135025if_/https://static.immersed.com/dl/Immersed.dmg";
hash = "sha256-lmSkatB75Bztm19aCC50qrd/NV+HQX9nBMOTxIguaqI=";
};
aarch64-darwin = x86_64-darwin;
};
});
src = fetchurl (sources.${stdenv.system} or (throw "Unsupported system: ${stdenv.system}"));
src = sources.${stdenv.system} or (throw "Unsupported system: ${stdenv.system}");
meta = with lib; {
description = "VR coworking platform";
@@ -40,21 +40,29 @@ let
};
in
if stdenv.hostPlatform.isDarwin then
callPackage ./darwin.nix {
inherit
pname
version
src
meta
;
}
else
callPackage ./linux.nix {
inherit
pname
version
src
meta
;
}
(
if stdenv.hostPlatform.isDarwin then
callPackage ./darwin.nix {
inherit
pname
version
src
meta
;
}
else
callPackage ./linux.nix {
inherit
pname
version
src
meta
;
}
)
// {
passthru = {
inherit sources;
};
}
@@ -0,0 +1,48 @@
{
lib,
llvmPackages,
fetchFromGitHub,
cmake,
ninja,
help2man,
irods,
}:
llvmPackages.stdenv.mkDerivation (finalAttrs: {
pname = "irods-icommands";
inherit (irods) version;
src = fetchFromGitHub {
owner = "irods";
repo = "irods_client_icommands";
tag = finalAttrs.version;
hash = "sha256-lo1eCI/CSzl7BJWdPo7KKVHfznkPN6GwsiQThUGuQdw=";
};
nativeBuildInputs = [
cmake
ninja
help2man
];
buildInputs = [ irods ];
cmakeFlags = irods.commonCmakeFlags ++ [
(lib.cmakeFeature "ICOMMANDS_INSTALL_DIRECTORY" "${placeholder "out"}/bin")
(lib.cmakeBool "ICOMMANDS_INSTALL_SYMLINKS" false)
];
meta = {
inherit (irods.meta)
homepage
license
maintainers
platforms
;
description = irods.meta.description + " CLI clients";
longDescription = irods.meta.longDescription + ''
This package provides the CLI clients, called 'icommands'.
'';
};
})
+115
View File
@@ -0,0 +1,115 @@
{
lib,
llvmPackages,
fetchFromGitHub,
cmake,
ninja,
bison,
flex,
libarchive,
pam,
unixODBC,
jsoncons,
curl,
systemdLibs,
openssl,
boost183,
nlohmann_json,
nanodbc,
fmt_9,
spdlog,
}:
llvmPackages.stdenv.mkDerivation (finalAttrs: {
pname = "irods";
version = "5.0.1";
src = fetchFromGitHub {
owner = "irods";
repo = "irods";
tag = finalAttrs.version;
hash = "sha256-/mcuqukgDoMc89FL/TfOhHWglsfdLmQbAnQYT8vTFsY=";
};
nativeBuildInputs = [
cmake
ninja
bison
flex
];
buildInputs = [
libarchive
pam
unixODBC
jsoncons
curl
systemdLibs
];
propagatedBuildInputs = [
openssl
# Can potentially be unpinned after:
# <https://github.com/irods/irods/issues/7248>
boost183
nlohmann_json
nanodbc
# Tracking issue for `fmt_11`:
# <https://github.com/irods/irods/issues/8454>
fmt_9
(spdlog.override {
fmt = fmt_9;
})
];
cmakeFlags = finalAttrs.passthru.commonCmakeFlags ++ [
# Tracking issues for moving these to `find_package`:
# * <https://github.com/irods/irods/issues/6249>
# * <https://github.com/irods/irods/issues/6253>
(lib.cmakeFeature "IRODS_EXTERNALS_FULLPATH_BOOST" "${boost183}")
(lib.cmakeFeature "IRODS_EXTERNALS_FULLPATH_NANODBC" "${nanodbc}")
(lib.cmakeFeature "IRODS_EXTERNALS_FULLPATH_JSONCONS" "${jsoncons}")
];
postPatch = ''
patchShebangs ./test
substituteInPlace plugins/database/CMakeLists.txt --replace-fail \
'COMMAND cpp -E -P -D''${plugin} "''${CMAKE_CURRENT_BINARY_DIR}/src/icatSysTables.sql.pp" ' \
'COMMAND cpp -E -P -D''${plugin} "''${CMAKE_CURRENT_BINARY_DIR}/src/icatSysTables.sql.pp" -o '
substituteInPlace server/auth/CMakeLists.txt --replace-fail SETUID ""
'';
passthru = {
commonCmakeFlags = [
# We already use Clang in the `stdenv`.
(lib.cmakeBool "IRODS_BUILD_WITH_CLANG" false)
# Upstream builds with LLVM 16 and doesnt handle newer warnings.
(lib.cmakeBool "IRODS_BUILD_WITH_WERROR" false)
(lib.cmakeFeature "IRODS_HOME_DIRECTORY" "${placeholder "out"}")
(lib.cmakeFeature "IRODS_LINUX_DISTRIBUTION_NAME" "NixOS")
(lib.cmakeFeature "IRODS_LINUX_DISTRIBUTION_VERSION" lib.trivial.release)
(lib.cmakeFeature "IRODS_LINUX_DISTRIBUTION_VERSION_MAJOR" lib.trivial.release)
(lib.cmakeFeature "CPACK_GENERATOR" "TGZ")
];
};
meta = {
description = "Integrated Rule-Oriented Data System (iRODS)";
longDescription = ''
The Integrated Rule-Oriented Data System (iRODS) is open source data management
software used by research organizations and government agencies worldwide.
iRODS is released as a production-level distribution aimed at deployment in mission
critical environments. It virtualizes data storage resources, so users can take
control of their data, regardless of where and on what device the data is stored.
As data volumes grow and data services become more complex, iRODS is increasingly
important in data management. The development infrastructure supports exhaustive
testing on supported platforms; plug-in support for microservices, storage resources,
drivers, and databases; and extensive documentation, training and support services.
'';
homepage = "https://irods.org";
license = lib.licenses.bsd3;
maintainers = [ lib.maintainers.bzizou ];
platforms = lib.platforms.linux;
mainProgram = "irodsServer";
};
})
+67
View File
@@ -0,0 +1,67 @@
{
stdenv,
lib,
fetchFromGitHub,
fetchpatch2,
makeBinaryWrapper,
jre_headless,
maven,
pcsclite,
yubico-piv-tool,
opensc,
}:
let
jre = jre_headless;
in
maven.buildMavenPackage rec {
pname = "jsign";
# For build from non-release, increment version by one and add -SNAPSHOT
# e.g. 7.3-SNAPSHOT
version = "7.2";
src = fetchFromGitHub {
owner = "ebourg";
repo = "jsign";
tag = version;
hash = "sha256-ngAwtd4C3KeLq9sM15B8tWS34AH81azYEjXg3+Gy5NA=";
};
mvnHash = "sha256-N91gwM3vsDZQM/BptF5RgRQ/A8g56NOJ6bc2SkxLnBs=";
nativeBuildInputs = [ makeBinaryWrapper ];
# The tests try to access the network
doCheck = false;
installPhase = ''
runHook preInstall
mkdir -p $out/bin $out/share
install -Dm644 jsign/target/jsign-${version}.jar $out/share/jsign.jar
makeWrapper ${jre}/bin/java $out/bin/jsign \
--prefix LD_LIBRARY_PATH : ${
lib.makeLibraryPath [
yubico-piv-tool
opensc
]
} \
--add-flags "-Dsun.security.smartcardio.library=${lib.getLib pcsclite}/lib/libpcsclite.so.1 -jar $out/share/jsign.jar"
runHook postInstall
'';
meta = {
description = "Authenticode signing for Windows executables, installers & scripts";
homepage = "https://ebourg.github.io/jsign";
license = lib.licenses.asl20;
platforms = lib.platforms.all;
maintainers = with lib.maintainers; [
johnazoidberg
];
mainProgram = "jsign";
# Build doesn't work, upstream says running the .jar is supported on darwin though
broken = stdenv.hostPlatform.isDarwin;
};
}
+5
View File
@@ -87,6 +87,11 @@ stdenv.mkDerivation {
cp -r doc/html "$out/share/doc/libftdi1/"
'';
preFixup = ''
substituteInPlace $out/lib/pkgconfig/libftdi1.pc --replace-fail "libdir=$out/$out/lib" "libdir=$out/lib"
substituteInPlace $out/lib/pkgconfig/libftdipp1.pc --replace-fail "libdir=$out/$out/lib" "libdir=$out/lib"
'';
meta = with lib; {
description = "Library to talk to FTDI chips using libusb";
homepage = "https://www.intra2net.com/en/developer/libftdi/";
+5 -3
View File
@@ -10,6 +10,7 @@
makeWrapper,
nix,
openssl,
perl,
pkg-config,
rustPlatform,
versionCheckHook,
@@ -17,18 +18,18 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "lux-cli";
version = "0.15.1";
version = "0.17.0";
src = fetchFromGitHub {
owner = "nvim-neorocks";
repo = "lux";
tag = "v${finalAttrs.version}";
hash = "sha256-1u0zDGUytuMhqe7NOJeXd1DKch8P7FT02MYgMkX3eMc=";
hash = "sha256-jVKCjAYeWjy2jDOHEb6vu4ZNTXrSETgUt6NIE++trPE=";
};
buildAndTestSubdir = "lux-cli";
cargoHash = "sha256-C84VZfpMua1RrFhTFhWfY2xZAPDtNllkAbdHljlYdZs=";
cargoHash = "sha256-Kv8wYxPGainwayru9pWBplg2PNcC86ZTAmDp9M4G1bQ=";
nativeInstallCheckInputs = [
versionCheckHook
@@ -40,6 +41,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
nativeBuildInputs = [
installShellFiles
makeWrapper
perl
pkg-config
];
@@ -1,13 +1,13 @@
GEM
remote: https://rubygems.org/
specs:
base64 (0.2.0)
base64 (0.3.0)
daemons (1.4.1)
date (3.4.1)
eventmachine (1.2.7)
faye-websocket (0.11.3)
faye-websocket (0.11.4)
eventmachine (>= 0.12.0)
websocket-driver (>= 0.5.1)
websocket-driver (>= 0.5.1, < 0.8.0)
mail (2.8.1)
mini_mime (>= 0.1.1)
net-imap
@@ -23,10 +23,10 @@ GEM
sqlite3 (~> 1.3)
thin (~> 1.8)
mini_mime (1.1.5)
mini_portile2 (2.8.8)
mustermann (3.0.3)
mini_portile2 (2.8.9)
mustermann (3.0.4)
ruby2_keywords (~> 0.0.1)
net-imap (0.5.6)
net-imap (0.5.9)
date
net-protocol
net-pop (0.1.2)
@@ -35,7 +35,7 @@ GEM
timeout
net-smtp (0.5.1)
net-protocol
rack (2.2.13)
rack (2.2.17)
rack-protection (3.2.0)
base64 (>= 0.1.0)
rack (~> 2.2, >= 2.2.4)
@@ -51,7 +51,7 @@ GEM
daemons (~> 1.0, >= 1.0.9)
eventmachine (~> 1.0, >= 1.0.4)
rack (>= 1, < 3)
tilt (2.6.0)
tilt (2.6.1)
timeout (0.4.3)
websocket-driver (0.7.7)
base64
@@ -65,4 +65,4 @@ DEPENDENCIES
mailcatcher
BUNDLED WITH
2.6.2
2.6.9
@@ -4,10 +4,10 @@
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "01qml0yilb9basf7is2614skjp8384h2pycfx86cr8023arfj98g";
sha256 = "0yx9yn47a8lkfcjmigk79fykxvr80r4m1i35q82sxzynpbm7lcr7";
type = "gem";
};
version = "0.2.0";
version = "0.3.0";
};
daemons = {
groups = [ "default" ];
@@ -48,10 +48,10 @@
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "01xkpv5b4fjc5n6n1fq6z1ris991av2fbadvs8r71i9r34b8g48h";
sha256 = "1p4xwf5lqrfbc9xbyf20hlyckm1issl5gscdnpglss3x4rwqj0dq";
type = "gem";
};
version = "0.11.3";
version = "0.11.4";
};
mail = {
dependencies = [
@@ -104,10 +104,10 @@
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0x8asxl83msn815lwmb2d7q5p29p7drhjv5va0byhk60v9n16iwf";
sha256 = "12f2830x7pq3kj0v8nz0zjvaw02sv01bqs1zwdrc04704kwcgmqc";
type = "gem";
};
version = "2.8.8";
version = "2.8.9";
};
mustermann = {
dependencies = [ "ruby2_keywords" ];
@@ -115,10 +115,10 @@
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "123ycmq6pkivv29bqbv79jv2cs04xakzd0fz1lalgvfs5nxfky6i";
sha256 = "08ma2fmxlm6i7lih4mc3har2fzsbj1pl4hhva65kljf6nfvdryl5";
type = "gem";
};
version = "3.0.3";
version = "3.0.4";
};
net-imap = {
dependencies = [
@@ -129,10 +129,10 @@
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1rgva7p9gvns2ndnqpw503mbd36i2skkggv0c0h192k8xr481phy";
sha256 = "1z1kpshd0r09jv0091bcr4gfx3i1psbqdzy7zyag5n8v3qr0anfr";
type = "gem";
};
version = "0.5.6";
version = "0.5.9";
};
net-pop = {
dependencies = [ "net-protocol" ];
@@ -172,10 +172,10 @@
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1yzhcwvfkrlb8l79w24yjclv636jn6rnznp95shmssk934bi1vnc";
sha256 = "1pcr8sn02lwzv3z6vx5n41b6ybcnw9g9h05s3lkv4vqdm0f2mq2z";
type = "gem";
};
version = "2.2.13";
version = "2.2.17";
};
rack-protection = {
dependencies = [
@@ -248,10 +248,10 @@
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0szpapi229v3scrvw1pgy0vpjm7z3qlf58m1198kxn70cs278g96";
sha256 = "0w27v04d7rnxjr3f65w1m7xyvr6ch6szjj2v5wv1wz6z5ax9pa9m";
type = "gem";
};
version = "2.6.0";
version = "2.6.1";
};
timeout = {
groups = [ "default" ];
@@ -1,5 +1,5 @@
{
ruby_3_2,
ruby,
lib,
bundlerApp,
bundlerUpdateScript,
@@ -13,19 +13,18 @@ bundlerApp {
"mailcatcher"
"catchmail"
];
ruby = ruby_3_2;
passthru.updateScript = bundlerUpdateScript "mailcatcher";
passthru.tests = { inherit (nixosTests) mailcatcher; };
meta = with lib; {
meta = {
description = "SMTP server and web interface to locally test outbound emails";
homepage = "https://mailcatcher.me/";
license = licenses.mit;
maintainers = with maintainers; [
license = lib.licenses.mit;
maintainers = with lib.maintainers; [
zarelit
nicknovitski
];
platforms = platforms.unix;
platforms = lib.platforms.unix;
};
}
+20 -12
View File
@@ -1,23 +1,31 @@
{
lib,
stdenv,
fetchurl,
nix-update-script,
}:
let
stdenv.mkDerivation (finalAttrs: {
pname = "netboot.xyz-efi";
version = "2.0.82";
in
fetchurl {
name = "${pname}-${version}";
version = "2.0.87";
url = "https://github.com/netbootxyz/netboot.xyz/releases/download/${version}/netboot.xyz.efi";
sha256 = "sha256-cO8MCkroQ0s/j8wnwwIWfnxEvChLeOZw+gD4wrYBAog=";
src = fetchurl {
url = "https://github.com/netbootxyz/netboot.xyz/releases/download/${finalAttrs.version}/netboot.xyz.efi";
hash = "sha256-8kd17ChqLuVH5/OdPc2rVDKEDWHl9ZWLh8k+EBrCGH8=";
};
meta = with lib; {
dontUnpack = true;
postInstall = ''
cp $src $out
'';
passthru.updateScript = nix-update-script { };
meta = {
homepage = "https://netboot.xyz/";
description = "Tool to boot OS installers and utilities over the network, to be run from a bootloader";
license = licenses.asl20;
maintainers = with maintainers; [ pinpox ];
platforms = platforms.linux;
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ pinpox ];
};
}
})
+3 -2
View File
@@ -29,7 +29,7 @@ in
ps.buildPythonApplication rec {
pname = "normcap";
version = "0.5.9";
version = "0.6.0";
format = "pyproject";
disabled = ps.pythonOlder "3.9";
@@ -38,7 +38,7 @@ ps.buildPythonApplication rec {
owner = "dynobo";
repo = "normcap";
tag = "v${version}";
hash = "sha256-K8BkPRHmcJSzYPxv49a1whKpe+StK7m0ea7t2YNUESw=";
hash = "sha256-jkaXwBpa09J6Q07vlnQW8TsUtpiYrPkfMspZI1TyE1g=";
};
pythonRemoveDeps = [
@@ -66,6 +66,7 @@ ps.buildPythonApplication rec {
ps.pyside6
ps.jeepney
ps.toml
ps.zxing-cpp
];
preFixup = ''
+1 -1
View File
@@ -79,7 +79,7 @@ let
mkdir -p $out/bin
makeWrapper ${electron}/bin/electron $out/bin/obsidian \
--add-flags $out/share/obsidian/app.asar \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform=wayland --enable-wayland-ime=true}}" \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform=wayland --enable-wayland-ime=true --wayland-text-input-version=3}}" \
--add-flags ${lib.escapeShellArg commandLineArgs}
install -m 444 -D resources/app.asar $out/share/obsidian/app.asar
install -m 444 -D resources/obsidian.asar $out/share/obsidian/obsidian.asar
+3 -3
View File
@@ -6,16 +6,16 @@
rustPlatform.buildRustPackage rec {
pname = "otree";
version = "0.6.0";
version = "0.6.1";
src = fetchFromGitHub {
owner = "fioncat";
repo = "otree";
tag = "v${version}";
hash = "sha256-Pz9iAN5GMJeYYQ7T0QWUfRwvSfreRF8pJR8ctPVFAmA=";
hash = "sha256-a160Mi0VZesU3PQOKrgiN/5yxx82xHtjcMazH5o0LJs=";
};
cargoHash = "sha256-Uz4oA8maAiUye+FRoVBRuMHoPytr5y8DUfPA4CuMSe4=";
cargoHash = "sha256-ZubL48hXyrBg9K64GsLmRZgdFhDWYbYNH2PhwE9qAQ4=";
meta = {
description = "Command line tool to view objects (JSON/YAML/TOML/XML) in TUI tree widget";
+3 -3
View File
@@ -10,16 +10,16 @@
php.buildComposerProject2 (finalAttrs: {
pname = "phpunit";
version = "12.3.7";
version = "12.3.8";
src = fetchFromGitHub {
owner = "sebastianbergmann";
repo = "phpunit";
tag = finalAttrs.version;
hash = "sha256-v7LXp0TTtGLN0zRZN7GBGlwX7Bb+xNVCN3UYYCt0w1E=";
hash = "sha256-jSa+gE4TZ4ZTBjsMZN9X40R5r49PR5hbqXkMzk+HLEg=";
};
vendorHash = "sha256-9cuMWzWvSZy9Djlkk8pw7cOaqEp5060WMGT4FzNSmb4=";
vendorHash = "sha256-6YnNfJ0tXUHSQyJKo8OY7a90BAhmDnpVe+954WuGoM4=";
passthru = {
updateScript = nix-update-script { };
+3 -3
View File
@@ -14,16 +14,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "rattler-build";
version = "0.45.0";
version = "0.47.1";
src = fetchFromGitHub {
owner = "prefix-dev";
repo = "rattler-build";
tag = "v${finalAttrs.version}";
hash = "sha256-nk4orzkmgKQ6UfRpA9suh7FxiPh4P+F4NagY22if5Iw=";
hash = "sha256-c7g+Y2owuoWqwvhNfsW18ppw8eLG0nAeFIFuoRqvPJY=";
};
cargoHash = "sha256-LvdFKguUMplNbJLh6CTy6enfg1PGqjawku/tBjwf30o=";
cargoHash = "sha256-h4LSFfL+qzkuZ8MToI0MNxSGPCzJUmYgVoGwoYnXboE=";
doCheck = false; # test requires network access
+3 -3
View File
@@ -13,14 +13,14 @@
rustPlatform.buildRustPackage rec {
pname = "ravedude";
version = "0.2.0";
version = "0.2.1";
src = fetchCrate {
inherit pname version;
hash = "sha256-rUYqqswjIPg4p7oWNjXnEKSav+uLjItGVxrRLz4NXd4=";
hash = "sha256-LYHWUVREnGNR/vqtj+VklV3o74KUJu+Yi8ftulCJt9s=";
};
cargoHash = "sha256-FrlG68X9fbEBZlt+qdL3O1S8HAgwXu/Bkplu8UxXy5Y=";
cargoHash = "sha256-rD8rFs3zfWjQXm3mLvY2tpVS6X8wHJka2qs4D3/pa4E=";
nativeBuildInputs = [
pkg-config
+20 -23
View File
@@ -3,28 +3,25 @@
fetchFromGitHub,
buildGoModule,
}:
let
self = buildGoModule {
pname = "reader";
version = "0.5.0";
buildGoModule (finalAttrs: {
pname = "reader";
version = "0.5.0";
src = fetchFromGitHub {
owner = "mrusme";
repo = "reader";
tag = "v${self.version}";
hash = "sha256-qu48ikqm4EmoeL9j67tGkX3EFBd1JdrLWhhmoElCoJY=";
};
vendorHash = "sha256-8IjN7hm5Rg9ItkxE9pbnkVr5t+tG95W9vvXyGaWmEIA=";
meta = {
description = "Lightweight tool offering better readability of web pages on the CLI";
homepage = "https://github.com/mrusme/reader";
changelog = "https://github.com/mrusme/reader/releases";
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ theobori ];
mainProgram = "reader";
};
src = fetchFromGitHub {
owner = "mrusme";
repo = "reader";
tag = "v${finalAttrs.version}";
hash = "sha256-qu48ikqm4EmoeL9j67tGkX3EFBd1JdrLWhhmoElCoJY=";
};
in
self
vendorHash = "sha256-8IjN7hm5Rg9ItkxE9pbnkVr5t+tG95W9vvXyGaWmEIA=";
meta = {
description = "Lightweight tool offering better readability of web pages on the CLI";
homepage = "https://github.com/mrusme/reader";
changelog = "https://github.com/mrusme/reader/releases";
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ theobori ];
mainProgram = "reader";
};
})
+2 -2
View File
@@ -16,13 +16,13 @@
buildGoModule rec {
pname = "runc";
version = "1.3.0";
version = "1.3.1";
src = fetchFromGitHub {
owner = "opencontainers";
repo = "runc";
tag = "v${version}";
hash = "sha256-oXoDio3l23Z6UyAhb9oDMo1O4TLBbFyLh9sRWXnfLVY=";
hash = "sha256-B7x1J2ijM+/RWzPTldBNhvrGa/8de6Unl47lOS/KxXs=";
};
vendorHash = null;
+1
View File
@@ -15,6 +15,7 @@ stdenv.mkDerivation rec {
preConfigure = "rm configure";
preBuild = "sed 's_/bin/__g' -i RULES/*";
makeFlags = [ "GMAKE_NOWARN=true" ];
env.NIX_CFLAGS_COMPILE = "-std=c89";
installFlags = [
"DESTDIR=$(out)"
"INS_BASE=/"
@@ -2,16 +2,17 @@
lib,
stdenvNoCC,
fetchzip,
nix-update-script,
}:
stdenvNoCC.mkDerivation {
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "sitelen-seli-kiwen";
version = "unstable-2022-06-28";
version = "1.8.1";
src = fetchzip {
url = "https://raw.githubusercontent.com/kreativekorp/sitelen-seli-kiwen/69132c99873894746c9710707aaeb2cea2609709/sitelenselikiwen.zip";
url = "https://github.com/kreativekorp/sitelen-seli-kiwen/releases/download/${finalAttrs.version}/sitelenselikiwen.zip";
stripRoot = false;
hash = "sha256-viOLAj9Rn60bcQkkDHVuKHCE8KPnIz/L0hIJhum1SSQ=";
hash = "sha256-FqhUsA+q3ZLfJRMxi47rz3FOWnm1pfXxWnM1c8HQ7NY=";
};
installPhase = ''
@@ -24,6 +25,8 @@ stdenvNoCC.mkDerivation {
runHook postInstall
'';
passthru.updateScript = nix-update-script { };
meta = with lib; {
description = "Handwritten sitelen pona font supporting UCSUR";
homepage = "https://www.kreativekorp.com/software/fonts/sitelenselikiwen/";
@@ -31,4 +34,4 @@ stdenvNoCC.mkDerivation {
platforms = platforms.all;
maintainers = with maintainers; [ somasis ];
};
}
})
+3 -3
View File
@@ -16,16 +16,16 @@
buildNpmPackage rec {
pname = "teams-for-linux";
version = "2.5.1";
version = "2.5.3";
src = fetchFromGitHub {
owner = "IsmaelMartinez";
repo = "teams-for-linux";
tag = "v${version}";
hash = "sha256-yjMhWP/AtjFKhbvSR4RzYD6vedc+OgqPU7bTWrNqtmo=";
hash = "sha256-LMYgWXzzVBaUBJnVacWPZPeNe1EasJjS5A0ouRlLxNo=";
};
npmDepsHash = "sha256-wnr1MO0DN+2rKjmM75V3m1oOVczfDslOtULn/tLbRzM=";
npmDepsHash = "sha256-3OqiXbLeFnOx/tdv+A0fxtUZLYTaNuOAJwtF71cljFw=";
nativeBuildInputs = [
makeWrapper
+1 -1
View File
@@ -36,7 +36,7 @@ stdenv.mkDerivation {
owner = "tome2";
repo = "tome2";
rev = "3892fbcb1c2446afcb0c34f59e2a24f78ae672c4";
hash = "sha256-E6T5ZnsAzZ4cy2S8WvB0k3W4XGFsiA3TKTCSBqje+tw=";
hash = "sha256-OL59zktCJGBHPE8Y89S+OdcnJ/Hj+dGif1DNhePEQXo=";
};
buildInputs = [
+3 -3
View File
@@ -11,16 +11,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "usage";
version = "2.1.1";
version = "2.2.2";
src = fetchFromGitHub {
owner = "jdx";
repo = "usage";
tag = "v${finalAttrs.version}";
hash = "sha256-aMO/3geF1iFnMi0ZqBdnikp/Qh25vqpeaxdTiQtt5yI=";
hash = "sha256-Hnq3ViMrNIo9m/1mePjEzMv87U24wY50UiYxnpJqHR8=";
};
cargoHash = "sha256-0NQZtT3xz4MaqY8ehKzy/cpDJlE5eWIixi3IropK11w=";
cargoHash = "sha256-Zj8Z88gYx+i0VN14HbO1LSlWjZX1EvrtyKvAwpnFMgs=";
postPatch = ''
substituteInPlace ./examples/mounted.sh \
+10
View File
@@ -62,6 +62,16 @@ stdenv.mkDerivation rec {
comment = "Innovate and explore in a sandbox world";
categories = [ "Game" ];
})
(makeDesktopItem {
name = "vsmodinstall-handler";
desktopName = "Vintage Story 1-click Mod Install Handler";
comment = "Handler for vintagestorymodinstall:// URI scheme";
exec = "vintagestory -i %u";
mimeTypes = [ "x-scheme-handler/vintagestorymodinstall" ];
noDisplay = true;
terminal = false;
})
];
installPhase = ''
+3 -3
View File
@@ -17,16 +17,16 @@
buildGoModule (finalAttrs: {
pname = "voxinput";
version = "0.6.1";
version = "0.6.2";
src = fetchFromGitHub {
owner = "richiejp";
repo = "VoxInput";
tag = "v${finalAttrs.version}";
hash = "sha256-04RLlE8e8W6vTOz7GF8yEkysp3cwTSOgE1Uk7qXG/ws=";
hash = "sha256-+W+xaPYwofYdsV8C2G7hOugUekrdmA6Q0o4xUvbbLlg=";
};
vendorHash = "sha256-0osfAJROLn8Iru576M5lq5dwFaw2PVBs6LBscZf3Vxw=";
vendorHash = "sha256-HOXjD4mwvK3jcFmpZyvKB7WOfpCIDlUWJTJSTN7wFXM=";
nativeBuildInputs = [
makeWrapper
@@ -82,6 +82,14 @@ let
+ ''
runHook postInstall
'';
postFixup = ''
# Link missing libfontconfig to fix font discovery
# https://github.com/warpdotdev/Warp/issues/5793
patchelf \
--add-needed libfontconfig.so.1 \
$out/opt/warpdotdev/warp-terminal/warp
'';
});
darwin = stdenvNoCC.mkDerivation (finalAttrs: {
+6 -4
View File
@@ -48,15 +48,16 @@ rustPlatform.buildRustPackage (finalAttrs: {
# error: linker `rust-lld` not found
!isAarch64;
# prevent $out from being propagated to $dev:
# the library and header files are not dependent on the binaries
propagatedBuildOutputs = [ ];
postInstall =
let
inherit (stdenv.targetPlatform.rust) cargoShortTarget;
in
''
# move libs from out to dev
install -d -m 0755 $dev/lib
install -m 0644 ''${!outputLib}/lib/* $dev/lib
rm -r ''${!outputLib}/lib
moveToOutput lib $dev
# copy the build.rs generated c-api headers
# https://github.com/rust-lang/cargo/issues/9661
@@ -89,6 +90,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
maintainers = with lib.maintainers; [
ereslibre
matthewbauer
nekowinston
];
platforms = lib.platforms.unix;
changelog = "https://github.com/bytecodealliance/wasmtime/blob/v${finalAttrs.version}/RELEASES.md";
@@ -6,7 +6,6 @@
hicolor-icon-theme,
jdupes,
boldPanelIcons ? false,
blackPanelIcons ? false,
alternativeIcons ? false,
themeVariants ? [ ],
}:
@@ -65,7 +64,6 @@ lib.checkListOfEnum "${pname}: theme variants"
--theme ${builtins.toString themeVariants} \
${lib.optionalString alternativeIcons "--alternative"} \
${lib.optionalString boldPanelIcons "--bold"} \
${lib.optionalString blackPanelIcons "--black"}
jdupes --link-soft --recurse $out/share
+2 -2
View File
@@ -39,7 +39,7 @@ let
hash =
{
x86_64-linux = "sha256-Z/hrrrHS1IgecPSUHZ0u0yNFEyZsohPF52jgeMPQr28=";
x86_64-linux = "sha256-Hg7jrY8omkoT5+W55Tqdq+83AZ7hRO73GcN4MMehpoI=";
}
.${system} or throwSystem;
@@ -48,7 +48,7 @@ let
in
stdenvNoCC.mkDerivation rec {
pname = "xpipe";
version = "18.0.1";
version = "18.4";
src = fetchzip {
url = "https://github.com/xpipe-io/xpipe/releases/download/${version}/xpipe-portable-linux-${arch}.tar.gz";
+12 -2
View File
@@ -3,6 +3,7 @@
stdenv,
callPackage,
fetchFromGitHub,
fetchpatch2,
davix,
cmake,
gtest,
@@ -30,16 +31,25 @@
stdenv.mkDerivation (finalAttrs: {
pname = "xrootd";
version = "5.8.1";
version = "5.8.4";
src = fetchFromGitHub {
owner = "xrootd";
repo = "xrootd";
tag = "v${finalAttrs.version}";
fetchSubmodules = true;
hash = "sha256-zeyg/VdzcWbMXuCE1RELiyGg9mytfpNfIa911BwqqIA=";
hash = "sha256-r0wXAlm+K6TE6189QyZL/k3q5IKlouSBKWzWXz1Tws4=";
};
patches = [
# Downgrade -Wnull-dereference from error to warning
# Should be removed in the release after next
(fetchpatch2 {
url = "https://github.com/xrootd/xrootd/commit/135b33b9631891219889fcaad449a4efb5e77d95.patch";
hash = "sha256-t6Cy2XWp3B+sbMBxLhsh3WjQlXg4Tb7fF+rGGgYollU=";
})
];
postPatch = ''
patchShebangs genversion.sh
substituteInPlace cmake/XRootDConfig.cmake.in \
+8 -19
View File
@@ -16,8 +16,9 @@
libxml2,
libyaml,
libffi,
llvmPackages_15,
llvmPackages_18,
llvmPackages_19,
llvmPackages_20,
llvmPackages_21,
makeWrapper,
openssl,
pcre2,
@@ -168,11 +169,7 @@ let
export threads=$NIX_BUILD_CORES
export CRYSTAL_CACHE_DIR=$TMP
export MACOSX_DEPLOYMENT_TARGET=10.11
# Available since 1.13.0 https://github.com/crystal-lang/crystal/pull/14574
if [[ -f src/SOURCE_DATE_EPOCH ]]; then
export SOURCE_DATE_EPOCH="$(<src/SOURCE_DATE_EPOCH)"
fi
export SOURCE_DATE_EPOCH="$(<src/SOURCE_DATE_EPOCH)"
'';
strictDeps = true;
@@ -296,19 +293,11 @@ rec {
};
};
# When removing this version, also remove checks for src/SOURCE_DATE_EPOCH existence
crystal_1_11 = generic {
version = "1.11.2";
sha256 = "sha256-BBEDWqFtmFUNj0kuGBzv71YHO3KjxV4d2ySTCD4HhLc=";
binary = binaryCrystal_1_10;
llvmPackages = llvmPackages_15;
};
crystal_1_14 = generic {
version = "1.14.1";
sha256 = "sha256-cQWK92BfksOW8GmoXn4BmPGJ7CLyLAeKccOffQMh5UU=";
binary = binaryCrystal_1_10;
llvmPackages = llvmPackages_18;
llvmPackages = llvmPackages_19;
doCheck = false; # Some compiler spec problems on x86-64_linux with the .0 release
};
@@ -316,7 +305,7 @@ rec {
version = "1.15.1";
sha256 = "sha256-L/Q8yZdDq/wn4kJ+zpLfi4pxznAtgjxTCbLnEiCC2K0=";
binary = binaryCrystal_1_10;
llvmPackages = llvmPackages_18;
llvmPackages = llvmPackages_19;
doCheck = false;
};
@@ -324,7 +313,7 @@ rec {
version = "1.16.3";
sha256 = "sha256-U9H1tHUMyDNicZnXzEccDki5bGXdV0B2Wu2PyCksPVI=";
binary = binaryCrystal_1_10;
llvmPackages = llvmPackages_18;
llvmPackages = llvmPackages_20;
doCheck = false;
};
@@ -332,7 +321,7 @@ rec {
version = "1.17.1";
sha256 = "sha256-+wHhozPhpIsfQy1Lw+V48zvuWCfXzT4IC9KA1AU/DLw=";
binary = binaryCrystal_1_10;
llvmPackages = llvmPackages_18;
llvmPackages = llvmPackages_21;
doCheck = false;
};
+2
View File
@@ -9,6 +9,7 @@
lux-cli,
nix,
openssl,
perl,
pkg-config,
rustPlatform,
}:
@@ -31,6 +32,7 @@ rustPlatform.buildRustPackage rec {
cargoHash = lux-cli.cargoHash;
nativeBuildInputs = [
perl
pkg-config
];
@@ -13,14 +13,14 @@
buildPythonPackage rec {
pname = "ckzg";
version = "2.1.1";
version = "2.1.2";
pyproject = true;
src = fetchFromGitHub {
owner = "ethereum";
repo = "c-kzg-4844";
tag = "v${version}";
hash = "sha256-U7UwKhXrf3uEjvHaQgGS7NAUrtTrbsXYKIHKy/VYA7M=";
hash = "sha256-B06Nm3D3+m2dEkQthDFowY0MfOOW5TUo324zO5PVSlA=";
};
build-system = [ setuptools ];
@@ -16,7 +16,7 @@
buildPythonPackage rec {
pname = "django-filer";
version = "3.3.1";
version = "3.3.2";
pyproject = true;
disabled = pythonOlder "3.8";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
owner = "django-cms";
repo = "django-filer";
tag = version;
hash = "sha256-9Gy6yXYRCARXAqJ9+ZoDbNAEQGzhLLtJzbAevF+j/2Q=";
hash = "sha256-XB+imTAcWCj9C6bNAo+uEdrshYKBlhxYXT37l92VW9M=";
};
build-system = [ setuptools ];
@@ -10,14 +10,14 @@
buildPythonPackage rec {
pname = "metaflow";
version = "2.17.1";
version = "2.18.1";
pyproject = true;
src = fetchFromGitHub {
owner = "Netflix";
repo = "metaflow";
tag = version;
hash = "sha256-SOXgIAdbpnAnxxU4fxXd65EoAcJVdCS/owScjb/bBTk=";
hash = "sha256-hQ1it/hiTsLAQa5OLWf5tZsZFG6p/TX8Z6+jGZxSTfg=";
};
build-system = [
@@ -29,14 +29,14 @@
}:
buildPythonPackage rec {
pname = "open-clip-torch";
version = "3.0.0";
version = "3.1.0";
pyproject = true;
src = fetchFromGitHub {
owner = "mlfoundations";
repo = "open_clip";
tag = "v${version}";
hash = "sha256-MMvDg5opsu9ILGHc1rJjWQfTb3T0PZ0i+8GSrQvIu8Y=";
hash = "sha256-xDXxhncX0l9qwbV4Gk4rOROH6Qyit/FSTgjrg4Vbk1s=";
};
build-system = [ pdm-backend ];
@@ -47,7 +47,7 @@ buildPythonPackage rec {
pillow
pyjpegls
#pylibjpeg.optional-dependencies.openjpeg # infinite recursion
#pylibjpeg.optional-dependencies.rle # not in nixpkgs
#pylibjpeg.optional-dependencies.rle # infinite recursion
pylibjpeg-libjpeg
gdcm
];
@@ -0,0 +1,66 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
cargo,
rustPlatform,
rustc,
numpy,
pydicom,
pylibjpeg-data,
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "pylibjpeg-rle";
version = "2.1.0";
pyproject = true;
src = fetchFromGitHub {
owner = "pydicom";
repo = "pylibjpeg-rle";
tag = "v${version}";
hash = "sha256-S9QBZEYfM9cwhwycF9TDpHv44z6fXTu3wBr4ZZHxXR8=";
};
cargoDeps = rustPlatform.fetchCargoVendor {
inherit pname version src;
hash = "sha256-ZkaDnG7wXQeaefASdsUFxuDKxjLukczyJeUgfG9uIyo=";
};
build-system = [
cargo
rustPlatform.cargoSetupHook
rustPlatform.maturinBuildHook
rustc
];
dependencies = [
numpy
];
nativeCheckInputs = [
pydicom
pylibjpeg-data
pytestCheckHook
];
preCheck = ''
mv rle/tests .
rm -r rle
'';
pythonImportsCheck = [
"rle"
"rle.rle"
"rle.utils"
];
meta = {
description = "Fast DICOM RLE plugin for pylibjpeg";
homepage = "https://github.com/pydicom/pylibjpeg-rle";
changelog = "https://github.com/pydicom/pylibjpeg-rle/releases/tag/${src.tag}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ bcdarwin ];
};
}
@@ -10,6 +10,7 @@
pylibjpeg-data,
pylibjpeg-libjpeg,
pylibjpeg-openjpeg,
pylibjpeg-rle,
}:
buildPythonPackage rec {
@@ -30,11 +31,15 @@ buildPythonPackage rec {
dependencies = [ numpy ];
optional-dependencies = {
libjpeg = [ pylibjpeg-libjpeg ];
openjpeg = [ pylibjpeg-openjpeg ];
#rle = [ pylibjpeg-rle ]; # not in Nixpkgs
};
optional-dependencies =
let
extras = {
libjpeg = [ pylibjpeg-libjpeg ];
openjpeg = [ pylibjpeg-openjpeg ];
rle = [ pylibjpeg-rle ];
};
in
extras // { all = lib.concatLists (lib.attrValues extras); };
nativeCheckInputs = [
pytestCheckHook
@@ -1,11 +1,13 @@
{
lib,
stdenv,
buildPythonPackage,
fetchFromGitHub,
pythonAtLeast,
# build-system
packaging,
setuptools,
wheel,
# dependencies
alembic,
@@ -25,50 +27,64 @@
python-magic,
redis,
requests,
rich,
sqlalchemy,
statsd,
stomp-py,
tabulate,
typing-extensions,
urllib3,
# tests
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "rucio";
version = "37.7.1";
pyproject = true;
let
version = "38.0.0";
src = fetchFromGitHub {
owner = "rucio";
repo = "rucio";
tag = version;
hash = "sha256-PZ6g/ILs1ed+lxcH2GyV1YJyJqLgYb5/xQ31OXiXnBU=";
hash = "sha256-/uA1PfP5K/Z22QcqQKez70dQJ4lTOLiQHQwEi1mkLPo=";
};
in
buildPythonPackage {
pname = "rucio";
inherit version src;
pyproject = true;
# future-1.0.0 not supported for interpreter python3.13
disabled = pythonAtLeast "3.13";
pythonRelaxDeps = [
"alembic"
"argcomplete"
"boto3"
"dogpile.cache"
"flask"
"geoip2"
"google-auth"
"jsonschema"
"oic"
"packaging"
"paramiko"
"prometheus_client"
"python-dateutil"
"redis"
"requests"
"rich"
"sqlalchemy"
"stomp.py"
"typing_extensions"
"urllib3"
];
pythonRemoveDeps = [ "boto" ];
build-system = [
packaging
setuptools
wheel
];
dependencies = [
@@ -82,6 +98,7 @@ buildPythonPackage rec {
google-auth
jsonschema
oic
packaging
paramiko
prometheus-client
pymemcache
@@ -89,10 +106,12 @@ buildPythonPackage rec {
python-magic
redis
requests
rich
sqlalchemy
statsd
stomp-py
tabulate
typing-extensions
urllib3
];
@@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "sphinxext-opengraph";
version = "0.12.0";
version = "0.13.0";
pyproject = true;
disabled = pythonOlder "3.8";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
owner = "wpilibsuite";
repo = "sphinxext-opengraph";
tag = "v${version}";
hash = "sha256-2ch9BxgrqbfIJ8fzFKYscha4+G7OAVz+OIOqYwX2gSA=";
hash = "sha256-rdV6XWHfNj+TFgIfqFPWYxn6bGG5w/frUHl9+qMALi4=";
};
build-system = [ flit-core ];
@@ -1,6 +1,6 @@
{
callPackage,
fetchurl,
fetchgit,
lib,
stdenv,
gtk3,
@@ -16,11 +16,12 @@ let
in
stdenv.mkDerivation rec {
pname = "sparse";
version = "0.6.4";
version = "0.6.4-unstable-2024-02-03";
src = fetchurl {
url = "mirror://kernel/software/devel/sparse/dist/${pname}-${version}.tar.xz";
sha256 = "sha256-arKLSZG8au29c1UCkTYKpqs99B9ZIGqb3paQIIpuOHw=";
src = fetchgit {
url = "https://git.kernel.org/pub/scm/devel/sparse/sparse.git";
rev = "0196afe16a50c76302921b139d412e82e5be2349";
hash = "sha256-Fft3hm988Xw92WIwXEoVoX7xzzkDhKy+bn9YuQIOhSk=";
};
preConfigure = ''
+2 -11
View File
@@ -2,7 +2,6 @@
lib,
stdenv,
fetchFromGitHub,
fetchpatch,
cmake,
pkg-config,
qttools,
@@ -24,23 +23,15 @@
stdenv.mkDerivation rec {
pname = "gammaray";
version = "3.1.0";
version = "3.2.2";
src = fetchFromGitHub {
owner = "KDAB";
repo = pname;
rev = "v${version}";
hash = "sha256-mJw9yckbkFVYZlcakai/hH/gAD0xOQir5JqGMNnB/dE=";
hash = "sha256-tQZg8i83TGUvl2BgYrv2kMEzZZI9SXKr5DQhqJ2nBrU=";
};
patches = [
(fetchpatch {
name = "fix-build-for-Qt-6_9.patch";
url = "https://github.com/KDAB/GammaRay/commit/750195c8172bc7c2e805cbf28d3993d65c17b5a0.patch";
hash = "sha256-HQLOOkNmrGMoBDAK5am/NePnAF3Jsa5F0WyUjaJ2tYw=";
})
];
nativeBuildInputs = [
cmake
pkg-config
@@ -6,16 +6,16 @@
buildGoModule rec {
pname = "mongodb_exporter";
version = "0.47.0";
version = "0.47.1";
src = fetchFromGitHub {
owner = "percona";
repo = "mongodb_exporter";
rev = "v${version}";
hash = "sha256-ZLZhWOuFjyJgUi7ygn0fNf7z2PGj21Dl2EVmUsluyyc=";
hash = "sha256-UYV72Q+dDWiS4/sg4sVi68ZA67iSe7J5H/Iq4i7tNgY=";
};
vendorHash = "sha256-iKlwb2ig5yil2ekemC6NKzJ1t3tYFGu6R/QPXITJJxc=";
vendorHash = "sha256-CE2gSvMEXeOuevFrD3b6bhlFrfQ6Y0Qa+HIhcTp9oiQ=";
ldflags = [
"-s"
@@ -4,26 +4,36 @@
fetchFromGitHub,
nixosTests,
}:
buildGoModule rec {
subPackages = [ "cmd" ];
postInstall = ''
mv $out/bin/cmd $out/bin/script_exporter
'';
pname = "script_exporter";
version = "1.2.0";
version = "3.0.1";
src = fetchFromGitHub {
owner = "adhocteam";
owner = "ricoberger";
repo = pname;
rev = "v${version}";
hash = "sha256-t/xgRalcHxEcT1peU1ePJUItD02rQdfz1uWpXDBo6C0=";
hash = "sha256-09WpxXPNk2Pza9RrD3OLru4aY0LR98KgsHK7It/qRgs=";
};
vendorHash = "sha256-Hs1SNpC+t1OCcoF3FBgpVGkhR97ulq6zYhi8BQlgfVc=";
postPatch = ''
# Patch out failing test assertion in handler_test.go
# Insert t.Skip at the start of TestHandler to skip it cleanly
sed -i '/func TestHandler/a\\ t.Skip("skipped in Nix build")' prober/handler_test.go
'';
vendorHash = "sha256-Rs7P7uVvfhWteiR10LeG4fWZqbNqDf3QQotgNvTMTX4=";
passthru.tests = { inherit (nixosTests.prometheus-exporters) script; };
meta = with lib; {
description = "Shell script prometheus exporter";
mainProgram = "script_exporter";
homepage = "https://github.com/adhocteam/script_exporter";
homepage = "https://github.com/ricoberger/script_exporter";
license = licenses.mit;
maintainers = with maintainers; [ Flakebi ];
platforms = platforms.linux;
-114
View File
@@ -1,114 +0,0 @@
{
lib,
stdenv,
bzip2,
zlib,
autoconf,
automake,
cmake,
help2man,
texinfo,
libtool,
cppzmq,
libarchive,
avro-cpp,
boost,
zeromq,
openssl,
pam,
libiodbc,
libkrb5,
gcc,
libcxx,
which,
catch2,
nanodbc,
fmt,
nlohmann_json,
curl,
spdlog_rods,
bison,
flex,
}:
# Common attributes of irods packages
{
nativeBuildInputs = [
autoconf
automake
cmake
help2man
texinfo
which
gcc
bison
flex
];
buildInputs = [
bzip2
zlib
libtool
cppzmq
libarchive
avro-cpp
zeromq
openssl
pam
libiodbc
libkrb5
boost
libcxx
catch2
nanodbc
fmt
nlohmann_json
spdlog_rods
curl
];
cmakeFlags = [
"-DIRODS_EXTERNALS_FULLPATH_CLANG=${stdenv.cc}"
"-DIRODS_EXTERNALS_FULLPATH_CLANG_RUNTIME=${stdenv.cc}"
"-DIRODS_EXTERNALS_FULLPATH_ARCHIVE=${libarchive.lib}"
"-DIRODS_EXTERNALS_FULLPATH_AVRO=${avro-cpp}"
"-DIRODS_EXTERNALS_FULLPATH_BOOST=${boost}"
"-DIRODS_EXTERNALS_FULLPATH_ZMQ=${zeromq}"
"-DIRODS_EXTERNALS_FULLPATH_CPPZMQ=${cppzmq}"
"-DIRODS_EXTERNALS_FULLPATH_CATCH2=${catch2}"
"-DIRODS_EXTERNALS_FULLPATH_NANODBC=${nanodbc}"
"-DIRODS_EXTERNALS_FULLPATH_FMT=${fmt}"
"-DIRODS_EXTERNALS_FULLPATH_JSON=${nlohmann_json}"
"-DIRODS_EXTERNALS_FULLPATH_SPDLOG=${spdlog_rods}"
"-DIRODS_LINUX_DISTRIBUTION_NAME=nix"
"-DIRODS_LINUX_DISTRIBUTION_VERSION_MAJOR=1.0"
"-DCPACK_GENERATOR=TGZ"
"-DCMAKE_CXX_FLAGS=-I${lib.getDev libcxx}/include/c++/v1"
"-DPAM_LIBRARY=${pam}/lib/libpam.so"
"-DCMAKE_INSTALL_PREFIX=${placeholder "out"}"
"-DIRODS_HOME_DIRECTORY=${placeholder "out"}"
"-DCMAKE_INSTALL_SBINDIR=${placeholder "out"}/sbin"
];
postPatch = ''
patchShebangs ./packaging ./scripts
'';
meta = with lib; {
description = "Integrated Rule-Oriented Data System (iRODS)";
longDescription = ''
The Integrated Rule-Oriented Data System (iRODS) is open source data management
software used by research organizations and government agencies worldwide.
iRODS is released as a production-level distribution aimed at deployment in mission
critical environments. It virtualizes data storage resources, so users can take
control of their data, regardless of where and on what device the data is stored.
As data volumes grow and data services become more complex, iRODS is increasingly
important in data management. The development infrastructure supports exhaustive
testing on supported platforms; plug-in support for microservices, storage resources,
drivers, and databases; and extensive documentation, training and support services.'';
homepage = "https://irods.org";
license = lib.licenses.bsd3;
maintainers = [ lib.maintainers.bzizou ];
platforms = lib.platforms.linux;
};
}
-169
View File
@@ -1,169 +0,0 @@
{
lib,
stdenv,
fetchFromGitHub,
bzip2,
zlib,
autoconf,
automake,
cmake,
help2man,
texinfo,
libtool,
cppzmq,
libarchive,
avro-cpp_llvm,
boost,
zeromq,
openssl,
pam,
libiodbc,
libkrb5,
gcc,
libcxx,
which,
catch2,
nanodbc_llvm,
fmt,
nlohmann_json,
spdlog_llvm,
curl,
bison,
flex,
}:
let
spdlog_rods = spdlog_llvm.overrideAttrs (attrs: {
inherit stdenv;
version = "1.10.0";
src = attrs.src.override {
rev = "v1.10.0";
hash = "sha256-c6s27lQCXKx6S1FhZ/LiKh14GnXMhZtD1doltU4Avws=";
};
postPatch = ''
substituteInPlace cmake/spdlog.pc.in \
--replace-fail '$'{exec_prefix}/@CMAKE_INSTALL_LIBDIR@ @CMAKE_INSTALL_FULL_LIBDIR@
'';
});
in
let
avro-cpp = avro-cpp_llvm;
nanodbc = nanodbc_llvm;
common = import ./common.nix {
inherit
lib
stdenv
bzip2
zlib
autoconf
automake
cmake
help2man
texinfo
libtool
cppzmq
libarchive
zeromq
openssl
pam
libiodbc
libkrb5
gcc
libcxx
boost
avro-cpp
which
catch2
nanodbc
fmt
nlohmann_json
curl
spdlog_rods
bison
flex
;
};
in
rec {
# irods: libs and server package
irods = stdenv.mkDerivation (
finalAttrs:
common
// {
version = "4.3.3";
pname = "irods";
src = fetchFromGitHub {
owner = "irods";
repo = "irods";
rev = finalAttrs.version;
hash = "sha256-SmN2FzeoA2/gjiDfGs2oifOVj0mK2WdQCgiSdIlENfk=";
fetchSubmodules = true;
};
# fix build with recent llvm versions
env.NIX_CFLAGS_COMPILE = "-Wno-deprecated-register -Wno-deprecated-declarations";
cmakeFlags = common.cmakeFlags or [ ] ++ [
"-DCMAKE_EXE_LINKER_FLAGS=-Wl,-rpath,${placeholder "out"}/lib -D_GLIBCXX_USE_CXX11_ABI=0"
"-DCMAKE_MODULE_LINKER_FLAGS=-Wl,-rpath,${placeholder "out"}/lib"
"-DCMAKE_SHARED_LINKER_FLAGS=-Wl,-rpath,${placeholder "out"}/lib"
];
postPatch = common.postPatch + ''
patchShebangs ./test
substituteInPlace plugins/database/CMakeLists.txt --replace-fail "COMMAND cpp" "COMMAND ${gcc.cc}/bin/cpp"
for file in unit_tests/cmake/test_config/*.cmake
do
substituteInPlace $file --replace-quiet "CATCH2}/include" "CATCH2}/include/catch2"
done
substituteInPlace server/auth/CMakeLists.txt --replace-fail SETUID ""
'';
meta = common.meta // {
longDescription = common.meta.longDescription + "This package provides the servers and libraries.";
mainProgram = "irodsServer";
};
}
);
# icommands (CLI) package, depends on the irods package
irods-icommands = stdenv.mkDerivation (
finalAttrs:
common
// {
version = "4.3.3";
pname = "irods-icommands";
src = fetchFromGitHub {
owner = "irods";
repo = "irods_client_icommands";
rev = finalAttrs.version;
hash = "sha256-cc0V6BztJk3njobWt27VeJNmQUXyH6aBJkvYIDFEzWY=";
};
buildInputs = common.buildInputs ++ [ irods ];
postPatch = common.postPatch + ''
patchShebangs ./bin
'';
cmakeFlags = common.cmakeFlags ++ [
"-DCMAKE_INSTALL_PREFIX=${stdenv.out}"
"-DIRODS_DIR=${irods}/lib/irods/cmake"
"-DCMAKE_EXE_LINKER_FLAGS=-Wl,-rpath,${irods}/lib"
"-DCMAKE_MODULE_LINKER_FLAGS=-Wl,-rpath,${irods}/lib"
"-DCMAKE_SHARED_LINKER_FLAGS=-Wl,-rpath,${irods}/lib"
];
meta = common.meta // {
description = common.meta.description + " CLI clients";
longDescription =
common.meta.longDescription + "This package provides the CLI clients, called 'icommands'.";
};
}
);
}
@@ -1,18 +1,5 @@
From be4c852769e260e3a9b516bb5626a6a6a68a2cd3 Mon Sep 17 00:00:00 2001
From: roblabla <unfiltered@roblab.la>
Date: Wed, 31 Jan 2024 13:19:55 +0100
Subject: [PATCH] Use com.google.protobuf:protobuf-gradle-plugin
---
Ghidra/Debug/Debugger-isf/build.gradle | 8 +-
Ghidra/Debug/Debugger-rmi-trace/build.gradle | 16 ++--
build.gradle | 6 ++
gradle/hasProtobuf.gradle | 94 --------------------
4 files changed, 22 insertions(+), 102 deletions(-)
delete mode 100644 gradle/hasProtobuf.gradle
diff --git a/Ghidra/Debug/Debugger-isf/build.gradle b/Ghidra/Debug/Debugger-isf/build.gradle
index f6c8464405..396b52d188 100644
index 2db94ed67e..925f394cf0 100644
--- a/Ghidra/Debug/Debugger-isf/build.gradle
+++ b/Ghidra/Debug/Debugger-isf/build.gradle
@@ -18,11 +18,17 @@ apply from: "${rootProject.projectDir}/gradle/javaProject.gradle"
@@ -32,10 +19,10 @@ index f6c8464405..396b52d188 100644
+}
+
dependencies {
api project(':Framework-AsyncComm')
api project(':ProposedUtils')
}
diff --git a/Ghidra/Debug/Debugger-rmi-trace/build.gradle b/Ghidra/Debug/Debugger-rmi-trace/build.gradle
index 8b6589f035..05da5a7a7e 100644
index 4fa3b9a539..2663aeaeb0 100644
--- a/Ghidra/Debug/Debugger-rmi-trace/build.gradle
+++ b/Ghidra/Debug/Debugger-rmi-trace/build.gradle
@@ -19,12 +19,17 @@ apply from: "${rootProject.projectDir}/gradle/helpProject.gradle"
@@ -56,25 +43,27 @@ index 8b6589f035..05da5a7a7e 100644
+}
+
dependencies {
api project(':ProposedUtils')
api project(':Pty')
api project(':Debugger')
@@ -44,12 +49,9 @@ task generateProtoPy {
ext.outdir = file("build/generated/source/proto/main/py")
outputs.dir(outdir)
inputs.files(src)
@@ -37,13 +42,10 @@ dependencies {
}
task configureGenerateProtoPy {
- dependsOn(configurations.protocArtifact)
+ dependsOn(protobuf.generateProtoTasks.all())
doLast {
- doLast {
- def exe = configurations.protocArtifact.first()
- if (!isCurrentWindows()) {
- exe.setExecutable(true)
- }
+ doLast {
+ def exe = protobuf.tools.protoc.path
exec {
commandLine exe, "--python_out=$outdir", "-I$srcdir"
args src
generateProtoPy.commandLine exe
generateProtoPy.args "--python_out=${generateProtoPy.outdir}"
generateProtoPy.args "--pyi_out=${generateProtoPy.stubsOutdir}"
diff --git a/build.gradle b/build.gradle
index 2d75307a08..aa8f1d7604 100644
index 159eb7dd7b..ef4add1ad8 100644
--- a/build.gradle
+++ b/build.gradle
@@ -80,6 +80,12 @@ if (flatRepo.isDirectory()) {
@@ -92,19 +81,19 @@ index 2d75307a08..aa8f1d7604 100644
else {
diff --git a/gradle/hasProtobuf.gradle b/gradle/hasProtobuf.gradle
deleted file mode 100644
index 23b4ce74bb..0000000000
index a8c176bcbe..0000000000
--- a/gradle/hasProtobuf.gradle
+++ /dev/null
@@ -1,94 +0,0 @@
@@ -1,98 +0,0 @@
-/* ###
- * IP: GHIDRA
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@@ -157,7 +146,22 @@ index 23b4ce74bb..0000000000
- }
-}*/
-
-task generateProto {
-task configureGenerateProto {
- dependsOn(configurations.protocArtifact)
-
- doLast {
- def exe = configurations.protocArtifact.first()
- if (!isCurrentWindows()) {
- exe.setExecutable(true)
- }
- generateProto.commandLine exe, "--java_out=${generateProto.outdir}", "-I${generateProto.srcdir}"
- generateProto.args generateProto.src
- }
-}
-
-// Can't use providers.exec, or else we see no output
-task generateProto(type:Exec) {
- dependsOn(configureGenerateProto)
- ext.srcdir = file("src/main/proto")
- ext.src = fileTree(srcdir) {
- include "**/*.proto"
@@ -165,17 +169,6 @@ index 23b4ce74bb..0000000000
- ext.outdir = file("build/generated/source/proto/main/java")
- outputs.dir(outdir)
- inputs.files(src)
- dependsOn(configurations.protocArtifact)
- doLast {
- def exe = configurations.protocArtifact.first()
- if (!isCurrentWindows()) {
- exe.setExecutable(true)
- }
- exec {
- commandLine exe, "--java_out=$outdir", "-I$srcdir"
- args src
- }
- }
-}
-
-tasks.compileJava.dependsOn(tasks.generateProto)
@@ -190,6 +183,3 @@ index 23b4ce74bb..0000000000
- }
-}
-zipSourceSubproject.dependsOn generateProto
--
2.47.0
+2 -2
View File
@@ -20,7 +20,7 @@
let
pkg_path = "$out/lib/ghidra";
pname = "ghidra";
version = "11.3.2";
version = "11.4.2";
isMacArm64 = stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64;
@@ -30,7 +30,7 @@ let
owner = "NationalSecurityAgency";
repo = "Ghidra";
rev = "Ghidra_${version}_build";
hash = "sha256-EvIOC/VIUaEl7eneVzgEt2fhLSP9DaawMAutk4ouFp8=";
hash = "sha256-/veSp2WuGOF0cYwUC4QFJD6kaMae5NuKrQ5Au4LjDe8=";
# populate values that require us to use git. By doing this in postFetch we
# can delete .git afterwards and maintain better reproducibility of the src.
leaveDotGit = true;
+3 -4
View File
@@ -28,12 +28,11 @@ let
in
stdenv.mkDerivation rec {
pname = "ghidra";
version = "11.3.2";
versiondate = "20250415";
version = "11.4.2";
versiondate = "20250826";
src = fetchzip {
url = "https://github.com/NationalSecurityAgency/ghidra/releases/download/Ghidra_${version}_build/ghidra_${version}_PUBLIC_${versiondate}.zip";
hash = "sha256-97L3BueekbZfFAdiLX1DHlVSzNyspu4exafpFVraMWE=";
hash = "sha256-5illpD+kWZfwtN8QpSJFcnsTrOPpvll3zNXR5r5q7jA=";
};
nativeBuildInputs = [
+69 -31
View File
@@ -99,11 +99,14 @@
}
},
"https://ftp.postgresql.org": {
"pub/source/v15.10/postgresql-15.10": {
"tar.gz": "sha256-FzNmYFJZqD3BicQyf/TDclSv7WW0+GbL2KXvLqRJ6PM="
"pub/source/v15.13/postgresql-15.13": {
"tar.gz": "sha256-r9wisKblvse2VyN1a5DUTqkR5hsvewHE3FUkq4E7TYk="
}
},
"https://github.com/NationalSecurityAgency/ghidra-data/raw/Ghidra_11.3.2": {
"https://github.com/NationalSecurityAgency/ghidra-data/raw/Ghidra_11.4.2": {
"Debugger/dbgmodel": {
"tlb": "sha256-jPXzouuBFgqjSQVqXKTCxyaxtumL8wl81BNRRxYzQ8c="
},
"FunctionID/vs2012_x64": {
"fidb": "sha256-1OmKs/eQuDF5MhhDC7oNiySl+/TaZbDB/6jLDPvrDNw="
},
@@ -283,6 +286,10 @@
"jar": "sha256-fZOMgXiQKARcCMBl6UvnX8KAUnYg1b1itRnVg4UyNoo=",
"pom": "sha256-w1zKe2HUZ42VeMvAuQG4cXtTmr+SVEQdp4uP5g3gZNA="
},
"commons-codec#commons-codec/1.18.0": {
"jar": "sha256-ugBfMEzvkqPe3iSjitWsm4r8zw2PdYOdbBM4Y0z39uQ=",
"pom": "sha256-dLkW2ksDhMYZ5t1MGN7+iqQ4f3lSBSU8+0u7L0WM3c4="
},
"commons-collections#commons-collections/3.2.2": {
"jar": "sha256-7urpF5FxRKaKdB1MDf9mqlxcX9hVk/8he87T/Iyng7g=",
"pom": "sha256-1dgfzCiMDYxxHDAgB8raSqmiJu0aES1LqmTLHWMiFws="
@@ -291,6 +298,10 @@
"jar": "sha256-lhsvbYfbrMXVSr9Fq3puJJX4m3VZiWLYxyPOqbwhCQg=",
"pom": "sha256-LgFv1+MkS18sIKytg02TqkeQSG7h5FZGQTYaPoMe71k="
},
"commons-io#commons-io/2.19.0": {
"jar": "sha256-gkJokZtLYvn0DwjFQ4HeWZOwePWGZ+My0XNIrgGdcrk=",
"pom": "sha256-VCt6UC7WGVDRuDEStRsWF9NAfjpN9atWqY12Dg+MWVA="
},
"commons-lang#commons-lang/2.6": {
"jar": "sha256-UPEbCfh3wpTVbyRGP0fSj5Kc9QRPZIZhwPDPuumi9Jw=",
"pom": "sha256-7Xa4iRwwtWYonHQ2Vvik1DWYaYJDjUDFZ8YmIzJH5xE="
@@ -332,9 +343,9 @@
"jar": "sha256-/PSSLTj/hRhPHSMoMXu2CCbhTalIq9YG7j1bjGpw3r0=",
"pom": "sha256-uIEr4lGsoTl/S2pCO/Tt06KERONFOyIDtTSTNrmVgik="
},
"junit#junit/4.12": {
"jar": "sha256-WXIfCAXiI9hLkGd4h9n/Vn3FNNfFAsqQPAwrF/BcEWo=",
"pom": "sha256-kPFj944/+28cetl96efrpO6iWAcUG4XW0SvmfKJUScQ="
"junit#junit/4.13.2": {
"jar": "sha256-jklbY0Rp1k+4rPo0laBly6zIoP/1XOHjEAe+TBbcV9M=",
"pom": "sha256-Vptpd+5GA8llwcRsMFj6bpaSkbAWDraWTdCSzYnq3ZQ="
},
"kr/motd/maven#os-maven-plugin/1.7.0": {
"jar": "sha256-lDBTUBpCnlPRxNYhUu7BJfo2Yg4NxmtzkKiVCXz96s4=",
@@ -432,6 +443,9 @@
"org/apache#apache/27": {
"pom": "sha256-srD8aeIqZQw4kvHDZtdwdvKVdcZzjfTHpwpEhESEzfk="
},
"org/apache#apache/33": {
"pom": "sha256-14vYUkxfg4ChkKZSVoZimpXf5RLfIRETg6bYwJI6RBU="
},
"org/apache#apache/7": {
"pom": "sha256-E5fOHbQzrcnyI9vwdJbRM2gUSHUfSuKeWPaOePtLbCU="
},
@@ -443,9 +457,9 @@
"jar": "sha256-Hfi5QwtcjtFD14FeQD4z71NxskAKrb6b2giDdi4IRtE=",
"pom": "sha256-JxvWc4Oa9G5zr/lX4pGNS/lvWsT2xs9NW+k/0fEnHE0="
},
"org/apache/commons#commons-compress/1.21": {
"jar": "sha256-auz9VFlyillWAc+gcljRMZcv/Dm0kutIvdWWV3ovJEo=",
"pom": "sha256-Z1uwI8m+7d4yMpSZebl0Kl/qlGKApVobRi1Mp4AQiM0="
"org/apache/commons#commons-compress/1.27.1": {
"jar": "sha256-KT2A9UtTa3QJXc1+o88KKbv8NAJRkoEzJJX0Qg03DRY=",
"pom": "sha256-34zBqDh9TOhCNjtyCf3G0135djg5/T/KtVig+D+dhBw="
},
"org/apache/commons#commons-dbcp2/2.9.0": {
"jar": "sha256-iHcgkSxcu83/bg4h1QNJN1Vfj/xZc4Hv+Pp38zzm1k4=",
@@ -454,9 +468,9 @@
"org/apache/commons#commons-lang3/3.11": {
"pom": "sha256-mA1mXYP+0EZlE08FeOUHRCoOdQaRBzeEORsKeYhySnU="
},
"org/apache/commons#commons-lang3/3.12.0": {
"jar": "sha256-2RnZBEhsA3+NGTQS2gyS4iqfokIwudZ6V4VcXDHH6U4=",
"pom": "sha256-gtMfHcxFg+/9dE6XkWWxbaZL+GvKYj/F0bA+2U9FyFo="
"org/apache/commons#commons-lang3/3.17.0": {
"jar": "sha256-bucx31yOWil2ocoCO2uzIOqNNTn75kyKHVy3ZRJ8M7Q=",
"pom": "sha256-NRxuSUDpObHzMN9H9g8Tujg9uB7gCBga9UHzoqbSpWw="
},
"org/apache/commons#commons-lang3/3.9": {
"pom": "sha256-pAIkKbmEJbQwGBkVchJ5pS9hDzRki9rEh9TKy76N/rU="
@@ -488,6 +502,18 @@
"org/apache/commons#commons-parent/54": {
"pom": "sha256-AA2Bh5UrIjcC/eKW33mVY/Nd6CznKttOe/FXNCN4++M="
},
"org/apache/commons#commons-parent/72": {
"pom": "sha256-Q0Xev8dnsa6saKvdcvxn0YtSHUs5A3KhG2P/DFhrIyA="
},
"org/apache/commons#commons-parent/73": {
"pom": "sha256-TtRFYLB/hEhHnf0eg6Qiuk6D5gs25RsocaxQKm1cG+o="
},
"org/apache/commons#commons-parent/79": {
"pom": "sha256-Yo3zAUis08SRz8trc8euS1mJ5VJqsTovQo3qXUrRDXo="
},
"org/apache/commons#commons-parent/81": {
"pom": "sha256-NI1OfBMb5hFMhUpxnOekQwenw5vTZghJd7JP0prQ7bQ="
},
"org/apache/commons#commons-pool2/2.11.1": {
"jar": "sha256-6gUF7nUV5YsawOaG5NGl2ffYCOJRphvDcaoFlbmWP4M=",
"pom": "sha256-wbsCmUpK34loDfepitujPFUnaDAUJy1liFuzA27NSMM="
@@ -523,17 +549,17 @@
"org/apache/logging/log4j#log4j/2.17.1": {
"pom": "sha256-lnq8AkRDqcsJaTVVmvXprW8P9hN1+Esn1EDS+nCAawk="
},
"org/bouncycastle#bcpkix-jdk15on/1.69": {
"jar": "sha256-QIN20Xqqh4nnrNBV/kBCiaEfozX9fGinUykEn7fSjtI=",
"pom": "sha256-WrvkytLCMJR0ZvsgmiJn48xqDTgKajGRWVnTqtm4F2w="
"org/bouncycastle#bcpkix-jdk18on/1.80": {
"jar": "sha256-T0umqSYX6hncGD8PpdtJLu5Cb93ioKLWyUd3/9GvZBM=",
"pom": "sha256-pKEiETRntyjhjyb7DP1X8LGg18SlO4Zxis5wv4uG7Uc="
},
"org/bouncycastle#bcprov-jdk15on/1.69": {
"jar": "sha256-5Gm9Ofk2mZ8lYAJjEAP/AioilR2p1b2Xicer+pdjopI=",
"pom": "sha256-/YHicUSVvOeeauazAp2s0kzyz/NAJB2lgQVYlae6eN4="
"org/bouncycastle#bcprov-jdk18on/1.80": {
"jar": "sha256-6K0gn4xY0pGjfKl1Dp6frGBZaVbJg+Sd2Cgjgd2LMkk=",
"pom": "sha256-oKdcdtkcQh7qVtD2Bi+49j7ff6x+xyT9QgzNytcYHUM="
},
"org/bouncycastle#bcutil-jdk15on/1.69": {
"jar": "sha256-KeQOJGbQQNgqbw6ZY10LwrujqUJRz3k5zwtpMhyu/Ak=",
"pom": "sha256-p2e8fzQtGTKJfso8i6zHAEygOAv6dSnyOpc0VJZcffw="
"org/bouncycastle#bcutil-jdk18on/1.80": {
"jar": "sha256-Iuymh/eVVBH0Vq8z5uqOaPxzzYDLizKqX3qLGCfXxng=",
"pom": "sha256-Qhp95L/rnFs4sfxHxCagh9kIeJVdQQf1t6gusde3R7Y="
},
"org/checkerframework#checker-compat-qual/2.5.2": {
"pom": "sha256-da9ztewybj29yUayH9RoAtXafGEsO/Hlh1N0yY1+pP0="
@@ -547,10 +573,10 @@
"module": "sha256-clinadyqJrmBVNIp2FzHLls2ZrC8tjfS2vFuxJiVZjg=",
"pom": "sha256-AjkvvUziGQH5RWFUcrHU1NNZGzqr3wExBfXJLsMstPA="
},
"org/checkerframework#checker-qual/3.42.0": {
"jar": "sha256-zK7dM68LeJTZ8vO2RPTRnkOSjjKQLmGsTRB3eDD1qsc=",
"module": "sha256-4PpiK33mPq4RBH726RtMKtDx8OE8uQP/UggKR/V6V0Y=",
"pom": "sha256-v1/KqycvVMvPG753w72WPIIcmrrSBYcIvwvtPIdUlMo="
"org/checkerframework#checker-qual/3.49.3": {
"jar": "sha256-Nn7b8v6fYGwf21qLpuHJwnYlmT4f+VTjho3nC8xkFrc=",
"module": "sha256-dv9CWNsfoaC8bOeur0coPfEGD9Q3oJvm7zxcMmnqWtM=",
"pom": "sha256-i+QBdkYoXZFCx/sibPuARFwXfcfBNjsj2UH6bJuwXc8="
},
"org/codehaus#codehaus-parent/3": {
"pom": "sha256-UOslOs0LbuBI9DLZ/Do7NiZO+z2h/6f7B/bE1LeoyjE="
@@ -579,6 +605,10 @@
"jar": "sha256-YwKKfV6V7sjibuBCSxQfh+nalccYTypaSbtD371TsQQ=",
"pom": "sha256-zMoEy/7Z60gzSM+6aexh9gvdyfPjwJJLZLsZ0cqy4s0="
},
"org/commonmark#commonmark-ext-gfm-tables/0.23.0": {
"jar": "sha256-WfO2Gthywhg7guygUn14GspFThF31xmMl5WydH0XC3s=",
"pom": "sha256-x6/bJCGgs9hFDewHWaPrfBHEqZfTlLd8VR3Bgi3S2Uk="
},
"org/commonmark#commonmark-ext-heading-anchor/0.23.0": {
"jar": "sha256-7O27O1jbcgxhNXwb4boTKlweeczr4B8NPZo25VJCDL0=",
"pom": "sha256-95zHry5Zpgc70UwPNKezU0JDO5FxqhdLYzeHRaVuASw="
@@ -669,9 +699,17 @@
"jar": "sha256-EhJRcOeVUZum3IAQwHC1PHaq6StIXB43Uw5Uq13QjUM=",
"pom": "sha256-EMo7z1F48YUH8hCmOtljeJaFM0OtHBKRoBmhFvIWpUg="
},
"org/junit#junit-bom/5.7.1": {
"module": "sha256-mFTjiU1kskhSB+AEa8oHs9QtFp54L0+oyc4imnj67gQ=",
"pom": "sha256-C5sUo9YhBvr+jGinF7h7h60YaFiZRRt1PAT6QbaFd4Q="
"org/junit#junit-bom/5.11.0": {
"module": "sha256-9+2+Z/IgQnCMQQq8VHQI5cR29An1ViNqEXkiEnSi7S0=",
"pom": "sha256-5nRZ1IgkJKxjdPQNscj0ouiJRrNAugcsgL6TKivkZE0="
},
"org/junit#junit-bom/5.11.0-M2": {
"module": "sha256-hkd6vPSQ1soFmqmXPLEI0ipQb0nRpVabsyzGy/Q8LM4=",
"pom": "sha256-Sj/8Sk7c/sLLXWGZInBqlAcWF5hXGTn4VN/ac+ThfMg="
},
"org/junit#junit-bom/5.11.4": {
"module": "sha256-qaTye+lOmbnVcBYtJGqA9obSd9XTGutUgQR89R2vRuQ=",
"pom": "sha256-GdS3R7IEgFMltjNFUylvmGViJ3pKwcteWTpeTE9eQRU="
},
"org/junit#junit-bom/5.7.2": {
"module": "sha256-87zrHFndT2mT9DBN/6WAFyuN9lp2zTb6T9ksBXjSitg=",
@@ -735,9 +773,9 @@
"jar": "sha256-jK3UOsXrbQneBfrsyji5F6BAu5E5x+3rTMgcdAtxMoE=",
"pom": "sha256-cimwOzCnPukQCActnkVppR2FR/roxQ9SeEGu9MGwuqg="
},
"org/postgresql#postgresql/42.7.3": {
"jar": "sha256-omRMv7obqhRf9+jI71gqbu16fsTKeS9/BUEivex1Ymg=",
"pom": "sha256-wqy2hFfZlqjkntB3flklW3RlCXZSOVHxAa25QHXhWIU="
"org/postgresql#postgresql/42.7.6": {
"jar": "sha256-8qHMA1LdXlxvZdut/ye+4Awy5DLGrQMNB0R/ilmDxCo=",
"pom": "sha256-SfNzCJO2khPK99foymodjHaf9mhCHVJS3gBSvFVGp8c="
},
"org/python#jython-standalone/2.7.4": {
"jar": "sha256-H7oXae/8yLGfXhBDa8gnShWM6YhVnyV5J8JMc7sTfzw=",
+1
View File
@@ -653,6 +653,7 @@ mapAliases {
crystal_1_7 = throw "'crystal_1_7' has been removed as it is obsolete and no longer used in the tree. Consider using 'crystal' instead"; # Added 2025-02-13
crystal_1_8 = throw "'crystal_1_8' has been removed as it is obsolete and no longer used in the tree. Consider using 'crystal' instead"; # Added 2025-02-13
crystal_1_9 = throw "'crystal_1_9' has been removed as it is obsolete and no longer used in the tree. Consider using 'crystal' instead"; # Added 2025-02-13
crystal_1_11 = throw "'crystal_1_11' has been removed as it is obsolete and no longer used in the tree. Consider using 'crystal' instead"; # Added 2025-09-04
crystal_1_12 = throw "'crystal_1_12' has been removed as it is obsolete and no longer used in the tree. Consider using 'crystal' instead"; # Added 2025-02-19
clash-geoip = throw "'clash-geoip' has been removed. Consider using 'dbip-country-lite' instead."; # added 2024-10-19
clash-verge = throw "'clash-verge' has been removed, as it was broken and unmaintained. Consider using 'clash-verge-rev' or 'clash-nyanpasu' instead"; # Added 2024-09-17
+1 -22
View File
@@ -3137,8 +3137,6 @@ with pkgs;
hockeypuck-web = callPackage ../servers/hockeypuck/web.nix { };
homesick = callPackage ../tools/misc/homesick { };
host = bind.host;
hotdoc = python3Packages.callPackage ../development/tools/hotdoc { };
@@ -3169,20 +3167,6 @@ with pkgs;
icepeak = haskell.lib.compose.justStaticExecutables haskellPackages.icepeak;
inherit
(callPackages ../tools/filesystems/irods rec {
stdenv = llvmPackages_13.libcxxStdenv;
libcxx = llvmPackages_13.libcxx;
boost = boost178.override { inherit stdenv; };
fmt = fmt_9.override { inherit stdenv; };
nanodbc_llvm = nanodbc.override { inherit stdenv; };
avro-cpp_llvm = avro-cpp.override { inherit stdenv boost; };
spdlog_llvm = spdlog.override { inherit stdenv fmt; };
})
irods
irods-icommands
;
ihaskell = callPackage ../development/tools/haskell/ihaskell/wrapper.nix {
inherit (haskellPackages) ghcWithPackages;
@@ -3358,8 +3342,6 @@ with pkgs;
kzipmix = pkgsi686Linux.callPackage ../tools/compression/kzipmix { };
mailcatcher = callPackage ../development/web/mailcatcher { };
maskromtool = qt6Packages.callPackage ../tools/graphics/maskromtool { };
matrix-synapse-plugins = recurseIntoAttrs matrix-synapse-unwrapped.plugins;
@@ -4700,7 +4682,6 @@ with pkgs;
corretto21 = javaPackages.compiler.corretto21;
inherit (callPackage ../development/compilers/crystal { })
crystal_1_11
crystal_1_14
crystal_1_15
crystal_1_16
@@ -7125,9 +7106,7 @@ with pkgs;
snowman = qt5.callPackage ../development/tools/analysis/snowman { };
sparse = callPackage ../development/tools/analysis/sparse {
llvm = llvm_14;
};
sparse = callPackage ../development/tools/analysis/sparse { };
speedtest-cli = with python3Packages; toPythonApplication speedtest-cli;
+2
View File
@@ -13292,6 +13292,8 @@ self: super: with self; {
pylibjpeg-openjpeg = callPackage ../development/python-modules/pylibjpeg-openjpeg { };
pylibjpeg-rle = callPackage ../development/python-modules/pylibjpeg-rle { };
pyliblo3 = callPackage ../development/python-modules/pyliblo3 { };
pylibmc = callPackage ../development/python-modules/pylibmc { };