mirror of
https://invent.kde.org/marcoa/shift-shell.git
synced 2026-06-11 00:47:22 +00:00
Brand KCM and KDED metadata as SHIFT
Point the mobile shell, navigation, and Waydroid KCM metadata at the Shift repository. Brand the KDED startup and APN autodetect module names and descriptions as SHIFT while keeping existing plasma-mobile plugin/library identifiers stable. Add a guard for these metadata surfaces so upstream project URLs and translated Plasma Mobile overrides are not reintroduced.
This commit is contained in:
parent
82316c393e
commit
f00a29bd21
9 changed files with 92 additions and 139 deletions
|
|
@ -124,7 +124,7 @@ set_package_properties(KWinDBusInterface PROPERTIES DESCRIPTION "KWin DBus inter
|
|||
find_package(KF6 ${KF6_MIN_VERSION} REQUIRED COMPONENTS Auth)
|
||||
set_package_properties(KF6::AuthCore PROPERTIES
|
||||
TYPE REQUIRED
|
||||
PURPOSE "Allows Plasma Mobile to configure Waydroid"
|
||||
PURPOSE "Allows SHIFT to configure Waydroid"
|
||||
)
|
||||
|
||||
if(PLASMA_MOBILE_LOCAL_KAUTH_INSTALL)
|
||||
|
|
|
|||
|
|
@ -128,7 +128,7 @@
|
|||
"Name[uk]": "Оболонка",
|
||||
"Name[zh_CN]": "外壳程序",
|
||||
"Name[zh_TW]": "殼層",
|
||||
"Website": "https://plasma-mobile.org/"
|
||||
"Website": "https://invent.kde.org/marcoa/shift-shell"
|
||||
},
|
||||
"X-KDE-Keywords": "system,shell,panel",
|
||||
"X-KDE-Keywords[ar]": "نظام,صدفة,لوحة",
|
||||
|
|
|
|||
|
|
@ -91,7 +91,7 @@
|
|||
"Name[uk]": "Навігація",
|
||||
"Name[zh_CN]": "导航",
|
||||
"Name[zh_TW]": "導覽",
|
||||
"Website": "https://plasma-mobile.org/"
|
||||
"Website": "https://invent.kde.org/marcoa/shift-shell"
|
||||
},
|
||||
"X-KDE-Keywords": "system,shell,panel,navigation,gesture",
|
||||
"X-KDE-Keywords[ar]": "نظام,صدفة,لوحة,التنقل,تنقل,إيماء",
|
||||
|
|
|
|||
|
|
@ -94,7 +94,7 @@
|
|||
"Name[uk]": "Інтеграція з Waydroid",
|
||||
"Name[zh_CN]": "Waydroid 集成",
|
||||
"Name[zh_TW]": "Waydroid 整合",
|
||||
"Website": "https://plasma-mobile.org/"
|
||||
"Website": "https://invent.kde.org/marcoa/shift-shell"
|
||||
},
|
||||
"X-KDE-Keywords": "waydroid",
|
||||
"X-KDE-Keywords[ar]": "ويدرويد",
|
||||
|
|
|
|||
|
|
@ -25,6 +25,6 @@ ecm_qt_declare_logging_category(kded_plasma_mobile_autodetect_apn
|
|||
HEADER autodetectapn_debug.h
|
||||
IDENTIFIER AUTODETECTAPN_LOG
|
||||
CATEGORY_NAME org.kde.plasma.autodetectapn
|
||||
DESCRIPTION "Plasma Mobile Autodetect APNs"
|
||||
DESCRIPTION "SHIFT Autodetect APNs"
|
||||
EXPORT PLASMA_MOBILE
|
||||
)
|
||||
|
|
|
|||
|
|
@ -1,69 +1,7 @@
|
|||
{
|
||||
"KPlugin": {
|
||||
"Description": "Autodetect cellular APNs in Plasma Mobile",
|
||||
"Description[ar]": "التعرف الآليّ لأسماء نقاط الوصول لبلازما الجوال",
|
||||
"Description[ca@valencia]": "Detecta automàticament els APN mòbils en Plasma Mobile",
|
||||
"Description[ca]": "Detecta automàticament els APN mòbils en el Plasma Mobile",
|
||||
"Description[cs]": "Automatická detekce mobilních APN v Plasma Mobile",
|
||||
"Description[en_GB]": "Autodetect cellular APNs in Plasma Mobile",
|
||||
"Description[eo]": "Aŭtomate detekti ĉelretajn APN en Plasma-Mobile",
|
||||
"Description[es]": "Detección automática de APN móviles en Plasma Mobile",
|
||||
"Description[eu]": "Plasma Mugikorrean APN mugikorren hautemate automatikoa",
|
||||
"Description[fi]": "Havaitse matkapuhelin-APN:t Plasma Mobilessa",
|
||||
"Description[fr]": "Détecter automatiquement les APN cellulaires dans Plasma Mobile",
|
||||
"Description[gl]": "Detectar APN celulares automaticamente en Plasma Mobile.",
|
||||
"Description[he]": "זיהוי אוטומטי של נקודות הגישה לרשת הסלולרית (APN) בפלזמה לניידים",
|
||||
"Description[hu]": "APN-ek automatikus észlelése a Plasma Mobile-ban",
|
||||
"Description[ia]": "Auto releva APNs de cellular in Plasma Mobile",
|
||||
"Description[is]": "Finna sjálfkrafa APN-heiti í Plasma Mobile",
|
||||
"Description[it]": "Rileva automaticamente gli APN cellulari in Plasma Mobile",
|
||||
"Description[ka]": "ფიჭური APN-ების ავტომატური დადგენა Plasma Mobile-ში",
|
||||
"Description[ko]": "Plasma 모바일에서 셀룰러 APN 자동 감지",
|
||||
"Description[lv]": "„Plasma Mobile“ automātiski noteikt mobilos APN",
|
||||
"Description[nl]": "Cellulaire APN's automatisch in Plasma Mobile detecteren",
|
||||
"Description[nn]": "Oppdag automatisk mobil-APN-ar i Plasma Mobile",
|
||||
"Description[pl]": "Sam wykryj komórkowe APNy na Przenośnej Plazmie",
|
||||
"Description[pt_BR]": "Detecção automática de APNs do celular no Plasma Mobile",
|
||||
"Description[ru]": "Автоопределение сотовых APN в Plasma Mobile",
|
||||
"Description[sa]": "प्लाज्मा मोबाईले सेलुलर एपीएन् ऑटोडिटेक्ट् कुर्वन्तु",
|
||||
"Description[sl]": "Samodejno zaznavaj celične APN v Plasma Mobile",
|
||||
"Description[sv]": "Detektera automatiskt mobilaccesspunkter i Plasma mobil",
|
||||
"Description[tr]": "Plasma Cep’teki erişim noktası adlarını kendiliğinden algılayın",
|
||||
"Description[uk]": "Автоматично виявляти стільникові точки доступу у Мобільній Плазмі",
|
||||
"Description[zh_CN]": "在 Plasma Mobile 中自动检测蜂窝网络 APN",
|
||||
"Description[zh_TW]": "在 Plasma 行動中自動偵測行動 APN",
|
||||
"Name": "Plasma Mobile Autodetect APNs",
|
||||
"Name[ar]": "التعرف الآليّ لأسماء نقاط الوصول",
|
||||
"Name[ca@valencia]": "Detecció automàtica dels APN de Plasma Mobile",
|
||||
"Name[ca]": "Detecció automàtica dels APN del Plasma Mobile",
|
||||
"Name[cs]": "Automatická detekce APN v Plasma Mobile",
|
||||
"Name[en_GB]": "Plasma Mobile Autodetect APNs",
|
||||
"Name[eo]": "Atomata APN-Ekkono de Plasma-Mobile",
|
||||
"Name[es]": "Detección automática de APN en Plasma Mobile",
|
||||
"Name[eu]": "Plasma Mugikorrean APN hautemate automatikoa",
|
||||
"Name[fi]": "Plasma Mobilen automaattinen APN-havaitseminen",
|
||||
"Name[fr]": "Auto-détection des APN de Plasma Mobile",
|
||||
"Name[gl]": "Detección de APN",
|
||||
"Name[he]": "זיהוי נקודות גישה אוטומטית בפלזמה לניידים",
|
||||
"Name[hu]": "Plasma Mobile automatikus APN észlelés",
|
||||
"Name[ia]": "Autorelevation de APNs de Plasma Mobile",
|
||||
"Name[is]": "Plasma Mobile greina sjálfkrafa APN-heiti",
|
||||
"Name[it]": "Rilevamento automatico APN di Plasma Mobile",
|
||||
"Name[ka]": "Plasma Mobile-ის APN-ების ავტომატური დადგენა",
|
||||
"Name[ko]": "Plasma 모바일 APN 자동 감지",
|
||||
"Name[lv]": "„Plasma Mobila“ automātiski noteikt APN",
|
||||
"Name[nl]": "Plasma Mobile automatisch APN's detecteren",
|
||||
"Name[nn]": "Plasma Mobile automatisk APN-oppdaging",
|
||||
"Name[pl]": "Sam wykryj APNy na Przenośnej Plazmie",
|
||||
"Name[pt_BR]": "Detecção automática de APNs do Plasma Mobile",
|
||||
"Name[ru]": "Автоопределение APN в Plasma Mobile",
|
||||
"Name[sa]": "प्लाज्मा मोबाइल ऑटोडिटेक्ट एपीएन",
|
||||
"Name[sl]": "Plasma Mobile je samodejno zaznala APN",
|
||||
"Name[sv]": "Plasma mobil automatiskt detekterade åtkomstpunkter",
|
||||
"Name[tr]": "Plasma Cep Erişim Noktası Adlarını Kendiliğinden Algıla",
|
||||
"Name[uk]": "Автоматичне виявлення точок доступу у Мобільній Плазмі",
|
||||
"Name[zh_CN]": "Plasma Mobile 自动检测 APN",
|
||||
"Name[zh_TW]": "Plasma 行動自動偵測 APN"
|
||||
"Description": "Autodetect cellular APNs in SHIFT",
|
||||
"Name": "SHIFT Autodetect APNs"
|
||||
},
|
||||
"OnlyShowIn": "KDE;",
|
||||
"X-KDE-Kded-autoload": true,
|
||||
|
|
|
|||
|
|
@ -1,75 +1,7 @@
|
|||
{
|
||||
"KPlugin": {
|
||||
"Description": "Run initial tasks for Plasma Mobile during session startup",
|
||||
"Description[ar]": "شغّل مهام في بدء النظام لبلازما الجوال",
|
||||
"Description[ca@valencia]": "Executa les tasques inicials de Plasma Mobile durant l'inici de sessió",
|
||||
"Description[ca]": "Executa les tasques inicials del Plasma Mobile durant l'inici de sessió",
|
||||
"Description[cs]": "Spustit počáteční úkoly pro Plasma Mobile během spouštění relace",
|
||||
"Description[de]": "Ausführen der ersten Aufgaben für Plasma Mobile während des Starts der Sitzung",
|
||||
"Description[en_GB]": "Run initial tasks for Plasma Mobile during session startup",
|
||||
"Description[eo]": "Ruli komencajn taskojn por Plasma Mobile dum seanc-komenco",
|
||||
"Description[es]": "Ejecutar tareas iniciales para Plasma Mobile durante el inicio de sesión",
|
||||
"Description[eu]": "Exekutatu Plasma Mugikorrerako hasierako atazak saioa abiatu bitartean",
|
||||
"Description[fi]": "Suorita Plasma Mobilen alustustehtävät istuntoa käynnistettäessä",
|
||||
"Description[fr]": "Lancer les tâches initiales pour la session Plasma Mobile durant le démarrage de session",
|
||||
"Description[gl]": "Executar as tarefas iniciais de Plasma Mobile durante o inicio da sesión.",
|
||||
"Description[he]": "הרצת משימות התחלתיות לפלזמה לניידים במהלך ההפעלה",
|
||||
"Description[hu]": "A Plasma Mobile kezdeti feladatainak futtatása a munkamenet indítása során",
|
||||
"Description[ia]": "Executa cargas initial per Plasma Mobile durante initio de session",
|
||||
"Description[is]": "Keyra upphafsverk fyrir Plasma Mobile við ræsingu",
|
||||
"Description[it]": "Esegui le attività iniziali per Plasma Mobile durante l'avvio della sessione",
|
||||
"Description[ka]": "Plasma Mobile-ის საწყისი ამოცანების შესრულება სესიის გაშვებისას",
|
||||
"Description[ko]": "세션 시작 시 Plasma 모바일에 필요한 초기 작업 실행",
|
||||
"Description[lv]": "Palaižot sesiju, automātiski palaist „Plasma Mobile“ sākotnējos uzdevumus",
|
||||
"Description[nl]": "Initiële taken voor Plasma Mobile uitvoeren tijdens opstarten van sessie",
|
||||
"Description[nn]": "Køyr oppgåver for Plasma Mobile ved øktstart",
|
||||
"Description[pa]": "ਸ਼ੈਸ਼ਨ ਸ਼ਰੂ ਹੋਣ ਦੇ ਦੌਰਾਨ ਪਲਾਜ਼ਮਾ ਮੋਬਾਈਲ ਲਈ ਸ਼ੁਰੂਆਤੀ ਕੰਮ ਚਲਾਓ",
|
||||
"Description[pl]": "Wykonaj początkowe zadania dla Przenośnej Plazmy podczas rozpoczynania posiedzenia",
|
||||
"Description[pt_BR]": "Executa tarefas iniciais para o Plasma Mobile durante a inicialização da sessão",
|
||||
"Description[ru]": "Запуск начальных задач для Plasma Mobile при запуске сеанса",
|
||||
"Description[sa]": "सत्रप्रारम्भस्य समये Plasma Mobile कृते प्रारम्भिककार्यं चालयन्तु",
|
||||
"Description[sk]": "Spustenie počiatočných úloh pre Plasma Mobile počas spustenia sedenia",
|
||||
"Description[sl]": "Poženi zagonske naloge za Plasma Mobile ob začetku seje",
|
||||
"Description[sv]": "Utför initieringsuppgifter för Plasma mobil under sessionsstart",
|
||||
"Description[tr]": "Oturum başlangıcı sırasında Plasma Cep başlangıç görevlerini çalıştırın",
|
||||
"Description[uk]": "Запуск початкових завдань для Plasma Mobile під час запуску сеансу",
|
||||
"Description[zh_CN]": "会话启动时为 Plasma Mobile 运行初始任务",
|
||||
"Description[zh_TW]": "在工作階段啟動時為 Plasma 行動執行初始工作",
|
||||
"Name": "Plasma Mobile Start",
|
||||
"Name[ar]": "بدء بلازما الجوال",
|
||||
"Name[ca@valencia]": "Inici de Plasma Mobile",
|
||||
"Name[ca]": "Inici del Plasma Mobile",
|
||||
"Name[cs]": "Spuštění Plasma Mobile",
|
||||
"Name[de]": "Plasma Mobile Start",
|
||||
"Name[en_GB]": "Plasma Mobile Start",
|
||||
"Name[eo]": "Plasma-Mobile Komenco",
|
||||
"Name[es]": "Inicio de Plasma Mobile",
|
||||
"Name[eu]": "Plasma Mugikorraren abioa",
|
||||
"Name[fi]": "Plasma Mobilen käynnistys",
|
||||
"Name[fr]": "Démarrage de Plasma Mobile",
|
||||
"Name[gl]": "Inicio de Plasma Mobile",
|
||||
"Name[he]": "התחלת פלזמה לניידים",
|
||||
"Name[hu]": "Plasma Mobile Start",
|
||||
"Name[ia]": "Initio de Plasma Mobile",
|
||||
"Name[is]": "Plasma Mobile Start",
|
||||
"Name[it]": "Avvio di Plasma Mobile",
|
||||
"Name[ka]": "Plasma Mobile-ის გაშვება",
|
||||
"Name[ko]": "Plasma 모바일 시작",
|
||||
"Name[lv]": "„Plasma Mobile“ palaišana",
|
||||
"Name[nl]": "Begin van Plasma Mobile",
|
||||
"Name[nn]": "Plasma Mobile-start",
|
||||
"Name[pa]": "ਪਲਾਜ਼ਮਾ ਮੋਬਾਈਲ ਸ਼ੁਰੂ",
|
||||
"Name[pl]": "Początki w Przenośnej Plazmie",
|
||||
"Name[pt_BR]": "Início do Plasma Mobile",
|
||||
"Name[ru]": "Запуск Plasma Mobile",
|
||||
"Name[sa]": "प्लाज्मा मोबाईल प्रारम्भ",
|
||||
"Name[sk]": "Štart Plasma Mobile",
|
||||
"Name[sl]": "Zagon Plasma Mobile",
|
||||
"Name[sv]": "Plasma mobil start",
|
||||
"Name[tr]": "Plasma Cep Başlangıç",
|
||||
"Name[uk]": "Запуск Plasma Mobile",
|
||||
"Name[zh_CN]": "Plasma Mobile 启动程序",
|
||||
"Name[zh_TW]": "Plasma 行動起始畫面"
|
||||
"Description": "Run initial tasks for SHIFT during session startup",
|
||||
"Name": "SHIFT Start"
|
||||
},
|
||||
"X-KDE-Kded-autoload": true,
|
||||
"X-KDE-Kded-phase": 1,
|
||||
|
|
|
|||
|
|
@ -34,4 +34,9 @@ if(BASH_EXECUTABLE)
|
|||
NAME shift-containment-metadata
|
||||
COMMAND ${BASH_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/check-shift-containment-metadata.sh
|
||||
)
|
||||
|
||||
add_test(
|
||||
NAME shift-settings-daemon-metadata
|
||||
COMMAND ${BASH_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/check-shift-settings-daemon-metadata.sh
|
||||
)
|
||||
endif()
|
||||
|
|
|
|||
78
tests/check-shift-settings-daemon-metadata.sh
Normal file
78
tests/check-shift-settings-daemon-metadata.sh
Normal file
|
|
@ -0,0 +1,78 @@
|
|||
#!/usr/bin/env bash
|
||||
# SPDX-FileCopyrightText: 2026 Marco Allegretti <mightymarco4@gmail.com>
|
||||
# SPDX-License-Identifier: EUPL-1.2
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
repo_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||||
cd "$repo_dir"
|
||||
|
||||
fail() {
|
||||
printf '%s\n' "$1" >&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
require_line() {
|
||||
local file="$1"
|
||||
local pattern="$2"
|
||||
local message="$3"
|
||||
|
||||
grep -Eq "$pattern" "$file" || fail "$message"
|
||||
}
|
||||
|
||||
reject_line() {
|
||||
local file="$1"
|
||||
local pattern="$2"
|
||||
local message="$3"
|
||||
|
||||
! grep -Eq "$pattern" "$file" || fail "$message"
|
||||
}
|
||||
|
||||
kcm_files=(
|
||||
kcms/mobileshell/kcm_mobileshell.json
|
||||
kcms/navigation/kcm_navigation.json
|
||||
kcms/waydroidintegration/kcm_waydroidintegration.json
|
||||
)
|
||||
|
||||
for metadata_file in "${kcm_files[@]}"; do
|
||||
require_line "$metadata_file" '"Website": "https://invent\.kde\.org/marcoa/shift-shell"' \
|
||||
"$metadata_file must point at the Shift repository"
|
||||
done
|
||||
|
||||
mapfile -t all_kcm_metadata < <(find kcms -name 'kcm_*.json' | sort)
|
||||
[[ "${#all_kcm_metadata[@]}" -eq 5 ]] || fail "unexpected KCM metadata file count"
|
||||
|
||||
for metadata_file in "${all_kcm_metadata[@]}"; do
|
||||
reject_line "$metadata_file" 'plasma-mobile\.org|bugs\.kde\.org|"Website": "https://kde\.org"' \
|
||||
"$metadata_file must not expose upstream Plasma Mobile project URLs"
|
||||
done
|
||||
|
||||
require_line kded/autodetectapn/kded_plasma_mobile_autodetectapn.json '"Description": "Autodetect cellular APNs in SHIFT"' \
|
||||
"APN autodetect KDED description must be branded SHIFT"
|
||||
require_line kded/autodetectapn/kded_plasma_mobile_autodetectapn.json '"Name": "SHIFT Autodetect APNs"' \
|
||||
"APN autodetect KDED name must be branded SHIFT"
|
||||
require_line kded/start/kded_plasma_mobile_start.json '"Description": "Run initial tasks for SHIFT during session startup"' \
|
||||
"start KDED description must be branded SHIFT"
|
||||
require_line kded/start/kded_plasma_mobile_start.json '"Name": "SHIFT Start"' \
|
||||
"start KDED name must be branded SHIFT"
|
||||
|
||||
for metadata_file in kded/autodetectapn/kded_plasma_mobile_autodetectapn.json kded/start/kded_plasma_mobile_start.json; do
|
||||
require_line "$metadata_file" '"X-KDE-Library": "plasma-mobile"' \
|
||||
"$metadata_file must keep the existing KDED library name until a namespace migration is planned"
|
||||
reject_line "$metadata_file" '"(Name|Description)\[[^]]+\]"' \
|
||||
"$metadata_file must not keep translated names or descriptions that can override the base metadata"
|
||||
reject_line "$metadata_file" 'Plasma Mobile|plasma-mobile\.org|bugs\.kde\.org|"Website": "https://kde\.org"' \
|
||||
"$metadata_file must not expose upstream Plasma Mobile product metadata"
|
||||
done
|
||||
|
||||
require_line kded/autodetectapn/CMakeLists.txt 'DESCRIPTION "SHIFT Autodetect APNs"' \
|
||||
"APN autodetect logging category description must be branded SHIFT"
|
||||
require_line CMakeLists.txt 'PURPOSE "Allows SHIFT to configure Waydroid"' \
|
||||
"KF6 Auth feature summary must be branded SHIFT"
|
||||
|
||||
require_line kded/autodetectapn/CMakeLists.txt 'kcoreaddons_add_plugin\(kded_plasma_mobile_autodetect_apn' \
|
||||
"APN autodetect KDED plugin target must stay stable until a namespace migration is planned"
|
||||
require_line kded/start/CMakeLists.txt 'kcoreaddons_add_plugin\(kded_plasma_mobile_start' \
|
||||
"start KDED plugin target must stay stable until a namespace migration is planned"
|
||||
|
||||
printf 'shift-settings-daemon-metadata-ok\n'
|
||||
Loading…
Reference in a new issue