Xsnow tidak bekerja

23

Saya telah menginstal program lama xsnowdengan Apt. Program ini seharusnya membuat salju ( jenis curah hujan ) muncul di desktop. Namun, menjalankan program tidak melakukan apa pun kecuali mengembalikan kode berikut:

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

Ini karena program ini dirancang untuk menggambar salju pada jendela root X , sebagaimana dinyatakan di situs web:

Pertanyaan yang sering diajukan: Saya memulai Xsnow tetapi saya tidak melihat salju? Jawaban: Xsnow membuatnya bersalju di jendela "root" X-window. Jendela root itu seringkali dikaburkan oleh manajer desktop, untuk menampilkan ikon dan alat. Jadi, Xsnow berfungsi dengan baik, Anda tidak bisa melihat salju! Lihat README untuk perincian dan kemungkinan solusi.

Saya mencobanya di Ubuntu 13.10 VM, Kubuntu 13.10 dan 14.04, dan Lubuntu Trusty Live USB. Ini berfungsi di Xubuntu, karena di Xfce kita melihat jendela root X secara default. Dalam obrolan, seseorang melaporkannya berfungsi di Ubuntu 12.04, tetapi di Ubuntu 13.10 VM saya tidak melihat salju.

Masalahnya adalah, seperti yang saya sebutkan, xsnowhanya menarik pada root X Window. Jendela root X adalah "induk" dari semua jendela X lainnya dan karenanya juga tidak terlihat, karena lingkungan desktop modern seperti KDE dan Unity biasanya menyembunyikan jendela root X dengan komposer efek desktop. Jadi xsnowmasih menarik salju, (Anda bisa mendapatkan potongan itu saat masuk dan keluar karena fragmentasi grafis) itu tidak terlihat. Pada desktop yang lebih sederhana seperti Openbox dan XFCE, jendela X (dan karenanya salju) sepenuhnya terlihat.

Apakah ada cara untuk melihat aktivitas root X window dan dengan demikian melihat salju?

Richard
sumber
Ini bekerja pada XFCE, yang saya gunakan. Hanya memberi tahu Anda. Saya di 13.10+.
RobotHumans
di mana ada kesalahan di terminal?
Mateo
@hbdgaf Senang tahu, saya akan mengirim laporan bug ke Launchpad untuk memberi tahu orang-orang bahwa itu perlu dihapus agar tidak berfungsi. Akan menguji dengan Lubuntu.
Richard
3
Ada / adalah plugin compiz untuk melakukan hal yang sama. Yang itu juga agak tua dan mungkin bahkan tidak berfungsi sekarang, tetapi di sini adalah sumbernya jika ada yang mau mencobanya. (Saya tidak akan.)
Falcon
Baru saja mencobanya di sesi Openbox ... Butiran salju ...
Richard

Jawaban:

8

Menggunakan KDE Anda dapat menggunakan paket efek kwin-salju .

Bagaimana cara menginstall:

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

Kemudian di KDE Anda dapat mengatur efek dari System Settings-> Desktop Effects-> All Effectsdan mengaktifkan salju.

Anda juga dapat menggunakan plugin Compiz Snow , Periksa cara kerjanya pada video Youtube ini

Saya menemukan xwinwrap, yang memungkinkan Anda tetap menggunakan aplikasi apa pun sebagai latar belakang desktop Anda. Klik di sini untuk mengunduhnya , Atau di sini untuk membaca catatan rilis coder

Itu tidak memberi Anda akses ke jendela root (yang tampaknya sulit di sebagian besar lingkungan desktop). Dan yang ini tidak bekerja dengan xsnow tetapi itu akan bekerja dengan banyak aplikasi lain ...

yilmi
sumber
Oh tidak, itu menabrak desktop saya! Akan mencobanya lagi.
Richard
Baru saja mencoba efek kwin saya menggunakan KDE. Silakan periksa jawaban ini: askubuntu.com/a/65522/226084 tentang cara membuat plugin salju compiz berfungsi
yilmi
4

Hanya melakukan beberapa pengujian lagi pada 12,04 (Kemungkinan ini bukan jawaban untuk 13,10, tetapi bagi mereka yang menginginkan ini pada 12,04)

Jika di gnome-tweak-tool, di bawah Desktop saya periksa Apakah manajer file menangani desktop. Kemudian keduanya di Unity dan di Unity-2D xsnowbekerja. Meskipun dalam persatuan-2d salju di udara tidak terlihat, hanya yang jatuh yang terlihat, tetapi itu karena kartu grafis saya dan drivernya. Di Unity itu bekerja dengan sempurna.

Jika di gnome-tweak-tool saya hapus centang Memiliki manajer file menangani desktop , maka xsnowbahkan tidak akan memulai dan melempar kesalahan baik di Unity dan Unity-2D

elang
sumber
4

Saya adalah pengguna lingkungan Precise with Unity , dan memiliki masalah yang sama hingga menjalankan perintah ini:

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

xsnowSnap


Berikut kutipan dari halaman buku panduan xsnow :

SGI Irix 5.x

Pengguna Silicon Graphics dan Irix 5.x mungkin tidak melihat salju atau Santa sama sekali, selama ikon desktop terlihat. Untuk menghindari masalah ini, berikan perintah ini:

/usr/lib/desktop/telldesktop quit

Ikon akan menghilang dan Xsnow akan bekerja dengan sempurna. Untuk me-restart desktop baru saja dimulai

/usr/lib/desktop/startdesktop

atau pilih Desk ‐ top -> Home Directory dari toolchest.

Bahkan dimungkinkan untuk memiliki keduanya - ikon desktop dan xsnow (dan bahkan beberapa meja). Anda perlu memodifikasi file sumber daya window manager 4DWm , file ~ / .desktop- hostname/ 4DWm . Contoh:

  • 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

Restart window manager (4Dwm) dari toolchest dan Xsnow akan muncul. Apa yang dilakukan adalah menghentikan Xsnow yang saat ini berjalan dan memulai yang baru ketika Anda beralih ke desktop lain.

tepat
sumber
Terima kasih tapi sayangnya masih tidak ada salju di Ubuntu 13.10!
Richard
Saya bukan pengguna Silicon Graphics atau Irix, saya seorang Radeon dude menggunakan KDE. Juga perintah itu menghasilkan bash: /usr/lib/desktop/telldesktop: No such file or directory. Terima kasih telah menyebutkan bagian dari README.
Richard
Sekarang perintah pertama berfungsi, tetapi perintah kedua yang Anda berikan secara misterius tidak ...
Richard
1
Saya tidak punya banyak masalah dengan membuatnya berfungsi .. tidak yakin mengapa, tetapi mengaktifkan visibilitas ikon desktop hanya berfungsi .. tidak disarankan, tetapi saya ingin mengedit beberapa file dengan cepat sehingga saya mulai nautilus sebagai root dengan gksu nautilus(lalu Saya tidak tahu tentang saklar --no-desktop, yang nantinya juga tidak membantu) .. perintah itu juga me-root desktop! Tapi ada yang tidak beres .. sangat parah .. (Sekarang tidak bisa membuat compiz bekerja .. Saya sudah mencoba mengatur ulang, menginstal ulang, dan semuanya .. Jadi saya tidak bisa menyarankan untuk mencobanya ..)
tepatnya
2

Untuk gnome, Anda bisa mengatakannya untuk tidak menangani desktop

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

Saya juga telah menemukan beberapa menyebutkan menggunakan shantz-xwinwrap untuk For Unity Compiz, namun, tampaknya tidak mungkin untuk digunakan dengan versi 13.10's unity tanpa kontrol yang lebih baik dari xsnow.

Yang mengatakan jika Anda ingin mencobanya di terminal jalankan:

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

Setelah diinstal, kemungkinan eksekusi xwinwrap tanpa anibg akan terlihat seperti:

