sshyp-mfa - Partial packaging parity with sshyp v1.4.2

This commit is contained in:
2023-05-08 09:03:52 -04:00
parent 0953f60d0b
commit d4ed9b0da1
+61 -42
View File
@@ -17,15 +17,21 @@ _create_generic() {
cp -r share output/generictemp/usr/ cp -r share output/generictemp/usr/
cp extra/manpage output/generictemp/usr/share/man/man1/sshyp-mfa.1 cp extra/manpage output/generictemp/usr/share/man/man1/sshyp-mfa.1
gzip output/generictemp/usr/share/man/man1/sshyp-mfa.1 gzip output/generictemp/usr/share/man/man1/sshyp-mfa.1
XZ_OPT=-e6 tar -C output/generictemp -cvJf output/sshyp-mfa-"$version".tar.xz usr/ XZ_OPT=-e6 tar -C output/generictemp -cvJf output/GENERIC-sshyp-mfa-"$version".tar.xz usr/
rm -rf output/generictemp rm -rf output/generictemp
sha512="$(sha512sum output/sshyp-mfa-"$version".tar.xz | awk '{print $1;}')" sha512="$(sha512sum output/GENERIC-sshyp-mfa-"$version".tar.xz | awk '{print $1;}')"
printf '\ngeneric packaging complete\n\n' printf '\ngeneric packaging complete\n\n'
} && } &&
_create_pkgbuild() { _create_pkgbuild() {
local source='https://github.com/rwinkhart/sshyp-labs/releases/download/v$pkgver/sshyp-mfa-$pkgver.tar.xz'
printf '\ngenerating PKGBUILD...\n' printf '\ngenerating PKGBUILD...\n'
if [ "$1" = 'Deb' ]; then
local source='https://github.com/rwinkhart/sshyp-labs/releases/download/v"$pkgver"/UBUNTU-sshyp-mfa_"$pkgver"-"$pkgrel"_all.deb'
local decomp_target='data.tar.xz'
else
local source='https://github.com/rwinkhart/sshyp-labs/releases/download/v"$pkgver"/GENERIC-sshyp-mfa-"$pkgver".tar.xz'
local decomp_target='GENERIC-sshyp-"$pkgver".tar.xz'
fi
printf "# Maintainer: Randall Winkhart <idgr at tutanota dot com> printf "# Maintainer: Randall Winkhart <idgr at tutanota dot com>
pkgname=sshyp-mfa pkgname=sshyp-mfa
pkgver="$version" pkgver="$version"
@@ -40,7 +46,7 @@ sha512sums=('"$sha512"')
package() { package() {
tar xf sshyp-mfa-"\"\$pkgver\"".tar.xz -C "\"\${pkgdir}\"" tar -xf $decomp_target -C "\"\${pkgdir}\""
} }
" > output/PKGBUILD " > output/PKGBUILD
@@ -48,8 +54,19 @@ package() {
} && } &&
_create_apkbuild() { _create_apkbuild() {
local source='https://github.com/rwinkhart/sshyp-labs/releases/download/v$pkgver/sshyp-mfa-$pkgver.tar.xz'
printf '\ngenerating APKBUILD...\n' printf '\ngenerating APKBUILD...\n'
if [ "$1" = 'Deb' ]; then
local source="https://github.com/rwinkhart/sshyp-labs/releases/download/v\"\$pkgver\"/UBUNTU-sshyp-mfa_\"\$pkgver\"-"$revision"_all.deb"
local sumsname="UBUNTU-sshyp-mfa_\"\$pkgver\"-"$revision"_all.deb"
local processing='mkdir -p "$pkgdir"
7z x "$srcdir"/* -o"$srcdir"
tar -xf "$srcdir"/data.tar -C "$pkgdir"
else
local source='https://github.com/rwinkhart/sshyp-labs/releases/download/v"$pkgver"/GENERIC-sshyp-mfa-"$pkgver".tar.xz'
local sumsname='GENERIC-sshyp-"$pkgver".tar.xz'
local processing='mkdir -p "$pkgdir"
cp -r "$srcdir/usr/" "$pkgdir"'
fi
printf "# Maintainer: Randall Winkhart <idgr@tutanota.com> printf "# Maintainer: Randall Winkhart <idgr@tutanota.com>
pkgname=sshyp-mfa pkgname=sshyp-mfa
pkgver="$version" pkgver="$version"
@@ -63,12 +80,11 @@ depends='sshyp'
source=\""$source"\" source=\""$source"\"
package() { package() {
mkdir -p "\"\$pkgdir\"" $processing
cp -r "\"\$srcdir/usr/"\" "\"\$pkgdir\""
} }
sha512sums=\" sha512sums=\"
"$sha512' 'sshyp-mfa-\"\$pkgver\".tar.xz" "$sha512" "$sumsname"
\" \"
" > output/APKBUILD " > output/APKBUILD
printf '\nAPKBUILD generated\n\n' printf '\nAPKBUILD generated\n\n'
@@ -111,10 +127,10 @@ urls {
cp extra/manpage output/haikutemp/documentation/man/man1/sshyp-mfa.1 cp extra/manpage output/haikutemp/documentation/man/man1/sshyp-mfa.1
gzip output/haikutemp/documentation/man/man1/sshyp-mfa.1 gzip output/haikutemp/documentation/man/man1/sshyp-mfa.1
cd output/haikutemp cd output/haikutemp
package create -b sshyp-mfa-"$version"-"$revision"_all.hpkg package create -b HAIKU-sshyp-mfa-"$version"-"$revision"_all.hpkg
package add sshyp-mfa-"$version"-"$revision"_all.hpkg bin lib documentation package add HAIKU-sshyp-mfa-"$version"-"$revision"_all.hpkg bin lib documentation
cd ../.. cd ../..
mv output/haikutemp/sshyp-mfa-"$version"-"$revision"_all.hpkg output/ mv output/haikutemp/HAIKU-sshyp-mfa-"$version"-"$revision"_all.hpkg output/
rm -rf output/haikutemp rm -rf output/haikutemp
printf "\nHaiku packaging complete\n\n" printf "\nHaiku packaging complete\n\n"
} && } &&
@@ -140,9 +156,10 @@ Installed-Size: 100
cp -r share output/debiantemp/sshyp-mfa_"$version"-"$revision"_all/usr/ cp -r share output/debiantemp/sshyp-mfa_"$version"-"$revision"_all/usr/
cp extra/manpage output/debiantemp/sshyp-mfa_"$version"-"$revision"_all/usr/share/man/man1/sshyp-mfa.1 cp extra/manpage output/debiantemp/sshyp-mfa_"$version"-"$revision"_all/usr/share/man/man1/sshyp-mfa.1
gzip output/debiantemp/sshyp-mfa_"$version"-"$revision"_all/usr/share/man/man1/sshyp-mfa.1 gzip output/debiantemp/sshyp-mfa_"$version"-"$revision"_all/usr/share/man/man1/sshyp-mfa.1
dpkg-deb --build --root-owner-group output/debiantemp/sshyp-mfa_"$version"-"$revision"_all/ dpkg-deb --build --root-owner-group -z6 -Sextreme -Zxz output/debiantemp/sshyp-mfa_"$version"-"$revision"_all/
mv output/debiantemp/sshyp-mfa_"$version"-"$revision"_all.deb output/ mv output/debiantemp/sshyp-mfa_"$version"-"$revision"_all.deb output/UBUNTU-sshyp_"$version"-"$revision"_all.deb
rm -rf output/debiantemp rm -rf output/debiantemp
sha512="$(sha512sum output/UBUNTU-sshyp-mfa_"$version"-"$revision"_all.deb | awk '{print $1;}')"
printf '\nDebian/Ubuntu packaging complete\n\n' printf '\nDebian/Ubuntu packaging complete\n\n'
} && } &&
@@ -168,7 +185,7 @@ Installed-Size: 100
cp extra/manpage output/termuxtemp/sshyp-mfa_"$version"-"$revision"_all_termux/data/data/com.termux/files/usr/share/man/man1/sshyp-mfa.1 cp extra/manpage output/termuxtemp/sshyp-mfa_"$version"-"$revision"_all_termux/data/data/com.termux/files/usr/share/man/man1/sshyp-mfa.1
gzip output/termuxtemp/sshyp-mfa_"$version"-"$revision"_all_termux/data/data/com.termux/files/usr/share/man/man1/sshyp-mfa.1 gzip output/termuxtemp/sshyp-mfa_"$version"-"$revision"_all_termux/data/data/com.termux/files/usr/share/man/man1/sshyp-mfa.1
dpkg-deb --build --root-owner-group output/termuxtemp/sshyp-mfa_"$version"-"$revision"_all_termux/ dpkg-deb --build --root-owner-group output/termuxtemp/sshyp-mfa_"$version"-"$revision"_all_termux/
mv output/termuxtemp/sshyp-mfa_"$version"-"$revision"_all_termux.deb output/ mv output/termuxtemp/sshyp-mfa_"$version"-"$revision"_all_termux.deb output/TERMUX-sshyp_"$version"-"$revision"_all.deb
rm -rf output/termuxtemp rm -rf output/termuxtemp
printf '\nTermux packaging complete\n\n' printf '\nTermux packaging complete\n\n'
} && } &&
@@ -177,7 +194,11 @@ _create_rpm() {
printf '\npackaging for Fedora...\n' printf '\npackaging for Fedora...\n'
rm -rf ~/rpmbuild rm -rf ~/rpmbuild
rpmdev-setuptree rpmdev-setuptree
cp output/sshyp-mfa-"$version".tar.xz ~/rpmbuild/SOURCES mkdir -p output/fedoratemp/usr/bin \
output/fedoratemp/usr/lib/sshyp/extensions \
mkdir -p output/fedoratemp/usr/bin \
output/fedoratemp/usr/lib/sshyp \
output/fedoratemp/usr/share/man/man1
printf "Name: sshyp-mfa printf "Name: sshyp-mfa
Version: "$version" Version: "$version"
Release: "$revision" Release: "$revision"
@@ -185,22 +206,29 @@ Summary: An MFA (TOTP/Steam) key generator for the sshyp password manager
BuildArch: noarch BuildArch: noarch
License: GPL-3.0-only License: GPL-3.0-only
URL: https://github.com/rwinkhart/sshyp-labs URL: https://github.com/rwinkhart/sshyp-labs
Source0: sshyp-mfa-"$version".tar.xz Source0: GENERIC-FEDORA-sshyp-mfa-"$version".tar.xz
Requires: sshyp Requires: sshyp
%description %%description
sshyp-mfa is an extension for the sshyp password manager that reads MFA data from sshyp entries and generates generic TOTP and Steam keys. sshyp-mfa is an extension for the sshyp password manager that reads MFA data from sshyp entries and generates generic TOTP and Steam keys.
%install %%install
tar xf %{_sourcedir}/sshyp-mfa-"$version".tar.xz -C %{_sourcedir} tar xf %%{_sourcedir}/GENERIC-FEDORA-sshyp-mfa-"$version".tar.xz -C %%{_sourcedir}
cp -r %{_sourcedir}/usr %{buildroot} cp -r %%{_sourcedir}/usr %%{buildroot}
%files %%files
/usr/bin/sshyp-mfa /usr/bin/sshyp-mfa
/usr/lib/sshyp/sshyp-mfa.py /usr/lib/sshyp/sshyp-mfa.py
/usr/lib/sshyp/extensions/sshyp-mfa /usr/lib/sshyp/extensions/sshyp-mfa
%license /usr/share/licenses/sshyp-mfa/license %%license /usr/share/licenses/sshyp-mfa/license
%doc /usr/share/man/man1/sshyp-mfa.1.gz %%doc /usr/share/man/man1/sshyp-mfa.1.gz
" > ~/rpmbuild/SPECS/sshyp-mfa.spec " > ~/rpmbuild/SPECS/sshyp-mfa.spec
ln -s /usr/lib/sshyp/sshyp-mfa.py output/fedoratemp/usr/bin/sshyp-mfa
cp -r share output/fedoratemp/usr/
cp extra/manpage output/fedoratemp/usr/share/man/man1/sshyp-mfa.1
gzip output/fedoratemp/usr/share/man/man1/sshyp-mfa.1
XZ_OPT=-e6 tar -C output/fedoratemp -cvJf output/GENERIC-FEDORA-sshyp-mfa-"$version".tar.xz usr/
rm -rf output/fedoratemp
cp output/GENERIC-FEDORA-sshyp-mfa-"$version".tar.xz ~/rpmbuild/SOURCES
rpmbuild -bb ~/rpmbuild/SPECS/sshyp-mfa.spec rpmbuild -bb ~/rpmbuild/SPECS/sshyp-mfa.spec
mv ~/rpmbuild/RPMS/noarch/* output/ mv ~/rpmbuild/RPMS/noarch/sshyp-mfa-"$version"-"$revision".noarch.rpm output/FEDORA-sshyp-mfa-"$version"-"$revision".noarch.rpm
rm -rf ~/rpmbuild rm -rf ~/rpmbuild
printf '\nFedora packaging complete\n\n' printf '\nFedora packaging complete\n\n'
} && } &&
@@ -238,21 +266,19 @@ cp -r share output/freebsdtemp/usr/
cp extra/manpage output/freebsdtemp/usr/share/man/man1/sshyp-mfa.1 cp extra/manpage output/freebsdtemp/usr/share/man/man1/sshyp-mfa.1
gzip output/freebsdtemp/usr/share/man/man1/sshyp-mfa.1 gzip output/freebsdtemp/usr/share/man/man1/sshyp-mfa.1
pkg create -m output/freebsdtemp/ -r output/freebsdtemp/ -p output/freebsdtemp/plist -o output/ pkg create -m output/freebsdtemp/ -r output/freebsdtemp/ -p output/freebsdtemp/plist -o output/
mv output/sshyp-mfa-"$version".pkg output/FREEBSD-sshyp-mfa-"$version"-"$revision".pkg
rm -rf output/freebsdtemp rm -rf output/freebsdtemp
printf '\nFreeBSD packaging complete\n\n' printf '\nFreeBSD packaging complete\n\n'
} && } &&
case "$1" in case "$1" in
generic)
_create_generic
;;
pkgbuild) pkgbuild)
_create_generic _create_deb
_create_pkgbuild _create_pkgbuild Deb
;; ;;
apkbuild) apkbuild)
_create_generic _create_deb
_create_apkbuild _create_apkbuild Deb
;; ;;
haiku) haiku)
_create_hpkg _create_hpkg
@@ -264,22 +290,15 @@ case "$1" in
_create_termux _create_termux
;; ;;
fedora) fedora)
_create_generic
_create_rpm _create_rpm
;; ;;
freebsd) freebsd)
_create_freebsd_pkg _create_freebsd_pkg
;; ;;
buildable-arch) buildable-arch)
_create_generic _create_deb
_create_pkgbuild _create_pkgbuild Deb
_create_apkbuild _create_apkbuild Deb
case "$(pacman -Q dpkg)" in
dpkg*)
_create_deb
_create_termux
;;
esac
case "$(pacman -Q freebsd-pkg)" in case "$(pacman -Q freebsd-pkg)" in
freebsd-pkg*) freebsd-pkg*)
_create_freebsd_pkg _create_freebsd_pkg
@@ -287,6 +306,6 @@ case "$1" in
esac esac
;; ;;
*) *)
printf '\nusage: package.sh [target] <revision>\n\ntargets:\n mainline: pkgbuild apkbuild haiku fedora debian\n experimental: freebsd termux\n other: buildable-arch\n\n' printf '\nusage: package.sh [target] <revision>\n\ntargets:\n mainline: pkgbuild apkbuild fedora debian haiku freebsd\n experimental: termux\n groups: buildable-arch\n\n'
;; ;;
esac esac