> On Jan 15, 2017, at 3:36 PM, Matthew Parsons <[email protected]> 
> wrote:
> 
> I expect this is more of a beginner pkgsrc question, but the documentation I 
> can find on the multi-arch images is minimal. 
> (https://www.perkin.org.uk/posts/multiarch-package-support-in-smartos.html ) 
> I understand the general high-level concept but not the practical realities 
> from an admin perspective.
> 
> Other than some extra disk space, are there other tradeoffs using the 
> multiarch images? Which packages aren't available in the multi repo that are 
> in x64 (eg Salt?) and why?

Some packages are just comprised of scripts which don't care about which arch 
they're interpreted by - 32bit perl or 64bit perl? 32bit node or 64bit nodejs? 
In package management systems found on Linux, for example, you would see these 
commonly denoted by the "noarch" nomenclature.

One of the historical reasons for multiarch in the Solarish world particularly 
is that Back In The Day, there were still 32bit and 64bit machines operating 
side by side, and even being sold concurrently. This was the case for SPARC, 
and later x86. It would have been a headache to maintain separate 32bit and 
64bit distributions of Solaris, and indeed there were cases where a 64bit 
system with 64bit Solaris installed might still need to boot a 32bit kernel, 
either because of some bug or (more likely in my experience from that era) a 
3rd party driver which was not (yet) available in a 64bit form.

Outside of the kernel, one was more likely to run closed-source apps back then 
as the open source way of doing things hadn't caught on to the level we see 
today with proprietary software vendors, and they were also quite slow (and in 
some cases, quite unwilling!) to provide 64bit executables and libraries for 
their products... so if you had only 64bit UltraSPARCs in your datacenter and 
needed to run some 32bit binaries, you needed multiarch there as well.

One also saw something similar happen when Apple migrated MacOS from 32bit PPC 
to 64bit PPC, and then from 64bit PPC to 32 and then 64 bit x86 (remember, 
their first x86 products were based on the 32bit Core 1!) This was all 
facilitated by the Mach-O executable format which has multiarch facilities are 
built into it.

As the pkgsrc page on multiarch says, pkgsrc wasn't raised with multuiarch as a 
primary design feature - understandable given its origins. However in these 
days, I personally find that maintaining multiarch binary versions of packages 
to be onerous and quite time consuming by itself. Squaring the excess of time 
and care needed to put towards creating a multiarch package (it's harder than 
one might think!) with the need for that kind of flexibility here in 2017 where 
we often have the source for the entire stack at our fingertips, I'm much more 
inclined to pick 64bit and run with only that, and pretend that multiarch 
doesn't even exist. 

/dale

-------------------------------------------
smartos-discuss
Archives: https://www.listbox.com/member/archive/184463/=now
RSS Feed: https://www.listbox.com/member/archive/rss/184463/25769125-55cfbc00
Modify Your Subscription: 
https://www.listbox.com/member/?member_id=25769125&id_secret=25769125-7688e9fb
Powered by Listbox: http://www.listbox.com

Reply via email to