diff --git a/README.md b/README.md index 1b7c838b3..2738fc2f2 100644 --- a/README.md +++ b/README.md @@ -38,11 +38,11 @@ sudo port install mas #### ๐Ÿป Custom Homebrew tap -We provide a [custom Homebrew tap](https://github.com/mas-cli/homebrew-tap) with pre-built bottles -for all macOS versions since 10.11 (El Capitan). The newest versions of mas, however, are only available -for macOS 10.15+ (Catalina or newer). +The [mas custom Homebrew tap](https://github.com/mas-cli/homebrew-tap) provides pre-built +bottles for all macOS versions since 10.11 (El Capitan). The newest versions of mas, however, +are only available for macOS 10.15+ (Catalina or newer). -To install mas from our tap: +To install mas from the custom tap: ```shell brew install mas-cli/tap/mas @@ -50,19 +50,21 @@ brew install mas-cli/tap/mas #### ๐Ÿ™ GitHub Releases -Alternatively, binaries & sources are available from the [GitHub Releases](https://github.com/mas-cli/mas/releases). +Alternatively, binaries & sources are available from the +[GitHub Releases](https://github.com/mas-cli/mas/releases). #### ๐Ÿ•Š Swift 5 Runtime Support -mas requires Swift 5 runtime support. macOS 10.14.4 (Mojave) & newer include it, but earlier releases do not. -Without it, running mas might report errors similar to: +mas requires Swift 5 runtime support. macOS 10.14.4 (Mojave) & newer include it, but earlier +releases do not. Without it, running mas might report errors similar to: > dyld: Symbol not found: _$s11SubSequenceSlTl To get Swift 5 support on macOS versions older than 10.14.4 (Mojave), you can: - Upgrade to macOS 10.14.4 (Mojave) or newer. -- Install the [Swift 5 Runtime Support for Command Line Tools](https://support.apple.com/en-us/106446). +- Install the + [Swift 5 Runtime Support for Command Line Tools](https://support.apple.com/en-us/106446). - Install Xcode 10.2 or newer to `/Applications/Xcode.app`. ## ๐Ÿคณ Usage @@ -84,7 +86,7 @@ Alternatively, to find an app's app ID: ### ๐Ÿ› Info from the Mac App Store None of the commands in this section require you to be logged into an Apple Account, -neither for your macOS user, nor in the Mac App Store. +neither for your macOS user nor in the Mac App Store. #### `mas search` @@ -95,13 +97,13 @@ Providing the `--price` flag includes each app's price in the output. $ mas search Xcode 497799835 Xcode 688199928 Docs for Xcode -449589707 Dash 3 - API Docs & Snippets. Integrates with Xcode, Alfred, TextWrangler and many more. [...] ``` #### `mas info` -`mas info ` displays more detailed information about an application available from the Mac App Store. +`mas info ` displays more detailed information about an application available from the +Mac App Store. ```console $ mas info 497799835 @@ -115,7 +117,8 @@ From: https://apps.apple.com/us/app/xcode/id497799835?mt=12&uo=4 ### ๐Ÿ“š Info from Your Local App Library -All the commands in this section require you to be logged into an Apple Account for your macOS user. +All the commands in this section require you to be logged into an Apple Account for your macOS +user. #### `mas list` @@ -130,7 +133,8 @@ $ mas list #### `mas outdated` -`mas outdated` displays all applications installed from the Mac App Store on your computer that have pending upgrades. +`mas outdated` displays all applications installed from the Mac App Store on your Mac that have +pending upgrades. ```console $ mas outdated @@ -142,14 +146,17 @@ Run [`mas upgrade`](#mas-upgrade) to install pending upgrades. ### โฌ‡๏ธ Installing Apps -All the commands in this section require you to be logged into an Apple Account in the Mac App Store. +All the commands in this section require you to be logged into an Apple Account in the Mac App +Store. -> Depending on your Apple Account settings, you might need to re-authenticate yourself in the Mac App Store to perform a -> purchase, install, lucky, or upgrade, even if you are already signed in to an Apple Account in the Mac App Store. +> Depending on your Apple Account settings, you might need to re-authenticate yourself in the +> Mac App Store to perform a purchase, install, lucky, or upgrade, even if you are already +> signed in to an Apple Account in the Mac App Store. #### `mas purchase` -`mas purchase โ€ฆ` installs free applications that you haven't yet gotten/"purchased" from the Mac App Store. +`mas purchase โ€ฆ` installs free applications that you haven't yet gotten/"purchased" from +the Mac App Store. > `purchase` is currently a misnomer, because it currently can only "purchase" free > apps. To purchase apps that cost money, please purchase them directly in the Mac App Store. @@ -162,8 +169,9 @@ $ mas purchase 497799835 #### `mas install` -`mas install โ€ฆ` installs apps that you have already gotten/"purchased" from the Mac App Store. -Providing the `--force` flag re-installs the app even if it is already installed on your computer. +`mas install โ€ฆ` installs apps that you have already gotten/"purchased" from the Mac App +Store. Providing the `--force` flag re-installs the app even if it is already installed on your +Mac. ```console $ mas install 497799835 @@ -173,8 +181,9 @@ $ mas install 497799835 #### `mas lucky` -`mas lucky ` installs the first result that would be returned by `mas search `. -Like `mas install`, `mas lucky` can only install apps that have previously been gotten/"purchased". +`mas lucky ` installs the first result that would be returned by `mas search +`. Like `mas install`, `mas lucky` can only install apps that have previously been +gotten/"purchased". ```console $ mas lucky Xcode @@ -184,16 +193,18 @@ $ mas lucky Xcode ### ๐Ÿ†• Upgrading Apps -All the commands in this section require you to be logged into an Apple Account in the Mac App Store. +All the commands in this section require you to be logged into an Apple Account in the Mac App +Store. > mas only installs/upgrades applications from the Mac App Store. > -> Use [`softwareupdate(8)`](https://www.unix.com/man-page/osx/8/softwareupdate) to install system updates (e.g., Xcode -> Command Line Tools, Safari, etc.) +> Use [`softwareupdate(8)`](https://www.unix.com/man-page/osx/8/softwareupdate) to install +> system updates (e.g., Xcode Command Line Tools, Safari, etc.) #### `mas upgrade` -`mas upgrade` upgrades outdated apps installed from the Mac App Store. Without any arguments, it upgrades all such apps. +`mas upgrade` upgrades outdated apps installed from the Mac App Store. Without any arguments, it +upgrades all such apps. ```console $ mas upgrade @@ -218,15 +229,18 @@ Xcode (15.4) -> (16.0) ### Mac App Store Account Management -All the commands in this section interact with the Apple Account for which you are signed in to the Mac App Store. -These commands do not interact with the Apple Account for which your macOS user is signed in. +All the commands in this section interact with the Apple Account for which you are signed in to +the Mac App Store. These commands do not interact with the Apple Account for which your macOS +user is signed in. #### `mas signin` -> โ›” The `signin` command is not supported on macOS 10.13 (High Sierra) or newer. On those macOS versions, please -> sign in via the Mac App Store instead. Please see [Known Issues](#known-issues). +> โ›” The `signin` command is not supported on macOS 10.13 (High Sierra) or newer. On those macOS +> versions, please sign in via the Mac App Store instead. Please see +> [Known Issues](#known-issues). -On macOS 10.12 (Sierra) or older, `mas signin ` signs in to the specified Apple Account in the Mac App Store. +On macOS 10.12 (Sierra) or older, `mas signin ` signs in to the specified Apple +Account in the Mac App Store. ```console $ mas signin mas@example.com @@ -261,7 +275,8 @@ docs for more details. ### ๐Ÿ’ฅ Changed Apple Private Frameworks mas uses multiple undocumented Apple private frameworks to implement much of its functionality. -Over time, Apple has silently changed these frameworks, breaking some functionality. Known issues include: +Over time, Apple has silently changed these frameworks, breaking some functionality. Known +issues include: - โ›” The `signin` command is not supported on macOS 10.13 (High Sierra) or newer. [#164]( https://github.com/mas-cli/mas/issues/164 @@ -272,13 +287,15 @@ Over time, Apple has silently changed these frameworks, breaking some functional ### โณ Eventual Consistency -The Mac App Store operates on eventual consistency, so the versions seen by various parts of mas or the Mac App Store -might be inconsistent for short periods of time. This might cause symptoms like -[#384](https://github.com/mas-cli/mas/issues/384) & [#387](https://github.com/mas-cli/mas/issues/387). +The Mac App Store operates on eventual consistency, so the versions seen by various parts of mas +or the Mac App Store might be inconsistent for short periods of time. This might cause symptoms +like [#384](https://github.com/mas-cli/mas/issues/384) & +[#387](https://github.com/mas-cli/mas/issues/387). ### ๐Ÿ“ฑ iOS & iPadOS Apps -Apple Silicon Macs can install & run iOS & iPadOS apps from the Mac App Store. mas does not yet support such apps. +Apple Silicon Macs can install & run iOS & iPadOS apps from the Mac App Store. mas does not yet +support such apps. [#321](https://github.com/mas-cli/mas/issues/321) ### ๐Ÿ“บ Using `tmux` @@ -287,24 +304,24 @@ mas operates via the same system services as the Mac App Store. These exist as separate processes with communication through XPC. As a result of this, mas experiences similar problems as the pasteboard when running inside `tmux`. A [wrapper tool exists](https://github.com/ChrisJohnsen/tmux-MacOSX-pasteboard) to -fix pasteboard behaviour which also works for mas. +fix pasteboard behavior which also works for mas. -You should consider configuring `tmux` to use the wrapper but if you do not wish -to do this it can be used on a one-off basis as follows: +You should consider configuring `tmux` to use the wrapper, but, if you do not wish +to do this, it can be used on a one-off basis as follows: ```shell brew install reattach-to-user-namespace reattach-to-user-namespace mas install ``` -### `mas list` returns no results +### ๐Ÿ“ญ `mas list`, `mas outdated`, `mas uninstall`, or `mas upgrade` does not detect installed apps -mas 2.0.0+ sources data for installed MAS apps from masOS's Spotlight metadata store. +mas 2.0.0+ sources data for installed Mac App Store apps from macOS's Spotlight metadata store. -mas can only interact with MAS apps if they have been indexed by the Spotlight Metadata Server -(aka MDS) background processes. +mas can only interact with installed Mac App Store apps if they have been indexed by the +Spotlight Metadata Server (aka MDS) background processes. -You can check if an MAS app has been indexed in the metadata store by running: +You can check if a Mac App Store app has been indexed in the metadata store by running: ```console ## General format: @@ -325,8 +342,8 @@ $ mdfind 'kMDItemAppStoreAdamID == 310633997' /Applications/WhatsApp.app ``` -If any of your MAS apps are not indexed, you can enable/rebuild the metadata store for all file -system volumes by running: +If any of your Mac App Store apps are not indexed, you can enable/rebuild the metadata store for +all file system volumes by running: ```shell sudo mdutil -Eai on @@ -334,14 +351,15 @@ sudo mdutil -Eai on ## ๐Ÿšซ When something doesn't work -If you see the following error, it's probably because you haven't yet "purchased" the app through the Mac App Store. +If you see the following error, it's probably because you haven't yet "purchased" the app +through the Mac App Store. See [#46](https://github.com/mas-cli/mas/issues/46#issuecomment-248581233). -> This redownload is not available for this Apple Account either because it was bought by a different user or the -> item was refunded or cancelled. +> This redownload is not available for this Apple Account either because it was bought by a +> different user or the item was refunded or canceled. -If mas doesn't work for you as expected (e.g. you can't install/upgrade apps), run `mas reset`, then try again. -If the issue persists, please [file a bug](https://github.com/mas-cli/mas/issues/new). -All feedback is much appreciated! โœจ +If mas doesn't work for you as expected (e.g., you can't install/upgrade apps), run `mas reset`, +then try again. If the issue persists, please +[file a bug](https://github.com/mas-cli/mas/issues/new). All feedback is much appreciated! โœจ ## ๐Ÿ— Build from source @@ -355,7 +373,8 @@ Build output can be found in the `.build` directory within the project. ## ๐Ÿงช Tests -Tests are written using [Quick](https://github.com/Quick/Quick) & [Nimble](https://github.com/Quick/Nimble). +Tests are written using [Quick](https://github.com/Quick/Quick) & +[Nimble](https://github.com/Quick/Nimble). ```shell script/test