Skip to content
Snippets Groups Projects

temp/mesa-git: new aport

Merged Imported Administrator requested to merge temp/mesa into master

Some devices need bleeding edge drivers, for example the Hammerhead to have a non-broken Freedreno driver, the Pine devices to use newer versions of Lima (as it's currently an unstable driver still), etc. Every other device can use Alpine's drivers.

So to replace our current mess of Mesa packging, replace both our forked mesa and the Freedreno one with a general mesa-git package. This way we don't need to have it on version 9999, can use a bleeding edge version only for the devices that need it, and can enable new drivers in the future when needed before it's upstreamed to Alpine.

Devices requiring this driver rather than Alpine's should explicitly depend on mesa-git, mesa-git-glapi, mesa-git-gl and mesa-git-dri-<required driver> to not cause dependency conflicts. In theory a device can be switched back to a stable version of Mesa by removing -git from the Mesa entries in the dependency list, but I haven't tested this.

This MR basically makes !519 (closed) unnecessary.

Edited by Administrator

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • Administrator added category::device category::upgrade + 1 deleted label · Imported

    added category::device category::upgrade + 1 deleted label

  • Administrator added 3 commits · Imported

    added 3 commits

    • f5161ff5 - device-asus-flo: use mesa-git
    • 1b1b0bfe - device-sony-castor-windy: use mesa-git
    • a47d3015 - device-sony-sirius: use mesa-git

    Compare with previous version

    By Bart Ribbers on 2019-07-25T20:54:58

  • Author Owner

    UPDATE: Please ignore the below, I needed to pmbootstrap init again (or maybe just zap?)


    IGNORE THIS PLEASE!

    I tried this out, though I don't know if it would be expected to work. I'm on a nexus 5. I just checked out this branch and ran pmbootstrap install.

    The script ended with:

    jadams ~/.l/v/p/c/pmaports λ pmbootstrap install
    [19:27:43] *** (1/5) PREPARE NATIVE CHROOT ***
    [19:27:43] *** (2/5) CREATE DEVICE ROOTFS ("lg-hammerhead") ***
    [19:27:43] Update package index for armv7 (4 file(s))
    [sudo] password for jadams: 
    [19:28:01] Update package index for x86_64 (4 file(s))
    [19:28:05] (buildroot_armv7) install alpine-base
    [19:28:06] (buildroot_armv7) install abuild build-base ccache
    [19:29:16] (buildroot_armv7) generate abuild keys
    [19:29:23] (buildroot_armv7) install bison elfutils-dev eudev-dev expat-dev flex gettext libdrm-dev libtool libva-dev libvdpau-dev libx11-dev libxcb-dev libxdamage-dev libxext-dev libxfixes-dev libxrandr-dev libxshmfence-dev libxt-dev libxvmc-dev libxxf86vm-dev llvm8-dev makedepend meson py-mako py3-libxml2 python3 talloc-dev wayland-dev wayland-protocols xorgproto zlib-dev
    [19:30:14] (native) install ccache-cross-symlinks gcc-armv7 g++-armv7 crossdirect
    [19:32:09] (buildroot_armv7) build armv7/mesa-git-0_git20190725-r0.apk
    [19:45:21] (buildroot_armv7) install linux-postmarketos-qcom mesa-git mesa-git-dri-freedreno mesa-git-gl mesa-git-glapi mkbootimg ofono postmarketos-base
    [sudo] password for jadams: 
    [19:45:51] (buildroot_armv7) build armv7/device-lg-hammerhead-2-r7.apk
    [19:45:57] (rootfs_lg-hammerhead) install
    [19:46:43] NOTE: The failed command's output is above the ^^^ line in the log file: /home/jadams/.local/var/pmbootstrap/log.txt
    [19:46:43] ERROR: Command failed: (rootfs_lg-hammerhead) % apk --no-progress add -u --virtual .pmbootstrap mesa-gl postmarketos-mkinitfs mkinitfs glib networkmanager networkmanager-openrc mesa /mnt/pmbootstrap-packages/armv7/device-lg-hammerhead-2-r7.apk xkeyboard-config virtboard libxvmc /mnt/pmbootstrap-packages/armv7/mesa-git-0_git20190725-r0.apk
    [19:46:43] See also: <https://postmarketos.org/troubleshooting>
    Run 'pmbootstrap log' for details.
    

    Here's the error log. It contains entries like this:

    ERROR: mesa-git-glapi-0_git20190725-r0: trying to overwrite usr/lib/libglapi.so.0 owned by mesa-freedreno-glapi-19.1.0_git20190620-r9.
    ERROR: mesa-git-glapi-0_git20190725-r0: trying to overwrite usr/lib/libglapi.so.0.0.0 owned by mesa-freedreno-glapi-19.1.0_git20190620-r9.
    (4/20) Installing mesa-git (0_git20190725-r0)
    ERROR: mesa-git-0_git20190725-r0: trying to overwrite usr/share/drirc.d/00-mesa-defaults.conf owned by mesa-freedreno-19.1.0_git20190620-r9.
    (5/20) Installing mesa-git-gl (0_git20190725-r0)
    ERROR: mesa-git-gl-0_git20190725-r0: trying to overwrite usr/lib/libGL.so.1 owned by mesa-freedreno-gl-19.1.0_git20190620-r9.
    ERROR: mesa-git-gl-0_git20190725-r0: trying to overwrite usr/lib/libGL.so.1.2.0 owned by mesa-freedreno-gl-19.1.0_git20190620-r9.
    ERROR: mesa-git-dri-freedreno-0_git20190725-r0: trying to overwrite usr/lib/xorg/modules/dri/kgsl_dri.so owned by mesa-freedreno-dri-freedreno-19.1.0_git20190620-r9.
    ERROR: mesa-git-dri-freedreno-0_git20190725-r0: usr/lib/xorg/modules/dri/msm_dri.so: no hard link target (usr/lib/xorg/modules/dri/kgsl_dri.so) in archive
    lddtree: /usr/lib/libGL.so.1: file does not exist

    By Josh Adams on 2019-07-26T01:21:40

    Edited by Administrator
  • Administrator changed the description · Imported

    changed the description

    By Martijn Braam on 2019-07-27T11:00:01

  • Author Owner

    Seems to work for me, for using mesa git I had to add basically all mesa-* things to my device APKBUILD to make it work, I guess it depends on the UI you install.

    By Martijn Braam on 2019-07-27T11:01:10

  • Administrator added 11 commits · Imported

    added 11 commits

    Compare with previous version

    By Martijn Braam on 2019-07-27T15:50:52

  • Administrator added 9 commits · Imported

    added 9 commits

    Compare with previous version

    By Bart Ribbers on 2019-07-27T16:22:21

  • Author Owner

    Tested on the pinetab and on the hammerhead, mesa-git works fine but the devices depending on it don't have enough of the dependencies added to make the older mesa go away.

    By Martijn Braam on 2019-07-27T17:12:20

  • Administrator added 7 commits · Imported

    added 7 commits

    Compare with previous version

    By Martijn Braam on 2019-07-27T18:39:07

  • Administrator approved this merge request · Imported

    approved this merge request

    By Martijn Braam on 2019-07-27T18:44:59

  • Administrator resolved all threads · Imported

    resolved all threads

    By Martijn Braam on 2019-07-27T18:46:04

  • Administrator merged · Imported

    merged

    By Martijn Braam on 2019-07-27T18:46:15

  • Administrator mentioned in commit ce7e4d79 · Imported

    mentioned in commit ce7e4d79

    By Bart Ribbers on 2019-07-27T18:46:15

  • Administrator mentioned in commit bb00212b · Imported

    mentioned in commit bb00212b

    By Bart Ribbers on 2019-07-27T18:46:16

  • Administrator mentioned in merge request !519 (closed) · Imported

    mentioned in merge request !519 (closed)

    By Martijn Braam on 2019-07-27T18:47:12

  • Administrator mentioned in commit 84492bef · Imported

    mentioned in commit 84492bef

    By Oliver Smith on 2019-07-28T08:49:58

  • Administrator mentioned in commit 944460fa · Imported

    mentioned in commit 944460fa

    By Bart Ribbers on 2019-08-01T20:52:11

  • Administrator mentioned in commit 28a04f8f · Imported

    mentioned in commit 28a04f8f

    By Bart Ribbers on 2019-08-01T20:52:11

  • Administrator mentioned in commit b11d96dc · Imported

    mentioned in commit b11d96dc

    By Bart Ribbers on 2019-08-01T20:52:14

  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
Please register or sign in to reply
Loading