diff --git a/Logitech/Logi_Options.download.recipe.yaml b/Logitech/Logi_Options.download.recipe.yaml new file mode 100644 index 0000000..97a9404 --- /dev/null +++ b/Logitech/Logi_Options.download.recipe.yaml @@ -0,0 +1,37 @@ +Description: Downloads the latest version of Logi Options. +Identifier: com.github.smithjw.download.logi_options +MinimumVersion: '2.3' + +Input: + NAME: Logi Options + +Process: +- Processor: URLTextSearcher + Arguments: + re_pattern: https://download01.logi.com/web/ftp/pub/techsupport/options/Options_[0-9\.]*.zip + result_output_var_name: url + url: https://www.logitech.com/product/options + +- Processor: URLDownloader + Arguments: + filename: '%NAME%.zip' + +- Processor: EndOfCheckPhase + +- Processor: Unarchiver + Arguments: + archive_path: '%pathname%' + destination_path: '%RECIPE_CACHE_DIR%/unpack' + purge_destination: true + +- Processor: FileFinder + Arguments: + pattern: '%RECIPE_CACHE_DIR%/unpack/LogiMgr Installer*.app/Contents/Resources/LogiMgr.pkg' + +- Processor: CodeSignatureVerifier + Arguments: + expected_authority_names: + - 'Developer ID Installer: Logitech Inc. (QED4VVPZWA)' + - Developer ID Certification Authority + - Apple Root CA + input_path: '%found_filename%' diff --git a/Logitech/Logi_Options.jamf.recipe.yaml b/Logitech/Logi_Options.jamf.recipe.yaml new file mode 100644 index 0000000..b8e0fde --- /dev/null +++ b/Logitech/Logi_Options.jamf.recipe.yaml @@ -0,0 +1,46 @@ +Description: Downloads the latest version and makes a pkg. Then, uploads the package to the Jamf Pro Server and creates a Self Service Policy and Smart Group. +Identifier: com.github.smithjw.jamf.logi_options +ParentRecipe: com.github.smithjw.pkg.logi_options +MinimumVersion: '2.3' + +Input: + NAME: Logi Options + CATEGORY: Collaboration + GROUP_NAME: '%NAME%-update-smart' + GROUP_TEMPLATE: SmartGroup-update-smart-regex.xml + TESTING_GROUP_NAME: Testing + POLICY_CATEGORY: Testing + POLICY_TEMPLATE: Policy-install-latest.xml + POLICY_NAME: 'Install Latest %NAME%' + POLICY_RUN_COMMAND: 'chown -R "$(stat -f%Su /dev/console):staff" "/Applications/%NAME%.app" && echo "Corrected permissions for %NAME%."' + SELF_SERVICE_DISPLAY_NAME: 'Install Latest %NAME%' + SELF_SERVICE_DESCRIPTION: 'Logi Options is extremely easy-to-use yet it provides amazing features.' + SELF_SERVICE_ICON: '%NAME%.png' + SOFTWARE_TITLE: 'Logi_Options' + INSTALL_BUTTON_TEXT: 'Install' + REINSTALL_BUTTON_TEXT: 'Reinstall' + UPDATE_PREDICATE: 'pkg_uploaded == False' + +Process: + - Processor: com.github.grahampugh.jamf-upload.processors/JamfCategoryUploader + Arguments: + category_name: '%CATEGORY%' + + - Processor: com.github.grahampugh.jamf-upload.processors/JamfPackageUploader + Arguments: + pkg_category: '%CATEGORY%' + + - Processor: StopProcessingIf + Arguments: + predicate: '%UPDATE_PREDICATE%' + + - Processor: com.github.grahampugh.jamf-upload.processors/JamfComputerGroupUploader + Arguments: + computergroup_template: '%GROUP_TEMPLATE%' + computergroup_name: '%GROUP_NAME%' + + - Processor: com.github.grahampugh.jamf-upload.processors/JamfPolicyUploader + Arguments: + policy_template: '%POLICY_TEMPLATE%' + policy_name: '%POLICY_NAME%' + icon: '%SELF_SERVICE_ICON%' \ No newline at end of file diff --git a/Logitech/Logi_Options.pkg.recipe.yaml b/Logitech/Logi_Options.pkg.recipe.yaml new file mode 100644 index 0000000..b9c8371 --- /dev/null +++ b/Logitech/Logi_Options.pkg.recipe.yaml @@ -0,0 +1,32 @@ +Description: Downloads the latest version of Logi Options and creates a package. +Identifier: com.github.smithjw.pkg.logi_options +ParentRecipe: com.github.smithjw.downloads.logi_options +MinimumVersion: '2.3' + +Input: + NAME: Logi Options + SOFTWARE_TITLE: Logi_Options + +Process: +- Processor: FileFinder + Arguments: + pattern: '%RECIPE_CACHE_DIR%/unpack/LogiMgr Installer*.app/Contents/Info.plist' + +- Processor: Versioner + Arguments: + input_plist_path: '%found_filename%' + plist_version_key: CFBundleShortVersionString + +- Processor: FileFinder + Arguments: + pattern: '%RECIPE_CACHE_DIR%/unpack/LogiMgr Installer*.app/Contents/Resources/LogiMgr.pkg' + +- Processor: PkgCopier + Arguments: + pkg_path: '%RECIPE_CACHE_DIR%/%SOFTWARE_TITLE%-%version%.pkg' + source_pkg: '%found_filename%' + +- Processor: PathDeleter + Arguments: + path_list: + - '%RECIPE_CACHE_DIR%/unpack' \ No newline at end of file diff --git a/Logitech/Logi_Options.png b/Logitech/Logi_Options.png new file mode 100644 index 0000000..d8d0560 Binary files /dev/null and b/Logitech/Logi_Options.png differ