Skip to content

Commit 8603a87

Browse files
committed
Make installer app path non-relocatable
1 parent 945fd0f commit 8603a87

1 file changed

Lines changed: 23 additions & 0 deletions

File tree

scripts/package.sh

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,7 @@ PKG_PATH="$DIST_DIR/$APP_NAME-$VERSION.pkg"
9191
FIXED_ZIP_PATH="$DIST_DIR/$APP_NAME.zip"
9292
FIXED_PKG_PATH="$DIST_DIR/$APP_NAME.pkg"
9393
PKG_ROOT="$DIST_DIR/.pkg-root"
94+
PKG_COMPONENTS="$DIST_DIR/.pkg-components.plist"
9495

9596
rm -f "$ZIP_PATH" "$PKG_PATH" "$FIXED_ZIP_PATH" "$FIXED_PKG_PATH"
9697
(
@@ -102,13 +103,35 @@ cp "$ZIP_PATH" "$FIXED_ZIP_PATH"
102103
rm -rf "$PKG_ROOT"
103104
mkdir -p "$PKG_ROOT/Applications"
104105
ditto --norsrc --noextattr "$APP_DIR" "$PKG_ROOT/Applications/$APP_NAME.app"
106+
cat > "$PKG_COMPONENTS" <<PLIST
107+
<?xml version="1.0" encoding="UTF-8"?>
108+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
109+
<plist version="1.0">
110+
<array>
111+
<dict>
112+
<key>BundleHasStrictIdentifier</key>
113+
<true/>
114+
<key>BundleIsRelocatable</key>
115+
<false/>
116+
<key>BundleIsVersionChecked</key>
117+
<false/>
118+
<key>BundleOverwriteAction</key>
119+
<string>upgrade</string>
120+
<key>RootRelativeBundlePath</key>
121+
<string>Applications/$APP_NAME.app</string>
122+
</dict>
123+
</array>
124+
</plist>
125+
PLIST
105126
COPYFILE_DISABLE=1 pkgbuild \
106127
--root "$PKG_ROOT" \
128+
--component-plist "$PKG_COMPONENTS" \
107129
--install-location "/" \
108130
--identifier "com.kangmingyu.streetviewwander.pkg" \
109131
--version "$VERSION" \
110132
"$PKG_PATH" >/dev/null
111133
rm -rf "$PKG_ROOT"
134+
rm -f "$PKG_COMPONENTS"
112135
cp "$PKG_PATH" "$FIXED_PKG_PATH"
113136

114137
cat > "$DIST_DIR/manifest.json" <<JSON

0 commit comments

Comments
 (0)