Skip to main content

Gnome 下 把 Dream Aquarium 设为壁纸

在Windows下发现这个软件不错后,决定要尝试把它弄成我的ubuntu的“壁纸”

首先是安装,默认会出问题,原因是少了个gdiplus.dll, Dream Aquarium主页上关于Win2000版本的地方有说明。 不过我的XP似乎没有这个文件也能跑。 总之,下一个gdiplus.dll放wine的系统目录里就好了。

如果想装破解版,会麻烦些,我按照Windows的方法试了好久,没有成功,最后是胡搞了几次才成,可能有用的几点是:

1.破解包里有一个dai文件,用16进制编辑器查看发现其前三行是明文,之后是一个PE文件头,于是删掉前三行,果然可以运行,但是经常会crash。 这个文件应该就是1.1090完全版的主程序了。一般在鼓弄过程(最好还是按着破解包里面的说明弄)中可以试试这个能不能正常运行,即显示鱼缸。我这里最好结果是它可以运行,但是仍是使用版,似乎只能加2号鱼。

2.注册似乎一直都不成功,我最后是在上面一条成功后,认为注册表方面没问题了,然后把Windows下的安装文件拷过来了一份,于是能正常运行了,可加的鱼也没有限制了。

3.破解包里说要block这个屏保的网络连接,但是我不会弄,说不准哪一天屏保自己发现被破解了,又拒绝运行了。不过现在已经运行了几次,没有问题。

能运行以后,开始尝试把它弄成壁纸.

首先是要配置一下wine.设上虚拟桌面,并去掉Allow the window manager to control the windows。 我一开始没设好这个,总是不行。原因大概是屏保发现失去焦点后就会自动退出,可是我们把它设成了桌面以后,肯定要做别的事,于是切换到其他窗口时,屏保就退出了。 去掉Allow the window manager to control the windows 后, 该窗口就得不到失去焦点的信息了,也就不会自动退出了。 另外如果不选上虚拟桌面,后面用的devilspie会找不到这个窗口。

其次,配置一下屏保(在屏保里面按回车),去掉鼠标退出,然后把键盘退出的范围改小,我弄的是Esc only。

接着是装上devilspie, 在home里建目录.devilspie,并写一个文件DreamAquarium.ds
(if (is (application_name) "Wine desktop")
(begin
(below)
(undecorate)
(focus)
(wintype "desktop")
(opacity 60)
(pin)
(stick)
(skip_pager)
(geometry "1280x800+0+0")
))
再运行devilspie和屏保就成了 :)

此外可以参考Dream Aquarium as a Desktop Wallpaper with Beryl!
我这里是Compiz,一直没弄成功,也不知道是Compiz不兼容还是我没配好。

另外说一下这个方法的不足,从脚本中可以看出我是把Wine desktop设了stick, below之类,因此对其他在同一个wine环境下运行的程序也有效,特别地,屏保会退出。 当然可以设一下用其他环境,像我这的ie4linux就是如此。 当然我很少用wine程序, 而且ie4linux由于是单独的环境与其互不影响,所以不成大问题。

还有,opacity这个参数似乎不起作用,于是桌面图标看不到了
喜欢的话还可以把devilspie设成自启动。

Comments

Popular posts from this blog

Determine Perspective Lines With Off-page Vanishing Point

In perspective drawing, a vanishing point represents a group of parallel lines, in other words, a direction. For any point on the paper, if we want a line towards the same direction (in the 3d space), we simply draw a line through it and the vanishing point. But sometimes the vanishing point is too far away, such that it is outside the paper/canvas. In this example, we have a point P and two perspective lines L1 and L2. The vanishing point VP is naturally the intersection of L1 and L2. The task is to draw a line through P and VP, without having VP on the paper. I am aware of a few traditional solutions: 1. Use extra pieces of paper such that we can extend L1 and L2 until we see VP. 2. Draw everything in a smaller scale, such that we can see both P and VP on the paper. Draw the line and scale everything back. 3. Draw a perspective grid using the Brewer Method. #1 and #2 might be quite practical. #3 may not guarantee a solution, unless we can measure distances/p...

Chasing an IO Phantom

My home server has been weird since months ago, it just becomes unresponsive occassionally. It is annoying but it happens only rarely, so normally I'd just wait or reboot it. But weeks ago I decided to get to the bottom of it. What's Wrong My system set up is: Root: SSD, LUKS + LVM + Ext4 Data: HDD, LUKS + ZFS 16GB RAM + 1GB swap Rootless dockerd The system may become unresponsive, when the IO on HDD  is persistantly high for a while. Also: Often kswapd0 has high CPU High IO on root fs (SSD) From dockerd and some containers RAM usage is high, swap usage is low It is very strange that IO on HDD can affect SSD. Note that when this happens, even stopping the IO on HDD does not always help. Usually restarting dockerd does not help, but rebooting helps. Investigation: Swap An obvious potential root cause is the swap. High CPU on kswapd0 usually means the free memory is low and the kernel is busy exchanging data between disk and swap. However, I tried the following steps, none of the...

Moving Items Along Bezier Curves with CSS Animation (Part 2: Time Warp)

This is a follow-up of my earlier article.  I realized that there is another way of achieving the same effect. This article has lots of nice examples and explanations, the basic idea is to make very simple @keyframe rules, usually just a linear movement, then use timing function to distort the time, such that the motion path becomes the desired curve. I'd like to call it the "time warp" hack. Demo See the Pen Interactive cubic Bezier curve + CSS animation by Lu Wang ( @coolwanglu ) on CodePen . How does it work? Recall that a cubic Bezier curve is defined by this formula : \[B(t) = (1-t)^3P_0+3(1-t)^2tP_1+3(1-t)t^2P_2+t^3P_3,\ 0 \le t \le 1.\] In the 2D case, \(B(t)\) has two coordinates, \(x(t)\) and \(y(t)\). Define \(x_i\) to the be x coordinate of \(P_i\), then we have: \[x(t) = (1-t)^3x_0+3(1-t)^2tx_1+3(1-t)t^2x_2+t^3x_3,\ 0 \le t \le 1.\] So, for our animated element, we want to make sure that the x coordiante (i.e. the "left" CSS property) is \(...