summaryrefslogtreecommitdiffstats
path: root/dev.mdwn
blob: 9d283b289eb8dd8d94762cc9b663ab0505678225 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
[[!meta title="Development"]]

ProteanOS needs more contributors!  If you're interested in getting involved,
please [[contact_us|contact]] on the IRC channel and/or mailing list.

There are a variety of ways in which you can help shape the future of this
operating system distribution:

Software Packaging
==================

<img src="/media/tango-64/package-x-generic.png" alt="software packaging"
class="icon-64-top-left">

Packaging is the preparation of build instructions and metadata for software
programs and libraries to be built and installed on users' systems.

Source packages have a documented [format][spf-2.0], and
[[tutorials_on_packaging|doc/pkg]] are available.

There is always [[more_software_to_be_packaged|dev/pkg/needed]], and
[[one_package|dev/pkg/spf-2.0]] needs to be updated to the latest package
format.  [15 packages][src_pkgs_spring2015] prepared by a team of students in
the spring 2015 NJIT CCS Capstone program need to be reviewed for uploading to
the package archive.

But the work doesn't end after a package is prepared and uploaded; maintaining
existing packages is also important.  ProteanOS currently has
[[81_source_packages_(403_binary_packages)|dev/releases/1/packages]].  Many of
these have newer upstream versions and can be updated.  Some have patches that
can be dropped when updating to a newer upstream version.  Some others have
patches that may be of interest outside ProteanOS but have not yet been
submitted upstream.

Most source packages are maintained in [Git repositories][git-pkg].  You can
request a repository for your package on the [mailing list][proteanos-dev].  To
make changes to a package, it is recommended that you send patches to the
[mailing list][proteanos-dev] and the maintainer listed in the package's
`control` file.  If you would like to become a co-maintainer or take over
maintenance of a package, you should coordinate with the listed maintainer (if
reachable) and the [mailing list][proteanos-dev] to gain commit rights to the
package's Git repository.

[spf-2.0]: http://specs.proteanos.com/spf-2.0/
[git-pkg]: http://git.proteanos.com/pkg/
[src_pkgs_spring2015]: http://files.proteanos.com/pub/pkg/src_pkgs_spring2015/
[proteanos-dev]: http://lists.proteanos.com/proteanos-dev/


Software Development
====================

<img src="/media/tango-64/preferences-system.png" alt="software development"
class="icon-64-top-left">

The ProteanOS community maintains and uses a number of distribution development
and infrastructure tools, including the [ProteanOS Development Kit][prokit],
[opkbuild][], [[opkhelper|dev/opkhelper]], the
[[ProteanOS_Archive_Manager|dev/pro-archman]], and the
[Text::MarkdownBook][markdownbook] Perl library.  Bug reports, feature
suggestions, and patches are welcome.

A simple build daemon infrastructure has been
[[designed|dev/todo/buildd-infra]].

[opkbuild]: http://git.proteanos.com/opkbuild/opkbuild.git/
[prokit]: http://git.proteanos.com/prokit/prokit.git/
[markdownbook]: http://git.proteanos.com/markdownbook/markdownbook.git/


Technical Documentation
=======================

<img src="/media/tango-64/text-editor.png" alt="technical documentation"
class="icon-64-top-left">

Specifications
--------------

In development is the [Source Package Format 2.0 specification][spf-2.0].

[[Instructions|dev/specs]] to clone and build the specifications are available.

Policies
--------

To be written is a Packaging Policy.


<h1 style="clear: left;">Release Series</h1>

ProteanOS is released in [[series|dev/releases]].  Development is currently
focused on [[release_series_1|dev/releases/1]].

[[See_the_list_of_remaining_tasks_for_ProteanOS_1.0|dev/releases/1/todo]].


<h1 style="clear: left;">Architecture Ports</h1>

ProteanOS is designed to portable to many different
[[hardware_architectures|dev/ports/hardware]],
[[system_kernels|dev/ports/kernels]], and
[[C/C++_libraries|dev/ports/libraries]].  A number of [[ports|dev/ports/list]]
are planned.