Initial Commit
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
name: zsh
|
||||
description: A powerful interactive shell
|
||||
version: 5.9
|
||||
url: https://www.zsh.org/
|
||||
license: custom
|
||||
architecture: any
|
||||
keep: etc/zsh/
|
||||
make_depends: texinfo,libcap,gdbm,libcap
|
||||
type: source
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
SHELL="/bin/zsh"
|
||||
|
||||
if ! grep "${SHELL}" "$BPM_ROOT"/etc/shells; then
|
||||
echo "${SHELL}" | tee -a "$BPM_ROOT"/etc/shells
|
||||
fi
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
SHELL="/bin/zsh"
|
||||
|
||||
if grep "${SHELL}" "$BPM_ROOT"/etc/shells; then
|
||||
sed -i "s|${SHELL}|d" "$BPM_ROOT"/etc/shells
|
||||
fi
|
||||
@@ -0,0 +1,33 @@
|
||||
# /etc/zprofile
|
||||
|
||||
# Function to easily append a directory to PATH
|
||||
append_path() {
|
||||
if [ -z "$1" ]; then
|
||||
return 1
|
||||
elif ! [ -d "$1" ]; then
|
||||
return 1
|
||||
fi
|
||||
export PATH="$PATH":"$1"
|
||||
}
|
||||
|
||||
# Appending paths
|
||||
append_path '/usr/sbin'
|
||||
append_path '/usr/local/bin'
|
||||
append_path '/usr/local/sbin'
|
||||
|
||||
# Source locale.conf
|
||||
if [ -f /etc/locale.conf ]; then
|
||||
set -a
|
||||
. /etc/locale.conf
|
||||
set +a
|
||||
fi
|
||||
|
||||
# Unsetting functions
|
||||
unset -f append_path
|
||||
|
||||
# Run /etc/zshrc if in an interactive terminal
|
||||
if [[ $- == *i* ]]
|
||||
then
|
||||
. /etc/zshrc
|
||||
fi
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
# /etc/zsh
|
||||
|
||||
# Setting zsh prompt if not in chroot
|
||||
if ! [ -f /tmp/is_chroot ]; then
|
||||
export PROMPT="[%n@%m %1~]$ "
|
||||
fi
|
||||
@@ -0,0 +1,46 @@
|
||||
# This is the source.sh script. It is executed by BPM in a temporary directory when compiling a source package
|
||||
# BPM Expects the source code to be extracted into the automatically created 'source' directory which can be accessed using $BPM_SOURCE
|
||||
# BPM Expects the output files to be present in the automatically created 'output' directory which can be accessed using $BPM_OUTPUT
|
||||
|
||||
DOWNLOAD="https://sourceforge.net/projects/zsh/files/zsh/${BPM_PKG_VERSION}/zsh-${BPM_PKG_VERSION}.tar.xz/download"
|
||||
FILENAME="${DOWNLOAD##*/}"
|
||||
|
||||
# The prepare function is executed in the root of the temp directory
|
||||
# This function is used for downloading files and putting them into the correct location
|
||||
prepare() {
|
||||
wget "$DOWNLOAD"
|
||||
tar -xvf "$FILENAME" --strip-components=1 -C "$BPM_SOURCE"
|
||||
}
|
||||
|
||||
# The build function is executed in the source directory
|
||||
# This function is used to compile the source code
|
||||
build() {
|
||||
sed -e 's/set_from_init_file/texinfo_&/' -i Doc/Makefile.in
|
||||
sed 's|/etc/z|/etc/zsh/z|g' -i Doc/*.*
|
||||
./configure --prefix=/usr --sysconfdir=/etc/zsh --enable-etcdir=/etc/zsh --enable-cap --enable-gdbm
|
||||
make
|
||||
|
||||
makeinfo Doc/zsh.texi --html -o Doc/html
|
||||
makeinfo Doc/zsh.texi --plaintext -o zsh.txt
|
||||
makeinfo Doc/zsh.texi --html --no-split --no-headers -o zsh.html
|
||||
}
|
||||
|
||||
# The check function is executed in the source directory
|
||||
# This function is used to run tests to verify the package has been compiled correctly
|
||||
check() {
|
||||
make check
|
||||
}
|
||||
|
||||
# The package function is executed in the source directory
|
||||
# This function is used to move the compiled files into the output directory
|
||||
package() {
|
||||
make DESTDIR="$BPM_OUTPUT" install
|
||||
mkdir -p "$BPM_OUTPUT"/usr/share/{info,doc/zs
|
||||
make DESTDIR="$BPM_OUTPUT" infodir=/usr/share/info install.info
|
||||
make DESTDIR="$BPM_OUTPUT" htmldir=/usr/share/doc/zsh/html install.html
|
||||
mkdir -p "$BPM_OUTPUT"/usr/share/doc/zsh/
|
||||
install -v -m644 zsh.{html,txt} Etc/FAQ "$BPM_OUTPUT"/usr/share/doc/zsh
|
||||
install -Dm 644 ../zprofile "$BPM_OUTPUT"/etc/zsh/zprofile
|
||||
install -Dm 644 ../zshrc "$BPM_OUTPUT"/etc/zsh/zshrc
|
||||
install -Dm 644 LICENCE "$BPM_OUTPUT"/usr/share/licenses/zsh/COPYING
|
||||
}
|
||||
Reference in New Issue
Block a user