Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Parallelisation of downloads and installations #2

Open
Bios-Marcel opened this issue Nov 12, 2023 · 1 comment
Open

Parallelisation of downloads and installations #2

Bios-Marcel opened this issue Nov 12, 2023 · 1 comment
Labels
enhancement New feature or request

Comments

@Bios-Marcel
Copy link
Owner

Scoop currently downloads and installs apps sequentually, for example:

download gimp to cache
install gimp
download tea to cache
install tea

Some apps take really long to download and or install, such as gimp. This however prevents other apps from being downloaded / installed during that time. While you usually don't install multiple apps at once, it becomes worth it once you do a scoop update *.

I am currently trying to write a first POC version, however, it seems invoking scoop install after each spoon download (effectively), will not actually be very fast, as the wrapper-calls to scoop aren't fast.

Therefore we'll first need to create full reimplementations of the actuall uninstalling, installing and updating process.

Additionally we need to implement hash-checking after downloads.

Dependencies also need to be handled. So that deps are downloaded first. Especially since deps could technically alreadz be invoked during installation.

@Bios-Marcel
Copy link
Owner Author

While the current WIP of installations already parallelised downloading and extracting, this is only in the context of a single application. We can potentially redesign the API in a way that this automatically handles multiple applications with pretty much the same code though.

@Bios-Marcel Bios-Marcel added the enhancement New feature or request label Apr 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant