<pre style='margin:0'>
Joshua Root (jmroot) pushed a commit to branch master
in repository macports-base.

</pre>
<p><a href="https://github.com/macports/macports-base/commit/85ffdc769919e97910a7568b82fdfc65f8fc38f5">https://github.com/macports/macports-base/commit/85ffdc769919e97910a7568b82fdfc65f8fc38f5</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 85ffdc7  Allow disabling autostart of startupitems globally
</span>85ffdc7 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 85ffdc769919e97910a7568b82fdfc65f8fc38f5
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Mon Feb 19 10:10:13 2018 +1100

<span style='display:block; white-space:pre;color:#404040;'>    Allow disabling autostart of startupitems globally
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Fixes: https://trac.macports.org/ticket/40074
</span>---
 doc/macports.conf.in            |  6 ++++++
 src/macports1.0/macports.tcl    | 11 +++++++++--
 src/port1.0/portactivate.tcl    |  5 +++--
 src/port1.0/portstartupitem.tcl |  4 ++--
 4 files changed, 20 insertions(+), 6 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/doc/macports.conf.in b/doc/macports.conf.in
</span><span style='display:block; white-space:pre;color:#808080;'>index 3af5b61..e571fc5 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/doc/macports.conf.in
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/doc/macports.conf.in
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -133,6 +133,12 @@ universal_archs        @UNIVERSAL_ARCHS@
</span> # This setting only applies when building ports from source.
 #startupitem_install   yes
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# Whether to allow ports to automatically load their StartupItems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# If set to "no", StartupItems will never be loaded unless the user
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# explicitly requests it. If set to "yes" (the default), some ports may
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# automatically load their StartupItems when they are activated.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#startupitem_autostart  yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # Extra environment variables to keep. MacPorts sanitizes its
 # environment while processing ports, keeping:
 # - DISPLAY
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/macports1.0/macports.tcl b/src/macports1.0/macports.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index b9913a9..c4bb831 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/macports1.0/macports.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/macports1.0/macports.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -49,7 +49,8 @@ namespace eval macports {
</span>         portdbpath binpath auto_path extra_env sources_conf prefix portdbformat \
         portarchivetype portautoclean \
         porttrace portverbose keeplogs destroot_umask variants_conf rsync_server rsync_options \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        rsync_dir startupitem_type startupitem_install place_worksymlink xcodeversion xcodebuildcmd \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        rsync_dir startupitem_autostart startupitem_type startupitem_install \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        place_worksymlink xcodeversion xcodebuildcmd \
</span>         configureccache ccache_dir ccache_size configuredistcc configurepipe buildnicevalue buildmakejobs \
         applications_dir frameworks_dir developer_dir universal_archs build_arch macosx_sdk_version macosx_deployment_target \
         macportsuser proxy_override_env proxy_http proxy_https proxy_ftp proxy_rsync proxy_skip \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -62,7 +63,8 @@ namespace eval macports {
</span>         portdbpath porturl portpath portbuildpath auto_path prefix prefix_frozen portsharepath \
         registry.path registry.format user_home user_path user_ssh_auth_sock \
         portarchivetype archivefetch_pubkeys portautoclean porttrace keeplogs portverbose destroot_umask \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        rsync_server rsync_options rsync_dir startupitem_type startupitem_install place_worksymlink macportsuser \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        rsync_server rsync_options rsync_dir startupitem_autostart startupitem_type startupitem_install \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        place_worksymlink macportsuser \
</span>         configureccache ccache_dir ccache_size configuredistcc configurepipe buildnicevalue buildmakejobs \
         applications_dir current_phase frameworks_dir developer_dir universal_archs build_arch \
         os_arch os_endian os_version os_major os_minor os_platform macosx_version macosx_sdk_version macosx_deployment_target \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -958,6 +960,11 @@ match macports.conf.default."
</span>         set macports::startupitem_install yes
     }
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Set whether ports are allowed to auto-load their startupitems
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {![info exists macports::startupitem_autostart]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set macports::startupitem_autostart yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     # Default place_worksymlink
     if {![info exists macports::place_worksymlink]} {
         set macports::place_worksymlink yes
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portactivate.tcl b/src/port1.0/portactivate.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 9696077..247302b 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portactivate.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portactivate.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -67,11 +67,12 @@ proc portactivate::activate_main {args} {
</span> }
 
 proc portactivate::activate_finish {args} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    global subport startupitem.autostart PortInfo UI_PREFIX
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    global subport startupitem.autostart PortInfo UI_PREFIX startupitem_autostart
</span> 
     # Do this _after_ activate_main, because post-activate hooks might create
     # the files needed for this
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {[tbool startupitem.autostart]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # The option from macports.conf can override the portfile here.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {[tbool startupitem.autostart] && [tbool startupitem_autostart]} {
</span>         ui_notice "$UI_PREFIX [format [msgcat::mc "Loading %s"] $subport]"
         if {[eval_targets "load"]} {
             ui_error [format [msgcat::mc "Failed to load %s"] $subport]
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portstartupitem.tcl b/src/port1.0/portstartupitem.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index a710355..6e9e442 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portstartupitem.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portstartupitem.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -130,7 +130,7 @@ proc portstartupitem::get_startupitem_type {} {
</span> 
 # Add user notes regarding any installed startupitem
 proc portstartupitem::add_notes {} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    global startupitem.type startupitem.autostart subport
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    global startupitem.type startupitem.autostart subport startupitem_autostart
</span>     if {${startupitem.type} eq "none"} {
         return
     }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -139,7 +139,7 @@ proc portstartupitem::add_notes {} {
</span>         notes-append ""
     }
     # Add some information for the user to the port's notes
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {[tbool startupitem.autostart]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {[tbool startupitem.autostart] && [tbool startupitem_autostart]} {
</span>         notes-append \
         "A startup item has been generated that will aid in\
         starting ${subport} with launchd. It will be enabled\
</pre><pre style='margin:0'>

</pre>