Merge master into staging-nixos

This commit is contained in:
nixpkgs-ci[bot] 2026-03-04 00:24:04 +00:00 committed by GitHub
commit 6a50bc9233
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
163 changed files with 1271 additions and 980 deletions

View file

@ -87,6 +87,8 @@
- `cargo-codspeed` has been updated from `3.0.5` to `4.2.0`. Version `4.0.0` includes breaking changes. For more information read the [changelog for 4.0.0](https://github.com/CodSpeedHQ/codspeed-rust/releases/tag/v4.0.0).
- `commafeed` has been updated to version 7.0.0, which includes changes impacting its security. Please see [upstream's release notes](https://github.com/Athou/commafeed/releases/tag/7.0.0) for details.
- `corepack_latest` has been removed, as Corepack is no longer distributed with Node.js.
- `nodePackages.browser-sync` has been removed, as it was unmaintained within nixpkgs.

View file

@ -3684,6 +3684,12 @@
githubId = 6375609;
name = "Bob van der Linden";
};
bodier123 = {
email = "brubacher.1@gmail.com";
github = "bodier123";
githubId = 71633864;
name = "Bodie";
};
bodil = {
email = "nix@bodil.org";
github = "bodil";
@ -4291,12 +4297,6 @@
}
];
};
cameroncuttingedge = {
email = "buckets-taxiway5l@icloud.com";
github = "cameroncuttingedge";
githubId = 109548666;
name = "Cameron Byte";
};
camerondugan = {
email = "cameron.dugan@protonmail.com";
github = "camerondugan";

View file

@ -135,7 +135,7 @@
- [QGroundControl], a ground station support and configuration manager for the PX4 and APM Flight Stacks. Available as [programs.qgroundcontrol](options.html#opt-programs.qgroundcontrol.enable).
- [Eintopf](https://eintopf.info), a community event and calendar web application. Available as [services.eintopf](options.html#opt-services.eintopf.enable).
- [Eintopf](https://eintopf.info), a community event and calendar web application. Available as `services.eintopf`.
- [`pay-respects`](https://codeberg.org/iff/pay-respects), a terminal command correction program, alternative to `thefuck`, written in Rust. Available as [programs.pay-respects](options.html#opt-programs.pay-respects).

View file

@ -66,6 +66,8 @@
- [Shoko](https://shokoanime.com), an anime management system. Available as [services.shoko](#opt-services.shoko.enable).
- [perses](https://perses.dev/), the open dashboard tool for Prometheus and other data sources. Available as [services.perses](#opt-services.perses.enable).
- [Drasl](https://github.com/unmojang/drasl), an alternative authentication server for Minecraft. Available as [services.drasl](#opt-services.drasl.enable).
## Backward Incompatibilities {#sec-release-26.05-incompatibilities}
@ -78,12 +80,16 @@
- `sing-box` has been updated to 1.13.0, which has removed some deprecated options. See [upstream documentation](https://sing-box.sagernet.org/configuration/) for details and migration options.
- `services.statsd` has been removed because the packages it relies on do not exist anymore in nixpkgs.
- `services.tandoor-recipes` now uses a sub-directory for media files by default starting with `26.05`. Existing setups should move media files out of the data directory and adjust `services.tandoor-recipes.extraConfig.MEDIA_ROOT` accordingly. See [Migrating media files for pre 26.05 installations](#module-services-tandoor-recipes-migrating-media).
- `rustic` was upgraded to `0.11.x`, which contains breaking [changes to command-line parameters and configuration file](https://rustic.cli.rs/docs/breaking_changes.html#0110).
- The packages `iw` and `wirelesstools` (`iwconfig`, `iwlist`, etc.) are no longer installed implicitly if wireless networking has been enabled.
- `services.uptime` has been removed because the package it relies on does not exist anymore in nixpkgs.
- `services.kubernetes.addons.dns.coredns` has been renamed to `services.kubernetes.addons.dns.corednsImage` and now expects a
package instead of attrs. Now, by default, nixpkgs.coredns in conjunction with dockerTools.buildImage is used, instead
of pulling the upstream container image from Docker Hub. If you want the old behavior, you can set:
@ -104,6 +110,8 @@ of pulling the upstream container image from Docker Hub. If you want the old beh
- `systemd.services.stalwart` owned by `stalwart:stalwart`. The `user` and `group` are configurable via `services.stalwart.user` and `services.stalwart.group`, respectively. By default, if `stateVersion` is older than `26.05`, will fallback to legacy value of `stalwart-mail` for both `user` and `group`.
- Default value for `services.stalwart.dataDir` has changed to `/var/lib/stalwart`. If `stateVersion` is older than `26.05`, will fallback to legacy value of `/var/lib/stalwart-mail`.
- `services.eintopf` has been renamed to `services.lauti` to align with upstream re-brand as a community online calendar.
- `services.oauth2-proxy.clientSecret` and `services.oauth2-proxy.cookie.secret` have been replaced with `services.oauth2-proxy.clientSecretFile` and `services.oauth2-proxy.cookie.secretFile` respectively. This was done to ensure secrets don't get made world-readable.
- [`services.grafana.settings.security.secret_key`](#opt-services.grafana.settings.security.secret_key) doesn't have a
@ -205,6 +213,8 @@ See <https://github.com/NixOS/nixpkgs/issues/481673>.
- [services.resolved](#opt-services.resolved.enable) module was converted to RFC42-style settings. The moved options have also been renamed to match the upstream names. Aliases mean current configs will continue to function, but users should move to the new options as convenient.
- `systemd.sleep.extraConfig` was replaced by [RFC 0042](https://github.com/NixOS/rfcs/blob/master/rfcs/0042-config-option.md)-compliant `systemd.sleep.settings.Sleep`, which is used to generate the `sleep.conf` configuration file. See {manpage}`sleep.conf.d(5)` for available options.
- Support for Bluetooth audio based on `bluez-alsa` has been added to the `hardware.alsa` module. It can be enabled with the new [enableBluetooth](#opt-hardware.alsa.enableBluetooth) option.
- `services.openssh` now supports generating host SSH keys by setting `services.openssh.generateHostKeys = true` while leaving `services.openssh.enable` disabled. This is particularly useful for systems that have no need of an SSH daemon but want SSH host keys for other purposes such as using agenix or sops-nix.

View file

@ -1037,6 +1037,7 @@
./services/monitoring/opentelemetry-collector.nix
./services/monitoring/osquery.nix
./services/monitoring/parsedmarc.nix
./services/monitoring/perses.nix
./services/monitoring/pgscv.nix
./services/monitoring/prometheus/alertmanager-gotify-bridge.nix
./services/monitoring/prometheus/alertmanager-irc-relay.nix
@ -1056,7 +1057,6 @@
./services/monitoring/scrutiny.nix
./services/monitoring/smartd.nix
./services/monitoring/snmpd.nix
./services/monitoring/statsd.nix
./services/monitoring/sysstat.nix
./services/monitoring/teamviewer.nix
./services/monitoring/telegraf.nix
@ -1068,7 +1068,6 @@
./services/monitoring/unpoller.nix
./services/monitoring/ups.nix
./services/monitoring/uptime-kuma.nix
./services/monitoring/uptime.nix
./services/monitoring/vlagent.nix
./services/monitoring/vmagent.nix
./services/monitoring/vmalert.nix
@ -1624,7 +1623,6 @@
./services/web-apps/drasl.nix
./services/web-apps/drupal.nix
./services/web-apps/echoip.nix
./services/web-apps/eintopf.nix
./services/web-apps/engelsystem.nix
./services/web-apps/ente.nix
./services/web-apps/fediwall.nix
@ -1679,6 +1677,7 @@
./services/web-apps/lanraragi.nix
./services/web-apps/lasuite-docs.nix
./services/web-apps/lasuite-meet.nix
./services/web-apps/lauti.nix
./services/web-apps/lemmy.nix
./services/web-apps/librechat.nix
./services/web-apps/librespeed.nix

View file

@ -16,9 +16,7 @@ in
programs.npm = {
enable = lib.mkEnableOption "{command}`npm` global config";
package = lib.mkPackageOption pkgs [ "nodePackages" "npm" ] {
example = "nodePackages_13_x.npm";
};
package = lib.mkPackageOption pkgs "nodejs" { };
npmrc = lib.mkOption {
type = lib.types.lines;

View file

@ -319,6 +319,9 @@ in
the program being unmaintained. The options `programs.msmtp.*` can be
used instead.
'')
(mkRemovedOptionModule [ "services" "statsd" ] ''
The statsd module was removed because the packages it uses have been removed from nixpkgs.
'')
(mkRemovedOptionModule [ "services" "sourcehut" ] ''
The sourcehut packages and the corresponding module have been removed due to being broken and unmaintained.
'')
@ -328,6 +331,10 @@ in
(mkRemovedOptionModule [ "services" "unifi-video" ]
"The unifi-video package and the corresponding module have been removed as the software has been unsupported since 2021 and requires a MongoDB version that has reached end of life."
)
(mkRemovedOptionModule [
"services"
"uptime"
] "The package for services.uptime has been removed from nixpkgs.")
(mkRemovedOptionModule [ "services" "venus" ] "The corresponding package was removed from nixpkgs.")
(mkRemovedOptionModule [
"services"

View file

@ -0,0 +1,131 @@
{
pkgs,
lib,
config,
utils,
...
}:
let
inherit (lib)
getExe
mkOption
mkEnableOption
mkPackageOption
mkIf
types
;
cfg = config.services.perses;
settingsFormat = pkgs.formats.yaml { };
configPath = "/run/perses/config.yaml";
secretsReplacement = utils.genJqSecretsReplacement {
loadCredential = true;
} cfg.settings configPath;
in
{
options.services.perses = {
enable = mkEnableOption "perses";
package = mkPackageOption pkgs "perses" { };
port = mkOption {
type = types.port;
default = 8080;
description = ''
Perses Web interface port.
'';
};
listenAddress = mkOption {
type = types.str;
default = "";
description = ''
Address to listen on. Empty string will listen on all interfaces.
'';
};
settings = mkOption {
type = types.submodule {
freeformType = settingsFormat.type;
};
description = ''
Perses settings. See <https://perses.dev/perses/docs/configuration/configuration/> for available options.
You can specify secret values in this configuration by setting `somevalue._secret = "/path/to/file"` instead of setting `somevalue` directly.
'';
default = { };
};
extraOptions = mkOption {
type = types.listOf types.str;
default = [ ];
example = [
"-web.telemetry-path=/metrics"
];
description = "Additional options passed to perses daemon.";
};
};
config = mkIf cfg.enable {
systemd.services.perses = {
description = "Perses Daemon";
wantedBy = [ "multi-user.target" ];
after = [ "networking.target" ];
preStart = secretsReplacement.script;
serviceConfig = rec {
ExecStart = utils.escapeSystemdExecArgs (
[
(getExe cfg.package)
"-config=${configPath}"
"-web.listen-address=${cfg.listenAddress}:${toString cfg.port}"
]
++ cfg.extraOptions
);
User = "perses";
DynamicUser = true;
Restart = "on-failure";
RuntimeDirectory = "perses";
RuntimeDirectoryMode = "0755";
StateDirectory = "perses";
WorkingDirectory = "%S/${StateDirectory}";
LoadCredential = secretsReplacement.credentials;
# Hardening
AmbientCapabilities = mkIf (cfg.port < 1024) [ "CAP_NET_BIND_SERVICE" ];
CapabilityBoundingSet = if (cfg.port < 1024) then [ "CAP_NET_BIND_SERVICE" ] else [ "" ];
LockPersonality = true;
NoNewPrivileges = true;
PrivateDevices = true;
PrivateTmp = true;
ProtectClock = true;
ProtectControlGroups = true;
ProtectHome = true;
ProtectHostname = true;
ProtectKernelLogs = true;
ProtectKernelModules = true;
ProtectKernelTunables = true;
ProtectProc = "invisible";
ProtectSystem = "full";
RemoveIPC = true;
RestrictAddressFamilies = [
"AF_INET"
"AF_INET6"
];
RestrictNamespaces = true;
RestrictRealtime = true;
RestrictSUIDSGID = true;
SystemCallArchitectures = "native";
UMask = "0027";
};
};
environment.systemPackages = [ cfg.package ];
};
}

View file

@ -1,154 +0,0 @@
{
config,
lib,
pkgs,
...
}:
let
cfg = config.services.statsd;
isBuiltinBackend =
name:
builtins.elem name [
"graphite"
"console"
"repeater"
];
backendsToPackages =
let
mkMap = list: name: if isBuiltinBackend name then list else list ++ [ pkgs.nodePackages.${name} ];
in
lib.foldl mkMap [ ];
configFile = pkgs.writeText "statsd.conf" ''
{
address: "${cfg.listenAddress}",
port: "${toString cfg.port}",
mgmt_address: "${cfg.mgmt_address}",
mgmt_port: "${toString cfg.mgmt_port}",
backends: [${
lib.concatMapStringsSep "," (
name: if (isBuiltinBackend name) then ''"./backends/${name}"'' else ''"${name}"''
) cfg.backends
}],
${lib.optionalString (cfg.graphiteHost != null) ''graphiteHost: "${cfg.graphiteHost}",''}
${lib.optionalString (cfg.graphitePort != null) ''graphitePort: "${toString cfg.graphitePort}",''}
console: {
prettyprint: false
},
log: {
backend: "stdout"
},
automaticConfigReload: false${lib.optionalString (cfg.extraConfig != null) ","}
${cfg.extraConfig}
}
'';
deps = pkgs.buildEnv {
name = "statsd-runtime-deps";
pathsToLink = [ "/lib" ];
ignoreCollisions = true;
paths = backendsToPackages cfg.backends;
};
in
{
###### interface
options.services.statsd = {
enable = lib.mkEnableOption "statsd";
listenAddress = lib.mkOption {
description = "Address that statsd listens on over UDP";
default = "127.0.0.1";
type = lib.types.str;
};
port = lib.mkOption {
description = "Port that stats listens for messages on over UDP";
default = 8125;
type = lib.types.port;
};
mgmt_address = lib.mkOption {
description = "Address to run management TCP interface on";
default = "127.0.0.1";
type = lib.types.str;
};
mgmt_port = lib.mkOption {
description = "Port to run the management TCP interface on";
default = 8126;
type = lib.types.port;
};
backends = lib.mkOption {
description = "List of backends statsd will use for data persistence";
default = [ ];
example = [
"graphite"
"console"
"repeater"
"statsd-librato-backend"
"statsd-influxdb-backend"
];
type = lib.types.listOf lib.types.str;
};
graphiteHost = lib.mkOption {
description = "Hostname or IP of Graphite server";
default = null;
type = lib.types.nullOr lib.types.str;
};
graphitePort = lib.mkOption {
description = "Port of Graphite server (i.e. carbon-cache).";
default = null;
type = lib.types.nullOr lib.types.port;
};
extraConfig = lib.mkOption {
description = "Extra configuration options for statsd";
default = "";
type = lib.types.nullOr lib.types.str;
};
};
###### implementation
config = lib.mkIf cfg.enable {
assertions = map (backend: {
assertion = !isBuiltinBackend backend -> lib.hasAttrByPath [ backend ] pkgs.nodePackages;
message = "Only builtin backends (graphite, console, repeater) or backends enumerated in `pkgs.nodePackages` are allowed!";
}) cfg.backends;
users.users.statsd = {
uid = config.ids.uids.statsd;
description = "Statsd daemon user";
};
systemd.services.statsd = {
description = "Statsd Server";
wantedBy = [ "multi-user.target" ];
environment = {
NODE_PATH = "${deps}/lib/node_modules";
};
serviceConfig = {
ExecStart = "${pkgs.statsd}/bin/statsd ${configFile}";
User = "statsd";
};
};
environment.systemPackages = [ pkgs.statsd ];
};
}

View file

@ -1,122 +0,0 @@
{
config,
options,
pkgs,
lib,
...
}:
let
inherit (lib)
literalExpression
mkOption
mkEnableOption
mkIf
mkMerge
types
optional
;
cfg = config.services.uptime;
opt = options.services.uptime;
configDir = pkgs.runCommand "config" { preferLocalBuild = true; } (
if cfg.configFile != null then
''
mkdir $out
ext=`echo ${cfg.configFile} | grep -o \\..*`
ln -sv ${cfg.configFile} $out/default$ext
ln -sv /var/lib/uptime/runtime.json $out/runtime.json
''
else
''
mkdir $out
cat ${pkgs.nodePackages.node-uptime}/lib/node_modules/node-uptime/config/default.yaml > $out/default.yaml
cat >> $out/default.yaml <<EOF
autoStartMonitor: false
mongodb:
connectionString: 'mongodb://localhost/uptime'
EOF
ln -sv /var/lib/uptime/runtime.json $out/runtime.json
''
);
in
{
options.services.uptime = {
configFile = mkOption {
description = ''
The uptime configuration file
If mongodb: server != localhost, please set usesRemoteMongo = true
If you only want to run the monitor, please set enableWebService = false
and enableSeparateMonitoringService = true
If autoStartMonitor: false (recommended) and you want to run both
services, please set enableSeparateMonitoringService = true
'';
type = types.nullOr types.path;
default = null;
};
usesRemoteMongo = mkOption {
description = "Whether the configuration file specifies a remote mongo instance";
default = false;
type = types.bool;
};
enableWebService = mkEnableOption "the uptime monitoring program web service";
enableSeparateMonitoringService = mkEnableOption "the uptime monitoring service" // {
default = cfg.enableWebService;
defaultText = literalExpression "config.${opt.enableWebService}";
};
nodeEnv = mkOption {
description = "The node environment to run in (development, production, etc.)";
type = types.str;
default = "production";
};
};
config = mkMerge [
(mkIf cfg.enableWebService {
systemd.services.uptime = {
description = "uptime web service";
wantedBy = [ "multi-user.target" ];
environment = {
NODE_CONFIG_DIR = configDir;
NODE_ENV = cfg.nodeEnv;
NODE_PATH = "${pkgs.nodePackages.node-uptime}/lib/node_modules/node-uptime/node_modules";
};
preStart = "mkdir -p /var/lib/uptime";
serviceConfig.ExecStart = "${pkgs.lib.getExe pkgs.nodejs-slim} ${pkgs.nodePackages.node-uptime}/lib/node_modules/node-uptime/app.js";
};
services.mongodb.enable = mkIf (!cfg.usesRemoteMongo) true;
})
(mkIf cfg.enableSeparateMonitoringService {
systemd.services.uptime-monitor = {
description = "uptime monitoring service";
wantedBy = [ "multi-user.target" ];
requires = optional cfg.enableWebService "uptime.service";
after = optional cfg.enableWebService "uptime.service";
environment = {
NODE_CONFIG_DIR = configDir;
NODE_ENV = cfg.nodeEnv;
NODE_PATH = "${pkgs.nodePackages.node-uptime}/lib/node_modules/node-uptime/node_modules";
};
# Ugh, need to wait for web service to be up
preStart = if cfg.enableWebService then "sleep 1s" else "mkdir -p /var/lib/uptime";
serviceConfig.ExecStart = "${pkgs.lib.getExe pkgs.nodejs-slim} ${pkgs.nodePackages.node-uptime}/lib/node_modules/node-uptime/monitor.js";
};
})
];
}

View file

@ -61,7 +61,7 @@ in
'';
serviceConfig = {
ExecStart = "${pkgs.nodePackages.peerflix-server}/bin/peerflix-server";
ExecStart = "${pkgs.peerflix-server}/bin/peerflix-server";
User = "peerflix";
};
};

View file

@ -9,13 +9,30 @@ with lib;
let
cfg = config.services.eintopf;
cfg = config.services.lauti;
useLegacyDefault = lib.versionOlder config.system.stateVersion "26.05";
default = if useLegacyDefault then "eintopf" else "lauti";
in
{
options.services.eintopf = {
enable = mkEnableOption "Lauti (Eintopf) community event calendar web app";
imports = [
# since 0.12.0 (2025-05-26) release, upstream re-branded project to 'stalwart' due to inclusion of collaboration features (CalDAV, CardDAV, and WebDAV)
# https://github.com/stalwartlabs/stalwart/releases/tag/v0.12.0
(lib.mkRenamedOptionModule [ "services" "eintopf" ] [ "services" "lauti" ])
];
options.services.lauti = {
enable = mkEnableOption "Lauti community event calendar web app";
dataDir = lib.mkOption {
type = lib.types.path;
default = if useLegacyDefault then "/var/lib/eintopf" else "/var/lib/lauti";
description = ''
Data directory for Lauti
'';
};
settings = mkOption {
type = types.attrsOf types.str;
@ -27,9 +44,9 @@ in
'';
example = literalExpression ''
{
EINTOPF_ADDR = ":1234";
EINTOPF_ADMIN_EMAIL = "admin@example.org";
EINTOPF_TIMEZONE = "Europe/Berlin";
LAUTI_ADDR = ":1234";
LAUTI_ADMIN_EMAIL = "admin@example.org";
LAUTI_TIMEZONE = "Europe/Berlin";
}
'';
};
@ -47,7 +64,7 @@ in
config = mkIf cfg.enable {
systemd.services.eintopf = {
systemd.services.lauti = {
description = "Community event calendar web app";
wantedBy = [ "multi-user.target" ];
after = [ "network-online.target" ];
@ -55,8 +72,8 @@ in
environment = cfg.settings;
serviceConfig = {
ExecStart = lib.getExe pkgs.lauti;
WorkingDirectory = "/var/lib/eintopf";
StateDirectory = "eintopf";
WorkingDirectory = cfg.dataDir;
StateDirectory = default;
EnvironmentFile = [ cfg.secrets ];
# hardening

View file

@ -1,7 +1,6 @@
{
config,
lib,
pkgs,
utils,
...
}:
@ -14,12 +13,15 @@ let
elem
isList
literalExpression
mapAttrs'
mapAttrsToList
mkIf
mkMerge
mkOption
mkOrder
mkRenamedOptionModule
mkRemovedOptionModule
nameValuePair
optionalAttrs
types
;
@ -132,6 +134,27 @@ in
};
};
dnsDelegates = mkOption {
description = ''
dns-delegate files to be created.
See {manpage}`systemd.dns-delegate(5)` for more info.
'';
default = { };
type = types.attrsOf (
types.submodule {
options.Delegate = mkOption {
description = ''
Settings option for systemd dns-delegate files.
See {manpage}`systemd.dns-delegate(5)` for all available options.
'';
type = types.submodule {
freeformType = types.attrsOf unitOption;
};
};
}
);
};
};
boot.initrd.services.resolved.enable = mkOption {
@ -167,7 +190,12 @@ in
systemd.services.systemd-resolved = {
wantedBy = [ "sysinit.target" ];
aliases = [ "dbus-org.freedesktop.resolve1.service" ];
reloadTriggers = [ config.environment.etc."systemd/resolved.conf".source ];
reloadTriggers = [
config.environment.etc."systemd/resolved.conf".source
]
++ mapAttrsToList (
name: _: config.environment.etc."systemd/dns-delegate.d/${name}.dns-delegate".source
) cfg.dnsDelegates;
stopIfChanged = false;
};
@ -180,7 +208,13 @@ in
}
// optionalAttrs dnsmasqResolve {
"dnsmasq-resolv.conf".source = "/run/systemd/resolve/resolv.conf";
};
}
// mapAttrs' (
name: value:
nameValuePair "systemd/dns-delegate.d/${name}.dns-delegate" {
text = settingsToSections (transformSettings value);
}
) cfg.dnsDelegates;
# If networkmanager is enabled, ask it to interface with resolved.
networking.networkmanager.dns = "systemd-resolved";

View file

@ -470,13 +470,17 @@ in
'';
};
sleep.extraConfig = mkOption {
default = "";
type = types.lines;
example = "HibernateDelaySec=1h";
sleep.settings.Sleep = mkOption {
default = { };
type = lib.types.submodule {
freeformType = types.attrsOf unitOption;
};
example = {
HibernateDelaySec = "1h";
};
description = ''
Extra config options for systemd sleep state logic.
See {manpage}`sleep.conf.d(5)` man page for available options.
Options for systemd sleep state logic. See {manpage}`sleep.conf.d(5)` man page
for available options.
'';
};
@ -637,10 +641,7 @@ in
"systemd/system.conf".text = settingsToSections cfg.settings;
"systemd/sleep.conf".text = ''
[Sleep]
${cfg.sleep.extraConfig}
'';
"systemd/sleep.conf".text = settingsToSections cfg.sleep.settings;
"systemd/user-generators" = {
source = hooks "user-generators" cfg.user.generators;
@ -878,6 +879,11 @@ in
NixOS does not officially support this configuration and might cause your system to be unbootable in future versions. You are on your own.
'')
(mkRemovedOptionModule [ "systemd" "extraConfig" ] "Use systemd.settings.Manager instead.")
(mkRemovedOptionModule [
"systemd"
"sleep"
"extraConfig"
] "Use systemd.sleep.settings.Sleep instead.")
(lib.mkRenamedOptionModule
[ "systemd" "watchdog" "device" ]
[ "systemd" "settings" "Manager" "WatchdogDevice" ]

View file

@ -1249,6 +1249,7 @@ in
peerflix = runTest ./peerflix.nix;
peering-manager = runTest ./web-apps/peering-manager.nix;
peertube = handleTestOn [ "x86_64-linux" ] ./web-apps/peertube.nix { };
perses = runTest ./perses.nix;
pgadmin4 = runTest ./pgadmin4.nix;
pgbackrest = import ./pgbackrest { inherit runTest; };
pgbouncer = runTest ./pgbouncer.nix;

View file

@ -5,20 +5,20 @@
}:
{
name = "eintopf";
name = "lauti";
meta.maintainers = with lib.maintainers; [ onny ];
nodes = {
eintopf = {
services.eintopf.enable = true;
lauti = {
services.lauti.enable = true;
};
};
testScript = ''
eintopf.start
eintopf.wait_for_unit("eintopf.service")
eintopf.wait_for_open_port(3333)
eintopf.succeed("curl -sSfL http://eintopf:3333 | grep 'No events available'")
lauti.start
lauti.wait_for_unit("lauti.service")
lauti.wait_for_open_port(3333)
lauti.succeed("curl -sSfL http://lauti:3333 | grep 'No events available'")
'';
}

65
nixos/tests/perses.nix Normal file
View file

@ -0,0 +1,65 @@
{ pkgs, lib, ... }:
{
name = "perses";
meta.maintainers = with lib.maintainers; [ fooker ];
nodes.prometheus = {
services.prometheus.enable = true;
networking.firewall.allowedTCPPorts = [ 9090 ];
};
nodes.machine = {
services.perses = {
enable = true;
settings.provisioning.folders = [
(pkgs.writeTextDir "perses-test-provision-project.yaml" ''
kind: "Project"
metadata:
name: "my-project"
'')
(pkgs.writeTextDir "perses-test-provision-datasource.yaml" ''
kind: "Datasource"
metadata:
name: "my-prometheus"
project: "my-project"
spec:
default: true
plugin:
kind: "PrometheusDatasource"
spec:
proxy:
kind: "HTTPProxy"
spec:
url: "http://prometheus:9090/"
'')
];
};
};
testScript = ''
start_all()
prometheus.wait_for_unit("prometheus.service")
prometheus.wait_for_open_port(9090)
with subtest("Perses starts"):
machine.wait_for_unit("perses.service")
machine.wait_for_open_port(8080)
machine.succeed("percli login http://127.0.0.1:8080")
machine.succeed("percli version")
machine.succeed("percli config")
machine.succeed("percli plugin list | grep 'Prometheus'")
with subtest("Query resources"):
machine.succeed("percli get projects | grep my-project")
machine.succeed("percli project my-project")
machine.succeed("percli get datasources | grep my-prometheus")
machine.succeed("curl --fail -s 127.0.0.1:8080/api/v1/projects/my-project/datasources/my-prometheus")
with subtest("Datasource check"):
machine.succeed("curl --fail -s http://127.0.0.1:8080/proxy/projects/my-project/datasources/my-prometheus/api/v1/status/config")
'';
}

View file

@ -36,13 +36,48 @@
};
};
nodes.delegate_server =
{ lib, config, ... }:
let
delegateZone = pkgs.writeTextDir "delegated.example.org.zone" ''
@ SOA ns.delegated.example.org. noc.delegated.example.org. 2019031301 86400 7200 3600000 172800
test A ${(lib.head config.networking.interfaces.eth1.ipv4.addresses).address}
test AAAA ${(lib.head config.networking.interfaces.eth1.ipv6.addresses).address}
'';
in
{
networking.firewall.enable = false;
networking.useDHCP = false;
networking.interfaces.eth1.ipv6.addresses = lib.mkForce [
{
address = "fd00::3";
prefixLength = 64;
}
];
services.knot = {
enable = true;
settings = {
server.listen = [
"0.0.0.0@53"
"::@53"
];
template.default.storage = delegateZone;
zone."delegated.example.org".file = "delegated.example.org.zone";
};
};
};
nodes.client =
{ nodes, ... }:
let
inherit (lib.head nodes.server.networking.interfaces.eth1.ipv4.addresses) address;
serverAddress = (lib.head nodes.server.networking.interfaces.eth1.ipv4.addresses).address;
delegateAddress =
(lib.head nodes.delegate_server.networking.interfaces.eth1.ipv4.addresses).address;
in
{
networking.nameservers = [ address ];
networking.nameservers = [ serverAddress ];
networking.interfaces.eth1.ipv6.addresses = lib.mkForce [
{
address = "fd00::2";
@ -51,6 +86,12 @@
];
services.resolved.enable = true;
services.resolved.settings.Resolve.FallbackDNS = [ ];
services.resolved.dnsDelegates.example-org = {
Delegate = {
DNS = delegateAddress;
Domains = [ "delegated.example.org" ];
};
};
networking.useNetworkd = true;
networking.useDHCP = false;
systemd.network.networks."40-eth0".enable = false;
@ -69,23 +110,35 @@
let
address4 = (lib.head nodes.server.networking.interfaces.eth1.ipv4.addresses).address;
address6 = (lib.head nodes.server.networking.interfaces.eth1.ipv6.addresses).address;
delegateAddress4 =
(lib.head nodes.delegate_server.networking.interfaces.eth1.ipv4.addresses).address;
delegateAddress6 =
(lib.head nodes.delegate_server.networking.interfaces.eth1.ipv6.addresses).address;
in
#python
''
start_all()
server.wait_for_unit("multi-user.target")
delegate_server.wait_for_unit("multi-user.target")
def test_client():
query = client.succeed("resolvectl query example.com")
assert "${address4}" in query
assert "${address6}" in query
client.succeed("ping -4 -c 1 example.com")
client.succeed("ping -6 -c 1 example.com")
def test_resolve(domain, expected_addrs):
query = client.succeed(f"resolvectl query {domain}")
for addr in expected_addrs:
assert addr in query, f"Expected {addr} in: {query}"
client.succeed(f"ping -4 -c 1 {domain}")
client.succeed(f"ping -6 -c 1 {domain}")
with subtest("resolve in initrd"):
client.wait_for_unit("initrd.target")
test_resolve("example.com", ["${address4}", "${address6}"])
client.wait_for_unit("initrd.target")
test_client()
client.switch_root()
client.wait_for_unit("multi-user.target")
test_client()
with subtest("resolve after switch-root"):
client.wait_for_unit("multi-user.target")
test_resolve("example.com", ["${address4}", "${address6}"])
with subtest("dns-delegate resolves delegated subdomain"):
test_resolve("test.delegated.example.org", ["${delegateAddress4}", "${delegateAddress6}"])
'';
}

View file

@ -14139,6 +14139,19 @@ final: prev: {
meta.hydraPlatforms = [ ];
};
screensaver-nvim = buildVimPlugin {
pname = "screensaver.nvim";
version = "0-unstable-2026-03-02";
src = fetchFromGitHub {
owner = "Root-lee";
repo = "screensaver.nvim";
rev = "38cf0b8a96b5f4a5e765ce32d43a416441462179";
hash = "sha256-4eiGIhy/J7wZm++wMx4zAKp5qeDQCApwPSVm8P5w5O0=";
};
meta.homepage = "https://github.com/Root-lee/screensaver.nvim/";
meta.hydraPlatforms = [ ];
};
scretch-nvim = buildVimPlugin {
pname = "scretch.nvim";
version = "1.2.3-unstable-2025-09-11";

View file

@ -3303,6 +3303,14 @@ assertNoAdditions {
dependencies = [ self.plenary-nvim ];
};
screensaver-nvim = super.screensaver-nvim.overrideAttrs (old: {
meta = old.meta // {
description = "Screensaver plugin for Neovim";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ m3l6h ];
};
});
scretch-nvim = super.scretch-nvim.overrideAttrs {
};

View file

@ -1086,6 +1086,7 @@ https://github.com/lewis6991/satellite.nvim/,HEAD,
https://github.com/cenk1cenk2/schema-companion.nvim/,HEAD,
https://github.com/davidgranstrom/scnvim/,HEAD,
https://github.com/tiagovla/scope.nvim/,HEAD,
https://github.com/Root-lee/screensaver.nvim/,HEAD,
https://github.com/0xJohnnyboy/scretch.nvim/,HEAD,
https://github.com/Xuyuanp/scrollbar.nvim/,,
https://github.com/cakebaker/scss-syntax.vim/,,

View file

@ -4322,8 +4322,8 @@ let
mktplcRef = {
publisher = "sonarsource";
name = "sonarlint-vscode";
version = "4.43.0";
hash = "sha256-cpd8+fbp57l+XYBuDnz95lmKzJ8IUHu937KWHsLXrPk=";
version = "4.44.0";
hash = "sha256-6P29hCcOpEWNXSArnMPiWVwbbyhzlS1LCh3uSDWEfJo=";
};
meta.license = lib.licenses.lgpl3Only;
};

View file

@ -5,13 +5,13 @@
}:
mkLibretroCore {
core = "puae";
version = "0-unstable-2025-11-02";
version = "0-unstable-2026-02-27";
src = fetchFromGitHub {
owner = "libretro";
repo = "libretro-uae";
rev = "0043cf9c061bd9b81dbc1869c2761017139cfc63";
hash = "sha256-xi/7zT+4LNfSMwfA+rvxdvsgpQRHceK6Heqrcy84RVk=";
rev = "bea8c084beaf576f54dc1be42d715d424265cda2";
hash = "sha256-CU/BVXys7VBra4qaMBjTgKQP1hke7+wqJ2RMYUXIXlo=";
};
makefile = "Makefile";

View file

@ -8,16 +8,16 @@
rustPlatform.buildRustPackage rec {
pname = "kubectl-view-allocations";
version = "1.0.0";
version = "1.1.0";
src = fetchFromGitHub {
owner = "davidB";
repo = "kubectl-view-allocations";
tag = version;
hash = "sha256-R4pxbIUY9QEsblbVv2/QbWZv7A/ZDQmUnOCYB34RkdE=";
hash = "sha256-AZsieePjIFY3xXG39tfwSvRcNgLdvEQSKALXgRCkuc4=";
};
cargoHash = "sha256-liExE40Ldel1G4RT3P1y5Da65RJSrc7HD+52SwW0oeg=";
cargoHash = "sha256-0bStmuLFkYsyd7rJlHA7/rXGtlh2CvjXWPnDwoq33v4=";
doInstallCheck = true;
nativeInstallCheckInputs = [ versionCheckHook ];

View file

@ -1031,11 +1031,11 @@
"vendorHash": "sha256-ofzbDmivXgH1i1Gjhpyp0bk3FDs5SnxwoRuNAWyMqyI="
},
"opentelekomcloud_opentelekomcloud": {
"hash": "sha256-ak1shQaEyxYHAwZKg5ELh9y7nvpfwuPk3TGDpcm3GY4=",
"hash": "sha256-EVHAWkNScPJCwHvmW1Lt/9qVwYjxDxtTTa3SC1dLSXw=",
"homepage": "https://registry.terraform.io/providers/opentelekomcloud/opentelekomcloud",
"owner": "opentelekomcloud",
"repo": "terraform-provider-opentelekomcloud",
"rev": "v1.36.59",
"rev": "v1.36.60",
"spdx": "MPL-2.0",
"vendorHash": "sha256-WPVk+wlAK6O2xXjyXekYu9svpEg0AFz9EnDGGTS9I3c="
},

View file

@ -12,7 +12,7 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "arti";
version = "2.0.0";
version = "2.1.0";
src = fetchFromGitLab {
domain = "gitlab.torproject.org";
@ -20,10 +20,10 @@ rustPlatform.buildRustPackage (finalAttrs: {
owner = "core";
repo = "arti";
tag = "arti-v${finalAttrs.version}";
hash = "sha256-eqCQwBP/QLxBwjGvksFwNwNSCng/pf19DiBQ+tA4a7M=";
hash = "sha256-+VAuMeGaAZUaDktBvv6KIs7wklenr38emgJHbLWA2sU=";
};
cargoHash = "sha256-0CxlvTetxXM+xe6r98T6hzoD/IGfYkI9TqqUe+u1U2I=";
cargoHash = "sha256-4ii9Cr5ZNXuy4sKdOeZQat8N0kdR0E1TS3Q6nuV+ZHw=";
nativeBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [ pkg-config ];

View file

@ -8,16 +8,16 @@
buildGoModule (finalAttrs: {
pname = "auth0-cli";
version = "1.27.2";
version = "1.28.0";
src = fetchFromGitHub {
owner = "auth0";
repo = "auth0-cli";
tag = "v${finalAttrs.version}";
hash = "sha256-Se3jLcMU+KDkaF5UY18KWs/Q+YK3782e7cKc9BxaYqY=";
hash = "sha256-FqMfnousaJg0u8W3o2lR8REIGFThq3vhsQFN1Je65Q8=";
};
vendorHash = "sha256-Us6NJiSfOK1BBRyrYil26HGaZAgum6k3B5LdV60rCeA=";
vendorHash = "sha256-PrcGZ1UJb9fsp7ZsAAxH5VzumDwn/mkyoKVvniuPQrg=";
ldflags = [
"-s"

View file

@ -7,6 +7,7 @@
cinny,
desktop-file-utils,
wrapGAppsHook3,
makeBinaryWrapper,
pkg-config,
openssl,
glib-networking,
@ -53,7 +54,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
postInstall =
lib.optionalString stdenv.hostPlatform.isDarwin ''
mkdir -p "$out/bin"
ln -sf "$out/Applications/Cinny.app/Contents/MacOS/Cinny" "$out/bin/cinny"
makeWrapper "$out/Applications/Cinny.app/Contents/MacOS/Cinny" "$out/bin/cinny"
''
+ lib.optionalString stdenv.hostPlatform.isLinux ''
desktop-file-edit \
@ -75,6 +76,9 @@ rustPlatform.buildRustPackage (finalAttrs: {
desktop-file-utils
pkg-config
wrapGAppsHook3
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
makeBinaryWrapper
];
buildInputs = lib.optionals stdenv.hostPlatform.isLinux [

View file

@ -5,7 +5,7 @@
"packages": {
"": {
"dependencies": {
"codebuff": "^1.0.615"
"codebuff": "^1.0.623"
}
},
"node_modules/@isaacs/fs-minipass": {
@ -30,9 +30,9 @@
}
},
"node_modules/codebuff": {
"version": "1.0.615",
"resolved": "https://registry.npmjs.org/codebuff/-/codebuff-1.0.615.tgz",
"integrity": "sha512-AT/26v1mINZyCJurlvTqQo7ga7EGH9UtC+IHppVAnwDZ9XNzZim5/y4EfDUHUnJM5tH1mCnWwsYQVk4X0BeNkw==",
"version": "1.0.623",
"resolved": "https://registry.npmjs.org/codebuff/-/codebuff-1.0.623.tgz",
"integrity": "sha512-2X9DAYduW0uWmEgXFPnq1fS+/aqsFiW38eHSDy2b0Zs18qx623VBx/Stu39sSWrwj20nH0Gzua1YYXXzxoen9A==",
"cpu": [
"x64",
"arm64"

View file

@ -6,14 +6,14 @@
buildNpmPackage rec {
pname = "codebuff";
version = "1.0.615";
version = "1.0.623";
src = fetchzip {
url = "https://registry.npmjs.org/codebuff/-/codebuff-${version}.tgz";
hash = "sha256-4nO7OFr4NDwUo70wHKRJGiGRvKaqOXog0evn5kotxY8=";
hash = "sha256-UWYEgtxBIau8a0VN24J+ms4czUj0Dt0PVVq5v5RLfFc=";
};
npmDepsHash = "sha256-VoxULd9oOMvR8LLl6F6XuSM6nkqe+7mXgVFjWjeqdNE=";
npmDepsHash = "sha256-kcbYnpyXHLAaVZkay1254SghxdFy/cuUpyt8hLDSISI=";
postPatch = ''
cp ${./package-lock.json} package-lock.json

View file

@ -1,5 +1,5 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p nodePackages.npm nix-update
#!nix-shell -i bash -p nodejs nix-update
set -euo pipefail

View file

@ -9,15 +9,16 @@
unzip,
nixosTests,
writeText,
stdenv,
}:
let
version = "6.2.0";
version = "7.0.0";
src = fetchFromGitHub {
owner = "Athou";
repo = "commafeed";
tag = version;
hash = "sha256-M5p3nzlEIuIEMADZyQUqE6WAzlMmP/e4Zh9J8nbhZ9Q=";
hash = "sha256-hoRaegcpimIYfUv81txgXSSdwX8iCU4K5EtZMyozjFQ=";
};
frontend = buildNpmPackage {
@ -27,7 +28,7 @@ let
sourceRoot = "${src.name}/commafeed-client";
npmDepsHash = "sha256-XkUlsRdqIXwVExvSofZJLKMUSzjxJRRpV549UTP9Cjo=";
npmDepsHash = "sha256-z6W0xyOpGbTogqZ0UgVQMNPXjwLW0ulpwLBtXvf00bQ=";
nativeBuildInputs = [ biome ];
@ -53,7 +54,7 @@ maven.buildMavenPackage {
pname = "commafeed";
mvnHash = "sha256-vZ7BPA2N3jgRnTwF3k9En2Pn+zTrXbtB9FGbmU4wJgY=";
mvnHash = "sha256-YY/etqDtnobarg8Cj4vDv7rmzPrOqz6YCyAxjIQlzeU=";
mvnJdk = jdk25;
mvnParameters = lib.escapeShellArgs [
@ -100,5 +101,6 @@ maven.buildMavenPackage {
license = lib.licenses.asl20;
mainProgram = "commafeed";
maintainers = [ ];
broken = stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isAarch64;
};
}

View file

@ -7,7 +7,7 @@
git,
}:
let
version = "1.1.10";
version = "1.1.11";
in
rustPlatform.buildRustPackage {
pname = "committed";
@ -17,10 +17,10 @@ rustPlatform.buildRustPackage {
owner = "crate-ci";
repo = "committed";
tag = "v${version}";
hash = "sha256-shYfKpQl0hv9m/x9UuWFksdNB6mkeQPFPP16vGxUbVw=";
hash = "sha256-6uWiZRvR7QszZQbGwo+fPbKtr+wsIHVl6iomODz2cu0=";
};
cargoHash = "sha256-CK/vYcxYXE/hEq1h9mgwrYyeS36hfiYC8WDJN9iNH6s=";
cargoHash = "sha256-qV5WaszJ/VeC6XkgBim3IRmDCU7ieAIGl7Vr5t1F8Ow=";
nativeCheckInputs = [
git

View file

@ -11,16 +11,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "convco";
version = "0.6.2";
version = "0.6.3";
src = fetchFromGitHub {
owner = "convco";
repo = "convco";
rev = "v${finalAttrs.version}";
hash = "sha256-giVaDOYYH3YE9Gy0byt92vGEfyM4rTjpHDsKm5lqlP4=";
hash = "sha256-fJrP4XtlUX0RvH8T76YxqUCM/R+QvUpsaumn3Z1SOh0=";
};
cargoHash = "sha256-DTeZDpS3OaGcem9AaAPFN+2AWuqWSGfk2KknbcgFzi0=";
cargoHash = "sha256-ySTXy8Jqw/EZl/olbWjMaDD8dryUFyWFvyapfvglFHI=";
nativeBuildInputs = [
cmake

View file

@ -13,11 +13,11 @@
}:
stdenv.mkDerivation (finalAttrs: {
pname = "copybara";
version = "20260216";
version = "20260302";
src = fetchurl {
url = "https://github.com/google/copybara/releases/download/v${finalAttrs.version}/copybara_deploy.jar";
hash = "sha256-M36kpWy2LWUQt4gGBQexY+ZmYaJbwJDEu/QcdLhEBxQ=";
hash = "sha256-hThILMYr9XoTMOvTBEySLivEc0iPTD0Vhmpi8hwl5zY=";
};
nativeBuildInputs = [
@ -69,7 +69,7 @@ stdenv.mkDerivation (finalAttrs: {
homepage = "https://github.com/google/copybara";
changelog = "https://github.com/google/copybara/releases/tag/v${finalAttrs.version}";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ cameroncuttingedge ];
maintainers = [ ];
platforms = lib.platforms.all;
mainProgram = "copybara";
sourceProvenance = with lib.sourceTypes; [ binaryBytecode ];

View file

@ -10,11 +10,11 @@
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "daisydisk";
version = "4.33.2";
version = "4.33.3";
src = fetchzip {
url = "https://daisydiskapp.com/download/DaisyDisk.zip";
hash = "sha256-YkXjaDbnwkQUsfhzCA5xQ6C6NGjQV6qj7znyjcKgwIg=";
hash = "sha256-2QhaY4oQV+bkvcyC88Zsk7eZJ6dySsb5G2+juH8HNjI=";
stripRoot = false;
};

View file

@ -55,7 +55,7 @@ let
davinci = (
stdenv.mkDerivation rec {
pname = "davinci-resolve${lib.optionalString studioVariant "-studio"}";
version = "20.3.1";
version = "20.3.2";
nativeBuildInputs = [
appimageTools.appimage-exec
@ -77,9 +77,9 @@ let
outputHashAlgo = "sha256";
outputHash =
if studioVariant then
"sha256-JaP0O+bSc9wd2YTqRwRQo35kdDkq//5WMb+7MtC9S/A="
"sha256-wUrx/cMIyMI+sYi8n8xHH4Q7c0MSAoGbpI0E1NtzcXg="
else
"sha256-3mZWP58UZYS4U1f9M3TZ9wyto0cGy+KdB+GIJlvCVng=";
"sha256-q3/QFUFmTuToIhc+r9L5/DCqpRjbLfECVxhlburly7M=";
impureEnvVars = lib.fetchers.proxyImpureEnvVars;

View file

@ -2,6 +2,7 @@
lib,
stdenv,
fetchFromGitHub,
fetchpatch,
cmake,
pkg-config,
spdlog,
@ -35,6 +36,22 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-CK7YEtJtrx/Mto72RHT4Qjg5StO28Et+FeCYxk5T+8s=";
};
patches = [
# Fix wrong span extent in _lift_bc_interior_facets
# https://github.com/FEniCS/dolfinx/pull/4102
(fetchpatch {
url = "https://github.com/FEniCS/dolfinx/commit/6daca34a075a6dcdfdf77feb13d55d5dbd20e4dd.patch";
hash = "sha256-b/C1MqslS2OBCt+kK/+vJjW8pmsJx2FQ36qDtFA1ewI=";
includes = [ "cpp/dolfinx/fem/assemble_vector_impl.h" ];
})
# Fix hdf5 interface for rank 1
# https://github.com/FEniCS/dolfinx/pull/4043
(fetchpatch {
url = "https://github.com/FEniCS/dolfinx/commit/fce7c44f220d4cb94c5149ad28cd1ab00909c319.patch";
hash = "sha256-EVm4Rx5UO/3pKIVvjgYAkN+i5QR+u0Nxwxotlf41t+Q=";
})
];
nativeBuildInputs = [
cmake
pkg-config

View file

@ -2,6 +2,7 @@
lib,
stdenvNoCC,
fetchFromGitHub,
installFonts,
python3,
ttfautohint-nox,
}:
@ -16,7 +17,13 @@ stdenvNoCC.mkDerivation (finalAttrs: {
hash = "sha256-ajieKhTeH6yv2qiE2xqnHFoMS65//4ZKiccAlC2PXGQ=";
};
outputs = [
"out"
"webfont"
];
nativeBuildInputs = [
installFonts
(python3.withPackages (p: [ p.fontforge ]))
ttfautohint-nox
];
@ -32,13 +39,10 @@ stdenvNoCC.mkDerivation (finalAttrs: {
runHook postBuild
'';
# installFonts adds a hook to `postInstall` that installs fonts
# into the correct directories
installPhase = ''
runHook preInstall
install -Dm644 build/*.ttf -t $out/share/fonts/truetype
install -Dm644 build/*.otf -t $out/share/fonts/opentype
install -Dm644 build/*.woff -t $out/share/fonts/woff
runHook postInstall
'';

View file

@ -7,11 +7,11 @@
stdenv.mkDerivation (finalAttrs: {
pname = "entr";
version = "5.7";
version = "5.8";
src = fetchurl {
url = "https://eradman.com/entrproject/code/entr-${finalAttrs.version}.tar.gz";
hash = "sha256-kMXZQ4IMcM7zfrQaOCpupPXdf9le/vE7K1Ug0yD10Gc=";
hash = "sha256-3Jor3FVrK+kAwdjN9DLeJkkt5a8/+t4ADUv9l/MSK/s=";
};
postPatch = ''

View file

@ -19,7 +19,7 @@
stdenv.mkDerivation (finalAttrs: {
pname = "erofs-utils";
version = "1.9";
version = "1.9.1";
outputs = [
"out"
"man"
@ -30,7 +30,7 @@ stdenv.mkDerivation (finalAttrs: {
src = fetchurl {
url = "https://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs-utils.git/snapshot/erofs-utils-${finalAttrs.version}.tar.gz";
hash = "sha256-0byEtdYLyuEhp/V+qX1BVRiQh+F4+BJ/MIRtn1N8nXM=";
hash = "sha256-qe9atnxLjS0+ntcfOc0Ai9plMUKnINijlaNvERDQxDI=";
};
nativeBuildInputs = [

View file

@ -10,13 +10,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "faudio";
version = "26.02";
version = "26.03";
src = fetchFromGitHub {
owner = "FNA-XNA";
repo = "FAudio";
tag = finalAttrs.version;
hash = "sha256-m7kIzdgRfYQ+OEIH6+VlbLpTMINRb6u/5aSWjbjYiTg=";
hash = "sha256-sJR3GdTC5/bTGj4J1ENxGn+U3l2vcqEgAb//btpJxnA=";
};
nativeBuildInputs = [ cmake ];

View file

@ -2,6 +2,7 @@
lib,
stdenvNoCC,
fetchFromGitHub,
installFonts,
}:
stdenvNoCC.mkDerivation (finalAttrs: {
@ -15,22 +16,9 @@ stdenvNoCC.mkDerivation (finalAttrs: {
hash = "sha256-owzoM0zfKYxLJCQbL1eUE0cdSLVmm+QNRUGxbsNJ37I=";
};
sourceRoot = "fonts";
sourceRoot = "source/fonts";
setSourceRoot = "sourceRoot=$(pwd)";
installPhase = ''
runHook preInstall
find . -type f -iname '*.ttf' | while read f; do
d="$out/share/fonts/truetype/figtree/$(basename "$f")"
install -Dm644 -D "$f" "$d"
done
find . -type f -iname '*.otf' | while read f; do
d="$out/share/fonts/opentype/figtree/$(basename "$f")"
install -Dm644 -D "$f" "$d"
done
runHook postInstall
'';
nativeBuildInputs = [ installFonts ];
meta = {
homepage = "https://github.com/erikdkennedy/figtree";

View file

@ -86,20 +86,20 @@ let
in
linkFarm name [
{
name = "flow_syntax-0.1.0-X8jOoU8VAQCOYNTiuB7y2aIBP1V3OXXHa8WvE3eXtpDK";
name = "flow_syntax-0.6.0-X8jOoWgVAQBBTuGGE9r1ECSDFzi8z6_XNCW1oF5B4fL8";
path = fetchZigArtifact {
name = "syntax";
url = "git+https://github.com/neurocyte/flow-syntax?ref=master#10b92330cf0ecaa39a52d3a8d190f7fb384b7b09";
hash = "sha256-w6h8KN6oNS5PPTgOfMlCz3aRH6o2CY2Fl/LnUd1PVq8=";
rev = "10b92330cf0ecaa39a52d3a8d190f7fb384b7b09";
url = "git+https://github.com/neurocyte/flow-syntax?ref=master#6992eddeb9a4a013886db0cbca2156686d01efe4";
hash = "sha256-TJJTGiQbdzVNQAjKg9R1NP9kXqEcMNy33rwqnQG8se4=";
rev = "6992eddeb9a4a013886db0cbca2156686d01efe4";
};
}
{
name = "tree_sitter-0.22.4-150-g7e3f5726-z0LhyI7XuS7mSbx26jCz5VkJ_c1oL8vvC6WBgx0Idkpg";
name = "tree_sitter-0.22.4-150-g7e3f5726-z0LhyGeG1y67PeOltaplVkxRNT2jMMexQhbUlrh0vdxM";
path = fetchZigArtifact {
name = "tree_sitter";
url = "https://github.com/neurocyte/tree-sitter/releases/download/master-3cfb01c2f3349791a500f59bcc89b867d017d5b8/source.tar.gz";
hash = "sha256-2vIwHvTyXAjLT6qC1zrtCM1OjSJAta4z/2MkctSbl2g=";
url = "https://github.com/neurocyte/tree-sitter/releases/download/master-6e2827ee231e220467bf04d2a2746faff5cb204a/source.tar.gz";
hash = "sha256-k8eOWun2ANzWJOa8XAakXN4Vldgwzly3FESYAlsbVVw=";
};
}
{
@ -138,12 +138,21 @@ linkFarm name [
};
}
{
name = "thespian-0.0.1-owFOjjMiBgCXFa9f0-RKTDgWwYzQp1Mnec_p6hsGXj_G";
name = "thespian-0.0.1-owFOjlgiBgC8w4XqkCOegxz5vMy6kNErcssWQWf2QHeE";
path = fetchZigArtifact {
name = "thespian";
url = "git+https://github.com/neurocyte/thespian?ref=master#6eadc0fe29795f88752f3b6f296dc582b16cb5a1";
hash = "sha256-+Jlg6ai/C0/0/Ou4b/SErtQR8AkEylG0kNwA+qw9bDU=";
rev = "6eadc0fe29795f88752f3b6f296dc582b16cb5a1";
url = "git+https://github.com/neurocyte/thespian?ref=master#7da13f44e8462d1ac0cac87c6f00cc4fcb62b0f9";
hash = "sha256-FDrgVtZQg+sFsMYE2TGOv1Xl6QqzE8+WtuKRulVnKjo=";
rev = "7da13f44e8462d1ac0cac87c6f00cc4fcb62b0f9";
};
}
{
name = "cbor-1.0.0-RcQE_HwwAQAiNkKC9ezLxHUMkWgHeVa3QyTfv4hi3VZR";
path = fetchZigArtifact {
name = "cbor";
url = "git+https://github.com/neurocyte/cbor?ref=master#b6fc137250b7d3f70459652ee78c7b6cd9ad2826";
hash = "sha256-axyiz0+WqM9HCz9xbyl/UtdwJsKC/LIiQPZn/SdzxDU=";
rev = "b6fc137250b7d3f70459652ee78c7b6cd9ad2826";
};
}
{
@ -173,11 +182,11 @@ linkFarm name [
};
}
{
name = "N-V-__8AAKhUIwB6OywBocsytyvp6XiVu4fZwzFJHjumxGLY";
name = "N-V-__8AAOKzJACguNxU76WX9M7RIhOYGuLnlasJ1-GDdhqT";
path = fetchZigArtifact {
name = "themes";
url = "https://github.com/neurocyte/flow-themes/releases/download/master-638f6f95c391420f0f140599ed5f87cc37834559/flow-themes.tar.gz";
hash = "sha256-CnG0htnCQBoyMGXGguyRUonbseBAgSKwWTm3pH6CXks=";
url = "https://github.com/neurocyte/flow-themes/releases/download/master-c6c7f18cfb2e3945cd0b71dab24271465074dbc3/flow-themes.tar.gz";
hash = "sha256-h4oVrZqXwsQa57ywc8Ez7c2Fur4MhyJ8xyRTpKUJh9E=";
};
}
{
@ -189,29 +198,30 @@ linkFarm name [
};
}
{
name = "vaxis-0.5.1-BWNV_PIfCQBrMQyEAPPSOyupQYEud7vTs0jXEq5drkC9";
name = "vaxis-0.5.1-BWNV_PJJCQArtOy_n76jGWoqoBpnM5FKElA_i1IaYYcF";
path = fetchZigArtifact {
name = "vaxis";
url = "git+https://github.com/neurocyte/libvaxis?ref=main#4debeaf0774a6db5de8bab212335fae795086035";
hash = "sha256-bfcOR5vzytKHbQHR6z71G+GE+iuEUuM23+38y6V+6Ss=";
rev = "4debeaf0774a6db5de8bab212335fae795086035";
url = "git+https://github.com/neurocyte/libvaxis?ref=main#95034c7114601178467b42e69588cdd4c1d39eb1";
hash = "sha256-IuToUtK3WdoOy+UzYy5OlXNR5E3DUSO5VwZvSIF28qc=";
rev = "95034c7114601178467b42e69588cdd4c1d39eb1";
};
}
{
name = "zigimg-0.1.0-8_eo2vHnEwCIVW34Q14Ec-xUlzIoVg86-7FU2ypPtxms";
name = "zigimg-0.1.0-8_eo2vUZFgAAtN1c6dAO5DdqL0d4cEWHtn6iR5ucZJti";
path = fetchZigArtifact {
name = "zigimg";
url = "https://github.com/ivanstepanovftw/zigimg/archive/d7b7ab0ba0899643831ef042bd73289510b39906.tar.gz";
hash = "sha256-LB7Xa6KzVRRUSwwnyWM+y6fDG+kIDjfnoBDJO1obxVM=";
url = "git+https://github.com/zigimg/zigimg#eab2522c023b9259db8b13f2f90d609b7437e5f6";
hash = "sha256-e42T/ZmRzuzWAhwWkcWScukcOd6rNZ1VK1wk0XGTVKs=";
rev = "eab2522c023b9259db8b13f2f90d609b7437e5f6";
};
}
{
name = "zg-0.15.2-oGqU3AtAtAI7gs7zPvzg2_TlVIqi9wCNEw7DLvD5OvDN";
name = "uucode-0.1.0-ZZjBPj96QADXyt5sqwBJUnhaDYs_qBeeKijZvlRa0eqM";
path = fetchZigArtifact {
name = "zg";
url = "git+https://codeberg.org/neurocyte/zg?ref=master#cdcab8b9ea3458efd710008055d993c5dbdb1af7";
hash = "sha256-dCaDTiZX62SZfJHMZn2IfwADbRegpNIM7u/dBPZ580k=";
rev = "cdcab8b9ea3458efd710008055d993c5dbdb1af7";
name = "uucode";
url = "git+https://github.com/jacobsandlund/uucode#5f05f8f83a75caea201f12cc8ea32a2d82ea9732";
hash = "sha256-sHPh+TQSdUGus/QTbj7KSJJkTuNTrK4VNmQDjS30Lf8=";
rev = "5f05f8f83a75caea201f12cc8ea32a2d82ea9732";
};
}
{
@ -232,4 +242,13 @@ linkFarm name [
rev = "5587b16fa040573846a6bf531301f6206d31a6bf";
};
}
{
name = "diffz-0.0.1-G2tlIezMAQBwGNGDs7Hn_N25dWSjEzgR_FAx9GFAvCuZ";
path = fetchZigArtifact {
name = "diffz";
url = "git+https://github.com/ziglibs/diffz.git#fbdf690b87db6b1142bbce6d4906f90b09ce60bb";
hash = "sha256-zzKnlKQ0Sz8aqJifSSlZImU3jY3QXLBDIfVDBmKcpVc=";
rev = "fbdf690b87db6b1142bbce6d4906f90b09ce60bb";
};
}
]

View file

@ -8,21 +8,18 @@
stdenv.mkDerivation (finalAttrs: {
pname = "flow-control";
version = "0.6.0";
version = "0.7.2";
src = fetchFromGitHub {
owner = "neurocyte";
repo = "flow";
tag = "v${finalAttrs.version}";
hash = "sha256-868FK3wr/fjXzrQJ4YVDBvzNuX818lufEx/K0fvJdWo=";
hash = "sha256-5+F0DKb4LXtcMXNutUSJuIe7cdBoFUoJhCs8vbm20jg=";
};
deps = callPackage ./build.zig.zon.nix {
zig = zig_0_15;
};
postConfigure = ''
ln -s ${
callPackage ./build.zig.zon.nix {
zig = zig_0_15;
}
} $ZIG_GLOBAL_CACHE_DIR/p
'';
nativeBuildInputs = [ zig_0_15 ];
@ -30,8 +27,10 @@ stdenv.mkDerivation (finalAttrs: {
dontSetZigDefaultFlags = true;
zigBuildFlags = [
"--system"
"${finalAttrs.deps}"
"-Dcpu=baseline"
"-Doptimize=ReleaseSafe"
"-Doptimize=ReleaseFast"
];
env.VERSION = finalAttrs.version;

View file

@ -9,16 +9,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "fselect";
version = "0.9.2";
version = "0.9.3";
src = fetchFromGitHub {
owner = "jhspetersson";
repo = "fselect";
rev = finalAttrs.version;
sha256 = "sha256-S9WlDpa9Qe3GVVC/L5KAyekH1NegdDttJ6HH5rwI6Dk=";
sha256 = "sha256-NNDWKjO0A6ETIC+6Eg6LqyrwwErbP8362YzzNJYgtlE=";
};
cargoHash = "sha256-q7FBKzVH2EtP2PjrU8bvQTrzvMZ0T+Cgk7o+lpyuTPc=";
cargoHash = "sha256-lDN3b5skS5+e1Lz3StBqW+yTN2dVxy9bWZ5z69o5z7s=";
nativeBuildInputs = [ installShellFiles ];
buildInputs = lib.optional stdenv.hostPlatform.isDarwin libiconv;

View file

@ -18,16 +18,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "gelly";
version = "0.18.2";
version = "0.18.3";
src = fetchFromGitHub {
owner = "Fingel";
repo = "gelly";
tag = "v${finalAttrs.version}";
hash = "sha256-95mpAfS6upV3p0LoieMWwVUnSLn7KistMlegRclZJvw=";
hash = "sha256-JDCy6RILbEXRL6Oq2UBrkhdLeEx4aHWrrF5EPkY8pXg=";
};
cargoHash = "sha256-+Itmi463TVDfutqPNoxGy1lE/Iv8Qc7d5jXqe9GW4Qg=";
cargoHash = "sha256-MmwPCUdZJWBYmMbNklaejkSyTB+x1GwnHLInYxA/1sc=";
nativeBuildInputs = [
pkg-config

View file

@ -28,7 +28,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
homepage = "https://github.com/andrewring/github-distributed-owners";
changelog = "https://github.com/andrewring/github-distributed-owners/releases/tag/v${finalAttrs.version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ cameroncuttingedge ];
maintainers = [ ];
mainProgram = "github-distributed-owners";
};
})

View file

@ -93,7 +93,7 @@ python3Packages.buildPythonApplication (finalAttrs: {
description = "Intuitive text extraction tool (OCR) for GNOME desktop";
license = lib.licenses.mit;
mainProgram = "frog";
maintainers = [ ];
maintainers = [ lib.maintainers.axodentally ];
platforms = lib.platforms.linux;
};
})

View file

@ -14,13 +14,13 @@
buildGo125Module (finalAttrs: {
pname = "go-arch-lint";
version = "1.13.0";
version = "1.14.0";
src = fetchFromGitHub {
owner = "fe3dback";
repo = "go-arch-lint";
tag = "v${finalAttrs.version}";
hash = "sha256-TtYeowoL8NEOw1coiLHJ/epcFMaxT4zsBSsnLgmhKDc=";
hash = "sha256-AMPqMtBg1RjbqlfAHz193q1SFeqDmF7WrjvX2psqVro=";
};
vendorHash = "sha256-2n7OjF4gl+qq9M5EtU0nmgWwRPZ3YvmLQDAgJ8w9S1M=";

View file

@ -6,13 +6,13 @@
buildGoModule (finalAttrs: {
pname = "goimports-reviser";
version = "3.11.0";
version = "3.12.6";
src = fetchFromGitHub {
owner = "incu6us";
repo = "goimports-reviser";
rev = "v${finalAttrs.version}";
hash = "sha256-5v10DmJovyDyfAlgLuO4uCKRDZGIUxGLHFJRHsGmSm4=";
hash = "sha256-QFnTiFINWprGuBrRwLFMexIbv6Xu+tq7rTVif7YvLsc=";
};
vendorHash = "sha256-aTPzvqIwjZzEq9LHFdebIgbKMwsBOqLbpEWB7rN7cYY=";

View file

@ -184,11 +184,11 @@ let
linux = stdenvNoCC.mkDerivation (finalAttrs: {
inherit pname meta passthru;
version = "145.0.7632.116";
version = "145.0.7632.159";
src = fetchurl {
url = "https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${finalAttrs.version}-1_amd64.deb";
hash = "sha256-lGMopGtpLp3g0PVIfRIACNP6yRarzQDIsuctNbiqCCo=";
hash = "sha256-xi7xUT9BSvF7g690gaEsubTwAN181Y08FSPD2+pFJdk=";
};
# With strictDeps on, some shebangs were not being patched correctly
@ -302,11 +302,11 @@ let
darwin = stdenvNoCC.mkDerivation (finalAttrs: {
inherit pname meta passthru;
version = "145.0.7632.117";
version = "145.0.7632.160";
src = fetchurl {
url = "http://dl.google.com/release2/chrome/ej7xgqe26rn6kjtl4mhau5cs44_145.0.7632.117/GoogleChrome-145.0.7632.117.dmg";
hash = "sha256-OZWuV9s6vlCcxUXKmrJtMO6KRUadkmQKoMYXrDhKatU=";
url = "http://dl.google.com/release2/chrome/adfe2qymqnox7qjswrtl6gacr5ra_145.0.7632.160/GoogleChrome-145.0.7632.160.dmg";
hash = "sha256-OcjDKT8jgMg6MsIkAHYduDOJFMqK+prqlCaY4Att6RA=";
};
dontPatch = true;

View file

@ -2,6 +2,7 @@
lib,
stdenvNoCC,
fetchzip,
installFonts,
}:
stdenvNoCC.mkDerivation rec {
@ -14,14 +15,7 @@ stdenvNoCC.mkDerivation rec {
hash = "sha256-Oh8V72tYvVA6Sk0f9UTIkRQYjdUbEB/fmCSaRYfyoP8=";
};
installPhase = ''
runHook preInstall
mkdir -p $out/share/fonts/truetype
mv *.ttf -t $out/share/fonts/truetype
runHook postInstall
'';
nativeBuildInputs = [ installFonts ];
meta = {
description = "UNICODE Han Nom Font Set";

View file

@ -9,16 +9,16 @@
buildGoModule (finalAttrs: {
pname = "harbor-cli";
version = "0.0.17";
version = "0.0.18";
src = fetchFromGitHub {
owner = "goharbor";
repo = "harbor-cli";
tag = "v${finalAttrs.version}";
hash = "sha256-uTXTRfxuEl1A9F9TrEWYvV4tVGPRoH01QRVsO8fBKg0=";
hash = "sha256-vR99rFCR/FMpASyCqjIvhWBNO+Va1sACtZxOGbJaiQg=";
};
vendorHash = "sha256-lGxv7BK4JZX9fyQEUooflBvcbul8LXkRvpySz4l5zAI=";
vendorHash = "sha256-A7Hgzzdu8zIkN/mvHTWU7ZRbInWor+dVtr9al3oyjk4=";
excludedPackages = [
"dagger"

View file

@ -13,16 +13,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "hyprshell";
version = "4.9.2";
version = "4.9.4";
src = fetchFromGitHub {
owner = "H3rmt";
repo = "hyprshell";
tag = "v${finalAttrs.version}";
hash = "sha256-1nt+/cAtIsS/3O790W2aMUuPiMV6JEjC334Sw0SD804=";
hash = "sha256-GLNl/KujW97Lpn9fjMjt7ZwaBpgMJe1NTD94KxzNNlo=";
};
cargoHash = "sha256-WnmK7eUjXqNUWXeaXqloYeRSp/uvg8QoYbcotm5uEt4=";
cargoHash = "sha256-IQ15ZxUJzx+pEl0K8IDqDTp05TfBbjxUeTru42s/phw=";
nativeBuildInputs = [
wrapGAppsHook4

View file

@ -9,17 +9,17 @@
makeWrapper,
nix-update-script,
}:
rustPlatform.buildRustPackage {
rustPlatform.buildRustPackage (finalAttrs: {
pname = "influxdb3";
version = "3.0.1";
version = "3.8.3";
src = fetchFromGitHub {
owner = "influxdata";
repo = "influxdb";
rev = "8daccb7ee8f82ffae99b25236af9645fd60e448b";
hash = "sha256-tHnLD5W3KQ1cILRHNmXAi4lvQQSBVUPxYCXmXLMLwIs=";
rev = "73f689bb31d5ca13c4f950fefb40d5f6e6163019";
hash = "sha256-+eNv+/LJUBTJEL+jhkAq9sMSzFBAnuNdEaUwdWFtEMA=";
};
cargoHash = "sha256-KnmaIbK/2tRXjCpOLHcadIX8Od7lVDOwZ+FgE+yFE+Q=";
cargoHash = "sha256-gICiNHbN85gKWY635zonJg6Fed5NeqDuzdQLBGkbm6g=";
nativeBuildInputs = [
makeWrapper
@ -43,13 +43,14 @@ rustPlatform.buildRustPackage {
rm influxdb3_process/build.rs
'';
env.INFLUXDB3_BUILD_VERSION = finalAttrs.version;
buildNoDefaultFeatures = true;
buildFeatures = [
"aws"
"gcp"
"azure"
"jemalloc_replacing_malloc"
"system-py"
];
postInstall = ''
@ -83,4 +84,4 @@ rustPlatform.buildRustPackage {
maintainers = with lib.maintainers; [ oddlama ];
mainProgram = "influxdb3";
};
}
})

View file

@ -10,16 +10,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "inputplumber";
version = "0.74.2";
version = "0.75.0";
src = fetchFromGitHub {
owner = "ShadowBlip";
repo = "InputPlumber";
tag = "v${finalAttrs.version}";
hash = "sha256-M/U5XfxNmdBwwgEAVfH71VNif7GYh/vW4WycDgDKRQM=";
hash = "sha256-clTcP9BLy8+hO7epvOJeHBAOwPo50HD2EI95TekmQN8=";
};
cargoHash = "sha256-7P8hP1WZctoo2ABavCHelePPV/npJQczc+ifZwxHq+k=";
cargoHash = "sha256-3+nxRtiQWbm3M+FZyq2xPVgCc4/Ztybeq6RtuxF8FJs=";
nativeBuildInputs = [
pkg-config

View file

@ -151,7 +151,7 @@ flutter338.buildFlutterApplication {
extraWrapProgramArgs = "--chdir $out/app/intiface-central";
postInstall = ''
install -Dm644 $out/app/intiface-central/data/flutter_assets/assets/icons/intiface_central_icon.png $out/share/pixmaps/intiface-central.png
install -Dm644 $out/app/intiface-central/data/flutter_assets/assets/icons/intiface_central_icon.png $out/share/icons/hicolor/512x512/apps/intiface-central.png
'';
desktopItems = [

View file

@ -8,6 +8,7 @@
makeWrapper,
unzip,
xdg-utils,
imagemagick,
writeScript,
}:
@ -40,13 +41,14 @@ stdenvNoCC.mkDerivation (finalAttrs: {
unzip
makeWrapper
copyDesktopItems
imagemagick
];
desktopItems = [
(makeDesktopItem {
name = "irpf";
exec = "irpf";
icon = "rfb64";
icon = "rfb";
desktopName = "Imposto de Renda Pessoa Física";
comment = "Programa Oficial da Receita para elaboração do IRPF";
categories = [ "Office" ];
@ -72,9 +74,10 @@ stdenvNoCC.mkDerivation (finalAttrs: {
--set _JAVA_AWT_WM_NONREPARENTING 1 \
--set AWT_TOOLKIT MToolkit
mkdir -p $out/share/pixmaps
unzip -j lib/ppgd-icones-4.0.jar icones/rfb64.png -d $out/share/pixmaps
mkdir -p $out/share/icons/hicolor/{96x96,72x72,32x32}/apps
unzip -jp lib/ppgd-icones-4.0.jar icones/rfb64.png | magick - -background none -gravity center -extent 96x96 $out/share/icons/hicolor/96x96/apps/rfb.png
unzip -jp lib/ppgd-icones-4.0.jar icones/rfb48.png | magick - -background none -gravity center -extent 72x72 $out/share/icons/hicolor/72x72/apps/rfb.png
unzip -j lib/ppgd-icones-4.0.jar icones/rfb.png -d $out/share/icons/hicolor/32x32/apps
runHook postInstall
'';

View file

@ -0,0 +1,54 @@
{
lib,
stdenv,
rustPlatform,
fetchFromGitHub,
pkg-config,
libgit2,
zlib,
apple-sdk,
libiconv,
versionCheckHook,
withGit ? true,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "jj-starship";
version = "0.7.0";
src = fetchFromGitHub {
owner = "dmmulroy";
repo = "jj-starship";
tag = "v${finalAttrs.version}";
hash = "sha256-YfcFlJsPCRfqhN+3JUWE77c+eHIp5RAu2rq/JhSxCec=";
};
cargoHash = "sha256-XMz6b63raPkgmUzB6L3tOYPxTenytmGWOQrs+ikcSts=";
buildNoDefaultFeatures = !withGit;
nativeBuildInputs = [
pkg-config
];
buildInputs = [
zlib
]
++ lib.optionals withGit [ libgit2 ]
++ lib.optionals stdenv.hostPlatform.isDarwin [
apple-sdk
libiconv
];
doInstallCheck = true;
nativeInstallCheckInputs = [ versionCheckHook ];
meta = {
changelog = "https://github.com/dmmulroy/jj-starship/releases/tag/${finalAttrs.src.tag}";
description = "Unified Starship prompt module for Git and Jujutsu repositories that is optimized for latency";
homepage = "https://github.com/dmmulroy/jj-starship";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ drupol ];
mainProgram = "jj-starship";
};
})

View file

@ -4,6 +4,7 @@
fetchFromGitHub,
qt5,
john,
imagemagick,
makeWrapper,
makeDesktopItem,
copyDesktopItems,
@ -29,6 +30,7 @@ stdenv.mkDerivation (finalAttrs: {
copyDesktopItems
qt5.wrapQtAppsHook
qt5.qmake
imagemagick
];
installPhase = ''
@ -37,7 +39,9 @@ stdenv.mkDerivation (finalAttrs: {
--prefix PATH : ${lib.makeBinPath [ john ]}
install -D README $out/share/doc/johnny/README
install -D LICENSE $out/share/licenses/johnny/LICENSE
install -D resources/icons/johnny_128.png $out/share/pixmaps/johnny.png
mkdir -p $out/share/icons/hicolor/512x512/apps
magick resources/icons/johnny.png -resize 512x512 $out/share/icons/hicolor/512x512/apps/johnny.png
install -D resources/icons/johnny_128.png $out/share/icons/hicolor/128x128/apps/johnny.png
runHook postInstall
'';

View file

@ -7,15 +7,15 @@
stdenvNoCC.mkDerivation {
pname = "jp-zip-code";
version = "0-unstable-2026-02-01";
version = "0-unstable-2026-03-01";
# This package uses a mirror as the source because the
# original provider uses the same URL for updated content.
src = fetchFromGitHub {
owner = "musjj";
repo = "jp-zip-codes";
rev = "f9ad47c1ef63620ba888f073c064e12101503a7b";
hash = "sha256-ldggzY43bejZZLWofAdGFSqk60UfkhrPnqtVgC9TNAI=";
rev = "ac744cf265a65b8568636ad3456d79abfa607549";
hash = "sha256-afs8SEn575lspvKZSxh4hNZ/5+OpeFCYY5E2jyY8hDY=";
};
installPhase = ''

View file

@ -13,13 +13,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "kiwix-tools";
version = "3.8.1";
version = "3.8.2";
src = fetchFromGitHub {
owner = "kiwix";
repo = "kiwix-tools";
tag = finalAttrs.version;
hash = "sha256-lq7pP9ftRe26EEVntdY9xs951mvrvUKMMep/Oup4jdE=";
hash = "sha256-JtHi/rbXMoP0YT1wsBjjx9jK3weptnTs8hm1rhW06Bg=";
};
nativeBuildInputs = [

View file

@ -24,11 +24,11 @@
stdenv.mkDerivation (finalAttrs: {
pname = "kmymoney";
version = "5.2.1";
version = "5.2.2";
src = fetchurl {
url = "mirror://kde/stable/kmymoney/${finalAttrs.version}/kmymoney-${finalAttrs.version}.tar.xz";
hash = "sha256-/q30C21MkNd+MnFqhY3SN2kIGGMQTYzqYpELHsPkM2s=";
hash = "sha256-QLZjnmohYQDSAkjtdPoVQgL5zN+8M1Inztwb746l03c=";
};
cmakeFlags = [

View file

@ -1,35 +1,52 @@
{
lib,
stdenv,
fetchurl,
pkg-config,
libopus,
testers,
autoreconfHook,
fetchFromGitLab,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "libopusenc";
version = "0.2.1";
version = "0.3";
src = fetchurl {
url = "mirror://mozilla/opus/libopusenc-${finalAttrs.version}.tar.gz";
sha256 = "1ffb0vhlymlsq70pxsjj0ksz77yfm2x0a1x8q50kxmnkm1hxp642";
src = fetchFromGitLab {
domain = "gitlab.xiph.org";
owner = "xiph";
repo = "libopusenc";
rev = "v${finalAttrs.version}";
hash = "sha256-n4wmIUyCNPpgHhyRpv4Xpw292M6XRFhQtuY77x6+7JA=";
};
postPatch = ''
echo PACKAGE_VERSION="${finalAttrs.version}" > ./package_version
'';
outputs = [
"out"
"dev"
"doc"
];
doCheck = true;
nativeBuildInputs = [ pkg-config ];
nativeBuildInputs = [
pkg-config
autoreconfHook
];
buildInputs = [ libopus ];
passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
meta = {
description = "Library for encoding .opus audio files and live streams";
license = lib.licenses.bsd3;
homepage = "https://www.opus-codec.org/";
platforms = lib.platforms.unix;
pkgConfigModules = [ "libopusenc" ];
maintainers = with lib.maintainers; [ pmiddend ];
};
})

View file

@ -9,7 +9,7 @@
buildGoModule (finalAttrs: {
pname = "litmusctl";
version = "1.22.0";
version = "1.23.0";
nativeBuildInputs = [
installShellFiles
@ -23,7 +23,7 @@ buildGoModule (finalAttrs: {
owner = "litmuschaos";
repo = "litmusctl";
rev = "${finalAttrs.version}";
hash = "sha256-wf/y74ST4H6w8f/AyA2QIvLmQusyOALPY95qVtHF6Ac=";
hash = "sha256-F0WRA9wDvUibJQdBTXz0Vhw1m0B0cuwG2e1l6kpolkE=";
};
vendorHash = "sha256-7FYOQ89aUFPX+5NCPYKg+YGCXstQ6j9DK4V2mCgklu0=";

View file

@ -2,6 +2,7 @@
lib,
fetchFromGitHub,
stdenvNoCC,
installFonts,
}:
stdenvNoCC.mkDerivation rec {
@ -15,13 +16,7 @@ stdenvNoCC.mkDerivation rec {
hash = "sha256-pEISoFEsv8SJOGa2ud/nV1yvl8T9kakfKENu3mfYA5A=";
};
installPhase = ''
runHook preInstall
install -Dm644 *.ttf -t $out/share/fonts/truetype
runHook postInstall
'';
nativeBuildInputs = [ installFonts ];
meta = {
homepage = "https://github.com/lxgw/FusionKai";

View file

@ -2,6 +2,7 @@
stdenvNoCC,
fetchurl,
lib,
installFonts,
}:
stdenvNoCC.mkDerivation rec {
@ -12,14 +13,7 @@ stdenvNoCC.mkDerivation rec {
hash = "sha256-secUl91sR6AgHD1ac96ka4BtaMjdQYUPnzVM7jgv5n4=";
};
installPhase = ''
runHook preInstall
mkdir -p $out/share/fonts/truetype
mv *.ttf $out/share/fonts/truetype
runHook postInstall
'';
nativeBuildInputs = [ installFonts ];
meta = {
homepage = "https://github.com/lxgw/LxgwWenKaiTC";

View file

@ -2,6 +2,7 @@
lib,
stdenvNoCC,
fetchurl,
installFonts,
}:
stdenvNoCC.mkDerivation rec {
@ -13,14 +14,7 @@ stdenvNoCC.mkDerivation rec {
hash = "sha256-4GWCSMl+gdxnEPa8JPz7c+bWmxP7HaZHj+D0yUDqgVc=";
};
installPhase = ''
runHook preInstall
mkdir -p $out/share/fonts/truetype
mv *.ttf $out/share/fonts/truetype
runHook postInstall
'';
nativeBuildInputs = [ installFonts ];
meta = {
homepage = "https://lxgw.github.io/";

View file

@ -8,16 +8,16 @@
buildGoModule (finalAttrs: {
pname = "matrix-alertmanager-receiver";
version = "2026.2.18";
version = "2026.2.25";
src = fetchFromGitHub {
owner = "metio";
repo = "matrix-alertmanager-receiver";
tag = finalAttrs.version;
hash = "sha256-f9foHBRj14DQY41FgFV5KtDnnLErEPO0jen31MXVbls=";
hash = "sha256-BoJbEpfMxGmO8+Y4vLs4EaqnQgs9TNEPVCcTGSKumiw=";
};
vendorHash = "sha256-CiWZaiFdaD8RoSxk04cz/dsRf03C3E7h1KuHN27ScwQ=";
vendorHash = "sha256-szUkKri3Rx1i3681r85xrOLqXV5u7s9DUemQHeh+qJw=";
env.CGO_ENABLED = "0";

View file

@ -6,16 +6,16 @@
}:
buildGoModule (finalAttrs: {
pname = "memogram";
version = "0.4.1";
version = "0.4.2";
src = fetchFromGitHub {
owner = "usememos";
repo = "telegram-integration";
tag = "v${finalAttrs.version}";
hash = "sha256-b7y3+Qfa6NWX58gMmIPXSZxfl/d40xUQDQN9EBaewaY=";
hash = "sha256-OkNx5qAF7Gxk50S9a31NUWRoC9uHPUwUHG3jA8gy7AQ=";
};
vendorHash = "sha256-G3ZkjpmZjIGyCwZvxWDQGW33n/AbuN9hXlvdLo85M6Q=";
vendorHash = "sha256-iSJU/FyyEbZlpTT3isJlsEvDzNpg3ylE5367KPBeUxM=";
subPackages = [ "bin/memogram" ];

View file

@ -59,7 +59,7 @@ stdenv.mkDerivation (finalAttrs: {
postInstall = lib.optionalString stdenv.hostPlatform.isLinux ''
install -Dm644 $src/resources/milkytracker.desktop $out/share/applications/milkytracker.desktop
install -Dm644 $src/resources/pictures/carton.png $out/share/pixmaps/milkytracker.png
install -Dm644 $src/resources/pictures/carton.png $out/share/icons/hicolor/128x128/apps/milkytracker.png
install -Dm644 resources/org.milkytracker.MilkyTracker.metainfo.xml $out/share/appdata/org.milkytracker.MilkyTracker.metainfo.xml
'';

View file

@ -21,13 +21,13 @@
}:
stdenv.mkDerivation (finalAttrs: {
pname = "miniaudio";
version = "0.11.24";
version = "0.11.25";
src = fetchFromGitHub {
owner = "mackron";
repo = "miniaudio";
tag = finalAttrs.version;
hash = "sha256-2i0VTbf/zcolGcf1vzleFNRiGnisoaN+g+Dy9iCbei8=";
hash = "sha256-2k346Z/ueINPbaY20P2cbBvRfFXXH0ugdv4d7WaYt2w=";
};
outputs = [

View file

@ -26,7 +26,7 @@ buildGoModule (finalAttrs: {
homepage = "https://github.com/raviqqe/muffet";
changelog = "https://github.com/raviqqe/muffet/releases/tag/${finalAttrs.src.tag}";
license = lib.licenses.mit;
maintainers = [ ];
maintainers = with lib.maintainers; [ hythera ];
mainProgram = "muffet";
};
})

View file

@ -25,20 +25,20 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "n8n";
version = "2.9.4";
version = "2.10.2";
src = fetchFromGitHub {
owner = "n8n-io";
repo = "n8n";
tag = "n8n@${finalAttrs.version}";
hash = "sha256-XXQPZHtY66gOQ+nYH+Q1IjbR+SRZ9g06sgBy2x8gGh4=";
hash = "sha256-Mpeksn6Xkk7jc4xJIdFS+9rWy882H85h82/IZ0RlUhI=";
};
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_10;
fetcherVersion = 3;
hash = "sha256-TU7HIShYj20QtdcthP0nQdubYl0bdy+XM3CoX5Rvhzk=";
hash = "sha256-fnaQKbJqv1Gkc75wbCgRId4g53os5VKRhb3Jlb2eWRQ=";
};
nativeBuildInputs = [
@ -135,6 +135,7 @@ stdenv.mkDerivation (finalAttrs: {
gepbird
AdrienLemaire
sweenu
wrbbz
];
license = lib.licenses.sustainableUse;
mainProgram = "n8n";

View file

@ -2,6 +2,9 @@
#!nix-shell --pure -i bash -p bash curl jq nix-update cacert git
set -euo pipefail
new_version="$(curl -s "https://api.github.com/repos/n8n-io/n8n/releases?per_page=30" | \
jq --raw-output 'map(select(.prerelease | not) | .tag_name) | sort | last | ltrimstr("n8n@")')"
new_version="$(curl -s 'https://api.github.com/repos/n8n-io/n8n/releases?per_page=30' | \
jq -r '
map(select(.prerelease | not) | .tag_name | sub("^n8n@"; ""))
| sort_by(split(".") | map(tonumber)) | last
')"
nix-update n8n --version "$new_version"

View file

@ -1,78 +0,0 @@
{
lib,
stdenvNoCC,
fetchFromGitHub,
bash,
makeWrapper,
pciutils,
x11Support ? stdenvNoCC.hostPlatform.isLinux,
ueberzug,
fetchpatch,
}:
stdenvNoCC.mkDerivation {
pname = "neofetch";
version = "unstable-2021-12-10";
src = fetchFromGitHub {
owner = "dylanaraps";
repo = "neofetch";
rev = "ccd5d9f52609bbdcd5d8fa78c4fdb0f12954125f";
sha256 = "sha256-9MoX6ykqvd2iB0VrZCfhSyhtztMpBTukeKejfAWYW1w=";
};
patches = [
(fetchpatch {
url = "https://github.com/dylanaraps/neofetch/commit/413c32e55dc16f0360f8e84af2b59fe45505f81b.patch";
sha256 = "1fapdg9z79f0j3vw7fgi72b54aw4brn42bjsj48brbvg3ixsciph";
name = "avoid_overwriting_gio_extra_modules_env_var.patch";
})
# https://github.com/dylanaraps/neofetch/pull/2114
(fetchpatch {
url = "https://github.com/dylanaraps/neofetch/commit/c4eb4ec7783bb94cca0dbdc96db45a4d965956d2.patch";
sha256 = "sha256-F6Q4dUtfmR28VxLbITiLFJ44FjG4T1Cvuz3a0nLisMs=";
name = "update_old_nixos_logo.patch";
})
# https://github.com/dylanaraps/neofetch/pull/2157
(fetchpatch {
url = "https://github.com/dylanaraps/neofetch/commit/de253afcf41bab441dc58d34cae654040cab7451.patch";
sha256 = "sha256-3i7WnCWNfsRjbenTULmKHft5o/o176imzforNmuoJwo=";
name = "improve_detect_nixos_version.patch";
})
];
outputs = [
"out"
"man"
];
strictDeps = true;
buildInputs = [ bash ];
nativeBuildInputs = [ makeWrapper ];
postPatch = ''
patchShebangs --host neofetch
'';
postInstall = ''
wrapProgram $out/bin/neofetch \
--prefix PATH : ${
lib.makeBinPath (
lib.optional (!stdenvNoCC.hostPlatform.isOpenBSD) pciutils ++ lib.optional x11Support ueberzug
)
}
'';
makeFlags = [
"PREFIX=${placeholder "out"}"
"SYSCONFDIR=${placeholder "out"}/etc"
];
meta = {
description = "Fast, highly customizable system info script";
homepage = "https://github.com/dylanaraps/neofetch";
license = lib.licenses.mit;
platforms = lib.platforms.all;
maintainers = with lib.maintainers; [ konimex ];
mainProgram = "neofetch";
};
}

View file

@ -25,7 +25,7 @@
stdenv.mkDerivation (finalAttrs: {
pname = "nfs-ganesha";
version = "9.5";
version = "9.7";
outputs = [
"out"
@ -37,7 +37,7 @@ stdenv.mkDerivation (finalAttrs: {
owner = "nfs-ganesha";
repo = "nfs-ganesha";
tag = "V${finalAttrs.version}";
hash = "sha256-WgNuzG9A3pA9K9Wwtr+kLtvYA9PKQgZuEJlx8OVgCqY=";
hash = "sha256-MGDt78UnkPaNc2YD/GHlFnvZNo0ZBbtvG+vxcplH+fI=";
};
patches = lib.optional useDbus ./allow-bypassing-dbus-pkg-config-test.patch;

View file

@ -4,6 +4,7 @@
fetchFromGitHub,
python3Packages,
nix-update-script,
installFonts,
}:
stdenvNoCC.mkDerivation (finalAttrs: {
@ -18,6 +19,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
};
nativeBuildInputs = [
installFonts
python3Packages.afdko
python3Packages.fonttools
];
@ -34,22 +36,13 @@ stdenvNoCC.mkDerivation (finalAttrs: {
runHook postBuild
'';
installPhase = ''
runHook preInstall
install -Dm444 NomNaTong-Regular.otf -t $out/share/fonts/opentype/
install -Dm444 NomNaTong-Regular.ttf -t $out/share/fonts/truetype/
runHook postInstall
'';
passthru.updateScript = nix-update-script { };
meta = {
homepage = "https://nomfoundation.org/nom-tools/Nom-Font";
description = "Hán-Nôm Coded Character Set and Nom Na Tong Regular Reference Font";
license = lib.licenses.mit;
maintainers = [ ];
maintainers = [ lib.maintainers.eclairevoyant ];
platforms = lib.platforms.all;
};
})

View file

@ -0,0 +1,39 @@
{
lib,
fetchFromGitHub,
rustPlatform,
versionCheckHook,
nix-update-script,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "ocrs";
version = "0.12.0";
src = fetchFromGitHub {
owner = "robertknight";
repo = "ocrs";
tag = "ocrs-v${finalAttrs.version}";
hash = "sha256-MHtMuUAFxfbbXI7jkS9mHbap9TbSmSilekFnSaI76Ac=";
};
cargoHash = "sha256-zYXhXGEWapAsEav3wpc17VWT8glFkys3BERCmhsUkZk=";
nativeInstallCheckInputs = [ versionCheckHook ];
doInstallCheck = true;
passthru.updateScript = nix-update-script { };
meta = {
description = "Library and tool for OCR, extracting text from images";
homepage = "https://github.com/robertknight/ocrs";
mainProgram = "ocrs";
license = with lib.licenses; [
asl20
mit
];
maintainers = with lib.maintainers; [
ethancedwards8
];
};
})

View file

@ -12,13 +12,13 @@
buildGoModule rec {
pname = "orbiton";
version = "2.72.1";
version = "2.73.0";
src = fetchFromGitHub {
owner = "xyproto";
repo = "orbiton";
tag = "v${version}";
hash = "sha256-tQufX7LIRrPDCid2lfKKEJjZHInVDRVmoCd1oYiSCfk=";
hash = "sha256-qPIdSsWsbJlJQKGY9AA4qJRKmYTSdXtL1/okjQogGg4=";
};
vendorHash = null;

View file

@ -7,13 +7,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "pagemon";
version = "0.02.05";
version = "0.02.06";
src = fetchFromGitHub {
owner = "ColinIanKing";
repo = "pagemon";
tag = "V${finalAttrs.version}";
hash = "sha256-Crr1312wZ1IIwvODAUooZ0Lr75W0qdDQrr1sszaNHa4=";
hash = "sha256-nlgrPGctgP6F90LTkVXVZ1MVbkr8yDF/AI+yrvnU5Hs=";
};
buildInputs = [ ncurses ];

View file

@ -8,11 +8,11 @@
stdenvNoCC.mkDerivation rec {
pname = "panoply";
version = "5.9.0";
version = "5.9.1";
src = fetchurl {
url = "https://www.giss.nasa.gov/tools/panoply/download/PanoplyJ-${version}.tgz";
hash = "sha256-OCxplchCBx5hCbihg4WNu/RrcYBo5Jfdm1VDIr9swRU=";
hash = "sha256-PwGbN/J4zXelzV1nSUqOtOyb7anh+aht46Ihza5aLCc=";
};
nativeBuildInputs = [ makeWrapper ];

View file

@ -9,12 +9,12 @@
}:
buildGoModule (finalAttrs: {
pname = "paqet";
version = "1.0.0-alpha.18";
version = "1.0.0-alpha.19";
src = fetchFromGitHub {
owner = "hanselime";
repo = "paqet";
tag = "v${finalAttrs.version}";
hash = "sha256-FuCbQz+Lhbw/xHJYhZo4uxH2ODV/uVFR7XDOK5DKZkU=";
hash = "sha256-aflWI3WBVF6rl+yS8sNv2XOMK6q4oj3qqGpuqlmrh18=";
};
vendorHash = "sha256-olyjpzHZKgD5fhXSyCmEuwYmcJGMUS+b+Hglm2JF1NY=";

View file

@ -10,6 +10,7 @@
turbo,
linkFarm,
installShellFiles,
nixosTests,
}:
let
@ -118,6 +119,8 @@ buildGoModule (finalAttrs: {
passthru = {
updateScript = ./update.sh;
tests.nixos = nixosTests.perses;
inherit pluginsArchive;
};

View file

@ -27,13 +27,13 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "prismlauncher-unwrapped";
version = "10.0.2";
version = "10.0.5";
src = fetchFromGitHub {
owner = "PrismLauncher";
repo = "PrismLauncher";
tag = finalAttrs.version;
hash = "sha256-Nfo0IaN7kdvaY7ER/BOTfAz2YQL2Jjfiu8vzcKz3n0s=";
hash = "sha256-cQBOdF3HP4CFOSfWyVXGQBs42V/A4w6R2UwelQTE3dQ=";
};
postUnpack = ''

View file

@ -6,13 +6,13 @@
buildGoModule rec {
pname = "nut-exporter";
version = "3.2.3";
version = "3.2.5";
src = fetchFromGitHub {
owner = "DRuggeri";
repo = "nut_exporter";
rev = "v${version}";
sha256 = "sha256-tgYxkVen2aegX+py9goQIQtw1eNZJ7K8CqgaKOsDgxA=";
sha256 = "sha256-et1XCKpjyhr7yY24t8xBSRzh9nAmIG6bdjgbI1LuJaE=";
};
vendorHash = "sha256-cMZ4GSal03LIZi7ESr/sQx8zLHNepOTZGEEsdvsNhec=";

View file

@ -37,7 +37,7 @@ appimageTools.wrapAppImage {
extraInstallCommands = ''
install -Dm444 ${appimageContents}/proxyman.desktop -t $out/share/applications
install -Dm444 ${appimageContents}/proxyman.png -t $out/share/pixmaps
install -Dm444 ${appimageContents}/proxyman.png -t $out/share/icons/hicolor/256x256/apps
substituteInPlace $out/share/applications/proxyman.desktop \
--replace-fail "Exec=AppRun" "Exec=proxyman --"
'';

View file

@ -7,13 +7,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "pyenv";
version = "2.6.23";
version = "2.6.24";
src = fetchFromGitHub {
owner = "pyenv";
repo = "pyenv";
tag = "v${finalAttrs.version}";
hash = "sha256-ejYVBXTDPJFh/9vBet16HMxXvQ5qJzZPPp3vnZUp8A8=";
hash = "sha256-s8roBirIoZQ1IJ76Tu5HM/EXiAug2O7wMOAFamqBFqw=";
};
nativeBuildInputs = [

View file

@ -7,16 +7,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "ron-lsp";
version = "0.1.1";
version = "0.1.3";
src = fetchFromGitHub {
owner = "jasonjmcghee";
repo = "ron-lsp";
tag = "v${finalAttrs.version}";
hash = "sha256-c+cJrXINuoK+NR1rMSrOeZqZzrEcg/brSTKSTu5mNr4=";
hash = "sha256-+fMV2J6S6+vRmdSsS6TtrCGxxOw+dgL4dEJWsJpB5bY=";
};
cargoHash = "sha256-eEoxgnfc9s59b0SNozEIj/1wHv+OWDmd4bniBbGsgSQ=";
cargoHash = "sha256-vJ0+M0Mg2ONfGcKqGs2hffMAdcgawra1cHWPeaqpo1w=";
passthru.updateScript = nix-update-script { };

View file

@ -44,7 +44,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
homepage = "https://github.com/RustScan/RustScan";
changelog = "https://github.com/RustScan/RustScan/releases/tag/${finalAttrs.version}";
license = lib.licenses.gpl3Only;
maintainers = [ ];
maintainers = with lib.maintainers; [ bodier123 ];
mainProgram = "rustscan";
};
})

View file

@ -10,15 +10,15 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "sftool";
version = "0.2.1";
version = "0.2.2";
src = fetchFromGitHub {
owner = "OpenSiFli";
repo = "sftool";
tag = finalAttrs.version;
hash = "sha256-scHvBbpIZXwRC7lpY2lj0mN/ECj+uDxN4DF9sxOzy6o=";
hash = "sha256-pWECmFzxOLhmiascyK1yS/uzZ3O/MVze/cRNgE01ptY=";
};
cargoHash = "sha256-ysuSGXHtpDKW3p18EgZUd0biqfK685BxKseQVHmWOWI=";
cargoHash = "sha256-mvL102oT4WxpEEplxSu6uxp+odLHFB3n6mBcztXXmRA=";
nativeBuildInputs = [
pkg-config

View file

@ -14,13 +14,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "signalbackup-tools";
version = "20260218-1";
version = "20260302";
src = fetchFromGitHub {
owner = "bepaald";
repo = "signalbackup-tools";
tag = finalAttrs.version;
hash = "sha256-axwER9LrgKxt8jVYPn3DsIJ4lW6zadLvfGXySYqs7J4=";
hash = "sha256-nDe7TSD37K7nEwQ3GVjFiuBff/IwxQNtu5YCfSIrk/k=";
};
nativeBuildInputs = [

View file

@ -1,36 +1,14 @@
func main() {
var err error
input := os.Args[1]
ruleSetOutput := "rule-set"
input := os.Args[1]
ruleSetOutput := "rule-set"
binary, err := os.ReadFile(input)
binary, err := os.ReadFile(input)
if err != nil {
panic(err)
}
metadata, countryMap, err := parse(binary)
if err != nil {
panic(err)
}
allCodes := make([]string, 0, len(countryMap))
for code := range countryMap {
allCodes = append(allCodes, code)
}
writer, err := newWriter(metadata, allCodes)
if err != nil {
panic(err)
}
err = write(writer, countryMap, "geoip.db", nil)
if err != nil {
panic(err)
}
writer, err = newWriter(metadata, []string{"cn"})
if err != nil {
panic(err)
}
err = write(writer, countryMap, "geoip-cn.db", []string{"cn"})
_, countryMap, err := parse(binary)
if err != nil {
panic(err)
}

View file

@ -53,8 +53,6 @@ stdenvNoCC.mkDerivation {
installPhase = ''
runHook preInstall
install -Dm644 geoip.db $out/share/sing-box/geoip.db
install -Dm644 geoip-cn.db $out/share/sing-box/geoip-cn.db
install -Dm644 rule-set/* -t $out/share/sing-box/rule-set
runHook postInstall

View file

@ -41,7 +41,6 @@ buildGoModule (finalAttrs: {
installPhase = ''
runHook preInstall
install -Dm644 geosite.db $out/share/sing-box/geosite.db
install -Dm644 rule-set/* -t $out/share/sing-box/rule-set
runHook postInstall
'';

View file

@ -14,7 +14,7 @@
}:
let
version = "0.10.0";
version = "0.10.1";
# list of all theoretically available targets
targets = [
"genode"
@ -37,7 +37,7 @@ stdenv.mkDerivation {
src = fetchurl {
url = "https://github.com/Solo5/solo5/releases/download/v${version}/solo5-v${version}.tar.gz";
hash = "sha256-iBmod0/LhQ5xBSfxHh2nRwCCyBPK4k1MVEO7WKAxrmo=";
hash = "sha256-UfYkyE1k5S57kRLaYk7hRE4lOCuzjzcTv4SNtlqk9DU=";
};
configurePhase = ''

View file

@ -33,13 +33,13 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "taterclient-ddnet";
version = "10.8.1";
version = "10.8.5";
src = fetchFromGitHub {
owner = "TaterClient";
repo = "TClient";
tag = "V${finalAttrs.version}";
hash = "sha256-yPGXbTxbj+hsdygC68TRtzVg+flEAxqNnhd9smbbekU=";
hash = "sha256-wdX7AZG4hDzRDUl6XjzL2bTMwBxMWdRt4geE7NuqpdQ=";
};
cargoDeps = rustPlatform.fetchCargoVendor {

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