kurrunk

不停转圈的人

“几束”目录存档

在linux上安装nginx-FastCGI-Flask

Flask是基于pythonWerkzeug Jinja 2的一个轻量级WEB框架。python的web框架很多,个性差别很大,找到很久找到了flask,主要是几个原因:轻量级、久仰jinja、pocoo的名声不错。

主流的linux发行版本上,安装nginx和python都是非常轻松的,比如在archlinux上:
#pacman -S nginx python2

利用easy_install安装flask:
#easy_install flup
#easy_install flask

新建WEB目录:$mkdir www
新建主PY文件:$vim www/app.py

#!/usr/bin/env python
# encoding: utf-8
from flask import Flask
app = Flask(__name__)
@app.route("/")
def helloworld():
        return "Hello World!"

创建fcgi文件:$vim www/fcgi.py

#!/usr/bin/env python
# encoding: utf-8
from app import app
from flup.server.fcgi import WSGIServer
WSGIServer(app,bindAddress='/tmp/flask_le5le.sock').run()

配置nginx站点:
# vim /etc/nginx/conf/vhosts/flask.le5le

server{
         listen 80;
         server_name flask.le5le.com;
         location / {
             include fastcgi_params;
             fastcgi_param SCRIPT_FILENAME "";
             fastcgi_param PATH_INFO $fastcgi_script_name;
             fastcgi_pass unix:/tmp/flask_le5le.sock;
                 }
         }

#vim /etc/nginx/conf/nginx.conf
在http{}中加入vhosts目录:

include vhosts/*;

运行fcgi.py:
$ python www/fcgi.py

用ROOT帐户修改sock文件权限:
# chmod 777 /tmp/flask_le5le.sock

重启nginx:
# /etc/rc.d/nginx restart

现在用浏览器访问站点就能看到”hello world”了。

重回到那个世界:archlinux fcitx …

最早用linux是redhat,那时只是玩玩,乐在其中,后来接触到UBUNTU,再后来是DEBIAN,DEBIAN用了很长时间,直到后来安装了archlinux。再后来用过一段时间的gentoo,因为ubuntu用起来太简单,最近一年一直在用ubuntu。

也算是把各个重要的linux发行版本都折腾过了,对各个系统也有一点自己的认识。

这两天,ubuntu11.04发布,手贱。升级就要完的时候,因为下载flashplugin半天没动静,又不能取消,我就强制关机。结果就是ubuntu启动不了了,好像是硬盘怎么了。

又因为不习惯ubuntu的新界面(家用电脑一直是那界面),索性换系统吧。

没怎么考虑debian,原因我也不知道,好像是觉得少了些特色,或者是其它什么原因;

gentoo不错,就是需要时间去收拾,因为是工作用的电脑,空闲的时间不是很多。

还有就是archlinux了,archlinux用的人似乎不多,很多时候是自己在官方WIFI上摸索,还有archlinux配置起来也是需要一些时间,但相比gentoo要少很多工作。但archlinux的”KISS”很符合我的喜好。

结果是安装了archlinux。而且配上了gnome-shell。界面用的很上手。

总的安装过程比想象中的复杂了一些,因为gtk是3,折腾了很长时间的输入法,还好在刚刚可以输入五笔了。在若干年前,fcitx就给过我不小的惊喜,今天的惊喜又是fcitx带来的。

现在,还有一大遗憾,就是不能收音,就是不能录音,这个可不行,我还得再摸索摸索。

在linux上搭建flex(flash)开发环境

习惯了在WINDOWS中用FLASH或FLEX Builder,在LINUX中开发多少有些不习惯,但在LINUX中搭建FLASH开发环境还是很简单的。

首先去ADOBE网站下载FLEX SDK压缩包,当前最新版本是4.0

下载在本地后解压缩:
$unzip flex*.zip -d tempdir
建立FLEX运行目录:
$sudo mkdir /opt/flex
转移文件到新目录:
$sudo mv tempdir/* /opt/flex/
删除临时目录
$rmdir tempdir

现在可以用/opt/flex/bin/mxmlc编译SWF文件了,如果在bash中希望直接用命令编译SWF,在~/.bashrc中加入:
export PATH=/opt/flex/bin:$PATH

环境搭建完成,可以进行FLASH的开发了。

新建kurrunk.as文件:

package{
    import flash.display.*;
    import flash.text.*;
    public class ad extends Sprite{
        public function ad(){
            var t:TextField = new TextField();
            t.text = 'kurrunk.com';
            addChild(t);
        }
    }
}

编译到swf文件:
$mxmlc kurrunk.as
在浏览器中查看结果:
$chromium-browser kurrunk.swf

在Moblin中播放mp3、avi、rmvb

Moblin默认支持的音频和视频格式非常有限,似乎只支持OGG\OGV格式,而软件仓库中并没有必要的解码器。

首先确认yum可以安装哪些相关的软件,搜索“gstreamer”的结果:
gst-plugins-base.i586
gst-plugins-base-devel.i586
gst-plugins-farsight.i586
gst-plugins-good

如果列表中有还没安装的gstplugin就先都安装上。

接着开始下载、安装了,记得在configure的时候prefix=/usr。

  • 下载lame源码包,编译安装
  • 下载文件:libid3tag、libmad、madplay(下载地址),编译安装。
    这时我遇到error:
    cc1: error: unrecognized command line option "-fforce-mem"
    解决方法就是编辑Makefile,删除字符串“-fforce-mem”
  • #yum install liboil-devel
  • 下载yasmxvidFFmpeg,并编译安装
  • 去下载gst-plugins-bad、gst-plugins-ugly、gst-ffmpeg(下载地址),编译安装

正常情况下,这时Moblin已经可以播放mp3 avi rm文件了。

在Moblin上安装五笔输入法

Moblin软件仓库中的软件很少,常用的axel links mplayer fcitx audacious等都没有,仓库里也没有ibus,安装输入法只能选scim了,可是scim只有智能拼音输入法。

scim里的五笔输入法名字叫scim-tables-chinese,库里没有只能下载源码编译,可是scim官网报“500”。

Moblin用的是yum软件管理系统,据说是基于fedora10,安装SCIM五笔输入法的思路是下载fedora10的RPM软件包,安装试试。

去http://rpm.pbone.net 找到了rpm 文件,下载,安装,依赖报错,查了查,依赖了很多的文件,放弃。

看到有src文件的下载,我再试试编译吧!

用yum安装上gcc-c++、scim-devel、rpm-build,这些都是编译scim-tables必需的。
下载src.rpm文件,开始编!

$rpmbuild --rebuild scim-tables-0.5.8-7.fc10.src.rpm

在~/rpmbuild/RPMS/i386/目录中就有了一堆编译好的rpm文件,扩展名是moblin.i386.rpm。

接下来安装两个就搞定五笔输入法了:
$sudo rpm -ivh scim-tables-0.5.8-7.moblin.i386.rpm
$sudo rpm -ivh scim-tables-chinese-0.5.8-7.moblin.i386.rpm