diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 4c3999ce44dc..612aed93d38a 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -2106,6 +2106,11 @@ github = "AtilaSaraiva"; githubId = 29521461; }; + atinba = { + name = "Atin Bainada"; + github = "atinba"; + githubId = 61903527; + }; atkinschang = { email = "atkinschang+nixpkgs@gmail.com"; github = "AtkinsChang"; @@ -6843,6 +6848,12 @@ githubId = 57543709; name = "Chris O'Brien"; }; + euxane = { + name = "euxane"; + email = "r9uhdi.nixpkgs@euxane.net"; + github = "pacien"; + githubId = 1449319; + }; evalexpr = { name = "Jonathan Wilkins"; email = "nixos@wilkins.tech"; @@ -16649,12 +16660,6 @@ githubId = 17091659; name = "Pablo Andres Dealbera"; }; - pacien = { - email = "b4gx3q.nixpkgs@pacien.net"; - github = "pacien"; - githubId = 1449319; - name = "Pacien Tran-Girard"; - }; pacman99 = { email = "pachum99@gmail.com"; matrix = "@pachumicchu:myrdd.info"; diff --git a/nixos/modules/programs/msmtp.nix b/nixos/modules/programs/msmtp.nix index b68f1cbeb9cc..7a1941e0f949 100644 --- a/nixos/modules/programs/msmtp.nix +++ b/nixos/modules/programs/msmtp.nix @@ -10,7 +10,7 @@ let in { - meta.maintainers = with lib.maintainers; [ pacien ]; + meta.maintainers = with lib.maintainers; [ euxane ]; options = { programs.msmtp = { diff --git a/nixos/modules/services/backup/postgresql-wal-receiver.nix b/nixos/modules/services/backup/postgresql-wal-receiver.nix index 361f572d61d6..3e021d99bd24 100644 --- a/nixos/modules/services/backup/postgresql-wal-receiver.nix +++ b/nixos/modules/services/backup/postgresql-wal-receiver.nix @@ -210,5 +210,5 @@ in ) receivers; }; - meta.maintainers = with lib.maintainers; [ pacien ]; + meta.maintainers = with lib.maintainers; [ euxane ]; } diff --git a/nixos/modules/services/mail/stalwart-mail.nix b/nixos/modules/services/mail/stalwart-mail.nix index 46c4bd7bf682..dca87e7dc262 100644 --- a/nixos/modules/services/mail/stalwart-mail.nix +++ b/nixos/modules/services/mail/stalwart-mail.nix @@ -198,7 +198,7 @@ in meta = { maintainers = with lib.maintainers; [ happysalada - pacien + euxane onny ]; }; diff --git a/nixos/modules/services/matrix/appservice-discord.nix b/nixos/modules/services/matrix/appservice-discord.nix index 5e7930a73c4c..cf3c8ea20eae 100644 --- a/nixos/modules/services/matrix/appservice-discord.nix +++ b/nixos/modules/services/matrix/appservice-discord.nix @@ -159,5 +159,5 @@ in }; }; - meta.maintainers = with lib.maintainers; [ pacien ]; + meta.maintainers = with lib.maintainers; [ euxane ]; } diff --git a/nixos/modules/services/matrix/mautrix-telegram.nix b/nixos/modules/services/matrix/mautrix-telegram.nix index b8e1a1302de1..2fb8c7015a7f 100644 --- a/nixos/modules/services/matrix/mautrix-telegram.nix +++ b/nixos/modules/services/matrix/mautrix-telegram.nix @@ -200,7 +200,7 @@ in }; meta.maintainers = with lib.maintainers; [ - pacien + euxane vskilet ]; } diff --git a/nixos/modules/services/misc/rmfakecloud.nix b/nixos/modules/services/misc/rmfakecloud.nix index 6fa08bcb2ec3..9863faedb0d1 100644 --- a/nixos/modules/services/misc/rmfakecloud.nix +++ b/nixos/modules/services/misc/rmfakecloud.nix @@ -154,5 +154,5 @@ in }; }; - meta.maintainers = with maintainers; [ pacien ]; + meta.maintainers = with maintainers; [ euxane ]; } diff --git a/nixos/tests/postgresql/postgresql-wal-receiver.nix b/nixos/tests/postgresql/postgresql-wal-receiver.nix index 579a56153386..eb7671430c98 100644 --- a/nixos/tests/postgresql/postgresql-wal-receiver.nix +++ b/nixos/tests/postgresql/postgresql-wal-receiver.nix @@ -19,7 +19,7 @@ let in makeTest { name = "postgresql-wal-receiver-${package.name}"; - meta.maintainers = with lib.maintainers; [ pacien ]; + meta.maintainers = with lib.maintainers; [ euxane ]; nodes.machine = { ... }: diff --git a/nixos/tests/stalwart-mail.nix b/nixos/tests/stalwart-mail.nix index fb5b9f7fc593..38b47cb88f90 100644 --- a/nixos/tests/stalwart-mail.nix +++ b/nixos/tests/stalwart-mail.nix @@ -123,7 +123,7 @@ import ./make-test-python.nix ( meta = { maintainers = with lib.maintainers; [ happysalada - pacien + euxane onny ]; }; diff --git a/pkgs/applications/graphics/openboard/default.nix b/pkgs/applications/graphics/openboard/default.nix index f8ffdc12ec67..b07a13beb2b4 100644 --- a/pkgs/applications/graphics/openboard/default.nix +++ b/pkgs/applications/graphics/openboard/default.nix @@ -2,7 +2,6 @@ stdenv, lib, fetchFromGitHub, - fetchpatch2, copyDesktopItems, makeDesktopItem, qmake, @@ -56,31 +55,15 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "openboard"; - version = "1.7.1"; + version = "1.7.3"; src = fetchFromGitHub { owner = "OpenBoard-org"; repo = "OpenBoard"; rev = "v${finalAttrs.version}"; - hash = "sha256-gXxxlAEuzMCvFu5oSQayNW191XAC/YKvldItYEFxvNM="; + hash = "sha256-Igp5WSVQ9FrzS2AhDDPwVBo76SaFw9xP6lqgW7S/KIE="; }; - patches = [ - # fix: Support FFmpeg 7.0 - # https://github.com/OpenBoard-org/OpenBoard/pull/1017 - (fetchpatch2 { - url = "https://github.com/OpenBoard-org/OpenBoard/commit/4f45b6c4016972cf5835f9188bda6197b1b4ed2f.patch?full_index=1"; - hash = "sha256-MUJbHfOCMlRO4pg5scm+DrBsngZwB7UPuDJZss5x9Zs="; - }) - - # fix: Resolve FFmpeg 7.0 warnings - # https://github.com/OpenBoard-org/OpenBoard/pull/1017 - (fetchpatch2 { - url = "https://github.com/OpenBoard-org/OpenBoard/commit/315bcac782e10cc6ceef1fc8b78fff40541ea38f.patch?full_index=1"; - hash = "sha256-736eX+uXuZwHJxOXAgxs2/vjjD1JY9mMyj3rR45/7xk="; - }) - ]; - postPatch = '' substituteInPlace OpenBoard.pro \ --replace-fail '/usr/include/quazip5' '${lib.getDev quazip}/include/QuaZip-Qt5-${quazip.version}/quazip' \ @@ -167,8 +150,12 @@ stdenv.mkDerivation (finalAttrs: { meta = with lib; { description = "Interactive whiteboard application"; + homepage = "https://openboard.ch/"; license = licenses.gpl3Plus; - maintainers = with maintainers; [ fufexan ]; + maintainers = with maintainers; [ + atinba + fufexan + ]; platforms = platforms.linux; mainProgram = "OpenBoard"; }; diff --git a/pkgs/applications/office/beamerpresenter/default.nix b/pkgs/applications/office/beamerpresenter/default.nix index 7be305ba0249..5bfb8a260b0b 100644 --- a/pkgs/applications/office/beamerpresenter/default.nix +++ b/pkgs/applications/office/beamerpresenter/default.nix @@ -98,7 +98,7 @@ stdenv.mkDerivation rec { ]; platforms = platforms.all; maintainers = with maintainers; [ - pacien + euxane dotlambda ]; mainProgram = "beamerpresenter"; diff --git a/pkgs/applications/science/logic/coq/default.nix b/pkgs/applications/science/logic/coq/default.nix index 5ae405b0a94f..24d9f8bd2796 100644 --- a/pkgs/applications/science/logic/coq/default.nix +++ b/pkgs/applications/science/logic/coq/default.nix @@ -205,6 +205,9 @@ self = stdenv.mkDerivation { cp bin/votour $out/bin/ '' + '' ln -s $out/lib/coq${suffix} $OCAMLFIND_DESTDIR/coq${suffix} + '' + lib.optionalString (coqAtLeast "8.21") '' + ln -s $out/lib/rocq-runtime $OCAMLFIND_DESTDIR/rocq-runtime + ln -s $out/lib/rocq-core $OCAMLFIND_DESTDIR/rocq-core '' + lib.optionalString (coqAtLeast "8.14") '' ln -s $out/lib/coqide-server $OCAMLFIND_DESTDIR/coqide-server '' + lib.optionalString buildIde '' @@ -229,16 +232,16 @@ self = stdenv.mkDerivation { }; }; in if coqAtLeast "8.17" then self.overrideAttrs(_: let - init-stdlib-package = if coqAtLeast "8.21" then "rocq-core" else "coq-stdlib"; in { + core-stdlib-package = if coqAtLeast "8.21" then "rocq-core" else "coq-stdlib"; in { buildPhase = '' runHook preBuild make dunestrap - dune build -p coq-core,${init-stdlib-package},coqide-server${lib.optionalString buildIde ",coqide"} -j $NIX_BUILD_CORES + dune build -p coq-core${lib.optionalString (coqAtLeast "8.21") ",rocq-runtime"},${core-stdlib-package},coqide-server${lib.optionalString buildIde ",coqide"} -j $NIX_BUILD_CORES runHook postBuild ''; installPhase = '' runHook preInstall - dune install --prefix $out coq-core ${init-stdlib-package} coqide-server${lib.optionalString buildIde " coqide"} + dune install --prefix $out coq-core ${lib.optionalString (coqAtLeast "8.21") "rocq-runtime"} ${core-stdlib-package} coqide-server${lib.optionalString buildIde " coqide"} runHook postInstall ''; }) else self diff --git a/pkgs/applications/version-management/mercurial/default.nix b/pkgs/applications/version-management/mercurial/default.nix index 15b71c98c813..aed17b3461e2 100644 --- a/pkgs/applications/version-management/mercurial/default.nix +++ b/pkgs/applications/version-management/mercurial/default.nix @@ -123,7 +123,7 @@ let license = licenses.gpl2Plus; maintainers = with maintainers; [ lukegb - pacien + euxane techknowlogick ]; platforms = platforms.unix; diff --git a/pkgs/applications/video/mpv/scripts/sponsorblock.nix b/pkgs/applications/video/mpv/scripts/sponsorblock.nix index 094aec727552..0a9dadfaa7c6 100644 --- a/pkgs/applications/video/mpv/scripts/sponsorblock.nix +++ b/pkgs/applications/video/mpv/scripts/sponsorblock.nix @@ -47,6 +47,6 @@ buildLua { description = "Script for mpv to skip sponsored segments of YouTube videos"; homepage = "https://github.com/po5/mpv_sponsorblock"; license = licenses.gpl3; - maintainers = with maintainers; [ pacien ]; + maintainers = with maintainers; [ euxane ]; }; } diff --git a/pkgs/applications/window-managers/i3/balance-workspace.nix b/pkgs/applications/window-managers/i3/balance-workspace.nix index 913802294862..b89344613a84 100644 --- a/pkgs/applications/window-managers/i3/balance-workspace.nix +++ b/pkgs/applications/window-managers/i3/balance-workspace.nix @@ -23,7 +23,7 @@ buildPythonPackage rec { description = "Balance windows and workspaces in i3wm"; homepage = "https://pypi.org/project/i3-balance-workspace/"; license = lib.licenses.mit; - maintainers = with lib.maintainers; [ pacien ]; + maintainers = with lib.maintainers; [ euxane ]; mainProgram = "i3_balance_workspace"; }; } diff --git a/pkgs/build-support/fetchgitiles/default.nix b/pkgs/build-support/fetchgitiles/default.nix index 7dc26dfdf2f9..409f2f4e2bd6 100644 --- a/pkgs/build-support/fetchgitiles/default.nix +++ b/pkgs/build-support/fetchgitiles/default.nix @@ -3,24 +3,36 @@ lib.makeOverridable ( { url, - rev, + rev ? null, + tag ? null, name ? "source", ... }@args: + assert ( + lib.assertMsg (lib.xor (tag == null) ( + rev == null + )) "fetchFromGitiles requires one of either `rev` or `tag` to be provided (not both)." + ); + + let + realrev = (if tag != null then "refs/tags/" + tag else rev); + in + fetchzip ( { inherit name; - url = "${url}/+archive/${rev}.tar.gz"; + url = "${url}/+archive/${realrev}.tar.gz"; stripRoot = false; meta.homepage = url; } // removeAttrs args [ "url" + "tag" "rev" ] ) // { - inherit rev; + inherit rev tag; } ) diff --git a/pkgs/build-support/fetchgitlab/default.nix b/pkgs/build-support/fetchgitlab/default.nix index 749883f2365e..aef76270d5ec 100644 --- a/pkgs/build-support/fetchgitlab/default.nix +++ b/pkgs/build-support/fetchgitlab/default.nix @@ -1,36 +1,103 @@ -{ lib, fetchgit, fetchzip }: +{ + lib, + fetchgit, + fetchzip, +}: lib.makeOverridable ( -# gitlab example -{ owner, repo, rev, protocol ? "https", domain ? "gitlab.com", name ? "source", group ? null -, fetchSubmodules ? false, leaveDotGit ? false -, deepClone ? false, forceFetchGit ? false -, sparseCheckout ? [] -, ... # For hash agility -} @ args: + # gitlab example + { + owner, + repo, + rev ? null, + tag ? null, + protocol ? "https", + domain ? "gitlab.com", + name ? "source", + group ? null, + fetchSubmodules ? false, + leaveDotGit ? false, + deepClone ? false, + forceFetchGit ? false, + sparseCheckout ? [ ], + ... # For hash agility + }@args: -let - slug = lib.concatStringsSep "/" ((lib.optional (group != null) group) ++ [ owner repo ]); - escapedSlug = lib.replaceStrings [ "." "/" ] [ "%2E" "%2F" ] slug; - escapedRev = lib.replaceStrings [ "+" "%" "/" ] [ "%2B" "%25" "%2F" ] rev; - passthruAttrs = removeAttrs args [ "protocol" "domain" "owner" "group" "repo" "rev" "fetchSubmodules" "forceFetchGit" "leaveDotGit" "deepClone" ]; + assert ( + lib.assertMsg (lib.xor (tag == null) ( + rev == null + )) "fetchFromGitLab requires one of either `rev` or `tag` to be provided (not both)." + ); - useFetchGit = fetchSubmodules || leaveDotGit || deepClone || forceFetchGit || (sparseCheckout != []); - fetcher = if useFetchGit then fetchgit else fetchzip; + let + slug = lib.concatStringsSep "/" ( + (lib.optional (group != null) group) + ++ [ + owner + repo + ] + ); + escapedSlug = lib.replaceStrings [ "." "/" ] [ "%2E" "%2F" ] slug; + escapedRev = lib.replaceStrings [ "+" "%" "/" ] [ "%2B" "%25" "%2F" ] ( + if tag != null then "refs/tags/" + tag else rev + ); + passthruAttrs = removeAttrs args [ + "protocol" + "domain" + "owner" + "group" + "repo" + "rev" + "tag" + "fetchSubmodules" + "forceFetchGit" + "leaveDotGit" + "deepClone" + ]; - gitRepoUrl = "${protocol}://${domain}/${slug}.git"; + useFetchGit = + fetchSubmodules || leaveDotGit || deepClone || forceFetchGit || (sparseCheckout != [ ]); + fetcher = if useFetchGit then fetchgit else fetchzip; - fetcherArgs = (if useFetchGit then { - inherit rev deepClone fetchSubmodules sparseCheckout leaveDotGit; - url = gitRepoUrl; - } else { - url = "${protocol}://${domain}/api/v4/projects/${escapedSlug}/repository/archive.tar.gz?sha=${escapedRev}"; + gitRepoUrl = "${protocol}://${domain}/${slug}.git"; - passthru = { - inherit gitRepoUrl; - }; - }) // passthruAttrs // { inherit name; }; -in + fetcherArgs = + ( + if useFetchGit then + { + inherit + rev + deepClone + tag + fetchSubmodules + sparseCheckout + leaveDotGit + ; + url = gitRepoUrl; + } + else + { + url = "${protocol}://${domain}/api/v4/projects/${escapedSlug}/repository/archive.tar.gz?sha=${escapedRev}"; -fetcher fetcherArgs // { meta.homepage = "${protocol}://${domain}/${slug}/"; inherit rev owner repo; } + passthru = { + inherit gitRepoUrl; + }; + } + ) + // passthruAttrs + // { + inherit name; + }; + in + + fetcher fetcherArgs + // { + meta.homepage = "${protocol}://${domain}/${slug}/"; + inherit + tag + rev + owner + repo + ; + } ) diff --git a/pkgs/by-name/ch/checkip/package.nix b/pkgs/by-name/ch/checkip/package.nix index 01aa5785f9ad..a7beb3d5d076 100644 --- a/pkgs/by-name/ch/checkip/package.nix +++ b/pkgs/by-name/ch/checkip/package.nix @@ -6,16 +6,16 @@ buildGoModule rec { pname = "checkip"; - version = "0.47.5"; + version = "0.47.7"; src = fetchFromGitHub { owner = "jreisinger"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-iAMSNz5TDSId0gBm982hFkM+JR4naEREXKS7mi6z5dw="; + hash = "sha256-bjKRHIY9OIEft//g8VHKHTUrwWn8UU38SPP4IdPbIQE="; }; - vendorHash = "sha256-awqaDEdWILm8RcQ8hrtJFMTJQA5TzGZhiBTMfexmtA0="; + vendorHash = "sha256-hTjSOufyrOKdY6wdPXvbpXwgWiHIRI+t4ByqHBY6cPQ="; ldflags = [ "-w" diff --git a/pkgs/by-name/gs/gscan2pdf/package.nix b/pkgs/by-name/gs/gscan2pdf/package.nix index c3f788311207..79d38ba02c6a 100644 --- a/pkgs/by-name/gs/gscan2pdf/package.nix +++ b/pkgs/by-name/gs/gscan2pdf/package.nix @@ -161,7 +161,7 @@ perlPackages.buildPerlPackage rec { description = "GUI to produce PDFs or DjVus from scanned documents"; homepage = "https://gscan2pdf.sourceforge.net/"; license = licenses.gpl3; - maintainers = with maintainers; [ pacien ]; + maintainers = with maintainers; [ euxane ]; mainProgram = "gscan2pdf"; }; } diff --git a/pkgs/by-name/hi/hidrd/package.nix b/pkgs/by-name/hi/hidrd/package.nix index 53f4f2a6a3fd..2eb5821afec6 100644 --- a/pkgs/by-name/hi/hidrd/package.nix +++ b/pkgs/by-name/hi/hidrd/package.nix @@ -22,7 +22,7 @@ stdenv.mkDerivation { description = "HID report descriptor I/O library and conversion tool"; homepage = "https://github.com/DIGImend/hidrd"; license = licenses.gpl2Plus; - maintainers = with maintainers; [ pacien ]; + maintainers = with maintainers; [ euxane ]; platforms = platforms.all; broken = stdenv.hostPlatform.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/trunk/hidrd.x86_64-darwin mainProgram = "hidrd-convert"; diff --git a/pkgs/by-name/ho/howl/package.nix b/pkgs/by-name/ho/howl/package.nix index 7456ac9582ea..0746b12eda17 100644 --- a/pkgs/by-name/ho/howl/package.nix +++ b/pkgs/by-name/ho/howl/package.nix @@ -43,7 +43,7 @@ stdenv.mkDerivation rec { homepage = "https://howl.io/"; description = "General purpose, fast and lightweight editor with a keyboard-centric minimalistic user interface"; license = licenses.mit; - maintainers = with maintainers; [ pacien ]; + maintainers = with maintainers; [ euxane ]; mainProgram = "howl"; # LuaJIT and Howl builds fail for x86_64-darwin and aarch64-linux respectively diff --git a/pkgs/by-name/ka/kanidm/1_3.nix b/pkgs/by-name/ka/kanidm/1_3.nix index e9d7b1cd8211..8d4d310ac713 100644 --- a/pkgs/by-name/ka/kanidm/1_3.nix +++ b/pkgs/by-name/ka/kanidm/1_3.nix @@ -1,7 +1,8 @@ import ./generic.nix { version = "1.3.3"; hash = "sha256-W5G7osV4du6w/BfyY9YrDzorcLNizRsoz70RMfO2AbY="; - cargoHash = "sha256-gJrzOK6vPPBgsQFkKrbMql00XSfKGjgpZhYJLTURxoI="; + cargoHash = "sha256-iziTHr0gvv319Rzgkze9J1H4UzPR7WxMmCkiGVsb33k="; + patchDir = ./patches/1_3; extraMeta = { knownVulnerabilities = [ '' diff --git a/pkgs/by-name/ka/kanidm/1_4.nix b/pkgs/by-name/ka/kanidm/1_4.nix index 73d7a7a2f7f9..7c4ada64db24 100644 --- a/pkgs/by-name/ka/kanidm/1_4.nix +++ b/pkgs/by-name/ka/kanidm/1_4.nix @@ -1,5 +1,6 @@ import ./generic.nix { version = "1.4.5"; hash = "sha256-0nn/ZyjkLXWXBZasNhbeEynEN52cmZQAcgg3hLmRpdo="; - cargoHash = "sha256-sLz1EdczSj0/ACLUpWex3i8ZUhNeyU/RVwuAqccLIz8="; + cargoHash = "sha256-9ZB9PwVnqoCRMFXOY7ejh76hmOg7cjVpnjgJfh8aXGI="; + patchDir = ./patches/1_4; } diff --git a/pkgs/by-name/ka/kanidm/generic.nix b/pkgs/by-name/ka/kanidm/generic.nix index 607062bafdda..5c0a04bcbc2b 100644 --- a/pkgs/by-name/ka/kanidm/generic.nix +++ b/pkgs/by-name/ka/kanidm/generic.nix @@ -2,6 +2,7 @@ version, hash, cargoHash, + patchDir, extraMeta ? { }, }: @@ -35,8 +36,9 @@ let arch = if stdenv.hostPlatform.isx86_64 then "x86_64" else "generic"; in rustPlatform.buildRustPackage rec { - pname = "kanidm"; + pname = "kanidm" + (lib.optionalString enableSecretProvisioning "-with-secret-provisioning"); inherit version cargoHash; + cargoDepsName = "kanidm"; src = fetchFromGitHub { owner = pname; @@ -48,8 +50,8 @@ rustPlatform.buildRustPackage rec { KANIDM_BUILD_PROFILE = "release_nixos_${arch}"; patches = lib.optionals enableSecretProvisioning [ - ./patches/oauth2-basic-secret-modify.patch - ./patches/recover-account.patch + "${patchDir}/oauth2-basic-secret-modify.patch" + "${patchDir}/recover-account.patch" ]; postPatch = diff --git a/pkgs/by-name/ka/kanidm/patches/1_3/oauth2-basic-secret-modify.patch b/pkgs/by-name/ka/kanidm/patches/1_3/oauth2-basic-secret-modify.patch new file mode 100644 index 000000000000..afff94ca51e9 --- /dev/null +++ b/pkgs/by-name/ka/kanidm/patches/1_3/oauth2-basic-secret-modify.patch @@ -0,0 +1,303 @@ +From 44dfbc2b9dccce86c7d7e7b54db4c989344b8c56 Mon Sep 17 00:00:00 2001 +From: oddlama +Date: Mon, 12 Aug 2024 23:17:25 +0200 +Subject: [PATCH 1/2] oauth2 basic secret modify + +--- + server/core/src/actors/v1_write.rs | 42 ++++++++++++++++++++++++++++++ + server/core/src/https/v1.rs | 6 ++++- + server/core/src/https/v1_oauth2.rs | 29 +++++++++++++++++++++ + server/lib/src/constants/acp.rs | 6 +++++ + 4 files changed, 82 insertions(+), 1 deletion(-) + +diff --git a/server/core/src/actors/v1_write.rs b/server/core/src/actors/v1_write.rs +index e00a969fb..1cacc67b8 100644 +--- a/server/core/src/actors/v1_write.rs ++++ b/server/core/src/actors/v1_write.rs +@@ -315,20 +315,62 @@ impl QueryServerWriteV1 { + }; + + trace!(?del, "Begin delete event"); + + idms_prox_write + .qs_write + .delete(&del) + .and_then(|_| idms_prox_write.commit().map(|_| ())) + } + ++ #[instrument( ++ level = "info", ++ skip_all, ++ fields(uuid = ?eventid) ++ )] ++ pub async fn handle_oauth2_basic_secret_write( ++ &self, ++ client_auth_info: ClientAuthInfo, ++ filter: Filter, ++ new_secret: String, ++ eventid: Uuid, ++ ) -> Result<(), OperationError> { ++ // Given a protoEntry, turn this into a modification set. ++ let ct = duration_from_epoch_now(); ++ let mut idms_prox_write = self.idms.proxy_write(ct).await; ++ let ident = idms_prox_write ++ .validate_client_auth_info_to_ident(client_auth_info, ct) ++ .map_err(|e| { ++ admin_error!(err = ?e, "Invalid identity"); ++ e ++ })?; ++ ++ let modlist = ModifyList::new_purge_and_set( ++ Attribute::OAuth2RsBasicSecret, ++ Value::SecretValue(new_secret), ++ ); ++ ++ let mdf = ++ ModifyEvent::from_internal_parts(ident, &modlist, &filter, &idms_prox_write.qs_write) ++ .map_err(|e| { ++ admin_error!(err = ?e, "Failed to begin modify during handle_oauth2_basic_secret_write"); ++ e ++ })?; ++ ++ trace!(?mdf, "Begin modify event"); ++ ++ idms_prox_write ++ .qs_write ++ .modify(&mdf) ++ .and_then(|_| idms_prox_write.commit()) ++ } ++ + #[instrument( + level = "info", + skip_all, + fields(uuid = ?eventid) + )] + pub async fn handle_reviverecycled( + &self, + client_auth_info: ClientAuthInfo, + filter: Filter, + eventid: Uuid, +diff --git a/server/core/src/https/v1.rs b/server/core/src/https/v1.rs +index 8aba83bb2..f1f815026 100644 +--- a/server/core/src/https/v1.rs ++++ b/server/core/src/https/v1.rs +@@ -1,17 +1,17 @@ + //! The V1 API things! + + use axum::extract::{Path, State}; + use axum::http::{HeaderMap, HeaderValue}; + use axum::middleware::from_fn; + use axum::response::{IntoResponse, Response}; +-use axum::routing::{delete, get, post, put}; ++use axum::routing::{delete, get, post, put, patch}; + use axum::{Extension, Json, Router}; + use axum_extra::extract::cookie::{Cookie, CookieJar, SameSite}; + use compact_jwt::{Jwk, Jws, JwsSigner}; + use kanidm_proto::constants::uri::V1_AUTH_VALID; + use std::net::IpAddr; + use uuid::Uuid; + + use kanidm_proto::internal::{ + ApiToken, AppLink, CUIntentToken, CURequest, CUSessionToken, CUStatus, CreateRequest, + CredentialStatus, DeleteRequest, IdentifyUserRequest, IdentifyUserResponse, ModifyRequest, +@@ -3119,20 +3119,24 @@ pub(crate) fn route_setup(state: ServerState) -> Router { + ) + .route( + "/v1/oauth2/:rs_name/_image", + post(super::v1_oauth2::oauth2_id_image_post) + .delete(super::v1_oauth2::oauth2_id_image_delete), + ) + .route( + "/v1/oauth2/:rs_name/_basic_secret", + get(super::v1_oauth2::oauth2_id_get_basic_secret), + ) ++ .route( ++ "/v1/oauth2/:rs_name/_basic_secret", ++ patch(super::v1_oauth2::oauth2_id_patch_basic_secret), ++ ) + .route( + "/v1/oauth2/:rs_name/_scopemap/:group", + post(super::v1_oauth2::oauth2_id_scopemap_post) + .delete(super::v1_oauth2::oauth2_id_scopemap_delete), + ) + .route( + "/v1/oauth2/:rs_name/_sup_scopemap/:group", + post(super::v1_oauth2::oauth2_id_sup_scopemap_post) + .delete(super::v1_oauth2::oauth2_id_sup_scopemap_delete), + ) +diff --git a/server/core/src/https/v1_oauth2.rs b/server/core/src/https/v1_oauth2.rs +index 5e481afab..a771aed04 100644 +--- a/server/core/src/https/v1_oauth2.rs ++++ b/server/core/src/https/v1_oauth2.rs +@@ -144,20 +144,49 @@ pub(crate) async fn oauth2_id_get_basic_secret( + ) -> Result>, WebError> { + let filter = oauth2_id(&rs_name); + state + .qe_r_ref + .handle_oauth2_basic_secret_read(client_auth_info, filter, kopid.eventid) + .await + .map(Json::from) + .map_err(WebError::from) + } + ++#[utoipa::path( ++ patch, ++ path = "/v1/oauth2/{rs_name}/_basic_secret", ++ request_body=ProtoEntry, ++ responses( ++ DefaultApiResponse, ++ ), ++ security(("token_jwt" = [])), ++ tag = "v1/oauth2", ++ operation_id = "oauth2_id_patch_basic_secret" ++)] ++/// Overwrite the basic secret for a given OAuth2 Resource Server. ++#[instrument(level = "info", skip(state, new_secret))] ++pub(crate) async fn oauth2_id_patch_basic_secret( ++ State(state): State, ++ Extension(kopid): Extension, ++ VerifiedClientInformation(client_auth_info): VerifiedClientInformation, ++ Path(rs_name): Path, ++ Json(new_secret): Json, ++) -> Result, WebError> { ++ let filter = oauth2_id(&rs_name); ++ state ++ .qe_w_ref ++ .handle_oauth2_basic_secret_write(client_auth_info, filter, new_secret, kopid.eventid) ++ .await ++ .map(Json::from) ++ .map_err(WebError::from) ++} ++ + #[utoipa::path( + patch, + path = "/v1/oauth2/{rs_name}", + request_body=ProtoEntry, + responses( + DefaultApiResponse, + ), + security(("token_jwt" = [])), + tag = "v1/oauth2", + operation_id = "oauth2_id_patch" +diff --git a/server/lib/src/constants/acp.rs b/server/lib/src/constants/acp.rs +index f3409649d..42e407b7d 100644 +--- a/server/lib/src/constants/acp.rs ++++ b/server/lib/src/constants/acp.rs +@@ -645,34 +645,36 @@ lazy_static! { + Attribute::Image, + ], + modify_present_attrs: vec![ + Attribute::Description, + Attribute::DisplayName, + Attribute::OAuth2RsName, + Attribute::OAuth2RsOrigin, + Attribute::OAuth2RsOriginLanding, + Attribute::OAuth2RsSupScopeMap, + Attribute::OAuth2RsScopeMap, ++ Attribute::OAuth2RsBasicSecret, + Attribute::OAuth2AllowInsecureClientDisablePkce, + Attribute::OAuth2JwtLegacyCryptoEnable, + Attribute::OAuth2PreferShortUsername, + Attribute::Image, + ], + create_attrs: vec![ + Attribute::Class, + Attribute::Description, + Attribute::DisplayName, + Attribute::OAuth2RsName, + Attribute::OAuth2RsOrigin, + Attribute::OAuth2RsOriginLanding, + Attribute::OAuth2RsSupScopeMap, + Attribute::OAuth2RsScopeMap, ++ Attribute::OAuth2RsBasicSecret, + Attribute::OAuth2AllowInsecureClientDisablePkce, + Attribute::OAuth2JwtLegacyCryptoEnable, + Attribute::OAuth2PreferShortUsername, + Attribute::Image, + ], + create_classes: vec![ + EntryClass::Object, + EntryClass::OAuth2ResourceServer, + EntryClass::OAuth2ResourceServerBasic, + EntryClass::OAuth2ResourceServerPublic, +@@ -739,36 +741,38 @@ lazy_static! { + Attribute::Image, + ], + modify_present_attrs: vec![ + Attribute::Description, + Attribute::DisplayName, + Attribute::OAuth2RsName, + Attribute::OAuth2RsOrigin, + Attribute::OAuth2RsOriginLanding, + Attribute::OAuth2RsSupScopeMap, + Attribute::OAuth2RsScopeMap, ++ Attribute::OAuth2RsBasicSecret, + Attribute::OAuth2AllowInsecureClientDisablePkce, + Attribute::OAuth2JwtLegacyCryptoEnable, + Attribute::OAuth2PreferShortUsername, + Attribute::OAuth2AllowLocalhostRedirect, + Attribute::OAuth2RsClaimMap, + Attribute::Image, + ], + create_attrs: vec![ + Attribute::Class, + Attribute::Description, + Attribute::DisplayName, + Attribute::OAuth2RsName, + Attribute::OAuth2RsOrigin, + Attribute::OAuth2RsOriginLanding, + Attribute::OAuth2RsSupScopeMap, + Attribute::OAuth2RsScopeMap, ++ Attribute::OAuth2RsBasicSecret, + Attribute::OAuth2AllowInsecureClientDisablePkce, + Attribute::OAuth2JwtLegacyCryptoEnable, + Attribute::OAuth2PreferShortUsername, + Attribute::OAuth2AllowLocalhostRedirect, + Attribute::OAuth2RsClaimMap, + Attribute::Image, + ], + create_classes: vec![ + EntryClass::Object, + EntryClass::OAuth2ResourceServer, +@@ -840,36 +844,38 @@ lazy_static! { + Attribute::Image, + ], + modify_present_attrs: vec![ + Attribute::Description, + Attribute::DisplayName, + Attribute::Name, + Attribute::OAuth2RsOrigin, + Attribute::OAuth2RsOriginLanding, + Attribute::OAuth2RsSupScopeMap, + Attribute::OAuth2RsScopeMap, ++ Attribute::OAuth2RsBasicSecret, + Attribute::OAuth2AllowInsecureClientDisablePkce, + Attribute::OAuth2JwtLegacyCryptoEnable, + Attribute::OAuth2PreferShortUsername, + Attribute::OAuth2AllowLocalhostRedirect, + Attribute::OAuth2RsClaimMap, + Attribute::Image, + ], + create_attrs: vec![ + Attribute::Class, + Attribute::Description, + Attribute::Name, + Attribute::OAuth2RsName, + Attribute::OAuth2RsOrigin, + Attribute::OAuth2RsOriginLanding, + Attribute::OAuth2RsSupScopeMap, + Attribute::OAuth2RsScopeMap, ++ Attribute::OAuth2RsBasicSecret, + Attribute::OAuth2AllowInsecureClientDisablePkce, + Attribute::OAuth2JwtLegacyCryptoEnable, + Attribute::OAuth2PreferShortUsername, + Attribute::OAuth2AllowLocalhostRedirect, + Attribute::OAuth2RsClaimMap, + Attribute::Image, + ], + create_classes: vec![ + EntryClass::Object, + EntryClass::Account, +-- +2.45.2 + diff --git a/pkgs/by-name/ka/kanidm/patches/1_3/recover-account.patch b/pkgs/by-name/ka/kanidm/patches/1_3/recover-account.patch new file mode 100644 index 000000000000..a344f5a2086f --- /dev/null +++ b/pkgs/by-name/ka/kanidm/patches/1_3/recover-account.patch @@ -0,0 +1,173 @@ +From cc8269489b56755714f07eee4671f8aa2659c014 Mon Sep 17 00:00:00 2001 +From: oddlama +Date: Mon, 12 Aug 2024 23:17:42 +0200 +Subject: [PATCH 2/2] recover account + +--- + server/core/src/actors/internal.rs | 3 ++- + server/core/src/admin.rs | 6 +++--- + server/daemon/src/main.rs | 14 +++++++++++++- + server/daemon/src/opt.rs | 4 ++++ + 4 files changed, 22 insertions(+), 5 deletions(-) + +diff --git a/server/core/src/actors/internal.rs b/server/core/src/actors/internal.rs +index 40c18777f..40d553b40 100644 +--- a/server/core/src/actors/internal.rs ++++ b/server/core/src/actors/internal.rs +@@ -153,25 +153,26 @@ impl QueryServerWriteV1 { + } + + #[instrument( + level = "info", + skip(self, eventid), + fields(uuid = ?eventid) + )] + pub(crate) async fn handle_admin_recover_account( + &self, + name: String, ++ password: Option, + eventid: Uuid, + ) -> Result { + let ct = duration_from_epoch_now(); + let mut idms_prox_write = self.idms.proxy_write(ct).await; +- let pw = idms_prox_write.recover_account(name.as_str(), None)?; ++ let pw = idms_prox_write.recover_account(name.as_str(), password.as_deref())?; + + idms_prox_write.commit().map(|()| pw) + } + + #[instrument( + level = "info", + skip_all, + fields(uuid = ?eventid) + )] + pub(crate) async fn handle_domain_raise(&self, eventid: Uuid) -> Result { +diff --git a/server/core/src/admin.rs b/server/core/src/admin.rs +index 90ccb1927..85e31ddef 100644 +--- a/server/core/src/admin.rs ++++ b/server/core/src/admin.rs +@@ -17,21 +17,21 @@ use tokio_util::codec::{Decoder, Encoder, Framed}; + use tracing::{span, Instrument, Level}; + use uuid::Uuid; + + pub use kanidm_proto::internal::{ + DomainInfo as ProtoDomainInfo, DomainUpgradeCheckReport as ProtoDomainUpgradeCheckReport, + DomainUpgradeCheckStatus as ProtoDomainUpgradeCheckStatus, + }; + + #[derive(Serialize, Deserialize, Debug)] + pub enum AdminTaskRequest { +- RecoverAccount { name: String }, ++ RecoverAccount { name: String, password: Option }, + ShowReplicationCertificate, + RenewReplicationCertificate, + RefreshReplicationConsumer, + DomainShow, + DomainUpgradeCheck, + DomainRaise, + DomainRemigrate { level: Option }, + } + + #[derive(Serialize, Deserialize, Debug)] +@@ -302,22 +302,22 @@ async fn handle_client( + let mut reqs = Framed::new(sock, ServerCodec); + + trace!("Waiting for requests ..."); + while let Some(Ok(req)) = reqs.next().await { + // Setup the logging span + let eventid = Uuid::new_v4(); + let nspan = span!(Level::INFO, "handle_admin_client_request", uuid = ?eventid); + + let resp = async { + match req { +- AdminTaskRequest::RecoverAccount { name } => { +- match server_rw.handle_admin_recover_account(name, eventid).await { ++ AdminTaskRequest::RecoverAccount { name, password } => { ++ match server_rw.handle_admin_recover_account(name, password, eventid).await { + Ok(password) => AdminTaskResponse::RecoverAccount { password }, + Err(e) => { + error!(err = ?e, "error during recover-account"); + AdminTaskResponse::Error + } + } + } + AdminTaskRequest::ShowReplicationCertificate => match repl_ctrl_tx.as_mut() { + Some(ctrl_tx) => show_replication_certificate(ctrl_tx).await, + None => { +diff --git a/server/daemon/src/main.rs b/server/daemon/src/main.rs +index 577995615..a967928c9 100644 +--- a/server/daemon/src/main.rs ++++ b/server/daemon/src/main.rs +@@ -894,27 +894,39 @@ async fn kanidm_main( + } else { + let output_mode: ConsoleOutputMode = commonopts.output_mode.to_owned().into(); + submit_admin_req( + config.adminbindpath.as_str(), + AdminTaskRequest::RefreshReplicationConsumer, + output_mode, + ) + .await; + } + } +- KanidmdOpt::RecoverAccount { name, commonopts } => { ++ KanidmdOpt::RecoverAccount { name, from_environment, commonopts } => { + info!("Running account recovery ..."); + let output_mode: ConsoleOutputMode = commonopts.output_mode.to_owned().into(); ++ let password = if *from_environment { ++ match std::env::var("KANIDM_RECOVER_ACCOUNT_PASSWORD") { ++ Ok(val) => Some(val), ++ _ => { ++ error!("Environment variable KANIDM_RECOVER_ACCOUNT_PASSWORD not set"); ++ return ExitCode::FAILURE; ++ } ++ } ++ } else { ++ None ++ }; + submit_admin_req( + config.adminbindpath.as_str(), + AdminTaskRequest::RecoverAccount { + name: name.to_owned(), ++ password, + }, + output_mode, + ) + .await; + } + KanidmdOpt::Database { + commands: DbCommands::Reindex(_copt), + } => { + info!("Running in reindex mode ..."); + reindex_server_core(&config).await; +diff --git a/server/daemon/src/opt.rs b/server/daemon/src/opt.rs +index f1b45a5b3..9c013e32e 100644 +--- a/server/daemon/src/opt.rs ++++ b/server/daemon/src/opt.rs +@@ -229,20 +229,24 @@ enum KanidmdOpt { + /// Create a self-signed ca and tls certificate in the locations listed from the + /// configuration. These certificates should *not* be used in production, they + /// are for testing and evaluation only! + CertGenerate(CommonOpt), + #[clap(name = "recover-account")] + /// Recover an account's password + RecoverAccount { + #[clap(value_parser)] + /// The account name to recover credentials for. + name: String, ++ /// Use the password given in the environment variable ++ /// `KANIDM_RECOVER_ACCOUNT_PASSWORD` instead of generating one. ++ #[clap(long = "from-environment")] ++ from_environment: bool, + #[clap(flatten)] + commonopts: CommonOpt, + }, + /// Display this server's replication certificate + ShowReplicationCertificate { + #[clap(flatten)] + commonopts: CommonOpt, + }, + /// Renew this server's replication certificate + RenewReplicationCertificate { +-- +2.45.2 + diff --git a/pkgs/by-name/ka/kanidm/patches/oauth2-basic-secret-modify.patch b/pkgs/by-name/ka/kanidm/patches/1_4/oauth2-basic-secret-modify.patch similarity index 100% rename from pkgs/by-name/ka/kanidm/patches/oauth2-basic-secret-modify.patch rename to pkgs/by-name/ka/kanidm/patches/1_4/oauth2-basic-secret-modify.patch diff --git a/pkgs/by-name/ka/kanidm/patches/recover-account.patch b/pkgs/by-name/ka/kanidm/patches/1_4/recover-account.patch similarity index 100% rename from pkgs/by-name/ka/kanidm/patches/recover-account.patch rename to pkgs/by-name/ka/kanidm/patches/1_4/recover-account.patch diff --git a/pkgs/by-name/li/libspf2/package.nix b/pkgs/by-name/li/libspf2/package.nix index 17663a5e10de..eee1560f0fe5 100644 --- a/pkgs/by-name/li/libspf2/package.nix +++ b/pkgs/by-name/li/libspf2/package.nix @@ -40,7 +40,7 @@ stdenv.mkDerivation rec { lgpl21Plus bsd2 ]; - maintainers = with maintainers; [ pacien ] ++ teams.helsinki-systems.members; + maintainers = with maintainers; [ euxane ] ++ teams.helsinki-systems.members; platforms = platforms.all; }; } diff --git a/pkgs/by-name/md/mdctags/package.nix b/pkgs/by-name/md/mdctags/package.nix index faac73aedf12..a3a7705280ed 100644 --- a/pkgs/by-name/md/mdctags/package.nix +++ b/pkgs/by-name/md/mdctags/package.nix @@ -21,7 +21,7 @@ rustPlatform.buildRustPackage { description = "tags for markdown file"; homepage = "https://github.com/wsdjeg/mdctags.rs"; license = lib.licenses.mit; - maintainers = with lib.maintainers; [ pacien ]; + maintainers = with lib.maintainers; [ euxane ]; mainProgram = "mdctags"; }; } diff --git a/pkgs/by-name/pa/pandoc-katex/package.nix b/pkgs/by-name/pa/pandoc-katex/package.nix index 12cd5047819b..fe92876f1c42 100644 --- a/pkgs/by-name/pa/pandoc-katex/package.nix +++ b/pkgs/by-name/pa/pandoc-katex/package.nix @@ -26,7 +26,7 @@ rustPlatform.buildRustPackage rec { ]; maintainers = with maintainers; [ minijackson - pacien + euxane ]; mainProgram = "pandoc-katex"; }; diff --git a/pkgs/by-name/pr/prometheus-smartctl-exporter/package.nix b/pkgs/by-name/pr/prometheus-smartctl-exporter/package.nix index 75fdd328cbcf..e8386356da63 100644 --- a/pkgs/by-name/pr/prometheus-smartctl-exporter/package.nix +++ b/pkgs/by-name/pr/prometheus-smartctl-exporter/package.nix @@ -8,16 +8,16 @@ buildGoModule rec { pname = "smartctl_exporter"; - version = "0.12.0"; + version = "0.13.0"; src = fetchFromGitHub { owner = "prometheus-community"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-QQoWAsnE/7ifvgEfQJ6cbzmwOrE7oe2zalTbu/P7r18="; + hash = "sha256-0WppsqDl4nKa6s/dyX9zsUzoqAgStDSBWMM0eolTPdk="; }; - vendorHash = "sha256-WUB2FgBl4Tybz7T0yvcSYIlG75NEhXpn1F0yuB9F21g="; + vendorHash = "sha256-Sy/lm55NAhYDdVLli5yQpoRVieJU8RJDRFzd4Len6eg="; postPatch = '' substituteInPlace main.go README.md \ diff --git a/pkgs/by-name/pu/pure-prompt/package.nix b/pkgs/by-name/pu/pure-prompt/package.nix index 4339c54f3b4d..036dd69c7fc3 100644 --- a/pkgs/by-name/pu/pure-prompt/package.nix +++ b/pkgs/by-name/pu/pure-prompt/package.nix @@ -29,7 +29,7 @@ stdenv.mkDerivation rec { license = licenses.mit; platforms = platforms.all; maintainers = with maintainers; [ - pacien + euxane pablovsky ]; }; diff --git a/pkgs/by-name/re/redmine/Gemfile.lock b/pkgs/by-name/re/redmine/Gemfile.lock index 67a9b7575dc5..6985b0a32149 100644 --- a/pkgs/by-name/re/redmine/Gemfile.lock +++ b/pkgs/by-name/re/redmine/Gemfile.lock @@ -78,17 +78,17 @@ GEM regexp_parser (>= 1.5, < 3.0) xpath (~> 3.2) chunky_png (1.4.0) - commonmarker (0.23.10) + commonmarker (0.23.11) concurrent-ruby (1.3.4) crass (1.0.6) - css_parser (1.19.1) + css_parser (1.21.0) addressable csv (3.2.9) - date (3.4.0) + date (3.4.1) deckar01-task_list (2.3.2) html-pipeline docile (1.4.1) - erubi (1.13.0) + erubi (1.13.1) ffi (1.17.0) globalid (1.2.1) activesupport (>= 6.1) @@ -98,12 +98,12 @@ GEM htmlentities (4.3.4) i18n (1.14.6) concurrent-ruby (~> 1.0) - json (2.7.5) + json (2.9.1) language_server-protocol (3.17.0.3) listen (3.9.0) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) - logger (1.6.1) + logger (1.6.4) loofah (2.23.1) crass (~> 1.0.2) nokogiri (>= 1.12.0) @@ -117,9 +117,9 @@ GEM method_source (1.1.0) mini_magick (4.12.0) mini_mime (1.1.5) - mini_portile2 (2.8.7) - minitest (5.25.1) - mocha (2.5.0) + mini_portile2 (2.8.8) + minitest (5.25.4) + mocha (2.7.1) ruby2_keywords (>= 0.0.5) mysql2 (0.5.6) net-imap (0.3.7) @@ -133,16 +133,16 @@ GEM net-smtp (0.3.4) net-protocol nio4r (2.7.4) - nokogiri (1.15.6) + nokogiri (1.15.7) mini_portile2 (~> 2.8.2) racc (~> 1.4) parallel (1.26.3) - parser (3.3.5.1) + parser (3.3.6.0) ast (~> 2.4.1) racc pg (1.5.9) public_suffix (6.0.1) - puma (6.4.3) + puma (6.5.0) nio4r (~> 2.0) racc (1.8.1) rack (2.2.10) @@ -167,9 +167,9 @@ GEM activesupport (>= 5.0.0) minitest nokogiri (>= 1.6) - rails-html-sanitizer (1.6.0) + rails-html-sanitizer (1.6.2) loofah (~> 2.21) - nokogiri (~> 1.14) + nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0) railties (6.1.7.10) actionpack (= 6.1.7.10) activesupport (= 6.1.7.10) @@ -186,10 +186,10 @@ GEM rbpdf-font (~> 1.19.0) rbpdf-font (1.19.1) redcarpet (3.6.0) - regexp_parser (2.9.2) + regexp_parser (2.9.3) request_store (1.5.1) rack (>= 1.4) - rexml (3.3.9) + rexml (3.4.0) roadie (5.2.1) css_parser (~> 1.4) nokogiri (~> 1.15) @@ -213,7 +213,7 @@ GEM rubocop-ast (>= 1.28.1, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 3.0) - rubocop-ast (1.33.1) + rubocop-ast (1.37.0) parser (>= 3.3.1.0) rubocop-performance (1.19.1) rubocop (>= 1.7.0, < 2.0) @@ -229,7 +229,7 @@ GEM sanitize (6.1.3) crass (~> 1.0.2) nokogiri (>= 1.12.0) - selenium-webdriver (4.26.0) + selenium-webdriver (4.27.0) base64 (~> 0.2) logger (~> 1.4) rexml (~> 3.2, >= 3.2.5) @@ -251,11 +251,11 @@ GEM sqlite3 (1.6.9) mini_portile2 (~> 2.8.0) thor (1.3.2) - timeout (0.4.1) + timeout (0.4.3) tzinfo (2.0.6) concurrent-ruby (~> 1.0) unicode-display_width (2.6.0) - webrick (1.9.0) + webrick (1.9.1) websocket (1.2.11) websocket-driver (0.7.6) websocket-extensions (>= 0.1.0) @@ -266,7 +266,7 @@ GEM xpath (3.2.0) nokogiri (~> 1.8) yard (0.9.37) - zeitwerk (2.6.18) + zeitwerk (2.7.1) PLATFORMS ruby @@ -319,7 +319,7 @@ DEPENDENCIES yard RUBY VERSION - ruby 3.1.6p260 + ruby 3.3.5p100 BUNDLED WITH - 2.5.9 + 2.5.22 diff --git a/pkgs/by-name/re/redmine/gemset.nix b/pkgs/by-name/re/redmine/gemset.nix index 3f51758eb333..bead2e1b3b92 100644 --- a/pkgs/by-name/re/redmine/gemset.nix +++ b/pkgs/by-name/re/redmine/gemset.nix @@ -198,10 +198,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1lb5slzbqrca49h0gaifg82xky5r7i9xgm4560pin1xl5fp15lzx"; + sha256 = "1gyjwd7in1nlf8zai2fxazxi8cy6xjzswdcjway520blb39ka7cx"; type = "gem"; }; - version = "0.23.10"; + version = "0.23.11"; }; concurrent-ruby = { groups = ["common_mark" "default" "test"]; @@ -229,10 +229,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "17i0fn99kswvfps8r698zw2cr16rc98xdrl0d26y36rv3vhdqh0r"; + sha256 = "0625073hwx41c246v9dvkp0rk0xgh9d0sc0gm73dbmlxnjwgalv7"; type = "gem"; }; - version = "1.19.1"; + version = "1.21.0"; }; csv = { groups = ["default"]; @@ -249,10 +249,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "04d7l3xdmkybrd20gayf8s38pgfld0hf8m726lz9np32xnnsszrf"; + sha256 = "0kz6mc4b9m49iaans6cbx031j9y7ldghpi5fzsdh0n3ixwa8w9mz"; type = "gem"; }; - version = "3.4.0"; + version = "3.4.1"; }; deckar01-task_list = { dependencies = ["html-pipeline"]; @@ -280,10 +280,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0qnd6ff4az22ysnmni3730c41b979xinilahzg86bn7gv93ip9pw"; + sha256 = "1naaxsqkv5b3vklab5sbb9sdpszrjzlfsbqpy7ncbnw510xi10m0"; type = "gem"; }; - version = "1.13.0"; + version = "1.13.1"; }; ffi = { groups = ["default" "development" "test"]; @@ -353,10 +353,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0pkcvzvarzs5y87srla1m6rgng8mm7y4gnshlpawddsci3rlhd7b"; + sha256 = "048danb0x10mpch6mf88mky35zjn6wk4hpbqq68ssbq58i3fzgfj"; type = "gem"; }; - version = "2.7.5"; + version = "2.9.1"; }; language_server-protocol = { groups = ["default" "test"]; @@ -384,10 +384,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0lwncq2rf8gm79g2rcnnyzs26ma1f4wnfjm6gs4zf2wlsdz5in9s"; + sha256 = "1rrf3y8j3fjjmn74d2i3l85pjm7yhvl8xgz7684hac92j8fbj9xn"; type = "gem"; }; - version = "1.6.1"; + version = "1.6.4"; }; loofah = { dependencies = ["crass" "nokogiri"]; @@ -474,20 +474,20 @@ }]; source = { remotes = ["https://rubygems.org"]; - sha256 = "1q1f2sdw3y3y9mnym9dhjgsjr72sq975cfg5c4yx7gwv8nmzbvhk"; + sha256 = "0x8asxl83msn815lwmb2d7q5p29p7drhjv5va0byhk60v9n16iwf"; type = "gem"; }; - version = "2.8.7"; + version = "2.8.8"; }; minitest = { groups = ["common_mark" "default" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1n1akmc6bibkbxkzm1p1wmfb4n9vv397knkgz0ffykb3h1d7kdix"; + sha256 = "0izrg03wn2yj3gd76ck7ifbm9h2kgy8kpg4fk06ckpy4bbicmwlw"; type = "gem"; }; - version = "5.25.1"; + version = "5.25.4"; }; mocha = { dependencies = ["ruby2_keywords"]; @@ -495,10 +495,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "05vp9kfz8d8wmclpkc9vj67ic1f7p1d5m2kd7xm4rvz8ci85jlkq"; + sha256 = "0lgqyxxdxgfik77a7lk2hjkr6flimgxr4gcbg3y7bg1ybn6m6zcg"; type = "gem"; }; - version = "2.5.0"; + version = "2.7.1"; }; mysql2 = { groups = ["default"]; @@ -588,10 +588,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "023f2j0q8makgmmfj4pv2fhwgcbh9y8s678za1cb68ry9fdpkkkh"; + sha256 = "16w64l83ycfwbaqyw06j8c8l8r30xy33lkv761516byix5nzl3ls"; type = "gem"; }; - version = "1.15.6"; + version = "1.15.7"; }; parallel = { groups = ["default" "test"]; @@ -609,10 +609,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0rbc2ggfw9cwscv1f9dl39a85vl5gysy7sprfagxlanxp01l8k5p"; + sha256 = "0fxw738al3qxa4s4ghqkxb908sav03i3h7xflawwmxzhqiyfdm15"; type = "gem"; }; - version = "3.3.5.1"; + version = "3.3.6.0"; }; pg = { groups = ["default"]; @@ -648,10 +648,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0gml1rixrfb0naciq3mrnqkpcvm9ahgps1c04hzxh4b801f69914"; + sha256 = "1wl9q4fl8gvhwdpfxghx6jdqi4508287pcgiwi96sdbzmdfbglcl"; type = "gem"; }; - version = "6.4.3"; + version = "6.5.0"; }; racc = { groups = ["common_mark" "default" "test"]; @@ -712,10 +712,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1pm4z853nyz1bhhqr7fzl44alnx4bjachcr6rh6qjj375sfz3sc6"; + sha256 = "0q55i6mpad20m2x1lg5pkqfpbmmapk0sjsrvr1sqgnj2hb5f5z1m"; type = "gem"; }; - version = "1.6.0"; + version = "1.6.2"; }; railties = { dependencies = ["actionpack" "activesupport" "method_source" "rake" "thor"]; @@ -805,10 +805,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0ik40vcv7mqigsfpqpca36hpmnx0536xa825ai5qlkv3mmkyf9ss"; + sha256 = "0yb3iycaj3krvlnicijm99qxvfbrbi0pd81i2cpdhjc3xmbhcqjb"; type = "gem"; }; - version = "2.9.2"; + version = "2.9.3"; }; request_store = { dependencies = ["rack"]; @@ -826,10 +826,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1j9p66pmfgxnzp76ksssyfyqqrg7281dyi3xyknl3wwraaw7a66p"; + sha256 = "1ch4k2y80r4glr579kxliqnxld2qa91ydq8fiqam38bzpbps3gpg"; type = "gem"; }; - version = "3.3.9"; + version = "3.4.0"; }; roadie = { dependencies = ["css_parser" "nokogiri"]; @@ -911,10 +911,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0dvmlnmz173xwvcijgmkibga4viwz8xnm36j6lnxp6nik5pphm47"; + sha256 = "10604xc4bcji3ca43anlc89xwxb4wkzk69cia95x04zima4aq4wm"; type = "gem"; }; - version = "1.33.1"; + version = "1.37.0"; }; rubocop-performance = { dependencies = ["rubocop" "rubocop-ast"]; @@ -985,10 +985,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1406irn0zgxasqha9l64w7h2kjxivys7hagdlnk40n8fwpzjc15v"; + sha256 = "1q5nbszbxz566yzyiv0a4lvfk56q89k0lk4mqp6wyddrc2nz88c8"; type = "gem"; }; - version = "4.26.0"; + version = "4.27.0"; }; simplecov = { dependencies = ["docile" "simplecov-html" "simplecov_json_formatter"]; @@ -1077,10 +1077,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "16mvvsmx90023wrhf8dxc1lpqh0m8alk65shb7xcya6a9gflw7vg"; + sha256 = "03p31w5ghqfsbz5mcjzvwgkw3h9lbvbknqvrdliy8pxmn9wz02cm"; type = "gem"; }; - version = "0.4.1"; + version = "0.4.3"; }; tzinfo = { dependencies = ["concurrent-ruby"]; @@ -1108,10 +1108,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0r79mir4phdmcx0l4yqfwfzdy8vgvrl4ym07585rd2b401bhrrcy"; + sha256 = "12d9n8hll67j737ym2zw4v23cn4vxyfkb6vyv1rzpwv6y6a3qbdl"; type = "gem"; }; - version = "1.9.0"; + version = "1.9.1"; }; websocket = { groups = ["default" "test"]; @@ -1181,9 +1181,9 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "10cpfdswql21vildiin0q7drg5zfzf2sahnk9hv3nyzzjqwj2bdx"; + sha256 = "0mi7b90hvc6nqv37q27df4i2m27yy56yfy2ki5073474a1h9hi89"; type = "gem"; }; - version = "2.6.18"; + version = "2.7.1"; }; } diff --git a/pkgs/by-name/re/redmine/package.nix b/pkgs/by-name/re/redmine/package.nix index 58bdda723b33..48e3d80884d5 100644 --- a/pkgs/by-name/re/redmine/package.nix +++ b/pkgs/by-name/re/redmine/package.nix @@ -1,7 +1,7 @@ { lib, stdenv, fetchurl, bundlerEnv, ruby_3_2, makeWrapper, nixosTests }: let - version = "5.1.4"; + version = "5.1.5"; rubyEnv = bundlerEnv { name = "redmine-env-${version}"; @@ -16,7 +16,7 @@ in src = fetchurl { url = "https://www.redmine.org/releases/redmine-${version}.tar.gz"; - hash = "sha256-9XONahB/IxuPSwrlQQ4MRXQtdeDvMMSzGifArJ2v1Rw="; + hash = "sha256-LJc5URcS/BOB2VhPoAX5EaMCLoNm0dalP+wPAU2sAWg="; }; nativeBuildInputs = [ makeWrapper ]; @@ -50,5 +50,6 @@ in platforms = platforms.linux; maintainers = with maintainers; [ aanderse felixsinger megheaiulian ]; license = licenses.gpl2; + knownVulnerabilities = [ "CVE-2024-54133" "GHSA-r95h-9x8f-r3f7" ]; }; } diff --git a/pkgs/by-name/re/redmine/update.sh b/pkgs/by-name/re/redmine/update.sh index bd8231464264..11ad8e6e5b25 100755 --- a/pkgs/by-name/re/redmine/update.sh +++ b/pkgs/by-name/re/redmine/update.sh @@ -26,6 +26,7 @@ bundle lock --remove-platform x86-linux bundle lock --remove-platform x86-linux-gnu bundle lock --remove-platform x86-linux-musl bundle lock --remove-platform x86_64-darwin +bundle lock --remove-platform x86_64-linux bundle lock --remove-platform x86_64-linux-gnu bundle lock --remove-platform x86_64-linux-musl bundix -l diff --git a/pkgs/by-name/rm/rmfakecloud/package.nix b/pkgs/by-name/rm/rmfakecloud/package.nix index 315ac8ec43b1..797455844f7d 100644 --- a/pkgs/by-name/rm/rmfakecloud/package.nix +++ b/pkgs/by-name/rm/rmfakecloud/package.nix @@ -30,7 +30,7 @@ buildGoModule rec { description = "Host your own cloud for the Remarkable"; homepage = "https://ddvk.github.io/rmfakecloud/"; license = licenses.agpl3Only; - maintainers = with maintainers; [ pacien martinetd ]; + maintainers = with maintainers; [ euxane martinetd ]; mainProgram = "rmfakecloud"; }; } diff --git a/pkgs/by-name/tg/tg-archive/package.nix b/pkgs/by-name/tg/tg-archive/package.nix index 0460e34108f3..6b1d765fd053 100644 --- a/pkgs/by-name/tg/tg-archive/package.nix +++ b/pkgs/by-name/tg/tg-archive/package.nix @@ -42,7 +42,7 @@ python3.pkgs.buildPythonApplication { description = "A tool for exporting Telegram group chats into static websites like mailing list archives"; homepage = "https://github.com/knadh/tg-archive"; license = lib.licenses.mit; - maintainers = with lib.maintainers; [ pacien ]; + maintainers = with lib.maintainers; [ euxane ]; mainProgram = "tg-archive"; }; } diff --git a/pkgs/by-name/tr/translatelocally/package.nix b/pkgs/by-name/tr/translatelocally/package.nix index babc0bfeb3e4..4249331b2b08 100644 --- a/pkgs/by-name/tr/translatelocally/package.nix +++ b/pkgs/by-name/tr/translatelocally/package.nix @@ -88,7 +88,7 @@ stdenv.mkDerivation (finalAttrs: { homepage = "https://translatelocally.com/"; description = "Fast and secure translation on your local machine, powered by marian and Bergamot"; license = licenses.mit; - maintainers = with maintainers; [ pacien ]; + maintainers = with maintainers; [ euxane ]; platforms = platforms.linux; }; }) diff --git a/pkgs/development/coq-modules/stdlib/default.nix b/pkgs/development/coq-modules/stdlib/default.nix index 86db7159031e..e75d62a0ce34 100644 --- a/pkgs/development/coq-modules/stdlib/default.nix +++ b/pkgs/development/coq-modules/stdlib/default.nix @@ -30,11 +30,18 @@ useDune = true; configurePhase = '' - echo "no configure phase" + patchShebangs stdlib/dev/with-rocq-wrap.sh ''; # don't run Coq's configure - preBuild = '' - echo "(dirs stdlib)" > dune + buildPhase = '' + cd stdlib + dev/with-rocq-wrap.sh dune build -p coq-stdlib @install ''${enableParallelBuilding:+-j $NIX_BUILD_CORES} + ''; + + installPhase = '' + dev/with-rocq-wrap.sh dune install --root . coq-stdlib --prefix=$out --libdir $OCAMLFIND_DESTDIR + mkdir $out/lib/coq/ + mv $OCAMLFIND_DESTDIR/coq $out/lib/coq/${coq.coq-version} ''; meta = { diff --git a/pkgs/development/python-modules/embrace/default.nix b/pkgs/development/python-modules/embrace/default.nix index 4ad658d7736c..8fe77b069ead 100644 --- a/pkgs/development/python-modules/embrace/default.nix +++ b/pkgs/development/python-modules/embrace/default.nix @@ -41,6 +41,6 @@ buildPythonPackage rec { description = "Embrace SQL keeps your SQL queries in SQL files"; homepage = "https://pypi.org/project/embrace/"; license = licenses.asl20; - maintainers = with maintainers; [ pacien ]; + maintainers = with maintainers; [ euxane ]; }; } diff --git a/pkgs/development/python-modules/jupysql-plugin/default.nix b/pkgs/development/python-modules/jupysql-plugin/default.nix index 4ca16978ac1b..357a971cb17d 100644 --- a/pkgs/development/python-modules/jupysql-plugin/default.nix +++ b/pkgs/development/python-modules/jupysql-plugin/default.nix @@ -43,6 +43,6 @@ buildPythonPackage rec { homepage = "https://github.com/ploomber/jupysql-plugin"; changelog = "https://github.com/ploomber/jupysql-plugin/blob/${version}/CHANGELOG.md"; license = licenses.bsd3; - maintainers = with maintainers; [ pacien ]; + maintainers = with maintainers; [ euxane ]; }; } diff --git a/pkgs/development/python-modules/jupysql/default.nix b/pkgs/development/python-modules/jupysql/default.nix index 01fa1c0f3163..601631562104 100644 --- a/pkgs/development/python-modules/jupysql/default.nix +++ b/pkgs/development/python-modules/jupysql/default.nix @@ -131,6 +131,6 @@ buildPythonPackage rec { homepage = "https://github.com/ploomber/jupysql"; changelog = "https://github.com/ploomber/jupysql/blob/${version}/CHANGELOG.md"; license = lib.licenses.asl20; - maintainers = with lib.maintainers; [ pacien ]; + maintainers = with lib.maintainers; [ euxane ]; }; } diff --git a/pkgs/development/python-modules/mediafire-dl/default.nix b/pkgs/development/python-modules/mediafire-dl/default.nix index d4f5235007a5..3598ff215df7 100644 --- a/pkgs/development/python-modules/mediafire-dl/default.nix +++ b/pkgs/development/python-modules/mediafire-dl/default.nix @@ -30,7 +30,7 @@ buildPythonPackage { description = "Simple command-line script to download files from mediafire based on gdown"; homepage = "https://github.com/Juvenal-Yescas/mediafire-dl"; license = licenses.mit; - maintainers = with maintainers; [ pacien ]; + maintainers = with maintainers; [ euxane ]; mainProgram = "mediafire-dl"; }; } diff --git a/pkgs/development/python-modules/ploomber-core/default.nix b/pkgs/development/python-modules/ploomber-core/default.nix index e5d8eb2e480a..e05f4d9f9246 100644 --- a/pkgs/development/python-modules/ploomber-core/default.nix +++ b/pkgs/development/python-modules/ploomber-core/default.nix @@ -44,6 +44,6 @@ buildPythonPackage rec { homepage = "https://github.com/ploomber/core"; changelog = "https://github.com/ploomber/core/blob/${version}/CHANGELOG.md"; license = licenses.asl20; - maintainers = with maintainers; [ pacien ]; + maintainers = with maintainers; [ euxane ]; }; } diff --git a/pkgs/development/python-modules/ploomber-extension/default.nix b/pkgs/development/python-modules/ploomber-extension/default.nix index 9c020f25fa6f..c19c0267fe41 100644 --- a/pkgs/development/python-modules/ploomber-extension/default.nix +++ b/pkgs/development/python-modules/ploomber-extension/default.nix @@ -46,6 +46,6 @@ buildPythonPackage rec { description = "Ploomber extension"; homepage = "https://pypi.org/project/ploomber-extension"; license = licenses.bsd3; - maintainers = with maintainers; [ pacien ]; + maintainers = with maintainers; [ euxane ]; }; } diff --git a/pkgs/development/python-modules/python-youtube/default.nix b/pkgs/development/python-modules/python-youtube/default.nix index 660a97ec891d..0496cc57a68d 100644 --- a/pkgs/development/python-modules/python-youtube/default.nix +++ b/pkgs/development/python-modules/python-youtube/default.nix @@ -7,30 +7,30 @@ isodate, requests, requests-oauthlib, + pytest-cov-stub, pytestCheckHook, responses, }: + buildPythonPackage rec { pname = "python-youtube"; - version = "0.9.6"; - format = "pyproject"; + version = "0.9.7"; + pyproject = true; src = fetchFromGitHub { owner = "sns-sdks"; repo = "python-youtube"; - rev = "refs/tags/v${version}"; - hash = "sha256-IuVnXVe54D0g+7S+AuTGtBlwcmxHpkk1e9Vt8laEV2c="; + tag = "v${version}"; + hash = "sha256-dK0le/7/hpavrHbk4DaXoIxPHUUJuWuxHIWMZKC4eSM="; }; - postPatch = '' - substituteInPlace pytest.ini \ - --replace "--cov=pyyoutube" "" \ - --replace "--cov-report xml" "" - ''; + pythonRelaxDeps = [ + "requests-oauthlib" + ]; - nativeBuildInputs = [ poetry-core ]; + build-system = [ poetry-core ]; - propagatedBuildInputs = [ + dependencies = [ dataclasses-json isodate requests @@ -42,13 +42,14 @@ buildPythonPackage rec { nativeCheckInputs = [ pytestCheckHook responses + pytest-cov-stub ]; - meta = with lib; { + meta = { description = "Simple Python wrapper around for YouTube Data API"; homepage = "https://github.com/sns-sdks/python-youtube"; - changelog = "https://github.com/sns-sdks/python-youtube/blob/${src.rev}/CHANGELOG.md"; - license = licenses.mit; - maintainers = with maintainers; [ blaggacao ]; + changelog = "https://github.com/sns-sdks/python-youtube/blob/${src.tag}/CHANGELOG.md"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ blaggacao ]; }; } diff --git a/pkgs/development/python-modules/signify/default.nix b/pkgs/development/python-modules/signify/default.nix index ec2bed3ce36f..95315287669b 100644 --- a/pkgs/development/python-modules/signify/default.nix +++ b/pkgs/development/python-modules/signify/default.nix @@ -6,8 +6,6 @@ fetchFromGitHub, mscerts, oscrypto, - pyasn1, - pyasn1-modules, pytestCheckHook, pythonOlder, setuptools, @@ -16,7 +14,7 @@ buildPythonPackage rec { pname = "signify"; - version = "0.6.0"; + version = "0.7.1"; pyproject = true; disabled = pythonOlder "3.8"; @@ -24,19 +22,17 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "ralphje"; repo = "signify"; - rev = "refs/tags/v${version}"; - hash = "sha256-29SyzqtZ1cI+1xrSPLFr63vwB5st/9i5b3FYtJn6eok="; + tag = "v${version}"; + hash = "sha256-yQCb7vNbz+ZGftqlEUUh6UUuxwv5+zhvBJmUn1eNgqM="; }; - nativeBuildInputs = [ setuptools ]; + build-system = [ setuptools ]; - propagatedBuildInputs = [ + dependencies = [ asn1crypto certvalidator mscerts oscrypto - pyasn1 - pyasn1-modules typing-extensions ]; @@ -44,11 +40,11 @@ buildPythonPackage rec { nativeCheckInputs = [ pytestCheckHook ]; - meta = with lib; { - changelog = "https://github.com/ralphje/signify/blob/${src.rev}/docs/changelog.rst"; + meta = { + changelog = "https://github.com/ralphje/signify/blob/refs/tags/${src.tag}/docs/changelog.rst"; description = "library that verifies PE Authenticode-signed binaries"; homepage = "https://github.com/ralphje/signify"; - license = licenses.mit; - maintainers = with maintainers; [ baloo ]; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ baloo ]; }; } diff --git a/pkgs/servers/matrix-appservice-discord/default.nix b/pkgs/servers/matrix-appservice-discord/default.nix index 0b139fb2b50b..dcd43ba0d852 100644 --- a/pkgs/servers/matrix-appservice-discord/default.nix +++ b/pkgs/servers/matrix-appservice-discord/default.nix @@ -103,7 +103,7 @@ mkYarnPackage rec { description = "Bridge between Matrix and Discord"; homepage = "https://github.com/Half-Shot/matrix-appservice-discord"; license = lib.licenses.asl20; - maintainers = with lib.maintainers; [ pacien ]; + maintainers = with lib.maintainers; [ euxane ]; platforms = lib.platforms.linux; mainProgram = "matrix-appservice-discord"; }; diff --git a/pkgs/shells/fish/plugins/clownfish.nix b/pkgs/shells/fish/plugins/clownfish.nix index 386ba8d6332f..c70dc11fd3e4 100644 --- a/pkgs/shells/fish/plugins/clownfish.nix +++ b/pkgs/shells/fish/plugins/clownfish.nix @@ -19,6 +19,6 @@ buildFishPlugin { description = "Fish function to mock the behaviour of commands"; homepage = "https://github.com/IlanCosman/clownfish"; license = licenses.mit; - maintainers = with maintainers; [ pacien ]; + maintainers = with maintainers; [ euxane ]; }; } diff --git a/pkgs/shells/fish/plugins/fishtape.nix b/pkgs/shells/fish/plugins/fishtape.nix index ab94045c107e..6bfe0dba1a7d 100644 --- a/pkgs/shells/fish/plugins/fishtape.nix +++ b/pkgs/shells/fish/plugins/fishtape.nix @@ -31,6 +31,6 @@ buildFishPlugin rec { description = "TAP-based test runner for Fish"; homepage = "https://github.com/jorgebucaran/fishtape"; license = lib.licenses.mit; - maintainers = with lib.maintainers; [ pacien ]; + maintainers = with lib.maintainers; [ euxane ]; }; } diff --git a/pkgs/shells/fish/plugins/fishtape_3.nix b/pkgs/shells/fish/plugins/fishtape_3.nix index 04814634c6cf..fa9d1c3839a0 100644 --- a/pkgs/shells/fish/plugins/fishtape_3.nix +++ b/pkgs/shells/fish/plugins/fishtape_3.nix @@ -24,6 +24,6 @@ buildFishPlugin rec { description = "100% pure-Fish test runner"; homepage = "https://github.com/jorgebucaran/fishtape"; license = licenses.mit; - maintainers = with maintainers; [ pacien ]; + maintainers = with maintainers; [ euxane ]; }; } diff --git a/pkgs/shells/fish/plugins/fzf-fish.nix b/pkgs/shells/fish/plugins/fzf-fish.nix index a77207a8829b..1bf3f640e309 100644 --- a/pkgs/shells/fish/plugins/fzf-fish.nix +++ b/pkgs/shells/fish/plugins/fzf-fish.nix @@ -64,7 +64,7 @@ buildFishPlugin rec { changelog = "https://github.com/PatrickF1/fzf.fish/releases/tag/${src.rev}"; license = licenses.mit; maintainers = with maintainers; [ - pacien + euxane natsukium ]; }; diff --git a/pkgs/shells/fish/plugins/pure.nix b/pkgs/shells/fish/plugins/pure.nix index 717c72dcf322..c5a288b8f027 100644 --- a/pkgs/shells/fish/plugins/pure.nix +++ b/pkgs/shells/fish/plugins/pure.nix @@ -30,6 +30,6 @@ buildFishPlugin rec { description = "Pretty, minimal and fast Fish prompt, ported from zsh"; homepage = "https://github.com/rafaelrinaldi/pure"; license = lib.licenses.mit; - maintainers = with lib.maintainers; [ pacien ]; + maintainers = with lib.maintainers; [ euxane ]; }; } diff --git a/pkgs/top-level/ruby-packages.nix b/pkgs/top-level/ruby-packages.nix index dcaa14483eaf..40f4e0f646cf 100644 --- a/pkgs/top-level/ruby-packages.nix +++ b/pkgs/top-level/ruby-packages.nix @@ -2915,10 +2915,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1pm4z853nyz1bhhqr7fzl44alnx4bjachcr6rh6qjj375sfz3sc6"; + sha256 = "1w6bqm8d3afc66ff6npnsc2d8ky552n6qzwwwc1bh0wz6c8gplp3"; type = "gem"; }; - version = "1.6.0"; + version = "1.6.1"; }; railties = { dependencies = ["actionpack" "activesupport" "irb" "rackup" "rake" "thor" "zeitwerk"];