-
Notifications
You must be signed in to change notification settings - Fork 43
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
Installation over TeXLive 2016 #1197
Comments
More details here: https://mail.gna.org/public/gregorio-devel/2016-07/msg00008.html |
I would only say---if you do add the install-exec-hook---that it still works for people who use make install (probably with PREFIX set) to install for packaging purposes. |
I think I understand what you're concern is, but could you add a bit more detail so that I can be sure. |
When distributions package things that are generally installed using |
That is what I thought you meant. I'm not sure how to get around it, but I'll make sure to pay attention to that issue when I get there. Thanks for the heads-up. |
Okay, after looking at Ubuntu, it appears that the To that end, this is the modification I'm proposing for the Makefile
Before I get to work on this, does anyone see any potential problems with this plan? |
I think the plan looks OK, but we should also think about perhaps naming the executable (instead) with the version number. It would mean a change for people who run gregorio directly (as opposed to auto-compile) and in the documentation, but we could install a symlink or script to make that easier. |
Well, I can't say it's really satisfying, but maybe we don't have a choice... Maybe asking the TeXLive list would be a good idea? Maybe they'll have other ideas? |
Discussing with @OldClaudio (who has this problem), it seems that it would be a good idea to be able to configure the absolute path to Gregorio in the TeX document... |
another idea is an env variable |
Here's another, probably far-fetched, idea: we could put that path to the gregorio executable into a tex or lua file during install. |
Hmm, this is an interesting idea... one problem I see is that what's listed in the |
Well, if we're going to allow configuring the path in the TeX document or via an environment variable, it would be the same interaction with |
The problem isn't simply one of configuring So far I've only seen the problem with TeXShop, but I'll admit that I haven't checked to see if other GUIs (like TeXworks) will have the same problem. If the problem is specific to TeXShop, I'll email its author to find out if there is anything we can do in the hidden settings. |
Configuring the path is not that simple; for Mac, for example, the #!/bin/tcsh set path= ($path /usr/texbin /usr/local/bin) Therefore the PATH is modified and configured to use both binary #!/bin/tcsh set path= ($path /usr/local/bin /usr/texbin ) but without any difference in behavior; moreover the PATH environment by /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Library/TeX/texbin:/Users/claudio/bin What I meant with an environment variable was a macro holding and empty It would be a simple action that of defining a non empty substitution At the moment I solved my personal problem by changing name to the Claudio On 02/08/2016 14:09, Henry So wrote:
|
It certainly is so also with TeXstudio, probably also with Texmaker. With TeXworks the list of the folders it searches in this order are /usr/bin /bin /usr/sbin /sbin /usr/local/bin therefore this problem should not be present when TeXworks is being used I have an indirect proof that TeXworks works this way, because the I agree that contacting Dick Koch is a good idea; he is very reactive Claudio On 02/08/2016 16:04, Br. Samuel Springuel wrote:
|
I forgot an important issue connected with my previous message: the This work around by means of a configuration file appears to me as the All the best On 02/08/2016 14:09, Henry So wrote:
|
I just checked TeXStudio on my primary system (Mac), and it seems to work just fine, picking up the correct binary based on I'm in the middle of creating a Ubuntu 16.04 VM, but when that's done I'll do some more testing on other platforms to try and determine the extent of the problem. That should give us a better idea as to what sort of solution will be necessary to solve it (and who it would be useful to enlist for help). |
The following results come from installing 4.2.0-rc2 over TeXLive 2016 without making any customizations to the resulting setup: On Mac (El Capitan):
On Linux (Ubuntu 14.04, the 16.04 install didn't work properly so I have to start over another day):
On Windows (10) the 4.2.0-rc2 installer 1) post-pends the gregorio bin directory to |
Dear Br. Samuel, dear Élie, dear all, When you prepare yearly package for CTAN or an RC version of the github I did change the two instances of the luatex statement local cmd = string.format("gregorio %s -W -o %s -l %s %s", local cmd = string.format("gregorio420rc2 %s -W -o %s -l %s %s", and correspondingly I changed the name of the executable in my I do not know how to automatically implement this minimal variation on What I am suggesting does not depend on platform type or specific The best to all the readers of this message Claudio On 03/08/2016 04:19, Br. Samuel Springuel wrote:
|
This sounds like a good idea, maybe the gregorio executable from github would have a version name and the TeXLive one would not. That would mean though that users using the github version would have to pass the |
How about always naming the executables with version number as @OldClaudio suggests and adding a symlink called simply |
That's pretty much what I suggested we consider two days ago. Put the version number on the executable and (perhaps) supply a symlink. Edit: Also, symlinks are weird under Windows, so that needs to be considered as well. |
I see some problems with symlinks on vintage versions owWindows On 03/08/2016 23:30, Henry So wrote:
|
@henryso, I forgot that you had made that suggestion. Sorry for not giving you proper credit. @OldClaudio, the Even without installer support, XP users could still make use of Gregorio by copying the executable into |
mklink also only works under NTFS, but that's really only an issue if trying to install on smaller FAT-based flash drives. An alternative may be a batch file. On the opposite side, it may be sufficient to just put the version number on the executable. How many people still run the executable directly? Those who do can probably adapt their scripts with the version number. |
TeXLive has a special way to handle symlinks, they build some .exe, I'm affraid we can't really hack into this system, that would take a huge amount of time and disussion... so having a version number in non-TeXLive binaries and ask users to use the |
I agree with Èlie's last comment. In facts I tried to use a simlink, but Neglecting those who run gregorio from the command line, the RC Claudio On 04/08/2016 08:23, Elie Roux wrote:
|
Is Edit: Perhaps we should abandon putting |
I think the
|
Do you know how much of an ask it is to have the versioned gregorio in |
I think it's quite ok... but that will be for TeXLive 2017 I'm affraid... |
Of course, but for now, we can start tacking on the version number for 4.2, which will ease installation over TeX Live 2016 (and is the exact solution used by @OldClaudio). Then once TeX Live 2017 releases, things will be more standard and easier to explain. I think the number of people running the gregorio executable directly is growing smaller anyway, and those people can always create a script or symlink to deal with it if they don't want to play with their scripts. |
That's fine for me, it should be made very explicit in the CHANGELOG and UPGRADE, but no objection |
Okay, in order to implement this solution I need to do the following (correct me if I'm wrong):
|
Sounds about right to me. |
Just noting that this fix probably obsoletes the need for a Debian diversion in #1106. |
I tried following this StackExchange question in order to change the Makefile (using |
I think |
Remaining to be done:
|
* release-4.2: Make Mac Uninstall package version specific Documenting function rename Forgot something. Modified d9db038 Clean-ups from ca74fd4 Noted that Gregorio in TeX Live 2016 does not have the version number. Fixes gregorio-project#1197. Appended FILE_VERSION to the gregorio executable file name. Fixes gregorio-project#1197. Added fix for bad \hbox, thanks to @OldClaudio. Fixes gregorio-project#1202. Added copyright notices to documentation source files. Homogenized documentation sources in the various installer manifests.
I guess everything for this is done. Please reopen if I'm not correct. |
* release-4.2: (72 commits) Added a test for the suppression of \GreLastOfScore. Tests gregorio-project/gregorio#1205. Updated test harness to handle gregorio executable with version number. Tests gregorio-project/gregorio#1197. Updated tests to match the oriscus orientation at unison change. Tests gregorio-project/gregorio#1177. Small inconsistency Added a test to exercise per-line dimension changes. Tests gregorio-project/gregorio#1156. Accepted test results after merge. accept tests for fix-1144 accept changes for #1169 accept tests for 1146 accept tests for #1146 accept changes for fix-1138 changes for fix-1137 Accepted updated results after merging gregorio-project/gregorio#1154. Tests gregorio-project/gregorio#1153. Accepted updated results after merge of release-4.2 into fix-1155. accept changes for fix-1152 add tests for 1155 accept tests for fix-1155 Accepted expectations after #1148. Tests gregorio-project/gregorio#1145. Added the test from gregorio-project/gregorio#1141. Added the test from gregorio-project/gregorio#1139. ...
When installing Gregorio 4.2 over a TeXLive 2016, one ends up with two versions of the executable on one's system and depending on one's method of usage and PATH settings (both generally and for specific programs) the wrong version may end up getting used.
For the full blown installers, I'm configuring them to move the TL2016 executable aside, but preserve it so that during uninstallation it can be restored to its original location.
I also plan on adding a version check of the installer into the version check scripts which are executed during package loading. Thus even if the above doesn't work, the user will be alerted to the problem in an understandable manner.
I also may add a
install-exec-hook
so that the installation from source usingmake install
works like the full blown installers.The text was updated successfully, but these errors were encountered: