kimono-koans / httm

Interactive, file-level Time Machine-like tool for ZFS/btrfs/nilfs2 (and even Time Machine and Restic backups!)
https://crates.io/crates/httm
Mozilla Public License 2.0
1.36k stars 29 forks source link

.deb packages provided cannot install on Ubuntu 20.04 #45

Closed jimsalterjrs closed 2 years ago

jimsalterjrs commented 2 years ago

I tried using the provided .deb packages on an Ubuntu 20.04 server; neither the 0.13.0 nor 0.12.11 packages could be installed due to version conflict with libc.

dpkg: dependency problems prevent configuration of httm:
 httm depends on libc6 (>= 2.34); however:
  Version of libc6:amd64 on system is 2.31-0ubuntu9.9.

When built directly from the packaged source, 0.12.11 worked fine; the method I used was downloading the source from the 0.12.11 release, apt install cargo, then cargo deb followed by dpkg -i on the freshly built local package.

kimono-koans commented 2 years ago

Yes, this again seems to be an issue related to me trying to keep things simple for me. Perhaps too simple. See my comment re: CI/CD in your other issue. Note, your issue is related to: https://github.com/kimono-koans/httm/issues/17 , and is mentioned in the README as well: https://github.com/kimono-koans/httm#caveats

I build against the latest LTS Ubuntu (that is -- 22.04) and MacOS, and the latest stable Rust. Even without CI/CD or GH actions, maybe the answer is to just build using the previous version of Ubuntu in a container, and a moderately lower Rust MSV (1.59 seems to be the default for all Ubuntu) everywhere. It may even be time to consider using the musl toolchain to build if that provides a more stable platform.

Thanks! Lots of food for thought about how best to address. I'm going to spend some time with it and think about best paths forward.

jimsalterjrs commented 2 years ago

The first question that leaps to mind for me is whether the newer libc is really necessary, or whether the deb simply is a bit too picky about the dependency version.

Just relaxing the version necessary to satisfy the stated dependency might be all that's necessary, if rust/httm doesn't genuinely require some new feature not present in the slightly older libc in 20.04.

kimono-koans commented 2 years ago

I'm closing these both, as I'm now using a GH action to build both Redhat and Debian packages on Ubuntu 18.04. Should work on most distros now.

See: https://github.com/kimono-koans/httm/blob/master/.github/workflows/package-build.yml

Feel free to reopen if you you think additional comments are necessary. Thanks Jim!