KYSDK-DATE(1)

NAME
kysdk-date - KYLIN SDK Date and Time Format Management Service

SYNOPSIS
kysdk-date

DESCRIPTION
kysdk-date is a date and time format management service in the KYLIN SDK system. This service provides real-time date and time formatting capabilities, monitoring user configuration changes and broadcasting formatted date/time information through D-Bus signals. The service runs as a background daemon that monitors changes to date format configuration files and automatically broadcasts updated date/time information to all subscribed applications. It supports multiple date formats and time display modes (12-hour/24-hour clock).

FEATURES

Real-time Configuration Monitoring
    Monitors user date format configuration file changes in real-time using inotify

Multiple Date Format Support
    Supports various date formats including: - Short date formats (yy-M-d, MM/dd/yyyy, etc.) - Long date formats (yyyy MM dd, yy M d, etc.) - Custom formats with different separators (-, /, .)

Time Format Support
    Supports both 12-hour and 24-hour clock formats

D-Bus Signal Broadcasting
    Broadcasts date/time information through D-Bus signals when configurations change

Localization Support
    Provides localized date format strings based on system locale settings

D-Bus INTERFACE
The service implements the following D-Bus interface `com.kylin.kysdk.DateInterface` with these signals:

DateSignal
    Emitted when the date format configuration changes, providing: - Formatted date string - Time format information

LongDateSignal
    Emitted for long date format changes, providing: - Long date format template - Formatted long date string

ShortDateSignal
    Emitted for short date format changes, providing: - Short date format template - Formatted short date string

TimeSignal
    Emitted for time format changes, providing: - Time format information (12-hour/24-hour clock)

CONFIGURATION
The service monitors the configuration file located at: ~/.config/kydate/dateformat.conf Configuration options include:

DATE_FORMAT
    General date format setting

TIME_FORMAT
    Time format setting (12 or 24)

LONG_DATE_FORMAT
    Specific format for long date display

SHORT_DATE_FORMAT
    Specific format for short date display

FILES

/usr/bin/sdk-date
    Main executable file

~/.config/kydate/dateformat.conf
    User configuration file for date/time formats

/var/log/kysdk-date.log
    Log file (if logging is enabled)

SERVICE
The service runs as a session D-Bus service with: - Service name: com.kylin.kysdk.DateServer - Object path: /com/kylin/kysdk/Date - Interface: com.kylin.kysdk.DateInterface

DEPENDENCIES

D-Bus
    For inter-process communication

GLib
    For main loop integration

GNU gettext
    For localization support

THREADING
The service uses a multi-threaded architecture: - Main thread: Handles D-Bus communication and main loop - Monitor thread: Watches for configuration file changes - Signal threads: Handle date/time formatting and broadcasting

SIGNALS

IN_CREATE, IN_DELETE, IN_MODIFY, IN_MOVE_SELF
    inotify events monitored for configuration file changes

SIGTERM, SIGINT
    Graceful shutdown signals

LOCALIZATION
Supports localization through GNU gettext with: - Language-specific date formats - Translated time format descriptions - Locale-aware date formatting

AUTHOR
KylinSoft Co., Ltd.

COPYRIGHT
Copyright (C) 2023-2025, KylinSoft Co., Ltd. This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

SEE ALSO
dbus-daemon(1), date(1), locale(1), inotify(7)