cargo-deb VS cargo-release

Compare cargo-deb vs cargo-release and see what are their differences.

cargo-deb

A cargo subcommand that generates Debian packages from information in Cargo.toml (by mmstick)

cargo-release

Cargo subcommand `release`: everything about releasing a rust crate. (by crate-ci)
Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
cargo-deb cargo-release
7 11
629 1,244
- 2.3%
1.1 9.1
over 2 years ago 11 days ago
Rust Rust
MIT License Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

cargo-deb

Posts with mentions or reviews of cargo-deb. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-07.
  • GitUI
    5 projects | news.ycombinator.com | 7 Jan 2024
    I mean, there's tools that make it easy to make a .deb https://crates.io/crates/cargo-deb

    The Rust Project itself had put a lot of work into making sure that Rust and Rust-using programs could get into Debian by working with Debian folks to address issues.

    I suspect that you've run into an anecdotal pattern, but I'm not sure that it is more than that.

  • What are some useful tools for Rust?
    10 projects | /r/rust | 3 May 2023
    I use Cargo deb to create Debian / Ubuntu / ... package files.
  • Introducing runst: A dead simple notification daemon written in Rust
    6 projects | /r/rust | 5 Mar 2023
    As a suggestion if you want to get a lot of users you could make a .deb file that packages the binary and a systemd service file. Using cargo-deb it's pretty trivial, the hardest part would be writing your systemd service file and you can probably just copy the dunst.service file with minimal modification:
  • How can I codesign executables for different platforms?
    1 project | /r/rust | 14 Feb 2023
  • Have you guys tried cargo-deb? Amazing!
    3 projects | /r/rust | 17 May 2022
    https://crates.io/crates/cargo-deb https://github.com/kornelski/cargo-deb
  • Rustup, Cargo, Rustc??
    2 projects | /r/rust | 1 Mar 2021
    cargo install does provide different options to change the installation dir (https://doc.rust-lang.org/cargo/commands/cargo-install.html) but I am uncertain, if there could be accociated issues. An alternative could be tools like https://github.com/mmstick/cargo-deb or https://github.com/iqlusioninc/cargo-rpm that can automatically create packages which can be used for a proper installation /usr/bin/ using your distributions packaging system.
  • Debian Discusses Vendoring–Again
    5 projects | news.ycombinator.com | 13 Jan 2021
    Cargo already has one: https://crates.io/crates/cargo-deb

cargo-release

Posts with mentions or reviews of cargo-release. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-23.
  • Changelog-Driven Releases
    5 projects | news.ycombinator.com | 23 Apr 2024
    My problem with maintaining a changelog during development is it can serve as a source of merge conflicts. Instead, I follow Covnentional Commit style and manually write my changelog entries based on the commits. I have a tool [0] that can show me the relevant commits for a package in my repo and automates the entire release process, including doing sanity checks.

    I also feel like releasing from CI is hard, especially if you have multiple packages in a repo [1], including

    - You can't as easily introspect the process

    - You can't as easily recover from failure

    - Getting a lot of the nuance right, like handling releases concurrent to merging of PRs, is difficult

    - When the workflow is an ever-present "release PR" that you merge when ready has issues with selecting which packages to release and at what version

    I have been considering making a tool to generate changelogs from fragments. Been keeping notes at https://github.com/epage/epage.github.io/issues/23

    [0]: https://github.com/crate-ci/cargo-release

    [1]: https://github.com/MarcoIeni/release-plz/discussions/1019

  • Oxlint – written in Rust – 50-100 Times Faster than ESLint
    13 projects | news.ycombinator.com | 15 Dec 2023
    You should combine step 1 and 2 with CI. Just tag a version in your git, push to remote and have CI auto build a release for you.

    Use github actions or other setup for other backends.

    Or go nuts with cargo-release.

    https://github.com/crate-ci/cargo-release

    https://github.com/cargo-bins/release-pr

  • Rust 2030 Christmas list: Subcrate dependencies
    6 projects | /r/rust | 24 Jan 2023
    tools like cargo-release
  • `toml` vs `toml_edit` (ie `toml` 0.6 is out)
    5 projects | /r/rust | 23 Jan 2023
    Just to check, are you aware of cargo-edit's cargo-set-version or cargo-release?
  • What's everyone working on this week (45/2022)?
    9 projects | /r/rust | 7 Nov 2022
    I released my first crate that provides a derive macro to easily obtain a name of a current variant in an enum as a string. I did it mostly to learn about procedural macros and the process of releasing a crate. I then found out there is strum which does this and much more. Nonetheless, I learned a lot and I found couple of nice tools like ```cargo-release and git-cliff.
  • cargo-release v0.22 is out!
    1 project | /r/rust | 21 Oct 2022
  • A GitHub Action for creating "Release PRs" for Cargo projects.
    3 projects | /r/rust | 5 Sep 2022
    I'll note there is an issue in the cargo-release repo where this kind of workflow is wanted. https://github.com/crate-ci/cargo-release/issues/119
  • [Gitoxide December Update]: a new object database and upcoming multi-pack index support
    5 projects | /r/rust | 21 Jan 2022
    cargo-release is on about the same level of features used
  • cargo-release v0.19
    1 project | /r/rust | 7 Jan 2022
    cargo-release automates the release process for your crate. For example, with clap, all I do is add entries to the CHANGELOG and run cargo release patch and cargo-release takes care of updating files, publishing to crates.io, tagging, and pushing.
  • Introducing `cargo smart-release` - the new way to release workspace crates
    3 projects | /r/rust | 13 Aug 2021
    Yes, developers from all three tools were sharing ideas with each other recently

What are some alternatives?

When comparing cargo-deb and cargo-release you can also consider the following projects:

cargo-update - A cargo subcommand for checking and applying updates to installed executables

Rustup - The Rust toolchain installer

cargo-ebuild - cargo extension that can generate ebuilds using the in-tree eclasses

just - 🤖 Just a command runner

cargo-make - Rust task runner and build tool.

Clippy - A bunch of lints to catch common mistakes and improve your Rust code. Book: https://doc.rust-lang.org/clippy/

rustfmt - Format Rust code

cargo-modules - Visualize/analyze a Rust crate's internal structure