1 |
On Tue, 22 Apr 2008 23:33:56 +0530 |
2 |
Anant Narayanan <anant@g.o> wrote: |
3 |
|
4 |
> Welcome to Gentoo's edition of the Google Summer of Code, and |
5 |
> congratulations on your selection! To get you started, here's some |
6 |
> general information. This email should be followed by another email |
7 |
> from your mentor giving you more specific details. |
8 |
|
9 |
Ok, took me a bit longer than expected to get around to writing this |
10 |
mail, hope that's no problem for you. |
11 |
> Communicating |
12 |
|
13 |
> The community bonding period begins now and the purpose is |
14 |
> to familiarize you with our general community practices. It is *very |
15 |
> important* that you are in constant touch with your mentor |
16 |
> throughout the duration of the program. There are several channels |
17 |
> of communication that Gentoo developers use, and we'll go through |
18 |
> the most important of them: |
19 |
> |
20 |
> - Mailing Lists: gentoo-dev is the list where technical |
21 |
> discussions related to Gentoo not suited for more specific lists |
22 |
> takes place. We highly recommend you subscribe to this list and lurk |
23 |
> for a while to get a feel of what kind of questions are asked on it. |
24 |
> We would also like you to subscribe to the gentoo-soc mailing list in |
25 |
> order to receive important announcements related to the program. In |
26 |
> addition to these two lists, your mentor might also want you to |
27 |
> subscribe to another list, depending on your project. A complete |
28 |
> listing of all our mailing lists, along with information on how you |
29 |
> can subscribe to them is available on: |
30 |
> http://www.gentoo.org/main/en/lists.xml |
31 |
|
32 |
For mailing lists, I'd strongly suggest you subscribe at least to |
33 |
gentoo-dev, gentoo-dev-announce (to stay in touch with the general |
34 |
dev community), gentoo-portage-dev (for questions regarding your |
35 |
project) and gentoo-soc (for SoC related stuff). Except for gentoo-dev |
36 |
they all don't have a lot of traffic, so it should require a lot of |
37 |
time to follow them. |
38 |
|
39 |
> - IRC: A lot of Gentoo developers hang out in several |
40 |
> channels on the Freenode IRC channel. IRC is generally used for |
41 |
> real-time conversations and is very useful when you want a quick |
42 |
> reply. The starting point for you should be the #gentoo-soc channel; |
43 |
> your mentor will tell you which other channels you are recommended to |
44 |
> join. |
45 |
|
46 |
I've seen that you already hang out in #gentoo-portage, and that's |
47 |
generally also the first place if yo have any portage (or gentoolkit) |
48 |
related questions. Eventually you might also look into #gentoo-dev |
49 |
(moderated, let me know if you want voice in there) or #gentoo-dev-help |
50 |
for ebuild or other Gentoo related questions. |
51 |
Of course you can also contact me via /msg at any time. |
52 |
Note that I'm often not watching my IRC client when online, so it can |
53 |
take some time before you get a reply. When it's important I suggest |
54 |
you also send an email, or (if it's a more generic question) ask around |
55 |
on one of the IRC channels/mailing lists. As said before, I'm located |
56 |
in the CEST timezone (UTC+2), though that doesn't mean much for my IRC |
57 |
availability. The best time to catch me is probably between 16:00 and |
58 |
22:00 UTC, but that's no guarantee (also I sometimes won't be on IRC |
59 |
for a couple of days, but I'll still read email). |
60 |
|
61 |
> - Bugzilla: Gentoo maintains a bug database on: http:// |
62 |
> bugs.gentoo.org/. We recommend you sign up for an account there. |
63 |
> Depending on your project, your mentor may expect you to file bugs |
64 |
> and follow them. Whenever your project involves changes to code |
65 |
> maintained by existing Gentoo developers, you will usually have to |
66 |
> file a bug and follow it up. Your mentor will tell you whether or not |
67 |
> you will be using Bugzilla, and if yes, to what extent. |
68 |
|
69 |
While you don't have to file bugs to get your code "in", I'd suggest |
70 |
that you take a close look at existing bugs regarding revdep-rebuild to |
71 |
get a feeling for the problems it has. You might also want to watch the |
72 |
tools-portage@g.o and/or dev-portage@g.o aliases in |
73 |
bugzilla to get a feeling about how development is going on (that's |
74 |
going to be a lot of traffic however). |
75 |
|
76 |
> Code Management |
77 |
> - Gentoo uses a mix of CVS, SVN and Git internally. We |
78 |
> recommend you use an external code hosting service to help manage |
79 |
> your code. Some of the popular ones are: |
80 |
> http://code.google.com/hosting/(SVN), http://sourceforge.net/ |
81 |
> (CVS/SVN) and http://repo.or.cz/ (Git). One of the explicit aims of |
82 |
> the Community Bonding period is to get you upto speed with the |
83 |
> version control system you will be working with. Please contact your |
84 |
> mentor for help *before* signing up with a particular service. In |
85 |
> some cases, you may be expected to work on an existing repository - |
86 |
> again - contact your mentor for specifics. |
87 |
|
88 |
I don't really care what system or service you're going to use, as long |
89 |
as it has a simple way for me to see the code (best via webinterface so |
90 |
I can take a look even when not at my dev system). You're not going to |
91 |
work in the portage repository for several (administrative) reasons, so |
92 |
you'll have to track it via anonsvn.gentoo.org. |
93 |
At the end of the project I'll expect some kind of patch that applies |
94 |
against a specified (not too old) revision of the portage repository, |
95 |
but that's not something to worry about now. |
96 |
|
97 |
> Progress Reports |
98 |
> - We will be expecting weekly progress reports from each of |
99 |
> you at the very least. Feel free to report more often! Your mentor |
100 |
> will tell you his preferred method of communication, but you must |
101 |
> also post your weekly progress reports to the gentoo-soc mailing |
102 |
> list, as well as on your blog for all to see. Make sure that you |
103 |
> inform your mentor well in advance if you plan to be missing for a |
104 |
> week or more (vacation, exams etc.) |
105 |
|
106 |
For progress reports, it's sufficient if you CC me on the report to |
107 |
the gentoo-soc list (I'm subscribed to the list, but a CC makes it |
108 |
easier to find things later). I suggest you stick to a specific day of |
109 |
the week for your progress reports, but it's no big deal if the |
110 |
interval between reports varies a bit. Just if you haven't made any |
111 |
reports for two weeks in a row without notification I'll start to worry. |
112 |
|
113 |
Now for some advice regarding the early phase of your project: |
114 |
- The first thing you have to do is to become very familiar with the |
115 |
underlying problem as there are a lot of details there to understand. A |
116 |
good starting point is the ld.so manpage to understand how the linker |
117 |
works, also check bugzilla and the forums for some common problems |
118 |
with revdep-rebuild. If you want to you could also take a look at the |
119 |
new FEATURES=preserve-libs functionality in portage-2.2 for some code |
120 |
that has a related purpose to your project, but for that you'll have to |
121 |
actually dig into nasty portage code (and the current code will soon be |
122 |
rewritten due to a number of conceptual problems). |
123 |
- Actually read and understand revdep-rebuild (and eventually its |
124 |
clones). One of the main problems you'll have to deal with are the |
125 |
numerours details, corner cases and exceptions implemented there. Might |
126 |
be worth to write a little spec about revdep-rebuild before you really |
127 |
start coding (would also make evaluations a bit easier for me ;) |
128 |
- Understand the portage subsystems you're going to use. That includes |
129 |
the PackageSet interface as well as certain parts of the |
130 |
portage.dbapi.vartree module (in particular the LibraryPackageMap |
131 |
class, though I'm currently replacing that with a new LinkageMap class, |
132 |
so you might want to wait a bit on that) |
133 |
|
134 |
Other than that I suggest that we come together for a meeting on IRC |
135 |
sometime during the next two weeks to come up with a roadmap until the |
136 |
mid-term evaulations and discuss any questions you (or I) still have. |
137 |
Let me know when you think would be a good time (I'm quite flexible as |
138 |
long as it's between 16:00 and 0:00 UTC). |
139 |
|
140 |
Oh, and welcome to Gentoo :) |
141 |
|
142 |
Marius |
143 |
|
144 |
-- |
145 |
Marius Mauch <google-soc@××××××.de> |
146 |
-- |
147 |
gentoo-soc@l.g.o mailing list |