-
Notifications
You must be signed in to change notification settings - Fork 2k
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
[Feature Request] Add Cmder to Winget #2552
Comments
It most definitely could be, have at it! |
This comment was marked as outdated.
This comment was marked as outdated.
I have been looking at this the last few days and I am not sure that it is possible with a portable exe. Also, I think it needs a proper code signing certificate for the Cmder org/publishers. |
I don't know if a different architecture allows something that Winget doesn't - but Chocolatey is able to install CMDER. |
I believe that since the project is portable, we can target AnyCpu for winget. The main issue I was running into is including the vendor and other folders with the MSIX packager. There isn't really an option to do this or if there is I don't know it. However, I made a cmder-installer repo and have started building a basic installer using NSIS. The installer installs to the user profile directory but can be changed by the user. For updates, it would basically overwrite the distributed files if newer and not touch any custom config, bin or opt files. Then on uninstall it remove everything but would omit deleting those custom files and the install directory just in case users don't want to lose their customizations. The idea is to do a quick process for each release. I'm still working out the steps but it would be something like download both full and mini, extract them into a non-tracked Versions folder, update the version variable in the script, run the installer script with NSIS and then create the winget package and publish it. The only thing that is really a blocker is the code signing. I am not sure we can contribute to the public winget repo without it. |
Current rule is to not touch anything in the |
If I understand what you mean then the installer does follow this rule. Nothing is installed or overwritten in the config folder except the readme.md files included in the bin, opt and config folders. Basically, everything that is distributed with the .zip archive will be overwritten. I believe it follows the update process or the update process I have been following. haha I just extract the zip and copy over everything into my cmder folder. Also, I did include an uninstall and the uninstall also leaves the config, bin and opt folders with the exception of the readme's. I considered doing this just in case there are customizations that the user wants to keep. |
All right. I have tested both installers (full and mini) using the silentmode required for winget and it does what it's supposed to. I don't have any issues with my Cmder customizations or keybindings. I think I can create a release on my repo for additional testing. @daxgames Can you try running the installers and see if it meets your needs? |
I don't know anything about winget and more than lokely this woulf be an effort maintained outside the Cmder repo. I can try and confirm functionality if you want tpnoint me in the right direction and pish me down the hill. :-) |
No problem. I don't mind being a maintener. :) Basically, I have created 2 installer packages. 1 for the full install and 1 for the mini install. I have ran both of them locally and didn't have an issue with my Cmder configurations. My aliases and symlinks were still intact. I guess the best thing would be to do is make a back up of your current cmder try installing both or use a VM. I just want to make sure that it works per the Cmderdev team's needs. |
I did some additional testing using Here are the manifests for the two winget installs for tracking: Cmder Winget Manifest |
I noticed architecture was |
Ah, that is good to know. I used However, I have been considering maybe we only distribute the mini version through winget. With winget it's quite easy to install git and it can be scripted. See my personal msaliases repository for an example. What are your thoughts on this? Should we only distribute the mini version through winget or limit the full version to 64-bit and distribute both? |
Its not up to me/us if if the Cmder team is not maintaining it but since you asked. I would recommend doing both both to avoid confusion and fill the demand that will likely end up coming from users once this becomes more mainstream. |
Sounds good and that works for me. I will change the architecture on the full version to |
All right. Well, it turns out that after all that work they would prefer that the distribution be from the official source. I suppose this is understandable from a security perspective. Anyway, this will be possible once they support installing zip archive. |
It seems that winget now supports installing from ZIP files: that issue is now marked as resolved by pull request #2500 |
With Winget starting to officially roll out it'd be great to see Cmder added to its repository. Is there a reason it couldn't be?
The text was updated successfully, but these errors were encountered: