-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
gtk{2,3}{,-devel}: Use GTK3 version of gtk-update-icon-cache
by default
#23731
base: master
Are you sure you want to change the base?
Conversation
Notifying maintainers: |
Converting to draft for a few days, until I've had a chance to test with dependent ports. (Otherwise it might get merged at the 72-hour mark, and these ports are critical.) |
and about 77 ports have already been configured to use gtk-update-icon-cache-3.0 now, so all those will presumably have to be changed if this is done: |
not to mention that gtk-update-icon-cache-4.0 will be the new kid soon enough... wouldn't it be nice if there was a "fix this once" approach to some of these things that didn't require redoing the same work over and over... |
It doesn't look like GTK4 has a |
Is it best to update one port per commit or have one supercommit updating all the ports? |
This would be nice to have. I think one commit is fine in this case since it’s all the same change. EDIT: Actually, two commits. One for |
The following comment summarizes the key concern with this PR: |
I don't think a find and replace is a lot of work tbh. It's also used in the activate stage AFAIK so no rev-bump needed. And we get rid of a bunch of patches. |
1f7b93e
to
3ec9aac
Compare
@mascguy please take care of this PR and the few that depends on it. If nothing happens in the next week, I will start closing them. If you don't want to merge them, that's fine with me. But just say so and close the PR(s) instead of having them open without any intention to get them merged. |
3ec9aac
to
1172eb1
Compare
@reneeotten @mascguy I finally had a good chance to address updating all the Portfiles for applications that call |
There's another gotcha that you need to deal with: Users routinely have both GTK2 and GTK3 installed. And when that's the case, you have a problem: These updated ports will try to overwrite the So we'll need to add the so-called "deactivate hack," deactivating the other port prior to activation. But it should only be done for the previous version/revision. Let me know if this makes sense. I can also dig up a reusable tcl procedure, which I've used previously for such a case. |
That would be perfect. Alternatively, I do have maintainer edits turned on for this PR, so you could commit it directly yourself it you prefer. |
@mascguy Any update? Perhaps another route would be to make the new revision of gtk3 conflict with the old revision of gtk2, so the gtk2 update will always get installed first (if MacPorts' dependency resolution works like that). Would that work? |
0b08d82
to
6551368
Compare
6551368
to
e6d9931
Compare
@mascguy I just wanted to check on this since it's been over a month with no response. Other updates are pending this PR being merged (e.g. #24851), so I'd like to get this finished and merged as quickly as possible. |
This comment has been minimized.
This comment has been minimized.
Sorry, forgot the link: https://trac.macports.org/wiki/PortfileRecipes#deactivatehack |
so is anyone going to work on this and resolve it anytime soon? If not, I am going to close the PR and the ones that depend on it. You can always reopen them once you had the time to work on it - the PR queue isn't here to park unfinished PRs for extended periods of time. |
I can probably finish it this weekend now that I have been provided the information needed to finish it. |
a279f50
to
00b863a
Compare
Alright, I believe this should be ready to be merged now. |
@mascguy as the relevant maintainer please take care of this PR |
@mascguy Any chance you could take a look at this PR and merge it if everything is good? |
As opposed to `gtk-update-icon-cache-3.0`
bc70457
to
2ce2e5f
Compare
Rebased onto latest Are there any plans to merge this? I have other port updates that are waiting on this PR being merged, and I'd like to get these upstreamed soon so my local state isn't constantly diverged from upstream. |
Definitely, but I need to carve out some time to validate these changes locally. I'll try to get to it this week, if possible. |
@mascguy this has been open now for more than 6 months; anytime would be good now or I will close the PR |
Description
If building a port that needs to run
gtk-update-icon-cache
, butgtk2
is no longer installed, the port will fail to build. This is because gtk3'sgtk-update-icon-cache
is currently renamed togtk-update-icon-cache-3.0
to not conflict with thegtk2
version. This PR makes it so the gtk2 version is renamed togtk-update-icon-cache-2.0
, and the gtk3 version keeps the default name ofgtk-update-icon-cache
. GTK2 is long deprecated, the list of things still using it is shrinking over time, and therefore the likelyhood of having a build fail due togtk-update-icon-cache
missing is going to keep going up if we depend on the gtk2 version being installed. In fact, as I get to updating more XFCE stuff, the list of things depending ongtk2
is going to get even smaller.FWIW, on my Ubuntu system,
gtk-update-icon-cache
is installed as a separate package, and is built from the GTK3 sources. There does not appear to be a gtk2 version of this binary even available.See #23674 (comment) for an updated build that is broken by the old behavior.
Type(s)
Tested on
macOS 14.4.1 23E224 arm64
Xcode 15.3 15E204a
Verification
Have you
port lint --nitpick
?sudo port test
?sudo port -vst install
?