Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions ee/maintained-apps/inputs/winget/eclipse-temurin-jdk-11.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"name": "Eclipse Temurin JDK 11",
"slug": "eclipse-temurin-jdk-11/windows",
"package_identifier": "EclipseAdoptium.Temurin.11.JDK",
"unique_identifier": "Eclipse Temurin JDK with Hotspot",
"exists_query": "SELECT 1 FROM programs WHERE name LIKE 'Eclipse Temurin JDK%' AND publisher = 'Eclipse Adoptium' AND version LIKE '11.%';",
"installer_arch": "x64",
"installer_type": "msi",
"installer_scope": "machine",
"default_categories": [
"Developer tools"
]
}
13 changes: 13 additions & 0 deletions ee/maintained-apps/inputs/winget/eclipse-temurin-jdk-17.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"name": "Eclipse Temurin JDK 17",
"slug": "eclipse-temurin-jdk-17/windows",
"package_identifier": "EclipseAdoptium.Temurin.17.JDK",
"unique_identifier": "Eclipse Temurin JDK with Hotspot",
"exists_query": "SELECT 1 FROM programs WHERE name LIKE 'Eclipse Temurin JDK%' AND publisher = 'Eclipse Adoptium' AND version LIKE '17.%';",
"installer_arch": "x64",
"installer_type": "msi",
"installer_scope": "machine",
"default_categories": [
"Developer tools"
]
}
13 changes: 13 additions & 0 deletions ee/maintained-apps/inputs/winget/eclipse-temurin-jdk-21.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"name": "Eclipse Temurin JDK 21",
"slug": "eclipse-temurin-jdk-21/windows",
"package_identifier": "EclipseAdoptium.Temurin.21.JDK",
"unique_identifier": "Eclipse Temurin JDK with Hotspot",
"exists_query": "SELECT 1 FROM programs WHERE name LIKE 'Eclipse Temurin JDK%' AND publisher = 'Eclipse Adoptium' AND version LIKE '21.%';",
"installer_arch": "x64",
"installer_type": "msi",
"installer_scope": "machine",
"default_categories": [
"Developer tools"
]
}
13 changes: 13 additions & 0 deletions ee/maintained-apps/inputs/winget/eclipse-temurin-jdk-8.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"name": "Eclipse Temurin JDK 8",
"slug": "eclipse-temurin-jdk-8/windows",
"package_identifier": "EclipseAdoptium.Temurin.8.JDK",
"unique_identifier": "Eclipse Temurin JDK with Hotspot",
"exists_query": "SELECT 1 FROM programs WHERE name LIKE 'Eclipse Temurin JDK%' AND publisher = 'Eclipse Adoptium' AND version LIKE '8.%';",
"installer_arch": "x64",
"installer_type": "msi",
"installer_scope": "machine",
"default_categories": [
"Developer tools"
]
}
13 changes: 13 additions & 0 deletions ee/maintained-apps/inputs/winget/eclipse-temurin-jre-11.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"name": "Eclipse Temurin JRE 11",
"slug": "eclipse-temurin-jre-11/windows",
"package_identifier": "EclipseAdoptium.Temurin.11.JRE",
"unique_identifier": "Eclipse Temurin JRE with Hotspot",
"exists_query": "SELECT 1 FROM programs WHERE name LIKE 'Eclipse Temurin JRE%' AND publisher = 'Eclipse Adoptium' AND version LIKE '11.%';",
"installer_arch": "x64",
"installer_type": "msi",
"installer_scope": "machine",
"default_categories": [
"Developer tools"
]
}
13 changes: 13 additions & 0 deletions ee/maintained-apps/inputs/winget/eclipse-temurin-jre-17.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"name": "Eclipse Temurin JRE 17",
"slug": "eclipse-temurin-jre-17/windows",
"package_identifier": "EclipseAdoptium.Temurin.17.JRE",
"unique_identifier": "Eclipse Temurin JRE with Hotspot",
"exists_query": "SELECT 1 FROM programs WHERE name LIKE 'Eclipse Temurin JRE%' AND publisher = 'Eclipse Adoptium' AND version LIKE '17.%';",
"installer_arch": "x64",
"installer_type": "msi",
"installer_scope": "machine",
"default_categories": [
"Developer tools"
]
}
13 changes: 13 additions & 0 deletions ee/maintained-apps/inputs/winget/eclipse-temurin-jre-21.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"name": "Eclipse Temurin JRE 21",
"slug": "eclipse-temurin-jre-21/windows",
"package_identifier": "EclipseAdoptium.Temurin.21.JRE",
"unique_identifier": "Eclipse Temurin JRE with Hotspot",
"exists_query": "SELECT 1 FROM programs WHERE name LIKE 'Eclipse Temurin JRE%' AND publisher = 'Eclipse Adoptium' AND version LIKE '21.%';",
"installer_arch": "x64",
"installer_type": "msi",
"installer_scope": "machine",
"default_categories": [
"Developer tools"
]
}
13 changes: 13 additions & 0 deletions ee/maintained-apps/inputs/winget/eclipse-temurin-jre-8.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"name": "Eclipse Temurin JRE 8",
"slug": "eclipse-temurin-jre-8/windows",
"package_identifier": "EclipseAdoptium.Temurin.8.JRE",
"unique_identifier": "Eclipse Temurin JRE with Hotspot",
"exists_query": "SELECT 1 FROM programs WHERE name LIKE 'Eclipse Temurin JRE%' AND publisher = 'Eclipse Adoptium' AND version LIKE '8.%';",
"installer_arch": "x64",
"installer_type": "msi",
"installer_scope": "machine",
"default_categories": [
"Developer tools"
]
}
10 changes: 10 additions & 0 deletions ee/maintained-apps/inputs/winget/egnyte-webedit.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"name": "Egnyte WebEdit",
"slug": "egnyte-webedit/windows",
"package_identifier": "Egnyte.EgnyteWebEdit",
"unique_identifier": "Egnyte WebEdit",
"installer_arch": "x86",
"installer_type": "msi",
"installer_scope": "machine",
"default_categories": ["Productivity"]
}
11 changes: 11 additions & 0 deletions ee/maintained-apps/inputs/winget/elevate-uc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"name": "Elevate UC",
"slug": "elevate-uc/windows",
"package_identifier": "Serverdata.ElevateUC",
"unique_identifier": "Elevate UC",
"installer_arch": "x64",
"installer_type": "msi",
"installer_scope": "machine",
"ignore_hash": true,
"default_categories": ["Communication"]
}
12 changes: 12 additions & 0 deletions ee/maintained-apps/inputs/winget/endnote.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"name": "EndNote",
"slug": "endnote/windows",
"package_identifier": "ClarivateAnalytics.EndNote",
"unique_identifier": "EndNote 2025",
"fuzzy_match_name": "EndNote 20%",
Comment on lines +5 to +6
"installer_arch": "x86",
"installer_type": "msi",
"installer_scope": "machine",
"ignore_hash": true,
"default_categories": ["Productivity"]
}
13 changes: 13 additions & 0 deletions ee/maintained-apps/inputs/winget/enpass.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"name": "Enpass",
"slug": "enpass/windows",
"package_identifier": "Sinew.Enpass",
"unique_identifier": "Enpass",
"program_publisher": "Enpass Technologies Inc.",
"installer_arch": "x64",
"installer_type": "exe",
"installer_scope": "machine",
"install_script_path": "ee/maintained-apps/inputs/winget/scripts/enpass_install.ps1",
"uninstall_script_path": "ee/maintained-apps/inputs/winget/scripts/enpass_uninstall.ps1",
"default_categories": ["Productivity"]
}
14 changes: 14 additions & 0 deletions ee/maintained-apps/inputs/winget/evernote.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"name": "Evernote",
"slug": "evernote/windows",
"package_identifier": "Evernote.Evernote",
"unique_identifier": "Evernote",
"fuzzy_match_name": "Evernote%",
"program_publisher": "Evernote Corporation",
"installer_arch": "x64",
"installer_type": "exe",
"installer_scope": "machine",
"install_script_path": "ee/maintained-apps/inputs/winget/scripts/evernote_install.ps1",
"uninstall_script_path": "ee/maintained-apps/inputs/winget/scripts/evernote_uninstall.ps1",
"default_categories": ["Productivity"]
}
38 changes: 38 additions & 0 deletions ee/maintained-apps/inputs/winget/scripts/enpass_install.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# Learn more about .exe install scripts:
# http://fleetdm.com/learn-more-about/exe-install-scripts
#
# Enpass ships as a WiX "burn" bootstrapper that chains vcredist + the inner
# Enpass MSI and registers a per-machine bundle ARP entry. Silent switches
# follow the burn convention.

