added version to Installer name, add start menu entries, refresh audio devices on request

This commit is contained in:
DJ2LS 2024-03-03 11:09:29 +01:00
parent 01f3cefe55
commit 7e1d6f6100
3 changed files with 64 additions and 1 deletions

View file

@ -65,3 +65,5 @@ jobs:
with: with:
draft: true draft: true
files: ./FreeDATA-Installer.exe files: ./FreeDATA-Installer.exe
tag_name: ${{ github.ref_name }}
name: 'FreeDATA-Installer-${{ github.ref_name }}'

View file

@ -42,6 +42,9 @@ InstallDirRegKey HKCU "Software\FreeDATA" "Install_Dir"
; Language (you can choose and configure the language(s) you want) ; Language (you can choose and configure the language(s) you want)
!insertmacro MUI_LANGUAGE "English" !insertmacro MUI_LANGUAGE "English"
!define StartMenuFolder "FreeDATA"
; Installer Sections ; Installer Sections
Section "FreeData Server" SEC01 Section "FreeData Server" SEC01
; Set output path to the installation directory ; Set output path to the installation directory
@ -63,6 +66,16 @@ doneBackup:
; Create Uninstaller ; Create Uninstaller
WriteUninstaller "$INSTDIR\Uninstall.exe" WriteUninstaller "$INSTDIR\Uninstall.exe"
; Create a Start Menu directory
CreateDirectory "$SMPROGRAMS\${StartMenuFolder}"
; Create shortcut in the Start Menu directory
CreateShortCut "$SMPROGRAMS\${StartMenuFolder}\FreeDATA Server.lnk" "$INSTDIR\freedata-server\freedata-server.exe"
; Create an Uninstall shortcut
CreateShortCut "$SMPROGRAMS\${StartMenuFolder}\Uninstall FreeDATA.lnk" "$INSTDIR\Uninstall.exe"
; Backup "config.ini" before overwriting files ; Backup "config.ini" before overwriting files
backupConfig: backupConfig:
Rename $INSTDIR\freedata-server\config.ini $INSTDIR\freedata-server\config.ini.bak Rename $INSTDIR\freedata-server\config.ini $INSTDIR\freedata-server\config.ini.bak
@ -86,6 +99,13 @@ Section "FreeData x64 GUI" SEC02
; Create a shortcut on the desktop for the GUI ; Create a shortcut on the desktop for the GUI
CreateShortCut "$DESKTOP\FreeDATA GUI.lnk" "$INSTDIR\freedata-gui\freedata.exe" CreateShortCut "$DESKTOP\FreeDATA GUI.lnk" "$INSTDIR\freedata-gui\freedata.exe"
; Create a start menu shortcut
CreateShortCut "$SMPROGRAMS\${StartMenuFolder}\FreeDATA GUI.lnk" "$INSTDIR\freedata-gui\freedata.exe"
; Create an Uninstall shortcut
CreateShortCut "$SMPROGRAMS\${StartMenuFolder}\Uninstall FreeDATA.lnk" "$INSTDIR\Uninstall.exe"
SectionEnd SectionEnd
; Uninstaller Section ; Uninstaller Section
@ -102,5 +122,13 @@ Section "Uninstall"
Delete "$DESKTOP\FreeDATA Server.lnk" Delete "$DESKTOP\FreeDATA Server.lnk"
Delete "$DESKTOP\FreeDATA GUI.lnk" Delete "$DESKTOP\FreeDATA GUI.lnk"
; Additional uninstallation commands here ; Remove Start Menu shortcuts
Delete "$SMPROGRAMS\${StartMenuFolder}\*.*"
RMDir "$SMPROGRAMS\${StartMenuFolder}"
; Attempt to delete the uninstaller itself
Delete $EXEPATH
; Now remove the installation directory if it's empty
RMDir /r $INSTDIR
SectionEnd SectionEnd

View file

@ -9,6 +9,7 @@ setActivePinia(pinia);
import { settingsStore as settings, onChange } from "../store/settingsStore.js"; import { settingsStore as settings, onChange } from "../store/settingsStore.js";
import { sendModemCQ } from "../js/api.js"; import { sendModemCQ } from "../js/api.js";
import { loadAudioDevices } from "../js/deviceFormHelper";
import { useStateStore } from "../store/stateStore.js"; import { useStateStore } from "../store/stateStore.js";
const state = useStateStore(pinia); const state = useStateStore(pinia);
@ -201,11 +202,28 @@ function testHamlib() {
</button> </button>
</label> </label>
</div> </div>
<!-- Audio Input Device --> <!-- Audio Input Device -->
<div class="input-group input-group-sm mb-1"> <div class="input-group input-group-sm mb-1">
<label class="input-group-text w-50" <label class="input-group-text w-50"
>Audio Input device</label >Audio Input device</label
> >
<button
type="button"
id="stopModem"
class="btn btn-sm btn-secondary"
data-bs-toggle="tooltip"
data-bs-trigger="hover"
data-bs-html="false"
title="Refresh audio devices"
@click="loadAudioDevices"
>
<i class="bi bi-arrow-clockwise"></i>
</button>
<select <select
class="form-select form-select-sm" class="form-select form-select-sm"
aria-label=".form-select-sm" aria-label=".form-select-sm"
@ -226,6 +244,21 @@ function testHamlib() {
<label class="input-group-text w-50" <label class="input-group-text w-50"
>Audio Output device</label >Audio Output device</label
> >
<button
type="button"
id="stopModem"
class="btn btn-sm btn-secondary"
data-bs-toggle="tooltip"
data-bs-trigger="hover"
data-bs-html="false"
title="Refresh audio devices"
@click="loadAudioDevices"
>
<i class="bi bi-arrow-clockwise"></i>
</button>
<select <select
class="form-select form-select-sm" class="form-select form-select-sm"
aria-label=".form-select-sm" aria-label=".form-select-sm"