Ich habe das alte Programm xsnow
mit Apt installiert . Dieses Programm soll Schnee ( die Art des Niederschlags ) auf dem Desktop erscheinen lassen. Das Ausführen des Programms bewirkt jedoch nichts anderes als die Rückgabe des folgenden Codes:
Xsnow-1.42resizeable, December 14th 2001 by Rick Jansen ([email protected])
WWW: http://www.euronet.nl/~rja/Xsnow/
Dies liegt daran, dass das Programm dafür ausgelegt ist, den Schnee im Root-X-Fenster zu zeichnen , wie auf der Website angegeben:
Häufig gestellte Frage: Ich starte Xsnow, sehe aber keinen Schnee? Antwort: Xsnow lässt es im X-Window "Root" -Fenster schneien. Dieses Stammfenster wird häufig von Desktop-Managern verdeckt, um Symbole und Tools anzuzeigen. Also, Xsnow funktioniert gut, man kann den Schnee einfach nicht sehen! Einzelheiten und mögliche Lösungen finden Sie in der README.
Ich habe es in einer Ubuntu 13.10 VM, Kubuntu 13.10 und 14.04 und einem Lubuntu Trusty Live USB ausprobiert. Es funktioniert in Xubuntu, da in Xfce standardmäßig das Root-X-Fenster angezeigt wird. Im Chat hat jemand berichtet, dass es in Ubuntu 12.04 funktioniert, aber in meiner Ubuntu 13.10-VM sehe ich keinen Schnee.
Das Problem ist, dass, wie ich bereits erwähnte, xsnow
ausschließlich auf dem Root-X-Fenster gezeichnet wird. Das Root-X-Fenster ist das "übergeordnete Fenster" aller anderen X-Fenster und daher auch unsichtbar, da moderne Desktop-Umgebungen wie KDE und Unity das Root-X-Fenster normalerweise mit einem Desktop-Effekt-Compositor verbergen. Zieht also xsnow
noch Schnee, (man kann beim Ein- und Ausloggen aufgrund von Grafikfragmentierung Schnipsel davon bekommen) ist es einfach nicht sichtbar. Auf einfacheren Desktops wie Openbox und XFCE ist das X-Fenster (und damit der Schnee) vollständig sichtbar.
Gibt es eine Möglichkeit, die Aktivität des Root-X-Fensters und damit den Schnee zu sehen?
Antworten:
Mit KDE können Sie das kwin-snow-effect- Paket verwenden.
Wie installiert man:
Dann können Sie in KDE den Effekt von
System Settings
->Desktop Effects
-> einstellenAll Effects
und Schnee aktivieren.Sie können auch das Compiz-Plugin Snow verwenden . Überprüfen Sie, wie es in diesem Youtube-Video funktioniert
Ich habe xwinwrap gefunden, mit dem Sie jede App als Desktop-Hintergrund verwenden können. Klicken Sie hier, um es herunterzuladen , oder hier, um die Release-Information des Programmierers zu lesen
Sie haben keinen Zugriff auf das Root-Fenster (was in den meisten Desktop-Umgebungen schwierig erscheint). Und dieses funktioniert nicht mit xsnow, aber es wird mit vielen anderen Apps funktionieren ...
quelle
Habe am 12.04. Noch ein paar Tests gemacht (Dies ist wahrscheinlich nicht die Antwort für den 13.10., Aber für diejenigen, die dies am 12.04. Wollen)
Wenn in Gnome-Tweak-Tool, unter Desktop aktiviere ich Datei-Manager für den Desktop. Dann
xsnow
funktioniert sowohl in Unity als auch in Unity-2D . Obwohl in Einheit 2d der Schnee in der Luft unsichtbar ist, sind nur die Gefallenen sichtbar, aber das liegt an meiner Grafikkarte und ihrem Treiber. In Unity funktioniert es perfekt.Wenn ich in gnome-tweak-tool das Kontrollkästchen Dateimanager für den Desktop deaktivieren ,
xsnow
wird weder in Unity noch in Unity-2D ein Fehler ausgelöstquelle
Ich bin ein Benutzer der Precise with Unity- Umgebung und hatte bis zur Ausführung dieses Befehls das gleiche Problem:
Hier ist ein Auszug aus den Notizen der xsnow- Manpage:
SGI Irix 5.x
Benutzer von Silicon Graphics und Irix 5.x sehen möglicherweise überhaupt keinen Schnee oder Weihnachtsmann, solange die Desktopsymbole sichtbar sind. Um dieses Problem zu umgehen, geben Sie den folgenden Befehl ein:
Die Symbole werden ausgeblendet und Xsnow funktioniert einwandfrei. Um den Desktop neu zu starten, starten Sie einfach
oder wählen Sie im Werkzeugkasten Desktop -> Basisverzeichnis.
Es ist sogar möglich, beides zu haben - Desktopsymbole und xsnow (und sogar mehrere Schreibtische). Sie müssen die Ressourcendatei 4DWm des Fenstermanagers ändern , die Datei ~ / .desktop-
hostname
/ 4DWm . Beispiel:Global.backgroundDescription: -execute /etc/killall -TERM xsnow ; /usr/local/bin/xsnow
Desk 1.backgroundDescription: -execute /etc/killall -TERM xsnow ; /usr/local/bin/xsnow
Desk 2.backgroundDescription: -execute /etc/killall -TERM xsnow ; /usr/local/bin/xsnow
Starten Sie den Fenstermanager (4Dwm) über den Toolchest neu und Xsnow sollte erscheinen. Dies stoppt den aktuell ausgeführten Xsnow und startet einen neuen, wenn Sie zu einem anderen Desktop wechseln.
quelle
bash: /usr/lib/desktop/telldesktop: No such file or directory
. Vielen Dank, dass Sie diesen Teil der README-Datei erwähnt haben.gksu nautilus
(damals) gestartet Ich wusste nichts über den Schalter --no-desktop, was später auch nicht half. Dieser Befehl war auch root desktop! Aber irgendetwas ist schief gelaufen. Schrecklich. (Jetzt kann compiz nicht mehr funktionieren. Ich habe versucht, es zurückzusetzen, neu zu installieren und alles. Also kann ich nicht raten, das zu versuchen.)Für Gnome kann man einfach sagen, dass es nicht mit dem Desktop umgehen soll
Ich war auch auf die Erwähnung von shantz-xwinwrap für For Unity Compiz gestoßen , aber es scheint nicht möglich zu sein, die Version von 13.10 von Unity zu verwenden, ohne die Steuerung von xsnow genauer zu steuern.
Das heißt, wenn Sie es in einem Terminal ausprobieren möchten, führen Sie Folgendes aus:
Einmal installiert, könnte eine mögliche Ausführung von xwinwrap ohne anibg so aussehen:
quelle
/usr/lib/xscreensaver/plasma: No such file or directory /usr/lib/xscreensaver/plasma died, exit status 2
--root
und--windows-id
werden von xsnow nicht unterstützt. Diese Argumente stammen aus einem Verwendungsbeispiel von xwinwrap mit glmatrix, das--root
und--window-id
als Argumente akzeptiert :xwinwrap -ov -fs -- /usr/lib/xscreensaver/glmatrix -root -window-id WID
funktioniert beispielsweiseMelden Sie sich bei einer 64-Bit-Standardinstallation mit 12.04.3 an, haben Sie nur ein Terminalfenster am unteren Bildschirmrand und starten Sie xsnow, was funktioniert. Es scheint ein Restwissen darüber zu sein, wo sich die Fenster befanden, als xsnow gestartet wurde, und die Schneeabschaltung tritt immer noch auf, nachdem das Fenster verschoben oder mit einem Symbol versehen wurde. Probleme treten auf, wenn sich ein Fenster am oberen Bildschirmrand befindet. Logout / In löscht alte Windows-Positionen, experimentieren Sie also mit einem neuen Login (oder vielleicht einem Neustart von X). Die Standardverzögerung von 20 ist für mich ziemlich nahe am Minimum, was dazu führen kann, dass der Schnee auch erscheint.
xsnow-Optionen werden in den Manpages oder mit der Option -h beschrieben. -Delay 30 bewirkt eine Verzögerung von 30 Millisekunden zwischen den Aktualisierungen, anstatt der Standardeinstellung 20. Ich finde, dass die Dinge mit 18 Flakey werden und mit 15 kein Schnee, sodass auf einem ansonsten funktionierenden System eine zu kurze Verzögerung die Dinge zerstört. Für 13.10 gibt es sicherlich einen Unterschied in der Art und Weise, wie die "Root" -Fenster gestapelt sind. Das 12.04 Unity System hat eine Wurzel, ein Kind, ein Enkelkind, einen Desktop, ein Ur-Ur-Enkelkind, das mit dem Schnee aktualisiert wird und funktioniert. (siehe Ausgabe von
Das 13.10 Unity-System aktualisiert das Root-Fenster tatsächlich und der Desktop hat nicht einmal ein untergeordnetes Vollbild. Bei einem Debugger führt das Ändern des Fensters, das auf dem Desktop aktualisiert wird, dazu, dass Bilder angezeigt werden, die das Hintergrundbild jedoch löschen. Dies ist keine gute Lösung. Da in keinem anderen Fenster, in dem die Updates abgerufen werden, etwas angezeigt wird, liegt vermutlich ein Konflikt mit dem Unity-Mechanismus vor, der anscheinend geändert werden muss, damit dies funktioniert (da im Idealfall nur das xsnow-Programm geändert werden muss).
Update für 14.04 mit Unity Um Santa zu sehen, geben Sie den Unity-Desktop auf und erstellen Sie einfach eine weitere X-Anzeige ohne diese. Wechseln Sie nach Bedarf hin und her oder führen Sie Programme mit der Option -display: 1 aus, um auf dem neuen Display angezeigt zu werden.
Erlauben Sie zunächst jedem, einen X-Server auszuführen
und stellen Sie den X-Zugang für alle ein. Ja, Sie können mit sudo arbeiten, aber dann haben Sie einige Dateien im Root-Besitz auf Ihrem Desktop und können sich nicht mehr mit der GUI anmelden (verwenden Sie ein virtuelles Terminal, um den Root zu löschen eigene Datei, wenn Sie das tun).
Haben Sie einen anderen Fenstermanager installiert, so dass Sie Fenster auf Ihrem neuen Bildschirm verschieben können (nur wenn Sie dort andere Programme ausführen möchten, kümmern Sie sich nicht darum, ob Sie nur den Weihnachtsmann sehen möchten. Selbst ein einfaches Programm wie twm reicht aus Wählen Sie Ihr Lieblingsfenster aus, bei dem das Stammfenster sichtbar bleibt.
Führen Sie die folgenden Schritte auf einem VT aus, um einen xsnow im Vollbildmodus zu erhalten.
Wechseln Sie mit Strg-Alt-F7 zurück zur ursprünglichen Anzeige auf vt7 und mit Strg-Alt-F8 zurück zu xsnow
Erstellen Sie xterms von vt7 (ursprünglicher X-Server auf: 0)
Starten Sie Ihren Fenstermanager auf dem neuen Display aus dem neuen xterm zB
16.04 Update: Viele Dinge sind seit 14.04 kaputt gegangen (siehe Fehler # 1562219), aber Sie können immer noch xsnow ausführen:
Fröhliche Weihnachten an alle
quelle
Es gibt eine neue Version von xsnow , die auf gnome, kde, fvwm, lcde und sogar raspbian läuft: https://www.ratrabbit.nl/ratrabbit/content/xsnow/introduction
Es ist die Absicht, diese Version in die Debian-Repos zu pushen.
Die neue Version ist auch bei SourceForge erhältlich .
Von der Website:
quelle
Wenn Sie sich die Kompilierungsanweisungen ansehen, erhalten Sie:
Sie scheinen vroot.h aus der Kompilierung herausgenommen zu haben, weil es für KDE enthalten war. Der Header wird jedoch weiterhin mit der neuesten Version geliefert:
und auspacken. Öffne
xsnow.c
und füge nach 250 eine neue Zeile hinzu (es gab Probleme, als ich sie dort kommentierte, wo sie war.)Dann bauen (erfordert
xutils-dev
,xorg-dev
undlibxpm-dev
) mit:dann (unter der Annahme, keine Fehler)
Funktioniert es? Die kompilierte Version funktioniert hier, aber ich bin in Gnome am 12.04 und nicht auf einer virtuellen Maschine.
quelle