Wie kann ich eine Nachricht auf dem Anmeldebildschirm anzeigen?

10

Unter bestimmten Umständen wäre es für mich hilfreich, vor dem Anmelden eine kurze Textbenachrichtigung zu erhalten, damit ich mich entscheiden kann, mich nach dem Anzeigen der Nachricht nicht anzumelden.

Gibt es eine Möglichkeit, eine Benachrichtigung auf dem grafischen Anmeldebildschirm anzuzeigen?

ændrük
quelle
Möchten Sie, dass die Nachricht angezeigt wird, bevor Sie sich anmelden? Oder sofort, nachdem Sie Ihren Benutzernamen und Ihr Passwort eingegeben haben?
Eliah Kagan
1
Welche Art von Benachrichtigungen? Ich meine, bevor Sie angemeldet sind, werden noch keine Anwendungen wie der IM-Client ausgeführt. Ich kann mir nur vorstellen, wie sich Batteriestatus (mobiler PC) und Network Manager-Profile auf Systemebene verbinden. Und in welchem ​​Kontext ist das? Reiner Benutzer oder Entwicklung einer Anwendung?
Gertvdijk
Ich interessiere mich für eine allgemeine Antwort; Ich habe keine spezifischen Anforderungen an das Timing von Nachrichten oder Tools, die zum Generieren der Nachricht verwendet werden.
ændrük
du meinst so etwas wie, Anmeldebildschirm dann deine Nachricht. Keine Anmeldung erforderlich?
rɑːdʒɑ
@snow "vor dem Anmelden" <-
gertvdijk

Antworten:

3

Mir ist klar, dass dies eine späte Antwort ist (etwa Jahre zu spät), aber ich dachte, ich würde hier etwas für alle anderen tun, die die gleichen Probleme haben. Ich sehe dieses Problem die ganze Zeit. Dies ist nur eine Möglichkeit, die einfach zu skripten und bereitzustellen ist. Beachten Sie, dass dies eine unelegante Lösung ist, die dieser ähnelt: Wie erstelle ich ein Popup-Banner, bevor ich mich mit Lightdm anmelde?

  1. Erstellen Sie eine Datei und benennen Sie sie wie gewünscht: anyYouWant
  2. Fügen Sie Folgendes in diese Datei ein (wobei Sie natürlich den Bannertext ersetzen):

    bannerText="This is my banner and you will love it.  Worship it!"
    
    zenity --question --title="Pirate Ninja Banner" \
    --text=$bannerText" --no-wrap --width=800 --height=200
    
    until [[ $? = '0' ]]: do
       zenity --question --title="Pirate Ninja Banner" \
       --text=$bannerText" --no-wrap --width=800 --height=200
    done
    
  3. Passen Sie Breite und Höhe an Ihre Bedürfnisse an.

    3a. Die Idee hier ist, wenn die Anmeldemeldung angezeigt wird, dass der Benutzer erst fortfahren kann, wenn er den Bedingungen zustimmt. Daher wird eine Schleife ausgeführt, bis "Ja" ausgewählt wird.

HINWEIS (weil ich das vorher nicht wusste): zenity --list kann true yes false no (Boolesche Werte) zurückgeben, zenity --question gibt exit 0,1 zurück

  1. Machen Sie Ihre Datei ausführbar:

    sudo chmod +x anythingYouWant
    
  2. Legen Sie es irgendwo hin - ich habe es einfach in / usr / bin gesteckt

    sudo mv anythingYouWant /usr/bin
    

----------- LIGHTDM -----------------------

  1. Wenn Sie lightdm verwenden, müssen Sie Ihre Datei lightdm.conf ändern. Als ich das zum ersten Mal machte, war lightdm.conf nicht da T_T. Wenn dies nicht der Fall ist, holen Sie sich eine Kopie, indem Sie Folgendes tun:

    sudo cp /usr/share/doc/lightdm/lightdm.conf /etc/lightdm/
    
  2. Wenn das nicht funktioniert hat, kann es sein, dass die Datei in / usr / share / doc / lightdm / komprimiert ist.

    sudo gzip -d /usr/share/doc/lightdm/lightdm.conf.gz
    

    7a. Verschieben Sie dann die Datei nach / etc / lightdm /

  3. Öffnen Sie die Datei lightdm.conf (die sich jetzt in / etc / lightdm / befinden sollte) und fügen Sie unter dem Abschnitt [SeatDefaults] Folgendes hinzu:

    [SeatDefaults]
    greeter-setup-script=/path/to/your/loginMessage
    

    8a. Wo / path / to / your / loginMessage ist, wo immer Sie die zuvor erstellte ausführbare Datei ablegen. Ich habe meine in / usr / bin abgelegt, damit meine so aussieht:

    [SeatDefaults]
    greeter-setup-script=/usr/bin/loginmessage
    

    8b. Speicher die Datei

  4. Das sollte es ungefähr für lightdm tun. Sie können auch einfach Ihre eigene lightdm.conf-Datei erstellen und die oben genannten Dateien einfügen.

    9a. Starten Sie neu.

----------- GDM -------------------

  1. Ich habe diese Popup "Schleife" auch unter CenOS 7 und Ubuntu 14.04 mit GDM getestet. Die Sache ist, dass lightdm.conf im Fall von GDM nicht wirklich hilft, oder?

  2. Nun, es gibt eine Problemumgehung, die für mich (vorerst) funktioniert.

  3. Öffnen Sie die Datei / etc / gdm / Init / Default

    sudo vim /etc/gdm/Init/Default
    
  4. Gehen Sie zum Ende der Datei.

  5. Rechts über Ausgang 0 setzen:

    exec /path/to/your/message
    

    14a. Wo / Pfad / zu / Ihrer / Nachricht ist der Pfad zu Ihrer raffinierten Anmeldenachricht. Wenn alles erledigt ist, sollte es ungefähr so ​​aussehen:

    fi
    exec /usr/bin/loginmessage
    exit 0
    

    14b. Das "fi" und das "exit 0" sind bereits vorhanden, Sie geben einfach den "exec / path / to / your / message-Teil" ein.

    14c. Speichern und neu starten.

  6. Der gesamte Neustart ist wahrscheinlich nicht erforderlich. Ich teste dieses Zeug in VMs, damit es einfacher ist, die Maschine einfach abzuprallen.

  7. Wenn es bessere Möglichkeiten gibt, bin ich ganz Ohr / Augen. Ich weiß, dass gconf in CentOS 6.x gut funktioniert. Ich weiß, dass dconf in CentOS 7 funktioniert, aber ich habe nicht bekommen, was ich wollte. Keines der gconf-Dinge hat in Ubuntu für mich funktioniert, selbst nach der Installation von GDM und der Neukonfiguration von <- könnte es nur ich sein.

Nathan Peek
quelle
2

Es ist möglicherweise nicht möglich, die Nachricht direkt auf dem Anmeldebildschirm anzuzeigen. Aber Sie können in einer Nachricht vor dem Einloggen senden in Ihre. /etc/lightdm/lightdm.conf:

greeter-setup-script=xmessage -button ok -default ok -center "Hello world"

Seien Sie vorsichtig, da eine falsche Option in dieser Datei Ihren Startvorgang unterbrechen kann.
Die Maus ist zu diesem Zeitpunkt nicht verfügbar, aber Sie können die Nachricht mit schließen Enter. xmessagekann den Nachrichtentext aus der Datei lesen oder ein benutzerdefiniertes Zeitlimit haben. Überprüfen Sie die Manpage auf zusätzliche Optionen. Weitere Informationen zur Anpassung und Begrüßung finden
Sie unter https://wiki.ubuntu.com/LightDMlightdm.conf .

whtyger
quelle