From 856bddbe8e07c28ef84bb183f13a7c3a328fc947 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 10 May 2025 03:53:25 +0000 Subject: [PATCH 01/26] vivaldi: 7.3.3635.11 -> 7.3.3635.12 --- pkgs/applications/networking/browsers/vivaldi/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/networking/browsers/vivaldi/default.nix b/pkgs/applications/networking/browsers/vivaldi/default.nix index ecefca97eb3a..c3c47fdda6f8 100644 --- a/pkgs/applications/networking/browsers/vivaldi/default.nix +++ b/pkgs/applications/networking/browsers/vivaldi/default.nix @@ -71,7 +71,7 @@ let in stdenv.mkDerivation rec { pname = "vivaldi"; - version = "7.3.3635.11"; + version = "7.3.3635.12"; suffix = { @@ -84,8 +84,8 @@ stdenv.mkDerivation rec { url = "https://downloads.vivaldi.com/${branch}/vivaldi-${branch}_${version}-1_${suffix}.deb"; hash = { - aarch64-linux = "sha256-w1/wWP3lZUQ5tBvv6XOCkoR1OCoByURBEvaaemsY19U="; - x86_64-linux = "sha256-kJNFPXiZekjofGtKFbGc85c8yQymhntkCBuhylwQBpE="; + aarch64-linux = "sha256-Gplg0QD7DcibaOv1Q8RUnefACZdNnM8yKYYiP1dpY58="; + x86_64-linux = "sha256-qcV4n9/nAbb0Gw8azorDSjpjy4cXe2XlR94WwuwUEyc="; } .${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); }; From 3948075eb59320a6a3c20fde75209761ac765d42 Mon Sep 17 00:00:00 2001 From: emaryn Date: Thu, 8 May 2025 01:34:45 +0800 Subject: [PATCH 02/26] beekeeper-studio: fix update script --- pkgs/by-name/be/beekeeper-studio/package.nix | 7 +------ pkgs/by-name/be/beekeeper-studio/update.sh | 20 ++++++++++++++++++++ 2 files changed, 21 insertions(+), 6 deletions(-) create mode 100755 pkgs/by-name/be/beekeeper-studio/update.sh diff --git a/pkgs/by-name/be/beekeeper-studio/package.nix b/pkgs/by-name/be/beekeeper-studio/package.nix index 3bd484a1db57..3f80d92b09cd 100644 --- a/pkgs/by-name/be/beekeeper-studio/package.nix +++ b/pkgs/by-name/be/beekeeper-studio/package.nix @@ -26,8 +26,6 @@ vulkan-loader, systemd, libGL, - writeShellScript, - nix-update, }: stdenv.mkDerivation (finalAttrs: { @@ -113,10 +111,7 @@ stdenv.mkDerivation (finalAttrs: { } $out/opt/beekeeper-studio/beekeeper-studio-bin ''; - passthru.updateScript = writeShellScript "beekeeper-studio-update-script" '' - ${lib.getExe nix-update} beekeeper-studio --system x86_64-linux - ${lib.getExe nix-update} beekeeper-studio --system aarch64-linux --version "skip" - ''; + passthru.updateScript = ./update.sh; meta = { description = "Modern and easy to use SQL client for MySQL, Postgres, SQLite, SQL Server, and more"; diff --git a/pkgs/by-name/be/beekeeper-studio/update.sh b/pkgs/by-name/be/beekeeper-studio/update.sh new file mode 100755 index 000000000000..8bca15d4e3c8 --- /dev/null +++ b/pkgs/by-name/be/beekeeper-studio/update.sh @@ -0,0 +1,20 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i bash -p curl gnused jq nix bash coreutils nix-update common-updater-scripts + +set -eou pipefail + +PACKAGE_DIR=$(realpath $(dirname $0)) + +latestVersion=$(curl ${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} -sL https://api.github.com/repos/beekeeper-studio/beekeeper-studio/releases/latest | jq --raw-output .tag_name | sed 's/^v//') + +currentVersion=$(nix-instantiate --eval -E "with import ./. {}; beekeeper-studio.version or (lib.getVersion beekeeper-studio)" | tr -d '"') + +if [[ "$currentVersion" == "$latestVersion" ]]; then + echo "package is up-to-date: $currentVersion" + exit 0 +fi + +nix-update beekeeper-studio --version "$latestVersion" || true + +hash=$(nix hash convert --to sri --hash-algo sha256 $(nix-prefetch-url "$(nix eval -f . --raw beekeeper-studio.src.url --system aarch64-linux)")) +update-source-version beekeeper-studio $latestVersion $hash --system=aarch64-linux --ignore-same-version From 3ae0281a953b8ab9408e6a2ae26230342d86c180 Mon Sep 17 00:00:00 2001 From: emaryn Date: Thu, 8 May 2025 02:25:03 +0800 Subject: [PATCH 03/26] beekeeper-studio: 5.1.5 -> 5.2.7 --- pkgs/by-name/be/beekeeper-studio/package.nix | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/pkgs/by-name/be/beekeeper-studio/package.nix b/pkgs/by-name/be/beekeeper-studio/package.nix index 3f80d92b09cd..4486fe2edc1c 100644 --- a/pkgs/by-name/be/beekeeper-studio/package.nix +++ b/pkgs/by-name/be/beekeeper-studio/package.nix @@ -26,11 +26,12 @@ vulkan-loader, systemd, libGL, + krb5, }: stdenv.mkDerivation (finalAttrs: { pname = "beekeeper-studio"; - version = "5.1.5"; + version = "5.2.7"; src = let @@ -43,8 +44,8 @@ stdenv.mkDerivation (finalAttrs: { fetchurl { url = "https://github.com/beekeeper-studio/beekeeper-studio/releases/download/v${finalAttrs.version}/beekeeper-studio_${finalAttrs.version}_${arch}.deb"; hash = selectSystem { - x86_64-linux = "sha256-ClKD5OnNhEBo1O3E3rXOGu9X8vVGZAOrfXQFppuEnbU="; - aarch64-linux = "sha256-64ID+psuwfiVTfBayILeotJ3en21Hsv8FMQj+IQjjyE="; + x86_64-linux = "sha256-lP+8tX0NNsBDnrBvjJxu2PwVAMbtnnoc+oFteq6KECs="; + aarch64-linux = "sha256-pbVppWkXZb184icW9CevdNQ3FBC/Wpjr9BSd9fwbzCs="; }; }; @@ -82,11 +83,10 @@ stdenv.mkDerivation (finalAttrs: { expat libgbm vulkan-loader + krb5 ]; - runtimeDependencies = map lib.getLib [ - systemd - ]; + runtimeDependencies = map lib.getLib [ systemd ]; installPhase = '' runHook preInstall @@ -104,6 +104,7 @@ stdenv.mkDerivation (finalAttrs: { preFixup = '' patchelf --add-needed libGL.so.1 \ + --add-needed libEGL.so.1 \ --add-rpath ${ lib.makeLibraryPath [ libGL From 46f4abdd81a5a7334a55d11c13c3f9fe3540f161 Mon Sep 17 00:00:00 2001 From: Hoang Nguyen Date: Thu, 15 May 2025 23:24:51 +0700 Subject: [PATCH 04/26] kubie: disable the default update feature Ref: https://github.com/sbstp/kubie#for-distro-maintainers --- pkgs/by-name/ku/kubie/package.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/by-name/ku/kubie/package.nix b/pkgs/by-name/ku/kubie/package.nix index db9baac735bb..cf25e473476a 100644 --- a/pkgs/by-name/ku/kubie/package.nix +++ b/pkgs/by-name/ku/kubie/package.nix @@ -16,6 +16,7 @@ rustPlatform.buildRustPackage rec { sha256 = "sha256-+sSooE0KJqvWFdR63qazOMmSS8dV7MirYZ+sk7BnGQ4="; }; + buildNoDefaultFeatures = true; useFetchCargoVendor = true; cargoHash = "sha256-Yf8fAW65K7SLaRpvegjWBLVDV33sMGV+I1rqlWvx5Ss="; From 4d1712384cfffcc1fec8eae85e93133efa9cdc3f Mon Sep 17 00:00:00 2001 From: Austin Horstman Date: Sun, 18 May 2025 09:54:24 -0500 Subject: [PATCH 05/26] yabai: 7.1.14 -> 7.1.15 Changelog: https://github.com/koekeishiya/yabai/blob/v7.1.15/CHANGELOG.md --- pkgs/by-name/ya/yabai/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ya/yabai/package.nix b/pkgs/by-name/ya/yabai/package.nix index 02eff0f622c2..15d7c787e713 100644 --- a/pkgs/by-name/ya/yabai/package.nix +++ b/pkgs/by-name/ya/yabai/package.nix @@ -14,7 +14,7 @@ }: stdenv.mkDerivation (finalAttrs: { pname = "yabai"; - version = "7.1.14"; + version = "7.1.15"; src = finalAttrs.passthru.sources.${stdenv.hostPlatform.system} @@ -66,13 +66,13 @@ stdenv.mkDerivation (finalAttrs: { # See the comments on https://github.com/NixOS/nixpkgs/pull/188322 for more information. "aarch64-darwin" = fetchzip { url = "https://github.com/koekeishiya/yabai/releases/download/v${finalAttrs.version}/yabai-v${finalAttrs.version}.tar.gz"; - hash = "sha256-cDONHrNPBTzEkVqxN1cHDqVumfyfcHrTYGZxn4s/mEA="; + hash = "sha256-QDGt/v5t7g6+y6ijpLRF7YkqF8bISfxk684m7uUg4eM="; }; "x86_64-darwin" = fetchFromGitHub { owner = "koekeishiya"; repo = "yabai"; rev = "v${finalAttrs.version}"; - hash = "sha256-YbEx1CzuvSFYFD3HgiZrrAd1x9cOQF6fGdgsOlkmUGU="; + hash = "sha256-HvaMPmXNlFVOezqWxqXaAUq8E8O2ZkXMQPwkKXCAOcY="; }; }; From 457438810ccc0875fdda2e99b233d80350ae3a28 Mon Sep 17 00:00:00 2001 From: Konstantin Bogdanov Date: Fri, 25 Apr 2025 14:53:09 +0200 Subject: [PATCH 06/26] maintainers: add thevar1able --- maintainers/maintainer-list.nix | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index de2af1f94e3a..54813fc30f55 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -24614,6 +24614,15 @@ githubId = 1220572; name = "Christian Theune"; }; + thevar1able = { + email = "var1able+nixpkgs@var1able.network"; + github = "thevar1able"; + githubId = 875885; + name = "Konstantin Bogdanov"; + keys = [ + { fingerprint = "3221 7A73 EB95 0E9E E550 36A3 DB39 9448 D9FE 52F1"; } + ]; + }; theverygaming = { name = "theverygaming"; github = "theverygaming"; From 6dbec0e85435c98ac19dc23b05e5e6f7d7e5e30e Mon Sep 17 00:00:00 2001 From: Konstantin Bogdanov Date: Fri, 25 Apr 2025 14:53:27 +0200 Subject: [PATCH 07/26] clickhouse: 24.3.7.30 -> 25.3.3.42 --- .../cl/clickhouse/package.nix} | 131 ++++-------------- pkgs/top-level/all-packages.nix | 4 - 2 files changed, 24 insertions(+), 111 deletions(-) rename pkgs/{servers/clickhouse/default.nix => by-name/cl/clickhouse/package.nix} (55%) diff --git a/pkgs/servers/clickhouse/default.nix b/pkgs/by-name/cl/clickhouse/package.nix similarity index 55% rename from pkgs/servers/clickhouse/default.nix rename to pkgs/by-name/cl/clickhouse/package.nix index 3e97c23b1a2a..cb8903eae19c 100644 --- a/pkgs/servers/clickhouse/default.nix +++ b/pkgs/by-name/cl/clickhouse/package.nix @@ -1,9 +1,8 @@ { lib, - llvmPackages, - llvmPackages_16, + stdenv, + llvmPackages_19, fetchFromGitHub, - fetchpatch, cmake, ninja, python3, @@ -14,30 +13,23 @@ darwin, findutils, libiconv, - rustSupport ? true, - rustc, cargo, rustPlatform, }: -let - inherit (llvmPackages) stdenv; - mkDerivation = - (if stdenv.hostPlatform.isDarwin then llvmPackages_16.stdenv else llvmPackages.stdenv).mkDerivation; -in -mkDerivation rec { +llvmPackages_19.stdenv.mkDerivation (finalAttrs: { pname = "clickhouse"; - version = "24.3.7.30"; + version = "25.3.3.42"; src = fetchFromGitHub rec { owner = "ClickHouse"; repo = "ClickHouse"; - rev = "v${version}-lts"; + tag = "v${finalAttrs.version}-lts"; fetchSubmodules = true; - name = "clickhouse-${rev}.tar.gz"; - hash = "sha256-xIqn1cRbuD3NpUC2c7ZzvC8EAmg+XOXCkp+g/HTdIc0="; + name = "clickhouse-${tag}.tar.gz"; + hash = "sha256-VYT6Rnq7LaV9fZc4LJ9YtbWQDgEARYok8MjVfg8itIg="; postFetch = '' # delete files that make the source too big rm -rf $out/contrib/llvm-project/llvm/test @@ -62,20 +54,6 @@ mkDerivation rec { ''; }; - patches = [ - # They updated the Cargo.toml without updating the Cargo.lock :/ - (fetchpatch { - url = "https://github.com/ClickHouse/ClickHouse/commit/bccd33932b5fe17ced2dc2f27813da0b1c034afa.patch"; - revert = true; - hash = "sha256-4idwr+G8WGuT/VILKtDIJIvbCvi6pZokJFze4dP6ExE="; - }) - (fetchpatch { - url = "https://github.com/ClickHouse/ClickHouse/commit/b6bd5ecb199ef8a10e3008a4ea3d96087db8a8c1.patch"; - revert = true; - hash = "sha256-nbb/GV2qWEZ+BEfT6/9//yZf4VWdhOdJCI3PLeh6o0M="; - }) - ]; - strictDeps = true; nativeBuildInputs = [ @@ -83,14 +61,14 @@ mkDerivation rec { ninja python3 perl - llvmPackages.lld + llvmPackages_19.lld ] ++ lib.optionals stdenv.hostPlatform.isx86_64 [ nasm yasm ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ - llvmPackages.bintools + llvmPackages_19.bintools findutils darwin.bootstrap_cmds ] @@ -102,101 +80,38 @@ mkDerivation rec { buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ]; - # their vendored version is too old and missing this patch: https://github.com/corrosion-rs/corrosion/pull/205 - corrosionSrc = - if rustSupport then - fetchFromGitHub { - owner = "corrosion-rs"; - repo = "corrosion"; - rev = "v0.3.5"; - hash = "sha256-r/jrck4RiQynH1+Hx4GyIHpw/Kkr8dHe1+vTHg+fdRs="; - } - else - null; - corrosionDeps = - if rustSupport then - rustPlatform.fetchCargoVendor { - src = corrosionSrc; - name = "corrosion-deps"; - preBuild = "cd generator"; - hash = "sha256-ok1QLobiGBccmbEEWQxHz3ivvuT6FrOgG6wLK4gIbgU="; - } - else - null; - rustDeps = - if rustSupport then - rustPlatform.fetchCargoVendor { - inherit src; - name = "rust-deps"; - preBuild = "cd rust"; - hash = "sha256-nX5wBM8rVMbaf/IrPsqkdT2KQklQbBIGomeWSTjclR4="; - } - else - null; - dontCargoSetupPostUnpack = true; - postUnpack = lib.optionalString rustSupport '' - pushd source - - rm -rf contrib/corrosion - cp -r --no-preserve=mode $corrosionSrc contrib/corrosion - - pushd contrib/corrosion/generator - cargoDeps="$corrosionDeps" cargoSetupPostUnpackHook - corrosionDepsCopy="$cargoDepsCopy" - popd - - pushd rust - cargoDeps="$rustDeps" cargoSetupPostUnpackHook - rustDepsCopy="$cargoDepsCopy" - cat .cargo/config.toml >> .cargo/config.toml.in - cat .cargo/config.toml >> skim/.cargo/config.toml.in - rm .cargo/config.toml - popd - - popd - ''; postPatch = '' patchShebangs src/ + patchShebangs utils/ + + sed -i 's|/usr/bin/env perl|"${lib.getExe perl}"|' contrib/openssl-cmake/CMakeLists.txt substituteInPlace src/Storages/System/StorageSystemLicenses.sh \ - --replace 'git rev-parse --show-toplevel' '$src' - substituteInPlace utils/check-style/check-duplicate-includes.sh \ - --replace 'git rev-parse --show-toplevel' '$src' + --replace-fail '$(git rev-parse --show-toplevel)' "$NIX_BUILD_TOP/$sourceRoot" substituteInPlace utils/check-style/check-ungrouped-includes.sh \ - --replace 'git rev-parse --show-toplevel' '$src' + --replace-fail '$(git rev-parse --show-toplevel)' "$NIX_BUILD_TOP/$sourceRoot" substituteInPlace utils/list-licenses/list-licenses.sh \ - --replace 'git rev-parse --show-toplevel' '$src' - substituteInPlace utils/check-style/check-style \ - --replace 'git rev-parse --show-toplevel' '$src' + --replace-fail '$(git rev-parse --show-toplevel)' "$NIX_BUILD_TOP/$sourceRoot" '' + lib.optionalString stdenv.hostPlatform.isDarwin '' sed -i 's|gfind|find|' cmake/tools.cmake sed -i 's|ggrep|grep|' cmake/tools.cmake - '' - + lib.optionalString rustSupport '' - pushd contrib/corrosion/generator - cargoDepsCopy="$corrosionDepsCopy" cargoSetupPostPatchHook - popd - - pushd rust - cargoDepsCopy="$rustDepsCopy" cargoSetupPostPatchHook - popd - - cargoSetupPostPatchHook() { true; } - '' - + lib.optionalString stdenv.hostPlatform.isDarwin '' # Make sure Darwin invokes lld.ld64 not lld. substituteInPlace cmake/tools.cmake \ --replace '--ld-path=''${LLD_PATH}' '-fuse-ld=lld' + '' + + lib.optionalString rustSupport '' + cargoSetupPostPatchHook() { true; } ''; cmakeFlags = [ "-DENABLE_TESTS=OFF" + "-DENABLE_DELTA_KERNEL_RS=0" "-DCOMPILER_CACHE=disabled" "-DENABLE_EMBEDDED_COMPILER=ON" ] @@ -205,6 +120,7 @@ mkDerivation rec { ) "-DNO_ARMV81_OR_HIGHER=1"; env = { + CARGO_HOME = "$PWD/../.cargo/"; NIX_CFLAGS_COMPILE = # undefined reference to '__sync_val_compare_and_swap_16' lib.optionalString stdenv.hostPlatform.isx86_64 " -mcx16" @@ -224,9 +140,9 @@ mkDerivation rec { sed -i -e '\!/var/log/clickhouse-server/clickhouse-server\.log!d' \ $out/etc/clickhouse-server/config.xml substituteInPlace $out/etc/clickhouse-server/config.xml \ - --replace "/var/log/clickhouse-server/clickhouse-server.err.log" "1" + --replace-fail "/var/log/clickhouse-server/clickhouse-server.err.log" "1" substituteInPlace $out/etc/clickhouse-server/config.xml \ - --replace "trace" "warning" + --replace-fail "trace" "warning" ''; # Builds in 7+h with 2 cores, and ~20m with a big-parallel builder. @@ -241,10 +157,11 @@ mkDerivation rec { maintainers = with maintainers; [ orivej mbalatsko + thevar1able ]; # not supposed to work on 32-bit https://github.com/ClickHouse/ClickHouse/pull/23959#issuecomment-835343685 platforms = lib.filter (x: (lib.systems.elaborate x).is64bit) (platforms.linux ++ platforms.darwin); broken = stdenv.buildPlatform != stdenv.hostPlatform; }; -} +}) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 43c0e54c3637..d33792a3b425 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -10278,10 +10278,6 @@ with pkgs; autoreconfHook = buildPackages.autoreconfHook269; }; - clickhouse = callPackage ../servers/clickhouse { - llvmPackages = llvmPackages_16; - }; - clickhouse-cli = with python3Packages; toPythonApplication clickhouse-cli; couchdb3 = callPackage ../servers/http/couchdb/3.nix { }; From 9b14f098b29e994c2dc4d4892b3d07d43599064e Mon Sep 17 00:00:00 2001 From: Austin Horstman Date: Sun, 18 May 2025 18:31:29 -0500 Subject: [PATCH 08/26] upgrade-assistant: 0.5.1073 -> 0.5.1084 --- pkgs/by-name/up/upgrade-assistant/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/up/upgrade-assistant/package.nix b/pkgs/by-name/up/upgrade-assistant/package.nix index 92958219cdf1..d24ed84845d9 100644 --- a/pkgs/by-name/up/upgrade-assistant/package.nix +++ b/pkgs/by-name/up/upgrade-assistant/package.nix @@ -1,9 +1,9 @@ { lib, buildDotnetGlobalTool }: buildDotnetGlobalTool { pname = "upgrade-assistant"; - version = "0.5.1073"; + version = "0.5.1084"; - nugetHash = "sha256-kk3SIv1gp9xtof0MkGkNUiqGuXgy1+YMGxLFZPFsw+0="; + nugetHash = "sha256-O+HHLqou6hRAQ8vUzq+VfX0vRM+nZGPnfCg8niYX2gE="; meta = { homepage = "https://github.com/dotnet/upgrade-assistant"; From f1233a18eb124426d666efdba1894b30421235ff Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 19 May 2025 02:30:06 +0000 Subject: [PATCH 09/26] boxflat: 1.30.0 -> 1.30.1 --- pkgs/by-name/bo/boxflat/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/bo/boxflat/package.nix b/pkgs/by-name/bo/boxflat/package.nix index 195165bacb38..e41ca1994904 100644 --- a/pkgs/by-name/bo/boxflat/package.nix +++ b/pkgs/by-name/bo/boxflat/package.nix @@ -13,14 +13,14 @@ python3Packages.buildPythonPackage rec { pname = "boxflat"; - version = "1.30.0"; + version = "1.30.1"; pyproject = true; src = fetchFromGitHub { owner = "Lawstorant"; repo = "boxflat"; tag = "v${version}"; - hash = "sha256-6fzz3pq9fHoeGMT1Vz5Y8pKLdrprQEV5kLiZt7uJ1KI="; + hash = "sha256-5P6To0VRnvdu316bPIL7gDRuZLRjXLFbOpB9wZKs/t8="; }; build-system = [ python3Packages.setuptools ]; From 65a759f7b46441ec2735950e476ed3a3c68a512f Mon Sep 17 00:00:00 2001 From: Fugi Date: Wed, 19 Feb 2025 17:58:52 +0100 Subject: [PATCH 10/26] nixos/gtklock: init --- .../manual/release-notes/rl-2511.section.md | 2 +- nixos/modules/module-list.nix | 1 + nixos/modules/programs/wayland/gtklock.nix | 78 +++++++++++++++++++ 3 files changed, 80 insertions(+), 1 deletion(-) create mode 100644 nixos/modules/programs/wayland/gtklock.nix diff --git a/nixos/doc/manual/release-notes/rl-2511.section.md b/nixos/doc/manual/release-notes/rl-2511.section.md index d0385c47644c..a396aa591703 100644 --- a/nixos/doc/manual/release-notes/rl-2511.section.md +++ b/nixos/doc/manual/release-notes/rl-2511.section.md @@ -10,7 +10,7 @@ -- Create the first release note entry in this section! +- [gtklock](https://github.com/jovanlanik/gtklock), a GTK-based lockscreen for Wayland. Available as [programs.gtklock](#opt-programs.gtklock.enable). ## Backward Incompatibilities {#sec-release-25.11-incompatibilities} diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 606eb5e7487f..07b5e7977683 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -331,6 +331,7 @@ ./programs/vivid.nix ./programs/wavemon.nix ./programs/wayland/cardboard.nix + ./programs/wayland/gtklock.nix ./programs/wayland/hyprland.nix ./programs/wayland/hyprlock.nix ./programs/wayland/labwc.nix diff --git a/nixos/modules/programs/wayland/gtklock.nix b/nixos/modules/programs/wayland/gtklock.nix new file mode 100644 index 000000000000..a3cef937ca83 --- /dev/null +++ b/nixos/modules/programs/wayland/gtklock.nix @@ -0,0 +1,78 @@ +{ + config, + lib, + pkgs, + ... +}: +let + cfg = config.programs.gtklock; + configFormat = pkgs.formats.ini { + listToValue = builtins.concatStringsSep ";"; + }; + + inherit (lib) + types + mkOption + mkEnableOption + mkPackageOption + ; +in +{ + options.programs.gtklock = { + enable = mkEnableOption "gtklock, a GTK-based lockscreen for Wayland"; + + package = mkPackageOption pkgs "gtklock" { }; + + config = mkOption { + type = configFormat.type; + example = lib.literalExpression '' + { + main = { + idle-hide = true; + idle-timeout = 10; + }; + }''; + description = '' + Configuration for gtklock. + See [`gtklock(1)`](https://github.com/jovanlanik/gtklock/blob/master/man/gtklock.1.scd) man page for details. + ''; + }; + + style = mkOption { + type = with types; nullOr str; + default = null; + description = '' + CSS Stylesheet for gtklock. + See [gtklock's wiki](https://github.com/jovanlanik/gtklock/wiki#Styling) for details. + ''; + }; + + modules = mkOption { + type = with types; listOf package; + default = [ ]; + example = lib.literalExpression '' + with pkgs; [ + gtklock-playerctl-module + gtklock-powerbar-module + gtklock-userinfo-module + ]''; + description = "gtklock modules to load."; + }; + }; + + config = lib.mkIf cfg.enable { + programs.gtklock.config.main = { + style = lib.mkIf (cfg.style != null) "${pkgs.writeText "style.css" cfg.style}"; + + modules = lib.mkIf (cfg.modules != [ ]) ( + map (pkg: "${pkg}/lib/gtklock/${lib.removePrefix "gtklock-" pkg.pname}.so") cfg.modules + ); + }; + + environment.etc."xdg/gtklock/config.ini".source = configFormat.generate "config.ini" cfg.config; + + environment.systemPackages = [ cfg.package ]; + + security.pam.services.gtklock = { }; + }; +} From ae837ad0a62c7b7eea790ca4c946ed71c0e6a865 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 19 May 2025 16:50:58 +0000 Subject: [PATCH 11/26] snac2: 2.75 -> 2.77 --- pkgs/by-name/sn/snac2/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/sn/snac2/package.nix b/pkgs/by-name/sn/snac2/package.nix index 25071e37eb37..81caa40570f8 100644 --- a/pkgs/by-name/sn/snac2/package.nix +++ b/pkgs/by-name/sn/snac2/package.nix @@ -10,14 +10,14 @@ stdenv.mkDerivation (finalAttrs: { pname = "snac2"; - version = "2.75"; + version = "2.77"; src = fetchFromGitea { domain = "codeberg.org"; owner = "grunfink"; repo = "snac2"; tag = finalAttrs.version; - hash = "sha256-xy608ks9Z3eCjpE1M4U5r/Xi3ou8BuA4ljUDWgfTtoU="; + hash = "sha256-QUPFD7x1ZDnDxediA+oqYC8CotmGeAr36xSZ3STOK9Y="; }; buildInputs = [ From c2a54f0803c216b4e8716b620d49d9873954ffd5 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 19 May 2025 18:19:44 +0000 Subject: [PATCH 12/26] ast-grep: 0.37.0 -> 0.38.2 --- pkgs/by-name/as/ast-grep/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/as/ast-grep/package.nix b/pkgs/by-name/as/ast-grep/package.nix index ec8b4841a401..4783207b3a6f 100644 --- a/pkgs/by-name/as/ast-grep/package.nix +++ b/pkgs/by-name/as/ast-grep/package.nix @@ -12,13 +12,13 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "ast-grep"; - version = "0.37.0"; + version = "0.38.2"; src = fetchFromGitHub { owner = "ast-grep"; repo = "ast-grep"; tag = finalAttrs.version; - hash = "sha256-X2FTIyvpz4nEBc7zrPNAq/yTdOlVupwSoDQzvZGDjo8="; + hash = "sha256-mUqjD/otB891kJ8aIF3NP9ewo7yAuGE3yPK+gIIrm2w="; }; # error: linker `aarch64-linux-gnu-gcc` not found @@ -27,7 +27,7 @@ rustPlatform.buildRustPackage (finalAttrs: { ''; useFetchCargoVendor = true; - cargoHash = "sha256-0PUXj9LSFFC10H3LHVuiOHCREwFz8AkgkzJDUAGI+V0="; + cargoHash = "sha256-s2h2Zt0cRW6V0VAKNuTL8WkHdfkLvuZA/bnSkQKcr9w="; nativeBuildInputs = [ installShellFiles ]; From ffb63b26475d1e5a633d24f620d004c04d2a9285 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 19 May 2025 20:00:33 +0000 Subject: [PATCH 13/26] frankenphp: 1.5.0 -> 1.6.0 --- pkgs/by-name/fr/frankenphp/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/fr/frankenphp/package.nix b/pkgs/by-name/fr/frankenphp/package.nix index 0ff5e14d3ec0..df45651ae04a 100644 --- a/pkgs/by-name/fr/frankenphp/package.nix +++ b/pkgs/by-name/fr/frankenphp/package.nix @@ -31,13 +31,13 @@ let in buildGoModule rec { pname = "frankenphp"; - version = "1.5.0"; + version = "1.6.0"; src = fetchFromGitHub { owner = "dunglas"; repo = "frankenphp"; tag = "v${version}"; - hash = "sha256-VOvH4Ma7IRDL2U6ihC620g9hvBcbt4VKP9SQxV1n3RM="; + hash = "sha256-y1S1oPBuXpu2ApCxv9ENqzD2wjSeMzwqnBldmVLEIsM="; }; sourceRoot = "${src.name}/caddy"; @@ -45,7 +45,7 @@ buildGoModule rec { # frankenphp requires C code that would be removed with `go mod tidy` # https://github.com/golang/go/issues/26366 proxyVendor = true; - vendorHash = "sha256-ltT6RHGcEMJjCkqWWwtVrCUpPs2F8U0yBx+YbzGwfSo="; + vendorHash = "sha256-M1z9Yv+WomKA+UACOUT8xcWdw+SD1MY2jfaDO4zYUQg="; buildInputs = [ phpUnwrapped From 65888ccba939931820b31123e890bcafabddb41f Mon Sep 17 00:00:00 2001 From: Peder Bergebakken Sundt Date: Sun, 18 May 2025 01:01:52 +0200 Subject: [PATCH 14/26] geteduroam: init at 0.10 --- pkgs/by-name/ge/geteduroam/package.nix | 92 ++++++++++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 pkgs/by-name/ge/geteduroam/package.nix diff --git a/pkgs/by-name/ge/geteduroam/package.nix b/pkgs/by-name/ge/geteduroam/package.nix new file mode 100644 index 000000000000..626c641dc66a --- /dev/null +++ b/pkgs/by-name/ge/geteduroam/package.nix @@ -0,0 +1,92 @@ +{ + lib, + buildGoModule, + fetchFromGitHub, + symlinkJoin, + versionCheckHook, + makeWrapper, + wrapGAppsHook4, + cairo, + gdk-pixbuf, + glib, + graphene, + gtk4, + libadwaita, + pango, +}: + +buildGoModule (finalAttrs: { + pname = "geteduroam"; + version = "0.10"; + + src = fetchFromGitHub { + owner = "geteduroam"; + repo = "linux-app"; + tag = finalAttrs.version; + hash = "sha256-Mtzt6i8vJ5M8T0vrAOxXhawlhCmCMEnDQz0Jo6uV88A="; + }; + + vendorHash = "sha256-b06wnqT88J7etNTFJ6nE9Uo0gOQOGvvs0vPNnJr6r4Q="; + + subPackages = [ + "cmd/geteduroam-gui" + "cmd/geteduroam-notifcheck" + ]; + + postInstall = '' + wrapProgram $out/bin/geteduroam-gui \ + --set-default PUREGOTK_LIB_FOLDER ${finalAttrs.passthru.libraryPath}/lib \ + ''${gappsWrapperArgs[@]} + + # copy notifcheck service + mkdir -p $out/lib/systemd/system/ + cp -v systemd/user/geteduroam/* $out/lib/systemd/system/ + substituteInPlace $out/lib/systemd/system/geteduroam-notifs.service \ + --replace-fail \ + "ExecStart=/usr/bin/geteduroam-notifcheck" \ + "ExecStart=$out/bin/geteduroam-notifcheck" + + # copy icons and desktop entries + cp -r cmd/geteduroam-gui/resources/share $out/ + ''; + + nativeBuildInputs = [ + wrapGAppsHook4 + makeWrapper + ]; + + dontWrapGApps = true; + + nativeInstallCheckInputs = [ + versionCheckHook + ]; + versionCheckProgram = "${placeholder "out"}/bin/geteduroam-gui"; + versionCheckProgramArg = "--version"; + doInstallCheck = true; + + passthru = { + libraryPath = symlinkJoin { + name = "eduroam-gui-puregotk-lib"; + # based on https://github.com/jwijenbergh/puregotk/blob/bc1a52f44fd4c491947f7af85296c66173da17ba/internal/core/core.go#L41 + paths = [ + cairo + gdk-pixbuf + glib.out + graphene + gtk4 + libadwaita + pango.out + ]; + }; + }; + + meta = { + description = "GUI client to configure eduroam"; + homepage = "https://eduroam.app"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ pbsds ]; + platforms = lib.platforms.linux; + changelog = "https://github.com/geteduroam/linux-app/releases/tag/${finalAttrs.version}"; + mainProgram = "geteduroam-gui"; + }; +}) From 7bc30eadf3c42ef68a91927089f6e9abe3e0f802 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 20 May 2025 00:13:28 +0000 Subject: [PATCH 15/26] swayimg: 3.9 -> 4.0 --- pkgs/by-name/sw/swayimg/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/sw/swayimg/package.nix b/pkgs/by-name/sw/swayimg/package.nix index 369c7897ef7c..0290529a4ead 100644 --- a/pkgs/by-name/sw/swayimg/package.nix +++ b/pkgs/by-name/sw/swayimg/package.nix @@ -31,13 +31,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "swayimg"; - version = "3.9"; + version = "4.0"; src = fetchFromGitHub { owner = "artemsen"; repo = "swayimg"; tag = "v${finalAttrs.version}"; - hash = "sha256-QPTODuVVDQCP7Ix63F0J0tOzfg5Q9B4GXaxjuTerkI0="; + hash = "sha256-2UmaU60+5NNj2CVJt4oJXyBPjVeA0zBfEqZOOSI2vvk="; }; strictDeps = true; From b8a2f7fff97f0c6bd08fec90d28e4e6291c86e0f Mon Sep 17 00:00:00 2001 From: Rebecca Kelly Date: Mon, 19 May 2025 11:17:06 -0400 Subject: [PATCH 16/26] deliantra-server: remove I'm not really using or maintaining it anymore and it's getting increasingly bit-rotted. --- nixos/modules/module-list.nix | 1 - .../services/games/deliantra-server.nix | 182 ------------------ pkgs/games/deliantra/0001-abs.patch | 17 -- pkgs/games/deliantra/0002-datadir.patch | 11 -- pkgs/games/deliantra/0003-swap.patch | 14 -- pkgs/games/deliantra/arch.nix | 33 ---- pkgs/games/deliantra/data.nix | 30 --- pkgs/games/deliantra/maps.nix | 33 ---- pkgs/games/deliantra/server.nix | 93 --------- pkgs/top-level/all-packages.nix | 9 - 10 files changed, 423 deletions(-) delete mode 100644 nixos/modules/services/games/deliantra-server.nix delete mode 100644 pkgs/games/deliantra/0001-abs.patch delete mode 100644 pkgs/games/deliantra/0002-datadir.patch delete mode 100644 pkgs/games/deliantra/0003-swap.patch delete mode 100644 pkgs/games/deliantra/arch.nix delete mode 100644 pkgs/games/deliantra/data.nix delete mode 100644 pkgs/games/deliantra/maps.nix delete mode 100644 pkgs/games/deliantra/server.nix diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 606eb5e7487f..5d5c097863fc 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -603,7 +603,6 @@ ./services/games/archisteamfarm.nix ./services/games/armagetronad.nix ./services/games/crossfire-server.nix - ./services/games/deliantra-server.nix ./services/games/factorio.nix ./services/games/freeciv.nix ./services/games/mchprs.nix diff --git a/nixos/modules/services/games/deliantra-server.nix b/nixos/modules/services/games/deliantra-server.nix deleted file mode 100644 index 4854731714f7..000000000000 --- a/nixos/modules/services/games/deliantra-server.nix +++ /dev/null @@ -1,182 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: -let - cfg = config.services.deliantra-server; - serverPort = 13327; -in -{ - options.services.deliantra-server = { - enable = lib.mkOption { - type = lib.types.bool; - default = false; - description = '' - If enabled, the Deliantra game server will be started at boot. - ''; - }; - - package = lib.mkPackageOption pkgs "deliantra-server" { - extraDescription = '' - ::: {.note} - This will also be used for map/arch data, if you don't change {option}`dataDir` - ::: - ''; - }; - - dataDir = lib.mkOption { - type = lib.types.str; - default = "${pkgs.deliantra-data}"; - defaultText = lib.literalExpression ''"''${pkgs.deliantra-data}"''; - description = '' - Where to store readonly data (maps, archetypes, sprites, etc). - Note that if you plan to use the live map editor (rather than editing - the maps offline and then nixos-rebuilding), THIS MUST BE WRITEABLE -- - copy the deliantra-data someplace writeable (say, - /var/lib/deliantra/data) and update this option accordingly. - ''; - }; - - stateDir = lib.mkOption { - type = lib.types.str; - default = "/var/lib/deliantra"; - description = '' - Where to store runtime data (save files, persistent items, etc). - - If left at the default, this will be automatically created on server - startup if it does not already exist. If changed, it is the admin's - responsibility to make sure that the directory exists and is writeable - by the `crossfire` user. - ''; - }; - - openFirewall = lib.mkOption { - type = lib.types.bool; - default = false; - description = '' - Whether to open ports in the firewall for the server. - ''; - }; - - configFiles = lib.mkOption { - type = lib.types.attrsOf lib.types.str; - description = '' - Contents of the server configuration files. These will be appended to - the example configurations the server comes with and overwrite any - default settings defined therein. - - The example here is not comprehensive. See the files in - /etc/deliantra-server after enabling this module for full documentation. - ''; - example = lib.literalExpression '' - { - dm_file = ''' - admin:secret_password:localhost - alice:xyzzy:* - '''; - motd = "Welcome to Deliantra!"; - settings = ''' - # Settings for game mechanics. - stat_loss_on_death true - armor_max_enchant 7 - '''; - config = ''' - # Settings for the server daemon. - hiscore_url https://deliantra.example.net/scores/ - max_map_reset 86400 - '''; - } - ''; - default = { - motd = ""; - }; - }; - }; - - config = lib.mkIf cfg.enable { - users.users.deliantra = { - description = "Deliantra server daemon user"; - home = cfg.stateDir; - createHome = false; - isSystemUser = true; - group = "deliantra"; - }; - users.groups.deliantra = { }; - - # Merge the cfg.configFiles setting with the default files shipped with - # Deliantra. - # For most files this consists of reading - # ${deliantra}/etc/deliantra-server/${name} and appending the user setting - # to it. - environment.etc = - lib.attrsets.mapAttrs' - ( - name: value: - lib.attrsets.nameValuePair "deliantra-server/${name}" { - mode = "0644"; - text = - # Deliantra doesn't come with a motd file, but respects it if present - # in /etc. - (lib.optionalString (name != "motd") ( - lib.fileContents "${cfg.package}/etc/deliantra-server/${name}" - )) - + "\n${value}"; - } - ) - ( - { - motd = ""; - settings = ""; - config = ""; - dm_file = ""; - } - // cfg.configFiles - ); - - systemd.services.deliantra-server = { - description = "Deliantra Server Daemon"; - wantedBy = [ "multi-user.target" ]; - after = [ "network.target" ]; - - environment = { - DELIANTRA_DATADIR = "${cfg.dataDir}"; - DELIANTRA_LOCALDIR = "${cfg.stateDir}"; - DELIANTRA_CONFDIR = "/etc/deliantra-server"; - }; - - serviceConfig = lib.mkMerge [ - { - ExecStart = "${cfg.package}/bin/deliantra-server"; - Restart = "always"; - User = "deliantra"; - Group = "deliantra"; - WorkingDirectory = cfg.stateDir; - } - (lib.mkIf (cfg.stateDir == "/var/lib/deliantra") { - StateDirectory = "deliantra"; - }) - ]; - - # The deliantra server needs access to a bunch of files at runtime that - # are not created automatically at server startup; they're meant to be - # installed in $PREFIX/var/deliantra-server by `make install`. And those - # files need to be writeable, so we can't just point at the ones in the - # nix store. Instead we take the approach of copying them out of the store - # on first run. If `bookarch` already exists, we assume the rest of the - # files do as well, and copy nothing -- otherwise we risk ovewriting - # server state information every time the server is upgraded. - preStart = '' - if [ ! -e "${cfg.stateDir}"/bookarch ]; then - ${pkgs.rsync}/bin/rsync -a --chmod=u=rwX,go=rX \ - "${cfg.package}/var/deliantra-server/" "${cfg.stateDir}/" - fi - ''; - }; - - networking.firewall = lib.mkIf cfg.openFirewall { - allowedTCPPorts = [ serverPort ]; - }; - }; -} diff --git a/pkgs/games/deliantra/0001-abs.patch b/pkgs/games/deliantra/0001-abs.patch deleted file mode 100644 index d116317e243a..000000000000 --- a/pkgs/games/deliantra/0001-abs.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- a/utils/cfhq2xa.C -+++ b/utils/cfhq2xa.C -@@ -182,10 +182,10 @@ static inline bool Diff (pixel w1, pixel w2) - pixel YUV1 = RGBAtoYUVA (w1); - pixel YUV2 = RGBAtoYUVA (w2); - -- return ((abs (((YUV1 >> Rshift) & Cmask) - ((YUV2 >> Rshift) & Cmask)) > trY) || -- (abs (((YUV1 >> Gshift) & Cmask) - ((YUV2 >> Gshift) & Cmask)) > trU) || -- (abs (((YUV1 >> Bshift) & Cmask) - ((YUV2 >> Bshift) & Cmask)) > trV) || -- (abs (((YUV1 >> Ashift) & Cmask) - ((YUV2 >> Ashift) & Cmask)) > trA) ); -+ return ((abs ((signed int)((YUV1 >> Rshift) & Cmask) - (signed int)((YUV2 >> Rshift) & Cmask)) > trY) || -+ (abs ((signed int)((YUV1 >> Gshift) & Cmask) - (signed int)((YUV2 >> Gshift) & Cmask)) > trU) || -+ (abs ((signed int)((YUV1 >> Bshift) & Cmask) - (signed int)((YUV2 >> Bshift) & Cmask)) > trV) || -+ (abs ((signed int)((YUV1 >> Ashift) & Cmask) - (signed int)((YUV2 >> Ashift) & Cmask)) > trA) ); - } - - static void diff --git a/pkgs/games/deliantra/0002-datadir.patch b/pkgs/games/deliantra/0002-datadir.patch deleted file mode 100644 index 1c8e847d88c6..000000000000 --- a/pkgs/games/deliantra/0002-datadir.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/utils/cfutil.in -+++ b/utils/cfutil.in -@@ -27,7 +27,7 @@ use common::sense; - my $prefix = "@prefix@"; - my $exec_prefix = "@exec_prefix@"; - my $datarootdir = "@datarootdir@"; --my $DATADIR = "@datadir@/@PACKAGE@"; -+my $DATADIR = $ENV{'DELIANTRA_DATADIR'} || "@datadir@/@PACKAGE@"; - - my $CONVERT = "@CONVERT@"; - my $IDENTIFY = "@IDENTIFY@"; diff --git a/pkgs/games/deliantra/0003-swap.patch b/pkgs/games/deliantra/0003-swap.patch deleted file mode 100644 index fa4e2bdec425..000000000000 --- a/pkgs/games/deliantra/0003-swap.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- a/include/util.h -+++ b/include/util.h -@@ -449,6 +449,11 @@ struct slice_allocator - { - p->~Tp (); - } -+ -+ bool operator ==(const slice_allocator &) const -+ { -+ return true; -+ } - }; - - // basically a memory area, but refcounted diff --git a/pkgs/games/deliantra/arch.nix b/pkgs/games/deliantra/arch.nix deleted file mode 100644 index 24fdaa82df48..000000000000 --- a/pkgs/games/deliantra/arch.nix +++ /dev/null @@ -1,33 +0,0 @@ -{ - stdenv, - lib, - fetchurl, - deliantra-server, -}: - -stdenv.mkDerivation rec { - pname = "deliantra-arch"; - version = "3.1"; - - src = fetchurl { - url = "http://dist.schmorp.de/deliantra/${pname}-${version}.tar.xz"; - sha256 = "1xzhv48g90hwkzgx9nfjm81ivg6hchkik9ldimi8ijb4j393kvsz"; - }; - - installPhase = '' - mkdir -p "$out" - export DELIANTRA_DATADIR="$out" - ${deliantra-server}/bin/cfutil --install-arch . - ''; - - meta = with lib; { - description = "Archetype data for the Deliantra free MMORPG"; - homepage = "http://www.deliantra.net/"; - license = with licenses; [ - gpl2Plus - agpl3Plus - ]; - platforms = platforms.linux; - maintainers = with maintainers; [ ToxicFrog ]; - }; -} diff --git a/pkgs/games/deliantra/data.nix b/pkgs/games/deliantra/data.nix deleted file mode 100644 index 7d16f4a3d915..000000000000 --- a/pkgs/games/deliantra/data.nix +++ /dev/null @@ -1,30 +0,0 @@ -{ - lib, - deliantra-maps, - deliantra-arch, - deliantra-server, - symlinkJoin, -}: - -symlinkJoin rec { - name = "deliantra-data-${version}"; - version = "M${deliantra-maps.version}+A${deliantra-arch.version}"; - - paths = [ - deliantra-maps - deliantra-arch - "${deliantra-server}/share/deliantra-server" - ]; - - meta = with lib; { - description = "Combined game data (maps + archetypes) for the Deliantra free MMORPG"; - homepage = "http://www.deliantra.net/"; - license = with licenses; [ - gpl2Plus - agpl3Plus - ]; - platforms = platforms.linux; - maintainers = with maintainers; [ ToxicFrog ]; - hydraPlatforms = [ ]; - }; -} diff --git a/pkgs/games/deliantra/maps.nix b/pkgs/games/deliantra/maps.nix deleted file mode 100644 index f630a1e50d3a..000000000000 --- a/pkgs/games/deliantra/maps.nix +++ /dev/null @@ -1,33 +0,0 @@ -{ - stdenv, - lib, - fetchurl, - deliantra-server, -}: - -stdenv.mkDerivation rec { - pname = "deliantra-maps"; - version = "3.1"; - - src = fetchurl { - url = "http://dist.schmorp.de/deliantra/${pname}-${version}.tar.xz"; - sha256 = "0zbwzya28s1xpnbrmqkqvfrzns03zdjd8a9w9nk665aif6rw2zbz"; - }; - - installPhase = '' - mkdir -p "$out/maps" - export DELIANTRA_DATADIR="$out" - ${deliantra-server}/bin/cfutil --install-maps . - ''; - - meta = with lib; { - description = "Map data for the Deliantra free MMORPG"; - homepage = "http://www.deliantra.net/"; - license = with licenses; [ - gpl2Plus - agpl3Plus - ]; - platforms = platforms.linux; - maintainers = with maintainers; [ ToxicFrog ]; - }; -} diff --git a/pkgs/games/deliantra/server.nix b/pkgs/games/deliantra/server.nix deleted file mode 100644 index 9f92d99aad1b..000000000000 --- a/pkgs/games/deliantra/server.nix +++ /dev/null @@ -1,93 +0,0 @@ -{ - stdenv, - lib, - fetchurl, - perlPackages, - autoconf, - perl, - gperf, - optipng, - pngnq, - rsync, - imagemagick, - blitz, - pkg-config, - glib, - boost, - makeWrapper, -}: - -let - perl-deps = with perlPackages; [ - AnyEvent - AnyEventAIO - AnyEventBDB - AnyEventIRC - CompressLZF - commonsense - Coro - CoroEV - Deliantra - DigestSHA1 - EV - PodPOM - SafeHole - URI - YAMLLibYAML - ]; -in -stdenv.mkDerivation rec { - pname = "deliantra-server"; - version = "3.1"; - - src = fetchurl { - url = "http://dist.schmorp.de/deliantra/${pname}-${version}.tar.xz"; - sha256 = "0v0m2m9fxq143aknh7jb3qj8bnpjrs3bpbbx07c18516y3izr71d"; - }; - - nativeBuildInputs = [ - autoconf - perl - gperf - optipng - pngnq - rsync - imagemagick - pkg-config - makeWrapper - ]; - - propagatedBuildInputs = perl-deps; - - buildInputs = [ - blitz - boost - glib - ]; - - hardeningDisable = [ "format" ]; - - patches = [ - ./0001-abs.patch - ./0002-datadir.patch - ./0003-swap.patch - ]; - - env.CXXFLAGS = "-std=c++11"; - - postFixup = '' - wrapProgram $out/bin/cfutil --prefix PERL5LIB : $PERL5LIB - wrapProgram $out/bin/deliantra-server --prefix PERL5LIB : $PERL5LIB - ''; - - meta = with lib; { - description = "Server for the Deliantra free MMORPG"; - homepage = "http://www.deliantra.net/"; - license = with licenses; [ - gpl2Plus - agpl3Plus - ]; - platforms = platforms.linux; - maintainers = with maintainers; [ ToxicFrog ]; - }; -} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1ba7ce5705b1..30167395c517 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -14931,15 +14931,6 @@ with pkgs; cutemaze = qt6Packages.callPackage ../games/cutemaze { }; - deliantra-server = callPackage ../games/deliantra/server.nix { - # perl538 defines 'struct object' in sv.h. many conflicts result - perl = perl540; - perlPackages = perl540Packages; - }; - deliantra-arch = callPackage ../games/deliantra/arch.nix { }; - deliantra-maps = callPackage ../games/deliantra/maps.nix { }; - deliantra-data = callPackage ../games/deliantra/data.nix { }; - ddnet-server = ddnet.override { buildClient = false; }; duckmarines = callPackage ../games/duckmarines { love = love_0_10; }; From 12513349a222bf665a20d188a597756be27ed384 Mon Sep 17 00:00:00 2001 From: emaryn Date: Tue, 20 May 2025 02:58:13 +0000 Subject: [PATCH 17/26] beekeeper-studio: 5.2.7 -> 5.2.9 --- pkgs/by-name/be/beekeeper-studio/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/be/beekeeper-studio/package.nix b/pkgs/by-name/be/beekeeper-studio/package.nix index 4486fe2edc1c..384b206eb58f 100644 --- a/pkgs/by-name/be/beekeeper-studio/package.nix +++ b/pkgs/by-name/be/beekeeper-studio/package.nix @@ -31,7 +31,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "beekeeper-studio"; - version = "5.2.7"; + version = "5.2.9"; src = let @@ -44,8 +44,8 @@ stdenv.mkDerivation (finalAttrs: { fetchurl { url = "https://github.com/beekeeper-studio/beekeeper-studio/releases/download/v${finalAttrs.version}/beekeeper-studio_${finalAttrs.version}_${arch}.deb"; hash = selectSystem { - x86_64-linux = "sha256-lP+8tX0NNsBDnrBvjJxu2PwVAMbtnnoc+oFteq6KECs="; - aarch64-linux = "sha256-pbVppWkXZb184icW9CevdNQ3FBC/Wpjr9BSd9fwbzCs="; + x86_64-linux = "sha256-iooZSiIkHfd3jSk+Pk0E7s/g51UzbyqyP8qnfes3mts="; + aarch64-linux = "sha256-zLkEMOJhckIM0qPCKBNUgFwYiF1YjJU4wKmiLJ1pzNg="; }; }; From 0a34ae39914ed02556daecc3b212b83f26708329 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 20 May 2025 03:25:04 +0000 Subject: [PATCH 18/26] claude-code: 0.2.109 -> 0.2.122 --- pkgs/by-name/cl/claude-code/package-lock.json | 459 +----------------- pkgs/by-name/cl/claude-code/package.nix | 6 +- 2 files changed, 7 insertions(+), 458 deletions(-) diff --git a/pkgs/by-name/cl/claude-code/package-lock.json b/pkgs/by-name/cl/claude-code/package-lock.json index 70398c0cafce..e2fdd266549a 100644 --- a/pkgs/by-name/cl/claude-code/package-lock.json +++ b/pkgs/by-name/cl/claude-code/package-lock.json @@ -5,18 +5,15 @@ "packages": { "": { "dependencies": { - "@anthropic-ai/claude-code": "^0.2.109" + "@anthropic-ai/claude-code": "^0.2.122" } }, "node_modules/@anthropic-ai/claude-code": { - "version": "0.2.109", - "resolved": "https://registry.npmjs.org/@anthropic-ai/claude-code/-/claude-code-0.2.109.tgz", - "integrity": "sha512-dxOUgATehMCBZHzC47H3i6CCAf2YlXQMcTxrfzl0XEkwqEhbT8EzwWVbqDVc7n/eLykY2SK7xf5hD1iK8kr/dw==", + "version": "0.2.122", + "resolved": "https://registry.npmjs.org/@anthropic-ai/claude-code/-/claude-code-0.2.122.tgz", + "integrity": "sha512-q9XnW6a4btqHM2XYxkcl2d7dDNRTX8pvaeisiNWYzAOSKC+wUfOrkioUUS3BG+i6sNtJB03jPKJdqvEvtXbZjw==", "hasInstallScript": true, "license": "SEE LICENSE IN README.md", - "dependencies": { - "better-sqlite3": "^11.9.1" - }, "bin": { "claude": "cli.js" }, @@ -162,454 +159,6 @@ "funding": { "url": "https://opencollective.com/libvips" } - }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/better-sqlite3": { - "version": "11.9.1", - "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-11.9.1.tgz", - "integrity": "sha512-Ba0KR+Fzxh2jDRhdg6TSH0SJGzb8C0aBY4hR8w8madIdIzzC6Y1+kx5qR6eS1Z+Gy20h6ZU28aeyg0z1VIrShQ==", - "hasInstallScript": true, - "license": "MIT", - "dependencies": { - "bindings": "^1.5.0", - "prebuild-install": "^7.1.1" - } - }, - "node_modules/bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", - "license": "MIT", - "dependencies": { - "file-uri-to-path": "1.0.0" - } - }, - "node_modules/bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "license": "MIT", - "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "node_modules/chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "license": "ISC" - }, - "node_modules/decompress-response": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", - "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", - "license": "MIT", - "dependencies": { - "mimic-response": "^3.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "license": "MIT", - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/detect-libc": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz", - "integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==", - "license": "Apache-2.0", - "engines": { - "node": ">=8" - } - }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "license": "MIT", - "dependencies": { - "once": "^1.4.0" - } - }, - "node_modules/expand-template": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", - "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==", - "license": "(MIT OR WTFPL)", - "engines": { - "node": ">=6" - } - }, - "node_modules/file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "license": "MIT" - }, - "node_modules/fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "license": "MIT" - }, - "node_modules/github-from-package": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", - "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==", - "license": "MIT" - }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "BSD-3-Clause" - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "license": "ISC" - }, - "node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "license": "ISC" - }, - "node_modules/mimic-response": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", - "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/mkdirp-classic": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", - "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", - "license": "MIT" - }, - "node_modules/napi-build-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-2.0.0.tgz", - "integrity": "sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA==", - "license": "MIT" - }, - "node_modules/node-abi": { - "version": "3.74.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.74.0.tgz", - "integrity": "sha512-c5XK0MjkGBrQPGYG24GBADZud0NCbznxNx0ZkS+ebUTrmV1qTDxPxSL8zEAPURXSbLRWVexxmP4986BziahL5w==", - "license": "MIT", - "dependencies": { - "semver": "^7.3.5" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "license": "ISC", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/prebuild-install": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.3.tgz", - "integrity": "sha512-8Mf2cbV7x1cXPUILADGI3wuhfqWvtiLA1iclTDbFRZkgRQS0NqsPZphna9V+HyTEadheuPmjaJMsbzKQFOzLug==", - "license": "MIT", - "dependencies": { - "detect-libc": "^2.0.0", - "expand-template": "^2.0.3", - "github-from-package": "0.0.0", - "minimist": "^1.2.3", - "mkdirp-classic": "^0.5.3", - "napi-build-utils": "^2.0.0", - "node-abi": "^3.3.0", - "pump": "^3.0.0", - "rc": "^1.2.7", - "simple-get": "^4.0.0", - "tar-fs": "^2.0.0", - "tunnel-agent": "^0.6.0" - }, - "bin": { - "prebuild-install": "bin.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/pump": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.2.tgz", - "integrity": "sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==", - "license": "MIT", - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "node_modules/rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", - "dependencies": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "bin": { - "rc": "cli.js" - } - }, - "node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "license": "MIT", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/simple-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", - "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/simple-get": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", - "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "decompress-response": "^6.0.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } - }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "license": "MIT", - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/tar-fs": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.2.tgz", - "integrity": "sha512-EsaAXwxmx8UB7FRKqeozqEPop69DXcmYwTQwXvyAPF352HJsPdkVhvTaDPYqfNgruveJIJy3TA2l+2zj8LJIJA==", - "license": "MIT", - "dependencies": { - "chownr": "^1.1.1", - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^2.1.4" - } - }, - "node_modules/tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "license": "MIT", - "dependencies": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", - "license": "Apache-2.0", - "dependencies": { - "safe-buffer": "^5.0.1" - }, - "engines": { - "node": "*" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "license": "MIT" - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "license": "ISC" } } } diff --git a/pkgs/by-name/cl/claude-code/package.nix b/pkgs/by-name/cl/claude-code/package.nix index 120d73b335f4..c395e785c544 100644 --- a/pkgs/by-name/cl/claude-code/package.nix +++ b/pkgs/by-name/cl/claude-code/package.nix @@ -7,16 +7,16 @@ buildNpmPackage rec { pname = "claude-code"; - version = "0.2.109"; + version = "0.2.122"; nodejs = nodejs_20; # required for sandboxed Nix builds on Darwin src = fetchzip { url = "https://registry.npmjs.org/@anthropic-ai/claude-code/-/claude-code-${version}.tgz"; - hash = "sha256-XANo3GKiD5n66GZrB+gZ15o2zTAOKkjcFNbGE3TT1NA="; + hash = "sha256-9w1wjuOTSphEfgKfNJhDFiTKuIJqfV6Bz4XEYXMIaGE="; }; - npmDepsHash = "sha256-u5AZXNlN/NAag+35uz3rzLh6ItbKAdV8RSSjzCGk6uA="; + npmDepsHash = "sha256-71YPsgeI8bmb+wwFHS5XOXKJXsagWZj+hBf2T/+GYMU="; postPatch = '' cp ${./package-lock.json} package-lock.json From 43531951ab3a18090f9c8ae7e62b8bcd9687d302 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 20 May 2025 04:13:09 +0000 Subject: [PATCH 19/26] pinact: 3.0.5 -> 3.1.2 --- pkgs/by-name/pi/pinact/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/pi/pinact/package.nix b/pkgs/by-name/pi/pinact/package.nix index a13b2f069682..399c9caee856 100644 --- a/pkgs/by-name/pi/pinact/package.nix +++ b/pkgs/by-name/pi/pinact/package.nix @@ -8,19 +8,19 @@ let pname = "pinact"; - version = "3.0.5"; + version = "3.1.2"; src = fetchFromGitHub { owner = "suzuki-shunsuke"; repo = "pinact"; tag = "v${version}"; - hash = "sha256-p8GOXx++wcUrQATlojx0D4ymlPFw9TCqL6YGSTOaRDo="; + hash = "sha256-5jJzlMMpfk9fFDoqR0NJNacquZ4Zma0YF/pi80Miv0Y="; }; mainProgram = "pinact"; in buildGoModule { inherit pname version src; - vendorHash = "sha256-+iYNducL+tX34L5VlisqeNwvJUcuOAkEWDk/2JbfC0Q="; + vendorHash = "sha256-kK4r0mCktlbhJr6iHD0Q/k1DralieN2AUg+zREZ06DA="; env.CGO_ENABLED = 0; From fe586a5d59ebb319a7557c83ac44a47428701fdc Mon Sep 17 00:00:00 2001 From: Matt Sturgeon Date: Tue, 13 May 2025 07:14:16 +0100 Subject: [PATCH 20/26] doc/packages: add treefmt section --- doc/packages/index.md | 1 + doc/packages/treefmt.section.md | 8 ++++++++ doc/redirects.json | 3 +++ 3 files changed, 12 insertions(+) create mode 100644 doc/packages/treefmt.section.md diff --git a/doc/packages/index.md b/doc/packages/index.md index 5484ac4400df..35e2656ab670 100644 --- a/doc/packages/index.md +++ b/doc/packages/index.md @@ -25,6 +25,7 @@ nginx.section.md opengl.section.md shell-helpers.section.md python-tree-sitter.section.md +treefmt.section.md steam.section.md cataclysm-dda.section.md urxvt.section.md diff --git a/doc/packages/treefmt.section.md b/doc/packages/treefmt.section.md new file mode 100644 index 000000000000..aaf0ac69346b --- /dev/null +++ b/doc/packages/treefmt.section.md @@ -0,0 +1,8 @@ +# treefmt {#treefmt} + +[treefmt](https://github.com/numtide/treefmt) streamlines the process of applying formatters to your project, making it a breeze with just one command line. + +The [`treefmt` package](https://search.nixos.org/packages?channel=unstable&show=treefmt) +provides functions for configuring treefmt using the module system. + +Alternatively, treefmt can be configured using [treefmt-nix](https://github.com/numtide/treefmt-nix). diff --git a/doc/redirects.json b/doc/redirects.json index 598f73abc37d..362d0a197689 100644 --- a/doc/redirects.json +++ b/doc/redirects.json @@ -483,6 +483,9 @@ "tester-testEqualArrayOrMap-return": [ "index.html#tester-testEqualArrayOrMap-return" ], + "treefmt": [ + "index.html#treefmt" + ], "typst": [ "index.html#typst", "doc/languages-frameworks/typst.section.md#typst" From 301824d21698e21025b6136e66833fe3e5b18655 Mon Sep 17 00:00:00 2001 From: Matt Sturgeon Date: Wed, 14 May 2025 07:20:21 +0100 Subject: [PATCH 21/26] doc/packages/treefmt: add function reference docs Add a `treefmt.functionsDoc` passthru, which is included on the treefmt section of the nixpkgs manual. This generates reference docs for functions defined in `pkgs/by-name/tr/treefmt/lib.nix`, using `nixdoc`. --- doc/doc-support/package.nix | 2 ++ doc/packages/treefmt.section.md | 6 +++++- doc/redirects.json | 12 ++++++++++++ pkgs/by-name/tr/treefmt/functions-doc.nix | 19 +++++++++++++++++++ pkgs/by-name/tr/treefmt/package.nix | 3 +++ 5 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 pkgs/by-name/tr/treefmt/functions-doc.nix diff --git a/doc/doc-support/package.nix b/doc/doc-support/package.nix index db8066c8dc56..89e03240cee9 100644 --- a/doc/doc-support/package.nix +++ b/doc/doc-support/package.nix @@ -14,6 +14,7 @@ nixpkgs ? { }, markdown-code-runner, roboto, + treefmt, }: stdenvNoCC.mkDerivation ( @@ -47,6 +48,7 @@ stdenvNoCC.mkDerivation ( postPatch = '' ln -s ${optionsJSON}/share/doc/nixos/options.json ./config-options.json + ln -s ${treefmt.functionsDoc.markdown} ./packages/treefmt-functions.section.md ''; buildPhase = '' diff --git a/doc/packages/treefmt.section.md b/doc/packages/treefmt.section.md index aaf0ac69346b..873f93ecd657 100644 --- a/doc/packages/treefmt.section.md +++ b/doc/packages/treefmt.section.md @@ -3,6 +3,10 @@ [treefmt](https://github.com/numtide/treefmt) streamlines the process of applying formatters to your project, making it a breeze with just one command line. The [`treefmt` package](https://search.nixos.org/packages?channel=unstable&show=treefmt) -provides functions for configuring treefmt using the module system. +provides functions for configuring treefmt using the module system, which are [documented below](#sec-functions-library-treefmt). Alternatively, treefmt can be configured using [treefmt-nix](https://github.com/numtide/treefmt-nix). + +```{=include=} sections auto-id-prefix=auto-generated-treefmt-functions +treefmt-functions.section.md +``` diff --git a/doc/redirects.json b/doc/redirects.json index 362d0a197689..30239175f49a 100644 --- a/doc/redirects.json +++ b/doc/redirects.json @@ -72,6 +72,15 @@ "part-toolchains": [ "index.html#part-toolchains" ], + "pkgs.treefmt.buildConfig": [ + "index.html#pkgs.treefmt.buildConfig" + ], + "pkgs.treefmt.evalConfig": [ + "index.html#pkgs.treefmt.evalConfig" + ], + "pkgs.treefmt.withConfig": [ + "index.html#pkgs.treefmt.withConfig" + ], "preface": [ "index.html#preface" ], @@ -111,6 +120,9 @@ "sec-building-packages-with-llvm-using-clang-stdenv": [ "index.html#sec-building-packages-with-llvm-using-clang-stdenv" ], + "sec-functions-library-treefmt": [ + "index.html#sec-functions-library-treefmt" + ], "sec-inkscape": [ "index.html#sec-inkscape" ], diff --git a/pkgs/by-name/tr/treefmt/functions-doc.nix b/pkgs/by-name/tr/treefmt/functions-doc.nix new file mode 100644 index 000000000000..df67d902aba4 --- /dev/null +++ b/pkgs/by-name/tr/treefmt/functions-doc.nix @@ -0,0 +1,19 @@ +{ + nixdoc, + runCommand, +}: +{ + markdown = + runCommand "treefmt-functions-doc" + { + nativeBuildInputs = [ nixdoc ]; + } + '' + nixdoc --file ${./lib.nix} \ + --description "Functions Reference" \ + --prefix "pkgs" \ + --category "treefmt" \ + --anchor-prefix "" \ + > $out + ''; +} diff --git a/pkgs/by-name/tr/treefmt/package.nix b/pkgs/by-name/tr/treefmt/package.nix index 1a4873157f0c..08ca96eced1f 100644 --- a/pkgs/by-name/tr/treefmt/package.nix +++ b/pkgs/by-name/tr/treefmt/package.nix @@ -36,6 +36,9 @@ buildGoModule rec { ; tests = callPackages ./tests.nix { }; + + # Documentation for functions defined in `./lib.nix` + functionsDoc = callPackages ./functions-doc.nix { }; }; meta = { From 96f041725f6e92f7159b6d2913f07c18101d92dc Mon Sep 17 00:00:00 2001 From: Matt Sturgeon Date: Wed, 14 May 2025 07:20:21 +0100 Subject: [PATCH 22/26] doc/packages/treefmt: add location to function reference docs Get the function's source code location using `unsafeGetAttrPos` and pass that to `nixdoc` so that links to definitions are included in the docs. --- pkgs/by-name/tr/treefmt/functions-doc.nix | 38 +++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/pkgs/by-name/tr/treefmt/functions-doc.nix b/pkgs/by-name/tr/treefmt/functions-doc.nix index df67d902aba4..86dc23b226ea 100644 --- a/pkgs/by-name/tr/treefmt/functions-doc.nix +++ b/pkgs/by-name/tr/treefmt/functions-doc.nix @@ -1,8 +1,45 @@ { + lib, + writers, nixdoc, runCommand, + treefmt, }: +let + root = toString ./.; + revision = lib.trivial.revisionWithDefault "master"; + removeRoot = file: lib.removePrefix "/" (lib.removePrefix root file); + + # Import and apply `./lib.nix`, which contains treefmt's public functions + # + # NOTE: we cannot access them via `treefmt.passthru` or `callPackages ./lib.nix { }`, + # because that would be opaque to `unsafeGetAttrPos`. + attrs = + let + fn = import ./lib.nix; + args = builtins.mapAttrs (_: _: null) (builtins.functionArgs fn); + in + fn args; +in { + locations = lib.pipe attrs [ + builtins.attrNames + (builtins.map ( + name: + let + pos = builtins.unsafeGetAttrPos name attrs; + file = removeRoot pos.file; + line = toString pos.line; + subpath = "pkgs/by-name/tr/treefmt/${file}"; + url = "https://github.com/NixOS/nixpkgs/blob/${revision}/${subpath}#L${line}"; + in + assert lib.hasPrefix root pos.file; + lib.nameValuePair "pkgs.treefmt.${name}" "[${subpath}:${line}](${url}) in ``" + )) + builtins.listToAttrs + (writers.writeJSON "treefmt-function-locations") + ]; + markdown = runCommand "treefmt-functions-doc" { @@ -10,6 +47,7 @@ } '' nixdoc --file ${./lib.nix} \ + --locs ${treefmt.functionsDoc.locations} \ --description "Functions Reference" \ --prefix "pkgs" \ --category "treefmt" \ From 4c638c27356b52badabedfe2e40b220fced821b2 Mon Sep 17 00:00:00 2001 From: Matt Sturgeon Date: Tue, 13 May 2025 07:15:15 +0100 Subject: [PATCH 23/26] doc/packages/treefmt: add option reference docs Add a `treefmt.optionsDoc` passthru, which is included on the treefmt section of the nixpkgs manual. This generates reference docs for options declared in `treefmt.evalConfig`. --- doc/doc-support/package.nix | 1 + doc/packages/treefmt.section.md | 13 ++++++++++- doc/redirects.json | 3 +++ pkgs/by-name/tr/treefmt/lib.nix | 16 +++++-------- pkgs/by-name/tr/treefmt/options-doc.nix | 31 +++++++++++++++++++++++++ pkgs/by-name/tr/treefmt/package.nix | 3 +++ 6 files changed, 56 insertions(+), 11 deletions(-) create mode 100644 pkgs/by-name/tr/treefmt/options-doc.nix diff --git a/doc/doc-support/package.nix b/doc/doc-support/package.nix index 89e03240cee9..65fb0fb38ed7 100644 --- a/doc/doc-support/package.nix +++ b/doc/doc-support/package.nix @@ -49,6 +49,7 @@ stdenvNoCC.mkDerivation ( postPatch = '' ln -s ${optionsJSON}/share/doc/nixos/options.json ./config-options.json ln -s ${treefmt.functionsDoc.markdown} ./packages/treefmt-functions.section.md + ln -s ${treefmt.optionsDoc.optionsJSON}/share/doc/nixos/options.json ./treefmt-options.json ''; buildPhase = '' diff --git a/doc/packages/treefmt.section.md b/doc/packages/treefmt.section.md index 873f93ecd657..fbf38f5eb821 100644 --- a/doc/packages/treefmt.section.md +++ b/doc/packages/treefmt.section.md @@ -3,10 +3,21 @@ [treefmt](https://github.com/numtide/treefmt) streamlines the process of applying formatters to your project, making it a breeze with just one command line. The [`treefmt` package](https://search.nixos.org/packages?channel=unstable&show=treefmt) -provides functions for configuring treefmt using the module system, which are [documented below](#sec-functions-library-treefmt). +provides functions for configuring treefmt using the module system, which are [documented below](#sec-functions-library-treefmt), along with [their options](#sec-treefmt-options-reference). Alternatively, treefmt can be configured using [treefmt-nix](https://github.com/numtide/treefmt-nix). ```{=include=} sections auto-id-prefix=auto-generated-treefmt-functions treefmt-functions.section.md ``` + +## Options Reference {#sec-treefmt-options-reference} + +The following attributes can be passed to [`withConfig`](#pkgs.treefmt.withConfig) or [`evalConfig`](#pkgs.treefmt.evalConfig): + +```{=include=} options +id-prefix: opt-treefmt- +list-id: configuration-variable-list +source: ../treefmt-options.json +``` + diff --git a/doc/redirects.json b/doc/redirects.json index 30239175f49a..1bcf2a8bf52c 100644 --- a/doc/redirects.json +++ b/doc/redirects.json @@ -420,6 +420,9 @@ "sec-tools-of-stdenv": [ "index.html#sec-tools-of-stdenv" ], + "sec-treefmt-options-reference": [ + "index.html#sec-treefmt-options-reference" + ], "ssec-cosmic-common-issues": [ "index.html#ssec-cosmic-common-issues" ], diff --git a/pkgs/by-name/tr/treefmt/lib.nix b/pkgs/by-name/tr/treefmt/lib.nix index a9b06eae4f27..c5eb56d3c138 100644 --- a/pkgs/by-name/tr/treefmt/lib.nix +++ b/pkgs/by-name/tr/treefmt/lib.nix @@ -15,11 +15,9 @@ # Inputs - `module` - : A treefmt module, configuring options that include: - - `name`: `String` (default `"treefmt-with-config"`) - - `settings`: `Module` (default `{ }`) - - `runtimeInputs`: `[Derivation]` (default `[ ]`) + : A treefmt module. See [options reference]. + + [options reference]: https://nixos.org/manual/nixpkgs/unstable#sec-treefmt-options-reference */ evalConfig = module: @@ -51,11 +49,9 @@ # Inputs - `module` - : A treefmt module, configuring options that include: - - `name`: `String` (default `"treefmt-with-config"`) - - `settings`: `Module` (default `{ }`) - - `runtimeInputs`: `[Derivation]` (default `[ ]`) + : A treefmt module. See [options reference]. + + [options reference]: https://nixos.org/manual/nixpkgs/unstable#sec-treefmt-options-reference */ withConfig = module: diff --git a/pkgs/by-name/tr/treefmt/options-doc.nix b/pkgs/by-name/tr/treefmt/options-doc.nix new file mode 100644 index 000000000000..f9e51ec0dff1 --- /dev/null +++ b/pkgs/by-name/tr/treefmt/options-doc.nix @@ -0,0 +1,31 @@ +# To build this derivation, run `nix-build -A treefmt.optionsDoc` +{ + lib, + treefmt, + nixosOptionsDoc, +}: + +let + configuration = treefmt.evalConfig [ ]; + + root = toString configuration._module.specialArgs.modulesPath; + revision = lib.trivial.revisionWithDefault "master"; + removeRoot = file: lib.removePrefix "/" (lib.removePrefix root file); + + transformDeclaration = + file: + let + fileStr = toString file; + subpath = "pkgs/by-name/tr/treefmt/modules/" + removeRoot fileStr; + in + assert lib.hasPrefix root fileStr; + { + url = "https://github.com/NixOS/nixpkgs/blob/${revision}/${subpath}"; + name = subpath; + }; +in +nixosOptionsDoc { + documentType = "none"; + options = builtins.removeAttrs configuration.options [ "_module" ]; + transformOptions = opt: opt // { declarations = map transformDeclaration opt.declarations; }; +} diff --git a/pkgs/by-name/tr/treefmt/package.nix b/pkgs/by-name/tr/treefmt/package.nix index 08ca96eced1f..ab9c136ac434 100644 --- a/pkgs/by-name/tr/treefmt/package.nix +++ b/pkgs/by-name/tr/treefmt/package.nix @@ -39,6 +39,9 @@ buildGoModule rec { # Documentation for functions defined in `./lib.nix` functionsDoc = callPackages ./functions-doc.nix { }; + + # Documentation for options declared in `treefmt.evalConfig` configurations + optionsDoc = callPackages ./options-doc.nix { }; }; meta = { From 6e5c68be85c6c626ff52cbcdda655d5cf05ea344 Mon Sep 17 00:00:00 2001 From: Matt Sturgeon Date: Mon, 19 May 2025 22:13:58 +0100 Subject: [PATCH 24/26] treefmt: improve how doc-comments render in the manual 1. Use internal links for other manual sections 2. Fix definition-list syntax Currently, `:doc` doesn't support rendering clickable links anyway, so we don't loose much by having relative links. --- pkgs/by-name/tr/treefmt/lib.nix | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/pkgs/by-name/tr/treefmt/lib.nix b/pkgs/by-name/tr/treefmt/lib.nix index c5eb56d3c138..a38fb5354bca 100644 --- a/pkgs/by-name/tr/treefmt/lib.nix +++ b/pkgs/by-name/tr/treefmt/lib.nix @@ -15,9 +15,8 @@ # Inputs - : A treefmt module. See [options reference]. - - [options reference]: https://nixos.org/manual/nixpkgs/unstable#sec-treefmt-options-reference + `module` + : A treefmt module. See [options reference](#sec-treefmt-options-reference). */ evalConfig = module: @@ -49,9 +48,8 @@ # Inputs - : A treefmt module. See [options reference]. - - [options reference]: https://nixos.org/manual/nixpkgs/unstable#sec-treefmt-options-reference + `module` + : A treefmt module. See [options reference](#sec-treefmt-options-reference). */ withConfig = module: @@ -75,7 +73,8 @@ # Inputs `settings` - : A settings module, used to build a treefmt config file + : A settings module, used to build a treefmt config file. + See [`settings` option reference](#opt-treefmt-settings). */ buildConfig = module: From efbf556332524db0428afbc91a9bc5fdee77b60a Mon Sep 17 00:00:00 2001 From: Matt Sturgeon Date: Wed, 14 May 2025 22:25:47 +0100 Subject: [PATCH 25/26] treefmt: add longDescription linking to Nixpkgs Manual Link to the treefmt section of the Nixpkgs Manual in the `treefmt` package's long description. Additionally, link to treefmt-nix. --- pkgs/by-name/tr/treefmt/package.nix | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/pkgs/by-name/tr/treefmt/package.nix b/pkgs/by-name/tr/treefmt/package.nix index ab9c136ac434..0c0151b4a7b7 100644 --- a/pkgs/by-name/tr/treefmt/package.nix +++ b/pkgs/by-name/tr/treefmt/package.nix @@ -46,6 +46,19 @@ buildGoModule rec { meta = { description = "one CLI to format the code tree"; + longDescription = '' + [treefmt](${meta.homepage}) streamlines the process of applying formatters + to your project, making it a breeze with just one command line. + + The `treefmt` package provides functions for configuring treefmt using + the module system, which are documented in the [treefmt section] of the + Nixpkgs Manual. + + Alternatively, treefmt can be configured using [treefmt-nix]. + + [treefmt section]: https://nixos.org/manual/nixpkgs/unstable#treefmt + [treefmt-nix]: https://github.com/numtide/treefmt-nix + ''; homepage = "https://github.com/numtide/treefmt"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ From 3f96c18c79e734f84b5c12fa12467c8aa44e8c96 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alejandro=20S=C3=A1nchez=20Medina?= Date: Fri, 9 May 2025 19:23:55 +0200 Subject: [PATCH 26/26] docs: add instructions to load development utilities Co-authored-by: Valentin Gagarin --- doc/README.md | 22 ++++++++++++++++++- .../contributing-to-this-manual.chapter.md | 22 +++++++++++++++++++ nixos/doc/manual/redirects.json | 3 +++ 3 files changed, 46 insertions(+), 1 deletion(-) diff --git a/doc/README.md b/doc/README.md index 531c38acdfa5..029db7eabc7f 100644 --- a/doc/README.md +++ b/doc/README.md @@ -34,7 +34,27 @@ $ nix-build doc If the build succeeds, the manual will be in `./result/share/doc/nixpkgs/manual.html`. -### devmode +### Development environment + +In order to reduce repetition, consider using tools from the provided development environment: + +Load it from the Nixpkgs documentation directory with + +```ShellSession +$ cd /path/to/nixpkgs/doc +$ nix-shell +``` + +To load the development utilities automatically when entering that directory, [set up `nix-direnv`](https://nix.dev/guides/recipes/direnv). + +Make sure that your local files aren't added to Git history by adding the following lines to `.git/info/exclude` at the root of the Nixpkgs repository: + +``` +/**/.envrc +/**/.direnv +``` + +#### `devmode` The shell in the manual source directory makes available a command, `devmode`. It is a daemon, that: diff --git a/nixos/doc/manual/contributing-to-this-manual.chapter.md b/nixos/doc/manual/contributing-to-this-manual.chapter.md index 7515bef44b10..a78a136becca 100644 --- a/nixos/doc/manual/contributing-to-this-manual.chapter.md +++ b/nixos/doc/manual/contributing-to-this-manual.chapter.md @@ -17,6 +17,28 @@ There's also [a convenient development daemon](https://nixos.org/manual/nixpkgs/ The above instructions don't deal with the appendix of available `configuration.nix` options, and the manual pages related to NixOS. These are built, and written in a different location and in a different format, as explained in the next sections. +## Development environment {#sec-contributing-development-env} + +In order to reduce repetition, consider using tools from the provided development environment: + +Load it from the NixOS documentation directory with + +```ShellSession +$ cd /path/to/nixpkgs/nixos/doc/manual +$ nix-shell +``` + +To load the development utilities automatically when entering that directory, [set up `nix-direnv`](https://nix.dev/guides/recipes/direnv). + +Make sure that your local files aren't added to Git history by adding the following lines to `.git/info/exclude` at the root of the Nixpkgs repository: + +``` +/**/.envrc +/**/.direnv +``` + +You might want to also use [`devmode`](https://github.com/NixOS/nixpkgs/blob/master/doc/README.md#devmode) while editing the manual. + ## Testing redirects {#sec-contributing-redirects} Once you have a successful build, you can open the relevant HTML (path mentioned above) in a browser along with the anchor, and observe the redirection. diff --git a/nixos/doc/manual/redirects.json b/nixos/doc/manual/redirects.json index d583ddbcd814..d8a07c11a916 100644 --- a/nixos/doc/manual/redirects.json +++ b/nixos/doc/manual/redirects.json @@ -71,6 +71,9 @@ "ch-installation": [ "index.html#ch-installation" ], + "sec-contributing-development-env": [ + "index.html#sec-contributing-development-env" + ], "sec-mattermost": [ "index.html#sec-mattermost" ],