summaryrefslogtreecommitdiff
path: root/pkg/osx/dmgfix
blob: acc3004b6f15ca6f2171446822b769d26a8ad0c3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#!/usr/bin/osascript
--
-- Copyright(C) 2009-2014 Simon Howard
--
-- This program is free software; you can redistribute it and/or
-- modify it under the terms of the GNU General Public License
-- as published by the Free Software Foundation; either version 2
-- of the License, or (at your option) any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-- GNU General Public License for more details.
--
--
-- AppleScript script to automatically set the view properties in a
-- .dmg file - ie. the background image, other Finder view options
-- and icon positions.
--
-- Usage: dmgfix <absolute path to dmg> <disk name> <name of app>
--

on run argv
    set dmgFile to POSIX file (item 1 of argv)
    set diskName to item 2 of argv
    set appName to item 3 of argv

    tell application "Finder"
        --activate
        open dmgFile
        delay 1
        set win to the front Finder window
        set theDisk to disk diskName
        set the target of win to theDisk

        -- window options:

        set bgfile to file "background.png" of theDisk
        set the bounds of win to {200, 200, 717, 536}
        set icon size of icon view options of win to 96
        set background picture of icon view options of win to bgfile
        set toolbar visible of win to false

        -- hide background file:

        set bgloc to quoted form of POSIX path of (bgfile as text)
        do shell script "SetFile -a V " & bgloc

        -- icon positions:

        set position of file "README" of theDisk to {120, 250}
        set position of file "Software License" of theDisk to {380, 250}
        set position of file appName of theDisk to {70, 110}
        set position of file "Applications" of theDisk to {450, 110}

        eject theDisk
    end tell
end run