This pull request adds support for managing the Yubico Authenticator
application on Windows. The changes introduce the necessary metadata,
installation and uninstallation scripts, and update the application
catalog to include this new platform-specific entry.
**Addition of Yubico Authenticator for Windows:**
* Added a new input file with metadata for the Windows version of Yubico
Authenticator, specifying details like package identifier, architecture,
and default categories in `yubico-authenticator.json`.
* Created an output file containing version information, installation
and uninstallation scripts, installer URL, SHA256 hash, and upgrade code
for Yubico Authenticator on Windows in
`yubico-authenticator/windows.json`.
* Updated the main application catalog (`apps.json`) to include a
Windows-specific entry for Yubico Authenticator, with appropriate slug
and description.
**Frontend icon update:**
* Updated the image data for the Yubico Authenticator icon in the
frontend component to reflect the correct or updated icon asset.
This pull request updates the configuration and output files for the
Evernote maintained app to simplify version management and improve
maintainability. The main changes involve switching to a "latest"
version tracking approach and marking the app as frozen.
**Version management updates:**
* Changed the tracked version in
`ee/maintained-apps/outputs/evernote/darwin.json` from a specific
version (`10.105.4`) to `"latest"`, and updated the `installer_url` to
always point to the latest Evernote DMG file. The `sha256` hash is now
set to `"no_check"` to accommodate the dynamic installer.
**Configuration changes:**
* Added `"frozen": true` to the Evernote app input configuration in
`ee/maintained-apps/inputs/homebrew/evernote.json` to indicate the app
is no longer actively updated in this system.
<!-- Add the related story/sub-task/bug number, like Resolves#123, or
remove if NA -->
**Related issue:** Resolves#39032
This pull request updates the installation process for the GitHub
Desktop application on macOS. The main improvement is switching the
extraction method in the install script from `unzip` to `ditto` with the
`--noqtn` flag, which prevents the app bundle from being quarantined
after installation. This change is reflected in both the input
configuration and the generated output files.
**Install script improvements:**
- The install script for GitHub Desktop (`github-desktop-install.sh`)
now uses `ditto -xk --noqtn` instead of `unzip` to extract the
application, ensuring the app is not marked as quarantined by macOS
after installation.
- The script logic and structure have been slightly refactored for
clarity, but the core install and relaunch logic remains the same.
**Configuration and reference updates:**
- The `install_script_path` property was added to the Homebrew input
JSON for GitHub Desktop, pointing to the new install script.
- The output configuration (`darwin.json`) updates the install script
reference to the new version and includes the updated script content.
[[1]](diffhunk://#diff-d9d687547de8380c36144e69b184a84cbfa749eae965cab3cb313e2ff88eff20L9-R9)
[[2]](diffhunk://#diff-d9d687547de8380c36144e69b184a84cbfa749eae965cab3cb313e2ff88eff20L18-R18)
**Related issue:** Resolves#38679
Introduces WhatsAppInstallerURL to override the installer URL and set
SHA256 to 'no_check' for WhatsApp on Darwin. Updates the function map to
apply both WhatsAppVersionShortener and WhatsAppInstallerURL for
WhatsApp manifests.
<!-- Add the related story/sub-task/bug number, like Resolves#123, or
remove if NA -->
**Related issue:** Resolves#38816
Changed the installer format for ExpressVPN from pkg to zip and added a
custom install script to handle extraction and installation. Updated the
version, installer URL, script reference, and SHA256 in the output
manifest to reflect the new release (12.1.0.12128).
Deleted all configuration, install/uninstall scripts, and output files
related to the Microsoft Company Portal app from maintained-apps. Also
removed its entry from the apps.json manifest.
`Microsoft.CompanyPortal` was removed from `winget` recently in favor of
the `msstore` version:
https://github.com/microsoft/winget-pkgs/pull/330295
Attempting to install the existing FMA in Fleet results in a certificate
error.
## Summary
Fixes the publisher name in the 1Password Windows Fleet-maintained app
query to match the actual Windows registry value.
## Issue
The generated query was using `AgileBits Inc.` (capital 'B') from the
winget manifest, but Windows registry shows the publisher as `Agilebits
Inc.` (lowercase 'b'). This caused a mismatch preventing Fleet from
properly matching the installed software with the Fleet-maintained app.
## Changes
- Added `program_publisher` override to `inputs/winget/1password.json`
with the correct publisher name
- Regenerated output manifest with corrected query
## Test plan
- [x] Verify the query matches actual Windows registry value on a test
host
- [x] Confirm Fleet can now properly match installed 1Password software
## Summary
Fixes the app name in the Slack Windows Fleet-maintained app query to
match the actual Windows registry value.
## Issue
The generated query was using `Slack` as the app name, but Windows
registry shows the app name as `Slack (Machine - MSI)`. This caused a
mismatch preventing Fleet from properly matching the installed software
with the Fleet-maintained app.
## Changes
- Updated `unique_identifier` in `inputs/winget/slack.json` from
`"Slack"` to `"Slack (Machine - MSI)"`
- Regenerated output manifest with corrected query
- Version updated to 4.47.69 (latest available)
## Test plan
- [x] Verify the query matches actual Windows registry value on a test
host
- [x] Confirm Fleet can now properly match installed Slack software
This pull request enhances the macOS app installation process by
improving how running applications are handled during install and
update, and also updates the metadata and scripts for Docker Desktop.
The main improvements are the introduction of quit/relaunch logic for
pkg-based FMAs, and the renaming and updating of Docker Desktop’s
identifiers and scripts.
**App install/relaunch improvements:**
* Added new shell functions `quit_and_track_application` and
`relaunch_application` to the generated install scripts. These functions
ensure that if an app (or pkg) is running before installation, it is
quit and then automatically relaunched after installation, preserving
user state. The logic tracks whether the app was running via an
environment variable.
[[1]](diffhunk://#diff-a9df2db484fcbb560d62c43f94c4bcc2d26dcf68066c9e7cc2bffad6f124ce97L22-R41)
[[2]](diffhunk://#diff-a9df2db484fcbb560d62c43f94c4bcc2d26dcf68066c9e7cc2bffad6f124ce97R53-R59)
[[3]](diffhunk://#diff-a9df2db484fcbb560d62c43f94c4bcc2d26dcf68066c9e7cc2bffad6f124ce97R72-R73)
[[4]](diffhunk://#diff-a9df2db484fcbb560d62c43f94c4bcc2d26dcf68066c9e7cc2bffad6f124ce97R571-R648)
* Removed the previous simpler `quit_application` logic from the install
script generation, as the new functions supersede it.
**Docker Desktop metadata and script updates:**
* Renamed the Docker Desktop input and updated its `slug` and
`unique_identifier` to match the new bundle identifier
(`com.electron.dockerdesktop`), reflecting the current packaging.
* Updated the output app metadata in `apps.json` to use the new slug and
unique identifier for Docker Desktop.
* Added a new output file for Docker Desktop
(`docker-desktop/darwin.json`) with the updated install and uninstall
scripts, including the new quit/relaunch logic and references.
This pull request adds support for Notepad++ as a maintained application
in the system. It includes metadata, installation and uninstallation
scripts, version tracking, and a custom icon for the frontend. The main
changes are grouped into backend app definition and scripting,
versioning/output updates, and frontend UI enhancements.
**Backend: Notepad++ App Definition and Scripting**
- Added a new app definition for Notepad++ in `winget` format, including
metadata and references to install/uninstall scripts (`notepad++.json`).
- Implemented PowerShell scripts for silent installation and
uninstallation of Notepad++ using NSIS-compatible flags
(`notepad++_install.ps1`, `notepad++_uninstall.ps1`).
[[1]](diffhunk://#diff-dbe7f508350f3d388cd03eba8739d31334cd4e8a20545dec83d40612cbb51190R1-R29)
[[2]](diffhunk://#diff-cda39039b54d874cec215f12e62ca7183f790fefe54d79affcb6f4965a305dbbR1-R99)
**Versioning and Outputs**
- Added Notepad++ entry to the main output apps registry (`apps.json`),
enabling it to be recognized as a supported app.
- Created a Notepad++ versioned output file for Windows, including
detection query, installer URL, SHA256, and script references.
**Frontend: UI Enhancements**
- Added a custom Notepad++ SVG icon component for use in the software
page UI (`Notepad++.tsx`).
- Registered the Notepad++ icon in the icon index and mapped it for
display with the app name.
[[1]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR8)
[[2]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR376)
Deleted Microsoft Teams Windows app definition and output files, and
removed its entry from the main apps.json. This cleans up legacy support
for the old Teams Windows package.
This pull request adds full support for managing the installation and
uninstallation of Spotify on Windows via winget in the maintained apps
system. It introduces new configuration and script files, updates output
manifests, and ensures that both install and uninstall processes are
handled silently and robustly.
**Spotify Windows app integration:**
* Added a new manifest `spotify.json` in
`ee/maintained-apps/inputs/winget` to define Spotify's winget package
details, including references to custom install and uninstall scripts.
* Updated `ee/maintained-apps/outputs/apps.json` to register the Spotify
Windows app, enabling it to be discovered and managed by the platform.
* Added a new output manifest
`ee/maintained-apps/outputs/spotify/windows.json` specifying the
installer URL, version, install/uninstall script references, and
detection query for Spotify.
**Installation and uninstallation scripting:**
* Introduced a PowerShell install script `spotify_install.ps1` that
performs a silent installation of Spotify, handling exit codes and
errors gracefully.
* Added a PowerShell uninstall script `spotify_uninstall.ps1` that
locates Spotify's uninstaller via the registry, kills running processes,
and executes the uninstall silently, preserving existing arguments and
handling errors.
This pull request adds support for managing OBS Studio on Windows using
Winget, including new install and uninstall scripts for automated
deployment and removal. The main changes are the introduction of a
metadata file for OBS Studio and robust PowerShell scripts to handle
silent installation and uninstallation.
**OBS Studio Winget Integration:**
* Added a new metadata file `obs.json` describing OBS Studio for Winget
management, including identifiers, script paths, and default categories.
**Installation Script:**
* Introduced `obs_install.ps1`, a PowerShell script that installs OBS
Studio silently using the `/S` flag, captures the installer exit code,
and handles errors gracefully.
**Uninstallation Script:**
* Added `obs_uninstall.ps1`, a PowerShell script that locates the OBS
Studio uninstaller via the Windows registry, ensures all running OBS
processes are stopped, parses the uninstall command, and performs a
silent uninstall (also with `/S`), including error handling and exit
code reporting.
This pull request adds support for the Windows version of Sourcetree
Enterprise to the maintained apps catalog. The changes introduce
metadata, installation, and uninstallation details for this app,
ensuring it can be managed and deployed via Fleet.
**Addition of Sourcetree Enterprise (Windows):**
* Added a new input definition for Sourcetree Enterprise in
`winget/sourcetree.json`, specifying package identifiers and installer
details.
* Updated `apps.json` to include Sourcetree Enterprise for the Windows
platform, with appropriate metadata and description.
* Created a new output file `sourcetree/windows.json` with version info,
install/uninstall PowerShell scripts, installer URL, SHA256 hash, and
upgrade code for proper management.
This pull request adds support for managing the Inkscape application on
Windows. It introduces new configuration files and updates existing
outputs to include Inkscape as a managed app, complete with installation
and uninstallation scripts.
**Addition of Inkscape for Windows:**
* Added a new input configuration for Inkscape in `winget`, specifying
installer details and default categories in `inkscape.json`.
* Created a new output file `inkscape/windows.json` with version
information, download URL, SHA256 hash, install/uninstall scripts, and
upgrade code for Inkscape 1.4.2.
**Updates to application listings:**
* Updated `apps.json` to include Inkscape for Windows as a managed app,
with its platform, slug, unique identifier, and description.
This pull request adds support for managing Steam as a maintained
application on both macOS (darwin) and Windows platforms. It introduces
new metadata, installation, and uninstallation scripts, and updates the
aggregated app catalog to include Steam for both platforms.
**Steam app integration:**
- Added metadata and configuration files for Steam on macOS and Windows,
including installation details, unique identifiers, and categorization.
[[1]](diffhunk://#diff-c281dce9b3fb0c07ee0240f023b10f04f90d714ede790faa62a0e6f140db35b2R1-R8)
[[2]](diffhunk://#diff-2f3d984248d056735d116afea075ebb59e8e209b4a35ecc35bc82c21f760ed7aR1-R12)
- Updated the main `apps.json` catalog to include Steam entries for both
platforms, complete with descriptions and platform-specific slugs.
**Installer and uninstaller scripts:**
- Added a PowerShell installation script for Windows that installs Steam
silently using the `/S` flag.
- Added a PowerShell uninstallation script for Windows that locates the
Steam uninstaller and removes it silently, handling both 32-bit and
64-bit registry locations.
- Added macOS shell scripts (referenced in the output) for installing
and uninstalling Steam, including logic to quit running processes and
clean up associated files.
**App version outputs:**
- Created output files for both `steam/darwin.json` and
`steam/windows.json`, specifying version information, detection queries,
installer URLs, script references, and default categories.
[[1]](diffhunk://#diff-12ddb40a8998c18e5806cefa53ded63d64144a101d2cab1dfbbe78093e8cddeaR1-R21)
[[2]](diffhunk://#diff-6a83a89e114cb2281eb5ee80b6f574a374304c1baa60b927c7e1096044814a55R1-R21)
This pull request updates the configuration for the Google Chrome
maintained app on Windows to bypass hash checking for the installer.
This change ensures that installations will proceed even if the
installer hash changes, which can help avoid issues with frequent
upstream updates.
Configuration changes for hash checking:
* Added `"ignore_hash": true` to the `winget/google-chrome.json` input
file to instruct the system to skip hash verification during
installation.
* Set `"sha256": "no_check"` in the `outputs/google-chrome/windows.json`
output file to explicitly indicate that the installer hash should not be
checked.
This pull request adds support for the CrashPlan backup and recovery
software to the maintained apps ecosystem for both macOS (Homebrew) and
Windows (Winget). It introduces new metadata, installation and
uninstallation scripts, and integrates CrashPlan into the application's
UI, including a dedicated icon.
**CrashPlan app support:**
- Added CrashPlan metadata for Homebrew (`crashplan.json`) and Winget
(`crashplan.json`), specifying identifiers, installer details, and
default categories.
[[1]](diffhunk://#diff-65666812266569e4f2198de5e97a2a0a2e02974e5b134dac13e9bd9fecc3109bR1-R8)
[[2]](diffhunk://#diff-c8f7deea2ce492ea0903ba3fcfdcf7a6df342b935c284dca8564f449f1247f39R1-R10)
- Included CrashPlan in the aggregated app listings (`apps.json`) for
both macOS and Windows platforms, with descriptions.
**Installer and uninstaller scripts:**
- Added versioned output and installation/uninstallation scripts for
CrashPlan on macOS (`crashplan/darwin.json`) and Windows
(`crashplan/windows.json`), including download URLs, SHA256 hashes, and
detection queries.
[[1]](diffhunk://#diff-13c8cfd39d6d7d8faabce6b6d7f6566275a4c7d09c37ca9cc9726e09c89cc60bR1-R21)
[[2]](diffhunk://#diff-5f7d9507b93b3c61d2035dd964d399e666e308be0cf46be8c358702c57b6927bR1-R22)
**UI integration:**
- Introduced a new CrashPlan SVG icon component (`CrashPlan.tsx`) and
mapped it in the software icon index for use in the UI.
[[1]](diffhunk://#diff-508f123066743b5b4f4de19a92f3aa6c1055e8cda2a5a9e8f57c99aed29df681R1-R14)
[[2]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR7)
[[3]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR282)
This pull request adds support for managing 7-Zip as a maintained
Windows application. The changes include configuration for installation
and uninstallation, workflow updates to handle 7-Zip specifically in CI,
and a new icon for the frontend. These updates ensure that 7-Zip can be
detected, installed, uninstalled, and visually represented in the
software management system.
**Windows workflow and detection updates:**
- Updated `.github/workflows/test-fma-windows-pr-only.yml` to detect
changes related to 7-Zip, set a `has_7zip` output variable, and add a
step to remove pre-installed 7-Zip versions before proceeding with
further app verification. This prevents conflicts with pre-existing
installations during CI runs.
[[1]](diffhunk://#diff-51641fd1d2cc19348b81fd8310b62ad270ca5082ceddff2d49064e78f126a1eaR91)
[[2]](diffhunk://#diff-51641fd1d2cc19348b81fd8310b62ad270ca5082ceddff2d49064e78f126a1eaR102)
[[3]](diffhunk://#diff-51641fd1d2cc19348b81fd8310b62ad270ca5082ceddff2d49064e78f126a1eaR117-R124)
[[4]](diffhunk://#diff-51641fd1d2cc19348b81fd8310b62ad270ca5082ceddff2d49064e78f126a1eaR164-R227)
**7-Zip application configuration:**
- Added `ee/maintained-apps/inputs/winget/7-zip.json` to define 7-Zip as
a maintained app with metadata such as slug, package identifier,
installer type, and categories.
- Added `ee/maintained-apps/outputs/7-zip/windows.json` with version
info, installation and uninstallation scripts, SHA256, and upgrade code
for 7-Zip, enabling automated install/uninstall flows.
- Updated `ee/maintained-apps/outputs/apps.json` to include 7-Zip in the
list of available apps, with a description and unique identifier for
display and selection.
**Frontend icon support:**
- Added a new React SVG icon component for 7-Zip at
`frontend/pages/SoftwarePage/components/icons/7Zip.tsx`.
- Registered the 7-Zip icon in the icon index and mapped it in
`SOFTWARE_NAME_TO_ICON_MAP` to display the icon for 7-Zip in the UI.
[[1]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR7)
[[2]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR224)
This pull request adds support for two new macOS applications, Calibre
and Dash, to the maintained apps system. The changes include the
necessary metadata, installation and uninstallation scripts, and icon
assets, as well as updates to the main app listing.
**New Application Support**
* Added input metadata for Calibre in `homebrew/calibre.json`, including
identifiers, installer format, and categories.
* Added input metadata for Dash in `homebrew/dash.json`, including
identifiers, installer format, and categories.
**App Catalog Updates**
* Updated `outputs/apps.json` to include Calibre with a description and
identifiers.
* Updated `outputs/apps.json` to include Dash with a description and
identifiers.
**Installer and Uninstaller Scripts**
* Added versioned output and install/uninstall scripts for Calibre in
`outputs/calibre/darwin.json`.
* Added versioned output and install/uninstall scripts for Dash in
`outputs/dash/darwin.json`.
**Frontend Icon Assets**
* Added a new React SVG icon component for Calibre in `Calibre.tsx`.
This pull request adds support for the AppCleaner application to the
maintained apps system, including its metadata, installation, and
uninstallation scripts. The changes define how AppCleaner should be
recognized, installed, and uninstalled on macOS, and make it available
in the maintained apps catalog.
**AppCleaner integration:**
* Added a new input definition for AppCleaner in `appcleaner.json`,
specifying its metadata such as name, unique identifier, installer
format, and default category.
* Added a new output definition for AppCleaner in
`appcleaner/darwin.json`, including version information, SQL query for
existence, installer URL, SHA256 checksum, and detailed install and
uninstall scripts.
* Updated `apps.json` to include AppCleaner in the list of maintained
applications, making it available for discovery and installation via the
maintained apps system.
This pull request adds support for managing Adobe DNG Converter on
macOS. The main changes include introducing metadata and
installation/uninstallation scripts for this application, updating the
app registry, and improving version detection logic to handle Adobe’s
unique versioning format.
**Support for Adobe DNG Converter:**
* Added a new input definition for Adobe DNG Converter in
`homebrew/adobe-dng-converter.json`, specifying its identifiers,
installer format, and default category.
* Generated an output manifest in
`outputs/adobe-dng-converter/darwin.json` with version info, download
URL, SHA256, and detailed install/uninstall scripts for managing the app
lifecycle.
* Registered Adobe DNG Converter in the main `apps.json` registry,
including a description, unique identifier, and platform.
**Improvements to version detection:**
* Updated the `appExists` function in `darwin.go` to correctly detect
Adobe DNG Converter even when the installed version string includes a
build number in parentheses, improving reliability of version checks.
### Summary
This PR adds support for `.zip` files as Windows Fleet Managed Apps
(FMAs). Zip files on Windows are treated similarly to `.exe` files and
require custom install/uninstall scripts, typically used for AppX/MSIX
packages that are distributed as zip archives.
### Changes
**Backend:**
- Added `.zip` as a supported Windows package type in
`SoftwareInstallerPlatformFromExtension`
- Updated validation to require install/uninstall scripts for zip files
(similar to `.exe` files)
- Added `addZipPackageMetadata` function to handle zip file metadata
extraction
- Updated error messages to include `.zip` in the list of supported file
types
- Enhanced `appExists` validation to detect provisioned AppX packages
(packages that are provisioned for all users but don't show up in the
programs table until a user logs in)
- Added version normalization logic to handle version string differences
(e.g., "11.2.1495.0" vs "11.2.1495")
- Updated winget ingester to recognize zip files and default to user
scope for MSIX/zip installers
**Frontend:**
- Added `.zip` to `windowsPackageTypes` in `package_type.ts`
- Updated `PackageAdvancedOptions` component to require
install/uninstall scripts for zip files
- Added validation rules for zip files in `PackageForm/helpers.tsx`
- Updated help text and tooltips to indicate script requirements for zip
packages
- Updated `software_install_scripts.ts` to include zip in default script
handling
**Maintained Apps:**
- Added Microsoft Company Portal as a maintained app example using zip
files
- Created install/uninstall PowerShell scripts that:
- Extract zip files containing AppX packages
- Provision packages for all future users (works in headless
environments)
- Install packages for the current user
- Handle both provisioned and installed package detection
**Tests:**
- Updated integration tests to include `.zip` in supported file type
error messages
- Updated unit tests for `SoftwareInstallerPlatformFromExtension` and
`SofwareInstallerSourceFromExtensionAndName`
### Use Case
This enables distribution of Windows AppX/MSIX packages that are
packaged as zip files (common for Microsoft Store apps like Company
Portal). The implementation handles both provisioned packages (for all
users) and user-installed packages, ensuring detection works in both
headless and interactive environments.
### Testing
- Updated existing tests to include zip file support
- Added Microsoft Company Portal as a maintained app example with full
install/uninstall scripts
---
**Note:** This PR follows the same pattern as `.exe` file support,
requiring custom install/uninstall scripts since zip files can contain
various content types that need custom handling.
This pull request adds support for the Airtame application on both macOS
and Windows platforms. It introduces metadata, installation and
uninstallation scripts, and icon support for Airtame, making it
available in the maintained apps catalog and ensuring it displays
correctly in the frontend.
**Airtame Application Support:**
- Added input metadata for Airtame for both Homebrew (macOS) and Winget
(Windows) in `airtame.json` files, specifying installer formats,
identifiers, and categories.
[[1]](diffhunk://#diff-448b5795b8fb5f9487415e1d64f1fca6b57fa434b4d78ce452f732a9ffda479eR1-R8)
[[2]](diffhunk://#diff-146d9ec4238b454a4f86989b068060760f2d70523aed34b68f935d493b3f23dbR1-R10)
- Added output definitions for Airtame in `darwin.json` and
`windows.json`, including version info, installation/uninstallation
scripts, installer URLs, SHA256 hashes, and verification queries.
[[1]](diffhunk://#diff-0c571f0352dfef93766b985359e9f1ab34ed36284fd701429edc5b733be5aef6R1-R21)
[[2]](diffhunk://#diff-23e19ef30503f3c50c25a06132b64d193ecfd70698e2a4ae433dbde55148b6f0R1-R22)
- Updated `apps.json` to include Airtame entries for both macOS and
Windows, with appropriate descriptions and unique identifiers.
**Frontend/Icon Integration:**
- Added a new React icon component for Airtame in `Airtame.tsx`, using a
base64-encoded image.
- Registered the Airtame icon in the icon index and mapped it in
`SOFTWARE_NAME_TO_ICON_MAP` for proper display in the software catalog.
[[1]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR12)
[[2]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR233)
This pull request adds support for the Aircall application on Windows to
the maintained apps ecosystem. It introduces the necessary input and
output configuration files, as well as versioning and
installation/uninstallation scripts. Additionally, it updates the main
app listing to include Aircall for Windows.
**New Aircall Windows app support:**
* Added a new input definition for Aircall in `winget/aircall.json`,
specifying metadata such as package identifier, installer type, and
architecture.
* Created a new output file `aircall/windows.json` with version details,
installation and uninstallation scripts, download URL, and SHA256
checksum for Aircall version 3.1.66.
* Updated `apps.json` to list Aircall for Windows as a maintained app,
including its name, slug, platform, and unique identifier.
This pull request adds support for the "8x8 Work" application on Windows
to the maintained apps system. The changes introduce input and output
definitions for the app, including installation and uninstallation
scripts, version metadata, and an entry in the global apps listing.
**Addition of 8x8 Work (Windows) application:**
* Added a new input definition for `8x8 Work` in `winget` format,
specifying package identifiers, architecture, installer type, and
default categories.
* Created an output file for `8x8 Work` on Windows, including version
metadata, installer and uninstaller scripts, SHA256 hash, upgrade code,
and detection SQL query.
* Added `8x8 Work` (Windows) entry to the global `apps.json` file,
including description and unique identifier.
This pull request adds support for managing the installation and
uninstallation of 010 Editor (version 16.0.2, 64-bit) on Windows via
Winget in the maintained apps system. It introduces metadata,
install/uninstall scripts, and output definitions for this application,
enabling automated deployment and inventory.
**010 Editor integration:**
* Added a new input definition for 010 Editor in
`winget/010-editor.json`, specifying metadata, installer details, and
script paths.
* Implemented PowerShell scripts for silent installation
(`010-editor_install.ps1`) and uninstallation
(`010-editor_uninstall.ps1`) tailored for Inno Setup-based installers.
[[1]](diffhunk://#diff-4d1e3101294ff5dcd9414cbbd5a470a1bd2942f5d4e8db5c25c9fe4098b815b3R1-R28)
[[2]](diffhunk://#diff-2ec71055559f078b69fc8cd53d483fc7738f0dbe7af384dda9587ecd76aeed23R1-R91)
**Output and inventory updates:**
* Generated a new output file `windows.json` for 010 Editor, including
version info, installation checks, installer URL, script references, and
SHA256 hash.
* Updated the main `apps.json` output to include 010 Editor as a Windows
application, ensuring it appears in the maintained apps inventory.
This pull request adds support for managing the installation and
uninstallation of Postman on Windows via Winget, and simplifies the
associated PowerShell scripts. The changes introduce a new Postman app
definition, refactor the install and uninstall scripts to remove
unnecessary complexity, and update the Postman icon in the frontend to
use a PNG image.
**Postman app management support:**
* Added a new `postman.json` manifest in
`ee/maintained-apps/inputs/winget/` to define Postman as a managed
application, including install/uninstall script paths and package
metadata.
**PowerShell script simplification:**
* Refactored `postman_install.ps1` to remove scheduled task logic and
run the installer directly with the `--silent` flag, improving
reliability and maintainability.
* Simplified `postman_uninstall.ps1` to directly search for and execute
the uninstall command for Postman, supporting silent uninstallation and
removing scheduled task and logging logic.
**Frontend update:**
* Updated the `Postman.tsx` icon component to use a PNG image instead of
inline SVG paths, ensuring consistency with other icon assets.
This pull request adds support for the Notion app on Windows to the
maintained apps system. It introduces new metadata, installation and
uninstallation scripts, and updates the relevant app listings and icon.
The most important changes are grouped below:
**Notion for Windows support:**
* Added a new input metadata file for Notion on Windows at
`ee/maintained-apps/inputs/winget/notion.json`, specifying installer
details, categories, and script paths.
* Added a new output app listing for Notion on Windows in
`ee/maintained-apps/outputs/apps.json` and created a dedicated manifest
at `ee/maintained-apps/outputs/notion/windows.json` with version,
installer, uninstall script references, and detection query.
[[1]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R977-R983)
[[2]](diffhunk://#diff-1dfe0659e83ec343ffcf27344c2dd5b257cf0bcc11434614acdc1820badda243R1-R21)
* Implemented install and uninstall PowerShell scripts for Notion on
Windows, referenced by the new manifest.
**Uninstallation improvements:**
* Updated the Notion uninstall script to ensure the `/S` flag is
included for silent uninstalls with NSIS installers, improving
reliability of unattended uninstalls.
[[1]](diffhunk://#diff-fe66fb3f5c34301a1a22112997ca0aa38ec0ccd9dc97db4cf2a845a8a8db6df1R36-R45)
[[2]](diffhunk://#diff-1dfe0659e83ec343ffcf27344c2dd5b257cf0bcc11434614acdc1820badda243R1-R21)
**UI/Icon update:**
* Replaced the SVG icon for Notion in the frontend with a PNG-based
image for improved appearance or compatibility.
**Other:**
* Clarified the description for Notion Calendar in the app listings for
better user understanding.
This pull request adds support for Microsoft Edge on Windows to the
maintained apps system and introduces a new icon for Microsoft Edge in
the frontend. The changes ensure that Microsoft Edge for Windows is
correctly represented in both backend data and the frontend UI.
**Microsoft Edge for Windows support:**
* Added a new input definition for Microsoft Edge in `winget` format,
specifying installation details and categories.
* Generated an output entry for Microsoft Edge on Windows in
`apps.json`, including its platform, slug, and description.
* Added a detailed output file for Microsoft Edge on Windows, including
version info, install/uninstall scripts, and metadata.
**Frontend icon integration:**
* Added a new React component `MicrosoftEdge.tsx` to provide an SVG icon
for Microsoft Edge.
* Registered the new icon in the icon mapping so it appears for Edge in
the software page UI.
[[1]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR121)
[[2]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR286)
This pull request adds support for several new macOS applications to the
maintained apps system. It introduces metadata and installer information
for each app, including their categories, installation formats, and
descriptions. The changes affect both the input definitions and the
generated output listings, ensuring these apps are now recognized and
manageable within the platform.
**New application support:**
* Added metadata and installation details for the following apps in the
`ee/maintained-apps/inputs/homebrew` directory: FileMaker Pro, NordPass,
OBS, Obsidian, OrbStack, pgAdmin4, RapidAPI, Royal TSX, Shottr,
Splashtop Business, Splashtop Streamer, Stats, Sublime Merge, Surfshark,
and Suspicious Package.
[[1]](diffhunk://#diff-4110aafedd820ab411c58a2d1d6aa0dd6280e5f9462784933e351ac50e707180R1-R8)
[[2]](diffhunk://#diff-58c420dc373e687e3fa2c3203279266db3b53ddbf8f785bd0fe81c302b391b03R1-R8)
[[3]](diffhunk://#diff-a3be001759cc20b5b2beb576815bc7bab7d4a96e633462885b549d9ae16d81d7R1-R8)
[[4]](diffhunk://#diff-3719ec4aede4178b68f34f4873badcf791b475f2d96dc98cb46072d22104aa7bR1-R8)
[[5]](diffhunk://#diff-ba91b6976eae0e27e6f7ab7a169c493943011be440ad98028468c826e47b1d26R1-R8)
[[6]](diffhunk://#diff-8f07dada0c342e599ff8b3fe14a3db9d35af2823edf15974b1f7e944988a8b3eR1-R8)
[[7]](diffhunk://#diff-3dfe9b210eaf4845c66a78bac05ce92fa1b49f6e88ed58507571efcf38100e11R1-R8)
[[8]](diffhunk://#diff-cd74cef2783aac3981106bf37145df1f7dddc6764f525ba796e49a14088b8f7eR1-R8)
[[9]](diffhunk://#diff-991e41b0299e0199ef9935e25962e96fb6869619f91385f42559658cb354e15cR1-R8)
[[10]](diffhunk://#diff-c80d444ade7092005119d3f9a49903fb9b9f680e1c8d4d2c119f7b25db69531bR1-R8)
[[11]](diffhunk://#diff-8645def0d5c629d7814deb463500b0f54422b8d25f9ff8d9ecf26e908d9e5bf5R1-R8)
[[12]](diffhunk://#diff-c655bdf41c305040cf0b1694fd40a3fac6d63e9b4e0a22dbb0fa0def502c32aaR1-R8)
[[13]](diffhunk://#diff-b2549d65cd0dd12e9554dc82123b5935eff0673a76c631064f4a30eb088698dbR1-R8)
[[14]](diffhunk://#diff-858e6b00e0f8ae199231d5cb1fb40f23a8e554fe8e3b3f5e0d097846e98bd4f4R1-R8)
[[15]](diffhunk://#diff-a1ab3a19c9c8fd3a677e28bdd41f39fdc085b39935a85b44984dd3d886870cadR1-R8)
**Output listings update:**
* Updated `ee/maintained-apps/outputs/apps.json` to include the new apps
with their names, slugs, platforms, unique identifiers, and
descriptions, making them available for discovery and management.
[[1]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R564-R570)
[[2]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R942-R948)
[[3]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R984-R997)
[[4]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R1026-R1032)
[[5]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R1047-R1053)
[[6]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R1131-R1137)
[[7]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R1159-R1165)
[[8]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R1187-R1193)
[[9]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R1236-R1270)
[[10]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R1285-R1298)
**Installer and uninstaller scripts:**
* Added detailed versioning and installation/uninstallation scripts for
FileMaker Pro in `ee/maintained-apps/outputs/filemaker-pro/darwin.json`,
including script references and SHA256 checksum for integrity
verification.
This pull request adds support for several new macOS applications to the
maintained apps system. It introduces new input definitions, output
metadata, and installation/uninstallation scripts for each app, enabling
automated management and categorization. The changes primarily focus on
expanding the catalog with productivity, developer, and communication
tools.
**New App Integrations:**
* Added input definitions and output metadata for the following apps:
- Inkscape (vector graphics editor)
[[1]](diffhunk://#diff-7ce5d431eb69c5546afaa12ada343d8584e835e855ecebf4adc13801ab3eab78R1-R8)
[[2]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R697-R703)
[[3]](diffhunk://#diff-00054bf967e9164fbd87bfc1518f6332cbee50e85936c7e9617a0bfefe405fa4R1-R21)
- Jabra Direct (headset management)
[[1]](diffhunk://#diff-78c52106d0314ec88decc1b6e6490ea8519a45170df466789414c8eac90825f9R1-R8)
[[2]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R739-R745)
[[3]](diffhunk://#diff-cd97d46bd199c6376c16fe81366404c1a3010d3f75b8b8b9a611d354a9edc2cbR1-R21)
- Keeper Password Manager (password manager)
[[1]](diffhunk://#diff-a973ebde05953000c62f2492b17c079a9e552fd3bbab3b678ee2aa0757dafeadR1-R8)
[[2]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R767-R787)
[[3]](diffhunk://#diff-5b88b8712d6bf670a34dd05a496fa7a036b9f53dda262bea1f57deb9a10f6f6eR1-R21)
- Keka (file archiver)
[[1]](diffhunk://#diff-2c462b137233fc73d72dd6f42b4bc07e58d6396e6b178741d496536822f4e732R1-R8)
[[2]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R767-R787)
- Lens (Kubernetes IDE)
[[1]](diffhunk://#diff-51e6db269aa8b8fc295f8573eb1582adbb28bcf1f1fd040fe92f8e0e95c816b2R1-R8)
[[2]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R767-R787)
- Maccy (clipboard manager)
[[1]](diffhunk://#diff-a497d9aa8763fd1b331ce6d454994c1fc955e9fec54d996dae5134c2c64d5e2cR1-R8)
[[2]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R830-R843)
- Mattermost (open-source chat)
[[1]](diffhunk://#diff-7286f40f757bf5322974f664bb55fd6ef89ca486aacba5e524e3e4a7055f24bcR1-R8)
[[2]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R830-R843)
- MongoDB Compass (database GUI)
[[1]](diffhunk://#diff-c03bf76b1aa1a8a9a857a235e2eaa46a35c5d0a8b8331d5990251eadf1855568R1-R8)
[[2]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R921-R927)
**Installer and Uninstaller Scripts:**
* Added custom install and uninstall shell scripts for Inkscape, Jabra
Direct, and Keeper Password Manager to handle application lifecycle
tasks, including quitting running apps and cleaning up user data.
[[1]](diffhunk://#diff-00054bf967e9164fbd87bfc1518f6332cbee50e85936c7e9617a0bfefe405fa4R1-R21)
[[2]](diffhunk://#diff-cd97d46bd199c6376c16fe81366404c1a3010d3f75b8b8b9a611d354a9edc2cbR1-R21)
[[3]](diffhunk://#diff-5b88b8712d6bf670a34dd05a496fa7a036b9f53dda262bea1f57deb9a10f6f6eR1-R21)
**App Categorization:**
* Assigned appropriate default categories (e.g., Productivity, Developer
tools, Communication) to each new app for better organization and
filtering in the catalog.
[[1]](diffhunk://#diff-7ce5d431eb69c5546afaa12ada343d8584e835e855ecebf4adc13801ab3eab78R1-R8)
[[2]](diffhunk://#diff-78c52106d0314ec88decc1b6e6490ea8519a45170df466789414c8eac90825f9R1-R8)
[[3]](diffhunk://#diff-a973ebde05953000c62f2492b17c079a9e552fd3bbab3b678ee2aa0757dafeadR1-R8)
[[4]](diffhunk://#diff-2c462b137233fc73d72dd6f42b4bc07e58d6396e6b178741d496536822f4e732R1-R8)
[[5]](diffhunk://#diff-51e6db269aa8b8fc295f8573eb1582adbb28bcf1f1fd040fe92f8e0e95c816b2R1-R8)
[[6]](diffhunk://#diff-a497d9aa8763fd1b331ce6d454994c1fc955e9fec54d996dae5134c2c64d5e2cR1-R8)
[[7]](diffhunk://#diff-7286f40f757bf5322974f664bb55fd6ef89ca486aacba5e524e3e4a7055f24bcR1-R8)
[[8]](diffhunk://#diff-c03bf76b1aa1a8a9a857a235e2eaa46a35c5d0a8b8331d5990251eadf1855568R1-R8)
**Metadata and Version Tracking:**
* Introduced detailed metadata and version tracking for each app,
including installer URLs, bundle identifiers, SHA256 checksums, and SQL
queries for existence checks.
[[1]](diffhunk://#diff-00054bf967e9164fbd87bfc1518f6332cbee50e85936c7e9617a0bfefe405fa4R1-R21)
[[2]](diffhunk://#diff-cd97d46bd199c6376c16fe81366404c1a3010d3f75b8b8b9a611d354a9edc2cbR1-R21)
[[3]](diffhunk://#diff-5b88b8712d6bf670a34dd05a496fa7a036b9f53dda262bea1f57deb9a10f6f6eR1-R21)
**Catalog Expansion:**
* Updated the main `apps.json` output to include all new apps with
descriptions and platform information, ensuring visibility in the
maintained apps catalog.
[[1]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R697-R703)
[[2]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R739-R745)
[[3]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R767-R787)
[[4]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R830-R843)
[[5]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R921-R927)
This pull request adds support for several new macOS applications to the
maintained apps system, including their metadata, installation, and
uninstallation scripts. The changes introduce new JSON definitions for
each app, update the main app index, and provide versioned
install/uninstall scripts for deployment automation.
**New app support and integration:**
* Added definitions and metadata for the following applications in the
`inputs/homebrew` directory: UTM, VirtualBox, Viscosity, Wacom Tablet,
Windsurf, and Zeplin. These include details like bundle identifiers,
installer formats, and default categories.
[[1]](diffhunk://#diff-f505c4894da8dff95d8a1fe17b97bde45e8ca3a7fbc7f3d59b4503e438aa8c14R1-R8)
[[2]](diffhunk://#diff-6d3c5db09812e5401dff9317e33d579d9b0cdf2f2cabfc5aea987349b571e02bR1-R8)
[[3]](diffhunk://#diff-12a8fefe26e3a6350dd9530e4c0cf6704159f3752a5000599ed50a18374284a7R1-R8)
[[4]](diffhunk://#diff-8d59fcfade669dc36f4b1d1c3c6151bea12a6546d0f7bc8397bdff11f0c0a732R1-R8)
[[5]](diffhunk://#diff-e231f655a5832c59d4edb934a76f6588626558e3a52adaaef22c2c0e455be342R1-R8)
[[6]](diffhunk://#diff-5b11aeb43017cc56c7f2b89a7de86cf0fbd7e822c43f5652d83684fd33741543R1-R8)
* Updated `outputs/apps.json` to register the new applications,
including descriptions and platform information for UTM, VirtualBox,
Viscosity, Wacom Tablet, Windsurf, and Zeplin.
[[1]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R1257-R1277)
[[2]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R1313-R1319)
[[3]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R1355-R1361)
[[4]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R1404-R1410)
**Installer and uninstaller automation:**
* Added versioned install and uninstall scripts for UTM
(`outputs/utm/darwin.json`), VirtualBox
(`outputs/virtualbox/darwin.json`), and Viscosity
(`outputs/viscosity/darwin.json`). These scripts automate mounting disk
images, copying apps, handling package receipts, and cleaning up
user/system files.
[[1]](diffhunk://#diff-6aaef2cade302a02388ce54d43a7a7b2ce0fba667863128e8a9602ad52e42292R1-R21)
[[2]](diffhunk://#diff-6cb1303c0b58d6a02c96133d007d426ace0de8df1f17fde17417c8c56c8c5b0aR1-R21)
[[3]](diffhunk://#diff-8005993d76074a6c94d4e7f8c0bd0c3c2d6b3a599bee394fee47035a84a59dc3R1-R21)
These updates streamline the deployment and management of these macOS
applications within the maintained apps ecosystem.
This pull request adds support for several new macOS applications to the
maintained apps catalog. It introduces metadata, installation, and
uninstallation scripts for each app, and updates the main `apps.json`
output to include these new entries. The changes are grouped into new
app additions and corresponding installer/uninstaller script
implementations.
**New macOS app additions:**
* Added metadata and catalog entries for the following applications:
Egnyte, Elgato Control Center, Elgato Stream Deck, ExpressVPN, Fork,
Front, Ghostty, GIMP, and Hyper. Each app now has a dedicated input JSON
file and an entry in `apps.json` with platform, identifier, and
description.
[[1]](diffhunk://#diff-23ba1125ec0779e89bd0e70b112583b332e841bc14a4920419e0c116f6718aecR1-R8)
[[2]](diffhunk://#diff-c0489d22fc52f53b7a44c4fb6b16c25eb8e22d53772c62bad36c3a874138cc65R1-R8)
[[3]](diffhunk://#diff-96bdb6025cdcaefdb9c689401cfd102ed248ce0360a178da5e208b570967d459R1-R8)
[[4]](diffhunk://#diff-a5441bc7fd33cb26cc4bc787bfec51f8a0384f7270cd7e97958c3a814e71fa7cR1-R8)
[[5]](diffhunk://#diff-82a6115c15a63073e97e105400f396f3b6a6181e787dde23c5b038c1018c4b9eR1-R8)
[[6]](diffhunk://#diff-ddee5c0aabd18f5cbdb8d3cab2a9f069e895401e9dd5f94db2b06af940f286f8R1-R8)
[[7]](diffhunk://#diff-f11cb1fa827924b89af074a0ec08aae96f962abf08133df45a8d326f22ff467bR1-R8)
[[8]](diffhunk://#diff-a481e356326319c0bd932ece074bdd533294a19a333da5dbfc0c081b4052fa1dR1-R8)
[[9]](diffhunk://#diff-ffe0600fd34e997bde34d076822e13354866d9dbc6c6fd43865b4a70f0a479a0R1-R8)
[[10]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R515-R549)
[[11]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R578-R605)
[[12]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R683-R689)
**Installer and uninstaller script implementations:**
* For each new app, added output JSON files containing version info,
installer URLs, SHA256 hashes, and install/uninstall scripts. These
scripts handle application installation and cleanup, including quitting
running apps and removing associated files and directories.
[[1]](diffhunk://#diff-458d8f6eb15663b336e76a6964ca22f83e940b0bef4474391d46a1698cd3dcb4R1-R21)
[[2]](diffhunk://#diff-5f9bd670a42a11fb7ab0bf3575557a938a96d8652497c14e2e8f60369f735bf8R1-R21)
[[3]](diffhunk://#diff-c31491a17eb8dff09d145de13e703188c032a446a8e74060505024c239db208fR1-R21)
These updates expand the catalog’s coverage and ensure proper lifecycle
management for each newly supported app.
This pull request adds support for "DB Browser for SQLite" to the
maintained apps system and frontend, including metadata, installer
details, and icon integration. The changes ensure that "DB Browser for
SQLite" is now recognized, installable, and visually represented in the
software catalog.
**Backend: App Metadata and Installer Integration**
* Added a new input file `db-browser-for-sqlite.json` with metadata for
"DB Browser for SQLite"
(`ee/maintained-apps/inputs/homebrew/db-browser-for-sqlite.json`).
* Generated output files for the app, including listing in `apps.json`
and a detailed installer/uninstaller script with version info and SHA256
checksum (`ee/maintained-apps/outputs/apps.json`,
`ee/maintained-apps/outputs/db-browser-for-sqlite/darwin.json`).
[[1]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R403-R409)
[[2]](diffhunk://#diff-4f92dcbeb9f303f8a2b0337097c2c11892b2eb2f73023dc26845f6971d34aa6aR1-R21)
**Frontend: Icon and Mapping Integration**
* Added a new React SVG icon component for "DB Browser for SQLite"
(`DbBrowserForSqLite.tsx`).
* Imported the new icon into the icons index and mapped it in
`SOFTWARE_NAME_TO_ICON_MAP` for correct display on the software page
(`frontend/pages/SoftwarePage/components/icons/index.ts`).
[[1]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR56)
[[2]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR234)
This pull request adds support for several new macOS applications to the
maintained apps system. It introduces metadata and installer/uninstaller
scripts for each app and updates the main apps output file to include
them with descriptions and platform information. The most significant
changes are grouped below.
**New Application Integrations:**
* Added support for `balenaEtcher`, including metadata
(`balenaetcher.json`), installer/uninstaller scripts, and entry in
`apps.json` with description.
[[1]](diffhunk://#diff-929134bb1d28b55d168f4dc3e35f9f08a0d1e45d46bcf6f4183f99f79428433cR1-R8)
[[2]](diffhunk://#diff-8d03c90ab45b7ed733912e7ba94c2601b8a80047896ed6812dbacb91d538b2edR1-R21)
[[3]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R165-R171)
* Added support for `CleanMyMac`, including metadata
(`cleanmymac.json`), installer/uninstaller scripts, and entry in
`apps.json` with description.
[[1]](diffhunk://#diff-a3148bf2381a87133a9daf9bb676da3561b68458fac4a8bf5a13ee4b2ca1e6a0R1-R8)
[[2]](diffhunk://#diff-3c53d70fb16a8d91fddbe12c90115a282738652ce25e082795baff88d67cb4afR1-R21)
[[3]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R305-R318)
* Added support for `CleanShot X`, `Clockify Desktop`, `CotEditor`,
`DBeaver` (Community, Enterprise, Lite, Ultimate), `DeepL`, and
`Dialpad` with metadata files and entries in `apps.json`.
[[1]](diffhunk://#diff-371522e9c06a5ea355102f316203a3e6c9227337e418fa477c6a70e04f558da4R1-R8)
[[2]](diffhunk://#diff-32597ee59d679b740ccc62e2bf05354aa0918a3662d9949d27f117526128ab62R1-R8)
[[3]](diffhunk://#diff-1be741483848b645a6c7e85e58d79c3b5eb1b4353b27f57316c00ec6e176b6e5R1-R8)
[[4]](diffhunk://#diff-dff15693362fcb9e4b7d6dde7a8eafa67806903a0b05d6ab07e2eb923cf7bbe1R1-R8)
[[5]](diffhunk://#diff-cef23a1c4601fb334e1bd6cc7f4a96a7e25550b08b381942998bb108fc64d58dR1-R8)
[[6]](diffhunk://#diff-5df1e672d5a9546c5acbfe9d82ddddfa82bc946d1c0b18900d5bc055efbbcdd9R1-R8)
[[7]](diffhunk://#diff-b249fc32817185ddef560ebee1c3271e480c8ad3a15e276b9603f573d24b76b2R1-R8)
[[8]](diffhunk://#diff-0c12c073b1a807c9688bc529c1c5ab8682fbd6e8ddeb70cfa44ce9758e5ae4e7R1-R8)
[[9]](diffhunk://#diff-d9099249f5d9ce758e4c9dfe6a5df22821ff466fdcfecb8138f1880b7f9c76e6R1-R8)
[[10]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R305-R318)
[[11]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R340-R346)
[[12]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R361-R367)
[[13]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R403-R451)
**Installer and Uninstaller Scripts:**
* Added custom install and uninstall shell scripts for `balenaEtcher`
and `CleanMyMac`, referenced in their respective output JSON files for
automated deployment and removal.
[[1]](diffhunk://#diff-8d03c90ab45b7ed733912e7ba94c2601b8a80047896ed6812dbacb91d538b2edR1-R21)
[[2]](diffhunk://#diff-3c53d70fb16a8d91fddbe12c90115a282738652ce25e082795baff88d67cb4afR1-R21)
**App Metadata and Categorization:**
* Each new app includes metadata such as name, unique identifier,
installer format, slug, and default categories in its respective input
JSON file for improved organization and categorization.
[[1]](diffhunk://#diff-929134bb1d28b55d168f4dc3e35f9f08a0d1e45d46bcf6f4183f99f79428433cR1-R8)
[[2]](diffhunk://#diff-a3148bf2381a87133a9daf9bb676da3561b68458fac4a8bf5a13ee4b2ca1e6a0R1-R8)
[[3]](diffhunk://#diff-371522e9c06a5ea355102f316203a3e6c9227337e418fa477c6a70e04f558da4R1-R8)
[[4]](diffhunk://#diff-32597ee59d679b740ccc62e2bf05354aa0918a3662d9949d27f117526128ab62R1-R8)
[[5]](diffhunk://#diff-1be741483848b645a6c7e85e58d79c3b5eb1b4353b27f57316c00ec6e176b6e5R1-R8)
[[6]](diffhunk://#diff-dff15693362fcb9e4b7d6dde7a8eafa67806903a0b05d6ab07e2eb923cf7bbe1R1-R8)
[[7]](diffhunk://#diff-cef23a1c4601fb334e1bd6cc7f4a96a7e25550b08b381942998bb108fc64d58dR1-R8)
[[8]](diffhunk://#diff-5df1e672d5a9546c5acbfe9d82ddddfa82bc946d1c0b18900d5bc055efbbcdd9R1-R8)
[[9]](diffhunk://#diff-b249fc32817185ddef560ebee1c3271e480c8ad3a15e276b9603f573d24b76b2R1-R8)
[[10]](diffhunk://#diff-0c12c073b1a807c9688bc529c1c5ab8682fbd6e8ddeb70cfa44ce9758e5ae4e7R1-R8)
[[11]](diffhunk://#diff-d9099249f5d9ce758e4c9dfe6a5df22821ff466fdcfecb8138f1880b7f9c76e6R1-R8)
**Main Apps Output Update:**
* Updated `apps.json` to include all new applications, complete with
platform, unique identifier, and descriptive text for each, ensuring
visibility in the maintained apps catalog.
[[1]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R165-R171)
[[2]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R305-R318)
[[3]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R340-R346)
[[4]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R361-R367)
[[5]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R403-R451)
This pull request adds support for several new macOS applications to the
maintained apps system. It introduces input definitions, output package
specifications (including install/uninstall scripts), and updates the
central `apps.json` registry to include metadata for these new apps. The
main focus is on expanding the catalog with communication, developer,
productivity, and browser tools.
**New app support and metadata:**
* Added input definitions for the following apps, specifying their
identifiers, installer formats, and categories:
- Aircall (`aircall.json`)
- Amazon Chime (`amazon-chime.json`)
- Anka (`anka-virtualization.json`)
- Apparency (`apparency.json`)
- Archaeology (`archaeology.json`)
- Audacity (`audacity.json`)
- Avast Secure Browser (`avast-secure-browser.json`)
- AWS Client VPN (`aws-vpn-client.json`)
**Installer and uninstaller automation:**
* Added detailed install and uninstall scripts for each new app in their
respective output package files, handling application installation,
application quitting, and cleanup of related files and services.
[[1]](diffhunk://#diff-69612a2273163047de2ee0e4446f923c345c2deda667da654faed9432fb7d955R1-R21)
[[2]](diffhunk://#diff-b85f25e5875032d395e9a68bb3fbda92ac1411d0e1cd6ec4d161b65a60306b39R1-R21)
[[3]](diffhunk://#diff-5ce44247a9095604b20b7b52648b84ff211ed6f71a8bd23c8d1bafc88d00a408R1-R21)
[[4]](diffhunk://#diff-dbe46146299146d8e6a02593fe835bf16c17d690e6e76d90dfa9f16b63a8aa48R1-R21)
**Catalog update:**
* Updated `apps.json` to include metadata (name, slug, platform, unique
identifier, and description) for all newly supported apps, making them
available in the maintained apps catalog.
[[1]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R74-R129)
[[2]](diffhunk://#diff-4c1446cfc02c6bb0bda874481e333c65b84e184fcea52f656b49a6489f73c9c2R144-R164)
This pull request adds support for the Bruno application to both the
backend maintained apps system and the frontend software page. The main
changes introduce Bruno's metadata, installation and uninstallation
scripts, and its icon for display in the UI.
**Backend: Bruno app integration**
* Added `bruno.json` input definition for Bruno, specifying its
installer format, unique identifier, and default categories.
* Updated `apps.json` output to include Bruno with its description,
platform, and slug.
* Created output file `bruno/darwin.json` with Bruno's version info,
installer and uninstall script references, SHA256 checksum, and
category.
**Frontend: Bruno icon and mapping**
* Added `Bruno.tsx` SVG icon component for Bruno.
* Imported Bruno icon in the icons index and mapped it in
`SOFTWARE_NAME_TO_ICON_MAP` for use on the software page.
[[1]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR25)
[[2]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR183)
This pull request adds support for the Arc browser to both the backend
maintained apps and the frontend software icons. The main changes
include adding Arc's metadata and install/uninstall scripts, updating
the apps listing, and providing a new SVG icon for Arc in the frontend.
**Backend: Arc browser support**
* Added Arc's metadata to `arc.json`, including its identifier,
installer format, and default categories.
* Created `arc/darwin.json` with version info, install/uninstall
scripts, and installer details for Arc on macOS.
* Updated `apps.json` to include Arc in the list of supported apps, with
a user-friendly description.
**Frontend: Arc browser icon**
* Added a new SVG icon component for Arc in `Arc.tsx`.
* Registered Arc in the icon index and mapped its name to the new icon
for use in the software page.
[[1]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR18)
[[2]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR175)
This pull request adds support for managing Blender as a maintained app
on both macOS and Windows platforms. It includes new app definitions,
installation and uninstallation scripts, and integrates Blender’s icon
into the frontend for display.
**Blender app support (macOS & Windows):**
* Added input definitions for Blender in `homebrew/blender.json` (macOS)
and `winget/blender.json` (Windows), specifying installer formats and
metadata.
[[1]](diffhunk://#diff-891fa47f83954f81130e9a15f0fe60497916acb54a89b78478215cb08e9fb0e8R1-R8)
[[2]](diffhunk://#diff-69ce1c29dce360a4dd0033a269811880ea700530661b9b73c1f02bbc37145f91R1-R10)
* Updated `apps.json` to include Blender entries for both platforms,
with descriptions and unique identifiers.
* Created output manifests for Blender on macOS (`blender/darwin.json`)
and Windows (`blender/windows.json`), including version info, installer
URLs, SHA256 hashes, and install/uninstall scripts.
[[1]](diffhunk://#diff-10617b0d1fdc87b778d38cf37a7a3ba479561eedb55b9c6cf8f5128abb224de1R1-R21)
[[2]](diffhunk://#diff-a295dabd830631ee695b318097606d605b1d511cf32b46c9663c06ebbf24182bR1-R22)
**Frontend integration:**
* Added a new Blender SVG icon component (`Blender.tsx`) and registered
it in the software icon map for display on the Software Page.
[[1]](diffhunk://#diff-ba9ba14ef95d070975d2aa0e46b19d118bc9c167aeeb34b45ba48d2c1cc5848cR1-R14)
[[2]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR22)
[[3]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR179)
This pull request adds support for managing Wireshark on Windows to the
maintained apps system. The main changes include introducing new input
and output files for Wireshark, updating the central apps manifest, and
providing installation and uninstallation scripts.
**Wireshark Windows support:**
* Added a new input manifest for Wireshark in `winget` format at
`ee/maintained-apps/inputs/winget/wireshark.json`.
* Created an output manifest for Wireshark on Windows at
`ee/maintained-apps/outputs/wireshark/windows.json`, including version
info, installer details, install/uninstall scripts, and metadata.
* Updated the central apps manifest
`ee/maintained-apps/outputs/apps.json` to include Wireshark for Windows
as a managed app.
This pull request updates the naming conventions for the VLC app in both
input and output configuration files to ensure consistency and clarity.
The most important changes are:
Naming consistency updates:
* Changed the `name` field from "VLC" to "VLC media player" in
`ee/maintained-apps/inputs/winget/vlc.json` to better reflect the
application's full name.
* Updated the `name` field from "VLC" to "VLC media player" in
`ee/maintained-apps/outputs/apps.json` for the Windows platform entry,
ensuring the output matches the input and provides a more descriptive
app name.