Git Product home page Git Product logo

Comments (2)

cozyGalvinism avatar cozyGalvinism commented on July 2, 2024

Heya, thank you for your input c: The program is still work in progress so there is a bunch of unhandled errors (pretty much 90% of it is still unhandled). With that said, let me touch on your feedback:

You probably don't want to assume xdg-open exists / fail if it doesn't exist outright in the presets install section.

Yeah, I don't feel comfortable depending on other software to be present, though unfortunately there isn't much to be done about it... As far as I'm aware, Linux doesn't open the default browser when trying to execute an URL as opposed to that being the case on Windows, which pretty much only leaves XDG as a source. Obviously this fails for any distro that doesn't conform to XDG or doesn't have xdg-utils installed.

Though displaying the URL would work fine here, I agree.

Since the presets are being symlink'd, perhaps also symlink dxgi.dll and d3dcompiler_47.dll after storing them in the data folder. Saves on re-downloading them all across multiple installs, not to mention deduplication between multiple installs. By the way, thank you for respecting the XDG directory specification / using libraries that respect it.

I didn't think of that, good catch. Symlinking the libraries is how GShade did it too, not sure why it didn't come to mind...

It would also be nice to be able to process an already provided ReShade installer / alternative resource acquisition paths.

Definitely agreed. I think a CLI parameter would work best here, especially with the next idea.

More advanced though similarly helpful version of the previous suggestion would be proper command line arguments to be able to process in one go instead of relying on multiple input sections.

Yup. Not much to add here, eventually you should be able to run this with just parameters to skip all the user inputs. This will be interesting for the GShade presets and shader downloads, as the license of those state that you can't download those automatically. So it basically comes down to the user to either provide both zips (in one way or another) and then run reshader to symlink away.

Input sections using readline could be cool too, or similar modern equivalents if Rust has any, not too familiar with readline-type stuff for Rust.

The input sections at the moment are powered by inquire, which makes the CLI pretty organized and straightforward in my opinion. I also wouldn't be opposed to using something else, inquire just seemed like a pretty modern library and looked pretty good as well c:


So to summarize, I will get some TODOs here:

  • Display the URL for obtaining the preset and shader URLs in case xdg-open fails to open
  • Symlink ReShade and D3DCompiler into game paths rather than installing a hard copy
  • Implement CLI parameters as replacement for TUI
  • Implement CLI parameter for using your own installer file

These shouldn't be too hard to implement either, I might get around to fix error handling and implement these features this weekend.

Thank you again for your input! Greatly appreciated!

from reshader.

ultimatespirit avatar ultimatespirit commented on July 2, 2024

Thanks! And re: inquire, that seems cool! I honestly missed that entirely when reading the code just figured they were straight reads of stdin for now (I know that's exactly the sort of thing I'd do for a quick hacky first draft to get things working haha).

With regards to the license, while I agree with the spirit of not touching that mess, I would add that.. it's highly unlikely that license is enforceable, like, at all. I'm not sure I've ever seen a license of "no automatically hitting this public endpoint" manage to hold any water, not to mention the legal mess of proving what is or is not automatic (It definitely feels like you could argue any computer action is not entirely manual and therefore automatic access...). In the context of what led to the GShade debacle it really feels like those additions were solely to screw with the original helper tool. Guess we'll find out what gposers do with that, or if better community resources come about for the shaders/presets.

I'll be sure to swing any Linux folks I know who play over to this tool, rather than my very jank quick and dirty shell script I threw together day of haha. Anyway, thanks for working on this and all the best!

from reshader.

Related Issues (8)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.