Merge master into staging-next
This commit is contained in:
@@ -178,6 +178,8 @@
|
||||
|
||||
- `programs.goldwarden` has been removed, due to the software not working with newer versions of the Bitwarden and Vaultwarden servers, as well as it being abandoned upstream.
|
||||
|
||||
- The `chatgpt-retrieval-plugin` package and `services.chatgpt-retrieval-plugin` module were removed due to the package having been broken since at least November 2024.
|
||||
|
||||
- The `cardboard` package and `programs.cardboard` module were removed due to the package having been broken since at least November 2024.
|
||||
|
||||
- The default `kops` version is now 1.33.0 and versions 1.30 and older have been dropped. See [Upgrading Kubernetes](https://kops.sigs.k8s.io/tutorial/upgrading-kubernetes/) for instructions on how to update kOps.
|
||||
|
||||
@@ -1552,7 +1552,6 @@
|
||||
./services/web-apps/calibre-web.nix
|
||||
./services/web-apps/castopod.nix
|
||||
./services/web-apps/changedetection-io.nix
|
||||
./services/web-apps/chatgpt-retrieval-plugin.nix
|
||||
./services/web-apps/chhoto-url.nix
|
||||
./services/web-apps/cloudlog.nix
|
||||
./services/web-apps/code-server.nix
|
||||
|
||||
@@ -113,6 +113,10 @@ in
|
||||
"cgmanager"
|
||||
"enable"
|
||||
] "cgmanager was deprecated by lxc and therefore removed from nixpkgs.")
|
||||
(mkRemovedOptionModule [
|
||||
"services"
|
||||
"chatgpt-retrieval-plugin"
|
||||
] "The corresponding package was removed from nixpkgs.")
|
||||
(mkRemovedOptionModule [
|
||||
"services"
|
||||
"chronos"
|
||||
|
||||
@@ -1,118 +0,0 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.chatgpt-retrieval-plugin;
|
||||
in
|
||||
{
|
||||
options.services.chatgpt-retrieval-plugin = {
|
||||
enable = mkEnableOption "chatgpt-retrieval-plugin service";
|
||||
|
||||
port = mkOption {
|
||||
type = types.port;
|
||||
default = 8080;
|
||||
description = "Port the chatgpt-retrieval-plugin service listens on.";
|
||||
};
|
||||
|
||||
host = mkOption {
|
||||
type = types.str;
|
||||
default = "127.0.0.1";
|
||||
example = "0.0.0.0";
|
||||
description = "The hostname or IP address for chatgpt-retrieval-plugin to bind to.";
|
||||
};
|
||||
|
||||
bearerTokenPath = mkOption {
|
||||
type = types.path;
|
||||
description = ''
|
||||
Path to the secret bearer token used for the http api authentication.
|
||||
'';
|
||||
default = "";
|
||||
example = "config.age.secrets.CHATGPT_RETRIEVAL_PLUGIN_BEARER_TOKEN.path";
|
||||
};
|
||||
|
||||
openaiApiKeyPath = mkOption {
|
||||
type = types.path;
|
||||
description = ''
|
||||
Path to the secret openai api key used for embeddings.
|
||||
'';
|
||||
default = "";
|
||||
example = "config.age.secrets.CHATGPT_RETRIEVAL_PLUGIN_OPENAI_API_KEY.path";
|
||||
};
|
||||
|
||||
datastore = mkOption {
|
||||
type = types.enum [
|
||||
"pinecone"
|
||||
"weaviate"
|
||||
"zilliz"
|
||||
"milvus"
|
||||
"qdrant"
|
||||
"redis"
|
||||
];
|
||||
default = "qdrant";
|
||||
description = "This specifies the vector database provider you want to use to store and query embeddings.";
|
||||
};
|
||||
|
||||
qdrantCollection = mkOption {
|
||||
type = types.str;
|
||||
description = ''
|
||||
name of the qdrant collection used to store documents.
|
||||
'';
|
||||
default = "document_chunks";
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
assertions = [
|
||||
{
|
||||
assertion = cfg.bearerTokenPath != "";
|
||||
message = "services.chatgpt-retrieval-plugin.bearerTokenPath should not be an empty string.";
|
||||
}
|
||||
{
|
||||
assertion = cfg.openaiApiKeyPath != "";
|
||||
message = "services.chatgpt-retrieval-plugin.openaiApiKeyPath should not be an empty string.";
|
||||
}
|
||||
];
|
||||
|
||||
systemd.services.chatgpt-retrieval-plugin = {
|
||||
description = "ChatGPT Retrieval Plugin";
|
||||
after = [ "network.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
|
||||
serviceConfig = {
|
||||
DynamicUser = true;
|
||||
Restart = "always";
|
||||
LoadCredential = [
|
||||
"BEARER_TOKEN:${cfg.bearerTokenPath}"
|
||||
"OPENAI_API_KEY:${cfg.openaiApiKeyPath}"
|
||||
];
|
||||
StateDirectory = "chatgpt-retrieval-plugin";
|
||||
StateDirectoryMode = "0755";
|
||||
};
|
||||
|
||||
# it doesn't make sense to pass secrets as env vars, this is a hack until
|
||||
# upstream has proper secret management.
|
||||
script = ''
|
||||
export BEARER_TOKEN=$(${pkgs.systemd}/bin/systemd-creds cat BEARER_TOKEN)
|
||||
export OPENAI_API_KEY=$(${pkgs.systemd}/bin/systemd-creds cat OPENAI_API_KEY)
|
||||
exec ${pkgs.chatgpt-retrieval-plugin}/bin/start --host ${cfg.host} --port ${toString cfg.port}
|
||||
'';
|
||||
|
||||
environment = {
|
||||
DATASTORE = cfg.datastore;
|
||||
QDRANT_COLLECTION = mkIf (cfg.datastore == "qdrant") cfg.qdrantCollection;
|
||||
};
|
||||
};
|
||||
|
||||
systemd.tmpfiles.rules = [
|
||||
# create the directory for static files for fastapi
|
||||
"C /var/lib/chatgpt-retrieval-plugin/.well-known - - - - ${pkgs.chatgpt-retrieval-plugin}/${pkgs.python3Packages.python.sitePackages}/.well-known"
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -242,7 +242,7 @@ in
|
||||
}
|
||||
];
|
||||
|
||||
warnings = lib.mkIf config.boot.kernelPackages.bcachefs.meta.broken [
|
||||
warnings = lib.mkIf cfg.modulePackage.meta.broken [
|
||||
''
|
||||
Using unmaintained in-tree bcachefs kernel module. This
|
||||
will be removed in 26.05. Please use a kernel supported
|
||||
|
||||
@@ -124,21 +124,9 @@ rec {
|
||||
versionSuffix = "esr";
|
||||
};
|
||||
};
|
||||
|
||||
thunderbird-128 = common {
|
||||
applicationName = "Thunderbird ESR";
|
||||
|
||||
version = "128.14.0esr";
|
||||
sha512 = "3ce2debe024ad8dafc319f86beff22feb9edecfabfad82513269e037a51210dfd84810fe35adcf76479273b8b2ceb8d4ecd2d0c6a3c5f6600b6b3df192bb798b";
|
||||
|
||||
updateScript = callPackage ./update.nix {
|
||||
attrPath = "thunderbirdPackages.thunderbird-128";
|
||||
versionPrefix = "128";
|
||||
versionSuffix = "esr";
|
||||
};
|
||||
};
|
||||
}
|
||||
// lib.optionalAttrs config.allowAliases {
|
||||
thunderbird-102 = throw "Thunderbird 102 support ended in September 2023";
|
||||
thunderbird-115 = throw "Thunderbird 115 support ended in October 2024";
|
||||
thunderbird-128 = throw "Thunderbird 128 support ended in August 2025";
|
||||
}
|
||||
|
||||
@@ -8,11 +8,11 @@
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "bluemap";
|
||||
version = "5.11";
|
||||
version = "5.12";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/BlueMap-Minecraft/BlueMap/releases/download/v${version}/BlueMap-${version}-cli.jar";
|
||||
hash = "sha256-DhsnuwVDvIb7eR4Hs2jOTufY2ysd+Awo0b8xg84quGU=";
|
||||
hash = "sha256-k+tSIlgOj7o7aHPdJzXSW1zxx2pZ67TB3aJ4Fv7U0pM=";
|
||||
};
|
||||
|
||||
dontUnpack = true;
|
||||
|
||||
@@ -1,73 +0,0 @@
|
||||
{
|
||||
lib,
|
||||
python3Packages,
|
||||
fetchFromGitHub,
|
||||
python3,
|
||||
nix-update-script,
|
||||
dasel,
|
||||
}:
|
||||
|
||||
python3Packages.buildPythonApplication {
|
||||
pname = "chatgpt-retrieval-plugin";
|
||||
version = "0-unstable-2023-03-28";
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "openai";
|
||||
repo = "chatgpt-retrieval-plugin";
|
||||
rev = "958bb787bf34823538482a9eb3157c5bf994a182";
|
||||
hash = "sha256-fCNGzK5Uji6wGDTEwAf4FF/i+RC7ny3v4AsvQwIbehY=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace 'fastapi = "^0.92.0"' 'fastapi = ">=0.92.0"' \
|
||||
--replace 'python-dotenv = "^0.21.1"' 'python-dotenv = "*"' \
|
||||
--replace 'python-multipart = "^0.0.6"' 'python-multipart = "^0.0.5"' \
|
||||
--replace 'redis = "4.5.1"' 'redis = "^4.5.1"' \
|
||||
--replace 'tiktoken = "^0.2.0"' 'tiktoken = "^0.3.0"' \
|
||||
--replace 'packages = [{include = "server"}]' 'packages = [{include = "server"}, {include = "models"}, {include = "datastore"}, {include = "services"}]'
|
||||
|
||||
substituteInPlace server/main.py \
|
||||
--replace 'directory=".well-known"' 'directory="/var/lib/chatgpt-retrieval-plugin/.well-known"' \
|
||||
--replace '0.0.0.0' '127.0.0.1' \
|
||||
--replace '8000' '8080'
|
||||
|
||||
${dasel}/bin/dasel put -t string -f pyproject.toml -v '.well-known/*' '.tool.poetry.include.[]'
|
||||
'';
|
||||
|
||||
nativeBuildInputs = with python3Packages; [
|
||||
poetry-core
|
||||
];
|
||||
|
||||
propagatedBuildInputs = with python3.pkgs; [
|
||||
fastapi
|
||||
arrow
|
||||
tiktoken
|
||||
python-multipart
|
||||
python-dotenv
|
||||
openai
|
||||
weaviate-client
|
||||
pinecone-client
|
||||
pymilvus
|
||||
uvicorn
|
||||
python-pptx
|
||||
tenacity
|
||||
pypdf2
|
||||
qdrant-client
|
||||
redis
|
||||
docx2txt
|
||||
];
|
||||
|
||||
passthru = {
|
||||
updateScript = nix-update-script { };
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
broken = true; # dependencies are not up to date, the project doesn't look well maintained, this doesn't look like it's going in the right direction. I'm happy to handle maintainership to whoever wants to.
|
||||
homepage = "https://github.com/openai/chatgpt-retrieval-plugin";
|
||||
description = "Tool to search and find personal or work documents by asking questions in everyday language";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ happysalada ];
|
||||
};
|
||||
}
|
||||
@@ -1,5 +1,6 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
symlinkJoin,
|
||||
etlegacy-assets,
|
||||
etlegacy-unwrapped,
|
||||
@@ -9,6 +10,7 @@
|
||||
symlinkJoin {
|
||||
name = "etlegacy";
|
||||
version = "2.83.2";
|
||||
|
||||
paths = [
|
||||
etlegacy-assets
|
||||
etlegacy-unwrapped
|
||||
@@ -23,8 +25,6 @@ symlinkJoin {
|
||||
--add-flags "+set fs_basepath ${placeholder "out"}/lib/etlegacy"
|
||||
wrapProgram $out/bin/etlded.* \
|
||||
--add-flags "+set fs_basepath ${placeholder "out"}/lib/etlegacy"
|
||||
makeWrapper $out/bin/etl.* $out/bin/etl
|
||||
makeWrapper $out/bin/etlded.* $out/bin/etlded
|
||||
'';
|
||||
|
||||
meta = {
|
||||
@@ -39,7 +39,7 @@ symlinkJoin {
|
||||
for the popular online FPS game Wolfenstein: Enemy Territory - whose
|
||||
gameplay is still considered unmatched by many, despite its great age.
|
||||
'';
|
||||
mainProgram = "etl";
|
||||
mainProgram = "etl." + (if stdenv.hostPlatform.isi686 then "i386" else "x86_64");
|
||||
maintainers = with lib.maintainers; [
|
||||
ashleyghooper
|
||||
];
|
||||
|
||||
@@ -52,6 +52,12 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
./disable-debug.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace src/meson.build --replace-fail \
|
||||
"'src' / rust_target / meson.project_name()" \
|
||||
"'src' / '${stdenv.hostPlatform.rust.cargoShortTarget}' / rust_target / meson.project_name()"
|
||||
'';
|
||||
|
||||
# Dirty approach to add patches after cargoSetupPostUnpackHook
|
||||
# We should eventually use a cargo vendor patch hook instead
|
||||
preConfigure = ''
|
||||
@@ -104,6 +110,8 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
)
|
||||
'';
|
||||
|
||||
env.CARGO_BUILD_TARGET = stdenv.hostPlatform.rust.rustcTargetSpec;
|
||||
|
||||
passthru = {
|
||||
updateScript = nix-update-script { };
|
||||
};
|
||||
|
||||
@@ -18,16 +18,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "halloy";
|
||||
version = "2025.8";
|
||||
version = "2025.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "squidowl";
|
||||
repo = "halloy";
|
||||
tag = version;
|
||||
hash = "sha256-Jtr1/MDR6pAaagVdhR2HZM91PTEPaQkDYMmALIWkHFU=";
|
||||
hash = "sha256-yjia9tNNaXCTQFe8xfUeBYVHhW214AaOeCLFjAG703E=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-HseKOow4BjiPsGmwslZqBlvCoreY2BcnBu3BHg5965c=";
|
||||
cargoHash = "sha256-GmcRm6/dvY3stjV2ON8NVlVWZ5m0LXa9Kv0gqycbRoY=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
copyDesktopItems
|
||||
@@ -46,6 +46,7 @@ rustPlatform.buildRustPackage rec {
|
||||
xorg.libX11
|
||||
xorg.libXcursor
|
||||
xorg.libXi
|
||||
xorg.libxcb
|
||||
];
|
||||
|
||||
desktopItems = [
|
||||
|
||||
@@ -13,19 +13,19 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "ni";
|
||||
version = "26.0.1";
|
||||
version = "26.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "antfu-collective";
|
||||
repo = "ni";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-R4X6X9Yys7zq8+3vGj0vamVsqLM0i/NO9HLTDlofX54=";
|
||||
hash = "sha256-vde0NUOWVfdrJUgYBLP4C3I+lFv3YJVtcqUgB7Nx2b0=";
|
||||
};
|
||||
|
||||
pnpmDeps = pnpm.fetchDeps {
|
||||
inherit (finalAttrs) pname version src;
|
||||
fetcherVersion = 2;
|
||||
hash = "sha256-eeZGLwiN8uu0GL8CGCAHsV2JepaZDcfnBipaLLWdXzw=";
|
||||
hash = "sha256-aNRWBnlZ72OmU619L99aVqL317w4gSaJNtoO25u+s40=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -105,6 +105,15 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
"-Dnautilus=false"
|
||||
];
|
||||
|
||||
# For https://gitlab.gnome.org/GNOME/papers/-/blob/5efed8638dd4a2d5c36f59eb9a22158d69632e0b/shell/src/meson.build#L36
|
||||
env.CARGO_BUILD_TARGET = stdenv.hostPlatform.rust.rustcTargetSpec;
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace shell/src/meson.build --replace-fail \
|
||||
"meson.current_build_dir() / rust_target / meson.project_name()" \
|
||||
"meson.current_build_dir() / '${stdenv.hostPlatform.rust.cargoShortTarget}' / rust_target / meson.project_name()"
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
substituteInPlace $out/share/thumbnailers/papers.thumbnailer \
|
||||
--replace-fail '=papers-thumbnailer' "=$out/bin/papers-thumbnailer"
|
||||
|
||||
@@ -1,14 +1,16 @@
|
||||
commit 58bdfa7ef92ba07dc41a07aeef6d790ecd8f888c
|
||||
Author: kuflierl <41301536+kuflierl@users.noreply.github.com>
|
||||
Date: Sat May 3 21:02:26 2025 +0200
|
||||
commit 3052c2c8be6a44aab2d4c5fa0d560a8109c5ed5e
|
||||
Author: 06kellyjac <dev@j-k.io>
|
||||
Date: Mon Sep 22 13:17:14 2025 +0100
|
||||
|
||||
fix(tests): add support for nix-build-system for tests
|
||||
|
||||
Co-authored-by: kuflierl <41301536+kuflierl@users.noreply.github.com>
|
||||
|
||||
diff --git a/src/systemd/resolver.rs b/src/systemd/resolver.rs
|
||||
index e2abbb7..1151592 100644
|
||||
index 989f378..0629fb5 100644
|
||||
--- a/src/systemd/resolver.rs
|
||||
+++ b/src/systemd/resolver.rs
|
||||
@@ -637,17 +637,14 @@ mod tests {
|
||||
@@ -650,17 +650,14 @@ mod tests {
|
||||
let OptionValue::List(opt_list) = &candidates[0].value else {
|
||||
panic!();
|
||||
};
|
||||
@@ -32,7 +34,7 @@ index e2abbb7..1151592 100644
|
||||
let actions = vec![ProgramAction::Read("/var/data".into())];
|
||||
let candidates = resolve(&opts, &actions, &hardening_opts);
|
||||
diff --git a/tests/options.rs b/tests/options.rs
|
||||
index 835ee14..a9c9973 100644
|
||||
index cf20ea0..ab9f389 100644
|
||||
--- a/tests/options.rs
|
||||
+++ b/tests/options.rs
|
||||
@@ -24,7 +24,7 @@ fn run_true() {
|
||||
@@ -50,7 +52,7 @@ index 835ee14..a9c9973 100644
|
||||
.stdout(predicate::str::contains("ProtectClock=true\n").count(1))
|
||||
- .stdout(predicate::str::contains("SystemCallFilter=~@aio:EPERM @chown:EPERM @clock:EPERM @cpu-emulation:EPERM @debug:EPERM @io-event:EPERM @ipc:EPERM @keyring:EPERM @memlock:EPERM @module:EPERM @mount:EPERM @network-io:EPERM @obsolete:EPERM @pkey:EPERM @privileged:EPERM @process:EPERM @raw-io:EPERM @reboot:EPERM @resources:EPERM @sandbox:EPERM @setuid:EPERM @signal:EPERM @swap:EPERM @sync:EPERM @timer:EPERM\n").count(1))
|
||||
+ .stdout(predicate::str::contains("SystemCallFilter=~@aio:EPERM @chown:EPERM @clock:EPERM @cpu-emulation:EPERM @debug:EPERM @io-event:EPERM @ipc:EPERM @keyring:EPERM @memlock:EPERM @module:EPERM @mount:EPERM @network-io:EPERM @obsolete:EPERM @pkey:EPERM @privileged:EPERM @raw-io:EPERM @reboot:EPERM @resources:EPERM @sandbox:EPERM @setuid:EPERM @signal:EPERM @swap:EPERM @sync:EPERM @timer:EPERM\n").count(1))
|
||||
.stdout(predicate::str::contains("CapabilityBoundingSet=~CAP_BLOCK_SUSPEND CAP_BPF CAP_CHOWN CAP_MKNOD CAP_NET_RAW CAP_PERFMON CAP_SYS_BOOT CAP_SYS_CHROOT CAP_SYS_MODULE CAP_SYS_NICE CAP_SYS_PACCT CAP_SYS_PTRACE CAP_SYS_TIME CAP_SYS_TTY_CONFIG CAP_SYSLOG CAP_WAKE_ALARM\n").count(1));
|
||||
.stdout(predicate::str::contains("CapabilityBoundingSet=~CAP_BLOCK_SUSPEND CAP_BPF CAP_CHOWN CAP_IPC_LOCK CAP_KILL CAP_MKNOD CAP_NET_RAW CAP_PERFMON CAP_SYS_BOOT CAP_SYS_CHROOT CAP_SYS_MODULE CAP_SYS_NICE CAP_SYS_PACCT CAP_SYS_PTRACE CAP_SYS_TIME CAP_SYS_TTY_CONFIG CAP_SYSLOG CAP_WAKE_ALARM\n").count(1));
|
||||
}
|
||||
|
||||
@@ -97,7 +97,7 @@ fn run_ls_dev() {
|
||||
@@ -92,7 +94,7 @@ index 835ee14..a9c9973 100644
|
||||
.stdout(predicate::str::contains("ProtectClock=true\n").count(1))
|
||||
- .stdout(predicate::str::contains("SystemCallFilter=~@aio:EPERM @chown:EPERM @clock:EPERM @cpu-emulation:EPERM @debug:EPERM @io-event:EPERM @ipc:EPERM @keyring:EPERM @memlock:EPERM @module:EPERM @mount:EPERM @network-io:EPERM @obsolete:EPERM @pkey:EPERM @privileged:EPERM @process:EPERM @raw-io:EPERM @reboot:EPERM @resources:EPERM @sandbox:EPERM @setuid:EPERM @signal:EPERM @swap:EPERM @sync:EPERM @timer:EPERM\n").count(1))
|
||||
+ .stdout(predicate::str::contains("SystemCallFilter=~@aio:EPERM @chown:EPERM @clock:EPERM @cpu-emulation:EPERM @debug:EPERM @io-event:EPERM @ipc:EPERM @keyring:EPERM @memlock:EPERM @module:EPERM @mount:EPERM @network-io:EPERM @obsolete:EPERM @pkey:EPERM @privileged:EPERM @raw-io:EPERM @reboot:EPERM @resources:EPERM @sandbox:EPERM @setuid:EPERM @signal:EPERM @swap:EPERM @sync:EPERM @timer:EPERM\n").count(1))
|
||||
.stdout(predicate::str::contains("CapabilityBoundingSet=~CAP_BLOCK_SUSPEND CAP_BPF CAP_CHOWN CAP_MKNOD CAP_NET_RAW CAP_PERFMON CAP_SYS_BOOT CAP_SYS_CHROOT CAP_SYS_MODULE CAP_SYS_NICE CAP_SYS_PACCT CAP_SYS_PTRACE CAP_SYS_TIME CAP_SYS_TTY_CONFIG CAP_SYSLOG CAP_WAKE_ALARM\n").count(1));
|
||||
.stdout(predicate::str::contains("CapabilityBoundingSet=~CAP_BLOCK_SUSPEND CAP_BPF CAP_CHOWN CAP_IPC_LOCK CAP_KILL CAP_MKNOD CAP_NET_RAW CAP_PERFMON CAP_SYS_BOOT CAP_SYS_CHROOT CAP_SYS_MODULE CAP_SYS_NICE CAP_SYS_PACCT CAP_SYS_PTRACE CAP_SYS_TIME CAP_SYS_TTY_CONFIG CAP_SYSLOG CAP_WAKE_ALARM\n").count(1));
|
||||
}
|
||||
|
||||
@@ -201,7 +201,7 @@ fn run_read_kallsyms() {
|
||||
@@ -110,11 +112,11 @@ index 835ee14..a9c9973 100644
|
||||
.stdout(predicate::str::contains("ProtectClock=true\n").count(1))
|
||||
- .stdout(predicate::str::contains("SystemCallFilter=~@aio:EPERM @chown:EPERM @clock:EPERM @cpu-emulation:EPERM @debug:EPERM @io-event:EPERM @ipc:EPERM @keyring:EPERM @memlock:EPERM @module:EPERM @mount:EPERM @network-io:EPERM @obsolete:EPERM @pkey:EPERM @privileged:EPERM @process:EPERM @raw-io:EPERM @reboot:EPERM @resources:EPERM @sandbox:EPERM @setuid:EPERM @signal:EPERM @swap:EPERM @sync:EPERM @timer:EPERM\n").count(1))
|
||||
+ .stdout(predicate::str::contains("SystemCallFilter=~@aio:EPERM @chown:EPERM @clock:EPERM @cpu-emulation:EPERM @debug:EPERM @io-event:EPERM @ipc:EPERM @keyring:EPERM @memlock:EPERM @module:EPERM @mount:EPERM @network-io:EPERM @obsolete:EPERM @pkey:EPERM @privileged:EPERM @raw-io:EPERM @reboot:EPERM @resources:EPERM @sandbox:EPERM @setuid:EPERM @signal:EPERM @swap:EPERM @sync:EPERM @timer:EPERM\n").count(1))
|
||||
.stdout(predicate::str::contains("CapabilityBoundingSet=~CAP_BLOCK_SUSPEND CAP_BPF CAP_CHOWN CAP_MKNOD CAP_NET_RAW CAP_PERFMON CAP_SYS_BOOT CAP_SYS_CHROOT CAP_SYS_MODULE CAP_SYS_NICE CAP_SYS_PACCT CAP_SYS_PTRACE CAP_SYS_TIME CAP_SYS_TTY_CONFIG CAP_SYSLOG CAP_WAKE_ALARM\n").count(1));
|
||||
.stdout(predicate::str::contains("CapabilityBoundingSet=~CAP_BLOCK_SUSPEND CAP_BPF CAP_CHOWN CAP_IPC_LOCK CAP_KILL CAP_MKNOD CAP_NET_RAW CAP_PERFMON CAP_SYS_BOOT CAP_SYS_CHROOT CAP_SYS_MODULE CAP_SYS_NICE CAP_SYS_PACCT CAP_SYS_PTRACE CAP_SYS_TIME CAP_SYS_TTY_CONFIG CAP_SYSLOG CAP_WAKE_ALARM\n").count(1));
|
||||
}
|
||||
|
||||
@@ -344,6 +344,7 @@ fn run_systemctl() {
|
||||
.stdout(predicate::str::contains("CapabilityBoundingSet=~CAP_BLOCK_SUSPEND CAP_BPF CAP_CHOWN CAP_MKNOD CAP_NET_RAW CAP_PERFMON CAP_SYS_BOOT CAP_SYS_CHROOT CAP_SYS_MODULE CAP_SYS_NICE CAP_SYS_PACCT CAP_SYS_PTRACE CAP_SYS_TIME CAP_SYS_TTY_CONFIG CAP_SYSLOG CAP_WAKE_ALARM\n").count(1));
|
||||
.stdout(predicate::str::contains("CapabilityBoundingSet=~CAP_BLOCK_SUSPEND CAP_BPF CAP_CHOWN CAP_IPC_LOCK CAP_KILL CAP_MKNOD CAP_NET_RAW CAP_PERFMON CAP_SYS_BOOT CAP_SYS_CHROOT CAP_SYS_MODULE CAP_SYS_NICE CAP_SYS_PACCT CAP_SYS_PTRACE CAP_SYS_TIME CAP_SYS_TTY_CONFIG CAP_SYSLOG CAP_WAKE_ALARM\n").count(1));
|
||||
}
|
||||
|
||||
+// patched due to nix build isolation
|
||||
@@ -145,6 +147,6 @@ index 835ee14..a9c9973 100644
|
||||
.stdout(predicate::str::contains("ProtectClock=true\n").count(1))
|
||||
- .stdout(predicate::str::contains("SystemCallFilter=~@aio:EPERM @chown:EPERM @clock:EPERM @cpu-emulation:EPERM @debug:EPERM @io-event:EPERM @ipc:EPERM @keyring:EPERM @memlock:EPERM @module:EPERM @mount:EPERM @obsolete:EPERM @pkey:EPERM @privileged:EPERM @raw-io:EPERM @reboot:EPERM @resources:EPERM @sandbox:EPERM @setuid:EPERM @signal:EPERM @swap:EPERM @sync:EPERM @timer:EPERM\n").count(1))
|
||||
+ .stdout(predicate::str::contains("SystemCallFilter=~@aio:EPERM @chown:EPERM @clock:EPERM @cpu-emulation:EPERM @debug:EPERM @io-event:EPERM @ipc:EPERM @keyring:EPERM @memlock:EPERM @module:EPERM @mount:EPERM @obsolete:EPERM @pkey:EPERM @privileged:EPERM @process:EPERM @raw-io:EPERM @reboot:EPERM @resources:EPERM @sandbox:EPERM @setuid:EPERM @signal:EPERM @swap:EPERM @sync:EPERM @timer:EPERM\n").count(1))
|
||||
.stdout(predicate::str::contains("CapabilityBoundingSet=~CAP_BLOCK_SUSPEND CAP_BPF CAP_CHOWN CAP_MKNOD CAP_NET_RAW CAP_PERFMON CAP_SYS_BOOT CAP_SYS_CHROOT CAP_SYS_MODULE CAP_SYS_NICE CAP_SYS_PACCT CAP_SYS_PTRACE CAP_SYS_TIME CAP_SYS_TTY_CONFIG CAP_SYSLOG CAP_WAKE_ALARM\n").count(1));
|
||||
.stdout(predicate::str::contains("CapabilityBoundingSet=~CAP_BLOCK_SUSPEND CAP_BPF CAP_CHOWN CAP_IPC_LOCK CAP_KILL CAP_MKNOD CAP_NET_RAW CAP_PERFMON CAP_SYS_BOOT CAP_SYS_CHROOT CAP_SYS_MODULE CAP_SYS_NICE CAP_SYS_PACCT CAP_SYS_PTRACE CAP_SYS_TIME CAP_SYS_TTY_CONFIG CAP_SYSLOG CAP_WAKE_ALARM\n").count(1));
|
||||
}
|
||||
|
||||
|
||||
@@ -16,18 +16,18 @@ let
|
||||
isNativeDocgen =
|
||||
(stdenv.buildPlatform.canExecute stdenv.hostPlatform) && enableDocumentationFeature;
|
||||
in
|
||||
rustPlatform.buildRustPackage rec {
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "shh";
|
||||
version = "2025.7.13";
|
||||
version = "2025.9.22";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "desbma";
|
||||
repo = "shh";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-mTBA+NPkeGF1sSnXpOz9xBsKDAihRe+TVcBAlvbBQPc=";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-Esb6IR49YtGWvLmGLtviAyMLjoWZLQka2igC6yKJ3A0=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-JrtXDercjkPA5WVaq+LyhFmGqMAxQ/sVZQlmtJUTrms=";
|
||||
cargoHash = "sha256-CB0jhVDR40lZaYqNq43V/af1v3Ph+6Z9swSrrsNgA8k=";
|
||||
|
||||
patches = [
|
||||
./fix_run_checks.patch
|
||||
@@ -85,9 +85,9 @@ rustPlatform.buildRustPackage rec {
|
||||
|
||||
installManPage target/mangen/*
|
||||
|
||||
installShellCompletion --cmd ${pname} \
|
||||
target/shellcomplete/${pname}.{bash,fish} \
|
||||
--zsh target/shellcomplete/_${pname}
|
||||
installShellCompletion --cmd ${finalAttrs.pname} \
|
||||
target/shellcomplete/${finalAttrs.pname}.{bash,fish} \
|
||||
--zsh target/shellcomplete/_${finalAttrs.pname}
|
||||
'';
|
||||
|
||||
# RUST_BACKTRACE = 1;
|
||||
@@ -99,11 +99,12 @@ rustPlatform.buildRustPackage rec {
|
||||
homepage = "https://github.com/desbma/shh";
|
||||
license = lib.licenses.gpl3Only;
|
||||
platforms = lib.platforms.linux;
|
||||
changelog = "https://github.com/desbma/shh/blob/v${version}/CHANGELOG.md";
|
||||
changelog = "https://github.com/desbma/shh/blob/v${finalAttrs.version}/CHANGELOG.md";
|
||||
mainProgram = "shh";
|
||||
maintainers = with lib.maintainers; [
|
||||
erdnaxe
|
||||
kuflierl
|
||||
jk
|
||||
];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
ninja,
|
||||
pkg-config,
|
||||
rustc,
|
||||
rustPlatform,
|
||||
wrapGAppsHook4,
|
||||
glib,
|
||||
gst_all_1,
|
||||
@@ -36,6 +37,8 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
glycin-loaders.passthru.glycinPathsPatch
|
||||
];
|
||||
|
||||
cargoVendorDir = "vendor";
|
||||
|
||||
nativeBuildInputs = [
|
||||
cargo
|
||||
desktop-file-utils
|
||||
@@ -45,6 +48,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
ninja
|
||||
pkg-config
|
||||
rustc
|
||||
rustPlatform.cargoSetupHook
|
||||
wrapGAppsHook4
|
||||
];
|
||||
|
||||
@@ -69,6 +73,10 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
'.files."src/sandbox.rs" = $hash' \
|
||||
vendor/glycin/.cargo-checksum.json \
|
||||
| sponge vendor/glycin/.cargo-checksum.json
|
||||
|
||||
substituteInPlace src/meson.build --replace-fail \
|
||||
"'src' / rust_target / meson.project_name()" \
|
||||
"'src' / '${stdenv.hostPlatform.rust.cargoShortTarget}' / rust_target / meson.project_name()"
|
||||
'';
|
||||
|
||||
preFixup = ''
|
||||
@@ -80,6 +88,9 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
)
|
||||
'';
|
||||
|
||||
# For https://gitlab.gnome.org/GNOME/snapshot/-/blob/34236a6dded23b66fdc4e4ed613e5b09eec3872c/src/meson.build#L57
|
||||
env.CARGO_BUILD_TARGET = stdenv.hostPlatform.rust.rustcTargetSpec;
|
||||
|
||||
passthru.updateScript = gnome.updateScript {
|
||||
packageName = "snapshot";
|
||||
};
|
||||
|
||||
@@ -16,16 +16,16 @@
|
||||
|
||||
buildNpmPackage rec {
|
||||
pname = "teams-for-linux";
|
||||
version = "2.5.8";
|
||||
version = "2.5.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "IsmaelMartinez";
|
||||
repo = "teams-for-linux";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-yBIIKkB488PW7sqj+xkfR/I9JqFeWb12o8pLFW21Og0=";
|
||||
hash = "sha256-gbkTQFj2PJw381ISrdxm0BwzO+Zzkh4qDIU31KbWM1Q=";
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-iX84hsb1N4bELFgspBu9wMmc5xMdRnHJcTzSzRNnrOk=";
|
||||
npmDepsHash = "sha256-8YzWf62VAzZggbBSMUp2NlUVHN8SAzWVUEeVNPctvik=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
makeWrapper
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "telegraf";
|
||||
version = "1.36.1";
|
||||
version = "1.36.2";
|
||||
|
||||
subPackages = [ "cmd/telegraf" ];
|
||||
|
||||
@@ -18,10 +18,10 @@ buildGoModule rec {
|
||||
owner = "influxdata";
|
||||
repo = "telegraf";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-WuxQP0ogbCYuwuIUA8U8UD8usGXuPM2iTCms+yPU8vM=";
|
||||
hash = "sha256-nIYAGsGYZUK5o1KqcH4bI3wPRRXCynN6N5T6f2oy2bo=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-wIf8Mo4IkR3CC6PnoGL+Jj5XGDpom3RnXmVLobs6DoM=";
|
||||
vendorHash = "sha256-k4hI/qIQgV1qChOWDCqWcMboaVoDe3k/DP/wNa0Aqg4=";
|
||||
proxyVendor = true;
|
||||
|
||||
ldflags = [
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
lib,
|
||||
nixosTests,
|
||||
stdenv,
|
||||
fetchpatch,
|
||||
...
|
||||
}@args:
|
||||
|
||||
@@ -17,6 +18,14 @@ callPackage ./generic.nix args {
|
||||
# this package should point to the latest release.
|
||||
version = "2.3.4";
|
||||
|
||||
extraPatches = [
|
||||
(fetchpatch {
|
||||
name = "fix_llvm-21_-wuninitialized-const-pointer_warning.patch";
|
||||
url = "https://github.com/openzfs/zfs/commit/9acedbaceec362d08a33ebfe7c4c7efcee81d094.patch";
|
||||
hash = "sha256-bjMRuT8gsMuwCnrS5PfG9vYthRvcFaWCCfQbCTVZdpw=";
|
||||
})
|
||||
];
|
||||
|
||||
tests = {
|
||||
inherit (nixosTests.zfs) series_2_3;
|
||||
}
|
||||
|
||||
+3
-3
@@ -6,18 +6,18 @@
|
||||
|
||||
buildNpmPackage rec {
|
||||
pname = "universal-remote-card";
|
||||
version = "4.8.0";
|
||||
version = "4.8.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Nerwyn";
|
||||
repo = "android-tv-card";
|
||||
rev = version;
|
||||
hash = "sha256-t70Nm695FBBsxnZ2wxPjo86OQ7X2/NLKkhePQ23xj/4=";
|
||||
hash = "sha256-jyY9x36HIiXpgPbK0Rms+78bP0edxivrm+Fm4znR2F4=";
|
||||
};
|
||||
|
||||
patches = [ ./dont-call-git.patch ];
|
||||
|
||||
npmDepsHash = "sha256-TFfyq6wCQ6kAOHn75YqOTOrT17ASvOSnO2mr7qnc+Zw=";
|
||||
npmDepsHash = "sha256-gJGdoa4euIq54aTLBl8Dg7aj6YDbyoQzDQ/rfLHH5G8=";
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
@@ -607,6 +607,7 @@ mapAliases {
|
||||
|
||||
challenger = taler-challenger; # Added 2024-09-04
|
||||
charmcraft = throw "charmcraft was removed in Sep 25 following removal of LXD from nixpkgs"; # added 2025-09-18
|
||||
chatgpt-retrieval-plugin = throw "chatgpt-retrieval-plugin has been removed because it has been marked as broken since at least November 2024."; # Added 2025-09-28
|
||||
check_smartmon = nagiosPlugins.check_smartmon; # Added 2024-05-03
|
||||
check_systemd = nagiosPlugins.check_systemd; # Added 2024-05-03
|
||||
check_zfs = nagiosPlugins.check_zfs; # Added 2024-05-03
|
||||
@@ -2517,6 +2518,8 @@ mapAliases {
|
||||
tfplugindocs = terraform-plugin-docs; # Added 2023-11-01
|
||||
thiefmd = throw "'thiefmd' has been removed due to lack of maintenance upstream and incompatible with newer Pandoc. Please use 'apostrophe' or 'folio' instead"; # Added 2025-02-20
|
||||
thefuck = throw "'thefuck' has been removed due to lack of maintenance upstream and incompatible with python 3.12+. Consider using 'pay-respects' instead"; # Added 2025-05-30
|
||||
thunderbird-128 = throw "Thunderbird 128 support ended in August 2025";
|
||||
thunderbird-128-unwrapped = throw "Thunderbird 128 support ended in August 2025";
|
||||
invalidateFetcherByDrvHash = testers.invalidateFetcherByDrvHash; # Added 2022-05-05
|
||||
ticpp = throw "'ticpp' has been removed due to being unmaintained"; # Added 2025-09-10
|
||||
tijolo = throw "'tijolo' has been removed due to being unmaintained"; # Added 2024-12-27
|
||||
|
||||
@@ -12832,9 +12832,6 @@ with pkgs;
|
||||
thunderbird-esr-unwrapped = thunderbirdPackages.thunderbird-esr;
|
||||
thunderbird-esr = wrapThunderbird thunderbird-esr-unwrapped { };
|
||||
|
||||
thunderbird-128-unwrapped = thunderbirdPackages.thunderbird-128;
|
||||
thunderbird-128 = wrapThunderbird thunderbirdPackages.thunderbird-128 { };
|
||||
|
||||
thunderbird-140-unwrapped = thunderbirdPackages.thunderbird-140;
|
||||
thunderbird-140 = wrapThunderbird thunderbirdPackages.thunderbird-140 { };
|
||||
|
||||
|
||||
Reference in New Issue
Block a user