Closed neonphog closed 1 year ago
@syphar - I believe this is ready for review when you get a chance.
@FantasyTeddy - You previously added Add libappindicator3-dev package for libappindicator-sys crate to the crates-build-env. Since then, Add packages necessary for libayatana-appindicator-sys to compile has also been added.
When updating to Ubuntu Jammy 22.04, these crates now conflict and cannot be installed together. It also looks like libappindicator is deprecated.
Do you have any concerns or comments about libappindicator being removed from the crates-build-env?
Thanks!
@jyn514 - I've divided up the removed packages into three categories, and added some icons to the PR description, I don't use my git forensics skills very often, so hopefully I got everything correct:
:seedling: - these packages seemed to start out with version numbers early on, and were upgraded as changes were made, and non-versioned package references were added. It's possible some folks are depending on these, but there was no explicit add PR, so maybe it's okay to remove them?
:wrench: - these packages were added in a specific commit to update the linux build environment to reflect docs.rs... but they no longer exist in jammy, and again, were not added by an explicit PR, so okay to remove them?
:interrobang: - the only package that has been removed in this PR that was explicitly added by a community member is the libappindicator. I've posted a message here to the author asking if that removal is okay.
Let me know if you think anything is amiss here, or if there's anything else I can do to help move this along. Thanks!
Oh, I guess there's also the fourth category :recycle: of items that were in the initial commit that you indicated should be safe to remove.
I have not worked with the libappindicator-sys crate since I made the PR for adding the libappindicator3-dev package. Therefore, I cannot really give an educated answer.
I would suggest to remove the package and see if someone notices.
FantasyTeddy - You previously added Add libappindicator3-dev package for libappindicator-sys crate to the crates-build-env. Since then, Add packages necessary for libayatana-appindicator-sys to compile has also been added.
When updating to Ubuntu Jammy 22.04, these crates now conflict and cannot be installed together. It also looks like libappindicator is deprecated.
Do you have any concerns or comments about libappindicator being removed from the crates-build-env?
Thanks!
cc @qdot, you're listed as the crate owner of libappindicator-sys
.
@neonphog @jsha thanks for all the time you put into collecting the data about why crates were adding ❤️ assuming qdot doesn't have objections, this looks good to me :)
@jyn514 I handed off libappindicator-sys to the tauri project a couple of years ago, they're the ones you'd want to contact about any updates/changes needed.
not sure who on https://github.com/orgs/tauri-apps/people is in a leadership position, so just going to roll the dice ... @amrbashir
FantasyTeddy - You previously added Add libappindicator3-dev package for libappindicator-sys crate to the crates-build-env. Since then, Add packages necessary for libayatana-appindicator-sys to compile has also been added.
When updating to Ubuntu Jammy 22.04, these crates now conflict and cannot be installed together. It also looks like libappindicator is deprecated.
Do you have any concerns or comments about libappindicator being removed from the crates-build-env?
Thanks!
@jyn514 - looks like they try for libayatana-appindicator first anyway, so shouldn't be a problem:
https://github.com/tauri-apps/libappindicator-rs/blob/main/sys/src/lib.rs#L14
let libayatana = unsafe { Library::new("libayatana-appindicator3.so.1") };
if let Ok(lib) = libayatana {
return lib;
}
let libappindicator = unsafe { Library::new("libappindicator3.so.1") };
if let Ok(lib) = libappindicator {
return lib;
}
As @neonphog found, we do support both libs so it should be fine for us👍.
Updates the base to jammy 22.04.
I've made the following changes to packages (let me know if I missed anything) and attempted to describe my logic for the changes:
EDIT: The text comments are a bit out of date, pay more attention to the icons:
clang-6.0
- the default clang in jammy is 14, the earliest available is 11, recommend leaving this out until a PR is made.enchant
- enchant has been removed.enchant-2
is available, but recommend leaving this out until a PR is made.lib32gcc1
- this has been removed. There are otherlib32gcc-*
support packages, but recommend leaving this out until a PR is made.libappindicator3-dev
- conflict withlibayatana-appindicator3-dev
- looks like libappindicator is deprecated, so not including this as it conflicts with libayatana-appindacator.libarmadillo9
- updated to libarmadillo10libavresample-dev
- removed, recommend leaving out.libavresample4
- removed, recommend leaving out.libayatana-appindicator3-dev
- conflict withlibappindicator3-dev
- resolved conflict by not including the otherlibappindicator3-dev
as that appears to be deprecated.libboost-filesystem1.67.0
- update to 1.74.0libboost-filesystem1.71.0
- update to 1.74.0libboost-iostreams1.67.0
- update to 1.74.0libboost-iostreams1.71.0
- update to 1.74.0libboost-system1.67.0
- update to 1.74.0libboost-system1.71.0
- update to 1.74.0libcapnp-0.7.0
- update to 0.8.0libcapstone3
- update to libcapstone4libcdio18
- update to libcdio19libcfitsio8
- update to libcfitsio9libcilkrts5
- removed, recommend leaving out.libclang-6.0-dev
- seeclang-6.0
libclang-common-6.0-dev
- seeclang-6.0
libclang1-6.0
- seeclang-6.0
libcroco3
- removed, recommend leaving out.libcroco3-dev
- removed, recommend leaving out.libcrystalhd3
- removed, recommend leaving out.libdap25
- update to libdap27libdc1394-22
- update to libdc1394-25libdns-export1109
- update to libdns-export1110libdns1109
- update to libdns1110libenchant1c2a
- seeenchant
libepsilon1
- removed, recommend leaving out.libgc1c2
- use libgc1 instead.libgdal26
- update to libgdal30libgeos-3.8.0
- update to libgeos3.10.2libglew2.1
- update to libglew2.2libhogweed5
- update to libhogweed6libicu66
- update to libicu70libidn11
- update to libidn12libilmbase24
- update to libilmbase25libisl22
- update to libisl23libjson-c4
- update to libjson-c5libjsoncpp1
- update to libjsoncpp25libkadm5clnt-mit11
- update to libkadm mit12libkadm5srv-mit11
- update to libkadm mit12libkdb5-9
- update to libkdb5-10libldap-2.4-2
- update to libldap-2.5-0libllvm6.0
- seeclang-6.0
libllvm7
- seeclang-6.0
libllvm8
- seeclang-6.0
libmariadbclient-dev
- now provided bylibmariadb-dev
libmariadbclient-dev-compat
- now provided bylibmariadb-dev-compat
libmirclient-dev
- removed, recommend leaving out.libmirclient9
- removed, recommend leaving out.libmircommon7
- updated to libmircommon8.libmirprotobuf3
- removed, recommend leaving out.libmpdec2
- update to libmpdec3libmpx2
- removed, recommend leaving out.libnetcdf15
- update to libnetcdf19libnettle7
- update to libnettle8libopencv-calib3d4.2
- update to libopencv4.5libopencv-contrib4.2
- update to libopencv4.5libopencv-core4.2
- update to libopencv4.5libopencv-features2d4.2
- update to libopencv4.5libopencv-flann4.2
- update to libopencv4.5libopencv-highgui4.2
- update to libopencv4.5libopencv-imgcodecs4.2
- update to libopencv4.5libopencv-imgproc4.2
- update to libopencv4.5libopencv-ml4.2
- update to libopencv4.5libopencv-objdetect4.2
- update to libopencv4.5libopencv-photo4.2
- update to libopencv4.5libopencv-shape4.2
- update to libopencv4.5libopencv-stitching4.2
- update to libopencv4.5libopencv-superres4.2
- update to libopencv4.5libopencv-video4.2
- update to libopencv4.5libopencv-videoio4.2
- update to libopencv4.5libopencv-videostab4.2
- update to libopencv4.5libopencv-viz4.2
- update to libopencv4.5libopencv4.2-java
- update to libopencv4.5libopencv4.2-jni
- update to libopencv4.5libopenexr24
- update to libopenexr25libparse-debianchangelog-perl
- removed, recommend leaving out.libperl5.30
- update to libperl5.34libpgm-5.2-0
- update to libpgm-5.30-0libpoppler97
- update to libpoppler118libproj15
- update to libproj22libprotobuf-lite17
- update to libprotobuf-lite23libprotobuf17
- update to libprotobuf23libprotoc17
- update to libprotoc23libpython3.9
- update to libpython3.10libpython3.9-dev
- update to libpython3.10libpython3.9-minimal
- update to libpython3.10libpython3.9-stdlib
- update to libpython3.10libqhull7
- update to libqhull8.0libruby2.7
- jammy only has ruby3.0libsemanage1
- update to libsemanage2libsepol1
- update to libsepol2libsepol1-dev
- covered by libsepol-devlibssl1.1
- update to libssl3libubsan0
- update to libubsan1libvpx6
- update to libvpx7libvtk6.3
- update to libvtk9.1libwacom2
- update to update to libwacom9libwebp6
- update to libwebp7libx264-155
- update to libx264-163libx265-179
- update to libx265-199python-dev
- replaced by explicit python2-devqt5-default
- no longer requiredruby2.7
- jammy only has ruby3.0ruby2.7-dev
- jammy only has ruby3.0