[App argentum/ag] Indicating progress while downloading files #8

Closed
opened 2025-05-25 09:10:21 +00:00 by Ponali · 3 comments
Ponali commented 2025-05-25 09:10:21 +00:00 (Migrated from github.com)

When updating Halyde using argentum, it could take a while, so it would be nice to have a way to indicate the current progress while it's happening. This would make it possible to see how far it's close to the end.

For example:

Image

There's some unused space inside of this red rectangle. This could be expanded a bit, to fit something like a percentage (e.g. [69%]) or the number of the file (e.g. 34/42).

It would also be nice for this progress indicator to be customizable. If you are going to use a percentage, like in the example, then a config file could be like such:

local agout = {
  ["download"] = function(fileIdx,fileCount,startTime,fileName)
    print("["..tostring(math.floor(fileIdx/fileCount*100)).."] Downloading "..fileName.."...")
  end
  -- Some other stuff, like "Updating [package]..." or "Installing [package]..." could also be put here in the near future
}

return agout

Where fileIdx is the index of the file, fileCount the amount of files trying to get downloaded, startTime the time where the download started, and fileName the name of the file that is getting downloaded.

Putting the entire download text in charge of a config file will not only make it possible to customize the progress indicator, but also being able to customize the download text with it with something more advanced that the user can craft.

When updating Halyde using argentum, it could take a while, so it would be nice to have a way to indicate the current progress while it's happening. This would make it possible to see how far it's close to the end. For example: ![Image](https://github.com/user-attachments/assets/1b234b7e-b9a0-493e-98ac-c38ce5bbfae3) There's some unused space inside of this red rectangle. This could be expanded a bit, to fit something like a percentage (e.g. `[69%]`) or the number of the file (e.g. `34/42`). It would also be nice for this progress indicator to be customizable. If you are going to use a percentage, like in the example, then a config file could be like such: ``` local agout = { ["download"] = function(fileIdx,fileCount,startTime,fileName) print("["..tostring(math.floor(fileIdx/fileCount*100)).."] Downloading "..fileName.."...") end -- Some other stuff, like "Updating [package]..." or "Installing [package]..." could also be put here in the near future } return agout ``` Where `fileIdx` is the index of the file, `fileCount` the amount of files trying to get downloaded, `startTime` the time where the download started, and `fileName` the name of the file that is getting downloaded. Putting the entire download text in charge of a config file will not only make it possible to customize the progress indicator, but also being able to customize the download text with it with something more advanced that the user can craft.
WahPlus commented 2025-05-25 09:47:13 +00:00 (Migrated from github.com)

I really don't think this is needed. See, the largest RAID in OC would be 12 MiB in size. The average internet download speed is 101.37 Mbps, which is ~12.08 MiB per second. That means that if you were to download a file that would fill the largest RAID available in vanilla OC, it would only take 1 second.

I really don't think this is needed. See, the largest RAID in OC would be 12 MiB in size. The average internet download speed is 101.37 Mbps, which is ~12.08 MiB per second. That means that if you were to download a file that would fill the largest RAID available in vanilla OC, it would only take 1 second.
WahPlus commented 2025-06-19 06:10:32 +00:00 (Migrated from github.com)

I misunderstood what you meant and this feature will likely be implemented.

I misunderstood what you meant and this feature will likely be implemented.
Ponali commented 2025-07-23 16:35:05 +00:00 (Migrated from github.com)

A progress bar has been implemented in Argentum v1.3.0. (5f9995684c)

A progress bar has been implemented in Argentum v1.3.0. (5f9995684c552302a176eb9ee448f1abd14d0ba0)
Sign in to join this conversation.