nice -n 15 xwinwrap -ni -o 0.90 -fs -s -sp -st -b -nf -- '/usr/games/xsnow'
virtualxtc
sumber
Saya mengalami masalah dengan tampilan remote komputer di rumah saya kalau tidak saya akan benar-benar menguji ini. Saya pikir saya menemukan sebuah perintah di sini tetapi itu benar-benar tidak masuk akal karena disebut xscrensaver / plasma: fsckin.com/2008/04/14/fun-with-xwinwrap-in-compiz-fusion akan manis jika Vdesk bekerja, tetapi ketika saya menginstalnya di kubuntu dan mencoba menjalankannya tidak terjadi apa-apa.
virtualxtc
Saya mulai/usr/lib/xscreensaver/plasma: No such file or directory /usr/lib/xscreensaver/plasma died, exit status 2
Richard
sedekat itu aku bisa merasakannya; mengalami masalah dengan xsnow membaca argumen yang ditujukan untuk xscreenwrap - tetapi xscreenwrap jelas bekerja dengan xscreensaver pada 13.10.
virtualxtc
Ya saya curiga itu hanya masalah sintaksis ...
Richard
The --rootdan --windows-idtidak didukung argumen oleh xsnow. Argumen-argumen tersebut berasal dari contoh penggunaan xwinwrap dengan glmatrix yang menerima --rootdan --window-idsebagai argumen: xwinwrap -ov -fs -- /usr/lib/xscreensaver/glmatrix -root -window-id WIDmisalnya akan berfungsi dengan baik
yilmi
1

Pada instalasi standar 12.04.3 64 bit, login, hanya memiliki jendela terminal dekat bagian bawah layar, dan mulai xsnow, yang berfungsi. Tampaknya menjadi pengetahuan sisa tentang di mana windows berada saat xsnow dimulai, dan cutoff salju masih terjadi setelah jendela dipindahkan atau ikon. Masalah terjadi ketika jendela berada di dekat bagian atas layar. Logout / in membersihkan posisi windows lama, jadi coba dengan login baru (atau mungkin X restart). Penundaan standar 20 cukup dekat dengan minimum untuk saya, meningkat yang mungkin membuat salju juga muncul.


