先例行骂某狗,增加姐工作量…
然后介绍我的软件包的原理:
它本质上是一个脚本,从 Lauchpad fcitx-sogoupinyin 取 happyaron 预编译的二进制文件(我们版权条款是最严谨的,所以官方不能 host,另外建议其它发行版也不要 host,因为某狗只要动动手腕就有你折腾的了,即使不动手腕,你也在事实上违反了某狗的禁止分发条款,尤其是这种条款没有授予你的发行版的情况下),然后在用户本机上安装。
而 RPM 起到的作用是进行文件版本管理,如果你只是用脚本安装,卸载比较麻烦(至少需要一个同等规模的脚本对伐),而 RPM 可以 track 所有文件,所以卸载这个 RPM 就卸载掉了所有文件。而我 RPM 只包了一个脚本,脚本是我写的,GPL-2.0+ 发布,所以能进发行版。
但是这两者是风马牛不相及的对伐,本小姐使用了 RPM 的高阶科技,update-scripts 和 update-messages
简单说,RPM 是适用于企业级分发的。于是你想给企业版用户弹个最终用户协议,不同意直接卸载。RPM 是支持的。这应该是红帽子的设计。好吧我用它跑个脚本。(其它发行版比如 Arch 你得找到属于你的这种机制才能做包,不过似乎你的 PKGBUILD 一直是在本地弄的…)
打包的时候 touch 一下最终要在用户系统上出现的东西(这样才能拥有文件位置,从而控制文件),然后脚本在用户系统上完成最终的下载安装。
测试了下,正如老 K 所说,和自编译版本没什么不同。所以除非你有特别特别的洁癖。都是可以用这个包的。
理论上完全兼容红帽子系列和其它 RPM 系列(你需要看下你有没有 /var/adm/update-messages 这个文件夹)。
openSUSE 安装:
在 M17N 源里,加源安装:
sudo zypper ar -f http://download.opensuse.org/repositories/M17N/openSUSE_12.3/ M17N:12.3
sudo zypper ref
sudo zypper in fcitx-sogoupinyin
不过我刚提交,下载服务器和镜像服务器里应该都没有。所以我就直接把 RPM 发上来啦。
本发行版的和红帽的下 fcitx-sogoupinyin-clean.tar.gz 解压后根据你的系统版本安装
可以用
uname -m
看,除了 x86_64 其它都装 i586。把不用的那个删了。
sudo zypper in fcitx-sougoupinyin-*
其它 RPM 发行版可以下 fcitx-sogoupinyin-clean-source.tar.gz 重编:
rpmbuild --rebuild *.src.rpm
不过似乎我那个就是个脚本,你直接
sudo rpm -ivh fcitx-sogoupinyin-*.rpm
来装也没问题。
另外,安装它的时候会联网下载大约 28MB 数据,教育网请自行斟酌。
PS:这东西版权是我个人的,跟某狗没关系。所以不是某狗发慈悲,是我比较厉害。
其它网站转载请加 bbs.suse.org.cn 链接,其它发行版取用,请在这里和我吱一声。
fcitx-sogoupinyin-clean-source.tar.gz (3.96 KB)
fcitx-sogoupinyin-clean.tar.gz (5.64 KB)