Merge master into haskell-updates

This commit is contained in:
sternenseemann 2024-05-25 22:54:26 +02:00
commit 741dfd28b9
186 changed files with 4215 additions and 6426 deletions

View File

@ -4580,9 +4580,14 @@
github = "DataHearth"; github = "DataHearth";
githubId = 28595242; githubId = 28595242;
name = "DataHearth"; name = "DataHearth";
keys = [{ keys = [
fingerprint = "A129 2547 0298 BFEE 7EE0 92B3 946E 2D0C 410C 7B3D"; {
}]; fingerprint = "A129 2547 0298 BFEE 7EE0 92B3 946E 2D0C 410C 7B3D";
}
{
fingerprint = "FFC4 92C1 5320 B05D 0F8D 7D58 ABF6 737C 6339 6D35";
}
];
}; };
davegallant = { davegallant = {
name = "Dave Gallant"; name = "Dave Gallant";

View File

@ -112,6 +112,7 @@ nvim-nio,,,,,,mrcjkb
pathlib.nvim,,,,,, pathlib.nvim,,,,,,
penlight,,,,,,alerque penlight,,,,,,alerque
plenary.nvim,https://raw.githubusercontent.com/nvim-lua/plenary.nvim/master/plenary.nvim-scm-1.rockspec,,,,5.1, plenary.nvim,https://raw.githubusercontent.com/nvim-lua/plenary.nvim/master/plenary.nvim-scm-1.rockspec,,,,5.1,
psl,,,,0.3,,
rapidjson,,,,,, rapidjson,,,,,,
rest.nvim,,,,,5.1,teto rest.nvim,,,,,5.1,teto
rocks.nvim,,,,,,mrcjkb rocks.nvim,,,,,,mrcjkb

1 name rockspec ref server version luaversion maintainers
112 pathlib.nvim
113 penlight alerque
114 plenary.nvim https://raw.githubusercontent.com/nvim-lua/plenary.nvim/master/plenary.nvim-scm-1.rockspec 5.1
115 psl 0.3
116 rapidjson
117 rest.nvim 5.1 teto
118 rocks.nvim mrcjkb

View File

@ -16,6 +16,11 @@
nvimpager settings: user commands in `-c` and `--cmd` now override the nvimpager settings: user commands in `-c` and `--cmd` now override the
respective default settings because they are executed later. respective default settings because they are executed later.
- Legacy package `stalwart-mail_0_6` was dropped, please note the
[manual upgrade process](https://github.com/stalwartlabs/mail-server/blob/main/UPGRADING.md)
before changing the package to `pkgs.stalwart-mail` in
[`services.stalwart-mail.package`](#opt-services.stalwart-mail.package).
## Other Notable Changes {#sec-release-24.11-notable-changes} ## Other Notable Changes {#sec-release-24.11-notable-changes}
- Create the first release note entry in this section! - Create the first release note entry in this section!

View File

@ -1,7 +1,36 @@
# Amazon images # Amazon images
* The `create-amis.sh` script will be replaced by https://github.com/NixOS/amis which will regularly upload AMIs per NixOS channel bump. AMIs are regularly uploaded from Hydra. This automation lives in
https://github.com/NixOS/amis
* @arianvp is planning to drop zfs support
## How to upload an AMI for testing
If you want to upload an AMI from changes in a local nixpkgs checkout.
```bash
nix-build nixos/release.nix -A amazonImage
export AWS_REGION=us-west-2
export AWS_PROFILE=my-profile
nix run nixpkgs#upload-ami -- --image-info ./result/nix-support/image-info.json
```
## How to build your own NixOS config into an AMI
I suggest looking at https://github.com/nix-community/nixos-generators for a user-friendly interface.
```bash
nixos-generate -c ./my-config.nix -f amazon
export AWS_REGION=us-west-2
export AWS_PROFILE=my-profile
nix run github:NixOS/amis#upload-ami -- --image-info ./result/nix-support/image-info.json
```
## Roadmap
* @arianvp is planning to drop zfs support unless someone else picks it up
* @arianvp is planning to rewrite the image builder to use the repart-based image builder. * @arianvp is planning to rewrite the image builder to use the repart-based image builder.
* @arianvp is planning to perhaps rewrite `upload-ami` to use coldnsap
* @arianvp is planning to move `upload-ami` tooling into nixpkgs once it has stabilized. And only keep the Github Action in separate repo

View File

@ -1,368 +0,0 @@
#!/usr/bin/env nix-shell
#!nix-shell -p awscli -p jq -p qemu -i bash
# shellcheck shell=bash
#
# Future Deprecation?
# This entire thing should probably be replaced with a generic terraform config
# Uploads and registers NixOS images built from the
# <nixos/release.nix> amazonImage attribute. Images are uploaded and
# registered via a home region, and then copied to other regions.
# The home region requires an s3 bucket, and an IAM role named "vmimport"
# (by default) with access to the S3 bucket. The name can be
# configured with the "service_role_name" variable. Configuration of the
# vmimport role is documented in
# https://docs.aws.amazon.com/vm-import/latest/userguide/vmimport-image-import.html
# set -x
set -euo pipefail
var () { true; }
# configuration
var ${state_dir:=$HOME/amis/ec2-images}
var ${home_region:=eu-west-1}
var ${bucket:=nixos-amis}
var ${service_role_name:=vmimport}
# Output of the command:
# $ nix-shell -I nixpkgs=. -p awscli --run 'aws ec2 describe-regions --region us-east-1 --all-regions --query "Regions[].{Name:RegionName}" --output text | sort | sed -e s/^/\ \ /'
var ${regions:=
af-south-1
ap-east-1
ap-northeast-1
ap-northeast-2
ap-northeast-3
ap-south-1
ap-south-2
ap-southeast-1
ap-southeast-2
ap-southeast-3
ap-southeast-4
ca-central-1
eu-central-1
eu-central-2
eu-north-1
eu-south-1
eu-south-2
eu-west-1
eu-west-2
eu-west-3
il-central-1
me-central-1
me-south-1
sa-east-1
us-east-1
us-east-2
us-west-1
us-west-2
}
regions=($regions)
log() {
echo "$@" >&2
}
if [ "$#" -ne 1 ]; then
log "Usage: ./upload-amazon-image.sh IMAGE_OUTPUT"
exit 1
fi
# result of the amazon-image from nixos/release.nix
store_path=$1
if [ ! -e "$store_path" ]; then
log "Store path: $store_path does not exist, fetching..."
nix-store --realise "$store_path"
fi
if [ ! -d "$store_path" ]; then
log "store_path: $store_path is not a directory. aborting"
exit 1
fi
read_image_info() {
if [ ! -e "$store_path/nix-support/image-info.json" ]; then
log "Image missing metadata"
exit 1
fi
jq -r "$1" "$store_path/nix-support/image-info.json"
}
# We handle a single image per invocation, store all attributes in
# globals for convenience.
zfs_disks=$(read_image_info .disks)
is_zfs_image=
if jq -e .boot <<< "$zfs_disks"; then
is_zfs_image=1
zfs_boot=".disks.boot"
fi
image_label="$(read_image_info .label)${is_zfs_image:+-ZFS}"
image_system=$(read_image_info .system)
image_files=( $(read_image_info ".disks.root.file") )
image_logical_bytes=$(read_image_info "${zfs_boot:-.disks.root}.logical_bytes")
if [[ -n "$is_zfs_image" ]]; then
image_files+=( $(read_image_info .disks.boot.file) )
fi
# Derived attributes
image_logical_gigabytes=$(((image_logical_bytes-1)/1024/1024/1024+1)) # Round to the next GB
case "$image_system" in
aarch64-linux)
amazon_arch=arm64
;;
x86_64-linux)
amazon_arch=x86_64
;;
*)
log "Unknown system: $image_system"
exit 1
esac
image_name="NixOS-${image_label}-${image_system}"
image_description="NixOS ${image_label} ${image_system}"
log "Image Details:"
log " Name: $image_name"
log " Description: $image_description"
log " Size (gigabytes): $image_logical_gigabytes"
log " System: $image_system"
log " Amazon Arch: $amazon_arch"
read_state() {
local state_key=$1
local type=$2
cat "$state_dir/$state_key.$type" 2>/dev/null || true
}
write_state() {
local state_key=$1
local type=$2
local val=$3
mkdir -p "$state_dir"
echo "$val" > "$state_dir/$state_key.$type"
}
wait_for_import() {
local region=$1
local task_id=$2
local state snapshot_id
log "Waiting for import task $task_id to be completed"
while true; do
read -r state message snapshot_id < <(
aws ec2 describe-import-snapshot-tasks --region "$region" --import-task-ids "$task_id" | \
jq -r '.ImportSnapshotTasks[].SnapshotTaskDetail | "\(.Status) \(.StatusMessage) \(.SnapshotId)"'
)
log " ... state=$state message=$message snapshot_id=$snapshot_id"
case "$state" in
active)
sleep 10
;;
completed)
echo "$snapshot_id"
return
;;
*)
log "Unexpected snapshot import state: '${state}'"
log "Full response: "
aws ec2 describe-import-snapshot-tasks --region "$region" --import-task-ids "$task_id" >&2
exit 1
;;
esac
done
}
wait_for_image() {
local region=$1
local ami_id=$2
local state
log "Waiting for image $ami_id to be available"
while true; do
read -r state < <(
aws ec2 describe-images --image-ids "$ami_id" --region "$region" | \
jq -r ".Images[].State"
)
log " ... state=$state"
case "$state" in
pending)
sleep 10
;;
available)
return
;;
*)
log "Unexpected AMI state: '${state}'"
exit 1
;;
esac
done
}
make_image_public() {
local region=$1
local ami_id=$2
wait_for_image "$region" "$ami_id"
log "Making image $ami_id public"
aws ec2 modify-image-attribute \
--image-id "$ami_id" --region "$region" --launch-permission 'Add={Group=all}' >&2
}
upload_image() {
local region=$1
for image_file in "${image_files[@]}"; do
local aws_path=${image_file#/}
if [[ -n "$is_zfs_image" ]]; then
local suffix=${image_file%.*}
suffix=${suffix##*.}
fi
local state_key="$region.$image_label${suffix:+.${suffix}}.$image_system"
local task_id
task_id=$(read_state "$state_key" task_id)
local snapshot_id
snapshot_id=$(read_state "$state_key" snapshot_id)
local ami_id
ami_id=$(read_state "$state_key" ami_id)
if [ -z "$task_id" ]; then
log "Checking for image on S3"
if ! aws s3 ls --region "$region" "s3://${bucket}/${aws_path}" >&2; then
log "Image missing from aws, uploading"
aws s3 cp --region "$region" "$image_file" "s3://${bucket}/${aws_path}" >&2
fi
log "Importing image from S3 path s3://$bucket/$aws_path"
task_id=$(aws ec2 import-snapshot --role-name "$service_role_name" --disk-container "{
\"Description\": \"nixos-image-${image_label}-${image_system}\",
\"Format\": \"vhd\",
\"UserBucket\": {
\"S3Bucket\": \"$bucket\",
\"S3Key\": \"$aws_path\"
}
}" --region "$region" | jq -r '.ImportTaskId')
write_state "$state_key" task_id "$task_id"
fi
if [ -z "$snapshot_id" ]; then
snapshot_id=$(wait_for_import "$region" "$task_id")
write_state "$state_key" snapshot_id "$snapshot_id"
fi
done
if [ -z "$ami_id" ]; then
log "Registering snapshot $snapshot_id as AMI"
local block_device_mappings=(
"DeviceName=/dev/xvda,Ebs={SnapshotId=$snapshot_id,VolumeSize=$image_logical_gigabytes,DeleteOnTermination=true,VolumeType=gp3}"
)
if [[ -n "$is_zfs_image" ]]; then
local root_snapshot_id=$(read_state "$region.$image_label.root.$image_system" snapshot_id)
local root_image_logical_bytes=$(read_image_info ".disks.root.logical_bytes")
local root_image_logical_gigabytes=$(((root_image_logical_bytes-1)/1024/1024/1024+1)) # Round to the next GB
block_device_mappings+=(
"DeviceName=/dev/xvdb,Ebs={SnapshotId=$root_snapshot_id,VolumeSize=$root_image_logical_gigabytes,DeleteOnTermination=true,VolumeType=gp3}"
)
fi
local extra_flags=(
--root-device-name /dev/xvda
--sriov-net-support simple
--ena-support
--virtualization-type hvm
)
block_device_mappings+=("DeviceName=/dev/sdb,VirtualName=ephemeral0")
block_device_mappings+=("DeviceName=/dev/sdc,VirtualName=ephemeral1")
block_device_mappings+=("DeviceName=/dev/sdd,VirtualName=ephemeral2")
block_device_mappings+=("DeviceName=/dev/sde,VirtualName=ephemeral3")
ami_id=$(
aws ec2 register-image \
--name "$image_name" \
--description "$image_description" \
--region "$region" \
--architecture $amazon_arch \
--block-device-mappings "${block_device_mappings[@]}" \
--boot-mode $(read_image_info .boot_mode) \
"${extra_flags[@]}" \
| jq -r '.ImageId'
)
write_state "$state_key" ami_id "$ami_id"
fi
[[ -v PRIVATE ]] || make_image_public "$region" "$ami_id"
echo "$ami_id"
}
copy_to_region() {
local region=$1
local from_region=$2
local from_ami_id=$3
state_key="$region.$image_label.$image_system"
ami_id=$(read_state "$state_key" ami_id)
if [ -z "$ami_id" ]; then
log "Copying $from_ami_id to $region"
ami_id=$(
aws ec2 copy-image \
--region "$region" \
--source-region "$from_region" \
--source-image-id "$from_ami_id" \
--name "$image_name" \
--description "$image_description" \
| jq -r '.ImageId'
)
write_state "$state_key" ami_id "$ami_id"
fi
[[ -v PRIVATE ]] || make_image_public "$region" "$ami_id"
echo "$ami_id"
}
upload_all() {
home_image_id=$(upload_image "$home_region")
jq -n \
--arg key "$home_region.$image_system" \
--arg value "$home_image_id" \
'$ARGS.named'
for region in "${regions[@]}"; do
if [ "$region" = "$home_region" ]; then
continue
fi
copied_image_id=$(copy_to_region "$region" "$home_region" "$home_image_id")
jq -n \
--arg key "$region.$image_system" \
--arg value "$copied_image_id" \
'$ARGS.named'
done
}
upload_all | jq --slurp from_entries

View File

@ -7,28 +7,12 @@ let
configFormat = pkgs.formats.toml { }; configFormat = pkgs.formats.toml { };
configFile = configFormat.generate "stalwart-mail.toml" cfg.settings; configFile = configFormat.generate "stalwart-mail.toml" cfg.settings;
dataDir = "/var/lib/stalwart-mail"; dataDir = "/var/lib/stalwart-mail";
stalwartAtLeast = versionAtLeast cfg.package.version;
in { in {
options.services.stalwart-mail = { options.services.stalwart-mail = {
enable = mkEnableOption "the Stalwart all-in-one email server"; enable = mkEnableOption "the Stalwart all-in-one email server";
package = mkOption { package = mkPackageOption pkgs "stalwart-mail" { };
type = types.package;
description = ''
Which package to use for the Stalwart mail server.
::: {.note}
Upgrading from version 0.6.0 to version 0.7.0 or higher requires manual
intervention. See <https://github.com/stalwartlabs/mail-server/blob/main/UPGRADING.md>
for upgrade instructions.
:::
'';
default = pkgs.stalwart-mail_0_6;
defaultText = lib.literalExpression "pkgs.stalwart-mail_0_6";
example = lib.literalExpression "pkgs.stalwart-mail";
relatedPackages = [ "stalwart-mail_0_6" "stalwart-mail" ];
};
settings = mkOption { settings = mkOption {
inherit (configFormat) type; inherit (configFormat) type;
@ -44,17 +28,6 @@ in {
config = mkIf cfg.enable { config = mkIf cfg.enable {
warnings = lib.optionals (!stalwartAtLeast "0.7.0") [
''
Versions of stalwart-mail < 0.7.0 will get deprecated in NixOS 24.11.
Please set services.stalwart-mail.package to pkgs.stalwart-mail to
upgrade to the latest version.
Please note that upgrading to version >= 0.7 requires manual
intervention, see <https://github.com/stalwartlabs/mail-server/blob/main/UPGRADING.md>
for upgrade instructions.
''
];
# Default config: all local # Default config: all local
services.stalwart-mail.settings = { services.stalwart-mail.settings = {
global.tracing.method = mkDefault "stdout"; global.tracing.method = mkDefault "stdout";
@ -138,6 +111,6 @@ in {
}; };
meta = { meta = {
maintainers = with maintainers; [ happysalada pacien ]; maintainers = with maintainers; [ happysalada pacien onny ];
}; };
} }

View File

@ -8,7 +8,7 @@
settingsFormat = pkgs.formats.yaml {}; settingsFormat = pkgs.formats.yaml {};
configFile = settingsFormat.generate "config.yaml" cfg.settings; configFile = settingsFormat.generate "config.yaml" cfg.settings;
in { in {
meta.maintainers = [lib.maintainers.s1ls]; meta.maintainers = [lib.maintainers.sils];
options.services.invidious-router = { options.services.invidious-router = {
enable = lib.mkEnableOption "Enables the invidious-router service"; enable = lib.mkEnableOption "Enables the invidious-router service";

View File

@ -3,8 +3,8 @@
let let
inherit (lib) optionalString mkDefault mkIf mkOption mkEnableOption literalExpression; inherit (lib) optionalString mkDefault mkIf mkOption mkEnableOption literalExpression;
inherit (lib.types) nullOr attrsOf oneOf str int bool path package enum submodule; inherit (lib.types) nullOr attrsOf oneOf str int bool path package enum submodule;
inherit (lib.strings) concatMapStringsSep removePrefix toShellVars removeSuffix hasSuffix; inherit (lib.strings) concatLines removePrefix toShellVars removeSuffix hasSuffix;
inherit (lib.attrsets) attrValues genAttrs filterAttrs mapAttrs' nameValuePair; inherit (lib.attrsets) mapAttrsToList attrValues genAttrs filterAttrs mapAttrs' nameValuePair;
inherit (builtins) isInt isString toString typeOf; inherit (builtins) isInt isString toString typeOf;
cfg = config.services.firefly-iii; cfg = config.services.firefly-iii;
@ -21,18 +21,10 @@ let
(filterAttrs (n: v: hasSuffix "_FILE" n) cfg.settings); (filterAttrs (n: v: hasSuffix "_FILE" n) cfg.settings);
env-nonfile-values = filterAttrs (n: v: ! hasSuffix "_FILE" n) cfg.settings; env-nonfile-values = filterAttrs (n: v: ! hasSuffix "_FILE" n) cfg.settings;
envfile = pkgs.writeText "firefly-iii-env" ''
${toShellVars env-file-values}
${toShellVars env-nonfile-values}
'';
fileenv-func = '' fileenv-func = ''
cp --no-preserve=mode ${envfile} /tmp/firefly-iii-env
${concatMapStringsSep "\n"
(n: "${pkgs.replace-secret}/bin/replace-secret ${n} ${n} /tmp/firefly-iii-env")
(attrValues env-file-values)}
set -a set -a
. /tmp/firefly-iii-env ${toShellVars env-nonfile-values}
${concatLines (mapAttrsToList (n: v: "${n}=\"$(< ${v})\"") env-file-values)}
set +a set +a
''; '';
@ -41,15 +33,13 @@ let
${optionalString (cfg.settings.DB_CONNECTION == "sqlite") ${optionalString (cfg.settings.DB_CONNECTION == "sqlite")
"touch ${cfg.dataDir}/storage/database/database.sqlite"} "touch ${cfg.dataDir}/storage/database/database.sqlite"}
${artisan} migrate --seed --no-interaction --force ${artisan} package:discover
${artisan} firefly-iii:decrypt-all
${artisan} firefly-iii:upgrade-database ${artisan} firefly-iii:upgrade-database
${artisan} firefly-iii:correct-database
${artisan} firefly-iii:report-integrity
${artisan} firefly-iii:laravel-passport-keys ${artisan} firefly-iii:laravel-passport-keys
${artisan} cache:clear ${artisan} cache:clear
${artisan} view:cache
mv /tmp/firefly-iii-env /run/phpfpm/firefly-iii-env ${artisan} route:cache
${artisan} config:cache
''; '';
commonServiceConfig = { commonServiceConfig = {
@ -146,6 +136,7 @@ in {
virtualHost = mkOption { virtualHost = mkOption {
type = str; type = str;
default = "localhost";
description = '' description = ''
The hostname at which you wish firefly-iii to be served. If you have The hostname at which you wish firefly-iii to be served. If you have
enabled nginx using `services.firefly-iii.enableNginx` then this will enabled nginx using `services.firefly-iii.enableNginx` then this will
@ -170,14 +161,15 @@ in {
}; };
settings = mkOption { settings = mkOption {
default = {};
description = '' description = ''
Options for firefly-iii configuration. Refer to Options for firefly-iii configuration. Refer to
<https://github.com/firefly-iii/firefly-iii/blob/main/.env.example> for <https://github.com/firefly-iii/firefly-iii/blob/main/.env.example> for
details on supported values. All <option>_FILE values supported by details on supported values. All <option>_FILE values supported by
upstream are supported here. upstream are supported here.
APP_URL will be set by `services.firefly-iii.virtualHost`, do not APP_URL will be the same as `services.firefly-iii.virtualHost` if the
redefine it here. former is unset in `services.firefly-iii.settings`.
''; '';
example = literalExpression '' example = literalExpression ''
{ {
@ -192,7 +184,6 @@ in {
DB_PASSWORD_FILE = "/var/secrets/firefly-iii-mysql-password.txt; DB_PASSWORD_FILE = "/var/secrets/firefly-iii-mysql-password.txt;
} }
''; '';
default = {};
type = submodule { type = submodule {
freeformType = attrsOf (oneOf [str int bool]); freeformType = attrsOf (oneOf [str int bool]);
options = { options = {
@ -216,9 +207,9 @@ in {
}; };
DB_PORT = mkOption { DB_PORT = mkOption {
type = nullOr int; type = nullOr int;
default = if cfg.settings.DB_CONNECTION == "sqlite" then null default = if cfg.settings.DB_CONNECTION == "pgsql" then 5432
else if cfg.settings.DB_CONNECTION == "mysql" then 3306 else if cfg.settings.DB_CONNECTION == "mysql" then 3306
else 5432; else null;
defaultText = '' defaultText = ''
`null` if DB_CONNECTION is "sqlite", `3306` if "mysql", `5432` if "pgsql" `null` if DB_CONNECTION is "sqlite", `3306` if "mysql", `5432` if "pgsql"
''; '';
@ -227,6 +218,21 @@ in {
this value to be filled. this value to be filled.
''; '';
}; };
DB_HOST = mkOption {
type = str;
default = if cfg.settings.DB_CONNECTION == "pgsql" then "/run/postgresql"
else "localhost";
defaultText = ''
"localhost" if DB_CONNECTION is "sqlite" or "mysql", "/run/postgresql" if "pgsql".
'';
description = ''
The machine which hosts your database. This is left at the
default value for "mysql" because we use the "DB_SOCKET" option
to connect to a unix socket instead. "pgsql" requires that the
unix socket location be specified here instead of at "DB_SOCKET".
This option does not affect "sqlite".
'';
};
APP_KEY_FILE = mkOption { APP_KEY_FILE = mkOption {
type = path; type = path;
description = '' description = ''
@ -235,6 +241,20 @@ in {
/dev/urandom | base64)" > /path/to/key-file`. /dev/urandom | base64)" > /path/to/key-file`.
''; '';
}; };
APP_URL = mkOption {
type = str;
default = if cfg.virtualHost == "localhost" then "http://${cfg.virtualHost}"
else "https://${cfg.virtualHost}";
defaultText = ''
http(s)://''${config.services.firefly-iii.virtualHost}
'';
description = ''
The APP_URL used by firefly-iii internally. Please make sure this
URL matches the external URL of your Firefly III installation. It
is used to validate specific requests and to generate URLs in
emails.
'';
};
}; };
}; };
}; };
@ -242,12 +262,6 @@ in {
config = mkIf cfg.enable { config = mkIf cfg.enable {
services.firefly-iii = {
settings = {
APP_URL = cfg.virtualHost;
};
};
services.phpfpm.pools.firefly-iii = { services.phpfpm.pools.firefly-iii = {
inherit user group; inherit user group;
phpPackage = cfg.package.phpPackage; phpPackage = cfg.package.phpPackage;
@ -262,29 +276,27 @@ in {
} // cfg.poolConfig; } // cfg.poolConfig;
}; };
systemd.services.phpfpm-firefly-iii.serviceConfig = {
EnvironmentFile = "/run/phpfpm/firefly-iii-env";
ExecStartPost = "${pkgs.coreutils}/bin/rm /run/phpfpm/firefly-iii-env";
};
systemd.services.firefly-iii-setup = { systemd.services.firefly-iii-setup = {
after = [ "postgresql.service" "mysql.service" ];
requiredBy = [ "phpfpm-firefly-iii.service" ]; requiredBy = [ "phpfpm-firefly-iii.service" ];
before = [ "phpfpm-firefly-iii.service" ]; before = [ "phpfpm-firefly-iii.service" ];
serviceConfig = { serviceConfig = {
ExecStart = firefly-iii-maintenance; ExecStart = firefly-iii-maintenance;
RuntimeDirectory = "phpfpm"; RuntimeDirectory = "phpfpm";
RuntimeDirectoryPreserve = true; RuntimeDirectoryPreserve = true;
RemainAfterExit = true;
} // commonServiceConfig; } // commonServiceConfig;
unitConfig.JoinsNamespaceOf = "phpfpm-firefly-iii.service"; unitConfig.JoinsNamespaceOf = "phpfpm-firefly-iii.service";
restartTriggers = [ cfg.package ];
}; };
systemd.services.firefly-iii-cron = { systemd.services.firefly-iii-cron = {
after = [ "firefly-iii-setup.service" "postgresql.service" "mysql.service" ];
wants = [ "firefly-iii-setup.service" ];
description = "Daily Firefly III cron job"; description = "Daily Firefly III cron job";
script = '' serviceConfig = {
${fileenv-func} ExecStart = "${artisan} firefly-iii:cron";
${artisan} firefly-iii:cron } // commonServiceConfig;
'';
serviceConfig = commonServiceConfig;
}; };
systemd.timers.firefly-iii-cron = { systemd.timers.firefly-iii-cron = {
@ -295,6 +307,7 @@ in {
Persistent = true; Persistent = true;
}; };
wantedBy = [ "timers.target" ]; wantedBy = [ "timers.target" ];
restartTriggers = [ cfg.package ];
}; };
services.nginx = mkIf cfg.enableNginx { services.nginx = mkIf cfg.enableNginx {

View File

@ -1,14 +1,19 @@
import ./make-test-python.nix ({ lib, pkgs, ... }: { import ./make-test-python.nix ({ lib, ... }:
let
db-pass = "Test2Test2";
app-key = "TestTestTestTestTestTestTestTest";
in
{
name = "firefly-iii"; name = "firefly-iii";
meta.maintainers = [ lib.maintainers.savyajha ]; meta.maintainers = [ lib.maintainers.savyajha ];
nodes.machine = { config, ... }: { nodes.fireflySqlite = { config, ... }: {
environment.etc = { environment.etc = {
"firefly-iii-appkey".text = "TestTestTestTestTestTestTestTest"; "firefly-iii-appkey".text = app-key;
}; };
services.firefly-iii = { services.firefly-iii = {
enable = true; enable = true;
virtualHost = "http://localhost";
enableNginx = true; enableNginx = true;
settings = { settings = {
APP_KEY_FILE = "/etc/firefly-iii-appkey"; APP_KEY_FILE = "/etc/firefly-iii-appkey";
@ -18,9 +23,87 @@ import ./make-test-python.nix ({ lib, pkgs, ... }: {
}; };
}; };
nodes.fireflyPostgresql = { config, pkgs, ... }: {
environment.etc = {
"firefly-iii-appkey".text = app-key;
"postgres-pass".text = db-pass;
};
services.firefly-iii = {
enable = true;
enableNginx = true;
settings = {
APP_KEY_FILE = "/etc/firefly-iii-appkey";
LOG_CHANNEL = "stdout";
SITE_OWNER = "mail@example.com";
DB_CONNECTION = "pgsql";
DB_DATABASE = "firefly";
DB_USERNAME = "firefly";
DB_PASSWORD_FILE = "/etc/postgres-pass";
};
};
services.postgresql = {
enable = true;
package = pkgs.postgresql_15;
authentication = ''
local all postgres peer
local firefly firefly password
'';
initialScript = pkgs.writeText "firefly-init.sql" ''
CREATE USER "firefly" WITH LOGIN PASSWORD '${db-pass}';
CREATE DATABASE "firefly" WITH OWNER "firefly";
CREATE SCHEMA AUTHORIZATION firefly;
'';
};
};
nodes.fireflyMysql = { config, pkgs, ... }: {
environment.etc = {
"firefly-iii-appkey".text = app-key;
"mysql-pass".text = db-pass;
};
services.firefly-iii = {
enable = true;
enableNginx = true;
settings = {
APP_KEY_FILE = "/etc/firefly-iii-appkey";
LOG_CHANNEL = "stdout";
SITE_OWNER = "mail@example.com";
DB_CONNECTION = "mysql";
DB_DATABASE = "firefly";
DB_USERNAME = "firefly";
DB_PASSWORD_FILE = "/etc/mysql-pass";
DB_SOCKET = "/run/mysqld/mysqld.sock";
};
};
services.mysql = {
enable = true;
package = pkgs.mariadb;
initialScript = pkgs.writeText "firefly-init.sql" ''
create database firefly DEFAULT CHARACTER SET utf8mb4;
create user 'firefly'@'localhost' identified by '${db-pass}';
grant all on firefly.* to 'firefly'@'localhost';
'';
settings.mysqld.character-set-server = "utf8mb4";
};
};
testScript = '' testScript = ''
machine.wait_for_unit("phpfpm-firefly-iii.service") fireflySqlite.wait_for_unit("phpfpm-firefly-iii.service")
machine.wait_for_unit("nginx.service") fireflySqlite.wait_for_unit("nginx.service")
machine.succeed("curl -fvvv -Ls http://localhost/ | grep 'Firefly III'") fireflySqlite.succeed("curl -fvvv -Ls http://localhost/ | grep 'Firefly III'")
fireflySqlite.succeed("curl -fvvv -Ls http://localhost/v1/js/app.js")
fireflySqlite.succeed("systemctl start firefly-iii-cron.service")
fireflyPostgresql.wait_for_unit("phpfpm-firefly-iii.service")
fireflyPostgresql.wait_for_unit("nginx.service")
fireflyPostgresql.wait_for_unit("postgresql.service")
fireflyPostgresql.succeed("curl -fvvv -Ls http://localhost/ | grep 'Firefly III'")
fireflyPostgresql.succeed("systemctl start firefly-iii-cron.service")
fireflyMysql.wait_for_unit("phpfpm-firefly-iii.service")
fireflyMysql.wait_for_unit("nginx.service")
fireflyMysql.wait_for_unit("mysql.service")
fireflyMysql.succeed("curl -fvvv -Ls http://localhost/ | grep 'Firefly III'")
fireflyMysql.succeed("systemctl start firefly-iii-cron.service")
''; '';
}) })

View File

@ -1,147 +1,120 @@
# Rudimentary test checking that the Stalwart email server can: # Rudimentary test checking that the Stalwart email server can:
# - receive some message through SMTP submission, then # - receive some message through SMTP submission, then
# - serve this message through IMAP. # - serve this message through IMAP.
{
system ? builtins.currentSystem,
config ? { },
pkgs ? import ../../.. { inherit system config; },
lib ? pkgs.lib,
}:
let let
certs = import ./common/acme/server/snakeoil-certs.nix; certs = import ./common/acme/server/snakeoil-certs.nix;
domain = certs.domain; domain = certs.domain;
makeTest = import ./make-test-python.nix;
mkTestName =
pkg: "${pkg.pname}_${pkg.version}";
stalwartPackages = {
inherit (pkgs) stalwart-mail_0_6 stalwart-mail;
};
stalwartAtLeast = lib.versionAtLeast;
makeStalwartTest =
{
package,
name ? mkTestName package,
}:
makeTest {
inherit name;
meta.maintainers = with lib.maintainers; [
happysalada pacien onny
];
nodes.machine = { lib, ... }: { in import ./make-test-python.nix ({ lib, ... }: {
name = "stalwart-mail";
security.pki.certificateFiles = [ certs.ca.cert ]; nodes.main = { pkgs, ... }: {
security.pki.certificateFiles = [ certs.ca.cert ];
services.stalwart-mail = { services.stalwart-mail = {
enable = true;
settings = {
server.hostname = domain;
certificate."snakeoil" = {
cert = "%{file:${certs.${domain}.cert}}%";
private-key = "%{file:${certs.${domain}.key}}%";
};
server.tls = {
certificate = "snakeoil";
enable = true; enable = true;
inherit package; implicit = false;
settings = { };
server.hostname = domain;
# TODO: Remove backwards compatibility as soon as we drop legacy version 0.6.0 server.listener = {
certificate."snakeoil" = let "smtp-submission" = {
certPath = if stalwartAtLeast package.version "0.7.0" then "%{file://${certs.${domain}.cert}}%" else "file://${certs.${domain}.cert}"; bind = [ "[::]:587" ];
keyPath = if stalwartAtLeast package.version "0.7.0" then "%{file:${certs.${domain}.key}}%" else "file://${certs.${domain}.key}"; protocol = "smtp";
in { };
cert = certPath;
private-key = keyPath;
};
server.tls = { "imap" = {
certificate = "snakeoil"; bind = [ "[::]:143" ];
enable = true; protocol = "imap";
implicit = false;
};
server.listener = {
"smtp-submission" = {
bind = [ "[::]:587" ];
protocol = "smtp";
};
"imap" = {
bind = [ "[::]:143" ];
protocol = "imap";
};
};
session.auth.mechanisms = "[plain]";
session.auth.directory = "'in-memory'";
storage.directory = "in-memory";
session.rcpt.directory = "'in-memory'";
queue.outbound.next-hop = "'local'";
directory."in-memory" = {
type = "memory";
# TODO: Remove backwards compatibility as soon as we drop legacy version 0.6.0
principals = let
condition = if stalwartAtLeast package.version "0.7.0" then "class" else "type";
in builtins.map (p: p // { ${condition} = "individual"; }) [
{
name = "alice";
secret = "foobar";
email = [ "alice@${domain}" ];
}
{
name = "bob";
secret = "foobar";
email = [ "bob@${domain}" ];
}
];
};
}; };
}; };
environment.systemPackages = [ session.auth.mechanisms = "[plain]";
(pkgs.writers.writePython3Bin "test-smtp-submission" { } '' session.auth.directory = "'in-memory'";
from smtplib import SMTP storage.directory = "in-memory";
with SMTP('localhost', 587) as smtp: session.rcpt.directory = "'in-memory'";
smtp.starttls() queue.outbound.next-hop = "'local'";
smtp.login('alice', 'foobar')
smtp.sendmail(
'alice@${domain}',
'bob@${domain}',
"""
From: alice@${domain}
To: bob@${domain}
Subject: Some test message
This is a test message.
""".strip()
)
'')
(pkgs.writers.writePython3Bin "test-imap-read" { } ''
from imaplib import IMAP4
with IMAP4('localhost') as imap:
imap.starttls()
status, [caps] = imap.login('bob', 'foobar')
assert status == 'OK'
imap.select()
status, [ref] = imap.search(None, 'ALL')
assert status == 'OK'
[msgId] = ref.split()
status, msg = imap.fetch(msgId, 'BODY[TEXT]')
assert status == 'OK'
assert msg[0][1].strip() == b'This is a test message.'
'')
];
directory."in-memory" = {
type = "memory";
principals = [
{
class = "individual";
name = "alice";
secret = "foobar";
email = [ "alice@${domain}" ];
}
{
class = "individual";
name = "bob";
secret = "foobar";
email = [ "bob@${domain}" ];
}
];
};
}; };
testScript = ''
start_all()
machine.wait_for_unit("stalwart-mail.service")
machine.wait_for_open_port(587)
machine.wait_for_open_port(143)
machine.succeed("test-smtp-submission")
machine.succeed("test-imap-read")
'';
}; };
in
lib.mapAttrs (_: package: makeStalwartTest { inherit package; }) stalwartPackages environment.systemPackages = [
(pkgs.writers.writePython3Bin "test-smtp-submission" { } ''
from smtplib import SMTP
with SMTP('localhost', 587) as smtp:
smtp.starttls()
smtp.login('alice', 'foobar')
smtp.sendmail(
'alice@${domain}',
'bob@${domain}',
"""
From: alice@${domain}
To: bob@${domain}
Subject: Some test message
This is a test message.
""".strip()
)
'')
(pkgs.writers.writePython3Bin "test-imap-read" { } ''
from imaplib import IMAP4
with IMAP4('localhost') as imap:
imap.starttls()
status, [caps] = imap.login('bob', 'foobar')
assert status == 'OK'
imap.select()
status, [ref] = imap.search(None, 'ALL')
assert status == 'OK'
[msgId] = ref.split()
status, msg = imap.fetch(msgId, 'BODY[TEXT]')
assert status == 'OK'
assert msg[0][1].strip() == b'This is a test message.'
'')
];
};
testScript = /* python */ ''
main.wait_for_unit("stalwart-mail.service")
main.wait_for_open_port(587)
main.wait_for_open_port(143)
main.succeed("test-smtp-submission")
main.succeed("test-imap-read")
'';
meta = {
maintainers = with lib.maintainers; [ happysalada pacien onny ];
};
})

View File

@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
owner = "linux-speakup"; owner = "linux-speakup";
repo = "espeakup"; repo = "espeakup";
rev = "v${version}"; rev = "v${version}";
sha256 = "0lmjwafvfxy07zn18v3dzjwwpnid2xffgvy2dzlwkbns8gb60ds2"; hash = "sha256-Qjdg1kParsnpb8Lv51wXLdrLufxtbBTsP8B3t53islI=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -6,19 +6,19 @@
buildGoModule rec { buildGoModule rec {
pname = "optimism"; pname = "optimism";
version = "1.7.4"; version = "1.7.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ethereum-optimism"; owner = "ethereum-optimism";
repo = "optimism"; repo = "optimism";
rev = "op-node/v${version}"; rev = "op-node/v${version}";
hash = "sha256-220fnMJDgvdGJtN0XkKtqNP94KfbmN5qhghfjHJaAxQ="; hash = "sha256-LpkmNJqPe73qbTNvqxlDDTh9hD/H39ll3Rn2NEFEcg8=";
fetchSubmodules = true; fetchSubmodules = true;
}; };
subPackages = [ "op-node/cmd" "op-proposer/cmd" "op-batcher/cmd" ]; subPackages = [ "op-node/cmd" "op-proposer/cmd" "op-batcher/cmd" ];
vendorHash = "sha256-yG910xpk2MHCD2LHh7aD09KMCux1X252fOHCsyUc/ks="; vendorHash = "sha256-2eVwGWw/z6ct3PA8fC0rBwkNaICd20llVE/9essF95Q=";
buildInputs = [ buildInputs = [
libpcap libpcap

View File

@ -8,11 +8,11 @@
"new": "cmp-tmux" "new": "cmp-tmux"
}, },
"fern-vim": { "fern-vim": {
"date": "2024-05-17", "date": "2024-05-25",
"new": "vim-fern" "new": "vim-fern"
}, },
"gina-vim": { "gina-vim": {
"date": "2024-05-17", "date": "2024-05-25",
"new": "vim-gina" "new": "vim-gina"
}, },
"gist-vim": { "gist-vim": {
@ -60,7 +60,7 @@
"new": "vim-suda" "new": "vim-suda"
}, },
"vim-fsharp": { "vim-fsharp": {
"date": "2024-05-17", "date": "2024-05-25",
"new": "zarchive-vim-fsharp" "new": "zarchive-vim-fsharp"
}, },
"vim-jade": { "vim-jade": {

File diff suppressed because it is too large Load Diff

View File

@ -5,12 +5,12 @@
{ {
ada = buildGrammar { ada = buildGrammar {
language = "ada"; language = "ada";
version = "0.0.0+rev=ba0894e"; version = "0.0.0+rev=e8e2515";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "briot"; owner = "briot";
repo = "tree-sitter-ada"; repo = "tree-sitter-ada";
rev = "ba0894efa03beb70780156b91e28c716b7a4764d"; rev = "e8e2515465cc2d7c444498e68bdb9f1d86767f95";
hash = "sha256-30yCHcO9LdZ9VKQpObWRfk49M5tC85IZvutXgzGwTjQ="; hash = "sha256-qfuVoh3R418F1FMN6CTXNnCaAk5gQj5lI/NoaJgnkW8=";
}; };
meta.homepage = "https://github.com/briot/tree-sitter-ada"; meta.homepage = "https://github.com/briot/tree-sitter-ada";
}; };
@ -180,6 +180,17 @@
}; };
meta.homepage = "https://gitlab.com/gabmus/tree-sitter-blueprint.git"; meta.homepage = "https://gitlab.com/gabmus/tree-sitter-blueprint.git";
}; };
bp = buildGrammar {
language = "bp";
version = "0.0.0+rev=2326d70";
src = fetchFromGitHub {
owner = "ambroisie";
repo = "tree-sitter-bp";
rev = "2326d709fb9cf73cf124fdbc803c267f851721a4";
hash = "sha256-h9T8tfS2K85N9NLwYj6tu2MHPj4YyG/UBYoezfWuEyI=";
};
meta.homepage = "https://github.com/ambroisie/tree-sitter-bp";
};
c = buildGrammar { c = buildGrammar {
language = "c"; language = "c";
version = "0.0.0+rev=82fb86a"; version = "0.0.0+rev=82fb86a";
@ -237,12 +248,12 @@
}; };
clojure = buildGrammar { clojure = buildGrammar {
language = "clojure"; language = "clojure";
version = "0.0.0+rev=3a1ace9"; version = "0.0.0+rev=f4236d4";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "sogaiu"; owner = "sogaiu";
repo = "tree-sitter-clojure"; repo = "tree-sitter-clojure";
rev = "3a1ace906c151dd631cf6f149b5083f2b60e6a9e"; rev = "f4236d4da8aa92bc105d9c118746474c608e6af7";
hash = "sha256-pLOCUReklkRt9t5kalDrOAlE9U7a2O8sXaZFjYhagcg="; hash = "sha256-UlK6D/xnuPFL/Cu5W7hBMQ/zbodFwrS1CeJDjVpZFpo=";
}; };
meta.homepage = "https://github.com/sogaiu/tree-sitter-clojure"; meta.homepage = "https://github.com/sogaiu/tree-sitter-clojure";
}; };
@ -492,12 +503,12 @@
}; };
earthfile = buildGrammar { earthfile = buildGrammar {
language = "earthfile"; language = "earthfile";
version = "0.0.0+rev=cc99a3f"; version = "0.0.0+rev=91fc943";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "glehmann"; owner = "glehmann";
repo = "tree-sitter-earthfile"; repo = "tree-sitter-earthfile";
rev = "cc99a3f5e4281b63fdd63dca4750e808fd52628f"; rev = "91fc9434283aec06139e37fc007ad00922f278b4";
hash = "sha256-wOKNkNoNw2Stv+8zhVAX2No8Y060Kri/j5iytJvviUc="; hash = "sha256-MMz4Af3U5PXuojOmMHL8cYEjklPBHnffEOJX2lAVqjw=";
}; };
meta.homepage = "https://github.com/glehmann/tree-sitter-earthfile"; meta.homepage = "https://github.com/glehmann/tree-sitter-earthfile";
}; };
@ -592,12 +603,12 @@
}; };
erlang = buildGrammar { erlang = buildGrammar {
language = "erlang"; language = "erlang";
version = "0.0.0+rev=868306b"; version = "0.0.0+rev=98ea1f9";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "WhatsApp"; owner = "WhatsApp";
repo = "tree-sitter-erlang"; repo = "tree-sitter-erlang";
rev = "868306b033f5163658e8777940da68d61afad5cb"; rev = "98ea1f9c957b2ad520415eecb5a5b406e931101e";
hash = "sha256-9QRYYKSy7riZfUVSnYzTIGH0tznU90Q1nYwe7DDr284="; hash = "sha256-9CpVwtTy5vojZABc97KZt2P8vBOZFAw3ZFRp43WOqEc=";
}; };
meta.homepage = "https://github.com/WhatsApp/tree-sitter-erlang"; meta.homepage = "https://github.com/WhatsApp/tree-sitter-erlang";
}; };
@ -834,12 +845,12 @@
}; };
glsl = buildGrammar { glsl = buildGrammar {
language = "glsl"; language = "glsl";
version = "0.0.0+rev=8c9fb41"; version = "0.0.0+rev=33a16b6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "theHamsta"; owner = "theHamsta";
repo = "tree-sitter-glsl"; repo = "tree-sitter-glsl";
rev = "8c9fb41836dc202bbbcf0e2369f256055786dedb"; rev = "33a16b6ff4d7206a16f2dc96c40e149c657db65f";
hash = "sha256-aUM0gisdoV3A9lWSjn21wXIBI8ZrKI/5IffAaf917e4="; hash = "sha256-qblDE+NIlJR5wyprvY6G3kG0uFzqWaQZmxN/hDnjNAs=";
}; };
meta.homepage = "https://github.com/theHamsta/tree-sitter-glsl"; meta.homepage = "https://github.com/theHamsta/tree-sitter-glsl";
}; };
@ -911,12 +922,12 @@
}; };
gotmpl = buildGrammar { gotmpl = buildGrammar {
language = "gotmpl"; language = "gotmpl";
version = "0.0.0+rev=17144a7"; version = "0.0.0+rev=9d3f6e5";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ngalaiko"; owner = "ngalaiko";
repo = "tree-sitter-go-template"; repo = "tree-sitter-go-template";
rev = "17144a77be0acdecebd9d557398883569fed41de"; rev = "9d3f6e526dd074b9edae9070b7bb778f00e87a5b";
hash = "sha256-aB8MTTKzxV9+66goNfFRI39wzuBiGECAc8HvAQzIv80="; hash = "sha256-ndd85YVO2brK7JVBFOg6bbKV66qVPjo4DVi7GaT/eZA=";
}; };
meta.homepage = "https://github.com/ngalaiko/tree-sitter-go-template"; meta.homepage = "https://github.com/ngalaiko/tree-sitter-go-template";
}; };
@ -1043,12 +1054,12 @@
}; };
helm = buildGrammar { helm = buildGrammar {
language = "helm"; language = "helm";
version = "0.0.0+rev=17144a7"; version = "0.0.0+rev=9d3f6e5";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ngalaiko"; owner = "ngalaiko";
repo = "tree-sitter-go-template"; repo = "tree-sitter-go-template";
rev = "17144a77be0acdecebd9d557398883569fed41de"; rev = "9d3f6e526dd074b9edae9070b7bb778f00e87a5b";
hash = "sha256-aB8MTTKzxV9+66goNfFRI39wzuBiGECAc8HvAQzIv80="; hash = "sha256-ndd85YVO2brK7JVBFOg6bbKV66qVPjo4DVi7GaT/eZA=";
}; };
location = "dialects/helm"; location = "dialects/helm";
meta.homepage = "https://github.com/ngalaiko/tree-sitter-go-template"; meta.homepage = "https://github.com/ngalaiko/tree-sitter-go-template";
@ -1066,12 +1077,12 @@
}; };
hlsl = buildGrammar { hlsl = buildGrammar {
language = "hlsl"; language = "hlsl";
version = "0.0.0+rev=feea0ff"; version = "0.0.0+rev=a84e8d4";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "theHamsta"; owner = "theHamsta";
repo = "tree-sitter-hlsl"; repo = "tree-sitter-hlsl";
rev = "feea0ff6eccda8be958c133985dca8977db3d887"; rev = "a84e8d4f675d0006f7c07f6c7bcea2fca04cdb6e";
hash = "sha256-VIrNt9pjNtwVbQKZGPota5blxbPGGEhdiRYtPNU/XtA="; hash = "sha256-9UpcYchmtLwlH1YCGfsWnMt7tQ/560lKIzqSgPWovdc=";
}; };
meta.homepage = "https://github.com/theHamsta/tree-sitter-hlsl"; meta.homepage = "https://github.com/theHamsta/tree-sitter-hlsl";
}; };
@ -1165,12 +1176,12 @@
}; };
idl = buildGrammar { idl = buildGrammar {
language = "idl"; language = "idl";
version = "0.0.0+rev=006a526"; version = "0.0.0+rev=b5b53e2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "cathaysia"; owner = "cathaysia";
repo = "tree-sitter-idl"; repo = "tree-sitter-idl";
rev = "006a5266d771cab57da58a6ade483ebd3075638d"; rev = "b5b53e2ca0521b98277d5e4b109f0b0e362e850e";
hash = "sha256-NV7VojLenoq7RDyN1HMuyZFjcQhZeC6OtRz/y4bAe58="; hash = "sha256-zgjTZWTBchKDYgubQX5SIblbflCVh9Tv9R//ohzZFKw=";
}; };
meta.homepage = "https://github.com/cathaysia/tree-sitter-idl"; meta.homepage = "https://github.com/cathaysia/tree-sitter-idl";
}; };
@ -1187,12 +1198,12 @@
}; };
inko = buildGrammar { inko = buildGrammar {
language = "inko"; language = "inko";
version = "0.0.0+rev=4cef9aa"; version = "0.0.0+rev=7860637";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "inko-lang"; owner = "inko-lang";
repo = "tree-sitter-inko"; repo = "tree-sitter-inko";
rev = "4cef9aa4980606311b906b2f2b8c6cf791c60396"; rev = "7860637ce1b43f5f79cfb7cc3311bf3234e9479f";
hash = "sha256-NnZ5sSNwVVsx1I8eacvTl+1Vn/PL3NsrlFNPHQMUP6I="; hash = "sha256-NlmfN83UOJW5z8IGCEVfDnhZBUG04oA6/5O7aJckqdI=";
}; };
meta.homepage = "https://github.com/inko-lang/tree-sitter-inko"; meta.homepage = "https://github.com/inko-lang/tree-sitter-inko";
}; };
@ -1209,12 +1220,12 @@
}; };
janet_simple = buildGrammar { janet_simple = buildGrammar {
language = "janet_simple"; language = "janet_simple";
version = "0.0.0+rev=51271e2"; version = "0.0.0+rev=f3d6e09";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "sogaiu"; owner = "sogaiu";
repo = "tree-sitter-janet-simple"; repo = "tree-sitter-janet-simple";
rev = "51271e260346878e1a1aa6c506ce6a797b7c25e2"; rev = "f3d6e09cc47e76833f23f83b2c59ea0878660953";
hash = "sha256-QXH/s0mB9kDKuYYB+Pa+nPjArt4pjcsLXCHP4I3nGwU="; hash = "sha256-5LGAb5zsjaMlFFhLRNFOeZuGXxJ6btwfeduQqsDTRng=";
}; };
meta.homepage = "https://github.com/sogaiu/tree-sitter-janet-simple"; meta.homepage = "https://github.com/sogaiu/tree-sitter-janet-simple";
}; };
@ -1231,12 +1242,12 @@
}; };
javascript = buildGrammar { javascript = buildGrammar {
language = "javascript"; language = "javascript";
version = "0.0.0+rev=e88537c"; version = "0.0.0+rev=a5de24d";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "tree-sitter"; owner = "tree-sitter";
repo = "tree-sitter-javascript"; repo = "tree-sitter-javascript";
rev = "e88537c2703546f3f0887dd3f16898e1749cdba5"; rev = "a5de24dc7939cb07a758f8d89c089cfdb6f479aa";
hash = "sha256-/poR9qMfjWKJW6aw0s6VjNh7fkf/HvUJNZIeZ1YEwVM="; hash = "sha256-jsdY9Pd9WqZuBYtk088mx1bRQadC6D2/tGGVY+ZZ0J4=";
}; };
meta.homepage = "https://github.com/tree-sitter/tree-sitter-javascript"; meta.homepage = "https://github.com/tree-sitter/tree-sitter-javascript";
}; };
@ -1452,12 +1463,12 @@
}; };
liquidsoap = buildGrammar { liquidsoap = buildGrammar {
language = "liquidsoap"; language = "liquidsoap";
version = "0.0.0+rev=a9b8012"; version = "0.0.0+rev=14feafa";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "savonet"; owner = "savonet";
repo = "tree-sitter-liquidsoap"; repo = "tree-sitter-liquidsoap";
rev = "a9b8012366eab7d0c28bbda5f75a847be931008f"; rev = "14feafa91630afb1ab9988cf9b738b7ea29f3f89";
hash = "sha256-n8kT4bxRSp3EOJwsm0S4kKYq6Iln1vvvho/di4N0lRs="; hash = "sha256-FERYGF9D163b6S/YBwHwkrUM2qRkEKOViSDRa61OjtQ=";
}; };
meta.homepage = "https://github.com/savonet/tree-sitter-liquidsoap"; meta.homepage = "https://github.com/savonet/tree-sitter-liquidsoap";
}; };
@ -1507,12 +1518,12 @@
}; };
luau = buildGrammar { luau = buildGrammar {
language = "luau"; language = "luau";
version = "0.0.0+rev=5b088fa"; version = "0.0.0+rev=5aa9b88";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "amaanq"; owner = "amaanq";
repo = "tree-sitter-luau"; repo = "tree-sitter-luau";
rev = "5b088fac748f2666a315cafd1638a214388eb23e"; rev = "5aa9b88a8e3327276ec6e72de997f04ac80b1ae4";
hash = "sha256-m0xHQu9nxjyrCMza9Aw/kRK8Rlhtc2DRbtyyFtMZkJU="; hash = "sha256-7cxnELiCmLOPecca3U2CN1F4CUSbL8upxAn0PxwU6dM=";
}; };
meta.homepage = "https://github.com/amaanq/tree-sitter-luau"; meta.homepage = "https://github.com/amaanq/tree-sitter-luau";
}; };
@ -1608,12 +1619,12 @@
}; };
mlir = buildGrammar { mlir = buildGrammar {
language = "mlir"; language = "mlir";
version = "0.0.0+rev=a708e9b"; version = "0.0.0+rev=00c32d8";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "artagnon"; owner = "artagnon";
repo = "tree-sitter-mlir"; repo = "tree-sitter-mlir";
rev = "a708e9b3f3d7f2fc85ac3fd1d4317c51b101eab0"; rev = "00c32d8562dc957b187da110a3443307962b8da8";
hash = "sha256-ITimvcYGqPUrqg3Z9EyfhEznzME2TKBOJpr0Fbc3OoE="; hash = "sha256-cyd9n1ydIEoBL+hnRiCSEC2S9H1hrWZlMCxVbxWyazI=";
}; };
generate = true; generate = true;
meta.homepage = "https://github.com/artagnon/tree-sitter-mlir"; meta.homepage = "https://github.com/artagnon/tree-sitter-mlir";
@ -1777,12 +1788,12 @@
}; };
odin = buildGrammar { odin = buildGrammar {
language = "odin"; language = "odin";
version = "0.0.0+rev=f25b8c5"; version = "0.0.0+rev=d37b8f2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "amaanq"; owner = "amaanq";
repo = "tree-sitter-odin"; repo = "tree-sitter-odin";
rev = "f25b8c5201c1480dc0c8c4155a059a79a5a40719"; rev = "d37b8f24f653378b268ec18404e9c14ad355b128";
hash = "sha256-720CY0OKlq1P+9g0VHQ6l0lTBjGy/tYiolL8e2ahd8o="; hash = "sha256-QZn+XgVQXEaMZF4XkMfS4bHf/tQIersI8982JQyiXms=";
}; };
meta.homepage = "https://github.com/amaanq/tree-sitter-odin"; meta.homepage = "https://github.com/amaanq/tree-sitter-odin";
}; };
@ -1832,35 +1843,35 @@
}; };
perl = buildGrammar { perl = buildGrammar {
language = "perl"; language = "perl";
version = "0.0.0+rev=d4ebabd"; version = "0.0.0+rev=309cb8d";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "tree-sitter-perl"; owner = "tree-sitter-perl";
repo = "tree-sitter-perl"; repo = "tree-sitter-perl";
rev = "d4ebabd45bcb053fcc7f6688b5c8ed80c7ae7a32"; rev = "309cb8d33bcfd0a81050b21be08f9eb3f2fe2138";
hash = "sha256-0WnI0L6Tuy3FD4XxCZR1HcQyo5uv0VXhK8eqopCAS+A="; hash = "sha256-eMmU6qkg9ZVjtxaW1tSPhqsPe2WX3/frPfqMxXCziyo=";
}; };
meta.homepage = "https://github.com/tree-sitter-perl/tree-sitter-perl"; meta.homepage = "https://github.com/tree-sitter-perl/tree-sitter-perl";
}; };
php = buildGrammar { php = buildGrammar {
language = "php"; language = "php";
version = "0.0.0+rev=27afeb0"; version = "0.0.0+rev=b38c535";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "tree-sitter"; owner = "tree-sitter";
repo = "tree-sitter-php"; repo = "tree-sitter-php";
rev = "27afeb02e49ff30acd17b67897b1c0114561a38c"; rev = "b38c53537769df05871643c9688c264074fb6076";
hash = "sha256-PnxjmaC9FPhHlhbhDR+VIbzf5K7Pon7V0pLMymvqoKo="; hash = "sha256-PWAuWTi2sXeGYes6p6mLi3Mx2Nu+xLuc86NLZrEyK00=";
}; };
location = "php"; location = "php";
meta.homepage = "https://github.com/tree-sitter/tree-sitter-php"; meta.homepage = "https://github.com/tree-sitter/tree-sitter-php";
}; };
php_only = buildGrammar { php_only = buildGrammar {
language = "php_only"; language = "php_only";
version = "0.0.0+rev=27afeb0"; version = "0.0.0+rev=b38c535";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "tree-sitter"; owner = "tree-sitter";
repo = "tree-sitter-php"; repo = "tree-sitter-php";
rev = "27afeb02e49ff30acd17b67897b1c0114561a38c"; rev = "b38c53537769df05871643c9688c264074fb6076";
hash = "sha256-PnxjmaC9FPhHlhbhDR+VIbzf5K7Pon7V0pLMymvqoKo="; hash = "sha256-PWAuWTi2sXeGYes6p6mLi3Mx2Nu+xLuc86NLZrEyK00=";
}; };
location = "php_only"; location = "php_only";
meta.homepage = "https://github.com/tree-sitter/tree-sitter-php"; meta.homepage = "https://github.com/tree-sitter/tree-sitter-php";
@ -2099,12 +2110,12 @@
}; };
query = buildGrammar { query = buildGrammar {
language = "query"; language = "query";
version = "0.0.0+rev=d25e8d1"; version = "0.0.0+rev=a12c4a1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "nvim-treesitter"; owner = "nvim-treesitter";
repo = "tree-sitter-query"; repo = "tree-sitter-query";
rev = "d25e8d183f319497b8b22a2a1585975b020da722"; rev = "a12c4a1cd8aa6e0340ecb7089a05cd345a12bae3";
hash = "sha256-c4ttg5UXtRlUdtljQwczoBSR/oX+rnj5gUqR8EIYMKQ="; hash = "sha256-LeyYv4qNvCIagMwdJ0eyXx/1RCD+sL7oWRCkfNe/8V4=";
}; };
meta.homepage = "https://github.com/nvim-treesitter/tree-sitter-query"; meta.homepage = "https://github.com/nvim-treesitter/tree-sitter-query";
}; };
@ -2132,12 +2143,12 @@
}; };
rasi = buildGrammar { rasi = buildGrammar {
language = "rasi"; language = "rasi";
version = "0.0.0+rev=43196d9"; version = "0.0.0+rev=6c9bbcf";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Fymyte"; owner = "Fymyte";
repo = "tree-sitter-rasi"; repo = "tree-sitter-rasi";
rev = "43196d934a9a6ab3c7093a8683efd0111bb03db1"; rev = "6c9bbcfdf5f0f553d9ebc01750a3aa247a37b8aa";
hash = "sha256-7zhQ5wGm0FFyuTiBVN2KgvUTw8G6fwUGR8HKJ69kR+c="; hash = "sha256-sPrIVgGGaBaXeqHNxjcdJ/S2FvxyV6rD9UPKU/tpspw=";
}; };
meta.homepage = "https://github.com/Fymyte/tree-sitter-rasi"; meta.homepage = "https://github.com/Fymyte/tree-sitter-rasi";
}; };
@ -2198,12 +2209,12 @@
}; };
requirements = buildGrammar { requirements = buildGrammar {
language = "requirements"; language = "requirements";
version = "0.0.0+rev=8666a4d"; version = "0.0.0+rev=360c6a6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ObserverOfTime"; owner = "ObserverOfTime";
repo = "tree-sitter-requirements"; repo = "tree-sitter-requirements";
rev = "8666a4dfeb3107144398158bc3dd7a3f59d89ccb"; rev = "360c6a6b31076a482663806f7a8241de9cad6b4e";
hash = "sha256-M+/I0pn79Juk8LRB6LLRAyA3R5zcm6rIoR4viT9SW0c="; hash = "sha256-wqaFpT/4Gq8mWoORcZeGah18VunvKlgr8gCgHQvEF6E=";
}; };
meta.homepage = "https://github.com/ObserverOfTime/tree-sitter-requirements"; meta.homepage = "https://github.com/ObserverOfTime/tree-sitter-requirements";
}; };
@ -2264,12 +2275,12 @@
}; };
ruby = buildGrammar { ruby = buildGrammar {
language = "ruby"; language = "ruby";
version = "0.0.0+rev=788a63c"; version = "0.0.0+rev=dc2d7d6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "tree-sitter"; owner = "tree-sitter";
repo = "tree-sitter-ruby"; repo = "tree-sitter-ruby";
rev = "788a63ca1b7619288980aaafd37d890ee2469421"; rev = "dc2d7d6b50f9975bc3c35bbec0ba11b2617b736b";
hash = "sha256-FvLSj0lTNNabneXrDH7/HQq4mcTLvBwhkPW/Pf48JWc="; hash = "sha256-HV/hJwftBTCj9WomIcLB6n0LcQRHAzlQsJBNOxu6XJo=";
}; };
meta.homepage = "https://github.com/tree-sitter/tree-sitter-ruby"; meta.homepage = "https://github.com/tree-sitter/tree-sitter-ruby";
}; };
@ -2331,12 +2342,12 @@
}; };
slang = buildGrammar { slang = buildGrammar {
language = "slang"; language = "slang";
version = "0.0.0+rev=6858753"; version = "0.0.0+rev=989bfe5";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "theHamsta"; owner = "theHamsta";
repo = "tree-sitter-slang"; repo = "tree-sitter-slang";
rev = "68587530d86aaeb1f1cb17fdada795281cdd0556"; rev = "989bfe5ae69e7bad13454b8f52e4ab0c343d8ded";
hash = "sha256-hWMfiwQEd39WKifIM6NhbXnoKI5zPIGxU2GBvfdjQ9s="; hash = "sha256-1/8cFxmWHENzrTB7p//DRaZ1pw8WdPe6V2HNj+105Kc=";
}; };
meta.homepage = "https://github.com/theHamsta/tree-sitter-slang"; meta.homepage = "https://github.com/theHamsta/tree-sitter-slang";
}; };
@ -2421,12 +2432,12 @@
}; };
sourcepawn = buildGrammar { sourcepawn = buildGrammar {
language = "sourcepawn"; language = "sourcepawn";
version = "0.0.0+rev=4c62065"; version = "0.0.0+rev=227656e";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "nilshelmig"; owner = "nilshelmig";
repo = "tree-sitter-sourcepawn"; repo = "tree-sitter-sourcepawn";
rev = "4c62065c4136873ef42a9efe128380cbe7ae4f64"; rev = "227656e72a5f0d430bb82a467bc8078f078bba84";
hash = "sha256-cJDEBX821nJnGQLfZ/Me/PDdX5cQuJYzhrJZOLfl+sk="; hash = "sha256-EfvOwLMxTeY8wH0cVxltELiujxRDoOfCGno2Omrk7vw=";
}; };
meta.homepage = "https://github.com/nilshelmig/tree-sitter-sourcepawn"; meta.homepage = "https://github.com/nilshelmig/tree-sitter-sourcepawn";
}; };
@ -2476,12 +2487,12 @@
}; };
starlark = buildGrammar { starlark = buildGrammar {
language = "starlark"; language = "starlark";
version = "0.0.0+rev=b31a616"; version = "0.0.0+rev=018d0e0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "amaanq"; owner = "amaanq";
repo = "tree-sitter-starlark"; repo = "tree-sitter-starlark";
rev = "b31a616aac5d05f927f3f9dd809789db7805b632"; rev = "018d0e09d9d0f0dd6740a37682b8ee4512e8b2ac";
hash = "sha256-AVQNg7Ck2x1+5asFqJHQ3sdNKJrLVeck9fsgNMBU3x8="; hash = "sha256-Qp7FvREjO+FP7ovj6UE8JA3Se8W46iGxNrmmSsruOdA=";
}; };
meta.homepage = "https://github.com/amaanq/tree-sitter-starlark"; meta.homepage = "https://github.com/amaanq/tree-sitter-starlark";
}; };
@ -2542,12 +2553,12 @@
}; };
swift = buildGrammar { swift = buildGrammar {
language = "swift"; language = "swift";
version = "0.0.0+rev=c9c669b"; version = "0.0.0+rev=03af4d0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "alex-pinkus"; owner = "alex-pinkus";
repo = "tree-sitter-swift"; repo = "tree-sitter-swift";
rev = "c9c669b4513479e07a0ff44cf14f72351959ac21"; rev = "03af4d057afc56edf6a703e6606b86f782353f22";
hash = "sha256-OyT7jkGTuNG7eQrQvZRI49ipu+MMXTOz/1O7r42MaOk="; hash = "sha256-w+LzDVr8A0oqNi9ac6chX2U6o+2bLhP9UqXY0WlcI7I=";
}; };
generate = true; generate = true;
meta.homepage = "https://github.com/alex-pinkus/tree-sitter-swift"; meta.homepage = "https://github.com/alex-pinkus/tree-sitter-swift";
@ -2632,12 +2643,12 @@
}; };
templ = buildGrammar { templ = buildGrammar {
language = "templ"; language = "templ";
version = "0.0.0+rev=d631f60"; version = "0.0.0+rev=cf84ea5";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "vrischmann"; owner = "vrischmann";
repo = "tree-sitter-templ"; repo = "tree-sitter-templ";
rev = "d631f60287c0904770bc41aa865e249594b52422"; rev = "cf84ea53e2e2531f23009d676ac206090c1e2392";
hash = "sha256-rANNbNlybga+IGNfclMGX0On48sQ3WTWvw3bnhxKsZk="; hash = "sha256-CQ11t4beqkjhtZktrawuavgQPSFzbwJrU/aSbPsqBPA=";
}; };
meta.homepage = "https://github.com/vrischmann/tree-sitter-templ"; meta.homepage = "https://github.com/vrischmann/tree-sitter-templ";
}; };
@ -2688,12 +2699,12 @@
}; };
tlaplus = buildGrammar { tlaplus = buildGrammar {
language = "tlaplus"; language = "tlaplus";
version = "0.0.0+rev=ef18145"; version = "0.0.0+rev=200f9da";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "tlaplus-community"; owner = "tlaplus-community";
repo = "tree-sitter-tlaplus"; repo = "tree-sitter-tlaplus";
rev = "ef18145e7f985f592ad41b04004b24a590f58b71"; rev = "200f9dab6b23f3b9bb8f67fc811221517f56c373";
hash = "sha256-y/AtFMj4aKwjiahYWk63U9BEMpnq7LUQDnPrXsun3kI="; hash = "sha256-oIyZ+x0bRnxVAQGiuPgFXjHwZ/MSdC9Ge52cG3oYS3E=";
}; };
meta.homepage = "https://github.com/tlaplus-community/tree-sitter-tlaplus"; meta.homepage = "https://github.com/tlaplus-community/tree-sitter-tlaplus";
}; };
@ -2979,12 +2990,12 @@
}; };
wgsl_bevy = buildGrammar { wgsl_bevy = buildGrammar {
language = "wgsl_bevy"; language = "wgsl_bevy";
version = "0.0.0+rev=59d5fbd"; version = "0.0.0+rev=1e12c79";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "theHamsta"; owner = "theHamsta";
repo = "tree-sitter-wgsl-bevy"; repo = "tree-sitter-wgsl-bevy";
rev = "59d5fbd562c0e17c45312f49485098cce467f5ac"; rev = "1e12c7925c41bb09818d86e30cd78644fde7d31a";
hash = "sha256-4Df7UEHjoIQv4pSdxLlw9c1k0BwnVNRbZ8x/Ky0Q4DE="; hash = "sha256-7pntsp8mqXyQK+81FefZv32GNlJsnOWIhvJ9o6Q4FUQ=";
}; };
meta.homepage = "https://github.com/theHamsta/tree-sitter-wgsl-bevy"; meta.homepage = "https://github.com/theHamsta/tree-sitter-wgsl-bevy";
}; };

View File

@ -1089,7 +1089,7 @@
inherit (old) version src; inherit (old) version src;
sourceRoot = "${old.src.name}/spectre_oxi"; sourceRoot = "${old.src.name}/spectre_oxi";
cargoHash = "sha256-seBq1zJNzNVfCQckIHq7rHI/Y8MyxP88cee3NO7NYgo="; cargoHash = "sha256-7V4RyWIo9gL3ir4Pay8CMIVn6cXjJi9sgKVOENG4muQ=";
preCheck = '' preCheck = ''
@ -1225,7 +1225,7 @@
pname = "sg-nvim-rust"; pname = "sg-nvim-rust";
inherit (old) version src; inherit (old) version src;
cargoHash = "sha256-iGNLk3ckm90i5m05V/va+hO9RMiOUKL19dkszoUCwlU="; cargoHash = "sha256-bK4gyK6kqeRyoH7hnRHZURCjcxemIdqs71Qgb/Cl1pw=";
nativeBuildInputs = [ pkg-config ]; nativeBuildInputs = [ pkg-config ];

View File

@ -691,8 +691,8 @@ https://github.com/olrtg/nvim-rename-state/,HEAD,
https://github.com/petertriho/nvim-scrollbar/,HEAD, https://github.com/petertriho/nvim-scrollbar/,HEAD,
https://github.com/dstein64/nvim-scrollview/,, https://github.com/dstein64/nvim-scrollview/,,
https://github.com/s1n7ax/nvim-search-and-replace/,HEAD, https://github.com/s1n7ax/nvim-search-and-replace/,HEAD,
https://github.com/dcampos/nvim-snippy/,HEAD,
https://github.com/garymjr/nvim-snippets/,, https://github.com/garymjr/nvim-snippets/,,
https://github.com/dcampos/nvim-snippy/,HEAD,
https://github.com/ishan9299/nvim-solarized-lua/,, https://github.com/ishan9299/nvim-solarized-lua/,,
https://github.com/lucidph3nx/nvim-sops/,HEAD, https://github.com/lucidph3nx/nvim-sops/,HEAD,
https://github.com/nvim-pack/nvim-spectre/,, https://github.com/nvim-pack/nvim-spectre/,,

View File

@ -3913,8 +3913,8 @@ let
mktplcRef = { mktplcRef = {
name = "code-spell-checker"; name = "code-spell-checker";
publisher = "streetsidesoftware"; publisher = "streetsidesoftware";
version = "3.0.1"; version = "4.0.0";
hash = "sha256-KeYE6/yO2n3RHPjnJOnOyHsz4XW81y9AbkSC/I975kQ="; hash = "sha256-RUQQV+r1JNUuLxIRfi9IaOtpBubySNPL5a5Vy6bA+q4=";
}; };
meta = { meta = {
changelog = "https://marketplace.visualstudio.com/items/streetsidesoftware.code-spell-checker/changelog"; changelog = "https://marketplace.visualstudio.com/items/streetsidesoftware.code-spell-checker/changelog";

View File

@ -73,6 +73,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
stdenv.cc.cc.lib stdenv.cc.cc.lib
]; ];
dontAutoPatchelf = true;
postPatch = '' postPatch = ''
mv ./package.json ./package_orig.json mv ./package.json ./package_orig.json
@ -87,18 +89,27 @@ vscode-utils.buildVscodeMarketplaceExtension {
touch "./install.lock" touch "./install.lock"
# Clang-format from nix package. # Clang-format from nix package.
mv ./LLVM/ ./LLVM_orig rm -rf ./LLVM
mkdir "./LLVM/" mkdir "./LLVM/"
find "${clang-tools}" -mindepth 1 -maxdepth 1 | xargs ln -s -t "./LLVM" find "${clang-tools}" -mindepth 1 -maxdepth 1 | xargs ln -s -t "./LLVM"
# Patching binaries # Patching binaries
chmod +x bin/cpptools bin/cpptools-srv bin/cpptools-wordexp debugAdapters/bin/OpenDebugAD7 chmod +x bin/cpptools bin/cpptools-srv bin/cpptools-wordexp bin/libc.so debugAdapters/bin/OpenDebugAD7
patchelf --replace-needed liblttng-ust.so.0 liblttng-ust.so.1 ./debugAdapters/bin/libcoreclrtraceptprovider.so patchelf --replace-needed liblttng-ust.so.0 liblttng-ust.so.1 ./debugAdapters/bin/libcoreclrtraceptprovider.so
''; '';
postFixup = lib.optionalString gdbUseFixed '' postFixup =
wrapProgram $out/share/vscode/extensions/ms-vscode.cpptools/debugAdapters/bin/OpenDebugAD7 --prefix PATH : ${lib.makeBinPath [ gdb ]} ''
''; autoPatchelf $out/share/vscode/extensions/ms-vscode.cpptools/debugAdapters
# cpptools* are distributed by the extension and need to be run through the distributed musl interpretter
patchelf --set-interpreter $out/share/vscode/extensions/ms-vscode.cpptools/bin/libc.so $out/share/vscode/extensions/ms-vscode.cpptools/bin/cpptools
patchelf --set-interpreter $out/share/vscode/extensions/ms-vscode.cpptools/bin/libc.so $out/share/vscode/extensions/ms-vscode.cpptools/bin/cpptools-srv
patchelf --set-interpreter $out/share/vscode/extensions/ms-vscode.cpptools/bin/libc.so $out/share/vscode/extensions/ms-vscode.cpptools/bin/cpptools-wordexp
''
+ lib.optionalString gdbUseFixed ''
wrapProgram $out/share/vscode/extensions/ms-vscode.cpptools/debugAdapters/bin/OpenDebugAD7 --prefix PATH : ${lib.makeBinPath [ gdb ]}
'';
meta = { meta = {
description = "The C/C++ extension adds language support for C/C++ to Visual Studio Code, including features such as IntelliSense and debugging."; description = "The C/C++ extension adds language support for C/C++ to Visual Studio Code, including features such as IntelliSense and debugging.";

View File

@ -14,13 +14,13 @@ assert withDynarec -> (stdenv.hostPlatform.isAarch64 || stdenv.hostPlatform.isRi
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "box64"; pname = "box64";
version = "0.2.6"; version = "0.2.8";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ptitSeb"; owner = "ptitSeb";
repo = "box64"; repo = "box64";
rev = "v${finalAttrs.version}"; rev = "v${finalAttrs.version}";
hash = "sha256-eKYnBuaEWRb6kDGFvuG+xM70LbUAcJ6Zcr6hPHqi9Do="; hash = "sha256-P+m+JS3THh3LWMZYW6BQ7QyNWlBuL+hMcUtUbpMHzis=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -10,13 +10,14 @@
, libGL , libGL
, Cocoa , Cocoa
, OpenGL , OpenGL
, withManual ? !stdenv.isDarwin
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "f3d"; pname = "f3d";
version = "2.4.0"; version = "2.4.0";
outputs = [ "out" "man" ]; outputs = [ "out" ] ++ lib.optionals withManual [ "man" ];
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "f3d-app"; owner = "f3d-app";
@ -27,8 +28,11 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ nativeBuildInputs = [
cmake cmake
] ++ lib.optionals withManual [
# manpage
help2man help2man
gzip gzip
] ++ lib.optionals stdenv.hostPlatform.isElf [
# https://github.com/f3d-app/f3d/pull/1217 # https://github.com/f3d-app/f3d/pull/1217
autoPatchelfHook autoPatchelfHook
]; ];
@ -41,7 +45,7 @@ stdenv.mkDerivation rec {
"-DCMAKE_INSTALL_LIBDIR=lib" "-DCMAKE_INSTALL_LIBDIR=lib"
"-DCMAKE_INSTALL_INCLUDEDIR=include" "-DCMAKE_INSTALL_INCLUDEDIR=include"
"-DCMAKE_INSTALL_BINDIR=bin" "-DCMAKE_INSTALL_BINDIR=bin"
] ++ lib.optionals withManual [
"-DF3D_LINUX_GENERATE_MAN=ON" "-DF3D_LINUX_GENERATE_MAN=ON"
]; ];

View File

@ -93,5 +93,7 @@ stdenv.mkDerivation rec {
license = licenses.gpl3Plus; license = licenses.gpl3Plus;
maintainers = with maintainers; [ dotlambda gepbird yrd ]; maintainers = with maintainers; [ dotlambda gepbird yrd ];
platforms = platforms.unix; platforms = platforms.unix;
# compiler error since 2023-11-17
broken = stdenv.isDarwin;
}; };
} }

View File

@ -45,6 +45,10 @@ stdenv.mkDerivation rec {
qpdf qpdf
]; ];
CXXFLAGS =
# Pending upstream compatibility with GCC 13
lib.optional (stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.version "13") "-Wno-changes-meaning";
meta = with lib; { meta = with lib; {
description = "A simple application to extract, merge, rotate and reorder pages of PDF documents"; description = "A simple application to extract, merge, rotate and reorder pages of PDF documents";
homepage = "https://junrrein.github.io/pdfslicer/"; homepage = "https://junrrein.github.io/pdfslicer/";

View File

@ -9,13 +9,13 @@
buildGoModule rec { buildGoModule rec {
pname = "k3sup"; pname = "k3sup";
version = "0.13.0"; version = "0.13.5";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "alexellis"; owner = "alexellis";
repo = "k3sup"; repo = "k3sup";
rev = version; rev = version;
sha256 = "sha256-GppNYNqX/YqRtCYQIe3t2x6eNJCZc/yi6F2xHvA3YXE="; sha256 = "sha256-Psuv6QUzRMyZTAFX+oWdgztA+F1sm0J5MAITc3uNM1A=";
}; };
nativeBuildInputs = [ makeWrapper installShellFiles ]; nativeBuildInputs = [ makeWrapper installShellFiles ];
@ -23,7 +23,7 @@ buildGoModule rec {
vendorHash = null; vendorHash = null;
postConfigure = '' postConfigure = ''
substituteInPlace vendor/github.com/alexellis/go-execute/pkg/v1/exec.go \ substituteInPlace vendor/github.com/alexellis/go-execute/v2/exec.go \
--replace "/bin/bash" "${bash}/bin/bash" --replace "/bin/bash" "${bash}/bin/bash"
''; '';

View File

@ -23,7 +23,7 @@ buildGoModule rec {
stern = if stdenv.buildPlatform.canExecute stdenv.hostPlatform then "$out" else buildPackages.stern; stern = if stdenv.buildPlatform.canExecute stdenv.hostPlatform then "$out" else buildPackages.stern;
in in
'' ''
for shell in bash zsh; do for shell in bash zsh fish; do
${stern}/bin/stern --completion $shell > stern.$shell ${stern}/bin/stern --completion $shell > stern.$shell
installShellCompletion stern.$shell installShellCompletion stern.$shell
done done

View File

@ -63,14 +63,14 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "telegram-desktop"; pname = "telegram-desktop";
version = "5.0.1"; version = "5.0.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "telegramdesktop"; owner = "telegramdesktop";
repo = "tdesktop"; repo = "tdesktop";
rev = "v${version}"; rev = "v${version}";
fetchSubmodules = true; fetchSubmodules = true;
hash = "sha256-GKKlcNcFPXslyjE7u5t+VLOiEXY8RYjYvBNL+WjpeeY="; hash = "sha256-RaIUk+49uNc+TycC/oV+02o5EpkbP4tSSv7DsLn+WHM=";
}; };
patches = [ patches = [

View File

@ -7,16 +7,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "iroh"; pname = "iroh";
version = "0.16.2"; version = "0.17.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "n0-computer"; owner = "n0-computer";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
hash = "sha256-W3G6jwSaYeCx3KNAAl/z1UEOHFKHhmp+exlNbpHZuNM="; hash = "sha256-CemVlw0S4UmKFopWSh1Hv2znMRN3guIBx303esK/gLw=";
}; };
cargoHash = "sha256-AwTQjGRy2lCiJUhCWuyoXddEyLCQ2szbea/MJ/8SJQA="; cargoHash = "sha256-LgA6gdBRLsow98nv9A5rYb/v/FGzu/LPQwftyeuKHk4=";
buildInputs = lib.optionals stdenv.isDarwin ( buildInputs = lib.optionals stdenv.isDarwin (
with darwin.apple_sdk.frameworks; [ with darwin.apple_sdk.frameworks; [

View File

@ -22,11 +22,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "evolution-ews"; pname = "evolution-ews";
version = "3.52.1"; version = "3.52.2";
src = fetchurl { src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
hash = "sha256-TR9OlipFClJnADNQiaOQfZgMB2Z/q9Vmmag06Z2HSrI="; hash = "sha256-qVUPG1PUdANt0jmWJ7MRjrO4QxhBztwO3yFFewlhkUE=";
}; };
patches = [ patches = [

View File

@ -1,8 +1,8 @@
diff --git a/src/EWS/calendar/e-cal-backend-ews-utils.c b/src/EWS/calendar/e-cal-backend-ews-utils.c diff --git a/src/EWS/calendar/e-cal-backend-ews-utils.c b/src/EWS/calendar/e-cal-backend-ews-utils.c
index b7c65ae..b334198 100644 index 87b02c6..3fabca6 100644
--- a/src/EWS/calendar/e-cal-backend-ews-utils.c --- a/src/EWS/calendar/e-cal-backend-ews-utils.c
+++ b/src/EWS/calendar/e-cal-backend-ews-utils.c +++ b/src/EWS/calendar/e-cal-backend-ews-utils.c
@@ -2425,7 +2425,19 @@ e_cal_backend_ews_get_configured_evolution_icaltimezone (void) @@ -2484,7 +2484,19 @@ e_cal_backend_ews_get_configured_evolution_icaltimezone (void)
if (schema) { if (schema) {
GSettings *settings; GSettings *settings;
@ -24,10 +24,10 @@ index b7c65ae..b334198 100644
if (g_settings_get_boolean (settings, "use-system-timezone")) if (g_settings_get_boolean (settings, "use-system-timezone"))
location = e_cal_util_get_system_timezone_location (); location = e_cal_util_get_system_timezone_location ();
diff --git a/src/EWS/camel/camel-ews-utils.c b/src/EWS/camel/camel-ews-utils.c diff --git a/src/EWS/camel/camel-ews-utils.c b/src/EWS/camel/camel-ews-utils.c
index dbd9adb..a2372a4 100644 index 44a20d6..90d5729 100644
--- a/src/EWS/camel/camel-ews-utils.c --- a/src/EWS/camel/camel-ews-utils.c
+++ b/src/EWS/camel/camel-ews-utils.c +++ b/src/EWS/camel/camel-ews-utils.c
@@ -1553,7 +1553,18 @@ ews_utils_save_category_changes (GHashTable *old_categories, /* gchar *guid ~> C @@ -1554,7 +1554,18 @@ ews_utils_save_category_changes (GHashTable *old_categories, /* gchar *guid ~> C
evo_labels = g_ptr_array_new_full (5, g_free); evo_labels = g_ptr_array_new_full (5, g_free);

View File

@ -44,11 +44,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "evolution"; pname = "evolution";
version = "3.52.1"; version = "3.52.2";
src = fetchurl { src = fetchurl {
url = "mirror://gnome/sources/evolution/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; url = "mirror://gnome/sources/evolution/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
hash = "sha256-aNrtER2t42GMpwjss8q0zZO6UC9a6dXnlwc8OhPinek="; hash = "sha256-pIt0EtE+2sdPbAms+mdmVuahLt8AMM3cJgKawE2j5VE=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -12,13 +12,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "treesheets"; pname = "treesheets";
version = "0-unstable-2024-05-18"; version = "0-unstable-2024-05-20";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "aardappel"; owner = "aardappel";
repo = "treesheets"; repo = "treesheets";
rev = "dfbea81adc25e109dfe5482cc09508f612aaa84d"; rev = "149d3377692cf5c585522f9245d9eb5dd7ddb742";
hash = "sha256-Hh42q7soCCXY7AMTH3bLMlUJ72y3QOyC/1nFUQPMFaM="; hash = "sha256-qqeK13EazfdQteYcBMgWQ/0F4sBaOYCUpw7BMwfoe7k=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -10,7 +10,7 @@
}: }:
let let
version = "5.12.201"; version = "5.12.202";
in in
rustPlatform.buildRustPackage { rustPlatform.buildRustPackage {
pname = "git-mit"; pname = "git-mit";
@ -20,10 +20,10 @@ rustPlatform.buildRustPackage {
owner = "PurpleBooth"; owner = "PurpleBooth";
repo = "git-mit"; repo = "git-mit";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-nOzyC389bAnhTzDnBviqx7fzkJxj6Rf3FW9ysRs+rWI="; hash = "sha256-f2RiOdJVGfYzMYtgA0diz67h+h7DfTfqTOIpNObNrVc=";
}; };
cargoHash = "sha256-wA68UDFkgvDGOX3t3d7ZyOy4z3qx4vSvup2mRjRM9rY="; cargoHash = "sha256-1xtTgIFaG2KUevxdZyu2IqgBLDgmeBMb7xCOECkieYc=";
nativeBuildInputs = [ pkg-config ]; nativeBuildInputs = [ pkg-config ];

View File

@ -15,21 +15,21 @@
}: }:
let let
version = "1.17.6"; version = "1.17.7";
# Using two URLs as the first one will break as soon as a new version is released # Using two URLs as the first one will break as soon as a new version is released
src_bin = fetchurl { src_bin = fetchurl {
urls = [ urls = [
"http://www.makemkv.com/download/makemkv-bin-${version}.tar.gz" "http://www.makemkv.com/download/makemkv-bin-${version}.tar.gz"
"http://www.makemkv.com/download/old/makemkv-bin-${version}.tar.gz" "http://www.makemkv.com/download/old/makemkv-bin-${version}.tar.gz"
]; ];
sha256 = "KHZGAFAp93HTZs8OT76xf88QM0UtlVVH3q57CZm07Rs="; hash = "sha256-jFvIMbyVKx+HPMhFDGTjktsLJHm2JtGA8P/JZWaJUdA=";
}; };
src_oss = fetchurl { src_oss = fetchurl {
urls = [ urls = [
"http://www.makemkv.com/download/makemkv-oss-${version}.tar.gz" "http://www.makemkv.com/download/makemkv-oss-${version}.tar.gz"
"http://www.makemkv.com/download/old/makemkv-oss-${version}.tar.gz" "http://www.makemkv.com/download/old/makemkv-oss-${version}.tar.gz"
]; ];
sha256 = "2dtNdyv0+QYWQrfrIu5RQKSN4scSWKuLFNlJZXpxDUM="; hash = "sha256-di5VLUb57HWnxi3LfZfA/Z5qFRINDvb1oIDO4pHToO8=";
}; };
in in
mkDerivation { mkDerivation {

View File

@ -7,14 +7,14 @@
}: }:
buildLua (finalAttrs: { buildLua (finalAttrs: {
pname = "modernx-zydezu"; pname = "modernx-zydezu";
version = "0.3.4"; version = "0.3.5";
scriptPath = "modernx.lua"; scriptPath = "modernx.lua";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "zydezu"; owner = "zydezu";
repo = "ModernX"; repo = "ModernX";
rev = finalAttrs.version; rev = finalAttrs.version;
hash = "sha256-XzzdJLN2DImwo8ZmH1+Q5e2YfwCh7pKyUxjtPd2AMGs="; hash = "sha256-pU3ROjdSa80FV/b/HlsKvlM6wZxEV5c4Os8g2Lgs65U=";
}; };
postInstall = '' postInstall = ''

View File

@ -53,26 +53,23 @@ assert lib.assertMsg (!hidpiXWayland) "The option `hidpiXWayland` has been remov
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "hyprland" + lib.optionalString debug "-debug"; pname = "hyprland" + lib.optionalString debug "-debug";
version = "0.40.0-unstable-2024-05-12"; version = "0.40.0-unstable-2024-05-05";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "hyprwm"; owner = "hyprwm";
repo = finalAttrs.pname; repo = finalAttrs.pname;
fetchSubmodules = true; fetchSubmodules = true;
rev = "2ccd45a84475fab46c6fecd2fe226d3173104743"; rev = "f15513309b24790099d42974274eb23f66f7c985";
hash = "sha256-nBCQuRl4sS/G/OUS+txeelFShBEgSk2OrN6kBYMHuOg="; hash = "sha256-zKOfgXPTlRqCR+EME4qjN9rgAnC3viI5KWx10dhKszw=";
}; };
postPatch = '' postPatch = ''
# Fix hardcoded paths to /usr installation # Fix hardcoded paths to /usr installation
sed -i "s#/usr#$out#" src/render/OpenGL.cpp sed -i "s#/usr#$out#" src/render/OpenGL.cpp
# Remove extra @PREFIX@ to fix pkg-config paths
sed -i "s#@PREFIX@/##g" hyprland.pc.in
''; '';
# used by version.sh # used by version.sh
DATE = "2024-05-12"; DATE = "2024-05-05";
HASH = finalAttrs.src.rev; HASH = finalAttrs.src.rev;
depsBuildBuild = [ depsBuildBuild = [

View File

@ -2,12 +2,12 @@
let let
pname = "anytype"; pname = "anytype";
version = "0.40.8"; version = "0.40.9";
name = "Anytype-${version}"; name = "Anytype-${version}";
src = fetchurl { src = fetchurl {
url = "https://github.com/anyproto/anytype-ts/releases/download/v${version}/${name}.AppImage"; url = "https://github.com/anyproto/anytype-ts/releases/download/v${version}/${name}.AppImage";
name = "Anytype-${version}.AppImage"; name = "Anytype-${version}.AppImage";
hash = "sha256-Rvl52nKrOWQfT2qgssEpFjQCjva54zPvm6aEXmO0NTc="; hash = "sha256-NxiRq/aAWToe27COEoQb4BmyKgLRYQ+gXtM0Djhlcow=";
}; };
appimageContents = appimageTools.extractType2 { inherit name src; }; appimageContents = appimageTools.extractType2 { inherit name src; };
in appimageTools.wrapType2 { in appimageTools.wrapType2 {

View File

@ -25,13 +25,13 @@
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "ayatana-indicator-messages"; pname = "ayatana-indicator-messages";
version = "23.10.0"; version = "24.5.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "AyatanaIndicators"; owner = "AyatanaIndicators";
repo = "ayatana-indicator-messages"; repo = "ayatana-indicator-messages";
rev = finalAttrs.version; rev = finalAttrs.version;
hash = "sha256-FBJeP5hOXJcOk04cRJpw+oN7L3w3meDX3ivLmFWkhVI="; hash = "sha256-D1181eD2mAVXEa7RLXXC4b2tVGrxbh0WWgtbC1anHH0=";
}; };
outputs = [ outputs = [

View File

@ -0,0 +1,99 @@
{
lib,
stdenv,
cmake,
boost,
catch2,
fetchFromGitHub,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "cppitertools";
version = "2.1";
src = fetchFromGitHub {
owner = "ryanhaining";
repo = "cppitertools";
rev = "refs/tags/v${finalAttrs.version}";
hash = "sha256-mii4xjxF1YC3H/TuO/o4cEz8bx2ko6U0eufqNVw5LNA=";
};
__structuredAttrs = true;
# cppitertools has support files for three buildsystems in its repo:
# Scons, Bazel, and CMake. The first two only have definitions for running
# tests. The CMake system defines tests and install targets, including a
# cppitertools-config.cmake, which is really helpful for downstream consumers
# to detect this package since it has no pkg-config.
# However the CMake system also specifies the entire source repo as an install
# target, including support files, the build directory, etc.
# We can't simply take cppitertools-config.cmake for ourselves because before
# install it's placed in non-specific private CMake subdirectory of the build
# directory.
# Therefore, we instead simply patch CMakeLists.txt to make the target that
# installs the entire directory non-default, and then install the headers manually.
strictDeps = true;
doCheck = true;
nativeBuildInputs = [ cmake ];
buildInputs = [ boost ];
nativeCheckInputs = [ catch2 ];
# Required on case-sensitive filesystems to not conflict with the Bazel BUILD
# files that are also in that repo.
cmakeBuildDir = "cmake-build";
includeInstallDir = "${builtins.placeholder "out"}/include/cppitertools";
cmakeInstallDir = "${builtins.placeholder "out"}/share/cmake";
# This version of cppitertools considers itself as having used the default value,
# and issues warning, unless -Dcppitertools_INSTALL_CMAKE_DIR is present as an
# *environment* variable. It doesn't actually use the value from this environment
# variable at all though, so we still need to pass it in cmakeFlags.
env.cppitertools_INSTALL_CMAKE_DIR = finalAttrs.cmakeInstallDir;
cmakeFlags = [ "-Dcppitertools_INSTALL_CMAKE_DIR=${finalAttrs.cmakeInstallDir}" ];
prePatch =
''
# Mark the `.` install target as non-default.
substituteInPlace CMakeLists.txt \
--replace-fail " DIRECTORY ." " DIRECTORY . EXCLUDE_FROM_ALL"
''
+ lib.optionalString finalAttrs.doCheck ''
# Required for tests.
cp ${lib.getDev catch2}/include/catch2/catch.hpp test/
'';
checkPhase = ''
runHook preCheck
cmake -B build-test -S ../test
cmake --build build-test -j$NIX_BUILD_CORES
runHook postCheck
'';
installPhase = ''
runHook preInstall
# Install the -config.cmake files.
cmake --install . "--prefix=$out"
# Install the headers.
mkdir -p "$includeInstallDir"
cp -r ../*.hpp ../internal "$includeInstallDir"
runHook postInstall
'';
meta = {
description = "Implementation of Python itertools and builtin iteration functions for C++17";
longDescription = ''
Range-based for loop add-ons inspired by the Python builtins and itertools library
for C++17, using lazy evaluation wherever possible.
'';
homepage = "https://github.com/ryanhaining/cppitertools";
maintainers = with lib.maintainers; [ qyriad ];
license = with lib.licenses; bsd2;
};
})

View File

@ -7,16 +7,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "dumbpipe"; pname = "dumbpipe";
version = "0.8.0"; version = "0.9.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "n0-computer"; owner = "n0-computer";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
hash = "sha256-NaN3r4Vk4SCdgfFgtyCgeMOyOCfxj15vLrXRmUKTAWM="; hash = "sha256-el7cP00qWEAujtBtkMdF3/F09LQ0xMi6A140wErjzKk=";
}; };
cargoHash = "sha256-Efuif2fIP20tXCq7bpa/n1lthvi0jcyYCpWM//qEHCY="; cargoHash = "sha256-ucNMoKF9c5TFyFv8HYH3wypGQGTuZ6BT5/cuEIsyykI=";
buildInputs = lib.optionals stdenv.isDarwin ( buildInputs = lib.optionals stdenv.isDarwin (
with darwin.apple_sdk.frameworks; [ with darwin.apple_sdk.frameworks; [

View File

@ -8,20 +8,20 @@
let let
pname = "firefly-iii"; pname = "firefly-iii";
version = "6.1.15"; version = "6.1.16";
phpPackage = php83; phpPackage = php83;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "firefly-iii"; owner = "firefly-iii";
repo = "firefly-iii"; repo = "firefly-iii";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-9Od8tR8X2OZ2hu81tHWDpBX8snWCRvTnlY1AwjIcMug="; hash = "sha256-1I4Wm10mmloqeWcpc4XloNATpvroiw6m8MiSVsoB6xo=";
}; };
assets = buildNpmPackage { assets = buildNpmPackage {
pname = "${pname}-assets"; pname = "${pname}-assets";
inherit version src; inherit version src;
npmDepsHash = "sha256-UVySgcj1tQLQIxlsZuig4ixkfxfsYWYPKWLz5zHA+Dg="; npmDepsHash = "sha256-Ff7pDKoXvyj/gR+ljQsCjtyzxzJ7/zN6hRMEAderqOg=";
dontNpmBuild = true; dontNpmBuild = true;
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
@ -36,7 +36,7 @@ in
phpPackage.buildComposerProject (finalAttrs: { phpPackage.buildComposerProject (finalAttrs: {
inherit pname src version; inherit pname src version;
vendorHash = "sha256-RDkAbTKj7M7lE8bVRxb+RR5CA6hJIMp61U0+aRtFE50="; vendorHash = "sha256-BanSEqE3KN46VtEZH0TVWUBrgPCwmd2TjheYq+e+lzo=";
passthru = { passthru = {
inherit phpPackage; inherit phpPackage;

View File

@ -64,11 +64,11 @@ let
in stdenv.mkDerivation (finalAttrs: { in stdenv.mkDerivation (finalAttrs: {
pname = "google-chrome"; pname = "google-chrome";
version = "125.0.6422.76"; version = "125.0.6422.112";
src = fetchurl { src = fetchurl {
url = "https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${finalAttrs.version}-1_amd64.deb"; url = "https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${finalAttrs.version}-1_amd64.deb";
hash = "sha256-hLGEwaTx11tqiS7skoNVwCEw+1GZ0pNHpfe11IFjTFc="; hash = "sha256-Tx9SGob0b4mndk+zIhSL8MAuCUdwz2HrbnhfXYYfEUo=";
}; };
nativeBuildInputs = [ patchelf makeWrapper ]; nativeBuildInputs = [ patchelf makeWrapper ];

View File

@ -16,14 +16,14 @@
stdenvNoCC.mkDerivation (finalAttrs: { stdenvNoCC.mkDerivation (finalAttrs: {
pname = "home-manager"; pname = "home-manager";
version = "0-unstable-2024-05-17"; version = "0-unstable-2024-05-23";
src = fetchFromGitHub { src = fetchFromGitHub {
name = "home-manager-source"; name = "home-manager-source";
owner = "nix-community"; owner = "nix-community";
repo = "home-manager"; repo = "home-manager";
rev = "e3ad5108f54177e6520535768ddbf1e6af54b59d"; rev = "850cb322046ef1a268449cf1ceda5fd24d930b05";
hash = "sha256-W9pyM3/vePxrffHtzlJI6lDS3seANQ+Nqp+i58O46LI="; hash = "sha256-ZxzffLuWRyuMrkVVq7wastNUqeO0HJL9xqfY1QsYaqo=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -8,13 +8,13 @@
}: }:
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "hyprwayland-scanner"; pname = "hyprwayland-scanner";
version = "0.3.8"; version = "0.3.4";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "hyprwm"; owner = "hyprwm";
repo = "hyprwayland-scanner"; repo = "hyprwayland-scanner";
rev = "v${finalAttrs.version}"; rev = "v${finalAttrs.version}";
hash = "sha256-/DwglRvj4XF4ECdNtrCIbthleszAZBwOiXG5A6r0K/c="; hash = "sha256-D0pg+ZRwrt4lavZ97Ca8clsgbPA3duLj8iEM7riaIFY=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -8,14 +8,14 @@
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "icloudpd"; pname = "icloudpd";
version = "1.17.5"; version = "1.17.6";
pyproject = true; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "icloud-photos-downloader"; owner = "icloud-photos-downloader";
repo = "icloud_photos_downloader"; repo = "icloud_photos_downloader";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-1tyvoDAlh2UuPWDqA7mwC1v5kij3v3aBZBfIG/vluJo="; hash = "sha256-KTMFT6L+5WexKZiMPjga/HzoGYNWVldoRoqBPSj2a/s=";
}; };
pythonRelaxDeps = true; pythonRelaxDeps = true;
@ -40,6 +40,7 @@ python3Packages.buildPythonApplication rec {
certifi certifi
keyring keyring
keyrings-alt keyrings-alt
typing-extensions
]; ];
nativeCheckInputs = with python3Packages; [ nativeCheckInputs = with python3Packages; [
@ -78,6 +79,6 @@ python3Packages.buildPythonApplication rec {
description = "iCloud Photos Downloader"; description = "iCloud Photos Downloader";
license = licenses.mit; license = licenses.mit;
mainProgram = "icloudpd"; mainProgram = "icloudpd";
maintainers = with maintainers; [ anpin Enzime ]; maintainers = with maintainers; [ anpin Enzime jnsgruk ];
}; };
} }

View File

@ -5,11 +5,11 @@
buildGoModule rec { buildGoModule rec {
pname = "libeduvpn-common"; pname = "libeduvpn-common";
version = "1.2.0"; version = "1.2.1";
src = fetchurl { src = fetchurl {
url = "https://github.com/eduvpn/eduvpn-common/releases/download/${version}/eduvpn-common-${version}.tar.xz"; url = "https://github.com/eduvpn/eduvpn-common/releases/download/${version}/eduvpn-common-${version}.tar.xz";
hash = "sha256-CqpOgvGGD6pW03fvKUzgoeCz6YgnzuYK2u5Zbw+/Ks4="; hash = "sha256-MCMbOVDx9nQwTLH8EjCFD2T6mFwwFX8Jvae8PIrstvU=";
}; };
vendorHash = null; vendorHash = null;

View File

@ -7,16 +7,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "lightningcss"; pname = "lightningcss";
version = "1.25.0"; version = "1.25.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "parcel-bundler"; owner = "parcel-bundler";
repo = "lightningcss"; repo = "lightningcss";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-0no2f4aIJ4f9kSXUdaqjS4ARmVgfV5wqP407WCFeD1g="; hash = "sha256-jmNN2zCAlu3qLKJs8V7/zkpGmQ5wooH9Kbnsi80ffRc=";
}; };
cargoHash = "sha256-P/EP5bKDqGMBfZL+yyUXLjT9YwIpSCruFxkxIbpKIaQ="; cargoHash = "sha256-d5PqkqkHDLXA/5wW7QxSUDEKvejRc3+yn73TnM07lzE=";
patches = [ patches = [
# Backport fix for build error for lightningcss-napi # Backport fix for build error for lightningcss-napi
@ -40,12 +40,12 @@ rustPlatform.buildRustPackage rec {
passthru.updateScript = nix-update-script {}; passthru.updateScript = nix-update-script {};
meta = with lib; { meta = {
description = "Extremely fast CSS parser, transformer, and minifier written in Rust"; description = "Extremely fast CSS parser, transformer, and minifier written in Rust";
homepage = "https://lightningcss.dev/"; homepage = "https://lightningcss.dev/";
changelog = "https://github.com/parcel-bundler/lightningcss/releases/tag/v${version}"; changelog = "https://github.com/parcel-bundler/lightningcss/releases/tag/v${version}";
license = licenses.mpl20; license = lib.licenses.mpl20;
maintainers = with maintainers; [ johnrtitor toastal ]; maintainers = with lib.maintainers; [ johnrtitor toastal ];
mainProgram = "lightningcss"; mainProgram = "lightningcss";
# never built on aarch64-linux since first introduction in nixpkgs # never built on aarch64-linux since first introduction in nixpkgs
broken = stdenv.isLinux && stdenv.isAarch64; broken = stdenv.isLinux && stdenv.isAarch64;

View File

@ -7,7 +7,7 @@
let let
pname = "llm-ls"; pname = "llm-ls";
version = "0.5.2"; version = "0.5.3";
in in
rustPlatform.buildRustPackage { rustPlatform.buildRustPackage {
inherit pname version; inherit pname version;
@ -16,10 +16,10 @@ rustPlatform.buildRustPackage {
owner = "huggingface"; owner = "huggingface";
repo = "llm-ls"; repo = "llm-ls";
rev = version; rev = version;
sha256 = "sha256-DyPdx+nNBhOZ86GQljMYULatWny2EteNNzzO6qv1Wlk="; sha256 = "sha256-ICMM2kqrHFlKt2/jmE4gum1Eb32afTJkT3IRoqcjJJ8=";
}; };
cargoHash = "sha256-7McUyQjnCuV0JG65hUoR8TtB4vrjiEO1l7NXYochgG8="; cargoHash = "sha256-Fat67JxTYIkxkdwGNAyTfnuLt8ofUGVJ2609sbn1frU=";
nativeBuildInputs = [ pkg-config ]; nativeBuildInputs = [ pkg-config ];

View File

@ -38,7 +38,10 @@ stdenv.mkDerivation (finalAttrs: {
exiv2 exiv2
libraw libraw
libtiff libtiff
opencv4 # Once python stops relying on `propagatedBuildInputs` (https://github.com/NixOS/nixpkgs/issues/272178), deprecate `cxxdev` and switch to `dev`;
# note `dev` is selected by `mkDerivation` automatically, so one should omit `getOutput "dev"`;
# see: https://github.com/NixOS/nixpkgs/pull/314186#issuecomment-2129974277
(lib.getOutput "cxxdev" opencv4)
] ++ (with libsForQt5; [ ] ++ (with libsForQt5; [
qtbase qtbase
qtimageformats qtimageformats

View File

@ -2,16 +2,16 @@
buildGoModule rec { buildGoModule rec {
pname = "omnictl"; pname = "omnictl";
version = "0.35.1"; version = "0.36.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "siderolabs"; owner = "siderolabs";
repo = "omni"; repo = "omni";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-cxD3oaGRpYqgraJpDtnjND5TBSdloACms57Be/gnTbo="; hash = "sha256-bGJWo12rIinqyQyfTZEoT6S7OzO4BO/GRdjnC+hWdFM=";
}; };
vendorHash = "sha256-gQUg0ynaySpBCrZWeZl0GdiB7mvHML58lmV6l7ABb5E="; vendorHash = "sha256-FxoSHsIRvRIQuu87l4587Pgb0YjHJISjB621XAHkJNM=";
ldflags = [ "-s" "-w" ]; ldflags = [ "-s" "-w" ];

View File

@ -1,13 +1,13 @@
{ lib, stdenv, fetchFromGitHub }: { lib, stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "pdpmake"; pname = "pdpmake";
version = "1.4.1"; version = "1.4.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "rmyorston"; owner = "rmyorston";
repo = "pdpmake"; repo = "pdpmake";
rev = version; rev = version;
hash = "sha256-N9MT+3nE8To0ktNTPT9tDHkKRrn4XsTYiTeYdBk9VtI="; hash = "sha256-zp2o/wFYvUbCRwxHbggcGMwoCMNEJuwen8HYkn7AEwc=";
}; };
makeFlags = [ "PREFIX=$(out)" ]; makeFlags = [ "PREFIX=$(out)" ];

View File

@ -10,16 +10,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "proto"; pname = "proto";
version = "0.35.2"; version = "0.35.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "moonrepo"; owner = "moonrepo";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
hash = "sha256-2m6ktcSZWOuu4S3FI3kiPTRhS2+rRgI5M7BZ//9bb8M="; hash = "sha256-ybWiJy4U3l0g2DdoebZ0XUPRres7+DLz3tES7I7M/JQ=";
}; };
cargoHash = "sha256-JbuHuj0VG+3nRNEoVHoOdA66RWbWrIzDkwa7PsO3TJ0="; cargoHash = "sha256-1DlDqzymrTFrtgDcgyoev864EBw8BGcxyquMt28NPTw=";
buildInputs = lib.optionals stdenv.isDarwin [ buildInputs = lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.SystemConfiguration darwin.apple_sdk.frameworks.SystemConfiguration

View File

@ -6,14 +6,14 @@
python3.pkgs.buildPythonApplication { python3.pkgs.buildPythonApplication {
pname = "renode-dts2repl"; pname = "renode-dts2repl";
version = "0-unstable-2024-05-16"; version = "0-unstable-2024-05-21";
pyproject = true; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "antmicro"; owner = "antmicro";
repo = "dts2repl"; repo = "dts2repl";
rev = "2eb930e6c9f6b5821e62ca568682a099a2aea99e"; rev = "75223e1c040125ef68f9537aaa3c85fc971327dd";
hash = "sha256-fMx3sbpxLDzNiDvqxEtqXvAKD8UWe7Du7JTOL1hVkk4="; hash = "sha256-ckcCcEoYKeKHH0LYcDm3wR3C45+IzsWE14yS8qnf6VE=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -7,16 +7,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "sendme"; pname = "sendme";
version = "0.7.0"; version = "0.8.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "n0-computer"; owner = "n0-computer";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
hash = "sha256-x4RN/C/XMvpfsbWJTX5wDj1K+ADz2YIb/esAIEpFVcs="; hash = "sha256-Ptfh00AaLoU/UCqzVRgD38CxeY1dP/Y1ADgQxyLzcMc=";
}; };
cargoHash = "sha256-yeexP6wfhg2Ir1oJzaxMwRMen9M409MB4cNZ8fd6cHc="; cargoHash = "sha256-iah0bz6E5akJmo+FAuJ0faDad3YNXt7jhK/6zYrg9lE=";
buildInputs = lib.optionals stdenv.isDarwin ( buildInputs = lib.optionals stdenv.isDarwin (
with darwin.apple_sdk.frameworks; [ with darwin.apple_sdk.frameworks; [

View File

@ -0,0 +1,38 @@
{
lib,
stdenv,
fetchFromGitLab,
cmake,
cryptopp,
protobuf,
}:
stdenv.mkDerivation {
pname = "signal-backup-deduplicator";
version = "0-unstable-2024-05-24";
src = fetchFromGitLab {
owner = "gerum";
repo = "signal-backup-deduplicator";
rev = "6c09f14b16ff47c2ed0914c68102e45c93ebbfa6";
hash = "sha256-JR2Qu4EtTMObM/BvxQS5WwGFqWj9g0bqOpKt4y5UNaM=";
};
nativeBuildInputs = [ cmake ];
buildInputs = [
protobuf
cryptopp
];
meta = {
description = "Generate chunked backups for Signal messages";
homepage = "https://gitlab.com/gerum/signal-backup-deduplicator";
license = lib.licenses.agpl3Only;
maintainers = with lib.maintainers; [ GaetanLepage ];
mainProgram = "signal_backup_deduplicate";
platforms = lib.platforms.all;
# ld: symbol(s) not found for architecture ...
broken = stdenv.isDarwin;
};
}

View File

@ -0,0 +1,118 @@
{ lib
, fetchFromGitHub
, jre_headless
, maven
, jdk17
, makeWrapper
, writeShellApplication
, runCommand
, sonarlint-ls
, curl
, pcre
, common-updater-scripts
, jq
, gnused
}:
let
mavenJdk17 = maven.override { jdk = jdk17; };
in
mavenJdk17.buildMavenPackage rec {
pname = "sonarlint-ls";
version = "3.5.1.75119";
src = fetchFromGitHub {
owner = "SonarSource";
repo = "sonarlint-language-server";
rev = version;
hash = "sha256-6tbuX0wUpqbTyM44e7PqZHL0/XjN8hTFCgfzV+qc1m0=";
};
manualMvnArtifacts = [
"org.apache.maven.surefire:surefire-junit-platform:3.1.2"
"org.junit.platform:junit-platform-launcher:1.8.2"
];
mvnHash = "sha256-ZhAQtpi0wQP8+QPeYaor2MveY+DZ9RPENb3kITnuWd8=";
buildOffline = true;
# disable node and npm module installation because the need network access
# for the tests.
mvnDepsParameters = "-Dskip.installnodenpm=true -Dskip.npm -DskipTests package";
# disable failing tests which either need network access or are flaky
mvnParameters = lib.escapeShellArgs [
"-Dskip.installnodenpm=true"
"-Dskip.npm"
"-Dtest=!LanguageServerMediumTests,
!LanguageServerWithFoldersMediumTests,
!NotebookMediumTests,
!ConnectedModeMediumTests,
!JavaMediumTests"
];
installPhase = ''
runHook preInstall
mkdir -p $out/{bin,share/plugins}
install -Dm644 target/sonarlint-language-server-*.jar \
$out/share/sonarlint-ls.jar
install -Dm644 target/plugins/* \
$out/share/plugins
makeWrapper ${jre_headless}/bin/java $out/bin/sonarlint-ls \
--add-flags "-jar $out/share/sonarlint-ls.jar" \
--add-flags "-stdio" \
--add-flags "-analyzers $(ls -1 $out/share/plugins | tr '\n' ' ')"
runHook postInstall
'';
nativeBuildInputs = [ makeWrapper ];
passthru = {
tests = {
sonarlint-ls-starts-successfully = runCommand "${pname}-test" { } ''
${sonarlint-ls}/bin/sonarlint-ls > $out
cat $out | grep "SonarLint backend started"
'';
};
updateScript =
let
pkgFile = builtins.toString ./package.nix;
in
lib.getExe (writeShellApplication {
name = "update-${pname}";
runtimeInputs = [ curl pcre common-updater-scripts jq gnused ];
text = ''
LATEST_TAG=$(curl https://api.github.com/repos/${src.owner}/${src.repo}/tags | \
jq -r '[.[] | select(.name | test("^[0-9]"))] | sort_by(.name | split(".") |
map(tonumber)) | reverse | .[0].name')
update-source-version ${pname} "$LATEST_TAG"
sed -i '0,/mvnHash *= *"[^"]*"/{s/mvnHash = "[^"]*"/mvnHash = ""/}' ${pkgFile}
echo -e "\nFetching all mvn dependencies to calculate the mvnHash. This may take a while ..."
nix-build -A ${pname}.fetchedMavenDeps 2> ${pname}-stderr.log || true
NEW_MVN_HASH=$(grep "got:" ${pname}-stderr.log | awk '{print ''$2}')
rm ${pname}-stderr.log
# escaping double quotes looks ugly but is needed for variable substitution
# use # instead of / as separator because the sha256 might contain the / character
sed -i "0,/mvnHash *= *\"[^\"]*\"/{s#mvnHash = \"[^\"]*\"#mvnHash = \"$NEW_MVN_HASH\"#}" ${pkgFile}
'';
});
};
meta = {
description = "Sonarlint language server";
mainProgram = "sonarlint-ls";
homepage = "https://github.com/SonarSource/sonarlint-language-server";
license = lib.licenses.lgpl3;
maintainers = with lib.maintainers; [ tricktron ];
};
}

View File

@ -1,4 +1,10 @@
{ lib, buildGoModule, fetchFromGitHub, testers, spicetify-cli }: {
lib,
buildGoModule,
fetchFromGitHub,
testers,
spicetify-cli,
}:
buildGoModule rec { buildGoModule rec {
pname = "spicetify-cli"; pname = "spicetify-cli";
@ -20,6 +26,8 @@ buildGoModule rec {
# used at runtime, but not installed by default # used at runtime, but not installed by default
postInstall = '' postInstall = ''
mv $out/bin/spicetify-cli $out/bin/spicetify
ln -s $out/bin/spicetify $out/bin/spicetify-cli
cp -r ${src}/jsHelper $out/bin/jsHelper cp -r ${src}/jsHelper $out/bin/jsHelper
cp -r ${src}/CustomApps $out/bin/CustomApps cp -r ${src}/CustomApps $out/bin/CustomApps
cp -r ${src}/Extensions $out/bin/Extensions cp -r ${src}/Extensions $out/bin/Extensions
@ -28,19 +36,19 @@ buildGoModule rec {
doInstallCheck = true; doInstallCheck = true;
installCheckPhase = '' installCheckPhase = ''
$out/bin/spicetify-cli --help > /dev/null $out/bin/spicetify --help > /dev/null
''; '';
passthru.tests.version = testers.testVersion { passthru.tests.version = testers.testVersion { package = spicetify-cli; };
package = spicetify-cli;
command = "spicetify-cli -v";
};
meta = with lib; { meta = with lib; {
description = "Command-line tool to customize Spotify client"; description = "Command-line tool to customize Spotify client";
homepage = "https://github.com/spicetify/spicetify-cli/"; homepage = "https://github.com/spicetify/spicetify-cli/";
license = licenses.gpl3Plus; license = licenses.gpl3Plus;
maintainers = with maintainers; [ jonringer mdarocha ]; maintainers = with maintainers; [
mainProgram = "spicetify-cli"; jonringer
mdarocha
];
mainProgram = "spicetify";
}; };
} }

View File

@ -5,16 +5,16 @@
buildGoModule { buildGoModule {
pname = "spirit"; pname = "spirit";
version = "0-unstable-2024-04-18"; version = "0-unstable-2024-05-24";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "cashapp"; owner = "cashapp";
repo = "spirit"; repo = "spirit";
rev = "886ee21e7338faef6612495b27d409713a202082"; rev = "a384d903db9586d2610f06319bd67814dad678a5";
hash = "sha256-xXObprJCo9evArCX5ezqrD+lagiHMO4SwycY+pTkHPg="; hash = "sha256-oybvdVSG9XvBk4j+a+R8CIrEmzZ+gV0Chysq/sr2sws=";
}; };
vendorHash = "sha256-r6iQs5kgOniHCN8KteQ17rPhQ/73Exuqlu6qWgKEIzs="; vendorHash = "sha256-iTU45Ce5Mb09MyJTzqueyO0F9wV39l106Lkj50oYDvc=";
subPackages = [ "cmd/spirit" ]; subPackages = [ "cmd/spirit" ];

View File

@ -1,35 +1,31 @@
{ lib {
, stdenv lib,
, fetchFromGitHub stdenv,
, flac darwin,
, libgpiod fetchFromGitHub,
, libmad flac,
, libpulseaudio libgpiod,
, libvorbis libmad,
, mpg123 libpulseaudio,
, audioBackend ? if stdenv.isLinux then "alsa" else "portaudio" libvorbis,
, alsaSupport ? stdenv.isLinux mpg123,
, alsa-lib audioBackend ? if stdenv.isLinux then "alsa" else "portaudio",
, dsdSupport ? true alsaSupport ? stdenv.isLinux,
, faad2Support ? true alsa-lib,
, faad2 dsdSupport ? true,
, ffmpegSupport ? true faad2Support ? true,
, ffmpeg faad2,
, opusSupport ? true ffmpegSupport ? true,
, opusfile ffmpeg,
, resampleSupport ? true opusSupport ? true,
, soxr opusfile,
, sslSupport ? true resampleSupport ? true,
, openssl soxr,
, portaudioSupport ? stdenv.isDarwin sslSupport ? true,
, portaudio openssl,
, slimserver portaudioSupport ? stdenv.isDarwin,
, AudioToolbox portaudio,
, AudioUnit slimserver,
, Carbon
, CoreAudio
, CoreVideo
, VideoDecodeAcceleration
}: }:
let let
@ -38,7 +34,6 @@ let
pulseSupport = audioBackend == "pulse"; pulseSupport = audioBackend == "pulse";
binName = "squeezelite${optionalString pulseSupport "-pulse"}"; binName = "squeezelite${optionalString pulseSupport "-pulse"}";
in in
stdenv.mkDerivation { stdenv.mkDerivation {
# the nixos module uses the pname as the binary name # the nixos module uses the pname as the binary name
@ -54,11 +49,27 @@ stdenv.mkDerivation {
hash = "sha256-FGqo/c74JN000w/iRnvYUejqnYGDzHNZu9pEmR7yR3s="; hash = "sha256-FGqo/c74JN000w/iRnvYUejqnYGDzHNZu9pEmR7yR3s=";
}; };
buildInputs = [ flac libmad libvorbis mpg123 ] buildInputs =
[
flac
libmad
libvorbis
mpg123
]
++ optional pulseSupport libpulseaudio ++ optional pulseSupport libpulseaudio
++ optional alsaSupport alsa-lib ++ optional alsaSupport alsa-lib
++ optional portaudioSupport portaudio ++ optional portaudioSupport portaudio
++ optionals stdenv.isDarwin [ CoreVideo VideoDecodeAcceleration CoreAudio AudioToolbox AudioUnit Carbon ] ++ optionals stdenv.isDarwin (
with darwin.apple_sdk_11_0.frameworks;
[
CoreVideo
VideoDecodeAcceleration
CoreAudio
AudioToolbox
AudioUnit
Carbon
]
)
++ optional faad2Support faad2 ++ optional faad2Support faad2
++ optional ffmpegSupport ffmpeg ++ optional ffmpegSupport ffmpeg
++ optional opusSupport opusfile ++ optional opusSupport opusfile
@ -75,7 +86,11 @@ stdenv.mkDerivation {
EXECUTABLE = binName; EXECUTABLE = binName;
OPTS = [ "-DLINKALL" "-DGPIO" ] OPTS =
[
"-DLINKALL"
"-DGPIO"
]
++ optional dsdSupport "-DDSD" ++ optional dsdSupport "-DDSD"
++ optional (!faad2Support) "-DNO_FAAD" ++ optional (!faad2Support) "-DNO_FAAD"
++ optional ffmpegSupport "-DFFMPEG" ++ optional ffmpegSupport "-DFFMPEG"
@ -86,15 +101,13 @@ stdenv.mkDerivation {
++ optional sslSupport "-DUSE_SSL" ++ optional sslSupport "-DUSE_SSL"
++ optional (stdenv.isAarch32 or stdenv.isAarch64) "-DRPI"; ++ optional (stdenv.isAarch32 or stdenv.isAarch64) "-DRPI";
env = lib.optionalAttrs stdenv.isDarwin { env = lib.optionalAttrs stdenv.isDarwin { LDADD = "-lportaudio -lpthread"; };
LDADD = "-lportaudio -lpthread";
};
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
install -Dm555 -t $out/bin ${binName} install -Dm555 -t $out/bin ${binName}
install -Dm444 -t $out/share/doc/squeezelite *.txt *.md install -Dm444 -t $out/share/man/man1 doc/squeezelite.1
runHook postInstall runHook postInstall
''; '';
@ -110,6 +123,7 @@ stdenv.mkDerivation {
license = with licenses; [ gpl3Plus ] ++ optional dsdSupport bsd2; license = with licenses; [ gpl3Plus ] ++ optional dsdSupport bsd2;
mainProgram = binName; mainProgram = binName;
maintainers = with maintainers; [ adamcstephens ]; maintainers = with maintainers; [ adamcstephens ];
platforms = if (audioBackend == "pulse") then platforms.linux else platforms.linux ++ platforms.darwin; platforms =
if (audioBackend == "pulse") then platforms.linux else platforms.linux ++ platforms.darwin;
}; };
} }

View File

@ -75,6 +75,6 @@ rustPlatform.buildRustPackage {
homepage = "https://github.com/stalwartlabs/mail-server"; homepage = "https://github.com/stalwartlabs/mail-server";
changelog = "https://github.com/stalwartlabs/mail-server/blob/${version}/CHANGELOG"; changelog = "https://github.com/stalwartlabs/mail-server/blob/${version}/CHANGELOG";
license = licenses.agpl3Only; license = licenses.agpl3Only;
maintainers = with maintainers; [ happysalada ]; maintainers = with maintainers; [ happysalada onny ];
}; };
} }

View File

@ -0,0 +1,77 @@
{ lib
, python3Packages
, fetchFromGitHub
, ffmpeg
}:
python3Packages.buildPythonApplication rec {
pname = "streamrip";
version = "2.0.5";
pyproject = true;
src = fetchFromGitHub {
owner = "nathom";
repo = "streamrip";
rev = "v${version}";
hash = "sha256-KwMt89lOPGt6nX7ywliG/iAJ1WnG0CRPwhAVlPR85q0=";
};
patches = [
./patches/ensure-the-default-config-file-is-writable.patch
];
nativeBuildInputs = with python3Packages; [
poetry-core
];
propagatedBuildInputs = with python3Packages; [
aiodns
aiofiles
aiohttp
aiolimiter
appdirs
cleo
click-help-colors
deezer-py
m3u8
mutagen
pathvalidate
pillow
pycryptodomex
pytest-asyncio
pytest-mock
rich
simple-term-menu
tomlkit
tqdm
];
nativeCheckInputs = with python3Packages; [
pytestCheckHook
];
prePatch = ''
sed -i 's#aiofiles = ".*"#aiofiles = "*"#' pyproject.toml
sed -i 's#deezer-py = ".*"#deezer-py = "*"#' pyproject.toml
sed -i 's#m3u8 = ".*"#m3u8 = "*"#' pyproject.toml
sed -i 's#pathvalidate = ".*"#pathvalidate = "*"#' pyproject.toml
sed -i 's#Pillow = ".*"#Pillow = "*"#' pyproject.toml
sed -i 's#pytest-asyncio = ".*"#pytest-asyncio = "*"#' pyproject.toml
sed -i 's#tomlkit = ".*"#tomlkit = "*"#' pyproject.toml
sed -i 's#"ffmpeg"#"${lib.getBin ffmpeg}/bin/ffmpeg"#g' streamrip/client/downloadable.py
'';
preCheck = ''
export HOME=$(mktemp -d)
'';
meta = with lib; {
description = "A scriptable music downloader for Qobuz, Tidal, SoundCloud, and Deezer";
homepage = "https://github.com/nathom/streamrip";
license = licenses.gpl3Only;
maintainers = with maintainers; [ paveloom ];
mainProgram = "rip";
};
}

View File

@ -0,0 +1,26 @@
From 18efb9b5c8e562b169425f6ba79977e52e8b91b9 Mon Sep 17 00:00:00 2001
From: Pavel Sobolev <paveloomm@gmail.com>
Date: Sat, 13 Jan 2024 12:49:45 +0000
Subject: [PATCH] Ensure the default config file is writable.
---
streamrip/config.py | 3 +++
1 file changed, 3 insertions(+)
diff --git a/streamrip/config.py b/streamrip/config.py
index 7ee2f57..88a5fef 100644
--- a/streamrip/config.py
+++ b/streamrip/config.py
@@ -378,6 +378,9 @@ def set_user_defaults(path: str, /):
"""Update the TOML file at the path with user-specific default values."""
shutil.copy(BLANK_CONFIG_PATH, path)
+ # Ensure the default config file is writable
+ os.chmod(path, 0o644)
+
with open(path) as f:
toml = parse(f.read())
toml["downloads"]["folder"] = DEFAULT_DOWNLOADS_FOLDER # type: ignore
--
2.42.0

View File

@ -8,7 +8,7 @@
}: }:
let let
pname = "tracexec"; pname = "tracexec";
version = "0.2.2"; version = "0.3.1";
in in
rustPlatform.buildRustPackage { rustPlatform.buildRustPackage {
inherit pname version; inherit pname version;
@ -17,10 +17,10 @@ rustPlatform.buildRustPackage {
owner = "kxxt"; owner = "kxxt";
repo = "tracexec"; repo = "tracexec";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-X2hLaBndeYLBMnDe2MT4pgZiPj0COHG2uTvAbW+JVd4="; hash = "sha256-w43wYHyKrrBhph1Of07YAdcoAB+AMcmRyaiVPQUdZPk=";
}; };
cargoHash = "sha256-3xANOv+A4soDcKMINy+RnI8l6uS3koZpw3CMIUCmK5A="; cargoHash = "sha256-ks+z6jnf1H+j5g1Ml3zjHmlvhtpZxUiORkHHZzDMSuw=";
nativeBuildInputs = [ nativeBuildInputs = [
cargo-about cargo-about

View File

@ -10,16 +10,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "typstyle"; pname = "typstyle";
version = "0.11.22"; version = "0.11.23";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Enter-tainer"; owner = "Enter-tainer";
repo = "typstyle"; repo = "typstyle";
rev = "v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-DyYx//KubbRN1zyBoBoL4MRuHZBDngXazC7HiuA+4Sk="; hash = "sha256-42wpXEQdvVgN4aIXUp/t1jnPxqOW9ChxD0YB07PGE5o=";
}; };
cargoHash = "sha256-+Hd1u9mUJ2SPfx0mOYT2KiDY7+/Q3EjkVyS++jgUtFs="; cargoHash = "sha256-Zp094Hs3850foQ1oGz56qEHY1dDIkXS+iDC7hJlOET0=";
nativeBuildInputs = [ nativeBuildInputs = [
pkg-config pkg-config

View File

@ -395,6 +395,7 @@ dependencies = [
"criterion", "criterion",
"distribution-filename", "distribution-filename",
"distribution-types", "distribution-types",
"install-wheel-rs",
"once_cell", "once_cell",
"pep508_rs", "pep508_rs",
"platform-tags", "platform-tags",
@ -402,6 +403,7 @@ dependencies = [
"uv-cache", "uv-cache",
"uv-client", "uv-client",
"uv-configuration", "uv-configuration",
"uv-dispatch",
"uv-distribution", "uv-distribution",
"uv-interpreter", "uv-interpreter",
"uv-resolver", "uv-resolver",
@ -1102,7 +1104,6 @@ dependencies = [
"cache-key", "cache-key",
"distribution-filename", "distribution-filename",
"fs-err", "fs-err",
"git2",
"indexmap", "indexmap",
"itertools 0.13.0", "itertools 0.13.0",
"once_cell", "once_cell",
@ -1111,7 +1112,6 @@ dependencies = [
"platform-tags", "platform-tags",
"pypi-types", "pypi-types",
"rkyv", "rkyv",
"rustc-hash",
"schemars", "schemars",
"serde", "serde",
"serde_json", "serde_json",
@ -1806,7 +1806,6 @@ dependencies = [
"number_prefix", "number_prefix",
"portable-atomic", "portable-atomic",
"unicode-width", "unicode-width",
"vt100",
] ]
[[package]] [[package]]
@ -2487,6 +2486,12 @@ dependencies = [
"once_cell", "once_cell",
] ]
[[package]]
name = "path-slash"
version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1e91099d4268b0e11973f036e885d652fb0b21fedcf69738c627f94db6a44f42"
[[package]] [[package]]
name = "pathdiff" name = "pathdiff"
version = "0.2.1" version = "0.2.1"
@ -2859,7 +2864,9 @@ dependencies = [
name = "pypi-types" name = "pypi-types"
version = "0.0.1" version = "0.0.1"
dependencies = [ dependencies = [
"anyhow",
"chrono", "chrono",
"git2",
"indexmap", "indexmap",
"mailparse", "mailparse",
"once_cell", "once_cell",
@ -2872,6 +2879,7 @@ dependencies = [
"toml", "toml",
"tracing", "tracing",
"url", "url",
"uv-git",
"uv-normalize", "uv-normalize",
] ]
@ -3075,12 +3083,12 @@ dependencies = [
"insta", "insta",
"itertools 0.13.0", "itertools 0.13.0",
"pep508_rs", "pep508_rs",
"pypi-types",
"regex", "regex",
"reqwest", "reqwest",
"reqwest-middleware", "reqwest-middleware",
"tempfile", "tempfile",
"test-case", "test-case",
"thiserror",
"tokio", "tokio",
"tracing", "tracing",
"unscanny", "unscanny",
@ -3821,6 +3829,15 @@ version = "0.1.13"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1f227968ec00f0e5322f9b8173c7a0cbcff6181a0a5b28e9892491c286277231" checksum = "1f227968ec00f0e5322f9b8173c7a0cbcff6181a0a5b28e9892491c286277231"
[[package]]
name = "temp-env"
version = "0.3.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "96374855068f47402c3121c6eed88d29cb1de8f3ab27090e273e420bdabcf050"
dependencies = [
"parking_lot 0.12.2",
]
[[package]] [[package]]
name = "tempfile" name = "tempfile"
version = "3.10.1" version = "3.10.1"
@ -4224,18 +4241,6 @@ dependencies = [
"tracing-subscriber", "tracing-subscriber",
] ]
[[package]]
name = "tracing-indicatif"
version = "0.3.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "069580424efe11d97c3fef4197fa98c004fa26672cc71ad8770d224e23b1951d"
dependencies = [
"indicatif",
"tracing",
"tracing-core",
"tracing-subscriber",
]
[[package]] [[package]]
name = "tracing-log" name = "tracing-log"
version = "0.2.0" version = "0.2.0"
@ -4466,7 +4471,7 @@ checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0"
[[package]] [[package]]
name = "uv" name = "uv"
version = "0.1.45" version = "0.2.3"
dependencies = [ dependencies = [
"anstream", "anstream",
"anyhow", "anyhow",
@ -4570,6 +4575,7 @@ dependencies = [
"once_cell", "once_cell",
"pep440_rs", "pep440_rs",
"pep508_rs", "pep508_rs",
"pypi-types",
"regex", "regex",
"rustc-hash", "rustc-hash",
"serde", "serde",
@ -4665,7 +4671,7 @@ dependencies = [
"anyhow", "anyhow",
"clap", "clap",
"distribution-types", "distribution-types",
"itertools 0.13.0", "either",
"pep508_rs", "pep508_rs",
"platform-tags", "platform-tags",
"rustc-hash", "rustc-hash",
@ -4695,6 +4701,7 @@ dependencies = [
"pep508_rs", "pep508_rs",
"poloto", "poloto",
"pretty_assertions", "pretty_assertions",
"pypi-types",
"resvg", "resvg",
"rustc-hash", "rustc-hash",
"schemars", "schemars",
@ -4705,7 +4712,6 @@ dependencies = [
"tokio", "tokio",
"tracing", "tracing",
"tracing-durations-export", "tracing-durations-export",
"tracing-indicatif",
"tracing-subscriber", "tracing-subscriber",
"uv-build", "uv-build",
"uv-cache", "uv-cache",
@ -4811,12 +4817,14 @@ dependencies = [
"backoff", "backoff",
"cachedir", "cachedir",
"dunce", "dunce",
"either",
"encoding_rs_io", "encoding_rs_io",
"fs-err", "fs-err",
"fs2", "fs2",
"junction", "junction",
"once_cell", "once_cell",
"path-absolutize", "path-absolutize",
"path-slash",
"tempfile", "tempfile",
"tracing", "tracing",
"urlencoding", "urlencoding",
@ -4889,12 +4897,12 @@ name = "uv-interpreter"
version = "0.0.1" version = "0.0.1"
dependencies = [ dependencies = [
"anyhow", "anyhow",
"assert_fs",
"cache-key", "cache-key",
"configparser", "configparser",
"fs-err", "fs-err",
"futures", "futures",
"indoc", "indoc",
"insta",
"install-wheel-rs", "install-wheel-rs",
"itertools 0.13.0", "itertools 0.13.0",
"once_cell", "once_cell",
@ -4910,7 +4918,9 @@ dependencies = [
"schemars", "schemars",
"serde", "serde",
"serde_json", "serde_json",
"temp-env",
"tempfile", "tempfile",
"test-log",
"thiserror", "thiserror",
"tokio-util", "tokio-util",
"tracing", "tracing",
@ -4955,6 +4965,7 @@ dependencies = [
"pep440_rs", "pep440_rs",
"pep508_rs", "pep508_rs",
"pypi-types", "pypi-types",
"regex",
"requirements-txt", "requirements-txt",
"rustc-hash", "rustc-hash",
"schemars", "schemars",
@ -5046,7 +5057,7 @@ dependencies = [
[[package]] [[package]]
name = "uv-version" name = "uv-version"
version = "0.1.45" version = "0.2.3"
[[package]] [[package]]
name = "uv-virtualenv" name = "uv-virtualenv"
@ -5113,39 +5124,6 @@ version = "0.9.4"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
[[package]]
name = "vt100"
version = "0.15.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "84cd863bf0db7e392ba3bd04994be3473491b31e66340672af5d11943c6274de"
dependencies = [
"itoa",
"log",
"unicode-width",
"vte",
]
[[package]]
name = "vte"
version = "0.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f5022b5fbf9407086c180e9557be968742d839e68346af7792b8592489732197"
dependencies = [
"arrayvec",
"utf8parse",
"vte_generate_state_changes",
]
[[package]]
name = "vte_generate_state_changes"
version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d257817081c7dffcdbab24b9e62d2def62e2ff7d00b1c20062551e6cccc145ff"
dependencies = [
"proc-macro2",
"quote",
]
[[package]] [[package]]
name = "wait-timeout" name = "wait-timeout"
version = "0.2.0" version = "0.2.0"

View File

@ -9,19 +9,21 @@
, python3Packages , python3Packages
, rustPlatform , rustPlatform
, stdenv , stdenv
, testers
, uv
, nix-update-script , nix-update-script
}: }:
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "uv"; pname = "uv";
version = "0.1.45"; version = "0.2.3";
pyproject = true; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "astral-sh"; owner = "astral-sh";
repo = "uv"; repo = "uv";
rev = version; rev = "refs/tags/${version}";
hash = "sha256-PJeUndpD7jHcpM66dMIyXpDx95Boc01rzovS0Y7io7w="; hash = "sha256-NwIjuOsf6tv+kVEXA2GvQkVwDznZs5fnnkzcnVoOGpY=";
}; };
cargoDeps = rustPlatform.importCargoLock { cargoDeps = rustPlatform.importCargoLock {
@ -51,9 +53,6 @@ python3Packages.buildPythonApplication rec {
cargoBuildFlags = [ "--package" "uv" ]; cargoBuildFlags = [ "--package" "uv" ];
# Tests require network access
doCheck = false;
env = { env = {
OPENSSL_NO_VENDOR = true; OPENSSL_NO_VENDOR = true;
}; };
@ -70,14 +69,19 @@ python3Packages.buildPythonApplication rec {
"uv" "uv"
]; ];
passthru.updateScript = nix-update-script { }; passthru = {
tests.version = testers.testVersion {
package = uv;
};
updateScript = nix-update-script { };
};
meta = with lib; { meta = {
description = "An extremely fast Python package installer and resolver, written in Rust"; description = "An extremely fast Python package installer and resolver, written in Rust";
homepage = "https://github.com/astral-sh/uv"; homepage = "https://github.com/astral-sh/uv";
changelog = "https://github.com/astral-sh/uv/blob/${src.rev}/CHANGELOG.md"; changelog = "https://github.com/astral-sh/uv/blob/${src.rev}/CHANGELOG.md";
license = with licenses; [ asl20 mit ]; license = with lib.licenses; [ asl20 mit ];
maintainers = with maintainers; [ GaetanLepage ]; maintainers = with lib.maintainers; [ GaetanLepage ];
mainProgram = "uv"; mainProgram = "uv";
}; };
} }

View File

@ -7,14 +7,14 @@
python3.pkgs.buildPythonApplication rec { python3.pkgs.buildPythonApplication rec {
pname = "vunnel"; pname = "vunnel";
version = "0.23.0"; version = "0.23.2";
pyproject = true; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "anchore"; owner = "anchore";
repo = "vunnel"; repo = "vunnel";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-pfR3LxC1sSvLKIwq0P/9DcNkGVIIDfwMiSOpwJ7km9Y="; hash = "sha256-wXBfrlb4i4G3Sm0SopvDVGcQ0/hRGtUdzUQYyUj8/Ps=";
}; };
pythonRelaxDeps = [ pythonRelaxDeps = [

View File

@ -50,13 +50,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "evolution-data-server"; pname = "evolution-data-server";
version = "3.52.1"; version = "3.52.2";
outputs = [ "out" "dev" ]; outputs = [ "out" "dev" ];
src = fetchurl { src = fetchurl {
url = "mirror://gnome/sources/evolution-data-server/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; url = "mirror://gnome/sources/evolution-data-server/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
hash = "sha256-gls9fVRoRApn0R3SojkzlgwHue7MeXuxJYQ8sshwo0g="; hash = "sha256-oAakTtyzjSb/scYuHV0KMdHy5ZB1Vl4mx5ou4BxFp+U=";
}; };
patches = [ patches = [

View File

@ -242,7 +242,7 @@ index 44ba49c..dfac2a2 100644
g_signal_connect_object ( g_signal_connect_object (
watcher->priv->desktop_settings, watcher->priv->desktop_settings,
diff --git a/src/calendar/libedata-cal/e-cal-meta-backend.c b/src/calendar/libedata-cal/e-cal-meta-backend.c diff --git a/src/calendar/libedata-cal/e-cal-meta-backend.c b/src/calendar/libedata-cal/e-cal-meta-backend.c
index b9145af..350fcd3 100644 index e0e9169..a44f52c 100644
--- a/src/calendar/libedata-cal/e-cal-meta-backend.c --- a/src/calendar/libedata-cal/e-cal-meta-backend.c
+++ b/src/calendar/libedata-cal/e-cal-meta-backend.c +++ b/src/calendar/libedata-cal/e-cal-meta-backend.c
@@ -156,7 +156,18 @@ ecmb_is_power_saver_enabled (void) @@ -156,7 +156,18 @@ ecmb_is_power_saver_enabled (void)
@ -265,7 +265,7 @@ index b9145af..350fcd3 100644
if (g_settings_get_boolean (settings, "limit-operations-in-power-saver-mode")) { if (g_settings_get_boolean (settings, "limit-operations-in-power-saver-mode")) {
GPowerProfileMonitor *power_monitor; GPowerProfileMonitor *power_monitor;
@@ -2632,7 +2643,20 @@ ecmb_receive_object_sync (ECalMetaBackend *meta_backend, @@ -2627,7 +2638,20 @@ ecmb_receive_object_sync (ECalMetaBackend *meta_backend,
if (is_declined) { if (is_declined) {
GSettings *settings; GSettings *settings;
@ -312,7 +312,7 @@ index d5a0823..2ae03f8 100644
g_clear_object (&settings); g_clear_object (&settings);
diff --git a/src/camel/camel-gpg-context.c b/src/camel/camel-gpg-context.c diff --git a/src/camel/camel-gpg-context.c b/src/camel/camel-gpg-context.c
index cecd740..9a15180 100644 index cceba4a..d3c4da6 100644
--- a/src/camel/camel-gpg-context.c --- a/src/camel/camel-gpg-context.c
+++ b/src/camel/camel-gpg-context.c +++ b/src/camel/camel-gpg-context.c
@@ -747,7 +747,18 @@ gpg_ctx_get_executable_name (void) @@ -747,7 +747,18 @@ gpg_ctx_get_executable_name (void)
@ -361,10 +361,10 @@ index e61160c..b6553a4 100644
G_CALLBACK (mi_user_headers_settings_changed_cb), NULL); G_CALLBACK (mi_user_headers_settings_changed_cb), NULL);
G_UNLOCK (mi_user_headers); G_UNLOCK (mi_user_headers);
diff --git a/src/camel/providers/imapx/camel-imapx-server.c b/src/camel/providers/imapx/camel-imapx-server.c diff --git a/src/camel/providers/imapx/camel-imapx-server.c b/src/camel/providers/imapx/camel-imapx-server.c
index bbf214b..bed39d2 100644 index 56429a9..a9cc62c 100644
--- a/src/camel/providers/imapx/camel-imapx-server.c --- a/src/camel/providers/imapx/camel-imapx-server.c
+++ b/src/camel/providers/imapx/camel-imapx-server.c +++ b/src/camel/providers/imapx/camel-imapx-server.c
@@ -5661,7 +5661,18 @@ camel_imapx_server_do_old_flags_update (CamelFolder *folder) @@ -5682,7 +5682,18 @@ camel_imapx_server_do_old_flags_update (CamelFolder *folder)
if (do_old_flags_update) { if (do_old_flags_update) {
GSettings *eds_settings; GSettings *eds_settings;
@ -457,10 +457,10 @@ index 1453410..a3f06b0 100644
g_object_unref (settings); g_object_unref (settings);
diff --git a/src/libedataserver/e-oauth2-service-outlook.c b/src/libedataserver/e-oauth2-service-outlook.c diff --git a/src/libedataserver/e-oauth2-service-outlook.c b/src/libedataserver/e-oauth2-service-outlook.c
index 7633e93..2328048 100644 index 734f194..5b05077 100644
--- a/src/libedataserver/e-oauth2-service-outlook.c --- a/src/libedataserver/e-oauth2-service-outlook.c
+++ b/src/libedataserver/e-oauth2-service-outlook.c +++ b/src/libedataserver/e-oauth2-service-outlook.c
@@ -71,7 +71,18 @@ eos_outlook_read_settings (EOAuth2Service *service, @@ -75,7 +75,18 @@ eos_outlook_read_settings (EOAuth2Service *service,
if (!value) { if (!value) {
GSettings *settings; GSettings *settings;
@ -481,7 +481,7 @@ index 7633e93..2328048 100644
g_object_unref (settings); g_object_unref (settings);
diff --git a/src/libedataserver/e-oauth2-service-yahoo.c b/src/libedataserver/e-oauth2-service-yahoo.c diff --git a/src/libedataserver/e-oauth2-service-yahoo.c b/src/libedataserver/e-oauth2-service-yahoo.c
index 3bb1071..199e822 100644 index c8bbd3a..e71e36a 100644
--- a/src/libedataserver/e-oauth2-service-yahoo.c --- a/src/libedataserver/e-oauth2-service-yahoo.c
+++ b/src/libedataserver/e-oauth2-service-yahoo.c +++ b/src/libedataserver/e-oauth2-service-yahoo.c
@@ -67,7 +67,18 @@ eos_yahoo_read_settings (EOAuth2Service *service, @@ -67,7 +67,18 @@ eos_yahoo_read_settings (EOAuth2Service *service,

View File

@ -4,8 +4,8 @@ let
sources = lib.importJSON ./sources.json; sources = lib.importJSON ./sources.json;
in in
{ {
jdk-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk15.mac.jdk.hotspot; }; jdk-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk15.mac.jdk.hotspot; knownVulnerabilities = [ "Support ended" ]; };
jre-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk15.mac.jre.hotspot; }; jre-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk15.mac.jre.hotspot; knownVulnerabilities = [ "Support ended" ]; };
jdk-openj9 = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk15.mac.jdk.openj9; }; jdk-openj9 = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk15.mac.jdk.openj9; knownVulnerabilities = [ "Support ended" ]; };
jre-openj9 = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk15.mac.jre.openj9; }; jre-openj9 = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk15.mac.jre.openj9; knownVulnerabilities = [ "Support ended" ]; };
} }

View File

@ -5,8 +5,8 @@ let
sources = lib.importJSON ./sources.json; sources = lib.importJSON ./sources.json;
in in
{ {
jdk-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk15.${variant}.jdk.hotspot; }; jdk-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk15.${variant}.jdk.hotspot; knownVulnerabilities = [ "Support ended" ]; };
jre-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk15.${variant}.jre.hotspot; }; jre-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk15.${variant}.jre.hotspot; knownVulnerabilities = [ "Support ended" ]; };
jdk-openj9 = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk15.${variant}.jdk.openj9; }; jdk-openj9 = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk15.${variant}.jdk.openj9; knownVulnerabilities = [ "Support ended" ]; };
jre-openj9 = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk15.${variant}.jre.openj9; }; jre-openj9 = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk15.${variant}.jre.openj9; knownVulnerabilities = [ "Support ended" ]; };
} }

View File

@ -4,8 +4,8 @@ let
sources = lib.importJSON ./sources.json; sources = lib.importJSON ./sources.json;
in in
{ {
jdk-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk16.mac.jdk.hotspot; }; jdk-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk16.mac.jdk.hotspot; knownVulnerabilities = [ "Support ended" ]; };
jre-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk16.mac.jre.hotspot; }; jre-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk16.mac.jre.hotspot; knownVulnerabilities = [ "Support ended" ]; };
jdk-openj9 = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk16.mac.jdk.openj9; }; jdk-openj9 = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk16.mac.jdk.openj9; knownVulnerabilities = [ "Support ended" ]; };
jre-openj9 = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk16.mac.jre.openj9; }; jre-openj9 = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk16.mac.jre.openj9; knownVulnerabilities = [ "Support ended" ]; };
} }

View File

@ -5,8 +5,8 @@ let
sources = lib.importJSON ./sources.json; sources = lib.importJSON ./sources.json;
in in
{ {
jdk-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk16.${variant}.jdk.hotspot; }; jdk-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk16.${variant}.jdk.hotspot; knownVulnerabilities = [ "Support ended" ]; };
jre-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk16.${variant}.jre.hotspot; }; jre-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk16.${variant}.jre.hotspot; knownVulnerabilities = [ "Support ended" ]; };
jdk-openj9 = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk16.${variant}.jdk.openj9; }; jdk-openj9 = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk16.${variant}.jdk.openj9; knownVulnerabilities = [ "Support ended" ]; };
jre-openj9 = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk16.${variant}.jre.openj9; }; jre-openj9 = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk16.${variant}.jre.openj9; knownVulnerabilities = [ "Support ended" ]; };
} }

View File

@ -1,5 +1,4 @@
{ corretto11 { fetchFromGitHub
, fetchFromGitHub
, gradle_7 , gradle_7
, jdk11 , jdk11
, lib , lib
@ -10,7 +9,7 @@
}: }:
let let
corretto = import ./mk-corretto.nix { corretto = import ./mk-corretto.nix rec {
inherit lib stdenv rsync runCommand testers; inherit lib stdenv rsync runCommand testers;
jdk = jdk11; jdk = jdk11;
gradle = gradle_7; gradle = gradle_7;
@ -20,12 +19,12 @@ let
# Corretto, too. # Corretto, too.
"--disable-warnings-as-errors" "--disable-warnings-as-errors"
]; ];
version = "11.0.20.9.1"; version = "11.0.23.9.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "corretto"; owner = "corretto";
repo = "corretto-11"; repo = "corretto-11";
rev = "b880bdc8397ec3dd6b7cd4b837ce846c9e902783"; rev = version;
sha256 = "sha256-IomJHQn0ZgqsBZ5BrRqVrEOhTq7wjLiIKMQlz53JxsU="; sha256 = "sha256-qSx0kgXTgvsvBaEqgy7Jrp/c1Imoi5/IOqEWoLenJYI=";
}; };
}; };
in in

View File

@ -1,5 +1,4 @@
{ corretto17 { fetchFromGitHub
, fetchFromGitHub
, gradle_7 , gradle_7
, jdk17 , jdk17
, lib , lib

View File

@ -1,5 +1,4 @@
{ corretto19 { fetchFromGitHub
, fetchFromGitHub
, gradle_7 , gradle_7
, jdk19 , jdk19
, lib , lib
@ -10,7 +9,7 @@
}: }:
let let
corretto = import ./mk-corretto.nix { corretto = import ./mk-corretto.nix rec {
inherit lib stdenv rsync runCommand testers; inherit lib stdenv rsync runCommand testers;
jdk = jdk19; jdk = jdk19;
gradle = gradle_7; gradle = gradle_7;
@ -18,7 +17,7 @@ let
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "corretto"; owner = "corretto";
repo = "corretto-19"; repo = "corretto-19";
rev = "72f064a1d716272bd17d4e425d4a264b2c2c7d36"; rev = version;
sha256 = "sha256-mEj/MIbdXU0+fF5RhqjPuSeyclstesGaXB0e48YlKuw="; sha256 = "sha256-mEj/MIbdXU0+fF5RhqjPuSeyclstesGaXB0e48YlKuw=";
}; };
}; };

View File

@ -10,7 +10,7 @@
}: }:
let let
corretto = import ./mk-corretto.nix { corretto = import ./mk-corretto.nix rec {
inherit lib stdenv rsync runCommand testers; inherit lib stdenv rsync runCommand testers;
jdk = jdk21; jdk = jdk21;
gradle = gradle_7; gradle = gradle_7;
@ -18,7 +18,7 @@ let
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "corretto"; owner = "corretto";
repo = "corretto-21"; repo = "corretto-21";
rev = "97b366227b4dc8f5a89bbedea88b0b18c9e21886"; rev = version;
sha256 = "sha256-V8UDyukDCQVTWUg4IpSKoY0qnnQ5fePbm3rxcw06Vr0="; sha256 = "sha256-V8UDyukDCQVTWUg4IpSKoY0qnnQ5fePbm3rxcw06Vr0=";
}; };
}; };

View File

@ -9,16 +9,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "erg"; pname = "erg";
version = "0.6.36"; version = "0.6.37";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "erg-lang"; owner = "erg-lang";
repo = "erg"; repo = "erg";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-fwuAlIUPEzc2ZjKJ+4gdzXM679MAAJpg9Mh0d7LAt5s="; hash = "sha256-uwIMUdV2zAyKRwjH83VE+cYgvRGoO+XyD8rA6974mC8=";
}; };
cargoHash = "sha256-MfetCaYK5bBsV6EszNkwqlBFMykmLW7jX4gZWuIbHek="; cargoHash = "sha256-Ep+aO9qgZN9ToKuRRQFqCzagzSXZ1VYQQQk41ZqP7Wo=";
nativeBuildInputs = [ nativeBuildInputs = [
makeWrapper makeWrapper

View File

@ -11,8 +11,8 @@
let let
major = "11"; major = "11";
minor = "0"; minor = "0";
update = "19"; update = "23";
build = "7"; build = "9";
# when building a headless jdk, also bootstrap it with a headless jdk # when building a headless jdk, also bootstrap it with a headless jdk
openjdk-bootstrap = openjdk11-bootstrap.override { gtkSupport = !headless; }; openjdk-bootstrap = openjdk11-bootstrap.override { gtkSupport = !headless; };
@ -25,7 +25,7 @@ let
owner = "openjdk"; owner = "openjdk";
repo = "jdk${major}u"; repo = "jdk${major}u";
rev = "jdk-${version}"; rev = "jdk-${version}";
sha256 = "sha256-mp8toB1dWcwOtMqNFd7UwRg8pLJckovqD/LD5p9zUoA="; sha256 = "sha256-6y6wge8ZuSKBpb5QNihvAlD4Pv/0d3AQCPOkxUm/sJk=";
}; };
nativeBuildInputs = [ pkg-config autoconf unzip ]; nativeBuildInputs = [ pkg-config autoconf unzip ];

View File

@ -2,10 +2,10 @@ lib: version: with lib; {
homepage = "https://openjdk.java.net/"; homepage = "https://openjdk.java.net/";
license = licenses.gpl2Only; license = licenses.gpl2Only;
description = "The open-source Java Development Kit"; description = "The open-source Java Development Kit";
maintainers = with maintainers; [ edwtjo ]; maintainers = with maintainers; [ edwtjo infinidoge ];
platforms = [ "i686-linux" "x86_64-linux" "aarch64-linux" "armv7l-linux" "armv6l-linux" "powerpc64le-linux" ]; platforms = [ "i686-linux" "x86_64-linux" "aarch64-linux" "armv7l-linux" "armv6l-linux" "powerpc64le-linux" ];
mainProgram = "java"; mainProgram = "java";
knownVulnerabilities = optionals (builtins.elem (versions.major version) [ "12" "13" "14" "15" "16" "18" ]) [ knownVulnerabilities = optionals (builtins.elem (versions.major version) [ "12" "13" "14" "15" "16" "18" "19" "20" ]) [
"This OpenJDK version has reached its end of life." "This OpenJDK version has reached its end of life."
]; ];
} }

View File

@ -7,7 +7,7 @@
let let
major = "11"; major = "11";
update = ".0.18"; update = ".0.20";
build = "1"; build = "1";
repover = "${major}${update}+${build}"; repover = "${major}${update}+${build}";
gradle_ = (gradle_7.override { gradle_ = (gradle_7.override {
@ -31,7 +31,7 @@ let
owner = "openjdk"; owner = "openjdk";
repo = "jfx${major}u"; repo = "jfx${major}u";
rev = repover; rev = repover;
sha256 = "sha256-46DjIzcBHkmp5vnhYnLu78CG72bIBRM4A6mgk2OLOko="; sha256 = "sha256-BbBP2DiPZTSn1SBYMCgyiNdF9GD+NqR6YjeVNOQHHn4=";
}; };
buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg_4-headless ]; buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg_4-headless ];

View File

@ -141,5 +141,8 @@ in makePackage {
description = "The next-generation Java client toolkit"; description = "The next-generation Java client toolkit";
maintainers = with maintainers; [ abbradar ]; maintainers = with maintainers; [ abbradar ];
platforms = platforms.unix; platforms = platforms.unix;
knownVulnerabilities = [
"This OpenJFX version has reached its end of life."
];
}; };
} }

View File

@ -1,5 +1,5 @@
{ stdenv, lib, fetchFromGitHub, writeText, openjdk17_headless { stdenv, lib, fetchFromGitHub, writeText, openjdk17_headless
, openjdk19_headless, gradle_7, pkg-config, perl, cmake, gperf, gtk2, gtk3, libXtst , openjdk20_headless, gradle_7, pkg-config, perl, cmake, gperf, gtk2, gtk3, libXtst
, libXxf86vm, glib, alsa-lib, ffmpeg_4, python3, ruby, fetchurl, runCommand , libXxf86vm, glib, alsa-lib, ffmpeg_4, python3, ruby, fetchurl, runCommand
, withMedia ? true , withMedia ? true
, withWebKit ? false , withWebKit ? false
@ -49,7 +49,7 @@ let
config = writeText "gradle.properties" ('' config = writeText "gradle.properties" (''
CONF = Release CONF = Release
JDK_HOME = ${openjdk19_headless.home} JDK_HOME = ${openjdk20_headless.home}
'' + args.gradleProperties or ""); '' + args.gradleProperties or "");
buildPhase = '' buildPhase = ''
@ -111,14 +111,14 @@ in makePackage {
postFixup = '' postFixup = ''
# Remove references to bootstrap. # Remove references to bootstrap.
export openjdkOutPath='${openjdk19_headless.outPath}' export openjdkOutPath='${openjdk20_headless.outPath}'
find "$out" -name \*.so | while read lib; do find "$out" -name \*.so | while read lib; do
new_refs="$(patchelf --print-rpath "$lib" | perl -pe 's,:?\Q$ENV{openjdkOutPath}\E[^:]*,,')" new_refs="$(patchelf --print-rpath "$lib" | perl -pe 's,:?\Q$ENV{openjdkOutPath}\E[^:]*,,')"
patchelf --set-rpath "$new_refs" "$lib" patchelf --set-rpath "$new_refs" "$lib"
done done
''; '';
disallowedReferences = [ openjdk17_headless openjdk19_headless ]; disallowedReferences = [ openjdk17_headless openjdk20_headless ];
passthru.deps = deps; passthru.deps = deps;
@ -128,5 +128,8 @@ in makePackage {
description = "The next-generation Java client toolkit"; description = "The next-generation Java client toolkit";
maintainers = with maintainers; [ abbradar ]; maintainers = with maintainers; [ abbradar ];
platforms = platforms.unix; platforms = platforms.unix;
knownVulnerabilities = [
"This OpenJFX version has reached its end of life."
];
}; };
} }

View File

@ -1,5 +1,5 @@
{ stdenv, lib, fetchFromGitHub, writeText, openjdk17_headless { stdenv, lib, fetchFromGitHub, writeText, openjdk17_headless
, openjdk19_headless, gradle_7, pkg-config, perl, cmake, gperf, gtk2, gtk3, libXtst , openjdk21_headless, gradle_7, pkg-config, perl, cmake, gperf, gtk2, gtk3, libXtst
, libXxf86vm, glib, alsa-lib, ffmpeg_4, python3, ruby, fetchurl, runCommand , libXxf86vm, glib, alsa-lib, ffmpeg_4, python3, ruby, fetchurl, runCommand
, withMedia ? true , withMedia ? true
, withWebKit ? false , withWebKit ? false
@ -49,7 +49,7 @@ let
config = writeText "gradle.properties" ('' config = writeText "gradle.properties" (''
CONF = Release CONF = Release
JDK_HOME = ${openjdk19_headless.home} JDK_HOME = ${openjdk21_headless.home}
'' + args.gradleProperties or ""); '' + args.gradleProperties or "");
buildPhase = '' buildPhase = ''
@ -111,14 +111,14 @@ in makePackage {
postFixup = '' postFixup = ''
# Remove references to bootstrap. # Remove references to bootstrap.
export openjdkOutPath='${openjdk19_headless.outPath}' export openjdkOutPath='${openjdk21_headless.outPath}'
find "$out" -name \*.so | while read lib; do find "$out" -name \*.so | while read lib; do
new_refs="$(patchelf --print-rpath "$lib" | perl -pe 's,:?\Q$ENV{openjdkOutPath}\E[^:]*,,')" new_refs="$(patchelf --print-rpath "$lib" | perl -pe 's,:?\Q$ENV{openjdkOutPath}\E[^:]*,,')"
patchelf --set-rpath "$new_refs" "$lib" patchelf --set-rpath "$new_refs" "$lib"
done done
''; '';
disallowedReferences = [ openjdk17_headless openjdk19_headless ]; disallowedReferences = [ openjdk17_headless openjdk21_headless ];
passthru.deps = deps; passthru.deps = deps;

View File

@ -7,7 +7,6 @@
, libGL , libGL
, ninja , ninja
, libX11 , libX11
, webkitgtk
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -35,7 +34,7 @@ stdenv.mkDerivation rec {
description = "General-purpose library for WPE WebKit"; description = "General-purpose library for WPE WebKit";
license = licenses.bsd2; license = licenses.bsd2;
homepage = "https://wpewebkit.org"; homepage = "https://wpewebkit.org";
maintainers = webkitgtk.meta.maintainers ++ (with maintainers; [ matthewbauer ]); maintainers = with maintainers; [ matthewbauer ];
platforms = platforms.linux; platforms = platforms.linux;
}; };
} }

View File

@ -11,7 +11,6 @@
, libxkbcommon , libxkbcommon
, libGL , libGL
, libX11 , libX11
, webkitgtk
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -48,7 +47,7 @@ stdenv.mkDerivation rec {
description = "Freedesktop.org backend for WPE WebKit"; description = "Freedesktop.org backend for WPE WebKit";
license = licenses.bsd2; license = licenses.bsd2;
homepage = "https://wpewebkit.org"; homepage = "https://wpewebkit.org";
maintainers = webkitgtk.meta.maintainers ++ (with maintainers; [ matthewbauer ]); maintainers = with maintainers; [ matthewbauer ];
platforms = platforms.linux; platforms = platforms.linux;
}; };
} }

View File

@ -2,14 +2,14 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "lmdb"; pname = "lmdb";
version = "0.9.32"; version = "0.9.33";
src = fetchFromGitLab { src = fetchFromGitLab {
domain = "git.openldap.org"; domain = "git.openldap.org";
owner = "openldap"; owner = "openldap";
repo = "openldap"; repo = "openldap";
rev = "LMDB_${version}"; rev = "LMDB_${version}";
sha256 = "sha256-29ZrGIiGqrvX+WsPRs2V25hPmAJSHTHaGo19nMldsb8="; sha256 = "sha256-5IBoJ3jaNXao5zVzb0LDM8RGid4s8DGQpjVqrVPLpXQ=";
}; };
postUnpack = "sourceRoot=\${sourceRoot}/libraries/liblmdb"; postUnpack = "sourceRoot=\${sourceRoot}/libraries/liblmdb";

View File

@ -2,7 +2,7 @@
stdenv.mkDerivation { stdenv.mkDerivation {
pname = "tdlib"; pname = "tdlib";
version = "1.8.28"; version = "1.8.29";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "tdlib"; owner = "tdlib";
@ -11,8 +11,8 @@ stdenv.mkDerivation {
# The tdlib authors do not set tags for minor versions, but # The tdlib authors do not set tags for minor versions, but
# external programs depending on tdlib constrain the minor # external programs depending on tdlib constrain the minor
# version, hence we set a specific commit with a known version. # version, hence we set a specific commit with a known version.
rev = "38d31da77a72619cf7ec5d479338a48274cc7446"; rev = "af69dd4397b6dc1bf23ba0fd0bf429fcba6454f6";
hash = "sha256-y6Gt8gDfvIBJd/2O4vTs38DzAPyL9pAZBbrf2qcv9cY="; hash = "sha256-2RhKSxy0AvuA74LHI86pqUxv9oJZ+ZxxDe4TPI5UYxE=";
}; };
buildInputs = [ gperf openssl readline zlib ]; buildInputs = [ gperf openssl readline zlib ];

View File

@ -2662,6 +2662,27 @@ buildLuarocksPackage {
}; };
}) {}; }) {};
psl = callPackage({ buildLuarocksPackage, fetchurl, fetchzip }:
buildLuarocksPackage {
pname = "psl";
version = "0.3-0";
knownRockspec = (fetchurl {
url = "mirror://luarocks/psl-0.3-0.rockspec";
sha256 = "1x7sc8n780k67v31bvqqxhh6ihy0k91zmp6xcxmkifr0gd008x9z";
}).outPath;
src = fetchzip {
url = "https://github.com/daurnimator/lua-psl/archive/v0.3.zip";
sha256 = "1x9zskjn6fp9343w9314104128ik4lbk98pg6zfhl1v35107m1jx";
};
meta = {
homepage = "https://github.com/daurnimator/lua-psl";
description = "Bindings to libpsl, a C library that handles the Public Suffix List (PSL)";
license.fullName = "MIT";
};
}) {};
rapidjson = callPackage({ buildLuarocksPackage, cmake, fetchFromGitHub, fetchurl, luaOlder }: rapidjson = callPackage({ buildLuarocksPackage, cmake, fetchFromGitHub, fetchurl, luaOlder }:
buildLuarocksPackage { buildLuarocksPackage {
pname = "rapidjson"; pname = "rapidjson";

View File

@ -29,6 +29,7 @@
, libiconv , libiconv
, libmpack , libmpack
, libmysqlclient , libmysqlclient
, libpsl
, libuuid , libuuid
, libuv , libuv
, libxcrypt , libxcrypt
@ -617,6 +618,15 @@ in
dontPatchShebangs = true; dontPatchShebangs = true;
}); });
psl = prev.psl.overrideAttrs (drv: {
buildInputs = drv.buildInputs or [ ] ++ [ libpsl ];
luarocksConfig.variables = drv.luarocksConfig.variables // {
PSL_INCDIR = lib.getDev libpsl + "/include";
PSL_DIR = lib.getLib libpsl;
};
});
rapidjson = prev.rapidjson.overrideAttrs (oa: { rapidjson = prev.rapidjson.overrideAttrs (oa: {
preBuild = '' preBuild = ''
sed -i '/set(CMAKE_CXX_FLAGS/d' CMakeLists.txt sed -i '/set(CMAKE_CXX_FLAGS/d' CMakeLists.txt
@ -724,6 +734,9 @@ in
hash = "sha256-2P+mokkjdj2PccQG/kAGnIoUPVnK2FqNfYpHPhsp8kw="; hash = "sha256-2P+mokkjdj2PccQG/kAGnIoUPVnK2FqNfYpHPhsp8kw=";
}; };
NIX_LDFLAGS = lib.optionalString stdenv.isDarwin
(if lua.pkgs.isLuaJIT then "-lluajit-${lua.luaversion}" else "-llua");
nativeBuildInputs = oa.nativeBuildInputs ++ [ nativeBuildInputs = oa.nativeBuildInputs ++ [
cargo cargo
rustPlatform.cargoSetupHook rustPlatform.cargoSetupHook

View File

@ -17,7 +17,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "atlassian-python-api"; pname = "atlassian-python-api";
version = "3.41.11"; version = "3.41.13";
format = "setuptools"; format = "setuptools";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
@ -26,7 +26,7 @@ buildPythonPackage rec {
owner = "atlassian-api"; owner = "atlassian-api";
repo = pname; repo = pname;
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
hash = "sha256-yQqy+pFl5TK4CEUM+vpwl+pkUjBuc0xvqC9o1ZC5m7c="; hash = "sha256-ldSiO9exbF89KDaspj3kIzAZzOfr/6ohlOyQ5mBxo/U=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -13,14 +13,14 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "awscrt"; pname = "awscrt";
version = "0.20.9"; version = "0.20.10";
format = "setuptools"; format = "setuptools";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
hash = "sha256-JDeFrJ7mSUXgR5wjhDJVRfKVl1dXQ86Ew3FVbRAU5j4="; hash = "sha256-vGmN6MU61KLqsWRrkhlqWE6tFwplxltZyIOFWt6lly8=";
}; };
buildInputs = lib.optionals stdenv.isDarwin [ buildInputs = lib.optionals stdenv.isDarwin [

View File

@ -366,7 +366,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "boto3-stubs"; pname = "boto3-stubs";
version = "1.34.112"; version = "1.34.113";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
@ -374,7 +374,7 @@ buildPythonPackage rec {
src = fetchPypi { src = fetchPypi {
pname = "boto3_stubs"; pname = "boto3_stubs";
inherit version; inherit version;
hash = "sha256-70UVtT3M5NhRaPoYXcgDU3xMiC1bDas+XDSJPIPI26o="; hash = "sha256-Fqr40Jec/WX4UFNqLM9DRNAPEmOKo3emW3bAAzjzXFA=";
}; };
build-system = [ setuptools ]; build-system = [ setuptools ];

View File

@ -24,7 +24,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "cyclonedx-python-lib"; pname = "cyclonedx-python-lib";
version = "7.3.4"; version = "7.4.0";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.9"; disabled = pythonOlder "3.9";
@ -33,7 +33,7 @@ buildPythonPackage rec {
owner = "CycloneDX"; owner = "CycloneDX";
repo = "cyclonedx-python-lib"; repo = "cyclonedx-python-lib";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-rFxCeQTCQSpg0LQYyOxhk150KOUyV9PXdXo1mOA0KPw="; hash = "sha256-cR/E0xVPl2iBgjhX9xv8nftmmTDWjDUqRgvNqcAWzRo=";
}; };
build-system = [ poetry-core ]; build-system = [ poetry-core ];

View File

@ -14,7 +14,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "dtw-python"; pname = "dtw-python";
version = "1.4.2"; version = "1.4.4";
format = "pyproject"; format = "pyproject";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
@ -23,7 +23,7 @@ buildPythonPackage rec {
owner = "DynamicTimeWarping"; owner = "DynamicTimeWarping";
repo = "dtw-python"; repo = "dtw-python";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-Y0XzAPc2iJIp799gXTO7bUcHuOrDyqkd64DulLbdcAg="; hash = "sha256-9+0NxQAvhVeH9RcBPTr1CjIjTqTsiUz68UIne5dErvw=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -2,6 +2,7 @@
buildPythonPackage, buildPythonPackage,
lib, lib,
fetchurl, fetchurl,
stdenv,
autoreconfHook, autoreconfHook,
boost, boost,
@ -24,12 +25,12 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "graph-tool"; pname = "graph-tool";
version = "2.65";
format = "other"; format = "other";
version = "2.45";
src = fetchurl { src = fetchurl {
url = "https://downloads.skewed.de/graph-tool/graph-tool-${version}.tar.bz2"; url = "https://downloads.skewed.de/graph-tool/graph-tool-${version}.tar.bz2";
hash = "sha256-+S2nrM/aArKXke/k8LPtkzKfJyMq9NOvwHySQh7Ghmg="; hash = "sha256-ozpFv9rri2toG8BeNTqzoJdkwB06GdJ69XjtPkjUKZw=";
}; };
configureFlags = [ configureFlags = [
@ -48,7 +49,7 @@ buildPythonPackage rec {
]; ];
# https://git.skewed.de/count0/graph-tool/-/wikis/installation-instructions#manual-compilation # https://git.skewed.de/count0/graph-tool/-/wikis/installation-instructions#manual-compilation
propagatedBuildInputs = [ dependencies = [
boost boost
cairomm cairomm
cgal cgal
@ -69,6 +70,7 @@ buildPythonPackage rec {
description = "Python module for manipulation and statistical analysis of graphs"; description = "Python module for manipulation and statistical analysis of graphs";
homepage = "https://graph-tool.skewed.de"; homepage = "https://graph-tool.skewed.de";
license = licenses.lgpl3Plus; license = licenses.lgpl3Plus;
broken = stdenv.isDarwin;
maintainers = with maintainers; [ ]; maintainers = with maintainers; [ ];
}; };
} }

View File

@ -5,13 +5,13 @@
}: }:
buildPythonPackage rec { buildPythonPackage rec {
version = "0.3"; version = "0.4";
format = "setuptools"; format = "setuptools";
pname = "httpauth"; pname = "httpauth";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "0qas7876igyz978pgldp5r7n7pis8n4vf0v87gxr9l7p7if5lr3l"; sha256 = "sha256-lehPEuxYV4SQsdL1RWBqTNFIGz2pSoTs+nlkQ5fPX8M=";
}; };
doCheck = false; doCheck = false;

View File

@ -26,7 +26,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "jsonargparse"; pname = "jsonargparse";
version = "4.28.0"; version = "4.29.0";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.11"; disabled = pythonOlder "3.11";
@ -35,7 +35,7 @@ buildPythonPackage rec {
owner = "omni-us"; owner = "omni-us";
repo = "jsonargparse"; repo = "jsonargparse";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-iw6ntzFkvMg5baOgeUzf3qV1eGGqywINd7e6N781llQ="; hash = "sha256-L+bGyn6O3lGu4FPclNFUeIzQhpznBxdkofUS5yCRM3Y=";
}; };
build-system = [ setuptools ]; build-system = [ setuptools ];

View File

@ -8,6 +8,7 @@
fetchFromGitHub, fetchFromGitHub,
fetchzip, fetchzip,
fsspec, fsspec,
jsonpath-ng,
llamaindex-py-client, llamaindex-py-client,
nest-asyncio, nest-asyncio,
networkx, networkx,
@ -23,10 +24,11 @@
pythonOlder, pythonOlder,
pyyaml, pyyaml,
requests, requests,
tree-sitter, spacy,
sqlalchemy, sqlalchemy,
tenacity, tenacity,
tiktoken, tiktoken,
tree-sitter,
typing-inspect, typing-inspect,
}: }:
@ -44,7 +46,7 @@ in
buildPythonPackage rec { buildPythonPackage rec {
pname = "llama-index-core"; pname = "llama-index-core";
version = "0.10.36"; version = "0.10.38";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.8"; disabled = pythonOlder "3.8";
@ -53,7 +55,7 @@ buildPythonPackage rec {
owner = "run-llama"; owner = "run-llama";
repo = "llama_index"; repo = "llama_index";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-yP/60DLg43UOOogxbDvb1p5n8dnfBUjGhcfO5g5g0gA="; hash = "sha256-A5wOQE8WK8Mt7TvquSfgPorr39lap2n8AVQP7rr6y/Y=";
}; };
sourceRoot = "${src.name}/${pname}"; sourceRoot = "${src.name}/${pname}";
@ -80,6 +82,7 @@ buildPythonPackage rec {
deprecated deprecated
dirtyjson dirtyjson
fsspec fsspec
jsonpath-ng
llamaindex-py-client llamaindex-py-client
nest-asyncio nest-asyncio
networkx networkx
@ -90,6 +93,7 @@ buildPythonPackage rec {
pillow pillow
pyyaml pyyaml
requests requests
spacy
sqlalchemy sqlalchemy
tenacity tenacity
tiktoken tiktoken

View File

@ -12,7 +12,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "llama-index-embeddings-gemini"; pname = "llama-index-embeddings-gemini";
version = "0.1.6"; version = "0.1.7";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.9"; disabled = pythonOlder "3.9";
@ -20,7 +20,7 @@ buildPythonPackage rec {
src = fetchPypi { src = fetchPypi {
pname = "llama_index_embeddings_gemini"; pname = "llama_index_embeddings_gemini";
inherit version; inherit version;
hash = "sha256-HYwYA67/7gDxE7ZxQkkyblgwE83gZXuDmUuseXujr5g="; hash = "sha256-0ob6t9pFaIsbDyt9+QOKFQctS6s99tEvdstn39iyVpA=";
}; };
pythonRelaxDeps = [ "google-generativeai" ]; pythonRelaxDeps = [ "google-generativeai" ];

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