Skip to content

Utilities

Other essential utilities to have parity with Linux systems.

Curl

Curl is installed as a Component on Windows by default. You can verify its installation

powershell
which curl

Make

  1. Download the following, and save them in the Downloads directory:

  2. Extract them

    powershell
    7z x -y ~/Downloads/libintl-0.14.4-bin.zip "-o$HOME/dotbin/extra/portable/libintl-0.14.4"
    7z x -y ~/Downloads/libiconv-1.9.2-1-bin.zip "-o$HOME/dotbin/extra/portable/libiconv-1.9.2-1"
    7z x -y ~/Downloads/make-3.81-bin.zip "-o$HOME/dotbin/extra/portable/make-3.81"
  3. Configure link

    powershell
    Add-Content -Path ~\dotbin\extra\portable\link -Value "libiconv-*/bin/*`nlibintl-*/bin/*`nmake-*/bin/*"
    sudo dotbin-link
  4. Verify installation

    powershell
    make --version

Sed

WARNING

Make sure libiconv and libintl are setup as shown above

  1. Download the following, and save them in the Downloads directory:
  2. Extract them
    powershell
    7z x -y ~/Downloads/regex-2.7-bin.zip "-o$HOME/dotbin/extra/portable/regex-2.7"
    7z x -y ~/Downloads/sed-4.2.1-bin.zip "-o$HOME/dotbin/extra/portable/sed-4.2.1"
  3. Configure link
    powershell
    Add-Content -Path ~\dotbin\extra\portable\link -Value "regex-*/bin/*`nsed-*/bin/sed.exe"
    sudo dotbin-link
  4. Verify installation
    powershell
    sed --version

GnuPG

You will need this for verifying signatures of downloaded files.

  1. Download and launch the installer from https://www.gnupg.org/download/index.html
  2. Copy the installation to dotbin
    powershell
    cp -r "C:\Program Files (x86)\gnupg" ~/dotbin/extra/portable/gnupg
    rm ~/dotbin/extra/portable/gnupg/gnupg-uninstall.exe
  3. Remove GnuPG from the PATH environment variable
    powershell
    $path = [System.Environment]::GetEnvironmentVariable("PATH", "Machine")
    $path = $path | sed -r 's/C:\\Program Files \(x86\)\\gnupg\\bin//' | sed 's/;;/;/' | sed 's/;;/;/'
    sudo pwsh -c{[System.Environment]::SetEnvironmentVariable("PATH", $path, "Machine")}
    $path = [System.Environment]::GetEnvironmentVariable("PATH", "User")
    $path = $path | sed -r 's/C:\\Program Files \(x86\)\\gnupg\\bin//' | sed 's/;;/;/' | sed 's/;;/;/'
    [System.Environment]::SetEnvironmentVariable("PATH", $path, "User")
  4. Configure link
    powershell
    Add-Content -Path ~\dotbin\extra\portable\link -Value "gnupg/bin/*.dll`ngnupg/bin/gpg.exe"
    sudo dotbin-link
  5. Uninstall GnuPG from the system by going into Windows Settings

WARNING

After restarting the shell, verify installation with

powershell
which gpg
gpg --version

Wget

powershell
curl -o ~/dotbin/extra/bin/wget.exe https://eternallybored.org/misc/wget/1.21.4/64/wget.exe

Verify installation

powershell
wget --version

Gzip

TIP

7z only supports archiving with gzip, not pure compression/decompression

  1. Download gzip-1.3.12-1-bin.zip from https://gnuwin32.sourceforge.net/packages/gzip.htm
  2. Extract it
    powershell
    7z x -y ~/Downloads/gzip-1.3.12-1-bin.zip "-o$HOME/dotbin/extra/portable/gzip-1.3.12-1"
  3. Configure link
    powershell
    Add-Content -Path ~\dotbin\extra\portable\link -Value "gzip-*/bin/gzip.exe"
    sudo dotbin-link
  4. Verify installation
    powershell
    gzip --version