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

[FEATURE REQUEST] Delete files on disk that are not in manifest #49

Open
nutterthanos opened this issue Apr 27, 2022 · 4 comments
Open

Comments

@nutterthanos
Copy link

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Every time i go to use steamctl depot download command, it dosen't seem to delete any files that are not in the manifest that are already on disk unnecessarily taking up disk space.
Describe the solution you'd like
A clear and concise description of what you want to happen.
steamctl actually deleting files on disk that are not in manifest.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
manually deleting all files and redownloading the manifest i want from scratch.

@rossengeorgiev
Copy link
Member

Yes, I agree. The download command simply downloads the files. It doesn't really work as an update.

If we were to delete any files not in the manifests then we might delete files unintentionally. That could be really bad, just like running rm -rf / (DO NOT DO THAT). We could keep a record of the manifest used in the initial download, and then use those to delete any extra files that are no longer present. That would avoid deleting files that are not manifests. However, that will not be compatible with steamcmd or steam client or depotdownloader or any other tool.

A workaround right now is getting a list of extra files with steamctl depot diff --show-extra ... and deleting those files after a download.

@nutterthanos
Copy link
Author

i mean one day we will have a launcher for steam games like legendary.

@rossengeorgiev
Copy link
Member

Seems unlikely since it would require reimplementing Steam's API, integrations, features, and everything. I don't see the point to that. Steam already runs everywhere and has a ton of features.

Legendary makes and similar, simply consolidate a number of smaller stores into one place. EGS client is slow and buggy, barely has any features, games have no integrations, so another client works and makes sense.

@nutterthanos
Copy link
Author

Yes, I agree. The download command simply downloads the files. It doesn't really work as an update.

If we were to delete any files not in the manifests then we might delete files unintentionally. That could be really bad, just like running rm -rf / (DO NOT DO THAT). We could keep a record of the manifest used in the initial download, and then use those to delete any extra files that are no longer present. That would avoid deleting files that are not manifests. However, that will not be compatible with steamcmd or steam client or depotdownloader or any other tool.

A workaround right now is getting a list of extra files with steamctl depot diff --show-extra ... and deleting those files after a download.

Yes, I agree. The download command simply downloads the files. It doesn't really work as an update.

If we were to delete any files not in the manifests then we might delete files unintentionally. That could be really bad, just like running rm -rf / (DO NOT DO THAT). We could keep a record of the manifest used in the initial download, and then use those to delete any extra files that are no longer present. That would avoid deleting files that are not manifests. However, that will not be compatible with steamcmd or steam client or depotdownloader or any other tool.

A workaround right now is getting a list of extra files with steamctl depot diff --show-extra ... and deleting those files after a download.

makes it longer to change to a different version tho

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants