Merge master into staging-nixos

This commit is contained in:
nixpkgs-ci[bot]
2026-04-06 18:20:51 +00:00
committed by GitHub
117 changed files with 1751 additions and 3079 deletions

View File

@@ -17,7 +17,7 @@ Each supported language or software ecosystem has its own package set named `<la
# Navigate Java compiler variants in `javaPackages` with `nix repl`
```shell-session
$ nix repl '<nixpkgs>' -I nixpkgs=channel:nixpkgs-unstable
$ nix repl -f '<nixpkgs>' -I nixpkgs=channel:nixpkgs-unstable
nix-repl> javaPackages.<tab>
javaPackages.compiler javaPackages.openjfx15 javaPackages.openjfx21 javaPackages.recurseForDerivations
javaPackages.jogl_2_4_0 javaPackages.openjfx17 javaPackages.openjfx25

View File

@@ -139,6 +139,8 @@
- `mozc` and `mozc-ut` no longer contains the IBus front-end, which are now provided by `ibus-engines.mozc` and `ibus-engines.mozc-ut`.
- `nemorosa` has been updated from `0.4.3` to `0.5.0`. Version [0.5.0](https://github.com/KyokoMiki/nemorosa/releases/tag/0.5.0) introduced breaking changes to the package configuration.
- `n8n` has been updated to version 2. You can find the breaking changes here: https://docs.n8n.io/2-0-breaking-changes/.
- The default NVIDIA drivers no longer support Maxwell (GTX 1xxx) or older GPUs. Pin the nvidia package to ` config.boot.kernelPackages.nvidiaPackages.legacy_580` for continued support.

View File

@@ -3488,6 +3488,11 @@
githubId = 30630233;
name = "Timo Triebensky";
};
BIOS9 = {
name = "NightFish";
github = "BIOS9";
githubId = 15035908;
};
birdee = {
name = "birdee";
github = "BirdeeHub";
@@ -16159,6 +16164,11 @@
githubId = 8094643;
keys = [ { fingerprint = "BAA9 7711 58CA D457 B4AE 8B06 8188 423D 2FA2 0A65"; } ];
};
m7medvision = {
name = "Mohammed";
github = "m7medVision";
githubId = 88824957;
};
ma27 = {
email = "maximilian@mbosch.me";
matrix = "@ma27:nicht-so.sexy";

View File

@@ -113,7 +113,7 @@ Interactive exploration of the configuration is possible using `nix
repl`, a read-eval-print loop for Nix expressions. A typical use:
```ShellSession
$ nix repl '<nixpkgs/nixos>'
$ nix repl -f '<nixpkgs/nixos>'
nix-repl> config.networking.hostName
"mandark"

View File

@@ -1204,6 +1204,7 @@
./services/networking/frr.nix
./services/networking/g3proxy.nix
./services/networking/gdomap.nix
./services/networking/geph.nix
./services/networking/ghostunnel.nix
./services/networking/git-daemon.nix
./services/networking/globalprotect-vpn.nix

View File

@@ -100,6 +100,12 @@ in
# ~/.config/Yubico/u2f_keys (the default key file location)
ProtectHome = "read-only";
})
(lib.mkIf config.security.pam.zfs.enable {
PrivateDevices = false;
DeviceAllow = [
"/dev/zfs rw"
];
})
];
# The polkit daemon reads action/rule files

View File

@@ -6,53 +6,142 @@
}:
let
inherit (lib)
mkEnableOption
mkIf
mkOption
optionalString
types
;
dataDir = "/var/lib/squeezelite";
cfg = config.services.squeezelite;
pkg = if cfg.pulseAudio then pkgs.squeezelite-pulse else pkgs.squeezelite;
bin = "${pkg}/bin/${pkg.pname}";
serviceDeps = [
"network.target"
"sound.target"
]
++ lib.optionals cfg.pulseaudio.enable (
if config.services.pulseaudio.systemWide then
[ "pulseaudio.service" ]
else
[
"pipewire.service"
"pipewire-pulse.socket"
]
);
in
{
###### interface
imports = [
(lib.mkRenamedOptionModule
[ "services" "squeezelite" "pulseAudio" ]
[ "services" "squeezelite" "pulseaudio" "enable" ]
)
(lib.mkRenamedOptionModule
[ "services" "squeezelite" "extraArguments" ]
[ "services" "squeezelite" "extraArgs" ]
)
];
options.services.squeezelite = {
enable = mkEnableOption "Squeezelite, a software Squeezebox emulator";
enable = lib.mkEnableOption "Squeezelite, a software Squeezebox emulator";
pulseAudio = mkEnableOption "pulseaudio support";
package = lib.mkPackageOption pkgs "squeezelite" { } // {
default = if cfg.pulseaudio.enable then pkgs.squeezelite-pulse else pkgs.squeezelite;
defaultText = lib.literalExpression "if config.services.squeezelite.pulseaudio.enable then pkgs.squeezelite-pulse else pkgs.squeezelite";
};
extraArguments = mkOption {
name = lib.mkOption {
type = lib.types.nullOr lib.types.str;
description = "name to report to server";
default = null;
};
mutableName = lib.mkOption {
type = lib.types.bool;
description = "store name in file, controllable by server";
default = cfg.name == null;
defaultText = lib.literalExpression "config.services.squeezelite.name == null";
};
pulseaudio = {
enable = lib.mkEnableOption "pulseaudio support";
group = lib.mkOption {
type = lib.types.str;
description = "group for accessing to pulseaudio socket";
default = if config.services.pulseaudio.systemWide then "pulse-access" else "pipewire";
defaultText = lib.literalExpression ''if config.services.pulseaudio.systemWide then "pulse-access" else "pipewire"'';
};
};
extraArgs = lib.mkOption {
default = "";
type = types.str;
type = lib.types.str;
description = ''
Additional command line arguments to pass to Squeezelite.
'';
};
};
###### implementation
config = lib.mkIf cfg.enable {
assertions = [
{
assertion = cfg.name == null || !cfg.mutableName;
message = "'services.squeezelite.name' and 'services.squeezelite.mutableName' are mutually exclusive";
}
{
assertion =
!cfg.pulseaudio.enable
|| (
(config.services.pulseaudio.enable && config.services.pulseaudio.systemWide)
|| (
config.services.pipewire.enable
&& config.services.pipewire.pulse.enable
&& config.services.pipewire.systemWide
)
);
message = ''
`services.squeezelite.pulseaudio.enable = true' requires a system-wide Pulseaudio server. Either:
- `services.pulseaudio.enable = true' and `services.pulseaudio.systemWide = true'
or
- `services.pipewire.enable = true', `services.pipewire.pulse.enable = true', and `services.pipewire.systemWide = true'
should be set.
'';
}
];
config = mkIf cfg.enable {
systemd.services.squeezelite = {
wantedBy = [ "multi-user.target" ];
after = [
"network.target"
wantedBy = [
"multi-user.target"
# try and start squeezelite if it isn't already, e.g. a sound card plugged in
"sound.target"
];
after = serviceDeps;
requires = serviceDeps;
description = "Software Squeezebox emulator";
environment = {
XDG_CONFIG_HOME = "%S/squeezelite/.config";
XDG_RUNTIME_DIR = "%t/squeezelite";
};
serviceConfig = {
ExecStartPre = [
# print available interfaces
"${lib.getExe cfg.package} -l"
]
++ lib.optionals (!cfg.pulseaudio.enable) [
# print available alsa controls
"${lib.getExe cfg.package} -L"
];
ExecStart = "${lib.getExe cfg.package} ${
lib.optionalString (cfg.name != null) "-n ${cfg.name} "
}${lib.optionalString cfg.mutableName "-N %S/squeezelite/player-name "}${cfg.extraArgs}";
DynamicUser = true;
ExecStart = "${bin} -N ${dataDir}/player-name ${cfg.extraArguments}";
StateDirectory = baseNameOf dataDir;
SupplementaryGroups = "audio";
RuntimeDirectory = "squeezelite";
RuntimeDirectoryMode = "0700";
StateDirectory = "squeezelite";
StateDirectoryMode = "0700";
SupplementaryGroups = [
"audio"
]
++ lib.optionals cfg.pulseaudio.enable [
cfg.pulseaudio.group
];
TimeoutStopSec = "5";
};
};
};

View File

