5
0
Fork
You've already forked python-eduvpn-client.deb
1

Modernize and fix Debian packaging #2

Open
uhle wants to merge 14 commits from uhle/python-eduvpn-client.deb:fix-packaging into main
pull from: uhle/python-eduvpn-client.deb:fix-packaging
merge into: eduVPN:main
eduVPN:main
eduVPN:upstream
eduVPN:pre-release
First-time contributor
Copy link
No description provided.
- 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

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
Author
First-time contributor
Copy link

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.

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.
Author
First-time contributor
Copy link

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 /usr once again and revert commit 6000e77884.

What do you think? Please let me know how to proceed.

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](https://github.com/pypa/setuptools/discussions/2648), 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](https://codeberg.org/eduVPN/linux-app) to let setuptools install package data files in `/usr` once again and revert commit 6000e77884. What do you think? Please let me know how to proceed.
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u fix-packaging:uhle-fix-packaging
git switch uhle-fix-packaging

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.

git switch main
git merge --no-ff uhle-fix-packaging
git switch uhle-fix-packaging
git rebase main
git switch main
git merge --ff-only uhle-fix-packaging
git switch uhle-fix-packaging
git rebase main
git switch main
git merge --no-ff uhle-fix-packaging
git switch main
git merge --squash uhle-fix-packaging
git switch main
git merge --ff-only uhle-fix-packaging
git switch main
git merge uhle-fix-packaging
git push origin main
Sign in to join this conversation.
No reviewers
Labels
Clear labels
No items
No labels
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
eduVPN/python-eduvpn-client.deb!2
Reference in a new issue
eduVPN/python-eduvpn-client.deb
No description provided.
Delete branch "uhle/python-eduvpn-client.deb:fix-packaging"

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?