Subject: [alpine-aports] [PATCH] testing/secpwgen: new aport

From: Stuart Cardall <[email-masked]>
Date: Tue, 21 Jul 2015 23:43:30 +0000

A utility for generating secure passphrases. Implements several methods for
passphrase generation, including the Diceware method with 8192 word dictionary
compiled in the executable.

http://linux.die.net/man/1/secpwgen

As it builds against OpenSSL you need to run haveged if you use this.

Used in OpenSUSE & Midnight BSD.
---
 testing/secpwgen/APKBUILD           | 57 +++++++++++++++++++++++++++++++++++++
 testing/secpwgen/make-openssl.patch | 33 +++++++++++++++++++++
 2 files changed, 90 insertions(+)
 create mode 100644 testing/secpwgen/APKBUILD
 create mode 100644 testing/secpwgen/make-openssl.patch

diff --git a/testing/secpwgen/APKBUILD b/testing/secpwgen/APKBUILD
new file mode 100644
index 0000000..7862a26
--- /dev/null
+++ b/testing/secpwgen/APKBUILD
@@ -0,0 +1,57 @@
+# Contributor: Stuart Cardall <[email-masked]>
+# Maintainer: Stuart Cardall <[email-masked]>
+pkgname=secpwgen
+pkgver=1.3
+pkgrel=0
+pkgdesc="secure password generator"
+url="http://zvrba.net/"
+arch="all"
+license="MIT"
+depends=""
+depends_dev="openssl-dev"
+makedepends="$depends_dev"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/itoffshore/$pkgname/archive/v$pkgver.tar.gz
+	make-openssl.patch
+	"
+
+_builddir="$srcdir"/$pkgname-$pkgver
+prepare() {
+	local i
+	cd "$_builddir"
+	for i in $source; do
+		case $i in
+		*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+		esac
+	done
+}
+
+build() {
+	cd "$_builddir"
+	mv Makefile.proto Makefile || return 1
+	make || return 1
+}
+
+package() {
+	cd "$_builddir"
+	mkdir -p "$pkgdir"/usr/bin
+	mkdir -p "$pkgdir"/usr/share/man/man1
+	install -m 755 secpwgen "$pkgdir"/usr/bin || return 1
+	install -m 644 secpwgen.1 "$pkgdir"/usr/share/man/man1 || return 1
+	# post-install message
+        mkdir -p "$pkgdir/usr/share/doc/$pkgname"
+        cat > $pkgdir/usr/share/doc/$pkgname/README.alpine <<EOF
+To increase entropy in your system:
+-----------------------------------
+apk add haveged
+rc-update add haveged
+rc-service haveged start
+EOF
+}
+
+md5sums="c53da1931bb480e77691c7602fc28408  secpwgen-1.3.tar.gz
+0b54c4a66ae423d3f7f28b8f091f071a  make-openssl.patch"
+sha256sums="ae2e33db5c94a18d55ad50563b026f3aecd9d4f6ebb19b2dcc9a68625fd1f509  secpwgen-1.3.tar.gz
+8b8a3b308eb75de5c54e8da0677280ef326f256c18c5e5ac816723d969e3f95a  make-openssl.patch"
+sha512sums="a18b5405ae5f6a62c25dd61654ea897b2f099fa459530bc6cfdbe79d96bfa6b4943e4ba2456ad5355d37cababe585299638afe56ff1a9fc649b6df0b7aa1e269  secpwgen-1.3.tar.gz
+d9e4f84ab0d557ecc4c57152ea78fd2c610f36d2ea4ae87f690944ac454497cb450e693ab4726209b58ade32e3c1f6f2bb74fec47b2a766e68eed56bfcfbc8d0  make-openssl.patch"
diff --git a/testing/secpwgen/make-openssl.patch b/testing/secpwgen/make-openssl.patch
new file mode 100644
index 0000000..f1de454
--- /dev/null
+++ b/testing/secpwgen/make-openssl.patch
@@ -0,0 +1,33 @@
+--- secpwgen-1.3/Makefile.proto	2015-07-21 20:15:10.000000000 +0000
++++ secpwgen-1.3/Makefile.proto.new	2015-07-21 22:03:47.511905311 +0000
+@@ -30,9 +30,9 @@
+ ##
+ # If using OpenSSL, uncomment the following 3 lines.
+ ##
+-#CRYPTO_CFLAGS =
+-#CRYPTO_OBJS   = secure_random_openssl.o
+-#CRYPTO_LIBS   = -lcrypto
++CRYPTO_CFLAGS =
++CRYPTO_OBJS   = secure_random_openssl.o
++CRYPTO_LIBS   = -lcrypto
+ 
+ ##
+ # If using cryptlib, uncomment the following 3 lines.
+@@ -45,7 +45,7 @@
+ # Change PREFIX to install to different directories. The binary is installed
+ # in $PREFIX/bin, and the man in $PREFIX/man/man1
+ ##
+-PREFIX = /usr/local
++PREFIX = /usr
+ 
+ ##
+ # On some operating systems (most notably Linux 2.6 kernels) using mlockall
+@@ -60,7 +60,7 @@ PREFIX = /usr/local
+ # Sometimes you have only dynamic libraries available. In that case COMMENT
+ # the following line.
+ ##
+-LINK_STATIC = -static
++#LINK_STATIC = -static
+ 
+ ##############################################################################
+ # NO USER MODIFIABLE PARTS AFTER THIS POINT
-- 
2.4.6

---
Unsubscribe:  [email-masked]
Help:         [email-masked]
---