diff --git a/aget/PKGBUILD b/aget/PKGBUILD new file mode 100644 index 0000000..c1e5b7b --- /dev/null +++ b/aget/PKGBUILD @@ -0,0 +1,34 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=aget +pkgver=1.2.0 +pkgrel=01 +pkgdesc='Minimalistic AUR helper' +arch=(x86_64) +url='https://github.com/xyproto/aget' +depends=(git openssh) +makedepends=(go git) +source=("git+https://github.com/xyproto/aget#commit=35a6976114013313000b7c1a4c08487936ca7592") # tag: 1.2.0 + +build() { + cd $pkgname + go build -mod=vendor -gcflags "all=-trimpath=${PWD}" -asmflags "all=-trimpath=${PWD}" -ldflags "-extldflags ${LDFLAGS}" +} + +package() { + cd $pkgname + install -Dm755 $pkgname "$pkgdir/usr/bin/$pkgname" + install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +#---- license gpg-key sha256sums ---- + +license=(MIT) + +sha256sums=(SKIP) + diff --git a/aget/PKGBUILD-aur b/aget/PKGBUILD-aur new file mode 100644 index 0000000..a42e443 --- /dev/null +++ b/aget/PKGBUILD-aur @@ -0,0 +1,23 @@ +# Maintainer: Alexander F. Rødseth + +pkgname=aget +pkgver=1.2.0 +pkgrel=1 +pkgdesc='Minimalistic AUR helper' +arch=(x86_64) +url='https://github.com/xyproto/aget' +license=(MIT) +makedepends=(go git) +source=("git+https://github.com/xyproto/aget#commit=35a6976114013313000b7c1a4c08487936ca7592") # tag: 1.2.0 +b2sums=(SKIP) + +build() { + cd $pkgname + go build -mod=vendor -gcflags "all=-trimpath=${PWD}" -asmflags "all=-trimpath=${PWD}" -ldflags "-extldflags ${LDFLAGS}" +} + +package() { + cd $pkgname + install -Dm755 $pkgname "$pkgdir/usr/bin/$pkgname" + install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} diff --git a/aget/clean b/aget/clean new file mode 100644 index 0000000..cdb0090 --- /dev/null +++ b/aget/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,aget} diff --git a/aget/deps b/aget/deps new file mode 100644 index 0000000..4f8608d --- /dev/null +++ b/aget/deps @@ -0,0 +1,2 @@ +go git +openssh diff --git a/alsa-utils/PKGBUILD b/alsa-utils/PKGBUILD new file mode 100644 index 0000000..009b1f0 --- /dev/null +++ b/alsa-utils/PKGBUILD @@ -0,0 +1,55 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=alsa-utils +pkgver=1.2.6 +pkgrel=01 +pkgdesc="Advanced Linux Sound Architecture - Utilities" +arch=(x86_64) +url="https://www.alsa-project.org" +depends=(glibc pciutils psmisc) +makedepends=(alsa-lib docbook-xsl fftw libsamplerate ncurses python-docutils xmlto) +optdepends=('fftw: for alsabat') +# we require /var/lib/alsa for state file +options=(emptydirs) +source=("https://www.alsa-project.org/files/pub/utils/${pkgname}-${pkgver}.tar.bz2"{,.sig}) + +prepare() { + cd "${pkgname}-${pkgver}" + autoreconf -fiv +} + +build() { + cd "${pkgname}-${pkgver}" + ./configure --prefix=/usr \ + --sbindir=/usr/bin \ + --disable-alsaconf \ + --with-udev-rules-dir=/usr/lib/udev/rules.d \ + --with-systemdsystemunitdir=no + make +} + +package() { + depends+=(libasound.so libatopology.so libformw.so libmenuw.so libncursesw.so + libpanelw.so libsamplerate.so) + + cd "${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + install -vDm 644 README.md -t "${pkgdir}/usr/share/doc/${pkgname}" + # dir where to save ALSA state + install -d "${pkgdir}/var/lib/alsa" +} + + +#---- license gpg-key sha256sums ---- + +license=(GPL2) + +validpgpkeys=('F04DF50737AC1A884C4B3D718380596DA6E59C91') # ALSA Release Team (Package Signing Key v1) + +sha256sums=(6a1efd8a1f1d9d38e489633eaec1fffa5c315663b316cab804be486887e6145d # alsa-utils-1.2.6.tar.bz2 + 2efbe44243676d6b3eafcd7a425c2d92d2bb09ef8b605f5ed8396727be187204) # alsa-utils-1.2.6.tar.bz2.sig diff --git a/alsa-utils/PKGBUILD-arch b/alsa-utils/PKGBUILD-arch new file mode 100644 index 0000000..0164c97 --- /dev/null +++ b/alsa-utils/PKGBUILD-arch @@ -0,0 +1,49 @@ +# Maintainer: David Runge +# Contributor: Tobias Powalowski +# Contributor: judd + +pkgname=alsa-utils +pkgver=1.2.6 +pkgrel=1 +pkgdesc="Advanced Linux Sound Architecture - Utilities" +arch=(x86_64) +url="https://www.alsa-project.org" +license=(GPL2) +depends=(glibc pciutils psmisc) +makedepends=(alsa-lib docbook-xsl fftw libsamplerate ncurses python-docutils +systemd xmlto) +optdepends=('fftw: for alsabat') +# we require /var/lib/alsa for state file +options=(emptydirs) +source=("https://www.alsa-project.org/files/pub/utils/${pkgname}-${pkgver}.tar.bz2"{,.sig}) +sha512sums=('6842f0f4c2f7cc5ac3ba94736ee259d9988b5d3e0d2b522f858d712e16938d2845fa9ef64f4aa60222b8ef6738e053f9113a5ea24a197f2c0d6c4dbd70030f5e' + 'SKIP') +b2sums=('3b81cccc836e0de9f6d98f311dc3a316a02179ec1fc7520da9658192f27e7701c6dc41b04a82639d6269d6943afd8a89cb6477406cbc36ac450e57919cff46f2' + 'SKIP') +validpgpkeys=('F04DF50737AC1A884C4B3D718380596DA6E59C91') # ALSA Release Team (Package Signing Key v1) + +prepare() { + cd "${pkgname}-${pkgver}" + autoreconf -fiv +} + +build() { + cd "${pkgname}-${pkgver}" + ./configure --prefix=/usr \ + --disable-alsaconf \ + --sbindir=/usr/bin \ + --with-udev-rules-dir=/usr/lib/udev/rules.d \ + --with-systemdsystemunitdir=/usr/lib/systemd/system + make +} + +package() { + depends+=(libasound.so libatopology.so libformw.so libmenuw.so libncursesw.so + libpanelw.so libsamplerate.so) + + cd "${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + install -vDm 644 README.md -t "${pkgdir}/usr/share/doc/${pkgname}" + # dir where to save ALSA state + install -d "${pkgdir}/var/lib/alsa" +} diff --git a/alsa-utils/PKGBUILD-oba b/alsa-utils/PKGBUILD-oba new file mode 100644 index 0000000..8f6c58c --- /dev/null +++ b/alsa-utils/PKGBUILD-oba @@ -0,0 +1,116 @@ +# Copyright : Obarun +#------------------------ +# Maintainer : Eric Vidal +# Maintainer : Jean-Michel T.Dydak +# Maintainer : YianIris +#---------------- +# Obarun PkgSrc : https://git.obarun.org/pkg/obextra/alsa-utils +#--------------------------------------------------------------- +# DESCRIPTION ] + +pkgname=alsa-utils +pkgver=1.2.6 +pkgrel=2 +pkgdesc="An alternative implementation of Linux sound support" +url='https://www.alsa-project.org' + +track="files/pub/utils" +target="$pkgname-$pkgver" +source=( + "https://www.alsa-project.org/${track}/${target}.tar.bz2" +) + +#---------------------- +# BUILD CONFIGURATION ] + +makedepends=( + 'alsa-lib' + 'docbook-xsl' + 'fftw' + 'libsamplerate' + 'ncurses' + 'xmlto' + 'python-docutils' +) + +options=( + 'emptydirs' +) + +#------------------------ +# INSTALL CONFIGURATION ] + +depends=( + 'glibc' + 'pciutils' + 'psmisc' +) + +optsdepends=( + 'fftw: for alsabat' +) + +#---------------- +# BUILD PREPARE ] + +prepare() { + cd $pkgname-$pkgver + autoreconf -vfi +} + +#---------------- +# BUILD CONTROL ] + +_flags=( + --prefix=/usr + --sbindir=/usr/bin + --disable-alsaconf + --with-udev-rules-dir=/usr/lib/udev/rules.d +) + +#-------- +# BUILD ] + +build() { + cd $pkgname-$pkgver + + ./configure "${_flags[@]}" + make +} + +#---------- +# PACKAGE ] + +package() { + depends+=( + 'libasound.so' + 'libatopology.so' + 'libformw.so' + 'libmenuw.so' + 'libncursesw.so' + 'libpanelw.so' + 'libsamplerate.so' +) + + cd $pkgname-$pkgver + + make DESTDIR="$pkgdir" install + + ## dir where to save ALSA state + install -d "$pkgdir"/var/lib/alsa + + install -vDm 644 README.md -t "$pkgdir"/usr/share/doc/$pkgname +} + +#-------------------- +# ARCH LICENSE AUTH ] + +arch=('x86_64') +license=('GPL2') + +validpgpkeys=( + 'F04DF50737AC1A884C4B3D718380596DA6E59C91' # ALSA Release Team (Pkg Signing Key v1) + # +) + +sha512sums=('') diff --git a/alsa-utils/clean b/alsa-utils/clean new file mode 100644 index 0000000..01dae3a --- /dev/null +++ b/alsa-utils/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,alsa-*tar.bz2*} diff --git a/alsa-utils/deps b/alsa-utils/deps new file mode 100644 index 0000000..90b0ec3 --- /dev/null +++ b/alsa-utils/deps @@ -0,0 +1,9 @@ +alsa-lib +docbook-xsl +fftw +libsamplerate +python-docutils +xmlto +autoconf +gettext +automake diff --git a/alsa-utils/key b/alsa-utils/key new file mode 100644 index 0000000..49e2a8a --- /dev/null +++ b/alsa-utils/key @@ -0,0 +1 @@ +gpg -v --recv-key 8380596DA6E59C91 diff --git a/alsa-utils/time b/alsa-utils/time new file mode 100644 index 0000000..3c2fd71 --- /dev/null +++ b/alsa-utils/time @@ -0,0 +1,4 @@ + +real 0m20.423s +user 0m28.943s +sys 0m2.729s diff --git a/anything-sync-daemon/PKGBUILD b/anything-sync-daemon/PKGBUILD new file mode 100644 index 0000000..a9e27a8 --- /dev/null +++ b/anything-sync-daemon/PKGBUILD @@ -0,0 +1,40 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=anything-sync-daemon +pkgver=5.86 +pkgrel=01 +pkgdesc="Symlinks and syncs user specified dirs to RAM" +arch=(any) +url="https://github.com/graysky2/anything-sync-daemon" +depends=(bash findutils procps-ng rsync ) +optdepends=('bash-completion: for completion when using bash' + 'zsh-completions: for completion when using zhs') +install="${pkgname}.install" +backup=(etc/asd.conf) +source=("$pkgname-$pkgver.tar.gz::https://github.com/graysky2/${pkgname}/archive/v${pkgver}.tar.gz") + +build() { + cd "$pkgname-$pkgver" + make +} + +package() { + cd "$pkgname-$pkgver" + make DESTDIR="$pkgdir/" + install -vDm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}/" + install -vDm 644 README.md -t "${pkgdir}/usr/share/doc/${pkgname}/" +} + +#---- license gpg-key sha256sums ---- + +license=(MIT) + +sha512sums=('1554dd382ebc2aa6887908d8165378aeaaa768dbd6412e97fc0a095020fcefd17fad973b771880d959e8f6a7856adfb905d3401d0b9eba0b3beebb1482521c8d') + +b2sums=('f773c4d779c15c49f78fb659084dfdc0988be05f9dbf898b1a11b18a8b414df84b5645c0f299320194e6aa07100deaef7fbaa0c0453eb291108db50114ed1b61') + +sha256sums=(e78544efeb16a6d4ae375bcc964007475f9ce0fb602f721b6cb77210c1d6d072) # anything-sync-daemon-5.86.tar.gz diff --git a/anything-sync-daemon/PKGBUILD-arch b/anything-sync-daemon/PKGBUILD-arch new file mode 100644 index 0000000..c604d88 --- /dev/null +++ b/anything-sync-daemon/PKGBUILD-arch @@ -0,0 +1,30 @@ +# Maintainer: David Runge +# Contributor: graysky + +pkgname=anything-sync-daemon +pkgver=5.86 +pkgrel=1 +pkgdesc="Symlinks and syncs user specified dirs to RAM" +arch=(any) +url="https://github.com/graysky2/anything-sync-daemon" +license=(MIT) +depends=(bash findutils procps-ng rsync systemd) +optdepends=('bash-completion: for completion when using bash' + 'zsh-completions: for completion when using zhs') +install="${pkgname}.install" +backup=(etc/asd.conf) +source=("$pkgname-$pkgver.tar.gz::https://github.com/graysky2/${pkgname}/archive/v${pkgver}.tar.gz") +sha512sums=('1554dd382ebc2aa6887908d8165378aeaaa768dbd6412e97fc0a095020fcefd17fad973b771880d959e8f6a7856adfb905d3401d0b9eba0b3beebb1482521c8d') +b2sums=('f773c4d779c15c49f78fb659084dfdc0988be05f9dbf898b1a11b18a8b414df84b5645c0f299320194e6aa07100deaef7fbaa0c0453eb291108db50114ed1b61') + +build() { + cd "$pkgname-$pkgver" + make +} + +package() { + cd "$pkgname-$pkgver" + make DESTDIR="$pkgdir/" install-systemd-all + install -vDm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}/" + install -vDm 644 README.md -t "${pkgdir}/usr/share/doc/${pkgname}/" +} diff --git a/anything-sync-daemon/anything-sync-daemon.install b/anything-sync-daemon/anything-sync-daemon.install new file mode 100644 index 0000000..694bec0 --- /dev/null +++ b/anything-sync-daemon/anything-sync-daemon.install @@ -0,0 +1,27 @@ +## arg 1: the new package version +## arg 2: the old package version +# shellcheck disable=SC2016 + +_stop_asd_service() { + if systemctl is-active asd.service &>/dev/null; then + echo 'In order to preserve the data, the asd service will now be stopped.' + systemctl stop asd.service &>/dev/null + fi +} + +pre_upgrade() { + for version in 5.69 5.76; do + if [ "$(vercmp "$2" "$version")" -lt 0 ]; then + _stop_asd_service + echo 'Start the asd service manually after upgrade is complete.' + fi + done +} + +post_install() { + echo 'Consult the manpage (`man 1 asd`) and backup your data before use.' +} + +pre_remove() { + _stop_asd_service +} diff --git a/anything-sync-daemon/clean b/anything-sync-daemon/clean new file mode 100644 index 0000000..3749cdd --- /dev/null +++ b/anything-sync-daemon/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,any*.tar.gz} diff --git a/anything-sync-daemon/deps b/anything-sync-daemon/deps new file mode 100644 index 0000000..d6e0544 --- /dev/null +++ b/anything-sync-daemon/deps @@ -0,0 +1 @@ +rsync diff --git a/anything-sync-daemon/time b/anything-sync-daemon/time new file mode 100644 index 0000000..afaf3c7 --- /dev/null +++ b/anything-sync-daemon/time @@ -0,0 +1,4 @@ + +real 0m1.619s +user 0m1.378s +sys 0m0.209s diff --git a/apparmor/PKGBUILD b/apparmor/PKGBUILD new file mode 100644 index 0000000..1b70bdc --- /dev/null +++ b/apparmor/PKGBUILD @@ -0,0 +1,164 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=apparmor +pkgver=3.0.4 +pkgrel=01 +pkgdesc="Mandatory Access Control (MAC) using Linux Security Module (LSM) w/o systemd" +arch=(x86_64) +url="https://gitlab.com/apparmor/apparmor" +depends=(audit glibc pam python) +makedepends=(apache libxcrypt python-setuptools ruby swig) +checkdepends=(dejagnu perl-locale-gettext python-notify2 python-psutil) +optdepends=('perl: for perl bindings' + 'python-notify2: for aa-notify' + 'python-psutil: for aa-notify' + 'ruby: for ruby bindings') +provides=(libapparmor.so) +backup=('etc/apparmor/easyprof.conf' + 'etc/apparmor/logprof.conf' + 'etc/apparmor/notify.conf' + 'etc/apparmor/parser.conf' + 'etc/apparmor/severity.db') +# NOTE: debug package currently contains invalid /build dir +# LTO is currently still broken: https://gitlab.com/apparmor/apparmor/-/issues/214 +options=(!lto) +source=("https://launchpad.net/${pkgname}/${pkgver%.[0-9]}/${pkgver}/+download/${pkgname}-${pkgver}.tar.gz"{,.asc}) +_core_perl="/usr/bin/core_perl" + +prepare() { + cd "${pkgname}-${pkgver}" + + # remove test for help output that hardcodes expected output: + # https://gitlab.com/apparmor/apparmor/-/issues/220 + sed '147,179d' -i utils/test/test-aa-notify.py + + # fix PYTHONPATH and add LD_LIBRARY_PATH for aa-logprof based check: + # https://gitlab.com/apparmor/apparmor/issues/39 + local python_version=$(python -c 'import sys; print(".".join(map(str, sys.version_info[:2])))') + local path="${PWD}/libraries/libapparmor/swig/python/build/lib.linux-${CARCH}-${python_version}/" + local libs="${PWD}/libraries/libapparmor/src/.libs" + + sed -e "/PYTHONPATH/ s|utils\ |utils:$path\ LD_LIBRARY_PATH=$libs\ |" \ + -i profiles/Makefile + ( + cd libraries/libapparmor/ + autoreconf -fiv + ) +} + +build() { + cd "${pkgname}-${pkgver}" + + # export required perl executable locations + export MAKEFLAGS+=" POD2MAN=${_core_perl}/pod2man" + export MAKEFLAGS+=" POD2HTML=${_core_perl}/pod2html" + export MAKEFLAGS+=" PODCHECKER=${_core_perl}/podchecker" + export MAKEFLAGS+=" PROVE=${_core_perl}/prove" + ( + cd "libraries/libapparmor/" + ./configure --prefix=/usr \ + --sbindir=/usr/bin \ + --with-perl \ + --with-python \ + --with-ruby \ + --without-systemd + make + ) + make -C binutils + make -C parser + make -C profiles + make -C utils + make -C changehat/pam_apparmor + make -C changehat/mod_apparmor + make -C utils/vim + + # copy to test location as some tests render the resulting python bytecode + # unreproducible: https://gitlab.com/apparmor/apparmor/-/issues/184 + cd .. + cp -av "${pkgname}-${pkgver}" "${pkgname}-${pkgver}-test" +} + +check() { + cd "$pkgname-$pkgver-test" + echo "INFO: Running check: libraries/libapparmor" + make -C libraries/libapparmor check + echo "INFO: Running check binutils" + make -C binutils check + echo "INFO: Running check parser" + make -C parser check + # NOTE: the profiles checks are notoriously broken, so run each separately + echo "INFO: Running check-abstractions.d profiles" + make -C profiles check-abstractions.d +# # many hardcoded paths are not accounted for: +# # https://gitlab.com/apparmor/apparmor/-/issues/137 +# echo "INFO: Running check-logprof profiles" +# make -C profiles check-logprof + echo "INFO: Running check-parser profiles" + make -C profiles check-parser + echo "INFO: Running check utils" + # we do not care about linting when running tests + # https://gitlab.com/apparmor/apparmor/-/issues/121 + make PYFLAKES='/usr/bin/true' -C utils check +} + +package() { + depends+=('libcrypt.so') + cd "$pkgname-$pkgver" + make -C libraries/libapparmor DESTDIR="${pkgdir}" install + make -C changehat/pam_apparmor DESTDIR="${pkgdir}/usr" install + make -C changehat/mod_apparmor DESTDIR="${pkgdir}" install + make -C binutils DESTDIR="${pkgdir}" \ + SBINDIR="${pkgdir}/usr/bin" \ + USR_SBINDIR="${pkgdir}/usr/bin" \ + install + make -C parser -j1 DESTDIR="${pkgdir}" \ + SBINDIR="${pkgdir}/usr/bin" \ + USR_SBINDIR="${pkgdir}/usr/bin" \ + APPARMOR_BIN_PREFIX="${pkgdir}/usr/lib/apparmor" \ +# install install-systemd + make -C profiles DESTDIR="${pkgdir}" install + make -C utils DESTDIR="${pkgdir}" \ + SBINDIR="${pkgdir}/usr/bin" \ + USR_SBINDIR="${pkgdir}/usr/bin" \ + BINDIR="${pkgdir}/usr/bin" \ + VIM_INSTALL_PATH="${pkgdir}/usr/share/vim/vimfiles/syntax" \ + install + + # set file mode to allow the perl library to be stripped: + # https://gitlab.com/apparmor/apparmor/issues/34 + find "${pkgdir}/usr/lib/perl5/" -type f -iname "*.so" -exec chmod 755 {} \; + + # remove empty core_perl directory: + # https://gitlab.com/apparmor/apparmor/issues/40 + rm -rv "${pkgdir}"/usr/lib/perl5/*/core_perl + # move ruby bindings to vendor_ruby: + # https://gitlab.com/apparmor/apparmor/issues/35 + mv -v "${pkgdir}/usr/lib/ruby/site_ruby/" \ + "${pkgdir}/usr/lib/ruby/vendor_ruby/" + # adding files below /etc/apparmor.d to backup array + cd "${pkgdir}" + # trick extract_function_variable() in makepkg into not detecting the + # backup array modification and adding remaining configuration files + [[ /usr/bin/true ]] && backup=( ${backup[@]} $(find "etc/${pkgname}.d/" -type f | LC_ALL=C sort) ) + rm -rf $pkgdir/usr/lib/systemd +} + +#---- license gpg-key sha256sums ---- + +license=(GPL2 LGPL2.1) + +validpgpkeys=('3ECDCBA5FB34D254961CC53F6689E64E3D3664BB') # AppArmor Development Team (AppArmor signing key) + +sha512sums=('1edd800771f46fab9bc5274842e64482b7fd4a5ba4de9855d621baf1d08c8236bfa7752dd9ab3dee095f8e0798129241a9aebf68ed1c994ae5597086a4a1a8ca' + 'SKIP') + +b2sums=('831ea65ed0972ad8a6e335e438e7b0a8a2a3977dc4360ad1923d48cc7b21b1941ec011d3894d8bdc98934b953a3f1d89a859fc27ec2530f5dd9b3cc850fe66f0' + 'SKIP') + +sha256sums=(09bf48d7a171f9790c39a1404bad105a788934cfe77b7490c7f5c63c2576b725 # apparmor-3.0.4.tar.gz + fc5d5cfb71dd48e8e8a5321f84359e3131f9e5780804d154ea769d543c35be61) # apparmor-3.0.4.tar.gz.asc diff --git a/apparmor/PKGBUILD-arch b/apparmor/PKGBUILD-arch new file mode 100644 index 0000000..e3b1be0 --- /dev/null +++ b/apparmor/PKGBUILD-arch @@ -0,0 +1,150 @@ +# Maintainer: David Runge + +pkgname=apparmor +pkgver=3.0.4 +pkgrel=1 +pkgdesc="Mandatory Access Control (MAC) using Linux Security Module (LSM)" +arch=(x86_64) +url="https://gitlab.com/apparmor/apparmor" +license=(GPL2 LGPL2.1) +depends=(audit glibc pam python) +makedepends=(apache libxcrypt python-setuptools ruby swig) +checkdepends=(dejagnu perl-locale-gettext python-notify2 python-psutil) +optdepends=('perl: for perl bindings' + 'python-notify2: for aa-notify' + 'python-psutil: for aa-notify' + 'ruby: for ruby bindings') +provides=(libapparmor.so) +backup=('etc/apparmor/easyprof.conf' + 'etc/apparmor/logprof.conf' + 'etc/apparmor/notify.conf' + 'etc/apparmor/parser.conf' + 'etc/apparmor/severity.db') +# NOTE: debug package currently contains invalid /build dir +# LTO is currently still broken: https://gitlab.com/apparmor/apparmor/-/issues/214 +options=(!lto) +source=( + "https://launchpad.net/${pkgname}/${pkgver%.[0-9]}/${pkgver}/+download/${pkgname}-${pkgver}.tar.gz"{,.asc} +) +sha512sums=('1edd800771f46fab9bc5274842e64482b7fd4a5ba4de9855d621baf1d08c8236bfa7752dd9ab3dee095f8e0798129241a9aebf68ed1c994ae5597086a4a1a8ca' + 'SKIP') +b2sums=('831ea65ed0972ad8a6e335e438e7b0a8a2a3977dc4360ad1923d48cc7b21b1941ec011d3894d8bdc98934b953a3f1d89a859fc27ec2530f5dd9b3cc850fe66f0' + 'SKIP') +validpgpkeys=('3ECDCBA5FB34D254961CC53F6689E64E3D3664BB') # AppArmor Development Team (AppArmor signing key) +_core_perl="/usr/bin/core_perl" + +prepare() { + cd "${pkgname}-${pkgver}" + + # remove test for help output that hardcodes expected output: + # https://gitlab.com/apparmor/apparmor/-/issues/220 + sed '147,179d' -i utils/test/test-aa-notify.py + + # fix PYTHONPATH and add LD_LIBRARY_PATH for aa-logprof based check: + # https://gitlab.com/apparmor/apparmor/issues/39 + local python_version=$(python -c 'import sys; print(".".join(map(str, sys.version_info[:2])))') + local path="${PWD}/libraries/libapparmor/swig/python/build/lib.linux-${CARCH}-${python_version}/" + local libs="${PWD}/libraries/libapparmor/src/.libs" + + sed -e "/PYTHONPATH/ s|utils\ |utils:$path\ LD_LIBRARY_PATH=$libs\ |" \ + -i profiles/Makefile + ( + cd libraries/libapparmor/ + autoreconf -fiv + ) +} + +build() { + cd "${pkgname}-${pkgver}" + + # export required perl executable locations + export MAKEFLAGS+=" POD2MAN=${_core_perl}/pod2man" + export MAKEFLAGS+=" POD2HTML=${_core_perl}/pod2html" + export MAKEFLAGS+=" PODCHECKER=${_core_perl}/podchecker" + export MAKEFLAGS+=" PROVE=${_core_perl}/prove" + ( + cd "libraries/libapparmor/" + ./configure --prefix=/usr \ + --sbindir=/usr/bin \ + --with-perl \ + --with-python \ + --with-ruby + make + ) + make -C binutils + make -C parser + make -C profiles + make -C utils + make -C changehat/pam_apparmor + make -C changehat/mod_apparmor + make -C utils/vim + + # copy to test location as some tests render the resulting python bytecode + # unreproducible: https://gitlab.com/apparmor/apparmor/-/issues/184 + cd .. + cp -av "${pkgname}-${pkgver}" "${pkgname}-${pkgver}-test" +} + +check() { + cd "$pkgname-$pkgver-test" + echo "INFO: Running check: libraries/libapparmor" + make -C libraries/libapparmor check + echo "INFO: Running check binutils" + make -C binutils check + echo "INFO: Running check parser" + make -C parser check + # NOTE: the profiles checks are notoriously broken, so run each separately + echo "INFO: Running check-abstractions.d profiles" + make -C profiles check-abstractions.d +# # many hardcoded paths are not accounted for: +# # https://gitlab.com/apparmor/apparmor/-/issues/137 +# echo "INFO: Running check-logprof profiles" +# make -C profiles check-logprof + echo "INFO: Running check-parser profiles" + make -C profiles check-parser + echo "INFO: Running check utils" + # we do not care about linting when running tests + # https://gitlab.com/apparmor/apparmor/-/issues/121 + make PYFLAKES='/usr/bin/true' -C utils check +} + +package() { + depends+=('libcrypt.so') + cd "$pkgname-$pkgver" + make -C libraries/libapparmor DESTDIR="${pkgdir}" install + make -C changehat/pam_apparmor DESTDIR="${pkgdir}/usr" install + make -C changehat/mod_apparmor DESTDIR="${pkgdir}" install + make -C binutils DESTDIR="${pkgdir}" \ + SBINDIR="${pkgdir}/usr/bin" \ + USR_SBINDIR="${pkgdir}/usr/bin" \ + install + make -C parser -j1 DESTDIR="${pkgdir}" \ + SBINDIR="${pkgdir}/usr/bin" \ + USR_SBINDIR="${pkgdir}/usr/bin" \ + APPARMOR_BIN_PREFIX="${pkgdir}/usr/lib/apparmor" \ + install install-systemd + make -C profiles DESTDIR="${pkgdir}" install + make -C utils DESTDIR="${pkgdir}" \ + SBINDIR="${pkgdir}/usr/bin" \ + USR_SBINDIR="${pkgdir}/usr/bin" \ + BINDIR="${pkgdir}/usr/bin" \ + VIM_INSTALL_PATH="${pkgdir}/usr/share/vim/vimfiles/syntax" \ + install + + # set file mode to allow the perl library to be stripped: + # https://gitlab.com/apparmor/apparmor/issues/34 + find "${pkgdir}/usr/lib/perl5/" -type f -iname "*.so" -exec chmod 755 {} \; + + # remove empty core_perl directory: + # https://gitlab.com/apparmor/apparmor/issues/40 + rm -rv "${pkgdir}"/usr/lib/perl5/*/core_perl + # move ruby bindings to vendor_ruby: + # https://gitlab.com/apparmor/apparmor/issues/35 + mv -v "${pkgdir}/usr/lib/ruby/site_ruby/" \ + "${pkgdir}/usr/lib/ruby/vendor_ruby/" + # adding files below /etc/apparmor.d to backup array + cd "${pkgdir}" + # trick extract_function_variable() in makepkg into not detecting the + # backup array modification and adding remaining configuration files + [[ /usr/bin/true ]] && backup=( ${backup[@]} $(find "etc/${pkgname}.d/" -type f | LC_ALL=C sort) ) +} diff --git a/apparmor/clean b/apparmor/clean new file mode 100644 index 0000000..36a43c4 --- /dev/null +++ b/apparmor/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,appar*tar.gz*} diff --git a/apparmor/deps b/apparmor/deps new file mode 100644 index 0000000..e8d7731 --- /dev/null +++ b/apparmor/deps @@ -0,0 +1,12 @@ +python +apache +python-setuptools +ruby +swig +dejagnu +perl-locale-gettext +python-notify2 +python-psutil +autoconf +automake +bison diff --git a/apparmor/key b/apparmor/key new file mode 100644 index 0000000..3011023 --- /dev/null +++ b/apparmor/key @@ -0,0 +1 @@ +gpg -v --recv-key 6689E64E3D3664BB diff --git a/arch-install-scripts/PKGBUILD b/arch-install-scripts/PKGBUILD new file mode 100644 index 0000000..36545fd --- /dev/null +++ b/arch-install-scripts/PKGBUILD @@ -0,0 +1,42 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=arch-install-scripts +pkgver=24 +pkgrel=02 +pkgdesc="Scripts to aid in installing Arch Linux" +arch=('any') +url="https://github.com/archlinux/arch-install-scripts" +depends=('awk' 'bash' 'coreutils' 'pacman' 'util-linux') +makedepends=('asciidoc' 'git') +source=("git+https://github.com/archlinux/arch-install-scripts#tag=v${pkgver}?signed") + +pkgver() { + cd "$pkgname" + + git describe | sed 's/^v//' +} + +build() { + make -C "$pkgname" +} + +check() { + make -C "$pkgname" check +} + +package() { + make -C "$pkgname" PREFIX=/usr DESTDIR="$pkgdir" install +} + +#---- license gpg-key sha256sums ---- + +license=(GPL2) + +validpgpkeys=(BD27B07A5EF45C2ADAF70E0484818A6819AF4A9B) # Eli Schwartz + +sha256sums=(SKIP) diff --git a/arch-install-scripts/PKGBUILD-arch b/arch-install-scripts/PKGBUILD-arch new file mode 100644 index 0000000..be6fde1 --- /dev/null +++ b/arch-install-scripts/PKGBUILD-arch @@ -0,0 +1,35 @@ +# Maintainer: David Runge +# Contributor: Dave Reisner + +pkgname=arch-install-scripts +pkgver=24 +pkgrel=2 +pkgdesc="Scripts to aid in installing Arch Linux" +arch=('any') +url="https://github.com/archlinux/arch-install-scripts" +license=('GPL2') +depends=('awk' 'bash' 'coreutils' 'pacman' 'util-linux') +makedepends=('asciidoc' 'git') +source=("git+https://github.com/archlinux/arch-install-scripts#tag=v${pkgver}?signed") +validpgpkeys=( + 'BD27B07A5EF45C2ADAF70E0484818A6819AF4A9B' # Eli Schwartz +) +md5sums=('SKIP') + +pkgver() { + cd "$pkgname" + + git describe | sed 's/^v//' +} + +build() { + make -C "$pkgname" +} + +check() { + make -C "$pkgname" check +} + +package() { + make -C "$pkgname" PREFIX=/usr DESTDIR="$pkgdir" install +} diff --git a/arch-install-scripts/clean b/arch-install-scripts/clean new file mode 100644 index 0000000..5c3b426 --- /dev/null +++ b/arch-install-scripts/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,arch-install-scripts} diff --git a/arch-install-scripts/deps b/arch-install-scripts/deps new file mode 100644 index 0000000..3fd8c9a --- /dev/null +++ b/arch-install-scripts/deps @@ -0,0 +1 @@ +git asciidoc diff --git a/arch-install-scripts/key b/arch-install-scripts/key new file mode 100644 index 0000000..3f7eb8f --- /dev/null +++ b/arch-install-scripts/key @@ -0,0 +1 @@ +gpg -v --recv-key CEB167EFB5722BD6 diff --git a/arch-install-scripts/time b/arch-install-scripts/time new file mode 100644 index 0000000..54a492a --- /dev/null +++ b/arch-install-scripts/time @@ -0,0 +1,4 @@ + +real 0m3.704s +user 0m2.750s +sys 0m0.421s diff --git a/asciidoc/PKGBUILD b/asciidoc/PKGBUILD new file mode 100644 index 0000000..f0ab0f5 --- /dev/null +++ b/asciidoc/PKGBUILD @@ -0,0 +1,64 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=asciidoc +pkgver=10.1.4 +pkgrel=01 +pkgdesc='Text document format for short documents, articles, books and UNIX man pages' +arch=('any') +url='https://asciidoc.org/' +depends=('python' 'libxslt' 'docbook-xsl') +checkdepends=('dblatex' 'graphviz' 'lilypond' 'python-pytest'{,-mock} 'source-highlight') +makedepends=('python-pip') +optdepends=('graphviz: graphviz-filter' + 'lilypond: music-filter' + 'imagemagick: music-filter' + 'source-highlight: source-highlight-filter' + 'dblatex: pdf generation' + 'fop: alternative pdf generation' + 'w3m: text generation' + 'lynx: alternative text generation') +source=("https://github.com/asciidoc-py/asciidoc-py/releases/download/$pkgver/$pkgname-$pkgver.tar.gz") + +prepare() { + cd ${pkgname}-${pkgver} + # https://github.com/asciidoc-py/asciidoc-py/issues/201#issuecomment-1047494681 +# sed -i -e '/pytest$/s!$! tests/test_utils.py!' Makefile.in +# # https://github.com/asciidoc-py/asciidoc-py/issues/234 + autoconf +} + + +build() { + cd ${pkgname}-${pkgver} + ./configure \ + --docdir /usr/share/doc/$pkgname \ + --prefix=/usr + make build + make manpages +} + +check() { + cd ${pkgname}-${pkgver} + make test +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + make DESTDIR="${pkgdir}" docs + install -Dm0644 -t "$pkgdir/usr/share/man/man1/" doc/*.1 + # ascidocapi is deprecated, but still included in 10.x on a "provisional" basis + local _platlib="$(python -c 'import sysconfig; print(sysconfig.get_paths()["platlib"])')" + install -Dm0644 -t "${pkgdir}/${_platlib}/${pkgname}/" asciidoc/api.py +} + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +sha256sums=(e4da7cc2af7fa12029156c0788fde2a53db1352d7dcb3e674a9d546b3bdba93f) # asciidoc-10.1.4.tar.gz diff --git a/asciidoc/PKGBUILD-arch b/asciidoc/PKGBUILD-arch new file mode 100644 index 0000000..53837d5 --- /dev/null +++ b/asciidoc/PKGBUILD-arch @@ -0,0 +1,63 @@ +# Maintainer: Levente Polyak +# Maintainer: Caleb Maclennan +# Contributor: Eli Schwartz +# Contributor: Florian Pritz +# Contributor: Chris Brannon +# Contributor: Geoffroy Carrier +# Contributor: Dan McGee +# Contributor: Jaroslaw Rosiek +# Contributor: Darwin Bautista +# Contributor: Daniel J Griffiths + +pkgname=asciidoc +pkgver=10.1.4 +pkgrel=1 +pkgdesc='Text document format for short documents, articles, books and UNIX man pages' +arch=('any') +url='https://asciidoc.org/' +license=('GPL') +depends=('python' 'libxslt' 'docbook-xsl') +checkdepends=('dblatex' 'graphviz' 'lilypond' 'python-pytest'{,-mock} 'source-highlight') +makedepends=('python-pip') +optdepends=('graphviz: graphviz-filter' + 'lilypond: music-filter' + 'imagemagick: music-filter' + 'source-highlight: source-highlight-filter' + 'dblatex: pdf generation' + 'fop: alternative pdf generation' + 'w3m: text generation' + 'lynx: alternative text generation') +source=("https://github.com/asciidoc-py/asciidoc-py/releases/download/$pkgver/$pkgname-$pkgver.tar.gz") +sha256sums=('e4da7cc2af7fa12029156c0788fde2a53db1352d7dcb3e674a9d546b3bdba93f') +b2sums=('86715b0d03fe112483e9e774af1b1bed8f9f88972c5de2b147e86f6501e7639e6683a96c93248efb71cf38f89b15a2ecf0b2d098c4e57af8768e8bedc2ef7e70') + +prepare() { + cd ${pkgname}-${pkgver} + # https://github.com/asciidoc-py/asciidoc-py/issues/234 + autoconf +} + +build() { + cd ${pkgname}-${pkgver} + # https://github.com/asciidoc-py/asciidoc-py/issues/234#issuecomment-1045970138 + ./configure \ + --docdir /usr/share/doc/$pkgname \ + --prefix /usr + make build + make manpages +} + +check() { + cd ${pkgname}-${pkgver} + make test +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + make DESTDIR="${pkgdir}" docs + install -Dm0644 -t "$pkgdir/usr/share/man/man1/" doc/*.1 + # ascidocapi is deprecated, but still included in 10.x on a "provisional" basis + local _platlib="$(python -c 'import sysconfig; print(sysconfig.get_paths()["platlib"])')" + install -Dm0644 -t "${pkgdir}/${_platlib}/${pkgname}/" asciidoc/api.py +} diff --git a/asciidoc/clean b/asciidoc/clean new file mode 100644 index 0000000..69ff6d9 --- /dev/null +++ b/asciidoc/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,asciidoc*.tar.gz} diff --git a/asciidoc/deps b/asciidoc/deps new file mode 100644 index 0000000..5e11f13 --- /dev/null +++ b/asciidoc/deps @@ -0,0 +1,10 @@ +python-pip +libxslt +docbook-xsl +dblatex +graphviz +lilypond +python-pytest +python-pytest-mock +source-highlight +autoconf diff --git a/asciidoc/time b/asciidoc/time new file mode 100644 index 0000000..54d237b --- /dev/null +++ b/asciidoc/time @@ -0,0 +1,5 @@ + +real 0m43.625s +user 0m40.711s +sys 0m2.346s + diff --git a/at-spi2-core/PKGBUILD b/at-spi2-core/PKGBUILD new file mode 100644 index 0000000..8fb4699 --- /dev/null +++ b/at-spi2-core/PKGBUILD @@ -0,0 +1,50 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=at-spi2-core +pkgver=2.42.0 +pkgrel=02 +pkgdesc="Protocol definitions and daemon for D-Bus at-spi" +url="https://gitlab.gnome.org/GNOME/at-spi2-core" +arch=(x86_64) +depends=(dbus glib2 libxtst) +makedepends=(gobject-introspection git gtk-doc meson) + +_commit=b22b7dcfcb34f01218de0f6aa0d10b4d34fb07aa # tags/AT_SPI2_CORE_2_42_0^0 +source=("git+$url.git#commit=$_commit") + +pkgver() { + cd $pkgname + git describe --tags | sed 's/^AT_SPI2_CORE_//;s/_/./g;s/-/+/g' +} + +prepare() { + cd $pkgname +} + +build() { + jobo-meson $pkgname build \ + -D default_bus=dbus-daemon \ + -D docs=true + meson compile -C build +} + +check() { + # memory test fails without desktop + # broker fails to launch without journald + dbus-run-session meson test -C build --print-errorlogs || : +} + +package() { + meson install -C build --destdir "$pkgdir" +} + +#---- license gpg-key sha256sums ---- + +license=(GPL2) + +sha256sums=('SKIP') diff --git a/at-spi2-core/PKGBUILD-arch b/at-spi2-core/PKGBUILD-arch new file mode 100644 index 0000000..f0bc3c2 --- /dev/null +++ b/at-spi2-core/PKGBUILD-arch @@ -0,0 +1,44 @@ +# Maintainer: Jan Alexander Steffens (heftig) +# Contributor: Ionut Biru + +pkgname=at-spi2-core +pkgver=2.42.0 +pkgrel=1 +pkgdesc="Protocol definitions and daemon for D-Bus at-spi" +url="https://gitlab.gnome.org/GNOME/at-spi2-core" +arch=(x86_64) +license=(GPL2) +depends=(dbus glib2 libxtst libsystemd) +makedepends=(gobject-introspection git gtk-doc meson dbus-broker systemd) +optdepends=('dbus-broker: Alternative bus implementation') +_commit=b22b7dcfcb34f01218de0f6aa0d10b4d34fb07aa # tags/AT_SPI2_CORE_2_42_0^0 +source=("git+https://gitlab.gnome.org/GNOME/at-spi2-core.git#commit=$_commit") +sha256sums=('SKIP') + +pkgver() { + cd $pkgname + git describe --tags | sed 's/^AT_SPI2_CORE_//;s/_/./g;s/-/+/g' +} + +prepare() { + cd $pkgname +} + +build() { + arch-meson $pkgname build \ + -D default_bus=dbus-broker \ + -D docs=true + meson compile -C build +} + +check() { + # memory test fails without desktop + # broker fails to launch without journald + dbus-run-session meson test -C build --print-errorlogs || : +} + +package() { + meson install -C build --destdir "$pkgdir" +} + +# vim:set sw=2 et: diff --git a/at-spi2-core/clean b/at-spi2-core/clean new file mode 100644 index 0000000..bc92a11 --- /dev/null +++ b/at-spi2-core/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,at-spi2-core} diff --git a/at-spi2-core/deps b/at-spi2-core/deps new file mode 100644 index 0000000..829cfa2 --- /dev/null +++ b/at-spi2-core/deps @@ -0,0 +1,5 @@ +libxtst +gobject-introspection +git +gtk-doc +meson diff --git a/at-spi2-core/time b/at-spi2-core/time new file mode 100644 index 0000000..a71965d --- /dev/null +++ b/at-spi2-core/time @@ -0,0 +1,5 @@ + +real 0m29.920s +user 0m26.991s +sys 0m2.480s + diff --git a/at/80-atd.hook b/at/80-atd.hook new file mode 100644 index 0000000..68c8057 --- /dev/null +++ b/at/80-atd.hook @@ -0,0 +1,9 @@ +[Trigger] +Operation = Upgrade +Type = Package +Target = glibc + +[Action] +Description = Restarting atd for libc upgrade... +When = PostTransaction +Exec = /usr/bin/systemctl try-restart atd.service diff --git a/at/PKGBUILD b/at/PKGBUILD new file mode 100644 index 0000000..0d9b3e3 --- /dev/null +++ b/at/PKGBUILD @@ -0,0 +1,53 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=at +pkgver=3.2.5 +pkgrel=01 +pkgdesc='AT and batch delayed command scheduling utility and daemon w/o systemd' +arch=('x86_64') +url='https://salsa.debian.org/debian/at' +depends=('pam' 'flex') +makedepends=('smtp-forwarder' 'git') +backup=('etc/at.deny' + 'etc/pam.d/atd' + 'var/spool/atd/.SEQ') +options=('!makeflags') +source=("http://software.calhariz.com/$pkgname/${pkgname}_${pkgver}.orig.tar.gz"{,.sig} +# '80-atd.hook' # systemd restart of atd service + 'pam.conf') + +build() { + cd "$pkgname-$pkgver" + + ./configure \ + --prefix=/usr \ + --sbindir=/usr/bin \ + --with-jobdir=/var/spool/atd \ + --with-atspool=/var/spool/atd \ + --with-systemdsystemunitdir=no + + CFLAGS="$CFLAGS -w" make +} + +package() { + make -C "$pkgname-$pkgver" IROOT="$pkgdir" docdir=/usr/share/doc install + + install -D -m0644 pam.conf "$pkgdir"/etc/pam.d/atd +# install -D -m0644 80-atd.hook "$pkgdir"/usr/share/libalpm/hooks/80-atd.hook +} + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +validpgpkeys=('464BC7CD439FEE5E8B4098A0348A778D6885EF8F') # Jose M Calhariz (Técnico) + +sha256sums=(bb066b389d7c9bb9d84a35738032b85c30cba7d949f758192adc72c9477fd3b8 # at_3.2.5.orig.tar.gz + e3096c67a4c844c67f63802369dbb316aa5288d8eb5d9cdcbc5ad4e0c868e049 # at_3.2.5.orig.tar.gz.sig +# a7048d6dbd8aa4d881979716829d16053b5007c2d83eb2167edd5221f9e48a33 80-atd.hook + e51630c26765e88bc9c3046c62bf12c56d9863f22bcf04eb00ccd5eb421c7e18) # pam.conf diff --git a/at/PKGBUILD-arch b/at/PKGBUILD-arch new file mode 100644 index 0000000..5a15ffc --- /dev/null +++ b/at/PKGBUILD-arch @@ -0,0 +1,48 @@ +# Maintainer: Alexander F Rødseth +# Contributor: Nathan Baum +# Contributor: Judd Vinet +# Contributor: Todd Musall + +pkgname=at +pkgver=3.2.5 +pkgrel=1 +pkgdesc='AT and batch delayed command scheduling utility and daemon' +arch=('x86_64') +url='https://salsa.debian.org/debian/at' +license=('GPL') +depends=('pam' 'flex') +makedepends=('smtp-forwarder' 'git' 'systemd') +backup=('etc/at.deny' + 'etc/pam.d/atd' + 'var/spool/atd/.SEQ') +options=('!makeflags') +validpgpkeys=('464BC7CD439FEE5E8B4098A0348A778D6885EF8F') # Jose M Calhariz (Técnico) +source=("http://software.calhariz.com/$pkgname/${pkgname}_${pkgver}.orig.tar.gz"{,.sig} + '80-atd.hook' + 'pam.conf') +sha256sums=('bb066b389d7c9bb9d84a35738032b85c30cba7d949f758192adc72c9477fd3b8' + 'SKIP' + 'a7048d6dbd8aa4d881979716829d16053b5007c2d83eb2167edd5221f9e48a33' + 'e51630c26765e88bc9c3046c62bf12c56d9863f22bcf04eb00ccd5eb421c7e18') + +build() { + cd "$pkgname-$pkgver" + + ./configure \ + --prefix=/usr \ + --sbindir=/usr/bin \ + --with-jobdir=/var/spool/atd \ + --with-atspool=/var/spool/atd \ + --with-systemdsystemunitdir=/usr/lib/systemd/system + + CFLAGS="$CFLAGS -w" make +} + +package() { + make -C "$pkgname-$pkgver" IROOT="$pkgdir" docdir=/usr/share/doc install + + install -D -m0644 pam.conf "$pkgdir"/etc/pam.d/atd + install -D -m0644 80-atd.hook "$pkgdir"/usr/share/libalpm/hooks/80-atd.hook +} + +# vim:set ts=2 sw=2 et: diff --git a/at/clean b/at/clean new file mode 100644 index 0000000..35bdfa3 --- /dev/null +++ b/at/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,at*tar.gz*} diff --git a/at/deps b/at/deps new file mode 100644 index 0000000..2c77912 --- /dev/null +++ b/at/deps @@ -0,0 +1,3 @@ +git +msmtp-mta +bison diff --git a/at/key b/at/key new file mode 100644 index 0000000..293ffcd --- /dev/null +++ b/at/key @@ -0,0 +1 @@ +gpg -v --recv-key 348A778D6885EF8F diff --git a/at/note b/at/note new file mode 100644 index 0000000..cf051d6 --- /dev/null +++ b/at/note @@ -0,0 +1,2 @@ +important, you must add bin and daemon users and daemon group for bin for this to build +the atd.hook to restart at was left out, it needs some thought on how to do this as to apply for both runit and s6, maybe killall atd if such service exists and is running, s6/runit will restart, need2do before next build diff --git a/at/pam.conf b/at/pam.conf new file mode 100644 index 0000000..5aa42b8 --- /dev/null +++ b/at/pam.conf @@ -0,0 +1,12 @@ +#%PAM-1.0 + +auth required pam_unix.so +auth required pam_env.so user_readenv=1 + +account required pam_access.so +account required pam_unix.so +account required pam_time.so + +session required pam_loginuid.so +session required pam_limits.so +session required pam_unix.so diff --git a/at/time b/at/time new file mode 100644 index 0000000..aed24e9 --- /dev/null +++ b/at/time @@ -0,0 +1,5 @@ + +real 0m5.077s +user 0m4.628s +sys 0m0.806s + diff --git a/autoconf-archive/PKGBUILD b/autoconf-archive/PKGBUILD new file mode 100644 index 0000000..fa2ec33 --- /dev/null +++ b/autoconf-archive/PKGBUILD @@ -0,0 +1,45 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=autoconf-archive +pkgver=2022.02.11 +pkgrel=01 +epoch=1 +pkgdesc="A collection of freely re-usable Autoconf macros" +arch=('any') +url="https://www.gnu.org/software/autoconf-archive/" +depends=('autoconf') +optdepends=('automake: macros for use with it') +source=("https://ftpmirror.gnu.org/${pkgname}/${pkgname}-${pkgver}.tar.xz"{,.sig}) + +build() { + cd ${pkgname}-${pkgver} + + ./configure --prefix=/usr + make +} + +check() { + cd ${pkgname}-${pkgver} + + make check +} + +package() { + cd ${pkgname}-${pkgver} + + make DESTDIR="${pkgdir}" install +} + +#---- license gpg-key sha256sums ---- + +license=('GPL3') + +validpgpkeys=('1A4F63A13A4649B632F65EE141BC28FE99089D72') # Peter Simons + +sha256sums=(78a61b611e2eeb55a89e0398e0ce387bcaf57fe2dd53c6fe427130f777ad1e8c # autoconf-archive-2022.02.11.tar.xz + 8a52784bca16d9377a5fc86018a5019984136e87f9d2959a6e51d6ccbdf5f540) # autoconf-archive-2022.02.11.tar.xz.sig diff --git a/autoconf-archive/PKGBUILD-arch b/autoconf-archive/PKGBUILD-arch new file mode 100644 index 0000000..065a7f8 --- /dev/null +++ b/autoconf-archive/PKGBUILD-arch @@ -0,0 +1,37 @@ +# Maintainer: Jonas Witschel +# Contributor: Eli Schwartz +# Contributor: Daniel Müllner + +pkgname=autoconf-archive +pkgver=2022.02.11 +pkgrel=1 +epoch=1 +pkgdesc="A collection of freely re-usable Autoconf macros" +arch=('any') +url="https://www.gnu.org/software/autoconf-archive/" +license=('GPL3') +depends=('autoconf') +optdepends=('automake: macros for use with it') +source=("https://ftpmirror.gnu.org/${pkgname}/${pkgname}-${pkgver}.tar.xz"{,.sig}) +sha256sums=('78a61b611e2eeb55a89e0398e0ce387bcaf57fe2dd53c6fe427130f777ad1e8c' + 'SKIP') +validpgpkeys=('1A4F63A13A4649B632F65EE141BC28FE99089D72') # Peter Simons + +build() { + cd ${pkgname}-${pkgver} + + ./configure --prefix=/usr + make +} + +check() { + cd ${pkgname}-${pkgver} + + make check +} + +package() { + cd ${pkgname}-${pkgver} + + make DESTDIR="${pkgdir}" install +} diff --git a/autoconf-archive/clean b/autoconf-archive/clean new file mode 100644 index 0000000..1a9f0d9 --- /dev/null +++ b/autoconf-archive/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,autoconf-arc*.tar.xz*} diff --git a/autoconf-archive/deps b/autoconf-archive/deps new file mode 100644 index 0000000..171a939 --- /dev/null +++ b/autoconf-archive/deps @@ -0,0 +1 @@ +autoconf diff --git a/autoconf-archive/key b/autoconf-archive/key new file mode 100644 index 0000000..324c916 --- /dev/null +++ b/autoconf-archive/key @@ -0,0 +1 @@ +gpg -v --recv-key 41BC28FE99089D72 diff --git a/autoconf-archive/revert.patch b/autoconf-archive/revert.patch new file mode 100644 index 0000000..bb5f729 --- /dev/null +++ b/autoconf-archive/revert.patch @@ -0,0 +1,71 @@ +From 59008cc7f85e1982eb298e1c424c2e6ad5942c4a Mon Sep 17 00:00:00 2001 +From: David Seifert +Date: Sat, 12 Jun 2021 22:29:03 +0200 +Subject: [PATCH] Revert "AX_PTHREAD: target > host" + +This reverts commit 2567e0ce0f3a11b535c6b527386197fb49ff172b. + +* `AC_CANONICAL_HOST` is the system on which the actual binary will run, + `AC_CANONICAL_TARGET` is the system for which code is generated. The + Autoconf manual even mentions that + + --target=target-type + the type of system for which any compiler tools in the package produce code (**rarely needed**). +--- + m4/ax_pthread.m4 | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git a/m4/ax_pthread.m4 b/m4/ax_pthread.m4 +index e5858e50..9f35d139 100644 +--- a/m4/ax_pthread.m4 ++++ b/m4/ax_pthread.m4 +@@ -87,11 +87,11 @@ + # modified version of the Autoconf Macro, you may extend this special + # exception to the GPL to apply to your modified version as well. + +-#serial 30 ++#serial 31 + + AU_ALIAS([ACX_PTHREAD], [AX_PTHREAD]) + AC_DEFUN([AX_PTHREAD], [ +-AC_REQUIRE([AC_CANONICAL_TARGET]) ++AC_REQUIRE([AC_CANONICAL_HOST]) + AC_REQUIRE([AC_PROG_CC]) + AC_REQUIRE([AC_PROG_SED]) + AC_LANG_PUSH([C]) +@@ -158,7 +158,7 @@ ax_pthread_flags="pthreads none -Kthread -pthread -pthreads -mthreads pthread -- + # --thread-safe: KAI C++ + # pthread-config: use pthread-config program (for GNU Pth library) + +-case $target_os in ++case $host_os in + + freebsd*) + +@@ -248,7 +248,7 @@ AS_IF([test "x$ax_pthread_clang" = "xyes"], + # definitions is, on some systems, a strong hint that pthreads support is + # correctly enabled + +-case $target_os in ++case $host_os in + darwin* | hpux* | linux* | osf* | solaris*) + ax_pthread_check_macro="_REENTRANT" + ;; +@@ -450,7 +450,7 @@ if test "x$ax_pthread_ok" = "xyes"; then + AC_CACHE_CHECK([whether more special flags are required for pthreads], + [ax_cv_PTHREAD_SPECIAL_FLAGS], + [ax_cv_PTHREAD_SPECIAL_FLAGS=no +- case $target_os in ++ case $host_os in + solaris*) + ax_cv_PTHREAD_SPECIAL_FLAGS="-D_POSIX_PTHREAD_SEMANTICS" + ;; +@@ -480,7 +480,7 @@ if test "x$ax_pthread_ok" = "xyes"; then + + # More AIX lossage: compile with *_r variant + if test "x$GCC" != "xyes"; then +- case $target_os in ++ case $host_os in + aix*) + AS_CASE(["x/$CC"], + [x*/c89|x*/c89_128|x*/c99|x*/c99_128|x*/cc|x*/cc128|x*/xlc|x*/xlc_v6|x*/xlc128|x*/xlc128_v6], diff --git a/autoconf-archive/time b/autoconf-archive/time new file mode 100644 index 0000000..8f1ce89 --- /dev/null +++ b/autoconf-archive/time @@ -0,0 +1,4 @@ + +real 0m5.952s +user 0m4.483s +sys 0m0.719s diff --git a/bind/127.0.0.zone b/bind/127.0.0.zone new file mode 100644 index 0000000..3c5c964 --- /dev/null +++ b/bind/127.0.0.zone @@ -0,0 +1,10 @@ +@ 1D IN SOA localhost. root.localhost. ( + 42 ; serial (yyyymmdd##) + 3H ; refresh + 15M ; retry + 1W ; expiry + 1D ) ; minimum ttl + + 1D IN NS localhost. + +1.0.0.127.in-addr.arpa. 1D IN PTR localhost. diff --git a/bind/PKGBUILD b/bind/PKGBUILD new file mode 100644 index 0000000..49c7469 --- /dev/null +++ b/bind/PKGBUILD @@ -0,0 +1,109 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +_pkgver=9.18.1 +pkgname=bind +pkgver=${_pkgver//-/.} +pkgrel=01 +pkgdesc='A complete, highly portable implementation of the DNS protocol w/o systemd' +url='https://www.isc.org/software/bind/' +arch=('x86_64') +options=('!emptydirs') +makedepends=('libcap' 'libxml2' 'zlib' 'krb5' 'e2fsprogs' 'openssl' 'readline' + 'libidn2' 'dnssec-anchors' 'python' 'json-c' 'python-ply' 'lmdb' 'zlib' 'icu' + 'xz' 'libmaxminddb' 'libnsl' 'libuv' 'python-sphinx') +depends=('bash' 'dnssec-anchors' 'e2fsprogs' 'glibc' 'icu' 'libedit' 'json-c' + 'krb5' 'libcap' 'libidn2' 'libmaxminddb' 'libnsl' 'libuv' 'libxml2' 'lmdb' + 'openssl' 'python' 'python-ply' 'readline' 'xz' 'zlib' 'jemalloc') +conflicts=('bind-tools' 'dnsutils') +replaces=('bind-tools' 'dnsutils' 'host') +provides=('bind-tools' 'dnsutils' 'dns-server') +backup=('etc/named.conf' + 'var/named/127.0.0.zone' + 'var/named/localhost.zone' + 'var/named/localhost.ip6.zone') +install=bind.install +source=("https://ftp.isc.org/isc/bind9/${_pkgver}/bind-${_pkgver}.tar.xz"{,.asc} + 'tmpfiles.conf' + 'sysusers.conf' + 'named.conf' +# 'named.service' + 'localhost.zone' + 'localhost.ip6.zone' + '127.0.0.zone') + +prepare() { + cd bind-$_pkgver + # apply patch from the source array (should be a pacman feature) + local src + for src in "${source[@]}"; do + src="${src%%::*}" + src="${src##*/}" + [[ $src = *.patch ]] || continue + echo "Applying patch $src..." + patch -Np1 < "../$src" + done +} + +build() { + cd bind-$_pkgver + export CFLAGS + # support to chase DNSSEC signature chains + CFLAGS+=' -DDIG_SIGCHASE' + # compile with gcc10, https://gcc.gnu.org/gcc-10/porting_to.html + CFLAGS+=' -fcommon' + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --sbindir=/usr/bin \ + --localstatedir=/var \ + --disable-static \ + --enable-fixed-rrset \ + --enable-full-report \ + --with-maxminddb \ + --with-openssl \ + --with-libidn2 \ + --with-json-c \ + --with-libxml2 \ + --with-lmdb + make +} + +package() { + cd "bind-$_pkgver" + install -dm755 "$pkgdir/usr/share/licenses/$pkgname/" + install -Dm644 LICENSE COPYRIGHT "$pkgdir/usr/share/licenses/$pkgname/" + make DESTDIR="$pkgdir" install + + cd "$srcdir" + install -D -m644 tmpfiles.conf "$pkgdir/usr/lib/tmpfiles.d/$pkgname.conf" + install -D -m644 sysusers.conf "$pkgdir/usr/lib/sysusers.d/$pkgname.conf" + +# install -D -m644 named.service "$pkgdir/usr/lib/systemd/system/named.service" + install -D -m640 -o 0 -g 40 named.conf "$pkgdir/etc/named.conf" + install -d -m770 -o 0 -g 40 "$pkgdir/var/named" + install -m640 -o 0 -g 40 localhost.zone "$pkgdir/var/named" + install -m640 -o 0 -g 40 localhost.ip6.zone "$pkgdir/var/named" + install -m640 -o 0 -g 40 127.0.0.zone "$pkgdir/var/named" + rm -rf $pkgdir/usr/lib/systemd +} + +#---- license gpg-key sha256sums ---- + +license=('MPL2') + +validpgpkeys=('7E1C91AC8030A5A59D1EFAB9750F3C87723E4012') #ISC Code Signing Key 2021 – 2022 (codesign@isc.org) + +sha256sums=(57c7afd871694d615cb4defb1c1bd6ed023350943d7458414db8d493ef560427 # bind-9.18.1.tar.xz + 585e206134f6186dee8e9c8ec30d08a3cc3c765a7fc2803da155e2c4caaa0d39 # bind-9.18.1.tar.xz.asc + f0423c4ee8495da487e07e9144bec1d25f46a0cd2dfa7cfd7a761ef15bfefc98 # tmpfiles.conf + 7c0acefcfcc3ae093550caed7ec90fe84bec8f7477459ffa7e71dda76bcbdb2c # sysusers.conf + e08a01d41b18bdb771d534daca99642314939aafdb088e5cfcf0ef2d33f8e7eb # named.conf + 0011708e516128647dd25b59b6ebc465f36e85bbe0a8fbdc3eb04b7f28c2197f # localhost.zone + c06fc270e32a843c8b6d86335a2ec607d405dfba6875de8d8a9abde39a9e2c17 # localhost.ip6.zone + b88fd2b99e7d42d414b329b814b9ff3304fa0ef9c67df81bde235bbfa0f3a3b8) # 127.0.0.zone + diff --git a/bind/PKGBUILD-arch b/bind/PKGBUILD-arch new file mode 100644 index 0000000..9df84a7 --- /dev/null +++ b/bind/PKGBUILD-arch @@ -0,0 +1,104 @@ +# Maintainer: Sébastien Luttringer +# Contributor: Gaetan Bisson +# Contributor: judd +# Contributor: Mario Vazquez + +_pkgver=9.18.1 +pkgname=bind +pkgver=${_pkgver//-/.} +pkgrel=1 +pkgdesc='A complete, highly portable implementation of the DNS protocol' +url='https://www.isc.org/software/bind/' +license=('MPL2') +arch=('x86_64') +options=('!emptydirs') +makedepends=('libcap' 'libxml2' 'zlib' 'krb5' 'e2fsprogs' 'openssl' 'readline' + 'libidn2' 'dnssec-anchors' 'python' 'json-c' 'python-ply' 'lmdb' 'zlib' 'icu' + 'xz' 'libmaxminddb' 'libnsl' 'libuv' 'python-sphinx') +depends=('bash' 'dnssec-anchors' 'e2fsprogs' 'glibc' 'icu' 'libedit' 'json-c' + 'krb5' 'libcap' 'libidn2' 'libmaxminddb' 'libnsl' 'libuv' 'libxml2' 'lmdb' + 'openssl' 'python' 'python-ply' 'readline' 'xz' 'zlib' 'jemalloc') +conflicts=('bind-tools' 'dnsutils') +replaces=('bind-tools' 'dnsutils' 'host') +provides=('bind-tools' 'dnsutils' 'dns-server') +backup=('etc/named.conf' + 'var/named/127.0.0.zone' + 'var/named/localhost.zone' + 'var/named/localhost.ip6.zone') +install=bind.install +validpgpkeys=('7E1C91AC8030A5A59D1EFAB9750F3C87723E4012') #ISC Code Signing Key 2021 – 2022 (codesign@isc.org) +source=("https://ftp.isc.org/isc/bind9/${_pkgver}/bind-${_pkgver}.tar.xz"{,.asc} + 'tmpfiles.conf' + 'sysusers.conf' + 'named.conf' + 'named.service' + 'localhost.zone' + 'localhost.ip6.zone' + '127.0.0.zone') +sha256sums=('57c7afd871694d615cb4defb1c1bd6ed023350943d7458414db8d493ef560427' + 'SKIP' + 'f0423c4ee8495da487e07e9144bec1d25f46a0cd2dfa7cfd7a761ef15bfefc98' + '7c0acefcfcc3ae093550caed7ec90fe84bec8f7477459ffa7e71dda76bcbdb2c' + 'e08a01d41b18bdb771d534daca99642314939aafdb088e5cfcf0ef2d33f8e7eb' + '3f0f8db0a1deae270dd166b4750be7c1041b4b44891176f35a8df7dd55d24d34' + '0011708e516128647dd25b59b6ebc465f36e85bbe0a8fbdc3eb04b7f28c2197f' + 'c06fc270e32a843c8b6d86335a2ec607d405dfba6875de8d8a9abde39a9e2c17' + 'b88fd2b99e7d42d414b329b814b9ff3304fa0ef9c67df81bde235bbfa0f3a3b8') + +prepare() { + cd bind-$_pkgver + # apply patch from the source array (should be a pacman feature) + local src + for src in "${source[@]}"; do + src="${src%%::*}" + src="${src##*/}" + [[ $src = *.patch ]] || continue + echo "Applying patch $src..." + patch -Np1 < "../$src" + done +} + +build() { + cd bind-$_pkgver + export CFLAGS + # support to chase DNSSEC signature chains + CFLAGS+=' -DDIG_SIGCHASE' + # compile with gcc10, https://gcc.gnu.org/gcc-10/porting_to.html + CFLAGS+=' -fcommon' + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --sbindir=/usr/bin \ + --localstatedir=/var \ + --disable-static \ + --enable-fixed-rrset \ + --enable-full-report \ + --with-maxminddb \ + --with-openssl \ + --with-libidn2 \ + --with-json-c \ + --with-libxml2 \ + --with-lmdb + make +} + +package() { + cd "bind-$_pkgver" + install -dm755 "$pkgdir/usr/share/licenses/$pkgname/" + install -Dm644 LICENSE COPYRIGHT "$pkgdir/usr/share/licenses/$pkgname/" + make DESTDIR="$pkgdir" install + + cd "$srcdir" + install -D -m644 tmpfiles.conf "$pkgdir/usr/lib/tmpfiles.d/$pkgname.conf" + install -D -m644 sysusers.conf "$pkgdir/usr/lib/sysusers.d/$pkgname.conf" + + install -D -m644 named.service "$pkgdir/usr/lib/systemd/system/named.service" + install -D -m640 -o 0 -g 40 named.conf "$pkgdir/etc/named.conf" + + install -d -m770 -o 0 -g 40 "$pkgdir/var/named" + install -m640 -o 0 -g 40 localhost.zone "$pkgdir/var/named" + install -m640 -o 0 -g 40 localhost.ip6.zone "$pkgdir/var/named" + install -m640 -o 0 -g 40 127.0.0.zone "$pkgdir/var/named" +} + +# vim:set ts=2 sw=2 et: diff --git a/bind/bind.install b/bind/bind.install new file mode 100644 index 0000000..8cf5b16 --- /dev/null +++ b/bind/bind.install @@ -0,0 +1,10 @@ +## arg 1: the new package version +## arg 2: the old package version +post_upgrade() { + (( $(vercmp "$2" '9.14.8-2') > 0 )) || cat < Switched to geoip2 databases. +==> Remember to update your configuration if you use geoip features. +EOF +} + +# vim:set ts=2 sw=2 ft=sh et: diff --git a/bind/clean b/bind/clean new file mode 100644 index 0000000..b6e9197 --- /dev/null +++ b/bind/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,bind*tar.xz*} diff --git a/bind/deps b/bind/deps new file mode 100644 index 0000000..426eb4f --- /dev/null +++ b/bind/deps @@ -0,0 +1,21 @@ +dnssec-anchors +libedit +json-c +libmaxminddb +libnsl +libuv +libxml2 +lmdb +python +python-ply +jemalloc +libxml2 +dnssec-anchors +python +json-c +python-ply +lmdb +libmaxminddb +libnsl +libuv +python-sphinx diff --git a/bind/key b/bind/key new file mode 100644 index 0000000..3857957 --- /dev/null +++ b/bind/key @@ -0,0 +1 @@ +gpg -v --recv-key 750F3C87723E4012 diff --git a/bind/localhost.ip6.zone b/bind/localhost.ip6.zone new file mode 100644 index 0000000..c021a28 --- /dev/null +++ b/bind/localhost.ip6.zone @@ -0,0 +1,10 @@ +@ 1D IN SOA localhost. root.localhost. ( + 42 ; serial (yyyymmdd##) + 3H ; refresh + 15M ; retry + 1W ; expiry + 1D ) ; minimum ttl + + 1D IN NS localhost. + +1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa. 1D IN PTR localhost. diff --git a/bind/localhost.zone b/bind/localhost.zone new file mode 100644 index 0000000..e87274d --- /dev/null +++ b/bind/localhost.zone @@ -0,0 +1,11 @@ +@ 1D IN SOA localhost. root.localhost. ( + 42 ; serial (yyyymmdd##) + 3H ; refresh + 15M ; retry + 1W ; expiry + 1D ) ; minimum ttl + + 1D IN NS localhost. + +localhost. 1D IN A 127.0.0.1 +localhost. 1D IN AAAA ::1 diff --git a/bind/named.conf b/bind/named.conf new file mode 100644 index 0000000..2ac668d --- /dev/null +++ b/bind/named.conf @@ -0,0 +1,57 @@ +// vim:set ts=4 sw=4 et: + +options { + directory "/var/named"; + pid-file "/run/named/named.pid"; + + // Uncomment these to enable IPv6 connections support + // IPv4 will still work: + // listen-on-v6 { any; }; + // Add this for no IPv4: + // listen-on { none; }; + + allow-recursion { 127.0.0.1; }; + allow-transfer { none; }; + allow-update { none; }; + + version none; + hostname none; + server-id none; +}; + +zone "localhost" IN { + type master; + file "localhost.zone"; +}; + +zone "0.0.127.in-addr.arpa" IN { + type master; + file "127.0.0.zone"; +}; + +zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" { + type master; + file "localhost.ip6.zone"; +}; + +//zone "example.org" IN { +// type slave; +// file "example.zone"; +// masters { +// 192.168.1.100; +// }; +// allow-query { any; }; +// allow-transfer { any; }; +//}; + +//logging { +// channel xfer-log { +// file "/var/log/named.log"; +// print-category yes; +// print-severity yes; +// severity info; +// }; +// category xfer-in { xfer-log; }; +// category xfer-out { xfer-log; }; +// category notify { xfer-log; }; +//}; diff --git a/bind/named.service b/bind/named.service new file mode 100644 index 0000000..e8625b1 --- /dev/null +++ b/bind/named.service @@ -0,0 +1,10 @@ +[Unit] +Description=Internet domain name server +After=network.target + +[Service] +ExecStart=/usr/bin/named -f -u named +ExecReload=/usr/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target diff --git a/bind/sums b/bind/sums new file mode 100644 index 0000000..db074c6 --- /dev/null +++ b/bind/sums @@ -0,0 +1,9 @@ +bind-*.tar.xz +bind-*.tar.xz.asc +tmpfiles.conf +sysusers.conf +named.conf +localhost.zone +localhost.ip6.zone +127.0.0.zone + diff --git a/bind/sysusers.conf b/bind/sysusers.conf new file mode 100644 index 0000000..b02acb1 --- /dev/null +++ b/bind/sysusers.conf @@ -0,0 +1 @@ +u named 40 "BIND DNS Server" - diff --git a/bind/time b/bind/time new file mode 100644 index 0000000..299a56c --- /dev/null +++ b/bind/time @@ -0,0 +1,4 @@ +real 1m11.490s +user 2m31.634s +sys 0m10.079s + diff --git a/bind/tmpfiles.conf b/bind/tmpfiles.conf new file mode 100644 index 0000000..1cfc82d --- /dev/null +++ b/bind/tmpfiles.conf @@ -0,0 +1 @@ +d /run/named 0750 named named - diff --git a/brscan4/PKGBUILD b/brscan4/PKGBUILD new file mode 100644 index 0000000..6dc65d6 --- /dev/null +++ b/brscan4/PKGBUILD @@ -0,0 +1,55 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=brscan4 +pkgver=0.4.11_1 +pkgrel=01 +pkgdesc="SANE drivers from Brother for compatible models" +depends=('sane' 'gtk2') +arch=('x86_64') +_url="https://support.brother.com" +url="https://download.brother.com" +install=brscan4.install + +#[ "$CARCH" = "x86_64" ] && _pkg="dlf105203/${pkgname}-${pkgver/_/-}.x86_64.rpm" || _pkg="dlf105202/${pkgname}-${pkgver/_/-}.i386.rpm" +#[ "$CARCH" = "x86_64" ] && _pkg_md5sum="54dec75887de091fde5fcd511d9a57c3" || _pkg_md5sum="dc87c907c9a2f086dcc56eb2e8fafbbc" + +source=("$url/welcome/dlf105203/${pkgname}-${pkgver/_/-}.x86_64.rpm" + "agree.html" + mk-udev-hwdb) + +build() { + cd "$srcdir" + ./mk-udev-hwdb opt/brother/scanner/brscan4/{Brsane4.ini,models4/*.ini} > hwdb +} + +package() { + cp -r $srcdir/etc $pkgdir + cp -r $srcdir/opt $pkgdir + cp -r $srcdir/usr $pkgdir + [ "$CARCH" = "x86_64" ] && mv $pkgdir/usr/lib64 $pkgdir/usr/lib + install -D -m644 $srcdir/agree.html $pkgdir/usr/share/licenses/$pkgname/LICENSE.html + install -D -m644 $srcdir/hwdb $pkgdir/usr/lib/udev/hwdb.d/20-$pkgname.hwdb + # move the links to the right direction + cd $pkgdir/usr/lib/sane + ln -sf libsane-brother4.so.1.0.7 $pkgdir/usr/lib/sane/libsane-brother4.so.1 + ln -sf libsane-brother4.so.1 $pkgdir/usr/lib/sane/libsane-brother4.so +} + +#---- license gpg-key sha256sums ---- +license=('GPL' 'custom:Brother') + +#md5sums=($_pkg_md5sum = 54dec75887de091fde5fcd511d9a57c3 dc87c907c9a2f086dcc56eb2e8fafbbc# +# 'ccffb9a6f6d436b21be25b0241068981' +# '8966d38375d535028a63a6ef5f6104eb') + +md5sums=(54dec75887de091fde5fcd511d9a57c3 # brscan4-0.4.11-1.x86_64.rpm + ccffb9a6f6d436b21be25b0241068981 # agree.html + 8966d38375d535028a63a6ef5f6104eb) # mk-udev-hwdb + +sha256sums=(7d7dcbe8349ae4d4ab816e4551017f2f1fd9fd6bf3f4f3c570fbd9576248dd9f # brscan4-0.4.11-1.x86_64.rpm + 3434bca1936d6a5fd6afd810cde7e1876dd4d1496722b09af180278480f464f2 # agree.html + 116d959b841fe47eb5047ece2842af33fd659e43a20005ad26bbbaf607c319b5) # mk-udev-hwdb diff --git a/brscan4/PKGBUILD-aur b/brscan4/PKGBUILD-aur new file mode 100644 index 0000000..613b7bf --- /dev/null +++ b/brscan4/PKGBUILD-aur @@ -0,0 +1,38 @@ +# Maintainer: Harvey +license=('GPL' 'custom:Brother') +arch=('i686' 'x86_64') +pkgname=brscan4 +pkgver=0.4.11_1 +pkgrel=1 +pkgdesc="SANE drivers from Brother for compatible models" +depends=('sane' 'gtk2') +url="http://support.brother.com" +install=brscan4.install + +[ "$CARCH" = "x86_64" ] && _pkg="dlf105203/${pkgname}-${pkgver/_/-}.x86_64.rpm" || _pkg="dlf105202/${pkgname}-${pkgver/_/-}.i386.rpm" +[ "$CARCH" = "x86_64" ] && _pkg_md5sum="54dec75887de091fde5fcd511d9a57c3" || _pkg_md5sum="dc87c907c9a2f086dcc56eb2e8fafbbc" + +source=("https://download.brother.com/welcome/$_pkg" + "agree.html" + mk-udev-hwdb) +md5sums=($_pkg_md5sum + 'ccffb9a6f6d436b21be25b0241068981' + '8966d38375d535028a63a6ef5f6104eb') + +build() { + cd "$srcdir" + ./mk-udev-hwdb opt/brother/scanner/brscan4/{Brsane4.ini,models4/*.ini} > hwdb +} + +package() { + cp -r $srcdir/etc $pkgdir + cp -r $srcdir/opt $pkgdir + cp -r $srcdir/usr $pkgdir + [ "$CARCH" = "x86_64" ] && mv $pkgdir/usr/lib64 $pkgdir/usr/lib + install -D -m644 $srcdir/agree.html $pkgdir/usr/share/licenses/$pkgname/LICENSE.html + install -D -m644 $srcdir/hwdb $pkgdir/usr/lib/udev/hwdb.d/20-$pkgname.hwdb + # move the links to the right direction + cd $pkgdir/usr/lib/sane + ln -sf libsane-brother4.so.1.0.7 $pkgdir/usr/lib/sane/libsane-brother4.so.1 + ln -sf libsane-brother4.so.1 $pkgdir/usr/lib/sane/libsane-brother4.so +} diff --git a/brscan4/agree.html b/brscan4/agree.html new file mode 100644 index 0000000..577f6b8 --- /dev/null +++ b/brscan4/agree.html @@ -0,0 +1,248 @@ + + + +End-User License Agreement for Brother Software + + + + + + + + + + + + + + + + + + + + + +
 
+ + + + + + + + +
License Agreement

This Agreement provides terms and conditions for license grant for use + of the software that is distributed with this Agreement ("Software") + from Brother Industries, Ltd. ("Brother") to recipients thereof + ("You").

+ + + + +
Note:
+ Please click on "I Accept" while holding down "Shift" or + right click on "I Accept" and select "Save Target As,,," from + the menu.
+
    +
  1. The Software is comprised of the following software modules:
    +
    + (1) Certain software modules that is the subject of GNU GENERAL PUBLIC + LICENSE ("GPL Modules"), and +
    + (2) Other software modules ("Non-GPL Modules") +
    +
    + You may distinguish each of GPL Modules by downloading source files + of the Software as Brother separately makes available and reading such + files.
    +
  2. +
  3. Your use of all GPL Modules shall be subject to the terms and conditions + of GNU GENERAL PUBLIC LICENSE Version 2, June 1991 ("GPLv2"). + Please see http://www.brother.com/agreement/English_gpl/agree.html. You + shall use GPL Modules in accordance with the terms and conditions of GPLv2. + Your use of GPL Modules shall be deemed + as your agreement to the terms and conditions of GPLv2.
    +
  4. +
  5. You have the right to use all Non-GPL Modules only in accordance with + the following terms and conditions. Your use of Non-GPL Modules shall be + deemed as your agreement to the following terms and conditions: +

    (1) Brother retains any and all copyrights to Non-GPL Modules. In no + case this Agreement shall be construed to assign or otherwise transfer + from Brother to you any copyrights or other intellectual property rights + to whole or any part of Non-GPL Modules.

    +

    (2) Brother grants you a non-exclusive license to reproduce and/or distribute + (via Internet or in any other manner) Non-GPL Modules. Brother further + grants you a non-exclusive license to modify, alter, translate or otherwise + prepare derivative works of Non-GPL Modules and to reproduce and/or distribute + (via Internet or in any other manner) such modification, alteration, + translation or other derivative works of Non-GPL Modules.

    +

    (3) When you distribute (via Internet or in any other manner) Non-GPL + Modules or any modification, alteration, translation or other derivative + works thereof under the license granted in accordance with subparagraph + 3(2) above, you must expressly grant any and all recipient thereof the + license equivalent to this Agreement which applies to Non-GPL Modules.

    +

    (4) The license of Non-GPL Modules from Brother hereunder is granted "AS + IS. BROTHER HEREBY DISCLAIMS ANY WARRANTIES WITH RESPECT TO NON-GPL MODULES, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO WARRANTY FOR THE QUALITY, + MERCHANTABILITY, FITNESS FOR PARTICULAR PURPOSE OR NON-INFRINGEMENT.

    +

    (5) To the extent allowed by applicable laws, Brother shall have no + liability in contract, tort (including negligence or breach of statutory + duty) or otherwise for any interruption of use, loss of data, or for + any indirect, incidental, punitive or consequential loss or damage, or + for any loss of profit, revenue, data, goodwill or anticipated savings + that arises under, out of, or in contemplation of this Agreement or otherwise + arises due to any error, inaccuracy or defect in Non-GPL Modules even + if Brother has been advised of the possibility of such loss or damage.

    +

    (6) The form in which Non-GPL Modules is distributed is subject to Brothers + sole discretion. Brother does not have any obligation to distribute or + disclose Non-GPL Modules in source code form. In no case shall this Agreement + be deemed as Brothers express or implied agreement to disclose source + code of Non-GPL Modules.

    +
  6. +
+ + diff --git a/brscan4/brscan4.install b/brscan4/brscan4.install new file mode 100755 index 0000000..3936d2a --- /dev/null +++ b/brscan4/brscan4.install @@ -0,0 +1,46 @@ +# new package version +devices_file="/opt/brother/scanner/brscan4/brsanenetdevice4.cfg" + +pre_install() { + /bin/true +} + +# new package version +post_install() { + echo "Find additional documentation about scanner driver install at:" + echo "http://welcome.solutions.brother.com/bsc/public_s/id/linux/en/instruction_scn1.html" + echo "For a network installation run the following as root:" + echo "brsaneconfig4 -a name=\"Brother\" model=\"YOURMODELHERE\" ip=YOUR.SCANNER.IP.HERE" + /opt/brother/scanner/brscan4/setupSaneScan4 -i +} + +# the new package version +# old package version +pre_upgrade() { + # If user has already configured their scanner then make a config backup + if [ -f $devices_file ]; then + cp $devices_file $devices_file.backup || return 1 + fi +} + +# new package version +# old package version +post_upgrade() { + # After upgrade revert user's scanner config and delete a config backup + if [ -f $devices_file.backup ]; then + cp $devices_file.backup $devices_file || return 1 + rm $devices_file.backup || return 1 + fi +} + +# old package version +pre_remove() { + /opt/brother/scanner/brscan4/setupSaneScan4 -e + /bin/true +} + +# old package version +post_remove() { + /bin/true +} + diff --git a/brscan4/clean b/brscan4/clean new file mode 100644 index 0000000..231ba30 --- /dev/null +++ b/brscan4/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,*.rpm} diff --git a/brscan4/deps b/brscan4/deps new file mode 100644 index 0000000..f8ae671 --- /dev/null +++ b/brscan4/deps @@ -0,0 +1,2 @@ +sane gtk2 +avahi diff --git a/brscan4/mk-udev-hwdb b/brscan4/mk-udev-hwdb new file mode 100755 index 0000000..cfb3590 --- /dev/null +++ b/brscan4/mk-udev-hwdb @@ -0,0 +1,15 @@ +#!/usr/bin/gawk -f +BEGIN { + FS = ","; + print "# brscan4-supported scanners (or interfaces of MFD)"; + print ""; +} +NF >= 3 && $1 ~ /^0[xX][[:xdigit:]]{4}$/ { + id = toupper( substr( $1, 3 )); + name = $4 + gsub("\"", "", name) + print "# " name; + print "usb:v04F9p" id "*"; + print " libsane_matched=yes"; + print ""; +} diff --git a/brscan4/time b/brscan4/time new file mode 100644 index 0000000..c089c6c --- /dev/null +++ b/brscan4/time @@ -0,0 +1,3 @@ +real 0m2.691s +user 0m1.723s +sys 0m0.262s diff --git a/check/PKGBUILD b/check/PKGBUILD new file mode 100644 index 0000000..94f2e5d --- /dev/null +++ b/check/PKGBUILD @@ -0,0 +1,83 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgbase=check +pkgname=(check check-docs) +pkgver=0.15.2 +pkgrel=02 +pkgdesc="A unit testing framework for C" +url="https://libcheck.github.io/check/" +arch=(x86_64) +makedepends=(git texlive-bin texi2html doxygen awk cmake) +_commit=11970a7e112dfe243a2e68773f014687df2900e8 # tags/0.15.2 +source=("git+https://github.com/libcheck/check#commit=$_commit" + no-static.diff) + +pkgver() { + cd check + git describe --tags | sed 's/-/+/g' +} + +prepare() { + cd check + + # https://bugs.archlinux.org/task/68076 + patch -Np1 -i ../no-static.diff + + autoreconf -fvi +} + +build() { + CFLAGS+=" -Wno-format-extra-args" + + cmake -Hcheck -Bcmake \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE=None \ + -DCHECK_ENABLE_TIMEOUT_TESTS=OFF \ + -DAWK_GSUB_DBL_BSLASH='\\\\' + cmake --build cmake + + cd check + ./configure --prefix=/usr --disable-timeout-tests + make all doc/doxygen doc/check_html +} + +check() { + CTEST_OUTPUT_ON_FAILURE=1 cmake --build cmake --target test + + cd check + make check +} + +package_check() { + depends=(awk) + optdepends=('check-docs: Documentation') + provides=(libcheck.so) + + DESTDIR="$pkgdir" cmake --build cmake --target install + + DESTDIR="$srcdir/tmp" make -C check install + mv tmp/usr/share/{aclocal,info} "$pkgdir/usr/share" + mv tmp/usr/share/doc . + rm -rv tmp +} + +package_check-docs() { + pkgdesc+=" (documentation)" + + cp -a check/doc/doxygen/html doc/check/doxygen + cp -a check/doc/check_html doc/check/manual + + mkdir -p "$pkgdir/usr/share" + mv doc "$pkgdir/usr/share" +} + +#---- license gpg-key sha256sums ---- + +license=(LGPL) + +sha256sums=(SKIP + 1151c40e5bfb08e77175f30f79daadc8c07021c980589a6b33c6f1cf224e48df) # no-static.diff diff --git a/check/PKGBUILD-arch b/check/PKGBUILD-arch new file mode 100644 index 0000000..62b7a9a --- /dev/null +++ b/check/PKGBUILD-arch @@ -0,0 +1,77 @@ +# Maintainer: Jan Alexander Steffens (heftig) +# Contributor: Jaroslav Lichtblau +# Contributor: Jeremy Cowgar + +pkgbase=check +pkgname=(check check-docs) +pkgver=0.15.2 +pkgrel=2 +pkgdesc="A unit testing framework for C" +url="https://libcheck.github.io/check/" +arch=(x86_64) +license=(LGPL) +makedepends=(git texlive-bin texi2html doxygen awk cmake) +_commit=11970a7e112dfe243a2e68773f014687df2900e8 # tags/0.15.2 +source=("git+https://github.com/libcheck/check#commit=$_commit" + no-static.diff) +sha256sums=('SKIP' + '1151c40e5bfb08e77175f30f79daadc8c07021c980589a6b33c6f1cf224e48df') + +pkgver() { + cd check + git describe --tags | sed 's/-/+/g' +} + +prepare() { + cd check + + # https://bugs.archlinux.org/task/68076 + patch -Np1 -i ../no-static.diff + + autoreconf -fvi +} + +build() { + CFLAGS+=" -Wno-format-extra-args" + + cmake -Hcheck -Bcmake \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE=None \ + -DCHECK_ENABLE_TIMEOUT_TESTS=OFF \ + -DAWK_GSUB_DBL_BSLASH='\\\\' + cmake --build cmake + + cd check + ./configure --prefix=/usr --disable-timeout-tests + make all doc/doxygen doc/check_html +} + +check() { + CTEST_OUTPUT_ON_FAILURE=1 cmake --build cmake --target test + + cd check + make check +} + +package_check() { + depends=(awk) + optdepends=('check-docs: Documentation') + provides=(libcheck.so) + + DESTDIR="$pkgdir" cmake --build cmake --target install + + DESTDIR="$srcdir/tmp" make -C check install + mv tmp/usr/share/{aclocal,info} "$pkgdir/usr/share" + mv tmp/usr/share/doc . + rm -rv tmp +} + +package_check-docs() { + pkgdesc+=" (documentation)" + + cp -a check/doc/doxygen/html doc/check/doxygen + cp -a check/doc/check_html doc/check/manual + + mkdir -p "$pkgdir/usr/share" + mv doc "$pkgdir/usr/share" +} diff --git a/check/clean b/check/clean new file mode 100644 index 0000000..ee6435e --- /dev/null +++ b/check/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,check} diff --git a/check/deps b/check/deps new file mode 100644 index 0000000..e6b946f --- /dev/null +++ b/check/deps @@ -0,0 +1,7 @@ +git +texlive-bin +texi2html +doxygen +cmake +autoconf +automake diff --git a/check/no-static.diff b/check/no-static.diff new file mode 100644 index 0000000..5a333f4 --- /dev/null +++ b/check/no-static.diff @@ -0,0 +1,13 @@ +diff --git i/src/CMakeLists.txt w/src/CMakeLists.txt +index 4a02dbe..4d731c9 100644 +--- i/src/CMakeLists.txt ++++ w/src/CMakeLists.txt +@@ -188,7 +188,7 @@ target_include_directories(checkShared + ) + + if(NOT THIS_IS_SUBPROJECT) +- install(TARGETS check checkShared ++ install(TARGETS checkShared + EXPORT check-targets + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} diff --git a/check/time b/check/time new file mode 100644 index 0000000..c93f5d6 --- /dev/null +++ b/check/time @@ -0,0 +1,5 @@ + +real 0m30.382s +user 0m43.742s +sys 0m4.891s + diff --git a/clipit/PKGBUILD b/clipit/PKGBUILD new file mode 100644 index 0000000..b397c4d --- /dev/null +++ b/clipit/PKGBUILD @@ -0,0 +1,37 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=clipit +_pkgname=ClipIt +pkgver=1.4.5 +pkgrel=03 +pkgdesc="Lightweight GTK+ clipboard manager (fork of Parcellite)" +arch=('i686' 'x86_64') +url="https://github.com/CristianHenzel/ClipIt/" +depends=('gtk3' 'libappindicator-gtk3') +makedepends=('intltool') +optdepends=('xdotool: for automatic paste') +source=("${_pkgname}-${pkgver}.tar.gz::${url}archive/v${pkgver}.tar.gz") + +build() { + cd "${srcdir}/${_pkgname}-${pkgver}" + ./autogen.sh + ./configure --prefix=/usr --sysconfdir=/etc --with-gtk3 + make +} + +package() { + cd "${srcdir}/${_pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install +} + +#---- license gpg-key sha256sums ---- + +license=('GPL3') + +md5sums=('4BDAC39A13EDBFF09D66959F94CCCAED') + +sha256sums=(f0bbd1b4ff07bb4509388cf5b7f7a25fd72ec02cdd8f4c8f5ff3f5f9ca6da514) # ClipIt-1.4.5.tar.gz diff --git a/clipit/clean b/clipit/clean new file mode 100644 index 0000000..bff66d6 --- /dev/null +++ b/clipit/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,*tar.gz*} diff --git a/clipit/deps b/clipit/deps new file mode 100644 index 0000000..3852ea4 --- /dev/null +++ b/clipit/deps @@ -0,0 +1,5 @@ +automake +autoconf +libappindicator-gtk3 +intltool +gettext diff --git a/cmake/PKGBUILD b/cmake/PKGBUILD new file mode 100644 index 0000000..3050e2a --- /dev/null +++ b/cmake/PKGBUILD @@ -0,0 +1,47 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=cmake +pkgver=3.22.3 +pkgrel=01 +pkgdesc='A cross-platform open-source make system' +arch=('x86_64') +url="https://www.cmake.org/" +depends=('curl' 'libarchive' 'hicolor-icon-theme' 'jsoncpp' 'libuv' 'rhash') +makedepends=( 'python-sphinx' 'emacs-git') +optdepends=('qt6-base: cmake-gui') +source=("https://www.cmake.org/files/v${pkgver%.*}/${pkgname}-${pkgver}.tar.gz") + +build() { + cd ${pkgname}-${pkgver} +# export CXXFLAGS+=" ${CPPFLAGS}" + ./bootstrap --prefix=/usr \ + --mandir=/share/man \ + --docdir=/share/doc/cmake \ + --datadir=/share/cmake \ + --sphinx-man \ + --sphinx-html \ + --system-libs \ + --parallel=$(/usr/bin/getconf _NPROCESSORS_ONLN) + make +} +# --qt-gui \ + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + + rm -r "$pkgdir"/usr/share/doc/cmake/html/_sources + emacs -batch -f batch-byte-compile "${pkgdir}"/usr/share/emacs/site-lisp/cmake-mode.el + install -Dm644 Copyright.txt "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE +} + +#---- license gpg-key sha256sums ---- + +license=('custom') + +sha256sums=(9f8469166f94553b6978a16ee29227ec49a2eb5ceb608275dec40d8ae0d1b5a0) # cmake-3.22.3.tar.gz diff --git a/cmake/PKGBUILD-arch b/cmake/PKGBUILD-arch new file mode 100644 index 0000000..55c8f15 --- /dev/null +++ b/cmake/PKGBUILD-arch @@ -0,0 +1,39 @@ +# Maintainer: Felix Yan +# Contributor: Andrea Scarpino +# Contributor: Pierre Schmitz + +pkgname=cmake +pkgver=3.22.3 +pkgrel=1 +pkgdesc='A cross-platform open-source make system' +arch=('x86_64') +url="https://www.cmake.org/" +license=('custom') +depends=('curl' 'libarchive' 'hicolor-icon-theme' 'jsoncpp' 'libjsoncpp.so' 'libuv' 'rhash') +makedepends=('qt6-base' 'python-sphinx' 'emacs') +optdepends=('qt6-base: cmake-gui') +source=("https://www.cmake.org/files/v${pkgver%.*}/${pkgname}-${pkgver}.tar.gz") +sha512sums=('a35003468153b99770ac6bbdeaa611a231a1104560da36aca0f393b8b71dbb44d854378504d2ec6b4af615f78efe18d91453fe15a1b7ec58129aa0289a5a1507') + +build() { + cd ${pkgname}-${pkgver} + ./bootstrap --prefix=/usr \ + --mandir=/share/man \ + --docdir=/share/doc/cmake \ + --datadir=/share/cmake \ + --sphinx-man \ + --sphinx-html \ + --system-libs \ + --qt-gui \ + --parallel=$(/usr/bin/getconf _NPROCESSORS_ONLN) + make +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + + rm -r "$pkgdir"/usr/share/doc/cmake/html/_sources + emacs -batch -f batch-byte-compile "${pkgdir}"/usr/share/emacs/site-lisp/cmake-mode.el + install -Dm644 Copyright.txt "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE +} diff --git a/cmake/clean b/cmake/clean new file mode 100644 index 0000000..ed96871 --- /dev/null +++ b/cmake/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,cmake-*.gz} diff --git a/cmake/cmake-cppflags.patch b/cmake/cmake-cppflags.patch new file mode 100644 index 0000000..ffac66c --- /dev/null +++ b/cmake/cmake-cppflags.patch @@ -0,0 +1,26 @@ +diff --git a/Modules/CMakeCInformation.cmake b/Modules/CMakeCInformation.cmake +index f6d620f40e..325b11f25e 100644 +--- a/Modules/CMakeCInformation.cmake ++++ b/Modules/CMakeCInformation.cmake +@@ -100,7 +100,7 @@ if(NOT CMAKE_MODULE_EXISTS) + set(CMAKE_SHARED_MODULE_CREATE_C_FLAGS ${CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS}) + endif() + +-set(CMAKE_C_FLAGS_INIT "$ENV{CFLAGS} ${CMAKE_C_FLAGS_INIT}") ++set(CMAKE_C_FLAGS_INIT "$ENV{CPPFLAGS} $ENV{CFLAGS} ${CMAKE_C_FLAGS_INIT}") + + cmake_initialize_per_config_variable(CMAKE_C_FLAGS "Flags used by the C compiler") + +diff --git a/Modules/CMakeCXXInformation.cmake b/Modules/CMakeCXXInformation.cmake +index dbb4366757..8a0ee288c6 100644 +--- a/Modules/CMakeCXXInformation.cmake ++++ b/Modules/CMakeCXXInformation.cmake +@@ -197,7 +197,7 @@ endforeach() + # on the initial values computed in the platform/*.cmake files + # use _INIT variables so that this only happens the first time + # and you can set these flags in the cmake cache +-set(CMAKE_CXX_FLAGS_INIT "$ENV{CXXFLAGS} ${CMAKE_CXX_FLAGS_INIT}") ++set(CMAKE_CXX_FLAGS_INIT "$ENV{CPPFLAGS} $ENV{CXXFLAGS} ${CMAKE_CXX_FLAGS_INIT}") + + cmake_initialize_per_config_variable(CMAKE_CXX_FLAGS "Flags used by the CXX compiler") + diff --git a/cmake/deps b/cmake/deps new file mode 100644 index 0000000..9888c34 --- /dev/null +++ b/cmake/deps @@ -0,0 +1,7 @@ +hicolor-icon-theme +jsoncpp +libuv +rhash +python-sphinx +emacs-git +qt6-base diff --git a/cmake/error b/cmake/error new file mode 100644 index 0000000..d8f66e2 --- /dev/null +++ b/cmake/error @@ -0,0 +1,8 @@ + +[ 74%] Built target cmake +[ 75%] Generating ui_WarningMessagesDialog.h +/usr/lib/qt6/uic: error while loading shared libraries: libsystemd.so.0: cannot open shared object file: No such file or directory +make[2]: *** [Source/QtDialog/CMakeFiles/CMakeGUILib.dir/build.make:105: Source/QtDialog/ui_WarningMessagesDialog.h] Error 127 +make[1]: *** [CMakeFiles/Makefile2:1802: Source/QtDialog/CMakeFiles/CMakeGUILib.dir/all] Error 2 +make[1]: *** Waiting for unfinished jobs.... + diff --git a/cmake/note-on-error b/cmake/note-on-error new file mode 100644 index 0000000..de9ea1a --- /dev/null +++ b/cmake/note-on-error @@ -0,0 +1,3 @@ +build qt6-base w/o systemd to come back to cmake +the crap builds with qt6-base which asks for systemd-libs and it is tough to configure +Maybe ANY qt support should be dropped on this build, but we will get back to it later. diff --git a/cmake/time b/cmake/time new file mode 100644 index 0000000..6b18465 --- /dev/null +++ b/cmake/time @@ -0,0 +1,5 @@ + +real 12m2.381s +user 41m22.338s +sys 1m37.571s + diff --git a/cmus-git/PKGBUILD b/cmus-git/PKGBUILD new file mode 100644 index 0000000..88f6e9f --- /dev/null +++ b/cmus-git/PKGBUILD @@ -0,0 +1,74 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=cmus-git +pkgver=v2.9.1.r25.g54d7213 +pkgrel=02 +pkgdesc="Small, fast and powerful console music player for Unix-like operating systems." +arch=('x86_64' 'aarch64') +url="https://cmus.github.io/" +depends=('ncurses' 'libdiscid') +makedepends=('git' + 'faad2' + 'ffmpeg' + 'flac' + 'jack' + 'libao' + 'libcdio-paranoia' + 'libmad' + 'libmodplug' + 'libmp4v2' + 'libmpcdec' + 'libpulse' + 'libsamplerate' + 'libvorbis' + 'opusfile' + 'wavpack') +optdepends=('alsa-lib: for ALSA output plugin support' + 'libao: for AO output plugin support' + 'libpulse: for PulseAudio output plugin support' + 'faad2: for AAC input plugin support' + 'ffmpeg: for ffmpeg input plugin support' + 'flac: for flac input plugin support' + 'jack: for jack plugin support' + 'libmad: for mp3 input plugin support' + 'libmodplug: for modplug input plugin support' + 'libmp4v2: for mp4 input plugin support' + 'libmpcdec: for musepack input plugin support' + 'libsamplerate: for sampe rate converter support' + 'libvorbis: for vorbis input plugin support' + 'libcdio-paranoia: for cdio support' + 'opusfile: for opus input plugin support' + 'wavpack: for wavpack input plugin support') +conflicts=('cmus') +provides=('cmus') +source=('git+https://github.com/cmus/cmus.git') +_gitname=cmus + +pkgver() { + cd "$_gitname" + git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g' +} + +build() { + cd "$_gitname" + ./configure prefix=/usr + make +} + +package() { + cd "$_gitname" + make DESTDIR="$pkgdir" install + install -Dm644 contrib/cmus.bash-completion "$pkgdir"/usr/share/bash-completion/completions/cmus + install -Dm644 contrib/_cmus "$pkgdir"/usr/share/zsh/site-functions/_cmus +} + +#---- license gpg-key sha256sums ---- + +license=(GPL) + +sha256sums=(SKIP) + diff --git a/cmus-git/PKGBUILD-aur b/cmus-git/PKGBUILD-aur new file mode 100644 index 0000000..87415d7 --- /dev/null +++ b/cmus-git/PKGBUILD-aur @@ -0,0 +1,65 @@ +# Maintainer: Kamran Mackey + +pkgname=cmus-git +pkgver=v2.9.1.r25.g54d7213 +pkgrel=2 +pkgdesc="Small, fast and powerful console music player for Unix-like operating systems." +arch=('x86_64' 'aarch64') +url="https://cmus.github.io/" +depends=('ncurses' 'libdiscid') +makedepends=('git' + 'faad2' + 'ffmpeg' + 'flac' + 'jack' + 'libao' + 'libcdio-paranoia' + 'libmad' + 'libmodplug' + 'libmp4v2' + 'libmpcdec' + 'libpulse' + 'libsamplerate' + 'libvorbis' + 'opusfile' + 'wavpack') +optdepends=('alsa-lib: for ALSA output plugin support' + 'libao: for AO output plugin support' + 'libpulse: for PulseAudio output plugin support' + 'faad2: for AAC input plugin support' + 'ffmpeg: for ffmpeg input plugin support' + 'flac: for flac input plugin support' + 'jack: for jack plugin support' + 'libmad: for mp3 input plugin support' + 'libmodplug: for modplug input plugin support' + 'libmp4v2: for mp4 input plugin support' + 'libmpcdec: for musepack input plugin support' + 'libsamplerate: for sampe rate converter support' + 'libvorbis: for vorbis input plugin support' + 'libcdio-paranoia: for cdio support' + 'opusfile: for opus input plugin support' + 'wavpack: for wavpack input plugin support') +conflicts=('cmus') +provides=('cmus') +license=('GPL') +source=('git+https://github.com/cmus/cmus.git') +sha512sums=('SKIP') +_gitname=cmus + +pkgver() { + cd "$_gitname" + git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g' +} + +build() { + cd "$_gitname" + ./configure prefix=/usr + make +} + +package() { + cd "$_gitname" + make DESTDIR="$pkgdir" install + install -Dm644 contrib/cmus.bash-completion "$pkgdir"/usr/share/bash-completion/completions/cmus + install -Dm644 contrib/_cmus "$pkgdir"/usr/share/zsh/site-functions/_cmus +} diff --git a/cmus-git/clean b/cmus-git/clean new file mode 100644 index 0000000..6ed061b --- /dev/null +++ b/cmus-git/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,cmus} diff --git a/cmus-git/deps b/cmus-git/deps new file mode 100644 index 0000000..bbbcee5 --- /dev/null +++ b/cmus-git/deps @@ -0,0 +1,17 @@ +libdiscid +git +faad2 +ffmpeg +flac +jack2 +libao +libcdio-paranoia +libmad +libmodplug +libmp4v2 +libmpcdec +libpulse +libsamplerate +libvorbis +opusfile +wavpack diff --git a/cmus-git/time b/cmus-git/time new file mode 100644 index 0000000..b77345b --- /dev/null +++ b/cmus-git/time @@ -0,0 +1,3 @@ +real 0m12.920s +user 0m22.504s +sys 0m1.719s diff --git a/colord/PKGBUILD b/colord/PKGBUILD new file mode 100644 index 0000000..0952823 --- /dev/null +++ b/colord/PKGBUILD @@ -0,0 +1,106 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgbase=colord +pkgname=(colord colord-sane libcolord) +pkgver=1.4.6 +pkgrel=01 +pkgdesc="System daemon for managing color devices" +url="https://www.freedesktop.org/software/colord" +arch=(x86_64) +depends=(lcms2 libgusb polkit sqlite dconf dbus libgudev shared-mime-info ) +makedepends=(gobject-introspection vala sane bash-completion argyllcms git meson gtk-doc + docbook-xsl) +options=(!emptydirs) +_commit=43c19fd019da5f69d2ebc00a9908b1dd83129485 # tags/1.4.6^0 +source=("git+https://github.com/hughsie/colord#commit=$_commit" + colord.sysusers + colord.tmpfiles) + +pkgver() { + cd colord + git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g' +} + +prepare() { + cd colord +} + +build() { + arch-meson colord build \ + -D libcolordcompat=true \ + -D sane=true \ + -D vapi=true \ + -D print_profiles=true \ + -D daemon_user=colord \ + -D systemd=false + meson compile -C build +} + +check() { + meson test -C build --print-errorlogs +} + +_pick() { + local p="$1" f d; shift + for f; do + d="$srcdir/$p/${f#$pkgdir/}" + mkdir -p "$(dirname "$d")" + mv "$f" "$d" + rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")" + done +} + +package_colord() { + depends+=("libcolord=$pkgver-$pkgrel") + optdepends=('argyllcms: color profiling' + 'colord-sane: SANE support') + provides=(libcolorhug.so) + replaces=(shared-color-profiles) + + meson install -C build --destdir "$pkgdir" + +# echo 'u colord - "Color management daemon" /var/lib/colord' | +# install -Dm644 /dev/stdin "$pkgdir/usr/lib/sysusers.d/colord.conf" + + install -D -m644 "$srcdir"/colord.tmpfiles "$pkgdir"/usr/lib/tmpfiles.d/colord.conf + install -Dm644 "$srcdir"/colord.sysusers "$pkgdir"/usr/lib/sysusers.d/colord.conf + + cd "$pkgdir" + + _pick sane usr/lib/colord-sane + _pick sane usr/lib/colord-plugins/libcolord_sensor_sane.so + + _pick lib usr/include/colord-1/colord{,.h} + _pick lib usr/lib/libcolord{,compat}.so* + _pick lib usr/lib/girepository-1.0/Colord-1.0.typelib + _pick lib usr/lib/pkgconfig/colord.pc + _pick lib usr/share/gir-1.0/Colord-1.0.gir +} + +package_colord-sane() { + pkgdesc+=" (SANE support)" + depends=("colord=$pkgver-$pkgrel" sane) + mv sane/* "$pkgdir" +} + +package_libcolord() { + pkgdesc+=" (client library)" + depends=(glib2 lcms2) + provides=(libcolord.so) + mv lib/* "$pkgdir" +} + +#---- license gpg-key sha256sums ---- + +license=(GPL2) + +validpgpkeys=('163EB50119225DB3DF8F49EA17ACBA8DFA970E17') # Richard Hughes + +sha256sums=(SKIP + 737de4459587d85a35c29e8ac7f7feb2ad6b4d3546c0f87c8f3c7fefddbaa835 # colord.sysusers + e7b6b72c59058f70e2a0f1c5f4f57cdbc2b60b187ae3c27c108e5f78a05eebc2) # colord.tmpfiles diff --git a/colord/PKGBUILD-arch b/colord/PKGBUILD-arch new file mode 100644 index 0000000..3506794 --- /dev/null +++ b/colord/PKGBUILD-arch @@ -0,0 +1,91 @@ +# Maintainer: Jan Alexander Steffens (heftig) +# Contributor: Ionut Biru + +pkgbase=colord +pkgname=(colord colord-sane libcolord) +pkgver=1.4.6 +pkgrel=1 +pkgdesc="System daemon for managing color devices" +url="https://www.freedesktop.org/software/colord" +arch=(x86_64) +license=(GPL2) +depends=(lcms2 libgusb polkit sqlite dconf dbus libgudev shared-mime-info systemd) +makedepends=(gobject-introspection vala sane bash-completion argyllcms git meson gtk-doc + docbook-xsl) +options=(!emptydirs) +_commit=43c19fd019da5f69d2ebc00a9908b1dd83129485 # tags/1.4.6^0 +source=("git+https://github.com/hughsie/colord#commit=$_commit") +sha256sums=('SKIP') +validpgpkeys=('163EB50119225DB3DF8F49EA17ACBA8DFA970E17') # Richard Hughes + +pkgver() { + cd colord + git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g' +} + +prepare() { + cd colord +} + +build() { + arch-meson colord build \ + -D libcolordcompat=true \ + -D sane=true \ + -D vapi=true \ + -D print_profiles=true \ + -D daemon_user=colord + meson compile -C build +} + +check() { + meson test -C build --print-errorlogs +} + +_pick() { + local p="$1" f d; shift + for f; do + d="$srcdir/$p/${f#$pkgdir/}" + mkdir -p "$(dirname "$d")" + mv "$f" "$d" + rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")" + done +} + +package_colord() { + depends+=("libcolord=$pkgver-$pkgrel") + optdepends=('argyllcms: color profiling' + 'colord-sane: SANE support') + provides=(libcolorhug.so) + replaces=(shared-color-profiles) + + meson install -C build --destdir "$pkgdir" + + echo 'u colord - "Color management daemon" /var/lib/colord' | + install -Dm644 /dev/stdin "$pkgdir/usr/lib/sysusers.d/colord.conf" + + cd "$pkgdir" + + _pick sane usr/lib/colord-sane + _pick sane usr/lib/colord-plugins/libcolord_sensor_sane.so + + _pick lib usr/include/colord-1/colord{,.h} + _pick lib usr/lib/libcolord{,compat}.so* + _pick lib usr/lib/girepository-1.0/Colord-1.0.typelib + _pick lib usr/lib/pkgconfig/colord.pc + _pick lib usr/share/gir-1.0/Colord-1.0.gir +} + +package_colord-sane() { + pkgdesc+=" (SANE support)" + depends=("colord=$pkgver-$pkgrel" sane) + mv sane/* "$pkgdir" +} + +package_libcolord() { + pkgdesc+=" (client library)" + depends=(glib2 lcms2 systemd) + provides=(libcolord.so) + mv lib/* "$pkgdir" +} + +# vim:set sw=2 et: diff --git a/colord/clean b/colord/clean new file mode 100644 index 0000000..b36f705 --- /dev/null +++ b/colord/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,colord} diff --git a/colord/colord.sysusers b/colord/colord.sysusers new file mode 100644 index 0000000..dc7d896 --- /dev/null +++ b/colord/colord.sysusers @@ -0,0 +1 @@ +u colord - "Color management daemon" /var/lib/colord diff --git a/colord/colord.tmpfiles b/colord/colord.tmpfiles new file mode 100644 index 0000000..d154045 --- /dev/null +++ b/colord/colord.tmpfiles @@ -0,0 +1,2 @@ +d /var/lib/colord 0755 colord colord +d /var/lib/colord/icc 0755 colord colord diff --git a/colord/deps b/colord/deps new file mode 100644 index 0000000..7f84d0e --- /dev/null +++ b/colord/deps @@ -0,0 +1,19 @@ +lcms2 +libgusb +polkit +dconf +libgudev +shared-mime-info +gobject-introspection +vala +sane +bash-completion +argyllcms +git +gtk-doc +docbook-xsl +cmake +eudev +valgrind +meson +gettext diff --git a/colord/key b/colord/key new file mode 100644 index 0000000..1d25053 --- /dev/null +++ b/colord/key @@ -0,0 +1 @@ +gpg -v --recv-key 17ACBA8DFA970E17 diff --git a/colord/time b/colord/time new file mode 100644 index 0000000..dd702bf --- /dev/null +++ b/colord/time @@ -0,0 +1,5 @@ + +real 2m48.512s +user 9m20.691s +sys 0m8.458s + diff --git a/conky/PKGBUILD b/conky/PKGBUILD new file mode 100644 index 0000000..5e22fe1 --- /dev/null +++ b/conky/PKGBUILD @@ -0,0 +1,102 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- +# Based on AUR pkgname=conky-lua-archers +# Maintainer : Yiannis A Ginis +# Contributor : Spyros Stathopoulos +# Contributor : Chris Sakalis + +pkgname=conky +pkgver=1.11.3 +pkgrel=03 +pkgdesc="A free, light-weight system monitor for X with lua enabled for Arch based distros" +arch=('i686' 'x86_64') +url="https://github.com/brndnmtthws/conky" +replaces=('torsmo' 'conky-lua' 'conky-lua-arch' 'conky-lua-archers-git') +provides=("conky=${pkgver}") +conflicts=('conky-lua' 'conky-lua-arch' 'conky-lua-nv' 'conky-lua-archers-git' 'conky-lua-archers') + +depends=( + 'alsa-lib' + 'cairo' + 'curl' + 'glib2' + 'imlib2' + 'librsvg' + 'libxdamage' + 'libxft' + 'libxinerama' + 'libxml2' +# 'libxnvctrl' + 'lua' + 'lua51' + 'tolua++' +# 'wireless_tools' +) + +makedepends=( + 'cmake' + 'docbook2x' + 'docbook-xml' + 'docbook-xsl' + 'perl-xml-libxml' + 'perl-xml-sax-expat' +) +source=("https://github.com/brndnmtthws/${pkgname}/archive/v${pkgver}.tar.gz") +options=('strip' '!debug' '!emptydirs') + +prepare() { + cd "${srcdir}/${pkgname}-${pkgver}" +} + +build() { + cd ${srcdir}/${pkgname}-${pkgver} + cmake \ + -D CMAKE_BUILD_TYPE=MinSizeRel \ + -D CMAKE_INSTALL_PREFIX=/usr \ + -D MAINTAINER_MODE=OFF \ + -D BUILD_BUILTIN_CONFIG=ON \ + -D BUILD_APCUPSD=OFF \ + -D BUILD_ARGB=ON \ + -D BUILD_CURL=ON \ + -D BUILD_I18N=OFF \ + -D BUILD_IBM=OFF \ + -D BUILD_IMLIB2=ON \ + -D BUILD_IOSTATS=OFF \ + -D BUILD_IPV6=OFF \ + -D BUILD_LUA_CAIRO=ON \ + -D BUILD_LUA_IMLIB2=ON \ + -D BUILD_LUA_RSVG=ON \ + -D BUILD_MOC=OFF \ + -D BUILD_MPD=OFF \ + -D BUILD_NVIDIA=OFF \ + -D BUILD_OLD_CONFIG=ON \ + -D BUILD_PULSEAUDIO=OFF \ + -D BUILD_WLAN=OFF \ + -D BUILD_X11=ON \ + -D BUILD_XDAMAGE=ON \ + -D BUILD_XDBE=ON \ + -D BUILD_XFT=ON \ + -D BUILD_XINERAMA=ON \ + -D DEFAULTNETDEV=eth0 \ + -D OWN_WINDOW=ON \ + . + make +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + make DESTDIR=${pkgdir} install + install -D -m644 LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE + install -D -m644 LICENSE.BSD ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.BSD + install -D -m644 extras/vim/syntax/conkyrc.vim "${pkgdir}"/usr/share/vim/vimfiles/syntax/conkyrc.vim + install -D -m644 extras/vim/ftdetect/conkyrc.vim "${pkgdir}"/usr/share/vim/vimfiles/ftdetect/conkyrc.vim +} + +#---- license gpg-key sha256sums ---- + +license=('GPL3' 'BSD') + +sha256sums=(0140e749537d4d05bf33fbac436e54756faa26021e16f2bca418e9eeea724eb4) # v1.11.3.tar.gz diff --git a/conky/asciime.patch b/conky/asciime.patch new file mode 100644 index 0000000..57725e1 --- /dev/null +++ b/conky/asciime.patch @@ -0,0 +1,12 @@ +diff -aur old/doc/config_settings.xml new/doc/config_settings.xml +--- unicode/doc/config_settings.xml 2016-07-20 19:53:48.000000000 +0300 ++++ ascii/doc/config_settings-new.xml 2016-08-09 10:05:46.094287298 +0300 +@@ -80,7 +80,7 @@ + + A comma-separated list of strings to use as the bars of a graph output + to console/shell. The first list item is used for the minimum bar height and the +- last item is used for the maximum. Example: " ,_,▁,▂,▃,▄,▅,▆,▇,█". ++ last item is used for the maximum. + + + diff --git a/conky/clean b/conky/clean new file mode 100644 index 0000000..8aada00 --- /dev/null +++ b/conky/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,v1.*gz} diff --git a/conky/conky-lua-archers-PKGBUILD b/conky/conky-lua-archers-PKGBUILD new file mode 100644 index 0000000..f81c5e6 --- /dev/null +++ b/conky/conky-lua-archers-PKGBUILD @@ -0,0 +1,88 @@ +# Maintainer : Yiannis A Ginis +# Contributor : Spyros Stathopoulos +# Contributor : Chris Sakalis + +pkgname=conky-lua-archers +_pkgname=conky +pkgver=1.11.3 +pkgrel=3 +pkgdesc="A free, light-weight system monitor for X with lua enabled for Arch based distros" +arch=('i686' 'x86_64') +url="https://github.com/brndnmtthws/conky" +license=('GPL3' 'BSD') +replaces=('torsmo' 'conky') +provides=("conky=${pkgver}") +conflicts=('conky' 'conky-lua' 'conky-lua-arch' 'conky-lua-nv' 'conky-lua-archers-git') +depends=( + 'alsa-lib' + 'cairo' + 'curl' + 'glib2' + 'imlib2' + 'librsvg' + 'libxdamage' + 'libxft' + 'libxml2' + 'lua' + 'lua51' + 'tolua++' +) +makedepends=( + 'cmake' + 'docbook2x' + 'docbook-xml' + 'docbook-xsl' + 'perl-xml-libxml' + 'perl-xml-sax-expat' +) +source=("https://github.com/brndnmtthws/${_pkgname}/archive/v${pkgver}.tar.gz") +sha256sums=('0140e749537d4d05bf33fbac436e54756faa26021e16f2bca418e9eeea724eb4') +options=('strip' '!debug' '!emptydirs') + +prepare() { + cd "${srcdir}/${_pkgname}-${pkgver}" +} + +build() { + cd ${srcdir}/${_pkgname}-${pkgver} + cmake \ + -D CMAKE_BUILD_TYPE=MinSizeRel \ + -D CMAKE_INSTALL_PREFIX=/usr \ + -D MAINTAINER_MODE=OFF \ + -D BUILD_BUILTIN_CONFIG=ON \ + -D BUILD_APCUPSD=OFF \ + -D BUILD_ARGB=ON \ + -D BUILD_CURL=ON \ + -D BUILD_I18N=ON \ + -D BUILD_IBM=OFF \ + -D BUILD_IMLIB2=ON \ + -D BUILD_IOSTATS=ON \ + -D BUILD_IPV6=OFF \ + -D BUILD_LUA_CAIRO=ON \ + -D BUILD_LUA_IMLIB2=ON \ + -D BUILD_LUA_RSVG=ON \ + -D BUILD_MOC=OFF \ + -D BUILD_MPD=OFF \ + -D BUILD_NVIDIA=OFF \ + -D BUILD_OLD_CONFIG=ON \ + -D BUILD_PULSEAUDIO=OFF \ + -D BUILD_WLAN=OFF \ + -D BUILD_X11=ON \ + -D BUILD_XDAMAGE=ON \ + -D BUILD_XDBE=ON \ + -D BUILD_XFT=ON \ + -D BUILD_XINERAMA=OFF \ + -D DEFAULTNETDEV=eth0 \ + -D OWN_WINDOW=ON \ + . + make +} + +package() { + cd ${srcdir}/${_pkgname}-${pkgver} + make DESTDIR=${pkgdir} install + install -D -m644 LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE + install -D -m644 LICENSE.BSD ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.BSD + install -D -m644 extras/vim/syntax/conkyrc.vim "${pkgdir}"/usr/share/vim/vimfiles/syntax/conkyrc.vim + install -D -m644 extras/vim/ftdetect/conkyrc.vim "${pkgdir}"/usr/share/vim/vimfiles/ftdetect/conkyrc.vim +} diff --git a/conky/conky-lua-archers-PKGBUILD-yianiris b/conky/conky-lua-archers-PKGBUILD-yianiris new file mode 100644 index 0000000..6a7c3ee --- /dev/null +++ b/conky/conky-lua-archers-PKGBUILD-yianiris @@ -0,0 +1,91 @@ +# Maintainer : Yiannis A Ginis +# Contributor : Spyros Stathopoulos +# Contributor : Chris Sakalis +# Maintainer : YianIris +# This is fungalnet's take on conky, pulseaudio, ipv6 turned off but adjust your own if you like +# NVIDIA is turned off as well +# +pkgname=conky-lua-archers +_pkgname=conky +pkgver=1.11.3 +pkgrel=3 +pkgdesc="A free, light-weight system monitor for X with lua enabled for Arch based distros" +arch=('i686' 'x86_64') +url="https://github.com/brndnmtthws/conky" +license=('GPL3' 'BSD') +replaces=('torsmo' 'conky') +provides=("conky=${pkgver}") +conflicts=('conky' 'conky-lua' 'conky-lua-arch' 'conky-lua-nv' 'conky-lua-archers-git') +depends=( + 'alsa-lib' + 'cairo' + 'curl' + 'glib2' + 'imlib2' + 'librsvg' + 'libxdamage' + 'libxft' + 'libxml2' + 'lua' + 'lua51' + 'tolua++' +) +makedepends=( + 'cmake' + 'docbook2x' + 'docbook-xml' + 'docbook-xsl' + 'perl-xml-libxml' + 'perl-xml-sax-expat' +) +source=("https://github.com/brndnmtthws/${_pkgname}/archive/v${pkgver}.tar.gz") +sha256sums=('0140e749537d4d05bf33fbac436e54756faa26021e16f2bca418e9eeea724eb4') +options=('strip' '!debug' '!emptydirs') + +prepare() { + cd "${srcdir}/${_pkgname}-${pkgver}" +} + +build() { + cd ${srcdir}/${_pkgname}-${pkgver} + cmake \ + -D CMAKE_BUILD_TYPE=MinSizeRel \ + -D CMAKE_INSTALL_PREFIX=/usr \ + -D MAINTAINER_MODE=OFF \ + -D BUILD_BUILTIN_CONFIG=ON \ + -D BUILD_APCUPSD=OFF \ + -D BUILD_ARGB=ON \ + -D BUILD_CURL=ON \ + -D BUILD_I18N=ON \ + -D BUILD_IBM=OFF \ + -D BUILD_IMLIB2=ON \ + -D BUILD_IOSTATS=ON \ + -D BUILD_IPV6=OFF \ + -D BUILD_LUA_CAIRO=ON \ + -D BUILD_LUA_IMLIB2=ON \ + -D BUILD_LUA_RSVG=ON \ + -D BUILD_MOC=OFF \ + -D BUILD_MPD=OFF \ + -D BUILD_NVIDIA=OFF \ + -D BUILD_OLD_CONFIG=ON \ + -D BUILD_PULSEAUDIO=OFF \ + -D BUILD_WLAN=OFF \ + -D BUILD_X11=ON \ + -D BUILD_XDAMAGE=ON \ + -D BUILD_XDBE=ON \ + -D BUILD_XFT=ON \ + -D BUILD_XINERAMA=OFF \ + -D DEFAULTNETDEV=eth0 \ + -D OWN_WINDOW=ON \ + . + make +} + +package() { + cd ${srcdir}/${_pkgname}-${pkgver} + make DESTDIR=${pkgdir} install + install -D -m644 LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE + install -D -m644 LICENSE.BSD ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.BSD + install -D -m644 extras/vim/syntax/conkyrc.vim "${pkgdir}"/usr/share/vim/vimfiles/syntax/conkyrc.vim + install -D -m644 extras/vim/ftdetect/conkyrc.vim "${pkgdir}"/usr/share/vim/vimfiles/ftdetect/conkyrc.vim +} diff --git a/conky/deps b/conky/deps new file mode 100644 index 0000000..97cbdd9 --- /dev/null +++ b/conky/deps @@ -0,0 +1,17 @@ +alsa-lib +cairo +imlib2 +librsvg +libxdamage +libxft +libxinerama +lua +lua51 +tolua++ +cmake +docbook2x +docbook-xml +docbook-xsl +perl-xml-libxml +perl-xml-sax-expat +git diff --git a/conky/include.patch b/conky/include.patch new file mode 100644 index 0000000..fd3afb8 --- /dev/null +++ b/conky/include.patch @@ -0,0 +1,11 @@ + +diff -bur conky-1.10.6-orig/src/luamm.hh conky-1.10.6/src/luamm.hh +--- conky-1.10.6-orig/src/luamm.hh 2016-12-04 17:13:57.000000000 +0200 ++++ conky-1.10.6/src/luamm.hh 2017-05-31 20:05:59.000000000 +0300 +@@ -28,6 +28,7 @@ + #include + #include + #include ++#include + + #include diff --git a/conky/prepare4uploadpkg.sh b/conky/prepare4uploadpkg.sh new file mode 100755 index 0000000..401c2ea --- /dev/null +++ b/conky/prepare4uploadpkg.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env bash + +namcap PKGBUILD && makepkg --printsrcinfo > .SRCINFO || exit 1 +git add . || exit 1 # PKGBUILD prepare4uploadpkg.sh .SRCINFO +git commit -am "New version" || exit 1 +git push --set-upstream origin master || exit 1 + +read -p "Press [Enter] key to exit..." + +exit $? diff --git a/conky/time b/conky/time new file mode 100644 index 0000000..e1223e2 --- /dev/null +++ b/conky/time @@ -0,0 +1,5 @@ +1m 7s + +real 0m25.873s +user 1m20.671s +sys 0m4.308s diff --git a/cower/PKGBUILD b/cower/PKGBUILD new file mode 100644 index 0000000..9ea3376 --- /dev/null +++ b/cower/PKGBUILD @@ -0,0 +1,38 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Creator : Dave Reisner +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=cower +#pkgver=18 +#pkgrel=06 +pkgver=0.1.0 +pkgrel=01 +pkgdesc='A simple AUR agent with a pretentious name' +arch=(x86_64) +groups=( jobbot ) +url="https://framagit.org/obarun/cower" +depends=('curl' 'pacman' 'yajl') +makedepends=('perl') +source=("${pkgname}::git+${url}#tag=$pkgver") + +build() { + cd "$pkgname" + make +} + +package() { + cd "$pkgname" + make PREFIX=/usr DESTDIR="$pkgdir" install + install -Dm 644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +#---- license gpg-key sha256sums ---- + +license=('MIT') + +validpgpkeys=('487EACC08557AD082088DABA1EB2638FF56C0C53') # Dave Reisner + +sha256sums=(SKIP) diff --git a/cower/PKGBUILD-oba b/cower/PKGBUILD-oba new file mode 100644 index 0000000..a23ec6b --- /dev/null +++ b/cower/PKGBUILD-oba @@ -0,0 +1,54 @@ +# Obarun : 66 init/supervisor +# Maintainer : Eric Vidal +# Maintainer : Jean-Michel T.Dydak +# PkgSource : https://git.obarun.org/pkg/obextra/cower +#----------------------------------------------------------------------------------------------- + +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=cower + +pkgdesc="A simple AUR agent with a pretentious name" + +pkgver=0.1.0 +pkgrel=1 + +url="https://framagit.org/obarun/cower" + +track=tag +target="${pkgver}" +source=( + "${pkgname}::git+${url}#${track}=${target}") + +#-------------------------------------| BUILD CONFIGURATION |----------------------------------- + +makedepends=('perl') + +#--------------------------------------------| BUILD |------------------------------------------- + +build() { + cd "$pkgname" + + make + +} + +#-------------------------------------------| PACKAGE |------------------------------------------ + +package() { + cd "$pkgname" + + make PREFIX=/usr DESTDIR="$pkgdir" install + install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +#------------------------------------| INSTALL CONFIGURATION |---------------------------------- + +arch=(x86_64) + +depends=('curl' 'pacman' 'yajl') + +#-------------------------------------| SECURITY AND LICENCE |---------------------------------- + +md5sums=('SKIP') +license=('MIT') diff --git a/cower/clean b/cower/clean new file mode 100644 index 0000000..ae55d14 --- /dev/null +++ b/cower/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,cower} diff --git a/cower/deps b/cower/deps new file mode 100644 index 0000000..5664e30 --- /dev/null +++ b/cower/deps @@ -0,0 +1 @@ +git diff --git a/cower/key b/cower/key new file mode 100644 index 0000000..27428ff --- /dev/null +++ b/cower/key @@ -0,0 +1 @@ +gpg -v --recv-key 1EB2638FF56C0C53 diff --git a/cower/time b/cower/time new file mode 100644 index 0000000..243e72b --- /dev/null +++ b/cower/time @@ -0,0 +1,4 @@ + +real 0m2.999s +user 0m2.165s +sys 0m0.294s diff --git a/cups-filters/PKGBUILD b/cups-filters/PKGBUILD new file mode 100644 index 0000000..cb4cd69 --- /dev/null +++ b/cups-filters/PKGBUILD @@ -0,0 +1,62 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=cups-filters +pkgver=1.28.12 +pkgrel=01 +pkgdesc="OpenPrinting CUPS Filters" +arch=('x86_64') +url="https://wiki.linuxfoundation.org/openprinting/cups-filters" +depends=('lcms2' 'poppler' 'qpdf' 'imagemagick' 'liblouis' 'ijs' 'libcups>=2.2.6-2') +makedepends=('ghostscript' 'python' 'mupdf-tools') +checkdepends=('ttf-dejavu') # ttf-dejavu for make check + +optdepends=('ghostscript: for non-PostScript printers to print with CUPS to convert PostScript to raster images' + 'foomatic-db: drivers use Ghostscript to convert PostScript to a printable form directly' + 'foomatic-db-engine: drivers use Ghostscript to convert PostScript to a printable form directly' + 'foomatic-db-nonfree: drivers use Ghostscript to convert PostScript to a printable form directly' + 'antiword: to convert MS Word documents' + 'docx2txt: to convert Microsoft OOXML text from DOCX files') +backup=(etc/cups/cups-browsed.conf) +source=(https://www.openprinting.org/download/cups-filters/$pkgname-$pkgver.tar.xz) + +build() { + cd "$pkgname"-$pkgver + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --sbindir=/usr/bin \ + --localstatedir=/var \ + --with-rcdir=no \ + --disable-avahi \ + --with-browseremoteprotocols=DNSSD,CUPS \ + --enable-auto-setup-driverless \ + --with-test-font-path=/usr/share/fonts/TTF/DejaVuSans.ttf + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +check() { + cd "$pkgname"-$pkgver + make check +} + +package() { + cd "$pkgname"-$pkgver + make DESTDIR="$pkgdir/" install + + # use cups group from cups pkg FS#56818 + chgrp -R 209 "${pkgdir}"/etc/cups + + # license + mkdir -p "${pkgdir}"/usr/share/licenses/${pkgname} + install -m644 "${srcdir}"/${pkgname}-${pkgver}/COPYING "${pkgdir}"/usr/share/licenses/${pkgname}/ +} + +#---- license gpg-key sha256sums ---- + +license=('custom') + +sha256sums=(46e2ea3d884ad222bb863ce6511e59cf390ef8e835295be44a80e500b2a33a3a) # cups-filters-1.28.12.tar.xz diff --git a/cups-filters/PKGBUILD-arch b/cups-filters/PKGBUILD-arch new file mode 100644 index 0000000..0d6eb07 --- /dev/null +++ b/cups-filters/PKGBUILD-arch @@ -0,0 +1,58 @@ +# Maintainer: Andreas Radke + +pkgname=cups-filters +pkgver=1.28.12 +pkgrel=1 +pkgdesc="OpenPrinting CUPS Filters" +arch=('x86_64') +url="https://wiki.linuxfoundation.org/openprinting/cups-filters" +license=('custom') +depends=('lcms2' 'poppler' 'qpdf' 'imagemagick' 'liblouis' 'ijs' 'libcups>=2.2.6-2' 'systemd') +makedepends=('ghostscript' 'python' 'mupdf-tools') +checkdepends=('ttf-dejavu') # ttf-dejavu for make check +optdepends=('ghostscript: for non-PostScript printers to print with CUPS to convert PostScript to raster images' + 'foomatic-db: drivers use Ghostscript to convert PostScript to a printable form directly' + 'foomatic-db-engine: drivers use Ghostscript to convert PostScript to a printable form directly' + 'foomatic-db-nonfree: drivers use Ghostscript to convert PostScript to a printable form directly' + 'antiword: to convert MS Word documents' + 'docx2txt: to convert Microsoft OOXML text from DOCX files') +backup=(etc/cups/cups-browsed.conf) +source=(https://www.openprinting.org/download/cups-filters/$pkgname-$pkgver.tar.xz) +sha256sums=('46e2ea3d884ad222bb863ce6511e59cf390ef8e835295be44a80e500b2a33a3a') + +build() { + cd "$pkgname"-$pkgver + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --sbindir=/usr/bin \ + --localstatedir=/var \ + --with-rcdir=no \ + --enable-avahi \ + --with-browseremoteprotocols=DNSSD,CUPS \ + --enable-auto-setup-driverless \ + --with-test-font-path=/usr/share/fonts/TTF/DejaVuSans.ttf + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +check() { + cd "$pkgname"-$pkgver + make check +} + +package() { + cd "$pkgname"-$pkgver + make DESTDIR="$pkgdir/" install + + # add upstream systemd support file + install -Dm644 utils/cups-browsed.service "${pkgdir}"/usr/lib/systemd/system/cups-browsed.service + sed -i "s|/usr/sbin/cups-browsed|/usr/bin/cups-browsed|" "${pkgdir}"/usr/lib/systemd/system/cups-browsed.service + #sed -i "s|cups.service|org.cups.cupsd.service|g" "${pkgdir}"/usr/lib/systemd/system/cups-browsed.service + + # use cups group from cups pkg FS#56818 + chgrp -R 209 "${pkgdir}"/etc/cups + + # license + mkdir -p "${pkgdir}"/usr/share/licenses/${pkgname} + install -m644 "${srcdir}"/${pkgname}-${pkgver}/COPYING "${pkgdir}"/usr/share/licenses/${pkgname}/ +} diff --git a/cups-filters/PKGBUILD.v20 b/cups-filters/PKGBUILD.v20 new file mode 100644 index 0000000..ee125b6 --- /dev/null +++ b/cups-filters/PKGBUILD.v20 @@ -0,0 +1,78 @@ +# Maintainer: Andreas Radke + +pkgname=cups-filters +_commit=378a821080ecb140a1319ee2be4cacc1150e82d6 # master 2020-11-16 +pkgver=1.27.5+260+g378a8210 +pkgrel=1 +pkgdesc="OpenPrinting CUPS Filters" +arch=('x86_64') +url="https://wiki.linuxfoundation.org/openprinting/cups-filters" +license=('custom') +depends=('lcms2' 'poppler' 'qpdf' 'imagemagick' 'liblouis' 'ijs' 'libcups' 'systemd') +makedepends=('ghostscript' 'ttf-dejavu' 'python' 'mupdf-tools' 'psutils' 'git') # ttf-dejavu for make check +optdepends=('ghostscript: for non-PostScript printers to print with CUPS to convert PostScript to raster images' + 'foomatic-db: drivers use Ghostscript to convert PostScript to a printable form directly' + 'foomatic-db-engine: drivers use Ghostscript to convert PostScript to a printable form directly' + 'foomatic-db-nonfree: drivers use Ghostscript to convert PostScript to a printable form directly' + 'antiword: to convert MS Word documents' + 'docx2txt: to convert Microsoft OOXML text from DOCX files') +backup=(etc/cups/cups-browsed.conf) +#source=(https://www.openprinting.org/download/cups-filters/$pkgname-$pkgver.tar.xz) +source=("git+https://github.com/OpenPrinting/cups-filters#commit=$_commit" + buildfix.diff) +sha256sums=('SKIP' + '4dcb21b719df28f1b275aef091014420dce2b57fbb1dacabd1eb067167629bd0') + +pkgver() { + cd $pkgname + #git describe --tags | sed 's/-/+/g' | sed 's/v//' + git describe --tags | sed 's/release-1-27-5/1.27.5/;s/-/+/g' + #git rev-list --count HEAD # = 25 + #printf "0.r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)" # 0.r25.2e43897 +} + +prepare() { + cd "$pkgname" + patch -Np1 -i ../buildfix.diff + autoreconf -vfi +} + +build() { + cd "$pkgname" #-$pkgver + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --sbindir=/usr/bin \ + --localstatedir=/var \ + --with-rcdir=no \ + --enable-avahi \ + --with-browseremoteprotocols=DNSSD,CUPS \ + --with-test-font-path=/usr/share/fonts/TTF/DejaVuSans.ttf + +# make -qp | awk -F':' '/^[a-zA-Z0-9][^$#\/\t=]*:([^=]|$)/ {split($1,A,/ /);for(i in A)print A[i]}' | grep ^install +# return 1 + + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make #V=1 +} + +check() { + cd "$pkgname" #-$pkgver + make check +} + +package() { + cd "$pkgname" #-$pkgver + make DESTDIR="$pkgdir/" install + + # add upstream systemd support file + install -Dm644 utils/cups-browsed.service "${pkgdir}"/usr/lib/systemd/system/cups-browsed.service + sed -i "s|/usr/sbin/cups-browsed|/usr/bin/cups-browsed|" "${pkgdir}"/usr/lib/systemd/system/cups-browsed.service + + # use cups group from cups pkg FS#56818 + chgrp -R 209 "${pkgdir}"/etc/cups + + # license + mkdir -p "${pkgdir}"/usr/share/licenses/${pkgname} + #install -m644 "${srcdir}"/${pkgname}-${pkgver}/COPYING "${pkgdir}"/usr/share/licenses/${pkgname}/ + install -m644 "${srcdir}"/${pkgname}/COPYING "${pkgdir}"/usr/share/licenses/${pkgname}/ +} diff --git a/cups-filters/buildfix.diff b/cups-filters/buildfix.diff new file mode 100644 index 0000000..5a71b9a --- /dev/null +++ b/cups-filters/buildfix.diff @@ -0,0 +1,23 @@ +--- cups-filters/Makefile.am 2020-11-17 21:25:27.000000000 +0100 ++++ cups-filters/Makefile.am.new 2020-11-17 21:30:00.696488598 +0100 +@@ -772,7 +772,8 @@ + + bannertopdf_DEPENDENCIES = \ + $(GETLINE) \ +- libfontembed.la ++ libfontembed.la \ ++ libcupsfilters.la + + commandtoescpx_SOURCES = \ + cupsfilters/driver.h \ +@@ -947,7 +947,9 @@ + $(STRCASESTR) \ + $(CUPS_LIBS) \ + $(LIBICONV) +-texttotext_DEPENDENCIES = $(STRCASESTR) ++texttotext_DEPENDENCIES = \ ++ $(STRCASESTR) \ ++ libppd.la + + pdftops_SOURCES = \ + filter/pdftops.c diff --git a/cups-filters/clean b/cups-filters/clean new file mode 100644 index 0000000..cf8e463 --- /dev/null +++ b/cups-filters/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,*tar.xz} diff --git a/cups-filters/deps b/cups-filters/deps new file mode 100644 index 0000000..c635453 --- /dev/null +++ b/cups-filters/deps @@ -0,0 +1,11 @@ +mupdf-tools +lcms2 +poppler +qpdf +imagemagick +liblouis +ijs +libcups +ghostscript +ttf-dejavu +python diff --git a/cups-filters/test.patch b/cups-filters/test.patch new file mode 100644 index 0000000..4978d03 --- /dev/null +++ b/cups-filters/test.patch @@ -0,0 +1,25 @@ +--- cups-filters/ppd/testppd.c 2020-11-16 22:40:25.000000000 +0100 ++++ cups-filters/ppd/testppd.c.new 2020-11-16 22:44:11.495836665 +0100 +@@ -455,7 +455,7 @@ + + fputs("ppdOpenFile(test.ppd): ", stdout); + +- if ((ppd = ppdOpenFileWithLocalization("test.ppd", PPD_LOCALIZATION_ALL)) != NULL) ++ if ((ppd = ppdOpenFileWithLocalization("ppd/test.ppd", PPD_LOCALIZATION_ALL)) != NULL) + puts("PASS"); + else + { +--- cups-filters/ppd/testppd.c 2020-11-16 22:45:54.000000000 +0100 ++++ cups-filters/ppd/testppd.c.new 2020-11-16 22:54:32.592990707 +0100 +@@ -911,9 +911,9 @@ + * Test new constraints... + */ + +- fputs("ppdOpenFile(test2.ppd): ", stdout); ++ fputs("ppdOpenFile(ppd/test2.ppd): ", stdout); + +- if ((ppd = ppdOpenFile("test2.ppd")) != NULL) ++ if ((ppd = ppdOpenFile("ppd/test2.ppd")) != NULL) + puts("PASS"); + else + { diff --git a/cups-filters/time b/cups-filters/time new file mode 100644 index 0000000..58a7b2b --- /dev/null +++ b/cups-filters/time @@ -0,0 +1,4 @@ + +real 0m33.188s +user 1m32.608s +sys 0m5.748s diff --git a/cups/0001_fix_missing_bracket.patch b/cups/0001_fix_missing_bracket.patch new file mode 100644 index 0000000..185d83e --- /dev/null +++ b/cups/0001_fix_missing_bracket.patch @@ -0,0 +1,40 @@ +From aa2507530076eaff042b096de55442dc8b665abb Mon Sep 17 00:00:00 2001 +From: Zdenek Dohnal +Date: Wed, 1 Dec 2021 12:00:16 +0100 +Subject: [PATCH] de/index.html: Fix missing bracket (fixes issue #299) + +The bracket was unintentionally removed by commit b76a97a. +--- + CHANGES.md | 5 +++++ + doc/de/index.html.in | 2 +- + 2 files changed, 6 insertions(+), 1 deletion(-) + +diff --git a/CHANGES.md b/CHANGES.md +index d4eb9aae0..c49b902f5 100644 +--- a/CHANGES.md ++++ b/CHANGES.md +@@ -1,6 +1,11 @@ + CHANGES - OpenPrinting CUPS 2.4.0 - 2021-11-29 + ============================================== + ++Changes in CUPS v2.4.1 (TBA) ++---------------------------- ++ ++- Fixed missing bracket in de/index.html (Issue #299) ++ + Changes in CUPS v2.4.0 (29th November 2021) + ------------------------------------------- + +diff --git a/doc/de/index.html.in b/doc/de/index.html.in +index 30f7d288e..2b3f3a6b1 100644 +--- a/doc/de/index.html.in ++++ b/doc/de/index.html.in +@@ -7,7 +7,7 @@ + + + +- Startseite - CUPS @CUPS_VERSION@/title> ++ <title>Startseite - CUPS @CUPS_VERSION@ + + +
diff --git a/cups/PKGBUILD b/cups/PKGBUILD new file mode 100644 index 0000000..c8a3ea1 --- /dev/null +++ b/cups/PKGBUILD @@ -0,0 +1,195 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgbase="cups" +pkgname=('libcups' 'cups') +pkgver=2.4.1 +pkgrel=02 +epoch=1 +arch=('x86_64') +url="https://openprinting.github.io/cups/" +makedepends=('libtiff' 'libpng' 'acl' 'pam' 'xdg-utils' 'krb5' 'gnutls' + 'cups-filters' 'bc' 'libcolord' 'gzip' 'autoconf' 'libusb' 'dbus' + 'hicolor-icon-theme' 'libxcrypt' 'inetutils' 'libpaper' 'valgrind' + 'git' 'libeudev') +source=(https://github.com/OpenPrinting/cups/releases/download/v${pkgver}/cups-${pkgver}-source.tar.gz{,.sig} + cups.logrotate + cups.pam + cups.sysusers + cups-2.4.0-statedir.patch + # bugfixes + cups-freebind.patch + guid.patch +) + +#options=(!makeflags) + +prepare() { + cd "${pkgbase}"-${pkgver} + + # move /var/run -> /run for pid file + patch -Np1 -i "${srcdir}"/cups-2.4.0-statedir.patch + + # bug fixes + + # https://github.com/OpenPrinting/cups/issues/53 + # use IP_FREEBIND, because cupsd cannot bind to not yet existing IP address + patch -Np1 -i "${srcdir}"/cups-freebind.patch + + # FS#56818 - https://github.com/apple/cups/issues/5236 + patch -Np1 -i "${srcdir}"/guid.patch + +# # fix german webinterface not opening +# # 0001_fix_missing_bracket.patch +# patch -Np1 -i ../0001_fix_missing_bracket.patch + + # Rebuild configure script + aclocal -I config-scripts + autoconf -I config-scripts +} + + + + +build() { + cd "${pkgbase}"-${pkgver} + + # The build system uses only DSOFLAGS but not LDFLAGS to build some libraries. + export DSOFLAGS=${LDFLAGS} + + # use fixed cups user (id 209) since systemd adds "lp" group without a fixed id + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --sbindir=/usr/bin \ + --libdir=/usr/lib \ + --with-logdir=/var/log/cups \ + --with-docdir=/usr/share/cups/doc \ + --with-exe-file-perm=0755 \ + --with-cups-user=209 \ + --with-cups-group=209 \ + --with-max-log-size=0 \ + --enable-pam=yes \ + --enable-raw-printing \ + --enable-dbus=yes \ + --with-dbusdir=/usr/share/dbus-1 \ + --enable-ssl=yes \ + --enable-relro \ + --enable-libpaper \ + --with-php=/usr/bin/php-cgi \ + --disable-systemd \ + --disable-avahi \ + --with-optim="$CFLAGS" #--help + make +} + +check() { + cd "${pkgbase}"-${pkgver} +# make -k check || /bin/true +# make check +} + +package_libcups() { +pkgdesc="The CUPS Printing System - client libraries and headers - no systemd no avahi " +depends=('gnutls' 'libtiff>=4.0.0' 'libpng>=1.5.7' 'krb5' 'libusb' 'libxcrypt') + + cd ${pkgbase}-${pkgver} + make BUILDROOT="${pkgdir}" install-headers install-libs + # put this into the libs pkg to make other software find the libs(no pkg-config file included) + mkdir -p "${pkgdir}"/usr/bin + install -m755 "${srcdir}"/"${pkgbase}"-${pkgver}/cups-config "${pkgdir}"/usr/bin/cups-config + + # add license + exception + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" {LICENSE,NOTICE} +} + +package_cups() { +pkgdesc="The CUPS Printing System - daemon package - no systemd no avahi " +install=cups.install +backup=(etc/cups/cupsd.conf + etc/cups/snmp.conf + etc/cups/printers.conf + etc/cups/classes.conf + etc/cups/cups-files.conf + etc/cups/subscriptions.conf + etc/logrotate.d/cups + etc/pam.d/cups) +depends=('acl' 'pam' "libcups>=${pkgver}" 'cups-filters' 'bc' + 'dbus' 'libpaper' 'hicolor-icon-theme' 'xinetd') +optdepends=('ipp-usb: allows to send HTTP requests via a USB connection on devices without Ethernet or WiFi connections' + 'xdg-utils: xdg .desktop file support' + 'colord: for ICC color profile support' + 'logrotate: for logfile rotation support') + + cd "${pkgbase}"-${pkgver} + make BUILDROOT="${pkgdir}" install-data install-exec + + # this one we ship in the libcups pkg + rm -f "${pkgdir}"/usr/bin/cups-config + + # kill the sysv stuff + rm -rf "${pkgdir}"/etc/rc*.d + rm -rf "${pkgdir}"/etc/init.d + install -D -m644 ../cups.logrotate "${pkgdir}"/etc/logrotate.d/cups + install -D -m644 ../cups.pam "${pkgdir}"/etc/pam.d/cups + + # fix perms on /var/spool and /etc + chmod 755 "${pkgdir}"/var/spool + chmod 755 "${pkgdir}"/etc + + # use cups group FS#36769 + install -Dm644 "$srcdir"/cups.sysusers "${pkgdir}/usr/lib/sysusers.d/$pkgname.conf" + sed -i "s:#User 209:User 209:" "${pkgdir}"/etc/cups/cups-files.conf{,.default} + sed -i "s:#Group 209:Group 209:" "${pkgdir}"/etc/cups/cups-files.conf{,.default} + + # install ssl directory where to store the certs, solves some samba issues + install -dm700 -g 209 "${pkgdir}"/etc/cups/ssl + # remove directory from package, it will be recreated at each server start + rm -rf "${pkgdir}"/run + + # install some more configuration files that will get filled by cupsd + touch "${pkgdir}"/etc/cups/printers.conf + touch "${pkgdir}"/etc/cups/classes.conf + touch "${pkgdir}"/etc/cups/subscriptions.conf + chgrp -R 209 "${pkgdir}"/etc/cups + + # fix .desktop file + sed -i 's|^Exec=htmlview http://localhost:631/|Exec=xdg-open http://localhost:631/|g' "${pkgdir}"/usr/share/applications/cups.desktop + + # compress some driver files, adopted from Fedora + find "${pkgdir}"/usr/share/cups/model -name "*.ppd" | xargs gzip -n9f + + # remove client.conf man page + rm -f "${pkgdir}"/usr/share/man/man5/client.conf.5 + + # comment out removed filters that are now part of cups-filters + perl -p -i -e 's:^(.*\s+bannertops\s*)$:#\1:' "$pkgdir"/usr/share/cups/mime/mime.convs + + # comment out unnecessary PageLogFormat entry + sed -i -e 's:PageLogFormat:#PageLogFormat:' "$pkgdir"/etc/cups/cupsd.conf* + +# # no more xinetd support +# rm -rf "${pkgdir}"/etc/xinetd.d +} + +#---- license gpg-key sha256sums ---- + +license=('Apache' 'custom') + +validpgpkeys=(7082A0A50A2E92640F3880E0E4522DCC9B246FF7 # Zdenek Dohnal (The old 4D4227D7 key revoked) + 3737FD0D0E63B30172440D2DDBA3A7AB08D76223 # CUPS.org (CUPS.org PGP key) + 45D083946E3035282B3CCA9AF434104235DA97EB # "CUPS.org " + 845464660B686AAB36540B6F999559A027815955) # "Michael R Sweet " +# 7ADB58203CA5F046F28025B215AA6A7F4D4227D7) # "Zdenek Dohnal (Associate Software Engineer) " + +sha256sums=(c7339f75f8d4f2dec50c673341a45fc06b6885bb6d4366d6bf59a4e6c10ae178 # cups-2.4.1-source.tar.gz + c7b8d31e61b029dad5c0876d55e27ad89a6742433fc72a38b98ae39be4371500 # cups-2.4.1-source.tar.gz.sig + d87fa0f0b5ec677aae34668f260333db17ce303aa1a752cba5f8e72623d9acf9 # cups.logrotate + 57dfd072fd7ef0018c6b0a798367aac1abb5979060ff3f9df22d1048bb71c0d5 # cups.pam + 06173dfaea37bdd9b39b3e09aba98c34ae7112a2f521db45a688907d8848caa2 # cups.sysusers + f0b15192952c151b1843742c87850ff3a7d0f3ba5dd236ed16623ef908472ad7 # cups-2.4.0-statedir.patch + 3385047b9ac8a7b13aeb8f0ca55d15f793ce7283516db0155fe28a67923c592d # cups-freebind.patch + 0bf6a75ba1b051771f155d9a5d36b307a6d40c6857d645b250fe93f3fb713474) # guid.patch diff --git a/cups/PKGBUILD-arch b/cups/PKGBUILD-arch new file mode 100644 index 0000000..85e3b6b --- /dev/null +++ b/cups/PKGBUILD-arch @@ -0,0 +1,174 @@ +# Maintainer: Andreas Radke + +pkgbase="cups" +pkgname=('libcups' 'cups') +pkgver=2.4.1 +pkgrel=1 +epoch=1 +arch=('x86_64') +license=('Apache' 'custom') +url="https://openprinting.github.io/cups/" +makedepends=('libtiff' 'libpng' 'acl' 'pam' 'xdg-utils' 'krb5' 'gnutls' + 'cups-filters' 'bc' 'colord' 'gzip' 'autoconf' 'libusb' 'dbus' + 'avahi' 'hicolor-icon-theme' 'systemd' 'libxcrypt' 'inetutils' 'libpaper' 'valgrind' + 'git') +source=(https://github.com/OpenPrinting/cups/releases/download/v${pkgver}/cups-${pkgver}-source.tar.gz{,.sig} + cups.logrotate + cups.pam + cups.sysusers + cups-2.4.0-statedir.patch + # bugfixes + cups-freebind.patch + guid.patch +) +sha256sums=('c7339f75f8d4f2dec50c673341a45fc06b6885bb6d4366d6bf59a4e6c10ae178' + 'SKIP' + 'd87fa0f0b5ec677aae34668f260333db17ce303aa1a752cba5f8e72623d9acf9' + '57dfd072fd7ef0018c6b0a798367aac1abb5979060ff3f9df22d1048bb71c0d5' + '06173dfaea37bdd9b39b3e09aba98c34ae7112a2f521db45a688907d8848caa2' + 'f0b15192952c151b1843742c87850ff3a7d0f3ba5dd236ed16623ef908472ad7' + '3385047b9ac8a7b13aeb8f0ca55d15f793ce7283516db0155fe28a67923c592d' + '0bf6a75ba1b051771f155d9a5d36b307a6d40c6857d645b250fe93f3fb713474') +#validpgpkeys=('3737FD0D0E63B30172440D2DDBA3A7AB08D76223') # CUPS.org (CUPS.org PGP key) +#validpgpkeys+=('45D083946E3035282B3CCA9AF434104235DA97EB') # "CUPS.org " +#validpgpkeys+=('845464660B686AAB36540B6F999559A027815955') # "Michael R Sweet " +#validpgpkeys=('7ADB58203CA5F046F28025B215AA6A7F4D4227D7') # "Zdenek Dohnal (Associate Software Engineer) " +validpgpkeys=('7082A0A50A2E92640F3880E0E4522DCC9B246FF7') # Zdenek Dohnal (The old 4D4227D7 key revoked) +#options=(!makeflags) + +prepare() { + cd "${pkgbase}"-${pkgver} + + # move /var/run -> /run for pid file + patch -Np1 -i "${srcdir}"/cups-2.4.0-statedir.patch + + # bug fixes + + # https://github.com/OpenPrinting/cups/issues/53 + # use IP_FREEBIND, because cupsd cannot bind to not yet existing IP address + patch -Np1 -i "${srcdir}"/cups-freebind.patch + + # FS#56818 - https://github.com/apple/cups/issues/5236 + patch -Np1 -i "${srcdir}"/guid.patch + + # Rebuild configure script + aclocal -I config-scripts + autoconf -I config-scripts +} + +build() { + cd "${pkgbase}"-${pkgver} + + # The build system uses only DSOFLAGS but not LDFLAGS to build some libraries. + export DSOFLAGS=${LDFLAGS} + + # use fixed cups user (id 209) since systemd adds "lp" group without a fixed id + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --sbindir=/usr/bin \ + --libdir=/usr/lib \ + --with-logdir=/var/log/cups \ + --with-docdir=/usr/share/cups/doc \ + --with-exe-file-perm=0755 \ + --with-cups-user=209 \ + --with-cups-group=209 \ + --with-max-log-size=0 \ + --enable-pam=yes \ + --enable-raw-printing \ + --enable-dbus=yes \ + --with-dbusdir=/usr/share/dbus-1 \ + --enable-relro \ + --enable-libpaper \ + --with-optim="$CFLAGS" #--help + make +} + +check() { + cd "${pkgbase}"-${pkgver} +# make -k check || /bin/true +# make check +} + +package_libcups() { +pkgdesc="The CUPS Printing System - client libraries and headers" +depends=('gnutls' 'libtiff>=4.0.0' 'libpng>=1.5.7' 'krb5' 'avahi' 'libusb' 'libxcrypt') + + cd ${pkgbase}-${pkgver} + make BUILDROOT="${pkgdir}" install-headers install-libs + # put this into the libs pkg to make other software find the libs(no pkg-config file included) + mkdir -p "${pkgdir}"/usr/bin + install -m755 "${srcdir}"/"${pkgbase}"-${pkgver}/cups-config "${pkgdir}"/usr/bin/cups-config + + # add license + exception + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" {LICENSE,NOTICE} +} + +package_cups() { +pkgdesc="The CUPS Printing System - daemon package" +install=cups.install +backup=(etc/cups/cupsd.conf + etc/cups/snmp.conf + etc/cups/printers.conf + etc/cups/classes.conf + etc/cups/cups-files.conf + etc/cups/subscriptions.conf + etc/logrotate.d/cups + etc/pam.d/cups) +depends=('acl' 'pam' "libcups>=${pkgver}" 'cups-filters' 'bc' + 'dbus' 'systemd' 'libpaper' 'hicolor-icon-theme') +optdepends=('ipp-usb: allows to send HTTP requests via a USB connection on devices without Ethernet or WiFi connections' + 'xdg-utils: xdg .desktop file support' + 'colord: for ICC color profile support' + 'logrotate: for logfile rotation support') + + cd "${pkgbase}"-${pkgver} + make BUILDROOT="${pkgdir}" install-data install-exec + + # this one we ship in the libcups pkg + rm -f "${pkgdir}"/usr/bin/cups-config + + # kill the sysv stuff + rm -rf "${pkgdir}"/etc/rc*.d + rm -rf "${pkgdir}"/etc/init.d + install -D -m644 ../cups.logrotate "${pkgdir}"/etc/logrotate.d/cups + install -D -m644 ../cups.pam "${pkgdir}"/etc/pam.d/cups + + # fix perms on /var/spool and /etc + chmod 755 "${pkgdir}"/var/spool + chmod 755 "${pkgdir}"/etc + + # use cups group FS#36769 + install -Dm644 "$srcdir"/cups.sysusers "${pkgdir}/usr/lib/sysusers.d/$pkgname.conf" + sed -i "s:#User 209:User 209:" "${pkgdir}"/etc/cups/cups-files.conf{,.default} + sed -i "s:#Group 209:Group 209:" "${pkgdir}"/etc/cups/cups-files.conf{,.default} + + # install ssl directory where to store the certs, solves some samba issues + install -dm700 -g 209 "${pkgdir}"/etc/cups/ssl + # remove directory from package, it will be recreated at each server start + rm -rf "${pkgdir}"/run + + # install some more configuration files that will get filled by cupsd + touch "${pkgdir}"/etc/cups/printers.conf + touch "${pkgdir}"/etc/cups/classes.conf + touch "${pkgdir}"/etc/cups/subscriptions.conf + chgrp -R 209 "${pkgdir}"/etc/cups + + # fix .desktop file + sed -i 's|^Exec=htmlview http://localhost:631/|Exec=xdg-open http://localhost:631/|g' "${pkgdir}"/usr/share/applications/cups.desktop + + # compress some driver files, adopted from Fedora + find "${pkgdir}"/usr/share/cups/model -name "*.ppd" | xargs gzip -n9f + + # remove client.conf man page + rm -f "${pkgdir}"/usr/share/man/man5/client.conf.5 + + # comment out removed filters that are now part of cups-filters + perl -p -i -e 's:^(.*\s+bannertops\s*)$:#\1:' "$pkgdir"/usr/share/cups/mime/mime.convs + + # comment out unnecessary PageLogFormat entry + sed -i -e 's:PageLogFormat:#PageLogFormat:' "$pkgdir"/etc/cups/cupsd.conf* + + # no more xinetd support + rm -rf "${pkgdir}"/etc/xinetd.d +} diff --git a/cups/PKGBUILD-arch.new b/cups/PKGBUILD-arch.new new file mode 100644 index 0000000..85e3b6b --- /dev/null +++ b/cups/PKGBUILD-arch.new @@ -0,0 +1,174 @@ +# Maintainer: Andreas Radke + +pkgbase="cups" +pkgname=('libcups' 'cups') +pkgver=2.4.1 +pkgrel=1 +epoch=1 +arch=('x86_64') +license=('Apache' 'custom') +url="https://openprinting.github.io/cups/" +makedepends=('libtiff' 'libpng' 'acl' 'pam' 'xdg-utils' 'krb5' 'gnutls' + 'cups-filters' 'bc' 'colord' 'gzip' 'autoconf' 'libusb' 'dbus' + 'avahi' 'hicolor-icon-theme' 'systemd' 'libxcrypt' 'inetutils' 'libpaper' 'valgrind' + 'git') +source=(https://github.com/OpenPrinting/cups/releases/download/v${pkgver}/cups-${pkgver}-source.tar.gz{,.sig} + cups.logrotate + cups.pam + cups.sysusers + cups-2.4.0-statedir.patch + # bugfixes + cups-freebind.patch + guid.patch +) +sha256sums=('c7339f75f8d4f2dec50c673341a45fc06b6885bb6d4366d6bf59a4e6c10ae178' + 'SKIP' + 'd87fa0f0b5ec677aae34668f260333db17ce303aa1a752cba5f8e72623d9acf9' + '57dfd072fd7ef0018c6b0a798367aac1abb5979060ff3f9df22d1048bb71c0d5' + '06173dfaea37bdd9b39b3e09aba98c34ae7112a2f521db45a688907d8848caa2' + 'f0b15192952c151b1843742c87850ff3a7d0f3ba5dd236ed16623ef908472ad7' + '3385047b9ac8a7b13aeb8f0ca55d15f793ce7283516db0155fe28a67923c592d' + '0bf6a75ba1b051771f155d9a5d36b307a6d40c6857d645b250fe93f3fb713474') +#validpgpkeys=('3737FD0D0E63B30172440D2DDBA3A7AB08D76223') # CUPS.org (CUPS.org PGP key) +#validpgpkeys+=('45D083946E3035282B3CCA9AF434104235DA97EB') # "CUPS.org " +#validpgpkeys+=('845464660B686AAB36540B6F999559A027815955') # "Michael R Sweet " +#validpgpkeys=('7ADB58203CA5F046F28025B215AA6A7F4D4227D7') # "Zdenek Dohnal (Associate Software Engineer) " +validpgpkeys=('7082A0A50A2E92640F3880E0E4522DCC9B246FF7') # Zdenek Dohnal (The old 4D4227D7 key revoked) +#options=(!makeflags) + +prepare() { + cd "${pkgbase}"-${pkgver} + + # move /var/run -> /run for pid file + patch -Np1 -i "${srcdir}"/cups-2.4.0-statedir.patch + + # bug fixes + + # https://github.com/OpenPrinting/cups/issues/53 + # use IP_FREEBIND, because cupsd cannot bind to not yet existing IP address + patch -Np1 -i "${srcdir}"/cups-freebind.patch + + # FS#56818 - https://github.com/apple/cups/issues/5236 + patch -Np1 -i "${srcdir}"/guid.patch + + # Rebuild configure script + aclocal -I config-scripts + autoconf -I config-scripts +} + +build() { + cd "${pkgbase}"-${pkgver} + + # The build system uses only DSOFLAGS but not LDFLAGS to build some libraries. + export DSOFLAGS=${LDFLAGS} + + # use fixed cups user (id 209) since systemd adds "lp" group without a fixed id + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --sbindir=/usr/bin \ + --libdir=/usr/lib \ + --with-logdir=/var/log/cups \ + --with-docdir=/usr/share/cups/doc \ + --with-exe-file-perm=0755 \ + --with-cups-user=209 \ + --with-cups-group=209 \ + --with-max-log-size=0 \ + --enable-pam=yes \ + --enable-raw-printing \ + --enable-dbus=yes \ + --with-dbusdir=/usr/share/dbus-1 \ + --enable-relro \ + --enable-libpaper \ + --with-optim="$CFLAGS" #--help + make +} + +check() { + cd "${pkgbase}"-${pkgver} +# make -k check || /bin/true +# make check +} + +package_libcups() { +pkgdesc="The CUPS Printing System - client libraries and headers" +depends=('gnutls' 'libtiff>=4.0.0' 'libpng>=1.5.7' 'krb5' 'avahi' 'libusb' 'libxcrypt') + + cd ${pkgbase}-${pkgver} + make BUILDROOT="${pkgdir}" install-headers install-libs + # put this into the libs pkg to make other software find the libs(no pkg-config file included) + mkdir -p "${pkgdir}"/usr/bin + install -m755 "${srcdir}"/"${pkgbase}"-${pkgver}/cups-config "${pkgdir}"/usr/bin/cups-config + + # add license + exception + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" {LICENSE,NOTICE} +} + +package_cups() { +pkgdesc="The CUPS Printing System - daemon package" +install=cups.install +backup=(etc/cups/cupsd.conf + etc/cups/snmp.conf + etc/cups/printers.conf + etc/cups/classes.conf + etc/cups/cups-files.conf + etc/cups/subscriptions.conf + etc/logrotate.d/cups + etc/pam.d/cups) +depends=('acl' 'pam' "libcups>=${pkgver}" 'cups-filters' 'bc' + 'dbus' 'systemd' 'libpaper' 'hicolor-icon-theme') +optdepends=('ipp-usb: allows to send HTTP requests via a USB connection on devices without Ethernet or WiFi connections' + 'xdg-utils: xdg .desktop file support' + 'colord: for ICC color profile support' + 'logrotate: for logfile rotation support') + + cd "${pkgbase}"-${pkgver} + make BUILDROOT="${pkgdir}" install-data install-exec + + # this one we ship in the libcups pkg + rm -f "${pkgdir}"/usr/bin/cups-config + + # kill the sysv stuff + rm -rf "${pkgdir}"/etc/rc*.d + rm -rf "${pkgdir}"/etc/init.d + install -D -m644 ../cups.logrotate "${pkgdir}"/etc/logrotate.d/cups + install -D -m644 ../cups.pam "${pkgdir}"/etc/pam.d/cups + + # fix perms on /var/spool and /etc + chmod 755 "${pkgdir}"/var/spool + chmod 755 "${pkgdir}"/etc + + # use cups group FS#36769 + install -Dm644 "$srcdir"/cups.sysusers "${pkgdir}/usr/lib/sysusers.d/$pkgname.conf" + sed -i "s:#User 209:User 209:" "${pkgdir}"/etc/cups/cups-files.conf{,.default} + sed -i "s:#Group 209:Group 209:" "${pkgdir}"/etc/cups/cups-files.conf{,.default} + + # install ssl directory where to store the certs, solves some samba issues + install -dm700 -g 209 "${pkgdir}"/etc/cups/ssl + # remove directory from package, it will be recreated at each server start + rm -rf "${pkgdir}"/run + + # install some more configuration files that will get filled by cupsd + touch "${pkgdir}"/etc/cups/printers.conf + touch "${pkgdir}"/etc/cups/classes.conf + touch "${pkgdir}"/etc/cups/subscriptions.conf + chgrp -R 209 "${pkgdir}"/etc/cups + + # fix .desktop file + sed -i 's|^Exec=htmlview http://localhost:631/|Exec=xdg-open http://localhost:631/|g' "${pkgdir}"/usr/share/applications/cups.desktop + + # compress some driver files, adopted from Fedora + find "${pkgdir}"/usr/share/cups/model -name "*.ppd" | xargs gzip -n9f + + # remove client.conf man page + rm -f "${pkgdir}"/usr/share/man/man5/client.conf.5 + + # comment out removed filters that are now part of cups-filters + perl -p -i -e 's:^(.*\s+bannertops\s*)$:#\1:' "$pkgdir"/usr/share/cups/mime/mime.convs + + # comment out unnecessary PageLogFormat entry + sed -i -e 's:PageLogFormat:#PageLogFormat:' "$pkgdir"/etc/cups/cupsd.conf* + + # no more xinetd support + rm -rf "${pkgdir}"/etc/xinetd.d +} diff --git a/cups/PKGBUILD-oba b/cups/PKGBUILD-oba new file mode 100644 index 0000000..cb6ce85 --- /dev/null +++ b/cups/PKGBUILD-oba @@ -0,0 +1,245 @@ +# Copyright : Obarun +#------------------------ +# Maintainer : Eric Vidal +# Maintainer : Jean-Michel T.Dydak +# Maintainer : YianIris +#---------------- +# Obarun PkgSrc : https://git.obarun.org/pkg/obextra/cups +#-------------------------------------------------------------- +# DESCRIPTION ] + +pkgbase="cups" +pkgver=2.4.1 +pkgrel=2 +epoch=1 +url='https://openprinting.github.io/cups/' + +pkgname=( + 'libcups' + 'cups' +) + +track="releases/download/v$pkgver" +target="cups-$pkgver-source" +source=( + "https://github.com/OpenPrinting/cups/${track}/${target}.tar.gz"{,.sig} + cups.logrotate + cups.pam + cups.sysusers + cups-2.4.0-statedir.patch + cups-freebind.patch + guid.patch +) + +#---------------------- +# BUILD CONFIGURATION ] + +makedepends=( + 'libtiff' + 'libpng' + 'acl' + 'pam' + 'xdg-utils' + 'krb5' + 'gnutls' + 'cups-filters' + 'bc' + 'colord' + 'gzip' + 'autoconf' + 'libusb' + 'dbus' + 'hicolor-icon-theme' + 'libxcrypt' + 'inetutils' + 'libpaper' + 'valgrind' + 'libeudev' +) + +#---------------- +# BUILD PREPARE ] + +prepare() { + cd $pkgbase-$pkgver + + ## move /var/run -> /run for pid file + patch -Np1 -i "${srcdir}"/cups-2.4.0-statedir.patch + + ## bug fixes + ## https://github.com/OpenPrinting/cups/issues/53 + ## use IP_FREEBIND, because cupsd cannot bind to not yet existing IP address + patch -Np1 -i "${srcdir}"/cups-freebind.patch + + ## FS#56818 - https://github.com/apple/cups/issues/5236 + patch -Np1 -i "${srcdir}"/guid.patch + + ## Rebuild configure script + aclocal -I config-scripts + autoconf -I config-scripts +} + +#---------------- +# BUILD CONTROL ] + +_flags=( + --prefix=/usr + --sysconfdir=/etc + --localstatedir=/var + --sbindir=/usr/bin + --libdir=/usr/lib + --with-logdir=/var/log/cups + --with-docdir=/usr/share/cups/doc + --with-exe-file-perm=0755 + --with-cups-user=209 + --with-cups-group=209 + --with-max-log-size=0 + --enable-pam=yes + --enable-raw-printing + --enable-dbus=yes + --with-dbusdir=/usr/share/dbus-1 + --enable-ssl=yes + --enable-threads + --enable-libpaper + --with-php=/usr/bin/php-cgi + --disable-systemd + --disable-avahi + --with-optim="$CFLAGS" +) + +#-------- +# BUILD ] + +build() { + cd $pkgbase-$pkgver + + ## The build system uses only DSOFLAGS but not LDFLAGS to build some libraries. + export DSOFLAGS=${LDFLAGS} + + ./configure "${_flags[@]}" + make +} + +#-------- +# CHECK ] + +check() { + cd $pkgbase-$pkgver + #make -k check || /bin/true + #make check +} + +#---------- +# PACKAGE ] + +package_libcups() { + pkgdesc="The CUPS Printing System - client libraries and headers" + depends=( + 'gnutls' + 'libtiff>=4.0.0' + 'libpng>=1.5.7' + 'krb5' + 'libusb' + 'libxcrypt' + ) + + cd $pkgbase-$pkgver + + make BUILDROOT="$pkgdir" install-headers install-libs + + ## put this into the libs pkg to make other software find the libs(no pkg-config file included) + mkdir -p "$pkgdir"/usr/bin + install -m755 "$srcdir"/$pkgbase-$pkgver/cups-config "$pkgdir"/usr/bin/cups-config + + ## add license + exception + install -m644 -Dt "$pkgdir"/usr/share/licenses/$pkgname {LICENSE,NOTICE} +} + +package_cups() { + pkgdesc="The CUPS Printing System - daemon package" + depends=( + 'acl' + 'pam' + "libcups>=$pkgver" + 'cups-filters' + 'bc' + 'dbus' + 'libpaper' + 'hicolor-icon-theme' + ) + optdepends=( + 'xdg-utils: xdg .desktop file support' + 'colord: for ICC color profile support' + ) + backup=( + 'etc/cups/cupsd.conf' + 'etc/cups/snmp.conf' + 'etc/cups/printers.conf' + 'etc/cups/classes.conf' + 'etc/cups/cups-files.conf' + 'etc/cups/subscriptions.conf' + 'etc/logrotate.d/cups' + 'etc/pam.d/cups' + ) + install=cups.install + + cd $pkgbase-$pkgver + + make BUILDROOT="$pkgdir" install-data install-exec + + ## this one we ship in the libcups pkg + rm -f "$pkgdir"/usr/bin/cups-config + + ## kill the sysv stuff + rm -rf "$pkgdir"/etc/rc*.d + rm -rf "$pkgdir"/etc/init.d + install -D -m644 ../cups.logrotate "$pkgdir"/etc/logrotate.d/cups + install -D -m644 ../cups.pam "$pkgdir"/etc/pam.d/cups + + ## fix perms on /var/spool and /etc + chmod 755 "$pkgdir"/var/spool + chmod 755 "$pkgdir"/etc + + ## use cups group FS#36769 + install -Dm644 "$srcdir"/cups.sysusers "$pkgdir"/usr/lib/sysusers.d/$pkgname.conf + sed -i "s:#User 209:User 209:" "$pkgdir"/etc/cups/cups-files.conf{,.default} + sed -i "s:#Group 209:Group 209:" "$pkgdir"/etc/cups/cups-files.conf{,.default} + + ## install ssl directory where to store the certs, solves some samba issues + install -dm700 -g 209 "$pkgdir"/etc/cups/ssl + ## remove directory from package, it will be recreated at each server start + rm -rf "$pkgdir"/run + + ## install some more configuration files that will get filled by cupsd + touch "$pkgdir"/etc/cups/printers.conf + touch "$pkgdir"/etc/cups/classes.conf + touch "$pkgdir"/etc/cups/subscriptions.conf + chgrp -R 209 "$pkgdir"/etc/cups + + ## fix .desktop file + sed -i 's|^Exec=htmlview http://localhost:631/|Exec=xdg-open http://localhost:631/|g' "$pkgdir"/usr/share/applications/cups.desktop + + ## compress some driver files, adopted from Fedora + find "$pkgdir"/usr/share/cups/model -name "*.ppd" | xargs gzip -n9f + + ## remove client.conf man page + rm -f "$pkgdir"/usr/share/man/man5/client.conf.5 + + ## comment out removed filters that are now part of cups-filters + perl -p -i -e 's:^(.*\s+bannertops\s*)$:#\1:' "$pkgdir"/usr/share/cups/mime/mime.convs + + ## comment out unnecessary PageLogFormat entry + sed -i -e 's:PageLogFormat:#PageLogFormat:' "$pkgdir"/etc/cups/cupsd.conf* +} + +#-------------------- +# ARCH LICENSE AUTH ] + +arch=(x86_64) +license=(Apache custom) + +validpgpkeys=( + '7082A0A50A2E92640F3880E0E4522DCC9B246FF7' # Zdenek Dohnal (The old 4D4227D7 key revoked) +) + +sha512sums=('') diff --git a/cups/clean b/cups/clean new file mode 100644 index 0000000..0c70107 --- /dev/null +++ b/cups/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,cups*source.tar.gz*} diff --git a/cups/cups-2.4.0-statedir.patch b/cups/cups-2.4.0-statedir.patch new file mode 100644 index 0000000..c6d0303 --- /dev/null +++ b/cups/cups-2.4.0-statedir.patch @@ -0,0 +1,11 @@ +--- cups-2.4.0/config-scripts/cups-directories.m4 2021-11-29 16:12:17.094244942 +0100 ++++ cups-2.4.0/config-scripts/cups-directories.m4.new 2021-11-29 16:15:16.958747398 +0100 +@@ -268,7 +268,7 @@ + CUPS_STATEDIR="$CUPS_SERVERROOT" + ], [*], [ + # All others +- CUPS_STATEDIR="$localstatedir/run/cups" ++ CUPS_STATEDIR="/run/cups" + ]) + ]) + AC_DEFINE_UNQUOTED([CUPS_STATEDIR], ["$CUPS_STATEDIR"], [Location of transient state files.]) diff --git a/cups/cups-freebind.patch b/cups/cups-freebind.patch new file mode 100644 index 0000000..6d9ba43 --- /dev/null +++ b/cups/cups-freebind.patch @@ -0,0 +1,15 @@ +diff -up cups-2.0.2/cups/http-addr.c.freebind cups-2.0.2/cups/http-addr.c +--- cups-2.0.2/cups/http-addr.c.freebind 2015-02-10 14:46:33.000000000 +0100 ++++ cups-2.0.2/cups/http-addr.c 2015-02-10 14:50:35.074759141 +0100 +@@ -186,6 +186,10 @@ httpAddrListen(http_addr_t *addr, /* I - + val = 1; + setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, CUPS_SOCAST &val, sizeof(val)); + ++#ifdef __linux ++ setsockopt(fd, IPPROTO_IP, IP_FREEBIND, CUPS_SOCAST &val, sizeof(val)); ++#endif /* __linux */ ++ + #ifdef IPV6_V6ONLY + if (addr->addr.sa_family == AF_INET6) + setsockopt(fd, IPPROTO_IPV6, IPV6_V6ONLY, CUPS_SOCAST &val, sizeof(val)); +diff -up cups-2.0.2/scheduler/listen.c.freebind cups-2.0.2/scheduler/listen.c diff --git a/cups/cups.install b/cups/cups.install new file mode 100644 index 0000000..017cc4d --- /dev/null +++ b/cups/cups.install @@ -0,0 +1,28 @@ +post_install() { + echo ">> If you use an HTTPS connection to CUPS, the first time you access" + echo ">> the interface it may take a very long time before the site comes up." + echo ">> This is because the first request triggers the generation of the CUPS" + echo ">> SSL certificates which can be a very time-consuming job." +} + +post_upgrade() { + # FS#56818 - make sure we change the ownership to the new cups group + if [[ $(vercmp 2.2.6-3 $2) = 1 ]]; then + chgrp -R 209 /etc/cups + echo "Cups daemon is now running under \"cups\" user+group." + echo "Please make sure to enable the new user+group change in" + echo "/etc/cups/cups-files.conf or merge changes from" + echo "/etc/cups/cups-files.conf.default. After a service restart" + echo "make sure /etc/cups and all files within are owned by" + echo "cups group - run \"chgrp -R cups /etc/cups\"." + fi + + # upstream reverted back to common old naming scheme + if [[ $(vercmp 2.3.3+105+g59137acc1-1 $2) = 1 ]]; then + echo ">>> Cups systemd socket and service files have been" + echo ">>> renamed by upstream decision. Please make sure" + echo ">>> to disable/reenable the services to your need." + echo ">>> hint: \"pacman -Ql cups | grep systemd\" and" + echo ">>> \"ls -lR /etc/systemd/ | grep cups\" " + fi +} diff --git a/cups/cups.logrotate b/cups/cups.logrotate new file mode 100644 index 0000000..19e1210 --- /dev/null +++ b/cups/cups.logrotate @@ -0,0 +1,5 @@ +/var/log/cups/*_log { + missingok + notifempty + sharedscripts +} diff --git a/cups/cups.pam b/cups/cups.pam new file mode 100644 index 0000000..53724d1 --- /dev/null +++ b/cups/cups.pam @@ -0,0 +1,3 @@ +auth required pam_unix.so +account required pam_unix.so +session required pam_unix.so diff --git a/cups/cups.sysusers b/cups/cups.sysusers new file mode 100644 index 0000000..4ab9d59 --- /dev/null +++ b/cups/cups.sysusers @@ -0,0 +1,2 @@ +u cups 209 "cups helper user" +m cups lp diff --git a/cups/deps b/cups/deps new file mode 100644 index 0000000..73afd5a --- /dev/null +++ b/cups/deps @@ -0,0 +1,14 @@ +libtiff +libpng +xdg-utils +bc +libcolord +autoconf +libusb +hicolor-icon-theme +inetutils +libpaper +valgrind +git +automake +cups-filters diff --git a/cups/guid.patch b/cups/guid.patch new file mode 100644 index 0000000..b1bd192 --- /dev/null +++ b/cups/guid.patch @@ -0,0 +1,39 @@ +--- cups-2.4.0/scheduler/cups-exec.c 2021-11-29 16:19:34.235186064 +0100 ++++ cups-2.4.0/scheduler/cups-exec.c.new 2021-11-29 16:25:30.764049649 +0100 +@@ -134,9 +134,14 @@ main(int argc, /* I - Number of command-line args */ + # if CUPS_SNAP + if (setgroups(0, NULL)) + # else +- if (setgroups(1, &gid)) +-# endif /* CUPS_SNAP */ ++#include ++ struct passwd * pwd = getpwuid(uid); ++ if(initgroups(pwd->pw_name,pwd->pw_gid)) ++ { ++ fprintf(stderr, "DEBUG: initgroups failed\n"); + exit(errno + 100); ++ } ++# endif /* CUPS_SNAP */ + + if (uid && setuid(uid)) + exit(errno + 100); +--- cups-2.4.0/scheduler/util.c 2021-11-29 15:27:31.000000000 +0100 ++++ cups-2.4.0/scheduler/util.c.new 2021-11-29 16:29:58.810719066 +0100 +@@ -296,7 +296,16 @@ + */ + + if (!getuid() && user) +- setuid(user); /* Run as restricted user */ ++ { ++#include ++ struct passwd * pwd = getpwuid(user); ++ if(initgroups(pwd->pw_name,pwd->pw_gid)) ++ { ++ fprintf(stderr, "DEBUG: initgroups failed\n"); ++ exit(errno + 100); ++ } ++ setuid(user); /* Run as restricted user */ ++ } + + if ((fd = open("/dev/null", O_RDONLY)) > 0) + { diff --git a/cups/key b/cups/key new file mode 100644 index 0000000..e8e598b --- /dev/null +++ b/cups/key @@ -0,0 +1 @@ +gpg -v --recv-key E4522DCC9B246FF7 diff --git a/cups/note b/cups/note new file mode 100644 index 0000000..06919a1 --- /dev/null +++ b/cups/note @@ -0,0 +1,19 @@ +with checks enable building takes for ever, even though tests don't fail. + +Running IPP compliance tests... +Performing 4.1-requests.test: PASS +Performing 4.2-cups-printer-ops.test: PASS +Performing 4.3-job-ops.test: PASS +Performing 4.4-subscription-ops.test: PASS +Performing ipp-2.1.test: PASS + +Running command tests... +Performing 5.1-lpadmin.sh: PASS +Waiting for jobs to complete...1... +Performing 5.2-lpc.sh: PASS +Waiting for jobs to complete...1... +Performing 5.3-lpq.sh: PASS +Waiting for jobs to complete...1... + + +It is up to you to let it run for hours or disable checks all together and build it in less than a minute diff --git a/cups/sums b/cups/sums new file mode 100644 index 0000000..6536ee6 --- /dev/null +++ b/cups/sums @@ -0,0 +1,9 @@ + cups-2.4.0-source.tar.gz + cups-2.4.0-source.tar.gz.sig + cups.logrotate + cups.pam + cups.sysusers + cups-2.4.0-statedir.patch + cups-freebind.patch + guid.patch + 0001_fix_missing_bracket.patch diff --git a/cups/time b/cups/time new file mode 100644 index 0000000..e5f7eb0 --- /dev/null +++ b/cups/time @@ -0,0 +1,4 @@ + +real 0m45.322s +user 1m34.038s +sys 0m6.720s diff --git a/cyrus-sasl/0003-Update-saslauthd.conf-location-in-documentation.patch b/cyrus-sasl/0003-Update-saslauthd.conf-location-in-documentation.patch new file mode 100644 index 0000000..1c567f3 --- /dev/null +++ b/cyrus-sasl/0003-Update-saslauthd.conf-location-in-documentation.patch @@ -0,0 +1,41 @@ +From: Debian Cyrus SASL Team + +Date: Thu, 24 Mar 2016 11:35:03 +0100 +Subject: Update saslauthd.conf location in documentation + +date format (cosmetic). +--- + saslauthd/saslauthd.mdoc | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/saslauthd/saslauthd.mdoc b/saslauthd/saslauthd.mdoc +index 0c2209e..17c9284 100644 +--- a/saslauthd/saslauthd.mdoc ++++ b/saslauthd/saslauthd.mdoc +@@ -10,7 +10,7 @@ + .\" manpage in saslauthd.8 whenever you change this source + .\" version. Only the pre-formatted manpage is installed. + .\" +-.Dd 12 12 2005 ++.Dd December 12 2005 + .Dt SASLAUTHD 8 + .Os "CMU-SASL" + .Sh NAME +@@ -245,7 +245,7 @@ instead. + .Em (All platforms that support OpenLDAP 2.0 or higher) + .Pp + Authenticate against an ldap server. The ldap configuration parameters are +-read from /usr/local/etc/saslauthd.conf. The location of this file can be ++read from /etc/saslauthd.conf. The location of this file can be + changed with the -O parameter. See the LDAP_SASLAUTHD file included with the + distribution for the list of available parameters. + .It Li sia +@@ -278,7 +278,7 @@ was never intended to be used in this manner, anyway.) + .Bl -tag -width "/var/run/saslauthd/mux" + .It Pa /var/run/saslauthd/mux + The default communications socket. +-.It Pa /usr/local/etc/saslauthd.conf ++.It Pa /etc/saslauthd.conf + The default configuration file for ldap support. + .El + .Sh SEE ALSO diff --git a/cyrus-sasl/0006-Enable-autoconf-maintainer-mode.patch b/cyrus-sasl/0006-Enable-autoconf-maintainer-mode.patch new file mode 100644 index 0000000..4f2f65c --- /dev/null +++ b/cyrus-sasl/0006-Enable-autoconf-maintainer-mode.patch @@ -0,0 +1,22 @@ +From: Debian Cyrus SASL Team + +Date: Thu, 24 Mar 2016 11:35:03 +0100 +Subject: Enable autoconf maintainer mode + +--- + configure.ac | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/configure.ac b/configure.ac +index 388f5d0..b3db52c 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -69,6 +69,8 @@ AC_CANONICAL_TARGET + + AM_INIT_AUTOMAKE([1.11 tar-ustar dist-bzip2 foreign -Wno-portability subdir-objects]) + ++AM_MAINTAINER_MODE ++ + DIRS="" + + AC_ARG_ENABLE(cmulocal, diff --git a/cyrus-sasl/0010-Update-required-libraries-when-ld-as-needed-is-used.patch b/cyrus-sasl/0010-Update-required-libraries-when-ld-as-needed-is-used.patch new file mode 100644 index 0000000..d1457ee --- /dev/null +++ b/cyrus-sasl/0010-Update-required-libraries-when-ld-as-needed-is-used.patch @@ -0,0 +1,37 @@ +From: Debian Cyrus SASL Team + +Date: Thu, 24 Mar 2016 11:35:04 +0100 +Subject: Update required libraries when ld --as-needed is used + +it. +--- + saslauthd/Makefile.am | 2 +- + sasldb/Makefile.am | 4 ++-- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/saslauthd/Makefile.am b/saslauthd/Makefile.am +index 864b29b..4cf3a3d 100644 +--- a/saslauthd/Makefile.am ++++ b/saslauthd/Makefile.am +@@ -25,7 +25,7 @@ EXTRA_saslauthd_sources = getaddrinfo.c getnameinfo.c + saslauthd_DEPENDENCIES = saslauthd-main.o $(LTLIBOBJS_FULL) + saslauthd_LDADD = @SASL_KRB_LIB@ \ + @GSSAPIBASE_LIBS@ @LIB_CRYPT@ @LIB_SIA@ \ +- @LIB_SOCKET@ @SASL_DB_LIB@ @LIB_PAM@ @LDAP_LIBS@ $(LTLIBOBJS_FULL) $(CRYPTO_COMPAT_OBJS) $(LIBSASLDB_OBJS) ++ @LIB_SOCKET@ ../sasldb/libsasldb.la @LIB_PAM@ @LDAP_LIBS@ $(LTLIBOBJS_FULL) $(CRYPTO_COMPAT_OBJS) $(LIBSASLDB_OBJS) + + testsaslauthd_SOURCES = testsaslauthd.c utils.c + testsaslauthd_LDADD = @LIB_SOCKET@ +diff --git a/sasldb/Makefile.am b/sasldb/Makefile.am +index 497ee25..a27645f 100644 +--- a/sasldb/Makefile.am ++++ b/sasldb/Makefile.am +@@ -54,6 +54,6 @@ noinst_LTLIBRARIES = libsasldb.la + + libsasldb_la_SOURCES = allockey.c sasldb.h + EXTRA_libsasldb_la_SOURCES = $(extra_common_sources) +-libsasldb_la_DEPENDENCIES = $(SASL_DB_BACKEND) +-libsasldb_la_LIBADD = $(SASL_DB_BACKEND) ++libsasldb_la_DEPENDENCIES = $(SASL_DB_BACKEND) $(SASL_DB_LIB) ++libsasldb_la_LIBADD = $(SASL_DB_BACKEND) $(SASL_DB_LIB) + libsasldb_la_LDFLAGS = -no-undefined diff --git a/cyrus-sasl/0013-Don-t-use-la-files-for-opening-plugins.patch b/cyrus-sasl/0013-Don-t-use-la-files-for-opening-plugins.patch new file mode 100644 index 0000000..d024139 --- /dev/null +++ b/cyrus-sasl/0013-Don-t-use-la-files-for-opening-plugins.patch @@ -0,0 +1,153 @@ +From: Debian Cyrus SASL Team + +Date: Thu, 24 Mar 2016 11:35:04 +0100 +Subject: Don't use la files for opening plugins + +--- + lib/dlopen.c | 121 ++++------------------------------------------------------- + 1 file changed, 7 insertions(+), 114 deletions(-) + +diff --git a/lib/dlopen.c b/lib/dlopen.c +index 8284cd8..ef90b11 100644 +--- a/lib/dlopen.c ++++ b/lib/dlopen.c +@@ -246,113 +246,6 @@ static int _sasl_plugin_load(char *plugin, void *library, + return result; + } + +-/* this returns the file to actually open. +- * out should be a buffer of size PATH_MAX +- * and may be the same as in. */ +- +-/* We'll use a static buffer for speed unless someone complains */ +-#define MAX_LINE 2048 +- +-static int _parse_la(const char *prefix, const char *in, char *out) +-{ +- FILE *file; +- size_t length; +- char line[MAX_LINE]; +- char *ntmp = NULL; +- +- if(!in || !out || !prefix || out == in) return SASL_BADPARAM; +- +- /* Set this so we can detect failure */ +- *out = '\0'; +- +- length = strlen(in); +- +- if (strcmp(in + (length - strlen(LA_SUFFIX)), LA_SUFFIX)) { +- if(!strcmp(in + (length - strlen(SO_SUFFIX)),SO_SUFFIX)) { +- /* check for a .la file */ +- if (strlen(prefix) + strlen(in) + strlen(LA_SUFFIX) + 1 >= MAX_LINE) +- return SASL_BADPARAM; +- strcpy(line, prefix); +- strcat(line, in); +- length = strlen(line); +- *(line + (length - strlen(SO_SUFFIX))) = '\0'; +- strcat(line, LA_SUFFIX); +- file = fopen(line, "r"); +- if(file) { +- /* We'll get it on the .la open */ +- fclose(file); +- return SASL_FAIL; +- } +- } +- if (strlen(prefix) + strlen(in) + 1 >= PATH_MAX) +- return SASL_BADPARAM; +- strcpy(out, prefix); +- strcat(out, in); +- return SASL_OK; +- } +- +- if (strlen(prefix) + strlen(in) + 1 >= MAX_LINE) +- return SASL_BADPARAM; +- strcpy(line, prefix); +- strcat(line, in); +- +- file = fopen(line, "r"); +- if(!file) { +- _sasl_log(NULL, SASL_LOG_WARN, +- "unable to open LA file: %s", line); +- return SASL_FAIL; +- } +- +- while(!feof(file)) { +- if(!fgets(line, MAX_LINE, file)) break; +- if(line[strlen(line) - 1] != '\n') { +- _sasl_log(NULL, SASL_LOG_WARN, +- "LA file has too long of a line: %s", in); +- fclose(file); +- return SASL_BUFOVER; +- } +- if(line[0] == '\n' || line[0] == '#') continue; +- if(!strncmp(line, "dlname=", sizeof("dlname=") - 1)) { +- /* We found the line with the name in it */ +- char *end; +- char *start; +- size_t len; +- end = strrchr(line, '\''); +- if(!end) continue; +- start = &line[sizeof("dlname=")-1]; +- len = strlen(start); +- if(len > 3 && start[0] == '\'') { +- ntmp=&start[1]; +- *end='\0'; +- /* Do we have dlname="" ? */ +- if(ntmp == end) { +- _sasl_log(NULL, SASL_LOG_DEBUG, +- "dlname is empty in .la file: %s", in); +- fclose(file); +- return SASL_FAIL; +- } +- strcpy(out, prefix); +- strcat(out, ntmp); +- } +- break; +- } +- } +- if(ferror(file) || feof(file)) { +- _sasl_log(NULL, SASL_LOG_WARN, +- "Error reading .la: %s\n", in); +- fclose(file); +- return SASL_FAIL; +- } +- fclose(file); +- +- if(!(*out)) { +- _sasl_log(NULL, SASL_LOG_WARN, +- "Could not find a dlname line in .la file: %s", in); +- return SASL_FAIL; +- } +- +- return SASL_OK; +-} + #endif /* DO_DLOPEN */ + + /* loads a plugin library */ +@@ -506,18 +399,18 @@ int _sasl_load_plugins(const add_plugin_list_t *entrypoints, + if (length + pos>=PATH_MAX) continue; /* too big */ + + if (strcmp(dir->d_name + (length - strlen(SO_SUFFIX)), +- SO_SUFFIX) +- && strcmp(dir->d_name + (length - strlen(LA_SUFFIX)), +- LA_SUFFIX)) ++ SO_SUFFIX)) + continue; + ++ /* We only use .so files for loading plugins */ ++ + memcpy(name,dir->d_name,length); + name[length]='\0'; + +- result = _parse_la(prefix, name, tmp); +- if(result != SASL_OK) +- continue; +- ++ /* Create full name with path */ ++ strncpy(tmp, prefix, PATH_MAX); ++ strncat(tmp, name, PATH_MAX); ++ + /* skip "lib" and cut off suffix -- + this only need be approximate */ + strcpy(plugname, name + 3); diff --git a/cyrus-sasl/0020-Restore-LIBS-after-checking-gss_inquire_sec_context_.patch b/cyrus-sasl/0020-Restore-LIBS-after-checking-gss_inquire_sec_context_.patch new file mode 100644 index 0000000..fd82dd7 --- /dev/null +++ b/cyrus-sasl/0020-Restore-LIBS-after-checking-gss_inquire_sec_context_.patch @@ -0,0 +1,26 @@ +From 31b68a9438c24fc9e3e52f626462bf514de31757 Mon Sep 17 00:00:00 2001 +From: Ryan Tandy +Date: Mon, 24 Dec 2018 15:07:02 -0800 +Subject: [PATCH] Restore LIBS after checking gss_inquire_sec_context_by_oid + +Fixes: 4b0306dcd76031460246b2dabcb7db766d6b04d8 +--- + m4/sasl2.m4 | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/m4/sasl2.m4 b/m4/sasl2.m4 +index 56e0504a..17f5d081 100644 +--- a/m4/sasl2.m4 ++++ b/m4/sasl2.m4 +@@ -311,9 +311,10 @@ if test "$gssapi" != no; then + [AC_DEFINE(HAVE_GSS_C_SEC_CONTEXT_SASL_SSF,, + [Define if your GSSAPI implementation defines GSS_C_SEC_CONTEXT_SASL_SSF])]) + fi ++ LIBS="$cmu_save_LIBS" ++ + cmu_save_LIBS="$LIBS" + LIBS="$LIBS $GSSAPIBASE_LIBS" +- + AC_MSG_CHECKING([for SPNEGO support in GSSAPI libraries]) + AC_TRY_RUN([ + #ifdef HAVE_GSSAPI_H diff --git a/cyrus-sasl/0022-Fix-keytab-option-for-MIT-Kerberos.patch b/cyrus-sasl/0022-Fix-keytab-option-for-MIT-Kerberos.patch new file mode 100644 index 0000000..316ecd1 --- /dev/null +++ b/cyrus-sasl/0022-Fix-keytab-option-for-MIT-Kerberos.patch @@ -0,0 +1,66 @@ +From: Debian Cyrus SASL Team + +Date: Thu, 24 Mar 2016 11:35:05 +0100 +Subject: Fix keytab option for MIT Kerberos + +--- + m4/sasl2.m4 | 1 + + plugins/gssapi.c | 11 ++++++++--- + 2 files changed, 9 insertions(+), 3 deletions(-) + +diff --git a/m4/sasl2.m4 b/m4/sasl2.m4 +index 56e0504..a90f7b4 100644 +--- a/m4/sasl2.m4 ++++ b/m4/sasl2.m4 +@@ -282,6 +282,7 @@ if test "$gssapi" != no; then + ]) + fi + fi ++ AC_CHECK_FUNCS(krb5_gss_register_acceptor_identity) + AC_CHECK_FUNCS(gss_decapsulate_token) + AC_CHECK_FUNCS(gss_encapsulate_token) + AC_CHECK_FUNCS(gss_oid_equal) +diff --git a/plugins/gssapi.c b/plugins/gssapi.c +index ff663da..7c69ac2 100644 +--- a/plugins/gssapi.c ++++ b/plugins/gssapi.c +@@ -1545,7 +1545,7 @@ static sasl_server_plug_t gssapi_server_plugins[] = + }; + + int gssapiv2_server_plug_init( +-#ifndef HAVE_GSSKRB5_REGISTER_ACCEPTOR_IDENTITY ++#if !defined(HAVE_GSSKRB5_REGISTER_ACCEPTOR_IDENTITY) && !defined(HAVE_KRB5_GSS_REGISTER_ACCEPTOR_IDENTITY) + const sasl_utils_t *utils __attribute__((unused)), + #else + const sasl_utils_t *utils, +@@ -1555,7 +1555,7 @@ int gssapiv2_server_plug_init( + sasl_server_plug_t **pluglist, + int *plugcount) + { +-#ifdef HAVE_GSSKRB5_REGISTER_ACCEPTOR_IDENTITY ++#if defined(HAVE_GSSKRB5_REGISTER_ACCEPTOR_IDENTITY) || defined(HAVE_KRB5_GSS_REGISTER_ACCEPTOR_IDENTITY) + const char *keytab = NULL; + char keytab_path[1024]; + unsigned int rl; +@@ -1565,7 +1565,7 @@ int gssapiv2_server_plug_init( + return SASL_BADVERS; + } + +-#ifdef HAVE_GSSKRB5_REGISTER_ACCEPTOR_IDENTITY ++#if defined(HAVE_GSSKRB5_REGISTER_ACCEPTOR_IDENTITY) || defined(HAVE_KRB5_GSS_REGISTER_ACCEPTOR_IDENTITY) + /* unfortunately, we don't check for readability of keytab if it's + the standard one, since we don't know where it is */ + +@@ -1587,7 +1587,12 @@ int gssapiv2_server_plug_init( + + strncpy(keytab_path, keytab, 1024); + ++#ifdef HAVE_GSSKRB5_REGISTER_ACCEPTOR_IDENTITY + gsskrb5_register_acceptor_identity(keytab_path); ++#endif ++#ifdef HAVE_KRB5_GSS_REGISTER_ACCEPTOR_IDENTITY ++ krb5_gss_register_acceptor_identity(keytab_path); ++#endif + } + #endif + diff --git a/cyrus-sasl/0032-Add-with_pgsql-include-postgresql-to-include-path.patch b/cyrus-sasl/0032-Add-with_pgsql-include-postgresql-to-include-path.patch new file mode 100644 index 0000000..304d5ca --- /dev/null +++ b/cyrus-sasl/0032-Add-with_pgsql-include-postgresql-to-include-path.patch @@ -0,0 +1,23 @@ +From: =?utf-8?b?T25kxZllaiBTdXLDvQ==?= +Date: Tue, 25 Oct 2016 12:33:27 +0200 +Subject: Add ${with_pgsql}include/postgresql/ to include path + +--- + configure.ac | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index fe7f0eb..1882f31 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -894,7 +894,9 @@ case "$with_pgsql" in + LIB_PGSQL_DIR=$LIB_PGSQL + LIB_PGSQL="$LIB_PGSQL -lpq" + +- if test -d ${with_pgsql}/include/pgsql; then ++ if test -d ${with_pgsql}/include/postgresql/; then ++ CPPFLAGS="${CPPFLAGS} -I${with_pgsql}/include/postgresql" ++ elif test -d ${with_pgsql}/include/pgsql; then + CPPFLAGS="${CPPFLAGS} -I${with_pgsql}/include/pgsql" + elif test -d ${with_pgsql}/pgsql/include; then + CPPFLAGS="${CPPFLAGS} -I${with_pgsql}/pgsql/include" diff --git a/cyrus-sasl/PKGBUILD b/cyrus-sasl/PKGBUILD new file mode 100644 index 0000000..1d447e6 --- /dev/null +++ b/cyrus-sasl/PKGBUILD @@ -0,0 +1,193 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +# This package spans multiple repositories. +# Always build from cyrus-sasl/trunk and merge changes to libsasl/trunk. + +pkgbase='cyrus-sasl' +pkgname=('cyrus-sasl' 'cyrus-sasl-gssapi' 'cyrus-sasl-ldap' 'cyrus-sasl-sql') +#pkgname=libsasl +pkgver=2.1.27 +pkgrel=06 +pkgdesc="Cyrus Simple Authentication Service Layer (SASL) library" +arch=('x86_64') +url="https://www.cyrusimap.org/sasl/" +options=('!makeflags') +makedepends=('postgresql-libs' 'mariadb-libs' 'libldap' 'krb5' 'openssl' 'sqlite') +source=(https://github.com/cyrusimap/cyrus-sasl/releases/download/cyrus-sasl-${pkgver}/cyrus-sasl-${pkgver}.tar.gz{,.sig} + 0003-Update-saslauthd.conf-location-in-documentation.patch + 0006-Enable-autoconf-maintainer-mode.patch + 0010-Update-required-libraries-when-ld-as-needed-is-used.patch + 0013-Don-t-use-la-files-for-opening-plugins.patch + 0020-Restore-LIBS-after-checking-gss_inquire_sec_context_.patch + 0022-Fix-keytab-option-for-MIT-Kerberos.patch + 0032-Add-with_pgsql-include-postgresql-to-include-path.patch + gdbm-errno.patch + autoconf-2.70.patch +# saslauthd.service + saslauthd.conf.d + tmpfiles.conf) + +prepare() { + cd cyrus-sasl-$pkgver + patch -Np1 -i ../0003-Update-saslauthd.conf-location-in-documentation.patch + patch -Np1 -i ../0006-Enable-autoconf-maintainer-mode.patch + patch -Np1 -i ../0010-Update-required-libraries-when-ld-as-needed-is-used.patch + patch -Np1 -i ../0013-Don-t-use-la-files-for-opening-plugins.patch + patch -Np1 -i ../0020-Restore-LIBS-after-checking-gss_inquire_sec_context_.patch + patch -Np1 -i ../0022-Fix-keytab-option-for-MIT-Kerberos.patch + patch -Np1 -i ../0032-Add-with_pgsql-include-postgresql-to-include-path.patch + patch -Np1 -i ../gdbm-errno.patch + patch -p1 -i ../autoconf-2.70.patch # Fix GCC-SPNEGO build with recent autoconf + cp -a saslauthd/saslauthd.mdoc saslauthd/saslauthd.8 +} + +build() { + export CFLAGS="$CFLAGS -fPIC" + cd cyrus-sasl-$pkgver + + rm -f config/config.guess config/config.sub + rm -f config/ltconfig config/ltmain.sh config/libtool.m4 + rm -fr autom4te.cache + libtoolize -c + aclocal -I config + automake -a -c + autoheader + autoconf + + ./configure --prefix=/usr \ + --sbin=/usr/bin \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --disable-static \ + --enable-shared \ + --enable-alwaystrue \ + --enable-checkapop \ + --enable-cram \ + --enable-digest \ + --disable-otp \ + --disable-srp \ + --disable-srp-setpass \ + --disable-krb4 \ + --enable-gssapi \ + --enable-auth-sasldb \ + --enable-plain \ + --enable-anon \ + --enable-login \ + --enable-ntlm \ + --disable-passdss \ + --enable-sql \ + --with-mysql=/usr \ + --with-pgsql=/usr/lib \ + --with-sqlite3=/usr/lib \ + --enable-ldapdb \ + --disable-macos-framework \ + --with-pam \ + --with-saslauthd=/var/run/saslauthd \ + --with-ldap \ + --with-dblib=gdbm \ + --with-configdir=/etc/sasl2:/etc/sasl:/usr/lib/sasl2 \ + --sysconfdir=/etc \ + --with-devrandom=/dev/urandom + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +package_libsasl() { + pkgdesc="Cyrus Simple Authentication Service Layer (SASL) Library" + depends=('openssl') + conflicts=('cyrus-sasl-plugins') + + cd cyrus-sasl-$pkgver + make DESTDIR="$pkgdir" install-pkgconfigDATA + for dir in include lib sasldb plugins utils; do + pushd ${dir} + make DESTDIR="${pkgdir}" install + popd + done + rm -f "${pkgdir}"/usr/lib/sasl2/libsql.so* + rm -f "${pkgdir}"/usr/lib/sasl2/libgssapiv2.so* + rm -f "${pkgdir}"/usr/lib/sasl2/libldapdb.so* + rm -f "${pkgdir}"/usr/lib/sasl2/libgs2.so* + install -m755 -d "${pkgdir}/usr/share/licenses/libsasl" + install -m644 COPYING "${pkgdir}/usr/share/licenses/libsasl/" +} + +package_cyrus-sasl() { + depends=("libsasl=${pkgver}" 'krb5' 'pam' 'gdbm') + pkgdesc="Cyrus saslauthd SASL authentication daemon" + backup=('etc/conf.d/saslauthd') + + cd cyrus-sasl-$pkgver/saslauthd + make DESTDIR="${pkgdir}" install + install -Dm644 "${srcdir}/saslauthd.conf.d" "${pkgdir}/etc/conf.d/saslauthd" +## install -Dm644 "${srcdir}/saslauthd.service" "${pkgdir}/usr/lib/systemd/system/saslauthd.service" + install -Dm644 "${srcdir}/tmpfiles.conf" "${pkgdir}/usr/lib/tmpfiles.d/saslauthd.conf" + + install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl" + ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl/" +} + +package_cyrus-sasl-gssapi() { + pkgdesc="GSSAPI authentication mechanism for Cyrus SASL" + depends=("libsasl=${pkgver}" 'krb5') + replaces=('cyrus-sasl-plugins') + + cd cyrus-sasl-$pkgver/plugins + install -m755 -d "${pkgdir}/usr/lib/sasl2" + cp -a .libs/libgssapiv2.so* "${pkgdir}/usr/lib/sasl2/" + cp -a .libs/libgs2.so* "${pkgdir}/usr/lib/sasl2/" + + install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl-gssapi" + ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl-gssapi/" +} + +package_cyrus-sasl-ldap() { + pkgdesc="ldapdb auxprop module for Cyrus SASL" + depends=("libsasl=${pkgver}" 'libldap') + replaces=('cyrus-sasl-plugins') + + cd cyrus-sasl-$pkgver/plugins + install -m755 -d "${pkgdir}/usr/lib/sasl2" + cp -a .libs/libldapdb.so* "${pkgdir}/usr/lib/sasl2/" + + install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl-ldap" + ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl-ldap/" +} + +package_cyrus-sasl-sql() { + pkgdesc="SQL auxprop module for Cyrus SASL" + depends=("libsasl=${pkgver}" 'postgresql-libs' 'mariadb-libs' 'sqlite') + replaces=('cyrus-sasl-plugins') + + cd cyrus-sasl-$pkgver/plugins + install -m755 -d "${pkgdir}/usr/lib/sasl2" + cp -a .libs/libsql.so* "${pkgdir}/usr/lib/sasl2/" + + install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl-sql" + ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl-sql/" +} + +#---- license gpg-key sha256sums ---- +license=('custom') +validpgpkeys=('829F339F8C296FE80F409D93E3D7C118C7B9F46A') +sha256sums=('26866b1549b00ffd020f188a43c258017fa1c382b3ddadd8201536f72efb05d5' + 'SKIP' + '9919c81196701d11a3a77e2573a541489ad9ab42a4c50eb7d19edfb37713c604' + '7bd2b2af36c061e92f69944a18e2c122aea0d2b21773f5ea47bb6209f13d0812' + '8e22cb6ac58208f191b1eb19aac602c1bf49708f2a3b2e3de5f5b2c1e2467906' + 'bbee401c01dc6942710e0c1285091fcd98588bf636b52f24ed0e3b04039b748b' + 'a953c79c585d579f25135de0fe807d6da1fddccbd5b66a9606fb6390c12c7e31' + '1a0ae7bd722d57feb6fab12c05eb1922982c68bd9be1c165d405954012e6634f' + '3c375f8755fdbd98a21c4ee195bebbd2a146901fee327e4dd6cfde7a4dcba7c3' + '03a57cbcec85602fb8e39b7c8a3ff1a22d2c20a28e771b8b326a570d733bf432' + '91cb2026e7f41374ec181809c862bbfaf4e4b3346dc8294285718d2dd17101a5' +# '5c6453050a5f594ca1d53baf3a6188d8f3cdc7a28467ad7c844ad51f663dae9a' + 'fa57b4f374ae633633091b1c8b44e1e0be814e4fddbfa75f16eb3dd1f16b8640' + '16ca1a4185847b0c6c70ef6c7c314cb466f698d3ed02185a5f50e8179822f024') + + +#sha256sums=(a) diff --git a/cyrus-sasl/PKGBUILD-arch b/cyrus-sasl/PKGBUILD-arch new file mode 100644 index 0000000..9b58d40 --- /dev/null +++ b/cyrus-sasl/PKGBUILD-arch @@ -0,0 +1,184 @@ +# Maintainer: Jan de Groot + +# This package spans multiple repositories. +# Always build from cyrus-sasl/trunk and merge changes to libsasl/trunk. + +pkgbase='cyrus-sasl' +pkgname=('cyrus-sasl' 'cyrus-sasl-gssapi' 'cyrus-sasl-ldap' 'cyrus-sasl-sql') +#pkgname=libsasl +pkgver=2.1.27 +pkgrel=6 +pkgdesc="Cyrus Simple Authentication Service Layer (SASL) library" +arch=('x86_64') +url="https://www.cyrusimap.org/sasl/" +license=('custom') +options=('!makeflags') +makedepends=('postgresql-libs' 'mariadb-libs' 'libldap' 'krb5' 'openssl' 'sqlite') +source=(https://github.com/cyrusimap/cyrus-sasl/releases/download/cyrus-sasl-${pkgver}/cyrus-sasl-${pkgver}.tar.gz{,.sig} + 0003-Update-saslauthd.conf-location-in-documentation.patch + 0006-Enable-autoconf-maintainer-mode.patch + 0010-Update-required-libraries-when-ld-as-needed-is-used.patch + 0013-Don-t-use-la-files-for-opening-plugins.patch + 0020-Restore-LIBS-after-checking-gss_inquire_sec_context_.patch + 0022-Fix-keytab-option-for-MIT-Kerberos.patch + 0032-Add-with_pgsql-include-postgresql-to-include-path.patch + gdbm-errno.patch + autoconf-2.70.patch + saslauthd.service + saslauthd.conf.d + tmpfiles.conf) +sha256sums=('26866b1549b00ffd020f188a43c258017fa1c382b3ddadd8201536f72efb05d5' + 'SKIP' + '9919c81196701d11a3a77e2573a541489ad9ab42a4c50eb7d19edfb37713c604' + '7bd2b2af36c061e92f69944a18e2c122aea0d2b21773f5ea47bb6209f13d0812' + '8e22cb6ac58208f191b1eb19aac602c1bf49708f2a3b2e3de5f5b2c1e2467906' + 'bbee401c01dc6942710e0c1285091fcd98588bf636b52f24ed0e3b04039b748b' + 'a953c79c585d579f25135de0fe807d6da1fddccbd5b66a9606fb6390c12c7e31' + '1a0ae7bd722d57feb6fab12c05eb1922982c68bd9be1c165d405954012e6634f' + '3c375f8755fdbd98a21c4ee195bebbd2a146901fee327e4dd6cfde7a4dcba7c3' + '03a57cbcec85602fb8e39b7c8a3ff1a22d2c20a28e771b8b326a570d733bf432' + '91cb2026e7f41374ec181809c862bbfaf4e4b3346dc8294285718d2dd17101a5' + '5c6453050a5f594ca1d53baf3a6188d8f3cdc7a28467ad7c844ad51f663dae9a' + 'fa57b4f374ae633633091b1c8b44e1e0be814e4fddbfa75f16eb3dd1f16b8640' + '16ca1a4185847b0c6c70ef6c7c314cb466f698d3ed02185a5f50e8179822f024') +validpgpkeys=('829F339F8C296FE80F409D93E3D7C118C7B9F46A') + +prepare() { + cd cyrus-sasl-$pkgver + patch -Np1 -i ../0003-Update-saslauthd.conf-location-in-documentation.patch + patch -Np1 -i ../0006-Enable-autoconf-maintainer-mode.patch + patch -Np1 -i ../0010-Update-required-libraries-when-ld-as-needed-is-used.patch + patch -Np1 -i ../0013-Don-t-use-la-files-for-opening-plugins.patch + patch -Np1 -i ../0020-Restore-LIBS-after-checking-gss_inquire_sec_context_.patch + patch -Np1 -i ../0022-Fix-keytab-option-for-MIT-Kerberos.patch + patch -Np1 -i ../0032-Add-with_pgsql-include-postgresql-to-include-path.patch + patch -Np1 -i ../gdbm-errno.patch + patch -p1 -i ../autoconf-2.70.patch # Fix GCC-SPNEGO build with recent autoconf + cp -a saslauthd/saslauthd.mdoc saslauthd/saslauthd.8 +} + +build() { + export CFLAGS="$CFLAGS -fPIC" + cd cyrus-sasl-$pkgver + + rm -f config/config.guess config/config.sub + rm -f config/ltconfig config/ltmain.sh config/libtool.m4 + rm -fr autom4te.cache + libtoolize -c + aclocal -I config + automake -a -c + autoheader + autoconf + + ./configure --prefix=/usr \ + --sbin=/usr/bin \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --disable-static \ + --enable-shared \ + --enable-alwaystrue \ + --enable-checkapop \ + --enable-cram \ + --enable-digest \ + --disable-otp \ + --disable-srp \ + --disable-srp-setpass \ + --disable-krb4 \ + --enable-gssapi \ + --enable-auth-sasldb \ + --enable-plain \ + --enable-anon \ + --enable-login \ + --enable-ntlm \ + --disable-passdss \ + --enable-sql \ + --with-mysql=/usr \ + --with-pgsql=/usr/lib \ + --with-sqlite3=/usr/lib \ + --enable-ldapdb \ + --disable-macos-framework \ + --with-pam \ + --with-saslauthd=/var/run/saslauthd \ + --with-ldap \ + --with-dblib=gdbm \ + --with-configdir=/etc/sasl2:/etc/sasl:/usr/lib/sasl2 \ + --sysconfdir=/etc \ + --with-devrandom=/dev/urandom + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +package_libsasl() { + pkgdesc="Cyrus Simple Authentication Service Layer (SASL) Library" + depends=('openssl') + conflicts=('cyrus-sasl-plugins') + + cd cyrus-sasl-$pkgver + make DESTDIR="$pkgdir" install-pkgconfigDATA + for dir in include lib sasldb plugins utils; do + pushd ${dir} + make DESTDIR="${pkgdir}" install + popd + done + rm -f "${pkgdir}"/usr/lib/sasl2/libsql.so* + rm -f "${pkgdir}"/usr/lib/sasl2/libgssapiv2.so* + rm -f "${pkgdir}"/usr/lib/sasl2/libldapdb.so* + rm -f "${pkgdir}"/usr/lib/sasl2/libgs2.so* + install -m755 -d "${pkgdir}/usr/share/licenses/libsasl" + install -m644 COPYING "${pkgdir}/usr/share/licenses/libsasl/" +} + +package_cyrus-sasl() { + depends=("libsasl=${pkgver}" 'krb5' 'pam' 'gdbm') + pkgdesc="Cyrus saslauthd SASL authentication daemon" + backup=('etc/conf.d/saslauthd') + + cd cyrus-sasl-$pkgver/saslauthd + make DESTDIR="${pkgdir}" install + install -Dm644 "${srcdir}/saslauthd.conf.d" "${pkgdir}/etc/conf.d/saslauthd" + install -Dm644 "${srcdir}/saslauthd.service" "${pkgdir}/usr/lib/systemd/system/saslauthd.service" + install -Dm644 "${srcdir}/tmpfiles.conf" "${pkgdir}/usr/lib/tmpfiles.d/saslauthd.conf" + + install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl" + ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl/" +} + +package_cyrus-sasl-gssapi() { + pkgdesc="GSSAPI authentication mechanism for Cyrus SASL" + depends=("libsasl=${pkgver}" 'krb5') + replaces=('cyrus-sasl-plugins') + + cd cyrus-sasl-$pkgver/plugins + install -m755 -d "${pkgdir}/usr/lib/sasl2" + cp -a .libs/libgssapiv2.so* "${pkgdir}/usr/lib/sasl2/" + cp -a .libs/libgs2.so* "${pkgdir}/usr/lib/sasl2/" + + install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl-gssapi" + ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl-gssapi/" +} + +package_cyrus-sasl-ldap() { + pkgdesc="ldapdb auxprop module for Cyrus SASL" + depends=("libsasl=${pkgver}" 'libldap') + replaces=('cyrus-sasl-plugins') + + cd cyrus-sasl-$pkgver/plugins + install -m755 -d "${pkgdir}/usr/lib/sasl2" + cp -a .libs/libldapdb.so* "${pkgdir}/usr/lib/sasl2/" + + install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl-ldap" + ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl-ldap/" +} + +package_cyrus-sasl-sql() { + pkgdesc="SQL auxprop module for Cyrus SASL" + depends=("libsasl=${pkgver}" 'postgresql-libs' 'mariadb-libs' 'sqlite') + replaces=('cyrus-sasl-plugins') + + cd cyrus-sasl-$pkgver/plugins + install -m755 -d "${pkgdir}/usr/lib/sasl2" + cp -a .libs/libsql.so* "${pkgdir}/usr/lib/sasl2/" + + install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl-sql" + ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl-sql/" +} diff --git a/cyrus-sasl/autoconf-2.70.patch b/cyrus-sasl/autoconf-2.70.patch new file mode 100644 index 0000000..081a609 --- /dev/null +++ b/cyrus-sasl/autoconf-2.70.patch @@ -0,0 +1,79 @@ +From 56d3138b309b19cb9460ed4d05bb63302a97b703 Mon Sep 17 00:00:00 2001 +From: Pavel Raiskup +Date: Thu, 1 Apr 2021 17:17:52 +0200 +Subject: [PATCH] configure.ac: avoid side-effects in AC_CACHE_VAL + +In the COMMANDS-TO-SET-IT argument, per Autoconf docs: +https://www.gnu.org/software/autoconf/manual/autoconf-2.63/html_node/Caching-Results.html + +Signed-off-by: Pavel Raiskup +--- + configure.ac | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index a106d35e..d333496d 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -220,11 +220,14 @@ void foo() { int i=0;} + int main() { void *self, *ptr1, *ptr2; self=dlopen(NULL,RTLD_LAZY); + if(self) { ptr1=dlsym(self,"foo"); ptr2=dlsym(self,"_foo"); + if(ptr1 && !ptr2) exit(0); } exit(1); } +-], [sasl_cv_dlsym_adds_uscore=yes], sasl_cv_dlsym_adds_uscore=no +- AC_DEFINE(DLSYM_NEEDS_UNDERSCORE, [], [Do we need a leading _ for dlsym?]), ++], [sasl_cv_dlsym_adds_uscore=yes], sasl_cv_dlsym_adds_uscore=no, + AC_MSG_WARN(cross-compiler, we'll do our best))) + LIBS="$cmu_save_LIBS" + AC_MSG_RESULT($sasl_cv_dlsym_adds_uscore) ++ ++ if test "$sasl_cv_dlsym_adds_uscore" = no; then ++ AC_DEFINE(DLSYM_NEEDS_UNDERSCORE, [], [Do we need a leading _ for dlsym?]) ++ fi + fi + fi + + +From 004869fdf66a2d951fdf0e1c7809652394188368 Mon Sep 17 00:00:00 2001 +From: Pavel Raiskup +Date: Thu, 1 Apr 2021 17:26:28 +0200 +Subject: [PATCH] configure.ac: properly quote macro arguments + +Autoconf 2.70+ is more picky about the quotation (even though with +previous versions the arguments should have been quoted, too). When we +don't quote macros inside the AC_CACHE_VAL macro - some of the Autoconf +initialization is wrongly ordered in ./configure script and we keep +seeing bugs like: + + ./configure: line 2165: ac_fn_c_try_run: command not found + +Original report: https://bugzilla.redhat.com/1943013 + +Signed-off-by: Pavel Raiskup +--- + configure.ac | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/configure.ac b/configure.ac +index d333496d..7281cba0 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -213,15 +213,16 @@ if test $sasl_cv_uscore = yes; then + AC_MSG_CHECKING(whether dlsym adds the underscore for us) + cmu_save_LIBS="$LIBS" + LIBS="$LIBS $SASL_DL_LIB" +- AC_CACHE_VAL(sasl_cv_dlsym_adds_uscore,AC_TRY_RUN( [ ++ AC_CACHE_VAL([sasl_cv_dlsym_adds_uscore], ++ [AC_TRY_RUN([ + #include + #include + void foo() { int i=0;} + int main() { void *self, *ptr1, *ptr2; self=dlopen(NULL,RTLD_LAZY); + if(self) { ptr1=dlsym(self,"foo"); ptr2=dlsym(self,"_foo"); + if(ptr1 && !ptr2) exit(0); } exit(1); } +-], [sasl_cv_dlsym_adds_uscore=yes], sasl_cv_dlsym_adds_uscore=no, +- AC_MSG_WARN(cross-compiler, we'll do our best))) ++], [sasl_cv_dlsym_adds_uscore=yes], [sasl_cv_dlsym_adds_uscore=no], ++ [AC_MSG_WARN(cross-compiler, we'll do our best)])]) + LIBS="$cmu_save_LIBS" + AC_MSG_RESULT($sasl_cv_dlsym_adds_uscore) + diff --git a/cyrus-sasl/clean b/cyrus-sasl/clean new file mode 100644 index 0000000..bff66d6 --- /dev/null +++ b/cyrus-sasl/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,*tar.gz*} diff --git a/cyrus-sasl/deps b/cyrus-sasl/deps new file mode 100644 index 0000000..66dac9d --- /dev/null +++ b/cyrus-sasl/deps @@ -0,0 +1,4 @@ +postgresql-libs +mariadb-libs +automake +autoconf diff --git a/cyrus-sasl/gdbm-errno.patch b/cyrus-sasl/gdbm-errno.patch new file mode 100644 index 0000000..dd9147d --- /dev/null +++ b/cyrus-sasl/gdbm-errno.patch @@ -0,0 +1,29 @@ +From af48f6fec9a7b6374d4153c5db894d4a1f349645 Mon Sep 17 00:00:00 2001 +From: Jonas Jelten +Date: Sat, 2 Feb 2019 20:53:37 +0100 +Subject: [PATCH] db_gdbm: fix gdbm_errno overlay from gdbm_close + +`gdbm_close` also sets gdbm_errno since version 1.17. +This leads to a problem in `libsasl` as the `gdbm_close` incovation overlays +the `gdbm_errno` value which is then later used for the error handling. +--- + sasldb/db_gdbm.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/sasldb/db_gdbm.c b/sasldb/db_gdbm.c +index ee56a6bf..c908808e 100644 +--- a/sasldb/db_gdbm.c ++++ b/sasldb/db_gdbm.c +@@ -107,9 +107,11 @@ int _sasldb_getdata(const sasl_utils_t *utils, + gkey.dptr = key; + gkey.dsize = key_len; + gvalue = gdbm_fetch(db, gkey); ++ int fetch_errno = gdbm_errno; ++ + gdbm_close(db); + if (! gvalue.dptr) { +- if (gdbm_errno == GDBM_ITEM_NOT_FOUND) { ++ if (fetch_errno == GDBM_ITEM_NOT_FOUND) { + utils->seterror(conn, SASL_NOLOG, + "user: %s@%s property: %s not found in %s", + authid, realm, propName, path); diff --git a/cyrus-sasl/key b/cyrus-sasl/key new file mode 100644 index 0000000..704a36b --- /dev/null +++ b/cyrus-sasl/key @@ -0,0 +1 @@ +gpg -v --recv-key E3D7C118C7B9F46A diff --git a/cyrus-sasl/note b/cyrus-sasl/note new file mode 100644 index 0000000..2b60482 --- /dev/null +++ b/cyrus-sasl/note @@ -0,0 +1 @@ +made this from the source for libsasl while I was at it diff --git a/cyrus-sasl/saslauthd.conf.d b/cyrus-sasl/saslauthd.conf.d new file mode 100644 index 0000000..1672112 --- /dev/null +++ b/cyrus-sasl/saslauthd.conf.d @@ -0,0 +1 @@ +SASLAUTHD_OPTS="-a pam" diff --git a/cyrus-sasl/time b/cyrus-sasl/time new file mode 100644 index 0000000..c7c757c --- /dev/null +++ b/cyrus-sasl/time @@ -0,0 +1,3 @@ +real 0m28.867s +user 0m26.985s +sys 0m3.372s diff --git a/cyrus-sasl/tmpfiles.conf b/cyrus-sasl/tmpfiles.conf new file mode 100644 index 0000000..7258b1a --- /dev/null +++ b/cyrus-sasl/tmpfiles.conf @@ -0,0 +1 @@ +d /run/saslauthd 0755 root root - - diff --git a/dconf/PKGBUILD b/dconf/PKGBUILD new file mode 100644 index 0000000..3b9e82d --- /dev/null +++ b/dconf/PKGBUILD @@ -0,0 +1,60 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=dconf +pkgver=0.40.0 +pkgrel=02 +pkgdesc="Configuration database system w/o systemd" +url="https://wiki.gnome.org/Projects/dconf" +arch=(x86_64) +depends=(glib2) +makedepends=(vala dbus git gtk-doc python meson bash-completion) +provides=(libdconf.so) +install=dconf.install +_commit=4c0a26052efafae923eba42d14c5cb88da745de2 # tags/0.40.0^0 +source=("git+https://gitlab.gnome.org/GNOME/dconf.git#commit=$_commit" + dconf-update dconf-update.hook) + +pkgver() { + cd $pkgname + git describe --tags | sed 's/-/+/g' +} + +prepare() { + cd $pkgname +} + +build() { + arch-meson $pkgname build -D gtk_doc=true + meson compile -C build +} + +# +# It fails gdbus tests since no dbus is running - sorry not here! +#check() { +# meson test -C build --print-errorlogs +#} +# + +package() { + DESTDIR="$pkgdir" meson install -C build + install -Dt "$pkgdir/usr/share/libalpm/hooks" -m644 *.hook + install -Dt "$pkgdir/usr/share/libalpm/scripts" dconf-update + + # Prevent this directory from getting removed when other + # packages which install files there get uninstalled + install -Dm644 /dev/null "$pkgdir/etc/dconf/db/.placeholder" + rm -rf $pkgdir/usr/lib/systemd +} + +#---- license gpg-key sha256sums ---- + +license=(LGPL) + +sha256sums=(SKIP + 330142605370f82f4229e8a94b245f911407eb629b50f1497f415c70164a90ec # dconf-update + 8d02176ff001a13d15a7ac087edd2502725494668933fa2c6e6f9cb21ae24e6b) # dconf-update.hook diff --git a/dconf/PKGBUILD-arch b/dconf/PKGBUILD-arch new file mode 100644 index 0000000..13549eb --- /dev/null +++ b/dconf/PKGBUILD-arch @@ -0,0 +1,50 @@ +# Maintainer: Jan Alexander Steffens (heftig) +# Contributor: Ionut Biru + +pkgname=dconf +pkgver=0.40.0 +pkgrel=1 +pkgdesc="Configuration database system" +url="https://wiki.gnome.org/Projects/dconf" +arch=(x86_64) +license=(LGPL) +depends=(glib2) +makedepends=(vala dbus git gtk-doc python meson bash-completion) +provides=(libdconf.so) +install=dconf.install +_commit=4c0a26052efafae923eba42d14c5cb88da745de2 # tags/0.40.0^0 +source=("git+https://gitlab.gnome.org/GNOME/dconf.git#commit=$_commit" + dconf-update dconf-update.hook) +sha256sums=('SKIP' + '330142605370f82f4229e8a94b245f911407eb629b50f1497f415c70164a90ec' + '8d02176ff001a13d15a7ac087edd2502725494668933fa2c6e6f9cb21ae24e6b') + +pkgver() { + cd $pkgname + git describe --tags | sed 's/-/+/g' +} + +prepare() { + cd $pkgname +} + +build() { + arch-meson $pkgname build -D gtk_doc=true + meson compile -C build +} + +check() { + meson test -C build --print-errorlogs +} + +package() { + DESTDIR="$pkgdir" meson install -C build + install -Dt "$pkgdir/usr/share/libalpm/hooks" -m644 *.hook + install -Dt "$pkgdir/usr/share/libalpm/scripts" dconf-update + + # Prevent this directory from getting removed when other + # packages which install files there get uninstalled + install -Dm644 /dev/null "$pkgdir/etc/dconf/db/.placeholder" +} + +# vim:set sw=2 et: diff --git a/dconf/clean b/dconf/clean new file mode 100644 index 0000000..5936e7b --- /dev/null +++ b/dconf/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,dconf} diff --git a/dconf/dconf-update b/dconf/dconf-update new file mode 100755 index 0000000..61d48a5 --- /dev/null +++ b/dconf/dconf-update @@ -0,0 +1,9 @@ +#!/bin/bash + +while read -r d; do + if [[ ! -d $d ]]; then + rm -f "${d%.d/}" + fi +done + +dconf update diff --git a/dconf/dconf-update.hook b/dconf/dconf-update.hook new file mode 100644 index 0000000..b3353c9 --- /dev/null +++ b/dconf/dconf-update.hook @@ -0,0 +1,12 @@ +[Trigger] +Type = Path +Operation = Install +Operation = Upgrade +Operation = Remove +Target = etc/dconf/db/*.d/ + +[Action] +Description = Updating system dconf databases... +When = PostTransaction +Exec = /usr/share/libalpm/scripts/dconf-update +NeedsTargets diff --git a/dconf/dconf.install b/dconf/dconf.install new file mode 100644 index 0000000..76183b5 --- /dev/null +++ b/dconf/dconf.install @@ -0,0 +1,9 @@ +post_install() { + post_upgrade $1 0 +} + +post_upgrade() { + if (( $(vercmp $2 0.32.0-2) < 0 )); then + dconf update + fi +} diff --git a/dconf/deps b/dconf/deps new file mode 100644 index 0000000..b2bb1a8 --- /dev/null +++ b/dconf/deps @@ -0,0 +1,7 @@ +vala +git +gtk-doc +python +meson +bash-completion +cmake diff --git a/dconf/time b/dconf/time new file mode 100644 index 0000000..a50e759 --- /dev/null +++ b/dconf/time @@ -0,0 +1,5 @@ + +real 0m13.764s +user 0m24.365s +sys 0m2.751s + diff --git a/dejagnu/PKGBUILD b/dejagnu/PKGBUILD new file mode 100644 index 0000000..002cc3a --- /dev/null +++ b/dejagnu/PKGBUILD @@ -0,0 +1,43 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=dejagnu +pkgver=1.6.3 +pkgrel=02 +pkgdesc='Framework for testing other programs' +arch=(any) +url='https://www.gnu.org/software/dejagnu/' +depends=(sh expect) +checkdepends=(tcl) +source=(https://ftp.gnu.org/gnu/dejagnu/${pkgname}-${pkgver}.tar.gz{,.sig}) + +build() { + mkdir -p build + cd build + ../$pkgname-$pkgver/configure --prefix=/usr + make +} + +check() { + cd build + make check +} + +package() { + cd build + make DESTDIR="$pkgdir" install +} + +#---- license gpg-key sha256sums ---- + +license=(GPL) + +validpgpkeys=('152F3EADD335FF629611128567DADC3E3F743649' # Ben Elliston + 'D231B45ECB0B7BD8F6E7A682CE9D6843AABACC90') # Jacob Bachmeyer (2021 DejaGnu Release Signing Key) + +sha256sums=(87daefacd7958b4a69f88c6856dbd1634261963c414079d0c371f589cd66a2e3 # dejagnu-1.6.3.tar.gz + a3b76186ee99b65f46f30b8973a93e33175efa2cc07090858d48d67f678f3288) # dejagnu-1.6.3.tar.gz.sig diff --git a/dejagnu/PKGBUILD-arch b/dejagnu/PKGBUILD-arch new file mode 100644 index 0000000..8964ae1 --- /dev/null +++ b/dejagnu/PKGBUILD-arch @@ -0,0 +1,35 @@ +# Maintainer: +# Contributor: Bartłomiej Piotrowski +# Contributor: Allan McRae + +pkgname=dejagnu +pkgver=1.6.3 +pkgrel=2 +pkgdesc='Framework for testing other programs' +arch=(any) +url='https://www.gnu.org/software/dejagnu/' +license=(GPL) +depends=(sh expect) +checkdepends=(tcl) +source=(https://ftp.gnu.org/gnu/dejagnu/${pkgname}-${pkgver}.tar.gz{,.sig}) +sha256sums=('87daefacd7958b4a69f88c6856dbd1634261963c414079d0c371f589cd66a2e3' + 'SKIP') +validpgpkeys=('152F3EADD335FF629611128567DADC3E3F743649' # Ben Elliston + 'D231B45ECB0B7BD8F6E7A682CE9D6843AABACC90') # Jacob Bachmeyer (2021 DejaGnu Release Signing Key) + +build() { + mkdir -p build + cd build + ../$pkgname-$pkgver/configure --prefix=/usr + make +} + +check() { + cd build + make check +} + +package() { + cd build + make DESTDIR="$pkgdir" install +} diff --git a/dejagnu/clean b/dejagnu/clean new file mode 100644 index 0000000..eb7ca98 --- /dev/null +++ b/dejagnu/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,deja*.tar.gz*} diff --git a/dejagnu/deps b/dejagnu/deps new file mode 100644 index 0000000..8653d43 --- /dev/null +++ b/dejagnu/deps @@ -0,0 +1,2 @@ +expect +tcl diff --git a/dejagnu/key b/dejagnu/key new file mode 100644 index 0000000..a5c33b7 --- /dev/null +++ b/dejagnu/key @@ -0,0 +1 @@ +gpg -v --recv-key CE9D6843AABACC90 diff --git a/dejagnu/time b/dejagnu/time new file mode 100644 index 0000000..745b1d4 --- /dev/null +++ b/dejagnu/time @@ -0,0 +1,4 @@ + +real 0m5.448s +user 0m4.390s +sys 0m0.668s diff --git a/devtools/PKGBUILD b/devtools/PKGBUILD new file mode 100644 index 0000000..f42e940 --- /dev/null +++ b/devtools/PKGBUILD @@ -0,0 +1,54 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=devtools +pkgver=20220207 +pkgrel=02 +pkgdesc='Tools for Arch and Joborun Linux package maintainers' +arch=('any') +url='https://gitlab.archlinux.org/archlinux/devtools' +depends=('bash' 'openssh' 'subversion' 'rsync' 'arch-install-scripts' + 'git' 'breezy' 'mercurial' 'diffutils' 'util-linux' 'awk') +makedepends=('asciidoc') +optdepends=('btrfs-progs: btrfs support') +source=(${url}/uploads/1b4a7f5876d24a4d26370f4f81d8f636/devtools-${pkgver}.tar.gz + ${url}/uploads/070f070114e57b8111f0afe72f2c1585/devtools-${pkgver}.tar.gz.sig + makepkg.conf-set-LTOFLAGS-flto-auto.patch) + +prepare() { + cd ${pkgname}-${pkgver} + # https://gitlab.archlinux.org/archlinux/devtools/-/merge_requests/92 + patch -Np1 -i ../makepkg.conf-set-LTOFLAGS-flto-auto.patch +} + +build() { + cd ${pkgname}-${pkgver} + make BUILDTOOLVER="${pkgver}-${pkgrel}-${arch}" PREFIX=/usr +} + +package() { + cd ${pkgname}-${pkgver} + make PREFIX=/usr DESTDIR="${pkgdir}" install +} + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +validpgpkeys=('487EACC08557AD082088DABA1EB2638FF56C0C53' + '4AA4767BBC9C4B1D18AE28B77F2D434B9741E8AC' + '86CFFCA918CF3AF47147588051E8B148A9999C34' + '8FC15A064950A99DD1BD14DD39E4B877E62EB915' + '8218F88849AAC522E94CF470A5E9288C4FA415FA' + 'B81B051F2D7FC867AAFF35A58DBD63B82072D77A' + 'F3691687D867B81B51CE07D9BBE43771487328A9' + '6645B0A8C7005E78DB1D7864F99FFE0FEAE999BD' + 'E240B57E2C4630BA768E2F26FC1B547C8D8172C8') + +sha256sums=(189716b7041057554d6d7ffed0cd05184f5fb03c67c8d12b74b0771df2dbf828 # devtools-20220207.tar.gz + fbd6618cb9010fc8d44ea1747ca3f840d0b393217ff82999aca28ad83b9a0770 # devtools-20220207.tar.gz.sig + 1bd579ad29943b54c3a60b93369c5185bdac670cd01440a3ca7b43f64145230c) # makepkg.conf-set-LTOFLAGS-flto-auto.patch diff --git a/devtools/PKGBUILD-arch b/devtools/PKGBUILD-arch new file mode 100644 index 0000000..d65479e --- /dev/null +++ b/devtools/PKGBUILD-arch @@ -0,0 +1,50 @@ +# Maintainer: Levente Polyak +# Maintainer: Pierre Schmitz + +pkgname=devtools +pkgver=20220207 +pkgrel=2 +pkgdesc='Tools for Arch Linux package maintainers' +arch=('any') +license=('GPL') +url='https://gitlab.archlinux.org/archlinux/devtools' +depends=('bash' 'openssh' 'subversion' 'rsync' 'arch-install-scripts' + 'git' 'bzr' 'mercurial' 'diffutils' 'util-linux' 'awk') +makedepends=('asciidoc') +optdepends=('btrfs-progs: btrfs support') +source=(${url}/uploads/1b4a7f5876d24a4d26370f4f81d8f636/devtools-${pkgver}.tar.gz + ${url}/uploads/070f070114e57b8111f0afe72f2c1585/devtools-${pkgver}.tar.gz.sig + makepkg.conf-set-LTOFLAGS-flto-auto.patch) +validpgpkeys=('487EACC08557AD082088DABA1EB2638FF56C0C53' + '4AA4767BBC9C4B1D18AE28B77F2D434B9741E8AC' + '86CFFCA918CF3AF47147588051E8B148A9999C34' + '8FC15A064950A99DD1BD14DD39E4B877E62EB915' + '8218F88849AAC522E94CF470A5E9288C4FA415FA' + 'B81B051F2D7FC867AAFF35A58DBD63B82072D77A' + 'F3691687D867B81B51CE07D9BBE43771487328A9' + '6645B0A8C7005E78DB1D7864F99FFE0FEAE999BD' + 'E240B57E2C4630BA768E2F26FC1B547C8D8172C8') +sha256sums=('189716b7041057554d6d7ffed0cd05184f5fb03c67c8d12b74b0771df2dbf828' + 'SKIP' + '1bd579ad29943b54c3a60b93369c5185bdac670cd01440a3ca7b43f64145230c') +b2sums=('334c434868f3769765b8e05cde1b825433322725247d6cb1509993cca980a2f02a55c763b0e4d6bd53988bb4630d86785ccbe636b842e7103c93a43d1036e36f' + 'SKIP' + '4eea243b9152c38d1e82f0f6abd02fdbb69c9640fd7bef528532ccb0b978a1f0e39d0e2c985a9bd2dd26d2d8242ecb6b5b7f2085f0c62f521e65d487b7d1452d') + +prepare() { + cd ${pkgname}-${pkgver} + # https://gitlab.archlinux.org/archlinux/devtools/-/merge_requests/92 + patch -Np1 -i ../makepkg.conf-set-LTOFLAGS-flto-auto.patch +} + +build() { + cd ${pkgname}-${pkgver} + make BUILDTOOLVER="${pkgver}-${pkgrel}-${arch}" PREFIX=/usr +} + +package() { + cd ${pkgname}-${pkgver} + make PREFIX=/usr DESTDIR="${pkgdir}" install +} + +# vim: ts=2 sw=2 et: diff --git a/devtools/clean b/devtools/clean new file mode 100644 index 0000000..7eecfba --- /dev/null +++ b/devtools/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,devtools-*tar.gz*} diff --git a/devtools/deps b/devtools/deps new file mode 100644 index 0000000..984704e --- /dev/null +++ b/devtools/deps @@ -0,0 +1,8 @@ +asciidoc +openssh +subversion +rsync +arch-install-scripts +git +breezy +mercurial diff --git a/devtools/key b/devtools/key new file mode 100644 index 0000000..d350d70 --- /dev/null +++ b/devtools/key @@ -0,0 +1 @@ +gpg -v --recv-key FC1B547C8D8172C8 diff --git a/devtools/makepkg.conf-set-LTOFLAGS-flto-auto.patch b/devtools/makepkg.conf-set-LTOFLAGS-flto-auto.patch new file mode 100644 index 0000000..02c2eda --- /dev/null +++ b/devtools/makepkg.conf-set-LTOFLAGS-flto-auto.patch @@ -0,0 +1,25 @@ +From 00571896cc776222f14d9f67627ba6fb54512bd7 Mon Sep 17 00:00:00 2001 +From: Evangelos Foutras +Date: Sun, 6 Mar 2022 10:59:47 +0200 +Subject: [PATCH] makepkg.conf: set LTOFLAGS="-flto=auto" + +For use with pacman 6.0.1-4 which backports support for LTOFLAGS in +order to speed up builds that use gcc as the compiler. This is less +useful when clang is used, though a hack would be to specify in the +PKGBUILD `LTOFLAGS="-flto=thin"` (outside of any function). +--- + makepkg-x86_64.conf | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/makepkg-x86_64.conf b/makepkg-x86_64.conf +index 19d16f7..7725296 100644 +--- a/makepkg-x86_64.conf ++++ b/makepkg-x86_64.conf +@@ -45,6 +45,7 @@ CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions \ + -fstack-clash-protection -fcf-protection" + CXXFLAGS="$CFLAGS -Wp,-D_GLIBCXX_ASSERTIONS" + LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now" ++LTOFLAGS="-flto=auto" + #RUSTFLAGS="-C opt-level=2" + #-- Make Flags: change this for DistCC/SMP systems + #MAKEFLAGS="-j2" diff --git a/devtools/time b/devtools/time new file mode 100644 index 0000000..c167c63 --- /dev/null +++ b/devtools/time @@ -0,0 +1,5 @@ + +real 0m3.535s +user 0m8.214s +sys 0m0.614s + diff --git a/docbook-xsl/765567_non-recursive_string_subst.patch b/docbook-xsl/765567_non-recursive_string_subst.patch new file mode 100644 index 0000000..ae845ad --- /dev/null +++ b/docbook-xsl/765567_non-recursive_string_subst.patch @@ -0,0 +1,32 @@ +Description: use EXSLT "replace" function when available + A recursive implementation of string.subst is problematic, + long strings with many matches will cause stack overflows. +Author: Peter De Wachter +Bug-Debian: https://bugs.debian.org/750593 + +--- docbook-xsl-1.78.1+dfsg.orig/docbook-xsl/lib/lib.xsl ++++ docbook-xsl-1.78.1+dfsg/docbook-xsl/lib/lib.xsl +@@ -6,7 +6,11 @@ + + This module implements DTD-independent functions + +- ******************************************************************** --> ++ ******************************************************************** --> ++ + + + +@@ -52,6 +56,9 @@ + + + ++ ++ ++ + + + + diff --git a/docbook-xsl/PKGBUILD b/docbook-xsl/PKGBUILD new file mode 100644 index 0000000..6361b24 --- /dev/null +++ b/docbook-xsl/PKGBUILD @@ -0,0 +1,57 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=docbook-xsl +pkgver=1.79.2 +pkgrel=07 +pkgdesc='XML stylesheets for Docbook-xml transformations' +url='https://docbook.org/' +arch=(any) +install=$pkgname.install +source=(https://github.com/docbook/xslt10-stylesheets/releases/download/release%2F$pkgver/docbook-xsl{,-nons}-$pkgver.tar.gz + 765567_non-recursive_string_subst.patch) + +prepare() { + cd $pkgname-$pkgver + patch -Np2 -i ../765567_non-recursive_string_subst.patch + + cd ../$pkgname-nons-$pkgver + patch -Np2 -i ../765567_non-recursive_string_subst.patch +} + +package() { + depends=(libxml2 libxslt docbook-xml) + + local pkgroot ns dir + for ns in -nons ''; do + pkgroot="$pkgdir/usr/share/xml/docbook/xsl-stylesheets-$pkgver$ns" + dir=$pkgname$ns-$pkgver + + install -Dt "$pkgroot" -m644 $dir/VERSION{,.xsl} + + ( + shopt -s nullglob # ignore missing files + for fn in assembly common eclipse epub epub3 fo highlighting html \ + htmlhelp javahelp lib manpages params profiling roundtrip template \ + website xhtml xhtml-1_1 xhtml5 + do + install -Dt "$pkgroot/$fn" -m644 $dir/$fn/*.{xml,xsl,dtd,ent} + done + ) + done + + install -d "$pkgdir/etc/xml" + install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 $dir/COPYING +} + +#---- license gpg-key sha256sums ---- + +license=(custom) + +sha256sums=(966188d7c05fc76eaca115a55893e643dd01a3486f6368733c9ad974fcee7a26 # docbook-xsl-1.79.2.tar.gz + f89425b44e48aad24319a2f0d38e0cb6059fdc7dbaf31787c8346c748175ca8e # docbook-xsl-nons-1.79.2.tar.gz + 193ec26dcb37bdf12037ed4ea98d68bd550500c8e96b719685d76d7096c3f9b3) # 765567_non-recursive_string_subst.patch + diff --git a/docbook-xsl/PKGBUILD-arch b/docbook-xsl/PKGBUILD-arch new file mode 100644 index 0000000..0f0c385 --- /dev/null +++ b/docbook-xsl/PKGBUILD-arch @@ -0,0 +1,54 @@ +# Maintainer: Antonio Rojas +# Contributor: Tom Gundersen +# Contributor: Jan de Groot +# Contributor: Sean Middleditch +# Contributor: Daniel J Griffiths + +pkgname=docbook-xsl +pkgver=1.79.2 +pkgrel=7 +pkgdesc='XML stylesheets for Docbook-xml transformations' +url='https://docbook.org/' +arch=(any) +license=(custom) +install=$pkgname.install +source=(https://github.com/docbook/xslt10-stylesheets/releases/download/release%2F$pkgver/docbook-xsl{,-nons}-$pkgver.tar.gz + 765567_non-recursive_string_subst.patch) +sha256sums=('966188d7c05fc76eaca115a55893e643dd01a3486f6368733c9ad974fcee7a26' + 'f89425b44e48aad24319a2f0d38e0cb6059fdc7dbaf31787c8346c748175ca8e' + '193ec26dcb37bdf12037ed4ea98d68bd550500c8e96b719685d76d7096c3f9b3') + +prepare() { + cd $pkgname-$pkgver + patch -Np2 -i ../765567_non-recursive_string_subst.patch + + cd ../$pkgname-nons-$pkgver + patch -Np2 -i ../765567_non-recursive_string_subst.patch +} + +package() { + depends=(libxml2 libxslt docbook-xml) + + local pkgroot ns dir + for ns in -nons ''; do + pkgroot="$pkgdir/usr/share/xml/docbook/xsl-stylesheets-$pkgver$ns" + dir=$pkgname$ns-$pkgver + + install -Dt "$pkgroot" -m644 $dir/VERSION{,.xsl} + + ( + shopt -s nullglob # ignore missing files + for fn in assembly common eclipse epub epub3 fo highlighting html \ + htmlhelp javahelp lib manpages params profiling roundtrip template \ + website xhtml xhtml-1_1 xhtml5 + do + install -Dt "$pkgroot/$fn" -m644 $dir/$fn/*.{xml,xsl,dtd,ent} + done + ) + done + + install -d "$pkgdir/etc/xml" + install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 $dir/COPYING +} + +# vim:set sw=2 et: diff --git a/docbook-xsl/clean b/docbook-xsl/clean new file mode 100644 index 0000000..ce702f0 --- /dev/null +++ b/docbook-xsl/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,docbook*.tar.gz} diff --git a/docbook-xsl/deps b/docbook-xsl/deps new file mode 100644 index 0000000..09955a9 --- /dev/null +++ b/docbook-xsl/deps @@ -0,0 +1,3 @@ +libxslt +docbook-xml + diff --git a/docbook-xsl/docbook-xsl.install b/docbook-xsl/docbook-xsl.install new file mode 100644 index 0000000..cdbc0c9 --- /dev/null +++ b/docbook-xsl/docbook-xsl.install @@ -0,0 +1,40 @@ +_xmlcatalog() { + xmlcatalog --noout "$@" etc/xml/catalog +} + +post_install() { + [[ -f etc/xml/catalog ]] || _xmlcatalog --create + + local ver x new=${1%-*} + + for ver in $new current; do + for x in rewriteSystem rewriteURI; do + _xmlcatalog --add $x http://cdn.docbook.org/release/xsl/$ver \ + /usr/share/xml/docbook/xsl-stylesheets-$new + + _xmlcatalog --add $x http://cdn.docbook.org/release/xsl-nons/$ver \ + /usr/share/xml/docbook/xsl-stylesheets-$new-nons + + _xmlcatalog --add $x http://docbook.sourceforge.net/release/xsl-ns/$ver \ + /usr/share/xml/docbook/xsl-stylesheets-$new + + _xmlcatalog --add $x http://docbook.sourceforge.net/release/xsl/$ver \ + /usr/share/xml/docbook/xsl-stylesheets-$new-nons + done + done +} + +post_upgrade() { + post_remove $2 + post_install $1 +} + +post_remove() { + local old=${1%-*} + _xmlcatalog --del /usr/share/xml/docbook/xsl-stylesheets-$old + if (( $(vercmp $1 1.79.2-5) >= 0 )); then + _xmlcatalog --del /usr/share/xml/docbook/xsl-stylesheets-$old-nons + fi +} + +# vim:set ft=sh sw=2 et: diff --git a/docbook-xsl/time b/docbook-xsl/time new file mode 100644 index 0000000..c9c3b74 --- /dev/null +++ b/docbook-xsl/time @@ -0,0 +1,4 @@ + +real 0m21.353s +user 0m19.459s +sys 0m3.210s diff --git a/doxygen/PKGBUILD b/doxygen/PKGBUILD new file mode 100644 index 0000000..8f3ce9f --- /dev/null +++ b/doxygen/PKGBUILD @@ -0,0 +1,69 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgbase=doxygen +pkgname=('doxygen' 'doxygen-docs') +pkgver=1.9.3 +pkgrel=01 +pkgdesc='Documentation system for C++, C, Java, IDL and PHP' +url='http://www.doxygen.nl' +arch=('x86_64') +makedepends=('cmake' 'gcc-libs' 'flex' 'qt5-base' 'texlive-core' 'ghostscript' + 'texlive-latexextra' 'graphviz' 'python' 'git') +source=(${pkgbase}-${pkgver}.tar.gz::https://github.com/doxygen/doxygen/archive/Release_${pkgver//./_}.tar.gz) + +prepare() { + cd ${pkgbase}-Release_${pkgver//./_} + # Install the man pages in the right place + sed -i 's:DESTINATION man/man1:DESTINATION "${CMAKE_INSTALL_PREFIX}/share/man/man1":g' \ + doc/CMakeLists.txt +} + +build() { + cd ${pkgbase}-Release_${pkgver//./_} + + cmake -B build \ + -DCMAKE_INSTALL_PREFIX:PATH=/usr \ + -DDOC_INSTALL_DIR:PATH=share/doc/doxygen \ + -DPYTHON_EXECUTABLE:FILE=/usr/bin/python \ + -Dbuild_doc:BOOL=ON \ + -Dbuild_wizard:BOOL=ON + make -C build + make -C build docs -j1 +} + +check() { + cd ${pkgbase}-Release_${pkgver//./_} + make -C build tests +} + +package_doxygen() { + pkgdesc='Documentation system for C++, C, Java, IDL and PHP' + depends=('gcc-libs') + optdepends=('graphviz: for caller/callee graph generation' + 'qt5-base: for doxywizard') + + cd ${pkgbase}-Release_${pkgver//./_} + make -C build DESTDIR="${pkgdir}" install + + rm -rf "${pkgdir}/usr/share/doc" +} + +package_doxygen-docs() { + pkgdesc='Developer documentation for doxygen' + + cd ${pkgbase}-Release_${pkgver//./_} + make -C build DESTDIR="${pkgdir}" install + + rm -rf "${pkgdir}/usr/bin" + rm -rf "${pkgdir}/usr/share/man" +} + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +sha256sums=(c29426222c9361dc33b762cf1c6447c78cfb0b9c213e5dcdbe31a10540c918c5) # doxygen-1.9.3.tar.gz diff --git a/doxygen/PKGBUILD-arch b/doxygen/PKGBUILD-arch new file mode 100644 index 0000000..b45bc44 --- /dev/null +++ b/doxygen/PKGBUILD-arch @@ -0,0 +1,66 @@ +# Maintainer: Levente Polyak +# Maintainer: Dan McGee + +pkgbase=doxygen +pkgname=('doxygen' 'doxygen-docs') +pkgver=1.9.3 +pkgrel=1 +pkgdesc='Documentation system for C++, C, Java, IDL and PHP' +url='http://www.doxygen.nl' +arch=('x86_64') +license=('GPL') +makedepends=('cmake' 'gcc-libs' 'flex' 'qt5-base' 'texlive-core' 'ghostscript' + 'texlive-latexextra' 'graphviz' 'python' 'git') +source=(${pkgbase}-${pkgver}.tar.gz::https://github.com/doxygen/doxygen/archive/Release_${pkgver//./_}.tar.gz) +sha256sums=('c29426222c9361dc33b762cf1c6447c78cfb0b9c213e5dcdbe31a10540c918c5') +sha512sums=('8fcec24d7f92c0d01444cb4b64a39adbe3467b7d75bf191ab667190d4feb1c99ac796fc5b1be6ae5f386321e3d85f28d4cbee05041f048f32ef68ea773d74ff9') +b2sums=('81451704cdf1676db58ad7706c06bc5587f8fdcd8e10b17d0909c1a288c6d92d6080334544b7c7ae88e1fe459511e9f2da8781672e9856c03e4c553f5c1f1e49') + +prepare() { + cd ${pkgbase}-Release_${pkgver//./_} + # Install the man pages in the right place + sed -i 's:DESTINATION man/man1:DESTINATION "${CMAKE_INSTALL_PREFIX}/share/man/man1":g' \ + doc/CMakeLists.txt +} + +build() { + cd ${pkgbase}-Release_${pkgver//./_} + + cmake -B build \ + -DCMAKE_INSTALL_PREFIX:PATH=/usr \ + -DDOC_INSTALL_DIR:PATH=share/doc/doxygen \ + -DPYTHON_EXECUTABLE:FILE=/usr/bin/python \ + -Dbuild_doc:BOOL=ON \ + -Dbuild_wizard:BOOL=ON + make -C build + make -C build docs -j1 +} + +check() { + cd ${pkgbase}-Release_${pkgver//./_} + make -C build tests +} + +package_doxygen() { + pkgdesc='Documentation system for C++, C, Java, IDL and PHP' + depends=('gcc-libs') + optdepends=('graphviz: for caller/callee graph generation' + 'qt5-base: for doxywizard') + + cd ${pkgbase}-Release_${pkgver//./_} + make -C build DESTDIR="${pkgdir}" install + + rm -rf "${pkgdir}/usr/share/doc" +} + +package_doxygen-docs() { + pkgdesc='Developer documentation for doxygen' + + cd ${pkgbase}-Release_${pkgver//./_} + make -C build DESTDIR="${pkgdir}" install + + rm -rf "${pkgdir}/usr/bin" + rm -rf "${pkgdir}/usr/share/man" +} + +# vim: ts=2 sw=2 et: diff --git a/doxygen/clean b/doxygen/clean new file mode 100644 index 0000000..0b7384e --- /dev/null +++ b/doxygen/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,doxygen*.tar.gz} diff --git a/doxygen/deps b/doxygen/deps new file mode 100644 index 0000000..94abb98 --- /dev/null +++ b/doxygen/deps @@ -0,0 +1,9 @@ +cmake +qt5-base +texlive-core +ghostscript +texlive-latexextra +graphviz +python +git +bison diff --git a/doxygen/time b/doxygen/time new file mode 100644 index 0000000..ca00ffd --- /dev/null +++ b/doxygen/time @@ -0,0 +1,5 @@ + +real 6m25.634s +user 19m9.098s +sys 0m36.578s + diff --git a/ell/PKGBUILD b/ell/PKGBUILD new file mode 100644 index 0000000..e66bab3 --- /dev/null +++ b/ell/PKGBUILD @@ -0,0 +1,52 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=ell +pkgver=0.49 +pkgrel=01 +pkgdesc="Embedded Linux library" +arch=(x86_64) +url="https://01.org/ell" +#url="https://git.kernel.org/pub/scm/libs/ell/ell.git/" +depends=('gcc-libs') +checkdepends=('dbus') +options=('!lto') +#options=('!lto' 'debug') # uncomment if you want debug pkg +# https://mirrors.edge.kernel.org/pub/linux/libs/ell/sha256sums.asc +source=(https://mirrors.edge.kernel.org/pub/linux/libs/$pkgname/$pkgname-$pkgver.tar.{xz,sign}) + +build() { + cd "$pkgname-$pkgver" +# export CFLAGS+=" -ffat-lto-objects"; export CXXFLAGS+=" -ffat-lto-objects" + ./configure --prefix=/usr + make +} + +check() { + cd "$pkgname-$pkgver" + +# lto error also with export CFLAGS+=" -ffat-lto-objects" +#/usr/bin/ld: /tmp/ccJicHpn.ltrans0.ltrans.o: in function `__wrap_l_getrandom': +#:(.text+0x3a71): undefined reference to `l_getrandom' +#collect2: error: ld returned 1 exit status +#make[3]: *** [Makefile:1629: unit/test-ecdh] Error 1 + + make -k check +} + +package() { + cd "$pkgname-$pkgver" + make DESTDIR="$pkgdir/" install +} + +#---- license gpg-key sha256sums ---- + +license=('LGPL2.1') + +validpgpkeys=('E932D120BC2AEC444E558F0106CA9F5D1DCF2659') # "Marcel Holtmann " + +sha256sums=(a7ff8ecbc76b187d942dd22b61cb489711400897c790319ffb7e944791687c3f # ell-0.49.tar.xz + eb08d94ca37323c9889dce5cfd848b45a767d9f7194fc6129f094b86222cd635) # ell-0.49.tar.sign diff --git a/ell/PKGBUILD-arch b/ell/PKGBUILD-arch new file mode 100644 index 0000000..2f66b36 --- /dev/null +++ b/ell/PKGBUILD-arch @@ -0,0 +1,43 @@ +# Maintainer: AndyRTR +# Contributor: Jameson Pugh + +pkgname=ell +pkgver=0.49 +pkgrel=1 +pkgdesc="Embedded Linux library" +arch=(x86_64) +url="https://01.org/ell" +#url="https://git.kernel.org/pub/scm/libs/ell/ell.git/" +license=('LGPL2.1') +depends=('gcc-libs') +checkdepends=('dbus') +options=('!lto' 'debug') +# https://mirrors.edge.kernel.org/pub/linux/libs/ell/sha256sums.asc +source=(https://mirrors.edge.kernel.org/pub/linux/libs/$pkgname/$pkgname-$pkgver.tar.{xz,sign}) +sha256sums=('a7ff8ecbc76b187d942dd22b61cb489711400897c790319ffb7e944791687c3f' + 'SKIP') +validpgpkeys=('E932D120BC2AEC444E558F0106CA9F5D1DCF2659') # "Marcel Holtmann " + +build() { + cd "$pkgname-$pkgver" +# export CFLAGS+=" -ffat-lto-objects"; export CXXFLAGS+=" -ffat-lto-objects" + ./configure --prefix=/usr + make +} + +check() { + cd "$pkgname-$pkgver" + +# lto error also with export CFLAGS+=" -ffat-lto-objects" +#/usr/bin/ld: /tmp/ccJicHpn.ltrans0.ltrans.o: in function `__wrap_l_getrandom': +#:(.text+0x3a71): undefined reference to `l_getrandom' +#collect2: error: ld returned 1 exit status +#make[3]: *** [Makefile:1629: unit/test-ecdh] Error 1 + + make -k check +} + +package() { + cd "$pkgname-$pkgver" + make DESTDIR="$pkgdir/" install +} diff --git a/ell/clean b/ell/clean new file mode 100644 index 0000000..a61444e --- /dev/null +++ b/ell/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,ell*tar.*} diff --git a/ell/deps b/ell/deps new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/ell/deps @@ -0,0 +1 @@ + diff --git a/ell/key b/ell/key new file mode 100644 index 0000000..843958a --- /dev/null +++ b/ell/key @@ -0,0 +1 @@ +gpg -v --recv-key 06CA9F5D1DCF2659 diff --git a/ell/time b/ell/time new file mode 100644 index 0000000..ad16b60 --- /dev/null +++ b/ell/time @@ -0,0 +1,5 @@ + +real 0m51.902s +user 0m45.385s +sys 0m37.463s + diff --git a/emacs-git/PKGBUILD b/emacs-git/PKGBUILD new file mode 100644 index 0000000..769f8bb --- /dev/null +++ b/emacs-git/PKGBUILD @@ -0,0 +1,320 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- +# We built this from AUR without systemd dependency and to have minimal functionality to satisfy +# building dependency to emacs. Functionality in really using it as emacs may be less than expected +#----------------------------------------------------------------------------------------------- + +CHECK="NO" # Run tests. May fail, this is developement after all. +CLANG="YES" # Use clang. +GOLD= # Use the gold linker. +LTO="YES" # Enable link-time optimization. Still experimental. +JIT="YES" # Enable native just-in-time compilation. libgccjit is in AUR. + # This compiles only performance critical elisp files. + # + # To compile all elisp on demand, add + # (setq comp-deferred-compilation t) + # to your .emacs file. +AOT= # Precompile all included elisp. It takes a long time. + # You still need to enable on-demand compilation + # for your own packages. +CLI="YES" # CLI only binary. +GPM= # Mouse support in Linux console using gpmd. +NOTKIT= # Use no toolkit widgets. Like B&W Twm (001d sk00l). + # Bitmap fonts only, 1337! +PGTK="YES" # Use native GTK3 build. Supports Wayland, yay! +GTK3="NO" # The new GTK2. Really, why would you? +LUCID= # Use the lucid, a.k.a athena, toolkit. Like XEmacs, sorta. + # + # Read https://wiki.archlinux.org/index.php/X_resources + # https://en.wikipedia.org/wiki/X_resources + # and https://www.emacswiki.org/emacs/XftGnuEmacs + # for some tips on using outline fonts with + # Xft, if you choose no toolkit or Lucid. +XI2="YES" # Use Xinput2 support. + # https://www.x.org/releases/X11R7.7/doc/inputproto/XI2proto.txt +ALSA="NO" # Linux sound support. +NOCAIRO="YES" # Disable here. +XWIDGETS="NO" # Use GTK+ widgets pulled from webkit2gtk. Usable. +DOCS_HTML="NO" # Generate and install html documentation. +DOCS_PDF="NO" # Generate and install pdf documentation. +NOGZ="YES" # Don't compress .el files. + +# +#if [[ $CLI == "YES" ]] ; then +# pkgname="emacs-nox-git" +#else +# pkgname="emacs-git" +#fi +# + +pkgname="emacs-git" +pkgver=29.0.50.154708 +pkgrel=1 +pkgdesc="GNU Emacs. Development master branch." +arch=('x86_64') +url="http://www.gnu.org/software/emacs/" +depends_nox=('gnutls' 'libxml2' 'jansson') +depends=("${depends_nox[@]}" 'harfbuzz') +makedepends=('git') +provides=('emacs' 'emacs-pretest' 'emacs26-git' 'emacs-27-git' 'emacs28-git' 'emacs-seq' 'emacs-nox') +conflicts=('emacs' 'emacs-pretest' 'emacs26-git' 'emacs-27-git' 'emacs28-git' 'emacs-seq' 'emacs-nox') +replaces=('emacs' 'emacs-pretest' 'emacs26-git' 'emacs-27-git' 'emacs28-git' 'emacs-seq' 'emacs-nox') +source=("emacs-git::git://git.savannah.gnu.org/emacs.git") +options=(!strip) +install=emacs-git.install + +if [[ $GOLD == "YES" && ! $CLANG == "YES" ]]; then + export LD=/usr/bin/ld.gold + export CFLAGS+=" -fuse-ld=gold"; + export CXXFLAGS+=" -fuse-ld=gold"; +elif [[ $GOLD == "YES" && $CLANG == "YES" ]]; then + echo ""; + echo "Clang rather uses its own linker."; + echo ""; + exit 1; +fi + +if [[ $CLANG == "YES" ]]; then + export CC="/usr/bin/clang" ; + export CXX="/usr/bin/clang++" ; + export CPP="/usr/bin/clang -E" ; + export LD="/usr/bin/lld" ; + export AR="/usr/bin/llvm-ar" ; + export AS="/usr/bin/llvm-as" ; + export CCFLAGS+=' -fuse-ld=lld' ; + export CXXFLAGS+=' -fuse-ld=lld' ; + makedepends+=( 'clang' 'lld' 'llvm') ; +fi + +if [[ $JIT == "YES" ]]; then + if [[ $CLI == "YES" ]]; then + depends_nox+=( 'libgccjit' ); + else + depends+=( 'libgccjit' ); + fi +fi + +if [[ ! $CLI == "YES" ]]; then + depends+=( 'libxi' ); +fi + +if [[ $CLI == "YES" ]]; then + depends=("${depends_nox[@]}"); +elif [[ $NOTKIT == "YES" ]]; then + depends+=( 'dbus' 'hicolor-icon-theme' 'libxinerama' 'libxrandr' 'lcms2' 'librsvg' 'libxfixes' 'libxi' ); + makedepends+=( 'xorgproto' ); +elif [[ $LUCID == "YES" ]]; then + depends+=( 'dbus' 'hicolor-icon-theme' 'libxinerama' 'libxfixes' 'lcms2' 'librsvg' 'xaw3d' 'libxrandr' 'libxi' ); + makedepends+=( 'xorgproto' ); +elif [[ $GTK3 == "YES" ]]; then + depends+=( 'gtk3' ); + makedepends+=( 'xorgproto' 'libxi' ); +elif [[ $PGTK == "YES" ]]; then + depends+=( 'gtk3' ); + makedepends+=( 'xorgproto' 'libxi' ); +fi + +if [[ ! $NOX == "YES" ]] && [[ ! $CLI == "YES" ]]; then + depends+=( 'libjpeg-turbo' 'giflib' ); +elif [[ $CLI == "YES" ]]; then + depends+=(); +fi + +if [[ $ALSA == "YES" ]]; then + if [[ $CLI == "YES" ]]; then + depends_nox+=( 'alsa-lib' ); + else + depends+=( 'alsa-lib' ); + fi +fi + +if [[ ! $NOCAIRO == "YES" ]] && [[ ! $CLI == "YES" ]] && [[ ! $PGTK == "YES" ]] ; then + depends+=( 'cairo' ); +fi + +if [[ $XWIDGETS == "YES" ]]; then + if [[ $LUCID == "YES" ]] || [[ $NOTKIT == "YES" ]] || [[ $CLI == "YES" ]]; then + echo ""; + echo ""; + echo "Xwidgets support **requires** GTK+3!!!"; + echo ""; + echo ""; + exit 1; + else + depends+=( 'webkit2gtk' ); + fi +fi + +if [[ $GPM == "YES" ]]; then + if [[ $CLI == "YES" ]]; then + depends_nox+=( 'gpm' ); + else + depends+=( 'gpm' ); + fi +fi + +if [[ $DOCS_PDF == "YES" ]]; then + makedepends+=( 'texlive-core' ); +fi + +pkgver() { + cd "$srcdir/emacs-git" + + printf "%s.%s" \ + "$(grep AC_INIT configure.ac | \ + sed -e 's/^.\+\ \([0-9]\+\.[0-9]\+\.[0-9]\+\?\).\+$/\1/')" \ + "$(git rev-list --count HEAD)" +} + +# There is no need to run autogen.sh after first checkout. +# Doing so, breaks incremental compilation. +prepare() { + cd "$srcdir/emacs-git" + [[ -x configure ]] || ( ./autogen.sh git && ./autogen.sh autoconf ) +} + +# +#if [[ $CHECK == "YES" ]]; then +#check() { +# cd "$srcdir/emacs-git" +# make check +#} +#fi +# +build() { + cd "$srcdir/emacs-git" + + local _conf=( + --prefix=/usr + --sysconfdir=/etc + --libexecdir=/usr/lib + --localstatedir=/var + --mandir=/usr/share/man + --with-gameuser=:games + --with-sound=alsa + --with-modules + --without-libotf + --without-m17n-flt +# Beware https://debbugs.gnu.org/cgi/bugreport.cgi?bug=25228 +# dconf and gconf break font settings you set in ~/.emacs. +# If you insist you'll need to read that bug report in *full*. +# Good luck! + --without-gconf + --without-gsettings + ) + +if [[ $CLANG == "YES" ]]; then + _conf+=( '--enable-autodepend' ); +fi + +if [[ $LTO == "YES" ]]; then + _conf+=( '--enable-link-time-optimization' ); +fi + +if [[ $JIT == "YES" ]]; then + _conf+=( '--with-native-compilation' ); +fi + +if [[ $XI2 == "YES" ]]; then + _conf+=( '--with-xinput2' ); +fi + +if [[ $CLI == "YES" ]]; then + _conf+=( '--without-x' '--with-x-toolkit=no' '--without-xft' '--without-lcms2' '--without-rsvg' '--without-jpeg' '--without-gif' '--without-tiff' '--without-png' ); +elif [[ $NOTKIT == "YES" ]]; then + _conf+=( '--with-x-toolkit=no' '--without-toolkit-scroll-bars' '--without-xft' '--without-xaw3d' ); +elif [[ $LUCID == "YES" ]]; then + _conf+=( '--with-x-toolkit=lucid' '--with-xft' '--with-xaw3d' ); +elif [[ $GTK3 == "YES" ]]; then + _conf+=( '--with-x-toolkit=gtk3' '--without-xaw3d' ); +elif [[ $PGTK == "YES" ]]; then + _conf+=( '--with-pgtk' '--without-xaw3d' ); +fi + +if [[ $NOCAIRO == "YES" || $CLI == "YES" || $NOTKIT == "YES" || $LUCID == "YES" ]]; then + _conf+=( '--without-cairo' ); +fi + +if [[ $ALSA == "YES" ]]; then + _conf+=( '--with-sound=alsa' ); +else + _conf+=( '--with-sound=no' ); +fi + +if [[ $XWIDGETS == "YES" ]]; then + _conf+=( '--with-xwidgets' ); +fi + +if [[ $GPM == "YES" ]]; then + true +else + _conf+=( '--without-gpm' ); +fi + +if [[ $NOGZ == "YES" ]]; then + _conf+=( '--without-compress-install' ); +fi + +# ctags/etags may be provided by other packages, e.g, universal-ctags +_conf+=('--program-transform-name=s/\([ec]tags\)/\1.emacs/') + + ./configure "${_conf[@]}" + + # Using "make" instead of "make bootstrap" enables incremental + # compiling. Less time recompiling. Yay! But you may + # need to use bootstrap sometimes to unbreak the build. + # Just add it to the command line. + # + # Please note that incremental compilation implies that you + # are reusing your src directory! + # + if [[ $JIT == "YES" ]] && [[ $AOT == "YES" ]]; then + make NATIVE_FULL_AOT=1 + else + make + fi + + # You may need to run this if 'loaddefs.el' files become corrupt. + #cd "$srcdir/emacs-git/lisp" + #make autoloads + #cd ../ + + # Optional documentation formats. + if [[ $DOCS_HTML == "YES" ]]; then + make html; + fi + if [[ $DOCS_PDF == "YES" ]]; then + make pdf; + fi + +} + +package() { + cd "$srcdir/emacs-git" + + make DESTDIR="$pkgdir/" install + + # Install optional documentation formats + if [[ $DOCS_HTML == "YES" ]]; then make DESTDIR="$pkgdir/" install-html; fi + if [[ $DOCS_PDF == "YES" ]]; then make DESTDIR="$pkgdir/" install-pdf; fi + + # fix user/root permissions on usr/share files + find "$pkgdir"/usr/share/emacs/ | xargs chown root:root + + # fix permssions on /var/games + mkdir -p "$pkgdir"/var/games/emacs + chmod 775 "$pkgdir"/var/games + chmod 775 "$pkgdir"/var/games/emacs + chown -R root:games "$pkgdir"/var/games + +} + +#---- license gpg-key sha256sums ---- + +license=('GPL3') + +sha256sums=(SKIP) diff --git a/emacs-git/PKGBUILD-0 b/emacs-git/PKGBUILD-0 new file mode 100644 index 0000000..bca5079 --- /dev/null +++ b/emacs-git/PKGBUILD-0 @@ -0,0 +1,295 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- +# We built this from AUR without systemd dependency and to have minimal functionality to satisfy +# building dependency to emacs. Functionality in really using it as emacs may be less than expected +#----------------------------------------------------------------------------------------------- + +pkgname=emacs-git +pkgver=29.0.50.153885 +pkgrel=01 +pkgdesc="GNU Emacs. Development master branch." +arch=('x86_64') +url="http://www.gnu.org/software/emacs/" +depends_nox=('gnutls' 'libxml2' 'jansson') +depends=("${depends_nox[@]}" 'harfbuzz') +makedepends=('git') +provides=('emacs' 'emacs-pretest' 'emacs26-git' 'emacs-27-git' 'emacs28-git' 'emacs-seq' 'emacs-nox') +conflicts=('emacs' 'emacs-pretest' 'emacs26-git' 'emacs-27-git' 'emacs28-git' 'emacs-seq' 'emacs-nox') +replaces=('emacs' 'emacs-pretest' 'emacs26-git' 'emacs-27-git' 'emacs28-git' 'emacs-seq' 'emacs-nox') +source=("emacs-git::git://git.savannah.gnu.org/emacs.git") +options=(!strip) +install=emacs-git.install + +#CHECK=YES # Run tests. May fail, this is developement after all. +CHECK=NO # Run tests. May fail, this is developement after all. +CLANG=YES # Use clang. +LTO=YES # Enable link-time optimization. Still experimental. +JIT="YES" # Enable native just-in-time compilation. libgccjit is in AUR. +CLI=YES # CLI only binary. +PGTK="YES" # Use native GTK3 build. Supports Wayland, yay! +XI2="YES" # Use Xinput2 support. +NOGZ="YES" # Don't compress .el files. + +if [[ $GOLD == "YES" && ! $CLANG == "YES" ]]; then + export LD=/usr/bin/ld.gold + export CFLAGS+=" -fuse-ld=gold"; + export CXXFLAGS+=" -fuse-ld=gold"; +elif [[ $GOLD == "YES" && $CLANG == "YES" ]]; then + echo ""; + echo "Clang rather uses its own linker."; + echo ""; + exit 1; +fi + +if [[ $CLANG == "YES" ]]; then + export CC="/usr/bin/clang" ; + export CXX="/usr/bin/clang++" ; + export CPP="/usr/bin/clang -E" ; + export LD="/usr/bin/lld" ; + export AR="/usr/bin/llvm-ar" ; + export AS="/usr/bin/llvm-as" ; + export CCFLAGS+=' -fuse-ld=lld' ; + export CXXFLAGS+=' -fuse-ld=lld' ; + makedepends+=( 'clang' 'lld' 'llvm') ; +fi + +if [[ $JIT == "YES" ]]; then + if [[ $CLI == "YES" ]]; then + depends_nox+=( 'libgccjit' ); + else + depends+=( 'libgccjit' ); + fi +fi + +if [[ ! $CLI == "YES" ]]; then + depends+=( 'libxi' ); +fi + +if [[ $CLI == "YES" ]]; then + depends=("${depends_nox[@]}"); +elif [[ $NOTKIT == "YES" ]]; then + depends+=( 'dbus' 'hicolor-icon-theme' 'libxinerama' 'libxrandr' 'lcms2' 'librsvg' 'libxfixes' 'libxi' ); + makedepends+=( 'xorgproto' ); +elif [[ $LUCID == "YES" ]]; then + depends+=( 'dbus' 'hicolor-icon-theme' 'libxinerama' 'libxfixes' 'lcms2' 'librsvg' 'xaw3d' 'libxrandr' 'libxi' ); + makedepends+=( 'xorgproto' ); +elif [[ $GTK3 == "YES" ]]; then + depends+=( 'gtk3' ); + makedepends+=( 'xorgproto' 'libxi' ); +elif [[ $PGTK == "YES" ]]; then + depends+=( 'gtk3' ); + makedepends+=( 'xorgproto' 'libxi' ); +fi + +if [[ ! $NOX == "YES" ]] && [[ ! $CLI == "YES" ]]; then + depends+=( 'libjpeg-turbo' 'giflib' ); +elif [[ $CLI == "YES" ]]; then + depends+=(); +fi + +if [[ $ALSA == "YES" ]]; then + if [[ $CLI == "YES" ]]; then + depends_nox+=( 'alsa-lib' ); + else + depends+=( 'alsa-lib' ); + fi +fi + +if [[ ! $NOCAIRO == "YES" ]] && [[ ! $CLI == "YES" ]] && [[ ! $PGTK == "YES" ]] ; then + depends+=( 'cairo' ); +fi + +if [[ $XWIDGETS == "YES" ]]; then + if [[ $LUCID == "YES" ]] || [[ $NOTKIT == "YES" ]] || [[ $CLI == "YES" ]]; then + echo ""; + echo ""; + echo "Xwidgets support **requires** GTK+3!!!"; + echo ""; + echo ""; + exit 1; + else + depends+=( 'webkit2gtk' ); + fi +fi + +if [[ $GPM == "YES" ]]; then + if [[ $CLI == "YES" ]]; then + depends_nox+=( 'gpm' ); + else + depends+=( 'gpm' ); + fi +fi + +if [[ $DOCS_PDF == "YES" ]]; then + makedepends+=( 'texlive-core' ); +fi +################################################################################ + +################################################################################ +pkgver() { + cd "$srcdir/emacs-git" + + printf "%s.%s" \ + "$(grep AC_INIT configure.ac | \ + sed -e 's/^.\+\ \([0-9]\+\.[0-9]\+\.[0-9]\+\?\).\+$/\1/')" \ + "$(git rev-list --count HEAD)" +} + +# There is no need to run autogen.sh after first checkout. +# Doing so, breaks incremental compilation. +prepare() { + cd "$srcdir/emacs-git" + [[ -x configure ]] || ( ./autogen.sh git && ./autogen.sh autoconf ) +} + +#if [[ $CHECK == "YES" ]]; then +#check() { +# cd "$srcdir/emacs-git" +# make check +#} +#fi + +build() { + cd "$srcdir/emacs-git" + + local _conf=( + --prefix=/usr + --sysconfdir=/etc + --libexecdir=/usr/lib + --localstatedir=/var + --mandir=/usr/share/man + --with-gameuser=:games + --with-sound=alsa + --with-modules + --without-libotf + --without-m17n-flt +# Beware https://debbugs.gnu.org/cgi/bugreport.cgi?bug=25228 +# dconf and gconf break font settings you set in ~/.emacs. +# If you insist you'll need to read that bug report in *full*. +# Good luck! + --without-gconf + --without-gsettings + ) + +################################################################################ + +################################################################################ + +if [[ $CLANG == "YES" ]]; then + _conf+=( '--enable-autodepend' ); +fi + +if [[ $LTO == "YES" ]]; then + _conf+=( '--enable-link-time-optimization' ); +fi + +if [[ $JIT == "YES" ]]; then + _conf+=( '--with-native-compilation' ); +fi + +if [[ $XI2 == "YES" ]]; then + _conf+=( '--with-xinput2' ); +fi + +if [[ $CLI == "YES" ]]; then + _conf+=( '--without-x' '--with-x-toolkit=no' '--without-xft' '--without-lcms2' '--without-rsvg' '--without-jpeg' '--without-gif' '--without-tiff' '--without-png' ); +elif [[ $NOTKIT == "YES" ]]; then + _conf+=( '--with-x-toolkit=no' '--without-toolkit-scroll-bars' '--without-xft' '--without-xaw3d' ); +elif [[ $LUCID == "YES" ]]; then + _conf+=( '--with-x-toolkit=lucid' '--with-xft' '--with-xaw3d' ); +elif [[ $GTK3 == "YES" ]]; then + _conf+=( '--with-x-toolkit=gtk3' '--without-xaw3d' ); +elif [[ $PGTK == "YES" ]]; then + _conf+=( '--with-pgtk' '--without-xaw3d' ); +fi + +if [[ $NOCAIRO == "YES" || $CLI == "YES" || $NOTKIT == "YES" || $LUCID == "YES" ]]; then + _conf+=( '--without-cairo' ); +fi + +if [[ $ALSA == "YES" ]]; then + _conf+=( '--with-sound=alsa' ); +else + _conf+=( '--with-sound=no' ); +fi + +if [[ $XWIDGETS == "YES" ]]; then + _conf+=( '--with-xwidgets' ); +fi + +if [[ $GPM == "YES" ]]; then + true +else + _conf+=( '--without-gpm' ); +fi + +if [[ $NOGZ == "YES" ]]; then + _conf+=( '--without-compress-install' ); +fi + +# ctags/etags may be provided by other packages, e.g, universal-ctags +_conf+=('--program-transform-name=s/\([ec]tags\)/\1.emacs/') + +################################################################################ + +################################################################################ + + ./configure "${_conf[@]}" + + # Using "make" instead of "make bootstrap" enables incremental + # compiling. Less time recompiling. Yay! But you may + # need to use bootstrap sometimes to unbreak the build. + # Just add it to the command line. + # + # Please note that incremental compilation implies that you + # are reusing your src directory! + # + if [[ $JIT == "YES" ]] && [[ $AOT == "YES" ]]; then + make NATIVE_FULL_AOT=1 + else + make + fi + + # You may need to run this if 'loaddefs.el' files become corrupt. + #cd "$srcdir/emacs-git/lisp" + #make autoloads + #cd ../ + + # Optional documentation formats. + if [[ $DOCS_HTML == "YES" ]]; then + make html; + fi + if [[ $DOCS_PDF == "YES" ]]; then + make pdf; + fi + +} + +package() { + cd "$srcdir/emacs-git" + + make DESTDIR="$pkgdir/" install + + # Install optional documentation formats + if [[ $DOCS_HTML == "YES" ]]; then make DESTDIR="$pkgdir/" install-html; fi + if [[ $DOCS_PDF == "YES" ]]; then make DESTDIR="$pkgdir/" install-pdf; fi + + # fix user/root permissions on usr/share files + find "$pkgdir"/usr/share/emacs/ | xargs chown root:root + + # fix permssions on /var/games + mkdir -p "$pkgdir"/var/games/emacs + chmod 775 "$pkgdir"/var/games + chmod 775 "$pkgdir"/var/games/emacs + chown -R root:games "$pkgdir"/var/games + +} + +#---- license gpg-key sha256sums ---- + +license=('GPL3') + +sha256sums=(SKIP) diff --git a/emacs-git/PKGBUILD-aur b/emacs-git/PKGBUILD-aur new file mode 100644 index 0000000..457346b --- /dev/null +++ b/emacs-git/PKGBUILD-aur @@ -0,0 +1,357 @@ +# Maintainer: Pedro A. López-Valencia + +################################################################################ +# CAVEAT LECTOR: This PKGBUILD is highly opinionated. I give you +# enough rope to hang yourself, but by default it +# only enables the features I use. +# +# Everyone else: do not update blindly this PKGBUILD. At least +# make sure to compare and understand the changes. +# +################################################################################ + +################################################################################ +# Assign "YES" to the variable you want enabled; empty or any other value +# for NO. +# +# Where you read experimental, replace with foobar. +# ================================================= +# +################################################################################ +CHECK= # Run tests. May fail, this is developement after all. + +CLANG= # Use clang. + +GOLD= # Use the gold linker. + +LTO= # Enable link-time optimization. Still experimental. + +JIT="YES" # Enable native just-in-time compilation. libgccjit is in AUR. + # This compiles only performance critical elisp files. + # + # To compile all elisp on demand, add + # (setq comp-deferred-compilation t) + # to your .emacs file. + +AOT= # Precompile all included elisp. It takes a long time. + # You still need to enable on-demand compilation + # for your own packages. + +CLI= # CLI only binary. + +GPM= # Mouse support in Linux console using gpmd. + +NOTKIT= # Use no toolkit widgets. Like B&W Twm (001d sk00l). + # Bitmap fonts only, 1337! + +PGTK="YES" # Use native GTK3 build. Supports Wayland, yay! + +GTK3= # The new GTK2. Really, why would you? + +LUCID= # Use the lucid, a.k.a athena, toolkit. Like XEmacs, sorta. + # + # Read https://wiki.archlinux.org/index.php/X_resources + # https://en.wikipedia.org/wiki/X_resources + # and https://www.emacswiki.org/emacs/XftGnuEmacs + # for some tips on using outline fonts with + # Xft, if you choose no toolkit or Lucid. + +XI2="YES" # Use Xinput2 support. + # https://www.x.org/releases/X11R7.7/doc/inputproto/XI2proto.txt + +ALSA= # Linux sound support. + +NOCAIRO= # Disable here. + +XWIDGETS= # Use GTK+ widgets pulled from webkit2gtk. Usable. + +DOCS_HTML= # Generate and install html documentation. + +DOCS_PDF= # Generate and install pdf documentation. + +NOGZ="YES" # Don't compress .el files. +################################################################################ + +################################################################################ +if [[ $CLI == "YES" ]] ; then + pkgname="emacs-nox-git" +else + pkgname="emacs-git" +fi +pkgver=29.0.50.153441 +pkgrel=1 +pkgdesc="GNU Emacs. Development master branch." +arch=('x86_64') +url="http://www.gnu.org/software/emacs/" +license=('GPL3') +depends_nox=('gnutls' 'libxml2' 'jansson') +depends=("${depends_nox[@]}" 'harfbuzz') +makedepends=('git') +provides=('emacs' 'emacs-pretest' 'emacs26-git' 'emacs-27-git' 'emacs28-git' 'emacs-seq' 'emacs-nox') +conflicts=('emacs' 'emacs-pretest' 'emacs26-git' 'emacs-27-git' 'emacs28-git' 'emacs-seq' 'emacs-nox') +replaces=('emacs' 'emacs-pretest' 'emacs26-git' 'emacs-27-git' 'emacs28-git' 'emacs-seq' 'emacs-nox') +source=("emacs-git::git://git.savannah.gnu.org/emacs.git") +options=(!strip) +install=emacs-git.install +b2sums=('SKIP') +################################################################################ + +################################################################################ + +if [[ $GOLD == "YES" && ! $CLANG == "YES" ]]; then + export LD=/usr/bin/ld.gold + export CFLAGS+=" -fuse-ld=gold"; + export CXXFLAGS+=" -fuse-ld=gold"; +elif [[ $GOLD == "YES" && $CLANG == "YES" ]]; then + echo ""; + echo "Clang rather uses its own linker."; + echo ""; + exit 1; +fi + +if [[ $CLANG == "YES" ]]; then + export CC="/usr/bin/clang" ; + export CXX="/usr/bin/clang++" ; + export CPP="/usr/bin/clang -E" ; + export LD="/usr/bin/lld" ; + export AR="/usr/bin/llvm-ar" ; + export AS="/usr/bin/llvm-as" ; + export CCFLAGS+=' -fuse-ld=lld' ; + export CXXFLAGS+=' -fuse-ld=lld' ; + makedepends+=( 'clang' 'lld' 'llvm') ; +fi + +if [[ $JIT == "YES" ]]; then + if [[ $CLI == "YES" ]]; then + depends_nox+=( 'libgccjit' ); + else + depends+=( 'libgccjit' ); + fi +fi + +if [[ ! $CLI == "YES" ]]; then + depends+=( 'libxi' ); +fi + +if [[ $CLI == "YES" ]]; then + depends=("${depends_nox[@]}"); +elif [[ $NOTKIT == "YES" ]]; then + depends+=( 'dbus' 'hicolor-icon-theme' 'libxinerama' 'libxrandr' 'lcms2' 'librsvg' 'libxfixes' 'libxi' ); + makedepends+=( 'xorgproto' ); +elif [[ $LUCID == "YES" ]]; then + depends+=( 'dbus' 'hicolor-icon-theme' 'libxinerama' 'libxfixes' 'lcms2' 'librsvg' 'xaw3d' 'libxrandr' 'libxi' ); + makedepends+=( 'xorgproto' ); +elif [[ $GTK3 == "YES" ]]; then + depends+=( 'gtk3' ); + makedepends+=( 'xorgproto' 'libxi' ); +elif [[ $PGTK == "YES" ]]; then + depends+=( 'gtk3' ); + makedepends+=( 'xorgproto' 'libxi' ); +fi + +if [[ ! $NOX == "YES" ]] && [[ ! $CLI == "YES" ]]; then + depends+=( 'libjpeg-turbo' 'giflib' ); +elif [[ $CLI == "YES" ]]; then + depends+=(); +fi + +if [[ $ALSA == "YES" ]]; then + if [[ $CLI == "YES" ]]; then + depends_nox+=( 'alsa-lib' ); + else + depends+=( 'alsa-lib' ); + fi +fi + +if [[ ! $NOCAIRO == "YES" ]] && [[ ! $CLI == "YES" ]] && [[ ! $PGTK == "YES" ]] ; then + depends+=( 'cairo' ); +fi + +if [[ $XWIDGETS == "YES" ]]; then + if [[ $LUCID == "YES" ]] || [[ $NOTKIT == "YES" ]] || [[ $CLI == "YES" ]]; then + echo ""; + echo ""; + echo "Xwidgets support **requires** GTK+3!!!"; + echo ""; + echo ""; + exit 1; + else + depends+=( 'webkit2gtk' ); + fi +fi + +if [[ $GPM == "YES" ]]; then + if [[ $CLI == "YES" ]]; then + depends_nox+=( 'gpm' ); + else + depends+=( 'gpm' ); + fi +fi + +if [[ $DOCS_PDF == "YES" ]]; then + makedepends+=( 'texlive-core' ); +fi +################################################################################ + +################################################################################ +pkgver() { + cd "$srcdir/emacs-git" + + printf "%s.%s" \ + "$(grep AC_INIT configure.ac | \ + sed -e 's/^.\+\ \([0-9]\+\.[0-9]\+\.[0-9]\+\?\).\+$/\1/')" \ + "$(git rev-list --count HEAD)" +} + +# There is no need to run autogen.sh after first checkout. +# Doing so, breaks incremental compilation. +prepare() { + cd "$srcdir/emacs-git" + [[ -x configure ]] || ( ./autogen.sh git && ./autogen.sh autoconf ) +} + +if [[ $CHECK == "YES" ]]; then +check() { + cd "$srcdir/emacs-git" + make check +} +fi + +build() { + cd "$srcdir/emacs-git" + + local _conf=( + --prefix=/usr + --sysconfdir=/etc + --libexecdir=/usr/lib + --localstatedir=/var + --mandir=/usr/share/man + --with-gameuser=:games + --with-sound=alsa + --with-modules + --without-libotf + --without-m17n-flt +# Beware https://debbugs.gnu.org/cgi/bugreport.cgi?bug=25228 +# dconf and gconf break font settings you set in ~/.emacs. +# If you insist you'll need to read that bug report in *full*. +# Good luck! + --without-gconf + --without-gsettings + ) + +################################################################################ + +################################################################################ + +if [[ $CLANG == "YES" ]]; then + _conf+=( '--enable-autodepend' ); +fi + +if [[ $LTO == "YES" ]]; then + _conf+=( '--enable-link-time-optimization' ); +fi + +if [[ $JIT == "YES" ]]; then + _conf+=( '--with-native-compilation' ); +fi + +if [[ $XI2 == "YES" ]]; then + _conf+=( '--with-xinput2' ); +fi + +if [[ $CLI == "YES" ]]; then + _conf+=( '--without-x' '--with-x-toolkit=no' '--without-xft' '--without-lcms2' '--without-rsvg' '--without-jpeg' '--without-gif' '--without-tiff' '--without-png' ); +elif [[ $NOTKIT == "YES" ]]; then + _conf+=( '--with-x-toolkit=no' '--without-toolkit-scroll-bars' '--without-xft' '--without-xaw3d' ); +elif [[ $LUCID == "YES" ]]; then + _conf+=( '--with-x-toolkit=lucid' '--with-xft' '--with-xaw3d' ); +elif [[ $GTK3 == "YES" ]]; then + _conf+=( '--with-x-toolkit=gtk3' '--without-xaw3d' ); +elif [[ $PGTK == "YES" ]]; then + _conf+=( '--with-pgtk' '--without-xaw3d' ); +fi + +if [[ $NOCAIRO == "YES" || $CLI == "YES" || $NOTKIT == "YES" || $LUCID == "YES" ]]; then + _conf+=( '--without-cairo' ); +fi + +if [[ $ALSA == "YES" ]]; then + _conf+=( '--with-sound=alsa' ); +else + _conf+=( '--with-sound=no' ); +fi + +if [[ $XWIDGETS == "YES" ]]; then + _conf+=( '--with-xwidgets' ); +fi + +if [[ $GPM == "YES" ]]; then + true +else + _conf+=( '--without-gpm' ); +fi + +if [[ $NOGZ == "YES" ]]; then + _conf+=( '--without-compress-install' ); +fi + +# ctags/etags may be provided by other packages, e.g, universal-ctags +_conf+=('--program-transform-name=s/\([ec]tags\)/\1.emacs/') + +################################################################################ + +################################################################################ + + ./configure "${_conf[@]}" + + # Using "make" instead of "make bootstrap" enables incremental + # compiling. Less time recompiling. Yay! But you may + # need to use bootstrap sometimes to unbreak the build. + # Just add it to the command line. + # + # Please note that incremental compilation implies that you + # are reusing your src directory! + # + if [[ $JIT == "YES" ]] && [[ $AOT == "YES" ]]; then + make NATIVE_FULL_AOT=1 + else + make + fi + + # You may need to run this if 'loaddefs.el' files become corrupt. + #cd "$srcdir/emacs-git/lisp" + #make autoloads + #cd ../ + + # Optional documentation formats. + if [[ $DOCS_HTML == "YES" ]]; then + make html; + fi + if [[ $DOCS_PDF == "YES" ]]; then + make pdf; + fi + +} + +package() { + cd "$srcdir/emacs-git" + + make DESTDIR="$pkgdir/" install + + # Install optional documentation formats + if [[ $DOCS_HTML == "YES" ]]; then make DESTDIR="$pkgdir/" install-html; fi + if [[ $DOCS_PDF == "YES" ]]; then make DESTDIR="$pkgdir/" install-pdf; fi + + # fix user/root permissions on usr/share files + find "$pkgdir"/usr/share/emacs/ | xargs chown root:root + + # fix permssions on /var/games + mkdir -p "$pkgdir"/var/games/emacs + chmod 775 "$pkgdir"/var/games + chmod 775 "$pkgdir"/var/games/emacs + chown -R root:games "$pkgdir"/var/games + +} + +################################################################################ +# vim:set ft=bash ts=2 sw=2 et: diff --git a/emacs-git/clean b/emacs-git/clean new file mode 100644 index 0000000..4dbe1b7 --- /dev/null +++ b/emacs-git/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,emacs-git} diff --git a/emacs-git/deps b/emacs-git/deps new file mode 100644 index 0000000..147fbe9 --- /dev/null +++ b/emacs-git/deps @@ -0,0 +1,12 @@ +jansson +harfbuzz +libxi +libjpeg-turbo +giflib +cairo +git +libgccjit +clang +lld +llvm +autoconf diff --git a/emacs-git/emacs-git.install b/emacs-git/emacs-git.install new file mode 100644 index 0000000..61ca576 --- /dev/null +++ b/emacs-git/emacs-git.install @@ -0,0 +1,8 @@ +post_install() { + # fix user/root permissions on usr/share files + find "$pkgdir"/usr/share/emacs/ | xargs chown root:root + # make sure directory has the correct owner and group + chown -R root:games "$pkgdir"/var/games +} + +# vim:sw=4:ts=4:et:ft=bash diff --git a/emacs-git/time b/emacs-git/time new file mode 100644 index 0000000..fda849a --- /dev/null +++ b/emacs-git/time @@ -0,0 +1,5 @@ + +real 16m15.206s +user 45m23.756s +sys 1m9.440s + diff --git a/enchant-pure/PKGBUILD b/enchant-pure/PKGBUILD new file mode 100644 index 0000000..31b32f0 --- /dev/null +++ b/enchant-pure/PKGBUILD @@ -0,0 +1,46 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=enchant-pure +_pkgname=enchant +pkgver=2.3.2 +pkgrel=01 +pkgdesc="A wrapper library for pure and generic spell checking for all languages, supporting Aspell and Myspell/Hunspell backend engines" +url="https://github.com/AbiWord/enchant" +arch=('x86_64') +depends=('aspell>=0.50.0' 'glib2' 'hunspell') +provides=("${_pkgname}") +conflicts=("${_pkgname}") +source=("https://github.com/AbiWord/enchant/releases/download/v${pkgver}/${_pkgname}-${pkgver}.tar.gz") + +build() { + cd "${srcdir}/${_pkgname}-${pkgver}" + ./configure --prefix=/usr --enable-static=no --with-aspell=yes --with-hunspell=yes --with-voikko=no --with-hspell=no --with-zemberek=no --with-applespell=no + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +package() { + cd "${srcdir}/${_pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + # installing some symlinks for compatibility with enchant-1 + ln -s "enchant-2" "${pkgdir}/usr/bin/enchant" + ln -s "enchant-lsmod-2" "${pkgdir}/usr/bin/enchant-lsmod" + ln -s "enchant-2" "${pkgdir}/usr/include/enchant" + ln -s "enchant-2" "${pkgdir}/usr/lib/enchant" + ln -s "libenchant-2.so.${pkgver}" "${pkgdir}/usr/lib/libenchant.so.${pkgver}" + ln -s "libenchant-2.so.${pkgver}" "${pkgdir}/usr/lib/libenchant.so.2" + ln -s "libenchant-2.so.${pkgver}" "${pkgdir}/usr/lib/libenchant.so" +} + + +#---- license gpg-key sha256sums ---- + +license=('LGPL') + +sha512sums=('886635bb55c5f0c774445e4a0f14d39e2d08eeb964257037062c2e97c2cf3348be8c631ff5e7a13144936127761964bdc60ff1e0dd6f63b292a655626f91ef62') + +sha256sums=(ce9ba47fd4d34031bd69445598a698a6611602b2b0e91d705e91a6f5099ead6e) # enchant-2.3.2.tar.gz diff --git a/enchant-pure/PKGBUILD-aur b/enchant-pure/PKGBUILD-aur new file mode 100644 index 0000000..cfd8cba --- /dev/null +++ b/enchant-pure/PKGBUILD-aur @@ -0,0 +1,40 @@ +# Maintainer: Behnam Momeni + +pkgname=enchant-pure + +_pkgname=enchant +pkgver=2.3.2 +pkgrel=1 + +pkgdesc="A wrapper library for pure and generic spell checking for all languages, supporting Aspell and Myspell/Hunspell backend engines" +url="https://github.com/AbiWord/enchant" + +arch=('x86_64') +license=('LGPL') + +depends=('aspell>=0.50.0' 'glib2' 'hunspell') +provides=("${_pkgname}") +conflicts=("${_pkgname}") +source=("https://github.com/AbiWord/enchant/releases/download/v${pkgver}/${_pkgname}-${pkgver}.tar.gz") +sha512sums=('886635bb55c5f0c774445e4a0f14d39e2d08eeb964257037062c2e97c2cf3348be8c631ff5e7a13144936127761964bdc60ff1e0dd6f63b292a655626f91ef62') + +build() { + cd "${srcdir}/${_pkgname}-${pkgver}" + ./configure --prefix=/usr --enable-static=no --with-aspell=yes --with-hunspell=yes --with-voikko=no --with-hspell=no --with-zemberek=no --with-applespell=no + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +package() { + cd "${srcdir}/${_pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + # installing some symlinks for compatibility with enchant-1 + ln -s "enchant-2" "${pkgdir}/usr/bin/enchant" + ln -s "enchant-lsmod-2" "${pkgdir}/usr/bin/enchant-lsmod" + ln -s "enchant-2" "${pkgdir}/usr/include/enchant" + ln -s "enchant-2" "${pkgdir}/usr/lib/enchant" + ln -s "libenchant-2.so.${pkgver}" "${pkgdir}/usr/lib/libenchant.so.${pkgver}" + ln -s "libenchant-2.so.${pkgver}" "${pkgdir}/usr/lib/libenchant.so.2" + ln -s "libenchant-2.so.${pkgver}" "${pkgdir}/usr/lib/libenchant.so" +} + diff --git a/enchant-pure/clean b/enchant-pure/clean new file mode 100644 index 0000000..bff66d6 --- /dev/null +++ b/enchant-pure/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,*tar.gz*} diff --git a/enchant-pure/deps b/enchant-pure/deps new file mode 100644 index 0000000..63cb3c0 --- /dev/null +++ b/enchant-pure/deps @@ -0,0 +1 @@ +aspell hunspell diff --git a/enchant-pure/time b/enchant-pure/time new file mode 100644 index 0000000..4066146 --- /dev/null +++ b/enchant-pure/time @@ -0,0 +1,3 @@ +real 0m22.712s +user 0m22.877s +sys 0m3.104s diff --git a/espeak/PKGBUILD b/espeak/PKGBUILD new file mode 100644 index 0000000..ab8eb68 --- /dev/null +++ b/espeak/PKGBUILD @@ -0,0 +1,36 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=espeak +pkgver=1.48.04 +pkgrel=04 +epoch=1 +pkgdesc='Text to Speech engine for English, with support for other languages' +arch=(x86_64) +url='http://espeak.sourceforge.net/' +depends=('portaudio' 'libpulse') +options=('!emptydirs') +source=("https://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver-source.zip") + +build() { + cd "$pkgname-$pkgver-source/src" + + cp portaudio19.h portaudio.h + make CXXFLAGS="$CXXFLAGS -w -std=c++98" AUDIO=pulseaudio +} + +package() { + cd "$pkgname-$pkgver-source/src" + + make DESTDIR="$pkgdir" install + chmod 644 "$pkgdir/usr/lib/libespeak.a" +} + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +sha256sums=(bf9a17673adffcc28ff7ea18764f06136547e97bbd9edf2ec612f09b207f0659) # espeak-1.48.04-source.zip diff --git a/espeak/PKGBUILD-aur b/espeak/PKGBUILD-aur new file mode 100644 index 0000000..e968987 --- /dev/null +++ b/espeak/PKGBUILD-aur @@ -0,0 +1,33 @@ +# Maintainer: SanskritFritz (gmail) +# Contributor: Alexander F Rødseth +# Contributor: Mateusz Herych +# Contributor: Christoph Siegenthaler + +pkgname=espeak +pkgver=1.48.04 +pkgrel=4 +epoch=1 +pkgdesc='Text to Speech engine for English, with support for other languages' +arch=('i686' 'x86_64') +url='http://espeak.sourceforge.net/' +license=('GPL') +depends=('portaudio' 'libpulse') +options=('!emptydirs') +source=("https://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver-source.zip") +sha256sums=('bf9a17673adffcc28ff7ea18764f06136547e97bbd9edf2ec612f09b207f0659') + +build() { + cd "$pkgname-$pkgver-source/src" + + cp portaudio19.h portaudio.h + make CXXFLAGS="$CXXFLAGS -w -std=c++98" AUDIO=pulseaudio +} + +package() { + cd "$pkgname-$pkgver-source/src" + + make DESTDIR="$pkgdir" install + chmod 644 "$pkgdir/usr/lib/libespeak.a" +} + +# vim:set ts=2 sw=2 et: diff --git a/espeak/clean b/espeak/clean new file mode 100644 index 0000000..f1305ba --- /dev/null +++ b/espeak/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,esp*.zip} diff --git a/espeak/deps b/espeak/deps new file mode 100644 index 0000000..849e918 --- /dev/null +++ b/espeak/deps @@ -0,0 +1,2 @@ +portaudio libpulse +jack2 diff --git a/espeak/time b/espeak/time new file mode 100644 index 0000000..918b7e6 --- /dev/null +++ b/espeak/time @@ -0,0 +1,3 @@ +real 0m11.532s +user 0m28.690s +sys 0m1.247s diff --git a/expac/PKGBUILD b/expac/PKGBUILD new file mode 100644 index 0000000..7b18351 --- /dev/null +++ b/expac/PKGBUILD @@ -0,0 +1,34 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=expac +pkgver=10 +pkgrel=05 +pkgdesc='alpm data (pacman database) extraction utility' +arch=(x86_64) +url="https://github.com/falconindy/$pkgname" +depends=(pacman) +makedepends=(git + meson + perl) +source=("git+$url.git?signed&tag=$pkgver") + +build() { + arch-meson "$pkgname" build + meson compile -C build +} + +package() { + meson install -C build --destdir "$pkgdir" +} + +#---- license gpg-key sha256sums ---- + +license=(GPL) + +validpgpkeys=('487EACC08557AD082088DABA1EB2638FF56C0C53') # Dave Reisner + +sha256sums=(SKIP) diff --git a/expac/PKGBUILD-arch b/expac/PKGBUILD-arch new file mode 100644 index 0000000..0dc66a0 --- /dev/null +++ b/expac/PKGBUILD-arch @@ -0,0 +1,27 @@ +# Maintainer: Caleb Maclennan +# Maintainer: Morgan +# Contributor: Dave Reisner + +pkgname=expac +pkgver=10 +pkgrel=5 +pkgdesc='alpm data (pacman database) extraction utility' +arch=(x86_64) +url="https://github.com/falconindy/$pkgname" +license=(GPL) +depends=(pacman) +makedepends=(git + meson + perl) +source=("git+$url.git?signed&tag=$pkgver") +validpgpkeys=('487EACC08557AD082088DABA1EB2638FF56C0C53') # Dave Reisner +md5sums=('SKIP') + +build() { + arch-meson "$pkgname" build + meson compile -C build +} + +package() { + meson install -C build --destdir "$pkgdir" +} diff --git a/expac/clean b/expac/clean new file mode 100644 index 0000000..e3bd81e --- /dev/null +++ b/expac/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,expac} diff --git a/expac/deps b/expac/deps new file mode 100644 index 0000000..5da639b --- /dev/null +++ b/expac/deps @@ -0,0 +1,2 @@ +meson +git diff --git a/expac/key b/expac/key new file mode 100644 index 0000000..27428ff --- /dev/null +++ b/expac/key @@ -0,0 +1 @@ +gpg -v --recv-key 1EB2638FF56C0C53 diff --git a/expac/time b/expac/time new file mode 100644 index 0000000..f0e1ef4 --- /dev/null +++ b/expac/time @@ -0,0 +1,5 @@ + +real 0m4.557s +user 0m2.681s +sys 0m0.346s + diff --git a/feh/0001-libmagic.patch b/feh/0001-libmagic.patch new file mode 100644 index 0000000..b7d9e3c --- /dev/null +++ b/feh/0001-libmagic.patch @@ -0,0 +1,470 @@ +From 4affafe91579799efd83f4c8e05c291eeb684c9c Mon Sep 17 00:00:00 2001 +From: Christian Hesse +Date: Wed, 5 Jan 2022 14:35:15 +0100 +Subject: [PATCH 1/3] use libmagic to detect valid file formats + +Writing our own magic bytes detection is prone to errors and an +everlasting catch-up-game. Let's use libmagic to get things right, +this is less code and makes things more reliable. + +Building without libmagic is still possible. That will make the code +act like specifying FEH_SKIP_MAGIC=1, effectively passing everything +to imlib2. +--- + README.md | 2 + + config.mk | 6 +++ + src/imlib.c | 134 ++++++++++++++++++++-------------------------------- + 3 files changed, 59 insertions(+), 83 deletions(-) + +diff --git a/README.md b/README.md +index 4401af2..c4cb7ef 100644 +--- a/README.md ++++ b/README.md +@@ -22,6 +22,7 @@ Dependencies + + * Imlib2 + * libcurl (disable with make curl=0) ++ * libmagic (disable with make magic=0) + * libpng + * libX11 + * libXinerama (disable with make xinerama=0) +@@ -91,6 +92,7 @@ indicates that the corresponding feature is enabled by default. + | help | 0 | include help text (refers to the manpage otherwise) | + | inotify | 0 | enable inotify, needed for `--auto-reload` | + | stat64 | 0 | Support CIFS shares from 64bit hosts on 32bit machines | ++| magic | 1 | Build against libmagic to filter unsupported file formats | + | mkstemps | 1 | Whether your libc provides `mkstemps()`. If set to 0, feh will be unable to load gif images via libcurl | + | verscmp | 1 | Whether your libc provides `strvercmp()`. If set to 0, feh will use an internal implementation. | + | xinerama | 1 | Support Xinerama/XRandR multiscreen setups | +diff --git a/config.mk b/config.mk +index 2d63f72..910eac7 100644 +--- a/config.mk ++++ b/config.mk +@@ -6,6 +6,7 @@ curl ?= 1 + debug ?= 0 + exif ?= 0 + help ?= 0 ++magic ?= 1 + mkstemps ?= 1 + verscmp ?= 1 + xinerama ?= 1 +@@ -68,6 +69,11 @@ ifeq (${mkstemps},1) + CFLAGS += -DHAVE_MKSTEMPS + endif + ++ifeq (${magic},1) ++ CFLAGS += -DHAVE_LIBMAGIC ++ LDLIBS += -lmagic ++endif ++ + ifeq (${verscmp},1) + CFLAGS += -DHAVE_STRVERSCMP + endif +diff --git a/src/imlib.c b/src/imlib.c +index 6d709a2..70d459f 100644 +--- a/src/imlib.c ++++ b/src/imlib.c +@@ -44,6 +44,10 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + #include "exif.h" + #endif + ++#ifdef HAVE_LIBMAGIC ++#include ++#endif ++ + Display *disp = NULL; + Visual *vis = NULL; + Screen *scr = NULL; +@@ -242,98 +246,62 @@ void feh_print_load_error(char *file, winwidget w, Imlib_Load_Error err, enum fe + * avoid calling Imlib2 for files it probably cannot handle. See + * and + * . +- * +- * Note that this drops support for bz2-compressed files, unless +- * FEH_SKIP_MAGIC is set + */ + int feh_is_image(feh_file * file) + { +- unsigned char buf[16]; +- FILE *fh = fopen(file->filename, "r"); +- if (!fh) { +- return 0; +- } +- // Files smaller than buf will be padded with zeroes +- memset(buf, 0, sizeof(buf)); +- if (fread(buf, 1, 16, fh) <= 0) { +- fclose(fh); +- return 0; +- } +- fclose(fh); ++#ifdef HAVE_LIBMAGIC ++ magic_t magic; ++ const char * mime_type; ++ int is_image = 0; + +- if (buf[0] == 0xff && buf[1] == 0xd8) { +- // JPEG +- return 1; +- } +- if (!memcmp(buf, "\x89PNG\x0d\x0a\x1a\x0a", 8)) { +- // PNG +- return 1; +- } +- if (buf[0] == 'A' && buf[1] == 'R' && buf[2] == 'G' && buf[3] == 'B') { +- // ARGB +- return 1; +- } +- if (buf[0] == 'B' && buf[1] == 'M') { +- // BMP +- return 1; +- } +- if (!memcmp(buf, "farbfeld", 8)) { +- // farbfeld +- return 1; +- } +- if (buf[0] == 'G' && buf[1] == 'I' && buf[2] == 'F') { +- // GIF +- return 1; +- } +- if (buf[0] == 0x00 && buf[1] == 0x00 && buf[2] <= 0x02 && buf[3] == 0x00) { +- // ICO +- return 1; +- } +- if (!memcmp(buf, "FORM", 4)) { +- // Amiga IFF ILBM +- return 1; +- } +- if (buf[0] == 'P' && buf[1] >= '1' && buf[1] <= '7') { +- // PNM et al. +- return 1; +- } +- if (strstr(file->filename, ".tga")) { +- // TGA +- return 1; +- } +- if (!memcmp(buf, "II\x2a\x00", 4) || !memcmp(buf, "MM\x00\x2a", 4)) { +- // TIFF +- return 1; +- } +- if (!memcmp(buf, "RIFF", 4)) { +- // might be webp +- return 1; +- } +- if (!memcmp(buf + 4, "ftyphei", 7) || !memcmp(buf + 4, "ftypmif1", 8)) { +- // HEIC/HEIF - note that this is only supported in imlib2-heic. Ordinary +- // imlib2 releases do not support heic/heif images as of 2021-01. +- return 1; +- } +- if ((buf[0] == 0xff && buf[1] == 0x0a) || !memcmp(buf, "\x00\x00\x00\x0cJXL \x0d\x0a\x87\x0a", 12)) { +- // JXL - note that this is only supported in imlib2-jxl. Ordinary +- // imlib2 releases do not support JXL images as of 2021-06. ++ if (getenv("FEH_SKIP_MAGIC")) { + return 1; + } +- buf[15] = 0; +- if (strstr((char *)buf, "XPM")) { +- // XPM +- return 1; ++ ++ if (!(magic = magic_open(MAGIC_MIME_TYPE | MAGIC_SYMLINK))) { ++ weprintf("unable to initialize magic library\n"); ++ return 0; + } +- if (strstr(file->filename, ".bz2") || strstr(file->filename, ".gz")) { +- // Imlib2 supports compressed images. It relies on the filename to +- // determine the appropriate loader and does not use magic bytes here. +- return 1; ++ ++ if (magic_load(magic, NULL) != 0) { ++ weprintf("cannot load magic database: %s\n", magic_error(magic)); ++ magic_close(magic); ++ return 0; + } +- // moved to the end as this variable won't be set in most cases +- if (getenv("FEH_SKIP_MAGIC")) { +- return 1; ++ ++ mime_type = magic_file(magic, file->filename); ++ ++ if (mime_type) { ++ D(("file %s has mime type: %s\n", file->filename, mime_type)); ++ ++ if (strncmp(mime_type, "image/", 6) == 0) { ++ is_image = 1; ++ } ++ ++ /* imlib2 supports loading compressed images, let's have a look inside */ ++ if (strcmp(mime_type, "application/gzip") == 0 || ++ strcmp(mime_type, "application/x-bzip2") == 0 || ++ strcmp(mime_type, "application/x-xz") == 0) { ++ magic_setflags(magic, magic_getflags(magic) | MAGIC_COMPRESS); ++ mime_type = magic_file(magic, file->filename); ++ ++ if (mime_type) { ++ D(("uncompressed file %s has mime type: %s\n", file->filename, mime_type)); ++ ++ if (strncmp(mime_type, "image/", 6) == 0) { ++ is_image = 1; ++ } ++ } ++ } + } +- return 0; ++ ++ magic_close(magic); ++ ++ return is_image; ++#else ++ (void)file; ++ return 1; ++#endif + } + + int feh_load_image(Imlib_Image * im, feh_file * file) +-- +2.35.1 + + +From facb67f8438aa8ef18ffacdccfd0a2d1c2730e5c Mon Sep 17 00:00:00 2001 +From: Christian Hesse +Date: Wed, 12 Jan 2022 09:53:15 +0100 +Subject: [PATCH 2/3] global initialization for libmagic + +Add a global `magic_t magic` and initialize it just once. + +Also `feh_is_image()` now calls itself to check compressed files, saving +some duplicate code. +--- + src/feh.h | 4 +++ + src/imlib.c | 94 ++++++++++++++++++++++++++++++----------------------- + src/main.c | 8 +++++ + 3 files changed, 66 insertions(+), 40 deletions(-) + +diff --git a/src/feh.h b/src/feh.h +index 007c7c5..9afe238 100644 +--- a/src/feh.h ++++ b/src/feh.h +@@ -145,6 +145,10 @@ void init_slideshow_mode(void); + void init_list_mode(void); + void init_loadables_mode(void); + void init_unloadables_mode(void); ++#ifdef HAVE_LIBMAGIC ++void uninit_magic(void); ++void init_magic(void); ++#endif + void feh_clean_exit(void); + int feh_should_ignore_image(Imlib_Image * im); + int feh_load_image(Imlib_Image * im, feh_file * file); +diff --git a/src/imlib.c b/src/imlib.c +index 70d459f..0accbdc 100644 +--- a/src/imlib.c ++++ b/src/imlib.c +@@ -46,6 +46,8 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + #ifdef HAVE_LIBMAGIC + #include ++ ++magic_t magic = NULL; + #endif + + Display *disp = NULL; +@@ -239,6 +241,33 @@ void feh_print_load_error(char *file, winwidget w, Imlib_Load_Error err, enum fe + } + } + ++#ifdef HAVE_LIBMAGIC ++void uninit_magic(void) ++{ ++ if (!magic) { ++ return; ++ } ++ ++ magic_close(magic); ++ magic = NULL; ++} ++void init_magic(void) ++{ ++ if (getenv("FEH_SKIP_MAGIC")) { ++ return; ++ } ++ ++ if (!(magic = magic_open(MAGIC_NONE))) { ++ weprintf("unable to initialize magic library\n"); ++ return; ++ } ++ ++ if (magic_load(magic, NULL) != 0) { ++ weprintf("cannot load magic database: %s\n", magic_error(magic)); ++ uninit_magic(); ++ } ++} ++ + /* + * This is a workaround for an Imlib2 regression, causing unloadable image + * detection to be excessively slow (and, thus, causing feh to hang for a while +@@ -247,62 +276,47 @@ void feh_print_load_error(char *file, winwidget w, Imlib_Load_Error err, enum fe + * and + * . + */ +-int feh_is_image(feh_file * file) ++int feh_is_image(feh_file * file, int magic_flags) + { +-#ifdef HAVE_LIBMAGIC +- magic_t magic; +- const char * mime_type; +- int is_image = 0; ++ const char * mime_type = NULL; + +- if (getenv("FEH_SKIP_MAGIC")) { ++ if (!magic) { + return 1; + } + +- if (!(magic = magic_open(MAGIC_MIME_TYPE | MAGIC_SYMLINK))) { +- weprintf("unable to initialize magic library\n"); +- return 0; +- } ++ magic_setflags(magic, MAGIC_MIME_TYPE | MAGIC_SYMLINK | magic_flags); ++ mime_type = magic_file(magic, file->filename); + +- if (magic_load(magic, NULL) != 0) { +- weprintf("cannot load magic database: %s\n", magic_error(magic)); +- magic_close(magic); ++ if (!mime_type) { + return 0; + } + +- mime_type = magic_file(magic, file->filename); +- +- if (mime_type) { +- D(("file %s has mime type: %s\n", file->filename, mime_type)); +- +- if (strncmp(mime_type, "image/", 6) == 0) { +- is_image = 1; +- } +- +- /* imlib2 supports loading compressed images, let's have a look inside */ +- if (strcmp(mime_type, "application/gzip") == 0 || +- strcmp(mime_type, "application/x-bzip2") == 0 || +- strcmp(mime_type, "application/x-xz") == 0) { +- magic_setflags(magic, magic_getflags(magic) | MAGIC_COMPRESS); +- mime_type = magic_file(magic, file->filename); ++ D(("file %s has mime type: %s\n", file->filename, mime_type)); + +- if (mime_type) { +- D(("uncompressed file %s has mime type: %s\n", file->filename, mime_type)); ++ if (strncmp(mime_type, "image/", 6) == 0) { ++ return 1; ++ } + +- if (strncmp(mime_type, "image/", 6) == 0) { +- is_image = 1; +- } +- } +- } ++ /* no infinite loop on compressed content, please */ ++ if (magic_flags) { ++ return 0; + } + +- magic_close(magic); ++ /* imlib2 supports loading compressed images, let's have a look inside */ ++ if (strcmp(mime_type, "application/gzip") == 0 || ++ strcmp(mime_type, "application/x-bzip2") == 0 || ++ strcmp(mime_type, "application/x-xz") == 0) { ++ return feh_is_image(file, MAGIC_COMPRESS); ++ } + +- return is_image; ++ return 0; ++} + #else +- (void)file; ++int feh_is_image(__attribute__((unused)) feh_file * file, __attribute__((unused)) int magic_flags) ++{ + return 1; +-#endif + } ++#endif + + int feh_load_image(Imlib_Image * im, feh_file * file) + { +@@ -326,7 +340,7 @@ int feh_load_image(Imlib_Image * im, feh_file * file) + } + } + else { +- if (feh_is_image(file)) { ++ if (feh_is_image(file, 0)) { + *im = imlib_load_image_with_error_return(file->filename, &err); + } else { + feh_err = LOAD_ERROR_MAGICBYTES; +diff --git a/src/main.c b/src/main.c +index 3d124fd..34b667a 100644 +--- a/src/main.c ++++ b/src/main.c +@@ -69,6 +69,10 @@ int main(int argc, char **argv) + #endif + } + ++#ifdef HAVE_LIBMAGIC ++ init_magic(); ++#endif ++ + feh_event_init(); + + if (opt.index) +@@ -262,6 +266,10 @@ void feh_clean_exit(void) + if(disp) + XCloseDisplay(disp); + ++#ifdef HAVE_LIBMAGIC ++ uninit_magic(); ++#endif ++ + /* + * Only restore the old terminal settings if + * - we changed them in the first place +-- +2.35.1 + + +From 26cd770c8732a4467e57cf3e7a5d4c2518836275 Mon Sep 17 00:00:00 2001 +From: Daniel Friesel +Date: Thu, 10 Feb 2022 21:41:35 +0100 +Subject: [PATCH 3/3] Run init_magic before init_parse_options + +init_parse_options calls feh_prepare_filelist, which in turn calls +feh_file_info_preload if opt.preload is set. This function will load all +images in the filelist to determine their attributes, so we need to initialize +libmagic before calling init_parse_options. +--- + src/main.c | 9 +++++---- + 1 file changed, 5 insertions(+), 4 deletions(-) + +diff --git a/src/main.c b/src/main.c +index 34b667a..85e0504 100644 +--- a/src/main.c ++++ b/src/main.c +@@ -49,6 +49,11 @@ int main(int argc, char **argv) + srandom(getpid() * time(NULL) % ((unsigned int) -1)); + + setup_signal_handlers(); ++ ++#ifdef HAVE_LIBMAGIC ++ init_magic(); ++#endif ++ + init_parse_options(argc, argv); + + init_imlib_fonts(); +@@ -69,10 +74,6 @@ int main(int argc, char **argv) + #endif + } + +-#ifdef HAVE_LIBMAGIC +- init_magic(); +-#endif +- + feh_event_init(); + + if (opt.index) diff --git a/feh/PKGBUILD b/feh/PKGBUILD new file mode 100644 index 0000000..5ad0c78 --- /dev/null +++ b/feh/PKGBUILD @@ -0,0 +1,50 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=feh +pkgver=3.8 +pkgrel=02 +pkgdesc='Fast and light imlib2-based image viewer' +url='https://feh.finalrewind.org/' +arch=('x86_64') +#depends=('imlib2' 'curl' 'libxinerama' 'libexif') +depends=('curl' 'file' 'imlib2' 'libexif' 'libxinerama') +optdepends=('imagemagick: support more file formats' + 'jpegexiforient: set exif rotation tag') +makedepends=('libxt') +source=("${url}${pkgname}-${pkgver}.tar.bz2"{,.asc} + '0001-libmagic.patch') + +prepare() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -Np1 < ../0001-libmagic.patch +} + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + make PREFIX=/usr \ + exif=1 \ + help=1 \ + inotify=1 \ + stat64=1 +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make PREFIX=/usr DESTDIR="${pkgdir}" install + install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + install -D -m0644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} + +#---- license gpg-key sha256sums ---- + +license=('custom:MIT') + +validpgpkeys=('781BB7071C6BF648EAEB08A1100D5BFB5166E005') + +sha256sums=(7f3c34552b39336d7ebee2d7c4bf5697aaaa2c6c102c357f6e82ea240bd62ba9 # feh-3.8.tar.bz2 + 7941a7eecadc55f0ccab2b9eec9aca37288eff8efe19056021ea339fb260e824 # feh-3.8.tar.bz2.asc + cc2c7ca77c710001339cceb78225119e910bc6949ab2a3380b90caf84c0d3e41) # 0001-libmagic.patch diff --git a/feh/PKGBUILD-arch b/feh/PKGBUILD-arch new file mode 100644 index 0000000..e01fbd4 --- /dev/null +++ b/feh/PKGBUILD-arch @@ -0,0 +1,42 @@ +# Maintainer: Gaetan Bisson +# Contributor: Andrea Scarpino +# Contributor: dorphell +# Contributor: Tom Newsom + +pkgname=feh +pkgver=3.8 +pkgrel=2 +pkgdesc='Fast and light imlib2-based image viewer' +url='https://feh.finalrewind.org/' +license=('custom:MIT') +arch=('x86_64') +depends=('curl' 'file' 'imlib2' 'libexif' 'libxinerama') +optdepends=('imagemagick: support more file formats' + 'jpegexiforient: set exif rotation tag') +makedepends=('libxt') +validpgpkeys=('781BB7071C6BF648EAEB08A1100D5BFB5166E005') +source=("${url}${pkgname}-${pkgver}.tar.bz2"{,.asc} + '0001-libmagic.patch') +sha256sums=('7f3c34552b39336d7ebee2d7c4bf5697aaaa2c6c102c357f6e82ea240bd62ba9' + 'SKIP' + 'cc2c7ca77c710001339cceb78225119e910bc6949ab2a3380b90caf84c0d3e41') + +prepare() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -Np1 < ../0001-libmagic.patch +} + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + make PREFIX=/usr \ + exif=1 \ + help=1 \ + inotify=1 \ + stat64=1 +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make PREFIX=/usr DESTDIR="${pkgdir}" install + install -D -m0644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} diff --git a/feh/clean b/feh/clean new file mode 100644 index 0000000..993e1fe --- /dev/null +++ b/feh/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,feh*.tar.bz2*} diff --git a/feh/deps b/feh/deps new file mode 100644 index 0000000..f20ee0d --- /dev/null +++ b/feh/deps @@ -0,0 +1,4 @@ +imlib2 +libxinerama +libexif +libxt diff --git a/feh/key b/feh/key new file mode 100644 index 0000000..2149d09 --- /dev/null +++ b/feh/key @@ -0,0 +1 @@ +gpg -v --recv-key 100D5BFB5166E005 diff --git a/fuse3/PKGBUILD b/fuse3/PKGBUILD new file mode 100644 index 0000000..f431cf3 --- /dev/null +++ b/fuse3/PKGBUILD @@ -0,0 +1,56 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgbase=fuse3 +pkgname=(fuse-common fuse3) +pkgver=3.10.5 +pkgrel=01 +arch=('x86_64') +url='https://github.com/libfuse/libfuse' +makedepends=('pkg-config' 'meson' 'eudev') +options=(!emptydirs) +source=(https://github.com/libfuse/libfuse/releases/download/fuse-$pkgver/fuse-$pkgver.tar.xz{,.asc}) + +build() { + cd fuse-$pkgver + + rm -rf build + meson --prefix=/usr --sbindir=bin -D examples=false . build + cd build + ninja +} + +package_fuse-common() { + pkgdesc="Common files for fuse2/3 packages" + backup=(etc/fuse.conf) + + install -Dm644 fuse-${pkgver}/util/fuse.conf "${pkgdir}"/etc/fuse.conf +} + +package_fuse3() { + pkgdesc="A library that makes it possible to implement a filesystem in a userspace program." + depends=('fuse-common' 'glibc') + + cd fuse-$pkgver/build + + DESTDIR="${pkgdir}" ninja install + + rm -r "${pkgdir}"/etc/init.d + rm -r "${pkgdir}"/etc/fuse.conf + + # static device nodes are handled by udev + rm -r "${pkgdir}"/dev +} + +#---- license gpg-key sha256sums ---- + +license=('GPL2') + +validpgpkeys=(ED31791B2C5C1613AF388B8AD113FCAC3C4E599F) # Nikolaus Rath + +sha256sums=(b2e283485d47404ac896dd0bb7f7ba81e1470838e677e45f659804c3a3b69666 # fuse-3.10.5.tar.xz + e1aaa953cb82ad3e74ddce4b0b115b5882dbffb6139cf48627aa8061b76d721c) # fuse-3.10.5.tar.xz.asc diff --git a/fuse3/PKGBUILD-arch b/fuse3/PKGBUILD-arch new file mode 100644 index 0000000..4d2c880 --- /dev/null +++ b/fuse3/PKGBUILD-arch @@ -0,0 +1,48 @@ +# Maintainer: Ronald van Haren +# Contributor: Tom Gundersen +# Contributor: Mark Rosenstand + +pkgbase=fuse3 +pkgname=(fuse-common fuse3) +pkgver=3.10.5 +pkgrel=1 +arch=('x86_64') +url='https://github.com/libfuse/libfuse' +license=('GPL2') +makedepends=('pkg-config' 'meson' 'udev') +options=(!emptydirs) +source=(https://github.com/libfuse/libfuse/releases/download/fuse-$pkgver/fuse-$pkgver.tar.xz{,.asc}) +sha256sums=('b2e283485d47404ac896dd0bb7f7ba81e1470838e677e45f659804c3a3b69666' + 'SKIP') +validpgpkeys=(ED31791B2C5C1613AF388B8AD113FCAC3C4E599F) # Nikolaus Rath + +build() { + cd fuse-$pkgver + + rm -rf build + meson --prefix=/usr --sbindir=bin -D examples=false . build + cd build + ninja +} + +package_fuse-common() { + pkgdesc="Common files for fuse2/3 packages" + backup=(etc/fuse.conf) + + install -Dm644 fuse-${pkgver}/util/fuse.conf "${pkgdir}"/etc/fuse.conf +} + +package_fuse3() { + pkgdesc="A library that makes it possible to implement a filesystem in a userspace program." + depends=('fuse-common' 'glibc') + + cd fuse-$pkgver/build + + DESTDIR="${pkgdir}" ninja install + + rm -r "${pkgdir}"/etc/init.d + rm -r "${pkgdir}"/etc/fuse.conf + + # static device nodes are handled by udev + rm -r "${pkgdir}"/dev +} diff --git a/fuse3/clean b/fuse3/clean new file mode 100644 index 0000000..9fd3f8c --- /dev/null +++ b/fuse3/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,fuse-3*} diff --git a/fuse3/deps b/fuse3/deps new file mode 100644 index 0000000..73f82d1 --- /dev/null +++ b/fuse3/deps @@ -0,0 +1,2 @@ +meson +eudev diff --git a/fuse3/key b/fuse3/key new file mode 100644 index 0000000..c32df88 --- /dev/null +++ b/fuse3/key @@ -0,0 +1 @@ +gpg -v --recv-key D113FCAC3C4E599F diff --git a/fuse3/time b/fuse3/time new file mode 100644 index 0000000..9139728 --- /dev/null +++ b/fuse3/time @@ -0,0 +1,5 @@ + +real 0m7.163s +user 0m11.663s +sys 0m1.230s + diff --git a/gc/PKGBUILD b/gc/PKGBUILD new file mode 100644 index 0000000..1c8a9cd --- /dev/null +++ b/gc/PKGBUILD @@ -0,0 +1,51 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=gc +pkgver=8.2.0 +pkgrel=02 +pkgdesc="A garbage collector for C and C++" +arch=('x86_64') +groups=( jobbot ) +url="https://www.hboehm.info/gc/" +depends=('gcc-libs') +source=(https://github.com/ivmai/bdwgc/releases/download/v${pkgver}/${pkgname}-${pkgver}.tar.gz + gc-missing-header.patch::https://patch-diff.githubusercontent.com/raw/ivmai/bdwgc/pull/389.patch) + +prepare() { + cd $pkgname-$pkgver + patch -p1 < ../gc-missing-header.patch # Install missing header + ./autogen.sh +} + +build() { + cd ${pkgname}-${pkgver} + ./configure --prefix=/usr --enable-cplusplus --disable-static + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +check() { + cd ${pkgname}-${pkgver} + make check +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + sed 's|GC_MALLOC 1L|gc 3|g' doc/gc.man | + install -Dm644 /dev/stdin "${pkgdir}/usr/share/man/man3/gc.3" +} + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +#sha512sums=('ff781360bca667f1f95fbfed073e9035f63134cac1bda4f7e4217664a3713c2846f750a3ce92732972c0435c69355b051f6e8eb6f2698b0d48d9107ff960bacf' +# 'a89d46b6826b90184e1a2724c2a1a57a4a2a215245938500aa7a652bf7eee3e0205c36fbd27e450ac59824c07b16fd38987ea77a33a41eb38878701fb70e0ad9') + +sha256sums=(2540f7356cb74f6c5b75326c6d38a066edd796361fd7d4ed26e494d9856fed8f # gc-8.2.0.tar.gz + 048bff8e713ec1dbf7a06ff02175ab407db5433a15707d6687b9bcf212e6b1bf) # gc-missing-header.patch diff --git a/gc/PKGBUILD-arch b/gc/PKGBUILD-arch new file mode 100644 index 0000000..5e9162a --- /dev/null +++ b/gc/PKGBUILD-arch @@ -0,0 +1,40 @@ +# Maintainer: Daniel Isenmann +# Contributor: dorphell + +pkgname=gc +pkgver=8.2.0 +pkgrel=2 +pkgdesc="A garbage collector for C and C++" +arch=('x86_64') +url="https://www.hboehm.info/gc/" +license=('GPL') +depends=('gcc-libs') +source=(https://github.com/ivmai/bdwgc/releases/download/v${pkgver}/${pkgname}-${pkgver}.tar.gz + gc-missing-header.patch::https://patch-diff.githubusercontent.com/raw/ivmai/bdwgc/pull/389.patch) +sha512sums=('ff781360bca667f1f95fbfed073e9035f63134cac1bda4f7e4217664a3713c2846f750a3ce92732972c0435c69355b051f6e8eb6f2698b0d48d9107ff960bacf' + 'a89d46b6826b90184e1a2724c2a1a57a4a2a215245938500aa7a652bf7eee3e0205c36fbd27e450ac59824c07b16fd38987ea77a33a41eb38878701fb70e0ad9') + +prepare() { + cd $pkgname-$pkgver + patch -p1 < ../gc-missing-header.patch # Install missing header + ./autogen.sh +} + +build() { + cd ${pkgname}-${pkgver} + ./configure --prefix=/usr --enable-cplusplus --disable-static + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +check() { + cd ${pkgname}-${pkgver} + make check +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + sed 's|GC_MALLOC 1L|gc 3|g' doc/gc.man | + install -Dm644 /dev/stdin "${pkgdir}/usr/share/man/man3/gc.3" +} diff --git a/gc/clean b/gc/clean new file mode 100644 index 0000000..8169827 --- /dev/null +++ b/gc/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,gc*.tar.gz,*.patch} diff --git a/gc/deps b/gc/deps new file mode 100644 index 0000000..c05614c --- /dev/null +++ b/gc/deps @@ -0,0 +1,3 @@ + +autoconf +automake diff --git a/gc/time b/gc/time new file mode 100644 index 0000000..8423a1f --- /dev/null +++ b/gc/time @@ -0,0 +1,3 @@ +real 0m21.933s +user 0m35.653s +sys 0m6.080s diff --git a/gconf/01_xml-gettext-domain.patch b/gconf/01_xml-gettext-domain.patch new file mode 100644 index 0000000..d1323f6 --- /dev/null +++ b/gconf/01_xml-gettext-domain.patch @@ -0,0 +1,362 @@ +# Description: Support calling gettext at runtime and putting the gettext domain into the .schemas file instead of replicating translations in /usr/share/gconf/schemas/*.schemas *and* /var/lib/gconf/defaults/%gconf-tree-$LANG.xml. This saves in the order of 90 MB uncompressed/10 MB compressed on hard disks. +# Ubuntu: https://bugs.launchpad.net/bugs/123025 +# Upstream: http://bugzilla.gnome.org/show_bug.cgi?id=568845 +--- GConf-2.26.0/backends/markup-tree.c.gettext 2009-04-26 23:33:05.258484987 -0400 ++++ GConf-2.26.0/backends/markup-tree.c 2009-04-26 23:34:25.026700526 -0400 +@@ -52,6 +52,7 @@ struct _MarkupEntry + char *schema_name; + char *mod_user; + GTime mod_time; ++ const char *gettext_domain; + }; + + static LocalSchemaInfo* local_schema_info_new (void); +@@ -1593,6 +1594,8 @@ markup_entry_set_value (MarkupEntry + gconf_schema_get_type (schema)); + gconf_schema_set_owner (current_schema, + gconf_schema_get_owner (schema)); ++ gconf_schema_set_gettext_domain (current_schema, ++ gconf_schema_get_gettext_domain (schema)); + } + + /* Update mod time */ +@@ -1805,6 +1808,8 @@ markup_entry_get_value (MarkupEntry *ent + else if (c_local_schema && c_local_schema->long_desc) + gconf_schema_set_long_desc (schema, c_local_schema->long_desc); + ++ gconf_schema_set_gettext_domain (schema, entry->gettext_domain); ++ + return retval; + } + } +@@ -2339,8 +2344,9 @@ parse_value_element (GMarkupParseContext + const char *ltype; + const char *list_type; + const char *owner; ++ + GConfValueType vtype; +- const char *dummy1, *dummy2, *dummy3, *dummy4; ++ const char *dummy1, *dummy2, *dummy3, *dummy4, *dummy5; + + #if 0 + g_assert (ELEMENT_IS ("entry") || +@@ -2377,6 +2383,7 @@ parse_value_element (GMarkupParseContext + "muser", &dummy2, + "mtime", &dummy3, + "schema", &dummy4, ++ "gettext_domain", &dummy5, + + NULL)) + return; +@@ -2683,6 +2690,7 @@ parse_entry_element (GMarkupParseContext + const char *mtime; + const char *schema; + const char *type; ++ const char *gettext_domain; + const char *dummy1, *dummy2, *dummy3, *dummy4; + const char *dummy5, *dummy6, *dummy7; + GConfValue *value; +@@ -2693,6 +2701,7 @@ parse_entry_element (GMarkupParseContext + mtime = NULL; + schema = NULL; + type = NULL; ++ gettext_domain = NULL; + + if (!locate_attributes (context, element_name, attribute_names, attribute_values, + error, +@@ -2701,6 +2710,7 @@ parse_entry_element (GMarkupParseContext + "mtime", &mtime, + "schema", &schema, + "type", &type, ++ "gettext_domain", &gettext_domain, + + /* These are allowed but we don't use them until + * parse_value_element +@@ -2768,6 +2778,9 @@ parse_entry_element (GMarkupParseContext + */ + if (schema) + entry->schema_name = g_strdup (schema); ++ ++ if (gettext_domain) ++ entry->gettext_domain = g_intern_string (gettext_domain); + } + else + { +@@ -3716,6 +3729,7 @@ write_value_element (GConfValue *value, + GConfSchema *schema; + GConfValueType stype; + const char *owner; ++ const char *gettext_domain; + + schema = gconf_value_get_schema (value); + +@@ -3741,6 +3755,23 @@ write_value_element (GConfValue *value, + + g_free (s); + } ++ ++ gettext_domain = gconf_schema_get_gettext_domain (schema); ++ ++ if (gettext_domain) ++ { ++ char *s; ++ ++ s = g_markup_escape_text (gettext_domain, -1); ++ ++ if (fprintf (f, " gettext_domain=\"%s\"", s) < 0) ++ { ++ g_free (s); ++ return FALSE; ++ } ++ ++ g_free (s); ++ } + + if (stype == GCONF_VALUE_LIST) + { +diff -up GConf-2.26.0/doc/gconf-1.0.dtd.gettext GConf-2.26.0/doc/gconf-1.0.dtd +--- GConf-2.26.0/doc/gconf-1.0.dtd.gettext 2009-04-26 23:33:17.240736103 -0400 ++++ GConf-2.26.0/doc/gconf-1.0.dtd 2009-04-26 23:34:25.027700384 -0400 +@@ -7,7 +7,7 @@ + +- ++ + + + +diff -up GConf-2.26.0/gconf/gconf-internals.c.gettext GConf-2.26.0/gconf/gconf-internals.c +--- GConf-2.26.0/gconf/gconf-internals.c.gettext 2009-04-26 23:34:10.994700035 -0400 ++++ GConf-2.26.0/gconf/gconf-internals.c 2009-04-26 23:34:53.767450191 -0400 +@@ -513,6 +513,7 @@ gconf_fill_corba_schema_from_gconf_schem + cs->short_desc = CORBA_string_dup (gconf_schema_get_short_desc (sc) ? gconf_schema_get_short_desc (sc) : ""); + cs->long_desc = CORBA_string_dup (gconf_schema_get_long_desc (sc) ? gconf_schema_get_long_desc (sc) : ""); + cs->owner = CORBA_string_dup (gconf_schema_get_owner (sc) ? gconf_schema_get_owner (sc) : ""); ++ cs->gettext_domain = CORBA_string_dup (gconf_schema_get_gettext_domain (sc) ? gconf_schema_get_gettext_domain (sc) : ""); + + { + gchar* encoded; +@@ -600,6 +601,14 @@ gconf_schema_from_corba_schema(const Con + gconf_schema_set_owner(sc, cs->owner); + } + ++ if (*cs->gettext_domain != '\0') ++ { ++ if (!g_utf8_validate (cs->gettext_domain, -1, NULL)) ++ gconf_log (GCL_ERR, _("Invalid UTF-8 in gettext domain for schema")); ++ else ++ gconf_schema_set_gettext_domain(sc, cs->gettext_domain); ++ } ++ + { + GConfValue* val; + +diff -up GConf-2.26.0/gconf/gconf-schema.c.gettext GConf-2.26.0/gconf/gconf-schema.c +--- GConf-2.26.0/gconf/gconf-schema.c.gettext 2009-04-26 23:33:26.787483545 -0400 ++++ GConf-2.26.0/gconf/gconf-schema.c 2009-04-26 23:35:54.240450142 -0400 +@@ -32,9 +32,10 @@ typedef struct { + GConfValueType car_type; /* Pair car type of the described entry */ + GConfValueType cdr_type; /* Pair cdr type of the described entry */ + gchar* locale; /* Schema locale */ +- gchar* owner; /* Name of creating application */ ++ const gchar* owner; /* Name of creating application */ + gchar* short_desc; /* 40 char or less description, no newlines */ + gchar* long_desc; /* could be a paragraph or so */ ++ const gchar* gettext_domain; /* description gettext domain */ + GConfValue* default_value; /* Default value of the key */ + } GConfRealSchema; + +@@ -63,7 +64,6 @@ gconf_schema_free (GConfSchema* sc) + g_free (real->locale); + g_free (real->short_desc); + g_free (real->long_desc); +- g_free (real->owner); + + if (real->default_value) + gconf_value_free (real->default_value); +@@ -91,7 +91,9 @@ gconf_schema_copy (const GConfSchema* sc + + dest->long_desc = g_strdup (real->long_desc); + +- dest->owner = g_strdup (real->owner); ++ dest->gettext_domain = real->gettext_domain; ++ ++ dest->owner = real->owner; + + dest->default_value = real->default_value ? gconf_value_copy (real->default_value) : NULL; + +@@ -136,6 +138,17 @@ gconf_schema_set_locale (GConfSchema* sc + REAL_SCHEMA (sc)->locale = NULL; + } + ++void ++gconf_schema_set_gettext_domain (GConfSchema* sc, const gchar* domain) ++{ ++ g_return_if_fail (domain == NULL || g_utf8_validate (domain, -1, NULL)); ++ ++ if (domain) ++ REAL_SCHEMA (sc)->gettext_domain = g_intern_string (domain); ++ else ++ REAL_SCHEMA (sc)->gettext_domain = NULL; ++} ++ + void + gconf_schema_set_short_desc (GConfSchema* sc, const gchar* desc) + { +@@ -169,11 +182,8 @@ gconf_schema_set_owner (GConfSchema* sc, + { + g_return_if_fail (owner == NULL || g_utf8_validate (owner, -1, NULL)); + +- if (REAL_SCHEMA (sc)->owner) +- g_free (REAL_SCHEMA (sc)->owner); +- + if (owner) +- REAL_SCHEMA (sc)->owner = g_strdup (owner); ++ REAL_SCHEMA (sc)->owner = g_intern_string (owner); + else + REAL_SCHEMA (sc)->owner = NULL; + } +@@ -228,6 +238,14 @@ gconf_schema_validate (const GConfSchema + return FALSE; + } + ++ if (real->gettext_domain && !g_utf8_validate (real->gettext_domain, -1, NULL)) ++ { ++ g_set_error (err, GCONF_ERROR, ++ GCONF_ERROR_FAILED, ++ _("Schema contains invalid UTF-8")); ++ return FALSE; ++ } ++ + if (real->owner && !g_utf8_validate (real->owner, -1, NULL)) + { + g_set_error (err, GCONF_ERROR, +@@ -299,11 +317,32 @@ gconf_schema_get_locale (const GConfSche + } + + const char* ++gconf_schema_get_gettext_domain (const GConfSchema *schema) ++{ ++ g_return_val_if_fail (schema != NULL, NULL); ++ ++ return REAL_SCHEMA (schema)->gettext_domain; ++} ++ ++static inline const char * ++schema_translate (const GConfSchema *schema, ++ const char *string) ++{ ++ if (REAL_SCHEMA (schema)->gettext_domain) ++ { ++ bind_textdomain_codeset (REAL_SCHEMA (schema)->gettext_domain, "UTF-8"); ++ return g_dgettext(REAL_SCHEMA (schema)->gettext_domain, string); ++ } ++ else ++ return string; ++} ++ ++const char* + gconf_schema_get_short_desc (const GConfSchema *schema) + { + g_return_val_if_fail (schema != NULL, NULL); + +- return REAL_SCHEMA (schema)->short_desc; ++ return schema_translate (schema, REAL_SCHEMA (schema)->short_desc); + } + + const char* +@@ -311,7 +350,7 @@ gconf_schema_get_long_desc (const GConfS + { + g_return_val_if_fail (schema != NULL, NULL); + +- return REAL_SCHEMA (schema)->long_desc; ++ return schema_translate (schema, REAL_SCHEMA (schema)->long_desc); + } + + const char* +diff -up GConf-2.26.0/gconf/gconf-schema.h.gettext GConf-2.26.0/gconf/gconf-schema.h +--- GConf-2.26.0/gconf/gconf-schema.h.gettext 2009-04-26 23:33:33.979744088 -0400 ++++ GConf-2.26.0/gconf/gconf-schema.h 2009-04-26 23:34:25.030737043 -0400 +@@ -48,6 +48,8 @@ void gconf_schema_set_cdr_type + GConfValueType type); + void gconf_schema_set_locale (GConfSchema *sc, + const gchar *locale); ++void gconf_schema_set_gettext_domain (GConfSchema *sc, ++ const gchar *domain); + void gconf_schema_set_short_desc (GConfSchema *sc, + const gchar *desc); + void gconf_schema_set_long_desc (GConfSchema *sc, +@@ -65,6 +67,7 @@ GConfValueType gconf_schema_get_list_typ + GConfValueType gconf_schema_get_car_type (const GConfSchema *schema); + GConfValueType gconf_schema_get_cdr_type (const GConfSchema *schema); + const char* gconf_schema_get_locale (const GConfSchema *schema); ++const char* gconf_schema_get_gettext_domain(const GConfSchema *schema); + const char* gconf_schema_get_short_desc (const GConfSchema *schema); + const char* gconf_schema_get_long_desc (const GConfSchema *schema); + const char* gconf_schema_get_owner (const GConfSchema *schema); +diff -up GConf-2.26.0/gconf/gconftool.c.gettext GConf-2.26.0/gconf/gconftool.c +--- GConf-2.26.0/gconf/gconftool.c.gettext 2009-04-26 23:33:41.907451190 -0400 ++++ GConf-2.26.0/gconf/gconftool.c 2009-04-26 23:34:25.034736752 -0400 +@@ -3295,6 +3295,7 @@ struct _SchemaInfo { + GConfValueType cdr_type; + GConfValue* global_default; + GHashTable* hash; ++ gchar* gettext_domain; + }; + + static int +@@ -3547,6 +3548,15 @@ extract_global_info(xmlNodePtr node, + else + g_printerr (_("WARNING: empty node")); + } ++ else if (strcmp((char *)iter->name, "gettext_domain") == 0) ++ { ++ tmp = (char *)xmlNodeGetContent(iter); ++ if (tmp) ++ { ++ info->gettext_domain = g_strdup(tmp); ++ xmlFree(tmp); ++ } ++ } + else + g_printerr (_("WARNING: node <%s> not understood below \n"), + iter->name); +@@ -3636,6 +3646,9 @@ process_locale_info(xmlNodePtr node, Sch + if (info->owner != NULL) + gconf_schema_set_owner(schema, info->owner); + ++ if (info->gettext_domain != NULL) ++ gconf_schema_set_gettext_domain(schema, info->gettext_domain); ++ + xmlFree(name); + + /* Locale-specific info */ +@@ -3765,6 +3778,7 @@ get_schema_from_xml(xmlNodePtr node, gch + info.apply_to = NULL; + info.owner = NULL; + info.global_default = NULL; ++ info.gettext_domain = NULL; + info.hash = g_hash_table_new(g_str_hash, g_str_equal); + + extract_global_info(node, &info); +@@ -3801,6 +3815,8 @@ get_schema_from_xml(xmlNodePtr node, gch + ; /* nothing */ + else if (strcmp((char *)iter->name, "applyto") == 0) + ; /* nothing */ ++ else if (strcmp((char *)iter->name, "gettext_domain") == 0) ++ ; /* nothing */ + else if (strcmp((char *)iter->name, "locale") == 0) + { + process_locale_info(iter, &info); +diff -up GConf-2.26.0/gconf/GConfX.idl.gettext GConf-2.26.0/gconf/GConfX.idl +--- GConf-2.26.0/gconf/GConfX.idl.gettext 2009-04-26 23:33:58.457483190 -0400 ++++ GConf-2.26.0/gconf/GConfX.idl 2009-04-26 23:34:53.764448732 -0400 +@@ -16,6 +16,7 @@ struct ConfigSchema { + string short_desc; + string long_desc; + string owner; ++ string gettext_domain; + // Work around lack of recursive data types + string encoded_default_value; + }; diff --git a/gconf/PKGBUILD b/gconf/PKGBUILD new file mode 100644 index 0000000..8de266d --- /dev/null +++ b/gconf/PKGBUILD @@ -0,0 +1,82 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=gconf +pkgver=3.2.6+11+g07808097 +pkgrel=010 +pkgdesc="A configuration database system for gksu libgksu from old-Gnome" +url="https://projects-old.gnome.org/gconf/" +arch=($CARCH) +depends=(libxml2 polkit libldap dbus-glib python) +makedepends=(git intltool gtk-doc gobject-introspection gnome-common) +install=gconf.install +_commit=0780809731c8ab1c364202b1900d3df106b28626 # The latest and last commit, dug out from deep within the waves of time... +source=("git+https://gitlab.gnome.org/Archive/gconf.git#commit=$_commit" + 01_xml-gettext-domain.patch gconf-reload.patch + gconf-merge-schema gconfpkg gconf-{install,remove}.hook) + +prepare() { + cd $pkgname + + # Patch from fedora - reloads gconf after installing schemas + patch -Np1 -i ../gconf-reload.patch + + # http://bugzilla.gnome.org/show_bug.cgi?id=568845 + patch -Np1 -i ../01_xml-gettext-domain.patch + + # The following line copied from Fedora + # https://src.fedoraproject.org/rpms/GConf2/blob/70ed26d67b563d858a84505622d11f41879a6b37/f/GConf2.spec#_90 + 2to3 --write --nobackup gsettings/gsettings-schema-convert + + sed -i '1s|#!/usr/bin/env python$|#!/usr/bin/python|' gsettings/gsettings-schema-convert + + NOCONFIGURE=1 ./autogen.sh +} + +build() { + cd $pkgname + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --libexecdir=/usr/lib \ + --enable-defaults-service \ + --disable-gtk-doc \ + --disable-static \ + --disable-orbit + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +check() { + cd $pkgname + make check +} + +package() { + DESTDIR="$pkgdir" make -C $pkgname install + + install -d "$pkgdir/etc/gconf/gconf.xml.system" + install -D gconf-merge-schema gconfpkg -t "$pkgdir/usr/bin" + install -Dm644 ./*.hook -t "$pkgdir/usr/share/libalpm/hooks" + + # fix dbus policy location - --with-dbusdir doesn't work + install -Dm644 "$pkgdir/etc/dbus-1/system.d/org.gnome.GConf.Defaults.conf" -t "$pkgdir/usr/share/dbus-1/system.d" + rm -rf "$pkgdir/etc/dbus-1/" +} + +#---- license gpg-key sha256sums ---- + +license=(LGPL) + +sha256sums=(SKIP # gconf cloned repository + c883dec2b96978874a53700cfe7f26f24f8296767203e970bc6402b4b9945eb8 # 01_xml-gettext-domain.patch + 567b78d8b4b4bbcb77c5f134d57bc503c34867fcc6341c0b01716bcaa4a21694 # gconf-reload.patch + ee6b6e6f4975dad13a8c45f1c1f0547a99373bdecdcd6604bfc12965c328a028 # gconf-merge-schema + bf1928718caa5df2b9e54a13cfd0f15a8fe0e09e86b84385ce023616a114e898 # gconfpkg + 2732b2a6b187c5620105a036bde12edee99669605f70cbde56fe5f39619c3dc0 # gconf-install.hook + 436a65ff290095bc3d35d7d6297cf4d647f61e9f9922cea7ef9f1e251b447ff7) # gconf-remove.hook diff --git a/gconf/PKGBUILD-aur b/gconf/PKGBUILD-aur new file mode 100644 index 0000000..a2d6e26 --- /dev/null +++ b/gconf/PKGBUILD-aur @@ -0,0 +1,74 @@ +# Maintainer: João Figueiredo +# Contributor: Jan de Groot + +pkgname=gconf +pkgver=3.2.6+11+g07808097 +pkgrel=10 +pkgdesc="An obsolete configuration database system" +url="https://projects-old.gnome.org/gconf/" +arch=($CARCH) +license=(LGPL) +depends=(libxml2 polkit libldap dbus-glib python) +makedepends=(git intltool gtk-doc gobject-introspection gnome-common) +install=gconf.install +_commit=0780809731c8ab1c364202b1900d3df106b28626 # The latest and last commit, dug out from deep within the waves of time... +source=("git+https://gitlab.gnome.org/Archive/gconf.git#commit=$_commit" + 01_xml-gettext-domain.patch gconf-reload.patch + gconf-merge-schema gconfpkg gconf-{install,remove}.hook) +sha256sums=('SKIP' + 'c883dec2b96978874a53700cfe7f26f24f8296767203e970bc6402b4b9945eb8' + '567b78d8b4b4bbcb77c5f134d57bc503c34867fcc6341c0b01716bcaa4a21694' + 'ee6b6e6f4975dad13a8c45f1c1f0547a99373bdecdcd6604bfc12965c328a028' + 'bf1928718caa5df2b9e54a13cfd0f15a8fe0e09e86b84385ce023616a114e898' + '2732b2a6b187c5620105a036bde12edee99669605f70cbde56fe5f39619c3dc0' + '436a65ff290095bc3d35d7d6297cf4d647f61e9f9922cea7ef9f1e251b447ff7') + +prepare() { + cd $pkgname + + # Patch from fedora - reloads gconf after installing schemas + patch -Np1 -i ../gconf-reload.patch + + # http://bugzilla.gnome.org/show_bug.cgi?id=568845 + patch -Np1 -i ../01_xml-gettext-domain.patch + + # The following line copied from Fedora + # https://src.fedoraproject.org/rpms/GConf2/blob/70ed26d67b563d858a84505622d11f41879a6b37/f/GConf2.spec#_90 + 2to3 --write --nobackup gsettings/gsettings-schema-convert + + sed -i '1s|#!/usr/bin/env python$|#!/usr/bin/python|' gsettings/gsettings-schema-convert + + NOCONFIGURE=1 ./autogen.sh +} + +build() { + cd $pkgname + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --libexecdir=/usr/lib \ + --enable-defaults-service \ + --disable-gtk-doc \ + --disable-static \ + --disable-orbit + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +check() { + cd $pkgname + make check +} + +package() { + DESTDIR="$pkgdir" make -C $pkgname install + + install -d "$pkgdir/etc/gconf/gconf.xml.system" + install -D gconf-merge-schema gconfpkg -t "$pkgdir/usr/bin" + install -Dm644 ./*.hook -t "$pkgdir/usr/share/libalpm/hooks" + + # fix dbus policy location - --with-dbusdir doesn't work + install -Dm644 "$pkgdir/etc/dbus-1/system.d/org.gnome.GConf.Defaults.conf" -t "$pkgdir/usr/share/dbus-1/system.d" + rm -rf "$pkgdir/etc/dbus-1/" +} diff --git a/gconf/clean b/gconf/clean new file mode 100644 index 0000000..4004be8 --- /dev/null +++ b/gconf/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,gconf} diff --git a/gconf/deps b/gconf/deps new file mode 100644 index 0000000..c7b46bf --- /dev/null +++ b/gconf/deps @@ -0,0 +1,11 @@ +polkit +dbus-glib +python +git +intltool +gtk-doc +gobject-introspection +gnome-common +automake +autoconf +gettext diff --git a/gconf/gconf-install.hook b/gconf/gconf-install.hook new file mode 100644 index 0000000..9991854 --- /dev/null +++ b/gconf/gconf-install.hook @@ -0,0 +1,11 @@ +[Trigger] +Type = File +Operation = Install +Operation = Upgrade +Target = usr/share/gconf/schemas/*.schemas + +[Action] +Description = Installing GConf schemas... +When = PostTransaction +Exec = /bin/bash -c 'while read -r f; do f=$(basename "$f" .schemas); /usr/bin/gconfpkg --install $f; done' +NeedsTargets diff --git a/gconf/gconf-merge-schema b/gconf/gconf-merge-schema new file mode 100755 index 0000000..992c162 --- /dev/null +++ b/gconf/gconf-merge-schema @@ -0,0 +1,34 @@ +#!/bin/bash +if [ ! "$1" -a ! "$2" ]; then + echo "Usage: $0 output.schemas [--domain gettextdomain] file1.schemas [file2.schemas [...]]" + exit 1 +fi + +OUTFILE="$1" +DOMAIN="" +shift + +if [ "$1" = "--domain" ]; then + shift + DOMAIN=$1 + shift +fi + +echo '' > "$OUTFILE" +echo '' >> "$OUTFILE" + +while [ "$1" ]; do + if [ -f "$1" ]; then + sed -e '/||g' \ + -e 's|||g' \ + -e 's|||g' \ + -e 's|||g' "$1" >> "$OUTFILE" + fi + shift +done + +echo '' >> "$OUTFILE" +if [ "$DOMAIN" != "" ]; then + sed -ri "s/^([[:space:]]*)()/\1$DOMAIN<\/gettext_domain>\n\1\2/; /^[[:space:]]*[[:space:]]*\$/ d; /^$/d; s/<\/schema>$/&\n/" "$OUTFILE" +fi diff --git a/gconf/gconf-reload.patch b/gconf/gconf-reload.patch new file mode 100644 index 0000000..910f0da --- /dev/null +++ b/gconf/gconf-reload.patch @@ -0,0 +1,20 @@ +--- GConf-2.16.0/gconf/gconftool.c.orig 2006-10-14 17:37:14.000000000 +0000 ++++ GConf-2.16.0/gconf/gconftool.c 2006-10-14 17:39:27.000000000 +0000 +@@ -963,6 +963,8 @@ main (int argc, char** argv) + + gconf_engine_unref (conf); + ++ g_spawn_command_line_sync ("/usr/bin/killall -q -TERM " GCONF_SERVERDIR "/" GCONFD, NULL, NULL, NULL, NULL); ++ + return retval; + } + +@@ -975,6 +977,8 @@ main (int argc, char** argv) + + gconf_engine_unref (conf); + ++ g_spawn_command_line_sync ("/usr/bin/killall -q -TERM " GCONF_SERVERDIR "/" GCONFD, NULL, NULL, NULL, NULL); ++ + return retval; + } + diff --git a/gconf/gconf-remove.hook b/gconf/gconf-remove.hook new file mode 100644 index 0000000..8206d1e --- /dev/null +++ b/gconf/gconf-remove.hook @@ -0,0 +1,10 @@ +[Trigger] +Type = File +Operation = Remove +Target = usr/share/gconf/schemas/*.schemas + +[Action] +Description = Uninstalling GConf schemas... +When = PreTransaction +Exec = /bin/bash -c 'while read -r f; do f=$(basename "$f" .schemas); /usr/bin/gconfpkg --uninstall $f; done' +NeedsTargets diff --git a/gconf/gconf.install b/gconf/gconf.install new file mode 100644 index 0000000..c88756b --- /dev/null +++ b/gconf/gconf.install @@ -0,0 +1,3 @@ +post_upgrade() { + pkill -fx /usr/lib/gconfd-2 || : +} diff --git a/gconf/gconfpkg b/gconf/gconfpkg new file mode 100755 index 0000000..72021e4 --- /dev/null +++ b/gconf/gconfpkg @@ -0,0 +1,50 @@ +#!/bin/sh + +usage() { +cat << _EOF +Usage: + gconfpkg [OPTION] [PACKAGE] + + Help Options: + -?, --help Show help options + + Application Options: + --install Install schemas for a given package + --uninstall Uninstall schemas for a given package + +_EOF +} + +install() { + GCONF_CONFIG_SOURCE=`/usr/bin/gconftool-2 --get-default-source` \ + /usr/bin/gconftool-2 --makefile-install-rule /usr/share/gconf/schemas/${pkgname}.schemas >/dev/null +} + +uninstall() { + if [ -f /usr/share/gconf/schemas/${pkgname}.schemas ]; then + schemas=/usr/share/gconf/schemas/${pkgname}.schemas + elif [ -f /opt/gnome/share/gconf/schemas/${pkgname}.schemas ]; then + schemas=/opt/gnome/share/gconf/schemas/${pkgname}.schemas + else + schemas=`pacman -Ql ${pkgname} | grep 'gconf/schemas/.*schemas$' | awk '{ print $2 }'` + fi + GCONF_CONFIG_SOURCE=`/usr/bin/gconftool-2 --get-default-source` \ + /usr/bin/gconftool-2 --makefile-uninstall-rule ${schemas} >/dev/null +} + +if [ -z "$2" ]; then + usage +else + pkgname="$2" + case "$1" in + --install) + install + ;; + --uninstall) + uninstall + ;; + *) + usage + ;; + esac +fi diff --git a/gconf/sums b/gconf/sums new file mode 100644 index 0000000..9da491a --- /dev/null +++ b/gconf/sums @@ -0,0 +1,6 @@ +01_xml-gettext-domain.patch +gconf-reload.patch +gconf-merge-schema +gconfpkg +gconf-install.hook +gconf-remove.hook diff --git a/gconf/time b/gconf/time new file mode 100644 index 0000000..8c5ad6a --- /dev/null +++ b/gconf/time @@ -0,0 +1,5 @@ + +real 0m33.680s +user 0m40.455s +sys 0m3.930s + diff --git a/gdb/PKGBUILD b/gdb/PKGBUILD new file mode 100644 index 0000000..c881bb3 --- /dev/null +++ b/gdb/PKGBUILD @@ -0,0 +1,74 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgbase=gdb +# gdb-common is a package that contains files common for all cross compiled versions +# of gdb (for arm/avr/...) +pkgname=(gdb gdb-common) +pkgver=11.2 +pkgrel=01 +pkgdesc='The GNU Debugger' +arch=(x86_64) +url='https://www.gnu.org/software/gdb/' +makedepends=(glibc gcc-libs texinfo python guile ncurses expat xz mpfr source-highlight + readline) +source=(https://ftp.gnu.org/gnu/gdb/${pkgname}-${pkgver}.tar.xz{,.sig}) + +prepare() { + cd gdb-$pkgver + + # hack! - libiberty configure tests for header files using "$CPP $CPPFLAGS" + sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" libiberty/configure +} + +build() { + cd gdb-$pkgver + + mkdir -p build && cd build + ../configure \ + --prefix=/usr \ + --disable-nls \ + --enable-source-highlight \ + --enable-tui \ + --with-system-readline \ + --with-python=/usr/bin/python \ + --with-guile=guile-2.2 \ + --with-system-gdbinit=/etc/gdb/gdbinit + make +} + +package_gdb-common() { + depends=(python guile) + + cd gdb-$pkgver/build + make -C gdb/data-directory DESTDIR="$pkgdir" install +} + +package_gdb() { + depends=(glibc ncurses libncursesw.so gcc-libs expat xz mpfr source-highlight gdb-common=$pkgver + readline libreadline.so guile python libelf) + backup=(etc/gdb/gdbinit) + + cd gdb-$pkgver/build + make -C gdb DESTDIR="$pkgdir" install + make -C gdbserver DESTDIR="$pkgdir" install + + # install "custom" system gdbinit + install -dm 755 "$pkgdir/etc/gdb" + touch "$pkgdir/etc/gdb/gdbinit" + + # comes from gdb-common + rm -r "$pkgdir/usr/share/gdb/" +} + + +#---- license gpg-key sha256sums ---- +license=(GPL3) +validpgpkeys=('F40ADB902B24264AA42E50BF92EDB04BFF325CF3') # Joel Brobecker + +sha256sums=(1497c36a71881b8671a9a84a0ee40faab788ca30d7ba19d8463c3cc787152e32 # gdb-11.2.tar.xz + 1e7bb5cb9a0521762d244f268700a4600a219d40b95965e8257e4b22b03634fa) # gdb-11.2.tar.xz.sig diff --git a/gdb/PKGBUILD-arch b/gdb/PKGBUILD-arch new file mode 100644 index 0000000..ac84cd0 --- /dev/null +++ b/gdb/PKGBUILD-arch @@ -0,0 +1,72 @@ +# Maintainer: Levente Polyak +# Maintainer: Anatol Pomozov +# Contributor: Allan McRae +# Contributor: Jan de Groot + +pkgbase=gdb +# gdb-common is a package that contains files common for all cross compiled versions +# of gdb (for arm/avr/...) +pkgname=(gdb gdb-common) +pkgver=11.2 +pkgrel=1 +pkgdesc='The GNU Debugger' +arch=(x86_64) +url='https://www.gnu.org/software/gdb/' +license=(GPL3) +makedepends=(glibc gcc-libs texinfo python guile ncurses expat xz mpfr source-highlight + readline) +source=(https://ftp.gnu.org/gnu/gdb/${pkgname}-${pkgver}.tar.xz{,.sig}) +sha1sums=('7c72b1d4a38bb6e155aaad29f4c1abf818b4595d' + 'SKIP') +b2sums=('66ce7e12c99c33c8b4e6ababa673204aab525e72c90ba54cc34a5fd69948a09dc2a9ef2050764b2464544231b1d1a6431279c2877388551ca6fbf384a3f9b464' + 'SKIP') +validpgpkeys=('F40ADB902B24264AA42E50BF92EDB04BFF325CF3') # Joel Brobecker + +prepare() { + cd gdb-$pkgver + + # hack! - libiberty configure tests for header files using "$CPP $CPPFLAGS" + sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" libiberty/configure +} + +build() { + cd gdb-$pkgver + + mkdir -p build && cd build + ../configure \ + --prefix=/usr \ + --disable-nls \ + --enable-source-highlight \ + --enable-tui \ + --with-system-readline \ + --with-python=/usr/bin/python \ + --with-guile=guile-2.2 \ + --with-system-gdbinit=/etc/gdb/gdbinit + make +} + +package_gdb-common() { + depends=(python guile) + + cd gdb-$pkgver/build + make -C gdb/data-directory DESTDIR="$pkgdir" install +} + +package_gdb() { + depends=(glibc ncurses libncursesw.so gcc-libs expat xz mpfr source-highlight gdb-common=$pkgver + readline libreadline.so guile python libelf) + backup=(etc/gdb/gdbinit) + + cd gdb-$pkgver/build + make -C gdb DESTDIR="$pkgdir" install + make -C gdbserver DESTDIR="$pkgdir" install + + # install "custom" system gdbinit + install -dm 755 "$pkgdir/etc/gdb" + touch "$pkgdir/etc/gdb/gdbinit" + + # comes from gdb-common + rm -r "$pkgdir/usr/share/gdb/" +} + +# vim: ts=2 sw=2 et: diff --git a/gdb/clean b/gdb/clean new file mode 100644 index 0000000..fa64a93 --- /dev/null +++ b/gdb/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,gdb*tar.xz*} diff --git a/gdb/deps b/gdb/deps new file mode 100644 index 0000000..792d1d1 --- /dev/null +++ b/gdb/deps @@ -0,0 +1,2 @@ +python +source-highlight diff --git a/gdb/key b/gdb/key new file mode 100644 index 0000000..0b9f733 --- /dev/null +++ b/gdb/key @@ -0,0 +1 @@ +gpg -v --recv-key 92EDB04BFF325CF3 diff --git a/gdb/time b/gdb/time new file mode 100644 index 0000000..e102b64 --- /dev/null +++ b/gdb/time @@ -0,0 +1,4 @@ + +real 6m36.201s +user 19m7.648s +sys 1m26.261s diff --git a/git/PKGBUILD b/git/PKGBUILD new file mode 100644 index 0000000..b3d70ee --- /dev/null +++ b/git/PKGBUILD @@ -0,0 +1,134 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=git +pkgver=2.35.1 +pkgrel=01 +pkgdesc='the fast distributed version control system w/o systemd' +arch=('x86_64') +url='https://git-scm.com/' +depends=('curl' 'expat' 'perl' 'perl-error' 'perl-mailtools' + 'openssl' 'pcre2' 'grep' 'shadow' 'zlib') +makedepends=('python' 'libgnome-keyring' 'xmlto' 'asciidoc') +optdepends=('tk: gitk and git gui' + 'perl-libwww: git svn' + 'perl-term-readkey: git svn and interactive.singlekey setting' + 'perl-io-socket-ssl: git send-email TLS support' + 'perl-authen-sasl: git send-email TLS support' + 'perl-mediawiki-api: git mediawiki support' + 'perl-datetime-format-iso8601: git mediawiki support' + 'perl-lwp-protocol-https: git mediawiki https support' + 'perl-cgi: gitweb (web interface) support' + 'python: git svn & git p4' + 'subversion: git svn' + 'org.freedesktop.secrets: keyring credential helper' + 'libsecret: libsecret credential helper') +install=git.install +source=("https://www.kernel.org/pub/software/scm/git/git-$pkgver.tar."{xz,sign} +# 'git-daemon@.service' +# 'git-daemon.socket' + 'git-sysusers.conf') + +_make_paths=( + prefix='/usr' + gitexecdir='/usr/lib/git-core' + perllibdir="$(/usr/bin/perl -MConfig -wle 'print $Config{installvendorlib}')" +) + +_make_options=( + CFLAGS="$CFLAGS" + LDFLAGS="$LDFLAGS" + INSTALL_SYMLINKS=1 + MAN_BOLD_LITERAL=1 + NO_PERL_CPAN_FALLBACKS=1 + USE_LIBPCRE2=1 +) + +build() { + cd "$srcdir/$pkgname-$pkgver" + + make \ + "${_make_paths[@]}" \ + "${_make_options[@]}" \ + all man + + make -C contrib/credential/gnome-keyring + make -C contrib/credential/libsecret + make -C contrib/subtree "${_make_paths[@]}" all man + make -C contrib/mw-to-git "${_make_paths[@]}" all + make -C contrib/diff-highlight "${_make_paths[@]}" +} + +check() { + cd "$srcdir/$pkgname-$pkgver" + + local jobs + jobs=$(expr "$MAKEFLAGS" : '.*\(-j[0-9]*\).*') || true + mkdir -p /dev/shm/git-test + # explicitly specify SHELL to avoid a test failure in t/t9903-bash-prompt.sh + # which is caused by 'git rebase' trying to use builduser's SHELL inside the + # build chroot (i.e.: /usr/bin/nologin) + SHELL=/bin/sh \ + make \ + "${_make_paths[@]}" \ + "${_make_options[@]}" \ + NO_SVN_TESTS=y \ + DEFAULT_TEST_TARGET=prove \ + GIT_PROVE_OPTS="$jobs -Q" \ + GIT_TEST_OPTS="--root=/dev/shm/git-test" \ + test +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + + make \ + "${_make_paths[@]}" \ + "${_make_options[@]}" \ + DESTDIR="$pkgdir" \ + install install-man + + # bash completion + mkdir -p "$pkgdir"/usr/share/bash-completion/completions/ + install -m 0644 ./contrib/completion/git-completion.bash "$pkgdir"/usr/share/bash-completion/completions/git + # fancy git prompt + mkdir -p "$pkgdir"/usr/share/git/ + install -m 0644 ./contrib/completion/git-prompt.sh "$pkgdir"/usr/share/git/git-prompt.sh + # gnome credentials helper (deprecated, but we will keep it as long there is no extra cost) + # https://gitlab.gnome.org/GNOME/libgnome-keyring/commit/6a5adea4aec93 + install -m 0755 contrib/credential/gnome-keyring/git-credential-gnome-keyring \ + "$pkgdir"/usr/lib/git-core/git-credential-gnome-keyring + make -C contrib/credential/gnome-keyring clean + # libsecret credentials helper + install -m 0755 contrib/credential/libsecret/git-credential-libsecret \ + "$pkgdir"/usr/lib/git-core/git-credential-libsecret + make -C contrib/credential/libsecret clean + # subtree installation + make -C contrib/subtree "${_make_paths[@]}" DESTDIR="$pkgdir" install install-man + # mediawiki installation + make -C contrib/mw-to-git "${_make_paths[@]}" DESTDIR="$pkgdir" install + # the rest of the contrib stuff + find contrib/ -name '.gitignore' -delete + cp -a ./contrib/* "$pkgdir"/usr/share/git/ + +# # git-daemon via systemd socket activation +# install -D -m 0644 "$srcdir"/git-daemon@.service "$pkgdir"/usr/lib/systemd/system/git-daemon@.service +# install -D -m 0644 "$srcdir"/git-daemon.socket "$pkgdir"/usr/lib/systemd/system/git-daemon.socket + + # sysusers file + install -D -m 0644 "$srcdir"/git-sysusers.conf "$pkgdir"/usr/lib/sysusers.d/git.conf +} + +#---- license gpg-key sha256sums ---- + +license=('GPL2') + +validpgpkeys=('96E07AF25771955980DAD10020D04E5A713660A7') # Junio C Hamano + +sha256sums=(d768528e6443f65a203036266f1ca50f9d127ba89751e32ead37117ed9191080 # git-2.35.1.tar.xz + 6b630d0bc76d27a5f7b99e2d9e5fb83fb7d202054697fb682a6cb134e530a011 # git-2.35.1.tar.sign + 7630e8245526ad80f703fac9900a1328588c503ce32b37b9f8811674fcda4a45) # git-sysusers.conf + diff --git a/git/PKGBUILD-arch b/git/PKGBUILD-arch new file mode 100644 index 0000000..a8f26ab --- /dev/null +++ b/git/PKGBUILD-arch @@ -0,0 +1,127 @@ +# Maintainer: Christian Hesse +# Maintainer: Dan McGee + +pkgname=git +pkgver=2.35.0 +pkgrel=1 +pkgdesc='the fast distributed version control system' +arch=('x86_64') +url='https://git-scm.com/' +license=('GPL2') +depends=('curl' 'expat' 'perl' 'perl-error' 'perl-mailtools' + 'openssl' 'pcre2' 'grep' 'shadow' 'zlib') +makedepends=('python' 'libgnome-keyring' 'xmlto' 'asciidoc') +optdepends=('tk: gitk and git gui' + 'perl-libwww: git svn' + 'perl-term-readkey: git svn and interactive.singlekey setting' + 'perl-io-socket-ssl: git send-email TLS support' + 'perl-authen-sasl: git send-email TLS support' + 'perl-mediawiki-api: git mediawiki support' + 'perl-datetime-format-iso8601: git mediawiki support' + 'perl-lwp-protocol-https: git mediawiki https support' + 'perl-cgi: gitweb (web interface) support' + 'python: git svn & git p4' + 'subversion: git svn' + 'org.freedesktop.secrets: keyring credential helper' + 'libsecret: libsecret credential helper') +install=git.install +validpgpkeys=('96E07AF25771955980DAD10020D04E5A713660A7') # Junio C Hamano +source=("https://www.kernel.org/pub/software/scm/git/git-$pkgver.tar."{xz,sign} + 'git-daemon@.service' + 'git-daemon.socket' + 'git-sysusers.conf') +sha256sums=('47e677b475226857ceece569fb6ded8b85838ede97ae1e01bd365ac32a468fc8' + 'SKIP' + '14c0b67cfe116b430645c19d8c4759419657e6809dfa28f438c33a005245ad91' + 'ac4c90d62c44926e6d30d18d97767efc901076d4e0283ed812a349aece72f203' + '7630e8245526ad80f703fac9900a1328588c503ce32b37b9f8811674fcda4a45') + +_make_paths=( + prefix='/usr' + gitexecdir='/usr/lib/git-core' + perllibdir="$(/usr/bin/perl -MConfig -wle 'print $Config{installvendorlib}')" +) + +_make_options=( + CFLAGS="$CFLAGS" + LDFLAGS="$LDFLAGS" + INSTALL_SYMLINKS=1 + MAN_BOLD_LITERAL=1 + NO_PERL_CPAN_FALLBACKS=1 + USE_LIBPCRE2=1 +) + +build() { + cd "$srcdir/$pkgname-$pkgver" + + make \ + "${_make_paths[@]}" \ + "${_make_options[@]}" \ + all man + + make -C contrib/credential/gnome-keyring + make -C contrib/credential/libsecret + make -C contrib/subtree "${_make_paths[@]}" all man + make -C contrib/mw-to-git "${_make_paths[@]}" all + make -C contrib/diff-highlight "${_make_paths[@]}" +} + +check() { + cd "$srcdir/$pkgname-$pkgver" + + local jobs + jobs=$(expr "$MAKEFLAGS" : '.*\(-j[0-9]*\).*') || true + mkdir -p /dev/shm/git-test + # explicitly specify SHELL to avoid a test failure in t/t9903-bash-prompt.sh + # which is caused by 'git rebase' trying to use builduser's SHELL inside the + # build chroot (i.e.: /usr/bin/nologin) + SHELL=/bin/sh \ + make \ + "${_make_paths[@]}" \ + "${_make_options[@]}" \ + NO_SVN_TESTS=y \ + DEFAULT_TEST_TARGET=prove \ + GIT_PROVE_OPTS="$jobs -Q" \ + GIT_TEST_OPTS="--root=/dev/shm/git-test" \ + test +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + + make \ + "${_make_paths[@]}" \ + "${_make_options[@]}" \ + DESTDIR="$pkgdir" \ + install install-man + + # bash completion + mkdir -p "$pkgdir"/usr/share/bash-completion/completions/ + install -m 0644 ./contrib/completion/git-completion.bash "$pkgdir"/usr/share/bash-completion/completions/git + # fancy git prompt + mkdir -p "$pkgdir"/usr/share/git/ + install -m 0644 ./contrib/completion/git-prompt.sh "$pkgdir"/usr/share/git/git-prompt.sh + # gnome credentials helper (deprecated, but we will keep it as long there is no extra cost) + # https://gitlab.gnome.org/GNOME/libgnome-keyring/commit/6a5adea4aec93 + install -m 0755 contrib/credential/gnome-keyring/git-credential-gnome-keyring \ + "$pkgdir"/usr/lib/git-core/git-credential-gnome-keyring + make -C contrib/credential/gnome-keyring clean + # libsecret credentials helper + install -m 0755 contrib/credential/libsecret/git-credential-libsecret \ + "$pkgdir"/usr/lib/git-core/git-credential-libsecret + make -C contrib/credential/libsecret clean + # subtree installation + make -C contrib/subtree "${_make_paths[@]}" DESTDIR="$pkgdir" install install-man + # mediawiki installation + make -C contrib/mw-to-git "${_make_paths[@]}" DESTDIR="$pkgdir" install + # the rest of the contrib stuff + find contrib/ -name '.gitignore' -delete + cp -a ./contrib/* "$pkgdir"/usr/share/git/ + + # git-daemon via systemd socket activation + install -D -m 0644 "$srcdir"/git-daemon@.service "$pkgdir"/usr/lib/systemd/system/git-daemon@.service + install -D -m 0644 "$srcdir"/git-daemon.socket "$pkgdir"/usr/lib/systemd/system/git-daemon.socket + + # sysusers file + install -D -m 0644 "$srcdir"/git-sysusers.conf "$pkgdir"/usr/lib/sysusers.d/git.conf +} diff --git a/git/PKGBUILD-arch.new b/git/PKGBUILD-arch.new new file mode 100644 index 0000000..d61ba73 --- /dev/null +++ b/git/PKGBUILD-arch.new @@ -0,0 +1,127 @@ +# Maintainer: Christian Hesse +# Maintainer: Dan McGee + +pkgname=git +pkgver=2.35.1 +pkgrel=1 +pkgdesc='the fast distributed version control system' +arch=('x86_64') +url='https://git-scm.com/' +license=('GPL2') +depends=('curl' 'expat' 'perl' 'perl-error' 'perl-mailtools' + 'openssl' 'pcre2' 'grep' 'shadow' 'zlib') +makedepends=('python' 'libgnome-keyring' 'xmlto' 'asciidoc') +optdepends=('tk: gitk and git gui' + 'perl-libwww: git svn' + 'perl-term-readkey: git svn and interactive.singlekey setting' + 'perl-io-socket-ssl: git send-email TLS support' + 'perl-authen-sasl: git send-email TLS support' + 'perl-mediawiki-api: git mediawiki support' + 'perl-datetime-format-iso8601: git mediawiki support' + 'perl-lwp-protocol-https: git mediawiki https support' + 'perl-cgi: gitweb (web interface) support' + 'python: git svn & git p4' + 'subversion: git svn' + 'org.freedesktop.secrets: keyring credential helper' + 'libsecret: libsecret credential helper') +install=git.install +validpgpkeys=('96E07AF25771955980DAD10020D04E5A713660A7') # Junio C Hamano +source=("https://www.kernel.org/pub/software/scm/git/git-$pkgver.tar."{xz,sign} + 'git-daemon@.service' + 'git-daemon.socket' + 'git-sysusers.conf') +sha256sums=('d768528e6443f65a203036266f1ca50f9d127ba89751e32ead37117ed9191080' + 'SKIP' + '14c0b67cfe116b430645c19d8c4759419657e6809dfa28f438c33a005245ad91' + 'ac4c90d62c44926e6d30d18d97767efc901076d4e0283ed812a349aece72f203' + '7630e8245526ad80f703fac9900a1328588c503ce32b37b9f8811674fcda4a45') + +_make_paths=( + prefix='/usr' + gitexecdir='/usr/lib/git-core' + perllibdir="$(/usr/bin/perl -MConfig -wle 'print $Config{installvendorlib}')" +) + +_make_options=( + CFLAGS="$CFLAGS" + LDFLAGS="$LDFLAGS" + INSTALL_SYMLINKS=1 + MAN_BOLD_LITERAL=1 + NO_PERL_CPAN_FALLBACKS=1 + USE_LIBPCRE2=1 +) + +build() { + cd "$srcdir/$pkgname-$pkgver" + + make \ + "${_make_paths[@]}" \ + "${_make_options[@]}" \ + all man + + make -C contrib/credential/gnome-keyring + make -C contrib/credential/libsecret + make -C contrib/subtree "${_make_paths[@]}" all man + make -C contrib/mw-to-git "${_make_paths[@]}" all + make -C contrib/diff-highlight "${_make_paths[@]}" +} + +check() { + cd "$srcdir/$pkgname-$pkgver" + + local jobs + jobs=$(expr "$MAKEFLAGS" : '.*\(-j[0-9]*\).*') || true + mkdir -p /dev/shm/git-test + # explicitly specify SHELL to avoid a test failure in t/t9903-bash-prompt.sh + # which is caused by 'git rebase' trying to use builduser's SHELL inside the + # build chroot (i.e.: /usr/bin/nologin) + SHELL=/bin/sh \ + make \ + "${_make_paths[@]}" \ + "${_make_options[@]}" \ + NO_SVN_TESTS=y \ + DEFAULT_TEST_TARGET=prove \ + GIT_PROVE_OPTS="$jobs -Q" \ + GIT_TEST_OPTS="--root=/dev/shm/git-test" \ + test +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + + make \ + "${_make_paths[@]}" \ + "${_make_options[@]}" \ + DESTDIR="$pkgdir" \ + install install-man + + # bash completion + mkdir -p "$pkgdir"/usr/share/bash-completion/completions/ + install -m 0644 ./contrib/completion/git-completion.bash "$pkgdir"/usr/share/bash-completion/completions/git + # fancy git prompt + mkdir -p "$pkgdir"/usr/share/git/ + install -m 0644 ./contrib/completion/git-prompt.sh "$pkgdir"/usr/share/git/git-prompt.sh + # gnome credentials helper (deprecated, but we will keep it as long there is no extra cost) + # https://gitlab.gnome.org/GNOME/libgnome-keyring/commit/6a5adea4aec93 + install -m 0755 contrib/credential/gnome-keyring/git-credential-gnome-keyring \ + "$pkgdir"/usr/lib/git-core/git-credential-gnome-keyring + make -C contrib/credential/gnome-keyring clean + # libsecret credentials helper + install -m 0755 contrib/credential/libsecret/git-credential-libsecret \ + "$pkgdir"/usr/lib/git-core/git-credential-libsecret + make -C contrib/credential/libsecret clean + # subtree installation + make -C contrib/subtree "${_make_paths[@]}" DESTDIR="$pkgdir" install install-man + # mediawiki installation + make -C contrib/mw-to-git "${_make_paths[@]}" DESTDIR="$pkgdir" install + # the rest of the contrib stuff + find contrib/ -name '.gitignore' -delete + cp -a ./contrib/* "$pkgdir"/usr/share/git/ + + # git-daemon via systemd socket activation + install -D -m 0644 "$srcdir"/git-daemon@.service "$pkgdir"/usr/lib/systemd/system/git-daemon@.service + install -D -m 0644 "$srcdir"/git-daemon.socket "$pkgdir"/usr/lib/systemd/system/git-daemon.socket + + # sysusers file + install -D -m 0644 "$srcdir"/git-sysusers.conf "$pkgdir"/usr/lib/sysusers.d/git.conf +} diff --git a/git/clean b/git/clean new file mode 100644 index 0000000..c56dff3 --- /dev/null +++ b/git/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,git-*tar.*} diff --git a/git/deps b/git/deps new file mode 100644 index 0000000..9420f8e --- /dev/null +++ b/git/deps @@ -0,0 +1,3 @@ +python asciidoc xmlto libgnome-keyring +perl-error perl-mailtools +gettext diff --git a/git/git-sysusers.conf b/git/git-sysusers.conf new file mode 100644 index 0000000..8189065 --- /dev/null +++ b/git/git-sysusers.conf @@ -0,0 +1 @@ +u git - "git daemon user" / /usr/bin/git-shell diff --git a/git/git.install b/git/git.install new file mode 100644 index 0000000..453050d --- /dev/null +++ b/git/git.install @@ -0,0 +1,14 @@ +#!/bin/sh + +post_install() { + # make git-shell a valid shell + if ! grep -qe '^/usr/bin/git-shell$' etc/shells; then + echo '/usr/bin/git-shell' >> etc/shells + fi +} + +# do not modify user settings (shell) in post-upgrade function! + +post_remove() { + sed -i -r '/^\/usr\/bin\/git-shell$/d' etc/shells +} diff --git a/git/key b/git/key new file mode 100644 index 0000000..6056b0d --- /dev/null +++ b/git/key @@ -0,0 +1 @@ +gpg -v --recv-key B0B5E88696AFE6CB diff --git a/git/time b/git/time new file mode 100644 index 0000000..75dff4d --- /dev/null +++ b/git/time @@ -0,0 +1,5 @@ + +real 6m27.758s +user 19m55.600s +sys 3m18.450s + diff --git a/gitea-git/PKGBUILD b/gitea-git/PKGBUILD new file mode 100644 index 0000000..58a0f64 --- /dev/null +++ b/gitea-git/PKGBUILD @@ -0,0 +1,86 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +_pkgname='gitea' +pkgname=gitea-git +#pkgver=v1.15.0_dev_359_g2a998048ef +pkgver=v1.17.0_dev_49_g401e5c8174 +#4ac79e937fc6d75224eb7178e9695aa0cef4c12f refs/tags/v1.17.0-dev +#^4563148a61ba892e8f2bb66342f00a950bcd5315 +pkgrel=1 +pkgdesc='Painless self-hosted Git service. Community managed fork of Gogs. w/o systemd - dev 0.17 edition' +arch=('x86_64') +url='https://gitea.io/' +depends=('git') +makedepends=('go' 'npm') +optdepends=( + 'mariadb: MariaDB support' + 'memcached: MemCached support' + 'openssh: GIT over SSH support' + 'pam: Authentication via PAM support' + 'postgresql: PostgreSQL support' + 'redis: Redis support' + 'sqlite: SQLite support' +) +backup=('etc/gitea/app.ini') +conflicts=('gitea') +provides=('gitea') +source=( + git+https://github.com/go-gitea/gitea.git#branch=main + gitea.tmpfiles + gitea.sysusers + app.ini +) + +pkgver() { + cd "${srcdir}/${_pkgname}" + git describe --tags --long | sed s/-/_/g +} + +prepare() { + cd ${srcdir}/${_pkgname} + # Be nice to people with read-only home + GOCACHE="${srcdir}/cache" make vendor +} + +build() { + cd ${srcdir}/${_pkgname} + # Again, be nice to people with read-only home + export GOCACHE="${srcdir}/cache" + export CGO_CPPFLAGS="${CPPFLAGS}" + export CGO_CFLAGS="${CFLAGS}" + export CGO_CXXFLAGS="${CXXFLAGS}" + export CGO_LDFLAGS="${LDFLAGS}" + export LDFLAGS="-X 'code.gitea.io/gitea/modules/setting.AppWorkPath=/var/lib/gitea/'" + export EXTRA_GOFLAGS="-buildmode=pie -trimpath -mod=readonly -modcacherw" + export TAGS="bindata sqlite sqlite_unlock_notify pam" + make -j1 # building in parallel breaks the bindata target which relies on execution order +} + +package() { + install -Dm755 ${_pkgname}/${_pkgname} -t "${pkgdir}"/usr/bin/ + install -Dm644 ${_pkgname}/LICENSE -t "${pkgdir}"/usr/share/licenses/${pkgname}/ + install -Dm644 ${_pkgname}.tmpfiles "${pkgdir}"/usr/lib/tmpfiles.d/${_pkgname}.conf + install -Dm644 ${_pkgname}.sysusers "${pkgdir}"/usr/lib/sysusers.d/${_pkgname}.conf + install -Dm644 app.ini "${pkgdir}"/etc/gitea/app.ini +} + +#---- license gpg-key sha256sums ---- + +license=('MIT') + +sha512sums=( + 'SKIP' + '89bf119a91fd48ed35c06131c67de1b4300bd2e79522c47aee9a73d7f1ebb08d9bceadc37408bd2425475d92c8bf59d87a799f2ce0a46bee860bf9fc7a904103' +# -- sysd.service -- 'd65e053a98976423c6c1f3a4b6b0fd40f51e50a32d7afc651fc02414bb9f3bf574a58cc6a8c96760b85ab9f4f2bfcd0884bd7e9edcc2d71f07e7c1a548783c4c' + '77f672ed82bc8f78ca04b1e2b7c7d026cb897da6e4f057817adbe1242bf8a67875061553806e6b027cdb3266cdf217ee3993efd9242a66c5802ed34344b5ded1' + '704930578fe4231c45bcfdcc65df5d4f523b96909e670cc6e4f098770043b0f47fe5d90621788bc6ba300b0f19909a203068d2a1c142e7c5d29dc03a0dc5fc1d' +) + +sha256sums=(SKIP + 1521fd7edc3830c695698ffe9835709f1408040b5ec989f07410972c894fa8ba # gitea.tmpfiles + 2abc51ccd0086bb996194bb7fb241a3f26d84f518417c872b66a3db8970da7e4 # gitea.sysusers + fefa585900fbd97aae2783c89bb13be96990c573b9828020dbd351337edc0ef4) # app.ini diff --git a/gitea-git/PKGBUILD-aur b/gitea-git/PKGBUILD-aur new file mode 100644 index 0000000..8ef2da7 --- /dev/null +++ b/gitea-git/PKGBUILD-aur @@ -0,0 +1,81 @@ +# Maintainer: kageru +# Maintainer: Sam Whited +# Contributor: Francois Menning +# Contributor: Anton Kudryavtsev +# Contributor: Frederik Schwan +# Contributor: Thomas Fanninger +# Contributor: Alexander F Rødseth +# Contributor: Thomas Laroche + +_pkgname='gitea' +pkgname=gitea-git +pkgver=v1.15.0_dev_359_g2a998048ef +pkgrel=1 +pkgdesc='Painless self-hosted Git service. Community managed fork of Gogs.' +arch=('x86_64' 'i686' 'arm' 'armv6h' 'armv7h' 'aarch64') +url='https://gitea.io/' +license=('MIT') +depends=('git') +makedepends=('go' 'npm') +optdepends=( + 'mariadb: MariaDB support' + 'memcached: MemCached support' + 'openssh: GIT over SSH support' + 'pam: Authentication via PAM support' + 'postgresql: PostgreSQL support' + 'redis: Redis support' + 'sqlite: SQLite support' +) +backup=('etc/gitea/app.ini') +conflicts=('gitea') +provides=('gitea') +source=( + git+https://github.com/go-gitea/gitea.git#branch=main + gitea.tmpfiles + gitea.service + gitea.sysusers + app.ini +) +sha512sums=( + 'SKIP' + '89bf119a91fd48ed35c06131c67de1b4300bd2e79522c47aee9a73d7f1ebb08d9bceadc37408bd2425475d92c8bf59d87a799f2ce0a46bee860bf9fc7a904103' + 'd65e053a98976423c6c1f3a4b6b0fd40f51e50a32d7afc651fc02414bb9f3bf574a58cc6a8c96760b85ab9f4f2bfcd0884bd7e9edcc2d71f07e7c1a548783c4c' + '77f672ed82bc8f78ca04b1e2b7c7d026cb897da6e4f057817adbe1242bf8a67875061553806e6b027cdb3266cdf217ee3993efd9242a66c5802ed34344b5ded1' + '704930578fe4231c45bcfdcc65df5d4f523b96909e670cc6e4f098770043b0f47fe5d90621788bc6ba300b0f19909a203068d2a1c142e7c5d29dc03a0dc5fc1d' +) + +pkgver() { + cd "${srcdir}/${_pkgname}" + git describe --tags --long | sed s/-/_/g +} + +prepare() { + cd ${srcdir}/${_pkgname} + # Be nice to people with read-only home + GOCACHE="${srcdir}/cache" make vendor +} + +build() { + cd ${srcdir}/${_pkgname} + # Again, be nice to people with read-only home + export GOCACHE="${srcdir}/cache" + export CGO_CPPFLAGS="${CPPFLAGS}" + export CGO_CFLAGS="${CFLAGS}" + export CGO_CXXFLAGS="${CXXFLAGS}" + export CGO_LDFLAGS="${LDFLAGS}" + export LDFLAGS="-X 'code.gitea.io/gitea/modules/setting.AppWorkPath=/var/lib/gitea/'" + export EXTRA_GOFLAGS="-buildmode=pie -trimpath -mod=readonly -modcacherw" + export TAGS="bindata sqlite sqlite_unlock_notify pam" + make -j1 # building in parallel breaks the bindata target which relies on execution order +} + +package() { + install -Dm755 ${_pkgname}/${_pkgname} -t "${pkgdir}"/usr/bin/ + install -Dm644 ${_pkgname}/LICENSE -t "${pkgdir}"/usr/share/licenses/${pkgname}/ + install -Dm644 ${_pkgname}.service -t "${pkgdir}"/usr/lib/systemd/system/ + install -Dm644 ${_pkgname}.tmpfiles "${pkgdir}"/usr/lib/tmpfiles.d/${_pkgname}.conf + install -Dm644 ${_pkgname}.sysusers "${pkgdir}"/usr/lib/sysusers.d/${_pkgname}.conf + install -Dm644 app.ini "${pkgdir}"/etc/gitea/app.ini +} + +# vim: ts=2 sw=2 et: diff --git a/gitea-git/app.ini b/gitea-git/app.ini new file mode 100644 index 0000000..ec4ff4a --- /dev/null +++ b/gitea-git/app.ini @@ -0,0 +1,20 @@ +; Gitea no longer contains a default config file +; and instead expects the user to only define +; the settings they want to change. +; This file contains the settings that +; used to be in gitea-arch-defaults.patch + +RUN_USER = gitea + +[repository] +ROOT = /var/lib/gitea/repos +; set this here so the default isn’t sneakily changed upstream +DEFAULT_BRANCH = master + +[database] +LOG_SQL = false + +[log] +ROOT_PATH = /var/log/gitea/ +MODE = console, file +LEVEL = Info diff --git a/gitea-git/clean b/gitea-git/clean new file mode 100644 index 0000000..a4b5037 --- /dev/null +++ b/gitea-git/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,gitea} diff --git a/gitea-git/deps b/gitea-git/deps new file mode 100644 index 0000000..862a839 --- /dev/null +++ b/gitea-git/deps @@ -0,0 +1,3 @@ +go +npm +git diff --git a/gitea-git/gitea.sysusers b/gitea-git/gitea.sysusers new file mode 100644 index 0000000..dad24d6 --- /dev/null +++ b/gitea-git/gitea.sysusers @@ -0,0 +1 @@ +u gitea - "Gitea daemon user" /var/lib/gitea /usr/bin/bash diff --git a/gitea-git/gitea.tmpfiles b/gitea-git/gitea.tmpfiles new file mode 100644 index 0000000..7d92761 --- /dev/null +++ b/gitea-git/gitea.tmpfiles @@ -0,0 +1,10 @@ +d /var/lib/gitea 0750 +d /var/lib/gitea/attachments 0750 +d /var/lib/gitea/data 0750 +d /var/lib/gitea/indexers 0750 +d /var/lib/gitea/repos 0750 +d /var/lib/gitea/tmp 0750 +Z /var/lib/gitea - gitea gitea +d /var/log/gitea 0750 gitea gitea +z /etc/gitea 0755 root gitea +z /etc/gitea/app.ini 0660 root gitea diff --git a/gksu/PKGBUILD b/gksu/PKGBUILD new file mode 100644 index 0000000..b14dbc2 --- /dev/null +++ b/gksu/PKGBUILD @@ -0,0 +1,46 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=gksu +pkgver=2.0.2 +pkgrel=07 +pkgdesc="A graphical frontend for su" +arch=(x86_64) +url="http://www.nongnu.org/gksu" +depends=("libgksu>=2.0.12" xorg-xauth) +makedepends=(gtk-doc intltool) +source=(https://people.debian.org/~kov/gksu/$pkgname-$pkgver.tar.gz + gksu-2.0.2-gksu_gksu.c.patch) + +prepare() { + cd $srcdir/$pkgname-$pkgver + patch -Np1 -i "${srcdir}/gksu-2.0.2-gksu_gksu.c.patch" +} + +build() { + cd "$pkgname-$pkgver" + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --disable-static \ + --disable-nautilus-extension + make +} + +package() { + cd "$pkgname-$pkgver" + + make DESTDIR="$pkgdir" install + + rm -rf "$pkgdir/usr/share/applications/" +} + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +sha256sums=(a1de3dca039d88c195fcdc9516379439a1d699750417f1e655aa2101a955ee5a # gksu-2.0.2.tar.gz + 1c08658a8946713e1da9d9ae5f808fc87a35661bbb28def1552d4c13e5d46600) # gksu-2.0.2-gksu_gksu.c.patch diff --git a/gksu/clean b/gksu/clean new file mode 100644 index 0000000..d720073 --- /dev/null +++ b/gksu/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,gk*.tar.gz*} diff --git a/gksu/deps b/gksu/deps new file mode 100644 index 0000000..188609f --- /dev/null +++ b/gksu/deps @@ -0,0 +1,6 @@ +gtk-doc +libgksu +xorg-xauth +gtk-doc +intltool +gettext diff --git a/gksu/gksu-2.0.2-gksu_gksu.c.patch b/gksu/gksu-2.0.2-gksu_gksu.c.patch new file mode 100644 index 0000000..2866b17 --- /dev/null +++ b/gksu/gksu-2.0.2-gksu_gksu.c.patch @@ -0,0 +1,21 @@ +diff -Nura gksu-2.0.2_orig/gksu/gksu.c gksu-2.0.2/gksu/gksu.c +--- gksu-2.0.2_orig/gksu/gksu.c 2021-12-11 13:53:13.538672664 +0100 ++++ gksu-2.0.2/gksu/gksu.c 2021-12-11 13:55:43.245408259 +0100 +@@ -148,7 +148,7 @@ + + diag_win = gtk_message_dialog_new_with_markup (NULL, GTK_DIALOG_MODAL, + type, GTK_BUTTONS_CLOSE, +- msg); ++ "%s", msg); + + gtk_signal_connect_object (GTK_OBJECT(diag_win), "delete_event", + GTK_SIGNAL_FUNC(gtk_main_quit), +@@ -180,7 +180,7 @@ + + error_msg = g_strdup_printf ("Could not load desktop file: %s", + error->message); +- g_warning (error_msg); ++ g_warning ("%s", error_msg); + g_free (error_msg); + g_error_free (error); + g_key_file_free (desktop); diff --git a/gksu/time b/gksu/time new file mode 100644 index 0000000..20077eb --- /dev/null +++ b/gksu/time @@ -0,0 +1,5 @@ + +real 0m5.859s +user 0m4.459s +sys 0m0.774s + diff --git a/gmrun/PKGBUILD b/gmrun/PKGBUILD new file mode 100644 index 0000000..8b43c03 --- /dev/null +++ b/gmrun/PKGBUILD @@ -0,0 +1,35 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=gmrun +pkgver=1.3w +pkgrel=01 +pkgdesc="A simple program which provides a run program window" +arch=('x86_64') +url="https://github.com/wdlkmpx/gmrun" +depends=('gtk3' 'popt') +source=($pkgname-$pkgver.tar.gz::https://github.com/wdlkmpx/gmrun/archive/$pkgver.tar.gz) +backup=('etc/gmrunrc') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + ./configure --prefix=/usr --sysconfdir=/etc + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" install +} + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +sha256sums=(06c35e539423c89bac2df1b413c97d9f0417f9785fc42cd5aaa3ad90fa18bb6e) # gmrun-1.3w.tar.gz diff --git a/gmrun/PKGBUILD-arch b/gmrun/PKGBUILD-arch new file mode 100644 index 0000000..e53fbec --- /dev/null +++ b/gmrun/PKGBUILD-arch @@ -0,0 +1,28 @@ +# Contributor: Jeff Mickey +# Contributor: Woody Gilk aka Shadowhand +# Maintainer: Daniel J Griffiths + +pkgname=gmrun +pkgver=1.3w +pkgrel=1 +pkgdesc="A simple program which provides a run program window" +arch=('x86_64') +url="https://github.com/wdlkmpx/gmrun" +license=('GPL') +depends=('gtk3' 'popt') +source=($pkgname-$pkgver.tar.gz::https://github.com/wdlkmpx/gmrun/archive/$pkgver.tar.gz) +md5sums=('3a04878697e7c5969e555d0939fe8c68') +backup=('etc/gmrunrc') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + ./configure --prefix=/usr --sysconfdir=/etc + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" install +} diff --git a/gmrun/clean b/gmrun/clean new file mode 100644 index 0000000..5b7ffda --- /dev/null +++ b/gmrun/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,gmrun*tar.gz} diff --git a/gmrun/deps b/gmrun/deps new file mode 100644 index 0000000..1f2917b --- /dev/null +++ b/gmrun/deps @@ -0,0 +1 @@ +gtk3 popt diff --git a/gnumeric/PKGBUILD b/gnumeric/PKGBUILD new file mode 100644 index 0000000..a83f320 --- /dev/null +++ b/gnumeric/PKGBUILD @@ -0,0 +1,55 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=gnumeric +#_pkgname=gnumeric +#_minorver=50 +pkgver=1.12.51 +#${_minorver} +pkgrel=01 +pkgdesc="A GNOME-less spreadsheet program" +arch=('x86_64') +url="http://www.gnumeric.org/" +depends=('goffice') +makedepends=('intltool' 'itstool' 'yelp-tools') +conflicts=('gnumeric-minimal') +provides=('gnumeric') +options=('libtool') +source=(https://gitlab.gnome.org/GNOME/gnumeric/-/archive/GNUMERIC_${pkgver//./_}/gnumeric-GNUMERIC_${pkgver//./_}.tar.bz2 + revert-warnings.patch) + +prepare() { + cd ${pkgname}-GNUMERIC_${pkgver//./_} +# cd $pkgname + patch -Np0 -i ../revert-warnings.patch + NOCONFIGURE=1 ./autogen.sh +} + +build() { + cd ${pkgname}-GNUMERIC_${pkgver//./_} + ./autogen.sh --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ + --disable-schemas-install --disable-ssindex \ + --without-gnome --without-psiconv --without-perl \ + --without-python --without-gda --without-systemd \ + --with-help-dir=/usr/share/gnome/help + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +package() { + cd ${pkgname}-GNUMERIC_${pkgver//./_} + make DESTDIR="${pkgdir}" install + + rm -rf "${pkgdir}"/etc/gconf +} + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +sha256sums=(#a65f936bac38f258d3d3d9a69d1fdfd6a3d5f25d0b495a44e4db463c1906ce7c # gnumeric-GNUMERIC_1_12_50.tar.bz2 + 51f1190e42cfa7f03717a396a7679182ce8fd339bc1885bc170bb1fd018dd393 # gnumeric-GNUMERIC_1_12_51.tar.bz2 + bcafca016b809000c2a5bf911e2e3dfa4de28f9e541d9964574cac5c7ce09e53) # revert-warnings.patch diff --git a/gnumeric/clean b/gnumeric/clean new file mode 100644 index 0000000..78470d4 --- /dev/null +++ b/gnumeric/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,gnum*.tar.bz2} diff --git a/gnumeric/deps b/gnumeric/deps new file mode 100644 index 0000000..e1f5f99 --- /dev/null +++ b/gnumeric/deps @@ -0,0 +1,9 @@ +intltool +itstool +yelp-tools +automake +autoconf +gtk-doc +gettext +bison +goffice diff --git a/gnumeric/gnumeric-extra/PKGBUILD b/gnumeric/gnumeric-extra/PKGBUILD new file mode 100644 index 0000000..204a15f --- /dev/null +++ b/gnumeric/gnumeric-extra/PKGBUILD @@ -0,0 +1,54 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=gnumeric +pkgver=1.12.51 +pkgrel=01 +pkgdesc="A GNOME Spreadsheet Program" +arch=('x86_64') +url="http://www.gnumeric.org/" +depends=('goffice') +makedepends=('intltool' 'psiconv' 'pygobject-devel' docbook-xml + 'gobject-introspection' 'python-gobject' gtk-doc autoconf-archive git yelp-tools) +optdepends=('python-gobject: for python plugin support' + 'perl: for perl plugin support' + 'psiconv: for Psion 5 file support' + 'yelp: for viewing the help manual') +_commit=a243d1d077f6685372e6fef25b5ea0d3bee68417 +source=("git+https://gitlab.gnome.org/GNOME/gnumeric.git#commit=$_commit" + revert-warnings.patch) + +pkgver() { + cd $pkgname + git describe --tags | sed 's/^GNUMERIC_//;s/_/./g;s/-/+/g' +} + +prepare() { + cd $pkgname + patch -Np0 -i ../revert-warnings.patch + NOCONFIGURE=1 ./autogen.sh +} + +build() { + cd $pkgname + ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ + --disable-schemas-compile --enable-introspection --disable-silent-rules + + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +package() { + cd $pkgname + make DESTDIR="${pkgdir}" install +} + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +sha256sums=(a + 'bcafca016b809000c2a5bf911e2e3dfa4de28f9e541d9964574cac5c7ce09e53') diff --git a/gnumeric/gnumeric-extra/PKGBUILD-arch b/gnumeric/gnumeric-extra/PKGBUILD-arch new file mode 100644 index 0000000..f9fc503 --- /dev/null +++ b/gnumeric/gnumeric-extra/PKGBUILD-arch @@ -0,0 +1,47 @@ +# Maintainer: Eric Belanger +# Contributor: Kritoke + +pkgname=gnumeric +pkgver=1.12.51 +pkgrel=1 +pkgdesc="A GNOME Spreadsheet Program" +arch=('x86_64') +url="http://www.gnumeric.org/" +license=('GPL') +depends=('goffice') +makedepends=('intltool' 'psiconv' 'pygobject-devel' docbook-xml + 'gobject-introspection' 'python-gobject' gtk-doc autoconf-archive git yelp-tools) +optdepends=('python-gobject: for python plugin support' + 'perl: for perl plugin support' + 'psiconv: for Psion 5 file support' + 'yelp: for viewing the help manual') +_commit=a243d1d077f6685372e6fef25b5ea0d3bee68417 +source=("git+https://gitlab.gnome.org/GNOME/gnumeric.git#commit=$_commit" + revert-warnings.patch) +sha256sums=('SKIP' + 'bcafca016b809000c2a5bf911e2e3dfa4de28f9e541d9964574cac5c7ce09e53') + +pkgver() { + cd $pkgname + git describe --tags | sed 's/^GNUMERIC_//;s/_/./g;s/-/+/g' +} + +prepare() { + cd $pkgname + patch -Np0 -i ../revert-warnings.patch + NOCONFIGURE=1 ./autogen.sh +} + +build() { + cd $pkgname + ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ + --disable-schemas-compile --enable-introspection --disable-silent-rules + + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +package() { + cd $pkgname + make DESTDIR="${pkgdir}" install +} diff --git a/gnumeric/gnumeric-extra/revert-warnings.patch b/gnumeric/gnumeric-extra/revert-warnings.patch new file mode 100644 index 0000000..bf9df5d --- /dev/null +++ b/gnumeric/gnumeric-extra/revert-warnings.patch @@ -0,0 +1,11 @@ +--- configure.ac.orig 2013-03-13 16:09:02.355422066 +0000 ++++ configure.ac 2013-03-13 16:09:26.701917153 +0000 +@@ -269,8 +269,6 @@ + -Wchar-subscripts -Wwrite-strings \ + -Wdeclaration-after-statement -Wnested-externs \ + -Wmissing-noreturn \ +- -Werror=missing-prototypes -Werror=nested-externs \ +- -Werror=implicit-function-declaration \ + -Wmissing-declarations -Wno-pointer-sign \ + -Werror=format-security -Wbitwise -Wcast-to-as \ + -Wdefault-bitfield-sign -Wdo-while -Wparen-string \ diff --git a/gnumeric/revert-warnings.patch b/gnumeric/revert-warnings.patch new file mode 100644 index 0000000..bf9df5d --- /dev/null +++ b/gnumeric/revert-warnings.patch @@ -0,0 +1,11 @@ +--- configure.ac.orig 2013-03-13 16:09:02.355422066 +0000 ++++ configure.ac 2013-03-13 16:09:26.701917153 +0000 +@@ -269,8 +269,6 @@ + -Wchar-subscripts -Wwrite-strings \ + -Wdeclaration-after-statement -Wnested-externs \ + -Wmissing-noreturn \ +- -Werror=missing-prototypes -Werror=nested-externs \ +- -Werror=implicit-function-declaration \ + -Wmissing-declarations -Wno-pointer-sign \ + -Werror=format-security -Wbitwise -Wcast-to-as \ + -Wdefault-bitfield-sign -Wdo-while -Wparen-string \ diff --git a/gnumeric/time b/gnumeric/time new file mode 100644 index 0000000..6a1b8eb --- /dev/null +++ b/gnumeric/time @@ -0,0 +1,3 @@ +real 2m50.571s +user 6m25.047s +sys 0m30.467s diff --git a/gobject-introspection/PKGBUILD b/gobject-introspection/PKGBUILD new file mode 100644 index 0000000..e2cffdc --- /dev/null +++ b/gobject-introspection/PKGBUILD @@ -0,0 +1,83 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgbase=gobject-introspection +pkgname=(gobject-introspection gobject-introspection-runtime) +pkgver=1.72.0 +pkgrel=01 +pkgdesc="Introspection system for GObject-based libraries" +url="https://wiki.gnome.org/Projects/GObjectIntrospection" +arch=(x86_64) +depends=(python-mako python-markdown) +_glibver=2.72.0 +makedepends=(cairo git gtk-doc python-sphinx meson "glib2=$_glibver") +options=(!emptydirs) +#options=(debug) +_commit=c1ce7d179cfce327162bd206cdf2808bd9bd0cc7 # tags/1.72.0^0 +source=("git+https://gitlab.gnome.org/GNOME/gobject-introspection.git#commit=$_commit" + "git+https://gitlab.gnome.org/GNOME/glib.git?signed#tag=$_glibver") + +pkgver() { + cd $pkgbase + git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g' +} + +prepare() { + cd $pkgbase +} + +build() { + arch-meson $pkgbase build \ + -D gtk_doc=true \ + -D glib_src_dir="$srcdir/glib" + meson compile -C build +} + +check() { + meson test -C build +} + +_pick() { + local p="$1" f d; shift + for f; do + d="$srcdir/$p/${f#$pkgdir/}" + mkdir -p "$(dirname "$d")" + mv "$f" "$d" + rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")" + done +} + +package_gobject-introspection() { + depends+=("gobject-introspection-runtime=$pkgver-$pkgrel") + + meson install -C build --destdir "$pkgdir" + + cd "$pkgdir" + + python -m compileall -d /usr/lib/$pkgbase usr/lib/$pkgbase + python -O -m compileall -d /usr/lib/$pkgbase usr/lib/$pkgbase + + _pick runtime usr/lib/lib* + _pick runtime usr/lib/girepository-* +} + +package_gobject-introspection-runtime() { + pkgdesc+=" (runtime library)" + depends=(glib2) + provides+=(libgirepository-1.0.so) + + mv runtime/* "$pkgdir" +} + + +#---- license gpg-key sha256sums ---- + +license=(LGPL GPL) + +validpgpkeys=('923B7025EE03C1C59F42684CF0942E894B2EAFA0') # Philip Withnall + +sha256sums=(SKIP + SKIP) diff --git a/gobject-introspection/PKGBUILD-arch b/gobject-introspection/PKGBUILD-arch new file mode 100644 index 0000000..80f2cd5 --- /dev/null +++ b/gobject-introspection/PKGBUILD-arch @@ -0,0 +1,73 @@ +# Maintainer: Jan Alexander Steffens (heftig) +# Contributor: Jan de Groot + +pkgbase=gobject-introspection +pkgname=(gobject-introspection gobject-introspection-runtime) +pkgver=1.72.0 +pkgrel=1 +pkgdesc="Introspection system for GObject-based libraries" +url="https://wiki.gnome.org/Projects/GObjectIntrospection" +arch=(x86_64) +license=(LGPL GPL) +_glibver=2.72.0 +depends=(python-mako python-markdown) +makedepends=(cairo git gtk-doc python-sphinx meson "glib2=$_glibver") +options=(debug) +_commit=c1ce7d179cfce327162bd206cdf2808bd9bd0cc7 # tags/1.72.0^0 +source=("git+https://gitlab.gnome.org/GNOME/gobject-introspection.git#commit=$_commit" + "git+https://gitlab.gnome.org/GNOME/glib.git?signed#tag=$_glibver") +sha512sums=('SKIP' + 'SKIP') +validpgpkeys=('923B7025EE03C1C59F42684CF0942E894B2EAFA0') # Philip Withnall + +pkgver() { + cd $pkgbase + git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g' +} + +prepare() { + cd $pkgbase +} + +build() { + arch-meson $pkgbase build \ + -D gtk_doc=true \ + -D glib_src_dir="$srcdir/glib" + meson compile -C build +} + +check() { + meson test -C build +} + +_pick() { + local p="$1" f d; shift + for f; do + d="$srcdir/$p/${f#$pkgdir/}" + mkdir -p "$(dirname "$d")" + mv "$f" "$d" + rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")" + done +} + +package_gobject-introspection() { + depends+=("gobject-introspection-runtime=$pkgver-$pkgrel") + + meson install -C build --destdir "$pkgdir" + + cd "$pkgdir" + + python -m compileall -d /usr/lib/$pkgbase usr/lib/$pkgbase + python -O -m compileall -d /usr/lib/$pkgbase usr/lib/$pkgbase + + _pick runtime usr/lib/lib* + _pick runtime usr/lib/girepository-* +} + +package_gobject-introspection-runtime() { + pkgdesc+=" (runtime library)" + depends=(glib2) + provides+=(libgirepository-1.0.so) + + mv runtime/* "$pkgdir" +} diff --git a/gobject-introspection/clean b/gobject-introspection/clean new file mode 100644 index 0000000..52ca9b9 --- /dev/null +++ b/gobject-introspection/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,glib,gobject-introspection} diff --git a/gobject-introspection/deps b/gobject-introspection/deps new file mode 100644 index 0000000..22bf6e7 --- /dev/null +++ b/gobject-introspection/deps @@ -0,0 +1,8 @@ +python-mako +python-markdown +cairo +gtk-doc +python-sphinx +meson +git +bison diff --git a/gobject-introspection/key b/gobject-introspection/key new file mode 100644 index 0000000..f3f3c39 --- /dev/null +++ b/gobject-introspection/key @@ -0,0 +1 @@ +gpg -v --recv-key F0942E894B2EAFA0 diff --git a/gobject-introspection/note b/gobject-introspection/note new file mode 100644 index 0000000..2a183b9 --- /dev/null +++ b/gobject-introspection/note @@ -0,0 +1 @@ +Arch hasn't rebuilt this against glib2 2.70.3 so just rerun it when they do diff --git a/gobject-introspection/time b/gobject-introspection/time new file mode 100644 index 0000000..ff07387 --- /dev/null +++ b/gobject-introspection/time @@ -0,0 +1,5 @@ + +real 0m55.480s +user 1m52.200s +sys 0m8.246s + diff --git a/goffice/PKGBUILD b/goffice/PKGBUILD new file mode 100644 index 0000000..038ad56 --- /dev/null +++ b/goffice/PKGBUILD @@ -0,0 +1,46 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=goffice +pkgver=0.10.51 +pkgrel=01 +pkgdesc="A GLib/GTK+ set of document-centric objects and charting library" +url="https://git.gnome.org/browse/goffice" +arch=(x86_64) +depends=(librsvg gtk3 libgsf libspectre libxslt lasem) +makedepends=(intltool gtk-doc gobject-introspection autoconf-archive git) +_commit=495e70ee2db5214431c137860435f41ba6e4c712 +source=("git+https://gitlab.gnome.org/GNOME/goffice.git#commit=$_commit") + +pkgver() { + cd $pkgname + git describe --tags | sed 's/^GOFFICE_//;s/_/./g;s/-/+/g' +} + +prepare() { + cd $pkgname + NOCONFIGURE=1 ./autogen.sh +} + +build() { + cd $pkgname + ./configure --prefix=/usr --sysconfdir=/etc \ + --localstatedir=/var --disable-static --enable-introspection --enable-gtk-doc + + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +package() { + cd $pkgname + make DESTDIR="${pkgdir}" install +} + +#---- license gpg-key sha256sums ---- + +license=(GPL) + +sha256sums=('SKIP') diff --git a/goffice/PKGBUILD-arch b/goffice/PKGBUILD-arch new file mode 100644 index 0000000..5a3826a --- /dev/null +++ b/goffice/PKGBUILD-arch @@ -0,0 +1,39 @@ +# Maintainer: Jan de Groot +# Contributor: Aaron Griffin + +pkgname=goffice +pkgver=0.10.51 +pkgrel=1 +pkgdesc="A GLib/GTK+ set of document-centric objects and charting library" +url="https://git.gnome.org/browse/goffice" +arch=(x86_64) +license=(GPL) +depends=(librsvg gtk3 libgsf libspectre libxslt lasem) +makedepends=(intltool gtk-doc gobject-introspection autoconf-archive git) +_commit=495e70ee2db5214431c137860435f41ba6e4c712 +source=("git+https://gitlab.gnome.org/GNOME/goffice.git#commit=$_commit") +sha256sums=('SKIP') + +pkgver() { + cd $pkgname + git describe --tags | sed 's/^GOFFICE_//;s/_/./g;s/-/+/g' +} + +prepare() { + cd $pkgname + NOCONFIGURE=1 ./autogen.sh +} + +build() { + cd $pkgname + ./configure --prefix=/usr --sysconfdir=/etc \ + --localstatedir=/var --disable-static --enable-introspection --enable-gtk-doc + + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +package() { + cd $pkgname + make DESTDIR="${pkgdir}" install +} diff --git a/goffice/clean b/goffice/clean new file mode 100644 index 0000000..f489dab --- /dev/null +++ b/goffice/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,goffice} diff --git a/goffice/deps b/goffice/deps new file mode 100644 index 0000000..34916df --- /dev/null +++ b/goffice/deps @@ -0,0 +1,13 @@ +librsvg +gtk3 +libgsf +libspectre +libxslt +lasem +intltool +gtk-doc +gobject-introspection +autoconf-archive +git +automake +gettext diff --git a/goffice/time b/goffice/time new file mode 100644 index 0000000..4694727 --- /dev/null +++ b/goffice/time @@ -0,0 +1,5 @@ + +real 2m16.073s +user 4m9.176s +sys 0m17.535s + diff --git a/gperf/PKGBUILD b/gperf/PKGBUILD new file mode 100644 index 0000000..f306ea3 --- /dev/null +++ b/gperf/PKGBUILD @@ -0,0 +1,44 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=gperf +pkgver=3.1 +pkgrel=03 +pkgdesc="Perfect hash function generator" +arch=('x86_64') +url="https://www.gnu.org/software/gperf/" +depends=('gcc-libs' 'texinfo') +source=("https://ftp.gnu.org/pub/gnu/gperf/${pkgname}-${pkgver}.tar.gz"{,.sig}) +options=('!makeflags') + +build() { + cd ${pkgname}-${pkgver} + ./configure --prefix=/usr \ + --docdir=/usr/share/gperf/doc/ + make +} + +check() { + cd ${pkgname}-${pkgver} + make check +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install +} + +#---- license gpg-key sha256sums ---- + +license=('GPL3') + +validpgpkeys=('EDEB87A500CC0A211677FBFD93C08C88471097CD') # Marcel Schaible + +sha1sums=('e3c0618c2d2e5586eda9498c867d5e4858a3b0e2' + 'SKIP') + +sha256sums=(588546b945bba4b70b6a3a616e80b4ab466e3f33024a352fc2198112cdbb3ae2 # gperf-3.1.tar.gz + 0554c9102d257d266bb4d9fb4bf76737abcecfc84a06884de84f8f8ff21c23e0) # gperf-3.1.tar.gz.sig diff --git a/gperf/PKGBUILD-arch b/gperf/PKGBUILD-arch new file mode 100644 index 0000000..944baf2 --- /dev/null +++ b/gperf/PKGBUILD-arch @@ -0,0 +1,33 @@ +# Maintainer: +# Contributor: Jan de Groot + +pkgname=gperf +pkgver=3.1 +pkgrel=3 +pkgdesc="Perfect hash function generator" +arch=('x86_64') +url="https://www.gnu.org/software/gperf/" +license=('GPL3') +depends=('gcc-libs' 'texinfo') +source=("https://ftp.gnu.org/pub/gnu/gperf/${pkgname}-${pkgver}.tar.gz"{,.sig}) +sha1sums=('e3c0618c2d2e5586eda9498c867d5e4858a3b0e2' + 'SKIP') +options=('!makeflags') +validpgpkeys=('EDEB87A500CC0A211677FBFD93C08C88471097CD') # Marcel Schaible + +build() { + cd ${pkgname}-${pkgver} + ./configure --prefix=/usr \ + --docdir=/usr/share/gperf/doc/ + make +} + +check() { + cd ${pkgname}-${pkgver} + make check +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install +} diff --git a/gperf/clean b/gperf/clean new file mode 100644 index 0000000..ec697dc --- /dev/null +++ b/gperf/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,gperf-*tar.gz*} diff --git a/gperf/deps b/gperf/deps new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/gperf/deps @@ -0,0 +1 @@ + diff --git a/gperf/key b/gperf/key new file mode 100644 index 0000000..5c8a4bf --- /dev/null +++ b/gperf/key @@ -0,0 +1 @@ +gpg -v --recv-key 93C08C88471097CD diff --git a/gperf/time b/gperf/time new file mode 100644 index 0000000..636177d --- /dev/null +++ b/gperf/time @@ -0,0 +1,4 @@ + +real 0m7.498s +user 0m6.155s +sys 0m0.704s diff --git a/gptfdisk/PKGBUILD b/gptfdisk/PKGBUILD new file mode 100644 index 0000000..13fb826 --- /dev/null +++ b/gptfdisk/PKGBUILD @@ -0,0 +1,50 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=gptfdisk +pkgver=1.0.8 +pkgrel=01 +pkgdesc="A text-mode partitioning tool that works on GUID Partition Table (GPT) disks" +arch=('x86_64') +url="https://www.rodsbooks.com/gdisk/" +depends=('gcc-libs' 'popt' 'libuuid.so' 'libncursesw.so') +provides=("gdisk=$pkgver") +conflicts=('gdisk') +replaces=('gdisk') +source=(https://downloads.sourceforge.net/project/$pkgname/$pkgname/$pkgver/$pkgname-$pkgver.tar.gz) + +prepare() { + cd "$srcdir/$pkgname-$pkgver" + + # https://sourceforge.net/p/gptfdisk/discussion/939590/thread/bc29ca06f8/ + sed -i '/^#include /s:ncursesw/::' gptcurses.cc +} + +build() { + cd "$srcdir/$pkgname-$pkgver" + make +} + +check() { + cd "$srcdir/$pkgname-$pkgver" + make test +} + +package () { + cd "$srcdir/$pkgname-$pkgver" + + install -d "$pkgdir"/usr/{bin,share/{doc/gdisk,man/man8}} + install -t "$pkgdir/usr/bin" {,c,s}gdisk fixparts + install -m644 -t "$pkgdir/usr/share/man/man8" {{,c,s}gdisk,fixparts}.8 + install -m644 -t "$pkgdir/usr/share/doc/gdisk" README NEWS +} + +#---- license gpg-key sha256sums ---- + +license=('GPL2') + +sha256sums=(95d19856f004dabc4b8c342b2612e8d0a9eebdd52004297188369f152e9dc6df) # gptfdisk-1.0.8.tar.gz + diff --git a/gptfdisk/PKGBUILD-arch b/gptfdisk/PKGBUILD-arch new file mode 100644 index 0000000..0d16ea1 --- /dev/null +++ b/gptfdisk/PKGBUILD-arch @@ -0,0 +1,51 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=gptfdisk +pkgver=1.0.8 +pkgrel=01 +pkgdesc="A text-mode partitioning tool that works on GUID Partition Table (GPT) disks" +arch=('x86_64') +url="https://www.rodsbooks.com/gdisk/" +depends=('gcc-libs' 'popt' 'libuuid.so' 'libncursesw.so') +provides=("gdisk=$pkgver") +conflicts=('gdisk') +replaces=('gdisk') +source=(https://downloads.sourceforge.net/project/$pkgname/$pkgname/$pkgver/$pkgname-$pkgver.tar.gz) + +prepare() { + cd "$srcdir/$pkgname-$pkgver" + + # https://sourceforge.net/p/gptfdisk/discussion/939590/thread/bc29ca06f8/ + sed -i '/^#include /s:ncursesw/::' gptcurses.cc +} + +build() { + cd "$srcdir/$pkgname-$pkgver" + make +} + +check() { + cd "$srcdir/$pkgname-$pkgver" + make test +} + +package () { + cd "$srcdir/$pkgname-$pkgver" + + install -d "$pkgdir"/usr/{bin,share/{doc/gdisk,man/man8}} + install -t "$pkgdir/usr/bin" {,c,s}gdisk fixparts + install -m644 -t "$pkgdir/usr/share/man/man8" {{,c,s}gdisk,fixparts}.8 + install -m644 -t "$pkgdir/usr/share/doc/gdisk" README NEWS +} + +#---- license gpg-key sha256sums ---- + +license=('GPL2') + +sha256sums=('95d19856f004dabc4b8c342b2612e8d0a9eebdd52004297188369f152e9dc6df' + a) + diff --git a/gptfdisk/clean b/gptfdisk/clean new file mode 100644 index 0000000..0af486b --- /dev/null +++ b/gptfdisk/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,gpt*.tar.gz} diff --git a/gptfdisk/deps b/gptfdisk/deps new file mode 100644 index 0000000..5bada81 --- /dev/null +++ b/gptfdisk/deps @@ -0,0 +1 @@ +popt diff --git a/gptfdisk/note b/gptfdisk/note new file mode 100644 index 0000000..adca613 --- /dev/null +++ b/gptfdisk/note @@ -0,0 +1 @@ +built fails diff --git a/gtk-doc/0001-Partially-revert-a-gtk-doc-1.31-change-that-broke-e-.patch b/gtk-doc/0001-Partially-revert-a-gtk-doc-1.31-change-that-broke-e-.patch new file mode 100644 index 0000000..7d77ad8 --- /dev/null +++ b/gtk-doc/0001-Partially-revert-a-gtk-doc-1.31-change-that-broke-e-.patch @@ -0,0 +1,28 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Kalev Lember +Date: Thu, 28 Nov 2019 14:38:59 +0100 +Subject: [PATCH] Partially revert a gtk-doc 1.31 change that broke e-d-s and + NM builds + +Bug: https://gitlab.gnome.org/GNOME/gtk-doc/-/issues/98 +Bug: https://gitlab.gnome.org/GNOME/gtk-doc/-/issues/110 +Bug-Fedora: https://bugzilla.redhat.com/show_bug.cgi?id=1775560 +--- + gtkdoc/scan.py | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/gtkdoc/scan.py b/gtkdoc/scan.py +index 4b5b8a9..7963840 100644 +--- a/gtkdoc/scan.py ++++ b/gtkdoc/scan.py +@@ -978,8 +978,8 @@ def ScanHeaderContent(input_lines, decl_list, get_types, options): + logging.info('struct/union level : %d', level) + + # here we want in_declaration=='', otherwise we have a partial declaration +- if in_declaration != '': +- raise RuntimeError('partial declaration (%s) : %s ' % (in_declaration, decl)) ++ #if in_declaration != '': ++ # raise RuntimeError('partial declaration (%s) : %s ' % (in_declaration, decl)) + + # print remaining forward declarations + for symbol in sorted(forward_decls.keys()): diff --git a/gtk-doc/PKGBUILD b/gtk-doc/PKGBUILD new file mode 100644 index 0000000..513cae6 --- /dev/null +++ b/gtk-doc/PKGBUILD @@ -0,0 +1,56 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=gtk-doc +pkgver=1.33.2 +pkgrel=01 +pkgdesc="Documentation tool for public library API" +url="https://www.gtk.org/gtk-doc/" +arch=(any) +depends=(docbook-xsl docbook-xml glib2-docs python-lxml python-pygments + python-anytree) +makedepends=(dblatex git yelp-tools meson) +checkdepends=(bc gtk3 python-six python-parameterized) +optdepends=('dblatex: PDF support') +_commit=14391142ee9d43da116f0f530746ae34cc46930a # tags/1.33.2^0 +source=("git+https://gitlab.gnome.org/GNOME/gtk-doc.git#commit=$_commit" + 0001-Partially-revert-a-gtk-doc-1.31-change-that-broke-e-.patch) +#161c6d94e41e2d2ec2358ac6be8233f8d1698f57 refs/tags/1.33.2 +#^14391142ee9d43da116f0f530746ae34cc46930a + +pkgver() { + cd $pkgname + git describe --tags | sed 's/GTK_DOC_//;s/_/\./g;s/-/+/g' +} + +prepare() { + cd $pkgname + + # https://gitlab.gnome.org/GNOME/gtk-doc/-/merge_requests/58 + git apply -3 ../0001-Partially-revert-a-gtk-doc-1.31-change-that-broke-e-.patch +} + +build() { + arch-meson $pkgname build + meson compile -C build +} + +check() { + meson test -C build --print-errorlogs +} + +package() { + DESTDIR="$pkgdir" meson install -C build + python -m compileall -d /usr/lib "$pkgdir/usr/lib" + python -O -m compileall -d /usr/lib "$pkgdir/usr/lib" +} + +#---- license gpg-key sha256sums ---- + +license=(GPL FDL) + +sha256sums=(SKIP + 95208f0e0dd6e888892b04e3396b131218d1d98e433edfbd4af70b158921319c) # 0001-Partially-revert-a-gtk-doc-1.31-change-that-broke-e-.patch diff --git a/gtk-doc/PKGBUILD-arch b/gtk-doc/PKGBUILD-arch new file mode 100644 index 0000000..f17e939 --- /dev/null +++ b/gtk-doc/PKGBUILD-arch @@ -0,0 +1,50 @@ +# Maintainer: Jan Alexander Steffens (heftig) +# Contributor: Jan de Groot + +pkgname=gtk-doc +pkgver=1.33.2 +pkgrel=01 +pkgdesc="Documentation tool for public library API" +url="https://www.gtk.org/gtk-doc/" +arch=(any) +license=(GPL FDL) +depends=(docbook-xsl docbook-xml glib2-docs python-lxml python-pygments + python-anytree) +makedepends=(dblatex git yelp-tools meson) +checkdepends=(bc gtk3 python-six python-parameterized) +optdepends=('dblatex: PDF support') +_commit=14391142ee9d43da116f0f530746ae34cc46930a # tags/1.33.2^0 +#161c6d94e41e2d2ec2358ac6be8233f8d1698f57 refs/tags/1.33.2 +#^14391142ee9d43da116f0f530746ae34cc46930a + +source=("git+https://gitlab.gnome.org/GNOME/gtk-doc.git#commit=$_commit" + 0001-Partially-revert-a-gtk-doc-1.31-change-that-broke-e-.patch) +sha256sums=('SKIP' + '95208f0e0dd6e888892b04e3396b131218d1d98e433edfbd4af70b158921319c') + +pkgver() { + cd $pkgname + git describe --tags | sed 's/GTK_DOC_//;s/_/\./g;s/-/+/g' +} + +prepare() { + cd $pkgname + + # https://gitlab.gnome.org/GNOME/gtk-doc/-/merge_requests/58 + git apply -3 ../0001-Partially-revert-a-gtk-doc-1.31-change-that-broke-e-.patch +} + +build() { + arch-meson $pkgname build + meson compile -C build +} + +check() { + meson test -C build --print-errorlogs +} + +package() { + DESTDIR="$pkgdir" meson install -C build + python -m compileall -d /usr/lib "$pkgdir/usr/lib" + python -O -m compileall -d /usr/lib "$pkgdir/usr/lib" +} diff --git a/gtk-doc/PKGBUILD-aur b/gtk-doc/PKGBUILD-aur new file mode 100644 index 0000000..0c364fc --- /dev/null +++ b/gtk-doc/PKGBUILD-aur @@ -0,0 +1,45 @@ +pkgname=gtk-doc-git +_pkgname=gtk-doc +pkgver=1.33.2+7+g7e3f546 +pkgrel=01 +pkgdesc="Documentation tool for public library API" +url="https://www.gtk.org/gtk-doc/" +arch=(any) +license=(GPL FDL) +depends=(docbook-xsl docbook-xml glib2-docs python-lxml python-pygments + python-anytree) +makedepends=(dblatex git yelp-tools meson) +checkdepends=(bc gtk3 python-six python-parameterized) +optdepends=('dblatex: PDF support') +provides=(gtk-doc=$pkgver) +conflicts=(gtk-doc) +source=("git+https://gitlab.gnome.org/GNOME/gtk-doc.git" + fix.diff) +sha512sums=('SKIP' + '6d5dd328f784986c1bc46e8bdd800226c5e7eaec2b2b921e0b930435cbe42d73283dd1f87272e1c1cfec9e24e21b7d551f5609d20e4838ba4d3eba1bb1479d43') + +pkgver() { + cd $_pkgname + git describe --tags | sed -e 's/GTK_DOC_//' -e 's/_/\./g' -e 's/-/+/g' +} + +prepare() { + cd $_pkgname + patch -Np1 -i ../fix.diff +} + +build() { + arch-meson $_pkgname build + ninja -C build +} + +check() { + # Tests don't work yet + meson test -C build --print-errorlogs || : +} + +package() { + DESTDIR="$pkgdir" meson install -C build + python -m compileall -d /usr/lib "$pkgdir/usr/lib" + python -O -m compileall -d /usr/lib "$pkgdir/usr/lib" +} diff --git a/gtk-doc/PKGBUILD-jobo-fromAUR-git b/gtk-doc/PKGBUILD-jobo-fromAUR-git new file mode 100644 index 0000000..a9f4a56 --- /dev/null +++ b/gtk-doc/PKGBUILD-jobo-fromAUR-git @@ -0,0 +1,59 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun/jobcore/$pkgname" +# PkgSource : url="https://gittea.disroot.org/joborun/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=gtk-doc +pkgver=1.33.2+7+g7e3f546 +pkgrel=01 +pkgdesc="Documentation tool for public library API" +url="https://www.gtk.org/gtk-doc/" +arch=(any) +depends=(docbook-xsl docbook-xml glib2-docs python-lxml python-pygments + python-anytree) +makedepends=(dblatex git yelp-tools meson) +checkdepends=(bc gtk3 python-six python-parameterized) +optdepends=('dblatex: PDF support') +provides=(gtk-doc=$pkgver) +conflicts=(gtk-doc) +source=("git+https://gitlab.gnome.org/GNOME/gtk-doc.git" + fix.diff) +#161c6d94e41e2d2ec2358ac6be8233f8d1698f57 refs/tags/1.33.2 +#^14391142ee9d43da116f0f530746ae34cc46930a + +pkgver() { + cd $pkgname + git describe --tags | sed -e 's/GTK_DOC_//' -e 's/_/\./g' -e 's/-/+/g' +} + +prepare() { + cd $pkgname + patch -Np1 -i ../fix.diff +} + +build() { + arch-meson $pkgname build + ninja -C build +} + +check() { + # Tests don't work yet + meson test -C build --print-errorlogs || : +} + +package() { + DESTDIR="$pkgdir" meson install -C build + python -m compileall -d /usr/lib "$pkgdir/usr/lib" + python -O -m compileall -d /usr/lib "$pkgdir/usr/lib" +} + +#---- license gpg-key sha256sums ---- + +license=(GPL FDL) +sha512sums=(SKIP + '6d5dd328f784986c1bc46e8bdd800226c5e7eaec2b2b921e0b930435cbe42d73283dd1f87272e1c1cfec9e24e21b7d551f5609d20e4838ba4d3eba1bb1479d43') + +sha256sums=(SKIP + 0391f47af6bd11bdc870ba826836612c68f538a12bc12fe0b4f34e6c11482baf) # fix.diff diff --git a/gtk-doc/clean b/gtk-doc/clean new file mode 100644 index 0000000..e4b9864 --- /dev/null +++ b/gtk-doc/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,gtk-doc} diff --git a/gtk-doc/deps b/gtk-doc/deps new file mode 100644 index 0000000..0ee8d50 --- /dev/null +++ b/gtk-doc/deps @@ -0,0 +1,15 @@ +docbook-xsl +docbook-xml +glib2-docs +python-lxml +python-pygments +python-anytree +dblatex +git +yelp-tools +meson +bc +gtk3 +python-six +python-parameterized +gettext diff --git a/gtk-doc/fix.diff b/gtk-doc/fix.diff new file mode 100644 index 0000000..66c8129 --- /dev/null +++ b/gtk-doc/fix.diff @@ -0,0 +1,30 @@ +diff --git i/gtkdoc/highlight.py w/gtkdoc/highlight.py +index ba1c601..226aa12 100644 +--- i/gtkdoc/highlight.py ++++ w/gtkdoc/highlight.py +@@ -46,6 +46,9 @@ def highlight_code(code, lang='c'): + + + def append_style_defs(css_file_name): +- os.chmod(css_file_name, 0o644) ++ try: ++ os.chmod(css_file_name, 0o644) ++ except OSError: ++ pass + with open(css_file_name, 'at', newline='\n', encoding='utf-8') as css: + css.write(HTML_FORMATTER.get_style_defs()) +diff --git i/gtkdoc/scan.py w/gtkdoc/scan.py +index d04d4d4..2103d02 100644 +--- i/gtkdoc/scan.py ++++ w/gtkdoc/scan.py +@@ -961,8 +961,8 @@ def ScanHeaderContent(input_lines, decl_list, get_types, options): + logging.info('struct/union level : %d', level) + + # here we want in_declaration=='', otherwise we have a partial declaration +- if in_declaration != '': +- raise RuntimeError('partial declaration (%s) : %s ' % (in_declaration, decl)) ++ #if in_declaration != '': ++ # raise RuntimeError('partial declaration (%s) : %s ' % (in_declaration, decl)) + + # print remaining forward declarations + for symbol in sorted(forward_decls.keys()): diff --git a/gtk-doc/time b/gtk-doc/time new file mode 100644 index 0000000..3bdb1ee --- /dev/null +++ b/gtk-doc/time @@ -0,0 +1,4 @@ + +real 0m11.315s +user 0m11.254s +sys 0m1.145s diff --git a/gtk2/PKGBUILD b/gtk2/PKGBUILD new file mode 100644 index 0000000..4c063e9 --- /dev/null +++ b/gtk2/PKGBUILD @@ -0,0 +1,66 @@ +# Maintainer: Jan Alexander Steffens (heftig) +# Maintainer: Jan de Groot + +pkgname=gtk2 +pkgver=2.24.33 +pkgrel=2 +pkgdesc="GObject-based multi-platform GUI toolkit (legacy)" +arch=(x86_64) +url="https://www.gtk.org/" +depends=(atk pango libxcursor libxinerama libxrandr libxi libxcomposite libxdamage + shared-mime-info cairo libcups gtk-update-icon-cache librsvg desktop-file-utils) +makedepends=(gobject-introspection git gtk-doc) +optdepends=('gnome-themes-standard: Default widget theme' + 'adwaita-icon-theme: Default icon theme' + 'python: gtk-builder-convert') +provides=(libgailutil.so libg{d,t}k-x11-2.0.so) +license=(LGPL) +install=gtk2.install +_commit=68631945733158f164427db84f01301d7e875763 # tags/2.24.33^0 +source=("git+https://gitlab.gnome.org/GNOME/gtk.git#commit=$_commit" + gtkrc + gtk-query-immodules-2.0.hook + xid-collision-debug.patch) +sha256sums=('SKIP' + 'bc968e3e4f57e818430130338e5f85a5025e21d7e31a3293b8f5a0e58362b805' + '427e7ed2626465ea7a8986189b6c8340a0520b9f7b8e2a56cd1169d375da7425' + '7724a55c4916318ed81b22f21c37c0a66e78adce017563fed6d84d813a4b80bc') + +pkgver() { + cd gtk + git describe --tags | sed 's/-/+/g' +} + +prepare() { + cd gtk + git apply -3 ../xid-collision-debug.patch + NOCONFIGURE=1 ./autogen.sh +} + +build() { + cd gtk + + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --with-xinput=yes \ + --disable-gtk-doc + + # https://bugzilla.gnome.org/show_bug.cgi?id=655517 + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + + make +} + +package() { + cd gtk + make DESTDIR="$pkgdir" install + + install -Dt "$pkgdir/usr/share/gtk-2.0" -m644 ../gtkrc + install -Dt "$pkgdir/usr/share/libalpm/hooks" -m644 ../gtk-query-immodules-2.0.hook + + rm "$pkgdir/usr/bin/gtk-update-icon-cache" +} + +# vim:set et sw=2: diff --git a/gtk2/gtk-query-immodules-2.0.hook b/gtk2/gtk-query-immodules-2.0.hook new file mode 100644 index 0000000..51986eb --- /dev/null +++ b/gtk2/gtk-query-immodules-2.0.hook @@ -0,0 +1,11 @@ +[Trigger] +Type = Path +Operation = Install +Operation = Upgrade +Operation = Remove +Target = usr/lib/gtk-2.0/2.10.0/immodules/*.so + +[Action] +Description = Probing GTK2 input method modules... +When = PostTransaction +Exec = /usr/bin/gtk-query-immodules-2.0 --update-cache diff --git a/gtk2/gtk2.install b/gtk2/gtk2.install new file mode 100644 index 0000000..1fb1715 --- /dev/null +++ b/gtk2/gtk2.install @@ -0,0 +1,3 @@ +pre_remove() { + rm -f /usr/lib/gtk-2.0/2.10.0/immodules.cache +} diff --git a/gtk2/gtkrc b/gtk2/gtkrc new file mode 100644 index 0000000..1ee9497 --- /dev/null +++ b/gtk2/gtkrc @@ -0,0 +1,3 @@ +gtk-icon-theme-name = "Adwaita" +gtk-theme-name = "Adwaita" +gtk-font-name = "Cantarell 11" diff --git a/gtk2/xid-collision-debug.patch b/gtk2/xid-collision-debug.patch new file mode 100644 index 0000000..187ce87 --- /dev/null +++ b/gtk2/xid-collision-debug.patch @@ -0,0 +1,20 @@ + gdk/x11/gdkxid.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git c/gdk/x11/gdkxid.c i/gdk/x11/gdkxid.c +index 1005f9e40c..71578f8fcf 100644 +--- c/gdk/x11/gdkxid.c ++++ i/gdk/x11/gdkxid.c +@@ -56,10 +56,10 @@ _gdk_xid_table_insert (GdkDisplay *display, + if (!display_x11->xid_ht) + display_x11->xid_ht = g_hash_table_new ((GHashFunc) gdk_xid_hash, + (GEqualFunc) gdk_xid_equal); +- ++/* + if (g_hash_table_lookup (display_x11->xid_ht, xid)) + g_warning ("XID collision, trouble ahead"); +- ++*/ + g_hash_table_insert (display_x11->xid_ht, xid, data); + } + diff --git a/gtk3/PKGBUILD b/gtk3/PKGBUILD new file mode 100644 index 0000000..c50c57e --- /dev/null +++ b/gtk3/PKGBUILD @@ -0,0 +1,112 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgbase=gtk3 +pkgname=(gtk3 gtk3-docs gtk3-demos) +pkgver=3.24.33 +pkgrel=01 +epoch=1 +pkgdesc="GObject-based multi-platform GUI toolkit" +arch=(x86_64) +url="https://www.gtk.org/" +depends=(atk cairo libxcursor libxinerama libxrandr libxi libepoxy gdk-pixbuf2 + dconf libxcomposite libxdamage pango shared-mime-info at-spi2-atk + wayland libxkbcommon adwaita-icon-theme json-glib librsvg + desktop-file-utils mesa cantarell-fonts libcolord rest libcups + libcanberra fribidi iso-codes libcloudproviders tracker3 + fribidi iso-codes libcloudproviders tracker3 gtk-update-icon-cache) + +makedepends=(gobject-introspection gtk-doc git glib2-docs sassc meson + wayland-protocols) +optdepends=('evince: Default print preview command') +_commit=8ff9b2f83ff491cbfcbf9b30c706bd917679e7cc # tags/3.24.33^0 +source=("git+https://gitlab.gnome.org/GNOME/gtk.git#commit=$_commit" + gtk-query-immodules-3.0.hook) + +pkgver() { + cd gtk + git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g' +} + +prepare() { + cd gtk +} + +build() { + CFLAGS+=" -DG_DISABLE_CAST_CHECKS" + local meson_options=( + -D broadway_backend=true + -D cloudproviders=true + -D tracker3=true + -D colord=yes + -D gtk_doc=true + -D man=true + ) + + arch-meson gtk build "${meson_options[@]}" + meson compile -C build +} + +_pick() { + local p="$1" f d; shift + for f; do + d="$srcdir/$p/${f#$pkgdir/}" + mkdir -p "$(dirname "$d")" + mv "$f" "$d" + rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")" + done +} + +package_gtk3() { + provides=(gtk3-print-backends libgtk-3.so libgdk-3.so libgailutil-3.so) + conflicts=(gtk3-print-backends) + replaces=("gtk3-print-backends<=3.22.26-1") + install=gtk3.install + + meson install -C build --destdir "$pkgdir" + + install -Dm644 /dev/stdin "$pkgdir/usr/share/gtk-3.0/settings.ini" < +# Contributor: Ionut Biru + +pkgbase=gtk3 +pkgname=(gtk3 gtk3-docs gtk3-demos) +pkgver=3.24.33 +pkgrel=1 +epoch=1 +pkgdesc="GObject-based multi-platform GUI toolkit" +arch=(x86_64) +url="https://www.gtk.org/" +depends=(atk cairo libxcursor libxinerama libxrandr libxi libepoxy gdk-pixbuf2 + dconf libxcomposite libxdamage pango shared-mime-info at-spi2-atk + wayland libxkbcommon adwaita-icon-theme json-glib librsvg + desktop-file-utils mesa cantarell-fonts libcolord rest libcups + fribidi iso-codes libcloudproviders tracker3 gtk-update-icon-cache) +makedepends=(gobject-introspection gtk-doc git glib2-docs sassc meson + wayland-protocols) +license=(LGPL) +_commit=8ff9b2f83ff491cbfcbf9b30c706bd917679e7cc # tags/3.24.33^0 +source=("git+https://gitlab.gnome.org/GNOME/gtk.git#commit=$_commit" + gtk-query-immodules-3.0.hook) +sha256sums=('SKIP' + 'a0319b6795410f06d38de1e8695a9bf9636ff2169f40701671580e60a108e229') + +pkgver() { + cd gtk + git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g' +} + +prepare() { + cd gtk +} + +build() { + CFLAGS+=" -DG_DISABLE_CAST_CHECKS" + local meson_options=( + -D broadway_backend=true + -D cloudproviders=true + -D tracker3=true + -D colord=yes + -D gtk_doc=true + -D man=true + ) + + arch-meson gtk build "${meson_options[@]}" + meson compile -C build +} + +_pick() { + local p="$1" f d; shift + for f; do + d="$srcdir/$p/${f#$pkgdir/}" + mkdir -p "$(dirname "$d")" + mv "$f" "$d" + rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")" + done +} + +package_gtk3() { + optdepends=('evince: Default print preview command') + provides=(gtk3-print-backends libgtk-3.so libgdk-3.so libgailutil-3.so) + conflicts=(gtk3-print-backends) + replaces=("gtk3-print-backends<=3.22.26-1") + install=gtk3.install + + meson install -C build --destdir "$pkgdir" + + install -Dm644 /dev/stdin "$pkgdir/usr/share/gtk-3.0/settings.ini" < +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=guile +pkgver=2.2.7 +pkgrel=02 +pkgdesc='Portable, embeddable Scheme implementation written in C' +url='https://www.gnu.org/software/guile/' +arch=(x86_64) +groups=( jobbot ) +depends=(gmp libltdl ncurses texinfo libunistring gc libffi) +source=(https://ftp.gnu.org/pub/gnu/$pkgname/$pkgname-$pkgver.tar.gz{,.sig}) + +prepare() { + cd $pkgname-$pkgver + sed -e '/test-out-of-memory/d' -i test-suite/standalone/Makefile.am # Disable test known to fail https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=966301 + autoreconf -if +} + +build() { + cd $pkgname-$pkgver + ./configure --prefix=/usr \ + --disable-static \ + --disable-error-on-warning + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +#check() { +# cd $pkgname-$pkgver +# make check +#} + +package() { + make -C $pkgname-$pkgver DESTDIR="$pkgdir" install + rm "$pkgdir"/usr/lib/libguile-2.?.so.*-gdb.scm +} + +#---- license gpg-key sha256sums ---- + +license=(GPL) + +validpgpkeys=('3CE464558A84FDC69DB40CFB090B11993D9AEBB5' # Ludovic Courtès + 'FF478FB264DE32EC296725A3DDC0F5358812F8F2' # Andy Wingo + '4FD4D288D445934E0A14F9A5A8803732E4436885') # Andy Wingo " + +sha256sums=(44b4c5fbbe257ccdebea18420212c9b3e90c3c86a54920d8554039fc6769a007 # guile-2.2.7.tar.gz + cf4b0fcf9859abf7048876f48f01ec716b3d6d912385dbbf2197eaa42dafaa08) #guile-2.2.7.tar.gz.sig diff --git a/guile/PKGBUILD-arch b/guile/PKGBUILD-arch new file mode 100644 index 0000000..8577e2d --- /dev/null +++ b/guile/PKGBUILD-arch @@ -0,0 +1,43 @@ +# Maintainer: Jan de Groot +# Maintainer: Bartłomiej Piotrowski +# Contributor: Tom Newsom + +pkgname=guile +pkgver=2.2.7 +pkgrel=2 +pkgdesc='Portable, embeddable Scheme implementation written in C' +url='https://www.gnu.org/software/guile/' +arch=(x86_64) +license=(GPL) +depends=(gmp libltdl ncurses texinfo libunistring gc libffi) +source=(https://ftp.gnu.org/pub/gnu/$pkgname/$pkgname-$pkgver.tar.gz{,.sig}) +validpgpkeys=('3CE464558A84FDC69DB40CFB090B11993D9AEBB5' # Ludovic Courtès + 'FF478FB264DE32EC296725A3DDC0F5358812F8F2' # Andy Wingo + '4FD4D288D445934E0A14F9A5A8803732E4436885') # Andy Wingo " +sha256sums=('44b4c5fbbe257ccdebea18420212c9b3e90c3c86a54920d8554039fc6769a007' + 'SKIP') + +prepare() { + cd $pkgname-$pkgver + sed -e '/test-out-of-memory/d' -i test-suite/standalone/Makefile.am # Disable test known to fail https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=966301 + autoreconf -if +} + +build() { + cd $pkgname-$pkgver + ./configure --prefix=/usr \ + --disable-static \ + --disable-error-on-warning + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +check() { + cd $pkgname-$pkgver + make check +} + +package() { + make -C $pkgname-$pkgver DESTDIR="$pkgdir" install + rm "$pkgdir"/usr/lib/libguile-2.?.so.*-gdb.scm +} diff --git a/guile/clean b/guile/clean new file mode 100644 index 0000000..27d81a0 --- /dev/null +++ b/guile/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,guil*tar.gz*} diff --git a/guile/deps b/guile/deps new file mode 100644 index 0000000..d3ff549 --- /dev/null +++ b/guile/deps @@ -0,0 +1,4 @@ + +autoconf +automake +gettext diff --git a/guile/key b/guile/key new file mode 100644 index 0000000..510b228 --- /dev/null +++ b/guile/key @@ -0,0 +1 @@ +gpg -v --recv-key 090B11993D9AEBB5 diff --git a/guile/note b/guile/note new file mode 100644 index 0000000..0bec420 --- /dev/null +++ b/guile/note @@ -0,0 +1 @@ +disabled checks as some of them fail, will try next edition diff --git a/guile/time b/guile/time new file mode 100644 index 0000000..f21cfa2 --- /dev/null +++ b/guile/time @@ -0,0 +1,4 @@ +real 1m32.750s +user 2m20.658s +sys 0m13.843s + diff --git a/help2man/PKGBUILD b/help2man/PKGBUILD new file mode 100644 index 0000000..e7125c1 --- /dev/null +++ b/help2man/PKGBUILD @@ -0,0 +1,40 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=help2man +pkgver=1.49.1 +pkgrel=01 +pkgdesc="Conversion tool to create man files" +arch=('x86_64') +url="https://www.gnu.org/software/help2man/" +depends=('perl-locale-gettext') +source=("https://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.xz"{,.sig}) + +build() { + cd ${pkgname}-${pkgver} + + ./configure --prefix=/usr \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --libdir=/usr/lib + make +} + +package() { + cd ${pkgname}-${pkgver} + + make DESTDIR="${pkgdir}" install +} + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +validpgpkeys=('87EA44D150D89615E39A3FEEF0DC8E00B28C5995') # Brendan O'Dea + +sha256sums=(fd99a664ec4be9a86a0dd89719989f14f367a9c079d75d0e1d71e18a7bb51b03 # help2man-1.49.1.tar.xz + 0c95c3c660975132997f4d9eb3418659a9dcfb190941fdbff2fb11d93616d994) # help2man-1.49.1.tar.xz.sig diff --git a/help2man/PKGBUILD-arch b/help2man/PKGBUILD-arch new file mode 100644 index 0000000..bdacf25 --- /dev/null +++ b/help2man/PKGBUILD-arch @@ -0,0 +1,31 @@ +# Maintainer: Giovanni Scafora +# Contributor: Paul Mattal + +pkgname=help2man +pkgver=1.49.1 +pkgrel=1 +pkgdesc="Conversion tool to create man files" +arch=('x86_64') +url="https://www.gnu.org/software/help2man/" +license=('GPL') +depends=('perl-locale-gettext') +source=("https://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.xz"{,.sig}) +sha512sums=('78ea063d49aa9a115ddd7eb8b1b30eaba3d597caf357cbdddeef93b19d1e938ea0f3808dbb63b459c06870ec62f0dc4565a40be8c67720d0185dbcf26ba408df' + 'SKIP') +validpgpkeys=('87EA44D150D89615E39A3FEEF0DC8E00B28C5995') # Brendan O'Dea + +build() { + cd ${pkgname}-${pkgver} + + ./configure --prefix=/usr \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --libdir=/usr/lib + make +} + +package() { + cd ${pkgname}-${pkgver} + + make DESTDIR="${pkgdir}" install +} diff --git a/help2man/clean b/help2man/clean new file mode 100644 index 0000000..cd86951 --- /dev/null +++ b/help2man/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,help2*.tar.xz*} diff --git a/help2man/deps b/help2man/deps new file mode 100644 index 0000000..508f5ad --- /dev/null +++ b/help2man/deps @@ -0,0 +1,3 @@ + +perl-locale-gettext + diff --git a/help2man/key b/help2man/key new file mode 100644 index 0000000..7452065 --- /dev/null +++ b/help2man/key @@ -0,0 +1 @@ +gpg -v --recv-key F0DC8E00B28C5995 diff --git a/help2man/time b/help2man/time new file mode 100644 index 0000000..165da09 --- /dev/null +++ b/help2man/time @@ -0,0 +1,5 @@ + +real 0m3.364s +user 0m3.162s +sys 0m0.488s + diff --git a/hwloc/PKGBUILD b/hwloc/PKGBUILD new file mode 100644 index 0000000..09b79c5 --- /dev/null +++ b/hwloc/PKGBUILD @@ -0,0 +1,45 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=hwloc +pkgver=2.7.0 +pkgrel=01 +pkgdesc='Portable Hardware Locality is a portable abstraction of hierarchical architectures' +url='https://www.open-mpi.org/projects/hwloc/' +arch=('x86_64') +depends=('glibc' 'libtool' 'libpciaccess') +makedepends=('cairo' 'libxml2' 'pciutils' 'libx11') +optdepends=('cairo' 'libxml2' 'pciutils' 'libx11') +options=('!docs') +source=(https://www.open-mpi.org/software/hwloc/v${pkgver%.*}/downloads/${pkgname}-${pkgver}.tar.bz2) + +build() { + cd hwloc-${pkgver} + ./configure \ + --prefix=/usr \ + --sbindir=/usr/bin \ + --enable-plugins \ + --sysconfdir=/etc + make +} + +check() { + cd hwloc-${pkgver} + make check +} + +package() { + cd hwloc-${pkgver} + make DESTDIR="${pkgdir}" install + install -Dm 644 COPYING -t "${pkgdir}/usr/share/licenses/${pkgname}" +} + +#---- license gpg-key sha256sums ---- + +license=('BSD') + +sha256sums=(028cee53ebcfe048283a2b3e87f2fa742c83645fc3ae329134bf5bb8b90384e0) # hwloc-2.7.0.tar.bz2 diff --git a/hwloc/PKGBUILD-arch b/hwloc/PKGBUILD-arch new file mode 100644 index 0000000..4e8e103 --- /dev/null +++ b/hwloc/PKGBUILD-arch @@ -0,0 +1,42 @@ +# Maintainer: Levente Polyak +# Contributor: Stéphane Gaudreault +# Contributor: Sylvain HENRY +# Contributor: Hervé YVIQUEL + +pkgname=hwloc +pkgver=2.7.0 +pkgrel=1 +pkgdesc='Portable Hardware Locality is a portable abstraction of hierarchical architectures' +url='https://www.open-mpi.org/projects/hwloc/' +arch=('x86_64') +license=('BSD') +depends=('glibc' 'libtool' 'systemd-libs' 'libpciaccess') +makedepends=('cairo' 'libxml2' 'pciutils' 'systemd' 'libx11') +optdepends=('cairo' 'libxml2' 'pciutils' 'libx11') +options=('!docs') +source=(https://www.open-mpi.org/software/hwloc/v${pkgver%.*}/downloads/${pkgname}-${pkgver}.tar.bz2) +sha512sums=('9f3a9d66ad9762ca88f9e38950a7c1beb208337517b635c4c363dcfbb050706562511cb12115bd403c0a86c0f7270174dd1888e7803d88557e41ae018e7e7e2f') +b2sums=('b101451b1f7b0f4c86a4d009637d40430eca3f127c9a69f3bc95bf91ad7051e158b1310cec5aeddef000cbf461f648c2fd560b5c011e0b4b4a49848188e2ff5c') + +build() { + cd hwloc-${pkgver} + ./configure \ + --prefix=/usr \ + --sbindir=/usr/bin \ + --enable-plugins \ + --sysconfdir=/etc + make +} + +check() { + cd hwloc-${pkgver} + make check +} + +package() { + cd hwloc-${pkgver} + make DESTDIR="${pkgdir}" install + install -Dm 644 COPYING -t "${pkgdir}/usr/share/licenses/${pkgname}" +} + +# vim: ts=2 sw=2 et: diff --git a/hwloc/clean b/hwloc/clean new file mode 100644 index 0000000..5285e38 --- /dev/null +++ b/hwloc/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,*.bz2} diff --git a/hwloc/deps b/hwloc/deps new file mode 100644 index 0000000..bab4122 --- /dev/null +++ b/hwloc/deps @@ -0,0 +1,3 @@ +libpciaccess +cairo +libx11 diff --git a/hwloc/time b/hwloc/time new file mode 100644 index 0000000..327fac1 --- /dev/null +++ b/hwloc/time @@ -0,0 +1,3 @@ +real 0m45.282s +user 1m26.153s +sys 0m10.699s diff --git a/ifenslave/PKGBUILD b/ifenslave/PKGBUILD new file mode 100644 index 0000000..02e93c7 --- /dev/null +++ b/ifenslave/PKGBUILD @@ -0,0 +1,30 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=ifenslave +pkgver=1.1.0 +pkgrel=011 +pkgdesc='Utility for bonding ethernet interfaces' +url='https://www.linuxfoundation.org/en/Net:Bonding' +arch=('x86_64') +makedepends=('linux-api-headers') +source=(ifenslave.c::'https://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob_plain;f=Documentation/networking/ifenslave.c;h=450faacc') + +build() { + cd "${srcdir}" + gcc -Wall -Wstrict-prototypes ${CFLAGS} ${LDFLAGS} ifenslave.c -o ifenslave +} + +package() { + cd "${srcdir}" + install -Dm755 ifenslave "${pkgdir}"/usr/bin/ifenslave +} + +#---- license gpg-key sha256sums ---- + +license=('GPL2') + +sha256sums=(1c2432a121d9c752175af75b26575b79c3c50d90195ce71c9e736d831f1e50e1) # ifenslave.c diff --git a/ifenslave/PKGBUILD-arch b/ifenslave/PKGBUILD-arch new file mode 100644 index 0000000..9620a25 --- /dev/null +++ b/ifenslave/PKGBUILD-arch @@ -0,0 +1,23 @@ +# Maintainer: Gaetan Bisson +# Contributor: Judd Vinet + +pkgname=ifenslave +pkgver=1.1.0 +pkgrel=11 +pkgdesc='Utility for bonding ethernet interfaces' +url='https://www.linuxfoundation.org/en/Net:Bonding' +arch=('x86_64') +license=('GPL2') +makedepends=('linux-api-headers') +source=(ifenslave.c::'https://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob_plain;f=Documentation/networking/ifenslave.c;h=450faacc') +sha256sums=('1c2432a121d9c752175af75b26575b79c3c50d90195ce71c9e736d831f1e50e1') + +build() { + cd "${srcdir}" + gcc -Wall -Wstrict-prototypes ${CFLAGS} ${LDFLAGS} ifenslave.c -o ifenslave +} + +package() { + cd "${srcdir}" + install -Dm755 ifenslave "${pkgdir}"/usr/bin/ifenslave +} diff --git a/ifenslave/clean b/ifenslave/clean new file mode 100644 index 0000000..f8a9835 --- /dev/null +++ b/ifenslave/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,ife*.c} diff --git a/ifenslave/deps b/ifenslave/deps new file mode 100644 index 0000000..8d1c8b6 --- /dev/null +++ b/ifenslave/deps @@ -0,0 +1 @@ + diff --git a/ifenslave/time b/ifenslave/time new file mode 100644 index 0000000..0fbf406 --- /dev/null +++ b/ifenslave/time @@ -0,0 +1,3 @@ +real 0m1.832s +user 0m1.707s +sys 0m0.228s diff --git a/jave/PKGBUILD b/jave/PKGBUILD new file mode 100644 index 0000000..cdc179e --- /dev/null +++ b/jave/PKGBUILD @@ -0,0 +1,45 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=jave +pkgver=5 +pkgrel=010 +pkgdesc="Java Ascii Versatile Editor - graphics editor for editing texts instead of images." +url="http://www.jave.de/" +depends=("java-environment" "sh") +optdepends=('figlet: provide base figlet fonts' +'figlet-fonts: provide additional asciiart fonts') +arch=('any') +source=("${url}download/${pkgname}${pkgver}.zip" + "${url}download/license.txt" + "jave.sh") + +package() { + mkdir -p $pkgdir/usr/share/java/$pkgname + install -Dm755 $srcdir/jave.sh $pkgdir/usr/bin/jave + install -Dm644 $srcdir/license.txt $pkgdir/usr/share/licenses/jave/license.txt + + mv $srcdir/* $pkgdir/usr/share/java/$pkgname + rm $pkgdir/usr/share/java/$pkgname/$pkgname.sh + rm $pkgdir/usr/share/java/$pkgname/license.txt + rm $pkgdir/usr/share/java/$pkgname/$pkgname*.zip + rm $pkgdir/usr/share/java/$pkgname/fonts -r + + cd $pkgdir/usr/share/java/$pkgname/ + ln -s /usr/share/figlet/ fonts +} + +#---- license gpg-key sha256sums ---- + +license=("custom") + +sha512sums=('370320a046b1e06132c29b8de71f8a38ef82983ba6a838f4fd01f697deca1a94e9df8c05efd1496d7c619ccbfa95fcea58060dfe8022cd9ec52a395cce0098ae' + 'b6d4b455e9bfa8e094a425f102ba8e8a2b2028485dee71e0b1808b262d01976ee8059cd5055d431f4378b966152c3030ff3768d18caa34941b4e7204d9be6fc7' + '710314dba9740f0133193ba6e45d7482d0fa1fc5f4ea2de8d3b9a61b139e0b2a278893ca19b335f009e4514f2a156dec05d9307437720c38231e7b1a40e0eff5') + +sha256sums=(2b01458c861e2f8ed7d023344674c96424782246f96e9442844229e5a9eb0ef9 # jave5.zip + bb3891b097464d4e438b921da130de86b72932f15b18a8ce53822ce85eebe8f3 # license.txt + 8b9b387e9eb9ec88137e9c048736796ff0cd5a26f465a1569177d87185ee82da) # jave.sh diff --git a/jave/PKGBUILD-aur b/jave/PKGBUILD-aur new file mode 100644 index 0000000..59cd78c --- /dev/null +++ b/jave/PKGBUILD-aur @@ -0,0 +1,35 @@ +# Maintainer: farseerfc +# Contributor: Andreas Hauser + +pkgname=jave +pkgver=5 +pkgrel=10 +pkgdesc="Java Ascii Versatile Editor - graphics editor for editing texts instead of images." +url="http://www.jave.de/" +license=("custom") +depends=("java-environment" "sh") +optdepends=('figlet: provide base figlet fonts' +'figlet-fonts: provide additional asciiart fonts') +arch=('any') +source=("${url}download/${pkgname}${pkgver}.zip" + "${url}download/license.txt" + "jave.sh") + +package() { + mkdir -p $pkgdir/usr/share/java/$pkgname + install -Dm755 $srcdir/jave.sh $pkgdir/usr/bin/jave + install -Dm644 $srcdir/license.txt $pkgdir/usr/share/licenses/jave/license.txt + + mv $srcdir/* $pkgdir/usr/share/java/$pkgname + rm $pkgdir/usr/share/java/$pkgname/$pkgname.sh + rm $pkgdir/usr/share/java/$pkgname/license.txt + rm $pkgdir/usr/share/java/$pkgname/$pkgname*.zip + rm $pkgdir/usr/share/java/$pkgname/fonts -r + + cd $pkgdir/usr/share/java/$pkgname/ + ln -s /usr/share/figlet/fonts fonts +} + +sha512sums=('370320a046b1e06132c29b8de71f8a38ef82983ba6a838f4fd01f697deca1a94e9df8c05efd1496d7c619ccbfa95fcea58060dfe8022cd9ec52a395cce0098ae' + 'b6d4b455e9bfa8e094a425f102ba8e8a2b2028485dee71e0b1808b262d01976ee8059cd5055d431f4378b966152c3030ff3768d18caa34941b4e7204d9be6fc7' + '710314dba9740f0133193ba6e45d7482d0fa1fc5f4ea2de8d3b9a61b139e0b2a278893ca19b335f009e4514f2a156dec05d9307437720c38231e7b1a40e0eff5') diff --git a/jave/clean b/jave/clean new file mode 100644 index 0000000..16ff439 --- /dev/null +++ b/jave/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,*.zip} diff --git a/jave/deps b/jave/deps new file mode 100644 index 0000000..27ce781 --- /dev/null +++ b/jave/deps @@ -0,0 +1 @@ +jdk-openjdk diff --git a/jave/jave.sh b/jave/jave.sh new file mode 100755 index 0000000..8a1bdeb --- /dev/null +++ b/jave/jave.sh @@ -0,0 +1,2 @@ +#!/bin/sh +java -jar /usr/share/java/jave/jave*.jar diff --git a/jave/license.txt b/jave/license.txt new file mode 100644 index 0000000..e8eb1c8 --- /dev/null +++ b/jave/license.txt @@ -0,0 +1,32 @@ +PLEASE READ THIS CONTRACT CAREFULLY. BY DOWNLOADING/USING ALL OR ANY PORTION OF +THE SOFTWARE YOU ACCEPT ALL THE TERMS AND CONDITIONS OF THIS AGREEMENT + +This software is provided as is by the author and contributors without warranty +of any kind. To the maximum extent permitted by applicable law, i further +disclaim all warranties, including without limitation any implied warranties +of merchantability, fitness for a particular purpose, and noninfringement. +The entire risk arising out of the use or performance of the product and +documentation remains with recipient. +To the maximum extent permitted by applicable law, in no event shall i +be liable for any consequential, incidental, direct, indirect, special, +punitive, or other damages whatsoever (including, without limitation, damages +for loss of business profits, business interruption, loss of business +information, or other pecuniary loss) arising out of this agreement or the +use of or inability to use the product, even if i have been advised of the +possibility of such damages. + +This software may be used free of charge. It may be freely distributed, as +long as there are no files from the package removed or modified. + +The software may not be decompiled without my permission. + +The software contains the free java library BrowserLauncher, which is Copyright +1999-2001 by Eric Albert (ejalbert@cs.stanford.edu) + +The software contains the Gif89Encoder from J. M. G. Elliott. It is based on +the acme gif encoder: + Copyright (C) 1996 by Jef Poskanzer . All rights reserved. + +The JavE software is Copyright (C) 2000-2002 by Markus Gebhard. + + March 19th, 2002 Markus Gebhard (markus@jave.de) \ No newline at end of file diff --git a/json-glib/PKGBUILD b/json-glib/PKGBUILD new file mode 100644 index 0000000..1956c44 --- /dev/null +++ b/json-glib/PKGBUILD @@ -0,0 +1,62 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgbase=json-glib +pkgname=(json-glib json-glib-docs) +pkgver=1.6.6 +pkgrel=01 +pkgdesc="JSON library built on GLib" +url="https://wiki.gnome.org/Projects/JsonGlib" +arch=(x86_64) +depends=(glib2) +makedepends=(gobject-introspection git meson gi-docgen docbook-xsl) +_commit=3cf2b53667a73376c852e08dcadd197a5f8325b9 # tags/1.6.6^0 +source=("git+https://gitlab.gnome.org/GNOME/json-glib.git#commit=$_commit") + +pkgver() { + cd json-glib + git describe --tags | sed 's/-/+/g' +} + +prepare() { + cd json-glib +} + +build() { + arch-meson json-glib build -D man=true + meson compile -C build +} + +check() { + meson test -C build --print-errorlogs +} + +package_json-glib() { + depends+=(libg{lib,object,io}-2.0.so) + provides+=(libjson-glib-1.0.so) + + meson install -C build --destdir "$pkgdir" + + mkdir -p doc/usr/share + mv {"$pkgdir",doc}/usr/share/doc + + rm -r "$pkgdir"/usr/{lib,share}/installed-tests +} + +package_json-glib-docs() { + pkgdesc+=" (documentation)" + depends=() + + mv doc/* "$pkgdir" +} + + +#---- license gpg-key sha256sums ---- + +license=(GPL) + +sha256sums=(SKIP) diff --git a/json-glib/PKGBUILD-arch b/json-glib/PKGBUILD-arch new file mode 100644 index 0000000..56b2395 --- /dev/null +++ b/json-glib/PKGBUILD-arch @@ -0,0 +1,55 @@ +# Maintainer: Jan Alexander Steffens (heftig) +# Contributor: Ionut Biru + +pkgbase=json-glib +pkgname=(json-glib json-glib-docs) +pkgver=1.6.6 +pkgrel=1 +pkgdesc="JSON library built on GLib" +url="https://wiki.gnome.org/Projects/JsonGlib" +arch=(x86_64) +license=(GPL) +depends=(glib2) +makedepends=(gobject-introspection git meson gi-docgen docbook-xsl) +_commit=3cf2b53667a73376c852e08dcadd197a5f8325b9 # tags/1.6.6^0 +source=("git+https://gitlab.gnome.org/GNOME/json-glib.git#commit=$_commit") +sha256sums=('SKIP') + +pkgver() { + cd json-glib + git describe --tags | sed 's/-/+/g' +} + +prepare() { + cd json-glib +} + +build() { + arch-meson json-glib build -D man=true + meson compile -C build +} + +check() { + meson test -C build --print-errorlogs +} + +package_json-glib() { + depends+=(libg{lib,object,io}-2.0.so) + provides+=(libjson-glib-1.0.so) + + meson install -C build --destdir "$pkgdir" + + mkdir -p doc/usr/share + mv {"$pkgdir",doc}/usr/share/doc + + rm -r "$pkgdir"/usr/{lib,share}/installed-tests +} + +package_json-glib-docs() { + pkgdesc+=" (documentation)" + depends=() + + mv doc/* "$pkgdir" +} + +# vim:set sw=2 et: diff --git a/json-glib/clean b/json-glib/clean new file mode 100644 index 0000000..62200e0 --- /dev/null +++ b/json-glib/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,json-glib} diff --git a/json-glib/deps b/json-glib/deps new file mode 100644 index 0000000..57af16d --- /dev/null +++ b/json-glib/deps @@ -0,0 +1,5 @@ +gobject-introspection +git +meson +gi-docgen +docbook-xsl diff --git a/json-glib/time b/json-glib/time new file mode 100644 index 0000000..5066a1b --- /dev/null +++ b/json-glib/time @@ -0,0 +1,4 @@ + +real 0m28.176s +user 0m28.345s +sys 0m3.141s diff --git a/jsoncpp/PKGBUILD b/jsoncpp/PKGBUILD new file mode 100644 index 0000000..de5032e --- /dev/null +++ b/jsoncpp/PKGBUILD @@ -0,0 +1,74 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgbase=jsoncpp +pkgname=('jsoncpp' 'jsoncpp-doc') +pkgver=1.9.5 +pkgrel=01 +pkgdesc='C++ library for interacting with JSON' +url='https://github.com/open-source-parsers/jsoncpp' +arch=('x86_64') +makedepends=('gcc-libs' 'doxygen' 'graphviz' 'python' 'meson') +options=('staticlibs') +source=(https://github.com/open-source-parsers/${pkgbase}/archive/${pkgver}/${pkgbase}-${pkgver}.tar.gz) + +prepare() { + cd ${pkgbase}-${pkgver} + echo "${pkgver}" > version +} + +build() { + cd ${pkgbase}-${pkgver} + echo "Building shared library..." + arch-meson --default-library shared build + ninja -C build + + echo "Building static library..." + arch-meson --default-library static build-static + ninja -C build-static + + echo "Building docs..." + python doxybuild.py \ + --doxygen="$(command -v doxygen)" \ + --with-dot +} + +check() { + cd ${pkgbase}-${pkgver} + ninja -C build test + cd test + python runjsontests.py ../build/jsontestrunner + python rununittests.py ../build/jsoncpp_test +} + +package_jsoncpp() { + depends=('gcc-libs') + optdepends=('jsoncpp-doc: documentation') + provides=('libjsoncpp.so') + + cd ${pkgbase}-${pkgver} + DESTDIR="${pkgdir}" ninja -C build install + DESTDIR="${pkgdir}" ninja -C build-static install + install -Dm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}" + install -Dm 644 README.md -t "${pkgdir}/usr/share/doc/${pkgname}" +} + +package_jsoncpp-doc() { + pkgdesc+=' (documentation)' + optdepends=('jsoncpp') + + cd ${pkgbase}-${pkgver} + install -Dm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}" + install -dm 755 "${pkgdir}/usr/share/doc/${pkgbase}" + cp -a dist/doxygen/jsoncpp-api-html-${pkgver} "${pkgdir}/usr/share/doc/${pkgbase}/html" +} + +#---- license gpg-key sha256sums ---- + +license=('MIT' 'custom:Public_Domain') + +sha256sums=(f409856e5920c18d0c2fb85276e24ee607d2a09b5e7d5f0a371368903c275da2) # jsoncpp-1.9.5.tar.gz diff --git a/jsoncpp/PKGBUILD-arch b/jsoncpp/PKGBUILD-arch new file mode 100644 index 0000000..a0b2023 --- /dev/null +++ b/jsoncpp/PKGBUILD-arch @@ -0,0 +1,71 @@ +# Maintainer: Levente Polyak +# Contributor: Andrea Scarpino +# Contributor: Jonahtan Schaeffer +# COntributor: Drake Arconis + +pkgbase=jsoncpp +pkgname=('jsoncpp' 'jsoncpp-doc') +pkgver=1.9.5 +pkgrel=1 +pkgdesc='C++ library for interacting with JSON' +url='https://github.com/open-source-parsers/jsoncpp' +arch=('x86_64') +license=('MIT' 'custom:Public_Domain') +makedepends=('gcc-libs' 'doxygen' 'graphviz' 'python' 'meson') +options=('staticlibs') +source=(https://github.com/open-source-parsers/${pkgbase}/archive/${pkgver}/${pkgbase}-${pkgver}.tar.gz) +sha512sums=('1d06e044759b1e1a4cc4960189dd7e001a0a4389d7239a6d59295af995a553518e4e0337b4b4b817e70da5d9731a4c98655af90791b6287870b5ff8d73ad8873') +b2sums=('744275297647be8f1ac7bbf6c818e5106fc122591b3fb68c37cf33f5b3b7d6666e8429bb7ca2ae693202a5a83c274303804e21ebb27f05ba235568bf75a9b375') + +prepare() { + cd ${pkgbase}-${pkgver} + echo "${pkgver}" > version +} + +build() { + cd ${pkgbase}-${pkgver} + echo "Building shared library..." + arch-meson --default-library shared build + ninja -C build + + echo "Building static library..." + arch-meson --default-library static build-static + ninja -C build-static + + echo "Building docs..." + python doxybuild.py \ + --doxygen="$(command -v doxygen)" \ + --with-dot +} + +check() { + cd ${pkgbase}-${pkgver} + ninja -C build test + cd test + python runjsontests.py ../build/jsontestrunner + python rununittests.py ../build/jsoncpp_test +} + +package_jsoncpp() { + depends=('gcc-libs') + optdepends=('jsoncpp-doc: documentation') + provides=('libjsoncpp.so') + + cd ${pkgbase}-${pkgver} + DESTDIR="${pkgdir}" ninja -C build install + DESTDIR="${pkgdir}" ninja -C build-static install + install -Dm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}" + install -Dm 644 README.md -t "${pkgdir}/usr/share/doc/${pkgname}" +} + +package_jsoncpp-doc() { + pkgdesc+=' (documentation)' + optdepends=('jsoncpp') + + cd ${pkgbase}-${pkgver} + install -Dm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}" + install -dm 755 "${pkgdir}/usr/share/doc/${pkgbase}" + cp -a dist/doxygen/jsoncpp-api-html-${pkgver} "${pkgdir}/usr/share/doc/${pkgbase}/html" +} + +# vim: ts=2 sw=2 et: diff --git a/jsoncpp/clean b/jsoncpp/clean new file mode 100644 index 0000000..5b291fd --- /dev/null +++ b/jsoncpp/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,jsoncpp*tar.gz} diff --git a/jsoncpp/deps b/jsoncpp/deps new file mode 100644 index 0000000..cd8eaa5 --- /dev/null +++ b/jsoncpp/deps @@ -0,0 +1,4 @@ +doxygen +graphviz +python +meson diff --git a/jsoncpp/time b/jsoncpp/time new file mode 100644 index 0000000..c39ba5f --- /dev/null +++ b/jsoncpp/time @@ -0,0 +1,5 @@ + +real 0m40.411s +user 0m56.788s +sys 0m4.930s + diff --git a/jspeak/PKGBUILD b/jspeak/PKGBUILD new file mode 100644 index 0000000..127af8f --- /dev/null +++ b/jspeak/PKGBUILD @@ -0,0 +1,42 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=jspeak +pkgver=2021.12.22 +pkgrel=01 +pkgdesc='A Text to Speech Reader Front-end that Reads from the Clipboard and with Exceptionable Features ' +arch=('any') +url="https://github.com/BullShark/$pkgname" +depends=('espeak' 'java-runtime>=16') +optdepends=('mbrola-voices-us1' 'mbrola-voices-us2' 'mbrola-voices-us3' 'mbrola-voices-en1' 'mbrola-voices-af1' 'mbrola-voices-ar1' 'mbrola-voices-ar2' 'mbrola-voices-br1' 'mbrola-voices-br2' 'mbrola-voices-br3' 'mbrola-voices-br4' 'mbrola-voices-bz1' 'mbrola-voices-ca1' 'mbrola-voices-ca2' 'mbrola-voices-cn1' 'mbrola-voices-cr1' 'mbrola-voices-cz1' 'mbrola-voices-cz2' 'mbrola-voices-de1' 'mbrola-voices-de2' 'mbrola-voices-de3' 'mbrola-voices-de4' 'mbrola-voices-de5' 'mbrola-voices-de6' 'mbrola-voices-de7' 'mbrola-voices-de8' 'mbrola-voices-ee1' 'mbrola-voices-es1' 'mbrola-voices-es2' 'mbrola-voices-es3' 'mbrola-voices-es4' 'mbrola-voices-fr1' 'mbrola-voices-fr2' 'mbrola-voices-fr3' 'mbrola-voices-fr4' 'mbrola-voices-fr5' 'mbrola-voices-fr6' 'mbrola-voices-fr7' 'mbrola-voices-gr1' 'mbrola-voices-gr2' 'mbrola-voices-hb1' 'mbrola-voices-hb2' 'mbrola-voices-hn1' 'mbrola-voices-hu1' 'mbrola-voices-ic1' 'mbrola-voices-id1' 'mbrola-voices-in1' 'mbrola-voices-in2' 'mbrola-voices-ir1' 'mbrola-voices-it1' 'mbrola-voices-it2' 'mbrola-voices-it3' 'mbrola-voices-it4' 'mbrola-voices-jp1' 'mbrola-voices-jp2' 'mbrola-voices-jp3' 'mbrola-voices-la1' 'mbrola-voices-lt1' 'mbrola-voices-lt2' 'mbrola-voices-ma1' 'mbrola-voices-mx1' 'mbrola-voices-mx2' 'mbrola-voices-nl1' 'mbrola-voices-nl2' 'mbrola-voices-nl3' 'mbrola-voices-nz1' 'mbrola-voices-pl1' 'mbrola-voices-pt1' 'mbrola-voices-ro1' 'mbrola-voices-sw1' 'mbrola-voices-sw2' 'mbrola-voices-tl1' 'mbrola-voices-tr1' 'mbrola-voices-tr2' 'mbrola-voices-vz1') +source=("${pkgname}-$pkgver.tar.gz::${url}/archive/$pkgver.tar.gz") +#https://github.com/BullShark/jspeak/archive/2021.12.22.tar.gz +package() { + mkdir -p $pkgdir/usr/lib + cp -a $srcdir/usr/lib/JSpeak.jar $pkgdir/usr/lib/JSpeak.jar +# JSpeak-2021.12.22/src/main/java/expectusafterlun/ch/jspeak/JSpeak.java + mkdir -p $pkgdir/usr + cp -a $srcdir/usr/bin $pkgdir/usr/bin + chmod +x $pkgdir/usr/bin/$pkgname + + mkdir -p $pkgdir/usr/share/applications + cp -a $srcdir/usr/share/applications/jspeak.desktop $pkgdir/usr/share/applications/jspeak.desktop + + mkdir -p $pkgdir/usr/share/pixmaps + cp -a $srcdir/usr/share/pixmaps/jspeak.png $pkgdir/usr/share/pixmaps/jspeak.png +} + +#---- license gpg-key sha256sums ---- + +license=('GPL3') + +#sha256sums=('320a9cb9cee15179091d7bf92537480bac7f5759b7381e7599a12f8b6ff830a7') + +sha256sums=(6a8957b22a0f9763d89d2f1cd686975e764720d74f460ba7c415fb0a10ece6c9) # jspeak-2021.12.22.tar.gz +#6a8957b22a0f9763d89d2f1cd686975e764720d74f460ba7c415fb0a10ece6c9 jspeak-2021.12.22.tar.gz +#6a8957b22a0f9763d89d2f1cd686975e764720d74f460ba7c415fb0a10ece6c9 JSpeak-2021.12.22.tar.gz +#6a8957b22a0f9763d89d2f1cd686975e764720d74f460ba7c415fb0a10ece6c9 tmp.gz +# https://github.com/BullShark/jspeak/archive/2021.12.22.tar.gz diff --git a/jspeak/PKGBUILD-aur b/jspeak/PKGBUILD-aur new file mode 100644 index 0000000..4e59a55 --- /dev/null +++ b/jspeak/PKGBUILD-aur @@ -0,0 +1,28 @@ +# Maintainer: BullShark +# Contributor: TheCynicalTeam +pkgname=jspeak +pkgver=2021.12.22 +pkgrel=1 +pkgdesc='A Text to Speech Reader Front-end that Reads from the Clipboard and with Exceptionable Features ' +arch=('any') +url="https://github.com/BullShark/$pkgname" +license=('GPL3') +depends=('espeak' 'java-runtime>=16') +optdepends=('mbrola-voices-us1' 'mbrola-voices-us2' 'mbrola-voices-us3' 'mbrola-voices-en1' 'mbrola-voices-af1' 'mbrola-voices-ar1' 'mbrola-voices-ar2' 'mbrola-voices-br1' 'mbrola-voices-br2' 'mbrola-voices-br3' 'mbrola-voices-br4' 'mbrola-voices-bz1' 'mbrola-voices-ca1' 'mbrola-voices-ca2' 'mbrola-voices-cn1' 'mbrola-voices-cr1' 'mbrola-voices-cz1' 'mbrola-voices-cz2' 'mbrola-voices-de1' 'mbrola-voices-de2' 'mbrola-voices-de3' 'mbrola-voices-de4' 'mbrola-voices-de5' 'mbrola-voices-de6' 'mbrola-voices-de7' 'mbrola-voices-de8' 'mbrola-voices-ee1' 'mbrola-voices-es1' 'mbrola-voices-es2' 'mbrola-voices-es3' 'mbrola-voices-es4' 'mbrola-voices-fr1' 'mbrola-voices-fr2' 'mbrola-voices-fr3' 'mbrola-voices-fr4' 'mbrola-voices-fr5' 'mbrola-voices-fr6' 'mbrola-voices-fr7' 'mbrola-voices-gr1' 'mbrola-voices-gr2' 'mbrola-voices-hb1' 'mbrola-voices-hb2' 'mbrola-voices-hn1' 'mbrola-voices-hu1' 'mbrola-voices-ic1' 'mbrola-voices-id1' 'mbrola-voices-in1' 'mbrola-voices-in2' 'mbrola-voices-ir1' 'mbrola-voices-it1' 'mbrola-voices-it2' 'mbrola-voices-it3' 'mbrola-voices-it4' 'mbrola-voices-jp1' 'mbrola-voices-jp2' 'mbrola-voices-jp3' 'mbrola-voices-la1' 'mbrola-voices-lt1' 'mbrola-voices-lt2' 'mbrola-voices-ma1' 'mbrola-voices-mx1' 'mbrola-voices-mx2' 'mbrola-voices-nl1' 'mbrola-voices-nl2' 'mbrola-voices-nl3' 'mbrola-voices-nz1' 'mbrola-voices-pl1' 'mbrola-voices-pt1' 'mbrola-voices-ro1' 'mbrola-voices-sw1' 'mbrola-voices-sw2' 'mbrola-voices-tl1' 'mbrola-voices-tr1' 'mbrola-voices-tr2' 'mbrola-voices-vz1') +source=("${pkgname}-$pkgver.tar.gz::${url}/archive/$pkgver.tar.gz") +sha256sums=('320a9cb9cee15179091d7bf92537480bac7f5759b7381e7599a12f8b6ff830a7') + +package() { + mkdir -p $pkgdir/usr/lib + cp -a $srcdir/usr/lib/JSpeak.jar $pkgdir/usr/lib/JSpeak.jar + + mkdir -p $pkgdir/usr + cp -a $srcdir/usr/bin $pkgdir/usr/bin + chmod +x $pkgdir/usr/bin/$pkgname + + mkdir -p $pkgdir/usr/share/applications + cp -a $srcdir/usr/share/applications/jspeak.desktop $pkgdir/usr/share/applications/jspeak.desktop + + mkdir -p $pkgdir/usr/share/pixmaps + cp -a $srcdir/usr/share/pixmaps/jspeak.png $pkgdir/usr/share/pixmaps/jspeak.png +} diff --git a/jspeak/clean b/jspeak/clean new file mode 100644 index 0000000..bff66d6 --- /dev/null +++ b/jspeak/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,*tar.gz*} diff --git a/jspeak/deps b/jspeak/deps new file mode 100644 index 0000000..1bf03d3 --- /dev/null +++ b/jspeak/deps @@ -0,0 +1 @@ +jre-openjdk espeak diff --git a/jwm/PKGBUILD b/jwm/PKGBUILD new file mode 100644 index 0000000..c1661ca --- /dev/null +++ b/jwm/PKGBUILD @@ -0,0 +1,55 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=jwm +pkgver=2.4.0 +pkgrel=02 +pkgdesc="A lightweight window manager for the X11 Window System" +arch=(x86_64) +#url="https://github.com/joewing/jwm" +url="https://joewing.net/projects/jwm" + +groups=(joborun-pkg-x11) +provides=('jwm') +depends=('libx11' 'libxft' 'libjpeg-turbo' 'libxpm' 'libxinerama' 'libpng' 'cairo' 'librsvg') +backup=('etc/system.jwmrc') +source=("${url}/releases/$pkgname-$pkgver.tar.xz" + jwm.desktop) + + +prepare() { +# this is an Obarun patch - don't waste time building without it - it crashes out after 10" amd throws you back to tty + cd "$srcdir/$pkgname-$pkgver" + sed -i 's|/usr/local/share/|/usr/share/|' contrib/Makefile po/Makefile* example.jwmrc + # locales were broken in 2.4.0 + sed -i 's|mkdir_p = @mkdir_p@|mkdir_p = /usr/bin/mkdir -p --|' po/Makefile* +} + +build() { + cd $pkgname-$pkgver + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --disable-fribidi + make +} + + +package() { + cd $pkgname-$pkgver + make BINDIR="$pkgdir/usr/bin" MANDIR="$pkgdir/usr/share/man" \ + DESTDIR="$pkgdir" SYSCONF="$pkgdir/etc" install + install -Dm644 "$srcdir/jwm.desktop" "$pkgdir/usr/share/xsessions/jwm.desktop" + install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +#---- license gpg-key sha256sums ---- + +license=('MIT') + +sha256sums=(1449754f693bdfabbe6318803120722cc65197a73d6bf38120090aee18b16040 # jwm-2.4.0.tar.xz +#745d2f5df3a4ce9ecc8e75445edb3fbe31dd46c0c26d129cc14de7ad8b665326 # jwm-2.3.7.tar.xz +# 538186f3b42cc53e2cd9a18fa4ba523cb5e892b6c6fa75e38fb59da725de488c # resize_windows_whatever_the_corner.patch + 489327c12bb44c6802144f972411dab7a44a61920c07028fa3d81cfd0ba9fd30) # jwm.desktop diff --git a/jwm/clean b/jwm/clean new file mode 100644 index 0000000..c05c8b9 --- /dev/null +++ b/jwm/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,jwm*tar.xz} diff --git a/jwm/deps b/jwm/deps new file mode 100644 index 0000000..935f734 --- /dev/null +++ b/jwm/deps @@ -0,0 +1,11 @@ +libx11 +libxft +libjpeg-turbo +libxpm +libxinerama +libpng +cairo +librsvg +automake +autoconf +git diff --git a/jwm/jwm.desktop b/jwm/jwm.desktop new file mode 100644 index 0000000..af793d8 --- /dev/null +++ b/jwm/jwm.desktop @@ -0,0 +1,7 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=JWM +Comment=A lightweight window manger for the X11 Window System +Exec=/usr/bin/jwm +TryExec=/usr/bin/jwm +Type=XSession diff --git a/jwm/time b/jwm/time new file mode 100644 index 0000000..d35226d --- /dev/null +++ b/jwm/time @@ -0,0 +1,4 @@ + +real 0m7.798s +user 0m16.229s +sys 0m1.737s diff --git a/kismet/PKGBUILD b/kismet/PKGBUILD new file mode 100644 index 0000000..4bd23fd --- /dev/null +++ b/kismet/PKGBUILD @@ -0,0 +1,80 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=kismet +pkgver=2022_02_R1 +_realver="${pkgver//_/-}" +pkgrel=01 +pkgdesc="802.11 layer2 wireless network detector, sniffer, and intrusion detection system" +url="https://www.kismetwireless.net/" +arch=('x86_64') +depends=('libpcap' 'pcre' 'bluez-libs' 'libcap' 'protobuf-c' 'libprotobuf-c.so' + 'sqlite' 'libnm' 'gcc-libs' 'libusb' 'libusb-1.0.so' 'libnl' 'glibc' 'zlib' 'libelf' + 'lm_sensors' 'python' 'python-setuptools' 'python-protobuf' 'python-pyserial' + 'python-numpy' 'libwebsockets' 'libcap-ng' + libpcap.so libprotobuf.so libnm.so libwebsockets.so libsensors.so) + +makedepends=('python-setuptools') +optdepends=( + 'gpsd: log coordinates of detected networks' + 'wireshark-cli: provide OUI files used to determine device manufacturer' + 'wireshark-cli: mergecap, to merge multiple capture files' + 'sox: provide the default kismet sound playback binary' + 'festival: text-to-speech support' + 'flite: alternative/lightweight text-to-speech support') +backup=( + etc/kismet/kismet.conf + etc/kismet/kismet_80211.conf + etc/kismet/kismet_alerts.conf + etc/kismet/kismet_filter.conf + etc/kismet/kismet_httpd.conf + etc/kismet/kismet_logging.conf + etc/kismet/kismet_memory.conf +# etc/kismet/kismet_storage.conf + etc/kismet/kismet_uav.conf) +install=kismet.install +source=(https://www.kismetwireless.net/code/${pkgname}-${_realver}.tar.xz + kismet.sysusers + python-install-flags.patch) + +prepare() { + cd ${pkgname}-${_realver} + patch -Np0 < ../python-install-flags.patch + autoreconf -fiv +} + +build() { + cd ${pkgname}-${_realver} + ./configure \ + --prefix=/usr \ + --localstatedir=/var \ + --sysconfdir=/etc/kismet \ + --with-suidgroup=315 + make all plugins +} + +package() { + cd ${pkgname}-${_realver} + make DESTDIR="${pkgdir}" install + + # Makepkg strip bug #43600 + chmod u+w "${pkgdir}"/usr/bin/kismet* + chmod o-x "${pkgdir}"/usr/bin/kismet_cap* + chown 0:315 "${pkgdir}"/usr/bin/kismet_cap* + + install -Dm 644 ../kismet.sysusers "${pkgdir}/usr/lib/sysusers.d/kismet.conf" +} + +#---- license gpg-key sha512sums ---- + +license=('GPL') + +validpgpkeys=(354689DF3C9DED803381A661D7B28822738BBDB1) # Michael Kershaw + +sha256sums=(aaae4747f14734a73f601af013c0eee26e13680f5e3675dfce09b7de2e68b8a8 # kismet-2022-02-R1.tar.xz + 0ac08bf5016e00596e2fc0bc89e7907c2186b811ed8d8a2bffe6b95b42e147a3 # kismet.sysusers + d7eb99f9d3294e53c053b039cab3706a912dbaf0bbf34d9db012cbe46d0f1535) # python-install-flags.patch diff --git a/kismet/PKGBUILD-arch b/kismet/PKGBUILD-arch new file mode 100644 index 0000000..847a070 --- /dev/null +++ b/kismet/PKGBUILD-arch @@ -0,0 +1,73 @@ +# Maintainer: Levente Polyak +# Maintainer: Juergen Hoetzel +# Contributor: Angel Velasquez +# Contributor: Jason Chu + +pkgname=kismet +pkgver=2022_02_R1 +_realver="${pkgver//_/-}" +pkgrel=1 +pkgdesc="802.11 layer2 wireless network detector, sniffer, and intrusion detection system" +url="https://www.kismetwireless.net/" +arch=('x86_64') +license=('GPL') +depends=('libpcap' 'pcre' 'bluez-libs' 'libcap' 'protobuf-c' 'libprotobuf-c.so' + 'sqlite' 'libnm' 'gcc-libs' 'libusb' 'libusb-1.0.so' 'libnl' 'glibc' 'zlib' 'libelf' + 'lm_sensors' 'systemd' 'python' 'python-setuptools' 'python-protobuf' 'python-pyserial' + 'python-numpy' 'libwebsockets' 'libcap-ng' + libpcap.so libprotobuf.so libnm.so libwebsockets.so libsensors.so) +makedepends=('python-setuptools') +optdepends=( + 'gpsd: log coordinates of detected networks' + 'wireshark-cli: provide OUI files used to determine device manufacturer' + 'wireshark-cli: mergecap, to merge multiple capture files' + 'sox: provide the default kismet sound playback binary' + 'festival: text-to-speech support' + 'flite: alternative/lightweight text-to-speech support') +backup=( + etc/kismet/kismet.conf + etc/kismet/kismet_80211.conf + etc/kismet/kismet_alerts.conf + etc/kismet/kismet_filter.conf + etc/kismet/kismet_httpd.conf + etc/kismet/kismet_logging.conf + etc/kismet/kismet_memory.conf + etc/kismet/kismet_uav.conf) +install=kismet.install +source=(https://www.kismetwireless.net/code/${pkgname}-${_realver}.tar.xz + kismet.sysusers + python-install-flags.patch) +sha512sums=('09292096614b9ca3569430ef196cd7cf6fbd2ab7212bdfc653cf5433bdc727ea48c63638220804799f9756a92108a85e8abf0f4e8e0383dbcbe0028bf91a6aee' + '452b728c30c9932bdb91741af425267da87a66962ea9b736751948881f5477dee0bff8e2eeca2befdea2920da6d7d9e198bde69cef8c48bb49a0093a7f0ef897' + 'c24bff8ecc0288c0584f60760a27b364bf7b013aad809e4050bb6ed703fc60f3ea93f7e897717a6924333ac6734b20b99166846dae4a9c5c303ae1de39f6692c') +validpgpkeys=('354689DF3C9DED803381A661D7B28822738BBDB1') # Michael Kershaw + +prepare() { + cd ${pkgname}-${_realver} + patch -Np0 < ../python-install-flags.patch + autoreconf -fiv +} + +build() { + cd ${pkgname}-${_realver} + ./configure \ + --prefix=/usr \ + --localstatedir=/var \ + --sysconfdir=/etc/kismet \ + --with-suidgroup=315 + make all plugins +} + +package() { + cd ${pkgname}-${_realver} + make DESTDIR="${pkgdir}" install + + # Makepkg strip bug #43600 + chmod u+w "${pkgdir}"/usr/bin/kismet* + chmod o-x "${pkgdir}"/usr/bin/kismet_cap* + chown 0:315 "${pkgdir}"/usr/bin/kismet_cap* + + install -Dm 644 ../kismet.sysusers "${pkgdir}/usr/lib/sysusers.d/kismet.conf" +} + +# vim: ts=2 sw=2 et: diff --git a/kismet/clean b/kismet/clean new file mode 100644 index 0000000..feee514 --- /dev/null +++ b/kismet/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,kis*xz} diff --git a/kismet/deps b/kismet/deps new file mode 100644 index 0000000..b59fdff --- /dev/null +++ b/kismet/deps @@ -0,0 +1,14 @@ +bluez-libs +protobuf-c +libnm +libusb +lm_sensors +python +python-setuptools +python-protobuf +python-pyserial +python-numpy +libwebsockets +python-setuptools +autoconf +automake diff --git a/kismet/key b/kismet/key new file mode 100644 index 0000000..6bfe7d8 --- /dev/null +++ b/kismet/key @@ -0,0 +1 @@ +gpg -v --recv-key D7B28822738BBDB1 diff --git a/kismet/kismet.install b/kismet/kismet.install new file mode 100644 index 0000000..d84693a --- /dev/null +++ b/kismet/kismet.install @@ -0,0 +1,19 @@ +post_install() { + post_upgrade + + cat << EOP + Kismet has been installed with net_raw,net_admin capabilities capture helper + executables for users in the 'kismet' group. This WILL ALLOW USERS IN THIS + GROUP TO ALTER YOUR NETWORK INTERFACE STATES, but is more secure than running + all of Kismet as root. ONLY users in this group will be able to run Kismet + and capture from physical network devices. +EOP +} + +post_upgrade() { + for cap_bin in /usr/bin/kismet_cap_*; do + setcap cap_net_raw,cap_net_admin=eip "${cap_bin}"; + done +} + +# vim:set ts=2 sw=2 et: diff --git a/kismet/kismet.sysusers b/kismet/kismet.sysusers new file mode 100644 index 0000000..9cd325c --- /dev/null +++ b/kismet/kismet.sysusers @@ -0,0 +1 @@ +g kismet 315 - - - diff --git a/kismet/python-install-flags.patch b/kismet/python-install-flags.patch new file mode 100644 index 0000000..8cab8d5 --- /dev/null +++ b/kismet/python-install-flags.patch @@ -0,0 +1,45 @@ +--- capture_freaklabs_zigbee/Makefile.in 2019-10-10 10:49:00.494256269 +0200 ++++ capture_freaklabs_zigbee/Makefile.in 2019-10-10 10:52:49.374152190 +0200 +@@ -10,7 +10,7 @@ + sed -i -E 's/^import kismet_/from . import kismet_/' $@ + + install: +- $(PYTHON) setup.py install --root="/$(DESTDIR)" --prefix="$(prefix)" ++ $(PYTHON) setup.py install --root="/$(DESTDIR)" --prefix="$(prefix)" -O1 + + clean: + @-$(PYTHON) setup.py clean +--- capture_sdr_rtl433/Makefile.in 2019-10-10 10:49:00.507590313 +0200 ++++ capture_sdr_rtl433/Makefile.in 2019-10-10 10:52:28.069331801 +0200 +@@ -11,7 +11,7 @@ + sed -i -E 's/^import kismet_/from . import kismet_/' $@ + + install: +- $(PYTHON) setup.py install --root="/$(DESTDIR)" --prefix="$(prefix)" ++ $(PYTHON) setup.py install --root="/$(DESTDIR)" --prefix="$(prefix)" -O1 + + clean: + @-$(PYTHON) setup.py clean +--- capture_sdr_rtladsb/Makefile.in 2019-10-10 10:49:00.510923825 +0200 ++++ capture_sdr_rtladsb/Makefile.in 2019-10-10 10:52:32.542260533 +0200 +@@ -11,7 +11,7 @@ + sed -i -E 's/^import kismet_/from . import kismet_/' $@ + + install: +- $(PYTHON) setup.py install --root="/$(DESTDIR)" --prefix="$(prefix)" ++ $(PYTHON) setup.py install --root="/$(DESTDIR)" --prefix="$(prefix)" -O1 + + clean: + @-$(PYTHON) setup.py clean +--- capture_sdr_rtlamr/Makefile.in 2019-10-10 10:49:00.514257335 +0200 ++++ capture_sdr_rtlamr/Makefile.in 2019-10-10 10:52:35.978622527 +0200 +@@ -11,7 +11,7 @@ + sed -i -E 's/^import kismet_/from . import kismet_/' $@ + + install: +- $(PYTHON) setup.py install --root="/$(DESTDIR)" --prefix="$(prefix)" ++ $(PYTHON) setup.py install --root="/$(DESTDIR)" --prefix="$(prefix)" -O1 + + clean: + @-$(PYTHON) setup.py clean + diff --git a/kismet/time b/kismet/time new file mode 100644 index 0000000..db8d7b5 --- /dev/null +++ b/kismet/time @@ -0,0 +1,4 @@ + +real 18m26.810s +user 67m3.041s +sys 1m58.612s diff --git a/lcms2/0001-fix-for-optimisation-error-on-grayscale.patch b/lcms2/0001-fix-for-optimisation-error-on-grayscale.patch new file mode 100644 index 0000000..30df0a2 --- /dev/null +++ b/lcms2/0001-fix-for-optimisation-error-on-grayscale.patch @@ -0,0 +1,41 @@ +From fdbfb7694f9d7048d53674b79ddfc38068bfdaf7 Mon Sep 17 00:00:00 2001 +From: Marti Maria +Date: Sun, 30 Jan 2022 16:56:48 +0100 +Subject: Fix for optimisation error on grayscale + +Thanks to Aaron Boxer for reporting this issue +--- + src/cmsintrp.c | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/src/cmsintrp.c b/src/cmsintrp.c +index 5cd6d16..5eb98e6 100644 +--- a/src/cmsintrp.c ++++ b/src/cmsintrp.c +@@ -278,10 +278,10 @@ void Eval1Input(CMSREGISTER const cmsUInt16Number Input[], + // if last value... + if (Input[0] == 0xffff || p16->Domain[0] == 0) { + +- cmsUInt16Number y0 = LutTable[p16->Domain[0]]; +- ++ cmsUInt32Number y0 = p16->Domain[0] * p16->opta[0]; ++ + for (OutChan = 0; OutChan < p16->nOutputs; OutChan++) { +- Output[OutChan] = y0; ++ Output[OutChan] = LutTable[y0 + OutChan]; + } + } + else +@@ -324,10 +324,10 @@ void Eval1InputFloat(const cmsFloat32Number Value[], + // if last value... + if (val2 == 1.0 || p->Domain[0] == 0) { + +- y0 = LutTable[p->Domain[0]]; ++ cmsUInt32Number start = p->Domain[0] * p->opta[0]; + + for (OutChan = 0; OutChan < p->nOutputs; OutChan++) { +- Output[OutChan] = y0; ++ Output[OutChan] = LutTable[start + OutChan]; + } + } + else diff --git a/lcms2/PKGBUILD b/lcms2/PKGBUILD new file mode 100644 index 0000000..464c307 --- /dev/null +++ b/lcms2/PKGBUILD @@ -0,0 +1,42 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=lcms2 +pkgver=2.13.1 +pkgrel=01 +pkgdesc='Small-footprint color management engine, version 2' +arch=('x86_64') +url='http://www.littlecms.com/' +depends=('libtiff') +provides=('liblcms2.so') +source=("https://github.com/mm2/Little-CMS/releases/download/lcms${pkgver}/${pkgname}-${pkgver}.tar.gz") + +build() { + cd "${pkgname}-${pkgver}" + + ./configure \ + --prefix=/usr + make +} + +check() { + cd "${pkgname}-${pkgver}" + + make check +} + +package() { + cd "${pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" install + install -D -m0644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} + +#---- license gpg-key sha256sums ---- + +license=('MIT') + +sha256sums=(d473e796e7b27c5af01bd6d1552d42b45b43457e7182ce9903f38bb748203b88) # lcms2-2.13.1.tar.gz diff --git a/lcms2/PKGBUILD-arch b/lcms2/PKGBUILD-arch new file mode 100644 index 0000000..6e560f1 --- /dev/null +++ b/lcms2/PKGBUILD-arch @@ -0,0 +1,34 @@ +# Maintainer: Eric Bélanger + +pkgname=lcms2 +pkgver=2.13.1 +pkgrel=1 +pkgdesc='Small-footprint color management engine, version 2' +arch=('x86_64') +url='http://www.littlecms.com/' +license=('MIT') +depends=('libtiff') +provides=('liblcms2.so') +source=("https://github.com/mm2/Little-CMS/releases/download/lcms${pkgver}/${pkgname}-${pkgver}.tar.gz") +sha256sums=('d473e796e7b27c5af01bd6d1552d42b45b43457e7182ce9903f38bb748203b88') + +build() { + cd "${pkgname}-${pkgver}" + + ./configure \ + --prefix=/usr + make +} + +check() { + cd "${pkgname}-${pkgver}" + + make check +} + +package() { + cd "${pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" install + install -D -m0644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} diff --git a/lcms2/PKGBUILD-arch-13.0 b/lcms2/PKGBUILD-arch-13.0 new file mode 100644 index 0000000..fc146b3 --- /dev/null +++ b/lcms2/PKGBUILD-arch-13.0 @@ -0,0 +1,42 @@ +# Maintainer: Eric Bélanger + +pkgname=lcms2 +pkgver=2.13 +pkgrel=2 +pkgdesc='Small-footprint color management engine, version 2' +arch=('x86_64') +url='http://www.littlecms.com/' +license=('MIT') +depends=('libtiff') +provides=('liblcms2.so') +source=("https://github.com/mm2/Little-CMS/releases/download/lcms${pkgver}/${pkgname}-${pkgver}.tar.gz" + '0001-fix-for-optimisation-error-on-grayscale.patch') +sha256sums=('0c67a5cc144029cfa34647a52809ec399aae488db4258a6a66fba318474a070f' + 'efb68be0ad7bec92fb60d477ec1ba143feeba198e6e78fa0fc52d44bb4c2f9b4') + +prepare() { + cd "${pkgname}-${pkgver}" + + patch -Np1 < ../0001-fix-for-optimisation-error-on-grayscale.patch +} + +build() { + cd "${pkgname}-${pkgver}" + + ./configure \ + --prefix=/usr + make +} + +check() { + cd "${pkgname}-${pkgver}" + + make check +} + +package() { + cd "${pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" install + install -D -m0644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} diff --git a/lcms2/clean b/lcms2/clean new file mode 100644 index 0000000..18a4cc0 --- /dev/null +++ b/lcms2/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,lcms2*tar.gz} diff --git a/lcms2/deps b/lcms2/deps new file mode 100644 index 0000000..2322cc2 --- /dev/null +++ b/lcms2/deps @@ -0,0 +1,2 @@ +libtiff + diff --git a/lcms2/time b/lcms2/time new file mode 100644 index 0000000..13448c2 --- /dev/null +++ b/lcms2/time @@ -0,0 +1,5 @@ + +real 0m27.285s +user 0m47.380s +sys 0m2.654s + diff --git a/libcroco/PKGBUILD b/libcroco/PKGBUILD new file mode 100644 index 0000000..bda9e0e --- /dev/null +++ b/libcroco/PKGBUILD @@ -0,0 +1,49 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=libcroco +pkgver=0.6.13 +pkgrel=02 +pkgdesc="A CSS parsing library" +url="https://gitlab.gnome.org/GNOME/libcroco" +arch=(x86_64) +groups=() +depends=(glib2 libxml2) +makedepends=(intltool git gtk-doc) +_commit=7e15ca6c2c29a4b78367e6efa6195b331a92b2a7 # tags/0.6.13^0 +source=("git+https://gitlab.gnome.org/GNOME/libcroco.git#commit=$_commit") + +pkgver() { + cd $pkgname + git describe --tags | sed 's/-/+/g' +} + +prepare() { + cd $pkgname + NOCONFIGURE=1 ./autogen.sh +} + +check() { + cd $pkgname + make check +} + +build() { + cd $pkgname + ./configure --prefix=/usr --disable-static --enable-gtk-doc + make +} + +package() { + cd $pkgname + make DESTDIR="$pkgdir" install +} + +#---- license gpg-key sha256sums ---- + +license=(LGPL) + +sha256sums=('SKIP') diff --git a/libcroco/PKGBUILD-arch b/libcroco/PKGBUILD-arch new file mode 100644 index 0000000..dfe274e --- /dev/null +++ b/libcroco/PKGBUILD-arch @@ -0,0 +1,41 @@ +# Maintainer: Jan Alexander Steffens (heftig) +# Maintainer: Jan de Groot + +pkgname=libcroco +pkgver=0.6.13 +pkgrel=2 +pkgdesc="A CSS parsing library" +url="https://gitlab.gnome.org/GNOME/libcroco" +arch=(x86_64) +depends=(glib2 libxml2) +makedepends=(intltool git gtk-doc) +license=(LGPL) +_commit=7e15ca6c2c29a4b78367e6efa6195b331a92b2a7 # tags/0.6.13^0 +source=("git+https://gitlab.gnome.org/GNOME/libcroco.git#commit=$_commit") +sha256sums=('SKIP') + +pkgver() { + cd $pkgname + git describe --tags | sed 's/-/+/g' +} + +prepare() { + cd $pkgname + NOCONFIGURE=1 ./autogen.sh +} + +check() { + cd $pkgname + make check +} + +build() { + cd $pkgname + ./configure --prefix=/usr --disable-static --enable-gtk-doc + make +} + +package() { + cd $pkgname + make DESTDIR="$pkgdir" install +} diff --git a/libcroco/clean b/libcroco/clean new file mode 100644 index 0000000..2a5fb6c --- /dev/null +++ b/libcroco/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,libcroco} diff --git a/libcroco/deps b/libcroco/deps new file mode 100644 index 0000000..e95d95b --- /dev/null +++ b/libcroco/deps @@ -0,0 +1,4 @@ +intltool +gtk-doc +git +automake autoconf diff --git a/libcroco/time b/libcroco/time new file mode 100644 index 0000000..60aaf53 --- /dev/null +++ b/libcroco/time @@ -0,0 +1,4 @@ + +real 0m23.662s +user 0m27.513s +sys 0m2.105s diff --git a/libfido2/PKGBUILD b/libfido2/PKGBUILD new file mode 100644 index 0000000..c633c1a --- /dev/null +++ b/libfido2/PKGBUILD @@ -0,0 +1,47 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=libfido2 +pkgver=1.10.0 +pkgrel=01 +pkgdesc='Library functionality for FIDO 2.0, including communication with a device over USB' +url='https://developers.yubico.com/libfido2/' +arch=('x86_64') +depends=('openssl' 'libcbor' 'hidapi' 'libeudev' 'zlib') +makedepends=('cmake') +provides=('libfido2.so') +source=("https://developers.yubico.com/libfido2/Releases/libfido2-${pkgver}.tar.gz"{,.sig}) + +build() { + cd ${pkgname}-${pkgver} + # do not use bundled udev rules superseded by systemd + cmake -B build \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_C_FLAGS="${CFLAGS} ${CPPFLAGS}" \ + -Wno-dev \ + -S . + make -C build VERBOSE=1 +} + +package() { + cd ${pkgname}-${pkgver} + make -C build DESTDIR="${pkgdir}" install + install -Dm 644 NEWS README.adoc -t "${pkgdir}/usr/share/doc/${pkgname}" + install -Dm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}" +} + +#---- license gpg-key sha256sums ---- + +license=('BSD') + +validpgpkeys=('EE90AE0D19774C8386628FAAB428949EF7914718' # pedro martelletto + '1D7308B0055F5AEF36944A8F27A9C24D9588EA0F' # Aveen Ismail + '7FBB6186957496D58C751AC20E777DD85755AA4A') # Konstantinos Georgantas + +sha256sums=(526efd3d56af706c05d09f3d21f18ee3b0b15ac0c1f5c5da1acbc27c2730b99b # libfido2-1.10.0.tar.gz + 59daf501817b108ba76b9a2dbad8ab49bc33327d7272db4e53197358aab0af3a) # libfido2-1.10.0.tar.gz.sig diff --git a/libfido2/PKGBUILD-arch b/libfido2/PKGBUILD-arch new file mode 100644 index 0000000..8e4f0b3 --- /dev/null +++ b/libfido2/PKGBUILD-arch @@ -0,0 +1,45 @@ +# Maintainer: Levente Polyak +# Contributor: Karol Babioch + +pkgname=libfido2 +pkgver=1.10.0 +pkgrel=1 +pkgdesc='Library functionality for FIDO 2.0, including communication with a device over USB' +url='https://developers.yubico.com/libfido2/' +arch=('x86_64') +license=('BSD') +depends=('glibc' 'openssl' 'libcbor' 'libcbor.so' 'hidapi' 'systemd-libs' 'libudev.so' 'zlib') +makedepends=('cmake' 'systemd') +provides=('libfido2.so') +source=("https://developers.yubico.com/libfido2/Releases/libfido2-${pkgver}.tar.gz"{,.sig}) +sha512sums=('ba03e25d3f42f11cec74dee48c853ae35d03600f24ca06d2b751840408a132290fe22461372ae42ae31419061a63d9908c20a2c0cf3c0c9c8dbc46c34916784f' + 'SKIP') +b2sums=('a4144ede774b90700f4cb1371b2acdba9d3ca8e6e0d68c5670986a1825635ebeb75f03c930da14a4539a9e075bcc5f7cfde7fbcc05e1fa383902ac6739225789' + 'SKIP') +validpgpkeys=( + 'EE90AE0D19774C8386628FAAB428949EF7914718' # pedro martelletto + '1D7308B0055F5AEF36944A8F27A9C24D9588EA0F' # Aveen Ismail + '7FBB6186957496D58C751AC20E777DD85755AA4A' # Konstantinos Georgantas +) + +build() { + cd ${pkgname}-${pkgver} + # do not use bundled udev rules superseded by systemd + cmake -B build \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_C_FLAGS="${CFLAGS} ${CPPFLAGS}" \ + -Wno-dev \ + -S . + make -C build VERBOSE=1 +} + +package() { + cd ${pkgname}-${pkgver} + make -C build DESTDIR="${pkgdir}" install + install -Dm 644 NEWS README.adoc -t "${pkgdir}/usr/share/doc/${pkgname}" + install -Dm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}" +} + +# vim: ts=2 sw=2 et: diff --git a/libfido2/clean b/libfido2/clean new file mode 100644 index 0000000..bff66d6 --- /dev/null +++ b/libfido2/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,*tar.gz*} diff --git a/libfido2/deps b/libfido2/deps new file mode 100644 index 0000000..4c5a4f5 --- /dev/null +++ b/libfido2/deps @@ -0,0 +1,4 @@ +cmake +libcbor +hidapi + diff --git a/libfido2/key b/libfido2/key new file mode 100644 index 0000000..04eceb2 --- /dev/null +++ b/libfido2/key @@ -0,0 +1 @@ +gpg -v --recv-key A166878817F3906C diff --git a/libfido2/time b/libfido2/time new file mode 100644 index 0000000..a881356 --- /dev/null +++ b/libfido2/time @@ -0,0 +1,3 @@ +real 0m13.351s +user 0m35.709s +sys 0m5.108s diff --git a/libgccjit/PKGBUILD b/libgccjit/PKGBUILD new file mode 100644 index 0000000..e46818f --- /dev/null +++ b/libgccjit/PKGBUILD @@ -0,0 +1,109 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=libgccjit +pkgver=11.2.0 +pkgrel=02 +pkgdesc='Just-In-Time Compilation using GCC.' +arch=(x86_64) +url='https://gcc.gnu.org/wiki/JIT' +makedepends=(binutils libmpc) +checkdepends=(dejagnu) +depends=(glibc libmpc "gcc-libs=$pkgver") +options=(!emptydirs) +source=(https://sourceware.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.xz{,.sig}) + +prepare() { + cd "$srcdir/gcc-$pkgver" + + # Do not run fixincludes + sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in + + # Arch Linux installs x86_64 libraries /lib + sed -i '/m64=/s/lib64/lib/' gcc/config/i386/t-linux64 + + # hack! - some configure tests for header files using "$CPP $CPPFLAGS" + sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" {libiberty,gcc}/configure +} + +build() { + mkdir -p "$srcdir/$pkgname-build" + cd "$srcdir/$pkgname-build" + + CFLAGS=${CFLAGS/-Werror=format-security/} + CXXFLAGS=${CXXFLAGS/-Werror=format-security/} + + "$srcdir/gcc-$pkgver/configure" --prefix=/usr \ + --libdir=/usr/lib \ + --libexecdir=/usr/lib \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --with-bugurl=https://aur.archlinux.org/packages/libgccjit/ \ + --enable-languages=jit \ + --with-linker-hash-style=gnu \ + --with-system-zlib \ + --enable-__cxa_atexit \ + --enable-cet=auto \ + --enable-checking=release \ + --enable-clocale=gnu \ + --enable-default-pie \ + --enable-default-ssp \ + --enable-gnu-indirect-function \ + --enable-gnu-unique-object \ + --enable-install-libiberty \ + --enable-linker-build-id \ + --enable-lto \ + --enable-multilib \ + --enable-plugin \ + --enable-shared \ + --enable-host-shared \ + --enable-threads=posix \ + --disable-bootstrap \ + --disable-multilib \ + --disable-libssp \ + --disable-lto \ + --disable-libquadmath \ + --disable-liboffloadmic \ + --disable-libada \ + --disable-libsanitizer \ + --disable-libquadmath-support \ + --disable-libgomp \ + --disable-libvtv \ + --disable-libsanitizer \ + --disable-libstdcxx-pch \ + --disable-libunwind-exceptions \ + --disable-werror + + make +} + +package() { + cd "$srcdir/$pkgname-build/gcc" + make DESTDIR="$pkgdir" jit.install-common jit.install-info +} + +check() { + cd "$srcdir/$pkgname-build/gcc" + make check-jit RUNTESTFLAGS="-v -v -v" +} + +post_install() { + [[ -x usr/bin/install-info ]] || return 0 + install-info usr/share/info/libgccjit.info.gz usr/share/info/dir 2> /dev/null +} + +#---- license gpg-key sha256sums ---- + +license=(GPL3) + +validpgpkeys=(F3691687D867B81B51CE07D9BBE43771487328A9 # bpiotrowski@archlinux.org + 86CFFCA918CF3AF47147588051E8B148A9999C34 # evangelos@foutrelis.com + 13975A70E63C361C73AE69EF6EEB81F8981C74C7 # richard.guenther@gmail.com + D3A93CAD751C2AF4F8C7AD516C35B99309B5FA62) # Jakub Jelinek + +sha256sums=(d08edc536b54c372a1010ff6619dd274c0f1603aa49212ba20f7aa2cda36fa8b # gcc-11.2.0.tar.xz + 6bb782c64994e655abd5cf596ed7879cc52e5bcb0352be636ea9eec7caa98837) # gcc-11.2.0.tar.xz.sig diff --git a/libgccjit/PKGBUILD-aur b/libgccjit/PKGBUILD-aur new file mode 100644 index 0000000..f02bf6a --- /dev/null +++ b/libgccjit/PKGBUILD-aur @@ -0,0 +1,104 @@ +# Maintainer: Andrew Whatson +# Maintainer: ZenTauro +# Contributor: Ruben De Smet +# Contributor: Jashandeep Sohi + +pkgname=libgccjit +pkgver=11.1.0 +pkgrel=1 +pkgdesc='Just-In-Time Compilation using GCC.' +arch=(x86_64) +license=(GPL3) +url='https://gcc.gnu.org/wiki/JIT' +makedepends=(binutils libmpc) +checkdepends=(dejagnu) +depends=(glibc libmpc "gcc-libs=$pkgver") +options=(!emptydirs) +source=(https://sourceware.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.xz{,.sig}) +validpgpkeys=(F3691687D867B81B51CE07D9BBE43771487328A9 # bpiotrowski@archlinux.org + 86CFFCA918CF3AF47147588051E8B148A9999C34 # evangelos@foutrelis.com + 13975A70E63C361C73AE69EF6EEB81F8981C74C7 # richard.guenther@gmail.com + D3A93CAD751C2AF4F8C7AD516C35B99309B5FA62) # Jakub Jelinek +sha256sums=('4c4a6fb8a8396059241c2e674b85b351c26a5d678274007f076957afa1cc9ddf' + 'SKIP') + +prepare() { + cd "$srcdir/gcc-$pkgver" + + # Do not run fixincludes + sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in + + # Arch Linux installs x86_64 libraries /lib + sed -i '/m64=/s/lib64/lib/' gcc/config/i386/t-linux64 + + # hack! - some configure tests for header files using "$CPP $CPPFLAGS" + sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" {libiberty,gcc}/configure +} + +build() { + mkdir -p "$srcdir/$pkgname-build" + cd "$srcdir/$pkgname-build" + + CFLAGS=${CFLAGS/-Werror=format-security/} + CXXFLAGS=${CXXFLAGS/-Werror=format-security/} + + "$srcdir/gcc-$pkgver/configure" --prefix=/usr \ + --libdir=/usr/lib \ + --libexecdir=/usr/lib \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --with-bugurl=https://aur.archlinux.org/packages/libgccjit/ \ + --enable-languages=jit \ + --with-linker-hash-style=gnu \ + --with-system-zlib \ + --enable-__cxa_atexit \ + --enable-cet=auto \ + --enable-checking=release \ + --enable-clocale=gnu \ + --enable-default-pie \ + --enable-default-ssp \ + --enable-gnu-indirect-function \ + --enable-gnu-unique-object \ + --enable-install-libiberty \ + --enable-linker-build-id \ + --enable-lto \ + --enable-multilib \ + --enable-plugin \ + --enable-shared \ + --enable-host-shared \ + --enable-threads=posix \ + --disable-bootstrap \ + --disable-multilib \ + --disable-libssp \ + --disable-lto \ + --disable-libquadmath \ + --disable-liboffloadmic \ + --disable-libada \ + --disable-libsanitizer \ + --disable-libquadmath-support \ + --disable-libgomp \ + --disable-libvtv \ + --disable-libsanitizer \ + --disable-libstdcxx-pch \ + --disable-libunwind-exceptions \ + --disable-werror + + make +} + +package() { + cd "$srcdir/$pkgname-build/gcc" + make DESTDIR="$pkgdir" jit.install-common jit.install-info +} + +check() { + cd "$srcdir/$pkgname-build/gcc" + make check-jit RUNTESTFLAGS="-v -v -v" +} + +post_install() { + [[ -x usr/bin/install-info ]] || return 0 + install-info usr/share/info/libgccjit.info.gz usr/share/info/dir 2> /dev/null +} + +# vim: tabstop=1 expandtab diff --git a/libgccjit/PKGBUILD-aur-1 b/libgccjit/PKGBUILD-aur-1 new file mode 100644 index 0000000..18e5767 --- /dev/null +++ b/libgccjit/PKGBUILD-aur-1 @@ -0,0 +1,104 @@ +# Maintainer: Andrew Whatson +# Maintainer: ZenTauro +# Contributor: Ruben De Smet +# Contributor: Jashandeep Sohi + +pkgname=libgccjit +pkgver=11.2.0 +pkgrel=2 +pkgdesc='Just-In-Time Compilation using GCC.' +arch=(x86_64) +license=(GPL3) +url='https://gcc.gnu.org/wiki/JIT' +makedepends=(binutils libmpc) +checkdepends=(dejagnu) +depends=(glibc libmpc "gcc-libs=$pkgver") +options=(!emptydirs) +source=(https://sourceware.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.xz{,.sig}) +validpgpkeys=(F3691687D867B81B51CE07D9BBE43771487328A9 # bpiotrowski@archlinux.org + 86CFFCA918CF3AF47147588051E8B148A9999C34 # evangelos@foutrelis.com + 13975A70E63C361C73AE69EF6EEB81F8981C74C7 # richard.guenther@gmail.com + D3A93CAD751C2AF4F8C7AD516C35B99309B5FA62) # Jakub Jelinek +sha256sums=('d08edc536b54c372a1010ff6619dd274c0f1603aa49212ba20f7aa2cda36fa8b' + 'SKIP') + +prepare() { + cd "$srcdir/gcc-$pkgver" + + # Do not run fixincludes + sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in + + # Arch Linux installs x86_64 libraries /lib + sed -i '/m64=/s/lib64/lib/' gcc/config/i386/t-linux64 + + # hack! - some configure tests for header files using "$CPP $CPPFLAGS" + sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" {libiberty,gcc}/configure +} + +build() { + mkdir -p "$srcdir/$pkgname-build" + cd "$srcdir/$pkgname-build" + + CFLAGS=${CFLAGS/-Werror=format-security/} + CXXFLAGS=${CXXFLAGS/-Werror=format-security/} + + "$srcdir/gcc-$pkgver/configure" --prefix=/usr \ + --libdir=/usr/lib \ + --libexecdir=/usr/lib \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --with-bugurl=https://aur.archlinux.org/packages/libgccjit/ \ + --enable-languages=jit \ + --with-linker-hash-style=gnu \ + --with-system-zlib \ + --enable-__cxa_atexit \ + --enable-cet=auto \ + --enable-checking=release \ + --enable-clocale=gnu \ + --enable-default-pie \ + --enable-default-ssp \ + --enable-gnu-indirect-function \ + --enable-gnu-unique-object \ + --enable-install-libiberty \ + --enable-linker-build-id \ + --enable-lto \ + --enable-multilib \ + --enable-plugin \ + --enable-shared \ + --enable-host-shared \ + --enable-threads=posix \ + --disable-bootstrap \ + --disable-multilib \ + --disable-libssp \ + --disable-lto \ + --disable-libquadmath \ + --disable-liboffloadmic \ + --disable-libada \ + --disable-libsanitizer \ + --disable-libquadmath-support \ + --disable-libgomp \ + --disable-libvtv \ + --disable-libsanitizer \ + --disable-libstdcxx-pch \ + --disable-libunwind-exceptions \ + --disable-werror + + make +} + +package() { + cd "$srcdir/$pkgname-build/gcc" + make DESTDIR="$pkgdir" jit.install-common jit.install-info +} + +check() { + cd "$srcdir/$pkgname-build/gcc" + make check-jit RUNTESTFLAGS="-v -v -v" +} + +post_install() { + [[ -x usr/bin/install-info ]] || return 0 + install-info usr/share/info/libgccjit.info.gz usr/share/info/dir 2> /dev/null +} + +# vim: tabstop=1 expandtab diff --git a/libgccjit/clean b/libgccjit/clean new file mode 100644 index 0000000..a28a4a1 --- /dev/null +++ b/libgccjit/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,gcc*tar.xz*} diff --git a/libgccjit/deps b/libgccjit/deps new file mode 100644 index 0000000..cddbbe8 --- /dev/null +++ b/libgccjit/deps @@ -0,0 +1 @@ +dejagnu diff --git a/libgccjit/key b/libgccjit/key new file mode 100644 index 0000000..bc53995 --- /dev/null +++ b/libgccjit/key @@ -0,0 +1 @@ +gpg -v --recv-key 6C35B99309B5FA62 diff --git a/libgccjit/time b/libgccjit/time new file mode 100644 index 0000000..0e35120 --- /dev/null +++ b/libgccjit/time @@ -0,0 +1,5 @@ + +real 15m7.788s +user 45m24.824s +sys 1m46.517s + diff --git a/libgksu/PKGBUILD b/libgksu/PKGBUILD new file mode 100644 index 0000000..2868ff5 --- /dev/null +++ b/libgksu/PKGBUILD @@ -0,0 +1,72 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=libgksu +pkgver=2.0.12 +pkgrel=09 +pkgdesc="gksu authorization library" +arch=(x86_64) +url="http://www.nongnu.org/gksu/index.html" +depends=('gconf' 'gtk2' 'libgnome-keyring' 'libgtop' 'startup-notification') +makedepends=('intltool' 'gtk-doc') +options=('!emptydirs') +source=(http://people.debian.org/~kov/gksu/${pkgname}-${pkgver}.tar.gz + libgksu-2.0.0-fbsd.patch + libgksu-2.0.12-automake-1.11.2.patch + libgksu-2.0.12-fix-make-3.82.patch + libgksu-2.0.12-notests.patch + libgksu-2.0.12-revert-forkpty.patch + libgksu-2.0.7-libs.patch + libgksu-2.0.7-polinguas.patch + libgksu-2.0.12-security-format.patch) + +prepare() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -Np1 -i "${srcdir}/libgksu-2.0.0-fbsd.patch" + patch -Np1 -i "${srcdir}/libgksu-2.0.7-libs.patch" + patch -Np1 -i "${srcdir}/libgksu-2.0.7-polinguas.patch" + patch -Np1 -i "${srcdir}/libgksu-2.0.12-revert-forkpty.patch" + patch -Np0 -i "${srcdir}/libgksu-2.0.12-fix-make-3.82.patch" + patch -Np1 -i "${srcdir}/libgksu-2.0.12-notests.patch" + patch -Np1 -i "${srcdir}/libgksu-2.0.12-automake-1.11.2.patch" + patch -Np2 -i "${srcdir}/libgksu-2.0.12-security-format.patch" + + touch NEWS README + + intltoolize --force --copy --automake + autoreconf -fi +} + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr --sysconfdir=/etc \ + --localstatedir=/var --disable-static --disable-schemas-install --disable-gtk-doc + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install + rm -f ${pkgdir}/usr/lib/*.a + install -m755 -d "${pkgdir}/usr/share/gconf/schemas" + gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain libgksu ${pkgdir}/etc/gconf/schemas/*.schemas + rm -f ${pkgdir}/etc/gconf/schemas/*.schemas +} + +#---- license gpg-key sha256sums ---- + +license=(GPL) + +sha256sums=(22f9cfc3627dcb6774b9aff66c6ea6554f3b34b82bbfa2467b821e67874c3faf # libgksu-2.0.12.tar.gz + bf0343df8e316ac227da7c40a889dd5128da081a640c187dfb743b4f213c3792 # libgksu-2.0.0-fbsd.patch + 8d6573025758e5f5c569963fab2d99f406ea50fb055bf06693868ba976c5dd66 # libgksu-2.0.12-automake-1.11.2.patch + 4634482b8b9187fd6eaa8560fc88a3f0f93f3a7a143b5b42cdc9ffa2ac112d11 # libgksu-2.0.12-fix-make-3.82.patch + 6cac450d0e3d8950c25fec078cc41478138fd14afe3492e96f7b889178725707 # libgksu-2.0.12-notests.patch + e75597115bdc7c30ee223d73f5c071d7cceffd04fbf2798d1aa17920fae865dd # libgksu-2.0.12-revert-forkpty.patch + 62d1d576bd8e4b07494a788d6760463ee2090e341dae5113d5f763a3549f6b6a # libgksu-2.0.7-libs.patch + f360bbd003492e7bc7818f97988ff3af81a14c4278b1f788b0b919f743d7ee8f # libgksu-2.0.7-polinguas.patch + 49b4f3224f958caad35f3a414bd3d3e25a0f2919d07c83c1313aedc47cbafec9) # libgksu-2.0.12-security-format.patch diff --git a/libgksu/clean b/libgksu/clean new file mode 100644 index 0000000..c01eb1b --- /dev/null +++ b/libgksu/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,libgk*.tar.gz*} diff --git a/libgksu/deps b/libgksu/deps new file mode 100644 index 0000000..e1fad36 --- /dev/null +++ b/libgksu/deps @@ -0,0 +1,11 @@ +gconf +gtk2 +libgnome-keyring +libgtop +startup-notification +intltool +gtk-doc + +autoconf +automake +gettext diff --git a/libgksu/libgksu-2.0.0-fbsd.patch b/libgksu/libgksu-2.0.0-fbsd.patch new file mode 100644 index 0000000..5c007be --- /dev/null +++ b/libgksu/libgksu-2.0.0-fbsd.patch @@ -0,0 +1,60 @@ +diff --exclude-from=/home/dang/.diffrc -up -ruN libgksu-2.0.0.orig/libgksu/libgksu.c libgksu-2.0.0/libgksu/libgksu.c +--- libgksu-2.0.0.orig/libgksu/libgksu.c 2006-09-14 22:35:51.000000000 -0400 ++++ libgksu-2.0.0/libgksu/libgksu.c 2006-12-12 11:28:01.000000000 -0500 +@@ -23,7 +23,12 @@ + #include + #include + #include ++#ifdef __FreeBSD__ ++#include ++#include ++#else + #include ++#endif + #include + #include + #include +diff --exclude-from=/home/dang/.diffrc -up -ruN libgksu-2.0.0.orig/libgksu/Makefile.am libgksu-2.0.0/libgksu/Makefile.am +--- libgksu-2.0.0.orig/libgksu/Makefile.am 2006-09-14 22:35:52.000000000 -0400 ++++ libgksu-2.0.0/libgksu/Makefile.am 2006-12-12 11:28:01.000000000 -0500 +@@ -30,6 +30,6 @@ gksu_run_helper_SOURCES = gksu-run-helpe + noinst_PROGRAMS = test-gksu + test_gksu_SOURCES = test-gksu.c + test_gksu_LDADD = libgksu2.la +-test_gksu_LDFLAGS = `pkg-config --libs glib-2.0` ++test_gksu_LDFLAGS = `pkg-config --libs glib-2.0 gthread-2.0` + + EXTRA_DIST = libgksu.ver +diff --exclude-from=/home/dang/.diffrc -up -ruN libgksu-2.0.0.orig/libgksu/Makefile.in libgksu-2.0.0/libgksu/Makefile.in +--- libgksu-2.0.0.orig/libgksu/Makefile.in 2006-09-23 15:37:44.000000000 -0400 ++++ libgksu-2.0.0/libgksu/Makefile.in 2006-12-12 11:30:09.000000000 -0500 +@@ -283,7 +283,7 @@ gksu_run_helper_LDFLAGS = `pkg-config -- + gksu_run_helper_SOURCES = gksu-run-helper.c + test_gksu_SOURCES = test-gksu.c + test_gksu_LDADD = libgksu2.la +-test_gksu_LDFLAGS = `pkg-config --libs glib-2.0` ++test_gksu_LDFLAGS = `pkg-config --libs glib-2.0 gthread-2.0` + EXTRA_DIST = libgksu.ver + all: all-am + +diff --exclude-from=/home/dang/.diffrc -up -ruN libgksu-2.0.0.orig/libgksuui/Makefile.am libgksu-2.0.0/libgksuui/Makefile.am +--- libgksu-2.0.0.orig/libgksuui/Makefile.am 2006-09-14 22:35:31.000000000 -0400 ++++ libgksu-2.0.0/libgksuui/Makefile.am 2006-12-12 11:28:01.000000000 -0500 +@@ -12,4 +12,4 @@ includedir = ${prefix}/include/$(PACKAGE + noinst_PROGRAMS = test-gksuui + test_gksuui_SOURCES = test-gksuui.c + test_gksuui_LDADD = libgksuui1.0.la +-test_gksuui_LDFLAGS = `pkg-config --libs glib-2.0` ++test_gksuui_LDFLAGS = `pkg-config --libs glib-2.0 gthread-2.0` +diff --exclude-from=/home/dang/.diffrc -up -ruN libgksu-2.0.0.orig/libgksuui/Makefile.in libgksu-2.0.0/libgksuui/Makefile.in +--- libgksu-2.0.0.orig/libgksuui/Makefile.in 2006-09-23 15:37:44.000000000 -0400 ++++ libgksu-2.0.0/libgksuui/Makefile.in 2006-12-12 11:30:22.000000000 -0500 +@@ -250,7 +250,7 @@ libgksuui1_0_la_LDFLAGS = -Wl,-O1 `pkg-c + noinst_HEADERS = defines.h gksuui.h gksuui-dialog.h + test_gksuui_SOURCES = test-gksuui.c + test_gksuui_LDADD = libgksuui1.0.la +-test_gksuui_LDFLAGS = `pkg-config --libs glib-2.0` ++test_gksuui_LDFLAGS = `pkg-config --libs glib-2.0 gthread-2.0` + all: all-am + + .SUFFIXES: diff --git a/libgksu/libgksu-2.0.12-automake-1.11.2.patch b/libgksu/libgksu-2.0.12-automake-1.11.2.patch new file mode 100644 index 0000000..0f22166 --- /dev/null +++ b/libgksu/libgksu-2.0.12-automake-1.11.2.patch @@ -0,0 +1,25 @@ +Due to the following change, pkglib_PROGRAMS is invalid: + http://git.savannah.gnu.org/cgit/automake.git/commit/?id=9ca632642b006ac6b0fc4ce0ae5b34023faa8cbf + +https://savannah.nongnu.org/bugs/index.php?35241 +https://bugs.gentoo.org/show_bug.cgi?id=397411 + +--- + libgksu/Makefile.am | 4 ++-- + 1 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/libgksu/Makefile.am b/libgksu/Makefile.am +index 49362f9..3cb1090 100644 +--- a/libgksu/Makefile.am ++++ b/libgksu/Makefile.am +@@ -22,8 +22,8 @@ includedir = ${prefix}/include/${PACKAGE} + pkgconfigdir = ${libdir}/pkgconfig + pkgconfig_DATA = libgksu2.pc + +-pkglibdir = ${libdir}/${PACKAGE} +-pkglib_PROGRAMS = gksu-run-helper ++gksulibdir = ${libdir}/${PACKAGE} ++gksulib_PROGRAMS = gksu-run-helper + gksu_run_helper_LDADD = ${GLIB_LIBS} + gksu_run_helper_SOURCES = gksu-run-helper.c + diff --git a/libgksu/libgksu-2.0.12-fix-make-3.82.patch b/libgksu/libgksu-2.0.12-fix-make-3.82.patch new file mode 100644 index 0000000..0a7c5f1 --- /dev/null +++ b/libgksu/libgksu-2.0.12-fix-make-3.82.patch @@ -0,0 +1,19 @@ +--- Makefile.am-orig 2010-08-22 16:11:19.872577459 -0500 ++++ Makefile.am 2010-08-22 16:11:55.289599110 -0500 +@@ -17,11 +17,11 @@ + + if GCONF_SCHEMAS_INSTALL + install-data-local: +- if test -z "$(DESTDIR)" ; then \ +- for p in $(schemas_DATA) ; do \ +- GCONF_CONFIG_SOURCE=$(GCONF_SCHEMA_CONFIG_SOURCE) $(GCONFTOOL) --makefile-install-rule $(srcdir)/$$p ; \ +- done \ +- fi ++ if test -z "$(DESTDIR)" ; then \ ++ for p in $(schemas_DATA) ; do \ ++ GCONF_CONFIG_SOURCE=$(GCONF_SCHEMA_CONFIG_SOURCE) $(GCONFTOOL) --makefile-install-rule $(srcdir)/$$p ; \ ++ done \ ++ fi + else + install-data-local: + endif diff --git a/libgksu/libgksu-2.0.12-notests.patch b/libgksu/libgksu-2.0.12-notests.patch new file mode 100644 index 0000000..3787ef6 --- /dev/null +++ b/libgksu/libgksu-2.0.12-notests.patch @@ -0,0 +1,26 @@ +Index: libgksu-2.0.12/libgksu/Makefile.am +=================================================================== +--- libgksu-2.0.12.orig/libgksu/Makefile.am ++++ libgksu-2.0.12/libgksu/Makefile.am +@@ -27,7 +27,7 @@ pkglib_PROGRAMS = gksu-run-helper + gksu_run_helper_LDFLAGS = `pkg-config --libs glib-2.0` + gksu_run_helper_SOURCES = gksu-run-helper.c + +-noinst_PROGRAMS = test-gksu ++EXTRA_PROGRAMS = test-gksu + test_gksu_SOURCES = test-gksu.c + test_gksu_LDADD = libgksu2.la + test_gksu_LDFLAGS = `pkg-config --libs glib-2.0` +Index: libgksu-2.0.12/libgksuui/Makefile.am +=================================================================== +--- libgksu-2.0.12.orig/libgksuui/Makefile.am ++++ libgksu-2.0.12/libgksuui/Makefile.am +@@ -9,7 +9,7 @@ libgksuui1_0_la_LDFLAGS = -Wl,-O1 `pkg-c + noinst_HEADERS = defines.h gksuui.h gksuui-dialog.h + includedir = ${prefix}/include/$(PACKAGE) + +-noinst_PROGRAMS = test-gksuui ++EXTRA_PROGRAMS = test-gksuui + test_gksuui_SOURCES = test-gksuui.c + test_gksuui_LDADD = libgksuui1.0.la + test_gksuui_LDFLAGS = `pkg-config --libs glib-2.0` diff --git a/libgksu/libgksu-2.0.12-revert-forkpty.patch b/libgksu/libgksu-2.0.12-revert-forkpty.patch new file mode 100644 index 0000000..2c3a8cc --- /dev/null +++ b/libgksu/libgksu-2.0.12-revert-forkpty.patch @@ -0,0 +1,359 @@ +diff --exclude-from=/home/dang/.scripts/diffrc -up -ruN libgksu-2.0.12.orig/libgksu/libgksu.c libgksu-2.0.12/libgksu/libgksu.c +--- libgksu-2.0.12.orig/libgksu/libgksu.c 2009-06-29 13:48:24.000000000 -0400 ++++ libgksu-2.0.12/libgksu/libgksu.c 2010-01-12 07:32:10.450657456 -0500 +@@ -1,7 +1,6 @@ + /* + * Gksu -- a library providing access to su functionality + * Copyright (C) 2004-2009 Gustavo Noronha Silva +- * Portions Copyright (C) 2009 VMware, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public +@@ -56,9 +55,6 @@ + static void + gksu_context_launch_complete (GksuContext *context); + +-static void +-read_line (int fd, gchar *buffer, int n); +- + GType + gksu_error_get_type (void) + { +@@ -2009,8 +2005,6 @@ gksu_su_fuller (GksuContext *context, + for (i = 0 ; cmd[i] != NULL ; i++) + g_free (cmd[i]); + g_free(cmd); +- +- _exit(1); + } + else if (pid == -1) + { +@@ -2125,10 +2119,10 @@ gksu_su_fuller (GksuContext *context, + /* drop the \n echoed on password entry if su did request + a password */ + if (password_needed) +- read_line (fdpty, buf, 255); ++ read (fdpty, buf, 255); + if (context->debug) + fprintf (stderr, "DEBUG (run:post-after-pass) buf: -%s-\n", buf); +- read_line (fdpty, buf, 255); ++ read (fdpty, buf, 255); + if (context->debug) + fprintf (stderr, "DEBUG (run:post-after-pass) buf: -%s-\n", buf); + } +@@ -2142,9 +2136,7 @@ gksu_su_fuller (GksuContext *context, + { + int retval = 0; + +- /* Red Hat's su shows the full path to su in its error messages. */ +- if (!strncmp (buf, "su:", 3) || +- !strncmp (buf, "/bin/su:", 7)) ++ if (!strncmp (buf, "su", 2)) + { + gchar **strings; + +@@ -2155,11 +2147,7 @@ gksu_su_fuller (GksuContext *context, + } + + strings = g_strsplit (buf, ":", 2); +- +- /* Red Hat and Fedora use 'incorrect password'. */ +- if (strings[1] && +- (g_str_has_prefix(strings[1], " Authentication failure") || +- g_str_has_prefix(strings[1], " incorrect password"))) ++ if (strings[1] && !strncmp (strings[1], " Authentication failure", 23)) + { + if (used_gnome_keyring) + g_set_error (error, gksu_quark, +@@ -2473,12 +2461,6 @@ gksu_sudo_fuller (GksuContext *context, + { + char **cmd; + char buffer[256] = {0}; +- char *child_stderr = NULL; +- /* This command is used to gain a token */ +- char *const verifycmd[] = +- { +- "/usr/bin/sudo", "-p", "GNOME_SUDO_PASS", "-v", NULL +- }; + int argcount = 8; + int i, j; + +@@ -2489,8 +2471,9 @@ gksu_sudo_fuller (GksuContext *context, + + pid_t pid; + int status; +- FILE *fdfile = NULL; +- int fdpty = -1; ++ FILE *infile, *outfile; ++ int parent_pipe[2]; /* For talking to the parent */ ++ int child_pipe[2]; /* For talking to the child */ + + context->sudo_mode = TRUE; + +@@ -2565,10 +2548,6 @@ gksu_sudo_fuller (GksuContext *context, + cmd[argcount] = g_strdup("-S"); + argcount++; + +- /* Make sudo noninteractive (we should already have a token) */ +- cmd[argcount] = g_strdup("-n"); +- argcount++; +- + /* Make sudo use next arg as prompt */ + cmd[argcount] = g_strdup("-p"); + argcount++; +@@ -2647,21 +2626,26 @@ gksu_sudo_fuller (GksuContext *context, + fprintf (stderr, "cmd[%d]: %s\n", i, cmd[i]); + } + +- pid = forkpty(&fdpty, NULL, NULL, NULL); +- if (pid == 0) ++ if ((pipe(parent_pipe)) == -1) + { +- // Child +- setsid(); // make us session leader +- +- execv(verifycmd[0], verifycmd); ++ g_set_error (error, gksu_quark, GKSU_ERROR_PIPE, ++ _("Error creating pipe: %s"), ++ strerror(errno)); ++ sudo_reset_xauth (context, xauth, xauth_env); ++ return FALSE; ++ } + +- g_set_error (error, gksu_quark, GKSU_ERROR_EXEC, +- _("Failed to exec new process: %s"), ++ if ((pipe(child_pipe)) == -1) ++ { ++ g_set_error (error, gksu_quark, GKSU_ERROR_PIPE, ++ _("Error creating pipe: %s"), + strerror(errno)); + sudo_reset_xauth (context, xauth, xauth_env); + return FALSE; + } +- else if (pid == -1) ++ ++ pid = fork(); ++ if (pid == -1) + { + g_set_error (error, gksu_quark, GKSU_ERROR_FORK, + _("Failed to fork new process: %s"), +@@ -2669,26 +2653,56 @@ gksu_sudo_fuller (GksuContext *context, + sudo_reset_xauth (context, xauth, xauth_env); + return FALSE; + } ++ else if (pid == 0) ++ { ++ // Child ++ setsid(); // make us session leader ++ close(child_pipe[1]); ++ dup2(child_pipe[0], STDIN_FILENO); ++ dup2(parent_pipe[1], STDERR_FILENO); + ++ execv(cmd[0], cmd); ++ ++ g_set_error (error, gksu_quark, GKSU_ERROR_EXEC, ++ _("Failed to exec new process: %s"), ++ strerror(errno)); ++ sudo_reset_xauth (context, xauth, xauth_env); ++ return FALSE; ++ } + else + { + gint counter = 0; + gchar *cmdline = NULL; +- struct termios tio; + + // Parent +- fdfile = fdopen(fdpty, "w+"); ++ close(parent_pipe[1]); + +- /* make sure we notice that ECHO is turned off, if it gets +- turned off */ +- tcgetattr (fdpty, &tio); +- for (counter = 0; (tio.c_lflag & ECHO) && counter < 15; counter++) +- { +- usleep (1000); +- tcgetattr (fdpty, &tio); +- } ++ infile = fdopen(parent_pipe[0], "r"); ++ if (!infile) ++ { ++ g_set_error (error, gksu_quark, GKSU_ERROR_PIPE, ++ _("Error opening pipe: %s"), ++ strerror(errno)); ++ sudo_reset_xauth (context, xauth, xauth_env); ++ return FALSE; ++ } + +- fcntl (fdpty, F_SETFL, O_NONBLOCK); ++ outfile = fdopen(child_pipe[1], "w"); ++ if (!outfile) ++ { ++ g_set_error (error, gksu_quark, GKSU_ERROR_PIPE, ++ _("Error opening pipe: %s"), ++ strerror(errno)); ++ sudo_reset_xauth (context, xauth, xauth_env); ++ return FALSE; ++ } ++ ++ /* ++ we are expecting to receive a GNOME_SUDO_PASS ++ if we don't there are two possibilities: an error ++ or a password is not needed ++ */ ++ fcntl (parent_pipe[0], F_SETFL, O_NONBLOCK); + + { /* no matter if we can read, since we're using + O_NONBLOCK; this is just to avoid the prompt +@@ -2697,11 +2711,11 @@ gksu_sudo_fuller (GksuContext *context, + struct timeval tv; + + FD_ZERO(&rfds); +- FD_SET(fdpty, &rfds); ++ FD_SET(parent_pipe[0], &rfds); + tv.tv_sec = 1; + tv.tv_usec = 0; + +- select (fdpty + 1, &rfds, NULL, NULL, &tv); ++ select (parent_pipe[0] + 1, &rfds, NULL, NULL, &tv); + } + + /* Try hard to find the prompt; it may happen that we're +@@ -2713,7 +2727,7 @@ gksu_sudo_fuller (GksuContext *context, + if (strncmp (buffer, "GNOME_SUDO_PASS", 15) == 0) + break; + +- read_line (fdpty, buffer, 256); ++ read_line (parent_pipe[0], buffer, 256); + + if (context->debug) + fprintf (stderr, "buffer: -%s-\n", buffer); +@@ -2747,17 +2761,18 @@ gksu_sudo_fuller (GksuContext *context, + + usleep (1000); + +- write (fdpty, password, strlen(password) + 1); +- write (fdpty, "\n", 1); ++ fprintf (outfile, "%s\n", password); ++ fclose (outfile); + + nullify_password (password); + +- fcntl(fdpty, F_SETFL, fcntl(fdpty, F_GETFL) & ~O_NONBLOCK); ++ /* turn NONBLOCK off */ ++ fcntl(parent_pipe[0], F_SETFL, fcntl(parent_pipe[0], F_GETFL) & ~O_NONBLOCK); + /* ignore the first newline that comes right after sudo receives + the password */ +- fgets (buffer, 255, fdfile); +- /* this is the status we are interested in */ +- fgets (buffer, 255, fdfile); ++ fgets (buffer, 255, infile); ++ /* this is the status we are interessted in */ ++ fgets (buffer, 255, infile); + } + else + { +@@ -2766,7 +2781,7 @@ gksu_sudo_fuller (GksuContext *context, + fprintf (stderr, "No password prompt found; we'll assume we don't need a password.\n"); + + /* turn NONBLOCK off, also if have no prompt */ +- fcntl(fdpty, F_SETFL, fcntl(fdpty, F_GETFL) & ~O_NONBLOCK); ++ fcntl(parent_pipe[0], F_SETFL, fcntl(parent_pipe[0], F_GETFL) & ~O_NONBLOCK); + + should_display = gconf_client_get_bool (context->gconf_client, + BASE_PATH "display-no-pass-info", NULL); +@@ -2785,9 +2800,14 @@ gksu_sudo_fuller (GksuContext *context, + fprintf (stderr, "%s", buffer); + } + +- if (g_str_has_prefix (buffer, "Sorry, try again.")) ++ if (!strcmp (buffer, "Sorry, try again.\n")) + g_set_error (error, gksu_quark, GKSU_ERROR_WRONGPASS, + _("Wrong password.")); ++ else if (!strncmp (buffer, "Sorry, user ", 12)) ++ g_set_error (error, gksu_quark, GKSU_ERROR_NOT_ALLOWED, ++ _("The underlying authorization mechanism (sudo) " ++ "does not allow you to run this program. Contact " ++ "the system administrator.")); + else + { + gchar *haystack = buffer; +@@ -2805,10 +2825,6 @@ gksu_sudo_fuller (GksuContext *context, + } + } + +- /* If we have an error, let's just stop sudo right there. */ +- if (error) +- close(fdpty); +- + cmdline = g_strdup("sudo"); + /* wait for the child process to end or become something other + than sudo */ +@@ -2825,23 +2841,17 @@ gksu_sudo_fuller (GksuContext *context, + if (context->sn_context) + gksu_context_launch_complete (context); + ++ while (read (parent_pipe[0], buffer, 255) > 0) ++ { ++ fprintf (stderr, "%s", buffer); ++ bzero(buffer, 256); ++ } ++ + /* if the process is still active waitpid() on it */ + if (pid_exited != pid) + waitpid(pid, &status, 0); + sudo_reset_xauth (context, xauth, xauth_env); + +- /* +- * Did token acquisition succeed? If so, spawn sudo in +- * non-interactive mode. It should either succeed or die +- * immediately if you're not allowed to run the command. +- */ +- if (WEXITSTATUS(status) == 0) +- { +- g_spawn_sync(NULL, cmd, NULL, 0, NULL, NULL, +- NULL, &child_stderr, &status, +- error); +- } +- + if (exit_status) + { + if (WIFEXITED(status)) { +@@ -2853,13 +2863,6 @@ gksu_sudo_fuller (GksuContext *context, + + if (WEXITSTATUS(status)) + { +- if (g_str_has_prefix(child_stderr, "Sorry, user ")) +- { +- g_set_error (error, gksu_quark, GKSU_ERROR_NOT_ALLOWED, +- _("The underlying authorization mechanism (sudo) " +- "does not allow you to run this program. Contact " +- "the system administrator.")); +- } + if(cmdline) + { + /* sudo already exec()ed something else, don't report +@@ -2868,7 +2871,6 @@ gksu_sudo_fuller (GksuContext *context, + if (!g_str_has_suffix (cmdline, "sudo")) + { + g_free (cmdline); +- g_free (child_stderr); + return FALSE; + } + g_free (cmdline); +@@ -2881,11 +2883,11 @@ gksu_sudo_fuller (GksuContext *context, + } + } + +- fprintf(stderr, child_stderr); +- g_free(child_stderr); +- + /* if error is set we have found an error condition */ +- return (error == NULL); ++ if (error) ++ return FALSE; ++ ++ return TRUE; + } + + /** diff --git a/libgksu/libgksu-2.0.12-security-format.patch b/libgksu/libgksu-2.0.12-security-format.patch new file mode 100644 index 0000000..4288386 --- /dev/null +++ b/libgksu/libgksu-2.0.12-security-format.patch @@ -0,0 +1,21 @@ +diff -up src/libgksu-2.0.12/libgksu/libgksu.c.orig src/libgksu-2.0.12/libgksu/libgksu.c +--- src/libgksu-2.0.12/libgksu/libgksu.c.orig 2021-10-24 14:38:42.899999999 -0600 ++++ src/libgksu-2.0.12/libgksu/libgksu.c 2021-10-24 14:41:17.249999999 -0600 +@@ -1277,7 +1277,7 @@ sudo_prepare_xauth (GksuContext *context + context->dir = g_strdup (mkdtemp(template)); + if (!context->dir) + { +- fprintf (stderr, strerror(errno)); ++ fprintf (stderr, "%s", strerror(errno)); + return FALSE; + } + +@@ -2238,7 +2238,7 @@ gksu_su_fuller (GksuContext *context, + " %s"), converted_str, "gksu: waiting"); + g_free (converted_str); + +- g_set_error (error, gksu_quark, GKSU_ERROR_HELPER, emsg); ++ g_set_error (error, gksu_quark, GKSU_ERROR_HELPER, "%s", emsg); + g_free (emsg); + + if (context->debug) diff --git a/libgksu/libgksu-2.0.7-libs.patch b/libgksu/libgksu-2.0.7-libs.patch new file mode 100644 index 0000000..b9fb77f --- /dev/null +++ b/libgksu/libgksu-2.0.7-libs.patch @@ -0,0 +1,76 @@ +# https://savannah.nongnu.org/bugs/?25362 +# https://bugs.gentoo.org/show_bug.cgi?id=226837 +diff -Nura a/configure.ac b/configure.ac +--- a/configure.ac 2009-01-19 22:15:30.000000000 +0100 ++++ b/configure.ac 2009-01-19 22:18:10.000000000 +0100 +@@ -43,6 +43,9 @@ + PKG_CHECK_MODULES(LIBGKSU, [gtk+-2.0 >= 2.4.0, gconf-2.0, libstartup-notification-1.0, gnome-keyring-1, libgtop-2.0]) + PKG_CHECK_MODULES(GKSU_PROPERTIES, [gtk+-2.0 >= 2.4.0, gconf-2.0, libglade-2.0]) + ++PKG_CHECK_MODULES(GLIB, [glib-2.0 gthread-2.0]) ++PKG_CHECK_MODULES(GTK, [gtk+-2.0 gconf-2.0]) ++ + # Checks for library functions. + ALL_LINGUAS="ca cs da de es eu fr hu it ko lt pl pt_BR ro ru sk sv nb nl zh_CN" + +diff -Nura a/gksu-properties/Makefile.am b/gksu-properties/Makefile.am +--- a/gksu-properties/Makefile.am 2009-01-19 22:15:59.000000000 +0100 ++++ b/gksu-properties/Makefile.am 2009-01-19 22:19:13.000000000 +0100 +@@ -3,7 +3,7 @@ + AM_CPPFLAGS = -DLOCALEDIR=\"$(datadir)/locale\" -DDATA_DIR=\"$(datadir)\" -DPREFIX=\"$(prefix)\" + + bin_PROGRAMS = gksu-properties +-gksu_properties_LDFLAGS = ${GKSU_PROPERTIES_LIBS} ++gksu_properties_LDADD = ${GKSU_PROPERTIES_LIBS} + gksu_properties_SOURCES = gksu-properties.c + + gladedir = ${prefix}/share/${PACKAGE} +diff -Nura a/libgksu/Makefile.am b/libgksu/Makefile.am +--- a/libgksu/Makefile.am 2009-01-19 22:15:59.000000000 +0100 ++++ b/libgksu/Makefile.am 2009-01-19 22:18:25.000000000 +0100 +@@ -8,8 +8,8 @@ + # major -> breaks backward compatibility (changes to existing ABI) + # minor -> keeps compatibility (additions to the API) + # micro -> no change to the API/ABI +-libgksu2_la_LIBADD = ../libgksuui/libgksuui1.0.la +-libgksu2_la_LDFLAGS = -version-info 0:2:0 -Wl,-O1 -lutil ${LIBGKSU_LIBS} ++libgksu2_la_LIBADD = ../libgksuui/libgksuui1.0.la -lutil ${LIBGKSU_LIBS} ++libgksu2_la_LDFLAGS = -version-info 0:2:0 -Wl,-O1 + if USE_VERSION_SCRIPT + libgksu2_la_LDFLAGS += -Wl,--version-script=libgksu.ver + endif +@@ -24,12 +24,11 @@ + + pkglibdir = ${libdir}/${PACKAGE} + pkglib_PROGRAMS = gksu-run-helper +-gksu_run_helper_LDFLAGS = `pkg-config --libs glib-2.0` ++gksu_run_helper_LDADD = ${GLIB_LIBS} + gksu_run_helper_SOURCES = gksu-run-helper.c + + noinst_PROGRAMS = test-gksu + test_gksu_SOURCES = test-gksu.c +-test_gksu_LDADD = libgksu2.la +-test_gksu_LDFLAGS = `pkg-config --libs glib-2.0 gthread-2.0` ++test_gksu_LDADD = libgksu2.la ${GLIB_LIBS} + + EXTRA_DIST = libgksu.ver +diff -Nura a/libgksuui/Makefile.am b/libgksuui/Makefile.am +--- a/libgksuui/Makefile.am 2009-01-19 22:15:59.000000000 +0100 ++++ b/libgksuui/Makefile.am 2009-01-19 22:18:54.000000000 +0100 +@@ -4,12 +4,13 @@ + + noinst_LTLIBRARIES = libgksuui1.0.la + libgksuui1_0_la_SOURCES = gksuui-dialog.c +-libgksuui1_0_la_LDFLAGS = -Wl,-O1 `pkg-config --libs gtk+-2.0 gconf-2.0` ++libgksuui1_0_la_LDFLAGS = -Wl,-O1 ++libgksuui1_0_la_LIBADD = ${GTK_LIBS} + + noinst_HEADERS = defines.h gksuui.h gksuui-dialog.h + includedir = ${prefix}/include/$(PACKAGE) + + noinst_PROGRAMS = test-gksuui + test_gksuui_SOURCES = test-gksuui.c +-test_gksuui_LDADD = libgksuui1.0.la +-test_gksuui_LDFLAGS = `pkg-config --libs glib-2.0 gthread-2.0` ++test_gksuui_LDADD = libgksuui1.0.la ${GLIB_LIBS} ++ diff --git a/libgksu/libgksu-2.0.7-polinguas.patch b/libgksu/libgksu-2.0.7-polinguas.patch new file mode 100644 index 0000000..e423af1 --- /dev/null +++ b/libgksu/libgksu-2.0.7-polinguas.patch @@ -0,0 +1,40 @@ +# https://savannah.nongnu.org/bugs/?25360 +diff -Nura a/configure.ac b/configure.ac +--- a/configure.ac 2009-01-19 21:50:57.000000000 +0100 ++++ b/configure.ac 2009-01-19 21:53:21.000000000 +0100 +@@ -50,7 +50,7 @@ + GETTEXT_PACKAGE=AC_PACKAGE_NAME + AC_SUBST(GETTEXT_PACKAGE) + +-IT_PROG_INTLTOOL ++IT_PROG_INTLTOOL([0.35.5]) + AM_GLIB_GNU_GETTEXT + + ################################################## +diff -Nura a/po/LINGUAS b/po/LINGUAS +--- a/po/LINGUAS 1970-01-01 01:00:00.000000000 +0100 ++++ b/po/LINGUAS 2009-01-19 21:54:24.000000000 +0100 +@@ -0,0 +1,23 @@ ++# please keep this list sorted alphabetically ++# http://live.gnome.org/GnomeGoals/PoLinguas ++# ++ca ++cs ++da ++de ++es ++eu ++fr ++hu ++it ++ko ++lt ++pl ++pt_BR ++ro ++ru ++sk ++sv ++nb ++nl ++zh_CN diff --git a/libgksu/time b/libgksu/time new file mode 100644 index 0000000..a89f09c --- /dev/null +++ b/libgksu/time @@ -0,0 +1,5 @@ + +real 0m11.005s +user 0m9.748s +sys 0m1.346s + diff --git a/libinput/PKGBUILD b/libinput/PKGBUILD new file mode 100644 index 0000000..3415e21 --- /dev/null +++ b/libinput/PKGBUILD @@ -0,0 +1,77 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=libinput +pkgver=1.20.0 +pkgrel=01 +pkgdesc="Input device management and event handling library" +#url="https://www.freedesktop.org/wiki/Software/libinput/" +url="https://gitlab.freedesktop.org/libinput" +arch=(x86_64) +depends=('mtdev' 'libevdev' 'libwacom') +# upstream doesn't recommend building docs +makedepends=('gtk4' 'meson' 'wayland-protocols' 'cmake' 'gtk4') # 'doxygen' 'graphviz' 'python-sphinx' 'python-recommonmark' +optdepends=('gtk4: libinput debug-gui' + 'python-pyudev: libinput measure' + 'python-libevdev: libinput measure') +#source=(https://freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.xz{,.sig}) +source=($url/libinput/-/archive/$pkgver/$pkgname-$pkgver{,.sig}.tar.bz2) # .tar.bz2 # + +build() { + arch-meson $pkgname-$pkgver build \ + -D udev-dir=/usr/lib/udev \ + -D tests=false \ + -D documentation=false + + # Print config + meson configure build + meson compile -C build +} + +# -D b_lto=false \ # removed option from 1.19.3 + +package() { + DESTDIR="$pkgdir" meson install -C build + + install -Dvm644 $pkgname-$pkgver/COPYING \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + + + +build() { + arch-meson $pkgname-$pkgver build \ + -D udev-dir=/usr/lib/udev \ + -D tests=false \ + -D documentation=false + + # Print config + meson configure build + meson compile -C build +} + +package() { + DESTDIR="$pkgdir" meson install -C build + + install -Dvm644 $pkgname-$pkgver/COPYING \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +#---- license gpg-key sha256sums ---- + +license=(custom:X11) + +validpgpkeys=('3C2C43D9447D5938EF4551EBE23B7E70B467F0BF') # Peter Hutterer (Who-T) + +# sha256sums=(3cae78ccde19d7d0f387e58bc734d4d17ab5f6426f54a9e8b728c90b17baa068 # libinput-1.19.3.tar.xz +# db134d7f37e85160373f7377bacd6bd33ffe6a25b756d927ef63e9809b7107fd) # libinput-1.19.3.tar.xz.sig + +sha256sums=(6c1f97892a7d599f97349e5e7c1239901fe00edcd4f6289f410034d5dc06cc85 # libinput-1.20.0.tar.bz2 + d20ec6a007cf068ddb7bcbfe839bc0d4b19be8b8dae9ce11672326df49920a08) # libinput-1.20.0.sig.tar.bz2 + +sha512sums=(145b0e0760929137ab442b2030b4b42f6df54a3ae61c47c929e1a74857a170f0f2a56bb7522b7d1d9c0943028ac54c7728cf8d66a0c384f6118f31d6625ab44c # libinput-1.20.0.tar.bz2 + cb02dd2bae40bd57fcb671f8f8fe7fc36bc4936b93251b1e24b8594e8ad961934fdaac3d30ef5dc819850f7e4566d5f62707b893000d92fe1f17c763c985c7e5) # libinput-1.20.0.sig.tar.bz2 diff --git a/libinput/PKGBUILD-arch b/libinput/PKGBUILD-arch new file mode 100644 index 0000000..95f129f --- /dev/null +++ b/libinput/PKGBUILD-arch @@ -0,0 +1,40 @@ +# Maintainer: Andreas Radke + +pkgname=libinput +pkgver=1.20.0 +pkgrel=1 +pkgdesc="Input device management and event handling library" +url="https://gitlab.freedesktop.org/libinput" +arch=(x86_64) +license=(custom:X11) +depends=('mtdev' 'systemd' 'libevdev' 'libwacom') +# upstream doesn't recommend building docs +makedepends=('gtk4' 'meson' 'wayland-protocols') # 'doxygen' 'graphviz' 'python-sphinx' 'python-recommonmark' +optdepends=('gtk4: libinput debug-gui' + 'python-pyudev: libinput measure' + 'python-libevdev: libinput measure') +source=(#https://freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.xz{,.sig} + https://gitlab.freedesktop.org/libinput/libinput/-/archive/$pkgver/$pkgname-$pkgver.tar.bz2 #{,.sig}.tar.bz2 +) +#sha512sums=('f4b776d0da78c687ba21b430a04941ac6b43f68970c82ec9f7360358fdea5ed6a873948ce66a25bcdd64d4b95fa4bf705cc24dbc25c7c0f5fd2d0efbd763f298' +# 'SKIP') +sha512sums=('145b0e0760929137ab442b2030b4b42f6df54a3ae61c47c929e1a74857a170f0f2a56bb7522b7d1d9c0943028ac54c7728cf8d66a0c384f6118f31d6625ab44c') +#validpgpkeys=('3C2C43D9447D5938EF4551EBE23B7E70B467F0BF') # Peter Hutterer (Who-T) + +build() { + arch-meson $pkgname-$pkgver build \ + -D udev-dir=/usr/lib/udev \ + -D tests=false \ + -D documentation=false + + # Print config + meson configure build + meson compile -C build +} + +package() { + DESTDIR="$pkgdir" meson install -C build + + install -Dvm644 $pkgname-$pkgver/COPYING \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} diff --git a/libinput/PKGBUILD-oba b/libinput/PKGBUILD-oba new file mode 100644 index 0000000..5df0022 --- /dev/null +++ b/libinput/PKGBUILD-oba @@ -0,0 +1,86 @@ +# Copyright : Obarun +#------------------------ +# Maintainer : Eric Vidal +# Maintainer : Jean-Michel T.Dydak +#---------------- +# Obarun PkgSrc : https://git.obarun.org/pkg/obextra/libinput +#-------------------------------------------------------------- +# DESCRIPTION ] + +pkgname=libinput +pkgver=1.19.3 +pkgrel=3 +pkgdesc="Input device management and event handling library" +url='https://www.freedesktop.org/wiki/Software/libinput/' + +track="$pkgname" +target="$pkgname-$pkgver" +source=( + "https://freedesktop.org/software/${track}/${target}.tar.xz"{,.sig} +) + +#---------------------- +# BUILD CONFIGURATION ] + +makedepends=( + 'gtk3' + 'meson' + 'wayland-protocols' + 'cmake' + 'gtk4' +) + +#------------------------ +# INSTALL CONFIGURATION ] + +depends=( + 'mtdev' + 'libevdev' + 'libwacom' +) + +optdepends=( + 'gtk3: libinput debug-gui' + 'python-pyudev: libinput measure' + 'python-libevdev: libinput measure' +) + +#---------------- +# BUILD CONTROL ] + +_flags=( + -Dudev-dir=/usr/lib/udev + -D b_lto=false + -Dtests=false + -Ddocumentation=false +) + +#-------- +# BUILD ] + +build() { + arch-meson "$pkgname-$pkgver" build "${_flags[@]}" + meson compile -C build +} + +#---------- +# PACKAGE ] + +package() { + DESTDIR="$pkgdir" meson install -C build + + install -Dvm644 $pkgname-$pkgver/COPYING \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +#-------------------- +# ARCH LICENSE AUTH ] + +arch=(x86_64) +license=(custom:X11) + +validpgpkeys=( + '3C2C43D9447D5938EF4551EBE23B7E70B467F0BF' ## Peter Hutterer (Who-T) +) + +sha512sums=('') diff --git a/libinput/PKGBUILD.0 b/libinput/PKGBUILD.0 new file mode 100644 index 0000000..975a50d --- /dev/null +++ b/libinput/PKGBUILD.0 @@ -0,0 +1,102 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobcextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=libinput +pkgver=1.19.3 +pkgrel=02 +pkgdesc="Input device management and event handling library" +url="https://www.freedesktop.org/wiki/Software/libinput/" +arch=(x86_64) +depends=('mtdev' 'libevdev' 'libwacom') +# upstream doesn't recommend building docs +makedepends=('gtk3' 'meson' 'wayland-protocols' 'cmake' 'gtk4') # 'doxygen' 'graphviz' 'python-sphinx' 'python-recommonmark' +optdepends=('gtk3: libinput debug-gui' + 'python-pyudev: libinput measure' + 'python-libevdev: libinput measure') +source=(https://freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.xz{,.sig}) + +build() { + arch-meson $pkgname-$pkgver build \ + -D b_lto=false \ + -D udev-dir=/usr/lib/udev \ + -D tests=false \ + -D documentation=false + meson compile -C build +} + +package() { + DESTDIR="$pkgdir" meson install -C build + + install -Dvm644 $pkgname-$pkgver/COPYING \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +#---- license gpg-key sha256sums ---- + +license=(custom:X11) + +validpgpkeys=('3C2C43D9447D5938EF4551EBE23B7E70B467F0BF') # Peter Hutterer (Who-T) + +sha256sums=(3cae78ccde19d7d0f387e58bc734d4d17ab5f6426f54a9e8b728c90b17baa068 # libinput-1.19.3.tar.xz + db134d7f37e85160373f7377bacd6bd33ffe6a25b756d927ef63e9809b7107fd) # libinput-1.19.3.tar.xz.sig + + +####### diffs between old and new Arch PKGBUILD + + +--- PKGBUILD-arch 2022-01-25 16:08:27.211291154 +0000 ++++ PKGBUILD-arch.new 2022-02-20 07:21:57.296817153 +0000 +@@ -1,30 +1,34 @@ + # Maintainer: Andreas Radke +-# Maintainer: Jan de Groot + + pkgname=libinput +-pkgver=1.19.3 +-pkgrel=2 ++pkgver=1.20.0 ++pkgrel=1 + pkgdesc="Input device management and event handling library" +-url="https://www.freedesktop.org/wiki/Software/libinput/" ++url="https://gitlab.freedesktop.org/libinput" + arch=(x86_64) + license=(custom:X11) + depends=('mtdev' 'systemd' 'libevdev' 'libwacom') + # upstream doesn't recommend building docs +-makedepends=('gtk3' 'meson' 'wayland-protocols') # 'doxygen' 'graphviz' 'python-sphinx' 'python-recommonmark' +-optdepends=('gtk3: libinput debug-gui' ++makedepends=('gtk4' 'meson' 'wayland-protocols') # 'doxygen' 'graphviz' 'python-sphinx' 'python-recommonmark' ++optdepends=('gtk4: libinput debug-gui' + 'python-pyudev: libinput measure' + 'python-libevdev: libinput measure') +-source=(https://freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.xz{,.sig}) +-sha512sums=('f4b776d0da78c687ba21b430a04941ac6b43f68970c82ec9f7360358fdea5ed6a873948ce66a25bcdd64d4b95fa4bf705cc24dbc25c7c0f5fd2d0efbd763f298' +- 'SKIP') +-validpgpkeys=('3C2C43D9447D5938EF4551EBE23B7E70B467F0BF') # Peter Hutterer (Who-T) ++source=(#https://freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.xz{,.sig} ++ https://gitlab.freedesktop.org/libinput/libinput/-/archive/$pkgver/$pkgname-$pkgver.tar.bz2 #{,.sig}.tar.bz2 ++) ++#sha512sums=('f4b776d0da78c687ba21b430a04941ac6b43f68970c82ec9f7360358fdea5ed6a873948ce66a25bcdd64d4b95fa4bf705cc24dbc25c7c0f5fd2d0efbd763f298' ++# 'SKIP') ++sha512sums=('145b0e0760929137ab442b2030b4b42f6df54a3ae61c47c929e1a74857a170f0f2a56bb7522b7d1d9c0943028ac54c7728cf8d66a0c384f6118f31d6625ab44c') ++#validpgpkeys=('3C2C43D9447D5938EF4551EBE23B7E70B467F0BF') # Peter Hutterer (Who-T) + + build() { + arch-meson $pkgname-$pkgver build \ +- -D b_lto=false \ + -D udev-dir=/usr/lib/udev \ + -D tests=false \ + -D documentation=false ++ ++ # Print config ++ meson configure build + meson compile -C build + } + + + +#### systemd crap in new PKGBUILD +scan for systemd ipv6 service & socket +depends=('mtdev' 'systemd' 'libevdev' 'libwacom') diff --git a/libinput/PKGBUILD.1.19.3 b/libinput/PKGBUILD.1.19.3 new file mode 100644 index 0000000..2afb393 --- /dev/null +++ b/libinput/PKGBUILD.1.19.3 @@ -0,0 +1,45 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobcextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=libinput +pkgver=1.19.3 +pkgrel=02 +pkgdesc="Input device management and event handling library" +url="https://www.freedesktop.org/wiki/Software/libinput/" +arch=(x86_64) +depends=('mtdev' 'libevdev' 'libwacom') +# upstream doesn't recommend building docs +makedepends=('gtk3' 'meson' 'wayland-protocols' 'cmake' 'gtk4') # 'doxygen' 'graphviz' 'python-sphinx' 'python-recommonmark' +optdepends=('gtk3: libinput debug-gui' + 'python-pyudev: libinput measure' + 'python-libevdev: libinput measure') +source=(https://freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.xz{,.sig}) + +build() { + arch-meson $pkgname-$pkgver build \ + -D b_lto=false \ + -D udev-dir=/usr/lib/udev \ + -D tests=false \ + -D documentation=false + meson compile -C build +} + +package() { + DESTDIR="$pkgdir" meson install -C build + + install -Dvm644 $pkgname-$pkgver/COPYING \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +#---- license gpg-key sha256sums ---- + +license=(custom:X11) + +validpgpkeys=('3C2C43D9447D5938EF4551EBE23B7E70B467F0BF') # Peter Hutterer (Who-T) + +sha256sums=(3cae78ccde19d7d0f387e58bc734d4d17ab5f6426f54a9e8b728c90b17baa068 # libinput-1.19.3.tar.xz + db134d7f37e85160373f7377bacd6bd33ffe6a25b756d927ef63e9809b7107fd) # libinput-1.19.3.tar.xz.sig + diff --git a/libinput/clean b/libinput/clean new file mode 100644 index 0000000..4e8c821 --- /dev/null +++ b/libinput/clean @@ -0,0 +1 @@ +rm -rvf {pkg,src,libinput-1.*} diff --git a/libinput/config b/libinput/config new file mode 100644 index 0000000..f7c73ee --- /dev/null +++ b/libinput/config @@ -0,0 +1,16 @@ +Compiler for C supports arguments -Wno-unused-parameter: YES +Compiler for C supports arguments -Wmissing-prototypes: YES +Compiler for C supports arguments -Wstrict-prototypes: YES +Compiler for C supports arguments -Wundef: YES +Compiler for C supports arguments -Wlogical-op: YES +Compiler for C supports arguments -Wpointer-arith: YES +Compiler for C supports arguments -Wuninitialized: YES +Compiler for C supports arguments -Winit-self: YES +Compiler for C supports arguments -Wstrict-prototypes: YES (cached) +Compiler for C supports arguments -Wimplicit-fallthrough: YES +Compiler for C supports arguments -Wredundant-decls: YES +Compiler for C supports arguments -Wincompatible-pointer-types: YES +Compiler for C supports arguments -Wformat=2: YES +Compiler for C supports arguments -Wno-missing-field-initializers: YES +Compiler for C supports arguments -Wmissing-declarations: YES +Compiler for C supports arguments -fvisibility=hidden: YES diff --git a/libinput/deps b/libinput/deps new file mode 100644 index 0000000..d362125 --- /dev/null +++ b/libinput/deps @@ -0,0 +1,8 @@ +mtdev +libevdev +libwacom +meson +gtk3 +wayland-protocols +cmake +gtk4 diff --git a/libinput/key b/libinput/key new file mode 100644 index 0000000..7cc955c --- /dev/null +++ b/libinput/key @@ -0,0 +1 @@ +gpg -v --recv-key E23B7E70B467F0BF diff --git a/libinput/time b/libinput/time new file mode 100644 index 0000000..d89a57e --- /dev/null +++ b/libinput/time @@ -0,0 +1,5 @@ + +real 0m11.912s +user 0m27.518s +sys 0m2.736s + diff --git a/librewolf/PKGBUILD b/librewolf/PKGBUILD new file mode 100644 index 0000000..b09f932 --- /dev/null +++ b/librewolf/PKGBUILD @@ -0,0 +1,39 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=librewolf +provides=($pkgname-bin $pkgname) +conflicts=($pkgname-bin $pkgname) +pkgver=97.0.2 +pkgrel=01 +pkgdesc="Community-maintained fork of Firefox, focused on privacy, security and freedom." +arch=(x86_64) +depends=(gtk3 libxt startup-notification mime-types dbus-glib + ffmpeg4.4 nss ttf-liberation libpulse) +optdepends=('libnotify: Notification integration' + 'speech-dispatcher: Text-to-Speech' + 'hunspell-en_US: Spell checking, US English') +backup=( usr/lib/librewolf/librewolf.cfg + usr/lib/librewolf/distribution/policies.json) +options=(!emptydirs) +install=librewolf.install +proj_id=12875785 +url=https://gitlab.com/api/v4/projects/$proj_id/packages/generic/librewolf/$pkgver-1 +source=($url/$pkgname-$pkgver-1-x86_64.pkg.tar.zst{,.sig}) + +package() { + cp -r "${srcdir}"/usr "${pkgdir}"/ +} + +#---- license gpg-key sha256sums ---- + +license=(MPL GPL LGPL) + +validpgpkeys=(031F7104E932F7BD7416E7F6D2845E1305D6E801) # <1813007-ohfp@users.noreply.gitlab.com> + +sha256sums=(de9c1357ea6845e3d823009cb7e173cc81c2c6e225f4b0774d6d1de664f43041 # librewolf-97.0.2-1-x86_64.pkg.tar.zst + 935d59944b8d88daefec03c32fce76e5ca9fafb89b977a272097fb926c3ad374) # librewolf-97.0.2-1-x86_64.pkg.tar.zst.sig diff --git a/librewolf/PKGBUILD-aur b/librewolf/PKGBUILD-aur new file mode 100644 index 0000000..74512e1 --- /dev/null +++ b/librewolf/PKGBUILD-aur @@ -0,0 +1,41 @@ +# Maintainer: lsf + +pkgname=librewolf-bin +provides=(${pkgname//-bin/""}) +conflicts=(${pkgname//-bin/""}) +pkgver=97.0.2 +pkgrel=1 +pkgdesc="Community-maintained fork of Firefox, focused on privacy, security and freedom." +arch=(x86_64 aarch64) +license=(MPL GPL LGPL) +url="https://librewolf-community.gitlab.io/" +depends=(gtk3 libxt startup-notification mime-types dbus-glib + nss ttf-font libpulse ffmpeg4.4) +optdepends=('networkmanager: Location detection via available WiFi networks' + 'libnotify: Notification integration' + 'pulseaudio: Audio support' + 'speech-dispatcher: Text-to-Speech' + 'hunspell-en_US: Spell checking, American English') +validpgpkeys=('031F7104E932F7BD7416E7F6D2845E1305D6E801') +backup=('usr/lib/librewolf/librewolf.cfg' + 'usr/lib/librewolf/distribution/policies.json') +options=(!emptydirs) +install='librewolf-bin.install' + +_project_id=12875785 +_base_url=https://gitlab.com/api/v4/projects/${_project_id}/packages/generic/librewolf/${pkgver}-${pkgrel} +_uploadpath_aarch64=${_base_url}/${pkgname//-bin/""}-${pkgver}-${pkgrel}-aarch64.pkg.tar.zst +_uploadpath_x86_64=${_base_url}/${pkgname//-bin/""}-${pkgver}-${pkgrel}-x86_64.pkg.tar.zst +_uploadpath_sig_aarch64=${_base_url}/${pkgname//-bin/""}-${pkgver}-${pkgrel}-aarch64.pkg.tar.zst.sig +_uploadpath_sig_x86_64=${_base_url}/${pkgname//-bin/""}-${pkgver}-${pkgrel}-x86_64.pkg.tar.zst.sig +source_aarch64=("${_uploadpath_aarch64}" "${_uploadpath_sig_aarch64}") +source_x86_64=("${_uploadpath_x86_64}" "${_uploadpath_sig_x86_64}") +sha256sums_x86_64=('de9c1357ea6845e3d823009cb7e173cc81c2c6e225f4b0774d6d1de664f43041' + 'SKIP') +sha256sums_aarch64=('07bfa835bb7bff2f990971714d1bffb9e5ff3e239dcd0e75ef32f3302b13d25f' + 'SKIP') + +package() { + # Yep, that's somewhat redundant. But it works. + cp -r "${srcdir}"/usr "${pkgdir}"/ +} diff --git a/librewolf/clean b/librewolf/clean new file mode 100644 index 0000000..9ed978f --- /dev/null +++ b/librewolf/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,*tar.zst*} diff --git a/librewolf/deps b/librewolf/deps new file mode 100644 index 0000000..5d5d51f --- /dev/null +++ b/librewolf/deps @@ -0,0 +1,10 @@ +gtk3 +libxt +startup-notification +mailcap +dbus-glib +ffmpeg4.4 +nss +ttf-liberation +libpulse +jack2 diff --git a/librewolf/key b/librewolf/key new file mode 100644 index 0000000..e5ebfa7 --- /dev/null +++ b/librewolf/key @@ -0,0 +1 @@ +gpg -v --recv-key 2954CC8585E27A3F diff --git a/librewolf/librewolf.install b/librewolf/librewolf.install new file mode 100644 index 0000000..42bfedd --- /dev/null +++ b/librewolf/librewolf.install @@ -0,0 +1,15 @@ +post_upgrade() { + echo ">> Remember to check for changes in /usr/lib/librewolf/librewolf.cfg.pacnew" + echo ">> as those will not automatically overwrite your existing librewolf.cfg." + echo ">> " + echo ">> We would encourage you to migrate your own changes to the new overrides file" + echo ">> at ~/.librewolf/librewolf.overrides.cfg instead, so making changes directly" + echo ">> in your librewolf.cfg is not necessary anymore (in most cases at least)." + echo ">> " + echo ">> Check out https://gitlab.com/librewolf-community/settings/-/merge_requests/13" + echo ">> for more information on this." +} + +post_install() { + post_upgrade +} diff --git a/librewolf/time b/librewolf/time new file mode 100644 index 0000000..4c37a6a --- /dev/null +++ b/librewolf/time @@ -0,0 +1,5 @@ + +real 0m47.853s +user 2m26.928s +sys 0m1.968s + diff --git a/libudev-zero/LICENSE b/libudev-zero/LICENSE new file mode 100644 index 0000000..c094121 --- /dev/null +++ b/libudev-zero/LICENSE @@ -0,0 +1,10 @@ +Copyright (c) 2018-2021 Eric Vidal +Copyright (c) 2018-2021 Jean-Michel T.Dydak +Copyright (c) 2021 YianIris + +All rights reserved. + +Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + diff --git a/libudev-zero/PKGBUILD b/libudev-zero/PKGBUILD new file mode 100644 index 0000000..ffb6005 --- /dev/null +++ b/libudev-zero/PKGBUILD @@ -0,0 +1,59 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgbase=libudev-zero +pkgname=libudev-zero + +pkgdesc="Daemonless replacement for libudev" +_pkgver=1.0.0 +pkgver=215 +pkgrel=03 +so_ver=1.6.3 +url="https://github.com/illiliti/libudev-zero" +source=("${url}/archive/refs/tags/${_pkgver}.tar.gz" + arch-nosystemd-install.patch) +arch=('x86_64') +makedepends=('glibc' 'make') +provides=('libudev-zero' 'libeudev' 'libudev' "libudev.so=$libudev_ver") + +prepare() { + cd ${pkgname}-${_pkgver} + patch -p0 -i ../arch-nosystemd-install.patch +} + +build() { + cd ${pkgname}-${_pkgver} + + LIBUDEV_VER="${so_ver}" make + + msg "Compiling helper" + cd contrib + gcc $CFLAGS -o libudev-helper helper.c +} + +package() { + cd ${pkgname}-${_pkgver} + + LIBUDEV_VER="${so_ver}" make DESTDIR="${pkgdir}" PREFIX="/usr" install + + install -Dm755 contrib/libudev-helper "${pkgdir}"/usr/bin/libudev-helper +} + +depends=() + +groups=(no-udev) + +provides=('libudev-zero' 'libeudev' 'libudev' 'libudev.so=1-64') + +conflicts=('libudev' 'libeudev' 'libudev-zero-git') + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +sha256sums=(68c20aefd7aa89abe446cf5ec76f5846315ded719f0665eabed9261cc3c7f47a # 1.0.0.tar.gz + 1f8a6dc821c616b4c57c3e58b9cf6e5b5e6bd319872e20eea11e9f48b696a700) # arch-nosystemd-install.patch diff --git a/libudev-zero/arch-nosystemd-install.patch b/libudev-zero/arch-nosystemd-install.patch new file mode 100644 index 0000000..f7ddbd6 --- /dev/null +++ b/libudev-zero/arch-nosystemd-install.patch @@ -0,0 +1,10 @@ +--- Makefile.orig 2021-06-05 14:12:08.523206518 +0300 ++++ Makefile 2021-06-05 14:15:00.663156464 +0300 +@@ -51,6 +51,7 @@ install: libudev.so libudev.a libudev.pc + cp -f libudev.a ${DESTDIR}${LIBDIR}/libudev.a + cp -f libudev.so.1 ${DESTDIR}${LIBDIR}/libudev.so.1 + ln -fs libudev.so.1 ${DESTDIR}${LIBDIR}/libudev.so ++ ln -fs libudev.so.1 ${DESTDIR}${LIBDIR}/libudev.so.${LIBUDEV_VER} + cp -f libudev.pc ${DESTDIR}${PKGCONFIGDIR}/libudev.pc + + uninstall: diff --git a/libudev-zero/clean b/libudev-zero/clean new file mode 100644 index 0000000..9f381b4 --- /dev/null +++ b/libudev-zero/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,1*.gz} diff --git a/libudev-zero/time b/libudev-zero/time new file mode 100644 index 0000000..5235fa8 --- /dev/null +++ b/libudev-zero/time @@ -0,0 +1,4 @@ + +real 0m2.048s +user 0m2.235s +sys 0m0.332s diff --git a/libwacom/PKGBUILD b/libwacom/PKGBUILD new file mode 100644 index 0000000..c39de04 --- /dev/null +++ b/libwacom/PKGBUILD @@ -0,0 +1,45 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=libwacom +pkgver=2.1.0 +pkgrel=01 +pkgdesc="Library to identify Wacom tablets and their features" +arch=('x86_64') +url="https://github.com/linuxwacom/libwacom/wiki" +depends=('glib2' 'libgudev') +makedepends=('libxml2' 'meson') +checkdepends=('python-pytest' 'python-libevdev' 'python-pyudev') +optdepends=('python-libevdev: for libwacom-show-stylus') +source=(https://github.com/linuxwacom/libwacom/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.xz{,.sig}) + +build() { + meson build $pkgname-$pkgver \ + --prefix=/usr \ + -Dtests=disabled + ninja -C build +} +# +#check() { +# ninja test -C build +#} +# +# one test still fails even after rebuilding python-pytest without systemd --- it must be a systemd functionality that causes the fail +# + +package() { + DESTDIR="$pkgdir" ninja install -C build + install -D -m644 $pkgname-$pkgver/COPYING "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE +} + +#---- license gpg-key sha256sums ---- + +license=('MIT') + +validpgpkeys=('3C2C43D9447D5938EF4551EBE23B7E70B467F0BF') ## E23B7E70B467F0BF: "Peter Hutterer (Who-T) + +sha256sums=(b900899589c4c1f83e6671a2383a3437cfa70c3a275cb266bddbbc6c4eaf71a2 # libwacom-2.1.0.tar.xz + 4916a44160dfa92666333c172c141b26af250362f16f3b58df5422cbe25f3aba) # libwacom-2.1.0.tar.xz.sig diff --git a/libwacom/PKGBUILD-arch b/libwacom/PKGBUILD-arch new file mode 100644 index 0000000..52c5cf5 --- /dev/null +++ b/libwacom/PKGBUILD-arch @@ -0,0 +1,32 @@ +# Maintainer: Jan Alexander Steffens (heftig) + +pkgname=libwacom +pkgver=2.1.0 +pkgrel=1 +pkgdesc="Library to identify Wacom tablets and their features" +arch=('x86_64') +url="https://github.com/linuxwacom/libwacom/wiki" +license=('MIT') +depends=('glib2' 'systemd' 'libgudev') +makedepends=('libxml2' 'meson') +checkdepends=('python-pytest' 'python-libevdev' 'python-pyudev') +optdepends=('python-libevdev: for libwacom-show-stylus') +validpgpkeys=('3C2C43D9447D5938EF4551EBE23B7E70B467F0BF') +source=(https://github.com/linuxwacom/libwacom/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.xz{,.sig}) +sha512sums=('9da7a6467ee9d853fca8d7b58528cb7c7a2f28f4074dba76e1d76cd6c134d800e1f8ad672b997af96f8712fc407d7d64cbdd1bcb4d8ae67965217786bbabca4a' + 'SKIP') + +build() { + meson build $pkgname-$pkgver \ + --prefix=/usr + ninja -C build +} + +check() { + ninja test -C build +} + +package() { + DESTDIR="$pkgdir" ninja install -C build + install -D -m644 $pkgname-$pkgver/COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} diff --git a/libwacom/PKGBUILD-oba b/libwacom/PKGBUILD-oba new file mode 100644 index 0000000..8e43780 --- /dev/null +++ b/libwacom/PKGBUILD-oba @@ -0,0 +1,81 @@ +# Copyright : Obarun +#------------------------ +# Maintainer : Eric Vidal +# Maintainer : Jean-Michel T.Dydak +#---------------- +# Obarun PkgSrc : https://git.obarun.org/pkg/obextra/libwacom +#-------------------------------------------------------------- +# DESCRIPTION ] + +pkgname=libwacom +pkgver=2.0.0 +pkgrel=3 +pkgdesc="Library to identify Wacom tablets and their features" +url='https://github.com/linuxwacom/libwacom/wiki' + +track="$pkgname-$pkgver" +target="$pkgname-$pkgver" +source=( + "https://github.com/linuxwacom/libwacom/releases/download/${track}/${target}.tar.xz"{,.sig} +) + +#---------------------- +# BUILD CONFIGURATION ] + +makedepends=( + 'libxml2' + 'meson' + 'libeudev' +) + +depends=( + 'glib2' + 'libgudev' +) + +checkdepends=( + 'python-pytest' + 'python-libevdev' + 'python-pyudev' +) + +optdepends=( + 'python-libevdev: for libwacom-show-stylus' +) + +#-------- +# BUILD ] + +build() { + meson build $pkgname-$pkgver \ + --prefix=/usr \ + -Dtests=disabled + ninja -C build +} + +#-------- +# CHECK ] + +#check() { +# ninja test -C build +#} + +#---------- +# PACKAGE ] + +package() { + DESTDIR="$pkgdir" ninja install -C build + install -D -m644 $pkgname-$pkgver/COPYING "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE +} + +#-------------------- +# ARCH LICENSE AUTH ] + +arch=(x86_64) +license=(MIT) + +validpgpkeys=( + '3C2C43D9447D5938EF4551EBE23B7E70B467F0BF' +) + +sha512sums=('') diff --git a/libwacom/clean b/libwacom/clean new file mode 100644 index 0000000..3aaff9d --- /dev/null +++ b/libwacom/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,libwaco*.tar.xz*} diff --git a/libwacom/deps b/libwacom/deps new file mode 100644 index 0000000..c298030 --- /dev/null +++ b/libwacom/deps @@ -0,0 +1 @@ +meson libgudev python-pytest python-libevdev python-pyudev diff --git a/libwacom/key b/libwacom/key new file mode 100644 index 0000000..7cc955c --- /dev/null +++ b/libwacom/key @@ -0,0 +1 @@ +gpg -v --recv-key E23B7E70B467F0BF diff --git a/libwacom/time b/libwacom/time new file mode 100644 index 0000000..3d22094 --- /dev/null +++ b/libwacom/time @@ -0,0 +1,4 @@ + +real 0m14.382s +user 0m7.758s +sys 0m3.715s diff --git a/libxml2/PKGBUILD b/libxml2/PKGBUILD new file mode 100644 index 0000000..d3d1a87 --- /dev/null +++ b/libxml2/PKGBUILD @@ -0,0 +1,85 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=libxml2 +pkgver=2.9.13 +pkgrel=01 +pkgdesc='XML parsing library, version 2' +url='http://www.xmlsoft.org/' +arch=(x86_64) +groups=() +depends=(zlib readline ncurses xz icu) +makedepends=(python git) +optdepends=('python: Python bindings') +provides=(libxml2.so) +#_commit=b48e77cf4f6fa0792c5f4b639707a2b0675e461b # tags/v2.9.12^0 +_commit=a075d256fd9ff15590b86d981b75a50ead124fca # tags/v2.9.13^0 +source=("git+https://gitlab.gnome.org/GNOME/libxml2.git#commit=$_commit" + libxml2-2.9.8-python3-unicode-errors.patch +# no-fuzz.patch # Do not run fuzzing tests + no-fuzz.diff + https://www.w3.org/XML/Test/xmlts20130923.tar.gz) + +pkgver() { + cd $pkgname + git describe --tags | sed 's/-rc/rc/;s/^v//;s/\([^-]*-g\)/r\1/;s/-/./g' +} + +prepare() { + mkdir build + + # Use xmlconf from conformance test suite + ln -s xmlconf build/xmlconf + + cd libxml2 + + # https://src.fedoraproject.org/rpms/libxml2/tree/rawhide + git apply -3 ../libxml2-2.9.8-python3-unicode-errors.patch + + # Do not run fuzzing tests + git apply -3 ../no-fuzz.diff + + autoreconf -fiv +} + +build() ( + cd build + + ../$pkgname/configure \ + --prefix=/usr \ + --with-threads \ + --with-history \ + --with-python=/usr/bin/python \ + --with-icu + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0 /g' libtool + make + + find doc -type f -exec chmod 0644 {} + +) + +check() { + make -C build check +} + +package() { + make -C build DESTDIR="$pkgdir" install + + python -m compileall -d /usr/lib "$pkgdir/usr/lib" + python -O -m compileall -d /usr/lib "$pkgdir/usr/lib" + + install -Dm 644 build/COPYING -t "$pkgdir/usr/share/licenses/$pkgname" +} + +#---- license gpg-key sha256sums ---- + +license=(MIT) + +sha256sums=(SKIP + 37eb81a8ec6929eed1514e891bff2dd05b450bcf0c712153880c485b7366c17c # libxml2-2.9.8-python3-unicode-errors.patch +# 163655aba312c237a234a82d64b71a65bd9d1d901e176d443e3e3ac64f3b1b32 # no-fuzz.patch + 3fc010d8c42b93e6d6f1fca6b598a561e9d2c8780ff3ca0c76a31efabaea404f # no-fuzz.diff + 9b61db9f5dbffa545f4b8d78422167083a8568c59bd1129f94138f936cf6fc1f) # xmlts20130923.tar.gz diff --git a/libxml2/PKGBUILD-arch b/libxml2/PKGBUILD-arch new file mode 100644 index 0000000..649ea7e --- /dev/null +++ b/libxml2/PKGBUILD-arch @@ -0,0 +1,77 @@ +# Maintainer: Levente Polyak +# Maintainer: Jan de Groot +# Contributor: Tom Gundersen +# Contributor: John Proctor + +pkgname=libxml2 +pkgver=2.9.13 +pkgrel=1 +pkgdesc='XML parsing library, version 2' +url='http://www.xmlsoft.org/' +arch=(x86_64) +license=(MIT) +depends=(zlib readline ncurses xz icu) +makedepends=(python git) +optdepends=('python: Python bindings') +provides=(libxml2.so) +_commit=a075d256fd9ff15590b86d981b75a50ead124fca # tags/v2.9.13^0 +source=("git+https://gitlab.gnome.org/GNOME/libxml2.git#commit=$_commit" + libxml2-2.9.8-python3-unicode-errors.patch + no-fuzz.diff + https://www.w3.org/XML/Test/xmlts20130923.tar.gz) +sha256sums=('SKIP' + '37eb81a8ec6929eed1514e891bff2dd05b450bcf0c712153880c485b7366c17c' + '3fc010d8c42b93e6d6f1fca6b598a561e9d2c8780ff3ca0c76a31efabaea404f' + '9b61db9f5dbffa545f4b8d78422167083a8568c59bd1129f94138f936cf6fc1f') + +pkgver() { + cd libxml2 + git describe --tags | sed 's/-rc/rc/;s/^v//;s/\([^-]*-g\)/r\1/;s/-/./g' +} + +prepare() { + mkdir build + + # Use xmlconf from conformance test suite + ln -s xmlconf build/xmlconf + + cd libxml2 + + # https://src.fedoraproject.org/rpms/libxml2/tree/rawhide + git apply -3 ../libxml2-2.9.8-python3-unicode-errors.patch + + # Do not run fuzzing tests + git apply -3 ../no-fuzz.diff + + autoreconf -fiv +} + +build() ( + cd build + + ../libxml2/configure \ + --prefix=/usr \ + --with-threads \ + --with-history \ + --with-python=/usr/bin/python \ + --with-icu + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0 /g' libtool + make + + find doc -type f -exec chmod -c 0644 {} + +) + +check() { + make -C build check +} + +package() { + make -C build DESTDIR="$pkgdir" install + + python -m compileall -d /usr/lib "$pkgdir/usr/lib" + python -O -m compileall -d /usr/lib "$pkgdir/usr/lib" + + install -Dm 644 build/COPYING -t "$pkgdir/usr/share/licenses/$pkgname" +} + +# vim:set sw=2 et: diff --git a/libxml2/clean b/libxml2/clean new file mode 100644 index 0000000..b7cef9c --- /dev/null +++ b/libxml2/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,libxml2,xml*.tar.gz*} diff --git a/libxml2/deps b/libxml2/deps new file mode 100644 index 0000000..c48ff5b --- /dev/null +++ b/libxml2/deps @@ -0,0 +1,4 @@ +python git +autoconf +automake +gettext diff --git a/libxml2/libxml2-2.9.8-python3-unicode-errors.patch b/libxml2/libxml2-2.9.8-python3-unicode-errors.patch new file mode 100644 index 0000000..e87dcde --- /dev/null +++ b/libxml2/libxml2-2.9.8-python3-unicode-errors.patch @@ -0,0 +1,34 @@ +Index: libxml2-2.9.5/python/libxml.c +=================================================================== +--- libxml2-2.9.5.orig/python/libxml.c ++++ libxml2-2.9.5/python/libxml.c +@@ -1620,6 +1620,7 @@ libxml_xmlErrorFuncHandler(ATTRIBUTE_UNU + PyObject *message; + PyObject *result; + char str[1000]; ++ unsigned char *ptr = (unsigned char *)str; + + #ifdef DEBUG_ERROR + printf("libxml_xmlErrorFuncHandler(%p, %s, ...) called\n", ctx, msg); +@@ -1636,12 +1637,20 @@ libxml_xmlErrorFuncHandler(ATTRIBUTE_UNU + str[999] = 0; + va_end(ap); + ++#if PY_MAJOR_VERSION >= 3 ++ /* Ensure the error string doesn't start at UTF8 continuation. */ ++ while (*ptr && (*ptr & 0xc0) == 0x80) ++ ptr++; ++#endif ++ + list = PyTuple_New(2); + PyTuple_SetItem(list, 0, libxml_xmlPythonErrorFuncCtxt); + Py_XINCREF(libxml_xmlPythonErrorFuncCtxt); +- message = libxml_charPtrConstWrap(str); ++ message = libxml_charPtrConstWrap(ptr); + PyTuple_SetItem(list, 1, message); + result = PyEval_CallObject(libxml_xmlPythonErrorFuncHandler, list); ++ /* Forget any errors caused in the error handler. */ ++ PyErr_Clear(); + Py_XDECREF(list); + Py_XDECREF(result); + } diff --git a/libxml2/no-fuzz.diff b/libxml2/no-fuzz.diff new file mode 100644 index 0000000..67ab6cc --- /dev/null +++ b/libxml2/no-fuzz.diff @@ -0,0 +1,24 @@ +diff --git i/Makefile.am w/Makefile.am +index 7917b595..f0f4b695 100644 +--- i/Makefile.am ++++ w/Makefile.am +@@ -2,9 +2,9 @@ + + ACLOCAL_AMFLAGS = -I m4 + +-SUBDIRS = include . doc example fuzz xstc $(PYTHON_SUBDIR) ++SUBDIRS = include . doc example xstc $(PYTHON_SUBDIR) + +-DIST_SUBDIRS = include . doc example fuzz python xstc ++DIST_SUBDIRS = include . doc example python xstc + + AM_CPPFLAGS = -I$(top_builddir)/include -I$(srcdir)/include + +@@ -210,7 +210,6 @@ runtests: runtest$(EXEEXT) testrecurse$(EXEEXT) testapi$(EXEEXT) \ + $(CHECKER) ./runxmlconf$(EXEEXT) + @(if [ "$(PYTHON_SUBDIR)" != "" ] ; then cd python ; \ + $(MAKE) tests ; fi) +- @cd fuzz; $(MAKE) tests + + check: all runtests + diff --git a/libxml2/no-fuzz.patch b/libxml2/no-fuzz.patch new file mode 100644 index 0000000..122c40d --- /dev/null +++ b/libxml2/no-fuzz.patch @@ -0,0 +1,24 @@ +diff --git i/Makefile.am w/Makefile.am +index a9284b95..3d7b344d 100644 +--- i/Makefile.am ++++ w/Makefile.am +@@ -2,9 +2,9 @@ + + ACLOCAL_AMFLAGS = -I m4 + +-SUBDIRS = include . doc example fuzz xstc $(PYTHON_SUBDIR) ++SUBDIRS = include . doc example xstc $(PYTHON_SUBDIR) + +-DIST_SUBDIRS = include . doc example fuzz python xstc ++DIST_SUBDIRS = include . doc example python xstc + + AM_CPPFLAGS = -I$(top_builddir)/include -I$(srcdir)/include + +@@ -210,7 +210,6 @@ runtests: runtest$(EXEEXT) testrecurse$(EXEEXT) testapi$(EXEEXT) \ + $(CHECKER) ./runxmlconf$(EXEEXT) + @(if [ "$(PYTHON_SUBDIR)" != "" ] ; then cd python ; \ + $(MAKE) tests ; fi) +- @cd fuzz; $(MAKE) tests + + check: all runtests + diff --git a/libxml2/time b/libxml2/time new file mode 100644 index 0000000..d02de61 --- /dev/null +++ b/libxml2/time @@ -0,0 +1,4 @@ + +real 1m35.782s +user 2m57.932s +sys 0m8.210s diff --git a/libxslt/0001-Make-generate-id-deterministic.patch b/libxslt/0001-Make-generate-id-deterministic.patch new file mode 100644 index 0000000..ca51cec --- /dev/null +++ b/libxslt/0001-Make-generate-id-deterministic.patch @@ -0,0 +1,181 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Daniel Veillard +Date: Sun, 29 Oct 2017 01:04:54 +0200 +Subject: [PATCH] Make generate-id deterministic + +Origin: upstream, https://bugzilla.gnome.org/attachment.cgi?id=306475 +Bug: https://bugzilla.gnome.org/show_bug.cgi?id=751621 +Bug-Debian: https://bugs.debian.org/823857 +--- + libxslt/functions.c | 91 ++++++++++++++++++++++++++++++++++++++++- + libxslt/functions.h | 7 ++++ + libxslt/transform.c | 8 ++++ + libxslt/xsltInternals.h | 2 + + 4 files changed, 107 insertions(+), 1 deletion(-) + +diff --git a/libxslt/functions.c b/libxslt/functions.c +index 7887dda70f67..be0d897bd471 100644 +--- a/libxslt/functions.c ++++ b/libxslt/functions.c +@@ -683,6 +683,63 @@ xsltFormatNumberFunction(xmlXPathParserContextPtr ctxt, int nargs) + xmlXPathFreeObject(decimalObj); + } + ++/** ++ * xsltCleanupIds: ++ * @ctxt: the transformation context ++ * @root: the root of the resulting document ++ * ++ * This clean up ids which may have been saved in Element contents ++ * by xsltGenerateIdFunction() to provide stable IDs on elements. ++ * ++ * Returns the number of items cleaned or -1 in case of error ++ */ ++int ++xsltCleanupIds(xsltTransformContextPtr ctxt, xmlNodePtr root) { ++ xmlNodePtr cur; ++ int count = 0; ++ ++ if ((ctxt == NULL) || (root == NULL)) ++ return(-1); ++ if (root->type != XML_ELEMENT_NODE) ++ return(-1); ++ ++ cur = root; ++ while (cur != NULL) { ++ if (cur->type == XML_ELEMENT_NODE) { ++ if (cur->content != NULL) { ++ cur->content = NULL; ++ count++; ++ } ++ if (cur->children != NULL) { ++ cur = cur->children; ++ continue; ++ } ++ } ++ if (cur->next != NULL) { ++ cur = cur->next; ++ continue; ++ } ++ do { ++ cur = cur->parent; ++ if (cur == NULL) ++ break; ++ if (cur == (xmlNodePtr) root) { ++ cur = NULL; ++ break; ++ } ++ if (cur->next != NULL) { ++ cur = cur->next; ++ break; ++ } ++ } while (cur != NULL); ++ } ++ ++fprintf(stderr, "Attributed %d IDs for element, cleaned up %d\n", ++ ctxt->nextid, count); ++ ++ return(count); ++} ++ + /** + * xsltGenerateIdFunction: + * @ctxt: the XPath Parser context +@@ -734,7 +791,39 @@ xsltGenerateIdFunction(xmlXPathParserContextPtr ctxt, int nargs){ + if (obj) + xmlXPathFreeObject(obj); + +- val = (long)((char *)cur - (char *)&base_address); ++ /* ++ * Try to provide stable ID for generated document: ++ * - usually ID are computed to be placed on elements via attributes ++ * so using the element as the node for the ID ++ * - the cur->content should be a correct placeholder for this, we use ++ * it to hold element node numbers in xmlXPathOrderDocElems to ++ * speed up XPath too ++ * - xsltCleanupIds() clean them up before handing the XSLT output ++ * to the API client. ++ * - other nodes types use the node address method but that should ++ * not end up in resulting document ID ++ * - we can enable this by default without risk of performance issues ++ * only the one pass xsltCleanupIds() is added ++ */ ++ if (cur->type == XML_ELEMENT_NODE) { ++ if (cur->content == NULL) { ++ xsltTransformContextPtr tctxt; ++ ++ tctxt = xsltXPathGetTransformContext(ctxt); ++ if (tctxt == NULL) { ++ val = (long)((char *)cur - (char *)&base_address); ++ } else { ++ tctxt->nextid++; ++ val = tctxt->nextid; ++ cur->content = (void *) (val); ++ } ++ } else { ++ val = (long) cur->content; ++ } ++ } else { ++ val = (long)((char *)cur - (char *)&base_address); ++ } ++ + if (val >= 0) { + snprintf((char *)str, sizeof(str), "idp%ld", val); + } else { +diff --git a/libxslt/functions.h b/libxslt/functions.h +index 5455b7f47802..31163613f6e9 100644 +--- a/libxslt/functions.h ++++ b/libxslt/functions.h +@@ -63,6 +63,13 @@ XSLTPUBFUN void XSLTCALL + xsltFunctionAvailableFunction (xmlXPathParserContextPtr ctxt, + int nargs); + ++/* ++ * Cleanup for ID generation ++ */ ++XSLTPUBFUN int XSLTCALL ++ xsltCleanupIds (xsltTransformContextPtr ctxt, ++ xmlNodePtr root); ++ + /* + * And the registration + */ +diff --git a/libxslt/transform.c b/libxslt/transform.c +index 57f05bf71920..9368e17197bf 100644 +--- a/libxslt/transform.c ++++ b/libxslt/transform.c +@@ -706,6 +706,7 @@ xsltNewTransformContext(xsltStylesheetPtr style, xmlDocPtr doc) { + cur->traceCode = (unsigned long*) &xsltDefaultTrace; + cur->xinclude = xsltGetXIncludeDefault(); + cur->keyInitLevel = 0; ++ cur->nextid = 0; + + return(cur); + +@@ -6038,6 +6039,13 @@ xsltApplyStylesheetInternal(xsltStylesheetPtr style, xmlDocPtr doc, + if (root != NULL) { + const xmlChar *doctype = NULL; + ++ /* ++ * cleanup ids which may have been saved in Elements content ptrs ++ */ ++ if (ctxt->nextid != 0) { ++ xsltCleanupIds(ctxt, root); ++ } ++ + if ((root->ns != NULL) && (root->ns->prefix != NULL)) + doctype = xmlDictQLookup(ctxt->dict, root->ns->prefix, root->name); + if (doctype == NULL) +diff --git a/libxslt/xsltInternals.h b/libxslt/xsltInternals.h +index 14343d2751c8..9d3ff5fc0c06 100644 +--- a/libxslt/xsltInternals.h ++++ b/libxslt/xsltInternals.h +@@ -1786,6 +1786,8 @@ struct _xsltTransformContext { + int maxTemplateVars; + unsigned long opLimit; + unsigned long opCount; ++ ++ unsigned long nextid;/* for generating stable ids */ + }; + + /** diff --git a/libxslt/PKGBUILD b/libxslt/PKGBUILD new file mode 100644 index 0000000..b1a17b5 --- /dev/null +++ b/libxslt/PKGBUILD @@ -0,0 +1,60 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=libxslt +pkgver=1.1.35 +pkgrel=01 +pkgdesc="XML stylesheet transformation library" +url="https://gitlab.gnome.org/GNOME/libxslt/-/wikis" +arch=(x86_64) +depends=(libxml2 libgcrypt) +makedepends=(git python) +checkdepends=(docbook-xml) +optdepends=('python: Python bindings') +provides=(lib{,e}xslt.so) +_commit=50af4e65da712ceb59f98a7feeeab2ddc3324ab9 # tags/v1.1.35^0 +source=("git+https://gitlab.gnome.org/GNOME/libxslt.git#commit=$_commit" + 0001-Make-generate-id-deterministic.patch) + +pkgver() { + cd libxslt + git describe --tags | sed 's/^v//;s/[^-]*-g/r&/;s/-/+/g' +} + +prepare() { + cd libxslt + + # Make xsltproc output reproducible for packages which use it to generate documentation + git apply -3 ../0001-Make-generate-id-deterministic.patch + + NOCONFIGURE=1 ./autogen.sh +} + +build() { + cd libxslt + ./configure --prefix=/usr --disable-static + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +check() { + cd libxslt + make check +} + +package() { + cd libxslt + make DESTDIR="$pkgdir" install + install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 COPYING +} + +#---- license gpg-key sha256sums ---- + +license=(custom) + +sha256sums=('SKIP' + '0b1dc7ac703e347eace1b92f7ef48735a8b6013b8e5b9620a9ca882d8bf46a74') diff --git a/libxslt/PKGBUILD-arch b/libxslt/PKGBUILD-arch new file mode 100644 index 0000000..b3e33f1 --- /dev/null +++ b/libxslt/PKGBUILD-arch @@ -0,0 +1,54 @@ +# Contributor: Eric Belanger +# Contributor: John Proctor + +pkgname=libxslt +pkgver=1.1.35 +pkgrel=1 +pkgdesc="XML stylesheet transformation library" +url="https://gitlab.gnome.org/GNOME/libxslt/-/wikis" +arch=(x86_64) +license=(custom) +depends=(libxml2 libgcrypt) +makedepends=(git python) +checkdepends=(docbook-xml) +optdepends=('python: Python bindings') +provides=(lib{,e}xslt.so) +_commit=50af4e65da712ceb59f98a7feeeab2ddc3324ab9 # tags/v1.1.35^0 +source=("git+https://gitlab.gnome.org/GNOME/libxslt.git#commit=$_commit" + 0001-Make-generate-id-deterministic.patch) +sha256sums=('SKIP' + '0b1dc7ac703e347eace1b92f7ef48735a8b6013b8e5b9620a9ca882d8bf46a74') + +pkgver() { + cd libxslt + git describe --tags | sed 's/^v//;s/[^-]*-g/r&/;s/-/+/g' +} + +prepare() { + cd libxslt + + # Make xsltproc output reproducible for packages which use it to generate documentation + git apply -3 ../0001-Make-generate-id-deterministic.patch + + NOCONFIGURE=1 ./autogen.sh +} + +build() { + cd libxslt + ./configure --prefix=/usr --disable-static + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +check() { + cd libxslt + make check +} + +package() { + cd libxslt + make DESTDIR="$pkgdir" install + install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 COPYING +} + +# vim:set sw=2 et: diff --git a/libxslt/clean b/libxslt/clean new file mode 100644 index 0000000..5727641 --- /dev/null +++ b/libxslt/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,libxslt} diff --git a/libxslt/deps b/libxslt/deps new file mode 100644 index 0000000..f92e989 --- /dev/null +++ b/libxslt/deps @@ -0,0 +1,2 @@ +git python docbook-xml +automake autoconf diff --git a/libxslt/time b/libxslt/time new file mode 100644 index 0000000..f8faf56 --- /dev/null +++ b/libxslt/time @@ -0,0 +1,5 @@ + +real 1m6.802s +user 0m55.055s +sys 0m5.592s + diff --git a/llvm/PKGBUILD b/llvm/PKGBUILD new file mode 100644 index 0000000..90e0797 --- /dev/null +++ b/llvm/PKGBUILD @@ -0,0 +1,156 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=('llvm' 'llvm-libs' 'llvm-ocaml') +pkgver=13.0.1 +pkgrel=02 +_ocaml_ver=4.13.1 +arch=('x86_64') +url="https://llvm.org/" +makedepends=('cmake' 'ninja' 'libffi' 'libedit' 'ncurses' 'libxml2' + "ocaml>=$_ocaml_ver" 'ocaml-ctypes' 'ocaml-findlib' + 'python-setuptools' 'python-psutil' 'python-sphinx' + 'python-recommonmark') +options=('staticlibs' '!lto') # Getting thousands of test failures with LTO +_source_base=https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver +source=($_source_base/$pkgname-$pkgver.src.tar.xz{,.sig} + don-t-accept-nullptr-as-GEP-element-type.patch + don-t-move-DBG_VALUE-instructions.patch + no-strict-aliasing-DwarfCompileUnit.patch + disable-bswap-for-spir.patch + llvm-config.h) + +prepare() { + cd "$srcdir/llvm-$pkgver.src" + mkdir build + + # https://github.com/intel/intel-graphics-compiler/issues/204 + patch -Rp2 -i ../don-t-accept-nullptr-as-GEP-element-type.patch + + # https://github.com/llvm/llvm-project/issues/53243 + # https://github.com/rust-lang/rust/issues/92869 + patch -Np2 -i ../don-t-move-DBG_VALUE-instructions.patch + + # Work around intermittent 'clang -O -g' crashes + # https://bugs.llvm.org/show_bug.cgi?id=50611#c3 + patch -Np2 -i ../no-strict-aliasing-DwarfCompileUnit.patch + + # Fix an ISPC build failure (https://github.com/ispc/ispc/issues/2189) + patch -Np2 -i ../disable-bswap-for-spir.patch +} + +build() { + cd "$srcdir/llvm-$pkgver.src/build" + + cmake .. -G Ninja \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_SKIP_RPATH=ON \ + -DLLVM_HOST_TRIPLE=$CHOST \ + -DLLVM_BUILD_LLVM_DYLIB=ON \ + -DLLVM_LINK_LLVM_DYLIB=ON \ + -DLLVM_INSTALL_UTILS=ON \ + -DLLVM_ENABLE_RTTI=ON \ + -DLLVM_ENABLE_FFI=ON \ + -DLLVM_BUILD_TESTS=ON \ + -DLLVM_BUILD_DOCS=ON \ + -DLLVM_ENABLE_SPHINX=ON \ + -DLLVM_ENABLE_DOXYGEN=OFF \ + -DSPHINX_WARNINGS_AS_ERRORS=OFF \ + -DLLVM_BINUTILS_INCDIR=/usr/include + ninja all ocaml_doc +} + +## almost at the end before last couple of checks it sticks and does not proceed - so skipped at this time +## the above with 13.0.0 let's see how the 13.0.1 does with the altered ninja check +## it did the same +#check() { +# cd "$srcdir/llvm-$pkgver.src/build" +## ninja check +# LD_LIBRARY_PATH=$PWD/lib ninja check +#} + +package_llvm() { + pkgdesc="Collection of modular and reusable compiler and toolchain technologies" + depends=('llvm-libs' 'perl') + + cd "$srcdir/llvm-$pkgver.src/build" + + DESTDIR="$pkgdir" ninja install + + # Include lit for running lit-based tests in other projects + pushd ../utils/lit + python3 setup.py install --root="$pkgdir" -O1 + popd + + # Remove documentation sources + rm -r "$pkgdir"/usr/share/doc/$pkgname/html/{_sources,.buildinfo} + + # The runtime libraries go into llvm-libs + mv -f "$pkgdir"/usr/lib/lib{LLVM,LTO,Remarks}*.so* "$srcdir" + mv -f "$pkgdir"/usr/lib/LLVMgold.so "$srcdir" + + # OCaml bindings go to a separate package + rm -rf "$srcdir"/ocaml.{lib,doc} + mv "$pkgdir/usr/lib/ocaml" "$srcdir/ocaml.lib" + mv "$pkgdir/usr/share/doc/$pkgname/ocaml-html" "$srcdir/ocaml.doc" + + if [[ $CARCH == x86_64 ]]; then + # Needed for multilib (https://bugs.archlinux.org/task/29951) + # Header stub is taken from Fedora + mv "$pkgdir/usr/include/llvm/Config/llvm-config"{,-64}.h + cp "$srcdir/llvm-config.h" "$pkgdir/usr/include/llvm/Config/llvm-config.h" + fi + + install -Dm644 ../LICENSE.TXT "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +package_llvm-libs() { + pkgdesc="LLVM runtime libraries" + depends=('gcc-libs' 'zlib' 'libffi' 'libedit' 'ncurses' 'libxml2') + + install -d "$pkgdir/usr/lib" + cp -P \ + "$srcdir"/lib{LLVM,LTO,Remarks}*.so* \ + "$srcdir"/LLVMgold.so \ + "$pkgdir/usr/lib/" + + # Symlink LLVMgold.so from /usr/lib/bfd-plugins + # https://bugs.archlinux.org/task/28479 + install -d "$pkgdir/usr/lib/bfd-plugins" + ln -s ../LLVMgold.so "$pkgdir/usr/lib/bfd-plugins/LLVMgold.so" + + install -Dm644 "$srcdir/llvm-$pkgver.src/LICENSE.TXT" \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +package_llvm-ocaml() { + pkgdesc="OCaml bindings for LLVM" + depends=('llvm' "ocaml>=$_ocaml_ver" 'ocaml-ctypes') + + install -d "$pkgdir"/{usr/lib,usr/share/doc/$pkgname} + cp -a "$srcdir/ocaml.lib" "$pkgdir/usr/lib/ocaml" + cp -a "$srcdir/ocaml.doc" "$pkgdir/usr/share/doc/$pkgname/html" + + install -Dm644 "$srcdir/llvm-$pkgver.src/LICENSE.TXT" \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +#---- license gpg-key sha256sums ---- + +license=('custom:Apache 2.0 with LLVM Exception') + +validpgpkeys+=('B6C8F98282B944E3B0D5C2530FC3042E345AD05D') # Hans Wennborg +validpgpkeys+=('474E22316ABF4785A88C6E8EA2C794A986419D8A') # Tom Stellard + +sha256sums=(ec6b80d82c384acad2dc192903a6cf2cdbaffb889b84bfb98da9d71e630fc834 # llvm-13.0.1.src.tar.xz + be6a73345158b13b11c74f1c678078f3724fa033969f076c03bed9c1413add2d # llvm-13.0.1.src.tar.xz.sig + a7e902a7612d0fdabe436a917468b043cc296bc89d8954bfc3126f737beb9ac4 # don-t-accept-nullptr-as-GEP-element-type.patch + f7d69f84241416398fdb3df8bb44f9fae3c49d89889c7ffa3b37aa2e9d78f708 # don-t-move-DBG_VALUE-instructions.patch + d1eff24508e35aae6c26a943dbaa3ef5acb60a145b008fd1ef9ac6f6c4faa662 # no-strict-aliasing-DwarfCompileUnit.patch + af163392fbc19d65d11ab4b1510a2eae39b417d6228023b3ba5395b138bb41f5 # disable-bswap-for-spir.patch + 597dc5968c695bbdbb0eac9e8eb5117fcd2773bc91edf5ec103ecffffab8bc48) # llvm-config.h diff --git a/llvm/PKGBUILD-arch b/llvm/PKGBUILD-arch new file mode 100644 index 0000000..73edf4a --- /dev/null +++ b/llvm/PKGBUILD-arch @@ -0,0 +1,145 @@ +# Maintainer: Evangelos Foutras +# Contributor: Jan "heftig" Steffens + +pkgname=('llvm' 'llvm-libs' 'llvm-ocaml') +pkgver=13.0.1 +pkgrel=2 +_ocaml_ver=4.13.1 +arch=('x86_64') +url="https://llvm.org/" +license=('custom:Apache 2.0 with LLVM Exception') +makedepends=('cmake' 'ninja' 'libffi' 'libedit' 'ncurses' 'libxml2' + "ocaml>=$_ocaml_ver" 'ocaml-ctypes' 'ocaml-findlib' + 'python-setuptools' 'python-psutil' 'python-sphinx' + 'python-recommonmark') +options=('staticlibs' '!lto') # Getting thousands of test failures with LTO +_source_base=https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver +source=($_source_base/$pkgname-$pkgver.src.tar.xz{,.sig} + don-t-accept-nullptr-as-GEP-element-type.patch + don-t-move-DBG_VALUE-instructions.patch + no-strict-aliasing-DwarfCompileUnit.patch + disable-bswap-for-spir.patch + llvm-config.h) +sha256sums=('ec6b80d82c384acad2dc192903a6cf2cdbaffb889b84bfb98da9d71e630fc834' + 'SKIP' + 'a7e902a7612d0fdabe436a917468b043cc296bc89d8954bfc3126f737beb9ac4' + 'f7d69f84241416398fdb3df8bb44f9fae3c49d89889c7ffa3b37aa2e9d78f708' + 'd1eff24508e35aae6c26a943dbaa3ef5acb60a145b008fd1ef9ac6f6c4faa662' + 'af163392fbc19d65d11ab4b1510a2eae39b417d6228023b3ba5395b138bb41f5' + '597dc5968c695bbdbb0eac9e8eb5117fcd2773bc91edf5ec103ecffffab8bc48') +validpgpkeys+=('B6C8F98282B944E3B0D5C2530FC3042E345AD05D') # Hans Wennborg +validpgpkeys+=('474E22316ABF4785A88C6E8EA2C794A986419D8A') # Tom Stellard + +prepare() { + cd "$srcdir/llvm-$pkgver.src" + mkdir build + + # https://github.com/intel/intel-graphics-compiler/issues/204 + patch -Rp2 -i ../don-t-accept-nullptr-as-GEP-element-type.patch + + # https://github.com/llvm/llvm-project/issues/53243 + # https://github.com/rust-lang/rust/issues/92869 + patch -Np2 -i ../don-t-move-DBG_VALUE-instructions.patch + + # Work around intermittent 'clang -O -g' crashes + # https://bugs.llvm.org/show_bug.cgi?id=50611#c3 + patch -Np2 -i ../no-strict-aliasing-DwarfCompileUnit.patch + + # Fix an ISPC build failure (https://github.com/ispc/ispc/issues/2189) + patch -Np2 -i ../disable-bswap-for-spir.patch +} + +build() { + cd "$srcdir/llvm-$pkgver.src/build" + + cmake .. -G Ninja \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_SKIP_RPATH=ON \ + -DLLVM_HOST_TRIPLE=$CHOST \ + -DLLVM_BUILD_LLVM_DYLIB=ON \ + -DLLVM_LINK_LLVM_DYLIB=ON \ + -DLLVM_INSTALL_UTILS=ON \ + -DLLVM_ENABLE_RTTI=ON \ + -DLLVM_ENABLE_FFI=ON \ + -DLLVM_BUILD_TESTS=ON \ + -DLLVM_BUILD_DOCS=ON \ + -DLLVM_ENABLE_SPHINX=ON \ + -DLLVM_ENABLE_DOXYGEN=OFF \ + -DSPHINX_WARNINGS_AS_ERRORS=OFF \ + -DLLVM_BINUTILS_INCDIR=/usr/include + ninja all ocaml_doc +} + +check() { + cd "$srcdir/llvm-$pkgver.src/build" + LD_LIBRARY_PATH=$PWD/lib ninja check +} + +package_llvm() { + pkgdesc="Collection of modular and reusable compiler and toolchain technologies" + depends=('llvm-libs' 'perl') + + cd "$srcdir/llvm-$pkgver.src/build" + + DESTDIR="$pkgdir" ninja install + + # Include lit for running lit-based tests in other projects + pushd ../utils/lit + python3 setup.py install --root="$pkgdir" -O1 + popd + + # Remove documentation sources + rm -r "$pkgdir"/usr/share/doc/$pkgname/html/{_sources,.buildinfo} + + # The runtime libraries go into llvm-libs + mv -f "$pkgdir"/usr/lib/lib{LLVM,LTO,Remarks}*.so* "$srcdir" + mv -f "$pkgdir"/usr/lib/LLVMgold.so "$srcdir" + + # OCaml bindings go to a separate package + rm -rf "$srcdir"/ocaml.{lib,doc} + mv "$pkgdir/usr/lib/ocaml" "$srcdir/ocaml.lib" + mv "$pkgdir/usr/share/doc/$pkgname/ocaml-html" "$srcdir/ocaml.doc" + + if [[ $CARCH == x86_64 ]]; then + # Needed for multilib (https://bugs.archlinux.org/task/29951) + # Header stub is taken from Fedora + mv "$pkgdir/usr/include/llvm/Config/llvm-config"{,-64}.h + cp "$srcdir/llvm-config.h" "$pkgdir/usr/include/llvm/Config/llvm-config.h" + fi + + install -Dm644 ../LICENSE.TXT "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +package_llvm-libs() { + pkgdesc="LLVM runtime libraries" + depends=('gcc-libs' 'zlib' 'libffi' 'libedit' 'ncurses' 'libxml2') + + install -d "$pkgdir/usr/lib" + cp -P \ + "$srcdir"/lib{LLVM,LTO,Remarks}*.so* \ + "$srcdir"/LLVMgold.so \ + "$pkgdir/usr/lib/" + + # Symlink LLVMgold.so from /usr/lib/bfd-plugins + # https://bugs.archlinux.org/task/28479 + install -d "$pkgdir/usr/lib/bfd-plugins" + ln -s ../LLVMgold.so "$pkgdir/usr/lib/bfd-plugins/LLVMgold.so" + + install -Dm644 "$srcdir/llvm-$pkgver.src/LICENSE.TXT" \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +package_llvm-ocaml() { + pkgdesc="OCaml bindings for LLVM" + depends=('llvm' "ocaml>=$_ocaml_ver" 'ocaml-ctypes') + + install -d "$pkgdir"/{usr/lib,usr/share/doc/$pkgname} + cp -a "$srcdir/ocaml.lib" "$pkgdir/usr/lib/ocaml" + cp -a "$srcdir/ocaml.doc" "$pkgdir/usr/share/doc/$pkgname/html" + + install -Dm644 "$srcdir/llvm-$pkgver.src/LICENSE.TXT" \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +# vim:set ts=2 sw=2 et: diff --git a/llvm/clean b/llvm/clean new file mode 100644 index 0000000..ddf0c7c --- /dev/null +++ b/llvm/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,llvm*tar.xz*} diff --git a/llvm/deps b/llvm/deps new file mode 100644 index 0000000..e46f843 --- /dev/null +++ b/llvm/deps @@ -0,0 +1,11 @@ +ocaml +ocaml-ctypes +ocaml-findlib +python-setuptools +python-psutil +python-sphinx +python-recommonmark +cmake +ninja +libedit +libxml2 diff --git a/llvm/disable-bswap-for-spir.patch b/llvm/disable-bswap-for-spir.patch new file mode 100644 index 0000000..1138501 --- /dev/null +++ b/llvm/disable-bswap-for-spir.patch @@ -0,0 +1,50 @@ +# Based on https://github.com/ispc/ispc/blob/main/llvm_patches/12_0_disable-A-B-A-B-and-BSWAP-in-InstCombine.patch + +diff --git a/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp b/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp +index d01a021bf3f4..bccce825a03d 100644 +--- a/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp ++++ b/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp +@@ -15,6 +15,7 @@ + #include "llvm/ADT/APInt.h" + #include "llvm/ADT/STLExtras.h" + #include "llvm/ADT/SmallVector.h" ++#include "llvm/ADT/Triple.h" + #include "llvm/Analysis/InstructionSimplify.h" + #include "llvm/Analysis/ValueTracking.h" + #include "llvm/IR/Constant.h" +@@ -1369,9 +1370,12 @@ Instruction *InstCombinerImpl::visitAdd(BinaryOperator &I) { + } + } + +- // A+B --> A|B iff A and B have no bits set in common. +- if (haveNoCommonBitsSet(LHS, RHS, DL, &AC, &I, &DT)) +- return BinaryOperator::CreateOr(LHS, RHS); ++ // Disable this transformation for ISPC SPIR-V ++ if (!Triple(I.getModule()->getTargetTriple()).isSPIR()) { ++ // A+B --> A|B iff A and B have no bits set in common. ++ if (haveNoCommonBitsSet(LHS, RHS, DL, &AC, &I, &DT)) ++ return BinaryOperator::CreateOr(LHS, RHS); ++ } + + // add (select X 0 (sub n A)) A --> select X A n + { +diff --git a/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp b/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp +index 120852c44474..8de55311ce3e 100644 +--- a/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp ++++ b/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp +@@ -2671,9 +2671,12 @@ Instruction *InstCombinerImpl::visitOr(BinaryOperator &I) { + if (Instruction *FoldedLogic = foldBinOpIntoSelectOrPhi(I)) + return FoldedLogic; + +- if (Instruction *BitOp = matchBSwapOrBitReverse(I, /*MatchBSwaps*/ true, +- /*MatchBitReversals*/ true)) +- return BitOp; ++ // Disable this transformation for ISPC SPIR-V ++ if (!Triple(I.getModule()->getTargetTriple()).isSPIR()) { ++ if (Instruction *BitOp = matchBSwapOrBitReverse(I, /*MatchBSwaps*/ true, ++ /*MatchBitReversals*/ true)) ++ return BitOp; ++ } + + if (Instruction *Funnel = matchFunnelShift(I, *this)) + return Funnel; diff --git a/llvm/don-t-accept-nullptr-as-GEP-element-type.patch b/llvm/don-t-accept-nullptr-as-GEP-element-type.patch new file mode 100644 index 0000000..28ab9cb --- /dev/null +++ b/llvm/don-t-accept-nullptr-as-GEP-element-type.patch @@ -0,0 +1,63 @@ +From b00cff56cfb15cbfa74cb512c9cee1c402cce55b Mon Sep 17 00:00:00 2001 +From: Nikita Popov +Date: Thu, 8 Jul 2021 20:56:05 +0200 +Subject: [PATCH] Reapply [IR] Don't accept nullptr as GEP element type + +Reapply after fixing another occurrence in lldb that was relying +on this in the preceding commit. + +----- + +GetElementPtrInst::Create() (and IRBuilder methods based on it) +currently accept nullptr as the element type, and will fetch the +element type from the pointer in that case. Remove this fallback, +as it is incompatible with opaque pointers. I've removed a handful +of leftover calls using this behavior as a preliminary step. + +Out-of-tree code affected by this change should either pass a proper +type, or can temporarily explicitly call getPointerElementType(), +if the newly added assertion is encountered. + +Differential Revision: https://reviews.llvm.org/D105653 +--- + llvm/include/llvm/IR/Instructions.h | 20 ++++++-------------- + 1 file changed, 6 insertions(+), 14 deletions(-) + +diff --git a/llvm/include/llvm/IR/Instructions.h b/llvm/include/llvm/IR/Instructions.h +index a5cebf0a4626..0c43a56daa33 100644 +--- a/llvm/include/llvm/IR/Instructions.h ++++ b/llvm/include/llvm/IR/Instructions.h +@@ -956,13 +956,9 @@ public: + const Twine &NameStr = "", + Instruction *InsertBefore = nullptr) { + unsigned Values = 1 + unsigned(IdxList.size()); +- if (!PointeeType) { +- PointeeType = +- cast(Ptr->getType()->getScalarType())->getElementType(); +- } else { +- assert(cast(Ptr->getType()->getScalarType()) +- ->isOpaqueOrPointeeTypeMatches(PointeeType)); +- } ++ assert(PointeeType && "Must specify element type"); ++ assert(cast(Ptr->getType()->getScalarType()) ++ ->isOpaqueOrPointeeTypeMatches(PointeeType)); + return new (Values) GetElementPtrInst(PointeeType, Ptr, IdxList, Values, + NameStr, InsertBefore); + } +@@ -972,13 +968,9 @@ public: + const Twine &NameStr, + BasicBlock *InsertAtEnd) { + unsigned Values = 1 + unsigned(IdxList.size()); +- if (!PointeeType) { +- PointeeType = +- cast(Ptr->getType()->getScalarType())->getElementType(); +- } else { +- assert(cast(Ptr->getType()->getScalarType()) +- ->isOpaqueOrPointeeTypeMatches(PointeeType)); +- } ++ assert(PointeeType && "Must specify element type"); ++ assert(cast(Ptr->getType()->getScalarType()) ++ ->isOpaqueOrPointeeTypeMatches(PointeeType)); + return new (Values) GetElementPtrInst(PointeeType, Ptr, IdxList, Values, + NameStr, InsertAtEnd); + } diff --git a/llvm/don-t-move-DBG_VALUE-instructions.patch b/llvm/don-t-move-DBG_VALUE-instructions.patch new file mode 100644 index 0000000..ed1d231 --- /dev/null +++ b/llvm/don-t-move-DBG_VALUE-instructions.patch @@ -0,0 +1,91 @@ +From e7c9a6cae09d99388d8384ca7c0fb5b24b353975 Mon Sep 17 00:00:00 2001 +From: Nikita Popov +Date: Mon, 17 Jan 2022 15:48:01 +0100 +Subject: [PATCH] [SDAG] Don't move DBG_VALUE instructions after insertion + point during scheduling (PR53243) + +EmitSchedule() shouldn't be touching instructions after the provided +insertion point. The change introduced in D83561 performs a scan to +the end of the block, and thus may move unrelated instructions. In +particular, this ends up moving instructions that have been produced +by FastISel and will later be deleted. Moving them means that more +instructions than intended are removed. + +Fix this by stopping the iteration when the insertion point is +reached. + +Fixes https://github.com/llvm/llvm-project/issues/53243. + +Differential Revision: https://reviews.llvm.org/D117489 +--- + .../SelectionDAG/ScheduleDAGSDNodes.cpp | 7 ++-- + .../CodeGen/X86/pr53243-tail-call-fastisel.ll | 39 +++++++++++++++++++ + 2 files changed, 43 insertions(+), 3 deletions(-) + create mode 100644 llvm/test/CodeGen/X86/pr53243-tail-call-fastisel.ll + +diff --git a/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp b/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp +index bec240d6c4d4..403f34573899 100644 +--- a/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp ++++ b/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp +@@ -1057,12 +1057,13 @@ EmitSchedule(MachineBasicBlock::iterator &InsertPos) { + "first terminator cannot be a debug value"); + for (MachineInstr &MI : make_early_inc_range( + make_range(std::next(FirstTerm), InsertBB->end()))) { ++ // Only scan up to insertion point. ++ if (&MI == InsertPos) ++ break; ++ + if (!MI.isDebugValue()) + continue; + +- if (&MI == InsertPos) +- InsertPos = std::prev(InsertPos->getIterator()); +- + // The DBG_VALUE was referencing a value produced by a terminator. By + // moving the DBG_VALUE, the referenced value also needs invalidating. + MI.getOperand(0).ChangeToRegister(0, false); +diff --git a/llvm/test/CodeGen/X86/pr53243-tail-call-fastisel.ll b/llvm/test/CodeGen/X86/pr53243-tail-call-fastisel.ll +new file mode 100644 +index 000000000000..333eff8fb008 +--- /dev/null ++++ b/llvm/test/CodeGen/X86/pr53243-tail-call-fastisel.ll +@@ -0,0 +1,39 @@ ++; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py ++; RUN: llc -O0 -fast-isel -mtriple=x86_64-- < %s | FileCheck %s ++ ++define void @test() { ++; CHECK-LABEL: test: ++; CHECK: # %bb.0: ++; CHECK-NEXT: jmp set_state@PLT # TAILCALL ++ tail call void @set_state() ++ call void @llvm.dbg.value(metadata i64 0, metadata !10, metadata !DIExpression()), !dbg !16 ++ ret void ++} ++ ++declare void @set_state() ++ ++; Function Attrs: nofree nosync nounwind readnone speculatable willreturn ++declare void @llvm.dbg.value(metadata, metadata, metadata) #0 ++ ++attributes #0 = { nofree nosync nounwind readnone speculatable willreturn } ++ ++!llvm.module.flags = !{!0} ++!llvm.dbg.cu = !{!1} ++ ++!0 = !{i32 2, !"Debug Info Version", i32 3} ++!1 = distinct !DICompileUnit(language: DW_LANG_Rust, file: !2, producer: "clang LLVM (rustc version 1.60.0-nightly (ec4bcaac4 2022-01-15))", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !3) ++!2 = !DIFile(filename: "src/lib.rs/@/bug.63e521cd-cgu.0", directory: "/tmp/rust-bug") ++!3 = !{!4} ++!4 = !DICompositeType(tag: DW_TAG_enumeration_type, name: "Option", file: !5, baseType: !6, size: 8, align: 8, flags: DIFlagEnumClass, elements: !7) ++!5 = !DIFile(filename: "", directory: "") ++!6 = !DIBasicType(name: "u8", size: 8, encoding: DW_ATE_unsigned) ++!7 = !{!8, !9} ++!8 = !DIEnumerator(name: "None", value: 0) ++!9 = !DIEnumerator(name: "Some", value: 1) ++!10 = !DILocalVariable(name: "msg", arg: 2, scope: !11, file: !12, line: 689, type: !6) ++!11 = distinct !DISubprogram(name: "expect<()>", linkageName: "_ZN4core6option15Option$LT$T$GT$6expect17h9a574c18f194c213E", scope: !4, file: !12, line: 689, type: !13, scopeLine: 689, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !1, templateParams: !15, retainedNodes: !15) ++!12 = !DIFile(filename: "/rustc/ec4bcaac450279b029f3480b8b8f1b82ab36a5eb/library/core/src/option.rs", directory: "", checksumkind: CSK_MD5, checksum: "4120c8557937a0772190a676ec193800") ++!13 = !DISubroutineType(types: !14) ++!14 = !{null, !4} ++!15 = !{} ++!16 = !DILocation(line: 0, scope: !11) diff --git a/llvm/key b/llvm/key new file mode 100644 index 0000000..9b88141 --- /dev/null +++ b/llvm/key @@ -0,0 +1 @@ +gpg -v --recv-key A2C794A986419D8A diff --git a/llvm/llvm-config.h b/llvm/llvm-config.h new file mode 100644 index 0000000..2fa08c9 --- /dev/null +++ b/llvm/llvm-config.h @@ -0,0 +1,9 @@ +#include + +#if __WORDSIZE == 32 +#include "llvm-config-32.h" +#elif __WORDSIZE == 64 +#include "llvm-config-64.h" +#else +#error "Unknown word size" +#endif diff --git a/llvm/no-strict-aliasing-DwarfCompileUnit.patch b/llvm/no-strict-aliasing-DwarfCompileUnit.patch new file mode 100644 index 0000000..c716886 --- /dev/null +++ b/llvm/no-strict-aliasing-DwarfCompileUnit.patch @@ -0,0 +1,13 @@ +diff --git a/llvm/lib/CodeGen/AsmPrinter/CMakeLists.txt b/llvm/lib/CodeGen/AsmPrinter/CMakeLists.txt +index eb924282a75e..85929b54d6ce 100644 +--- a/llvm/lib/CodeGen/AsmPrinter/CMakeLists.txt ++++ b/llvm/lib/CodeGen/AsmPrinter/CMakeLists.txt +@@ -44,3 +44,8 @@ add_llvm_component_library(LLVMAsmPrinter + Support + Target + ) ++ ++# https://bugs.llvm.org/show_bug.cgi?id=50611#c3 ++if (CMAKE_COMPILER_IS_GNUCXX) ++ set_source_files_properties(DwarfCompileUnit.cpp PROPERTIES COMPILE_FLAGS -fno-strict-aliasing) ++endif() diff --git a/llvm/note b/llvm/note new file mode 100644 index 0000000..3a623d2 --- /dev/null +++ b/llvm/note @@ -0,0 +1,28 @@ +02 11 2022 + +past 6hr/core of testing, nearly 2 hr doing nothing, but cpu going crazy. +I've had enough of this again, as you see it is nearly at the end of 44876 tests and it doesn't progress. +I think it is safe at this point to just build it without check + +******************** + -- Testing: 44876 tests, 4 workers -- + 99% [========================================================================================-] ETA: 00:00:00 +lit :: shtest-shell.py ninja: build stopped: interrupted by user. +==> ERROR: A failure occurred in check(). + Aborting... + +time when python3.10 was killed + +real 157m36.327s +user 376m2.328s +sys 12m15.959s + +previous time: + +21727.76s +user 711.69s +system 198% +cpu 3:08:00.97 total +I run this on a 2 cores without the check because it makes cpu hot + + diff --git a/llvm/time b/llvm/time new file mode 100644 index 0000000..37a7ed1 --- /dev/null +++ b/llvm/time @@ -0,0 +1,16 @@ +w/check +real 157m36.327s +user 376m2.328s +sys 12m15.959s +wo/check + + +real 116m24.117s +user 388m47.667s +sys 12m48.846s + + This below is for 13.0.1-2 - I suspect the change in gcc may have spead this up \ +real 85m29.878s +user 312m0.454s +sys 11m25.008s + diff --git a/lsb-release/PKGBUILD b/lsb-release/PKGBUILD new file mode 100644 index 0000000..f64f4ba --- /dev/null +++ b/lsb-release/PKGBUILD @@ -0,0 +1,51 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=lsb-release +pkgver=2.0.r48.3cf5103 +_commit=3cf51039933d03ef15388b75d30baa5d5e09a1a0 +pkgrel=01 +pkgdesc="LSB version query program" +arch=('any') +url="https://refspecs.linuxfoundation.org/lsb.shtml" +depends=('sh') +makedepends=('git') +source=("git+https://github.com/LinuxStandardBase/lsb-samples.git#commit=$_commit" + 'lsb-release' + 'lsb_release_description.patch' + 'lsb_release_make_man_page_reproducible.patch') + +pkgver() { + cd lsb-samples/lsb_release/src + printf "%s.r%s.%s" "$(grep -Po 'SCRIPTVERSION="\K[^"]*' lsb_release)" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)" +} + +prepare() { + cd lsb-samples/lsb_release/src + patch -Np0 -i "$srcdir/lsb_release_description.patch" + patch -Np1 -i "$srcdir/lsb_release_make_man_page_reproducible.patch" +} + +build() { + cd lsb-samples/lsb_release/src + make +} + +package() { + cd lsb-samples/lsb_release/src + install -Dm644 lsb_release.1.gz -t "$pkgdir/usr/share/man/man1" + install -Dm755 lsb_release -t "$pkgdir/usr/bin" + install -Dm644 "$srcdir/lsb-release" -t "$pkgdir/etc" +} + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +sha256sums=(b68bca433bb6b36e7d285daf52a8b93f9a284ecede61aded2e25ec6f78b134af # lsb-release + 79f7f4d47052eea37c602d42c8d75d391b87effd867f20003f179e8f74663e93 # lsb_release_description.patch + da9fdceedd09f336652147d4482edc6f0e8834cc24ed64ecda79b3c1efeac7a6) # lsb_release_make_man_page_reproducible.patch diff --git a/lsb-release/PKGBUILD-arch b/lsb-release/PKGBUILD-arch new file mode 100644 index 0000000..0c09d45 --- /dev/null +++ b/lsb-release/PKGBUILD-arch @@ -0,0 +1,46 @@ +# Maintainer: Jonas Witschel +# Contributor: Sven-Hendrik Haase +# Contributor: Malte Rabenseifner +# Contributor: John Gerritse + +pkgname=lsb-release +pkgver=2.0.r48.3cf5103 +_commit=3cf51039933d03ef15388b75d30baa5d5e09a1a0 +pkgrel=1 +pkgdesc="LSB version query program" +arch=('any') +url="https://refspecs.linuxfoundation.org/lsb.shtml" +license=('GPL') +depends=('sh') +makedepends=('git') +source=("git+https://github.com/LinuxStandardBase/lsb-samples.git#commit=$_commit" + 'lsb-release' + 'lsb_release_description.patch' + 'lsb_release_make_man_page_reproducible.patch') +sha512sums=('SKIP' + 'c4fb9d1026b6cc362b95d8b6662709ec18c0c8cb642d3a811d75bbb0e2fda93e1281accce40b7e7d5cde162144486a29d4c34ccbffcdd8f18e0ff51aef83db97' + '145ef64f90f5e6cc59075679e640cf7c1ad02617c12eff17f10b05c1cc219591fdba1b27be2b2c8480742aed24ce81d6a7badcbaca6772faea4ebc6a55695b62' + 'ab64a1d236d00a30a48e3af2c5bdfa0aad0183ebe0df4f2b0c6af58530c2a1fdac1b0a5cdd8a1800d5f8405f44562603cddf28eb318b5badaabd49a82e0b7e83') + +pkgver() { + cd lsb-samples/lsb_release/src + printf "%s.r%s.%s" "$(grep -Po 'SCRIPTVERSION="\K[^"]*' lsb_release)" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)" +} + +prepare() { + cd lsb-samples/lsb_release/src + patch -Np0 -i "$srcdir/lsb_release_description.patch" + patch -Np1 -i "$srcdir/lsb_release_make_man_page_reproducible.patch" +} + +build() { + cd lsb-samples/lsb_release/src + make +} + +package() { + cd lsb-samples/lsb_release/src + install -Dm644 lsb_release.1.gz -t "$pkgdir/usr/share/man/man1" + install -Dm755 lsb_release -t "$pkgdir/usr/bin" + install -Dm644 "$srcdir/lsb-release" -t "$pkgdir/etc" +} diff --git a/lsb-release/clean b/lsb-release/clean new file mode 100644 index 0000000..f280ec6 --- /dev/null +++ b/lsb-release/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,lsb-samples} diff --git a/lsb-release/deps b/lsb-release/deps new file mode 100644 index 0000000..5664e30 --- /dev/null +++ b/lsb-release/deps @@ -0,0 +1 @@ +git diff --git a/lsb-release/lsb-release b/lsb-release/lsb-release new file mode 100644 index 0000000..01356b2 --- /dev/null +++ b/lsb-release/lsb-release @@ -0,0 +1,3 @@ +DISTRIB_ID="Arch" +DISTRIB_RELEASE="rolling" +DISTRIB_DESCRIPTION="Arch Linux" diff --git a/lsb-release/lsb_release_description.patch b/lsb-release/lsb_release_description.patch new file mode 100644 index 0000000..d46835b --- /dev/null +++ b/lsb-release/lsb_release_description.patch @@ -0,0 +1,11 @@ +--- lsb_release.orig 2012-11-13 05:12:02.000000000 -0800 ++++ lsb_release 2013-11-24 17:13:55.943608718 -0800 +@@ -216,7 +216,7 @@ + TMP_DISTRIB_DESC=$DISTRIB_DESCRIPTION + fi + +- if [ -z "$TMP_DISTRIB_DESC" ] # head or lsb-release init ++ if [ -z "$DISTRIB_DESCRIPTION" ] # head or lsb-release init + then # file contains no data + DISTRIB_DESCRIPTION=$MSG_NONE + NO="y" diff --git a/lsb-release/lsb_release_make_man_page_reproducible.patch b/lsb-release/lsb_release_make_man_page_reproducible.patch new file mode 100644 index 0000000..023c673 --- /dev/null +++ b/lsb-release/lsb_release_make_man_page_reproducible.patch @@ -0,0 +1,41 @@ +From 1f5eb29ad59e7302e0407855333fbf1377f6f127 Mon Sep 17 00:00:00 2001 +From: Jonas Witschel +Date: Sat, 11 Jul 2020 17:02:59 +0200 +Subject: [PATCH] Make man page reproducible + +Respect SOURCE_DATE_EPOCH and remove the embedded timestamp from the gzipped +man page. +--- + Makefile | 2 +- + help2man | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Makefile b/Makefile +index 04fdecd..d2f6230 100644 +--- a/Makefile ++++ b/Makefile +@@ -17,7 +17,7 @@ man: lsb_release.1.gz + + lsb_release.1.gz: lsb_release + @./help2man -N --include ./lsb_release.examples --alt_version_key=program_version ./lsb_release >lsb_release.1 +- @gzip -9f lsb_release.1 ++ @gzip -9f -n lsb_release.1 + + install: all + install -D -m 644 lsb_release.1.gz ${mandir}/man1/lsb_release.1.gz +diff --git a/help2man b/help2man +index 13015c2..d448342 100755 +--- a/help2man ++++ b/help2man +@@ -173,7 +173,7 @@ my ($help_text, $version_text) = map { + or die "$this_program: can't get `--$_' info from $ARGV[0]\n" + } qw(help), $opt_version_key; + +-my $date = strftime "%B %Y", localtime; ++my $date = strftime "%B %Y", gmtime($ENV{SOURCE_DATE_EPOCH} || time); + (my $program = $ARGV[0]) =~ s!.*/!!; + my $package = $program; + my $version; +-- +2.27.0 + diff --git a/lsb-release/time b/lsb-release/time new file mode 100644 index 0000000..df7ab33 --- /dev/null +++ b/lsb-release/time @@ -0,0 +1,4 @@ + +real 0m3.208s +user 0m1.534s +sys 0m0.210s diff --git a/lxterminal/PKGBUILD b/lxterminal/PKGBUILD new file mode 100644 index 0000000..2431f80 --- /dev/null +++ b/lxterminal/PKGBUILD @@ -0,0 +1,39 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=lxterminal +pkgver=0.4.0 +pkgrel=01 +pkgdesc="VTE-based terminal emulator (custom Joborun .conf)" +arch=('x86_64') +url="https://lxde.org/" +groups=('lxde' 'lxde-gtk3') +depends=('vte3' 'ttf-liberation') +makedepends=('intltool') +conflicts=('lxterminal-gtk3') +replaces=('lxterminal-gtk3') +source=(https://downloads.sourceforge.net/lxde/${pkgname}-${pkgver}.tar.xz + lxterminal.conf) + +build() { + cd $pkgname-$pkgver + ./configure --sysconfdir=/etc --prefix=/usr --enable-gtk3 + make +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install + install -Dm644 "$srcdir/lxterminal.conf" "$pkgdir/usr/share/lxterminal/lxterminal.conf" +} + +#---- license gpg-key sha256sums ---- + +license=('GPL2') + +sha256sums=(9db8748923b3fa09a82ae2210ed1fa4cdb4c45312009da9caed103d48f8e9be7 # lxterminal-0.4.0.tar.xz + 083728c75901e304ea25ec68bc4e5731f8e710102bbfbf74964820a3abfdb015) # lxterminal.conf diff --git a/lxterminal/PKGBUILD-arch b/lxterminal/PKGBUILD-arch new file mode 100644 index 0000000..f12e9b7 --- /dev/null +++ b/lxterminal/PKGBUILD-arch @@ -0,0 +1,30 @@ +# Maintainer: Balló György +# Contributor: Bartłomiej Piotrowski +# Contributor: Angel Velasquez +# Contributor: Geoffroy Carrier + +pkgname=lxterminal +pkgver=0.4.0 +pkgrel=1 +pkgdesc="VTE-based terminal emulator (part of LXDE)" +arch=('x86_64') +url="https://lxde.org/" +license=('GPL2') +groups=('lxde' 'lxde-gtk3') +depends=('vte3') +makedepends=('intltool') +conflicts=('lxterminal-gtk3') +replaces=('lxterminal-gtk3') +source=(https://downloads.sourceforge.net/lxde/${pkgname}-${pkgver}.tar.xz) +sha256sums=('9db8748923b3fa09a82ae2210ed1fa4cdb4c45312009da9caed103d48f8e9be7') + +build() { + cd $pkgname-$pkgver + ./configure --sysconfdir=/etc --prefix=/usr --enable-gtk3 + make +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install +} diff --git a/lxterminal/clean b/lxterminal/clean new file mode 100644 index 0000000..82b5392 --- /dev/null +++ b/lxterminal/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,lxterminal*.tar.xz} diff --git a/lxterminal/deps b/lxterminal/deps new file mode 100644 index 0000000..7584704 --- /dev/null +++ b/lxterminal/deps @@ -0,0 +1,4 @@ +vte3 +intltool +gettext +ttf-liberation diff --git a/lxterminal/lxterminal.conf b/lxterminal/lxterminal.conf new file mode 100644 index 0000000..4fd9856 --- /dev/null +++ b/lxterminal/lxterminal.conf @@ -0,0 +1,57 @@ +[general] +fontname=Liberation Mono 15 +selchars=-A-Za-z0-9,./?%&#:_ +scrollback=40000 +bgcolor=rgb(39,46,48) +bgalpha=59367 +fgcolor=rgb(232,222,181) +palette_color_0=rgb(94,92,100) +palette_color_1=rgb(237,51,59) +palette_color_2=rgb(158,146,44) +palette_color_3=rgb(203,128,22) +palette_color_4=rgb(26,95,180) +palette_color_5=rgb(167,116,174) +palette_color_6=rgb(255,120,0) +palette_color_7=rgb(245,197,102) +palette_color_8=rgb(97,53,131) +palette_color_9=rgb(197,59,106) +palette_color_10=rgb(138,226,52) +palette_color_11=rgb(252,233,79) +palette_color_12=rgb(114,159,207) +palette_color_13=rgb(146,100,116) +palette_color_14=rgb(52,226,226) +palette_color_15=rgb(255,211,211) +color_preset=Custom +disallowbold=false +cursorblinks=true +cursorunderline=false +audiblebell=false +tabpos=top +geometry_columns=110 +geometry_rows=27 +hidescrollbar=true +hidemenubar=true +hideclosebutton=false +hidepointer=false +disablef10=false +disablealt=false +disableconfirm=false + +boldbright=false +visualbell=false + +[shortcut] +new_window_accel=N +new_tab_accel=T +close_tab_accel=W +close_window_accel=Q +copy_accel=C +paste_accel=V +name_tab_accel=I +previous_tab_accel=Page_Up +next_tab_accel=Page_Down +move_tab_left_accel=Page_Up +move_tab_right_accel=Page_Down +zoom_in_accel=plus +zoom_out_accel=underscore +zoom_reset_accel=parenright diff --git a/lxterminal/time b/lxterminal/time new file mode 100644 index 0000000..4c65f5c --- /dev/null +++ b/lxterminal/time @@ -0,0 +1,5 @@ + +real 0m6.009s +user 0m7.725s +sys 0m0.965s + diff --git a/mariadb/0001-arch-specific.patch b/mariadb/0001-arch-specific.patch new file mode 100644 index 0000000..d194e7d --- /dev/null +++ b/mariadb/0001-arch-specific.patch @@ -0,0 +1,94 @@ +From bf66e7d610de0d7d3651742342c01ed9ff93f363 Mon Sep 17 00:00:00 2001 +From: Christian Hesse +Date: Wed, 19 Feb 2020 13:10:17 +0100 +Subject: [PATCH 1/3] enable PrivateTmp for a little bit more security +--- + support-files/mariadb.service.in | 2 +- + support-files/mariadb@.service.in | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/support-files/mariadb.service.in b/support-files/mariadb.service.in +index e7665ed1219..a1fe69d61c4 100644 +--- a/support-files/mariadb.service.in ++++ b/support-files/mariadb.service.in +@@ -129,7 +129,7 @@ UMask=007 + + # If you don't use the /tmp directory for SELECT ... OUTFILE and + # LOAD DATA INFILE you can enable PrivateTmp=true for a little more security. +-PrivateTmp=false ++PrivateTmp=true + + # Set an explicit Start and Stop timeout of 900 seconds (15 minutes!) + # this is the same value as used in SysV init scripts in the past +diff --git a/support-files/mariadb@.service.in b/support-files/mariadb@.service.in +index ffefc2f22d8..f8b0b8aad8d 100644 +--- a/support-files/mariadb@.service.in ++++ b/support-files/mariadb@.service.in +@@ -241,7 +241,7 @@ UMask=007 + + # If you don't use the /tmp directory for SELECT ... OUTFILE and + # LOAD DATA INFILE you can enable PrivateTmp=true for a little more security. +-PrivateTmp=false ++PrivateTmp=true + + # Set an explicit Start and Stop timeout of 900 seconds (15 minutes!) + # this is the same value as used in SysV init scripts in the past + +From 00aab78891a19a14a92039fcc6a73e391a3bb471 Mon Sep 17 00:00:00 2001 +From: Christian Hesse +Date: Wed, 19 Feb 2020 13:10:46 +0100 +Subject: [PATCH 2/3] force preloading jemalloc for memory management +--- + support-files/mariadb.service.in | 1 + + support-files/mariadb@.service.in | 1 + + 2 files changed, 2 insertions(+) + +diff --git a/support-files/mariadb.service.in b/support-files/mariadb.service.in +index a1fe69d61c4..9a2941ae917 100644 +--- a/support-files/mariadb.service.in ++++ b/support-files/mariadb.service.in +@@ -159,6 +159,7 @@ LimitNOFILE=16364 + # Library substitutions. previously [mysqld_safe] malloc-lib with explicit paths + # (in LD_LIBRARY_PATH) and library name (in LD_PRELOAD). + # Environment="LD_LIBRARY_PATH=/path1 /path2" "LD_PRELOAD= ++Environment="LD_PRELOAD=/usr/lib/libjemalloc.so" + + # Flush caches. previously [mysqld_safe] flush-caches=1 + # ExecStartPre=sync +diff --git a/support-files/mariadb@.service.in b/support-files/mariadb@.service.in +index f8b0b8aad8d..3309127330c 100644 +--- a/support-files/mariadb@.service.in ++++ b/support-files/mariadb@.service.in +@@ -282,6 +282,7 @@ LimitNOFILE=16364 + # Library substitutions. previously [mysqld_safe] malloc-lib with explicit paths + # (in LD_LIBRARY_PATH) and library name (in LD_PRELOAD). + # Environment="LD_LIBRARY_PATH=/path1 /path2" "LD_PRELOAD= ++Environment="LD_PRELOAD=/usr/lib/libjemalloc.so" + + # Flush caches. previously [mysqld_safe] flush-caches=1 + # ExecStartPre=sync + +From a78ff18c83a5eb2556d4f3716f13786dcd8395d2 Mon Sep 17 00:00:00 2001 +From: Christian Hesse +Date: Wed, 19 Feb 2020 13:11:31 +0100 +Subject: [PATCH 3/3] Make systemd-tmpfiles create MYSQL_DATADIR + +This is a no-op if the directory exists, but makes sure it is created by +systemd-tmpfiles with proper permissions otherwise. + +This solves packaging issues when the user MYSQLD_USER is created by +systemd-sysusers and uid is not known in advance. + +Also this now sets the No_COW attribute. +--- + support-files/tmpfiles.conf.in | 2 + + 1 file changed, 2 insertion(+) + +diff --git a/support-files/tmpfiles.conf.in b/support-files/tmpfiles.conf.in +index 03d66abc0c7..3c89cb258c9 100644 +--- a/support-files/tmpfiles.conf.in ++++ b/support-files/tmpfiles.conf.in +@@ -1 +1,3 @@ + d @MYSQL_UNIX_DIR@ 0755 @MYSQLD_USER@ @MYSQLD_USER@ - ++d @MYSQL_DATADIR@ 0700 @MYSQLD_USER@ @MYSQLD_USER@ - ++h @MYSQL_DATADIR@ - - - - +C diff --git a/mariadb/PKGBUILD b/mariadb/PKGBUILD new file mode 100644 index 0000000..a52a781 --- /dev/null +++ b/mariadb/PKGBUILD @@ -0,0 +1,253 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgbase=mariadb +pkgname=('mariadb-libs' 'mariadb-clients' 'mariadb' 'mytop') +pkgdesc='Fast SQL database server, derived from MySQL' +pkgver=10.7.3 +pkgrel=01 +arch=('x86_64') +#options=('debug') +url='https://mariadb.org/' +makedepends=('boost' 'bzip2' 'cmake' 'jemalloc' 'libaio' 'libxcrypt' + 'libxml2' 'lz4' 'lzo' 'openssl' 'zlib' 'zstd' 'curl' + 'krb5' 'cracklib' 'judy' 'xz') +# The default links with mirror redirection fail for signatures, specific +# mirrors may be out of date every now and then. Let's use the upstream +# rsync source via https and hope it does not hurt them too much. +# https://mariadb.com/kb/en/library/mirror-sites-for-mariadb/ +source=("https://rsync.osuosl.org/pub/mariadb/mariadb-${pkgver}/source/mariadb-${pkgver}.tar.gz"{,.asc} + mariadb.sysusers.conf + mariadb.tmpfile.conf) +# '0001-arch-specific.patch') + +#prepare() { +# cd $pkgbase-$pkgver/ +# +# # Arch Linux specific patches: +# # * enable PrivateTmp for a little bit more security +# # * force preloading jemalloc for memory management +# # * make systemd-tmpfiles create MYSQL_DATADIR +## patch -Np1 < ../0001-arch-specific.patch +##} + +# removed config entries from build below +# -DINSTALL_SYSTEMD_UNITDIR=/usr/lib/systemd/system/ +# -DINSTALL_SYSTEMD_SYSUSERSDIR=/usr/lib/sysusers.d/ +# -DINSTALL_SYSTEMD_TMPFILESDIR=/usr/lib/tmpfiles.d/ + +build() { + local _cmake_options=( + # build options + -DCOMPILATION_COMMENT="joborun-pkg Linux" + -DCMAKE_BUILD_TYPE=RelWithDebInfo + -Wno-dev + + # file paths + # /etc + -DINSTALL_SYSCONFDIR=/etc + -DINSTALL_SYSCONF2DIR=/etc/my.cnf.d + # /run + -DINSTALL_UNIX_ADDRDIR=/run/mysqld/mysqld.sock + # /usr + -DCMAKE_INSTALL_PREFIX=/usr + # /usr/bin /usr/include + -DINSTALL_SCRIPTDIR=bin + -DINSTALL_INCLUDEDIR=include/mysql + # /usr/lib + -DINSTALL_PLUGINDIR=lib/mysql/plugin + # /usr/share + -DINSTALL_SHAREDIR=share + -DINSTALL_SUPPORTFILESDIR=share/mysql + -DINSTALL_MYSQLSHAREDIR=share/mysql + -DINSTALL_DOCREADMEDIR=share/doc/mariadb + -DINSTALL_DOCDIR=share/doc/mariadb + -DINSTALL_MANDIR=share/man + # /var + -DMYSQL_DATADIR=/var/lib/mysql + + # default settings + -DDEFAULT_CHARSET=utf8mb4 + -DDEFAULT_COLLATION=utf8mb4_unicode_ci + + # features + -DENABLED_LOCAL_INFILE=ON + -DPLUGIN_EXAMPLE=NO + -DPLUGIN_FEDERATED=NO + -DPLUGIN_FEEDBACK=NO + -DWITH_EMBEDDED_SERVER=ON + -DWITH_EXTRA_CHARSETS=complex + -DWITH_JEMALLOC=ON + -DWITH_LIBWRAP=OFF + -DWITH_PCRE=bundled + -DWITH_READLINE=ON + -DWITH_SSL=system + -DWITH_SYSTEMD=no + -DWITH_UNIT_TESTS=OFF + -DWITH_ZLIB=system + -DWITH_ZSTD=OFF + -DPLUGIN_TOKUDB=NO + ) + + mkdir build + cd build + + cmake ../"$pkgbase-$pkgver" "${_cmake_options[@]}" + + make +} + +#check() { +# cd build/mysql-test +# +# # Takes *really* long, so disabled by default. +# #./mtr --parallel=5 --mem --force --max-test-fail=0 +#} + +package_mariadb-libs() { + pkgdesc='MariaDB libraries' + depends=('libaio' 'libxcrypt' 'libcrypt.so' 'openssl' 'zlib') + optdepends=('krb5: for gssapi authentication') + conflicts=('libmysqlclient' 'libmariadbclient' 'mariadb-connector-c') + provides=('libmariadbclient' 'mariadb-connector-c' 'libmariadb.so' 'libmariadbd.so') + replaces=('libmariadbclient') + + cd build + + for dir in libmariadb libmysqld libservices include; do + make -C "$dir" DESTDIR="$pkgdir" install + done + + ln -s mariadb_config "$pkgdir"/usr/bin/mariadb-config + ln -s mariadb_config "$pkgdir"/usr/bin/mysql_config + install -D -m0644 "$srcdir"/"$pkgbase-$pkgver"/man/mysql_config.1 "$pkgdir"/usr/share/man/man1/mysql_config.1 + + install -D -m0644 support-files/mariadb.pc "$pkgdir"/usr/share/pkgconfig/mariadb.pc + install -D -m0644 "$srcdir"/"$pkgbase-$pkgver"/support-files/mysql.m4 "$pkgdir"/usr/share/aclocal/mysql.m4 + + cd "$pkgdir" + + # remove static libraries + rm usr/lib/*.a + + # remove man pages + rm -r usr/share/man +} + +package_mariadb-clients() { + pkgdesc='MariaDB client tools' + depends=("mariadb-libs=${pkgver}" 'jemalloc') + conflicts=('mysql-clients') + provides=("mysql-clients=$pkgver") + + cd build + + make -C client DESTDIR="$pkgdir" install + + # install man pages + for man in mysql mysql_plugin mysql_upgrade mysqladmin mysqlbinlog mysqlcheck mysqldump mysqlimport mysqlshow mysqlslap mysqltest; do + install -D -m0644 "$srcdir"/"$pkgbase-$pkgver"/man/"$man.1" "$pkgdir"/usr/share/man/man1/"$man.1" + done +} + +package_mariadb() { + pkgdesc='Fast SQL database server, derived from MySQL' + backup=('etc/my.cnf' + 'etc/my.cnf.d/client.cnf' + 'etc/my.cnf.d/enable_encryption.preset' + 'etc/my.cnf.d/mysql-clients.cnf' + 'etc/my.cnf.d/provider_bzip2.cnf' + 'etc/my.cnf.d/provider_lz4.cnf' + 'etc/my.cnf.d/provider_lzma.cnf' + 'etc/my.cnf.d/server.cnf' + 'etc/my.cnf.d/s3.cnf' + 'etc/my.cnf.d/spider.cnf' + 'etc/security/user_map.conf') +# +# install=mariadb.install # this is systemd specific post install manipulation +# + depends=( "mariadb-clients=${pkgver}" 'bzip2' 'libxml2' 'lz4' 'libxml2' 'zstd') + optdepends=('cracklib: for cracklib plugin' + 'curl: for ha_s3 plugin' + 'galera: for MariaDB cluster with Galera WSREP' + 'judy: for Open Query GRAPH (OQGraph) computation engine' + 'python-mysqlclient: for myrocks_hotbackup' + 'perl-dbd-mariadb: for mariadb-hotcopy, mariadb-convert-table-format and mariadb-setpermission' + 'xz: lzma provider') + conflicts=('mysql') + provides=("mysql=$pkgver") + options=('emptydirs') + + cd build + + make DESTDIR="$pkgdir" install + + cd "$pkgdir" + + # no SysV init, please! + rm -r etc/logrotate.d + rm usr/bin/rcmysql + rm usr/share/mysql/{binary-configure,mysql{,d_multi}.server} + + install -Dm0644 "$srcdir"/mariadb.tmpfile.conf "$pkgdir"/usr/lib/tmpfiles.d/mariadb.conf + install -Dm0644 "$srcdir"/mariadb.sysusers.conf "$pkgdir"/usr/lib/sysusers.d/mariadb.conf + + # move to proper licenses directories + install -d usr/share/licenses/mariadb + mv usr/share/doc/mariadb/COPYING* usr/share/licenses/mariadb/ + + # move it where one might look for it + mv usr/share/{groonga{,-normalizer-mysql},doc/mariadb/} + + # move to pam directories + install -d {etc,usr/lib}/security + mv usr/share/user_map.conf etc/security/ + mv usr/share/pam_user_map.so usr/lib/security/ + +# # already installed to real systemd unit directory or useless +# rm -r usr/share/mysql/systemd/ +# rm -r usr/lib/systemd/system/mariadb@bootstrap.service.d + + # provided by mariadb-libs + rm usr/bin/{mariadb{_,-},mysql_}config + rm -r usr/include/ + rm usr/share/man/man1/mysql_config.1 + rm -r usr/share/aclocal + rm usr/lib/lib* + rm -r usr/lib/pkgconfig + rm usr/lib/mysql/plugin/{auth_gssapi_client,caching_sha2_password,client_ed25519,dialog,mysql_clear_password,sha256_password}.so + + # provided by mariadb-clients + rm usr/bin/mysql{,_plugin,_upgrade,admin,binlog,check,dump,import,show,slap,test} + rm usr/bin/mariadb{,-{admin,binlog,check,conv,dump,import,plugin,show,slap,test,upgrade}} + rm usr/share/man/man1/mysql{,_plugin,_upgrade,admin,binlog,check,dump,import,show,slap,test}.1 + + # provided by mytop + rm usr/bin/mytop + + # not needed + rm -r usr/{mysql-test,sql-bench} + rm usr/share/man/man1/mysql-test-run.pl.1 +} + +package_mytop() { + pkgdesc='Top clone for MariaDB' + depends=('perl' 'perl-dbd-mariadb' 'perl-term-readkey') + + install -D -m0755 build/scripts/mytop "$pkgdir"/usr/bin/mytop +} + + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +validpgpkeys=('199369E5404BD5FC7D2FE43BCBCB082A1BB943DB') # MariaDB Package Signing Key + +sha256sums=(da286919ffc9c913282202349709b6ba4ebcd342815e8dae0aa6b6bd8f515cd4 # mariadb-10.7.3.tar.gz + e841210836d4e893bee977f85e73537c2d9bd707f715b6f64a6022aa8cd05024 # mariadb-10.7.3.tar.gz.asc + 711b4e7cf40e2b1ab132655a8d64f5a721027296f7a5731ffa70b504b3d805cd # mariadb.sysusers.conf + 5ff8916c32c87ac45f05171669ff94e5a1a81c6bd7e6516b63fd9db8723916fc) # mariadb.tmpfile.conf diff --git a/mariadb/PKGBUILD-arch b/mariadb/PKGBUILD-arch new file mode 100644 index 0000000..9db9018 --- /dev/null +++ b/mariadb/PKGBUILD-arch @@ -0,0 +1,228 @@ +# Maintainer: Bartłomiej Piotrowski +# Maintainer: Christian Hesse + +pkgbase=mariadb +pkgname=('mariadb-libs' 'mariadb-clients' 'mariadb' 'mytop') +pkgdesc='Fast SQL database server, derived from MySQL' +pkgver=10.6.7 +pkgrel=1 +arch=('x86_64') +license=('GPL') +url='https://mariadb.org/' +makedepends=('boost' 'bzip2' 'cmake' 'jemalloc' 'libaio' 'libxcrypt' + 'libxml2' 'lz4' 'lzo' 'openssl' 'systemd' 'zlib' 'zstd' 'curl' + 'krb5' 'cracklib' 'judy') +options=('debug') +validpgpkeys=('199369E5404BD5FC7D2FE43BCBCB082A1BB943DB') # MariaDB Package Signing Key +# The default links with mirror redirection fail for signatures, specific +# mirrors may be out of date every now and then. Let's use the upstream +# rsync source via https and hope it does not hurt them too much. +# https://mariadb.com/kb/en/library/mirror-sites-for-mariadb/ +source=("https://rsync.osuosl.org/pub/mariadb/mariadb-${pkgver}/source/mariadb-${pkgver}.tar.gz"{,.asc} + '0001-arch-specific.patch') +sha256sums=('75ee0f1f865a765fc461ab165419417a719e308faba784b2c97ecbe9e4b4b2c5' + 'SKIP' + '3289efb3452d199aec872115f35da3f1d6fd4ce774615076690e9bc8afae1460') + +prepare() { + cd $pkgbase-$pkgver/ + + # Arch Linux specific patches: + # * enable PrivateTmp for a little bit more security + # * force preloading jemalloc for memory management + # * make systemd-tmpfiles create MYSQL_DATADIR + patch -Np1 < ../0001-arch-specific.patch +} + +build() { + local _cmake_options=( + # build options + -DCOMPILATION_COMMENT="Arch Linux" + -DCMAKE_BUILD_TYPE=RelWithDebInfo + -Wno-dev + + # file paths + # /etc + -DINSTALL_SYSCONFDIR=/etc + -DINSTALL_SYSCONF2DIR=/etc/my.cnf.d + # /run + -DINSTALL_UNIX_ADDRDIR=/run/mysqld/mysqld.sock + # /usr + -DCMAKE_INSTALL_PREFIX=/usr + # /usr/bin /usr/include + -DINSTALL_SCRIPTDIR=bin + -DINSTALL_INCLUDEDIR=include/mysql + # /usr/lib + -DINSTALL_PLUGINDIR=lib/mysql/plugin + -DINSTALL_SYSTEMD_UNITDIR=/usr/lib/systemd/system/ + -DINSTALL_SYSTEMD_SYSUSERSDIR=/usr/lib/sysusers.d/ + -DINSTALL_SYSTEMD_TMPFILESDIR=/usr/lib/tmpfiles.d/ + # /usr/share + -DINSTALL_SHAREDIR=share + -DINSTALL_SUPPORTFILESDIR=share/mysql + -DINSTALL_MYSQLSHAREDIR=share/mysql + -DINSTALL_DOCREADMEDIR=share/doc/mariadb + -DINSTALL_DOCDIR=share/doc/mariadb + -DINSTALL_MANDIR=share/man + # /var + -DMYSQL_DATADIR=/var/lib/mysql + + # default settings + -DDEFAULT_CHARSET=utf8mb4 + -DDEFAULT_COLLATION=utf8mb4_unicode_ci + + # features + -DENABLED_LOCAL_INFILE=ON + -DPLUGIN_EXAMPLE=NO + -DPLUGIN_FEDERATED=NO + -DPLUGIN_FEEDBACK=NO + -DWITH_EMBEDDED_SERVER=ON + -DWITH_EXTRA_CHARSETS=complex + -DWITH_JEMALLOC=ON + -DWITH_LIBWRAP=OFF + -DWITH_PCRE=bundled + -DWITH_READLINE=ON + -DWITH_SSL=system + -DWITH_SYSTEMD=yes + -DWITH_UNIT_TESTS=OFF + -DWITH_ZLIB=system + ) + + mkdir build + cd build + + cmake ../"$pkgbase-$pkgver" "${_cmake_options[@]}" + + make +} + +check() { + cd build/mysql-test + + # Takes *really* long, so disabled by default. + #./mtr --parallel=5 --mem --force --max-test-fail=0 +} + +package_mariadb-libs() { + pkgdesc='MariaDB libraries' + depends=('bzip2' 'libaio' 'libxcrypt' 'libcrypt.so' 'lz4' 'lzo' 'openssl' 'xz' 'zlib') + optdepends=('krb5: for gssapi authentication') + conflicts=('libmysqlclient' 'libmariadbclient' 'mariadb-connector-c') + provides=('libmariadbclient' 'mariadb-connector-c' 'libmariadb.so' 'libmariadbd.so') + replaces=('libmariadbclient') + + cd build + + for dir in libmariadb libmysqld libservices include; do + make -C "$dir" DESTDIR="$pkgdir" install + done + + ln -s mariadb_config "$pkgdir"/usr/bin/mariadb-config + ln -s mariadb_config "$pkgdir"/usr/bin/mysql_config + install -D -m0644 "$srcdir"/"$pkgbase-$pkgver"/man/mysql_config.1 "$pkgdir"/usr/share/man/man1/mysql_config.1 + + install -D -m0644 support-files/mariadb.pc "$pkgdir"/usr/share/pkgconfig/mariadb.pc + install -D -m0644 "$srcdir"/"$pkgbase-$pkgver"/support-files/mysql.m4 "$pkgdir"/usr/share/aclocal/mysql.m4 + + cd "$pkgdir" + + # remove static libraries + rm usr/lib/*.a + + # remove man pages + rm -r usr/share/man +} + +package_mariadb-clients() { + pkgdesc='MariaDB client tools' + depends=("mariadb-libs=${pkgver}" 'jemalloc') + conflicts=('mysql-clients') + provides=("mysql-clients=$pkgver") + + cd build + + make -C client DESTDIR="$pkgdir" install + + # install man pages + for man in mysql mysql_plugin mysql_upgrade mysqladmin mysqlbinlog mysqlcheck mysqldump mysqlimport mysqlshow mysqlslap mysqltest; do + install -D -m0644 "$srcdir"/"$pkgbase-$pkgver"/man/"$man.1" "$pkgdir"/usr/share/man/man1/"$man.1" + done +} + +package_mariadb() { + pkgdesc='Fast SQL database server, derived from MySQL' + backup=('etc/my.cnf' + 'etc/my.cnf.d/client.cnf' + 'etc/my.cnf.d/enable_encryption.preset' + 'etc/my.cnf.d/mysql-clients.cnf' + 'etc/my.cnf.d/server.cnf' + 'etc/my.cnf.d/s3.cnf' + 'etc/my.cnf.d/spider.cnf' + 'etc/security/user_map.conf') + install=mariadb.install + depends=("mariadb-clients=${pkgver}" 'systemd-libs' 'libxml2' 'zstd') + optdepends=('cracklib: for cracklib plugin' + 'curl: for ha_s3 plugin' + 'galera: for MariaDB cluster with Galera WSREP' + 'judy: for Open Query GRAPH (OQGraph) computation engine' + 'python-mysqlclient: for myrocks_hotbackup' + 'perl-dbd-mariadb: for mariadb-hotcopy, mariadb-convert-table-format and mariadb-setpermission') + conflicts=('mysql') + provides=("mysql=$pkgver") + options=('emptydirs') + + cd build + + make DESTDIR="$pkgdir" install + + cd "$pkgdir" + + # no SysV init, please! + rm -r etc/logrotate.d + rm usr/bin/rcmysql + rm usr/share/mysql/{binary-configure,mysql{,d_multi}.server} + + # move to proper licenses directories + install -d usr/share/licenses/mariadb + mv usr/share/doc/mariadb/COPYING* usr/share/licenses/mariadb/ + + # move it where one might look for it + mv usr/share/{groonga{,-normalizer-mysql},doc/mariadb/} + + # move to pam directories + install -d {etc,usr/lib}/security + mv usr/share/user_map.conf etc/security/ + mv usr/share/pam_user_map.so usr/lib/security/ + + # already installed to real systemd unit directory or useless + rm -r usr/share/mysql/systemd/ + rm -r usr/lib/systemd/system/mariadb@bootstrap.service.d + + # provided by mariadb-libs + rm usr/bin/{mariadb{_,-},mysql_}config + rm -r usr/include/ + rm usr/share/man/man1/mysql_config.1 + rm -r usr/share/aclocal + rm usr/lib/lib* + rm -r usr/lib/pkgconfig + rm usr/lib/mysql/plugin/{auth_gssapi_client,caching_sha2_password,client_ed25519,dialog,mysql_clear_password,sha256_password}.so + + # provided by mariadb-clients + rm usr/bin/mysql{,_plugin,_upgrade,admin,binlog,check,dump,import,show,slap,test} + rm usr/bin/mariadb{,-{admin,binlog,check,conv,dump,import,plugin,show,slap,test,upgrade}} + rm usr/share/man/man1/mysql{,_plugin,_upgrade,admin,binlog,check,dump,import,show,slap,test}.1 + + # provided by mytop + rm usr/bin/mytop + + # not needed + rm -r usr/{mysql-test,sql-bench} + rm usr/share/man/man1/mysql-test-run.pl.1 +} + +package_mytop() { + pkgdesc='Top clone for MariaDB' + depends=('perl' 'perl-dbd-mariadb' 'perl-term-readkey') + + install -D -m0755 build/scripts/mytop "$pkgdir"/usr/bin/mytop +} diff --git a/mariadb/PKGBUILD-arch.new b/mariadb/PKGBUILD-arch.new new file mode 100644 index 0000000..f502188 --- /dev/null +++ b/mariadb/PKGBUILD-arch.new @@ -0,0 +1,231 @@ +# Maintainer: Bartłomiej Piotrowski +# Maintainer: Christian Hesse + +pkgbase=mariadb +pkgname=('mariadb-libs' 'mariadb-clients' 'mariadb' 'mytop') +pkgdesc='Fast SQL database server, derived from MySQL' +pkgver=10.7.3 +pkgrel=1 +arch=('x86_64') +license=('GPL') +url='https://mariadb.org/' +makedepends=('boost' 'bzip2' 'cmake' 'cracklib' 'curl' 'jemalloc' 'judy' 'krb5' 'libaio' + 'libxcrypt' 'libxml2' 'lz4' 'openssl' 'systemd' 'zlib' 'zstd' 'xz') +options=('debug') +validpgpkeys=('199369E5404BD5FC7D2FE43BCBCB082A1BB943DB') # MariaDB Package Signing Key +# The default links with mirror redirection fail for signatures, specific +# mirrors may be out of date every now and then. Let's use the upstream +# rsync source via https and hope it does not hurt them too much. +# https://mariadb.com/kb/en/library/mirror-sites-for-mariadb/ +source=("https://rsync.osuosl.org/pub/mariadb/mariadb-${pkgver}/source/mariadb-${pkgver}.tar.gz"{,.asc} + '0001-arch-specific.patch') +sha256sums=('da286919ffc9c913282202349709b6ba4ebcd342815e8dae0aa6b6bd8f515cd4' + 'SKIP' + '3289efb3452d199aec872115f35da3f1d6fd4ce774615076690e9bc8afae1460') + +prepare() { + cd $pkgbase-$pkgver/ + + # Arch Linux specific patches: + # * enable PrivateTmp for a little bit more security + # * force preloading jemalloc for memory management + # * make systemd-tmpfiles create MYSQL_DATADIR + patch -Np1 < ../0001-arch-specific.patch +} + +build() { + local _cmake_options=( + # build options + -DCOMPILATION_COMMENT="Arch Linux" + -DCMAKE_BUILD_TYPE=RelWithDebInfo + -Wno-dev + + # file paths + # /etc + -DINSTALL_SYSCONFDIR=/etc + -DINSTALL_SYSCONF2DIR=/etc/my.cnf.d + # /run + -DINSTALL_UNIX_ADDRDIR=/run/mysqld/mysqld.sock + # /usr + -DCMAKE_INSTALL_PREFIX=/usr + # /usr/bin /usr/include + -DINSTALL_SCRIPTDIR=bin + -DINSTALL_INCLUDEDIR=include/mysql + # /usr/lib + -DINSTALL_PLUGINDIR=lib/mysql/plugin + -DINSTALL_SYSTEMD_UNITDIR=/usr/lib/systemd/system/ + -DINSTALL_SYSTEMD_SYSUSERSDIR=/usr/lib/sysusers.d/ + -DINSTALL_SYSTEMD_TMPFILESDIR=/usr/lib/tmpfiles.d/ + # /usr/share + -DINSTALL_SHAREDIR=share + -DINSTALL_SUPPORTFILESDIR=share/mysql + -DINSTALL_MYSQLSHAREDIR=share/mysql + -DINSTALL_DOCREADMEDIR=share/doc/mariadb + -DINSTALL_DOCDIR=share/doc/mariadb + -DINSTALL_MANDIR=share/man + # /var + -DMYSQL_DATADIR=/var/lib/mysql + + # default settings + -DDEFAULT_CHARSET=utf8mb4 + -DDEFAULT_COLLATION=utf8mb4_unicode_ci + + # features + -DENABLED_LOCAL_INFILE=ON + -DPLUGIN_EXAMPLE=NO + -DPLUGIN_FEDERATED=NO + -DPLUGIN_FEEDBACK=NO + -DWITH_EMBEDDED_SERVER=ON + -DWITH_EXTRA_CHARSETS=complex + -DWITH_JEMALLOC=ON + -DWITH_LIBWRAP=OFF + -DWITH_PCRE=bundled + -DWITH_READLINE=ON + -DWITH_SSL=system + -DWITH_SYSTEMD=yes + -DWITH_UNIT_TESTS=OFF + -DWITH_ZLIB=system + ) + + mkdir build + cd build + + cmake ../"$pkgbase-$pkgver" "${_cmake_options[@]}" + + make +} + +check() { + cd build/mysql-test + + # Takes *really* long, so disabled by default. + #./mtr --parallel=5 --mem --force --max-test-fail=0 +} + +package_mariadb-libs() { + pkgdesc='MariaDB libraries' + depends=('libaio' 'libxcrypt' 'libcrypt.so' 'openssl' 'zlib') + optdepends=('krb5: for gssapi authentication') + conflicts=('libmysqlclient' 'libmariadbclient' 'mariadb-connector-c') + provides=('libmariadbclient' 'mariadb-connector-c' 'libmariadb.so' 'libmariadbd.so') + replaces=('libmariadbclient') + + cd build + + for dir in libmariadb libmysqld libservices include; do + make -C "$dir" DESTDIR="$pkgdir" install + done + + ln -s mariadb_config "$pkgdir"/usr/bin/mariadb-config + ln -s mariadb_config "$pkgdir"/usr/bin/mysql_config + install -D -m0644 "$srcdir"/"$pkgbase-$pkgver"/man/mysql_config.1 "$pkgdir"/usr/share/man/man1/mysql_config.1 + + install -D -m0644 support-files/mariadb.pc "$pkgdir"/usr/share/pkgconfig/mariadb.pc + install -D -m0644 "$srcdir"/"$pkgbase-$pkgver"/support-files/mysql.m4 "$pkgdir"/usr/share/aclocal/mysql.m4 + + cd "$pkgdir" + + # remove static libraries + rm usr/lib/*.a + + # remove man pages + rm -r usr/share/man +} + +package_mariadb-clients() { + pkgdesc='MariaDB client tools' + depends=("mariadb-libs=${pkgver}" 'jemalloc') + conflicts=('mysql-clients') + provides=("mysql-clients=$pkgver") + + cd build + + make -C client DESTDIR="$pkgdir" install + + # install man pages + for man in mysql mysql_plugin mysql_upgrade mysqladmin mysqlbinlog mysqlcheck mysqldump mysqlimport mysqlshow mysqlslap mysqltest; do + install -D -m0644 "$srcdir"/"$pkgbase-$pkgver"/man/"$man.1" "$pkgdir"/usr/share/man/man1/"$man.1" + done +} + +package_mariadb() { + pkgdesc='Fast SQL database server, derived from MySQL' + backup=('etc/my.cnf' + 'etc/my.cnf.d/client.cnf' + 'etc/my.cnf.d/enable_encryption.preset' + 'etc/my.cnf.d/mysql-clients.cnf' + 'etc/my.cnf.d/provider_bzip2.cnf' + 'etc/my.cnf.d/provider_lz4.cnf' + 'etc/my.cnf.d/provider_lzma.cnf' + 'etc/my.cnf.d/s3.cnf' + 'etc/my.cnf.d/server.cnf' + 'etc/my.cnf.d/spider.cnf' + 'etc/security/user_map.conf') + install=mariadb.install + depends=("mariadb-clients=${pkgver}" 'bzip2' 'libxml2' 'lz4' 'systemd-libs' 'libxml2' 'zstd') + optdepends=('cracklib: for cracklib plugin' + 'curl: for ha_s3 plugin' + 'galera: for MariaDB cluster with Galera WSREP' + 'judy: for Open Query GRAPH (OQGraph) computation engine' + 'perl-dbd-mariadb: for mariadb-hotcopy, mariadb-convert-table-format and mariadb-setpermission' + 'python-mysqlclient: for myrocks_hotbackup' + 'xz: lzma provider') + conflicts=('mysql') + provides=("mysql=$pkgver") + options=('emptydirs') + + cd build + + make DESTDIR="$pkgdir" install + + cd "$pkgdir" + + # no SysV init, please! + rm -r etc/logrotate.d + rm usr/bin/rcmysql + rm usr/share/mysql/{binary-configure,mysql{,d_multi}.server} + + # move to proper licenses directories + install -d usr/share/licenses/mariadb + mv usr/share/doc/mariadb/COPYING* usr/share/licenses/mariadb/ + + # move it where one might look for it + mv usr/share/{groonga{,-normalizer-mysql},doc/mariadb/} + + # move to pam directories + install -d {etc,usr/lib}/security + mv usr/share/user_map.conf etc/security/ + mv usr/share/pam_user_map.so usr/lib/security/ + + # already installed to real systemd unit directory or useless + rm -r usr/share/mysql/systemd/ + rm -r usr/lib/systemd/system/mariadb@bootstrap.service.d + + # provided by mariadb-libs + rm usr/bin/{mariadb{_,-},mysql_}config + rm -r usr/include/ + rm usr/share/man/man1/mysql_config.1 + rm -r usr/share/aclocal + rm usr/lib/lib* + rm -r usr/lib/pkgconfig + rm usr/lib/mysql/plugin/{auth_gssapi_client,caching_sha2_password,client_ed25519,dialog,mysql_clear_password,sha256_password}.so + + # provided by mariadb-clients + rm usr/bin/mysql{,_plugin,_upgrade,admin,binlog,check,dump,import,show,slap,test} + rm usr/bin/mariadb{,-{admin,binlog,check,conv,dump,import,plugin,show,slap,test,upgrade}} + rm usr/share/man/man1/mysql{,_plugin,_upgrade,admin,binlog,check,dump,import,show,slap,test}.1 + + # provided by mytop + rm usr/bin/mytop + + # not needed + rm -r usr/{mysql-test,sql-bench} + rm usr/share/man/man1/mysql-test-run.pl.1 +} + +package_mytop() { + pkgdesc='Top clone for MariaDB' + depends=('perl' 'perl-dbd-mariadb' 'perl-term-readkey') + + install -D -m0755 build/scripts/mytop "$pkgdir"/usr/bin/mytop +} diff --git a/mariadb/PKGBUILD-oba b/mariadb/PKGBUILD-oba new file mode 100644 index 0000000..7eff4cc --- /dev/null +++ b/mariadb/PKGBUILD-oba @@ -0,0 +1,331 @@ +# Obarun : 66 init/supervisor +# Maintainer : Eric Vidal +# Maintainer : Jean-Michel T.Dydak +# Maintainer : YianIris +# Obarun PkgSrc : https://git.obarun.org/pkg/obextra/mariadb +#---------------- +#-------------------------------------------------------------- +# DESCRIPTION ] + +pkgbase=mariadb +pkgver=10.6.5 +pkgrel=3 +pkgdesc="Fast SQL database server, derived from MySQL" +url='https://mariadb.org/' + +pkgname=( + 'mariadb-libs' + 'mariadb-clients' + 'mariadb' + 'mytop' +) + +track="$pkgbase/$pkgbase-$pkgver/source" +target="$pkgbase-$pkgver" +source=( + "https://rsync.osuosl.org/pub/${track}/${target}.tar.gz"{,.asc} + 0001-arch-specific.patch + mariadb.sysusers.conf + mariadb.tmpfile.conf +) + +#---------------------- +# BUILD CONFIGURATION ] + +makedepends=( + 'boost' + 'bzip2' + 'cmake' + 'jemalloc' + 'libaio' + 'libxcrypt' + 'libxml2' + 'lz4' + 'lzo' + 'openssl' + 'zlib' + 'zstd' + 'curl' + 'krb5' + 'cracklib' + 'judy' +) + +#---------------- +# BUILD PREPARE ] + +prepare() { + cd $pkgbase-$pkgver + + ## Arch Linux specific patches: + ## * enable PrivateTmp for a little bit more security + ## * force preloading jemalloc for memory management + ## * make systemd-tmpfiles create MYSQL_DATADIR + patch -Np1 < ../0001-arch-specific.patch +} + +#-------- +# BUILD ] + +build() { + local _cmake_options=( + + ## build options + -DCOMPILATION_COMMENT="Obarun Linux" + -DCMAKE_BUILD_TYPE=RelWithDebInfo + -Wno-dev + + ## file paths + ## /etc + -DINSTALL_SYSCONFDIR=/etc + -DINSTALL_SYSCONF2DIR=/etc/my.cnf.d + + ## /run + -DINSTALL_UNIX_ADDRDIR=/run/mysqld/mysqld.sock + + ## /usr + -DCMAKE_INSTALL_PREFIX=/usr + + ## /usr/bin /usr/include + -DINSTALL_SCRIPTDIR=bin + -DINSTALL_INCLUDEDIR=include/mysql + + ## /usr/lib + -DINSTALL_PLUGINDIR=lib/mysql/plugin + + ## /usr/share + -DINSTALL_SHAREDIR=share + -DINSTALL_SUPPORTFILESDIR=share/mysql + -DINSTALL_MYSQLSHAREDIR=share/mysql + -DINSTALL_DOCREADMEDIR=share/doc/mariadb + -DINSTALL_DOCDIR=share/doc/mariadb + -DINSTALL_MANDIR=share/man + + ## /var + -DMYSQL_DATADIR=/var/lib/mysql + + # default settings + -DDEFAULT_CHARSET=utf8mb4 + -DDEFAULT_COLLATION=utf8mb4_unicode_ci + + ## features + -DENABLED_LOCAL_INFILE=ON + -DPLUGIN_EXAMPLE=NO + -DPLUGIN_FEDERATED=NO + -DPLUGIN_FEEDBACK=NO + -DWITH_EMBEDDED_SERVER=ON + -DWITH_EXTRA_CHARSETS=complex + -DWITH_JEMALLOC=ON + -DWITH_LIBWRAP=OFF + -DWITH_PCRE=bundled + -DWITH_READLINE=ON + -DWITH_SSL=system + -DWITH_SYSTEMD=no + -DWITH_UNIT_TESTS=OFF + -DWITH_ZLIB=system + -DPLUGIN_TOKUDB=NO + ) + + mkdir build + cd build + + cmake ../"$pkgbase-$pkgver" "${_cmake_options[@]}" + make +} + +#-------- +# CHECK ] + +check() { + cd build/mysql-test + ## Takes *really* long, so disabled by default. + ##./mtr --parallel=5 --mem --force --max-test-fail=0 +} + +#---------- +# PACKAGE ] + +package_mariadb-libs() { + pkgdesc="MariaDB libraries" + depends=( + 'bzip2' + 'libaio' + 'libxcrypt' + 'libcrypt.so' + 'lz4' + 'lzo' + 'openssl' + 'xz' + 'zlib' + ) + optdepends=( + 'krb5: for gssapi authentication' + ) + conflicts=( + 'libmysqlclient' + 'libmariadbclient' + 'mariadb-connector-c' + ) + provides=( + 'libmariadbclient' + 'mariadb-connector-c' + 'libmariadb.so' + 'libmariadbd.so' + ) + replaces=( + 'libmariadbclient' + ) + + cd build + + for dir in libmariadb libmysqld libservices include; do + make -C "$dir" DESTDIR="$pkgdir" install + done + + ln -s mariadb_config "$pkgdir"/usr/bin/mysql_config + install -D -m0644 "$srcdir"/"$pkgbase-$pkgver"/man/mysql_config.1 "$pkgdir"/usr/share/man/man1/mysql_config.1 + + install -D -m0644 support-files/mariadb.pc "$pkgdir"/usr/share/pkgconfig/mariadb.pc + install -D -m0644 "$srcdir"/"$pkgbase-$pkgver"/support-files/mysql.m4 "$pkgdir"/usr/share/aclocal/mysql.m4 + + cd "$pkgdir" + + ## remove static libraries + rm usr/lib/*.a + + ## remove man pages + rm -r usr/share/man +} + +package_mariadb-clients() { + pkgdesc="MariaDB client tools" + depends=( + "mariadb-libs=$pkgver" + 'jemalloc' + ) + conflicts=( + 'mysql-clients' + ) + provides=( + "mysql-clients=$pkgver" + ) + + cd build + + make -C client DESTDIR="$pkgdir" install + + ## install man pages + for man in mysql mysql_plugin mysql_upgrade mysqladmin mysqlbinlog mysqlcheck mysqldump mysqlimport mysqlshow mysqlslap mysqltest; do + install -D -m0644 "$srcdir"/"$pkgbase-$pkgver"/man/"$man.1" "$pkgdir"/usr/share/man/man1/"$man.1" + done +} + +package_mariadb() { + pkgdesc='Fast SQL database server, derived from MySQL' + backup=( + 'etc/my.cnf' + 'etc/my.cnf.d/client.cnf' + 'etc/my.cnf.d/enable_encryption.preset' + 'etc/my.cnf.d/mysql-clients.cnf' + 'etc/my.cnf.d/server.cnf' + 'etc/my.cnf.d/s3.cnf' + 'etc/my.cnf.d/spider.cnf' + 'etc/security/user_map.conf' + ) + depends=( + "mariadb-clients=$pkgver" + 'libxml2' + 'zstd' + ) + optdepends=( + 'cracklib: for cracklib plugin' + 'curl: for ha_s3 plugin' + 'galera: for MariaDB cluster with Galera WSREP' + 'judy: for Open Query GRAPH (OQGraph) computation engine' + 'mysql-python: for myrocks_hotbackup' + 'perl-dbd-mariadb: for mariadb-hotcopy, mariadb-convert-table-format and mariadb-setpermission' + ) + conflicts=( + 'mysql' + ) + provides=( + "mysql=$pkgver" + ) + options=( + 'emptydirs' + ) + install=mariadb.install + + cd build + + make DESTDIR="$pkgdir" install + + cd "$pkgdir" + + ## no SysV init, please! + rm -r etc/logrotate.d + rm usr/bin/rcmysql + rm usr/share/mysql/{binary-configure,mysql{,d_multi}.server} + + install -Dm0644 "$srcdir"/mariadb.tmpfile.conf "$pkgdir"/usr/lib/tmpfiles.d/mariadb.conf + install -Dm0644 "$srcdir"/mariadb.sysusers.conf "$pkgdir"/usr/lib/sysusers.d/mariadb.conf + + ## move to proper licenses directories + install -d usr/share/licenses/mariadb + mv usr/share/doc/mariadb/COPYING* usr/share/licenses/mariadb/ + + ## move it where one might look for it + mv usr/share/{groonga{,-normalizer-mysql},doc/mariadb/} + + # move to pam directories + install -d {etc,usr/lib}/security + mv usr/share/user_map.conf etc/security/ + mv usr/share/pam_user_map.so usr/lib/security/ + + # provided by mariadb-libs + rm usr/bin/mariadb_config + rm usr/bin/mysql_config + rm -r usr/include/ + rm usr/share/man/man1/mysql_config.1 + rm -r usr/share/aclocal + rm usr/lib/lib* + rm -r usr/lib/pkgconfig + rm usr/lib/mysql/plugin/{auth_gssapi_client,caching_sha2_password,client_ed25519,dialog,mysql_clear_password,sha256_password}.so + + # provided by mariadb-clients + rm usr/bin/mysql{,_plugin,_upgrade,admin,binlog,check,dump,import,show,slap,test} + rm usr/bin/mariadb{,-{admin,binlog,check,conv,dump,import,plugin,show,slap,test,upgrade}} + rm usr/share/man/man1/mysql{,_plugin,_upgrade,admin,binlog,check,dump,import,show,slap,test}.1 + + # provided by mytop + rm usr/bin/mytop + + # not needed + rm -r usr/{mysql-test,sql-bench} + rm usr/share/man/man1/mysql-test-run.pl.1 +} + +package_mytop() { + pkgdesc="Top clone for MariaDB" + depends=( + 'perl' + 'perl-dbd-mariadb' + 'perl-term-readkey' + ) + + cd build + + install -D -m0755 scripts/mytop "$pkgdir"/usr/bin/mytop +} + +#-------------------- +# ARCH LICENSE AUTH ] + +arch=(x86_64) +license=(GPL) + +validpgpkeys=( + '199369E5404BD5FC7D2FE43BCBCB082A1BB943DB' # MariaDB Pkg Signing Key +) + +sha512sums=('') diff --git a/mariadb/clean b/mariadb/clean new file mode 100644 index 0000000..79ac9b6 --- /dev/null +++ b/mariadb/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,mariadb*.tar.gz*} diff --git a/mariadb/deps b/mariadb/deps new file mode 100644 index 0000000..0566bda --- /dev/null +++ b/mariadb/deps @@ -0,0 +1,7 @@ +boost +cmake +jemalloc +libaio +lzo +cracklib +judy diff --git a/mariadb/key b/mariadb/key new file mode 100644 index 0000000..adc3144 --- /dev/null +++ b/mariadb/key @@ -0,0 +1 @@ +gpg -v --recv-key CBCB082A1BB943DB diff --git a/mariadb/mariadb.install b/mariadb/mariadb.install new file mode 100644 index 0000000..c67092b --- /dev/null +++ b/mariadb/mariadb.install @@ -0,0 +1,15 @@ +#!/bin/sh + +post_install() { + echo ":: You need to initialize the MariaDB data directory prior to starting" + echo " the service. This can be done with mariadb-install-db command, e.g.:" + echo " mariadb-install-db --user=mysql --basedir=/usr --datadir=/var/lib/mysql" +} + +post_upgrade() { + # show for feature release: 10.1 -> 10.2 -> 10.3 -> ... + if [ $(vercmp "${1%.*-*}" "${2%.*-*}") -ne 0 ]; then + echo ":: MariaDB was updated to a new feature release. To update the data run:" + echo " systemctl restart mariadb.service && mariadb-upgrade -u root -p" + fi +} diff --git a/mariadb/mariadb.sysusers.conf b/mariadb/mariadb.sysusers.conf new file mode 100644 index 0000000..4eb2c01 --- /dev/null +++ b/mariadb/mariadb.sysusers.conf @@ -0,0 +1 @@ +u mysql - "mariadb" /var/lib/mysql diff --git a/mariadb/mariadb.tmpfile.conf b/mariadb/mariadb.tmpfile.conf new file mode 100644 index 0000000..302e6a0 --- /dev/null +++ b/mariadb/mariadb.tmpfile.conf @@ -0,0 +1,2 @@ +d /run/mysqld 0755 mysql mysql - +d /var/lib/mysql 0700 mysql mysql - diff --git a/mariadb/pcre.config.output b/mariadb/pcre.config.output new file mode 100644 index 0000000..0acbe81 --- /dev/null +++ b/mariadb/pcre.config.output @@ -0,0 +1,39 @@ +-- PCRE2-10.37 configuration summary: +-- +-- Install prefix .................. : /usr/local +-- C compiler ...................... : /usr/bin/cc +-- C compiler flags ................ : -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -pie -fPIC -fstack-protector --param=ssp-buffer-size=4 -mshstk -O2 -g -DNDEBUG -fno-omit-frame-pointer -D_FORTIFY_SOURCE=2 -DDBUG_OFF +-- +-- Build 8 bit PCRE2 library ....... : ON +-- Build 16 bit PCRE2 library ...... : OFF +-- Build 32 bit PCRE2 library ...... : OFF +-- Enable JIT compiling support .... : OFF +-- Use SELinux allocator in JIT .... : OFF +-- Enable Unicode support .......... : ON +-- Newline char/sequence ........... : LF +-- \R matches only ANYCRLF ......... : OFF +-- \C is disabled .................. : OFF +-- EBCDIC coding ................... : OFF +-- EBCDIC coding with NL=0x25 ...... : OFF +-- Rebuild char tables ............. : OFF +-- Internal link size .............. : 2 +-- Parentheses nest limit .......... : 250 +-- Heap limit ...................... : 20000000 +-- Match limit ..................... : 10000000 +-- Match depth limit ............... : MATCH_LIMIT +-- Build shared libs ............... : OFF +-- Build static libs ............... : ON +-- Build pcre2grep ................. : OFF +-- Enable JIT in pcre2grep ......... : ON +-- Enable callouts in pcre2grep .... : ON +-- Enable callout fork in pcre2grep. : ON +-- Buffer size for pcre2grep ....... : 20480 +-- Build tests (implies pcre2test .. : OFF +-- and pcre2grep) +-- Link pcre2grep with libz ........ : ON +-- Link pcre2grep with libbz2 ...... : ON +-- Link pcre2test with libeditline . : Library not found +-- Link pcre2test with libreadline . : ON +-- Support Valgrind .................: OFF +-- Use %zu and %td ..................: AUTO +-- diff --git a/mariadb/time b/mariadb/time new file mode 100644 index 0000000..ccab00f --- /dev/null +++ b/mariadb/time @@ -0,0 +1,5 @@ + +real 41m48.430s +user 153m0.512s +sys 7m11.565s + diff --git a/mat/PKGBUILD b/mat/PKGBUILD new file mode 100644 index 0000000..2271da8 --- /dev/null +++ b/mat/PKGBUILD @@ -0,0 +1,40 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Maintainer: ArchStrike +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +#buildarch=1 +pkgname=mat +pkgver=0.6.1 +pkgrel=03 +pkgdesc="Metadata Anonymisation Toolkit" +url="https://mat.boum.org/" +depends=('python2-mutagen' 'python2-pyexiftool-git' 'python2-pdfrw' 'python2-gobject' + 'python2-cairo' 'poppler' 'poppler-glib') +makedepends=('python2' 'python2-setuptools' 'python2-distutils-extra') +arch=('any') +source=("https://mat.boum.org/files/mat-${pkgver}.tar.xz") + +prepare() { + cd "${pkgname}-${pkgver}" || exit + sed -i 's|python$|python2|' libmat/mat.py nautilus/nautilus-mat.py +} + +build() { + cd "${pkgname}-${pkgver}" || exit + python2 setup.py build +} + +package() { + cd "${pkgname}-${pkgver}" || exit + python2 setup.py install --root="${pkgdir}" --optimize=1 + install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} + +#---- license gpg-key sha256sums ---- + +license=('custom') + +sha256sums=(0782e7db554ad1dddefd71c9c81e36a05464d73ab54ee2a474ea6ac90e8e51b9) # mat-0.6.1.tar.xz diff --git a/mat/PKGBUILD-archstrike b/mat/PKGBUILD-archstrike new file mode 100644 index 0000000..f75401e --- /dev/null +++ b/mat/PKGBUILD-archstrike @@ -0,0 +1,32 @@ +# Maintainer: ArchStrike + +buildarch=1 + +pkgname=mat +pkgver=0.6.1 +pkgrel=3 +pkgdesc="Metadata Anonymisation Toolkit" +url="https://mat.boum.org/" +depends=('python2-mutagen' 'python2-pyexiftool-git' 'python2-pdfrw' 'python2-gobject' + 'python2-cairo' 'poppler' 'poppler-glib') +makedepends=('python2' 'python2-setuptools' 'python2-distutils-extra') +license=('custom') +arch=('any') +source=("https://mat.boum.org/files/mat-${pkgver}.tar.xz") +sha512sums=('bde5685a5ea1116cbffa823d7978abfcfc6db04ef47940fdddc8a17e5e8d660777e3b780336e4f9d753e1b1e7127a1cbda1a7e2174ea9351b108fdd1351a00c1') + +prepare() { + cd "${pkgname}-${pkgver}" || exit + sed -i 's|python$|python2|' libmat/mat.py nautilus/nautilus-mat.py +} + +build() { + cd "${pkgname}-${pkgver}" || exit + python2 setup.py build +} + +package() { + cd "${pkgname}-${pkgver}" || exit + python2 setup.py install --root="${pkgdir}" --optimize=1 + install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} diff --git a/mat/clean b/mat/clean new file mode 100644 index 0000000..5145082 --- /dev/null +++ b/mat/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,mat*.tar.xz} diff --git a/mat/deps b/mat/deps new file mode 100644 index 0000000..daec6e1 --- /dev/null +++ b/mat/deps @@ -0,0 +1,11 @@ +python2-mutagen +python2-pyexiftool-git +python2-pdfrw +python2-gobject +python2-cairo +poppler +poppler-glib +python2 +python2-setuptools +python2-distutils-extra +gettext diff --git a/mat/time b/mat/time new file mode 100644 index 0000000..af04e84 --- /dev/null +++ b/mat/time @@ -0,0 +1,5 @@ + +real 0m4.422s +user 0m3.601s +sys 0m0.821s + diff --git a/md4c/PKGBUILD b/md4c/PKGBUILD new file mode 100644 index 0000000..dad33af --- /dev/null +++ b/md4c/PKGBUILD @@ -0,0 +1,34 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=md4c +pkgver=0.4.8 +pkgrel=01 +pkgdesc='C Markdown parser' +arch=(x86_64) +url='https://github.com/mity/md4c' +depends=(glibc) +makedepends=(cmake) +source=($pkgname-$pkgver.tar.gz::"https://github.com/mity/md4c/archive/release-$pkgver.tar.gz") + +build() { + cmake -B build -S $pkgname-release-$pkgver \ + -DCMAKE_INSTALL_PREFIX=/usr + cmake --build build +} + +package() { + DESTDIR="$pkgdir" cmake --install build + + install -Dm644 $pkgname-release-$pkgver/LICENSE.md -t "$pkgdir"/usr/share/licenses/$pkgname/ +} + +#---- license gpg-key sha256sums ---- + +license=(MIT) + +sha256sums=(4a457df853425b6bb6e3457aa1d1a13bccec587a04c38c622b1013a0da41439f) # md4c-0.4.8.tar.gz diff --git a/md4c/PKGBUILD-arch b/md4c/PKGBUILD-arch new file mode 100644 index 0000000..c9b6a18 --- /dev/null +++ b/md4c/PKGBUILD-arch @@ -0,0 +1,25 @@ +# Maintainer: Antonio Rojas + +pkgname=md4c +pkgver=0.4.8 +pkgrel=1 +pkgdesc='C Markdown parser' +arch=(x86_64) +url='https://github.com/mity/md4c' +license=(MIT) +depends=(glibc) +makedepends=(cmake) +source=($pkgname-$pkgver.tar.gz::"https://github.com/mity/md4c/archive/release-$pkgver.tar.gz") +sha256sums=('4a457df853425b6bb6e3457aa1d1a13bccec587a04c38c622b1013a0da41439f') + +build() { + cmake -B build -S $pkgname-release-$pkgver \ + -DCMAKE_INSTALL_PREFIX=/usr + cmake --build build +} + +package() { + DESTDIR="$pkgdir" cmake --install build + + install -Dm644 $pkgname-release-$pkgver/LICENSE.md -t "$pkgdir"/usr/share/licenses/$pkgname/ +} diff --git a/md4c/clean b/md4c/clean new file mode 100644 index 0000000..974725a --- /dev/null +++ b/md4c/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,md4c*tar.gz} diff --git a/md4c/deps b/md4c/deps new file mode 100644 index 0000000..a3ea3e4 --- /dev/null +++ b/md4c/deps @@ -0,0 +1 @@ +cmake diff --git a/md4c/time b/md4c/time new file mode 100644 index 0000000..301d4e9 --- /dev/null +++ b/md4c/time @@ -0,0 +1,5 @@ + +real 0m6.166s +user 0m4.467s +sys 0m0.384s + diff --git a/mdds/PKGBUILD b/mdds/PKGBUILD new file mode 100644 index 0000000..260656e --- /dev/null +++ b/mdds/PKGBUILD @@ -0,0 +1,40 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=mdds +pkgver=2.0.2 +pkgrel=1 +pkgdesc="A collection of multi-dimensional data structures and indexing algorithms" +arch=('any') +url="https://gitlab.com/mdds/mdds" +checkdepends=('boost') +#source=(https://gitlab.com/mdds/mdds/repository/archive.tar.gz?ref=${pkgver}) +source=(https://kohei.us/files/mdds/src/${pkgname}-${pkgver}.tar.xz) + +build() { + cd ${pkgname}-${pkgver} + ./autogen.sh --prefix=/usr + # make +} + +check() { + cd ${pkgname}-${pkgver} + make check +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} + +#---- license gpg-key sha256sums ---- + +license=('MIT') + +# checksums listed there - https://gitlab.com/mdds/mdds/-/releases +sha256sums=(1f8c165695f5d2e4375bab32a0f1507868dee3de0a20d524770078ba3c6c10bf) # mdds-2.0.2.tar.xz diff --git a/mdds/PKGBUILD-arch b/mdds/PKGBUILD-arch new file mode 100644 index 0000000..44b8251 --- /dev/null +++ b/mdds/PKGBUILD-arch @@ -0,0 +1,32 @@ +# Maintainer: AndyRTR +# Contributor: kusakata + +pkgname=mdds +pkgver=2.0.2 +pkgrel=1 +pkgdesc="A collection of multi-dimensional data structures and indexing algorithms" +arch=('any') +url="https://gitlab.com/mdds/mdds" +license=('MIT') +checkdepends=('boost') +#source=(https://gitlab.com/mdds/mdds/repository/archive.tar.gz?ref=${pkgver}) +source=(https://kohei.us/files/mdds/src/${pkgname}-${pkgver}.tar.xz) +# checksums listed there - https://gitlab.com/mdds/mdds/-/releases +sha256sums=('1f8c165695f5d2e4375bab32a0f1507868dee3de0a20d524770078ba3c6c10bf') + +build() { + cd ${pkgname}-${pkgver} + ./autogen.sh --prefix=/usr + # make +} + +check() { + cd ${pkgname}-${pkgver} + make check +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} diff --git a/mdds/clean b/mdds/clean new file mode 100644 index 0000000..49ca2b8 --- /dev/null +++ b/mdds/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,mdds*tar.xz} diff --git a/mdds/deps b/mdds/deps new file mode 100644 index 0000000..6e635ab --- /dev/null +++ b/mdds/deps @@ -0,0 +1,4 @@ +boost + +automake +autoconf diff --git a/mdds/time b/mdds/time new file mode 100644 index 0000000..fb7eaca --- /dev/null +++ b/mdds/time @@ -0,0 +1,4 @@ + +real 5m12.518s +user 18m16.551s +sys 0m29.697s diff --git a/mercurial/PKGBUILD b/mercurial/PKGBUILD new file mode 100644 index 0000000..dfa7e55 --- /dev/null +++ b/mercurial/PKGBUILD @@ -0,0 +1,87 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=mercurial +pkgver=6.1 +pkgrel=02 +pkgdesc='A scalable distributed SCM tool' +arch=(x86_64) +url="https://www.mercurial-scm.org/" +depends=(python) +#makedepends=(python-build python-installer python-setuptools python-wheel python-docutils) +makedepends=(python-docutils) +optdepends=('tk: for the hgk GUI') +#checkdepends=('breezy' 'cvs' 'git' 'git-lfs' 'python-docutils' 'subversion' 'unzip') + +# ToDo: +# check included contrib/packaging/mercurial.spec and how BLFS/Gentoo/Debian/Fedora do it +# the following should be either makedepends or checkdepends when running tests +# 'python-gnupg' 'python-pygments' 'python-pyflakes' 'python-pyopenssl' +# 'openssh' 'rust' 'subversion' 'breezy' 'cvs' 'git') + +backup=(etc/mercurial/hgrc) +source=(https://www.mercurial-scm.org/release/${pkgname}-${pkgver}.tar.gz{,.asc} + mercurial.profile) + +build() { + cd $pkgname-$pkgver +# python -m build --wheel --no-isolation + python setup.py build + make -C contrib/chg + +} + +check() { + cd $pkgname-$pkgver/tests + # TODO - disabled for now - to many tests fail +### python run-tests.py # -j48 || : +} + +package() { + cd $pkgname-$pkgver +# python -m installer --destdir="$pkgdir" dist/*.whl + python setup.py install --root="$pkgdir" --skip-build --optimize=1 + make DESTDIR="${pkgdir}" PREFIX=/usr install + + install -m644 -D contrib/zsh_completion "$pkgdir/usr/share/zsh/site-functions/_hg" + install -m644 -D contrib/bash_completion "$pkgdir/usr/share/bash-completion/completions/hg" + + make -C contrib/chg DESTDIR="$pkgdir" PREFIX=/usr install + install -m755 contrib/hg-ssh "$pkgdir/usr/bin" + install -m755 contrib/hgk "$pkgdir/usr/bin" + + install -d "$pkgdir/usr/share/emacs/site-lisp" + install -m644 contrib/{mq.el,mercurial.el} "$pkgdir/usr/share/emacs/site-lisp" + + install -Dm644 contrib/vim/HGAnnotate.vim \ + "$pkgdir/usr/share/vim/vimfiles/syntax/HGAnnotate.vim" + + # set some variables + install -m755 -d "$pkgdir/etc/profile.d" + install -m644 "$srcdir/mercurial.profile" "$pkgdir/etc/profile.d/mercurial.sh" + + # FS#38825 - Add certs config to package + install -m755 -d "$pkgdir/etc/mercurial" + cat <<-EOF > "$pkgdir/etc/mercurial/hgrc" + [web] + cacerts = /etc/ssl/certs/ca-certificates.crt + EOF +} + +#---- license gpg-key sha256sums ---- + +license=(GPL) + +validpgpkeys=(2BCCE14F5C6725AA2EA8AEB7B9C9DC824AA5BDD5 + 3A8155163D0E20A530FCB78647A67FFAA346AACE + EB851395B4223EE2F7BA0B28DA54740BF08732BA + 818D87CD1AC180C394C86E633A33DE460D9EC39F # Pulkit Goyal <7895pulkit@gmail.com> + 1F66F8CDF654E905C11DA061A11E01CD0E05D956) # Raphaël Gomès + +sha256sums=(86f98645e4565a9256991dcde22b77b8e7d22ca6fbb60c1f4cdbd8469a38cc1f # mercurial-6.1.tar.gz + df14afa139944255c8280a00470d8e521b3af588e77b2687d0611226982ad3a2 # mercurial-6.1.tar.gz.asc + 87427151713e689cd87dc50d50c048e0e58285815e4eb61962b50583532cbde5) # mercurial.profile diff --git a/mercurial/PKGBUILD-arch b/mercurial/PKGBUILD-arch new file mode 100644 index 0000000..88ddff6 --- /dev/null +++ b/mercurial/PKGBUILD-arch @@ -0,0 +1,75 @@ +# Maintainer: Bartłomiej Piotrowski +# Contributor: Giovanni Scafora +# Contributor: Douglas Soares de Andrade + +pkgname=mercurial +pkgver=6.1 +pkgrel=2 +pkgdesc='A scalable distributed SCM tool' +arch=(x86_64) +url="https://www.mercurial-scm.org/" +license=(GPL) +depends=(python) +makedepends=(python-docutils) +optdepends=('tk: for the hgk GUI') +#checkdepends=('breezy' 'cvs' 'git' 'git-lfs' 'python-docutils' 'subversion' 'unzip') + +# ToDo: +# check included contrib/packaging/mercurial.spec and how BLFS/Gentoo/Debian/Fedora do it +# the following should be either makedepends or checkdepends when running tests +# 'python-gnupg' 'python-pygments' 'python-pyflakes' 'python-pyopenssl' +# 'openssh' 'rust' 'subversion' 'breezy' 'cvs' 'git') + +backup=(etc/mercurial/hgrc) +validpgpkeys=(2BCCE14F5C6725AA2EA8AEB7B9C9DC824AA5BDD5 + 3A8155163D0E20A530FCB78647A67FFAA346AACE + EB851395B4223EE2F7BA0B28DA54740BF08732BA + 818D87CD1AC180C394C86E633A33DE460D9EC39F # Pulkit Goyal <7895pulkit@gmail.com> + 1F66F8CDF654E905C11DA061A11E01CD0E05D956) # Raphaël Gomès +source=(https://www.mercurial-scm.org/release/${pkgname}-${pkgver}.tar.gz{,.asc} + mercurial.profile) +sha512sums=('489b2c893bcfd243d9825cd78f1d8b6e0eddccdf92d16cbdbdb2ade40150b599a6d5df213e06d50c31489ee6c5203e35f21892b6439d9190757d5a36c6422338' + 'SKIP' + '710dcddb24d928efc97370e869d9caa083107929ed9a1086dd2a3ae0caaf2c71e2f29060597e29315b6b15b1616251c42412e268ce737109c48ae4d7aa1b9555') + +build() { + cd $pkgname-$pkgver + python setup.py build + make -C contrib/chg +} + +check() { + cd $pkgname-$pkgver/tests + # TODO - disabled for now - to many tests fail + #python run-tests.py # -j48 || : +} + +package() { + cd $pkgname-$pkgver + python setup.py install --root="$pkgdir" --skip-build --optimize=1 + make DESTDIR="${pkgdir}" PREFIX=/usr install + + install -m644 -D contrib/zsh_completion "$pkgdir/usr/share/zsh/site-functions/_hg" + install -m644 -D contrib/bash_completion "$pkgdir/usr/share/bash-completion/completions/hg" + + make -C contrib/chg DESTDIR="$pkgdir" PREFIX=/usr install + install -m755 contrib/hg-ssh "$pkgdir/usr/bin" + install -m755 contrib/hgk "$pkgdir/usr/bin" + + install -d "$pkgdir/usr/share/emacs/site-lisp" + install -m644 contrib/{mq.el,mercurial.el} "$pkgdir/usr/share/emacs/site-lisp" + + install -Dm644 contrib/vim/HGAnnotate.vim \ + "$pkgdir/usr/share/vim/vimfiles/syntax/HGAnnotate.vim" + + # set some variables + install -m755 -d "$pkgdir/etc/profile.d" + install -m644 "$srcdir/mercurial.profile" "$pkgdir/etc/profile.d/mercurial.sh" + + # FS#38825 - Add certs config to package + install -m755 -d "$pkgdir/etc/mercurial" + cat <<-EOF > "$pkgdir/etc/mercurial/hgrc" + [web] + cacerts = /etc/ssl/certs/ca-certificates.crt + EOF +} diff --git a/mercurial/clean b/mercurial/clean new file mode 100644 index 0000000..7aca558 --- /dev/null +++ b/mercurial/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,mercur*tar.gz*} diff --git a/mercurial/deps b/mercurial/deps new file mode 100644 index 0000000..ce5847f --- /dev/null +++ b/mercurial/deps @@ -0,0 +1 @@ +python-docutils diff --git a/mercurial/deps.check b/mercurial/deps.check new file mode 100644 index 0000000..fcd2647 --- /dev/null +++ b/mercurial/deps.check @@ -0,0 +1,10 @@ +python +python-docutils +breezy +cvs +git +git-lfs +python-docutils +subversion +unzip + diff --git a/mercurial/deps.no-check b/mercurial/deps.no-check new file mode 100644 index 0000000..c30eb0e --- /dev/null +++ b/mercurial/deps.no-check @@ -0,0 +1 @@ +python python-docutils diff --git a/mercurial/key b/mercurial/key new file mode 100644 index 0000000..eb61030 --- /dev/null +++ b/mercurial/key @@ -0,0 +1 @@ +gpg -v --recv-key A11E01CD0E05D956 diff --git a/mercurial/mercurial.profile b/mercurial/mercurial.profile new file mode 100644 index 0000000..fc96182 --- /dev/null +++ b/mercurial/mercurial.profile @@ -0,0 +1 @@ +export HG=/usr/bin/hg diff --git a/mercurial/note b/mercurial/note new file mode 100644 index 0000000..31bdc5b --- /dev/null +++ b/mercurial/note @@ -0,0 +1 @@ +we tried the tests, too long and some failing, substitute deps.check for deps if you want to run the tests/check diff --git a/mercurial/time b/mercurial/time new file mode 100644 index 0000000..1ca9056 --- /dev/null +++ b/mercurial/time @@ -0,0 +1,5 @@ + +real 0m52.176s +user 1m5.499s +sys 0m4.087s + diff --git a/mesa/0001-iris-implement-inter-context-busy-tracking.patch b/mesa/0001-iris-implement-inter-context-busy-tracking.patch new file mode 100644 index 0000000..8e37e77 --- /dev/null +++ b/mesa/0001-iris-implement-inter-context-busy-tracking.patch @@ -0,0 +1,59 @@ +From 07dc3d4238e57901ccf98e0b506d9aad2c86b9d9 Mon Sep 17 00:00:00 2001 +From: Paulo Zanoni +Date: Mon, 10 Jan 2022 17:18:05 -0800 +Subject: [PATCH] iris: implement inter-context busy-tracking + +Previously, no buffers were ever marked as EXEC_OBJECT_ASYNC so the +Kernel would ensure dependency tracking for us. After we implemented +explicit busy tracking in commit 89a34cb8450a, only the external +objects kept relying on the Kernel's implicit tracking and Iris did +inter-batch busy tracking, meaning we lost inter-screen and +inter-context synchronization. This seemed fine to me since, as far as +I understood, it is the duty of the application to synchronize itself +against multiple screens and contexts. + +The problem here is that applications were actually relying on the old +behavior where the Kernel guarantees synchronization, so 89a34cb8450a +can be seen as a regression. This commit addresses the inter-context +synchronization case. + +Cc: mesa-stable +Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5731 +Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5812 +Fixes: 89a34cb8450a ("iris: switch to explicit busy tracking") +Tested-by: Konstantin Kharlamov +Signed-off-by: Paulo Zanoni +Signed-off-by: Laurent Carlier +--- + src/gallium/drivers/iris/iris_batch.c | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/src/gallium/drivers/iris/iris_batch.c b/src/gallium/drivers/iris/iris_batch.c +index b7bde60aae7..1b0c5896d4f 100644 +--- a/src/gallium/drivers/iris/iris_batch.c ++++ b/src/gallium/drivers/iris/iris_batch.c +@@ -835,6 +835,12 @@ update_bo_syncobjs(struct iris_batch *batch, struct iris_bo *bo, bool write) + move_syncobj_to_batch(batch, &deps->write_syncobjs[other_batch_idx], + I915_EXEC_FENCE_WAIT); + ++ /* If it's being written by our screen, wait on it too. This is relevant ++ * when there are multiple contexts on the same screen. */ ++ if (deps->write_syncobjs[batch_idx]) ++ move_syncobj_to_batch(batch, &deps->write_syncobjs[batch_idx], ++ I915_EXEC_FENCE_WAIT); ++ + struct iris_syncobj *batch_syncobj = iris_batch_get_signal_syncobj(batch); + + if (write) { +@@ -847,6 +853,8 @@ update_bo_syncobjs(struct iris_batch *batch, struct iris_bo *bo, bool write) + + move_syncobj_to_batch(batch, &deps->read_syncobjs[other_batch_idx], + I915_EXEC_FENCE_WAIT); ++ move_syncobj_to_batch(batch, &deps->read_syncobjs[batch_idx], ++ I915_EXEC_FENCE_WAIT); + + } else { + /* If we're reading, replace the other read from our batch index. */ +-- +2.35.0 + diff --git a/mesa/LICENSE b/mesa/LICENSE new file mode 100644 index 0000000..060f4a9 --- /dev/null +++ b/mesa/LICENSE @@ -0,0 +1,83 @@ +The Mesa 3D Graphics Library + +Disclaimer + + Mesa is a 3-D graphics library with an API which is very similar to + that of [1]OpenGL.* To the extent that Mesa utilizes the OpenGL command + syntax or state machine, it is being used with authorization from + [2]Silicon Graphics, Inc.(SGI). However, the author does not possess an + OpenGL license from SGI, and makes no claim that Mesa is in any way a + compatible replacement for OpenGL or associated with SGI. Those who + want a licensed implementation of OpenGL should contact a licensed + vendor. + + Please do not refer to the library as MesaGL (for legal reasons). It's + just Mesa or The Mesa 3-D graphics library. + + * OpenGL is a trademark of [3]Silicon Graphics Incorporated. + +License / Copyright Information + + The Mesa distribution consists of several components. Different + copyrights and licenses apply to different components. For example, the + GLX client code uses the SGI Free Software License B, and some of the + Mesa device drivers are copyrighted by their authors. See below for a + list of Mesa's main components and the license for each. + + The core Mesa library is licensed according to the terms of the MIT + license. This allows integration with the XFree86, Xorg and DRI + projects. + + The default Mesa license is as follows: + +Copyright (C) 1999-2007 Brian Paul All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the "Software"), +to deal in the Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, sublicense, +and/or sell copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL +THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +Attention, Contributors + + When contributing to the Mesa project you must agree to the licensing + terms of the component to which you're contributing. The following + section lists the primary components of the Mesa distribution and their + respective licenses. + +Mesa Component Licenses + +Component Location License +------------------------------------------------------------------ +Main Mesa code src/mesa/ MIT + +Device drivers src/mesa/drivers/* MIT, generally + +Gallium code src/gallium/ MIT + +Ext headers include/GL/glext.h Khronos + include/GL/glxext.h + +GLX client code src/glx/ SGI Free Software License B + +C11 thread include/c11/threads*.h Boost (permissive) emulation + + In general, consult the source files for license terms. + +References + + 1. https://www.opengl.org/ + 2. https://www.sgi.com/ + 3. https://www.sgi.com/ diff --git a/mesa/PKGBUILD b/mesa/PKGBUILD new file mode 100644 index 0000000..2cb486d --- /dev/null +++ b/mesa/PKGBUILD @@ -0,0 +1,221 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgbase=mesa +pkgname=('vulkan-mesa-layers' 'opencl-mesa' 'vulkan-intel' 'vulkan-radeon' 'vulkan-swrast' 'libva-mesa-driver' 'mesa-vdpau' 'mesa') +pkgdesc="An open-source implementation of the OpenGL specification w/o zstd" +pkgver=22.0.0 +pkgrel=01 +arch=('x86_64') +makedepends=('python-mako' 'libxml2' 'libx11' 'xorgproto' 'libdrm' 'libxshmfence' 'libxxf86vm' + 'libxdamage' 'libvdpau' 'libva' 'wayland' 'wayland-protocols' 'zstd' 'elfutils' 'llvm' + 'libomxil-bellagio' 'libclc' 'clang' 'libglvnd' 'libunwind' 'lm_sensors' 'libxrandr' + 'valgrind' 'glslang' 'vulkan-icd-loader' 'directx-headers' 'cmake' 'meson') +url="https://www.mesa3d.org/" +source=(https://mesa.freedesktop.org/archive/mesa-${pkgver}.tar.xz{,.sig} +# 0001-iris-implement-inter-context-busy-tracking.patch + LICENSE) + +prepare() { + cd mesa-$pkgver + +# # FS#73501 +# patch -Np1 -i ../0001-iris-implement-inter-context-busy-tracking.patch +} + +build() { + arch-meson mesa-$pkgver build \ + -D b_lto=true \ + -D b_ndebug=false \ + -D platforms=x11,wayland \ + -D gallium-drivers=r300,r600,radeonsi,nouveau,virgl,svga,swrast,iris,crocus,zink,d3d12 \ + -D vulkan-drivers=amd,intel,swrast \ + -D vulkan-layers=device-select,intel-nullhw,overlay \ + -D dri3=enabled \ + -D egl=enabled \ + -D gallium-extra-hud=true \ + -D gallium-nine=true \ + -D gallium-omx=bellagio \ + -D gallium-opencl=icd \ + -D gallium-va=enabled \ + -D gallium-vdpau=enabled \ + -D gallium-xa=enabled \ + -D gallium-xvmc=disabled \ + -D gbm=enabled \ + -D gles1=disabled \ + -D gles2=enabled \ + -D glvnd=true \ + -D glx=dri \ + -D libunwind=enabled \ + -D llvm=enabled \ + -D lmsensors=enabled \ + -D osmesa=true \ + -D zstd=disabled \ + -D shared-glapi=enabled \ + -D microsoft-clc=disabled \ + -D valgrind=enabled + + # Print config + meson configure build + + ninja -C build + meson compile -C build + + # fake installation to be seperated into packages + # outside of fakeroot but mesa doesn't need to chown/mod + DESTDIR="${srcdir}/fakeinstall" meson install -C build +} + +_install() { + local src f dir + for src; do + f="${src#fakeinstall/}" + dir="${pkgdir}/${f%/*}" + install -m755 -d "${dir}" + mv -v "${src}" "${dir}/" + done +} + +package_vulkan-mesa-layers() { + pkgdesc="Mesa's Vulkan layers" + depends=('libdrm' 'libxcb' 'wayland' 'python') + conflicts=('vulkan-mesa-layer') + replaces=('vulkan-mesa-layer') + + _install fakeinstall/usr/share/vulkan/explicit_layer.d + _install fakeinstall/usr/share/vulkan/implicit_layer.d + _install fakeinstall/usr/lib/libVkLayer_*.so + _install fakeinstall/usr/bin/mesa-overlay-control.py + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_opencl-mesa() { + pkgdesc="OpenCL support for AMD/ATI Radeon mesa drivers" + depends=('libdrm' 'libclc' 'clang') + optdepends=('opencl-headers: headers necessary for OpenCL development') + provides=('opencl-driver') + + _install fakeinstall/etc/OpenCL + _install fakeinstall/usr/lib/lib*OpenCL* + _install fakeinstall/usr/lib/gallium-pipe + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_vulkan-intel() { + pkgdesc="Intel's Vulkan mesa driver" + depends=('wayland' 'libx11' 'libxshmfence' 'libdrm' 'zstd') + optdepends=('vulkan-mesa-layers: additional vulkan layers') + provides=('vulkan-driver') + + _install fakeinstall/usr/share/vulkan/icd.d/intel_icd*.json + _install fakeinstall/usr/lib/libvulkan_intel.so + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_vulkan-radeon() { + pkgdesc="Radeon's Vulkan mesa driver" + depends=('wayland' 'libx11' 'libxshmfence' 'libelf' 'libdrm' 'llvm-libs') + optdepends=('vulkan-mesa-layers: additional vulkan layers') + provides=('vulkan-driver') + + _install fakeinstall/usr/share/vulkan/icd.d/radeon_icd*.json + _install fakeinstall/usr/lib/libvulkan_radeon.so + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_vulkan-swrast() { + pkgdesc="Vulkan software rasteriser driver" + depends=('wayland' 'libx11' 'libxshmfence' 'libdrm' 'zstd' 'llvm-libs') + optdepends=('vulkan-mesa-layers: additional vulkan layers') + conflicts=('vulkan-mesa') + replaces=('vulkan-mesa') + provides=('vulkan-driver') + + _install fakeinstall/usr/share/vulkan/icd.d/lvp_icd*.json + _install fakeinstall/usr/lib/libvulkan_lvp.so + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_libva-mesa-driver() { + pkgdesc="VA-API implementation for gallium" + depends=('libdrm' 'libx11' 'llvm-libs' 'expat' 'libelf' 'libxshmfence') + depends+=('libexpat.so') + + _install fakeinstall/usr/lib/dri/*_drv_video.so + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_mesa-vdpau() { + pkgdesc="Mesa VDPAU drivers" + depends=('libdrm' 'libx11' 'llvm-libs' 'expat' 'libelf' 'libxshmfence') + depends+=('libexpat.so') + + _install fakeinstall/usr/lib/vdpau + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_mesa() { + depends=('libdrm' 'wayland' 'libxxf86vm' 'libxdamage' 'libxshmfence' 'libelf' + 'libomxil-bellagio' 'libunwind' 'llvm-libs' 'lm_sensors' 'libglvnd' + 'zstd' 'vulkan-icd-loader') + depends+=('libsensors.so' 'libexpat.so' 'libvulkan.so') + optdepends=('opengl-man-pages: for the OpenGL API man pages' + 'mesa-vdpau: for accelerated video playback' + 'libva-mesa-driver: for accelerated video playback') + provides=('mesa-libgl' 'opengl-driver') + conflicts=('mesa-libgl') + replaces=('mesa-libgl') + + _install fakeinstall/usr/share/drirc.d/00-mesa-defaults.conf + _install fakeinstall/usr/share/glvnd/egl_vendor.d/50_mesa.json + + # ati-dri, nouveau-dri, intel-dri, svga-dri, swrast, swr + _install fakeinstall/usr/lib/dri/*_dri.so + + _install fakeinstall/usr/lib/bellagio + _install fakeinstall/usr/lib/d3d + _install fakeinstall/usr/lib/lib{gbm,glapi}.so* + _install fakeinstall/usr/lib/libOSMesa.so* + _install fakeinstall/usr/lib/libxatracker.so* + + _install fakeinstall/usr/include + _install fakeinstall/usr/lib/pkgconfig + + # libglvnd support + _install fakeinstall/usr/lib/libGLX_mesa.so* + _install fakeinstall/usr/lib/libEGL_mesa.so* + + # indirect rendering + ln -s /usr/lib/libGLX_mesa.so.0 "${pkgdir}/usr/lib/libGLX_indirect.so.0" + + # make sure there are no files left to install + find fakeinstall -depth -print0 | xargs -0 rmdir + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +#---- license gpg-key sha256sums ---- + +license=('custom') + +validpgpkeys=('8703B6700E7EE06D7A39B8D6EDAE37B02CEB490D' # Emil Velikov + '946D09B5E4C9845E63075FF1D961C596A7203456' # Andres Gomez + 'E3E8F480C52ADD73B278EE78E1ECBE07D7D70895' # Juan Antonio Suárez Romero (Igalia, S.L.) + 'A5CC9FEC93F2F837CB044912336909B6B25FADFA' # Juan A. Suarez Romero + '71C4B75620BC75708B4BDB254C95FAAB3EB073EC' # Dylan Baker + '57551DE15B968F6341C248F68D8E31AFC32428A6') # Eric Engestrom + +sha256sums=(e6c41928b5b9917485bd67cec22d15e62cad7a358bf4c711a647979987601250 # mesa-22.0.0.tar.xz + 8a697c40653b6ef423fb76dff8344c20dbc437bf08e37d0f5a6ca1062c7584e9 # mesa-22.0.0.tar.xz.sig + 7052ba73bb07ea78873a2431ee4e828f4e72bda7d176d07f770fa48373dec537) # LICENSE diff --git a/mesa/PKGBUILD-arch b/mesa/PKGBUILD-arch new file mode 100644 index 0000000..105382e --- /dev/null +++ b/mesa/PKGBUILD-arch @@ -0,0 +1,210 @@ +# Maintainer: Laurent Carlier +# Maintainer: Felix Yan +# Maintainer: Jan de Groot +# Contributor: Andreas Radke + +pkgbase=mesa +pkgname=('vulkan-mesa-layers' 'opencl-mesa' 'vulkan-intel' 'vulkan-radeon' 'vulkan-swrast' 'libva-mesa-driver' 'mesa-vdpau' 'mesa') +pkgdesc="An open-source implementation of the OpenGL specification" +pkgver=22.0.0 +pkgrel=1 +arch=('x86_64') +makedepends=('python-mako' 'libxml2' 'libx11' 'xorgproto' 'libdrm' 'libxshmfence' 'libxxf86vm' + 'libxdamage' 'libvdpau' 'libva' 'wayland' 'wayland-protocols' 'zstd' 'elfutils' 'llvm' + 'libomxil-bellagio' 'libclc' 'clang' 'libglvnd' 'libunwind' 'lm_sensors' 'libxrandr' + 'valgrind' 'glslang' 'vulkan-icd-loader' 'directx-headers' 'cmake' 'meson') +url="https://www.mesa3d.org/" +license=('custom') +source=(https://mesa.freedesktop.org/archive/mesa-${pkgver}.tar.xz{,.sig} + LICENSE) +sha512sums=('9faef66adbacba24d11dfe8e2d1a753295798883a10a7cc91e6df9d678c64a8286a12e60c0d8576d944a8cc76f00c30d27c3a71d3458bbe3dbcd66c88a454c3b' + 'SKIP' + 'f9f0d0ccf166fe6cb684478b6f1e1ab1f2850431c06aa041738563eb1808a004e52cdec823c103c9e180f03ffc083e95974d291353f0220fe52ae6d4897fecc7') +validpgpkeys=('8703B6700E7EE06D7A39B8D6EDAE37B02CEB490D' # Emil Velikov + '946D09B5E4C9845E63075FF1D961C596A7203456' # Andres Gomez + 'E3E8F480C52ADD73B278EE78E1ECBE07D7D70895' # Juan Antonio Suárez Romero (Igalia, S.L.) + 'A5CC9FEC93F2F837CB044912336909B6B25FADFA' # Juan A. Suarez Romero + '71C4B75620BC75708B4BDB254C95FAAB3EB073EC' # Dylan Baker + '57551DE15B968F6341C248F68D8E31AFC32428A6') # Eric Engestrom + +prepare() { + cd mesa-$pkgver + +} + +build() { + arch-meson mesa-$pkgver build \ + -D b_lto=true \ + -D b_ndebug=true \ + -D platforms=x11,wayland \ + -D gallium-drivers=r300,r600,radeonsi,nouveau,virgl,svga,swrast,iris,crocus,zink,d3d12 \ + -D vulkan-drivers=amd,intel,swrast \ + -D vulkan-layers=device-select,intel-nullhw,overlay \ + -D dri3=enabled \ + -D egl=enabled \ + -D gallium-extra-hud=true \ + -D gallium-nine=true \ + -D gallium-omx=bellagio \ + -D gallium-opencl=icd \ + -D gallium-va=enabled \ + -D gallium-vdpau=enabled \ + -D gallium-xa=enabled \ + -D gallium-xvmc=disabled \ + -D gbm=enabled \ + -D gles1=disabled \ + -D gles2=enabled \ + -D glvnd=true \ + -D glx=dri \ + -D libunwind=enabled \ + -D llvm=enabled \ + -D lmsensors=enabled \ + -D osmesa=true \ + -D shared-glapi=enabled \ + -D microsoft-clc=disabled \ + -D valgrind=enabled + + # Print config + meson configure build + + ninja -C build + meson compile -C build + + # fake installation to be seperated into packages + # outside of fakeroot but mesa doesn't need to chown/mod + DESTDIR="${srcdir}/fakeinstall" meson install -C build +} + +_install() { + local src f dir + for src; do + f="${src#fakeinstall/}" + dir="${pkgdir}/${f%/*}" + install -m755 -d "${dir}" + mv -v "${src}" "${dir}/" + done +} + +package_vulkan-mesa-layers() { + pkgdesc="Mesa's Vulkan layers" + depends=('libdrm' 'libxcb' 'wayland' 'python') + conflicts=('vulkan-mesa-layer') + replaces=('vulkan-mesa-layer') + + _install fakeinstall/usr/share/vulkan/explicit_layer.d + _install fakeinstall/usr/share/vulkan/implicit_layer.d + _install fakeinstall/usr/lib/libVkLayer_*.so + _install fakeinstall/usr/bin/mesa-overlay-control.py + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_opencl-mesa() { + pkgdesc="OpenCL support for AMD/ATI Radeon mesa drivers" + depends=('libdrm' 'libclc' 'clang') + optdepends=('opencl-headers: headers necessary for OpenCL development') + provides=('opencl-driver') + + _install fakeinstall/etc/OpenCL + _install fakeinstall/usr/lib/lib*OpenCL* + _install fakeinstall/usr/lib/gallium-pipe + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_vulkan-intel() { + pkgdesc="Intel's Vulkan mesa driver" + depends=('wayland' 'libx11' 'libxshmfence' 'libdrm' 'zstd') + optdepends=('vulkan-mesa-layers: additional vulkan layers') + provides=('vulkan-driver') + + _install fakeinstall/usr/share/vulkan/icd.d/intel_icd*.json + _install fakeinstall/usr/lib/libvulkan_intel.so + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_vulkan-radeon() { + pkgdesc="Radeon's Vulkan mesa driver" + depends=('wayland' 'libx11' 'libxshmfence' 'libelf' 'libdrm' 'llvm-libs') + optdepends=('vulkan-mesa-layers: additional vulkan layers') + provides=('vulkan-driver') + + _install fakeinstall/usr/share/vulkan/icd.d/radeon_icd*.json + _install fakeinstall/usr/lib/libvulkan_radeon.so + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_vulkan-swrast() { + pkgdesc="Vulkan software rasteriser driver" + depends=('wayland' 'libx11' 'libxshmfence' 'libdrm' 'zstd' 'llvm-libs') + optdepends=('vulkan-mesa-layers: additional vulkan layers') + conflicts=('vulkan-mesa') + replaces=('vulkan-mesa') + provides=('vulkan-driver') + + _install fakeinstall/usr/share/vulkan/icd.d/lvp_icd*.json + _install fakeinstall/usr/lib/libvulkan_lvp.so + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_libva-mesa-driver() { + pkgdesc="VA-API implementation for gallium" + depends=('libdrm' 'libx11' 'llvm-libs' 'expat' 'libelf' 'libxshmfence') + depends+=('libexpat.so') + + _install fakeinstall/usr/lib/dri/*_drv_video.so + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_mesa-vdpau() { + pkgdesc="Mesa VDPAU drivers" + depends=('libdrm' 'libx11' 'llvm-libs' 'expat' 'libelf' 'libxshmfence') + depends+=('libexpat.so') + + _install fakeinstall/usr/lib/vdpau + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_mesa() { + depends=('libdrm' 'wayland' 'libxxf86vm' 'libxdamage' 'libxshmfence' 'libelf' + 'libomxil-bellagio' 'libunwind' 'llvm-libs' 'lm_sensors' 'libglvnd' + 'zstd' 'vulkan-icd-loader') + depends+=('libsensors.so' 'libexpat.so' 'libvulkan.so') + optdepends=('opengl-man-pages: for the OpenGL API man pages' + 'mesa-vdpau: for accelerated video playback' + 'libva-mesa-driver: for accelerated video playback') + provides=('mesa-libgl' 'opengl-driver') + conflicts=('mesa-libgl') + replaces=('mesa-libgl') + + _install fakeinstall/usr/share/drirc.d/00-mesa-defaults.conf + _install fakeinstall/usr/share/glvnd/egl_vendor.d/50_mesa.json + + # ati-dri, nouveau-dri, intel-dri, svga-dri, swrast, swr + _install fakeinstall/usr/lib/dri/*_dri.so + + _install fakeinstall/usr/lib/bellagio + _install fakeinstall/usr/lib/d3d + _install fakeinstall/usr/lib/lib{gbm,glapi}.so* + _install fakeinstall/usr/lib/libOSMesa.so* + _install fakeinstall/usr/lib/libxatracker.so* + + _install fakeinstall/usr/include + _install fakeinstall/usr/lib/pkgconfig + + # libglvnd support + _install fakeinstall/usr/lib/libGLX_mesa.so* + _install fakeinstall/usr/lib/libEGL_mesa.so* + + # indirect rendering + ln -s /usr/lib/libGLX_mesa.so.0 "${pkgdir}/usr/lib/libGLX_indirect.so.0" + + # make sure there are no files left to install + find fakeinstall -depth -print0 | xargs -0 rmdir + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} diff --git a/mesa/PKGBUILD-arch.21 b/mesa/PKGBUILD-arch.21 new file mode 100644 index 0000000..5d42a9b --- /dev/null +++ b/mesa/PKGBUILD-arch.21 @@ -0,0 +1,212 @@ +# Maintainer: Laurent Carlier +# Maintainer: Felix Yan +# Maintainer: Jan de Groot +# Contributor: Andreas Radke + +pkgbase=mesa +pkgname=('vulkan-mesa-layers' 'opencl-mesa' 'vulkan-intel' 'vulkan-radeon' 'vulkan-swrast' 'libva-mesa-driver' 'mesa-vdpau' 'mesa') +pkgdesc="An open-source implementation of the OpenGL specification" +pkgver=21.3.7 +pkgrel=2 +arch=('x86_64') +makedepends=('python-mako' 'libxml2' 'libx11' 'xorgproto' 'libdrm' 'libxshmfence' 'libxxf86vm' + 'libxdamage' 'libvdpau' 'libva' 'wayland' 'wayland-protocols' 'zstd' 'elfutils' 'llvm' + 'libomxil-bellagio' 'libclc' 'clang' 'libglvnd' 'libunwind' 'lm_sensors' 'libxrandr' + 'valgrind' 'glslang' 'vulkan-icd-loader' 'directx-headers' 'cmake' 'meson') +url="https://www.mesa3d.org/" +license=('custom') +source=(https://mesa.freedesktop.org/archive/mesa-${pkgver}.tar.xz{,.sig} + LICENSE) +sha512sums=('0991543e9435457fa4d077517408b3f197be32ed61a6c7ca34ddb3906eed208791f1a57227f74115f99df18e612efab1d2c6809b7cf426d273633b53d4aefc88' + 'SKIP' + 'f9f0d0ccf166fe6cb684478b6f1e1ab1f2850431c06aa041738563eb1808a004e52cdec823c103c9e180f03ffc083e95974d291353f0220fe52ae6d4897fecc7') +validpgpkeys=('8703B6700E7EE06D7A39B8D6EDAE37B02CEB490D' # Emil Velikov + '946D09B5E4C9845E63075FF1D961C596A7203456' # Andres Gomez + 'E3E8F480C52ADD73B278EE78E1ECBE07D7D70895' # Juan Antonio Suárez Romero (Igalia, S.L.) + 'A5CC9FEC93F2F837CB044912336909B6B25FADFA' # Juan A. Suarez Romero + '71C4B75620BC75708B4BDB254C95FAAB3EB073EC' # Dylan Baker + '57551DE15B968F6341C248F68D8E31AFC32428A6') # Eric Engestrom + +prepare() { + cd mesa-$pkgver + +} + +build() { + arch-meson mesa-$pkgver build \ + -D b_lto=true \ + -D b_ndebug=true \ + -D platforms=x11,wayland \ + -D dri-drivers=i915,i965,r100,r200,nouveau \ + -D gallium-drivers=r300,r600,radeonsi,nouveau,virgl,svga,swrast,iris,crocus,zink,d3d12 \ + -D vulkan-drivers=amd,intel,swrast \ + -D vulkan-layers=device-select,intel-nullhw,overlay \ + -D swr-arches=avx,avx2 \ + -D dri3=enabled \ + -D egl=enabled \ + -D gallium-extra-hud=true \ + -D gallium-nine=true \ + -D gallium-omx=bellagio \ + -D gallium-opencl=icd \ + -D gallium-va=enabled \ + -D gallium-vdpau=enabled \ + -D gallium-xa=enabled \ + -D gallium-xvmc=disabled \ + -D gbm=enabled \ + -D gles1=disabled \ + -D gles2=enabled \ + -D glvnd=true \ + -D glx=dri \ + -D libunwind=enabled \ + -D llvm=enabled \ + -D lmsensors=enabled \ + -D osmesa=true \ + -D shared-glapi=enabled \ + -D microsoft-clc=disabled \ + -D valgrind=enabled + + # Print config + meson configure build + + ninja -C build + meson compile -C build + + # fake installation to be seperated into packages + # outside of fakeroot but mesa doesn't need to chown/mod + DESTDIR="${srcdir}/fakeinstall" meson install -C build +} + +_install() { + local src f dir + for src; do + f="${src#fakeinstall/}" + dir="${pkgdir}/${f%/*}" + install -m755 -d "${dir}" + mv -v "${src}" "${dir}/" + done +} + +package_vulkan-mesa-layers() { + pkgdesc="Mesa's Vulkan layers" + depends=('libdrm' 'libxcb' 'wayland' 'python') + conflicts=('vulkan-mesa-layer') + replaces=('vulkan-mesa-layer') + + _install fakeinstall/usr/share/vulkan/explicit_layer.d + _install fakeinstall/usr/share/vulkan/implicit_layer.d + _install fakeinstall/usr/lib/libVkLayer_*.so + _install fakeinstall/usr/bin/mesa-overlay-control.py + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_opencl-mesa() { + pkgdesc="OpenCL support for AMD/ATI Radeon mesa drivers" + depends=('libdrm' 'libclc' 'clang') + optdepends=('opencl-headers: headers necessary for OpenCL development') + provides=('opencl-driver') + + _install fakeinstall/etc/OpenCL + _install fakeinstall/usr/lib/lib*OpenCL* + _install fakeinstall/usr/lib/gallium-pipe + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_vulkan-intel() { + pkgdesc="Intel's Vulkan mesa driver" + depends=('wayland' 'libx11' 'libxshmfence' 'libdrm' 'zstd') + optdepends=('vulkan-mesa-layers: additional vulkan layers') + provides=('vulkan-driver') + + _install fakeinstall/usr/share/vulkan/icd.d/intel_icd*.json + _install fakeinstall/usr/lib/libvulkan_intel.so + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_vulkan-radeon() { + pkgdesc="Radeon's Vulkan mesa driver" + depends=('wayland' 'libx11' 'libxshmfence' 'libelf' 'libdrm' 'llvm-libs') + optdepends=('vulkan-mesa-layers: additional vulkan layers') + provides=('vulkan-driver') + + _install fakeinstall/usr/share/vulkan/icd.d/radeon_icd*.json + _install fakeinstall/usr/lib/libvulkan_radeon.so + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_vulkan-swrast() { + pkgdesc="Vulkan software rasteriser driver" + depends=('wayland' 'libx11' 'libxshmfence' 'libdrm' 'zstd' 'llvm-libs') + optdepends=('vulkan-mesa-layers: additional vulkan layers') + conflicts=('vulkan-mesa') + replaces=('vulkan-mesa') + provides=('vulkan-driver') + + _install fakeinstall/usr/share/vulkan/icd.d/lvp_icd*.json + _install fakeinstall/usr/lib/libvulkan_lvp.so + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_libva-mesa-driver() { + pkgdesc="VA-API implementation for gallium" + depends=('libdrm' 'libx11' 'llvm-libs' 'expat' 'libelf' 'libxshmfence') + depends+=('libexpat.so') + + _install fakeinstall/usr/lib/dri/*_drv_video.so + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_mesa-vdpau() { + pkgdesc="Mesa VDPAU drivers" + depends=('libdrm' 'libx11' 'llvm-libs' 'expat' 'libelf' 'libxshmfence') + depends+=('libexpat.so') + + _install fakeinstall/usr/lib/vdpau + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_mesa() { + depends=('libdrm' 'wayland' 'libxxf86vm' 'libxdamage' 'libxshmfence' 'libelf' + 'libomxil-bellagio' 'libunwind' 'llvm-libs' 'lm_sensors' 'libglvnd' + 'zstd' 'vulkan-icd-loader') + depends+=('libsensors.so' 'libexpat.so' 'libvulkan.so') + optdepends=('opengl-man-pages: for the OpenGL API man pages' + 'mesa-vdpau: for accelerated video playback' + 'libva-mesa-driver: for accelerated video playback') + provides=('mesa-libgl' 'opengl-driver') + conflicts=('mesa-libgl') + replaces=('mesa-libgl') + + _install fakeinstall/usr/share/drirc.d/00-mesa-defaults.conf + _install fakeinstall/usr/share/glvnd/egl_vendor.d/50_mesa.json + + # ati-dri, nouveau-dri, intel-dri, svga-dri, swrast, swr + _install fakeinstall/usr/lib/dri/*_dri.so + + _install fakeinstall/usr/lib/bellagio + _install fakeinstall/usr/lib/d3d + _install fakeinstall/usr/lib/lib{gbm,glapi}.so* + _install fakeinstall/usr/lib/libOSMesa.so* + _install fakeinstall/usr/lib/libxatracker.so* + + _install fakeinstall/usr/include + _install fakeinstall/usr/lib/pkgconfig + + # libglvnd support + _install fakeinstall/usr/lib/libGLX_mesa.so* + _install fakeinstall/usr/lib/libEGL_mesa.so* + + # indirect rendering + ln -s /usr/lib/libGLX_mesa.so.0 "${pkgdir}/usr/lib/libGLX_indirect.so.0" + + # make sure there are no files left to install + find fakeinstall -depth -print0 | xargs -0 rmdir + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} diff --git a/mesa/PKGBUILD.21 b/mesa/PKGBUILD.21 new file mode 100644 index 0000000..70705b4 --- /dev/null +++ b/mesa/PKGBUILD.21 @@ -0,0 +1,223 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgbase=mesa +pkgname=('vulkan-mesa-layers' 'opencl-mesa' 'vulkan-intel' 'vulkan-radeon' 'vulkan-swrast' 'libva-mesa-driver' 'mesa-vdpau' 'mesa') +pkgdesc="An open-source implementation of the OpenGL specification" +pkgver=21.3.7 +pkgrel=02 +arch=('x86_64') +makedepends=('python-mako' 'libxml2' 'libx11' 'xorgproto' 'libdrm' 'libxshmfence' 'libxxf86vm' + 'libxdamage' 'libvdpau' 'libva' 'wayland' 'wayland-protocols' 'zstd' 'elfutils' 'llvm' + 'libomxil-bellagio' 'libclc' 'clang' 'libglvnd' 'libunwind' 'lm_sensors' 'libxrandr' + 'valgrind' 'glslang' 'vulkan-icd-loader' 'directx-headers' 'cmake' 'meson') +url="https://www.mesa3d.org/" +source=(https://mesa.freedesktop.org/archive/mesa-${pkgver}.tar.xz{,.sig} +# 0001-iris-implement-inter-context-busy-tracking.patch + LICENSE) + +prepare() { + cd mesa-$pkgver + +# # FS#73501 +# patch -Np1 -i ../0001-iris-implement-inter-context-busy-tracking.patch +} + +build() { + arch-meson mesa-$pkgver build \ + -D b_lto=true \ + -D b_ndebug=true \ + -D platforms=x11,wayland \ + -D dri-drivers=i915,i965,r100,r200,nouveau \ + -D gallium-drivers=r300,r600,radeonsi,nouveau,virgl,svga,swrast,iris,crocus,zink,d3d12 \ + -D vulkan-drivers=amd,intel,swrast \ + -D vulkan-layers=device-select,intel-nullhw,overlay \ + -D swr-arches=avx,avx2 \ + -D dri3=enabled \ + -D egl=enabled \ + -D gallium-extra-hud=true \ + -D gallium-nine=true \ + -D gallium-omx=bellagio \ + -D gallium-opencl=icd \ + -D gallium-va=enabled \ + -D gallium-vdpau=enabled \ + -D gallium-xa=enabled \ + -D gallium-xvmc=disabled \ + -D gbm=enabled \ + -D gles1=disabled \ + -D gles2=enabled \ + -D glvnd=true \ + -D glx=dri \ + -D libunwind=enabled \ + -D llvm=enabled \ + -D lmsensors=enabled \ + -D osmesa=true \ + -D shared-glapi=enabled \ + -D microsoft-clc=disabled \ + -D valgrind=enabled + + # Print config + meson configure build + + ninja -C build + meson compile -C build + + # fake installation to be seperated into packages + # outside of fakeroot but mesa doesn't need to chown/mod + DESTDIR="${srcdir}/fakeinstall" meson install -C build +} + +_install() { + local src f dir + for src; do + f="${src#fakeinstall/}" + dir="${pkgdir}/${f%/*}" + install -m755 -d "${dir}" + mv -v "${src}" "${dir}/" + done +} + +package_vulkan-mesa-layers() { + pkgdesc="Mesa's Vulkan layers" + depends=('libdrm' 'libxcb' 'wayland' 'python') + conflicts=('vulkan-mesa-layer') + replaces=('vulkan-mesa-layer') + + _install fakeinstall/usr/share/vulkan/explicit_layer.d + _install fakeinstall/usr/share/vulkan/implicit_layer.d + _install fakeinstall/usr/lib/libVkLayer_*.so + _install fakeinstall/usr/bin/mesa-overlay-control.py + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_opencl-mesa() { + pkgdesc="OpenCL support for AMD/ATI Radeon mesa drivers" + depends=('libdrm' 'libclc' 'clang') + optdepends=('opencl-headers: headers necessary for OpenCL development') + provides=('opencl-driver') + + _install fakeinstall/etc/OpenCL + _install fakeinstall/usr/lib/lib*OpenCL* + _install fakeinstall/usr/lib/gallium-pipe + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_vulkan-intel() { + pkgdesc="Intel's Vulkan mesa driver" + depends=('wayland' 'libx11' 'libxshmfence' 'libdrm' 'zstd') + optdepends=('vulkan-mesa-layers: additional vulkan layers') + provides=('vulkan-driver') + + _install fakeinstall/usr/share/vulkan/icd.d/intel_icd*.json + _install fakeinstall/usr/lib/libvulkan_intel.so + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_vulkan-radeon() { + pkgdesc="Radeon's Vulkan mesa driver" + depends=('wayland' 'libx11' 'libxshmfence' 'libelf' 'libdrm' 'llvm-libs') + optdepends=('vulkan-mesa-layers: additional vulkan layers') + provides=('vulkan-driver') + + _install fakeinstall/usr/share/vulkan/icd.d/radeon_icd*.json + _install fakeinstall/usr/lib/libvulkan_radeon.so + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_vulkan-swrast() { + pkgdesc="Vulkan software rasteriser driver" + depends=('wayland' 'libx11' 'libxshmfence' 'libdrm' 'zstd' 'llvm-libs') + optdepends=('vulkan-mesa-layers: additional vulkan layers') + conflicts=('vulkan-mesa') + replaces=('vulkan-mesa') + provides=('vulkan-driver') + + _install fakeinstall/usr/share/vulkan/icd.d/lvp_icd*.json + _install fakeinstall/usr/lib/libvulkan_lvp.so + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_libva-mesa-driver() { + pkgdesc="VA-API implementation for gallium" + depends=('libdrm' 'libx11' 'llvm-libs' 'expat' 'libelf' 'libxshmfence') + depends+=('libexpat.so') + + _install fakeinstall/usr/lib/dri/*_drv_video.so + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_mesa-vdpau() { + pkgdesc="Mesa VDPAU drivers" + depends=('libdrm' 'libx11' 'llvm-libs' 'expat' 'libelf' 'libxshmfence') + depends+=('libexpat.so') + + _install fakeinstall/usr/lib/vdpau + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_mesa() { + depends=('libdrm' 'wayland' 'libxxf86vm' 'libxdamage' 'libxshmfence' 'libelf' + 'libomxil-bellagio' 'libunwind' 'llvm-libs' 'lm_sensors' 'libglvnd' + 'zstd' 'vulkan-icd-loader') + depends+=('libsensors.so' 'libexpat.so' 'libvulkan.so') + optdepends=('opengl-man-pages: for the OpenGL API man pages' + 'mesa-vdpau: for accelerated video playback' + 'libva-mesa-driver: for accelerated video playback') + provides=('mesa-libgl' 'opengl-driver') + conflicts=('mesa-libgl') + replaces=('mesa-libgl') + + _install fakeinstall/usr/share/drirc.d/00-mesa-defaults.conf + _install fakeinstall/usr/share/glvnd/egl_vendor.d/50_mesa.json + + # ati-dri, nouveau-dri, intel-dri, svga-dri, swrast, swr + _install fakeinstall/usr/lib/dri/*_dri.so + + _install fakeinstall/usr/lib/bellagio + _install fakeinstall/usr/lib/d3d + _install fakeinstall/usr/lib/lib{gbm,glapi}.so* + _install fakeinstall/usr/lib/libOSMesa.so* + _install fakeinstall/usr/lib/libxatracker.so* + + _install fakeinstall/usr/include + _install fakeinstall/usr/lib/pkgconfig + + # libglvnd support + _install fakeinstall/usr/lib/libGLX_mesa.so* + _install fakeinstall/usr/lib/libEGL_mesa.so* + + # indirect rendering + ln -s /usr/lib/libGLX_mesa.so.0 "${pkgdir}/usr/lib/libGLX_indirect.so.0" + + # make sure there are no files left to install + find fakeinstall -depth -print0 | xargs -0 rmdir + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +#---- license gpg-key sha256sums ---- + +license=('custom') + +validpgpkeys=('8703B6700E7EE06D7A39B8D6EDAE37B02CEB490D' # Emil Velikov + '946D09B5E4C9845E63075FF1D961C596A7203456' # Andres Gomez + 'E3E8F480C52ADD73B278EE78E1ECBE07D7D70895' # Juan Antonio Suárez Romero (Igalia, S.L.) + 'A5CC9FEC93F2F837CB044912336909B6B25FADFA' # Juan A. Suarez Romero + '71C4B75620BC75708B4BDB254C95FAAB3EB073EC' # Dylan Baker + '57551DE15B968F6341C248F68D8E31AFC32428A6') # Eric Engestrom + +sha256sums=(b4fa9db7aa61bf209ef0b40bef83080999d86ad98df8b8b4fada7c128a1efc3d # mesa-21.3.7.tar.xz + 13cd1ad5f73a581b079dbe8b6deefa3b221ad22082c2a925f8f2664822bd6f58 # mesa-21.3.7.tar.xz.sig + 7052ba73bb07ea78873a2431ee4e828f4e72bda7d176d07f770fa48373dec537) # LICENSE + diff --git a/mesa/PKGBUILD.22 b/mesa/PKGBUILD.22 new file mode 100644 index 0000000..6c57493 --- /dev/null +++ b/mesa/PKGBUILD.22 @@ -0,0 +1,220 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgbase=mesa +pkgname=('vulkan-mesa-layers' 'opencl-mesa' 'vulkan-intel' 'vulkan-radeon' 'vulkan-swrast' 'libva-mesa-driver' 'mesa-vdpau' 'mesa') +pkgdesc="An open-source implementation of the OpenGL specification" +pkgver=22.0.0 +pkgrel=01 +arch=('x86_64') +makedepends=('python-mako' 'libxml2' 'libx11' 'xorgproto' 'libdrm' 'libxshmfence' 'libxxf86vm' + 'libxdamage' 'libvdpau' 'libva' 'wayland' 'wayland-protocols' 'zstd' 'elfutils' 'llvm' + 'libomxil-bellagio' 'libclc' 'clang' 'libglvnd' 'libunwind' 'lm_sensors' 'libxrandr' + 'valgrind' 'glslang' 'vulkan-icd-loader' 'directx-headers' 'cmake' 'meson') +url="https://www.mesa3d.org/" +source=(https://mesa.freedesktop.org/archive/mesa-${pkgver}.tar.xz{,.sig} +# 0001-iris-implement-inter-context-busy-tracking.patch + LICENSE) + +prepare() { + cd mesa-$pkgver + +# # FS#73501 +# patch -Np1 -i ../0001-iris-implement-inter-context-busy-tracking.patch +} + +build() { + arch-meson mesa-$pkgver build \ + -D b_lto=true \ + -D b_ndebug=true \ + -D platforms=x11,wayland \ + -D gallium-drivers=r300,r600,radeonsi,nouveau,virgl,svga,swrast,iris,crocus,zink,d3d12 \ + -D vulkan-drivers=amd,intel,swrast \ + -D vulkan-layers=device-select,intel-nullhw,overlay \ + -D dri3=enabled \ + -D egl=enabled \ + -D gallium-extra-hud=true \ + -D gallium-nine=true \ + -D gallium-omx=bellagio \ + -D gallium-opencl=icd \ + -D gallium-va=enabled \ + -D gallium-vdpau=enabled \ + -D gallium-xa=enabled \ + -D gallium-xvmc=disabled \ + -D gbm=enabled \ + -D gles1=disabled \ + -D gles2=enabled \ + -D glvnd=true \ + -D glx=dri \ + -D libunwind=enabled \ + -D llvm=enabled \ + -D lmsensors=enabled \ + -D osmesa=true \ + -D shared-glapi=enabled \ + -D microsoft-clc=disabled \ + -D valgrind=enabled + + # Print config + meson configure build + + ninja -C build + meson compile -C build + + # fake installation to be seperated into packages + # outside of fakeroot but mesa doesn't need to chown/mod + DESTDIR="${srcdir}/fakeinstall" meson install -C build +} + +_install() { + local src f dir + for src; do + f="${src#fakeinstall/}" + dir="${pkgdir}/${f%/*}" + install -m755 -d "${dir}" + mv -v "${src}" "${dir}/" + done +} + +package_vulkan-mesa-layers() { + pkgdesc="Mesa's Vulkan layers" + depends=('libdrm' 'libxcb' 'wayland' 'python') + conflicts=('vulkan-mesa-layer') + replaces=('vulkan-mesa-layer') + + _install fakeinstall/usr/share/vulkan/explicit_layer.d + _install fakeinstall/usr/share/vulkan/implicit_layer.d + _install fakeinstall/usr/lib/libVkLayer_*.so + _install fakeinstall/usr/bin/mesa-overlay-control.py + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_opencl-mesa() { + pkgdesc="OpenCL support for AMD/ATI Radeon mesa drivers" + depends=('libdrm' 'libclc' 'clang') + optdepends=('opencl-headers: headers necessary for OpenCL development') + provides=('opencl-driver') + + _install fakeinstall/etc/OpenCL + _install fakeinstall/usr/lib/lib*OpenCL* + _install fakeinstall/usr/lib/gallium-pipe + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_vulkan-intel() { + pkgdesc="Intel's Vulkan mesa driver" + depends=('wayland' 'libx11' 'libxshmfence' 'libdrm' 'zstd') + optdepends=('vulkan-mesa-layers: additional vulkan layers') + provides=('vulkan-driver') + + _install fakeinstall/usr/share/vulkan/icd.d/intel_icd*.json + _install fakeinstall/usr/lib/libvulkan_intel.so + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_vulkan-radeon() { + pkgdesc="Radeon's Vulkan mesa driver" + depends=('wayland' 'libx11' 'libxshmfence' 'libelf' 'libdrm' 'llvm-libs') + optdepends=('vulkan-mesa-layers: additional vulkan layers') + provides=('vulkan-driver') + + _install fakeinstall/usr/share/vulkan/icd.d/radeon_icd*.json + _install fakeinstall/usr/lib/libvulkan_radeon.so + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_vulkan-swrast() { + pkgdesc="Vulkan software rasteriser driver" + depends=('wayland' 'libx11' 'libxshmfence' 'libdrm' 'zstd' 'llvm-libs') + optdepends=('vulkan-mesa-layers: additional vulkan layers') + conflicts=('vulkan-mesa') + replaces=('vulkan-mesa') + provides=('vulkan-driver') + + _install fakeinstall/usr/share/vulkan/icd.d/lvp_icd*.json + _install fakeinstall/usr/lib/libvulkan_lvp.so + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_libva-mesa-driver() { + pkgdesc="VA-API implementation for gallium" + depends=('libdrm' 'libx11' 'llvm-libs' 'expat' 'libelf' 'libxshmfence') + depends+=('libexpat.so') + + _install fakeinstall/usr/lib/dri/*_drv_video.so + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_mesa-vdpau() { + pkgdesc="Mesa VDPAU drivers" + depends=('libdrm' 'libx11' 'llvm-libs' 'expat' 'libelf' 'libxshmfence') + depends+=('libexpat.so') + + _install fakeinstall/usr/lib/vdpau + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +package_mesa() { + depends=('libdrm' 'wayland' 'libxxf86vm' 'libxdamage' 'libxshmfence' 'libelf' + 'libomxil-bellagio' 'libunwind' 'llvm-libs' 'lm_sensors' 'libglvnd' + 'zstd' 'vulkan-icd-loader') + depends+=('libsensors.so' 'libexpat.so' 'libvulkan.so') + optdepends=('opengl-man-pages: for the OpenGL API man pages' + 'mesa-vdpau: for accelerated video playback' + 'libva-mesa-driver: for accelerated video playback') + provides=('mesa-libgl' 'opengl-driver') + conflicts=('mesa-libgl') + replaces=('mesa-libgl') + + _install fakeinstall/usr/share/drirc.d/00-mesa-defaults.conf + _install fakeinstall/usr/share/glvnd/egl_vendor.d/50_mesa.json + + # ati-dri, nouveau-dri, intel-dri, svga-dri, swrast, swr + _install fakeinstall/usr/lib/dri/*_dri.so + + _install fakeinstall/usr/lib/bellagio + _install fakeinstall/usr/lib/d3d + _install fakeinstall/usr/lib/lib{gbm,glapi}.so* + _install fakeinstall/usr/lib/libOSMesa.so* + _install fakeinstall/usr/lib/libxatracker.so* + + _install fakeinstall/usr/include + _install fakeinstall/usr/lib/pkgconfig + + # libglvnd support + _install fakeinstall/usr/lib/libGLX_mesa.so* + _install fakeinstall/usr/lib/libEGL_mesa.so* + + # indirect rendering + ln -s /usr/lib/libGLX_mesa.so.0 "${pkgdir}/usr/lib/libGLX_indirect.so.0" + + # make sure there are no files left to install + find fakeinstall -depth -print0 | xargs -0 rmdir + + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE +} + +#---- license gpg-key sha256sums ---- + +license=('custom') + +validpgpkeys=('8703B6700E7EE06D7A39B8D6EDAE37B02CEB490D' # Emil Velikov + '946D09B5E4C9845E63075FF1D961C596A7203456' # Andres Gomez + 'E3E8F480C52ADD73B278EE78E1ECBE07D7D70895' # Juan Antonio Suárez Romero (Igalia, S.L.) + 'A5CC9FEC93F2F837CB044912336909B6B25FADFA' # Juan A. Suarez Romero + '71C4B75620BC75708B4BDB254C95FAAB3EB073EC' # Dylan Baker + '57551DE15B968F6341C248F68D8E31AFC32428A6') # Eric Engestrom + +sha256sums=(b4fa9db7aa61bf209ef0b40bef83080999d86ad98df8b8b4fada7c128a1efc3d # mesa-21.3.7.tar.xz + 13cd1ad5f73a581b079dbe8b6deefa3b221ad22082c2a925f8f2664822bd6f58 # mesa-21.3.7.tar.xz.sig + 7052ba73bb07ea78873a2431ee4e828f4e72bda7d176d07f770fa48373dec537) # LICENSE diff --git a/mesa/clean b/mesa/clean new file mode 100644 index 0000000..c6cd85b --- /dev/null +++ b/mesa/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,mesa*.tar.xz*} diff --git a/mesa/config b/mesa/config new file mode 100644 index 0000000..0e13ae5 --- /dev/null +++ b/mesa/config @@ -0,0 +1,74 @@ +Compiler for C supports arguments -Qunused-arguments: NO +Compiler for C supports arguments -Werror=thread-safety: NO +Compiler for C++ supports arguments -Qunused-arguments: NO +Compiler for C supports arguments -Wno-initializer-overrides: NO +Compiler for C supports arguments -Werror=gnu-empty-initializer: NO +Compiler for C++ supports arguments -Werror=gnu-empty-initializer: NO +Compiler for C supports arguments -Wmicrosoft-enum-value: NO +Header has symbol "major" : NO +Check usable header "xlocale.h" : NO +Check usable header "pthread_np.h" : NO +Checking for function "qsort_s" : NO +Checking for function "dlopen" : NO + +Compiler for C supports arguments -Qunused-arguments: NO +Compiler for C supports arguments -fno-common: YES +Compiler for C supports arguments -Werror=format: YES +Compiler for C supports arguments -Wformat-security: YES +Compiler for C supports arguments -Werror=thread-safety: NO +Compiler for C++ supports arguments -Werror=return-type: YES +Compiler for C++ supports arguments -Werror=empty-body: YES +Compiler for C++ supports arguments -Wno-non-virtual-dtor: YES +Compiler for C++ supports arguments -Wno-missing-field-initializers: YES +Compiler for C++ supports arguments -Wno-format-truncation: YES +Compiler for C++ supports arguments -fno-math-errno: YES +Compiler for C++ supports arguments -fno-trapping-math: YES +Compiler for C++ supports arguments -Qunused-arguments: NO +Compiler for C++ supports arguments -flifetime-dse=1: YES +Compiler for C++ supports arguments -Werror=format: YES +Compiler for C++ supports arguments -Wformat-security: YES +Compiler for C supports arguments -Wno-override-init: YES +Compiler for C supports arguments -Wno-initializer-overrides: NO +Compiler for C supports arguments -Werror=pointer-arith: YES +Compiler for C++ supports arguments -Werror=pointer-arith: YES +Compiler for C supports arguments -Werror=gnu-empty-initializer: NO +Compiler for C++ supports arguments -Werror=gnu-empty-initializer: NO +Compiler for C supports arguments -Wmicrosoft-enum-value: NO +Checking if "GCC atomic builtins" : compiles: YES +Checking if "GCC atomic builtins required -latomic" : links: YES +Checking if "GCC 64bit atomics" with dependency : links: YES +Library ws2_32 found: NO +Header has symbol "major" : YES +Header has symbol "minor" : YES +Header has symbol "makedev" : YES +Header has symbol "major" : NO +Check usable header "sched.h" : YES +Checking for function "sched_getaffinity" : YES +Check usable header "xlocale.h" : NO +Check usable header "linux/futex.h" : YES +Check usable header "endian.h" : YES +Check usable header "dlfcn.h" : YES +Check usable header "sys/shm.h" : YES +Check usable header "cet.h" : YES +Check usable header "pthread_np.h" : NO +Checking for function "strtof" : YES +Checking for function "mkostemp" : YES +Checking for function "timespec_get" : YES +Checking for function "memfd_create" : YES +Checking for function "random_r" : YES +Checking for function "flock" : YES +Checking for function "strtok_r" : YES +Checking for function "getrandom" : YES +Checking for function "qsort_r" : YES +Checking for function "qsort_s" : NO +Header has symbol "program_invocation_name" : YES +Checking for function "posix_memalign" : YES +Checking whether type "struct dirent" has member "d_type" : YES +Checking if "strtod has locale support" : links: YES +Checking if "Bsymbolic" : links: YES +Checking if "gc-sections" : links: YES +Checking if "version-script" : links: YES +Checking if "dynamic-list" : links: YES +Compiler for C supports link arguments -Wl,--build-id=sha1: YES +Checking for function "dlopen" : NO + diff --git a/mesa/deps b/mesa/deps new file mode 100644 index 0000000..ef139d7 --- /dev/null +++ b/mesa/deps @@ -0,0 +1,28 @@ +python-mako +libx11 +xorgproto +libdrm +libxshmfence +libxxf86vm +libxdamage +libvdpau +libva +wayland +wayland-protocols +llvm +libomxil-bellagio +libclc +clang +libglvnd +libunwind +lm_sensors +libxrandr +valgrind +glslang +vulkan-icd-loader +directx-headers +cmake +meson +bison +byacc +polly diff --git a/mesa/key b/mesa/key new file mode 100644 index 0000000..4f9bdef --- /dev/null +++ b/mesa/key @@ -0,0 +1 @@ +gpg -v --recv-key 4C95FAAB3EB073EC diff --git a/mesa/options b/mesa/options new file mode 100644 index 0000000..149468e --- /dev/null +++ b/mesa/options @@ -0,0 +1,38 @@ +mesa 22.0.0 + User defined options + auto_features : enabled + buildtype : plain + libexecdir : lib + prefix : /usr + sbindir : bin + wrap_mode : nodownload + b_lto : true + b_ndebug : false + b_pie : true + dri3 : enabled + egl : enabled + gallium-drivers : r300,r600,radeonsi,nouveau,virgl,svga,swrast,iris,crocus,zink,d3d12 + gallium-extra-hud: true + gallium-nine : true + gallium-omx : bellagio + gallium-opencl : icd + gallium-va : enabled + gallium-vdpau : enabled + gallium-xa : enabled + gallium-xvmc : disabled + gbm : enabled + gles1 : disabled + gles2 : enabled + glvnd : true + glx : dri + libunwind : enabled + llvm : enabled + lmsensors : enabled + microsoft-clc : disabled + osmesa : true + platforms : x11,wayland + shared-glapi : enabled + valgrind : enabled + vulkan-drivers : amd,intel,swrast + vulkan-layers : device-select,intel-nullhw,overlay + zstd : disabled diff --git a/mesa/pkglist b/mesa/pkglist new file mode 100644 index 0000000..7f956f9 --- /dev/null +++ b/mesa/pkglist @@ -0,0 +1,8 @@ +/var/cache/jobextra/libva-mesa-driver-21.3.7-01-x86_64.pkg.tar.xz +/var/cache/jobextra/mesa-21.3.7-01-x86_64.pkg.tar.xz +/var/cache/jobextra/mesa-vdpau-21.3.7-01-x86_64.pkg.tar.xz +/var/cache/jobextra/opencl-mesa-21.3.7-01-x86_64.pkg.tar.xz +/var/cache/jobextra/vulkan-intel-21.3.7-01-x86_64.pkg.tar.xz +/var/cache/jobextra/vulkan-mesa-layers-21.3.7-01-x86_64.pkg.tar.xz +/var/cache/jobextra/vulkan-radeon-21.3.7-01-x86_64.pkg.tar.xz +/var/cache/jobextra/vulkan-swrast-21.3.7-01-x86_64.pkg.tar.xz diff --git a/mesa/time b/mesa/time new file mode 100644 index 0000000..12356ca --- /dev/null +++ b/mesa/time @@ -0,0 +1,5 @@ + +real 34m35.134s +user 120m40.852s +sys 3m37.826s + diff --git a/meson/PKGBUILD b/meson/PKGBUILD new file mode 100644 index 0000000..af283e8 --- /dev/null +++ b/meson/PKGBUILD @@ -0,0 +1,73 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=meson +pkgver=0.61.3 +pkgrel=01 +pkgdesc='High productivity build system' +url='https://mesonbuild.com/' +arch=('any') +depends=('python-setuptools' 'ninja') +checkdepends=('gcc-objc' 'vala' 'rust' 'gcc-fortran' 'mono' 'boost' 'qt5-base' 'git' 'cython' + 'gtkmm3' 'gtest' 'gmock' 'protobuf' 'wxgtk3' 'python-gobject' 'gobject-introspection' + 'itstool' 'gtk3' 'java-environment=8' 'gtk-doc' 'llvm' 'clang' 'sdl2' 'graphviz' + 'doxygen' 'vulkan-validation-layers' 'openssh' 'mercurial' 'gtk-sharp-2' 'qt5-tools' + 'libwmf' 'valgrind' 'cmake' 'netcdf-fortran' 'openmpi' 'nasm' 'gnustep-base' 'libelf' + 'python-pytest-xdist' 'python2-setuptools' 'ldc' 'rust-bindgen' 'cuda' 'hotdoc') + +source=(https://github.com/mesonbuild/meson/releases/download/${pkgver}/meson-${pkgver}.tar.gz{,.asc} + skip-test.diff + arch-meson + jobo-meson) + +prepare() { + cd ${pkgname}-${pkgver} + + ## Arch: Our containers do not allow sanitizers to run + patch -Np1 -i ../skip-test.diff +} + +build() { + cd ${pkgname}-${pkgver} + python setup.py build +} + +check() ( + cd ${pkgname}-${pkgver} + export LC_CTYPE=en_US.UTF-8 CPPFLAGS= CFLAGS= CXXFLAGS= LDFLAGS= + ./run_tests.py +) + +package() { + cd ${pkgname}-${pkgver} + python setup.py install --root="${pkgdir}" --optimize=1 --skip-build + + install -d "${pkgdir}/usr/share/vim/vimfiles" + cp -rt "${pkgdir}/usr/share/vim/vimfiles" data/syntax-highlighting/vim/*/ + + install -Dt "${pkgdir}/usr/share/bash-completion/completions" -m644 data/shell-completions/bash/* + install -Dt "${pkgdir}/usr/share/emacs/site-lisp" -m644 data/syntax-highlighting/emacs/* + install -Dt "${pkgdir}/usr/share/zsh/site-functions" -m644 data/shell-completions/zsh/* + + # Arch packaging helper + install -D ../arch-meson -t "${pkgdir}/usr/bin" + + # joborun-pkg packaging helper + install -D ../jobo-meson -t "${pkgdir}/usr/bin" + +} + +#---- license gpg-key sha256sums ---- + +license=('Apache') + +validpgpkeys=('19E2D6D9B46D8DAA6288F877C24E631BABB1FE70') # Jussi Pakkanen + +sha256sums=(9c884434469471f3fe0cbbceb9b9ea0c8047f19e792940e1df6595741aae251b # meson-0.61.3.tar.gz + 9235e2e45e938b963d7f24afa1a73165b43780bea6716140b56bd4677a485c87 # meson-0.61.3.tar.gz.asc + c57d93219cadd192d48eb24eedd1859d5949f1da30bd2d2d2c96b285eee2d259 # skip-test.diff + ac3387ed5759cc512b1f2a4e5b3dd940274b02f943a7e5d644792ee714e6b95e # arch-meson + b2aeae2787cf8f3ffb8778ee7f1a434895b1512bc0bdb33528c4cb2aeb067904) # jobo-meson diff --git a/meson/PKGBUILD-arch b/meson/PKGBUILD-arch new file mode 100644 index 0000000..971e171 --- /dev/null +++ b/meson/PKGBUILD-arch @@ -0,0 +1,61 @@ +# Maintainer: Jan Alexander Steffens (heftig) +# Maintainer: Levente Polyak +# Contributor: Anatol Pomozov + +pkgname=meson +pkgver=0.61.3 +pkgrel=1 +pkgdesc='High productivity build system' +url='https://mesonbuild.com/' +arch=('any') +license=('Apache') +depends=('python-setuptools' 'ninja') +checkdepends=('gcc-objc' 'vala' 'rust' 'gcc-fortran' 'mono' 'boost' 'qt5-base' 'git' 'cython' + 'gtkmm3' 'gtest' 'gmock' 'protobuf' 'wxgtk3' 'python-gobject' 'gobject-introspection' + 'itstool' 'gtk3' 'java-environment=8' 'gtk-doc' 'llvm' 'clang' 'sdl2' 'graphviz' + 'doxygen' 'vulkan-validation-layers' 'openssh' 'mercurial' 'gtk-sharp-2' 'qt5-tools' + 'libwmf' 'valgrind' 'cmake' 'netcdf-fortran' 'openmpi' 'nasm' 'gnustep-base' 'libelf' + 'python-pytest-xdist' 'python2-setuptools' 'ldc' 'rust-bindgen' 'cuda' 'hotdoc') +source=(https://github.com/mesonbuild/meson/releases/download/${pkgver}/meson-${pkgver}.tar.gz{,.asc} + skip-test.diff + arch-meson) +sha512sums=('955c56cbaeb23a33a5e536eee547312ca5f1122aaa03d839113a2b2bcd9a0486ab24d1783220d9981c29ed9b4bda06a971cb0e21aa9f32d57f6696fa27853da8' + 'SKIP' + '5a5cd1b2e12f63eab787e4e102f2bdf2b170f0a7f2675f6f4f8ae5dc8188ccab5f488dcecfbb3ab69e4c70e266d5bf5a8270214c0dc20efcca77bab976f6e38a' + 'f451f8a7ef9cf1dd724c2ce20bb85a3f1611b87b2e7a17ef0fdbe8ab82a67389f818ea30a5adfe8413143e4eac77ea2e0b8234b5b2466b41a892e2bd0435376c') +validpgpkeys=('19E2D6D9B46D8DAA6288F877C24E631BABB1FE70') # Jussi Pakkanen + +prepare() { + cd ${pkgname}-${pkgver} + + # Our containers do not allow sanitizers to run + patch -Np1 -i ../skip-test.diff +} + +build() { + cd ${pkgname}-${pkgver} + python setup.py build +} + +check() ( + cd ${pkgname}-${pkgver} + export LC_CTYPE=en_US.UTF-8 CPPFLAGS= CFLAGS= CXXFLAGS= LDFLAGS= + ./run_tests.py +) + +package() { + cd ${pkgname}-${pkgver} + python setup.py install --root="${pkgdir}" --optimize=1 --skip-build + + install -d "${pkgdir}/usr/share/vim/vimfiles" + cp -rt "${pkgdir}/usr/share/vim/vimfiles" data/syntax-highlighting/vim/*/ + + install -Dt "${pkgdir}/usr/share/bash-completion/completions" -m644 data/shell-completions/bash/* + install -Dt "${pkgdir}/usr/share/emacs/site-lisp" -m644 data/syntax-highlighting/emacs/* + install -Dt "${pkgdir}/usr/share/zsh/site-functions" -m644 data/shell-completions/zsh/* + + # Arch packaging helper + install -D ../arch-meson -t "${pkgdir}/usr/bin" +} + +# vim:set sw=2 et: diff --git a/meson/PKGBUILD-old b/meson/PKGBUILD-old new file mode 100644 index 0000000..32aaba0 --- /dev/null +++ b/meson/PKGBUILD-old @@ -0,0 +1,73 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=meson +pkgver=0.61.0 +pkgrel=04 +pkgdesc='High productivity build system' +url='https://mesonbuild.com/' +arch=('any') +depends=('python-setuptools' 'ninja') +checkdepends=('gcc-objc' 'vala' 'rust' 'gcc-fortran' 'mono' 'boost' 'qt5-base' 'git' 'cython' + 'gtkmm3' 'gtest' 'gmock' 'protobuf' 'wxgtk3' 'python-gobject' 'gobject-introspection' + 'itstool' 'gtk3' 'java-environment=8' 'gtk-doc' 'llvm' 'clang' 'sdl2' 'graphviz' + 'doxygen' 'vulkan-validation-layers' 'openssh' 'mercurial' 'gtk-sharp-2' 'qt5-tools' + 'libwmf' 'valgrind' 'cmake' 'netcdf-fortran' 'openmpi' 'nasm' 'gnustep-base' 'libelf' + 'python-pytest-xdist' 'python2-setuptools' 'ldc' 'rust-bindgen' 'hotdoc') + +source=(https://github.com/mesonbuild/meson/releases/download/${pkgver/rc/.rc}/meson-${pkgver}.tar.gz{,.asc} + skip-test.diff + arch-meson + jobo-meson) + +prepare() { + cd ${pkgname}-${pkgver} + + # Our containers do not allow sanitizers to run + patch -Np1 -i ../skip-test.diff +} + +build() { + cd ${pkgname}-${pkgver} + python setup.py build +} + +#check() ( +# cd ${pkgname}-${pkgver} +# export LC_CTYPE=en_US.UTF-8 CPPFLAGS= CFLAGS= CXXFLAGS= LDFLAGS= +# ./run_tests.py +#) + +package() { + cd ${pkgname}-${pkgver} + python setup.py install --root="${pkgdir}" --optimize=1 --skip-build + + install -d "${pkgdir}/usr/share/vim/vimfiles" + cp -rt "${pkgdir}/usr/share/vim/vimfiles" data/syntax-highlighting/vim/*/ + + install -Dt "${pkgdir}/usr/share/bash-completion/completions" -m644 data/shell-completions/bash/* + install -Dt "${pkgdir}/usr/share/emacs/site-lisp" -m644 data/syntax-highlighting/emacs/* + install -Dt "${pkgdir}/usr/share/zsh/site-functions" -m644 data/shell-completions/zsh/* + + # Arch packaging helper + install -D ../arch-meson -t "${pkgdir}/usr/bin" + + # joborun packaging helper + install -D ../jobo-meson -t "${pkgdir}/usr/bin" + +} + +#---- license gpg-key sha256sums ---- + +license=('Apache') + +validpgpkeys=('19E2D6D9B46D8DAA6288F877C24E631BABB1FE70') # Jussi Pakkanen + +sha256sums=(87ca5fa9358a01864529392bd64e027158eb94afca7c7766b1866ef27eccb98e # meson-0.60.3.tar.gz + 25c26bc3bc9127c8f31a5562148baaf8cc8af66a30c2b677ce370d564863e3ea # meson-0.60.3.tar.gz.asc + c57d93219cadd192d48eb24eedd1859d5949f1da30bd2d2d2c96b285eee2d259 # skip-test.diff + ac3387ed5759cc512b1f2a4e5b3dd940274b02f943a7e5d644792ee714e6b95e # arch-meson + b2aeae2787cf8f3ffb8778ee7f1a434895b1512bc0bdb33528c4cb2aeb067904) # jobo-meson diff --git a/meson/arch-meson b/meson/arch-meson new file mode 100644 index 0000000..695a947 --- /dev/null +++ b/meson/arch-meson @@ -0,0 +1,13 @@ +#!/bin/bash -ex +# Highly opinionated wrapper for Arch Linux packaging + +exec meson setup \ + --prefix /usr \ + --libexecdir lib \ + --sbindir bin \ + --buildtype plain \ + --auto-features enabled \ + --wrap-mode nodownload \ + -D b_lto=true \ + -D b_pie=true \ + "$@" diff --git a/meson/clean b/meson/clean new file mode 100644 index 0000000..3f8fcf2 --- /dev/null +++ b/meson/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,meson*.tar.gz*,*.patch} diff --git a/meson/deps b/meson/deps new file mode 100644 index 0000000..420f966 --- /dev/null +++ b/meson/deps @@ -0,0 +1,48 @@ +python-setuptools +ninja +gcc-objc +vala +rust +gcc-fortran +mono +boost +qt5-base +git +cython +gtkmm3 +gtest +protobuf +wxgtk3 +python-gobject +gobject-introspection +itstool +jdk8-openjdk +gtk-doc +llvm +clang +sdl2 +graphviz +doxygen +vulkan-validation-layers +openssh +mercurial +gtk-sharp-2 +qt5-tools +libwmf +valgrind +cmake +netcdf-fortran +openmpi +nasm +gnustep-base +python-pytest-xdist +python2-setuptools +ldc +rust-bindgen +cuda +hotdoc +ttf-liberation +jsoncpp +gettext +gtk3 +netcdf python-pytest-forked diff --git a/meson/jobo-meson b/meson/jobo-meson new file mode 100644 index 0000000..3904848 --- /dev/null +++ b/meson/jobo-meson @@ -0,0 +1,13 @@ +#!/bin/bash -ex +# Highly opinionated wrapper for Arch Linux packaging + +exec meson setup \ + --prefix /usr \ + --libexecdir lib \ + --sbindir bin \ + --buildtype plain \ + --auto-features disabled \ + --wrap-mode nodownload \ + -D b_lto=true \ + -D b_pie=true \ + "$@" diff --git a/meson/key b/meson/key new file mode 100644 index 0000000..e801643 --- /dev/null +++ b/meson/key @@ -0,0 +1 @@ +gpg -v --recv-key C24E631BABB1FE70 diff --git a/meson/skip-test.diff b/meson/skip-test.diff new file mode 100644 index 0000000..2ba0bb7 --- /dev/null +++ b/meson/skip-test.diff @@ -0,0 +1,23 @@ + unittests/linuxliketests.py | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git c/unittests/linuxliketests.py i/unittests/linuxliketests.py +index 7a0e46e03..67f0c426c 100644 +--- c/unittests/linuxliketests.py ++++ i/unittests/linuxliketests.py +@@ -343,6 +343,7 @@ class LinuxlikeTests(BasePlatformTests): + raise SkipTest('asan not available on Cygwin') + if is_openbsd(): + raise SkipTest('-fsanitize=address is not supported on OpenBSD') ++ raise SkipTest('cannot run sanitizers in containers without ptrace') + + testdir = os.path.join(self.framework_test_dir, '7 gnome') + self.init(testdir, extra_args=['-Db_sanitize=address', '-Db_lundef=false']) +@@ -998,6 +999,7 @@ class LinuxlikeTests(BasePlatformTests): + raise SkipTest('asan not available on Cygwin') + if is_openbsd(): + raise SkipTest('-fsanitize=address is not supported on OpenBSD') ++ raise SkipTest('cannot run sanitizers in containers without ptrace') + + testdir = os.path.join(self.common_test_dir, '13 pch') + self.init(testdir, extra_args=['-Db_sanitize=address', '-Db_lundef=false']) diff --git a/meson/sums b/meson/sums new file mode 100644 index 0000000..9154570 --- /dev/null +++ b/meson/sums @@ -0,0 +1,11 @@ +meson-0.61.0.tar.gz +meson-0.61.0.tar.gz.asc +81fbcd1df48f669b6b23b9dd0752d6d366cc9bf2.patch +bcfb4d0f46608db46cd8881e2a02ba6c33ff066e.patch +704e9802c9f424a57c32d9e63ececfece807529a.patch +63593a55288ee5b89fc9c298dbc300f9c6adaba9.patch +bda11fe25d1efe688d251148cb7cf7939cd50433.patch +9952446a2a28ea2b009f4b8b2a14ad50f0878bdd.patch +skip-test.diff +arch-meson +jobo-meson diff --git a/meson/time b/meson/time new file mode 100644 index 0000000..225ac9e --- /dev/null +++ b/meson/time @@ -0,0 +1,5 @@ + +real 9m33.129s +user 32m46.719s +sys 3m24.273s + diff --git a/nbd/PKGBUILD b/nbd/PKGBUILD new file mode 100644 index 0000000..ad76b2d --- /dev/null +++ b/nbd/PKGBUILD @@ -0,0 +1,59 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=nbd +pkgver=3.24 +pkgrel=01 +pkgdesc='tools for network block devices, allowing you to use remote block devices over TCP/IP w/o systemd' +arch=('x86_64') +url='https://nbd.sourceforge.io/' +depends=('glib2' 'gnutls' 'libnl') +backup=('etc/nbd-server/config') +source=("https://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.xz" + 'config' + 'sysusers_nbd.conf') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + ./configure \ + --prefix=/usr \ + --sbindir=/usr/bin \ + --sysconfdir=/etc \ + --enable-syslog \ + --disable-systemd + make +} + +# checks still fail... +#check() { +# cd "${srcdir}/${pkgname}-${pkgver}" +# +# make check +#} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" install + install -D -m0644 systemd/nbd@.service "${pkgdir}"/usr/lib/systemd/system/nbd@.service + + install -D -m0644 "${srcdir}"/config "${pkgdir}"/etc/nbd-server/config +# install -D -m0644 "${srcdir}"/nbd.service "${pkgdir}"/usr/lib/systemd/system/nbd.service + install -D -m0644 "${srcdir}"/sysusers_nbd.conf "${pkgdir}"/usr/lib/sysusers.d/nbd.conf + + install -D -m0644 doc/README "${pkgdir}"/usr/share/doc/nbd/README + rm -rf $pkgdir/usr/lib/systemd +} + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +sha256sums=(6877156d23a7b33f75eee89d2f5c2c91c542afc3cdcb636dea5a88539a58d10c # nbd-3.24.tar.xz + ee2e9fbbeb8a8b9b71d16b6f32eb41788f6def9d00cc4a47897ed3cb97cdde7c # config + 3fd98fe87d0b31b82126dc669f00355865f58fae81af3fccbc0d06504baef6cd) # sysusers_nbd.conf diff --git a/nbd/PKGBUILD-arch b/nbd/PKGBUILD-arch new file mode 100644 index 0000000..86f5d72 --- /dev/null +++ b/nbd/PKGBUILD-arch @@ -0,0 +1,54 @@ +# Maintainer: Christian Hesse +# Contributor: Sven-Hendrik Haase +# Contributor: Ionut Biru +# Contributor: Gerhard Brauer + +pkgname=nbd +pkgver=3.24 +pkgrel=1 +pkgdesc='tools for network block devices, allowing you to use remote block devices over TCP/IP' +arch=('x86_64') +url='https://nbd.sourceforge.io/' +license=('GPL') +depends=('glib2' 'gnutls' 'libnl') +backup=('etc/nbd-server/config') +source=("https://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.xz" + 'config' + 'nbd.service' + 'sysusers_nbd.conf') +sha256sums=('6877156d23a7b33f75eee89d2f5c2c91c542afc3cdcb636dea5a88539a58d10c' + 'ee2e9fbbeb8a8b9b71d16b6f32eb41788f6def9d00cc4a47897ed3cb97cdde7c' + '1b1add55d82d7623eabf7ff3dfec15c1fbe3c340fa74160df3d60e91eb1c71ba' + '3fd98fe87d0b31b82126dc669f00355865f58fae81af3fccbc0d06504baef6cd') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + ./configure \ + --prefix=/usr \ + --sbindir=/usr/bin \ + --sysconfdir=/etc \ + --enable-syslog + + make +} + +# checks still fail... +#check() { +# cd "${srcdir}/${pkgname}-${pkgver}" +# +# make check +#} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" install + install -D -m0644 systemd/nbd@.service "${pkgdir}"/usr/lib/systemd/system/nbd@.service + + install -D -m0644 "${srcdir}"/config "${pkgdir}"/etc/nbd-server/config + install -D -m0644 "${srcdir}"/nbd.service "${pkgdir}"/usr/lib/systemd/system/nbd.service + install -D -m0644 "${srcdir}"/sysusers_nbd.conf "${pkgdir}"/usr/lib/sysusers.d/nbd.conf + + install -D -m0644 doc/README "${pkgdir}"/usr/share/doc/nbd/README +} diff --git a/nbd/clean b/nbd/clean new file mode 100644 index 0000000..45aa1ef --- /dev/null +++ b/nbd/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,nbd*tar.xz} diff --git a/nbd/config b/nbd/config new file mode 100644 index 0000000..d0c6eda --- /dev/null +++ b/nbd/config @@ -0,0 +1,21 @@ +[generic] + # The [generic] section is required, even if nothing is specified + # there. + # When either of these options are specified, nbd-server drops + # privileges to the given user and group after opening ports, but + # _before_ opening files. + user = nbd + group = nbd +[export1] + exportname = /export/nbd/export1-file + authfile = /export/nbd/export1-authfile + timeout = 30 + filesize = 10000000 + readonly = false + multifile = false + copyonwrite = false + prerun = dd if=/dev/zero of=%s bs=1k count=500 + postrun = rm -f %s +[otherexport] + exportname = /export/nbd/experiment + # The other options are all optional. diff --git a/nbd/deps b/nbd/deps new file mode 100644 index 0000000..81f33b1 --- /dev/null +++ b/nbd/deps @@ -0,0 +1 @@ +bison diff --git a/nbd/sysusers_nbd.conf b/nbd/sysusers_nbd.conf new file mode 100644 index 0000000..fff6bc5 --- /dev/null +++ b/nbd/sysusers_nbd.conf @@ -0,0 +1 @@ +u nbd - "Network Block Device" /var/empty diff --git a/nbd/time b/nbd/time new file mode 100644 index 0000000..b03c983 --- /dev/null +++ b/nbd/time @@ -0,0 +1,4 @@ +real 0m5.705s +user 0m5.433s +sys 0m0.979s + diff --git a/ninja/PKGBUILD b/ninja/PKGBUILD new file mode 100644 index 0000000..1de1381 --- /dev/null +++ b/ninja/PKGBUILD @@ -0,0 +1,53 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=ninja +pkgver=1.10.2 +pkgrel=01 +pkgdesc='Small build system with a focus on speed' +arch=(x86_64) +url='https://ninja-build.org/' +depends=(gcc-libs) +makedepends=(python re2c emacs-nox) +source=($pkgname-$pkgver.zip::https://github.com/martine/ninja/archive/v$pkgver.zip) + +build() { + cd ninja-$pkgver + + python configure.py --bootstrap + emacs -Q --batch -f batch-byte-compile misc/ninja-mode.el +} + +check() { + cd ninja-$pkgver + + python ./configure.py + ./ninja ninja_test + ./ninja_test +} + +package() { + cd ninja-$pkgver + + install -m755 -D ninja "$pkgdir/usr/bin/ninja" + install -m644 -D doc/manual.asciidoc "$pkgdir/usr/share/doc/ninja/manual.asciidoc" + install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING" + + install -m644 -D misc/ninja-mode.el "$pkgdir/usr/share/emacs/site-lisp/ninja-mode.el" + install -m644 -D misc/ninja-mode.elc "$pkgdir/usr/share/emacs/site-lisp/ninja-mode.elc" + install -m644 -D misc/ninja.vim "$pkgdir/usr/share/vim/vimfiles/syntax/ninja.vim" + + install -m644 -D misc/bash-completion "$pkgdir/usr/share/bash-completion/completions/ninja" + install -m644 -D misc/zsh-completion "$pkgdir/usr/share/zsh/site-functions/_ninja" +} + +#---- license gpg-key sha256sums ---- + +license=(Apache) + +sha1sums=('8415866400a85a1ced2140e52c5db714baec7444') + +sha256sums=(4e7b67da70a84084d5147a97fcfb867660eff55cc60a95006c389c4ca311b77d) # ninja-1.10.2.zip diff --git a/ninja/clean b/ninja/clean new file mode 100644 index 0000000..b9449db --- /dev/null +++ b/ninja/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,ninja*.zip} diff --git a/ninja/deps b/ninja/deps new file mode 100644 index 0000000..ee26b15 --- /dev/null +++ b/ninja/deps @@ -0,0 +1 @@ +python re2c emacs-git diff --git a/ninja/time b/ninja/time new file mode 100644 index 0000000..191590f --- /dev/null +++ b/ninja/time @@ -0,0 +1,5 @@ + +real 1m1.976s +user 2m13.493s +sys 0m5.785s + diff --git a/numactl/PKGBUILD b/numactl/PKGBUILD new file mode 100644 index 0000000..530c0b5 --- /dev/null +++ b/numactl/PKGBUILD @@ -0,0 +1,48 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=numactl +pkgver=2.0.14 +pkgrel=02 +pkgdesc="Simple NUMA policy support" +arch=(x86_64) +groups=( jobbot ) +# url="http://oss.sgi.com/projects/libnuma/" ## Joborun note: This is false, sgi.com has not existed since 2014 when its last bankrupt remains were obtained by receivers of debt. +## Instead the author is an ex-employee and a few contributors, but the initial 2.0 SGI code is still under the code. The url is false though, surprisingly nobody in Arch has noticed for 7 years. +depends=(glibc) +provides=(libnuma.so) +## NOTE: debug pkg currently unavailable as it contains /build dir +###options=(!debug) +source=("https://github.com/numactl/numactl/releases/download/v${pkgver}/${pkgname}-${pkgver}.tar.gz") + +prepare(){ + cd "${pkgname}-${pkgver}" + autoreconf -fiv +} + +build() { + cd "${pkgname}-${pkgver}" + ./configure --prefix=/usr + make +} + +check() { + cd "${pkgname}-${pkgver}" + make -k test -C $pkgname-$pkgver || echo "Tests known to fail depending on system load." +} + +package() { + make DESTDIR="$pkgdir" install -C $pkgname-$pkgver + install -vDm 644 $pkgname-$pkgver/README.md -t "${pkgdir}/usr/share/doc/${pkgname}" + # move_pages(2) is provided by man-pages and is more up-to-date there anyway + rm -rf "$pkgdir/usr/share/man/man2" +} + +#---- license gpg-key sha256sums ---- + +license=('LGPL2.1' 'GPL2') + +sha256sums=(826bd148c1b6231e1284e42a4db510207747484b112aee25ed6b1078756bcff6) # numactl-2.0.14.tar.gz diff --git a/numactl/PKGBUILD-arch b/numactl/PKGBUILD-arch new file mode 100644 index 0000000..165c990 --- /dev/null +++ b/numactl/PKGBUILD-arch @@ -0,0 +1,40 @@ +# Maintainer: David Runge +# Contributor: Dan McGee +# Contributor: Florian Zeitz + +pkgname=numactl +pkgver=2.0.14 +pkgrel=1 +pkgdesc="Simple NUMA policy support" +arch=('x86_64') +url="http://oss.sgi.com/projects/libnuma/" +license=('LGPL2.1' 'GPL2') +depends=('glibc') +provides=('libnuma.so') +source=("https://github.com/numactl/numactl/releases/download/v${pkgver}/${pkgname}-${pkgver}.tar.gz") +sha512sums=('28b95985d6b2f26c5f6f15fe235224c998c86f534adf5fdaa355a292cf2fd65515c91ba2a76c899d552d439b18ea1209a1712bd6755f8ee3a442f3935993b2e6') +b2sums=('5f2abe25061ac29ecad8a6b24fe800d72c3538d9a155358f4b329ed1140053c7dbd93f01891904f76db94ed01113a34b4ebcbbf40e4060caf747958785ac9590') + +prepare(){ + cd "${pkgname}-${pkgver}" + autoreconf -vfi +} + +build() { + cd "${pkgname}-${pkgver}" + ./configure --prefix=/usr + make +} + +check() { + cd "${pkgname}-${pkgver}" + make -k test || echo "Tests known to fail depending on system load." +} + +package() { + cd "${pkgname}-${pkgver}" + make DESTDIR="$pkgdir" install + # move_pages(2) is provided by man-pages and is more up-to-date there anyway + rm -rf "$pkgdir/usr/share/man/man2" + install -vDm 644 README.md -t "${pkgdir}/usr/share/doc/${pkgname}" +} diff --git a/numactl/PKGBUILD-arch.new b/numactl/PKGBUILD-arch.new new file mode 100644 index 0000000..f6c55f6 --- /dev/null +++ b/numactl/PKGBUILD-arch.new @@ -0,0 +1,39 @@ +# Maintainer: David Runge +# Contributor: Dan McGee +# Contributor: Florian Zeitz + +pkgname=numactl +pkgver=2.0.14 +pkgrel=2 +pkgdesc="Simple NUMA policy support" +arch=(x86_64) +url="http://oss.sgi.com/projects/libnuma/" +license=(LGPL2.1 GPL2) +depends=(glibc) +provides=(libnuma.so) +# NOTE: debug pkg currently unavailable as it contains /build dir +source=("https://github.com/numactl/numactl/releases/download/v${pkgver}/${pkgname}-${pkgver}.tar.gz") +sha512sums=('28b95985d6b2f26c5f6f15fe235224c998c86f534adf5fdaa355a292cf2fd65515c91ba2a76c899d552d439b18ea1209a1712bd6755f8ee3a442f3935993b2e6') +b2sums=('5f2abe25061ac29ecad8a6b24fe800d72c3538d9a155358f4b329ed1140053c7dbd93f01891904f76db94ed01113a34b4ebcbbf40e4060caf747958785ac9590') + +prepare(){ + cd "${pkgname}-${pkgver}" + autoreconf -fiv +} + +build() { + cd "${pkgname}-${pkgver}" + ./configure --prefix=/usr + make +} + +check() { + make -k test -C $pkgname-$pkgver || echo "Tests known to fail depending on system load." +} + +package() { + make DESTDIR="$pkgdir" install -C $pkgname-$pkgver + install -vDm 644 $pkgname-$pkgver/README.md -t "${pkgdir}/usr/share/doc/${pkgname}" + # move_pages(2) is provided by man-pages and is more up-to-date there anyway + rm -rf "$pkgdir/usr/share/man/man2" +} diff --git a/numactl/clean b/numactl/clean new file mode 100644 index 0000000..1df7dee --- /dev/null +++ b/numactl/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,*gz} diff --git a/numactl/deps b/numactl/deps new file mode 100644 index 0000000..902f898 --- /dev/null +++ b/numactl/deps @@ -0,0 +1,3 @@ +autoconf +automake + diff --git a/numactl/time b/numactl/time new file mode 100644 index 0000000..af62aec --- /dev/null +++ b/numactl/time @@ -0,0 +1,3 @@ +real 0m43.259s +user 0m48.848s +sys 0m1.663s diff --git a/obmenu-generator/PKGBUILD b/obmenu-generator/PKGBUILD new file mode 100644 index 0000000..3b7f654 --- /dev/null +++ b/obmenu-generator/PKGBUILD @@ -0,0 +1,45 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=obmenu-generator +pkgdesc="A fast pipe/static menu generator for the Openbox Window Manager (with icons support)." +pkgver=0.90 +pkgrel=02 +url="https://github.com/trizen/" +arch=('any') +depends=('perl>=5.14.0' 'openbox-patched' 'perl-data-dump' 'perl-linux-desktopfiles>=0.25' 'perl-gtk3') +optdepends=( + 'gtk2-perl: support for icons' + 'perl-gtk3: support for icons (with use_gtk3 = 1)' + 'perl-file-desktopentry: locale support' +) + +#source=("${pkgname}-${pkgver}.tar.gz::https://github.com/trizen/${pkgname}/archive/${pkgver}.tar.gz") +source=("${pkgname}-${pkgver}.tar.gz::${url}${pkgname}/archive/${pkgver}.tar.gz") + +package() { + cd "$pkgname-$pkgver" + install -Dm755 "$pkgname" "$pkgdir/usr/bin/$pkgname" + install -Dm644 "schema.pl" "$pkgdir/etc/xdg/$pkgname/schema.pl" + install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +post_install() { + echo -e "\n:: The schema file has been installed as: /etc/xdg/obmenu-generator/schema.pl\n" +} + +post_upgrade() { + post_install +} + +#---- license gpg-key sha256sums ---- + +license=('GPL3') + +sha512sums=(871be843273e51ce66c87bba5c17f50c1c67920c116663f7314b011fe55d4466acdc929b7b3a0a1fa2673b351685c9e801626b33b903cb55d48af89cf4a40bfc) # obmenu-generator-0.90.tar.gz + +sha256sums=(75a871345cf1d1835698494e40e59bf19457f0261aa6b2d94b609f6e250afd19) # obmenu-generator-0.90.tar.gz diff --git a/obmenu-generator/clean b/obmenu-generator/clean new file mode 100644 index 0000000..533923d --- /dev/null +++ b/obmenu-generator/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,obm*gz} diff --git a/obmenu-generator/deps b/obmenu-generator/deps new file mode 100644 index 0000000..b46d8b0 --- /dev/null +++ b/obmenu-generator/deps @@ -0,0 +1,5 @@ +openbox-patched +perl-data-dump +perl-linux-desktopfiles +perl-gtk3 + diff --git a/obmenu-generator/time b/obmenu-generator/time new file mode 100644 index 0000000..4adaab9 --- /dev/null +++ b/obmenu-generator/time @@ -0,0 +1,5 @@ + +real 0m1.339s +user 0m1.258s +sys 0m0.230s + diff --git a/openbox-patched/LICENSE.md b/openbox-patched/LICENSE.md new file mode 100644 index 0000000..d60c31a --- /dev/null +++ b/openbox-patched/LICENSE.md @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. diff --git a/openbox-patched/PKGBUILD b/openbox-patched/PKGBUILD new file mode 100644 index 0000000..e0bc188 --- /dev/null +++ b/openbox-patched/PKGBUILD @@ -0,0 +1,108 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Maintainer AUR : Dylan Araps +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=openbox-patched +_pkgname=openbox + +pkgver=3.6.1 +pkgrel=05 + +pkgdesc='Openbox with Rounded Corners patch and anything else I deem useful.' + +url='http://openbox.org' + +source=("http://openbox.org/dist/openbox/${_pkgname}-${pkgver}.tar.gz" + "http://openbox.org/dist/openbox/openbox-3.5.0-title-matching.patch" + "http://openbox.org/dist/openbox/openbox-3.5.0-which-2.20.patch" + "http://openbox.org/dist/openbox/openbox-3.6.2-rounded-corners.patch" + "http://openbox.org/dist/openbox/openbox-3.6.2-fix-out-of-bounds.patch") + +prepare() { + cd "${_pkgname}-${pkgver}" + + patch -Np1 -i "${srcdir}/openbox-3.5.0-title-matching.patch" # OB#5277 + patch -Np1 -i "${srcdir}/openbox-3.5.0-which-2.20.patch" # FS#11455 + + # https://forums.bunsenlabs.org/viewtopic.php?pid=46711#p46711 + patch -Np1 -i "${srcdir}/openbox-3.6.2-rounded-corners.patch" + + # https://github.com/danakj/openbox/pull/26 + patch -Np1 -i "${srcdir}/openbox-3.6.2-fix-out-of-bounds.patch" + + sed -i 's|/usr/bin/env python|/usr/bin/env python3|' \ + data/autostart/openbox-xdg-autostart +} + +build() { + cd "${_pkgname}-${pkgver}" + + ./configure \ + --prefix=/usr \ + --with-x \ + --disable-startup-notification \ + --sysconfdir=/etc \ + --libexecdir=/usr/lib/openbox + make +} + +package() { + cd "${_pkgname}-${pkgver}" + make DESTDIR="$pkgdir" install + + # GNOME Panel is no longer available in the official repositories + rm -r "${pkgdir}/usr/bin/"{gdm-control,gnome-panel-control,openbox-gnome-session} \ + "${pkgdir}/usr/share/gnome"{,-session} \ + "${pkgdir}/usr/share/man/man1/openbox-gnome-session.1" \ + "${pkgdir}/usr/share/xsessions/openbox-gnome.desktop" + + sed -i 's:startkde:/usr/bin/\0:' \ + "${pkgdir}/usr/share/xsessions/openbox-kde.desktop" +} + +arch=('x86_64') + +install="${pkgname}.install" + +backup=('etc/xdg/openbox/menu.xml' + 'etc/xdg/openbox/rc.xml' + 'etc/xdg/openbox/autostart' + 'etc/xdg/openbox/environment') + +depends=('libxml2' 'libxinerama' 'libxrandr' + 'libxcursor' 'pango' 'imlib2' 'librsvg' 'libsm') + +optdepends=('python-pyxdg: for the openbox-xdg-autostart script') + +groups=('lxde' 'lxde-gtk3') + +provides=('libobrender.so' $_pkgname) + +conflicts=($_pkgname) + +replaces=($_pkgname) + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +md5sums=('b72794996c6a3ad94634727b95f9d204' + '0a11d7149da210a31ef88f8a9c717711' + '5be4554431e555084026631898f167aa' + '3bec0508320653ab33214b3c52bb775e' + '4c28a1482a2aeb58415cec39f7f3a694') + +sha512sums=('5e6f4a214005bea8b26bc8959fe5bb67356a387ddd317e014f43cb5b5bf263ec617a5973e2982eb76a08dc7d3ca5ec9e72e64c9b5efd751001a8999b420b1ad0' # openbox-3.6.1.tar.gz + '0dc52be29c275837823924e2bfce84397d6f9274129c71f75b152b9f3987899fadbf894752c4e63abd942b8072490f0a73b51bddf5f7e8e70019c8e95f8e80be' # openbox-3.5.0-title-matching.patch + 'fec42761d23f0b61da685eb0597c80abca6896c0424294b4ec52240315e8e1450c69f75508659b642a458935cfa32e71a15492e89c475b28867978accfb11170' # openbox-3.5.0-which-2.20.patch + 'a10cc5eb4a1f24e3a8cd62cdc1a1904d19ee15ad3ebbe680adedc7ab7b37c8751b36c6b2f35acb577eff1363ee76eaca57003ab8468ad66921e38e6b8fa71a0d' # openbox-3.6.2-rounded-corners.patch + '62d71eea1265b0b3e257f0fd292db6e879c4f4e64c919bf40614e1f9ec0ca417a3fc4e0db0630376419915f7ef709dd0a6b97023962f8ed71f2603ac76b75eb0') # openbox-3.6.2-fix-out-of-bounds.patch + +sha256sums=(8b4ac0760018c77c0044fab06a4f0c510ba87eae934d9983b10878483bde7ef7 # openbox-3.6.1.tar.gz + adc0820671e6ec42ff1bb4cbb04c65e19cdf74c62bcef3a3b727adb208eb82c7 # openbox-3.5.0-title-matching.patch + ce33bb6c3d543da091db2037e1f3084e5a0e752c9479584256d2f000f0da920d # openbox-3.5.0-which-2.20.patch + ac5617253dfc39e2fc204830ca19aa3fa48a0e00e46dd90a0057a2f1dd77cfbb # openbox-3.6.2-rounded-corners.patch + ec1f99bd7149e888c96b719b4192c413464815848bb05cfa8e88c7cb4214b9ac) # openbox-3.6.2-fix-out-of-bounds.patch diff --git a/openbox-patched/PKGBUILD-aur b/openbox-patched/PKGBUILD-aur new file mode 100644 index 0000000..782665e --- /dev/null +++ b/openbox-patched/PKGBUILD-aur @@ -0,0 +1,83 @@ +# Maintainer: Dylan Araps +# +# Below are the maintainers and contributors of the official +# Arch package that this PKGBUILD is based on. +# +# Maintainer: Florian pritz +# Contributor: Bartłomiej Piotrowski +# Contributor: Brad Fanella +# Contributor: Andrea Scarpino +# Contributor: tobias + +pkgname=openbox-patched +_pkgname=openbox +pkgver=3.6.1 +pkgrel=4 +pkgdesc='Openbox with Rounded Corners patch and anything else I deem useful.' +arch=('i686' 'x86_64') +url='http://openbox.org' +license=('GPL') +provides=('libobrender.so' $_pkgname) +conflicts=($_pkgname) +depends=('startup-notification' 'libxml2' 'libxinerama' 'libxrandr' + 'libxcursor' 'pango' 'imlib2' 'librsvg' 'libsm') +optdepends=('plasma-workspace: for the KDE/Openbox xsession' + 'python2-xdg: for the openbox-xdg-autostart script') +groups=('lxde' 'lxde-gtk3' 'lxqt') +backup=('etc/xdg/openbox/menu.xml' + 'etc/xdg/openbox/rc.xml' + 'etc/xdg/openbox/autostart' + 'etc/xdg/openbox/environment') +source=("http://openbox.org/dist/openbox/${_pkgname}-${pkgver}.tar.gz" + "openbox-3.5.0-title-matching.patch" + "openbox-3.5.0-which-2.20.patch" + "openbox-3.6.2-rounded-corners.patch" + "openbox-3.6.2-fix-out-of-bounds.patch") +md5sums=('b72794996c6a3ad94634727b95f9d204' + '0a11d7149da210a31ef88f8a9c717711' + '5be4554431e555084026631898f167aa' + '3bec0508320653ab33214b3c52bb775e' + '4c28a1482a2aeb58415cec39f7f3a694') +install="${pkgname}.install" + +prepare() { + cd "${_pkgname}-${pkgver}" + + patch -Np1 -i "${srcdir}/openbox-3.5.0-title-matching.patch" # OB#5277 + patch -Np1 -i "${srcdir}/openbox-3.5.0-which-2.20.patch" # FS#11455 + + # https://forums.bunsenlabs.org/viewtopic.php?pid=46711#p46711 + patch -Np1 -i "${srcdir}/openbox-3.6.2-rounded-corners.patch" + + # https://github.com/danakj/openbox/pull/26 + patch -Np1 -i "${srcdir}/openbox-3.6.2-fix-out-of-bounds.patch" + + sed -i 's|/usr/bin/env python|/usr/bin/env python2|' \ + data/autostart/openbox-xdg-autostart +} + +build() { + cd "${_pkgname}-${pkgver}" + + ./configure \ + --prefix=/usr \ + --with-x \ + --enable-startup-notification \ + --sysconfdir=/etc \ + --libexecdir=/usr/lib/openbox + make +} + +package() { + cd "${_pkgname}-${pkgver}" + make DESTDIR="$pkgdir" install + + # GNOME Panel is no longer available in the official repositories + rm -r "${pkgdir}/usr/bin/"{gdm-control,gnome-panel-control,openbox-gnome-session} \ + "${pkgdir}/usr/share/gnome"{,-session} \ + "${pkgdir}/usr/share/man/man1/openbox-gnome-session.1" \ + "${pkgdir}/usr/share/xsessions/openbox-gnome.desktop" + + sed -i 's:startkde:/usr/bin/\0:' \ + "${pkgdir}/usr/share/xsessions/openbox-kde.desktop" +} diff --git a/openbox-patched/README.md b/openbox-patched/README.md new file mode 100644 index 0000000..cd5d197 --- /dev/null +++ b/openbox-patched/README.md @@ -0,0 +1,47 @@ +# openbox-patched + +This repo contains a `PKGBUILD` and various patches for Openbox `3.6.2`. The purpose of this repo is to track issues and fix quirks with the Rounded Corners patch. + + +![scrot](http://i.imgur.com/ThihqTS.png) + + +## Installation + +Install `openbox-patched` from the AUR. + + +## Patches + +This package uses the following patches. + + +### Rounded Corners + +This patch adds support for rounded corners to Openbox. + +> Source: https://forums.bunsenlabs.org/viewtopic.php?pid=46711#p46711 + + +**Enabling rounded corners:** + +To enable Rounded Corners add this line to the '' section of your Openbox config. + + '8' + +The patch also takes an argument for menu corners. + + '8' + + +**Issues/Quirks** + +- [x] ~~Docked windows have rounded corners.~~ +- [x] ~~Fullscreen windows have rounded corners.~~ + + +### Fix out of bounds + +This patch fixes a crash when only a single window button is enabled. + +> Source: https://github.com/danakj/openbox/pull/26 diff --git a/openbox-patched/clean b/openbox-patched/clean new file mode 100644 index 0000000..d8c5b59 --- /dev/null +++ b/openbox-patched/clean @@ -0,0 +1 @@ +rm -rvf {*.tar.gz,src,pkg} diff --git a/openbox-patched/deps b/openbox-patched/deps new file mode 100644 index 0000000..bd0dc57 --- /dev/null +++ b/openbox-patched/deps @@ -0,0 +1,7 @@ +libxinerama +libxrandr +libxcursor +pango +imlib2 +librsvg +libsm diff --git a/openbox-patched/openbox-3.5.0-title-matching.patch b/openbox-patched/openbox-3.5.0-title-matching.patch new file mode 100644 index 0000000..fdfe28a --- /dev/null +++ b/openbox-patched/openbox-3.5.0-title-matching.patch @@ -0,0 +1,11 @@ +--- openbox-3.5.0/openbox/client.c 2011-08-01 22:14:58.000000000 +0200 ++++ openbox-3.5.0/openbox/client.c 2011-10-22 14:59:56.000000000 +0200 +@@ -883,7 +883,7 @@ + !g_pattern_match(app->role, + strlen(self->role), self->role, NULL)) + match = FALSE; +- else if (app->title && ++ else if (app->title && self->title && + !g_pattern_match(app->title, + strlen(self->title), self->title, NULL)) + match = FALSE; diff --git a/openbox-patched/openbox-3.5.0-which-2.20.patch b/openbox-patched/openbox-3.5.0-which-2.20.patch new file mode 100644 index 0000000..35d6b59 --- /dev/null +++ b/openbox-patched/openbox-3.5.0-which-2.20.patch @@ -0,0 +1,11 @@ +--- openbox-3.5.0/data/autostart/autostart.in~ 2011-08-02 15:50:01.963531310 +0000 ++++ openbox-3.5.0/data/autostart/autostart.in 2011-08-02 15:51:57.277879458 +0000 +@@ -8,7 +8,7 @@ + # + #if test -x @libexecdir@/gnome-settings-daemon >/dev/null; then + # @libexecdir@/gnome-settings-daemon & +-#elif which gnome-settings-daemon >/dev/null; then ++#elif which gnome-settings-daemon >/dev/null 2>&1; then + # gnome-settings-daemon & + #fi + diff --git a/openbox-patched/openbox-3.6.2-fix-out-of-bounds.patch b/openbox-patched/openbox-3.6.2-fix-out-of-bounds.patch new file mode 100644 index 0000000..5bf59af --- /dev/null +++ b/openbox-patched/openbox-3.6.2-fix-out-of-bounds.patch @@ -0,0 +1,22 @@ +From b0ed75ee851121ad25491ef6e1dca25be7bc50f3 Mon Sep 17 00:00:00 2001 +From: o9000 +Date: Wed, 5 Apr 2017 12:38:10 +0200 +Subject: [PATCH] Fix out-of-bounds read + +--- + openbox/frame.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/openbox/frame.c b/openbox/frame.c +index 89669726a..943b6380b 100644 +--- a/openbox/frame.c ++++ b/openbox/frame.c +@@ -1215,7 +1215,7 @@ static void layout_title(ObFrame *self) + } + + /* stop at the end of the string (or the label, which calls break) */ +- for (; *lc != '\0' && lc >= config_title_layout; lc+=i) { ++ for (; lc >= config_title_layout && *lc != '\0'; lc+=i) { + if (*lc == 'L') { + if (i > 0) { + self->label_on = TRUE; diff --git a/openbox-patched/openbox-3.6.2-rounded-corners.patch b/openbox-patched/openbox-3.6.2-rounded-corners.patch new file mode 100644 index 0000000..cc4f0d1 --- /dev/null +++ b/openbox-patched/openbox-3.6.2-rounded-corners.patch @@ -0,0 +1,174 @@ +From 582568b08c354f4bb037bcfb00dd440a59d7cbe0 Mon Sep 17 00:00:00 2001 +From: cpoakes +Date: Tue, 29 Aug 2017 19:56:29 -0500 +Subject: [PATCH] openbox-3.6.2-rounded-corners + +--- + openbox/config.c | 8 ++++++++ + openbox/config.h | 4 ++++ + openbox/frame.c | 30 +++++++++++++++++++++++++++++- + openbox/framerender.c | 7 +++++++ + openbox/menuframe.c | 4 ++++ + 5 files changed, 52 insertions(+), 1 deletion(-) + +diff --git a/openbox/config.c b/openbox/config.c +index dad5d1bf..a387335c 100644 +--- a/openbox/config.c ++++ b/openbox/config.c +@@ -48,6 +48,8 @@ StrutPartial config_margins; + gchar *config_theme; + gboolean config_theme_keepborder; + guint config_theme_window_list_icon_size; ++guint config_theme_cornerradius; ++gboolean config_theme_menuradius; + + gchar *config_title_layout; + +@@ -719,6 +721,10 @@ static void parse_theme(xmlNodePtr node, gpointer d) + else if (config_theme_window_list_icon_size > 96) + config_theme_window_list_icon_size = 96; + } ++ if ((n = obt_xml_find_node(node, "cornerRadius"))) { ++ config_theme_cornerradius = obt_xml_node_int(n); ++ obt_xml_attr_bool(n, "menu", &config_theme_menuradius); ++ } + + for (n = obt_xml_find_node(node, "font"); + n; +@@ -1098,6 +1104,8 @@ void config_startup(ObtXmlInst *i) + config_title_layout = g_strdup("NLIMC"); + config_theme_keepborder = TRUE; + config_theme_window_list_icon_size = 36; ++ config_theme_cornerradius = 0; ++ config_theme_menuradius = TRUE; + + config_font_activewindow = NULL; + config_font_inactivewindow = NULL; +diff --git a/openbox/config.h b/openbox/config.h +index 96a66cf1..5622d059 100644 +--- a/openbox/config.h ++++ b/openbox/config.h +@@ -152,6 +152,10 @@ extern gchar *config_title_layout; + extern gboolean config_animate_iconify; + /*! Size of icons in focus switching dialogs */ + extern guint config_theme_window_list_icon_size; ++/*! Display rounded corners for decorated windows */ ++extern guint config_theme_cornerradius; ++/*! Display rounded corners for root and client-list menus */ ++extern gboolean config_theme_menuradius; + + /*! The font for the active window's title */ + extern RrFont *config_font_activewindow; +diff --git a/openbox/frame.c b/openbox/frame.c +index 89669726..db2c7531 100644 +--- a/openbox/frame.c ++++ b/openbox/frame.c +@@ -334,6 +334,31 @@ void frame_adjust_shape(ObFrame *self) + #endif + } + ++void frame_round_corners(Window window) ++{ ++ XWindowAttributes win_attr; ++ XGetWindowAttributes(obt_display, window, &win_attr); ++ int width = win_attr.width + win_attr.border_width; ++ int height = win_attr.height + win_attr.border_width; ++ Pixmap mask = XCreatePixmap(obt_display, window, width, height, 1); ++ XGCValues xgcv; ++ GC shape_gc = XCreateGC(obt_display, mask, 0, &xgcv); ++ int rad = config_theme_cornerradius; ++ int dia = 2 * rad; ++ XSetForeground(obt_display, shape_gc, 0); ++ XFillRectangle(obt_display, mask, shape_gc, 0, 0, width, height); ++ XSetForeground(obt_display, shape_gc, 1); ++ XFillArc(obt_display, mask, shape_gc, 0, 0, dia, dia, 0, 23040); ++ XFillArc(obt_display, mask, shape_gc, width-dia-1, 0, dia, dia, 0, 23040); ++ XFillArc(obt_display, mask, shape_gc, 0, height-dia-1, dia, dia, 0, 23040); ++ XFillArc(obt_display, mask, shape_gc, width-dia-1, height-dia-1, dia, dia, ++ 0, 23040); ++ XFillRectangle(obt_display, mask, shape_gc, rad, 0, width-dia, height); ++ XFillRectangle(obt_display, mask, shape_gc, 0, rad, width, height-dia); ++ XShapeCombineMask(obt_display, window, ShapeBounding, 0, 0, mask, ShapeSet); ++ XFreePixmap(obt_display, mask); ++} ++ + void frame_adjust_area(ObFrame *self, gboolean moved, + gboolean resized, gboolean fake) + { +@@ -857,7 +882,6 @@ void frame_adjust_area(ObFrame *self, gboolean moved, + + if (resized) { + self->need_render = TRUE; +- framerender_frame(self); + frame_adjust_shape(self); + } + +@@ -884,7 +908,9 @@ void frame_adjust_area(ObFrame *self, gboolean moved, + { + XResizeWindow(obt_display, self->label, self->label_width, + ob_rr_theme->label_height); ++ self->need_render = TRUE; + } ++ framerender_frame(self); + } + + static void frame_adjust_cursors(ObFrame *self) +@@ -958,6 +984,8 @@ void frame_adjust_client_area(ObFrame *self) + XMoveResizeWindow(obt_display, self->backfront, 0, 0, + self->client->area.width, + self->client->area.height); ++ self->need_render = TRUE; ++ framerender_frame(self); + } + + void frame_adjust_state(ObFrame *self) +diff --git a/openbox/framerender.c b/openbox/framerender.c +index 094d5962..54046580 100644 +--- a/openbox/framerender.c ++++ b/openbox/framerender.c +@@ -21,6 +21,7 @@ + #include "openbox.h" + #include "screen.h" + #include "client.h" ++#include "config.h" + #include "framerender.h" + #include "obrender/theme.h" + +@@ -42,6 +43,12 @@ void framerender_frame(ObFrame *self) + return; + self->need_render = FALSE; + ++ if (config_theme_cornerradius && ++ !self->client->fullscreen && ++ !self->client->shaped && ++ !(self->client->type == OB_CLIENT_TYPE_DOCK)) ++ frame_round_corners(self->window); ++ + { + gulong px; + +diff --git a/openbox/menuframe.c b/openbox/menuframe.c +index c37fdcc5..f598cf15 100644 +--- a/openbox/menuframe.c ++++ b/openbox/menuframe.c +@@ -17,6 +17,7 @@ + See the COPYING file for a copy of the GNU General Public License. + */ + ++#include "frame.h" + #include "menuframe.h" + #include "client.h" + #include "menu.h" +@@ -845,6 +846,9 @@ void menu_frame_render(ObMenuFrame *self) + + RECT_SET_SIZE(self->area, w, h); + ++ if (config_theme_menuradius) ++ frame_round_corners(self->window); ++ + XFlush(obt_display); + } + +-- +2.14.1 + diff --git a/openbox-patched/openbox-patched.install b/openbox-patched/openbox-patched.install new file mode 100644 index 0000000..02493ff --- /dev/null +++ b/openbox-patched/openbox-patched.install @@ -0,0 +1,14 @@ +post_install() { + echo + echo "==> To enable Rounded Corners add this line to the \'\' section of your Openbox config." + echo "==> \'8\'" + echo "==> The patch also takes an argument for menu corners." + echo "==> \'8\'" + echo + echo "==> The rounded corners patch was taken from here:" + echo "==> https://forums.bunsenlabs.org/viewtopic.php?pid=46711#p46711" + echo + echo "==> See this post for caveats of the rounded corners patch:" + echo "==> https://forums.bunsenlabs.org/viewtopic.php?pid=42814#p42814" + echo +} diff --git a/openbox-patched/sums b/openbox-patched/sums new file mode 100644 index 0000000..cacc0a0 --- /dev/null +++ b/openbox-patched/sums @@ -0,0 +1,5 @@ +openbox-3.6.1.tar.gz +openbox-3.5.0-title-matching.patch +openbox-3.5.0-which-2.20.patch +openbox-3.6.2-rounded-corners.patch +openbox-3.6.2-fix-out-of-bounds.patch diff --git a/openbox-patched/time b/openbox-patched/time new file mode 100644 index 0000000..946feab --- /dev/null +++ b/openbox-patched/time @@ -0,0 +1,3 @@ +real 0m19.642s +user 0m47.551s +sys 0m4.409s diff --git a/package-query/PKGBUILD b/package-query/PKGBUILD new file mode 100644 index 0000000..76c399b --- /dev/null +++ b/package-query/PKGBUILD @@ -0,0 +1,33 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=package-query +pkgver=1.12 +pkgrel=01 +pkgdesc="Query ALPM and AUR" +arch=('x86_64') +groups=( jobbot ) +url="https://github.com/archlinuxfr/package-query/" +depends=('pacman>=6.0' 'yajl>=2.0') +source=(https://github.com/archlinuxfr/$pkgname/releases/download/$pkgver/$pkgname-$pkgver.tar.gz) + +build() { + cd "$srcdir/$pkgname-$pkgver" + ./configure --localstatedir=/var --prefix=/usr --sysconfdir=/etc --with-aur-url=https://aur.archlinux.org + make +} + +package () +{ + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="$pkgdir" install +} + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +sha256sums=(0b1f08cb8397019b36ac46898d2ec1a106370f4f2895cfa5f69070aa47228301) # package-query-1.12.tar.gz diff --git a/package-query/PKGBUILD-aur b/package-query/PKGBUILD-aur new file mode 100644 index 0000000..f56ace8 --- /dev/null +++ b/package-query/PKGBUILD-aur @@ -0,0 +1,26 @@ +# Contributor: tuxce +# Contributor: Skunnyk +pkgname=package-query +pkgver=1.12 +pkgrel=1 +pkgdesc="Query ALPM and AUR" +arch=('i686' 'x86_64' 'mips64el' 'armv6h' 'armv7h' 'arm' 'aarch64' 'pentium4') +url="https://github.com/archlinuxfr/package-query/" +license=('GPL') +depends=('pacman>=6.0' 'yajl>=2.0') +source=(https://github.com/archlinuxfr/$pkgname/releases/download/$pkgver/$pkgname-$pkgver.tar.gz) + +build() { + cd "$srcdir/$pkgname-$pkgver" + ./configure --localstatedir=/var --prefix=/usr --sysconfdir=/etc --with-aur-url=https://aur.archlinux.org + make +} + +package () +{ + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="$pkgdir" install +} + +# vim:set ts=2 sw=2 et: +md5sums=('3d91612aa47bb30db5e028251089255b') diff --git a/package-query/clean b/package-query/clean new file mode 100644 index 0000000..c39a115 --- /dev/null +++ b/package-query/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg} diff --git a/package-query/deps b/package-query/deps new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/package-query/deps @@ -0,0 +1 @@ + diff --git a/package-query/time b/package-query/time new file mode 100644 index 0000000..bdbf48b --- /dev/null +++ b/package-query/time @@ -0,0 +1,3 @@ +real 0m3.661s +user 0m3.471s +sys 0m0.526s diff --git a/pacman-contrib/0001-pactree-fix-compilation-with-pacman-6.patch b/pacman-contrib/0001-pactree-fix-compilation-with-pacman-6.patch new file mode 100644 index 0000000..82bb311 --- /dev/null +++ b/pacman-contrib/0001-pactree-fix-compilation-with-pacman-6.patch @@ -0,0 +1,44 @@ +From fd21ee241c85856be941e41942d6c179ca713c41 Mon Sep 17 00:00:00 2001 +From: Eli Schwartz via pacman-contrib +Date: Fri, 21 May 2021 00:30:07 -0400 +Subject: [PATCH] pactree: fix compilation with pacman 6 + +In "add front-end provided context to callbacks", libalpm gained a new +argument to callbacks which we don't use and is only needed by some +frontends wishing to do stuff with the callback state. NULL it and move +on with life, just like pacman itself did. + +Signed-off-by: Eli Schwartz +Signed-off-by: Daniel M. Capella +--- + src/pactree.c | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/src/pactree.c b/src/pactree.c +index e8f5086..9e6ac1b 100644 +--- a/src/pactree.c ++++ b/src/pactree.c +@@ -135,8 +135,10 @@ static const char *dbpath = DBPATH; + static const char *configfile = CONFFILE; + static const char *gpgdir = GPGDIR; + +-void cb_log(alpm_loglevel_t level, const char *fmt, va_list args) ++void cb_log(void *ctx, alpm_loglevel_t level, const char *fmt, va_list args) + { ++ (void)ctx; ++ + switch(level) { + case ALPM_LOG_ERROR: + fprintf(stderr, "%s%s%s", color->error, "error: ", +@@ -621,7 +623,7 @@ int main(int argc, char *argv[]) + } + + if(debug) { +- alpm_option_set_logcb(handle, cb_log); ++ alpm_option_set_logcb(handle, cb_log, NULL); + } + + /* no need to fail on error here */ +-- +2.31.1 + diff --git a/pacman-contrib/PKGBUILD b/pacman-contrib/PKGBUILD new file mode 100644 index 0000000..1454807 --- /dev/null +++ b/pacman-contrib/PKGBUILD @@ -0,0 +1,61 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=pacman-contrib +pkgver=1.4.0 +pkgrel=05 +pkgdesc="Contributed scripts and tools for pacman systems w/o systemd" +url="https://gitlab.archlinux.org/pacman/pacman-contrib" +arch=('x86_64') +groups=( jobbot ) +depends=('fakeroot' 'pacman' 'perl') +makedepends=('asciidoc') +optdepends=('diffutils: for pacdiff' + 'findutils: for pacdiff --find' + 'mlocate: for pacdiff --locate' + 'sudo: privilege elevation for several scripts' + 'vim: default merge program for pacdiff') +source=("$url/-/archive/v$pkgver/$pkgname-v$pkgver.tar.gz" + '0001-pactree-fix-compilation-with-pacman-6.patch') + +prepare() { + cd pacman-contrib-v$pkgver + patch --forward --strip=1 --input=../0001-pactree-fix-compilation-with-pacman-6.patch + ./autogen.sh +} + +build() { + cd pacman-contrib-v$pkgver + + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var + make +} + +check() { + make -C pacman-contrib-v$pkgver check +} + +package() { + cd pacman-contrib-v$pkgver + make DESTDIR="$pkgdir" install + rm -rf $pkgdir/usr/lib +# rm -rf $pkgdir/usr/lib/systemd +} + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +validpgpkeys=('5134EF9EAF65F95B6BB1608E50FB9B273A9D0BB5' # Johannes Löthberg + '04DC3FB1445FECA813C27EFAEA4F7B321A906AD9') # Daniel M. Capella + +sha256sums=(c97b2889ab012feaa1882865af9cfeb2406c9045757d2e73b5903277472ce6a2 # pacman-contrib-v1.4.0.tar.gz + 774d27532a91e2fe490ccc8d21c2d1d4d2a2dbfc8678a8406abb8bb8f9e6626c) # 0001-pactree-fix-compilation-with-pacman-6.patch + diff --git a/pacman-contrib/PKGBUILD-arch b/pacman-contrib/PKGBUILD-arch new file mode 100644 index 0000000..91a3146 --- /dev/null +++ b/pacman-contrib/PKGBUILD-arch @@ -0,0 +1,55 @@ +# Maintainer: Johannes Löthberg +# Maintainer: Daniel M. Capella + +pkgname=pacman-contrib +pkgver=1.4.0 +pkgrel=4 + +pkgdesc="Contributed scripts and tools for pacman systems" +url="https://gitlab.archlinux.org/pacman/pacman-contrib" +arch=('x86_64') +license=('GPL') + +depends=('fakeroot' 'pacman' 'perl') +makedepends=('asciidoc') +optdepends=('diffutils: for pacdiff' + 'findutils: for pacdiff --find' + 'mlocate: for pacdiff --locate' + 'sudo: privilege elevation for several scripts' + 'vim: default merge program for pacdiff') + +source=("$url/-/archive/v$pkgver/$pkgname-v$pkgver.tar.gz" + '0001-pactree-fix-compilation-with-pacman-6.patch') +sha256sums=('c97b2889ab012feaa1882865af9cfeb2406c9045757d2e73b5903277472ce6a2' + '774d27532a91e2fe490ccc8d21c2d1d4d2a2dbfc8678a8406abb8bb8f9e6626c') +#validpgpkeys=('5134EF9EAF65F95B6BB1608E50FB9B273A9D0BB5' # Johannes Löthberg +# '04DC3FB1445FECA813C27EFAEA4F7B321A906AD9') # Daniel M. Capella + +prepare() { + cd pacman-contrib-v$pkgver + + patch --forward --strip=1 --input=../0001-pactree-fix-compilation-with-pacman-6.patch + ./autogen.sh +} + +build() { + cd pacman-contrib-v$pkgver + + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var + make +} + +check() { + make -C pacman-contrib-v$pkgver check +} + +package() { + cd pacman-contrib-v$pkgver + + make DESTDIR="$pkgdir" install +} + +# vim:set ts=2 sw=2 et: diff --git a/pacman-contrib/clean b/pacman-contrib/clean new file mode 100644 index 0000000..1fb79e2 --- /dev/null +++ b/pacman-contrib/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,pac*.tar.gz*} diff --git a/pacman-contrib/deps b/pacman-contrib/deps new file mode 100644 index 0000000..fbdac27 --- /dev/null +++ b/pacman-contrib/deps @@ -0,0 +1,4 @@ +asciidoc +autoconf +automake + diff --git a/pacman-contrib/time b/pacman-contrib/time new file mode 100644 index 0000000..7a9946e --- /dev/null +++ b/pacman-contrib/time @@ -0,0 +1,4 @@ + +real 0m7.928s +user 0m8.054s +sys 0m0.717s diff --git a/pam_rundir/PKGBUILD b/pam_rundir/PKGBUILD new file mode 100644 index 0000000..0ec40e4 --- /dev/null +++ b/pam_rundir/PKGBUILD @@ -0,0 +1,38 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=pam_rundir +pkgver=1.2.0 +pkgrel=01 +pkgdesc='PAM module to provide $XDG_RUNTIME_DIR' +arch=('x86_64') +url="https://gitea.artixlinux.org/artix/pam_rundir" +depends=('pam') +makedepends=('git') +_commit=5338dec85e201b7e5fb4aeb0d548448d140ac41e # tags/1.2.0^0 +source=("git+https://gitea.artixlinux.org/artix/pam_rundir.git#commit=$_commit") + +build() { + cd $pkgname + ./configure --prefix=/usr + make +} + +package() { + cd $pkgname + DESTDIR="$pkgdir" make install + install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + + # empty directory for tmpfiles-setup + install -d $pkgdir/usr/share/factory/etc/pam.d +} + +#---- license gpg-key sha256sums ---- + +license=('GPL2+') + +sha256sums=('SKIP') diff --git a/pam_rundir/PKGBUILD-artix b/pam_rundir/PKGBUILD-artix new file mode 100644 index 0000000..72f900a --- /dev/null +++ b/pam_rundir/PKGBUILD-artix @@ -0,0 +1,28 @@ +# Maintainer: Dudemanguy +pkgname=pam_rundir +pkgver=1.2.0 +pkgrel=1 +pkgdesc='PAM module to provide $XDG_RUNTIME_DIR' +arch=('x86_64') +url="https://gitea.artixlinux.org/artix/pam_rundir" +license=('GPL2+') +depends=('pam') +makedepends=('git') +_commit=5338dec85e201b7e5fb4aeb0d548448d140ac41e # tags/1.2.0^0 +source=("git+https://gitea.artixlinux.org/artix/pam_rundir.git#commit=$_commit") +sha256sums=('SKIP') + +build() { + cd $pkgname + ./configure --prefix=/usr + make +} + +package() { + cd $pkgname + DESTDIR="$pkgdir" make install + install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + + # empty directory for tmpfiles-setup + install -d $pkgdir/usr/share/factory/etc/pam.d +} diff --git a/pam_rundir/clean b/pam_rundir/clean new file mode 100644 index 0000000..2a1febf --- /dev/null +++ b/pam_rundir/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,pam_rundir} diff --git a/pam_rundir/deps b/pam_rundir/deps new file mode 100644 index 0000000..5664e30 --- /dev/null +++ b/pam_rundir/deps @@ -0,0 +1 @@ +git diff --git a/pam_rundir/time b/pam_rundir/time new file mode 100644 index 0000000..ffce619 --- /dev/null +++ b/pam_rundir/time @@ -0,0 +1,5 @@ + +real 0m5.256s +user 0m2.099s +sys 0m0.646s + diff --git a/pbget/PKGBUILD b/pbget/PKGBUILD new file mode 100644 index 0000000..4500978 --- /dev/null +++ b/pbget/PKGBUILD @@ -0,0 +1,24 @@ +pkgname=pbget +pkgver=2021.12 +pkgrel=01 +pkgdesc='Retrieve PKGBUILDs and local source files from Git, ABS and the AUR for makepkg.' +arch=(any) +url="https://xyne.dev/projects/pbget" +depends=(git pm2ml python3 python3-aur python3-xcgf python3-xcpf) +source=( + $url/src/$pkgname-$pkgver.tar.xz + $url/src/$pkgname-$pkgver.tar.xz.sig +) + +package () +{ + cd "$srcdir/$pkgname-$pkgver" + python3 setup.py install --prefix=/usr --root="$pkgdir" --optimize=1 +} + +license=(GPL) + +validpgpkeys=('EC3CBE7F607D11E663149E811D1F0DC78F173680') # xyne.dev + +sha256sums=(45a63dd2188ab76a9f5a6160a2f25b7e1b1f780eb4208c17674c1568268fc8b8 # pbget-2021.12.tar.xz + 8453cfd07dce7a337194b5e4dda3396f08331c04292e5998ad6769689d37d2a3) # pbget-2021.12.tar.xz.sig diff --git a/pbget/clean b/pbget/clean new file mode 100644 index 0000000..a50775e --- /dev/null +++ b/pbget/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,pbg*xz*} diff --git a/pbget/deps b/pbget/deps new file mode 100644 index 0000000..d6ad9f6 --- /dev/null +++ b/pbget/deps @@ -0,0 +1,6 @@ +git +pm2ml +python +python3-aur +python3-xcgf +python3-xcpf diff --git a/pbget/key b/pbget/key new file mode 100644 index 0000000..5b23939 --- /dev/null +++ b/pbget/key @@ -0,0 +1 @@ +gpg -v --recv-key 1D1F0DC78F173680 diff --git a/pbget/time b/pbget/time new file mode 100644 index 0000000..90e36f1 --- /dev/null +++ b/pbget/time @@ -0,0 +1 @@ +1.6s diff --git a/perl-linux-desktopfiles/PKGBUILD b/perl-linux-desktopfiles/PKGBUILD new file mode 100644 index 0000000..c62cc3a --- /dev/null +++ b/perl-linux-desktopfiles/PKGBUILD @@ -0,0 +1,55 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname='perl-linux-desktopfiles' +pkgver=0.25 +pkgrel=03 +pkgdesc="Linux::DesktopFiles - a very fast Perl module for parsing the Linux desktop files." +arch=('any') +depends=('perl>=5.14.0') +makedepends=() +_distdir="Linux-DesktopFiles-${pkgver}" + +url='https://metacpan.org/release/Linux-DesktopFiles' +source=("https://cpan.metacpan.org/authors/id/T/TR/TRIZEN/Linux-DesktopFiles-$pkgver.tar.gz") + +options=('!emptydirs') + + +build() { + ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \ + PERL_AUTOINSTALL=--skipdeps \ + PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \ + PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \ + MODULEBUILDRC=/dev/null + + cd "$srcdir/$_distdir" + /usr/bin/perl Makefile.PL + make + ) +} + +check() { + cd "$srcdir/$_distdir" + ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" + make test + ) +} + +package() { + cd "$srcdir/$_distdir" + make install + + rm -r "$pkgdir/usr/lib" + find "$pkgdir" -name .packlist -o -name perllocal.pod -delete +} + +#---- license gpg-key sha256sums ---- + +license=(PerlArtistic GPL) + +sha256sums=(60377a74fba90fa465200ee1c7430dbdde69d454d85f9ee101c039803a07e5f5) # Linux-DesktopFiles-0.25.tar.gz diff --git a/perl-linux-desktopfiles/clean b/perl-linux-desktopfiles/clean new file mode 100644 index 0000000..8fe68a8 --- /dev/null +++ b/perl-linux-desktopfiles/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,perl*gz,Lin*.tar.gz} diff --git a/perl-linux-desktopfiles/time b/perl-linux-desktopfiles/time new file mode 100644 index 0000000..8e39f04 --- /dev/null +++ b/perl-linux-desktopfiles/time @@ -0,0 +1,4 @@ + +real 0m2.509s +user 0m2.111s +sys 0m0.342s diff --git a/pidgin/PKGBUILD b/pidgin/PKGBUILD new file mode 100644 index 0000000..e13d83f --- /dev/null +++ b/pidgin/PKGBUILD @@ -0,0 +1,78 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=pidgin-mini-nodbus +pkgdesc="A minimal version of Pidgin for sane XMPP / IRC users no logind no dbus required" +pkgver=2.14.8 +pkgrel=02 +url="http://pidgin.im/" +options=('!libtool') +makedepends=('ca-certificates' 'python' ) +source=(https://downloads.sourceforge.net/pidgin/pidgin-${pkgver}.tar.bz2) + + +build() { + cd "$srcdir/pidgin-$pkgver" + + ./configure --prefix=/usr --sysconfdir=/etc --disable-schemas-install \ + --disable-meanwhile --disable-sm --disable-nm --disable-perl --disable-gnutls \ + --disable-doxygen --disable-gtkspell --disable-gestures --disable-dbus --disable-dbus-glib \ + --disable-consoleui --disable-tk --disable-tcl --disable-avahi \ + --disable-gstreamer --disable-farstream --disable-idn --disable-mono \ + --disable-vv --disable-nls --with-dynamic-prpls=jabber,irc \ + --disable-gevolution --with-system-ssl-certs=/etc/ssl/certs + make + } + + package() { + cd "$srcdir/pidgin-$pkgver" + make DESTDIR="$pkgdir" install + sed -e 's/_//g' pidgin/data/pidgin.desktop.in > pidgin.desktop + install -Dm644 pidgin.desktop "$pkgdir"/usr/share/applications/pidgin.desktop + + # Remove GConf schema file + rm -rf "$pkgdir/etc" + + # Remove libpurple and pidgin development headers + rm -rf "$pkgdir/usr/include" + + # Remove pkgconfig scripts + rm -rf "$pkgdir/usr/lib/pkgconfig" + + # Remove libpurple aclocal macro file + rm -rf "$pkgdir/usr/share/aclocal" +} + +arch=('i686' 'x86_64') + +depends=('gtk2' 'startup-notification' 'libxss' 'nss' 'hicolor-icon-theme') +# you can add dbus dbus-glib here and remove /.configure --disable-dbus --disable-dbus-glib + +provides=("pidgin" "libpurple") + +conflicts=('pidgin' 'libpurple' 'pidgin-mini') + +post_install() { + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor + libtool --finish /usr/lib/pidgin +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} + + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +sha512sums=('23975501b07d14829edab7b92628703962d7a8f90849b303e2a765ec6e47d1fcbdeff62539811e26682e300a2f94520193369844de3b1c0e87f99721ca0255e6') # pidgin-2.14.8.tar.bz2 + diff --git a/pidgin/clean b/pidgin/clean new file mode 100644 index 0000000..f46d92d --- /dev/null +++ b/pidgin/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,pidgin*.tar.bz2} diff --git a/pidgin/deps b/pidgin/deps new file mode 100644 index 0000000..f38a9f5 --- /dev/null +++ b/pidgin/deps @@ -0,0 +1,6 @@ +gtk2 +startup-notification +libxss +nss +hicolor-icon-theme +python diff --git a/pidgin/time b/pidgin/time new file mode 100644 index 0000000..26db969 --- /dev/null +++ b/pidgin/time @@ -0,0 +1,5 @@ + +real 1m49.060s +user 2m38.153s +sys 0m13.073s + diff --git a/pm2ml/PKGBUILD b/pm2ml/PKGBUILD new file mode 100644 index 0000000..45c3250 --- /dev/null +++ b/pm2ml/PKGBUILD @@ -0,0 +1,47 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=pm2ml +pkgver=2021.11.20.1 +pkgrel=02 +pkgdesc='Generate metalinks for downloading Pacman packages and databases.' +arch=(any) +url="https://xyne.dev/projects/pm2ml" +depends=(pyalpm python3 python3-xcgf python3-xcpf) +optdepends=('aria2: ppl script support.' 'python3-aur: AUR support' 'reflector: Reflector support') +backup=(etc/ppl.conf) +source=( + https://xyne.dev/projects/pm2ml/src/pm2ml-2021.11.20.1.tar.xz + https://xyne.dev/projects/pm2ml/src/pm2ml-2021.11.20.1.tar.xz.sig +) + +package () +{ + cd "$srcdir/$pkgname-$pkgver" + python3 setup.py install --prefix=/usr --root="$pkgdir" --optimize=1 + for foo_ in ppl pplsyu ppls; do + install -Dm755 "$foo_" "$pkgdir/usr/bin/$foo_" + done + install -Dm644 "ppl.conf" "$pkgdir/etc/ppl.conf" +} + +#---- license gpg-key sha512sums ---- + +license=(GPL) + +validpgpkeys=('EC3CBE7F607D11E663149E811D1F0DC78F173680') + +sha512sums=( + 293cc288509ffc57c232e67e6c99e5de57a259440705ee239b1741f07f39cbdafbc8fa0e17cc9c3d22cf544fcebd3f46c4811e00070d9f0865ea687288dcab07 + 8c651bd924f2d77260addfb8674a18cf45b3b319aecd6dba905509a8fe5493c381e361d9f91aade5537efc8ca022d47fe2c687235cad4b91434c4f8a5d441067 +) +md5sums=( + e03e44428baec1cbdc24561843ad67da + c281d715d8c56418a2f9bbff91357900 +) + +sha256sums=(5a8e16af5a6c3f634275ee2721f984917d2f25806b2d51517d3ecd855e97278c # pm2ml-2021.11.20.1.tar.xz + a08f69f614a9915dd469e7a5f92a5b18d3da4de2b099b34b04f55fb5a6d11be6) # pm2ml-2021.11.20.1.tar.xz.sig diff --git a/pm2ml/clean b/pm2ml/clean new file mode 100644 index 0000000..680ea0c --- /dev/null +++ b/pm2ml/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,pm2*xz*} diff --git a/pm2ml/deps b/pm2ml/deps new file mode 100644 index 0000000..5ac43c0 --- /dev/null +++ b/pm2ml/deps @@ -0,0 +1,4 @@ +pyalpm +python +python3-xcgf +python3-xcpf diff --git a/pm2ml/time b/pm2ml/time new file mode 100644 index 0000000..e633157 --- /dev/null +++ b/pm2ml/time @@ -0,0 +1 @@ +1.7s diff --git a/pth/PKGBUILD b/pth/PKGBUILD new file mode 100644 index 0000000..10409d7 --- /dev/null +++ b/pth/PKGBUILD @@ -0,0 +1,52 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=pth +pkgver=2.0.7 +pkgrel=07 +pkgdesc="The GNU Portable Threads." +arch=('x86_64') +url="https://www.gnu.org/software/pth/" +depends=('glibc' 'awk') +options=('!makeflags') +source=(https://ftp.gnu.org/gnu/pth/$pkgname-$pkgver.tar.gz{,.sig}) + +build() { + cd "$pkgname-$pkgver" + + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --mandir=/usr/share/man \ + --disable-static \ + --enable-shared \ + --with-pic + + sed -i "s|awk=''|awk=/bin/awk|g" shtool # "Cannot find a reasonable Awk" + + make +} + +check() { + cd "$pkgname-$pkgver" + + make check +} + +package() { + cd "$pkgname-$pkgver" + + make DESTDIR="${pkgdir}" install +} + +#---- license gpg-key sha256sums ---- + +license=('LGPL') + +validpgpkeys=('4E23E878D41A0A88EDFCFA5A6E744ACBA9C09E30') # Ralf Engelschall + +sha256sums=(72353660c5a2caafd601b20e12e75d865fd88f6cf1a088b306a3963f0bc77232 # pth-2.0.7.tar.gz + e2e18f775fc916ebb134a3254d518b158b1c84604759fbc6e1c38d530e813604) # pth-2.0.7.tar.gz.sig diff --git a/pth/PKGBUILD-arch b/pth/PKGBUILD-arch new file mode 100644 index 0000000..d01e84b --- /dev/null +++ b/pth/PKGBUILD-arch @@ -0,0 +1,42 @@ + +pkgname=pth +pkgver=2.0.7 +pkgrel=7 +pkgdesc="The GNU Portable Threads." +arch=('x86_64') +url="https://www.gnu.org/software/pth/" +license=('LGPL') +depends=('glibc' 'awk') +options=('!makeflags') +source=(https://ftp.gnu.org/gnu/pth/$pkgname-$pkgver.tar.gz{,.sig}) +sha512sums=('f79d74047c50e06f3198356f88647c5c1c8a04ebdd94641fc31d5ab0fd2750d86615fcb81da2f98d7ea73d012a501195d3fa09060571d18dcfdaec5d7a0ecb12' + 'SKIP') +validpgpkeys=('4E23E878D41A0A88EDFCFA5A6E744ACBA9C09E30') # Ralf Engelschall + +build() { + cd "$pkgname-$pkgver" + + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --mandir=/usr/share/man \ + --disable-static \ + --enable-shared \ + --with-pic + + sed -i "s|awk=''|awk=/bin/awk|g" shtool # "Cannot find a reasonable Awk" + + make +} + +check() { + cd "$pkgname-$pkgver" + + make check +} + +package() { + cd "$pkgname-$pkgver" + + make DESTDIR="${pkgdir}" install +} diff --git a/pth/clean b/pth/clean new file mode 100644 index 0000000..cedda8b --- /dev/null +++ b/pth/clean @@ -0,0 +1 @@ +rm -rvf {*.tar.gz*,src,pkg} diff --git a/pth/deps b/pth/deps new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/pth/deps @@ -0,0 +1 @@ + diff --git a/pth/key b/pth/key new file mode 100644 index 0000000..74ed715 --- /dev/null +++ b/pth/key @@ -0,0 +1 @@ +gpg -v --recv-key 6E744ACBA9C09E30 diff --git a/pth/time b/pth/time new file mode 100644 index 0000000..84ed8c1 --- /dev/null +++ b/pth/time @@ -0,0 +1,3 @@ +real 0m12.405s +user 0m11.585s +sys 0m1.892s diff --git a/python-pytest/PKGBUILD b/python-pytest/PKGBUILD new file mode 100644 index 0000000..41d7789 --- /dev/null +++ b/python-pytest/PKGBUILD @@ -0,0 +1,60 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=python-pytest +pkgver=6.2.5 +pkgrel=03 +pkgdesc="Simple powerful testing with Python" +arch=('any') +url="https://pytest.org/" +depends=('python-attrs' 'python-iniconfig' 'python-packaging' 'python-pluggy' + 'python-py' 'python-toml') +makedepends=('python-setuptools') +checkdepends=('python-argcomplete' 'python-hypothesis' 'python-mock' + 'python-nose' 'python-requests' 'python-xmlschema' + # Unlisted, but actually used. Check again after a while: + 'lsof' 'python-asynctest' 'python-decorator' 'python-docutils' + 'python-jinja' 'python-numpy' 'python-pexpect' 'python-pygments' + 'python-pytest-xdist' 'python-twisted' 'anything-sync-daemon') +source=("https://files.pythonhosted.org/packages/source/p/pytest/pytest-$pkgver.tar.gz") + +# Remove dep on setuptools_scm and workaround test failures +prepare() { + cd pytest-$pkgver + sed -i "/^\[metadata\]/a version = $pkgver + /setuptools-scm/d" setup.cfg + sed -i '/setuptools-scm\|wheel/d + /\[tool.setuptools_scm\]/,/^$/d + /_pytest.warning_types.PytestUnknownMarkWarning/a \ "ignore:Creating a LegacyVersion has been deprecated and will be removed in the next major release:DeprecationWarning",' pyproject.toml +} + +build() { + cd pytest-$pkgver + python setup.py build +} + +#check() { +# cd pytest-$pkgver +# python -m venv --system-site-packages test-env +# test-env/bin/python setup.py install --optimize=1 --skip-build +# test-env/bin/python -m pytest +#} +# tests fail "asd not defined" installed anything-sync-daemon to help it, one test passed one still fails?? +# + +package() { + cd pytest-$pkgver + python setup.py install --root="$pkgdir" --optimize=1 + install -D -m644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname/ +} + + +#---- license gpg-key sha256sums ---- +license=('MIT') +sha256sums=('131b36680866a76e6781d13f101efb86cf674ebb9762eb70d3082b6f29889e89') +b2sums=('9dfc87279617be58353566009325f929e6fa53d54fd4c665a75f3b359ab5415972d745a680eb85ab21ca9eaec84450bc1decd50566b0ccdf90d7551f3d03ee70') + +sha256sums=(131b36680866a76e6781d13f101efb86cf674ebb9762eb70d3082b6f29889e89) # pytest-6.2.5.tar.gz diff --git a/python-pytest/PKGBUILD-arch b/python-pytest/PKGBUILD-arch new file mode 100644 index 0000000..85d4d3d --- /dev/null +++ b/python-pytest/PKGBUILD-arch @@ -0,0 +1,51 @@ +# Maintainer: Felix Yan +# Maintainer: Daniel M. Capella +# Contributor: Felix Kaiser + +pkgname=python-pytest +pkgver=6.2.5 +pkgrel=3 +pkgdesc="Simple powerful testing with Python" +arch=('any') +license=('MIT') +url="https://pytest.org/" +depends=('python-attrs' 'python-iniconfig' 'python-packaging' 'python-pluggy' + 'python-py' 'python-toml') +makedepends=('python-setuptools') +checkdepends=('python-argcomplete' 'python-hypothesis' 'python-mock' + 'python-nose' 'python-requests' 'python-xmlschema' + # Unlisted, but actually used. Check again after a while: + 'lsof' 'python-asynctest' 'python-decorator' 'python-docutils' + 'python-jinja' 'python-numpy' 'python-pexpect' 'python-pygments' + 'python-pytest-xdist' 'python-twisted') +source=("https://files.pythonhosted.org/packages/source/p/pytest/pytest-$pkgver.tar.gz") +sha256sums=('131b36680866a76e6781d13f101efb86cf674ebb9762eb70d3082b6f29889e89') +b2sums=('9dfc87279617be58353566009325f929e6fa53d54fd4c665a75f3b359ab5415972d745a680eb85ab21ca9eaec84450bc1decd50566b0ccdf90d7551f3d03ee70') + +# Remove dep on setuptools_scm and workaround test failures +prepare() { + cd pytest-$pkgver + sed -i "/^\[metadata\]/a version = $pkgver + /setuptools-scm/d" setup.cfg + sed -i '/setuptools-scm\|wheel/d + /\[tool.setuptools_scm\]/,/^$/d + /_pytest.warning_types.PytestUnknownMarkWarning/a \ "ignore:Creating a LegacyVersion has been deprecated and will be removed in the next major release:DeprecationWarning",' pyproject.toml +} + +build() { + cd pytest-$pkgver + python setup.py build +} + +check() { + cd pytest-$pkgver + python -m venv --system-site-packages test-env + test-env/bin/python setup.py install --optimize=1 --skip-build + test-env/bin/python -m pytest +} + +package() { + cd pytest-$pkgver + python setup.py install --root="$pkgdir" --optimize=1 + install -D -m644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname/ +} diff --git a/python-pytest/clean b/python-pytest/clean new file mode 100644 index 0000000..a222ceb --- /dev/null +++ b/python-pytest/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,pytest*.tar.gz} diff --git a/python-pytest/deps b/python-pytest/deps new file mode 100644 index 0000000..1ca4a74 --- /dev/null +++ b/python-pytest/deps @@ -0,0 +1,23 @@ +python-setuptools +python-argcomplete +python-hypothesis +python-mock + +python-iniconfig +python-pluggy +python-py +python-toml +python-nose +python-requests +python-xmlschema +lsof +python-asynctest +python-decorator +python-docutils +python-jinja +python-numpy +python-pexpect +python-pygments +python-pytest-xdist +python-twisted +anything-sync-daemon diff --git a/python-pytest/time b/python-pytest/time new file mode 100644 index 0000000..263029b --- /dev/null +++ b/python-pytest/time @@ -0,0 +1,5 @@ + +real 3m6.264s +user 2m50.774s +sys 0m10.813s + diff --git a/python-pyudev/0001-tests-fix-tests-for-pytest-4.0.patch b/python-pyudev/0001-tests-fix-tests-for-pytest-4.0.patch new file mode 100644 index 0000000..579534d --- /dev/null +++ b/python-pyudev/0001-tests-fix-tests-for-pytest-4.0.patch @@ -0,0 +1,64 @@ +From cc04bc5ca08e4761b41c5cf220889c4233f157a0 Mon Sep 17 00:00:00 2001 +From: FFY00 +Date: Fri, 24 May 2019 19:08:41 +0100 +Subject: [PATCH] tests: fix tests for pytest 4.0 + +--- + tests/plugins/mock_libudev.py | 6 ++++-- + tests/plugins/privileged.py | 5 +++-- + tests/plugins/travis.py | 5 +++-- + 3 files changed, 10 insertions(+), 6 deletions(-) + +diff --git a/tests/plugins/mock_libudev.py b/tests/plugins/mock_libudev.py +index aefeb31..0bde07b 100644 +--- a/tests/plugins/mock_libudev.py ++++ b/tests/plugins/mock_libudev.py +@@ -32,6 +32,7 @@ + from contextlib import contextmanager + from collections import namedtuple + ++import pytest + import mock + + Node = namedtuple('Node', 'name value next') +@@ -93,5 +94,6 @@ def libudev_list(libudev, function, items): + EXPOSED_FUNCTIONS = [libudev_list] + + +-def pytest_namespace(): +- return dict((f.__name__, f) for f in EXPOSED_FUNCTIONS) ++def pytest_configure(): ++ for f in EXPOSED_FUNCTIONS: ++ setattr(pytest, f.__name__, f) +diff --git a/tests/plugins/privileged.py b/tests/plugins/privileged.py +index 92328b9..c636980 100644 +--- a/tests/plugins/privileged.py ++++ b/tests/plugins/privileged.py +@@ -71,5 +71,6 @@ def unload_dummy(): + EXPOSED_FUNCTIONS = [load_dummy, unload_dummy] + + +-def pytest_namespace(): +- return dict((f.__name__, f) for f in EXPOSED_FUNCTIONS) ++def pytest_configure(): ++ for f in EXPOSED_FUNCTIONS: ++ setattr(pytest, f.__name__, f) +diff --git a/tests/plugins/travis.py b/tests/plugins/travis.py +index 46466c2..15a780e 100644 +--- a/tests/plugins/travis.py ++++ b/tests/plugins/travis.py +@@ -38,8 +38,9 @@ def is_on_travis_ci(): + EXPOSED_FUNCTIONS = [is_on_travis_ci] + + +-def pytest_namespace(): +- return dict((f.__name__, f) for f in EXPOSED_FUNCTIONS) ++def pytest_configure(): ++ for f in EXPOSED_FUNCTIONS: ++ setattr(pytest, f.__name__, f) + + + def pytest_runtest_setup(item): +-- +2.21.0 + diff --git a/python-pyudev/PKGBUILD b/python-pyudev/PKGBUILD new file mode 100644 index 0000000..8170f86 --- /dev/null +++ b/python-pyudev/PKGBUILD @@ -0,0 +1,73 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +_pkgname=pyudev +pkgname=python-$_pkgname +pkgver=0.22 +pkgrel=07 +arch=('any') +url='https://github.com/pyudev/pyudev' +pkgdesc='Python bindings to libudev' +depends=('python-six') +makedepends=('python-setuptools' 'python-sphinx' 'python-mock') +checkdepends=('python-pytest-runner' 'python-docutils' 'python-mock' 'python-hypothesis') +optdepends=('python-pyqt5: PyQt integration' + 'pyside2: PySide integration' + 'python-wxpython: WX integration') +source=("$_pkgname-$pkgver.tar.gz::$url/archive/v$pkgver.tar.gz") +# 0001-tests-fix-tests-for-pytest-4.0.patch) + +prepare() { + cd $_pkgname-$pkgver + + # pytest-runner doesn't understand norecursedirs + sed -i '/norecursedirs/d' setup.cfg + echo -e '[pytest]\nnorecursedirs = .* _* build' > pytest.ini + + # Remove failing tests (we can't test udev inside makepkg) + rm tests/test_{util,discover,device,monitor,enumerate,observer}.py + + # Fix documentation build + sed -i "s|os.path.join(doc_directory, os.pardir)|os.path.join(doc_directory, os.pardir, 'src')| + s|b'autodoc-process-docstring'|'autodoc-process-docstring'|" doc/conf.py +} + +build() { + cd $_pkgname-$pkgver + + python setup.py build + + # Generate documentation + sphinx-apidoc -f -e -o doc src/pyudev + sphinx-build -a -b html doc doc/html +} + +check() { + cd $_pkgname-$pkgver + + python setup.py pytest +} + +package() { + cd $_pkgname-$pkgver + + python setup.py install --root "$pkgdir" --skip-build -O1 + + # Install documentation + install -dm 755 "$pkgdir"/usr/share/doc/$pkgname + cp -r -a --no-preserve=ownership doc/html "$pkgdir"/usr/share/doc/$pkgname + rm -rf "$pkgdir"/usr/share/doc/$pkgname/html/.doctrees +} + +#---- license gpg-key sha256sums ---- + +license=('LGPL') + +sha512sums=('b509f4442e1c11eea9755fbae867b0aee97221db60d78ed2b8da40c39fb11015982b2e9b423680ed44b3f9db2c84b3a0a57a1e8aad4fb939061e33646638d9e3') + +sha256sums=(245b5717923bed83993cd50761c3f8f1a1a68e2cd09031adbd30beed4dc60077) # pyudev-0.22.tar.gz +# c1cec2966f1959c9af695391189ef7970a57d363eda70c3d7f8734ad0095f827) # 0001-tests-fix-tests-for-pytest-4.0.patch + diff --git a/python-pyudev/PKGBUILD-arch b/python-pyudev/PKGBUILD-arch new file mode 100644 index 0000000..557ee16 --- /dev/null +++ b/python-pyudev/PKGBUILD-arch @@ -0,0 +1,64 @@ +# Maintainer: Filipe Laíns (FFY00) +# Contributor: Andrea Scarpino +# Contributor: examon +# Contributor: Sebastian Wiesner +# Contributor: Dwight Schauer + +_pkgname=pyudev +pkgname=python-$_pkgname +pkgver=0.22 +pkgrel=7 +arch=('any') +url='https://github.com/pyudev/pyudev' +license=('LGPL') +pkgdesc='Python bindings to libudev' +depends=('python-six' 'systemd') +makedepends=('python-setuptools' 'python-sphinx' 'python-mock') +checkdepends=('python-pytest-runner' 'python-docutils' 'python-mock' 'python-hypothesis') +optdepends=('python-pyqt5: PyQt integration' + 'pyside2: PySide integration' + 'python-wxpython: WX integration') +source=("$_pkgname-$pkgver.tar.gz::$url/archive/v$pkgver.tar.gz") +sha512sums=('b509f4442e1c11eea9755fbae867b0aee97221db60d78ed2b8da40c39fb11015982b2e9b423680ed44b3f9db2c84b3a0a57a1e8aad4fb939061e33646638d9e3') + +prepare() { + cd $_pkgname-$pkgver + + # pytest-runner doesn't understand norecursedirs + sed -i '/norecursedirs/d' setup.cfg + echo -e '[pytest]\nnorecursedirs = .* _* build' > pytest.ini + + # Remove failing tests (we can't test udev inside makepkg) + rm tests/test_{util,discover,device,monitor,enumerate,observer}.py + + # Fix documentation build + sed -i "s|os.path.join(doc_directory, os.pardir)|os.path.join(doc_directory, os.pardir, 'src')| + s|b'autodoc-process-docstring'|'autodoc-process-docstring'|" doc/conf.py +} + +build() { + cd $_pkgname-$pkgver + + python setup.py build + + # Generate documentation + sphinx-apidoc -f -e -o doc src/pyudev + sphinx-build -a -b html doc doc/html +} + +check() { + cd $_pkgname-$pkgver + + python setup.py pytest +} + +package() { + cd $_pkgname-$pkgver + + python setup.py install --root "$pkgdir" --skip-build -O1 + + # Install documentation + install -dm 755 "$pkgdir"/usr/share/doc/$pkgname + cp -r -a --no-preserve=ownership doc/html "$pkgdir"/usr/share/doc/$pkgname + rm -rf "$pkgdir"/usr/share/doc/$pkgname/html/.doctrees +} diff --git a/python-pyudev/clean b/python-pyudev/clean new file mode 100644 index 0000000..05bdc1e --- /dev/null +++ b/python-pyudev/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,pyu*.tar.gz} diff --git a/python-pyudev/deps b/python-pyudev/deps new file mode 100644 index 0000000..8e25e1e --- /dev/null +++ b/python-pyudev/deps @@ -0,0 +1,9 @@ +python-six +python-setuptools +python-sphinx +python-mock +python-pytest-runner +python-docutils +python-mock +python-hypothesis +eudev diff --git a/python-pyudev/time b/python-pyudev/time new file mode 100644 index 0000000..b135725 --- /dev/null +++ b/python-pyudev/time @@ -0,0 +1,5 @@ + +real 0m6.720s +user 0m5.971s +sys 0m0.764s + diff --git a/python-setuptools/PKGBUILD b/python-setuptools/PKGBUILD new file mode 100644 index 0000000..e0df932 --- /dev/null +++ b/python-setuptools/PKGBUILD @@ -0,0 +1,90 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=python-setuptools +pkgver=59.3.0 +pkgrel=01 +epoch=1 +pkgdesc="Easily download, build, install, upgrade, and uninstall Python packages" +arch=('any') +url="https://pypi.org/project/setuptools/" +depends=('python-appdirs' 'python-more-itertools' 'python-ordered-set' 'python-packaging' + 'python-pyparsing') +makedepends=('git' 'python-setuptools') +checkdepends=('python-jaraco.envs' 'python-jaraco.path' 'python-mock' 'python-pip' + 'python-pytest-fixture-config' 'python-pytest-flake8' 'python-pytest-virtualenv' + 'python-wheel' 'python-paver' 'python-pytest-cov' 'python-sphinx') +provides=('python-distribute') +replaces=('python-distribute') +source=("$pkgname-$pkgver.tar.gz::https://github.com/pypa/setuptools/archive/v$pkgver.tar.gz") + +export SETUPTOOLS_INSTALL_WINDOWS_SPECIFIC_FILES=0 + +prepare() { + rm -r setuptools-$pkgver/{pkg_resources,setuptools}/{extern,_vendor} + + # Upstream devendoring logic is badly broken, see: + # https://bugs.archlinux.org/task/58670 + # https://github.com/pypa/pip/issues/5429 + # https://github.com/pypa/setuptools/issues/1383 + # The simplest fix is to simply rewrite import paths to use the canonical + # location in the first place + for _module in setuptools pkg_resources '' ; do + find setuptools-$pkgver -name \*.py -exec sed -i \ + -e 's/from '$_module.extern' import/import/' \ + -e 's/from '$_module.extern'./from /' \ + -e 's/import '$_module.extern'./import /' \ + -e "s/__import__('$_module.extern./__import__('/" \ + {} + + done + + # Remove post-release tag since we are using stable tags + sed -e '/tag_build = .post/d' \ + -e '/tag_date = 1/d' \ + -i setuptools-$pkgver/setup.cfg + + # 'Clean' installation is expected to fail since we removed bundled packages + sed -i '/^def test_clean_env_install/i @pytest.mark.xfail' setuptools-$pkgver/setuptools/tests/test_virtualenv.py + + # Tests failed. Importing an unbundled new setuptools in a virtualenv does not work, but this won't + # affect normal virtualenv usage (which don't have to import the unbundled setuptools in *current* + # dir. + sed -e '/^def test_pip_upgrade_from_source/i @pytest.mark.xfail' \ + -e '/^def test_test_command_install_requirements/i @pytest.mark.xfail' \ + -e '/^def test_no_missing_dependencies/i @pytest.mark.xfail' \ + -i setuptools-$pkgver/setuptools/tests/test_virtualenv.py + + cd "$srcdir"/setuptools-$pkgver + sed -i -e "s|^#\!.*/usr/bin/env python|#!/usr/bin/env python3|" setuptools/command/easy_install.py +} + +build() { + cd setuptools-$pkgver + python setup.py build +} + +check() { ( + # Workaround UTF-8 tests by setting LC_CTYPE + export LC_CTYPE=en_US.UTF-8 + + # https://github.com/pypa/setuptools/pull/810 + export PYTHONDONTWRITEBYTECODE=1 + + cd setuptools-$pkgver + python -m pytest --deselect setuptools/tests/test_distutils_adoption.py +)} + +package() { + cd setuptools-$pkgver + python setup.py install --prefix=/usr --root="$pkgdir" --optimize=1 --skip-build +} + +#---- license gpg-key sha256sums ---- + +license=('PSF') + +sha256sums=(e119e09763a13da7f58124a85c590d5d0007b47144fa27c3af5cd147822ec5d9) # python-setuptools-59.3.0.tar.gz + diff --git a/python-setuptools/PKGBUILD-arch b/python-setuptools/PKGBUILD-arch new file mode 100644 index 0000000..6101931 --- /dev/null +++ b/python-setuptools/PKGBUILD-arch @@ -0,0 +1,83 @@ +# Maintainer: Angel Velasquez +# Maintainer: Felix Yan +# Contributor: Eli Schwartz + +pkgname=python-setuptools +pkgver=59.3.0 +pkgrel=1 +epoch=1 +pkgdesc="Easily download, build, install, upgrade, and uninstall Python packages" +arch=('any') +license=('PSF') +url="https://pypi.org/project/setuptools/" +depends=('python-appdirs' 'python-more-itertools' 'python-ordered-set' 'python-packaging' + 'python-pyparsing') +makedepends=('git' 'python-setuptools') +checkdepends=('python-jaraco.envs' 'python-jaraco.path' 'python-mock' 'python-pip' + 'python-pytest-fixture-config' 'python-pytest-flake8' 'python-pytest-virtualenv' + 'python-wheel' 'python-paver' 'python-pytest-cov' 'python-sphinx') +provides=('python-distribute') +replaces=('python-distribute') +source=("$pkgname-$pkgver.tar.gz::https://github.com/pypa/setuptools/archive/v$pkgver.tar.gz") +sha512sums=('6f9711c975ac62b6c07c1274dd723ef915c8f9741716c1a6b965d3b98a1019427db356c24dcf385147b4e5fb60c41c84790c029e0dedb3fe5395782bafe3e8c3') + +export SETUPTOOLS_INSTALL_WINDOWS_SPECIFIC_FILES=0 + +prepare() { + rm -r setuptools-$pkgver/{pkg_resources,setuptools}/{extern,_vendor} + + # Upstream devendoring logic is badly broken, see: + # https://bugs.archlinux.org/task/58670 + # https://github.com/pypa/pip/issues/5429 + # https://github.com/pypa/setuptools/issues/1383 + # The simplest fix is to simply rewrite import paths to use the canonical + # location in the first place + for _module in setuptools pkg_resources '' ; do + find setuptools-$pkgver -name \*.py -exec sed -i \ + -e 's/from '$_module.extern' import/import/' \ + -e 's/from '$_module.extern'./from /' \ + -e 's/import '$_module.extern'./import /' \ + -e "s/__import__('$_module.extern./__import__('/" \ + {} + + done + + # Remove post-release tag since we are using stable tags + sed -e '/tag_build = .post/d' \ + -e '/tag_date = 1/d' \ + -i setuptools-$pkgver/setup.cfg + + # 'Clean' installation is expected to fail since we removed bundled packages + sed -i '/^def test_clean_env_install/i @pytest.mark.xfail' setuptools-$pkgver/setuptools/tests/test_virtualenv.py + + # Tests failed. Importing an unbundled new setuptools in a virtualenv does not work, but this won't + # affect normal virtualenv usage (which don't have to import the unbundled setuptools in *current* + # dir. + sed -e '/^def test_pip_upgrade_from_source/i @pytest.mark.xfail' \ + -e '/^def test_test_command_install_requirements/i @pytest.mark.xfail' \ + -e '/^def test_no_missing_dependencies/i @pytest.mark.xfail' \ + -i setuptools-$pkgver/setuptools/tests/test_virtualenv.py + + cd "$srcdir"/setuptools-$pkgver + sed -i -e "s|^#\!.*/usr/bin/env python|#!/usr/bin/env python3|" setuptools/command/easy_install.py +} + +build() { + cd setuptools-$pkgver + python setup.py build +} + +check() { ( + # Workaround UTF-8 tests by setting LC_CTYPE + export LC_CTYPE=en_US.UTF-8 + + # https://github.com/pypa/setuptools/pull/810 + export PYTHONDONTWRITEBYTECODE=1 + + cd setuptools-$pkgver + python -m pytest --deselect setuptools/tests/test_distutils_adoption.py +)} + +package() { + cd setuptools-$pkgver + python setup.py install --prefix=/usr --root="$pkgdir" --optimize=1 --skip-build +} diff --git a/python-setuptools/clean b/python-setuptools/clean new file mode 100644 index 0000000..af8b46d --- /dev/null +++ b/python-setuptools/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,*tar.gz*} diff --git a/python-setuptools/deps b/python-setuptools/deps new file mode 100644 index 0000000..e0cc42b --- /dev/null +++ b/python-setuptools/deps @@ -0,0 +1,18 @@ +git +python-appdirs +python-more-itertools +python-ordered-set +python-packaging +python-pyparsing +python-setuptools +python-jaraco.envs +python-jaraco.path +python-mock +python-pip +python-pytest-fixture-config +python-pytest-flake8 +python-pytest-virtualenv +python-wheel +python-paver +python-pytest-cov +python-sphinx diff --git a/python-setuptools/time b/python-setuptools/time new file mode 100644 index 0000000..a985c19 --- /dev/null +++ b/python-setuptools/time @@ -0,0 +1,5 @@ + +real 3m39.055s +user 1m28.917s +sys 0m10.355s + diff --git a/python2-mutagen/PKGBUILD b/python2-mutagen/PKGBUILD new file mode 100644 index 0000000..5541e05 --- /dev/null +++ b/python2-mutagen/PKGBUILD @@ -0,0 +1,48 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +_name=mutagen +pkgname=python2-mutagen +pkgver=1.43.1 +pkgrel=01 +arch=('any') +pkgdesc="An audio metadata tag reader and writer (python2 library)" +url="https://github.com/quodlibet/mutagen" +depends=('python2-setuptools') +source=("https://github.com/quodlibet/${_name}/releases/download/release-$pkgver/${_name}-$pkgver.tar.gz"{,.sig}) + +prepare() { + mv -v "${_name}-${pkgver}" "${pkgname}-${pkgver}" + cd "${pkgname}-$pkgver" + for script in {mid3{cp,iconv,v2},moggsplit,mutagen-{inspect,pony}}; do + sed -e "s/${script}/${script}2/g" -i setup.py + mv -v "man/${script}"{,2}.1 + done +} + +build() { + cd "${pkgname}-${pkgver}" + python2 setup.py build +} + +package() { + cd "${pkgname}-${pkgver}" + python2 setup.py install --skip-build \ + --optimize=1 \ + --prefix=/usr \ + --root="${pkgdir}" + install -vDm 644 {NEWS,README.rst} \ + -t "${pkgdir}/usr/share/doc/${pkgname}" +} + +#---- license gpg-key sha256sums ---- + +license=('GPL2') + +validpgpkeys=('0EBF782C5D53F7E5FB02A66746BD761F7A49B0EC') # Christoph Reiter + +sha256sums=(d873baeb7815311d3420aab0a1d83f050f628228cbc2d6045a14a16460411bc9 # mutagen-1.43.1.tar.gz + 1deb4c09ab8e0264dcc5176f2001d732f70ec6d28266a20a9dc856c26bd6856d) # mutagen-1.43.1.tar.gz.sig diff --git a/python2-mutagen/PKGBUILD-aur b/python2-mutagen/PKGBUILD-aur new file mode 100644 index 0000000..598cc92 --- /dev/null +++ b/python2-mutagen/PKGBUILD-aur @@ -0,0 +1,41 @@ +# Maintainer: +# Contributor: Bastien Traverse +# Contributor: David Runge + +_name=mutagen +pkgname=python2-mutagen +pkgver=1.43.1 +pkgrel=1 +arch=('any') +pkgdesc="An audio metadata tag reader and writer (python2 library)" +url="https://github.com/quodlibet/mutagen" +license=('GPL2') +depends=('python2-setuptools') +source=("https://github.com/quodlibet/${_name}/releases/download/release-$pkgver/${_name}-$pkgver.tar.gz"{,.sig}) +sha256sums=('d873baeb7815311d3420aab0a1d83f050f628228cbc2d6045a14a16460411bc9' + 'SKIP') +validpgpkeys=('0EBF782C5D53F7E5FB02A66746BD761F7A49B0EC') # Christoph Reiter + +prepare() { + mv -v "${_name}-${pkgver}" "${pkgname}-${pkgver}" + cd "${pkgname}-$pkgver" + for script in {mid3{cp,iconv,v2},moggsplit,mutagen-{inspect,pony}}; do + sed -e "s/${script}/${script}2/g" -i setup.py + mv -v "man/${script}"{,2}.1 + done +} + +build() { + cd "${pkgname}-${pkgver}" + python2 setup.py build +} + +package() { + cd "${pkgname}-${pkgver}" + python2 setup.py install --skip-build \ + --optimize=1 \ + --prefix=/usr \ + --root="${pkgdir}" + install -vDm 644 {NEWS,README.rst} \ + -t "${pkgdir}/usr/share/doc/${pkgname}" +} diff --git a/python2-mutagen/clean b/python2-mutagen/clean new file mode 100644 index 0000000..7ac74f7 --- /dev/null +++ b/python2-mutagen/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,mut*.tar.gz*} diff --git a/python2-mutagen/deps b/python2-mutagen/deps new file mode 100644 index 0000000..9fada9f --- /dev/null +++ b/python2-mutagen/deps @@ -0,0 +1 @@ +python2-setuptools diff --git a/python2-mutagen/key b/python2-mutagen/key new file mode 100644 index 0000000..653400e --- /dev/null +++ b/python2-mutagen/key @@ -0,0 +1 @@ +gpg -v --recv-key 5A62D0CAB6264964 diff --git a/python2-mutagen/time b/python2-mutagen/time new file mode 100644 index 0000000..fdb0e52 --- /dev/null +++ b/python2-mutagen/time @@ -0,0 +1,4 @@ + +real 0m3.360s +user 0m2.800s +sys 0m0.511s diff --git a/python2-pdfrw/PKGBUILD b/python2-pdfrw/PKGBUILD new file mode 100644 index 0000000..ecaf687 --- /dev/null +++ b/python2-pdfrw/PKGBUILD @@ -0,0 +1,32 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +_pypiname=pdfrw +pkgname=python2-pdfrw +pkgver=0.4 +pkgrel=03 +pkgdesc='Convert restructured text to PDF via reportlab.' +arch=('any') +url="https://github.com/pmaupin/$_pypiname" +makedepends=('python-setuptools' 'python2-setuptools') +source=("$_pypiname-$pkgver.tar.gz::https://github.com/pmaupin/$_pypiname/archive/v$pkgver.tar.gz") + +prepare(){ + cp -r "$srcdir/$_pypiname-$pkgver" "$srcdir/$_pypiname-$pkgver-py2" +} + +package() { + depends=('python2') + cd "$srcdir/$_pypiname-$pkgver-py2" + python2 setup.py install --root="$pkgdir" -O1 + install -Dm644 LICENSE.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.txt" +} + +#---- license gpg-key sha256sums ---- + +license=('MIT') + +sha256sums=(f4da059213a0fdf8f63aa3f711cfbc25a5100333514b396f71bb90cb7bd4365f) # pdfrw-0.4.tar.gz diff --git a/python2-pdfrw/PKGBUILD-aur b/python2-pdfrw/PKGBUILD-aur new file mode 100644 index 0000000..16ffc28 --- /dev/null +++ b/python2-pdfrw/PKGBUILD-aur @@ -0,0 +1,26 @@ +# Maintainer: Jiachen Yang +# AUR Maintainer: GI Jack + +_pypiname=pdfrw +pkgname=python2-pdfrw +pkgver=0.4 +pkgrel=3 +pkgdesc='Convert restructured text to PDF via reportlab.' +arch=('any') +url="https://github.com/pmaupin/$_pypiname" +license=('MIT') +makedepends=('python-setuptools' 'python2-setuptools') +source=("$_pypiname-$pkgver.tar.gz::https://github.com/pmaupin/$_pypiname/archive/v$pkgver.tar.gz") +md5sums=('8dc599a0c808a15f1499c0116ee3c92d') + +prepare(){ + cp -r "$srcdir/$_pypiname-$pkgver" "$srcdir/$_pypiname-$pkgver-py2" +} + +package() { + depends=('python2') + cd "$srcdir/$_pypiname-$pkgver-py2" + python2 setup.py install --root="$pkgdir" -O1 + install -Dm644 LICENSE.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.txt" +} + diff --git a/python2-pdfrw/clean b/python2-pdfrw/clean new file mode 100644 index 0000000..3f1a111 --- /dev/null +++ b/python2-pdfrw/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,pdfrw*tar.gz} diff --git a/python2-pdfrw/deps b/python2-pdfrw/deps new file mode 100644 index 0000000..a0cbae3 --- /dev/null +++ b/python2-pdfrw/deps @@ -0,0 +1,2 @@ +python-setuptools +python2-setuptools diff --git a/python2-pdfrw/time b/python2-pdfrw/time new file mode 100644 index 0000000..80d405d --- /dev/null +++ b/python2-pdfrw/time @@ -0,0 +1,4 @@ +real 0m1.888s +user 0m1.597s +sys 0m0.367s + diff --git a/python2-pyexiftool/PKGBUILD b/python2-pyexiftool/PKGBUILD new file mode 100644 index 0000000..465986e --- /dev/null +++ b/python2-pyexiftool/PKGBUILD @@ -0,0 +1,39 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# Maintainer: ArchStrike +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=python2-pyexiftool-git +pkgver=20141008.r29 +pkgrel=02 +pkgdesc="A Python library to communicate with an instance of Phil Harvey's excellent ExifTool command-line application." +arch=('any') +url='https://github.com/smarnach/pyexiftool' +depends=('perl-image-exiftool') +makedepends=('git' 'python2-setuptools') +provides=('python2-pyexiftool') +source=("${pkgname}::git+https://github.com/smarnach/pyexiftool.git") + +pkgver() { + cd "${pkgname}" + printf "%s.r%s" "$(git show -s --format=%ci master | sed 's/\ .*//g;s/-//g')" "$(git rev-list --count HEAD)" +} + +prepare(){ + grep -iRl 'python' "${pkgname}" | xargs sed -i 's|#!.*/usr/bin/python|#!/usr/bin/python2|;s|#!.*/usr/bin/env python$|#!/usr/bin/env python2|' +} + +package() { + cd "${pkgname}" + python2 setup.py install --root="$pkgdir" --optimize=1 + install -Dm644 COPYING.BSD "$pkgdir/usr/share/licenses/$pkgname/COPYING.BSD" + install -Dm644 COPYING.GPL "$pkgdir/usr/share/licenses/$pkgname/COPYING.GPL" +} + +#---- license gpg-key sha256sums ---- + +license=('BSD' 'GPL') + +sha256sums=(SKIP) diff --git a/python2-pyexiftool/PKGBUILD-archstrike b/python2-pyexiftool/PKGBUILD-archstrike new file mode 100644 index 0000000..1a6d266 --- /dev/null +++ b/python2-pyexiftool/PKGBUILD-archstrike @@ -0,0 +1,32 @@ +# Maintainer: ArchStrike + +buildarch=1 + +pkgname=python2-pyexiftool-git +pkgver=20141008.r29 +pkgrel=2 +pkgdesc="A Python library to communicate with an instance of Phil Harvey's excellent ExifTool command-line application." +arch=('any') +url='https://github.com/smarnach/pyexiftool' +license=('BSD' 'GPL') +depends=('perl-image-exiftool') +makedepends=('git' 'python2-setuptools') +provides=('python2-pyexiftool') +source=("${pkgname}::git+https://github.com/smarnach/pyexiftool.git") +sha512sums=('SKIP') + +pkgver() { + cd "${pkgname}" + printf "%s.r%s" "$(git show -s --format=%ci master | sed 's/\ .*//g;s/-//g')" "$(git rev-list --count HEAD)" +} + +prepare(){ + grep -iRl 'python' "${pkgname}" | xargs sed -i 's|#!.*/usr/bin/python|#!/usr/bin/python2|;s|#!.*/usr/bin/env python$|#!/usr/bin/env python2|' +} + +package() { + cd "${pkgname}" + python2 setup.py install --root="$pkgdir" --optimize=1 + install -Dm644 COPYING.BSD "$pkgdir/usr/share/licenses/$pkgname/COPYING.BSD" + install -Dm644 COPYING.GPL "$pkgdir/usr/share/licenses/$pkgname/COPYING.GPL" +} diff --git a/python2-pyexiftool/clean b/python2-pyexiftool/clean new file mode 100644 index 0000000..44d0553 --- /dev/null +++ b/python2-pyexiftool/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,python2-pyexiftool-git} diff --git a/python2-pyexiftool/deps b/python2-pyexiftool/deps new file mode 100644 index 0000000..3cbfefe --- /dev/null +++ b/python2-pyexiftool/deps @@ -0,0 +1,2 @@ +git python2-setuptools +perl-image-exiftool diff --git a/python2-pyexiftool/time b/python2-pyexiftool/time new file mode 100644 index 0000000..e0d8ead --- /dev/null +++ b/python2-pyexiftool/time @@ -0,0 +1,4 @@ + +real 0m3.509s +user 0m1.372s +sys 0m0.281s diff --git a/python3-aur/PKGBUILD b/python3-aur/PKGBUILD new file mode 100644 index 0000000..d834f71 --- /dev/null +++ b/python3-aur/PKGBUILD @@ -0,0 +1,45 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/python3-aur" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=python3-aur +pkgver=2021.11.20.1 +pkgrel=02 +pkgdesc='AUR-related modules and helper utilities (aurploader, aurquery, aurtomatic).' +arch=(any) +url="https://xyne.dev/projects/python3-aur" +depends=(pyalpm python-pyxdg python3 python3-xcgf python3-xcpf) +optdepends=('curl: Aurploader support' 'git: Clone AUR Git repositories.') +replaces=(aurploader) +conflicts=(aurploader) +provides=(aurploader) +source=( + https://xyne.dev/projects/python3-aur/src/python3-aur-2021.11.20.1.tar.xz + https://xyne.dev/projects/python3-aur/src/python3-aur-2021.11.20.1.tar.xz.sig +) + + +package () +{ + cd "$srcdir/$pkgname-$pkgver" + python3 setup.py install --prefix=/usr --root="$pkgdir" --optimize=1 +} + + +#---- license gpg-key sha512sums ---- + +license=(GPL) + +validpgpkeys=('EC3CBE7F607D11E663149E811D1F0DC78F173680') + +sha512sums=( + 3224921db2fceb34d709d42ca4551419960749130a9a7b09584547257fb00c3eab1b30a335526670e0427f5ae06d641f80c6bad71def5869abf29116ed5bbc64 + 8a1a379c570ad0871be150bfe87ff659436f9cee4944805c0cb70630aba7f3c0bc797a590ccab2951fce84f09c5fc0e3eda8764bf5bb1b37b06080aa7bfbe38e +) + +md5sums=( + 5d42d70c86aa9c717d92065d63c38d43 + ddb7ac1121dccf06f8a33d2633873c0b +) diff --git a/python3-aur/clean b/python3-aur/clean new file mode 100644 index 0000000..8529775 --- /dev/null +++ b/python3-aur/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,python3*xz*} diff --git a/python3-aur/deps b/python3-aur/deps new file mode 100644 index 0000000..735ed6c --- /dev/null +++ b/python3-aur/deps @@ -0,0 +1 @@ +pyalpm python-pyxdg python python3-xcgf python3-xcpf diff --git a/python3-aur/time b/python3-aur/time new file mode 100644 index 0000000..fda4d1c --- /dev/null +++ b/python3-aur/time @@ -0,0 +1 @@ +3s diff --git a/python3-memoizedb/PKGBUILD b/python3-memoizedb/PKGBUILD new file mode 100644 index 0000000..7b40070 --- /dev/null +++ b/python3-memoizedb/PKGBUILD @@ -0,0 +1,42 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=python3-memoizedb +pkgver=2021 +pkgrel=02 +pkgdesc='Generic data retrieval memoizer that uses an sqlite database to cache data.' +arch=(any) +url="https://xyne.dev/projects/python3-memoizedb" +depends=(python3) +source=( + https://xyne.dev/projects/python3-memoizedb/src/python3-memoizedb-2021.tar.xz + https://xyne.dev/projects/python3-memoizedb/src/python3-memoizedb-2021.tar.xz.sig +) + +package () +{ + cd "$srcdir/$pkgname-$pkgver" + python3 setup.py install --prefix=/usr --root="$pkgdir" --optimize=1 +} + +#---- license gpg-key sha512sums ---- + +license=(GPL) + +validpgpkeys=('EC3CBE7F607D11E663149E811D1F0DC78F173680') + +sha512sums=( + 33667aa062742bcc42410048b8c397031103aac144e863ad074d60e8169611d849a589e331407c26c49d9de4ebd9281978ef2d8b0ee058b4df1db8458f1c6aaf + 76e4b0e3a1c0653790368c3b387fa14fc2013283aebe0cabf1776f469f89a14661ac974ef324a2162ea16fc973ccd721ba2b9cc726c956eb1600b7b8ebfd5115 +) + +md5sums=( + 6c522e5b6aea2360a5e3cf4fe1dd05b6 + 741ca0316c97fd44d200e3ce0707958d +) + +sha256sums=(4edc3b6c65812c2bea70ceb8e4a11b911519a376c33c7884177f8dcd77150744 # python3-memoizedb-2021.tar.xz + aef447c73e786033b932a6702554559a03260d7af2688d2e02b7e81fb11c7713) # python3-memoizedb-2021.tar.xz.sig diff --git a/python3-memoizedb/clean b/python3-memoizedb/clean new file mode 100644 index 0000000..106923f --- /dev/null +++ b/python3-memoizedb/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,py*.tar.xz*} diff --git a/python3-memoizedb/deps b/python3-memoizedb/deps new file mode 100644 index 0000000..fdc793e --- /dev/null +++ b/python3-memoizedb/deps @@ -0,0 +1 @@ +python diff --git a/python3-xcgf/PKGBUILD b/python3-xcgf/PKGBUILD new file mode 100644 index 0000000..8f2ade0 --- /dev/null +++ b/python3-xcgf/PKGBUILD @@ -0,0 +1,42 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=python3-xcgf +pkgver=2021 +pkgrel=02 +pkgdesc='Xyne'"'"'s common generic functions, for internal use.' +arch=(any) +url="https://xyne.dev/projects/python3-xcgf" +depends=(python3) +source=( + https://xyne.dev/projects/python3-xcgf/src/python3-xcgf-2021.tar.xz + https://xyne.dev/projects/python3-xcgf/src/python3-xcgf-2021.tar.xz.sig +) + +package () +{ + cd "$srcdir/$pkgname-$pkgver" + python3 setup.py install --prefix=/usr --root="$pkgdir" --optimize=1 +} + + +#---- license gpg-key sha512sums ---- + +license=(GPL) + +validpgpkeys=('EC3CBE7F607D11E663149E811D1F0DC78F173680') + +sha512sums=( + a42a45cdfcb5b65a866be13c0bad06b2f6b251d5bfe9353f045e8eed87850129a949708aec6ae470117a22dbd290552f4d046ecbfa960f8f9f56fbbad38bc081 + 3f26e6d2b6bdab2af8315e998ed2beab682f4d0373f2da884fb255017ef6eec278fdee96079b9a228319db5019cb30f5982d5502afbcc716a4ed13be8a9eb4cf +) +md5sums=( + 61ff53d3820358dfbadb3e146024636a + b9985f601fca6a93ce928e7bb464e9eb +) + +sha256sums=('d5890c8adbb57f835e7b6c0e705359cdec85fcc093152cc508ffedacbfd868e0' # python3-xcgf-2021.tar.xz + '10ec8618368ba7968d1fdb866955714a489d1e258d9ec1c5a48262206fe02d57') # python3-xcgf-2021.tar.xz.sig diff --git a/python3-xcgf/clean b/python3-xcgf/clean new file mode 100644 index 0000000..8529775 --- /dev/null +++ b/python3-xcgf/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,python3*xz*} diff --git a/python3-xcgf/deps b/python3-xcgf/deps new file mode 100644 index 0000000..fdc793e --- /dev/null +++ b/python3-xcgf/deps @@ -0,0 +1 @@ +python diff --git a/python3-xcpf/PKGBUILD b/python3-xcpf/PKGBUILD new file mode 100644 index 0000000..8d3a720 --- /dev/null +++ b/python3-xcpf/PKGBUILD @@ -0,0 +1,30 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=python3-xcpf +pkgver=2021.12 +pkgrel=01 +pkgdesc='Xyne'"'"'s common Pacman functions, for internal use.' +arch=(any) +url="https://xyne.dev/projects/$pkgname" +depends=(pyalpm python-pyxdg python3 python3-memoizedb python3-xcgf) +optdepends=('rsync: Retrieve ABS files via rsync.') +source=( $url/src/$pkgname-$pkgver.tar.xz{,.sig} ) + +package () +{ + cd "$srcdir/$pkgname-$pkgver" + python3 setup.py install --prefix=/usr --root="$pkgdir" --optimize=1 +} + +#---- license gpg-key sha512sums ---- + +license=(GPL) + +validpgpkeys=('EC3CBE7F607D11E663149E811D1F0DC78F173680') + +sha256sums=(bb87539d8af8bf970edccf828fc080cf2461abb5406250924e4f2c160ad40c4d # python3-xcpf-2021.12.tar.xz + c42f5a3b98bdb04bf82b1345b7ec5fc3d7ad13ed3ebb09a35db52747b422f5cb) # python3-xcpf-2021.12.tar.xz.sig diff --git a/python3-xcpf/clean b/python3-xcpf/clean new file mode 100644 index 0000000..8529775 --- /dev/null +++ b/python3-xcpf/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,python3*xz*} diff --git a/python3-xcpf/deps b/python3-xcpf/deps new file mode 100644 index 0000000..88b89dd --- /dev/null +++ b/python3-xcpf/deps @@ -0,0 +1 @@ +pyalpm python-pyxdg python3 python3-memoizedb python3-xcgf diff --git a/qt5-base/PKGBUILD b/qt5-base/PKGBUILD new file mode 100644 index 0000000..1b5c2bd --- /dev/null +++ b/qt5-base/PKGBUILD @@ -0,0 +1,121 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgbase=qt5-base +pkgname=(qt5-base qt5-xcb-private-headers) +_basever=5.15.3 +pkgver=5.15.3+kde+r136 +pkgrel=01 +_commit=f31e001a9399e4e620847ea2c3e90749350140ae +arch=('x86_64') +url='https://www.qt.io' +pkgdesc='A cross-platform application and UI framework' +depends=('libjpeg-turbo' 'xcb-util-keysyms' 'xcb-util-renderutil' 'libgl' 'fontconfig' 'xdg-utils' + 'shared-mime-info' 'xcb-util-wm' 'libxrender' 'libxi' 'sqlite' 'xcb-util-image' 'mesa' + 'tslib' 'libinput' 'libxkbcommon-x11' 'libproxy' 'libcups' 'double-conversion' 'md4c') +makedepends=('libfbclient' 'mariadb-libs' 'unixodbc' 'postgresql-libs' 'alsa-lib' 'gst-plugins-base-libs' + 'gtk3' 'libpulse' 'cups' 'freetds' 'vulkan-headers' 'git') +optdepends=('qt5-svg: to use SVG icon themes' + 'qt5-wayland: to run Qt applications in a Wayland session' + 'qt5-translations: for some native UI translations' + 'postgresql-libs: PostgreSQL driver' + 'mariadb-libs: MariaDB driver' + 'unixodbc: ODBC driver' + 'libfbclient: Firebird/iBase driver' + 'freetds: MS SQL driver' + 'gtk3: GTK platform plugin' + 'perl: for fixqt4headers and syncqt') +conflicts=('qtchooser') +groups=('qt' 'qt5') +_pkgfqn=${pkgbase/5-/} +source=(git+https://invent.kde.org/qt/qt/$_pkgfqn#commit=$_commit + qmake-cflags.patch + qmake-config.patch) +#options=(debug) + +pkgver() { + cd $_pkgfqn + echo "$_basever+kde+r"`git rev-list --count v$_basever-lts-lgpl..$_commit` +} + +prepare() { + cd ${_pkgfqn} + patch -p1 < ../qmake-cflags.patch # Use system CFLAGS in qmake + patch -p1 < ../qmake-config.patch # Don't strip binaries with qmake and use -ltcg, cf. QTBUG-73834 +} + +build() { + cd ${_pkgfqn} + + ./configure -confirm-license -opensource -v \ + -prefix /usr \ + -docdir /usr/share/doc/qt \ + -headerdir /usr/include/qt \ + -archdatadir /usr/lib/qt \ + -datadir /usr/share/qt \ + -sysconfdir /etc/xdg \ + -examplesdir /usr/share/doc/qt/examples \ + -plugin-sql-{psql,mysql,sqlite,odbc,ibase} \ + -system-sqlite \ + -openssl-linked \ + -nomake examples \ + -no-rpath \ + -dbus-linked \ + -system-harfbuzz \ + -no-mimetype-database \ + -no-use-gold-linker \ + -no-reduce-relocations \ + -no-strip \ + -ltcg +# No configure flag for fat static libs with lto + bin/qmake CONFIG+=fat-static-lto -- -redo + make +} + +package_qt5-base() { + pkgdesc='A cross-platform application and UI framework' + depends+=(qt5-translations) + + cd ${_pkgfqn} + make INSTALL_ROOT="${pkgdir}" install + + install -Dm644 LICENSE* -t "$pkgdir"/usr/share/licenses/$pkgbase + + # Drop QMAKE_PRL_BUILD_DIR because reference the build dir + find "${pkgdir}/usr/lib" -type f -name '*.prl' \ + -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; + + # Fix wrong qmake path in pri file + sed -i "s|${srcdir}/${_pkgfqn}|/usr|" \ + "${pkgdir}"/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri + + # Symlinks for backwards compatibility + for b in "${pkgdir}"/usr/bin/*; do + ln -s $(basename $b) "${pkgdir}"/usr/bin/$(basename $b)-qt5 + done +} + +package_qt5-xcb-private-headers() { + pkgdesc='Private headers for Qt5 Xcb' + + depends=("qt5-base=$pkgver") + optdepends=() + groups=() + conflicts=() + + cd ${_pkgfqn} + install -d -m755 "$pkgdir"/usr/include/qtxcb-private + cp -r src/plugins/platforms/xcb/*.h "$pkgdir"/usr/include/qtxcb-private/ +} + +#---- license gpg-key sha256sums ---- + +license=('GPL3' 'LGPL3' 'FDL' 'custom') + +sha256sums=(SKIP + 5411edbe215c24b30448fac69bd0ba7c882f545e8cf05027b2b6e2227abc5e78 # qmake-cflags.patch + 4abc22150fa3e06b2fdcec32146abc9be4e316692aa4d5bd5aa53b4b726783fa) # qmake-config.patch diff --git a/qt5-base/PKGBUILD-arch b/qt5-base/PKGBUILD-arch new file mode 100644 index 0000000..42e7ce6 --- /dev/null +++ b/qt5-base/PKGBUILD-arch @@ -0,0 +1,114 @@ +# Maintainer: Felix Yan +# Contributor: Andrea Scarpino + +pkgbase=qt5-base +pkgname=(qt5-base qt5-xcb-private-headers) +_basever=5.15.3 +pkgver=5.15.3+kde+r136 +pkgrel=1 +_commit=f31e001a9399e4e620847ea2c3e90749350140ae +arch=('x86_64') +url='https://www.qt.io' +license=('GPL3' 'LGPL3' 'FDL' 'custom') +pkgdesc='A cross-platform application and UI framework' +depends=('libjpeg-turbo' 'xcb-util-keysyms' 'xcb-util-renderutil' 'libgl' 'fontconfig' 'xdg-utils' + 'shared-mime-info' 'xcb-util-wm' 'libxrender' 'libxi' 'sqlite' 'xcb-util-image' 'mesa' + 'tslib' 'libinput' 'libxkbcommon-x11' 'libproxy' 'libcups' 'double-conversion' 'md4c') +makedepends=('libfbclient' 'mariadb-libs' 'unixodbc' 'postgresql-libs' 'alsa-lib' 'gst-plugins-base-libs' + 'gtk3' 'libpulse' 'cups' 'freetds' 'vulkan-headers' 'git') +optdepends=('qt5-svg: to use SVG icon themes' + 'qt5-wayland: to run Qt applications in a Wayland session' + 'qt5-translations: for some native UI translations' + 'postgresql-libs: PostgreSQL driver' + 'mariadb-libs: MariaDB driver' + 'unixodbc: ODBC driver' + 'libfbclient: Firebird/iBase driver' + 'freetds: MS SQL driver' + 'gtk3: GTK platform plugin' + 'perl: for fixqt4headers and syncqt') +conflicts=('qtchooser') +groups=('qt' 'qt5') +_pkgfqn=${pkgbase/5-/} +source=(git+https://invent.kde.org/qt/qt/$_pkgfqn#commit=$_commit + qmake-cflags.patch + qmake-config.patch) +sha256sums=('SKIP' + '5411edbe215c24b30448fac69bd0ba7c882f545e8cf05027b2b6e2227abc5e78' + '4abc22150fa3e06b2fdcec32146abc9be4e316692aa4d5bd5aa53b4b726783fa') +options=(debug) + +pkgver() { + cd $_pkgfqn + echo "$_basever+kde+r"`git rev-list --count v$_basever-lts-lgpl..$_commit` +} + +prepare() { + cd ${_pkgfqn} + patch -p1 < ../qmake-cflags.patch # Use system CFLAGS in qmake + patch -p1 < ../qmake-config.patch # Don't strip binaries with qmake and use -ltcg, cf. QTBUG-73834 +} + +build() { + cd ${_pkgfqn} + + ./configure -confirm-license -opensource -v \ + -prefix /usr \ + -docdir /usr/share/doc/qt \ + -headerdir /usr/include/qt \ + -archdatadir /usr/lib/qt \ + -datadir /usr/share/qt \ + -sysconfdir /etc/xdg \ + -examplesdir /usr/share/doc/qt/examples \ + -plugin-sql-{psql,mysql,sqlite,odbc,ibase} \ + -system-sqlite \ + -openssl-linked \ + -nomake examples \ + -no-rpath \ + -dbus-linked \ + -system-harfbuzz \ + -journald \ + -no-mimetype-database \ + -no-use-gold-linker \ + -no-reduce-relocations \ + -no-strip \ + -ltcg +# No configure flag for fat static libs with lto + bin/qmake CONFIG+=fat-static-lto -- -redo + make +} + +package_qt5-base() { + pkgdesc='A cross-platform application and UI framework' + depends+=(qt5-translations) + + cd ${_pkgfqn} + make INSTALL_ROOT="${pkgdir}" install + + install -Dm644 LICENSE* -t "$pkgdir"/usr/share/licenses/$pkgbase + + # Drop QMAKE_PRL_BUILD_DIR because reference the build dir + find "${pkgdir}/usr/lib" -type f -name '*.prl' \ + -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; + + # Fix wrong qmake path in pri file + sed -i "s|${srcdir}/${_pkgfqn}|/usr|" \ + "${pkgdir}"/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri + + # Symlinks for backwards compatibility + for b in "${pkgdir}"/usr/bin/*; do + ln -s $(basename $b) "${pkgdir}"/usr/bin/$(basename $b)-qt5 + done +} + +package_qt5-xcb-private-headers() { + pkgdesc='Private headers for Qt5 Xcb' + + depends=("qt5-base=$pkgver") + optdepends=() + groups=() + conflicts=() + + cd ${_pkgfqn} + install -d -m755 "$pkgdir"/usr/include/qtxcb-private + cp -r src/plugins/platforms/xcb/*.h "$pkgdir"/usr/include/qtxcb-private/ +} diff --git a/qt5-base/clean b/qt5-base/clean new file mode 100644 index 0000000..5de6e4b --- /dev/null +++ b/qt5-base/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,qtbase} diff --git a/qt5-base/deps b/qt5-base/deps new file mode 100644 index 0000000..1ad2cdf --- /dev/null +++ b/qt5-base/deps @@ -0,0 +1,31 @@ +libjpeg-turbo +xcb-util-keysyms +xcb-util-renderutil +libglvnd +fontconfig +xdg-utils +shared-mime-info +xcb-util-wm +libxrender +libxi +xcb-util-image +mesa +tslib +libinput +libxkbcommon-x11 +libproxy +libcups +double-conversion +md4c +libfbclient +mariadb-libs +unixodbc +postgresql-libs +alsa-lib +gst-plugins-base-libs +gtk3 +libpulse +cups +freetds +vulkan-headers +git diff --git a/qt5-base/qmake-cflags.patch b/qt5-base/qmake-cflags.patch new file mode 100644 index 0000000..3325016 --- /dev/null +++ b/qt5-base/qmake-cflags.patch @@ -0,0 +1,46 @@ +diff --git a/mkspecs/common/g++-unix.conf b/mkspecs/common/g++-unix.conf +index a493cd5984..41342f5020 100644 +--- a/mkspecs/common/g++-unix.conf ++++ b/mkspecs/common/g++-unix.conf +@@ -10,5 +10,6 @@ + + include(g++-base.conf) + +-QMAKE_LFLAGS_RELEASE += -Wl,-O1 ++SYSTEM_LDFLAGS = $$(LDFLAGS) ++!isEmpty(SYSTEM_LDFLAGS) { eval(QMAKE_LFLAGS_RELEASE += $$(LDFLAGS)) } else { QMAKE_LFLAGS_RELEASE += -Wl,-O1 } + QMAKE_LFLAGS_NOUNDEF += -Wl,--no-undefined +diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf +index 1f919d270a..7ef6046326 100644 +--- a/mkspecs/common/gcc-base.conf ++++ b/mkspecs/common/gcc-base.conf +@@ -40,9 +40,11 @@ QMAKE_CFLAGS_OPTIMIZE_SIZE = -Os + QMAKE_CFLAGS_DEPS += -M + QMAKE_CFLAGS_WARN_ON += -Wall -Wextra + QMAKE_CFLAGS_WARN_OFF += -w +-QMAKE_CFLAGS_RELEASE += $$QMAKE_CFLAGS_OPTIMIZE +-QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g +-QMAKE_CFLAGS_DEBUG += -g ++SYSTEM_CFLAGS = $$(CFLAGS) ++SYSTEM_DEBUG_CFLAGS = $$(DEBUG_CFLAGS) ++!isEmpty(SYSTEM_CFLAGS) { eval(QMAKE_CFLAGS_RELEASE += $$(CFLAGS)) } else { QMAKE_CFLAGS_RELEASE += $$QMAKE_CFLAGS_OPTIMIZE } ++!isEmpty(SYSTEM_CFLAGS) { eval(QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -g $$(CFLAGS)) } else { QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g } ++!isEmpty(SYSTEM_DEBUG_CFLAGS) { eval(QMAKE_CFLAGS_DEBUG += $$(DEBUG_CFLAGS)) } else { QMAKE_CFLAGS_DEBUG += -g } + QMAKE_CFLAGS_SHLIB += $$QMAKE_CFLAGS_PIC + QMAKE_CFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_PIC + QMAKE_CFLAGS_APP += $$QMAKE_CFLAGS_PIC +@@ -59,9 +61,11 @@ QMAKE_CXXFLAGS += $$QMAKE_CFLAGS + QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS + QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON + QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF +-QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_RELEASE +-QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO +-QMAKE_CXXFLAGS_DEBUG += $$QMAKE_CFLAGS_DEBUG ++SYSTEM_CXXFLAGS = $$(CXXFLAGS) ++SYSTEM_DEBUG_CXXFLAGS = $$(DEBUG_CXXFLAGS) ++!isEmpty(SYSTEM_CXXFLAGS) { eval(QMAKE_CXXFLAGS_RELEASE += $$(CXXFLAGS)) } else { QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_OPTIMIZE } ++!isEmpty(SYSTEM_CXXFLAGS) { eval(QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += -g $$(CXXFLAGS)) } else { QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g } ++!isEmpty(SYSTEM_DEBUG_CXXFLAGS) { eval(QMAKE_CXXFLAGS_DEBUG += $$(DEBUG_CXXFLAGS)) } else { QMAKE_CXXFLAGS_DEBUG += -g } + QMAKE_CXXFLAGS_SHLIB += $$QMAKE_CFLAGS_SHLIB + QMAKE_CXXFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_STATIC_LIB + QMAKE_CXXFLAGS_APP += $$QMAKE_CFLAGS_APP diff --git a/qt5-base/qmake-config.patch b/qt5-base/qmake-config.patch new file mode 100644 index 0000000..77d9694 --- /dev/null +++ b/qt5-base/qmake-config.patch @@ -0,0 +1,13 @@ +diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf +index 99d77156fd..fc840fe9f6 100644 +--- a/mkspecs/common/gcc-base.conf ++++ b/mkspecs/common/gcc-base.conf +@@ -31,6 +31,8 @@ + # you can use the manual test in tests/manual/mkspecs. + # + ++CONFIG += nostrip ltcg ++ + QMAKE_CFLAGS_OPTIMIZE = -O2 + QMAKE_CFLAGS_OPTIMIZE_FULL = -O3 + QMAKE_CFLAGS_OPTIMIZE_DEBUG = -Og diff --git a/qt5-base/qt5-base-cflags.patch b/qt5-base/qt5-base-cflags.patch new file mode 100644 index 0000000..3325016 --- /dev/null +++ b/qt5-base/qt5-base-cflags.patch @@ -0,0 +1,46 @@ +diff --git a/mkspecs/common/g++-unix.conf b/mkspecs/common/g++-unix.conf +index a493cd5984..41342f5020 100644 +--- a/mkspecs/common/g++-unix.conf ++++ b/mkspecs/common/g++-unix.conf +@@ -10,5 +10,6 @@ + + include(g++-base.conf) + +-QMAKE_LFLAGS_RELEASE += -Wl,-O1 ++SYSTEM_LDFLAGS = $$(LDFLAGS) ++!isEmpty(SYSTEM_LDFLAGS) { eval(QMAKE_LFLAGS_RELEASE += $$(LDFLAGS)) } else { QMAKE_LFLAGS_RELEASE += -Wl,-O1 } + QMAKE_LFLAGS_NOUNDEF += -Wl,--no-undefined +diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf +index 1f919d270a..7ef6046326 100644 +--- a/mkspecs/common/gcc-base.conf ++++ b/mkspecs/common/gcc-base.conf +@@ -40,9 +40,11 @@ QMAKE_CFLAGS_OPTIMIZE_SIZE = -Os + QMAKE_CFLAGS_DEPS += -M + QMAKE_CFLAGS_WARN_ON += -Wall -Wextra + QMAKE_CFLAGS_WARN_OFF += -w +-QMAKE_CFLAGS_RELEASE += $$QMAKE_CFLAGS_OPTIMIZE +-QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g +-QMAKE_CFLAGS_DEBUG += -g ++SYSTEM_CFLAGS = $$(CFLAGS) ++SYSTEM_DEBUG_CFLAGS = $$(DEBUG_CFLAGS) ++!isEmpty(SYSTEM_CFLAGS) { eval(QMAKE_CFLAGS_RELEASE += $$(CFLAGS)) } else { QMAKE_CFLAGS_RELEASE += $$QMAKE_CFLAGS_OPTIMIZE } ++!isEmpty(SYSTEM_CFLAGS) { eval(QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -g $$(CFLAGS)) } else { QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g } ++!isEmpty(SYSTEM_DEBUG_CFLAGS) { eval(QMAKE_CFLAGS_DEBUG += $$(DEBUG_CFLAGS)) } else { QMAKE_CFLAGS_DEBUG += -g } + QMAKE_CFLAGS_SHLIB += $$QMAKE_CFLAGS_PIC + QMAKE_CFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_PIC + QMAKE_CFLAGS_APP += $$QMAKE_CFLAGS_PIC +@@ -59,9 +61,11 @@ QMAKE_CXXFLAGS += $$QMAKE_CFLAGS + QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS + QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON + QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF +-QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_RELEASE +-QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO +-QMAKE_CXXFLAGS_DEBUG += $$QMAKE_CFLAGS_DEBUG ++SYSTEM_CXXFLAGS = $$(CXXFLAGS) ++SYSTEM_DEBUG_CXXFLAGS = $$(DEBUG_CXXFLAGS) ++!isEmpty(SYSTEM_CXXFLAGS) { eval(QMAKE_CXXFLAGS_RELEASE += $$(CXXFLAGS)) } else { QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_OPTIMIZE } ++!isEmpty(SYSTEM_CXXFLAGS) { eval(QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += -g $$(CXXFLAGS)) } else { QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g } ++!isEmpty(SYSTEM_DEBUG_CXXFLAGS) { eval(QMAKE_CXXFLAGS_DEBUG += $$(DEBUG_CXXFLAGS)) } else { QMAKE_CXXFLAGS_DEBUG += -g } + QMAKE_CXXFLAGS_SHLIB += $$QMAKE_CFLAGS_SHLIB + QMAKE_CXXFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_STATIC_LIB + QMAKE_CXXFLAGS_APP += $$QMAKE_CFLAGS_APP diff --git a/qt5-base/qt5-base-nostrip.patch b/qt5-base/qt5-base-nostrip.patch new file mode 100644 index 0000000..17d24b4 --- /dev/null +++ b/qt5-base/qt5-base-nostrip.patch @@ -0,0 +1,13 @@ +diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf +index 99d77156fd..fc840fe9f6 100644 +--- a/mkspecs/common/gcc-base.conf ++++ b/mkspecs/common/gcc-base.conf +@@ -31,6 +31,8 @@ + # you can use the manual test in tests/manual/mkspecs. + # + ++CONFIG += nostrip ++ + QMAKE_CFLAGS_OPTIMIZE = -O2 + QMAKE_CFLAGS_OPTIMIZE_FULL = -O3 + QMAKE_CFLAGS_OPTIMIZE_DEBUG = -Og diff --git a/qt5-base/time b/qt5-base/time new file mode 100644 index 0000000..2fa847b --- /dev/null +++ b/qt5-base/time @@ -0,0 +1,5 @@ + +real 18m57.783s +user 63m36.020s +sys 3m57.301s + diff --git a/qt6-base/.configure b/qt6-base/.configure new file mode 100644 index 0000000..34d8cee --- /dev/null +++ b/qt6-base/.configure @@ -0,0 +1,174 @@ + +Configure summary: + +Building for: linux-g++ (x86_64, CPU features: mmx sse sse2) +Compiler: gcc 11.1.0 +Build options: + Mode ................................... release + Optimize release build for size ........ no + Fully optimize release builds (-O3) .... no + Building shared libraries .............. yes + Using C standard ....................... C11 + Using C++ standard ..................... C++17 + Using ccache ........................... no + Using new DTAGS ........................ yes + Relocatable ............................ yes + Using precompiled headers .............. yes + Using LTCG ............................. no + Target compiler supports: + SSE .................................. SSE2 SSE3 SSSE3 SSE4.1 SSE4.2 + AVX .................................. AVX AVX2 + AVX512 ............................... F ER CD PF DQ BW VL IFMA VBMI + Other x86 ............................ AES F16C RDRAND SHA + Intrinsics without compiler architecture option yes + Sanitizers: + Addresses ............................ no + Threads .............................. no + Memory ............................... no + Fuzzer (instrumentation only) ........ no + Undefined ............................ no + Build parts ............................ libs tools +Qt modules and options: + Qt Concurrent .......................... yes + Qt D-Bus ............................... yes + Qt D-Bus directly linked to libdbus .... yes + Qt Gui ................................. yes + Qt Network ............................. yes + Qt PrintSupport ........................ yes + Qt Sql ................................. yes + Qt Testlib ............................. yes + Qt Widgets ............................. yes + Qt Xml ................................. yes +Support enabled for: + Using pkg-config ....................... yes + udev ................................... yes + Using system zlib ...................... yes + zstd ................................... no + Thread support ......................... yes +Common build options: + Linker can resolve circular dependencies yes +Qt Core: + backtrace .............................. yes + DoubleConversion ....................... yes + Using system DoubleConversion ........ yes + GLib ................................... yes + ICU .................................... yes + Using system libb2 ..................... yes + Built-in copy of the MIME database ..... yes + Tracing backend ........................ + Logging backends: + journald ............................. no + syslog ............................... no + slog2 ................................ no + PCRE2 .................................. yes + Using system PCRE2 ................... yes + CLONE_PIDFD support in forkfd .......... yes +Qt Sql: + SQL item models ........................ yes +Qt Network: + getifaddrs() ........................... yes + IPv6 ifname ............................ yes + libproxy ............................... no + Linux AF_NETLINK ....................... yes + OpenSSL ................................ yes + openssl_linked ......................... yes + OpenSSL 1.1 ............................ yes + DTLS ................................... yes + OCSP-stapling .......................... yes + SCTP ................................... no + Use system proxies ..................... yes + GSSAPI ................................. yes + Brotli Decompression Support ........... yes +Qt Gui: + Accessibility .......................... yes + FreeType ............................... yes + Using system FreeType ................ yes + HarfBuzz ............................... yes + Using system HarfBuzz ................ yes + Fontconfig ............................. yes + Image formats: + GIF .................................. yes + ICO .................................. yes + JPEG ................................. yes + Using system libjpeg ............... yes + PNG .................................. yes + Using system libpng ................ yes + Text formats: + HtmlParser ........................... yes + CssParser ............................ yes + OdfWriter ............................ yes + MarkdownReader ....................... yes + Using system libmd4c ............... yes + MarkdownWriter ....................... yes + EGL .................................... yes + OpenVG ................................. no + OpenGL: + Desktop OpenGL ....................... yes + OpenGL ES 2.0 ........................ no + OpenGL ES 3.0 ........................ no + OpenGL ES 3.1 ........................ no + OpenGL ES 3.2 ........................ no + Vulkan ................................. yes + Session Management ..................... yes +Features used by QPA backends: + evdev .................................. yes + libinput ............................... yes + INTEGRITY HID .......................... no + mtdev .................................. yes + tslib .................................. yes + xkbcommon .............................. yes + X11 specific: + XLib ................................. yes + XCB Xlib ............................. yes + EGL on X11 ........................... yes + xkbcommon-x11 ........................ yes + xcb-sm ............................... yes +QPA backends: + DirectFB ............................... no + EGLFS .................................. yes + EGLFS details: + EGLFS OpenWFD ........................ no + EGLFS i.Mx6 .......................... no + EGLFS i.Mx6 Wayland .................. no + EGLFS RCAR ........................... no + EGLFS EGLDevice ...................... yes + EGLFS GBM ............................ yes + EGLFS VSP2 ........................... no + EGLFS Mali ........................... no + EGLFS Raspberry Pi ................... no + EGLFS X11 ............................ yes + LinuxFB ................................ yes + VNC .................................... yes + VK_KHR_display ......................... yes + QNX: + lgmon ................................ no + IMF .................................. no + XCB: + Using system-provided xcb-xinput ..... yes + GL integrations: + GLX Plugin ......................... yes + XCB GLX .......................... yes + EGL-X11 Plugin ..................... yes + Windows: + Direct 2D ............................ no + Direct 2D 1.1 ........................ no + DirectWrite .......................... no + DirectWrite 3 ........................ no +Qt Widgets: + GTK+ ................................... yes + Styles ................................. Fusion Windows +Qt Testlib: + Tester for item models ................. yes +Qt PrintSupport: + CUPS ................................... yes +Qt Sql Drivers: + DB2 (IBM) .............................. no + InterBase .............................. yes + MySql .................................. yes + OCI (Oracle) ........................... no + ODBC ................................... yes + PostgreSQL ............................. yes + SQLite ................................. yes + system_sqlite .......................... yes +Core tools: + qmake tool ............................. yes diff --git a/qt6-base/PKGBUILD b/qt6-base/PKGBUILD new file mode 100644 index 0000000..356bd22 --- /dev/null +++ b/qt6-base/PKGBUILD @@ -0,0 +1,83 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=qt6-base +_qtver=6.2.2 +pkgver=${_qtver/-/} +pkgrel=05 +arch=(x86_64) +url='https://www.qt.io' +pkgdesc='A cross-platform application and UI framework' +depends=(libjpeg-turbo xcb-util-keysyms xcb-util-cursor libgl fontconfig xdg-utils + shared-mime-info xcb-util-wm libxrender libxi sqlite mesa vulkan-headers + tslib libinput libxkbcommon-x11 libproxy libcups double-conversion brotli libb2 md4c) +makedepends=(cmake ninja libfbclient mariadb-libs unixodbc postgresql alsa-lib gst-plugins-base-libs + gtk3 libpulse cups freetds xmlstarlet) +optdepends=('qt6-wayland: to run Qt6 applications in a Wayland session' + 'postgresql-libs: PostgreSQL driver' + 'mariadb-libs: MariaDB driver' + 'unixodbc: ODBC driver' + 'libfbclient: Firebird/iBase driver' + 'freetds: MS SQL driver' + 'gtk3: GTK platform plugin' + 'perl: for syncqt') +groups=(qt6) +_pkgfn="${pkgname/6-/}-everywhere-src-$_qtver" +source=(https://download.qt.io/official_releases/qt/${pkgver%.*}/$_qtver/submodules/$_pkgfn.tar.xz + qt6-base-cflags.patch + qt6-base-nostrip.patch + qtbug-97908.patch::https://code.qt.io/cgit/qt/qtbase.git/patch/?id=9b7f7115) + +prepare() { + patch -d $_pkgfn -p1 < qt6-base-cflags.patch # Use system CFLAGS + patch -d $_pkgfn -p1 < qt6-base-nostrip.patch # Don't strip binaries with qmake + patch -d $_pkgfn -p1 < qtbug-97908.patch # Fix scrolling with PgUp/PgDown keys +} + +build() { + cmake -B build -S $_pkgfn -G Ninja \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DINSTALL_BINDIR=lib/qt6/bin \ + -DINSTALL_PUBLICBINDIR=usr/bin \ + -DINSTALL_LIBEXECDIR=lib/qt6 \ + -DINSTALL_DOCDIR=share/doc/qt6 \ + -DINSTALL_ARCHDATADIR=lib/qt6 \ + -DINSTALL_DATADIR=share/qt6 \ + -DINSTALL_INCLUDEDIR=include/qt6 \ + -DINSTALL_MKSPECSDIR=lib/qt6/mkspecs \ + -DINSTALL_EXAMPLESDIR=share/doc/qt6/examples \ + -DQT_FEATURE_journald=OFF \ + -DQT_FEATURE_systemd=OFF \ + -DQT_FEATURE_openssl_linked=ON \ + -DQT_FEATURE_system_sqlite=ON \ + -DQT_FEATURE_zstd=OFF \ + -DQT_FEATURE_IPv6_ifname=OFF \ + -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON + cmake --build build +} + +package() { + depends+=(qt6-translations) + DESTDIR="$pkgdir" cmake --install build + + install -Dm644 $_pkgfn/LICENSE* -t "$pkgdir"/usr/share/licenses/$pkgbase + +# Install symlinks for user-facing tools + cd "$pkgdir" + mkdir usr/bin + while read _line; do + ln -s $_line + done < "$srcdir"/build/user_facing_tool_links.txt +} + +#---- license gpg-key sha256sums ---- + +license=(GPL3 LGPL3 FDL custom) + +sha256sums=(85ab9180180c2eaf84cd11ae4c6d5a6a69f2f8fd7260aaccfd91a3e7e7232c1a # qtbase-everywhere-src-6.2.2.tar.xz + cf707cd970650f8b60f8897692b36708ded9ba116723ec8fcd885576783fe85c # qt6-base-cflags.patch + 4b93f6a79039e676a56f9d6990a324a64a36f143916065973ded89adc621e094 # qt6-base-nostrip.patch + 06590303498a10950408d26f027928ec12019fe631237d1862c2d720f1d331bb) # qtbug-97908.patch diff --git a/qt6-base/PKGBUILD-arch b/qt6-base/PKGBUILD-arch new file mode 100644 index 0000000..afd0441 --- /dev/null +++ b/qt6-base/PKGBUILD-arch @@ -0,0 +1,69 @@ +# Maintainer: Antonio Rojas +# Maintainer: Felix Yan +# Contributor: Andrea Scarpino + +pkgname=qt6-base +_qtver=6.2.2 +pkgver=${_qtver/-/} +pkgrel=2 +arch=(x86_64) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='A cross-platform application and UI framework' +depends=(libjpeg-turbo xcb-util-keysyms xcb-util-cursor libgl fontconfig xdg-utils + shared-mime-info xcb-util-wm libxrender libxi sqlite mesa vulkan-headers + tslib libinput libxkbcommon-x11 libproxy libcups double-conversion brotli libb2 md4c) +makedepends=(cmake ninja libfbclient mariadb-libs unixodbc postgresql alsa-lib gst-plugins-base-libs + gtk3 libpulse cups freetds xmlstarlet) +optdepends=('postgresql-libs: PostgreSQL driver' + 'mariadb-libs: MariaDB driver' + 'unixodbc: ODBC driver' + 'libfbclient: Firebird/iBase driver' + 'freetds: MS SQL driver' + 'gtk3: GTK platform plugin' + 'perl: for syncqt') +groups=(qt6) +_pkgfn="${pkgname/6-/}-everywhere-src-$_qtver" +source=(https://download.qt.io/official_releases/qt/${pkgver%.*}/$_qtver/submodules/$_pkgfn.tar.xz + qt6-base-cflags.patch + qt6-base-nostrip.patch) +sha256sums=('85ab9180180c2eaf84cd11ae4c6d5a6a69f2f8fd7260aaccfd91a3e7e7232c1a' + 'cf707cd970650f8b60f8897692b36708ded9ba116723ec8fcd885576783fe85c' + '4b93f6a79039e676a56f9d6990a324a64a36f143916065973ded89adc621e094') + +prepare() { + patch -d $_pkgfn -p1 < qt6-base-cflags.patch # Use system CFLAGS + patch -d $_pkgfn -p1 < qt6-base-nostrip.patch # Don't strip binaries with qmake +} + +build() { + cmake -B build -S $_pkgfn -G Ninja \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DINSTALL_BINDIR=lib/qt6/bin \ + -DINSTALL_PUBLICBINDIR=usr/bin \ + -DINSTALL_LIBEXECDIR=lib/qt6 \ + -DINSTALL_DOCDIR=share/doc/qt6 \ + -DINSTALL_ARCHDATADIR=lib/qt6 \ + -DINSTALL_DATADIR=share/qt6 \ + -DINSTALL_INCLUDEDIR=include/qt6 \ + -DINSTALL_MKSPECSDIR=lib/qt6/mkspecs \ + -DINSTALL_EXAMPLESDIR=share/doc/qt6/examples \ + -DQT_FEATURE_journald=ON \ + -DQT_FEATURE_openssl_linked=ON \ + -DQT_FEATURE_system_sqlite=ON + cmake --build build +} + +package() { + depends+=(qt6-translations) + DESTDIR="$pkgdir" cmake --install build + + install -Dm644 $_pkgfn/LICENSE* -t "$pkgdir"/usr/share/licenses/$pkgbase + +# Install symlinks for user-facing tools + cd "$pkgdir" + mkdir usr/bin + while read _line; do + ln -s $_line + done < "$srcdir"/build/user_facing_tool_links.txt +} diff --git a/qt6-base/PKGBUILD-arch.new1 b/qt6-base/PKGBUILD-arch.new1 new file mode 100644 index 0000000..484bf59 --- /dev/null +++ b/qt6-base/PKGBUILD-arch.new1 @@ -0,0 +1,74 @@ +# Maintainer: Antonio Rojas +# Maintainer: Felix Yan +# Contributor: Andrea Scarpino + +pkgname=qt6-base +_qtver=6.2.2 +pkgver=${_qtver/-/} +pkgrel=5 +arch=(x86_64) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='A cross-platform application and UI framework' +depends=(libjpeg-turbo xcb-util-keysyms xcb-util-cursor libgl fontconfig xdg-utils + shared-mime-info xcb-util-wm libxrender libxi sqlite mesa vulkan-headers + tslib libinput libxkbcommon-x11 libproxy libcups double-conversion brotli libb2 md4c) +makedepends=(cmake ninja libfbclient mariadb-libs unixodbc postgresql alsa-lib gst-plugins-base-libs + gtk3 libpulse cups freetds xmlstarlet) +optdepends=('qt6-wayland: to run Qt6 applications in a Wayland session' + 'postgresql-libs: PostgreSQL driver' + 'mariadb-libs: MariaDB driver' + 'unixodbc: ODBC driver' + 'libfbclient: Firebird/iBase driver' + 'freetds: MS SQL driver' + 'gtk3: GTK platform plugin' + 'perl: for syncqt') +groups=(qt6) +_pkgfn="${pkgname/6-/}-everywhere-src-$_qtver" +source=(https://download.qt.io/official_releases/qt/${pkgver%.*}/$_qtver/submodules/$_pkgfn.tar.xz + qt6-base-cflags.patch + qt6-base-nostrip.patch + qtbug-97908.patch::https://code.qt.io/cgit/qt/qtbase.git/patch/?id=9b7f7115) +sha256sums=('85ab9180180c2eaf84cd11ae4c6d5a6a69f2f8fd7260aaccfd91a3e7e7232c1a' + '5411edbe215c24b30448fac69bd0ba7c882f545e8cf05027b2b6e2227abc5e78' + '4b93f6a79039e676a56f9d6990a324a64a36f143916065973ded89adc621e094' + '06590303498a10950408d26f027928ec12019fe631237d1862c2d720f1d331bb') + +prepare() { + patch -d $_pkgfn -p1 < qt6-base-cflags.patch # Use system CFLAGS + patch -d $_pkgfn -p1 < qt6-base-nostrip.patch # Don't strip binaries with qmake + patch -d $_pkgfn -p1 < qtbug-97908.patch # Fix scrolling with PgUp/PgDown keys +} + +build() { + cmake -B build -S $_pkgfn -G Ninja \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DINSTALL_BINDIR=lib/qt6/bin \ + -DINSTALL_PUBLICBINDIR=usr/bin \ + -DINSTALL_LIBEXECDIR=lib/qt6 \ + -DINSTALL_DOCDIR=share/doc/qt6 \ + -DINSTALL_ARCHDATADIR=lib/qt6 \ + -DINSTALL_DATADIR=share/qt6 \ + -DINSTALL_INCLUDEDIR=include/qt6 \ + -DINSTALL_MKSPECSDIR=lib/qt6/mkspecs \ + -DINSTALL_EXAMPLESDIR=share/doc/qt6/examples \ + -DQT_FEATURE_journald=ON \ + -DQT_FEATURE_openssl_linked=ON \ + -DQT_FEATURE_system_sqlite=ON \ + -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON + cmake --build build +} + +package() { + depends+=(qt6-translations) + DESTDIR="$pkgdir" cmake --install build + + install -Dm644 $_pkgfn/LICENSE* -t "$pkgdir"/usr/share/licenses/$pkgbase + +# Install symlinks for user-facing tools + cd "$pkgdir" + mkdir usr/bin + while read _line; do + ln -s $_line + done < "$srcdir"/build/user_facing_tool_links.txt +} diff --git a/qt6-base/clean b/qt6-base/clean new file mode 100644 index 0000000..8a0568b --- /dev/null +++ b/qt6-base/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,qtbase-*xz} diff --git a/qt6-base/deps b/qt6-base/deps new file mode 100644 index 0000000..987787c --- /dev/null +++ b/qt6-base/deps @@ -0,0 +1,35 @@ +jsoncpp +libjpeg-turbo +xcb-util-keysyms +xcb-util-cursor +libglvnd +fontconfig +xdg-utils +shared-mime-info +xcb-util-wm +libxrender +libxi +mesa +vulkan-headers +tslib +libinput +libxkbcommon-x11 +libproxy +libcups +double-conversion +libb2 +md4c +ninja +libfbclient +mariadb-libs +unixodbc +postgresql +alsa-lib +gst-plugins-base-libs +gtk3 +libpulse +cups +freetds +xmlstarlet +cmake +jsoncpp diff --git a/qt6-base/qt6-base-cflags.patch b/qt6-base/qt6-base-cflags.patch new file mode 100644 index 0000000..c33aa78 --- /dev/null +++ b/qt6-base/qt6-base-cflags.patch @@ -0,0 +1,46 @@ +diff --git a/mkspecs/common/g++-unix.conf b/mkspecs/common/g++-unix.conf +index a493cd5984..41342f5020 100644 +--- a/mkspecs/common/g++-unix.conf ++++ b/mkspecs/common/g++-unix.conf +@@ -10,5 +10,6 @@ + + include(g++-base.conf) + +-QMAKE_LFLAGS_RELEASE += -Wl,-O1 ++SYSTEM_LDFLAGS = $$(LDFLAGS) ++!isEmpty(SYSTEM_LDFLAGS) { eval(QMAKE_LFLAGS_RELEASE += $$(LDFLAGS)) } else { QMAKE_LFLAGS_RELEASE += -Wl,-O1 } + QMAKE_LFLAGS_NOUNDEF += -Wl,--no-undefined +diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf +index 1f919d270a..7ef6046326 100644 +--- a/mkspecs/common/gcc-base.conf ++++ b/mkspecs/common/gcc-base.conf +@@ -40,9 +40,11 @@ QMAKE_CFLAGS_OPTIMIZE_SIZE = -Os + QMAKE_CFLAGS_DEPS += -M + QMAKE_CFLAGS_WARN_ON += -Wall -Wextra + QMAKE_CFLAGS_WARN_OFF += -w +-QMAKE_CFLAGS_RELEASE += $$QMAKE_CFLAGS_OPTIMIZE +-QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g +-QMAKE_CFLAGS_DEBUG += -g ++SYSTEM_CFLAGS = $$(CFLAGS) ++SYSTEM_DEBUG_CFLAGS = $$(DEBUG_CFLAGS) ++!isEmpty(SYSTEM_CFLAGS) { eval(QMAKE_CFLAGS_RELEASE += $$(CPPFLAGS) $$(CFLAGS)) } else { QMAKE_CFLAGS_RELEASE += $$QMAKE_CFLAGS_OPTIMIZE } ++!isEmpty(SYSTEM_CFLAGS) { eval(QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$(CPPFLAGS) -g $$(CFLAGS)) } else { QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g } ++!isEmpty(SYSTEM_DEBUG_CFLAGS) { eval(QMAKE_CFLAGS_DEBUG += $$(DEBUG_CFLAGS)) } else { QMAKE_CFLAGS_DEBUG += -g } + QMAKE_CFLAGS_SHLIB += $$QMAKE_CFLAGS_PIC + QMAKE_CFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_PIC + QMAKE_CFLAGS_APP += $$QMAKE_CFLAGS_PIC +@@ -59,9 +61,11 @@ QMAKE_CXXFLAGS += $$QMAKE_CFLAGS + QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS + QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON + QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF +-QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_RELEASE +-QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO +-QMAKE_CXXFLAGS_DEBUG += $$QMAKE_CFLAGS_DEBUG ++SYSTEM_CXXFLAGS = $$(CXXFLAGS) ++SYSTEM_DEBUG_CXXFLAGS = $$(DEBUG_CXXFLAGS) ++!isEmpty(SYSTEM_CXXFLAGS) { eval(QMAKE_CXXFLAGS_RELEASE += $$(CPPFLAGS) $$(CXXFLAGS)) } else { QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_OPTIMIZE } ++!isEmpty(SYSTEM_CXXFLAGS) { eval(QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$(CPPFLAGS) -g $$(CXXFLAGS)) } else { QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g } ++!isEmpty(SYSTEM_DEBUG_CXXFLAGS) { eval(QMAKE_CXXFLAGS_DEBUG += $$(DEBUG_CXXFLAGS)) } else { QMAKE_CXXFLAGS_DEBUG += -g } + QMAKE_CXXFLAGS_SHLIB += $$QMAKE_CFLAGS_SHLIB + QMAKE_CXXFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_STATIC_LIB + QMAKE_CXXFLAGS_APP += $$QMAKE_CFLAGS_APP diff --git a/qt6-base/qt6-base-nostrip.patch b/qt6-base/qt6-base-nostrip.patch new file mode 100644 index 0000000..17d24b4 --- /dev/null +++ b/qt6-base/qt6-base-nostrip.patch @@ -0,0 +1,13 @@ +diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf +index 99d77156fd..fc840fe9f6 100644 +--- a/mkspecs/common/gcc-base.conf ++++ b/mkspecs/common/gcc-base.conf +@@ -31,6 +31,8 @@ + # you can use the manual test in tests/manual/mkspecs. + # + ++CONFIG += nostrip ++ + QMAKE_CFLAGS_OPTIMIZE = -O2 + QMAKE_CFLAGS_OPTIMIZE_FULL = -O3 + QMAKE_CFLAGS_OPTIMIZE_DEBUG = -Og diff --git a/qt6-base/qtbug-97908.patch b/qt6-base/qtbug-97908.patch new file mode 100644 index 0000000..929dc62 --- /dev/null +++ b/qt6-base/qtbug-97908.patch @@ -0,0 +1,123 @@ +From 9b7f7115439d5fc1604c39bde86f1807c4e28835 Mon Sep 17 00:00:00 2001 +From: Richard Moe Gustavsen +Date: Tue, 2 Nov 2021 09:02:45 +0100 +Subject: Revert "Code style fix" + +This reverts commit e1d7df5ce9eb1d370e1b6dcd31ced4029082d63d. + +The offending patch removed handling of page-up and page-down +shortcuts in QScrollView (including subclasses like QTextBrowser). + +Fixes: QTBUG-97908 +Fixes: QTBUG-90352 +Change-Id: If760e983a082edb53e12e1311e2c7f2676d80bb2 +Reviewed-by: Volker Hilsheimer +Reviewed-by: Liang Qi +(cherry picked from commit 8ba3a2f911ad035b0847068bdde1ee87c93cf274) +Reviewed-by: Qt Cherry-pick Bot +--- + src/widgets/widgets/qabstractscrollarea.cpp | 82 ++++++++++++++++------------- + 1 file changed, 45 insertions(+), 37 deletions(-) + +diff --git a/src/widgets/widgets/qabstractscrollarea.cpp b/src/widgets/widgets/qabstractscrollarea.cpp +index 4ad8a3b411..627dbaa1d6 100644 +--- a/src/widgets/widgets/qabstractscrollarea.cpp ++++ b/src/widgets/widgets/qabstractscrollarea.cpp +@@ -1232,49 +1232,57 @@ void QAbstractScrollArea::contextMenuEvent(QContextMenuEvent *e) + void QAbstractScrollArea::keyPressEvent(QKeyEvent * e) + { + Q_D(QAbstractScrollArea); +- ++ if (false){ ++#ifndef QT_NO_SHORTCUT ++ } else if (e == QKeySequence::MoveToPreviousPage) { ++ d->vbar->triggerAction(QScrollBar::SliderPageStepSub); ++ } else if (e == QKeySequence::MoveToNextPage) { ++ d->vbar->triggerAction(QScrollBar::SliderPageStepAdd); ++#endif ++ } else { + #ifdef QT_KEYPAD_NAVIGATION +- if (QApplicationPrivate::keypadNavigationEnabled() && !hasEditFocus()) { +- e->ignore(); +- return; +- } ++ if (QApplicationPrivate::keypadNavigationEnabled() && !hasEditFocus()) { ++ e->ignore(); ++ return; ++ } + #endif +- switch (e->key()) { +- case Qt::Key_Up: +- d->vbar->triggerAction(QScrollBar::SliderSingleStepSub); +- break; +- case Qt::Key_Down: +- d->vbar->triggerAction(QScrollBar::SliderSingleStepAdd); +- break; +- case Qt::Key_Left: ++ switch (e->key()) { ++ case Qt::Key_Up: ++ d->vbar->triggerAction(QScrollBar::SliderSingleStepSub); ++ break; ++ case Qt::Key_Down: ++ d->vbar->triggerAction(QScrollBar::SliderSingleStepAdd); ++ break; ++ case Qt::Key_Left: + #ifdef QT_KEYPAD_NAVIGATION +- if (QApplicationPrivate::keypadNavigationEnabled() && hasEditFocus() +- && (!d->hbar->isVisible() || d->hbar->value() == d->hbar->minimum())) { +- //if we aren't using the hbar or we are already at the leftmost point ignore +- e->ignore(); +- return; +- } ++ if (QApplicationPrivate::keypadNavigationEnabled() && hasEditFocus() ++ && (!d->hbar->isVisible() || d->hbar->value() == d->hbar->minimum())) { ++ //if we aren't using the hbar or we are already at the leftmost point ignore ++ e->ignore(); ++ return; ++ } + #endif +- d->hbar->triggerAction( +- layoutDirection() == Qt::LeftToRight +- ? QScrollBar::SliderSingleStepSub : QScrollBar::SliderSingleStepAdd); +- break; +- case Qt::Key_Right: ++ d->hbar->triggerAction( ++ layoutDirection() == Qt::LeftToRight ++ ? QScrollBar::SliderSingleStepSub : QScrollBar::SliderSingleStepAdd); ++ break; ++ case Qt::Key_Right: + #ifdef QT_KEYPAD_NAVIGATION +- if (QApplicationPrivate::keypadNavigationEnabled() && hasEditFocus() +- && (!d->hbar->isVisible() || d->hbar->value() == d->hbar->maximum())) { +- //if we aren't using the hbar or we are already at the rightmost point ignore +- e->ignore(); +- return; +- } ++ if (QApplicationPrivate::keypadNavigationEnabled() && hasEditFocus() ++ && (!d->hbar->isVisible() || d->hbar->value() == d->hbar->maximum())) { ++ //if we aren't using the hbar or we are already at the rightmost point ignore ++ e->ignore(); ++ return; ++ } + #endif +- d->hbar->triggerAction( +- layoutDirection() == Qt::LeftToRight +- ? QScrollBar::SliderSingleStepAdd : QScrollBar::SliderSingleStepSub); +- break; +- default: +- e->ignore(); +- return; ++ d->hbar->triggerAction( ++ layoutDirection() == Qt::LeftToRight ++ ? QScrollBar::SliderSingleStepAdd : QScrollBar::SliderSingleStepSub); ++ break; ++ default: ++ e->ignore(); ++ return; ++ } + } + e->accept(); + } +-- +cgit v1.2.1 + diff --git a/qt6-base/time b/qt6-base/time new file mode 100644 index 0000000..aa84063 --- /dev/null +++ b/qt6-base/time @@ -0,0 +1,5 @@ + +real 24m20.866s +user 73m57.823s +sys 4m19.942s + diff --git a/re2c/PKGBUILD b/re2c/PKGBUILD new file mode 100644 index 0000000..c91b28d --- /dev/null +++ b/re2c/PKGBUILD @@ -0,0 +1,46 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=re2c +pkgver=3.0 +pkgrel=01 +arch=(x86_64) +depends=(gcc-libs) +makedepends=(cmake) +checkdepends=(python) +pkgdesc='A tool for generating C-based recognizers from regular expressions' +url='https://re2c.org' +source=(re2c-$pkgver.tar.gz::https://github.com/skvadrik/re2c/archive/$pkgver.tar.gz) + +build() { + cd $pkgname-$pkgver + cmake -B build -DCMAKE_INSTALL_PREFIX=/usr + cmake --build build +} + +check() { + cd $pkgname-$pkgver + cmake --build build --target check +} + +package() { + cd $pkgname-$pkgver + DESTDIR="$pkgdir" cmake --install build + install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE +} + +#---- license gpg-key sha256sums ---- + +license=('public domain') + +sha1sums=('ce178a2f31ca4ba266be0ba6f1aa346ef764b799') + +sha256sums=(acc6e49ec9638d4a75578f161945567d52bfcb85da998212adaef6328f5bdcc5) # re2c-3.0.tar.gz + +######## diffs between old and new Arch PKGBUILD +#### systemd crap in new PKGBUILD +#scan for systemd ipv6 service & socket +# diff --git a/re2c/PKGBUILD-arch b/re2c/PKGBUILD-arch new file mode 100644 index 0000000..9838af4 --- /dev/null +++ b/re2c/PKGBUILD-arch @@ -0,0 +1,33 @@ +# Maintainer: +# Contributor: nut543 +# Contributor: Dale Blount + +pkgname=re2c +pkgver=3.0 +pkgrel=1 +arch=(x86_64) +depends=(gcc-libs) +makedepends=(cmake) +checkdepends=(python) +pkgdesc='A tool for generating C-based recognizers from regular expressions' +url='https://re2c.org' +license=('public domain') +source=(re2c-$pkgver.tar.gz::https://github.com/skvadrik/re2c/archive/$pkgver.tar.gz) +sha1sums=('ce178a2f31ca4ba266be0ba6f1aa346ef764b799') + +build() { + cd $pkgname-$pkgver + cmake -B build -DCMAKE_INSTALL_PREFIX=/usr + cmake --build build +} + +check() { + cd $pkgname-$pkgver + cmake --build build --target check +} + +package() { + cd $pkgname-$pkgver + DESTDIR="$pkgdir" cmake --install build + install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE +} diff --git a/re2c/clean b/re2c/clean new file mode 100644 index 0000000..1a07171 --- /dev/null +++ b/re2c/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,re2c*tar.gz} diff --git a/re2c/deps b/re2c/deps new file mode 100644 index 0000000..c813074 --- /dev/null +++ b/re2c/deps @@ -0,0 +1,2 @@ +cmake +python diff --git a/re2c/time b/re2c/time new file mode 100644 index 0000000..547c60a --- /dev/null +++ b/re2c/time @@ -0,0 +1,5 @@ + +real 1m23.622s +user 4m17.151s +sys 0m16.498s + diff --git a/rsync/PKGBUILD b/rsync/PKGBUILD new file mode 100644 index 0000000..4eda8b7 --- /dev/null +++ b/rsync/PKGBUILD @@ -0,0 +1,76 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=rsync +_tag='1a2d16c0bd161481cbf0acc06dceb1ce788f0d09' # git rev-parse v${pkgver} +pkgver=3.2.3 +pkgrel=04 +pkgdesc='A fast and versatile file copying tool for remote and local files w/o systemd' +arch=('x86_64') +url='https://rsync.samba.org/' +depends=('acl' 'libacl.so' 'lz4' 'openssl' 'perl' 'popt' 'xxhash' 'libxxhash.so' + 'zlib' 'zstd') +makedepends=('git' 'python-commonmark') +backup=('etc/rsyncd.conf' + 'etc/xinetd.d/rsync') +source=("git+https://github.com/WayneD/rsync#tag=${_tag}?signed" + 'rsyncd.conf') + +prepare() { + cd "$srcdir/rsync" + + # rsync-ssl: Verify the hostname in the certificate when using openssl. + git cherry-pick -n c3f7414c450faaf6a8281cc4a4403529aeb7d859 + + # Force HAVE_LCHMOD off for Linux (for now). + # Work around glibc's lchmod() issue a better way. + git cherry-pick -n \ + 85b8dc8abaca96fc3ea7421e09101b6ac41b6718 \ + 9dd62525f3b98d692e031f22c02be8f775966503 + + # Add test and fix regression for --delay-updates (#192) (#204) + git cherry-pick -n efc81c93a9fca45ba08119145a2d282f477f01b4 +} + +build() { + cd "$srcdir/rsync" + + ./configure \ + --prefix=/usr \ + --disable-debug \ + --with-included-popt=no \ + --with-included-zlib=no \ + --with-systemd=no + make +} + +check() { + cd "$srcdir/rsync" + + make test +} + +package() { + cd "$srcdir/rsync" + + make DESTDIR="$pkgdir" install + install -Dm0644 ../rsyncd.conf "$pkgdir/etc/rsyncd.conf" + install -Dm0644 packaging/lsb/rsync.xinetd "$pkgdir/etc/xinetd.d/rsync" +# install -Dm0644 packaging/systemd/rsync.service "$pkgdir/usr/lib/systemd/system/rsyncd.service" +# install -Dm0644 packaging/systemd/rsync.socket "$pkgdir/usr/lib/systemd/system/rsyncd.socket" +# install -Dm0644 packaging/systemd/rsync@.service "$pkgdir/usr/lib/systemd/system/rsyncd@.service" + install -Dm0755 support/rrsync "$pkgdir/usr/lib/rsync/rrsync" +} + +#---- license gpg-key sha256sums ---- + +license=('GPL3') + +validpgpkeys=('0048C8B026D4C96F0E589C2F6C859FB14B96A8C5') # Wayne Davison + +sha256sums=('SKIP' + '733ccb571721433c3a6262c58b658253ca6553bec79c2bdd0011810bb4f2156b') diff --git a/rsync/PKGBUILD-arch b/rsync/PKGBUILD-arch new file mode 100644 index 0000000..17c23f0 --- /dev/null +++ b/rsync/PKGBUILD-arch @@ -0,0 +1,65 @@ +# Maintainer: Christian Hesse + +pkgname=rsync +_tag='1a2d16c0bd161481cbf0acc06dceb1ce788f0d09' # git rev-parse v${pkgver} +pkgver=3.2.3 +pkgrel=4 +pkgdesc='A fast and versatile file copying tool for remote and local files' +arch=('x86_64') +url='https://rsync.samba.org/' +license=('GPL3') +depends=('acl' 'libacl.so' 'lz4' 'openssl' 'perl' 'popt' 'xxhash' 'libxxhash.so' + 'zlib' 'zstd') +makedepends=('git' 'python-commonmark') +backup=('etc/rsyncd.conf' + 'etc/xinetd.d/rsync') +validpgpkeys=('0048C8B026D4C96F0E589C2F6C859FB14B96A8C5') # Wayne Davison +source=("git+https://github.com/WayneD/rsync#tag=${_tag}?signed" + 'rsyncd.conf') +sha256sums=('SKIP' + '733ccb571721433c3a6262c58b658253ca6553bec79c2bdd0011810bb4f2156b') + +prepare() { + cd "$srcdir/rsync" + + # rsync-ssl: Verify the hostname in the certificate when using openssl. + git cherry-pick -n c3f7414c450faaf6a8281cc4a4403529aeb7d859 + + # Force HAVE_LCHMOD off for Linux (for now). + # Work around glibc's lchmod() issue a better way. + git cherry-pick -n \ + 85b8dc8abaca96fc3ea7421e09101b6ac41b6718 \ + 9dd62525f3b98d692e031f22c02be8f775966503 + + # Add test and fix regression for --delay-updates (#192) (#204) + git cherry-pick -n efc81c93a9fca45ba08119145a2d282f477f01b4 +} + +build() { + cd "$srcdir/rsync" + + ./configure \ + --prefix=/usr \ + --disable-debug \ + --with-included-popt=no \ + --with-included-zlib=no + make +} + +check() { + cd "$srcdir/rsync" + + make test +} + +package() { + cd "$srcdir/rsync" + + make DESTDIR="$pkgdir" install + install -Dm0644 ../rsyncd.conf "$pkgdir/etc/rsyncd.conf" + install -Dm0644 packaging/lsb/rsync.xinetd "$pkgdir/etc/xinetd.d/rsync" + install -Dm0644 packaging/systemd/rsync.service "$pkgdir/usr/lib/systemd/system/rsyncd.service" + install -Dm0644 packaging/systemd/rsync.socket "$pkgdir/usr/lib/systemd/system/rsyncd.socket" + install -Dm0644 packaging/systemd/rsync@.service "$pkgdir/usr/lib/systemd/system/rsyncd@.service" + install -Dm0755 support/rrsync "$pkgdir/usr/lib/rsync/rrsync" +} diff --git a/rsync/clean b/rsync/clean new file mode 100644 index 0000000..4acf97b --- /dev/null +++ b/rsync/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,rsync} diff --git a/rsync/deps b/rsync/deps new file mode 100644 index 0000000..62dad34 --- /dev/null +++ b/rsync/deps @@ -0,0 +1,6 @@ +popt +xxhash +git +python-commonmark +automake +autoconf diff --git a/rsync/key b/rsync/key new file mode 100644 index 0000000..2dedb3c --- /dev/null +++ b/rsync/key @@ -0,0 +1 @@ +gpg -v --recv-key 6C859FB14B96A8C5 diff --git a/rsync/rsyncd.conf b/rsync/rsyncd.conf new file mode 100644 index 0000000..1521060 --- /dev/null +++ b/rsync/rsyncd.conf @@ -0,0 +1,10 @@ +uid = nobody +gid = nobody +use chroot = no +max connections = 4 +syslog facility = local5 +pid file = /run/rsyncd.pid + +[ftp] + path = /srv/ftp + comment = ftp area diff --git a/smartgit/PKGBUILD b/smartgit/PKGBUILD new file mode 100644 index 0000000..0bc2f7d --- /dev/null +++ b/smartgit/PKGBUILD @@ -0,0 +1,57 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=smartgit +pkgver=21.2.1 +pkgrel=01 +pkgdesc='Git client with Hg and SVN support.' +arch=('any') +url="http://www.syntevo.com/smartgit" +depends=('desktop-file-utils' 'git' 'gtk3') +optdepends=('mercurial: hg repositories support') +replaces=('smartgithg') + +# package version as it appears in the name of tar.gz archive file +_pkgver=${pkgver//\./_} +# folder within tar.gz archive +_pkgfolder=${pkgname} +source=("https://www.syntevo.com/downloads/${pkgname}/${pkgname}-linux-${_pkgver}.tar.gz" + "${pkgname}.desktop") + +package() { + # Install licenses + install -d -m 755 "${pkgdir}/usr/share/licenses/${pkgname}" + mv "${_pkgfolder}/licenses"/* "${pkgdir}/usr/share/licenses/${pkgname}" + mv "${_pkgfolder}/license.html" "${pkgdir}/usr/share/licenses/${pkgname}" + rmdir "${_pkgfolder}/licenses" + # Install application files + install -d -m 755 "${pkgdir}/opt" + mv "${_pkgfolder}" "${pkgdir}/opt/${pkgname}" + # Install desktop file + install -D -m 644 "${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop" + # Install icon files + install -d -m 755 "${pkgdir}/usr/share/icons/hicolor" + cd "${pkgdir}/usr/share/icons/hicolor" + for _size in 32 48 64 128 256 + do + install -d "${_size}x${_size}/apps" + ln -s "/opt/${pkgname}/bin/smartgit-${_size}.png" "${_size}x${_size}/apps/${pkgname}.png" + done + # Add symlink to /usr/bin + chmod 755 "${pkgdir}/opt/${pkgname}/bin/smartgit.sh" + install -d -m 755 "${pkgdir}/usr/bin" + ln -s "/opt/${pkgname}/bin/smartgit.sh" "${pkgdir}/usr/bin/${pkgname}" +} + +#---- license gpg-key sha256sums ---- + +license=('custom') + +sha1sums=('85b0f9fd5b5a76cb8bec738a6610bad53ec1c1bc' + 'bafa47c0b43ad89aaa3b34a078771b3cd12bd1f3') + +sha256sums=(ba7faa12c23ba238cbe88ac5ea2a4457248952d633328c1987874d17b701e4aa # smartgit-linux-21_2_1.tar.gz + bb5665e9c93640b311dbe8b633da65e3c72a712a3dc9655c3274a3542a688a32) # smartgit.desktop diff --git a/smartgit/PKGBUILD-aur b/smartgit/PKGBUILD-aur new file mode 100644 index 0000000..b1f95ed --- /dev/null +++ b/smartgit/PKGBUILD-aur @@ -0,0 +1,47 @@ +# Maintainer: Alexey Stukalov +# Contributor: Muflone http://www.muflone.com/contacts/english/ + +pkgname=smartgit +pkgver=21.2.1 +pkgrel=1 +pkgdesc='Git client with Hg and SVN support.' +arch=('any') +url="http://www.syntevo.com/smartgit" +license=('custom') +depends=('desktop-file-utils' 'git' 'gtk3') +optdepends=('mercurial: hg repositories support') +replaces=('smartgithg') + +# package version as it appears in the name of tar.gz archive file +_pkgver=${pkgver//\./_} +# folder within tar.gz archive +_pkgfolder=${pkgname} +source=("https://www.syntevo.com/downloads/${pkgname}/${pkgname}-linux-${_pkgver}.tar.gz" + "${pkgname}.desktop") +sha1sums=('85b0f9fd5b5a76cb8bec738a6610bad53ec1c1bc' + 'bafa47c0b43ad89aaa3b34a078771b3cd12bd1f3') + +package() { + # Install licenses + install -d -m 755 "${pkgdir}/usr/share/licenses/${pkgname}" + mv "${_pkgfolder}/licenses"/* "${pkgdir}/usr/share/licenses/${pkgname}" + mv "${_pkgfolder}/license.html" "${pkgdir}/usr/share/licenses/${pkgname}" + rmdir "${_pkgfolder}/licenses" + # Install application files + install -d -m 755 "${pkgdir}/opt" + mv "${_pkgfolder}" "${pkgdir}/opt/${pkgname}" + # Install desktop file + install -D -m 644 "${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop" + # Install icon files + install -d -m 755 "${pkgdir}/usr/share/icons/hicolor" + cd "${pkgdir}/usr/share/icons/hicolor" + for _size in 32 48 64 128 256 + do + install -d "${_size}x${_size}/apps" + ln -s "/opt/${pkgname}/bin/smartgit-${_size}.png" "${_size}x${_size}/apps/${pkgname}.png" + done + # Add symlink to /usr/bin + chmod 755 "${pkgdir}/opt/${pkgname}/bin/smartgit.sh" + install -d -m 755 "${pkgdir}/usr/bin" + ln -s "/opt/${pkgname}/bin/smartgit.sh" "${pkgdir}/usr/bin/${pkgname}" +} diff --git a/smartgit/clean b/smartgit/clean new file mode 100644 index 0000000..af8b46d --- /dev/null +++ b/smartgit/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,*tar.gz*} diff --git a/smartgit/deps b/smartgit/deps new file mode 100644 index 0000000..0d7e5bd --- /dev/null +++ b/smartgit/deps @@ -0,0 +1 @@ +desktop-file-utils git gtk3 diff --git a/smartgit/smartgit.desktop b/smartgit/smartgit.desktop new file mode 100644 index 0000000..0c0b9d9 --- /dev/null +++ b/smartgit/smartgit.desktop @@ -0,0 +1,16 @@ +[Desktop Entry] +Name=SmartGit +Comment=Graphical Git/Hg client +Comment[cs]=Grafický Git/Hg klient +Comment[de]=Ein grafischer Git/Hg Client +Comment[zh_CN]=图形界面的 Git/Hg 客户端 +Comment[zh_HK]=圖形介面的 Git/Hg 客戶端 +Comment[zh_TW]=圖形介面的 Git/Hg 客戶端 +Exec=smartgit +Icon=smartgit +Terminal=false +X-MultipleArgs=false +Type=Application +Categories=Development; +StartupWMClass=SmartGit +MimeType=application/smartgit;application/x-smartgit; diff --git a/smartgit/time b/smartgit/time new file mode 100644 index 0000000..6cd009b --- /dev/null +++ b/smartgit/time @@ -0,0 +1,5 @@ + +real 0m41.271s +user 1m37.100s +sys 0m2.670s + diff --git a/sshfs/PKGBUILD b/sshfs/PKGBUILD new file mode 100644 index 0000000..62a3e29 --- /dev/null +++ b/sshfs/PKGBUILD @@ -0,0 +1,49 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=sshfs +pkgver=3.7.2 +pkgrel=02 +pkgdesc="FUSE client based on the SSH File Transfer Protocol" +arch=('x86_64') +url="https://github.com/libfuse/sshfs" +depends=(fuse3 glib2 openssh) +makedepends=('meson' 'python-docutils') +source=(https://github.com/libfuse/sshfs/releases/download/$pkgname-$pkgver/$pkgname-$pkgver.tar.xz{,.asc} + https://github.com/libfuse/sshfs/commit/508e8cb0.patch) + +prepare() { + cd $pkgname-$pkgver + + patch -p1 -i ../508e8cb0.patch # Fix typo that prevents passing the PubkeyAcceptedKeyTypes option to ssh + + rm -rf build + mkdir build + cd build + arch-meson .. +} + +build() { + cd $pkgname-$pkgver/build + ninja +} + +package() { + cd $pkgname-$pkgver/build + + DESTDIR="$pkgdir" ninja install +} + +#---- license gpg-key sha256sums ---- + +license=(GPL) + +validpgpkeys=('ED31791B2C5C1613AF388B8AD113FCAC3C4E599F') # Nikolaus Rath + +sha256sums=(1c596d42724d13aeba9f49ee127b8ef2fdeb813e25c6018f92d0c9ec4754fa2d # sshfs-3.7.2.tar.xz + 42d749dd6b96831567d5721b766e08d7e3ca2694075a061ad2299272e4a09b79 # sshfs-3.7.2.tar.xz.asc + 629f0f07e1efd6c8251750c29981f106caa8fc4e12338c2092376054bfec059b) # 508e8cb0.patch diff --git a/sshfs/PKGBUILD-arch b/sshfs/PKGBUILD-arch new file mode 100644 index 0000000..aae0edd --- /dev/null +++ b/sshfs/PKGBUILD-arch @@ -0,0 +1,41 @@ +# Maintainer: Giancarlo Razzolini +# Contributor: Antonio Rojas +# Contributor: Giovanni Scafora + +pkgname=sshfs +pkgver=3.7.2 +pkgrel=2 +pkgdesc="FUSE client based on the SSH File Transfer Protocol" +arch=('x86_64') +url="https://github.com/libfuse/sshfs" +license=(GPL) +depends=(fuse3 glib2 openssh) +makedepends=('meson' 'python-docutils') +source=(https://github.com/libfuse/sshfs/releases/download/$pkgname-$pkgver/$pkgname-$pkgver.tar.xz{,.asc} + https://github.com/libfuse/sshfs/commit/508e8cb0.patch) +sha256sums=('1c596d42724d13aeba9f49ee127b8ef2fdeb813e25c6018f92d0c9ec4754fa2d' + 'SKIP' + '629f0f07e1efd6c8251750c29981f106caa8fc4e12338c2092376054bfec059b') +validpgpkeys=('ED31791B2C5C1613AF388B8AD113FCAC3C4E599F') # Nikolaus Rath + +prepare() { + cd $pkgname-$pkgver + + patch -p1 -i ../508e8cb0.patch # Fix typo that prevents passing the PubkeyAcceptedKeyTypes option to ssh + + rm -rf build + mkdir build + cd build + arch-meson .. +} + +build() { + cd $pkgname-$pkgver/build + ninja +} + +package() { + cd $pkgname-$pkgver/build + + DESTDIR="$pkgdir" ninja install +} diff --git a/sshfs/clean b/sshfs/clean new file mode 100644 index 0000000..842798f --- /dev/null +++ b/sshfs/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,sshfs-3*,*.patch} diff --git a/sshfs/deps b/sshfs/deps new file mode 100644 index 0000000..5877a4f --- /dev/null +++ b/sshfs/deps @@ -0,0 +1,4 @@ +fuse3 +openssh +meson +python-docutils diff --git a/sshfs/key b/sshfs/key new file mode 100644 index 0000000..c32df88 --- /dev/null +++ b/sshfs/key @@ -0,0 +1 @@ +gpg -v --recv-key D113FCAC3C4E599F diff --git a/sshfs/time b/sshfs/time new file mode 100644 index 0000000..17045f3 --- /dev/null +++ b/sshfs/time @@ -0,0 +1,5 @@ + +real 0m3.426s +user 0m3.013s +sys 0m0.424s + diff --git a/strace/PKGBUILD b/strace/PKGBUILD new file mode 100644 index 0000000..d13298a --- /dev/null +++ b/strace/PKGBUILD @@ -0,0 +1,44 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=strace +pkgver=5.16 +pkgrel=01 +pkgdesc='A diagnostic, debugging and instructional userspace tracer' +arch=(x86_64) +url='https://strace.io/' +depends=(perl libunwind) +source=(https://github.com/strace/strace/releases/download/v$pkgver/strace-$pkgver.tar.xz{,.asc}) + +build() { + cd $pkgname-$pkgver + ./configure --prefix=/usr --with-libunwind --enable-mpers=no + make +} + +check() { + # tests do not work in chroot environment. TODO: fixit. + # make -C $pkgname-$pkgver check + true +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install + install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +#---- license gpg-key sha256sums ---- + +license=(BSD) + +validpgpkeys=('296D6F29A020808E8717A8842DB5BD89A340AEB7') # Dmitry V. Levin + +sha1sums=('b2bf2485fb42c9a1f885edffe3cd7dd91c191e7a' + 'SKIP') + +sha256sums=(dc7db230ff3e57c249830ba94acab2b862da1fcaac55417e9b85041a833ca285 # strace-5.16.tar.xz + 6a3785885355a5e81e15bd220e66aed35c72897c2c7f0328265b365c7ccf3a8d) # strace-5.16.tar.xz.asc diff --git a/strace/PKGBUILD-arch b/strace/PKGBUILD-arch new file mode 100644 index 0000000..b9b944b --- /dev/null +++ b/strace/PKGBUILD-arch @@ -0,0 +1,33 @@ +# Maintainer: Giovanni Scafora +# Contributor: Tom Newsom + +pkgname=strace +pkgver=5.16 +pkgrel=1 +pkgdesc='A diagnostic, debugging and instructional userspace tracer' +arch=(x86_64) +url='https://strace.io/' +license=(BSD) +depends=(perl libunwind) +source=(https://github.com/strace/strace/releases/download/v$pkgver/strace-$pkgver.tar.xz{,.asc}) +sha1sums=('b2bf2485fb42c9a1f885edffe3cd7dd91c191e7a' + 'SKIP') +validpgpkeys=('296D6F29A020808E8717A8842DB5BD89A340AEB7') # Dmitry V. Levin + +build() { + cd $pkgname-$pkgver + ./configure --prefix=/usr --with-libunwind --enable-mpers=no + make +} + +check() { + # tests do not work in chroot environment. TODO: fixit. + # make -C $pkgname-$pkgver check + true +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install + install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} diff --git a/strace/clean b/strace/clean new file mode 100644 index 0000000..e551f61 --- /dev/null +++ b/strace/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,strace-*tar.xz*} diff --git a/strace/deps b/strace/deps new file mode 100644 index 0000000..0fb9839 --- /dev/null +++ b/strace/deps @@ -0,0 +1 @@ +libunwind diff --git a/strace/key b/strace/key new file mode 100644 index 0000000..42fedb4 --- /dev/null +++ b/strace/key @@ -0,0 +1 @@ +gpg -v --recv-key 2DB5BD89A340AEB7 diff --git a/strace/time b/strace/time new file mode 100644 index 0000000..72d7772 --- /dev/null +++ b/strace/time @@ -0,0 +1,5 @@ + +real 0m40.862s +user 1m7.927s +sys 0m9.221s + diff --git a/swig/PKGBUILD b/swig/PKGBUILD new file mode 100644 index 0000000..3a3e30b --- /dev/null +++ b/swig/PKGBUILD @@ -0,0 +1,55 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=swig +pkgver=4.0.2 +pkgrel=05 +pkgdesc="Generate scripting interfaces to C/C++ code" +arch=('x86_64') +url="http://www.swig.org/" +depends=('pcre' 'gcc-libs') +checkdepends=('ruby' 'python' 'java-environment' 'tcl' 'php' 'lua' 'r' 'go' 'boost') +source=(https://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz + jdk17.patch + python310.patch) + +prepare() { + cd ${pkgname}-${pkgver} + patch -Np1 -i ../jdk17.patch + + # https://github.com/swig/swig/issues/2044 + patch -Np1 -i ../python310.patch +} + +build() { + cd ${pkgname}-${pkgver} + ./configure --prefix=/usr + make +} + +check() { + cd ${pkgname}-${pkgver} + make check PY3=y +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + install -D -m644 LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE + install -D -m644 LICENSE-UNIVERSITIES "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE-UNIVERSITIES +} + +#---- license gpg-key sha256sums ---- + +license=('custom') + +sha512sums=('05e7da70ce6d9a733b96c0bcfa3c1b82765bd859f48c74759bbf4bb1467acb1809caa310cba5e2b3280cd704fca249eaa0624821dffae1d2a75097c7f55d14ed' + '06671202b6a1f82e96166ada7982b9dd70ae5365dc90c4f24e81596963f7bd3960913f2eca5250ad76bee4b2e51f10ed922595722036e3da9da63d6aa988cb3e' + '3de6484d920d8ecf042102d40af3a375ecb1ead3c4e0bc45ae63633e5fd652f52e1938108f747514a654a19d93a783afe2968b141be56957f438162263d62d8a') + +sha256sums=(d53be9730d8d58a16bf0cbd1f8ac0c0c3e1090573168bfa151b01eb47fa906fc # swig-4.0.2.tar.gz + ee648f4e6b7bc1f482cb9199eb96ff85a5473d4703566f5c3f49d723ec1c3d27 # jdk17.patch + c83d88476041e88d10ae60c2cd8c82dfff2abcd0cf472455c39778e2fac1c78b) # python310.patch diff --git a/swig/PKGBUILD-arch.new b/swig/PKGBUILD-arch.new new file mode 100644 index 0000000..a54091d --- /dev/null +++ b/swig/PKGBUILD-arch.new @@ -0,0 +1,45 @@ +# Maintainer: Felix Yan +# Contributor: Stéphane Gaudreault +# Contributor: Tom Newsom + +pkgname=swig +pkgver=4.0.2 +pkgrel=5 +pkgdesc="Generate scripting interfaces to C/C++ code" +arch=('x86_64') +url="http://www.swig.org/" +license=('custom') +depends=('pcre' 'gcc-libs') +checkdepends=('ruby' 'python' 'java-environment' 'tcl' 'php' 'lua' 'r' 'go' 'boost') +source=(https://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz + jdk17.patch + python310.patch) +sha512sums=('05e7da70ce6d9a733b96c0bcfa3c1b82765bd859f48c74759bbf4bb1467acb1809caa310cba5e2b3280cd704fca249eaa0624821dffae1d2a75097c7f55d14ed' + '06671202b6a1f82e96166ada7982b9dd70ae5365dc90c4f24e81596963f7bd3960913f2eca5250ad76bee4b2e51f10ed922595722036e3da9da63d6aa988cb3e' + '3de6484d920d8ecf042102d40af3a375ecb1ead3c4e0bc45ae63633e5fd652f52e1938108f747514a654a19d93a783afe2968b141be56957f438162263d62d8a') + +prepare() { + cd ${pkgname}-${pkgver} + patch -Np1 -i ../jdk17.patch + + # https://github.com/swig/swig/issues/2044 + patch -Np1 -i ../python310.patch +} + +build() { + cd ${pkgname}-${pkgver} + ./configure --prefix=/usr + make +} + +check() { + cd ${pkgname}-${pkgver} + make check PY3=y +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + install -D -m644 LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE + install -D -m644 LICENSE-UNIVERSITIES "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE-UNIVERSITIES +} diff --git a/swig/clean b/swig/clean new file mode 100644 index 0000000..8b602c9 --- /dev/null +++ b/swig/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,swig*.tar.gz} diff --git a/swig/deps b/swig/deps new file mode 100644 index 0000000..5c50955 --- /dev/null +++ b/swig/deps @@ -0,0 +1,9 @@ +ruby +python +jdk-openjdk +tcl +php +lua +r +go +boost diff --git a/swig/jdk17.patch b/swig/jdk17.patch new file mode 100644 index 0000000..0270c20 --- /dev/null +++ b/swig/jdk17.patch @@ -0,0 +1,28 @@ +From 34e663a61af13eec62050d2b105ace418929e289 Mon Sep 17 00:00:00 2001 +From: William S Fulton +Date: Sat, 20 Mar 2021 09:49:30 +0000 +Subject: [PATCH] Test a different C# keyword rename + +Worked around warning in java jdk-15: + warning: 'sealed' may become a restricted type name in a future release + and may be unusable for type declarations or as the element type of an array + +Adding sealed to the list of automatically renamed keywords in Java does +not seem prudent. +--- + Examples/test-suite/keyword_rename.i | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Examples/test-suite/keyword_rename.i b/Examples/test-suite/keyword_rename.i +index 23c01087dc4..645f0266112 100644 +--- a/Examples/test-suite/keyword_rename.i ++++ b/Examples/test-suite/keyword_rename.i +@@ -27,7 +27,7 @@ KW(synchronized, final) + + /* C# Keywords */ + KW(string, out) +-struct sealed {int i;}; ++struct stackalloc {int i;}; + + /* Go Keywords */ + KW(go, defer) diff --git a/swig/python310.patch b/swig/python310.patch new file mode 100644 index 0000000..a3c8cff --- /dev/null +++ b/swig/python310.patch @@ -0,0 +1,23 @@ +From a2850397ba3eec5d4c58304cf8277ca535919760 Mon Sep 17 00:00:00 2001 +From: Julien Schueller +Date: Thu, 5 Aug 2021 14:05:10 +0200 +Subject: [PATCH] [Python] Fix overload_simple_cast test with 3.10 + +Closes #2044 +--- + Examples/test-suite/python/python_overload_simple_cast_runme.py | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/Examples/test-suite/python/python_overload_simple_cast_runme.py b/Examples/test-suite/python/python_overload_simple_cast_runme.py +index fc398ab29b9..7a0174af8a2 100644 +--- a/Examples/test-suite/python/python_overload_simple_cast_runme.py ++++ b/Examples/test-suite/python/python_overload_simple_cast_runme.py +@@ -9,6 +9,8 @@ def __init__(self, x): + def __int__(self): + return self.x + ++ def __index__(self): ++ return self.x + + class Ad: + diff --git a/swig/time b/swig/time new file mode 100644 index 0000000..c81825c --- /dev/null +++ b/swig/time @@ -0,0 +1,5 @@ + +real 43m22.616s +user 137m10.436s +sys 9m54.143s + diff --git a/tbb/PKGBUILD b/tbb/PKGBUILD new file mode 100644 index 0000000..e26a627 --- /dev/null +++ b/tbb/PKGBUILD @@ -0,0 +1,44 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=tbb +pkgver=2021.5.0 +pkgrel=01 +pkgdesc='High level abstract threading library' +arch=('x86_64') +url='https://www.threadingbuildingblocks.org/' +depends=('gcc-libs' 'hwloc') +makedepends=('cmake' 'inetutils' 'ninja' 'python' 'swig') +conflicts=('intel-tbb') +provides=("intel-tbb=$pkgver") +replaces=('intel-tbb') +source=(https://github.com/oneapi-src/oneTBB/archive/v$pkgver/$pkgname-$pkgver.tar.gz) + +build() { + cd oneTBB-$pkgver + cmake -GNinja -DCMAKE_INSTALL_PREFIX=/usr -DTBB4PY_BUILD=ON . + ninja all python_build +} +# +#check() { +# cd oneTBB-$pkgver +# ninja test +#} +# +## 2 out 134 tests failed see check.log + +package() { + cd oneTBB-$pkgver + DESTDIR="$pkgdir" ninja install +} + +#---- license gpg-key sha256sums ---- + +license=('Apache') + +sha512sums=('0e7b71022e397a6d7abb0cea106847935ae79a1e12a6976f8d038668c6eca8775ed971202c5bd518f7e517092b67af805cc5feb04b5c3a40e9fbf972cc703a46') + +sha256sums=(e5b57537c741400cf6134b428fc1689a649d7d38d9bb9c1b6d64f092ea28178a) # tbb-2021.5.0.tar.gz diff --git a/tbb/PKGBUILD-arch b/tbb/PKGBUILD-arch new file mode 100644 index 0000000..38ab1a1 --- /dev/null +++ b/tbb/PKGBUILD-arch @@ -0,0 +1,36 @@ +# Maintainer: Felix Yan +# Contributor: Stéphane Gaudreault +# Contributor: Thomas Dziedzic < gostrc at gmail > +# Contributor: Denis Martinez +# Contributor: Bogdan Burlacu + +pkgname=tbb +pkgver=2021.5.0 +pkgrel=1 +pkgdesc='High level abstract threading library' +arch=('x86_64') +url='https://www.threadingbuildingblocks.org/' +license=('Apache') +depends=('gcc-libs' 'hwloc') +makedepends=('cmake' 'inetutils' 'ninja' 'python' 'swig') +conflicts=('intel-tbb') +provides=("intel-tbb=$pkgver") +replaces=('intel-tbb') +source=(https://github.com/oneapi-src/oneTBB/archive/v$pkgver/$pkgname-$pkgver.tar.gz) +sha512sums=('0e7b71022e397a6d7abb0cea106847935ae79a1e12a6976f8d038668c6eca8775ed971202c5bd518f7e517092b67af805cc5feb04b5c3a40e9fbf972cc703a46') + +build() { + cd oneTBB-$pkgver + cmake -GNinja -DCMAKE_INSTALL_PREFIX=/usr -DTBB4PY_BUILD=ON . + ninja all python_build +} + +check() { + cd oneTBB-$pkgver + ninja test +} + +package() { + cd oneTBB-$pkgver + DESTDIR="$pkgdir" ninja install +} diff --git a/tbb/clean b/tbb/clean new file mode 100644 index 0000000..c90cbb2 --- /dev/null +++ b/tbb/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,tbb*.tar.gz*} diff --git a/tbb/deps b/tbb/deps new file mode 100644 index 0000000..11b0103 --- /dev/null +++ b/tbb/deps @@ -0,0 +1,6 @@ +hwloc +cmake +inetutils +ninja +python +swig diff --git a/tbb/time b/tbb/time new file mode 100644 index 0000000..03d76ba --- /dev/null +++ b/tbb/time @@ -0,0 +1,4 @@ +real 20m9.284s +user 73m54.803s +sys 2m59.221s + diff --git a/tor-alpha/PKGBUILD b/tor-alpha/PKGBUILD new file mode 100644 index 0000000..9107044 --- /dev/null +++ b/tor-alpha/PKGBUILD @@ -0,0 +1,103 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=tor-alpha +pkgver=0.4.7.4.alpha.r1.g331b2aa +pkgrel=01 +pkgdesc="An anonymizing overlay network (development version)" +arch=('x86_64') +url="https://www.torproject.org" +conflicts=('tor' 'tor-git') +provides=('tor') +backup=('etc/tor/torrc' + 'etc/tor/torrc.d/nodes.conf' + 'etc/tor/torrc.d/bridge.conf' + 'etc/tor/torrc.d/isolation.conf' + 'etc/tor/torrc.d/transparent_proxy.conf') + +depends=('openssl' 'libevent' 'libseccomp' 'xz') +makedepends=('asciidoc') +checkdepends=('python') +optdepends=('torsocks: allow transparent SOCKS proxying' + 'obfs4proxy: obfuscating pluggable transport proxy' + 'meek: obfuscating pluggable transport proxy') + +[[ $_malloc = 'jemalloc' ]] && depends+=('jemalloc') +[[ $_malloc = 'tcmalloc' ]] && depends+=('gperftools') + +# https://gitweb.torproject.org/tor.git/tag/?h=tor-0.4.7.3-alpha +source=("git+https://git.torproject.org/tor.git#branch=${_branch:-main}" + {nodes,bridge,transparent_proxy,isolation}.conf + 'torrc' 'tor.logrotate' 'tor.tmpfiles' 'tor.sysusers') + +pkgver () { + cd tor + git describe --long --tags --abbrev=7 "origin/${_branch:-main}" \ + |sed -e 's/tor.//g;s/\([^-]*-g\)/r\1/;s/-/./g' +} + +prepare() { + cd tor + ./autogen.sh +} + +build() { + cd tor + + ./configure \ + --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ + --disable-html-manual \ + --disable-systemd \ + --disable-zstd \ + --enable-lzma \ + --enable-xz \ + --enable-pic \ + --with-malloc="${_malloc:-system}" #\ + #--disable-module-relay \ + #--disable-unittests + make +} + +check() { + cd tor + make check ||true +} + +package() { + cd tor + make DESTDIR="$pkgdir" install + + rm -f "$pkgdir/etc/tor/tor-tsocks.conf" + rm -f "$pkgdir/usr/bin/torify" + + install -dm755 "$pkgdir/etc/tor" + install -dm750 "$pkgdir/etc/tor/torrc.d" + + install -Dm640 "$srcdir/torrc" "$pkgdir/etc/tor/torrc" + install -Dm640 "$srcdir/nodes.conf" "$pkgdir/etc/tor/torrc.d/nodes.conf" + install -Dm640 "$srcdir/bridge.conf" "$pkgdir/etc/tor/torrc.d/bridge.conf" + install -Dm640 "$srcdir/isolation.conf" "$pkgdir/etc/tor/torrc.d/isolation.conf" + install -Dm640 "$srcdir/transparent_proxy.conf" "$pkgdir/etc/tor/torrc.d/transparent_proxy.conf" + + install -Dm644 "$srcdir/tor.logrotate" "$pkgdir/etc/logrotate.d/tor" + install -Dm644 "$srcdir/tor.tmpfiles" "$pkgdir/usr/lib/tmpfiles.d/tor.conf" + install -Dm644 "$srcdir/tor.sysusers" "$pkgdir/usr/lib/sysusers.d/tor.conf" + install -Dm644 LICENSE "$pkgdir/usr/share/licenses/tor-git/LICENSE" +} + +#---- license gpg-key sha256sums ---- + +license=('BSD') + +sha256sums=(SKIP + 60c77f74f795739cd44899add8916f842fed1d692f2789f1a11e8241ee6ed950 # nodes.conf + eab04421822cce29a3c5065b707b0033fdab6dedd140a49ea902daf36bb767e0 # bridge.conf + b6d5027754831bb4230c748affa245e5e7ee4f801214bca19ea6418cb84fd417 # transparent_proxy.conf + 9156f0d768119e7c8390be625cc591af90304198ad5dc5b0b4a036e7cc92fa07 # isolation.conf + 1f32a363443437a08d133494732008b98a9dc520173a97d53ce832edfb923f7b # torrc + 5756d919fb7a9c7063fb6311b8056c6695576ed12658098325aef7758824c960 # tor.logrotate + 06c00318d84ead3f939b267c7ae9e4cc1cd90c534d0b57ddd2595fee9065ee7f # tor.tmpfiles + 632cd25223ac163aed2a848784108d5310e641e1eb839375813c7c406ecee9d0) # tor.sysusers diff --git a/tor-alpha/PKGBUILD.0 b/tor-alpha/PKGBUILD.0 new file mode 100644 index 0000000..6807940 --- /dev/null +++ b/tor-alpha/PKGBUILD.0 @@ -0,0 +1,103 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=tor-alpha +pkgver=0.4.7.3.alpha.r15.g66e7ddb +pkgrel=01 +pkgdesc="An anonymizing overlay network (development version)" +arch=('x86_64') +url="https://www.torproject.org" +conflicts=('tor' 'tor-git') +provides=('tor') +backup=('etc/tor/torrc' + 'etc/tor/torrc.d/nodes.conf' + 'etc/tor/torrc.d/bridge.conf' + 'etc/tor/torrc.d/isolation.conf' + 'etc/tor/torrc.d/transparent_proxy.conf') + +depends=('openssl' 'libevent' 'libseccomp' 'xz') +makedepends=('asciidoc') +checkdepends=('python') +optdepends=('torsocks: allow transparent SOCKS proxying' + 'obfs4proxy: obfuscating pluggable transport proxy' + 'meek: obfuscating pluggable transport proxy') + +[[ $_malloc = 'jemalloc' ]] && depends+=('jemalloc') +[[ $_malloc = 'tcmalloc' ]] && depends+=('gperftools') + +# https://gitweb.torproject.org/tor.git/tag/?h=tor-0.4.7.3-alpha +source=("git+https://git.torproject.org/tor.git#branch=${_branch:-main}" + {nodes,bridge,transparent_proxy,isolation}.conf + 'torrc' 'tor.logrotate' 'tor.tmpfiles' 'tor.sysusers') + +pkgver () { + cd tor + git describe --long --tags --abbrev=7 "origin/${_branch:-main}" \ + |sed -e 's/tor.//g;s/\([^-]*-g\)/r\1/;s/-/./g' +} + +prepare() { + cd tor + ./autogen.sh +} + +build() { + cd tor + + ./configure \ + --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ + --disable-html-manual \ + --disable-systemd \ + --disable-zstd \ + --enable-lzma \ + --enable-xz \ + --enable-pic \ + --with-malloc="${_malloc:-system}" #\ + #--disable-module-relay \ + #--disable-unittests + make +} + +check() { + cd tor + make check ||true +} + +package() { + cd tor + make DESTDIR="$pkgdir" install + + rm -f "$pkgdir/etc/tor/tor-tsocks.conf" + rm -f "$pkgdir/usr/bin/torify" + + install -dm755 "$pkgdir/etc/tor" + install -dm750 "$pkgdir/etc/tor/torrc.d" + + install -Dm640 "$srcdir/torrc" "$pkgdir/etc/tor/torrc" + install -Dm640 "$srcdir/nodes.conf" "$pkgdir/etc/tor/torrc.d/nodes.conf" + install -Dm640 "$srcdir/bridge.conf" "$pkgdir/etc/tor/torrc.d/bridge.conf" + install -Dm640 "$srcdir/isolation.conf" "$pkgdir/etc/tor/torrc.d/isolation.conf" + install -Dm640 "$srcdir/transparent_proxy.conf" "$pkgdir/etc/tor/torrc.d/transparent_proxy.conf" + + install -Dm644 "$srcdir/tor.logrotate" "$pkgdir/etc/logrotate.d/tor" + install -Dm644 "$srcdir/tor.tmpfiles" "$pkgdir/usr/lib/tmpfiles.d/tor.conf" + install -Dm644 "$srcdir/tor.sysusers" "$pkgdir/usr/lib/sysusers.d/tor.conf" + install -Dm644 LICENSE "$pkgdir/usr/share/licenses/tor-git/LICENSE" +} + +#---- license gpg-key sha256sums ---- + +license=('BSD') + +sha256sums=(SKIP a + 60c77f74f795739cd44899add8916f842fed1d692f2789f1a11e8241ee6ed950 # nodes.conf + eab04421822cce29a3c5065b707b0033fdab6dedd140a49ea902daf36bb767e0 # bridge.conf + b6d5027754831bb4230c748affa245e5e7ee4f801214bca19ea6418cb84fd417 # transparent_proxy.conf + 9156f0d768119e7c8390be625cc591af90304198ad5dc5b0b4a036e7cc92fa07 # isolation.conf + 1f32a363443437a08d133494732008b98a9dc520173a97d53ce832edfb923f7b # torrc + 5756d919fb7a9c7063fb6311b8056c6695576ed12658098325aef7758824c960 # tor.logrotate + 06c00318d84ead3f939b267c7ae9e4cc1cd90c534d0b57ddd2595fee9065ee7f # tor.tmpfiles + 632cd25223ac163aed2a848784108d5310e641e1eb839375813c7c406ecee9d0) # tor.sysusers diff --git a/tor-alpha/bridge.conf b/tor-alpha/bridge.conf new file mode 100644 index 0000000..7b7a383 --- /dev/null +++ b/tor-alpha/bridge.conf @@ -0,0 +1,20 @@ +## When set, Tor will fetch descriptors for each bridge listed in the Bridge +## config lines, and use these relays as both entry guards and directory guards. +#UseBridges 1 + +## When set (along with UseBridges), Tor will try to fetch bridge descriptors +## from the configured bridge authorities when feasible. It will fall back to +## a direct request if the authority responds with a 404. +#UpdateBridgesFromAuthority 1 + +## ClientTransportPlugin transport exec path-to-binary [options] +#ClientTransportPlugin obfs4 exec /usr/bin/obfs4proxy -enableLogging -logLevel WARN +#ClientTransportPlugin meek exec /usr/bin/meek-client --log /var/lib/tor/pt_state/meek-client.log + +## Bridge [transport] IP:ORPort [fingerprint] +## https://gitweb.torproject.org/builders/tor-browser-bundle.git/plain/Bundle-Data/PTConfigs/bridge_prefs.js +#Bridge obfs4 154.35.22.10:15937 8FB9F4319E89E5C6223052AA525A192AFBC85D55 cert=GGGS1TX4R81m3r0HBl79wKy1OtPPNR2CZUIrHjkRg65Vc2VR8fOyo64f9kmT1UAFG7j0HQ iat-mode=0 +#Bridge obfs4 192.99.11.54:443 7B126FAB960E5AC6A629C729434FF84FB5074EC2 cert=VW5f8+IBUWpPFxF+rsiVy2wXkyTQG7vEd+rHeN2jV5LIDNu8wMNEOqZXPwHdwMVEBdqXEw iat-mode=0 +#Bridge meek 0.0.2.0:2 B9E7141C594AF25699E0079C1F0146F409495296 url=https://d2cly7j4zqgua7.cloudfront.net/ front=a0.awsstatic.com +#Bridge meek 0.0.2.0:3 97700DFE9F483596DDA6264C4D7DF7641E1E39CE url=https://meek.azureedge.net/ front=ajax.aspnetcdn.com + diff --git a/tor-alpha/clean b/tor-alpha/clean new file mode 100644 index 0000000..f074c9b --- /dev/null +++ b/tor-alpha/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,tor} diff --git a/tor-alpha/deps b/tor-alpha/deps new file mode 100644 index 0000000..832a438 --- /dev/null +++ b/tor-alpha/deps @@ -0,0 +1,6 @@ +git +libevent +asciidoc +python +automake +autoconf diff --git a/tor-alpha/isolation.conf b/tor-alpha/isolation.conf new file mode 100644 index 0000000..ef467ce --- /dev/null +++ b/tor-alpha/isolation.conf @@ -0,0 +1,12 @@ +## Stream isolation provides an easy way to separate different Tor circuits +## and make different applications use isolated streams. + +## Dont share circuits with streams targeting a different destination address +#SocksPort 127.0.0.1:9150 IsolateDestAddr + +## If a host has both an IPv4 and an IPv6 address, prefer to connect to it via IPv6 +#SocksPort 127.0.0.1:9151 PreferIPv6 NoIPv4Traffic + +## Only connect to .onion addresses in response to SOCKS5 requests on this connection +#SocksPort 127.0.0.1:9152 OnionTrafficOnly + diff --git a/tor-alpha/nodes.conf b/tor-alpha/nodes.conf new file mode 100644 index 0000000..7e67454 --- /dev/null +++ b/tor-alpha/nodes.conf @@ -0,0 +1,278 @@ +## If StrictNodes is set to 1, Tor will treat the ExcludeNodes option as a +## requirement to follow for all the circuits you generate, even if doing so +## will break functionality for you. +StrictNodes 1 + +## A list of identity fingerprints, country codes, and address patterns of nodes to never use when +## picking an exit node, that is, a node that delivers traffic for you outside the Tor network. +## Note that any node listed in ExcludeNodes is automatically considered to be part of this list too. +## BAD NODES - http://xqz3u5drneuzhaeo.onion/users/badtornodes +## The following list provides information about relays that have been checked +## for injecting content over HTTP-connections. +ExcludeNodes , d5e2ca4b22809379b36028da5b7cb453671e5b6, eb6c2094c4ac42d3fbd1cba25fc3b4196e2ff83, , c8bb2a38d99283c4acefb1ad4f52a23413787d6, c18ee0cb68a259ba6ce0001f2f7b8180a875a6d, bbde163dc80f5f5e666698ab4b97900dcff929, , d84518804ab4b032531b2647603fe1c5e569c26, d9a667f3d44f2a3296800bdd310c3747dc8f465, cc33499fd55920a804c66bbaa05669d43117, c064e59aaafeadd2ace80d705183c4f2758a, f04a0861b913bfcac1eabac74a1f47bdf41f3a, f9803d6ade967718912622ac876feef1088cfaa, a60f89789d44a16a88596598fbc8f5e177b, zshd4f72f90e50b6f5967c4c7267354b22fa48ea86, , , fa9d6e9a27024f6e733a6196d33cc8425d1c9, , ea281de61d5b289f580af52dde9a42cdae36, c7c819f808ac125c69e1d981f350dcba44da8b5, bdc6486420efd442c985d8d3c074988bfe544b, be706e24143ab6b3b86dbf7cd4fde1e0c4caf1, bd078eec737137585eccb5bcea6424b, ff73b8fbfbf2ccb52a8e46a515418f97a69c812, cbe5df362142d06de73b102e054442cfe627c9, , be6d0789a234bc4c1866b809d8062d22ee38cf, e6ee731a0dec6c65bb4bfb8dd2be461b6e58144, cb53ff756483b738e7b0b39ada3453b5259a1f3, b6576a668f861f9f41fdf8da7795c8bb86d5, , , , caa0aff0a8236fa7f83f392c11b76cf7eeaac60, be14cb5c22a236163c3e97409d6fd607356, b777f2c879c76fc529d1ec63508aad0e1759e79, c4c4e1741ca61ad4f09cc9eae8abe1fd92f08b + +## A list of identity fingerprints and country codes of nodes to use for the +## first hop in your normal circuits. +## Normal circuits include all circuits except for direct connections to directory servers. +## The Bridge option overrides this option; if you have configured bridges and UseBridges +## is 1, the Bridges are used as your entry nodes. +#EntryNodes + +## A list of identity fingerprints, country codes, and address patterns of nodes to +## use as exit node, that is a node that delivers traffic for you outside the Tor network. +#ExitNodes + +## https://wikipedia.org/wiki/Five_Eyes +#ExcludeExitNodes {au}, {ca}, {gb}, {nz}, {us} +#NodeFamily {au}, {ca}, {gb}, {nz}, {us} +#PathsNeededToBuildCircuits 0.95 + + +# Country Abbrev +# ASCENSION ISLAND {ac} +# AFGHANISTAN {af} +# ALAND {ax} +# ALBANIA {al} +# ALGERIA {dz} +# ANDORRA {ad} +# ANGOLA {ao} +# ANGUILLA {ai} +# ANTARCTICA {aq} +# ANTIGUA AND BARBUDA {ag} +# ARGENTINA REPUBLIC {ar} +# ARMENIA {am} +# ARUBA {aw} +# AUSTRALIA {au} +# AUSTRIA {at} +# AZERBAIJAN {az} +# BAHAMAS {bs} +# BAHRAIN {bh} +# BANGLADESH {bd} +# BARBADOS {bb} +# BELARUS {by} +# BELGIUM {be} +# BELIZE {bz} +# BENIN {bj} +# BERMUDA {bm} +# BHUTAN {bt} +# BOLIVIA {bo} +# BOSNIA AND HERZEGOVINA {ba} +# BOTSWANA {bw} +# BOUVET ISLAND {bv} +# BRAZIL {br} +# BRITISH INDIAN OCEAN TERR {io} +# BRITISH VIRGIN ISLANDS {vg} +# BRUNEI DARUSSALAM {bn} +# BULGARIA {bg} +# BURKINA FASO {bf} +# BURUNDI {bi} +# CAMBODIA {kh} +# CAMEROON {cm} +# CANADA {ca} +# CAPE VERDE {cv} +# CAYMAN ISLANDS {ky} +# CENTRAL AFRICAN REPUBLIC {cf} +# CHAD {td} +# CHILE {cl} +# PEOPLE'S REPUBLIC OF CHINA {cn} +# CHRISTMAS ISLANDS {cx} +# COCOS ISLANDS {cc} +# COLOMBIA {co} +# COMORAS {km} +# CONGO {cg} +# CONGO (DEMOCRATIC REPUBLIC) {cd} +# COOK ISLANDS {ck} +# COSTA RICA {cr} +# COTE D IVOIRE {ci} +# CROATIA {hr} +# CUBA {cu} +# CYPRUS {cy} +# CZECH REPUBLIC {cz} +# DENMARK {dk} +# DJIBOUTI {dj} +# DOMINICA {dm} +# DOMINICAN REPUBLIC {do} +# EAST TIMOR {tp} +# ECUADOR {ec} +# EGYPT {eg} +# EL SALVADOR {sv} +# EQUATORIAL GUINEA {gq} +# ESTONIA {ee} +# ETHIOPIA {et} +# FALKLAND ISLANDS {fk} +# FAROE ISLANDS {fo} +# FIJI {fj} +# FINLAND {fi} +# FRANCE {fr} +# FRANCE METROPOLITAN {fx} +# FRENCH GUIANA {gf} +# FRENCH POLYNESIA {pf} +# FRENCH SOUTHERN TERRITORIES {tf} +# GABON {ga} +# GAMBIA {gm} +# GEORGIA {ge} +# GERMANY {de} +# GHANA {gh} +# GIBRALTER {gi} +# GREECE {gr} +# GREENLAND {gl} +# GRENADA {gd} +# GUADELOUPE {gp} +# GUAM {gu} +# GUATEMALA {gt} +# GUINEA {gn} +# GUINEA-BISSAU {gw} +# GUYANA {gy} +# HAITI {ht} +# HEARD & MCDONALD ISLAND {hm} +# HONDURAS {hn} +# HONG KONG {hk} +# HUNGARY {hu} +# ICELAND {is} +# INDIA {in} +# INDONESIA {id} +# IRAN, ISLAMIC REPUBLIC OF {ir} +# IRAQ {iq} +# IRELAND {ie} +# ISLE OF MAN {im} +# ISRAEL {il} +# ITALY {it} +# JAMAICA {jm} +# JAPAN {jp} +# JORDAN {jo} +# KAZAKHSTAN {kz} +# KENYA {ke} +# KIRIBATI {ki} +# KOREA, DEM. PEOPLES REP OF {kp} +# KOREA, REPUBLIC OF {kr} +# KUWAIT {kw} +# KYRGYZSTAN {kg} +# LAO PEOPLE'S DEM. REPUBLIC {la} +# LATVIA {lv} +# LEBANON {lb} +# LESOTHO {ls} +# LIBERIA {lr} +# LIBYAN ARAB JAMAHIRIYA {ly} +# LIECHTENSTEIN {li} +# LITHUANIA {lt} +# LUXEMBOURG {lu} +# MACAO {mo} +# MACEDONIA {mk} +# MADAGASCAR {mg} +# MALAWI {mw} +# MALAYSIA {my} +# MALDIVES {mv} +# MALI {ml} +# MALTA {mt} +# MARSHALL ISLANDS {mh} +# MARTINIQUE {mq} +# MAURITANIA {mr} +# MAURITIUS {mu} +# MAYOTTE {yt} +# MEXICO {mx} +# MICRONESIA {fm} +# MOLDAVA REPUBLIC OF {md} +# MONACO {mc} +# MONGOLIA {mn} +# MONTENEGRO {me} +# MONTSERRAT {ms} +# MOROCCO {ma} +# MOZAMBIQUE {mz} +# MYANMAR {mm} +# NAMIBIA {na} +# NAURU {nr} +# NEPAL {np} +# NETHERLANDS ANTILLES {an} +# NETHERLANDS, THE {nl} +# NEW CALEDONIA {nc} +# NEW ZEALAND {nz} +# NICARAGUA {ni} +# NIGER {ne} +# NIGERIA {ng} +# NIUE {nu} +# NORFOLK ISLAND {nf} +# NORTHERN MARIANA ISLANDS {mp} +# NORWAY {no} +# OMAN {om} +# PAKISTAN {pk} +# PALAU {pw} +# PALESTINE {ps} +# PANAMA {pa} +# PAPUA NEW GUINEA {pg} +# PARAGUAY {py} +# PERU {pe} +# PHILIPPINES (REPUBLIC OF THE) {ph} +# PITCAIRN {pn} +# POLAND {pl} +# PORTUGAL {pt} +# PUERTO RICO {pr} +# QATAR {qa} +# REUNION {re} +# ROMANIA {ro} +# RUSSIAN FEDERATION {ru} +# RWANDA {rw} +# SAMOA {ws} +# SAN MARINO {sm} +# SAO TOME/PRINCIPE {st} +# SAUDI ARABIA {sa} +# SCOTLAND {uk} +# SENEGAL {sn} +# SERBIA {rs} +# SEYCHELLES {sc} +# SIERRA LEONE {sl} +# SINGAPORE {sg} +# SLOVAKIA {sk} +# SLOVENIA {si} +# SOLOMON ISLANDS {sb} +# SOMALIA {so} +# SOMOA,GILBERT,ELLICE ISLANDS {as} +# SOUTH AFRICA {za} +# SOUTH GEORGIA, SOUTH SANDWICH ISLANDS {gs} +# SOVIET UNION {su} +# SPAIN {es} +# SRI LANKA {lk} +# ST. HELENA {sh} +# ST. KITTS AND NEVIS {kn} +# ST. LUCIA {lc} +# ST. PIERRE AND MIQUELON {pm} +# ST. VINCENT & THE GRENADINES {vc} +# SUDAN {sd} +# SURINAME {sr} +# SVALBARD AND JAN MAYEN {sj} +# SWAZILAND {sz} +# SWEDEN {se} +# SWITZERLAND {ch} +# SYRIAN ARAB REPUBLIC {sy} +# TAIWAN {tw} +# TAJIKISTAN {tj} +# TANZANIA, UNITED REPUBLIC OF {tz} +# THAILAND {th} +# TOGO {tg} +# TOKELAU {tk} +# TONGA {to} +# TRINIDAD AND TOBAGO {tt} +# TUNISIA {tn} +# TURKEY {tr} +# TURKMENISTAN {tm} +# TURKS AND CALCOS ISLANDS {tc} +# TUVALU {tv} +# UGANDA {ug} +# UKRAINE {ua} +# UNITED ARAB EMIRATES {ae} +# UNITED KINGDOM (no new registrations) {gb} +# UNITED KINGDOM {uk} +# UNITED STATES {us} +# UNITED STATES MINOR OUTL.IS. {um} +# URUGUAY {uy} +# UZBEKISTAN {uz} +# VANUATU {vu} +# VATICAN CITY STATE {va} +# VENEZUELA {ve} +# VIET NAM {vn} +# VIRGIN ISLANDS (USA) {vi} +# WALLIS AND FUTUNA ISLANDS {wf} +# WESTERN SAHARA {eh} +# YEMEN {ye} +# ZAMBIA {zm} +# ZIMBABWE {zw} + diff --git a/tor-alpha/sums b/tor-alpha/sums new file mode 100644 index 0000000..9209177 --- /dev/null +++ b/tor-alpha/sums @@ -0,0 +1,8 @@ +nodes.conf +bridge.conf +transparent_proxy.conf +isolation.conf +torrc +tor.logrotate +tor.tmpfiles +tor.sysusers diff --git a/tor-alpha/time b/tor-alpha/time new file mode 100644 index 0000000..e44cf11 --- /dev/null +++ b/tor-alpha/time @@ -0,0 +1,3 @@ +real 3m26.294s +user 9m29.458s +sys 0m24.324s diff --git a/tor-alpha/tor.logrotate b/tor-alpha/tor.logrotate new file mode 100644 index 0000000..5cbf5ee --- /dev/null +++ b/tor-alpha/tor.logrotate @@ -0,0 +1,12 @@ +/var/log/tor/*.log { + daily + rotate 5 + compress + delaycompress + missingok + notifempty + create 0640 tor tor + sharedscripts + postrotate + endscript +} diff --git a/tor-alpha/tor.sysusers b/tor-alpha/tor.sysusers new file mode 100644 index 0000000..b952a79 --- /dev/null +++ b/tor-alpha/tor.sysusers @@ -0,0 +1,2 @@ +u tor 43 TOR Network Daemon /var/lib/tor + diff --git a/tor-alpha/tor.tmpfiles b/tor-alpha/tor.tmpfiles new file mode 100644 index 0000000..6fbd391 --- /dev/null +++ b/tor-alpha/tor.tmpfiles @@ -0,0 +1,3 @@ +d /var/lib/tor 0700 tor tor - - +d /var/log/tor 0700 tor tor - - +d /etc/tor 0700 tor tor - - diff --git a/tor-alpha/torrc b/tor-alpha/torrc new file mode 100644 index 0000000..f4ec826 --- /dev/null +++ b/tor-alpha/torrc @@ -0,0 +1,267 @@ +## Configuration file for a typical Tor user +## Last updated 28 February 2019 for Tor 0.3.5.1-alpha. +## (may or may not work for much older or much newer versions of Tor.) +## +## Lines that begin with "## " try to explain what's going on. Lines +## that begin with just "#" are disabled commands: you can enable them +## by removing the "#" symbol. +## +## See 'man tor', or https://www.torproject.org/docs/tor-manual.html, +## for more options you can use in this file. +## +## Tor will look for this file in various places based on your platform: +## https://www.torproject.org/docs/faq#torrc + +## Tor opens a SOCKS proxy on port 9050 by default -- even if you don't +## configure one below. Set "SOCKSPort 0" if you plan to run Tor only +## as a relay, and not make any local application connections yourself. +SOCKSPort 9050 # Default: Bind to localhost:9050 for local connections. +#SOCKSPort 192.168.0.1:9100 # Bind to this address:port too. + +## Entry policies to allow/deny SOCKS requests based on IP address. +## First entry that matches wins. If no SOCKSPolicy is set, we accept +## all (and only) requests that reach a SOCKSPort. Untrusted users who +## can access your SOCKSPort may be able to learn about the connections +## you make. +#SOCKSPolicy accept 192.168.0.0/16 +#SOCKSPolicy accept6 FC00::/7 +#SOCKSPolicy reject * + +## Logs go to stdout at level "notice" unless redirected by something +## else, like one of the below lines. You can have as many Log lines as +## you want. +## +## We advise using "notice" in most cases, since anything more verbose +## may provide sensitive information to an attacker who obtains the logs. +## +## Send all messages of level 'notice' or higher to /var/log/tor/notices.log +#Log notice file /var/log/tor/notices.log +## Send every possible message to /var/log/tor/debug.log +#Log debug file /var/log/tor/debug.log +## Use the system log instead of Tor's logfiles +#Log notice syslog +## To send all messages to stderr: +#Log debug stderr + +## Uncomment this to start the process in the background... or use +## --runasdaemon 1 on the command line. This is ignored on Windows; +## see the FAQ entry if you want Tor to run as an NT service. +#RunAsDaemon 1 + +## Default username and group the server will run as +User tor + +## The directory for keeping all the keys/etc. By default, we store +## things in $HOME/.tor on Unix, and in Application Data\tor on Windows. +DataDirectory /var/lib/tor + +## The port on which Tor will listen for local connections from Tor +## controller applications, as documented in control-spec.txt. +#ControlPort 9051 +## If you enable the controlport, be sure to enable one of these +## authentication methods, to prevent attackers from accessing it. +#HashedControlPassword 16:872860B76453A77D60CA2BB8C1A7042072093276A3D701AD684053EC4C +#CookieAuthentication 1 + +############### This section is just for location-hidden services ### + +## Once you have configured a hidden service, you can look at the +## contents of the file ".../hidden_service/hostname" for the address +## to tell people. +## +## HiddenServicePort x y:z says to redirect requests on port x to the +## address y:z. + +#HiddenServiceDir /var/lib/tor/hidden_service/ +#HiddenServicePort 80 127.0.0.1:80 + +#HiddenServiceDir /var/lib/tor/other_hidden_service/ +#HiddenServicePort 80 127.0.0.1:80 +#HiddenServicePort 22 127.0.0.1:22 + +################ This section is just for relays ##################### +# +## See https://www.torproject.org/docs/tor-doc-relay for details. + +## Required: what port to advertise for incoming Tor connections. +#ORPort 9001 +## If you want to listen on a port other than the one advertised in +## ORPort (e.g. to advertise 443 but bind to 9090), you can do it as +## follows. You'll need to do ipchains or other port forwarding +## yourself to make this work. +#ORPort 443 NoListen +#ORPort 127.0.0.1:9090 NoAdvertise +## If you want to listen on IPv6 your numeric address must be explicitly +## between square brackets as follows. You must also listen on IPv4. +#ORPort [2001:DB8::1]:9050 + +## The IP address or full DNS name for incoming connections to your +## relay. Leave commented out and Tor will guess. +#Address noname.example.com + +## If you have multiple network interfaces, you can specify one for +## outgoing traffic to use. +## OutboundBindAddressExit will be used for all exit traffic, while +## OutboundBindAddressOR will be used for all OR and Dir connections +## (DNS connections ignore OutboundBindAddress). +## If you do not wish to differentiate, use OutboundBindAddress to +## specify the same address for both in a single line. +#OutboundBindAddressExit 10.0.0.4 +#OutboundBindAddressOR 10.0.0.5 + +## A handle for your relay, so people don't have to refer to it by key. +## Nicknames must be between 1 and 19 characters inclusive, and must +## contain only the characters [a-zA-Z0-9]. +## If not set, "Unnamed" will be used. +#Nickname ididnteditheconfig + +## Define these to limit how much relayed traffic you will allow. Your +## own traffic is still unthrottled. Note that RelayBandwidthRate must +## be at least 75 kilobytes per second. +## Note that units for these config options are bytes (per second), not +## bits (per second), and that prefixes are binary prefixes, i.e. 2^10, +## 2^20, etc. +#RelayBandwidthRate 100 KBytes # Throttle traffic to 100KB/s (800Kbps) +#RelayBandwidthBurst 200 KBytes # But allow bursts up to 200KB (1600Kb) + +## Use these to restrict the maximum traffic per day, week, or month. +## Note that this threshold applies separately to sent and received bytes, +## not to their sum: setting "40 GB" may allow up to 80 GB total before +## hibernating. +## +## Set a maximum of 40 gigabytes each way per period. +#AccountingMax 40 GBytes +## Each period starts daily at midnight (AccountingMax is per day) +#AccountingStart day 00:00 +## Each period starts on the 3rd of the month at 15:00 (AccountingMax +## is per month) +#AccountingStart month 3 15:00 + +## Administrative contact information for this relay or bridge. This line +## can be used to contact you if your relay or bridge is misconfigured or +## something else goes wrong. Note that we archive and publish all +## descriptors containing these lines and that Google indexes them, so +## spammers might also collect them. You may want to obscure the fact that +## it's an email address and/or generate a new address for this purpose. +## +## If you are running multiple relays, you MUST set this option. +## +#ContactInfo Random Person +## You might also include your PGP or GPG fingerprint if you have one: +#ContactInfo 0xFFFFFFFF Random Person + +## Uncomment this to mirror directory information for others. Please do +## if you have enough bandwidth. +#DirPort 9030 # what port to advertise for directory connections +## If you want to listen on a port other than the one advertised in +## DirPort (e.g. to advertise 80 but bind to 9091), you can do it as +## follows. below too. You'll need to do ipchains or other port +## forwarding yourself to make this work. +#DirPort 80 NoListen +#DirPort 127.0.0.1:9091 NoAdvertise +## Uncomment to return an arbitrary blob of html on your DirPort. Now you +## can explain what Tor is if anybody wonders why your IP address is +## contacting them. See contrib/tor-exit-notice.html in Tor's source +## distribution for a sample. +#DirPortFrontPage /etc/tor/tor-exit-notice.html + +## Uncomment this if you run more than one Tor relay, and add the identity +## key fingerprint of each Tor relay you control, even if they're on +## different networks. You declare it here so Tor clients can avoid +## using more than one of your relays in a single circuit. See +## https://www.torproject.org/docs/faq#MultipleRelays +## However, you should never include a bridge's fingerprint here, as it would +## break its concealability and potentially reveal its IP/TCP address. +## +## If you are running multiple relays, you MUST set this option. +## +## Note: do not use MyFamily on bridge relays. +#MyFamily $keyid,$keyid,... + +## Uncomment this if you want your relay to be an exit, with the default +## exit policy (or whatever exit policy you set below). +## (If ReducedExitPolicy, ExitPolicy, or IPv6Exit are set, relays are exits. +## If none of these options are set, relays are non-exits.) +#ExitRelay 1 + +## Uncomment this if you want your relay to allow IPv6 exit traffic. +## (Relays do not allow any exit traffic by default.) +#IPv6Exit 1 + +## Uncomment this if you want your relay to be an exit, with a reduced set +## of exit ports. +#ReducedExitPolicy 1 + +## Uncomment these lines if you want your relay to be an exit, with the +## specified set of exit IPs and ports. +## +## A comma-separated list of exit policies. They're considered first +## to last, and the first match wins. +## +## If you want to allow the same ports on IPv4 and IPv6, write your rules +## using accept/reject *. If you want to allow different ports on IPv4 and +## IPv6, write your IPv6 rules using accept6/reject6 *6, and your IPv4 rules +## using accept/reject *4. +## +## If you want to _replace_ the default exit policy, end this with either a +## reject *:* or an accept *:*. Otherwise, you're _augmenting_ (prepending to) +## the default exit policy. Leave commented to just use the default, which is +## described in the man page or at +## https://www.torproject.org/documentation.html +## +## Look at https://www.torproject.org/faq-abuse.html#TypicalAbuses +## for issues you might encounter if you use the default exit policy. +## +## If certain IPs and ports are blocked externally, e.g. by your firewall, +## you should update your exit policy to reflect this -- otherwise Tor +## users will be told that those destinations are down. +## +## For security, by default Tor rejects connections to private (local) +## networks, including to the configured primary public IPv4 and IPv6 addresses, +## and any public IPv4 and IPv6 addresses on any interface on the relay. +## See the man page entry for ExitPolicyRejectPrivate if you want to allow +## "exit enclaving". +## +#ExitPolicy accept *:6660-6667,reject *:* # allow irc ports on IPv4 and IPv6 but no more +#ExitPolicy accept *:119 # accept nntp ports on IPv4 and IPv6 as well as default exit policy +#ExitPolicy accept *4:119 # accept nntp ports on IPv4 only as well as default exit policy +#ExitPolicy accept6 *6:119 # accept nntp ports on IPv6 only as well as default exit policy +#ExitPolicy reject *:* # no exits allowed + +## Bridge relays (or "bridges") are Tor relays that aren't listed in the +## main directory. Since there is no complete public list of them, even an +## ISP that filters connections to all the known Tor relays probably +## won't be able to block all the bridges. Also, websites won't treat you +## differently because they won't know you're running Tor. If you can +## be a real relay, please do; but if not, be a bridge! +## +## Warning: when running your Tor as a bridge, make sure than MyFamily is +## NOT configured. +#BridgeRelay 1 +## By default, Tor will advertise your bridge to users through various +## mechanisms like https://bridges.torproject.org/. If you want to run +## a private bridge, for example because you'll give out your bridge +## address manually to your friends, uncomment this line: +#BridgeDistribution none + +## If non-zero, try to write to disk less frequently than we would otherwise. +## This is useful when running on flash memory or other media that support +## only a limited number of writes. +AvoidDiskWrites 1 + +## Try to use built-in (static) crypto hardware acceleration when available. +HardwareAccel 1 + +## If set to 1, Tor will attempt to lock all current and future memory pages, +## so that memory cannot be paged out. +DisableAllSwap 1 + +## Configuration options can be imported from files or folders using the %include +## option with the value being a path. This path can have wildcards. Wildcards are +## expanded first, using lexical order. Then, for each matching file or folder, the following +## rules are followed: if the path is a file, the options from the file will be parsed as if +## they were written where the %include option is. If the path is a folder, all files on that +## folder will be parsed following lexical order. Files starting with a dot are ignored. Files +## on subfolders are ignored. +## The %include option can be used recursively. +%include /etc/tor/torrc.d/*.conf diff --git a/tor-alpha/torrc.aur b/tor-alpha/torrc.aur new file mode 100644 index 0000000..f4ec826 --- /dev/null +++ b/tor-alpha/torrc.aur @@ -0,0 +1,267 @@ +## Configuration file for a typical Tor user +## Last updated 28 February 2019 for Tor 0.3.5.1-alpha. +## (may or may not work for much older or much newer versions of Tor.) +## +## Lines that begin with "## " try to explain what's going on. Lines +## that begin with just "#" are disabled commands: you can enable them +## by removing the "#" symbol. +## +## See 'man tor', or https://www.torproject.org/docs/tor-manual.html, +## for more options you can use in this file. +## +## Tor will look for this file in various places based on your platform: +## https://www.torproject.org/docs/faq#torrc + +## Tor opens a SOCKS proxy on port 9050 by default -- even if you don't +## configure one below. Set "SOCKSPort 0" if you plan to run Tor only +## as a relay, and not make any local application connections yourself. +SOCKSPort 9050 # Default: Bind to localhost:9050 for local connections. +#SOCKSPort 192.168.0.1:9100 # Bind to this address:port too. + +## Entry policies to allow/deny SOCKS requests based on IP address. +## First entry that matches wins. If no SOCKSPolicy is set, we accept +## all (and only) requests that reach a SOCKSPort. Untrusted users who +## can access your SOCKSPort may be able to learn about the connections +## you make. +#SOCKSPolicy accept 192.168.0.0/16 +#SOCKSPolicy accept6 FC00::/7 +#SOCKSPolicy reject * + +## Logs go to stdout at level "notice" unless redirected by something +## else, like one of the below lines. You can have as many Log lines as +## you want. +## +## We advise using "notice" in most cases, since anything more verbose +## may provide sensitive information to an attacker who obtains the logs. +## +## Send all messages of level 'notice' or higher to /var/log/tor/notices.log +#Log notice file /var/log/tor/notices.log +## Send every possible message to /var/log/tor/debug.log +#Log debug file /var/log/tor/debug.log +## Use the system log instead of Tor's logfiles +#Log notice syslog +## To send all messages to stderr: +#Log debug stderr + +## Uncomment this to start the process in the background... or use +## --runasdaemon 1 on the command line. This is ignored on Windows; +## see the FAQ entry if you want Tor to run as an NT service. +#RunAsDaemon 1 + +## Default username and group the server will run as +User tor + +## The directory for keeping all the keys/etc. By default, we store +## things in $HOME/.tor on Unix, and in Application Data\tor on Windows. +DataDirectory /var/lib/tor + +## The port on which Tor will listen for local connections from Tor +## controller applications, as documented in control-spec.txt. +#ControlPort 9051 +## If you enable the controlport, be sure to enable one of these +## authentication methods, to prevent attackers from accessing it. +#HashedControlPassword 16:872860B76453A77D60CA2BB8C1A7042072093276A3D701AD684053EC4C +#CookieAuthentication 1 + +############### This section is just for location-hidden services ### + +## Once you have configured a hidden service, you can look at the +## contents of the file ".../hidden_service/hostname" for the address +## to tell people. +## +## HiddenServicePort x y:z says to redirect requests on port x to the +## address y:z. + +#HiddenServiceDir /var/lib/tor/hidden_service/ +#HiddenServicePort 80 127.0.0.1:80 + +#HiddenServiceDir /var/lib/tor/other_hidden_service/ +#HiddenServicePort 80 127.0.0.1:80 +#HiddenServicePort 22 127.0.0.1:22 + +################ This section is just for relays ##################### +# +## See https://www.torproject.org/docs/tor-doc-relay for details. + +## Required: what port to advertise for incoming Tor connections. +#ORPort 9001 +## If you want to listen on a port other than the one advertised in +## ORPort (e.g. to advertise 443 but bind to 9090), you can do it as +## follows. You'll need to do ipchains or other port forwarding +## yourself to make this work. +#ORPort 443 NoListen +#ORPort 127.0.0.1:9090 NoAdvertise +## If you want to listen on IPv6 your numeric address must be explicitly +## between square brackets as follows. You must also listen on IPv4. +#ORPort [2001:DB8::1]:9050 + +## The IP address or full DNS name for incoming connections to your +## relay. Leave commented out and Tor will guess. +#Address noname.example.com + +## If you have multiple network interfaces, you can specify one for +## outgoing traffic to use. +## OutboundBindAddressExit will be used for all exit traffic, while +## OutboundBindAddressOR will be used for all OR and Dir connections +## (DNS connections ignore OutboundBindAddress). +## If you do not wish to differentiate, use OutboundBindAddress to +## specify the same address for both in a single line. +#OutboundBindAddressExit 10.0.0.4 +#OutboundBindAddressOR 10.0.0.5 + +## A handle for your relay, so people don't have to refer to it by key. +## Nicknames must be between 1 and 19 characters inclusive, and must +## contain only the characters [a-zA-Z0-9]. +## If not set, "Unnamed" will be used. +#Nickname ididnteditheconfig + +## Define these to limit how much relayed traffic you will allow. Your +## own traffic is still unthrottled. Note that RelayBandwidthRate must +## be at least 75 kilobytes per second. +## Note that units for these config options are bytes (per second), not +## bits (per second), and that prefixes are binary prefixes, i.e. 2^10, +## 2^20, etc. +#RelayBandwidthRate 100 KBytes # Throttle traffic to 100KB/s (800Kbps) +#RelayBandwidthBurst 200 KBytes # But allow bursts up to 200KB (1600Kb) + +## Use these to restrict the maximum traffic per day, week, or month. +## Note that this threshold applies separately to sent and received bytes, +## not to their sum: setting "40 GB" may allow up to 80 GB total before +## hibernating. +## +## Set a maximum of 40 gigabytes each way per period. +#AccountingMax 40 GBytes +## Each period starts daily at midnight (AccountingMax is per day) +#AccountingStart day 00:00 +## Each period starts on the 3rd of the month at 15:00 (AccountingMax +## is per month) +#AccountingStart month 3 15:00 + +## Administrative contact information for this relay or bridge. This line +## can be used to contact you if your relay or bridge is misconfigured or +## something else goes wrong. Note that we archive and publish all +## descriptors containing these lines and that Google indexes them, so +## spammers might also collect them. You may want to obscure the fact that +## it's an email address and/or generate a new address for this purpose. +## +## If you are running multiple relays, you MUST set this option. +## +#ContactInfo Random Person +## You might also include your PGP or GPG fingerprint if you have one: +#ContactInfo 0xFFFFFFFF Random Person + +## Uncomment this to mirror directory information for others. Please do +## if you have enough bandwidth. +#DirPort 9030 # what port to advertise for directory connections +## If you want to listen on a port other than the one advertised in +## DirPort (e.g. to advertise 80 but bind to 9091), you can do it as +## follows. below too. You'll need to do ipchains or other port +## forwarding yourself to make this work. +#DirPort 80 NoListen +#DirPort 127.0.0.1:9091 NoAdvertise +## Uncomment to return an arbitrary blob of html on your DirPort. Now you +## can explain what Tor is if anybody wonders why your IP address is +## contacting them. See contrib/tor-exit-notice.html in Tor's source +## distribution for a sample. +#DirPortFrontPage /etc/tor/tor-exit-notice.html + +## Uncomment this if you run more than one Tor relay, and add the identity +## key fingerprint of each Tor relay you control, even if they're on +## different networks. You declare it here so Tor clients can avoid +## using more than one of your relays in a single circuit. See +## https://www.torproject.org/docs/faq#MultipleRelays +## However, you should never include a bridge's fingerprint here, as it would +## break its concealability and potentially reveal its IP/TCP address. +## +## If you are running multiple relays, you MUST set this option. +## +## Note: do not use MyFamily on bridge relays. +#MyFamily $keyid,$keyid,... + +## Uncomment this if you want your relay to be an exit, with the default +## exit policy (or whatever exit policy you set below). +## (If ReducedExitPolicy, ExitPolicy, or IPv6Exit are set, relays are exits. +## If none of these options are set, relays are non-exits.) +#ExitRelay 1 + +## Uncomment this if you want your relay to allow IPv6 exit traffic. +## (Relays do not allow any exit traffic by default.) +#IPv6Exit 1 + +## Uncomment this if you want your relay to be an exit, with a reduced set +## of exit ports. +#ReducedExitPolicy 1 + +## Uncomment these lines if you want your relay to be an exit, with the +## specified set of exit IPs and ports. +## +## A comma-separated list of exit policies. They're considered first +## to last, and the first match wins. +## +## If you want to allow the same ports on IPv4 and IPv6, write your rules +## using accept/reject *. If you want to allow different ports on IPv4 and +## IPv6, write your IPv6 rules using accept6/reject6 *6, and your IPv4 rules +## using accept/reject *4. +## +## If you want to _replace_ the default exit policy, end this with either a +## reject *:* or an accept *:*. Otherwise, you're _augmenting_ (prepending to) +## the default exit policy. Leave commented to just use the default, which is +## described in the man page or at +## https://www.torproject.org/documentation.html +## +## Look at https://www.torproject.org/faq-abuse.html#TypicalAbuses +## for issues you might encounter if you use the default exit policy. +## +## If certain IPs and ports are blocked externally, e.g. by your firewall, +## you should update your exit policy to reflect this -- otherwise Tor +## users will be told that those destinations are down. +## +## For security, by default Tor rejects connections to private (local) +## networks, including to the configured primary public IPv4 and IPv6 addresses, +## and any public IPv4 and IPv6 addresses on any interface on the relay. +## See the man page entry for ExitPolicyRejectPrivate if you want to allow +## "exit enclaving". +## +#ExitPolicy accept *:6660-6667,reject *:* # allow irc ports on IPv4 and IPv6 but no more +#ExitPolicy accept *:119 # accept nntp ports on IPv4 and IPv6 as well as default exit policy +#ExitPolicy accept *4:119 # accept nntp ports on IPv4 only as well as default exit policy +#ExitPolicy accept6 *6:119 # accept nntp ports on IPv6 only as well as default exit policy +#ExitPolicy reject *:* # no exits allowed + +## Bridge relays (or "bridges") are Tor relays that aren't listed in the +## main directory. Since there is no complete public list of them, even an +## ISP that filters connections to all the known Tor relays probably +## won't be able to block all the bridges. Also, websites won't treat you +## differently because they won't know you're running Tor. If you can +## be a real relay, please do; but if not, be a bridge! +## +## Warning: when running your Tor as a bridge, make sure than MyFamily is +## NOT configured. +#BridgeRelay 1 +## By default, Tor will advertise your bridge to users through various +## mechanisms like https://bridges.torproject.org/. If you want to run +## a private bridge, for example because you'll give out your bridge +## address manually to your friends, uncomment this line: +#BridgeDistribution none + +## If non-zero, try to write to disk less frequently than we would otherwise. +## This is useful when running on flash memory or other media that support +## only a limited number of writes. +AvoidDiskWrites 1 + +## Try to use built-in (static) crypto hardware acceleration when available. +HardwareAccel 1 + +## If set to 1, Tor will attempt to lock all current and future memory pages, +## so that memory cannot be paged out. +DisableAllSwap 1 + +## Configuration options can be imported from files or folders using the %include +## option with the value being a path. This path can have wildcards. Wildcards are +## expanded first, using lexical order. Then, for each matching file or folder, the following +## rules are followed: if the path is a file, the options from the file will be parsed as if +## they were written where the %include option is. If the path is a folder, all files on that +## folder will be parsed following lexical order. Files starting with a dot are ignored. Files +## on subfolders are ignored. +## The %include option can be used recursively. +%include /etc/tor/torrc.d/*.conf diff --git a/tor-alpha/torrc.old b/tor-alpha/torrc.old new file mode 100644 index 0000000..9085186 --- /dev/null +++ b/tor-alpha/torrc.old @@ -0,0 +1,267 @@ +## Configuration file for a typical Tor user +## Last updated 28 February 2019 for Tor 0.3.5.1-alpha. +## (may or may not work for much older or much newer versions of Tor.) +## +## Lines that begin with "## " try to explain what's going on. Lines +## that begin with just "#" are disabled commands: you can enable them +## by removing the "#" symbol. +## +## See 'man tor', or https://www.torproject.org/docs/tor-manual.html, +## for more options you can use in this file. +## +## Tor will look for this file in various places based on your platform: +## https://www.torproject.org/docs/faq#torrc + +## Tor opens a SOCKS proxy on port 9050 by default -- even if you don't +## configure one below. Set "SOCKSPort 0" if you plan to run Tor only +## as a relay, and not make any local application connections yourself. +SOCKSPort 9050 # Default: Bind to localhost:9050 for local connections. +#SOCKSPort 192.168.0.1:9100 # Bind to this address:port too. + +## Entry policies to allow/deny SOCKS requests based on IP address. +## First entry that matches wins. If no SOCKSPolicy is set, we accept +## all (and only) requests that reach a SOCKSPort. Untrusted users who +## can access your SOCKSPort may be able to learn about the connections +## you make. +#SOCKSPolicy accept 192.168.0.0/16 +#SOCKSPolicy accept6 FC00::/7 +#SOCKSPolicy reject * + +## Logs go to stdout at level "notice" unless redirected by something +## else, like one of the below lines. You can have as many Log lines as +## you want. +## +## We advise using "notice" in most cases, since anything more verbose +## may provide sensitive information to an attacker who obtains the logs. +## +## Send all messages of level 'notice' or higher to /var/log/tor/notices.log +#Log notice file /var/log/tor/notices.log +## Send every possible message to /var/log/tor/debug.log +#Log debug file /var/log/tor/debug.log +## Use the system log instead of Tor's logfiles +#Log notice syslog +## To send all messages to stderr: +#Log debug stderr + +## Uncomment this to start the process in the background... or use +## --runasdaemon 1 on the command line. This is ignored on Windows; +## see the FAQ entry if you want Tor to run as an NT service. +#RunAsDaemon 1 + +## Default username and group the server will run as +#User tor + +## The directory for keeping all the keys/etc. By default, we store +## things in $HOME/.tor on Unix, and in Application Data\tor on Windows. +DataDirectory /var/lib/tor + +## The port on which Tor will listen for local connections from Tor +## controller applications, as documented in control-spec.txt. +#ControlPort 9051 +## If you enable the controlport, be sure to enable one of these +## authentication methods, to prevent attackers from accessing it. +#HashedControlPassword 16:872860B76453A77D60CA2BB8C1A7042072093276A3D701AD684053EC4C +#CookieAuthentication 1 + +############### This section is just for location-hidden services ### + +## Once you have configured a hidden service, you can look at the +## contents of the file ".../hidden_service/hostname" for the address +## to tell people. +## +## HiddenServicePort x y:z says to redirect requests on port x to the +## address y:z. + +#HiddenServiceDir /var/lib/tor/hidden_service/ +#HiddenServicePort 80 127.0.0.1:80 + +#HiddenServiceDir /var/lib/tor/other_hidden_service/ +#HiddenServicePort 80 127.0.0.1:80 +#HiddenServicePort 22 127.0.0.1:22 + +################ This section is just for relays ##################### +# +## See https://www.torproject.org/docs/tor-doc-relay for details. + +## Required: what port to advertise for incoming Tor connections. +#ORPort 9001 +## If you want to listen on a port other than the one advertised in +## ORPort (e.g. to advertise 443 but bind to 9090), you can do it as +## follows. You'll need to do ipchains or other port forwarding +## yourself to make this work. +#ORPort 443 NoListen +#ORPort 127.0.0.1:9090 NoAdvertise +## If you want to listen on IPv6 your numeric address must be explicitly +## between square brackets as follows. You must also listen on IPv4. +#ORPort [2001:DB8::1]:9050 + +## The IP address or full DNS name for incoming connections to your +## relay. Leave commented out and Tor will guess. +#Address noname.example.com + +## If you have multiple network interfaces, you can specify one for +## outgoing traffic to use. +## OutboundBindAddressExit will be used for all exit traffic, while +## OutboundBindAddressOR will be used for all OR and Dir connections +## (DNS connections ignore OutboundBindAddress). +## If you do not wish to differentiate, use OutboundBindAddress to +## specify the same address for both in a single line. +#OutboundBindAddressExit 10.0.0.4 +#OutboundBindAddressOR 10.0.0.5 + +## A handle for your relay, so people don't have to refer to it by key. +## Nicknames must be between 1 and 19 characters inclusive, and must +## contain only the characters [a-zA-Z0-9]. +## If not set, "Unnamed" will be used. +#Nickname ididnteditheconfig + +## Define these to limit how much relayed traffic you will allow. Your +## own traffic is still unthrottled. Note that RelayBandwidthRate must +## be at least 75 kilobytes per second. +## Note that units for these config options are bytes (per second), not +## bits (per second), and that prefixes are binary prefixes, i.e. 2^10, +## 2^20, etc. +#RelayBandwidthRate 100 KBytes # Throttle traffic to 100KB/s (800Kbps) +#RelayBandwidthBurst 200 KBytes # But allow bursts up to 200KB (1600Kb) + +## Use these to restrict the maximum traffic per day, week, or month. +## Note that this threshold applies separately to sent and received bytes, +## not to their sum: setting "40 GB" may allow up to 80 GB total before +## hibernating. +## +## Set a maximum of 40 gigabytes each way per period. +#AccountingMax 40 GBytes +## Each period starts daily at midnight (AccountingMax is per day) +#AccountingStart day 00:00 +## Each period starts on the 3rd of the month at 15:00 (AccountingMax +## is per month) +#AccountingStart month 3 15:00 + +## Administrative contact information for this relay or bridge. This line +## can be used to contact you if your relay or bridge is misconfigured or +## something else goes wrong. Note that we archive and publish all +## descriptors containing these lines and that Google indexes them, so +## spammers might also collect them. You may want to obscure the fact that +## it's an email address and/or generate a new address for this purpose. +## +## If you are running multiple relays, you MUST set this option. +## +#ContactInfo Random Person +## You might also include your PGP or GPG fingerprint if you have one: +#ContactInfo 0xFFFFFFFF Random Person + +## Uncomment this to mirror directory information for others. Please do +## if you have enough bandwidth. +#DirPort 9030 # what port to advertise for directory connections +## If you want to listen on a port other than the one advertised in +## DirPort (e.g. to advertise 80 but bind to 9091), you can do it as +## follows. below too. You'll need to do ipchains or other port +## forwarding yourself to make this work. +#DirPort 80 NoListen +#DirPort 127.0.0.1:9091 NoAdvertise +## Uncomment to return an arbitrary blob of html on your DirPort. Now you +## can explain what Tor is if anybody wonders why your IP address is +## contacting them. See contrib/tor-exit-notice.html in Tor's source +## distribution for a sample. +#DirPortFrontPage /etc/tor/tor-exit-notice.html + +## Uncomment this if you run more than one Tor relay, and add the identity +## key fingerprint of each Tor relay you control, even if they're on +## different networks. You declare it here so Tor clients can avoid +## using more than one of your relays in a single circuit. See +## https://www.torproject.org/docs/faq#MultipleRelays +## However, you should never include a bridge's fingerprint here, as it would +## break its concealability and potentially reveal its IP/TCP address. +## +## If you are running multiple relays, you MUST set this option. +## +## Note: do not use MyFamily on bridge relays. +#MyFamily $keyid,$keyid,... + +## Uncomment this if you want your relay to be an exit, with the default +## exit policy (or whatever exit policy you set below). +## (If ReducedExitPolicy, ExitPolicy, or IPv6Exit are set, relays are exits. +## If none of these options are set, relays are non-exits.) +#ExitRelay 1 + +## Uncomment this if you want your relay to allow IPv6 exit traffic. +## (Relays do not allow any exit traffic by default.) +#IPv6Exit 1 + +## Uncomment this if you want your relay to be an exit, with a reduced set +## of exit ports. +#ReducedExitPolicy 1 + +## Uncomment these lines if you want your relay to be an exit, with the +## specified set of exit IPs and ports. +## +## A comma-separated list of exit policies. They're considered first +## to last, and the first match wins. +## +## If you want to allow the same ports on IPv4 and IPv6, write your rules +## using accept/reject *. If you want to allow different ports on IPv4 and +## IPv6, write your IPv6 rules using accept6/reject6 *6, and your IPv4 rules +## using accept/reject *4. +## +## If you want to _replace_ the default exit policy, end this with either a +## reject *:* or an accept *:*. Otherwise, you're _augmenting_ (prepending to) +## the default exit policy. Leave commented to just use the default, which is +## described in the man page or at +## https://www.torproject.org/documentation.html +## +## Look at https://www.torproject.org/faq-abuse.html#TypicalAbuses +## for issues you might encounter if you use the default exit policy. +## +## If certain IPs and ports are blocked externally, e.g. by your firewall, +## you should update your exit policy to reflect this -- otherwise Tor +## users will be told that those destinations are down. +## +## For security, by default Tor rejects connections to private (local) +## networks, including to the configured primary public IPv4 and IPv6 addresses, +## and any public IPv4 and IPv6 addresses on any interface on the relay. +## See the man page entry for ExitPolicyRejectPrivate if you want to allow +## "exit enclaving". +## +#ExitPolicy accept *:6660-6667,reject *:* # allow irc ports on IPv4 and IPv6 but no more +#ExitPolicy accept *:119 # accept nntp ports on IPv4 and IPv6 as well as default exit policy +#ExitPolicy accept *4:119 # accept nntp ports on IPv4 only as well as default exit policy +#ExitPolicy accept6 *6:119 # accept nntp ports on IPv6 only as well as default exit policy +#ExitPolicy reject *:* # no exits allowed + +## Bridge relays (or "bridges") are Tor relays that aren't listed in the +## main directory. Since there is no complete public list of them, even an +## ISP that filters connections to all the known Tor relays probably +## won't be able to block all the bridges. Also, websites won't treat you +## differently because they won't know you're running Tor. If you can +## be a real relay, please do; but if not, be a bridge! +## +## Warning: when running your Tor as a bridge, make sure than MyFamily is +## NOT configured. +#BridgeRelay 1 +## By default, Tor will advertise your bridge to users through various +## mechanisms like https://bridges.torproject.org/. If you want to run +## a private bridge, for example because you'll give out your bridge +## address manually to your friends, uncomment this line: +#BridgeDistribution none + +## If non-zero, try to write to disk less frequently than we would otherwise. +## This is useful when running on flash memory or other media that support +## only a limited number of writes. +#AvoidDiskWrites 1 + +## Try to use built-in (static) crypto hardware acceleration when available. +#HardwareAccel 1 + +## If set to 1, Tor will attempt to lock all current and future memory pages, +## so that memory cannot be paged out. +#DisableAllSwap 1 + +## Configuration options can be imported from files or folders using the %include +## option with the value being a path. This path can have wildcards. Wildcards are +## expanded first, using lexical order. Then, for each matching file or folder, the following +## rules are followed: if the path is a file, the options from the file will be parsed as if +## they were written where the %include option is. If the path is a folder, all files on that +## folder will be parsed following lexical order. Files starting with a dot are ignored. Files +## on subfolders are ignored. +## The %include option can be used recursively. +%include /etc/tor/torrc.d/*.conf diff --git a/tor-alpha/transparent_proxy.conf b/tor-alpha/transparent_proxy.conf new file mode 100644 index 0000000..feffff7 --- /dev/null +++ b/tor-alpha/transparent_proxy.conf @@ -0,0 +1,22 @@ +## https://trac.torproject.org/projects/tor/wiki/doc/TransparentProxy + +#VirtualAddrNetworkIPv4 10.192.0.0/10 +#AutomapHostsOnResolve 1 + +## TransPort [address:]port|auto [isolation flags] +## +## Open this port to listen for transparent proxy connections. +## Set this to 0 if you don’t want to allow transparent proxy connections. +## Set the port to auto to have Tor pick a port for you. This directive +## can be specified multiple times to bind to multiple addresses/ports. +#TransPort 127.0.0.1:9040 IsolateClientAddr IsolateClientProtocol IsolateDestAddr IsolateDestPort + +## DNSPort [address:]port|auto [isolation flags] +## +## If non-zero, open this port to listen for UDP DNS requests, and +## resolve them anonymously. This port only handles A, AAAA, and PTR +## requests---it doesn’t handle arbitrary DNS request types. Set the port +## to auto to have Tor pick a port for you. +## This directive can be specified multiple times to bind to multiple addresses/ports. +#DNSPort 127.0.0.1:53 + diff --git a/tor/PKGBUILD b/tor/PKGBUILD new file mode 100644 index 0000000..1a16cb2 --- /dev/null +++ b/tor/PKGBUILD @@ -0,0 +1,81 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=tor +pkgver=0.4.6.10 +pkgrel=01 +pkgdesc='Anonymizing overlay network.' +arch=('x86_64') + +url='https://www.torproject.org/dist' +source=("$url/$pkgname-$pkgver.tar.gz"{,.sha256sum,.sha256sum.asc} +#https://dist.torproject.org/tor-0.4.6.10.tar.gz.sha256sum + 'torrc.patch' + 'tor.sysusers' + 'tor.tmpfiles') + +depends=( + 'openssl' + 'libevent' + 'bash' + 'libseccomp') + +optdepends=( + 'torsocks: for torify') + +makedepends=( + 'ca-certificates') + +#backup=( +# 'etc/tor/torrc') + +build() { + cd "$pkgname-$pkgver" + + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --disable-zstd \ + --disable-zstd-advanced-apis \ + --disable-systemd + + make +} + +package() { + cd "$pkgname-$pkgver" + + make DESTDIR="${pkgdir}" install + + install -Dm0644 "${srcdir}/tor.sysusers" "${pkgdir}/usr/lib/sysusers.d/tor.conf" + install -Dm0644 "${srcdir}/tor.tmpfiles" "${pkgdir}/usr/lib/tmpfiles.d/tor.conf" + + # patch upstream configuration file + patch -Np1 < "${srcdir}/torrc.patch" + + make DESTDIR="${pkgdir}" install + + install -Dm 0644 src/config/torrc.sample "${pkgdir}"/etc/tor/torrc + chown -R 43:43 "${pkgdir}"/etc/tor/torrc +# rm "${pkgdir}"/etc/tor/torrc.sample + + install -Dm0644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} + +#---- license gpg-key sha256sums ---- + +license=('BSD') + +validpgpkeys=(2133BC600AB133E1D826D173FE43009C4607B1FB # Nick Mathewson + F65CE37F04BA5B360AE6EE17C218525819F78451 # Roger Dingledine + 1C1BC007A9F607AA8152C040BEA7B180B1491921) # Alexander Færøy + +sha256sums=(94ccd60e04e558f33be73032bc84ea241660f92f58cfb88789bda6893739e31c # tor-0.4.6.10.tar.gz + 960f6f27635c7eee5543c546f97ee3a2706caae2897698a283011aacd189ff50 # tor-0.4.6.10.tar.gz.sha256sum + b4bdc4596c4d9f9a9d01a951abbb89cf25b5b0af0e9a4e3ff3deefde5dbb1d81 # tor-0.4.6.10.tar.gz.sha256sum.asc + c9632d05816d7a1ccfe1e258518c130808decaee7f3544494f9d53ab828cf22c # torrc.patch + 04eec05b4e61efccc58c5da657363f0c1059d7f122cb15c32331a201af2d7f94 # tor.sysusers + 07bedb17660a3673b31b0005b6505065c90b32f2c6b28b969241da675560f926) # tor.tmpfiles diff --git a/tor/PKGBUILD-arch b/tor/PKGBUILD-arch new file mode 100644 index 0000000..8578f9f --- /dev/null +++ b/tor/PKGBUILD-arch @@ -0,0 +1,63 @@ +# Maintainer: Lukas Fleischer +# Maintainer: Levente Polyak +# Maintainer: kpcyrd +# Contributor: Daniel Micay +# Contributor: simo +# Contributor: Sid Karunaratne + +pkgname=tor +pkgver=0.4.6.9 +pkgrel=1 +pkgdesc='Anonymizing overlay network.' +arch=('x86_64') +url='https://www.torproject.org/' +license=('BSD') +depends=('openssl' 'libevent' 'bash' 'libseccomp' 'zstd' 'libcap' 'systemd-libs' + 'libsystemd.so' 'libzstd.so' 'libseccomp.so' 'libcap.so') +optdepends=('torsocks: for torify') +makedepends=('ca-certificates' 'systemd') +backup=('etc/tor/torrc') +source=("https://www.torproject.org/dist/${pkgname}-${pkgver}.tar.gz"{,.asc} + 'torrc.patch' + 'tor.sysusers' + 'tor.tmpfiles' + 'tor.service') +b2sums=('7d6add30867a3b18471bece559acbf6782b516229b8ab2c764f4a581fcbe3c2fa748f2708c60bf0f8a1165bc1fdd930fe00adaf7c1f546e6a7e98bdc0f1abb21' + 'SKIP' + '3359e138d823a77df2a42ce3fe8c6ecb4004e9ec191863db7857aceea7c136c78f09518b1a199dfd3215f5d61f1c060f4a0e2141c5bdb6b847af60fb6e9a81a7' + '9053da53926f2120ac57b6c1442238f5bbd89bf9270347c4e00b721b39939bebc6adfcf814a9d7289dfd14d085d91c193529305336db93190da5b7f586a031df' + '5d55d9a7e42b6ce78b8ab985bab37afe8f0bacddb5abd895c4a490adb8f98b9422f90b40066fef05ecf37b7b21e80aadc615c4b7f6e12b05581304113a1b1f1d' + '327c1a35c3d4c44f93edb47959c8c41ab6af4cbfcbb8f4e9f54f2f69d17d148bf85e2d2c8aefe2d3165e123056dd68a248af78d1ba713b94a4e6d27a9cf412f1') +validpgpkeys=('2133BC600AB133E1D826D173FE43009C4607B1FB' # Nick Mathewson + 'F65CE37F04BA5B360AE6EE17C218525819F78451') # Roger Dingledine + +prepare() { + cd ${pkgname}-${pkgver} + # uncomment essential config sections in the torrc file + patch -Np1 < "${srcdir}/torrc.patch" +} + +build() { + cd ${pkgname}-${pkgver} + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var + make +} + +package() { + cd ${pkgname}-${pkgver} + + make DESTDIR="${pkgdir}" install + mv "${pkgdir}"/etc/tor/torrc{.sample,} + + # install arch custom files + install -Dm 644 "${srcdir}"/*.service -t "${pkgdir}"/usr/lib/systemd/system + install -Dm 644 "${srcdir}"/tor.sysusers "${pkgdir}"/usr/lib/sysusers.d/tor.conf + install -Dm 644 "${srcdir}"/tor.tmpfiles "${pkgdir}"/usr/lib/tmpfiles.d/tor.conf + + install -Dm 644 LICENSE -t "${pkgdir}"/usr/share/licenses/${pkgname} +} + +# vim: ts=2 sw=2 et: diff --git a/tor/clean b/tor/clean new file mode 100644 index 0000000..e665173 --- /dev/null +++ b/tor/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,tor*gz*} diff --git a/tor/deps b/tor/deps new file mode 100644 index 0000000..dd6fade --- /dev/null +++ b/tor/deps @@ -0,0 +1 @@ +libevent diff --git a/tor/key b/tor/key new file mode 100644 index 0000000..bfbd276 --- /dev/null +++ b/tor/key @@ -0,0 +1 @@ +gpg -v --recv-key 1C1BC007A9F607AA8152C040BEA7B180B1491921 diff --git a/tor/time b/tor/time new file mode 100644 index 0000000..9b7dc51 --- /dev/null +++ b/tor/time @@ -0,0 +1,3 @@ +real 2m6.014s +user 6m24.823s +sys 0m19.963s diff --git a/tor/tor.service b/tor/tor.service new file mode 100644 index 0000000..f91b63a --- /dev/null +++ b/tor/tor.service @@ -0,0 +1,35 @@ +# tor.service -- this systemd configuration file for Tor sets up a +# relatively conservative, hardened Tor service. You may need to +# edit it if you are making changes to your Tor configuration that it +# does not allow. Package maintainers: this should be a starting point +# for your tor.service; it is not the last point. + +[Unit] +Description=Anonymizing overlay network for TCP +After=syslog.target network.target nss-lookup.target + +[Service] +Type=notify +NotifyAccess=all +ExecStartPre=/usr/bin/tor -f /etc/tor/torrc --verify-config +ExecStart=/usr/bin/tor -f /etc/tor/torrc +ExecReload=/bin/kill -HUP ${MAINPID} +KillSignal=SIGINT +TimeoutSec=60 +Restart=on-failure +WatchdogSec=1m +LimitNOFILE=32768 + +# Hardening +PrivateTmp=yes +PrivateDevices=yes +ProtectHome=yes +ProtectSystem=full +ReadOnlyDirectories=/ +ReadWriteDirectories=-/var/lib/tor +ReadWriteDirectories=-/var/log/tor +NoNewPrivileges=yes +CapabilityBoundingSet=CAP_SETUID CAP_SETGID CAP_NET_BIND_SERVICE CAP_DAC_READ_SEARCH + +[Install] +WantedBy=multi-user.target diff --git a/tor/tor.sysusers b/tor/tor.sysusers new file mode 100644 index 0000000..1f039ff --- /dev/null +++ b/tor/tor.sysusers @@ -0,0 +1 @@ +u tor 43 - /var/lib/tor diff --git a/tor/tor.tmpfiles b/tor/tor.tmpfiles new file mode 100644 index 0000000..ed8beb4 --- /dev/null +++ b/tor/tor.tmpfiles @@ -0,0 +1 @@ +d /var/lib/tor 0700 tor tor - - diff --git a/tor/torrc.patch b/tor/torrc.patch new file mode 100644 index 0000000..2a06630 --- /dev/null +++ b/tor/torrc.patch @@ -0,0 +1,28 @@ +--- a/src/config/torrc.sample 2020-10-06 18:11:24.173821006 +0200 ++++ b/src/config/torrc.sample 2020-10-06 18:11:06.000000000 +0200 +@@ -11,6 +11,7 @@ + ## + ## Tor will look for this file in various places based on your platform: + ## https://www.torproject.org/docs/faq#torrc ++User tor + + ## Tor opens a SOCKS proxy on port 9050 by default -- even if you don't + ## configure one below. Set "SOCKSPort 0" if you plan to run Tor only +@@ -39,7 +40,7 @@ + ## Send every possible message to /var/log/tor/debug.log + #Log debug file /var/log/tor/debug.log + ## Use the system log instead of Tor's logfiles +-#Log notice syslog ++Log notice syslog + ## To send all messages to stderr: + #Log debug stderr + +@@ -50,7 +51,7 @@ + + ## The directory for keeping all the keys/etc. By default, we store + ## things in $HOME/.tor on Unix, and in Application Data\tor on Windows. +-#DataDirectory /var/lib/tor ++DataDirectory /var/lib/tor + + ## The port on which Tor will listen for local connections from Tor + ## controller applications, as documented in control-spec.txt. diff --git a/tor/torrc.patch-arch b/tor/torrc.patch-arch new file mode 100644 index 0000000..0f3c849 --- /dev/null +++ b/tor/torrc.patch-arch @@ -0,0 +1,28 @@ +--- a/src/config/torrc.sample.in 2021-03-10 19:59:10.123456789 +0100 ++++ b/src/config/torrc.sample.in 2021-03-10 19:59:10.123456789 +0100 +@@ -11,6 +11,7 @@ + ## + ## Tor will look for this file in various places based on your platform: + ## https://www.torproject.org/docs/faq#torrc ++User tor + + ## Tor opens a SOCKS proxy on port 9050 by default -- even if you don't + ## configure one below. Set "SOCKSPort 0" if you plan to run Tor only +@@ -39,7 +40,7 @@ + ## Send every possible message to @LOCALSTATEDIR@/log/tor/debug.log + #Log debug file @LOCALSTATEDIR@/log/tor/debug.log + ## Use the system log instead of Tor's logfiles +-#Log notice syslog ++Log notice syslog + ## To send all messages to stderr: + #Log debug stderr + +@@ -50,7 +51,7 @@ + + ## The directory for keeping all the keys/etc. By default, we store + ## things in $HOME/.tor on Unix, and in Application Data\tor on Windows. +-#DataDirectory @LOCALSTATEDIR@/lib/tor ++DataDirectory @LOCALSTATEDIR@/lib/tor + + ## The port on which Tor will listen for local connections from Tor + ## controller applications, as documented in control-spec.txt. diff --git a/ttf-liberation/PKGBUILD b/ttf-liberation/PKGBUILD new file mode 100644 index 0000000..3fec11f --- /dev/null +++ b/ttf-liberation/PKGBUILD @@ -0,0 +1,34 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=ttf-liberation +pkgver=2.1.5 +pkgrel=01 +pkgdesc='Font family which aims at metric compatibility with Arial, Times New Roman, and Courier New' +arch=('any') +url=https://github.com/liberationfonts/liberation-fonts +makedepends=('fontforge' 'python-fonttools') +provides=('ttf-font') +group=(joborun-pkg-X) +source=("$url/archive/$pkgver/liberation-fonts-$pkgver.tar.gz") + +build() { + cd liberation-fonts-$pkgver + make build +} + +package() { + cd liberation-fonts-$pkgver + install -Dm644 -t "$pkgdir/usr/share/fonts/${pkgname#ttf-}" \ + liberation-fonts-ttf-$pkgver/*.ttf + install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE +} + +#---- license gpg-key sha256sums ---- + +license=('custom:OFL') + +sha256sums=(9a823ccb33c8a8a865e84b982bcdc44d03ba4914adb91e6000df035dc0e55936) # liberation-fonts-2.1.5.tar.gz diff --git a/ttf-liberation/PKGBUILD-arch b/ttf-liberation/PKGBUILD-arch new file mode 100644 index 0000000..a552f56 --- /dev/null +++ b/ttf-liberation/PKGBUILD-arch @@ -0,0 +1,31 @@ +# Maintainer: Lukas Fleischer +# Maintainer: Daniel M. Capella +# Contributor: Ronald van Haren +# Contributor: Roman Kyrylych +# Contributor: Andreas Zwinkau +# Contributor: rabyte +# Contributor: Stefan Husmann < stefan-husmann@t-online.de> + +pkgname=ttf-liberation +pkgver=2.1.5 +pkgrel=1 +pkgdesc='Font family which aims at metric compatibility with Arial, Times New Roman, and Courier New' +arch=('any') +url=https://github.com/liberationfonts/liberation-fonts +license=('custom:OFL') +makedepends=('fontforge' 'python-fonttools') +provides=('ttf-font') +source=("$url/archive/$pkgver/liberation-fonts-$pkgver.tar.gz") +b2sums=('8e8ed55456823c61dc8c622a9674c540770abc944ce87bd96ae64a8f13b450e5386335e9f24723344a9e7f882b8e323f4a43231b4659c117c5b7670027f42199') + +build() { + cd liberation-fonts-$pkgver + make build +} + +package() { + cd liberation-fonts-$pkgver + install -Dm644 -t "$pkgdir/usr/share/fonts/${pkgname#ttf-}" \ + liberation-fonts-ttf-$pkgver/*.ttf + install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE +} diff --git a/ttf-liberation/clean b/ttf-liberation/clean new file mode 100644 index 0000000..af8b46d --- /dev/null +++ b/ttf-liberation/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,*tar.gz*} diff --git a/ttf-liberation/deps b/ttf-liberation/deps new file mode 100644 index 0000000..e38234f --- /dev/null +++ b/ttf-liberation/deps @@ -0,0 +1 @@ +fontforge python-fonttools diff --git a/ttf-liberation/time b/ttf-liberation/time new file mode 100644 index 0000000..cd4063a --- /dev/null +++ b/ttf-liberation/time @@ -0,0 +1,5 @@ + +real 0m4.467s +user 0m4.179s +sys 0m0.322s + diff --git a/unbound/PKGBUILD b/unbound/PKGBUILD new file mode 100644 index 0000000..941adbb --- /dev/null +++ b/unbound/PKGBUILD @@ -0,0 +1,109 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=unbound +pkgver=1.15.0 +pkgrel=01 +pkgdesc="Validating, recursive, and caching DNS resolver w/o systemd" +arch=(x86_64) +url="https://unbound.net/" +depends=(dnssec-anchors fstrm hiredis ldns libevent libnghttp2 libsodium openssl) +makedepends=(expat protobuf-c python swig ) +optdepends=( + 'expat: for unbound-anchor' + 'sh: for unbound-control-setup' + 'python: for python-bindings' +) +provides=(libunbound.so) +backup=(etc/${pkgname}/${pkgname}.conf) +source=( + "https://unbound.net/downloads/${pkgname}-${pkgver}.tar.gz"{,.asc} + "${pkgname}-1.14.0-trust_anchor_file.patch" + ${pkgname}-sysusers.conf + ${pkgname}-tmpfiles.conf + ${pkgname}-trusted-key.hook +) + +prepare() { + cd ${pkgname}-${pkgver} + # enable trusted-anchor-file and set it to an unbound specific location + patch -Np1 -i ../"${pkgname}-1.14.0-trust_anchor_file.patch" + autoreconf -fiv +} + +build() { + cd ${pkgname}-${pkgver} + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --sbindir=/usr/bin \ + --disable-rpath \ + --enable-dnscrypt \ + --enable-dnstap \ + --enable-pie \ + --enable-relro-now \ + --enable-subnet \ + --disable-systemd \ + --disable-ipv6 \ + --enable-tfo-client \ + --enable-tfo-server \ + --enable-cachedb \ + --with-libhiredis \ + --with-conf-file=/etc/unbound/unbound.conf \ + --with-pidfile=/run/unbound.pid \ + --with-rootkey-file=/etc/trusted-key.key \ + --with-libevent \ + --with-libnghttp2 \ + --with-pyunbound + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +check() { + cd ${pkgname}-${pkgver} + make -k check +} + +package() { + depends+=(libprotobuf-c.so) + + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install +# install -vDm 644 contrib/${pkgname}.service -t "${pkgdir}"/usr/lib/systemd/system/ + install -vDm 644 LICENSE -t "${pkgdir}"/usr/share/licenses/${pkgname}/ + install -vDm 644 ../${pkgname}-sysusers.conf "${pkgdir}"/usr/lib/sysusers.d/${pkgname}.conf + install -vDm 644 ../${pkgname}-tmpfiles.conf "${pkgdir}"/usr/lib/tmpfiles.d/${pkgname}.conf + # libalpm hook to copy the dnssec-anchors provided key to /etc/unbound + install -vDm 644 ../unbound-trusted-key.hook -t "${pkgdir}"/usr/share/libalpm/hooks/ +} + +#---- license gpg-key sha256sums ---- + +license=(BSD) + +validpgpkeys=(EDFAA3F2CA4E6EB05681AF8E9F6F1C2D7E045F8D) # W.C.A. Wijngaards + +sha512sums=('c5dab305694c14f64e05080700bb52f6e6bf5b76f15e1fde34e35c932cb3ffed0de2c03b570cf4bfe18165cb10e82e67ee9b12c6583295380f88c2c03800cc1f' + 'SKIP' + '9590d3d459d96f99cbc7482fae0f5318dd22a034e45cff18079e4f3c9f9c3c1d7af90cdd5353fb469eac08c535555fd164097b496286b807b2117e8a3a6cd304' + 'ef71d4e9b0eb0cc602d66bd0573d9424578fe33ef28a852c582d56f0fd34fdd63046c365ef7aed8b84a461b81254240af7ad3fd539da72f9587817d21bd6c585' + '6b1849ae9d7cf427f6fa6cd0590e8f8c3f06210d2d6795e543b0f325a9e866db0f5db2275a29fa90f688783c0dd16f19c8a49a9817d5f5444e13f8f2df3ff712' + '613826cdf5ab6e77f2805fa2aa65272508dcd11090add1961b3df6dfac3b67db016bc9f45fbcf0ef0de82b2d602c153d5263a488027a6cf13a72680b581b266d') + +b2sums=('e67756fb28aac784431484e5f834cbe3864a0ec021a8c9eb3124a6d5732fea99a073815a624210e43e50b3b59ce943c5cc6a4e5e1c743b91f5803e2dcf5c9870' + 'SKIP' + '0978ab5c0474ed29de9c0904a46d114413e094dafeadaac4f10cdbc19e4152fcc064d7cdb8c331da7c2531075aa699326b84e21da1a8218a6f00a10f0e107b3d' + '292a3c2e5fde292a03b6c9b2ddabd5089f52e73b50a404c3d9f54c1a43184924b661a21eea61cc521c594c1005a3b40b630fa585a38195c61298f9b24b248b92' + 'd3951006b43068be904c6b91a9e0563d56228225854e12b40abbdd4ba9b47338e97265837297a6de879acbc8051bb749163f9457683f5e12fc29ac2e7b687fd3' + 'd28785390eb6c125bd26ca11f097fe8864b080482157deeb7c70e9bee47ff2844abaed574db59a7c152ed3ec0acba05cfee4c3751f7a9f553320b064578f86c7') + +sha256sums=(a480dc6c8937447b98d161fe911ffc76cfaffa2da18788781314e81339f1126f # unbound-1.15.0.tar.gz + 6655bc6674d53caf652471bbb32d155f114beae6b0c4ae6d7108df75ef2c0fee # unbound-1.15.0.tar.gz.asc + 8e6e831e87484f8969a79bcd216b08b147935597c303101dad7ea1eb4cf3d326 # unbound-1.14.0-trust_anchor_file.patch + 85b8f00881fb93bcce83bdfe3246463a396eb5b352c0d7f5fca32fcb839d22fa # unbound-sysusers.conf + 31a573f43287dd7e3678be1680388bfc7d8dee8280eb2443f521a4b349aaa6b6 # unbound-tmpfiles.conf + afb7a0a5e2da327c27c8f666b1ffaf34689121684c301928624221ac1d0c066a) # unbound-trusted-key.hook diff --git a/unbound/PKGBUILD-arch b/unbound/PKGBUILD-arch new file mode 100644 index 0000000..8edaaf0 --- /dev/null +++ b/unbound/PKGBUILD-arch @@ -0,0 +1,94 @@ +# Maintainer: David Runge +# Maintainer: Bruno Pagani +# Contributor: Gaetan Bisson +# Contributor: Hisato Tatekura +# Contributor: Massimiliano Torromeo + +pkgname=unbound +pkgver=1.15.0 +pkgrel=1 +pkgdesc="Validating, recursive, and caching DNS resolver" +arch=(x86_64) +url="https://unbound.net/" +license=(BSD) +depends=(dnssec-anchors fstrm hiredis ldns libevent libnghttp2 libsodium openssl) +makedepends=(expat protobuf-c python swig systemd) +optdepends=( + 'expat: for unbound-anchor' + 'sh: for unbound-control-setup' + 'python: for python-bindings' +) +provides=(libunbound.so) +backup=(etc/${pkgname}/${pkgname}.conf) +source=( + "https://unbound.net/downloads/${pkgname}-${pkgver}.tar.gz"{,.asc} + "${pkgname}-1.14.0-trust_anchor_file.patch" + ${pkgname}-sysusers.conf + ${pkgname}-tmpfiles.conf + ${pkgname}-trusted-key.hook +) +sha512sums=('c5dab305694c14f64e05080700bb52f6e6bf5b76f15e1fde34e35c932cb3ffed0de2c03b570cf4bfe18165cb10e82e67ee9b12c6583295380f88c2c03800cc1f' + 'SKIP' + '9590d3d459d96f99cbc7482fae0f5318dd22a034e45cff18079e4f3c9f9c3c1d7af90cdd5353fb469eac08c535555fd164097b496286b807b2117e8a3a6cd304' + 'ef71d4e9b0eb0cc602d66bd0573d9424578fe33ef28a852c582d56f0fd34fdd63046c365ef7aed8b84a461b81254240af7ad3fd539da72f9587817d21bd6c585' + '6b1849ae9d7cf427f6fa6cd0590e8f8c3f06210d2d6795e543b0f325a9e866db0f5db2275a29fa90f688783c0dd16f19c8a49a9817d5f5444e13f8f2df3ff712' + '613826cdf5ab6e77f2805fa2aa65272508dcd11090add1961b3df6dfac3b67db016bc9f45fbcf0ef0de82b2d602c153d5263a488027a6cf13a72680b581b266d') +b2sums=('e67756fb28aac784431484e5f834cbe3864a0ec021a8c9eb3124a6d5732fea99a073815a624210e43e50b3b59ce943c5cc6a4e5e1c743b91f5803e2dcf5c9870' + 'SKIP' + '0978ab5c0474ed29de9c0904a46d114413e094dafeadaac4f10cdbc19e4152fcc064d7cdb8c331da7c2531075aa699326b84e21da1a8218a6f00a10f0e107b3d' + '292a3c2e5fde292a03b6c9b2ddabd5089f52e73b50a404c3d9f54c1a43184924b661a21eea61cc521c594c1005a3b40b630fa585a38195c61298f9b24b248b92' + 'd3951006b43068be904c6b91a9e0563d56228225854e12b40abbdd4ba9b47338e97265837297a6de879acbc8051bb749163f9457683f5e12fc29ac2e7b687fd3' + 'd28785390eb6c125bd26ca11f097fe8864b080482157deeb7c70e9bee47ff2844abaed574db59a7c152ed3ec0acba05cfee4c3751f7a9f553320b064578f86c7') +validpgpkeys=(EDFAA3F2CA4E6EB05681AF8E9F6F1C2D7E045F8D) # W.C.A. Wijngaards + +prepare() { + cd ${pkgname}-${pkgver} + # enable trusted-anchor-file and set it to an unbound specific location + patch -Np1 -i ../"${pkgname}-1.14.0-trust_anchor_file.patch" + autoreconf -fiv +} + +build() { + cd ${pkgname}-${pkgver} + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --sbindir=/usr/bin \ + --disable-rpath \ + --enable-dnscrypt \ + --enable-dnstap \ + --enable-pie \ + --enable-relro-now \ + --enable-subnet \ + --enable-systemd \ + --enable-tfo-client \ + --enable-tfo-server \ + --enable-cachedb \ + --with-libhiredis \ + --with-conf-file=/etc/unbound/unbound.conf \ + --with-pidfile=/run/unbound.pid \ + --with-rootkey-file=/etc/trusted-key.key \ + --with-libevent \ + --with-libnghttp2 \ + --with-pyunbound + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +check() { + cd ${pkgname}-${pkgver} + make -k check +} + +package() { + depends+=(libprotobuf-c.so libsystemd.so) + + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + install -vDm 644 contrib/${pkgname}.service -t "${pkgdir}"/usr/lib/systemd/system/ + install -vDm 644 LICENSE -t "${pkgdir}"/usr/share/licenses/${pkgname}/ + install -vDm 644 ../${pkgname}-sysusers.conf "${pkgdir}"/usr/lib/sysusers.d/${pkgname}.conf + install -vDm 644 ../${pkgname}-tmpfiles.conf "${pkgdir}"/usr/lib/tmpfiles.d/${pkgname}.conf + # libalpm hook to copy the dnssec-anchors provided key to /etc/unbound + install -vDm 644 ../unbound-trusted-key.hook -t "${pkgdir}"/usr/share/libalpm/hooks/ +} diff --git a/unbound/clean b/unbound/clean new file mode 100644 index 0000000..473b774 --- /dev/null +++ b/unbound/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,*.tar.gz*} diff --git a/unbound/deps b/unbound/deps new file mode 100644 index 0000000..40513a6 --- /dev/null +++ b/unbound/deps @@ -0,0 +1,11 @@ +dnssec-anchors +fstrm +hiredis +ldns +libevent +libsodium +protobuf-c +python +swig +autoconf +automake diff --git a/unbound/key b/unbound/key new file mode 100644 index 0000000..db746b6 --- /dev/null +++ b/unbound/key @@ -0,0 +1 @@ +gpg -v --recv-key 9F6F1C2D7E045F8D diff --git a/unbound/time b/unbound/time new file mode 100644 index 0000000..c1535fd --- /dev/null +++ b/unbound/time @@ -0,0 +1,5 @@ + +real 0m35.486s +user 0m27.131s +sys 0m7.829s + diff --git a/unbound/unbound-1.14.0-trust_anchor_file.patch b/unbound/unbound-1.14.0-trust_anchor_file.patch new file mode 100644 index 0000000..39abd28 --- /dev/null +++ b/unbound/unbound-1.14.0-trust_anchor_file.patch @@ -0,0 +1,12 @@ +diff -ruN a/doc/example.conf.in b/doc/example.conf.in +--- a/doc/example.conf.in 2021-12-09 08:55:44.000000000 +0100 ++++ b/doc/example.conf.in 2021-12-11 23:42:13.542310886 +0100 +@@ -533,7 +533,7 @@ + # with several entries, one file per entry. + # Zone file format, with DS and DNSKEY entries. + # Note this gets out of date, use auto-trust-anchor-file please. +- # trust-anchor-file: "" ++ trust-anchor-file: "/etc/unbound/trusted-key.key" + + # Trusted key for validation. DS or DNSKEY. specify the RR on a + # single line, surrounded by "". TTL is ignored. class is IN default. diff --git a/unbound/unbound-sysusers.conf b/unbound/unbound-sysusers.conf new file mode 100644 index 0000000..3cd34bf --- /dev/null +++ b/unbound/unbound-sysusers.conf @@ -0,0 +1 @@ +u unbound - "unbound" /etc/unbound diff --git a/unbound/unbound-tmpfiles.conf b/unbound/unbound-tmpfiles.conf new file mode 100644 index 0000000..7de06d4 --- /dev/null +++ b/unbound/unbound-tmpfiles.conf @@ -0,0 +1 @@ +C /etc/unbound/trusted-key.key - - - - /etc/trusted-key.key diff --git a/unbound/unbound-trusted-key.hook b/unbound/unbound-trusted-key.hook new file mode 100644 index 0000000..a9c6bf5 --- /dev/null +++ b/unbound/unbound-trusted-key.hook @@ -0,0 +1,10 @@ +[Trigger] +Type = Path +Target = etc/trusted-key.key +Operation = Install +Operation = Upgrade + +[Action] +Description = Updating trusted-key.key for unbound... +When = PostTransaction +Exec = /bin/cp -f /etc/trusted-key.key /etc/unbound/ diff --git a/unrar/PKGBUILD b/unrar/PKGBUILD new file mode 100644 index 0000000..eadd5a1 --- /dev/null +++ b/unrar/PKGBUILD @@ -0,0 +1,51 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgbase=unrar +pkgname=(unrar libunrar) +pkgver=6.1.6 +pkgrel=01 +epoch=1 +arch=(x86_64) +url='https://www.rarlab.com/rar_add.htm' +source=(https://www.rarlab.com/rar/unrarsrc-$pkgver.tar.gz) + +#prepare() { +# sed -e '/CXXFLAGS=/d' -e '/LDFLAGS=/d' -i unrar/makefile # Use system build flags +#} + +build() { + cp -a unrar libunrar + export LDFLAGS+=' -pthread' + make -C libunrar lib + make -C unrar -j1 +} + +package_unrar() { + pkgdesc='The RAR uncompression program' + depends=(gcc-libs) + cd unrar + install -Dm755 unrar -t "$pkgdir"/usr/bin/ + # install license + install -Dm644 license.txt "$pkgdir"/usr/share/licenses/$pkgname/LICENSE +} + +package_libunrar() { + pkgdesc='Library and header file for applications that use libunrar' + depends=(gcc-libs) + cd libunrar + install -Dm755 libunrar.so -t "$pkgdir"/usr/lib/ + install -Dm644 dll.hpp -t "$pkgdir"/usr/include/unrar/ + # install license + install -Dm644 license.txt "$pkgdir"/usr/share/licenses/$pkgname/LICENSE +} + +#---- license gpg-key sha256sums ---- + +license=(custom) + +sha256sums=(67f4ab891c062218c2badfaac9c8cab5c8bfd5e96dabfca56c8faa3d209a801d) # unrarsrc-6.1.6.tar.gz diff --git a/unrar/PKGBUILD-arch b/unrar/PKGBUILD-arch new file mode 100644 index 0000000..5df4f23 --- /dev/null +++ b/unrar/PKGBUILD-arch @@ -0,0 +1,44 @@ +# Maintainer: Antonio Rojas +# Contributor: Giovanni Scafora +# Contributor: dorphell + +pkgbase=unrar +pkgname=(unrar libunrar) +pkgver=6.1.6 +pkgrel=1 +epoch=1 +arch=(x86_64) +url='https://www.rarlab.com/rar_add.htm' +license=(custom) +source=(https://www.rarlab.com/rar/unrarsrc-$pkgver.tar.gz) +sha256sums=('67f4ab891c062218c2badfaac9c8cab5c8bfd5e96dabfca56c8faa3d209a801d') + +prepare() { + sed -e '/CXXFLAGS=/d' -e '/LDFLAGS=/d' -i unrar/makefile # Use system build flags +} + +build() { + cp -a unrar libunrar + export LDFLAGS+=' -pthread' + make -C libunrar lib + make -C unrar -j1 +} + +package_unrar() { + pkgdesc='The RAR uncompression program' + depends=(gcc-libs) + cd unrar + install -Dm755 unrar -t "$pkgdir"/usr/bin/ + # install license + install -Dm644 license.txt "$pkgdir"/usr/share/licenses/$pkgname/LICENSE +} + +package_libunrar() { + pkgdesc='Library and header file for applications that use libunrar' + depends=(gcc-libs) + cd libunrar + install -Dm755 libunrar.so -t "$pkgdir"/usr/lib/ + install -Dm644 dll.hpp -t "$pkgdir"/usr/include/unrar/ + # install license + install -Dm644 license.txt "$pkgdir"/usr/share/licenses/$pkgname/LICENSE +} diff --git a/unrar/clean b/unrar/clean new file mode 100644 index 0000000..a870b31 --- /dev/null +++ b/unrar/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,unrar*tar.gz} diff --git a/unrar/deps b/unrar/deps new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/unrar/deps @@ -0,0 +1 @@ + diff --git a/unrar/time b/unrar/time new file mode 100644 index 0000000..86b8ff5 --- /dev/null +++ b/unrar/time @@ -0,0 +1,5 @@ + +real 0m25.867s +user 0m33.508s +sys 0m2.978s + diff --git a/unzip/PKGBUILD b/unzip/PKGBUILD new file mode 100644 index 0000000..1029062 --- /dev/null +++ b/unzip/PKGBUILD @@ -0,0 +1,164 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=unzip +pkgver=6.0 +_pkgver=${pkgver/./} +pkgrel=018 +pkgdesc='For extracting and viewing files in .zip archives' +url='http://infozip.sourceforge.net/UnZip.html' +arch=('x86_64') +depends=('bzip2' 'bash') +source=("https://downloads.sourceforge.net/infozip/${pkgname}${_pkgver}.tar.gz" + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-exec-shield.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-close.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-attribs-overflow.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-symlink.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-format-secure.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-valgrind.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-x-option.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-overflow.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-cve-2014-8139.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-cve-2014-8140.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-cve-2014-8141.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-overflow-long-fsize.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-heap-overflow-infloop.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-alt-iconv-utf8.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-alt-iconv-utf8-print.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/0001-Fix-CVE-2016-9844-rhbz-1404283.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-timestamp.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-cve-2018-1000035-heap-based-overflow.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-cve-2018-18384.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-COVSCAN-fix-unterminated-string.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-zipbomb-part1.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-zipbomb-part2.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-zipbomb-part3.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-zipbomb-manpage.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-zipbomb-part4.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-zipbomb-part5.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-zipbomb-part6.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-zipbomb-switch.patch' + 'unzip-6.0_CVE-2021-4217.patch') + +prepare() { + cd "${srcdir}/${pkgname}${_pkgver}" + sed -i "/MANDIR =/s#)/#)/share/#" unix/Makefile + patch -p1 -i ../unzip-6.0-exec-shield.patch + patch -p1 -i ../unzip-6.0-close.patch + patch -p1 -i ../unzip-6.0-attribs-overflow.patch + patch -p1 -i ../unzip-6.0-symlink.patch # FS#60433 + patch -p1 -i ../unzip-6.0-format-secure.patch + patch -p1 -i ../unzip-6.0-valgrind.patch + patch -p1 -i ../unzip-6.0-x-option.patch + patch -p1 -i ../unzip-6.0-overflow.patch # FS#44171 + patch -p1 -i ../unzip-6.0-cve-2014-8139.patch # FS#43300 + patch -p1 -i ../unzip-6.0-cve-2014-8140.patch # FS#43391 + patch -p1 -i ../unzip-6.0-cve-2014-8141.patch # FS#43300 + patch -p1 -i ../unzip-6.0-overflow-long-fsize.patch # FS#44171 + patch -p1 -i ../unzip-6.0-heap-overflow-infloop.patch # FS#46955 + patch -p1 -i ../unzip-6.0-alt-iconv-utf8.patch + patch -p1 -i ../unzip-6.0-alt-iconv-utf8-print.patch + patch -p1 -i ../0001-Fix-CVE-2016-9844-rhbz-1404283.patch + patch -p1 -i ../unzip-6.0-timestamp.patch + patch -p1 -i ../unzip-6.0-cve-2018-1000035-heap-based-overflow.patch # FS#69739 + patch -p1 -i ../unzip-6.0-cve-2018-18384.patch + patch -p1 -i ../unzip-6.0-COVSCAN-fix-unterminated-string.patch + patch -p1 -i ../unzip-zipbomb-part1.patch + patch -p1 -i ../unzip-zipbomb-part2.patch + patch -p1 -i ../unzip-zipbomb-part3.patch + patch -p1 -i ../unzip-zipbomb-manpage.patch + patch -p1 -i ../unzip-zipbomb-part4.patch + patch -p1 -i ../unzip-zipbomb-part5.patch + patch -p1 -i ../unzip-zipbomb-part6.patch + patch -p1 -i ../unzip-zipbomb-switch.patch + patch -p1 -i ../unzip-6.0_CVE-2021-4217.patch # FS#73542 +} + +build() { + cd "${srcdir}/${pkgname}${_pkgver}" + + # DEFINES, make, and install args from Debian + DEFINES='-DACORN_FTYPE_NFS -DWILD_STOP_AT_DIR -DLARGE_FILE_SUPPORT \ + -DUNICODE_SUPPORT -DUNICODE_WCHAR -DUTF8_MAYBE_NATIVE -DNO_LCHMOD \ + -DDATE_FORMAT=DF_YMD -DUSE_BZIP2 -DNOMEMCPY -DNO_WORKING_ISPRINT' + + make -f unix/Makefile prefix=/usr \ + D_USE_BZ2=-DUSE_BZIP2 L_BZ2=-lbz2 \ + LF2="$LDFLAGS" CF="$CFLAGS $CPPFLAGS -I. $DEFINES" \ + unzips +} + +package() { + cd "${srcdir}/${pkgname}${_pkgver}" + make -f unix/Makefile prefix="${pkgdir}"/usr install + install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} + + +#---- license gpg-key sha256sums ---- +license=('custom') +sha512sums=('0694e403ebc57b37218e00ec1a406cae5cc9c5b52b6798e0d4590840b6cdbf9ddc0d9471f67af783e960f8fa2e620394d51384257dca23d06bcd90224a80ce5d' + '3c7f525687b198aaa8547a8b30e744f7f184943624279d5c70170d5b9bb3f0c0f27f3e69bc808dd0d144690107bc76a10c06e160bf99c54fd5684246208b7cff' + '8423e32bbc1e1fe9366118bd10795bb8307f5a9a1afba1f0f62e46443d198b7f3cfcc41dedf57f31830f4c7328c9f5ae573982ca8664822b5f2a2ecdbc389df9' + '0aea88ccb4e141f4b23559a6802d0ceccaf4897addbe9d4ec465909ddf5f910a44d5e7907c815211e4b086cbd73c200c9b972f197a256e44f74468e3909928c9' + 'a3be30ce8c9eb903db636e786bea4e0c12ecb3f63af16eeac819f0b11db6984dfd93133fdbba2fdce228f5f57283973f64e3e3a81ec28cf46ea2e0b7593046d2' + '94560c730437ac2561d5e7550b91688dad1b828e1da96c9477e228e17b37e455ecdcd3a774e7db94dd902bbe12547d910602c0656b803768e5865b045d452dd7' + '8e1e3c88ff4191c325696984a52df50ba70ec0d0e68938ba06bbcdf9de96c0a26c9802db28b762bd14bc1a5c1c7d33d67e1cce91a3e44c92f3bb90509ea0f15f' + 'ec09ee6017fed66ebae2921b50fb7419eed627d49e78a3a072bec7256841e7829b6a3121f776a1ccc5d2cc3589006902465d73c28b3bd0937b9c3417ab0a0446' + '7e5274db1d0e9b1db87ce543ddb4edea67cea193ee5394a5a46f3813169c33508cbea96cc0ce88eb4ffc64b21df02c18724d0fe8f7d2814954233f646c386b3a' + '217a923ff8101823d7555c5999e63b2be0bb5898911f0f39dd46c85c69ce2e59c29135e69b5cbb084f40b5beb8dc52e1b47d3b21cd801ebb06dc08984c85f292' + 'a23f48924852046500547921f7b52e861a75dc2521f184fba87b3ff338c9d0598e8493f2a3c8eb1cb80412e0d057fb4b3c21e457f7295c8c8158d821709fb000' + '5969a2de0e11d00dfb690f67b1ae96d7a4f587a1cf3dd80572f5e10ba970a69958f04bb826a49338fc93204a3cb7aeb34bf735a681383f8e89691d09a7b26cce' + '6b37c1e72bea789051624c72c0aaa0522f4eecf83e82efb1d9c1844536903ed253b7448bea4a6e6aa116be86a50cad6911a0e218eacb8e5bee27a4457145b03f' + 'b0b745cff474756447e699a13ff003871b33a4f7a24a91150e5a947eba5132fd90fbacf7580379fc13c5f638483b25cbc226f85b9cac9c7662b2f91927eb2bb3' + 'a00e41feede53d42e0eb03d8280664b2a904918fab3c52459d02c07a298dd12e482eb3318c1842933ac3a527308dc5e4871f029b6b79e5bc2b2e1d84fee4fd0f' + '48e6c143eb55aad68d49b6dab640f824b88eaeadfb35e4962199b833e8e7adc87ded7bf8846ee43e1b4974e883fdc6b1d1f558eb72705d0c7af0455ee1ffccbb' + 'b73fde8e3568ccb8d26a787ac27127f87625dec372fa0ccaafd1266ddaaee46f9767bb67e874574cb27ec13fd3c90195e60be719b9996a7c5e194da7bf700c97' + 'e387dc533142f0f702c04092da297e8dfc9b51e4ec7001e6e657d93a9a0f6382b1b39196f239190b8d52b8ecfa46a965627e503aaecdab86e59272af84bbc2c6' + '6f757385a23fe6a034f676df6bf233243afa8743761e3d715e532d066fcd7dc8f8dcd6192be693258f3855837e5534490784378768abe7ce710fb869258d49b7' + 'd506d50897c164ee87e860e97a25b6725f1e724cad74cbd79cb8ac4cd68ef6dfb42bcd8dcf954112340d9b943b8d1d34bf166b2ca958f0045d6f7298954fbf20' + 'f50bc2d6ff9859bdbc9122be558a7119d693687424260bf90663e594223a9247f5a3f24a490e3345f5e9b8c6501446da752e51d4b63a35531e37c20cbc9456ab' + '4f940afa1f6628a47faf6eb13116eab384bda05c841b0b286b18cafad9c4b567ef332a301b8fbdf07259acdf8f6bdb452487e086bce2a3f092daa4e9d9daefa6' + 'e20e97722e0daf48b97df540added603325d356c6597634afd694af3972bb62952dd0f92c10d98f8c9f28eb9d089f6f5b022e0beb8c6224e32fd2cfaadffa200' + '7e11e29dde260f0245bc25eeb811d794515d1c523b42ea6004c7c6a2eda19b9de4dd7a8ecc03e5ff7d376e28a96c6f1b2b922d6b8b3963a9e4746231f3c257f4' + 'cb51b1ff5c1bc4a3acc8d4bb60c92cd74dec1b76799f00f542e793b1407964c00cfbda8153703e40a64d1cf89705d6ba16a4c11e7ca9a304eb3a14355546e5eb' + '27d45a25a6a51415af609a4fdefcb7c95a1105d511a6e18e2a7464e9d3773ba2ccb25f138a3cc6ddc6e5e9c558b633ee60d273cebf562c2a7d1e99d3f229d1ba' + '48875d7e08d669637e26a7e800f8b2a3812d477e6f249c8d4962fdf93ba6d346f5b22b83d82cb65317b506dff84c441d42c0fe7d1c042a065619d39bdf25fdd0' + 'a788d57fe0fb9ae6106381d2a8fe566aa35bb037012139dc7c283fe5eb316056835dffa9ea9778c15a5b39e50a75329a135a0dffdfc6a53d575ef2013b1d478a' + 'd86aba51101fdbe855c35f034d33d65a79c5c707d01de4709619f5d1316185777048b72c293f9506186677bcecf54a808e106ad59bb36835ef80615641c85d63' + 'fc1f4246b6974c3c554aed1127f512f0b2ac8fa13aff7c3b54877411e15856522e35633c45b2326d96b5094a9106d697a0883c1879af2c616d9dd51180b6887b') + +sha256sums=(036d96991646d0449ed0aa952e4fbe21b476ce994abc276e49d30e686708bd37 # unzip60.tar.gz +2c55be12907c42a454b91f53de92470d4f5d52e9ba7b0eef79684bd58efd4a1e # unzip-6.0-exec-shield.patch +10754a10be46ee8e7b9f84935e7f2087a99abd0a00dff77f97181c8fd71e0eef # unzip-6.0-close.patch +74bc961e8013a4058687a3730590a709b7889203beb74a4a8369ba0301bef0e2 # unzip-6.0-attribs-overflow.patch +fde8f9d6dbc5e9dc59f4497de8e4e313fd74318eaf5f33421acd74442fd10706 # unzip-6.0-symlink.patch +8d9426bdd98cbba00c2d2e36c1dae17da069e6c85bf35811a434a8cbe704e6f4 # unzip-6.0-format-secure.patch +da042334a1ae4a37ea0317ff27cee9eadd0af1529bd8391cde34467a377a4068 # unzip-6.0-valgrind.patch +3007d6995eeec7fce12a41b4d37ef309ffe74cae86f952071e4653a1751f0190 # unzip-6.0-x-option.patch +c9a863e570bdaf2637c43bf1bba3d97808a1b0504d85418f6a8550ac286788f2 # unzip-6.0-overflow.patch +337131428f491b7030f96ee5b8ef3d8f5963730d1619b2754c624f4616d79adb # unzip-6.0-cve-2014-8139.patch +64f64985270e026c01d2c19c6b66c218cf5bcfc7cf3d4a44e601fad41975ec73 # unzip-6.0-cve-2014-8140.patch +b7a14c33db93d1e5b4fc6ce113b4b99ff7a81ed56f46c87e001f22ec085e0273 # unzip-6.0-cve-2014-8141.patch +251d5755ffb1e9701434c545fcda0fbfc2a16372f9d807fd07606b1364a1b55b # unzip-6.0-overflow-long-fsize.patch +b6f64d7b57e74ceaa794dd13a6937f063ec915343f3d5d88b0f81c919e7bf171 # unzip-6.0-heap-overflow-infloop.patch +e64c9ddb38c2e7d08bdb80c597f32ee960e18fbe8cb982e444b1ece03ac95cec # unzip-6.0-alt-iconv-utf8.patch +b990d8d8d8e02777999484a132170666ea736a865f9ad81da651dc63725475ff # unzip-6.0-alt-iconv-utf8-print.patch +7d8e5c77ad99f9bf56d4cbf224b5635367feb44f81745dec84b44365f8f5eb16 # 0001-Fix-CVE-2016-9844-rhbz-1404283.patch +ea04cfc8b7ca3b3c03117da0d891870b8c542d26188ef5593fd7e479f4f29f4e # unzip-6.0-timestamp.patch +aced0f27191a67f9b8b3fdc5995938a64fd87cea64a0bbba2106e06137ef91c2 # unzip-6.0-cve-2018-1000035-heap-based-overflow.patch +47e9deff12845e71de98cd19506a51c21d756a61bb67c0b17e77b84bdbe9fb84 # unzip-6.0-cve-2018-18384.patch +866b8fc05731e4cf72f948c9540c3eb8b2372bf320442456b5b3ae9b74f0827c # unzip-6.0-COVSCAN-fix-unterminated-string.patch +24582ff3dcd926d1a46caf8506f76999d2525dd66e36f50b25dca50799695f12 # unzip-zipbomb-part1.patch +f88b9d4119a1e256f3335a2d2c142dd95d13d7c5f9e5ecd4371e547249f3557c # unzip-zipbomb-part2.patch +ee9e26018190a515572b66a26118916843aa1002131a86b5c52769dc663b7acb # unzip-zipbomb-part3.patch +ec4a8e5745e37f3d2d57c594c610b71753b77c5fb4bd92edfb0fb25ef968d13e # unzip-zipbomb-manpage.patch +179330daaf395b631025d23ec666c227707caa8859a872cc39d3ea0e2a645e97 # unzip-zipbomb-part4.patch +44599c80ea507c1fcfb8fb58b4c9d8d18f3157de453c1e0469a703322deb042a # unzip-zipbomb-part5.patch +81ca46cfd3cf732de8cf78c57790ed7d5c73a5e8d41943b8f6313cede6004f3e # unzip-zipbomb-part6.patch +59c0983b53801d3080684bc616d3570ccacfe471f3a8c442916b87f2f3bfa334 # unzip-zipbomb-switch.patch +cb88ba5a2c9bdffd5867206a48841f638e2a7970e88cc009b90202bdca988b8b) # unzip-6.0_CVE-2021-4217.patch diff --git a/unzip/PKGBUILD-arch b/unzip/PKGBUILD-arch new file mode 100644 index 0000000..252dfc9 --- /dev/null +++ b/unzip/PKGBUILD-arch @@ -0,0 +1,128 @@ +# Maintainer: Lukas Fleischer +# Contributor: Gaetan Bisson +# Contributor: Douglas Soares de Andrade +# Contributor: Robson Peixoto + +pkgname=unzip +pkgver=6.0 +_pkgver=${pkgver/./} +pkgrel=18 +pkgdesc='For extracting and viewing files in .zip archives' +url='http://infozip.sourceforge.net/UnZip.html' +arch=('x86_64') +license=('custom') +depends=('bzip2' 'bash') +source=("https://downloads.sourceforge.net/infozip/${pkgname}${_pkgver}.tar.gz" + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-exec-shield.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-close.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-attribs-overflow.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-symlink.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-format-secure.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-valgrind.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-x-option.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-overflow.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-cve-2014-8139.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-cve-2014-8140.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-cve-2014-8141.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-overflow-long-fsize.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-heap-overflow-infloop.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-alt-iconv-utf8.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-alt-iconv-utf8-print.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/0001-Fix-CVE-2016-9844-rhbz-1404283.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-timestamp.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-cve-2018-1000035-heap-based-overflow.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-cve-2018-18384.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-6.0-COVSCAN-fix-unterminated-string.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-zipbomb-part1.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-zipbomb-part2.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-zipbomb-part3.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-zipbomb-manpage.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-zipbomb-part4.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-zipbomb-part5.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-zipbomb-part6.patch' + 'https://src.fedoraproject.org/rpms/unzip/raw/rawhide/f/unzip-zipbomb-switch.patch' + 'unzip-6.0_CVE-2021-4217.patch') +sha512sums=('0694e403ebc57b37218e00ec1a406cae5cc9c5b52b6798e0d4590840b6cdbf9ddc0d9471f67af783e960f8fa2e620394d51384257dca23d06bcd90224a80ce5d' + '3c7f525687b198aaa8547a8b30e744f7f184943624279d5c70170d5b9bb3f0c0f27f3e69bc808dd0d144690107bc76a10c06e160bf99c54fd5684246208b7cff' + '8423e32bbc1e1fe9366118bd10795bb8307f5a9a1afba1f0f62e46443d198b7f3cfcc41dedf57f31830f4c7328c9f5ae573982ca8664822b5f2a2ecdbc389df9' + '0aea88ccb4e141f4b23559a6802d0ceccaf4897addbe9d4ec465909ddf5f910a44d5e7907c815211e4b086cbd73c200c9b972f197a256e44f74468e3909928c9' + 'a3be30ce8c9eb903db636e786bea4e0c12ecb3f63af16eeac819f0b11db6984dfd93133fdbba2fdce228f5f57283973f64e3e3a81ec28cf46ea2e0b7593046d2' + '94560c730437ac2561d5e7550b91688dad1b828e1da96c9477e228e17b37e455ecdcd3a774e7db94dd902bbe12547d910602c0656b803768e5865b045d452dd7' + '8e1e3c88ff4191c325696984a52df50ba70ec0d0e68938ba06bbcdf9de96c0a26c9802db28b762bd14bc1a5c1c7d33d67e1cce91a3e44c92f3bb90509ea0f15f' + 'ec09ee6017fed66ebae2921b50fb7419eed627d49e78a3a072bec7256841e7829b6a3121f776a1ccc5d2cc3589006902465d73c28b3bd0937b9c3417ab0a0446' + '7e5274db1d0e9b1db87ce543ddb4edea67cea193ee5394a5a46f3813169c33508cbea96cc0ce88eb4ffc64b21df02c18724d0fe8f7d2814954233f646c386b3a' + '217a923ff8101823d7555c5999e63b2be0bb5898911f0f39dd46c85c69ce2e59c29135e69b5cbb084f40b5beb8dc52e1b47d3b21cd801ebb06dc08984c85f292' + 'a23f48924852046500547921f7b52e861a75dc2521f184fba87b3ff338c9d0598e8493f2a3c8eb1cb80412e0d057fb4b3c21e457f7295c8c8158d821709fb000' + '5969a2de0e11d00dfb690f67b1ae96d7a4f587a1cf3dd80572f5e10ba970a69958f04bb826a49338fc93204a3cb7aeb34bf735a681383f8e89691d09a7b26cce' + '6b37c1e72bea789051624c72c0aaa0522f4eecf83e82efb1d9c1844536903ed253b7448bea4a6e6aa116be86a50cad6911a0e218eacb8e5bee27a4457145b03f' + 'b0b745cff474756447e699a13ff003871b33a4f7a24a91150e5a947eba5132fd90fbacf7580379fc13c5f638483b25cbc226f85b9cac9c7662b2f91927eb2bb3' + 'a00e41feede53d42e0eb03d8280664b2a904918fab3c52459d02c07a298dd12e482eb3318c1842933ac3a527308dc5e4871f029b6b79e5bc2b2e1d84fee4fd0f' + '48e6c143eb55aad68d49b6dab640f824b88eaeadfb35e4962199b833e8e7adc87ded7bf8846ee43e1b4974e883fdc6b1d1f558eb72705d0c7af0455ee1ffccbb' + 'b73fde8e3568ccb8d26a787ac27127f87625dec372fa0ccaafd1266ddaaee46f9767bb67e874574cb27ec13fd3c90195e60be719b9996a7c5e194da7bf700c97' + 'e387dc533142f0f702c04092da297e8dfc9b51e4ec7001e6e657d93a9a0f6382b1b39196f239190b8d52b8ecfa46a965627e503aaecdab86e59272af84bbc2c6' + '6f757385a23fe6a034f676df6bf233243afa8743761e3d715e532d066fcd7dc8f8dcd6192be693258f3855837e5534490784378768abe7ce710fb869258d49b7' + 'd506d50897c164ee87e860e97a25b6725f1e724cad74cbd79cb8ac4cd68ef6dfb42bcd8dcf954112340d9b943b8d1d34bf166b2ca958f0045d6f7298954fbf20' + 'f50bc2d6ff9859bdbc9122be558a7119d693687424260bf90663e594223a9247f5a3f24a490e3345f5e9b8c6501446da752e51d4b63a35531e37c20cbc9456ab' + '4f940afa1f6628a47faf6eb13116eab384bda05c841b0b286b18cafad9c4b567ef332a301b8fbdf07259acdf8f6bdb452487e086bce2a3f092daa4e9d9daefa6' + 'e20e97722e0daf48b97df540added603325d356c6597634afd694af3972bb62952dd0f92c10d98f8c9f28eb9d089f6f5b022e0beb8c6224e32fd2cfaadffa200' + '7e11e29dde260f0245bc25eeb811d794515d1c523b42ea6004c7c6a2eda19b9de4dd7a8ecc03e5ff7d376e28a96c6f1b2b922d6b8b3963a9e4746231f3c257f4' + 'cb51b1ff5c1bc4a3acc8d4bb60c92cd74dec1b76799f00f542e793b1407964c00cfbda8153703e40a64d1cf89705d6ba16a4c11e7ca9a304eb3a14355546e5eb' + '27d45a25a6a51415af609a4fdefcb7c95a1105d511a6e18e2a7464e9d3773ba2ccb25f138a3cc6ddc6e5e9c558b633ee60d273cebf562c2a7d1e99d3f229d1ba' + '48875d7e08d669637e26a7e800f8b2a3812d477e6f249c8d4962fdf93ba6d346f5b22b83d82cb65317b506dff84c441d42c0fe7d1c042a065619d39bdf25fdd0' + 'a788d57fe0fb9ae6106381d2a8fe566aa35bb037012139dc7c283fe5eb316056835dffa9ea9778c15a5b39e50a75329a135a0dffdfc6a53d575ef2013b1d478a' + 'd86aba51101fdbe855c35f034d33d65a79c5c707d01de4709619f5d1316185777048b72c293f9506186677bcecf54a808e106ad59bb36835ef80615641c85d63' + 'fc1f4246b6974c3c554aed1127f512f0b2ac8fa13aff7c3b54877411e15856522e35633c45b2326d96b5094a9106d697a0883c1879af2c616d9dd51180b6887b') + +prepare() { + cd "${srcdir}/${pkgname}${_pkgver}" + sed -i "/MANDIR =/s#)/#)/share/#" unix/Makefile + patch -p1 -i ../unzip-6.0-exec-shield.patch + patch -p1 -i ../unzip-6.0-close.patch + patch -p1 -i ../unzip-6.0-attribs-overflow.patch + patch -p1 -i ../unzip-6.0-symlink.patch # FS#60433 + patch -p1 -i ../unzip-6.0-format-secure.patch + patch -p1 -i ../unzip-6.0-valgrind.patch + patch -p1 -i ../unzip-6.0-x-option.patch + patch -p1 -i ../unzip-6.0-overflow.patch # FS#44171 + patch -p1 -i ../unzip-6.0-cve-2014-8139.patch # FS#43300 + patch -p1 -i ../unzip-6.0-cve-2014-8140.patch # FS#43391 + patch -p1 -i ../unzip-6.0-cve-2014-8141.patch # FS#43300 + patch -p1 -i ../unzip-6.0-overflow-long-fsize.patch # FS#44171 + patch -p1 -i ../unzip-6.0-heap-overflow-infloop.patch # FS#46955 + patch -p1 -i ../unzip-6.0-alt-iconv-utf8.patch + patch -p1 -i ../unzip-6.0-alt-iconv-utf8-print.patch + patch -p1 -i ../0001-Fix-CVE-2016-9844-rhbz-1404283.patch + patch -p1 -i ../unzip-6.0-timestamp.patch + patch -p1 -i ../unzip-6.0-cve-2018-1000035-heap-based-overflow.patch # FS#69739 + patch -p1 -i ../unzip-6.0-cve-2018-18384.patch + patch -p1 -i ../unzip-6.0-COVSCAN-fix-unterminated-string.patch + patch -p1 -i ../unzip-zipbomb-part1.patch + patch -p1 -i ../unzip-zipbomb-part2.patch + patch -p1 -i ../unzip-zipbomb-part3.patch + patch -p1 -i ../unzip-zipbomb-manpage.patch + patch -p1 -i ../unzip-zipbomb-part4.patch + patch -p1 -i ../unzip-zipbomb-part5.patch + patch -p1 -i ../unzip-zipbomb-part6.patch + patch -p1 -i ../unzip-zipbomb-switch.patch + patch -p1 -i ../unzip-6.0_CVE-2021-4217.patch # FS#73542 +} + +build() { + cd "${srcdir}/${pkgname}${_pkgver}" + + # DEFINES, make, and install args from Debian + DEFINES='-DACORN_FTYPE_NFS -DWILD_STOP_AT_DIR -DLARGE_FILE_SUPPORT \ + -DUNICODE_SUPPORT -DUNICODE_WCHAR -DUTF8_MAYBE_NATIVE -DNO_LCHMOD \ + -DDATE_FORMAT=DF_YMD -DUSE_BZIP2 -DNOMEMCPY -DNO_WORKING_ISPRINT' + + make -f unix/Makefile prefix=/usr \ + D_USE_BZ2=-DUSE_BZIP2 L_BZ2=-lbz2 \ + LF2="$LDFLAGS" CF="$CFLAGS $CPPFLAGS -I. $DEFINES" \ + unzips +} + +package() { + cd "${srcdir}/${pkgname}${_pkgver}" + make -f unix/Makefile prefix="${pkgdir}"/usr install + install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} diff --git a/unzip/clean b/unzip/clean new file mode 100644 index 0000000..7528f6f --- /dev/null +++ b/unzip/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,unzip-6.0-exec-shield.patch,unzip-6.0-close.patch,unzip-6.0-attribs-overflow.patch,unzip-6.0-symlink.patch,unzip-6.0-format-secure.patch,unzip-6.0-valgrind.patch,unzip-6.0-x-option.patch,unzip-6.0-overflow.patch,unzip-6.0-cve-2014-8139.patch,unzip-6.0-cve-2014-8140.patch,unzip-6.0-cve-2014-8141.patch,unzip-6.0-overflow-long-fsize.patch,unzip-6.0-heap-overflow-infloop.patch,unzip-6.0-alt-iconv-utf8.patch,unzip-6.0-alt-iconv-utf8-print.patch,0001-Fix-CVE-2016-9844-rhbz-1404283.patch,unzip-6.0-timestamp.patch,unzip-6.0-cve-2018-1000035-heap-based-overflow.patch,unzip-6.0-cve-2018-18384.patch,unzip-6.0-COVSCAN-fix-unterminated-string.patch,unzip-zipbomb-part1.patch,unzip-zipbomb-part2.patch,unzip-zipbomb-part3.patch,unzip-zipbomb-manpage.patch,unzip-zipbomb-part4.patch,unzip-zipbomb-part5.patch,unzip-zipbomb-part6.patch,unzip-zipbomb-switch.patch,unzip*tar.gz} diff --git a/unzip/deps b/unzip/deps new file mode 100644 index 0000000..8d1c8b6 --- /dev/null +++ b/unzip/deps @@ -0,0 +1 @@ + diff --git a/unzip/sums b/unzip/sums new file mode 100644 index 0000000..b5e1175 --- /dev/null +++ b/unzip/sums @@ -0,0 +1,30 @@ +unzip60.tar.gz +unzip-6.0-exec-shield.patch +unzip-6.0-close.patch +unzip-6.0-attribs-overflow.patch +unzip-6.0-symlink.patch +unzip-6.0-format-secure.patch +unzip-6.0-valgrind.patch +unzip-6.0-x-option.patch +unzip-6.0-overflow.patch +unzip-6.0-cve-2014-8139.patch +unzip-6.0-cve-2014-8140.patch +unzip-6.0-cve-2014-8141.patch +unzip-6.0-overflow-long-fsize.patch +unzip-6.0-heap-overflow-infloop.patch +unzip-6.0-alt-iconv-utf8.patch +unzip-6.0-alt-iconv-utf8-print.patch +0001-Fix-CVE-2016-9844-rhbz-1404283.patch +unzip-6.0-timestamp.patch +unzip-6.0-cve-2018-1000035-heap-based-overflow.patch +unzip-6.0-cve-2018-18384.patch +unzip-6.0-COVSCAN-fix-unterminated-string.patch +unzip-zipbomb-part1.patch +unzip-zipbomb-part2.patch +unzip-zipbomb-part3.patch +unzip-zipbomb-manpage.patch +unzip-zipbomb-part4.patch +unzip-zipbomb-part5.patch +unzip-zipbomb-part6.patch +unzip-zipbomb-switch.patch +unzip-6.0_CVE-2021-4217.patch diff --git a/unzip/time b/unzip/time new file mode 100644 index 0000000..8cbb302 --- /dev/null +++ b/unzip/time @@ -0,0 +1,5 @@ + +real 0m6.737s +user 0m13.380s +sys 0m1.181s + diff --git a/unzip/unzip-6.0_CVE-2021-4217.patch b/unzip/unzip-6.0_CVE-2021-4217.patch new file mode 100644 index 0000000..37b83cc --- /dev/null +++ b/unzip/unzip-6.0_CVE-2021-4217.patch @@ -0,0 +1,19 @@ +diff --git a/process.c b/process.c +index d2a846e..cba2463 100644 +--- a/process.c ++++ b/process.c +@@ -2064,10 +2064,14 @@ int getUnicodeData(__G__ ef_buf, ef_len) + G.unipath_checksum = makelong(offset + ef_buf); + offset += 4; + ++ if (!G.filename_full) { ++ /* Check if we have a unicode extra section but no filename set */ ++ return PK_ERR; ++ } ++ + /* + * Compute 32-bit crc + */ +- + chksum = crc32(chksum, (uch *)(G.filename_full), + strlen(G.filename_full)); diff --git a/vala/PKGBUILD b/vala/PKGBUILD new file mode 100644 index 0000000..401d967 --- /dev/null +++ b/vala/PKGBUILD @@ -0,0 +1,54 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=vala +pkgver=0.54.7 +pkgrel=01 +pkgdesc='Compiler for the GObject type system' +url='https://wiki.gnome.org/Projects/Vala' +arch=(x86_64) +depends=(glib2 gtk-doc graphviz ttf-liberation pkg-config gcc) +makedepends=(libxslt vala git help2man autoconf-archive) +checkdepends=(dbus libx11 gobject-introspection) +provides=(valadoc libvala-${pkgver%.*}.so libvaladoc-${pkgver%.*}.so) +conflicts=(valadoc) +replaces=(valadoc) +_commit=1a4aac8f53b388220bf291f0814e0724e003dca8 # tags/0.54.7^0 +source=("git+https://gitlab.gnome.org/GNOME/vala.git#commit=$_commit") + +pkgver() { + cd vala + git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g' +} + +prepare() { + cd vala + NOCONFIGURE=1 ./autogen.sh +} + +build() { + cd vala + ./configure --prefix=/usr + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +check() { + cd vala + make check +} + +package() { + cd vala + make DESTDIR="$pkgdir" install +} + +#---- license gpg-key sha256sums ---- + +license=(LGPL) + +sha256sums=('SKIP') diff --git a/vala/PKGBUILD-arch b/vala/PKGBUILD-arch new file mode 100644 index 0000000..e5bc917 --- /dev/null +++ b/vala/PKGBUILD-arch @@ -0,0 +1,50 @@ +# Maintainer: Levente Polyak +# Maintainer: Jan Alexander Steffens (heftig) +# Contributor: Ionut Biru +# Contributor: Timm Preetz + +pkgname=vala +pkgver=0.54.7 +pkgrel=1 +pkgdesc='Compiler for the GObject type system' +url='https://wiki.gnome.org/Projects/Vala' +arch=(x86_64) +license=(LGPL) +depends=(glib2 gtk-doc graphviz ttf-font pkg-config gcc) +makedepends=(libxslt vala git help2man autoconf-archive) +checkdepends=(dbus libx11 gobject-introspection) +provides=(valadoc libvala-${pkgver%.*}.so libvaladoc-${pkgver%.*}.so) +conflicts=(valadoc) +replaces=(valadoc) +_commit=1a4aac8f53b388220bf291f0814e0724e003dca8 # tags/0.54.7^0 +source=("git+https://gitlab.gnome.org/GNOME/vala.git#commit=$_commit") +sha256sums=('SKIP') + +pkgver() { + cd vala + git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g' +} + +prepare() { + cd vala + NOCONFIGURE=1 ./autogen.sh +} + +build() { + cd vala + ./configure --prefix=/usr + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +check() { + cd vala + make check +} + +package() { + cd vala + make DESTDIR="$pkgdir" install +} + +# vim:set sw=2 et: diff --git a/vala/clean b/vala/clean new file mode 100644 index 0000000..f07fb0a --- /dev/null +++ b/vala/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,vala} diff --git a/vala/deps b/vala/deps new file mode 100644 index 0000000..684a3e1 --- /dev/null +++ b/vala/deps @@ -0,0 +1,12 @@ +gtk-doc +graphviz +ttf-liberation +libxslt +vala +git +help2man +autoconf-archive +libx11 +gobject-introspection +automake +bison byacc diff --git a/vala/time b/vala/time new file mode 100644 index 0000000..6822754 --- /dev/null +++ b/vala/time @@ -0,0 +1,5 @@ + +real 5m49.747s +user 15m7.076s +sys 1m40.234s + diff --git a/valgrind/PKGBUILD b/valgrind/PKGBUILD new file mode 100644 index 0000000..2d565e1 --- /dev/null +++ b/valgrind/PKGBUILD @@ -0,0 +1,126 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=valgrind +pkgver=3.18.1 +pkgrel=03 +pkgdesc='Tool to help find memory-management problems in programs' +arch=('x86_64') +url='http://valgrind.org/' +depends=('glibc' 'perl') +makedepends=('gdb' 'lib32-glibc' 'lib32-gcc-libs' 'docbook-xml' + 'docbook-xsl' 'docbook-sgml') +checkdepends=('procps-ng') +optdepends=('lib32-glibc: 32-bit ABI support') +provides=('valgrind-multilib') +replaces=('valgrind-multilib') +options=('!emptydirs' '!strip') +source=(https://sourceware.org/pub/valgrind/valgrind-${pkgver}.tar.bz2{,.asc} + valgrind-3.7.0-respect-flags.patch + valgrind-3.18.1-glibc-2.35.patch) + +options=(!lto) # https://bugs.kde.org/show_bug.cgi?id=338252 + +prepare() { + cd valgrind-${pkgver} + patch -Np1 < ../valgrind-3.7.0-respect-flags.patch + sed -i 's|sgml/docbook/xsl-stylesheets|xml/docbook/xsl-stylesheets-1.79.2-nons|' docs/Makefile.am + + # https://sourceware.org/git/?p=valgrind.git;a=commitdiff;h=1024237358 + patch -p1 -i "${srcdir}"/valgrind-3.18.1-glibc-2.35.patch + + autoreconf -ifv +} + +build() { + # valgrind does not like some of our flags + CPPFLAGS=${CPPFLAGS/-D_FORTIFY_SOURCE=2/} + CFLAGS=${CFLAGS/-fno-plt/} + CXXFLAGS=${CXXFLAGS/-fno-plt/} + + cd valgrind-${pkgver} + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --libexecdir=/usr/lib \ + --mandir=/usr/share/man + make + make -C docs man-pages +} + +check() { + cd valgrind-${pkgver} + + # Make sure a basic binary runs. There should be no errors. + ./vg-in-place --error-exitcode=1 /bin/true + + # Make sure no extra FLAGS leak through, the testsuite + # sets all flags necessary. See also configure above. + make check CPPFLAGS= CFLAGS= CXXFLAGS= LDFLAGS= + + # XXX: run full regtest but only report issues some tests fail duo + # current toolchain and expectations, take a manual look if its fine + #echo "===============TESTING===================" + #make regtest || true + + # Make sure test failures show up in build.log + # Gather up the diffs (at most the first 20 lines for each one) + #local f max_lines=20 diff_files=() + #mapfile -d '' diff_files < <(find . -name '*.diff' -print0 | sort -z) + #if (( ${#diff_files[@]} == 0 )); then + #echo "Congratulations, all tests passed!" + #else + #warning "Some tests failed!" + #for f in "${diff_files[@]}"; do + #echo "=================================================" + #echo "${f}" + #echo "=================================================" + #if (( $(wc -l < "${f}") < ${max_lines} )); then + #cat "${f}" + #else + #head -n ${max_lines} "${f}" + #echo "" + #fi + #done | tee diffs + #fi + #echo "===============END TESTING===============" +} + +package() { + cd valgrind-${pkgver} + make DESTDIR="${pkgdir}" install + + install -Dm644 docs/*.1 -t "$pkgdir/usr/share/man/man1" + + if check_option 'debug' n; then + find "${pkgdir}/usr/bin" -type f -executable -exec strip $STRIP_BINARIES {} + || : + fi +} + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +validpgpkeys=( + 0E9FFD0C16A1856CF9C7C690BA0166E698FA6035 # Julian Seward + EC3CFE88F6CA0788774F5C1D1AA44BE649DE760A # Mark Wielaard +) + +sha512sums=('a03b5cd7eafab4a1cea07f46464c1546ae1cb3d106649626b1e55658badf90e58d1f3854a38a33d5dffd8237f5555ae7e1f27a4b40e06254f87825c7fc61b59b' + 'SKIP' + 'e0cec39381cefeca09ae4794cca309dfac7c8693e6315e137e64f5c33684598726d41cfbb4edf764fe985503b13ff596184ca5fc32b159d500ec092e4cf8838c' + '7ea1bb314c9da0cc7ad5779facb953ece38ae2c9a541d1af1fd044eb01f44c51acbdfc9cc1667ad96ed21475d35b3416884011eecd2ceab97126d5123c2827f9') + +b2sums=('a98322e4c12ae1bc495659217bd398b85e459288e775ba5f543b9ce1faa5bdfc17791178c0e7b9703a31588cc4c7cbde814b7a43b2ec76e7362e2aeeb100d935' + 'SKIP' + 'af556fdf3c02e37892bfe9afebc954cf2f1b2fa9b75c1caacfa9f3b456ebc02bf078475f9ee30079b3af5d150d41415a947c3d04235c1ea8412cf92b959c484a' + '2fd0865716de0690cdc468f1cb81fa5b830be450525c46e97821d263d0547158aee6ab3c954081564b3821e47143e01d9f9b07f9589e2000bd02132ef5e9de97') + +sha256sums=(00859aa13a772eddf7822225f4b46ee0d39afbe071d32778da4d99984081f7f5 # valgrind-3.18.1.tar.bz2 + b81173e5bf6580ad52d2c98b0a3c937cf467a703bf049686d15a6397535a063d # valgrind-3.18.1.tar.bz2.asc + 4e6be3a1799c17a6e843ab1966a3a68ac0ffa83d4b2230ce1b607518c42a31a2 # valgrind-3.7.0-respect-flags.patch + 8be6cad05e4bdf3e10e1faf10f02d761c86a2104b3c587c279beb1c3f96b675d) # valgrind-3.18.1-glibc-2.35.patch diff --git a/valgrind/PKGBUILD-arch b/valgrind/PKGBUILD-arch new file mode 100644 index 0000000..3f63c5e --- /dev/null +++ b/valgrind/PKGBUILD-arch @@ -0,0 +1,114 @@ +# Maintainer: Levente Polyak +# Contributor: Dan McGee +# Contributor: Allan McRae + +pkgname=valgrind +pkgver=3.18.1 +pkgrel=3 +pkgdesc='Tool to help find memory-management problems in programs' +arch=('x86_64') +license=('GPL') +url='http://valgrind.org/' +depends=('glibc' 'perl') +makedepends=('gdb' 'lib32-glibc' 'lib32-gcc-libs' 'docbook-xml' + 'docbook-xsl' 'docbook-sgml') +checkdepends=('procps-ng') +optdepends=('lib32-glibc: 32-bit ABI support') +provides=('valgrind-multilib') +replaces=('valgrind-multilib') +options=('!emptydirs' '!strip') +source=(https://sourceware.org/pub/valgrind/valgrind-${pkgver}.tar.bz2{,.asc} + valgrind-3.7.0-respect-flags.patch + valgrind-3.18.1-glibc-2.35.patch) +validpgpkeys=( + 0E9FFD0C16A1856CF9C7C690BA0166E698FA6035 # Julian Seward + EC3CFE88F6CA0788774F5C1D1AA44BE649DE760A # Mark Wielaard +) +sha512sums=('a03b5cd7eafab4a1cea07f46464c1546ae1cb3d106649626b1e55658badf90e58d1f3854a38a33d5dffd8237f5555ae7e1f27a4b40e06254f87825c7fc61b59b' + 'SKIP' + 'e0cec39381cefeca09ae4794cca309dfac7c8693e6315e137e64f5c33684598726d41cfbb4edf764fe985503b13ff596184ca5fc32b159d500ec092e4cf8838c' + '7ea1bb314c9da0cc7ad5779facb953ece38ae2c9a541d1af1fd044eb01f44c51acbdfc9cc1667ad96ed21475d35b3416884011eecd2ceab97126d5123c2827f9') +b2sums=('a98322e4c12ae1bc495659217bd398b85e459288e775ba5f543b9ce1faa5bdfc17791178c0e7b9703a31588cc4c7cbde814b7a43b2ec76e7362e2aeeb100d935' + 'SKIP' + 'af556fdf3c02e37892bfe9afebc954cf2f1b2fa9b75c1caacfa9f3b456ebc02bf078475f9ee30079b3af5d150d41415a947c3d04235c1ea8412cf92b959c484a' + '2fd0865716de0690cdc468f1cb81fa5b830be450525c46e97821d263d0547158aee6ab3c954081564b3821e47143e01d9f9b07f9589e2000bd02132ef5e9de97') +options=(!lto) # https://bugs.kde.org/show_bug.cgi?id=338252 + +prepare() { + cd valgrind-${pkgver} + patch -Np1 < ../valgrind-3.7.0-respect-flags.patch + sed -i 's|sgml/docbook/xsl-stylesheets|xml/docbook/xsl-stylesheets-1.79.2-nons|' docs/Makefile.am + + # https://sourceware.org/git/?p=valgrind.git;a=commitdiff;h=1024237358 + patch -p1 -i "${srcdir}"/valgrind-3.18.1-glibc-2.35.patch + + autoreconf -ifv +} + +build() { + # valgrind does not like some of our flags + CPPFLAGS=${CPPFLAGS/-D_FORTIFY_SOURCE=2/} + CFLAGS=${CFLAGS/-fno-plt/} + CXXFLAGS=${CXXFLAGS/-fno-plt/} + + cd valgrind-${pkgver} + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --libexecdir=/usr/lib \ + --mandir=/usr/share/man + make + make -C docs man-pages +} + +check() { + cd valgrind-${pkgver} + + # Make sure a basic binary runs. There should be no errors. + ./vg-in-place --error-exitcode=1 /bin/true + + # Make sure no extra FLAGS leak through, the testsuite + # sets all flags necessary. See also configure above. + make check CPPFLAGS= CFLAGS= CXXFLAGS= LDFLAGS= + + # XXX: run full regtest but only report issues some tests fail duo + # current toolchain and expectations, take a manual look if its fine + #echo "===============TESTING===================" + #make regtest || true + + # Make sure test failures show up in build.log + # Gather up the diffs (at most the first 20 lines for each one) + #local f max_lines=20 diff_files=() + #mapfile -d '' diff_files < <(find . -name '*.diff' -print0 | sort -z) + #if (( ${#diff_files[@]} == 0 )); then + #echo "Congratulations, all tests passed!" + #else + #warning "Some tests failed!" + #for f in "${diff_files[@]}"; do + #echo "=================================================" + #echo "${f}" + #echo "=================================================" + #if (( $(wc -l < "${f}") < ${max_lines} )); then + #cat "${f}" + #else + #head -n ${max_lines} "${f}" + #echo "" + #fi + #done | tee diffs + #fi + #echo "===============END TESTING===============" +} + +package() { + cd valgrind-${pkgver} + make DESTDIR="${pkgdir}" install + + install -Dm644 docs/*.1 -t "$pkgdir/usr/share/man/man1" + + if check_option 'debug' n; then + find "${pkgdir}/usr/bin" -type f -executable -exec strip $STRIP_BINARIES {} + || : + fi +} + +# vim: ts=2 sw=2 et: diff --git a/valgrind/clean b/valgrind/clean new file mode 100644 index 0000000..65781ff --- /dev/null +++ b/valgrind/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,*tar.bz2*} diff --git a/valgrind/deps b/valgrind/deps new file mode 100644 index 0000000..33330d8 --- /dev/null +++ b/valgrind/deps @@ -0,0 +1,8 @@ +gdb +lib32-glibc +lib32-gcc-libs +docbook-xml +docbook-xsl +docbook-sgml +autoconf +automake diff --git a/valgrind/key b/valgrind/key new file mode 100644 index 0000000..aad35f3 --- /dev/null +++ b/valgrind/key @@ -0,0 +1 @@ +gpg -v --recv-key 1AA44BE649DE760A diff --git a/valgrind/time b/valgrind/time new file mode 100644 index 0000000..0d4f7ee --- /dev/null +++ b/valgrind/time @@ -0,0 +1,5 @@ + +real 4m17.683s +user 13m13.189s +sys 0m29.006s + diff --git a/valgrind/valgrind-3.18.1-glibc-2.35.patch b/valgrind/valgrind-3.18.1-glibc-2.35.patch new file mode 100644 index 0000000..5f64375 --- /dev/null +++ b/valgrind/valgrind-3.18.1-glibc-2.35.patch @@ -0,0 +1,196 @@ +From 1024237358f01009fe233cb1294f3b8211304eaa Mon Sep 17 00:00:00 2001 +From: Mark Wielaard +Date: Fri, 10 Dec 2021 17:41:59 +0100 +Subject: [PATCH] Implement linux rseq syscall as ENOSYS + +This implements rseq for amd64, arm, arm64, ppc32, ppc64, +s390x and x86 linux as ENOSYS (without warning). + +glibc will start using rseq to accelerate sched_getcpu, if +available. This would cause a warning from valgrind every +time a new thread is started. + +Real rseq (restartable sequences) support is pretty hard, so +for now just explicitly return ENOSYS (just like we do for clone3). + +https://sourceware.org/pipermail/libc-alpha/2021-December/133656.html +--- + coregrind/m_syswrap/syswrap-amd64-linux.c | 2 ++ + coregrind/m_syswrap/syswrap-arm-linux.c | 1 + + coregrind/m_syswrap/syswrap-arm64-linux.c | 3 ++- + coregrind/m_syswrap/syswrap-ppc32-linux.c | 2 ++ + coregrind/m_syswrap/syswrap-ppc64-linux.c | 2 ++ + coregrind/m_syswrap/syswrap-s390x-linux.c | 2 ++ + coregrind/m_syswrap/syswrap-x86-linux.c | 2 ++ + include/vki/vki-scnums-arm-linux.h | 1 + + include/vki/vki-scnums-arm64-linux.h | 4 +++- + include/vki/vki-scnums-ppc32-linux.h | 1 + + include/vki/vki-scnums-ppc64-linux.h | 1 + + include/vki/vki-scnums-s390x-linux.h | 5 ++++- + 12 files changed, 23 insertions(+), 3 deletions(-) + +diff --git a/coregrind/m_syswrap/syswrap-amd64-linux.c b/coregrind/m_syswrap/syswrap-amd64-linux.c +index 5062324a1e..18b25f80ae 100644 +--- a/coregrind/m_syswrap/syswrap-amd64-linux.c ++++ b/coregrind/m_syswrap/syswrap-amd64-linux.c +@@ -862,6 +862,8 @@ static SyscallTableEntry syscall_table[] = { + + LINXY(__NR_statx, sys_statx), // 332 + ++ GENX_(__NR_rseq, sys_ni_syscall), // 334 ++ + LINX_(__NR_membarrier, sys_membarrier), // 324 + + LINX_(__NR_copy_file_range, sys_copy_file_range), // 326 +diff --git a/coregrind/m_syswrap/syswrap-arm-linux.c b/coregrind/m_syswrap/syswrap-arm-linux.c +index 556dd844b9..d583cef0c7 100644 +--- a/coregrind/m_syswrap/syswrap-arm-linux.c ++++ b/coregrind/m_syswrap/syswrap-arm-linux.c +@@ -1024,6 +1024,7 @@ static SyscallTableEntry syscall_main_table[] = { + LINX_(__NR_pwritev2, sys_pwritev2), // 393 + + LINXY(__NR_statx, sys_statx), // 397 ++ GENX_(__NR_rseq, sys_ni_syscall), // 398 + + LINXY(__NR_clock_gettime64, sys_clock_gettime64), // 403 + LINX_(__NR_clock_settime64, sys_clock_settime64), // 404 +diff --git a/coregrind/m_syswrap/syswrap-arm64-linux.c b/coregrind/m_syswrap/syswrap-arm64-linux.c +index b871077276..2066a38ea9 100644 +--- a/coregrind/m_syswrap/syswrap-arm64-linux.c ++++ b/coregrind/m_syswrap/syswrap-arm64-linux.c +@@ -823,8 +823,9 @@ static SyscallTableEntry syscall_main_table[] = { + // (__NR_pkey_mprotect, sys_ni_syscall), // 288 + // (__NR_pkey_alloc, sys_ni_syscall), // 289 + // (__NR_pkey_free, sys_ni_syscall), // 290 ++ LINXY(__NR_statx, sys_statx), // 291 + +- LINXY(__NR_statx, sys_statx), // 397 ++ GENX_(__NR_rseq, sys_ni_syscall), // 293 + + LINXY(__NR_io_uring_setup, sys_io_uring_setup), // 425 + LINXY(__NR_io_uring_enter, sys_io_uring_enter), // 426 +diff --git a/coregrind/m_syswrap/syswrap-ppc32-linux.c b/coregrind/m_syswrap/syswrap-ppc32-linux.c +index 6263ab8451..637b2504e1 100644 +--- a/coregrind/m_syswrap/syswrap-ppc32-linux.c ++++ b/coregrind/m_syswrap/syswrap-ppc32-linux.c +@@ -1028,6 +1028,8 @@ static SyscallTableEntry syscall_table[] = { + + LINXY(__NR_statx, sys_statx), // 383 + ++ GENX_(__NR_rseq, sys_ni_syscall), // 387 ++ + LINXY(__NR_clock_gettime64, sys_clock_gettime64), // 403 + LINX_(__NR_clock_settime64, sys_clock_settime64), // 404 + +diff --git a/coregrind/m_syswrap/syswrap-ppc64-linux.c b/coregrind/m_syswrap/syswrap-ppc64-linux.c +index a26b41c321..93956d3cc2 100644 +--- a/coregrind/m_syswrap/syswrap-ppc64-linux.c ++++ b/coregrind/m_syswrap/syswrap-ppc64-linux.c +@@ -1019,6 +1019,8 @@ static SyscallTableEntry syscall_table[] = { + + LINXY(__NR_statx, sys_statx), // 383 + ++ GENX_(__NR_rseq, sys_ni_syscall), // 387 ++ + LINXY(__NR_io_uring_setup, sys_io_uring_setup), // 425 + LINXY(__NR_io_uring_enter, sys_io_uring_enter), // 426 + LINXY(__NR_io_uring_register, sys_io_uring_register), // 427 +diff --git a/coregrind/m_syswrap/syswrap-s390x-linux.c b/coregrind/m_syswrap/syswrap-s390x-linux.c +index 5c9209859f..73f9684c46 100644 +--- a/coregrind/m_syswrap/syswrap-s390x-linux.c ++++ b/coregrind/m_syswrap/syswrap-s390x-linux.c +@@ -860,6 +860,8 @@ static SyscallTableEntry syscall_table[] = { + + LINXY(__NR_statx, sys_statx), // 379 + ++ GENX_(__NR_rseq, sys_ni_syscall), // 381 ++ + LINXY(__NR_io_uring_setup, sys_io_uring_setup), // 425 + LINXY(__NR_io_uring_enter, sys_io_uring_enter), // 426 + LINXY(__NR_io_uring_register, sys_io_uring_register), // 427 +diff --git a/coregrind/m_syswrap/syswrap-x86-linux.c b/coregrind/m_syswrap/syswrap-x86-linux.c +index 1d8f45d33a..8662ff501a 100644 +--- a/coregrind/m_syswrap/syswrap-x86-linux.c ++++ b/coregrind/m_syswrap/syswrap-x86-linux.c +@@ -1619,6 +1619,8 @@ static SyscallTableEntry syscall_table[] = { + /* Explicitly not supported on i386 yet. */ + GENX_(__NR_arch_prctl, sys_ni_syscall), // 384 + ++ GENX_(__NR_rseq, sys_ni_syscall), // 386 ++ + LINXY(__NR_clock_gettime64, sys_clock_gettime64), // 403 + LINX_(__NR_clock_settime64, sys_clock_settime64), // 404 + +diff --git a/include/vki/vki-scnums-arm-linux.h b/include/vki/vki-scnums-arm-linux.h +index ff560e19dd..485db8b265 100644 +--- a/include/vki/vki-scnums-arm-linux.h ++++ b/include/vki/vki-scnums-arm-linux.h +@@ -432,6 +432,7 @@ + #define __NR_pkey_alloc 395 + #define __NR_pkey_free 396 + #define __NR_statx 397 ++#define __NR_rseq 398 + + + +diff --git a/include/vki/vki-scnums-arm64-linux.h b/include/vki/vki-scnums-arm64-linux.h +index 9aa3b2b5fb..acdfb39c68 100644 +--- a/include/vki/vki-scnums-arm64-linux.h ++++ b/include/vki/vki-scnums-arm64-linux.h +@@ -323,9 +323,11 @@ + #define __NR_pkey_alloc 289 + #define __NR_pkey_free 290 + #define __NR_statx 291 ++#define __NR_io_pgetevents 291 ++#define __NR_rseq 293 + + #undef __NR_syscalls +-#define __NR_syscalls 292 ++#define __NR_syscalls 294 + + ///* + // * All syscalls below here should go away really, +diff --git a/include/vki/vki-scnums-ppc32-linux.h b/include/vki/vki-scnums-ppc32-linux.h +index 6987ad941b..08fa77df0d 100644 +--- a/include/vki/vki-scnums-ppc32-linux.h ++++ b/include/vki/vki-scnums-ppc32-linux.h +@@ -415,6 +415,7 @@ + #define __NR_pkey_alloc 384 + #define __NR_pkey_free 385 + #define __NR_pkey_mprotect 386 ++#define __NR_rseq 387 + + #endif /* __VKI_SCNUMS_PPC32_LINUX_H */ + +diff --git a/include/vki/vki-scnums-ppc64-linux.h b/include/vki/vki-scnums-ppc64-linux.h +index 6827964fdf..a76fa6d322 100644 +--- a/include/vki/vki-scnums-ppc64-linux.h ++++ b/include/vki/vki-scnums-ppc64-linux.h +@@ -407,6 +407,7 @@ + #define __NR_pkey_alloc 384 + #define __NR_pkey_free 385 + #define __NR_pkey_mprotect 386 ++#define __NR_rseq 387 + + #endif /* __VKI_SCNUMS_PPC64_LINUX_H */ + +diff --git a/include/vki/vki-scnums-s390x-linux.h b/include/vki/vki-scnums-s390x-linux.h +index 6487e20c99..869c045847 100644 +--- a/include/vki/vki-scnums-s390x-linux.h ++++ b/include/vki/vki-scnums-s390x-linux.h +@@ -342,8 +342,11 @@ + #define __NR_s390_guarded_storage 378 + #define __NR_statx 379 + #define __NR_s390_sthyi 380 ++#define __NR_kexec_file_load 381 ++#define __NR_io_pgetevents 382 ++#define __NR_rseq 383 + +-#define NR_syscalls 381 ++#define NR_syscalls 384 + + /* + * There are some system calls that are not present on 64 bit, some +-- +2.27.0 + diff --git a/valgrind/valgrind-3.7.0-respect-flags.patch b/valgrind/valgrind-3.7.0-respect-flags.patch new file mode 100644 index 0000000..b5fc44d --- /dev/null +++ b/valgrind/valgrind-3.7.0-respect-flags.patch @@ -0,0 +1,13 @@ +diff -Naur valgrind-3.7.0.orig//mpi/Makefile.am valgrind-3.7.0/mpi/Makefile.am +--- valgrind-3.7.0.orig/mpi/Makefile.am 2011-10-26 17:24:23.000000000 -0400 ++++ valgrind-3.7.0/mpi/Makefile.am 2011-11-10 16:03:14.000000000 -0500 +@@ -7,9 +7,6 @@ + CC = $(MPI_CC) + DEFS = + DEFAULT_INCLUDES = +-CPPFLAGS = +-CFLAGS = +-LDFLAGS = + + EXTRA_DIST = \ + mpiwrap_type_test.c diff --git a/vte3/PKGBUILD b/vte3/PKGBUILD new file mode 100644 index 0000000..a52f06d --- /dev/null +++ b/vte3/PKGBUILD @@ -0,0 +1,70 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgbase=vte3 +pkgname=(vte3 vte-common) +pkgver=0.66.2 +pkgrel=01 +pkgdesc="Virtual Terminal Emulator widget" +url="https://wiki.gnome.org/Apps/Terminal/VTE" +arch=(x86_64) +depends=(gtk3 pcre2 gnutls fribidi) +makedepends=(gobject-introspection vala git gtk-doc gperf meson) +_commit=6a0a9fed4d54122df31c13d601b1509597a36f2b # tags/0.66.2^0 +source=("git+https://gitlab.gnome.org/GNOME/vte.git#commit=$_commit") + +pkgver() { + cd vte + git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g' +} + +prepare() { + cd vte +} + +build() { + arch-meson vte build \ + -D b_lto=false \ + -D docs=true \ + -D_systemd=false + meson compile -C build +} + +check() { + meson test -C build --print-errorlogs +} + +_pick() { + local p="$1" f d; shift + for f; do + d="$srcdir/$p/${f#$pkgdir/}" + mkdir -p "$(dirname "$d")" + mv "$f" "$d" + rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")" + done +} + +package_vte3() { + depends+=(vte-common) + provides+=(libvte-2.91.so) + + meson install -C build --destdir "$pkgdir" + + _pick vte-common "$pkgdir"/etc/profile.d + _pick vte-common "$pkgdir"/usr/lib/vte-urlencode-cwd +} + +package_vte-common() { + pkgdesc="Files shared by VTE libraries" + depends=(sh) + mv vte-common/* "$pkgdir" +} + +#---- license gpg-key sha256sums ---- + +license=(LGPL) + +sha256sums=('SKIP') diff --git a/vte3/PKGBUILD-arch b/vte3/PKGBUILD-arch new file mode 100644 index 0000000..864fe4f --- /dev/null +++ b/vte3/PKGBUILD-arch @@ -0,0 +1,64 @@ +# Maintainer: Jan Alexander Steffens (heftig) +# Contributor: Ionut Biru + +pkgbase=vte3 +pkgname=(vte3 vte-common) +pkgver=0.66.2 +pkgrel=1 +pkgdesc="Virtual Terminal Emulator widget" +url="https://wiki.gnome.org/Apps/Terminal/VTE" +arch=(x86_64) +license=(LGPL) +depends=(gtk3 pcre2 gnutls fribidi systemd) +makedepends=(gobject-introspection vala git gtk-doc gperf meson) +_commit=6a0a9fed4d54122df31c13d601b1509597a36f2b # tags/0.66.2^0 +source=("git+https://gitlab.gnome.org/GNOME/vte.git#commit=$_commit") +sha256sums=('SKIP') + +pkgver() { + cd vte + git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g' +} + +prepare() { + cd vte +} + +build() { + arch-meson vte build \ + -D b_lto=false \ + -D docs=true + meson compile -C build +} + +check() { + meson test -C build --print-errorlogs +} + +_pick() { + local p="$1" f d; shift + for f; do + d="$srcdir/$p/${f#$pkgdir/}" + mkdir -p "$(dirname "$d")" + mv "$f" "$d" + rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")" + done +} + +package_vte3() { + depends+=(vte-common) + provides+=(libvte-2.91.so) + + meson install -C build --destdir "$pkgdir" + + _pick vte-common "$pkgdir"/etc/profile.d + _pick vte-common "$pkgdir"/usr/lib/{systemd,vte-urlencode-cwd} +} + +package_vte-common() { + pkgdesc="Files shared by VTE libraries" + depends=(sh) + mv vte-common/* "$pkgdir" +} + +# vim:set sw=2 et: diff --git a/vte3/PKGBUILD-oba b/vte3/PKGBUILD-oba new file mode 100644 index 0000000..4015e66 --- /dev/null +++ b/vte3/PKGBUILD-oba @@ -0,0 +1,129 @@ +# Obarun : 66 init/supervisor +# Maintainer : Eric Vidal +# Maintainer : Jean-Michel T.Dydak +# Maintainer : YianIris +# Obarun PkgSrc : https://git.obarun.org/pkg/obextra/vte3 +#---------------- +#-------------------------------------------------------------- +# DESCRIPTION ] + +pkgbase=vte3 +pkgver=0.66.2 +pkgrel=2 +pkgdesc='Virtual Terminal Emulator widget' + +pkgname=( + 'vte3' + 'vte-common' +) + +url='https://wiki.gnome.org/Apps/Terminal/VTE' + +track=commit +target=6a0a9fed4d54122df31c13d601b1509597a36f2b # tags/0.66.2^0 +source=( + git+https://gitlab.gnome.org/GNOME/vte.git#$track=$target +) + +#---------------------- +# BUILD CONFIGURATION ] + +makedepends=( + 'gobject-introspection' + 'vala' + 'git' + 'gperf' + 'meson' +) + +#------------------------ +# INSTALL CONFIGURATION ] + +depends=( + 'gtk3' + 'pcre2' + 'gnutls' + 'fribidi' +) + +#-------------------- +# BUILD PREPARATION ] + +pkgver() { + cd vte + git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g' +} + +prepare() { + cd vte +} + +#---------------- +# BUILD CONTROL ] + +_flags=( + -Ddocs=true + -Db_lto=false + -D_systemd=false +) + +#-------- +# BUILD ] + +build() { + arch-meson vte build "${_flags[@]}" + meson compile -C build +} + +#-------- +# CHECK ] + +check() { + meson test -C build --print-errorlogs +} + +#---------- +# PACKAGE ] + +_pick() { + local p="$1" f d; shift + for f; do + d="$srcdir/$p/${f#$pkgdir/}" + mkdir -p "$(dirname "$d")" + mv "$f" "$d" + rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")" + done +} + +package_vte3() { + depends+=( + 'vte-common' + ) + provides+=( + 'libvte-2.91.so' + ) + + meson install -C build --destdir "$pkgdir" + + ### Split vte-common + _pick vte-common "$pkgdir"/etc/profile.d + _pick vte-common "$pkgdir"/usr/lib/vte-urlencode-cwd +} + +package_vte-common() { + pkgdesc='Files shared by VTE libraries' + + depends=( + 'sh' + ) + + mv vte-common/* "$pkgdir" +} + +#------------------------- +# LICENCE AND VALIDATION ] + +arch=(x86_64) +license=(LGPL) + +sha512sums=(' ') diff --git a/vte3/clean b/vte3/clean new file mode 100644 index 0000000..e19988e --- /dev/null +++ b/vte3/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,vte} diff --git a/vte3/deps b/vte3/deps new file mode 100644 index 0000000..5c4a7ff --- /dev/null +++ b/vte3/deps @@ -0,0 +1,9 @@ +gtk3 +fribidi +gobject-introspection +vala +git +gtk-doc +gperf +meson +ttf-liberation diff --git a/vte3/time b/vte3/time new file mode 100644 index 0000000..854fef1 --- /dev/null +++ b/vte3/time @@ -0,0 +1,3 @@ +real 1m0.879s +user 2m29.398s +sys 0m8.141s diff --git a/wayland-protocols/PKGBUILD b/wayland-protocols/PKGBUILD new file mode 100644 index 0000000..5704783 --- /dev/null +++ b/wayland-protocols/PKGBUILD @@ -0,0 +1,52 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=wayland-protocols +pkgver=1.25 +pkgrel=01 +pkgdesc='Specifications of extended Wayland protocols' +arch=('any') +url='https://wayland.freedesktop.org/' +makedepends=('wayland' 'meson' 'ninja') +source=("https://wayland.freedesktop.org/releases/$pkgname-$pkgver.tar.xz"{,.sig}) + +prepare() { + cd $pkgname-$pkgver + # apply patch from the source array (should be a pacman feature) + local src + for src in "${source[@]}"; do + src="${src%%::*}" + src="${src##*/}" + [[ $src = *.patch ]] || continue + echo "Applying patch $src..." + patch -Np1 < "../$src" + done +} + +build() { + meson build $pkgname-$pkgver --buildtype=release --prefix=/usr + ninja -C build +} + +check() { + ninja -C build test +} + +package() { + DESTDIR="$pkgdir" ninja -C build install + set -x + install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m 644 "$pkgname-$pkgver/COPYING" +} + +#---- license gpg-key sha256sums ---- + +license=('MIT') + +validpgpkeys=('8307C0A224BABDA1BABD0EB9A6EEEC9E0136164A' # Jonas Ådahl + 'A66D805F7C9329B4C5D82767CCC4F07FAC641EFF') # Daniel Stone + +sha256sums=(f1ff0f7199d0a0da337217dd8c99979967808dc37731a1e759e822b75b571460 # wayland-protocols-1.25.tar.xz + 5bda0debbaf77ccf4841171f9bcbe9cf562c58d768f3a0cf5199a14e2fbd6176) # wayland-protocols-1.25.tar.xz.sig diff --git a/wayland-protocols/PKGBUILD-arch b/wayland-protocols/PKGBUILD-arch new file mode 100644 index 0000000..4a2d3dd --- /dev/null +++ b/wayland-protocols/PKGBUILD-arch @@ -0,0 +1,45 @@ +# Maintainer: Sébastien Luttringer + +pkgname=wayland-protocols +pkgver=1.25 +pkgrel=1 +pkgdesc='Specifications of extended Wayland protocols' +arch=('any') +url='https://wayland.freedesktop.org/' +license=('MIT') +makedepends=('wayland' 'meson' 'ninja') +validpgpkeys=('8307C0A224BABDA1BABD0EB9A6EEEC9E0136164A' # Jonas Ådahl + 'A66D805F7C9329B4C5D82767CCC4F07FAC641EFF') # Daniel Stone +source=("https://wayland.freedesktop.org/releases/$pkgname-$pkgver.tar.xz"{,.sig}) +sha256sums=('f1ff0f7199d0a0da337217dd8c99979967808dc37731a1e759e822b75b571460' + 'SKIP') + +prepare() { + cd $pkgname-$pkgver + # apply patch from the source array (should be a pacman feature) + local src + for src in "${source[@]}"; do + src="${src%%::*}" + src="${src##*/}" + [[ $src = *.patch ]] || continue + echo "Applying patch $src..." + patch -Np1 < "../$src" + done +} + +build() { + meson build $pkgname-$pkgver --buildtype=release --prefix=/usr + ninja -C build +} + +check() { + ninja -C build test +} + +package() { + DESTDIR="$pkgdir" ninja -C build install + set -x + install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m 644 "$pkgname-$pkgver/COPYING" +} + +# vim:set ts=2 sw=2 et: diff --git a/wayland-protocols/clean b/wayland-protocols/clean new file mode 100644 index 0000000..4f42cd8 --- /dev/null +++ b/wayland-protocols/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,way*tar.xz*} diff --git a/wayland-protocols/deps b/wayland-protocols/deps new file mode 100644 index 0000000..0e286a0 --- /dev/null +++ b/wayland-protocols/deps @@ -0,0 +1,5 @@ +wayland +meson +ninja + + diff --git a/wayland-protocols/key b/wayland-protocols/key new file mode 100644 index 0000000..cc1fae2 --- /dev/null +++ b/wayland-protocols/key @@ -0,0 +1 @@ +gpg -v --recv-key A6EEEC9E0136164A diff --git a/wayland-protocols/time b/wayland-protocols/time new file mode 100644 index 0000000..c075b7a --- /dev/null +++ b/wayland-protocols/time @@ -0,0 +1,4 @@ + +real 0m7.804s +user 0m18.705s +sys 0m2.226s diff --git a/wget/PKGBUILD b/wget/PKGBUILD new file mode 100644 index 0000000..88c77cd --- /dev/null +++ b/wget/PKGBUILD @@ -0,0 +1,64 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=wget +pkgver=1.21.2 +pkgrel=01 +pkgdesc='Network utility to retrieve files from the Web' +url='https://www.gnu.org/software/wget/wget.html' +arch=('x86_64') +groups=( jobbot ) +depends=('glibc' 'zlib' 'gnutls' 'libidn2' 'libidn2.so' 'util-linux-libs' 'libuuid.so' + 'libpsl' 'libpsl.so' 'pcre2' 'nettle' 'libnettle.so') +checkdepends=('perl-http-daemon' 'perl-io-socket-ssl' 'python') +optdepends=('ca-certificates: HTTPS downloads') +makedepends=('perl-http-daemon' 'perl-io-socket-ssl' 'python') + +backup=('etc/wgetrc') +source=(https://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.lz{,.sig}) + +prepare() { + cd ${pkgname}-${pkgver} + cat >> doc/sample.wgetrc < + '7845120B07CBD8D6ECE5FF2B2A1743EDA91A35B6' # Darshit Shah + '1CB27DBC98614B2D5841646D08302DB6A2670428' # Tim Rühsen +) + +sha256sums=(1727a330a86acacb3e57615ce268f5f29978bf7adec4abe6a30d370207bc91b3 # wget-1.21.2.tar.lz + 297bf7cac4fe9d206caa5a893d33fbf2ba19e9b40d9c827745419f0beb84d9c7) # wget-1.21.2.tar.lz.sig diff --git a/wget/PKGBUILD-arch b/wget/PKGBUILD-arch new file mode 100644 index 0000000..cb2513d --- /dev/null +++ b/wget/PKGBUILD-arch @@ -0,0 +1,57 @@ +# Maintainer: Levente Polyak +# Maintainer: Eric Bélanger + +pkgname=wget +pkgver=1.21.2 +pkgrel=1 +pkgdesc='Network utility to retrieve files from the Web' +url='https://www.gnu.org/software/wget/wget.html' +arch=('x86_64') +license=('GPL3') +depends=('glibc' 'zlib' 'gnutls' 'libidn2' 'libidn2.so' 'util-linux-libs' 'libuuid.so' + 'libpsl' 'libpsl.so' 'pcre2' 'nettle' 'libnettle.so') +checkdepends=('perl-http-daemon' 'perl-io-socket-ssl' 'python') +optdepends=('ca-certificates: HTTPS downloads') +backup=('etc/wgetrc') +source=(https://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.lz{,.sig}) +sha256sums=('1727a330a86acacb3e57615ce268f5f29978bf7adec4abe6a30d370207bc91b3' + 'SKIP') +b2sums=('9141b27f2db587bbd34cb97ecf4a6179e564817067b45c8168390cf1548c1a18f71723247d82b11f2edf3981a9b9f0d2097afe5d56397e033b0a86adae9482b1' + 'SKIP') +validpgpkeys=( + 'AC404C1C0BF735C63FF4D562263D6DF2E163E1EA' # Giuseppe Scrivano + '7845120B07CBD8D6ECE5FF2B2A1743EDA91A35B6' # Darshit Shah + '1CB27DBC98614B2D5841646D08302DB6A2670428' # Tim Rühsen +) + +prepare() { + cd ${pkgname}-${pkgver} + cat >> doc/sample.wgetrc < +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobcore/$pkgname" +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=xdgmenumaker +pkgver=1.6 +pkgrel=03 +pkgdesc="A command line tool that generates XDG menus for several window managers" +# Had to rebuild this away from the neglect of Obarun against python or it breaks JWM +url="https://github.com/gapan/$pkgname" +arch=('any') +depends=('python-pyxdg' 'python-gobject' 'gtk3') +optdepends=('txt2tags: for manpages' 'python-pillow: for restricting icon size') +source=("${pkgname}-${pkgver}::https://github.com/gapan/${pkgname}/archive/${pkgver}.tar.gz") + +build() { + cd "$pkgname-$pkgver" + make +} + +package() { + cd "$pkgname-$pkgver" + make DESTDIR="$pkgdir/" PREFIX="/usr" install +} + +#---- license gpg-key sha256sums ---- + +license=('GPL3') + +sha256sums=(46192e7e4e25b024c0516d83e8fc2c503dd1ac8e5f8c1998d3e9e4b3cbf8919b) # xdgmenumaker-1.6 diff --git a/xdgmenumaker/PKGBUILD-oba b/xdgmenumaker/PKGBUILD-oba new file mode 100644 index 0000000..b209095 --- /dev/null +++ b/xdgmenumaker/PKGBUILD-oba @@ -0,0 +1,25 @@ +# Maintainer: Francesco Cherchi +# Contributor: Luke R. GPG: rsa4096/3EAE8697 + +pkgname=xdgmenumaker +pkgver=1.6 +pkgrel=2 +pkgdesc="A command line tool that generates XDG menus for several window managers" +url="https://github.com/gapan/$pkgname" +arch=('any') +license=('GPL3') +depends=('python-pyxdg' 'python-gobject' 'gtk3') +optdepends=('txt2tags: for manpages' 'python-pillow: for restricting icon size') +source=("${pkgname}-${pkgver}::https://github.com/gapan/${pkgname}/archive/${pkgver}.tar.gz") +md5sums=('4194aaa4074d938a54d0c9c853c0b4e1') + +build() { + cd "$pkgname-$pkgver" + make +} + +package() { + cd "$pkgname-$pkgver" + make DESTDIR="$pkgdir/" PREFIX="/usr" install +} + diff --git a/xdgmenumaker/clean b/xdgmenumaker/clean new file mode 100644 index 0000000..370ed47 --- /dev/null +++ b/xdgmenumaker/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,xdgmenumaker*} diff --git a/xdgmenumaker/time b/xdgmenumaker/time new file mode 100644 index 0000000..fd97774 --- /dev/null +++ b/xdgmenumaker/time @@ -0,0 +1,5 @@ + +real 0m2.191s +user 0m1.709s +sys 0m0.301s + diff --git a/xf86-input-evdev/PKGBUILD b/xf86-input-evdev/PKGBUILD new file mode 100644 index 0000000..30b04db --- /dev/null +++ b/xf86-input-evdev/PKGBUILD @@ -0,0 +1,43 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=xf86-input-evdev +pkgver=2.10.6 +pkgrel=03 +pkgdesc="X.org evdev input driver" +arch=(x86_64) +url="https://xorg.freedesktop.org/" +depends=('mtdev' 'libevdev') +makedepends=('xorg-server-devel' 'X-ABI-XINPUT_VERSION=24.4' 'xorgproto') +conflicts=('xorg-server<21.1.1' 'X-ABI-XINPUT_VERSION<24' 'X-ABI-XINPUT_VERSION>=25') +options=('!makeflags') +groups=('xorg-drivers') +source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2{,.sig}) + +build() { + cd ${pkgname}-${pkgver} + ./configure --prefix=/usr + make +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} + +#---- license gpg-key sha256sums ---- + +license=('custom') + +validpgpkeys=('3C2C43D9447D5938EF4551EBE23B7E70B467F0BF') # Peter Hutterer (Who-T) + +sha512sums=('560b0a6491d50a46913a5890a35c0367e59f550670993493bd9712d712a9747ddaa6fe5086daabf2fcafa24b0159383787eb273da4a2a60c089bfc0a77ad2ad1' + 'SKIP') + +sha256sums=(8726073e81861bc7b2321e76272cbdbd33c7e1a121535a9827977265b9033ec0 # xf86-input-evdev-2.10.6.tar.bz2 + 9b66e258069ccafcff0d0e052f488f63f7c555617c535dfd078cfada189d34cd) # xf86-input-evdev-2.10.6.tar.bz2.sig diff --git a/xf86-input-evdev/PKGBUILD-arch b/xf86-input-evdev/PKGBUILD-arch new file mode 100644 index 0000000..7145f8e --- /dev/null +++ b/xf86-input-evdev/PKGBUILD-arch @@ -0,0 +1,32 @@ +# Maintainer: Jan de Groot +# Contributor: Alexander Baldeck =25') +options=('!makeflags') +groups=('xorg-drivers') +source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2{,.sig}) +sha512sums=('560b0a6491d50a46913a5890a35c0367e59f550670993493bd9712d712a9747ddaa6fe5086daabf2fcafa24b0159383787eb273da4a2a60c089bfc0a77ad2ad1' + 'SKIP') +validpgpkeys=('3C2C43D9447D5938EF4551EBE23B7E70B467F0BF') # Peter Hutterer (Who-T) + +build() { + cd ${pkgname}-${pkgver} + ./configure --prefix=/usr + make +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} diff --git a/xf86-input-evdev/clean b/xf86-input-evdev/clean new file mode 100644 index 0000000..4862fc7 --- /dev/null +++ b/xf86-input-evdev/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,xf86-in*.tar.bz2*} diff --git a/xf86-input-evdev/deps b/xf86-input-evdev/deps new file mode 100644 index 0000000..5583206 --- /dev/null +++ b/xf86-input-evdev/deps @@ -0,0 +1,4 @@ +xorg-server +xorg-server-devel +xorgproto + diff --git a/xf86-input-evdev/time b/xf86-input-evdev/time new file mode 100644 index 0000000..5f13eac --- /dev/null +++ b/xf86-input-evdev/time @@ -0,0 +1,5 @@ + +real 0m9.909s +user 0m6.636s +sys 0m3.989s + diff --git a/xf86-input-libinput/PKGBUILD b/xf86-input-libinput/PKGBUILD new file mode 100644 index 0000000..0b248a0 --- /dev/null +++ b/xf86-input-libinput/PKGBUILD @@ -0,0 +1,44 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=xf86-input-libinput +pkgver=1.2.1 +pkgrel=02 # rebuilt against libinput 1.20.0-01 +pkgdesc="Generic input driver for the X.Org server based on libinput" +arch=('x86_64') +url="http://xorg.freedesktop.org/" +depends=('libinput') +makedepends=('xorg-server-devel' 'X-ABI-XINPUT_VERSION=24.4' 'libxi' 'libx11' 'xorgproto') +conflicts=('xorg-server<1.19.0' 'X-ABI-XINPUT_VERSION<24' 'X-ABI-XINPUT_VERSION>=25') +groups=('xorg-drivers') +source=(https://xorg.freedesktop.org/releases/individual/driver/${pkgname}-${pkgver}.tar.xz{,.sig}) + +build() { + cd ${pkgname}-${pkgver} + ./configure --prefix=/usr \ + --disable-static + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} + +#---- license gpg-key sha256sums ---- + +license=('custom:MIT') +validpgpkeys=('3C2C43D9447D5938EF4551EBE23B7E70B467F0BF') # Peter Hutterer (Who-T) +#validpgpkeys=('FD0004A26EADFE43A4C3F249C6F7AE200374452D') # "Povilas Kanapickas " +sha512sums=('3decf694861d1aa3c02d090e66c5ed5513818cb18e9863f1790e0c8122a972230fb903705062b8291e1709db9098623f1205c63ccfb68e552e104813414589c7' + 'SKIP') + +sha256sums=(8151db5b9ddb317c0ce92dcb62da9a8db5079e5b8a95b60abc854da21e7e971b # xf86-input-libinput-1.2.1.tar.xz + e84f154bfacf46a57f7e70b4727dbdff21de1138349133a89f73b2c16004fd06) # xf86-input-libinput-1.2.1.tar.xz.sig diff --git a/xf86-input-libinput/PKGBUILD-arch b/xf86-input-libinput/PKGBUILD-arch new file mode 100644 index 0000000..648bd82 --- /dev/null +++ b/xf86-input-libinput/PKGBUILD-arch @@ -0,0 +1,34 @@ +# Maintainer: Laurent Carlier + +pkgname=xf86-input-libinput +pkgver=1.2.1 +pkgrel=1 +pkgdesc="Generic input driver for the X.Org server based on libinput" +arch=('x86_64') +license=('custom:MIT') +url="http://xorg.freedesktop.org/" +depends=('libinput') +makedepends=('xorg-server-devel' 'X-ABI-XINPUT_VERSION=24.4' 'libxi' 'libx11' 'xorgproto') +conflicts=('xorg-server<1.19.0' 'X-ABI-XINPUT_VERSION<24' 'X-ABI-XINPUT_VERSION>=25') +groups=('xorg-drivers') +source=(https://xorg.freedesktop.org/releases/individual/driver/${pkgname}-${pkgver}.tar.xz{,.sig}) +sha512sums=('3decf694861d1aa3c02d090e66c5ed5513818cb18e9863f1790e0c8122a972230fb903705062b8291e1709db9098623f1205c63ccfb68e552e104813414589c7' + 'SKIP') +validpgpkeys=('3C2C43D9447D5938EF4551EBE23B7E70B467F0BF') # Peter Hutterer (Who-T) +#validpgpkeys=('FD0004A26EADFE43A4C3F249C6F7AE200374452D') # "Povilas Kanapickas " + +build() { + cd ${pkgname}-${pkgver} + ./configure --prefix=/usr \ + --disable-static + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} diff --git a/xf86-input-libinput/clean b/xf86-input-libinput/clean new file mode 100644 index 0000000..27460d2 --- /dev/null +++ b/xf86-input-libinput/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,xf86-in*.tar.xz*} diff --git a/xf86-input-libinput/deps b/xf86-input-libinput/deps new file mode 100644 index 0000000..449f836 --- /dev/null +++ b/xf86-input-libinput/deps @@ -0,0 +1,6 @@ +xorg-server-devel +libxi +libx11 +xorgproto +xorg-server +libinput diff --git a/xf86-input-libinput/time b/xf86-input-libinput/time new file mode 100644 index 0000000..244b7a9 --- /dev/null +++ b/xf86-input-libinput/time @@ -0,0 +1,5 @@ + +real 0m4.440s +user 0m4.228s +sys 0m0.718s + diff --git a/xf86-input-vmmouse/PKGBUILD b/xf86-input-vmmouse/PKGBUILD new file mode 100644 index 0000000..938f2a8 --- /dev/null +++ b/xf86-input-vmmouse/PKGBUILD @@ -0,0 +1,42 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=xf86-input-vmmouse +pkgver=13.1.0 +pkgrel=06 +pkgdesc="X.org VMWare Mouse input driver" +arch=(x86_64) +url="https://xorg.freedesktop.org/" +depends=() +makedepends=('xorg-server-devel' 'X-ABI-XINPUT_VERSION=24.4' 'xorgproto') +conflicts=('xorg-server<21.1.1' 'X-ABI-XINPUT_VERSION<24' 'X-ABI-XINPUT_VERSION>=25') +groups=('xorg-drivers') +source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2{,.sig}) + +build() { + cd ${pkgname}-${pkgver} + ./configure --prefix=/usr \ + --with-udev-rules-dir=/usr/lib/udev/rules.d + make +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" + rm -rfv "${pkgdir}"/usr/{lib,share}/hal +} + + +#---- license gpg-key sha256sums ---- + +license=('custom') + +validpgpkeys=('90D027AEAF33CBABC140735BC1F5D3CDF5176580') # Thomas Hellstrom (VMware) + +sha256sums=(0af558957ac1be1b2863712c2475de8f4d7f14921fd01ded2e2fde4921b19319 # xf86-input-vmmouse-13.1.0.tar.bz2 + 6b26f736ed1bf0cec0e3c706332c31f98f038d5613b64f9277e6e9350e8f7805) # xf86-input-vmmouse-13.1.0.tar.bz2.sig diff --git a/xf86-input-vmmouse/PKGBUILD-arch.new b/xf86-input-vmmouse/PKGBUILD-arch.new new file mode 100644 index 0000000..bd62311 --- /dev/null +++ b/xf86-input-vmmouse/PKGBUILD-arch.new @@ -0,0 +1,32 @@ +# Maintainer: Jan de Groot + +pkgname=xf86-input-vmmouse +pkgver=13.1.0 +pkgrel=6 +pkgdesc="X.org VMWare Mouse input driver" +arch=(x86_64) +license=('custom') +url="https://xorg.freedesktop.org/" +depends=('systemd-libs') +makedepends=('xorg-server-devel' 'X-ABI-XINPUT_VERSION=24.4' 'xorgproto') +conflicts=('xorg-server<21.1.1' 'X-ABI-XINPUT_VERSION<24' 'X-ABI-XINPUT_VERSION>=25') +groups=('xorg-drivers') +source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2{,.sig}) +sha256sums=('0af558957ac1be1b2863712c2475de8f4d7f14921fd01ded2e2fde4921b19319' + 'SKIP') +validpgpkeys=('90D027AEAF33CBABC140735BC1F5D3CDF5176580') # Thomas Hellstrom (VMware) + +build() { + cd ${pkgname}-${pkgver} + ./configure --prefix=/usr \ + --with-udev-rules-dir=/usr/lib/udev/rules.d + make +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" + rm -rfv "${pkgdir}"/usr/{lib,share}/hal +} diff --git a/xf86-input-vmmouse/PKGBUILD-oba b/xf86-input-vmmouse/PKGBUILD-oba new file mode 100644 index 0000000..339b83c --- /dev/null +++ b/xf86-input-vmmouse/PKGBUILD-oba @@ -0,0 +1,78 @@ +# Obarun : 66 init/supervisor +# Maintainer : Eric Vidal +# Maintainer : Jean-Michel T.Dydak +# Maintainer : YianIris +# Obarun PkgSrc : https://git.obarun.org/pkg/obextra/xf86-input-evdev +#---------------- +#-------------------------------------------------------------- +# DESCRIPTION ] + +pkgname=xf86-input-vmmouse +pkgver=13.1.0 +pkgrel=9 +pkgdesc="X.org VMWare Mouse input driver" + +url="https://xorg.freedesktop.org/" + +track=releases/individual/driver +target=$pkgname-$pkgver +source=( + https://xorg.freedesktop.org/$track/$target.tar.bz2{,.sig} +) + +#---------------------- +# BUILD CONFIGURATION ] + +makedepends=( + 'xorg-server-devel' + 'X-ABI-XINPUT_VERSION=24.4' + 'xorgproto' +) + +#------------------------ +# INSTALL CONFIGURATION ] + +conflicts=( + 'xorg-server<21.1.1' + 'X-ABI-XINPUT_VERSION<24.1' + 'X-ABI-XINPUT_VERSION>=25' +) + +groups=( + 'xorg-drivers' +) + +#-------- +# BUILD ] + +build() { + cd $pkgname-$pkgver + + ./configure --prefix=/usr --with-udev-rules-dir=/usr/lib/udev/rules.d + make +} + +#---------- +# PACKAGE ] + +package() { + cd $pkgname-$pkgver + + make DESTDIR="$pkgdir" install + + install -m755 -d "$pkgdir/usr/share/licenses/$pkgname" + install -m644 COPYING "$pkgdir/usr/share/licenses/$pkgname/" + + rm -rfv "$pkgdir"/usr/{lib,share}/hal +} + +#--------------------------- +# LICENSE AND VERIFICATION ] + +arch=(x86_64) +license=(custom) + +validpgpkeys=( + '90D027AEAF33CBABC140735BC1F5D3CDF5176580') # Thomas Hellstrom (VMware) + +sha512sums=(' ') diff --git a/xf86-input-vmmouse/clean b/xf86-input-vmmouse/clean new file mode 100644 index 0000000..4862fc7 --- /dev/null +++ b/xf86-input-vmmouse/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,xf86-in*.tar.bz2*} diff --git a/xf86-input-vmmouse/deps b/xf86-input-vmmouse/deps new file mode 100644 index 0000000..e9d89c1 --- /dev/null +++ b/xf86-input-vmmouse/deps @@ -0,0 +1,3 @@ +xorg-server-devel +xorg-server +xorgproto diff --git a/xf86-input-vmmouse/key b/xf86-input-vmmouse/key new file mode 100644 index 0000000..8c8601d --- /dev/null +++ b/xf86-input-vmmouse/key @@ -0,0 +1 @@ +gpg -v --recv-key C1F5D3CDF5176580 diff --git a/xf86-input-vmmouse/time b/xf86-input-vmmouse/time new file mode 100644 index 0000000..ec03d4d --- /dev/null +++ b/xf86-input-vmmouse/time @@ -0,0 +1,5 @@ + +real 0m9.947s +user 0m5.761s +sys 0m4.203s + diff --git a/xf86-input-wacom/PKGBUILD b/xf86-input-wacom/PKGBUILD new file mode 100644 index 0000000..fe3f3ce --- /dev/null +++ b/xf86-input-wacom/PKGBUILD @@ -0,0 +1,40 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=xf86-input-wacom +pkgver=0.40.0 +pkgrel=02 +pkgdesc="X.Org Wacom tablet driver" +arch=(x86_64) +url="https://github.com/linuxwacom/xf86-input-wacom" +depends=(libxi libxinerama libxrandr) +makedepends=('xorg-server-devel' 'X-ABI-XINPUT_VERSION=24.4') +conflicts=('xorg-server<21.1.1' 'X-ABI-XINPUT_VERSION<24' 'X-ABI-XINPUT_VERSION>=25') +source=(https://github.com/linuxwacom/xf86-input-wacom/releases/download/$pkgname-$pkgver/$pkgname-$pkgver.tar.bz2{,.sig}) +# check at https://github.com/linuxwacom/xf86-input-wacom/releases + +build() { + cd $pkgname-$pkgver + ./configure --prefix=/usr + make +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install +} + +#---- license gpg-key sha256sums ---- + +license=(GPL) + +validpgpkeys=('9A12ECCC5383CA2AF5B42CDCA6DC66911B2127D5') # Jason Gerecke +validpgpkeys+=('3C2C43D9447D5938EF4551EBE23B7E70B467F0BF') # "Peter Hutterer (Who-T) " +validpgpkeys+=('5222AA87620F928D2C16F62BDB4ABF7C3424190B') # "Aaron Armstrong Skomra " +validpgpkeys+=('FBE078781106933D3DDCF93E5B4EA609784983CA') # "Jason Gerecke " + +sha256sums=(8c4f5dba4bee803dafea98277f81cb0e67b4e474c9cc2e42ceb443cdb4ea2062 # xf86-input-wacom-0.40.0.tar.bz2 + c2207290ae391a39d6ac8ed7b0e534826c9bb6f165f50ec97bf8a62b6be388c6) # xf86-input-wacom-0.40.0.tar.bz2.sig diff --git a/xf86-input-wacom/PKGBUILD-arch b/xf86-input-wacom/PKGBUILD-arch new file mode 100644 index 0000000..d2c7343 --- /dev/null +++ b/xf86-input-wacom/PKGBUILD-arch @@ -0,0 +1,34 @@ +# Maintainer: Andreas Radke +# Maintainer: Jan Alexander Steffens (heftig) +# Contributor: Jan de Groot +# Contributor: M Rawash + +pkgname=xf86-input-wacom +pkgver=0.40.0 +pkgrel=2 +pkgdesc="X.Org Wacom tablet driver" +arch=(x86_64) +url="https://github.com/linuxwacom/xf86-input-wacom" +license=(GPL) +depends=(libxi libxinerama libxrandr systemd-libs) +makedepends=('xorg-server-devel' 'X-ABI-XINPUT_VERSION=24.4') +conflicts=('xorg-server<21.1.1' 'X-ABI-XINPUT_VERSION<24' 'X-ABI-XINPUT_VERSION>=25') +source=(https://github.com/linuxwacom/xf86-input-wacom/releases/download/$pkgname-$pkgver/$pkgname-$pkgver.tar.bz2{,.sig}) +# check at https://github.com/linuxwacom/xf86-input-wacom/releases +sha256sums=('8c4f5dba4bee803dafea98277f81cb0e67b4e474c9cc2e42ceb443cdb4ea2062' + 'SKIP') +validpgpkeys=('9A12ECCC5383CA2AF5B42CDCA6DC66911B2127D5') # Jason Gerecke +validpgpkeys+=('3C2C43D9447D5938EF4551EBE23B7E70B467F0BF') # "Peter Hutterer (Who-T) " +validpgpkeys+=('5222AA87620F928D2C16F62BDB4ABF7C3424190B') # "Aaron Armstrong Skomra " +validpgpkeys+=('FBE078781106933D3DDCF93E5B4EA609784983CA') # "Jason Gerecke " + +build() { + cd $pkgname-$pkgver + ./configure --prefix=/usr + make +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install +} diff --git a/xf86-input-wacom/clean b/xf86-input-wacom/clean new file mode 100644 index 0000000..4862fc7 --- /dev/null +++ b/xf86-input-wacom/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,xf86-in*.tar.bz2*} diff --git a/xf86-input-wacom/deps b/xf86-input-wacom/deps new file mode 100644 index 0000000..ec7eef8 --- /dev/null +++ b/xf86-input-wacom/deps @@ -0,0 +1,5 @@ +xorg-server +xorg-server-devel +libxi +libxinerama +libxrandr diff --git a/xf86-input-wacom/key b/xf86-input-wacom/key new file mode 100644 index 0000000..fd5342f --- /dev/null +++ b/xf86-input-wacom/key @@ -0,0 +1 @@ +gpg -v --recv-key 5B4EA609784983CA diff --git a/xf86-input-wacom/time b/xf86-input-wacom/time new file mode 100644 index 0000000..76421ee --- /dev/null +++ b/xf86-input-wacom/time @@ -0,0 +1,4 @@ +real 0m10.985s +user 0m12.199s +sys 0m4.528s + diff --git a/xf86-video-amdgpu/PKGBUILD b/xf86-video-amdgpu/PKGBUILD new file mode 100644 index 0000000..ded5c41 --- /dev/null +++ b/xf86-video-amdgpu/PKGBUILD @@ -0,0 +1,59 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=xf86-video-amdgpu +pkgver=22.0.0 +pkgrel=01 +pkgdesc="X.org amdgpu video driver w/o systemd" +arch=('x86_64') +url="https://xorg.freedesktop.org/" +depends=('mesa') +makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=25.2') +conflicts=('xorg-server<1.20.0' 'X-ABI-VIDEODRV_VERSION<25' 'X-ABI-VIDEODRV_VERSION>=26') +groups=('xorg-drivers') +source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.xz{,.sig}) + +build() { + cd ${pkgname}-${pkgver} + + # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf + # With them, module fail to load with undefined symbol. + # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845 + export CFLAGS=${CFLAGS/-fno-plt} + export CXXFLAGS=${CXXFLAGS/-fno-plt} + export LDFLAGS=${LDFLAGS/,-z,now} + + #CFLAGS+=' -fcommon' # https://wiki.gentoo.org/wiki/Gcc_10_porting_notes/fno_common + + ./configure --prefix=/usr \ + --enable-glamor + make +} + +check() { + cd ${pkgname}-${pkgver} + make check +} + +package() { + cd ${pkgname}-${pkgver} + + make "DESTDIR=${pkgdir}" install + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} + +#---- license gpg-key sha256sums ---- + +license=('custom') + +#validpgpkeys=('B09FAF35BE914521980951145A81AF8E6ADBB200') # Michel Daenzer +#validpgpkeys=('017E91A875CBA321258380F19B4EE4F98474DE40') # "Alex Deucher " +validpgpkeys=('F1111E4AAF984C9763795FFE4B25B5180522B8D9') # Shashank Sharma + +sha256sums=(9d23fb602915dc3ccde92aa4d1e9485e7e54eaae2f41f485e55eb20761778266 # xf86-video-amdgpu-22.0.0.tar.xz + 57b151d2c7a3601b6f48c769c4c231e5481b11d63190c3d8b9704df657b04470) # xf86-video-amdgpu-22.0.0.tar.xz.sig diff --git a/xf86-video-amdgpu/PKGBUILD-arch b/xf86-video-amdgpu/PKGBUILD-arch new file mode 100644 index 0000000..ea26d99 --- /dev/null +++ b/xf86-video-amdgpu/PKGBUILD-arch @@ -0,0 +1,49 @@ +# Maintainer: Laurent Carlier + +pkgname=xf86-video-amdgpu +pkgver=22.0.0 +pkgrel=1 +pkgdesc="X.org amdgpu video driver" +arch=('x86_64') +url="https://xorg.freedesktop.org/" +license=('custom') +depends=('systemd-libs' 'mesa') +makedepends=('xorg-server-devel' 'systemd' 'X-ABI-VIDEODRV_VERSION=25.2') +conflicts=('xorg-server<1.20.0' 'X-ABI-VIDEODRV_VERSION<25' 'X-ABI-VIDEODRV_VERSION>=26') +groups=('xorg-drivers') +source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.xz{,.sig}) +sha512sums=('95c64e3fef7729ced6e7adc5e81c60cc218f6d8b6604f7b290e86ff52c917426b5102decbf8be8a66c9181ccde6e5dff7083dca8cc0c493a39e82625b5c7cb2a' + 'SKIP') +#validpgpkeys=('B09FAF35BE914521980951145A81AF8E6ADBB200') # Michel Daenzer +#validpgpkeys=('017E91A875CBA321258380F19B4EE4F98474DE40') # "Alex Deucher " +validpgpkeys=('F1111E4AAF984C9763795FFE4B25B5180522B8D9') # Shashank Sharma + +build() { + cd ${pkgname}-${pkgver} + + # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf + # With them, module fail to load with undefined symbol. + # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845 + export CFLAGS=${CFLAGS/-fno-plt} + export CXXFLAGS=${CXXFLAGS/-fno-plt} + export LDFLAGS=${LDFLAGS/,-z,now} + + #CFLAGS+=' -fcommon' # https://wiki.gentoo.org/wiki/Gcc_10_porting_notes/fno_common + + ./configure --prefix=/usr \ + --enable-glamor + make +} + +check() { + cd ${pkgname}-${pkgver} + make check +} + +package() { + cd ${pkgname}-${pkgver} + + make "DESTDIR=${pkgdir}" install + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} diff --git a/xf86-video-amdgpu/clean b/xf86-video-amdgpu/clean new file mode 100644 index 0000000..9cd3b85 --- /dev/null +++ b/xf86-video-amdgpu/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,xf86-video-amd*.tar.xz*} diff --git a/xf86-video-amdgpu/deps b/xf86-video-amdgpu/deps new file mode 100644 index 0000000..85e8366 --- /dev/null +++ b/xf86-video-amdgpu/deps @@ -0,0 +1,2 @@ +xorg-server-devel +xorg-server diff --git a/xf86-video-amdgpu/key b/xf86-video-amdgpu/key new file mode 100644 index 0000000..e8a559e --- /dev/null +++ b/xf86-video-amdgpu/key @@ -0,0 +1 @@ +gpg -v --recv-key 4B25B5180522B8D9 diff --git a/xf86-video-amdgpu/time b/xf86-video-amdgpu/time new file mode 100644 index 0000000..6172dba --- /dev/null +++ b/xf86-video-amdgpu/time @@ -0,0 +1,5 @@ + + +real 0m11.631s +user 0m12.943s +sys 0m4.578s diff --git a/xf86-video-ati/0001_dont_set_sourcevalidate_pointer_to_null.diff b/xf86-video-ati/0001_dont_set_sourcevalidate_pointer_to_null.diff new file mode 100644 index 0000000..080de79 --- /dev/null +++ b/xf86-video-ati/0001_dont_set_sourcevalidate_pointer_to_null.diff @@ -0,0 +1,27 @@ +diff --git a/src/radeon_kms.c b/src/radeon_kms.c +index 62962d61d8ee22a02567b7125b4bb3a7f7230be4..51b00dd9b013d183bf93d7f5578014dc16c80ce8 100644 +--- a/src/radeon_kms.c ++++ b/src/radeon_kms.c +@@ -931,6 +931,13 @@ radeon_dirty_update(ScrnInfoPtr scrn) + } + } + ++static void ++radeonSourceValidate(DrawablePtr draw, int x, int y, int w, int h, ++ unsigned int subWindowMode) ++{ ++} ++ ++ + + Bool + radeon_scanout_do_update(xf86CrtcPtr xf86_crtc, int scanout_id, +@@ -993,7 +1000,7 @@ radeon_scanout_do_update(xf86CrtcPtr xf86_crtc, int scanout_id, + SetPicturePictFilter(src, xf86_crtc->filter, xf86_crtc->params, + xf86_crtc->nparams); + +- pScreen->SourceValidate = NULL; ++ pScreen->SourceValidate = radeonSourceValidate; + CompositePicture(PictOpSrc, + src, NULL, dst, + extents.x1, extents.y1, 0, 0, extents.x1, diff --git a/xf86-video-ati/PKGBUILD b/xf86-video-ati/PKGBUILD new file mode 100644 index 0000000..99447e0 --- /dev/null +++ b/xf86-video-ati/PKGBUILD @@ -0,0 +1,75 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=xf86-video-ati +_commit=5eba006e4129e8015b822f9e1d2f1e613e252cda +pkgver=19.1.0.r9.g5eba006e +pkgrel=02 +epoch=1 +pkgdesc="X.org ati video driver" +arch=('x86_64') +url="https://xorg.freedesktop.org/" +depends=('mesa') +makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=25.2' 'git') +conflicts=('xorg-server<21.1.1' 'X-ABI-VIDEODRV_VERSION<25' 'X-ABI-VIDEODRV_VERSION>=26') +groups=('xorg-drivers') +source=("${pkgname}-${pkgver}::git+https://gitlab.freedesktop.org/xorg/driver/xf86-video-ati#commit=${_commit}" + 0001_dont_set_sourcevalidate_pointer_to_null.diff) + +pkgver() { + cd ${pkgname}* + # from ati-git AUR pkg + git describe --long | sed 's/^xf86-video-ati-//;s/\([^-]*-g\)/r\1/;s/-/./g' +} + + +prepare() { + cd ${pkgname}* + + # fix a crash under Xorg-server 21.1.1 + # https://bugs.archlinux.org/task/72759 + # https://gitlab.freedesktop.org/xorg/driver/xf86-video-ati/-/merge_requests/9 + patch -Np1 -i ../0001_dont_set_sourcevalidate_pointer_to_null.diff + + NOCONFIGURE=1 ./autogen.sh +} + +build() { + cd ${pkgname}* #-${pkgver} + +# CFLAGS+=' -fcommon' # https://wiki.gentoo.org/wiki/Gcc_10_porting_notes/fno_common + + # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf + # With them, module fail to load with undefined symbol. + # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845 + export CFLAGS=${CFLAGS/-fno-plt} + export CXXFLAGS=${CXXFLAGS/-fno-plt} + export LDFLAGS=${LDFLAGS/,-z,now} + + ./configure --prefix=/usr + make +} + +check() { + cd ${pkgname}* #-${pkgver} + make check +} + +package() { + cd ${pkgname}* #-${pkgver} + + make "DESTDIR=${pkgdir}" install + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} + +#---- license gpg-key sha256sums ---- +license=('custom') + +validpgpkeys=('B09FAF35BE914521980951145A81AF8E6ADBB200') # Michel Daenzer + +sha256sums=(SKIP + 0b62ee57406004b2cd344a10cd01cfe8465adf3a9c978f7a800af1b9bef87599) # 0001_dont_set_sourcevalidate_pointer_to_null.diff diff --git a/xf86-video-ati/PKGBUILD-arch b/xf86-video-ati/PKGBUILD-arch new file mode 100644 index 0000000..57d9bf7 --- /dev/null +++ b/xf86-video-ati/PKGBUILD-arch @@ -0,0 +1,72 @@ +# Maintainer: AndyRTR +# Contributor: Jan de Groot +# Contributor: Alexander Baldeck + +pkgname=xf86-video-ati +_commit=5eba006e4129e8015b822f9e1d2f1e613e252cda +pkgver=19.1.0.r9.g5eba006e +pkgrel=2 +epoch=1 +pkgdesc="X.org ati video driver" +arch=('x86_64') +url="https://xorg.freedesktop.org/" +license=('custom') +depends=('systemd-libs' 'mesa') +makedepends=('xorg-server-devel' 'systemd' 'X-ABI-VIDEODRV_VERSION=25.2' 'git') +conflicts=('xorg-server<21.1.1' 'X-ABI-VIDEODRV_VERSION<25' 'X-ABI-VIDEODRV_VERSION>=26') +groups=('xorg-drivers') +#source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2{,.sig}) +#sha512sums=('73a81f6c492daf2e89067fb52b3033dc0fe6841f109627ddca1aee54a45a738c8c134443753a2a2aaa2c131e1d560057ebc76351ff2304c16407df3ff568fcd6' +# 'SKIP') +source=("${pkgname}-${pkgver}::git+https://gitlab.freedesktop.org/xorg/driver/xf86-video-ati#commit=${_commit}" + 0001_dont_set_sourcevalidate_pointer_to_null.diff) +sha512sums=('SKIP' + 'ca7c769a20e0682ca0122a8248fa79a54d2181d9554c93174a3c49638b6810951787ed5e5e7f7e0f6d091ce2a111aee4bd03108ef74af95ebea340bc0300480f') +validpgpkeys=('B09FAF35BE914521980951145A81AF8E6ADBB200') # Michel Daenzer + +pkgver() { + cd ${pkgname}* + # from ati-git AUR pkg + git describe --long | sed 's/^xf86-video-ati-//;s/\([^-]*-g\)/r\1/;s/-/./g' +} + + +prepare() { + cd ${pkgname}* + + # fix a crash under Xorg-server 21.1.1 + # https://bugs.archlinux.org/task/72759 + # https://gitlab.freedesktop.org/xorg/driver/xf86-video-ati/-/merge_requests/9 + patch -Np1 -i ../0001_dont_set_sourcevalidate_pointer_to_null.diff + + NOCONFIGURE=1 ./autogen.sh +} + +build() { + cd ${pkgname}* #-${pkgver} + +# CFLAGS+=' -fcommon' # https://wiki.gentoo.org/wiki/Gcc_10_porting_notes/fno_common + + # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf + # With them, module fail to load with undefined symbol. + # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845 + export CFLAGS=${CFLAGS/-fno-plt} + export CXXFLAGS=${CXXFLAGS/-fno-plt} + export LDFLAGS=${LDFLAGS/,-z,now} + + ./configure --prefix=/usr + make +} + +check() { + cd ${pkgname}* #-${pkgver} + make check +} + +package() { + cd ${pkgname}* #-${pkgver} + + make "DESTDIR=${pkgdir}" install + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} diff --git a/xf86-video-ati/PKGBUILD-oba b/xf86-video-ati/PKGBUILD-oba new file mode 100644 index 0000000..361cef7 --- /dev/null +++ b/xf86-video-ati/PKGBUILD-oba @@ -0,0 +1,121 @@ +# Copyright : Obarun +#------------------------ +# Maintainer : Eric Vidal +# Maintainer : Jean-Michel T.Dydak +# Maintainer : YianIris +#---------------- +# Obarun PkgSrc : https://git.obarun.org/pkg/obextra/xf86-video-ati +#------------------------------------------------------------------- +# DESCRIPTION ] + +pkgname=xf86-video-ati +pkgver=19.1.0.r9.g5eba006e +pkgrel=3 +epoch=1 +pkgdesc="X.org ati video driver" +url='https://xorg.freedesktop.org/' + +track=commit +target=5eba006e4129e8015b822f9e1d2f1e613e252cda +source=( + "${pkgname}-${pkgver}::git+https://gitlab.freedesktop.org/xorg/driver/${pkgname}#${track}=${target}" + 0001_dont_set_sourcevalidate_pointer_to_null.diff +) + +#---------------------- +# BUILD CONFIGURATION ] + +makedepends=( + 'xorg-server-devel' + 'X-ABI-VIDEODRV_VERSION=25.2' + 'git' +) + +#------------------------ +# INSTALL CONFIGURATION ] + +depends=( + 'mesa' +) + +conflicts=( + 'xorg-server<21.1.1' + 'X-ABI-VIDEODRV_VERSION<25' + 'X-ABI-VIDEODRV_VERSION>=26' +) + +groups=( + 'xorg-drivers' +) + +#---------------- +# BUILD PREPARE ] + +pkgver() { + cd ${pkgname}* + + ## from ati-git AUR pkg + git describe --long | sed 's/^xf86-video-ati-//;s/\([^-]*-g\)/r\1/;s/-/./g' + +} + +prepare() { + cd ${pkgname}* + + ## fix a crash under Xorg-server 21.1.1 + ## https://bugs.archlinux.org/task/72759 + ## https://gitlab.freedesktop.org/xorg/driver/xf86-video-ati/-/merge_requests/9 + patch -Np1 -i ../0001_dont_set_sourcevalidate_pointer_to_null.diff + + NOCONFIGURE=1 ./autogen.sh +} + +#-------- +# BUILD ] + +build() { + cd ${pkgname}* + + ## Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf + ## With them, module fail to load with undefined symbol. + ## See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845 + export CFLAGS=${CFLAGS/-fno-plt} + export CXXFLAGS=${CXXFLAGS/-fno-plt} + export LDFLAGS=${LDFLAGS/,-z,now} + + ./configure --prefix=/usr + make +} + +#-------- +# CHECK ] + + +check() { + cd ${pkgname}* + make check +} + +#---------- +# PACKAGE ] + +package() { + cd ${pkgname}* + + make "DESTDIR=$pkgdir" install + + install -m755 -d "$pkgdir/usr/share/licenses/$pkgname" + install -m644 COPYING "$pkgdir/usr/share/licenses/$pkgname/" +} + +#-------------------- +# ARCH LICENSE AUTH ] + +arch=(x86_64) +license=(custom) + +validpgpkeys=( + 'B09FAF35BE914521980951145A81AF8E6ADBB200' # Michel Daenzer +) + +sha512sums=('') diff --git a/xf86-video-ati/clean b/xf86-video-ati/clean new file mode 100644 index 0000000..e1fb4ea --- /dev/null +++ b/xf86-video-ati/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,xf86-video-ati*} diff --git a/xf86-video-ati/deps b/xf86-video-ati/deps new file mode 100644 index 0000000..8288525 --- /dev/null +++ b/xf86-video-ati/deps @@ -0,0 +1,6 @@ +xorg-server-devel +xorg-server +git + +autoconf +automake diff --git a/xf86-video-ati/time b/xf86-video-ati/time new file mode 100644 index 0000000..a939725 --- /dev/null +++ b/xf86-video-ati/time @@ -0,0 +1,5 @@ + +real 0m22.688s +user 0m32.886s +sys 0m6.171s + diff --git a/xf86-video-fbdev/PKGBUILD b/xf86-video-fbdev/PKGBUILD new file mode 100644 index 0000000..6a6bfd8 --- /dev/null +++ b/xf86-video-fbdev/PKGBUILD @@ -0,0 +1,60 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=xf86-video-fbdev +pkgver=0.5.0 +pkgrel=03 +pkgdesc="X.org framebuffer video driver" +arch=(x86_64) +url="https://xorg.freedesktop.org/" +depends=('glibc') +makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=25.2') # git) +conflicts=('xorg-server<21.1.1' 'X-ABI-VIDEODRV_VERSION<25' 'X-ABI-VIDEODRV_VERSION>=26') +groups=('xorg-drivers') +source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2{,.sig} + gcc8.diff) + +prepare() { + cd $pkgname-$pkgver + patch -Np0 -i ../gcc8.diff +} + +build() { + cd $pkgname-$pkgver + + # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf + # With them, module fail to load with undefined symbol. + # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845 + export CFLAGS=${CFLAGS/-fno-plt} + export CXXFLAGS=${CXXFLAGS/-fno-plt} + export LDFLAGS=${LDFLAGS/,-z,now} + + ./configure --prefix=/usr + make +} + +check() { + cd $pkgname-$pkgver + make check +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="${pkgdir}" install + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} + +#---- license gpg-key sha256sums ---- + +license=('custom') + +validpgpkeys=('995ED5C8A6138EB0961F18474C09DD83CAAA50B2') + +sha256sums=(dcc3d85f378022180e437a9ec00a59b6cb7680ff79c40394d695060af2374699 # xf86-video-fbdev-0.5.0.tar.bz2 + cc059a67e1823694c446e6302d3ac6d6f11c2136b09765ee556c5735d24ddb41 # xf86-video-fbdev-0.5.0.tar.bz2.sig + 050db537aae39b6deb1b2531b0064d62e2725f92b6c5c8ee6ade32e73cd3d5e8) # gcc8.diff diff --git a/xf86-video-fbdev/PKGBUILD-arch b/xf86-video-fbdev/PKGBUILD-arch new file mode 100644 index 0000000..e043b5c --- /dev/null +++ b/xf86-video-fbdev/PKGBUILD-arch @@ -0,0 +1,52 @@ +#Maintainer: Jan de Groot + +pkgname=xf86-video-fbdev +pkgver=0.5.0 +pkgrel=3 +pkgdesc="X.org framebuffer video driver" +arch=(x86_64) +license=('custom') +url="https://xorg.freedesktop.org/" +depends=('glibc') +makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=25.2') # git) +conflicts=('xorg-server<21.1.1' 'X-ABI-VIDEODRV_VERSION<25' 'X-ABI-VIDEODRV_VERSION>=26') +groups=('xorg-drivers') +source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2{,.sig} + gcc8.diff) +sha256sums=('dcc3d85f378022180e437a9ec00a59b6cb7680ff79c40394d695060af2374699' + 'SKIP' + '050db537aae39b6deb1b2531b0064d62e2725f92b6c5c8ee6ade32e73cd3d5e8') +validpgpkeys=('995ED5C8A6138EB0961F18474C09DD83CAAA50B2') + +prepare() { + cd $pkgname-$pkgver + patch -Np0 -i ../gcc8.diff +} + +build() { + cd $pkgname-$pkgver + + # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf + # With them, module fail to load with undefined symbol. + # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845 + export CFLAGS=${CFLAGS/-fno-plt} + export CXXFLAGS=${CXXFLAGS/-fno-plt} + export LDFLAGS=${LDFLAGS/,-z,now} + + ./configure --prefix=/usr + make +} + +check() { + cd $pkgname-$pkgver + make check +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="${pkgdir}" install + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} + + diff --git a/xf86-video-fbdev/clean b/xf86-video-fbdev/clean new file mode 100644 index 0000000..32adad0 --- /dev/null +++ b/xf86-video-fbdev/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,xf86-video-*.tar.bz*} diff --git a/xf86-video-fbdev/deps b/xf86-video-fbdev/deps new file mode 100644 index 0000000..85e8366 --- /dev/null +++ b/xf86-video-fbdev/deps @@ -0,0 +1,2 @@ +xorg-server-devel +xorg-server diff --git a/xf86-video-fbdev/gcc8.diff b/xf86-video-fbdev/gcc8.diff new file mode 100644 index 0000000..87b592a --- /dev/null +++ b/xf86-video-fbdev/gcc8.diff @@ -0,0 +1,11 @@ +--- src/fbdev.c 2018-05-11 21:15:36.650039778 +0200 ++++ src/fbdev.c.new 2018-05-11 21:17:27.063021717 +0200 +@@ -1008,7 +1008,7 @@ + fPtr->CloseScreen = pScreen->CloseScreen; + pScreen->CloseScreen = FBDevCloseScreen; + +-#if XV ++#ifdef XV + { + XF86VideoAdaptorPtr *ptr; + diff --git a/xf86-video-fbdev/key b/xf86-video-fbdev/key new file mode 100644 index 0000000..2aaeb42 --- /dev/null +++ b/xf86-video-fbdev/key @@ -0,0 +1 @@ +gpg -v --recv-key 4C09DD83CAAA50B2 diff --git a/xf86-video-intel/PKGBUILD b/xf86-video-intel/PKGBUILD new file mode 100644 index 0000000..e1c73d7 --- /dev/null +++ b/xf86-video-intel/PKGBUILD @@ -0,0 +1,90 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=xf86-video-intel +# https://cgit.freedesktop.org/xorg/driver/xf86-video-intel/log/ +# https://gitlab.freedesktop.org/xorg/driver/xf86-video-intel/commits/master +_commit=31486f40f8e8f8923ca0799aea84b58799754564 # master 2021-01-15 +pkgver=2.99.917+916+g31486f40 +pkgrel=02 +epoch=1 +arch=(x86_64) +url="https://01.org/linuxgraphics" +install=$pkgname.install +pkgdesc="X.org Intel i810/i830/i915/945G/G965+ video drivers" +depends=('mesa' 'libxvmc' 'pixman' 'xcb-util>=0.3.9') +makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=25.2' 'libx11' 'libxrender' 'libxv' + # additional deps for intel-virtual-output + 'libxrandr' 'libxinerama' 'libxcursor' 'libxtst' 'libxss' + # additional for git snapshot + 'git') # 'meson' 'valgrind') +optdepends=('libxrandr: for intel-virtual-output' + 'libxinerama: for intel-virtual-output' + 'libxcursor: for intel-virtual-output' + 'libxtst: for intel-virtual-output' + 'libxss: for intel-virtual-output') +replaces=('xf86-video-intel-uxa' 'xf86-video-intel-sna') +provides=('xf86-video-intel-uxa' 'xf86-video-intel-sna') +conflicts=('xorg-server<21.1.1' 'X-ABI-VIDEODRV_VERSION<25' 'X-ABI-VIDEODRV_VERSION>=26' + 'xf86-video-intel-sna' 'xf86-video-intel-uxa' 'xf86-video-i810' 'xf86-video-intel-legacy') +groups=('xorg-drivers') +source=("git+https://anongit.freedesktop.org/git/xorg/driver/xf86-video-intel#commit=$_commit") +#options=('!makeflags') + +pkgver() { + cd $pkgname + git describe --tags | sed 's/-/+/g' +} + +prepare() { + cd $pkgname + NOCONFIGURE=1 ./autogen.sh + +# mkdir build +} + +build() { + cd $pkgname + + # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf + # With them, module fail to load with undefined symbol. + # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845 + export CFLAGS=${CFLAGS/-fno-plt} + export CXXFLAGS=${CXXFLAGS/-fno-plt} + export LDFLAGS=${LDFLAGS/,-z,now} + + ./configure --prefix=/usr \ + --libexecdir=/usr/lib \ + --with-default-dri=3 + make +# cd build +# arch-meson $pkgname build \ +# -Dwith-default-dri=3 +# ninja -C build +} + +check() { + cd $pkgname + make check +# meson test -C build +} + +package() { + cd $pkgname + + make DESTDIR="${pkgdir}" install + +# DESTDIR="$pkgdir" ninja -C build install + + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} + +#---- license gpg-key sha256sums ---- + +license=('custom') + +sha256sums=('SKIP') diff --git a/xf86-video-intel/PKGBUILD-arch b/xf86-video-intel/PKGBUILD-arch new file mode 100644 index 0000000..0790e93 --- /dev/null +++ b/xf86-video-intel/PKGBUILD-arch @@ -0,0 +1,83 @@ +# Maintainer: AndyRTR +# Maintainer: Jan de Groot + +pkgname=xf86-video-intel +# https://cgit.freedesktop.org/xorg/driver/xf86-video-intel/log/ +# https://gitlab.freedesktop.org/xorg/driver/xf86-video-intel/commits/master +_commit=31486f40f8e8f8923ca0799aea84b58799754564 # master 2021-01-15 +pkgver=2.99.917+916+g31486f40 +pkgrel=2 +epoch=1 +arch=(x86_64) +url="https://01.org/linuxgraphics" +license=('custom') +install=$pkgname.install +pkgdesc="X.org Intel i810/i830/i915/945G/G965+ video drivers" +depends=('mesa' 'libxvmc' 'pixman' 'xcb-util>=0.3.9' 'systemd-libs') +makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=25.2' 'libx11' 'libxrender' 'libxv' + # additional deps for intel-virtual-output + 'libxrandr' 'libxinerama' 'libxcursor' 'libxtst' 'libxss' + # additional for git snapshot + 'git') # 'meson' 'valgrind') +optdepends=('libxrandr: for intel-virtual-output' + 'libxinerama: for intel-virtual-output' + 'libxcursor: for intel-virtual-output' + 'libxtst: for intel-virtual-output' + 'libxss: for intel-virtual-output') +replaces=('xf86-video-intel-uxa' 'xf86-video-intel-sna') +provides=('xf86-video-intel-uxa' 'xf86-video-intel-sna') +conflicts=('xorg-server<21.1.1' 'X-ABI-VIDEODRV_VERSION<25' 'X-ABI-VIDEODRV_VERSION>=26' + 'xf86-video-intel-sna' 'xf86-video-intel-uxa' 'xf86-video-i810' 'xf86-video-intel-legacy') +groups=('xorg-drivers') +source=("git+https://anongit.freedesktop.org/git/xorg/driver/xf86-video-intel#commit=$_commit") +sha256sums=('SKIP') +#options=('!makeflags') + +pkgver() { + cd $pkgname + git describe --tags | sed 's/-/+/g' +} + +prepare() { + cd $pkgname + NOCONFIGURE=1 ./autogen.sh + +# mkdir build +} + +build() { + cd $pkgname + + # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf + # With them, module fail to load with undefined symbol. + # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845 + export CFLAGS=${CFLAGS/-fno-plt} + export CXXFLAGS=${CXXFLAGS/-fno-plt} + export LDFLAGS=${LDFLAGS/,-z,now} + + ./configure --prefix=/usr \ + --libexecdir=/usr/lib \ + --with-default-dri=3 + make +# cd build +# arch-meson $pkgname build \ +# -Dwith-default-dri=3 +# ninja -C build +} + +check() { + cd $pkgname + make check +# meson test -C build +} + +package() { + cd $pkgname + + make DESTDIR="${pkgdir}" install + +# DESTDIR="$pkgdir" ninja -C build install + + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} diff --git a/xf86-video-intel/PKGBUILD-oba b/xf86-video-intel/PKGBUILD-oba new file mode 100644 index 0000000..0cb43af --- /dev/null +++ b/xf86-video-intel/PKGBUILD-oba @@ -0,0 +1,150 @@ +# Obarun : 66 init/supervisor +# Maintainer : Eric Vidal +# Maintainer : Jean-Michel T.Dydak +# Maintainer : YianIris +# Obarun PkgSrc : https://git.obarun.org/pkg/obextra/xf86-video-intel +#---------------- +#-------------------------------------------------------------- +# DESCRIPTION ] + +pkgname=xf86-video-intel +pkgver=2.99.917+916+g31486f40 +pkgrel=3 +epoch=1 +pkgdesc="X.org Intel i810/i830/i915/945G/G965+ video drivers" + +url='https://01.org/linuxgraphics' + +track=commit +target=31486f40f8e8f8923ca0799aea84b58799754564 # refs/heads/master + +source=( + git+https://anongit.freedesktop.org/git/xorg/driver/xf86-video-intel#$track=$target +) + +#---------------------- +# BUILD CONFIGURATION ] + +makedepends=( + 'xorg-server-devel' + 'X-ABI-VIDEODRV_VERSION=25.2' + 'libx11' + 'libxrender' + # additional deps for intel-virtual-output + 'libxrandr' + 'libxinerama' + 'libxcursor' + 'libxtst' + 'libxss' + 'libxv' + # additional for git snapshot + 'git' +) + +#------------------------ +# INSTALL CONFIGURATION ] + +depends=( + 'mesa' + 'libxvmc' + 'pixman' + 'xcb-util>=0.3.9' +) + +optdepends=( + 'libxrandr: for intel-virtual-output' + 'libxinerama: for intel-virtual-output' + 'libxcursor: for intel-virtual-output' + 'libxtst: for intel-virtual-output' + 'libxss: for intel-virtual-output' +) + +conflicts=( + 'xorg-server<21.1.1' + 'X-ABI-VIDEODRV_VERSION<25' + 'X-ABI-VIDEODRV_VERSION>=26' + 'xf86-video-intel-sna' + 'xf86-video-intel-uxa' + 'xf86-video-i810' + 'xf86-video-intel-legacy' +) + +provides=( + 'xf86-video-intel-uxa' + 'xf86-video-intel-sna' +) + +replaces=( + 'xf86-video-intel-uxa' + 'xf86-video-intel-sna' +) + +groups=( + 'xorg-drivers' +) + +install=$pkgname.install + + +#---------------- +# BUILD PREPARE ] + +pkgver() { + cd $pkgname + git describe --tags | sed 's/-/+/g' +} + +prepare() { + cd $pkgname + NOCONFIGURE=1 ./autogen.sh +} + +#-------- +# BUILD ] + +build() { + cd $pkgname + + ## Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf + ## With them, module fail to load with undefined symbol. + ## See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845 + export CFLAGS=${CFLAGS/-fno-plt} + export CXXFLAGS=${CXXFLAGS/-fno-plt} + export LDFLAGS=${LDFLAGS/,-z,now} + + ./configure \ + --prefix=/usr \ + --libexecdir=/usr/lib \ + --with-default-dri=3 \ + --enable-udev + make +} + +#-------- +# CHECK ] + +check() { + cd $pkgname + make check +} + +#---------- +# PACKAGE ] + +package() { + cd $pkgname + + make DESTDIR="$pkgdir" install + + install -m755 -d "$pkgdir/usr/share/licenses/$pkgname" + install -m644 COPYING "$pkgdir/usr/share/licenses/$pkgname/" +} + + +#--------------------------- +# LICENSE AND VERIFICATION ] + +arch=(x86_64) +license=(custom) + +sha512sums=(' ') diff --git a/xf86-video-intel/clean b/xf86-video-intel/clean new file mode 100644 index 0000000..32b9cdc --- /dev/null +++ b/xf86-video-intel/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,xf86-video-intel} diff --git a/xf86-video-intel/deps b/xf86-video-intel/deps new file mode 100644 index 0000000..e871fe1 --- /dev/null +++ b/xf86-video-intel/deps @@ -0,0 +1,14 @@ +xorg-server-devel +xorg-server +libxvmc +xcb-util +libxrender +libxv +libxrandr +libxinerama +libxcursor +libxtst +libxss +git +autoconf +automake diff --git a/xf86-video-intel/time b/xf86-video-intel/time new file mode 100644 index 0000000..bfbf5ce --- /dev/null +++ b/xf86-video-intel/time @@ -0,0 +1,4 @@ + +real 0m50.790s +user 1m49.020s +sys 0m12.185s diff --git a/xf86-video-intel/xf86-video-intel.install b/xf86-video-intel/xf86-video-intel.install new file mode 100644 index 0000000..1d31abe --- /dev/null +++ b/xf86-video-intel/xf86-video-intel.install @@ -0,0 +1,21 @@ +post_install() { + cat <>> This driver now uses DRI3 as the default Direct Rendering + Infrastructure. You can try falling back to DRI2 if you run + into trouble. To do so, save a file with the following + content as /etc/X11/xorg.conf.d/20-intel.conf : + Section "Device" + Identifier "Intel Graphics" + Driver "intel" + Option "DRI" "2" # DRI3 is now default + #Option "AccelMethod" "sna" # default + #Option "AccelMethod" "uxa" # fallback + EndSection +MSG +} + +post_upgrade() { + if (( $(vercmp $2 1:2.99.917+684+g6988b87-3) < 0 )); then + post_install + fi +} diff --git a/xf86-video-nouveau/PKGBUILD b/xf86-video-nouveau/PKGBUILD new file mode 100644 index 0000000..522841a --- /dev/null +++ b/xf86-video-nouveau/PKGBUILD @@ -0,0 +1,58 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=xf86-video-nouveau +pkgver=1.0.17 +pkgrel=02 +pkgdesc="Open Source 3D acceleration driver for nVidia cards" +arch=('x86_64') +url="https://nouveau.freedesktop.org/" +depends=('mesa') +makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=25.2') +conflicts=('xorg-server<21.1.1' 'X-ABI-VIDEODRV_VERSION<25' 'X-ABI-VIDEODRV_VERSION>=26') +groups=('xorg-drivers') +source=(https://xorg.freedesktop.org/archive/individual/driver/$pkgname-$pkgver.tar.bz2{,.sig} + xorg-server-21.1.diff) + +prepare() { + cd $pkgname-$pkgver + patch -np1 -i ../xorg-server-21.1.diff +} + +build() { + cd $pkgname-$pkgver + + # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf + # With them, module fail to load with undefined symbol. + # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845 + export CFLAGS=${CFLAGS/-fno-plt} + export CXXFLAGS=${CXXFLAGS/-fno-plt} + export LDFLAGS=${LDFLAGS/,-z,now} + + ./configure --prefix=/usr + make +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install +} + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +validpgpkeys=('B97BD6A80CAC4981091AE547FE558C72A67013C3') # Maarten Lankhorst +validpgpkeys+=('C9FA6B58BC799041500F769AC5469FB8758F9C2B') # "Lyude Paul " +validpgpkeys+=('BFB9B0C276D5767C710086EFB178BE4EA075DE07') # "Ilia Mirkin " + +sha512sums=('adba58ba5298d1a5b3f9f8540f9ef2cb2e10e47bba8e374103ec2e1f92e915f5f4393ed0021168cd649646e12315135a1efcdf77e8fb1648e1295914d87279b2' + 'SKIP' + '6c1bc0a2197a0fdaa3f669ce96ab2bc0167642168da01a86c712e1a77692244ad7b68a5c71d47b62abb6fa9b74f0495226133b7eff4badbd6dda56994bba74c8') + +sha256sums=(499322e27a55c8183166bf2dd1e47d085eb834143e0d7036baba8427b90c156b # xf86-video-nouveau-1.0.17.tar.bz2 + a20ed54d80990906940149cdeb0594373e7f0033778689277b8335b8c87c8929 # xf86-video-nouveau-1.0.17.tar.bz2.sig + 1a24074aa7ae3226100e9fc4d58c911e23f64e32109c0516228b91e303d1d658) # xorg-server-21.1.diff diff --git a/xf86-video-nouveau/PKGBUILD-arch.new b/xf86-video-nouveau/PKGBUILD-arch.new new file mode 100644 index 0000000..3dcf9aa --- /dev/null +++ b/xf86-video-nouveau/PKGBUILD-arch.new @@ -0,0 +1,46 @@ +# Maintainer: Andreas Radke +# Contributor: buddabrod + +pkgname=xf86-video-nouveau +pkgver=1.0.17 +pkgrel=2 +pkgdesc="Open Source 3D acceleration driver for nVidia cards" +arch=('x86_64') +url="https://nouveau.freedesktop.org/" +license=('GPL') +depends=('systemd-libs' 'mesa') +makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=25.2' 'systemd') +conflicts=('xorg-server<21.1.1' 'X-ABI-VIDEODRV_VERSION<25' 'X-ABI-VIDEODRV_VERSION>=26') +groups=('xorg-drivers') +source=(https://xorg.freedesktop.org/archive/individual/driver/$pkgname-$pkgver.tar.bz2{,.sig} + xorg-server-21.1.diff) +sha512sums=('adba58ba5298d1a5b3f9f8540f9ef2cb2e10e47bba8e374103ec2e1f92e915f5f4393ed0021168cd649646e12315135a1efcdf77e8fb1648e1295914d87279b2' + 'SKIP' + '6c1bc0a2197a0fdaa3f669ce96ab2bc0167642168da01a86c712e1a77692244ad7b68a5c71d47b62abb6fa9b74f0495226133b7eff4badbd6dda56994bba74c8') +validpgpkeys=('B97BD6A80CAC4981091AE547FE558C72A67013C3') # Maarten Lankhorst +validpgpkeys+=('C9FA6B58BC799041500F769AC5469FB8758F9C2B') # "Lyude Paul " +validpgpkeys+=('BFB9B0C276D5767C710086EFB178BE4EA075DE07') # "Ilia Mirkin " + +prepare() { + cd $pkgname-$pkgver + patch -np1 -i ../xorg-server-21.1.diff +} + +build() { + cd $pkgname-$pkgver + + # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf + # With them, module fail to load with undefined symbol. + # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845 + export CFLAGS=${CFLAGS/-fno-plt} + export CXXFLAGS=${CXXFLAGS/-fno-plt} + export LDFLAGS=${LDFLAGS/,-z,now} + + ./configure --prefix=/usr + make +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install +} diff --git a/xf86-video-nouveau/clean b/xf86-video-nouveau/clean new file mode 100644 index 0000000..c084fa5 --- /dev/null +++ b/xf86-video-nouveau/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,xf86-vid*nouveau*.tar.bz2*} diff --git a/xf86-video-nouveau/deps b/xf86-video-nouveau/deps new file mode 100644 index 0000000..e2f4f81 --- /dev/null +++ b/xf86-video-nouveau/deps @@ -0,0 +1,3 @@ +mesa +xorg-server +xorg-server-devel diff --git a/xf86-video-nouveau/key b/xf86-video-nouveau/key new file mode 100644 index 0000000..2d29e6b --- /dev/null +++ b/xf86-video-nouveau/key @@ -0,0 +1 @@ +gpg -v --recv-key B178BE4EA075DE07 diff --git a/xf86-video-nouveau/time b/xf86-video-nouveau/time new file mode 100644 index 0000000..9d1ac2c --- /dev/null +++ b/xf86-video-nouveau/time @@ -0,0 +1,5 @@ + +real 0m12.808s +user 0m19.779s +sys 0m5.128s + diff --git a/xf86-video-nouveau/xorg-server-21.1.diff b/xf86-video-nouveau/xorg-server-21.1.diff new file mode 100644 index 0000000..03d0b80 --- /dev/null +++ b/xf86-video-nouveau/xorg-server-21.1.diff @@ -0,0 +1,50 @@ +diff --git a/src/compat-api.h b/src/compat-api.h +index fde2f4b1cfde75875c07bfe13524dc6ba2661382..8a1fcf9be1c5d1ceb48a50f2ed533d93ec7ff4c7 100644 +--- a/src/compat-api.h ++++ b/src/compat-api.h +@@ -102,4 +102,8 @@ + + #endif + ++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2) ++#define secondary_dst slave_dst ++#endif ++ + #endif +diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c +index 55df6f8f11c9e14b1891e5c841faef10c17f0a35..db3b112a2db70f8e902e54aa3af99e51e7d0c6f7 100644 +--- a/src/nouveau_exa.c ++++ b/src/nouveau_exa.c +@@ -157,7 +157,7 @@ nouveau_exa_destroy_pixmap(ScreenPtr pScreen, void *priv) + + #ifdef NOUVEAU_PIXMAP_SHARING + static Bool +-nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr slave, void **handle_p) ++nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr secondary, void **handle_p) + { + struct nouveau_bo *bo = nouveau_pixmap_bo(ppix); + struct nouveau_pixmap *nvpix = nouveau_pixmap(ppix); +diff --git a/src/nv_driver.c b/src/nv_driver.c +index e72a6b65a81119f12f3608295a4547762a866ad7..f9ab4af19361d99d74f580d1ff3f28d49843e8b0 100644 +--- a/src/nv_driver.c ++++ b/src/nv_driver.c +@@ -559,16 +559,16 @@ redisplay_dirty(ScreenPtr screen, PixmapDirtyUpdatePtr dirty) + { + RegionRec pixregion; + +- PixmapRegionInit(&pixregion, dirty->slave_dst); ++ PixmapRegionInit(&pixregion, dirty->secondary_dst); + +- DamageRegionAppend(&dirty->slave_dst->drawable, &pixregion); ++ DamageRegionAppend(&dirty->secondary_dst->drawable, &pixregion); + #ifdef HAS_DIRTYTRACKING_ROTATION + PixmapSyncDirtyHelper(dirty); + #else + PixmapSyncDirtyHelper(dirty, &pixregion); + #endif + +- DamageRegionProcessPending(&dirty->slave_dst->drawable); ++ DamageRegionProcessPending(&dirty->secondary_dst->drawable); + RegionUninit(&pixregion); + } + diff --git a/xf86-video-openchrome/PKGBUILD b/xf86-video-openchrome/PKGBUILD new file mode 100644 index 0000000..f19d51f --- /dev/null +++ b/xf86-video-openchrome/PKGBUILD @@ -0,0 +1,76 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=xf86-video-openchrome +_commit=15c868a # 7 digits # = 0.6.0 RC1 +pkgver=0.6.0.r754.g15c868a +#pkgver=0.6.0 +pkgrel=01 +pkgdesc="X.Org Openchrome drivers" +arch=(x86_64) +url="https://www.freedesktop.org/wiki/Openchrome/" +depends=('libdrm' 'libxvmc') +optdepends=('unichrome-dri') +makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=25.2' 'libxv' + 'git') +conflicts=('xorg-server<21.1.1' 'X-ABI-VIDEODRV_VERSION<25' 'X-ABI-VIDEODRV_VERSION>=26' + 'xf86-video-via' 'xf86-video-unichrome' 'openchrome') +replaces=('openchrome' 'xf86-video-via') +groups=('xorg-drivers') +options=('!emptydirs') +#source=(https://xorg.freedesktop.org/archive/individual/driver/${pkgname}-${pkgver}.tar.bz2{,.sig}) +#sha256sums=('da2975c6379358de52c1257710c67eb59139a7f0a1cd28d00cc64cc3e1c02f75' +# 'SKIP') +source=("git://anongit.freedesktop.org/openchrome/xf86-video-openchrome#commit=${_commit}") + +pkgver() { + cd $pkgname + #git describe --long | sed 's/-/+/g' +# git describe --long | sed "s/openchrome-//;s/-/./g" + git describe --long | sed 's/^xf86-video-openchrome-//;s/\([^-]*-g\)/r\1/;s/-/./g' +# git describe --long | sed "s/openchrome-//;s/0.5/0.5.200/;s/-/+/g" +# git describe --long | sed "s/openchrome-//;s/0.5/0.5.0/;s/-/+/g" +} + +prepare() { + cd $pkgname + NOCONFIGURE=1 ./autogen.sh +} + +build() { + cd ${pkgname} #-${pkgver} + + # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf + # With them, module fail to load with undefined symbol. + # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845 + export CFLAGS=${CFLAGS/-fno-plt} + export CXXFLAGS=${CXXFLAGS/-fno-plt} + export LDFLAGS=${LDFLAGS/,-z,now} + + ./configure --prefix=/usr + make +} + +check() { + cd ${pkgname} #-${pkgver} + make check +} + + +package() { + cd ${pkgname} #-${pkgver} + make DESTDIR="${pkgdir}" install + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} + +#---- license gpg-key sha256sums ---- + +license=('custom') + +validpgpkeys=('CDA92E38A7A7A82237E9AB61C922784178BFFDB0') # "Kevin Brace " + +sha256sums=('SKIP') diff --git a/xf86-video-openchrome/PKGBUILD-arch.new b/xf86-video-openchrome/PKGBUILD-arch.new new file mode 100644 index 0000000..bd1845f --- /dev/null +++ b/xf86-video-openchrome/PKGBUILD-arch.new @@ -0,0 +1,69 @@ +# Maintainer: AndyRTR +# Contributor: Paul Mattal +# Contributor: Juergen Hoetzel + +pkgname=xf86-video-openchrome +_commit=15c868a # 7 digits # = 0.6.0 RC1 +pkgver=0.6.0.r754.g15c868a +#pkgver=0.6.0 +pkgrel=1 +pkgdesc="X.Org Openchrome drivers" +arch=(x86_64) +license=('custom') +url="https://www.freedesktop.org/wiki/Openchrome/" +depends=('libdrm' 'libxvmc' 'systemd-libs') +optdepends=('unichrome-dri') +makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=25.2' 'systemd' 'libxv' + 'git') +conflicts=('xorg-server<21.1.1' 'X-ABI-VIDEODRV_VERSION<25' 'X-ABI-VIDEODRV_VERSION>=26' + 'xf86-video-via' 'xf86-video-unichrome' 'openchrome') +replaces=('openchrome' 'xf86-video-via') +groups=('xorg-drivers') +options=('!emptydirs') +#source=(https://xorg.freedesktop.org/archive/individual/driver/${pkgname}-${pkgver}.tar.bz2{,.sig}) +#sha256sums=('da2975c6379358de52c1257710c67eb59139a7f0a1cd28d00cc64cc3e1c02f75' +# 'SKIP') +source=("git://anongit.freedesktop.org/openchrome/xf86-video-openchrome#commit=${_commit}") +sha256sums=('SKIP') +validpgpkeys=('CDA92E38A7A7A82237E9AB61C922784178BFFDB0') # "Kevin Brace " + +pkgver() { + cd $pkgname + #git describe --long | sed 's/-/+/g' +# git describe --long | sed "s/openchrome-//;s/-/./g" + git describe --long | sed 's/^xf86-video-openchrome-//;s/\([^-]*-g\)/r\1/;s/-/./g' +# git describe --long | sed "s/openchrome-//;s/0.5/0.5.200/;s/-/+/g" +# git describe --long | sed "s/openchrome-//;s/0.5/0.5.0/;s/-/+/g" +} + +prepare() { + cd $pkgname + NOCONFIGURE=1 ./autogen.sh +} + +build() { + cd ${pkgname} #-${pkgver} + + # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf + # With them, module fail to load with undefined symbol. + # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845 + export CFLAGS=${CFLAGS/-fno-plt} + export CXXFLAGS=${CXXFLAGS/-fno-plt} + export LDFLAGS=${LDFLAGS/,-z,now} + + ./configure --prefix=/usr + make +} + +check() { + cd ${pkgname} #-${pkgver} + make check +} + + +package() { + cd ${pkgname} #-${pkgver} + make DESTDIR="${pkgdir}" install + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} diff --git a/xf86-video-openchrome/clean b/xf86-video-openchrome/clean new file mode 100644 index 0000000..bc51058 --- /dev/null +++ b/xf86-video-openchrome/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,xf86-vid*openchrome} diff --git a/xf86-video-openchrome/deps b/xf86-video-openchrome/deps new file mode 100644 index 0000000..611be9e --- /dev/null +++ b/xf86-video-openchrome/deps @@ -0,0 +1,8 @@ +libdrm +libxvmc +xorg-server-devel +xorg-server +libxv +git +autoconf +automake diff --git a/xf86-video-openchrome/time b/xf86-video-openchrome/time new file mode 100644 index 0000000..b9d12ab --- /dev/null +++ b/xf86-video-openchrome/time @@ -0,0 +1,5 @@ + +real 0m20.225s +user 0m25.743s +sys 0m6.188s + diff --git a/xf86-video-vesa/PKGBUILD b/xf86-video-vesa/PKGBUILD new file mode 100644 index 0000000..3da67d4 --- /dev/null +++ b/xf86-video-vesa/PKGBUILD @@ -0,0 +1,55 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=xf86-video-vesa +pkgver=2.5.0 +pkgrel=02 +pkgdesc="X.org vesa video driver" +arch=(x86_64) +url="https://xorg.freedesktop.org/" +depends=('glibc') +makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=25.2') +conflicts=('xorg-server<21.1.1' 'X-ABI-VIDEODRV_VERSION<25' 'X-ABI-VIDEODRV_VERSION>=26') +groups=('xorg-drivers' 'xorg') +source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2{,.sig} + revert-kernelcheck.patch) + +prepare() { + cd ${pkgname}-${pkgver} + patch -Np1 -R -i "${srcdir}/revert-kernelcheck.patch" +} + +build() { + cd ${pkgname}-${pkgver} + + # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf + # With them, module fail to load with undefined symbol. + # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845 + export CFLAGS=${CFLAGS/-fno-plt} + export CXXFLAGS=${CXXFLAGS/-fno-plt} + export LDFLAGS=${LDFLAGS/,-z,now} + + ./configure --prefix=/usr + make +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + install -d -m755 "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} + +#---- license gpg-key sha256sums ---- + +license=('custom') + +validpgpkeys=('DD38563A8A8224537D1F90E45B8A2D50A0ECD0D3') # "Adam Jackson " +validpgpkeys+=('995ED5C8A6138EB0961F18474C09DD83CAAA50B2') # "Adam Jackson " + +sha256sums=(1f1624f3c73906801ad1bc98335a2cb5676a7a4d18e5374d9a1d18464e54c659 # xf86-video-vesa-2.5.0.tar.bz2 + 573a90567db5d697c644565b86f7a4b6d1070438b4c6985e6810d4fdd0ae955d # xf86-video-vesa-2.5.0.tar.bz2.sig + ef591a342cea65f1b08e84771ae0de84395c98ac8a71739dbf5c0a7f7a36543c) # revert-kernelcheck.patch diff --git a/xf86-video-vesa/PKGBUILD-arch b/xf86-video-vesa/PKGBUILD-arch new file mode 100644 index 0000000..2489134 --- /dev/null +++ b/xf86-video-vesa/PKGBUILD-arch @@ -0,0 +1,46 @@ +# Maintainer: Jan de Groot + +pkgname=xf86-video-vesa +pkgver=2.5.0 +pkgrel=2 +pkgdesc="X.org vesa video driver" +arch=(x86_64) +license=('custom') +url="https://xorg.freedesktop.org/" +depends=('glibc') +makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=25.2') +conflicts=('xorg-server<21.1.1' 'X-ABI-VIDEODRV_VERSION<25' 'X-ABI-VIDEODRV_VERSION>=26') +groups=('xorg-drivers' 'xorg') +source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2{,.sig} + revert-kernelcheck.patch) +sha512sums=('36fd921f54f33eb25966b5f9ea1e1b3e9009965c012c8b9c676686b472111719921b80cf62dafc746058878253e21f0ef341a2ff2d650df22ca1e35e81716a8b' + 'SKIP' + '2357f9b30732321c774073c3e233d16ebff29aab31bcebf7c6481bd2187554e85ec8b9cd375eaa836b433dfaba4d9e9cea1dcf3659803a388ceb6699ed905923') +validpgpkeys=('DD38563A8A8224537D1F90E45B8A2D50A0ECD0D3') # "Adam Jackson " +validpgpkeys+=('995ED5C8A6138EB0961F18474C09DD83CAAA50B2') # "Adam Jackson " + +prepare() { + cd ${pkgname}-${pkgver} + patch -Np1 -R -i "${srcdir}/revert-kernelcheck.patch" +} + +build() { + cd ${pkgname}-${pkgver} + + # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf + # With them, module fail to load with undefined symbol. + # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845 + export CFLAGS=${CFLAGS/-fno-plt} + export CXXFLAGS=${CXXFLAGS/-fno-plt} + export LDFLAGS=${LDFLAGS/,-z,now} + + ./configure --prefix=/usr + make +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + install -d -m755 "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} diff --git a/xf86-video-vesa/clean b/xf86-video-vesa/clean new file mode 100644 index 0000000..87f1aea --- /dev/null +++ b/xf86-video-vesa/clean @@ -0,0 +1 @@ +rm -rvf {src,pkg,xf86-video-ves*.tar.bz*} diff --git a/xf86-video-vesa/deps b/xf86-video-vesa/deps new file mode 100644 index 0000000..85e8366 --- /dev/null +++ b/xf86-video-vesa/deps @@ -0,0 +1,2 @@ +xorg-server-devel +xorg-server diff --git a/xf86-video-vesa/key b/xf86-video-vesa/key new file mode 100644 index 0000000..2aaeb42 --- /dev/null +++ b/xf86-video-vesa/key @@ -0,0 +1 @@ +gpg -v --recv-key 4C09DD83CAAA50B2 diff --git a/xf86-video-vesa/revert-kernelcheck.patch b/xf86-video-vesa/revert-kernelcheck.patch new file mode 100644 index 0000000..37418cc --- /dev/null +++ b/xf86-video-vesa/revert-kernelcheck.patch @@ -0,0 +1,31 @@ +From b1f7f190f9d4f2ab63d3e9ade3e7e04bb4b1f89f Mon Sep 17 00:00:00 2001 +From: Adam Jackson +Date: Wed, 08 Dec 2010 18:45:32 +0000 +Subject: Refuse to load if there's a kernel driver bound to the device + +Ported from the equivalent check in nv. + +Signed-off-by: Adam Jackson +--- +diff --git a/src/vesa.c b/src/vesa.c +index 168fde1..2523d76 100644 +--- a/src/vesa.c ++++ b/src/vesa.c +@@ -431,8 +431,14 @@ VESAPciProbe(DriverPtr drv, int entity_num, struct pci_device *dev, + pScrn = xf86ConfigPciEntity(NULL, 0, entity_num, NULL, + NULL, NULL, NULL, NULL, NULL); + if (pScrn != NULL) { +- VESAPtr pVesa = VESAGetRec(pScrn); ++ VESAPtr pVesa; + ++ if (pci_device_has_kernel_driver(dev)) { ++ ErrorF("vesa: Ignoring device with a bound kernel driver\n"); ++ return FALSE; ++ } ++ ++ pVesa = VESAGetRec(pScrn); + VESAInitScrn(pScrn); + pVesa->pciInfo = dev; + } +-- +cgit v0.9.0.2-2-gbebe diff --git a/xf86-video-vesa/time b/xf86-video-vesa/time new file mode 100644 index 0000000..cb8fd01 --- /dev/null +++ b/xf86-video-vesa/time @@ -0,0 +1,4 @@ + +real 0m8.379s +user 0m5.366s +sys 0m3.683s diff --git a/xf86-video-vmware/PKGBUILD b/xf86-video-vmware/PKGBUILD new file mode 100644 index 0000000..35d6b8d --- /dev/null +++ b/xf86-video-vmware/PKGBUILD @@ -0,0 +1,57 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=xf86-video-vmware +pkgver=13.3.0 +pkgrel=03 +pkgdesc="X.org vmware video driver" +arch=(x86_64) +url="https://xorg.freedesktop.org/" +depends=('mesa') +makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=25.2') # 'git') +conflicts=('xorg-server<21.1.1' 'X-ABI-VIDEODRV_VERSION<25' 'X-ABI-VIDEODRV_VERSION>=26') +groups=('xorg-drivers') +options=('!emptydirs') +source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2{,.sig} + gcc8.diff) + +prepare() { + cd $pkgname-${pkgver} + patch -Np0 -i ../gcc8.diff +} + +build() { + cd ${pkgname}-${pkgver} + + # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf + # With them, module fail to load with undefined symbol. + # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845 + export CFLAGS=${CFLAGS/-fno-plt} + export CXXFLAGS=${CXXFLAGS/-fno-plt} + export LDFLAGS=${LDFLAGS/,-z,now} + + ./configure --prefix=/usr --enable-vmwarectrl-client + make +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} + +#---- license gpg-key sha256sums ---- + +license=('custom') + +validpgpkeys=('90D027AEAF33CBABC140735BC1F5D3CDF5176580') # Thomas Hellstrom (VMware) + +sha256sums=(47971924659e51666a757269ad941a059ef5afe7a47b5101c174a6022ac4066c # xf86-video-vmware-13.3.0.tar.bz2 + a2d40cc25bdf4c05c16fd92b71f58284f7f5a8851dec3aeb7c04e597e93a3794 # xf86-video-vmware-13.3.0.tar.bz2.sig + 76ac76c213a3a27e757d62d59980ddd65b34ac02bd0e4efb00833fc69c01793e) # gcc8.diff diff --git a/xf86-video-vmware/PKGBUILD-arch b/xf86-video-vmware/PKGBUILD-arch new file mode 100644 index 0000000..d76bc45 --- /dev/null +++ b/xf86-video-vmware/PKGBUILD-arch @@ -0,0 +1,47 @@ +# Maintainer: Jan de Groot + +pkgname=xf86-video-vmware +pkgver=13.3.0 +pkgrel=3 +pkgdesc="X.org vmware video driver" +arch=(x86_64) +url="https://xorg.freedesktop.org/" +license=('custom') +depends=('mesa' 'systemd-libs') +makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=25.2') # 'git') +conflicts=('xorg-server<21.1.1' 'X-ABI-VIDEODRV_VERSION<25' 'X-ABI-VIDEODRV_VERSION>=26') +groups=('xorg-drivers') +options=('!emptydirs') +source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2{,.sig} + gcc8.diff) +sha512sums=('c318de893cae7b2b11e11c1b389ee47478b7c8d1f52c27099dbe453efec28f3e9da449217307a8c2251999eada66312f766996be1a6ead413b8b6dedc42c68ca' + 'SKIP' + 'd05522c84dfa1a88bb9e892087f0a67968142b87f1d7f902e8d77150eae7a26ef7f43cef256d2173be060042b86336123fa7c7f521b37ca98f8fb45871bf30ad') +validpgpkeys=('90D027AEAF33CBABC140735BC1F5D3CDF5176580') # Thomas Hellstrom (VMware) + +prepare() { + cd $pkgname-${pkgver} + patch -Np0 -i ../gcc8.diff +} + +build() { + cd ${pkgname}-${pkgver} + + # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf + # With them, module fail to load with undefined symbol. + # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845 + export CFLAGS=${CFLAGS/-fno-plt} + export CXXFLAGS=${CXXFLAGS/-fno-plt} + export LDFLAGS=${LDFLAGS/,-z,now} + + ./configure --prefix=/usr --enable-vmwarectrl-client + make +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} diff --git a/xf86-video-vmware/clean b/xf86-video-vmware/clean new file mode 100644 index 0000000..65781ff --- /dev/null +++ b/xf86-video-vmware/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,*tar.bz2*} diff --git a/xf86-video-vmware/deps b/xf86-video-vmware/deps new file mode 100644 index 0000000..85e8366 --- /dev/null +++ b/xf86-video-vmware/deps @@ -0,0 +1,2 @@ +xorg-server-devel +xorg-server diff --git a/xf86-video-vmware/gcc8.diff b/xf86-video-vmware/gcc8.diff new file mode 100644 index 0000000..f9ee9b0 --- /dev/null +++ b/xf86-video-vmware/gcc8.diff @@ -0,0 +1,157 @@ +--- src/vmware.h 2018-05-11 17:43:24.776710047 +0200 ++++ src/vmware.h.new 2018-05-11 17:45:16.599821536 +0200 +@@ -83,7 +83,7 @@ + + typedef struct { + EntityInfoPtr pEnt; +-#if XSERVER_LIBPCIACCESS ++#ifdef XSERVER_LIBPCIACCESS + struct pci_device *PciInfo; + #else + pciVideoPtr PciInfo; +@@ -207,7 +207,7 @@ + /* Undefine this to kill all acceleration */ + #define ACCELERATE_OPS + +-#if XSERVER_LIBPCIACCESS ++#ifdef XSERVER_LIBPCIACCESS + #define VENDOR_ID(p) (p)->vendor_id + #define DEVICE_ID(p) (p)->device_id + #define SUBVENDOR_ID(p) (p)->subvendor_id +--- src/vmware.c 2018-05-11 17:28:30.612158774 +0200 ++++ src/vmware.c.new 2018-05-11 17:38:40.108785284 +0200 +@@ -341,7 +341,7 @@ + SVGA_LEGACY_BASE_PORT + SVGA_VALUE_PORT*sizeof(uint32); + } else { + /* Note: This setting of valueReg causes unaligned I/O */ +-#if XSERVER_LIBPCIACCESS ++#ifdef XSERVER_LIBPCIACCESS + pVMWARE->portIOBase = pVMWARE->PciInfo->regions[0].base_addr; + #else + pVMWARE->portIOBase = pVMWARE->PciInfo->ioBase[0]; +@@ -383,7 +383,7 @@ + } + pVMWARE->suspensionSavedRegId = id; + +-#if !XSERVER_LIBPCIACCESS ++#ifndef XSERVER_LIBPCIACCESS + pVMWARE->PciTag = pciTag(pVMWARE->PciInfo->bus, pVMWARE->PciInfo->device, + pVMWARE->PciInfo->func); + #endif +@@ -727,13 +727,13 @@ + VMWAREMapMem(ScrnInfoPtr pScrn) + { + VMWAREPtr pVMWARE = VMWAREPTR(pScrn); +-#if XSERVER_LIBPCIACCESS ++#ifdef XSERVER_LIBPCIACCESS + int err; + struct pci_device *const device = pVMWARE->PciInfo; + void *fbBase; + #endif + +-#if XSERVER_LIBPCIACCESS ++#ifdef XSERVER_LIBPCIACCESS + err = pci_device_map_range(device, + pVMWARE->memPhysBase, + pVMWARE->videoRam, +@@ -770,7 +770,7 @@ + + VmwareLog(("Unmapped: %p/%u\n", pVMWARE->FbBase, pVMWARE->videoRam)); + +-#if XSERVER_LIBPCIACCESS ++#ifdef XSERVER_LIBPCIACCESS + pci_device_unmap_range(pVMWARE->PciInfo, pVMWARE->FbBase, pVMWARE->videoRam); + #else + xf86UnMapVidMem(pScrn->scrnIndex, pVMWARE->FbBase, pVMWARE->videoRam); +@@ -1045,7 +1045,7 @@ + VMWAREInitFIFO(ScrnInfoPtr pScrn) + { + VMWAREPtr pVMWARE = VMWAREPTR(pScrn); +-#if XSERVER_LIBPCIACCESS ++#ifdef XSERVER_LIBPCIACCESS + struct pci_device *const device = pVMWARE->PciInfo; + int err; + void *mmioVirtBase; +@@ -1058,7 +1058,7 @@ + + pVMWARE->mmioPhysBase = vmwareReadReg(pVMWARE, SVGA_REG_MEM_START); + pVMWARE->mmioSize = vmwareReadReg(pVMWARE, SVGA_REG_MEM_SIZE) & ~3; +-#if XSERVER_LIBPCIACCESS ++#ifdef XSERVER_LIBPCIACCESS + err = pci_device_map_range(device, pVMWARE->mmioPhysBase, + pVMWARE->mmioSize, + PCI_DEV_MAP_FLAG_WRITABLE, +@@ -1099,7 +1099,7 @@ + TRACEPOINT + + vmwareWriteReg(pVMWARE, SVGA_REG_CONFIG_DONE, 0); +-#if XSERVER_LIBPCIACCESS ++#ifdef XSERVER_LIBPCIACCESS + pci_device_unmap_range(pVMWARE->PciInfo, pVMWARE->mmioVirtBase, pVMWARE->mmioSize); + #else + xf86UnMapVidMem(pScrn->scrnIndex, pVMWARE->mmioVirtBase, pVMWARE->mmioSize); +--- src/vmware_bootstrap.c 2018-05-11 20:59:15.003530525 +0200 ++++ src/vmware_bootstrap.c.new 2018-05-11 21:02:11.228289137 +0200 +@@ -91,7 +91,7 @@ + VMW_STRING(PACKAGE_VERSION_MAJOR) "." VMW_STRING(PACKAGE_VERSION_MINOR) \ + "." VMW_STRING(PACKAGE_VERSION_PATCHLEVEL) + +-#if !XSERVER_LIBPCIACCESS ++#ifndef XSERVER_LIBPCIACCESS + static const char VMWAREBuildStr[] = "VMware Guest X Server " + VMWARE_DRIVER_VERSION_STRING " - build=$Name$\n"; + #else +@@ -127,7 +127,7 @@ + #define vmwareLegacyRes NULL + #endif + +-#if XSERVER_LIBPCIACCESS ++#ifdef XSERVER_LIBPCIACCESS + #define VENDOR_ID(p) (p)->vendor_id + #define DEVICE_ID(p) (p)->device_id + #define SUBVENDOR_ID(p) (p)->subvendor_id +@@ -141,7 +141,7 @@ + #define CHIP_REVISION(p) (p)->chipRev + #endif + +-#if XSERVER_LIBPCIACCESS ++#ifdef XSERVER_LIBPCIACCESS + + #define VMWARE_DEVICE_MATCH(d, i) \ + {PCI_VENDOR_ID_VMWARE, (d), PCI_MATCH_ANY, PCI_MATCH_ANY, 0, 0, (i) } +@@ -220,7 +220,7 @@ + static Bool + VMwarePreinitStub(ScrnInfoPtr pScrn, int flags) + { +-#if XSERVER_LIBPCIACCESS ++#ifdef XSERVER_LIBPCIACCESS + struct pci_device *pciInfo; + #else + pciVideoPtr pciInfo; +@@ -270,7 +270,7 @@ + return (*pScrn->PreInit)(pScrn, flags); + }; + +-#if XSERVER_LIBPCIACCESS ++#ifdef XSERVER_LIBPCIACCESS + static Bool + VMwarePciProbe (DriverPtr drv, + int entity_num, +@@ -520,7 +520,7 @@ + VMWARE_DRIVER_VERSION, + vmware_driver_name, + VMWAREIdentify, +-#if XSERVER_LIBPCIACCESS ++#ifdef XSERVER_LIBPCIACCESS + NULL, + #else + VMWAREProbe, +@@ -532,7 +532,7 @@ + VMWareDriverFunc, + #endif + #if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) >= 4 +-#if XSERVER_LIBPCIACCESS ++#ifdef XSERVER_LIBPCIACCESS + VMwareDeviceMatch, + VMwarePciProbe, + #else diff --git a/xf86-video-vmware/key b/xf86-video-vmware/key new file mode 100644 index 0000000..8c8601d --- /dev/null +++ b/xf86-video-vmware/key @@ -0,0 +1 @@ +gpg -v --recv-key C1F5D3CDF5176580 diff --git a/xf86-video-vmware/time b/xf86-video-vmware/time new file mode 100644 index 0000000..d3a82f1 --- /dev/null +++ b/xf86-video-vmware/time @@ -0,0 +1,4 @@ + +real 0m8.385s +user 0m8.910s +sys 0m2.383s diff --git a/xmlto/PKGBUILD b/xmlto/PKGBUILD new file mode 100644 index 0000000..a5d089e --- /dev/null +++ b/xmlto/PKGBUILD @@ -0,0 +1,37 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=xmlto +pkgver=0.0.28 +pkgrel=04 +pkgdesc="Convert xml to many other formats" +arch=('x86_64') +url="https://pagure.io/xmlto/" +depends=('libxslt') +makedepends=('docbook-xsl') +source=("https://releases.pagure.org/xmlto/${pkgname}-${pkgver}.tar.bz2") + + +build() { + cd "$srcdir/${pkgname}-${pkgver}" + + ./configure BASH=/bin/bash --prefix=/usr \ + --mandir=/usr/share/man + make +} + +package() { + cd "$srcdir/${pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" install +} + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +sha256sums=(1130df3a7957eb9f6f0d29e4aa1c75732a7dfb6d639be013859b5c7ec5421276) # xmlto-0.0.28.tar.bz2 diff --git a/xmlto/PKGBUILD-arch b/xmlto/PKGBUILD-arch new file mode 100644 index 0000000..17fdeb8 --- /dev/null +++ b/xmlto/PKGBUILD-arch @@ -0,0 +1,31 @@ +# Maintainer: Giovanni Scafora +# Contributor: Jan de Groot +# Contributor: Sergej Pupykin +# Contributor: Robert Stoffers + +pkgname=xmlto +pkgver=0.0.28 +pkgrel=4 +pkgdesc="Convert xml to many other formats" +arch=('x86_64') +url="https://pagure.io/xmlto/" +license=('GPL') +depends=('libxslt') +makedepends=('docbook-xsl') +source=("https://releases.pagure.org/xmlto/${pkgname}-${pkgver}.tar.bz2") +md5sums=('93bab48d446c826399d130d959fe676f') +sha256sums=('1130df3a7957eb9f6f0d29e4aa1c75732a7dfb6d639be013859b5c7ec5421276') + +build() { + cd "$srcdir/${pkgname}-${pkgver}" + + ./configure BASH=/bin/bash --prefix=/usr \ + --mandir=/usr/share/man + make +} + +package() { + cd "$srcdir/${pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" install +} diff --git a/xmlto/clean b/xmlto/clean new file mode 100644 index 0000000..bea2be0 --- /dev/null +++ b/xmlto/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,xmlto*.tar.bz2} diff --git a/xmlto/deps b/xmlto/deps new file mode 100644 index 0000000..e6a50bf --- /dev/null +++ b/xmlto/deps @@ -0,0 +1 @@ +libxslt docbook-xsl diff --git a/xmlto/time b/xmlto/time new file mode 100644 index 0000000..4f620a6 --- /dev/null +++ b/xmlto/time @@ -0,0 +1,5 @@ + +real 0m3.204s +user 0m3.056s +sys 0m0.400s + diff --git a/xorg-server/0001-xkb-fix-XkbSetMap-when-changing-a-keysym-without-cha.patch b/xorg-server/0001-xkb-fix-XkbSetMap-when-changing-a-keysym-without-cha.patch new file mode 100644 index 0000000..3e71d0b --- /dev/null +++ b/xorg-server/0001-xkb-fix-XkbSetMap-when-changing-a-keysym-without-cha.patch @@ -0,0 +1,87 @@ +From 0217cc6e0cf5013366105a90f5f91ccc4bab5425 Mon Sep 17 00:00:00 2001 +From: Samuel Thibault +Date: Wed, 26 Jan 2022 00:05:55 +0100 +Subject: [PATCH] xkb: fix XkbSetMap when changing a keysym without changing a + keytype + +As the comment says: + +"symsPerKey/mapWidths must be filled regardless of client-side flags" + +so we always have to call CheckKeyTypes which will notably fill mapWidths +and nTypes. That is needed for CheckKeySyms to work since it checks the +width. Without it, any request with XkbKeySymsMask but not +XkbKeyTypesMask will fail because of the missing width information, for +instance this: + + XkbDescPtr xkb; + if (!(xkb = XkbGetMap (dpy, XkbKeyTypesMask|XkbKeySymsMask, XkbUseCoreKbd))) { + fprintf (stderr, "ERROR getting map\n"); + exit(1); + } + XFlush (dpy); + XSync (dpy, False); + + XkbMapChangesRec changes = { .changed = 0 }; + int oneGroupType[XkbNumKbdGroups] = { XkbOneLevelIndex }; + + if (XkbChangeTypesOfKey(xkb, keycode, 1, XkbGroup1Mask, oneGroupType, &changes)) { + fprintf(stderr, "ERROR changing type of key\n"); + exit(1); + } + XkbKeySymEntry(xkb,keycode,0,0) = keysym; + + if (!XkbChangeMap(dpy,xkb,&changes)) { + fprintf(stderr, "ERROR changing map\n"); + exit(1); + } + + XkbFreeKeyboard (xkb, 0, TRUE); + XFlush (dpy); + XSync (dpy, False); + +This had being going under the radar since about ever until commit +de940e06f8733d87bbb857aef85d830053442cfe ("xkb: fix key type index check +in _XkbSetMapChecks") fixed checking the values of kt_index, which was +previously erroneously ignoring errors and ignoring all other checks, just +because nTypes was not set, precisely because CheckKeyTypes was not called. + +Note: yes, CheckKeyTypes is meant to be callable without XkbKeyTypesMask, it +does properly check for that and just fills nTypes and mapWidths in that +case. + +Signed-off-by: Samuel Thibault +Signed-off-by: Laurent Carlier +--- + xkb/xkb.c | 11 +++++------ + 1 file changed, 5 insertions(+), 6 deletions(-) + +diff --git a/xkb/xkb.c b/xkb/xkb.c +index bfc21de00..820cd7166 100644 +--- a/xkb/xkb.c ++++ b/xkb/xkb.c +@@ -2511,16 +2511,15 @@ _XkbSetMapChecks(ClientPtr client, DeviceIntPtr dev, xkbSetMapReq * req, + } + } + +- if (!(req->present & XkbKeyTypesMask)) { +- nTypes = xkb->map->num_types; +- } +- else if (!CheckKeyTypes(client, xkb, req, (xkbKeyTypeWireDesc **) &values, +- &nTypes, mapWidths, doswap)) { ++ /* nTypes/mapWidths/symsPerKey must be filled for further tests below, ++ * regardless of client-side flags */ ++ ++ if (!CheckKeyTypes(client, xkb, req, (xkbKeyTypeWireDesc **) &values, ++ &nTypes, mapWidths, doswap)) { + client->errorValue = nTypes; + return BadValue; + } + +- /* symsPerKey/mapWidths must be filled regardless of client-side flags */ + map = &xkb->map->key_sym_map[xkb->min_key_code]; + for (i = xkb->min_key_code; i < xkb->max_key_code; i++, map++) { + register int g, ng, w; +-- +2.35.1 + diff --git a/xorg-server/0002-xephyr_Dont_check_for_SeatId_anymore.patch b/xorg-server/0002-xephyr_Dont_check_for_SeatId_anymore.patch new file mode 100644 index 0000000..f0158bf --- /dev/null +++ b/xorg-server/0002-xephyr_Dont_check_for_SeatId_anymore.patch @@ -0,0 +1,63 @@ +From 4c03b67d334b05b814239420776f2fdd4c4a98ac Mon Sep 17 00:00:00 2001 +From: nerdopolis +Date: Tue, 11 Jan 2022 18:41:42 -0500 +Subject: [PATCH] xephyr: Don't check for SeatId anymore + +After a change for the xserver to automatically determine the seat +based on the XDG_SEAT variable, xephyr stopped working. This was +because of an old feature where xephyr used to handle evdev +directly. This was dropped some time ago, and now this check is +not needed +--- + hw/kdrive/ephyr/ephyrinit.c | 34 ++++++++++++++++------------------ + 1 file changed, 16 insertions(+), 18 deletions(-) + +diff --git a/hw/kdrive/ephyr/ephyrinit.c b/hw/kdrive/ephyr/ephyrinit.c +index 020461db2..09cd28cb3 100644 +--- a/hw/kdrive/ephyr/ephyrinit.c ++++ b/hw/kdrive/ephyr/ephyrinit.c +@@ -70,25 +70,23 @@ InitInput(int argc, char **argv) + KdKeyboardInfo *ki; + KdPointerInfo *pi; + +- if (!SeatId) { +- KdAddKeyboardDriver(&EphyrKeyboardDriver); +- KdAddPointerDriver(&EphyrMouseDriver); +- +- if (!kdHasKbd) { +- ki = KdNewKeyboard(); +- if (!ki) +- FatalError("Couldn't create Xephyr keyboard\n"); +- ki->driver = &EphyrKeyboardDriver; +- KdAddKeyboard(ki); +- } ++ KdAddKeyboardDriver(&EphyrKeyboardDriver); ++ KdAddPointerDriver(&EphyrMouseDriver); ++ ++ if (!kdHasKbd) { ++ ki = KdNewKeyboard(); ++ if (!ki) ++ FatalError("Couldn't create Xephyr keyboard\n"); ++ ki->driver = &EphyrKeyboardDriver; ++ KdAddKeyboard(ki); ++ } + +- if (!kdHasPointer) { +- pi = KdNewPointer(); +- if (!pi) +- FatalError("Couldn't create Xephyr pointer\n"); +- pi->driver = &EphyrMouseDriver; +- KdAddPointer(pi); +- } ++ if (!kdHasPointer) { ++ pi = KdNewPointer(); ++ if (!pi) ++ FatalError("Couldn't create Xephyr pointer\n"); ++ pi->driver = &EphyrMouseDriver; ++ KdAddPointer(pi); + } + + KdInitInput(); +-- +GitLab + diff --git a/xorg-server/0003-dix_Correctly_save_replayed_event_into_GrabInfoRec.patch b/xorg-server/0003-dix_Correctly_save_replayed_event_into_GrabInfoRec.patch new file mode 100644 index 0000000..9ccbd58 --- /dev/null +++ b/xorg-server/0003-dix_Correctly_save_replayed_event_into_GrabInfoRec.patch @@ -0,0 +1,98 @@ +From 6ef5c05728f8b18170fbc8415d7502495a08670b Mon Sep 17 00:00:00 2001 +From: Povilas Kanapickas +Date: Sun, 23 Jan 2022 22:18:52 +0200 +Subject: [PATCH] dix: Correctly save replayed event into GrabInfoRec + +When processing events we operate on InternalEvent pointers. They may +actually refer to a an instance of DeviceEvent, GestureEvent or any +other event that comprises the InternalEvent union. This works well in +practice because we always look into event type before doing anything, +except in the case of copying the event. + +*dst_event = *src_event would copy whole InternalEvent event and would +cause out of bounds read in case the pointed to event was not +InternalEvent but e.g. DeviceEvent. + +This regression has been introduced in +23a8b62d34344575f9df9d057fb74bfefa94a77b. + +Fixes https://gitlab.freedesktop.org/xorg/xserver/-/issues/1261 + +Signed-off-by: Povilas Kanapickas +--- + Xi/exevents.c | 2 +- + dix/events.c | 18 ++++++++++++++++-- + include/input.h | 1 + + 3 files changed, 18 insertions(+), 3 deletions(-) + +diff --git a/Xi/exevents.c b/Xi/exevents.c +index 94b9983bd..217baa956 100644 +--- a/Xi/exevents.c ++++ b/Xi/exevents.c +@@ -1524,7 +1524,7 @@ DeliverTouchEmulatedEvent(DeviceIntPtr dev, TouchPointInfoPtr ti, + g = AllocGrab(devgrab); + BUG_WARN(!g); + +- *dev->deviceGrab.sync.event = *ev; ++ CopyPartialInternalEvent(dev->deviceGrab.sync.event, ev); + + /* The listener array has a sequence of grabs and then one event + * selection. Implicit grab activation occurs through delivering an +diff --git a/dix/events.c b/dix/events.c +index 341c746d4..28d7d177c 100644 +--- a/dix/events.c ++++ b/dix/events.c +@@ -467,6 +467,20 @@ WindowXI2MaskIsset(DeviceIntPtr dev, WindowPtr win, xEvent *ev) + return xi2mask_isset(inputMasks->xi2mask, dev, evtype); + } + ++/** ++ * When processing events we operate on InternalEvent pointers. They may actually refer to a ++ * an instance of DeviceEvent, GestureEvent or any other event that comprises the InternalEvent ++ * union. This works well in practice because we always look into event type before doing anything, ++ * except in the case of copying the event. Any copying of InternalEvent should use this function ++ * instead of doing *dst_event = *src_event whenever it's not clear whether source event actually ++ * points to full InternalEvent instance. ++ */ ++void ++CopyPartialInternalEvent(InternalEvent* dst_event, const InternalEvent* src_event) ++{ ++ memcpy(dst_event, src_event, src_event->any.length); ++} ++ + Mask + GetEventMask(DeviceIntPtr dev, xEvent *event, InputClients * other) + { +@@ -3873,7 +3887,7 @@ void ActivateGrabNoDelivery(DeviceIntPtr dev, GrabPtr grab, + + if (grabinfo->sync.state == FROZEN_NO_EVENT) + grabinfo->sync.state = FROZEN_WITH_EVENT; +- *grabinfo->sync.event = *real_event; ++ CopyPartialInternalEvent(grabinfo->sync.event, real_event); + } + + static BOOL +@@ -4455,7 +4469,7 @@ FreezeThisEventIfNeededForSyncGrab(DeviceIntPtr thisDev, InternalEvent *event) + case FREEZE_NEXT_EVENT: + grabinfo->sync.state = FROZEN_WITH_EVENT; + FreezeThaw(thisDev, TRUE); +- *grabinfo->sync.event = *event; ++ CopyPartialInternalEvent(grabinfo->sync.event, event); + break; + } + } +diff --git a/include/input.h b/include/input.h +index b1aef3663..cdb5d5a90 100644 +--- a/include/input.h ++++ b/include/input.h +@@ -676,6 +676,7 @@ extern void GestureEmitGestureEndToOwner(DeviceIntPtr dev, GestureInfoPtr gi); + extern void ProcessGestureEvent(InternalEvent *ev, DeviceIntPtr dev); + + /* misc event helpers */ ++extern void CopyPartialInternalEvent(InternalEvent* dst_event, const InternalEvent* src_event); + extern Mask GetEventMask(DeviceIntPtr dev, xEvent *ev, InputClientsPtr clients); + extern Mask GetEventFilter(DeviceIntPtr dev, xEvent *event); + extern Bool WindowXI2MaskIsset(DeviceIntPtr dev, WindowPtr win, xEvent *ev); +-- +GitLab + diff --git a/xorg-server/0004-present_Check_for_NULL_to_prevent_crash.patch b/xorg-server/0004-present_Check_for_NULL_to_prevent_crash.patch new file mode 100644 index 0000000..edc147b --- /dev/null +++ b/xorg-server/0004-present_Check_for_NULL_to_prevent_crash.patch @@ -0,0 +1,43 @@ +From 69774044716039fa70655b3bc6dd6a4ff4535cfd Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?B=C5=82a=C5=BCej=20Szczygie=C5=82?= +Date: Thu, 13 Jan 2022 00:47:27 +0100 +Subject: [PATCH] present: Check for NULL to prevent crash +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1275 +Signed-off-by: BÅ‚ażej SzczygieÅ‚ +Tested-by: Aaron Plattner +(cherry picked from commit 22d5818851967408bb7c903cb345b7ca8766094c) +--- + present/present_scmd.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/present/present_scmd.c b/present/present_scmd.c +index da836ea6b..239055bc1 100644 +--- a/present/present_scmd.c ++++ b/present/present_scmd.c +@@ -158,6 +158,9 @@ present_scmd_get_crtc(present_screen_priv_ptr screen_priv, WindowPtr window) + if (!screen_priv->info) + return NULL; + ++ if (!screen_priv->info->get_crtc) ++ return NULL; ++ + return (*screen_priv->info->get_crtc)(window); + } + +@@ -196,6 +199,9 @@ present_flush(WindowPtr window) + if (!screen_priv->info) + return; + ++ if (!screen_priv->info->flush) ++ return; ++ + (*screen_priv->info->flush) (window); + } + +-- +GitLab + diff --git a/xorg-server/PKGBUILD b/xorg-server/PKGBUILD new file mode 100644 index 0000000..274ff27 --- /dev/null +++ b/xorg-server/PKGBUILD @@ -0,0 +1,215 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgbase=xorg-server +pkgname=('xorg-server' 'xorg-server-xephyr' 'xorg-server-xvfb' 'xorg-server-xnest' + 'xorg-server-common' 'xorg-server-devel') +pkgver=21.1.3 +pkgrel=06 +arch=('x86_64') +groups=('xorg') +url="https://xorg.freedesktop.org" +makedepends=('xorgproto' 'pixman' 'libx11' 'mesa' 'mesa-libgl' 'xtrans' + 'libxkbfile' 'libxfont2' 'libpciaccess' 'libxv' 'libxcvt' + 'libxmu' 'libxrender' 'libxi' 'libxaw' 'libxtst' 'libxres' + 'xorg-xkbcomp' 'xorg-util-macros' 'xorg-font-util' 'libepoxy' + 'xcb-util' 'xcb-util-image' 'xcb-util-renderutil' 'xcb-util-wm' 'xcb-util-keysyms' + 'libxshmfence' 'libunwind' 'meson' 'git') +#options=('debug') ## uncomment if you want the debug developers' pkg created +#source=(${pkgbase}-${pkgver}::git+https://gitlab.freedesktop.org/xorg/xserver.git#commit=27a0ee32ccef8d621aaa758c804fc9a5ceeb5a56 +source=(https://xorg.freedesktop.org/releases/individual/xserver/${pkgbase}-${pkgver}.tar.xz{,.sig} + xvfb-run # with updates from FC master + xvfb-run.1 + xorg-server.install + 0001-xkb-fix-XkbSetMap-when-changing-a-keysym-without-cha.patch + 0002-xephyr_Dont_check_for_SeatId_anymore.patch + 0003-dix_Correctly_save_replayed_event_into_GrabInfoRec.patch + 0004-present_Check_for_NULL_to_prevent_crash.patch + Xwrapper.config) + +prepare() { + cd ${pkgbase}-$pkgver + + # merged in main + patch -Np1 -i ../0001-xkb-fix-XkbSetMap-when-changing-a-keysym-without-cha.patch + # FS#73274 + patch -Np1 -i ../0002-xephyr_Dont_check_for_SeatId_anymore.patch + # FS#73875 + patch -Np1 -i ../0003-dix_Correctly_save_replayed_event_into_GrabInfoRec.patch + # FS#73895 + patch -Np1 -i ../0004-present_Check_for_NULL_to_prevent_crash.patch + +} + +build() { + # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf + # With them, module fail to load with undefined symbol. + # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845 + export CFLAGS=${CFLAGS/-fno-plt} + export CXXFLAGS=${CXXFLAGS/-fno-plt} + export LDFLAGS=${LDFLAGS/,-z,now} + + arch-meson ${pkgbase}-$pkgver build \ + -D ipv6=true \ + -D xvfb=true \ + -D xnest=true \ + -D xcsecurity=true \ + -D xorg=true \ + -D xephyr=true \ + -D glamor=true \ + -D udev=true \ + -D dtrace=false \ + -D systemd_logind=false \ + -D suid_wrapper=true \ + -D xkb_dir=/usr/share/X11/xkb \ + -D xkb_output_dir=/var/lib/xkb + + # Print config + meson configure build + ninja -C build + + # fake installation to be seperated into packages + DESTDIR="${srcdir}/fakeinstall" ninja -C build install +} + +_install() { + local src f dir + for src; do + f="${src#fakeinstall/}" + dir="${pkgdir}/${f%/*}" + install -m755 -d "${dir}" + # use copy so a new file is created and fakeroot can track properties such as setuid + cp -av "${src}" "${dir}/" + rm -rf "${src}" + done +} + +package_xorg-server-common() { + pkgdesc="Xorg server common files" + depends=(xkeyboard-config xorg-xkbcomp xorg-setxkbmap) + + _install fakeinstall/usr/lib/xorg/protocol.txt + _install fakeinstall/usr/share/man/man1/Xserver.1 + + install -m644 -Dt "${pkgdir}/var/lib/xkb/" "${pkgbase}-${pkgver}"/xkb/README.compiled + # license + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${pkgbase}-${pkgver}"/COPYING +} + +package_xorg-server() { + pkgdesc="Xorg X server" + depends=(libepoxy libxfont2 pixman xorg-server-common libunwind + dbus libgl xf86-input-libinput nettle + libpciaccess libdrm libxshmfence libxcvt) # FS#52949 + # see xorg-server-*/hw/xfree86/common/xf86Module.h for ABI versions - we provide major numbers that drivers can depend on + # and /usr/lib/pkgconfig/xorg-server.pc in xorg-server-devel pkg + provides=('X-ABI-VIDEODRV_VERSION=25.2' 'X-ABI-XINPUT_VERSION=24.4' 'X-ABI-EXTENSION_VERSION=10.0' 'x-server') + conflicts=('nvidia-utils<=331.20' 'glamor-egl' 'xf86-video-modesetting') + replaces=('glamor-egl' 'xf86-video-modesetting') + install=xorg-server.install + + _install fakeinstall/usr/bin/{X,Xorg,gtf} + _install fakeinstall/usr/lib/Xorg{,.wrap} + _install fakeinstall/usr/lib/xorg/modules/* + _install fakeinstall/usr/share/X11/xorg.conf.d/10-quirks.conf + _install fakeinstall/usr/share/man/man1/{Xorg,Xorg.wrap,gtf}.1 + _install fakeinstall/usr/share/man/man4/{exa,fbdevhw,inputtestdrv,modesetting}.4 + _install fakeinstall/usr/share/man/man5/{Xwrapper.config,xorg.conf,xorg.conf.d}.5 + + # distro specific files must be installed in /usr/share/X11/xorg.conf.d + install -m755 -d "${pkgdir}/etc/X11/xorg.conf.d" + ## Xwrapper.config + install -Dm0644 Xwrapper.config "$pkgdir"/etc/X11/Xwrapper.config + + # license + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${pkgbase}-${pkgver}"/COPYING +} + +package_xorg-server-xephyr() { + pkgdesc="A nested X server that runs as an X application" + depends=(libxfont2 libgl libepoxy libunwind libxv pixman xorg-server-common + xcb-util-image xcb-util-renderutil xcb-util-wm xcb-util-keysyms + nettle libtirpc) + + _install fakeinstall/usr/bin/Xephyr + _install fakeinstall/usr/share/man/man1/Xephyr.1 + + # license + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${pkgbase}-${pkgver}"/COPYING +} + +package_xorg-server-xvfb() { + pkgdesc="Virtual framebuffer X server" + depends=(libxfont2 libunwind pixman xorg-server-common xorg-xauth + libgl nettle libtirpc) + + _install fakeinstall/usr/bin/Xvfb + _install fakeinstall/usr/share/man/man1/Xvfb.1 + + install -m755 "${srcdir}/xvfb-run" "${pkgdir}/usr/bin/" + install -m644 "${srcdir}/xvfb-run.1" "${pkgdir}/usr/share/man/man1/" # outda + + # license + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${pkgbase}-${pkgver}"/COPYING +} + +package_xorg-server-xnest() { + pkgdesc="A nested X server that runs as an X application" + depends=(libxfont2 libxext pixman xorg-server-common nettle libtirpc) + + _install fakeinstall/usr/bin/Xnest + _install fakeinstall/usr/share/man/man1/Xnest.1 + + # license + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${pkgbase}-${pkgver}"/COPYING +} + +package_xorg-server-devel() { + pkgdesc="Development files for the X.Org X server" + depends=('xorgproto' 'mesa' 'libpciaccess' + # not technically required but almost every Xorg pkg needs it to build + 'xorg-util-macros') + + _install fakeinstall/usr/include/xorg/* + _install fakeinstall/usr/lib/pkgconfig/xorg-server.pc + _install fakeinstall/usr/share/aclocal/xorg-server.m4 + + # license + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${pkgbase}-${pkgver}"/COPYING + + # make sure there are no files left to install + find fakeinstall -depth -print0 | xargs -0 rmdir +} + +#---- license gpg-key sha256sums ---- + +license=('custom') + +validpgpkeys=('FD0004A26EADFE43A4C3F249C6F7AE200374452D') # Povilas Kanapickas + +sha256sums=(61d6aad5b6b47a116b960bd7f0cba4ee7e6da95d6bb0b127bde75d7d1acdebe5 # xorg-server-21.1.3.tar.xz + b2afcbeaa9bb4e86758cf7b5e37a28de2e241855f5e22efe530be4b6c7f2cc7a # xorg-server-21.1.3.tar.xz.sig + a0a68505e3eb3ba6581388ae41b9dfd5208ec9b8983e78714778c20b71bc0ece # xvfb-run + 2460adccd3362fefd4cdc5f1c70f332d7b578091fb9167bf88b5f91265bbd776 # xvfb-run.1 + 57316bf08e1934f983b03d085ca318dc27eaca9dc137c61ca62074ecfd5ede11 # xorg-server.install + 698aedfd056ed7fd617fa455b269b673072b5544ac7617e7f41e71e20b7083e2 # 0001-xkb-fix-XkbSetMap-when-changing-a-keysym-without-cha.patch + 057004ab36d4733e6c275f76bbc3851f6cdb9063305a3ae874f2fd83f14a6dc0 # 0002-xephyr_Dont_check_for_SeatId_anymore.patch + e7049b851c303bf16ac862a2cf5a67a39c1c456a73aea66bcaa9882c968a092b # 0003-dix_Correctly_save_replayed_event_into_GrabInfoRec.patch + 1cd5446f4f2d7c5ea11837f50c770e2704600310f9212971316c6e9fa763c69a # 0004-present_Check_for_NULL_to_prevent_crash.patch + 1e02dbcce066746acb5de54c816add1d26349ff16b5f1833b6ab48f3b3a8e634) # Xwrapper.config + +sha512sums=(cf5fed023eadda62ae732f8c4d427c272ebe005188341290f3d03147042c103b00cbb94d86a0256da815fb9b9a3da315c21a05ee0c926c1a2ff0c54ab0c0638b # xorg-server-21.1.3.tar.xz + d55172f41f55a01f56b4d2f0b61ccb25c53e45278d200346baa73cdb19e65a04cf876ba3adbc11b7548069866b9cd52a54e399a2256cf358b6a078479771d658 # xorg-server-21.1.3.tar.xz.sig + 87c79b4a928e74463f96f58d277558783eac9b8ea6ba00d6bbbb67ad84c4d65b3792d960ea2a70089ae18162e82ae572a49ad36df169c974cc99dbaa51f63eb2 # xvfb-run + de5e2cb3c6825e6cf1f07ca0d52423e17f34d70ec7935e9dd24be5fb9883bf1e03b50ff584931bd3b41095c510ab2aa44d2573fd5feaebdcb59363b65607ff22 # xvfb-run.1 + d8b010089776cde3b65e76d43ab97b3f186833cc1ff60233ce4ee089ee174b7f28b14b17074656e23be5fbd80830e237dd63aa78f8e8779fa548f4ba5101a0ee # xorg-server.install + bc3b955072f320ae72a771bebecbcf56637cd0448c3afa28149fcd9e0de3700e9fba1fec21fe283be77e1236e317e385f6970eb59df54d3181324c229c8309d7 # 0001-xkb-fix-XkbSetMap-when-changing-a-keysym-without-cha.patch + 34de52147054535256f35143d321e4d5e189baae502afca2bd3291094946dbead0829b1f196ae2a4d23bd6d0e1e04b65a387dee43f12dee55d247e37aec419d7 # 0002-xephyr_Dont_check_for_SeatId_anymore.patch + 01acc49ee9d0681b1ec3f9f22cd4e0dbaee2f5395ebe796e158e30c7d61890337a01fe7ace267d90d62e29f3d74b981391feb7cc5840c187d62f9433ce8e1fff # 0003-dix_Correctly_save_replayed_event_into_GrabInfoRec.patch + a61128b27b76b7089a4b43f9b679d9ecd607b5d8645fa5ef635902e4a51a7609e3bff0190d877117ce324d49a2711375850df2046f4cad99ea8a8c6cc8cf11fa # 0004-present_Check_for_NULL_to_prevent_crash.patch + 97315b682bef7892d3cf641ea9add6e0d22901150763930020302cc73de5fe5bda0f47384b7d405c7169cb5f072d27da306066063d5a8ea116e97ea474caffe8) # Xwrapper.config + + diff --git a/xorg-server/PKGBUILD-arch b/xorg-server/PKGBUILD-arch new file mode 100644 index 0000000..a609822 --- /dev/null +++ b/xorg-server/PKGBUILD-arch @@ -0,0 +1,188 @@ +# Maintainer: AndyRTR +# Maintainer: Jan de Groot + +pkgbase=xorg-server +pkgname=('xorg-server' 'xorg-server-xephyr' 'xorg-server-xvfb' 'xorg-server-xnest' + 'xorg-server-common' 'xorg-server-devel') +pkgver=21.1.3 +pkgrel=6 +arch=('x86_64') +license=('custom') +groups=('xorg') +url="https://xorg.freedesktop.org" +options=('debug') +makedepends=('xorgproto' 'pixman' 'libx11' 'mesa' 'mesa-libgl' 'xtrans' + 'libxkbfile' 'libxfont2' 'libpciaccess' 'libxv' 'libxcvt' + 'libxmu' 'libxrender' 'libxi' 'libxaw' 'libxtst' 'libxres' + 'xorg-xkbcomp' 'xorg-util-macros' 'xorg-font-util' 'libepoxy' + 'xcb-util' 'xcb-util-image' 'xcb-util-renderutil' 'xcb-util-wm' 'xcb-util-keysyms' + 'libxshmfence' 'libunwind' 'systemd' 'meson' 'git') +#source=(${pkgbase}-${pkgver}::git+https://gitlab.freedesktop.org/xorg/xserver.git#commit=27a0ee32ccef8d621aaa758c804fc9a5ceeb5a56 +source=(https://xorg.freedesktop.org/releases/individual/xserver/${pkgbase}-${pkgver}.tar.xz{,.sig} + xvfb-run # with updates from FC master + xvfb-run.1 + 0001-xkb-fix-XkbSetMap-when-changing-a-keysym-without-cha.patch + 0002-xephyr_Dont_check_for_SeatId_anymore.patch + 0003-dix_Correctly_save_replayed_event_into_GrabInfoRec.patch + 0004-present_Check_for_NULL_to_prevent_crash.patch +) +validpgpkeys=('FD0004A26EADFE43A4C3F249C6F7AE200374452D') # Povilas Kanapickas +sha512sums=('cf5fed023eadda62ae732f8c4d427c272ebe005188341290f3d03147042c103b00cbb94d86a0256da815fb9b9a3da315c21a05ee0c926c1a2ff0c54ab0c0638b' + 'SKIP' + '87c79b4a928e74463f96f58d277558783eac9b8ea6ba00d6bbbb67ad84c4d65b3792d960ea2a70089ae18162e82ae572a49ad36df169c974cc99dbaa51f63eb2' + 'de5e2cb3c6825e6cf1f07ca0d52423e17f34d70ec7935e9dd24be5fb9883bf1e03b50ff584931bd3b41095c510ab2aa44d2573fd5feaebdcb59363b65607ff22' + 'bc3b955072f320ae72a771bebecbcf56637cd0448c3afa28149fcd9e0de3700e9fba1fec21fe283be77e1236e317e385f6970eb59df54d3181324c229c8309d7' + '34de52147054535256f35143d321e4d5e189baae502afca2bd3291094946dbead0829b1f196ae2a4d23bd6d0e1e04b65a387dee43f12dee55d247e37aec419d7' + '01acc49ee9d0681b1ec3f9f22cd4e0dbaee2f5395ebe796e158e30c7d61890337a01fe7ace267d90d62e29f3d74b981391feb7cc5840c187d62f9433ce8e1fff' + 'a61128b27b76b7089a4b43f9b679d9ecd607b5d8645fa5ef635902e4a51a7609e3bff0190d877117ce324d49a2711375850df2046f4cad99ea8a8c6cc8cf11fa') + +prepare() { + cd ${pkgbase}-$pkgver + + # merged in main + patch -Np1 -i ../0001-xkb-fix-XkbSetMap-when-changing-a-keysym-without-cha.patch + # FS#73274 + patch -Np1 -i ../0002-xephyr_Dont_check_for_SeatId_anymore.patch + # FS#73875 + patch -Np1 -i ../0003-dix_Correctly_save_replayed_event_into_GrabInfoRec.patch + # FS#73895 + patch -Np1 -i ../0004-present_Check_for_NULL_to_prevent_crash.patch +} + +build() { + # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf + # With them, module fail to load with undefined symbol. + # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845 + export CFLAGS=${CFLAGS/-fno-plt} + export CXXFLAGS=${CXXFLAGS/-fno-plt} + export LDFLAGS=${LDFLAGS/,-z,now} + + arch-meson ${pkgbase}-$pkgver build \ + -D ipv6=true \ + -D xvfb=true \ + -D xnest=true \ + -D xcsecurity=true \ + -D xorg=true \ + -D xephyr=true \ + -D glamor=true \ + -D udev=true \ + -D dtrace=false \ + -D systemd_logind=true \ + -D suid_wrapper=true \ + -D xkb_dir=/usr/share/X11/xkb \ + -D xkb_output_dir=/var/lib/xkb + + # Print config + meson configure build + ninja -C build + + # fake installation to be seperated into packages + DESTDIR="${srcdir}/fakeinstall" ninja -C build install +} + +_install() { + local src f dir + for src; do + f="${src#fakeinstall/}" + dir="${pkgdir}/${f%/*}" + install -m755 -d "${dir}" + # use copy so a new file is created and fakeroot can track properties such as setuid + cp -av "${src}" "${dir}/" + rm -rf "${src}" + done +} + +package_xorg-server-common() { + pkgdesc="Xorg server common files" + depends=(xkeyboard-config xorg-xkbcomp xorg-setxkbmap) + + _install fakeinstall/usr/lib/xorg/protocol.txt + _install fakeinstall/usr/share/man/man1/Xserver.1 + + install -m644 -Dt "${pkgdir}/var/lib/xkb/" "${pkgbase}-${pkgver}"/xkb/README.compiled + # license + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${pkgbase}-${pkgver}"/COPYING +} + +package_xorg-server() { + pkgdesc="Xorg X server" + depends=(libepoxy libxfont2 pixman xorg-server-common libunwind + dbus libgl xf86-input-libinput nettle + libpciaccess libdrm libxshmfence libxcvt) # FS#52949 + # see xorg-server-*/hw/xfree86/common/xf86Module.h for ABI versions - we provide major numbers that drivers can depend on + # and /usr/lib/pkgconfig/xorg-server.pc in xorg-server-devel pkg + provides=('X-ABI-VIDEODRV_VERSION=25.2' 'X-ABI-XINPUT_VERSION=24.4' 'X-ABI-EXTENSION_VERSION=10.0' 'x-server') + conflicts=('nvidia-utils<=331.20' 'glamor-egl' 'xf86-video-modesetting') + replaces=('glamor-egl' 'xf86-video-modesetting') + install=xorg-server.install + + _install fakeinstall/usr/bin/{X,Xorg,gtf} + _install fakeinstall/usr/lib/Xorg{,.wrap} + _install fakeinstall/usr/lib/xorg/modules/* + _install fakeinstall/usr/share/X11/xorg.conf.d/10-quirks.conf + _install fakeinstall/usr/share/man/man1/{Xorg,Xorg.wrap,gtf}.1 + _install fakeinstall/usr/share/man/man4/{exa,fbdevhw,inputtestdrv,modesetting}.4 + _install fakeinstall/usr/share/man/man5/{Xwrapper.config,xorg.conf,xorg.conf.d}.5 + + # distro specific files must be installed in /usr/share/X11/xorg.conf.d + install -m755 -d "${pkgdir}/etc/X11/xorg.conf.d" + + # license + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${pkgbase}-${pkgver}"/COPYING +} + +package_xorg-server-xephyr() { + pkgdesc="A nested X server that runs as an X application" + depends=(libxfont2 libgl libepoxy libunwind systemd-libs libxv pixman xorg-server-common + xcb-util-image xcb-util-renderutil xcb-util-wm xcb-util-keysyms + nettle libtirpc) + + _install fakeinstall/usr/bin/Xephyr + _install fakeinstall/usr/share/man/man1/Xephyr.1 + + # license + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${pkgbase}-${pkgver}"/COPYING +} + +package_xorg-server-xvfb() { + pkgdesc="Virtual framebuffer X server" + depends=(libxfont2 libunwind pixman xorg-server-common xorg-xauth + libgl nettle libtirpc systemd-libs) + + _install fakeinstall/usr/bin/Xvfb + _install fakeinstall/usr/share/man/man1/Xvfb.1 + + install -m755 "${srcdir}/xvfb-run" "${pkgdir}/usr/bin/" + install -m644 "${srcdir}/xvfb-run.1" "${pkgdir}/usr/share/man/man1/" # outda + + # license + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${pkgbase}-${pkgver}"/COPYING +} + +package_xorg-server-xnest() { + pkgdesc="A nested X server that runs as an X application" + depends=(libxfont2 libxext pixman xorg-server-common nettle libtirpc systemd-libs) + + _install fakeinstall/usr/bin/Xnest + _install fakeinstall/usr/share/man/man1/Xnest.1 + + # license + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${pkgbase}-${pkgver}"/COPYING +} + +package_xorg-server-devel() { + pkgdesc="Development files for the X.Org X server" + depends=('xorgproto' 'mesa' 'libpciaccess' + # not technically required but almost every Xorg pkg needs it to build + 'xorg-util-macros') + + _install fakeinstall/usr/include/xorg/* + _install fakeinstall/usr/lib/pkgconfig/xorg-server.pc + _install fakeinstall/usr/share/aclocal/xorg-server.m4 + + # license + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${pkgbase}-${pkgver}"/COPYING + + # make sure there are no files left to install + find fakeinstall -depth -print0 | xargs -0 rmdir +} diff --git a/xorg-server/PKGBUILD-oba b/xorg-server/PKGBUILD-oba new file mode 100644 index 0000000..4dc4063 --- /dev/null +++ b/xorg-server/PKGBUILD-oba @@ -0,0 +1,317 @@ +# Copyright : Obarun +#------------------------ +# Maintainer : Eric Vidal +# Maintainer : Jean-Michel T.Dydak +#---------------- +# Obarun PkgSrc : https://git.obarun.org/pkg/obextra/xorg-server +#-------------------------------------------------------------- +# DESCRIPTION ] + +pkgbase=xorg-server +pkgver=21.1.3 +pkgrel=3 +url='https://xorg.freedesktop.org' + +pkgname=( + 'xorg-server' + 'xorg-server-xephyr' + 'xorg-server-xvfb' + 'xorg-server-xnest' + 'xorg-server-common' + 'xorg-server-devel' +) + +track="releases/individual/xserver" +target="$pkgbase-$pkgver" +source=( + "https://xorg.freedesktop.org/${track}/${target}.tar.xz"{,.sig} + 0001-xkb-fix-XkbSetMap-when-changing-a-keysym-without-cha.patch + xvfb-run # with updates from FC master + xvfb-run.1 + Xwrapper.config +) + +#---------------------- +# BUILD CONFIGURATION ] + +makedepends=( + 'xorgproto' + 'pixman' + 'libx11' + 'mesa' + 'mesa-libgl' + 'xtrans' + 'libxkbfile' + 'libxfont2' + 'libpciaccess' + 'libxv' + 'libxcvt' + 'libxmu' + 'libxrender' + 'libxi' + 'libxaw' + 'libxtst' + 'libxres' + 'xorg-xkbcomp' + 'xorg-util-macros' + 'xorg-font-util' + 'libepoxy' + 'xcb-util' + 'xcb-util-image' + 'xcb-util-renderutil' + 'xcb-util-wm' + 'xcb-util-keysyms' + 'libxshmfence' + 'libunwind' + 'meson' +) + +#------------------------ +# INSTALL CONFIGURATION ] + +groups=( + 'xorg' +) + +backup=( + 'etc/X11/Xwrapper.config' +) + +#---------------- +# BUILD PREPARE ] + +prepare() { + cd $pkgbase-$pkgver + + ## merged in main + patch -Np1 -i ../0001-xkb-fix-XkbSetMap-when-changing-a-keysym-without-cha.patch +} + +#---------------- +# BUILD CONTROL ] + +_flags=( + -Dipv6=true + -Dxvfb=true + -Dxnest=true + -Dxcsecurity=true + -Dxorg=true + -Dxephyr=true + -Dglamor=true + -Dudev=true + -Ddtrace=false + -Dsystemd_logind=false + -Dsuid_wrapper=true + -Dxkb_dir=/usr/share/X11/xkb + -Dxkb_output_dir=/var/lib/xkb +) + +#-------- +# BUILD ] + +build() { + ## Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf + ## With them, module fail to load with undefined symbol. + ## See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845 + export CFLAGS=${CFLAGS/-fno-plt} + export CXXFLAGS=${CXXFLAGS/-fno-plt} + export LDFLAGS=${LDFLAGS/,-z,now} + + arch-meson $pkgbase-$pkgver build "${_flags[@]}" + + ## Print config + meson configure build + ninja -C build + + ## fake installation to be seperated into packages + DESTDIR="$srcdir/fakeinstall" ninja -C build install +} + +_install() { + local src f dir + for src; do + f="${src#fakeinstall/}" + dir="${pkgdir}/${f%/*}" + install -m755 -d "${dir}" + ## use copy so a new file is created and fakeroot + ## can track properties such as setuid. + cp -av "${src}" "${dir}/" + rm -rf "${src}" + done +} + +package_xorg-server-common() { + pkgdesc='Xorg server common files' + + depends=( + 'xkeyboard-config' + 'xorg-xkbcomp' + 'xorg-setxkbmap' + ) + + _install fakeinstall/usr/lib/xorg/protocol.txt + _install fakeinstall/usr/share/man/man1/Xserver.1 + + install -m644 -Dt "$pkgdir/var/lib/xkb/" "$pkgbase-$pkgver"/xkb/README.compiled + install -m644 -Dt "$pkgdir/usr/share/licenses/$pkgname" "$pkgbase-$pkgver"/COPYING +} + +package_xorg-server() { + pkgdesc="Xorg X server" + + depends=( + 'libepoxy' + 'libxfont2' + 'pixman' + 'xorg-server-common' + 'libunwind' + 'dbus' + 'libgl' + 'xf86-input-libinput' + 'nettle' + 'libpciaccess' + 'libdrm' + 'libxshmfence' + 'libxcvt' + ) ## FS#52949 + + ## see xorg-server-*/hw/xfree86/common/xf86Module.h for ABI versions. + ## we provide major numbers that drivers can depend on + ## and /usr/lib/pkgconfig/xorg-server.pc in xorg-server-devel pkg + provides=( + 'X-ABI-VIDEODRV_VERSION=25.2' + 'X-ABI-XINPUT_VERSION=24.4' + 'X-ABI-EXTENSION_VERSION=10.0' + 'x-server' + ) + conflicts=( + 'nvidia-utils<=331.20' + 'glamor-egl' + 'xf86-video-modesetting' + ) + replaces=( + 'glamor-egl' + 'xf86-video-modesetting' + ) + + install=xorg-server.install + + _install fakeinstall/usr/bin/{X,Xorg,gtf} + _install fakeinstall/usr/lib/Xorg{,.wrap} + _install fakeinstall/usr/lib/xorg/modules/* + _install fakeinstall/usr/share/X11/xorg.conf.d/10-quirks.conf + _install fakeinstall/usr/share/man/man1/{Xorg,Xorg.wrap,gtf}.1 + _install fakeinstall/usr/share/man/man4/{exa,fbdevhw,inputtestdrv,modesetting}.4 + _install fakeinstall/usr/share/man/man5/{Xwrapper.config,xorg.conf,xorg.conf.d}.5 + + ## distro specific files must be installed in /usr/share/X11/xorg.conf.d + install -m755 -d "$pkgdir/etc/X11/xorg.conf.d" + + ## Xwrapper.config + install -Dm0644 Xwrapper.config "$pkgdir"/etc/X11/Xwrapper.config + + ## license + install -m644 -Dt "$pkgdir/usr/share/licenses/$pkgname" "$pkgbase-$pkgver"/COPYING +} + +package_xorg-server-xephyr() { + pkgdesc="A nested X server that runs as an X application" + + depends=( + 'libxfont2' + 'libgl' + 'libepoxy' + 'libunwind' + 'libxv' + 'pixman' + 'xorg-server-common' + 'xcb-util-image' + 'xcb-util-renderutil' + 'xcb-util-wm' + 'xcb-util-keysyms' + 'nettle' + 'libtirpc' + ) + + _install fakeinstall/usr/bin/Xephyr + _install fakeinstall/usr/share/man/man1/Xephyr.1 + + ## license + install -m644 -Dt "$pkgdir/usr/share/licenses/$pkgname" "$pkgbase-$pkgver"/COPYING +} + +package_xorg-server-xvfb() { + pkgdesc="Virtual framebuffer X server" + + depends=( + 'libxfont2' + 'libunwind' + 'pixman' + 'xorg-server-common' + 'xorg-xauth' + 'libgl' + 'nettle' + 'libtirpc' + ) + + _install fakeinstall/usr/bin/Xvfb + _install fakeinstall/usr/share/man/man1/Xvfb.1 + + install -m755 "$srcdir/xvfb-run" "$pkgdir/usr/bin/" + install -m644 "$srcdir/xvfb-run.1" "$pkgdir/usr/share/man/man1/" ## outda + + ## license + install -m644 -Dt "$pkgdir/usr/share/licenses/$pkgname" "$pkgbase-$pkgver"/COPYING +} + +package_xorg-server-xnest() { + pkgdesc="A nested X server that runs as an X application" + + depends=( + 'libxfont2' + 'libxext' + 'pixman' + 'xorg-server-common' + 'nettle' + 'libtirpc' + ) + + _install fakeinstall/usr/bin/Xnest + _install fakeinstall/usr/share/man/man1/Xnest.1 + + ## license + install -m644 -Dt "$pkgdir/usr/share/licenses/$pkgname" "$pkgbase-$pkgver"/COPYING +} + +package_xorg-server-devel() { + pkgdesc="Development files for the X.Org X server" + + depends=( + 'xorgproto' + 'mesa' + 'libpciaccess' + 'xorg-util-macros' + ) ## not technically required but almost every Xorg pkg needs it to build. + + _install fakeinstall/usr/include/xorg/* + _install fakeinstall/usr/lib/pkgconfig/xorg-server.pc + _install fakeinstall/usr/share/aclocal/xorg-server.m4 + + ## license + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${pkgbase}-${pkgver}"/COPYING + + ## make sure there are no files left to install + find fakeinstall -depth -print0 | xargs -0 rmdir +} + +#--------------------------- +# LICENSE AND VERIFICATION ] + +arch=(x86_64) +license=(custom) + +validpgpkeys=( + 'FD0004A26EADFE43A4C3F249C6F7AE200374452D' # Kanapickas +) + +sha512sums=('') diff --git a/xorg-server/Xwrapper.config b/xorg-server/Xwrapper.config new file mode 100644 index 0000000..8cbb261 --- /dev/null +++ b/xorg-server/Xwrapper.config @@ -0,0 +1,3 @@ +# /etc/X11/Xwrapper.config + +needs_root_rights = yes diff --git a/xorg-server/clean b/xorg-server/clean new file mode 100644 index 0000000..bcf446d --- /dev/null +++ b/xorg-server/clean @@ -0,0 +1 @@ +rm -rvf {*.tar.xz*,src,pkg} diff --git a/xorg-server/deps b/xorg-server/deps new file mode 100644 index 0000000..311081c --- /dev/null +++ b/xorg-server/deps @@ -0,0 +1,29 @@ +xorgproto +pixman +libx11 +mesa +xtrans +libxkbfile +libxfont2 +libpciaccess +libxv +libxcvt +libxmu +libxrender +libxi +libxaw +libxtst +libxres +xorg-xkbcomp +xorg-util-macros +xorg-font-util +libepoxy +xcb-util +xcb-util-image +xcb-util-renderutil +xcb-util-wm +xcb-util-keysyms +libxshmfence +libunwind +meson +git diff --git a/xorg-server/key b/xorg-server/key new file mode 100644 index 0000000..4cc7469 --- /dev/null +++ b/xorg-server/key @@ -0,0 +1 @@ +gpg -v --recv-key C6F7AE200374452D diff --git a/xorg-server/time b/xorg-server/time new file mode 100644 index 0000000..68c0d29 --- /dev/null +++ b/xorg-server/time @@ -0,0 +1,4 @@ +real 2m45.138s +user 9m6.781s +sys 0m27.426s + diff --git a/xorg-server/xorg-server.install b/xorg-server/xorg-server.install new file mode 100644 index 0000000..46bf5a9 --- /dev/null +++ b/xorg-server/xorg-server.install @@ -0,0 +1,18 @@ +post_upgrade() { + if (( $(vercmp $2 1.16.0-3) < 0 )); then + post_install + fi +} + +post_install() { + cat <>> xorg-server has now the ability to run without root rights with + the help of systemd-logind. xserver will fail to run if not launched + from the same virtual terminal as was used to log in. + Without root rights, log files will be in ~/.local/share/xorg/ directory. + + Old behavior can be restored through Xorg.wrap config file. + See Xorg.wrap man page (man xorg.wrap). +MSG +} + diff --git a/xorg-server/xvfb-run b/xorg-server/xvfb-run new file mode 100644 index 0000000..6bc62d0 --- /dev/null +++ b/xorg-server/xvfb-run @@ -0,0 +1,200 @@ +#!/bin/sh +# --- T2-COPYRIGHT-NOTE-BEGIN --- +# This copyright note is auto-generated by ./scripts/Create-CopyPatch. +# +# T2 SDE: package/.../xorg-server/xvfb-run.sh +# Copyright (C) 2005 The T2 SDE Project +# Copyright (C) XXXX - 2005 Debian +# +# More information can be found in the files COPYING and README. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; version 2 of the License. A copy of the +# GNU General Public License can be found in the file COPYING. +# --- T2-COPYRIGHT-NOTE-END --- + +# $Id$ +# from: http://necrotic.deadbeast.net/xsf/XFree86/trunk/debian/local/xvfb-run + +# This script starts an instance of Xvfb, the "fake" X server, runs a command +# with that server available, and kills the X server when done. The return +# value of the command becomes the return value of this script. +# +# If anyone is using this to build a Debian package, make sure the package +# Build-Depends on xvfb, xbase-clients, and xfonts-base. + +set -e + +PROGNAME=xvfb-run +SERVERNUM=99 +AUTHFILE= +ERRORFILE=/dev/null +STARTWAIT=3 +XVFBARGS="-screen 0 640x480x24" +LISTENTCP="-nolisten tcp" +XAUTHPROTO=. + +# Query the terminal to establish a default number of columns to use for +# displaying messages to the user. This is used only as a fallback in the event +# the COLUMNS variable is not set. ($COLUMNS can react to SIGWINCH while the +# script is running, and this cannot, only being calculated once.) +DEFCOLUMNS=$(stty size 2>/dev/null | awk '{print $2}') || true +if ! expr "$DEFCOLUMNS" : "[[:digit:]]\+$" >/dev/null 2>&1; then + DEFCOLUMNS=80 +fi + +# Display a message, wrapping lines at the terminal width. +message () { + echo "$PROGNAME: $*" | fmt -t -w ${COLUMNS:-$DEFCOLUMNS} +} + +# Display an error message. +error () { + message "error: $*" >&2 +} + +# Display a usage message. +usage () { + if [ -n "$*" ]; then + message "usage error: $*" + fi + cat <&2 + exit 2 +fi + +if ! type xauth >/dev/null; then + error "xauth command not found" + exit 3 +fi + +# Set up the temp dir for the pid and X authorization file +XVFB_RUN_TMPDIR="$(mktemp --directory --tmpdir $PROGNAME.XXXXXX)" +# If the user did not specify an X authorization file to use, set up a temporary +# directory to house one. +if [ -z "$AUTHFILE" ]; then + AUTHFILE=$(mktemp -p "$XVFB_RUN_TMPDIR" Xauthority.XXXXXX) +fi + +# Start Xvfb. +MCOOKIE=$(mcookie) + +if [ -z "$AUTO_DISPLAY" ]; then + # Old style using a pre-computed SERVERNUM + XAUTHORITY=$AUTHFILE Xvfb ":$SERVERNUM" $XVFBARGS $LISTENTCP >>"$ERRORFILE" \ + 2>&1 & + XVFBPID=$! +else + # New style using Xvfb to provide a free display + PIDFILE=$(mktemp -p "$XVFB_RUN_TMPDIR" pid.XXXXXX) + SERVERNUM=$(XAUTHORITY=$AUTHFILE Xvfb -displayfd 1 $XVFBARGS $LISTENTCP \ + 2>"$ERRORFILE" & echo $! > $PIDFILE) + XVFBPID=$(cat $PIDFILE) +fi +sleep "$STARTWAIT" + +XAUTHORITY=$AUTHFILE xauth source - << EOF >>"$ERRORFILE" 2>&1 +add :$SERVERNUM $XAUTHPROTO $MCOOKIE +EOF + +# Start the command and save its exit status. +set +e +DISPLAY=:$SERVERNUM XAUTHORITY=$AUTHFILE "$@" +RETVAL=$? +set -e + +# Kill Xvfb now that the command has exited. +kill $XVFBPID + +# Clean up. +XAUTHORITY=$AUTHFILE xauth remove ":$SERVERNUM" >"$ERRORFILE" 2>&1 +if [ -n "$XVFB_RUN_TMPDIR" ]; then + if ! rm -r "$XVFB_RUN_TMPDIR"; then + error "problem while cleaning up temporary directory" + exit 5 + fi +fi + +# Return the executed command's exit status. +exit $RETVAL + +# vim:set ai et sts=4 sw=4 tw=80: diff --git a/xorg-server/xvfb-run.1 b/xorg-server/xvfb-run.1 new file mode 100644 index 0000000..137d3a1 --- /dev/null +++ b/xorg-server/xvfb-run.1 @@ -0,0 +1,282 @@ +.\" $Id: xvfb-run.1 2138 2005-01-17 23:40:27Z branden $ +.\" +.\" Copyright 1998-2004 Branden Robinson . +.\" +.\" This is free software; you may redistribute it and/or modify +.\" it under the terms of the GNU General Public License as +.\" published by the Free Software Foundation; either version 2, +.\" or (at your option) any later version. +.\" +.\" This is distributed in the hope that it will be useful, but +.\" WITHOUT ANY WARRANTY; without even the implied warranty of +.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +.\" GNU General Public License for more details. +.\" +.\" You should have received a copy of the GNU General Public License with +.\" the Debian operating system, in /usr/share/common-licenses/GPL; if +.\" not, write to the Free Software Foundation, Inc., 59 Temple Place, +.\" Suite 330, Boston, MA 02111-1307 USA +.\" +.\" We need the URL macro from groff's www macro package, but also want +.\" things to work all right for people who don't have it. So we define +.\" our own URL macro and let the www macro package override it if it's +.\" available. +.de URL +\\$2 \(laURL: \\$1 \(ra\\$3 +.. +.if \n[.g] .mso www.tmac +.TH xvfb\-run 1 "2004\-11\-12" "Debian Project" +.SH NAME +xvfb\-run \- run specified X client or command in a virtual X server environment +.SH SYNOPSIS +.B xvfb\-run +[ +.I options +] +.I command +.SH DESCRIPTION +.B xvfb\-run +is a wrapper for the +.BR Xvfb (1x) +command which simplifies the task of running commands (typically an X +client, or a script containing a list of clients to be run) within a virtual +X server environment. +.PP +.B xvfb\-run +sets up an X authority file (or uses an existing user\-specified one), +writes a cookie to it (see +.BR xauth (1x)) +and then starts the +.B Xvfb +X server as a background process. +The process ID of +.B Xvfb +is stored for later use. +The specified +.I command +is then run using the X display corresponding to the +.B Xvfb +server +just started and the X authority file created earlier. +.PP +When the +.I command +exits, its status is saved, the +.B Xvfb +server is killed (using the process ID stored earlier), the X authority +cookie removed, and the authority file deleted (if the user did not specify +one to use). +.B xvfb\-run +then exits with the exit status of +.IR command . +.PP +.B xvfb\-run +requires the +.B xauth +command to function. +.SH OPTIONS +.TP +.B \-a\fR,\fB \-\-auto\-servernum +Try to get a free server number, starting at 99, or the argument to +.BR \-\-server\-num . +.TP +.BI \-e\ file \fR,\fB\ \-\-error\-file= file +Store output from +.B xauth +and +.B Xvfb +in +.IR file . +The default is +.IR /dev/null . +.TP +.BI \-f\ file \fR,\fB\ \-\-auth\-file= file +Store X authentication data in +.IR file . +By default, a temporary directory called +.IR xvfb\-run. PID +(where PID is the process ID of +.B xvfb\-run +itself) is created in the directory specified by the environment variable +.B TMPDIR +(or +.I /tmp +if that variable is null or unset), and the +.BR tempfile (1) +command is used to create a file in that temporary directory called +.IR Xauthority . +.TP +.B \-h\fR,\fB \-\-help +Display a usage message and exit. +.TP +.BI \-n\ servernumber \fR,\fB\ \-\-server\-num= servernumber +Use +.I servernumber +as the server number (but see the +.B \-a\fR,\fB \-\-auto\-servernum +option above). +The default is 99. +.TP +.B \-l\fR,\fB \-\-listen\-tcp +Enable TCP port listening in the X server. +For security reasons (to avoid denial\-of\-service attacks or exploits), +TCP port listening is disabled by default. +.TP +.BI \-p\ protocolname \fR,\fB\ \-\-xauth\-protocol= protocolname +Use +.I protocolname +as the X authority protocol to use. +The default is \(oq.\(cq, which +.B xauth +interprets as its own default protocol, which is MIT\-MAGIC\-COOKIE\-1. +.TP +.BI \-s\ arguments \fR,\fB\ \-\-server\-args= arguments +Pass +.I arguments +to the +.B Xvfb +server. +Be careful to quote any whitespace characters that may occur within +.I arguments +to prevent them from regarded as separators for +.BR xvfb\-run 's +own arguments. +Also, note that specification of \(oq\-nolisten tcp\(cq in +.I arguments +may override the function of +.BR xvfb\-run 's +own +.B \-l\fR,\fB \-\-listen\-tcp +option, and that specification of the server number (e.g., \(oq:1\(cq) may +be ignored because of the way the X server parses its argument list. +Use the +.B xvfb\-run +option +.BI \-n\ servernumber \fR,\fB\ \-\-server\-num= servernumber +to achieve the latter function. +The default is \(oq\-screen 0 640x480x8\(cq. +.TP +.BI \-w\ delay \fR,\fB\ \-\-wait= delay +Wait +.I delay +seconds after launching +.B Xvfb +before attempting to start the specified command. +The default is 3. +.SH ENVIRONMENT +.TP +.B COLUMNS +indicates the width of the terminal device in character cells. +This value is used for formatting diagnostic messages. +If not set, the terminal is queried using +.BR stty (1) +to determine its width. +If that fails, a value of \(oq80\(cq is assumed. +.TP +.B TMPDIR +specifies the directory in which to place +.BR xvfb\-run 's +temporary directory for storage of the X authority file; only used if the +.B \-f +or +.B \-\-auth\-file +options are not specified. +.SH "OUTPUT FILES" +.PP +Unless the +.B \-f +or +.B \-\-auth\-file +options are specified, a temporary +directory and file within it are created (and deleted) to store the X +authority cookies used by the +.B Xvfb +server and client(s) run under it. +See +.BR tempfile (1). +If \-f or \-\-auth\-file are used, then the specified X authority file is +only written to, not created or deleted (though +.B xauth +creates an authority file itself if told to use use that does not already +exist). +.PP +An error file with a user\-specified name is also created if the +.B \-e +or +.B \-\-error\-file +options are specifed; see above. +.SH "EXIT STATUS" +.B xvfb\-run +uses its exit status as well as output to standard error to communicate +diagnostics. +The exit status of \(oq1\(cq is not used, and should be interpreted as failure +of the specified command. +.TP +0 +.B xvfb\-run +only uses this exit status if the +.B \-h\fR,\fB \-\-help +option is given. +In all other situations, this may be interpreted as success of the specified +command. +.TP +2 +No command to run was specified. +.TP +3 +The +.B xauth +command is not available. +.TP +4 +The temporary directory that was going to be used already exists; since +.B xvfb\-run +produces a uniquely named directory, this may indicate an attempt by another +process on the system to exploit a temporary file race condition. +.TP +5 +A problem was encountered while cleaning up the temporary directory. +.TP +6 +A problem was encountered while using +.BR getopt (1) +to parse the command\-line arguments. +.SH EXAMPLES +.TP +.B xvfb\-run \-\-auto\-servernum \-\-server\-num=1 xlogo +runs the +.BR xlogo (1x) +demonstration client inside the +.B Xvfb +X server on the first available server number greater than or equal to 1. +.TP +.B xvfb\-run \-\-server\-args="\-screen 0 1024x768x24" ico \-faces +runs the +.BR ico (1x) +demonstration client (and passes it the +.B \-faces +argument) inside the +.B Xvfb +X server, configured with a root window of 1024 by 768 pixels and a color +depth of 24 bits. +.PP +Note that the demo X clients used in the above examples will not exit on +their own, so they will have to be killed before +.B xvfb\-run +will exit. +.SH BUGS +See +.URL "http://bugs.debian.org/xvfb" "the Debian Bug Tracking System" . +If you wish to report a bug in +.BR xvfb\-run , +please use the +.BR reportbug (1) +command. +.SH AUTHOR +.B xfvb\-run +was written by Branden Robinson and Jeff Licquia with sponsorship from +Progeny Linux Systems. +.SH "SEE ALSO" +.BR Xvfb (1x), +.BR xauth (1x) +.\" vim:set et tw=80: diff --git a/xorg-xinit/06_move_serverauthfile_into_tmp.diff b/xorg-xinit/06_move_serverauthfile_into_tmp.diff new file mode 100644 index 0000000..dde11e3 --- /dev/null +++ b/xorg-xinit/06_move_serverauthfile_into_tmp.diff @@ -0,0 +1,21 @@ +Move startx auth files in /tmp so they are removed on reboot. +http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=357736 +The trap patch didn't seem to work on reboot. +--- + startx.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: xinit/startx.cpp +=================================================================== +--- xinit.orig/startx.cpp ++++ xinit/startx.cpp +@@ -273,7 +273,7 @@ + dummy=0 + + XCOMM create a file with auth information for the server. ':0' is a dummy. +- xserverauthfile=$HOME/.serverauth.$$ ++ xserverauthfile=`mktemp -p /tmp serverauth.XXXXXXXXXX` + trap "rm -f '$xserverauthfile'" HUP INT QUIT ILL TRAP KILL BUS TERM + xauth -q -f "$xserverauthfile" << EOF + add :$dummy . $mcookie + diff --git a/xorg-xinit/PKGBUILD b/xorg-xinit/PKGBUILD new file mode 100644 index 0000000..46eb640 --- /dev/null +++ b/xorg-xinit/PKGBUILD @@ -0,0 +1,73 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=xorg-xinit +pkgver=1.4.1 +pkgrel=03 +pkgdesc="X.Org initialisation program " +arch=('x86_64') +url="https://xorg.freedesktop.org/" +depends=('libx11' 'xorg-xauth' 'xorg-xrdb' 'xorg-xmodmap') +makedepends=('xorg-util-macros') +optdepends=('xorg-twm' 'xterm') +backup=('etc/X11/xinit/xserverrc' + 'etc/X11/xinit/xinitrc') +source=(${url}/releases/individual/app/xinit-${pkgver}.tar.bz2{,.sig} + 06_move_serverauthfile_into_tmp.diff + fs25361.patch + fs46369.patch + use_uname_-n_instead_of_hostname.diff + xserverrc) +options=(!emptydirs) + +prepare() { + cd xinit-${pkgver} + patch -Np1 -i ../06_move_serverauthfile_into_tmp.diff + patch -Np1 -i ../fs25361.patch + patch -Np1 -i ../fs46369.patch + # FS#67679 + patch -Np1 -i ../use_uname_-n_instead_of_hostname.diff + sed -i -e 's/XSLASHGLOB.sh/XSLASHGLOB/' xinitrc.cpp +} + +build() { + cd xinit-${pkgver} + autoreconf -fi + ./configure --prefix=/usr --with-xinitdir=/etc/X11/xinit + make +} + +package() { + cd xinit-${pkgver} + make DESTDIR="${pkgdir}" install + install -m644 "${srcdir}/xserverrc" "${pkgdir}/etc/X11/xinit/xserverrc" + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} + +#---- license gpg-key sha256sums ---- + +license=('custom') + +validpgpkeys=('7C2608F8E5F9E78D7A3F26FF177544B49AF313FB') # "Hans de Goede " +validpgpkeys+=('4A193C06D35E7C670FA4EF0BA2FB9E081F2D130E') # "Alan Coopersmith " + +sha512sums=('6cbc5d025a891c419f3f4493381b2fca57a67d78df866d2f16a83426f86bad6eca7f240fac12b25cbcc63df0fec41f625407184e044898602d66483715315340' + 'SKIP' + '99216b2d50052a0bafede9a2db1744a8b0313ccbc02c609502ddacb8684fc56c6f2656e6521c848880033b25005bb14a1bce0d6fefade85141ed56aad07dadf3' + '12a89cbb26902e135bb21f945c8de86526ff879c9f20a2601157f6a39899f021ed2970cee9e4fbcd4c13af6fe78e7902dd1f7ce1928fc914d681453bf848c0f8' + '8a36bff3c472763a9a46b9a36b8b4a15f03e6fb0387b12efba27f15dc500faa2a3f92c0f7e217a0b00da7c78682c7af6357cc6b88b550ece9bc89c477412b7e0' + '860aa77462e56d399ca0cc829e8a60f4df6d62eca5ac41bc52dd9e3783b7cf6e6e33ce27e76a86ae393058f53a0cb44624058cdd1733fcbfc96ab800882649f7' + 'f86d96d76bcb340021e7904925f0029f8662e4dfc32489198b3a8695dca069da496539e2287249c763fe9c4d8d5d591fd18fe49a0bee822cbbd0eb712efbb89b') + +sha256sums=(de9b8f617b68a70f6caf87da01fcf0ebd2b75690cdcba9c921d0ef54fa54abb9 # xinit-1.4.1.tar.bz2 + 696e3a86c1dce07c67d7e71a20369aad89d0b502b33a473a723ef6b3746c0b30 # xinit-1.4.1.tar.bz2.sig + 224a8e2de310548101b14c2ab2fc45fecc20e714212932cd797962565164527d # 06_move_serverauthfile_into_tmp.diff + 929ed22ab034ee483390857d56f45058aec8002f862987aecd7e1d271102aa22 # fs25361.patch + 6e2c44b997e604db167f00168e8b6c68257be50447d7a80856b4aa910f52351e # fs46369.patch + 71c84795c557721ee4b4495f04ff5d1e9c1e84e36bdd0a921e5734a94ef2f3ba # use_uname_-n_instead_of_hostname.diff + 86835010b5350c41035495b7b845db0eecf1e4b7eeaf152b12a881fa502e5387) # xserverrc diff --git a/xorg-xinit/PKGBUILD-arch b/xorg-xinit/PKGBUILD-arch new file mode 100644 index 0000000..b238130 --- /dev/null +++ b/xorg-xinit/PKGBUILD-arch @@ -0,0 +1,56 @@ +# Maintainer: Jan de Groot +# Contributor: Alexander Baldeck + +pkgname=xorg-xinit +pkgver=1.4.1 +pkgrel=3 +pkgdesc="X.Org initialisation program " +arch=('x86_64') +license=('custom') +url="https://xorg.freedesktop.org/" +depends=('libx11' 'xorg-xauth' 'xorg-xrdb' 'xorg-xmodmap') +makedepends=('xorg-util-macros') +optdepends=('xorg-twm' 'xterm') +backup=('etc/X11/xinit/xserverrc' + 'etc/X11/xinit/xinitrc') +source=(${url}/releases/individual/app/xinit-${pkgver}.tar.bz2{,.sig} + 06_move_serverauthfile_into_tmp.diff + fs25361.patch + fs46369.patch + use_uname_-n_instead_of_hostname.diff + xserverrc) +options=(!emptydirs) +sha512sums=('6cbc5d025a891c419f3f4493381b2fca57a67d78df866d2f16a83426f86bad6eca7f240fac12b25cbcc63df0fec41f625407184e044898602d66483715315340' + 'SKIP' + '99216b2d50052a0bafede9a2db1744a8b0313ccbc02c609502ddacb8684fc56c6f2656e6521c848880033b25005bb14a1bce0d6fefade85141ed56aad07dadf3' + '12a89cbb26902e135bb21f945c8de86526ff879c9f20a2601157f6a39899f021ed2970cee9e4fbcd4c13af6fe78e7902dd1f7ce1928fc914d681453bf848c0f8' + '8a36bff3c472763a9a46b9a36b8b4a15f03e6fb0387b12efba27f15dc500faa2a3f92c0f7e217a0b00da7c78682c7af6357cc6b88b550ece9bc89c477412b7e0' + '860aa77462e56d399ca0cc829e8a60f4df6d62eca5ac41bc52dd9e3783b7cf6e6e33ce27e76a86ae393058f53a0cb44624058cdd1733fcbfc96ab800882649f7' + 'f86d96d76bcb340021e7904925f0029f8662e4dfc32489198b3a8695dca069da496539e2287249c763fe9c4d8d5d591fd18fe49a0bee822cbbd0eb712efbb89b') +validpgpkeys=('7C2608F8E5F9E78D7A3F26FF177544B49AF313FB') # "Hans de Goede " +validpgpkeys+=('4A193C06D35E7C670FA4EF0BA2FB9E081F2D130E') # "Alan Coopersmith " + +prepare() { + cd xinit-${pkgver} + patch -Np1 -i ../06_move_serverauthfile_into_tmp.diff + patch -Np1 -i ../fs25361.patch + patch -Np1 -i ../fs46369.patch + # FS#67679 + patch -Np1 -i ../use_uname_-n_instead_of_hostname.diff + sed -i -e 's/XSLASHGLOB.sh/XSLASHGLOB/' xinitrc.cpp +} + +build() { + cd xinit-${pkgver} + autoreconf -fi + ./configure --prefix=/usr --with-xinitdir=/etc/X11/xinit + make +} + +package() { + cd xinit-${pkgver} + make DESTDIR="${pkgdir}" install + install -m644 "${srcdir}/xserverrc" "${pkgdir}/etc/X11/xinit/xserverrc" + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} diff --git a/xorg-xinit/clean b/xorg-xinit/clean new file mode 100644 index 0000000..0a7c9fd --- /dev/null +++ b/xorg-xinit/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,xinit*tar.bz2*} diff --git a/xorg-xinit/deps b/xorg-xinit/deps new file mode 100644 index 0000000..e157cec --- /dev/null +++ b/xorg-xinit/deps @@ -0,0 +1,7 @@ +libx11 +xorg-xauth +xorg-xrdb +xorg-xmodmap +xorg-util-macros +autoconf +automake diff --git a/xorg-xinit/fs25361.patch b/xorg-xinit/fs25361.patch new file mode 100644 index 0000000..0469685 --- /dev/null +++ b/xorg-xinit/fs25361.patch @@ -0,0 +1,17 @@ +Common subdirectories: xinit.orig/privileged_startx and xinit/privileged_startx +diff -u xinit.orig/startx.cpp xinit/startx.cpp +--- xinit.orig/startx.cpp 2011-08-02 18:26:57.161711018 +0400 ++++ xinit/startx.cpp 2011-08-02 19:06:39.348816866 +0400 +@@ -290,9 +290,9 @@ + XCOMM now add the same credentials to the client authority file + XCOMM if '$displayname' already exists do not overwrite it as another + XCOMM server may need it. Add them to the '$xserverauthfile' instead. +- for displayname in $authdisplay $hostname$authdisplay; do ++ for displayname in $authdisplay $hostname/unix$authdisplay; do + authcookie=`XAUTH list "$displayname" @@ +- | sed -n "s/.*$displayname[[:space:]*].*[[:space:]*]//p"` 2>/dev/null; ++ | sed -n "s/.*$hostname\/unix$authdisplay[[:space:]*].*[[:space:]*]//p"` 2>/dev/null; + if [ "z${authcookie}" = "z" ] ; then + XAUTH -q << EOF + add $displayname . $mcookie + diff --git a/xorg-xinit/fs46369.patch b/xorg-xinit/fs46369.patch new file mode 100644 index 0000000..91f2d70 --- /dev/null +++ b/xorg-xinit/fs46369.patch @@ -0,0 +1,11 @@ +diff -u -r xinit-1.3.4/startx.cpp xinit-1.3.4-dbus/startx.cpp +--- xinit-1.3.4/startx.cpp 2015-09-21 17:07:29.732240308 +0200 ++++ xinit-1.3.4-dbus/startx.cpp 2015-09-21 17:07:59.255424644 +0200 +@@ -11,7 +11,6 @@ + XCOMM Site administrators are STRONGLY urged to write nicer versions. + XCOMM + +-unset DBUS_SESSION_BUS_ADDRESS + unset SESSION_MANAGER + + #ifdef __APPLE__ diff --git a/xorg-xinit/key b/xorg-xinit/key new file mode 100644 index 0000000..cae4ed1 --- /dev/null +++ b/xorg-xinit/key @@ -0,0 +1 @@ +gpg -v --recv-key CFDF148828C642A7 diff --git a/xorg-xinit/use_uname_-n_instead_of_hostname.diff b/xorg-xinit/use_uname_-n_instead_of_hostname.diff new file mode 100644 index 0000000..a3aa1b8 --- /dev/null +++ b/xorg-xinit/use_uname_-n_instead_of_hostname.diff @@ -0,0 +1,24 @@ +diff --git a/startx.cpp b/startx.cpp +index a390f0341a126c87de91634139de1f0329d0c06d..33b9eb7bfc35117df97ef6c54f2620bbcd90b9a6 100644 +--- a/startx.cpp ++++ b/startx.cpp +@@ -251,18 +251,7 @@ if [ x"$enable_xauth" = x1 ] ; then + removelist= + + XCOMM set up default Xauth info for this machine +- case `uname` in +- Linux*) +- if [ -z "`hostname --version 2>&1 | grep GNU`" ]; then +- hostname=`hostname -f` +- else +- hostname=`hostname` +- fi +- ;; +- *) +- hostname=`hostname` +- ;; +- esac ++ hostname=`uname -n` + + authdisplay=${display:-:0} + #if defined(HAS_COOKIE_MAKER) && defined(MK_COOKIE) diff --git a/xorg-xinit/xserverrc b/xorg-xinit/xserverrc new file mode 100644 index 0000000..b4de252 --- /dev/null +++ b/xorg-xinit/xserverrc @@ -0,0 +1,2 @@ +#!/bin/sh +exec /usr/bin/X -nolisten tcp "$@" diff --git a/xorg-xwayland/PKGBUILD b/xorg-xwayland/PKGBUILD new file mode 100644 index 0000000..429b561 --- /dev/null +++ b/xorg-xwayland/PKGBUILD @@ -0,0 +1,66 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=xorg-xwayland +pkgver=22.1.0 +pkgrel=01 +arch=('x86_64') +groups=('xorg') +url="https://xorg.freedesktop.org" +pkgdesc="run X clients under wayland" +depends=('nettle' 'libepoxy' 'libxfont2' + 'pixman' 'xorg-server-common' 'libxcvt') +makedepends=('meson' 'xorgproto' 'xtrans' 'libxkbfile' 'dbus' + 'xorg-font-util' + 'wayland' 'wayland-protocols' + 'libdrm' 'mesa-libgl' + 'egl-wayland' +) +source=(https://xorg.freedesktop.org/archive/individual/xserver/xwayland-$pkgver.tar.xz{,.sig}) +provides=('xorg-server-xwayland') +conflicts=('xorg-server-xwayland') +replaces=('xorg-server-xwayland') + +build() { + arch-meson xwayland-$pkgver build \ + -D ipv6=false \ + -D xvfb=false \ + -D xdmcp=false \ + -D xcsecurity=true \ + -D dri3=true \ + -D xwayland_eglstream=true \ + -D glamor=true \ + -D xkb_dir=/usr/share/X11/xkb \ + -D xkb_output_dir=/var/lib/xkb + + # Print config + meson configure build + ninja -C build +} + +package() { + + # bin + manpage + .pc file + install -m755 -Dt "${pkgdir}"/usr/bin build/hw/xwayland/Xwayland + install -m644 -Dt "${pkgdir}"/usr/share/man/man1 build/hw/xwayland/Xwayland.1 + install -m644 -Dt "${pkgdir}"/usr/lib/pkgconfig build/hw/xwayland/xwayland.pc + + # license + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" xwayland-$pkgver/COPYING +} + +#---- license gpg-key sha256sums ---- + +license=('custom') + +#validpgpkeys=('B09FAF35BE914521980951145A81AF8E6ADBB200') # "Michel Daenzer " +validpgpkeys=('67DC86F2623FC5FD4BB5225D14706DBE1E4B4540') # "Olivier Fourdan " + +sha512sums=(01306d2127e9d02e457d86208d6fb285379ed8fab2837febe56aaee4b236bc052ad65ca8ec35555b983d15f0d8dd01d20526a17b40225d2a4b91c53202ec10b5 + SKIP) +sha256sums=(1752d6d0a930e71292b5a308d3811ebd54d8cc68cacff44de654265b8617a2bf # xwayland-22.1.0.tar.xz + d4ab29c3719b268ead163750e8016b704089ebbcd4ab210e8e914c340b8d9e81) # xwayland-22.1.0.tar.xz.sig diff --git a/xorg-xwayland/PKGBUILD-arch b/xorg-xwayland/PKGBUILD-arch new file mode 100644 index 0000000..98c524e --- /dev/null +++ b/xorg-xwayland/PKGBUILD-arch @@ -0,0 +1,55 @@ +# Maintainer: AndyRTR + +pkgname=xorg-xwayland +pkgver=22.1.0 +pkgrel=1 +arch=('x86_64') +license=('custom') +groups=('xorg') +url="https://xorg.freedesktop.org" +pkgdesc="run X clients under wayland" +depends=('nettle' 'libepoxy' 'systemd-libs' 'libxfont2' + 'pixman' 'xorg-server-common' 'libxcvt') +makedepends=('meson' 'xorgproto' 'xtrans' 'libxkbfile' 'dbus' + 'xorg-font-util' + 'wayland' 'wayland-protocols' + 'libdrm' 'mesa-libgl' + 'systemd' + 'egl-wayland' +) +source=(https://xorg.freedesktop.org/archive/individual/xserver/xwayland-$pkgver.tar.xz{,.sig}) +sha512sums=('01306d2127e9d02e457d86208d6fb285379ed8fab2837febe56aaee4b236bc052ad65ca8ec35555b983d15f0d8dd01d20526a17b40225d2a4b91c53202ec10b5' + 'SKIP') +provides=('xorg-server-xwayland') +conflicts=('xorg-server-xwayland') +replaces=('xorg-server-xwayland') +#validpgpkeys=('B09FAF35BE914521980951145A81AF8E6ADBB200') # "Michel Daenzer " +validpgpkeys=('67DC86F2623FC5FD4BB5225D14706DBE1E4B4540') # "Olivier Fourdan " + +build() { + arch-meson xwayland-$pkgver build \ + -D ipv6=true \ + -D xvfb=false \ + -D xdmcp=false \ + -D xcsecurity=true \ + -D dri3=true \ + -D xwayland_eglstream=true \ + -D glamor=true \ + -D xkb_dir=/usr/share/X11/xkb \ + -D xkb_output_dir=/var/lib/xkb + + # Print config + meson configure build + ninja -C build +} + +package() { + + # bin + manpage + .pc file + install -m755 -Dt "${pkgdir}"/usr/bin build/hw/xwayland/Xwayland + install -m644 -Dt "${pkgdir}"/usr/share/man/man1 build/hw/xwayland/Xwayland.1 + install -m644 -Dt "${pkgdir}"/usr/lib/pkgconfig build/hw/xwayland/xwayland.pc + + # license + install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" xwayland-$pkgver/COPYING +} diff --git a/xorg-xwayland/clean b/xorg-xwayland/clean new file mode 100644 index 0000000..58f9b3c --- /dev/null +++ b/xorg-xwayland/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,*tar.xz*} diff --git a/xorg-xwayland/deps b/xorg-xwayland/deps new file mode 100644 index 0000000..6a0f55c --- /dev/null +++ b/xorg-xwayland/deps @@ -0,0 +1,15 @@ +libepoxy +libxfont2 +pixman +xorg-server-common +libxcvt +xorg-font-util +wayland +wayland-protocols +libdrm +egl-wayland +mesa +libxkbfile +meson +xorgproto +xtrans diff --git a/xorg-xwayland/key b/xorg-xwayland/key new file mode 100644 index 0000000..e9f1354 --- /dev/null +++ b/xorg-xwayland/key @@ -0,0 +1 @@ +gpg -v --recv-key 14706DBE1E4B4540 diff --git a/xorg-xwayland/time b/xorg-xwayland/time new file mode 100644 index 0000000..44ba203 --- /dev/null +++ b/xorg-xwayland/time @@ -0,0 +1,4 @@ + +real 1m13.782s +user 2m9.961s +sys 0m12.607s diff --git a/yaourt/PKGBUILD b/yaourt/PKGBUILD new file mode 100644 index 0000000..5dfd1c7 --- /dev/null +++ b/yaourt/PKGBUILD @@ -0,0 +1,59 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- +# Maintainer: Yianiris +################ +# NOTE: by the maintainer +# The original source was stored at http://www.archlinux.fr/yaourt-en +# But it was removed due to pressure from archlinux as the package +# no longer meets the safety standards. Personally I believe the reasons +# relate to logind and the package's elevation of privileges without +# utilizing the logind of systemd. Same reasoning and attempt to +# deprecate gksu/gksudo. For many years was by far the number one +# AUR and pacman wrapper of choice. +# No alteration to the source was made as far as you can trust my saying so +# ############# + +pkgname=yaourt +pkgver=1.9 +pkgrel=01 +pkgdesc='A pacman wrapper with extended features and AUR support' +arch=('any') +url='https://framagit.org/yilinux/yaourt' +# +# OLD YAOURT SRC SITE REMOVED SHORTLY AFTER THIS FORK # +#url='http://www.archlinux.fr/yaourt-en/' +# + +depends=('diffutils' 'pacman>=6' 'package-query' 'git') + +makedepends=('git' 'sed' 'gettext') + +optdepends=('aurvote: vote for favorite packages from AUR for inclusion in [community]' + 'customizepkg: automatically modify PKGBUILD during install/upgrade' + 'rsync: retrieve PKGBUILD from official repositories') + +provides=('yaourt') +conflicts=('yaourt-git' 'yaourtix') +backup=('etc/yaourtrc') + +source=(git+$url) # https://framagit.org/yilinux/yaourt + +build() { + cd ${srcdir}/${pkgname}/src + make PREFIX=/usr sysconfdir=/etc localstatedir=/var +} + +package() { + cd "$srcdir/$pkgname/src" + make PREFIX=/usr sysconfdir=/etc localstatedir=/var DESTDIR="$pkgdir" install +} + +#---- license gpg-key sha256sums ---- + +license=('GPL') + +sha256sums=(SKIP) diff --git a/yaourt/clean b/yaourt/clean new file mode 100644 index 0000000..464162c --- /dev/null +++ b/yaourt/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,yaourt} diff --git a/yaourt/deps b/yaourt/deps new file mode 100644 index 0000000..8bfed72 --- /dev/null +++ b/yaourt/deps @@ -0,0 +1 @@ +git gettext diff --git a/yaourt/time b/yaourt/time new file mode 100644 index 0000000..f0ed117 --- /dev/null +++ b/yaourt/time @@ -0,0 +1,5 @@ + +real 0m6.684s +user 0m2.259s +sys 0m0.318s + diff --git a/yelp-tools/PKGBUILD b/yelp-tools/PKGBUILD new file mode 100644 index 0000000..2759a3e --- /dev/null +++ b/yelp-tools/PKGBUILD @@ -0,0 +1,44 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=yelp-tools +pkgver=41.0 +pkgrel=01 +pkgdesc="Collection of tools for building and converting documentation" +url="https://gitlab.gnome.org/GNOME/yelp-tools" +arch=(any) +depends=(yelp-xsl python-lxml itstool libxml2 docbook-xsl mallard-ducktype) +makedepends=(git meson) +_commit=6a68991ff8fe7dc1f97dd8479fc44316f0ded89b # tags/41.0^0 +source=("git+https://gitlab.gnome.org/GNOME/yelp-tools.git#commit=$_commit") + +pkgver() { + cd $pkgname + git describe --tags | sed 's/-/+/g' +} + +prepare() { + cd $pkgname +} + +build() { + arch-meson $pkgname build -D help=true + meson compile -C build +} + +check() { + meson test -C build --print-errorlogs +} + +package() { + meson install -C build --destdir "$pkgdir" +} + +#---- license gpg-key sha256sums ---- +license=(GPL) +sha256sums=('SKIP') + diff --git a/yelp-tools/PKGBUILD-arch b/yelp-tools/PKGBUILD-arch new file mode 100644 index 0000000..7c7dab6 --- /dev/null +++ b/yelp-tools/PKGBUILD-arch @@ -0,0 +1,37 @@ +# Maintainer: Jan Alexander Steffens (heftig) +# Contributor: Jan de Groot + +pkgname=yelp-tools +pkgver=41.0 +pkgrel=1 +pkgdesc="Collection of tools for building and converting documentation" +url="https://gitlab.gnome.org/GNOME/yelp-tools" +arch=(any) +depends=(yelp-xsl python-lxml itstool libxml2 docbook-xsl mallard-ducktype) +makedepends=(git meson) +license=(GPL) +_commit=6a68991ff8fe7dc1f97dd8479fc44316f0ded89b # tags/41.0^0 +source=("git+https://gitlab.gnome.org/GNOME/yelp-tools.git#commit=$_commit") +sha256sums=('SKIP') + +pkgver() { + cd $pkgname + git describe --tags | sed 's/-/+/g' +} + +prepare() { + cd $pkgname +} + +build() { + arch-meson $pkgname build -D help=true + meson compile -C build +} + +check() { + meson test -C build --print-errorlogs +} + +package() { + meson install -C build --destdir "$pkgdir" +} diff --git a/yelp-tools/clean b/yelp-tools/clean new file mode 100644 index 0000000..7ed7443 --- /dev/null +++ b/yelp-tools/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,yelp-tools} diff --git a/yelp-tools/deps b/yelp-tools/deps new file mode 100644 index 0000000..858f833 --- /dev/null +++ b/yelp-tools/deps @@ -0,0 +1,8 @@ +git meson +yelp-xsl +python-lxml +itstool +docbook-xsl +mallard-ducktype + +gettext diff --git a/yelp-tools/time b/yelp-tools/time new file mode 100644 index 0000000..dd5d280 --- /dev/null +++ b/yelp-tools/time @@ -0,0 +1,4 @@ + +real 0m4.541s +user 0m2.417s +sys 0m0.405s diff --git a/yelp/PKGBUILD b/yelp/PKGBUILD new file mode 100644 index 0000000..003e6b3 --- /dev/null +++ b/yelp/PKGBUILD @@ -0,0 +1,48 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=yelp +pkgver=41.2 +pkgrel=01 +pkgdesc="Get help with GNOME" +url="https://wiki.gnome.org/Apps/Yelp" +arch=(x86_64) +depends=(webkit2gtk-4.1 yelp-xsl libxslt xz bzip2) +makedepends=(gtk-doc itstool autoconf-archive git appstream-glib) +#groups=() +_commit=72d73437a3d444739d722e580153f2dd8ee50f1d # tags/41.2^0 +source=("git+https://gitlab.gnome.org/GNOME/yelp.git#commit=$_commit") + +pkgver() { + cd $pkgname + git describe --tags | sed 's/-/+/g' +} + +prepare() { + cd $pkgname + NOCONFIGURE=1 ./autogen.sh +} + +build() { + cd $pkgname + ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ + --disable-static --enable-gtk-doc --enable-compile-warnings=minimum + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +package() { + cd $pkgname + make DESTDIR="$pkgdir" install +} + +#---- license gpg-key sha256sums ---- + +license=(GPL) + +sha256sums=('SKIP') + +sha256sums=(a) diff --git a/yelp/PKGBUILD-arch.new b/yelp/PKGBUILD-arch.new new file mode 100644 index 0000000..4c4d5e0 --- /dev/null +++ b/yelp/PKGBUILD-arch.new @@ -0,0 +1,39 @@ +# Maintainer: Jan Alexander Steffens (heftig) +# Contributor: Jan de Groot + +pkgname=yelp +pkgver=41.2 +pkgrel=1 +pkgdesc="Get help with GNOME" +url="https://wiki.gnome.org/Apps/Yelp" +license=(GPL) +arch=(x86_64) +depends=(webkit2gtk-4.1 yelp-xsl libxslt xz bzip2) +makedepends=(gtk-doc itstool autoconf-archive git appstream-glib) +groups=(gnome) +_commit=72d73437a3d444739d722e580153f2dd8ee50f1d # tags/41.2^0 +source=("git+https://gitlab.gnome.org/GNOME/yelp.git#commit=$_commit") +sha256sums=('SKIP') + +pkgver() { + cd $pkgname + git describe --tags | sed 's/-/+/g' +} + +prepare() { + cd $pkgname + NOCONFIGURE=1 ./autogen.sh +} + +build() { + cd $pkgname + ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ + --disable-static --enable-gtk-doc --enable-compile-warnings=minimum + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +package() { + cd $pkgname + make DESTDIR="$pkgdir" install +} diff --git a/yelp/deps b/yelp/deps new file mode 100644 index 0000000..cb183ee --- /dev/null +++ b/yelp/deps @@ -0,0 +1,6 @@ +webkit2gtk-4.1 +yelp-xsl +gtk-doc +itstool +autoconf-archive +appstream-glib diff --git a/zip/PKGBUILD b/zip/PKGBUILD new file mode 100644 index 0000000..105124b --- /dev/null +++ b/zip/PKGBUILD @@ -0,0 +1,49 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=zip +pkgver=3.0 +_pkgver=${pkgver/./} +pkgrel=09 +pkgdesc='Compressor/archiver for creating and modifying zipfiles' +url='http://www.info-zip.org/Zip.html' +arch=('x86_64') +depends=('bzip2') +options=('!makeflags') +source=("https://downloads.sourceforge.net/infozip/${pkgname}${_pkgver}.tar.gz") ## temp w/o patch +# +# 'zipnote.patch') + + +#prepare() { +# cd "${srcdir}/${pkgname}${_pkgver}" +# sed -e "/^CFLAGS_NOOPT =/s/\$/ $CPPFLAGS $CFLAGS/" -i unix/Makefile +# sed -e "s/^LFLAGS1=''/LFLAGS1=$LDFLAGS/" -i unix/configure +# patch -p1 -i ../zipnote.patch +# CFLAGS=${CFLAGS/-Werror=format-security/} +# CXXFLAGS=${CXXFLAGS/-Werror=format-security/} +#} + +build() { + cd "${srcdir}/${pkgname}${_pkgver}" + make -f unix/Makefile prefix=/usr generic_gcc +} + +package() { + cd "${srcdir}/${pkgname}${_pkgver}" + make -f unix/Makefile prefix="${pkgdir}"/usr \ + MANDIR="${pkgdir}"/usr/share/man/man1 \ + install + install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} + +#---- license gpg-key sha256sums ---- + +license=('custom') + +sha256sums=('f0e8bb1f9b7eb0b01285495a2699df3a4b766784c1765a8f1aeedf63c0806369') +# '89249a3f1fdf838b795ce432a2d763fdbe913d6a146541e41b7a2e2769291ba0') diff --git a/zip/PKGBUILD-arch b/zip/PKGBUILD-arch new file mode 100644 index 0000000..6aa7e6c --- /dev/null +++ b/zip/PKGBUILD-arch @@ -0,0 +1,38 @@ +# Maintainer: Gaetan Bisson +# Contributor: dorphell + +pkgname=zip +pkgver=3.0 +_pkgver=${pkgver/./} +pkgrel=9 +pkgdesc='Compressor/archiver for creating and modifying zipfiles' +url='http://www.info-zip.org/Zip.html' +arch=('x86_64') +license=('custom') +depends=('bzip2') +source=("https://downloads.sourceforge.net/infozip/${pkgname}${_pkgver}.tar.gz" + 'zipnote.patch') +sha256sums=('f0e8bb1f9b7eb0b01285495a2699df3a4b766784c1765a8f1aeedf63c0806369' + '89249a3f1fdf838b795ce432a2d763fdbe913d6a146541e41b7a2e2769291ba0') + +options=('!makeflags') + +prepare() { + cd "${srcdir}/${pkgname}${_pkgver}" + sed -e "/^CFLAGS_NOOPT =/s/\$/ $CPPFLAGS $CFLAGS/" -i unix/Makefile + sed -e "s/^LFLAGS1=''/LFLAGS1=$LDFLAGS/" -i unix/configure + patch -p1 -i ../zipnote.patch +} + +build() { + cd "${srcdir}/${pkgname}${_pkgver}" + make -f unix/Makefile prefix=/usr generic_gcc +} + +package() { + cd "${srcdir}/${pkgname}${_pkgver}" + make -f unix/Makefile prefix="${pkgdir}"/usr \ + MANDIR="${pkgdir}"/usr/share/man/man1 \ + install + install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} diff --git a/zip/clean b/zip/clean new file mode 100644 index 0000000..d4a92d4 --- /dev/null +++ b/zip/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,zip*tar.gz} diff --git a/zip/deps b/zip/deps new file mode 100644 index 0000000..8d1c8b6 --- /dev/null +++ b/zip/deps @@ -0,0 +1 @@ + diff --git a/zip/zipnote.patch b/zip/zipnote.patch new file mode 100644 index 0000000..4177a7d --- /dev/null +++ b/zip/zipnote.patch @@ -0,0 +1,13 @@ +diff --git a/zipnote.c b/zipnote.c +index 5e02cb6..996f012 100644 +--- a/zipnote.c ++++ b/zipnote.c +@@ -661,7 +661,7 @@ char **argv; /* command line tokens */ + if ((r = zipcopy(z)) != ZE_OK) + ziperr(r, "was copying an entry"); + } +- fclose(x); ++ fclose(in_file); + + /* Write central directory and end of central directory with new comments */ + if ((c = zftello(y)) == (zoff_t)-1) /* get start of central */