Closed wuniversales closed 3 years ago
Honestly, i prefer it more as it is, since the homebrew launcher does show the 3ds/
folder by default.
I get it...
But this causes that when opening the homebrew launcher, the configuration folder of each downloaded program is shown ...
For me it is uncomfortable to have to scroll through all the folders, until I reach the bottom to run any application that has been previously downloaded.
At least I always put the 3dsx file inside the application folder, to avoid seeing the configuration folder in the homebrew launcher.
In fact, if you try to put the files as indicated above, the "Universal-Updater" folder is automatically hidden from the homebrew launcher, instead the Universal-Updater.3dsx executable appears.
Now that I think about it, it would also be faster when trying to remove an application ... Delete an entire folder to remove an application completely ... Instead of deleting the application and then deleting the configuration folder from it ...
Currently, I make the change manually with the FBI, but if this application does it automatically, it would be much better I suppose than for everyone.
Right now, Universal-Updater does it as the following:
So that means.. place the 3dsx initially at sdmc:/3ds/Universal-Updater/
and there you go.
Do you mean to do this for apps installed using Universal-Updater, or Universal-Updater's 3dsx itself? As StackZ said U-U should automatically handle it's own 3dsx being in different locations perfectly fine already, so I assume you mean for other apps installed using U-U?
If that's the case, I think it should be fairly easy to do without breaking compatibility, just need a regex that can capture the name and double it if enabled like this:
// If folder is on "%3DSX/app.3dsx" becomes "sdmc:/3ds/app/app.3dsx"
// If it's off then "%3DSX/app.3dsx" becomes "sdmc:/3ds/app.3dsx"
out = std::regex_replace(file, std::regex("%3DSX%/(.*)\\.(.*)"), config->_3dsxPath + (config->_3dsxInFolder() ? "/$1/$1.$2" : "/$1.$2"));
// This one only matches files you'd want to keep the old regex for folders like this
// (I could make a single regex to match both, but I don't think you'd want folders to have the doubling)
out = std::regex_replace(file, std::regex("%ARCHIVE_DEFAULT%"), config->archPath());
out = std::regex_replace(file, std::regex("%3DSX%/(.*)\\.(.*)"), config->_3dsxPath + (config->_3dsxInFolder() ? "/$1/$1.$2" : "/$1.$2"));
out = std::regex_replace(out, std::regex("%3DSX%"), config->_3dsxPath());
out = std::regex_replace(out, std::regex("%NDS%"), config->ndsPath());
This does get a bit weird if you have them in folders, like "%3DSX%/test/app.3dsx"
would become "sdmc:/test/app/test/app.3dsx"
, but that doesn't happen in Universal-DB and that doesn't make much sense to do with how U-U does the %3DSX%
so I think this would be good
Exactly, I mean what @Epicpkmn11 says :dancers: Be able to do this in all the 3dsx applications that are downloaded.
Alright. I might add it in v3.2.0, because Universal-Updater's work is already done for this year.
Added in 623436598e230e0200fda8609e83b65a042ad4e3
Is your feature request related to a problem?
In part it could be a missing function. I also think it would be nice to change the default behavior.
Example of the problem
Current behavior
Desired behavior
Describe the solution you'd like
Add an new option in the configuration to put the 3dsx file inside the configuration folder of the 3dsx program.