/Scoop-Core

Shovel. Alternative, more advanced, and user-friendly implementation of windows command-line installer scoop.

Primary LanguagePowerShellGNU General Public License v3.0GPL-3.0

Command-line installer for Windows

Goals

Scriptable, user-friendly command line installation of applications with a minimal amount of friction.

  • Eliminate permission/UAC popup
  • Avoid GUI wizard-style installers
    • Use winget for interactive installations
  • Do not pollute PATH
  • Skip unexpected side-effects from installing and uninstalling programs
    • Applications installed by Shovel usually do not execute application specific installers
      • If you are looking for command line tool for executing application specific installers, refer to winget or chocolatey
  • Dependencies resolving for other Shovel installed applications
shovel install gsudo
sudo shovel install --global 7zip git openssh
shovel install aria2 curl grep sed less touch
shovel install python ruby go perl
shovel install extras/firefox

Requirements

Installation

Refer to the new installer to install base scoop.

As soon as base scoop is installed do the following:

  1. scoop install 7zip git
  2. scoop config SCOOP_REPO 'https://github.com/Ash258/Scoop-Core'
  3. scoop update
  4. scoop status
  5. scoop checkup

Once installed, run scoop help for additional information.

Multi-connection downloads with aria2

Shovel can utilize aria2 to use multi-connection downloads. Simply install aria2 through Shovel and it will be used for all downloads afterward.

shovel install aria2

Refer to shovel help config how to adjust aria2 specific configuration.

Applications installed by Shovel

The applications that install best with Shovel are commonly called "portable" applications: i.e. compressed program files that run stand-alone when extracted and do not have side-effects like changing the registry or putting files outside the program directory.

Since installers are common, Shovel supports them too (and their uninstallers).

Shovel is also great at handling single-file programs and PowerShell scripts. These do not even need to be compressed. See the runat package for an example. It is really just a GitHub gist.

Known application buckets

The following buckets are known to Shovel:

  • Base - Rebuild of main bucket suited for Shovel usage; Archived + arm64 version support
  • main - Default bucket for the most common command line utilities
  • extras - GUI applications
  • nirsoft - All Nirsoft utilites
  • sysinternals - All Sysinternals tools separately
  • jetbrains - All JetBrains utilities and IDEs
  • nerd-fonts - Nerd Fonts
  • java - Installers for Oracle Java, OpenJDK, Zulu, ojdkbuild, AdoptOpenJDK, Amazon Corretto, BellSoft Liberica, SapMachine and Microsoft
  • nonportable - Non-portable applications (may require UAC)
  • php - Installers for various versions of PHP
  • versions - Alternative versions of applications found in known buckets
  • games - Open source/freeware games and game-related tools