<div dir="ltr"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">All that said, one more question. As I now understand it, the idea is
to download a binary-only installer (from the publisher’s web site) and
launch it. Someone still has to answer any and all dialogs that such
installers always present. So, it fact, the administrator has to sit at
the machine and click “OK” ad nauseam. Previously, I thought we were
going to create a new binary image that would avoid such tedium. Do I
have this right? Or is there some scripting trickery wrapped around the
installer?</blockquote><div><br></div><div>The situation of dialog boxes and clicking "OK" ad nauseam is, in most cases, completely unnecessary. Installing binary-only installers (.dmg or .pkg) can be accomplished exclusively using the command line:</div><div><br></div><div>If the installer is a .dmg:</div><div><br></div><div># hdiutil mount software-title.dmg</div><div><br></div><div>Once the DMG is mounted, if it's just the app, then</div><div><br></div><div># cp -R "/Volumes/Mounted DMG/Software Title.app" /Applications</div><div><br></div><div>on the other hand, if the contents are a .pkg, then</div><div><br></div><div># /usr/bin/installer -package "/Volumes/Mounted DMG/Software Installer.pkg" -target "/Volumes/Macintosh HD"</div><div><br></div><div>Finally, unmount the DMG:</div><div><br></div><div># hdiutil unmount "/Volumes/Mounted DMG"</div><div><br></div><div>For the vast majority of cases, no manual user intervention is necessary. In fact, software deployment tools such as Jamf/Casper, Munki, and even Apple MDM, use this method to perform non-interactive remote installations of Mac software.<br></div><div> </div><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div>-- </div><div>Jason Liu<br></div></div></div></div><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Aug 6, 2020 at 3:16 PM Craig Treleaven <<a href="mailto:ctreleaven@macports.org">ctreleaven@macports.org</a>> wrote:<br></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;"><div><blockquote type="cite"><div>On Aug 6, 2020, at 11:29 AM, Ken Cunningham <<a href="mailto:ken.cunningham.webuse@gmail.com" target="_blank">ken.cunningham.webuse@gmail.com</a>> wrote:</div><br><div><div style="overflow-wrap: break-word;"><div>All valid points. I thought we had more-or-less got past the “should we” and moved on to the “how should we”, </div><div><br></div><div>I am not necessarily championing this, but people are submitting these, and there is demand.here are nearly 4000 cask installer formulae on brew now. If similar binary-only ports are going to be accepted, I was hoping for a mechanism to identify and control them somewhat, for the reasons you mention and more.</div><div><br></div><div><blockquote type="cite"><div><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;float:none;display:inline">So, pretend I don’t know how Homebrew’s cask system works. (I don’t.) </span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none"><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;float:none;display:inline">1) As a user, what is the advantage of this kind of system versus other avenues for software (i.e. the Mac App Store or direct download of a dmg from the developer web site)? </span></div></blockquote><div><br></div><div>convenience, really. You can install something with a short command instead of wading through finding the right installer on a website. Updates are handled transparently. You can install 10 or 20 software packages onto a set of systems with one command. You can make a list of the 75 software packages you like to have and install them all with one command. You can tell your grandmother how to install zoom with four words to paste into a terminal instead of a complicated set of download and install instructions. </div><br><blockquote type="cite"><div><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;float:none;display:inline">Doesn’t most such software include an auto-updater? </span></div></blockquote><div><br></div><div>Sometimes.</div><br><blockquote type="cite"><div><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;float:none;display:inline">If so, won’t that conflict with MacPorts update handling? </span></div></blockquote><div><br></div><div>Yes.</div><br><blockquote type="cite"><div><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;float:none;display:inline">A potential disadvantage would be the time lag from a new version being released until a new ‘cask’ is available, right?</span></div></blockquote><div><br></div><div>Yes</div></div></div></div></blockquote></div><br><div>If I understand correctly, this is a facility that would only benefit system administrators that have a fleet of Macs that are more-or-less configured the same. It would help them to automate the process of installing and updating software whether the software is open-source or only available as a binary. (But not software that is only on the Mac App Store.) Is that right?</div><div><br></div><div>That is a worthy audience but why is this something that MacPorts should address? I believe there are already 'multiple device management systems' out there that support macOS. And if Homebrew already provides 4,000 packages, why do we want to do the same? Is it not possible to combine Homebrew’s casks with open source software installed by MacPorts?</div><div><br></div><div>MacPorts is not in competition with Homebrew. Really. The projects have different objectives and goals and that is perfectly fine. Both communities have sufficient support to continue for the foreseeable future. We don’t have to “defeat them” to “win” or vice versa. We seem to be aiming to replicate their cask system. Should we not be aiming to provide a system that is demonstrably *better* than what is currently available?</div><div><br></div><div>All that said, one more question. As I now understand it, the idea is to download a binary-only installer (from the publisher’s web site) and launch it. Someone still has to answer any and all dialogs that such installers always present. So, it fact, the administrator has to sit at the machine and click “OK” ad nauseam. Previously, I thought we were going to create a new binary image that would avoid such tedium. Do I have this right? Or is there some scripting trickery wrapped around the installer?</div><div><br></div><div>Personally, I don’t see any compelling reason why the MacPorts project should want to go in this direction. The first paragraph on our homepage says:</div><div><br></div><div>"<span style="color:rgb(33,37,41);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:16px;background-color:rgb(255,255,255)">The MacPorts Project is an open-source community initiative to design an easy-to-use system for compiling, installing, and upgrading either command-line, X11 or Aqua based open-source software on the </span><a href="http://www.apple.com/macos/" style="color:rgb(1,37,103);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:16px" target="_blank">Mac operating system</a><span style="color:rgb(33,37,41);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:16px;background-color:rgb(255,255,255)">. To that end we provide the command-line driven MacPorts software package under a </span><a href="http://opensource.org/licenses/BSD-3-Clause" style="color:rgb(1,37,103);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:16px" target="_blank">3-Clause BSD License</a><span style="color:rgb(33,37,41);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:16px;background-color:rgb(255,255,255)">, and through it easy access to thousands of ports that </span><a href="https://guide.macports.org/#introduction" style="color:rgb(1,37,103);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:16px" target="_blank">greatly simplify</a><span style="color:rgb(33,37,41);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:16px;background-color:rgb(255,255,255)"> the task of </span><a href="https://guide.macports.org/#using" style="color:rgb(1,37,103);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:16px" target="_blank">compiling and installing</a><span style="color:rgb(33,37,41);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:16px;background-color:rgb(255,255,255)"> open-source software on your Mac.</span><font size="3" face="-apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji" color="#212529">”</font></div><div><br></div><div><span style="background-color:rgb(255,255,255)"><font color="#212529">This effectively our charter and binary-only doesn’t fit. The watchword at Apple is “a thousand no’s for every yes”. IOW, focus on doing the right things really well and don’t get distracted trying to do all the other stuff just because it is possible. Just because we _could_ provide binary packages doesn’t mean that we should. </font></span></div><div><span style="background-color:rgb(255,255,255)"><font color="#212529"><br></font></span></div><div><span style="background-color:rgb(255,255,255)"><font color="#212529">IMHO, YMMV, etc.</font></span></div><div><span style="background-color:rgb(255,255,255)"><font color="#212529"><br></font></span></div><div><font color="#212529"><span style="background-color:rgb(255,255,255)">Craig</span></font></div><div><font color="#212529"><span style="background-color:rgb(255,255,255)"><br></span></font></div></div></blockquote></div>