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

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/23a2cfb86269528885eaabe2bf3b6606aac67d4b">https://github.com/macports/macports-ports/commit/23a2cfb86269528885eaabe2bf3b6606aac67d4b</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 23a2cfb  dbus: use base support for multiple startupitems
</span>23a2cfb is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 23a2cfb86269528885eaabe2bf3b6606aac67d4b
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Tue Jun 12 17:15:41 2018 +1000

<span style='display:block; white-space:pre;color:#404040;'>    dbus: use base support for multiple startupitems
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    The plists are now installed to the standard startupitem locations, so
</span><span style='display:block; white-space:pre;color:#404040;'>    users can use 'port load'.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Also removes the no_root and underscore variants. Both root- and
</span><span style='display:block; white-space:pre;color:#404040;'>    non-root-owned installations should work correctly without users having to
</span><span style='display:block; white-space:pre;color:#404040;'>    choose a variant, and the username can be selected consistently based on the
</span><span style='display:block; white-space:pre;color:#404040;'>    OS version and root privileges.
</span>---
 devel/dbus/Portfile | 95 +++++++++++++++++------------------------------------
 1 file changed, 30 insertions(+), 65 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/dbus/Portfile b/devel/dbus/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index cba4d80..1558021 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/dbus/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/dbus/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -5,7 +5,7 @@ PortGroup       muniversal 1.0
