quvyta
Language: English

Linux, macOS and Windows

Install

One line installs any member of the family. It builds the programs from crates.io with cargo, asks before every step and never uses sudo.

curl -fsSL https://raw.githubusercontent.com/quvyta/quvyta/main/install.sh | sh

Without a name it lists the family and lets you choose.

Linux and macOS

Give one or more names to install just those, or all for everything:

curl -fsSL https://raw.githubusercontent.com/quvyta/quvyta/main/install.sh | sh -s -- code
curl -fsSL https://raw.githubusercontent.com/quvyta/quvyta/main/install.sh | sh -s -- code framework

Questions are read from the terminal even though the script arrives through a pipe. With no terminal it changes nothing and only says what it would do. --yes answers every question with yes, and --help explains the options.

What the script does, asking before each step

  1. Rust

    If cargo is missing, it offers to install Rust with rustup, from rustup's own address.

  2. The programs

    It builds the chosen members from crates.io with cargo install.

  3. Your PATH

    If ~/.cargo/bin is not on it, it shows the line it would add to your shell's start-up file (fish, bash or zsh) and adds it only if you agree.

  4. The result

    It lists the commands it installed and says whether a new terminal is needed.

On macOS the PATH line goes to .zprofile or .bash_profile, the Command Line Tools are checked because Rust links with them, and qpac and qtools, which run on Arch Linux only, are skipped.

Names

NameInstallsCommandRuns on
codeqcode, coding agents in containersqcodeLinux; macOS and Windows not yet tried
frameworkthe qframe showcaseqframeLinux, macOS, Windows
focusqfocus, focus trackingqfocusLinux, macOS, Windows
packagesqpac, a package managerqpacArch Linux
toolsqtools, system settingsqtoolsArch Linux
quvytaquvyta, the family's launcherquvytaLinux, macOS, Windows
allevery member this system can run

Each program is also installed under its long name: quvyta-code, quvyta-focus and so on.

Windows

In PowerShell. The second form passes names and options, which the first cannot.

It needs no administrator: Rust comes from rustup, the members from crates.io, and the only setting it writes is your own user PATH, after you agree to the folder it shows. If the Visual Studio C++ Build Tools that Rust links with are missing, it prints the command that installs them and stops. -Help explains the options.

irm https://raw.githubusercontent.com/quvyta/quvyta/main/install.ps1 | iex
& ([scriptblock]::Create((irm https://raw.githubusercontent.com/quvyta/quvyta/main/install.ps1))) code -Yes

Read it first

The script is short and plain. Everything in it lives in functions and runs from the last line, so a download cut short runs nothing at all.

curl -fsSL https://raw.githubusercontent.com/quvyta/quvyta/main/install.sh -o install.sh
less install.sh
sh install.sh

With cargo

Every member is a crate on crates.io. Rust 1.95 or later is required.

If the shell then cannot find the command, add ~/.cargo/bin to your PATH. In fish: fish_add_path ~/.cargo/bin.

cargo install quvyta-code
cargo install quvyta-framework-showcase
cargo install quvyta-focus
cargo install quvyta-packages
cargo install quvyta-tools
cargo install quvyta

The framework, in your own project

cargo add quvyta-framework