110 lines
2.7 KiB
Bash
Executable file
110 lines
2.7 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
# variables
|
|
TAG=gwh
|
|
TMP=/tmp/$TAG
|
|
CWD=$(pwd)
|
|
OUTPUT=/tmp
|
|
|
|
PRGNAM=$(basename "$CWD")
|
|
GITHUB_REPO=kovidgoyal/kitty
|
|
VERSION=${VERSION:-latest}
|
|
|
|
ARCH=$(uname -m)
|
|
BUILD=2
|
|
|
|
PKG=$TMP/pkg-$PRGNAM
|
|
|
|
REPOSITORY=/var/cache/SlackBuilds.gwh/$PRGNAM
|
|
|
|
LIBDIRSUFFIX=$(uname -m | grep -o 64)
|
|
|
|
if [ "$ARCH" = "i586" ]; then
|
|
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
|
|
LIBDIRSUFFIX=""
|
|
elif [ "$ARCH" = "i686" ]; then
|
|
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
|
|
LIBDIRSUFFIX=""
|
|
elif [ "$ARCH" = "x86_64" ]; then
|
|
SLKCFLAGS="-O2 -fPIC"
|
|
LIBDIRSUFFIX="64"
|
|
else
|
|
SLKCFLAGS="-O2"
|
|
LIBDIRSUFFIX=""
|
|
fi
|
|
|
|
# nettoyage préalable
|
|
rm -fr "$PKG" "${TMP:?}"/"$PRGNAM"
|
|
|
|
mkdir -p "$PKG"
|
|
|
|
# mise en place
|
|
[ ! -e "$REPOSITORY" ] && git clone https://github.com/${GITHUB_REPO}.git "$REPOSITORY"
|
|
cd "$REPOSITORY" || exit 1
|
|
git pull --all
|
|
|
|
cp -R "$REPOSITORY" "$TMP"/"$PRGNAM"
|
|
cd "$TMP"/"$PRGNAM"/ || exit 1
|
|
[ "$VERSION" == "latest" ] && VERSION=$(git tag --sort=-version:refname | head -n1)
|
|
[ "$VERSION" == "" ] && VERSION=trunk
|
|
if [ "$VERSION" == "trunk" ]; then
|
|
VERSION="git_r$(git rev-list --count HEAD)_$(git log -1 --format=%h)"
|
|
else
|
|
git checkout "$VERSION"
|
|
fi
|
|
|
|
# installation
|
|
mkdir -p "$PKG"/
|
|
|
|
# sed surgery: setup.py allows overriding the compiler flags, but
|
|
# puts a -O3 *after* whatever we set them to. All our SLKCFLAGS
|
|
# choices have -O2.
|
|
sed -i 's,-O3,-O2,g' setup.py
|
|
|
|
OVERRIDE_CPPFLAGS="$SLKCFLAGS -Wl,-s" \
|
|
OVERRIDE_CFLAGS="$SLKCFLAGS -Wl,-s" \
|
|
python3 setup.py \
|
|
--libdir-name "lib$LIBDIRSUFFIX" \
|
|
--verbose linux-package \
|
|
--ignore-compiler-warnings
|
|
|
|
mkdir -p "$PKG"/usr/bin "$PKG"/usr/share "$PKG/usr/lib$LIBDIRSUFFIX"
|
|
cp -a linux-package/bin/* "$PKG"/usr/bin
|
|
cp -a linux-package/share/* "$PKG"/usr/share
|
|
cp -a linux-package/lib*/* "$PKG/usr/lib$LIBDIRSUFFIX"
|
|
strip "$PKG"/usr/bin/"$PRGNAM"
|
|
|
|
mkdir -p "$PKG$PREFIX"/share/bash-completion/completions
|
|
cp extra/completions/alacritty.bash "$PKG$PREFIX"/share/bash-completion/completions/alacritty
|
|
|
|
mkdir -p "$PKG$PREFIX"/share/zsh/site-functions
|
|
cp "$PKG/usr/lib$LIBDIRSUFFIX"/kitty/shell-integration/zsh/completions/_kitty "$PKG$PREFIX"/share/zsh/site-functions/
|
|
|
|
mkdir -p "$PKG"/usr/doc/"$PRGNAM"
|
|
cp -R ./*.md ./*.rst LICENSE "$PKG"/usr/doc/"$PRGNAM"
|
|
|
|
# correction
|
|
cd "$PKG" || exit 1
|
|
chown -R root:root ./*
|
|
|
|
# embaumement
|
|
mkdir -p "$PKG"/install
|
|
|
|
cat <<EOF > "$PKG"/install/slack-desc
|
|
$PRGNAM: $PRGNAM (The fast, feature-rich, GPU based terminal emulator)
|
|
$PRGNAM:
|
|
$PRGNAM:
|
|
$PRGNAM:
|
|
$PRGNAM:
|
|
$PRGNAM:
|
|
$PRGNAM:
|
|
$PRGNAM:
|
|
$PRGNAM:
|
|
$PRGNAM: https://sw.kovidgoyal.net/kitty/
|
|
$PRGNAM:
|
|
EOF
|
|
|
|
# empaquetage
|
|
cd "$PKG" || exit 1
|
|
rm -f "$PKG"/{,usr/}lib"$LIBDIRSUFFIX"/*.la
|
|
/sbin/makepkg --linkadd y --chown n --prepend "$OUTPUT/$PRGNAM-${VERSION//-//}-$ARCH-$BUILD$TAG.txz"
|