Update Fleet-maintained apps (#47485)
Automated ingestion of latest Fleet-maintained app data. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Updated 26 maintained applications to their latest versions, including Google Chrome, PostgreSQL 16, Figma, Notion Calendar, and others across Windows and macOS platforms. * Enhanced MacVim application detection logic for installation verification. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: allenhouchins <32207388+allenhouchins@users.noreply.github.com>
This commit is contained in:
co-authored by
allenhouchins
parent
e1c7d71ede
commit
3bf74d21b3
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "2.35.2",
|
||||
"version": "2.35.3",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM programs WHERE name LIKE 'AWS Command Line Interface v2 %' AND publisher = 'Amazon Web Services';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name LIKE 'AWS Command Line Interface v2 %' AND publisher = 'Amazon Web Services' AND version_compare(version, '2.35.2') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name LIKE 'AWS Command Line Interface v2 %' AND publisher = 'Amazon Web Services' AND version_compare(version, '2.35.3') < 0);"
|
||||
},
|
||||
"installer_url": "https://awscli.amazonaws.com/AWSCLIV2-2.35.2.msi",
|
||||
"installer_url": "https://awscli.amazonaws.com/AWSCLIV2-2.35.3.msi",
|
||||
"install_script_ref": "8959087b",
|
||||
"uninstall_script_ref": "58bcd016",
|
||||
"sha256": "4ec4f3b8ce5428cb326392be4c23ef43bc0d9d8d73cfaff65490109c8f200e6e",
|
||||
"sha256": "51872df2cd874e7232cfdd6e1b8944c1084d965c3c38c0e501db855233329946",
|
||||
"default_categories": [
|
||||
"Developer tools"
|
||||
],
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "6.570",
|
||||
"version": "6.573",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.hegenberg.BetterTouchTool';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.hegenberg.BetterTouchTool' AND version_compare(bundle_short_version, '6.570') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.hegenberg.BetterTouchTool' AND version_compare(bundle_short_version, '6.573') < 0);"
|
||||
},
|
||||
"installer_url": "https://folivora.ai/releases/btt6.570-2026061006.zip",
|
||||
"installer_url": "https://folivora.ai/releases/btt6.573-2026061010.zip",
|
||||
"install_script_ref": "920c563d",
|
||||
"uninstall_script_ref": "b0dc7152",
|
||||
"sha256": "f85d4fe669ff6073e522965a6d8c048f04bbe05631cc6ece69afee789d73578f",
|
||||
"sha256": "2ab8a0233b373bf26a47aa3cb318f4a3b79d33e81fa9d303d65fefa4acded009",
|
||||
"default_categories": [
|
||||
"Productivity"
|
||||
]
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "5.47.0",
|
||||
"version": "5.48.0",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.camunda.CamundaModeler';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.camunda.CamundaModeler' AND version_compare(bundle_short_version, '5.47.0') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.camunda.CamundaModeler' AND version_compare(bundle_short_version, '5.48.0') < 0);"
|
||||
},
|
||||
"installer_url": "https://downloads.camunda.cloud/release/camunda-modeler/5.47.0/camunda-modeler-5.47.0-mac-arm64.zip",
|
||||
"installer_url": "https://downloads.camunda.cloud/release/camunda-modeler/5.48.0/camunda-modeler-5.48.0-mac-arm64.zip",
|
||||
"install_script_ref": "2b596ec1",
|
||||
"uninstall_script_ref": "68ff5179",
|
||||
"sha256": "c657fa0d5b6ae7643fd5ed6e223fb91ec88d0b74e118268608d6f0bd1fb59a1b",
|
||||
"sha256": "434ae64874410302068d820d63541bb2d2e7be8702f46c46bdf65e2bd2dc4e96",
|
||||
"default_categories": [
|
||||
"Productivity"
|
||||
]
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "5.3.6",
|
||||
"version": "5.3.7",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'github.comvladimiryElectronMail';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'github.comvladimiryElectronMail' AND version_compare(bundle_short_version, '5.3.6') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'github.comvladimiryElectronMail' AND version_compare(bundle_short_version, '5.3.7') < 0);"
|
||||
},
|
||||
"installer_url": "https://github.com/vladimiry/ElectronMail/releases/download/v5.3.6/electron-mail-5.3.6-mac-arm64.dmg",
|
||||
"installer_url": "https://github.com/vladimiry/ElectronMail/releases/download/v5.3.7/electron-mail-5.3.7-mac-arm64.dmg",
|
||||
"install_script_ref": "06383b51",
|
||||
"uninstall_script_ref": "315a25ff",
|
||||
"sha256": "cfb8f95ab53517e897f140cb592e6c5cbc078e86cf2896452974dc1d3390fc4a",
|
||||
"sha256": "ba507e765a7a64185c04988b63893e13fa045b2f57488b88cdde6b4f312af7ee",
|
||||
"default_categories": [
|
||||
"Productivity"
|
||||
]
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "4.1.13",
|
||||
"version": "4.1.14",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.flexibits.fantastical';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.flexibits.fantastical' AND version_compare(bundle_short_version, '4.1.13') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.flexibits.fantastical' AND version_compare(bundle_short_version, '4.1.14') < 0);"
|
||||
},
|
||||
"installer_url": "https://cdn.flexibits.com/Fantastical_4.1.13.zip",
|
||||
"installer_url": "https://cdn.flexibits.com/Fantastical_4.1.14.zip",
|
||||
"install_script_ref": "0da19afb",
|
||||
"uninstall_script_ref": "846b1a5a",
|
||||
"sha256": "12abaa1eea67f19fbed5ade5cac18cd1d02d6a6458e647ee7f98059ea8050278",
|
||||
"sha256": "dceecd13e48bb8e1942461574c19fe94a3f1baac88ac86942d44af3fc4fa8270",
|
||||
"default_categories": [
|
||||
"Productivity"
|
||||
]
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "126.4.13",
|
||||
"version": "126.5.6",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.figma.Desktop';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.figma.Desktop' AND version_compare(bundle_short_version, '126.4.13') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.figma.Desktop' AND version_compare(bundle_short_version, '126.5.6') < 0);"
|
||||
},
|
||||
"installer_url": "https://desktop.figma.com/mac-arm/Figma-126.4.13.zip",
|
||||
"installer_url": "https://desktop.figma.com/mac-arm/Figma-126.5.6.zip",
|
||||
"install_script_ref": "f0952230",
|
||||
"uninstall_script_ref": "7dcd0304",
|
||||
"sha256": "36dbf69cb4b3148b95f9708cdf01270c865fd279d91cf284c51d93bfdb511652",
|
||||
"sha256": "ad5e572b2eefeb1eb2bb1564f001d6a38261ba759c9fdc708df1b970a511a223",
|
||||
"default_categories": [
|
||||
"Productivity"
|
||||
]
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "2026.12.6",
|
||||
"version": "2026.23.3",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.framer.electron';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.framer.electron' AND version_compare(bundle_short_version, '2026.12.6') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.framer.electron' AND version_compare(bundle_short_version, '2026.23.3') < 0);"
|
||||
},
|
||||
"installer_url": "https://updates.framer.com/electron/darwin/arm64/Framer-2026.12.6.zip",
|
||||
"installer_url": "https://updates.framer.com/electron/darwin/arm64/Framer-2026.23.3.zip",
|
||||
"install_script_ref": "7c743e16",
|
||||
"uninstall_script_ref": "4775195c",
|
||||
"sha256": "4beda67f6593b09718c4bbb5f00e6a7ca77b4fac10107b27254cd33b80ac5b29",
|
||||
"sha256": "fc0755e53901b9beb4f960ce5d724721a6bf393a01b49dd64af79b08243ac14a",
|
||||
"default_categories": [
|
||||
"Productivity"
|
||||
]
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.GeorgSeifert.Glyphs3';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.GeorgSeifert.Glyphs3' AND version_compare(bundle_short_version, '3.5') < 0);"
|
||||
},
|
||||
"installer_url": "https://updates.glyphsapp.com/Glyphs3.5-3527.zip",
|
||||
"installer_url": "https://updates.glyphsapp.com/Glyphs3.5-3528.zip",
|
||||
"install_script_ref": "a5e9ac58",
|
||||
"uninstall_script_ref": "b1245f10",
|
||||
"sha256": "4f7e0b5214c029f0469c4617494207387ae58ead878c74edc385dab4d489ea56",
|
||||
"sha256": "3967d9344e8adeeeec5cbcbe8101cbf9d9018cf3d895a75d82a8348e7ec02d3a",
|
||||
"default_categories": [
|
||||
"Productivity"
|
||||
]
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "149.0.7827.103",
|
||||
"version": "149.0.7827.115",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM programs WHERE name = 'Google Chrome' AND publisher = 'Google LLC';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'Google Chrome' AND publisher = 'Google LLC' AND version_compare(version, '149.0.7827.103') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'Google Chrome' AND publisher = 'Google LLC' AND version_compare(version, '149.0.7827.115') < 0);"
|
||||
},
|
||||
"installer_url": "https://dl.google.com/dl/chrome/install/googlechromestandaloneenterprise64.msi",
|
||||
"install_script_ref": "8959087b",
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "3.5.4.0",
|
||||
"version": "3.5.5.0",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM programs WHERE name = 'iMazing' AND publisher = 'DigiDNA';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'iMazing' AND publisher = 'DigiDNA' AND version_compare(version, '3.5.4.0') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'iMazing' AND publisher = 'DigiDNA' AND version_compare(version, '3.5.5.0') < 0);"
|
||||
},
|
||||
"installer_url": "https://downloads.imazing.com/windows/iMazing/iMazing3forWindows.exe",
|
||||
"install_script_ref": "145b29b1",
|
||||
"uninstall_script_ref": "a8fdf759",
|
||||
"sha256": "0686128d3d53956beb8409d7812acbc4f6531ab9d0a515e284f227d6533ce8c6",
|
||||
"sha256": "f0d4b2869f0beff57b0879713d041f09e2c26651f21719c612ce58220d535986",
|
||||
"default_categories": [
|
||||
"Developer tools"
|
||||
]
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "0.15.1",
|
||||
"version": "0.15.2",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.sarensx.MacPacker';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.sarensx.MacPacker' AND version_compare(bundle_short_version, '0.15.1') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.sarensx.MacPacker' AND version_compare(bundle_short_version, '0.15.2') < 0);"
|
||||
},
|
||||
"installer_url": "https://macpacker-releases.s3.amazonaws.com/MacPacker_v0.15.1.zip",
|
||||
"installer_url": "https://macpacker-releases.s3.amazonaws.com/MacPacker_v0.15.2.zip",
|
||||
"install_script_ref": "a8350ac7",
|
||||
"uninstall_script_ref": "fd696a74",
|
||||
"sha256": "bb942d37433b6131f131fdf2c41f8eb560fe7866154a33dab30d0522dfa843ad",
|
||||
"sha256": "6213bf8fb18690fee2ef288061e753d1512010759cb8efc41141b7f7aa52908e",
|
||||
"default_categories": [
|
||||
"Productivity"
|
||||
]
|
||||
|
||||
@@ -3,11 +3,11 @@
|
||||
{
|
||||
"version": "183",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'org.vim.MacVim.LSSharedFileList';",
|
||||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'org.vim.MacVim';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'org.vim.MacVim' AND version_compare(bundle_short_version, '183') < 0);"
|
||||
},
|
||||
"installer_url": "https://github.com/macvim-dev/macvim/releases/download/release-183/MacVim.dmg",
|
||||
"install_script_ref": "bae18e19",
|
||||
"install_script_ref": "2fb79ce8",
|
||||
"uninstall_script_ref": "0e5c6087",
|
||||
"sha256": "c27fb8948328074dcb81f45b7d88ff4e123a86c06eaf3d5b330369bc39ffab69",
|
||||
"default_categories": [
|
||||
@@ -17,6 +17,6 @@
|
||||
],
|
||||
"refs": {
|
||||
"0e5c6087": "#!/bin/bash\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\n # If the target contains glob characters, expand it and move each match.\n if [[ \"$target_file\" == *[*?[]* ]]; then\n local file file_name\n local matched=false\n local i=0\n # compgen -G expands the (quoted) pattern itself, so paths containing\n # spaces glob correctly; reading line by line keeps each match intact.\n while IFS= read -r file; do\n [[ -n \"$file\" ]] || continue\n [[ -e \"$file\" || -L \"$file\" ]] || continue\n matched=true\n i=$((i + 1))\n file_name=\"$(basename \"$file\")\"\n echo \"removing $file.\"\n # The per-match counter keeps matches that share a basename from\n # overwriting each other in the trash.\n mv -f \"$file\" \"$trash/${file_name}_${timestamp}_${rand}_${i}\"\n done < <(compgen -G \"$target_file\" 2>/dev/null)\n if [[ \"$matched\" == false ]]; then\n echo \"$target_file doesn't exist.\"\n fi\n return\n fi\n\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/MacVim.app\"\nsudo rm -rf 'gview'\nsudo rm -rf 'gvim'\nsudo rm -rf 'gvimdiff'\nsudo rm -rf 'gvimex'\nsudo rm -rf 'mview'\nsudo rm -rf 'mvim'\nsudo rm -rf 'mvimex'\nsudo rm -rf 'view'\nsudo rm -rf 'vim'\nsudo rm -rf 'vimdiff'\nsudo rm -rf 'vimex'\nsudo rm -rf 'vi'\nsudo rm -rf 'mvimdiff'\ntrash $LOGGED_IN_USER '~/Library/Caches/org.vim.MacVim'\ntrash $LOGGED_IN_USER '~/Library/Preferences/org.vim.MacVim.LSSharedFileList.plist'\ntrash $LOGGED_IN_USER '~/Library/Preferences/org.vim.MacVim.plist'\n",
|
||||
"bae18e19": "#!/bin/bash\n\n# variables\nAPPDIR=\"/Applications/\"\nTMPDIR=$(dirname \"$(realpath \"$INSTALLER_PATH\")\")\n# functions\n\nquit_and_track_application() {\n local bundle_id=\"$1\"\n local var_name=\"APP_WAS_RUNNING_$(echo \"$bundle_id\" | tr '.-' '__')\"\n local timeout_duration=10\n\n # check if the application is running\n local app_running\n app_running=$(osascript -e \"application id \\\"$bundle_id\\\" is running\" 2>/dev/null)\n if [[ \"$app_running\" != \"true\" ]]; then\n eval \"export $var_name=0\"\n return\n fi\n\n local console_user\n console_user=$(stat -f \"%Su\" /dev/console)\n if [[ -z \"$console_user\" || \"$console_user\" == \"root\" || \"$console_user\" == \"loginwindow\" ]]; then\n echo \"Not logged into a non-root GUI; skipping quitting application ID '$bundle_id'.\"\n eval \"export $var_name=0\"\n return\n fi\n\n # App was running, mark it for relaunch\n eval \"export $var_name=1\"\n echo \"Application '$bundle_id' was running; will relaunch after installation.\"\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\nrelaunch_application() {\n local bundle_id=\"$1\"\n local var_name=\"APP_WAS_RUNNING_$(echo \"$bundle_id\" | tr '.-' '__')\"\n local was_running\n\n # Check if the app was running before installation\n eval \"was_running=\\$$var_name\"\n if [[ \"$was_running\" != \"1\" ]]; then\n return\n fi\n\n local console_user\n console_user=$(stat -f \"%Su\" /dev/console)\n if [[ -z \"$console_user\" || \"$console_user\" == \"root\" || \"$console_user\" == \"loginwindow\" ]]; then\n echo \"Not logged into a non-root GUI; skipping relaunching application ID '$bundle_id'.\"\n return\n fi\n\n echo \"Relaunching application '$bundle_id'...\"\n\n # Launch the app in the logged-in user's GUI session. Apps launched by root\n # won't register with the user's Dock/GUI, so run 'open' as the console user.\n # Use 'launchctl asuser' to bootstrap into the console user's Mach namespace\n # and GUI session — 'sudo -u' alone doesn't do this, which can cause\n # LSOpenURLsWithRole() failures even when 'open' exits 0.\n local open_status=0\n if [[ $EUID -eq 0 ]]; then\n local console_uid\n console_uid=$(id -u \"$console_user\")\n /bin/launchctl asuser \"$console_uid\" sudo -u \"$console_user\" open -b \"$bundle_id\" >/dev/null 2>&1 || open_status=$?\n else\n open -b \"$bundle_id\" >/dev/null 2>&1 || open_status=$?\n fi\n\n if [[ $open_status -eq 0 ]]; then\n echo \"Application '$bundle_id' relaunched successfully.\"\n else\n echo \"Failed to relaunch application '$bundle_id'.\"\n fi\n}\n\n\n# extract contents\nMOUNT_POINT=$(mktemp -d /tmp/dmg_mount_XXXXXX)\nyes | hdiutil attach -plist -nobrowse -readonly -mountpoint \"$MOUNT_POINT\" \"$INSTALLER_PATH\" || exit 1\nsudo cp -R \"$MOUNT_POINT\"/* \"$TMPDIR\"\nhdiutil detach \"$MOUNT_POINT\" || true\n# copy to the applications folder\nquit_and_track_application 'org.vim.MacVim.LSSharedFileList'\nif [ -d \"$APPDIR/MacVim.app\" ]; then\n\tsudo mv \"$APPDIR/MacVim.app\" \"$TMPDIR/MacVim.app.bkp\"\nfi\nsudo cp -R \"$TMPDIR/MacVim.app\" \"$APPDIR\"\nrelaunch_application 'org.vim.MacVim.LSSharedFileList'\nmkdir -p .\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"gview\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"gvim\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"gvimdiff\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"gvimex\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"mview\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"mvim\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"mvimex\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"view\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"vim\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"vimdiff\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"vimex\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"vi\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"mvimdiff\"\n"
|
||||
"2fb79ce8": "#!/bin/bash\n\n# variables\nAPPDIR=\"/Applications/\"\nTMPDIR=$(dirname \"$(realpath \"$INSTALLER_PATH\")\")\n# functions\n\nquit_and_track_application() {\n local bundle_id=\"$1\"\n local var_name=\"APP_WAS_RUNNING_$(echo \"$bundle_id\" | tr '.-' '__')\"\n local timeout_duration=10\n\n # check if the application is running\n local app_running\n app_running=$(osascript -e \"application id \\\"$bundle_id\\\" is running\" 2>/dev/null)\n if [[ \"$app_running\" != \"true\" ]]; then\n eval \"export $var_name=0\"\n return\n fi\n\n local console_user\n console_user=$(stat -f \"%Su\" /dev/console)\n if [[ -z \"$console_user\" || \"$console_user\" == \"root\" || \"$console_user\" == \"loginwindow\" ]]; then\n echo \"Not logged into a non-root GUI; skipping quitting application ID '$bundle_id'.\"\n eval \"export $var_name=0\"\n return\n fi\n\n # App was running, mark it for relaunch\n eval \"export $var_name=1\"\n echo \"Application '$bundle_id' was running; will relaunch after installation.\"\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\nrelaunch_application() {\n local bundle_id=\"$1\"\n local var_name=\"APP_WAS_RUNNING_$(echo \"$bundle_id\" | tr '.-' '__')\"\n local was_running\n\n # Check if the app was running before installation\n eval \"was_running=\\$$var_name\"\n if [[ \"$was_running\" != \"1\" ]]; then\n return\n fi\n\n local console_user\n console_user=$(stat -f \"%Su\" /dev/console)\n if [[ -z \"$console_user\" || \"$console_user\" == \"root\" || \"$console_user\" == \"loginwindow\" ]]; then\n echo \"Not logged into a non-root GUI; skipping relaunching application ID '$bundle_id'.\"\n return\n fi\n\n echo \"Relaunching application '$bundle_id'...\"\n\n # Launch the app in the logged-in user's GUI session. Apps launched by root\n # won't register with the user's Dock/GUI, so run 'open' as the console user.\n # Use 'launchctl asuser' to bootstrap into the console user's Mach namespace\n # and GUI session — 'sudo -u' alone doesn't do this, which can cause\n # LSOpenURLsWithRole() failures even when 'open' exits 0.\n local open_status=0\n if [[ $EUID -eq 0 ]]; then\n local console_uid\n console_uid=$(id -u \"$console_user\")\n /bin/launchctl asuser \"$console_uid\" sudo -u \"$console_user\" open -b \"$bundle_id\" >/dev/null 2>&1 || open_status=$?\n else\n open -b \"$bundle_id\" >/dev/null 2>&1 || open_status=$?\n fi\n\n if [[ $open_status -eq 0 ]]; then\n echo \"Application '$bundle_id' relaunched successfully.\"\n else\n echo \"Failed to relaunch application '$bundle_id'.\"\n fi\n}\n\n\n# extract contents\nMOUNT_POINT=$(mktemp -d /tmp/dmg_mount_XXXXXX)\nyes | hdiutil attach -plist -nobrowse -readonly -mountpoint \"$MOUNT_POINT\" \"$INSTALLER_PATH\" || exit 1\nsudo cp -R \"$MOUNT_POINT\"/* \"$TMPDIR\"\nhdiutil detach \"$MOUNT_POINT\" || true\n# copy to the applications folder\nquit_and_track_application 'org.vim.MacVim'\nif [ -d \"$APPDIR/MacVim.app\" ]; then\n\tsudo mv \"$APPDIR/MacVim.app\" \"$TMPDIR/MacVim.app.bkp\"\nfi\nsudo cp -R \"$TMPDIR/MacVim.app\" \"$APPDIR\"\nrelaunch_application 'org.vim.MacVim'\nmkdir -p .\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"gview\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"gvim\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"gvimdiff\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"gvimex\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"mview\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"mvim\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"mvimex\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"view\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"vim\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"vimdiff\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"vimex\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"vi\"\n/bin/ln -h -f -s -- \"$APPDIR/MacVim.app/Contents/bin/mvim\" \"mvimdiff\"\n"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "3.0.29",
|
||||
"version": "3.0.33",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.brettterpstra.marked';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.brettterpstra.marked' AND version_compare(bundle_short_version, '3.0.29') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.brettterpstra.marked' AND version_compare(bundle_short_version, '3.0.33') < 0);"
|
||||
},
|
||||
"installer_url": "https://updates.markedapp.com/updates/Marked%203.0.29.zip",
|
||||
"installer_url": "https://updates.markedapp.com/updates/Marked%203.0.33.zip",
|
||||
"install_script_ref": "c6782863",
|
||||
"uninstall_script_ref": "9e4b9fca",
|
||||
"sha256": "f2b09b7e533610ae16ca6535e8b3c80ae5fd9a32105878739d222ccbacd25975",
|
||||
"sha256": "7ad81fad5118720414ad560629207155347e85fb1e8697da1e8a3fec089639a4",
|
||||
"default_categories": [
|
||||
"Productivity"
|
||||
]
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "5.0.571",
|
||||
"version": "5.0.627",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.melodics.Melodics';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.melodics.Melodics' AND version_compare(bundle_short_version, '5.0.571') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.melodics.Melodics' AND version_compare(bundle_short_version, '5.0.627') < 0);"
|
||||
},
|
||||
"installer_url": "https://web-cdn.melodics.com/download/8E9C750C-530F-4FF7-83AA-C1812C161F8B.zip",
|
||||
"installer_url": "https://web-cdn.melodics.com/download/AED19966-0D0E-4A4E-A29B-1C2D1688B662.zip",
|
||||
"install_script_ref": "3d315b05",
|
||||
"uninstall_script_ref": "4abaa93b",
|
||||
"sha256": "b16bb062575f8b1341eb8b569ab57db2e1363282cf144773f98995178d8ee7d9",
|
||||
"sha256": "01a933f648481338914bd5c2e6995a9468f86af2c248fc49e618cd42ee20674e",
|
||||
"default_categories": [
|
||||
"Productivity"
|
||||
]
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "1.16.1.20250109",
|
||||
"version": "1.17.0.20260601",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'org.eclipse.mat.ui.rcp.MemoryAnalyzer';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'org.eclipse.mat.ui.rcp.MemoryAnalyzer' AND version_compare(bundle_short_version, '1.16.1.20250109') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'org.eclipse.mat.ui.rcp.MemoryAnalyzer' AND version_compare(bundle_short_version, '1.17.0.20260601') < 0);"
|
||||
},
|
||||
"installer_url": "https://download.eclipse.org/mat/1.16.1/rcp/MemoryAnalyzer-1.16.1.20250109-macosx.cocoa.aarch64.dmg",
|
||||
"installer_url": "https://download.eclipse.org/mat/1.17.0/rcp/MemoryAnalyzer-1.17.0.20260601-macosx.cocoa.aarch64.dmg",
|
||||
"install_script_ref": "8dc2352c",
|
||||
"uninstall_script_ref": "a554797e",
|
||||
"sha256": "01ac5effe6479f013c32c2f8d75ed08e7ec0f848f5ce301b5fa47de7f34c2654",
|
||||
"sha256": "c89471ecc07b6d30d665151d5358bc7aa3a3a7d490702a812c742581197243e0",
|
||||
"default_categories": [
|
||||
"Productivity"
|
||||
]
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "1.10.1",
|
||||
"version": "1.10.2",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.mimestream.Mimestream';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.mimestream.Mimestream' AND version_compare(bundle_short_version, '1.10.1') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.mimestream.Mimestream' AND version_compare(bundle_short_version, '1.10.2') < 0);"
|
||||
},
|
||||
"installer_url": "https://download.mimestream.com/Mimestream_1.10.1.dmg",
|
||||
"installer_url": "https://download.mimestream.com/Mimestream_1.10.2.dmg",
|
||||
"install_script_ref": "ab7e9784",
|
||||
"uninstall_script_ref": "19608987",
|
||||
"sha256": "1483b8134a980d5c5ea7f6fe5ea1bdb3ff4c2b5223d989a44fc74a4c8b38fdce",
|
||||
"sha256": "b0656f3e4792dbb88d552c5efb00b4d99f4794e0f7ab684d74d693e7b029a850",
|
||||
"default_categories": [
|
||||
"Communication"
|
||||
]
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "4.7.2.260525085",
|
||||
"version": "4.7.3.260608135",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'org.musescore.MuseScore';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'org.musescore.MuseScore' AND version_compare(bundle_short_version, '4.7.2.260525085') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'org.musescore.MuseScore' AND version_compare(bundle_short_version, '4.7.3.260608135') < 0);"
|
||||
},
|
||||
"installer_url": "https://github.com/musescore/MuseScore/releases/download/v4.7.2/MuseScore-Studio-4.7.2.260525085.dmg",
|
||||
"installer_url": "https://github.com/musescore/MuseScore/releases/download/v4.7.3/MuseScore-Studio-4.7.3.260608135.dmg",
|
||||
"install_script_ref": "bfe0e8d6",
|
||||
"uninstall_script_ref": "608c93fa",
|
||||
"sha256": "87d06f8e02fddb4025f48f13391e87d8bbb4f11a870540e952bc93f390d57b0b",
|
||||
"sha256": "1e9749f9268714f5b62e1f7c31201540f2c6d18275f0760e0600a5c01c1aea85",
|
||||
"default_categories": [
|
||||
"Productivity"
|
||||
]
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "1.134.2",
|
||||
"version": "1.135.1",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.cron.electron';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.cron.electron' AND version_compare(bundle_short_version, '1.134.2') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.cron.electron' AND version_compare(bundle_short_version, '1.135.1') < 0);"
|
||||
},
|
||||
"installer_url": "https://calendar-desktop-release.notion-static.com/Notion%20Calendar-darwin-arm64-1.134.2.zip",
|
||||
"installer_url": "https://calendar-desktop-release.notion-static.com/Notion%20Calendar-darwin-arm64-1.135.1.zip",
|
||||
"install_script_ref": "d0f24b42",
|
||||
"uninstall_script_ref": "e01ed013",
|
||||
"sha256": "9cd5420f78c0222bfbad98c67f60b6ae9297af657d94d82c22a3cc8c4f86c189",
|
||||
"sha256": "d4e721754c1679542221f52e575c7e339b244ee4de6b59f965f800e1f49c47d5",
|
||||
"default_categories": [
|
||||
"Productivity"
|
||||
]
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "4.10.2",
|
||||
"version": "4.10.3",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.omnigroup.OmniPlan4';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.omnigroup.OmniPlan4' AND version_compare(bundle_short_version, '4.10.2') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.omnigroup.OmniPlan4' AND version_compare(bundle_short_version, '4.10.3') < 0);"
|
||||
},
|
||||
"installer_url": "https://downloads.omnigroup.com/software/macOS/12/OmniPlan-4.10.2.dmg",
|
||||
"installer_url": "https://downloads.omnigroup.com/software/macOS/12/OmniPlan-4.10.3.dmg",
|
||||
"install_script_ref": "30653066",
|
||||
"uninstall_script_ref": "fcbfe99a",
|
||||
"sha256": "c213f4c77ff6093e01259dc6c91e7990c27c011b56af055481d3bd2dd022499b",
|
||||
"sha256": "f1b09446978790b0bab8fe7993019f7bee54c2d1faebdc1a385a0794eca0e8d3",
|
||||
"default_categories": [
|
||||
"Productivity"
|
||||
]
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "16.14-1",
|
||||
"version": "16.14-2",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM programs WHERE name = 'PostgreSQL 16' AND publisher = 'PostgreSQL Global Development Group';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'PostgreSQL 16' AND publisher = 'PostgreSQL Global Development Group' AND version_compare(version, '16.14-1') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'PostgreSQL 16' AND publisher = 'PostgreSQL Global Development Group' AND version_compare(version, '16.14-2') < 0);"
|
||||
},
|
||||
"installer_url": "https://get.enterprisedb.com/postgresql/postgresql-16.14-1-windows-x64.exe",
|
||||
"installer_url": "https://get.enterprisedb.com/postgresql/postgresql-16.14-2-windows-x64.exe",
|
||||
"install_script_ref": "df91c112",
|
||||
"uninstall_script_ref": "4f8b3295",
|
||||
"sha256": "d389834df279a9b7ce4b4a030b6545fd0befb05385ff66932ac37454ad9b9312",
|
||||
"sha256": "6d3919bc23cfb45e79c6e391de8b689c32101f2c1b73377aa26e4ce593c0ef28",
|
||||
"default_categories": [
|
||||
"Developer tools"
|
||||
]
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "1.3.4566.62",
|
||||
"version": "1.3.4655.98",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM programs WHERE name LIKE 'Pritunl %' AND publisher = 'Pritunl';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name LIKE 'Pritunl %' AND publisher = 'Pritunl' AND version_compare(version, '1.3.4566.62') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name LIKE 'Pritunl %' AND publisher = 'Pritunl' AND version_compare(version, '1.3.4655.98') < 0);"
|
||||
},
|
||||
"installer_url": "https://github.com/pritunl/pritunl-client/releases/download/1.3.4566.62/Pritunl.exe",
|
||||
"installer_url": "https://github.com/pritunl/pritunl-client/releases/download/1.3.4655.98/Pritunl.exe",
|
||||
"install_script_ref": "83fd35ff",
|
||||
"uninstall_script_ref": "c81cc77c",
|
||||
"sha256": "55f5bdd909ea9a55641aab0c7b51a55f7f99f1df11cdad16b951b737cf56422f",
|
||||
"sha256": "86555e22045e5ddd2cbefca58a91ed5d2d6035e23b34e819c84f6e99985d77a7",
|
||||
"default_categories": [
|
||||
"Productivity"
|
||||
]
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "0.8.5006",
|
||||
"version": "0.8.5037",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'app.rive.editor';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'app.rive.editor' AND version_compare(bundle_short_version, '0.8.5006') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'app.rive.editor' AND version_compare(bundle_short_version, '0.8.5037') < 0);"
|
||||
},
|
||||
"installer_url": "https://releases.rive.app/macos/0.8.5006/Rive.dmg",
|
||||
"installer_url": "https://releases.rive.app/macos/0.8.5037/Rive.dmg",
|
||||
"install_script_ref": "2bbfee4e",
|
||||
"uninstall_script_ref": "8f862785",
|
||||
"sha256": "ce15c89adb7206f3f159cd177a37e18c295c76ed4c3c407c152c19352b52deb4",
|
||||
"sha256": "3361eacbf1624134d14a2263b2efd2d06be10b9134d24555703dc9dda51f3347",
|
||||
"default_categories": [
|
||||
"Productivity"
|
||||
]
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "8.0.1",
|
||||
"version": "8.0.2",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'net.tunnelblick.tunnelblick';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'net.tunnelblick.tunnelblick' AND version_compare(bundle_short_version, '8.0.1') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'net.tunnelblick.tunnelblick' AND version_compare(bundle_short_version, '8.0.2') < 0);"
|
||||
},
|
||||
"installer_url": "https://tunnelblick.net/iprelease/Tunnelblick_8.0.1_build_6301.dmg",
|
||||
"installer_url": "https://tunnelblick.net/iprelease/Tunnelblick_8.0.2_build_6302.dmg",
|
||||
"install_script_ref": "9739f1a1",
|
||||
"uninstall_script_ref": "0d9cfa2b",
|
||||
"sha256": "5357625ecaa01fb07e0ddffbca93623e1f62314e71132a9c2f35fcbb090a9adc",
|
||||
"sha256": "95901968ee899aa5b37622bf50eb567565e7f89b4c3132b5702e418060a6166f",
|
||||
"default_categories": [
|
||||
"Productivity"
|
||||
]
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "2026.120",
|
||||
"version": "2026.155",
|
||||
"queries": {
|
||||
"exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.twingate.macos';",
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.twingate.macos' AND version_compare(bundle_short_version, '2026.120') < 0);"
|
||||
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.twingate.macos' AND version_compare(bundle_short_version, '2026.155') < 0);"
|
||||
},
|
||||
"installer_url": "https://binaries.twingate.com/client/macos/2026.120.24748/Twingate.pkg",
|
||||
"installer_url": "https://binaries.twingate.com/client/macos/2026.155.25395/Twingate.pkg",
|
||||
"install_script_ref": "bc774d90",
|
||||
"uninstall_script_ref": "67b20b3b",
|
||||
"sha256": "586da34201d8dd4afb7e777efb4ce8c93b0a3afa34ab26782b6c608382594ee1",
|
||||
"sha256": "82b52b4a474ba8ffa026c28a5c47808bc56a0fa53b40ff10641c1289e1418846",
|
||||
"default_categories": [
|
||||
"Productivity"
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user