Bug#1108213: unblock: lomiri-system-settings/1.3.1-6
Package: release.debian.org
Severity: normal
X-Debbugs-Cc: lomiri-system-settings@packages.debian.org
Control: affects -1 + src:lomiri-system-settings
User: release.debian.org@packages.debian.org
Usertags: unblock
Please unblock package lomiri-system-settings
The past days I have been looking into issue for people you rely on
switching between keyboard layout for the daily computer work because of
having to switch between language contexts (such as using a computer for
English and Russian or Ukrainian communication). For those people it is
essential of layout switches (for hardware keyboard as well as for OSK)
easily accessible. (OSK - On-Screen Keyboard).
[ Reason ]
+ * debian/rules:
+ + Set correct lomiri-keyboard plugin-path at build-time.
-> This build-time fix lets lomiri-system-settings find the install
lomiri-keyboard-<lang> plugin files. Without this, the settings page for
OSK layout selection is empty.
+ -- Mike Gabriel <sunweaver@debian.org> Mon, 23 Jun 2025 13:23:09 +0200
+
+lomiri-system-settings (1.3.1-5) unstable; urgency=medium
+
+ * debian/patches:
+ + Replace 0001_lib-LomiriSystemSettingsPrivate-accountsservice.cpp-Register-
+ missing-D-Bus-types.patch by 0001_plugins-language-hardwarekeyboard-
+ plugin.cpp-Registe.patch (reviewed upstream patch).
-> After upstream review, patch 0001 has now been replaced with the
official upstream patch.
+ + Add 0002_Add-shortcut-to-OSK-layout-settings.patch. Make OSK layout
+ settings available via URL dispatcher call.
-> This update of lomiri-system-settings will come together with an update
of ayatana-indicator-keyboard (still to be finalized). For that change in
ayatana-indicator-keyboard, we have to make sure that OSK layout settings
can be evoked by Lomiri's URL dispatcher service.
[ Impact ]
Broken OSK-support in Debian 13's version of Lomiri.
[ Tests ]
Manual tests on various devices (tablet, tablet with keyboard attached,
notebook, VM, etc.).
[ Risks ]
Minimal.
[ 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
[ Other info ]
Relevant for Lomiri in Debian.
unblock lomiri-system-settings/1.3.1-6
diff -Nru lomiri-system-settings-1.3.1/debian/changelog lomiri-system-settings-1.3.1/debian/changelog
--- lomiri-system-settings-1.3.1/debian/changelog 2025-06-14 07:54:49.000000000 +0200
+++ lomiri-system-settings-1.3.1/debian/changelog 2025-06-23 13:23:09.000000000 +0200
@@ -1,3 +1,21 @@
+lomiri-system-settings (1.3.1-6) unstable; urgency=medium
+
+ * debian/rules:
+ + Set correct lomiri-keyboard plugin-path at build-time.
+
+ -- Mike Gabriel <sunweaver@debian.org> Mon, 23 Jun 2025 13:23:09 +0200
+
+lomiri-system-settings (1.3.1-5) unstable; urgency=medium
+
+ * debian/patches:
+ + Replace 0001_lib-LomiriSystemSettingsPrivate-accountsservice.cpp-Register-
+ missing-D-Bus-types.patch by 0001_plugins-language-hardwarekeyboard-
+ plugin.cpp-Registe.patch (reviewed upstream patch).
+ + Add 0002_Add-shortcut-to-OSK-layout-settings.patch. Make OSK layout
+ settings available via URL dispatcher call.
+
+ -- Mike Gabriel <sunweaver@debian.org> Sun, 22 Jun 2025 22:16:23 +0200
+
lomiri-system-settings (1.3.1-4) unstable; urgency=medium
* debian/patches:
diff -Nru lomiri-system-settings-1.3.1/debian/patches/0001_lib-LomiriSystemSettingsPrivate-accountsservice.cpp-Register-missing-D-Bus-types.patch lomiri-system-settings-1.3.1/debian/patches/0001_lib-LomiriSystemSettingsPrivate-accountsservice.cpp-Register-missing-D-Bus-types.patch
--- lomiri-system-settings-1.3.1/debian/patches/0001_lib-LomiriSystemSettingsPrivate-accountsservice.cpp-Register-missing-D-Bus-types.patch 2025-06-14 07:29:15.000000000 +0200
+++ lomiri-system-settings-1.3.1/debian/patches/0001_lib-LomiriSystemSettingsPrivate-accountsservice.cpp-Register-missing-D-Bus-types.patch 1970-01-01 01:00:00.000000000 +0100
@@ -1,47 +0,0 @@
-From bbb79805a1bf76402774164eece1e69396329c5e Mon Sep 17 00:00:00 2001
-From: Robert Tari <robert@tari.in>
-Date: Fri, 13 Jun 2025 14:56:47 +0200
-Subject: [PATCH] lib/LomiriSystemSettingsPrivate/accountsservice.cpp: Register
- missing D-Bus types
-
-fixes https://salsa.debian.org/ubports-team/lomiri-system-settings/-/issues/19
----
- lib/LomiriSystemSettingsPrivate/accountsservice.cpp | 9 ++++++++-
- 1 file changed, 8 insertions(+), 1 deletion(-)
-
-diff --git a/lib/LomiriSystemSettingsPrivate/accountsservice.cpp b/lib/LomiriSystemSettingsPrivate/accountsservice.cpp
-index 6450a4790..3d5383e1a 100644
---- a/lib/LomiriSystemSettingsPrivate/accountsservice.cpp
-+++ b/lib/LomiriSystemSettingsPrivate/accountsservice.cpp
-@@ -22,7 +22,7 @@
-
- #include <QDBusReply>
- #include <QDebug>
--
-+#include <QDBusMetaType>
- #include <unistd.h>
- #include <sys/types.h>
-
-@@ -30,6 +30,11 @@
- #define AS_PATH "/org/freedesktop/Accounts"
- #define AS_IFACE "org.freedesktop.Accounts"
-
-+using StringMap = QMap<QString,QString>;
-+using StringMapList = QList<StringMap>;
-+Q_DECLARE_METATYPE(StringMap)
-+Q_DECLARE_METATYPE(StringMapList)
-+
- namespace LomiriSystemSettings {
-
- AccountsService::AccountsService(QObject *parent)
-@@ -43,6 +48,8 @@ AccountsService::AccountsService(QObject *parent)
- AS_IFACE,
- m_systemBusConnection)
- {
-+ qDBusRegisterMetaType<StringMap>();
-+ qDBusRegisterMetaType<StringMapList>();
- connect (&m_serviceWatcher,
- SIGNAL (serviceOwnerChanged (QString, QString, QString)),
- this,
---
-GitLab
diff -Nru lomiri-system-settings-1.3.1/debian/patches/0001_plugins-language-hardwarekeyboard-plugin.cpp-Registe.patch lomiri-system-settings-1.3.1/debian/patches/0001_plugins-language-hardwarekeyboard-plugin.cpp-Registe.patch
--- lomiri-system-settings-1.3.1/debian/patches/0001_plugins-language-hardwarekeyboard-plugin.cpp-Registe.patch 1970-01-01 01:00:00.000000000 +0100
+++ lomiri-system-settings-1.3.1/debian/patches/0001_plugins-language-hardwarekeyboard-plugin.cpp-Registe.patch 2025-06-15 20:52:42.000000000 +0200
@@ -0,0 +1,38 @@
+From 458a69fbe87fae55d842d586d2993fc1c29d7485 Mon Sep 17 00:00:00 2001
+From: Robert Tari <robert@tari.in>
+Date: Fri, 13 Jun 2025 14:56:47 +0200
+Subject: [PATCH] plugins/language/hardwarekeyboard-plugin.cpp: Register
+ missing D-Bus types
+
+fixes https://salsa.debian.org/ubports-team/lomiri-system-settings/-/issues/19
+
+Signed-off-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
+---
+ plugins/language/hardwarekeyboard-plugin.cpp | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/plugins/language/hardwarekeyboard-plugin.cpp b/plugins/language/hardwarekeyboard-plugin.cpp
+index a74ed409..6317922c 100644
+--- a/plugins/language/hardwarekeyboard-plugin.cpp
++++ b/plugins/language/hardwarekeyboard-plugin.cpp
+@@ -31,13 +31,16 @@
+ #define SOURCES_CONFIG_SCHEMA_ID "org.gnome.desktop.input-sources"
+ #define SOURCES_KEY "sources"
+
+-typedef QList<QMap<QString, QString>> StringMapList;
++using StringMap = QMap<QString,QString>;
++using StringMapList = QList<StringMap>;
++Q_DECLARE_METATYPE(StringMap)
+ Q_DECLARE_METATYPE(StringMapList)
+
+ HardwareKeyboardPlugin::HardwareKeyboardPlugin(QObject *parent) :
+ QObject(parent),
+ m_sourcesSettings(g_settings_new(SOURCES_CONFIG_SCHEMA_ID))
+ {
++ qDBusRegisterMetaType<StringMap>();
+ qDBusRegisterMetaType<StringMapList>();
+ m_xkbInfo = gnome_xkb_info_new();
+
+--
+2.47.2
+
diff -Nru lomiri-system-settings-1.3.1/debian/patches/0002_Add-shortcut-to-OSK-layout-settings.patch lomiri-system-settings-1.3.1/debian/patches/0002_Add-shortcut-to-OSK-layout-settings.patch
--- lomiri-system-settings-1.3.1/debian/patches/0002_Add-shortcut-to-OSK-layout-settings.patch 1970-01-01 01:00:00.000000000 +0100
+++ lomiri-system-settings-1.3.1/debian/patches/0002_Add-shortcut-to-OSK-layout-settings.patch 2025-06-22 22:14:53.000000000 +0200
@@ -0,0 +1,42 @@
+From bcdf4a63bbaccad40ce795159344a1457a63b323 Mon Sep 17 00:00:00 2001
+From: Robert Tari <robert@tari.in>
+Date: Sun, 15 Jun 2025 14:28:26 +0200
+Subject: [PATCH] Add a shortcut to OSK layout settings
+
+---
+ plugins/language/PageComponent.qml | 7 +++++++
+ src/url-map.ini | 1 +
+ 2 files changed, 8 insertions(+)
+
+diff --git a/plugins/language/PageComponent.qml b/plugins/language/PageComponent.qml
+index 02c0369e2..3c37bf6bc 100644
+--- a/plugins/language/PageComponent.qml
++++ b/plugins/language/PageComponent.qml
+@@ -54,6 +54,13 @@ ItemPage {
+ currentLayoutsDraggable: true
+ });
+ break;
++ case 'sw-keyboard-layouts':
++ pageStack.addPageToNextColumn(
++ root, Qt.resolvedUrl('KeyboardLayouts.qml'), {
++ plugin: oskPlugin,
++ currentLayoutsDraggable: true
++ });
++ break;
+ }
+ }
+ }
+diff --git a/src/url-map.ini b/src/url-map.ini
+index 1bcf39a0f..567e85b11 100644
+--- a/src/url-map.ini
++++ b/src/url-map.ini
+@@ -10,5 +10,6 @@
+ location=settings:///system/security-privacy?subpage=location
+ permissions=settings:///system/security-privacy?subpage=permissions
+ hw-keyboard-layouts=settings:///system/language?subpage=hw-keyboard-layouts
++sw-keyboard-layouts=settings:///system/language?subpage=sw-keyboard-layouts
+ add-printer=settings:///system/printing?subpage=add-printer
+ view-printer=settings:///system/printing?subpage=view-printer
+--
+GitLab
+
diff -Nru lomiri-system-settings-1.3.1/debian/patches/series lomiri-system-settings-1.3.1/debian/patches/series
--- lomiri-system-settings-1.3.1/debian/patches/series 2025-06-14 07:29:15.000000000 +0200
+++ lomiri-system-settings-1.3.1/debian/patches/series 2025-06-22 22:15:17.000000000 +0200
@@ -2,4 +2,5 @@
2011_build-without-trust-store.patch
2013_show-hotspot-on-desktop.patch
2014_removing-unnecessary-mobile-only-functionality.patch
-0001_lib-LomiriSystemSettingsPrivate-accountsservice.cpp-Register-missing-D-Bus-types.patch
+0001_plugins-language-hardwarekeyboard-plugin.cpp-Registe.patch
+0002_Add-shortcut-to-OSK-layout-settings.patch
diff -Nru lomiri-system-settings-1.3.1/debian/rules lomiri-system-settings-1.3.1/debian/rules
--- lomiri-system-settings-1.3.1/debian/rules 2024-12-17 13:13:52.000000000 +0100
+++ lomiri-system-settings-1.3.1/debian/rules 2025-06-23 13:21:23.000000000 +0200
@@ -29,9 +29,10 @@
override_dh_auto_configure:
# Debian defines CMAKE_INSTALL_LOCALSTATEDIR as /usr/var, which is wrong.
# So until Debian bug 719148 is fixed, do it ourselves.
- dh_auto_configure -- -DCMAKE_INSTALL_LOCALSTATEDIR="/var" \
- -DMODERN_PYTHON_DBUSMOCK=ON \
- -DENABLE_LIBDEVICEINFO=ON \
+ dh_auto_configure -- -DCMAKE_INSTALL_LOCALSTATEDIR="/var" \
+ -DLOMIRI_KEYBOARD_PLUGIN_PATH="/usr/lib/lomiri-keyboard/plugins" \
+ -DMODERN_PYTHON_DBUSMOCK=ON \
+ -DENABLE_LIBDEVICEINFO=ON \
$(CONFIGURE_FLAGS)
override_dh_auto_build:
Reply to: