From ac618e999b1fa3946339fa108659970249f9d56b Mon Sep 17 00:00:00 2001 From: Bruno BELANYI Date: Fri, 28 Jul 2023 16:05:38 +0000 Subject: [PATCH 1/9] flake: bump inputs --- flake.lock | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/flake.lock b/flake.lock index ec43468..2f2ccbb 100644 --- a/flake.lock +++ b/flake.lock @@ -11,11 +11,11 @@ ] }, "locked": { - "lastModified": 1689334118, - "narHash": "sha256-djk5AZv1yU84xlKFaVHqFWvH73U7kIRstXwUAnDJPsk=", + "lastModified": 1690228878, + "narHash": "sha256-9Xe7JV0krp4RJC9W9W9WutZVlw6BlHTFMiUP/k48LQY=", "owner": "ryantm", "repo": "agenix", - "rev": "0d8c5325fc81daf00532e3e26c6752f7bcde1143", + "rev": "d8c973fd228949736dedf61b7f8cc1ece3236792", "type": "github" }, "original": { @@ -131,11 +131,11 @@ ] }, "locked": { - "lastModified": 1689891262, - "narHash": "sha256-Pc4wDczbdgd6QXKJIXprgxe7L9AVDsoAkMnvm5vmpUU=", + "lastModified": 1690476848, + "narHash": "sha256-PSmzyuEbMxEn2uwwLYUN2l1psoJXb7jm/kfHD12Sq0k=", "owner": "nix-community", "repo": "home-manager", - "rev": "ee5673246de0254186e469935909e821b8f4ec15", + "rev": "8d243f7da13d6ee32f722a3f1afeced150b6d4da", "type": "github" }, "original": { @@ -147,11 +147,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1689850295, - "narHash": "sha256-fUYf6WdQlhd2H+3aR8jST5dhFH1d0eE22aes8fNIfyk=", + "lastModified": 1690367991, + "narHash": "sha256-2VwOn1l8y6+cu7zjNE8MgeGJNNz1eat1HwHrINeogFA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "5df4d78d54f7a34e9ea1f84a22b4fd9baebc68d0", + "rev": "c9cf0708f00fbe553319258e48ca89ff9a413703", "type": "github" }, "original": { @@ -163,11 +163,11 @@ }, "nur": { "locked": { - "lastModified": 1689968828, - "narHash": "sha256-5qA6R/cBeLsS09ZMRKzhJq74nOGWEgGYpjdbKXDnCow=", + "lastModified": 1690541304, + "narHash": "sha256-EypV1o52D9SdHWyH3Wf6RLdDiDnKIqqXiUROrtN2KyQ=", "owner": "nix-community", "repo": "NUR", - "rev": "876b9498f36a394fcf8472f62ecf6685585c0509", + "rev": "03f02d6f7b5c284fe6ed12f86debb21429ca124c", "type": "github" }, "original": { @@ -192,11 +192,11 @@ ] }, "locked": { - "lastModified": 1689668210, - "narHash": "sha256-XAATwDkaUxH958yXLs1lcEOmU6pSEIkatY3qjqk8X0E=", + "lastModified": 1690464206, + "narHash": "sha256-38V4kmOh6ikpfGiAS+Kt2H/TA2DubSqE66veP/jmB4Q=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "eb433bff05b285258be76513add6f6c57b441775", + "rev": "9289996dcac62fd45836db7c07b87d2521eb526d", "type": "github" }, "original": { From c4319e9c2f5f922e3db989d051df373cefee3154 Mon Sep 17 00:00:00 2001 From: Bruno BELANYI Date: Sun, 23 Jul 2023 17:59:12 +0100 Subject: [PATCH 2/9] home: wm: i3: remove 'pamixer' This was left-over from the first version of my volume mappings. --- home/wm/i3/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/home/wm/i3/default.nix b/home/wm/i3/default.nix index c7a728a..44e2614 100644 --- a/home/wm/i3/default.nix +++ b/home/wm/i3/default.nix @@ -61,7 +61,6 @@ in ambroisie.dragger # drag-and-drop from the CLI ambroisie.i3-get-window-criteria # little helper for i3 configuration arandr # Used by a mapping - pamixer # Used by a mapping playerctl # Used by a mapping ]; From 9245acf8ef02a64b52bc6074e9914b224338965a Mon Sep 17 00:00:00 2001 From: Bruno BELANYI Date: Tue, 11 May 2021 12:43:42 +0200 Subject: [PATCH 3/9] home: add bitwarden --- home/bitwarden/default.nix | 27 +++++++++++++++++++++++++++ home/default.nix | 1 + 2 files changed, 28 insertions(+) create mode 100644 home/bitwarden/default.nix diff --git a/home/bitwarden/default.nix b/home/bitwarden/default.nix new file mode 100644 index 0000000..c709f7b --- /dev/null +++ b/home/bitwarden/default.nix @@ -0,0 +1,27 @@ +{ config, lib, ... }: +let + cfg = config.my.home.bitwarden; +in +{ + options.my.home.bitwarden = with lib; { + enable = my.mkDisableOption "bitwarden configuration"; + + pinentry = mkOption { + type = types.str; + default = "tty"; + example = "gtk2"; + description = "Which pinentry interface to use"; + }; + }; + + config = lib.mkIf cfg.enable { + programs.rbw = { + enable = true; + + settings = { + email = lib.my.mkMailAddress "bruno" "belanyi.fr"; + inherit (cfg) pinentry; + }; + }; + }; +} diff --git a/home/default.nix b/home/default.nix index 6b6ad36..8ba3a8d 100644 --- a/home/default.nix +++ b/home/default.nix @@ -4,6 +4,7 @@ ./aliases ./atuin ./bat + ./bitwarden ./bluetooth ./calibre ./comma From fc7e011d41a4177676dbe0109e5d30a290badebd Mon Sep 17 00:00:00 2001 From: Bruno BELANYI Date: Tue, 11 May 2021 12:44:38 +0200 Subject: [PATCH 4/9] machine: aramis: home: set 'bitwarden.pinentry' --- hosts/nixos/aramis/home.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/hosts/nixos/aramis/home.nix b/hosts/nixos/aramis/home.nix index 6d66384..66a0892 100644 --- a/hosts/nixos/aramis/home.nix +++ b/hosts/nixos/aramis/home.nix @@ -1,6 +1,8 @@ { pkgs, ... }: { my.home = { + # Use graphical pinentry + bitwarden.pinentry = "gtk2"; # Ebook library calibre.enable = true; # Some amount of social life From 25143be03d36ca3d5c9cd8187693c8a809f8566a Mon Sep 17 00:00:00 2001 From: Bruno BELANYI Date: Sun, 23 Jul 2023 17:58:07 +0100 Subject: [PATCH 5/9] home: wm: i3: add 'rofi-rbw' mapping --- home/wm/i3/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/home/wm/i3/default.nix b/home/wm/i3/default.nix index 44e2614..34c1db4 100644 --- a/home/wm/i3/default.nix +++ b/home/wm/i3/default.nix @@ -62,6 +62,7 @@ in ambroisie.i3-get-window-criteria # little helper for i3 configuration arandr # Used by a mapping playerctl # Used by a mapping + xdotool # Used by 'rofi-rbw', in a mapping ]; xsession.windowManager.i3 = { @@ -188,6 +189,7 @@ in "${modifier}+d" = "exec rofi -show drun -disable-history"; "${modifier}+Shift+d" = "exec rofi -show run -disable-history"; "${modifier}+p" = "exec --no-startup-id flameshot gui"; + "${modifier}+Ctrl+p" = "exec ${lib.getExe pkgs.rofi-rbw}"; "${modifier}+Shift+p" = "exec rofi -show emoji"; "${modifier}+b" = let From 92b26e9d5481fe5fb541fd3a5ee82c2b10f734fd Mon Sep 17 00:00:00 2001 From: Bruno BELANYI Date: Sun, 23 Jul 2023 18:44:08 +0100 Subject: [PATCH 6/9] pkgs: add rbw-pass This is honestly almost overkill, as the script doesn't really have any logic in it, but it's good to have a common base with the bitwarden-cli one. --- pkgs/default.nix | 2 ++ pkgs/rbw-pass/default.nix | 40 ++++++++++++++++++++++++++++++++++++ pkgs/rbw-pass/rbw-pass | 43 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 85 insertions(+) create mode 100644 pkgs/rbw-pass/default.nix create mode 100755 pkgs/rbw-pass/rbw-pass diff --git a/pkgs/default.nix b/pkgs/default.nix index 4a84b9c..cfd722d 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -26,6 +26,8 @@ pkgs.lib.makeScope pkgs.newScope (pkgs: { osc52 = pkgs.callPackage ./osc52 { }; + rbw-pass = pkgs.callPackage ./rbw-pass { }; + unbound-zones-adblock = pkgs.callPackage ./unbound-zones-adblock { }; unified-hosts-lists = pkgs.callPackage ./unified-hosts-lists { }; diff --git a/pkgs/rbw-pass/default.nix b/pkgs/rbw-pass/default.nix new file mode 100644 index 0000000..7f0286b --- /dev/null +++ b/pkgs/rbw-pass/default.nix @@ -0,0 +1,40 @@ +{ lib, coreutils, makeWrapper, rbw, rofi, stdenvNoCC }: +stdenvNoCC.mkDerivation rec { + pname = "rbw-pass"; + version = "0.1.0"; + + src = ./rbw-pass; + + nativeBuildInputs = [ + makeWrapper + ]; + + dontUnpack = true; + + dontBuild = true; + + installPhase = '' + mkdir -p $out/bin + cp $src $out/bin/${pname} + chmod a+x $out/bin/${pname} + ''; + + wrapperPath = lib.makeBinPath [ + rbw + coreutils + rofi + ]; + + fixupPhase = '' + patchShebangs $out/bin/${pname} + wrapProgram $out/bin/${pname} --prefix PATH : "${wrapperPath}" + ''; + + meta = with lib; { + description = "A simple script to query a password from rbw"; + homepage = "https://git.belanyi.fr/ambroisie/nix-config"; + license = with licenses; [ mit ]; + platforms = platforms.linux; + maintainers = with maintainers; [ ambroisie ]; + }; +} diff --git a/pkgs/rbw-pass/rbw-pass b/pkgs/rbw-pass/rbw-pass new file mode 100755 index 0000000..90e916c --- /dev/null +++ b/pkgs/rbw-pass/rbw-pass @@ -0,0 +1,43 @@ +#!/usr/bin/env bash + +usage() { + printf '%s\n' "Usage: bw-pass [directory name] " >&2 +} + +error_out() { + printf '%s\n' "$1" >&2 + rofi -dmenu -no-fixed-num-lines -p "$1" + exit 1 +} + +ensure_logged_in() { + rbw login +} + +query_password() { + # Either use with `query_password + # Or `query_password ` when the account has no directory + + local FOLDER_ARGS=() + local PASSWORD + + # FIXME: no way to enforce filering by "no folder" + if [ $# -eq 2 ]; then + FOLDER_ARGS+=(--folder "$1") + shift + fi + PASSWORD="$(rbw get "${FOLDER_ARGS[@]}" "$1")" + + if [ -z "$PASSWORD" ]; then + error_out "Did not find password for '$1'" + fi + printf '%s\n' "$PASSWORD" +} + +if [ $# -lt 1 ] || [ $# -gt 2 ]; then + usage + exit 1 +fi + +ensure_logged_in +query_password "$@" From 17e7892a6e3b7b29b59a4c5acde7794d682805a2 Mon Sep 17 00:00:00 2001 From: Bruno BELANYI Date: Sun, 23 Jul 2023 18:58:40 +0100 Subject: [PATCH 7/9] treewide: use 'lib.getExe' when possible Don't use it in wireguard to keep it consistent, as only half the commands could use it. --- home/mail/accounts/default.nix | 2 +- home/mail/himalaya/default.nix | 2 +- home/wm/default.nix | 4 ++-- home/wm/i3/default.nix | 6 +++--- home/wm/screen-lock/default.nix | 2 +- modules/services/drone/runner-docker/default.nix | 3 +-- modules/services/drone/runner-exec/default.nix | 3 +-- modules/services/flood/default.nix | 2 +- modules/services/lohr/default.nix | 4 +--- modules/services/nginx/sso/default.nix | 4 ++-- pkgs/ff2mpv-go/default.nix | 2 +- pkgs/unbound-zones-adblock/default.nix | 2 +- 12 files changed, 16 insertions(+), 20 deletions(-) diff --git a/home/mail/accounts/default.nix b/home/mail/accounts/default.nix index f513605..9ccc643 100644 --- a/home/mail/accounts/default.nix +++ b/home/mail/accounts/default.nix @@ -8,7 +8,7 @@ let realName = lib.mkDefault "Bruno BELANYI"; userName = lib.mkDefault (mkMailAddress address domain); passwordCommand = - lib.mkDefault [ "${pkgs.ambroisie.bw-pass}/bin/bw-pass" "Mail" passName ]; + lib.mkDefault [ (lib.getExe pkgs.ambroisie.bw-pass) "Mail" passName ]; address = mkMailAddress address domain; aliases = builtins.map (lib.flip mkMailAddress domain) aliases; diff --git a/home/mail/himalaya/default.nix b/home/mail/himalaya/default.nix index c2d3b05..849a415 100644 --- a/home/mail/himalaya/default.nix +++ b/home/mail/himalaya/default.nix @@ -9,7 +9,7 @@ in settings = { notify-cmd = let - notify-send = "${pkgs.libnotify}/bin/notify-send"; + notify-send = lib.getExe pkgs.libnotify; in pkgs.writeScript "mail-notifier" '' SENDER="$1" diff --git a/home/wm/default.nix b/home/wm/default.nix index fb9ecee..6a615e5 100644 --- a/home/wm/default.nix +++ b/home/wm/default.nix @@ -47,8 +47,8 @@ in command = mkOption { type = types.str; - default = "${pkgs.i3lock}/bin/i3lock -n -c 000000"; - example = "\${pkgs.i3lock}/bin/i3lock -n -i lock.png"; + default = "${lib.getExe pkgs.i3lock} -n -c 000000"; + example = "\${lib.getExe pkgs.i3lock} -n -i lock.png"; description = "Locker command to run"; }; diff --git a/home/wm/i3/default.nix b/home/wm/i3/default.nix index 34c1db4..d1dbe2c 100644 --- a/home/wm/i3/default.nix +++ b/home/wm/i3/default.nix @@ -27,13 +27,13 @@ let genMovementBindings = f: addVimKeyBindings (lib.my.genAttrs' movementKeys f); # Used in multiple scripts to show messages through keybindings - notify-send = "${pkgs.libnotify}/bin/notify-send"; + notify-send = lib.getExe pkgs.libnotify; # Screen backlight management - changeBacklight = "${pkgs.ambroisie.change-backlight}/bin/change-backlight"; + changeBacklight = lib.getExe pkgs.ambroisie.change-backlight; # Audio and volume management - changeAudio = "${pkgs.ambroisie.change-audio}/bin/change-audio"; + changeAudio = lib.getExe pkgs.ambroisie.change-audio; # Lock management toggleXautolock = diff --git a/home/wm/screen-lock/default.nix b/home/wm/screen-lock/default.nix index 95060b8..3b2ead6 100644 --- a/home/wm/screen-lock/default.nix +++ b/home/wm/screen-lock/default.nix @@ -5,7 +5,7 @@ let notficationCmd = let duration = toString (cfg.notify.delay * 1000); - notifyCmd = "${pkgs.libnotify}/bin/notify-send -u critical -t ${duration}"; + notifyCmd = "${lib.getExe pkgs.libnotify} -u critical -t ${duration}"; in # Needs to be surrounded by quotes for systemd to launch it correctly ''"${notifyCmd} -- 'Locking in ${toString cfg.notify.delay} seconds'"''; diff --git a/modules/services/drone/runner-docker/default.nix b/modules/services/drone/runner-docker/default.nix index 6ccb5fe..e53c608 100644 --- a/modules/services/drone/runner-docker/default.nix +++ b/modules/services/drone/runner-docker/default.nix @@ -2,7 +2,6 @@ let cfg = config.my.services.drone; hasRunner = (name: builtins.elem name cfg.runners); - dockerPkg = pkgs.drone-runner-docker; in { config = lib.mkIf (cfg.enable && hasRunner "docker") { @@ -25,7 +24,7 @@ in EnvironmentFile = [ cfg.sharedSecretFile ]; - ExecStart = "${dockerPkg}/bin/drone-runner-docker"; + ExecStart = lib.getExe pkgs.drone-runner-docker; User = "drone-runner-docker"; Group = "drone-runner-docker"; }; diff --git a/modules/services/drone/runner-exec/default.nix b/modules/services/drone/runner-exec/default.nix index f0dddb9..a9bb563 100644 --- a/modules/services/drone/runner-exec/default.nix +++ b/modules/services/drone/runner-exec/default.nix @@ -2,7 +2,6 @@ let cfg = config.my.services.drone; hasRunner = (name: builtins.elem name cfg.runners); - execPkg = pkgs.drone-runner-exec; in { config = lib.mkIf (cfg.enable && hasRunner "exec") { @@ -53,7 +52,7 @@ in EnvironmentFile = [ cfg.sharedSecretFile ]; - ExecStart = "${execPkg}/bin/drone-runner-exec"; + ExecStart = lib.getExe pkgs.drone-runner-exec; User = "drone-runner-exec"; Group = "drone-runner-exec"; }; diff --git a/modules/services/flood/default.nix b/modules/services/flood/default.nix index ae8e219..ff5d941 100644 --- a/modules/services/flood/default.nix +++ b/modules/services/flood/default.nix @@ -30,7 +30,7 @@ in serviceConfig = { ExecStart = lib.concatStringsSep " " [ - "${pkgs.flood}/bin/flood" + (lib.getExe pkgs.flood) "--port ${builtins.toString cfg.port}" "--rundir /var/lib/${cfg.stateDir}" ]; diff --git a/modules/services/lohr/default.nix b/modules/services/lohr/default.nix index f43bc40..245567c 100644 --- a/modules/services/lohr/default.nix +++ b/modules/services/lohr/default.nix @@ -4,8 +4,6 @@ let cfg = config.my.services.lohr; settingsFormat = pkgs.formats.yaml { }; - lohrPkg = pkgs.ambroisie.lohr; - lohrStateDirectory = "lohr"; lohrHome = "/var/lib/lohr/"; in @@ -80,7 +78,7 @@ in let configFile = settingsFormat.generate "lohr-config.yaml" cfg.setting; in - "${lohrPkg}/bin/lohr --config ${configFile}"; + "${lib.getExe pkgs.ambroisie.lohr} --config ${configFile}"; StateDirectory = lohrStateDirectory; WorkingDirectory = lohrHome; User = "lohr"; diff --git a/modules/services/nginx/sso/default.nix b/modules/services/nginx/sso/default.nix index 13292ec..cbb35d5 100644 --- a/modules/services/nginx/sso/default.nix +++ b/modules/services/nginx/sso/default.nix @@ -60,7 +60,7 @@ in WorkingDirectory = "/var/lib/nginx-sso"; # The files to be merged might not have the correct permissions ExecStartPre = ''+${pkgs.writeScript "merge-nginx-sso-config" '' - #!${pkgs.bash}/bin/bash + #!${lib.getExe pkgs.bash} rm -f '${confPath}' ${utils.genJqSecretsReplacementSnippet cfg.configuration confPath} @@ -70,7 +70,7 @@ in '' }''; ExecStart = lib.mkForce '' - ${pkg}/bin/nginx-sso \ + ${lib.getExe pkg} \ --config ${confPath} \ --frontend-dir ${pkg}/share/frontend ''; diff --git a/pkgs/ff2mpv-go/default.nix b/pkgs/ff2mpv-go/default.nix index dcdb7f3..fdd9201 100644 --- a/pkgs/ff2mpv-go/default.nix +++ b/pkgs/ff2mpv-go/default.nix @@ -12,7 +12,7 @@ buildGoModule rec { vendorHash = null; postPatch = '' - sed -i -e 's,"mpv","${mpv}/bin/mpv",' ff2mpv.go + sed -i -e 's,"mpv","${lib.getExe mpv}",' ff2mpv.go ''; postInstall = '' diff --git a/pkgs/unbound-zones-adblock/default.nix b/pkgs/unbound-zones-adblock/default.nix index 824a7d6..f8d89b1 100644 --- a/pkgs/unbound-zones-adblock/default.nix +++ b/pkgs/unbound-zones-adblock/default.nix @@ -10,7 +10,7 @@ stdenvNoCC.mkDerivation { installPhase = let gawkCmd = lib.concatStringsSep " " [ - ''${gawk}/bin/awk'' + (lib.getExe gawk) '''{sub(/\r$/,"")}'' ''{sub(/^127\.0\.0\.1/,"0.0.0.0")}'' ''BEGIN { OFS = "" }'' From 6be0ace3b06987e73421d301e8b3a5d3e3cdab43 Mon Sep 17 00:00:00 2001 From: Bruno BELANYI Date: Sun, 23 Jul 2023 18:46:39 +0100 Subject: [PATCH 8/9] home: mail: accounts: use 'rbw-pass' It should be more robust than the one based on bitwarden-cli. --- home/mail/accounts/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/home/mail/accounts/default.nix b/home/mail/accounts/default.nix index 9ccc643..e7663d8 100644 --- a/home/mail/accounts/default.nix +++ b/home/mail/accounts/default.nix @@ -8,7 +8,7 @@ let realName = lib.mkDefault "Bruno BELANYI"; userName = lib.mkDefault (mkMailAddress address domain); passwordCommand = - lib.mkDefault [ (lib.getExe pkgs.ambroisie.bw-pass) "Mail" passName ]; + lib.mkDefault [ (lib.getExe pkgs.ambroisie.rbw-pass) "Mail" passName ]; address = mkMailAddress address domain; aliases = builtins.map (lib.flip mkMailAddress domain) aliases; From ef4e5e3ccc4b980f496b3d554b49e0c976a6d18e Mon Sep 17 00:00:00 2001 From: Bruno BELANYI Date: Fri, 28 Jul 2023 16:05:56 +0000 Subject: [PATCH 9/9] pkgs: remove woodpecker-plugin-git I have now upstreamed the package, so let's remove it. --- .../woodpecker/agent-exec/default.nix | 2 +- pkgs/default.nix | 2 - pkgs/woodpecker-plugin-git/default.nix | 37 ------------------- 3 files changed, 1 insertion(+), 40 deletions(-) delete mode 100644 pkgs/woodpecker-plugin-git/default.nix diff --git a/modules/services/woodpecker/agent-exec/default.nix b/modules/services/woodpecker/agent-exec/default.nix index d7adc4e..68510d7 100644 --- a/modules/services/woodpecker/agent-exec/default.nix +++ b/modules/services/woodpecker/agent-exec/default.nix @@ -33,7 +33,7 @@ in restartIfChanged = false; path = with pkgs; [ - ambroisie.woodpecker-plugin-git + woodpecker-plugin-git bash coreutils git diff --git a/pkgs/default.nix b/pkgs/default.nix index cfd722d..ed27dc9 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -44,7 +44,5 @@ pkgs.lib.makeScope pkgs.newScope (pkgs: { woodpecker-frontend = pkgs.callPackage ./woodpecker/frontend.nix { }; - woodpecker-plugin-git = pkgs.callPackage ./woodpecker-plugin-git { }; - woodpecker-server = pkgs.callPackage ./woodpecker/server.nix { }; }) diff --git a/pkgs/woodpecker-plugin-git/default.nix b/pkgs/woodpecker-plugin-git/default.nix deleted file mode 100644 index 8411216..0000000 --- a/pkgs/woodpecker-plugin-git/default.nix +++ /dev/null @@ -1,37 +0,0 @@ -{ lib, buildGoModule, fetchFromGitHub, fetchpatch }: -buildGoModule rec { - pname = "woodpecker-plugin-git"; - version = "2.0.3"; - - src = fetchFromGitHub { - owner = "woodpecker-ci"; - repo = "plugin-git"; - rev = "v${version}"; - hash = "sha256-KU/A3V7KS8R1nAZoJJwkDc9C8y3t148kUzGnkeYtFjs="; - }; - - vendorHash = "sha256-63Ly/9yIJu2K/DwOfGs9pYU3fokbs2senZkl3MJ1UIY="; - - patches = [ - # https://github.com/woodpecker-ci/plugin-git/pull/67 - (fetchpatch { - name = "do-not-overwrite-command-env.patch"; - url = "https://github.com/woodpecker-ci/plugin-git/commit/970cc63a9b212872deac565c6292feb3f4cf4b51.patch"; - hash = "sha256-izu0X7j+OyNbrOkksf+7VF3KiKVylVv2o00xaX/b1Rg="; - }) - ]; - - CGO_ENABLED = "0"; - - # Checks fail because they require network access. - doCheck = false; - - meta = with lib; { - description = "Woodpecker plugin for cloning Git repositories."; - homepage = "https://woodpecker-ci.org/"; - license = licenses.asl20; - mainProgram = "pluging-git"; - maintainers = with maintainers; [ thehedgeh0g ]; - platforms = platforms.all; - }; -}