Some packages install in under a minute, while alternatives which seem functionally similar, take hours.

Sometimes there are several available options to fit a use case and I would like to use it now. Is it possible to anticipate which one will likely be the fastest to get rolling?

Generally I like to install via yay.

Searching around here is what I learned. Agree?:

  • AUR will be slower
  • Certain categories of package, like web browser, are inherently slow
  • Selecting -bin will be faster if available

Is there some way to guess beyond that? Certain programing languages take longer than others? Is it in relationship to existing packages on the system? Other characteristic? Some kind of dry-run feature to estimate?

Obviously I don’t have the fastest computer. I have added MAKEFLAGS="-j4" to /etc/makepkg.conf so at least all 4 cores can get used.

Once I realize a package is going to take ages to get ready, is it possible to safely intervene to stop the process? I try to avoid it because in general I understand arch-based distros don’t like “partial” installs. But is it safe to stop compiling? No changes have yet been made, right?

  • @[email protected]
    link
    fedilink
    12
    edit-2
    4 months ago

    It depends on many things. The webbrowser thing is just because of the size of the package.

    AUR is not necessarily slower. It depends on if you have to compile it or not, size of build dependencies…

    There are too many variables.

    If you install AUR things with yay or paru… It’s pretty safe to just Ctrl+C once. It should clean everything up.

    In any case, yes, the *-bin packages generally are pre-compiled, so someone else has done the effort already, so your install is just way faster.

  • @ClipperDefiance
    link
    English
    64 months ago

    In my experience larger packages (in terms of file space requirements) install slower, but download speed is a factor there too.

    Cancelling compilation is safe to my knowledge. No changes were made as you stated. Just remember that the downloaded files will probably still be in your cache afterwards, so you may want to remove that with paccache.

    You mention “partial installs,” but the actual issue is partial upgrades. A partial upgrade is when you don’t upgrade the entire system, but only one or more packages. A partial install isn’t really a term people use, but could probably refer to installing a package without its dependencies being installed.

    • @[email protected]OP
      link
      fedilink
      24 months ago

      Ya you’re right I am thinking “partial upgrade”; I just thought the concept might generalize.

      I guess the worst that could happen with a partial install would be some deps installed in the system but then not actually required.

  • @[email protected]
    link
    fedilink
    64 months ago

    Once I realize a package is going to take ages to get ready, is it possible to safely intervene to stop the process? I try to avoid it because in general I understand arch-based distros don’t like “partial” installs. But is it safe to stop compiling? No changes have yet been made, right?

    AUR helper do that user friendly, just cancel the process with CTRL-C
    the package gets installed only at the END of the compilation

    compiling manually (no PKGBUILD or AUR helper) will be different, especially if don’t build a package first
    things like make install usually don’t and can leave a mess

  • 柊 つかさ
    link
    34 months ago

    The biggest difference will be between binary packages and packages that compile from source. Yes, big binary packages like browsers take longer but it really doesn’t take that long. You should be able to quit the compilation without problems. Only after the compilation is done will the package manager be invoked to install the resulting binary.

  • @node815
    link
    English
    24 months ago

    My biggest issue with YAY is the occasional mandatory compiling of an app seemingly randomly, so I go in thinking a quick update will turn into a much slower one because of the compiling it does. I haven’t looked into it, but if there was a way to alert before doing this via a flag, it’d save me time and sometimes frustration.

    I have learned over the years to try to install the -bin version as much as possible, but sometimes that’s not enough if flagged out of date (Joplin especially), so I sometimes end up installing the appimage.