DavidoTek / ProtonUp-Qt

Install and manage GE-Proton, Luxtorpeda & more for Steam and Wine-GE & more for Lutris with this graphical user interface.
https://davidotek.github.io/protonup-qt
GNU General Public License v3.0
1.25k stars 40 forks source link

Luxtorpeda: Use fetch_project_releases and fetch_project_release_data #318

Closed sonic2kk closed 10 months ago

sonic2kk commented 10 months ago

Supersedes #310.

Updates Luxtorpeda to use the new fetch_project_releases and fetch_project_release_data util functions from #302. This reduces repeated code and will help "proof out" how these functions can be used in other ctmods. More work may be required for some ctmods, but for Luxtorpeda, it was a drop-in replacement.

Boxtron gets this for free because it subclasses Luxtorpeda as of #311, and Roberta will inherit this PR's changes when #317 is merged. That's why I didn't touch that ctmod in this PR, changing Luxtorpeda will change all of them. Luxtorpeda, Roberta, and Boxtron all use .tar.xz archives, so the release_format only has to be defined for Luxtorpeda. But, Roberta and Boxtron will be free to override this in the future if this ever changes.

There should be no user-facing changes to functionality here. Releases still come for Roberta, and all three ctmods still download and extract as expected. This just makes the ctmods (hopefully!) a little bit more maintainable for us developers :slightly_smiling_face:

Thanks! :smile:

DavidoTek commented 10 months ago

Thanks! :tada: