<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; " class=""><div class="">The idea of MacPorts is to manage installing inter-related libraries and executables.</div><div class=""><br class=""></div><div class="">But people want to use it to install prebuilt binaries as well, like homebrew does for cask installs.</div><div class=""><br class=""></div><div class="">MP has not decided if it will or will not accept these, but they just keep rolling in more and more anyway.</div><div class=""><br class=""></div><div class="">Installing them as "ports" is kinda silly, and wasteful, but simple, practical, and slides them in under the radar.</div><div class=""><br class=""></div><div class="">Having an actual plan for these would be better.</div><div class=""><br class=""></div><div class="">If software _can_ be built, we want to do it that way, so (IMHO) your work is not wasted. </div><div class=""><br class=""></div><div class="">We get many benefits, I believe, from building things ourselves.</div><div class=""><br class=""></div><div class="">Whether we do or don't accept binary "cask" installs ins not up to me -- but I'm just point out that they are coming in anyway so a plan would be good, esp for the multi-megabyte behemoths that are out there.</div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">Ken</div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><br class=""><div class=""><div class="">On 2021-02-05, at 2:58 PM, Jason Liu wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite" class=""><div dir="ltr" class=""><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="">The destroot phase needs to — what — record the files that will be
installed in some kind of an index file? And also know about the stuff
that gets installed into ~/Library, etc.</div></blockquote><div class=""><br class=""></div><div class="">You would probably need to get the list of files installed by the installer by running either <span style="font-family:monospace" class="">pkgutil --files</span> or <span style="font-family:monospace" class="">lsbom</span>, if we're talking about a PKG installer. (Or maybe it would be easier to just grab the bom file in its entirety.) Typically running an <span style="font-family:monospace" class="">ls -R</span> on the .app bundle inside a DMG installer would be sufficient for those kinds of installers.</div><div class=""><br class=""></div><div class="">But then this begs the question: what happens to all of the work that went into the build-from-source packages? Wouldn't this end up rendering the hundreds of hours I spent getting the Blender package to work a complete waste?<br class=""></div><div class=""><br class=""></div><div class=""><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr" class=""><div class="">-- </div><div class="">Jason Liu<br class=""></div></div></div></div><br class=""></div><br class=""><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Feb 5, 2021 at 5:31 PM Ken Cunningham <<a href="mailto:ken.cunningham.webuse@gmail.com" class="">ken.cunningham.webuse@gmail.com</a>> wrote:<br class=""></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div style="overflow-wrap: break-word;" class="">What would we really need to do this properly?<div class=""><br class=""></div><div class="">The current fetch, checksum phases are OK.</div><div class=""><br class=""></div><div class="">The extract phase can be used as is for some software (simple copies), but for other software we don’t want to extract it, we want to run the installer.</div><div class=""><br class=""></div><div class="">The configure and build phases need to be overridden and disappear.</div><div class=""><br class=""></div><div class="">The destroot phase needs to — what — record the files that will be installed in some kind of an index file? And also know about the stuff that gets installed into ~/Library, etc.</div><div class=""><br class=""></div><div class="">Then run the “cask” destroot without installing any files into the actual destroot:</div><div class=""><br class=""></div><div class="">copy the apps and stuff</div><div class="">or </div><div class="">run the installer</div><div class="">or</div><div class="">extract from the pkg</div><div class="">or </div><div class="">… </div><div class=""><br class=""></div><div class="">and then NOT have the entire software repackaged into a MP archive file to be stored 12 different times…</div><div class=""><br class=""></div><div class="">Or some such plan</div><div class=""><br class=""></div><div class="">Best,</div><div class=""><br class=""></div><div class="">Ken</div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""><div class=""><br class=""><blockquote type="cite" class=""><div class="">On Feb 5, 2021, at 11:00 AM, Ken Cunningham <<a href="mailto:ken.cunningham.webuse@gmail.com" target="_blank" class="">ken.cunningham.webuse@gmail.com</a>> wrote:</div><br class=""><div class=""><div style="overflow-wrap: break-word;" class="">With no plan, we’ll just keep getting more and more of these.<div class=""><br class=""></div><div class=""><<a href="https://github.com/macports/macports-ports/pull/9936" target="_blank" class="">https://github.com/macports/macports-ports/pull/9936</a>><br class=""><div class=""><br class=""></div><div class="">This kind of port just repackages the DMG into many tgz archives.</div><div class=""><br class=""></div><div class="">It’s wasteful. People want them.</div></div><div class=""><br class=""></div><div class="">What we should have instead of this is some kinda tech that</div><div class=""><br class=""></div><div class="">1. downloads the DMG</div><div class="">2. installs the app</div><div class="">3. records some way of uninstalling everything</div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">What we have instead is a repackaging of the DMG into many, identical, system-specific archive bundles.</div><div class=""><br class=""></div><div class="">Yuk.</div><div class=""><br class=""></div><div class="">Ken</div><div class=""><br class=""></div></div></div></blockquote></div><br class=""></div></div></blockquote></div>
</blockquote></div><br class=""></div></body></html>