Dear Rust packagers,
I am recently working on a desktop application
(
https://github.com/zhangyuannie/butter) for Btrfs snapshot management
using Rust, GTK4 and libadwaita.
However, while trying to package my app on Copr, I noticed that rust-
libadwaita has not been packaged yet.
I decided to try to package them myself, the results are:
https://copr.fedorainfracloud.org/coprs/zhangyuannie/rust-libadwaita-sys/
https://copr.fedorainfracloud.org/coprs/zhangyuannie/rust-libadwaita/
And I have opened a review for rust-libadwaita-sys:
https://bugzilla.redhat.com/show_bug.cgi?id=2066040
I have a few questions regarding their packaging:
1. Upstream did not include the LICENSE file inside the .crate tarball,
but has it in the root directory of the repository.
I have already sent a MR upstream to fix this issue:
https://gitlab.gnome.org/World/Rust/libadwaita-rs/merge_requests/36
In the mean time, I fetched the license file from the tagged branch
of upstream, and cp-ed it into the build directory during %prep.
Is this the correct, idiomatic way of doing this?
2. rust-libadwaita depends on rust-libadwaita-sys and rust-gtk4. It has
similar feature flags than rust-gtk4 (e.g. gtk_v4_2, gtk_v4_4). In
this case, should rust-libadwaita-sys+<feat> depends on
rust-gtk4+<feat> (i.e. let rust-gtk4 pull the specified gtk4-devel)
or should it depends on pkg-config(gtk4) directly?
My guess is that it should depends on pkg-config(gtk4) directly
since it does not seem to pass the feature flag down to gtk4 in the
code, but I am not sure if this is a solid argument.
Thank you for your time. Any guidance, help and mentorship is hugely
appreciated!
Best regards,
Zhangyuan Nie