vsx

command module
v0.3.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 9, 2025 License: MIT Imports: 16 Imported by: 0

README

Overview

vsix is a basic CLI tool to facilitate VS Code .vsix package downloads from a VSCode Extension Gallery service.

Quickstart

Install VSX

Via go install
go install github.com/illbjorn/vsx@latest
From Releases
TODO
export VSX_HOST="example.gallery.com"

Install a package

Locate your package identifier. This is the bit following ext install in the auto-generated install snippet in the standard Microsoft Gallery (example).

vsx install modular-mojotools.vscode-mojo

Download a Package

vsx download -o mojo.vsix modular-mojotools.vscode-mojo

Usage

>> Overview

  VSX is a simple (in-progress) command-line VSCode extension manager.

  To get off the ground quickly, refer to the quickstart:
  https://github.com/illbjorn/vsx

>> Usage

  vsx [install [EXTENSION] | download [EXTENSION] | query [TERMS]] [FLAGS] 
                ┗━━━┳━━━┛              ┗━━━┳━━━┛
                    ┃                      ┃
  ┏━━━━━━━━━━━━━━━━━┻━━━━━━━━━━━━━━━━━━━━━━┛
  ┃ Example
  ┣━
  ┃ [email protected]
  ┣━
  ┃ usernamehw -> Extension Publisher
  ┃  errorlens -> Extension ID
  ┃    @3.26.0 -> Optional, allows specific version extension installation
  ┃               If not provided, a default of 'latest' will be used
  ┗━

>> Commands

   install   Download an extension and install it.
   download  Download the extension and output the .vsix file to disk.
   query     Query the extension catalog.

>> Flags

  --extension-dir, -xd  The local file path to your
                        '.vscode/extensions' directory.
                        Default:
                        1. ~/.vscode-oss/extensions
                        2. ~/.vscode/extensions
  --gallery-scheme      The URI scheme for requests to the Gallery
                        ('HTTP' or 'HTTPS').
                        Default: HTTPS
  --gallery-host        The hostname of the extension Gallery
                        (example: my.gallery.com).
  --output,        -o   If the command provided is 'download', '--output' is 
                        where the .vsix package will be saved. 
                        Default: './[publisherID]-[extensionID].[version].vsix'
  --debug,         -d   Enables additional logging for troubleshooting
                        purposes.

>> Environment Variables

  To avoid giant run-on commands, VSX supports environment variables for the
  primary values required by every command.

  ┏━
  ┃ NOTE: Provided flag values will supersede values identified in the
  ┃ environment!
  ┗━

  VSX_GALLERY_HOST    The hostname of the extension Gallery (example:
                      my.gallery.com).
                      Flag: --gallery-host

  VSX_GALLERY_SCHEME  The URI scheme for requests to the Gallery ('HTTP' or
                      'HTTPS').
                      Flag: --gallery-scheme

  VSX_EXTENSION_DIR   The local file path to your '.vscode/extensions'
                      directory.
                      Flag: --extension-dir, -xd

TODO

- TODO: Implement signature verification of downloaded VSIX files (PKCS #1 / v1.5)
- TODO: Implement `config` subcommand to manually persist configuration values
- TODO: Implement `update` subcommand
- TODO: Implement `backup` and `restore` subcommands
- TODO: Implement `list` subcommand
- TODO: Implement timeout support (init contexts, pass with timeout to CMD handlers)

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL