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

Surge when mis-installed should be much noisier #543

Closed
baconpaul opened this issue Feb 8, 2019 · 2 comments
Closed

Surge when mis-installed should be much noisier #543

baconpaul opened this issue Feb 8, 2019 · 2 comments

Comments

@baconpaul
Copy link
Collaborator

baconpaul commented Feb 8, 2019

@tank-trax found a lot of problems on linux around crashes and non working elements which were all because his ~/.local/share/Surge was not correctly populated.

Now of course Surge shouldn't crash in those situations and so on but also: Surge should report that it can't find information.

So I propose a simple check, at the end of SurgeStorage, that if wavetable count is 0 or factory patch count is 0, we show a user error clearly reporting the problem. If we follow good install procedures this should "never" be needed. But it could have saved some headaches for @tank-trax and will for other users in the future I bet.

@baconpaul
Copy link
Collaborator Author

The way to do this is as follows.

  • read Linux Paths #542 so you know where everything is going
  • src/common/SurgeStorage.cpp
  • in the function "refresh_patchlist" if no patches are found before user category (so if firstThirdParty == 0) throw up an error with Surge::UserInteraction::PromptError
  • in refresh_wtlist try to figure out with the Surge::UserInteraction which is already there doesn't fire. It's either a bad condition or (maybe) we create categories even if the directory is empty because we don't require any files to be found to create a category above

To test

  • build and install
  • remove your appropriate directory containing user patches and wavetables
  • Run the synth and make sure you get error messages
  • re-install
  • remove just the patches and test
  • re-install
  • remove just the wavetables and test

For "re-install" any of the install-local options should be fine.

@tank-trax
Copy link
Collaborator

tank-trax commented Feb 8, 2019

just an FYI

the location for factory and 3rd party presets and wavetables in Linux would be -> ~/.local/Share/Surge

after placing the contents or /surge/resources/data in ~/.local/Share/Surge many previous reported issues resolved

baconpaul added a commit to baconpaul/surge that referenced this issue Feb 14, 2019
UTF8 filename conversion is required on windows for vstgui so factor
the UTF8 string conversion into a function and adjust the callpoints.

Those callpoints intersect with places where we load patches and
wavetables, so at the same time, make the system report user errors
if wavetables or factory patches are non-loadable

Closes surge-synthesizer#584 UTF8 for wavetables
Closes surge-synthesizer#543 Alert user to mis-installation
baconpaul added a commit to baconpaul/surge that referenced this issue Feb 14, 2019
UTF8 filename conversion is required on windows for vstgui so factor
the UTF8 string conversion into a function and adjust the callpoints.

Those callpoints intersect with places where we load patches and
wavetables, so at the same time, make the system report user errors
if wavetables or factory patches are non-loadable

Closes surge-synthesizer#584 UTF8 for wavetables
Closes surge-synthesizer#543 Alert user to mis-installation
baconpaul added a commit to baconpaul/surge that referenced this issue Feb 14, 2019
UTF8 filename conversion is required on windows for vstgui so factor
the UTF8 string conversion into a function and adjust the callpoints.

Those callpoints intersect with places where we load patches and
wavetables, so at the same time, make the system report user errors
if wavetables or factory patches are non-loadable

In the course of testing this, I also realized that nested directories
didn't work properly on windows due to path separator being "\" rather
than "/", which this commit also addresses.

Closes surge-synthesizer#584 UTF8 for wavetables
Closes surge-synthesizer#543 Alert user to mis-installation

pathsetp
baconpaul added a commit that referenced this issue Feb 15, 2019
UTF8 filename conversion is required on windows for vstgui so factor
the UTF8 string conversion into a function and adjust the callpoints.

Those callpoints intersect with places where we load patches and
wavetables, so at the same time, make the system report user errors
if wavetables or factory patches are non-loadable

In the course of testing this, I also realized that nested directories
didn't work properly on windows due to path separator being "\" rather
than "/", which this commit also addresses.

Closes #584 UTF8 for wavetables
Closes #543 Alert user to mis-installation
baconpaul added a commit to baconpaul/surge that referenced this issue Jul 10, 2019
…synthesizer#601)

UTF8 filename conversion is required on windows for vstgui so factor
the UTF8 string conversion into a function and adjust the callpoints.

Those callpoints intersect with places where we load patches and
wavetables, so at the same time, make the system report user errors
if wavetables or factory patches are non-loadable

In the course of testing this, I also realized that nested directories
didn't work properly on windows due to path separator being "\" rather
than "/", which this commit also addresses.

Closes surge-synthesizer#584 UTF8 for wavetables
Closes surge-synthesizer#543 Alert user to mis-installation


Former-commit-id: fa14f35e66637b22717f0fd0d761f56a1b29b27b [formerly 778fea1]
Former-commit-id: 14394184250701dcdebe9ab4027353b91f093fc9
Former-commit-id: 4bf6ca7017713438e971b75deeabe996c1319fae
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

2 participants