Summary: | x11-drivers/xf86-video-qxl deprecated/deleted, yet upstream source builds on freebsd 12.2 | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | Ports & Packages | Reporter: | John Hartley <drum> | ||||||||
Component: | Individual Port(s) | Assignee: | Hiroki Sato <hrs> | ||||||||
Status: | Closed FIXED | ||||||||||
Severity: | Affects Some People | CC: | Alexander88207, dwight.schauer, editor, grahamperrin, koutheir, marietto2008, zeising | ||||||||
Priority: | --- | ||||||||||
Version: | Latest | ||||||||||
Hardware: | amd64 | ||||||||||
OS: | Any | ||||||||||
Attachments: |
|
Description
John Hartley
2021-05-18 11:24:36 UTC
Hi! Feel free to submit a patch to update qxl to use python3 instead of python 2, and I'll look into it. Thanks! Hi Niclas, as it appears that xf86-video-qxl was removed from the ports repository with branch 2020Q4, I did a fork of entire ports tree (via GitHub) and then checked out the 2020Q3 branch. # git checkout 2020Q3 I then update of Makefile to use python 3.7 and make. This built successfully. Here is diff: git diff Makefile diff --git a/x11-drivers/xf86-video-qxl/Makefile b/x11-drivers/xf86-video-qxl/Makefile index 65dbd1059ebe..fb265dd39d71 100644 --- a/x11-drivers/xf86-video-qxl/Makefile +++ b/x11-drivers/xf86-video-qxl/Makefile @@ -17,7 +17,7 @@ BUILD_DEPENDS= spice-protocol>=0.12.10:devel/spice-protocol \ ${LOCALBASE}/include/linux/input.h:devel/evdev-proto LIB_DEPENDS= libspice-server.so:devel/libspice-server -USES= localbase:ldflags pkgconfig python:2.7 shebangfix xorg \ +USES= localbase:ldflags pkgconfig python:3.7 shebangfix xorg \ xorg-cat:driver USE_XORG= xfont Given that the entire sub-directory is removed from port tree, I am not sure what the process is to get it back with updated dependencies. Cheers, John Hartley. (In reply to John Hartley from comment #0) > python:3.7 This hardcodes lang/python37 dependency which is non-default since ports 6cd3db2d03cc. Try "python" (without quotes) instead as ports 6a834798621f already excludes lang/python27. Disclaimer: I haven't tested the suggestion, don't use the port and not the maintainer to approve. (In reply to Jan Beich from comment #3) Hi Jan, I wish the maintain of this port would resolve the problem. The port has not been restored. I have retested with 12.2. Process was: 1. Clean install of FreeBSD 12.2 2. Install the X11/gnome/evdev/utouch pks: pkg install xorg gnome-desktop xf86-input-evdev utouch-kmod 3. Install all the build tools: pkg install git autoconf automake xorg-macros m4 pkgconf libtool 4. Install all the dependency (as pkg) to ensure pickup latest and greatest versions: pkg install help2man libspice-server spice-protocol bison texinfo openssl 5. Clone the ports tree via github: git clone XXX 6. Check out the old tree branck: git checkout 2020Q3 7. Edit the Makefile to remove the explicit python dependency (as per suggestion) 8. Fix the X11 config file to pickup the QEMU Tablet Driver Result: Able to run FreeBSD Desktop again as KVM/QEMU VM Here is updated diff file: $ git diff Makefile diff --git a/x11-drivers/xf86-video-qxl/Makefile b/x11-drivers/xf86-video-qxl/Makefile index fb265dd39d71..42cb413cebf7 100644 --- a/x11-drivers/xf86-video-qxl/Makefile +++ b/x11-drivers/xf86-video-qxl/Makefile @@ -17,7 +17,7 @@ BUILD_DEPENDS= spice-protocol>=0.12.10:devel/spice-protocol \ ${LOCALBASE}/include/linux/input.h:devel/evdev-proto LIB_DEPENDS= libspice-server.so:devel/libspice-server -USES= localbase:ldflags pkgconfig python:3.7 shebangfix xorg \ +USES= localbase:ldflags pkgconfig python shebangfix xorg \ xorg-cat:driver USE_XORG= xfont (In reply to Niclas Zeising from comment #1) Hi Niclas, are you able to help with getting the x11-drivers/xf86-video-qxl port tree restored and fixed. I have tested with both explicit python, updated to 3.7: >> USES= localbase:ldflags pkgconfig python:3.7 shebangfix xorg \ As well as implicit "current" python version: >> USES= localbase:ldflags pkgconfig python shebangfix xorg \ where have: >> $ python3.7 --version >> Python 3.7.9 Cheers from Australia. John Hartley. Are you actually using this driver? Does it work, or just compile? Can you add the patch as an attachment so that it is not mangled by bugzilla, that would be helpful. I'll see if I can get the port restored. (In reply to Niclas Zeising from comment #6) Hi Niclas, yes I have used and tested. Testing requires a Linux KVM / QEMU setup as the QXL driver is virtual device driver for use with QEMU. Without the QXL driver X11 startup "startx" fails. So the driver allows FreeBSD with X11 running as VM. But you need to make sure that the there is no video/display driver in configured in "/etc/usr/local/X11/xorg.conf.s" for it to work. I have attached patch file, which just removes to pyton version check completely (on assumption that ports is enforcing default python version somewhere else, as per comment from Jan Beich. NOTE: In doing build test I have already done pkg install of: libspice-dev spice-protocol so the bulid process did not go into "spice" dependency build. Cheers from Australia, John Hartley. Created attachment 227723 [details]
qxl Makefile patch to remove python version dependency
Patch file for: x11-drivers/xf86-video-qxl/Makefile
NOTE: The entire x11-drivers/xf86-video-qxl port tree was deprecated after "2020Q3" due to python 2.7 dependency (already addressed upstream).
Created attachment 228190 [details]
Readd xf86-video-xql and remove python27 as dep
I guess that should be the proper patch that the reporter wants.
Created attachment 228191 [details]
Readd xf86-video-xql and remove python27 as dep (v2)
Remove # $FreeBSD$ from the Makefile.
(In reply to Alexander Vereeken from comment #10) Hi Alexander, does your patch both re-establish the xf86-video-qxl port sub-tree as well as address the (redundant) python27 dependency ? And if so I should just make my patch obselete ? Thank you. John Hartley (In reply to John Hartley from comment #11) Yes. Sorry for late answer btw. I see a comment from five years ago, "Xspice: Fix Python3 str() vs bytes() confusion" which suggests this is getting some Python3 attention. Has anyone tried to build the current code? https://gitlab.freedesktop.org/xorg/driver/xf86-video-qxl Revived in ports 72478310d3b0 with "python" in USES and different maintainer. Hi BSD Maintainers, TESTING: I have retested using VM on: - Ubuntu 22.04 QEMU/KVM Host - with OVMF (UEFI), Q35 VM with VirtoIO Disk and Network Drivers FreeBSD Quest OS: - 13.1 - only pkg (binary) install: xorg gnome-lite xf86-input-evdev utouch-kmod help2man texinfo libspice-server spice-protocol python38 bison openssl - pkg (binary) install: xf86-video-qxl RESULT: Test #1 startx - initially failed, add X11 configuration to force use of scfb video Test #2 With scfb video startx - brings up X11 with working QEMU USB Tablet mouse with no further additional configuration SUMMARY: QEMU USB Tablet working again QXL - Video Driver Crashes SCFB - Video Driver provides usable workaround No need to build install revived ports package as binary pkg works END: Thank you very much for restoring xf86-video-qxl package. It is again possible to running X11 on KVM/QEMU without to much work. Happy Easter from Australia, John Hartley. I've tested the qxl-vga driver because I wanted to boot FreeBSD 14 with quickemu. I compiled it from ports,but unfortunately it didn't work : https://github.com/quickemu-project/quickemu/issues/926#issuecomment-1941307198 |