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