SyMenu Forum

SyMenu

 

HomeGeneral discussion & questions

Talk about SyMenu or post suggestions, requests, or how-to questions

Deeply Nested Folder Structure Messages in this topic - RSS

nerdweed
nerdweed
Posts: 5


04/07/2020
nerdweed
nerdweed
Posts: 5
Currently, the apps are installed under <SyMenu_base_folder>\ProgramFiles\SPSSuite\SyMenuSuite - Can I simplify it to be <SyMenu_base_folder>\Apps

One way would be junctions, but if program allowed to choose it, that will be wonderful
link
Gianluca
Gianluca
Administrator
Posts: 1014


04/07/2020
Gianluca
Gianluca
Administrator
Posts: 1014
You are right.

The programs folder is located too deeply if we think that an OS like Windows has serious problem in managing paths longer that 260 characters.

This limitation has never been really solved because of the retro compatibility Windows needs to maintain but there are some techniques to overcome it.

Unfortunately SyMenu is a launcher and the programs it launches could be affected by this limitation so it's senseless to solve it in SyMenu alone.

The Windows 260 characters limitation is the only reason for which I agree with you because, IMHO, if the OS limitation doesn't exist the programs path would be perfectly logic.

Anyway you are asking for a workaround and not for a reason.

Junctions could be a perfect solution but it makes SyMenu no longer portable. So if you want to use junctions, you need to do it by yourself.

BTW the junctions perfectly fits with a not portable installation of SyMenu so do it without any fear.


However my suggestion is quite different and can preserve the portability.
SyMenu supports a command line switch that change the base path for program files.
It's the -fp{folderPath} https://www.ugmfree.it/SyMenuManual.aspx#CommandLine
The suite folder will be located deeply the same because you always have <redefinedPath>\SPSSuite\SyMenuSuite but it could be a good solution to cut the base path.
link
nerdweed
nerdweed
Posts: 5


04/07/2020
nerdweed
nerdweed
Posts: 5
Thanks GIanluca. It wasn't the 260 char limit that bothered me, but having to navigate deeper. With SysInternals and NirSUite now being moved away into the Main Suite, I thought the main suite apps can be promoted.

I understand this can create backward compatibility issues. WOuld you be OK to introduce one more command line arg for the main suite apps i.e; the SyMenuSuite folder. If not, no problems as I use junctions. I'll create <SyMenu_base_folder>\Apps as main folder and create SyMenuSuite as a junction inside <SyMenu_base_folder>\ProgramFiles\SPSSuite\

The only thing I'll need to remember is not to follow junction during backups

On a side note, really liked the auto start feature. I use SyMenu from a single PC but prefer portability. I have configured only SyMenu to start with Windows and others to startup from within SyMenu
link
Gianluca
Gianluca
Administrator
Posts: 1014


06/07/2020
Gianluca
Gianluca
Administrator
Posts: 1014
It's a good idea. I'll introduce the command line to redefine the SyMenu suite base folder. Naturally I have to understand what happens if you redefine the program file base folder and the SyMenu suite base folder... smile

The next version is already in beta testing so you have to wait for the 6.13.

Anyway if your main problem is not the 260 chars limitation but the annoyance to navigate to the programs folders, you can use the open folder feature (see https://www.ugmfree.it/SyMenuManual.aspx#Extended_Menu). This way SyMenu can take you automatically to the destination. I use this feature extensively during my daily work in junction with the plugin Open folder (https://www.ugmfree.it/Forum/messages.aspx?TopicID=85) that is very useful just in case you don't use Windows Explorer.
Let us know if this can be useful for you.
link
nerdweed
nerdweed
Posts: 5


06/07/2020
nerdweed
nerdweed
Posts: 5
I use SyMenu but not only SyMenu smile. Navigation is a problem from other places.

Junctions is working fine. Thanks for considering adding the argument. Will look forward to it.

edited by nerdweed on 06/07/2020
link
Gianluca
Gianluca
Administrator
Posts: 1014


06/07/2020
Gianluca
Gianluca
Administrator
Posts: 1014
To make it clearer. I don't use SyMenu to navigate the FS. I use SyMenu to make my preferred navigator landing on the right folder in one click.

In my case I use the SyMenu plugin to open the folder with Unreal Commander, best FS navigator after Total Commander IMHO smile
link
sl23
sl23
Posts: 235


26/07/2020
sl23
sl23
Posts: 235
Hi Gian, Hope all is well...

This is something I also requested a few years ago and received the same answer. Promoting the SySuite folder of apps. Personally, I would prefer simply - <SyMenu_base_folder>\ProgramFiles\App folders here. Even if it broke the currently installed apps, It's a one time deal that each user would need to remedy themselves.

At the end of the day, most apps don't require much setting up or adjustment. Still, there are certainly quite a few apps that need backing up first. Is there any way you could offer users a choice to have either? Perhaps add a function that gives users a choice where to install or can install to the current default location?

This way, advanced users could uninstall existing apps one by one, after a backup, then reinstall to the new preferred location in order to preserve current settings and use the shorter path. It is a little irritating having them nested so deeply, sorry Gian. Anyway, if it's too much trouble to implement, I'm sure we can understand. :-)

