Modernize and fix Debian packaging #2
uhle/python-eduvpn-client.deb:fix-packaging into main
- Remove obsolete debian/compat. - Use debhelper-compat and dh-sequence-python3 in debian/control. - Replace override_dh_auto_install by execute_after_dh_auto_install. - Also remove override_dh_builddeb because xz compression has already been the default since many years.
Complement 'Conflicts: letsconnect-client-data' with appropriate Replaces and Provides stanzas.
The hard dependency on network-manager-openvpn-gnome makes the packages unsuitable for users of non-Gnome/GTK desktops such as KDE or LXQt. So let's move network-manager-openvpn-gnome from Depends to Suggests and simply replace it by network-manager-openvpn in Build-Depends.
Only the binary packages for python modules should be in section python whereas binary packages for network applications traditionally are in the net section.
Thank you! Lots of good work here, I have to carefully test this after the holidays in January. Did you try building the packages with nbuilder.deb? https://codeberg.org/eduvpn/nbuilder.deb
No, I have not. I was not aware of the nbuilder.deb project and so have just built the packages on Debian 13. But I know it is also working on Debian 12 and I guess it will also built fine on Ubuntu as it seems there is nothing Ubuntu-specific within the source package. I have also checked the debhelper version shipped with Ubuntu 22.04 which is 13.6. That should suffice. Even dh-sequence-python3 was introduced in 2019 according to the changelog. That is why I don't see any reason why it shouldn't work out. I understand your implications though, so please take your time to thoroughly test the changes.
The behaviour of setuptools w.r.t. package data files has changed since version 60.10.0 which means (let me cite from its changelog) "more emphasis was put on the fact that package data files reside inside the package directory". With older versions of setuptools, package data files were copied to sys.prefix which is /usr on Debian and Ubuntu systems, whereas with version 60.10.0 or newer, these files are copied to <...>/eduvpn/data. Following the discussion on an issue at Github, it does not seem to be clearly defined where to install package data files. However, only the build on Ubuntu 22.04 is affected having setuptools version 59.6.0.
Now I see two options:
- Add another commit to this PR to additionally have
rm -rf debian/python3-eduvpn-client/usr/share
in debian/rules back again. - Tackle this issue somehow upstream in linux-app to let setuptools install package data files in
/usronce again and revert commit6000e77884.
What do you think? Please let me know how to proceed.
View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.Merge
Merge the changes and update on Forgejo.Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.
No due date set.
No dependencies set.
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?