On 04/13/2018 11:14 PM, Mojca Miklavec wrote:
> On 11 April 2018 at 22:37, Hans Hagen wrote:
>> On 4/11/2018 10:08 PM, Brian Hunt wrote:
>>> 3. Add texlua (and texluac?) to
>>> a. the setup rsync bin/ directories
>>> b. the tex/texmf-linuxmusl(|-ppc|-64)
>> we don't use texluac, don't need texlua on windows and on linux texlua is
>> just a symlink
> This was entirely my fault which has been fixed in the meantime.
>> if musl needs different bin then there should be a different initial
>> download i think because basically we're now talking of: windows, osx,
>> linux, linuxmusl (a different species)
> Exactly. We have that. And most bits and pieces are in place to allow
> that, except for the problem with mtxrun not being able to determine
> the platform correctly.
Actually, the musl detection only has to be peformed for downloading
binaries. Once those binaries are installed, they behave exactly like
the linux-64 binaries. I would suggest to simply drop musl binaries in
the texmf-linux-64 folder as well. (Who has ConTeXt for multiple
platforms on their computer anyway?) That would render all the funny
business of calling ldd in mtxrun superfluous.
>>> 4. Update mtxrun
>>> Here's code that ought to work for detecting musl in mtxrun. Around line
>>> 3721 of the mtxrun add:
>>> if find(architecture,"x86_64",1,true) then
>>> elseif find(architecture,"ppc",1,true) then
>>> + if resultof("ldd --version 2>&1"):find("musl") ~= nil then
>>> + platform = platform:gsub("linux", "linuxmusl")
>>> + end
>> that's not going to happen, some system call 9each run) in order to
>> determine what linux species we run ... (there are a few calls but these are
>> never used becasue we use HOSTTYPE (if needed we can set one ourselves on
>> these platforms)
>> isn't there some magic env var that tels if musl is used? do programs and
>> scripts really have to jumpo through such loops
> Hans, we don't really need this code for the sake of minimals
> themselves, it is part of ConTeXt code that needs it and fails.
> The problem is that even if I properly detect the platform upfront,
> your code (mtx-update) will refuse to respect the setting. When
> ./bin/mtxrun --script ./bin/mtx-update.lua --force --update --make
> --context=beta --platform=linuxmusl-64 --texroot="/some/path"
> from musl linux, the mtx-update will insist in always installing and
> using linux-64 binaries even if they don't work, no matter what else
> we try.
> I still believe that a string like "x86_64-linuxmusl" is something
> that luatex itself should be able to return when asked about what
> platform it is running on (what platform it has been compiled for).
> We've discussed this with Taco many years ago, but this has never been
> If your question is of interest to others as well, please add an entry to the
> maillist : firstname.lastname@example.org / http://www.ntg.nl/mailman/listinfo/ntg-context
> webpage : http://www.pragma-ade.nl / http://context.aanhet.net
> archive : https://bitbucket.org/phg/context-mirror/commits/
> wiki : http://contextgarden.net
If your question is of interest to others as well, please add an entry to the
maillist : email@example.com / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage : http://www.pragma-ade.nl / http://context.aanhet.net
archive : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net