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

Explore detecting updated fixes and triggering application upon startup #36

Open
boombatower opened this issue Oct 16, 2016 · 3 comments
Milestone

Comments

@boombatower
Copy link
Contributor

It occurred to me that we talked a lot about shipping updated fixes rapidly, but we didn't talk about how they would actually be applied. If the fixes are being created after folks update/install the related app then they will have to manually trigger the updates to be applied.

Alternatively, either automatically, manually, or manually confirmed, a sha1 of the app fixes directory file list (with dates should be good enough) could be written to cache when applied. On boot steamtricks could compare the data directory for all installed games against their related hashs to see if they've changed. Once steam is quiet (ie might as well wait if it starts updating in first min or two) the updates could be triggered by requesting steam to validate the game.

The validation seems like best approach since it would clear any already applied changes and allow for a full re-application so that there is no need to try and diff with previous applied fixes or some nonsense. The only issue with that approach is whether an app validation can be triggered easily from outside the Steam UI, either via steam URL commands or perhaps tweaking a manifest file as they seem to track app states.

If system updates are run while steamtricks is running (probably common) that could be either detected via checking either the package version or a file in the root of data dir that contains the same and comparing against cache. Alternatively, the package could trigger a steamtricks command on postrun, but that is probably problematic since it would be running as root.

@boombatower boombatower added this to the 0.3.0 milestone Oct 16, 2016
@boombatower
Copy link
Contributor Author

Easy:

steam steam://validate/18700

This is definitely accomplishable then.

@boombatower
Copy link
Contributor Author

The one bit that needs deciding is how to trigger the watch loop to detect/look for changes. Have the rpm write to a /tmp or log file of some sort just to notify the loop and then check hashes from there? Setting up inotify or somesuch seems like overkill and a bad idea and rpm has no easy way to communicate with users running steamtricks unless systemd provides some sort of facility.

@boombatower boombatower modified the milestones: 1.0.0, 0.3.0 May 18, 2017
@boombatower
Copy link
Contributor Author

Another item to consider is triggering when steamtricks itself updates as it may contain new generalized code that fixes issues with a games, but it is unlikely that re-checking all installed games at once is desirable.

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

No branches or pull requests

1 participant