Skip to content
 
 

Latest commit

 

History

273 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

LetsMove

A library that prompts users to move a running macOS application to the Applications folder. This fork is Maxim Ananov’s Swift rewrite of the original LetsMove, maintained for use in the HazeOver app.

Swift Package Manager compatible

Let’s Move Alert Screenshot

Requirements

Runs on macOS 13 or higher. Requires Xcode 15 or later to build. Does NOT support sandboxed applications.

Usage

Add this Swift package to your project. Then, in your application delegate:

import LetsMove

func applicationWillFinishLaunching(_ notification: Notification) {
    LetsMove.moveToApplicationsFolderIfNecessary()
}

License

Public domain

Version History

  • 2.2

    • Use diskutil and DiskArbitration instead of deprecated hdiutil
  • 2.1

    • Require macOS 13
    • Show underlying errors
    • Fix alert focus
  • 2.0

    • Converted to Swift
    • Migrated project to Swift Package Manager
    • Removed AppleScript Trash workaround
    • Removed privileged installer
    • Skip alert if won’t be able to move
    • Removed CocoaPods and Carthage support
    • Removed demo app project
    • Updated localizations
  • 1.25

    • Migrate localization strings to a string catalog (requires Xcode 15)
    • Add Greek and Vietnamese localizations
  • 1.24

    • Add PFMoveIsInProgress function
  • 1.23

    • Make usable for Electron based apps or other apps that do not have access to the main thread dispatch queue
  • 1.20

    • Support for applications bundled inside another application
  • 1.19

    • Slovak localization added
  • 1.18

    • Catalan localization added
  • 1.17

    • Traditional Chinese localization added
  • 1.15

    • Swedish localization added
  • 1.14

    • Hungarian, Serbian, Turkish, and Macedonian localizations added
  • 1.13

    • Polish localization added
  • 1.9

    • Properly detect if the running app is in a disk image
    • Fixed a bug where if the app's name contained a quote, the app could not be moved
    • After a successful move, delete the application instead of moving it to the Trash
  • 1.8

    • Added Korean localization
  • 1.7

    • Only move to ~/Applications directory if an app is already in there
  • 1.6.3

    • Added Simplified Chinese and European Portuguese localizations
  • 1.6.1

    • Use exit(0) to terminate the app before relaunching instead of [NSApp terminate:]. We don't want applicationShouldTerminate or applicationWillTerminate NSApplication delegate methods to be called, possibly introducing side effects.
  • 1.5

    • Don't prompt to move the application if it has "Applications" in its path somewhere
  • 1.3

    • Clear quarantine flag after copying
    • Compile time option to show normal sized alert suppress checkbox button
    • German, Danish, and Norwegian localizations added
  • 1.2

    • Copy application from disk image then unmount disk image
    • Spanish, French, Dutch, and Russian localizations
  • 1.1

    • Prefers ~/Applications over /Applications if it exists
    • Escape key pushes the "Do Not Move" button

Version 1 Code Contributors

  • Andy Kim
  • John Brayton
  • Chad Sellers
  • Kevin LaCoste
  • Rasmus Andersson
  • Timothy J. Wood
  • Matt Gallagher
  • Whitney Young
  • Nick Moore
  • Nicholas Riley
  • Matt Prowse
  • Charlie Stigler

Version 1 Translators

  • Eita Hayashi (Japanese)
  • Gleb M. Borisov, Maxim Ananov (Russian)
  • Wouter Broekhof (Dutch)
  • Rasmus Andersson / Spotify (French and Spanish)
  • Markus Kirschner (German)
  • Fredrik Nannestad (Danish)
  • Georg Alexander Bøe (Norwegian)
  • Marco Improda (Italian)
  • Venj Chu (Simplified Chinese)
  • Sérgio Miranda (European Portuguese)
  • Victor Figueiredo and BR Lingo (Brazilian Portuguese)
  • AppLingua (Korean)
  • Czech X Team (Czech)
  • Marek Telecki (Polish)
  • Petar Vlahu (Macedonian)
  • Václav Slavík (Hungarian, Serbian, and Turkish)
  • Erik Vikström (Swedish)
  • Inndy Lin (Traditional Chinese)
  • aONe (Catalan)
  • Marek Hrusovsky (Slovak)

About

A library that prompts users to move a running macOS application to the Applications folder.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages