你好,我是目前在大学学习计算机科学专业的学生,对开发开源软件非常感兴趣,尤其是 ubuntu。有没有一个可以一站式阅读有关开发 ubuntu 的地方?
例如,我仔细阅读了 Python 的官方教程和文档,一切就绪了。我可以编写有用的应用程序。Ubuntu 或 Unity 有同等版本吗?我尝试下载 alpha 2,但每 5 分钟就会崩溃一次。我在 IRC 上被告知,这是由于 Xorg 堆栈的一些更改造成的。
现在我甚至无法看一眼新的 Unity,更不用说帮助开发它了。
任何帮助或指导均感激不尽。
答案1
为 Ubuntu 进行开发
感谢您的关注。只是需要澄清几点。没有像 Ubuntu 软件这样的东西(我知道您不是故意的)。所有 Ubuntu 特定的更改也可以在其他发行版中使用。他们的打包者必须将其打包。
Alpha 2 崩溃
Natty 仍在开发中,Xorg 转换仍在进行中。我建议您开始使用稳定版本。用于Maverick (10.10)
您的开发工作。这样,您将花更多时间开发应用程序,而不是遇到 alpha 错误。
如果您想为Natty
或做出贡献Unity
,那么您肯定需要运行 Natty Alphas。
Unity 开发
如果您想为 Unity 开发,那么您需要获取 Natty 并检出源代码。
bzr 分支 lp:unity
结帐分支中有一个文件,用于解释它的依赖项是什么以及如何构建它。
如果你想将你的代码放入 Unity Maintree,你需要签名Canonical Contributer Agreement
你不需要每次提交代码时都签名。一旦签名足够
Unity Bitesize 错误
参与的最佳方式是修复 Unity 中的小错误。Jorge Castro 定期发布 Bitesize 明星名单。以下是bitesize 错误列表,您可能想Jorge Castro
在 IRC 频道 #omg!ubuntu! 等上与 jcastro 交谈 - 他也经常在询问 Ubuntu 聊天),如果您需要额外的帮助。
这里有一个参与 Unity 开发的文档
在 Ubuntu 上进行开发
正如 Burli 指出的那样,Quickly
它是一款出色的开发工具。它可以处理很多事情。在 Ubuntu 上使用它非常容易,因为它与 Launchpad、PPA 等 Ubuntu 开发平台集成
快速处理样板代码并为您提供模板。例如,一个用于打包。每篇 LWN 文章
Released template is ubuntu-project, which automates working
with Ubuntu-compatible code (using Bazaar for version control,
Debian packaging, and Launchpad.net Personal Package Archives (PPA)
for releases).
您还可以阅读这篇 Ars Technica 文章来自 Ryan Paul
选择语言
据我所知,Python 是最受欢迎的开发选择。我可能错了,因为许多人也喜欢使用 Gtk/C 或 Boost/C++ 进行开发。
还有其他语言,例如 Vala,使用它您可以拥有本机应用程序但拥有更高级的语言。
如果您知道C#
,您可以使用它来创建使用 Gtk# 作为 UI 的应用程序。
答案2
这有点相关,我在考虑是否要发布它。
对于学生来说,进入开源开发(并看到自己编写的代码出现在 Ubuntu 中)最简单的方法之一就是参与Google 编程之夏。为现有软件添加新功能是你在学校无法获得的经验,但它会改变你对编程的看法。学生参与者会与来自开源项目的导师配对,导师将帮助他们入门并帮助他们解决困难部分。
此外,你还能拿到薪水,简历也会因此而增色不少。这是一次很棒的经历。我强烈建议你去看看。
答案3
Ubuntu Wiki 可能是一个很好的起点。特别是对于 Unity,请查看 Ayatana 项目
https://wiki.ubuntu.com/Ayatana
[编辑] 如果你喜欢 Python,也可以看看 Quickly
https://wiki.ubuntu.com/Quickly
这是一个项目管理系统,具有一些特殊功能,例如在 launchpad.net 上打包和分发源代码,这也是寻找信息的好地方