Commit 6352cbf5 authored by Jakub Jirutka's avatar Jakub Jirutka
Browse files

main/zsh: remove -completion subpkg, clean-up completions

parent e25b90eb
# Contributor: <kalonji@gmail.com> # Contributor: <kalonji@gmail.com>
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=zsh pkgname=zsh
pkgver=5.2 pkgver=5.2
pkgrel=2 pkgrel=3
pkgdesc="A very advanced and programmable command interpreter (shell)" pkgdesc="A very advanced and programmable command interpreter (shell)"
url="http://www.zsh.org/" url="http://www.zsh.org/"
arch="all" arch="all"
...@@ -15,22 +16,57 @@ source="http://www.zsh.org/pub/$pkgname-$pkgver.tar.xz ...@@ -15,22 +16,57 @@ source="http://www.zsh.org/pub/$pkgname-$pkgver.tar.xz
fix-zle-segfault.patch fix-zle-segfault.patch
fix-oom-fatal-error.patch fix-oom-fatal-error.patch
fix-vcs_info.patch" fix-vcs_info.patch"
subpackages="$pkgname-doc $pkgname-calendar $pkgname-completion $pkgname-vcs subpackages="$pkgname-doc $pkgname-calendar $pkgname-vcs $pkgname-zftp"
$pkgname-zftp"
builddir="$srcdir/$pkgname-$pkgver" builddir="$srcdir/$pkgname-$pkgver"
_libdir="usr/lib/zsh/$pkgver" _libdir="usr/lib/zsh/$pkgver"
_sharedir="usr/share/zsh/$pkgver" _sharedir="usr/share/zsh/$pkgver"
# Move some bigger completion files to subpackages.
_comps="android-tools:Unix/_adb
bzr:Unix/_bzr
cvs:Unix/_cvs
gcc:Unix/_gcc
git:Unix/_git
graphicsmagick:Unix/_graphicsmagick
imagemagick:Unix/_imagemagick
lynx:Unix/_lynx
mercurial:Unix/_hg
rsync:Unix/_rsync
subversion:Unix/_subversion
tmux:Unix/_tmux
zfs:Unix/_zfs*:Unix/_zpool"
for _i in $_comps; do
subpackages="$subpackages ${_i%%:*}-zsh-completion:_completion"
done
prepare() { prepare() {
cd "$builddir" cd "$builddir"
default_prepare || return 1 default_prepare || return 1
update_config_sub || return 1 update_config_sub || return 1
# Remove completions that are useless on Alpine. # Remove completions for other systems.
cd Completion cd Completion
rm -Rf AIX BSD Cygwin Darwin Debian Mandriva Redhat Solaris openSUSE rm -Rf AIX BSD Cygwin Darwin Debian Mandriva Redhat Solaris openSUSE
# Remove completions for programs that are not available on Alpine
# (just to decrease size of the package).
cd Unix/Command
rm -f _aap _apm _baz _bittorrent _bpython _ccal _cdcd _chkconfig _clay \
_cowsay _cplay _cssh _darcs _devtodo _dict _dsh _elfdump _elm \
_enscript _finger _flasher _fsh _gnupod _guilt _initctl _lzop \
_mencal _module _monotone _moosic _mysqldiff _nkf \
_pack _pax _perforce _pine _pkgadd _pkginfo _pkgrm _prcs \
_quilt _raggle _rcs _rlogin _rubber _sablotron _sisu _socket \
_stgit _surfraw _tardy _telnet _tin _tla _topgit _totd _twidge \
_unace _unison _units _uzbl _vcsh _vux _wiggle _xmms2 _yodl
cd ../../Linux/Command
rm -f _acpitool _mondo _tpb _tpconfig _uml _vserver
cd ../../X/Command
rm -f _acroread _dcop _gnome-gv _gqview _gv _kfmclient _matlab \
_nautilus _netscape _okular _qiv _vnc _xfig _xloadimage \
_xournal _xv _xwit
} }
build() { build() {
...@@ -73,19 +109,6 @@ calendar() { ...@@ -73,19 +109,6 @@ calendar() {
_submv $_sharedir/functions/Calendar _submv $_sharedir/functions/Calendar
} }
completion() {
pkgdesc="Base completions for ZSH"
arch="noarch"
depends="$pkgname"
local destdir="$subpkgdir/$_sharedir/functions/Completion"
cd "$pkgdir"
mkdir -p "$destdir"
find $_sharedir/functions/Completion/* -type d -prune \
-exec mv {} "$destdir"/ +
}
vcs() { vcs() {
pkgdesc="Version Control Information module for ZSH (vcs_info)" pkgdesc="Version Control Information module for ZSH (vcs_info)"
arch="noarch" arch="noarch"
...@@ -102,10 +125,26 @@ zftp() { ...@@ -102,10 +125,26 @@ zftp() {
_submv $_sharedir/functions/Zftp _submv $_sharedir/functions/Zftp
} }
_completion() {
local name="${subpkgname%-zsh-completion}"
pkgdesc="Zsh completions for $name"
arch="noarch"
depends="$pkgname"
install_if="$pkgname=$pkgver-r$pkgrel $name"
local files="$(printf '%s\n' $_comps \
| sed -En "s|^$name:(.*)|\1|p" | tr : ' ')"
test -n "$files" || { echo "$name not found in \$_comps" >&2; return 1; }
local f; for f in $files; do
_submv $_sharedir/functions/Completion/$f || return 1
done
}
_submv() { _submv() {
local path="$1" local path="$1"
mkdir -p "$subpkgdir"/${path%/*} mkdir -p "$subpkgdir"/${path%/*}
mv "$pkgdir"/$path "$subpkgdir"/$path mv "$pkgdir"/$path "$subpkgdir"/${path%/*}/
} }
md5sums="afe96fde08b70e23c1cab1ca7a68fb34 zsh-5.2.tar.xz md5sums="afe96fde08b70e23c1cab1ca7a68fb34 zsh-5.2.tar.xz
......
...@@ -9,10 +9,9 @@ if [ "$(apk version -t "$ver_old" "5.2-r2")" = "<" ]; then ...@@ -9,10 +9,9 @@ if [ "$(apk version -t "$ver_old" "5.2-r2")" = "<" ]; then
cat <<-EOF cat <<-EOF
* *
* Some modules has been moved into subpackages: * Some modules has been moved into subpackages:
* zsh-calendar calendar function system * zsh-calendar calendar function system
* zsh-completion completion functions * zsh-vcs version control information (vcs_info)
* zsh-vcs version control information (vcs_info) * zsh-zftp zftp function system
* zsh-zftp zftp function system
* *
EOF EOF
fi fi
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment