Your message dated Tue, 29 Jul 2025 17:41:30 +0000 with message-id <E1ugoKQ-002GGp-2e@respighi.debian.org> and subject line unblock kclock has caused the Debian Bug report #1110062, regarding unblock: kclock/25.04.3-1 to be marked as done. This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact owner@bugs.debian.org immediately.) -- 1110062: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1110062 Debian Bug Tracking System Contact owner@bugs.debian.org with problems
--- Begin Message ---
- To: Debian Bug Tracking System <submit@bugs.debian.org>
- Subject: unblock: kclock/25.04.3-1
- From: Aurélien COUDERC <coucouf@debian.org>
- Date: Sun, 27 Jul 2025 13:35:21 +0200
- Message-id: <[🔎] 175361612116.833085.11791618294650789004.reportbug@Grummly>
Package: release.debian.org Severity: normal X-Debbugs-Cc: kclock@packages.debian.org, Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org> Control: affects -1 + src:kclock User: release.debian.org@packages.debian.org Usertags: unblock Dear Release Team, please unblock package kclock. [ Reason ] It contains the following changes: * New upstream release (25.04.3). - Add X-Plasma-API-Minimum-Version to applet metadata. (kde#505837) - Use KPackageStructure instead of ServiceTypes in metadata.json. (#505837) - Timers: Fix preset creation and usage (25.04). (kde#505636) - Fix alarm form overflowing on larger screens. (kde#505695) * Backport upstream commit: - Correctly honor configured sound theme for default alarm sound. [8c656dc4] The complete debdiff is huge with translation fixes so I’m attaching a simple diff trimmed of these for your convinience : diff -ur --exclude=po --exclude=*.desktop kclock-25.04.[03] [ Tests ] Tested stopwatch, timer, adding clock for another timezone. [ Risks ] Only contains the latest upstream point release for the 25.04 Gear branch. Further fixes can easily be backported or the changes reverted. [ Checklist ] [x] all changes are documented in the d/changelog [x] I reviewed all changes and I approve them [x] attach debdiff against the package in testing Thanks ! unblock kclock/25.04.3-1Attachment: kclock_25.04.0-1.dsc_kclock_25.04.3-1.dsc.debdiff.gz
Description: application/gzipdiff -ur '--exclude=po' '--exclude=*.desktop' kclock-25.04.0/CMakeLists.txt kclock-25.04.3/CMakeLists.txt --- kclock-25.04.0/CMakeLists.txt 2025-04-11 05:12:02.000000000 +0200 +++ kclock-25.04.3/CMakeLists.txt 2025-06-30 18:54:48.000000000 +0200 @@ -11,7 +11,7 @@ # KDE Applications version, managed by release script. set(RELEASE_SERVICE_VERSION_MAJOR "25") set(RELEASE_SERVICE_VERSION_MINOR "04") -set(RELEASE_SERVICE_VERSION_MICRO "0") +set(RELEASE_SERVICE_VERSION_MICRO "3") set(RELEASE_SERVICE_VERSION "${RELEASE_SERVICE_VERSION_MAJOR}.${RELEASE_SERVICE_VERSION_MINOR}.${RELEASE_SERVICE_VERSION_MICRO}") project(kclock VERSION ${RELEASE_SERVICE_VERSION}) diff -ur '--exclude=po' '--exclude=*.desktop' kclock-25.04.0/debian/changelog kclock-25.04.3/debian/changelog --- kclock-25.04.0/debian/changelog 2025-04-17 18:59:13.000000000 +0200 +++ kclock-25.04.3/debian/changelog 2025-07-23 18:01:27.000000000 +0200 @@ -1,3 +1,20 @@ +kclock (25.04.3-1) unstable; urgency=medium + + * Team upload. + + [ Aurélien COUDERC ] + * New upstream release (25.04.3). + - Add X-Plasma-API-Minimum-Version to applet metadata. (kde#505837) + - Use KPackageStructure instead of ServiceTypes in metadata.json. + (#505837) + - Timers: Fix preset creation and usage (25.04). (kde#505636) + - Fix alarm form overflowing on larger screens. (kde#505695) + * Backport upstream commit: + - Correctly honor configured sound theme for default alarm sound. + [8c656dc4] + + -- Aurélien COUDERC <coucouf@debian.org> Wed, 23 Jul 2025 18:01:27 +0200 + kclock (25.04.0-1) unstable; urgency=medium * Team upload. Seulement dans kclock-25.04.3/debian: patches diff -ur '--exclude=po' '--exclude=*.desktop' kclock-25.04.0/org.kde.kclock.appdata.xml kclock-25.04.3/org.kde.kclock.appdata.xml --- kclock-25.04.0/org.kde.kclock.appdata.xml 2025-04-11 05:12:02.000000000 +0200 +++ kclock-25.04.3/org.kde.kclock.appdata.xml 2025-06-30 18:54:48.000000000 +0200 @@ -77,6 +77,7 @@ <summary xml:lang="lt">Sekti laiką ir nusistatyti žadintuvus</summary> <summary xml:lang="lv">Sekojiet laikam un lieciet modinātājus</summary> <summary xml:lang="nl">Tijd bijhouden en wekkers zetten</summary> + <summary xml:lang="nn">Vis klokka og still inn alarmar</summary> <summary xml:lang="pl">Pilnuj czasu i ustawiaj alarmy</summary> <summary xml:lang="pt-BR">Manter o horário e configurar os alarmes</summary> <summary xml:lang="ru">Просмотр времени и установка напоминаний</summary> @@ -115,6 +116,7 @@ <p xml:lang="lt">Universali laikrodžio programa, skirta kompiuteriams ir mobiliesiems įrenginiams. Laikrodis leidžia nustatyti daug žadintuvų bei laikmačių, be to, jame yra chronometras ir pasaulio laikrodžiai.</p> <p xml:lang="lv">Universāla pulksteņa lietotne datoram un viedierīcēm. Pulkstenis satur hronometru un pasaules pulksteni, kā arī ļauj uzlikt dažādus modinātājus un taimerus.</p> <p xml:lang="nl">Een universele kloktoepassing voor bureaublad en mobiel. Kclock omvat een stopwatch en een wereldklok en biedt u het zetten meerdere wekkers en timers.</p> + <p xml:lang="nn">Eit universelt klokkeprogram for skrivebord og mobil. Inneheld stoppeklokke og verdsklokke, og lèt deg stilla inn fleire alarmar og nedteljarar.</p> <p xml:lang="pl">Wszechstronny zegar na urządzenia przenośne i biurkowe. Zegar zawiera stoper oraz zegar światowy. Umożliwia ustawienie wielu alarmów i minutników.</p> <p xml:lang="pt-BR">Um aplicativo de relógio universal para desktop e celular. O relógio inclui um cronômetro e um relógio mundial, e permite que você defina vários alarmes e timers.</p> <p xml:lang="ru">Универсальные часы для стационарных компьютеров и мобильных устройств. В программе есть секундомер и мировые часы, поддерживается установка напоминаний и таймеров.</p> @@ -457,6 +459,9 @@ <url type="donation">https://www.kde.org/community/donations/?app=kclock&source=appdata</url> <url type="vcs-browser">https://invent.kde.org/utilities/kclock</url> <releases> + <release version="25.04.3" date="2025-07-03"/> + <release version="25.04.2" date="2025-06-05"/> + <release version="25.04.1" date="2025-05-08"/> <release version="25.04.0" date="2025-04-17"/> <release version="24.12.3" date="2025-03-06"/> <release version="24.12.2" date="2025-02-06"/> diff -ur '--exclude=po' '--exclude=*.desktop' kclock-25.04.0/.pc/applied-patches kclock-25.04.3/.pc/applied-patches --- kclock-25.04.0/.pc/applied-patches 2025-07-27 13:27:32.636652284 +0200 +++ kclock-25.04.3/.pc/applied-patches 2025-07-27 13:27:32.780641035 +0200 @@ -0,0 +1 @@ +upstream_8c656dc4_Honor-configured-sound-theme-for-default-alarm-sound.patch Seulement dans kclock-25.04.3/.pc: upstream_8c656dc4_Honor-configured-sound-theme-for-default-alarm-sound.patch diff -ur '--exclude=po' '--exclude=*.desktop' kclock-25.04.0/src/kclock/qml/alarm/AlarmForm.qml kclock-25.04.3/src/kclock/qml/alarm/AlarmForm.qml --- kclock-25.04.0/src/kclock/qml/alarm/AlarmForm.qml 2025-04-11 05:12:02.000000000 +0200 +++ kclock-25.04.3/src/kclock/qml/alarm/AlarmForm.qml 2025-06-30 18:54:48.000000000 +0200 @@ -82,6 +82,7 @@ // repeat day picker DialogComboBox { implicitWidth: root.width + Layout.maximumWidth: 540 Kirigami.FormData.label: i18n("Days to repeat:") text: FormatUtil.getRepeatFormat(root.formDaysOfWeek) @@ -117,6 +118,7 @@ DialogComboBox { id: ringDurationPicker implicitWidth: root.width + Layout.maximumWidth: 540 Kirigami.FormData.label: i18n("Ring Duration:") text: { @@ -160,6 +162,7 @@ DialogComboBox { id: snoozeLengthPicker implicitWidth: root.width + Layout.maximumWidth: 540 Kirigami.FormData.label: i18n("Snooze Length:") title: i18n("Select Snooze Length") @@ -194,6 +197,7 @@ id: audioPathField implicitWidth: root.width width: root.width + Layout.maximumWidth: 540 Kirigami.FormData.label: i18n("Ring Sound:") diff -ur '--exclude=po' '--exclude=*.desktop' kclock-25.04.0/src/kclock/qml/timer/TimerFormDialog.qml kclock-25.04.3/src/kclock/qml/timer/TimerFormDialog.qml --- kclock-25.04.0/src/kclock/qml/timer/TimerFormDialog.qml 2025-04-11 05:12:02.000000000 +0200 +++ kclock-25.04.3/src/kclock/qml/timer/TimerFormDialog.qml 2025-06-30 18:54:48.000000000 +0200 @@ -16,10 +16,6 @@ Kirigami.Dialog { id: root - function createTimer(duration, label, commandTimeout) { - TimerModel.addNew(duration, label, commandTimeout); - } - property bool showPresets: false property bool showDelete: false @@ -37,20 +33,6 @@ id: timerForm Layout.fillWidth: true } - Flow { - spacing: Kirigami.Units.smallSpacing - visible: showPresets - Layout.fillWidth: true - - Repeater { - model: TimerPresetModel - - Button { - text: showDelete ? "Delete" : preset.presetName - onClicked: showDelete ? TimerPresetModel.deletePreset(index) : root.createTimer(timerForm.getDuration(), timerForm.name) & close(); - } - } - } } customFooterActions: [ @@ -70,7 +52,7 @@ icon.name: "dialog-ok" text: i18n("Done") onTriggered: { - root.createTimer(timerForm.getDuration(), timerForm.name, timerForm.commandTimeout); + TimerModel.addNew(timerForm.getDuration(), timerForm.name, timerForm.commandTimeout); close(); } } diff -ur '--exclude=po' '--exclude=*.desktop' kclock-25.04.0/src/kclock/qml/timer/TimerForm.qml kclock-25.04.3/src/kclock/qml/timer/TimerForm.qml --- kclock-25.04.0/src/kclock/qml/timer/TimerForm.qml 2025-04-11 05:12:02.000000000 +0200 +++ kclock-25.04.3/src/kclock/qml/timer/TimerForm.qml 2025-06-30 18:54:48.000000000 +0200 @@ -19,6 +19,8 @@ property alias name: label.text property alias commandTimeout: commandTimeoutField.text + signal closeFormRequested() + function setDuration(duration) { hours = duration / 60 / 60; minutes = duration % (60 * 60) / 60; @@ -39,7 +41,7 @@ text: i18n("1 m") hours: 0 minutes: 1 - hoursSpinBox: spinBoxHours + hoursSpinBox: spinBoxHours minutesSpinBox: spinBoxMinutes secondsSpinBox: spinBoxSeconds } @@ -47,7 +49,7 @@ text: i18n("5 m") hours: 0 minutes: 5 - hoursSpinBox: spinBoxHours + hoursSpinBox: spinBoxHours minutesSpinBox: spinBoxMinutes secondsSpinBox: spinBoxSeconds } @@ -55,7 +57,7 @@ text: i18n("10 m") hours: 0 minutes: 10 - hoursSpinBox: spinBoxHours + hoursSpinBox: spinBoxHours minutesSpinBox: spinBoxMinutes secondsSpinBox: spinBoxSeconds } @@ -67,7 +69,7 @@ text: i18n("15 m") hours: 0 minutes: 15 - hoursSpinBox: spinBoxHours + hoursSpinBox: spinBoxHours minutesSpinBox: spinBoxMinutes secondsSpinBox: spinBoxSeconds } @@ -75,7 +77,7 @@ text: i18n("30 m") hours: 0 minutes: 30 - hoursSpinBox: spinBoxHours + hoursSpinBox: spinBoxHours minutesSpinBox: spinBoxMinutes secondsSpinBox: spinBoxSeconds } @@ -83,7 +85,7 @@ text: i18n("1 h") hours: 1 minutes: 0 - hoursSpinBox: spinBoxHours + hoursSpinBox: spinBoxHours minutesSpinBox: spinBoxMinutes secondsSpinBox: spinBoxSeconds } @@ -151,7 +153,7 @@ showPresets = true; } } - + Button { id: presetButton text: showPresets ? i18n("Hide Presets") : i18n("Show Presets") @@ -168,7 +170,7 @@ } Flow { spacing: Kirigami.Units.smallSpacing - visible: showPresets && Kirigami.Settings.isMobile && repeater.count > 0 + visible: showPresets && repeater.count > 0 Layout.fillWidth: true Repeater { @@ -177,8 +179,14 @@ Button { text: showDelete ? "Delete" : preset.presetName - onClicked: showDelete ? TimerPresetModel.deletePreset(index) : loader.createTimer(timerForm.getDuration(), timerForm.name, timerForm.commandTimeout) & close(); - + onClicked: { + if (showDelete) { + TimerPresetModel.deletePreset(index); + } else { + TimerModel.addNew(preset.presetDuration, preset.presetName, timerForm.commandTimeout); + root.closeFormRequested(); + } + } } } } diff -ur '--exclude=po' '--exclude=*.desktop' kclock-25.04.0/src/kclockd/alarm.cpp kclock-25.04.3/src/kclockd/alarm.cpp --- kclock-25.04.0/src/kclockd/alarm.cpp 2025-04-11 05:12:02.000000000 +0200 +++ kclock-25.04.3/src/kclockd/alarm.cpp 2025-07-27 13:27:32.000000000 +0200 @@ -305,7 +305,8 @@ // play sound (it will loop) qDebug() << "Alarm sound: " << m_audioPath; - AlarmPlayer::instance().setSource(m_audioPath); + // TODO clean up usage of audio path as URL. + AlarmPlayer::instance().setSource(m_audioPath.toLocalFile()); AlarmPlayer::instance().play(); setRinging(true); diff -ur '--exclude=po' '--exclude=*.desktop' kclock-25.04.0/src/kclockd/alarmplayer.cpp kclock-25.04.3/src/kclockd/alarmplayer.cpp --- kclock-25.04.0/src/kclockd/alarmplayer.cpp 2025-04-11 05:12:02.000000000 +0200 +++ kclock-25.04.3/src/kclockd/alarmplayer.cpp 2025-07-27 13:27:32.000000000 +0200 @@ -9,8 +9,14 @@ #include <QDateTime> #include <QFile> +#include <QFileInfo> #include <QStandardPaths> +#include <KConfigGroup> +#include <KSharedConfig> + +using namespace Qt::Literals::StringLiterals; + AlarmPlayer &AlarmPlayer::instance() { static AlarmPlayer singleton; @@ -21,6 +27,7 @@ : QObject{parent} , m_player(new QMediaPlayer(this)) , m_audio(new QAudioOutput) + , m_soundThemeWatcher(KConfigWatcher::create(KSharedConfig::openConfig(QStringLiteral("kdeglobals")))) { m_player->setAudioOutput(m_audio); connect(m_player, &QMediaPlayer::playbackStateChanged, this, &AlarmPlayer::loopAudio); @@ -60,16 +67,37 @@ Q_EMIT volumeChanged(); } -void AlarmPlayer::setSource(const QUrl &path) +void AlarmPlayer::setSource(const QString &path) { - // if user set a invalid audio path or doesn't even specified a path, resort to default - if (!path.isValid() || !QFile::exists(path.toLocalFile())) { - const QUrl url = QUrl::fromLocalFile( - QStandardPaths::locate(QStandardPaths::GenericDataLocation, QStringLiteral("sounds/freedesktop/stereo/alarm-clock-elapsed.oga"))); - m_player->setSource(url); + if (path.isEmpty() || !QFileInfo::exists(path)) { + m_player->setSource(QUrl::fromLocalFile(defaultAlarmSoundPath())); } else { - m_player->setSource(path); + m_player->setSource(QUrl::fromLocalFile(path)); } } +QString AlarmPlayer::soundThemeName() const +{ + const KConfigGroup soundGroup = m_soundThemeWatcher->config()->group(QStringLiteral("Sounds")); + const QString themeName = soundGroup.readEntry(QStringLiteral("Theme"), QStringLiteral("ocean")); + return themeName; +} + +QString AlarmPlayer::defaultAlarmSoundPath() const +{ + const QString soundPath = QStringLiteral("sounds/%1/stereo/alarm-clock-elapsed.%2"); + + for (const QString &theme : {soundThemeName(), u"freedesktop"_s}) { + for (const QLatin1String extension : {"wav"_L1, "oga"_L1, "ogg"_L1}) { + const QString path = QStandardPaths::locate(QStandardPaths::GenericDataLocation, soundPath.arg(theme, extension)); + if (!path.isEmpty()) { + return path; + } + } + } + + qCritical() << "Failed to find any alarm clock sound!"; + return QString(); +} + #include "moc_alarmplayer.cpp" diff -ur '--exclude=po' '--exclude=*.desktop' kclock-25.04.0/src/kclockd/alarmplayer.h kclock-25.04.3/src/kclockd/alarmplayer.h --- kclock-25.04.0/src/kclockd/alarmplayer.h 2025-04-11 05:12:02.000000000 +0200 +++ kclock-25.04.3/src/kclockd/alarmplayer.h 2025-07-27 13:27:32.000000000 +0200 @@ -12,6 +12,8 @@ #include <QAudioOutput> +#include <KConfigWatcher> + class AlarmPlayer : public QObject { Q_OBJECT @@ -22,10 +24,13 @@ int volume(); Q_INVOKABLE void setVolume(int volume); - Q_INVOKABLE void setSource(const QUrl &path); + Q_INVOKABLE void setSource(const QString &path); Q_INVOKABLE void play(); Q_INVOKABLE void stop(); + QString soundThemeName() const; + QString defaultAlarmSoundPath() const; + Q_SIGNALS: void volumeChanged(); @@ -35,6 +40,7 @@ private: QMediaPlayer *m_player; QAudioOutput *m_audio; + KConfigWatcher::Ptr m_soundThemeWatcher; bool m_userStop = false; // indicate if user asks to stop diff -ur '--exclude=po' '--exclude=*.desktop' kclock-25.04.0/src/kclockd/timer.cpp kclock-25.04.3/src/kclockd/timer.cpp --- kclock-25.04.0/src/kclockd/timer.cpp 2025-04-11 05:12:02.000000000 +0200 +++ kclock-25.04.3/src/kclockd/timer.cpp 2025-07-27 13:27:32.000000000 +0200 @@ -263,7 +263,7 @@ Utilities::pauseMprisSources(); - AlarmPlayer::instance().setSource(findRingSoundLocation()); + AlarmPlayer::instance().setSource(QString()); // use default. AlarmPlayer::instance().play(); m_ringing = true; @@ -290,18 +290,4 @@ } } -QUrl Timer::findRingSoundLocation() -{ - const auto locations = QStandardPaths::standardLocations(QStandardPaths::GenericDataLocation); - const QString path = QStringLiteral("/sounds/freedesktop/stereo/alarm-clock-elapsed.oga"); - QString alarmSoundPath; - - for (const auto &directory : locations) { - if (QFile(directory + path).exists()) { - return QUrl(directory + path); - } - } - - return QUrl(); -} #include "moc_timer.cpp" diff -ur '--exclude=po' '--exclude=*.desktop' kclock-25.04.0/src/kclockd/timer.h kclock-25.04.3/src/kclockd/timer.h --- kclock-25.04.0/src/kclockd/timer.h 2025-04-11 05:12:02.000000000 +0200 +++ kclock-25.04.3/src/kclockd/timer.h 2025-07-27 13:27:32.000000000 +0200 @@ -81,7 +81,6 @@ void reschedule(); private: - QUrl findRingSoundLocation(); void setRunning(bool running); void ring(); diff -ur '--exclude=po' '--exclude=*.desktop' kclock-25.04.0/src/plasmoid/KClock_1x2/package/metadata.json kclock-25.04.3/src/plasmoid/KClock_1x2/package/metadata.json --- kclock-25.04.0/src/plasmoid/KClock_1x2/package/metadata.json 2025-04-11 05:12:02.000000000 +0200 +++ kclock-25.04.3/src/plasmoid/KClock_1x2/package/metadata.json 2025-06-30 18:54:48.000000000 +0200 @@ -1,4 +1,5 @@ { + "KPackageStructure": "Plasma/Applet", "KPlugin": { "Authors": [ { @@ -26,6 +27,7 @@ "Name[lt]": "HanY", "Name[lv]": "HanY", "Name[nl]": "HanY", + "Name[nn]": "HanY", "Name[pa]": "ਹਾਂਯੇ", "Name[pl]": "HanY", "Name[pt]": "HanY", @@ -66,6 +68,7 @@ "Description[lt]": "KClock valdiklis (1x2)", "Description[lv]": "„KClock“ logdaļa (1×2)", "Description[nl]": "KClock-widget (1x2)", + "Description[nn]": "KClock-element (1 × 2)", "Description[pa]": "ਕੇ-ਘੜੀ ਵਿਜੈਟ (1x2)", "Description[pl]": "Element interfejsu KClock (1x2)", "Description[pt]": "Elemento do KClock (1x2)", @@ -112,6 +115,7 @@ "Name[lt]": "KClock_1x2", "Name[lv]": "KClock_1x2", "Name[nl]": "KClock_1x2", + "Name[nn]": "KClock_1x2", "Name[pa]": "ਕੇ-ਘੜੀ_1x2", "Name[pl]": "KClock_1x2", "Name[pt]": "KClock_1x2", @@ -126,13 +130,11 @@ "Name[x-test]": "xxKClock_1x2xx", "Name[zh_CN]": "KClock_1x2", "Name[zh_TW]": "KClock_1x2", - "ServiceTypes": [ - "Plasma/Applet" - ], "Version": "1.0", "Website": "https://apps.kde.org/kclock" }, "X-Plasma-API": "declarativeappletscript", + "X-Plasma-API-Minimum-Version": "6.0", "X-Plasma-DBusActivationService": "org.kde.kclock.*", "X-Plasma-MainScript": "ui/main.qml", "X-Plasma-NotificationArea": "true", diff -ur '--exclude=po' '--exclude=*.desktop' kclock-25.04.0/src/plasmoid/KClock_KWeather_3x3/package/metadata.json kclock-25.04.3/src/plasmoid/KClock_KWeather_3x3/package/metadata.json --- kclock-25.04.0/src/plasmoid/KClock_KWeather_3x3/package/metadata.json 2025-04-11 05:12:02.000000000 +0200 +++ kclock-25.04.3/src/plasmoid/KClock_KWeather_3x3/package/metadata.json 2025-06-30 18:54:48.000000000 +0200 @@ -1,4 +1,5 @@ { + "KPackageStructure": "Plasma/Applet", "KPlugin": { "Authors": [ { @@ -26,6 +27,7 @@ "Name[lt]": "HanY", "Name[lv]": "HanY", "Name[nl]": "HanY", + "Name[nn]": "HanY", "Name[pa]": "ਹਾਂਯੇ", "Name[pl]": "HanY", "Name[pt]": "HanY", @@ -66,6 +68,7 @@ "Description[lt]": "KClock valdiklis (3x3 su informacija apie orus)", "Description[lv]": "„KCloc“k logdaļa (3×3 ar laikapstākļu informāciju)", "Description[nl]": "KClock-widget (3x3 met weerinformatie)", + "Description[nn]": "KClock-element (3 × 3 med vêrmelding)", "Description[pa]": "ਕੇ-ਘੜੀ ਵਿਜੈਟ (ਮੌਸਮੀ ਜਾਣਕਾਰੀ ਸਮੇਤ 3x3)", "Description[pl]": "Element interfejsu (3x3 z danymi pogodowymi)", "Description[pt]": "Elemento do KClock (3x3 com Dados Meteorológicos)", @@ -107,6 +110,7 @@ "Name[lt]": "KClock_KWeather_3x3", "Name[lv]": "KClock_KWeather_3x3", "Name[nl]": "KClock_KWeather_3x3", + "Name[nn]": "KClock_KWeather_3x3", "Name[pa]": "ਕੇ-ਘੜੀ_ਕੇ-ਮੌਸਮ_3x3", "Name[pl]": "KClock_KWeather_3x3", "Name[pt]": "KClock_KWeather_3x3", @@ -121,9 +125,6 @@ "Name[x-test]": "xxKClock_KWeather_3x3xx", "Name[zh_CN]": "KClock_KWeather_3x3", "Name[zh_TW]": "KClock_KWeather_3x3", - "ServiceTypes": [ - "Plasma/Applet" - ], "Version": "1.0", "Website": "https://apps.kde.org/kclock" },
--- End Message ---
--- Begin Message ---
- To: 1110062-done@bugs.debian.org
- Subject: unblock kclock
- From: Sebastian Ramacher <sramacher@respighi.debian.org>
- Date: Tue, 29 Jul 2025 17:41:30 +0000
- Message-id: <E1ugoKQ-002GGp-2e@respighi.debian.org>
Unblocked.
--- End Message ---