@@ -285,7 +285,7 @@ A complete list of options for the PostgreSQL module may be found [here](#opt-se
The collection of plugins for each PostgreSQL version can be accessed with `.pkgs`. For example, for the `pkgs.postgresql_15` package, its plugin collection is accessed by `pkgs.postgresql_15.pkgs`:
```ShellSession
$ nix repl '<nixpkgs>'
$ nix repl -f '<nixpkgs>'
Loading '<nixpkgs>'...
Added 10574 variables.

View File

@@ -190,6 +190,7 @@ in
priority = 1100;
extraConfig = ''
add_header Cache-Control 'public, max-age=604800, must-revalidate';
client_max_body_size ${toString cfg.maxAttachmentSize};
'';
};
locations."~ ^/(SQL|bin|config|logs|temp|vendor)/" = {

View File

@@ -0,0 +1,101 @@
{
config,
lib,
pkgs,
...
}:
let
cfg = config.services.geph;
in
{
options.services.geph = {
enable = lib.mkEnableOption "geph client daemon";
package = lib.mkPackageOption pkgs "geph" { };
configFile = lib.mkOption {
type = lib.types.pathWith {
inStore = false;
absolute = true;
};
description = ''
Path to the geph config file.
This file contain sensitive credentials, so it must not live in the Nix store.
'';
};
};
config = lib.mkIf cfg.enable {
boot.kernelModules = [ "tun" ];
networking.firewall.checkReversePath = "loose";
systemd.services.geph = {
description = "geph client daemon";
wantedBy = [ "multi-user.target" ];
wants = [ "network-online.target" ];
after = [ "network-online.target" ];
startLimitBurst = 5;
startLimitIntervalSec = 20;
serviceConfig = {
DynamicUser = true;
LoadCredential = "geph-config:${cfg.configFile}";
ExecStart = "${lib.getExe cfg.package} --config %d/geph-config";
Restart = "on-failure";
RestartSec = 2;
LimitNOFILE = 65535;
StateDirectory = "geph";
StateDirectoryMode = "0700";
WorkingDirectory = "/var/lib/geph";
AmbientCapabilities = [
"CAP_NET_ADMIN"
"CAP_NET_BIND_SERVICE"
];
CapabilityBoundingSet = [
"CAP_NET_ADMIN"
"CAP_NET_BIND_SERVICE"
];
DeviceAllow = "/dev/net/tun rw";
DevicePolicy = "closed";
PrivateUsers = false;
PrivateDevices = false;
RestrictAddressFamilies = [
"AF_UNIX"
"AF_INET"
"AF_INET6"
"AF_NETLINK"
];
LockPersonality = true;
MemoryDenyWriteExecute = true;
NoNewPrivileges = true;
PrivateMounts = true;
PrivateTmp = true;
ProcSubset = "pid";
ProtectClock = true;
ProtectControlGroups = true;
ProtectHome = true;
ProtectHostname = true;
ProtectKernelLogs = true;
ProtectKernelModules = true;
ProtectKernelTunables = true;
ProtectProc = "invisible";
ProtectSystem = "strict";
RestrictNamespaces = true;
RestrictRealtime = true;
RestrictSUIDSGID = true;
SystemCallArchitectures = "native";
SystemCallFilter = "@system-service";
UMask = "0077";
};
};
};
meta = {
maintainers = with lib.maintainers; [
MCSeekeri
];
};
}

View File

@@ -301,17 +301,24 @@ in
# Replace the api_key placeholder with the secret
${lib.getExe pkgs.replace-secret} '@API_KEY_FILE@' "$CREDENTIALS_DIRECTORY/API_KEY_FILE" ${final-config-file}
'';
isIptables = (cfg.settings.mode == "iptables") || (cfg.settings.mode == "ipset");
isNftables = cfg.settings.mode == "nftables";
in
rec {
description = "CrowdSec Firewall Bouncer";
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ] ++ (lib.optional config.services.crowdsec.enable "crowdsec.service");
partOf = lib.optional isNftables "nftables.service" ++ lib.optional isIptables "firewall.service";
after =
lib.optional isNftables "nftables.service"
++ lib.optional isIptables "firewall.service"
++ lib.optional config.services.crowdsec.enable "crowdsec.service";
wants = after;
requires = lib.optional cfg.registerBouncer.enable "crowdsec-firewall-bouncer-register.service";
# When using iptables/ipset modes, the bouncer calls external binaries so they must be added to the path.
# For nftables mode, it does not depend on external binaries.
path = lib.optionals ((cfg.settings.mode == "iptables") || (cfg.settings.mode == "ipset")) [
path = lib.optionals isIptables [
pkgs.iptables
pkgs.ipset
];
@@ -381,6 +388,9 @@ in
};
meta = {
maintainers = with lib.maintainers; [ nicomem ];
maintainers = with lib.maintainers; [
nicomem
tornax
];
};
}

View File

@@ -80,7 +80,6 @@ in
# without these some components that are loaded anyway fail to find
# their dependencies
default_config = { };
infrared = { };
# include some popular integrations, that absolutely shouldn't break
knx = { };

View File

@@ -5,13 +5,13 @@
}:
mkLibretroCore {
core = "mednafen-supafaust";
version = "0-unstable-2024-09-30";
version = "0-unstable-2026-03-31";
src = fetchFromGitHub {
owner = "libretro";
repo = "supafaust";
rev = "e25f66765938d33f9ad5850e8d6cd597e55b7299";
hash = "sha256-ZgOXHhEHt54J2B1q6uA8v6uOK53g7idJlgoC4guTGow=";
rev = "584ef2c5571f1ece95f6117aa04b7e8fee213fb1";
hash = "sha256-aptn3igUIvU/ho+6iXAg0J7X5ymdWeTM+zL+BA06tG4=";
};
makefile = "Makefile";

View File

@@ -5,13 +5,13 @@
}:
mkLibretroCore {
core = "puae";
version = "0-unstable-2026-03-24";
version = "0-unstable-2026-04-02";
src = fetchFromGitHub {
owner = "libretro";
repo = "libretro-uae";
rev = "b26def5c5ab9ea35019a42b950e014a22907ea13";
hash = "sha256-DoNYpEqlrWueh/rwB4pkPYPdkSi+EVxP5T6BPgqv1nU=";
rev = "99145bf34993e21dac14973f784821d85729a91d";
hash = "sha256-VIg7e6St1qkQZafTmEMsIDZoWQLkqFZPRk4Cyr43wW8=";
};
makefile = "Makefile";

View File

@@ -1045,7 +1045,7 @@ rec {
passthru = extraPassthru // finalAttrs.src.passthru or { };
# Carry (and merge) information from the underlying `src` if present.
meta = lib.optionalAttrs (src ? meta) (removeAttrs finalAttrs.src.meta [ "position" ]);
meta = lib.optionalAttrs (finalAttrs.src ? meta) (removeAttrs finalAttrs.src.meta [ "position" ]);
};
};

View File

@@ -75,7 +75,7 @@ buildGoModule (finalAttrs: {
# set ldflag for kubectlVersion since it is needed for argo
# Per https://github.com/search?q=repo%3Aargoproj%2Fargo-cd+%22KUBECTL_VERSION%3D%22+path%3AMakefile&type=code
prePatch = ''
export KUBECTL_VERSION=$(grep 'k8s.io/kubectl v' go.mod | cut -f 2 -d " " | cut -f 1 -d "=" )
export KUBECTL_VERSION=$(go list -m -f '{{.Version}}' k8s.io/kubectl)
echo using $KUBECTL_VERSION
ldflags="''${ldflags} -X github.com/argoproj/argo-cd/v3/common.kubectlVersion=''${KUBECTL_VERSION}"
'';

View File

@@ -18,13 +18,13 @@
}:
stdenv.mkDerivation (finalAttrs: {
pname = "attyx";
version = "0.2.47";
version = "0.3.6";
src = fetchFromGitHub {
owner = "semos-labs";
repo = "attyx";
tag = "v${finalAttrs.version}";
hash = "sha256-fREiPiBTzzJtFEPWOISiZ/BI5lZmPyn80oAXohEEGig=";
hash = "sha256-FfHU+XZnMN3HqQFtNEZtYu3YMvBk32QcEP71plDtvjY=";
};
deps = callPackage ./build.zig.zon.nix { };

View File

@@ -54,28 +54,29 @@ let
in
py.pkgs.buildPythonApplication rec {
pname = "awscli2";
version = "2.33.2"; # N.B: if you change this, check if overrides are still up-to-date
version = "2.34.24"; # N.B: if you change this, check if overrides are still up-to-date
pyproject = true;
src = fetchFromGitHub {
owner = "aws";
repo = "aws-cli";
tag = version;
hash = "sha256-dAtcYDdrZASrwBjQfnZ4DUR4F5WhY59/UX92QcILavs=";
hash = "sha256-PDoztQYKfH6FjdSyMQGsT8No3LB56naQ/AxTPN/dslQ=";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace-fail 'flit_core>=3.7.1,<3.9.1' 'flit_core>=3.7.1' \
--replace-fail 'flit_core>=3.7.1,<3.12.1' 'flit_core>=3.7.1' \
--replace-fail 'awscrt==' 'awscrt>=' \
--replace-fail 'distro>=1.5.0,<1.9.0' 'distro>=1.5.0' \
--replace-fail 'docutils>=0.10,<0.20' 'docutils>=0.10' \
--replace-fail 'prompt-toolkit>=3.0.24,<3.0.52' 'prompt-toolkit>=3.0.24' \
--replace-fail 'ruamel.yaml>=0.15.0,<=0.17.21' 'ruamel.yaml>=0.15.0' \
--replace-fail 'ruamel.yaml.clib>=0.2.0,<=0.2.12' 'ruamel.yaml.clib>=0.2.0'
--replace-fail 'ruamel_yaml>=0.15.0,<=0.19.1' 'ruamel_yaml>=0.15.0' \
--replace-fail 'ruamel_yaml_clib>=0.2.0,<=0.2.15' 'ruamel_yaml_clib>=0.2.0' \
--replace-fail 'wcwidth<0.3.0' 'wcwidth>=0.3.0'
substituteInPlace requirements-base.txt \
--replace-fail "wheel==0.43.0" "wheel>=0.43.0"
--replace-fail "wheel==0.46.3" "wheel>=0.46.3"
# Upstream needs pip to build and install dependencies and validates this
# with a configure script, but we don't as we provide all of the packages

View File

@@ -32,20 +32,19 @@
python3Packages.buildPythonApplication (finalAttrs: {
pname = "bottles-unwrapped";
version = "62.0";
version = "63.2";
src = fetchFromGitHub {
owner = "bottlesdevs";
repo = "bottles";
tag = finalAttrs.version;
hash = "sha256-UqK5ULFgNPe9r2xFolU1R5LnlD3kLgBK0qGl48elEwM=";
hash = "sha256-cBqKUf96BLYyVD8onkvejL7pcxYrVCnhjhhT9FSwuNo=";
};
patches = [
./vulkan_icd.patch
./redirect-bugtracker.patch
./remove-flatpak-check.patch
./terminal.patch # Needed for `Launch with Terminal`
]
++ (
if removeWarningPopup then

View File

@@ -1,29 +0,0 @@
diff --git a/bottles/backend/utils/terminal.py b/bottles/backend/utils/terminal.py
index 943cface..1f67822e 100644
--- a/bottles/backend/utils/terminal.py
+++ b/bottles/backend/utils/terminal.py
@@ -132,21 +132,21 @@ class TerminalUtils:
full_cmd = f"{template} {palette} {cmd_for_shell}"
elif term_bin == "xfce4-terminal":
- cmd_for_shell = shlex.quote(f"sh -c {command}")
+ cmd_for_shell = f"sh -c {command}"
try:
full_cmd = template % cmd_for_shell
except Exception:
full_cmd = f"{template} {cmd_for_shell}"
elif term_bin in ["kitty", "foot", "konsole", "gnome-terminal", "wezterm"]:
- cmd_for_shell = shlex.quote(f"sh -c {command}")
+ cmd_for_shell = f"sh -c {command}"
try:
full_cmd = template % cmd_for_shell
except Exception:
full_cmd = f"{template} {cmd_for_shell}"
else:
- cmd_for_shell = shlex.quote(f"bash -c {command}")
+ cmd_for_shell = f"sh -c {command}"
try:
full_cmd = template % cmd_for_shell
except Exception:

View File

@@ -10,7 +10,8 @@
pkg-config,
xercesc,
xalanc,
qt6Packages,
qt6,
wrapGAppsHook3,
}:
stdenv.mkDerivation (finalAttrs: {
@@ -40,27 +41,37 @@ stdenv.mkDerivation (finalAttrs: {
cmake
ninja
pkg-config
qt6Packages.wrapQtAppsHook
qt6.wrapQtAppsHook
wrapGAppsHook3
pandoc
];
buildInputs = [
boost
qt6Packages.qtbase
qt6Packages.qttools
qt6Packages.qtmultimedia
qt6Packages.qtsvg
qt6.qtbase
qt6.qtmultimedia
qt6.qtsvg
qt6.qttools
xercesc
xalanc
];
dontWrapGApps = true;
preFixup = ''
qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
'';
meta = {
description = "Open source beer recipe creation tool";
mainProgram = "brewtarget";
homepage = "http://www.brewtarget.org/";
homepage = "https://www.brewtarget.beer";
license = lib.licenses.gpl3;
platforms = lib.platforms.all;
maintainers = with lib.maintainers; [
avnik
mmahut
ilkecan
];
};
})

View File

@@ -0,0 +1,39 @@
{
lib,
rustPlatform,
fetchFromGitHub,
nix-update-script,
versionCheckHook,
protobuf,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "chirpstack-gateway-mesh";
version = "4.1.3";
src = fetchFromGitHub {
owner = "chirpstack";
repo = "chirpstack-gateway-mesh";
tag = "v${finalAttrs.version}";
hash = "sha256-t4W2G8NzVvcGp6nmCn4Wt9OUR9c7yceKdhDFb/RAk20=";
};
cargoHash = "sha256-3292/Q9OCoxkIOgOwAle37Ltozt1CDGGeXw6lqT91kU=";
nativeBuildInputs = [ protobuf ];
nativeInstallCheckInputs = [ versionCheckHook ];
doInstallCheck = true;
passthru.updateScript = nix-update-script { };
meta = {
description = "Turn LoRa gateways into relays for extending the range of LoRa networks";
homepage = "https://www.chirpstack.io";
changelog = "https://github.com/chirpstack/chirpstack-gateway-mesh/releases/tag/v${finalAttrs.version}";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.stv0g ];
platforms = lib.platforms.linux;
mainProgram = "chirpstack-gateway-mesh";
};
})

View File

@@ -4,42 +4,33 @@
fetchFromGitHub,
}:
let
srcInfo = lib.importJSON ./src.json;
in
buildGoModule rec {
buildGoModule (finalAttrs: {
pname = "chroma";
version = "2.22.0";
version = "2.23.1";
# To update:
# nix-prefetch-git --rev v${version} https://github.com/alecthomas/chroma.git > src.json
src = fetchFromGitHub {
owner = "alecthomas";
repo = "chroma";
rev = "v${version}";
inherit (srcInfo) sha256;
tag = "v${finalAttrs.version}";
hash = "sha256-Znmcds0ru9VyH/0qE7KnW7l0QeRDoh9PnUPHTYPAA6w=";
};
vendorHash = "sha256-kzlXrIMSa5C4UFt+BiMh6NedelQG49OxYbreeWhCb80=";
vendorHash = "sha256-3mmO5hjjIqVqKiSOrFFQH8OaQTviJVHrznMYsgHP82A=";
modRoot = "./cmd/chroma";
# substitute version info as done in goreleaser builds
ldflags = [
"-X"
"main.version=${version}"
"-X"
"main.commit=${srcInfo.rev}"
"-X"
"main.date=${srcInfo.date}"
"-X=main.version=${finalAttrs.version}"
"-X=main.commit=${finalAttrs.src.tag}"
"-X=main.date=1970-01-01T00:00:00Z"
];
meta = {
homepage = "https://github.com/alecthomas/chroma";
description = "General purpose syntax highlighter in pure Go";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.sternenseemann ];
maintainers = with lib.maintainers; [ miniharinn ];
mainProgram = "chroma";
};
}
})

View File

@@ -1,14 +0,0 @@
{
"url": "https://github.com/alecthomas/chroma.git",
"rev": "467c878aa553cdb4b0d486a534ea744f6ac7ef5e",
"date": "2026-01-10T09:37:30+11:00",
"path": "/nix/store/qkfgjvpw8j5rkfgh687kxzkv8ac9apba-chroma",
"sha256": "1wlvxxlbwaq963rkr9fwxc6qwa77m49icq2gdzf46w7wdc3cygpm",
"hash": "sha256-9T7PBmv8cEPcb09gFhOp5yiODevcpTzzMAkrvmjvm/I=",
"fetchLFS": false,
"fetchSubmodules": false,
"deepClone": false,
"fetchTags": false,
"leaveDotGit": false,
"rootDir": ""
}

View File

@@ -17,11 +17,11 @@
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "enpass-mac";
version = "6.11.8.1861";
version = "6.11.20.2229";
src = fetchurl {
url = "https://dl.enpass.io/stable/mac/package/${finalAttrs.version}/Enpass.pkg";
hash = "sha256-n0ClsyGTS52ms161CJihIzBI5GjiMIF6HEJ59+jciq8=";
hash = "sha256-o4IHDeuoOtZ6gvvfxrPFXCou0nkLOpcMnip/+f6eVkU=";
};
dontPatch = true;
@@ -39,7 +39,9 @@ stdenvNoCC.mkDerivation (finalAttrs: {
runHook preUnpack
xar -xf $src
gunzip -dc Enpass_temp.pkg/Payload | cpio -i
gunzip -dc Enpass_temp.pkg/Payload > decompressed.out
cat decompressed.out | cpio -it | grep -v '/._' > file-list-no-resource-forks.txt
cat decompressed.out | cpio -i -E file-list-no-resource-forks.txt
runHook postUnpack
'';

View File

@@ -11,17 +11,17 @@
buildNpmPackage rec {
pname = "firebase-tools";
version = "15.12.0";
version = "15.13.0";
nodejs = nodejs_22;
src = fetchFromGitHub {
owner = "firebase";
repo = "firebase-tools";
tag = "v${version}";
hash = "sha256-xmLTxuOazHM4HObDVgQe1CqS8IaQuxL9g3Vdy+l9arI=";
hash = "sha256-5uamK+vP4bdkm7uwtVc6MoKR6XJ5vDk3jj3Q4dy5TdM=";
};
npmDepsHash = "sha256-zozlGFDc+fsh11xZy//qQBiEqWCBEQUUW6NSCM6SPT0=";
npmDepsHash = "sha256-PdV62ktNB8Tz88ea2rQZ8+y+akmw33zhWMe0L0lHo88=";
# No more package-lock.json in upstream src
postPatch = ''

View File

@@ -5,31 +5,34 @@
nodejs,
fetchNpmDeps,
buildPackages,
php84,
php85,
nixosTests,
nix-update-script,
dataDir ? "/var/lib/firefly-iii-data-importer",
}:
let
php = php85;
in
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "firefly-iii-data-importer";
version = "2.0.4";
version = "2.2.2";
src = fetchFromGitHub {
owner = "firefly-iii";
repo = "data-importer";
tag = "v${finalAttrs.version}";
hash = "sha256-PeJf0b15865iz6q3vPNIIEg8UggP7OTukyRn3yLI25o=";
hash = "sha256-lHofvjw4wK14tferHt59uSIYPVa5KwNQUB+GgmyUoJc=";
};
buildInputs = [ php84 ];
buildInputs = [ php ];
nativeBuildInputs = [
nodejs
nodejs.python
buildPackages.npmHooks.npmConfigHook
php84.composerHooks.composerInstallHook
php84.packages.composer-local-repo-plugin
php.composerHooks.composerInstallHook
php.packages.composer-local-repo-plugin
];
composerNoDev = true;
@@ -38,15 +41,15 @@ stdenvNoCC.mkDerivation (finalAttrs: {
composerStrictValidation = true;
strictDeps = true;
vendorHash = "sha256-hNapeTzqsDqfnG3iea6+bOdb6wd/6fgyfMpEnj5lhB4=";
vendorHash = "sha256-eiQpGtqjix2HmMU5sarysxm7dGgQx40/kZKPemrHBHU=";
npmDeps = fetchNpmDeps {
inherit (finalAttrs) src;
name = "${finalAttrs.pname}-npm-deps";
hash = "sha256-pslV+UCFblp3gObCh+xDFNvYb/x3Eqz+Z9r+rC6gwXY=";
hash = "sha256-BQglXnIlocZDTtAmSuga5dbB/m8AI5z1F/+VQ1kLzQc=";
};
composerRepository = php84.mkComposerRepository {
composerRepository = php.mkComposerRepository {
inherit (finalAttrs)
pname
src
@@ -64,7 +67,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
'';
passthru = {
phpPackage = php84;
phpPackage = php;
tests = nixosTests.firefly-iii-data-importer;
updateScript = nix-update-script {
extraArgs = [

View File

@@ -6,11 +6,11 @@
let
pname = "fluent-reader";
version = "1.1.4";
version = "1.2.0";
src = fetchurl {
url = "https://github.com/yang991178/fluent-reader/releases/download/v${version}/Fluent.Reader.${version}.AppImage";
hash = "sha256-2oLV9SWBNt0j1WAS6j4dobsUEpptjTubpr8pdOcIOY4=";
hash = "sha256-v9sj0xy6YalPZ49z8E6bczgzu9XmBuA1JK7/leKnvV4=";
};
appimageContents = appimageTools.extractType2 { inherit pname version src; };

View File

@@ -9,6 +9,7 @@
libngspice,
libgit2,
clipper,
wrapGAppsHook3,
}:
let
@@ -53,6 +54,7 @@ stdenv.mkDerivation {
pkg-config
qt6.qttools
kdePackages.wrapQtAppsHook
wrapGAppsHook3
];
buildInputs = [
@@ -114,6 +116,12 @@ stdenv.mkDerivation {
makeWrapper $out/Applications/Fritzing.app/Contents/MacOS/Fritzing $out/bin/Fritzing
'';
dontWrapGApps = true;
preFixup = ''
qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
'';
postFixup = ''
# generate the parts.db file
QT_QPA_PLATFORM=offscreen "$out/bin/Fritzing" \

View File

@@ -2,16 +2,21 @@
lib,
rustPlatform,
fetchFromGitHub,
makeBinaryWrapper,
pkg-config,
openssl,
rust-jemalloc-sys-unprefixed,
sqlite,
bash,
coreutils,
iproute2,
iptables,
nix-update-script,
}:
let
binPath = lib.makeBinPath [
bash
coreutils
iproute2
iptables
];
@@ -32,9 +37,16 @@ rustPlatform.buildRustPackage (finalAttrs: {
postPatch = ''
substituteInPlace binaries/geph5-client/src/vpn/*.sh \
--replace-fail 'PATH=' 'PATH=${binPath}:'
substituteInPlace binaries/geph5-client/src/vpn/linux.rs \
--replace-fail 'Command::new("sh")' 'Command::new("${bash}/bin/sh")' \
--replace-fail '/usr/bin/env ' '${lib.getExe' coreutils "env"} '
'';
nativeBuildInputs = [ pkg-config ];
nativeBuildInputs = [
makeBinaryWrapper
pkg-config
];
buildInputs = [
openssl
@@ -64,6 +76,12 @@ rustPlatform.buildRustPackage (finalAttrs: {
"--skip=tests::ping_pong"
];
postFixup = ''
for program in $out/bin/*; do
wrapProgram "$program" --prefix PATH : ${binPath}
done
'';
passthru.updateScript = nix-update-script {
extraArgs = [
"--version-regex"

View File

@@ -8,15 +8,15 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "gitlab-ci-ls";
version = "1.2.5";
version = "1.3.0";
src = fetchFromGitHub {
owner = "alesbrelih";
repo = "gitlab-ci-ls";
rev = "${finalAttrs.version}";
hash = "sha256-Ly4pk+16RCr3r33VrYPTZGUXfUNd5IJHfA+uj7Ef3bk=";
hash = "sha256-AXiP5v8aquyIdsZcTjTlAZETwTo3LfhvdLA2180uk1E=";
};
cargoHash = "sha256-/w5inDL6ECs2Ce8Bdfr4sOKhGeFC0tE5SrW3aIXjHnA=";
cargoHash = "sha256-AO45OvyG3eBOaeYEqJT7GM/sqej/k+rNDtXN/+K16/8=";
nativeBuildInputs = [ pkg-config ];
buildInputs = [ openssl ];

View File

@@ -37,12 +37,12 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "gnucash";
version = "5.14";
version = "5.15";
# raw source code doesn't work out of box; fetchFromGitHub not usable
src = fetchurl {
url = "https://github.com/Gnucash/gnucash/releases/download/${finalAttrs.version}/gnucash-${finalAttrs.version}.tar.bz2";
hash = "sha256-DG/SAhTahqmgRDNZ97YtmivU7YAv1oCFPaS3V6NxrJE=";
hash = "sha256-sL1K9Dtr3jRUIn1LOY6ex6Db1RQ0acE3P8gkw8qrCQk=";
};
nativeBuildInputs = [
@@ -134,7 +134,7 @@ stdenv.mkDerivation (finalAttrs: {
owner = "Gnucash";
repo = "gnucash-docs";
tag = finalAttrs.version;
hash = "sha256-KaUkpqBSQnrWR/ynZC6DuUUnbCURxwFBVg+f4HVwy3Q=";
hash = "sha256-EI/By0Ek3qDCmi6svX96Wg78UnmsDZzQLRSqErPUuxA=";
};
nativeBuildInputs = [ cmake ];

View File

@@ -19,6 +19,6 @@ src_doc_hash=$(nix-prefetch-github Gnucash gnucash-docs --rev "$latest_version"
src_doc_hash=$(nix-hash --to-sri --type sha256 "$src_doc_hash")
cd "$(dirname "${BASH_SOURCE[0]}")"
sed -i default.nix -e "s|$old_src_hash|$src_hash|"
sed -i default.nix -e "s|$old_src_doc_hash|$src_doc_hash|"
sed -i default.nix -e "/ version =/s|\"${UPDATE_NIX_OLD_VERSION}\"|\"${latest_version}\"|"
sed -i package.nix -e "s|$old_src_hash|$src_hash|"
sed -i package.nix -e "s|$old_src_doc_hash|$src_doc_hash|"
sed -i package.nix -e "/ version =/s|\"${UPDATE_NIX_OLD_VERSION}\"|\"${latest_version}\"|"

View File

@@ -4,7 +4,7 @@
lib,
}:
let
version = "0.17.9";
version = "0.17.12";
in
buildGoModule {
pname = "heimdall-proxy";
@@ -15,10 +15,10 @@ buildGoModule {
owner = "dadrus";
repo = "heimdall";
tag = "v${version}";
hash = "sha256-x1Whe2EPGFwsiLxrkKalNUWXwgXHKDBJyzbjtWMx/PY=";
hash = "sha256-LwvizSMmMzcKl3BbPZAXLJkpxyLkz75uSL12PxgrrCM=";
};
vendorHash = "sha256-Gu+fBeo6uUYBSWYXsrWD5yI1eGR8QVpAW7jkCod4IpY=";
vendorHash = "sha256-W0XhE9wcnLT9pVe5hNuDbkX1egsuS7x6ueBscVDztsA=";
tags = [ "sqlite" ];

View File

@@ -8,15 +8,15 @@
buildGoModule (finalAttrs: {
pname = "infracost";
version = "0.10.43";
version = "0.10.44";
src = fetchFromGitHub {
owner = "infracost";
rev = "v${finalAttrs.version}";
repo = "infracost";
sha256 = "sha256-02HQp11MfUKK0tXcBRmGqatG5C7462VEWtHHCjLv32I=";
sha256 = "sha256-7TH7ZWANQMlhfpCP5OdiQCL6OsFP1RK5YGV8hGuouBY=";
};
vendorHash = "sha256-cNL68orv14HhzwsuaqzfDbVnBsMNE3Lu4EiCvKQhgpM=";
vendorHash = "sha256-ZG6DjYcHvEii55ayx6x168L2v04n/pAZRqqQ7DKvugA=";
ldflags = [
"-s"

View File

@@ -12,15 +12,15 @@
nixosTests,
}:
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
pname = "irqbalance";
version = "1.9.4-unstable-2025-06-10";
version = "1.9.5";
src = fetchFromGitHub {
owner = "Irqbalance";
repo = "irqbalance";
rev = "8e8945e5092caf45605dfb1e66165e2eb9ec1f56";
sha256 = "sha256-DSXFJZ0MyI10ZVFcGY0Sx1kye1ALMeG41nmyqbfO8vQ=";
tag = "v${finalAttrs.version}";
hash = "sha256-DSXFJZ0MyI10ZVFcGY0Sx1kye1ALMeG41nmyqbfO8vQ=";
};
nativeBuildInputs = [
@@ -54,12 +54,12 @@ stdenv.mkDerivation rec {
meta = {
homepage = "https://github.com/Irqbalance/irqbalance";
changelog = lib.strings.optionalString (
!lib.strings.hasInfix "-unstable-" version
) "https://github.com/Irqbalance/irqbalance/releases/tag/v${version}";
!lib.strings.hasInfix "-unstable-" finalAttrs.version
) "https://github.com/Irqbalance/irqbalance/releases/tag/v${finalAttrs.version}";
description = "Daemon to help balance the cpu load generated by interrupts across all of a systems cpus";
license = lib.licenses.gpl2Only;
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [ moni ];
mainProgram = "irqbalance";
};
}
})

View File

@@ -9,13 +9,13 @@
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "kanboard";
version = "1.2.51";
version = "1.2.52";
src = fetchFromGitHub {
owner = "kanboard";
repo = "kanboard";
tag = "v${finalAttrs.version}";
hash = "sha256-2zNYlqn8Dk/GDdtSfuRLTPzOQfGKEytJtKz18mGmBM0=";
hash = "sha256-iI9Dyno1s9P9t7IxfDs5gQUl9yFyu2taXvKY0WnF2Q0=";
};
dontBuild = true;

View File

@@ -0,0 +1,39 @@
{
buildGoModule,
fetchFromGitHub,
lib,
nix-update-script,
}:
buildGoModule (finalAttrs: {
pname = "kubectl-rabbitmq";
version = "2.20.0";
src = fetchFromGitHub {
owner = "rabbitmq";
repo = "cluster-operator";
tag = "v${finalAttrs.version}";
hash = "sha256-anJZy0XUEJ0j912g7+ltq2bMVE/KPpyBWuh7AqGgx30=";
};
modRoot = "kubectl-rabbitmq";
vendorHash = "sha256-UnZ47TUarqZNYrvpfNJy5tm9Yq5/eFrkMSLRqjqM9PU=";
ldflags = [
"-s"
"-w"
"-X main.pluginVersion=${finalAttrs.version}"
];
passthru.updateScript = nix-update-script { };
meta = {
description = "RabbitMQ Cluster Operator Plugin for kubectl";
homepage = "https://github.com/rabbitmq/cluster-operator";
license = lib.licenses.mpl20;
maintainers = with lib.maintainers; [ surfaceflinger ];
mainProgram = "kubectl-rabbitmq";
platforms = lib.platforms.all;
};
})

View File

@@ -0,0 +1,44 @@
{
lib,
buildGoModule,
fetchFromGitHub,
nix-update-script,
}:
buildGoModule rec {
pname = "lazycommit";
version = "1.4.0";
src = fetchFromGitHub {
owner = "m7medvision";
repo = "lazycommit";
tag = "v${version}";
hash = "sha256-DD3DXTev8WHNkAYDrPY2PISuA8WwKuK0GCLebpn01Rg=";
};
vendorHash = "sha256-4OPCUWXxsAnzxsqZPHhjvhxQQf5Knm7nGqrdjH4I4YY=";
ldflags = [
"-X main.version=${version}"
"-X main.buildSource=nix"
];
passthru = {
updateScript = nix-update-script {
extraArgs = [
"--version-regex"
"^v([0-9.]+)$"
];
};
};
meta = {
description = "Simple cli for generating git commits";
homepage = "https://github.com/m7medvision/lazycommit";
changelog = "https://github.com/m7medvision/lazycommit/releases/tag/v${version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [
m7medvision
];
mainProgram = "lazycommit";
};
}

View File

@@ -54,7 +54,6 @@ stdenv.mkDerivation (finalAttrs: {
license = lib.licenses.isc;
maintainers = with lib.maintainers; [
mdaniels5757
raskin
];
teams = [ lib.teams.security-review ];
pkgConfigModules = [ "libsodium" ];

View File

@@ -7,11 +7,11 @@
appimageTools.wrapType2 rec {
pname = "lunarclient";
version = "3.6.1";
version = "3.6.3";
src = fetchurl {
url = "https://launcherupdates.lunarclientcdn.com/Lunar%20Client-${version}-ow.AppImage";
hash = "sha512-/Z9wgQr3WM5i0mB+XdqEzkpkAZ1/cRQVbgy7m/83c7bQtVGTKWA5zTZzdZwadeaoAJ6uSnrYHp6d1xhMGqHxUw==";
hash = "sha512-hsH6xgTVQFrUVM4DF06+WBNbr3X2TlN8gKO2J0m7OUrOO2LDBLR2jweuajN9C0d5EiosdiXHPjxmiv+7JXeCFQ==";
};
nativeBuildInputs = [ makeWrapper ];

View File

@@ -8,16 +8,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "mdwatch";
version = "0.1.22";
version = "0.1.24";
src = fetchFromGitHub {
owner = "vimlinuz";
repo = "mdwatch";
tag = "v${finalAttrs.version}";
hash = "sha256-aAa9Y1aKfZVnUyNkEUM7FJKEvQsX9BUqGlTb9zhZzTk=";
hash = "sha256-dQMGVqCR8DEgKf1G0HG7eCydNju4OBaQ9UMgDD5hdvI=";
};
cargoHash = "sha256-boa/Y0PfINniA3WNS6DailBcHZ2K6yhxjOE0Eanevc8=";
cargoHash = "sha256-5HIc0h042gP4mGr4Yp6ej0fkwNW2SDEzlwITgLF2/7I=";
updateScript = nix-update-script { };

View File

@@ -97,7 +97,7 @@ let
++ lib.optionals mediaSupport [ ffmpeg_7 ]
);
version = "15.0.8";
version = "15.0.9";
sources = {
x86_64-linux = fetchurl {
@@ -109,7 +109,7 @@ let
"https://tor.eff.org/dist/mullvadbrowser/${version}/mullvad-browser-linux-x86_64-${version}.tar.xz"
"https://tor.calyxinstitute.org/dist/mullvadbrowser/${version}/mullvad-browser-linux-x86_64-${version}.tar.xz"
];
hash = "sha256-EuyDwgNoVECEko66xFnmteVNnPsn2POlXRU9iS9VPlo=";
hash = "sha256-GkLCztflyfRFZiZg+bZjUFvK9i+jbagyzB7SgbjKlpQ=";
};
};

View File

@@ -3,6 +3,7 @@
stdenv,
fetchurl,
avahi,
ffmpeg_7,
obs-studio-plugins,
}:
@@ -29,8 +30,6 @@ stdenv.mkDerivation rec {
hash = versionJSON.hash;
};
buildInputs = [ avahi ];
unpackPhase = ''
unpackFile $src
echo y | ./${installerName}.sh
@@ -38,29 +37,30 @@ stdenv.mkDerivation rec {
'';
installPhase = ''
mkdir $out
mkdir -p $out $out/share/doc/ndi-6
mv bin/${ndiPlatform} $out/bin
for i in $out/bin/*; do
if [ -L "$i" ]; then continue; fi
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" "$i"
done
patchelf --set-rpath "${avahi}/lib:${stdenv.cc.libc}/lib" $out/bin/ndi-record
patchelf --set-rpath "${avahi}/lib:${stdenv.cc.libc}/lib" $out/bin/ndi-free-audio
mv lib/${ndiPlatform} $out/lib
for i in $out/lib/*; do
if [ -L "$i" ]; then continue; fi
patchelf --set-rpath "${avahi}/lib:${stdenv.cc.libc}/lib" "$i"
done
rm $out/bin/libndi.so.${majorVersion}
ln -s $out/lib/libndi.so $out/bin/libndi.so.${majorVersion}
# Fake ndi version 5 for compatibility with DistroAV (obs plugin using NDI)
ln -s $out/lib/libndi.so $out/bin/libndi.so.5
mv include examples $out/
mkdir -p $out/share/doc/ndi-6
mv licenses $out/share/doc/ndi-6/licenses
mv documentation/* $out/share/doc/ndi-6/
'';
dontPatchELF = true;
fixupPhase = ''
for i in $out/bin/*; do
if [ -L "$i" ]; then continue; fi
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" "$i"
patchelf --set-rpath "${avahi}/lib:${ffmpeg_7.lib}/lib:${stdenv.cc.libc}/lib" "$i"
done
for i in $out/lib/*; do
if [ -L "$i" ]; then continue; fi
patchelf --set-rpath "${avahi}/lib:${ffmpeg_7.lib}/lib:${stdenv.cc.libc}/lib" "$i"
done
'';
# Stripping breaks ndi-record.
dontStrip = true;
@@ -81,6 +81,9 @@ stdenv.mkDerivation rec {
];
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
license = lib.licenses.unfree;
maintainers = with lib.maintainers; [ globule655 ];
maintainers = with lib.maintainers; [
globule655
ChaosAttractor
];
};
}

View File

@@ -3,6 +3,7 @@
stdenv,
fetchurl,
avahi,
ffmpeg_4,
obs-studio-plugins,
}:
@@ -32,8 +33,6 @@ stdenv.mkDerivation rec {
hash = versionJSON.hash;
};
buildInputs = [ avahi ];
unpackPhase = ''
unpackFile $src
echo y | ./${installerName}.sh
@@ -41,24 +40,26 @@ stdenv.mkDerivation rec {
'';
installPhase = ''
mkdir $out
mkdir -p $out $out/share/doc/${pname}-${version}
mv bin/${ndiPlatform} $out/bin
mv lib/${ndiPlatform} $out/lib
mv include examples $out/
mv licenses $out/share/doc/${pname}-${version}/licenses
mv documentation/* $out/share/doc/${pname}-${version}/
'';
dontPatchELF = true;
fixupPhase = ''
for i in $out/bin/*; do
if [ -L "$i" ]; then continue; fi
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" "$i"
patchelf --set-rpath "${avahi}/lib:${ffmpeg_4.lib}/lib:${stdenv.cc.libc}/lib" "$i"
done
patchelf --set-rpath "${avahi}/lib:${stdenv.cc.libc}/lib" $out/bin/ndi-record
mv lib/${ndiPlatform} $out/lib
for i in $out/lib/*; do
if [ -L "$i" ]; then continue; fi
patchelf --set-rpath "${avahi}/lib:${stdenv.cc.libc}/lib" "$i"
patchelf --set-rpath "${avahi}/lib:${ffmpeg_4.lib}/lib:${stdenv.cc.libc}/lib" "$i"
done
rm $out/bin/libndi.so.${majorVersion}
ln -s $out/lib/libndi.so.${version} $out/bin/libndi.so.${majorVersion}
mv include examples $out/
mkdir -p $out/share/doc/${pname}-${version}
mv licenses $out/share/doc/${pname}-${version}/licenses
mv documentation/* $out/share/doc/${pname}-${version}/
'';
# Stripping breaks ndi-record.
@@ -78,6 +79,7 @@ stdenv.mkDerivation rec {
"aarch64-linux"
"armv7l-linux"
];
maintainers = with lib.maintainers; [ ChaosAttractor ];
hydraPlatforms = [ ];
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
license = lib.licenses.unfree;

View File

@@ -6,14 +6,14 @@
python3Packages.buildPythonApplication (finalAttrs: {
pname = "nemorosa";
version = "0.4.3";
version = "0.5.0";
pyproject = true;
src = fetchFromGitHub {
owner = "KyokoMiki";
repo = "nemorosa";
tag = finalAttrs.version;
hash = "sha256-1mP+sdAScXAFp4wjPiSCez6BvzCDgOt/MtGWQv0PD0E=";
hash = "sha256-1Heh6iE33IM5SSrXjQMUTOS5xDh+c9nlpzQRNIkUqck=";
};
# Upstream uses overly strict, fresh version specifiers

View File

@@ -0,0 +1,218 @@
{
lib,
buildGoModule,
fetchFromGitHub,
fetchurl,
autoPatchelfHook,
unzip,
go_1_25,
stdenv,
vulkan-loader,
zlib,
# Feature flags (all enabled by default, set slim = true to disable all optional deps)
slim ? false,
enableCuda ? !slim && stdenv.hostPlatform.isLinux,
enableFfmpeg ? !slim && stdenv.hostPlatform.isLinux,
enableVulkan ? !slim && stdenv.hostPlatform.isLinux,
# Optional dependencies
cudaPackages,
ffmpeg_4,
gfortran,
pcre2,
darwinMinVersionHook,
openssl,
fftw,
lame,
mpg123,
llvmPackages,
}:
let
bridgeVersion = "v1.0.45-rc1";
bridge = fetchurl {
url =
let
platformDir =
{
x86_64-linux = "linux_x86_64";
aarch64-linux = "linux_arm64";
aarch64-darwin = "macos_arm64";
}
.${stdenv.hostPlatform.system};
in
"https://nexa-model-hub-bucket.s3.us-west-1.amazonaws.com/public/nexasdk/${bridgeVersion}/${platformDir}/nexasdk-bridge.zip";
hash =
{
x86_64-linux = "sha256-bvULCeGXNd8Alu7V32M5Me23Rh6of6L7hdPYrkOlxB0=";
aarch64-linux = "sha256-KaHNmq776FtE4tF8jROV43QIyUNaYz/V1kkgMwwjcBo=";
aarch64-darwin = "sha256-QVh5HutaB/BfCYRgwXdtMVWtDcYzfL9N9qW2GhcK2aY=";
}
.${stdenv.hostPlatform.system};
};
in
(buildGoModule.override { go = go_1_25; }) (finalAttrs: {
pname = "nexa";
version = "0.2.73";
src = fetchFromGitHub {
owner = "NexaAI";
repo = "nexa-sdk";
tag = "v${finalAttrs.version}";
hash = "sha256-JioUguVO2z37BYxkXBlDEswJIh80bpOONG6EVNlq5OA=";
};
modRoot = "runner";
vendorHash = "sha256-ovDlt8WpZB7VcNJ8Oy0YDRsreR15fMT7rIHPpd4JVGY=";
nativeBuildInputs = [
unzip
]
++ lib.optionals stdenv.hostPlatform.isLinux [
autoPatchelfHook
];
buildInputs =
lib.optionals stdenv.hostPlatform.isLinux [
stdenv.cc.cc.lib
zlib
pcre2
gfortran.cc.lib
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
(darwinMinVersionHook "12.0")
]
++ lib.optionals enableVulkan [
vulkan-loader
]
++ lib.optionals enableFfmpeg [
ffmpeg_4.lib
]
++ lib.optionals enableCuda [
cudaPackages.cuda_cudart
cudaPackages.libcublas
];
# libcuda.so.1 is provided by the NVIDIA driver at runtime
autoPatchelfIgnoreMissingDeps = lib.optionals stdenv.hostPlatform.isLinux (
[
"libcuda.so.1"
]
++ lib.optionals (!enableCuda) [
"libcudart.so.12"
"libcublas.so.12"
"libcublasLt.so.12"
]
++ lib.optionals (!enableFfmpeg) [
"libavformat.so.58"
"libavfilter.so.7"
"libavcodec.so.58"
"libavutil.so.56"
"libswresample.so.3"
]
++ lib.optionals (!enableVulkan) [
"libvulkan.so.1"
]
);
subPackages = [
"cmd/nexa-cli"
"cmd/nexa-launcher"
];
preBuild = ''
unzip ${bridge} -d build
'';
env.CGO_ENABLED = "1";
ldflags = [
"-s"
"-w"
"-X main.Version=v${finalAttrs.version}"
];
tags = [
"sonic"
"avx"
];
doCheck = false;
doInstallCheck = true;
# Can't use versionCheckHook because nexa requires $HOME to be set
installCheckPhase = ''
runHook preInstallCheck
export HOME=$TMPDIR
output="$($out/bin/nexa version 2>&1 || true)"
echo "$output"
echo "$output" | grep -q "${finalAttrs.version}"
runHook postInstallCheck
'';
postInstall = ''
mv $out/bin/nexa-launcher $out/bin/nexa
# Preserve subdirectory structure the bridge scans subdirs for plugins
mkdir -p $out/lib
cp -R build $out/lib/nexa
chmod -R u+w $out/lib/nexa
''
+ lib.optionalString stdenv.hostPlatform.isLinux ''
patchelf --set-rpath $out/lib/nexa $out/bin/nexa-cli
''
+ lib.optionalString stdenv.hostPlatform.isDarwin ''
install_name_tool -add_rpath $out/lib/nexa $out/bin/nexa-cli
# Rewrite hardcoded homebrew paths in prebuilt bridge dylibs
for f in $(find $out/lib/nexa -name '*.dylib'); do
for ref in $(otool -L "$f" | awk '/\/opt\/homebrew/ {print $1}'); do
lib_name=$(basename "$ref")
case "$lib_name" in
libssl*|libcrypto*) new_path="${openssl.out}/lib/$lib_name" ;;
libfftw3.3.dylib) new_path="${fftw.out}/lib/$lib_name" ;;
libfftw3f.3.dylib) new_path="${fftw.out}/lib/$lib_name" ;;
libmp3lame*) new_path="${lame.lib}/lib/$lib_name" ;;
libmpg123*) new_path="${mpg123.out}/lib/$lib_name" ;;
libomp*) new_path="${llvmPackages.openmp}/lib/$lib_name" ;;
*)
echo "ERROR: unknown homebrew reference in $f: $ref"
echo "Add a replacement for $lib_name to the case statement above"
exit 1
;;
esac
install_name_tool -change "$ref" "$new_path" "$f"
done
# Fix self-referencing install names with homebrew paths
id=$(otool -D "$f" | tail -1)
if [[ "$id" == /opt/homebrew/* ]]; then
install_name_tool -id "$f" "$f"
fi
done
# Final verification: fail if any homebrew references remain
remaining=$(find $out/lib/nexa -name '*.dylib' -exec otool -L {} + | grep /opt/homebrew/ || true)
if [[ -n "$remaining" ]]; then
echo "ERROR: homebrew references remain after patching:"
echo "$remaining"
exit 1
fi
'';
meta = {
description = "Nexa AI SDK CLI for model management, inference, and server operations";
homepage = "https://github.com/NexaAI/nexa-sdk";
changelog = "https://github.com/NexaAI/nexa-sdk/releases/tag/v${finalAttrs.version}";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ mkg20001 ];
mainProgram = "nexa";
platforms = [
"x86_64-linux"
"aarch64-linux"
"aarch64-darwin"
];
};
})

View File

@@ -40,11 +40,11 @@ in
stdenv.mkDerivation (finalAttrs: {
pname = "nfs-utils";
version = "2.8.7";
version = "2.9.1";
src = fetchurl {
url = "mirror://kernel/linux/utils/nfs-utils/${finalAttrs.version}/nfs-utils-${finalAttrs.version}.tar.xz";
hash = "sha256-WdDx4XsY76pg6jzPianK0yF/jTsjwY0v40slyJadYK4=";
hash = "sha256-MChGNDv1Cfj4hMI729D+hTt/fLtlcgYKkIInnROyGiw=";
};
# libnfsidmap is built together with nfs-utils from the same source,

View File

@@ -0,0 +1,39 @@
{
lib,
rustPlatform,
fetchFromGitHub,
nix-update-script,
pkgsStatic,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "nix-user-chroot";
version = "2.1.1";
src = fetchFromGitHub {
owner = "nix-community";
repo = "nix-user-chroot";
tag = finalAttrs.version;
hash = "sha256-PU71ulCYaT7vM70ariJAgOXBqfBzWDsMh+l4tcnbGYw=";
};
cargoHash = "sha256-VgwLuR+ZGIZi2aTBAevngTyZLswduFbKzoFgL9TFUj4=";
passthru.updateScript = nix-update-script { };
NIX_USER_CHROOT_TEST_BUSYBOX = "${pkgsStatic.busybox}/bin/busybox";
checkFlags = [
"--skip=run_nix_install" # Test requires network
];
meta = {
description = "Install & Run Nix Programs without root permissions";
homepage = "https://github.com/nix-community/nix-user-chroot";
license = lib.licenses.mit;
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [
eveeifyeve
mic92
];
mainProgram = "nix-user-chroot";
};
})

View File

@@ -2,44 +2,38 @@
lib,
stdenv,
callPackage,
fetchFromGitHub,
fetchurl,
nix-update-script,
turingplus,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "opentxl";
version = "11.3.7";
src = fetchFromGitHub {
owner = "CordyJ";
repo = "OpenTxl";
tag = "v${finalAttrs.version}";
hash = "sha256-Gh0OEZ5pGhbxDIKYuBLdzUV7Ezn+7elm146ccpJ5bn8=";
# The code generation part of the upstream build system relies on an x86-only binary,
# so the generated code is fetched from the GitHub release instead
src = fetchurl {
url = "https://github.com/CordyJ/OpenTxl/releases/download/v${finalAttrs.version}/OpenTxl-${finalAttrs.version}-csrc.tar.gz";
hash = "sha256-qIvxQqo1yCVJImjUvNNinzhoywVgaq9s0E+Ab+QStc0=";
};
nativeBuildInputs = [ turingplus ];
# Using -std=gnu89 to prevent errors that occur with default args
env.NIX_CFLAGS_COMPILE = "-std=gnu89 -Wno-int-conversion";
postPatch = ''
# Replace hardcoded /bin/rm in various files
find . -type f -exec sed -i 's#/bin/rm#rm#g' {} +
# Replace hardcoded FHS paths in various files
find . -type f -exec sed -i \
-e 's#/bin/mv#mv#g' \
-e 's#/bin/rm#rm#g' \
-e "s#/usr/local/bin#$out/bin#g" \
-e "s#/usr/local/lib/txl#$out/lib#g" \
{} +
# Replace hardcoded gcc references
substituteInPlace src/scripts/c/unix/{txlc,txl2c} \
substituteInPlace scripts/unix/{txlc,txl2c} \
--replace-fail gcc '${stdenv.cc}/bin/cc'
# Replace hardcoded FHS paths
substituteInPlace src/scripts/c/unix/* src/scripts/t/* \
--replace-fail '/usr/local/bin' "$out/bin" \
--replace-fail '/usr/local/lib/txl' "$out/lib"
'';
# Generate source files and enter directory
preBuild = ''
make csrc
cd csrc
makeFlagsArray+=(
CC="$CC"
LD="$CC"
@@ -64,10 +58,7 @@ stdenv.mkDerivation (finalAttrs: {
meta = {
description = "Open-source compiler for the Txl language";
mainProgram = "txl";
platforms = [
"x86_64-linux"
"x86_64-darwin"
];
platforms = lib.platforms.unix;
homepage = "https://github.com/CordyJ/OpenTxl";
downloadPage = "https://github.com/CordyJ/OpenTxl/releases";
changelog = "https://github.com/CordyJ/OpenTxl/releases/tag/v${finalAttrs.version}";

View File

@@ -0,0 +1,43 @@
{
lib,
buildGoModule,
fetchFromGitHub,
nix-update-script,
versionCheckHook,
}:
buildGoModule (finalAttrs: {
pname = "otel-tui";
version = "0.7.1";
src = fetchFromGitHub {
owner = "ymtdzzz";
repo = "otel-tui";
tag = "v${finalAttrs.version}";
hash = "sha256-+OvbBmFGyS5tpFtgn1DDxWp+LD5BAl9ojSIDGokfcRk=";
};
vendorHash = "sha256-2cH4DYogEfVywynfpZk6XfaiZaNyzbsDiwGSwolREPQ=";
env.GOWORK = "off";
ldflags = [
"-s"
"-X main.version=${finalAttrs.version}"
];
subPackages = [ "." ];
nativeInstallCheckInputs = [ versionCheckHook ];
doInstallCheck = true;
passthru.updateScript = nix-update-script { };
meta = {
description = "Terminal OpenTelemetry viewer inspired by otel-desktop-viewer";
homepage = "https://github.com/ymtdzzz/otel-tui";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ kpbaks ];
mainProgram = "otel-tui";
};
})

View File

@@ -18,13 +18,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "passes";
version = "0.10";
version = "0.11";
src = fetchFromGitHub {
owner = "pablo-s";
repo = "passes";
rev = "v${finalAttrs.version}";
hash = "sha256-e6nHCOrb2PX47REr7sy80n1aTdMZ0c2QZlIIib4vll8=";
hash = "sha256-PD6+G04RyNqbBvOjwwu9Gtzng5hgV6SvWGv4iNrvd18=";
};
postPatch = ''

View File

@@ -10,12 +10,12 @@
stdenv.mkDerivation {
pname = "pikchr";
# To update, use the last check-in in https://pikchr.org/home/timeline?r=trunk
version = "0-unstable-2026-01-02";
version = "0-unstable-2026-04-03";
src = fetchfossil {
url = "https://pikchr.org/home";
rev = "ec28d04c3ec6fb76";
hash = "sha256-L9o/CIomXfotltoBdDsm5uocBVj4UnkGBk6ySySmvaw=";
rev = "a7f1c35bc0448daf";
hash = "sha256-Yxp1jvxxXQsdljsvw1ed4XfOvGwbwWIeCfYEQ6D9Zqc=";
};
# can't open generated html files

View File

@@ -3,7 +3,7 @@
"canvas_danmaku": "sha256-XbOYi66WU6hV6Q2FnMC8HxFcY1MxAhyyJr4K+gCPEX4=",
"chat_bottom_container": "sha256-+R1MiDMO4onCMXiJ7MJtJVAwyEJcikTyONwp+HibqA0=",
"extended_nested_scroll_view": "sha256-ocjIy7gpCikoqRMqY4oGw/p9YaQ2v2clhon2pIzTXk4=",
"file_picker": "sha256-lem9tji97lfP5KkR+rB9PAov2GCRhEMhlcSaE0dkwg8=",
"file_picker": "sha256-vBTRs/YlzmiPfcxStNWE1HdhbkIFQZMY7zEOKkd20oI=",
"floating": "sha256-0Xd9dsXJCQ/r/8Nb16oM+M8Jdw+r4QzGmU++HpqF/v0=",
"flutter_smart_dialog": "sha256-sehrQraEWmYvUd9pdG4l3edbtR4yTcJOqPbuhzIrih4=",
"flutter_sortable_wrap": "sha256-Qj9Lzh+pJy+vHznGt5M3xwoJtaVtt00fxm4JJXL4bFI=",
@@ -11,6 +11,8 @@
"material_design_icons_flutter": "sha256-KMwjnzJJj8nemCqUCSwYafPOwTYbtoHNenxstocJtz4=",
"media_kit": "sha256-tly3av5ojuasf+bXkOzLImcEm9oP25Y2flQDMV21T1s=",
"media_kit_libs_android_video": "sha256-tly3av5ojuasf+bXkOzLImcEm9oP25Y2flQDMV21T1s=",
"media_kit_libs_ios_video": "sha256-mB3GN5Sc4oxUaW7xOgORaRzP9hKcRpcPxhmraKs/AMg=",
"media_kit_libs_macos_video": "sha256-mB3GN5Sc4oxUaW7xOgORaRzP9hKcRpcPxhmraKs/AMg=",
"media_kit_libs_video": "sha256-tly3av5ojuasf+bXkOzLImcEm9oP25Y2flQDMV21T1s=",
"media_kit_libs_windows_video": "sha256-tly3av5ojuasf+bXkOzLImcEm9oP25Y2flQDMV21T1s=",
"media_kit_native_event_loop": "sha256-tly3av5ojuasf+bXkOzLImcEm9oP25Y2flQDMV21T1s=",

View File

@@ -13,7 +13,7 @@
let
srcInfo = lib.importJSON ./src-info.json;
description = "Third-party Bilibili client developed in Flutter";
version = "2.0.1.1";
version = "2.0.2";
in
flutter341.buildFlutterApplication {
pname = "piliplus";

View File

@@ -104,11 +104,11 @@
"dependency": "transitive",
"description": {
"name": "async",
"sha256": "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb",
"sha256": "e2eb0491ba5ddb6177742d2da23904574082139b07c1e33b8503b9f46f3e1a37",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.13.0"
"version": "2.13.1"
},
"audio_service": {
"dependency": "direct main",
@@ -144,11 +144,11 @@
"dependency": "direct main",
"description": {
"name": "audio_session",
"sha256": "8f96a7fecbb718cb093070f868b4cdcb8a9b1053dce342ff8ab2fde10eb9afb7",
"sha256": "7217b229db57cc4dc577a8abb56b7429a5a212b978517a5be578704bfe5e568b",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.2.2"
"version": "0.2.3"
},
"auto_orientation": {
"dependency": "direct main",
@@ -205,11 +205,11 @@
"dependency": "transitive",
"description": {
"name": "build",
"sha256": "275bf6bb2a00a9852c28d4e0b410da1d833a734d57d39d44f94bfc895a484ec3",
"sha256": "aadd943f4f8cc946882c954c187e6115a84c98c81ad1d9c6cbf0895a8c85da9c",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "4.0.4"
"version": "4.0.5"
},
"build_config": {
"dependency": "transitive",
@@ -235,11 +235,11 @@
"dependency": "direct dev",
"description": {
"name": "build_runner",
"sha256": "7981eb922842c77033026eb4341d5af651562008cdb116bdfa31fc46516b6462",
"sha256": "521daf8d189deb79ba474e43a696b41c49fb3987818dbacf3308f1e03673a75e",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.12.2"
"version": "2.13.1"
},
"built_collection": {
"dependency": "transitive",
@@ -255,11 +255,11 @@
"dependency": "transitive",
"description": {
"name": "built_value",
"sha256": "6ae8a6435a8c6520c7077b107e77f1fb4ba7009633259a4d49a8afd8e7efc5e9",
"sha256": "0730c18c770d05636a8f945c32a4d7d81cb6e0f0148c8db4ad12e7748f7e49af",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "8.12.4"
"version": "8.12.5"
},
"cached_network_image": {
"dependency": "direct main",
@@ -397,21 +397,21 @@
"dependency": "direct main",
"description": {
"name": "connectivity_plus",
"sha256": "33bae12a398f841c6cda09d1064212957265869104c478e5ad51e2fb26c3973c",
"sha256": "b8fe52979ff12432ecf8f0abf6ff70410b1bb734be1c9e4f2f86807ad7166c79",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "7.0.0"
"version": "7.1.0"
},
"connectivity_plus_platform_interface": {
"dependency": "transitive",
"description": {
"name": "connectivity_plus_platform_interface",
"sha256": "42657c1715d48b167930d5f34d00222ac100475f73d10162ddf43e714932f204",
"sha256": "3c09627c536d22fd24691a905cdd8b14520de69da52c7a97499c8be5284a32ed",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.0.1"
"version": "2.1.0"
},
"convert": {
"dependency": "transitive",
@@ -467,11 +467,11 @@
"dependency": "direct main",
"description": {
"name": "cupertino_icons",
"sha256": "ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6",
"sha256": "41e005c33bd814be4d3096aff55b1908d419fde52ca656c8c47719ec745873cd",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "1.0.8"
"version": "1.0.9"
},
"dart_style": {
"dependency": "transitive",
@@ -497,11 +497,11 @@
"dependency": "direct main",
"description": {
"name": "device_info_plus",
"sha256": "4df8babf73058181227e18b08e6ea3520cf5fc5d796888d33b7cb0f33f984b7c",
"sha256": "b4fed1b2835da9d670d7bed7db79ae2a94b0f5ad6312268158a9b5479abbacdd",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "12.3.0"
"version": "12.4.0"
},
"device_info_plus_platform_interface": {
"dependency": "transitive",
@@ -659,7 +659,7 @@
"description": {
"path": ".",
"ref": "mod",
"resolved-ref": "11ef8f872482b31d570787e60c813e565dcfd011",
"resolved-ref": "8ba6a6a73691262bd006deec247311d136596032",
"url": "https://github.com/bggRGjQaUbCoE/flutter_file_picker.git"
},
"source": "git",
@@ -912,11 +912,11 @@
"dependency": "transitive",
"description": {
"name": "flutter_plugin_android_lifecycle",
"sha256": "ee8068e0e1cd16c4a82714119918efdeed33b3ba7772c54b5d094ab53f9b7fd1",
"sha256": "38d1c268de9097ff59cf0e844ac38759fc78f76836d37edad06fa21e182055a0",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.0.33"
"version": "2.0.34"
},
"flutter_smart_dialog": {
"dependency": "direct main",
@@ -1043,25 +1043,15 @@
"source": "hosted",
"version": "2.1.0"
},
"hive": {
"hive_ce": {
"dependency": "direct main",
"description": {
"name": "hive",
"sha256": "8dcf6db979d7933da8217edcec84e9df1bdb4e4edc7fc77dbd5aa74356d6d941",
"name": "hive_ce",
"sha256": "8e9980e68643afb1e765d3af32b47996552a64e190d03faf622cea07c1294418",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.2.3"
},
"hive_flutter": {
"dependency": "direct main",
"description": {
"name": "hive_flutter",
"sha256": "dca1da446b1d808a51689fb5d0c6c9510c0a2ba01e22805d492c73b68e33eecc",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "1.1.0"
"version": "2.19.3"
},
"hooks": {
"dependency": "transitive",
@@ -1137,11 +1127,11 @@
"dependency": "direct main",
"description": {
"name": "image_cropper",
"sha256": "46c8f9aae51c8350b2a2982462f85a129e77b04675d35b09db5499437d7a996b",
"sha256": "d2555be1ec4b7b12fc502ede481c846ad44578fbb0748debd4c648b25ca07cad",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "11.0.0"
"version": "12.1.1"
},
"image_cropper_for_web": {
"dependency": "transitive",
@@ -1177,11 +1167,11 @@
"dependency": "transitive",
"description": {
"name": "image_picker_android",
"sha256": "eda9b91b7e266d9041084a42d605a74937d996b87083395c5e47835916a86156",
"sha256": "9eae0cbd672549dacc18df855c2a23782afe4854ada5190b7d63b30ee0b0d3fd",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.8.13+14"
"version": "0.8.13+15"
},
"image_picker_for_web": {
"dependency": "transitive",
@@ -1263,6 +1253,16 @@
"source": "hosted",
"version": "1.0.5"
},
"isolate_channel": {
"dependency": "transitive",
"description": {
"name": "isolate_channel",
"sha256": "a9d3d620695bc984244dafae00b95e4319d6974b2d77f4b9e1eb4f2efe099094",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.6.1"
},
"js": {
"dependency": "transitive",
"description": {
@@ -1347,11 +1347,11 @@
"dependency": "direct main",
"description": {
"name": "logger",
"sha256": "a7967e31b703831a893bbc3c3dd11db08126fe5f369b5c648a36f821979f5be3",
"sha256": "25aee487596a6257655a1e091ec2ae66bc30e7af663592cc3a27e6591e05035c",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.6.2"
"version": "2.7.0"
},
"logging": {
"dependency": "transitive",
@@ -1404,6 +1404,16 @@
"source": "git",
"version": "7.0.7447"
},
"material_new_shapes": {
"dependency": "direct main",
"description": {
"name": "material_new_shapes",
"sha256": "e4bc375205e187e8fb232573387112dd8c0dd45b03af8aa2b3c79eb4b9e3e0dc",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "1.0.0"
},
"media_kit": {
"dependency": "direct main",
"description": {
@@ -1427,13 +1437,14 @@
"version": "1.3.7"
},
"media_kit_libs_ios_video": {
"dependency": "transitive",
"dependency": "direct overridden",
"description": {
"name": "media_kit_libs_ios_video",
"sha256": "b5382994eb37a4564c368386c154ad70ba0cc78dacdd3fb0cd9f30db6d837991",
"url": "https://pub.dev"
"path": "libs/ios/media_kit_libs_ios_video",
"ref": "dev",
"resolved-ref": "547999bfb8b5cae9f9aca6125f46fd7cb500e994",
"url": "https://github.com/bggRGjQaUbCoE/media-kit.git"
},
"source": "hosted",
"source": "git",
"version": "1.1.4"
},
"media_kit_libs_linux": {
@@ -1447,13 +1458,14 @@
"version": "1.2.1"
},
"media_kit_libs_macos_video": {
"dependency": "transitive",
"dependency": "direct overridden",
"description": {
"name": "media_kit_libs_macos_video",
"sha256": "f26aa1452b665df288e360393758f84b911f70ffb3878032e1aabba23aa1032d",
"url": "https://pub.dev"
"path": "libs/macos/media_kit_libs_macos_video",
"ref": "dev",
"resolved-ref": "547999bfb8b5cae9f9aca6125f46fd7cb500e994",
"url": "https://github.com/bggRGjQaUbCoE/media-kit.git"
},
"source": "hosted",
"source": "git",
"version": "1.1.4"
},
"media_kit_libs_video": {
@@ -1534,11 +1546,11 @@
"dependency": "transitive",
"description": {
"name": "native_toolchain_c",
"sha256": "92b2ca62c8bd2b8d2f267cdfccf9bfbdb7322f778f8f91b3ce5b5cda23a3899f",
"sha256": "6ba77bb18063eebe9de401f5e6437e95e1438af0a87a3a39084fbd37c90df572",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.17.5"
"version": "0.17.6"
},
"nm": {
"dependency": "transitive",
@@ -1584,11 +1596,11 @@
"dependency": "direct main",
"description": {
"name": "package_info_plus",
"sha256": "f69da0d3189a4b4ceaeb1a3defb0f329b3b352517f52bed4290f83d4f06bc08d",
"sha256": "468c26b4254ab01979fa5e4a98cb343ea3631b9acee6f21028997419a80e1a20",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "9.0.0"
"version": "9.0.1"
},
"package_info_plus_platform_interface": {
"dependency": "transitive",
@@ -1634,11 +1646,11 @@
"dependency": "transitive",
"description": {
"name": "path_provider_android",
"sha256": "f2c65e21139ce2c3dad46922be8272bb5963516045659e71bb16e151c93b580e",
"sha256": "149441ca6e4f38193b2e004c0ca6376a3d11f51fa5a77552d8bd4d2b0c0912ba",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.2.22"
"version": "2.2.23"
},
"path_provider_foundation": {
"dependency": "transitive",
@@ -1944,21 +1956,21 @@
"dependency": "transitive",
"description": {
"name": "sentry",
"sha256": "605ad1f6f1ae5b72018cbe8fc20f490fa3bd53e58882e5579566776030d8c8c1",
"sha256": "288aee3d35f252ac0dc3a4b0accbbe7212fa2867604027f2cc5bc65334afd743",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "9.14.0"
"version": "9.16.0"
},
"share_plus": {
"dependency": "direct main",
"description": {
"name": "share_plus",
"sha256": "14c8860d4de93d3a7e53af51bff479598c4e999605290756bbbe45cf65b37840",
"sha256": "223873d106614442ea6f20db5a038685cc5b32a2fba81cdecaefbbae0523f7fa",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "12.0.1"
"version": "12.0.2"
},
"share_plus_platform_interface": {
"dependency": "transitive",
@@ -1974,21 +1986,21 @@
"dependency": "transitive",
"description": {
"name": "shared_preferences",
"sha256": "2939ae520c9024cb197fc20dee269cd8cdbf564c8b5746374ec6cacdc5169e64",
"sha256": "c3025c5534b01739267eb7d76959bbc25a6d10f6988e1c2a3036940133dd10bf",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.5.4"
"version": "2.5.5"
},
"shared_preferences_android": {
"dependency": "transitive",
"description": {
"name": "shared_preferences_android",
"sha256": "8374d6200ab33ac99031a852eba4c8eb2170c4bf20778b3e2c9eccb45384fb41",
"sha256": "e8d4762b1e2e8578fc4d0fd548cebf24afd24f49719c08974df92834565e2c53",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.4.21"
"version": "2.4.23"
},
"shared_preferences_foundation": {
"dependency": "transitive",
@@ -2014,11 +2026,11 @@
"dependency": "transitive",
"description": {
"name": "shared_preferences_platform_interface",
"sha256": "57cbf196c486bc2cf1f02b85784932c6094376284b3ad5779d1b1c6c6a816b80",
"sha256": "649dc798a33931919ea356c4305c2d1f81619ea6e92244070b520187b5140ef9",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.4.1"
"version": "2.4.2"
},
"shared_preferences_web": {
"dependency": "transitive",
@@ -2281,11 +2293,11 @@
"dependency": "transitive",
"description": {
"name": "url_launcher_android",
"sha256": "767344bf3063897b5cf0db830e94f904528e6dd50a6dfaf839f0abf509009611",
"sha256": "3bb000251e55d4a209aa0e2e563309dc9bb2befea2295fd0cec1f51760aac572",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "6.3.28"
"version": "6.3.29"
},
"url_launcher_ios": {
"dependency": "transitive",
@@ -2361,11 +2373,11 @@
"dependency": "transitive",
"description": {
"name": "vector_graphics",
"sha256": "7076216a10d5c390315fbe536a30f1254c341e7543e6c4c8a815e591307772b1",
"sha256": "81da85e9ca8885ade47f9685b953cb098970d11be4821ac765580a6607ea4373",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "1.1.20"
"version": "1.1.21"
},
"vector_graphics_codec": {
"dependency": "transitive",
@@ -2562,6 +2574,6 @@
},
"sdks": {
"dart": ">=3.10.3 <4.0.0",
"flutter": "3.41.4"
"flutter": "3.41.6"
}
}

View File

@@ -1,6 +1,6 @@
{
"rev": "e2930834923c44b3d7879c264077a4507dff0b17",
"revCount": 4775,
"commitDate": 1773539311,
"hash": "sha256-1rOxmmh8gyXUnIK6yBDK/PfxkXEpczG93bNCiDA2YMU="
"rev": "8ad130567e0f4b1d1be400281c49964e67193c2c",
"revCount": 4814,
"commitDate": 1774952739,
"hash": "sha256-6rQSNOryhFLeNeypWKNazOUQOev1BXf4nCea6+2nUwc="
}

View File

@@ -19,13 +19,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "poptracker";
version = "0.34.0";
version = "0.35.1";
src = fetchFromGitHub {
owner = "black-sliver";
repo = "PopTracker";
tag = "v${finalAttrs.version}";
hash = "sha256-4sdwW4P+5Y+JHy2dU55Fobedh0toXoU6pIWTN294GMc=";
hash = "sha256-YPYGK1yDw0K5/gbJ9jwFSbpIJGKpkGy2iIcMiA9/xmA=";
fetchSubmodules = true;
};

View File

@@ -12,7 +12,7 @@
# function correctly.
rustPlatform.buildRustPackage (finalAttrs: {
pname = "prisma-engines_6";
version = "6.19.1";
version = "6.19.3";
src = fetchFromGitHub {
owner = "prisma";

View File

@@ -11,13 +11,13 @@
# function correctly.
rustPlatform.buildRustPackage (finalAttrs: {
pname = "prisma-engines_7";
version = "7.5.0";
version = "7.6.0";
src = fetchFromGitHub {
owner = "prisma";
repo = "prisma-engines";
tag = finalAttrs.version;
hash = "sha256-1hvIgTqqCN20VQny/4rTr2d5LP0Tt9lYa8ugsIY0CqY=";
hash = "sha256-NMoAaiTa68i51lR6iMCyHyCAsFuuhPx2+tHFSSoqWqA=";
};
cargoHash = "sha256-uiFvzxwVJXCW9LUDFRC6ZkzSa7LQk+9ZJcaJw8mrBX4=";

View File

@@ -14,13 +14,13 @@
}:
stdenv.mkDerivation (finalAttrs: {
pname = "prisma_6";
version = "6.19.1";
version = "6.19.3";
src = fetchFromGitHub {
owner = "prisma";
repo = "prisma";
tag = finalAttrs.version;
hash = "sha256-73cnyg3NnQi2TLcGGhNYs95DRiVPz1LYStNsRw2EBNE=";
hash = "sha256-1U0eBCnvVj8IVIDgw7n/hAWOZatTjl+nrCJMbhgRSV4=";
};
nativeBuildInputs = [
@@ -36,7 +36,7 @@ stdenv.mkDerivation (finalAttrs: {
inherit (finalAttrs) pname version src;
pnpm = pnpm_10;
fetcherVersion = 3;
hash = "sha256-BnluGYEVQbhVdEL/RvJTTGEQT1XrLjaTm2iI7Sqd3ZE=";
hash = "sha256-0aWIWXkQNkvJB2DZ9BP/Yrqsbrx4BdEAebRwoqLHPR8=";
};
patchPhase = ''

View File

@@ -15,13 +15,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "prisma_7";
version = "7.5.0";
version = "7.6.0";
src = fetchFromGitHub {
owner = "prisma";
repo = "prisma";
tag = finalAttrs.version;
hash = "sha256-afUbvr3O4ipw2e+SSFpTsE4YCP32M48YepRYI+gs++Y=";
hash = "sha256-BesX2ySfgew6+9Q6fnhZ8gMnnxh4D4fefaA5BhehlHE=";
};
nativeBuildInputs = [
@@ -37,7 +37,7 @@ stdenv.mkDerivation (finalAttrs: {
inherit (finalAttrs) pname version src;
pnpm = pnpm_10;
fetcherVersion = 3;
hash = "sha256-g++JoJ4UnLdfSyFBYZyx1vzcpPRe7FTIdpCjNuGhDeY=";
hash = "sha256-ZOpNt+W5b1troicfkCi4wCCDtwhTB4VlPgxYMZetcs0=";
};
patchPhase = ''

View File

@@ -9,14 +9,14 @@
python3Packages.buildPythonApplication (finalAttrs: {
pname = "proton-vpn-cli";
version = "0.1.6";
version = "0.1.9";
pyproject = true;
src = fetchFromGitHub {
owner = "ProtonVPN";
repo = "proton-vpn-cli";
tag = "v${finalAttrs.version}";
hash = "sha256-Gx+Jy8oKj7gDqI2MKl7Q5wPpPQXODTMulgSlsqCo9bY=";
hash = "sha256-rve97cy4VwZmzZXXj3OiqITDNJgKp9XimtBQ0MFZ8Tk=";
};
nativeBuildInputs = [

View File

@@ -10,13 +10,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "pt2-clone";
version = "1.86";
version = "1.87";
src = fetchFromGitHub {
owner = "8bitbubsy";
repo = "pt2-clone";
rev = "v${finalAttrs.version}";
sha256 = "sha256-qf1ojvmXFGmI5tX0A7PrMUveSuddyHcy1KhPZBCjlCY=";
sha256 = "sha256-Kur9gQEEeGYHKQz6hNIEzohF1mJ9EDKAGycgiKehXhM=";
};
nativeBuildInputs = [ cmake ];

File diff suppressed because it is too large Load Diff

View File

@@ -3,6 +3,7 @@
python3Packages,
cargo,
fetchFromGitHub,
fetchpatch,
rustPlatform,
rustc,
SDL2,
@@ -20,24 +21,26 @@ python3Packages.buildPythonApplication (finalAttrs: {
hash = "sha256-+SitYe2HFA6rwqk5lipcKFdBy69zdAhw3Q+Nb0iBx6s=";
};
postPatch = ''
cp ${./Cargo.lock} crates/Cargo.lock
chmod u+w crates/Cargo.lock
'';
patches = [
(fetchpatch {
name = "add-Cargo.lock.patch";
url = "https://github.com/kitao/pyxel/commit/821286112ea0c26141aa64b25aaa076611a2a91d.patch";
excludes = [ "CHANGELOG.md" ];
hash = "sha256-XtFdtmprPKrdjFOzEsNMJjc4PpNv6KDtWX2Hes2IKe0=";
})
];
cargoRoot = "crates";
cargoDeps = rustPlatform.fetchCargoVendor {
inherit (finalAttrs)
src
patches
pname
version
cargoRoot
;
postPatch = ''
cp ${./Cargo.lock} crates/Cargo.lock
'';
hash = "sha256-UEN66yygcyOJt8fROClfBi1V5F7/I7P4j4vkPzKJ7jY=";
hash = "sha256-SGrQmGZeM2NcooDqCTO2HOXgLg7h+VvDIierDacqSFs=";
};
buildAndTestSubdir = "python";

View File

@@ -0,0 +1,89 @@
{
alsa-lib,
cargo-tauri,
clang,
fetchFromGitHub,
fetchNpmDeps,
lib,
libappindicator,
libappindicator-gtk3,
libayatana-appindicator,
llvmPackages,
makeWrapper,
nix-update-script,
nodejs,
npmHooks,
openssl,
pkg-config,
rustPlatform,
webkitgtk_4_1,
wrapGAppsHook3,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "qbz";
version = "1.2.2";
src = fetchFromGitHub {
owner = "vicrodh";
repo = "qbz";
tag = "v${finalAttrs.version}";
hash = "sha256-KTnOK1cergq48UiPR7pCfXNk8MsC3eUaLe3JclCCLjE=";
};
cargoHash = "sha256-H9leYEYTy7H/I84/lrVBbyiETAmiGj9anPccgq3rRNg=";
cargoRoot = "src-tauri";
buildAndTestSubdir = finalAttrs.cargoRoot;
npmDeps = fetchNpmDeps {
name = "qbz-${finalAttrs.version}-npm-deps";
inherit (finalAttrs) src;
hash = "sha256-Bpb91QV0cZFX9DzTmPKy2KupPRFnidUi9Ka90AXxZ3I=";
};
env.LIBCLANG_PATH = "${lib.getLib llvmPackages.libclang}/lib";
nativeBuildInputs = [
cargo-tauri.hook
clang
makeWrapper
nodejs
npmHooks.npmConfigHook
pkg-config
wrapGAppsHook3
];
buildInputs = [
alsa-lib
libappindicator-gtk3
openssl
webkitgtk_4_1
];
doCheck = false;
postInstall = ''
gappsWrapperArgs+=(
--prefix LD_LIBRARY_PATH : ${
lib.makeLibraryPath [
libappindicator
libayatana-appindicator
]
}
)
'';
passthru.updateScript = nix-update-script { };
meta = {
description = "A native, full-featured hi-fi Qobuz desktop player for Linux, with fast, bit-perfect audio playback";
homepage = "https://qbz.lol";
changelog = "https://github.com/vicrodh/qbz/releases/tag/v${finalAttrs.version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [
felixsinger
];
mainProgram = "qbz";
platforms = lib.platforms.linux;
};
})

View File

@@ -7,14 +7,14 @@
}:
python312Packages.buildPythonApplication (finalAttrs: {
pname = "sccmhunter";
version = "1.1.10";
version = "2.0.0";
pyproject = true;
src = fetchFromGitHub {
owner = "garrettfoster13";
repo = "sccmhunter";
tag = "v${finalAttrs.version}";
hash = "sha256-657xwD5Sk8vU3MSGj7Yuu/lh7SRS25VFk/igKhq1pks=";
hash = "sha256-aWZx5KfsuhyT08OmYFHKVO8Sr9g5WHXpKLpijo2TAPI=";
};
build-system = with python312Packages; [

View File

@@ -1,4 +1,3 @@
{
"computer": "sha256-qaD6jn78zDyZBktwJ4WTQa8oCvCWQJOBDaozBVsXNb8=",
"gtk": "sha256-nt7d2MvIfizxezWhQNm2/yHEzYuPKDvfHGM9Bnq3f04="
"computer": "sha256-qaD6jn78zDyZBktwJ4WTQa8oCvCWQJOBDaozBVsXNb8="
}

View File

@@ -13,14 +13,14 @@
}:
let
version = "1.0.1340";
version = "1.0.1351";
src = fetchFromGitHub {
owner = "lollipopkit";
repo = "flutter_server_box";
tag = "v${version}";
fetchSubmodules = true;
hash = "sha256-O9JW8BKe/qJcoHZNt2ayJOYlQLHhEs28JCWU9Xz7gVI=";
hash = "sha256-zCe45ESYbtMZaOZEppOKjSDs0l6+UtEQ7fs9r3yzDP4=";
};
in
flutter341.buildFlutterApplication {

View File

@@ -4,51 +4,31 @@
"dependency": "transitive",
"description": {
"name": "_fe_analyzer_shared",
"sha256": "c209688d9f5a5f26b2fb47a188131a6fb9e876ae9e47af3737c0b4f58a93470d",
"sha256": "5b7468c326d2f8a4f630056404ca0d291ade42918f4a3c6233618e724f39da8e",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "91.0.0"
"version": "92.0.0"
},
"analyzer": {
"dependency": "direct dev",
"description": {
"name": "analyzer",
"sha256": "a40a0cee526a7e1f387c6847bd8a5ccbf510a75952ef8a28338e989558072cb0",
"sha256": "70e4b1ef8003c64793a9e268a551a82869a8a96f39deb73dea28084b0e8bf75e",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "8.4.0"
"version": "9.0.0"
},
"analyzer_buffer": {
"dependency": "transitive",
"description": {
"name": "analyzer_buffer",
"sha256": "aba2f75e63b3135fd1efaa8b6abefe1aa6e41b6bd9806221620fa48f98156033",
"sha256": "ff4bd291778c7417fe53fe24ee0d0a1f1ffe281a2d4ea887e7094f16e36eace7",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.1.11"
},
"analyzer_plugin": {
"dependency": "transitive",
"description": {
"name": "analyzer_plugin",
"sha256": "08cfefa90b4f4dd3b447bda831cecf644029f9f8e22820f6ee310213ebe2dd53",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.13.10"
},
"animations": {
"dependency": "transitive",
"description": {
"name": "animations",
"sha256": "18938cefd7dcc04e1ecac0db78973761a01e4bc2d6bfae0cfa596bfeac9e96ab",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.1.1"
"version": "0.3.0"
},
"ansicolor": {
"dependency": "transitive",
@@ -60,46 +40,6 @@
"source": "hosted",
"version": "2.0.3"
},
"app_links": {
"dependency": "transitive",
"description": {
"name": "app_links",
"sha256": "5f88447519add627fe1cbcab4fd1da3d4fed15b9baf29f28b22535c95ecee3e8",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "6.4.1"
},
"app_links_linux": {
"dependency": "transitive",
"description": {
"name": "app_links_linux",
"sha256": "f5f7173a78609f3dfd4c2ff2c95bd559ab43c80a87dc6a095921d96c05688c81",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "1.0.3"
},
"app_links_platform_interface": {
"dependency": "transitive",
"description": {
"name": "app_links_platform_interface",
"sha256": "05f5379577c513b534a29ddea68176a4d4802c46180ee8e2e966257158772a3f",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.0.2"
},
"app_links_web": {
"dependency": "transitive",
"description": {
"name": "app_links_web",
"sha256": "af060ed76183f9e2b87510a9480e56a5352b6c249778d07bd2c95fc35632a555",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "1.0.4"
},
"archive": {
"dependency": "transitive",
"description": {
@@ -134,11 +74,11 @@
"dependency": "transitive",
"description": {
"name": "async",
"sha256": "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb",
"sha256": "e2eb0491ba5ddb6177742d2da23904574082139b07c1e33b8503b9f46f3e1a37",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.13.0"
"version": "2.13.1"
},
"boolean_selector": {
"dependency": "transitive",
@@ -204,11 +144,11 @@
"dependency": "transitive",
"description": {
"name": "built_value",
"sha256": "6ae8a6435a8c6520c7077b107e77f1fb4ba7009633259a4d49a8afd8e7efc5e9",
"sha256": "0730c18c770d05636a8f945c32a4d7d81cb6e0f0148c8db4ad12e7748f7e49af",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "8.12.4"
"version": "8.12.5"
},
"camera": {
"dependency": "transitive",
@@ -307,7 +247,7 @@
"relative": true
},
"source": "path",
"version": "0.0.3"
"version": "1.0.0"
},
"cli_config": {
"dependency": "transitive",
@@ -420,26 +360,6 @@
"source": "hosted",
"version": "1.0.2"
},
"custom_lint_core": {
"dependency": "transitive",
"description": {
"name": "custom_lint_core",
"sha256": "85b339346154d5646952d44d682965dfe9e12cae5febd706f0db3aa5010d6423",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.8.1"
},
"custom_lint_visitor": {
"dependency": "transitive",
"description": {
"name": "custom_lint_visitor",
"sha256": "91f2a81e9f0abb4b9f3bb529f78b6227ce6050300d1ae5b1e2c69c66c7a566d8",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "1.0.0+8.4.0"
},
"dart_style": {
"dependency": "transitive",
"description": {
@@ -457,7 +377,7 @@
"relative": true
},
"source": "path",
"version": "2.13.0"
"version": "2.17.0"
},
"dbus": {
"dependency": "transitive",
@@ -713,91 +633,81 @@
"dependency": "transitive",
"description": {
"name": "flutter_plugin_android_lifecycle",
"sha256": "ee8068e0e1cd16c4a82714119918efdeed33b3ba7772c54b5d094ab53f9b7fd1",
"sha256": "38d1c268de9097ff59cf0e844ac38759fc78f76836d37edad06fa21e182055a0",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.0.33"
"version": "2.0.34"
},
"flutter_riverpod": {
"dependency": "direct main",
"description": {
"name": "flutter_riverpod",
"sha256": "9e2d6907f12cc7d23a846847615941bddee8709bf2bfd274acdf5e80bcf22fde",
"sha256": "4e166be88e1dbbaa34a280bdb744aeae73b7ef25fdf8db7a3bb776760a3648e2",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.0.3"
"version": "3.3.1"
},
"flutter_secure_storage": {
"dependency": "transitive",
"description": {
"name": "flutter_secure_storage",
"sha256": "9cad52d75ebc511adfae3d447d5d13da15a55a92c9410e50f67335b6d21d16ea",
"sha256": "da922f2aab2d733db7e011a6bcc4a825b844892d4edd6df83ff156b09a9b2e40",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "9.2.4"
"version": "10.0.0"
},
"flutter_secure_storage_darwin": {
"dependency": "transitive",
"description": {
"name": "flutter_secure_storage_darwin",
"sha256": "8878c25136a79def1668c75985e8e193d9d7d095453ec28730da0315dc69aee3",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.2.0"
},
"flutter_secure_storage_linux": {
"dependency": "transitive",
"description": {
"name": "flutter_secure_storage_linux",
"sha256": "be76c1d24a97d0b98f8b54bce6b481a380a6590df992d0098f868ad54dc8f688",
"sha256": "2b5c76dce569ab752d55a1cee6a2242bcc11fdba927078fb88c503f150767cda",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "1.2.3"
},
"flutter_secure_storage_macos": {
"dependency": "transitive",
"description": {
"name": "flutter_secure_storage_macos",
"sha256": "6c0a2795a2d1de26ae202a0d78527d163f4acbb11cde4c75c670f3a0fc064247",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.1.3"
"version": "3.0.0"
},
"flutter_secure_storage_platform_interface": {
"dependency": "transitive",
"description": {
"name": "flutter_secure_storage_platform_interface",
"sha256": "cf91ad32ce5adef6fba4d736a542baca9daf3beac4db2d04be350b87f69ac4a8",
"sha256": "8ceea1223bee3c6ac1a22dabd8feefc550e4729b3675de4b5900f55afcb435d6",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "1.1.2"
"version": "2.0.1"
},
"flutter_secure_storage_web": {
"dependency": "transitive",
"description": {
"name": "flutter_secure_storage_web",
"sha256": "f4ebff989b4f07b2656fb16b47852c0aab9fed9b4ec1c70103368337bc1886a9",
"sha256": "6a1137df62b84b54261dca582c1c09ea72f4f9a4b2fcee21b025964132d5d0c3",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "1.2.1"
"version": "2.1.0"
},
"flutter_secure_storage_windows": {
"dependency": "transitive",
"description": {
"name": "flutter_secure_storage_windows",
"sha256": "b20b07cb5ed4ed74fc567b78a72936203f587eba460af1df11281c9326cd3709",
"sha256": "3b7c8e068875dfd46719ff57c90d8c459c87f2302ed6b00ff006b3c9fcad1613",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.1.2"
},
"flutter_staggered_grid_view": {
"dependency": "transitive",
"description": {
"name": "flutter_staggered_grid_view",
"sha256": "19e7abb550c96fbfeb546b23f3ff356ee7c59a019a651f8f102a4ba9b7349395",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.7.0"
"version": "4.1.0"
},
"flutter_svg": {
"dependency": "transitive",
@@ -825,11 +735,11 @@
"dependency": "direct dev",
"description": {
"name": "freezed",
"sha256": "13065f10e135263a4f5a4391b79a8efc5fb8106f8dd555a9e49b750b45393d77",
"sha256": "f23ea33b3863f119b58ed1b586e881a46bd28715ddcc4dbc33104524e3434131",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.2.3"
"version": "3.2.5"
},
"freezed_annotation": {
"dependency": "direct main",
@@ -881,17 +791,6 @@
"source": "hosted",
"version": "2.3.2"
},
"gtk": {
"dependency": "direct overridden",
"description": {
"path": ".",
"ref": "v0.0.36",
"resolved-ref": "c62c45857fb4f60ca3d6b5fc7fa2a26df8ba9fa7",
"url": "https://github.com/lollipopkit/gtk.dart"
},
"source": "git",
"version": "2.1.0"
},
"highlight": {
"dependency": "direct main",
"description": {
@@ -926,11 +825,11 @@
"dependency": "direct dev",
"description": {
"name": "hive_ce_generator",
"sha256": "b19ac263cb37529513508ba47352c41e6de72ba879952898d9c18c9c8a955921",
"sha256": "fd629eefef44f3efb92dec5c422ab4c395153def0e651ed0f9bb3c8a4d4f783b",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "1.10.0"
"version": "1.11.0"
},
"hooks": {
"dependency": "transitive",
@@ -1076,31 +975,31 @@
"dependency": "transitive",
"description": {
"name": "js",
"sha256": "f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3",
"sha256": "53385261521cc4a0c4658fd0ad07a7d14591cf8fc33abbceae306ddb974888dc",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.6.7"
"version": "0.7.2"
},
"json_annotation": {
"dependency": "direct main",
"description": {
"name": "json_annotation",
"sha256": "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1",
"sha256": "cb09e7dac6210041fad964ed7fbee004f14258b4eca4040f72d1234062ace4c8",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "4.9.0"
"version": "4.11.0"
},
"json_serializable": {
"dependency": "direct dev",
"description": {
"name": "json_serializable",
"sha256": "c5b2ee75210a0f263c6c7b9eeea80553dbae96ea1bf57f02484e806a3ffdffa3",
"sha256": "44729f5c45748e6748f6b9a57ab8f7e4336edc8ae41fc295070e3814e616a6c0",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "6.11.2"
"version": "6.13.0"
},
"leak_tracker": {
"dependency": "transitive",
@@ -1266,11 +1165,11 @@
"dependency": "transitive",
"description": {
"name": "mockito",
"sha256": "a45d1aa065b796922db7b9e7e7e45f921aed17adf3a8318a1f47097e7e695566",
"sha256": "eff30d002f0c8bf073b6f929df4483b543133fcafce056870163587b03f1d422",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "5.6.3"
"version": "5.6.4"
},
"multi_split_view": {
"dependency": "transitive",
@@ -1336,11 +1235,11 @@
"dependency": "transitive",
"description": {
"name": "package_info_plus",
"sha256": "f69da0d3189a4b4ceaeb1a3defb0f329b3b352517f52bed4290f83d4f06bc08d",
"sha256": "468c26b4254ab01979fa5e4a98cb343ea3631b9acee6f21028997419a80e1a20",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "9.0.0"
"version": "9.0.1"
},
"package_info_plus_platform_interface": {
"dependency": "transitive",
@@ -1386,11 +1285,11 @@
"dependency": "transitive",
"description": {
"name": "path_provider_android",
"sha256": "f2c65e21139ce2c3dad46922be8272bb5963516045659e71bb16e151c93b580e",
"sha256": "149441ca6e4f38193b2e004c0ca6376a3d11f51fa5a77552d8bd4d2b0c0912ba",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.2.22"
"version": "2.2.23"
},
"path_provider_foundation": {
"dependency": "transitive",
@@ -1625,41 +1524,41 @@
"dependency": "transitive",
"description": {
"name": "riverpod",
"sha256": "c406de02bff19d920b832bddfb8283548bfa05ce41c59afba57ce643e116aa59",
"sha256": "8c22216be8ad3ef2b44af3a329693558c98eca7b8bd4ef495c92db0bba279f83",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.0.3"
"version": "3.2.1"
},
"riverpod_analyzer_utils": {
"dependency": "transitive",
"description": {
"name": "riverpod_analyzer_utils",
"sha256": "a0f68adb078b790faa3c655110a017f9a7b7b079a57bbd40f540e80dce5fcd29",
"sha256": "e55bc08c084a424e1bbdc303fe8ea75daafe4269b68fd0e0f6f1678413715b66",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "1.0.0-dev.7"
"version": "1.0.0-dev.9"
},
"riverpod_annotation": {
"dependency": "direct main",
"description": {
"name": "riverpod_annotation",
"sha256": "7230014155777fc31ba3351bc2cb5a3b5717b11bfafe52b1553cb47d385f8897",
"sha256": "16471a1260b94e939394d78f1c63a9350936ac4a68c9fbdab40be47268c0b04f",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.0.3"
"version": "4.0.2"
},
"riverpod_generator": {
"dependency": "direct dev",
"description": {
"name": "riverpod_generator",
"sha256": "49894543a42cf7a9954fc4e7366b6d3cb2e6ec0fa07775f660afcdd92d097702",
"sha256": "6f9220534d7a353b53c875ea191a84d28cb4e52ac420a66a1bd7318329d977b0",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.0.3"
"version": "4.0.3"
},
"screen_retriever": {
"dependency": "transitive",
@@ -1711,25 +1610,15 @@
"source": "hosted",
"version": "0.2.0"
},
"screenshot": {
"dependency": "transitive",
"description": {
"name": "screenshot",
"sha256": "63817697a7835e6ce82add4228e15d233b74d42975c143ad8cfe07009fab866b",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.0.0"
},
"share_plus": {
"dependency": "transitive",
"description": {
"name": "share_plus",
"sha256": "14c8860d4de93d3a7e53af51bff479598c4e999605290756bbbe45cf65b37840",
"sha256": "223873d106614442ea6f20db5a038685cc5b32a2fba81cdecaefbbae0523f7fa",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "12.0.1"
"version": "12.0.2"
},
"share_plus_platform_interface": {
"dependency": "transitive",
@@ -1745,21 +1634,21 @@
"dependency": "direct main",
"description": {
"name": "shared_preferences",
"sha256": "2939ae520c9024cb197fc20dee269cd8cdbf564c8b5746374ec6cacdc5169e64",
"sha256": "c3025c5534b01739267eb7d76959bbc25a6d10f6988e1c2a3036940133dd10bf",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.5.4"
"version": "2.5.5"
},
"shared_preferences_android": {
"dependency": "transitive",
"description": {
"name": "shared_preferences_android",
"sha256": "8374d6200ab33ac99031a852eba4c8eb2170c4bf20778b3e2c9eccb45384fb41",
"sha256": "e8d4762b1e2e8578fc4d0fd548cebf24afd24f49719c08974df92834565e2c53",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.4.21"
"version": "2.4.23"
},
"shared_preferences_foundation": {
"dependency": "transitive",
@@ -1785,11 +1674,11 @@
"dependency": "transitive",
"description": {
"name": "shared_preferences_platform_interface",
"sha256": "57cbf196c486bc2cf1f02b85784932c6094376284b3ad5779d1b1c6c6a816b80",
"sha256": "649dc798a33931919ea356c4305c2d1f81619ea6e92244070b520187b5140ef9",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.4.1"
"version": "2.4.2"
},
"shared_preferences_web": {
"dependency": "transitive",
@@ -1871,11 +1760,11 @@
"dependency": "transitive",
"description": {
"name": "source_helper",
"sha256": "6a3c6cc82073a8797f8c4dc4572146114a39652851c157db37e964d9c7038723",
"sha256": "1d3b229b2934034fb2e691fbb3d53e0f75a4af7b1407f88425ed8f209bcb1b8f",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "1.3.8"
"version": "1.3.11"
},
"source_map_stack_trace": {
"dependency": "transitive",
@@ -2041,11 +1930,11 @@
"dependency": "transitive",
"description": {
"name": "url_launcher_android",
"sha256": "767344bf3063897b5cf0db830e94f904528e6dd50a6dfaf839f0abf509009611",
"sha256": "3bb000251e55d4a209aa0e2e563309dc9bb2befea2295fd0cec1f51760aac572",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "6.3.28"
"version": "6.3.29"
},
"url_launcher_ios": {
"dependency": "transitive",
@@ -2121,11 +2010,11 @@
"dependency": "transitive",
"description": {
"name": "vector_graphics",
"sha256": "7076216a10d5c390315fbe536a30f1254c341e7543e6c4c8a815e591307772b1",
"sha256": "81da85e9ca8885ade47f9685b953cb098970d11be4821ac765580a6607ea4373",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "1.1.20"
"version": "1.1.21"
},
"vector_graphics_codec": {
"dependency": "transitive",

View File

@@ -0,0 +1,46 @@
{
lib,
stdenv,
fetchFromGitHub,
versionCheckHook,
nix-update-script,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "slinktool";
version = "4.5.0";
src = fetchFromGitHub {
owner = "EarthScope";
repo = "slinktool";
tag = "v${finalAttrs.version}";
hash = "sha256-4UUvjlSqtBTiO200pb4FEFXEvUAmA4OlegrgF4wZII4=";
};
# slinktool uses K&R-style function pointers in some places; fails with modern GCC
env.NIX_CFLAGS_COMPILE = "-std=gnu89";
installPhase = ''
runHook preInstall
install -D slinktool $out/bin/slinktool
runHook postInstall
'';
versionCheckProgramArg = "-V";
nativeInstallCheckInputs = [ versionCheckHook ];
doInstallCheck = true;
passthru.updateScript = nix-update-script { };
meta = {
description = "SeedLink client for data stream inspection, data collection and server testing";
homepage = "https://github.com/EarthScope/slinktool";
changelog = "https://github.com/EarthScope/slinktool/releases/tag/${finalAttrs.src.tag}";
license = lib.licenses.lgpl3Only;
maintainers = with lib.maintainers; [ BIOS9 ];
platforms = lib.platforms.all;
mainProgram = "slinktool";
};
})

View File

@@ -0,0 +1,33 @@
{
lib,
fetchFromGitHub,
buildGoModule,
}:
buildGoModule (finalAttrs: {
pname = "snip";
version = "0.8.1";
src = fetchFromGitHub {
owner = "edouard-claude";
repo = "snip";
tag = "v${finalAttrs.version}";
hash = "sha256-95CHMKE894IkQONvVKO44/9bEfXzJrNRV+iVIVRx8TA=";
};
vendorHash = "sha256-2MxFZqjNuLzcuu+bsLyOyHIakCxh7j0FUx8LsjZRhrY=";
ldflags = [
"-s"
"-w"
];
meta = {
description = "CLI proxy that reduces LLM token consumption by filtering verbose shell output";
homepage = "https://github.com/edouard-claude/snip";
changelog = "https://github.com/edouard-claude/snip/releases/tag/v${finalAttrs.version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ gdifolco ];
mainProgram = "snip";
};
})

View File

@@ -25,7 +25,7 @@
let
pname = "sparrow";
version = "2.4.0";
version = "2.4.2";
openjdk = zulu25.override { enableJavaFX = true; };
@@ -36,13 +36,12 @@ let
}
."${stdenvNoCC.hostPlatform.system}";
# nixpkgs-update: no auto update
src = fetchurl {
url = "https://github.com/sparrowwallet/${pname}/releases/download/${version}/sparrowwallet-${version}-${sparrowArch}.tar.gz";
hash =
{
x86_64-linux = "sha256-9rkyTEi+KvFDvMCSNkedxX9lYZPZvGwCClLz87DXrKc=";
aarch64-linux = "sha256-TvVJQVSkroZfl3VH5hxHpbMw5SZMN1rqROSDKhVV2x4=";
x86_64-linux = "sha256-BvtQZ+b+Hj+9eBdLg/KfYUeRQth0LWwwbZUQMfyTayE=";
aarch64-linux = "sha256-SMVO07kuTo1Yfj+8QfPOvkLR4551tQadJPoIMdT9GFE=";
}
."${stdenvNoCC.hostPlatform.system}";
@@ -73,12 +72,12 @@ let
manifest = fetchurl {
url = "https://github.com/sparrowwallet/${pname}/releases/download/${version}/${pname}-${version}-manifest.txt";
hash = "sha256-hPgRK1pMnhpAOWFO+bySXgE7I1rJf1MVrA5FdIkSgu4=";
hash = "sha256-cv/bkUZArASgWjgEphdWc6p8R9uOOkT+Idc53sjEOQ0=";
};
manifestSignature = fetchurl {
url = "https://github.com/sparrowwallet/${pname}/releases/download/${version}/${pname}-${version}-manifest.txt.asc";
hash = "sha256-suHr5oM0QVVGQnv8zqFBAuHCUs3Ss1O9U3wx9Exmy7U=";
hash = "sha256-lIamtUX45HVTrUJKbiGsFkRanM17KaZS0NwlTAoptEE=";
};
publicKey = ./publickey.asc;
@@ -294,6 +293,16 @@ stdenvNoCC.mkDerivation rec {
doInstallCheck = true;
passthru = {
updateScript = {
command = [
./update.sh
./.
];
supportedFeatures = [ "commit" ];
};
};
meta = {
description = "Modern desktop Bitcoin wallet application supporting most hardware wallets and built on common standards such as PSBT, with an emphasis on transparency and usability";
homepage = "https://sparrowwallet.com";

111
pkgs/by-name/sp/sparrow/update.sh Executable file
View File

@@ -0,0 +1,111 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p curl jq nix gnused gnugrep coreutils git
set -euo pipefail
script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
pkg_dir="${1:-$script_dir}"
# If passed as a relative path, interpret it relative to the current working directory.
if [[ "$pkg_dir" != /* ]]; then
pkg_dir="$(cd "$pkg_dir" && pwd)"
fi
# Try to anchor to repo root if we're in a git checkout; otherwise operate from pkg_dir.
if repo_root="$(git -C "$pkg_dir" rev-parse --show-toplevel 2>/dev/null)"; then
: # ok
else
repo_root="$(cd "$pkg_dir/../../../../.." && pwd)"
fi
file="$repo_root/pkgs/by-name/sp/sparrow/package.nix"
if [[ ! -f "$file" ]]; then
# Fallback: allow running against the package dir directly (e.g. in partial checkouts)
file="$pkg_dir/package.nix"
fi
owner="sparrowwallet"
repo="sparrow"
pname="sparrow"
github_latest_json="$(curl -fsSL "https://api.github.com/repos/${owner}/${repo}/releases/latest")"
version="$(jq -r '.tag_name' <<<"$github_latest_json")"
# Some projects prefix tags with "v". Sparrow currently doesn't, but be resilient.
version="${version#v}"
if [[ -z "$version" || "$version" == "null" ]]; then
echo "error: failed to determine latest version from GitHub API" >&2
exit 1
fi
sri_prefetch() {
local url="$1"
nix store prefetch-file --json "$url" | jq -r .hash
}
src_x86_url="https://github.com/${owner}/${repo}/releases/download/${version}/sparrowwallet-${version}-x86_64.tar.gz"
src_a64_url="https://github.com/${owner}/${repo}/releases/download/${version}/sparrowwallet-${version}-aarch64.tar.gz"
manifest_url="https://github.com/${owner}/${repo}/releases/download/${version}/${pname}-${version}-manifest.txt"
manifest_sig_url="https://github.com/${owner}/${repo}/releases/download/${version}/${pname}-${version}-manifest.txt.asc"
echo "fetching hashes for sparrow ${version} ..."
src_x86_hash="$(sri_prefetch "$src_x86_url")"
src_a64_hash="$(sri_prefetch "$src_a64_url")"
manifest_hash="$(sri_prefetch "$manifest_url")"
manifest_sig_hash="$(sri_prefetch "$manifest_sig_url")"
tmp="$(mktemp)"
trap 'rm -f "$tmp"' EXIT
cp -f "$file" "$tmp"
escape_sed_replacement() {
# Escape '&' and '\' for sed replacement strings.
# We intentionally use '|' as sed delimiter below to avoid escaping '/' in SRI hashes.
printf '%s' "$1" | sed -e 's/[&\\]/\\&/g'
}
version_esc="$(escape_sed_replacement "$version")"
src_x86_hash_esc="$(escape_sed_replacement "$src_x86_hash")"
src_a64_hash_esc="$(escape_sed_replacement "$src_a64_hash")"
manifest_hash_esc="$(escape_sed_replacement "$manifest_hash")"
manifest_sig_hash_esc="$(escape_sed_replacement "$manifest_sig_hash")"
# Update version (expects: version = "x.y.z";)
sed -i -E \
"s|^([[:space:]]*version[[:space:]]*=[[:space:]]*\")([0-9]+\\.[0-9]+\\.[0-9]+)(\";)|\\1${version_esc}\\3|" \
"$tmp"
# Update src hashes by key (expects exactly these keys)
sed -i -E \
"s|(x86_64-linux[[:space:]]*=[[:space:]]*\")sha256-[^\"]+(\";)|\\1${src_x86_hash_esc}\\2|" \
"$tmp"
sed -i -E \
"s|(aarch64-linux[[:space:]]*=[[:space:]]*\")sha256-[^\"]+(\";)|\\1${src_a64_hash_esc}\\2|" \
"$tmp"
# Update manifest hash in its fetchurl block
# (scoped to the block by addressing between 'manifest = fetchurl {' and the next '};')
sed -i -E \
"/^[[:space:]]*manifest[[:space:]]*=[[:space:]]*fetchurl[[:space:]]*\\{/,/^[[:space:]]*\\}[[:space:]]*;/{s|(^[[:space:]]*hash[[:space:]]*=[[:space:]]*\")sha256-[^\"]+(\";)|\\1${manifest_hash_esc}\\2|;}" \
"$tmp"
# Update manifestSignature hash in its fetchurl block
sed -i -E \
"/^[[:space:]]*manifestSignature[[:space:]]*=[[:space:]]*fetchurl[[:space:]]*\\{/,/^[[:space:]]*\\}[[:space:]]*;/{s|(^[[:space:]]*hash[[:space:]]*=[[:space:]]*\")sha256-[^\"]+(\";)|\\1${manifest_sig_hash_esc}\\2|;}" \
"$tmp"
# Sanity checks: ensure we actually wrote the hashes
grep -q "version = \"${version}\";" "$tmp" || { echo "error: failed to update version" >&2; exit 1; }
grep -q "x86_64-linux = \"${src_x86_hash}\";" "$tmp" || { echo "error: failed to update x86_64 hash" >&2; exit 1; }
grep -q "aarch64-linux = \"${src_a64_hash}\";" "$tmp" || { echo "error: failed to update aarch64 hash" >&2; exit 1; }
mv -f "$tmp" "$file"
trap - EXIT
echo "updated ${pname} to ${version}"
echo " - x86_64 src: ${src_x86_hash}"
echo " - aarch64 src: ${src_a64_hash}"
echo " - manifest: ${manifest_hash}"
echo " - manifest signature:${manifest_sig_hash}"

View File

@@ -3,6 +3,7 @@
lib,
fetchurl,
unzip,
installShellFiles,
nix-update-script,
versionCheckHook,
}:
@@ -19,7 +20,10 @@ stdenvNoCC.mkDerivation rec {
dontConfigure = true;
dontBuild = true;
nativeBuildInputs = [ unzip ];
nativeBuildInputs = [
unzip
installShellFiles
];
sourceRoot = ".";
@@ -29,6 +33,13 @@ stdenvNoCC.mkDerivation rec {
runHook postInstall
'';
postInstall = lib.optionalString (stdenvNoCC.buildPlatform.canExecute stdenvNoCC.hostPlatform) ''
installShellCompletion --cmd swiftlint \
--bash <($out/bin/swiftlint --generate-completion-script bash) \
--fish <($out/bin/swiftlint --generate-completion-script fish) \
--zsh <($out/bin/swiftlint --generate-completion-script zsh)
'';
doInstallCheck = true;
nativeInstallCheckInputs = [ versionCheckHook ];

View File

@@ -0,0 +1,39 @@
{
fetchurl,
appimageTools,
lib,
}:
let
pname = "trucky";
version = "3.8.2";
src = fetchurl {
url = "https://web.archive.org/web/20260328182310/https://client-download.truckyapp.com/linux/latest/Trucky.AppImage";
hash = "sha256-8F6tIyooqzjgH2+qHsaoFwJkFzzW07fjqK9znDW/AyA=3";
};
appimageContents = appimageTools.extract { inherit pname version src; };
in
appimageTools.wrapType2 rec {
inherit pname version src;
extraBwrapArgs = [ "--setenv QT_QPA_PLATFORM xcb" ];
extraInstallCommands = ''
install -Dm444 ${appimageContents}/trucky-electron.desktop $out/share/applications/trucky-electron.desktop
substituteInPlace $out/share/applications/trucky-electron.desktop \
--replace-fail 'Exec=AppRun' 'Exec=${pname}'
install -Dm444 ${appimageContents}/trucky-electron.png $out/share/icons/hicolor/48x48/apps/trucky-electron.png
'';
meta = {
description = "The Virtual Trucker Companion";
homepage = "https://truckyapp.com/";
downloadPage = "https://truckyapp.com/client-download-linux";
license = lib.licenses.unfree;
maintainers = [ lib.maintainers.liamthexpl0rer ];
platforms = lib.platforms.all;
};
}

View File

@@ -45,13 +45,13 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "ultrastardx";
version = "2026.3.0";
version = "2026.4.0";
src = fetchFromGitHub {
owner = "UltraStar-Deluxe";
repo = "USDX";
rev = "v${finalAttrs.version}";
hash = "sha256-xVlg24EaHyfrpdfnCk4Wupi33BVKwisvg0hN5Q/dNC4=";
hash = "sha256-/FT5UP+Usd1vyAyRnXOBs5iT76sqdiSBhoyC4bGKmEw=";
};
nativeBuildInputs = [

View File

@@ -10,14 +10,14 @@
glibc,
}:
buildGoModule rec {
buildGoModule (finalAttrs: {
pname = "vault";
version = "1.21.4";
src = fetchFromGitHub {
owner = "hashicorp";
repo = "vault";
rev = "v${version}";
rev = "v${finalAttrs.version}";
hash = "sha256-1yBvcGKzLZYFWlZJL1iJgDFkiT4g2f84iZCjWi2CwDg=";
};
@@ -25,12 +25,6 @@ buildGoModule rec {
proxyVendor = true;
postPatch = ''
# Remove defunct github.com/hashicorp/go-cmp dependency
sed -i '/github\.com\/hashicorp\/go-cmp/d' go.mod
sed -i '/github\.com\/hashicorp\/go-cmp/d' go.sum
'';
subPackages = [ "." ];
nativeBuildInputs = [
@@ -43,8 +37,8 @@ buildGoModule rec {
ldflags = [
"-s"
"-w"
"-X github.com/hashicorp/vault/sdk/version.GitCommit=${src.rev}"
"-X github.com/hashicorp/vault/sdk/version.Version=${version}"
"-X github.com/hashicorp/vault/sdk/version.GitCommit=${finalAttrs.src.rev}"
"-X github.com/hashicorp/vault/sdk/version.Version=${finalAttrs.version}"
"-X github.com/hashicorp/vault/sdk/version.VersionPrerelease="
];
@@ -72,9 +66,9 @@ buildGoModule rec {
};
meta = {
homepage = "https://www.vaultproject.io/";
homepage = "https://developer.hashicorp.com/vault";
description = "Tool for managing secrets";
changelog = "https://github.com/hashicorp/vault/blob/v${version}/CHANGELOG.md";
changelog = "https://github.com/hashicorp/vault/blob/v${finalAttrs.version}/CHANGELOG.md";
license = lib.licenses.bsl11;
mainProgram = "vault";
maintainers = with lib.maintainers; [
@@ -84,4 +78,4 @@ buildGoModule rec {
techknowlogick
];
};
}
})

View File

@@ -66,7 +66,7 @@
stdenv.mkDerivation rec {
pname = "vivaldi";
version = "7.9.3970.45";
version = "7.9.3970.47";
suffix =
{
@@ -79,8 +79,8 @@ stdenv.mkDerivation rec {
url = "https://downloads.vivaldi.com/stable/vivaldi-stable_${version}-1_${suffix}.deb";
hash =
{
aarch64-linux = "sha256-tLNTbGbxq0ztL+dvKvcbVE64AAmyDIjaXCQfxW5xwOY=";
x86_64-linux = "sha256-WoSEvTkG/1LQK/IyGOPv8hV8pY+ygONEE/YOh6Q8Uv0=";
aarch64-linux = "sha256-08KlF8JJlZqAZeSFAqaNzMPfHp95GddRScnLnkQ2PF8=";
x86_64-linux = "sha256-Dc1VyxB60WsrynOT5r85+Xljx8mU7IKodnIIeGZ/u+M=";
}
.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
};

View File

@@ -28,14 +28,14 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "wezterm";
version = "0-unstable-2026-01-17";
version = "0-unstable-2026-03-31";
src = fetchFromGitHub {
owner = "wezterm";
repo = "wezterm";
rev = "05343b387085842b434d267f91b6b0ec157e4331";
rev = "577474d89ee61aef4a48145cdec82a638d874751";
fetchSubmodules = true;
hash = "sha256-V6WvkNZryYofarsyfcmsuvtpNJ/c3O+DmOKNvoYPbmA=";
hash = "sha256-LNQJAYILUZ9LZ4E4soh7tr5Zy+rntHz1Gd66lyPPkdk=";
};
postPatch = ''

View File

@@ -2,7 +2,6 @@
lib,
stdenv,
fetchFromGitHub,
fetchpatch,
makeDesktopItem,
copyDesktopItems,
installShellFiles,
@@ -16,13 +15,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "xephem";
version = "4.2.0";
version = "4.3.0";
src = fetchFromGitHub {
owner = "XEphem";
repo = "XEphem";
rev = finalAttrs.version;
hash = "sha256-TuzXrWoJOAHg31DrJObPcHBXgtqR/KWKFRsqddPzL4c=";
tag = finalAttrs.version;
hash = "sha256-zWINscuRO7k/q3u1hngcIkfOpxX75HUxxB2X41igdBg=";
};
nativeBuildInputs = [
@@ -40,11 +39,6 @@ stdenv.mkDerivation (finalAttrs: {
];
patches = [
# fix compile error with GCC 14
(fetchpatch {
url = "https://github.com/XEphem/XEphem/commit/30e14f685ede015fcd8985cd83ee6510f93f0073.patch";
hash = "sha256-wNoLjR6xEl56ZA6FLBS2xtySeDEYXTCA8j4Z5JIrF6k=";
})
./add-cross-compilation-support.patch
];
@@ -53,6 +47,10 @@ stdenv.mkDerivation (finalAttrs: {
substituteInPlace xephem.c splash.c --replace-fail '/etc/XEphem' '${placeholder "out"}/etc/XEphem'
'';
env.NIX_CFLAGS_COMPILE = "-std=gnu17";
enableParallelBuilding = true;
doCheck = true;
checkFlags = "-C ../../tests";
@@ -79,7 +77,7 @@ stdenv.mkDerivation (finalAttrs: {
mkdir $out/etc
echo "XEphem.ShareDir: $out/share/xephem" > $out/etc/XEphem
installManPage xephem.1
install -Dm644 XEphem.png -t $out/share/pixmaps
install -Dm644 XEphem.png -t $out/share/icons/hicolor/128x128/apps
runHook postInstall
'';

View File

@@ -39,7 +39,7 @@ let
hash =
{
x86_64-linux = "sha256-mHKQKGhqJ80JHWxixC7IbEHMsLMP7ETcGswOonwCo1U=";
x86_64-linux = "sha256-gyNZ+DyULv3TPD5YvHo8RvB/pjRtLHOsDNcD8bt/RbY=";
}
.${system} or throwSystem;
@@ -48,7 +48,7 @@ let
in
stdenvNoCC.mkDerivation rec {
pname = "xpipe";
version = "22.0";
version = "22.5";
src = fetchzip {
url = "https://github.com/xpipe-io/xpipe/releases/download/${version}/xpipe-portable-linux-${arch}.tar.gz";

View File

@@ -30,6 +30,14 @@ let
x86_64-unknown-linux-gnu = {
double = "linux-x86_64";
};
arm64-apple-darwin = {
# the difference in `arm64` attribute vs `x86_64` double is purposeful.
# the Android NDK contains a single Universal 2 Darwin binary
# which supports arm64 and x86. The NDK was never updated to differentiate
# or unify architecture with its folder structure, so the binary supporting both architectures
# is stored under a single directory indicating `x86_64` despite also supporting darwin arm64.
double = "darwin-x86_64";
};
}
.${stdenv.buildPlatform.config} or fallback;
@@ -90,8 +98,8 @@ else
inherit (androidndk) version;
nativeBuildInputs = [
makeWrapper
autoPatchelfHook
];
]
++ lib.optionals stdenv.buildPlatform.isLinux [ autoPatchelfHook ];
propagatedBuildInputs = [ androidndk ];
passthru = {
inherit targetPrefix;
@@ -103,7 +111,7 @@ else
dontStrip = true;
dontConfigure = true;
dontPatch = true;
autoPatchelfIgnoreMissingDeps = true;
autoPatchelfIgnoreMissingDeps = stdenv.buildPlatform.isLinux;
installPhase = ''
# https://developer.android.com/ndk/guides/other_build_systems
mkdir -p $out

View File

@@ -10,21 +10,21 @@
setuptools,
}:
buildPythonPackage rec {
buildPythonPackage (finalAttrs: {
pname = "aiosonos";
version = "0.1.9";
version = "0.1.11";
pyproject = true;
src = fetchFromGitHub {
owner = "music-assistant";
repo = "aiosonos";
tag = version;
hash = "sha256-15zGeYspuWR5w1yGHXfXhmUeV4p+/jhXrnkZ98XW/LI=";
tag = finalAttrs.version;
hash = "sha256-Vd0m96BdFGYslAW/yHYdA4BUo6X8v1eYt6Z9ABinCJU=";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace-fail 'version = "0.0.0"' 'version = "${version}"'
--replace-fail 'version = "0.0.0"' 'version = "${finalAttrs.version}"'
'';
build-system = [ setuptools ];
@@ -45,10 +45,10 @@ buildPythonPackage rec {
];
meta = {
description = "Async python library to communicate with Sonos devices ";
description = "Async python library to communicate with Sonos devices";
homepage = "https://github.com/music-assistant/aiosonos";
changelog = "https://github.com/music-assistant/aiosonos/releases/tag/${version}";
changelog = "https://github.com/music-assistant/aiosonos/releases/tag/${finalAttrs.src.tag}";
license = [ lib.licenses.asl20 ];
maintainers = [ lib.maintainers.autrimpo ];
};
}
})

View File

@@ -24,7 +24,7 @@
let
pname = "ansible";
version = "13.3.0";
version = "13.5.0";
in
buildPythonPackage {
inherit pname version;
@@ -32,7 +32,7 @@ buildPythonPackage {
src = fetchPypi {
inherit pname version;
hash = "sha256-fn7QUsjuexRJ+yhdDh2sACn2RAxwzp9HOvbBoxiHu4Q=";
hash = "sha256-abF15pTZUR/sg4sKgvFQurNm3Zy3qCkJbD06cvYEZxk=";
};
# we make ansible-core depend on ansible, not the other way around,

View File

@@ -8,16 +8,16 @@
pyjwt,
}:
buildPythonPackage rec {
buildPythonPackage (finalAttrs: {
pname = "apple-weatherkit";
version = "1.1.3";
version = "1.2.0";
pyproject = true;
src = fetchFromGitHub {
owner = "tjhorner";
repo = "python-weatherkit";
tag = "v${version}";
hash = "sha256-JvN8GmlTxz9VGttIFVG6q//c+BhP2pt1tBOhnJhNwJg=";
tag = "v${finalAttrs.version}";
hash = "sha256-6dln/599XTJrIY2wL8n9WdHEjJ75goYeZC5szQ6WNsk=";
};
build-system = [ poetry-core ];
@@ -37,8 +37,8 @@ buildPythonPackage rec {
meta = {
description = "Python library for Apple WeatherKit";
homepage = "https://github.com/tjhorner/python-weatherkit";
changelog = "https://github.com/tjhorner/python-weatherkit/releases/tag/v${version}";
changelog = "https://github.com/tjhorner/python-weatherkit/releases/tag/${finalAttrs.src.tag}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ fab ];
};
}
})

View File

@@ -11,16 +11,16 @@
urllib3,
}:
buildPythonPackage rec {
buildPythonPackage (finalAttrs: {
pname = "asana";
version = "5.2.3";
version = "5.2.4";
pyproject = true;
src = fetchFromGitHub {
owner = "asana";
repo = "python-asana";
tag = "v${version}";
hash = "sha256-GyNf5fr/cuwFSCQFsXno92ZOCVW88BWAVjzScVvnQdo=";
tag = "v${finalAttrs.version}";
hash = "sha256-Bfq3FKJoZE8edAAFVNYYrLJ8vp44QYboEVsCGsI5WMY=";
};
build-system = [ setuptools ];
@@ -45,8 +45,8 @@ buildPythonPackage rec {
meta = {
description = "Python client library for Asana";
homepage = "https://github.com/asana/python-asana";
changelog = "https://github.com/Asana/python-asana/releases/tag/${src.tag}";
changelog = "https://github.com/Asana/python-asana/releases/tag/${finalAttrs.src.tag}";
license = lib.licenses.mit;
maintainers = [ ];
};
}
})

View File

@@ -10,12 +10,12 @@
buildPythonPackage (finalAttrs: {
pname = "awscrt";
version = "0.31.1";
version = "0.31.3";
pyproject = true;
src = fetchPypi {
inherit (finalAttrs) pname version;
hash = "sha256-q7ZHaNJb9WPajiFl1Hekkcuhi8IsTsjbesva6U5Z68Q=";
hash = "sha256-FswDgO7wc6Ljfv8BqY8/IQjq1tu0qRnUD2VtsNitS3E=";
};
build-system = [ setuptools ];

View File

@@ -7,14 +7,14 @@
requests,
}:
buildPythonPackage rec {
buildPythonPackage (finalAttrs: {
pname = "docplex";
version = "2.31.254";
version = "2.32.264";
pyproject = true;
src = fetchPypi {
inherit pname version;
hash = "sha256-LGMpeN3r9/xIzLhGwtWrTrXs0CUMDGEmspu6vVNpwEY=";
inherit (finalAttrs) pname version;
hash = "sha256-Tisps1WecCvP4SxnR0KMdSsMOaUIqBrd8F7aqza3a9g=";
};
postPatch = ''
@@ -40,4 +40,4 @@ buildPythonPackage rec {
license = lib.licenses.asl20;
maintainers = [ ];
};
}
})

View File

@@ -20,14 +20,14 @@
buildPythonPackage (finalAttrs: {
pname = "env-canada";
version = "0.14.0";
version = "0.14.1";
pyproject = true;
src = fetchFromGitHub {
owner = "michaeldavie";
repo = "env_canada";
tag = "v${finalAttrs.version}";
hash = "sha256-1UjBE2Oc6bqwmJSFeqWukgAVU7b6OwOt1KMV0UigM3o=";
hash = "sha256-iqqor2iywNKSq3Ou0NeQs6toFWJ3pZ7DFZR/ukf014g=";
};
build-system = [ setuptools ];

View File

@@ -7,15 +7,15 @@
setuptools,
}:
buildPythonPackage rec {
buildPythonPackage (finalAttrs: {
pname = "google-cloud-access-context-manager";
version = "0.3.0";
version = "0.4.0";
pyproject = true;
src = fetchPypi {
pname = "google_cloud_access_context_manager";
inherit version;
hash = "sha256-86o1ySJbeq74Xs2s7cwVd3ib6NRYt6QbatI7UEeG5fk=";
inherit (finalAttrs) version;
hash = "sha256-IbnGOozCLKe61oTaFZW19FkA0UO4D+fByc9e/4zzqrA=";
};
build-system = [ setuptools ];
@@ -38,8 +38,8 @@ buildPythonPackage rec {
meta = {
description = "Protobufs for Google Access Context Manager";
homepage = "https://github.com/googleapis/google-cloud-python/tree/main/packages/google-cloud-access-context-manager";
changelog = "https://github.com/googleapis/google-cloud-python/blob/google-cloud-access-context-manager-v${version}/packages/google-cloud-access-context-manager/CHANGELOG.md";
changelog = "https://github.com/googleapis/google-cloud-python/blob/google-cloud-access-context-manager-v${finalAttrs.version}/packages/google-cloud-access-context-manager/CHANGELOG.md";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ austinbutler ];
};
}
})

View File

@@ -1,5 +1,6 @@
{
lib,
stdenv,
buildPythonPackage,
fetchFromGitHub,
@@ -82,6 +83,11 @@ buildPythonPackage rec {
"test_save_custom_webdriver"
"test_save_image_file"
"test_save_non_png"
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
# Fails due to added newline in HTML output
# https://github.com/posit-dev/great-tables/issues/826
"test_html_string_generated_inline_css"
];
__darwinAllowLocalNetworking = true;

View File

@@ -8,14 +8,14 @@
buildPythonPackage (finalAttrs: {
pname = "iamdata";
version = "0.1.202604051";
version = "0.1.202604061";
pyproject = true;
src = fetchFromGitHub {
owner = "cloud-copilot";
repo = "iam-data-python";
tag = "v${finalAttrs.version}";
hash = "sha256-mMIHQGLMOpxq1ql3fEArQWJ9YDg64JCTaDfXiIluOcA=";
hash = "sha256-7lE6XsODQ3SbwMZdaHAu2kmJBWKRPgft+3jTxMRpEzo=";
};
__darwinAllowLocalNetworking = true;

View File

@@ -9,22 +9,22 @@
rustPlatform,
}:
buildPythonPackage rec {
buildPythonPackage (finalAttrs: {
pname = "jh2";
version = "5.0.10";
version = "5.0.11";
pyproject = true;
src = fetchFromGitHub {
owner = "jawah";
repo = "h2";
tag = "v${version}";
hash = "sha256-zytQ6UFNeIaF7cftp7C/RnXhuRbQxc1jhwVmFwUDF1Y=";
tag = "v${finalAttrs.version}";
hash = "sha256-k69U8O0c7z1TJASOWcndZA/LYTsX7nVfelhaS6FlN5g=";
fetchSubmodules = true;
};
cargoDeps = rustPlatform.fetchCargoVendor {
inherit pname version src;
hash = "sha256-W2BfuOhYL56gPd+j9YuJ7Ee3e+jT5m47h8qXihoMu1M=";
inherit (finalAttrs) pname version src;
hash = "sha256-ELZD3CIAv70DGoCgdK8T2yVLtib9ylSvoZPFOge6nIQ=";
};
build-system = [
@@ -44,11 +44,11 @@ buildPythonPackage rec {
meta = {
description = "HTTP/2 State-Machine based protocol implementation";
homepage = "https://github.com/jawah/h2";
changelog = "https://github.com/jawah/h2/blob/${src.rev}/CHANGELOG.rst";
changelog = "https://github.com/jawah/h2/blob/${finalAttrs.src.rev}/CHANGELOG.rst";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [
fab
techknowlogick
];
};
}
})

View File

@@ -0,0 +1,43 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
setuptools,
aiohttp,
aioresponses,
pytestCheckHook,
pytest-asyncio,
}:
buildPythonPackage (finalAttrs: {
pname = "lojack-api";
version = "0.7.2";
pyproject = true;
src = fetchFromGitHub {
owner = "devinslick";
repo = "lojack_api";
tag = finalAttrs.version;
hash = "sha256-QVXiIN+gb/jm5H49ByT8+jVgl3RVKPSgpwca04C6Keo=";
};
build-system = [ setuptools ];
dependencies = [ aiohttp ];
nativeCheckInputs = [
aioresponses
pytestCheckHook
pytest-asyncio
];
pythonImportsCheck = [ "lojack_api" ];
meta = {
description = "Async Python client library for the Spireon LoJack API";
homepage = "https://github.com/devinslick/lojack_api";
changelog = "https://github.com/devinslick/lojack_api/releases/tag/${finalAttrs.src.tag}";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.jamiemagee ];
};
})

View File

@@ -10,7 +10,7 @@
}:
buildPythonPackage rec {
pname = "netbox-floorplan-plugin";
version = "0.9.0";
version = "0.9.1";
pyproject = true;
disabled = python.pythonVersion != netbox.python.pythonVersion;
@@ -19,7 +19,7 @@ buildPythonPackage rec {
owner = "netbox-community";
repo = "netbox-floorplan-plugin";
tag = version;
hash = "sha256-soz6W/x4/lSBrH5kKOBOBlkPB353vpk4yJ333bvqx0k=";
hash = "sha256-0EeE5NrImbCs6xqrSTGupXOuv455EfNXgcLVix2HTPs=";
};
build-system = [ setuptools ];

View File

@@ -27,14 +27,14 @@
buildPythonPackage rec {
pname = "proton-vpn-api-core";
version = "4.16.0";
version = "4.18.0";
pyproject = true;
src = fetchFromGitHub {
owner = "ProtonVPN";
repo = "python-proton-vpn-api-core";
rev = "v${version}";
hash = "sha256-XYyDEAUQ0fzg2J8NJbYlGqd2vG1cUTyfo9YzPisbWSY=";
hash = "sha256-dyMSyGkeyYXVKAhkmQpq2w4zCFk3fz1qEVECOVl8jEI=";
};
postPatch = ''

View File

@@ -13,14 +13,14 @@
buildPythonPackage (finalAttrs: {
pname = "py-unifi-access";
version = "1.1.3";
version = "1.1.4";
pyproject = true;
src = fetchFromGitHub {
owner = "imhotep";
repo = "py-unifi-access";
tag = finalAttrs.version;
hash = "sha256-FYhHTYQl+yGHcAu0APqdfca/YSMp3GSQmY7kSO4xkH8=";
hash = "sha256-oh8Y1hfr+mJL5gz2P4uaZ68TtSCG0CgcrKgnhuEgfQc=";
};
build-system = [ setuptools ];

View File

@@ -11,14 +11,14 @@
buildPythonPackage (finalAttrs: {
pname = "python-qube-heatpump";
version = "1.7.0";
version = "1.8.0";
pyproject = true;
src = fetchFromGitHub {
owner = "MattieGit";
repo = "python-qube-heatpump";
tag = "v${finalAttrs.version}";
hash = "sha256-auxFAKEi8nvPQPDU7Lg2bt8X5TaFaYhvcnQLv86QpGY=";
hash = "sha256-p+g/70W09QymkFcjYLhxzYXBQCcPHzUX/hOqAL7/aas=";
};
build-system = [ hatchling ];

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