-
Notifications
You must be signed in to change notification settings - Fork 10
/
Copy pathkpack.5.scdoc
98 lines (71 loc) · 2.91 KB
/
kpack.5.scdoc
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
KPACK(5)
# NAME
kpack - KnightOS package configuration files
# DESCRIPTION
KnightOS packages contain a lot of useful metadata that identifies authorship
information, package descriptions, dependencies, and so on.
A simple package.config looks like this:
```
[meta]
name=packagename
repo=community
version=1.0.0
```
Only these three properties are required, the rest are optional. You may use
comments by starting a line with #.
*name*
The name of the package.
*repo*
The package repository. The following repositories are tracked upstream:
- _core_: Packages required for system function
- _extra_: Extra packages from KnightOS developers
- _community_: Packages written by the community at large
- _ports_: Software ported from other platforms
- _nonfree_: Software distributed under the terms of a license that has not
been approved by the FSF
This only applies to the official KnightOS distribution. If you are running
your own distribution, then you are of course free to package software however
you please.
*version*
The current package version. This _must_ be in the format MAJOR.MINOR.PATCH.
See semantic versioning http://semver.org/ for details.
*description* (optional)
A user-friendly description of this package.
*dependencies* (optional)
A list of packages that this package depends on. These should be fully
qualified package names, separated by spaces. You may optionally include a
minimum required version. Example:
dependencies=corelib kpm:1.0.0
*capabilities* (optional)
Lists capabilities required of the target device. For example, you might
require USB support. Separate each with spaces. Example:
```
capabilities=usb color
```
The following capabilities are formally defined and supported by kpm:
- _color_: Requires a color display
- _usb_: Requires USB support
- _clock_: Requires a real-time clock
- _extraram_: Requires at least 8 pages of RAM
*author* (optional)
The person who originally wrote this software. The suggested format of this
field is *Author Name <author email>* (i.e. *Drew DeVault <[email protected]>*).
*maintainer* (optional)
The person who maintains this package. This may be different than the author.
*infourl* (optional)
A URL at which information about this software may be obtained.
*copyright* (optional)
The name of the license or the copyright statement for this package. Optional
but strongly suggested. Examples might include:
- MIT license
- Public Domain
- GPLv2
- Copyright John Doe 2014, All Rights Reserved
You may also wish to include a license file in your package itself with a
longer license statement. It's recommended that you distribute your full
license text alongside the package, rather than inside of it, to save valuable
space on the installed device.
# AUTHORS
Maintained by Drew DeVault <[email protected]>, who is assisted by other open
source contributors. For more information about kpkg development, see
https://github.com/KnightOS/kpkg.