The program that I am creating requires additional files (templates, config files) that aren't Rust source files, and therefore aren't included in a crates.io crate. However, these files are necessary for every install. What's the best way to make it so that these files are in each install? I thought maybe I could put them in a repo and make people clone it when installing, but I feel like there should be an easier way.
cargo install is not a general-purpose installation tool — it is limited to only installing executables, and its main use case is installing development tools for Rust developers. (While other files can be included in a Cargo package, there is no guarantee the package will stay on the system.)
For applications that need additional files, or which will be used by people who are not Rust developers, you should instead create packages for the package management system(s) already used by your users.
You mean you download a complete installation package from crates.io? I thought that the resource for crates only. I use just zip to combine all resources required for installing my app.
cargo install is only able to uninstall the single executable it has installed. If you create anything else yourself, it will leave untracked files on user's system.
I completely understand, but the good thing about crates.io is that it's the universal registry for Rust packages. I've never released actual packages for package management systems, so I don't really know where to start. Is there a widely-accepted place to publish .deb packages?
Thanks.