cmder-installer/readme.md
2021-06-18 21:48:56 -04:00

40 lines
2.0 KiB
Markdown

# Cmder Installer
This repository was created as a wrapper around my favorite terminal emulator [Cmder](https://github.com/cmderdev/cmder).
The goal is to distribute it to [winget](https://docs.microsoft.com/en-us/windows/package-manager/) and make it available with the new Windows Package Manager. Cmder is a portable application and to create the MSIX package, we needed to create an installer to include the vendor resources.
## Instructions
### Prerequisites
1. The [latest release](https://github.com/cmderdev/cmder/releases) archive of Cmder.
1. [NSIS](https://nsis.sourceforge.io/Main_Page) installed.
### Steps for Installer
1. Clone the repository
1. Create the following directory structure.
1. .\mini\Versions\\**[FULL_VERSION_NUMBER]** e.g. 1.13.8.1106
1. .\full\Versions\\**[FULL_VERSION_NUMBER]** e.g. 1.13.8.1106
1. Download the release to the correct version path and extract here.
1. Edit VERSION Variable in the .nsi scripts. It's the first variable in the each file.
1. [Cmder-mini.nsi](https://github.com/edrohler/cmder-installer/blob/main/installer/mini/Cmder-mini.nsi)
1. [Cmder-full-msi](https://github.com/edrohler/cmder-installer/blob/main/installer/full/Cmder-full.nsi)
1. Launch NSIS.
1. Compile the scripts by navigating to the cloned repo.
1. Create a release in repository.
1. Installer artifacts from script compilation.
## Steps to Publish Winget Manifest
1. Create a new folder for version number under each installer payload e.g. (x.x.x.x).
1. Copy previous release manifests to new release folder.
1. Edit PackageVersion, InstallerUrl and [hash](https://docs.microsoft.com/en-us/windows/package-manager/winget/hash) with new release number. `winget has -f [FILENAME]`
1. Validate manifest with [validate](https://docs.microsoft.com/en-us/windows/package-manager/winget/validate). `winget validate --manifest [FILENAME]`
1. Create new branch for release.
1. Add release manifests.
1. Push changes to fork.
1. Squash merge into forked master.
1. Create pull request in winget-pkg upstream.