Upgraded one bionic system to HWE 18.04. XPRA was removed in upgrade process. When I tried to install it afterwards, it would have wanted to downgrade X to pre HWE state.
Please post the full upgrade messages.
XPRA seems to install fine, if all needed HWE X packages are already installed in the system, but if one is missing, say xorg-video-dummy, gdebi says:
Reading package lists... Done Building dependency tree Reading state information... Done Reading state information... Done Requires the REMOVAL of the following packages: xserver-xorg-core-hwe-18.04 xserver-xorg-hwe-18.04 xserver-xorg-input-all-hwe-18.04 xserver-xorg-input-libinput-hwe-18.04 xserver-xorg-input-wacom-hwe-18.04 xserver-xorg-video-all-hwe-18.04 xserver-xorg-video-amdgpu-hwe-18.04 xserver-xorg-video-ati-hwe-18.04 xserver-xorg-video-fbdev-hwe-18.04 xserver-xorg-video-intel-hwe-18.04 xserver-xorg-video-nouveau-hwe-18.04 xserver-xorg-video-qxl-hwe-18.04 xserver-xorg-video-radeon-hwe-18.04 xserver-xorg-video-vesa-hwe-18.04 xserver-xorg-video-vmware-hwe-18.04 Requires the installation of the following packages: xserver-xorg-core xserver-xorg-video-dummy tool to detach/reattach running X programs Xpra gives you the functionality of GNU Screen for X applications. . It allows the user to view remote X applications on their local machine, and disconnect and reconnect from the remote machine without losing the state of the running applications. . Unlike VNC, these applications are "rootless". They appear as individual windows inside your window manager rather than being contained within a single window. Do you want to install the software package? [y/N]:
How are we supposed to support HWE using a single repository?
This seems to be the same problem: https://bugs.launchpad.net/ubuntu/+source/xpra/+bug/1691025
I tried installing from xpra repo, but the problem remained. If xorg-video-dummy is not installed, xpra wants to remove all xorg hwe packages, but if it is, it installs just fine.
Links:
If we provide both ABIs in the repository, will apt be able to figure it out?
So I installed xpra stable on a fresh Ubuntu 18.04.2 installation which includes HWE by default, and everything works OK out of the box.
The only problem is that they ship a new dummy driver named xserver-xorg-video-dummy-hwe
which is almost guaranteed to be missing the patches we carry.
Maybe they've messed up the package dependencies (Conflicts
vs Provides
attributes?)
Using debootstrap made this more difficult. Steps:
build-essential devscripts debhelper
universe
repository: echo "deb http://archive.ubuntu.com/ubuntu bionic universe" >> /etc/apt/sources.list
quilt pkg-config xserver-xorg-dev x11proto-video-dev x11proto-xf86dga-dev x11proto-core-dev x11proto-fonts-dev x11proto-randr-dev x11proto-render-dev xutils-dev
bionic-updates
repository (this step is not documented): echo "deb http://archive.ubuntu.com/ubuntu bionic-updates main" >> /etc/apt/sources.list
sudo apt-get install --install-recommends linux-generic-hwe-18.04 xserver-xorg-hwe-18.04
xorg-dev
Through trial and error (well mostly error):
And so the official solution is now to run this command to upgrade to the HWE version (adding xserver-xorg-video-dummy-hwe-18.04
):
sudo apt-get install --install-recommends linux-generic-hwe-18.04 xserver-xorg-hwe-18.04 xserver-xorg-video-dummy-hwe-18.04
That's because the Ubuntu repositories don't upgrade the dummy package during the HWE upgrade unless we tell it to. (that's an upstream bug - nothing to do with us)
The only positive thing we've gained is that we now ensure that we update the dummy package with the patched one, even when HWE is enabled.
The fix above doesn't work because xpra depends on xserver-xorg-input-void as well.
$ apt search xserver-xorg-input-void Sorting... Done Full Text Search... Done xserver-xorg-input-void/bionic 1:1.4.1-1build3 amd64 X.Org X server -- void input driver xserver-xorg-input-void-hwe-16.04/bionic 3:14.1 amd64 Transitional package for xserver-xorg-input-void-hwe-16.04
Atemmpting to install xserver-xorg-input-void I get the "remove all hwe" thing:
$ sudo apt install xserver-xorg-input-void Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: xserver-xorg xserver-xorg-core Suggested packages: xfonts-100dpi | xfonts-75dpi Recommended packages: xserver-xorg-video-all The following packages will be REMOVED: xorg xserver-xorg-core-hwe-18.04 xserver-xorg-hwe-18.04 xserver-xorg-input-all-hwe-18.04 xserver-xorg-input-libinput-hwe-18.04 xserver-xorg-video-all-hwe-18.04 xserver-xorg-video-amdgpu-hwe-18.04 xserver-xorg-video-ati-hwe-18.04 xserver-xorg-video-fbdev-hwe-18.04 xserver-xorg-video-intel-hwe-18.04 xserver-xorg-video-nouveau-hwe-18.04 xserver-xorg-video-qxl-hwe-18.04 xserver-xorg-video-radeon-hwe-18.04 xserver-xorg-video-vesa-hwe-18.04 xserver-xorg-video-vmware-hwe-18.04 The following NEW packages will be installed: xserver-xorg xserver-xorg-core xserver-xorg-input-void 0 upgraded, 3 newly installed, 15 to remove and 0 not upgraded. Need to get 1,423 kB of archives. After this operation, 4,760 kB disk space will be freed. Do you want to continue? [Y/n] n Abort.
Attempting to install xserver-xorg-input-void-hwe-16.04 I get this
$ sudo apt install xserver-xorg-input-void-hwe-16.04 Reading package lists... Done Building dependency tree Reading state information... Done Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies: xserver-xorg-input-void-hwe-16.04 : Depends: xserver-xorg-input-void but it is not going to be installed E: Unable to correct problems, you have held broken packages.
So atm xpra can't be installed on ubuntu 18.04.2 with hwe because of xserver-xorg-input-void dependency.
So atm xpra can't be installed on ubuntu 18.04.2 with hwe because of xserver-xorg-input-void dependency.
Right you are, and this is another epic mistake by Ubuntu upstream packaging.
Why on earth is void-hwe
depending on a package that it ends up conflicting with? (void
which brings the non-hwe server and its conflict)
I should be able to fix it in our repos by overriding their package with a correct one, but really they need to stop this senseless breakage.
Also isn't it wrong having xserver-xorg-input-void-hwe-16.04 but not xserver-xorg-input-void-hwe-18.04 in 18.04.2 hwe?
Updates:
Both are now available in the stable repository.
@pma: does that help?
@okappa had problems with input-void, not me.
@pma: oops, thanks!
BTW, we no longer use or require input-void: removed in r9166 - 4 years ago.
So this package fix isn't for xpra at all, it just makes it easier for people who do have input-void installed to enable HWE. (basically fixing Ubuntu's mess)
@Antoine Martin Oops, I didn't figure out at first this whole issue was about xpra.org's packaged xpra. I was speaking about the stock ubuntu packages
I was speaking about the stock ubuntu packages
Don't use those, they're always seriously messed up. For details see wiki/Packaging/DistributionPackages.
More fixes: r22381 + r22382, the package name for bionic must be xserver-xorg-video-dummy-hwe-18.04
(the 18.04
is part of the package name).
With this change we now correctly upgrade the system package and avoid the DPI warnings.
this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/2190