-
Notifications
You must be signed in to change notification settings - Fork 492
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: FMAv2 initial file setup (#26791)
> For #26080 # Checklist for submitter If some of the following don't apply, delete the relevant line. <!-- Note that API documentation changes are now addressed by the product design team. --> - [x] Manual QA for all new/changed functionality
- Loading branch information
Showing
21 changed files
with
524 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,145 @@ | ||
{ | ||
"version": 2, | ||
"apps": [ | ||
{ | ||
"name": "1Password", | ||
"slug": "1password/darwin", | ||
"platform": "darwin", | ||
"unique_identifier": "com.1password.1password", | ||
"description": "Password manager that keeps all passwords secure behind one password" | ||
}, | ||
{ | ||
"name": "Adobe Acrobat Reader", | ||
"slug": "adobe-acrobat-reader/darwin", | ||
"platform": "darwin", | ||
"unique_identifier": "com.adobe.Reader", | ||
"description": "Adobe Acrobat Reader is the industry-standard tool for viewing, printing, and commenting on PDF documents." | ||
}, | ||
{ | ||
"name": "Box Drive", | ||
"slug": "box-drive/darwin", | ||
"platform": "darwin", | ||
"unique_identifier": "com.box.desktop", | ||
"description": "Box Drive is the desktop client for Box Cloud, enabling seamless access to your files without taking up local storage." | ||
}, | ||
{ | ||
"name": "Brave", | ||
"slug": "brave-browser/darwin", | ||
"platform": "darwin", | ||
"unique_identifier": "com.brave.Browser", | ||
"description": "Brave is a web browser designed with privacy, blocking ads and trackers by default while maintaining fast speed." | ||
}, | ||
{ | ||
"name": "Cloudflare WARP", | ||
"slug": "cloudflare-warp/darwin", | ||
"platform": "darwin", | ||
"unique_identifier": "com.cloudflare.1dot1dot1dot1.macos", | ||
"description": "Cloudflare WARP enhances internet safety and performance by encrypting your data and optimizing connections for privacy." | ||
}, | ||
{ | ||
"name": "Docker Desktop", | ||
"slug": "docker/darwin", | ||
"platform": "darwin", | ||
"unique_identifier": "com.docker.docker", | ||
"description": "Docker Desktop provides a seamless environment for building, sharing, and running containerized applications and microservices." | ||
}, | ||
{ | ||
"name": "Figma", | ||
"slug": "figma/darwin", | ||
"platform": "darwin", | ||
"unique_identifier": "com.figma.Desktop", | ||
"description": "Figma is a collaborative design tool for teams to create, prototype, and share designs in real time." | ||
}, | ||
{ | ||
"name": "Mozilla Firefox", | ||
"slug": "firefox/darwin", | ||
"platform": "darwin", | ||
"unique_identifier": "org.mozilla.firefox", | ||
"description": "Firefox is a powerful, open-source web browser built for speed, privacy, and customization." | ||
}, | ||
{ | ||
"name": "Google Chrome", | ||
"slug": "google-chrome/darwin", | ||
"platform": "darwin", | ||
"unique_identifier": "com.google.Chrome", | ||
"description": "Google Chrome is a fast, reliable web browser built for performance and compatibility across platforms." | ||
}, | ||
{ | ||
"name": "Microsoft Edge", | ||
"slug": "microsoft-edge/darwin", | ||
"platform": "darwin", | ||
"unique_identifier": "com.microsoft.edgemac", | ||
"description": "Microsoft Edge is a secure, fast, and modern web browser built for productivity and compatibility." | ||
}, | ||
{ | ||
"name": "Microsoft Excel", | ||
"slug": "microsoft-excel/darwin", | ||
"platform": "darwin", | ||
"unique_identifier": "com.microsoft.Excel", | ||
"description": "Microsoft Excel is the industry-standard spreadsheet software, perfect for data analysis, reporting, and visualization." | ||
}, | ||
{ | ||
"name": "Microsoft Teams", | ||
"slug": "microsoft-teams/darwin", | ||
"platform": "darwin", | ||
"unique_identifier": "com.microsoft.teams2", | ||
"description": "Microsoft Teams is an all-in-one collaboration platform for meetings, chats, calls, and document sharing." | ||
}, | ||
{ | ||
"name": "Microsoft Word", | ||
"slug": "microsoft-word/darwin", | ||
"platform": "darwin", | ||
"unique_identifier": "com.microsoft.Word", | ||
"description": "Microsoft Word is the industry-standard word processor for creating, editing, and sharing professional documents." | ||
}, | ||
{ | ||
"name": "Notion", | ||
"slug": "notion/darwin", | ||
"platform": "darwin", | ||
"unique_identifier": "notion.id", | ||
"description": "Notion is an all-in-one workspace for writing, planning, collaborating, and organizing." | ||
}, | ||
{ | ||
"name": "Postman", | ||
"slug": "postman/darwin", | ||
"platform": "darwin", | ||
"unique_identifier": "com.postmanlabs.mac", | ||
"description": "Postman is a collaboration platform for API development that simplifies building, testing, and sharing APIs." | ||
}, | ||
{ | ||
"name": "Slack", | ||
"slug": "slack/darwin", | ||
"platform": "darwin", | ||
"unique_identifier": "com.tinyspeck.slackmacgap", | ||
"description": "Slack is a team communication and collaboration software for modern workplaces" | ||
}, | ||
{ | ||
"name": "TeamViewer", | ||
"slug": "teamviewer/darwin", | ||
"platform": "darwin", | ||
"unique_identifier": "com.teamviewer.TeamViewer", | ||
"description": "TeamViewer is a versatile remote access and connectivity platform trusted for secure remote desktop control, support, and collaboration." | ||
}, | ||
{ | ||
"name": "Microsoft Visual Studio Code", | ||
"slug": "visual-studio-code/darwin", | ||
"platform": "darwin", | ||
"unique_identifier": "com.microsoft.VSCode", | ||
"description": "Microsoft Visual Studio Code (VS Code) is an open-source, lightweight, and powerful code editor." | ||
}, | ||
{ | ||
"name": "WhatsApp", | ||
"slug": "whatsapp/darwin", | ||
"platform": "darwin", | ||
"unique_identifier": "net.whatsapp.WhatsApp", | ||
"description": "WhatsApp's native desktop client for seamless messaging and calling on macOS." | ||
}, | ||
{ | ||
"name": "Zoom for IT Admins", | ||
"slug": "zoom-for-it-admins/darwin", | ||
"platform": "darwin", | ||
"unique_identifier": "us.zoom.xos", | ||
"description": "Zoom is a leading video communication platform for meetings, webinars, and collaboration." | ||
} | ||
] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
{ | ||
"versions": [ | ||
{ | ||
"version": "8.10.60", | ||
"queries": { | ||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.1password.1password';" | ||
}, | ||
"installer_url": "https://downloads.1password.com/mac/1Password-8.10.60-aarch64.zip", | ||
"unique_identifier": "com.1password.1password", | ||
"install_script_ref": "19ababc1-ed65-11ef-8c2d-0242ac12000a", | ||
"uninstall_script_ref": "19abb6e2-ed65-11ef-8c2d-0242ac12000a", | ||
"sha256": "76b26233c12250cdcce78f8a3d074bbc09927c11f960fa90935e328c7ce806d3" | ||
} | ||
], | ||
"refs": { | ||
"19ababc1-ed65-11ef-8c2d-0242ac12000a": "#!/bin/sh\n\n# variables\nAPPDIR=\"/Applications/\"\nTMPDIR=$(dirname \"$(realpath $INSTALLER_PATH)\")\n# functions\n\nquit_application() {\n local bundle_id=\"$1\"\n local timeout_duration=10\n\n # check if the application is running\n if ! osascript -e \"application id \\\"$bundle_id\\\" is running\" 2>/dev/null; then\n return\n fi\n\n local console_user\n console_user=$(stat -f \"%Su\" /dev/console)\n if [[ $EUID -eq 0 && \"$console_user\" == \"root\" ]]; then\n echo \"Not logged into a non-root GUI; skipping quitting application ID '$bundle_id'.\"\n return\n fi\n\n echo \"Quitting application '$bundle_id'...\"\n\n # try to quit the application within the timeout period\n local quit_success=false\n SECONDS=0\n while (( SECONDS < timeout_duration )); do\n if osascript -e \"tell application id \\\"$bundle_id\\\" to quit\" >/dev/null 2>&1; then\n if ! pgrep -f \"$bundle_id\" >/dev/null 2>&1; then\n echo \"Application '$bundle_id' quit successfully.\"\n quit_success=true\n break\n fi\n fi\n sleep 1\n done\n\n if [[ \"$quit_success\" = false ]]; then\n echo \"Application '$bundle_id' did not quit.\"\n fi\n}\n\n\n# extract contents\nunzip \"$INSTALLER_PATH\" -d \"$TMPDIR\"\n# copy to the applications folder\nquit_application 'com.1password.1password'\nsudo [ -d \"$APPDIR/1Password.app\" ] && sudo mv \"$APPDIR/1Password.app\" \"$TMPDIR/1Password.app.bkp\"\nsudo cp -R \"$TMPDIR/1Password.app\" \"$APPDIR\"\n", | ||
"19abb6e2-ed65-11ef-8c2d-0242ac12000a": "#!/bin/sh\n\n# variables\nAPPDIR=\"/Applications/\"\nLOGGED_IN_USER=$(scutil <<< \"show State:/Users/ConsoleUser\" | awk '/Name :/ { print $3 }')\n# functions\n\ntrash() {\n local logged_in_user=\"$1\"\n local target_file=\"$2\"\n local timestamp=\"$(date +%Y-%m-%d-%s)\"\n local rand=\"$(jot -r 1 0 99999)\"\n\n # replace ~ with /Users/$logged_in_user\n if [[ \"$target_file\" == ~* ]]; then\n target_file=\"/Users/$logged_in_user${target_file:1}\"\n fi\n\n local trash=\"/Users/$logged_in_user/.Trash\"\n local file_name=\"$(basename \"${target_file}\")\"\n\n if [[ -e \"$target_file\" ]]; then\n echo \"removing $target_file.\"\n mv -f \"$target_file\" \"$trash/${file_name}_${timestamp}_${rand}\"\n else\n echo \"$target_file doesn't exist.\"\n fi\n}\n\nsudo rm -rf \"$APPDIR/1Password.app\"\ntrash $LOGGED_IN_USER '~/Library/Application Scripts/2BUA8C4S2C.com.1password*'\ntrash $LOGGED_IN_USER '~/Library/Application Scripts/2BUA8C4S2C.com.agilebits'\ntrash $LOGGED_IN_USER '~/Library/Application Scripts/com.1password.1password-launcher'\ntrash $LOGGED_IN_USER '~/Library/Application Scripts/com.1password.browser-support'\ntrash $LOGGED_IN_USER '~/Library/Application Support/1Password'\ntrash $LOGGED_IN_USER '~/Library/Application Support/Arc/User Data/NativeMessagingHosts/com.1password.1password.json'\ntrash $LOGGED_IN_USER '~/Library/Application Support/com.apple.sharedfilelist/com.apple.LSSharedFileList.ApplicationRecentDocuments/com.1password.1password.sfl*'\ntrash $LOGGED_IN_USER '~/Library/Application Support/CrashReporter/1Password*'\ntrash $LOGGED_IN_USER '~/Library/Application Support/Google/Chrome Beta/NativeMessagingHosts/com.1password.1password.json'\ntrash $LOGGED_IN_USER '~/Library/Application Support/Google/Chrome Canary/NativeMessagingHosts/com.1password.1password.json'\ntrash $LOGGED_IN_USER '~/Library/Application Support/Google/Chrome Dev/NativeMessagingHosts/com.1password.1password.json'\ntrash $LOGGED_IN_USER '~/Library/Application Support/Google/Chrome/NativeMessagingHosts/com.1password.1password.json'\ntrash $LOGGED_IN_USER '~/Library/Application Support/Microsoft Edge Beta/NativeMessagingHosts/com.1password.1password.json'\ntrash $LOGGED_IN_USER '~/Library/Application Support/Microsoft Edge Canary/NativeMessagingHosts/com.1password.1password.json'\ntrash $LOGGED_IN_USER '~/Library/Application Support/Microsoft Edge Dev/NativeMessagingHosts/com.1password.1password.json'\ntrash $LOGGED_IN_USER '~/Library/Application Support/Microsoft Edge/NativeMessagingHosts/com.1password.1password.json'\ntrash $LOGGED_IN_USER '~/Library/Application Support/Mozilla/NativeMessagingHosts/com.1password.1password.json'\ntrash $LOGGED_IN_USER '~/Library/Application Support/Vivaldi/NativeMessagingHosts/com.1password.1password.json'\ntrash $LOGGED_IN_USER '~/Library/Containers/2BUA8C4S2C.com.1password.browser-helper'\ntrash $LOGGED_IN_USER '~/Library/Containers/com.1password.1password*'\ntrash $LOGGED_IN_USER '~/Library/Containers/com.1password.browser-support'\ntrash $LOGGED_IN_USER '~/Library/Group Containers/2BUA8C4S2C.com.1password'\ntrash $LOGGED_IN_USER '~/Library/Group Containers/2BUA8C4S2C.com.agilebits'\ntrash $LOGGED_IN_USER '~/Library/Logs/1Password'\ntrash $LOGGED_IN_USER '~/Library/Preferences/com.1password.1password.plist'\ntrash $LOGGED_IN_USER '~/Library/Preferences/group.com.1password.plist'\ntrash $LOGGED_IN_USER '~/Library/Saved Application State/com.1password.1password.savedState'\n" | ||
} | ||
} |
19 changes: 19 additions & 0 deletions
19
ee/maintained-apps/outputs/darwin/adobe-acrobat-reader.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
{ | ||
"versions": [ | ||
{ | ||
"version": "8.10.60", | ||
"installer_url": "https://downloads.1password.com/mac/1Password-8.10.60-aarch64.zip", | ||
"unique_identifier": "com.adobe.Reader", | ||
"queries": { | ||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.adobe.Reader';" | ||
}, | ||
"install_script_ref": "19abc536-ed65-11ef-8c2d-0242ac12000a", | ||
"uninstall_script_ref": "19abc828-ed65-11ef-8c2d-0242ac12000a", | ||
"sha256": "37fa04f8e633085a36f598ea94cb1da0245b2fc9eca898f7198880026dad5bd1" | ||
} | ||
], | ||
"refs": { | ||
"19abc536-ed65-11ef-8c2d-0242ac12000a": "#!/bin/sh\n\n# variables\nAPPDIR=\"/Applications/\"\nTMPDIR=$(dirname \"$(realpath $INSTALLER_PATH)\")\n\n# extract contents\nMOUNT_POINT=$(mktemp -d /tmp/dmg_mount_XXXXXX)\nhdiutil attach -plist -nobrowse -readonly -mountpoint \"$MOUNT_POINT\" \"$INSTALLER_PATH\"\nsudo cp -R \"$MOUNT_POINT\"/* \"$TMPDIR\"\nhdiutil detach \"$MOUNT_POINT\"\n# install pkg files\nsudo installer -pkg \"$TMPDIR/AcroRdrDC_2400520400_MUI.pkg\" -target /\n", | ||
"19abc828-ed65-11ef-8c2d-0242ac12000a": "#!/bin/sh\n\n# variables\nLOGGED_IN_USER=$(scutil <<< \"show State:/Users/ConsoleUser\" | awk '/Name :/ { print $3 }')\n# functions\n\nquit_application() {\n local bundle_id=\"$1\"\n local timeout_duration=10\n\n # check if the application is running\n if ! osascript -e \"application id \\\"$bundle_id\\\" is running\" 2>/dev/null; then\n return\n fi\n\n local console_user\n console_user=$(stat -f \"%Su\" /dev/console)\n if [[ $EUID -eq 0 && \"$console_user\" == \"root\" ]]; then\n echo \"Not logged into a non-root GUI; skipping quitting application ID '$bundle_id'.\"\n return\n fi\n\n echo \"Quitting application '$bundle_id'...\"\n\n # try to quit the application within the timeout period\n local quit_success=false\n SECONDS=0\n while (( SECONDS < timeout_duration )); do\n if osascript -e \"tell application id \\\"$bundle_id\\\" to quit\" >/dev/null 2>&1; then\n if ! pgrep -f \"$bundle_id\" >/dev/null 2>&1; then\n echo \"Application '$bundle_id' quit successfully.\"\n quit_success=true\n break\n fi\n fi\n sleep 1\n done\n\n if [[ \"$quit_success\" = false ]]; then\n echo \"Application '$bundle_id' did not quit.\"\n fi\n}\n\n\nremove_launchctl_service() {\n local service=\"$1\"\n local booleans=(\"true\" \"false\")\n local plist_status\n local paths\n local should_sudo\n\n echo \"Removing launchctl service ${service}\"\n\n for should_sudo in \"${booleans[@]}\"; do\n plist_status=$(launchctl list \"${service}\" 2>/dev/null)\n\n if [[ $plist_status == \\{* ]]; then\n if [[ $should_sudo == \"true\" ]]; then\n sudo launchctl remove \"${service}\"\n else\n launchctl remove \"${service}\"\n fi\n sleep 1\n fi\n\n paths=(\n \"/Library/LaunchAgents/${service}.plist\"\n \"/Library/LaunchDaemons/${service}.plist\"\n )\n\n # if not using sudo, prepend the home directory to the paths\n if [[ $should_sudo == \"false\" ]]; then\n for i in \"${!paths[@]}\"; do\n paths[i]=\"${HOME}${paths[i]}\"\n done\n fi\n\n for path in \"${paths[@]}\"; do\n if [[ -e \"$path\" ]]; then\n if [[ $should_sudo == \"true\" ]]; then\n sudo rm -f -- \"$path\"\n else\n rm -f -- \"$path\"\n fi\n fi\n done\n done\n}\n\ntrash() {\n local logged_in_user=\"$1\"\n local target_file=\"$2\"\n local timestamp=\"$(date +%Y-%m-%d-%s)\"\n local rand=\"$(jot -r 1 0 99999)\"\n\n # replace ~ with /Users/$logged_in_user\n if [[ \"$target_file\" == ~* ]]; then\n target_file=\"/Users/$logged_in_user${target_file:1}\"\n fi\n\n local trash=\"/Users/$logged_in_user/.Trash\"\n local file_name=\"$(basename \"${target_file}\")\"\n\n if [[ -e \"$target_file\" ]]; then\n echo \"removing $target_file.\"\n mv -f \"$target_file\" \"$trash/${file_name}_${timestamp}_${rand}\"\n else\n echo \"$target_file doesn't exist.\"\n fi\n}\n\nremove_launchctl_service 'com.adobe.ARMDC.Communicator'\nremove_launchctl_service 'com.adobe.ARMDC.SMJobBlessHelper'\nremove_launchctl_service 'com.adobe.ARMDCHelper.cc24aef4a1b90ed56a725c38014c95072f92651fb65e1bf9c8e43c37a23d420d'\nquit_application 'com.adobe.AdobeRdrCEF'\nquit_application 'com.adobe.AdobeRdrCEFHelper'\nquit_application 'com.adobe.Reader'\nsudo pkgutil --forget 'com.adobe.acrobat.DC.reader.*'\nsudo pkgutil --forget 'com.adobe.armdc.app.pkg'\nsudo pkgutil --forget 'com.adobe.RdrServicesUpdater'\nsudo rm -rf '/Applications/Adobe Acrobat Reader.app'\nsudo rm -rf '/Library/Preferences/com.adobe.reader.DC.WebResource.plist'\ntrash $LOGGED_IN_USER '~/Library/Caches/com.adobe.Reader'\ntrash $LOGGED_IN_USER '~/Library/HTTPStorages/com.adobe.Reader.binarycookies'\ntrash $LOGGED_IN_USER '~/Library/Preferences/com.adobe.AdobeRdrCEFHelper.plist'\ntrash $LOGGED_IN_USER '~/Library/Preferences/com.adobe.crashreporter.plist'\ntrash $LOGGED_IN_USER '~/Library/Preferences/com.adobe.Reader.plist'\n" | ||
} | ||
} |
Oops, something went wrong.