$exeFilePath = "${env:INSTALLER_PATH}"

try {
if (-not (Test-Path $exeFilePath)) {
Write-Host "Error: Installer file not found at: $exeFilePath"
Exit 1
}

$processOptions = @{
FilePath = "$exeFilePath"
ArgumentList = "/install /quiet /norestart"
PassThru = $true
Wait = $true
NoNewWindow = $true
}

$process = Start-Process @processOptions
$exitCode = $process.ExitCode
Write-Host "Install exit code: $exitCode"

# 0 = success, 3010 = success but reboot required, 1641 = reboot initiated
if ($exitCode -eq 3010 -or $exitCode -eq 1641) {
Exit 0
}

Exit $exitCode

} catch {
Write-Host "Error: $_"
Exit 1
}
79 changes: 79 additions & 0 deletions ee/maintained-apps/inputs/winget/scripts/enpass_uninstall.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
# Uninstalls Enpass.
#
# Enpass is a WiX "burn" bundle. The visible ARP entry is the bundle
# (DisplayName "Enpass"); its QuietUninstallString runs the cached
# Enpass-setup.exe with /uninstall /quiet. The inner MSI is ARPSYSTEMCOMPONENT
# (hidden). RestartManager closes the running Enpass tray app during uninstall. Prefer the bundle
# entry (an .exe UninstallString, uninstalls the whole chain with
# /uninstall /quiet /norestart); fall back to the chained MSI entry
# (msiexec /X{ProductCode}) if only that one is present.

