Skip to content

Feature: Desktop Builds x64 Linux - #3

Merged
rikled merged 14 commits into
mainfrom
feature/desktopappsbuilds
May 6, 2026
Merged

Feature: Desktop Builds x64 Linux#3
rikled merged 14 commits into
mainfrom
feature/desktopappsbuilds

Conversation

@rikled

@rikled rikled commented Feb 21, 2026

Copy link
Copy Markdown
Member

This PR introduces CMake as build routine for desktop-apps.

Depends on: Euro-Office/core#13, Euro-Office/desktop-sdk#1

@rikled
rikled force-pushed the feature/desktopappsbuilds branch from 423c2dc to 99e2e22 Compare March 6, 2026 11:31
@rikled
rikled changed the base branch from master to fork March 6, 2026 11:32
rikled added 10 commits March 19, 2026 03:09
Signed-off-by: Hendrik Leidinger <hendrik.leidinger@nextcloud.com>
…y boost missing

Signed-off-by: Hendrik Leidinger <hendrik.leidinger@nextcloud.com>
Signed-off-by: Hendrik Leidinger <hendrik.leidinger@nextcloud.com>
Signed-off-by: Hendrik Leidinger <hendrik.leidinger@nextcloud.com>
Signed-off-by: Hendrik Leidinger <hendrik.leidinger@nextcloud.com>
Signed-off-by: Hendrik Leidinger <hendrik.leidinger@nextcloud.com>
Signed-off-by: Hendrik Leidinger <hendrik.leidinger@nextcloud.com>
Signed-off-by: Hendrik Leidinger <hendrik.leidinger@nextcloud.com>
Signed-off-by: Hendrik Leidinger <hendrik.leidinger@nextcloud.com>
Signed-off-by: Hendrik Leidinger <hendrik.leidinger@nextcloud.com>
@rikled
rikled force-pushed the feature/desktopappsbuilds branch from 168e397 to 7124a57 Compare March 19, 2026 10:09
rikled added 2 commits March 28, 2026 19:33
Signed-off-by: Hendrik Leidinger <hendrik.leidinger@nextcloud.com>
Signed-off-by: Hendrik Leidinger <hendrik.leidinger@nextcloud.com>
@rikled
rikled marked this pull request as ready for review March 31, 2026 22:08
@rikled
rikled requested a review from Aiiaiiio March 31, 2026 22:10
Signed-off-by: Hendrik Leidinger <hendrik.leidinger@nextcloud.com>
Comment thread win-linux/CMakeLists.txt

# 10. Translations
file(GLOB TS_FILES "langs/*.ts")
qt5_create_translation(DesktopEditors TS_FILES ${TS_FILES})

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
qt5_create_translation(DesktopEditors TS_FILES ${TS_FILES})
qt_create_translation(DesktopEditors TS_FILES ${TS_FILES})

Comment thread win-linux/CMakeLists.txt
Comment on lines +384 to +388
Qt${QT_VERSION_MAJOR}::Widgets
Qt${QT_VERSION_MAJOR}::Svg
Qt${QT_VERSION_MAJOR}::PrintSupport
Qt${QT_VERSION_MAJOR}::Multimedia
Qt${QT_VERSION_MAJOR}::MultimediaWidgets

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Qt${QT_VERSION_MAJOR}::Widgets
Qt${QT_VERSION_MAJOR}::Svg
Qt${QT_VERSION_MAJOR}::PrintSupport
Qt${QT_VERSION_MAJOR}::Multimedia
Qt${QT_VERSION_MAJOR}::MultimediaWidgets
Qt::Widgets
Qt::Svg
Qt::PrintSupport
Qt::Multimedia
Qt::MultimediaWidgets

Use qt versionless targets

Comment thread win-linux/CMakeLists.txt
Comment on lines +423 to +424
Qt${QT_VERSION_MAJOR}::DBus
Qt${QT_VERSION_MAJOR}::X11Extras

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Qt${QT_VERSION_MAJOR}::DBus
Qt${QT_VERSION_MAJOR}::X11Extras
Qt::DBus
Qt::X11Extras

Comment thread win-linux/CMakeLists.txt
Comment on lines +425 to +427
${ICU_INSTALL_DIR_ABS}/lib/libicuuc.so.${ICU_MAJOR_VER}
${ICU_INSTALL_DIR_ABS}/lib/libicudata.so.${ICU_MAJOR_VER}
${ICU_INSTALL_DIR_ABS}/lib/libicui18n.so.${ICU_MAJOR_VER}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ideally, this should use https://cmake.org/cmake/help/latest/module/FindICU.html because adding directly .so files to target_link_libraries is quite ugly

Comment thread win-linux/CMakeLists.txt
Comment on lines +137 to +138
set(QT_DIR "${QT_ROOT}/lib/cmake/Qt5")
set(Qt5_DIR "${QT_ROOT}/lib/cmake/Qt5")

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
set(QT_DIR "${QT_ROOT}/lib/cmake/Qt5")
set(Qt5_DIR "${QT_ROOT}/lib/cmake/Qt5")

Not used

Comment thread win-linux/CMakeLists.txt
Comment on lines +348 to +350
qt5_add_resources(RESOURCES resources.qrc)
if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/extras.qrc")
qt5_add_resources(RESOURCES extras.qrc)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
qt5_add_resources(RESOURCES resources.qrc)
if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/extras.qrc")
qt5_add_resources(RESOURCES extras.qrc)
qt_add_resources(RESOURCES resources.qrc)
if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/extras.qrc")
qt_add_resources(RESOURCES extras.qrc)

Comment thread win-linux/CMakeLists.txt
qt5_add_resources(RESOURCES extras.qrc)
endif()

add_executable(DesktopEditors ${COMMON_SOURCES} ${COMMON_HEADERS} ${RESOURCES})

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

modern cmake would define the target on top and then use target_sources instead

Comment thread win-linux/CMakeLists.txt
set_default_options(DesktopEditors)

find_package(PkgConfig REQUIRED)
pkg_check_modules(DBUS REQUIRED dbus-1)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
pkg_check_modules(DBUS REQUIRED dbus-1)
pkg_check_modules(DBUS REQUIRED IMPORTED_TARGET dbus-1)

Comment thread win-linux/CMakeLists.txt
src/prop
src
${GTK3_INCLUDE_DIRS}
${DBUS_INCLUDE_DIRS}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
${DBUS_INCLUDE_DIRS}

Comment thread win-linux/CMakeLists.txt
Qt${QT_VERSION_MAJOR}::Multimedia
Qt${QT_VERSION_MAJOR}::MultimediaWidgets
${PLATFORM_LIBS}
${DBUS_LIBRARIES}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
${DBUS_LIBRARIES}
PkgConfig::DBUS

@rikled

rikled commented May 6, 2026

Copy link
Copy Markdown
Member Author

Thanks for the comments. We currently need qt5.9.9 for DesktopEditors to work, so we need to explicitly point to our own compiled version. I'll merge this now to have something working, but feel free to open a PR with improvements :)

@rikled
rikled merged commit fd59435 into main May 6, 2026
@chrip chrip mentioned this pull request Aug 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants