summaryrefslogtreecommitdiff
path: root/alacritty/windows/wix/alacritty.wxs
blob: 2298fbe573d52c53908a5fcda5cb8fd36320c8c6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
<?xml version="1.0" encoding="windows-1252"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
    <Product Name="Alacritty" Id="*" UpgradeCode="87c21c74-dbd5-4584-89d5-46d9cd0c40a7" Language="1033" Codepage="1252" Version="0.11.0" Manufacturer="Alacritty">
        <Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine"/>
        <MajorUpgrade AllowSameVersionUpgrades="yes" DowngradeErrorMessage="A newer version of [ProductName] is already installed."/>
        <Icon Id="AlacrittyIco" SourceFile=".\extra\windows\alacritty.ico"/>
        <WixVariable Id="WixUILicenseRtf" Value=".\extra\windows\wix\license.rtf"/>
        <Property Id="ARPPRODUCTICON" Value="AlacrittyIco"/>
        <MediaTemplate EmbedCab="yes"/>
        <UIRef Id="WixUI_Minimal"/>

        <Feature Id="ProductFeature" Title="ConsoleApp" Level="1">
            <ComponentRef Id="AlacrittyExe"/>
            <ComponentRef Id="AlacrittyShortcut"/>
            <ComponentRef Id="ModifyPathEnv"/>
            <ComponentRef Id="ContextMenu"/>
        </Feature>

        <!-- Create directories -->
        <Directory Id="TARGETDIR" Name="SourceDir">
            <Directory Id="ProgramFiles64Folder">
                <Directory Id="AlacrittyProgramFiles" Name="Alacritty"/>
            </Directory>
            <Directory Id="ProgramMenuFolder">
                <Directory Id="AlacrittyProgramMenu" Name="Alacritty"/>
            </Directory>
        </Directory>

        <!-- Application binaries -->
        <DirectoryRef Id="AlacrittyProgramFiles">
            <Component Id="AlacrittyExe" Guid="*">
                <File Id="AlacrittyExeFile" Source=".\target\release\alacritty.exe" Name="alacritty.exe" KeyPath="yes"/>
            </Component>
        </DirectoryRef>

        <DirectoryRef Id="AlacrittyProgramMenu">
            <!-- Application shortcut -->
            <Component Id="AlacrittyShortcut" Guid="aa36e61a-23cd-4383-b744-2f78e912f0dc">
                <Shortcut Id="AlacrittyShortcutFile" Name="Alacritty" Description="A cross-platform, GPU-accelerated terminal emulator" Target="[AlacrittyProgramFiles]alacritty.exe"/>
                <RemoveFolder Id="AlacrittyProgramMenu" On="uninstall"/>
                <RegistryValue Root="HKCU" Key="Software\Microsoft\Alacritty" Name="installed" Type="integer" Value="1" KeyPath="yes"/>
            </Component>
        </DirectoryRef>

        <DirectoryRef Id="AlacrittyProgramFiles">
            <!-- Add to PATH -->
            <Component Id="ModifyPathEnv" Guid="edf0b679-9eb6-46f7-a5d1-5160f30acb34" KeyPath="yes">
                <Environment Id="PathEnv" Value="[AlacrittyProgramFiles]" Name="PATH" Permanent="no" Part="first" Action="set" System="yes"/>
            </Component>
        </DirectoryRef>

        <DirectoryRef Id="TARGETDIR">
            <!-- Add context menu -->
            <Component Id="ContextMenu" Guid="449f9121-f7b9-41fe-82da-52349ea8ff91">
                <RegistryKey Root="HKCU" Key="Software\Classes\Directory\Background\shell\Open Alacritty here\command">
                    <RegistryValue Type="string" Value="[AlacrittyProgramFiles]alacritty.exe" KeyPath="yes"/>
                </RegistryKey>
                <RegistryKey Root="HKCU" Key="Software\Classes\Directory\Background\shell\Open Alacritty here">
                    <RegistryValue Type="string" Name="Icon" Value="[AlacrittyProgramFiles]alacritty.exe"/>
                </RegistryKey>
            </Component>
        </DirectoryRef>
    </Product>
</Wix>