Open Source command line client of VRChat Package Manager.

Overview

vrc-get

Open Source command line client of VRChat Package Manager.

Goals

  • Provide Open Source command line client of VRChat Package Manager.
  • Provide more functionality than official vpm command.

Commands

For more details, please see --help

  • vrc-get install [pkg] [version] (with alias vrc-get i [pkg] [version])
  • vrc-get remove [pkg] (with alias vrc-get rm [pkg])
  • vrc-get outdated
  • vrc-get upgrade [pkg] [version]
  • vrc-get repo list
  • vrc-get repo add <url> [NAME]
  • vrc-get repo remove <name or url>
  • vrc-get repo cleanup
  • vrc-get repo packages <NAME|url>

Installation

Using cargo

If you have cargo, installing using cargo is the easiest way to install vrc-get.

cargo install --locked --git https://github.com/anatawa12/vrc-get.git --tag <version>

Prebuilt binaries

There's prebuilt binaries on the release page.

Download executable file for your platform and place to everywhere you want. There's no additional requirements for thise binaries. All binaries are compiled statically as possible.

For linux, it's a actually static linked executable.

For windows, only bcrypt.dll, ntdll.dll, kernel32.dll, advapi32.dll, ws2_32.dll, secur32.dll, and crypt32.dll, which is builtin dlls, are dynamically linked.

For macOS, only Security.framework, CoreFoundation.framework, libiconv.2.dylibs, and libSystem.B.dylibs, which are macOS-builtin dylibs, are dynamically linked.

For GitHub Actions

To use this tool to resolve(install) vpm dependencies, you can use anatawa12/sh-actions/resolve-vpm-packages@master.

To use other commands, you can install vpm-get via anatawa12/sh-actions/setup-vrc-get@master.

For more details, please see README for each action.

