From 267eeadd02ca41097fa73d336eed23d9d9d40fd2 Mon Sep 17 00:00:00 2001 From: Elliot Jordan Date: Sat, 9 Nov 2024 13:02:15 -0800 Subject: [PATCH] Add new Dash recipes with support for multiple major versions --- Dash/Dash.download.recipe | 75 +++++++++++++++++++++++++++++++++++++++ Dash/Dash.munki.recipe | 65 +++++++++++++++++++++++++++++++++ Dash/Dash.pkg.recipe | 29 +++++++++++++++ 3 files changed, 169 insertions(+) create mode 100644 Dash/Dash.download.recipe create mode 100644 Dash/Dash.munki.recipe create mode 100644 Dash/Dash.pkg.recipe diff --git a/Dash/Dash.download.recipe b/Dash/Dash.download.recipe new file mode 100644 index 0000000..a130445 --- /dev/null +++ b/Dash/Dash.download.recipe @@ -0,0 +1,75 @@ + + + + + Description + Downloads the latest version of Dash specified by MAJOR_VERSION. + +Tested successfully with major versions 4, 5, 6, and 7 in November 2024. + Identifier + com.github.apizz.download.Dash + Input + + MAJOR_VERSION + 7 + NAME + Dash + + Process + + + Arguments + + filename + %NAME%.zip + url + https://newyork.kapeli.com/downloads/v%MAJOR_VERSION%/Dash.zip + + Processor + URLDownloader + + + Processor + EndOfCheckPhase + + + Arguments + + purge_destination + + + Processor + Unarchiver + + + Arguments + + input_path + %RECIPE_CACHE_DIR%/%NAME%/Dash.app + requirement + anchor apple generic and identifier "com.kapeli.dashdoc" and (certificate leaf[field.1.2.840.113635.100.6.1.9] /* exists */ or certificate 1[field.1.2.840.113635.100.6.2.6] /* exists */ and certificate leaf[field.1.2.840.113635.100.6.1.13] /* exists */ and certificate leaf[subject.OU] = JP58VMK957) + strict_verification + + + Processor + CodeSignatureVerifier + + + Arguments + + info_path + %RECIPE_CACHE_DIR%/%NAME%/Dash.app/Contents/Info.plist + plist_keys + + CFBundleShortVersionString + version + LSMinimumSystemVersion + min_os_version + + + Processor + PlistReader + + + + diff --git a/Dash/Dash.munki.recipe b/Dash/Dash.munki.recipe new file mode 100644 index 0000000..b0d1936 --- /dev/null +++ b/Dash/Dash.munki.recipe @@ -0,0 +1,65 @@ + + + + + Description + Downloads the latest version of Dash specified by MAJOR_VERSION and imports into Munki. + Identifier + com.github.apizz.munki.Dash + Input + + MUNKI_CATEGORY + Developer Tools + MUNKI_REPO_SUBDIR + apps/dash + NAME + Dash + pkginfo + + catalogs + + testing + + category + %MUNKI_CATEGORY% + description + Dash is an API Documentation Browser and Code Snippet Manager. Dash instantly searches offline documentation sets for 200+ APIs, 100+ cheat sheets and more. You can even generate your own docsets or request docsets to be included. + developer + Bogdan Popescu + display_name + Dash + name + %NAME% + unattended_install + + + + ParentRecipe + com.github.apizz.download.Dash + Process + + + Arguments + + dmg_path + %RECIPE_CACHE_DIR%/%NAME%-%version%.dmg + dmg_root + %RECIPE_CACHE_DIR%/%NAME%/Dash.app + + Processor + DmgCreator + + + Arguments + + pkg_path + %RECIPE_CACHE_DIR%/%NAME%-%version%.dmg + repo_subdirectory + %MUNKI_REPO_SUBDIR% + + Processor + MunkiImporter + + + + diff --git a/Dash/Dash.pkg.recipe b/Dash/Dash.pkg.recipe new file mode 100644 index 0000000..f5e54eb --- /dev/null +++ b/Dash/Dash.pkg.recipe @@ -0,0 +1,29 @@ + + + + + Description + Downloads the latest version of Dash specified by MAJOR_VERSION and creates a pkg. + Identifier + com.github.apizz.pkg.Dash + Input + + NAME + Dash + + ParentRecipe + com.github.apizz.download.Dash + Process + + + Arguments + + app_path + %RECIPE_CACHE_DIR%/%NAME%/Dash.app + + Processor + AppPkgCreator + + + +