Xsnow nie działa

23

Zainstalowałem stary program xsnowz Apt. Ten program ma powodować pojawienie się śniegu ( rodzaj opadów ) na pulpicie. Jednak uruchomienie programu nie robi nic oprócz zwrócenia następującego kodu:

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

Wynika to z faktu, że program został zaprojektowany do rysowania śniegu w głównym oknie X , jak podano na stronie internetowej:

Często zadawane pytanie: uruchamiam Xsnow, ale nie widzę śniegu? Odpowiedź: Xsnow sprawia, że ​​pada śnieg w oknie „root” okna X-Window. To okno główne jest często zasłaniane przez menedżerów pulpitu, aby wyświetlać ikony i narzędzia. Xsnow działa dobrze, po prostu nie widać śniegu! Zobacz README, aby uzyskać szczegółowe informacje i możliwe rozwiązania.

Wypróbowałem to na Ubuntu 13.10 VM, Kubuntu 13.10 i 14.04 oraz na Lubuntu Trusty Live USB. Działa w Xubuntu, ponieważ w Xfce domyślnie widzimy okno root X. Na czacie ktoś powiedział, że działa w Ubuntu 12.04, ale na mojej maszynie wirtualnej Ubuntu 13.10 nie widzę śniegu.

Problem polega na tym, że, jak wspomniałem, xsnowrysuje się wyłącznie w głównym oknie X Window. Główne okno X jest „rodzicem” wszystkich pozostałych okien X i dlatego jest również niewidoczne, ponieważ nowoczesne środowiska pulpitu, takie jak KDE i Unity, zwykle ukrywają główne okno X za pomocą kompozytuora efektów pulpitu. xsnowCiągle więc rysuje śnieg (możesz się z niego porwać podczas logowania i wylogowywania z powodu fragmentacji grafiki), po prostu nie jest widoczny. Na prostszych komputerach, takich jak Openbox i XFCE, okno X (a tym samym śnieg) są całkowicie widoczne.

Czy jest jakiś sposób, aby zobaczyć aktywność głównego okna X, a tym samym zobaczyć śnieg?

Richard
źródło
Działa na XFCE, którego używam. Tylko cię informuję. Mam 13.10+.
RobotHumans,
gdzie są jakieś błędy w terminalu?
Mateo,
@hbdgaf Dobrze wiedzieć, miałem właśnie wysłać raport o błędzie do Launchpada, aby poinformować ludzi, że będzie musiał zostać usunięty z powodu braku funkcjonalności. Testuje z Lubuntu.
Richard,
3
Była / jest wtyczka Compiz, aby zrobić to samo. Ten jest też trochę stary i może nawet teraz nie działa, ale oto źródło, jeśli ktoś chce go wypróbować. (Nie będę.)
sokolnik
Właśnie wypróbowałem to podczas sesji Openbox ... ósemkowe płatki śniegu ...
Richard

Odpowiedzi:

8

Korzystając z KDE, możesz użyć pakietu efektów śnieg-kwin .

Jak zainstalować:

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

Następnie w KDE możesz ustawić efekt z System Settings-> Desktop Effects-> All Effectsi aktywować śnieg.

Możesz także użyć wtyczki Compiz Snow , sprawdź, jak to działa na tym filmie na Youtube

Znalazłem xwinwrap, który pozwala ci przykleić dowolną aplikację jako tło pulpitu. Kliknij tutaj, aby go pobrać , lub tutaj, aby przeczytać notatkę o wersji kodera

Nie zapewnia dostępu do okna głównego (co wydaje się trudne w większości środowisk pulpitu). Ten nie działa z Xsnow, ale będzie działał z wieloma innymi aplikacjami ...

yilmi
źródło
O nie, to zawiesiło mój pulpit! Spróbuję jeszcze raz.
Richard,
Właśnie wypróbowałem efekt kwin a Używam KDE. Sprawdź tę odpowiedź: askubuntu.com/a/65522/226084 chodzi o uruchomienie wtyczki do śniegu
Compiz
4

Właśnie wykonałem kilka testów 12.04 (prawdopodobnie nie jest to odpowiedź na 13.10, ale dla tych, którzy chcą tego 12.04)

Jeśli w gnome-tweak-tool, w obszarze Pulpit sprawdzam, czy menedżer plików obsługuje pulpit. Następnie zarówno w Unity, jak i w Unity-2D xsnowdziała. Chociaż w jedności-2d śnieg w powietrzu jest niewidoczny, widoczne są tylko upadłe, ale to z powodu mojej karty graficznej i jej sterownika. W Unity działa idealnie.

Jeśli w gnome-tweak-tool odznaczę opcję Menedżer plików obsługuje pulpit , to xsnownawet się nie uruchomi i zgłasza błąd zarówno w Unity, jak i Unity-2D

sokolnik
źródło
4

Jestem użytkownikiem środowiska Precise with Unity i miałem ten sam problem do momentu wykonania tego polecenia:

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

xsnowSnap


Oto fragment notatek strony podręcznika użytkownika xsnow :

SGI Irix 5.x

Użytkownicy Silicon Graphics i Irix 5.x mogą w ogóle nie widzieć śniegu ani Świętego Mikołaja, pod warunkiem, że ikony pulpitu są widoczne. Aby obejść ten problem, wydaj polecenie:

/usr/lib/desktop/telldesktop quit

Ikony znikną, a Xsnow będzie działał idealnie. Aby ponownie uruchomić pulpit, po prostu zacznij

/usr/lib/desktop/startdesktop

lub wybierz Pulpit -> Katalog domowy z paska narzędzi.

Możliwe jest nawet posiadanie obu - ikon pulpitu i xsnow (a nawet wielu pulpitów). Musisz zmodyfikować plik zasobów menedżera okien 4DWm , plik ~ / .desktop- hostname/ 4DWm . Przykład:

  • 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

Uruchom ponownie menedżera okien (4Dwm) z paska narzędzi i powinien pojawić się Xsnow. Powoduje to zatrzymanie aktualnie działającego Xsnow i uruchomienie nowego po przejściu na inny pulpit.

precyzyjny
źródło
Dzięki, ale niestety nadal nie ma śniegu w Ubuntu 13.10!
Richard
Nie jestem użytkownikiem Silicon Graphics ani Irix, jestem kolesiem Radeon używającym KDE. Wynikło również polecenie bash: /usr/lib/desktop/telldesktop: No such file or directory. Dziękujemy za wzmiankę o tej części pliku README.
Richard
Teraz pierwsze polecenie działa, ale drugie, które podałeś w tajemniczy sposób, nie jest ...
Richard
1
Nie miałem problemu z uruchomieniem go ... nie wiem dlaczego, ale przełączanie widoczności ikony pulpitu po prostu działało .. nie jest to zalecane, ale chciałem szybko edytować niektóre pliki, więc zacząłem nautilus jako root gksu nautilus(wtedy Nie wiedziałem o przełączniku --no-desktop, który później też nie pomógł) .. to polecenie również rootuje pulpit! Ale coś poszło nie tak… okropnie… (Teraz nie mogę uruchomić Compiz do pracy… Próbowałem zresetować, ponownie zainstalować i wszystko… Nie mogę więc doradzić, aby spróbować…)
dokładny
2

W przypadku gnome możesz po prostu powiedzieć mu, aby nie obsługiwał pulpitu

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

Natknąłem się również na wzmiankę o używaniu shantz-xwinwrap dla For Unity Compiz, jednak nie wydaje się możliwe używanie go z wersją jedności 13.10 bez dokładniejszej kontroli xsnow.

To powiedziawszy, jeśli chcesz spróbować w terminalu, wykonaj:

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

Po zainstalowaniu, możliwe wykonanie xwinwrap bez anibg może wyglądać następująco:

nice -n 15 xwinwrap -ni -o 0.90 -fs -s -sp -st -b -nf -- '/usr/games/xsnow'
virtualxtc
źródło
Mam problem ze zdalnym wyświetlaniem mojego domowego komputera, inaczej całkowicie bym to przetestował. Myślałem, że znalazłem tutaj polecenie, ale tak naprawdę nie ma sensu, ponieważ nazywa się xscrensaver / plazma: fsckin.com/2008/04/14/fun-with-xwinwrap-in-compiz-fusion byłoby miło, gdyby Vdesk działał, ale kiedy zainstalowałem go w kubuntu i próbowałem go uruchomić, nic się nie stało.
virtualxtc,
Dostaję/usr/lib/xscreensaver/plasma: No such file or directory /usr/lib/xscreensaver/plasma died, exit status 2
Richard
tak blisko, że mogę spróbować; problem z xsnow czytającym argumenty przeznaczone dla xscreenwrap - ale xscreenwrap zdecydowanie współpracuje z xscreensaver 13.10.
virtualxtc,
Tak, podejrzewam, że to tylko kwestia składni ...
Richard,
Argumenty --rooti --windows-idnie są obsługiwane przez xsnow. Argumenty te pochodzą z przykładu użycia xwinwrap z glmatrix, który przyjmuje --rooti --window-idjako argument: xwinwrap -ov -fs -- /usr/lib/xscreensaver/glmatrix -root -window-id WIDna przykład będzie działać dobrze
yilmi
1

W przypadku standardowej instalacji 64-bitowej 12.04.3 zaloguj się, po prostu otwórz okno terminala u dołu ekranu i uruchom xsnow, który działa. Wydaje się, że resztkowa wiedza na temat tego, gdzie były okna podczas uruchamiania xsnow, a odcięcie śniegu nadal występuje po przeniesieniu lub ikonizacji okna. Problemy występują, gdy okno znajduje się w górnej części ekranu. Wyloguj / in usuwa stare pozycje okien, więc eksperymentuj ze świeżym loginem (a może zrestartuj X). Domyślne opóźnienie wynoszące 20 jest dla mnie prawie bliskie minimum, zwiększając, co może powodować pojawienie się śniegu.


Opcje xsnow są opisane na stronach podręcznika lub za pomocą przełącznika -h. - opóźnienie 30 spowoduje 30-milisekundowe opóźnienie między aktualizacjami, zamiast domyślnego, czyli 20. Widzę, że rzeczy stają się płatkowe przy 18, a nie ma śniegu przy 15, więc w innym systemie działającym zbyt krótkie opóźnienie psuje rzeczy. W przypadku wersji 13.10 istnieje pewna różnica w sposobie ustawiania okien „root”. System jedności 12.04 ma roota, dziecko, wnuka, pulpit, świetnego wnuka, który aktualizuje śnieg i działa. (patrz wyjście z

 `xwininfo -root -tree`

System jedności 13.10 faktycznie aktualizuje okno główne, a pulpit nie ma nawet elementu potomnego pełnego ekranu. W przypadku debuggera zmiana okna aktualizowanego na pulpit powoduje pojawienie się obrazów, ale usuwa tło, więc nie jest to dobre rozwiązanie. Żadne inne okno pobierania aktualizacji nie pokazuje niczego, więc myślę, że jest to konflikt z mechanizmem jedności, który wygląda na to, że wymaga pewnych zmian, aby to zadziałało (ponieważ ideałem nie jest zmiana niczego poza programem xsnow).


Aktualizacja do 14.04 z uruchomionym Unity Aby zobaczyć Świętego Mikołaja, poddaj się na pulpicie Unity i po prostu stwórz kolejny X bez niego. W razie potrzeby przełączaj się w przód i w tył, a nawet uruchamiaj programy z opcją -display: 1, aby wyświetlać się na nowym ekranie.

Najpierw zezwól każdemu na uruchomienie serwera X.

dpkg-reconfigure x11-common

i ustaw wszystkim dostęp X dla siebie Tak, możesz uruchomić sudo, ale wtedy pozostawisz na pulpicie niektóre pliki roota i nie będziesz mógł zalogować się za pomocą GUI (użyj wirtualnego terminala, aby usunąć root posiadany plik, jeśli to zrobisz).

Czy masz zainstalowany inny menedżer okien, aby móc przenosić okna na nowym ekranie (tylko jeśli chcesz uruchomić inne programy, nie przejmuj się, jeśli wszystko, co chcesz zrobić, to zobaczyć Świętego Mikołaja. Nawet prosty, taki jak twm, zrobi , wybierz swój ulubiony, który pozostawia odsłonięte okno główne.

Uruchom poniżej na vt, aby uzyskać pełny ekran xsnow.

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

Wróć z powrotem do oryginalnego wyświetlacza w vt7 za pomocą Crtl-Alt-F7 i wróć do xsnow za pomocą Ctrl-Alt-F8

Twórz xtermy z vt7 (oryginalny serwer X na: 0)

xterm -display :1 &

uruchom menedżera okien na nowym ekranie z nowego xterm np

twm&

Aktualizacja 16.04: Wiele rzeczy uległo awarii od 14.04 (patrz błąd # 1562219), ale nadal możesz uruchomić xsnow:

  1. Jeśli korzystasz ze sterownika wideo Nvidia, użyj sterownika nouveau. Aktualizacja oprogramowania / przycisk Ustawienia / zakładka Dodatkowe sterowniki, wybierz nowy. uruchom ponownie, aby się upewnić.
  2. Zaloguj się na przykład do wirtualnego terminala (Ctrl-Alt-F2)
  3. xinit / usr / games / xsnow -: 1 vt2 Lub uruchom xterm, a od tego rozpocznij inne rzeczy, takie jak menedżer okien, xsnow itp. Tylko nie zaczynaj jedności, to przejmuje tło.

Wesołych Świąt wszystkim

ubfan1
źródło
Dzięki, ale przeniesienie okna terminala na dół ekranu nie działało dla mnie.
Richard
Kluczem jest brak okien u góry, nawet ikon. Spróbuj opóźnić o 30, aby zobaczyć, czy to pomoże. Te dwa przedmioty były jedynymi problemami, które znalazłem.
ubfan1,
Jak mam zrobić „opóźnienie 30”? Nie jestem pewna co to oznacza.
Richard
1

Istnieje nowa wersja xsnow , działająca na gnome, kde, fvwm, lcde, a nawet raspbian: https://www.ratrabbit.nl/ratrabbit/content/xsnow/introduction

Zamiarem jest wypchnięcie tej wersji do repozytorium Debiana.

Nowa wersja jest również dostępna na sourceforge .

Ze strony:

Wreszcie działający xsnow dla Gnome, KDE itp. W oparciu o oryginalny xsnow-1.42 stworzony przez Ricka Jansena, po konferencji xsnow-2019 w Antas (Hiszpania), mamy teraz dostępny xsnow, który działa na wielu środowiskach desktopowych, nawet Raspian . Na prośbę wielu beta-testerów stworzono również graficzny interfejs użytkownika.

Willem Vermin
źródło
0

Jeśli spojrzysz na instrukcje kompilacji, otrzymasz:

Dla kompatybilności z wirtualnymi menedżerami okien Xsnow używa „vroot.h”, pliku dołączającego, który sprawia, że ​​programy X są kompatybilne z menedżerami okien takimi jak swm i tvtwm. Pełna dystrybucja vroot jest dostępna z „ftp.x.org” w katalogu contrib jako „vroot.shar.Z”. Vroot został napisany przez Andreasa Stolcke, 9/7/90 i jest chroniony prawem autorskim 1991 przez Andreasa Stolcke, chroniony prawami autorskimi 1990 przez Solbourne Computer Inc.

Wygląda na to, że usunęli vroot.h z kompilacji, ponieważ został on dołączony do KDE. Jednak nagłówek wciąż zawiera najnowszą wersję:

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

i rozpakuj to. Otwórz xsnow.ci dodaj do nowej linii po 250 (wystąpiły problemy, gdy skomentowałem ją tam, gdzie była).

#include "vroot.h"

Następnie build (wymaga xutils-dev, xorg-deva libxpm-dev) z:

xmkmf
make depend
make

następnie (przy założeniu braku błędów)

./xsnow

Czy to działa? Skompilowana wersja działa tutaj, ale jestem w Gnome, 12.04, a nie na maszynie wirtualnej.

Julian Stirling
źródło
Wygląda na to, że zostało skompilowane ok ... ale wciąż nie ma śniegu: \ i.imgur.com/Pmd9vOx.jpg
Richard
Rzuciłem okiem na kod xsnow, a problemem jest sposób, w jaki obsługuje on okna, na których renderuje.
yilmi