diff options
-rw-r--r-- | CMakeLists.txt | 2 | ||||
-rw-r--r-- | data/CMakeLists.txt | 35 | ||||
-rw-r--r-- | data/ayatana-indicator-datetime.service.in | 4 | ||||
-rw-r--r-- | data/lomiri-indicator-datetime.service.in | 11 | ||||
-rw-r--r-- | debian/ayatana-indicator-datetime-common.install | 3 | ||||
-rw-r--r-- | debian/ayatana-indicator-datetime.install | 3 | ||||
-rw-r--r-- | debian/ayatana-indicator-datetime.links | 2 | ||||
-rw-r--r-- | debian/changelog | 9 | ||||
-rw-r--r-- | debian/compat | 1 | ||||
-rw-r--r-- | debian/control | 65 | ||||
-rw-r--r-- | debian/lomiri-indicator-datetime.install | 2 | ||||
-rwxr-xr-x | debian/rules | 70 | ||||
-rw-r--r-- | src/CMakeLists.txt | 12 | ||||
-rwxr-xr-x[-rw-r--r--] | tests/run-mkcal-db-test.sh | 0 |
14 files changed, 181 insertions, 38 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index ed0fe1d..e20f9fb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,5 @@ cmake_minimum_required (VERSION 3.16) -project (ayatana-indicator-datetime VERSION 24.5.1 LANGUAGES C CXX) +project (ayatana-indicator-datetime VERSION 25.4.0 LANGUAGES C CXX) list (APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake) diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt index 726bcec..80a5a93 100644 --- a/data/CMakeLists.txt +++ b/data/CMakeLists.txt @@ -1,4 +1,13 @@ ## +## indicator variant +## +if (ENABLE_LOMIRI_FEATURES) + set (INDICATOR_VARIANT_NAME "lomiri-indicator-datetime") +else () + set (INDICATOR_VARIANT_NAME "${CMAKE_PROJECT_NAME}") +endif () + +## ## GSettings schema ## @@ -22,7 +31,7 @@ if (${SYSTEMD_FOUND}) pkg_get_variable(SYSTEMD_USER_DIR systemd systemduserunitdir) message (STATUS "${SYSTEMD_USER_DIR} is the systemd user unit file install dir") - set (SYSTEMD_USER_NAME "${CMAKE_PROJECT_NAME}.service") + set (SYSTEMD_USER_NAME "${INDICATOR_VARIANT_NAME}.service") set (SYSTEMD_USER_FILE "${CMAKE_CURRENT_BINARY_DIR}/${SYSTEMD_USER_NAME}") set (SYSTEMD_USER_FILE_IN "${CMAKE_CURRENT_SOURCE_DIR}/${SYSTEMD_USER_NAME}.in") @@ -38,20 +47,22 @@ endif() ## XDG Autostart File ## -# where to install -set (XDG_AUTOSTART_DIR "/etc/xdg/autostart") -message (STATUS "${XDG_AUTOSTART_DIR} is the DBus Service File install dir") +if (NOT ENABLE_LOMIRI_FEATURES) + # where to install + set (XDG_AUTOSTART_DIR "/etc/xdg/autostart") + message (STATUS "${XDG_AUTOSTART_DIR} is the DBus Service File install dir") -set (XDG_AUTOSTART_NAME "${CMAKE_PROJECT_NAME}.desktop") -set (XDG_AUTOSTART_FILE "${CMAKE_CURRENT_BINARY_DIR}/${XDG_AUTOSTART_NAME}") -set (XDG_AUTOSTART_FILE_IN "${CMAKE_CURRENT_SOURCE_DIR}/${XDG_AUTOSTART_NAME}.in") + set (XDG_AUTOSTART_NAME "${CMAKE_PROJECT_NAME}.desktop") + set (XDG_AUTOSTART_FILE "${CMAKE_CURRENT_BINARY_DIR}/${XDG_AUTOSTART_NAME}") + set (XDG_AUTOSTART_FILE_IN "${CMAKE_CURRENT_SOURCE_DIR}/${XDG_AUTOSTART_NAME}.in") -# build it -configure_file ("${XDG_AUTOSTART_FILE_IN}" "${XDG_AUTOSTART_FILE}") + # build it + configure_file ("${XDG_AUTOSTART_FILE_IN}" "${XDG_AUTOSTART_FILE}") -# install XDG autostart -install (FILES "${XDG_AUTOSTART_FILE}" - DESTINATION "${XDG_AUTOSTART_DIR}") + # install XDG autostart + install (FILES "${XDG_AUTOSTART_FILE}" + DESTINATION "${XDG_AUTOSTART_DIR}") +endif() ## ## Ayatana Indicator File diff --git a/data/ayatana-indicator-datetime.service.in b/data/ayatana-indicator-datetime.service.in index d0c1941..6b7803b 100644 --- a/data/ayatana-indicator-datetime.service.in +++ b/data/ayatana-indicator-datetime.service.in @@ -1,11 +1,11 @@ [Unit] Description=Ayatana Indicator DateTime Service PartOf=graphical-session.target -PartOf=ayatana-indicators.target lomiri-indicators.target +PartOf=ayatana-indicators.target [Service] ExecStart=@CMAKE_INSTALL_FULL_LIBEXECDIR@/ayatana-indicator-datetime/ayatana-indicator-datetime-service Restart=on-failure [Install] -WantedBy=ayatana-indicators.target lomiri-indicators.target +WantedBy=ayatana-indicators.target diff --git a/data/lomiri-indicator-datetime.service.in b/data/lomiri-indicator-datetime.service.in new file mode 100644 index 0000000..517ca14 --- /dev/null +++ b/data/lomiri-indicator-datetime.service.in @@ -0,0 +1,11 @@ +[Unit] +Description=Lomiri Indicator DateTime Service +PartOf=graphical-session.target +PartOf=lomiri-indicators.target + +[Service] +ExecStart=@CMAKE_INSTALL_FULL_LIBEXECDIR@/lomiri-indicator-datetime/lomiri-indicator-datetime-service +Restart=on-failure + +[Install] +WantedBy=lomiri-indicators.target diff --git a/debian/ayatana-indicator-datetime-common.install b/debian/ayatana-indicator-datetime-common.install new file mode 100644 index 0000000..4c7a9da --- /dev/null +++ b/debian/ayatana-indicator-datetime-common.install @@ -0,0 +1,3 @@ +usr/share/ayatana/indicators/ +usr/share/glib-2.0/schemas/ +usr/share/locale/ diff --git a/debian/ayatana-indicator-datetime.install b/debian/ayatana-indicator-datetime.install new file mode 100644 index 0000000..b694faa --- /dev/null +++ b/debian/ayatana-indicator-datetime.install @@ -0,0 +1,3 @@ +etc/xdg/autostart/ayatana-indicator-datetime.desktop +usr/libexec/ayatana-indicator-datetime/ayatana-indicator-datetime-service +usr/lib/systemd/user/ayatana-indicator-datetime.service diff --git a/debian/ayatana-indicator-datetime.links b/debian/ayatana-indicator-datetime.links deleted file mode 100644 index ba57b5b..0000000 --- a/debian/ayatana-indicator-datetime.links +++ /dev/null @@ -1,2 +0,0 @@ -# Because dh-systemd does not yet support user units, we manually make the WantedBy link -/usr/lib/systemd/user/ayatana-indicator-datetime.service /usr/lib/systemd/user/ayatana-indicators.target.wants/ayatana-indicator-datetime.service diff --git a/debian/changelog b/debian/changelog index 4998da6..c58b843 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,11 @@ -ayatana-indicator-datetime (24.5.1-0) UNRELEASED; urgency=medium +ayatana-indicator-datetime (25.4.0-0) UNRELEASED; urgency=medium + + * Upstream-provided Debian package for ayatana-indicator-datetime. + See upstream ChangeLog for recent changes. + + -- Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Tue, 01 Apr 2025 19:11:21 +0200 + +ayatana-indicator-datetime (24.5.1-0) unstable; urgency=medium * Upstream-provided Debian package for ayatana-indicator-datetime. See upstream ChangeLog for recent changes. diff --git a/debian/compat b/debian/compat deleted file mode 100644 index ec63514..0000000 --- a/debian/compat +++ /dev/null @@ -1 +0,0 @@ -9 diff --git a/debian/control b/debian/control index f10f155..64d69f6 100644 --- a/debian/control +++ b/debian/control @@ -5,22 +5,28 @@ Maintainer: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Build-Depends: cmake, cmake-extras (>= 0.10), dbus, - debhelper (>= 9), - dh-systemd | hello, + debhelper-compat (= 12), intltool, libaccounts-glib-dev (>= 1.18), libayatana-common-dev (>= 0.9.3), libglib2.0-dev (>= 2.35.4), libnotify-dev (>= 0.7.6), libgstreamer1.0-dev, + libmessaging-menu-dev, + uuid-dev, +# for non-Lomiri ICS data storage backend libecal2.0-dev (>= 3.16), libical-dev (>= 1.0), libedataserver1.2-dev (>= 3.5), - lomiri-schemas | hello, +# for Lomiri ICS data storage backend + libkf5calendarcore-dev, + libmkcal-qt5-dev, +# more Lomiri features + extra-cmake-modules, + lomiri-schemas, + lomiri-sounds, libproperties-cpp-dev, - liblomiri-url-dispatcher-dev | hello, - libmessaging-menu-dev, - uuid-dev, + liblomiri-url-dispatcher-dev, # for the test harness: libgtest-dev <!nocheck>, libdbustest1-dev <!nocheck>, @@ -31,7 +37,9 @@ Build-Depends: cmake, # for running live EDS tests: evolution-data-server <!nocheck>, gvfs-daemons <!nocheck>, - systemd [linux-any], + systemd-dev [linux-any], +# for running live mkcal tests: + mkcal-bin <!nocheck>, # for phone alarm/calendar notification sound tests: lomiri-sounds | hello, # tests that require the org.ayatana.common GSchema @@ -46,6 +54,7 @@ Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, ayatana-indicator-common, + ayatana-indicator-datetime-common (>= ${source:Version}), libglib2.0-bin, Recommends: indicator-applet | mate-indicator-applet | xfce4-indicator-plugin | indicator-renderer, evolution-data-server, @@ -56,5 +65,43 @@ Description: Ayatana Indicator providing clock and calendar This Ayatana Indicator provides a combined calendar, clock, alarm and event management tool. . - On Lomiri, this Indicator supports phone devices. On other systems, - the phone support has been disabled at build-time. + This variant of the datetime indicator is to be used for non-Lomiri + operating environments such as MATE, Xfce, etc. + . + This variant of the datetime indicator has been built for using + evolution-data-server as ICS data storage backend. + +Package: lomiri-indicator-datetime +Architecture: any +Depends: ${shlibs:Depends}, + ${misc:Depends}, + ayatana-indicator-common, + ayatana-indicator-datetime-common (>= ${source:Version}), + libglib2.0-bin, +Recommends: geoclue-provider, + mkcal-bin, +Suggests: lomiri, +Breaks: indicator-datetime, +Replaces: indicator-datetime, +Description: Lomiri Indicator providing clock and calendar + This Lomiri Indicator provides a combined calendar, clock, alarm and + event management tool. + . + This variant of the datetime indicator is targetted for being used on + Lomiri, this indicator supports phone devices. + . + This variant of the datetime indicator has been built for using + msyncd (mkcal) as ICS data storage backend. + +Package: ayatana-indicator-datetime-common +Architecture: any +Depends: ${misc:Depends}, +Breaks: ayatana-indicator-datetime (<< 25.4.0), +Replaces: ayatana-indicator-datetime (<< 25.4.0), +Description: Common files used by both Ayatana/Lomiri Indicator Datetime variants + Ayatana / Lomiri Indicator Datetime are two variants of the Ayatana + Datetime Indicator built for different use cases. They provide a + combined calendar, clock, alarm and event management tool for common + desktop environments and for the Lomiri operating environment. + . + This package contains files used by both variants. diff --git a/debian/lomiri-indicator-datetime.install b/debian/lomiri-indicator-datetime.install new file mode 100644 index 0000000..cc3bd95 --- /dev/null +++ b/debian/lomiri-indicator-datetime.install @@ -0,0 +1,2 @@ +usr/libexec/lomiri-indicator-datetime/lomiri-indicator-datetime-service +usr/lib/systemd/user/lomiri-indicator-datetime.service diff --git a/debian/rules b/debian/rules index 96adb33..932a8d8 100755 --- a/debian/rules +++ b/debian/rules @@ -1,14 +1,70 @@ #!/usr/bin/make -f -LDFLAGS += -Wl,-z,defs -Wl,--as-needed +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +export DEB_BUILD_MAINT_OPTIONS = hardening=+all +DPKG_EXPORT_BUILDFLAGS = 1 +include /usr/share/dpkg/buildflags.mk + +DEB_CMAKE_EXTRA_FLAGS = \ + -DENABLE_COVERAGE=OFF \ + $(NULL) + +ifeq ($(filter nocheck,$(DEB_BUILD_PROFILES)),) + DEB_CMAKE_EXTRA_FLAGS += -DENABLE_TESTS=ON +endif %: - dh $@ --with systemd + dh $@ -ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) override_dh_auto_configure: - dh_auto_configure -- -DENABLE_TESTS=ON -endif + dh_auto_configure --builddirectory=lomiri-variant \ + --buildsystem=cmake \ + -- \ + $(DEB_CMAKE_EXTRA_FLAGS) \ + -DENABLE_LOMIRI_FEATURES=ON \ + .. + dh_auto_configure --builddirectory=ayatana-variant \ + --buildsystem=cmake \ + -- \ + $(DEB_CMAKE_EXTRA_FLAGS) \ + -DENABLE_LOMIRI_FEATURES=OFF \ + .. + +override_dh_auto_build: + dh_auto_build --builddirectory=lomiri-variant \ + --buildsystem=cmake \ + .. + dh_auto_build --builddirectory=ayatana-variant \ + --buildsystem=cmake \ + .. + +override_dh_auto_test: + dh_auto_test --no-parallel \ + --builddirectory=lomiri-variant \ + --buildsystem=cmake \ + .. + dh_auto_test --no-parallel \ + --builddirectory=ayatana-variant \ + --buildsystem=cmake \ + .. + +override_dh_auto_install: + dh_auto_install --builddirectory=lomiri-variant \ + --buildsystem=cmake \ + .. + dh_auto_install --builddirectory=ayatana-variant \ + --buildsystem=cmake \ + .. + +override_dh_auto_clean: + dh_auto_clean --builddirectory=lomiri-variant \ + --buildsystem=cmake \ + .. + dh_auto_clean --builddirectory=ayatana-variant \ + --buildsystem=cmake \ + .. -override_dh_install: - dh_install --fail-missing +override_dh_missing: + dh_missing --fail-missing diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index e13a4f1..2bc4452 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,7 +1,13 @@ set (SERVICE_LIB "indicatordatetimeservice") -set (SERVICE_EXEC "ayatana-indicator-datetime-service") -add_definitions (-DG_LOG_DOMAIN="ayatana-indicator-datetime") +if (ENABLE_LOMIRI_FEATURES) + set (INDICATOR_VARIANT_NAME "lomiri-indicator-datetime") +else () + set (INDICATOR_VARIANT_NAME "${CMAKE_PROJECT_NAME}") +endif () + +add_definitions (-DG_LOG_DOMAIN="${INDICATOR_VARIANT_NAME}") +set (SERVICE_EXEC "${INDICATOR_VARIANT_NAME}-service") # handwritten sources set (SERVICE_C_SOURCES @@ -82,4 +88,4 @@ endif () add_executable (${SERVICE_EXEC} main.cpp) target_link_libraries (${SERVICE_EXEC} ${SERVICE_LIB} ${SERVICE_DEPS_LIBRARIES}) -install (TARGETS ${SERVICE_EXEC} RUNTIME DESTINATION "${CMAKE_INSTALL_FULL_LIBEXECDIR}/${CMAKE_PROJECT_NAME}") +install (TARGETS ${SERVICE_EXEC} RUNTIME DESTINATION "${CMAKE_INSTALL_FULL_LIBEXECDIR}/${INDICATOR_VARIANT_NAME}") diff --git a/tests/run-mkcal-db-test.sh b/tests/run-mkcal-db-test.sh index 114b9bd..114b9bd 100644..100755 --- a/tests/run-mkcal-db-test.sh +++ b/tests/run-mkcal-db-test.sh |