From 5f3d66622940635b405fa1db2c6c76878ad4d167 Mon Sep 17 00:00:00 2001 From: tv Date: Tue, 17 Nov 2020 23:07:38 +0100 Subject: [PATCH] tv: pass -> pass-otp --- tv/1systems/xu/config.nix | 2 +- tv/5pkgs/compat/18.03/pass-otp/default.nix | 30 ----- tv/5pkgs/compat/18.03/pass/default.nix | 121 ------------------ .../compat/18.03/pass/no-darwin-getopt.patch | 9 -- tv/5pkgs/compat/18.03/pass/rofi-pass.nix | 57 --------- .../set-correct-program-name-for-sleep.patch | 69 ---------- tv/5pkgs/default.nix | 10 -- tv/5pkgs/simple/fzmenu/default.nix | 6 +- 8 files changed, 4 insertions(+), 300 deletions(-) delete mode 100644 tv/5pkgs/compat/18.03/pass-otp/default.nix delete mode 100644 tv/5pkgs/compat/18.03/pass/default.nix delete mode 100644 tv/5pkgs/compat/18.03/pass/no-darwin-getopt.patch delete mode 100644 tv/5pkgs/compat/18.03/pass/rofi-pass.nix delete mode 100644 tv/5pkgs/compat/18.03/pass/set-correct-program-name-for-sleep.patch diff --git a/tv/1systems/xu/config.nix b/tv/1systems/xu/config.nix index 503142b96..65b49ed9c 100644 --- a/tv/1systems/xu/config.nix +++ b/tv/1systems/xu/config.nix @@ -44,7 +44,7 @@ with import ; netcup nmap p7zip - pass + pass-otp q qrencode texlive.combined.scheme-full diff --git a/tv/5pkgs/compat/18.03/pass-otp/default.nix b/tv/5pkgs/compat/18.03/pass-otp/default.nix deleted file mode 100644 index 33411180a..000000000 --- a/tv/5pkgs/compat/18.03/pass-otp/default.nix +++ /dev/null @@ -1,30 +0,0 @@ -{ stdenv, fetchFromGitHub, oathToolkit }: -stdenv.mkDerivation rec { - name = "pass-otp-${version}"; - version = "1.1.0"; - - src = fetchFromGitHub { - owner = "tadfisher"; - repo = "pass-otp"; - rev = "v${version}"; - sha256 = "1cgj4zc8fq88n3h6c0vkv9i5al785mdprpgpbv5m22dz9p1wqvbb"; - }; - - buildInputs = [ oathToolkit ]; - - patchPhase = '' - sed -i -e 's|OATH=\$(which oathtool)|OATH=${oathToolkit}/bin/oathtool|' otp.bash - ''; - - installPhase = '' - make PREFIX=$out install - ''; - - meta = with stdenv.lib; { - description = "A pass extension for managing one-time-password (OTP) tokens"; - homepage = https://github.com/tadfisher/pass-otp; - license = licenses.gpl3; - maintainers = with maintainers; [ jwiegley tadfisher ]; - platforms = platforms.unix; - }; -} diff --git a/tv/5pkgs/compat/18.03/pass/default.nix b/tv/5pkgs/compat/18.03/pass/default.nix deleted file mode 100644 index c2fe0e1d7..000000000 --- a/tv/5pkgs/compat/18.03/pass/default.nix +++ /dev/null @@ -1,121 +0,0 @@ -{ stdenv, lib, fetchurl, fetchFromGitHub -, coreutils, gnused, getopt, git, tree, gnupg, which, procps, qrencode -, makeWrapper - -, pass-otp - -, xclip ? null, xdotool ? null, dmenu ? null -, x11Support ? !stdenv.isDarwin -, tombPluginSupport ? false, tomb -}: - -with lib; - -assert x11Support -> xclip != null - && xdotool != null - && dmenu != null; - -let - plugins = map (p: (fetchFromGitHub { - owner = "roddhjav"; - repo = "pass-${p.name}"; - inherit (p) rev sha256; - })) - ([ - { name = "import"; - rev = "491935bd275f29ceac2b876b3a288011d1ce31e7"; - sha256 = "02mbh05ab8h7kc30hz718d1d1vkjz43b96c7p0xnd92610d2q66q"; } - { name = "update"; - rev = "cf576c9036fd18efb9ed29e0e9f811207b556fde"; - sha256 = "1hhbrg6a2walrvla6q4cd3pgrqbcrf9brzjkb748735shxfn52hd"; } - ] ++ stdenv.lib.optional tombPluginSupport { - name = "tomb"; - rev = "3368134898a42c1b758fabac625ec240e125c6be"; - sha256 = "0qqmxfg4w3r088qhlkhs44036mya82vjflsjjhw2hk8y0wd2i6ds"; } - ); - -in stdenv.mkDerivation rec { - version = "1.7.2"; - name = "password-store-${version}"; - - src = fetchurl { - url = "http://git.zx2c4.com/password-store/snapshot/${name}.tar.xz"; - sha256 = "1sl0d7nc85c6c2bmmmyb8rpmn47vhkj831l153mjlkawjvhwas27"; - }; - - patches = [ ./set-correct-program-name-for-sleep.patch - ] ++ stdenv.lib.optional stdenv.isDarwin ./no-darwin-getopt.patch; - - nativeBuildInputs = [ makeWrapper ]; - - installFlags = [ "PREFIX=$(out)" "WITH_ALLCOMP=yes" ]; - - postInstall = '' - # plugins - ${stdenv.lib.concatStringsSep "\n" (map (plugin: '' - pushd ${plugin} - PREFIX=$out make install - popd - '') plugins)} - - ln -s \ - ${pass-otp}/lib/password-store/extensions/otp.bash \ - $out/lib/password-store/extensions/ - - ln -s \ - ${pass-otp}/share/man/man1/pass-otp.1.gz \ - $out/share/man/man1/ - - # Install Emacs Mode. NOTE: We can't install the necessary - # dependencies (s.el and f.el) here. The user has to do this - # himself. - mkdir -p "$out/share/emacs/site-lisp" - cp "contrib/emacs/password-store.el" "$out/share/emacs/site-lisp/" - '' + optionalString x11Support '' - cp "contrib/dmenu/passmenu" "$out/bin/" - ''; - - wrapperPath = with stdenv.lib; makeBinPath ([ - coreutils - getopt - git - gnupg - gnused - tree - which - qrencode - ] ++ optional tombPluginSupport tomb - ++ optional stdenv.isLinux procps - ++ ifEnable x11Support [ dmenu xclip xdotool ]); - - postFixup = '' - # Fix program name in --help - substituteInPlace $out/bin/pass \ - --replace 'PROGRAM="''${0##*/}"' "PROGRAM=pass" - - # Ensure all dependencies are in PATH - wrapProgram $out/bin/pass \ - --prefix PATH : "${wrapperPath}" - '' + stdenv.lib.optionalString x11Support '' - # We just wrap passmenu with the same PATH as pass. It doesn't - # need all the tools in there but it doesn't hurt either. - wrapProgram $out/bin/passmenu \ - --prefix PATH : "$out/bin:${wrapperPath}" - ''; - - meta = with stdenv.lib; { - description = "Stores, retrieves, generates, and synchronizes passwords securely"; - homepage = https://www.passwordstore.org/; - license = licenses.gpl2Plus; - maintainers = with maintainers; [ lovek323 the-kenny fpletz ]; - platforms = platforms.unix; - - longDescription = '' - pass is a very simple password store that keeps passwords inside gpg2 - encrypted files inside a simple directory tree residing at - ~/.password-store. The pass utility provides a series of commands for - manipulating the password store, allowing the user to add, remove, edit, - synchronize, generate, and manipulate passwords. - ''; - }; -} diff --git a/tv/5pkgs/compat/18.03/pass/no-darwin-getopt.patch b/tv/5pkgs/compat/18.03/pass/no-darwin-getopt.patch deleted file mode 100644 index e8f7e138f..000000000 --- a/tv/5pkgs/compat/18.03/pass/no-darwin-getopt.patch +++ /dev/null @@ -1,9 +0,0 @@ -diff -Naur password-store-1.6.5-orig/src/platform/darwin.sh password-store-1.6.5/src/platform/darwin.sh ---- password-store-1.6.5-orig/src/platform/darwin.sh 2015-01-28 16:43:02.000000000 +0000 -+++ password-store-1.6.5/src/platform/darwin.sh 2015-02-15 16:09:02.000000000 +0000 -@@ -31,5 +31,4 @@ - mount -t hfs -o noatime -o nobrowse "$DARWIN_RAMDISK_DEV" "$SECURE_TMPDIR" || die "Error: could not mount filesystem on ramdisk." - } - --GETOPT="$(brew --prefix gnu-getopt 2>/dev/null || { which port &>/dev/null && echo /opt/local; } || echo /usr/local)/bin/getopt" - SHRED="srm -f -z" diff --git a/tv/5pkgs/compat/18.03/pass/rofi-pass.nix b/tv/5pkgs/compat/18.03/pass/rofi-pass.nix deleted file mode 100644 index 61f51973e..000000000 --- a/tv/5pkgs/compat/18.03/pass/rofi-pass.nix +++ /dev/null @@ -1,57 +0,0 @@ -{ stdenv, fetchFromGitHub, pass, rofi, coreutils, utillinux, xdotool, gnugrep -, libnotify, pwgen, findutils, gawk, gnused, xclip, makeWrapper -}: - -stdenv.mkDerivation rec { - name = "rofi-pass-${version}"; - version = "1.5.3"; - - src = fetchFromGitHub { - owner = "carnager"; - repo = "rofi-pass"; - rev = version; - sha256 = "1fn1j2rf3abc5qb44zfc8z8ffw6rva4xfp7597hwr1g3szacazpq"; - }; - - buildInputs = [ makeWrapper ]; - - dontBuild = true; - - installPhase = '' - mkdir -p $out/bin - cp -a rofi-pass $out/bin/rofi-pass - - mkdir -p $out/share/doc/rofi-pass/ - cp -a config.example $out/share/doc/rofi-pass/config.example - ''; - - wrapperPath = with stdenv.lib; makeBinPath [ - coreutils - findutils - gawk - gnugrep - gnused - libnotify - pass - pwgen - rofi - utillinux - xclip - xdotool - ]; - - fixupPhase = '' - patchShebangs $out/bin - - wrapProgram $out/bin/rofi-pass \ - --prefix PATH : "${wrapperPath}" - ''; - - meta = { - description = "A script to make rofi work with password-store"; - homepage = https://github.com/carnager/rofi-pass; - maintainers = with stdenv.lib.maintainers; [ the-kenny garbas ]; - license = stdenv.lib.licenses.gpl3; - platforms = with stdenv.lib.platforms; linux; - }; -} diff --git a/tv/5pkgs/compat/18.03/pass/set-correct-program-name-for-sleep.patch b/tv/5pkgs/compat/18.03/pass/set-correct-program-name-for-sleep.patch deleted file mode 100644 index 782e06e20..000000000 --- a/tv/5pkgs/compat/18.03/pass/set-correct-program-name-for-sleep.patch +++ /dev/null @@ -1,69 +0,0 @@ -From 25b44e00ed5df8ffe2782d38ad5cd9f514379599 Mon Sep 17 00:00:00 2001 -From: "Andrew R. M" -Date: Sat, 8 Apr 2017 13:50:01 -0400 -Subject: [PATCH] Patch the clip() function to work even when using - single-binary coreutils - ---- - src/password-store.sh | 4 ++-- - src/platform/cygwin.sh | 4 ++-- - src/platform/darwin.sh | 4 ++-- - 3 files changed, 6 insertions(+), 6 deletions(-) - -diff --git a/src/password-store.sh b/src/password-store.sh -index 6a4172d..4dbd6b8 100755 ---- a/src/password-store.sh -+++ b/src/password-store.sh -@@ -155,11 +155,11 @@ clip() { - # variable. Specifically, it cannot store nulls nor (non-trivally) store - # trailing new lines. - local sleep_argv0="password store sleep on display $DISPLAY" -- pkill -f "^$sleep_argv0" 2>/dev/null && sleep 0.5 -+ pkill -P $(pgrep -f "^$sleep_argv0") 2>/dev/null && sleep 0.5 - local before="$(xclip -o -selection "$X_SELECTION" 2>/dev/null | base64)" - echo -n "$1" | xclip -selection "$X_SELECTION" || die "Error: Could not copy data to the clipboard" - ( -- ( exec -a "$sleep_argv0" bash <<<"trap 'kill %1' TERM; sleep '$CLIP_TIME' & wait" ) -+ ( exec -a "$sleep_argv0" bash <(echo trap 'kill %1' TERM\; sleep "$CLIP_TIME & wait") ) - local now="$(xclip -o -selection "$X_SELECTION" | base64)" - [[ $now != $(echo -n "$1" | base64) ]] && before="$now" - -diff --git a/src/platform/cygwin.sh b/src/platform/cygwin.sh -index 6e5dd86..f3574c4 100644 ---- a/src/platform/cygwin.sh -+++ b/src/platform/cygwin.sh -@@ -3,11 +3,11 @@ - - clip() { - local sleep_argv0="password store sleep on display $DISPLAY" -- pkill -f "^$sleep_argv0" 2>/dev/null && sleep 0.5 -+ pkill -P $(pgrep -f "^$sleep_argv0") 2>/dev/null && sleep 0.5 - local before="$(base64 < /dev/clipboard)" - echo -n "$1" > /dev/clipboard - ( -- ( exec -a "$sleep_argv0" sleep "$CLIP_TIME" ) -+ ( exec -a "$sleep_argv0" bash <(echo sleep "$CLIP_TIME") ) - local now="$(base64 < /dev/clipboard)" - [[ $now != $(echo -n "$1" | base64) ]] && before="$now" - echo "$before" | base64 -d > /dev/clipboard -diff --git a/src/platform/darwin.sh b/src/platform/darwin.sh -index 86eb325..deb04c4 100644 ---- a/src/platform/darwin.sh -+++ b/src/platform/darwin.sh -@@ -3,11 +3,11 @@ - - clip() { - local sleep_argv0="password store sleep for user $(id -u)" -- pkill -f "^$sleep_argv0" 2>/dev/null && sleep 0.5 -+ pkill -P $(pgrep -f "^$sleep_argv0") 2>/dev/null && sleep 0.5 - local before="$(pbpaste | openssl base64)" - echo -n "$1" | pbcopy - ( -- ( exec -a "$sleep_argv0" sleep "$CLIP_TIME" ) -+ ( exec -a "$sleep_argv0" bash <(echo sleep "$CLIP_TIME") ) - local now="$(pbpaste | openssl base64)" - [[ $now != $(echo -n "$1" | openssl base64) ]] && before="$now" - echo "$before" | openssl base64 -d | pbcopy --- -2.12.2 - diff --git a/tv/5pkgs/default.nix b/tv/5pkgs/default.nix index 2f6b67e73..fd3d2f32a 100644 --- a/tv/5pkgs/default.nix +++ b/tv/5pkgs/default.nix @@ -40,14 +40,4 @@ foldl' mergeAttrs {} gnupg = self.gnupg22; - pass = { - "18.03" = - self.callPackage ./compat/18.03/pass { - pass-otp = self.callPackage ./compat/18.03/pass-otp {}; - }; - }.${versions.majorMinor version} or - super.pass.withExtensions (ext: [ - ext.pass-otp - ]); - } diff --git a/tv/5pkgs/simple/fzmenu/default.nix b/tv/5pkgs/simple/fzmenu/default.nix index c49c903c6..35918ff77 100644 --- a/tv/5pkgs/simple/fzmenu/default.nix +++ b/tv/5pkgs/simple/fzmenu/default.nix @@ -1,4 +1,4 @@ -{ coreutils, dash, gnused, fzf, pass, runCommand, rxvt_unicode, stdenv, utillinux, xdotool }: +{ coreutils, dash, gnused, fzf, pass-otp, runCommand, rxvt_unicode, stdenv, utillinux, xdotool }: runCommand "fzmenu" { } /* sh */ '' @@ -13,7 +13,7 @@ runCommand "fzmenu" { dash fzf gnused - pass + pass-otp rxvt_unicode utillinux xdotool @@ -26,7 +26,7 @@ runCommand "fzmenu" { dash fzf gnused - pass + pass-otp rxvt_unicode utillinux xdotool