diff options
author | Clement Tsang <34804052+ClementTsang@users.noreply.github.com> | 2024-05-11 21:18:09 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-05-11 21:18:09 -0400 |
commit | cce835b752bf331e6a0b0cc53d111dded2e58970 (patch) | |
tree | 85acadbb99af3cc868e60851e20651d1f7aba879 | |
parent | a15ef636696e2bb12f201135ae1cd2ad6a225ca4 (diff) |
Run cargo wix init (#1468)
* ci: run cargo wix init
* remove wix init call
-rw-r--r-- | .github/workflows/build_releases.yml | 3 | ||||
-rw-r--r-- | .gitignore | 3 | ||||
-rw-r--r-- | wix/License.rtf | bin | 0 -> 1261 bytes | |||
-rw-r--r-- | wix/main.wxs | 214 |
4 files changed, 215 insertions, 5 deletions
diff --git a/.github/workflows/build_releases.yml b/.github/workflows/build_releases.yml index ef030897..7f12510a 100644 --- a/.github/workflows/build_releases.yml +++ b/.github/workflows/build_releases.yml @@ -251,8 +251,7 @@ jobs: env: BTM_GENERATE: "" run: | - cargo install cargo-wix --version 0.3.1 --locked - cargo wix init + cargo install cargo-wix --version 0.3.8 --locked cargo wix - name: Generate artifact attestation for file @@ -24,9 +24,6 @@ rust-unmangle # For testing sample_configs/testing*.toml -# Wix -/wix/ - # Cargo-deny deny.toml diff --git a/wix/License.rtf b/wix/License.rtf Binary files differnew file mode 100644 index 00000000..40904bec --- /dev/null +++ b/wix/License.rtf diff --git a/wix/main.wxs b/wix/main.wxs new file mode 100644 index 00000000..bfc19402 --- /dev/null +++ b/wix/main.wxs @@ -0,0 +1,214 @@ +<?xml version='1.0' encoding='windows-1252'?> +<!-- + Copyright (C) 2017 Christopher R. Field. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +<!-- + The "cargo wix" subcommand provides a variety of predefined variables available + for customization of this template. The values for each variable are set at + installer creation time. The following variables are available: + + TargetTriple = The rustc target triple name. + TargetEnv = The rustc target environment. This is typically either + "msvc" or "gnu" depending on the toolchain downloaded and + installed. + TargetVendor = The rustc target vendor. This is typically "pc", but Rust + does support other vendors, like "uwp". + CargoTargetBinDir = The complete path to the directory containing the + binaries (exes) to include. The default would be + "target\release\". If an explicit rustc target triple is + used, i.e. cross-compiling, then the default path would + be "target\<CARGO_TARGET>\<CARGO_PROFILE>", + where "<CARGO_TARGET>" is replaced with the "CargoTarget" + variable value and "<CARGO_PROFILE>" is replaced with the + value from the "CargoProfile" variable. This can also + be overridden manually with the "target-bin-dir" flag. + CargoTargetDir = The path to the directory for the build artifacts, i.e. + "target". + CargoProfile = The cargo profile used to build the binaries + (usually "debug" or "release"). + Version = The version for the installer. The default is the + "Major.Minor.Fix" semantic versioning number of the Rust + package. +--> + +<!-- + Please do not remove these pre-processor If-Else blocks. These are used with + the `cargo wix` subcommand to automatically determine the installation + destination for 32-bit versus 64-bit installers. Removal of these lines will + cause installation errors. +--> +<?if $(sys.BUILDARCH) = x64 or $(sys.BUILDARCH) = arm64 ?> + <?define PlatformProgramFilesFolder = "ProgramFiles64Folder" ?> +<?else ?> + <?define PlatformProgramFilesFolder = "ProgramFilesFolder" ?> +<?endif ?> + +<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'> + + <Product + Id='*' + Name='bottom' + UpgradeCode='3C90C27D-8372-4C82-B03C-020393CB983D' + Manufacturer='Clement Tsang' + Language='1033' + Codepage='1252' + Version='$(var.Version)'> + + <Package Id='*' + Keywords='Installer' + Description='A customizable cross-platform graphical process/system monitor for the terminal. Supports Linux, macOS, and Windows.' + Manufacturer='Clement Tsang' + InstallerVersion='450' + Languages='1033' + Compressed='yes' + InstallScope='perMachine' + SummaryCodepage='1252' + /> + + <MajorUpgrade + Schedule='afterInstallInitialize' + DowngradeErrorMessage='A newer version of [ProductName] is already installed. Setup will now exit.'/> + + <Media Id='1' Cabinet='media1.cab' EmbedCab='yes' DiskPrompt='CD-ROM #1'/> + <Property Id='DiskPrompt' Value='bottom Installation'/> + + <Directory Id='TARGETDIR' Name='SourceDir'> + <Directory Id='$(var.PlatformProgramFilesFolder)' Name='PFiles'> + <Directory Id='APPLICATIONFOLDER' Name='bottom'> + <!-- + Disabling the license sidecar file in the installer is a two step process: + + 1. Comment out or remove the `Component` tag along with its contents. + 2. Comment out or remove the `ComponentRef` tag with the "License" Id + attribute value further down in this file. + --> + <Component Id='License' Guid='*'> + <File Id='LicenseFile' + DiskId='1' + Source='wix\License.rtf' + KeyPath='yes'/> + </Component> + + <Directory Id='Bin' Name='bin'> + <Component Id='Path' Guid='15D841CF-0363-4DBB-BF55-ECCB43B9EB03' KeyPath='yes'> + <Environment + Id='PATH' + Name='PATH' + Value='[Bin]' + Permanent='no' + Part='last' + Action='set' + System='yes'/> + </Component> + <Component Id='binary0' Guid='*'> + <File + Id='exe0' + Name='btm.exe' + DiskId='1' + Source='$(var.CargoTargetBinDir)\btm.exe' + KeyPath='yes'/> + </Component> + </Directory> + </Directory> + </Directory> + </Directory> + + <Feature + Id='Binaries' + Title='Application' + Description='Installs all binaries and the license.' + Level='1' + ConfigurableDirectory='APPLICATIONFOLDER' + AllowAdvertise='no' + Display='expand' + Absent='disallow'> + <!-- + Comment out or remove the following `ComponentRef` tag to remove + the license sidecar file from the installer. + --> + <ComponentRef Id='License'/> + + <ComponentRef Id='binary0'/> + + <Feature + Id='Environment' + Title='PATH Environment Variable' + Description='Add the install location of the [ProductName] executable to the PATH system environment variable. This allows the [ProductName] executable to be called from any location.' + Level='1' + Absent='allow'> + <ComponentRef Id='Path'/> + </Feature> + </Feature> + + <SetProperty Id='ARPINSTALLLOCATION' Value='[APPLICATIONFOLDER]' After='CostFinalize'/> + + + <!-- + Uncomment the following `Icon` and `Property` tags to change the product icon. + + The product icon is the graphic that appears in the Add/Remove + Programs control panel for the application. + --> + <!--<Icon Id='ProductICO' SourceFile='wix\Product.ico'/>--> + <!--<Property Id='ARPPRODUCTICON' Value='ProductICO' />--> + + <Property Id='ARPHELPLINK' Value='https://clementtsang.github.io/bottom/stable'/> + + <UI> + <UIRef Id='WixUI_FeatureTree'/> + <!-- + Disabling the EULA dialog in the installer is a two step process: + + 1. Uncomment the following two `Publish` tags + 2. Comment out or remove the `<WiXVariable Id='WixUILicenseRtf'...` tag further down + + --> + <!--<Publish Dialog='WelcomeDlg' Control='Next' Event='NewDialog' Value='CustomizeDlg' Order='99'>1</Publish>--> + <!--<Publish Dialog='CustomizeDlg' Control='Back' Event='NewDialog' Value='WelcomeDlg' Order='99'>1</Publish>--> + + </UI> + + <!-- + Disabling the EULA dialog in the installer requires commenting out + or removing the following `WixVariable` tag + --> + <WixVariable Id='WixUILicenseRtf' Value='wix\License.rtf'/> + + + <!-- + Uncomment the next `WixVariable` tag to customize the installer's + Graphical User Interface (GUI) and add a custom banner image across + the top of each screen. See the WiX Toolset documentation for details + about customization. + + The banner BMP dimensions are 493 x 58 pixels. + --> + <!--<WixVariable Id='WixUIBannerBmp' Value='wix\Banner.bmp'/>--> + + + <!-- + Uncomment the next `WixVariable` tag to customize the installer's + Graphical User Interface (GUI) and add a custom image to the first + dialog, or screen. See the WiX Toolset documentation for details about + customization. + + The dialog BMP dimensions are 493 x 312 pixels. + --> + <!--<WixVariable Id='WixUIDialogBmp' Value='wix\Dialog.bmp'/>--> + + </Product> + +</Wix> |