/Install

Shovel installer

Primary LanguagePowerShellThe UnlicenseUnlicense

Shovel installer

Generic installer for any Shovel fork

Installation

Prerequisites

  • Windows 11/10 recommended
    • Windows 7 SP1+ / Windows Server 2008+
  • PowerShell 5 or later, PowerShell Core included
  • .NET Framework 4.5 or later
  • PowerShell execution policy in Unrestricted/RemoteSigned/ByPass, for example:
    • Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

Typical Installation

Run this command from a non-admin PowerShell to install scoop with default configuration, scoop will be install to C:\Users\<YOUR USERNAME>\scoop.

iwr -useb 'https://raw.githubusercontent.com/shovel-org/Install/main/install.ps1' | iex

Advanced Installation

If you want to have an advanced installation. You can download the installer and manually execute it with parameters.

iwr -useb 'https://raw.githubusercontent.com/shovel-org/Install/main/install.ps1' -outfile 'install.ps1'

To see all configurable parameters of the installer.

.\install.ps1 -?

For example, install scoop to a custom directory, configure scoop to install global programs to a custom directory, and bypass system proxy while installation.

.\install.ps1 -ScoopDir 'D:\Applications\Scoop' -ScoopGlobalDir 'F:\GlobalScoopApps' -NoProxy

Or you can use the legacy method to configure custom directory by setting Environment Variables. (Not Recommended)

$env:SCOOP='D:\Applications\Scoop'
$env:SCOOP_GLOBAL='F:\GlobalScoopApps'
[Environment]::SetEnvironmentVariable('SCOOP_GLOBAL', $env:SCOOP_GLOBAL, 'Machine')
iwr -useb 'https://raw.githubusercontent.com/shovel-org/Install/main/install.ps1' | iex

For Admin: Installation under the administrator console has been disabled by default for security reason. If you know what you are doing and want to install Scoop as administrator. Please download the installer and manually execute it with the -RunAsAdmin parameter in an elevated console. Here is the example:

iwr -useb 'https://raw.githubusercontent.com/shovel-org/Install/main/install.ps1' -outfile 'install.ps1'
.\install.ps1 -RunAsAdmin [-OtherParameters ...]

Silent Installation

You can redirect all outputs to Out-Null or a log file to silence the installer. And you can use $LASTEXITCODE to check the installation result, it will be 0 when the installation success.

# Omit outputs
.\install.ps1 [-Parameters ...] | Out-Null
# Or collect logs
.\install.ps1 [-Parameters ...] > install.log
# Get result
$LASTEXITCODE