Ruby 语言 思想驱动生活

April 30, 2010

如何在launchpad上编译ppa时禁止pkgstriptranslations

Filed under: 技术 — Tags: , , , , , — liubin @ 10:49

这几天传一个东西到launchpad编译,最后出来的deb上所有.mo文件都没了。
原因大概就是可能pkgstriptranslations 被设为enable了。
看了一下他的manpage,发现可以通过把NO_PKG_MANGLE设为一个非空值来禁止此选项。
具体的话可以写到Makefile.am或者debian/rules里。

April 29, 2010

ed

Filed under: 技术 — Tags: , , , , , — liubin @ 13:28

ed is  a  line-oriented text editor

要做的很简单,在rc.local的exit 0(一般是最后一行)前追加需要启动的命令。

首先要找到最后一行,在其之前加入两行。

  1. ed rc.local << EOF
  2. $
  3. i
  4. "asdfsadfasdf"
  5. "234345345345"
  6. .
  7. wq
  8. EOF

第二行的$的意思是到文件最后一行,

第三行的意思为插入,

第四行和第五行为插入内容,

第六行表示输入结束,

第七行为写入后退出。

April 28, 2010

gconftool设置其他用户的选项

Filed under: 技术 — Tags: , , , — liubin @ 14:11

想用root设置其它用户的某些配置。比如叫test
su – test -c “gconftool-2 –set ….”是不行
其实用gconftool的一个–config-source选项就可以了,
指定格式为
–config-source=xml::/home/test/.gconf
这样就能设置test的内容了,如果我们去看里面相应的xml文件,发现结果是立即更新的
但是如果你有客户端程序(gconf client)已经运行的话,必须重启客户端才行
比如kill -HUP。
只重启 gconfd-2是不行的。
麻烦

April 24, 2010

如何在取消zenity –progress 之后杀死主进程

Filed under: 技术 — Tags: , , — liubin @ 17:35

比如 tar zxvf abc.tar.gz | zenity –progress
即使用户点击了zenity的窗口的取消菜单,tar 进程是不会自己终止的,
因为tar 进程还在运行,脚本也不会运行到下一行。
目前找到的第一种解决方法是
tar zxvf abc.tar.gz | zenity –progress &
#让他们去后台执行
#这样进入下面的循环
RUNNING=0
while [ $RUNNING -eq 0 ]
do
if [ -z "$(pidof zenity)" ]
then
pkill tar
RUNNING=1
fi
done

当然,问题有很多,比如还有别的zenity在运行,或者别的tar 在运行,都会出问题。。。
另外还有CPU问题

第二种解决方法,可能是最简单,且正确的了:

foo | (if `zenity –progress –auto-close –text=’In progress’ –title=’In progress’`;
then
echo ‘Job completed’
else
killall `basename $0`
exit
fi)

参考:https://bugs.launchpad.net/ubuntu/+source/zenity/+bug/220656

Powered by WordPress