#2293 closed task (fixed)
RHEL 8 / CentOS 8 support
Reported by: | Antoine Martin | Owned by: | Antoine Martin |
---|---|---|---|
Priority: | critical | Milestone: | 3.0 |
Component: | packaging | Version: | 2.5.x |
Keywords: | Cc: |
Change History (12)
comment:1 Changed 3 years ago by
Status: | new → assigned |
---|---|
Summary: | RHEL8 support → RHEL 8 / CentOS 8 support |
comment:2 Changed 3 years ago by
Probably worth waiting for the release to ensure the specfile is in working order.
comment:4 Changed 3 years ago by
Not sure they're all needed, but I've installed:
yum groupinstall 'Development Tools'
Then installing the build dependencies for xpra.
Still seems to be missing quite a few packages:
error: Failed build dependencies: desktop-backgrounds-compat is needed by xpra-3.0-0.20190925r23930.el8_0.x86_64 ffmpeg-xpra-devel is needed by xpra-3.0-0.20190925r23930.el8_0.x86_64 gobject-introspection-devel is needed by xpra-3.0-0.20190925r23930.el8_0.x86_64 js-jquery is needed by xpra-3.0-0.20190925r23930.el8_0.x86_64 libfakeXinerama is needed by xpra-3.0-0.20190925r23930.el8_0.x86_64 libxkbfile-devel is needed by xpra-3.0-0.20190925r23930.el8_0.x86_64 libyuv-devel is needed by xpra-3.0-0.20190925r23930.el8_0.x86_64 pygobject3-devel is needed by xpra-3.0-0.20190925r23930.el8_0.x86_64 python2-cryptography is needed by xpra-3.0-0.20190925r23930.el8_0.x86_64 python2-pyxdg is needed by xpra-3.0-0.20190925r23930.el8_0.x86_64 python2-rencode is needed by xpra-3.0-0.20190925r23930.el8_0.x86_64 python3-Cython is needed by xpra-3.0-0.20190925r23930.el8_0.x86_64 python3-cairo-devel is needed by xpra-3.0-0.20190925r23930.el8_0.x86_64 python3-rencode is needed by xpra-3.0-0.20190925r23930.el8_0.x86_64 turbojpeg-devel is needed by xpra-3.0-0.20190925r23930.el8_0.x86_64 uglify-js is needed by xpra-3.0-0.20190925r23930.el8_0.x86_64 x264-xpra-devel is needed by xpra-3.0-0.20190925r23930.el8_0.x86_64 xclip is needed by xpra-3.0-0.20190925r23930.el8_0.x86_64
(adding yum --enablerepo=extras install epel-release
does not help)
Downloading a bunch of packages directly from https://access.redhat.com/downloads/content/package-browser (why aren't those in the centos repos?) and applying some dependency updates in r23933 + r23935 + r23936, reduces the list of missing dependencies to:
error: Failed build dependencies: python2-cryptography is needed by xpra-3.0-0.20190925r23937.el8_0.x86_64 python2-pyxdg is needed by xpra-3.0-0.20190925r23937.el8_0.x86_64 python2-rencode is needed by xpra-3.0-0.20190925r23937.el8_0.x86_64 python3-cairo-devel is needed by xpra-3.0-0.20190925r23937.el8_0.x86_64 python3-rencode is needed by xpra-3.0-0.20190925r23937.el8_0.x86_64
So the python2 packages will need rencode in the repository. Difficult to build without python2-pbr
...
The python3 builds will fail without python3-cairo-devel
. Not sure where to get hold of this yet.
comment:5 Changed 3 years ago by
Updates:
- using
python2-pbr
from the centos7 builds works OK for python2. (this is a noarch python2.7 package) - for
python3-pbr
... I used the Fedora 28 package. (...) - r23937: fix cython package name
- r23938 ffmpeg 4.2.1
- r23939 enable
%global debug_package %{nil
} workaround - build python3 packages: r23940 : rencode, r23941 : pyu2f, r23943 : pynvml, r23944 : pycuda, r23947 : pyopengl
- r23946: try to build python-pillow so we can have a python2 version
- renaming python package dependencies (may need to be changed to an ifdef to continue to support centos7): r23948: pygtkglext, r23952 : python-lz4, r23954 + r23956: pycuda
- r23949 fix pycuda version
- r23951 fix libmad debug_package error
- r23953 fix date in pytools changelog
Problems remaining:
- pygtkglext fails to build - something path related (ugly hack in spec file broke? looks fixable)
- no
xorg-x11-server-devel
anywhere?? so no patched dummy for now.. - pycuda needs
boost-python2
andboost-python2-devel
- only build python3 package? - xpra needs
python3-cairo-devel
- python-pillow needs
PyQt4
- can we skip it?
Full list of packages downloaded from non-centos repositories:
boost-numpy3-1.66.0-6.el8.x86_64.rpm boost-python3-1.66.0-6.el8.x86_64.rpm boost-python3-devel-1.66.0-6.el8.x86_64.rpm gobject-introspection-devel-1.56.1-1.el8.x86_64.rpm gtest-1.8.0-5.el8.x86_64.rpm gtest-devel-1.8.0-5.el8.x86_64.rpm js-uglify-2.8.29-1.el8.noarch.rpm lcms2-devel-2.9-2.el8.x86_64.rpm libxkbfile-devel-1.0.9-9.el8.x86_64.rpm nasm-2.13.03-2.el8.x86_64.rpm pygobject3-devel-3.28.3-1.el8.x86_64.rpm python2-pbr-4.1.0-2.el7ost.noarch.rpm python2-pkgconfig-1.3.1-1.fc28.noarch.rpm python3-cairo-1.16.3-6.el8.x86_64.rpm python3-cryptography-2.3-3.el8ost.x86_64.rpm python3-Cython-0.28.1-3.el8.x86_64.rpm python3-pbr-3.1.1-8.fc28.noarch.rpm turbojpeg-1.5.3-10.el8.x86_64.rpm turbojpeg-devel-1.5.3-10.el8.x86_64.rpm uglify-js-2.8.29-1.el8.noarch.rpm
comment:6 Changed 3 years ago by
To get python3-cairo-devel
, download the source RPM and rebuild the package.. This is also true for the packages downloaded from redhat. For some this is trivial, others have more dependencies. Some without source packages?
ie: gtk-doc
, which depends on dblatex
and docbook-utils
, none of which are available from centos, not even in source form?
Updates:
- r23957 + r23962 typos
- r23958 pillow update package names
- r23959 fix pyxdg package name
- r23961 don't build-require python2-cryptography on centos8 since we can't find it
- r23963 build error: duplicate constants
- r23965 + r23966: python-lz4
Remaining issues:
- unit tests failing since r23918 (unrelated - may just revert)
- pygtkglext - needs fixing
- pillow needs fixing
- python2-pyxdg would be nice to have
- xorg-x11-server-devel: rebuilding from source requires tons of missing dependencies
comment:7 Changed 3 years ago by
Updates:
xorg-x11-server-devel
- lots of packages only from redhat..
- xorg-x11-util-macros from F28 (redhat only has one for rhel5!)
- build libdmx to get libdmx-devel (nowhere to be found)
- xorg-x11-xtrans-devel from F28 (redhat only has one for rhel5!)
- rebuild egl-wayland to get egl-wayland-devel (and need more of dependencies to do that..)
pycuda
Too difficult to build for python2 (no boost python2), so we now have a specfile just for python3: r23973.
comment:8 Changed 3 years ago by
pillow
- r24006: cosmetic
- r24007: don't build the tk bits on centos8
- r24008: the filter stuff crashes rpmbuild on centos8 (could be related to sitearch?)
- r24009: sitearch macro problem
- r24012: don't override the system python3 package (only for python2 builds on centos8 - as we still remove webp: r17474, r17473: #1694)
- r24013: can't refer to
python-devel
pyxdg
Added a specfile based on Fedora's: r24010
comment:9 Changed 3 years ago by
comment:10 Changed 3 years ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Force python3 by default:
- r24020: try to ensure the
/usr/bin/xpra
script defaults to python3, by changing the install order (python3 install is overwrites the/usr/bin/xpra
script last) - r24021: try harder and replace the shebang by hand. This finally does nearly what we want (default to python3): on centos, this gets mangled to
/usr/libexec/platform-python
- which is python3 by default.
comment:12 Changed 16 months ago by
this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/2293
Added to specfile in r22699.