Racket Package Manager

What Racket Package Manager is
Racket Package Manager is a free tool for installing and maintaining Racket libraries and collections on Windows, macOS, and Linux. Its package catalog gives programmers a central directory of available packages. Sources include catalog names, ZIP, TAR, TGZ, TAR.GZ, and PLT archives, local directories, Git repositories, and GitHub repositories; GitLab and Bitbucket can work when their servers support HTTP(S) or native Git. The raco pkg command and graphical interfaces in DrRacket or gui-pkg-manager provide the same management operations. Dependencies can be prompted for or installed automatically with --auto, and offline installation is supported. Packages can be updated individually or with --all. User-specific and installation-wide scopes are available. The tool also creates package skeletons, archives packages, and supports deployment. Package authors can publish through the PLT catalog after creating an account.
Who it suits
This manager suits Racket programmers installing libraries and authors distributing packages. It is useful when packages come from catalogs, archives, local folders, or Git services.
What it does well
- Free plan
- Dependency resolution
- Offline installation
- Graphical and command-line interfaces
- Multiple archive and Git sources
What to know first
- Compiled bytecode depends on Racket version
- Binary packages may obscure source access
- Package removal may require force
Verdict
Racket Package Manager offers broad source support, dependency handling, offline installation, and both graphical and command-line workflows. Its version-specific bytecode compatibility is an important consideration when choosing binary packages.
Facts from Racket Package Manager's own pages
- Command line
- The raco pkg command provides package-management subcommands, and the graphical interface allows the same operations. · docs.racket-lang.org, 11 Oct 2026
- Compatibility limit
- Compiled bytecode in a binary package is specific to a Racket version, and the package source may be less immediately accessible to programmers. · docs.racket-lang.org, 11 Oct 2026
- Dependencies
- During installation, raco pkg can prompt to install missing dependencies or install them automatically with the --auto option. · docs.racket-lang.org, 11 Oct 2026
- Dependency resolution
- Yes · docs.racket-lang.org, 21 Sept 2026
- Find packages
- The PLT package catalog provides a centralized listing of available Racket packages. · docs.racket-lang.org, 11 Oct 2026
- Free plan
- Yes · docs.racket-lang.org, 21 Sept 2026
- Git integration
- The documentation describes deploying packages from GitHub and says other Git repository services, including GitLab and Bitbucket, can work when their servers support HTTP(S) or native Git. · docs.racket-lang.org, 11 Oct 2026
- Git integrations
- GitHub, GitLab, and Bitbucket repositories can serve as package sources when the repository server supports HTTP(S) or the native Git protocol. · docs.racket-lang.org, 11 Oct 2026
- Graphical interface
- The package manager has a graphical interface accessible through DrRacket’s File menu or through the gui-pkg-manager application. · docs.racket-lang.org, 11 Oct 2026
- Install sources
- Packages can be installed from a catalog name, a zip or tar file, a Git repository, or other package sources. · docs.racket-lang.org, 11 Oct 2026
- Intended users
- The package manager is for Racket users who install libraries and for package authors who publish them for other programmers to find. · docs.racket-lang.org, 11 Oct 2026
- Interfaces
- Package management is available through a graphical interface and the raco pkg command-line tool. · docs.racket-lang.org, 11 Oct 2026
- Minimal distribution
- Minimal Racket includes enough of Racket to use raco pkg to install additional packages. · download.racket-lang.org, 11 Oct 2026
- Offline installation
- Yes · docs.racket-lang.org, 21 Sept 2026
- Package authoring
- The raco pkg tool can create a package skeleton, archive packages, and support package deployment. · docs.racket-lang.org, 11 Oct 2026
- Package formats
- Packages can provide source, compiled bytecode, rendered documentation, or combinations of source and compiled elements. · docs.racket-lang.org, 11 Oct 2026
- Package publishing
- To list a package in the PLT catalog, a publisher must create an account and log in; the catalog periodically checks the designated source for updates. · docs.racket-lang.org, 11 Oct 2026
- Package removal limit
- The raco pkg remove command will not remove a package that other installed packages depend on unless removal is forced. · docs.racket-lang.org, 11 Oct 2026
- Purpose
- The package manager installs libraries and collections, and the package catalog helps Racket programmers find libraries. · docs.racket-lang.org, 11 Oct 2026
- Scopes
- Packages can be installed in user-specific or installation-wide scopes, and the default setup is generally user- and Racket-installation-specific. · docs.racket-lang.org, 11 Oct 2026
- Security
- The documentation describes package checksums for identifying implementations; its future-plans page says public-key encryption for catalog information would be desirable. · docs.racket-lang.org, 11 Oct 2026
- Supported desktop platforms
- The download page lists installers for Windows x64 and Arm, Mac OS Intel and Apple Silicon, and several Linux architectures. · download.racket-lang.org, 11 Oct 2026
- Supported platforms
- Windows,macOS,Linux · docs.racket-lang.org, 21 Sept 2026
- Supported systems
- Racket installers are listed for Windows, Mac OS, and Linux, with several processor architectures available. · racket-lang.org, 11 Oct 2026
Where Racket Package Manager stands on Freedom251
- Package Managers#61 of 93