Opsi xsnow dijelaskan di halaman manual atau dengan -h switch. -delay 30 akan membuat penundaan 30 milidetik di antara pembaruan, bukan default yaitu 20. Saya menemukan hal-hal menjadi flakey di 18, dan tidak ada salju di 15, jadi pada sistem yang berfungsi, keterlambatan istirahat terlalu pendek hal-hal. Untuk 13.10, tentu ada perbedaan dalam cara "root" windows ditumpuk. Sistem persatuan 12,04 memiliki root, anak, cucu, desktop, cicit yang hebat yang diperbarui dengan salju dan bekerja. (lihat output dari

 `xwininfo -root -tree`

Sistem kesatuan 13.10 sebenarnya memperbarui jendela root, dan desktop bahkan tidak memiliki anak layar penuh. Dengan debugger, mengubah jendela yang diperbarui ke desktop memang menghasilkan gambar yang muncul, tetapi mereka menghapus backgound, jadi bukan solusi yang baik. Tidak ada jendela lain yang mendapatkan pembaruan menunjukkan apa-apa, jadi saya kira ini adalah konflik dengan mekanisme persatuan, yang sepertinya memerlukan beberapa perubahan agar ini berfungsi (karena yang ideal tidak harus mengubah apa pun kecuali program xsnow).


Pembaruan untuk 14,04 menjalankan Unity Untuk melihat Santa, menyerah pada desktop Unity, dan buat saja tampilan X lain tanpa itu. Beralih bolak-balik sesuai kebutuhan, atau bahkan jalankan program dengan -display: 1 untuk muncul di tampilan baru.

Pertama, izinkan siapa saja untuk menjalankan server X

dpkg-reconfigure x11-common

dan atur akses X untuk semua orang. Ya Anda dapat menjalankan dengan sudo, tetapi kemudian Anda akan meninggalkan beberapa file yang dimiliki root pada desktop Anda, dan tidak akan dapat login dengan GUI lagi (menggunakan terminal virtual untuk menghapus root file yang dimiliki jika Anda melakukannya).

Apakah Anda memiliki manajer jendela yang diinstal sehingga Anda dapat memindahkan jendela di tampilan baru Anda (hanya jika Anda ingin menjalankan program lain di sana, jangan repot-repot jika semua yang ingin Anda lakukan adalah melihat Santa. Bahkan yang sederhana seperti twm akan melakukan , pilih salah satu favorit Anda yang membiarkan jendela root terbuka.

Jalankan di bawah ini pada vt untuk mendapatkan xsnow layar penuh.

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

Beralih kembali ke tampilan asli pada vt7 dengan Crtl-Alt-F7 dan kembali ke xsnow dengan Ctrl-Alt-F8

Buat xterms dari vt7 (server X asli pada: 0)

xterm -display :1 &

mulai manajer jendela Anda pada tampilan baru dari misalnya xterm baru

twm&

Pembaruan 16.04: Banyak hal rusak sejak 14.04 (lihat bug # 1562219), tetapi Anda masih dapat menjalankan xsnow:

  1. Jika berjalan dengan driver video Nvidia, gunakan driver nouveau. Pembaruan Perangkat Lunak / Tombol Pengaturan / tab Driver Tambahan, pilih nouveau. reboot hanya untuk memastikan.
  2. Masuk ke terminal virtual (Ctrl-Alt-F2) misalnya
  3. xinit / usr / games / xsnow -: 1 vt2 Atau memulai xterm, dan darinya mulailah hal-hal lain seperti window manager, xsnow, dll. Hanya jangan memulai persatuan, dibutuhkan latar belakang.

Selamat Natal untuk Semua

ubfan1
sumber
Terima kasih tetapi memindahkan jendela terminal ke bagian bawah layar tidak berhasil untuk saya.
Richard
Tidak ada jendela di dekat bagian atas itulah kuncinya, bahkan yang bukan ikon. Coba tunda 30 untuk melihat apakah itu membantu. Kedua barang itu adalah satu-satunya masalah yang saya temukan.
ubfan1
Bagaimana saya melakukan "keterlambatan 30"? Tidak yakin apa artinya itu.
Richard
1

Ada versi baru xsnow , berjalan di gnome, kde, fvwm, lcde, dan bahkan raspbian: https://www.ratrabbit.nl/ratrabbit/content/xsnow/introduction

Ini adalah niat untuk mendorong versi ini ke dalam repo Debian.

Versi baru juga tersedia di sourceforge .

Dari situs web:

Akhirnya, xsnow yang berfungsi untuk Gnome, KDE, dll. Berdasarkan xsnow-1.42 asli yang dibuat oleh Rick Jansen, setelah konferensi xsnow-2019 di Antas (Spanyol) kami sekarang memiliki xsnow yang berfungsi di banyak lingkungan desktop, bahkan Raspian . Atas permintaan banyak beta-penguji, ujung depan grafis juga telah dibuat.

Willem Vermin
sumber
0

Jika Anda melihat instruksi kompilasi yang Anda dapatkan:

Untuk kompatibilitas dengan manajer jendela virtual Xsnow menggunakan 'vroot.h', file yang disertakan yang membuat program X kompatibel dengan manajer jendela seperti swm dan tvtwm. Distribusi vroot lengkap tersedia dari 'ftp.x.org' di direktori contrib sebagai 'vroot.shar.Z'. Vroot ditulis oleh Andreas Stolcke, 9/7/90 dan merupakan hak cipta 1991 oleh Andreas Stolcke, hak cipta 1990 oleh Solbourne Computer Inc.

Mereka sepertinya telah mengeluarkan vroot.h dari kompilasi karena itu termasuk untuk KDE. Namun, tajuknya masih dilengkapi dengan versi terbaru:

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

dan membukanya. Buka xsnow.cdan tambahkan ke baris baru setelah 250 (ada masalah ketika saya berkomentar kembali di tempat itu.)

#include "vroot.h"

Kemudian bangun (membutuhkan xutils-dev, xorg-devdan libxpm-dev) dengan:

xmkmf
make depend
make

lalu (dengan asumsi tidak ada kesalahan)

./xsnow

Apakah itu bekerja? Versi yang dikompilasi bekerja di sini tapi saya di Gnome, pada 12,04, dan bukan pada mesin virtual.

Julian Stirling
sumber
Sepertinya sudah dikompilasi ok ... tapi masih belum ada salju: \ i.imgur.com/Pmd9vOx.jpg
Richard
Saya telah melihat kode xsnow dan masalahnya adalah cara menangani windows yang di-render.
yilmi