Merge remote-tracking branch 'origin/master' into staging-next

This commit is contained in:
K900 2025-02-03 09:17:01 +03:00
commit 5c3fd0ab9f
96 changed files with 2573 additions and 1663 deletions

6
.github/labeler.yml vendored
View File

@ -476,6 +476,12 @@
- pkgs/development/tcl-modules/**/*
- pkgs/top-level/tcl-packages.nix
"6.topic: teams":
- any:
- changed-files:
- any-glob-to-any-file:
- maintainers/team-list.nix
"6.topic: TeX":
- any:
- changed-files:

View File

@ -21279,6 +21279,12 @@
github = "ein-shved";
githubId = 3513222;
};
ShyAssassin = {
name = "[Assassin]";
githubId = 49711232;
github = "ShyAssassin";
email = "ShyAssassin@assassin.dev";
};
shyim = {
email = "s.sayakci@gmail.com";
github = "shyim";
@ -23212,6 +23218,12 @@
githubId = 1391883;
name = "Tom Hall";
};
three = {
email = "eric@ericroberts.dev";
github = "three";
githubId = 1761259;
name = "Eric Roberts";
};
thtrf = {
email = "thtrf@proton.me";
github = "thtrf";

View File

@ -216,6 +216,8 @@
- Support for CUDA 10 has been dropped, as announced in the 24.11 release notes.
- `virtualisation/azure-common.nix`'s filesystem and grub configurations have been moved to `virtualisation/azure-image.nix`. This makes `azure-common.nix` more generic so it could be used for users who generate Azure image using other methods (e.g. nixos-generators and disko). For existing users depending on these configurations, please also import `azure-image.nix`.
- `zammad` has had its support for MySQL removed, since it was never working correctly and is now deprecated upstream. Check the [migration guide](https://docs.zammad.org/en/latest/appendix/migrate-to-postgresql.html) for how to convert your database to PostgreSQL.
- The `earlyoom` service is now using upstream systemd service, which enables

View File

@ -929,6 +929,7 @@
./services/monitoring/grafana-agent.nix
./services/monitoring/grafana-image-renderer.nix
./services/monitoring/grafana-reporter.nix
./services/monitoring/grafana-to-ntfy.nix
./services/monitoring/grafana.nix
./services/monitoring/graphite.nix
./services/monitoring/hdaps.nix

View File

@ -0,0 +1,123 @@
{
config,
lib,
pkgs,
...
}:
let
cfg = config.services.grafana-to-ntfy;
in
{
options = {
services.grafana-to-ntfy = {
enable = lib.mkEnableOption "Grafana-to-ntfy (ntfy.sh) alerts channel";
package = lib.mkPackageOption pkgs "grafana-to-ntfy" { };
settings = {
ntfyUrl = lib.mkOption {
type = lib.types.str;
description = "The URL to the ntfy-sh topic.";
example = "https://push.example.com/grafana";
};
ntfyBAuthUser = lib.mkOption {
type = lib.types.nullOr lib.types.str;
description = ''
The ntfy-sh user to use for authenticating with the ntfy-sh instance.
Setting this option is required when using a ntfy-sh instance with access control enabled.
'';
default = null;
example = "grafana";
};
ntfyBAuthPass = lib.mkOption {
type = lib.types.path;
description = ''
The path to the password for the specified ntfy-sh user.
Setting this option is required when using a ntfy-sh instance with access control enabled.
'';
default = null;
};
bauthUser = lib.mkOption {
type = lib.types.str;
description = ''
The user that you will authenticate with in the Grafana webhook settings.
You can set this to whatever you like, as this is not the same as the ntfy-sh user.
'';
default = "admin";
};
bauthPass = lib.mkOption {
type = lib.types.path;
description = "The path to the password you will use in the Grafana webhook settings.";
};
};
};
};
config = lib.mkIf cfg.enable {
systemd.services.grafana-to-ntfy = {
wantedBy = [ "multi-user.target" ];
script = ''
export BAUTH_PASS=$(${lib.getExe' config.systemd.package "systemd-creds"} cat BAUTH_PASS_FILE)
${lib.optionalString (cfg.settings.ntfyBAuthPass != null) ''
export NTFY_BAUTH_PASS=$(${lib.getExe' config.systemd.package "systemd-creds"} cat NTFY_BAUTH_PASS_FILE)
''}
exec ${lib.getExe cfg.package}
'';
environment =
{
NTFY_URL = cfg.settings.ntfyUrl;
BAUTH_USER = cfg.settings.bauthUser;
}
// lib.optionalAttrs (cfg.settings.ntfyBAuthUser != null) {
NTFY_BAUTH_USER = cfg.settings.ntfyBAuthUser;
};
serviceConfig = {
LoadCredential =
[
"BAUTH_PASS_FILE:${cfg.settings.bauthPass}"
]
++ lib.optional (
cfg.settings.ntfyBAuthPass != null
) "NTFY_BAUTH_PASS_FILE:${cfg.settings.ntfyBAuthPass}";
DynamicUser = true;
CapabilityBoundingSet = [ "" ];
DeviceAllow = "";
LockPersonality = true;
PrivateDevices = true;
PrivateUsers = true;
ProcSubset = "pid";
ProtectClock = true;
ProtectControlGroups = true;
ProtectHome = true;
ProtectHostname = true;
ProtectKernelLogs = true;
ProtectKernelModules = true;
ProtectKernelTunables = true;
ProtectProc = "invisible";
RestrictAddressFamilies = [
"AF_INET"
"AF_INET6"
"AF_UNIX"
];
RestrictNamespaces = true;
RestrictRealtime = true;
MemoryDenyWriteExecute = true;
SystemCallArchitectures = "native";
SystemCallFilter = [
"@system-service"
"~@privileged"
];
UMask = "0077";
};
};
};
}

View File

@ -68,16 +68,10 @@ in
services = {
nginx = {
enable = true;
upstreams.tailscale-derper = {
servers."127.0.0.1:${toString cfg.port}" = { };
extraConfig = ''
keepalive 64;
'';
};
virtualHosts."${cfg.domain}" = {
addSSL = true; # this cannot be forceSSL as derper sends some information over port 80, too.
locations."/" = {
proxyPass = "http://tailscale-derper";
proxyPass = "http://127.0.0.1:${toString cfg.port}";
proxyWebsockets = true;
extraConfig = ''
keepalive_timeout 0;

View File

@ -146,6 +146,12 @@ in
proxyPass = "http://unix:${cfg.socketPath}";
proxyWebsockets = true;
recommendedProxySettings = true;
extraConfig = # nginx
''
# disable in case it was configured on a higher level
keepalive_timeout 0;
proxy_buffering off;
'';
};
}

View File

@ -52,7 +52,7 @@ in
group = lib.mkOption {
type = lib.types.str;
default = if cfg.enableNginx then "nginx" else defaultGroup;
defaultText = "If `services.privatebin.enableNginx` is true then `nginx` else ${defaultGroup}";
defaultText = lib.literalExpression "if config.services.privatebin.enableNginx then \"nginx\" else \"${defaultGroup}\"";
description = ''
Group under which privatebin runs. It is best to set this to the group
of whatever webserver is being used as the frontend.
@ -139,7 +139,6 @@ in
};
config = lib.mkIf cfg.enable {
services.privatebin.settings = {
main = lib.mkDefault { };
model.class = lib.mkDefault "Filesystem";

View File

@ -1,48 +1,67 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}:
with lib;
let
cfg = config.virtualisation.azure;
mlxDrivers = [ "mlx4_en" "mlx4_core" "mlx5_core" ];
mlxDrivers = [
"mlx4_en"
"mlx4_core"
"mlx5_core"
];
in
{
options.virtualisation.azure = {
acceleratedNetworking = mkOption {
acceleratedNetworking = lib.mkOption {
default = false;
description = "Whether the machine's network interface has enabled accelerated networking.";
};
};
imports = [
../profiles/headless.nix
./azure-agent.nix
];
config = {
virtualisation.azure.agent.enable = true;
services.waagent.enable = true;
boot.kernelParams = [ "console=ttyS0" "earlyprintk=ttyS0" "rootdelay=300" "panic=1" "boot.panic_on_fail" ];
boot.initrd.kernelModules = [ "hv_vmbus" "hv_netvsc" "hv_utils" "hv_storvsc" ];
# Enable cloud-init by default for waagent.
# Otherwise waagent would try manage networking using ifupdown,
# which is currently not availeble in nixpkgs.
services.cloud-init.enable = true;
services.cloud-init.network.enable = true;
systemd.services.cloud-config.serviceConfig.Restart = "on-failure";
# cloud-init.network.enable also enables systemd-networkd
networking.useNetworkd = true;
# Ensure kernel outputs to ttyS0 (Azure Serial Console),
# and reboot machine upon fatal boot issues
boot.kernelParams = [
"console=ttyS0"
"earlyprintk=ttyS0"
"rootdelay=300"
"panic=1"
"boot.panic_on_fail"
];
# Load Hyper-V kernel modules
boot.initrd.kernelModules = [
"hv_vmbus"
"hv_netvsc"
"hv_utils"
"hv_storvsc"
];
# Accelerated networking, configured following:
# https://learn.microsoft.com/en-us/azure/virtual-network/accelerated-networking-overview
boot.initrd.availableKernelModules = lib.optionals cfg.acceleratedNetworking mlxDrivers;
# Accelerated networking
systemd.network.networks."99-azure-unmanaged-devices.network" = lib.mkIf cfg.acceleratedNetworking {
matchConfig.Driver = mlxDrivers;
linkConfig.Unmanaged = "yes";
};
networking.networkmanager.unmanaged = lib.mkIf cfg.acceleratedNetworking
(builtins.map (drv: "driver:${drv}") mlxDrivers);
# Generate a GRUB menu.
boot.loader.grub.device = "/dev/sda";
boot.growPartition = true;
fileSystems."/" = {
device = "/dev/disk/by-label/nixos";
fsType = "ext4";
autoResize = true;
};
networking.networkmanager.unmanaged = lib.mkIf cfg.acceleratedNetworking (
builtins.map (drv: "driver:${drv}") mlxDrivers
);
# Allow root logins only using the SSH key that the user specified
# at instance creation time, ping client connections to avoid timeouts
@ -51,35 +70,19 @@ in
services.openssh.settings.ClientAliveInterval = 180;
# Force getting the hostname from Azure
networking.hostName = mkDefault "";
networking.hostName = lib.mkDefault "";
# Always include cryptsetup so that NixOps can use it.
# sg_scan is needed to finalize disk removal on older kernels
environment.systemPackages = [ pkgs.cryptsetup pkgs.sg3_utils ];
environment.systemPackages = [
pkgs.cryptsetup
pkgs.sg3_utils
];
networking.usePredictableInterfaceNames = false;
services.udev.extraRules = ''
ENV{DEVTYPE}=="disk", KERNEL!="sda" SUBSYSTEM=="block", SUBSYSTEMS=="scsi", KERNELS=="?:0:0:0", ATTR{removable}=="0", SYMLINK+="disk/by-lun/0",
ENV{DEVTYPE}=="disk", KERNEL!="sda" SUBSYSTEM=="block", SUBSYSTEMS=="scsi", KERNELS=="?:0:0:1", ATTR{removable}=="0", SYMLINK+="disk/by-lun/1",
ENV{DEVTYPE}=="disk", KERNEL!="sda" SUBSYSTEM=="block", SUBSYSTEMS=="scsi", KERNELS=="?:0:0:2", ATTR{removable}=="0", SYMLINK+="disk/by-lun/2"
ENV{DEVTYPE}=="disk", KERNEL!="sda" SUBSYSTEM=="block", SUBSYSTEMS=="scsi", KERNELS=="?:0:0:3", ATTR{removable}=="0", SYMLINK+="disk/by-lun/3"
ENV{DEVTYPE}=="disk", KERNEL!="sda" SUBSYSTEM=="block", SUBSYSTEMS=="scsi", KERNELS=="?:0:0:4", ATTR{removable}=="0", SYMLINK+="disk/by-lun/4"
ENV{DEVTYPE}=="disk", KERNEL!="sda" SUBSYSTEM=="block", SUBSYSTEMS=="scsi", KERNELS=="?:0:0:5", ATTR{removable}=="0", SYMLINK+="disk/by-lun/5"
ENV{DEVTYPE}=="disk", KERNEL!="sda" SUBSYSTEM=="block", SUBSYSTEMS=="scsi", KERNELS=="?:0:0:6", ATTR{removable}=="0", SYMLINK+="disk/by-lun/6"
ENV{DEVTYPE}=="disk", KERNEL!="sda" SUBSYSTEM=="block", SUBSYSTEMS=="scsi", KERNELS=="?:0:0:7", ATTR{removable}=="0", SYMLINK+="disk/by-lun/7"
ENV{DEVTYPE}=="disk", KERNEL!="sda" SUBSYSTEM=="block", SUBSYSTEMS=="scsi", KERNELS=="?:0:0:8", ATTR{removable}=="0", SYMLINK+="disk/by-lun/8"
ENV{DEVTYPE}=="disk", KERNEL!="sda" SUBSYSTEM=="block", SUBSYSTEMS=="scsi", KERNELS=="?:0:0:9", ATTR{removable}=="0", SYMLINK+="disk/by-lun/9"
ENV{DEVTYPE}=="disk", KERNEL!="sda" SUBSYSTEM=="block", SUBSYSTEMS=="scsi", KERNELS=="?:0:0:10", ATTR{removable}=="0", SYMLINK+="disk/by-lun/10"
ENV{DEVTYPE}=="disk", KERNEL!="sda" SUBSYSTEM=="block", SUBSYSTEMS=="scsi", KERNELS=="?:0:0:11", ATTR{removable}=="0", SYMLINK+="disk/by-lun/11"
ENV{DEVTYPE}=="disk", KERNEL!="sda" SUBSYSTEM=="block", SUBSYSTEMS=="scsi", KERNELS=="?:0:0:12", ATTR{removable}=="0", SYMLINK+="disk/by-lun/12"
ENV{DEVTYPE}=="disk", KERNEL!="sda" SUBSYSTEM=="block", SUBSYSTEMS=="scsi", KERNELS=="?:0:0:13", ATTR{removable}=="0", SYMLINK+="disk/by-lun/13"
ENV{DEVTYPE}=="disk", KERNEL!="sda" SUBSYSTEM=="block", SUBSYSTEMS=="scsi", KERNELS=="?:0:0:14", ATTR{removable}=="0", SYMLINK+="disk/by-lun/14"
ENV{DEVTYPE}=="disk", KERNEL!="sda" SUBSYSTEM=="block", SUBSYSTEMS=="scsi", KERNELS=="?:0:0:15", ATTR{removable}=="0", SYMLINK+="disk/by-lun/15"
'';
services.udev.extraRules = lib.concatMapStrings (i: ''
ENV{DEVTYPE}=="disk", KERNEL!="sda" SUBSYSTEM=="block", SUBSYSTEMS=="scsi", KERNELS=="?:0:0:${toString i}", ATTR{removable}=="0", SYMLINK+="disk/by-lun/${toString i}"
'') (lib.range 1 15);
};
}

View File

@ -8,5 +8,11 @@
# This configures everything but bootstrap services,
# which only need to be run once and have already finished
# if you are able to see this comment.
imports = [ "${modulesPath}/virtualisation/azure-common.nix" ];
imports = [
"${modulesPath}/virtualisation/azure-common.nix"
"${modulesPath}/virtualisation/azure-image.nix"
];
# Please set the VM Generation to the actual value
# virtualisation.azureImage.vmGeneration = "v1";
}

View File

@ -46,6 +46,14 @@ in
'';
};
label = mkOption {
type = types.str;
default = "nixos";
description = ''
NixOS partition label.
'';
};
vmGeneration = mkOption {
type =
with types;
@ -68,19 +76,55 @@ in
system.build.azureImage = import ../../lib/make-disk-image.nix {
name = "azure-image";
inherit (config.image) baseName;
# Azure expects vhd format with fixed size,
# generating raw format and convert with subformat args afterwards
format = "raw";
postVM = ''
${pkgs.vmTools.qemu}/bin/qemu-img convert -f raw -o subformat=fixed,force_size -O vpc $diskImage $out/${config.image.fileName}
rm $diskImage
'';
configFile = ./azure-config-user.nix;
format = "raw";
bootSize = "${toString cfg.bootSize}M";
partitionTableType = if cfg.vmGeneration == "v2" then "efi" else "legacy";
partitionTableType = if (cfg.vmGeneration == "v2") then "efi" else "legacy";
inherit (cfg) contents;
inherit (cfg) contents label;
inherit (config.virtualisation) diskSize;
inherit config lib pkgs;
};
boot.growPartition = true;
boot.loader.grub = rec {
efiSupport = (cfg.vmGeneration == "v2");
device = if efiSupport then "nodev" else "/dev/sda";
efiInstallAsRemovable = efiSupport;
# Force grub to run in text mode and output to console
# by disabling font and splash image
font = null;
splashImage = null;
# For Gen 1 VM, configurate grub output to serial_com0.
# Not needed for Gen 2 VM wbere serial_com0 does not exist,
# and outputing to console is enough to make Azure Serial Console working
extraConfig = lib.mkIf (!efiSupport) ''
serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1
terminal_input --append serial
terminal_output --append serial
'';
};
fileSystems = {
"/" = {
device = "/dev/disk/by-label/${cfg.label}";
inherit (cfg) label;
fsType = "ext4";
autoResize = true;
};
"/boot" = lib.mkIf (cfg.vmGeneration == "v2") {
device = "/dev/disk/by-label/ESP";
fsType = "vfat";
};
};
};
}

View File

@ -9,6 +9,8 @@ let
cfg = config.virtualisation.incus;
preseedFormat = pkgs.formats.yaml { };
nvidiaEnabled = (lib.elem "nvidia" config.services.xserver.videoDrivers);
serverBinPath = ''/run/wrappers/bin:${pkgs.qemu_kvm}/libexec:${
lib.makeBinPath (
with pkgs;
@ -26,6 +28,7 @@ let
e2fsprogs
findutils
getent
gawk
gnugrep
gnused
gnutar
@ -35,7 +38,6 @@ let
iptables
iw
kmod
libnvidia-container
libxfs
lvm2
lxcfs
@ -73,6 +75,9 @@ let
config.boot.zfs.package
"${config.boot.zfs.package}/lib/udev"
]
++ lib.optionals nvidiaEnabled [
libnvidia-container
]
)
}'';
@ -309,7 +314,7 @@ in
"xt_CHECKSUM"
"xt_MASQUERADE"
"vhost_vsock"
] ++ lib.optionals (!config.networking.nftables.enable) [ "iptable_mangle" ];
] ++ lib.optionals nvidiaEnabled [ "nvidia_uvm" ];
environment.systemPackages = [
cfg.clientPackage

View File

@ -31,7 +31,7 @@ let
attrsOf (
either atom (attrsOf atom)
// {
description = atom.description + "or an attribute set of them";
description = atom.description + " or an attribute set of them";
}
);
generate =
@ -110,14 +110,18 @@ let
};
ResourceDisk = {
Format = mkEnableOption ''
If set to `true`, waagent formats and mounts the resource disk that the platform provides,
unless the file system type in `ResourceDisk.FileSystem` is set to `ntfs`.
The agent makes a single Linux partition (ID 83) available on the disk.
This partition isn't formatted if it can be successfully mounted.
Format = mkOption {
type = types.bool;
default = false;
description = ''
If set to `true`, waagent formats and mounts the resource disk that the platform provides,
unless the file system type in `ResourceDisk.FileSystem` is set to `ntfs`.
The agent makes a single Linux partition (ID 83) available on the disk.
This partition isn't formatted if it can be successfully mounted.
This configuration has no effect if resource disk is managed by cloud-init.
'';
This configuration has no effect if resource disk is managed by cloud-init.
'';
};
FileSystem = mkOption {
type = types.str;
@ -155,12 +159,16 @@ let
'';
};
EnableSwap = mkEnableOption ''
If enabled, the agent creates a swap file (`/swapfile`) on the resource disk
and adds it to the system swap space.
EnableSwap = mkOption {
type = types.bool;
default = false;
description = ''
If enabled, the agent creates a swap file (`/swapfile`) on the resource disk
and adds it to the system swap space.
This configuration has no effect if resource disk is managed by cloud-init.
'';
This configuration has no effect if resource disk is managed by cloud-init.
'';
};
SwapSizeMB = mkOption {
type = types.int;
@ -173,16 +181,24 @@ let
};
};
Logs.Verbose = lib.mkEnableOption ''
If you set this option, log verbosity is boosted.
Waagent logs to `/var/log/waagent.log` and uses the system logrotate functionality to rotate logs.
'';
Logs.Verbose = lib.mkOption {
type = types.bool;
default = false;
description = ''
If you set this option, log verbosity is boosted.
Waagent logs to `/var/log/waagent.log` and uses the system logrotate functionality to rotate logs.
'';
};
OS = {
EnableRDMA = lib.mkEnableOption ''
If enabled, the agent attempts to install and then load an RDMA kernel driver
that matches the version of the firmware on the underlying hardware.
'';
EnableRDMA = lib.mkOption {
type = types.bool;
default = false;
description = ''
If enabled, the agent attempts to install and then load an RDMA kernel driver
that matches the version of the firmware on the underlying hardware.
'';
};
RootDeviceScsiTimeout = lib.mkOption {
type = types.nullOr types.int;
@ -212,17 +228,19 @@ let
};
};
AutoUpdate.Enable = lib.mkEnableOption ''
Enable or disable autoupdate for goal state processing.
'';
AutoUpdate.Enable = lib.mkOption {
type = types.bool;
default = false;
description = ''
Whether or not to enable autoupdate for goal state processing.
'';
};
};
};
in
{
options.services.waagent = {
enable = lib.mkEnableOption ''
Whether to enable the Windows Azure Linux Agent.
'';
enable = lib.mkEnableOption "Windows Azure Linux Agent";
package = lib.mkPackageOption pkgs "waagent" { };

View File

@ -9,16 +9,16 @@ let
versions =
if stdenv.hostPlatform.isLinux then
{
stable = "0.0.81";
ptb = "0.0.127";
canary = "0.0.574";
development = "0.0.67";
stable = "0.0.82";
ptb = "0.0.128";
canary = "0.0.581";
development = "0.0.68";
}
else
{
stable = "0.0.333";
stable = "0.0.334";
ptb = "0.0.157";
canary = "0.0.686";
canary = "0.0.692";
development = "0.0.78";
};
version = versions.${branch};
@ -26,25 +26,25 @@ let
x86_64-linux = {
stable = fetchurl {
url = "https://stable.dl2.discordapp.net/apps/linux/${version}/discord-${version}.tar.gz";
hash = "sha256-V3xaBbCZX1TUaXxLbMOhJ8VFKMZBfCR/w5ajrAvu2kQ=";
hash = "sha256-L8Lwe5UavmbW1s3gsSJiHjbiZnNtyEsEJzlrN0Fgc3w=";
};
ptb = fetchurl {
url = "https://ptb.dl2.discordapp.net/apps/linux/${version}/discord-ptb-${version}.tar.gz";
hash = "sha256-mgR2MDQ3ZtgBltQPOxT6773aNUx5hH2P6LvFJFEuUts=";
hash = "sha256-ccmlOyzPu6aMqmC2+mRXMQh6OYIFLrlTNwKmBGE61ic=";
};
canary = fetchurl {
url = "https://canary.dl2.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz";
hash = "sha256-pZdHl7U3aNmxe6PtaK7JbQ7XdAPtlTAUuGcBRFkQI3s=";
hash = "sha256-PUTu1eoq8lB+4rX0qACh3M8tOjR83Tgs3vaN5t70Mo8=";
};
development = fetchurl {
url = "https://development.dl2.discordapp.net/apps/linux/${version}/discord-development-${version}.tar.gz";
hash = "sha256-YwOhdNM6l+E/X6JX5ttyJsJmf3Pa+BN7N0mG7923xI4=";
hash = "sha256-Vfsuz7/o2iVssOi4I9MmQc5T8ct8WTaCavvT9/OycPs=";
};
};
x86_64-darwin = {
stable = fetchurl {
url = "https://stable.dl2.discordapp.net/apps/osx/${version}/Discord.dmg";
hash = "sha256-ebPbTIiaZ2hMoJdVCax0hT2bLUFLj5fuIf2e74qLHns=";
hash = "sha256-8zAwOh1waRAQwW/RnjUJsOQJmYcCK5dZ10Ib08F7U08=";
};
ptb = fetchurl {
url = "https://ptb.dl2.discordapp.net/apps/osx/${version}/DiscordPTB.dmg";
@ -52,7 +52,7 @@ let
};
canary = fetchurl {
url = "https://canary.dl2.discordapp.net/apps/osx/${version}/DiscordCanary.dmg";
hash = "sha256-F3vLcLjNhYRGnOyuNziwtbBNxiUKgw6wZaa1LbVF5PU=";
hash = "sha256-xA9TU6ODC6c8m+dLHxc5ZxD+SmTfXIjXl1wbA5JVay4=";
};
development = fetchurl {
url = "https://development.dl2.discordapp.net/apps/osx/${version}/DiscordDevelopment.dmg";

View File

@ -1,107 +0,0 @@
{
lib,
fetchFromBitbucket,
buildPythonApplication,
pyqt5,
matplotlib,
numpy,
cycler,
python-dateutil,
kiwisolver,
six,
setuptools,
dill,
rtree,
pyopengl,
vispy,
ortools,
svg-path,
simplejson,
shapely,
freetype-py,
fonttools,
rasterio,
lxml,
ezdxf,
qrcode,
reportlab,
svglib,
gdal,
pyserial,
python3,
}:
buildPythonApplication rec {
pname = "flatcam";
version = "unstable-2022-02-02";
src = fetchFromBitbucket {
owner = "jpcgt";
repo = pname;
rev = "ebf5cb9e3094362c4b0774a54cf119559c02211d"; # beta branch as of 2022-02-02
hash = "sha256-QKkBPEM+HVYmSZ83b4JRmOmCMp7C3EUqbJKPqUXMiKE=";
};
format = "other";
dontBuild = true;
propagatedBuildInputs = [
pyqt5
matplotlib
numpy
cycler
python-dateutil
kiwisolver
six
setuptools
dill
rtree
pyopengl
vispy
ortools
svg-path
simplejson
shapely
freetype-py
fonttools
rasterio
lxml
ezdxf
qrcode
reportlab
svglib
gdal
pyserial
];
preInstall = ''
patchShebangs .
sed -i "s|/usr/local/bin|$out/bin|" Makefile
mkdir -p $out/share/{flatcam,applications}
mkdir -p $out/bin
'';
installFlags = [
"USER_ID=0"
"LOCAL_PATH=/build/source/."
"INSTALL_PATH=${placeholder "out"}/share/flatcam"
"APPS_PATH=${placeholder "out"}/share/applications"
];
postInstall = ''
sed -i "s|python3|${
python3.withPackages (_: propagatedBuildInputs)
}/bin/python3|" $out/bin/flatcam-beta
mv $out/bin/flatcam{-beta,}
'';
meta = with lib; {
description = "2-D post processing for PCB fabrication on CNC routers";
homepage = "https://bitbucket.org/jpcgt/flatcam";
license = licenses.mit;
maintainers = with maintainers; [ trepetti ];
};
}

View File

@ -3,7 +3,6 @@
lib,
fetchurl,
fetchFromGitHub,
fetchpatch,
fixDarwinDylibNames,
autoconf,
aws-sdk-cpp,
@ -57,11 +56,6 @@
enableGcs ? !stdenv.hostPlatform.isDarwin,
}:
assert lib.asserts.assertMsg (
(enableS3 && stdenv.hostPlatform.isDarwin)
-> (lib.versionOlder boost.version "1.69" || lib.versionAtLeast boost.version "1.70")
) "S3 on Darwin requires Boost != 1.69";
let
arrow-testing = fetchFromGitHub {
name = "arrow-testing";
@ -75,11 +69,11 @@ let
name = "parquet-testing";
owner = "apache";
repo = "parquet-testing";
rev = "a7f1d288e693dbb08e3199851c4eb2140ff8dff2";
hash = "sha256-zLWJOWcW7OYL32OwBm9VFtHbmG+ibhteRfHlKr9G3CQ=";
rev = "c7cf1374cf284c0c73024cd1437becea75558bf8";
hash = "sha256-DThjyZ34LajHwXZy1IhYKUGUG/ejQ9WvBNuI8eUKmSs=";
};
version = "18.1.0";
version = "19.0.0";
in
stdenv.mkDerivation (finalAttrs: {
pname = "arrow-cpp";
@ -89,29 +83,11 @@ stdenv.mkDerivation (finalAttrs: {
owner = "apache";
repo = "arrow";
rev = "apache-arrow-${version}";
hash = "sha256-Jo3be5bVuDaDcSbW3pS8y9Wc2sz1W2tS6QTwf0XpODA";
hash = "sha256-rjU/D362QfmejzjIsYaEwTMcLADbNf/pQohb323ifZI=";
};
sourceRoot = "${finalAttrs.src.name}/cpp";
patches = [
# fixes build with libcxx-19 (llvm-19) remove on update
(fetchpatch {
name = "libcxx-19-fixes.patch";
url = "https://github.com/apache/arrow/commit/29e8ea011045ba4318a552567a26b2bb0a7d3f05.patch";
relative = "cpp";
includes = [ "src/arrow/buffer_test.cc" ];
hash = "sha256-ZHkznOilypi1J22d56PhLlw/hbz8RqwsOGDMqI1NsMs=";
})
# https://github.com/apache/arrow/pull/45057 remove on update
(fetchpatch {
name = "boost-187.patch";
url = "https://github.com/apache/arrow/commit/5ec8b64668896ff06a86b6a41e700145324e1e34.patch";
relative = "cpp";
hash = "sha256-GkB7u4YnnaCApOMQPYFJuLdY7R2LtLzKccMEpKCO9ic=";
})
];
# versions are all taken from
# https://github.com/apache/arrow/blob/apache-arrow-${version}/cpp/thirdparty/versions.txt

View File

@ -112,7 +112,7 @@ stdenv.mkDerivation (finalAttrs: {
description = "Portable version of NetBSD 'make'";
license = lib.licenses.bsd3;
mainProgram = "bmake";
maintainers = with lib.maintainers; [ thoughtpolice AndersonTorres ];
maintainers = with lib.maintainers; [ thoughtpolice ];
platforms = lib.platforms.unix;
# requires strip
badPlatforms = [ lib.systems.inspect.platformPatterns.isStatic ];

View File

@ -9,13 +9,13 @@
buildGoModule rec {
pname = "editorconfig-checker";
version = "3.1.2";
version = "3.2.0";
src = fetchFromGitHub {
owner = "editorconfig-checker";
repo = "editorconfig-checker";
rev = "v${version}";
hash = "sha256-EWLk4VHeA32VErULJwPHKLRMb5qaET7fnpBxLx5f7YE=";
hash = "sha256-JEpmCpFLj7LO/Vojw7MoAu8E5bZKT1cU4Zk4Nw6IEmM=";
};
vendorHash = "sha256-GNUkU/cmu8j6naFAHIEZ56opJnj8p2Sb8M7TduTbJcU=";

View File

@ -0,0 +1,45 @@
{
lib,
python3,
fetchFromGitHub,
}:
python3.pkgs.buildPythonApplication rec {
pname = "exposor";
version = "1.0.0";
pyproject = true;
src = fetchFromGitHub {
owner = "abuyv";
repo = "exposor";
tag = "v${version}";
hash = "sha256-D/AMoLMUUjiKbrDS90GkVLHncMHSmtfjLINf97LEU1w=";
};
postPatch = ''
# File contains unknown property
rm pyproject.toml
'';
build-system = with python3.pkgs; [ setuptools ];
dependencies = with python3.pkgs; [
python-dotenv
pyyaml
requests
];
# Project has no tests
doCheck = false;
pythonImportsCheck = [ "exposor" ];
meta = {
description = "Tool using internet search engines to detect exposed technologies with a unified syntax";
homepage = "https://github.com/abuyv/exposor";
changelog = "https://github.com/abuyv/exposor/releases/tag/v${version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ fab ];
mainProgram = "exposor";
};
}

View File

@ -11,16 +11,16 @@
buildGoModule rec {
pname = "fzf";
version = "0.58.0";
version = "0.59.0";
src = fetchFromGitHub {
owner = "junegunn";
repo = "fzf";
rev = "v${version}";
hash = "sha256-0HlmUwQFitd1He+F16JiwDcP0t9Bfo0sAm8owlb/Ygs=";
hash = "sha256-2W4JZy7oZWLbbL9B4OheFXM7FvlWoSx7Mlnth/cOWeg=";
};
vendorHash = "sha256-rUG926YdBTZyJfpTG0kXr2zo+yw1eNEUlolS6Q7C+ng=";
vendorHash = "sha256-kPgfDV3HUe2j8bvsnL4cCl8Abuk+wvDmKbJ33XDQPOE=";
env.CGO_ENABLED = 0;

View File

@ -6,13 +6,13 @@
buildDotnetModule rec {
pname = "gh-gei";
version = "1.11.0";
version = "1.12.0";
src = fetchFromGitHub {
owner = "github";
repo = pname;
rev = "v${version}";
hash = "sha256-hUURXPKhiI3n1BrW8IzVVmPuJyO4AxM8D5uluaJXk+4=";
hash = "sha256-orDjHgyqwBo/LOuujCp/6p4G0SWDA/ZDWvtTfH1ofrU=";
};
dotnet-sdk = dotnetCorePackages.sdk_8_0_4xx;

View File

@ -31,8 +31,8 @@
},
{
"pname": "Microsoft.CodeCoverage",
"version": "17.8.0",
"hash": "sha256-cv/wAXfTNS+RWEsHWNKqRDHC7LOQSSdFJ1a9cZuSfJw="
"version": "17.12.0",
"hash": "sha256-lGjifppD0OBMBp28pjUfPipaeXg739n8cPhtHWoo5RE="
},
{
"pname": "Microsoft.IdentityModel.Abstractions",
@ -56,8 +56,8 @@
},
{
"pname": "Microsoft.NET.Test.Sdk",
"version": "17.8.0",
"hash": "sha256-uz7QvW+NsVRsp8FR1wjnGEOkUaPX4JyieywvCN6g2+s="
"version": "17.12.0",
"hash": "sha256-DKFEbhh2wPzahNeHdEoFig8tZh/LEVrFc5+zpT43Btg="
},
{
"pname": "Microsoft.NETCore.Platforms",
@ -116,13 +116,13 @@
},
{
"pname": "Microsoft.TestPlatform.ObjectModel",
"version": "17.8.0",
"hash": "sha256-9TwGrjVvbtyetw67Udp3EMK5MX8j0RFRjduxPCs9ESw="
"version": "17.12.0",
"hash": "sha256-3XBHBSuCxggAIlHXmKNQNlPqMqwFlM952Av6RrLw1/w="
},
{
"pname": "Microsoft.TestPlatform.TestHost",
"version": "17.8.0",
"hash": "sha256-+CTYFu631uovLCO47RKe86YaAqfoLA4r73vKORJUsjg="
"version": "17.12.0",
"hash": "sha256-rf8Sh0fQq44Sneuvs64unkkIHg8kOjDGWE35j9iLx5I="
},
{
"pname": "Microsoft.Win32.Primitives",
@ -146,8 +146,8 @@
},
{
"pname": "Moq",
"version": "4.20.70",
"hash": "sha256-O+Ed1Hv8fK8MKaRh7qFGbsSPaTAj4O+yaLQ/W/ju7ks="
"version": "4.20.72",
"hash": "sha256-+uAc/6xtzij9YnmZrhZwc+4vUgx6cppZsWQli3CGQ8o="
},
{
"pname": "NETStandard.Library",
@ -169,11 +169,6 @@
"version": "1.0.2",
"hash": "sha256-ZUj6YFSMZp5CZtXiamw49eZmbp1iYBuNsIKNnjxcRzA="
},
{
"pname": "NuGet.Frameworks",
"version": "6.5.0",
"hash": "sha256-ElqfN4CcKxT3hP2qvxxObb4mnBlYG89IMxO0Sm5oZ2g="
},
{
"pname": "runtime.any.System.Collections",
"version": "4.3.0",
@ -531,13 +526,8 @@
},
{
"pname": "System.Formats.Asn1",
"version": "5.0.0",
"hash": "sha256-9nL3dN4w/dZ49W1pCkTjRqZm6Dh0mMVExNungcBHrKs="
},
{
"pname": "System.Formats.Asn1",
"version": "8.0.0",
"hash": "sha256-AVMl6N3SG2AqAcQHFruf2QDQeQIC3CICxID+Sh0vBxI="
"version": "8.0.1",
"hash": "sha256-may/Wg+esmm1N14kQTG4ESMBi+GQKPp0ZrrBo/o6OXM="
},
{
"pname": "System.Globalization",
@ -679,6 +669,11 @@
"version": "4.3.0",
"hash": "sha256-fVfgcoP4AVN1E5wHZbKBIOPYZ/xBeSIdsNF+bdukIRM="
},
{
"pname": "System.Private.Uri",
"version": "4.3.2",
"hash": "sha256-jB2+W3tTQ6D9XHy5sEFMAazIe1fu2jrENUO0cb48OgU="
},
{
"pname": "System.Reflection",
"version": "4.1.0-rc2-24027",

View File

@ -25,13 +25,13 @@ assert builtins.all (x: builtins.elem x [ "node20" ]) nodeRuntimes;
buildDotnetModule (finalAttrs: {
pname = "github-runner";
version = "2.321.0";
version = "2.322.0";
src = fetchFromGitHub {
owner = "actions";
repo = "runner";
tag = "v${finalAttrs.version}";
hash = "sha256-KZ072v5kYlD78RGQl13Aj05DGzj2+r2akzyZ1aJn93A=";
hash = "sha256-2HbV1evqZZxyJintJG7kDrBjLFN06nDfR5NRvkw3nTM=";
leaveDotGit = true;
postFetch = ''
git -C $out rev-parse --short HEAD > $out/.git-revision

View File

@ -17,28 +17,28 @@
# FIXME: unpin when fixed upstream
buildGo122Module rec {
pname = "grafana-agent";
version = "0.43.4";
version = "0.44.2";
src = fetchFromGitHub {
owner = "grafana";
repo = "agent";
rev = "v${version}";
hash = "sha256-VmGxe2bwp7It1Po+6kLia952PcT2MIg60qp3V/uRvUM=";
tag = "v${version}";
hash = "sha256-dAfiTJ0DlChriYOl/bPCEHj/UpbZ2a8BZBCQ82H+O9I=";
};
vendorHash = "sha256-aFGxRw0l56tO3NxpzAKKj8fl4Uj4tSVWqCK3YcZjjMc=";
vendorHash = "sha256-6nXUeRpaezzfRykqMCtwP0FQZchRdxLmtupVAMNAjmY=";
proxyVendor = true; # darwin/linux hash mismatch
frontendYarnOfflineCache = fetchYarnDeps {
yarnLock = src + "/internal/web/ui/yarn.lock";
hash = "sha256-kThqcjQ7qdSSs6bItSfLSW1WXpEYEA9BSLmyRfeCLyw=";
hash = "sha256-uqKOGSEnR9CU4vlahldrLxDb3z7Yt1DebyRB91NQMRc=";
};
ldflags = let
prefix = "github.com/grafana/agent/internal/build";
in [
"-s" "-w"
# https://github.com/grafana/agent/blob/v0.41.0/Makefile#L132-L137
# https://github.com/grafana/agent/blob/v0.44.2/Makefile#L132-L137
"-X ${prefix}.Version=${version}"
"-X ${prefix}.Branch=v${version}"
"-X ${prefix}.Revision=v${version}"

View File

@ -0,0 +1,30 @@
{
lib,
rustPlatform,
fetchFromGitHub,
}:
rustPlatform.buildRustPackage {
pname = "grafana-to-ntfy";
version = "0-unstable-2025-01-25";
src = fetchFromGitHub {
owner = "kittyandrew";
repo = "grafana-to-ntfy";
rev = "64d11f553776bbf7695d9febd74da1bad659352d";
hash = "sha256-GO9VE9wymRk+QKGFyDpd0wS9GCY3pjpFUe37KIcnKxc=";
};
useFetchCargoVendor = true;
cargoHash = "sha256-w4HSxdihElPz0q05vWjajQ9arZjAzd82L0kEKk1Uk8s=";
meta = {
description = "Grafana-to-ntfy (ntfy.sh) alerts channel";
homepage = "https://github.com/kittyandrew/grafana-to-ntfy";
license = lib.licenses.agpl3Only;
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [ kranzes ];
mainProgram = "grafana-to-ntfy";
};
}

View File

@ -13,13 +13,13 @@
}:
let
version = "1.10.0";
version = "1.10.1";
src = fetchFromGitHub {
owner = "hedgedoc";
repo = "hedgedoc";
tag = version;
hash = "sha256-cRIpcoD9WzLYxKYpkvhRxUmeyJR5z2QyqApzWvQND+s=";
hash = "sha256-fqpIPKU8B+T65PL11ipu0xkkioJf4k/8tdl045djfNk=";
};
# we cannot use fetchYarnDeps because that doesn't support yarn 2/berry lockfiles
@ -44,7 +44,7 @@ let
'';
outputHashMode = "recursive";
outputHash = "sha256-RV9xzNVE4//tPVWVaET78ML3ah+hkZ8x6mTAxe5/pdE=";
outputHash = "sha256-cx/VNThgGJSd8sDqsb7Fe7l4Fb8kT/NSxOD+KTq2RNA=";
};
in

View File

@ -0,0 +1,5 @@
#!/usr/bin/env bash
set -eu -o pipefail
HOARDER_LIB_PATH=
NODEJS=
exec "$NODEJS/bin/node" "$HOARDER_LIB_PATH/apps/cli/dist/index.mjs" "$@"

View File

@ -0,0 +1,10 @@
#!/usr/bin/env bash
set -eu -o pipefail
HOARDER_LIB_PATH=
RELEASE=
NODE_ENV=production
[[ -d "$DATA_DIR" ]] # Ensure DATA_DIR is defined and exists
export RELEASE NODE_ENV
exec "$HOARDER_LIB_PATH/node_modules/.bin/tsx" "$HOARDER_LIB_PATH/packages/db/migrate.ts" "$@"

View File

@ -0,0 +1,11 @@
#!/usr/bin/env bash
set -eu -o pipefail
HOARDER_LIB_PATH=
RELEASE=
NODEJS=
NODE_ENV=production
[[ -d "$DATA_DIR" ]] # Ensure DATA_DIR is defined and exists
export RELEASE NODE_ENV
exec "$NODEJS/bin/node" "$HOARDER_LIB_PATH/apps/web/.next/standalone/apps/web/server.js"

View File

@ -0,0 +1,11 @@
#!/usr/bin/env bash
set -eu -o pipefail
HOARDER_LIB_PATH=
RELEASE=
NODE_ENV=production
NODE_PATH="$HOARDER_LIB_PATH/apps/workers"
[[ -d "$DATA_DIR" ]] # Ensure DATA_DIR is defined and exists
export RELEASE NODE_ENV NODE_PATH
exec "$HOARDER_LIB_PATH/node_modules/.bin/tsx" "$HOARDER_LIB_PATH/apps/workers/index.ts"

View File

@ -0,0 +1,143 @@
{
lib,
stdenv,
fetchFromGitHub,
nodejs,
node-gyp,
inter,
python3,
srcOnly,
removeReferencesTo,
pnpm_9,
}:
let
pnpm = pnpm_9;
in
stdenv.mkDerivation (finalAttrs: {
pname = "hoarder";
version = "0.21.0";
src = fetchFromGitHub {
owner = "hoarder-app";
repo = "hoarder";
tag = "v${finalAttrs.version}";
hash = "sha256-3xgpiqq+BV0a/OlcQiGDt59fYNF+zP0+HPeBCRiZj48=";
};
patches = [
./patches/use-local-font.patch
./patches/fix-migrations-path.patch
./patches/dont-lock-pnpm-version.patch
];
postPatch = ''
ln -s ${inter}/share/fonts/truetype ./apps/landing/app/fonts
ln -s ${inter}/share/fonts/truetype ./apps/web/app/fonts
'';
nativeBuildInputs = [
python3
nodejs
node-gyp
pnpm.configHook
];
pnpmDeps = pnpm.fetchDeps {
inherit (finalAttrs) pname version;
# We need to pass the patched source code, so pnpm sees the patched version
src = stdenv.mkDerivation {
name = "${finalAttrs.pname}-patched-source";
phases = [
"unpackPhase"
"patchPhase"
"installPhase"
];
src = finalAttrs.src;
patches = finalAttrs.patches;
installPhase = "cp -pr --reflink=auto -- . $out";
};
hash = "sha256-U2wrjBhklP7c8S3QQoUtOPTYyJr7MBOwm0R/76FjhqE=";
};
buildPhase = ''
runHook preBuild
# Based on matrix-appservice-discord
pushd node_modules/better-sqlite3
npm run build-release --offline "--nodedir=${srcOnly nodejs}"
find build -type f -exec ${removeReferencesTo}/bin/remove-references-to -t "${srcOnly nodejs}" {} \;
popd
export CI=true
echo "Compiling apps/web..."
pushd apps/web
pnpm run build
popd
echo "Building apps/cli"
pushd apps/cli
pnpm run build
popd
runHook postBuild
'';
installPhase = ''
runHook preInstall
mkdir -p $out/share/doc/hoarder
cp README.md LICENSE $out/share/doc/hoarder
# Copy necessary files into lib/hoarder while keeping the directory structure
LIB_TO_COPY="node_modules apps/web/.next/standalone apps/cli/dist apps/workers packages/db packages/shared packages/trpc"
HOARDER_LIB_PATH="$out/lib/hoarder"
for DIR in $LIB_TO_COPY; do
mkdir -p "$HOARDER_LIB_PATH/$DIR"
cp -a $DIR/{.,}* "$HOARDER_LIB_PATH/$DIR"
chmod -R u+w "$HOARDER_LIB_PATH/$DIR"
done
# NextJS requires static files are copied in a specific way
# https://nextjs.org/docs/pages/api-reference/config/next-config-js/output#automatically-copying-traced-files
cp -r ./apps/web/public "$HOARDER_LIB_PATH/apps/web/.next/standalone/apps/web/"
cp -r ./apps/web/.next/static "$HOARDER_LIB_PATH/apps/web/.next/standalone/apps/web/.next/"
# Copy and patch helper scripts
for HELPER_SCRIPT in ${./helpers}/*; do
HELPER_SCRIPT_NAME="$(basename "$HELPER_SCRIPT")"
cp "$HELPER_SCRIPT" "$HOARDER_LIB_PATH/"
substituteInPlace "$HOARDER_LIB_PATH/$HELPER_SCRIPT_NAME" \
--replace-warn "HOARDER_LIB_PATH=" "HOARDER_LIB_PATH=$HOARDER_LIB_PATH" \
--replace-warn "RELEASE=" "RELEASE=${finalAttrs.version}" \
--replace-warn "NODEJS=" "NODEJS=${nodejs}"
chmod +x "$HOARDER_LIB_PATH/$HELPER_SCRIPT_NAME"
patchShebangs "$HOARDER_LIB_PATH/$HELPER_SCRIPT_NAME"
done
# The cli should be in bin/
mkdir -p $out/bin
mv "$HOARDER_LIB_PATH/hoarder-cli" $out/bin/
runHook postInstall
'';
fixupPhase = ''
runHook preFixup
# Remove large dependencies that are not necessary during runtime
rm -rf $out/lib/hoarder/node_modules/{@next,next,@swc,react-native,monaco-editor,faker,@typescript-eslint,@microsoft,@typescript-eslint,pdfjs-dist}
# Remove broken symlinks
find $out -type l ! -exec test -e {} \; -delete
runHook postFixup
'';
meta = {
homepage = "https://github.com/hoarder-app/hoarder";
description = "Self-hostable bookmark-everything app with a touch of AI for the data hoarders out there";
license = lib.licenses.agpl3Only;
maintainers = [ lib.maintainers.three ];
platforms = lib.platforms.linux;
};
})

View File

@ -0,0 +1,24 @@
The Hoarder project uses a very specific version of pnpm (9.0.0-alpha.8) and
will fail to build with other pnpm versions. Instead of adding this pnpm
version to nixpkgs, we override this requirement and use the latest v9 release.
---
--- a/package.json
+++ b/package.json
@@ -33,7 +33,7 @@
"turbo": "^2.1.2"
},
"prettier": "@hoarder/prettier-config",
- "packageManager": "pnpm@9.0.0-alpha.8+sha256.a433a59569b00389a951352956faf25d1fdf43b568213fbde591c36274d4bc30",
+ "packageManager": "pnpm",
"pnpm": {
"patchedDependencies": {
"xcode@3.0.1": "patches/xcode@3.0.1.patch"
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -1,4 +1,4 @@
-lockfileVersion: '7.0'
+lockfileVersion: '9.0'
settings:
autoInstallPeers: true

View File

@ -0,0 +1,15 @@
Without this change the migrations script will fail if the working directory
isn't the same directory this file is located in. To improve usability we
specify the migrations folder relative to __dirname, which doesn't depend on the
working directory.
---
--- a/packages/db/migrate.ts
+++ b/packages/db/migrate.ts
@@ -1,4 +1,5 @@
import { db } from "./drizzle";
import { migrate } from "drizzle-orm/better-sqlite3/migrator";
+import path from "path";
-migrate(db, { migrationsFolder: "./drizzle" });
+migrate(db, { migrationsFolder: path.join(__dirname, "./drizzle") });

View File

@ -0,0 +1,47 @@
Prevents NextJS from attempting to download fonts during build. The fonts
directory will be created in the derivation script.
See similar patches:
pkgs/by-name/cr/crabfit-frontend/01-localfont.patch
pkgs/by-name/al/alcom/use-local-fonts.patch
pkgs/by-name/ne/nextjs-ollama-llm-ui/0002-use-local-google-fonts.patch
---
--- a/apps/landing/app/layout.tsx
+++ b/apps/landing/app/layout.tsx
@@ -1,11 +1,14 @@
import type { Metadata } from "next";
-import { Inter } from "next/font/google";
+import localFont from 'next/font/local';
import "@hoarder/tailwind-config/globals.css";
import React from "react";
-const inter = Inter({ subsets: ["latin"] });
+const inter = localFont({
+ subsets: ["latin"],
+ src: "./fonts/InterVariable.ttf",
+});
export const metadata: Metadata = {
title: "Hoarder",
--- a/apps/web/app/layout.tsx
+++ b/apps/web/app/layout.tsx
@@ -1,5 +1,5 @@
import type { Metadata } from "next";
-import { Inter } from "next/font/google";
+import localFont from 'next/font/local';
import "@hoarder/tailwind-config/globals.css";
@@ -13,7 +13,8 @@
import { clientConfig } from "@hoarder/shared/config";
-const inter = Inter({
+const inter = localFont({
+ src: "./fonts/InterVariable.ttf",
subsets: ["latin"],
fallback: ["sans-serif"],
});

View File

@ -11,13 +11,13 @@
buildGoModule rec {
pname = "hugo";
version = "0.141.0";
version = "0.143.0";
src = fetchFromGitHub {
owner = "gohugoio";
repo = "hugo";
tag = "v${version}";
hash = "sha256-NjxHsS1VG/B1+rjmwTdoHOKraMh6z54pQqw8k9Nbuss=";
hash = "sha256-h0BrWL3dvdn1x0Z5bGrss8iVl0VG483mCHhg1CnZuaQ=";
};
vendorHash = "sha256-2OZajJZnbD3Ks3xq501Ta5ba+3jDnI1GFiI5u2Y/i3A=";

View File

@ -8,7 +8,7 @@
buildGoModule rec {
pname = "kubo";
version = "0.32.1"; # When updating, also check if the repo version changed and adjust repoVersion below
version = "0.33.0"; # When updating, also check if the repo version changed and adjust repoVersion below
rev = "v${version}";
passthru.repoVersion = "16"; # Also update kubo-migrator when changing the repo version
@ -16,7 +16,7 @@ buildGoModule rec {
# Kubo makes changes to its source tarball that don't match the git source.
src = fetchurl {
url = "https://github.com/ipfs/kubo/releases/download/${rev}/kubo-source.tar.gz";
hash = "sha256-/72omsDZ2+nuPHkZXtR3MSsxWicxC0YnFmKcHF22C+0=";
hash = "sha256-TcjxdeVnGdk+pA1MizIZ3UBKy6PWHI1h66/PNWrY2DA=";
};
# tarball contains multiple files/directories
@ -70,7 +70,6 @@ buildGoModule rec {
mainProgram = "ipfs";
maintainers = with maintainers; [
Luflosi
fpletz
];
};
}

View File

@ -34,6 +34,10 @@ in stdenv.mkDerivation rec {
"--disable-data-download"
] ++ lib.optionals stdenv.hostPlatform.isAarch64 [ "--disable-sse2" ];
env = {
NIX_CFLAGS_COMPILE = "-Wno-incompatible-pointer-types";
};
postBuild = lib.optionalString withData ''
mkdir -p $out/share/libpostal
ln -s ${assets-language-classifier}/language_classifier $out/share/libpostal/language_classifier

View File

@ -2,6 +2,8 @@
lib,
stdenv,
fetchFromGitHub,
bashInteractive,
dbus,
docbook2x,
libapparmor,
@ -14,6 +16,7 @@
openssl,
pkg-config,
systemd,
nix-update-script,
}:
@ -36,6 +39,8 @@ stdenv.mkDerivation (finalAttrs: {
];
buildInputs = [
# some hooks use compgen
bashInteractive
dbus
libapparmor
libcap
@ -93,7 +98,7 @@ stdenv.mkDerivation (finalAttrs: {
updateScript = nix-update-script {
extraArgs = [
"--version-regex"
"v(6.0.*)"
"v(6\\.0\\.*)"
];
};
};

View File

@ -0,0 +1,55 @@
{
lib,
stdenv,
fetchFromGitea,
python3Packages,
qt6,
bash,
}:
let
pythonWithPyqt6 = python3Packages.python.withPackages (ps: [
ps.pyqt6
]);
in
stdenv.mkDerivation rec {
pname = "lxqt-panel-profiles";
version = "1.1";
src = fetchFromGitea {
domain = "codeberg.org";
owner = "MrReplikant";
repo = "lxqt-panel-profiles";
rev = version;
hash = "sha256-YGjgTLodVTtDzP/SOEg+Ehf1LYggTnG1H1rN5m1jaNM=";
};
postPatch = ''
# after copying the layouts folder from the nix store
# add write permissions to the folder, so saving profiles works
substituteInPlace usr/bin/lxqt-panel-profiles \
--replace-fail 'cp -r /usr/share/lxqt-panel-profiles/layouts $XDG_DATA_HOME/lxqt-panel-profiles' 'cp -r /usr/share/lxqt-panel-profiles/layouts $XDG_DATA_HOME/lxqt-panel-profiles; chmod -R u+w,g+w $XDG_DATA_HOME/lxqt-panel-profiles;'
substituteInPlace usr/bin/lxqt-panel-profiles \
--replace-fail "/bin/bash" "${bash}/bin/bash" \
--replace-fail "/usr/share/" "$out/usr/share/" \
--replace-fail "python3" "${pythonWithPyqt6}/bin/python"
substituteInPlace usr/share/lxqt-panel-profiles/lxqt-panel-profiles.py \
--replace-fail "qdbus" "${qt6.qttools}/bin/qdbus"
'';
installPhase = ''
mkdir $out
mv usr $out/usr
'';
meta = {
description = "";
homepage = "https://codeberg.org/MrReplikant/lxqt-panel-profiles/";
changelog = "https://codeberg.org/MrReplikant/lxqt-panel-profiles/releases/tag/${version}";
license = lib.licenses.gpl2Plus;
maintainers = with lib.maintainers; [ linuxissuper ];
mainProgram = "lxqt-panel-profiles";
platforms = lib.platforms.linux;
};
}

View File

@ -48,6 +48,8 @@ stdenv.mkDerivation (finalAttrs: {
"-DMZ_LIBCOMP=OFF"
];
NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isDarwin "-Wno-register";
postInstall = ''
# make lib findable as libminizip-ng even if compat is enabled
for ext in so dylib a ; do

View File

@ -1,7 +1,7 @@
{
lib,
stdenv,
boost,
boost186,
fetchFromGitHub,
libpcap,
ndn-cxx,
@ -44,8 +44,8 @@ stdenv.mkDerivation rec {
++ lib.optional withWebSocket websocketpp
++ lib.optional withSystemd systemd;
wafConfigureFlags = [
"--boost-includes=${boost.dev}/include"
"--boost-libs=${boost.out}/lib"
"--boost-includes=${boost186.dev}/include"
"--boost-libs=${boost186.out}/lib"
] ++ lib.optional (!withWebSocket) "--without-websocket";
meta = with lib; {

View File

@ -6,13 +6,13 @@
buildGoModule rec {
pname = "nhost-cli";
version = "1.29.0";
version = "1.29.1";
src = fetchFromGitHub {
owner = "nhost";
repo = "cli";
tag = "v${version}";
hash = "sha256-K1nP5cdQBEEDLLNsMH+xCKDaBuF11cdiYuYFT0xJZqc=";
hash = "sha256-WuDAHZVY7zleDBcHiT5nVgiIDvxT/LD3PM+gEREQjL0=";
};
vendorHash = null;

View File

@ -26,13 +26,13 @@
xorg,
}:
let
version = "2.14.6";
version = "2.14.7";
src = fetchFromGitHub {
owner = "paperless-ngx";
repo = "paperless-ngx";
tag = "v${version}";
hash = "sha256-wBm4+ohM9v25n6zEUAeaVU6mAmB3GR8n1kDYyTBlnjM=";
hash = "sha256-p3eUEb/ZPK11NbqE4LU+3TE1Xny9sjfYvVVmABkoAEQ=";
};
# subpath installation is broken with uvicorn >= 0.26

View File

@ -1,22 +1,21 @@
{
lib,
fetchFromGitHub,
rustPlatform,
fetchFromGitHub,
libsixel,
stdenv,
nix-update-script,
versionCheckHook,
nix-update-script,
}:
rustPlatform.buildRustPackage rec {
pname = "presenterm";
version = "0.9.0";
version = "0.10.0";
src = fetchFromGitHub {
owner = "mfontanini";
repo = "presenterm";
tag = "v${version}";
hash = "sha256-BFL0Y6v1v15WLSvA5i+l47bR9+1qDHPWSMMuEaLdhPY=";
hash = "sha256-giTEDk5bj1x0cE53zEkQ0SU3SQJZabhr1X3keV07rN4=";
};
buildInputs = [
@ -24,27 +23,23 @@ rustPlatform.buildRustPackage rec {
];
useFetchCargoVendor = true;
cargoHash = "sha256-akIgYZUOu5QcjLFPSUxaunvfrVseEGQGm9yyaCI2cPg=";
# Crashes at runtime on darwin with:
# Library not loaded: .../out/lib/libsixel.1.dylib
buildFeatures = lib.optionals (!stdenv.hostPlatform.isDarwin) [ "sixel" ];
cargoHash = "sha256-N3g7QHgsfr8QH6HWA3/Ar7ZZYN8JPE7D7+/2JVJzW9o=";
checkFlags = [
# failed to load .tmpEeeeaQ: No such file or directory (os error 2)
"--skip=external_snippet"
];
passthru = {
updateScript = nix-update-script { };
};
nativeInstallCheckInputs = [
versionCheckHook
];
versionCheckProgramArg = [ "--version" ];
doInstallCheck = true;
passthru = {
updateScript = nix-update-script { };
};
meta = {
description = "Terminal based slideshow tool";
changelog = "https://github.com/mfontanini/presenterm/releases/tag/v${version}";

View File

@ -17,11 +17,11 @@
stdenv.mkDerivation (finalAttrs: {
pname = "qownnotes";
appname = "QOwnNotes";
version = "25.1.6";
version = "25.2.1";
src = fetchurl {
url = "https://github.com/pbek/QOwnNotes/releases/download/v${finalAttrs.version}/qownnotes-${finalAttrs.version}.tar.xz";
hash = "sha256-EmkOuxXH7XSpWrw3rtLPQ4XCX93RDbhnUR1edsNVJLk=";
hash = "sha256-hP2Q0VZfA6+jmUUqW0L/ufmw2vE9gFj5GSm2G8xRda0=";
};
nativeBuildInputs =

View File

@ -30,6 +30,14 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-heVdo0MtsWi/r9yse+/FZ55lhiunyEdwB3UkOOY5Vj0=";
};
# https://www.github.com/Stiffstream/restinio/issues/230
# > string sub-command JSON failed parsing json string: * Line 1, Column 1
# > Syntax error: value, object or array expected.
postPatch = ''
substituteInPlace dev/test/CMakeLists.txt \
--replace-fail "add_subdirectory(metaprogramming)" ""
'';
strictDeps = true;
nativeBuildInputs = [ cmake ];
@ -74,6 +82,28 @@ stdenv.mkDerivation (finalAttrs: {
doCheck = true;
enableParallelChecking = false;
__darwinAllowLocalNetworking = true;
preCheck =
let
disabledTests =
[ ]
++ lib.optionals stdenv.hostPlatform.isDarwin [
# Tests that fail with error: 'unable to write: Operation not permitted'
"HTTP echo server"
"single_thread_connection_limiter"
"simple sendfile"
"simple sendfile with std::filesystem::path"
"sendfile the same file several times"
"sendfile 2 files"
"sendfile offsets_and_size"
"sendfile chunks"
"sendfile with partially-read response"
];
excludeRegex = "^(${builtins.concatStringsSep "|" disabledTests})";
in
lib.optionalString (builtins.length disabledTests != 0) ''
checkFlagsArray+=(ARGS="--exclude-regex '${excludeRegex}'")
'';
meta = with lib; {
description = "Cross-platform, efficient, customizable, and robust asynchronous HTTP(S)/WebSocket server C++ library";

View File

@ -30,13 +30,13 @@
buildDotnetModule rec {
pname = "ryubing";
version = "1.2.80";
version = "1.2.81";
src = fetchFromGitHub {
owner = "Ryubing";
repo = "Ryujinx";
rev = version;
hash = "sha256-BIiqXXtkc55FQL0HAXxtyx3rA42DTcTxG2pdNmEa5jE=";
hash = "sha256-P/lTXhdSXhoseBYC5NcSZDCQCUL9z2yt5LuGj8V0BdU=";
};
nativeBuildInputs = lib.optional stdenv.isDarwin [

View File

@ -109,7 +109,7 @@ stdenv.mkDerivation (finalAttrs: {
raskin
gfrascadorio
];
platforms = platforms.linux;
platforms = platforms.unix;
sourceProvenance = with sourceTypes; [
fromSource
binaryBytecode # dependencies

View File

@ -5,13 +5,13 @@
stdenv.mkDerivation rec {
pname = "stress-ng";
version = "0.18.09";
version = "0.18.10";
src = fetchFromGitHub {
owner = "ColinIanKing";
repo = pname;
rev = "V${version}";
hash = "sha256-Xx9IdAc2jIGGmOTzqqOzSV7ck7JjeEdXUhbSnh77oV8=";
hash = "sha256-RZc3OJkonXOW8iqSsHd/EA4XVTSiRO0ZRdAam3JC0MA=";
};
postPatch = ''

View File

@ -0,0 +1,45 @@
{
lib,
python3Packages,
fetchFromGitHub,
versionCheckHook,
}:
python3Packages.buildPythonApplication rec {
pname = "strip-tags";
version = "0.5.1";
pyproject = true;
src = fetchFromGitHub {
owner = "simonw";
repo = "strip-tags";
tag = version;
hash = "sha256-Oy4xii668Y37gWJlXtF0LgU+r5seZX6l2SjlqLKzaSU=";
};
build-system = with python3Packages; [
setuptools
];
dependencies = with python3Packages; [
beautifulsoup4
click
html5lib
];
nativeCheckInputs = with python3Packages; [
pytestCheckHook
pyyaml
versionCheckHook
];
versionCheckProgramArg = [ "--version" ];
meta = {
description = "CLI tool for stripping tags from HTML";
homepage = "https://github.com/simonw/strip-tags";
changelog = "https://github.com/simonw/strip-tags/releases/tag/${version}";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ erethon ];
mainProgram = "strip-tags";
};
}

View File

@ -55,7 +55,7 @@ let
];
buildInputs = glLibs ++ libs;
runpathPackages = glLibs ++ [ stdenv.cc.cc stdenv.cc.libc ];
version = "1.0.21";
version = "1.0.23";
in
stdenv.mkDerivation {
pname = "tana";
@ -63,7 +63,7 @@ stdenv.mkDerivation {
src = fetchurl {
url = "https://github.com/tanainc/tana-desktop-releases/releases/download/v${version}/tana_${version}_amd64.deb";
hash = "sha256-NjBJz1zHLnWLWTxgSZwnmuZr2FbHuYLxynRG8jGMP+0=";
hash = "sha256-Z8k5ootRAon68+0HlFy9eycQkuVEKFGdghxCyao+gUY=";
};
nativeBuildInputs = [

View File

@ -80,7 +80,7 @@ stdenv.mkDerivation (finalAttrs: {
license = {
url = "https://github.com/blakemcbride/TECOC/blob/${finalAttrs.src.rev}/doc/readme-1st.txt";
};
maintainers = [ lib.maintainers.AndersonTorres ];
maintainers = [ ];
platforms = lib.platforms.unix;
};
})

View File

@ -0,0 +1,35 @@
{
lib,
rustPlatform,
fetchFromGitHub,
stdenv,
darwin,
}:
rustPlatform.buildRustPackage rec {
pname = "twitch-hls-client";
version = "1.3.13";
src = fetchFromGitHub {
owner = "2bc4";
repo = "twitch-hls-client";
rev = version;
hash = "sha256-H446qXFwRGippLMZemkW8sVhTV3YGpKmAvD8QBamAlo=";
};
cargoHash = "sha256-PK6x7xRUSbOFEAhw22T/zbMlqcS5ZQd2bpMp9OFIiUc=";
buildInputs = lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.Security
];
meta = with lib; {
description = "Minimal CLI client for watching/recording Twitch streams";
homepage = "https://github.com/2bc4/twitch-hls-client.git";
license = licenses.gpl3Only;
maintainers = with maintainers; [ lenivaya ];
mainProgram = "twitch-hls-client";
sourceProvenance = with lib.sourceTypes; [ fromSource ];
platforms = platforms.all;
};
}

View File

@ -8,13 +8,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "uxn";
version = "1.0-unstable-2025-01-19";
version = "1.0-unstable-2025-01-31";
src = fetchFromSourcehut {
owner = "~rabbits";
repo = "uxn";
rev = "e2ab8811f85d8420e580dec08c53fe588ba96f05";
hash = "sha256-/1I//qyz8VbLPSuJbVYNeVKQjwMHKK/ojO57F6qrIAY=";
rev = "5829f7da504f77dbc44037250871befd64da79b3";
hash = "sha256-7dXHcIFw3knxuib1BbdLyF+LNdBrFAQMNQkk+S5XmlY=";
};
outputs = [

View File

@ -0,0 +1,45 @@
{
lib,
fetchurl,
appimageTools,
dotnet-runtime,
}:
let
pname = "vrcx";
version = "2025-01-27T00.10-0ee8137";
src = fetchurl {
url = "https://github.com/Natsumi-sama/VRCX/releases/download/${version}/VRCX_${version}.AppImage";
hash = "sha256-kaQOME3jBLr7QJjc7rubNqFu3z+LmiP+UHe2EWYC7ek=";
};
appimageContents = appimageTools.extract {
inherit pname src version;
};
in
appimageTools.wrapType2 rec {
inherit pname version src;
extraPkgs = pkgs: [ dotnet-runtime ];
extraInstallCommands = ''
install -m 444 -D ${appimageContents}/vrcx.desktop $out/share/applications/vrcx.desktop
install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/256x256/apps/vrcx.png \
$out/share/icons/hicolor/256x256/apps/vrcx.png
substituteInPlace $out/share/applications/vrcx.desktop \
--replace-fail 'Exec=AppRun' 'Exec=${pname}'
# Fix icon path
substituteInPlace $out/share/applications/vrcx.desktop \
--replace-fail 'Icon=VRCX' "Icon=$out/share/icons/hicolor/256x256/apps/vrcx.png"
'';
meta = {
description = "Friendship management tool for VRChat";
longDescription = ''
VRCX is an assistant/companion application for VRChat that provides information about and helps you accomplish various things
related to VRChat in a more convenient fashion than relying on the plain VRChat client (desktop or VR), or website alone.
'';
license = lib.licenses.mit;
homepage = "https://github.com/vrcx-team/VRCX";
downloadPage = "https://github.com/vrcx-team/VRCX/releases";
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
maintainers = with lib.maintainers; [ ShyAssassin ];
platforms = [ "x86_64-linux" ];
};
}

View File

@ -12,16 +12,16 @@
buildNpmPackage rec {
pname = "vsce";
version = "3.2.1";
version = "3.2.2";
src = fetchFromGitHub {
owner = "microsoft";
repo = "vscode-vsce";
rev = "v${version}";
hash = "sha256-S49tX0e0XW7RasYeFALKexP8516+7Umtglh1h6f5wEQ=";
hash = "sha256-zWs3DVb9BThCdjqQLfK4Z6wvph3oibVBdj+h3n33Lns=";
};
npmDepsHash = "sha256-k6LdGCpVoBNpHe4z7NrS0T/gcB1EQBvBxGAM3zo+AAo=";
npmDepsHash = "sha256-9tD2an6878XEXWbO5Jsplibd6lbzNBufdHJJ89mjMig=";
postPatch = ''
substituteInPlace package.json --replace-fail '"version": "0.0.0"' '"version": "${version}"'

View File

@ -4,7 +4,7 @@
lib,
python3,
bash,
gitUpdater,
openssl,
nixosTests,
}:
@ -31,11 +31,13 @@ python.pkgs.buildPythonApplication rec {
# Replace tools used in udev rules with their full path and ensure they are present.
postPatch = ''
substituteInPlace config/66-azure-storage.rules \
--replace-fail readlink ${coreutils}/bin/readlink \
--replace-fail cut ${coreutils}/bin/cut \
--replace-fail /bin/sh ${bash}/bin/sh
--replace-fail readlink '${coreutils}/bin/readlink' \
--replace-fail cut '${coreutils}/bin/cut' \
--replace-fail '/bin/sh' '${bash}/bin/sh'
substituteInPlace config/99-azure-product-uuid.rules \
--replace-fail "/bin/chmod" "${coreutils}/bin/chmod"
--replace-fail '/bin/chmod' '${coreutils}/bin/chmod'
substituteInPlace azurelinuxagent/common/conf.py \
--replace-fail '/usr/bin/openssl' '${openssl}/bin/openssl'
'';
propagatedBuildInputs = [ python.pkgs.distro ];
@ -65,13 +67,8 @@ python.pkgs.buildPythonApplication rec {
dontWrapPythonPrograms = false;
passthru = {
tests = {
inherit (nixosTests) waagent;
};
updateScript = gitUpdater {
rev-prefix = "v";
};
passthru.tests = {
inherit (nixosTests) waagent;
};
meta = {

View File

@ -27,12 +27,12 @@
}:
stdenv.mkDerivation (finalAttrs: {
pname = "whatsapp-for-linux";
pname = "wasistlos";
version = "1.7.0";
src = fetchFromGitHub {
owner = "eneshecan";
repo = "whatsapp-for-linux";
owner = "xeco23";
repo = "WasIstLos";
rev = "v${finalAttrs.version}";
hash = "sha256-h07Qf34unwtyc1VDtCCkukgBDJIvYNgESwAylbsjVsQ=";
};
@ -70,9 +70,9 @@ stdenv.mkDerivation (finalAttrs: {
];
meta = {
homepage = "https://github.com/eneshecan/whatsapp-for-linux";
description = "Whatsapp desktop messaging app";
mainProgram = "whatsapp-for-linux";
homepage = "https://github.com/xeco23/WasIstLos";
description = "Unofficial WhatsApp desktop application";
mainProgram = "wasistlos";
license = lib.licenses.gpl3Only;
maintainers = with lib.maintainers; [ bartuka ];
platforms = [

View File

@ -7,11 +7,11 @@
stdenv.mkDerivation (finalAttrs: {
pname = "worker";
version = "5.2.0";
version = "5.2.1";
src = fetchurl {
url = "http://www.boomerangsworld.de/cms/worker/downloads/worker-${finalAttrs.version}.tar.gz";
hash = "sha256-PXBPnFwQKquxyel2NEQXXOviSEnSUdRrx+dyomzKL+k=";
hash = "sha256-xlWeCOOPXlm71nWP/Uq9i1xswWOgzX0xmkwZwmMWTl0=";
};
buildInputs = [ libX11 ];

View File

@ -9,13 +9,13 @@
stdenv.mkDerivation rec {
pname = "yash";
version = "2.57";
version = "2.58";
src = fetchFromGitHub {
owner = "magicant";
repo = pname;
rev = version;
hash = "sha256-TqQWbwNk2P2vETJ2294bd689WBry0xRdz7xz/NnMBrk=";
hash = "sha256-d0Dt/+TxAtfKndXao6Cd9IEujHwi6H5HQjgY774UEFY=";
};
strictDeps = true;

View File

@ -87,18 +87,15 @@ stdenv.mkDerivation (finalAttrs: {
openssl
];
YARN_ENABLE_TELEMETRY = "0";
ZIPLINE_DOCKER_BUILD = "true";
env = {
YARN_ENABLE_TELEMETRY = "0";
ZIPLINE_DOCKER_BUILD = "true";
} // environment;
configurePhase = ''
export HOME="$NIX_BUILD_TOP"
yarn config set enableGlobalCache false
yarn config set cacheFolder $yarnOfflineCache
${lib.concatStringsSep "\n" (
lib.mapAttrsToList (name: value: "export ${name}=${lib.escapeShellArg value}") environment
)}
'';
buildPhase = ''

View File

@ -8,17 +8,17 @@
rustPlatform.buildRustPackage rec {
pname = "zizmor";
version = "1.2.2";
version = "1.3.0";
src = fetchFromGitHub {
owner = "woodruffw";
repo = "zizmor";
tag = "v${version}";
hash = "sha256-J2pKaGPbRYWlupWHeXbDpxMDpWk+Px0yuKsH6wiFq5M=";
hash = "sha256-yETJh0fSTPGVZV7sdQl+ARbHImJ5n5w+R9kumu7n0Ww=";
};
useFetchCargoVendor = true;
cargoHash = "sha256-64H/eJn6gHw7M96FhcmLW7ItjS7b4H/fecYZTosS9Oc=";
cargoHash = "sha256-vCcKEftYpllZSCFvyTs5zelB9ebqw2jq9hB0/7/dJx0=";
passthru.tests.version = testers.testVersion {
package = zizmor;

View File

@ -43,7 +43,7 @@ stdenv.mkDerivation (finalAttrs: {
description = "Advanced multiversioned deduplicating archiver, with HW acceleration, encryption and paranoid-level tests";
mainProgram = "zpaqfranz";
license = with lib.licenses; [ mit ];
maintainers = with lib.maintainers; [ AndersonTorres ];
maintainers = with lib.maintainers; [ ];
platforms = lib.platforms.unix;
};
})

View File

@ -86,9 +86,9 @@ version = "4.0.0"
[amb]
dependencies = ["srfi-1"]
license = "bsd"
sha256 = "0n2wbxb23fai27hgk86jf9lnnrg0dvh989ysjkscdf9my96j448s"
sha256 = "01vi2vnw8af8vf7kl0n9smgxsx16h9dml3w6wgwrln2p0qq70bp6"
synopsis = "The non-deterministic backtracking ambivalence operator"
version = "3.0.10"
version = "3.0.11"
[amqp]
dependencies = ["bitstring", "mailbox", "srfi-18", "uri-generic"]
@ -114,9 +114,9 @@ version = "0.6"
[apropos]
dependencies = ["utf8", "srfi-1", "symbol-utils", "check-errors"]
license = "bsd"
sha256 = "1w0kyycm8j30fd7iv9zs852rx5jpsmv2xs0lplpcjhmv2a3dlmv1"
sha256 = "1k3n7j34rr7rwb66ba8iygzcpa6jy1ghfhxkfgyrq7rjrimjk1i0"
synopsis = "CHICKEN apropos"
version = "3.11.1"
version = "3.11.2"
[arcadedb]
dependencies = ["medea"]
@ -154,11 +154,11 @@ synopsis = "Automatically compile Scheme scripts on demand"
version = "1.1.0"
[awful-main]
dependencies = ["awful", "spiffy", "define-options"]
dependencies = ["awful", "spiffy"]
license = "bsd"
sha256 = "1zpnk3xjkn2pdfw953ximq6i0d3v3mak8ydl6a3nb2zz1daq7044"
sha256 = "0bxigis5r6pi6p1kbjijvhj0fbyhw1bapbd2yz5rpqx1gy063cyq"
synopsis = "Turn awful web applications into static executables"
version = "0.1.0"
version = "0.3.1"
[awful-path-matchers]
dependencies = []
@ -265,6 +265,13 @@ sha256 = "08qc2vsbc42c8108z50v2izkiwn5gd5hk7mjf8gbwy28p92gqh2x"
synopsis = "a uniform interface to lists and lazy-lists"
version = "0.4.1"
[binary-heap]
dependencies = ["srfi-1", "datatype", "matchable"]
license = "gpl-3"
sha256 = "0qdpvpigg46wgb3qbg0k83r1rchjlzzpgc9zk4i8wwwl59isigsb"
synopsis = "Binary heap."
version = "2.2"
[binary-search]
dependencies = []
license = "bsd"
@ -315,11 +322,11 @@ synopsis = "Blob Utilities"
version = "2.0.4"
[bloom-filter]
dependencies = ["iset", "message-digest-primitive", "message-digest-type", "message-digest-utils", "check-errors"]
dependencies = ["iset", "message-digest-primitive", "message-digest-type", "message-digest-utils", "check-errors", "record-variants"]
license = "bsd"
sha256 = "1ljak0xscrywyl1sbv8yx9qkw1r2m94gyw3ag73p3z8m618valy3"
sha256 = "1ck8sg7gfp6n3ih7zx37q8kidika679dfmxi4iazq4dv6k9mn8s6"
synopsis = "Bloom Filter"
version = "2.3.4"
version = "2.4.0"
[blosc]
dependencies = ["srfi-13", "compile-file"]
@ -338,9 +345,9 @@ version = "2.13.20191214-0"
[box]
dependencies = []
license = "bsd"
sha256 = "131k73q72v658mkxhj34988kwh8yxjq00gf4sn3f1y837n6kp9yd"
sha256 = "08bhc1w5m48f6034821xkvsrh1p8qzvr6rg35mlv4c013alvwiq0"
synopsis = "Boxing"
version = "3.6.0"
version = "3.8.1"
[breadcrumbs]
dependencies = ["srfi-1"]
@ -429,9 +436,9 @@ version = "0.4"
[check-errors]
dependencies = []
license = "bsd"
sha256 = "1xgchkpcmk7cwvbr87xmmwnw7z9ah8r8p6hv7kdkpjy66bas0yhj"
sha256 = "02ny48dl9i5m7jb6nma95gwsyhjhwnz9mmjx4n42yq9hrdi69rfv"
synopsis = "Argument checks & errors"
version = "3.8.2"
version = "3.8.3"
[checks]
dependencies = ["simple-exceptions"]
@ -604,9 +611,9 @@ version = "1.0"
[condition-utils]
dependencies = ["srfi-1", "srfi-69", "check-errors"]
license = "bsd"
sha256 = "1g3vi4pn3z66qldbw4h5731xvi2hd37l887czzbj2a2pbwv4rfp3"
sha256 = "09y01vdwi54acwg0nq1vdf10w9w1a0mdmp1fc2vaxh69zfjzxaiq"
synopsis = "SRFI 12 Condition Utilities"
version = "2.3.1"
version = "2.4.1"
[continuations]
dependencies = []
@ -618,9 +625,9 @@ version = "1.2"
[coops-utils]
dependencies = ["srfi-1", "srfi-13", "check-errors", "coops"]
license = "bsd"
sha256 = "0jvikvzxy4mz8x9pg0m89pidjmfjxm2g66lz3j84ip4ip8s28nwf"
sha256 = "0ln7jp12slbh9vnvqkiqm90lq82477lywjwz22l8xq81rrbv7q6i"
synopsis = "coops utilities"
version = "2.2.4"
version = "2.3.0"
[coops]
dependencies = ["matchable", "miscmacros", "record-variants", "srfi-1"]
@ -653,9 +660,9 @@ version = "1.4"
[csm]
dependencies = ["matchable", "srfi-1", "srfi-13", "srfi-14", "miscmacros"]
license = "bsd"
sha256 = "1bvawrbslsfzxlhal5abyss0nj0jddqbs5ran58nygfc1myn3vfs"
sha256 = "02y11q6lgsk4w7qdsz4af3y7lcxk3cl1hy8dycsqfaai6kvjndjg"
synopsis = "a build system"
version = "0.5"
version = "0.7"
[cst]
dependencies = ["brev-separate", "srfi-1", "define-options", "match-generics"]
@ -674,9 +681,9 @@ version = "6.1"
[daemon]
dependencies = []
license = "unlicense"
sha256 = "1kqryy1jq9qz0y3c58qlwr8mvgdn2jyr7a6anqb32dipp9ylqkim"
sha256 = "0gg8ibn08di3964a5ax4x0caw7qj5vy6wqig5pcx07g3578svad9"
synopsis = "Create daemon processes"
version = "0.0.1"
version = "0.0.2"
[dataframe]
dependencies = ["srfi-1", "srfi-25", "srfi-69", "srfi-127", "utf8", "vector-lib", "yasos", "rb-tree", "fmt", "statistics"]
@ -744,9 +751,9 @@ version = "2.0"
[directory-utils]
dependencies = ["srfi-1", "utf8", "miscmacros", "stack", "check-errors"]
license = "bsd"
sha256 = "17306fd9brbifvc3ahzfwcam9px2fs1674m8wzbyr6hzh9bhw62z"
sha256 = "052n5yqhf2mbwk0pp9jv8ymbdlpqx2sq401q7sbc6bzz206w6s8v"
synopsis = "directory-utils"
version = "2.4.1"
version = "2.4.3"
[disjoint-set]
dependencies = []
@ -828,9 +835,9 @@ version = "1.1.0"
[egg-tarballs]
dependencies = ["simple-sha1", "srfi-1", "srfi-13"]
license = "bsd"
sha256 = "0sribz131y1q9x86zfgwjqpjhmz62f2jn41cv8d5s1q4bfpv4xkw"
sha256 = "16scw7055cclbhkcsjj0crwgirx5jihda18lirh60zf5a56khhpb"
synopsis = "Creates tarballs for eggs in henrietta cache"
version = "0.10.0"
version = "1.0.1"
[elliptic-curves]
dependencies = ["srfi-1", "srfi-99", "matchable", "modular-arithmetic"]
@ -910,11 +917,11 @@ synopsis = "Binding to libexif, reading EXIF meta data from digital camera image
version = "1.2"
[expand-full]
dependencies = ["srfi-1"]
dependencies = ["srfi-1", "test-utils"]
license = "bsd"
sha256 = "072c5xvmsgkbz5wj4ihj0y4k5fvx9lsz5vjydvzmhnmwd613cg46"
sha256 = "1cy595kqrgd1y9xlvcg5wrp74vdh8wx602p8nc1xadx4jxy5dn4q"
synopsis = "Full macro expansion"
version = "2.1.3"
version = "2.2.0"
[expat]
dependencies = ["bind", "silex"]
@ -933,9 +940,9 @@ version = "2020.01.26"
[ezxdisp]
dependencies = ["bind"]
license = "lgpl-2"
sha256 = "0aqa7z8gir1kz6s8azj508hav80ymrp2adwpxa44hw6bbalgfdh8"
sha256 = "1ydqxfpp6p57y64amg743ydxyjhixq12slidsn92aibjvbhzh0ws"
synopsis = "A simple 2D and 3D graphics library for X11"
version = "3.0"
version = "3.1"
[fancypants]
dependencies = ["srfi-1", "srfi-13"]
@ -954,9 +961,9 @@ version = "0.7"
[fcp]
dependencies = ["srfi-1", "srfi-18", "srfi-69", "base64", "regex", "matchable"]
license = "bsd"
sha256 = "0kbqghyf1qjmhs6vx6pkzq3m0y4yv2wan69sxpry8h0dj2lmw5jb"
sha256 = "0n44fshsbcngx45kd52mdw6dbimjpayg5xcgil6bki6x30i9y0q9"
synopsis = "Very basic interface to freenet FCP"
version = "v0.4"
version = "v0.8"
[feature-test]
dependencies = []
@ -1017,9 +1024,9 @@ version = "3.2.3"
[fp-utils]
dependencies = ["fx-utils"]
license = "bsd"
sha256 = "02k8ayj30gh36cz0p2xirjnvbb845ng43yxb2b7x8ih39jyps9py"
sha256 = "0n6imxvs2fmrw1ypy9qfba86z49m0d7nbwdrw2iwprnnjl57kki2"
synopsis = "fp utilities"
version = "4.2.0"
version = "4.2.1"
[freetype]
dependencies = ["srfi-1", "srfi-13", "foreigners", "matchable"]
@ -1045,9 +1052,9 @@ version = "0.1.1"
[fx-utils]
dependencies = []
license = "bsd"
sha256 = "0kbk7cm5ss00582nvgfq25zcgf07z417c5jf0flva4csm37rb6hf"
sha256 = "00bwgn4b3ygwxvil7p7rvjgxb7j7vhyk9ds7i94vzpari2pk4vz4"
synopsis = "fx utilities"
version = "4.0.3"
version = "4.0.4"
[gemini-client]
dependencies = ["openssl", "r7rs", "uri-generic"]
@ -1085,11 +1092,11 @@ synopsis = "Chicken bindings to genann - a simple neural network library in ANSI
version = "0.2.2"
[generalized-arrays]
dependencies = ["r7rs", "srfi-48", "srfi-128", "srfi-133", "srfi-143", "srfi-160", "check-errors", "transducers"]
dependencies = ["r7rs", "srfi-48", "srfi-128", "srfi-133", "srfi-143", "srfi-160", "srfi-253", "transducers"]
license = "bsd-3"
sha256 = "0zimlx33nn4val556sbwzgcsrpavz02dmk78hbv2xrjasraq36zn"
sha256 = "17krc7ig1f4wvw41493bpxircxcqlic0y3sj89m7wy9b0qzsd3wf"
synopsis = "Provides generalized arrays, intervals, and storage classes for CHICKEN Scheme."
version = "2.0.2"
version = "2.1.0"
[generics]
dependencies = ["simple-cells"]
@ -1101,9 +1108,9 @@ version = "2.0.3"
[geo-utils]
dependencies = ["srfi-1", "vector-lib", "mathh", "check-errors", "symbol-utils"]
license = "bsd"
sha256 = "0n0fsfna4amxqkfcrqmr7b468xqhs2m7pmqyxs0zllmpf9wn0hd7"
sha256 = "0ga63mcc9rybq7qv72akkkq72n58bnh9js417hjfwczadgbb4bwl"
synopsis = "Geographic Utilities"
version = "1.2.2"
version = "1.2.3"
[getopt-long]
dependencies = ["srfi-1", "srfi-13", "srfi-14", "matchable"]
@ -1115,9 +1122,9 @@ version = "1.21"
[getopt-utils]
dependencies = ["utf8", "srfi-1", "getopt-long"]
license = "bsd"
sha256 = "1992zcps7gghhc9l7sfkglmf2rqgwvw6jz39k7q9mbs690chq1l1"
sha256 = "07q0c0d8lvsxly4bwifhwmm1cizz9nx5r8p9zbkb9vi6xfd5xfi3"
synopsis = "Utilities for getopt-long"
version = "1.2.0"
version = "1.2.1"
[git]
dependencies = ["srfi-69", "foreigners", "module-declarations", "srfi-1"]
@ -1164,9 +1171,9 @@ version = "0.12.2"
[gmi]
dependencies = []
license = "unlicense"
sha256 = "08c89r4cz4nh66crkfsxwdj1lxjmbxr2lls92ncnqlxd0mnmplq0"
sha256 = "0n1in7indi9cp7mx0inbpgz7ipjq3lwzgqrk6hz3zj2nixx0k1fj"
synopsis = "Gemtext reader and writer"
version = "0.0.7"
version = "0.0.8"
[gnuplot-pipe]
dependencies = ["srfi-1", "srfi-13"]
@ -1479,9 +1486,9 @@ version = "0.4.5a"
[json-utils]
dependencies = ["utf8", "srfi-1", "srfi-69", "vector-lib", "miscmacros", "moremacros"]
license = "bsd"
sha256 = "1m67ri4b2awnmsmva1613cnsp94v0w73qxw4myyhglrnkam4xlcc"
sha256 = "1p7j8fa83zppx50ydcxp74rzpbii96zg50mls30cl4lkircwhwzq"
synopsis = "JSON Utilities"
version = "1.1.1"
version = "1.1.3"
[json]
dependencies = ["packrat", "srfi-1", "srfi-69"]
@ -1521,9 +1528,9 @@ version = "0.3"
[lay]
dependencies = []
license = "bsd"
sha256 = "0ak7bgs79xz5yiywv159s471zqmhawwfipfn9ccll8nw1anp8gdw"
sha256 = "0vrc6apz17pr9fld927g562xbbsv9hkgxdwb0r5ybc8n7jyk9mll"
synopsis = "Lay eggs efficiently"
version = "0.2.3"
version = "0.3.1"
[lazy-ffi]
dependencies = ["bind", "srfi-1", "srfi-69"]
@ -1556,9 +1563,9 @@ version = "1.2"
[levenshtein]
dependencies = ["srfi-1", "srfi-13", "srfi-63", "srfi-69", "vector-lib", "utf8", "miscmacros", "record-variants", "check-errors"]
license = "bsd"
sha256 = "1vgxdnas0sw47f8c68ki8fi7j6m9q5x96qnddwslwijjdhg7gdrm"
sha256 = "07i97va0ajg1zhbnpc5lyp8qdpa7rhg579y0xhvpp370sa6qrchf"
synopsis = "Levenshtein edit distance"
version = "2.4.3"
version = "2.4.4"
[lexgen]
dependencies = ["srfi-1", "utf8", "srfi-127"]
@ -1584,9 +1591,9 @@ version = "1.2.1"
[list-utils]
dependencies = ["utf8", "srfi-1", "check-errors"]
license = "bsd"
sha256 = "1llnf0qrssw4vpwvp17ir7558q0d1xyyb14zydcrnb9nhbzly5jr"
sha256 = "09a7rignm474ifysryvl79ls6vj5is7ghb84w5i3dc3lavzm3947"
synopsis = "list-utils"
version = "2.6.0"
version = "2.7.2"
[live-define]
dependencies = ["matchable"]
@ -1626,9 +1633,9 @@ version = "1.0.6"
[locale]
dependencies = ["srfi-1", "utf8", "check-errors"]
license = "bsd"
sha256 = "1f6wkaf89b74wxlhdxd4clmgavirvw3ld2igwqwi3rh1w95ln7x4"
sha256 = "0ccp4r0qpy65rv2llvsjm0l2y8xyac702gj761516ppps4cysw6s"
synopsis = "Provides locale operations"
version = "0.9.4"
version = "0.9.5"
[locals]
dependencies = []
@ -1652,11 +1659,11 @@ synopsis = "A pure Chicken Markdown parser"
version = "3"
[lsp-server]
dependencies = ["apropos", "chicken-doc", "json-rpc", "nrepl", "r7rs", "srfi-1", "srfi-18", "srfi-69", "srfi-130", "srfi-133", "srfi-180", "uri-generic", "utf8"]
dependencies = ["apropos", "chicken-doc", "json-rpc", "nrepl", "r7rs", "srfi-1", "srfi-18", "srfi-69", "srfi-133", "srfi-180", "uri-generic", "utf8"]
license = "mit"
sha256 = "09fak8d29qmxynh4361prhfg971j74mha6pw311a6kmz88h9zp0h"
sha256 = "0lphdbydn7ly77i5j0ik3hb5605xyr205w94m38x1b8jfs5av8nx"
synopsis = "LSP Server for CHICKEN."
version = "0.4.4"
version = "0.4.7"
[macaw]
dependencies = []
@ -1682,9 +1689,9 @@ version = "0.1.0"
[mailbox]
dependencies = ["srfi-1", "srfi-18"]
license = "bsd"
sha256 = "1g1fxkydd8wkqpvfv4md2ilk5vf4276ks5153da7mph2i6hbzr4a"
sha256 = "1306hqcq8g9pr8kq50czzgnwcxna70ljs7m8baqcyzzajsxjvwy8"
synopsis = "Thread-safe queues with timeout"
version = "3.3.10"
version = "3.3.11"
[make-tests]
dependencies = ["brev-separate", "srfi-1", "uri-common"]
@ -1729,11 +1736,11 @@ synopsis = "Hygienic MATCH replacement"
version = "1.2"
[math-utils]
dependencies = ["memoize", "miscmacros"]
dependencies = ["memoize", "miscmacros", "srfi-1", "vector-lib"]
license = "public-domain"
sha256 = "1sl46zqv9al83blyzrl39k22arxq57i7j0qayri3qq9xwpgdhrf2"
sha256 = "087ynv9fgzpzhx4k8kbv7qsh1j0izv0pv5cx20c20i20fhh7d5bi"
synopsis = "Miscellaneous math utilities"
version = "1.5.0"
version = "1.7.0"
[math]
dependencies = ["srfi-1", "r6rs-bytevectors", "miscmacros", "srfi-133", "srfi-42"]
@ -1745,9 +1752,9 @@ version = "0.3.4"
[mathh]
dependencies = []
license = "public-domain"
sha256 = "1mf9aqjwp068a93fmkm29f5mawc15nizm8wwvfra1af7y4f434al"
sha256 = "1dh0clclb8bh7jl0xk806cz4gc41nzyav9zk4lpiw8pliagwal4m"
synopsis = "ISO C math functions and constants"
version = "4.7.0"
version = "4.7.1"
[matrico]
dependencies = []
@ -1759,9 +1766,9 @@ version = "0.6rel"
[md5]
dependencies = ["message-digest-primitive"]
license = "public-domain"
sha256 = "1crpkb0vzg26rk1w9xmswmx53bsira02hkixjspmfrrssdkvh5gv"
sha256 = "04ax8sid739ls1n2yh3sk1a2y3wsk7g8g76hcaggpfkh2kqs0p2w"
synopsis = "Computes MD5 (RFC1321) checksums"
version = "4.1.3"
version = "4.1.4"
[mdh]
dependencies = []
@ -1801,23 +1808,23 @@ version = "0.4"
[message-digest-primitive]
dependencies = ["check-errors"]
license = "bsd"
sha256 = "1yc7b5zkwrqz4pc6y9fz4qgj8cgvmnfb30ad6slb5rl1vb6g5gjg"
sha256 = "16n1mxwlybx999v89l2g4yh3fpq69gqax4dpzpdywb60islagc22"
synopsis = "Message Digest Primitive"
version = "4.3.8"
version = "4.3.9"
[message-digest-type]
dependencies = ["blob-utils", "string-utils", "message-digest-primitive", "check-errors"]
license = "bsd"
sha256 = "15cp3km0lv4s28yq0ynabqmd902325692xyq2hmsv0n68j5jckdz"
sha256 = "0fc8vqbyxsmzx96mjaaawx74pfsi7sfshqv2lmf6krkp6vji27nm"
synopsis = "Message Digest Type"
version = "4.3.6"
version = "4.3.7"
[message-digest-utils]
dependencies = ["blob-utils", "string-utils", "memory-mapped-files", "message-digest-primitive", "message-digest-type", "check-errors"]
license = "bsd"
sha256 = "04pxzqnirv04hcjik1v2mz59vvfgxfanfsgwy6q0ai17as2kaajr"
sha256 = "1c1jqvsm6l2kbf6mbav19fcm167ihyip3ins10c9pbkacizfi94x"
synopsis = "Message Digest Support"
version = "4.3.7"
version = "4.3.9"
[message-digest]
dependencies = ["message-digest-primitive", "message-digest-type", "message-digest-utils"]
@ -1836,16 +1843,16 @@ version = "0.7"
[micro-benchmark]
dependencies = ["micro-stats", "srfi-1"]
license = "gplv3"
sha256 = "022fkwr1wm1im40rgk3g5dz8n4rvlw1zdmskqsh9idv31gbfi456"
sha256 = "10s05fxw8bsvxbnm312i3pfnzc117l3ds8zpji9ry01ps1spy74q"
synopsis = "Easily create micro-benchmarks"
version = "0.0.20"
version = "0.0.21"
[micro-stats]
dependencies = ["srfi-1", "sequences", "sequences-utils"]
license = "gplv3"
sha256 = "1y4lh2g8fvfi3wz9k0x00nq0n0w80rfrc69pmxhjrbg1w0arl83h"
sha256 = "0w881dyhr5p3imp1fqfy3ycsr1azhk9h6rvqqrhqi85xj0hjf17n"
synopsis = "Easily create micro-stats"
version = "0.1.2"
version = "0.2.1"
[mini-kanren]
dependencies = ["srfi-1"]
@ -1892,9 +1899,9 @@ version = "0.3.1"
[monad]
dependencies = ["srfi-1"]
license = "bsd"
sha256 = "1xd24plxnwi9yssmw2in008biv2xf4iwwln6xswx781ankppqpg9"
sha256 = "0728kk31h3c1gd7palgp4pmhjjrjdgyrplb2166jmmd1d5n1ajkf"
synopsis = "Monads"
version = "5.0"
version = "5.1"
[monocypher]
dependencies = []
@ -2165,16 +2172,16 @@ version = "1.4"
[posix-utils]
dependencies = ["srfi-1", "utf8", "check-errors"]
license = "bsd"
sha256 = "0l9yd1cqlj3wpddnky38lqiisq2m88gjyc053xmazsdbakg6622h"
sha256 = "1am7j86pp6ym4xbg663g02hjcmq3alwmhcak0g6yrh96w1dk643c"
synopsis = "posix-utils"
version = "2.1.1"
version = "2.1.2"
[postgresql]
dependencies = ["sql-null", "srfi-1", "srfi-13", "srfi-69"]
license = "bsd"
sha256 = "0hhbq2bc0jzya430n67d26y86q9y11nci3shpjcwlycvq9k1vx8j"
sha256 = "1bp1xik3d264r191lr71rjrpfqw5cjd03kqnld2xdng734c3vn5z"
synopsis = "Bindings for PostgreSQL's C-api"
version = "4.1.5"
version = "4.1.6"
[poule]
dependencies = ["datatype", "mailbox", "matchable", "srfi-1", "srfi-18", "typed-records"]
@ -2184,11 +2191,11 @@ synopsis = "Manage pools of worker processes"
version = "0.1.1"
[prefixes]
dependencies = ["tree-walkers"]
dependencies = []
license = "bsd"
sha256 = "09xy34vz2w9ngi9z2yahv3fw5xiiy4xpdmf33zfvj46k7w5dahpn"
sha256 = "1gf9n3irfflrhjhhwfjdaav02yl0a3j1bqrs82xwcib4rbs1r9xr"
synopsis = "prefixing in er-macro-transformers made easy"
version = "1.0"
version = "2.0"
[premodules]
dependencies = ["simple-tests"]
@ -2214,9 +2221,9 @@ version = "3.0.1"
[procedure-decoration]
dependencies = ["check-errors"]
license = "bsd"
sha256 = "0sid5fcw9pvf8n1zq5i757pzdr4hgx5w55qgrabsxpq5pgxj6gbs"
sha256 = "1f3967abpik69k89rr2bv28xdnq9ps7z9hyf7xmsqs2frf7iy534"
synopsis = "Procedure Decoration API"
version = "3.0.0"
version = "3.0.1"
[prometheus]
dependencies = ["srfi-1"]
@ -2396,9 +2403,9 @@ version = "2.0"
[remote-mailbox]
dependencies = ["tcp-server", "s11n", "mailbox", "srfi-18", "synch", "miscmacros", "moremacros", "llrb-tree", "condition-utils", "check-errors"]
license = "bsd"
sha256 = "1jm9ybxji5i06vdrh39biiwyhk8cyxxhh4gnbxa66xv7h5n5dmhn"
sha256 = "12fzidia913gncl9xpjyp6ri8d5fij17gkmxv0pr9fh13icx6h54"
synopsis = "Remote Mailbox"
version = "1.0.7"
version = "1.0.8"
[rest-bind]
dependencies = ["intarweb", "uri-common"]
@ -2417,9 +2424,9 @@ version = "0.1.3"
[ripemd]
dependencies = ["message-digest-primitive"]
license = "bsd"
sha256 = "18d0f37a13nsknay6vw27xvr1k0s4p4ss2dc29fhx89hsv5ycjsq"
sha256 = "1x5kkfazbrxqyar5ll5jrba25bnp9l6r4nrbkrfgfdp1ngf58c3j"
synopsis = "RIPE Message Digest"
version = "2.1.2"
version = "2.1.3"
[rlimit]
dependencies = ["srfi-13"]
@ -2466,16 +2473,16 @@ version = "0.7"
[s9fes-char-graphics]
dependencies = ["srfi-1", "utf8", "format"]
license = "public-domain"
sha256 = "1ysz8vrx7zwfv4drx955ca28avmdfilafd9a20sl67y5vwb47i8m"
sha256 = "0wlrz5c4v12jj014c20l35vcvqc9iplnpfxifca1agm68xhdda9v"
synopsis = "Scheme 9 from Empty Space Char Graphics"
version = "1.4.2"
version = "1.4.3"
[salmonella-diff]
dependencies = ["salmonella", "salmonella-html-report", "srfi-1", "srfi-13", "sxml-transforms"]
license = "bsd"
sha256 = "1w5qzsmx2i9cpjd2d9kkfhw6627xg19x5w6jck9gba6vgcf2s6ca"
sha256 = "1ghz1ary4qm0bqzl7sa781bwqq2sqxlnim6q7x51q6wna5g7kyph"
synopsis = "A tool to diff salmonella log files"
version = "1.1.0"
version = "1.1.1"
[salmonella-feeds]
dependencies = ["atom", "rfc3339", "salmonella", "salmonella-diff", "srfi-1"]
@ -2487,16 +2494,16 @@ version = "0.1.1"
[salmonella-html-report]
dependencies = ["salmonella", "srfi-1", "srfi-13", "sxml-transforms"]
license = "bsd"
sha256 = "107n7sgzk91s25ih3k40y649fnv9n37xnf7igkkn5c642hjmfr6d"
sha256 = "1xrx2avw3y16bhdj91pyb1dkkn2hqykb1vmqpgjjsj3lnpxm4ksl"
synopsis = "A tool to generate HTML ouput out of salmonella log files"
version = "1.7.1"
version = "1.7.2"
[salmonella]
dependencies = []
license = "bsd"
sha256 = "1r60dlr1qcjlirbwqpn23aphczlkhrhskgqmw51973w46ww839nf"
sha256 = "1hafbvhcscksjwf3s9ch7f2szk24i653zhnnlpcmx9dra6kzp8hj"
synopsis = "A tool for testing eggs"
version = "3.1.1"
version = "3.2.0"
[salt]
dependencies = ["datatype", "matchable", "make", "mathh", "lalr", "datatype", "unitconv", "fmt"]
@ -2599,9 +2606,9 @@ version = "0.4.1"
[semantic-version]
dependencies = ["utf8", "srfi-1", "vector-lib", "srfi-69", "srfi-128", "record-variants"]
license = "bsd"
sha256 = "0aig2n1q08rqbvwl74ly4x05gzy7hc47n5dqgbn4zjg5539d77qd"
sha256 = "0xwy5jimqqq7h3sfvvhhs5kb29a9x57k4jcbmkrmsxizb3fqdl18"
synopsis = "Semantic Version Utilities"
version = "0.0.17"
version = "0.0.18"
[sendfile]
dependencies = ["memory-mapped-files"]
@ -2613,9 +2620,9 @@ version = "2.0"
[sequences-utils]
dependencies = ["srfi-1", "srfi-69", "sequences"]
license = "bsd"
sha256 = "1r3wbvi502wm82zn78a2kw2dv1ya0msphhx42gb9wllxdhzz0d6l"
sha256 = "0j3z8fz1zrlpadphfrkikpsnd74r8q8i4lxlnp4srlq4iwlb7b45"
synopsis = "(More) Generic sequence operators"
version = "0.5.1"
version = "0.5.2"
[sequences]
dependencies = ["fast-generic", "srfi-42"]
@ -2631,6 +2638,13 @@ sha256 = "1k3k9mkildbi9i8vgj26rj5nidrm0zif8pqf9zm5ahwn4kcp9drx"
synopsis = "Utilities to help testing servers"
version = "0.6"
[sexp-diff]
dependencies = ["srfi-1"]
license = "lgpl"
sha256 = "195x444hdh2xh37x9j2d9gayvhmiif0wz7wfyhz8zwspl3xzaq1h"
synopsis = "S-Expression diff algorithm"
version = "0.4.0"
[sexpc]
dependencies = ["brev-separate", "fmt", "tree"]
license = "bsd-1-clause"
@ -2641,16 +2655,16 @@ version = "1.4"
[sha1]
dependencies = ["message-digest-primitive"]
license = "public-domain"
sha256 = "0p48vv59lr1ydrn529fkpd7ybny9h4hggaav0b7zwyvpkhyd565q"
sha256 = "099gc515653gwmgnvbw7fjkd6sbmhabqvdd1rkh8h9jmkfi9y8ih"
synopsis = "Computes SHA1 (FIPS-180-1) checksums"
version = "4.1.7"
version = "4.1.8"
[sha2]
dependencies = ["message-digest-primitive"]
license = "bsd"
sha256 = "054bjn8wqqxn142cryp0jm18axr237lq9w6gip6hw37y66wpc6h6"
sha256 = "0ngcn62r6f4mdxvbighypg1gm1yz1gkg5mlfrc2x84y9fy5kms1l"
synopsis = "Computes 256-, 385- and 512-bit SHA2 checksums"
version = "4.2.5"
version = "4.2.6"
[shell]
dependencies = []
@ -2716,11 +2730,11 @@ synopsis = "Some simple looping macros"
version = "2.0"
[simple-md5]
dependencies = ["memory-mapped-files", "srfi-13"]
dependencies = ["memory-mapped-files"]
license = "public-domain"
sha256 = "1aq7iqbh1jb3j61nylsrzf7rcmf204v1jl2l559q0jdycij6yn5z"
sha256 = "1z234wzfppqc06ygknd0a3sa60fmnmwzdavlxgiwbigy1al04ln1"
synopsis = "Computes MD5 (RFC1321) checksums"
version = "0.1.1"
version = "0.1.2"
[simple-sequences]
dependencies = []
@ -2774,9 +2788,9 @@ version = "1.1.4"
[slib-charplot]
dependencies = ["slib-arraymap", "srfi-63", "slib-compat"]
license = "artistic"
sha256 = "04hyggnbxdjk0vq0x59gi98ybvkq2y3c8llb8zh9bzz045yj7n90"
sha256 = "0dbcbarn1gcw5pimjlr9nmhllsyfvbc9n5hnl29d5mfyiv0ifqnn"
synopsis = "The SLIB character plotting library"
version = "1.2.3"
version = "1.2.4"
[slib-compat]
dependencies = ["srfi-1"]
@ -2837,9 +2851,9 @@ version = "0.3.3"
[sparse-vectors]
dependencies = ["srfi-1", "record-variants"]
license = "bsd"
sha256 = "1vvwkjkw3drlmy0pmihg2l5c3s8wbvp0d60934idgyb7vvbdy0rz"
sha256 = "1xx3abj1f8qwdh0xsgjh9p0j7990nw3vjxw0482d1lidp52xi5n0"
synopsis = "Arbitrarily large vectors"
version = "1.1.1"
version = "1.1.2"
[spiffy-cgi-handlers]
dependencies = ["spiffy", "intarweb", "uri-common", "socket", "records", "srfi-1", "srfi-18", "srfi-13", "miscmacros"]
@ -3152,9 +3166,9 @@ version = "0.1"
[srfi-174]
dependencies = ["r7rs", "srfi-19"]
license = "mit"
sha256 = "0kl9x7q1wcy7jzjkajmqpf748aqfjysh0ygdvnbvg5bxzdfs4gh9"
sha256 = "15x3qgws2ybwnhy4cr3b0q1rw2sxqmbafprn403wd3hks7ijm3xp"
synopsis = "srfi-174"
version = "1.0.2"
version = "1.0.3"
[srfi-178]
dependencies = ["srfi-151", "srfi-160", "srfi-141"]
@ -3194,9 +3208,9 @@ version = "1.0.3"
[srfi-19]
dependencies = ["srfi-1", "utf8", "srfi-18", "srfi-29", "miscmacros", "locale", "record-variants", "check-errors"]
license = "bsd"
sha256 = "10bnm3gsc3rdafw239pwr6f8c95ma4a11k3cjjjscr8gvxl1kywp"
sha256 = "0wi2d1966ggig5mv7jzqs5nb87bqc4f176zdphcqghchd7vhhbbj"
synopsis = "Time Data Types and Procedures"
version = "4.9.9"
version = "4.10.2"
[srfi-193]
dependencies = []
@ -3282,19 +3296,26 @@ sha256 = "0vf6f0f6jm4frpz995kxjzydg3p7vjn58shmv6s2p34hmfsjcm04"
synopsis = "Multidimensional arrays"
version = "1.3"
[srfi-253]
dependencies = ["r7rs"]
license = "mit"
sha256 = "1b7lrsv5fhl9s3swz0abfx3y2wqrk07n3fwhymg9cz3908cjqms3"
synopsis = "SRFI 253: Data (Type-)Checking"
version = "0.1.0"
[srfi-27]
dependencies = ["srfi-1", "vector-lib", "timed-resource", "miscmacros", "check-errors"]
license = "bsd"
sha256 = "11hb0hxhm74yjg7d95nj1wxjpi3hgkns7zy64as3xl3jbq3wlh60"
sha256 = "1bybfg0hv0a1gxb7mdq0q88zdnsmz9fdm27mnnhkhhmy9wh7y49x"
synopsis = "Sources of Random Bits"
version = "4.2.3"
version = "4.2.4"
[srfi-29]
dependencies = ["srfi-1", "srfi-69", "utf8", "locale", "posix-utils", "condition-utils", "check-errors"]
license = "bsd"
sha256 = "1jyjwkz6jz9da3n32cgja2dvwrsl9lckknxjb1ial0359ibqnc3h"
sha256 = "1f7qc26k8wpr8vgf5vqw54bir9a6aiwn6qx2mssqvlypj4zvffwv"
synopsis = "Localization"
version = "3.0.11"
version = "3.1.0"
[srfi-34]
dependencies = []
@ -3348,9 +3369,9 @@ version = "1.76"
[srfi-45]
dependencies = ["record-variants", "check-errors"]
license = "bsd"
sha256 = "0sygx2pd8d2j8q9n9xz4hdlbnn7amm7za4ibpk0wssyf02r6y5a3"
sha256 = "0axnndb3lkh5ayiqkxhwg9v6zq1zkb59gsdgwg4b2ysx92mnn449"
synopsis = "SRFI-45: Primitives for Expressing Iterative Lazy Algorithms"
version = "4.0.7"
version = "4.0.8"
[srfi-47]
dependencies = []
@ -3481,9 +3502,9 @@ version = "0.3"
[stack]
dependencies = ["record-variants", "check-errors"]
license = "bsd"
sha256 = "00hh6kagnj7xsrg8i4wig1jp8y5v5g2887zgnfvqd5ibxr232g54"
sha256 = "0zfjymxjkmhdv9484g5cyip4dh5h61qqrf9gl92i54j6wsy6c4va"
synopsis = "Provides LIFO queue (stack) operations"
version = "3.2.0"
version = "3.2.1"
[stalin]
dependencies = []
@ -3544,9 +3565,9 @@ version = "1.1"
[string-utils]
dependencies = ["utf8", "srfi-1", "srfi-13", "srfi-69", "miscmacros", "check-errors"]
license = "bsd"
sha256 = "1ilzdvbmmm7jnq4m3nrbxhj9x2b4d772748m9fjxzl9bqqik1a54"
sha256 = "1dns5xcm348qkcry2x2d6mqd0k7xjfi2k4qm3vhnww8qkqaxrn09"
synopsis = "String Utilities"
version = "2.7.4"
version = "2.7.5"
[strse]
dependencies = ["matchable", "srfi-13", "miscmacros"]
@ -3628,9 +3649,9 @@ version = "1.0"
[symbol-utils]
dependencies = ["utf8"]
license = "bsd"
sha256 = "1514yvgpknkiwjksnkcshqxz6c7sb5ab182lfwrrha3ch2islq3h"
sha256 = "0sw95b9487i9sr27zxnl3f6f07wrrpzx3g75q32yk2v79q898kd8"
synopsis = "Symbol Utilities"
version = "2.6.0"
version = "2.6.1"
[synch]
dependencies = ["srfi-18", "check-errors"]
@ -3656,9 +3677,9 @@ version = "0.1"
[system]
dependencies = ["coops", "shell", "compile-file", "srfi-1"]
license = "bsd"
sha256 = "18sp0r0qsq8aw3ff9f4cv5a3n6p7yh5jlwf0s22x8bswi4377a76"
sha256 = "0zb94ylxqvdq3r84p33zydziziy4jfpc00zn8fv2jf3dhx0azlrk"
synopsis = "load and compile groups of files"
version = "0.8"
version = "0.9"
[tabular]
dependencies = ["srfi-1", "srfi-127", "utf8", "matchable"]
@ -3712,9 +3733,9 @@ version = "1.0.4"
[test-utils]
dependencies = ["test"]
license = "bsd"
sha256 = "0nd309zshnwsackk7vzxj9496g58j2ch65h0lghsjpx2ns9l2s14"
sha256 = "1pc4q9m64im81l6diay0hy8zwrry4pw56vwgalvs204frfjfg41l"
synopsis = "Test Utilities (for test egg)"
version = "1.1.0"
version = "1.2.1"
[test]
dependencies = []
@ -3733,23 +3754,23 @@ version = "0.1"
[thread-utils]
dependencies = ["queues", "srfi-1", "srfi-18", "miscmacros", "moremacros", "record-variants", "check-errors", "synch"]
license = "bsd"
sha256 = "0avr7r6caacmbr3gbb8rp23ddi0g74yz2jc2w2bbhxrqr01vqj0l"
sha256 = "0fmdns17m8phk2k9b4kipvywpg0jmcnbkmz9jaipzfsx9a853ax3"
synopsis = "Thread Utilities"
version = "2.2.8"
version = "2.2.9"
[tiger-hash]
dependencies = ["message-digest-primitive"]
license = "bsd"
sha256 = "0hcmp58byk2wg0nbmb5zh2zc7z670dhva21qjpix6l8hqgrf0151"
sha256 = "06b02im6b9q66vvcnq0w007qvczylbrk8cc71a93ka20k1l2nbvr"
synopsis = "Tiger/192 Message Digest"
version = "4.1.2"
version = "4.1.3"
[timed-resource]
dependencies = ["record-variants", "check-errors", "thread-utils", "srfi-1", "srfi-18", "synch", "miscmacros"]
license = "bsd"
sha256 = "1jycpy7vxl8d3acnjyz531nqyhgy4n8baqjzd5af1kxy69qvmzgs"
sha256 = "1awlgd42zwi7gpvddqdz7fmdmv5m9pznwc871vqsz2ax8xapp8mz"
synopsis = "Resource w/ Timeout"
version = "2.4.2"
version = "2.4.3"
[tiny-prolog]
dependencies = ["srfi-69"]
@ -3787,11 +3808,11 @@ synopsis = "tracing and breakpoints"
version = "2.0"
[transducers]
dependencies = ["r7rs", "srfi-1", "srfi-128", "srfi-133", "srfi-143", "srfi-146", "srfi-160", "check-errors"]
dependencies = ["r7rs", "srfi-1", "srfi-128", "srfi-133", "srfi-143", "srfi-146", "srfi-160", "srfi-253"]
license = "mit"
sha256 = "194clggnwmv7g0v4y5q8brr4aac3rs4ddzigxbls0pmdr925chlb"
sha256 = "1ncbx703w0iwpsh2d302zlw6brajjdjravcp7y4cf3zk6rd3xfrd"
synopsis = "Transducers for working with foldable data types."
version = "0.5.5"
version = "0.7.0"
[transmission]
dependencies = ["http-client", "intarweb", "medea", "r7rs", "srfi-1", "srfi-189", "uri-common"]
@ -3929,9 +3950,9 @@ version = "3.6.3"
[uuid-lib]
dependencies = ["record-variants"]
license = "bsd"
sha256 = "16b03b6d29mjn8bcil0ln0vq85dxxvzlxrpnpblf68n7l9ix8qnc"
sha256 = "06kx6j06h4qm1b4iw39bdr8llskyx5zpyzs0x86jib1vc16q6rkf"
synopsis = "OSF DCE 1.1 UUID"
version = "0.0.15"
version = "0.0.16"
[uuid]
dependencies = []
@ -4006,9 +4027,9 @@ version = "1.29"
[xlib]
dependencies = ["matchable", "srfi-13"]
license = "unknown"
sha256 = "17r7w5w7fwmhr5n37zq0yhg4s8pm8505lzal4mq7i2m6y591xfc0"
sha256 = "04csxgqknw9zww1b71c2j2a8x5h1xxvkwi94ihyznb4qb3vzla4f"
synopsis = "Xlib bindings"
version = "1.3"
version = "1.4"
[xml-rpc]
dependencies = ["base64", "http-client", "intarweb", "ssax", "sxpath", "srfi-1", "srfi-13", "srfi-18", "srfi-69"]

View File

@ -1,19 +1,16 @@
#!/usr/bin/env nix-shell
#! nix-shell -I nixpkgs=../../../../.. -i oil -p oil chicken
#! nix-shell -I nixpkgs=../../../../.. -i ysh -p oils-for-unix chicken
export URL_PREFIX="https://code.call-cc.org/egg-tarballs/5/"
setglobal ENV.URL_PREFIX="https://code.call-cc.org/egg-tarballs/5/"
cd $(nix-prefetch-url \
'https://code.call-cc.org/cgi-bin/gitweb.cgi?p=eggs-5-latest.git;a=snapshot;h=master;sf=tgz' \
--name chicken-eggs-5-latest --unpack --print-path | tail -1)
echo "# THIS IS A GENERATED FILE. DO NOT EDIT!" > $_this_dir/deps.toml
for i, item in */*/*.egg {
var EGG_NAME=$(dirname $(dirname $item))
var EGG_VERSION=$(basename $(dirname $item))
var EGG_URL="${URL_PREFIX}${EGG_NAME}/${EGG_NAME}-${EGG_VERSION}.tar.gz"
var EGG_SHA256=$(nix-prefetch-url $EGG_URL)
export EGG_NAME
export EGG_VERSION
export EGG_SHA256
setglobal ENV.EGG_NAME=$(dirname $(dirname $item))
setglobal ENV.EGG_VERSION=$(basename $(dirname $item))
setglobal ENV.EGG_URL="$[ENV.URL_PREFIX]$[ENV.EGG_NAME]/$[ENV.EGG_NAME]-$[ENV.EGG_VERSION].tar.gz"
setglobal ENV.EGG_SHA256=$(nix-prefetch-url $[ENV.EGG_URL])
csi -s $_this_dir/read-egg.scm < $item
} >> $_this_dir/deps.toml

View File

@ -7,7 +7,7 @@
{
version = "8.9.5.30";
minCudaVersion = "12.0";
maxCudaVersion = "12.2";
maxCudaVersion = "12.4";
url = "https://developer.download.nvidia.com/compute/cudnn/redist/cudnn/linux-aarch64/cudnn-linux-aarch64-8.9.5.30_cuda12-archive.tar.xz";
hash = "sha256-BJH3sC9VwiB362eL8xTB+RdSS9UHz1tlgjm/mKRyM6E=";
}
@ -75,7 +75,7 @@
{
version = "8.9.7.29";
minCudaVersion = "12.0";
maxCudaVersion = "12.2";
maxCudaVersion = "12.4";
url = "https://developer.download.nvidia.com/compute/cudnn/redist/cudnn/linux-sbsa/cudnn-linux-sbsa-8.9.7.29_cuda12-archive.tar.xz";
hash = "sha256-6Yt8gAEHheXVygHuTOm1sMjHNYfqb4ZIvjTT+NHUe9E=";
}
@ -183,7 +183,7 @@
{
version = "8.9.7.29";
minCudaVersion = "12.0";
maxCudaVersion = "12.2";
maxCudaVersion = "12.4";
url = "https://developer.download.nvidia.com/compute/cudnn/redist/cudnn/linux-x86_64/cudnn-linux-x86_64-8.9.7.29_cuda12-archive.tar.xz";
hash = "sha256-R1MzYlx+QqevPKCy91BqEG4wyTsaoAgc2cE++24h47s=";
}

View File

@ -208,256 +208,265 @@ in
}@attrs:
let
format' =
assert (pyproject != null) -> (format == null);
if pyproject != null then
if pyproject then "pyproject" else "other"
else if format != null then
format
else
"setuptools";
withDistOutput = withDistOutput' format';
validatePythonMatches =
# Keep extra attributes from `attrs`, e.g., `patchPhase', etc.
self = stdenv.mkDerivation (
finalAttrs:
let
throwMismatch =
attrName: drv:
format' =
assert (pyproject != null) -> (format == null);
if pyproject != null then
if pyproject then "pyproject" else "other"
else if format != null then
format
else
"setuptools";
withDistOutput = withDistOutput' format';
validatePythonMatches =
let
myName = "'${namePrefix}${name}'";
theirName = "'${drv.name}'";
optionalLocation =
throwMismatch =
attrName: drv:
let
pos = unsafeGetAttrPos (if attrs ? "pname" then "pname" else "name") attrs;
myName = "'${namePrefix}${name}'";
theirName = "'${drv.name}'";
optionalLocation =
let
pos = unsafeGetAttrPos (if attrs ? "pname" then "pname" else "name") attrs;
in
optionalString (pos != null) " at ${pos.file}:${toString pos.line}:${toString pos.column}";
in
optionalString (pos != null) " at ${pos.file}:${toString pos.line}:${toString pos.column}";
throw ''
Python version mismatch in ${myName}:
The Python derivation ${myName} depends on a Python derivation
named ${theirName}, but the two derivations use different versions
of Python:
${leftPadName myName theirName} uses ${python}
${leftPadName theirName myName} uses ${toString drv.pythonModule}
Possible solutions:
* If ${theirName} is a Python library, change the reference to ${theirName}
in the ${attrName} of ${myName} to use a ${theirName} built from the same
version of Python
* If ${theirName} is used as a tool during the build, move the reference to
${theirName} in ${myName} from ${attrName} to nativeBuildInputs
* If ${theirName} provides executables that are called at run time, pass its
bin path to makeWrapperArgs:
makeWrapperArgs = [ "--prefix PATH : ''${lib.makeBinPath [ ${getName drv} ] }" ];
${optionalLocation}
'';
checkDrv =
attrName: drv:
if (isPythonModule drv) && (isMismatchedPython drv) then throwMismatch attrName drv else drv;
in
throw ''
Python version mismatch in ${myName}:
attrName: inputs: map (checkDrv attrName) inputs;
The Python derivation ${myName} depends on a Python derivation
named ${theirName}, but the two derivations use different versions
of Python:
isBootstrapInstallPackage = isBootstrapInstallPackage' (attrs.pname or null);
${leftPadName myName theirName} uses ${python}
${leftPadName theirName myName} uses ${toString drv.pythonModule}
isBootstrapPackage = isBootstrapInstallPackage || isBootstrapPackage' (attrs.pname or null);
Possible solutions:
* If ${theirName} is a Python library, change the reference to ${theirName}
in the ${attrName} of ${myName} to use a ${theirName} built from the same
version of Python
* If ${theirName} is used as a tool during the build, move the reference to
${theirName} in ${myName} from ${attrName} to nativeBuildInputs
* If ${theirName} provides executables that are called at run time, pass its
bin path to makeWrapperArgs:
makeWrapperArgs = [ "--prefix PATH : ''${lib.makeBinPath [ ${getName drv} ] }" ];
${optionalLocation}
'';
checkDrv =
attrName: drv:
if (isPythonModule drv) && (isMismatchedPython drv) then throwMismatch attrName drv else drv;
isSetuptoolsDependency = isSetuptoolsDependency' (attrs.pname or null);
in
attrName: inputs: map (checkDrv attrName) inputs;
(cleanAttrs attrs)
// {
isBootstrapInstallPackage = isBootstrapInstallPackage' (attrs.pname or null);
name = namePrefix + name;
isBootstrapPackage = isBootstrapInstallPackage || isBootstrapPackage' (attrs.pname or null);
nativeBuildInputs =
[
python
wrapPython
ensureNewerSourcesForZipFilesHook # move to wheel installer (pip) or builder (setuptools, flit, ...)?
pythonRemoveTestsDirHook
]
++ optionals (catchConflicts && !isBootstrapPackage && !isSetuptoolsDependency) [
#
# 1. When building a package that is also part of the bootstrap chain, we
# must ignore conflicts after installation, because there will be one with
# the package in the bootstrap.
#
# 2. When a package is a dependency of setuptools, we must ignore conflicts
# because the hook that checks for conflicts uses setuptools.
#
pythonCatchConflictsHook
]
++ optionals (attrs ? pythonRelaxDeps || attrs ? pythonRemoveDeps) [
pythonRelaxDepsHook
]
++ optionals removeBinBytecode [
pythonRemoveBinBytecodeHook
]
++ optionals (hasSuffix "zip" (attrs.src.name or "")) [
unzip
]
++ optionals (format' == "setuptools") [
setuptoolsBuildHook
]
++ optionals (format' == "pyproject") [
(
if isBootstrapPackage then
pypaBuildHook.override {
inherit (python.pythonOnBuildForHost.pkgs.bootstrap) build;
wheel = null;
}
else
pypaBuildHook
)
(
if isBootstrapPackage then
pythonRuntimeDepsCheckHook.override {
inherit (python.pythonOnBuildForHost.pkgs.bootstrap) packaging;
}
else
pythonRuntimeDepsCheckHook
)
]
++ optionals (format' == "wheel") [
wheelUnpackHook
]
++ optionals (format' == "egg") [
eggUnpackHook
eggBuildHook
eggInstallHook
]
++ optionals (format' != "other") [
(
if isBootstrapInstallPackage then
pypaInstallHook.override {
inherit (python.pythonOnBuildForHost.pkgs.bootstrap) installer;
}
else
pypaInstallHook
)
]
++ optionals (stdenv.buildPlatform == stdenv.hostPlatform) [
# This is a test, however, it should be ran independent of the checkPhase and checkInputs
pythonImportsCheckHook
]
++ optionals (python.pythonAtLeast "3.3") [
# Optionally enforce PEP420 for python3
pythonNamespacesHook
]
++ optionals withDistOutput [
pythonOutputDistHook
]
++ nativeBuildInputs
++ build-system;
isSetuptoolsDependency = isSetuptoolsDependency' (attrs.pname or null);
buildInputs = validatePythonMatches "buildInputs" (buildInputs ++ pythonPath);
# Keep extra attributes from `attrs`, e.g., `patchPhase', etc.
self = toPythonModule (
stdenv.mkDerivation (
finalAttrs:
(cleanAttrs attrs)
// {
propagatedBuildInputs = validatePythonMatches "propagatedBuildInputs" (
propagatedBuildInputs
++ dependencies
++ [
# we propagate python even for packages transformed with 'toPythonApplication'
# this pollutes the PATH but avoids rebuilds
# see https://github.com/NixOS/nixpkgs/issues/170887 for more context
python
]
);
name = namePrefix + name;
inherit strictDeps;
nativeBuildInputs =
[
python
wrapPython
ensureNewerSourcesForZipFilesHook # move to wheel installer (pip) or builder (setuptools, flit, ...)?
pythonRemoveTestsDirHook
]
++ optionals (catchConflicts && !isBootstrapPackage && !isSetuptoolsDependency) [
#
# 1. When building a package that is also part of the bootstrap chain, we
# must ignore conflicts after installation, because there will be one with
# the package in the bootstrap.
#
# 2. When a package is a dependency of setuptools, we must ignore conflicts
# because the hook that checks for conflicts uses setuptools.
#
pythonCatchConflictsHook
]
++ optionals (attrs ? pythonRelaxDeps || attrs ? pythonRemoveDeps) [
pythonRelaxDepsHook
]
++ optionals removeBinBytecode [
pythonRemoveBinBytecodeHook
]
++ optionals (hasSuffix "zip" (attrs.src.name or "")) [
unzip
]
++ optionals (format' == "setuptools") [
setuptoolsBuildHook
]
++ optionals (format' == "pyproject") [
(
if isBootstrapPackage then
pypaBuildHook.override {
inherit (python.pythonOnBuildForHost.pkgs.bootstrap) build;
wheel = null;
}
else
pypaBuildHook
)
(
if isBootstrapPackage then
pythonRuntimeDepsCheckHook.override {
inherit (python.pythonOnBuildForHost.pkgs.bootstrap) packaging;
}
else
pythonRuntimeDepsCheckHook
)
]
++ optionals (format' == "wheel") [
wheelUnpackHook
]
++ optionals (format' == "egg") [
eggUnpackHook
eggBuildHook
eggInstallHook
]
++ optionals (format' != "other") [
(
if isBootstrapInstallPackage then
pypaInstallHook.override {
inherit (python.pythonOnBuildForHost.pkgs.bootstrap) installer;
}
else
pypaInstallHook
)
]
++ optionals (stdenv.buildPlatform == stdenv.hostPlatform) [
# This is a test, however, it should be ran independent of the checkPhase and checkInputs
pythonImportsCheckHook
]
++ optionals (python.pythonAtLeast "3.3") [
# Optionally enforce PEP420 for python3
pythonNamespacesHook
]
++ optionals withDistOutput [
pythonOutputDistHook
]
++ nativeBuildInputs
++ build-system;
LANG = "${if python.stdenv.hostPlatform.isDarwin then "en_US" else "C"}.UTF-8";
buildInputs = validatePythonMatches "buildInputs" (buildInputs ++ pythonPath);
# Python packages don't have a checkPhase, only an installCheckPhase
doCheck = false;
doInstallCheck = attrs.doCheck or true;
nativeInstallCheckInputs = nativeCheckInputs;
installCheckInputs = checkInputs;
propagatedBuildInputs = validatePythonMatches "propagatedBuildInputs" (
propagatedBuildInputs
++ dependencies
++ [
# we propagate python even for packages transformed with 'toPythonApplication'
# this pollutes the PATH but avoids rebuilds
# see https://github.com/NixOS/nixpkgs/issues/170887 for more context
python
]
);
postFixup =
optionalString (!dontWrapPythonPrograms) ''
wrapPythonPrograms
''
+ attrs.postFixup or "";
inherit strictDeps;
# Python packages built through cross-compilation are always for the host platform.
disallowedReferences = optionals (python.stdenv.hostPlatform != python.stdenv.buildPlatform) [
python.pythonOnBuildForHost
];
LANG = "${if python.stdenv.hostPlatform.isDarwin then "en_US" else "C"}.UTF-8";
outputs = outputs ++ optional withDistOutput "dist";
# Python packages don't have a checkPhase, only an installCheckPhase
doCheck = false;
doInstallCheck = attrs.doCheck or true;
nativeInstallCheckInputs = nativeCheckInputs;
installCheckInputs = checkInputs;
postFixup =
optionalString (!dontWrapPythonPrograms) ''
wrapPythonPrograms
''
+ attrs.postFixup or "";
# Python packages built through cross-compilation are always for the host platform.
disallowedReferences = optionals (python.stdenv.hostPlatform != python.stdenv.buildPlatform) [
python.pythonOnBuildForHost
];
outputs = outputs ++ optional withDistOutput "dist";
passthru =
{
inherit disabled;
}
// {
updateScript =
let
filename = head (splitString ":" finalAttrs.finalPackage.meta.position);
in
[
update-python-libraries
filename
];
}
// optionalAttrs (dependencies != [ ]) {
inherit dependencies;
}
// optionalAttrs (optional-dependencies != { }) {
inherit optional-dependencies;
}
// optionalAttrs (build-system != [ ]) {
inherit build-system;
}
// attrs.passthru or { };
meta = {
# default to python's platforms
platforms = python.meta.platforms;
isBuildPythonPackage = python.meta.platforms;
} // meta;
}
// optionalAttrs (attrs ? checkPhase) {
# If given use the specified checkPhase, otherwise use the setup hook.
# Longer-term we should get rid of `checkPhase` and use `installCheckPhase`.
installCheckPhase = attrs.checkPhase;
}
// optionalAttrs (attrs.doCheck or true) (
optionalAttrs (disabledTestPaths != [ ]) {
disabledTestPaths = disabledTestPaths;
passthru =
{
inherit disabled;
}
// optionalAttrs (attrs ? disabledTests) {
disabledTests = attrs.disabledTests;
// {
updateScript =
let
filename = head (splitString ":" finalAttrs.finalPackage.meta.position);
in
[
update-python-libraries
filename
];
}
// optionalAttrs (attrs ? pytestFlags) {
// optionalAttrs (dependencies != [ ]) {
inherit dependencies;
}
// optionalAttrs (optional-dependencies != { }) {
inherit optional-dependencies;
}
// optionalAttrs (build-system != [ ]) {
inherit build-system;
}
// attrs.passthru or { };
meta = {
# default to python's platforms
platforms = python.meta.platforms;
isBuildPythonPackage = python.meta.platforms;
} // meta;
}
// optionalAttrs (attrs ? checkPhase) {
# If given use the specified checkPhase, otherwise use the setup hook.
# Longer-term we should get rid of `checkPhase` and use `installCheckPhase`.
installCheckPhase = attrs.checkPhase;
}
// optionalAttrs (attrs.doCheck or true) (
optionalAttrs (disabledTestPaths != [ ]) {
disabledTestPaths = escapeShellArgs disabledTestPaths;
}
// optionalAttrs (attrs ? disabledTests) {
# `escapeShellArgs` should be used as well as `disabledTestPaths`,
# but some packages rely on existing raw strings.
disabledTests = attrs.disabledTests;
}
// optionalAttrs (attrs ? pytestFlags) {
pytestFlags = attrs.pytestFlags;
}
// optionalAttrs (attrs ? pytestFlagsArray) {
pytestFlagsArray = attrs.pytestFlagsArray;
}
// optionalAttrs (attrs ? unittestFlags) {
}
// optionalAttrs (attrs ? pytestFlagsArray) {
pytestFlagsArray = attrs.pytestFlagsArray;
}
// optionalAttrs (attrs ? unittestFlags) {
unittestFlags = attrs.unittestFlags;
}
// optionalAttrs (attrs ? unittestFlagsArray) {
unittestFlagsArray = attrs.unittestFlagsArray;
}
)
}
// optionalAttrs (attrs ? unittestFlagsArray) {
unittestFlagsArray = attrs.unittestFlagsArray;
}
)
);
# This derivation transformation function must be independent to `attrs`
# for fixed-point arguments support in the future.
transformDrv =
drv:
extendDerivation (
drv.disabled
-> throw "${lib.removePrefix namePrefix drv.name} not supported for interpreter ${python.executable}"
) { } (toPythonModule drv);
in
extendDerivation (
disabled -> throw "${name} not supported for interpreter ${python.executable}"
) { } self
transformDrv self

View File

@ -12,7 +12,7 @@ let
self = python3;
packageOverrides = _: super: { tree-sitter = super.tree-sitter_0_21; };
};
version = "0.72.1";
version = "0.73.0";
aider-chat = python3.pkgs.buildPythonPackage {
pname = "aider-chat";
inherit version;
@ -22,7 +22,7 @@ let
owner = "Aider-AI";
repo = "aider";
tag = "v${version}";
hash = "sha256-5dV1EW4qx2tXDlbzyS8CT3p0MXgdKVdIGVLDEQF/4Zc=";
hash = "sha256-wcrwm4mn4D6pYgoCa5iKcKmt4QmhOXOfObUl7Gevukg=";
};
pythonRelaxDeps = true;
@ -191,7 +191,7 @@ let
homepage = "https://github.com/paul-gauthier/aider";
changelog = "https://github.com/paul-gauthier/aider/blob/v${version}/HISTORY.md";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ taha-yassine ];
maintainers = with lib.maintainers; [ happysalada ];
mainProgram = "aider";
};
};

View File

@ -1,5 +1,6 @@
{
lib,
stdenv,
buildPythonPackage,
fetchFromGitHub,
cython_0,
@ -13,31 +14,46 @@
addDriverRunpath,
pythonOlder,
symlinkJoin,
fetchpatch
}:
let
inherit (cudaPackages) cudnn cutensor nccl;
outpaths = with cudaPackages; [
cuda_cccl # <nv/target>
cuda_cudart
cuda_nvcc # <crt/host_defines.h>
cuda_nvprof
cuda_nvrtc
cuda_nvtx
cuda_profiler_api
libcublas
libcufft
libcurand
libcusolver
libcusparse
inherit (cudaPackages) cudnn;
# Missing:
# cusparselt
shouldUsePkg =
pkg: if pkg != null && lib.meta.availableOn stdenv.hostPlatform pkg then pkg else null;
# some packages are not available on all platforms
cuda_nvprof = shouldUsePkg (cudaPackages.nvprof or null);
cutensor = shouldUsePkg (cudaPackages.cutensor or null);
nccl = shouldUsePkg (cudaPackages.nccl or null);
outpaths = with cudaPackages; [
cuda_cccl # <nv/target>
cuda_cudart
cuda_nvcc # <crt/host_defines.h>
cuda_nvprof
cuda_nvrtc
cuda_nvtx
cuda_profiler_api
libcublas
libcufft
libcurand
libcusolver
libcusparse
# Missing:
# cusparselt
];
cudatoolkit-joined = symlinkJoin {
name = "cudatoolkit-joined-${cudaPackages.cudaVersion}";
paths = outpaths ++ lib.concatMap (f: lib.map f outpaths) [lib.getLib lib.getDev (lib.getOutput "static") (lib.getOutput "stubs")];
paths =
outpaths
++ lib.concatMap (f: lib.map f outpaths) [
lib.getLib
lib.getDev
(lib.getOutput "static")
(lib.getOutput "stubs")
];
};
in
buildPythonPackage rec {
@ -47,6 +63,8 @@ buildPythonPackage rec {
disabled = pythonOlder "3.7";
stdenv = cudaPackages.backendStdenv;
src = fetchFromGitHub {
owner = "cupy";
repo = "cupy";
@ -55,14 +73,6 @@ buildPythonPackage rec {
fetchSubmodules = true;
};
patches = [
(fetchpatch {
url =
"https://github.com/cfhammill/cupy/commit/67526c756e4a0a70f0420bf0e7f081b8a35a8ee5.patch";
hash = "sha256-WZgexBdM9J0ep5s+9CGZriVq0ZidCRccox+g0iDDywQ=";
})
];
# See https://docs.cupy.dev/en/v10.2.0/reference/environment.html. Seting both
# CUPY_NUM_BUILD_JOBS and CUPY_NUM_NVCC_THREADS to NIX_BUILD_CORES results in
# a small amount of thrashing but it turns out there are a large number of
@ -118,7 +128,10 @@ buildPythonPackage rec {
homepage = "https://cupy.chainer.org/";
changelog = "https://github.com/cupy/cupy/releases/tag/v${version}";
license = licenses.mit;
platforms = [ "x86_64-linux" ];
platforms = [
"aarch64-linux"
"x86_64-linux"
];
maintainers = with maintainers; [ hyphon81 ];
};
}

View File

@ -0,0 +1,52 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
pdm-backend,
confusable-homoglyphs,
coverage,
django,
}:
buildPythonPackage rec {
pname = "django-registration";
version = "5.1.0";
pyproject = true;
src = fetchFromGitHub {
owner = "ubernostrum";
repo = "django-registration";
tag = version;
hash = "sha256-02kAZXxzTdLBvgff+WNUww2k/yGqxIG5gv8gXy9z7KE=";
};
build-system = [ pdm-backend ];
dependencies = [
confusable-homoglyphs
];
nativeCheckInputs = [
coverage
django
];
installCheckPhase = ''
runHook preInstallCheck
DJANGO_SETTINGS_MODULE=tests.settings python -m coverage run --source django_registration runtests.py
runHook postInstallCheck
'';
pythonImportsCheck = [ "django_registration" ];
meta = {
changelog = "https://github.com/ubernostrum/django-registration/blob/${version}/docs/changelog.rst";
description = "User registration app for Django";
homepage = "https://django-registration.readthedocs.io/en/${version}/";
downloadPage = "https://github.com/ubernostrum/django-registration";
license = lib.licenses.bsd3;
maintainers = [ lib.maintainers.l0b0 ];
};
}

View File

@ -0,0 +1,46 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
pytestCheckHook,
python-dateutil,
pythonOlder,
setuptools,
sphinx,
sphinxcontrib-programoutput,
}:
buildPythonPackage rec {
pname = "idstools";
version = "0.6.5";
pyproject = true;
disabled = pythonOlder "3.11";
src = fetchFromGitHub {
owner = "jasonish";
repo = "py-idstools";
tag = version;
hash = "sha256-sDar3piE9elMKQ6sg+gUw95Rr/RJOSCfV0VFiBURNg4=";
};
build-system = [ setuptools ];
dependencies = [
python-dateutil
sphinx
sphinxcontrib-programoutput
];
nativeCheckInputs = [ pytestCheckHook ];
pythonImportsCheck = [ "idstools" ];
meta = {
description = "Module to work with Snort and Suricata Rule and Event";
homepage = "https://github.com/jasonish/py-idstools";
changelog = "https://github.com/jasonish/py-idstools/releases/tag/${version}";
license = lib.licenses.bsd2;
maintainers = with lib.maintainers; [ fab ];
};
}

View File

@ -78,6 +78,10 @@ buildPythonPackage rec {
# Requires unpackaged `vertexai`
"test_json_preserves_description_of_non_english_characters_in_json_mode"
# Checks magic values and this fails on Python 3.13
"test_raw_base64_autodetect_jpeg"
"test_raw_base64_autodetect_png"
];
disabledTestPaths = [

View File

@ -37,7 +37,7 @@
buildPythonPackage rec {
pname = "litellm";
version = "1.59.7";
version = "1.59.8";
pyproject = true;
disabled = pythonOlder "3.8";
@ -46,7 +46,7 @@ buildPythonPackage rec {
owner = "BerriAI";
repo = "litellm";
tag = "v${version}";
hash = "sha256-pz1dHvI01repDyyft/sjwhAYcDyFdv9DDYHgq546v1Q=";
hash = "sha256-2OkREmgs+r+vco1oEVgp5nq7cfwIAlMAh0FL2ceO88Y=";
};
build-system = [ poetry-core ];

View File

@ -227,7 +227,7 @@ buildPythonPackage rec {
# AssertionError: assert ResourceWarning not in [<class 'ResourceWarning'>, <class 'ResourceWarning'>]
"test_delete_object_with_version"
# KeyError beucase of ap-southeast-5-apse5-az
# KeyError because of ap-southeast-5-apse5-az
"test_zoneId_in_availability_zones"
# Parameter validation fails

View File

@ -0,0 +1,41 @@
{
aiohttp,
buildPythonPackage,
fetchFromGitHub,
lib,
setuptools,
websockets,
}:
buildPythonPackage rec {
pname = "pyhomee";
version = "1.2.5";
pyproject = true;
src = fetchFromGitHub {
owner = "Taraman17";
repo = "pyHomee";
tag = "v${version}";
hash = "sha256-cwiV2GvoWeFQ4YrwwHW7ZHk2ZjvBKSAff4xY7+iUpAk=";
};
build-system = [ setuptools ];
dependencies = [
aiohttp
websockets
];
pythonImportsCheck = [ "pyHomee" ];
# upstream has no tests
doCheck = false;
meta = {
changelog = "https://github.com/Taraman17/pyHomee/blob/${src.tag}/CHANGELOG.md";
description = "Python library to interact with homee";
homepage = "https://github.com/Taraman17/pyHomee";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ dotlambda ];
};
}

View File

@ -1,5 +1,6 @@
{
lib,
stdenv,
buildPythonPackage,
pythonOlder,
pythonAtLeast,
@ -71,15 +72,30 @@ buildPythonPackage rec {
inherit pname version;
format = "wheel";
disabled = pythonOlder "3.10" || pythonAtLeast "3.13";
disabled = pythonOlder "3.9" || pythonAtLeast "3.13";
src =
let
pyShortVersion = "cp${builtins.replaceStrings [ "." ] [ "" ] python.pythonVersion}";
binary-hashes = {
cp310 = "sha256-OTLW2zqJgsUZbbCM9W4u0L9QuFaFCM/khr6N5jui2V0=";
cp311 = "sha256-//XpzFpTgV07WGomHjS9D+8cMkss3tTJuOeQ4ePcOZc=";
cp312 = "sha256-PXassHD6i9Tr2wEazfoiu4m9vps1+3iuxZgdt26sK2A=";
platforms = {
aarch64-linux = "manylinux2014_aarch64";
x86_64-linux = "manylinux2014_x86_64";
};
# hashes retrieved via the following command
# curl https://pypi.org/pypi/ray/${version}/json | jq -r '.urls[] | "\(.digests.sha256) \(.filename)"'
hashes = {
aarch64-linux = {
cp39 = "782f29c8d743304fb3b67ed825db6caf5e5bd9263d628a6ff67a61bccde9f176";
cp310 = "fbb2cf4a86f4705faea6334356faa4dc7f454210e6eb085d63b7f1ae6e9c12e1";
cp311 = "68c9cc50af0dfafa78e5047890018cf3115fae8702ab083ac78b59b349989d45";
cp312 = "c9712ee4c52b7764b2ec9c693419ffde1313dd79cb186173dae6e25db44993de";
};
x86_64-linux = {
cp39 = "fe837e717a642a648f6fa8cc285e3ccc6782d126b8af793a25903fa3ac8d5c22";
cp310 = "3932d6db3a8982c5196db08cf56e2ed0bf50b8568508cfe486be8de63ba2d95d";
cp311 = "fff5e9cc5a53815d3b586a261e34bd0fef1c324b2cded4c9b8e790e1e3dc3997";
cp312 = "3d76acb070fa8bd4ebdb011acdfa22bb89bdbe9b35fb78aec5981db76eac2b60";
};
};
in
fetchPypi {
@ -87,8 +103,8 @@ buildPythonPackage rec {
dist = pyShortVersion;
python = pyShortVersion;
abi = pyShortVersion;
platform = "manylinux2014_x86_64";
hash = binary-hashes.${pyShortVersion} or { };
platform = platforms.${stdenv.hostPlatform.system} or { };
sha256 = hashes.${stdenv.hostPlatform.system}.${pyShortVersion} or { };
};
nativeBuildInputs = [
@ -192,6 +208,9 @@ buildPythonPackage rec {
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ billhuang ];
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
platforms = [ "x86_64-linux" ];
platforms = [
"aarch64-linux"
"x86_64-linux"
];
};
}

View File

@ -31,22 +31,22 @@ let
owner = "mpaland";
repo = "printf";
name = "printf";
rev = "v4.0.0";
tag = "v4.0.0";
sha256 = "sha256-tgLJNJw/dJGQMwCmfkWNBvHB76xZVyyfVVplq7aSJnI=";
};
in
buildPythonPackage rec {
pname = "scalene";
version = "1.5.49";
version = "1.5.51";
pyproject = true;
disabled = pythonOlder "3.9";
src = fetchFromGitHub {
owner = "plasma-umass";
repo = "scalene";
rev = "v${version}";
hash = "sha256-Ivce90+W9NBMQjebj3zCB5eqDJydT8OTPYy4fjbybgI=";
tag = "v${version}";
hash = "sha256-507auU1uy3StmDWruwd/sgJDpV1WhbneSj/bTxUuAN0=";
};
patches = [
@ -109,5 +109,15 @@ buildPythonPackage rec {
mainProgram = "scalene";
license = licenses.asl20;
maintainers = with maintainers; [ sarahec ];
badPlatforms = [
# The scalene doesn't seem to account for arm64 linux
"aarch64-linux"
# On darwin, builds 1) assume aarch64 and 2) mistakenly compile one part as
# x86 and the other as arm64 then tries to link them into a single binary
# which fails.
"x86_64-darwin"
"aarch64-darwin"
];
};
}

View File

@ -150,6 +150,8 @@ let
supportedCudaCapabilities = lists.intersectLists cudaFlags.cudaCapabilities supportedTorchCudaCapabilities;
unsupportedCudaCapabilities = lists.subtractLists supportedCudaCapabilities cudaFlags.cudaCapabilities;
isCudaJetson = cudaSupport && cudaPackages.cudaFlags.isJetsonBuild;
# Use trivial.warnIf to print a warning if any unsupported GPU targets are specified.
gpuArchWarner =
supported: unsupported:
@ -456,6 +458,7 @@ buildPythonPackage rec {
cuda_nvcc
]
)
++ lib.optionals isCudaJetson [ cudaPackages.autoAddCudaCompatRunpath ]
++ lib.optionals rocmSupport [ rocmtoolkit_joined ];
buildInputs =

View File

@ -364,13 +364,13 @@
buildPythonPackage rec {
pname = "types-aiobotocore";
version = "2.18.0";
version = "2.19.0";
pyproject = true;
src = fetchPypi {
pname = "types_aiobotocore";
inherit version;
hash = "sha256-RRzsGwMbTYHDRKpZkCiplLmpRDQB4cxxYjgL0S15G5s=";
hash = "sha256-6WOAWT8fftyB+dl4bZbKaT2UG+APxlr3x1n5zyX8acc=";
};
build-system = [ setuptools ];

View File

@ -23,14 +23,14 @@
buildPythonPackage rec {
pname = "unstructured-inference";
version = "0.8.5";
version = "0.8.6";
format = "setuptools";
src = fetchFromGitHub {
owner = "Unstructured-IO";
repo = "unstructured-inference";
tag = version;
hash = "sha256-v5gYs6gXSDaGu7ygb4lCcg3kI96PHN6aPSYBMVVYtQk=";
hash = "sha256-m0gOireJlLgYZ1iETxObYvISUrnCCzdtWwjYU26czJs=";
};
propagatedBuildInputs =

View File

@ -21,13 +21,13 @@ else
params =
if lib.versionAtLeast ocaml.version "4.12" && !legacy then
rec {
version = "8.03.00";
version = "8.03.01";
src = fetchFromGitHub {
owner = "camlp5";
repo = "camlp5";
rev = version;
hash = "sha256-hu/279gBvUc7Z4jM6EHiar6Wm4vjkGXl+7bxowj+vlM=";
hash = "sha256-GnNSCfnizazMT5kgib7u5PIb2kWsnqpL33RsPEK4JvM=";
};
nativeBuildInputs = [

View File

@ -1,4 +1,6 @@
{
lib,
stdenv,
callPackage,
fetchpatch2,
openssl,
@ -14,28 +16,25 @@ let
in
buildNodejs {
inherit enableNpm;
version = "23.6.1";
sha256 = "fefa49dede8733018ada4e30f885808cc4e22167b8ae3233c6d6a23737aff76f";
patches = [
./configure-emulator.patch
./configure-armv6-vfpv2.patch
./disable-darwin-v8-system-instrumentation-node19.patch
./bypass-darwin-xcrun-node16.patch
./node-npm-build-npm-package-logic.patch
./use-correct-env-in-tests.patch
./bin-sh-node-run-v22.patch
version = "23.7.0";
sha256 = "8de192ef2fee2ee8a230dd8d0e9aee182ee9c9856ccdb5fd95188abe84f77242";
patches =
[
./configure-emulator.patch
./configure-armv6-vfpv2.patch
./disable-darwin-v8-system-instrumentation-node19.patch
./bypass-darwin-xcrun-node16.patch
./node-npm-build-npm-package-logic.patch
./use-correct-env-in-tests.patch
./bin-sh-node-run-v22.patch
# FIXME: remove after a minor point release
(fetchpatch2 {
url = "https://github.com/nodejs/node/commit/d0ff34f4b690ad49c86b6df8fd424f39d183e1a6.patch?full_index=1";
hash = "sha256-ezcCrg7UwK091pqYxXJn4ay9smQwsrYeMO/NBE7VaM8=";
})
# test-icu-env is failing on ICU 74.2
# FIXME: remove once https://github.com/nodejs/node/pull/56661 is included in a next release
(fetchpatch2 {
url = "https://github.com/nodejs/node/commit/a364ec1d1cbbd5a6d20ee54d4f8648dd7592ebcd.patch?full_index=1";
hash = "sha256-EL1NgCBzz5O1spwHgocLm5mkORAiqGFst0N6pc3JvFg=";
revert = true;
})
];
]
++ lib.optionals (!stdenv.buildPlatform.isDarwin) [
# test-icu-env is failing without the reverts
(fetchpatch2 {
url = "https://github.com/nodejs/node/commit/869d0cbca3b0b5e594b3254869a34d549664e089.patch?full_index=1";
hash = "sha256-BBBShQwU20TSY8GtPehQ9i3AH4ZKUGIr8O0bRsgrpNo=";
revert = true;
})
];
}

View File

@ -10,8 +10,8 @@ stdenv.mkDerivation rec {
inherit (zeroad-unwrapped) version;
src = fetchurl {
url = "http://releases.wildfiregames.com/0ad-${version}-alpha-unix-data.tar.xz";
sha256 = "sgDkhVj4goB5EOPGhlZ7ajliSNnUGAROz94JCwV3LX0=";
url = "http://releases.wildfiregames.com/0ad-${version}-unix-data.tar.xz";
hash = "sha256-PkiFWrjh74EnAzhGLIJwsBUhPxT14FSquSrXTV6lneo=";
};
installPhase = ''

View File

@ -0,0 +1,13 @@
diff --git a/libraries/build-source-libs.sh b/libraries/build-source-libs.sh
index 323260a5..da67b293 100755
--- a/libraries/build-source-libs.sh
+++ b/libraries/build-source-libs.sh
@@ -62,7 +62,7 @@ while [ "$#" -gt 0 ]; do
--with-system-cxxtest) with_system_cxxtest=true ;;
--with-system-nvtt) with_system_nvtt=true ;;
--with-system-mozjs) with_system_mozjs=true ;;
- --with-system-premake) with_system_mozjs=true ;;
+ --with-system-premake) with_system_premake=true ;;
--with-spirv-reflect) with_spirv_reflect=true ;;
-j*) JOBS="$1" ;;
*)

View File

@ -9,8 +9,8 @@
fmt,
libidn,
pkg-config,
spidermonkey_78,
boost183,
spidermonkey_115,
boost,
icu,
libxml2,
libpng,
@ -32,6 +32,8 @@
SDL2,
gloox,
nvidia-texture-tools,
premake5,
cxxtest,
freetype,
withEditor ? true,
wxGTK,
@ -40,28 +42,13 @@
# You can find more instructions on how to build 0ad here:
# https://trac.wildfiregames.com/wiki/BuildInstructions
let
# the game requires a special version 78.6.0 of spidermonkey, otherwise
# we get compilation errors. We override the src attribute of spidermonkey_78
# in order to reuse that declaration, while giving it a different source input.
spidermonkey_78_6 = spidermonkey_78.overrideAttrs (old: rec {
version = "78.6.0";
src = fetchurl {
url = "mirror://mozilla/firefox/releases/${version}esr/source/firefox-${version}esr.source.tar.xz";
sha256 = "0lyg65v380j8i2lrylwz8a5ya80822l8vcnlx3dfqpd3s6zzjsay";
};
patches = (old.patches or [ ]) ++ [
./spidermonkey-cargo-toml.patch
];
});
in
stdenv.mkDerivation rec {
pname = "0ad";
version = "0.0.26";
version = "0.27.0";
src = fetchurl {
url = "http://releases.wildfiregames.com/0ad-${version}-alpha-unix-build.tar.xz";
sha256 = "Lhxt9+MxLnfF+CeIZkz/w6eNO/YGBsAAOSdeHRPA7ks=";
url = "http://releases.wildfiregames.com/0ad-${version}-unix-build.tar.xz";
hash = "sha256-qpSFcAl1DV9h2/AWvBUOO9y9s6zfyK0gtzq4tD6aG6Y=";
};
nativeBuildInputs = [
@ -71,10 +58,8 @@ stdenv.mkDerivation rec {
];
buildInputs = [
spidermonkey_78_6
# boost 1.86 fails with the following error:
# error: 'boost::filesystem::wpath' {aka 'class boost::filesystem::path'} has no member named 'leaf'
boost183
spidermonkey_115
boost
icu
libxml2
libpng
@ -99,6 +84,8 @@ stdenv.mkDerivation rec {
libsodium
fmt
freetype
premake5
cxxtest
] ++ lib.optional withEditor wxGTK;
env.NIX_CFLAGS_COMPILE = toString [
@ -108,8 +95,6 @@ stdenv.mkDerivation rec {
"-I${SDL2}/include/SDL2"
"-I${fmt.dev}/include"
"-I${nvidia-texture-tools.dev}/include"
# TODO: drop with next update
"-Wno-error=implicit-function-declaration"
];
NIX_CFLAGS_LINK = toString [
@ -118,39 +103,34 @@ stdenv.mkDerivation rec {
patches = [
./rootdir_env.patch
# Fix build with libxml v2.12
# Fix build script when using system premake
# https://gitea.wildfiregames.com/0ad/0ad/pulls/7571
# FIXME: Remove with next package update
(fetchpatch {
name = "libxml-2.12-fix.patch";
url = "https://github.com/0ad/0ad/commit/d242631245edb66816ef9960bdb2c61b68e56cec.patch";
hash = "sha256-Ik8ThkewB7wyTPTI7Y6k88SqpWUulXK698tevfSBr6I=";
})
# Fix build with GCC 13
# FIXME: Remove with next package update
(fetchpatch {
name = "gcc-13-fix.patch";
url = "https://github.com/0ad/0ad/commit/093e1eb23519ab4a4633a999a555a58e4fd5343e.patch";
hash = "sha256-NuWO64narU1JID/F3cj7lJKjo96XR7gSW0w8I3/hhuw=";
})
# Fix build with miniupnpc 2.2.8
# https://github.com/0ad/0ad/pull/45
(fetchpatch2 {
url = "https://github.com/0ad/0ad/commit/1575580bbc5278576693f3fbbb32de0b306aa27e.patch?full_index=1";
hash = "sha256-iXiUYTJCWwJpb2U3P58jTV4OpyW6quofu8Jq6xNEq48=";
})
./fix-build-script.patch
];
configurePhase = ''
# Delete shipped libraries which we don't need.
rm -rf libraries/source/{enet,miniupnpc,nvtt,spidermonkey}
rm -rf libraries/source/{cxxtest-4.4,nvtt,premake-core,spidermonkey,spirv-reflect}
# Build remaining library dependencies (should be fcollada only)
pushd libraries
./build-source-libs.sh \
--with-system-cxxtest \
--with-system-nvtt \
--with-system-mozjs \
--with-system-premake \
-j$NIX_BUILD_CORES
popd
# Update Makefiles
pushd build/workspaces
./update-workspaces.sh \
--with-system-premake5 \
--with-system-cxxtest \
--with-system-nvtt \
--with-system-mozjs \
${lib.optionalString withEditor "--enable-atlas"} \
${lib.optionalString (!withEditor) "--without-atlas"} \
--bindir="$out"/bin \
--libdir="$out"/lib/0ad \
--without-tests \

View File

@ -1,15 +0,0 @@
diff --git a/Cargo.toml b/Cargo.toml
index 6f6199ab26..c3f92db9d8 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -68,8 +68,8 @@ panic = "abort"
libudev-sys = { path = "dom/webauthn/libudev-sys" }
packed_simd = { git = "https://github.com/hsivonen/packed_simd", rev="3541e3818fdc7c2a24f87e3459151a4ce955a67a" }
rlbox_lucet_sandbox = { git = "https://github.com/PLSysSec/rlbox_lucet_sandbox/", rev="d510da5999a744c563b0acd18056069d1698273f" }
-nix = { git = "https://github.com/shravanrn/nix/", branch = "r0.13.1", rev="4af6c367603869a30fddb5ffb0aba2b9477ba92e" }
-spirv_cross = { git = "https://github.com/kvark/spirv_cross", branch = "wgpu3", rev = "20191ad2f370afd6d247edcb9ff9da32d3bedb9c" }
+nix = { git = "https://github.com/shravanrn/nix/", branch = "r0.13.1" }
+spirv_cross = { git = "https://github.com/kvark/spirv_cross", branch = "wgpu3" }
# failure's backtrace feature might break our builds, see bug 1608157.
failure = { git = "https://github.com/badboy/failure", rev = "64af847bc5fdcb6d2438bec8a6030812a80519a5" }
failure_derive = { git = "https://github.com/badboy/failure", rev = "64af847bc5fdcb6d2438bec8a6030812a80519a5" }

View File

@ -8,13 +8,13 @@
buildHomeAssistantComponent rec {
owner = "mampfes";
domain = "epex_spot";
version = "2.3.9";
version = "3.0.0";
src = fetchFromGitHub {
owner = "mampfes";
repo = "ha_epex_spot";
tag = version;
hash = "sha256-PY3udPgvsaXdDRh4+NQmVlqhERswcMpaJTq5azaUFf4=";
hash = "sha256-UaPgf0861TaSgawjJCyNjs8hRE5L5vWnyoXENrzCfb4=";
};
dependencies = [

View File

@ -1,16 +1,16 @@
{ fetchurl }:
rec {
version = "1.8.13.1";
version = "1.8.13.2";
src = fetchurl {
url = "https://www.openafs.org/dl/openafs/${version}/openafs-${version}-src.tar.bz2";
hash = "sha256-eVc9fu/RzGUODFSd1oeiObxrGn7iys82KxoqOz9G/To=";
hash = "sha256-WatPYMuSXFd5yT4jNiEYbBIm1HcCOfsrVElC1Jzr2XY=";
};
srcs = [
src
(fetchurl {
url = "https://www.openafs.org/dl/openafs/${version}/openafs-${version}-doc.tar.bz2";
hash = "sha256-JwGqr0g1tanct8VISVOggiH63BOfrAVQ2kIukG5Xtcs=";
hash = "sha256-s8DVtbro3UIYmcoQDRpq4lhluAFiEsdFfg/J95GxU+Q=";
})
];
}

View File

@ -1,10 +1,10 @@
{
lib,
stdenv,
python39,
python3,
fetchFromGitHub,
fetchpatch,
withXmpp ? !stdenv.hostPlatform.isDarwin,
withXmpp ? false, # sleekxmpp doesn't support python 3.10, see https://github.com/dschep/ntfy/issues/266
withMatrix ? true,
withSlack ? true,
withEmoji ? true,
@ -13,15 +13,13 @@
}:
let
python = python39.override {
python = python3.override {
self = python;
packageOverrides = self: super: {
ntfy-webpush = self.callPackage ./webpush.nix { };
# databases, on which slack-sdk depends, is incompatible with SQLAlchemy 2.0
sqlalchemy = super.sqlalchemy_1_4;
django = super.django_3;
};
};
in
@ -38,40 +36,6 @@ python.pkgs.buildPythonApplication rec {
sha256 = "09f02cn4i1l2aksb3azwfb70axqhn7d0d0vl2r6640hqr74nc1cv";
};
nativeCheckInputs = with python.pkgs; [
mock
];
propagatedBuildInputs =
with python.pkgs;
(
[
requests
ruamel-yaml
appdirs
ntfy-webpush
]
++ (lib.optionals withXmpp [
sleekxmpp
dnspython
])
++ (lib.optionals withMatrix [
matrix-client
])
++ (lib.optionals withSlack [
slack-sdk
])
++ (lib.optionals withEmoji [
emoji
])
++ (lib.optionals withPid [
psutil
])
++ (lib.optionals withDbus [
dbus-python
])
);
patches = [
# Fix Slack integration no longer working.
# From https://github.com/dschep/ntfy/pull/229 - "Swap Slacker for Slack SDK"
@ -87,6 +51,23 @@ python.pkgs.buildPythonApplication rec {
url = "https://github.com/dschep/ntfy/commit/4128942bb7a706117e7154a50a73b88f531631fe.patch";
sha256 = "sha256-V8dIy/K957CPFQQS1trSI3gZOjOcVNQLgdWY7g17bRw=";
})
# Change getargspec to getfullargspec for python 3.11 compatibility
(fetchpatch {
url = "https://github.com/dschep/ntfy/commit/71be9766ea041d2df6ebbce2781f980eea002852.patch";
hash = "sha256-6OChaTj4g3gxVDScc/JksBISHuq+5fbNQregchSXYaQ=";
})
# Fix compatibility with Python 3.11
# https://github.com/dschep/ntfy/pull/271
(fetchpatch {
url = "https://github.com/dschep/ntfy/pull/271/commits/444b60bec7de474d029cac184e82885011dd1474.patch";
hash = "sha256-PKTu8cOpws1z6f1T4uIi2iCJAoAwu+X0Pe7XnHYtHuI=";
})
# Fix compatibility with Python 3.12
# https://github.com/dschep/ntfy/pull/271
(fetchpatch {
url = "https://github.com/dschep/ntfy/pull/271/commits/d49ab9f9dba4966a44b5f0c6911741edabd35f6b.patch";
hash = "sha256-qTUWMS8EXWYCK/ZL0Us7iJp62UIKwYT1BqDy59832ig=";
})
];
postPatch = ''
@ -95,13 +76,56 @@ python.pkgs.buildPythonApplication rec {
--replace "':sys_platform == \"darwin\"'" "'darwin'"
'';
checkPhase = ''
HOME=$(mktemp -d) ${python.interpreter} setup.py test
dependencies =
with python.pkgs;
(
[
requests
ruamel-yaml
appdirs
ntfy-webpush
]
++ lib.optionals withXmpp [
sleekxmpp
dnspython
]
++ lib.optionals withMatrix [
matrix-client
]
++ lib.optionals withSlack [
slack-sdk
]
++ lib.optionals withEmoji [
emoji
]
++ lib.optionals withPid [
psutil
]
++ lib.optionals withDbus [
dbus-python
]
);
nativeCheckInputs = with python.pkgs; [
mock
pytestCheckHook
];
disabledTests = [
"test_xmpp"
];
disabledTestPaths = [
"tests/test_xmpp.py"
];
preCheck = ''
export HOME=$(mktemp -d)
'';
meta = with lib; {
description = "Utility for sending notifications, on demand and when commands finish";
homepage = "http://ntfy.rtfd.org/";
homepage = "https://ntfy.rtfd.org/";
license = licenses.gpl3;
maintainers = with maintainers; [ kamilchm ];
mainProgram = "ntfy";

View File

@ -4,20 +4,17 @@
fetchurl,
}:
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
pname = "iperf";
version = "2.1.4";
version = "2.2.1";
src = fetchurl {
url = "mirror://sourceforge/iperf2/files/${pname}-${version}.tar.gz";
sha256 = "1yflnj2ni988nm0p158q8lnkiq2gn2chmvsglyn2gqmqhwp3jaq6";
url = "mirror://sourceforge/iperf2/files/iperf-${finalAttrs.version}.tar.gz";
hash = "sha256-dUqwp+KAM9vqgTCO9CS8ffTW4v4xtgzFNrYbUf772Ps=";
};
hardeningDisable = [ "format" ];
configureFlags = [ "--enable-fastsampling" ];
makeFlags = [ "AR:=$(AR)" ];
postInstall = ''
mv $out/bin/iperf $out/bin/iperf2
ln -s $out/bin/iperf2 $out/bin/iperf
@ -32,4 +29,4 @@ stdenv.mkDerivation rec {
# prioritize iperf3
priority = 10;
};
}
})

View File

@ -696,51 +696,51 @@ version = "0.2.1"
dependencies = ["akku-r7rs", "chez-srfi", "chibi-match", "lassik-unpack-assoc", "lassik-shell-quote"]
dev-dependencies = []
license = "isc"
url = "http://snow-fort.org/s/lassi.io/lassi/lassik/dockerfile/0.1/lassik-dockerfile-0.1.tgz"
sha256 = "7859d39d2928417c709c4f89f012fac1c1a95f2839a1a7d0ad870ba759dbea92"
url = "http://snow-fort.org/s/lassi.io/lassi/lassik/dockerfile/0.2/distfiles/lassik-dockerfile-0.2.tgz"
sha256 = "fbaa87155f3d5910af8bb6b1513464520a526990ca40ed43f423ed27c485c4a0"
source = "snow-fort"
synopsis = "Scheme DSL to build Dockerfiles"
version = "0.1.0"
version = "0.2.0"
[lassik-shell-quote]
dependencies = ["akku-r7rs", "chibi-match"]
dev-dependencies = []
license = "isc"
url = "http://snow-fort.org/s/lassi.io/lassi/lassik/shell-quote/0.1/lassik-shell-quote-0.1.tgz"
sha256 = "2bb3a0fa8ef30a5eea80fcea857392094b3a44548d95f400a3bbcf27d0332f0c"
url = "http://snow-fort.org/s/lassi.io/lassi/lassik/shell-quote/0.2/distfiles/lassik-shell-quote-0.2.tgz"
sha256 = "e985951f02a17d120e73a4e935a1aa9af9756e42ad72fe143cd5397a549dbc33"
source = "snow-fort"
synopsis = "Little Scheme DSL to build shell command lines"
version = "0.1.0"
synopsis = "Scheme DSL to build shell command lines"
version = "0.2.0"
[lassik-string-inflection]
dependencies = ["akku-r7rs"]
dev-dependencies = []
license = "isc"
url = "http://snow-fort.org/s/lassi.io/lassi/lassik/string-inflection/0.1.1/lassik-string-inflection-0.1.1.tgz"
sha256 = "d97f986bd6a97a090b307051caf6b8310e2c22a648e6023135db5f7085aaf404"
url = "http://snow-fort.org/s/lassi.io/lassi/lassik/string-inflection/0.2/distfiles/lassik-string-inflection-0.2.tgz"
sha256 = "c9ad9fe11d0c5243609382d365b4ae3d81b9177ddebcb47abe76aaf1a83352ff"
source = "snow-fort"
synopsis = "lisp-case under_score CapsUpper capsLower"
version = "0.1.1"
version = "0.2.0"
[lassik-trivial-tar-writer]
dependencies = ["akku-r7rs"]
dev-dependencies = []
license = "isc"
url = "http://snow-fort.org/s/lassi.io/lassi/lassik/trivial-tar-writer/0.1/lassik-trivial-tar-writer-0.1.tgz"
sha256 = "15528c2441923a84422ac2733802bfb355d9dffcc33deff55815d8aca0bea3b0"
url = "http://snow-fort.org/s/lassi.io/lassi/lassik/trivial-tar-writer/0.2/distfiles/lassik-trivial-tar-writer-0.2.tgz"
sha256 = "dcb512851622b17b7eb6e8bd868f78bb4bcabd33f480a9f7260970196bf4a568"
source = "snow-fort"
synopsis = "Simplest way to output uncompressed .tar file"
version = "0.1.0"
version = "0.2.0"
[lassik-unpack-assoc]
dependencies = ["akku-r7rs"]
dev-dependencies = []
license = "isc"
url = "http://snow-fort.org/s/lassi.io/lassi/lassik/unpack-assoc/0.1/lassik-unpack-assoc-0.1.tgz"
sha256 = "109c7ac9b0be03df61103b84491bfccf7460f27367bd5abac58cf486300ac63b"
url = "http://snow-fort.org/s/lassi.io/lassi/lassik/unpack-assoc/0.2/distfiles/lassik-unpack-assoc-0.2.tgz"
sha256 = "6e67c4e5c2f0756f38ae4b065c0bfe8dc86f0532373d899cdbff4fbcd9d18302"
source = "snow-fort"
synopsis = "Alist/hash-table destructuring case macros"
version = "0.1.0"
version = "0.2.0"
[lightweight-testing]
dependencies = ["akku-r7rs", "chibi-test"]
@ -1485,11 +1485,10 @@ version = "0.0.20150602"
dependencies = ["akku-r7rs", "chez-srfi"]
dev-dependencies = []
license = "noassertion"
url = "http://snow-fort.org/s/iki.fi/retropikzel/retropikzel/scgi/0.2.2/retropikzel-scgi-0.2.2.tgz"
sha256 = "976d44ef88574bcdacaaa87ae8983adbc34ef8ea90385eb1bfe5fda87f6d191f"
url = "http://snow-fort.org/s/iki.fi/retropikzel/retropikzel/scgi/0.3.0/retropikzel-scgi-0.3.0.tgz"
sha256 = "ef8fee9cf34f38a1929e7007a509dc321b35c26bc3e18d23619b9094e81eae52"
source = "snow-fort"
synopsis = "Portable Simple Common Gateway Interface implementation"
version = "0.2.2"
version = "0.3.0"
[robin-abbrev]
dependencies = ["akku-r7rs", "chez-srfi"]
@ -2430,11 +2429,11 @@ version = "1.0.0-alpha.0"
dependencies = ["chez-srfi"]
dev-dependencies = []
license = "gpl-3.0-or-later"
url = "https://archive.akkuscm.org/archive/pkg/c/chez-csv_2.0.1-alpha_repack.tar.xz"
sha256 = "f2ce71280c76e5c8dc5b20217287c85fb66093ead4bd7da97b8f51f7001dfbea"
url = "https://archive.akkuscm.org/archive/pkg/c/chez-csv_2.0.2-alpha_repack.tar.xz"
sha256 = "16741d2e98fcf78bb6e040fe853a1153229e897b2c410c831e752cc26bc50ade"
source = "akku"
synopsis = "Chez Scheme CSV library."
version = "2.0.1-alpha"
version = "2.0.2-alpha"
[chez-docs]
dependencies = ["chez-srfi"]
@ -2483,7 +2482,7 @@ license = "gpl-3.0-or-later"
url = "https://archive.akkuscm.org/archive/pkg/c/chez-scmutils_0.0.0-alpha.0_repack.tar.xz"
sha256 = "7b6f707f3e0d8fa7fdd46b7ba9e7773398544102943870fec3099348e1809035"
source = "akku"
synopsis = "A port of the ???MIT Scmutils??? library to Chez Scheme"
synopsis = "A port of the MIT Scmutils library to Chez Scheme"
version = "0.0.0-alpha.0"
[chez-sockets]
@ -2510,11 +2509,11 @@ version = "1.0.0-alpha.2"
dependencies = []
dev-dependencies = []
license = ["mit", "bsd-3-clause"]
url = "https://archive.akkuscm.org/archive/pkg/c/chez-srfi_0.0.0-akku.209.552cd37_repack.tar.xz"
sha256 = "f0f620f24a4765b85d3157b670e319d6cd30240bfc78f812af1f04cf6f8804e6"
url = "https://archive.akkuscm.org/archive/pkg/c/chez-srfi_0.0.0-akku.244.b424440_repack.tar.xz"
sha256 = "f4968e3d74c30d98297aaff3753b11225de45f99795cc2e3f6233e93f46d7c41"
source = "akku"
synopsis = "Portable SRFI collection"
version = "0.0.0-akku.209.552cd37"
version = "0.0.0-akku.244.b424440"
[chez-stats]
dependencies = ["chez-srfi"]
@ -2526,6 +2525,16 @@ source = "akku"
synopsis = "Read and write delimited text files, compute descriptive statistics, and generate random variates in Chez Scheme."
version = "0.1.6"
[chez-tk]
dependencies = ["thunderchez"]
dev-dependencies = []
license = "bsd-2-clause"
url = "https://archive.akkuscm.org/archive/pkg/c/chez-tk_1.8.2_repack.tar.xz"
sha256 = "6e71bac608970d9e0df3eb03f36d856c3490595a0f5e5debf53e71a5a7f16a07"
source = "akku"
synopsis = "A Chez Scheme Interface to the Tk GUI Toolkit"
version = "1.8.2"
[compression]
dependencies = ["chez-srfi", "hashing", "struct-pack"]
dev-dependencies = []
@ -2607,14 +2616,14 @@ synopsis = "FAT filesystem library"
version = "0.1.0"
[fs-partitions]
dependencies = ["struct-pack", "hashing"]
dev-dependencies = ["uuid"]
dependencies = ["struct-pack", "hashing", "uuid"]
dev-dependencies = []
license = "mit"
url = "https://archive.akkuscm.org/archive/pkg/f/fs-partitions_1.0.0-beta.0_repack.tar.xz"
sha256 = "ccf179be9ef0bfe43f216c30ece495fa501815fbe8a140f1ace4591dd5b44a4d"
url = "https://archive.akkuscm.org/archive/pkg/f/fs-partitions_1.0.1_repack.tar.xz"
sha256 = "1e12fd32c6c20b0d3147ae3bc9ae5e8e53333dba89fff8c84fcbf9e943827259"
source = "akku"
synopsis = "Disk partition table reader (MBR/GPT)"
version = "1.0.0-beta.0"
synopsis = "Disk partition table reader/writer (MBR/GPT)"
version = "1.0.1"
[gnuplot-pipe]
dependencies = ["chez-srfi"]
@ -2666,6 +2675,16 @@ source = "akku"
synopsis = "A bunch of scheme junk :)"
version = "0.0.0-akku.42.1370c75"
[image-formats]
dependencies = ["chez-srfi", "compression", "hashing"]
dev-dependencies = []
license = "mit"
url = "https://archive.akkuscm.org/archive/pkg/i/image-formats_0.1.0_repack.tar.xz"
sha256 = "72a692ccf929ff798e464de611c8d2c70ceb7a07eff93e48a56bc298d4261efa"
source = "akku"
synopsis = "Library for reading/writing various image formats"
version = "0.1.0"
[industria]
dependencies = ["chez-srfi", "hashing", "ip-address", "struct-pack"]
dev-dependencies = ["xitomatl", "r6rs-usocket"]
@ -3037,14 +3056,14 @@ synopsis = "Structured access to bytevector contents"
version = "1.0.6-akku.0"
[scheme-langserver]
dependencies = ["ufo-thread-pool", "ufo-threaded-function", "uuid", "chibi-pathname", "ufo-match", "arew-json", "slib-string-search", "chez-srfi"]
dependencies = ["ufo-try", "srfi-180", "ufo-thread-pool", "ufo-threaded-function", "uuid", "chibi-pathname", "ufo-match", "slib-string-search", "chez-srfi"]
dev-dependencies = []
license = "mit"
url = "https://archive.akkuscm.org/archive/pkg/s/scheme-langserver_1.2.1_repack.tar.xz"
sha256 = "2fe6450ff9907d1b32b9fa18b9b5799e5083fc0bf498a342788e8d5959f4372a"
url = "https://archive.akkuscm.org/archive/pkg/s/scheme-langserver_1.2.8_repack.tar.xz"
sha256 = "902f5d2132aeb66e9b244df45f0188e1c1eb14a93ed7906a2e44053c87e38cac"
source = "akku"
synopsis = "This package is a language server protocol implementation helping scheme programming."
version = "1.2.1"
version = "1.2.8"
[scheme-specs]
dependencies = ["chez-srfi"]
@ -3096,6 +3115,16 @@ source = "akku"
synopsis = "Portability and utility library"
version = "0.0.0-akku.509.1bfe3b8"
[srfi-180]
dependencies = ["chez-srfi"]
dev-dependencies = []
license = "mit"
url = "https://archive.akkuscm.org/archive/pkg/s/srfi-180_1.0.0-alpha.0_repack.tar.xz"
sha256 = "7a4682649ad97ffdca566b9e0736c67c7fcb7b3347887fbcf07ec19c7ff2c233"
source = "akku"
synopsis = "SRFI-180, a JSON library"
version = "1.0.0-alpha.0"
[struct-pack]
dependencies = []
dev-dependencies = ["chez-srfi"]
@ -3196,6 +3225,26 @@ source = "akku"
synopsis = "This package contains threaded-map, threaded-vector-map and such threaded functions for chez scheme."
version = "1.0.4"
[ufo-timer]
dependencies = ["ufo-thread-pool", "chez-srfi"]
dev-dependencies = []
license = "mit"
url = "https://archive.akkuscm.org/archive/pkg/u/ufo-timer_1.0.0_repack.tar.xz"
sha256 = "e145154e8edfbbc47662a4397b3332a1253dc3867e9e59bbf8dcbdcb41a15be5"
source = "akku"
synopsis = "This repository is a timer implementation based on Chez Scheme's thread mechanism."
version = "1.0.0"
[ufo-try]
dependencies = ["chez-srfi"]
dev-dependencies = []
license = "mit"
url = "https://archive.akkuscm.org/archive/pkg/u/ufo-try_1.0.0_repack.tar.xz"
sha256 = "37bab16e0893f771e5f51c005cbd2d8884bb0c07b163c563325acc2a73957f1c"
source = "akku"
synopsis = "try-except to handle potential exception"
version = "1.0.0"
[uuid]
dependencies = ["hashing", "industria", "struct-pack", "chez-srfi"]
dev-dependencies = []
@ -3366,6 +3415,16 @@ source = "akku"
synopsis = "xUnit test utility"
version = "0.0.0-akku.21.0b4ede2"
[xyz-modem]
dependencies = ["chez-srfi", "hashing"]
dev-dependencies = []
license = "mit"
url = "https://archive.akkuscm.org/archive/pkg/x/xyz-modem_0.0.1_repack.tar.xz"
sha256 = "97ac3c51936f5a7b4a45a954424949b119eb7f84a65196b49a479f1301dfd764"
source = "akku"
synopsis = "This library should contain a x/y/z-modem protocols"
version = "0.0.1"
[yxskaft]
dependencies = ["r6rs-pffi", "struct-pack"]
dev-dependencies = []

View File

@ -13,6 +13,7 @@ let
runTests = pkg: old: { doCheck = true; };
brokenOnAarch64 = _: lib.addMetaAttrs { broken = stdenv.hostPlatform.isAarch64; };
brokenOnx86_64Darwin = lib.addMetaAttrs { broken = stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64; };
brokenOnDarwin = lib.addMetaAttrs { broken = stdenv.hostPlatform.isDarwin; };
in
{
chez-srfi = joinOverrides [
@ -23,12 +24,10 @@ in
time.sps
tables-test.ikarus.sps
lazy.sps
pipeline-operators.sps
'
'';
})
# nothing builds on ARM Macs because of this
brokenOnAarch64
];
akku-r7rs = pkg: old: {
@ -74,6 +73,7 @@ in
# broken tests
xitomatl = skipTests;
ufo-threaded-function = skipTests;
ufo-try = skipTests;
# unsupported schemes, it seems.
loko-srfi = broken;
@ -83,7 +83,7 @@ in
# system-specific:
# scheme-langserver doesn't work because of this
ufo-thread-pool = brokenOnx86_64Darwin;
ufo-thread-pool = brokenOnDarwin;
# broken everywhere:
chibi-math-linalg = broken;

View File

@ -411,6 +411,7 @@ mapAliases {
fit-trackee = fittrackee; # added 2024-09-03
flashrom-stable = flashprog; # Added 2024-03-01
flatbuffers_2_0 = flatbuffers; # Added 2022-05-12
flatcam = throw "flatcam has been removed because it is unmaintained since 2022 and doesn't support Python > 3.10"; # Added 2025-01-25
flutter313 = throw "flutter313 has been removed because it isn't updated anymore, and no packages in nixpkgs use it. If you still need it, use flutter.mkFlutter to get a custom version"; # Added 2024-10-05
flutter316 = throw "flutter316 has been removed because it isn't updated anymore, and no packages in nixpkgs use it. If you still need it, use flutter.mkFlutter to get a custom version"; # Added 2024-10-05
flutter322 = throw "flutter322 has been removed because it isn't updated anymore, and no packages in nixpkgs use it. If you still need it, use flutter.mkFlutter to get a custom version"; # Added 2024-10-05
@ -1500,6 +1501,7 @@ mapAliases {
webkitgtk = lib.warnOnInstantiate "Explicitly set the ABI version of 'webkitgtk'" webkitgtk_4_0;
webmetro = throw "'webmetro' has been removed due to lack of upstream maintenance"; # Added 2025-01-25
wg-bond = throw "'wg-bond' has been removed due to lack of upstream maintenance"; # Added 2025-01-25
whatsapp-for-linux = wasistlos; # Added 2025-01-30
wineWayland = wine-wayland;
win-virtio = virtio-win; # Added 2023-10-17
wireguard-vanity-address = throw "'wireguard-vanity-address' has been removed due to lack of upstream maintenance"; # Added 2025-01-26

View File

@ -17237,8 +17237,6 @@ with pkgs;
degate = libsForQt5.callPackage ../applications/science/electronics/degate { };
flatcam = python39.pkgs.callPackage ../applications/science/electronics/flatcam { };
geda = callPackage ../applications/science/electronics/geda {
guile = guile_2_2;
};

View File

@ -2838,8 +2838,7 @@ self: super: with self; {
cufflinks = callPackage ../development/python-modules/cufflinks { };
cupy = callPackage ../development/python-modules/cupy {
# cupy 12.2.0 possibly incompatible with cutensor 2.0 that comes with cudaPackages_12
cudaPackages = pkgs.cudaPackages_11.overrideScope (cu-fi: _: {
cudaPackages = pkgs.cudaPackages.overrideScope (cu-fi: _: {
# CuDNN 9 is not supported:
# https://github.com/cupy/cupy/issues/8215
cudnn = cu-fi.cudnn_8_9;
@ -3627,6 +3626,8 @@ self: super: with self; {
django-q2 = callPackage ../development/python-modules/django-q2 { };
django-registration = callPackage ../development/python-modules/django-registration { };
django-scheduler = callPackage ../development/python-modules/django-scheduler { };
django-scim2 = callPackage ../development/python-modules/django-scim2 { };
@ -6241,6 +6242,8 @@ self: super: with self; {
idna-ssl = callPackage ../development/python-modules/idna-ssl { };
idstools = callPackage ../development/python-modules/idstools { };
ifaddr = callPackage ../development/python-modules/ifaddr { };
ifconfig-parser = callPackage ../development/python-modules/ifconfig-parser { };
@ -11965,6 +11968,8 @@ self: super: with self; {
pyhocon = callPackage ../development/python-modules/pyhocon { };
pyhomee = callPackage ../development/python-modules/pyhomee { };
pyhomematic = callPackage ../development/python-modules/pyhomematic { };
pyhomepilot = callPackage ../development/python-modules/pyhomepilot { };