给逸珑8089安装JWM窗口管理器&一些其它事情

前几个星期把逸珑8089上面的Debian 8弄得启动不了图形界面了,同时也发现更新过的Iceweasel不能在8089上运行(每次一打开就说非法指令),于是就重新装了GNewSense 3,希望能进入图形界面以及启动旧版的Iceweasel。安装的过程和先前Debian的网络安装是一样的,为了方便也用了大笔记本(Precision M4400)充当路由器来分享WiFi。安装完成后的默认图形界面是Gnome 2,有WiFi,有电源,挺好用的。不过有一些性能问题,就是Gnome 2用起来有点慢,且命令行打开时会需要等待约2秒的时间。以下描述上面两个问题的解决方法,再描述一些其它的事宜。

这些事宜的解决是为了让龙芯笔记本不要处于闲置的状态,而要去达成一个有意义的目的。目前这个目的就设定为按照《Ray Tracing from the Ground Up》撰写光线追踪程序,体验一下在龙芯笔记本上编写程序的感觉。

  • 把Gnome 2换成更轻量级的JWM
    Gnome 2在8089上光是打开菜单这么简单的操作都会让屏幕一闪一闪的,给人感觉要费老大力气才把屏幕刷新好。真是不好用。所以考虑把窗口管理器换成Puppy Linux中用的JWM。(为什么不换i3之类的平铺窗口管理器呢?主要是平铺会强行改变OpenGL程序的窗口大小,让编写OpenGL程序时不方便。)更换的过程好简单的,从JWM的主页上下载最新的源代码,然后装上所有的依赖项(GNewSense 3里面都有的),然后编译安装,就有了执行程序。但是有了执行程序还不够,还要进行系统方面的设定,也就是更换 /usr/share/xsessions/Jwm.desktop 之类的文件。我不太会进行这方面的设定,所以是先安装了源里的JWM(是旧版),让系统自己完成设定,然后把 /usr/bin/jwm 换成自己编译完成的新版JWM,这样就能在欢迎界面中选择JWM了。在安装完JWM之后,还需要费心进行一些设置。进行设置的过程,其实各种桌面环境都差不多吧,都是一些麻烦的事。只不过有的像XFCE这样能够通过图形界面进行设置,有的只能像JWM这样通过改配置文件进行设置了。磨合一段时间后,就会越来越好用。JWM在龙芯上用比较好用,在大笔记本Precision M4400上和Gimp按上画图板一起用时会有些小的问题,有时候画图板会失去响应甚至造成整个桌面没有响应,所以在大笔记本上还是用XFCE。(XFCE对龙芯来说也太重量级了。)
  • 减小Bash启动时的等待时间
    对于在龙芯上的GNewSense 3,Bash启动时的等待时间是由于 /etc/bash_completion 这个脚本造成的。这个脚本有“第一版”和“第二版”之分。在新近的系统中,都是第二版的。但是在龙芯上的GNewSense 3它还是第一版的。第一版比第二版速度慢,如果换成了第二版的,速度就能快很多。第二版bash-completion以deb包的形式存在,安装Debian Wheezy所配的DEB是可以的。安装完以后打开终端所需要等待的时间就从2秒减小到半秒左右了。在安装时,会有以下画面。
    Screenshot
  • 其它事情
  • 以下几条是在折腾龙芯电脑时在大笔记本上也遇到了的事。

    • 编译安装Conky
      在编译Conky时,如果想要显示NVidia显卡的状态或查看WiFi的信号强度,需要分别启用USE_NVIDIA和WLAN这两个变量。(Todo: 详情
    • 鼠标消失
      鼠标消失是因为启动了gnome-settings-daemon。如果把它砍掉,指针就会回来。
  • 以下几条是在Macbook上安装过Linux之后遇到的一些事。
    • 模仿Mac OS中的缩放模式,设置高分辩率显示屏 + 普通显示屏的双输出

      这一条讲的是如何设定 X Server ,使得在笔记本上有高DPI的显示屏、又外接了一个普通DPI的显示屏时,不会出现普通显示屏上的文字过大的情况。具体而言,就是在Macbook Pro上面安装了Linux以后如何配置外接显示屏。
      首先,我们知道,普通显示屏上的文字过大是因为屏幕缓冲区不经缩放直接点对点显示在所有显示器上。所以,一个290像素高的字,在290PPI的显示屏上高度就是1英寸,到了145PPI的显示屏上就变成2英寸了,就是比正常情况大了一倍。根据这个现象,只要把对应着普通显示屏那部分的缓冲区在显示时用普通显示屏上的1个像素显示缓冲区中的4个象素,就能使得在145PPI的屏幕上显示的290像素高的字还是1英寸高了。

      因为1个普通显示屏上的像素对应着4个缓冲区中的像素,所以缓冲区的像素数也是普通屏幕的像素数的4倍。这个4倍,会在X的设定中用到。具体而言,就是“输入的Viewport”的像素是“输出的Viewport”的像素的4倍。

      (Todo)

  • Ray Tracing from the Ground Up
    搭框架时发现用glut创建窗口是会segfault的。像NeHe的教程中就没有用到glut,而是用了glfw。用了NeHe的创建窗口的方法,就能在龙芯上正常运行了。
    有了Ray Tracer,就能对龙芯的性能有一个更好的了解,这个龙芯本就能逐渐地完成它的历史使命了。
    Screenshot-Untitled Window

 

此条目发表在Uncategorized分类目录。将固定链接加入收藏夹。