去年的8月份我们举办了第一次程序设计竞赛,今年开始我们的年度活动改为「主题竞赛」,即围绕一个主题建立项目、展开创造。
今年的主题是「输入法」。
参赛要求:个人或不超过三人的团队,发起输入法相关的项目,目标是增强 Linux 下输入体验和/或功能。
项目要求及参赛流程:
* 如果是已经存在的项目,则该项目的第一次 commit 必须在2个月之内(4月份之后)。
* 使用合理方案达到目标,包括项目运营可能的花费/资源控制,因为竞赛优秀项目可能将作为社区支持项目运营。实现方法不限,如果是开发程序则不限语言。
* 启动项目后在 社区项目 版块发新贴简单介绍该项目,包括具体项目目标、项目成员(如果是团队项目)、项目描述、地址以及demo(如果有的话),请在主题帖持续更新项目进度。然后在本贴下贴上项目主题帖的链接以表示参与竞赛。
* 竞赛报名截止到2013年8月19日。
* 竞赛后续事项将在8月19日前发布。
本次主题竞赛奖品:
* 一等奖(1 名): Amazon Kindle Paperwhite 一台
* 二等奖(1 名): Samsung 840 Series SSD 120G 一块
* 三等奖(1 名): Sennheiser MX581 耳机一部
* 参与即有机会获得社区纪念品。
在您下一次更新之时,您将会得到如下类似的信息:
error: failed to commit transaction (conflicting files)
filesystem: /bin exists in filesystem
本次更新将所有二进制文件统一合并到了 /usr/bin 目录。这一步移除了对于 Arch 系统无意义的区分并且简化了开发组的包维护工作。请移步这个帖子了解此次变动的原因。
下面的说明将可以保证安全更新:
1) 将所有非官方包中 /bin, /sbin 或者 /usr/sbin 目录下的文件移动到 /usr/bin 下。不在仓库中而需要修复的包列表可以使用如下命令生成:
$ pacman -Qqo /bin /sbin /usr/sbin | pacman -Qm -
同时使用如下命令检查从非官方仓库安装的包:
$ paclist <repo> | awk ' { print $1 } ' | pacman -Ql - | grep ' /s\?bin/\| /usr/sbin/'
2) 确保任何在 IgnorePkg 或 IgnoreGroup 中的包没有文件存在于 /bin, /sbin 或 /usr/sbin。如果有,请手动修复。
3) 如果您有在 /bin, /sbin 或 /usr/sbin 中有不属于任何包的文件,您需要移动它们。使用如下命令查找这些文件的列表:
$ find /bin /sbin /usr/sbin -exec pacman -Qo -- {} + >/dev/null
4) 如果您使用 autofs,请确保所有分区已挂载。此次更新之后,它们可能不再会在需要时自动挂载。
5) 升级您的系统。
在执行此次更新之前,您可能希望有另一个拥有 root 权限的终端保持打开以防发生意外,特别是通过 ssh 升级之时。
# pacman -Syu --ignore filesystem,bash
# pacman -S bash
# pacman -Su
大家好!
社区管理员依云(百合仙子、lilydjwg) 建立了新的个人软件包仓库。由依云个人打包、维护的软件,大部分在 AUR 由其或其他人维护。目前内容很少,不过会慢慢增加的 🙂
配置:
导入密钥
sudo pacman-key --lsign-key 95FF0792
在 /etc/pacman.conf 添加:
[lilydjwg]
Server = http://lilydjwg.vim-cn.com/repo/$arch
SigLevel = Required DatabaseOptional
相关信息请看 https://bbs.archlinuxcn.org/viewtopic.php?id=1695
注意事项(2013-04-14)
- fcitx-lilydjwg-git 转移到 lilydjwg 个人仓库维护。同时版本号从原来的打包日期变更为 fcitx 官方版本号+git 提交简名(与 python-you-get-git 类似)。请手工升级。
- WPS Office 将在近期加入 lilydjwg 仓库。维护时间到 Arch 官方仓库或中文社区仓库收录该软件包。
遇见 netctl: 一个基于配置文件的 systemd 网络命令行程序。在不久之后,老旧的 netcfg 将被移出 [core]。所有 netcfg 用户请尽快迁移至 netctl。迁移需要手动完成,并且有可能无法访问网络。因此请注意阅读 man 手册 (netctl(1), netctl.profile(5) 和 netctl.special(7))。
netclt 的设计是让 systemd 爱好者喜欢它的使用方式,而 netcfg 用户将会很快熟悉它的配置文件。netctl 一同带来的是基于 ncurses 的 wifi 连接助理叫做 wifi-menu。
当你安装 netctl时,netcfg 将被移除,但是已启用的 systemd 服务将会保留直到手动禁用。netctl wiki 有一些关于从 netcfg 迁移的额外信息。
MariaDB 现在是我们官方默认的 MySQL 实现。MariaDB 基本上和 MySQL 差不多,所以升级应该非常容易。但是由于剩下的兼容性考量,自动替换升级尚未完成。
我们推荐所有用户升级。MySQL 将在一个月内从仓库移动到 AUR。
希望切换的用户需要安装 mariadb, libmariadbclient 或者 mariadb-clients 并执行 mysql_upgrade 来迁移原来的系统。
迁移样例:
# systemctl stop mysqld
# pacman -S mariadb libmariadbclient mariadb-clients
# systemctl start mysqld
# mysql_upgrade -p
percona-server 是另一个在 [community] 中的 MySQL fork。它应当更贴近 Oracle MySQL Enterprise, 但是不包含 MariaDB 中的新功能。
与 [extra] 中的 mysql 5.5.30-7 一道,所有依赖它的包已经使用 MariaDB 组件重建。其他包维护者应当修改他们的包依赖为 MariaDB 的包。
更多信息可以在我们的 邮件列表 里找到。
Andrea Scarpino 写道:
[extra] 里已有一个新的 qt4 包,它是用来取代目前的 qt 包的。
所有依赖 qt 的软件包都需要重建,并让它们依赖 qt4。我们已经为所有官方的包做了调整,但你将需要把从 AUR 安装的依赖 qt 的包调整为依赖 qt4。
[extra] 里已经有 qt 5.x 了。如果你同时安装了 qt5-base 和 qt4,任何 qt 工具都会使用版本为 5.x 的 qt。当然,我们提供了 *-qt4 的软链接,这样当需要时你就可以明确地强制使用 4.x 版本。
最新的 lvm2 2.02.98-3 软件包包含了自动激活LVM卷的 lvmetad 工具。这导致了以下改变:
- initramfs 的
lvm2 钩子扩展(hook)现在需要依赖 udev 扩展。
/etc/lvm/lvm.conf 中必须配置上 use_lvmetad = 1。新软件包中这是默认的,升级时请自行检查合并 lvm.conf.pacnew 文件。
- 可以通过设置
/etc/lvm/lvm.conf 中的 auto_activation_volume_list 来限制自动激活的 LVM卷。如果不清楚如何配置,请保持其被注释掉的状态。
- 如果需要监视功能(快照功能依赖于此),请执行
systemctl enable lvm-monitoring.service。
- 不再需要
lvmwait 内核命令,它现在没任何用处了。
如果使用 pacman -Syu 同时升级 device-mapper、linux 和 lvm2,会出现一条 /sbin/dmsetup 文件丢失的错误。请在更新后再执行一遍 mkinitcpio -p linux,以避免可能出现的错误。
Tom Gundersen 写道:
正如先前所宣布的,initscripts 将不再接受任何测试,且很多包已不再支持它。仍然在使用他们的用户请立即切换到 systemd。
initscripts、sysvinit 和各种 rc 脚本将逐渐从仓库中删除,以避免混淆。
由于 /lib 链接从 glibc 软件包移动到了 filesystem 软件包,请务必同时更新 glibc-2.12-2 和 filesystem-2013.01-1。使用“pacman -Syu”更新时,这一切都会自动完成。切记,不要单独更新其中之一,更不要使用“–force”强行更新……
x86_64 平台下,升级可能时出现 /usr/lib64 下的文件冲突。所有在该目录下拥有文件的官方软件包都已经更新过了,单独更新发生冲突的软件包即可。至于 AUR 中的软件包,应当把该目录下的文件全部安装到 /usr/lib。
felixonmars 写道:
首先解释一下, 对于[testing] 和 [community-testing], 一般软件包在里面的理由有:
1. [core]或者[extra]有重要库rebuild, 相关[community]包完成后被放到[community-staging], 然后统一移到[community-testing] (相关[core]或者[extra]的包被移到[testing]). 这个时候每个包能不能工作是没有人试过的!
2. 一些TU维护自己并不使用的[community]包, 当包上游版本更新, 或者自己修了个bug并且自己认为”应该没问题吧”, 然后因为没测试, 所以放进 [community-testing] 等到一定测试量没问题后再放进 [community]; 或者是一些DEV维护自己并不使用的[core]或者[extra], 然后…然后放进[testing]. 这个时候每个包能不能工作也是没有人试过的!
所以作为一只TU, 我表示[testing]和[community-testing]真心只是给比较懂系统急救+英语+报bug的人用的… Arch的[testing]并不像其他发行版那样会领先”稳定”仓库多少, 因为unstable版本的软件照样在”稳定”仓库里, 通常软件在[testing]和[community-testing]不会待很久(除非有巨大的问题, 那样你也就惨了).
所以对于新手和身边救急用具准备不足的老手, 强烈建议不要开启[testing]和[community-testing].