diff options
-rw-r--r-- | .SRCINFO | 4 | ||||
-rw-r--r-- | .gitignore | 13 | ||||
-rw-r--r-- | PKGBUILD | 40 | ||||
-rwxr-xr-x | chroot-build.sh | 62 |
4 files changed, 96 insertions, 23 deletions
@@ -1,12 +1,12 @@ pkgbase = gnome-shell-extension-no-overview-git pkgdesc = No overview at start-up - pkgver = r29.85eba64 + pkgver = r30.7d1d8e2 pkgrel = 1 url = https://github.com/fthx/no-overview arch = any license = GPL-3.0-or-later makedepends = git - depends = gnome-shell>=1:46 + depends = gnome-shell>=1:47 provides = gnome-shell-extension-no-overview conflicts = gnome-shell-extension-no-overview options = !strip diff --git a/.gitignore b/.gitignore index 833085309a2e..415c891a4235 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,11 @@ -*.tar.gz -*.pkg.tar.zst -*/* +# Ignore everything +* +# But not these files... +!.gitignore +!PKGBUILD +!.SRCINFO +!chroot-build.sh +!.nvchecker.toml +!*.asc +!*/ @@ -1,39 +1,43 @@ # Maintainer: Christian Schendel <doppelhelix@gmail.com> pkgname=gnome-shell-extension-no-overview-git -pkgver=r29.85eba64 +pkgver=r30.7d1d8e2 pkgrel=1 pkgdesc="No overview at start-up" -arch=('any') +arch=(any) url="https://github.com/fthx/no-overview" license=( - 'GPL-3.0-or-later') + GPL-3.0-or-later) depends=( - 'gnome-shell>=1:46' + 'gnome-shell>=1:47' ) makedepends=( - 'git' + git ) conflicts=("${pkgname%-git}") -provides=(${pkgname%-git}) +provides=("${pkgname%-git}") source=("${pkgname%-git}::git+${url}") md5sums=('SKIP') options=('!strip') pkgver() { - cd "${srcdir}/${pkgname%-git}" + cd "${pkgname%-git}" - # support repositories that start without a tag but get tagged later on - ( set -o pipefail - git describe --long 2>/dev/null | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g' || - printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)" - ) + # support repositories that start without a tag but get tagged later on + ( + set -o pipefail + git describe --long 2>/dev/null | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g' || + printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)" + ) } package() { - cd "${srcdir}/${pkgname%-git}" - local uuid=$(grep -Po '(?<="uuid": ")[^"]*' metadata.json) - local extensiondir="${pkgdir}/usr/share/gnome-shell/extensions/${uuid}" - install -dm755 "${extensiondir}" - find . -regextype posix-egrep -regex ".*\.(js|json)$" -exec\ - install -Dm 644 {} ${extensiondir}/{} \; + cd "${pkgname%-git}" + local uuid + local extensiondir + uuid=$(grep -Po '(?<="uuid": ")[^"]*' metadata.json) + extensiondir="${pkgdir}/usr/share/gnome-shell/extensions/${uuid}" + install -dm755 "${extensiondir}" + find . -regextype posix-egrep -regex ".*\.(js|json)$" -exec install -Dm 644 {} "${extensiondir}"/{} \; } + +# vim: set ts=4 sw=4 et: diff --git a/chroot-build.sh b/chroot-build.sh new file mode 100755 index 000000000000..bf9959e2762a --- /dev/null +++ b/chroot-build.sh @@ -0,0 +1,62 @@ +#!/bin/bash + +set -euo pipefail +use_tmpfs=true +CHROOT="/tmp/mkarchroot" + +check_available_ram() { + if [ "$(awk '/^MemAvailable:/ { print $2; }' /proc/meminfo)" -lt 50000 ]; then + use_tmpfs=false + fi +} + +create_chroot_directory() { + if [ $use_tmpfs ]; then + sudo mount --mkdir -t tmpfs -o defaults,size=20G tmpfs $CHROOT + else + sudo mkdir -p "$CHROOT" + fi +} + +create_chroot_environment() { + if [[ ! -d "$CHROOT/root" ]]; then + mkarchroot -M ~/.config/pacman/makepkg.conf "$CHROOT/root" base-devel + fi +} + +build_package(){ + arch-nspawn "$CHROOT/root" pacman -Syu + if makechrootpkg -c -r "$CHROOT" -- -Asf . ; then + makepkg --printsrcinfo >.SRCINFO + else + delete_chroot_environment && echo -e "\n\e[1;31m==> BUILD FAILED: \e[1;37m$CHROOT removed\e[0m " && exit 1 + fi +} + +sign_package(){ + PACKAGE="$(makepkg --packagelist)" + gpg --use-agent --output "$PACKAGE.sig" --detach-sign "$PACKAGE" +} + +delete_chroot_environment() { + if [ "$(stat -f --format=%T "$CHROOT")" == "btrfs" ]; then + { + sudo btrfs subvolume delete "$CHROOT/root/var/lib/portables" + sudo btrfs subvolume delete "$CHROOT/root/var/lib/machines" + sudo btrfs subvolume delete "$CHROOT/root" + sudo rm -Rf $CHROOT + } >>/dev/null 2>&1 + elif [ "$(stat -f --format=%T "$CHROOT")" == "tmpfs" ]; then + sudo umount -f $CHROOT + fi + sudo rm -Rf $CHROOT +} + +check_available_ram +create_chroot_directory +create_chroot_environment +build_package +sign_package +delete_chroot_environment + +# vim: set ts=4 sw=4 et: |