From a795b94566c7ad2e698a28fa95e2736b30029f5f Mon Sep 17 00:00:00 2001 From: Krzysztof Nazarewski <3494992+nazarewk@users.noreply.github.com> Date: Wed, 24 Nov 2021 21:49:57 +0100 Subject: [PATCH 1/3] keepass-keetraytotp: init at 0.108.0 --- .../keepass-plugins/keetraytotp/default.nix | 40 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 42 insertions(+) create mode 100644 pkgs/applications/misc/keepass-plugins/keetraytotp/default.nix diff --git a/pkgs/applications/misc/keepass-plugins/keetraytotp/default.nix b/pkgs/applications/misc/keepass-plugins/keetraytotp/default.nix new file mode 100644 index 000000000000..52cd719ca583 --- /dev/null +++ b/pkgs/applications/misc/keepass-plugins/keetraytotp/default.nix @@ -0,0 +1,40 @@ +{ lib, stdenv, buildEnv, fetchurl, mono }: + +let + version = "0.108.0"; + + drv = stdenv.mkDerivation { + pname = "keepass-keetraytotp"; + inherit version; + + src = fetchurl { + url = "https://github.com/KeeTrayTOTP/KeeTrayTOTP/releases/download/v${version}/KeeTrayTOTP.plgx"; + sha256 = "4f7251a9bbb79cad04aee96d1809c6b36d43285a9f3834fef5330fc97ae8bc09"; + }; + + dontUnpack = true; + installPhase = '' + mkdir -p $out/lib/dotnet/keepass/ + cp $src $out/lib/dotnet/keepass/ + ''; + + meta = with lib; { + description = "Augments KeePass with TOTP user interface"; + longDescription = '' + This KeePass2 plugin adds advanced support for generating Time-based One-Time Passwords (TOTPs) + from the KeePass tray icon. It also provides a column in the main entry list to display and/or use TOTPs. + TOTPs can also be sent by auto-type. The plugin is compatible with Google, Dropbox, Steam, and many more services. + ''; + homepage = "https://github.com/KeeTrayTOTP/KeeTrayTOTP"; + platforms = [ + "aarch64-linux" + "i686-linux" + "x86_64-linux" + ]; + license = licenses.gpl3; + maintainers = with maintainers; [ nazarewk ]; + }; + }; +in + # Mono is required to compile plugin at runtime, after loading. + buildEnv { name = drv.name; paths = [ mono drv ]; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f923b5fc1403..e636cb84db74 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -24886,6 +24886,8 @@ with pkgs; keepass-keepassrpc = callPackage ../applications/misc/keepass-plugins/keepassrpc { }; + keepass-keetraytotp = callPackage ../applications/misc/keepass-plugins/keetraytotp { }; + keepass-otpkeyprov = callPackage ../applications/misc/keepass-plugins/otpkeyprov { }; kerbrute = callPackage ../tools/security/kerbrute { }; From 0e0b0835865c65321d9159d09a86eba1665acb13 Mon Sep 17 00:00:00 2001 From: Krzysztof Nazarewski <3494992+nazarewk@users.noreply.github.com> Date: Wed, 24 Nov 2021 21:51:22 +0100 Subject: [PATCH 2/3] keepass-qrcodeview: init at 1.0.4 --- .../keepass-plugins/qrcodeview/default.nix | 39 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 41 insertions(+) create mode 100644 pkgs/applications/misc/keepass-plugins/qrcodeview/default.nix diff --git a/pkgs/applications/misc/keepass-plugins/qrcodeview/default.nix b/pkgs/applications/misc/keepass-plugins/qrcodeview/default.nix new file mode 100644 index 000000000000..8e7ee2a49905 --- /dev/null +++ b/pkgs/applications/misc/keepass-plugins/qrcodeview/default.nix @@ -0,0 +1,39 @@ +{ lib, stdenv, buildEnv, fetchurl, mono }: + +let + version = "1.0.4"; + + drv = stdenv.mkDerivation { + pname = "keepass-qrcodeview"; + inherit version; + + src = fetchurl { + url = "https://github.com/JanisEst/KeePassQRCodeView/releases/download/v${version}/KeePassQRCodeView.plgx"; + sha256 = "e13c9f02bb0d79b479ca0e92490b822b5b88f49bb18ba2954d3bbe0808f46e6d"; + }; + + dontUnpack = true; + installPhase = '' + mkdir -p $out/lib/dotnet/keepass/ + cp $src $out/lib/dotnet/keepass/ + ''; + + meta = with lib; { + description = "Enables KeePass to display data as QR code images"; + longDescription = '' + KeePassQRCodeView is a plugin for KeePass 2.x which shows QR codes for entry fields. + These codes can be scanned to copy the encoded data to the scanner (smartphone, ...) + ''; + homepage = "https://github.com/JanisEst/KeePassQRCodeView"; + platforms = [ + "aarch64-linux" + "i686-linux" + "x86_64-linux" + ]; + license = licenses.mit; + maintainers = with maintainers; [ nazarewk ]; + }; + }; +in + # Mono is required to compile plugin at runtime, after loading. + buildEnv { name = drv.name; paths = [ mono drv ]; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e636cb84db74..a014b71668e3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -24890,6 +24890,8 @@ with pkgs; keepass-otpkeyprov = callPackage ../applications/misc/keepass-plugins/otpkeyprov { }; + keepass-qrcodeview = callPackage ../applications/misc/keepass-plugins/qrcodeview { }; + kerbrute = callPackage ../tools/security/kerbrute { }; exrdisplay = callPackage ../applications/graphics/exrdisplay { }; From 4d5ee723545c4aac8cadd8fba3e8b8ee2d25fb04 Mon Sep 17 00:00:00 2001 From: Krzysztof Nazarewski <3494992+nazarewk@users.noreply.github.com> Date: Wed, 24 Nov 2021 21:48:44 +0100 Subject: [PATCH 3/3] keepass-charactercopy: init at 1.0.0 --- maintainers/maintainer-list.nix | 11 +++++ .../keepass-plugins/charactercopy/default.nix | 41 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 3 files changed, 54 insertions(+) create mode 100644 pkgs/applications/misc/keepass-plugins/charactercopy/default.nix diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 3cb4c652e180..2a8852d64cb0 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -8166,6 +8166,17 @@ githubId = 56316606; name = "Amneesh Singh"; }; + nazarewk = { + name = "Krzysztof Nazarewski"; + email = "3494992+nazarewk@users.noreply.github.com"; + matrix = "@nazarewk:matrix.org"; + github = "nazarewk"; + githubId = 3494992; + keys = [{ + longkeyid = "rsa4096/0x916D8B67241892AE"; + fingerprint = "4BFF 0614 03A2 47F0 AA0B 4BC4 916D 8B67 2418 92AE"; + }]; + }; nbren12 = { email = "nbren12@gmail.com"; github = "nbren12"; diff --git a/pkgs/applications/misc/keepass-plugins/charactercopy/default.nix b/pkgs/applications/misc/keepass-plugins/charactercopy/default.nix new file mode 100644 index 000000000000..dbe203566f09 --- /dev/null +++ b/pkgs/applications/misc/keepass-plugins/charactercopy/default.nix @@ -0,0 +1,41 @@ +{ lib, stdenv, buildEnv, fetchurl, mono }: + +let + version = "1.0.0"; + + drv = stdenv.mkDerivation { + pname = "keepass-charactercopy"; + inherit version; + + src = fetchurl { + url = "https://github.com/SketchingDev/Character-Copy/releases/download/v${version}/CharacterCopy.plgx"; + sha256 = "f8a81a60cd1aacc04c92a242479a8e4210452add019c52ebfbb1810b58d8800a"; + }; + + dontUnpack = true; + installPhase = '' + mkdir -p $out/lib/dotnet/keepass/ + cp $src $out/lib/dotnet/keepass/ + ''; + + meta = with lib; { + description = "Enables KeePass to copy individual characters by index"; + longDescription = '' + Character Copy is a lightweight KeePass plugin that integrates into KeePass' entry menu and + allows users to securely copy individual characters from + an entry's protected string fields, such as the password field + ''; + homepage = "https://github.com/SketchingDev/Character-Copy"; + platforms = [ + "aarch64-linux" + "i686-linux" + "x86_64-linux" + ]; + # licensing info was found in source files https://github.com/SketchingDev/Character-Copy/search?q=license + license = licenses.gpl2; + maintainers = with maintainers; [ nazarewk ]; + }; + }; +in + # Mono is required to compile plugin at runtime, after loading. + buildEnv { name = drv.name; paths = [ mono drv ]; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a014b71668e3..0ddd7803d5bc 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -24880,6 +24880,8 @@ with pkgs; keepass = callPackage ../applications/misc/keepass { }; + keepass-charactercopy = callPackage ../applications/misc/keepass-plugins/charactercopy { }; + keepass-keeagent = callPackage ../applications/misc/keepass-plugins/keeagent { }; keepass-keepasshttp = callPackage ../applications/misc/keepass-plugins/keepasshttp { };