From 9d793b90e27fc64e613ab8cb837532347a03de7c Mon Sep 17 00:00:00 2001 From: Maxim Logaev Date: Wed, 3 Apr 2024 18:03:00 +0300 Subject: [PATCH] Added Dino with windows console Signed-off-by: Maxim Logaev --- build-win64.sh | 6 ++++++ windows-installer/dino.nsi | 22 ++++++++++++++-------- 2 files changed, 20 insertions(+), 8 deletions(-) diff --git a/build-win64.sh b/build-win64.sh index cd39eaa4..a0d6c1b1 100644 --- a/build-win64.sh +++ b/build-win64.sh @@ -134,6 +134,12 @@ dist_install() { _dist_arg=${1:-$DIST_DIR} + msg "Generate dino-with-console.exe" + cp -f "$_dist_arg/bin/dino.exe" "$_dist_arg/bin/dino-with-console.exe" + # IMAGE_SUBSYSTEM_WINDOWS_CUI = 0x0003 + # SUBSYSTEM_OFFSET = 0xDC (220) + printf '\x03\x00' | dd of="$_dist_arg/bin/dino-with-console.exe" bs=1 seek=220 count=2 conv=notrunc + msg "Copying MINGW64 dependencies" cp /mingw64/bin/gdbus.exe "$_dist_arg/bin" cp /mingw64/bin/gspawn-win64-helper.exe "$_dist_arg/bin" diff --git a/windows-installer/dino.nsi b/windows-installer/dino.nsi index 16c45de9..fcd11b61 100644 --- a/windows-installer/dino.nsi +++ b/windows-installer/dino.nsi @@ -3,10 +3,10 @@ Unicode True RequestExecutionLevel user SetCompressor /SOLID lzma -!define MUI_PRODUCT "Dino" +!define MUI_PRODUCT "Dino+" !define MUI_PRODUCT_NAME ${MUI_PRODUCT} !define MUI_BRANDINGTEXT ${MUI_PRODUCT} -!define PRODUCT_WEBSITE "https://dino.im" +!define PRODUCT_WEBSITE "https://github.com/mxlgv/dino" !define MUI_ICON "win64-dist/dino.ico" !define ICON "win64-dist/dino.ico" !define MUI_COMPONENTSPAGE_NODESC @@ -18,7 +18,7 @@ SetCompressor /SOLID lzma !include "english.nsh" Name ${MUI_PRODUCT} -BrandingText "Communicating happiness" +BrandingText "Dino+, a modern XMPP/Jabber client" # define installer name OutFile "dino-installer.exe" @@ -35,15 +35,21 @@ File /r win64-dist\*.* # define uninstaller name WriteUninstaller $INSTDIR\uninstaller.exe -# Create a shortcut for startmenu +# Create Dino shortcuts macro +!macro CreateDinoShortcut Path + CreateShortCut "${Path}\Dino+.lnk" "$INSTDIR\bin\dino.exe" "" "$INSTDIR\dino.ico" + CreateShortCut "${Path}\Dino+ (debug).lnk" "$WINDIR\system32\cmd.exe" '/c set G_MESSAGES_DEBUG=all&&"$INSTDIR\bin\dino-with-console.exe"' "$INSTDIR\dino.ico" +!macroend + +# Create shortcuts for startmenu CreateDirectory "$SMPROGRAMS\Dino" -CreateShortcut "$SMPROGRAMS\Dino\Dino.lnk" "$INSTDIR\bin\dino.exe" "" "$INSTDIR\dino.ico" +!insertmacro CreateDinoShortcut "$SMPROGRAMS\Dino" CreateShortcut "$SMPROGRAMS\Dino\Uninstaller.lnk" "$INSTDIR\uninstaller.exe" CreateShortcut "$SMPROGRAMS\Dino\License.lnk" "notepad.exe" "$INSTDIR\LICENSE" -CreateShortcut "$SMPROGRAMS\Dino\Dino website.lnk" "https://dino.im" "" "$INSTDIR\dino.ico" +CreateShortcut "$SMPROGRAMS\Dino\Dino+ website.lnk" "https://github.com/mxlgv/dino" "" "$INSTDIR\dino.ico" -# Create a shortcut for desktop -CreateShortCut "$DESKTOP\Dino.lnk" "$INSTDIR\bin\dino.exe" "" "$INSTDIR\dino.ico" +# Create a shortcuts for desktop +!insertmacro CreateDinoShortcut "$DESKTOP" # set application ID # No "ApplicationID" plugin for NSIS MINGW64