[Pkg-rust-maintainers] Need some guidance regarding packaging for Debian

Wolfgang Silbermayr wolfgang at silbermayr.at
Sun Jul 19 07:51:36 BST 2020


On 7/19/20 12:22 AM, Akshat Agarwal wrote:
> Hello everyone I was trying to package Deno for debian using
> `debcargo.conf` and I ran the command `./update.sh deno` but I am
> getting the error
>  ```
> Generate binary crate with default name 'deno', set bin_name to override
> or bin = false to disable.
> Something failed: Cannot represent prerelease part of dependency: notify
> Predicate { op: Compatible, major: 5, minor: Some(0), patch: Some(0),
> pre: [AlphaNumeric("pre"), Numeric(2)] }
> ```
> What could be the problem here?

Hi Akshat,

>From what you describe here, it seems you're working inside a checkout
of the debcargo-conf repository.

You stumble over the problem that we don't allow prerelease
dependencies, such as x.y.z-pre.*.

This behavior can be overridden in the corresponding debcargo.toml file.
Once you ran the command and it failed, you will find that file under
src/<cratename>/debian/debcargo.toml. You want to enter
'allow_prerelease_deps = true' there in the top level, then the package
will be created.

Please keep in mind that you won't get a Debian package with all the
dependencies vendored into it, but instead we need to package all
dependency levels one by one. So you don't have a ready-baked package
after that, but instead when running build.sh it will tell you what deps
it is still missing, so you can continue your work there.

If you want to get an overview of the current state of the dependencies
in Debian, you can use cargo-debstatus[0] for that.

Best regards,
Wolfgang.

--

[0] https://crates.io/crates/cargo-debstatus



More information about the Pkg-rust-maintainers mailing list