MesosCon 2014

最近有计划重拾 Blog,写一些工作相关的事情。目前做的工作和 Mesos、Docker、Spark 等相关,所以主要也就是这些。 Mesos 和 MesosCon Apache Mesos 是伯克利 AMPLab 开发的一套集群资源管理系统,简单来说就是能将各种长短任务、服务、大数据计算(比如 Hadoop、Spark、Storm)等等全都整合在一个集群中的一套系统。 MesosCon 顾名思义,就是 Mesos 的技术峰会,各种使用 Mesos 技术,或者相关的公司(Twitter、Netflix、Google 等)会轮番到上面吹牛。这次是第一次 MesosCon,8 月 21 日在芝加哥举行。 下面就说说一些吹牛中的亮点,完整的日程在这里。 Mesos 0.20.0 首先是 Mesos 的新版本特性: 原生的 Docker 支持。也就是用 Docker 来隔离任务,这无疑是众望所归。 支持在一台机器上使用多个 Containerizer。如果我没理解错,意思就是现在可以让 Hadoop 运行在 CGroups...

最近折腾的一些新 Vim 插件

最近又带薪折腾 Vim 了,找到很多有意思的插件,在此分享一下。这里以 VAM(Vim Addon Manager)中的名字为准,大家可以直接添加这些名字安装相应插件。 sensible 相信大家的 .vimrc 里面都设置了 syntax enable 之类的选项, sensible 这个插件就收集了很多这样“显而易见”应该被设置的选项,开启这个插件,让你的 .vimrc 干净一些吧~ ctrlp 是不是觉得 Command-T 拖慢了你的启动速度?每次更新要重新编译也很麻烦?ctrlp 是这样一个有纯 vimscript 编写的文件检索插件。 它很贴心的一个功能是会根据版本控制系统自动确定项目根目录,查找文件实在是比 Command-T 死板的方式顺手多了。而且与后者的快捷键是兼容的哦。 ag 还在用老掉牙的 ack 么? ag 使用纯 C 编写,相比 Perl 编写的 ack 速度快了不止一倍!当然该有的功能一个不少啦,另外你还可以享受名字短 33%...

在 Arch 中安装 Arch

为了业界良心我又回来写博客了。 工作的原因接触虚机技术比较多,周末没事就搭了个 LXC 玩玩,当然也有很大部分因素是依云兄那篇文章的鼓动。过程稍微有点麻烦,记录一下。(什么你不知道什么是 LXC?LXC 就是那个啥啊,算了懒得解释。) 参考资料 根据倒序原则,先上资料(排名不分先后 ;D): Arch Wiki Funtoo Wiki Gentoo Wiki LXC Manual LXC Howto 宿主机配置 编译内核 这里宿主机和客户机都是 Arch,宿主机上的配置主要是重新编译内核,之前下不定决心搞就是因为这个,不过其实花不了多长时间。所需内核参数见上面的参考资料。 安装工具 重启后安装 LXC 相关工具: $ yaourt -S lxc bridge-utils 配置网络 我用的无线网卡,不能桥接,只能 NAT 转发。用有线的话估计 NetworkManager 就能配置了。 这里说 NAT...

KWin 可能官方支持 Appmenu

Appmenu 是什么?看视频: http://youtu.be/x1bm7Q6_SH4 简单来说,就是通过 DBusMenu 将原本的菜单栏,变成标题栏中的一个按钮,以节省空间。视频中还支持另外一种类似全局菜单的布局,适合不同需要的人。 目前这种支持是非官方的,需要通过补丁才能够使用, Arch 用户可以安装 AUR 中的 kde-workspace-appmenu 包,当然只对 KDE 用户有用…… 现在,作者正在努力将代码提交到主线,快的话,可能 KDE 4.10 的时候, KWin 就有这个功能啦(当然是可选的)!个人觉得这种支持对于大屏幕来说,比全局菜单更实用,大家觉得呢? 如果你关注代码审核动态,可以关注 KDE 的 ReviewBoard ,另外,项目的代码在 Gitorious ,有兴趣的话可以研究一下。 PS: 这年头更新技术博客的都是业界良心~ ^_^

那些在 Python 3 中闪亮的

大家好,又到了科普时间,咳咳。 距离 Python 3 发布已经有一段时间了,主流发行版都已经带了 Python 3 的软件包,甚至 Arch 等发行版还将其设为了默认的 Python 版本。多数的库也已经带了 Python 3 的支持(也有 Twisted、Django 等例外),是不是偶尔也想着要不要将自己的程序升级一下呢? 昨天稍微有时间研究了一下 Python 3,就将我在文档中找到的有趣新特性分享给大家。 默认返回迭代器(Iterator) print 成为一个函数、默认不用地板除(Floor Divide)之类的我就不说了,想必地球人都知道有这么回事。 值得一提的是,原来需要使用 xrange 、 iteritems 等等函数和方法才能返回的迭代器现在成为了默认,替代了原来返回列表的函数。就连 map 、 filter 、 zip 等函数都返回迭代器了。 大家都知道相对于返回完整的列表,迭代器省去了一次生成所有元素的开销,并且在循环 break 的时候,就停止迭代,防止了额外的开销,所以一般情况下迭代器要比列表快得多。 如果你仍然需要完整列表,可以通过 list(some_iter)...

