Looking for mesa [pkg-upd] 23.1.5 on gitlab so can recompile mesa

Looking for mesa [pkg-upd] 23.1.5 on gitlab so can recompile mesa.

Had to downgrade to mesa 23.0.4-1 to add support for:
-D video-codecs=vc1dec,h264dec,h264enc,h265dec,h265enc \

Can we get mesa [pkg-upd] 23.1.5 on gitlab?

Wrong branch. :wink:

Tried downloading from the parent branch, editing PKGBUILD with the -D video-codecs=vc1dec,h264dec,h264enc,h265dec,h265enc \ modification. Compilation was successful. But installing the compiled mesa drivers did not provide support for the required codecs.

Looking here

Don’t add the backslash. Notice the Meson options are in they’re own local meson_options=() array.

Note that I’ve moved the discussion to it’s own Support topic.

For build tools:

sudo pacman -Syu base-devel git bison byacc polly flex --needed

Clone

git clone https://github.com/mesa-freeworld/mesa-nonfree.git

Sync dependencies, and build

$ cd mesa-nonfree
$ makepkg --syncdeps

Install built files as root

# pacman -U *

Can’t get it working for AMD KABINI R300:

$ vainfo
Trying display: wayland
Trying display: x11
vainfo: VA-API version: 1.19 (libva 2.19.0)
vainfo: Driver version: Mesa Gallium driver 23.1.5 for KABINI (, LLVM 15.0.7, DRM 2.50, 6.1.44-1-MANJARO)
vainfo: Supported profile and entrypoints
      VAProfileNone                   :	VAEntrypointVideoProc
$ 

Had to install old drivers:

$ vainfo
Trying display: wayland
Trying display: x11
vainfo: VA-API version: 1.19 (libva 2.19.0)
vainfo: Driver version: Mesa Gallium driver 23.0.4 for KABINI (, LLVM 15.0.7, DRM 2.50, 6.1.44-1-MANJARO)
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSlice
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointEncSlice
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointEncSlice
      VAProfileNone                   :	VAEntrypointVideoProc
$

Technically you can use the PKGBUILD from https://github.com/mesa-freeeworld/mesa-nonfree.

Don’t clone the repo - the docs folder contains the packages used for the https://nonfree.eu repo.

Simply copy the PKGBILD into a folder of your choice - then cd into the folder and run makepkg -is

If you would like to skip building you can use directions found at https://nonfree.eu

Followed instructions here for https://nonfree.eu

No luck
$ vainfo
Trying display: wayland
Trying display: x11
vainfo: VA-API version: 1.19 (libva 2.19.0)
vainfo: Driver version: Mesa Gallium driver 23.1.5 for KABINI (, LLVM 15.0.7, DRM 2.50, 6.1.44-1-MANJARO)
vainfo: Supported profile and entrypoints
      VAProfileNone                   :	VAEntrypointVideoProc
$ su
Password: 
# pacman-key --recv-keys B728DB23B92CB01B && \
> pacman-key --lsign-key B728DB23B92CB01B
gpg: key B728DB23B92CB01B: public key "Mesa Freeworld <info@manjaro.download>" imported
gpg: Total number processed: 1
gpg:               imported: 1
  -> Locally signed 1 keys.
==> Updating trust database...
gpg: public key DB323392796CA067 is 3037 days newer than the signature
gpg: marginals needed: 3  completes needed: 1  trust model: pgp
gpg: depth: 0  valid:   1  signed:  22  trust: 0-, 0q, 0n, 0m, 0f, 1u
gpg: depth: 1  valid:  22  signed:  99  trust: 1-, 0q, 0n, 21m, 0f, 0u
gpg: depth: 2  valid:  77  signed:  31  trust: 77-, 0q, 0n, 0m, 0f, 0u
gpg: next trustdb check due at 2023-10-27
# sh -c "curl -s https://nonfree.eu/$(pacman-mirrors -G)/ > /etc/pacman.d/mesa-nonfree.pre.repo.conf"
# sed -i '/^\[core\]/i \Include = /etc/pacman.d/mesa-nonfree.pre.repo.conf\n' /etc/pacman.conf
# pacman -Syyuw
:: Synchronizing package databases...
 mesa-nonfree            8.8 KiB  19.3 KiB/s 00:00 [--------------] 100%
 core                  145.7 KiB   199 KiB/s 00:01 [--------------] 100%
 extra                   8.6 MiB  1731 KiB/s 00:05 [--------------] 100%
 multilib              146.8 KiB   227 KiB/s 00:01 [--------------] 100%
:: Starting full system upgrade...
warning: lib32-libva-mesa-driver: local (23.1.5-2) is newer than mesa-nonfree (23.1.2-1)
warning: lib32-mesa: local (23.1.5-2) is newer than mesa-nonfree (23.1.2-1)
warning: lib32-mesa-vdpau: local (23.1.5-2) is newer than mesa-nonfree (23.1.2-1)
warning: lib32-vulkan-intel: local (23.1.5-2) is newer than mesa-nonfree (23.1.2-1)
warning: lib32-vulkan-radeon: local (23.1.5-2) is newer than mesa-nonfree (23.1.2-1)
resolving dependencies...

