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

</pre>
<p><a href="https://github.com/macports/macports-guide/commit/97eb9d43076f26547c3b171a68fa688c840a58e2">https://github.com/macports/macports-guide/commit/97eb9d43076f26547c3b171a68fa688c840a58e2</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 97eb9d4  guide: update startupitem docs
</span>97eb9d4 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 97eb9d43076f26547c3b171a68fa688c840a58e2
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Wed Jun 13 21:21:29 2018 +1000

<span style='display:block; white-space:pre;color:#404040;'>    guide: update startupitem docs
</span>---
 guide/xml/portfile-startupitem.xml | 162 +++++++++++++++++++++++++++++++++++--
 1 file changed, 154 insertions(+), 8 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/guide/xml/portfile-startupitem.xml b/guide/xml/portfile-startupitem.xml
</span><span style='display:block; white-space:pre;color:#808080;'>index 59dc2a9..a857165 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/guide/xml/portfile-startupitem.xml
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/guide/xml/portfile-startupitem.xml
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -24,8 +24,13 @@
</span>   <note>
     <para>The variable <varname>startupitem_type</varname> in
     <filename>${prefix}/etc/macports/macports.conf</filename> may be set to
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    <option>none</option> to globally override all StartupItem keywords found
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    in Portfiles; this prevents StartupItems from being created.</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <option>none</option> to override the default value of the <varname>startupitem.type</varname>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    option in Portfiles; this prevents StartupItems from being created.</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <para>Additionally, the <varname>startupitem_install</varname> variable can be set
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    to <option>no</option> in <filename>macports.conf</filename> to override the default
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    value of the <varname>startupitem.install</varname> option, which will prevent links
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    from being created under <filename>/Library</filename>. This is useful for MacPorts
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    installations that are not used with root privileges.</para>
</span>   </note>
 
   <section xml:id="reference.startupitems.attributes">
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -37,6 +42,26 @@
</span> 
     <variablelist>
       <varlistentry>
<span style='display:block; white-space:pre;background:#e0ffe0;'>+        <term>startupitem.autostart</term>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          <para>Whether to automatically load the StartupItem after activating the port.</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          <itemizedlist>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            <listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              <para>Default: <option>no</option></para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            </listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            <listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              <para>Example:</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              <programlisting>startupitem.autostart      yes</programlisting>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            </listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          </itemizedlist>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        </listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      </varlistentry>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      <varlistentry>
</span>         <term>startupitem.create</term>
 
         <listitem>
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -57,21 +82,66 @@
</span>       </varlistentry>
 
       <varlistentry>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        <term>startupitem.name</term>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <term>startupitem.debug</term>
</span> 
         <listitem>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-          <para>Sets the name for the StartupItem. Defaults to the name of the
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-          port, so this keyword is usually unnecessary.</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          <para>Enable additional debug logging.</para>
</span> 
           <itemizedlist>
             <listitem>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-              <para>Default: <varname>${name}</varname></para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              <para>Default: <option>no</option></para>
</span>             </listitem>
 
             <listitem>
               <para>Example:</para>
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-              <programlisting>startupitem.name        dhcpd</programlisting>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              <programlisting>startupitem.debug      yes</programlisting>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            </listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          </itemizedlist>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        </listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      </varlistentry>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      <varlistentry>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <term>startupitem.install</term>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          <para>Whether to install a link to the StartupItem in the appropriate
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            subdirectory of <filename>/Library</filename> (see
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            <varname>startupitem.location</varname>) so that it can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            be launched automatically after rebooting.</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          <itemizedlist>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            <listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              <para>Default: <option>yes</option></para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            </listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            <listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              <para>Example:</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              <programlisting>startupitem.install        no</programlisting>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            </listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          </itemizedlist>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        </listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      </varlistentry>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      <varlistentry>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <term>startupitem.location</term>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          <para>Chooses the subdirectory in which to install the StartupItem. Also
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          affects how it will be loaded: LaunchDaemons must be loaded as root, and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          only one instance will run for the whole system. LaunchAgents are loaded
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          as a normal user, and one instance per user can run.</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          <itemizedlist>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            <listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              <para>Default: <filename>LaunchDaemons</filename></para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            </listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            <listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              <para>Example:</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              <programlisting>startupitem.location        LaunchAgents</programlisting>
</span>             </listitem>
           </itemizedlist>
         </listitem>
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -123,6 +193,27 @@
</span>       </varlistentry>
 
       <varlistentry>
<span style='display:block; white-space:pre;background:#e0ffe0;'>+        <term>startupitem.name</term>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          <para>Sets the name for the StartupItem. Defaults to the name of the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          port, so this keyword is usually unnecessary.</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          <itemizedlist>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            <listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              <para>Default: <varname>${name}</varname></para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            </listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            <listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              <para>Example:</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              <programlisting>startupitem.name        dhcpd</programlisting>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            </listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          </itemizedlist>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        </listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      </varlistentry>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      <varlistentry>
</span>         <term>startupitem.netchange</term>
 
         <listitem>
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -142,6 +233,61 @@
</span>           </itemizedlist>
         </listitem>
       </varlistentry>
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      <varlistentry>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <term>startupitem.type</term>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          <para>The type of the StartupItem. Supported values are <option>launchd</option> for a macOS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          <command>launchd</command> .plist, or <option>none</option> for no StartupItem.</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          <itemizedlist>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            <listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              <para>Default: <option>launchd</option> if on macOS and <varname>${startupitem.create}</varname>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              is true, <option>none</option> otherwise</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            </listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            <listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              <para>Example:</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              <programlisting>startupitem.type   launchd</programlisting>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            </listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          </itemizedlist>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        </listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      </varlistentry>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      <varlistentry>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <term>startupitems</term>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          <para>Used when a port needs to install more than one StartupItem, this option
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          consists of a list where alternating elements represent keys and values. Each
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          key corresponds to one of the <varname>startupitem.*</varname> options, and the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          following value is associated with it. Each StartupItem defined in the list must
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          specify at least a name. Each other key/value pair is associated with the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          StartupItem named most recently in the list. Any keys that are not defined for
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          a given StartupItem will use the value of the corresponding <varname>startupitem.*</varname>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          option.</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          <itemizedlist>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            <listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              <para>Default: none
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            </listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            <listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              <para>Example:</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              <programlisting>startupitems        name        myport-system \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    location    LaunchDaemons \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    executable  ${prefix}/sbin/myportd \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    name        myport-session \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    location    LaunchAgents \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    executable  ${prefix}/bin/myport-agent</programlisting>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            </listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          </itemizedlist>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        </listitem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      </varlistentry>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     </variablelist>
   </section>
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -431,7 +577,7 @@ startupitem.restart     "${prefix}/share/mysql/mysql.server restart"</programlis
</span>     <para>During port installation a MacPorts StartupItem creates a .plist
     file in <filename>${prefix}/etc/LaunchDaemons/</filename>, and places a
     symbolic link to the .plist file within
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    <filename>/Library/LaunchDaemons/</filename>.</para>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    <filename>/Library/LaunchDaemons/</filename> if <varname>${startupitem.install}</varname> is true.</para>
</span> 
     <para>For example, the StartupItem for the mysql5 port is
     <filename>org.macports.mysql5.plist</filename>, and it is linked as
</pre><pre style='margin:0'>

</pre>