Release 2.7.2+1: stop auto-apply update loop; check-only on start, apply on button with skip/opt-in.
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
+11
-6
@@ -20,19 +20,24 @@ func main() {
|
||||
bin := flag.String("bin", "", "path to darwin Navis binary")
|
||||
outDir := flag.String("out", "", "output directory (e.g. dist/navis-release/darwin-arm64)")
|
||||
version := flag.String("version", "1.4.1", "CFBundleShortVersionString")
|
||||
build := flag.String("build", "", "CFBundleVersion (defaults to -version)")
|
||||
arch := flag.String("arch", "arm64", "arch label for volume name")
|
||||
flag.Parse()
|
||||
if *bin == "" || *outDir == "" {
|
||||
fmt.Fprintln(os.Stderr, "usage: packmac -bin <Navis> -out <dir> [-version 1.4.1] [-arch arm64]")
|
||||
fmt.Fprintln(os.Stderr, "usage: packmac -bin <Navis> -out <dir> [-version 2.7.2] [-build 2.7.2.1] [-arch arm64]")
|
||||
os.Exit(2)
|
||||
}
|
||||
if err := run(*bin, *outDir, *version, *arch); err != nil {
|
||||
bundleVer := *build
|
||||
if bundleVer == "" {
|
||||
bundleVer = *version
|
||||
}
|
||||
if err := run(*bin, *outDir, *version, bundleVer, *arch); err != nil {
|
||||
fmt.Fprintf(os.Stderr, "packmac: %v\n", err)
|
||||
os.Exit(1)
|
||||
}
|
||||
}
|
||||
|
||||
func run(binPath, outDir, version, arch string) error {
|
||||
func run(binPath, outDir, version, bundleVersion, arch string) error {
|
||||
if err := os.MkdirAll(outDir, 0o755); err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -43,7 +48,7 @@ func run(binPath, outDir, version, arch string) error {
|
||||
defer os.RemoveAll(stage)
|
||||
|
||||
appRoot := filepath.Join(stage, "Navis.app")
|
||||
if err := writeAppBundle(appRoot, binPath, version, arch); err != nil {
|
||||
if err := writeAppBundle(appRoot, binPath, version, bundleVersion, arch); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := signAppBundle(appRoot); err != nil {
|
||||
@@ -123,7 +128,7 @@ func writeHdiutilDMG(dmgPath, stageDir, volume string) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func writeAppBundle(appRoot, binPath, version, arch string) error {
|
||||
func writeAppBundle(appRoot, binPath, version, bundleVersion, arch string) error {
|
||||
macOSDir := filepath.Join(appRoot, "Contents", "MacOS")
|
||||
if err := os.MkdirAll(macOSDir, 0o755); err != nil {
|
||||
return err
|
||||
@@ -145,7 +150,7 @@ func writeAppBundle(appRoot, binPath, version, arch string) error {
|
||||
<key>CFBundleInfoDictionaryVersion</key><string>6.0</string>%s
|
||||
</dict>
|
||||
</plist>
|
||||
`, version, version, archPriority)
|
||||
`, version, bundleVersion, archPriority)
|
||||
if err := os.WriteFile(filepath.Join(appRoot, "Contents", "Info.plist"), []byte(plist), 0o644); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user