You are not logged in.
Mesa keeps getting more options added, but it's very rare some are removed.
I looked good at the options and asked my self : what benefit do they bring and do I need that ?
egl - EGL is an interface between Khronos rendering APIs (such as OpenGL, OpenGL ES or OpenVG) and the underlying native platform windowing system.
gbm - needed for wayland
gallium-opencl - libclc / opencl .
gles2 - needed for WebGL .
Unneeded
gallium-omx - very few applications that use it
gallium-nine - superseded by the directx to vulkan protocols
gallium-vdpau - va works a lot better
gallium-xa - what still uses this ?
gallium-xvmc - disabled it in mesa-git long ago, no one ever complained
gles1 - disabled it in mesa-git sometime ago, no one ever complained
One system I own does use the r300 gallium driver, but hasn't run mesa-git since 2012 .
All the dri-drivers and older gallium drivers can be removed without any drawback for me.
The drivers I do feel are needed :
OpenGL : -D gallium-drivers=radeonsi,swrast,iris
Vulkan : -D vulkan-drivers=amd,intel,swrast
Everything recent enough from amd / intel is then covered by iris / radeonsi, while all other hardware can use swrast for opengl & vulkan .
This package would not replace mesa-git , but exist separately.
It creates smaller binaries and has shorter buildtimes then mesa-git .
I am working on such a package , but for now only have radeonsi as driver and a hard dependency on my llvm-minimal-git package.
If there's enough interest I'll add swrast and iris before publishing it to AUR.
Questions :
Would this be a valuable addition to AUR ?
Would you use this package ?
Do you agree with my choices what to keep / what to disable ?
Last edited by Lone_Wolf (2020-12-11 14:05:48)
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
It creates smaller binaries and has shorter buildtimes then mesa-git .
How significant is this?
Does it just prevent some *.so files from being built?
Does it actually avoid any dependencies?
Last edited by eschwartz (2020-12-11 14:47:46)
Managing AUR repos The Right Way -- aurpublish (now a standalone tool)
Offline
dependency difference : just libomxil-bellagio
build command used for both :
extra-x86_64-build -- -I /var/cache/pacman/pkg/llvm-minimal-git-12.0.0_r374074.1c98f984105e-1-x86_64.pkg.tar.zst -I /var/cache/pacman/pkg/llvm-libs-minimal-git-12.0.0_r374074.1c98f984105e-1-x86_64.pkg.tar.zst
==> Making package: mesa-minimal-git 21.0.0_devel.132228.574429f9528-1 (Fri 11 Dec 2020 04:35:51 PM CET)
==> Finished making: mesa-minimal-git 21.0.0_devel.132250.fd49ba59a38-1 (Fri 11 Dec 2020 04:42:11 PM CET
$ ls -l mesa-minimal-git-21.0.0_devel.132250.fd49ba59a38-1-x86_64.pkg.tar.zst
-rw-r--r-- 1 panoramix panoramix 10908892 11 dec 16:42 mesa-minimal-git-21.0.0_devel.132250.fd49ba59a38-1-x86_64.pkg.tar.zst
$
==> Making package: mesa-git 21.0.0_devel.132228.574429f9528-1 (Fri 11 Dec 2020 04:46:09 PM CET)
==> Finished making: mesa-git 21.0.0_devel.132250.fd49ba59a38-1 (Fri 11 Dec 2020 04:55:30 PM CET
$ ls -l mesa-git-21.0.0_devel.132250.fd49ba59a38-1-x86_64.pkg.tar.zst
-rw-r--r-- 1 panoramix panoramix 28773235 11 dec 16:55 mesa-git-21.0.0_devel.132250.fd49ba59a38-1-x86_64.pkg.tar.zst
$
mesa-minimal-git
buildtime 6:20
archive size 10,908,892
mesa-git
buildtime 9:21
archive size 28,773,235
The mesa-git PKGBUILD is the same as in aur, with one small change :
I added MESA_WHICH_LLVM=1 just before the top IF statement to ensure extra-x86_64-build uses llvm-minimal-git and llvm-libs-minimal-git instead of repo versions.
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
So it saves 3 minutes and 17 MB, one 0.5 MB dependency, but my other question "Does it just prevent some *.so files from being built?" goes unanswered.
Managing AUR repos The Right Way -- aurpublish (now a standalone tool)
Offline
About 19 *.so files are not build, also some include files and some folders.
Ofcourse some *.so files are build in both but differ.
A bit further down is the full report and for reference the PKGBUILD used for mesa-minimal-git used.
Do you need more info to answer my questions ?
$ diff -qr /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/ /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/
Files /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/.BUILDINFO and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/.BUILDINFO differ
Files /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/.MTREE and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/.MTREE differ
Files /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/.PKGINFO and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/.PKGINFO differ
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/include: d3dadapter
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/include/GL: osmesa.h
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/include: xa_composite.h
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/include: xa_context.h
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/include: xa_tracker.h
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib: bellagio
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib: d3d
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/dri: i915_dri.so
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/dri: i965_dri.so
Files /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/dri/iris_dri.so and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/lib/dri/iris_dri.so differ
Files /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/dri/kms_swrast_dri.so and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/lib/dri/kms_swrast_dri.so differ
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/dri: nouveau_dri.so
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/dri: nouveau_drv_video.so
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/dri: nouveau_vieux_dri.so
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/dri: r200_dri.so
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/dri: r300_dri.so
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/dri: r600_dri.so
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/dri: r600_drv_video.so
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/dri: radeon_dri.so
Files /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/dri/radeonsi_dri.so and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/lib/dri/radeonsi_dri.so differ
Files /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/dri/radeonsi_drv_video.so and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/lib/dri/radeonsi_drv_video.so differ
Files /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/dri/swrast_dri.so and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/lib/dri/swrast_dri.so differ
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/dri: virtio_gpu_dri.so
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/dri: vmwgfx_dri.so
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/dri: zink_dri.so
Files /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/gallium-pipe/pipe_iris.so and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/lib/gallium-pipe/pipe_iris.so differ
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/gallium-pipe: pipe_nouveau.so
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/gallium-pipe: pipe_r300.so
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/gallium-pipe: pipe_r600.so
Files /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/gallium-pipe/pipe_radeonsi.so and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/lib/gallium-pipe/pipe_radeonsi.so differ
Files /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/gallium-pipe/pipe_swrast.so and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/lib/gallium-pipe/pipe_swrast.so differ
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/gallium-pipe: pipe_vmwgfx.so
Files /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/libMesaOpenCL.so and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/lib/libMesaOpenCL.so differ
Files /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/libMesaOpenCL.so.1 and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/lib/libMesaOpenCL.so.1 differ
Files /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/libMesaOpenCL.so.1.0.0 and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/lib/libMesaOpenCL.so.1.0.0 differ
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib: libOSMesa.so
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib: libOSMesa.so.8
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib: libOSMesa.so.8.0.0
Files /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/libVkLayer_MESA_overlay.so and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/lib/libVkLayer_MESA_overlay.so differ
Files /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/libvulkan_intel.so and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/lib/libvulkan_intel.so differ
Files /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/libvulkan_lvp.so and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/lib/libvulkan_lvp.so differ
Files /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/libvulkan_radeon.so and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/lib/libvulkan_radeon.so differ
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib: libxatracker.so
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib: libxatracker.so.2
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib: libxatracker.so.2.5.0
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/pkgconfig: d3d.pc
Files /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/pkgconfig/dri.pc and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/lib/pkgconfig/dri.pc differ
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/pkgconfig: osmesa.pc
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib/pkgconfig: xatracker.pc
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/lib: vdpau
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-git/pkg/mesa-git/usr/share/licenses: mesa-git
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/share/licenses: mesa-minimal-git
$
PKGBUILD for mesa-minimal-git
# Maintainer: Lone_Wolf <lone_wolf@klaas-de-kat.nl>
# Contributor: Armin K. <krejzi at email dot com>
# Contributor: Kristian Klausen <klausenbusk@hotmail.com>
# Contributor: Egon Ashrafinia <e.ashrafinia@gmail.com>
# Contributor: Tavian Barnes <tavianator@gmail.com>
# Contributor: Jan de Groot <jgc@archlinux.org>
# Contributor: Andreas Radke <andyrtr@archlinux.org>
# Contributor: Thomas Dziedzic < gostrc at gmail >
# Contributor: Antti "Tera" Oja <antti.bofh@gmail.com>
# Contributor: Diego Jose <diegoxter1006@gmail.com>
pkgname=mesa-minimal-git
pkgdesc="an open-source implementation of the OpenGL specification, git version"
pkgver=21.0.0_devel.132254.84c8a35aa2c
pkgrel=1
arch=('x86_64')
makedepends=('git' 'python-mako' 'xorgproto'
'libxml2' 'libx11' 'libvdpau' 'libva' 'elfutils' 'libxrandr'
'ocl-icd' 'wayland-protocols' 'meson' 'ninja' 'glslang' 'llvm-minimal-git')
depends=('libdrm' 'libxxf86vm' 'libxdamage' 'libxshmfence' 'libelf'
'libunwind' 'libglvnd' 'wayland' 'lm_sensors' 'libclc' 'vulkan-icd-loader' 'zstd' 'llvm-libs-minimal-git')
optdepends=('opengl-man-pages: for the OpenGL API man pages'
'llvm-minimal-git: opencl')
provides=('mesa' 'opencl-mesa' 'vulkan-intel' 'vulkan-radeon' 'vulkan-mesa-layer' 'libva-mesa-driver' 'mesa-vdpau' 'mesa-vulkan' 'vulkan-driver' 'opengl-driver' 'opencl-driver')
conflicts=('mesa' 'opencl-mesa' 'vulkan-intel' 'vulkan-radeon' 'vulkan-mesa-layer' 'libva-mesa-driver' 'mesa-vdpau' 'mesa-vulkan')
url="https://www.mesa3d.org"
license=('custom')
source=('mesa::git+https://gitlab.freedesktop.org/mesa/mesa.git'
'LICENSE')
md5sums=('SKIP'
'5c65a0fe315dd347e09b1f2826a1df5a')
sha512sums=('SKIP'
'25da77914dded10c1f432ebcbf29941124138824ceecaf1367b3deedafaecabc082d463abcfa3d15abff59f177491472b505bcb5ba0c4a51bb6b93b4721a23c2')
# NINJAFLAGS is an env var used to pass commandline options to ninja
# NOTE: It's your responbility to validate the value of $NINJAFLAGS. If unsure, don't set it.
pkgver() {
cd mesa
read -r _ver <VERSION
echo ${_ver/-/_}.$(git rev-list --count HEAD).$(git rev-parse --short HEAD)
}
prepare() {
# although removing _build folder in build() function feels more natural,
# that interferes with the spirit of makepkg --noextract
if [ -d _build ]; then
rm -rf _build
fi
}
build () {
meson setup mesa _build \
-D b_ndebug=true \
-D b_lto=true \
-D buildtype=plain \
--wrap-mode=nofallback \
-D prefix=/usr \
-D sysconfdir=/etc \
-D platforms=x11,wayland \
-D dri-drivers=[] \
-D gallium-drivers=radeonsi,swrast,iris \
-D vulkan-drivers=amd,intel,swrast \
-D dri3=enabled \
-D egl=enabled \
-D gallium-extra-hud=true \
-D gallium-nine=false \
-D gallium-omx=disabled \
-D gallium-va=enabled \
-D gallium-vdpau=disabled \
-D gallium-xa=disabled \
-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=false \
-D shared-glapi=enabled \
-D gallium-opencl=icd \
-D valgrind=disabled \
-D vulkan-overlay-layer=true \
-D vulkan-device-select-layer=true \
-D tools=[] \
-D zstd=enabled \
-D microsoft-clc=disabled
meson configure _build
ninja $NINJAFLAGS -C _build
}
package() {
DESTDIR="${pkgdir}" ninja $NINJAFLAGS -C _build install
# remove script file from /usr/bin
# https://gitlab.freedesktop.org/mesa/mesa/issues/2230
rm "${pkgdir}/usr/bin/mesa-overlay-control.py"
rmdir "${pkgdir}/usr/bin"
# indirect rendering
ln -s /usr/lib/libGLX_mesa.so.0 "${pkgdir}/usr/lib/libGLX_indirect.so.0"
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${srcdir}/LICENSE"
}
Last edited by Lone_Wolf (2020-12-11 22:07:12)
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
I like the idea of a minimal mesa-git but at the same time I'm actually quite interested in the Zink developments so I would probably still stick to mesa-git then.
Offline
gallium-xa - what still uses this ?[
I think that is used only by vmware for accelerated 3d graphics.
| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |
Offline
gallium-xa - what still uses this ?[
I think that is used only by vmware for accelerated 3d graphics.
Thanks, progandy .
Zink is indeed interesting and I had overlooked it . Thank you for reminding me, raneon.
I temporarily created mesa-minimal-zink-git PKGBUILD to check the impact adding zink has.
==> Making package: mesa-minimal-zink-git 21.0.0_devel.132254.84c8a35aa2c-1 (za 12 dec 2020 20:30:28 CET)
==> Finished making: mesa-minimal-zink-git 21.0.0_devel.132254.84c8a35aa2c-1 (Sat 12 Dec 2020 08:37:00 PM CET)
$ ls -l mesa-minimal-zink-git-21.0.0_devel.132254.84c8a35aa2c-1-x86_64.pkg.tar.zst
-rw-r--r-- 1 panoramix panoramix 10980711 12 dec 20:37 mesa-minimal-zink-git-21.0.0_devel.132254.84c8a35aa2c-1-x86_64.pkg.tar.zst
$
$ diff -qr /home/panoramix/Temp/zink/pkg/mesa-minimal-zink-git/ /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/
Files /home/panoramix/Temp/zink/pkg/mesa-minimal-zink-git/.BUILDINFO and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/.BUILDINFO differ
Files /home/panoramix/Temp/zink/pkg/mesa-minimal-zink-git/.MTREE and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/.MTREE differ
Files /home/panoramix/Temp/zink/pkg/mesa-minimal-zink-git/.PKGINFO and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/.PKGINFO differ
Files /home/panoramix/Temp/zink/pkg/mesa-minimal-zink-git/usr/lib/dri/iris_dri.so and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/lib/dri/iris_dri.so differ
Files /home/panoramix/Temp/zink/pkg/mesa-minimal-zink-git/usr/lib/dri/kms_swrast_dri.so and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/lib/dri/kms_swrast_dri.so differ
Files /home/panoramix/Temp/zink/pkg/mesa-minimal-zink-git/usr/lib/dri/radeonsi_dri.so and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/lib/dri/radeonsi_dri.so differ
Files /home/panoramix/Temp/zink/pkg/mesa-minimal-zink-git/usr/lib/dri/swrast_dri.so and /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/lib/dri/swrast_dri.so differ
Only in /home/panoramix/Temp/zink/pkg/mesa-minimal-zink-git/usr/lib/dri: zink_dri.so
Only in /home/panoramix/Documents/Aur/pkgbuilds/mesa-minimal-git/pkg/mesa-minimal-git/usr/share/licenses: mesa-minimal-git
Only in /home/panoramix/Temp/zink/pkg/mesa-minimal-zink-git/usr/share/licenses: mesa-minimal-zink-git
$
buildtime 6:32 , archive size 10,980,711 and minimal additional files compared to mesa-minimal-git .
Adding zink appears to have low impact on buildtime and binary size.
I've added it to my own version.
Edit : forgot to mention raneon, also clarified lines about zink a bit.
Last edited by Lone_Wolf (2020-12-13 14:40:01)
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
Mesa-minimal-git & lib32-mesa-minimal-git have now been in use on my main system for several weeks without issues.
I'll wait a few days for responses and if no one raises objections I'll submit it to AUR.
EdIt #1
for reference the current version of the PKGBUILD
# Maintainer: Lone_Wolf <lone_wolf@klaas-de-kat.nl>
# Contributor: Armin K. <krejzi at email dot com>
# Contributor: Kristian Klausen <klausenbusk@hotmail.com>
# Contributor: Egon Ashrafinia <e.ashrafinia@gmail.com>
# Contributor: Tavian Barnes <tavianator@gmail.com>
# Contributor: Jan de Groot <jgc@archlinux.org>
# Contributor: Andreas Radke <andyrtr@archlinux.org>
# Contributor: Thomas Dziedzic < gostrc at gmail >
# Contributor: Antti "Tera" Oja <antti.bofh@gmail.com>
# Contributor: Diego Jose <diegoxter1006@gmail.com>
pkgname=mesa-minimal-git
pkgdesc="an open-source implementation of the OpenGL specification, stripped down git version"
pkgver=21.0.0_devel.132851.24dcdc3fa94
pkgrel=1
arch=('x86_64')
makedepends=('git' 'python-mako' 'xorgproto'
'libxml2' 'libx11' 'libvdpau' 'libva' 'elfutils' 'libxrandr'
'ocl-icd' 'wayland-protocols' 'meson' 'ninja' 'glslang' 'llvm-minimal-git')
depends=('libdrm' 'libxxf86vm' 'libxdamage' 'libxshmfence' 'libelf'
'libunwind' 'libglvnd' 'wayland' 'lm_sensors' 'libclc' 'vulkan-icd-loader' 'zstd' 'llvm-libs-minimal-git')
# In order to keep the package simple and ease troubleshooting only use one llvm implementation
optdepends=('opengl-man-pages: for the OpenGL API man pages'
'llvm-minimal-git: opencl')
provides=('mesa' 'opencl-mesa' 'vulkan-intel' 'vulkan-radeon' 'vulkan-mesa-layer' 'libva-mesa-driver' 'vulkan-swrast' 'vulkan-driver' 'opengl-driver' 'opencl-driver')
conflicts=('mesa' 'opencl-mesa' 'vulkan-intel' 'vulkan-radeon' 'vulkan-mesa-layer' 'libva-mesa-driver' 'vulkan-swrast' 'mesa-vdpau')
# mixing components from different mesa versions is a bad idea, conflict with everything unique provided by extra/mesa
url="https://www.mesa3d.org"
license=('custom')
source=('mesa::git+https://gitlab.freedesktop.org/mesa/mesa.git'
'LICENSE')
md5sums=('SKIP'
'5c65a0fe315dd347e09b1f2826a1df5a')
sha512sums=('SKIP'
'25da77914dded10c1f432ebcbf29941124138824ceecaf1367b3deedafaecabc082d463abcfa3d15abff59f177491472b505bcb5ba0c4a51bb6b93b4721a23c2')
# ninja grabs all available cores and leaves almost nothing for other processes.
# this package uses the environment variable NINJAFLAGS to allow the user to change this behaviour
# The responsibility to validate the value of NINJAFLAGS lies with the user.
# If unsure, use NINJAFLAGS=""
pkgver() {
cd mesa
read -r _ver <VERSION
echo ${_ver/-/_}.$(git rev-list --count HEAD).$(git rev-parse --short HEAD)
}
prepare() {
# although removing _build folder in build() function feels more natural,
# that interferes with the spirit of makepkg --noextract
if [ -d _build ]; then
rm -rf _build
fi
}
build () {
meson setup mesa _build \
-D b_ndebug=true \
-D b_lto=true \
-D buildtype=plain \
--wrap-mode=nofallback \
-D prefix=/usr \
-D sysconfdir=/etc \
-D platforms=x11,wayland \
-D dri-drivers=[] \
-D gallium-drivers=radeonsi,swrast,iris,zink \
-D vulkan-drivers=amd,intel,swrast \
-D dri3=enabled \
-D egl=enabled \
-D gallium-extra-hud=true \
-D gallium-nine=false \
-D gallium-omx=disabled \
-D gallium-va=enabled \
-D gallium-vdpau=disabled \
-D gallium-xa=disabled \
-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=false \
-D shared-glapi=enabled \
-D gallium-opencl=icd \
-D valgrind=disabled \
-D vulkan-overlay-layer=true \
-D vulkan-device-select-layer=true \
-D tools=[] \
-D zstd=enabled \
-D microsoft-clc=disabled
meson configure _build
ninja $NINJAFLAGS -C _build
}
package() {
DESTDIR="${pkgdir}" ninja $NINJAFLAGS -C _build install
# remove script file from /usr/bin
# https://gitlab.freedesktop.org/mesa/mesa/issues/2230
rm "${pkgdir}/usr/bin/mesa-overlay-control.py"
rmdir "${pkgdir}/usr/bin"
# indirect rendering
ln -s /usr/lib/libGLX_mesa.so.0 "${pkgdir}/usr/lib/libGLX_indirect.so.0"
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" "${srcdir}/LICENSE"
}
Edit #2 :
Someone else already created a package named mesa-minimal-git , I posted a comment there.
Last edited by Lone_Wolf (2021-01-07 10:17:06)
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
While I understand that some things are not used and should be disabled but I this a solution for a problem that you created.
First you reverted split packaging for mesa-git and now there are features that you don't want.
If you had split packages you can group them in subpackages.
I don't think creating an extra package is worth the maintenance.
Linux odin 3.13.1-pf #1 SMP PREEMPT Wed Mar 5 21:47:28 CET 2014 x86_64 GNU/Linux
Offline