diff options
author | Fredrick Brennan | 2023-06-21 01:50:03 -0400 |
---|---|---|
committer | Fredrick Brennan | 2023-06-21 01:53:50 -0400 |
commit | 724f305e6f8c9df9213850ad319ca5ef225d7add (patch) | |
tree | 759507c92d267bbbebbccdb3a4d490f3b561666a | |
parent | 20b3c93d780ff07589b0e5acff2795664d8e420e (diff) | |
download | aur-724f305e6f8c9df9213850ad319ca5ef225d7add.tar.gz |
v0.0.20 pkgrel 5
Adds a check for all the envvars the package uses.
-rw-r--r-- | .SRCINFO | 28 | ||||
-rw-r--r-- | .gitignore | 2 | ||||
-rw-r--r-- | PKGBUILD | 57 | ||||
-rwxr-xr-x | sensible-envvars | 9 | ||||
-rw-r--r-- | sensible-utils.install | 24 |
5 files changed, 88 insertions, 32 deletions
@@ -1,49 +1,55 @@ pkgbase = sensible-utils pkgdesc = Utilities for sensible alternative selection pkgver = 0.0.20 - pkgrel = 4 + pkgrel = 5 url = http://packages.debian.org/source/sid/sensible-utils arch = any license = GPL checkdepends = ed checkdepends = dash makedepends = po4a + makedepends = findutils depends = bash depends = coreutils source = sensible-utils_0.0.20_.tar.xz::http://ftp.debian.org/debian/pool/main/s/sensible-utils/sensible-utils_0.0.20.tar.xz source = sensible-utils_0.0.20_.dsc::http://ftp.debian.org/debian/pool/main/s/sensible-utils/sensible-utils_0.0.20.dsc + source = sensible-utils.install + source = sensible-envvars validpgpkeys = 5D0187B940A245BAD7B0F56A003A1A2DAA41085F b2sums = e65419e7f157f64249b429806a4d48c02c5f492fb2dbdae1a8e4966dca964a4b1b9b6fdb555f03fabb6cd219238022821a64b15f11582ffdf115fa15ab6e3e0e b2sums = 8b122921916df3f4c138b99ac5183cae686e01be985db0ad2c77e3faff619779aecc596c6936c9f73f73ff3c73cf5ce30654df9158ce15caccd4ed0e0f50de09 + b2sums = 7ce44eb32d7630155bdf0b6bb0dcb7263c74c5d7050ace953559efdb97448b8105d971c0b721ce34033cda3f32263e524ebfded39a6b7a02652a73bc29d46b98 + b2sums = 8a213b98cc6d432af30ecf58d91ae88f151f2824274702f7e1bde6119b45effc4a0b15907459c9f8f1ee5af94de862e6dec579b4f07d168aaa658443764a1f19 -pkgname = sensible-browser +pkgname = sensible-utils + pkgdesc = Utilities for sensible alternative selection (metapackage) + install = sensible-utils.install depends = bash depends = coreutils + depends = sensible-browser + depends = sensible-editor + depends = sensible-pager + depends = sensible-terminal depends = sensible-utils-data -pkgname = sensible-editor +pkgname = sensible-browser depends = bash depends = coreutils depends = sensible-utils-data -pkgname = sensible-pager +pkgname = sensible-editor depends = bash depends = coreutils depends = sensible-utils-data -pkgname = sensible-terminal +pkgname = sensible-pager depends = bash depends = coreutils depends = sensible-utils-data -pkgname = sensible-utils - pkgdesc = Utilities for sensible alternative selection (metapackage) +pkgname = sensible-terminal depends = bash depends = coreutils - depends = sensible-browser - depends = sensible-editor - depends = sensible-pager - depends = sensible-terminal depends = sensible-utils-data pkgname = sensible-utils-data diff --git a/.gitignore b/.gitignore index 322cb7cbd2b4..7b2892ca5e07 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,5 @@ !/.SRCINFO !/PKGBUILD !/sensible-utils*.asc +!/*.install +!/sensible-envvars @@ -4,30 +4,37 @@ # Contributor: Brian BIdulock <bidulock@openss7.org> pkgbase=sensible-utils -_pkgname='sensible-browser sensible-editor sensible-pager sensible-terminal' -declare -g -a pkgname=($_pkgname) -pkgname+=(sensible-utils sensible-utils-data) +pkgname=(sensible-utils sensible-browser sensible-editor sensible-pager sensible-terminal sensible-utils-data) +# This is the above minus the pkgbase name, for use in sensible-utils packaging command. +_pkgname=(sensible-browser sensible-editor sensible-pager sensible-terminal sensible-utils-data) pkgver=0.0.20 -_debianextra='' -pkgrel=4 +_debianextra='' # Do not remove even if empty as sometimes Debian puts e.g. +1, their version of a pkgrel. +pkgrel=5 pkgdesc="Utilities for sensible alternative selection" arch=('any') url="http://packages.debian.org/source/sid/sensible-utils" license=('GPL') depends=('bash' 'coreutils') -makedepends=('po4a') -checkdepends=('ed' 'dash') +makedepends=('po4a' + # for xargs + 'findutils') +checkdepends=('ed' + # see comment in check() function + 'dash') _dirname=${pkgbase}_${pkgver}_$pkgrel_${_debianextra} source=("$_dirname.tar.xz::http://ftp.debian.org/debian/pool/main/s/$pkgbase/${pkgbase}_${pkgver}${_debianextra}.tar.xz" - "$_dirname.dsc::http://ftp.debian.org/debian/pool/main/s/$pkgbase/${pkgbase}_${pkgver}${_debianextra}.dsc") + "$_dirname.dsc::http://ftp.debian.org/debian/pool/main/s/$pkgbase/${pkgbase}_${pkgver}${_debianextra}.dsc" + sensible-utils.install + sensible-envvars) +# (n)vim command to regenerate: +# :'<,'>! makepkg --geninteg 2>&1 | perl -pe '$_=~s/^[\s]*(==>|->).*//g; $_=~s/^[\s]*$//d' b2sums=('e65419e7f157f64249b429806a4d48c02c5f492fb2dbdae1a8e4966dca964a4b1b9b6fdb555f03fabb6cd219238022821a64b15f11582ffdf115fa15ab6e3e0e' - '8b122921916df3f4c138b99ac5183cae686e01be985db0ad2c77e3faff619779aecc596c6936c9f73f73ff3c73cf5ce30654df9158ce15caccd4ed0e0f50de09') + '8b122921916df3f4c138b99ac5183cae686e01be985db0ad2c77e3faff619779aecc596c6936c9f73f73ff3c73cf5ce30654df9158ce15caccd4ed0e0f50de09' + '7ce44eb32d7630155bdf0b6bb0dcb7263c74c5d7050ace953559efdb97448b8105d971c0b721ce34033cda3f32263e524ebfded39a6b7a02652a73bc29d46b98' + '8a213b98cc6d432af30ecf58d91ae88f151f2824274702f7e1bde6119b45effc4a0b15907459c9f8f1ee5af94de862e6dec579b4f07d168aaa658443764a1f19') +# Bastien ROUCARIÈS <rouca@debian.org> validpgpkeys=('5D0187B940A245BAD7B0F56A003A1A2DAA41085F') -prepare() { - return 0 -} - build() { cd ${pkgbase}-${pkgver}${_debianextra} export -n EDITOR VISUAL PAGER TERMINAL_EMULATOR BROWSER @@ -35,21 +42,26 @@ build() { make } +# This trick is needed as the fork-bomb test only works if /bin/sh == /bin/dash, +# which it isn't on Arch but is on Debian! check() { cd ${pkgbase}-${pkgver}${_debianextra} - test -L sh || ln -s /bin/dash sh OLDPATH="$PATH" - export PATH=.:"$PATH" + TEMPDIR=`mktemp -d` + >&2 echo Made tempdir "$TEMPDIR". + ln -s /bin/dash "$TEMPDIR/sh" + export PATH="$TEMPDIR:$PATH" sed -i -e 's@#!/bin/sh@#!/usr/bin/env sh@' ./sensible-editor - env -i make -k check + env -i make check sed -i -e 's@#!/usr/bin/env sh@#!/bin/sh@' ./sensible-editor export PATH="$OLDPATH" + rm -rv "$TEMPDIR" } _package_sensible() { cd ${pkgbase}-${pkgver}${_debianextra} pkgdesc="$pkgdesc (${pkgname##*-})" - export -n EDITOR VISUAL + export -n EDITOR VISUAL PAGER TERMINAL_EMULATOR BROWSER make DESTDIR="$pkgdir/" install shopt -s globstar cd "$pkgdir" @@ -82,10 +94,13 @@ package_sensible-utils-data() { } package_sensible-utils() { + shopt -s extglob + local rms + rms='!(sensible-utils)' pkgdesc="$pkgdesc (metapackage)" - depends+=($_pkgname sensible-utils-data) - mkdir -p "$pkgdir/usr/share/sensible-utils" - echo 1 > "$pkgdir/usr/share/sensible-utils/.ARCH" + depends+=(${_pkgname[@]}) + install=sensible-utils.install + install -Dm0755 "$srcdir/sensible-envvars" "$pkgdir/usr/share/sensible-utils/sensible-envvars" } -# vim:set ts=2 sw=2 et: +# vim:set syntax=bash ts=2 sw=2 et: diff --git a/sensible-envvars b/sensible-envvars new file mode 100755 index 000000000000..7c9fb96944b3 --- /dev/null +++ b/sensible-envvars @@ -0,0 +1,9 @@ +#!/bin/bash +declare -g -A SENSIBLEENVVARS + +SENSIBLEENVVARS=([sensible-browser]=BROWSER + [sensible-editor]=EDITOR + [sensible-pager]=PAGER + [sensible-terminal]=TERMINAL_EMULATOR) + +# vim:set ts=2 sw=2 et: diff --git a/sensible-utils.install b/sensible-utils.install new file mode 100644 index 000000000000..395f4549dd3e --- /dev/null +++ b/sensible-utils.install @@ -0,0 +1,24 @@ +#!/bin/bash + +source /usr/share/sensible-utils/sensible-envvars + +post_install() { + for cmd in ${!SENSIBLEENVVARS[*]}; do + local cmdpath + cmdpath="$(which $cmd)" + [[ -n "$cmdpath" ]] || continue + local envvar + envvar="${SENSIBLEENVVARS["$cmd"]}" + if [[ -z "$envvar" ]]; then + continue + fi + [[ -z "${!envvar}" ]] && echo "$cmdpath requires $envvar be set in the environment to work properly!" + done +} + +post_upgrade() { + post_install "$@" +} + +# vim:set ts=2 sw=2 et: + |