After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 789220 - Windows installer doesn't actually install meld in a useful way (that is, working for git for windows with: git mergetool --tool=meld)
Windows installer doesn't actually install meld in a useful way (that is, wor...
Status: RESOLVED OBSOLETE
Product: meld
Classification: Other
Component: installer
3.16.x
Other Linux
: Normal major
: ---
Assigned To: Keegan Witt
meld-maint
Depends on:
Blocks:
 
 
Reported: 2017-10-19 22:52 UTC by el
Modified: 2017-12-13 19:29 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description el 2017-10-19 22:52:16 UTC
The windows installer doesn't actually install meld in a useful way (that is, working for git for windows with: git mergetool --tool=meld) because it's not added to %PATH%. This means the user needs to manually fiddle with %PATH% after the install to be able to actually use it. Therefore, please fix the installer to properly add it to the %PATH% variable for the installing user.
Comment 1 Vasily Galkin 2017-10-20 12:26:54 UTC
Adding to path directoy with meld.exe is quite risky idea - 
it contains a lot of dlls with common names:
python27.dll
libwinpthread-1.dll
libjpeg-8.dll
libintl-8.dll
libgio-2.0-0.dll

And many others.

Having all these in the path any lead to problems in other applications (even if adding to path would be manually enabled in the installer - selecting this option would lead to problems)

A more safe alternative is adding some wrapper script in standalone Scripts subdirectory, but it isn't obvious how make this script compatible with git merge tool since it is executed from sh code and doesn't support wrapper named meld.cmd
Comment 2 Kai Willadsen 2017-10-20 21:11:34 UTC
Also, last time I checked, the different ways to invoke git on Windows had very different effects. I think we would have to check our handling of GUI launch vs. command line (i.e., cmd.exe) vs. unix shell (i.e., msys).

Having said that, I completely agree that we should install such that it's available on the command line by default.

As a thought that I haven't tested at all, might it be easier to just automatically add some git mergetool config instead of messing with %PATH%?
Comment 3 Keegan Witt 2017-10-21 18:16:17 UTC
We could call git config during the installer (if there's a place to put that in cx_freeze), or edit the %USERPROFILE%\.gitconfig file.  We'd probably have to assume we're working with Git for Windows and not Git in Cygwin (but that's probably reasonable).
Comment 4 Kai Willadsen 2017-10-21 22:27:02 UTC
Yeah, I'd be happy with either of those options as well. I haven't tested, but I assume that doing the former will correctly edit the system-wide config on a normal system install?

I also don't know whether the current installer system (just Python's default MSI thing, really) has the hooks to do this, but I'm pretty sure it *doesn't* have the hooks to e.g., add a checkbox so that the user can opt out during install. This wouldn't be a blocker for me, but ideally we'd add it.

Also, there's been talk in the past of moving away from the MSI installer, and I'm... probably more open to this than I have been previously.
Comment 5 GNOME Infrastructure Team 2017-12-13 19:29:08 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to GNOME's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/meld/issues/143.