aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt2
-rw-r--r--data/CMakeLists.txt35
-rw-r--r--data/ayatana-indicator-datetime.service.in4
-rw-r--r--data/lomiri-indicator-datetime.service.in11
-rw-r--r--debian/ayatana-indicator-datetime-common.install3
-rw-r--r--debian/ayatana-indicator-datetime.install3
-rw-r--r--debian/ayatana-indicator-datetime.links2
-rw-r--r--debian/changelog9
-rw-r--r--debian/compat1
-rw-r--r--debian/control65
-rw-r--r--debian/lomiri-indicator-datetime.install2
-rwxr-xr-xdebian/rules70
-rw-r--r--src/CMakeLists.txt12
-rwxr-xr-x[-rw-r--r--]tests/run-mkcal-db-test.sh0
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