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

This commit is contained in:
K900 2025-04-22 21:21:57 +03:00
commit df4847ebd5
56 changed files with 498 additions and 1248 deletions

View file

@ -131,7 +131,7 @@
- `binwalk` was updated to 3.1.0, which has been rewritten in rust. The python module is no longer available. - `binwalk` was updated to 3.1.0, which has been rewritten in rust. The python module is no longer available.
See the release notes of [3.1.0](https://github.com/ReFirmLabs/binwalk/releases/tag/v3.1.0) for more information. See the release notes of [3.1.0](https://github.com/ReFirmLabs/binwalk/releases/tag/v3.1.0) for more information.
- `pkgs.nextcloud28` has been removed since it's out of support upstream. - `pkgs.nextcloud28` and `pkgs.nextcloud29` have been removed since they are out of support upstream.
- `centrifugo` was updated to v6, which uses a new config format. See [upstream documentation](https://centrifugal.dev/docs/getting-started/migration_v6) for migration. - `centrifugo` was updated to v6, which uses a new config format. See [upstream documentation](https://centrifugal.dev/docs/getting-started/migration_v6) for migration.

View file

@ -142,7 +142,7 @@
- [Zoxide](https://github.com/ajeetdsouza/zoxide), a smarter cd command, inspired by z and autojump. Available as [programs.zoxide](options.html#opt-programs.zoxide.enable) - [Zoxide](https://github.com/ajeetdsouza/zoxide), a smarter cd command, inspired by z and autojump. Available as [programs.zoxide](options.html#opt-programs.zoxide.enable)
- [victorialogs][https://docs.victoriametrics.com/victorialogs/], log database from VictoriaMetrics. Available as [services.victorialogs](#opt-services.victorialogs.enable) - [victorialogs](https://docs.victoriametrics.com/victorialogs/), log database from VictoriaMetrics. Available as [services.victorialogs](#opt-services.victorialogs.enable)
- [gokapi](https://github.com/Forceu/Gokapi), Lightweight selfhosted Firefox Send alternative without public upload. AWS S3 supported. Available with [services.gokapi](options.html#opt-services.gokapi.enable) - [gokapi](https://github.com/Forceu/Gokapi), Lightweight selfhosted Firefox Send alternative without public upload. AWS S3 supported. Available with [services.gokapi](options.html#opt-services.gokapi.enable)

View file

@ -1,8 +1,8 @@
{ {
x86_64-linux = "/nix/store/ppvbj1hzk77il5wd5g6q5ibyyd4jsnrl-nix-2.28.1"; x86_64-linux = "/nix/store/pzwdmrz94mya45m1jnsf294c0g3cwy9m-nix-2.28.2";
i686-linux = "/nix/store/5lb00s5p37715jh8y9nw6ihdjlzrs2bq-nix-2.28.1"; i686-linux = "/nix/store/vzqxry2dwq9nzr2y0jk1q7qv3ygv14m1-nix-2.28.2";
aarch64-linux = "/nix/store/2zy7z2ablw09s0fj511x6d6za2vswv09-nix-2.28.1"; aarch64-linux = "/nix/store/52zak9psh00w8c8iz8x0ny33in5wwr83-nix-2.28.2";
riscv64-linux = "/nix/store/m4fw1gfzx7z3lp2pra1x1bajjb5d4fvi-nix-riscv64-unknown-linux-gnu-2.28.1"; riscv64-linux = "/nix/store/rkggav1j9wb55zc8jsl1vg81s831aqj8-nix-riscv64-unknown-linux-gnu-2.28.2";
x86_64-darwin = "/nix/store/yi9ysd086218v1k1i16ilkmnkavgrxsi-nix-2.28.1"; x86_64-darwin = "/nix/store/afwsvhzqf936zx5v4i7ynqah2qhq7qyj-nix-2.28.2";
aarch64-darwin = "/nix/store/v4g8bccvg56b8y4r93c6w1f8125qs3cm-nix-2.28.1"; aarch64-darwin = "/nix/store/djcysgb0pgrigaqfnmraviv6nix786zi-nix-2.28.2";
} }

View file

@ -205,7 +205,7 @@ let
'class' => '\\OC\\Files\\ObjectStore\\S3', 'class' => '\\OC\\Files\\ObjectStore\\S3',
'arguments' => [ 'arguments' => [
'bucket' => '${s3.bucket}', 'bucket' => '${s3.bucket}',
'autocreate' => ${boolToString s3.autocreate}, 'verify_bucket_exists' => ${boolToString s3.verify_bucket_exists},
'key' => '${s3.key}', 'key' => '${s3.key}',
'secret' => nix_read_secret('s3_secret'), 'secret' => nix_read_secret('s3_secret'),
${optionalString (s3.hostname != null) "'hostname' => '${s3.hostname}',"} ${optionalString (s3.hostname != null) "'hostname' => '${s3.hostname}',"}
@ -344,6 +344,10 @@ in
[ "services" "nextcloud" "extraOptions" ] [ "services" "nextcloud" "extraOptions" ]
[ "services" "nextcloud" "settings" ] [ "services" "nextcloud" "settings" ]
) )
(mkRenamedOptionModule
[ "services" "nextcloud" "config" "objectstore" "s3" "autocreate" ]
[ "services" "nextcloud" "config" "objectstore" "s3" "verify_bucket_exists" ]
)
]; ];
options.services.nextcloud = { options.services.nextcloud = {
@ -420,7 +424,6 @@ in
type = types.package; type = types.package;
description = "Which package to use for the Nextcloud instance."; description = "Which package to use for the Nextcloud instance.";
relatedPackages = [ relatedPackages = [
"nextcloud29"
"nextcloud30" "nextcloud30"
"nextcloud31" "nextcloud31"
]; ];
@ -654,10 +657,11 @@ in
The name of the S3 bucket. The name of the S3 bucket.
''; '';
}; };
autocreate = mkOption { verify_bucket_exists = mkOption {
type = types.bool; type = types.bool;
default = true;
description = '' description = ''
Create the objectstore if it does not exist. Create the objectstore bucket if it does not exist.
''; '';
}; };
key = mkOption { key = mkOption {
@ -1041,8 +1045,7 @@ in
nextcloud31 nextcloud31
); );
services.nextcloud.phpPackage = services.nextcloud.phpPackage = pkgs.php83;
if versionOlder cfg.package.version "29" then pkgs.php82 else pkgs.php83;
services.nextcloud.phpOptions = mkMerge [ services.nextcloud.phpOptions = mkMerge [
(mapAttrs (const mkOptionDefault) defaultPHPSettings) (mapAttrs (const mkOptionDefault) defaultPHPSettings)

View file

@ -339,32 +339,6 @@ rec {
); );
# Test job for https://github.com/NixOS/nixpkgs/issues/121354 to test
# automatic sizing without blocking the channel.
amazonImageAutomaticSize = forMatchingSystems [ "x86_64-linux" "aarch64-linux" ] (
system:
with import ./.. { inherit system; };
hydraJob (
(import lib/eval-config.nix {
inherit system;
modules = [
configuration
versionModule
./maintainers/scripts/ec2/amazon-image.nix
(
{ ... }:
{
virtualisation.diskSize = "auto";
}
)
];
}).config.system.build.amazonImage
)
);
# An image that can be imported into incus and used for container creation # An image that can be imported into incus and used for container creation
incusContainerImage = incusContainerImage =
forMatchingSystems forMatchingSystems

View file

@ -594,7 +594,7 @@ in
package = pkgs.hadoop2; package = pkgs.hadoop2;
}; };
haste-server = handleTest ./haste-server.nix { }; haste-server = handleTest ./haste-server.nix { };
haproxy = handleTest ./haproxy.nix { }; haproxy = runTest ./haproxy.nix;
hardened = handleTest ./hardened.nix { }; hardened = handleTest ./hardened.nix { };
harmonia = runTest ./harmonia.nix; harmonia = runTest ./harmonia.nix;
headscale = handleTest ./headscale.nix { }; headscale = handleTest ./headscale.nix { };

View file

@ -1,10 +1,9 @@
import ./make-test-python.nix ( { lib, hostPkgs, ... }:
{ lib, pkgs, ... }:
{ {
name = "haproxy"; name = "haproxy";
nodes = { nodes = {
server = server =
{ ... }: { pkgs, ... }:
{ {
services.haproxy = { services.haproxy = {
enable = true; enable = true;
@ -67,7 +66,7 @@ import ./make-test-python.nix (
]; ];
}; };
client = client =
{ ... }: { pkgs, ... }:
{ {
environment.systemPackages = [ pkgs.curlHTTP3 ]; environment.systemPackages = [ pkgs.curlHTTP3 ];
}; };
@ -81,7 +80,7 @@ import ./make-test-python.nix (
raise Exception(f"Command {command} failed with exit code {r}") raise Exception(f"Command {command} failed with exit code {r}")
def openssl(command): def openssl(command):
cmd(f"${pkgs.openssl}/bin/openssl {command}") cmd(f"${lib.getExe hostPkgs.openssl} {command}")
# Generate CA. # Generate CA.
openssl("req -new -newkey rsa:4096 -nodes -x509 -days 7 -subj '/C=ZZ/ST=Cloud/L=Unspecified/O=NixOS/OU=Tests/CN=CA Certificate' -keyout cacert.key -out cacert.crt") openssl("req -new -newkey rsa:4096 -nodes -x509 -days 7 -subj '/C=ZZ/ST=Cloud/L=Unspecified/O=NixOS/OU=Tests/CN=CA Certificate' -keyout cacert.key -out cacert.crt")
@ -137,4 +136,3 @@ import ./make-test-python.nix (
assert "We are all good!" in client.succeed("curl -f http://server/index.txt") assert "We are all good!" in client.succeed("curl -f http://server/index.txt")
''; '';
} }
)

View file

@ -139,7 +139,6 @@ let
in in
listToAttrs ( listToAttrs (
concatMap genTests [ concatMap genTests [
29
30 30
31 31
] ]

View file

@ -1,72 +0,0 @@
{
pkgs,
makeTest,
genTests,
}:
let
inherit (pkgs) lib;
test-sql = pkgs.writeText "postgresql-test" ''
CREATE EXTENSION citus;
CREATE TABLE examples (
id bigserial,
shard_key int,
PRIMARY KEY (id, shard_key)
);
SELECT create_distributed_table('examples', 'shard_key');
INSERT INTO examples (shard_key) SELECT shard % 10 FROM generate_series(1,1000) shard;
'';
makeTestFor =
package:
makeTest {
name = "citus-${package.name}";
meta = with lib.maintainers; {
maintainers = [ typetetris ];
};
nodes.machine =
{ ... }:
{
services.postgresql = {
inherit package;
enable = true;
extensions =
ps: with ps; [
citus
];
settings = {
shared_preload_libraries = "citus";
};
};
};
testScript = ''
def check_count(statement, lines):
return 'test $(sudo -u postgres psql postgres -tAc "{}") -eq {}'.format(
statement, lines
)
machine.start()
machine.wait_for_unit("postgresql")
with subtest("Postgresql with extension citus is available just after unit start"):
machine.succeed(
"sudo -u postgres psql -f ${test-sql}"
)
machine.succeed(check_count("SELECT count(*) FROM examples;", 1000))
machine.shutdown()
'';
};
in
genTests {
inherit makeTestFor;
filter = _: p: !p.pkgs.citus.meta.broken;
}

View file

@ -36,10 +36,6 @@ in
# extensions # extensions
anonymizer = importWithArgs ./anonymizer.nix; anonymizer = importWithArgs ./anonymizer.nix;
citus = importWithArgs ./citus.nix;
pgjwt = importWithArgs ./pgjwt.nix; pgjwt = importWithArgs ./pgjwt.nix;
pgvecto-rs = importWithArgs ./pgvecto-rs.nix;
timescaledb = importWithArgs ./timescaledb.nix;
tsja = importWithArgs ./tsja.nix;
wal2json = importWithArgs ./wal2json.nix; wal2json = importWithArgs ./wal2json.nix;
} }

View file

@ -1,78 +0,0 @@
{
pkgs,
makeTest,
genTests,
}:
let
inherit (pkgs) lib;
# Test cases from https://docs.vectorchord.ai/use-case/hybrid-search.html
test-sql = pkgs.writeText "postgresql-test" ''
CREATE EXTENSION vectors;
CREATE TABLE items (
id bigserial PRIMARY KEY,
content text NOT NULL,
embedding vectors.vector(3) NOT NULL -- 3 dimensions
);
INSERT INTO items (content, embedding) VALUES
('a fat cat sat on a mat and ate a fat rat', '[1, 2, 3]'),
('a fat dog sat on a mat and ate a fat rat', '[4, 5, 6]'),
('a thin cat sat on a mat and ate a thin rat', '[7, 8, 9]'),
('a thin dog sat on a mat and ate a thin rat', '[10, 11, 12]');
'';
makeTestFor =
package:
makeTest {
name = "pgvecto-rs-${package.name}";
meta = with lib.maintainers; {
maintainers = [ diogotcorreia ];
};
nodes.machine =
{ ... }:
{
services.postgresql = {
inherit package;
enable = true;
extensions =
ps: with ps; [
pgvecto-rs
];
settings.shared_preload_libraries = "vectors";
};
};
testScript =
{ nodes, ... }:
let
inherit (nodes.machine.services.postgresql.package.pkgs) pgvecto-rs;
in
''
def check_count(statement, lines):
return 'test $(sudo -u postgres psql postgres -tAc "{}"|wc -l) -eq {}'.format(
statement, lines
)
machine.start()
machine.wait_for_unit("postgresql")
with subtest("Postgresql with extension vectors is available just after unit start"):
machine.succeed(check_count("SELECT * FROM pg_available_extensions WHERE name = 'vectors' AND default_version = '${pgvecto-rs.version}';", 1))
machine.succeed("sudo -u postgres psql -f ${test-sql}")
machine.succeed(check_count("SELECT content, embedding FROM items WHERE to_tsvector('english', content) @@ 'cat & rat'::tsquery;", 2))
machine.shutdown()
'';
};
in
genTests {
inherit makeTestFor;
filter = _: p: !p.pkgs.pgvecto-rs.meta.broken;
}

View file

@ -1,97 +0,0 @@
{
pkgs,
makeTest,
genTests,
}:
let
inherit (pkgs) lib;
test-sql = pkgs.writeText "postgresql-test" ''
CREATE EXTENSION timescaledb;
CREATE EXTENSION timescaledb_toolkit;
CREATE TABLE sth (
time TIMESTAMPTZ NOT NULL,
value DOUBLE PRECISION
);
SELECT create_hypertable('sth', 'time');
INSERT INTO sth (time, value) VALUES
('2003-04-12 04:05:06 America/New_York', 1.0),
('2003-04-12 04:05:07 America/New_York', 2.0),
('2003-04-12 04:05:08 America/New_York', 3.0),
('2003-04-12 04:05:09 America/New_York', 4.0),
('2003-04-12 04:05:10 America/New_York', 5.0)
;
WITH t AS (
SELECT
time_bucket('1 day'::interval, time) AS dt,
stats_agg(value) AS stats
FROM sth
GROUP BY time_bucket('1 day'::interval, time)
)
SELECT
average(stats)
FROM t;
SELECT * FROM sth;
'';
makeTestFor =
package:
makeTest {
name = "timescaledb-${package.name}";
meta = with lib.maintainers; {
maintainers = [ typetetris ];
};
nodes.machine =
{ ... }:
{
services.postgresql = {
inherit package;
enable = true;
extensions =
ps: with ps; [
timescaledb
timescaledb_toolkit
];
settings = {
shared_preload_libraries = "timescaledb, timescaledb_toolkit";
};
};
};
testScript = ''
def check_count(statement, lines):
return 'test $(sudo -u postgres psql postgres -tAc "{}"|wc -l) -eq {}'.format(
statement, lines
)
machine.start()
machine.wait_for_unit("postgresql")
with subtest("Postgresql with extensions timescaledb and timescaledb_toolkit is available just after unit start"):
machine.succeed(
"sudo -u postgres psql -f ${test-sql}"
)
machine.fail(check_count("SELECT * FROM sth;", 3))
machine.succeed(check_count("SELECT * FROM sth;", 5))
machine.fail(check_count("SELECT * FROM sth;", 4))
machine.shutdown()
'';
};
in
# Not run by default, because this requires allowUnfree.
# To run these tests:
# NIXPKGS_ALLOW_UNFREE=1 nix-build -A nixosTests.postgresql.timescaledb
lib.dontRecurseIntoAttrs (genTests {
inherit makeTestFor;
filter = _: p: !p.pkgs.timescaledb.meta.broken;
})

View file

@ -1,47 +0,0 @@
{
pkgs,
makeTest,
genTests,
}:
let
inherit (pkgs) lib;
makeTestFor =
package:
makeTest {
name = "tsja-${package.name}";
meta = {
maintainers = with lib.maintainers; [ chayleaf ];
};
nodes.master =
{ ... }:
{
services.postgresql = {
inherit package;
enable = true;
extensions =
ps: with ps; [
tsja
];
};
};
testScript = ''
start_all()
master.wait_for_unit("postgresql")
master.succeed("sudo -u postgres psql -f /run/current-system/sw/share/postgresql/extension/libtsja_dbinit.sql")
# make sure "日本語" is parsed as a separate lexeme
master.succeed("""
sudo -u postgres \\
psql -c "SELECT * FROM ts_debug('japanese', 'PostgreSQL')" \\
| grep "{}"
""")
'';
};
in
genTests {
inherit makeTestFor;
filter = _: p: !p.pkgs.tsja.meta.broken;
}

View file

@ -20,14 +20,14 @@
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "alpaca"; pname = "alpaca";
version = "5.3.0"; version = "5.2.0";
pyproject = false; # Built with meson pyproject = false; # Built with meson
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Jeffser"; owner = "Jeffser";
repo = "Alpaca"; repo = "Alpaca";
tag = version; tag = version;
hash = "sha256-dp/v5PZoDqSp2h0gtZk97ImDKO201VZMiCBv2XnqoGQ="; hash = "sha256-uUGsdHrqzA5fZ4LNtX04H4ue9n4JQrkTYW2PCCFYFHc=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -70,6 +70,10 @@ stdenv.mkDerivation (finalAttrs: {
"PREFIX=${placeholder "out"}" "PREFIX=${placeholder "out"}"
"VERSION=${finalAttrs.version}" "VERSION=${finalAttrs.version}"
"INITRAMFS_DIR=${placeholder "out"}/etc/initramfs-tools" "INITRAMFS_DIR=${placeholder "out"}/etc/initramfs-tools"
# Tries to install to the 'systemd-minimal' and 'udev' nix installation paths
"PKGCONFIG_SERVICEDIR=$(out)/lib/systemd/system"
"PKGCONFIG_UDEVDIR=$(out)/lib/udev"
] ++ lib.optional fuseSupport "BCACHEFS_FUSE=1"; ] ++ lib.optional fuseSupport "BCACHEFS_FUSE=1";
env = { env = {
@ -90,12 +94,6 @@ stdenv.mkDerivation (finalAttrs: {
''; '';
checkFlags = [ "BCACHEFS_TEST_USE_VALGRIND=no" ]; checkFlags = [ "BCACHEFS_TEST_USE_VALGRIND=no" ];
# Tries to install to the 'systemd-minimal' and 'udev' nix installation paths
installFlags = [
"PKGCONFIG_SERVICEDIR=$(out)/lib/systemd/system"
"PKGCONFIG_UDEVDIR=$(out)/lib/udev"
];
postInstall = postInstall =
'' ''
substituteInPlace $out/libexec/bcachefsck_all \ substituteInPlace $out/libexec/bcachefsck_all \

View file

@ -44,6 +44,7 @@ stdenv.mkDerivation (finalAttrs: {
ninja ninja
pkg-config pkg-config
desktop-file-utils # for update-desktop-database desktop-file-utils # for update-desktop-database
gtk4 # for gtk4-update-icon-cache
shared-mime-info # for update-mime-database shared-mime-info # for update-mime-database
vala vala
]; ];
@ -69,7 +70,10 @@ stdenv.mkDerivation (finalAttrs: {
preFixup = '' preFixup = ''
mkdir -p $out/share/gsettings-schemas mkdir -p $out/share/gsettings-schemas
cp -r $lib/share/gsettings-schemas/clapper-unwrapped-$version $out/share/gsettings-schemas/clapper-$version # alias clapper-unwrapped schemas to also provide clapper schemas.
# the precise schema patch can vary based on host platform.
schemas=$(basename $lib/share/gsettings-schemas/clapper-unwrapped-*)
cp -r $lib/share/gsettings-schemas/$schemas $out/share/gsettings-schemas/''${schemas/clapper-unwrapped-/clapper-}
''; '';
meta = { meta = {

View file

@ -48,7 +48,6 @@ stdenv.mkDerivation rec {
asciidoc asciidoc
xmlto xmlto
libpaper libpaper
libuuid
docbook_xsl docbook_xsl
which which
makeWrapper makeWrapper
@ -64,6 +63,7 @@ stdenv.mkDerivation rec {
libnet libnet
nftables nftables
libbsd libbsd
libuuid
]; ];
propagatedBuildInputs = propagatedBuildInputs =
[ [
@ -95,6 +95,7 @@ stdenv.mkDerivation rec {
"powerpc" = "ppc64"; "powerpc" = "ppc64";
"s390" = "s390"; "s390" = "s390";
"mips" = "mips"; "mips" = "mips";
"loongarch" = "loongarch64";
}; };
in in
[ [
@ -146,6 +147,7 @@ stdenv.mkDerivation rec {
"x86_64-linux" "x86_64-linux"
"aarch64-linux" "aarch64-linux"
"armv7l-linux" "armv7l-linux"
"loongarch64-linux"
]; ];
maintainers = [ maintainers.thoughtpolice ]; maintainers = [ maintainers.thoughtpolice ];
}; };

View file

@ -1,37 +0,0 @@
diff --git a/go.mod b/go.mod
index bebd23f..2ad575f 100644
--- a/go.mod
+++ b/go.mod
@@ -1,8 +1,8 @@
module github.com/rs/curlie
require (
- golang.org/x/crypto v0.1.0
- golang.org/x/sys v0.1.0
+ golang.org/x/crypto v0.0.0-20180524125353-159ae71589f3
+ golang.org/x/sys v0.0.0-20211110154304-99a53858aa08
)
go 1.13
diff --git a/go.sum b/go.sum
index 6b2e5c3..452bcf9 100644
--- a/go.sum
+++ b/go.sum
@@ -1,4 +1,6 @@
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
+golang.org/x/crypto v0.0.0-20180524125353-159ae71589f3 h1:mPCVkWhSH1DSDQg4ZwAFYMo/+evpqK1WzBt33b9TXRE=
+golang.org/x/crypto v0.0.0-20180524125353-159ae71589f3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.1.0 h1:MDRAIl0xIo9Io2xV565hzXHw3zVseKrJKodhohM5CjU=
@@ -10,6 +12,8 @@ golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug
golang.org/x/net v0.1.0/go.mod h1:Cx3nUiGt4eDBEyega/BKRp+/AlGL8hYe7U9odMt2Cco=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
+golang.org/x/sys v0.0.0-20211110154304-99a53858aa08 h1:WecRHqgE09JBkh/584XIE6PMz5KKE/vER4izNUi30AQ=
+golang.org/x/sys v0.0.0-20211110154304-99a53858aa08/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
--
2.40.1

View file

@ -1,32 +1,28 @@
{ {
lib,
buildGoModule, buildGoModule,
fetchFromGitHub, fetchFromGitHub,
lib,
curlie, curlie,
testers, testers,
}: }:
buildGoModule rec { buildGoModule (finalAttrs: {
pname = "curlie"; pname = "curlie";
version = "1.7.2"; version = "1.8.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "rs"; owner = "rs";
repo = pname; repo = "curlie";
rev = "v${version}"; tag = "v${finalAttrs.version}";
hash = "sha256-YOsq3cB+Pn2eC1Dky3fobBRR7GMxcf/tvWr6i3Vq/BE="; hash = "sha256-BlpIDik4hkU4c+KCyAmgUURIN362RDQID/qo6Ojp2Ek=";
}; };
patches = [ vendorHash = "sha256-GBccl8V87u26dtrGpHR+rKqRBqX6lq1SBwfsPvj/+44=";
./bump-golang-x-sys.patch
];
vendorHash = "sha256-VsPdMUfS4UVem6uJgFISfFHQEKtIumDQktHQFPC1muc=";
ldflags = [ ldflags = [
"-s" "-s"
"-w" "-w"
"-X main.version=${version}" "-X main.version=${finalAttrs.version}"
]; ];
passthru.tests.version = testers.testVersion { passthru.tests.version = testers.testVersion {
@ -34,11 +30,11 @@ buildGoModule rec {
command = "curlie version"; command = "curlie version";
}; };
meta = with lib; { meta = {
description = "Frontend to curl that adds the ease of use of httpie, without compromising on features and performance"; description = "Frontend to curl that adds the ease of use of httpie, without compromising on features and performance";
homepage = "https://curlie.io/"; homepage = "https://curlie.io/";
maintainers = with maintainers; [ ma27 ]; maintainers = with lib.maintainers; [ ma27 ];
license = licenses.mit; license = lib.licenses.mit;
mainProgram = "curlie"; mainProgram = "curlie";
}; };
} })

View file

@ -32,13 +32,13 @@ let
in in
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "flaresolverr"; pname = "flaresolverr";
version = "3.3.21"; version = "3.3.21-unstable-2025-03-04";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "FlareSolverr"; owner = "FlareSolverr";
repo = "FlareSolverr"; repo = "FlareSolverr";
rev = "v${finalAttrs.version}"; rev = "ce5369dd413cd71a81ce38a5ccd379f6c9352e23";
hash = "sha256-M/snpYKZK3pgzlhYjRYEiAPlK9DUKYRiiu43KcrAy9g="; hash = "sha256-cZ/YT4H2OU5l3AosROnkoyT5qrva5lxKshQMS626f2E=";
}; };
nativeBuildInputs = [ makeWrapper ]; nativeBuildInputs = [ makeWrapper ];
@ -79,7 +79,5 @@ stdenv.mkDerivation (finalAttrs: {
mainProgram = "flaresolverr"; mainProgram = "flaresolverr";
maintainers = with maintainers; [ paveloom ]; maintainers = with maintainers; [ paveloom ];
inherit (undetected-chromedriver.meta) platforms; inherit (undetected-chromedriver.meta) platforms;
# See https://github.com/NixOS/nixpkgs/issues/332776
broken = true;
}; };
}) })

View file

@ -1,87 +0,0 @@
{
lib,
stdenv,
fetchurl,
fetchFromGitHub,
cmake,
pkg-config,
cairo,
fontconfig,
freetype,
glib,
libXdmcp,
makeWrapper,
pango,
pcre,
perlPackages,
}:
let
ucd-blocks = fetchurl {
url = "https://www.unicode.org/Public/15.0.0/ucd/Blocks.txt";
hash = "sha256-Up3F0PY4bVLy9W4AS7+rSM4tWH7qnTi6VGxAUkkb2CA=";
};
in
stdenv.mkDerivation rec {
pname = "fntsample";
version = "5.4";
src = fetchFromGitHub {
owner = "eugmes";
repo = "fntsample";
rev = "release/${version}";
hash = "sha256-O5RT68wPWwzCb51JZWWNcIubWoM7NZw/MRiaHXPDmF0=";
};
cmakeFlags = [
"-DUNICODE_BLOCKS=${ucd-blocks.outPath}"
];
outputs = [
"out"
"man"
];
nativeBuildInputs = [
cmake
makeWrapper
pkg-config
];
buildInputs = [
cairo
fontconfig
freetype
glib
libXdmcp
pango
perlPackages.perl
pcre
];
postFixup =
let
perlPath =
with perlPackages;
makePerlPath [
ExporterTiny
ListMoreUtils
PDFAPI2
libintl-perl
];
in
''
for cmd in pdfoutline pdf-extract-outline; do
wrapProgram "$out/bin/$cmd" --prefix PERL5LIB : "${perlPath}"
done
'';
meta = with lib; {
homepage = "https://github.com/eugmes/fntsample";
description = "PDF and PostScript font samples generator";
license = licenses.gpl3Plus;
maintainers = [ ];
platforms = platforms.unix;
};
}
# TODO: factor/package ucd-blocks

View file

@ -25,11 +25,11 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "keymapp"; pname = "keymapp";
version = "1.3.5"; version = "1.3.6";
src = fetchurl { src = fetchurl {
url = "https://oryx.nyc3.cdn.digitaloceanspaces.com/keymapp/keymapp-${version}.tar.gz"; url = "https://oryx.nyc3.cdn.digitaloceanspaces.com/keymapp/keymapp-${version}.tar.gz";
hash = "sha256-GXmmQssrsEpsqfERSa8ZFGo0r72qsdsbFtmic8+SCfQ="; hash = "sha256-LWO4aeNmGgZ+T41pb6HwC3tnwaiGviDIq63QMsrlkEc=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -6,24 +6,28 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "lon"; pname = "lon";
version = "0.2.0"; version = "0.3.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "nikstur"; owner = "nikstur";
repo = "lon"; repo = "lon";
tag = version; tag = version;
hash = "sha256-VGvK0ahBl440NMs03WqmP7T4a1DP13yfX47YI84rlGU="; hash = "sha256-LtZhEfdO/kTbeDG/lhiH+9QPw3kgov72Xn1NelgNsE0=";
}; };
sourceRoot = "source/rust/lon"; sourceRoot = "source/rust/lon";
useFetchCargoVendor = true; useFetchCargoVendor = true;
cargoHash = "sha256-YzQ6A1dH2D56/3inAmsE6G5rCnpWhDawxk6+FMWfhkc="; cargoHash = "sha256-cr1+WBlq/uuOVDIbgN5UhsQ0ISLDYOxyGRnQ6ntEH5w=";
meta = { meta = {
description = "Lock & update Nix dependencies"; description = "Lock & update Nix dependencies";
homepage = "https://github.com/nikstur/lon"; homepage = "https://github.com/nikstur/lon";
maintainers = with lib.maintainers; [ ma27 ]; changelog = "https://github.com/nikstur/lon/blob/${version}/CHANGELOG.md";
maintainers = with lib.maintainers; [
ma27
nikstur
];
license = lib.licenses.mit; license = lib.licenses.mit;
mainProgram = "lon"; mainProgram = "lon";
}; };

View file

@ -7,18 +7,18 @@
okteto, okteto,
}: }:
buildGoModule rec { buildGoModule (finalAttrs: {
pname = "okteto"; pname = "okteto";
version = "3.4.0"; version = "3.6.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "okteto"; owner = "okteto";
repo = "okteto"; repo = "okteto";
rev = version; rev = finalAttrs.version;
hash = "sha256-vi2ow95a3btiR4yINunEa56SUGWlbgNdMdS/T747a+U="; hash = "sha256-EPo8pSGh6NHeVrVwHkLUfmpB/O4aqtlC7SrPKnMz05Q=";
}; };
vendorHash = "sha256-tlZr1IOGOSbahd0Wh3yozbBrVL3RAWQLKNv/3XlMKqM="; vendorHash = "sha256-1psVUpfRRg+86gniVg1i7RsgmEO12o0pCIQZ0roDDFc=";
postPatch = '' postPatch = ''
# Disable some tests that need file system & network access. # Disable some tests that need file system & network access.
@ -36,7 +36,7 @@ buildGoModule rec {
ldflags = [ ldflags = [
"-s" "-s"
"-w" "-w"
"-X github.com/okteto/okteto/pkg/config.VersionString=${version}" "-X github.com/okteto/okteto/pkg/config.VersionString=${finalAttrs.version}"
]; ];
tags = [ tags = [
@ -61,6 +61,7 @@ buildGoModule rec {
"Test_translateJobWithoutVolumes" "Test_translateJobWithoutVolumes"
"Test_translateJobWithVolumes" "Test_translateJobWithVolumes"
"Test_translateService" "Test_translateService"
"TestProtobufTranslator_Translate_Success"
]; ];
in in
[ "-skip=^${builtins.concatStringsSep "$|^" skippedTests}$" ]; [ "-skip=^${builtins.concatStringsSep "$|^" skippedTests}$" ];
@ -84,4 +85,4 @@ buildGoModule rec {
maintainers = with lib.maintainers; [ aaronjheng ]; maintainers = with lib.maintainers; [ aaronjheng ];
mainProgram = "okteto"; mainProgram = "okteto";
}; };
} })

View file

@ -19,13 +19,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "pgbackrest"; pname = "pgbackrest";
version = "2.54.2"; version = "2.55.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "pgbackrest"; owner = "pgbackrest";
repo = "pgbackrest"; repo = "pgbackrest";
rev = "release/${version}"; rev = "release/${version}";
sha256 = "sha256-Q0WZLbtn+qJLs2jop5S92NFC6QBtCQnU3AEEcm6MSVI="; sha256 = "sha256-w4jgIyZPglmI0yj8eyoIvFgNX7izpo3lBixuv7qSAxM=";
}; };
strictDeps = true; strictDeps = true;

View file

@ -32,10 +32,10 @@
}: }:
let let
version = "3.1.0"; version = "3.3.0";
webUiStatic = fetchurl { webUiStatic = fetchurl {
url = "https://github.com/prometheus/prometheus/releases/download/v${version}/prometheus-web-ui-${version}.tar.gz"; url = "https://github.com/prometheus/prometheus/releases/download/v${version}/prometheus-web-ui-${version}.tar.gz";
hash = "sha256-05DaaDIFtADnkLFqdHe5eUvo6LRz6BduMvGVmzOeurM="; hash = "sha256-hF8eLIaef4Z5ZGyjqX1Wyd/DD4Bk571ODQ11b+nHTTA=";
}; };
in in
buildGoModule rec { buildGoModule rec {
@ -52,10 +52,10 @@ buildGoModule rec {
owner = "prometheus"; owner = "prometheus";
repo = "prometheus"; repo = "prometheus";
tag = "v${version}"; tag = "v${version}";
hash = "sha256-Q3f0L6cRVQRL1AHgUI3VNbMG9eTfcApbXfSjOTHr7Go="; hash = "sha256-WZR6c7uN8I+egoqABaWay0MfA3tv3O74jlrkC/1zt10=";
}; };
vendorHash = "sha256-vQwBnSxoyIYTeWLk3GD9pKDuUjjsMfwPptgyVnzcTok="; vendorHash = "sha256-xBopACaDrtGveVoza/WIge9m5bBAxnZC+qtsuAF20J4=";
excludedPackages = [ excludedPackages = [
"documentation/prometheus-mixin" "documentation/prometheus-mixin"

View file

@ -1,11 +1,13 @@
{ {
lib, lib,
python3Packages,
fetchFromGitHub, fetchFromGitHub,
fetchpatch, fetchpatch,
python3, versionCheckHook,
nix-update-script,
}: }:
python3.pkgs.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "rich-cli"; pname = "rich-cli";
version = "1.8.0"; version = "1.8.0";
pyproject = true; pyproject = true;
@ -32,17 +34,15 @@ python3.pkgs.buildPythonApplication rec {
]; ];
pythonRelaxDeps = [ pythonRelaxDeps = [
"rich"
"textual" "textual"
]; ];
build-system = with python3.pkgs; [ build-system = with python3Packages; [
poetry-core poetry-core
]; ];
nativeBuildInputs = with python3.pkgs; [ dependencies = with python3Packages; [
];
dependencies = with python3.pkgs; [
click click
requests requests
rich rich
@ -50,15 +50,23 @@ python3.pkgs.buildPythonApplication rec {
textual textual
]; ];
pythonImportsCheck = [ pythonImportsCheck = [ "rich_cli" ];
"rich_cli"
];
meta = with lib; { nativeCheckInputs = [
versionCheckHook
];
versionCheckProgram = "${placeholder "out"}/bin/rich";
versionCheckProgramArg = "--version";
passthru = {
updateScript = nix-update-script { };
};
meta = {
description = "Command Line Interface to Rich"; description = "Command Line Interface to Rich";
homepage = "https://github.com/Textualize/rich-cli"; homepage = "https://github.com/Textualize/rich-cli";
changelog = "https://github.com/Textualize/rich-cli/releases/tag/v${version}"; changelog = "https://github.com/Textualize/rich-cli/releases/tag/v${version}";
license = licenses.mit; license = lib.licenses.mit;
maintainers = [ ]; maintainers = [ ];
mainProgram = "rich"; mainProgram = "rich";
}; };

View file

@ -7,18 +7,21 @@
gitMinimal, gitMinimal,
ripgrep, ripgrep,
writableTmpDirAsHomeHook, writableTmpDirAsHomeHook,
versionCheckHook,
nix-update-script,
}: }:
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "seagoat"; pname = "seagoat";
version = "0.54.6"; version = "0.54.9";
pyproject = true; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "kantord"; owner = "kantord";
repo = "SeaGOAT"; repo = "SeaGOAT";
tag = "v${version}"; tag = "v${version}";
hash = "sha256-KEFA1DUfsJpeNkWui/WKazImGCSwTFlPD8qsGFJNtr0="; hash = "sha256-BfZbYQ6ylMj8cn7q2AavU570/ci83ffdDbeB+F/wZlk=";
}; };
build-system = [ python3Packages.poetry-core ]; build-system = [ python3Packages.poetry-core ];
@ -26,6 +29,7 @@ python3Packages.buildPythonApplication rec {
pythonRelaxDeps = [ pythonRelaxDeps = [
"chromadb" "chromadb"
"psutil" "psutil"
"setuptools"
]; ];
dependencies = with python3Packages; [ dependencies = with python3Packages; [
@ -59,8 +63,10 @@ python3Packages.buildPythonApplication rec {
++ [ ++ [
gitMinimal gitMinimal
ripgrep ripgrep
versionCheckHook
writableTmpDirAsHomeHook writableTmpDirAsHomeHook
]; ];
versionCheckProgramArg = "--version";
disabledTests = import ./failing_tests.nix; disabledTests = import ./failing_tests.nix;
@ -80,6 +86,10 @@ python3Packages.buildPythonApplication rec {
--prefix PATH : "${ripgrep}/bin" --prefix PATH : "${ripgrep}/bin"
''; '';
passthru = {
updateScript = nix-update-script { };
};
meta = { meta = {
description = "Local-first semantic code search engine"; description = "Local-first semantic code search engine";
homepage = "https://kantord.github.io/SeaGOAT/"; homepage = "https://kantord.github.io/SeaGOAT/";

View file

@ -52,6 +52,11 @@ let
cat << EOF > $out/bin/${pname} cat << EOF > $out/bin/${pname}
#!${stdenvNoCC.shell} #!${stdenvNoCC.shell}
updater_xml="\$HOME/.stm32cubemx/thirdparties/db/updaterThirdParties.xml"
if [ -e "\$updater_xml" ] && [ ! -w "\$updater_xml" ]; then
echo "Warning: Unwritable \$updater_xml prevents CubeMX software packages from working correctly. Fixing that."
(set -x; chmod u+w "\$updater_xml")
fi
${jdk21}/bin/java -jar $out/opt/STM32CubeMX/STM32CubeMX "\$@" ${jdk21}/bin/java -jar $out/opt/STM32CubeMX/STM32CubeMX "\$@"
EOF EOF
chmod +x $out/bin/${pname} chmod +x $out/bin/${pname}

View file

@ -20,17 +20,17 @@
rustPlatform.buildRustPackage (finalAttrs: { rustPlatform.buildRustPackage (finalAttrs: {
pname = "uv"; pname = "uv";
version = "0.6.14"; version = "0.6.16";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "astral-sh"; owner = "astral-sh";
repo = "uv"; repo = "uv";
tag = finalAttrs.version; tag = finalAttrs.version;
hash = "sha256-1ZmH757yqzXCYYRJoNGzh2Jy5ACWjNHugcY0szztBRQ="; hash = "sha256-udghrau7ZpLngjwL4mOMvUJT8G609HuBL51Te+h66YY=";
}; };
useFetchCargoVendor = true; useFetchCargoVendor = true;
cargoHash = "sha256-zE6WP5rFUvx6B3ti5mlXPD4Z+1VQM0qpaScszKjTNmY="; cargoHash = "sha256-1eq5gsHcf8iAR2z89WnZNdcoToE0Cpl4HgsiffSg1wk=";
buildInputs = [ buildInputs = [
rust-jemalloc-sys rust-jemalloc-sys

View file

@ -1,10 +1,11 @@
{ {
lib, lib,
python3Packages,
fetchFromGitHub, fetchFromGitHub,
python3, nix-update-script,
}: }:
python3.pkgs.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "wsrepl"; pname = "wsrepl";
version = "0.2.0"; version = "0.2.0";
pyproject = true; pyproject = true;
@ -17,14 +18,15 @@ python3.pkgs.buildPythonApplication rec {
}; };
pythonRelaxDeps = [ pythonRelaxDeps = [
"rich"
"textual" "textual"
]; ];
build-system = with python3.pkgs; [ build-system = with python3Packages; [
poetry-core poetry-core
]; ];
dependencies = with python3.pkgs; [ dependencies = with python3Packages; [
pygments pygments
pyperclip pyperclip
rich rich
@ -39,12 +41,16 @@ python3.pkgs.buildPythonApplication rec {
"wsrepl" "wsrepl"
]; ];
meta = with lib; { passthru = {
updateScript = nix-update-script { };
};
meta = {
description = "WebSocket REPL"; description = "WebSocket REPL";
homepage = "https://github.com/doyensec/wsrepl"; homepage = "https://github.com/doyensec/wsrepl";
changelog = "https://github.com/doyensec/wsrepl/releases/tag/v${version}"; changelog = "https://github.com/doyensec/wsrepl/releases/tag/v${version}";
license = licenses.mit; license = lib.licenses.mit;
maintainers = with maintainers; [ fab ]; maintainers = with lib.maintainers; [ fab ];
mainProgram = "wsrepl"; mainProgram = "wsrepl";
}; };
} }

View file

@ -12,6 +12,10 @@ let
defaultVersion = defaultVersion =
with lib.versions; with lib.versions;
lib.switch coq.coq-version [ lib.switch coq.coq-version [
{
case = "8.20";
out = "1.3.2+8.20";
}
{ {
case = "8.19"; case = "8.19";
out = "1.3.2+8.19"; out = "1.3.2+8.19";
@ -31,6 +35,7 @@ let
] null; ] null;
release = { release = {
"1.3.2+8.20".sha256 = "sha256-RuX2aInSjwebs/aEOoisNxqcIPqDA2kWehN9tFYqOx4=";
"1.3.2+8.19".sha256 = "sha256-Zd7piAWlKPAZKEz7HVWxhnzOLbA/eR9C/E0T298MJVY="; "1.3.2+8.19".sha256 = "sha256-Zd7piAWlKPAZKEz7HVWxhnzOLbA/eR9C/E0T298MJVY=";
"1.3.2+8.18".sha256 = "sha256-D+tQ+1YrSbbqc54U5UlxW1Hhly49TB2pu1LEPL2Eo64="; "1.3.2+8.18".sha256 = "sha256-D+tQ+1YrSbbqc54U5UlxW1Hhly49TB2pu1LEPL2Eo64=";
"1.3.2+8.17".sha256 = "sha256-2fw66z3yFKs5g+zNCeYXiEyxPzjUr+lGDciiQiuuMAs="; "1.3.2+8.17".sha256 = "sha256-2fw66z3yFKs5g+zNCeYXiEyxPzjUr+lGDciiQiuuMAs=";

View file

@ -128,7 +128,7 @@ assert (
let let
pname = "libint"; pname = "libint";
version = "2.9.0"; version = "2.10.2";
meta = { meta = {
description = "Library for the evaluation of molecular integrals of many-body operators over Gaussian functions"; description = "Library for the evaluation of molecular integrals of many-body operators over Gaussian functions";
@ -151,7 +151,7 @@ let
owner = "evaleev"; owner = "evaleev";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
hash = "sha256-y+Mo8J/UWDrkkNEDAoostb/k6jrhYYeU0u9Incrd2cE="; hash = "sha256-pxSqW3K76RURy1nhWJKtFNWsiSpU8jPtd+ZMICEr0IY=";
}; };
# Replace hardcoded "/bin/rm" with normal "rm" # Replace hardcoded "/bin/rm" with normal "rm"

View file

@ -39,12 +39,12 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "coiled"; pname = "coiled";
version = "1.90.4"; version = "1.92.0";
pyproject = true; pyproject = true;
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
hash = "sha256-wICWij2mdXlV3aYNeK+vITicEKbiuaO2PcZE+h9QDBo="; hash = "sha256-dwHPhXro/E0XOR2iJJkSKYIRlFi2OhD2qXO4GmzDg2I=";
}; };
build-system = [ build-system = [

View file

@ -2,14 +2,19 @@
lib, lib,
buildPythonPackage, buildPythonPackage,
fetchFromGitHub, fetchFromGitHub,
httpx,
pillow, # build-system
poetry-core, poetry-core,
# dependencies
httpx,
pydantic, pydantic,
# tests
pillow,
pytest-asyncio, pytest-asyncio,
pytest-httpserver, pytest-httpserver,
pytestCheckHook, pytestCheckHook,
pythonOlder,
}: }:
buildPythonPackage rec { buildPythonPackage rec {
@ -17,8 +22,6 @@ buildPythonPackage rec {
version = "0.4.8"; version = "0.4.8";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.8";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ollama"; owner = "ollama";
repo = "ollama-python"; repo = "ollama-python";
@ -47,13 +50,15 @@ buildPythonPackage rec {
pytestCheckHook pytestCheckHook
]; ];
__darwinAllowLocalNetworking = true;
pythonImportsCheck = [ "ollama" ]; pythonImportsCheck = [ "ollama" ];
meta = with lib; { meta = {
description = "Ollama Python library"; description = "Ollama Python library";
homepage = "https://github.com/ollama/ollama-python"; homepage = "https://github.com/ollama/ollama-python";
changelog = "https://github.com/ollama/ollama-python/releases/tag/${src.tag}"; changelog = "https://github.com/ollama/ollama-python/releases/tag/${src.tag}";
license = licenses.mit; license = lib.licenses.mit;
maintainers = with maintainers; [ fab ]; maintainers = with lib.maintainers; [ fab ];
}; };
} }

View file

@ -15,7 +15,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "pdoc"; pname = "pdoc";
version = "15.0.2"; version = "15.0.3";
disabled = pythonOlder "3.9"; disabled = pythonOlder "3.9";
pyproject = true; pyproject = true;
@ -24,7 +24,7 @@ buildPythonPackage rec {
owner = "mitmproxy"; owner = "mitmproxy";
repo = "pdoc"; repo = "pdoc";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-5NOoe8TEqK+Zypv5eR/YLGwOmcigiP3RnuWQ6uC+DSI="; hash = "sha256-qr0K+ZOmEPWMkm/cPisdw6gSPZI4FvICaKQNt/sef40=";
}; };
build-system = [ setuptools ]; build-system = [ setuptools ];

View file

@ -236,16 +236,16 @@ checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e"
[[package]] [[package]]
name = "proc-macro2" name = "proc-macro2"
version = "1.0.94" version = "1.0.95"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a31971752e70b8b2686d7e46ec17fb38dad4051d94024c88df49b667caea9c84" checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778"
dependencies = [ dependencies = [
"unicode-ident", "unicode-ident",
] ]
[[package]] [[package]]
name = "pycrdt" name = "pycrdt"
version = "0.12.13" version = "0.12.14"
dependencies = [ dependencies = [
"pyo3", "pyo3",
"yrs", "yrs",
@ -253,9 +253,9 @@ dependencies = [
[[package]] [[package]]
name = "pyo3" name = "pyo3"
version = "0.24.1" version = "0.24.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "17da310086b068fbdcefbba30aeb3721d5bb9af8db4987d6735b2183ca567229" checksum = "e5203598f366b11a02b13aa20cab591229ff0a89fd121a308a5df751d5fc9219"
dependencies = [ dependencies = [
"cfg-if", "cfg-if",
"indoc", "indoc",
@ -271,9 +271,9 @@ dependencies = [
[[package]] [[package]]
name = "pyo3-build-config" name = "pyo3-build-config"
version = "0.24.1" version = "0.24.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e27165889bd793000a098bb966adc4300c312497ea25cf7a690a9f0ac5aa5fc1" checksum = "99636d423fa2ca130fa5acde3059308006d46f98caac629418e53f7ebb1e9999"
dependencies = [ dependencies = [
"once_cell", "once_cell",
"target-lexicon", "target-lexicon",
@ -281,9 +281,9 @@ dependencies = [
[[package]] [[package]]
name = "pyo3-ffi" name = "pyo3-ffi"
version = "0.24.1" version = "0.24.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "05280526e1dbf6b420062f3ef228b78c0c54ba94e157f5cb724a609d0f2faabc" checksum = "78f9cf92ba9c409279bc3305b5409d90db2d2c22392d443a87df3a1adad59e33"
dependencies = [ dependencies = [
"libc", "libc",
"pyo3-build-config", "pyo3-build-config",
@ -291,9 +291,9 @@ dependencies = [
[[package]] [[package]]
name = "pyo3-macros" name = "pyo3-macros"
version = "0.24.1" version = "0.24.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5c3ce5686aa4d3f63359a5100c62a127c9f15e8398e5fdeb5deef1fed5cd5f44" checksum = "0b999cb1a6ce21f9a6b147dcf1be9ffedf02e0043aec74dc390f3007047cecd9"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"pyo3-macros-backend", "pyo3-macros-backend",
@ -303,9 +303,9 @@ dependencies = [
[[package]] [[package]]
name = "pyo3-macros-backend" name = "pyo3-macros-backend"
version = "0.24.1" version = "0.24.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f4cf6faa0cbfb0ed08e89beb8103ae9724eb4750e3a78084ba4017cbe94f3855" checksum = "822ece1c7e1012745607d5cf0bcb2874769f0f7cb34c4cde03b9358eb9ef911a"
dependencies = [ dependencies = [
"heck", "heck",
"proc-macro2", "proc-macro2",
@ -569,9 +569,9 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
[[package]] [[package]]
name = "yrs" name = "yrs"
version = "0.23.0" version = "0.23.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0189b51d8ab1283e7c1f1f515c610875262e629cf258bec530da5cd4aa115d59" checksum = "4a7cab84724ae7f361a8c92465f5160922cbb941a499e1a8cacd103351ab9c78"
dependencies = [ dependencies = [
"arc-swap", "arc-swap",
"async-lock", "async-lock",

View file

@ -19,14 +19,14 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "pycrdt"; pname = "pycrdt";
version = "0.12.13"; version = "0.12.14";
pyproject = true; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "jupyter-server"; owner = "jupyter-server";
repo = "pycrdt"; repo = "pycrdt";
tag = version; tag = version;
hash = "sha256-EI8LrT5wddmmw3D5C+IhJnViGnSbHWMD3WFp/f1hY7M="; hash = "sha256-QPA9ek0szYgN6R0mnnU5MN4cYa8DVqIw10DxQ/TzaH0=";
}; };
postPatch = '' postPatch = ''

View file

@ -62,6 +62,7 @@
pytest-xdist, pytest-xdist,
pytest-watch, pytest-watch,
responses, responses,
stdenv,
}: }:
buildPythonPackage rec { buildPythonPackage rec {
@ -167,6 +168,11 @@ buildPythonPackage rec {
__darwinAllowLocalNetworking = true; __darwinAllowLocalNetworking = true;
disabledTestPaths = lib.optionals stdenv.hostPlatform.isDarwin [
# darwin: 'profiler should not be running'
"tests/profiler/test_continuous_profiler.py"
];
disabledTests = [ disabledTests = [
# depends on git revision # depends on git revision
"test_default_release" "test_default_release"

View file

@ -29,14 +29,14 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "textual"; pname = "textual";
version = "3.1.0"; version = "3.1.1";
pyproject = true; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Textualize"; owner = "Textualize";
repo = "textual"; repo = "textual";
tag = "v${version}"; tag = "v${version}";
hash = "sha256-JBqzaSsLSCzUYdIjlPZdPJlRKrqtWWPqJPp85uMcMLc="; hash = "sha256-emF6LpjVCgxC+Cf+LhFrawc3rxfMnZtyijmoVg0ZJbQ=";
}; };
build-system = [ poetry-core ]; build-system = [ poetry-core ];

View file

@ -16,16 +16,16 @@ let
variants = { variants = {
# ./update-zen.py zen # ./update-zen.py zen
zen = { zen = {
version = "6.14.1"; # zen version = "6.14.3"; # zen
suffix = "zen1"; # zen suffix = "zen1"; # zen
sha256 = "07fif9yj33lidp7dp8r66bsqyyh6fckjb3nhxynaikgb17hx9w5b"; # zen sha256 = "17r4gmxbgs0aizlp35pdq515ag50zc3q20fxapbya4yp5qs6ncz0"; # zen
isLqx = false; isLqx = false;
}; };
# ./update-zen.py lqx # ./update-zen.py lqx
lqx = { lqx = {
version = "6.14.1"; # lqx version = "6.14.3"; # lqx
suffix = "lqx1"; # lqx suffix = "lqx1"; # lqx
sha256 = "0gga9xrdp9q5jdzl3mjbx140wnwxibavvvdgxvqz9f2g3f20d69y"; # lqx sha256 = "1xqhjvi7a6gbsm3zq3gwc5hl8xw17afqx1b1db0p1cp5c9xn3vxa"; # lqx
isLqx = true; isLqx = true;
}; };
}; };

View file

@ -3,7 +3,6 @@
stdenvNoCC, stdenvNoCC,
fetchurl, fetchurl,
nixosTests, nixosTests,
nextcloud29Packages,
nextcloud30Packages, nextcloud30Packages,
nextcloud31Packages, nextcloud31Packages,
}: }:
@ -53,12 +52,6 @@ let
}; };
in in
{ {
nextcloud29 = generic {
version = "29.0.16";
hash = "sha256-SZv2GrGe3NTlQq+GYJJDxbT0QOtbsGwrp9oML6pSUyI=";
packages = nextcloud29Packages;
};
nextcloud30 = generic { nextcloud30 = generic {
version = "30.0.10"; version = "30.0.10";
hash = "sha256-40ldF8X1yRZFQtk/Y21pasyPOLYL7HDPGtLnnHbZlbo="; hash = "sha256-40ldF8X1yRZFQtk/Y21pasyPOLYL7HDPGtLnnHbZlbo=";

File diff suppressed because one or more lines are too long

View file

@ -26,11 +26,6 @@ let
appHash = "sha256-CAORqBdxNQ0x+xIVY2zI07jvsKHaa7eH0jpVuP0eSW4="; appHash = "sha256-CAORqBdxNQ0x+xIVY2zI07jvsKHaa7eH0jpVuP0eSW4=";
modelHash = "sha256-s8MQOLU490/Vr/U4GaGlbdrykOAQOKeWE5+tCzn6Dew="; modelHash = "sha256-s8MQOLU490/Vr/U4GaGlbdrykOAQOKeWE5+tCzn6Dew=";
}; };
"29" = {
version = "7.1.0";
appHash = "sha256-qR4SrTHFAc4YWiZAsL94XcH4VZqYtkRLa0y+NdiFZus=";
modelHash = "sha256-M/j5wVOBLR7xMVJQWDUWAzLajRUBYEzHSNBsRSBUgfM=";
};
}; };
currentVersionInfo = currentVersionInfo =
latestVersionForNc.${ncVersion} latestVersionForNc.${ncVersion}

View file

@ -6,6 +6,7 @@
lz4, lz4,
postgresql, postgresql,
postgresqlBuildExtension, postgresqlBuildExtension,
postgresqlTestExtension,
stdenv, stdenv,
}: }:
@ -35,6 +36,33 @@ postgresqlBuildExtension (finalAttrs: {
lz4 lz4
]; ];
passthru.tests.extension = postgresqlTestExtension {
inherit (finalAttrs) finalPackage;
postgresqlExtraSettings = ''
shared_preload_libraries=citus
'';
sql = ''
CREATE EXTENSION citus;
CREATE TABLE examples (
id bigserial,
shard_key int,
PRIMARY KEY (id, shard_key)
);
SELECT create_distributed_table('examples', 'shard_key');
INSERT INTO examples (shard_key) SELECT shard % 10 FROM generate_series(1,1000) shard;
'';
asserts = [
{
query = "SELECT count(*) FROM examples";
expected = "1000";
description = "Distributed table can be queried successfully.";
}
];
};
meta = { meta = {
# "Our soft policy for Postgres version compatibility is to support Citus' # "Our soft policy for Postgres version compatibility is to support Citus'
# latest release with Postgres' 3 latest releases." # latest release with Postgres' 3 latest releases."

View file

@ -29,6 +29,13 @@ postgresqlBuildExtension (finalAttrs: {
CREATE EXTENSION byteamagic; CREATE EXTENSION byteamagic;
SELECT byteamagic_mime('test'); SELECT byteamagic_mime('test');
''; '';
asserts = [
{
query = "SELECT byteamagic_mime('test')";
expected = "'text/plain'";
description = "`byteamagic_mime(...) should return proper mimetype.";
}
];
}; };
}; };

View file

@ -9,6 +9,7 @@
openssl, openssl,
pkg-config, pkg-config,
postgresql, postgresql,
postgresqlTestExtension,
replaceVars, replaceVars,
rustPlatform, rustPlatform,
}: }:
@ -80,7 +81,39 @@ in
passthru = { passthru = {
updateScript = nix-update-script { }; updateScript = nix-update-script { };
tests = nixosTests.postgresql.pgvecto-rs.passthru.override postgresql; tests.extension = postgresqlTestExtension {
inherit (finalAttrs) finalPackage;
postgresqlExtraSettings = ''
shared_preload_libraries='vectors'
'';
sql = ''
CREATE EXTENSION vectors;
CREATE TABLE items (
id bigserial PRIMARY KEY,
content text NOT NULL,
embedding vectors.vector(3) NOT NULL -- 3 dimensions
);
INSERT INTO items (content, embedding) VALUES
('a fat cat sat on a mat and ate a fat rat', '[1, 2, 3]'),
('a fat dog sat on a mat and ate a fat rat', '[4, 5, 6]'),
('a thin cat sat on a mat and ate a thin rat', '[7, 8, 9]'),
('a thin dog sat on a mat and ate a thin rat', '[10, 11, 12]');
'';
asserts = [
{
query = "SELECT default_version FROM pg_available_extensions WHERE name = 'vectors'";
expected = "'${finalAttrs.version}'";
description = "Extension vectors has correct version.";
}
{
query = "SELECT COUNT(embedding) FROM items WHERE to_tsvector('english', content) @@ 'cat & rat'::tsquery";
expected = "2";
description = "Stores and returns vectors.";
}
];
};
}; };
meta = { meta = {

View file

@ -35,44 +35,32 @@ buildPgrxExtension (finalAttrs: {
passthru.tests.extension = postgresqlTestExtension { passthru.tests.extension = postgresqlTestExtension {
inherit (finalAttrs) finalPackage; inherit (finalAttrs) finalPackage;
withPackages = [ "pgvector" ]; withPackages = [ "pgvector" ];
sql = sql = ''
let
genCheck =
id: compare: expected:
let
vecStr = "[${lib.concatMapStringsSep "," toString compare}]";
in
''
ASSERT (
SELECT id
FROM document_embedding
WHERE ${toString expected} = (embedding <-> '${vecStr}')
) = ${toString id},
'Expected vector of row with ID=${toString id} to have a euclidean distance from ${vecStr} of ${toString expected}';
'';
in
''
CREATE EXTENSION vectorscale CASCADE; CREATE EXTENSION vectorscale CASCADE;
CREATE TABLE IF NOT EXISTS document_embedding ( CREATE TABLE document_embedding (
id BIGINT PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY, id BIGINT PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY,
embedding VECTOR(3) embedding VECTOR(3)
); );
INSERT INTO document_embedding (id, embedding) VALUES INSERT INTO document_embedding (id, embedding) VALUES
(1, '[1,2,4]'), (10, '[1,2,4]'),
(2, '[1,2,5]'); (20, '[1,2,5]');
CREATE INDEX document_embedding_idx ON document_embedding CREATE INDEX document_embedding_idx ON document_embedding
USING diskann (embedding vector_cosine_ops); USING diskann (embedding vector_cosine_ops);
DO $$
BEGIN
${genCheck 1 [ 1 2 3 ] 1}
${genCheck 2 [ 1 2 3 ] 2}
END;
$$
LANGUAGE PLPGSQL;
''; '';
asserts = [
{
query = "SELECT id FROM document_embedding WHERE embedding <-> '[1,2,3]' = 1";
expected = "10";
description = "Expected vector of row with ID=10 to have an euclidean distance from [1,2,3] of 1.";
}
{
query = "SELECT id FROM document_embedding WHERE embedding <-> '[1,2,3]' = 2";
expected = "20";
description = "Expected vector of row with ID=20 to have an euclidean distance from [1,2,3] of 2.";
}
];
}; };
meta = { meta = {

View file

@ -125,31 +125,15 @@ postgresqlBuildExtension (finalAttrs: {
passthru.tests.extension = postgresqlTestExtension { passthru.tests.extension = postgresqlTestExtension {
inherit (finalAttrs) finalPackage; inherit (finalAttrs) finalPackage;
sql = sql =
let
expectedVersion = "${lib.versions.major finalAttrs.version}.${lib.versions.minor finalAttrs.version} USE_GEOS=1 USE_PROJ=1 USE_STATS=1";
in
'' ''
CREATE EXTENSION postgis; CREATE EXTENSION postgis;
CREATE EXTENSION postgis_raster; CREATE EXTENSION postgis_raster;
CREATE EXTENSION postgis_topology; CREATE EXTENSION postgis_topology;
select postgis_version();
do $$
begin
if postgis_version() <> '${expectedVersion}' then
raise '"%" does not match "${expectedVersion}"', postgis_version();
end if;
end$$;
-- st_makepoint goes through c code -- st_makepoint goes through c code
select st_makepoint(1, 1); select st_makepoint(1, 1);
'' ''
+ lib.optionalString withSfcgal '' + lib.optionalString withSfcgal ''
CREATE EXTENSION postgis_sfcgal; CREATE EXTENSION postgis_sfcgal;
do $$
begin
if postgis_sfcgal_version() <> '${sfcgal.version}' then
raise '"%" does not match "${sfcgal.version}"', postgis_sfcgal_version();
end if;
end$$;
CREATE TABLE geometries ( CREATE TABLE geometries (
name varchar, name varchar,
geom geometry(PolygonZ) NOT NULL geom geometry(PolygonZ) NOT NULL
@ -161,6 +145,19 @@ postgresqlBuildExtension (finalAttrs: {
SELECT name from geometries where cg_isplanar(geom); SELECT name from geometries where cg_isplanar(geom);
''; '';
asserts =
[
{
query = "postgis_version()";
expected = "'${lib.versions.major finalAttrs.version}.${lib.versions.minor finalAttrs.version} USE_GEOS=1 USE_PROJ=1 USE_STATS=1'";
description = "postgis_version() returns correct values.";
}
]
++ lib.optional withSfcgal {
query = "postgis_sfcgal_version()";
expected = "'${sfcgal.version}'";
description = "postgis_sfcgal_version() returns correct value.";
};
}; };
meta = { meta = {

View file

@ -3,7 +3,7 @@
lib, lib,
postgresql, postgresql,
postgresqlBuildExtension, postgresqlBuildExtension,
postgresqlTestHook, postgresqlTestExtension,
stdenv, stdenv,
}: }:
@ -20,32 +20,13 @@ postgresqlBuildExtension (finalAttrs: {
makeFlags = [ "USE_PGXS=1" ]; makeFlags = [ "USE_PGXS=1" ];
passthru.tests.extension = stdenv.mkDerivation { passthru.tests.extension = postgresqlTestExtension {
inherit (finalAttrs) version; inherit (finalAttrs) finalPackage;
pname = "rum-test";
dontUnpack = true;
doCheck = true;
nativeCheckInputs = [
postgresqlTestHook
(postgresql.withPackages (_: [ finalAttrs.finalPackage ]))
];
failureHook = "postgresqlStop";
postgresqlTestUserOptions = "LOGIN SUPERUSER";
passAsFile = [ "sql" ];
sql = '' sql = ''
CREATE EXTENSION rum; CREATE EXTENSION rum;
CREATE TABLE test_table (t text, v tsvector); CREATE TABLE test_table (t text, v tsvector);
CREATE INDEX test_table_rumindex ON test_table USING rum (v rum_tsvector_ops); CREATE INDEX test_table_rumindex ON test_table USING rum (v rum_tsvector_ops);
''; '';
checkPhase = ''
runHook preCheck
psql -a -v ON_ERROR_STOP=1 -f $sqlPath
runHook postCheck
'';
installPhase = "touch $out";
}; };
meta = { meta = {

View file

@ -7,6 +7,7 @@
openssl, openssl,
postgresql, postgresql,
postgresqlBuildExtension, postgresqlBuildExtension,
postgresqlTestExtension,
stdenv, stdenv,
enableUnfree ? true, enableUnfree ? true,
@ -50,7 +51,50 @@ postgresqlBuildExtension (finalAttrs: {
done done
''; '';
passthru.tests = nixosTests.postgresql.timescaledb.passthru.override postgresql; passthru.tests.extension = postgresqlTestExtension {
inherit (finalAttrs) finalPackage;
withPackages = [ "timescaledb_toolkit" ];
postgresqlExtraSettings = ''
shared_preload_libraries='timescaledb,timescaledb_toolkit'
'';
sql = ''
CREATE EXTENSION timescaledb;
CREATE EXTENSION timescaledb_toolkit;
CREATE TABLE sth (
time TIMESTAMPTZ NOT NULL,
value DOUBLE PRECISION
);
SELECT create_hypertable('sth', 'time');
INSERT INTO sth (time, value) VALUES
('2003-04-12 04:05:06 America/New_York', 1.0),
('2003-04-12 04:05:07 America/New_York', 2.0),
('2003-04-12 04:05:08 America/New_York', 3.0),
('2003-04-12 04:05:09 America/New_York', 4.0),
('2003-04-12 04:05:10 America/New_York', 5.0)
;
WITH t AS (
SELECT
time_bucket('1 day'::interval, time) AS dt,
stats_agg(value) AS stats
FROM sth
GROUP BY time_bucket('1 day'::interval, time)
)
SELECT
average(stats)
FROM t;
'';
asserts = [
{
query = "SELECT count(*) FROM sth";
expected = "5";
description = "hypertable can be queried successfully.";
}
];
};
meta = { meta = {
description = "Scales PostgreSQL for time-series data via automatic partitioning across time and space"; description = "Scales PostgreSQL for time-series data via automatic partitioning across time and space";

View file

@ -4,6 +4,7 @@
mecab, mecab,
nixosTests, nixosTests,
postgresql, postgresql,
postgresqlTestExtension,
stdenv, stdenv,
}: }:
@ -35,7 +36,19 @@ stdenv.mkDerivation (finalAttrs: {
mv dbinit_libtsja.txt $out/share/postgresql/extension/libtsja_dbinit.sql mv dbinit_libtsja.txt $out/share/postgresql/extension/libtsja_dbinit.sql
''; '';
passthru.tests = nixosTests.postgresql.tsja.passthru.override postgresql; passthru.tests.extension = postgresqlTestExtension {
inherit (finalAttrs) finalPackage;
sql = ''
\i ${finalAttrs.finalPackage}/share/postgresql/extension/libtsja_dbinit.sql
'';
asserts = [
{
query = "EXISTS (SELECT 1 FROM ts_debug('japanese', 'PostgreSQL') WHERE lexemes = '{}')";
expected = "true";
description = "make sure '' is parsed as a separate lexeme";
}
];
};
meta = { meta = {
description = "PostgreSQL extension implementing Japanese text search"; description = "PostgreSQL extension implementing Japanese text search";

View file

@ -1,11 +1,14 @@
{ {
lib,
postgresql, postgresql,
postgresqlTestHook, postgresqlTestHook,
stdenvNoCC, stdenvNoCC,
}: }:
{ {
asserts ? [ ],
finalPackage, finalPackage,
sql,
withPackages ? [ ], withPackages ? [ ],
... ...
}@extraArgs: }@extraArgs:
@ -21,6 +24,20 @@ stdenvNoCC.mkDerivation (
failureHook = "postgresqlStop"; failureHook = "postgresqlStop";
postgresqlTestUserOptions = "LOGIN SUPERUSER"; postgresqlTestUserOptions = "LOGIN SUPERUSER";
passAsFile = [ "sql" ]; passAsFile = [ "sql" ];
sql =
sql
+ lib.concatMapStrings (
{
query,
expected,
description,
}:
''
DO $$ BEGIN
ASSERT (${query}) = (${expected}), '${lib.replaceStrings [ "'" ] [ "''" ] description}';
END $$;
''
) asserts;
checkPhase = '' checkPhase = ''
runHook preCheck runHook preCheck
psql -a -v ON_ERROR_STOP=1 -f "$sqlPath" psql -a -v ON_ERROR_STOP=1 -f "$sqlPath"
@ -28,5 +45,10 @@ stdenvNoCC.mkDerivation (
''; '';
installPhase = "touch $out"; installPhase = "touch $out";
} }
// extraArgs // lib.removeAttrs extraArgs [
"asserts"
"finalPackage"
"sql"
"withPackages"
]
) )

View file

@ -180,8 +180,8 @@ lib.makeExtensible (
}; };
nix_2_28 = commonMeson { nix_2_28 = commonMeson {
version = "2.28.1"; version = "2.28.2";
hash = "sha256-R+HAPvD+AjiyRHZP/elkvka33G499EKT8ntyF/EPPRI="; hash = "sha256-yl+hlZ/VFHIZwPIDEs4ysOYgprW4VEORfSyvScF7Cwg=";
self_attribute_name = "nix_2_28"; self_attribute_name = "nix_2_28";
}; };

View file

@ -639,6 +639,7 @@ mapAliases {
flutter323 = throw "flutter323 has been removed because it isn't updated anymore, and no packages in nixpkgs use it. If you still need it, use flutter.mkFlutter to get a custom version"; # Added 2024-10-05 flutter323 = throw "flutter323 has been removed because it isn't updated anymore, and no packages in nixpkgs use it. If you still need it, use flutter.mkFlutter to get a custom version"; # Added 2024-10-05
fluxus = throw "fluxus has been removed because it hasn't been updated in 9 years and depended on insecure Racket 7.9"; # Added 2024-12-06 fluxus = throw "fluxus has been removed because it hasn't been updated in 9 years and depended on insecure Racket 7.9"; # Added 2024-12-06
fmt_8 = throw "fmt_8 has been removed as it is obsolete and was no longer used in the tree"; # Added 2024-11-12 fmt_8 = throw "fmt_8 has been removed as it is obsolete and was no longer used in the tree"; # Added 2024-11-12
fntsample = throw "fntsample has been removed as it is unmaintained upstream"; # Added 2025-04-21
foldingathome = throw "'foldingathome' has been renamed to/replaced by 'fahclient'"; # Converted to throw 2024-10-17 foldingathome = throw "'foldingathome' has been renamed to/replaced by 'fahclient'"; # Converted to throw 2024-10-17
forgejo-actions-runner = forgejo-runner; # Added 2024-04-04 forgejo-actions-runner = forgejo-runner; # Added 2024-04-04
fornalder = throw "'fornalder' has been removed as it is unmaintained upstream"; # Added 2025-01-25 fornalder = throw "'fornalder' has been removed as it is unmaintained upstream"; # Added 2025-01-25
@ -1207,6 +1208,18 @@ mapAliases {
neocities-cli = neocities; # Added 2024-07-31 neocities-cli = neocities; # Added 2024-07-31
netbox_3_3 = throw "netbox 3.3 series has been removed as it was EOL"; # Added 2023-09-02 netbox_3_3 = throw "netbox 3.3 series has been removed as it was EOL"; # Added 2023-09-02
netbox_3_5 = throw "netbox 3.5 series has been removed as it was EOL"; # Added 2024-01-22 netbox_3_5 = throw "netbox 3.5 series has been removed as it was EOL"; # Added 2024-01-22
nextcloud29 = throw ''
Nextcloud v29 has been removed from `nixpkgs` as the support for is dropped
by upstream in 2025-04. Please upgrade to at least Nextcloud v30 by declaring
services.nextcloud.package = pkgs.nextcloud30;
in your NixOS config.
WARNING: if you were on Nextcloud 28 you have to upgrade to Nextcloud 29
first on 24.11 because Nextcloud doesn't support upgrades across multiple major versions!
''; # Added 2025-04-11
nextcloud29Packages = throw "Nextcloud 29 is EOL!"; # Added 2025-04-11
nextcloud28 = throw '' nextcloud28 = throw ''
Nextcloud v28 has been removed from `nixpkgs` as the support for is dropped Nextcloud v28 has been removed from `nixpkgs` as the support for is dropped
by upstream in 2025-01. Please upgrade to at least Nextcloud v29 by declaring by upstream in 2025-01. Please upgrade to at least Nextcloud v29 by declaring

View file

@ -4157,12 +4157,10 @@ with pkgs;
nm-tray = libsForQt5.callPackage ../tools/networking/networkmanager/tray.nix { }; nm-tray = libsForQt5.callPackage ../tools/networking/networkmanager/tray.nix { };
inherit (callPackages ../servers/nextcloud { }) inherit (callPackages ../servers/nextcloud { })
nextcloud29
nextcloud30 nextcloud30
nextcloud31 nextcloud31
; ;
nextcloud29Packages = callPackage ../servers/nextcloud/packages { ncVersion = "29"; };
nextcloud30Packages = callPackage ../servers/nextcloud/packages { ncVersion = "30"; }; nextcloud30Packages = callPackage ../servers/nextcloud/packages { ncVersion = "30"; };
nextcloud31Packages = callPackage ../servers/nextcloud/packages { ncVersion = "31"; }; nextcloud31Packages = callPackage ../servers/nextcloud/packages { ncVersion = "31"; };