scoop search hugo
Scoop is a Windows package manager that is run at a command line. You can use it to install, update, and uninstall command-line and GUI Windows apps. Details are at https://scoop.sh.
Other Windows package managers include…
Chocolatey Software’s Chocolatey
and Microsoft’s Windows Package Manager CLI (also known as winget).
For a comparison of Scoop and these alternatives, see Chocolatey and Winget Comparison in the Scoop Wiki.
To install Scoop, follow the instructions at github.com/ScoopInstaller/Scoop/wiki/Quick-Start
💡 |
|
‼ | To run a scoop command,
such as
scoop update * ,
you need to be at a command-line prompt.
Since scoop is fundamentally a
PowerShell
script, I recommend running it from
a PowerShell
prompt (rather than a
CMD[3]
or
Git Bash
prompt).[4] |
To find out what, if any, variations of an app
are available through scoop, you can use scoop’s
search
command. For example, you can use the following to
search for the string hugo
.
(Hugo is
the
command-line static site generator
used by Infinite Ink.)
scoop search hugo
This displays something like this:
'main' bucket: hugo-extended (0.n.m) hugo (0.n.m)
To install hugo-extended, run this:
scoop install hugo-extended
Or, to install hugo (unextended), run this:
scoop install hugo
💡 | Both extended Hugo and unextended Hugo are named |
Thanks to scoop’s magic the hugo
command (which is actually a
shim) will now
be on your path and ready to use.
To
find out which directory the hugo
shim
is in, run one of the following commands.
In PowerShell, run:
gcm hugo
(or equivalently Get-Command hugo
)
In a Unix-like shell such as Git Bash, run:
which hugo
In CMD[3] or Git Bash, run:
where hugo
To find out which directory the actual hugo.exe
is in, run
this if you installed hugo-extended
:
scoop prefix hugo-extended
Or, this if you installed hugo
:
scoop prefix hugo
‼ | In order for If you run |
Before you use scoop to update an app, make sure scoop knows about the latest version by running this:
scoop search hugo
On 2020-November-27, this was displayed on my system:
'main' bucket: hugo-extended (0.78.2) hugo (0.78.2)
Thanks to discourse.gohugo.io, I knew that v0.79.0 had been released so I did the following.
To update scoop’s local app manifests (and update scoop itself), run this:
scoop update
On 2020-November-27, my system displayed something like this:
Updating Scoop… ⋮ Updating 'extras' bucket… ⋮ Updating 'main' bucket… ⋮ * e6f097b4c hugo: Update to version 0.79.0 2 hours ago * 11f48741c hugo-extended: Update to version 0.79.0 2 hours ago ⋮
To make sure scoop is ready to install the latest version, search again:
scoop search hugo
After running the above scoop update
command,
my system displayed this:
'main' bucket: hugo-extended (0.79.0) hugo (0.79.0)
To update, run this:
scoop update hugo-extended
This displays something like this:
hugo-extended: 0.78.2 -> 0.79.0 Updating one outdated app: Updating 'hugo-extended' (0.78.2 -> 0.79.0) Downloading new version Downloading https://github.com/gohugoio/hugo/releases/download/v0.79.0/hugo_extended_0.79.0_windows-64bit.zip (38.5 MB)... Checking hash of hugo_extended_0.79.0_windows-64bit.zip ... ok. Uninstalling 'hugo-extended' (0.78.2) Removing shim for 'hugo'. Unlinking ~\scoop\apps\hugo-extended\current Installing 'hugo-extended' (0.79.0) [64bit] Loading hugo_extended_0.79.0_windows-64bit.zip from cache Extracting hugo_extended_0.79.0_windows-64bit.zip ... done. Linking ~\scoop\apps\hugo-extended\current => ~\scoop\apps\hugo-extended\0.79.0 Creating shim for 'hugo'. 'hugo-extended' (0.79.0) was installed successfully!
To make sure you’ve got the latest version installed, run:
hugo version
On 2020-November-27, the following was displayed on my system.
Hugo Static Site Generator v0.79.0/extended windows/amd64 BuildDate: unknown
👏
If you want to uninstall a scoop-installed app, use a command like one of the following.
scoop uninstall hugo-extended scoop uninstall -p hugo-extended
The -p
option removes
any of the app’s persistent data,
such as configuration settings,
that are
installed in the scoop/persist/
directory.
Hugo does not use the persist
directory,
but I mention it here so you know about this option.
It does not hurt to use -p
, assuming you want
to remove everything related to a scoop-installed app.
scoop help
To view a list of scoop comands and brief help on each, run either of the following equivalent commands:
scoop help scoop
This will display something like this:
Usage: scoop <command> [<args>]
Some useful commands are:
alias Manage scoop aliases
bucket Manage Scoop buckets
cache Show or clear the download cache
checkup Check for potential problems
cleanup Cleanup apps by removing old versions
config Get or set configuration values
create Create a custom app manifest
depends List dependencies for an app
export Exports (an importable) list of installed apps
help Show help for a command
hold Hold an app to disable updates
home Opens the app homepage
info Display information about an app
install Install apps
list List installed apps
prefix Returns the path to the specified app
reset Reset an app to resolve conflicts
search Search available apps
status Show status and check for new app versions
unhold Unhold an app to enable updates
uninstall Uninstall an app
update Update apps, or Scoop itself
virustotal Look for app's hash on virustotal.com
which Locate a shim/executable (similar to 'which' on Linux)
Type 'scoop help <command>' to get help for a specific command.
scoop status
An especially useful command is scoop status
.
On my system, this
command
currently
(March 2023)
displays this:
WARN Scoop bucket(s) out of date. Run 'scoop update' to get the latest changes. Name Installed Version Latest Version Missing Dependencies Info ---- ----------------- -------------- -------------------- ---- 7zip 21.07 22.01 conemu 22.03.08 22.12.18 ffmpeg 5.0 6.0 mpv 0.35.0 0.35.1 neovim 0.7.0 0.8.3 okular 21.12.3-954 Manifest removed ruby 3.1.2-1 3.2.1-1 sharpkeys 3.9.3 3.9.4 ungoogled-chromium 107.0.5304.107-1.1 111.0.5563.65-1.1 vcredist2022 14.31.31103.0 14.34.31931.0
Before you use scoop to research an app, it’s usually a good idea to update scoop and its app manifests with this command:
scoop update
Figlet is a nix-nux command that was created in 1991 (~32 years ago). For details, see FIGstory. To see if it’s been ported to Windows and is available through scoop, run:
scoop search figlet
This displays:
'main' bucket: figlet (1.0-go)
To open the home page of this figlet (1.0-go)
in your default browser, run:
scoop home figlet
Cool, it turns out that this is by Luke Sampson, scoop’s creator. This makes sense since I saw Windows figlet in action in Luke’s “Scoop Demo” video on Scoop’s home page.
To find out more about this app, run:
scoop info figlet
This displays something like this:
Name : figlet Description : Create large letters using ASCII art out of ordinary text. Version : 1.0-go Bucket : main Website : https://github.com/lukesampson/figlet License : BSD-3-Clause Updated at : 2021-01-13 09:43:59 Updated by : Jakub Čábera Binaries : figlet.exe
To test it, run:
figlet "Scoop Rocks!"
This displays:
____ ____ _ _ / ___| ___ ___ ___ _ __ | _ \ ___ ___| | _____| | \___ \ / __/ _ \ / _ \| '_ \ | |_) / _ \ / __| |/ / __| | ___) | (_| (_) | (_) | |_) | | _ < (_) | (__| <\__ \_| |____/ \___\___/ \___/| .__/ |_| \_\___/ \___|_|\_\___(_) |_|
It worked!🎉
Nowadays I write most Infinite Ink articles in the AsciiDoc markup language. The source of these articles are rendered to HTML by Hugo, with the help of the Asciidoctor Ruby gem. Here are the steps I use to install Ruby and Asciidoctor.
scoop update
scoop install ruby
gem install asciidoctor
💡 | Scoop’s Ruby manifest includes this line: "notes": "Install MSYS2 via 'scoop install msys2' and then run 'ridk install' to install the toolchain!" |
Below are the steps I use to update Ruby and Ruby gems.
‼ | Before
running
,
look at, and possibly backup,
scoop/persist/ruby/ .
Make
note of the gems
you’ve
installed
because you will reinstall them in steps 7 and 8 below. |
← this
uninstalls Ruby and its
persistent data,
which
includes all installed gems
scoop update
scoop install ruby
gem install asciidoctor
Install any other Ruby gem(s) that you use.
After installing Ruby,
I run
ruby -v
,
which displays something like this:
ruby 3.1.1p18 (2022-02-18 revision 53f5fc4236) [x64-mingw-ucrt]
After installing
the
Asciidoctor gem,
I run
asciidoctor -v
,
which displays something like this:
Asciidoctor 2.0.17 [https://asciidoctor.org] Runtime Environment (ruby 3.1.1p18 (2022-02-18 revision 53f5fc4236) [x64-mingw-ucrt]) (lc:UTF-8 fs:UTF-8 in:UTF-8 ex:UTF-8)
💡 |
|
ℹ | According to Repology, …
|
As discussed above, you can use the following to search for an app whose name contains string.
scoop search string
Another way to discover scoop-installable apps is to browse scoop’s buckets. To display a list of the buckets known to scoop, run:
scoop bucket known
Below are some of the buckets known to scoop in March 2023.
main: github.com/ScoopInstaller/Main extras: github.com/ScoopInstaller/Extras versions: github.com/ScoopInstaller/Versions nirsoft: github.com/kodybrown/scoop-nirsoft sysinternals: github.com/niheaven/scoop-sysinternals php: github.com/ScoopInstaller/PHP nerd-fonts: github.com/matthewjberger/scoop-nerd-fonts nonportable: github.com/ScoopInstaller/Nonportable java: github.com/ScoopInstaller/Java games: github.com/Calinou/scoop-games
This list is also available at github.com/ScoopInstaller/Scoop/blob/master/buckets.json.
I use scoop to install and update:
ℹ | Thanks to
my preferred
Windows
shell,
Git Bash,
a lot of Unix-like tools — for example curl ,
od (octal dump),
and
sed — are
already installed on my Windows devices. |
Someday maybe I’ll be able to install and update rsync
with scoop.
For discussion about this, see
Scoop’s
Issue #2897: Free rsync client is available again.
💡 | Scoop includes cwrsync (Cygwin Rsync) and rclone, each of which which might be a decent rsync alternative. |
For some apps that I use, I prefer to go to the app’s website and follow their install instructions.
I tried installing Everything with this:
scoop install everything
And discovered that it was set up to “Run as administrator” rather than to use the “Everything service.” So I uninstalled it with this:
scoop uninstall -p everything
And then installed it the traditional way, which has saner defaults (IMHO) and allowed my to specify my preferred options.
I prefer to install Git by going to gitforwindows.org, getting the installer, and choosing the install options that I prefer. I wrote about this in the Managing section of Infinite Ink’s Git Bash Is My Preferred Windows Shell.
For more about Windows, see Infinite Ink’s…
scoop.ps1
for PowerShell, scoop.cmd
for CMD, and scoop
for Bourne Shell (which is part of Git Bash). Which shim is invoked depends on which Windows command-line shell you are using.@nm@mathstodon.xyz
or
#InfiniteInk
in it.