Xsnow no funciona


23

He instalado el viejo programa xsnowcon Apt. Se supone que este programa hace que la nieve ( el tipo de precipitación ) aparezca en el escritorio. Sin embargo, ejecutar el programa no hace nada excepto devolver el siguiente código:

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

Esto se debe a que el programa está diseñado para dibujar la nieve en la ventana raíz X , como se indica en el sitio web:

Pregunta frecuente: ¿Comienzo Xsnow pero no veo nieve? Respuesta: Xsnow hace que nieve en la ventana "raíz" de la ventana X. Los administradores de escritorio a menudo ocultan esa ventana raíz para mostrar iconos y herramientas. Entonces, Xsnow funciona bien, ¡simplemente no puedes ver la nieve! Consulte el archivo README para obtener detalles y posibles soluciones.

Lo probé en un Ubuntu 13.10 VM, Kubuntu 13.10 y 14.04, y un Lubuntu Trusty Live USB. Está funcionando en Xubuntu, porque en Xfce vemos la ventana raíz X por defecto. En el chat, alguien informó que funcionaba en Ubuntu 12.04, pero en mi Ubuntu 13.10 VM no veo nieve.

El problema es que, como mencioné, se xsnowbasa únicamente en la ventana X raíz. La ventana raíz X es el "padre" de todas las otras ventanas X y, por lo tanto, también es invisible, porque los entornos de escritorio modernos como KDE y Unity generalmente ocultan la ventana X raíz con un compositor de efectos de escritorio. Por lo tanto, xsnowtodavía dibuja nieve (puede obtener fragmentos al iniciar y cerrar sesión debido a la fragmentación de los gráficos) simplemente no es visible. En escritorios más simples como Openbox y XFCE, la ventana X (y, por lo tanto, la nieve) son completamente visibles.

¿Hay alguna manera de ver la actividad de la ventana X raíz y así ver la nieve?


Funciona en XFCE, que es lo que yo uso. Sólo para que lo sepas. Estoy en 13.10+.
RobotHumans

donde hay errores en la terminal?
Mateo

@hbdgaf Es bueno saber que estaba a punto de enviar un informe de error a Launchpad para que la gente supiera que sería necesario eliminarlo por falta de funcionalidad. Se probará con Lubuntu.
Richard

3
Había / hay un complemento de compiz para hacer lo mismo. Ese también es un poco viejo y tal vez ni siquiera está funcionando ahora, pero aquí está la fuente si alguien quiere probarlo. (No lo haré)
cetrero

Lo probé en una sesión de Openbox ... Copos de nieve ocasionales ...
Richard

Respuestas:


8

Usando KDE puedes usar el paquete kwin-snow-effect .

Cómo instalar:

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

Luego, en KDE, puede configurar el efecto desde System Settings-> Desktop Effects-> All Effectsy activar la nieve.

También puedes usar el plugin Compiz Snow , verifica cómo funciona en este video de Youtube

Encontré xwinwrap, que te permite pegar cualquier aplicación como fondo de escritorio. Haga clic aquí para descargarlo , o aquí para leer la nota de lanzamiento del codificador

No le da acceso a la ventana raíz (lo que parece difícil en la mayoría de los entornos de escritorio). Y este no funciona con xsnow pero funcionará con muchas otras aplicaciones ...


¡Oh no, se estrelló mi escritorio! Lo intentaré de nuevo.
Richard

Acabo de probar el efecto kwin y uso KDE. Verifique esta respuesta: askubuntu.com/a/65522/226084 se trata de hacer funcionar el plugin de nieve
compiz

4

Acabo de hacer algunas pruebas más en 12.04 (Probablemente esta no sea la respuesta para 13.10, pero para aquellos que quieren esto en 12.04)

Si está en gnome-tweak-tool, en Escritorio , verifico que el administrador de archivos maneje el escritorio. Luego, tanto en Unity como en Unity-2D xsnowfunciona. Aunque en la unidad 2d la nieve en el aire es invisible, solo los caídos son visibles, pero eso se debe a mi tarjeta gráfica y su controlador. En Unity funciona perfectamente.

Si en gnome-tweak-tool desactivo la opción Hacer que el administrador de archivos maneje el escritorio , xsnowni siquiera se iniciará y arrojará un error tanto en Unity como en Unity-2D


4

Soy un usuario del entorno Precise with Unity y tuve el mismo problema hasta que ejecuté este comando:

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

xsnowSnap


Aquí hay un extracto de las notas de la página del manual de xsnow :

SGI Irix 5.x

Los usuarios de Silicon Graphics e Irix 5.x pueden no ver nieve o Santa en absoluto, siempre que los iconos del escritorio estén visibles. Para evitar este problema, emita este comando:

/usr/lib/desktop/telldesktop quit

Los iconos desaparecerán y Xsnow funcionará perfectamente. Para reiniciar el escritorio simplemente comienza

