git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 0/5] git-gui: workaround deprecation of Tcl/TK 8.5 in macOS

From
Carlo Arenas <carenas@gmail.com>
Date
Jul 30, 2025, 20:51 UTC
Message-ID
<CAPUEspiP+Xoz_W-X4QrStAFS1BqSF4pws7d6dxaf6m0OeLtM_w@mail.gmail.com>
In-Reply-To
<xmqqtt2tl9yw.fsf@gitster.g>
On Wed, Jul 30, 2025 at 1:06 PM Junio C Hamano <gitster@pobox.com> wrote:
Show 11 quoted lines
>
> Carlo Marcelo Arenas Belón <carenas@gmail.com> writes:
>
> > This series adds improvements to allow running `git-gui` in macOS, which is
> > stuck in an ancient version of Tcl/TK that is no longer supported by git.
>
> A naïve question.
>
> Just like Git is a third-party software from macOS's point of view,
> wouldn't Tcl/Tk be equally a third-party software, or is it more
> ingrained to the base operation system offering for some reason?

It is more ingrained as Tcl/Tk comes with the OS as a Framework, although one that hasn't had updates for half a decade, and that prints a message saying it is deprecated and might be gone in a future release for several releases, when it works.

git comes as part of the "Development tools" (both the command line that is independent of Xcode and as part of Xcode) and therefore must be installed independently.

Show 5 quoted lines
> The reason why I ask this question is because I do not see how it
> would make it a lot more hassle having to upgrade the version of
> tcl/tk on their macOS machine than having to upgrade the Git to the
> version that ships with this change, from an end-user's point of
> view.
Not sure I understand the question, but "upgrading" is not the problem.

Users can (and had been doing for a while) install a newer version for both but the Makefile that comes with git-gui tries to find the system provided Tcl/Tk and use that, which IMHO makes little sense once the git-gui codebase is no longer compatible with the version provided by that Framework.

Carlo
Previous: Junio C HamanoNext: Junio C Hamano
Message 17 of 25 in “git-gui: workaround deprecation of Tcl/TK 8.5 in macOS”
  1. 0/5 git-gui: workaround deprecation of Tcl/TK 8.5 in macOSCarlo Marcelo Arenas Belón, Jul 30, 2025
  2. 1/5 git-gui: remove uname_O in MakefileCarlo Marcelo Arenas Belón, Jul 30, 2025
  3. Junio C HamanoJul 30, 2025
  4. 2/5 git-gui: fix dependency of GITGUI_MAIN on generatorCarlo Marcelo Arenas Belón, Jul 30, 2025
  5. 3/5 git-gui: retire Git Gui.appCarlo Marcelo Arenas Belón, Jul 30, 2025
  6. 4/5 git-gui: honor TCLTK_PATH in git-gui--askpassCarlo Marcelo Arenas Belón, Jul 30, 2025
  7. Johannes SixtJul 30, 2025
  8. Patrick SteinhardtJul 31, 2025
  9. 5/5 git-gui: ensure own version of git-gui--askpass is usedCarlo Marcelo Arenas Belón, Jul 30, 2025
  10. Johannes SixtJul 30, 2025
  11. Mark LevedahlJul 30, 2025
  12. Johannes SixtJul 30, 2025
  13. Carlo ArenasJul 30, 2025
  14. Patrick SteinhardtJul 31, 2025
  15. Junio C HamanoJul 30, 2025
  16. Junio C HamanoJul 30, 2025
  17. Carlo ArenasJul 30, 2025
  18. Junio C HamanoJul 31, 2025
  19. 0/5 git-gui: workaround deprecation of Tcl/Tk 8.5 in macOSCarlo Marcelo Arenas Belón, Jul 31, 2025
  20. 1/5 git-gui: remove uname_O in MakefileCarlo Marcelo Arenas Belón, Jul 31, 2025
  21. 2/5 git-gui: fix dependency of GITGUI_MAIN on generatorCarlo Marcelo Arenas Belón, Jul 31, 2025
  22. 3/5 git-gui: retire Git Gui.appCarlo Marcelo Arenas Belón, Jul 31, 2025
  23. 4/5 git-gui: honor TCLTK_PATH in git-gui--askpassCarlo Marcelo Arenas Belón, Jul 31, 2025
  24. 5/5 git-gui: ensure own version of git-gui--askpass is usedCarlo Marcelo Arenas Belón, Jul 31, 2025
  25. Johannes SixtJul 31, 2025

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.