你的下一个文件系统——Btrfs

提起 Btrfs ,相信广大折腾帝们都不会陌生,被誉为“下一代 Linux 文件系统”的它,具有扩展性好、支持数据校验、支持多设备管理等等强大特性,使得 Ext4 也只能成为悲剧的过渡产品,还不赶快找一个 Ubuntu 10.10、Fedora 15、Meego 什么的试一下? 慢着!支持什么多设备、什么数据校验跟你有一毛钱关系啊?根据 Ext4 和 Btrfs 的对比 ,Btrfs 在速度上似乎还差上一些呢!这么说 Btrfs 其实挺垃圾的? 本文就来为你从普通[STRIKEOUT:折腾帝]用户的角度来解说一下 Btrfs 到底有什么好。如果你想从技术层面了解 Btrfs ,可以看一下《 新一代 Linux 文件系统 btrfs 简介 》。 注意:Btrfs 还处于实验性阶段,截止到本文写作为止,其磁盘检查工具 Btrfsck 还不能修复文件系统,请不要在工作环境下使用 Btrfs,以免数据丢失!再次警告,这不是演习! 错误修复 在正式开始讲之前,我假定你已经把系统弄坏了,你已经看到了系统提示你“You are on...

Wayland 独立运行的视频一段

X 的替代之一 Wayland 正在快速的开发之中,几乎每天都会收到很多来自其他开发者的补丁和反馈。随着开发的进行,在 官方网站 上的 构建说明 也日趋完善,普通用户也可以参照这份说明,构建一份自己的 Wayland 来体验一下了。由于构建说明很简单,这里就不再重复,有兴趣的朋友可以去官方网站上看一下,如果有不懂的地方可以在本文留言。 这里献上一段视频,是 Wayland 脱离 X 直接运行的情况,所以是用手机拍摄的,清晰度不是很高,不过足以说明问题(当然还是 youtube 上的,请自备工具): http://youtu.be/9R3n7W_wfzM

编译最新 Git 版本 GNOME Shell(附视频)

相信很多人都知道,GNOME 3 最早今年 4 月份就会正式发布了,甚至 GNOME 3 的官方网站 都已经上线,那么 GNOME 3 的重头戏,GNOME Shell,现在已经发展到什么程度了呢? 如果你注意 GNOME 3 官网的最下面,可能已经发现官方提供的方法了,那就是 jhbuild!之前也曾经试用 jhbuild 编译过 GNOME Shell,不过最后都不能启动,这次克服了点小困难,终于成功了,简单说一下: 首先你要有至少 1.9.2 版本的 xulrunner,这个根据各个发行版自己解决吧~Arch Linux 下直接安装 xulrunner 这个包即可。 依次运行下面的命令: $ sudo rm -rf /usr/lib*/*.la $ curl -O http://git.gnome.org/browse/gnome-shell/plain/tools/build/gnome-shell-build-setup.sh...

星际译王 StarDict 更新 3.0.2

提起 Linux 桌面上的翻译软件,就不得不想起星际译王,这个东西让人又爱又恨,它几乎是 Linux 上唯一一个稳定而功能强大的字典软件,无奈 BUG 多多,许久不更新了,作者胡正似乎沉迷于佛学和写书,久久也没有更新。 不过一位俄罗斯开发者 kubtek 的加入,让已经三年多没有更新过的星际译王重获了新生。事实上,从 2009 年 10 月开始,kubtek 就一直没有停止过开发星际译王,终于在两天前,发布了自开发以来第一个正式版本 3.0.2。 从修订记录来看, 3.0.2 相对于 3.0.1 的主要改变有:添加日志系统、新的文本词典格式、替换了广告插件、恢复在 Windows 和 Mac OS X 上的开发工作、Windows 版本特定的一些调整、修复了 Dict.cn 插件并在未找到单词时显示单词建议,当然 BUG 修复肯定不止这些。 总体来说,没有太多新的特性,属于调整期的维护版本。不过,想来在接下来的版本里,星际译王能够给我们更多惊喜。 更多信息可以在 星际译王的项目主页 上看到。 PS:考试完成,一身轻松!

使用 gtkaml 编写 GTK+ 界面

想必大家对 GTK+ 跑在 HTML5 上 已经不感到惊讶了,那么用 XML 编写 GTK+ 界面呢?好吧,Glade 是这样做的,不过今天介绍的不是它,而是 gtkaml。 按照 官网的介绍 ,gtkaml 是基于 Vala 的一种标记语言,旨在使用简洁的 XML 语法来描述 GTK+ 界面,乍看起来和 Glade 没有什么区别。 不过 gtkaml 采用的是类似于 Glade 2 的转换代码方式,将 XML 转换成 Vala 代码再进行编译。不过,不用担心图形界面和实际代码分离的问题,因为 gtkaml 在 XML 中预留了 Vala 代码的空间,也就是说,你不需要面对自动转换得到的很可能难懂的代码进行修改,而只需要在...