/usr/lib/desktop/startdesktop

o seleccione Desk-top -> Home Directory desde el toolchest.

Incluso es posible tener ambos: iconos de escritorio y xsnow (e incluso múltiples escritorios). Debe modificar el archivo de recursos del administrador de ventanas 4DWm , el archivo ~ / .desktop- hostname/ 4DWm . Ejemplo:

  • 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

Reinicie el administrador de ventanas (4Dwm) desde el cofre de herramientas y Xsnow debería aparecer. Lo que esto hace es detener el Xsnow actualmente en ejecución y comenzar uno nuevo cuando cambie a otro escritorio.


Gracias pero desafortunadamente todavía no nieva en Ubuntu 13.10!
Richard

No soy un usuario de Silicon Graphics o Irix, soy un tipo de Radeon que usa KDE. También el comando resultó en bash: /usr/lib/desktop/telldesktop: No such file or directory. Gracias por mencionar esa parte de README.
Richard

Ahora el primer comando está funcionando, pero el segundo que proporcionó misteriosamente no es ...
Richard

1
No tuve muchos problemas para hacerlo funcionar ... no estoy seguro de por qué, pero alternar la visibilidad del icono del escritorio simplemente funcionó ... no se recomienda, pero estaba buscando editar rápidamente algunos archivos, así que comencé nautilus como root con gksu nautilus(luego No sabía sobre el interruptor --no-desktop, que más tarde tampoco ayudó) ... ¡ese comando también rooteó el escritorio! Pero algo salió mal ... terriblemente ... (Ahora no puedo hacer que compiz funcione ... He intentado restablecer, reinstalar y todo ... Así que no puedo aconsejar que intentes eso ...)
precisa

2

Para gnome puedes decirle que no maneje el escritorio

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

También me encontré con alguna mención del uso de shantz-xwinwrap para For Unity Compiz, sin embargo, no parece posible usarlo con la versión de la unidad 13.10 sin un control más preciso de xsnow.

Dicho esto, si quieres probarlo en un terminal, ejecuta:

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

Una vez instalado, la posible ejecución de xwinwrap sin anibg podría verse así:

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

Tengo problemas con la visualización remota de la computadora de mi casa, de lo contrario estaría probando esto por completo. Pensé que encontré un comando aquí, pero realmente no tiene sentido, ya que se llama xscrensaver / plasma: fsckin.com/2008/04/14/fun-with-xwinwrap-in-compiz-fusion sería genial si Vdesk funcionara, pero cuando lo instalé en kubuntu e intenté ejecutarlo, no pasó nada.
virtualxtc

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

tan cerca que puedo saborearlo; tiene problemas con xsnow para leer los argumentos destinados a xscreenwrap, pero xscreenwrap definitivamente funciona con xscreensaver en 13.10.
virtualxtc

Sí, sospecho que es solo una cuestión de sintaxis ...
Richard

Los argumentos --rooty --windows-idno son compatibles con xsnow. Esos argumentos provienen de un ejemplo de uso de xwinwrap con glmatrix que acepta --rooty --window-idcomo argumentos: xwinwrap -ov -fs -- /usr/lib/xscreensaver/glmatrix -root -window-id WIDpor ejemplo funcionará bien
yilmi

1

En una instalación estándar de 12.04.3 de 64 bits, inicie sesión, tenga solo una ventana de terminal cerca de la parte inferior de la pantalla e inicie xsnow, que funciona. Parece ser un conocimiento sobrante de dónde estaban las ventanas cuando se inició xsnow, y el corte de nieve aún ocurre después de que la ventana se mueve o se iconiza. Los problemas ocurren cuando una ventana está cerca de la parte superior de la pantalla. Cerrar sesión / borra las viejas posiciones de Windows, así que experimente con un nuevo inicio de sesión (o tal vez X reiniciar). El retraso predeterminado de 20 es bastante cercano al mínimo para mí, un aumento que puede hacer que también aparezca la nieve.


Las opciones de xsnow se describen en las páginas del manual o con el modificador -h. -delay 30 hará un retraso de 30 milisegundos entre las actualizaciones, en lugar del valor predeterminado que es 20. Encuentro que las cosas se debilitan a los 18 y que no nieva a los 15, por lo que en un sistema que funciona de otra manera, un retraso demasiado corto rompe las cosas. Para 13.10, ciertamente hay una diferencia en la forma en que se apilan las ventanas "raíz". El sistema de la unidad 12.04 tiene una raíz, hijo, nieto, escritorio, bisnieto que se actualiza con la nieve y funciona. (ver salida de

 `xwininfo -root -tree`

El sistema de la unidad 13.10 realmente actualiza la ventana raíz, y el escritorio ni siquiera tiene un hijo de pantalla completa. Con un depurador, al cambiar la ventana que se actualiza al escritorio, aparecen imágenes, pero borran el fondo, por lo que no es una buena solución. Ninguna otra ventana para obtener las actualizaciones muestra algo, así que supongo que es un conflicto con el mecanismo de la unidad, que parece que necesita algún cambio para que esto funcione (ya que lo ideal es no tener que cambiar nada más que el programa xsnow).


Actualización para 14.04 ejecutando Unity Para ver a Santa, desista en el escritorio de Unity y simplemente cree otra pantalla X sin ella. Cambie de un lado a otro según sea necesario, o incluso ejecute programas con -display: 1 para que aparezca en la nueva pantalla.

Primero permita que cualquiera ejecute un servidor X

dpkg-reconfigure x11-common

y configure el acceso X para todos Sí, puede ejecutar con sudo, pero luego habrá dejado algunos archivos propiedad de root en su escritorio y ya no podrá iniciar sesión con la GUI (use un terminal virtual para eliminar la raíz archivo propio si haces eso).

¿Tiene otro administrador de ventanas instalado para que pueda mover las ventanas en su nueva pantalla (solo si desea ejecutar otros programas allí, no se moleste si todo lo que quiere hacer es ver a Santa. Incluso uno simple como twm servirá , elija su favorito que deje la ventana raíz expuesta.

Ejecute el siguiente en un vt para obtener una pantalla completa xsnow.

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

Vuelva a la pantalla original en vt7 con Crtl-Alt-F7 y vuelva a xsnow con Ctrl-Alt-F8

Crear xterms desde vt7 (servidor X original en: 0)

xterm -display :1 &

inicie su administrador de ventanas en la nueva pantalla desde el nuevo xterm, por ejemplo

twm&

Actualización del 16.04: muchas cosas se rompieron desde el 14.04 (vea el error # 1562219), pero aún puede ejecutar xsnow:

  1. Si se ejecuta con un controlador de video Nvidia, use el controlador nouveau. Actualizador de software / botón Configuración / pestaña Controladores adicionales, seleccione nouveau. reiniciar solo para estar seguro.
  2. Inicie sesión en una terminal virtual (Ctrl-Alt-F2) por ejemplo
  3. xinit / usr / games / xsnow -: 1 vt2 O inicie un xterm, y desde allí inicie otras cosas como un administrador de ventanas, xsnow, etc. Simplemente no inicie la unidad, se hace cargo del fondo.

Feliz Navidad a todos


Gracias, pero mover la ventana del terminal a la parte inferior de la pantalla no funcionó para mí.
Richard

La clave es la ausencia de ventanas cerca de la parte superior, ni siquiera las icónicas. Pruebe con un retraso de 30 para ver si eso ayuda. Esos dos elementos fueron los únicos problemas que encontré.
ubfan1

¿Cómo haría un "retraso de 30"? No estoy seguro de lo que eso significa.
Richard

1

Hay una nueva versión de xsnow , que se ejecuta en gnome, kde, fvwm, lcde e incluso raspbian: https://www.ratrabbit.nl/ratrabbit/content/xsnow/introduction

Es la intención llevar esta versión a los repositorios de Debian.

La nueva versión también está disponible en sourceforge .

Desde el sitio web:

Finalmente, una xsnow de trabajo para Gnome, KDE, etc. Basado en la xsnow-1.42 original creada por Rick Jansen, después de la conferencia xsnow-2019 en Antas (España) ahora tenemos disponible una xsnow que funciona en muchos entornos de escritorio, incluso Raspian . A pedido de muchos beta-testers, también se creó una interfaz gráfica.


0

Si observa las instrucciones de compilación, obtiene:

Para compatibilidad con los administradores de ventanas virtuales, Xsnow usa 'vroot.h', un archivo de inclusión que hace que los programas X sean compatibles con los administradores de ventanas como swm y tvtwm. La distribución completa de vroot está disponible en 'ftp.x.org' en el directorio contrib como 'vroot.shar.Z'. Vroot fue escrito por Andreas Stolcke, 7/9/90 y tiene copyright 1991 de Andreas Stolcke, copyright 1990 de Solbourne Computer Inc.

Parecen haber eliminado vroot.h de la compilación porque se incluyó para KDE. Sin embargo, el encabezado todavía viene con la última versión:

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

y desempacarlo. Abra xsnow.cy agregue a una nueva línea después de 250 (hubo problemas cuando volví a comentar dónde estaba).

#include "vroot.h"

Luego compila (requiere xutils-dev, xorg-devy libxpm-dev) con:

xmkmf
make depend
make

entonces (suponiendo que no haya errores)

./xsnow

¿Eso funciona? La versión compilada funciona aquí, pero estoy en Gnome, el 12.04, y no en una máquina virtual.


Parece que se compiló bien ... pero todavía no nieva: \ i.imgur.com/Pmd9vOx.jpg
Richard

Eché un vistazo al código xsnow y el problema es la forma en que maneja las ventanas en las que se muestra.
yilmi
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.