Xsnow non funziona


23

Ho installato il vecchio programma xsnowcon Apt. Questo programma dovrebbe far apparire la neve ( il tipo di precipitazione ) sul desktop. Tuttavia, l'esecuzione del programma non fa altro che restituire il seguente codice:

Xsnow-1.42resizeable, December 14th 2001 by Rick Jansen (rja@euronet.nl)
WWW: http://www.euronet.nl/~rja/Xsnow/

Questo perché il programma è progettato per disegnare la neve sulla finestra della radice X , come indicato sul sito Web:

Domanda frequente: avvio Xsnow ma non vedo neve? Risposta: Xsnow fa nevicare sulla finestra "radice" della finestra X. Quella finestra di root è spesso oscurata dai desktop manager, per visualizzare icone e strumenti. Quindi, Xsnow funziona bene, non puoi vedere la neve! Consulta il README per dettagli e possibili soluzioni.

L'ho provato su una Ubuntu 13.10 VM, Kubuntu 13.10 e 14.04 e una Lubuntu Trusty Live USB. Funziona in Xubuntu, perché in Xfce vediamo la finestra X di default. Nella chat, qualcuno l'ha segnalato che funziona in Ubuntu 12.04, ma nella mia VM Ubuntu 13.10 non vedo neve.

Il problema è che, come ho già detto, si xsnowbasa esclusivamente sulla X Window principale. La finestra di root X è il "genitore" di tutte le altre finestre di X ed è quindi anche invisibile, perché i moderni ambienti desktop come KDE e Unity di solito nascondono la finestra di radice X con un compositore di effetti desktop. Quindi xsnowdisegna ancora la neve, (puoi ottenerne dei frammenti quando esegui l'accesso e la disconnessione a causa della frammentazione grafica) non è appena visibile. Su desktop più semplici come Openbox e XFCE, la finestra X (e quindi la neve) sono completamente visibili.

Esiste un modo per visualizzare l'attività della finestra X radice e quindi vedere la neve?


Funziona su XFCE, che è quello che uso. Solo per farti sapere. Sono il 13.10+.
RobotHumans,

dove ci sono errori nel terminale?
Mateo,

@hbdgaf Buono a sapersi, stavo per inviare una segnalazione di bug a Launchpad per far sapere alla gente che avrebbe dovuto essere rimosso per non funzionalità. Testerà con Lubuntu.
Richard,

3
C'era / è un plugin Compiz per fare la stessa cosa. Anche quello è un po 'vecchio e forse non funziona nemmeno ora, ma qui è la fonte se qualcuno vuole provarlo. (Non lo farò.)
Falconiere,

L'ho appena provato in una sessione di Openbox ... Fiocchi di neve ottali ...
Richard

Risposte:


8

Usando KDE puoi usare il pacchetto kwin-snow-effect .

Come installare:

sudo apt-add-repository ppa:ivan-safonov/ppa
sudo apt-get update
sudo apt-get install kwin-effect-snow

Quindi in KDE puoi impostare l'effetto da System Settings-> Desktop Effects-> All Effectse attivare la neve.

Puoi anche utilizzare il plug-in Compiz Snow , controlla come funziona su questo video di Youtube

Ho trovato xwinwrap, che ti consente di attaccare qualsiasi app come sfondo del desktop. Fai clic qui per scaricarlo , oppure qui per leggere la nota di rilascio del programmatore

Non ti dà accesso alla finestra principale (che sembra difficile sulla maggior parte degli ambienti desktop). E questo non funziona con xsnow ma funzionerà con molte altre app ...


Oh no si è schiantato sul mio desktop! Ci proverò di nuovo.
Richard,

Ho appena provato l'effetto kwin a Uso KDE. Si prega di controllare questa risposta: askubuntu.com/a/65522/226084 è su come far funzionare il plugin neve compiz
yilmi

4

Ho appena fatto qualche altro test su 12.04 (Probabilmente questa non è la risposta per 13.10, ma per coloro che vogliono questo su 12.04)

Se in gnome-tweak-tool, sotto Desktop, controllo Gestione file per gestire il desktop. Quindi sia in Unity che in Unity-2D xsnowfunziona. Anche se in unità-2d la neve nell'aria è invisibile, solo i caduti sono visibili, ma questo è dovuto alla mia scheda grafica e al suo driver. In Unity funziona perfettamente.

Se in gnome-tweak-tool deseleziono Gestisci file manager sul desktop , xsnownon si avvia nemmeno e genera un errore sia in Unity che in Unity-2D


4

Sono un utente dell'ambiente Precise with Unity e ho avuto lo stesso problema fino all'esecuzione di questo comando:

gsettings set org.gnome.desktop.background show-desktop-icons true

xsnowSnap


Ecco un estratto delle note della pagina man di xsnow :

SGI Irix 5.x

Gli utenti di Silicon Graphics e Irix 5.x potrebbero non vedere affatto neve o Babbo Natale, a condizione che le icone del desktop siano visibili. Per aggirare questo problema, emettere questo comando:

/usr/lib/desktop/telldesktop quit

Le icone scompaiono e Xsnow funzionerà perfettamente. Per riavviare il desktop basta avviare

/usr/lib/desktop/startdesktop

oppure selezionare Desk ‐ top -> Home Directory dal toolchest.

È anche possibile avere entrambi - icone desktop e xsnow (e persino più scrivanie). È necessario modificare il file di risorse del gestore finestre 4DWm , il file ~ / .desktop- hostname/ 4DWm . Esempio:

  • 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

Riavvia il gestore delle finestre (4Dwm) dal toolchest e dovrebbe apparire Xsnow. Ciò che fa è fermare Xsnow attualmente in esecuzione e avviarne uno nuovo quando si passa a un altro desktop.


Grazie ma purtroppo ancora neve in Ubuntu 13.10!
Richard,

Non sono un utente Silicon Graphics o Irix, sono un tipo Radeon che usa KDE. Anche il comando è risultato bash: /usr/lib/desktop/telldesktop: No such file or directory. Grazie per aver menzionato quella parte del README.
Richard,

Ora il primo comando funziona, ma il secondo che hai fornito misteriosamente non è ...
Richard,

1
Non ho avuto molti problemi a farlo funzionare .. non so perché, ma attivare la visibilità dell'icona del desktop ha funzionato .. non è consigliato, ma stavo cercando di modificare rapidamente alcuni file quindi ho iniziato nautilus come root con gksu nautilus(quindi Non sapevo dello switch --no-desktop, che anche in seguito non ha aiutato) .. quel comando era anche root desktop! Ma qualcosa è andato storto .. terribilmente .. (Ora non riesco a far funzionare il compiz .. Ho provato a ripristinare, reinstallare e tutto il resto. Quindi non posso consigliare di provarlo ..)
preciso il

2

Per gnome puoi semplicemente dirgli di non gestire il desktop

gconftool-2 --set "/apps/nautilus/preferences/show_desktop" --type bool false

Avevo anche trovato qualche accenno all'utilizzo di shantz-xwinwrap per For Unity Compiz, tuttavia, non sembra possibile utilizzarlo con la versione di 13.10 dell'unità senza un controllo più accurato di xsnow.

Detto questo, se vuoi provarlo in un terminale esegui:

wget http://anibg.googlecode.com/files/shantz-xwinwrap_v0.3.deb && sudo dpkg -i shantz-xwinwrap_v0.3.deb

Una volta installato, la possibile esecuzione di xwinwrap senza anibg potrebbe apparire come:

nice -n 15 xwinwrap -ni -o 0.90 -fs -s -sp -st -b -nf -- '/usr/games/xsnow'

Sto riscontrando problemi con il display remoto del mio computer di casa, altrimenti lo testerei totalmente. Pensavo di aver trovato un comando qui, ma non ha davvero senso perché si chiama xscrensaver / plasma: fsckin.com/2008/04/14/fun-with-xwinwrap-in-compiz-fusion sarebbe dolce se Vdesk funzionasse, ma quando l'ho installato in Kubuntu e ho provato a eseguirlo non è successo nulla.
virtualxtc

Ricevo/usr/lib/xscreensaver/plasma: No such file or directory /usr/lib/xscreensaver/plasma died, exit status 2
Richard,

così vicino che posso assaggiarlo; avendo problemi con xsnow a leggere gli argomenti destinati a xscreenwrap - ma xscreenwrap sta sicuramente funzionando con xscreensaver il 13.10.
virtualxtc

Sì, sospetto che sia solo una cosa di sintassi ...
Richard,

Gli argomenti --roote --windows-idnon sono supportati da xsnow. Tali argomenti provengono da un esempio di utilizzo di xwinwrap con glmatrix che accetta --roote --window-idcome argomenti: xwinwrap -ov -fs -- /usr/lib/xscreensaver/glmatrix -root -window-id WIDad esempio funzionerà bene
yilmi

1

Su un'installazione standard a 12.04.3 a 64 bit, accedi, hai solo una finestra terminale nella parte inferiore dello schermo e avvia xsnow, che funziona. Sembra essere una conoscenza rimanente di dove fossero le finestre quando è stato avviato xsnow e il taglio della neve si verifica ancora dopo che la finestra è stata spostata o iconizzata. I problemi si verificano quando una finestra si trova nella parte superiore dello schermo. Logout / in cancella le vecchie posizioni di Windows, quindi sperimenta un nuovo login (o forse X riavvia). Il ritardo predefinito di 20 è abbastanza vicino al minimo per me, aumentando ciò può far apparire anche la neve.


Le opzioni di xsnow sono descritte nelle pagine man o con l'opzione -h. -delay 30 comporterà un ritardo di 30 millisecondi tra gli aggiornamenti, anziché il valore predefinito che è 20. Trovo che le cose si sfaldino a 18 e nessuna neve a 15, quindi su un sistema altrimenti funzionante, un ritardo troppo breve interrompe le cose. Per 13.10, c'è sicuramente una differenza nel modo in cui le finestre "root" sono impilate. Il sistema di unità 12.04 ha radice, figlio, nipote, desktop, pronipote che si aggiorna con la neve e funziona. (vedi l'output di

 `xwininfo -root -tree`

Il sistema di unità 13.10 aggiorna effettivamente la finestra principale e il desktop non ha nemmeno un figlio a schermo intero. Con un debugger, la modifica della finestra in fase di aggiornamento sul desktop provoca la visualizzazione di immagini, ma cancella il backgound, quindi non è una buona soluzione. Nessun'altra finestra che ottiene gli aggiornamenti mostra nulla, quindi immagino che sia un conflitto con il meccanismo di unità, che sembra aver bisogno di qualche cambiamento perché questo funzioni (dato che l'ideale non è quello di cambiare altro che il programma xsnow).


Aggiornamento per 14.04 con Unity Per vedere Babbo Natale, arrenditi sul desktop Unity e crea un altro display X senza di esso. Passa avanti e indietro se necessario, o esegui anche programmi con il -display: 1 per mostrarti sul nuovo display.

Innanzitutto, consente a chiunque di eseguire un server X.

dpkg-reconfigure x11-common

e imposta l'accesso X a tutti Sì, puoi eseguire con sudo, ma poi avrai lasciato alcuni file di proprietà di root sul desktop e non potrai più accedere con la GUI (usa un terminale virtuale per eliminare il root file di proprietà se lo fai).

Hai un altro gestore di finestre installato in modo da poter spostare le finestre sul tuo nuovo display (solo se vuoi eseguire altri programmi lì, non preoccuparti se tutto ciò che vuoi fare è vedere Babbo Natale. Anche uno semplice come twm lo farà , scegli il tuo preferito che lascia aperta la finestra principale.

Esegui il seguito su un vt per ottenere un xsnow a schermo intero.

xinit /usr/games/xsnow -- :1 vt8

Torna alla visualizzazione originale su vt7 con Crtl-Alt-F7 e torna a xsnow con Ctrl-Alt-F8

Crea xterms da vt7 (server X originale su: 0)

xterm -display :1 &

avvia il tuo window manager sul nuovo display dal nuovo xterm ad es

twm&

Aggiornamento 16.04: molte cose si sono rotte dal 14.04 (vedi bug # 1562219), ma puoi ancora eseguire xsnow:

  1. Se in esecuzione con un driver video Nvidia, utilizzare il driver nouveau. Software Updater / pulsante Impostazioni / scheda Driver aggiuntivi, selezionare nouveau. riavviare solo per essere sicuri.
  2. Accedi ad un terminale virtuale (Ctrl-Alt-F2) per esempio
  3. xinit / usr / games / xsnow -: 1 vt2 Oppure avvia un xterm, e da esso inizia altre cose come un gestore di finestre, xsnow, ecc. Basta non avviare l'unità, prende il controllo dello sfondo.

Buon Natale a tutti


Grazie, ma spostare la finestra del terminale nella parte inferiore dello schermo non ha funzionato per me.
Richard,

È la chiave senza finestre vicino alla cima, nemmeno quelle iconizzate. Prova un ritardo di 30 per vedere se aiuta. Quei due articoli erano gli unici problemi che ho riscontrato.
ubfan1,

Come farei un "ritardo di 30"? Non sono sicuro di cosa significhi.
Richard,

1

Esiste una nuova versione di xsnow , in esecuzione su gnome, kde, fvwm, lcde e persino raspbian: https://www.ratrabbit.nl/ratrabbit/content/xsnow/introduction

È intenzione di inserire questa versione nei repository di Debian.

La nuova versione è disponibile anche su sourceforge .

Dal sito Web:

Infine, un xsnow funzionante per Gnome, KDE, ecc. Basato sull'originale xsnow-1.42 creato da Rick Jansen, dopo la conferenza xsnow-2019 ad Antas (Spagna) ora abbiamo a disposizione un xsnow che funziona su molti ambienti desktop, anche Raspian . Su richiesta di molti beta-tester, è stato creato anche un front-end grafico.


0

Se guardi le istruzioni per la compilazione ottieni:

Per la compatibilità con i gestori di finestre virtuali Xsnow utilizza 'vroot.h', un file include che rende i programmi X compatibili con i gestori di finestre come swm e tvtwm. La distribuzione completa di vroot è disponibile da 'ftp.x.org' nella directory contrib come 'vroot.shar.Z'. Vroot è stato scritto da Andreas Stolcke, 9/7/90 ed è protetto da copyright 1991 da Andreas Stolcke, copyright 1990 da Solbourne Computer Inc.

Sembrano aver eliminato vroot.h dalla compilazione perché è stato incluso per KDE. Tuttavia, l'intestazione viene ancora con l'ultima versione:

wget http://dropmix.xs4all.nl/rick/Xsnow/xsnow-1.42.tar.gz

e scompattalo. Apri xsnow.ce aggiungi a una nuova riga dopo 250 (ci sono stati problemi quando l'ho commentato dove era.)

#include "vroot.h"

Poi accumulo (richiede xutils-dev, xorg-deve libxpm-dev) con:

xmkmf
make depend
make

quindi (presupponendo che non vi siano errori)

./xsnow

Funziona? La versione compilata funziona qui ma sono su Gnome, il 12.04, e non su una macchina virtuale.


Sembra compilato ok ... ma ancora niente neve: \ i.imgur.com/Pmd9vOx.jpg
Richard

Ho dato un'occhiata al codice xsnow e il problema è il modo in cui gestisce le finestre su cui viene eseguito il rendering.
yilmi,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.