Opened 3 years ago

Last modified 3 years ago

#62376 assigned defect

texlive-bin tries to install stuff in system space even when macports is confihgured to put everything in home dir. [universal, Big Sur]

Reported by: arthurcnorman Owned by: drkp (Dan Ports)
Priority: Low Milestone:
Component: ports Version:
Keywords: Cc: mojca (Mojca Miklavec)
Port: texlive-bin

Description

In order ro build universal binaries of on Big Sur/Apple m1, where some ports are (very reasonably) not yet supporting +universal, I have set up scripts (you can see them in https://sourceforge.net/p/reduce-algebra/code/HEAD/tree/trunk/mac-universal/) that make both an Intel and an ARM copy of macports that build their port tree in user filespace and then use lips to consolidate. This is perhaps delicate and if I was more patient I would wait until every port that I used built happily with +universal. Anyway it is working quite nicely for me, however I believe I observe that at least tetex-bin insists on putting some files in filespace that needs sudo, specifically /Library/TeX/Distributions. I cope with this by using sudo and can thus survive, but put it on record here simce maybe oddities ought to be reported.

Change History (6)

comment:1 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

Owner: set to drkp
Port: texlive-bin added
Status: newassigned

Yes, the texlive-bin port does install things into /Library/TeX/Distributions. A long comment within the texlive-bin Portfile explains why.

comment:2 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

Your method of attempting to build universal is clever but not what we intended anyone to do. If there are ports that do not build universal in the normal way using the +universal variants, please file bug reports or pull requests so that it can be fixed.

comment:3 Changed 3 years ago by arthurcnorman

Thank you very much. I tried flagging my issue as non-critical since I can just use "sudo" - I had not found the comments you refer to or understood all the background, but texlive is a big and complicated setup and a desire to be able to flip between different versions of it and potential other TeX implementations is good. I do not see what I am doing as anything other than a temporary hack, but it has given me enough to be able to build a universal version of Reduce. As to raising issues elsewhere, I had contributed comments on issue 61545 and the proper MacPorts people had clearly been making good progress - but I was still finfing that the installation of xorg-libx11 was set to include python38 which doe snot yet build for arm64+x86_64, and many things depend on ossp-uuid where my attempts to get a patch that O could propose had stalled. So this was impatiance on my part and I really look forward to when "everything" just builds with +universal.

While here can I ask about the plans for building in +universal mode on Big Sur but an INtel CPU. Sort of obviously many more ports will not build the arm64 variants there where the build wishes to run things in the target architecture. I can happily generate trak entries for the cases I find but only want to clutter things up if you view that sort of cross build as supportable and reasonable. I would start with ossp-uuid, libpng and of course python38 and eveything that depends on it... but it only make sense for me to do that it it will be useful!

comment:4 Changed 3 years ago by drkp (Dan Ports)

Regardless, it might be good to make installing the out-of-prefix texdist files a variant. It ought to be enabled by default since that's the common case, but I can imagine there are various development or test scenarios where you'd want to have multiple installations on the same machine and don't want them to conflict.

comment:5 Changed 3 years ago by mojca (Mojca Miklavec)

I agree. The current approach doesn't let the user have two copies of macports with texlive installed, this needs a fix.

There is a workaround for frameworks and applications that's solved globally, but probably nobody thought about this one particular problem so far.

But also, I'm not even sure to what extent this structure is still useful. It was overengineered in some ways from the day one, and lacking some crucial features on the other hand. I'm not exactly following all the details, but I have an impression that TeXDist PrefPane where this functionality was useful doesn't even work any longer on newer versions of macOS. (It might be useful elsewhere, but I no longer keep track.)

Last edited 3 years ago by mojca (Mojca Miklavec) (previous) (diff)

comment:6 Changed 3 years ago by mojca (Mojca Miklavec)

Cc: mojca added
Note: See TracTickets for help on using tickets.