From 6e0810c6b23d02ce52b1deda57dfbaefa081ee06 Mon Sep 17 00:00:00 2001 From: Nicola Vitale Date: Sat, 24 Aug 2024 22:23:37 +0200 Subject: [PATCH] sysutils/pass-coffing: Add new port pass-coffin is a pass extension that hides password store data inside a GPG encrypted file, which we'll call a coffin. Because of how pass works, directory and file names aren't encrypted by default and anyone who has access to your computer can see which websites you use and your usernames on those websites. This is different from how password managers like keepassxc work by keeping your entire password store database inside an encrypted file and can also automatically lock access to the application itself after a certain amount of time. pass-coffin has been created to provide these missing features to pass. https://github.com/ayushnix/pass-coffin --- sysutils/Makefile | 1 + sysutils/pass-coffin/Makefile | 44 ++++++++++++++++++++++++++++++++ sysutils/pass-coffin/distinfo | 3 +++ sysutils/pass-coffin/pkg-descr | 10 ++++++++ sysutils/pass-coffin/pkg-message | 20 +++++++++++++++ sysutils/pass-coffin/pkg-plist | 6 +++++ 6 files changed, 84 insertions(+) create mode 100644 sysutils/pass-coffin/Makefile create mode 100644 sysutils/pass-coffin/distinfo create mode 100644 sysutils/pass-coffin/pkg-descr create mode 100644 sysutils/pass-coffin/pkg-message create mode 100644 sysutils/pass-coffin/pkg-plist diff --git a/sysutils/Makefile b/sysutils/Makefile index 58fdec40ae7c..6ee668d98969 100644 --- a/sysutils/Makefile +++ b/sysutils/Makefile @@ -977,6 +977,7 @@ SUBDIR += parafly SUBDIR += parallel SUBDIR += parkverbot + SUBDIR += pass-coffin SUBDIR += pass-otp SUBDIR += pass-secrets SUBDIR += pass-update diff --git a/sysutils/pass-coffin/Makefile b/sysutils/pass-coffin/Makefile new file mode 100644 index 000000000000..681e8fb48983 --- /dev/null +++ b/sysutils/pass-coffin/Makefile @@ -0,0 +1,44 @@ +PORTNAME= pass-coffin +DISTVERSIONPREFIX= v +DISTVERSION= 1.2.1 +CATEGORIES= sysutils + +MAINTAINER= nivit@FreeBSD.org +COMMENT= Password store extension to hide data inside an encrypted coffin +WWW= https://github.com/ayushnix/pass-coffin + +LICENSE= GPLv3 +LICENSE_FILE= ${WRKSRC}/LICENSE + +RUN_DEPENDS= bash:shells/bash \ + pass:sysutils/password-store + +USES= shebangfix +USE_GITHUB= yes +GH_ACCOUNT= ayushnix +SHEBANG_FILES= *.bash + +NO_ARCH= yes + +OPTIONS_DEFINE= DOCS +DOCS_BUILD_DEPENDS= md2roff:textproc/md2roff + +do-build: + ${DO_NADA} + +post-build-DOCS-on: + ${LOCALBASE}/bin/md2roff ${WRKSRC}/README.md + +do-install: + @${MKDIR} ${STAGEDIR}${PREFIX}/libexec/password-store/extensions + @${MKDIR} ${STAGEDIR}${PREFIX}/share/bash-completion/completions + ${INSTALL_SCRIPT} ${WRKSRC}/*.bash \ + ${STAGEDIR}${PREFIX}/libexec/password-store/extensions + ${INSTALL_DATA} ${WRKSRC}/completion/pass-coffin.bash-completion \ + ${STAGEDIR}${PREFIX}/share/bash-completion/completions + +post-install-DOCS-on: + @${MKDIR} ${STAGEDIR}${DOCSDIR} + ${INSTALL_DATA} ${WRKSRC}/README.html ${STAGEDIR}${DOCSDIR}/ + +.include diff --git a/sysutils/pass-coffin/distinfo b/sysutils/pass-coffin/distinfo new file mode 100644 index 000000000000..2228b8d2237a --- /dev/null +++ b/sysutils/pass-coffin/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1707729432 +SHA256 (ayushnix-pass-coffin-v1.2.1_GH0.tar.gz) = bca41b9c9dc3525ddfccef31baef2c61366a968c43ee841c3b6c6934e3263fbe +SIZE (ayushnix-pass-coffin-v1.2.1_GH0.tar.gz) = 20242 diff --git a/sysutils/pass-coffin/pkg-descr b/sysutils/pass-coffin/pkg-descr new file mode 100644 index 000000000000..3559ac6ff539 --- /dev/null +++ b/sysutils/pass-coffin/pkg-descr @@ -0,0 +1,10 @@ +pass-coffin is a pass extension that hides password store data inside a GPG +encrypted file, which we'll call a coffin. + +Because of how pass works, directory and file names aren't encrypted by default +and anyone who has access to your computer can see which websites you use and +your usernames on those websites. This is different from how password managers +like keepassxc work by keeping your entire password store database inside an +encrypted file and can also automatically lock access to the application itself +after a certain amount of time. pass-coffin has been created to provide these +missing features to pass. diff --git a/sysutils/pass-coffin/pkg-message b/sysutils/pass-coffin/pkg-message new file mode 100644 index 000000000000..de55558b937f --- /dev/null +++ b/sysutils/pass-coffin/pkg-message @@ -0,0 +1,20 @@ +[ +{ type: install + message: <ʼ. +For more details, please read the "EXTENDED GIT EXAMPLE" section of the man +page of pass. +EOM +} +] diff --git a/sysutils/pass-coffin/pkg-plist b/sysutils/pass-coffin/pkg-plist new file mode 100644 index 000000000000..47b80e51379a --- /dev/null +++ b/sysutils/pass-coffin/pkg-plist @@ -0,0 +1,6 @@ +libexec/password-store/extensions/close.bash +libexec/password-store/extensions/coffin.bash +libexec/password-store/extensions/open.bash +libexec/password-store/extensions/timer.bash +share/bash-completion/completions/pass-coffin.bash-completion +%%PORTDOCS%%%%DOCSDIR%%/README.html