Packages (10) libva-mesa-driver-1:23.1.5-2  mesa-1:23.1.5-2
              mesa-vdpau-1:23.1.5-2  opencl-clover-mesa-1:23.1.5-2
              opencl-rusticl-mesa-1:23.1.5-2  vulkan-intel-1:23.1.5-2
              vulkan-mesa-layers-1:23.1.5-2  vulkan-radeon-1:23.1.5-2
              vulkan-swrast-1:23.1.5-2  vulkan-virtio-1:23.1.5-2

Total Download Size:  75.04 MiB

:: Proceed with download? [Y/n] y
:: Retrieving packages...
 vulkan-intel-1.2...     7.2 MiB   561 KiB/s 00:13 [--------------] 100%
 opencl-rusticl-m...     7.2 MiB   516 KiB/s 00:14 [--------------] 100%
 libva-mesa-drive...     4.4 MiB   486 KiB/s 00:09 [--------------] 100%
 mesa-vdpau-1.23....     4.1 MiB   491 KiB/s 00:08 [--------------] 100%
 vulkan-swrast-1....     2.1 MiB   478 KiB/s 00:04 [--------------] 100%
 vulkan-radeon-1....     2.7 MiB   504 KiB/s 00:05 [--------------] 100%
 vulkan-virtio-1....   418.2 KiB   433 KiB/s 00:01 [--------------] 100%
 vulkan-mesa-laye...   310.2 KiB   377 KiB/s 00:01 [--------------] 100%
 opencl-clover-me...    18.0 MiB   577 KiB/s 00:32 [--------------] 100%
 mesa-1.23.1.5-2-...    28.8 MiB   784 KiB/s 00:38 [--------------] 100%
 Total (10/10)          75.0 MiB  2042 KiB/s 00:38 [--------------] 100%
(10/10) checking keys in keyring                   [--------------] 100%
(10/10) checking package integrity                 [--------------] 100%
# pacman -Syu
:: Synchronizing package databases...
 mesa-nonfree is up to date
 core is up to date
 extra is up to date
 multilib is up to date
:: Starting full system upgrade...
warning: lib32-libva-mesa-driver: local (23.1.5-2) is newer than mesa-nonfree (23.1.2-1)
warning: lib32-mesa: local (23.1.5-2) is newer than mesa-nonfree (23.1.2-1)
warning: lib32-mesa-vdpau: local (23.1.5-2) is newer than mesa-nonfree (23.1.2-1)
warning: lib32-vulkan-intel: local (23.1.5-2) is newer than mesa-nonfree (23.1.2-1)
warning: lib32-vulkan-radeon: local (23.1.5-2) is newer than mesa-nonfree (23.1.2-1)
resolving dependencies...
looking for conflicting packages...

Packages (10) libva-mesa-driver-1:23.1.5-2  mesa-1:23.1.5-2
              mesa-vdpau-1:23.1.5-2  opencl-clover-mesa-1:23.1.5-2
              opencl-rusticl-mesa-1:23.1.5-2  vulkan-intel-1:23.1.5-2
              vulkan-mesa-layers-1:23.1.5-2  vulkan-radeon-1:23.1.5-2
              vulkan-swrast-1:23.1.5-2  vulkan-virtio-1:23.1.5-2

Total Installed Size:  254.80 MiB
Net Upgrade Size:        0.01 MiB

:: Proceed with installation? [Y/n] y
(10/10) checking keys in keyring                   [--------------] 100%
(10/10) checking package integrity                 [--------------] 100%
(10/10) loading package files                      [--------------] 100%
(10/10) checking for file conflicts                [--------------] 100%
(10/10) checking available disk space              [--------------] 100%
:: Running pre-transaction hooks...
(1/1) Creating Timeshift snapshot before upgrade...
First run mode (config file not found)
Selected default snapshot type: BTRFS
Using system disk as snapshot device for creating snapshots in BTRFS mode
Mounted '/dev/sda7' at '/run/timeshift/2543/backup'
btrfs: Quotas are not enabled
Creating new backup...(BTRFS)
Saving to device: /dev/sda7, mounted at path: /run/timeshift/2543/backup
Created directory: /run/timeshift/2543/backup/timeshift-btrfs/snapshots/2023-08-13_06-41-08
Created subvolume snapshot: /run/timeshift/2543/backup/timeshift-btrfs/snapshots/2023-08-13_06-41-08/@
Created control file: /run/timeshift/2543/backup/timeshift-btrfs/snapshots/2023-08-13_06-41-08/info.json
BTRFS Snapshot saved successfully (0s)
Tagged snapshot '2023-08-13_06-41-08': ondemand
------------------------------------------------------------------------------
First run mode (config file not found)
Selected default snapshot type: BTRFS
Mounted '/dev/sda7' at '/run/timeshift/2683/backup'
btrfs: Quotas are not enabled
Selected default snapshot device: /dev/sda7
------------------------------------------------------------------------------
Removing snapshot: 2023-08-13_00-14-09
Deleting subvolume: @ (Id:317)
Deleted subvolume: @ (Id:317)

Deleted directory: /run/timeshift/2683/backup/timeshift-btrfs/snapshots/2023-08-13_00-14-09
Removed snapshot: 2023-08-13_00-14-09
------------------------------------------------------------------------------
Generating grub configuration file ...
Found theme: /usr/share/grub/themes/manjaro/theme.txt
Found linux image: /boot/vmlinuz-6.1-x86_64
Found initrd image: /boot/amd-ucode.img /boot/initramfs-6.1-x86_64.img
Found initrd fallback image: /boot/initramfs-6.1-x86_64-fallback.img
Warning: os-prober will be executed to detect other bootable partitions.
Its output will be used to detect bootable binaries on them and create new boot entries.
Found Windows Boot Manager on /dev/sda1@/efi/Microsoft/Boot/bootmgfw.efi
Adding boot menu entry for UEFI Firmware Settings ...
Detecting snapshots ...
Found snapshot: 2023-08-13 06:41:08 | timeshift-btrfs/snapshots/2023-08-13_06-41-08/@ | ondemand | {timeshift-autosnap} {created before upgrade} |
Found snapshot: 2023-08-13 00:25:11 | timeshift-btrfs/snapshots/2023-08-13_00-25-11/@ | ondemand | {timeshift-autosnap} {created before upgrade} |
Found snapshot: 2023-08-13 00:23:52 | timeshift-btrfs/snapshots/2023-08-13_00-23-52/@ | ondemand | {timeshift-autosnap} {created before upgrade} |
Found 3 snapshot(s)
Unmount /tmp/grub-btrfs.PwOemGuWUf .. Success
Found memtest86+ image: /boot/memtest86+/memtest.bin
done
:: Processing package changes...
( 1/10) upgrading libva-mesa-driver                [--------------] 100%
( 2/10) upgrading mesa                             [--------------] 100%
( 3/10) upgrading mesa-vdpau                       [--------------] 100%
( 4/10) upgrading opencl-clover-mesa               [--------------] 100%
( 5/10) upgrading opencl-rusticl-mesa              [--------------] 100%
( 6/10) upgrading vulkan-intel                     [--------------] 100%
( 7/10) upgrading vulkan-mesa-layers               [--------------] 100%
( 8/10) upgrading vulkan-radeon                    [--------------] 100%
( 9/10) upgrading vulkan-swrast                    [--------------] 100%
(10/10) upgrading vulkan-virtio                    [--------------] 100%
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...
# exit
exit
$ vainfo
Trying display: wayland
Trying display: x11
vainfo: VA-API version: 1.19 (libva 2.19.0)
vainfo: Driver version: Mesa Gallium driver 23.1.5 for KABINI (, LLVM 15.0.7, DRM 2.50, 6.1.44-1-MANJARO)
vainfo: Supported profile and entrypoints
      VAProfileNone                   :	VAEntrypointVideoProc
$

Attempted to make this response, but could not even see your post.
So had to downgrade mesa before being able to make this post:

$ vainfo
Trying display: wayland
Trying display: x11
vainfo: VA-API version: 1.19 (libva 2.19.0)
vainfo: Driver version: Mesa Gallium driver 23.0.4 for KABINI (, LLVM 15.0.7, DRM 2.50, 6.1.44-1-MANJARO)
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSlice
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointEncSlice
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointEncSlice
      VAProfileNone                   :	VAEntrypointVideoProc
$ 

Now element-desktop does not display correctly.

I don’t even know what that is …

From what I could look up in a jiffy - it seems the GPU was first manufactured a long time ago.

I wouldn’t expect such GPU to support the same as more recent GPUs.

So what you are trying to achieve may not be possible - at least not if the GPU is no longer supported - for whatever you are doing.

The gpu AMD R300 appears to be EOL - judging from the AMD web where it is not possible to locate drivers for it - this makes it even harder for you.

https://www.amd.com/en/support

After re-booting, element-desktop displays correctly.

So the older display drivers work!

$ vainfo
Trying display: wayland
Trying display: x11
vainfo: VA-API version: 1.19 (libva 2.19.0)
vainfo: Driver version: Mesa Gallium driver 23.0.4 for KABINI (, LLVM 15.0.7, DRM 2.50, 6.1.44-1-MANJARO)
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSlice
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointEncSlice
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointEncSlice
      VAProfileNone                   :	VAEntrypointVideoProc
$ 

the repo is gone?

Appears any graphics card with OpenGL < 3.3 will not have support going forward.