Btw, Unreal Commander may be a great FM, but all this bollocks about having to keep register for a free license is just NOT worth the hassle!!! I tried it, NOT worth it!!!
link
Gianluca
Gianluca
Administrator
Posts: 1014


27/07/2020
Gianluca
Gianluca
Administrator
Posts: 1014
Hi sl23,
You will have a sort of it with the 6.13 because I confirm I will implement a command line parameter allowing you to redefine the suite root path.


On the other hand it's not possible to redefine it for everyone. I can't break the paths of thousands of users expecting they move the app manually... we are not all experts her and it's too dangerous do it with a wizard since there are users with GB of data inside that folder.
In the past I have this kind of need for the configuration files during the migration from xml to zip format.

The only way I found at the time was implementing a double management: SyMenu was able to manage two different formats and automatically migrate the old one (xml) to the new one (zip). I kept this double management for two years at least.

Think about the same burden for a huge management wizard for the program folders... it's impossible.
link
sl23
sl23
Posts: 235


27/07/2020
sl23
sl23
Posts: 235
Thanks Gian. So... does that mean I can actually move the apps to the ProgramFiles folder?
How would this command line thing work exactly? I presume there will be some instructions on release?
Looking forward to trying this out, great work, thanks so much. smile

EDIT: Just out of curiosity, If you did implement the change to completely move the installation folder to ProgramFiles, Would it simply be a matter of installing all your existing apps to that new location, as if they weren't installed already and then copy and paste your existing apps over the new ones?

Or... even better, every app has a relative path in the SyMenu Config form:
e.g. ".\ProgramFiles\SPSSuite\SyMenuSuite\Deluge_Portable_sps\DelugePortable.exe"

So couldn't you just create a batch to remove "SPSSuite\SyMenuSuite\" from every path?

Those that have created their own AppSuites will know what they are doing anyway, so those users will have the knowledge to change it.

Sorry, I don't mean to sound pushy at all, it's just some thoughts on the subject. smile

However it was done, I'm sure some fairly simple instructions could accompany the process. It just seems a bit of a bodge to use the command line imho dunnosmile

edited by sl23 on 27/07/2020
link
Gianluca
Gianluca
Administrator
Posts: 1014


27/07/2020
Gianluca
Gianluca
Administrator
Posts: 1014
The command line will be documented in the manual as usual.

You could operate this way:
- quit SyMenu
- move the SPSSuite folder wherever you want
- run SyMenu with the command line. Something like these:

symenu.exe -xx".\NewFolder"
symenu.exe -xx".\ProgramFiles"

symenu.exe -xx"..\..\NewFolder"
symenu.exe -xx"x:\\NewFolder"

Unfortunately you have to execute SyMenu with the same command from that moment on because the default SPSSuite folder remains the same.
Anyway, if the option will be strongly adopted, I can add a custom option in the configuration to remap the folder without the command line.


Regarding your curiosity, all the programs in the SPSSuite have a relative path so the solution should be to change the old relative path (not with a batch but with SyMenu itself naturally). But the problem won't be this one... the real problem will be to physically move GB of data from the SPSSuite folder to the new folder. The process is long, heavy, subject to errors, to interruptions, needs to be resumable... it's too much...
link
sl23
sl23
Posts: 235


27/07/2020
sl23
sl23
Posts: 235
That looks like a simple solution. Am I right in thinking you start SyMenu with a shortcut with these as arguments? Or a batch file?

So what you're saying is that it's easy to change the location wrt the paths to apps, but moving them is a major hassle? But if the option to move this path is in place, then it's simply a matter of instructing those without knowledge how to move the relevant app folders to the new location, yes?

Those who can't do this, will only have a default installation. e.g. they d/l SyMenu and simply install apps through the SyMenu Updater. This means only two folders need moving, Nirsoft and SyMenuSuite. Perhaps the DirLister app could list the folder within the afore mentioned ones, and that could be used as a basis for moving?

Or perhaps, could SyMenu be expanded to locate the *.sps.version files in the ProgramFiles folder as well as the current default location?
To me, it seems simple, but I imagine it may be too much hassle and maybe a direction you don't want to go. That's fair enough, no problem. smile

EDIT: I just checked DirLister and found it can be set to list only the folders found within a specified directory non-recursively. This list could then be used in a batch or something to move them to the new locale.


edited by sl23 on 27/07/2020
link



UGMFree.NET ©2002-2020
By Gianluca Negrelli - Contact me