A few weeks ago I installed 2.0.5 using a standard copy_from_dmg .app Munki pkginfo, with the only addition being Riley's Ruby script. The .app bundle therefore has root:admin ownership.
A couple weeks ago 2.0.8 was released. I was away from my work machine yesterday, and today I arrived to it running 2.0.8. However, the command was not running with the bundle at /Applications, it was running from a new copy in my user's library:
Output from ps:
/Users/tsutton/Library/Application Support/Dropbox/Dropbox.app/Contents/MacOS/Dropbox /firstrunupdate 15133
So when it decides to update, it would seem to transparently stash it in the user's home instead and use that in the future.
I added a line to the postinstall_script to recursively set permissions on /Applications/Dropbox.app to 777:
FileUtils.chmod_R(0777, '/Applications/Dropbox.app')
..and re-installed on mine and a test machine. It has since updated to 2.0.8 and now to 2.0.10, all within its app bundle at /Applications, running as a non-admin. Still not obvious to me what logic will trigger an update, but my account is configured to receive new updates quickly, and it doesn't seem like it's usually taken longer than a day or even a few hours. But it seems like one could push a Dropbox config like this and not bother needing to update it again with Munki for quite a while.
More details for the curious, of the output of newproc.d when Dropbox is first launched, below. I haven't seen any behavior differences whether the /firstrunupdate flag is given or not.
84325 <82192> 32b /Applications/Dropbox.app/Contents/MacOS/Dropbox
84330 <84325> 64b sh -c LC_ALL=C /sbin/ifconfig 2>/dev/null
84329 <84328> 64b uname -p
84331 <84330> 64b /sbin/ifconfig
84326 <84325> 64b /bin/sh -c mount
84326 <84325> 64b mount
84327 <84325> 64b mount -v
84328 <84325> 64b sh -c uname -p 2> /dev/null
84333 <84325> 32b /Library/DropboxHelperTools/DropboxHelperInstaller install Dropbox /Applications/Dropbox.app/Contents/Resources/DropboxBundle.bundle.tgz
dtrace: error on enabled probe ID 5 (ID 526: syscall::mmap:return): invalid address (0x7fffbffff93c) in action #3 at DIF offset 32
84332 <84325> 32b /Library/DropboxHelperTools/DropboxHelperInstaller install Dropbox /Applications/Dropbox.app/Contents/Resources/DropboxHelperInstaller.tgz
84336 <84325> 32b /Library/DropboxHelperTools/Dropbox_u1183558739/dbfseventsd
dtrace: error on enabled probe ID 5 (ID 526: syscall::mmap:return): invalid address (0x7fffbffff948) in action #3 at DIF offset 32
84334 <84325> 32b /Library/DropboxHelperTools/DropboxHelperInstaller install Dropbox /Applications/Dropbox.app/Contents/Resources/dbfseventsd.tgz
84335 <84325> 32b /Library/DropboxHelperTools/DropboxHelperInstaller install Dropbox /Applications/Dropbox.app/Contents/Resources/FinderLoadBundle.tgz
84339 <84325> 64b /Library/DropboxHelperTools/Dropbox_u1183558739/FinderLoadBundle /Library/DropboxHelperTools/Dropbox_u1183558739/DropboxBundle.bundle 32866
84339 <84325> 64b /usr/bin/arch -x86_64 /Library/DropboxHelperTools/Dropbox_u1183558739/FinderLoadBundle /Library/DropboxHelperTools/Dropbox_u1183558739/DropboxBundle.bundle 32866
84340 <84325> 64b /usr/bin/file /Library/DropboxHelperTools/Dropbox_u1183558739/FinderLoadBundle
84341 <84325> 64b arch -x86_64 /usr/bin/osascript -s s
84341 <84325> 64b /usr/bin/osascript -s s
-Tim