Xsnow não funciona


23

Eu instalei o programa antigo xsnowcom o Apt. Este programa deve fazer com que a neve ( o tipo de precipitação ) apareça na área de trabalho. No entanto, a execução do programa não faz nada, exceto retornar o seguinte código:

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

Isso ocorre porque o programa foi projetado para desenhar a neve na janela raiz X , conforme indicado no site:

Perguntas freqüentes: inicio o Xsnow, mas não vejo neve? Resposta: O Xsnow faz nevar na janela "raiz" da janela X. Essa janela raiz geralmente é obscurecida pelos gerenciadores de desktop, para exibir ícones e ferramentas. Então, o Xsnow funciona bem, você simplesmente não pode ver a neve! Consulte o README para obter detalhes e possíveis soluções.

Eu tentei em uma VM Ubuntu 13.10, Kubuntu 13.10 e 14.04 e um Lubuntu Trusty Live USB. Está funcionando no Xubuntu, porque no Xfce vemos a janela raiz do X por padrão. No chat, alguém relatou que estava trabalhando no Ubuntu 12.04, mas na minha VM do Ubuntu 13.10 não vejo neve.

O problema é que, como mencionei, xsnowdesenha apenas na raiz do X Window. A janela raiz X é o "pai" de todas as outras janelas X e, portanto, também é invisível, porque os ambientes modernos da área de trabalho, como o KDE e o Unity, geralmente ocultam a janela raiz X com um compositor de efeitos da área de trabalho. Portanto, xsnowainda atrai neve (você pode obter trechos dela ao fazer login e logout devido à fragmentação de gráficos) simplesmente não é visível. Em áreas de trabalho mais simples, como o Openbox e o XFCE, a janela X (e, portanto, a neve) é completamente visível.

Existe alguma maneira de visualizar a atividade raiz da janela X e, assim, ver a neve?


Funciona no XFCE, que é o que eu uso. Apenas deixando você saber. Estou em 13.10+.
amigos estão dizendo sobre robótica

onde há algum erro no terminal?
Mateo

@hbdgaf É bom saber que eu estava prestes a enviar um relatório de bug ao Launchpad para informar às pessoas que ele precisaria ser removido por falta de funcionalidade. Irá testar com o Lubuntu.
Richard

3
Havia / existe um plugin compiz para fazer a mesma coisa. Esse também é meio velho e talvez nem esteja funcionando agora, mas aqui está a fonte, se alguém quiser experimentá-lo. (Eu não vou.)
Falconer

Só tentei em uma sessão Openbox ... Octal flocos de neve ...
Richard

Respostas:


8

Usando o KDE, você pode usar o pacote kwin-snow-effect .

Como instalar:

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

Depois, no KDE, você pode configurar o efeito em System Settings-> Desktop Effects-> All Effectse ativar a neve.

Você também pode usar o plug-in Compiz Snow , veja como funciona neste vídeo do Youtube

Encontrei o xwinwrap, que permite colar qualquer aplicativo como plano de fundo da área de trabalho. Clique aqui para fazer o download , ou aqui para ler a nota de lançamento do codificador

Não fornece acesso à janela raiz (o que parece difícil na maioria dos ambientes de desktop). E este não funciona com o xsnow, mas funciona com muitos outros aplicativos ...


Oh não, caiu na minha área de trabalho! Vou tentar novamente.
Richard

Apenas tentei o efeito kwin a eu uso o KDE. Por favor, verifique esta resposta: askubuntu.com/a/65522/226084 é sobre como obter o plugin de compiz snow funcionando
yilmi

4

Acabei de fazer mais alguns testes na 12.04 (Provavelmente essa não é a resposta para a 13.10, mas para aqueles que querem isso na 12.04)

Se na ferramenta gnome-tweak-tool, em Área de trabalho, eu verifico Como o gerenciador de arquivos lida com a área de trabalho. Então, tanto no Unity quanto no Unity-2D xsnowfunciona. Embora em conjunto - a neve no ar seja invisível, apenas os caídos são visíveis, mas isso é por causa da minha placa de vídeo e de seu motorista. No Unity, ele funciona perfeitamente.

Se na ferramenta gnome-tweak desmarcar a opção Ter o gerenciador de arquivos para lidar com a área de trabalho , ele xsnownem será iniciado e lançará um erro no Unity e no Unity-2D


4

Eu sou um usuário do ambiente Precise with Unity e tive o mesmo problema até executar este comando:

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

xsnowSnap


Aqui está um extrato das notas da página de manual do xsnow :

SGI Irix 5.x

Os usuários do Silicon Graphics e Irix 5.x podem não ver neve ou Papai Noel, desde que os ícones da área de trabalho estejam visíveis. Para contornar esse problema, emita este comando:

/usr/lib/desktop/telldesktop quit

Os ícones desaparecerão e o Xsnow funcionará perfeitamente. Para reiniciar a área de trabalho, basta iniciar

/usr/lib/desktop/startdesktop

ou selecione Desk-top -> Home Directory no peito da ferramenta.

É até possível ter os dois - ícones da área de trabalho e xsnow (e até várias mesas). Você precisa modificar o arquivo de recursos do gerenciador de janelas 4DWm , o arquivo ~ / .desktop- hostname/ 4DWm . Exemplo:

  • 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 o gerenciador de janelas (4Dwm) no rack de ferramentas e o Xsnow deve aparecer. O que isso faz é parar o Xsnow atualmente em execução e iniciar um novo quando você alterna para outra área de trabalho.


Obrigado, mas infelizmente ainda não há neve no Ubuntu 13.10!
Richard

Não sou usuário da Silicon Graphics ou Irix, sou um cara da Radeon usando o KDE. Também o comando resultou bash: /usr/lib/desktop/telldesktop: No such file or directory. Obrigado por mencionar essa parte do README.
Richard

Agora, o primeiro comando é trabalhar, mas o segundo que você forneceu misteriosamente não é ...
Richard

1
Não tive muitos problemas para fazê-lo funcionar .. não sei por que, mas alternar a visibilidade do ícone da área de trabalho funcionava .. não é aconselhável, mas eu estava procurando editar rapidamente alguns arquivos, então iniciei o nautilus como root gksu nautilus(então Eu não sabia sobre o switch --no-desktop, que mais tarde também não ajudou) .. esse comando também raiz do desktop! Mas algo deu errado .. terrivelmente .. (Agora não é possível fazer o compiz funcionar .. Tentei redefinir, reinstalar e tudo .. Portanto, não posso aconselhá-lo a tentar isso ..)
preciso

2

Para o gnome, você pode simplesmente dizer para não lidar com a área de trabalho

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

Eu também me deparei com algumas menções ao uso de shantz-xwinwrap para o For Unity Compiz, no entanto, não parece possível usar a versão 13.10 da unidade, sem um controle mais refinado do xsnow.

Dito isto, se você quiser experimentá-lo em um terminal execute:

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

Uma vez instalado, a possível execução do xwinwrap sem o anibg pode parecer com:

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

Estou tendo problemas com a exibição remota do meu computador em casa, caso contrário, eu estaria testando isso totalmente. Eu pensei que encontrei um comando aqui, mas realmente não faz sentido, como chamado xscrensaver / plasma: fsckin.com/2008/04/14/fun-with-xwinwrap-in-compiz-fusion seria bom se o Vdesk funcionasse, mas quando o instalei no kubuntu e tentei executá-lo, nada aconteceu.
virtualxtc

Eu estou recebendo #/usr/lib/xscreensaver/plasma: No such file or directory /usr/lib/xscreensaver/plasma died, exit status 2
Richard Richard

tão perto que eu posso provar; tendo problemas com o xsnow lendo os argumentos destinados ao xscreenwrap - mas o xscreenwrap está definitivamente trabalhando com o xscreensaver na 13.10.
Virtualdc # 20/12/13

Sim, eu suspeito que é apenas uma coisa sintaxe ...
Richard

Os argumentos --roote --windows-idnão são suportados pelo xsnow. Esses argumentos são de um exemplo de uso do xwinwrap com glmatrix que aceita --roote --window-idcomo argumentos: xwinwrap -ov -fs -- /usr/lib/xscreensaver/glmatrix -root -window-id WIDpor exemplo, funcionará bem
yilmi

1

Em uma instalação padrão de 12.04.3 de 64 bits, faça o login, tenha apenas uma janela de terminal próxima à parte inferior da tela e inicie o xsnow, que funciona. Parece haver um conhecimento restante de onde as janelas estavam quando o xsnow foi iniciado, e o corte de neve ainda ocorre depois que a janela é movida ou iconizada. Problemas ocorrem quando uma janela está perto da parte superior da tela. Logout / in limpa as posições antigas do Windows, então experimente um novo login (ou talvez o X reinicie). O atraso padrão de 20 é bem próximo do mínimo para mim, aumentando o que pode fazer a neve aparecer também.


As opções do xsnow são descritas nas páginas de manual ou com a opção -h. -day 30 fará um atraso de 30 milissegundos entre as atualizações, em vez do padrão que é 20. Acho que as coisas ficam lascadas aos 18 e não há neve aos 15, portanto, em um sistema que funcionava, um atraso muito curto quebra as coisas. Para a 13.10, certamente há uma diferença na maneira como as janelas "raiz" são empilhadas. O sistema de unidade 12.04 tem uma raiz, filho, neto, área de trabalho, bisneto que é atualizado com a neve e funciona. (veja a saída de

 `xwininfo -root -tree`

O sistema de unidade 13.10 atualiza a janela raiz e a área de trabalho nem sequer tem um filho em tela cheia. Com um depurador, alterar a janela que está sendo atualizada para a área de trabalho resulta na exibição de imagens, mas elas apagam o fundo, portanto, não é uma boa solução. Nenhuma outra janela para obter as atualizações mostra nada, então eu acho que é um conflito com o mecanismo de unidade, que parece precisar de alguma alteração para que isso funcione (já que o ideal é não precisar alterar nada além do programa xsnow).


Atualização para a versão 14.04 executando o Unity Para ver o Papai Noel, desista na área de trabalho do Unity e crie outra tela X sem ela. Alterne para frente e para trás, conforme necessário, ou mesmo execute programas com o -display: 1 para aparecer na nova tela.

Primeiro, permita que alguém execute um servidor X

dpkg-reconfigure x11-common

e defina o acesso X a todos Sim, você pode executar com o sudo, mas você terá deixado alguns arquivos pertencentes à raiz na área de trabalho e não poderá mais fazer login com a GUI (use um terminal virtual para excluir a raiz arquivo de propriedade, se você fizer isso).

Você tem outro gerenciador de janelas instalado para poder mover as janelas em seu novo monitor (somente se você quiser executar outros programas por lá, não se preocupe se tudo o que você quer fazer é ver o Papai Noel. Mesmo um simples como o twm fará , escolha o seu favorito que deixa a janela raiz exposta.

Execute o abaixo em um vt para obter um xsnow em tela cheia.

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

Volte à exibição original na vt7 com Crtl-Alt-F7 e volte ao xsnow com Ctrl-Alt-F8

Crie xterms a partir da vt7 (servidor X original em: 0)

xterm -display :1 &

inicie o gerenciador de janelas na nova tela do novo xterm, por exemplo

twm&

Atualização 16.04: Muitas coisas foram quebradas desde 14.04 (consulte o bug # 1562219), mas você ainda pode executar o xsnow:

  1. Se estiver executando com um driver de vídeo Nvidia, use o driver nouveau. Atualizador de software / botão Configurações / guia Drivers adicionais, selecione novo. reinicie apenas para ter certeza.
  2. Faça login em um terminal virtual (Ctrl-Alt-F2), por exemplo
  3. xinit / usr / games / xsnow -: 1 vt2 Ou inicie um xterm e, a partir dele, inicie outras coisas como um gerenciador de janelas, xsnow, etc. Apenas não inicie a unidade, ela assume o fundo.

Feliz Natal a todos


Obrigado, mas mover a janela do terminal para a parte inferior da tela não funcionou para mim.
Richard

É a ausência de janelas perto do topo que é a chave, nem mesmo as iconizadas. Tente um atraso de 30 para ver se isso ajuda. Esses dois itens foram os únicos problemas que encontrei.
usar o seguinte comando

Como eu faria um "atraso de 30"? Não tenho certeza o que isso significa.
Richard

1

Existe uma nova versão do xsnow , executando no gnome, kde, fvwm, lcde e até mesmo no raspbian: https://www.ratrabbit.nl/ratrabbit/content/xsnow/introduction

É a intenção de empurrar esta versão para os repositórios Debian.

A nova versão também está disponível no sourceforge .

A partir do site:

Finalmente, um xsnow funcional para o Gnome, KDE etc. Com base no xsnow-1.42 original criado por Rick Jansen, após a conferência do xsnow-2019 em Antas (Espanha), agora temos um xsnow que funciona em muitos ambientes de desktop, mesmo Raspian . A pedido de muitos testadores beta, também foi criado um front-end gráfico.


0

Se você observar as instruções de compilação, receberá:

Para compatibilidade com gerenciadores de janelas virtuais, o Xsnow usa 'vroot.h', um arquivo de inclusão que torna os programas X compatíveis com os gerenciadores de janelas como swm e tvtwm. A distribuição completa do vroot está disponível em 'ftp.x.org' no diretório contrib como 'vroot.shar.Z'. Vroot foi escrito por Andreas Stolcke, 7/9/90 e é copyright 1991 por Andreas Stolcke, copyright 1990 por Solbourne Computer Inc.

Eles parecem ter retirado o vroot.h da compilação porque foi incluído no KDE. No entanto, o cabeçalho ainda vem com a versão mais recente:

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

e descompacte-o. Abra xsnow.ce adicione a uma nova linha depois das 250 (houve problemas quando eu a comentei de volta onde estava.)

#include "vroot.h"

Construção, em seguida, (requer xutils-dev, xorg-deve libxpm-dev) com:

xmkmf
make depend
make

então (assumindo que não há erros)

./xsnow

Isso funciona? A versão compilada funciona aqui, mas eu estou no Gnome, na versão 12.04, e não em uma máquina virtual.


Parece que ele foi compilado, ok ... mas ainda não há neve: \ i.imgur.com/Pmd9vOx.jpg
Richard

Eu dei uma olhada no código xsnow e o problema é a maneira como ele lida com as janelas em que é processado.
yilmi
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.