upg several moves from deprecated community

add v4l-utils w/o systemd
This commit is contained in:
joborun linux 2023-05-27 18:47:37 +03:00
parent 189e19f437
commit 8bc9b0935d
38 changed files with 1686 additions and 315 deletions

View File

@ -6,11 +6,11 @@
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=apparmor
pkgver=3.1.3
pkgrel=02
pkgver=3.1.4
pkgrel=01
pkgdesc="Mandatory Access Control (MAC) using Linux Security Module (LSM) w/o systemd"
url="https://gitlab.com/apparmor/apparmor"
depends=(audit glibc pam python)
depends=(audit bash gcc-libs glibc pam python)
makedepends=(apache libxcrypt python-setuptools ruby swig)
checkdepends=(dejagnu perl-locale-gettext python-notify2 python-psutil)
optdepends=('perl: for perl bindings'
@ -100,7 +100,7 @@ check() {
}
package() {
depends+=('libcrypt.so')
# depends+=('libcrypt.so')
cd "$pkgname-$pkgver"
make -C libraries/libapparmor DESTDIR="${pkgdir}" install
@ -152,7 +152,11 @@ license=(GPL2 LGPL2.1)
validpgpkeys=('3ECDCBA5FB34D254961CC53F6689E64E3D3664BB') # AppArmor Development Team (AppArmor signing key) <apparmor@lists.ubuntu.com>
sha256sums=(b8ffac45d0b283afe574ddd5542142ba1a62c354df110cff862b99201f29c843 # apparmor-3.1.3.tar.gz
c31ba39f3f7e23b6a3f7f301435fb9fa5958807ab477398a5c803e0d8dd18f67) # apparmor-3.1.3.tar.gz.asc
sha256sums=(6bee0c3941836dae2c635fe82f09b666123fcac16563aa0fedf4a63c22b91f40 # apparmor-3.1.4.tar.gz
9b41aa4bf8a7c20ceb208af8140164a28fe7ca2cb137ee3fe6d7392f2bf2dae1) # apparmor-3.1.4.tar.gz.asc
b2sums=('a9be29a42bb96c1d2c69a6b7627d59aea023f22fe79bff1a487aa5ddd6845ec98f67be5c597ec51edf4493513dfed3b43fc493f454bcf48b3f43c44572ffc2ae'
'SKIP')
## 1624db7a189575019f26cb14392b4812362efa8b3de6c485016877e06eb9fdd6 apparmor-3.1.4-01-x86_64.pkg.tar.lz
## 0d255410a9c816a6abcf868b7bc99ba11ea60ca5ff7123c82f46a5c07f577ee2 apparmor-3.1.3-02-x86_64.pkg.tar.lz

View File

@ -1,15 +1,33 @@
# Maintainer: David Runge <dvzrv@archlinux.org>
pkgname=apparmor
pkgver=3.1.3
pkgrel=2
pkgver=3.1.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)
depends=(
audit
bash
gcc-libs
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'
@ -25,9 +43,9 @@ backup=(
etc/apparmor/severity.db
)
source=(https://launchpad.net/$pkgname/${pkgver%.[0-9]}/$pkgver/+download/$pkgname-$pkgver.tar.gz{,.asc})
sha512sums=('88ffb21813d1874e640ad407aa566d898fb47b65f819e321d2d451845be86088af7e1bcb4abac6601bedf353ef5d3cb6a07a7f57d0a666449a5f768ea0e49c94'
sha512sums=('db65edfa1b9c1f953940165e71dddcab9a2d378f29683b0b4e5d44f0810bb0105ba3820ba89de927ef90d0a94ea6d61e91ce3de09ec2e385817735a93d4039c4'
'SKIP')
b2sums=('a2aaec3e5439bc75509b6810c477df55ba837fc595b772bd884ded4860db32e8ce9d5fb015b269ce1597b84d69d78d5ebb45d775f658b4d05d51ed392aad7549'
b2sums=('a9be29a42bb96c1d2c69a6b7627d59aea023f22fe79bff1a487aa5ddd6845ec98f67be5c597ec51edf4493513dfed3b43fc493f454bcf48b3f43c44572ffc2ae'
'SKIP')
validpgpkeys=('3ECDCBA5FB34D254961CC53F6689E64E3D3664BB') # AppArmor Development Team (AppArmor signing key) <apparmor@lists.ubuntu.com>
_core_perl="/usr/bin/core_perl"
@ -96,8 +114,6 @@ check() {
}
package() {
depends+=(libcrypt.so)
cd $pkgname-$pkgver
make -C libraries/libapparmor DESTDIR="$pkgdir" install
make -C changehat/pam_apparmor DESTDIR="$pkgdir/usr" install

View File

@ -10,7 +10,6 @@ python-psutil
autoconf
automake
bison
dbus-python
python-typing_extensions

View File

@ -5,7 +5,7 @@
# Website : https://pozol.eu
#-----------------------------------------| DESCRIPTION |---------------------------------------
_pkgver=9.18.14
_pkgver=9.18.15
pkgname=bind
pkgver=${_pkgver//-/.}
pkgrel=01
@ -108,8 +108,8 @@ license=('MPL2')
validpgpkeys=('D99CCEAF879747014F038D63182E23579462EFAA' # Michal Nowak
'706B6C28620E76F91D11F7DF510A642A06C52CEC') # Michał Kępień (Code-Signing Key) <michal@isc.org>
sha256sums=(9ae12edf6ac3c430b33ecd1a7c0c0c60875d255185eb87850fa9a5e794a64a09 # bind-9.18.14.tar.xz
d0a73d61dff119c38987ae90998a4704890d9c2067708d0476e45a449b7754f6 # bind-9.18.14.tar.xz.asc
sha256sums=(28ae8db14862801bc2bd4fd820db00667d3f1ff9ae9cc2d06a0ef7810fed7a4e # bind-9.18.15.tar.xz
08d74a555871f251022d4a1acc2b3c0e3e610c7c30a335f75952e6ddd8816887 # bind-9.18.15.tar.xz.asc
f0423c4ee8495da487e07e9144bec1d25f46a0cd2dfa7cfd7a761ef15bfefc98 # tmpfiles.conf
7c0acefcfcc3ae093550caed7ec90fe84bec8f7477459ffa7e71dda76bcbdb2c # sysusers.conf
e08a01d41b18bdb771d534daca99642314939aafdb088e5cfcf0ef2d33f8e7eb # named.conf
@ -117,4 +117,4 @@ sha256sums=(9ae12edf6ac3c430b33ecd1a7c0c0c60875d255185eb87850fa9a5e794a64a09 #
# c06fc270e32a843c8b6d86335a2ec607d405dfba6875de8d8a9abde39a9e2c17 # localhost.ip6.zone
b88fd2b99e7d42d414b329b814b9ff3304fa0ef9c67df81bde235bbfa0f3a3b8) # 127.0.0.zone
## 904ca2ccb32d49d80de07836c864edce364e79983e4521ef7e099d36b05792df bind-9.18.14-01-x86_64.pkg.tar.lz
## db0bb064f3d89cce63dbff14ab0efce7acfaff6cf125cf0a580b67dda0bfff6d bind-9.18.15-01-x86_64.pkg.tar.lz

View File

@ -3,7 +3,7 @@
# Contributor: judd <jvinet@zeroflux.org>
# Contributor: Mario Vazquez <mario_vazq@hotmail.com>
_pkgver=9.18.14
_pkgver=9.18.15
pkgname=bind
pkgver=${_pkgver//-/.}
pkgrel=1
@ -33,7 +33,7 @@ source=("https://ftp.isc.org/isc/bind9/${_pkgver}/bind-${_pkgver}.tar.xz"{,.asc}
'localhost.zone'
'localhost.ip6.zone'
'127.0.0.zone')
sha256sums=('9ae12edf6ac3c430b33ecd1a7c0c0c60875d255185eb87850fa9a5e794a64a09'
sha256sums=('28ae8db14862801bc2bd4fd820db00667d3f1ff9ae9cc2d06a0ef7810fed7a4e'
'SKIP'
'f0423c4ee8495da487e07e9144bec1d25f46a0cd2dfa7cfd7a761ef15bfefc98'
'7c0acefcfcc3ae093550caed7ec90fe84bec8f7477459ffa7e71dda76bcbdb2c'

View File

@ -1,51 +0,0 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
mQINBGBjkiwBEADgJTEabt5zCareK9pJJswGU62smrq3uOaaDhtgztj3bxRY/UGT
jypxMee1S/fGWQZQy52lFOXLud5gFC5QU8Yk+7EAsh2ZJSKtWUw8/iMxZ4vsrKVV
QQRLTqMUY16R6/8UzdIT/hD6CbgWgiXF4NH5AGleNqjkF4TXrGof0AK0veekZYJV
WWStqJR/cIiG0nxDQ87RWfeZgrULZmA8uii22po7rGGzxT0byb83dKK+7IoJ/6B/
ZlI0PmzuJ9/Xp6Mmm//sdPEqRwedt2aGrvtdF79xYJ1tDhOVMpID0aPdURBwlliq
fyKGaIUEa1ke+Dy7sQF8i3zY7ce6PZOtbsts9xsJLvF98VhRsFy0vProPv1mVbiU
PoxxPTnyLeGUm27amIMl4NfX4a8Hdu+ExzKprqWo3Ir08HQzNt6QoFghDIpi9nm4
k327CJzJv/g2dq5kY/KU6wFHbdH3zP7u+p9DDqKJYFebPCvwM1hMxPdLqemTsfob
kJ4iXcAXjpMqwXX9m0lyQcRHdIdc99yyCUMdPNfapLgY7rOahsS16795/5KSrCuF
h2RcoAWUjh6sGjgGIY4Hy1qQwp3t6X/L6TOhDkBDWId5bTKFR9NqrVprOVsUutbs
0TOqLyH4GXCpE9vzg8DX7FTdRiCTpbyQ7VuSxRN/vAyVRP4chrABNfvh/QARAQAB
tDtUYWxvcyAoVGFsb3MsIENpc2NvIFN5c3RlbXMgSW5jLikgPHJlc2VhcmNoQHNv
dXJjZWZpcmUuY29tPokCPgQTAQIAKAUCYGOSLAIbAwUJA8JnAAYLCQgHAwIGFQgC
CQoLBBYCAwECHgECF4AACgkQYJsCTys+3QfbLg//eZ0yCLr957FtztVlLIHYLpJn
LIl8m+hu3KeUTIwvMoCLiw48cWqFZaJS9PTmrraSj5SKMDnAYFl4O0fhHfQiWDjb
sZ32hQni1PcqxoXqSnkXD7mXjcPH2WuNnQM5WZoAD2VmksqRT57I/K2omW/sjaVe
Nbq3GSOy8WThibswxzioDHtTPFa0/Ah2qq8OkcVJuTwCS1xkLijJc3jx/pOBHWFA
BA4VX5pwcSou/woJ+ySsgBGEo5hOsd0r7h3a0O8EiuGulHTqQt87rVWGv0JKhnub
FULr/ld8+d1zGvJL3OzFG6udjWjw3QqsLDZa94G1ksZWgqr/RgexlSYuxPW+lKUC
QkgotLaEKQC4cpBLRcJEjWyrf4IjoJvkFrUtPsVH9VStICUQATyXARNVWbnJHq3Y
qynCXSB4NZvdo9BF6Tx3FA+ZUjK4/X/UsjL/Hmv99huBctQsWL7gQCoSw9YOt4qs
/As6fgPaNpYb9woJqNMEQNmrhfnnX9PGaM5dM769/E5vF67mkhBNqVJ0+4gyrpTU
T7Pmavrc3T4aSSde8eG6zSlmW8wM5xELfK5TeTexBKGAaDV8c2BkfenRO8OvBSvr
Gz+Xp/YzO9uGUPnbMsTVtxClmzmEj/MVpvtRdEo+dbVOSy8nk3XCu7jMjpojggPv
YQ+4CZYxYpW1T2hSFxG5Ag0EYGOSLAEQAM5kdheiwStznKiaIWaO+0PBA8bAv2xG
7qW/Di85xdcH9miHZM9+lx/iZoOBC9wZC9eatV4Hcukff700a/LGZSYVDvHvdEWb
Tv6ZwvHzbxuc1Kv8cLYopRUfOAwMYOmXriMLxVmd3fcfPNsfPRqfkaZRdkm7qTbP
DeKpSL157HbUG64Eej3cOViq49Hy9L6jtfjtZVxX7OavjnEpyezG6qSIAkvD6O7J
Yg3yfkr4sa44qohq9lDfjWpoXMebu0WsIyW11hm+7KMrBMHjlNgXppu0+ryeKfQi
FjPDBd9aflnHy2e8aHef9S5349thNGzjV3TNMV6A6oAN2XQ7pgj5DTwMZtHFCjdE
HIyfGCAgQQL0/MaFzKwuw/l/m31smZgItAZXYY1xoC2gh7LTPZ/3t2VVVof4TNXD
c+pUNgY6bwPBksuhsX8qsldDr5q3jdHZsjlycpL38Z4EZNg3BqxJlVseB395ZOQ6
FCtHGh6rpsYQZDj1QWcUyev8NHSbSNRMS2/Nn5bT3KgEWEWrmOxp3iMmunBqmnt2
/xJ83PKRTbSKgcG+Y/+DtnleHpRueRUPC/5XX0DNznSjF10vAh4XtBKGBNaHU9Vv
nMXlYeJ9kCMdSs7cM4FfLFMtPkFwpDYhvQRAEwt11RV6bGo5ZCgGrHGIBlNk6ZSO
1hP15hUtkWU7ABEBAAGJAiUEGAECAA8FAmBjkiwCGwwFCQPCZwAACgkQYJsCTys+
3QfI7Q//Sb2yotfcsG5Q2FkHRBE85su01c6pewImV9bofNhATSQ37yVHUDrchm+k
Y6Pq5Tdgg+eAMcYz2yv9JhFxJyzgI0viQrkjD7oXeRTGZ0CvzxHhTakAOADXAnYt
wmJglEBTCCbUZ968kQkdBxEaUjVWPCMyIceRr8kUfiCjX51+DLESy8b5lOBhprO6
vDukk/rmDruIpJPhJ3f89gsp2Ry7gk7a5ENIuVEElLK6OPBZhC3dDZwsvm5CYb62
+U/b1xtmElpgGbNJCjxvAZiJ0WN2zfBXan+SJ4I9NFUw9jvSURvDV24s4YPhkbZu
OIqQEEYF8QMZ1VJlsr7BoWIXrdKDNJbmEVyx3UiYXKD1BVXCQADPu8G8EPuo4yAf
WymJAOJbAqNF2Op6+sC7/v8Xcgc3PGGyu23cZwikfCAgV+beywTPI5+eVV5F/rpx
XOlvNxT0NOg3UOeQ9GvCbD5ZcuDzmhqso0eMABeq5K5XB12xlWNaTZsIt8Dim4uK
aKMGeB+6iygkHITbay0sMUo0dX6nT27bjX5dTBo/vnVAPYuCS6rh8ojalR1fYFKA
1zdeSaJ2EW5KmgC9yedylSbHdQ+LjSY3t/Ut4RYaekIDeGmVoQkJkL7gIAs8NOYw
G3ayr0AtmeMagAMy94NH5ufVgFk+QPmXpzS7rMLQ3Is1ZOuWNrQ=
=gazS
-----END PGP PUBLIC KEY BLOCK-----

View File

@ -6,10 +6,9 @@
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=ell
pkgver=0.56
pkgver=0.57
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')
@ -34,13 +33,15 @@ package() {
make DESTDIR="$pkgdir/" install
}
#---- license gpg-key sha256sums ----
#---- arch license gpg-key & sha256sums ----
arch=(x86_64)
license=('LGPL2.1')
validpgpkeys=('E932D120BC2AEC444E558F0106CA9F5D1DCF2659') # "Marcel Holtmann <marcel@holtmann.org>"
sha256sums=(58eb8b2b64087f7479d5db6a830a0656c536d93e5f11d4c9a4443ce8760a1b63 # ell-0.56.tar.xz
ded5431acfc9f84b6cb05a0f8c3e2d57264af245d38c8527a572946ed344c7fa) # ell-0.56.tar.sign
sha256sums=(7603928ee584b758ca27c67e4dc513049a09b038d7d28459a9440f8443c91018 # ell-0.57.tar.xz
7bdaef3f9f658dbd75868ccc14fc0c60b7804ed0737234a2593d9d5404ad796e) # ell-0.57.tar.sign
## 2bf8f8b2f4729c4d1e8b22f0719f0365eeede56baa3a767dd31a628805d6fd6f ell-0.57-01-x86_64.pkg.tar.lz

View File

@ -2,7 +2,7 @@
# Contributor: Jameson Pugh <imntreal@gmail.com>
pkgname=ell
pkgver=0.56
pkgver=0.57
pkgrel=1
pkgdesc="Embedded Linux library"
arch=(x86_64)
@ -13,7 +13,7 @@ depends=('gcc-libs')
checkdepends=('dbus')
# 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=('58eb8b2b64087f7479d5db6a830a0656c536d93e5f11d4c9a4443ce8760a1b63'
sha256sums=('7603928ee584b758ca27c67e4dc513049a09b038d7d28459a9440f8443c91018'
'SKIP')
validpgpkeys=('E932D120BC2AEC444E558F0106CA9F5D1DCF2659') # "Marcel Holtmann <marcel@holtmann.org>"

View File

@ -1,2 +1,3 @@

36
hidapi/PKGBUILD Normal file
View File

@ -0,0 +1,36 @@
#!/usr/bin/bash
# JOBoRun : Jwm OpenBox Obarun RUNit
# Maintainer : Joe Bo Run <joborun@disroot.org>
# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname"
# Website : https://pozol.eu
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=hidapi
pkgver=0.14.0
pkgrel=01
pkgdesc='Simple library for communicating with USB and Bluetooth HID devices w/o systemd'
url='https://github.com/libusb/hidapi'
depends=('libusb')
makedepends=('cmake')
provides=('libhidapi-hidraw.so' 'libhidapi-libusb.so')
source=("https://github.com/libusb/${pkgname}/archive/${pkgname}-${pkgver}.tar.gz")
build() {
cmake -B build -S ${pkgname}-${pkgname}-${pkgver} -DCMAKE_INSTALL_PREFIX=/usr
cmake --build build
}
package() {
DESTDIR="${pkgdir}" cmake --install build
install -Dm0644 ${pkgname}-${pkgname}-${pkgver}/LICENSE*.txt -t "${pkgdir}/usr/share/licenses/${pkgname}/"
}
#---- arch license gpg-key & sha256sums ----
arch=(x86_64)
license=('GPL3' 'BSD' 'custom')
sha256sums=(a5714234abe6e1f53647dd8cba7d69f65f71c558b7896ed218864ffcf405bcbd) # hidapi-0.14.0.tar.gz
## 1732594cf6e8be8c57243c37f842e07653186a28cd2ad75b64b07b9001b2ad90 hidapi-0.14.0-01-x86_64.pkg.tar.lz

27
hidapi/PKGBUILD-arch Normal file
View File

@ -0,0 +1,27 @@
# Contributor: Sergej Pupykin <arch+pub@sergej.pp.ru>
# Contributor: Niels Martignène <niels.martignene@gmail.com>
# Contributor: Nicolas Avrutin <nicolasavru@gmail.com>
# Contributor: Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
pkgname=hidapi
pkgver=0.14.0
pkgrel=1
pkgdesc='Simple library for communicating with USB and Bluetooth HID devices'
arch=(x86_64)
url='https://github.com/libusb/hidapi'
license=('GPL3' 'BSD' 'custom')
depends=('libusb' 'systemd-libs')
makedepends=('cmake')
provides=('libhidapi-hidraw.so' 'libhidapi-libusb.so')
source=("https://github.com/libusb/${pkgname}/archive/${pkgname}-${pkgver}.tar.gz")
sha512sums=('66a045144f90b41438898b82f0398e80223323ebfe6e4f197d2713696bb3ae60f36aea5a37a9999b34b12294783fd7e4c28c6e785462559cbe21276009da1eac')
build() {
cmake -B build -S ${pkgname}-${pkgname}-${pkgver} -DCMAKE_INSTALL_PREFIX=/usr
cmake --build build
}
package() {
DESTDIR="${pkgdir}" cmake --install build
install -Dm0644 ${pkgname}-${pkgname}-${pkgver}/LICENSE*.txt -t "${pkgdir}/usr/share/licenses/${pkgname}/"
}

1
hidapi/clean Normal file
View File

@ -0,0 +1 @@
rm -rf {src,pkg,hidapi*tar.gz}

5
hidapi/deps Normal file
View File

@ -0,0 +1,5 @@
cmake
libusb

6
hidapi/time Normal file
View File

@ -0,0 +1,6 @@
real 0m2.778s
user 0m2.416s
sys 0m0.404s

View File

@ -6,7 +6,7 @@
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=lighttpd
pkgver=1.4.69
pkgver=1.4.70
pkgrel=01
pkgdesc='A secure, fast, compliant and very flexible web-server w/o systemd'
arch=('x86_64')
@ -74,12 +74,10 @@ validpgpkeys=('C7CA1E9E29DC77F5480894B2E0E7D0171E95BAD7'
'649D0DD767FF206202A76C5158F14A786FE198C8'
'EAAF41A8BE3BB8D001CACD136DE62CA242909B84')
sha256sums=(16ac8db95e719629ba61949b99f8a26feba946a81d185215b28379bb4116b0b4 # lighttpd-1.4.68.tar.xz
979ea8150d2fac7e4420a3a25d9d94b73465b45c3ad674cbbb2f9f5e06ffe0ed # lighttpd-1.4.69.tar.xz.asc
sha256sums=(921ebe1cf4b6b9897e03779ab7a23a31f4ba40a1abe2067525c33cd3ce61fe85 # lighttpd-1.4.70.tar.xz
74c064ee19694f280495eb8074c24a3f409a29fb33abce9443a47d162b168577 # lighttpd-1.4.70.tar.xz.asc
41f6c0042bb61021553779f861910e335834f6c15e4411756cdc6233b31076fe # lighttpd.logrotate.d
fece4581bebf39768571962dedce176b2b5f487c0abb5c1cfb35395de216c01f # lighttpd.conf
d8a185145a7c08b4fd8c8e6c12dae3e176389dd9b1c66e239757b2ba5108c871) # lighttpd.tmpfiles
## aaa6868aae8bd36485678cbd74a250f305ba9619bad5d7f84b1a52007190eeb1 lighttpd-1.4.69-01-x86_64.pkg.tar.lz
## 1c94b08be37012cdf6ed7bd45d2e3ad309c8bee6f27fbfd7d0e64d52cc8799a0 lighttpd-1.4.70-01-x86_64.pkg.tar.lz

View File

@ -1,7 +1,7 @@
# Maintainer: Pierre Schmitz <pierre@archlinux.de>
pkgname=lighttpd
pkgver=1.4.69
pkgver=1.4.70
pkgrel=1
pkgdesc='A secure, fast, compliant and very flexible web-server'
license=('custom')
@ -17,7 +17,7 @@ backup=('etc/lighttpd/lighttpd.conf' 'etc/logrotate.d/lighttpd')
options=('emptydirs')
source=("https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-${pkgver}.tar.xz"{,.asc}
'lighttpd.logrotate.d' 'lighttpd.conf' 'lighttpd.tmpfiles' 'lighttpd.service')
sha256sums=('16ac8db95e719629ba61949b99f8a26feba946a81d185215b28379bb4116b0b4'
sha256sums=('921ebe1cf4b6b9897e03779ab7a23a31f4ba40a1abe2067525c33cd3ce61fe85'
'SKIP'
'41f6c0042bb61021553779f861910e335834f6c15e4411756cdc6233b31076fe'
'fece4581bebf39768571962dedce176b2b5f487c0abb5c1cfb35395de216c01f'

View File

@ -1,4 +1,4 @@
#!/usr/bin/bash
#!/usr/bin/bash
# JOBoRun : Jwm OpenBox Obarun RUNit
# Maintainer : Joe Bo Run <joborun@disroot.org>
# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname"
@ -6,69 +6,102 @@
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgbase=mesa
pkgname=('vulkan-mesa-layers' 'opencl-mesa' 'vulkan-intel' 'vulkan-radeon' 'vulkan-swrast'
'vulkan-virtio' 'libva-mesa-driver' 'mesa-vdpau' 'mesa')
pkgdesc="An open-source implementation of the OpenGL specification w/o systemd or zstd"
pkgver=23.0.3
pkgname=('vulkan-mesa-layers' 'opencl-mesa' 'vulkan-intel' 'vulkan-radeon' 'vulkan-swrast' 'vulkan-virtio' 'libva-mesa-driver' 'mesa-vdpau' 'mesa')
pkgver=23.1.1
pkgrel=01
#options=('debug' '!lto') # uncomment this if you want the debug package built # Arch removed debug for 22.3.3-3 version
options=('!lto')
makedepends=('python-mako' 'libxml2' 'libx11' 'xorgproto' 'libdrm' 'libxshmfence' 'libxxf86vm'
'libxdamage' 'libvdpau' 'libva' 'wayland' 'wayland-protocols' 'elfutils' 'llvm'
'libomxil-bellagio' 'libclc' 'clang' 'libglvnd' 'libunwind' 'lm_sensors' 'libxrandr'
'valgrind' 'glslang' 'vulkan-icd-loader' 'directx-headers' 'cmake' 'meson')
makedepends+=('rust' 'rust-bindgen' 'spirv-tools') # rusticl dependencies
makedepends+=('python-ply' 'spirv-llvm-translator') # intel-clc dependencies
pkgdesc="An open-source implementation of the OpenGL specification w/o systemd or zstd"
#makedepends=('python-mako' 'libxml2' 'libx11' 'xorgproto' 'libdrm' 'libxshmfence' 'libxxf86vm'
# 'libxdamage' 'libvdpau' 'libva' 'wayland' 'wayland-protocols' 'elfutils' 'llvm'
# 'libomxil-bellagio' 'libclc' 'clang' 'libglvnd' 'libunwind' 'lm_sensors' 'libxrandr'
# 'valgrind' 'glslang' 'vulkan-icd-loader' 'directx-headers' 'cmake' 'meson')
#makedepends+=('python-ply' 'spirv-llvm-translator') # intel-clc dependencies
url="https://www.mesa3d.org/"
#options=('debug' '!lto') # uncomment this if you want the debug package built # Arch removed debug for 22.3.3-3 version
#options=('!lto')
makedepends=(
'clang'
'expat'
'libdrm'
'libelf'
'libglvnd'
'libunwind'
'libva'
'libvdpau'
'libx11'
'libxdamage'
'libxml2'
'libxrandr'
'libxshmfence'
'libxxf86vm'
'llvm'
'lm_sensors'
'vulkan-icd-loader'
'wayland'
# shared with lib32-mesa
'clang'
'cmake'
'elfutils'
'glslang'
'libclc'
'meson'
'python-mako'
'wayland-protocols'
'xorgproto'
# valgrind deps
'valgrind'
# d3d12 deps
'directx-headers'
# gallium-omx deps
'libomxil-bellagio'
# gallium-rusticl deps
'rust'
'rust-bindgen'
'spirv-tools'
# intel-clc deps
'python-ply'
'spirv-llvm-translator'
) # rusticl dependencies
_libdir=usr/lib
source=(https://mesa.freedesktop.org/archive/mesa-${pkgver}.tar.xz{,.sig}
0001-intel-fs-fix-scheduling-of-HALT-instructions.patch
0002-egl-wayland-Fix-destruction-of-event-queue-with-prox.patch
0003-vulkan-wsi-wayland-Fix-destruction-of-event-queue-wi.patch
0004-rusticl-Fix-bindgen-invocation.patch
# 0001-intel-fs-fix-scheduling-of-HALT-instructions.patch
# 0002-egl-wayland-Fix-destruction-of-event-queue-with-prox.patch
# 0003-vulkan-wsi-wayland-Fix-destruction-of-event-queue-wi.patch
# 0004-rusticl-Fix-bindgen-invocation.patch
LICENSE)
prepare() {
cd mesa-$pkgver
# https://gitlab.freedesktop.org/mesa/mesa/-/issues/7110
# https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20765
patch -Np1 -i ../0001-intel-fs-fix-scheduling-of-HALT-instructions.patch
# https://bugs.archlinux.org/task/78137
# https://bugzilla.mozilla.org/show_bug.cgi?id=1826583
# https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21646
patch -Np1 -i ../0002-egl-wayland-Fix-destruction-of-event-queue-with-prox.patch
# https://bugs.archlinux.org/task/78142
# https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21647
patch -Np1 -i ../0003-vulkan-wsi-wayland-Fix-destruction-of-event-queue-wi.patch
# Fix build failure with rust-bindgen 0.65.1
patch -Np1 -i ../0004-rusticl-Fix-bindgen-invocation.patch
}
build() {
# Build only minimal debug info to reduce size
CFLAGS+=' -g1'
CXXFLAGS+=' -g1'
arch-meson mesa-$pkgver build \
--libdir=/$_libdir \
-D android-libbacktrace=disabled \
-D b_ndebug=true \
-D platforms=x11,wayland \
-D gallium-drivers=r300,r600,radeonsi,nouveau,virgl,svga,swrast,i915,iris,crocus,zink,d3d12 \
-D vulkan-drivers=amd,intel,intel_hasvk,swrast,virtio-experimental \
-D vulkan-layers=device-select,intel-nullhw,overlay \
-D dri3=enabled \
-D egl=enabled \
-D gallium-drivers=r300,r600,radeonsi,nouveau,virgl,svga,swrast,i915,iris,crocus,zink,d3d12 \
-D gallium-extra-hud=true \
-D gallium-nine=true \
-D gallium-omx=bellagio \
-D gallium-opencl=icd \
-D gallium-rusticl=true \
-D gallium-va=enabled \
-D gallium-vdpau=enabled \
-D gallium-xa=enabled \
-D gallium-rusticl=true \
-D rust_std=2021 \
-D gbm=enabled \
-D gles1=disabled \
-D gles2=enabled \
@ -78,17 +111,21 @@ build() {
-D libunwind=enabled \
-D llvm=enabled \
-D lmsensors=enabled \
-D osmesa=true \
-D zstd=disabled \
-D shared-glapi=enabled \
-D microsoft-clc=disabled \
-D osmesa=true \
-D platforms=x11,wayland \
-D zstd=disabled \
-D rust_std=2021 \
-D shared-glapi=enabled \
-D valgrind=enabled \
-D video-codecs=vc1dec,h264dec,h264enc,h265dec,h265enc \
-D valgrind=enabled
-D vulkan-drivers=amd,intel,intel_hasvk,swrast,virtio-experimental \
-D vulkan-layers=device-select,intel-nullhw,overlay
# Print config
meson configure build
ninja -C build
# ninja -C build
meson compile -C build
# fake installation to be seperated into packages
@ -114,7 +151,7 @@ package_vulkan-mesa-layers() {
_install fakeinstall/usr/share/vulkan/explicit_layer.d
_install fakeinstall/usr/share/vulkan/implicit_layer.d
_install fakeinstall/usr/lib/libVkLayer_*.so
_install fakeinstall/$_libdir/libVkLayer_*.so
_install fakeinstall/usr/bin/mesa-overlay-control.py
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE
@ -127,8 +164,8 @@ package_opencl-mesa() {
provides=('opencl-driver')
_install fakeinstall/etc/OpenCL
_install fakeinstall/usr/lib/lib*OpenCL*
_install fakeinstall/usr/lib/gallium-pipe
_install fakeinstall/$_libdir/lib*OpenCL*
_install fakeinstall/$_libdir/gallium-pipe
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE
}
@ -140,7 +177,7 @@ package_vulkan-intel() {
provides=('vulkan-driver')
_install fakeinstall/usr/share/vulkan/icd.d/intel_*.json
_install fakeinstall/usr/lib/libvulkan_intel*.so
_install fakeinstall/$_libdir/libvulkan_intel*.so
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE
}
@ -153,7 +190,7 @@ package_vulkan-radeon() {
_install fakeinstall/usr/share/drirc.d/00-radv-defaults.conf
_install fakeinstall/usr/share/vulkan/icd.d/radeon_icd*.json
_install fakeinstall/usr/lib/libvulkan_radeon.so
_install fakeinstall/$_libdir/libvulkan_radeon.so
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE
}
@ -167,7 +204,7 @@ package_vulkan-swrast() {
provides=('vulkan-driver')
_install fakeinstall/usr/share/vulkan/icd.d/lvp_icd*.json
_install fakeinstall/usr/lib/libvulkan_lvp.so
_install fakeinstall/$_libdir/libvulkan_lvp.so
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE
}
@ -179,7 +216,7 @@ package_vulkan-virtio() {
provides=('vulkan-driver')
_install fakeinstall/usr/share/vulkan/icd.d/virtio_icd*.json
_install fakeinstall/usr/lib/libvulkan_virtio.so
_install fakeinstall/$_libdir/libvulkan_virtio.so
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE
}
@ -190,7 +227,7 @@ package_libva-mesa-driver() {
depends+=('libexpat.so')
provides=('libva-driver')
_install fakeinstall/usr/lib/dri/*_drv_video.so
_install fakeinstall/$_libdir/dri/*_drv_video.so
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE
}
@ -201,7 +238,7 @@ package_mesa-vdpau() {
depends+=('libexpat.so')
provides=('vdpau-driver')
_install fakeinstall/usr/lib/vdpau
_install fakeinstall/$_libdir/vdpau
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE
}
@ -222,23 +259,23 @@ package_mesa() {
_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/$_libdir/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/$_libdir/bellagio
_install fakeinstall/$_libdir/d3d
_install fakeinstall/$_libdir/lib{gbm,glapi}.so*
_install fakeinstall/$_libdir/libOSMesa.so*
_install fakeinstall/$_libdir/libxatracker.so*
_install fakeinstall/usr/include
_install fakeinstall/usr/lib/pkgconfig
_install fakeinstall/$_libdir/pkgconfig
# libglvnd support
_install fakeinstall/usr/lib/libGLX_mesa.so*
_install fakeinstall/usr/lib/libEGL_mesa.so*
_install fakeinstall/$_libdir/libGLX_mesa.so*
_install fakeinstall/$_libdir/libEGL_mesa.so*
# indirect rendering
ln -s /usr/lib/libGLX_mesa.so.0 "${pkgdir}/usr/lib/libGLX_indirect.so.0"
ln -sr "$pkgdir"/$_libdir/libGLX_{mesa,indirect}.so.0
# make sure there are no files left to install
find fakeinstall -depth -print0 | xargs -0 rmdir
@ -259,20 +296,18 @@ validpgpkeys=('8703B6700E7EE06D7A39B8D6EDAE37B02CEB490D' # Emil Velikov <emil.l
'71C4B75620BC75708B4BDB254C95FAAB3EB073EC' # Dylan Baker <dylan@pnwbakers.com>
'57551DE15B968F6341C248F68D8E31AFC32428A6') # Eric Engestrom <eric@engestrom.ch>
sha256sums=(386362a5d80df3b096636b67f340e1ce67b705b44767d5bdd11d2ed1037192d5 # mesa-23.0.3.tar.xz
a6133c0bd8e67342f76020604c930c3d55c695283cb3a4fcfe4241ad4a3935ad # mesa-23.0.3.tar.xz.sig
dc6790b5be0e80c23e74ae18ca1a2b40f57f4211cc7b645bf22b63af3b790e40 # 0001-intel-fs-fix-scheduling-of-HALT-instructions.patch
c25493de3e5930702acf833d182aeca0895d6a9d9e830dca15c42d130e25c41c # 0002-egl-wayland-Fix-destruction-of-event-queue-with-prox.patch
db2be7ae0540d65e77449eda1af66200e27af382183fdcd0c87f99db3520b80a # 0003-vulkan-wsi-wayland-Fix-destruction-of-event-queue-wi.patch
b3aaccd6ce5c6d417801baafa056d4dfb2a13bf9b480fb980e9af6d0d071cedb # 0004-rusticl-Fix-bindgen-invocation.patch
sha256sums=(a2679031ed5b73b29c4f042ac64d96f83b0cfe4858617de32e2efc196c653a40 # mesa-23.1.1.tar.xz
2986ab688cc5058e552e08b7a00e795b8e3764322b53ccf3eb8545303cbda0cb # mesa-23.1.1.tar.xz.sig
7052ba73bb07ea78873a2431ee4e828f4e72bda7d176d07f770fa48373dec537) # LICENSE
## fe5ad899965b306e88d8379dd5e818d59b0cf807ee1d0a2ee6876fa82a0f6d61 libva-mesa-driver-23.0.3-01-x86_64.pkg.tar.lz
## 9e2c4c1ffd007023870d42441d4dec98c8480ffbe64ae85e5c1dfc6c73ba9d02 mesa-23.0.3-01-x86_64.pkg.tar.lz
## ff2f518ec19e206c7c1454a506c433bf06f2c1a3e02d3bb1488efed7fdf3d1fc mesa-vdpau-23.0.3-01-x86_64.pkg.tar.lz
## e30078ee4fb43987b8dfbe8d0dd77a514646d1005e1a3d873d568b0453ffb7cf opencl-mesa-23.0.3-01-x86_64.pkg.tar.lz
## aa61cc786a7c87347e8df8b86c0a8e869abea25de2c869f5dd956fa615159a60 vulkan-intel-23.0.3-01-x86_64.pkg.tar.lz
## 34674608e78524e38906c289b60ec9a84c07ca20c4c59733e78d5810fc57c0eb vulkan-mesa-layers-23.0.3-01-x86_64.pkg.tar.lz
## 38f3e9c8c8544502b454f59dfd819896ac3ecb6e79b59a1d81e93e1d3fb8b620 vulkan-radeon-23.0.3-01-x86_64.pkg.tar.lz
## 9d4d8f514a1ef5996883f7824d20e95375e68e68ab782ebb221a2a23157a6177 vulkan-swrast-23.0.3-01-x86_64.pkg.tar.lz
## 079281bf6891cd13cdf6ff829098b118ceb8341a57462c487b6e6def3c424293 vulkan-virtio-23.0.3-01-x86_64.pkg.tar.lz
## 101fdfb140a0e77ba46f559868700df4ce9ad853074412eccf324b92cfc29d6b libva-mesa-driver-23.1.1-01-x86_64.pkg.tar.lz
## 9a17082cfca02223a09746cd75d5cdde6a16e057699ebec91e8078984e4612bf mesa-23.1.1-01-x86_64.pkg.tar.lz
## a2679031ed5b73b29c4f042ac64d96f83b0cfe4858617de32e2efc196c653a40 mesa-23.1.1.tar.xz
## 2986ab688cc5058e552e08b7a00e795b8e3764322b53ccf3eb8545303cbda0cb mesa-23.1.1.tar.xz.sig
## 6f8f9fcc1e7f39d82b62780191d2f544cbe833d6ab5f268a1a5bc4b0288214e6 mesa-vdpau-23.1.1-01-x86_64.pkg.tar.lz
## 2afd2a6621ee73220d93edb0febae9432371e91d26c489aa6e85b94a07a1faa8 opencl-mesa-23.1.1-01-x86_64.pkg.tar.lz
## d731081f3166c9d40c0f21c525bea732323609838129f9cb2e7f23feb8d738b1 vulkan-intel-23.1.1-01-x86_64.pkg.tar.lz
## 27bdcaa32fdeb59d22030d486f9831eaf392d36908b183d9b599f307812504fd vulkan-mesa-layers-23.1.1-01-x86_64.pkg.tar.lz
## 15050a5e334dedcde1985e7aca1e72ac0ee16bd21afaf7527a5110f6626d5dc8 vulkan-radeon-23.1.1-01-x86_64.pkg.tar.lz
## a3992a49fc358c1be0c62b48a2d5f2c31d7f170a7e7793dc4d2e7ad59aedd693 vulkan-swrast-23.1.1-01-x86_64.pkg.tar.lz
## 0db2311ad8942e85a13018b18e0d3ca6159afdbc8c75bc765f8bae6dccb1ff51 vulkan-virtio-23.1.1-01-x86_64.pkg.tar.lz

View File

@ -4,38 +4,83 @@
# Contributor: Andreas Radke <andyrtr@archlinux.org>
pkgbase=mesa
pkgname=('vulkan-mesa-layers' 'opencl-mesa' 'vulkan-intel' 'vulkan-radeon' 'vulkan-swrast' 'vulkan-virtio' 'libva-mesa-driver' 'mesa-vdpau' 'mesa')
pkgdesc="An open-source implementation of the OpenGL specification"
pkgver=23.0.3
pkgname=(
'vulkan-mesa-layers'
'opencl-mesa'
'vulkan-intel'
'vulkan-radeon'
'vulkan-swrast'
'vulkan-virtio'
'libva-mesa-driver'
'mesa-vdpau'
'mesa'
)
pkgver=23.1.1
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'
'systemd' 'valgrind' 'glslang' 'vulkan-icd-loader' 'directx-headers' 'cmake' 'meson')
makedepends+=('python-ply' 'spirv-llvm-translator') # intel-clc dependencies
makedepends+=('rust' 'rust-bindgen' 'spirv-tools') # rusticl dependencies
pkgdesc="An open-source implementation of the OpenGL specification"
url="https://www.mesa3d.org/"
arch=('x86_64')
license=('custom')
source=(https://mesa.freedesktop.org/archive/mesa-${pkgver}.tar.xz{,.sig}
0001-intel-fs-fix-scheduling-of-HALT-instructions.patch
0002-egl-wayland-Fix-destruction-of-event-queue-with-prox.patch
0003-vulkan-wsi-wayland-Fix-destruction-of-event-queue-wi.patch
0004-rusticl-Fix-bindgen-invocation.patch
LICENSE)
sha256sums=('386362a5d80df3b096636b67f340e1ce67b705b44767d5bdd11d2ed1037192d5'
makedepends=(
'clang'
'expat'
'libdrm'
'libelf'
'libglvnd'
'libunwind'
'libva'
'libvdpau'
'libx11'
'libxdamage'
'libxml2'
'libxrandr'
'libxshmfence'
'libxxf86vm'
'llvm'
'lm_sensors'
'systemd'
'vulkan-icd-loader'
'wayland'
'zstd'
# shared with lib32-mesa
'clang'
'cmake'
'elfutils'
'glslang'
'libclc'
'meson'
'python-mako'
'wayland-protocols'
'xorgproto'
# valgrind deps
'valgrind'
# d3d12 deps
'directx-headers'
# gallium-omx deps
'libomxil-bellagio'
# gallium-rusticl deps
'rust'
'rust-bindgen'
'spirv-tools'
# intel-clc deps
'python-ply'
'spirv-llvm-translator'
)
source=(
https://mesa.freedesktop.org/archive/mesa-${pkgver}.tar.xz{,.sig}
LICENSE
)
sha256sums=('a2679031ed5b73b29c4f042ac64d96f83b0cfe4858617de32e2efc196c653a40'
'SKIP'
'dc6790b5be0e80c23e74ae18ca1a2b40f57f4211cc7b645bf22b63af3b790e40'
'c25493de3e5930702acf833d182aeca0895d6a9d9e830dca15c42d130e25c41c'
'db2be7ae0540d65e77449eda1af66200e27af382183fdcd0c87f99db3520b80a'
'b3aaccd6ce5c6d417801baafa056d4dfb2a13bf9b480fb980e9af6d0d071cedb'
'7052ba73bb07ea78873a2431ee4e828f4e72bda7d176d07f770fa48373dec537')
b2sums=('e716d9ddce3da649239c1bc37ec208b9669f316f6b547ca0c69937043f371f0d59ead34fec427297171916045061ddb8783d126f6dec5ece90a0719003fe2c40'
b2sums=('b17a71205248f2e97c60aa944d8b5b19d51592ba9288d2f04a8498eabaa19308f7ec7a813b948d3fad1001ae14da8771e403c68f7a4159c7f3b8830b919d64dc'
'SKIP'
'37d1d070c45c85bce8abe3524a3f8d9ac9ed6326a3eec653cd89fffce3630b08eb9b96b11aeb495488230449c99f9b508f73a15e53265d2b159286b0e2dda7cc'
'ae891637318fdbb8dd58285098af7bea709fb032969a5671eb225a4a471bf9422fac2a6cb0fd188aad96ea5a03eb043f646f5d371dd655a100046adb1c91bd7d'
'a7312e0931904e659b3d33fcb37b13bcadab943c6040dd2b58ea191db350b50c1ba588e334b7e59b513bd6155797e29dc1bd1a6a35a278b3824d06534f2c9d17'
'58c374ae45f84996a7bf248d0f2dd97fb003f30b2ecda5654561679b90c53830efdff10f990295390cdf8d9d676deeb756b3037c070966a6441670bf8dcb2223'
'1ecf007b82260710a7bf5048f47dd5d600c168824c02c595af654632326536a6527fbe0738670ee7b921dd85a70425108e0f471ba85a8e1ca47d294ad74b4adb')
validpgpkeys=('8703B6700E7EE06D7A39B8D6EDAE37B02CEB490D' # Emil Velikov <emil.l.velikov@gmail.com>
'946D09B5E4C9845E63075FF1D961C596A7203456' # Andres Gomez <tanty@igalia.com>
@ -46,65 +91,52 @@ validpgpkeys=('8703B6700E7EE06D7A39B8D6EDAE37B02CEB490D' # Emil Velikov <emil.l
prepare() {
cd mesa-$pkgver
# https://gitlab.freedesktop.org/mesa/mesa/-/issues/7110
# https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20765
patch -Np1 -i ../0001-intel-fs-fix-scheduling-of-HALT-instructions.patch
# https://bugs.archlinux.org/task/78137
# https://bugzilla.mozilla.org/show_bug.cgi?id=1826583
# https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21646
patch -Np1 -i ../0002-egl-wayland-Fix-destruction-of-event-queue-with-prox.patch
# https://bugs.archlinux.org/task/78142
# https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21647
patch -Np1 -i ../0003-vulkan-wsi-wayland-Fix-destruction-of-event-queue-wi.patch
# Fix build failure with rust-bindgen 0.65.1
patch -Np1 -i ../0004-rusticl-Fix-bindgen-invocation.patch
}
_libdir=usr/lib
build() {
local meson_options=(
--libdir=/$_libdir
-D android-libbacktrace=disabled
-D b_ndebug=true
-D dri3=enabled
-D egl=enabled
-D gallium-drivers=r300,r600,radeonsi,nouveau,virgl,svga,swrast,i915,iris,crocus,zink,d3d12
-D gallium-extra-hud=true
-D gallium-nine=true
-D gallium-omx=bellagio
-D gallium-opencl=icd
-D gallium-rusticl=true
-D gallium-va=enabled
-D gallium-vdpau=enabled
-D gallium-xa=enabled
-D gbm=enabled
-D gles1=disabled
-D gles2=enabled
-D glvnd=true
-D glx=dri
-D intel-clc=enabled
-D libunwind=enabled
-D llvm=enabled
-D lmsensors=enabled
-D microsoft-clc=disabled
-D osmesa=true
-D platforms=x11,wayland
-D rust_std=2021
-D shared-glapi=enabled
-D valgrind=enabled
-D video-codecs=vc1dec,h264dec,h264enc,h265dec,h265enc
-D vulkan-drivers=amd,intel,intel_hasvk,swrast,virtio-experimental
-D vulkan-layers=device-select,intel-nullhw,overlay
)
# Build only minimal debug info to reduce size
CFLAGS+=' -g1'
CXXFLAGS+=' -g1'
arch-meson mesa-$pkgver build \
-D b_ndebug=true \
-D platforms=x11,wayland \
-D gallium-drivers=r300,r600,radeonsi,nouveau,virgl,svga,swrast,i915,iris,crocus,zink,d3d12 \
-D vulkan-drivers=amd,intel,intel_hasvk,swrast,virtio-experimental \
-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-rusticl=true \
-D rust_std=2021 \
-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 intel-clc=enabled \
-D microsoft-clc=disabled \
-D video-codecs=vc1dec,h264dec,h264enc,h265dec,h265enc \
-D valgrind=enabled
# Print config
meson configure build
ninja -C build
arch-meson mesa-$pkgver build "${meson_options[@]}"
meson configure build # Print config
meson compile -C build
# fake installation to be seperated into packages
@ -124,13 +156,19 @@ _install() {
package_vulkan-mesa-layers() {
pkgdesc="Mesa's Vulkan layers"
depends=('libdrm' 'libxcb' 'wayland' 'python')
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/$_libdir/libVkLayer_*.so
_install fakeinstall/usr/bin/mesa-overlay-control.py
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE
@ -138,99 +176,171 @@ package_vulkan-mesa-layers() {
package_opencl-mesa() {
pkgdesc="OpenCL support with clover and rusticl for mesa drivers"
depends=('libdrm' 'libclc' 'clang' 'expat' 'spirv-llvm-translator')
depends=(
'clang'
'expat'
'libdrm'
'libelf'
'zstd'
'libclc'
'spirv-llvm-translator'
)
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 fakeinstall/$_libdir/lib*OpenCL*
_install fakeinstall/$_libdir/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' 'systemd-libs')
depends=(
'libdrm'
'libx11'
'libxshmfence'
'systemd'
'wayland'
'zstd'
)
optdepends=('vulkan-mesa-layers: additional vulkan layers')
provides=('vulkan-driver')
_install fakeinstall/usr/share/vulkan/icd.d/intel_*.json
_install fakeinstall/usr/lib/libvulkan_intel*.so
_install fakeinstall/$_libdir/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' 'systemd-libs')
depends=(
'libdrm'
'libelf'
'libx11'
'libxshmfence'
'llvm-libs'
'systemd'
'wayland'
'zstd'
)
optdepends=('vulkan-mesa-layers: additional vulkan layers')
provides=('vulkan-driver')
_install fakeinstall/usr/share/drirc.d/00-radv-defaults.conf
_install fakeinstall/usr/share/vulkan/icd.d/radeon_icd*.json
_install fakeinstall/usr/lib/libvulkan_radeon.so
_install fakeinstall/$_libdir/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' 'systemd-libs' 'libunwind')
depends=(
'libdrm'
'libunwind'
'libx11'
'libxshmfence'
'llvm-libs'
'systemd'
'wayland'
'zstd'
)
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 fakeinstall/$_libdir/libvulkan_lvp.so
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE
}
package_vulkan-virtio() {
pkgdesc="Venus Vulkan mesa driver for Virtual Machines"
depends=('wayland' 'libx11' 'libxshmfence' 'libdrm' 'zstd' 'systemd-libs')
depends=(
'libdrm'
'libx11'
'libxshmfence'
'systemd'
'wayland'
'zstd'
)
optdepends=('vulkan-mesa-layers: additional vulkan layers')
provides=('vulkan-driver')
_install fakeinstall/usr/share/vulkan/icd.d/virtio_icd*.json
_install fakeinstall/usr/lib/libvulkan_virtio.so
_install fakeinstall/$_libdir/libvulkan_virtio.so
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE
}
package_libva-mesa-driver() {
pkgdesc="VA-API drivers"
depends=('libdrm' 'libx11' 'llvm-libs' 'expat' 'libelf' 'libxshmfence')
depends+=('libexpat.so')
depends=(
'expat'
'libdrm'
'libelf'
'libx11'
'libxshmfence'
'llvm-libs'
'zstd'
)
provides=('libva-driver')
_install fakeinstall/usr/lib/dri/*_drv_video.so
_install fakeinstall/$_libdir/dri/*_drv_video.so
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" LICENSE
}
package_mesa-vdpau() {
pkgdesc="VDPAU drivers"
depends=('libdrm' 'libx11' 'llvm-libs' 'expat' 'libelf' 'libxshmfence')
depends+=('libexpat.so')
depends=(
'expat'
'libdrm'
'libelf'
'libx11'
'libxshmfence'
'llvm-libs'
'zstd'
)
provides=('vdpau-driver')
_install fakeinstall/usr/lib/vdpau
_install fakeinstall/$_libdir/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')
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')
depends=(
'libdrm'
'libelf'
'libglvnd'
'libunwind'
'libxdamage'
'libxshmfence'
'libxxf86vm'
'llvm-libs'
'lm_sensors'
'vulkan-icd-loader'
'wayland'
'zstd'
'libomxil-bellagio'
)
optdepends=(
'libva-mesa-driver: for accelerated video playback'
'mesa-vdpau: for accelerated video playback'
'opengl-man-pages: for the OpenGL API man pages'
)
provides=(
'mesa-libgl'
'opengl-driver'
)
conflicts=('mesa-libgl')
replaces=('mesa-libgl')
@ -238,23 +348,23 @@ package_mesa() {
_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/$_libdir/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/$_libdir/bellagio
_install fakeinstall/$_libdir/d3d
_install fakeinstall/$_libdir/lib{gbm,glapi}.so*
_install fakeinstall/$_libdir/libOSMesa.so*
_install fakeinstall/$_libdir/libxatracker.so*
_install fakeinstall/usr/include
_install fakeinstall/usr/lib/pkgconfig
_install fakeinstall/$_libdir/pkgconfig
# libglvnd support
_install fakeinstall/usr/lib/libGLX_mesa.so*
_install fakeinstall/usr/lib/libEGL_mesa.so*
_install fakeinstall/$_libdir/libGLX_mesa.so*
_install fakeinstall/$_libdir/libEGL_mesa.so*
# indirect rendering
ln -s /usr/lib/libGLX_mesa.so.0 "${pkgdir}/usr/lib/libGLX_indirect.so.0"
ln -sr "$pkgdir"/$_libdir/libGLX_{mesa,indirect}.so.0
# make sure there are no files left to install
find fakeinstall -depth -print0 | xargs -0 rmdir

View File

@ -34,4 +34,3 @@ spirv-llvm-translator
python-ply

View File

@ -6,11 +6,11 @@
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=nginx
pkgver=1.22.1
pkgrel=02
pkgver=1.24.0
pkgrel=01
# update tests revision too
pkgdesc="Lightweight HTTP server and IMAP/POP3 proxy server w/o systemd or ipv6"
provides=("nginx=${pkgver}")
arch=(x86_64)
#url='https://github.com/cuber/ngx_http_google_filter_module'
url="http://nginx.org"
depends=(pcre2 zlib openssl geoip mailcap libxcrypt)
@ -29,8 +29,8 @@ backup=(etc/nginx/fastcgi.conf
etc/logrotate.d/nginx)
install=nginx.install
source=($url/download/${pkgname}-${pkgver}.tar.gz{,.asc}
hg+https://hg.nginx.org/nginx-tests#revision=34fc85598287
logrotate)
hg+https://hg.nginx.org/nginx-tests#revision=a797d7428fa5
logrotate)
_common_flags=(
--with-compat
@ -98,10 +98,11 @@ build() {
}
check() {
cd nginx-tests
TEST_NGINX_BINARY="$srcdir/$pkgbase-$pkgver/objs/nginx" prove .
}
# last test failed in 1.24.0-01 rerun without tests
#check() {
# cd nginx-tests
# TEST_NGINX_BINARY="$srcdir/$pkgbase-$pkgver/objs/nginx" prove .
#}
package() {
cd $pkgname-$pkgver
@ -140,16 +141,21 @@ package() {
done
}
#---- license gpg-key sha256sums ----
#---- arch license gpg-key & sha256sums ----
arch=(x86_64)
license=(custom)
# https://nginx.org/en/pgp_keys.html
validpgpkeys=(B0F4253373F8F6F510D42178520A9993A1C052F8 # Maxim Dounin <mdounin@mdounin.ru>
13C82A63B603576156E30A4EA0EA981B66B0D967) # Konstantin Pavlov <thresh@nginx.com>
sha256sums=(9ebb333a9e82b952acd3e2b4aeb1d4ff6406f72491bab6cd9fe69f0dea737f31 # nginx-1.22.1.tar.gz
e3c34c995f8d2748a323cf3ad5d7fbc6ddcc57f0f4b5fc6e494894cadf6075fc # nginx-1.22.1.tar.gz.asc
sha256sums=(77a2541637b92a621e3ee76776c8b7b40cf6d707e69ba53a940283e30ff2f55d # nginx-1.24.0.tar.gz
91ed170a5e8745fcd32eb60aefa6d60dfd572ac3e4c9bdbfc4bedd78c24f213c # nginx-1.24.0.tar.gz.asc
SKIP # nginx tests (directory)
06ebe161af3e761f2e2e35a67c6c0af27bf61aea7cd4ba8b28372ced5e3b3175) # logrotate
## f6555e791ce6a4dc1732e16e74e1a6c0ec5ffe4dabb722de0c6c0a3b7ef196bd nginx-1.24.0-01-x86_64.pkg.tar.lz

View File

@ -1,4 +1,7 @@
# Maintainer: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org>
# Maintainer: T.J. Townsend <blakkheim@archlinux.org>
# Maintainer: Massimiliano Torromeo <massimiliano.torromeo@gmail.com>
# Contributor: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor: Sébastien Luttringer
# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Miroslaw Szot <mss@czlug.icis.pcz.pl>
@ -6,8 +9,9 @@
pkgbase=nginx
pkgname=(nginx nginx-src)
pkgver=1.22.1
pkgrel=2
# update tests revision too
pkgver=1.24.0
pkgrel=1
pkgdesc='Lightweight HTTP server and IMAP/POP3 proxy server'
arch=(x86_64)
url='https://nginx.org'
@ -27,12 +31,13 @@ backup=(etc/nginx/fastcgi.conf
etc/logrotate.d/nginx)
install=nginx.install
source=($url/download/nginx-$pkgver.tar.gz{,.asc}
hg+https://hg.nginx.org/nginx-tests#revision=34fc85598287
hg+https://hg.nginx.org/nginx-tests#revision=a797d7428fa5
service
logrotate)
# https://nginx.org/en/pgp_keys.html
validpgpkeys=('B0F4253373F8F6F510D42178520A9993A1C052F8' # Maxim Dounin <mdounin@mdounin.ru>
'13C82A63B603576156E30A4EA0EA981B66B0D967') # Konstantin Pavlov <thresh@nginx.com>
sha512sums=('1d468dcfa9bbd348b8a5dc514ac1428a789e73a92384c039b73a51ce376785f74bf942872c5594a9fcda6bbf44758bd727ce15ac2395f1aa989c507014647dcc'
sha512sums=('1114e37de5664a8109c99cfb2faa1f42ff8ac63c932bcf3780d645e5ed32c0b2ac446f80305b4465994c8f9430604968e176ae464fd80f632d1cb2c8f6007ff3'
'SKIP'
'SKIP'
'be2858613d9cca85d80e7b894e9d5fa7892cbddd7a677d2d2f68f419d75fdc1f6802de8014f43ce063b116afd4ff17369873a6adea2dd58ac6f94e617de66fec'

View File

@ -6,8 +6,8 @@
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=python-setuptools
pkgver=67.7.2
_commit=a592795b81a51d73e64b0447f5e65032787be6f2
pkgver=67.8.0
_commit=1aed0ff9ba8091f127cd3638bd26661fa0ff8371
pkgrel=01
epoch=1
pkgdesc="Easily download, build, install, upgrade, and uninstall Python packages"
@ -79,7 +79,7 @@ build() {
# a few tests may fail when building outside a container, comment this check section out,
# and rerun without using the -f option on makepkg ... Hopefully the tests failures will
# vanish in the expected multiple Arch releases of this pkg.
#
#check() { (
# # Workaround UTF-8 tests by setting LC_CTYPE
# export LC_CTYPE=en_US.UTF-8
@ -118,4 +118,4 @@ sha256sums=(SKIP
06e2f68aebedbaeb0b0fe923eae686568910cc3355b33bf619db9266eef83efb) # system-validate-pyproject.patch
# a2bc8b9d470c13b4cb682ab3943e80ab2841aae98f7c3d9ba1f089408f96aa91) # add-dependency.patch
## a1d97496a28ef0a1fc8a7bba560c4a8d6768e39ef55215277a41a5af117af13d python-setuptools-1:67.7.2-01-x86_64.pkg.tar.lz
## ce25d5e993f25d069e00e553ce2797e1f5dc18abbc025a076310a1ae8937b4e8 python-setuptools-1:67.8.0-01-x86_64.pkg.tar.lz

View File

@ -3,8 +3,8 @@
# Contributor: Eli Schwartz <eschwartz@archlinux.org>
pkgname=python-setuptools
pkgver=67.7.0
_commit=f11f8b16e28ef2e21c1f454d8925b2c512d32d37
pkgver=67.8.0
_commit=1aed0ff9ba8091f127cd3638bd26661fa0ff8371
pkgrel=1
epoch=1
pkgdesc="Easily download, build, install, upgrade, and uninstall Python packages"

View File

@ -1,11 +1,8 @@
remember to uncheck the check section
XFAIL setuptools/tests/test_bdist_egg.py::Test::test_exclude_source_files - Byte code disabled
XFAIL setuptools/tests/test_build_py.py::test_excluded_subpackages - reason: #3260
XFAIL setuptools/tests/test_dist.py::test_read_metadata[Metadata Version 1.2: Project-Url-attrs5] - Issue #1578: project_urls not read
XFAIL setuptools/tests/test_dist.py::test_read_metadata[Metadata Version 2.1: Provides Extra-attrs9] - provides_extras not read
XFAIL setuptools/tests/test_egg_info.py::TestEggInfo::test_requires[extras_require_with_marker_in_setup_cfg]
XFAIL setuptools/tests/config/test_apply_pyprojecttoml.py::test_utf8_maintainer_in_metadata[international-email] - CPython's only supports RFC 5322, as of Nov 10, 2022 and latest Python 3.11.0
XPASS setuptools/tests/test_archive_util.py::test_unicode_files #710 and #712
previous run
======== 30 failed, 1078 passed, 27 skipped, 31 deselected, 6 xfailed, 1 xpassed in 248.80s (0:04:08) ========
==> ERROR: A failure occurred in check().
current run again
======== 30 failed, 1083 passed, 27 skipped, 31 deselected, 6 xfailed, 1 xpassed in 310.35s (0:05:10) ========
==> ERROR: A failure occurred in check().

View File

@ -0,0 +1,58 @@
Index: tmux-3.3a/control.c
===================================================================
--- tmux-3.3a.orig/control.c
+++ tmux-3.3a/control.c
@@ -775,6 +775,9 @@ control_start(struct client *c)
cs->read_event = bufferevent_new(c->fd, control_read_callback,
control_write_callback, control_error_callback, c);
+ if (cs->read_event == NULL)
+ fatalx("out of memory");
+
bufferevent_enable(cs->read_event, EV_READ);
if (c->flags & CLIENT_CONTROLCONTROL)
@@ -782,6 +785,8 @@ control_start(struct client *c)
else {
cs->write_event = bufferevent_new(c->out_fd, NULL,
control_write_callback, control_error_callback, c);
+ if (cs->write_event == NULL)
+ fatalx("out of memory");
}
bufferevent_setwatermark(cs->write_event, EV_WRITE, CONTROL_BUFFER_LOW,
0);
Index: tmux-3.3a/file.c
===================================================================
--- tmux-3.3a.orig/file.c
+++ tmux-3.3a/file.c
@@ -585,6 +585,8 @@ file_write_open(struct client_files *fil
cf->event = bufferevent_new(cf->fd, NULL, file_write_callback,
file_write_error_callback, cf);
+ if (cf->event == NULL)
+ fatalx("out of memory");
bufferevent_enable(cf->event, EV_WRITE);
goto reply;
@@ -744,6 +746,8 @@ file_read_open(struct client_files *file
cf->event = bufferevent_new(cf->fd, file_read_callback, NULL,
file_read_error_callback, cf);
+ if (cf->event == NULL)
+ fatalx("out of memory");
bufferevent_enable(cf->event, EV_READ);
return;
Index: tmux-3.3a/window.c
===================================================================
--- tmux-3.3a.orig/window.c
+++ tmux-3.3a/window.c
@@ -1042,6 +1042,8 @@ window_pane_set_event(struct window_pane
wp->event = bufferevent_new(wp->fd, window_pane_read_callback,
NULL, window_pane_error_callback, wp);
+ if (wp->event == NULL)
+ fatalx("out of memory");
wp->ictx = input_init(wp, wp->event, &wp->palette);
bufferevent_enable(wp->event, EV_READ|EV_WRITE);

675
tmux/0002-ncurses.patch Normal file
View File

@ -0,0 +1,675 @@
From 99960fcb9c8fefb3c929c8442c98f4cb0f83557d Mon Sep 17 00:00:00 2001
From: nicm <nicm>
Date: Tue, 25 Apr 2023 09:31:50 +0000
Subject: [PATCH 1/2] Tidy tparm wrapper functions to have more obvious names
and check tparm return value.
(cherry picked from commit 8f34504736cf3547992c4ba948c1e65f3813715c)
---
tmux.h | 26 ++++++------
tty-term.c | 47 ++++++++++++++++-----
tty.c | 118 ++++++++++++++++++++++++++---------------------------
3 files changed, 108 insertions(+), 83 deletions(-)
diff --git a/tmux.h b/tmux.h
index 53084b8b..5a90352e 100644
--- a/tmux.h
+++ b/tmux.h
@@ -2250,12 +2250,12 @@ void tty_margin_off(struct tty *);
void tty_cursor(struct tty *, u_int, u_int);
void tty_clipboard_query(struct tty *);
void tty_putcode(struct tty *, enum tty_code_code);
-void tty_putcode1(struct tty *, enum tty_code_code, int);
-void tty_putcode2(struct tty *, enum tty_code_code, int, int);
-void tty_putcode3(struct tty *, enum tty_code_code, int, int, int);
-void tty_putcode_ptr1(struct tty *, enum tty_code_code, const void *);
-void tty_putcode_ptr2(struct tty *, enum tty_code_code, const void *,
- const void *);
+void tty_putcode_i(struct tty *, enum tty_code_code, int);
+void tty_putcode_ii(struct tty *, enum tty_code_code, int, int);
+void tty_putcode_iii(struct tty *, enum tty_code_code, int, int, int);
+void tty_putcode_s(struct tty *, enum tty_code_code, const char *);
+void tty_putcode_ss(struct tty *, enum tty_code_code, const char *,
+ const char *);
void tty_puts(struct tty *, const char *);
void tty_putc(struct tty *, u_char);
void tty_putn(struct tty *, const void *, size_t, u_int);
@@ -2318,15 +2318,15 @@ int tty_term_read_list(const char *, int, char ***, u_int *,
void tty_term_free_list(char **, u_int);
int tty_term_has(struct tty_term *, enum tty_code_code);
const char *tty_term_string(struct tty_term *, enum tty_code_code);
-const char *tty_term_string1(struct tty_term *, enum tty_code_code, int);
-const char *tty_term_string2(struct tty_term *, enum tty_code_code, int,
+const char *tty_term_string_i(struct tty_term *, enum tty_code_code, int);
+const char *tty_term_string_ii(struct tty_term *, enum tty_code_code, int,
int);
-const char *tty_term_string3(struct tty_term *, enum tty_code_code, int,
+const char *tty_term_string_iii(struct tty_term *, enum tty_code_code, int,
int, int);
-const char *tty_term_ptr1(struct tty_term *, enum tty_code_code,
- const void *);
-const char *tty_term_ptr2(struct tty_term *, enum tty_code_code,
- const void *, const void *);
+const char *tty_term_string_s(struct tty_term *, enum tty_code_code,
+ const char *);
+const char *tty_term_string_ss(struct tty_term *, enum tty_code_code,
+ const char *, const char *);
int tty_term_number(struct tty_term *, enum tty_code_code);
int tty_term_flag(struct tty_term *, enum tty_code_code);
const char *tty_term_describe(struct tty_term *, enum tty_code_code);
diff --git a/tty-term.c b/tty-term.c
index fdf0c4fa..32dd849a 100644
--- a/tty-term.c
+++ b/tty-term.c
@@ -760,35 +760,60 @@ tty_term_string(struct tty_term *term, enum tty_code_code code)
}
const char *
-tty_term_string1(struct tty_term *term, enum tty_code_code code, int a)
+tty_term_string_i(struct tty_term *term, enum tty_code_code code, int a)
{
- return (tparm((char *) tty_term_string(term, code), a, 0, 0, 0, 0, 0, 0, 0, 0));
+ const char *x = tty_term_string(term, code), *s;
+
+ s = tparm((char *)x, a);
+ if (s == NULL)
+ fatalx("could not expand %s", tty_term_codes[code].name);
+ return (s);
}
const char *
-tty_term_string2(struct tty_term *term, enum tty_code_code code, int a, int b)
+tty_term_string_ii(struct tty_term *term, enum tty_code_code code, int a, int b)
{
- return (tparm((char *) tty_term_string(term, code), a, b, 0, 0, 0, 0, 0, 0, 0));
+ const char *x = tty_term_string(term, code), *s;
+
+ s = tparm((char *)x, a, b);
+ if (s == NULL)
+ fatalx("could not expand %s", tty_term_codes[code].name);
+ return (s);
}
const char *
-tty_term_string3(struct tty_term *term, enum tty_code_code code, int a, int b,
+tty_term_string_iii(struct tty_term *term, enum tty_code_code code, int a, int b,
int c)
{
- return (tparm((char *) tty_term_string(term, code), a, b, c, 0, 0, 0, 0, 0, 0));
+ const char *x = tty_term_string(term, code), *s;
+
+ s = tparm((char *)x, a, b, c);
+ if (s == NULL)
+ fatalx("could not expand %s", tty_term_codes[code].name);
+ return (s);
}
const char *
-tty_term_ptr1(struct tty_term *term, enum tty_code_code code, const void *a)
+tty_term_string_s(struct tty_term *term, enum tty_code_code code, const char *a)
{
- return (tparm((char *) tty_term_string(term, code), (long)a, 0, 0, 0, 0, 0, 0, 0, 0));
+ const char *x = tty_term_string(term, code), *s;
+
+ s = tparm((char *)x, (long)a);
+ if (s == NULL)
+ fatalx("could not expand %s", tty_term_codes[code].name);
+ return (s);
}
const char *
-tty_term_ptr2(struct tty_term *term, enum tty_code_code code, const void *a,
- const void *b)
+tty_term_string_ss(struct tty_term *term, enum tty_code_code code, const char *a,
+ const char *b)
{
- return (tparm((char *) tty_term_string(term, code), (long)a, (long)b, 0, 0, 0, 0, 0, 0, 0));
+ const char *x = tty_term_string(term, code), *s;
+
+ s = tparm((char *)x, (long)a, (long)b);
+ if (s == NULL)
+ fatalx("could not expand %s", tty_term_codes[code].name);
+ return (s);
}
int
diff --git a/tty.c b/tty.c
index 49cf9795..a4d744d0 100644
--- a/tty.c
+++ b/tty.c
@@ -399,7 +399,7 @@ tty_stop_tty(struct tty *tty)
if (tcsetattr(c->fd, TCSANOW, &tty->tio) == -1)
return;
- tty_raw(tty, tty_term_string2(tty->term, TTYC_CSR, 0, ws.ws_row - 1));
+ tty_raw(tty, tty_term_string_ii(tty->term, TTYC_CSR, 0, ws.ws_row - 1));
if (tty_acs_needed(tty))
tty_raw(tty, tty_term_string(tty->term, TTYC_RMACS));
tty_raw(tty, tty_term_string(tty->term, TTYC_SGR0));
@@ -409,7 +409,7 @@ tty_stop_tty(struct tty *tty)
if (tty_term_has(tty->term, TTYC_SE))
tty_raw(tty, tty_term_string(tty->term, TTYC_SE));
else if (tty_term_has(tty->term, TTYC_SS))
- tty_raw(tty, tty_term_string1(tty->term, TTYC_SS, 0));
+ tty_raw(tty, tty_term_string_i(tty->term, TTYC_SS, 0));
}
if (tty->mode & MODE_BRACKETPASTE)
tty_raw(tty, tty_term_string(tty->term, TTYC_DSBP));
@@ -506,42 +506,42 @@ tty_putcode(struct tty *tty, enum tty_code_code code)
}
void
-tty_putcode1(struct tty *tty, enum tty_code_code code, int a)
+tty_putcode_i(struct tty *tty, enum tty_code_code code, int a)
{
if (a < 0)
return;
- tty_puts(tty, tty_term_string1(tty->term, code, a));
+ tty_puts(tty, tty_term_string_i(tty->term, code, a));
}
void
-tty_putcode2(struct tty *tty, enum tty_code_code code, int a, int b)
+tty_putcode_ii(struct tty *tty, enum tty_code_code code, int a, int b)
{
if (a < 0 || b < 0)
return;
- tty_puts(tty, tty_term_string2(tty->term, code, a, b));
+ tty_puts(tty, tty_term_string_ii(tty->term, code, a, b));
}
void
-tty_putcode3(struct tty *tty, enum tty_code_code code, int a, int b, int c)
+tty_putcode_iii(struct tty *tty, enum tty_code_code code, int a, int b, int c)
{
if (a < 0 || b < 0 || c < 0)
return;
- tty_puts(tty, tty_term_string3(tty->term, code, a, b, c));
+ tty_puts(tty, tty_term_string_iii(tty->term, code, a, b, c));
}
void
-tty_putcode_ptr1(struct tty *tty, enum tty_code_code code, const void *a)
+tty_putcode_s(struct tty *tty, enum tty_code_code code, const char *a)
{
if (a != NULL)
- tty_puts(tty, tty_term_ptr1(tty->term, code, a));
+ tty_puts(tty, tty_term_string_s(tty->term, code, a));
}
void
-tty_putcode_ptr2(struct tty *tty, enum tty_code_code code, const void *a,
- const void *b)
+tty_putcode_ss(struct tty *tty, enum tty_code_code code, const char *a,
+ const char *b)
{
if (a != NULL && b != NULL)
- tty_puts(tty, tty_term_ptr2(tty->term, code, a, b));
+ tty_puts(tty, tty_term_string_ss(tty->term, code, a, b));
}
static void
@@ -603,7 +603,7 @@ tty_putc(struct tty *tty, u_char ch)
* it works on sensible terminals as well.
*/
if (tty->term->flags & TERM_NOAM)
- tty_putcode2(tty, TTYC_CUP, tty->cy, tty->cx);
+ tty_putcode_ii(tty, TTYC_CUP, tty->cy, tty->cx);
} else
tty->cx++;
}
@@ -682,7 +682,7 @@ tty_force_cursor_colour(struct tty *tty, int c)
else {
colour_split_rgb(c, &r, &g, &b);
xsnprintf(s, sizeof s, "rgb:%02hhx/%02hhx/%02hhx", r, g, b);
- tty_putcode_ptr1(tty, TTYC_CS, s);
+ tty_putcode_s(tty, TTYC_CS, s);
}
tty->ccolour = c;
}
@@ -743,7 +743,7 @@ tty_update_cursor(struct tty *tty, int mode, struct screen *s)
if (tty_term_has(tty->term, TTYC_SE))
tty_putcode(tty, TTYC_SE);
else
- tty_putcode1(tty, TTYC_SS, 0);
+ tty_putcode_i(tty, TTYC_SS, 0);
}
if (cmode & (MODE_CURSOR_BLINKING|MODE_CURSOR_VERY_VISIBLE))
tty_putcode(tty, TTYC_CVVIS);
@@ -751,27 +751,27 @@ tty_update_cursor(struct tty *tty, int mode, struct screen *s)
case SCREEN_CURSOR_BLOCK:
if (tty_term_has(tty->term, TTYC_SS)) {
if (cmode & MODE_CURSOR_BLINKING)
- tty_putcode1(tty, TTYC_SS, 1);
+ tty_putcode_i(tty, TTYC_SS, 1);
else
- tty_putcode1(tty, TTYC_SS, 2);
+ tty_putcode_i(tty, TTYC_SS, 2);
} else if (cmode & MODE_CURSOR_BLINKING)
tty_putcode(tty, TTYC_CVVIS);
break;
case SCREEN_CURSOR_UNDERLINE:
if (tty_term_has(tty->term, TTYC_SS)) {
if (cmode & MODE_CURSOR_BLINKING)
- tty_putcode1(tty, TTYC_SS, 3);
+ tty_putcode_i(tty, TTYC_SS, 3);
else
- tty_putcode1(tty, TTYC_SS, 4);
+ tty_putcode_i(tty, TTYC_SS, 4);
} else if (cmode & MODE_CURSOR_BLINKING)
tty_putcode(tty, TTYC_CVVIS);
break;
case SCREEN_CURSOR_BAR:
if (tty_term_has(tty->term, TTYC_SS)) {
if (cmode & MODE_CURSOR_BLINKING)
- tty_putcode1(tty, TTYC_SS, 5);
+ tty_putcode_i(tty, TTYC_SS, 5);
else
- tty_putcode1(tty, TTYC_SS, 6);
+ tty_putcode_i(tty, TTYC_SS, 6);
} else if (cmode & MODE_CURSOR_BLINKING)
tty_putcode(tty, TTYC_CVVIS);
break;
@@ -833,7 +833,7 @@ tty_emulate_repeat(struct tty *tty, enum tty_code_code code,
enum tty_code_code code1, u_int n)
{
if (tty_term_has(tty->term, code))
- tty_putcode1(tty, code, n);
+ tty_putcode_i(tty, code, n);
else {
while (n-- > 0)
tty_putcode(tty, code1);
@@ -1122,7 +1122,7 @@ tty_clear_line(struct tty *tty, const struct grid_cell *defaults, u_int py,
/* Section of line. Use ECH if possible. */
if (tty_term_has(tty->term, TTYC_ECH)) {
tty_cursor(tty, px, py);
- tty_putcode1(tty, TTYC_ECH, nx);
+ tty_putcode_i(tty, TTYC_ECH, nx);
return;
}
}
@@ -1263,7 +1263,7 @@ tty_clear_area(struct tty *tty, const struct grid_cell *defaults, u_int py,
tty_term_has(tty->term, TTYC_INDN)) {
tty_region(tty, py, py + ny - 1);
tty_margin_off(tty);
- tty_putcode1(tty, TTYC_INDN, ny);
+ tty_putcode_i(tty, TTYC_INDN, ny);
return;
}
@@ -1278,7 +1278,7 @@ tty_clear_area(struct tty *tty, const struct grid_cell *defaults, u_int py,
tty_term_has(tty->term, TTYC_INDN)) {
tty_region(tty, py, py + ny - 1);
tty_margin(tty, px, px + nx - 1);
- tty_putcode1(tty, TTYC_INDN, ny);
+ tty_putcode_i(tty, TTYC_INDN, ny);
return;
}
}
@@ -1579,7 +1579,7 @@ tty_sync_start(struct tty *tty)
if (tty_term_has(tty->term, TTYC_SYNC)) {
log_debug("%s sync start", tty->client->name);
- tty_putcode1(tty, TTYC_SYNC, 1);
+ tty_putcode_i(tty, TTYC_SYNC, 1);
}
}
@@ -1594,7 +1594,7 @@ tty_sync_end(struct tty *tty)
if (tty_term_has(tty->term, TTYC_SYNC)) {
log_debug("%s sync end", tty->client->name);
- tty_putcode1(tty, TTYC_SYNC, 2);
+ tty_putcode_i(tty, TTYC_SYNC, 2);
}
}
@@ -1793,7 +1793,7 @@ tty_cmd_reverseindex(struct tty *tty, const struct tty_ctx *ctx)
if (tty_term_has(tty->term, TTYC_RI))
tty_putcode(tty, TTYC_RI);
else
- tty_putcode1(tty, TTYC_RIN, 1);
+ tty_putcode_i(tty, TTYC_RIN, 1);
}
void
@@ -1872,7 +1872,7 @@ tty_cmd_scrollup(struct tty *tty, const struct tty_ctx *ctx)
tty_cursor(tty, 0, 0);
else
tty_cursor(tty, 0, tty->cy);
- tty_putcode1(tty, TTYC_INDN, ctx->num);
+ tty_putcode_i(tty, TTYC_INDN, ctx->num);
}
}
@@ -1902,7 +1902,7 @@ tty_cmd_scrolldown(struct tty *tty, const struct tty_ctx *ctx)
tty_cursor_pane(tty, ctx, ctx->ocx, ctx->orupper);
if (tty_term_has(tty->term, TTYC_RIN))
- tty_putcode1(tty, TTYC_RIN, ctx->num);
+ tty_putcode_i(tty, TTYC_RIN, ctx->num);
else {
for (i = 0; i < ctx->num; i++)
tty_putcode(tty, TTYC_RI);
@@ -2101,7 +2101,7 @@ tty_set_selection(struct tty *tty, const char *buf, size_t len)
b64_ntop(buf, len, encoded, size);
tty->flags |= TTY_NOBLOCK;
- tty_putcode_ptr2(tty, TTYC_MS, "", encoded);
+ tty_putcode_ss(tty, TTYC_MS, "", encoded);
free(encoded);
}
@@ -2246,7 +2246,7 @@ tty_region(struct tty *tty, u_int rupper, u_int rlower)
tty_cursor(tty, 0, tty->cy);
}
- tty_putcode2(tty, TTYC_CSR, tty->rupper, tty->rlower);
+ tty_putcode_ii(tty, TTYC_CSR, tty->rupper, tty->rlower);
tty->cx = tty->cy = UINT_MAX;
}
@@ -2274,7 +2274,7 @@ tty_margin(struct tty *tty, u_int rleft, u_int rright)
if (tty->rleft == rleft && tty->rright == rright)
return;
- tty_putcode2(tty, TTYC_CSR, tty->rupper, tty->rlower);
+ tty_putcode_ii(tty, TTYC_CSR, tty->rupper, tty->rlower);
tty->rleft = rleft;
tty->rright = rright;
@@ -2282,7 +2282,7 @@ tty_margin(struct tty *tty, u_int rleft, u_int rright)
if (rleft == 0 && rright == tty->sx - 1)
tty_putcode(tty, TTYC_CLMG);
else
- tty_putcode2(tty, TTYC_CMG, rleft, rright);
+ tty_putcode_ii(tty, TTYC_CMG, rleft, rright);
tty->cx = tty->cy = UINT_MAX;
}
@@ -2392,7 +2392,7 @@ tty_cursor(struct tty *tty, u_int cx, u_int cy)
* the cursor with CUB/CUF.
*/
if ((u_int) abs(change) > cx && tty_term_has(term, TTYC_HPA)) {
- tty_putcode1(tty, TTYC_HPA, cx);
+ tty_putcode_i(tty, TTYC_HPA, cx);
goto out;
} else if (change > 0 &&
tty_term_has(term, TTYC_CUB) &&
@@ -2402,12 +2402,12 @@ tty_cursor(struct tty *tty, u_int cx, u_int cy)
tty_putcode(tty, TTYC_CUB1);
goto out;
}
- tty_putcode1(tty, TTYC_CUB, change);
+ tty_putcode_i(tty, TTYC_CUB, change);
goto out;
} else if (change < 0 &&
tty_term_has(term, TTYC_CUF) &&
!tty_use_margin(tty)) {
- tty_putcode1(tty, TTYC_CUF, -change);
+ tty_putcode_i(tty, TTYC_CUF, -change);
goto out;
}
} else if (cx == thisx) {
@@ -2440,21 +2440,21 @@ tty_cursor(struct tty *tty, u_int cx, u_int cy)
(change < 0 && cy - change > tty->rlower) ||
(change > 0 && cy - change < tty->rupper)) {
if (tty_term_has(term, TTYC_VPA)) {
- tty_putcode1(tty, TTYC_VPA, cy);
+ tty_putcode_i(tty, TTYC_VPA, cy);
goto out;
}
} else if (change > 0 && tty_term_has(term, TTYC_CUU)) {
- tty_putcode1(tty, TTYC_CUU, change);
+ tty_putcode_i(tty, TTYC_CUU, change);
goto out;
} else if (change < 0 && tty_term_has(term, TTYC_CUD)) {
- tty_putcode1(tty, TTYC_CUD, -change);
+ tty_putcode_i(tty, TTYC_CUD, -change);
goto out;
}
}
absolute:
/* Absolute movement. */
- tty_putcode2(tty, TTYC_CUP, cy, cx);
+ tty_putcode_ii(tty, TTYC_CUP, cy, cx);
out:
tty->cx = cx;
@@ -2533,13 +2533,13 @@ tty_attributes(struct tty *tty, const struct grid_cell *gc,
!tty_term_has(tty->term, TTYC_SMULX))
tty_putcode(tty, TTYC_SMUL);
else if (changed & GRID_ATTR_UNDERSCORE_2)
- tty_putcode1(tty, TTYC_SMULX, 2);
+ tty_putcode_i(tty, TTYC_SMULX, 2);
else if (changed & GRID_ATTR_UNDERSCORE_3)
- tty_putcode1(tty, TTYC_SMULX, 3);
+ tty_putcode_i(tty, TTYC_SMULX, 3);
else if (changed & GRID_ATTR_UNDERSCORE_4)
- tty_putcode1(tty, TTYC_SMULX, 4);
+ tty_putcode_i(tty, TTYC_SMULX, 4);
else if (changed & GRID_ATTR_UNDERSCORE_5)
- tty_putcode1(tty, TTYC_SMULX, 5);
+ tty_putcode_i(tty, TTYC_SMULX, 5);
}
if (changed & GRID_ATTR_BLINK)
tty_putcode(tty, TTYC_BLINK);
@@ -2593,14 +2593,14 @@ tty_colours(struct tty *tty, const struct grid_cell *gc)
if (have_ax)
tty_puts(tty, "\033[39m");
else if (tc->fg != 7)
- tty_putcode1(tty, TTYC_SETAF, 7);
+ tty_putcode_i(tty, TTYC_SETAF, 7);
tc->fg = gc->fg;
}
if (COLOUR_DEFAULT(gc->bg) && !COLOUR_DEFAULT(tc->bg)) {
if (have_ax)
tty_puts(tty, "\033[49m");
else if (tc->bg != 0)
- tty_putcode1(tty, TTYC_SETAB, 0);
+ tty_putcode_i(tty, TTYC_SETAB, 0);
tc->bg = gc->bg;
}
}
@@ -2768,12 +2768,12 @@ tty_colours_fg(struct tty *tty, const struct grid_cell *gc)
xsnprintf(s, sizeof s, "\033[%dm", gc->fg);
tty_puts(tty, s);
} else
- tty_putcode1(tty, TTYC_SETAF, gc->fg - 90 + 8);
+ tty_putcode_i(tty, TTYC_SETAF, gc->fg - 90 + 8);
goto save;
}
/* Otherwise set the foreground colour. */
- tty_putcode1(tty, TTYC_SETAF, gc->fg);
+ tty_putcode_i(tty, TTYC_SETAF, gc->fg);
save:
/* Save the new values in the terminal current cell. */
@@ -2800,12 +2800,12 @@ tty_colours_bg(struct tty *tty, const struct grid_cell *gc)
xsnprintf(s, sizeof s, "\033[%dm", gc->bg + 10);
tty_puts(tty, s);
} else
- tty_putcode1(tty, TTYC_SETAB, gc->bg - 90 + 8);
+ tty_putcode_i(tty, TTYC_SETAB, gc->bg - 90 + 8);
goto save;
}
/* Otherwise set the background colour. */
- tty_putcode1(tty, TTYC_SETAB, gc->bg);
+ tty_putcode_i(tty, TTYC_SETAB, gc->bg);
save:
/* Save the new values in the terminal current cell. */
@@ -2841,10 +2841,10 @@ tty_colours_us(struct tty *tty, const struct grid_cell *gc)
* non-RGB version may be wrong.
*/
if (tty_term_has(tty->term, TTYC_SETULC))
- tty_putcode1(tty, TTYC_SETULC, c);
+ tty_putcode_i(tty, TTYC_SETULC, c);
else if (tty_term_has(tty->term, TTYC_SETAL) &&
tty_term_has(tty->term, TTYC_RGB))
- tty_putcode1(tty, TTYC_SETAL, c);
+ tty_putcode_i(tty, TTYC_SETAL, c);
save:
/* Save the new values in the terminal current cell. */
@@ -2858,18 +2858,18 @@ tty_try_colour(struct tty *tty, int colour, const char *type)
if (colour & COLOUR_FLAG_256) {
if (*type == '3' && tty_term_has(tty->term, TTYC_SETAF))
- tty_putcode1(tty, TTYC_SETAF, colour & 0xff);
+ tty_putcode_i(tty, TTYC_SETAF, colour & 0xff);
else if (tty_term_has(tty->term, TTYC_SETAB))
- tty_putcode1(tty, TTYC_SETAB, colour & 0xff);
+ tty_putcode_i(tty, TTYC_SETAB, colour & 0xff);
return (0);
}
if (colour & COLOUR_FLAG_RGB) {
colour_split_rgb(colour & 0xffffff, &r, &g, &b);
if (*type == '3' && tty_term_has(tty->term, TTYC_SETRGBF))
- tty_putcode3(tty, TTYC_SETRGBF, r, g, b);
+ tty_putcode_iii(tty, TTYC_SETRGBF, r, g, b);
else if (tty_term_has(tty->term, TTYC_SETRGBB))
- tty_putcode3(tty, TTYC_SETRGBB, r, g, b);
+ tty_putcode_iii(tty, TTYC_SETRGBB, r, g, b);
return (0);
}
@@ -2953,7 +2953,7 @@ tty_clipboard_query(struct tty *tty)
if ((~tty->flags & TTY_STARTED) || (tty->flags & TTY_OSC52QUERY))
return;
- tty_putcode_ptr2(tty, TTYC_MS, "", "?");
+ tty_putcode_ss(tty, TTYC_MS, "", "?");
tty->flags |= TTY_OSC52QUERY;
evtimer_set(&tty->clipboard_timer, tty_clipboard_query_callback, tty);
--
2.40.1
From 05729d716a303d0247bf15edcad855ed9c37172a Mon Sep 17 00:00:00 2001
From: Nicholas Marriott <nicholas.marriott@gmail.com>
Date: Fri, 28 Apr 2023 06:44:40 +0100
Subject: [PATCH 2/2] Use ncurses' new tparm_s function (added in 6.4-20230424)
instead of tparm so it does not object to string arguments in capabilities it
doesn't already know.
(cherry picked from commit 39d41d0810d4e8ae6ce8d27776dfbb96722d9319)
---
configure.ac | 4 ++++
tty-term.c | 48 +++++++++++++++++++++++++++++++++++++++---------
2 files changed, 43 insertions(+), 9 deletions(-)
diff --git a/configure.ac b/configure.ac
index 2b8b3b11..3c3c1873 100644
--- a/configure.ac
+++ b/configure.ac
@@ -344,6 +344,10 @@ else
AC_MSG_ERROR("curses not found")
fi
fi
+AC_CHECK_FUNCS([ \
+ tiparm \
+ tiparm_s \
+])
# Look for utempter.
AC_ARG_ENABLE(
diff --git a/tty-term.c b/tty-term.c
index 32dd849a..18b17420 100644
--- a/tty-term.c
+++ b/tty-term.c
@@ -764,7 +764,13 @@ tty_term_string_i(struct tty_term *term, enum tty_code_code code, int a)
{
const char *x = tty_term_string(term, code), *s;
- s = tparm((char *)x, a);
+#if defined(HAVE_TIPARM_S)
+ s = tiparm_s(1, 0, x, a);
+#elif defined(HAVE_TIPARM)
+ s = tiparm(x, a);
+#else
+ s = tparm((char *)x, a, 0, 0, 0, 0, 0, 0, 0, 0);
+#endif
if (s == NULL)
fatalx("could not expand %s", tty_term_codes[code].name);
return (s);
@@ -775,19 +781,31 @@ tty_term_string_ii(struct tty_term *term, enum tty_code_code code, int a, int b)
{
const char *x = tty_term_string(term, code), *s;
- s = tparm((char *)x, a, b);
+#if defined(HAVE_TIPARM_S)
+ s = tiparm_s(2, 0, x, a, b);
+#elif defined(HAVE_TIPARM)
+ s = tiparm(x, a, b);
+#else
+ s = tparm((char *)x, a, b, 0, 0, 0, 0, 0, 0, 0);
+#endif
if (s == NULL)
fatalx("could not expand %s", tty_term_codes[code].name);
return (s);
}
const char *
-tty_term_string_iii(struct tty_term *term, enum tty_code_code code, int a, int b,
- int c)
+tty_term_string_iii(struct tty_term *term, enum tty_code_code code, int a,
+ int b, int c)
{
const char *x = tty_term_string(term, code), *s;
- s = tparm((char *)x, a, b, c);
+#if defined(HAVE_TIPARM_S)
+ s = tiparm_s(3, 0, x, a, b, c);
+#elif defined(HAVE_TIPARM)
+ s = tiparm(x, a, b, c);
+#else
+ s = tparm((char *)x, a, b, c, 0, 0, 0, 0, 0, 0);
+#endif
if (s == NULL)
fatalx("could not expand %s", tty_term_codes[code].name);
return (s);
@@ -798,19 +816,31 @@ tty_term_string_s(struct tty_term *term, enum tty_code_code code, const char *a)
{
const char *x = tty_term_string(term, code), *s;
- s = tparm((char *)x, (long)a);
+#if defined(HAVE_TIPARM_S)
+ s = tiparm_s(1, 1, x, a);
+#elif defined(HAVE_TIPARM)
+ s = tiparm(x, a);
+#else
+ s = tparm((char *)x, (long)a, 0, 0, 0, 0, 0, 0, 0, 0);
+#endif
if (s == NULL)
fatalx("could not expand %s", tty_term_codes[code].name);
return (s);
}
const char *
-tty_term_string_ss(struct tty_term *term, enum tty_code_code code, const char *a,
- const char *b)
+tty_term_string_ss(struct tty_term *term, enum tty_code_code code,
+ const char *a, const char *b)
{
const char *x = tty_term_string(term, code), *s;
- s = tparm((char *)x, (long)a, (long)b);
+#if defined(HAVE_TIPARM_S)
+ s = tiparm_s(2, 3, x, a, b);
+#elif defined(HAVE_TIPARM)
+ s = tiparm(x, a, b);
+#else
+ s = tparm((char *)x, (long)a, b, 0, 0, 0, 0, 0, 0, 0);
+#endif
if (s == NULL)
fatalx("could not expand %s", tty_term_codes[code].name);
return (s);
--
2.40.1

54
tmux/PKGBUILD Normal file
View File

@ -0,0 +1,54 @@
#!/usr/bin/bash
# JOBoRun : Jwm OpenBox Obarun RUNit
# Maintainer : Joe Bo Run <joborun@disroot.org>
# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname"
# Website : https://pozol.eu
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=tmux
pkgver=3.3_a
pkgrel=04
pkgdesc='A terminal multiplexer without systemd'
url='https://github.com/tmux/tmux/wiki'
depends=('ncurses' 'libevent' 'libutempter')
source=("https://github.com/tmux/tmux/releases/download/${pkgver/_/}/tmux-${pkgver/_/}.tar.gz"
'0001-CVE-2022-47016.patch'
'0002-ncurses.patch')
prepare() {
cd "$pkgname-${pkgver/_/}"
patch -Np1 -i ../0001-CVE-2022-47016.patch
patch -Np1 -i ../0002-ncurses.patch
autoreconf -fi
}
build() {
cd "$pkgname-${pkgver/_/}"
./configure \
--prefix=/usr \
--enable-utempter \
--disable-systemd
make
}
package() {
cd "$pkgname-${pkgver/_/}"
make install DESTDIR="$pkgdir"
install -D -m0644 COPYING "$pkgdir/usr/share/licenses/tmux/LICENSE"
}
#---- arch license gpg-key & sha256sums ----
arch=(x86_64)
license=('BSD')
sha256sums=(e4fd347843bd0772c4f48d6dde625b0b109b7a380ff15db21e97c11a4dcdf93f # tmux-3.3a.tar.gz
58fb690833e086b71b52555aa8eced695ace0a0bc51b8bccfda441e35a47ca93 # CVE-2022-47016.patch
ec46d35d980e2d63d60069567f8456ecafdf48d4d0b4f629de585d7575d797e1) # 0002-ncurses.patch
## 33b38ca8bdf8f2ffd01132f243c5e6152d3378e3776831300d562e5355313802 tmux-3.3_a-04-x86_64.pkg.tar.lz

44
tmux/PKGBUILD-arch Normal file
View File

@ -0,0 +1,44 @@
# Maintainer: Christian Hesse <mail@eworm.de>
# Maintainer: T.J. Townsend <blakkheim@archlinux.org>
pkgname=tmux
pkgver=3.3_a
pkgrel=4
pkgdesc='Terminal multiplexer'
url='https://github.com/tmux/tmux/wiki'
arch=('x86_64')
license=('BSD')
depends=('ncurses' 'libevent' 'libutempter' 'systemd-libs')
makedepends=('systemd')
source=("https://github.com/tmux/tmux/releases/download/${pkgver/_/}/tmux-${pkgver/_/}.tar.gz"
'0001-CVE-2022-47016.patch'
'0002-ncurses.patch')
sha256sums=('e4fd347843bd0772c4f48d6dde625b0b109b7a380ff15db21e97c11a4dcdf93f'
'58fb690833e086b71b52555aa8eced695ace0a0bc51b8bccfda441e35a47ca93'
'ec46d35d980e2d63d60069567f8456ecafdf48d4d0b4f629de585d7575d797e1')
prepare() {
cd "$pkgname-${pkgver/_/}"
patch -Np1 -i ../0001-CVE-2022-47016.patch
patch -Np1 -i ../0002-ncurses.patch
autoreconf -fi
}
build() {
cd "$pkgname-${pkgver/_/}"
./configure \
--prefix=/usr \
--enable-utempter \
--enable-systemd
make
}
package() {
cd "$pkgname-${pkgver/_/}"
make install DESTDIR="$pkgdir"
install -D -m0644 COPYING "$pkgdir/usr/share/licenses/tmux/LICENSE"
}

1
tmux/clean Normal file
View File

@ -0,0 +1 @@
rm -rf {src,pkg,tmux*tar.gz}

6
tmux/deps Normal file
View File

@ -0,0 +1,6 @@
libutempter
autoconf
automake

6
tmux/time Normal file
View File

@ -0,0 +1,6 @@
real 0m33.419s
user 0m30.753s
sys 0m3.644s

View File

@ -0,0 +1,36 @@
From 02f295d4c4c1b401cdb589df5bef2645c7f83813 Mon Sep 17 00:00:00 2001
From: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Date: Mon, 15 Mar 2021 08:13:14 +0100
Subject: [PATCH] v4l2-tpg.patch: rename min/max defines to tpg_min/max
With gcc 11 the min/max defines clash with what gcc provides,
so rename these defines. They are only used in the min3/max3
defines, so the change it kept to a minimum.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Reported-by: Gregor Jasny <gjasny@googlemail.com>
---
utils/common/v4l2-tpg.h | 10 ++++------
utils/common/v4l2-tpg.patch | 12 +++++-------
2 files changed, 9 insertions(+), 13 deletions(-)
diff --git a/utils/common/v4l2-tpg.h b/utils/common/v4l2-tpg.h
index caf7b1a1..ecdb6eba 100644
--- a/utils/common/v4l2-tpg.h
+++ b/utils/common/v4l2-tpg.h
@@ -28,12 +28,10 @@ typedef __s8 s8;
#define pr_info printf
#define noinline
-#ifndef min
-#define min(a,b) ((a) < (b) ? (a) : (b))
-#define max(a,b) ((a) > (b) ? (a) : (b))
-#endif /* !min */
-#define min3(x, y, z) min((typeof(x))min(x, y), z)
-#define max3(x, y, z) max((typeof(x))max(x, y), z)
+#define tpg_min(a,b) ((a) < (b) ? (a) : (b))
+#define tpg_max(a,b) ((a) > (b) ? (a) : (b))
+#define min3(x, y, z) tpg_min((typeof(x))tpg_min(x, y), z)
+#define max3(x, y, z) tpg_max((typeof(x))tpg_max(x, y), z)
#define array_size(a, b) ((a) * (b))
#define array3_size(a, b, c) ((a) * (b) * (c))

55
v4l-utils/PKGBUILD Normal file
View File

@ -0,0 +1,55 @@
#!/usr/bin/bash
# JOBoRun : Jwm OpenBox Obarun RUNit
# Maintainer : Joe Bo Run <joborun@disroot.org>
# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname"
# Website : https://pozol.eu
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=v4l-utils
pkgver=1.24.1
pkgrel=03
pkgdesc="Userspace tools and conversion library for Video 4 Linux w/o systemd"
url="https://linuxtv.org/"
provides=("libv4l=$pkgver")
replaces=('libv4l')
conflicts=('libv4l')
backup=(etc/rc_maps.cfg)
makedepends=('qt5-base' 'alsa-lib')
optdepends=('qt5-base: for qv4l2' 'alsa-lib: for qv4l2')
depends=('hicolor-icon-theme' 'gcc-libs' 'sysfsutils' 'libjpeg-turbo')
source=(https://linuxtv.org/downloads/v4l-utils/${pkgname}-${pkgver}.tar.bz2{,.asc})
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--with-systemdsystemunitdir=no \
--sbindir=/usr/bin \
--bindir=/usr/bin \
--libdir=/usr/lib
make
}
package() {
cd "${srcdir}/${pkgname}-${pkgver}"
MAKEFLAGS="-j1" make install DESTDIR="${pkgdir}/"
rm "${pkgdir}/usr/bin/ivtv-ctl"
mv "${pkgdir}"/lib/udev "${pkgdir}"/usr/lib/
rmdir "${pkgdir}/lib"
}
#---- arch license gpg-key & sha256sums ----
arch=(x86_64)
license=('LGPL')
validpgpkeys=('05D0169C26E41593418129DF199A64FADFB500FF') # Gregor Jasny <gjasny@googlemail.com>
sha256sums=(cbb7fe8a6307f5ce533a05cded70bb93c3ba06395ab9b6d007eb53b75d805f5b # v4l-utils-1.24.1.tar.bz2
2930550a967ca17e03ca2ee612bf1a859f779aa2d1770181514b6553118bcd2c) # v4l-utils-1.24.1.tar.bz2.asc
## a7c817f22e0843b469df19787da8c23ad212cc0bdc64b6c5066dc5bc4646495f v4l-utils-1.24.1-03-x86_64.pkg.tar.lz

32
v4l-utils/PKGBUILD-arch Normal file
View File

@ -0,0 +1,32 @@
# Maintainer: Thomas Bächler <thomas@archlinux.org>
pkgname=v4l-utils
pkgver=1.24.1
pkgrel=2
pkgdesc="Userspace tools and conversion library for Video 4 Linux"
arch=('x86_64')
url="https://linuxtv.org/"
provides=("libv4l=$pkgver")
replaces=('libv4l')
conflicts=('libv4l')
backup=(etc/rc_maps.cfg)
license=('LGPL')
depends=('hicolor-icon-theme' 'gcc-libs' 'libjpeg-turbo' 'systemd-libs' 'json-c')
makedepends=('qt5-base' 'alsa-lib')
optdepends=('qt5-base: for qv4l2 and qvidcap' 'alsa-lib: for qv4l2')
source=(https://linuxtv.org/downloads/v4l-utils/${pkgname}-${pkgver}.tar.bz2{,.asc})
sha256sums=('cbb7fe8a6307f5ce533a05cded70bb93c3ba06395ab9b6d007eb53b75d805f5b'
'SKIP')
validpgpkeys=('05D0169C26E41593418129DF199A64FADFB500FF') # Gregor Jasny <gjasny@googlemail.com>
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc --sbindir=/usr/bin
make
}
package() {
cd "${srcdir}/${pkgname}-${pkgver}"
MAKEFLAGS="-j1" make install DESTDIR="${pkgdir}/"
rm "${pkgdir}/usr/bin/ivtv-ctl"
}

1
v4l-utils/clean Normal file
View File

@ -0,0 +1 @@
rm -rf {src,pkg,v4l*.bz2*}

200
v4l-utils/configure vendored Normal file
View File

@ -0,0 +1,200 @@
`configure' configures v4l-utils 1.24.1 to adapt to many kinds of systems.
Usage: src/v4l-utils-1.24.1/configure [OPTION]... [VAR=VALUE]...
To assign environment variables (e.g., CC, CFLAGS...), specify them as
VAR=VALUE. See below for descriptions of some of the useful variables.
Defaults for the options are specified in brackets.
Configuration:
-h, --help display this help and exit
--help=short display options specific to this package
--help=recursive display the short help of all the included packages
-V, --version display version information and exit
-q, --quiet, --silent do not print `checking ...' messages
--cache-file=FILE cache test results in FILE [disabled]
-C, --config-cache alias for `--cache-file=config.cache'
-n, --no-create do not create output files
--srcdir=DIR find the sources in DIR [configure dir or `..']
Installation directories:
--prefix=PREFIX install architecture-independent files in PREFIX
[/usr/local]
--exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
[PREFIX]
By default, `make install' will install all the files in
`/usr/local/bin', `/usr/local/lib' etc. You can specify
an installation prefix other than `/usr/local' using `--prefix',
for instance `--prefix=$HOME'.
For better control, use the options below.
Fine tuning of the installation directories:
--bindir=DIR user executables [EPREFIX/bin]
--sbindir=DIR system admin executables [EPREFIX/sbin]
--libexecdir=DIR program executables [EPREFIX/libexec]
--sysconfdir=DIR read-only single-machine data [PREFIX/etc]
--sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
--localstatedir=DIR modifiable single-machine data [PREFIX/var]
--runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run]
--libdir=DIR object code libraries [EPREFIX/lib]
--includedir=DIR C header files [PREFIX/include]
--oldincludedir=DIR C header files for non-gcc [/usr/include]
--datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
--datadir=DIR read-only architecture-independent data [DATAROOTDIR]
--infodir=DIR info documentation [DATAROOTDIR/info]
--localedir=DIR locale-dependent data [DATAROOTDIR/locale]
--mandir=DIR man documentation [DATAROOTDIR/man]
--docdir=DIR documentation root [DATAROOTDIR/doc/v4l-utils]
--htmldir=DIR html documentation [DOCDIR]
--dvidir=DIR dvi documentation [DOCDIR]
--pdfdir=DIR pdf documentation [DOCDIR]
--psdir=DIR ps documentation [DOCDIR]
Program names:
--program-prefix=PREFIX prepend PREFIX to installed program names
--program-suffix=SUFFIX append SUFFIX to installed program names
--program-transform-name=PROGRAM run sed PROGRAM on installed program names
System types:
--build=BUILD configure for building on BUILD [guessed]
--host=HOST cross-compile to build programs to run on HOST [BUILD]
Optional Features:
--disable-option-checking ignore unrecognized --enable/--with options
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
--enable-dependency-tracking
do not reject slow dependency extractors
--disable-dependency-tracking
speeds up one-time build
--enable-silent-rules less verbose build output (undo: "make V=1")
--disable-silent-rules verbose build output (undo: "make V=0")
--enable-maintainer-mode
enable make rules and dependencies not useful (and
sometimes confusing) to the casual installer
--enable-shared[=PKGS] build shared libraries [default=yes]
--enable-static[=PKGS] build static libraries [default=yes]
--enable-fast-install[=PKGS]
optimize for fast installation [default=yes]
--disable-libtool-lock avoid locking (might break parallel builds)
--disable-doxygen-doc don't generate any doxygen documentation
--disable-doxygen-dot don't generate graphics for doxygen documentation
--enable-doxygen-man generate doxygen manual pages
--enable-doxygen-rtf generate doxygen RTF documentation
--enable-doxygen-xml generate doxygen XML documentation
--enable-doxygen-chm generate doxygen compressed HTML help documentation
--enable-doxygen-chi generate doxygen seperate compressed HTML help index
file
--disable-doxygen-html don't generate doxygen plain HTML documentation
--disable-doxygen-ps don't generate doxygen PostScript documentation
--disable-doxygen-pdf don't generate doxygen PDF documentation
--disable-nls do not use Native Language Support
--disable-rpath do not hardcode runtime library paths
--disable-libdvbv5 disable libdvbv5 compilation
--disable-dyn-libv4l disable dynamic libv4l support
--disable-v4l-utils disable v4l-utils compilation
--disable-v4l2-compliance-libv4l
disable use of libv4l in v4l2-compliance
--enable-v4l2-compliance-32
enable v4l2-compliance-32 compilation (for debugging
purposes only)
--disable-v4l2-tracer disable v4l2-tracer compilation
--disable-v4l2-ctl-libv4l
disable use of libv4l in v4l2-ctl
--disable-v4l2-ctl-stream-to
disable use of --stream-to in v4l2-ctl
--enable-v4l2-ctl-32 enable v4l2-ctl-32 compilation (for debugging
purposes only)
--disable-qv4l2 disable qv4l2 compilation
--disable-qvidcap disable qvidcap compilation
--enable-gconv enable compilation of gconv modules
--disable-bpf disable IR BPF decoders
Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
--with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use
both]
--with-aix-soname=aix|svr4|both
shared library versioning (aka "SONAME") variant to
provide on AIX, [default=aix].
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
--with-sysroot[=DIR] Search for dependent libraries within DIR (or the
compiler's sysroot if not specified).
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
--with-libiconv-prefix[=DIR] search for libiconv in DIR/include and DIR/lib
--without-libiconv-prefix don't search for libiconv in includedir and libdir
--with-libintl-prefix[=DIR] search for libintl in DIR/include and DIR/lib
--without-libintl-prefix don't search for libintl in includedir and libdir
--with-localedir=PATH Where the locale files are installed
--without-jpeg Do not use jpeg library
--without-libudev Do not use udev library
--with-libv4l1subdir=DIR
set libv4l1 library subdir (default=libv4l)
--with-libv4l2subdir=DIR
set libv4l2 library subdir (default=libv4l)
--with-libv4lconvertsubdir=DIR
set libv4lconvert library subdir (default=libv4l)
--with-udevdir=DIR set udev directory
--with-systemdsystemunitdir=DIR
set systemd system unit directory
--with-gconvdir=DIR set system's gconv directory (default is to
autodetect)
Some influential environment variables:
CC C compiler command
CFLAGS C compiler flags
LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
nonstandard directory <lib dir>
LIBS libraries to pass to the linker, e.g. -l<library>
CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
you have headers in a nonstandard directory <include dir>
CXX C++ compiler command
CXXFLAGS C++ compiler flags
LT_SYS_LIBRARY_PATH
User-defined run-time library search path.
CXXCPP C++ preprocessor
PKG_CONFIG path to pkg-config utility
PKG_CONFIG_PATH
directories to add to pkg-config's search path
PKG_CONFIG_LIBDIR
path overriding pkg-config's built-in search path
DOXYGEN_PAPER_SIZE
a4wide (default), a4, letter, legal or executive
CPP C preprocessor
X11_CFLAGS C compiler flags for X11, overriding pkg-config
X11_LIBS linker flags for X11, overriding pkg-config
LIBELF_CFLAGS
C compiler flags for LIBELF, overriding pkg-config
LIBELF_LIBS linker flags for LIBELF, overriding pkg-config
GL_CFLAGS C compiler flags for GL, overriding pkg-config
GL_LIBS linker flags for GL, overriding pkg-config
GLU_CFLAGS C compiler flags for GLU, overriding pkg-config
GLU_LIBS linker flags for GLU, overriding pkg-config
QT5_CFLAGS C compiler flags for QT5, overriding pkg-config
QT5_LIBS linker flags for QT5, overriding pkg-config
QT5GL_CFLAGS
C compiler flags for QT5GL, overriding pkg-config
QT5GL_LIBS linker flags for QT5GL, overriding pkg-config
ALSA_CFLAGS C compiler flags for ALSA, overriding pkg-config
ALSA_LIBS linker flags for ALSA, overriding pkg-config
libudev_CFLAGS
C compiler flags for libudev, overriding pkg-config
libudev_LIBS
linker flags for libudev, overriding pkg-config
JSONC_CFLAGS
C compiler flags for JSONC, overriding pkg-config
JSONC_LIBS linker flags for JSONC, overriding pkg-config
SDL2_CFLAGS C compiler flags for SDL2, overriding pkg-config
SDL2_LIBS linker flags for SDL2, overriding pkg-config
LIBBPF_CFLAGS
C compiler flags for LIBBPF, overriding pkg-config
LIBBPF_LIBS linker flags for LIBBPF, overriding pkg-config
Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.
Report bugs to the package provider.

7
v4l-utils/deps Normal file
View File

@ -0,0 +1,7 @@
hicolor-icon-theme
sysfsutils
libjpeg-turbo
qt5-base
alsa-lib

1
v4l-utils/key Normal file
View File

@ -0,0 +1 @@
gpg -v --recv-key 199A64FADFB500FF