Maschinelle Übersetzung aus dem Türkischen (Cloudflare Workers AI), vom Autor nicht geprüft. Türkisches Original lesen

← Beiträge

Angepasster Sperrbildschirm und Benachrichtigungszentrum mit Quickshell

Bewertung —

PAM-Authentifizierungsintegration, flüssige Öffnungsanimationen und die Architektur eines gruppierten Wayland-Benachrichtigungszentrums.

· 1 Min. Lesezeit
Inhalt

Zusammenfassung: Es wird die Lösung von Quickshell für das Problem des Flackerns bei externen Sperrbildschirmen und der hinter der Sperre verbleibenden Benachrichtigungen beschrieben: eine Sperroberfläche, die mit dem Wayland-Protokoll ext-session-lock-v1 über allem liegt und keine Eingaben durchlässt, eine Passwortprüfung mit PAM und ein Benachrichtigungszentrum, das Benachrichtigungen nach Anwendung gruppiert.

Die Sicherheit des Desktops und die Verwaltung von Benachrichtigungen gehören zu den empfindlichsten Teilen der Benutzererfahrung. Bildschirmflackern bei der Verwendung eines externen Sperrbildschirms oder Benachrichtigungen, die hinter dem Sperrbildschirm verschwinden, beeinträchtigen das Gefühl eines ganzheitlichen Desktops.

Quickshell bietet einen eleganten, sicheren und integrierten Sperrbildschirm, indem es das Wayland-Protokoll ext-session-lock-v1 und die Linux-PAM-Infrastruktur (Pluggable Authentication Modules) nativ unterstützt.

1. Das Wayland-Session-Lock-Protokoll

Quickshell erzeugt beim Sperren des Bildschirms eine sichere Oberfläche, die über alle anderen Fenster tritt und kein Eingabeereignis nach hinten durchlässt:

import QtQuick 2.15
import Quickshell 1.0
import Quickshell.Wayland 1.0

SessionLock {
    id: lockSurface
    
    Rectangle {
        anchors.fill: parent
        color: "#08090b"
        
        // Dijital Saat
        Text {
            anchors.centerIn: parent
            anchors.verticalCenterOffset: -60
            text: Qt.formatDateTime(new Date(), "hh:mm")
            font.pixelSize: 64
            font.bold: true
            color: "#ffffff"
        }
        
        // Şifre Giriş Alanı
        TextInput {
            id: passwordField
            anchors.centerIn: parent
            anchors.verticalCenterOffset: 40
            echoMode: TextInput.Password
            color: "#00ffcc"
            font.pixelSize: 18
            focus: true
            
            onAccepted: {
                PamAuth.authenticate(passwordField.text);
            }
        }
    }
}

2. Gruppierte Benachrichtigungszentrale

Der Benachrichtigungsserver von Quickshell (org.freedesktop.Notifications) gruppiert eingehende Benachrichtigungen automatisch nach Anwendungsnamen. Wenn der Benutzer möchte, kann er vergangene Benachrichtigungen in der Seitenleiste auflisten oder mit einem Klick löschen.

Meine Lesart

  • Der Sperrbildschirm muss durch das Protokoll geschützt werden: Das session lock-Protokoll verhindert, dass Eingaben die Fenster dahinter erreichen.
  • Die Überprüfung erfolgt mit der eigenen Infrastruktur des Systems: Die Passwortprüfung läuft über PAM.
  • Gruppierung reduziert die Benachrichtigungsflut: Benachrichtigungen werden nach Anwendungsnamen zusammengefasst.