this post was submitted on 03 Feb 2026
12 points (92.9% liked)

Rust

7730 readers
83 users here now

Welcome to the Rust community! This is a place to discuss about the Rust programming language.

Wormhole

!performance@programming.dev

Credits

  • The icon is a modified version of the official rust logo (changing the colors to a gradient and black background)

founded 2 years ago
MODERATORS
 

Supac is a declarative package manager written in Rust fully scriptable in nushell. It's meant to make it easy to use the native package managers in existing distros without going through the associated headaches of using Nix, while maintaining the ergonomics of structured data in nushell.

Currently supported backends are:

  • Archlinux and derivatives
  • flatpak
  • cargo/cargo-binstall
  • uvx (packages only for now)
  • rustup toolchains

I daily drive it, and it works well. Feel free to give it a try!

top 4 comments
sorted by: hot top controversial new old
[–] _hovi_@lemmy.world 2 points 9 hours ago (1 children)

Very cool. This one has piqued my interest more than dcli. I'll be checking it out when I get the chance

[–] innocentz3r0@programming.dev 1 points 7 hours ago

Dcli looks interesting! The long term goal of supac is to support many different relevant package managers as backends, so that all sorts of packages and language toolchains can be managed. Besides, nushell being a scripting AND shell language massively helps with that.

[–] ctrl_alt_esc@lemmy.ml 2 points 11 hours ago (1 children)

This is kinda like mise but also works with your distro's package manager?

[–] innocentz3r0@programming.dev 5 points 10 hours ago

From what I understand (I've never used mise), mise is meant for programming environments and tools. Supac works with your distribution's package manager to manage all your system packages and also language toolchains like rustup and uvx (uvx backend doesn't manage toolchains yet, it's being developed though).

What it doesn't manage are programming environments, basically, you cannot use it to spawn something like a nix devshell. Hope it makes sense. This is more meant to be along the lines of something like nix, but friendlier and easier.