Automatic Icon Positioning (Packaging)

From Apache OpenOffice Wiki
Jump to: navigation, search

Here is an Apple Script allowing to automatically place correctly the icons in OpenOffice installation folder :

on run argv
	try
		set argv to POSIX file (item 1 of argv)
	on error
		set argv to choose folder
	end try
	try
		tell application "Finder"
			set fichiers to items of folder argv
			set i to 0
			repeat with myItem in fichiers
				set i to i + 1
				
				set itemProperties to (properties of myItem)
				set itemPos to position of itemProperties
				set myName to name of itemProperties
				
				if i is 1 then set position of myItem to {332, 191} -- in alphabetic order "Applications"
				if i is 2 then set position of myItem to {97, 62} -- LICENSEs
				if i is 3 then set position of myItem to {101, 191} -- OpenOffice*
				if i is 4 then set position of myItem to {304, 61} -- READMEs
			end repeat
		end tell
	end try
	tell application "System Events" to quit application "Finder"
	return argv as string
end run

To use it, assuming you called it ooo_pack_finalizer.scpt, just type :

$ osascript ooo_pack_finalizer.scpt ''path to install folder''

To use it, from a remote host, you will need to sudo to access the WindowServer :

$ sudo osascript ooo_pack_finalizer.scpt ''path to install folder''

Notice than executing that script will starts the Finder with root rights, and any user with physical access to the computer will be able to use Finder during the script execution (until quit request from System Events).

For better security, it should be possible to lock the user interface during the execution of the script by developping a simple app which captures all mouse and keyboard events in order to disallow access to Finder.

Personal tools