</span> 
 name            dbus
 version         1.12.8
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision        1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision        2
</span> maintainers     {mcalhoun @MarcusCalhoun-Lopez} openmaintainer
 categories      devel
 platforms       darwin
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -39,11 +39,11 @@ if {$macosx_deployment_target eq "10.4"} {
</span> depends_build       \
     port:pkgconfig
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-if { [variant_isset no_root] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {[getuid] != 0} {
</span>     set dbus_user     ${install.user}
     set dbus_group    ${install.group}
 } else {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    if { [variant_isset underscore] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${os.platform} eq "darwin" && ${os.major} >= 9} {
</span>         set dbus_user     _messagebus
     } else {
         set dbus_user     messagebus
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -51,6 +51,19 @@ if { [variant_isset no_root] } {
</span>     set dbus_group    ${dbus_user}
     add_users         ${dbus_user} group=${dbus_group} realname=Message\ Bus
 }
<span style='display:block; white-space:pre;background:#e0ffe0;'>+set daemon_uniquename   org.freedesktop.dbus-system
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set agent_uniquename    org.freedesktop.dbus-session
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+startupitem.type    launchd
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+startupitem.create  no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+startupitems        name        dbus-system \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    location    LaunchDaemons \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    uniquename  ${daemon_uniquename} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    plist       ${daemon_uniquename}.plist \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    name        dbus-session \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    location    LaunchAgents \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    uniquename  ${agent_uniquename} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    plist       ${agent_uniquename}.plist
</span> 
 depends_lib     port:expat
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -59,16 +72,14 @@ configure.args  --disable-doxygen-docs \
</span>                 --disable-ducktype-docs \
                 --without-x \
                 --enable-launchd \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                --with-launchd-agent-dir=${prefix}/Library/LaunchAgents \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                --with-launchd-agent-dir=${prefix}/etc/LaunchAgents/${agent_uniquename} \
</span>                 --with-dbus-user=${dbus_user} \
                 --disable-tests
 
 post-patch {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {${startupitem.install} && ![variant_isset no_root]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        # Disable if installed into startup directory.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        reinplace "s|</array>|</array>\\\n\\\n\\\t<key>Disabled</key>\\\n\\\t<true/>|" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            ${worksrcpath}/bus/org.freedesktop.dbus-session.plist.in
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Make agent initially disabled.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    reinplace "s|</array>|</array>\\\n\\\n\\\t<key>Disabled</key>\\\n\\\t<true/>|" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${worksrcpath}/bus/org.freedesktop.dbus-session.plist.in
</span> }
 
 use_parallel_build  yes
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -102,8 +113,8 @@ pre-destroot {
</span> post-destroot {
     # Simplify startup script over startupitem.install.
     # See #15081
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    xinstall -d -m 0755 ${destroot}${prefix}/Library/LaunchDaemons
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    set plist [open "${destroot}${prefix}/Library/LaunchDaemons/org.freedesktop.dbus-system.plist" w 0644]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    xinstall -d -m 0755 ${destroot}${prefix}/etc/LaunchDaemons/${daemon_uniquename}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set plist [open "${destroot}${prefix}/etc/LaunchDaemons/${daemon_uniquename}/${daemon_uniquename}.plist" w 0644]
</span> 
     puts ${plist} "<?xml version='1.0' encoding='UTF-8'?>"
     puts ${plist} "<!DOCTYPE plist PUBLIC \"-//Apple Computer//DTD PLIST 1.0//EN\""
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -111,7 +122,7 @@ post-destroot {
</span>     puts ${plist} "<plist version='1.0'>"
     puts ${plist} "<dict>"
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    puts ${plist} "<key>Label</key><string>org.freedesktop.dbus-system</string>"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    puts ${plist} "<key>Label</key><string>${daemon_uniquename}</string>"
</span> 
     puts ${plist} "<key>ProgramArguments</key>"
     puts ${plist} "<array>"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -125,20 +136,21 @@ post-destroot {
</span>         puts ${plist} "<key>KeepAlive</key><true/>"
     }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {${startupitem.install} && ![variant_isset no_root]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        puts ${plist} "<key>Disabled</key><true/>"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    puts ${plist} "<key>Disabled</key><true/>"
</span> 
     puts ${plist} "</dict>"
     puts ${plist} "</plist>"
 
     close ${plist}
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {${startupitem.install} && ![variant_isset no_root]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${startupitem.install} && [geteuid] == 0} {
</span>         xinstall -d -m 0755 ${destroot}/Library/LaunchDaemons
         xinstall -d -m 0755 ${destroot}/Library/LaunchAgents
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        ln -s ${prefix}/Library/LaunchDaemons/org.freedesktop.dbus-system.plist ${destroot}/Library/LaunchDaemons
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        ln -s ${prefix}/Library/LaunchAgents/org.freedesktop.dbus-session.plist ${destroot}/Library/LaunchAgents
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ln -s ${prefix}/etc/LaunchDaemons/${daemon_uniquename}/${daemon_uniquename}.plist ${destroot}/Library/LaunchDaemons
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ln -s ${prefix}/etc/LaunchAgents/${agent_uniquename}/${agent_uniquename}.plist ${destroot}/Library/LaunchAgents
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ln -sf ${prefix}/etc/LaunchDaemons/${daemon_uniquename}/${daemon_uniquename}.plist ${destroot}${prefix}/etc/LaunchDaemons
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ln -sf ${prefix}/etc/LaunchAgents/${agent_uniquename}/${agent_uniquename}.plist ${destroot}${prefix}/etc/LaunchAgents
</span>     }
 
     system "env DYLD_LIBRARY_PATH=${destroot}${prefix}/lib ${destroot}${prefix}/bin/dbus-uuidgen --ensure=${destroot}${prefix}/var/lib/dbus/machine-id"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -147,20 +159,8 @@ post-destroot {
</span> post-activate {
     file attributes ${prefix}/var/run/dbus -group ${dbus_group} -owner ${dbus_user}
     file attributes ${prefix}/libexec/dbus-daemon-launch-helper -group ${dbus_group}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {${startupitem.install} && ![variant_isset no_root]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        file attributes ${prefix}/Library/LaunchAgents/org.freedesktop.dbus-session.plist -owner root -group wheel
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        file attributes ${prefix}/Library/LaunchDaemons/org.freedesktop.dbus-system.plist -owner root -group wheel
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span> }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#pre-deactivate {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#    if {${startupitem.install} && ![variant_isset no_root]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#        catch {system "launchctl unload /Library/LaunchDaemons/org.freedesktop.dbus-system.plist"}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#        catch {system "launchctl unload /Library/LaunchAgents/org.freedesktop.dbus-session.plist"}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#    }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> # XXX Building with tests enabled causes dbus to link with dbus-glib,
 # which it shouldn't do because that port depends on this one: see #30088
 variant test description {enable tests (Only Works if dbus is Already Installed)} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -173,41 +173,6 @@ variant test description {enable tests (Only Works if dbus is Already Installed)
</span>     configure.python        ${prefix}/bin/python2.7
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-if {${startupitem.install} && ![variant_isset no_root]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    notes "############################################################################
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# Startup items have been generated that will aid in
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# starting ${name} with launchd. They are disabled
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# by default. Execute the following commands to start them,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# and to cause them to launch at startup:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# sudo launchctl load -w /Library/LaunchDaemons/org.freedesktop.dbus-system.plist
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# launchctl load -w /Library/LaunchAgents/org.freedesktop.dbus-session.plist
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-############################################################################"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-} else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    notes "############################################################################
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# Startup items were not installed for ${name}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# Some programs which depend on ${name} might not function properly.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# To load ${name} manually, run
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# launchctl load -w ${prefix}/Library/LaunchDaemons/org.freedesktop.dbus-system.plist
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# launchctl load -w ${prefix}/Library/LaunchAgents/org.freedesktop.dbus-session.plist
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-############################################################################"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-variant no_root conflicts underscore description {Run the DBUS daemon as MacPorts install user} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    pre-fetch {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        if {${install.user} eq "root" || ${install.group} eq "wheel"} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            ui_error "The DBUS daemon should not be run as root."
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            error "Please do not use this variant with your MacPorts configuration."
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-variant underscore conflicts no_root description {Put underscore in front of DBUS daemon user} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # For darwin ${os.major} > 8, daemon users have an underscore in front of the usernames and groups.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # This variant allows the user to follow that convention.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> set cross_opts  "ac_cv_have_abstract_sockets=no"
 if {${os.arch} eq "i386"} {
     if { ${os.major} >= 10 } {
</pre><pre style='margin:0'>

</pre>