Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Should we unify the behaviours of depexts installations regarding system database upgrades? #4557

Open
kit-ty-kate opened this issue Feb 22, 2021 · 1 comment

Comments

@kit-ty-kate
Copy link
Member

Currently the behaviours of opam-depext regarding system database upgrades (e.g. apt update on Debian) is completely different accross platforms:

  • On Debian, Alpine, NetBSD, Archlinux, Macports: the installation command does not fetch the packages database
  • On Gentoo: same, but it matters less as Gentoo is a source package manager and stores all the package tree locally
  • On Homebrew, RedHat variants (Fedora, CentOS, …), OpenSUSE: the installation command fetches the package database automatically everytime the package manager decides it's been too long.
  • On FreeBSD and DragonflyBSD(?): the packages database is downloaded every time.
  • On OpenBSD: untested

It could be interesting to unify all these different behaviours in one way or another.
I have no specific opinions about that personally but I'd like to get the discussion going. Here is some pro and cons about unifying in one way or the other:

Make everything download the database every time

  • Pros: No more Download failed, error 404 on m4.1.4.18-5.tar.gz type failures.
  • Cons: Slows everything down 😢 (some distributions can be really slow to sync)

Make everything download the database only when it's been too long

  • Pros: Best of both worlds
  • Cons: Cons of both world 😄 .. on top of being more complicated to maintain

Make everything not download the database

  • Pros: Fast and predicable
  • Cons: More annoying for users of some fast-moving distributions, they have to remember to call opam update --depexts first.

After writing everything down I feel more inclined to the latest with maybe a new opam install -u/--update-depexts for a more streamline way of updating the local database.

@dra27
Copy link
Member

dra27 commented Feb 23, 2021

Another option would be to maintain the current state (some do, some don’t), but expose it as a global option. I would expect that if a user wishes to install with --update-depexts once, they probably want to use it every time (so a setting would be preferable)

@dra27 dra27 added this to the 2.1.1 milestone Mar 12, 2021
@dra27 dra27 removed this from the 2.1.1 milestone Jul 2, 2021
# for free to join this conversation on GitHub. Already have an account? # to comment
Projects
None yet
Development

No branches or pull requests

3 participants