summaryrefslogtreecommitdiffstats
path: root/dev/pkg/needed.mdwn
blob: a35bddd67f4c0c0635de1d3639792900e6cb5ba0 (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
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
[[!meta title="Needed Packages"]]

ProteanOS currently has few software packages.  This page lists software that
ProteanOS should eventually provide.


For ProteanOS 1.0
=================

IANA Time Zone Database (`tzdata`)
----------------------------------

<https://www.iana.org/time-zones>

Time Zone Data represents the history of local time for many representative
locations around the globe. It is updated periodically to reflect changes made
by political bodies to time zone boundaries, UTC offsets, and daylight-saving
rules.

popt (`popt`)
-------------

<http://rpm5.org/files/popt/> <https://directory.fsf.org/wiki/Popt>

The popt library parses command-line options.

The file `popt.ps` should be removed for SIP compliance (it's an unlicensed
excerpt from a book with embedded non-free fonts).

pkg-config (`pkg-config`)
-------------------------

<http://pkg-config.freedesktop.org/>

pkg-config is a helper tool used when compiling applications and libraries.

Depends on: `popt`, `glib` (packaged, [[SPF_1.0|dev/pkg/spf-2.0]])


Development
===========

file (`file`)
-------------

<http://www.darwinsys.com/file/>

file determines file type using magic numbers.

Perl 5 (`perl`)
---------------

<http://www.perl.org/>

Perl 5 is a language interpreter, especially popular in systems administration
and software build and installation systems.

Unmodified Perl 5 source is impossible to cross build without executing software
on the host system (in GNU Autoconf terms, the system for which the package is
built).  For more information, see this [mailing list thread][perl-cross] and
the [work by Neil Williams for Debian][debian-perl-cross].

[perl-cross]: https://lists.debian.org/debian-embedded/2012/06/msg00011.html
[debian-perl-cross]: http://www.linux.codehelp.co.uk/serendipity/index.php?/archives/239-Long-term-maintenance-of-perl-cross-build-support-in-Debian.html

GNU M4 (`m4`)
-------------

<https://www.gnu.org/software/m4/>

GNU M4 is a macro processor, notably used by GNU Autoconf.

Depends on: `perl`

GNU Autoconf (`autoconf`)
-------------------------

<https://www.gnu.org/software/autoconf/>

GNU Autoconf generates `configure` scripts that are used to configure software
packages for building.

Depends on: `m4`

GNU Automake (`automake`)
-------------------------

<https://www.gnu.org/software/automake/>

GNU Automake generates `Makefile.in` files that are used to build software
packages.

Depends on: `perl`, `autoconf`

GNU Libtool (`libtool`)
-----------------------

<https://www.gnu.org/software/libtool/>

GNU libtool is a generic library support script.  Libtool hides the complexity
of using shared libraries behind a consistent, portable interface.

Depends on: `file`, `autoconf`, `automake`


Administration
==============

Dropbear (`dropbear`)
---------------------

<http://matt.ucc.asn.au/dropbear/dropbear.html>

Dropbear is a small SSH server and client, in many ways compatible with OpenSSH.

A service script (`/etc/init.d/dropbear`) will need to be written, along with
`postinst` and `postrm` maintainer scripts to generate and delete the SSH host
key pair.

libnfnetlink (`libnfnetlink`)
-----------------------------

<http://www.netfilter.org/projects/libnfnetlink/index.html>

libnfnetlink is the low-level library for netfilter related kernel/userspace
communication.

iptables (`iptables`)
---------------------

<http://www.netfilter.org/projects/iptables/index.html>

iptables is the userspace command line program used to configure the Linux 2.4.x
and later IPv4 packet filtering ruleset.  It is targeted towards system
administrators.

Depends on: `libnfnetlink`

Lua 5.1 (`lua-5.1`)
-------------------

<http://www.lua.org/>

Lua is a powerful, fast, lightweight, embeddable scripting language interpreter.

LuCI (`luci`)
-------------

<http://luci.subsignal.org/trac>

LuCI is a free, clean, extensible and easily maintainable web user interface for
embedded devices.

One or more makefiles may need to be patched to support cross compiling.

There are lots of embedded code copies under `contrib/`; some or all of these
(e.g. uhttpd) should not be built.

Depends on: `iptables`, `lua-5.1`, maybe more