Comments (2)
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.
Thanks! And re: inquire, that seems cool! I honestly missed that entirely when reading the code just figured they were straight read
s 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)
- Add option to install ReShade shaders HOT 5
- Improve error messages
- Implementation of shader merge / my documentation of it had issues HOT 2
- We may not want to by default allow both `reshade-shaders` and `gshade-shaders`. HOT 3
- Shader download is broken HOT 1
- linux support HOT 2
- Additional Maintainer
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from reshader.