Hey @espidev , @apol , @sitter and other interested parties and developers of plasma-keyboard I may have forgotten to list here explicitly.
I was under the naive assumption, that plasma-keyboard is licensed in a similar fashion to kwin, meaning it could be used in contexts that are allergic to GPLv3 (medical devices in our case). I am a big fan of the GPL, but my hands are tied by legal here. We would like to use plasma-keyboard, and I would like to contribute to it some more myself to enable the features we need for our use-case. But GPLv3 is sadly a no-go for our use-case and thus we would not be able to use plasma-keyboard.
Thus this question: would it be possible to relicense some files to enable usage in a GPlv2 context? Here is a list of files that are currently encumbered:
src/dbus/org.sigxcpu.Feedback.Haptic.xml:- SPDX-License-Identifier: GPL-3.0-or-latersrc/dbus/org.sigxcpu.Feedback.xml:- SPDX-License-Identifier: GPL-3.0-or-latersrc/layouts/ar_AR/digits.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/ar_AR/handwriting.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/ar_AR/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/ar_AR/numbers.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/ar_AR/symbols.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/bg_BG/handwriting.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/bg_BG/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/cs_CZ/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/da_DK/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/de_DE/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/el_GR/handwriting.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/el_GR/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/es_ES/handwriting.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/es_ES/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/es_ES/symbols.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/es_MX/handwriting.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/es_MX/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/es_MX/symbols.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/et_EE/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/fa_FA/digits.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/fa_FA/handwriting.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/fa_FA/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/fa_FA/numbers.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/fa_FA/symbols.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/fallback/dialpad.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/fallback/digits.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/fallback/handwriting.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/fallback/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/fallback/numbers.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/fallback/symbols.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/fi_FI/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/fr_CA/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/fr_FR/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/he_IL/handwriting.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/he_IL/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/he_IL/symbols.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/hi_IN/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/hi_IN/symbols.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/hr_HR/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/hu_HU/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/it_IT/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/ja_JP/handwriting.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/ja_JP/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/ja_JP/symbols.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/ko_KR/handwriting.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/ko_KR/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/ko_KR/symbols.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/lv_LV/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/nb_NO/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/pl_PL/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/pt_BR/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/pt_PT/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/ro_RO/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/ru_RU/handwriting.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/ru_RU/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/sk_SK/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/sl_SI/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/sq_AL/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/sr_SP/handwriting.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/sr_SP/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/sv_SE/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/th_TH/handwriting.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/th_TH/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/th_TH/symbols.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/tr_TR/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/uk_UA/handwriting.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/uk_UA/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/vi_VN/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/vi_VN/symbols.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/zh_CN/handwriting.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/zh_CN/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/zh_CN/symbols.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/zh_TW/handwriting.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/zh_TW/main.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/layouts/zh_TW/symbols.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/org.kde.plasma.keyboard.metainfo.xml: <project_license>GPL-3</project_license>src/qmlplugin/BreezePopup.qml:// SPDX-License-Identifier: GPL-3.0-onlysrc/sounds/keyboard_tick2_quiet.wav.license:SPDX-License-Identifier: GPL-3.0-onlysrc/styles/breeze/style.qml:// SPDX-License-Identifier: GPL-3.0-only
Quite a few others are dual-licensed:
kcm/CMakeLists.txt:# SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
kcm/plasmakeyboardkcm.cpp: SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
kcm/plasmakeyboardkcm.h: SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
kcm/ui/LocaleSelectorListView.qml: SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
kcm/ui/LocaleSelectorSidebar.qml: SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
kcm/ui/main.qml: SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
kcm/ui/main_handset.qml: SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
kcm/ui/main_mediacenter.qml: SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
src/inputlisteneritem.cpp: SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
src/inputlisteneritem.h: SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
src/inputmethod.cpp: SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
src/inputmethod_p.h: SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
src/inputpanelwindow.cpp: SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
src/inputpanelwindow.h: SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
src/inputplugin.cpp: SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
src/inputplugin.h: SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
src/main.cpp: SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
src/org.kde.plasma.keyboard.desktop:# SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
src/plasmakeyboardsettings.kcfg: - SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
src/plasmakeyboardsettings.kcfgc:# SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
src/qml/main.qml: SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
src/qmlplugin/BreezeConstants.qml:// SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
src/qmlplugin/BreezeKeyPanel.qml:// SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
src/resources.qrc: - SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
src/sounds/keyboard_tick2_quiet.wav.license:SPDX-License-Identifier: GPL-3.0-only
src/vibration.cpp:// SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
src/vibration.h:// SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
src/vibrationevent.h:// SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
Could we apply this throughout plasma-keyboard? Generally, it would be awesome if plasma-keyboard could stay similarly licensed to kwin, to enable a fully operational kwin in more deployment scenarios.
Happy to hear your thoughts on this!