大纲
- 深度文化
- 深度开源
- 深度社区
深度 (团队) 文化
- 专注务实
- 开放心胸
- 乐于分享
- 求新求变
- 追求完美
深度开源
代码仓库 - gitcafe
代码仓库 - github
https://github.com/linuxdeepin
桌面环境
- 目前共 93 个项目
- 源码
- 建构脚本
- 打包脚本
- 完整重现我们的工作成果
贡献社区
- 取之于开源并回馈开源
- Patch 贡献
- 问题回报
- 专人参与开源项目
- 以 Linux 社区成长为己任
- 开发成果集成至其他发行版
- 建立市场以便于发布
- 长期目标
- 提升团队知名度
- 结识社区开发人员
- 降低 patch 推送时间及成本
- 减少技术债 (technical debt)
以 wine 项目参与为例
- 目的: 减少 Windows => Linux 成本
- 降低学习曲线
- 延后厂商投入成本
- wine 是十分有效的手段
- 但不是万灵丹
- 需要投入开发人员
wine 参与 - 目前情况
- 目前一共 3 名全职人员进行开发
- 参与方式
0. 发现问题/需要加强/实现的部份
0. 与 CrossWeavers 中国区开发人员讨论
0. 结论发至 wine 社区 - 提交的 patch 分布于以下模块
- gdiplus.dll
- ole32.dll
- mshtml.dll
- mlang.dll
- quartz.dll
- user32.dll
- wbemprox.dll
- iphlpapi.dll
- svchost.exe
- reg.exe
- cmd.exe
- Patch 收录情况
- 1/3 已合并至 wine upstream
- 2/3 在 CrossWeavers 版的 wine 仓库中
wine 参与 - 己集成 patch
- 共 11 个,
- Wed Jul 22 09:38:42 2015 +0800 - e48c3e466cb49e556db44725be19aabc58b9ce26
- Thu Jan 22 15:51:40 2015 +0800 - d5d4c19226273efe1ce1a11782bfbd70e58a70d3
- Thu Jan 22 15:08:38 2015 +0800 - c0020b3ac39712f20f3c040d308dca76ea1a059d
- Thu Jan 22 12:07:48 2015 +0800 - fd08da6035d2bfcd11818b9a7c1f2ad86a6172af
- Mon Dec 22 16:43:47 2014 +0800 - 5fa7402a36ee0e1238434598ff589e3de42f80cd
- ...
wine 参与 - 打个广告
- 我们需要牛人加入
- 尤其是领域如: GDI+, OpenGL/Direct3D, Audio/Video
- 能力要求 - 熟 C & Linux 编程, 开源工具
- 但是
- 不能碰读过泄漏的 Windows 代码
- 不能读过 Windows Research Kernel 的代码
贡献至其他发行版方面 - 以 Arch Linux 为例
- 由团队成员常态维护
- Deepin 2014 桌面可正常使用
- Deepin 2015 部份应用可用
- 成果已被上游收录
应用生态現況
- 打包成果无法重用
- 相依问题造成安装失败
- 安装中断造成包信息不全
- 升级造成的可用性问题
- API/ABI 变动造成兼容问题
- 应用资源占用无法控制
改善计划
- 短期目标
- 系统, 框架, 应用各自独立
- 以容器打包/发布/管理
- 固定 API/ABI 版本
- 元子化安装/更新
- selinux 安全管控
- 中长期目标
- 限制系统资源可见度
- 完善访问及授权机制
- 让非开源, 第三方应用更好的被管理
- 统一发行版间的打包方式
- 与 mobile 平台不同, Linux 桌面还有相当的工作量要投入
深度社区
现况
- 有各种沟通管道
官网
论坛
讨论空间 - http://bbs.deepin.org/
百科
Deepin 及开源相关知识库 - http://wiki.deepin.org/index.php?title=首页
博客
用作发布官方消息 - http://blog.deepin.org/
代码审查
https://cr.deepin.io/#/q/status:open
Bugzilla
User/Developer Mailing List
http://wiki.deepin.org/index.php?title=首页
IRC
http://webchat.freenode.net/?channels=deepin
其他
但是...
- 需求常无反馈 (但有处理), 或时间较长
- 项目进展不够透明
- 社区参与信息不清
这些问题急需解决
增加问题反馈速度
- 专人查看/收录 patch
- 定时查看 issue
- 改善工作习惯/任务重心及流程
- 堆动内部参与论坛/邮件列表/...讨论
- 增加即时讨论管道如 gitter
提供清楚的参与说明
- README.md
- Contribution guide
- Hacking Guide
- 补全源码注释
- 在线文档供查找
完善设施让社区能更早参与进来
- 构想/设计先于代码发布
- 开放 Jinkens 建构服务
- 开放变动快速的 experimental 源
- 缩短发布周期
- 版本发布加 tag & GPG sign
- Release 及 issue 的推送频道
最后
期待你的吐嘈, 让我们能做得更好