Bug 2132289 - Review Request: deepin-network-core - DDE network library and plugins
Summary: Review Request: deepin-network-core - DDE network library and plugins
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Benson Muite
QA Contact: Fedora Extras Quality Assurance
URL: https://github.com/linuxdeepin/%{repo}
Whiteboard:
Depends On:
Blocks: DeepinDEPackageReview
TreeView+ depends on / blocked
 
Reported: 2022-10-05 10:51 UTC by Robin Lee
Modified: 2023-08-16 09:57 UTC (History)
2 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2023-08-16 09:57:37 UTC
Type: ---
Embargoed:
benson_muite: fedora-review+


Attachments (Terms of Use)
Add soname (1.43 KB, patch)
2023-08-09 10:12 UTC, Benson Muite
no flags Details | Diff

Description Robin Lee 2022-10-05 10:51:55 UTC
Spec URL: https://cheeselee.fedorapeople.org/deepin-network-core.spec
SRPM URL: https://cheeselee.fedorapeople.org/deepin-network-core-1.0.63-1.fc36.src.rpm
Description: This package provides DDE network library and plugins.
Fedora Account System Username: cheeselee

Comment 1 Benson Muite 2022-10-06 10:36:36 UTC
Issues from running fedora-review

- If your application is a C or C++ application you must list a
  BuildRequires against gcc, gcc-c++ or clang.
  Note: No gcc, gcc-c++ or clang found in BuildRequires
  See: https://docs.fedoraproject.org/en-US/packaging-guidelines/C_and_C++/
- Development (unversioned) .so files in -devel subpackage, if present.
  Note: Unversioned so-files directly in %_libdir.
  See: https://docs.fedoraproject.org/en-US/packaging-
  guidelines/#_devel_packages

Unversioned so-files
--------------------
deepin-network-core: /usr/lib/dde-control-center/modules/libdcc-network-plugin.so
deepin-network-core: /usr/lib/dde-dock/plugins/system-trays/libdock-network-plugin.so
deepin-network-core: /usr/lib/dde-session-shell/modules/libdss-network-plugin.so
deepin-network-core-lib: /usr/lib64/libdde-network-core.so

Comment 2 Robin Lee 2022-10-06 11:36:51 UTC
Spec URL: https://cheeselee.fedorapeople.org/deepin-network-core.spec
SRPM URL: https://cheeselee.fedorapeople.org/deepin-network-core-1.0.63-1.fc36.src.rpm

Changes:
- BR gcc-c++
- Comment on the unversioned so file

(In reply to Benson Muite from comment #1)
> Issues from running fedora-review
> 
> - If your application is a C or C++ application you must list a
>   BuildRequires against gcc, gcc-c++ or clang.
>   Note: No gcc, gcc-c++ or clang found in BuildRequires
>   See: https://docs.fedoraproject.org/en-US/packaging-guidelines/C_and_C++/
Done.

> - Development (unversioned) .so files in -devel subpackage, if present.
>   Note: Unversioned so-files directly in %_libdir.
>   See: https://docs.fedoraproject.org/en-US/packaging-
>   guidelines/#_devel_packages
Commented about this. The so file is not versioned.

> 
> Unversioned so-files
> --------------------
> deepin-network-core:
> /usr/lib/dde-control-center/modules/libdcc-network-plugin.so
> deepin-network-core:
> /usr/lib/dde-dock/plugins/system-trays/libdock-network-plugin.so
> deepin-network-core:
> /usr/lib/dde-session-shell/modules/libdss-network-plugin.so
> deepin-network-core-lib: /usr/lib64/libdde-network-core.so

Comment 3 Benson Muite 2022-10-06 14:06:29 UTC
Thanks for the change. If versioning cannot be done upstream, can it be versioned for Fedora? See
https://docs.fedoraproject.org/en-US/packaging-guidelines/#_downstream_so_name_versioning

Comment 4 Robin Lee 2022-10-06 14:28:19 UTC
(In reply to Benson Muite from comment #3)
> Thanks for the change. If versioning cannot be done upstream, can it be
> versioned for Fedora? See
> https://docs.fedoraproject.org/en-US/packaging-guidelines/
> #_downstream_so_name_versioning

I don't think that's necessary. The library can be considered private to Deepin DE.
There is already some other DDE package, like deepin-control-center, that provides unversioned so.

Comment 5 Benson Muite 2022-10-06 15:34:04 UTC
Versioning is very helpful with managing changes and encouraging others to adopt the library and then contribute to it. Versioning is typically a requirement to be included in Fedora.  It would be great to have an excellent Deepin Desktop experience on Fedora. Xièxiè nǐ de bāngzhù (Thank you for your help).

Comment 6 Robin Lee 2022-10-06 16:51:17 UTC
I sent a request upstream for so versioning: https://github.com/linuxdeepin/developer-center/issues/3456

DDE on Fedora lacks maintenance. What I can afford is only akin to DDE on Arch Linux to make packages build, and waiting for a real maintainer that truly loves DDE.

Comment 8 Robin Lee 2022-10-16 10:12:02 UTC
(In reply to Benson Muite from comment #7)
> For an example of versioning, see
> https://download.copr.fedorainfracloud.org/results/snmende/cbang/fedora-
> rawhide-x86_64/04939140-cbang/cbang.spec
> https://bugzilla.redhat.com/show_bug.cgi?id=2129303

I known the benefit of SONAME versioning. I just prefer to wait for upstream to do that.
Downstream SONAME versioning is not a MUST according to the Guidelines.

Comment 9 Benson Muite 2022-10-16 12:03:38 UTC
No problem lăoshī (https://en.wikipedia.org/wiki/Laoshi)

Comment 10 Robin Lee 2022-10-20 00:07:21 UTC
Any more blocking issues with this package?

Comment 11 Benson Muite 2022-10-20 07:35:26 UTC
Will check again. Thanks for the reminder.

Comment 13 Benson Muite 2023-08-08 08:00:06 UTC
[fedora-review-service-build]

Comment 14 Fedora Review Service 2023-08-08 08:15:10 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/6254903
(succeeded)

Review template:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2132289-deepin-network-core/fedora-rawhide-x86_64/06254903-deepin-network-core/fedora-review/review.txt

Please take a look if any issues were found.

---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 15 Benson Muite 2023-08-08 11:25:17 UTC
Still builds. Will it be possible to update to version 2.0.12?

Sonames have been added:
https://github.com/linuxdeepin/developer-center/issues/3456

Though getting some declaration errors when trying simple adaptation of the spec file:
https://copr.fedorainfracloud.org/coprs/fed500/deepin-network-core/build/6257113/

Comment 16 Robin Lee 2023-08-08 14:25:15 UTC
(In reply to Benson Muite from comment #15)
> Still builds. Will it be possible to update to version 2.0.12?
> 
> Sonames have been added:
> https://github.com/linuxdeepin/developer-center/issues/3456
> 
> Though getting some declaration errors when trying simple adaptation of the
> spec file:
> https://copr.fedorainfracloud.org/coprs/fed500/deepin-network-core/build/
> 6257113/

I strictly package the identical versions of packages in Arch Linux. Builddeps may not be new enough to build the latest version of deepin-network-core which may belong to the major bump of DDE aka DDE 23.
DDE in Fedora and other community-based distros still stays in DDE 20.

Comment 17 Benson Muite 2023-08-09 10:12:53 UTC
Created attachment 1982535 [details]
Add soname

Patch to add soname

Comment 18 Benson Muite 2023-08-09 10:33:41 UTC
Perhaps see if can use the patch.  A build is available at:
https://copr.fedorainfracloud.org/coprs/fed500/deepin-network-core/build/6259904/

There are still a few problems raised for
directories without owners:

Note: No known owner of /usr/lib/dde-session-shell, /usr/lib/dde-
     control-center, /usr/lib/dde-dock

Note: Directories without known owners: /usr/lib/dde-control-center,
     /var/lib/polkit-1/localauthority,
     /var/lib/polkit-1/localauthority/10-vendor.d, /usr/lib/dde-session-
     shell, /var/lib/polkit-1, /usr/lib/dde-dock

Perhaps these should be co-owned?

Understand not upgrading to 2.0.12 just yet.

Packaging for OpenEuler also uses RPM files, but it dos not seem to have
deepin-network-core as a separate package yet. The spec files for base
desktop are quite similar:
https://src.fedoraproject.org/rpms/deepin-desktop-base/blob/rawhide/f/deepin-desktop-base.spec
https://gitee.com/src-openeuler/deepin-desktop-base/blob/master/deepin-desktop-base.spec
Maybe there can be shared effort?

Comment 19 Robin Lee 2023-08-09 13:48:57 UTC
Spec URL: https://cheeselee.fedorapeople.org/deepin-network-core.spec
SRPM URL: https://cheeselee.fedorapeople.org/deepin-network-core-1.0.63-1.fc38.src.rpm

Changes:
- Apply a downstream patch to add soname version
- Co-own some directories
- Requires polkit-pkla-compat to get %{_var}/lib/polkit-1/localauthority/10-vendor.d

(In reply to Benson Muite from comment #18)
> Packaging for OpenEuler also uses RPM files, but it dos not seem to have
> deepin-network-core as a separate package yet. The spec files for base
> desktop are quite similar:
> https://src.fedoraproject.org/rpms/deepin-desktop-base/blob/rawhide/f/deepin-
> desktop-base.spec
> https://gitee.com/src-openeuler/deepin-desktop-base/blob/master/deepin-
> desktop-base.spec
> Maybe there can be shared effort?

DDE in openEuler is not maintained by the community. It is hard to rely on it.

DDE in openEuler originated from Fedora. But then openEuler turned more and more incompatible with Fedora. It will be tricky to
maintain a specfile that conforms to both openEuler and Fedora conventions. openEuler and Fedora packages would not be comfortable with the resulting mess.

Comment 20 Fedora Review Service 2023-08-09 13:49:26 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/6260542
(failed)

Build log:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2132289-deepin-network-core/srpm-builds/06260542/builder-live.log.gz

Please make sure the package builds successfully at least for Fedora Rawhide.

- If the build failed for unrelated reasons (e.g. temporary network
  unavailability), please ignore it.
- If the build failed because of missing BuildRequires, please make sure they
  are listed in the "Depends On" field


---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 21 Benson Muite 2023-08-09 15:20:16 UTC
Please upload new srpm

Comment 22 Robin Lee 2023-08-09 15:38:59 UTC
(In reply to Benson Muite from comment #21)
> Please upload new srpm

Done.

Comment 23 Benson Muite 2023-08-09 16:46:08 UTC
[fedora-review-service-build]

Comment 24 Fedora Review Service 2023-08-09 17:08:20 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/6261132
(succeeded)

Review template:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2132289-deepin-network-core/fedora-rawhide-x86_64/06261132-deepin-network-core/fedora-review/review.txt

Please take a look if any issues were found.

---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 25 Benson Muite 2023-08-09 19:54:28 UTC
using the following in the files section would remove the unowned directories problems:

%files
%{_bindir}/dde-network-dialog
%dir %{_prefix}/lib/dde-control-center
%dir %{_prefix}/lib/dde-control-center/modules
%{_prefix}/lib/dde-control-center/modules/*.so
%dir %{_prefix}/lib/dde-dock
%dir %{_prefix}/lib/dde-dock/plugins
%dir %{_prefix}/lib/dde-dock/plugins/system-trays
%{_prefix}/lib/dde-dock/plugins/system-trays/*.so
%dir %{_prefix}/lib/dde-session-shell
%dir %{_prefix}/lib/dde-session-shell/modules/
%{_prefix}/lib/dde-session-shell/modules/*.so
%dir %{_datadir}/dcc-network-plugin
%dir %{_datadir}/dcc-network-plugin/translations
%{_datadir}/dcc-network-plugin/translations/*.qm
%dir %{_datadir}/dde-network-dialog/
%dir %{_datadir}/dde-network-dialog/translations
%{_datadir}/dde-network-dialog/translations/*.qm
%dir %{_datadir}/dock-network-plugin
%dir %{_datadir}/dock-network-plugin/translations
%{_datadir}/dock-network-plugin/translations/*.qm
%dir %{_datadir}/dss-network-plugin
%dir %{_datadir}/dss-network-plugin/translations
%{_datadir}/dss-network-plugin/translations/*.qm
%dir %{_datadir}/dsg
%dir %{_datadir}/dsg/configs
%dir %{_datadir}/dsg/configs/org.deepin.dde.network
%{_datadir}/dsg/configs/org.deepin.dde.network/*.json
%dir %{_var}/lib/polkit-1
%dir %{_var}/lib/polkit-1/localauthority
%dir %{_var}/lib/polkit-1/localauthority/10-vendor.d
%{_var}/lib/polkit-1/localauthority/10-vendor.d/*.pkla


Above change can be made on import. Approved.

Comment 26 Fedora Admin user for bugzilla script actions 2023-08-16 09:24:41 UTC
The Pagure repository was created at https://src.fedoraproject.org/rpms/deepin-network-core

Comment 27 Fedora Update System 2023-08-16 09:54:12 UTC
FEDORA-2023-d8e723f6eb has been submitted as an update to Fedora 40. https://bodhi.fedoraproject.org/updates/FEDORA-2023-d8e723f6eb

Comment 28 Fedora Update System 2023-08-16 09:57:37 UTC
FEDORA-2023-d8e723f6eb has been pushed to the Fedora 40 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.