1 |
On Mon, Dec 17, 2012 at 5:32 PM, Anthony G. Basile <blueness@g.o> wrote: |
2 |
> Please comment. If it gets systematized enough, it can be a guide to future |
3 |
> devs too. |
4 |
|
5 |
Hi, what is the level of the students, what are the prerequisites |
6 |
(i.e., have they already seen some systems programming using C?), and |
7 |
how many weekly hours? Have you already designed some assignments? I |
8 |
can think of the following: |
9 |
|
10 |
1. Create a small makefile-based project with a separate shared |
11 |
library, an executable, and a man page. Determine run-time and |
12 |
build-time dependencies. Then convert to autotools, update |
13 |
dependencies. Do it all on GitHub, with a separate branch for |
14 |
converting to autotools. |
15 |
|
16 |
2. Write an ebuild for the project above, maintained in an overlay |
17 |
(also on GitHub), with sources fetched from GitHub. Add some small |
18 |
patch to configure.ac in the ebuild. Add USE flags. Add "make check" |
19 |
support to the build system, test with FEATURES=test. Many |
20 |
ebuild-related tasks can be easily added (e.g. installing init.d |
21 |
scripts). |
22 |
|
23 |
3. Take an old-version ebuild for a project with a known bug, fetch |
24 |
the relevant git tag, and bisect to find the bug. Prepare a patch, |
25 |
describe patch submission process. |
26 |
|
27 |
Wrt. subjects covered, will you cover sandboxing, installing to image |
28 |
vs. merging to live system, etc.? I would expect students to like such |
29 |
stuff. |
30 |
|
31 |
-- |
32 |
Maxim Kammerer |
33 |
Liberté Linux: http://dee.su/liberte |