diff --git a/.ci/windows/build.bat b/.ci/windows/build.bat index 4d392cb7..7e952237 100644 --- a/.ci/windows/build.bat +++ b/.ci/windows/build.bat @@ -4,7 +4,7 @@ if defined CI_COMMIT_TAG ( set VERSION=%CI_COMMIT_TAG% ) else ( - set VERSION=v0.11.3 + set VERSION=v0.12.0 ) set INSTVERSION=%VERSION:~1% set WINVERSION=%VERSION:~1%.%CI_JOB_ID% diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 464d0f86..b5865f5d 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -96,7 +96,7 @@ pages: - apk add curl jq script: - export LATEST_WINDOWS_NIGHTLY=$(curl "https://nheko.im/api/v4/projects/2/packages?package_name=windows-nightly&order_by=version&sort=desc" | jq -r '.[0].version') - - sed "s/0.11.3.4/${LATEST_WINDOWS_NIGHTLY}/g" -i resources/NhekoNightly.appinstaller + - sed "s/0.12.0.0/${LATEST_WINDOWS_NIGHTLY}/g" -i resources/NhekoNightly.appinstaller - mkdir public - mv resources/NhekoNightly.appinstaller public needs: diff --git a/CHANGELOG.md b/CHANGELOG.md index 687307a3..955dcb04 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,16 @@ # Changelog -## [0.12.0] -- unreleased +## [0.12.0] -- 2024-06-12 + +### Notes + +The packages for windows are split into an appinstaller file with autoupdates +and an msix, which can be installed directly and won't check for updates. The +appimage is currently disabled until someone ports it to Qt6. The flatpak appid +changed and you will need to migrate manually. + +For packagers most of our dependencies have been changed or updated. Most +significantly Nheko now depends on KDSingleApplication and Qt6. ### Highlights @@ -48,7 +58,7 @@ - Disable workarounds for inline images for Qt6.7 and up. - Various improvements around window activation on Wayland. (q234rty) - Update emoji shortcodes. (TheDrawingCoder-Gamer) -- Windows and Apple Silicon builds on our own hardware. (Thanks Thulnima for +- Windows and Apple Silicon builds on our own hardware. (Thanks Thulinma for sponsoring access the Apple Silicon box) - MSIX builds and appinstaller for Windows with valid signatures and automatic updates. - Add environment variable to dump the video call pipeline. diff --git a/CMakeLists.txt b/CMakeLists.txt index e374177a..04738bda 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -113,8 +113,8 @@ include(QtCommon) include(GNUInstallDirs) set(CPACK_PACKAGE_VERSION_MAJOR "0") -set(CPACK_PACKAGE_VERSION_MINOR "11") -set(CPACK_PACKAGE_VERSION_PATCH "3") +set(CPACK_PACKAGE_VERSION_MINOR "12") +set(CPACK_PACKAGE_VERSION_PATCH "0") set(PROJECT_VERSION_MAJOR ${CPACK_PACKAGE_VERSION_MAJOR}) set(PROJECT_VERSION_MINOR ${CPACK_PACKAGE_VERSION_MINOR}) set(PROJECT_VERSION_PATCH ${CPACK_PACKAGE_VERSION_PATCH}) @@ -125,8 +125,8 @@ fix_project_version() # Set additional project information set(COMPANY "Nheko") -set(COPYRIGHT "Copyright (c) 2023 Nheko Contributors") -set(IDENTIFIER "io.github.nheko-reborn.nheko") +set(COPYRIGHT "Copyright (c) 2024 Nheko Contributors") +set(IDENTIFIER "im.nheko.Nheko") add_project_meta(META_FILES_TO_INCLUDE) diff --git a/appveyor.yml b/appveyor.yml deleted file mode 100644 index 084e7179..00000000 --- a/appveyor.yml +++ /dev/null @@ -1,134 +0,0 @@ ---- - -version: 0.11.3-{build} - -configuration: Release -image: Visual Studio 2022 -platform: x64 - -environment: - APPVEYOR_SAVE_CACHE_ON_ERROR: true - MATRIX_ACCESS_TOKEN: - secure: Qoy+QQ8zWXYCQrck9GtXJsoPTv9r/rhgCDUlKJ6ue+gkteYG40E9MxgwP1svn6bse20H4z6Svrxn8kFbcJB7Wg2Cnv1s326/vsJJzhWir2eHFFGK+f4SB992/U0HoQmk3Cq5hPk7dLcA7KqHIa1g1PTSFPfl1VODJ2UqqAyn8nzbC5ym+wwU1buJqoWPlTyHBW7eE8wNe77+qI18XpF7NN8yuOOyg3Tzup9YyXLrI36XiJu/5JD3j3s3V1QiUTpuLyQzqwuBUOf1MHTbzuPwHm3ZwzSM98WD6aL6riaK9qa7mDbSx1aY0ukIYSY9IdAfHNwZY/DEAn+QAVD+ZTvPq04ASv+kmSFpOBKr07kpqfM= - - - -cache: - - c:\hunter\ -> appveyor.yml, CMakeLists.txt, cmake/Hunter/config.cmake - - build\_deps -> appveyor.yml, CMakeLists.txt - -build: - verbosity: minimal - -install: - - set QT_DIR=C:\Qt\6.5\msvc2019_64 - - set PATH=C:\Strawberry\perl\bin;C:\Python39-x64;%QT_DIR%\bin;%PATH% - -build_script: - # VERSION format: branch-master/branch-1.2 - # INSTVERSION format: x.y.z - # WINVERSION format: 9999.0.0.123/1.2.0.234 - - if "%APPVEYOR_REPO_TAG%"=="false" set INSTVERSION=0.11.3 - - if "%APPVEYOR_REPO_TAG%"=="false" set VERSION=0.11.3 - - if "%APPVEYOR_REPO_TAG%"=="false" set WINVERSION=%INSTVERSION%.%APPVEYOR_BUILD_NUMBER% - # VERSION format: v1.2.3/v1.3.4 - # INSTVERSION format: 1.2.3/1.3.4 - # WINVERSION format: 1.2.3.123/1.3.4.234 - - if "%APPVEYOR_REPO_TAG%"=="true" set VERSION=%APPVEYOR_REPO_TAG_NAME% - - if "%APPVEYOR_REPO_TAG%"=="true" set INSTVERSION=%VERSION:~1% - - if "%APPVEYOR_REPO_TAG%"=="true" set WINVERSION=%VERSION:~1%.%APPVEYOR_BUILD_NUMBER% - - set DATE=%date:~10,4%-%date:~4,2%-%date:~7,2% - - echo %VERSION% - - echo %INSTVERSION% - - echo %DATE% - - # Build nheko - - cmake -G "Visual Studio 17 2022" -A x64 -H. -Bbuild - -DHUNTER_ROOT="C:\hunter" - -DHUNTER_ENABLED=ON -DBUILD_SHARED_LIBS=OFF -DUSE_BUNDLED_OPENSSL=ON -DUSE_BUNDLED_KDSINGLEAPPLICATION=ON - -DCMAKE_BUILD_TYPE=Release -DHUNTER_CONFIGURATION_TYPES=Release - - - cmake --build build --config Release - - - call "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" x64 - - git clone https://github.com/Nheko-Reborn/qt-jdenticon.git - - cd qt-jdenticon - - qmake - - nmake - - cd .. - -after_build: - # Variables - - set BUILD=%APPVEYOR_BUILD_FOLDER% - - echo %BUILD% - - mkdir NhekoRelease - - copy build\Release\nheko.exe NhekoRelease\nheko.exe - - copy qt-jdenticon\release\qtjdenticon0.dll NhekoRelease\qtjdenticon.dll - - copy build\_deps\cmark-build\src\Release\cmark.dll NhekoRelease\cmark.dll - - windeployqt --qmldir resources\qml\ NhekoRelease\nheko.exe - - - 7z a nheko_win_64.zip .\NhekoRelease\* - - ls -lh build\Release\ - - ls -lh NhekoRelease\ - - mkdir NhekoData - - xcopy .\NhekoRelease\*.* NhekoData\*.* /s /e /c /y - # - # Create the Qt Installer Framework version - # - - mkdir installer - - mkdir installer\config - - mkdir installer\packages - - mkdir installer\packages\io.github.nhekoreborn.nheko - - mkdir installer\packages\io.github.nhekoreborn.nheko\data - - mkdir installer\packages\io.github.nhekoreborn.nheko\meta - # Copy installer data - - copy %BUILD%\resources\nheko.ico installer\config - - copy %BUILD%\resources\nheko.png installer\config - - copy %BUILD%\COPYING installer\packages\io.github.nhekoreborn.nheko\meta\license.txt - - copy %BUILD%\deploy\installer\config.xml installer\config - - copy %BUILD%\deploy\installer\controlscript.qs installer\config - - copy %BUILD%\deploy\installer\uninstall.qs installer\packages\io.github.nhekoreborn.nheko\data - - copy %BUILD%\deploy\installer\gui\package.xml installer\packages\io.github.nhekoreborn.nheko\meta - - copy %BUILD%\deploy\installer\gui\installscript.qs installer\packages\io.github.nhekoreborn.nheko\meta - # Amend version and date - - sed -i "s/__VERSION__/%VERSION%/" installer\config\config.xml - - sed -i "s/__VERSION__/%VERSION%/" installer\packages\io.github.nhekoreborn.nheko\meta\package.xml - - sed -i "s/__DATE__/%DATE%/" installer\packages\io.github.nhekoreborn.nheko\meta\package.xml - # Copy nheko data - - xcopy NhekoData\*.* installer\packages\io.github.nhekoreborn.nheko\data\*.* /s /e /c /y - - copy NhekoRelease\nheko.exe installer\packages\io.github.nhekoreborn.nheko\data - - mkdir tools - - curl -L -O https://download.qt.io/official_releases/qt-installer-framework/4.3.0/QtInstallerFramework-windows-x86-4.3.0.exe - - 7z x QtInstallerFramework-windows-x86-4.3.0.exe -otools -aoa - - set PATH=%BUILD%\tools\bin;%PATH% - - binarycreator.exe -f -c installer\config\config.xml -p installer\packages nheko-installer.exe - - # build an msix - - mkdir msix - - xcopy .\NhekoRelease\*.* msix\*.* /s /e /c /y - - copy %BUILD%\resources\nheko.png msix - - copy %BUILD%\resources\AppxManifest.xml msix - - del msix\vc_redist* - - 'sed -i "s/ Version=[^ ]*/ Version=\"%WINVERSION%\"/" msix\AppxManifest.xml' - - '"C:\Program Files (x86)\Windows Kits\10\App Certification Kit\makeappx.exe" pack -d msix -p nheko.msix' - - - copy nheko-installer.exe nheko-%APPVEYOR_REPO_TAG_NAME%-installer.exe - - copy nheko-installer.exe nheko-%APPVEYOR_PULL_REQUEST_HEAD_COMMIT%-installer.exe - - ps: .\.ci\upload-nightly.ps1 - -deploy: - - description: "Development builds" - provider: GitHub - auth_token: - secure: "ShStWeqp+TkYqJPQr7uFZb+B8ZTgC7Iwth+IkhjfRDCTLhy8gtWvlPzlQilder3E" - artifact: nheko-${APPVEYOR_REPO_TAG_NAME}-installer.exe - force_update: true - prerelease: true - on: - appveyor_repo_tag: true - -artifacts: - - path: nheko_win_64.zip - - path: nheko.msix - - path: nheko-$(APPVEYOR_REPO_TAG_NAME)-installer.exe - - path: nheko-$(APPVEYOR_PULL_REQUEST_HEAD_COMMIT)-installer.exe diff --git a/resources/AppxManifest.xml b/resources/AppxManifest.xml index 9f933604..8253f839 100644 --- a/resources/AppxManifest.xml +++ b/resources/AppxManifest.xml @@ -4,7 +4,7 @@ xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10" xmlns:uap10="http://schemas.microsoft.com/appx/manifest/uap/windows10/10" xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"> - + Nheko Nheko-Reborn diff --git a/resources/NhekoNightly.appinstaller b/resources/NhekoNightly.appinstaller index bd94f5d9..88f1fd8a 100644 --- a/resources/NhekoNightly.appinstaller +++ b/resources/NhekoNightly.appinstaller @@ -1,6 +1,6 @@ - + diff --git a/resources/nheko.appdata.xml.in b/resources/nheko.appdata.xml.in index 69a632a1..77d1c6ad 100644 --- a/resources/nheko.appdata.xml.in +++ b/resources/nheko.appdata.xml.in @@ -59,6 +59,13 @@ https://github.com/Nheko-Reborn/nheko https://github.com/Nheko-Reborn + + +

This release features a complete port to Qt6, intentional mentions, expiring messages, ignoring users, better sticker and emoji handling and much, much more!

+
+ + https://github.com/Nheko-Reborn/nheko/releases/tag/v0.12.0 +