diff --git a/build/installer-sidebar.bmp b/build/installer-sidebar.bmp new file mode 100644 index 0000000000..5a2690b91f Binary files /dev/null and b/build/installer-sidebar.bmp differ diff --git a/build/installer.nsh b/build/installer.nsh new file mode 100644 index 0000000000..52547c5d62 --- /dev/null +++ b/build/installer.nsh @@ -0,0 +1,31 @@ +!macro preInit + ; This macro is inserted at the beginning of the NSIS .OnInit callback + ; Check Windows version and enforce minimum Windows 10 requirement + ${If} ${AtLeastWin10} + ; Windows 10 or later - continue with installation + Goto continue_install + ${Else} + MessageBox MB_OK|MB_ICONSTOP "This application requires Windows 10 or later.$\r$\n$\r$\nYour Windows version is not supported.$\r$\n$\r$\nPlease upgrade to Windows 10 or later to continue." + Abort "Windows version requirement not met" + ${EndIf} + + continue_install: + ; Continue with normal installation process +!macroend + +!ifndef BUILD_UNINSTALLER + Function AddToStartup + CreateShortCut "$SMSTARTUP\Session.lnk" "$INSTDIR\Session.exe" "" + FunctionEnd + + ; Using the readme setting as an easy way to add an add to startup option + !define MUI_FINISHPAGE_SHOWREADME + !define MUI_FINISHPAGE_SHOWREADME_TEXT "Start Session when Windows starts" + !define MUI_FINISHPAGE_SHOWREADME_FUNCTION AddToStartup +!endif + +!macro customUnInstall + ; Custom uninstall macro + ; This runs during the uninstallation process + Delete "$SMSTARTUP\Session.lnk" +!macroend diff --git a/build/release-notes.md b/build/release-notes.md index 730e671a2a..238ffd7f8c 100644 --- a/build/release-notes.md +++ b/build/release-notes.md @@ -16,7 +16,7 @@ Session uses the Session encryption protocol and the Oxen blockchain’s decentr

Supported Platforms

- + Session requires Windows 10 or later, macOS Ventura (13) or later, or a Linux distribution with glibc 2.35 or later like Debian 12 or Ubuntu 22.04. diff --git a/package.json b/package.json index 92218de795..0a98e2a874 100644 --- a/package.json +++ b/package.json @@ -214,6 +214,7 @@ "gatekeeperAssess": false, "entitlements": "build/entitlements.mac.plist", "entitlementsInherit": "build/entitlements.mac.plist", + "minimumSystemVersion": "13.0.0", "extendInfo": { "NSCameraUsageDescription": "Session requires camera access to record video.", "NSMicrophoneUsageDescription": "Session requires microphone access to record audio." @@ -240,7 +241,9 @@ "nsis": { "deleteAppDataOnUninstall": true, "oneClick": false, - "allowToChangeInstallationDirectory": true + "allowToChangeInstallationDirectory": true, + "include": "build/installer.nsh", + "installerSidebar": "build/installer-sidebar.bmp" }, "linux": { "category": "Network;InstantMessaging;Chat",