Después de haber publicado el post anterior sobre Stellarium causa parpadeos en Fedora 35, al poco tiempo después, recibo un correo electrónico indicando que habían añadido más información al tema en el bug abierto en MESA. Resulta que era un desarrollador que había publicado un Patch. Me sugirió que lo compilara y lo instalara en la máquina:

There’s a patch for this issue already, which you have to apply MANUALLY compiling mesa: pzanoni/mesa@07dc3d42 Again: There is no official release containing this patch, yet (mesa is at version 21.3.4 at the time of this writing).

En vez de hacerlo de forma rudimentaria, decidí construir un paquete RPM para Fedora.

  1. Instalar fedpkg
sudodnfinstallfedpkg
  1. Crear el entorno de compilación
rpmdev-setuptree
  1. Ubicarnos y descargar el último SRPM
cddnf~/dropwmnbluoialdd/S-RsPoMuSrc\emesa
  1. Descomprimir las fuentes
rpm2cpiomesa-21.3.3-2.fc35.src.rpm|cpio-idmvD~/rpmbuild/SOURCES
  1. Mover el spec
mv~/rpmbuild/SOURCES/mesa.spec~/rpmbuild/SPECS
  1. Descomprimir las fuentes, obtener el archivo original, hacemos una copia para introducir el nuevo código, añadimos el nuevo código en él, y hacemos el patch.
tc~d~ap/i/rrfr~pfpx/mmfrb-bvpuuumiri~blNl/uddri/~plSSmdOrOb/UpUuSRmRiOCbClUEuEdRSiS/C/l/SEidiOSr/rU/iSiRmsOsCe_U_EsbRbSaaCa/-tEtm2cSce1h/hs._m_a3mem-.oso23dad1i-i.sf2f3ri1i.ce.e3d3d.g...tac3cal/rls>.irxuc0zm/0/g0-da7Crl-ili~ir/euirrmsps/-m/dsbirouriliivvlseedr-isbSr/lOiiiUsrnR_ikCbssEa/-Stip/crrhio.sbc_lbe\amtsc.hp.actc\h
  1. Editamos el ~/rpmbuild/SPECS/mesa.spec y vamos realizando los siguientes pasos:

    1. Sumamos +1 al release_number, en vez de 1, fijamos en 2
    2. Buscamos la sección de los parches listados y añadimos un comentario diciendo de dónde se obtuvo el código cambiado y luego Patch0009: 0007-iris-solve-blinks-problems.patch
    3. Vamos a la sección de changelog y añadimos nuestro comentario:
      -SSaotlvJeanIn1t5el20b2l2inÁklivnagroprCoabslteimlslo<sincorchetes@fedoraproject.org>21.3.3-2
    4. Guardamos
  2. Preparamos el entorno antes de construir el paquete

sudodnfbuilddepmesa
  1. Construimos el paquete
rpmbuild-ba~/rpmbuild/SPECS/mesa.spec

Cuando todo acabe, nos habrán generado los paquetes en ~/rpmbuild/RPMS/x86_64/, aplicamos la actualización:

csmmmmdueeeedssss~aaaa----rdlllvpniiidmfbbbpbEggauiGbluinLma-ls--pddt22ir/a11-iRl..2vPl331eM...rSm333s/e--.-xs22328a..-16-ff2._dcc.36r33f.4i55c3/-..3-dxx52r88..i66xfv__8ce6663r44_5s..6.-rr4x2pp.81mmr6.p_3mmm6.ee43ssm.-aaer2--sp.flamfii-clblm3eGie5sLbs.y-xaxs2a-8t1tv6e.ru_m3al6-.ck423ka.1-enr.2r-p3.-dm.f2r3c1i\-3.v253e...rfx3sc8--36225_.1.6f.x4c38.3.6r53_p.-6mx248..\6fr_cp63m45..\rxp8m6_\64.rpm
  1. Reiniciamos

  2. Abrimos Stellarium y ya lo tendremos sin problemas de parpadeos.

Después de haber hecho y haberlo probado en local, lo mandé a Koji (el sistema de compilación de paquetes de Fedora) para que se hiciera ahí, y adjunté el resultado de la compilación al BR para que lo puedan incluir en alguna update de Fedora.

Para mandar la solicitud de compilación a Koji, tienes que registrarte y obtener una FAS, firmar el CLA de Fedora y no sé si falta algún pasito más, luego de eso.

  1. Instalar el kinit
sudodnfinstallkrb5-workstation
  1. Loguearnos
kinitnombre_usuario_fas@FEDORAPROJECT.ORG
  1. Probar que hicimos bien el login
kojihello
  1. Subir la solicitud a Koji
kojikojibuild-scratchf35~/rpmbuild/SRPMS/mesa-21.3.3-2.fc35.src.rpm
  1. El comando quedará en primer plano informando del proceso de la solicitud, puedes ver el mío aquí

Puedes descargarte los paquetes desde aquí

Fuentes