7

I am brand new to Windows (been a Unix user all my life), and the first thing I want to do is set up cmder. Following the obvious path has lead to download the mini package from cmder.net. But from there I'm not sure what to do. Apparently I can run the software from right out of the unzipped cmder_mini directory in my Downloads folder. But Downloads certainly is not the proper place for it live.

I tried copying the cmd_mini directory to Program Files, but I was asked to authorize the copy operation as an administrator, which to me is a red flag that I should not do something unless I really know what I'm about.

So where is the best place for me to put cmder? If there are multiple choices, what are the pros and cons of each? Preferably I would like a place that's global, so all users can use cmder.

  • 2
    Typically, if it's a standalone package, you would just create a new folder for it on the C: drive. i.e. C:\cmder. If you plan on doing this often you could create a folder for your folders. :) Like C:\Tools then add C:\Tools\Cmder. I reserve "Program Files" folders for actual installed programs. It is very rare to copy anything in to or out of Program Files. That is done by the installer. – Appleoddity May 30 '18 at 4:23
  • 1
    @Appleoddity You should add that as an answer. You would have my vote - IMO it's better than the existing ones. – Bob May 30 '18 at 5:23
  • 1
    Some insight here....superuser.com/questions/245442/… – Moab May 30 '18 at 16:43
2

So where is the best place for me to put cmder?

Windows is extremely flexible in this regard. As a personal preference, I like to create my own folder in the root of my C:\ drive simply labeled Programs (i.e. C:\Programs) and this would be my suggestion to you (creating a custom folder for general programs such as cmder).

If there are multiple choices, what are the pros and cons of each?

As mentioned elsewhere, Program Files, Program Files (x86) and C:\Users\UserName\AppData\Roaming are the typical installation locations for desktop software (non-Microsoft Store applications) in Windows 10 (Apps installed from the store are handled much differently).

  • Program Files is intended for 64-bit applications for general access but installation is restricted to administrators. Programs that try to store information here will likely have that data transparenently routed to a virtual store (the data will look like it's in a given folder to a program but it will actually be stored elsewhere).

  • Program Files (x86) is intended for 32-bit applications for general access but installation is restricted to administrators. Programs that try to store information here will likely have that data transparenently routed to a virtual store (the data will look like it's in a given folder to a program but it will actually be stored elsewhere).

  • C:\Users\YourUsername\AppData\Local is intended for MSI installations for a single user but typically doesn't require Administrative privileges. This folder is normally hidden.

  • Custom Folders may need their permissions changed to have truly "global" access. However, they can be created as paths without spaces, which can be a life saver when using *nix-style software on Windows (i.e. cross-platform or ported utilities). Paths without spaces also often do not require double-quotes to access on the command line (which can be another issue in certain instances).

Note that you should skip putting software in your C:\Windows folder or C:\ProgramData. These are relatively essential Windows folders and aren't meant for common storage. Likewise, while C:\Users\UserName folders function similar to Home directories, the files and folders in them are generally not executables (though they technically can be). The same thing applies to C:\Users\UserName\AppData\Roaming (with this folder being almost exclusively used for application settings).

Preferably I would like a place that's global, so all users can use cmder.

While Program Files or Program Files (x86) should be fine (programs installed in these folders are executable by everyone), I would still lean to a custom folder which Everyone (this is a Windows user group) has permission to access. As one other option, there is a special C:\Users\Public folder which has Everyone added into the permissions automatically whenever a new folder is created under that directory (or a subdirectory).

| improve this answer | |
  • You've mixed up your AppDatas. Roaming should be used for settings/configs, while Local should be used for per-user programs (generally only when installed via MSI) and temporary files. – Bob May 30 '18 at 6:19
  • Updated. Appreciate the catches. =) – Anaksunaman May 30 '18 at 6:25
  • See my answer here. In short, put manually installed folders in your %LOCALAPPDATA%\Programs folder. – Neo Aug 22 '19 at 22:33
1

%ProgramFiles% or %ProgramFiles(x86)% is the 2 most common location in Windows 10 (for software 64 or 32 bit respectively). If your software have an installer component, those 2 locations are the 2 most common location and that folder is restricted to Administrator group so only user that has Admin rights can write to it (but anyone can read / execute from it) - similar to /usr/bin

There is no pros or cons either way, those are just the Windows default location. You can opt to put everything into your own folder structure if you wish (as per AppleOddity's comment above), and make sure only certain people have write access to it (to ensure users don't accidentally deleted them).

For Non-admin installation, it usually goes into your %UserProfile% (C:\Users\yourUsername) or sometimes %LocalAppData% (C:\Users\YourUsername\AppData\Local). And you can have a per-user specific installation (that is not available across the system).
One example of software installing into LocalAppData as default is Python (when doing non-administrative install)

Note: All the stuff that have %name% are variable that should already been preset into your Windows Installation.

| improve this answer | |
  • Questions asks for a location where program can be copied so it's available for all users. It clearly states "copy" and not "installer without admin rights", I can't see how your post answers it. – Máté Juhász May 30 '18 at 3:24
  • 2
    Installed programs should never go into %AppData%, which can be synced across machines in some scenarios and should be used for data (mostly config) only. Instead they should go into %LocalAppData%. Which usually points to AppData\Local vs AppData\Roaming. But this only really holds true for MSI per-user installs; if you're doing a manual "install" by exploding a package, you shouldn't really be using any of the AppData folders. – Bob May 30 '18 at 5:21
  • @MátéJuhász OP stated "I tried copying ..." so not specifically asking that it can be copied and access by all users. I am mentioning the 2 common locations where Windows normally handles installation (when an installer is being used). Whether a simple unzip, and use software is to stay there or not - is up to the user/PC admin. Appleoddity's answer have a valid point, but it in the end it is up to the PC admin/user how they want to handle it. – Darius May 30 '18 at 5:37
  • @Bob Thank you for pointing that out. I should've referred to the LocalAppData instead of the Roaming one. And also I added an example of a program defaulted to installing to the LocalAppData path. – Darius May 30 '18 at 5:53
  • I would suggest %LOCALAPPDATA%\Programs is the most appropriate place. – Neo Aug 22 '19 at 22:34
0

Disclaimer: The following procedure is only my personal preference. I am not forcing anyone to do this.

So where is the best place for me to put cmder? If there are multiple choices, what are the pros and cons of each? Preferably I would like a place that's global, so all users can use cmder.

As a Linux-cum-Windows user, I do separate operating system and user files/applications in two (minimum) partitions or two separate drives. You can make a separate partition in HDD/SSD and save all applications in separate folders. Download cmder from it's GitHub release page. cmder is a combination of clink and ComEmu (you may also try these). If you have not separate partition/drive you can use your current log-in user folder i.e. C:\Users\user_name or %UserProfile%. This folder has full permission of that user.

Here I download cmder.7z file. If you've not 7ZIP you can download the zip file and open in File Explorer directly. Extract the 7ZIP file to D:\cmder folder with this command: 7z x -o"D:\cmder" cmder.7z. Change the folder name/path as you want. Now open that folder where you've extracted those files and double click on cmder.exe. cmder saves the clink logs in %LocalAppData%\clink folder. Make shortcut of cmder.exe in desktop/start menu/taskbar with right click on it.

Also you can copy the extracted folder in thumb drive and run cmder from there.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.