Installation

Prerequisites

The Devolutions.PowerShell module requires PowerShell 7.4 or later, and supports Windows, macOS and Linux. Windows PowerShell or older versions of PowerShell 7 are not supported because the PowerShell module is built from the same core as Remote Desktop Manager, and therefore requires a version of PowerShell using a compatible version of the .NET runtime (.NET 8).

PSGallery

The Devolutions.PowerShell module is available in PSGallery and it is the recommended default installation method:

Install-Module Devolutions.PowerShell -Force

Since PSGallery is usually a repository marked as untrusted (packages are not curated or reviewed), using -Force is required to avoid getting the confirmation prompt.

Cloudsmith

PSGallery is great to discover packages, but there is no way to mark specific packages as trusted without marking the entire repository as trusted. PSGallery also experienced downtime long enough to become a problem in the past, so we now offer a Devolutions PowerShell repository hosted by Cloudsmith.

Register the Devolutions PowerShell repository, which can be marked as trusted:

Register-PSRepository -Name 'Devolutions' -SourceLocation 'https://nuget.cloudsmith.io/devolutions/powershell/v2/' -InstallationPolicy Trusted

Uninstall previous versions of the Devolutions.PowerShell module installed from PSGallery:

Uninstall-Module Devolutions.PowerShell -AllVersions

Install the Devolutions.PowerShell module explicitly from the "Devolutions" repository:

Install-Module Devolutions.PowerShell -Repository Devolutions

Since Devolutions.PowerShell is now available in more than one registered repository, the -Repository parameter becomes mandatory. However, if you've marked the "Devolutions" repository as trusted, -Force is not required to avoid the confirmation prompt.

Confirm the installation source repository for the Devolutions.PowerShell module is "Devolutions" and not "PSGallery":

Get-InstalledModule Devolutions.PowerShell | Select-Object -Property Name, Repository

Name                   Repository
----                   ----------
Devolutions.PowerShell Devolutions

Offline

What if you need to install the Devolutions.PowerShell module from a machine that has limited or no Internet access? PowerShell modules can only be installed easily from a repository, but thankfully simple file-based repositories can be used. Create a new PowerShell repository called 'local' in a directory of your choosing (like "C:\psrepo"):

$RepoPath = "C:\psrepo"
New-Item -Path $RepoPath -ItemType 'Directory' -Force | Out-Null
Register-PSRepository -Name 'local' -SourceLocation $RepoPath -PublishLocation $RepoPath -InstallationPolicy Trusted

Alternatively, it is possible to use a directory on a network share instead of a local directory, making it easier to distribute the PowerShell module on a local network.

Next, grab the raw .nupkg file for the Devolutions.PowerShell module using the Download the raw nupkg file button under Manual Download in PSGallery. Copy the .nupkg file to the local PowerShell repository directory ("C:\psrepo").

Uninstall previous versions of the Devolutions.PowerShell module installed from other sources:

Uninstall-Module Devolutions.PowerShell -AllVersions

Install the Devolutions.PowerShell module explicitly from the "local" repository:

Install-Module Devolutions.PowerShell -Repository local

Confirm the installation source for the Devolutions.PowerShell module is "local":

Get-InstalledModule Devolutions.PowerShell | Select-Object -Property Name, Repository

Name                   Repository
----                   ----------
Devolutions.PowerShell local

Cleaning up

If you've tried the various installation methods documented here, you may want to restore things into a clean state before starting over from scratch.

Uninstall all versions of the Devolutions.PowerShell module:

Uninstall-Module Devolutions.PowerShell -AllVersions

Unregister the "Devolutions" cloudsmith repository:

Unregister-PSRepository Devolutions

Unregister the "local" file-based repository, and delete the associated directory:

Unregister-PSRepository local
Remove-Item "C:\psrepo" -Recurse -ErrorAction SilentlyContinue
Devolutions Forum logo Give us Feedback