Comments
  • use sha file to avoid name conflict

    use sha file to avoid name conflict

    The official VPM looks to use server requested file name as cache file name. that may make incorrect version name for cached packages. so I want to use custom name for zip file, create sha file, and verify the contents is not changed since last download by vrc-get.

    opened by anatawa12 1
  • chore(deps): bump clap from 4.1.1 to 4.1.3

    chore(deps): bump clap from 4.1.1 to 4.1.3

    Bumps clap from 4.1.1 to 4.1.3.

    Release notes

    Sourced from clap's releases.

    v4.1.3

    [4.1.3] - 2023-01-23

    Fixes

    • (error) Improve suggested flag/value/subcommand when two share a long preifx
    • (error) When suggesting one of several subcommands, use the plural subcommands, rather than subcommand

    v4.1.2

    [4.1.2] - 2023-01-23

    Fixes

    • In documentation, refer to get_flag, rather than get_one::<bool>
    Changelog

    Sourced from clap's changelog.

    [4.1.3] - 2023-01-23

    Fixes

    • (error) Improve suggested flag/value/subcommand when two share a long preifx
    • (error) When suggesting one of several subcommands, use the plural subcommands, rather than subcommand

    [4.1.2] - 2023-01-23

    Fixes

    • In documentation, refer to get_flag, rather than get_one::<bool>
    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.

    Dependabot will merge this PR once it's up-to-date and CI passes on it, as requested by @anatawa12.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Change goals and rename project

    Change goals and rename project

    The official vpm command is actually cli interface of vcc. So, I’m changing the goal of this project from “open source reimplementation of vpm command“ to “alternative VRChat Package Manager client”. To do that, I need to rename project to aboid command name conflict.

    opened by anatawa12 1
  • chore(deps): bump tokio from 1.24.2 to 1.25.0

    chore(deps): bump tokio from 1.24.2 to 1.25.0

    Bumps tokio from 1.24.2 to 1.25.0.

    Release notes

    Sourced from tokio's releases.

    Tokio v1.25.0

    1.25.0 (January 28, 2023)

    Fixed

    • rt: fix runtime metrics reporting (#5330)

    Added

    • sync: add broadcast::Sender::len (#5343)

    Changed

    • fs: increase maximum read buffer size to 2MiB (#5397)

    #5330: tokio-rs/tokio#5330 #5343: tokio-rs/tokio#5343 #5397: tokio-rs/tokio#5397

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • chore(deps): bump clap from 4.1.3 to 4.1.4

    chore(deps): bump clap from 4.1.3 to 4.1.4

    Bumps clap from 4.1.3 to 4.1.4.

    Release notes

    Sourced from clap's releases.

    v4.1.4

    [4.1.4] - 2023-01-24

    Fixes

    • (help) Respect disable_colored_help when using arg_required_else_help

    Performance

    • Speed up compiling arg! macro
    Changelog

    Sourced from clap's changelog.

    [4.1.4] - 2023-01-24

    Fixes

    • (help) Respect disable_colored_help when using arg_required_else_help

    Performance

    • Speed up compiling arg! macro
    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Tracking Issue: VCC supports for User Repos

    Tracking Issue: VCC supports for User Repos

    Official VCC Currently doesn't support User Repos. VCC CLI supports User Repos but it's buggy. So I want to track official supports.

    Questions:

    • [ ] Will VCC have repository definitions in vpm-manifest.json?
    opened by anatawa12 0
Releases(0.1.4)
Owner
other handle name: Kakerigawa Shou(翳河翔). I'm a Japanese. Please call me 'anatawa12'. Please do not use 'Kakerigawa Shou' to refer me.
null
Oso is an open source policy engine for authorization that’s embedded in your application

Oso What is Oso? Oso is an open source policy engine for authorization that’s embedded in your application. It provides a declarative policy language

oso 2.8k Jan 4, 2023
Jotsy is a self-hosted, free and open-source note taking app with a goal of simplicity in mind

Jotsy: Just your notes Jotsy is a self-hosted, free and open-source note taking app with a goal of simplicity in mind. It is powered by Skytable. Read

Sayan 433 Dec 30, 2022
Rust Open Source Login/Register API

Actix Web API with Rustls (OpenSSL available/Without SSL/TLS too) This API uses Actix Web to serve secure HTTP endpoints, utilizing Rustls for TLS enc

Alzareim 4 Sep 27, 2023
A cookie manager middleware built on top of tower.

tower-cookies A cookie manager middleware built on top of tower. Example With axum: use axum::{handler::get, Router}; use std::net::SocketAddr; use to

Imbolc 47 Dec 9, 2022
Search Confluence from Alfred and open results in your browser.

Alfred Confluence Workflow Search Confluence from Alfred and open results in your browser. Features Search Confluence from Alfred and open results in

Johan M. 26 Nov 7, 2022
Rust / Wasm framework for building client web apps

Yew Rust / Wasm client web app framework Documentation (stable) | Documentation (latest) | Examples | Changelog | Roadmap | 简体中文文档 | 繁體中文文檔 | ドキュメント A

Yew Stack 25.8k Jan 2, 2023
WIP: A Rust client for caniuse.com

caniuse-rs A Rust client for caniuse.com. It pulls data from caniuse.com and caches it locally, in a transformed JSON structure that is easier to reas

Mat Jones 3 Mar 3, 2022
A blazingly fast HTTP client with a magnificent request building syntax, made for humans.

?? glue Make requests, select JSON responses, nest them in other requests: A magnificent syntax for blazingly fast cli HTTP calls, made for humans. Ta

Michele Esposito 4 Dec 7, 2022
Rust/Axum server implementation with PCR(Prisma Client Rust)

Realworld Rust Axum Prisma This project utilizes Rust with the Axum v0.7 framework along with the Prisma Client Rust to build a realworld application.

Neo 3 Dec 9, 2023
H2O Open Source Kubernetes operator and a command-line tool to ease deployment (and undeployment) of H2O open-source machine learning platform H2O-3 to Kubernetes.

H2O Kubernetes Repository with official tools to aid the deployment of H2O Machine Learning platform to Kubernetes. There are two essential tools to b

H2O.ai 16 Nov 12, 2022
Gecko's trusty package manager and command-line utility.

Geckos have super-powers, ya'know? Grip is Gecko's trusty package manager and command-line utility. USAGE: grip [FLAGS] [file] [SUBCOMMAND] FLAGS

Gecko 2 Jan 3, 2022
A command line tool written in Rust and designed to be a modern build tool + package manager for C/C++ projects.

CCake CCake is a command line tool written in Rust and designed to be a modern build tool + package manager for C/C++ projects. Goals To be easily und

Boston Vanseghi 4 Oct 24, 2022
Elemental System Designs is an open source project to document system architecture design of popular apps and open source projects that we want to study

Elemental System Designs is an open source project to document system architecture design of popular apps and open source projects that we want to study

Jason Shin 9 Apr 10, 2022
Open Protocol Indexer, OPI, is the best-in-slot open-source indexing client for meta-protocols on Bitcoin.

OPI - Open Protocol Indexer Open Protocol Indexer, OPI, is the best-in-slot open-source indexing client for meta-protocols on Bitcoin. OPI uses a fork

Best in Slot 33 Dec 16, 2023
A blazing fast command line license generator for your open source projects written in Rust🚀

Overview This is a blazing fast ⚡ , command line license generator for your open source projects written in Rust. I know that GitHub

Shoubhit Dash 43 Dec 30, 2022
An open source WCH-Link library/command line tool written in Rust.

wlink - WCH-Link command line tool NOTE: This tool is still in development and not ready for production use. Known Issue: Only support binary firmware

WCH MCU for Rust 22 Mar 7, 2023
An open source artifact manager. Written in Rust back end and an Vue front end to create a fast and modern experience

nitro_repo Nitro Repo is an open source free artifact manager. Written with a Rust back end and a Vue front end to create a fast and modern experience

Wyatt Jacob Herkamp 30 Dec 14, 2022
A Modern, Open Source GTK4 ebook manager powered by Rust.

Bookx An MVP in progress: An ebook reader with .epub support Context menu for each book (delete, rename book, info) On click switch the carousal to th

Anurag Dhadse 12 Dec 28, 2022
ANISE provides an open-source and open-governed library and algorithmic specification for most computations for astrodynamics

ANISE provides an open-source and open-governed library and algorithmic specification for most computations for astrodynamics. It is heavily inspired by NAIF SPICE, and may be considered as an open-source modern rewrite of SPICE.

ANISE 4 Mar 9, 2022