mirror of
https://github.com/navidrome/navidrome.git
synced 2025-04-01 19:47:37 +03:00
Previously addLine would add-or-update, resulting in the custom settings being overriden on upgrade. createLine will only add to the ini if the key doesn't already exist.
86 lines
4.2 KiB
XML
86 lines
4.2 KiB
XML
<?xml version='1.0' encoding='windows-1252'?>
|
|
<?if $(var.Platform) = x64 ?>
|
|
<?define ProductName = "Navidrome" ?>
|
|
<?define UpgradeCode = "2f154974-1443-41b6-b808-b8be530291b3" ?>
|
|
<?define PlatformProgramFilesFolder = "ProgramFiles64Folder" ?>
|
|
<?define Win64 = 'yes' ?>
|
|
<?else ?>
|
|
<?define ProductName = "Navidrome (x86)" ?>
|
|
<?define UpgradeCode = "2f0572e4-7e8c-42e7-a186-77f70ec0911a" ?>
|
|
<?define PlatformProgramFilesFolder = "ProgramFilesFolder" ?>
|
|
<?define Win64 = "no" ?>
|
|
<?endif ?>
|
|
<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'>
|
|
<?include SettingsDlg.wxs?>
|
|
<?include Navidrome_UI_Flow.wxs?>
|
|
<Product Name="$(var.ProductName)" Id="*" UpgradeCode="$(var.UpgradeCode)" Language='1033' Codepage='1252' Version='$(var.Version)' Manufacturer='Deluan'>
|
|
|
|
<Package Id='*' Keywords='Installer' Description="$(var.ProductName)" Comments='' Manufacturer='Deluan' InstallerVersion='200' Languages='1033' Compressed='yes' SummaryCodepage='1252' InstallScope='perMachine' />
|
|
|
|
<MajorUpgrade AllowDowngrades="no" DowngradeErrorMessage="A newer version of $(var.ProductName) is already installed." />
|
|
|
|
<Media Id='1' Cabinet='main.cab' EmbedCab='yes' DiskPrompt="CD-ROM #1" />
|
|
<Property Id='DiskPrompt' Value="Navidrome Install [1]" />
|
|
<Property Id="REBOOT" Value="ReallySuppress" />
|
|
|
|
<Property Id="ND_PORT" Value="4533" />
|
|
<Property Id="ND_MUSICFOLDER" Value="C:\Music" />
|
|
<Property Id="ND_DATAFOLDER" Value="C:\ProgramData\Navidrome" />
|
|
|
|
<UIRef Id="Navidrome_UI_Flow"/>
|
|
|
|
<Directory Id='TARGETDIR' Name='SourceDir'>
|
|
<Directory Id="$(var.PlatformProgramFilesFolder)">
|
|
<Directory Id='INSTALLDIR' Name='Navidrome'>
|
|
|
|
<Component Id='LICENSEFile' Guid='eb5610a4-e3f3-4f36-ae2c-e96914e460c2' Win64="$(var.Win64)">
|
|
<File Id='LICENSE' Name='LICENSE' DiskId='1' Source='LICENSE' KeyPath='yes' />
|
|
</Component>
|
|
|
|
<Component Id='README.mdFile' Guid='d1ee412b-2ebc-4b0b-9fa7-0228ab707686' Win64="$(var.Win64)">
|
|
<File Id='README.md' Name='README.md' DiskId='1' Source='README.md' KeyPath='yes' />
|
|
</Component>
|
|
|
|
<Component Id="Configuration" Guid="9e17ed4b-ef13-44bf-a605-ed4132cff7f6" Win64="$(var.Win64)">
|
|
<IniFile Id="ConfigurationPort" Name="navidrome.ini" Action="createLine" Directory="INSTALLDIR" Key="Port" Section="default" Value="'[ND_PORT]'" />
|
|
<IniFile Id="ConfigurationMusicDir" Name="navidrome.ini" Action="createLine" Directory="INSTALLDIR" Key="MusicFolder" Section="default" Value="'[ND_MUSICFOLDER]'" />
|
|
<IniFile Id="ConfigurationDataDir" Name="navidrome.ini" Action="createLine" Directory="INSTALLDIR" Key="DataFolder" Section="default" Value="'[ND_DATAFOLDER]'" />
|
|
<IniFile Id="FFmpegPath" Name="navidrome.ini" Action="createLine" Directory="INSTALLDIR" Key="FFmpegPath" Section="default" Value="'[INSTALLDIR]ffmpeg.exe'" />
|
|
</Component>
|
|
|
|
<Component Id='MainExecutable' Guid='e645aa06-8bbc-40d6-8d3c-73b4f5b76fd7' Win64="$(var.Win64)">
|
|
<File Id='NavidromeExe' Name='Navidrome.exe' DiskId='1' Source='navidrome.exe' KeyPath='yes' />
|
|
<ServiceInstall
|
|
Description='Navidrome is a self-hosted music server and streamer'
|
|
ErrorControl='ignore'
|
|
Name = '$(var.ProductName)'
|
|
Id='NavidromeService'
|
|
Start='auto'
|
|
Type='ownProcess'
|
|
Vital='yes'
|
|
Arguments='service execute --configfile "[INSTALLDIR]navidrome.ini" --logfile "[ND_DATAFOLDER]\navidrome.log"'
|
|
/>
|
|
<ServiceControl Id='StartNavidromeService' Start='install' Stop='both' Remove='uninstall' Name='$(var.ProductName)' Wait='yes' />
|
|
</Component>
|
|
|
|
<Component Id='FFMpegExecutable' Guid='d17358f7-abdc-4080-acd3-6427903a7dd8' Win64="$(var.Win64)">
|
|
<File Id='ffmpeg.exe' Name='ffmpeg.exe' DiskId='1' Source='ffmpeg.exe' KeyPath='yes' />
|
|
</Component>
|
|
|
|
</Directory>
|
|
</Directory>
|
|
</Directory>
|
|
|
|
<InstallUISequence>
|
|
<Show Dialog="MyCustomPropertiesDlg" After="WelcomeDlg">Not Installed AND NOT WIX_UPGRADE_DETECTED</Show>
|
|
</InstallUISequence>
|
|
|
|
<Feature Id='Complete' Level='1'>
|
|
<ComponentRef Id='LICENSEFile' />
|
|
<ComponentRef Id='README.mdFile' />
|
|
<ComponentRef Id='Configuration'/>
|
|
<ComponentRef Id='MainExecutable' />
|
|
<ComponentRef Id='FFMpegExecutable' />
|
|
</Feature>
|
|
</Product>
|
|
</Wix>
|