$softwareName = "Enpass"

$machineKey = 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*'
$machineKey32on64 = 'HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*'

function Split-UninstallString {
param([string]$raw)
# Parse into executable + args, handling quoted/unquoted/bare shapes.
if ($raw -match '^\s*"([^"]+)"\s*(.*)$') {
return @($matches[1], $matches[2].Trim())
} elseif ($raw -match '(?i)^\s*(.+?\.exe)\s*(.*)$') {
return @($matches[1], $matches[2].Trim())
}
return @($raw, "")
}

$exitCode = $null

try {

[array]$uninstallKeys = Get-ChildItem `
-Path @($machineKey, $machineKey32on64) `
-ErrorAction SilentlyContinue |
ForEach-Object { Get-ItemProperty $_.PSPath }

[array]$matches_ = $uninstallKeys | Where-Object { $_.DisplayName -eq $softwareName }

# Prefer the burn bundle entry (non-msiexec .exe uninstaller) over the chained MSI.
$bundle = $matches_ | Where-Object {
$raw = if ($_.QuietUninstallString) { $_.QuietUninstallString } else { $_.UninstallString }
$raw -and $raw -notmatch '(?i)msiexec'
} | Select-Object -First 1
$entry = if ($bundle) { $bundle } else { $matches_ | Select-Object -First 1 }

if ($entry) {
$raw = if ($entry.QuietUninstallString) { $entry.QuietUninstallString } else { $entry.UninstallString }
$exe, $exeArgs = Split-UninstallString -raw $raw

if ($exe -match '(?i)msiexec') {
if ($exeArgs -notmatch '(?i)/(x|uninstall)') { $exeArgs = "/X $exeArgs" }
if ($exeArgs -notmatch '(?i)/(qn|quiet)') { $exeArgs = "$exeArgs /qn" }
if ($exeArgs -notmatch '(?i)/norestart') { $exeArgs = "$exeArgs /norestart" }
} else {
if ($exeArgs -notmatch '/uninstall') { $exeArgs = "/uninstall $exeArgs" }
if ($exeArgs -notmatch '/quiet') { $exeArgs = "$exeArgs /quiet" }
if ($exeArgs -notmatch '/norestart') { $exeArgs = "$exeArgs /norestart" }
}
$exeArgs = $exeArgs.Trim()

Write-Host "Uninstall command: $exe"
Write-Host "Uninstall args: $exeArgs"
$process = Start-Process -FilePath $exe -ArgumentList $exeArgs -NoNewWindow -PassThru -Wait
$exitCode = $process.ExitCode
}

} catch {
Write-Host "Error: $_"
Exit 1
}

if ($null -eq $exitCode) {
Write-Host "Uninstall entry not found for '$softwareName'."
Exit 1
}

Write-Host "Uninstall exit code: $exitCode"
# 0 = success, 3010 = success but reboot required, 1641 = reboot initiated
if ($exitCode -eq 3010 -or $exitCode -eq 1641) { Exit 0 }
Exit $exitCode
29 changes: 29 additions & 0 deletions ee/maintained-apps/inputs/winget/scripts/evernote_install.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# Learn more about .exe install scripts:
# http://fleetdm.com/learn-more-about/exe-install-scripts

$exeFilePath = "${env:INSTALLER_PATH}"

try {

# Evernote uses an electron-builder NSIS installer. It defaults to a per-user
# install, so /allusers is required for a machine-wide install alongside the
# NSIS /S silent flag.
$processOptions = @{
FilePath = "$exeFilePath"
ArgumentList = "/allusers /S"
PassThru = $true
Wait = $true
}

# Start process and track exit code
$process = Start-Process @processOptions
$exitCode = $process.ExitCode

# Prints the exit code
Write-Host "Install exit code: $exitCode"
Exit $exitCode

} catch {
Write-Host "Error: $_"
Exit 1
}
Loading
Loading