Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev@l.g.o
Subject: [gentoo-dev] Initial review: registration for text/vnd.gentoo.manifest media type
Date: Wed, 07 Sep 2022 14:17:55
Message-Id: 44bb7b732ae74eb1b97ab227ee67a1f0002604b9.camel@gentoo.org
1 Hi,
2
3 I'd like to give it a shot and try to register a media type for GLEP 74
4 Manifest files. I've specifically chosen this type because it's
5 relatively simple and well-specified. I'd like to request your feedback
6 on the registration form, then ask Council for approving it and then
7 send it to IANA media-types ml for feedback.
8
9
10 ```
11 Type name: text
12
13 Subtype name: vnd.gentoo.manifest
14
15 Required parameters:
16
17 charset - always "UTF-8"
18
19
20 Optional parameters:
21
22 none
23
24
25 Encoding considerations:
26
27 8-bit text
28
29 always encoded as UTF-8, the format technically permits encoding all
30 Unicode characters as 7-bit escape codes
31
32
33 Security considerations:
34
35 The Manifest files are text files that are transmitted as part of larger
36 file sets in order to provide integrity and authenticity verification
37 for other files. They are primarily intended to be processed locally
38 to verify transferred files.
39
40 The format does not provide support for executable content. It does
41 provide support for specifying arbitrary filenames to verify. Symbolic
42 links are followed when opening files. The tools are explicitly
43 required to be secured against attempting to read non-regular files.
44 No other dangers were identified from the ability to verify arbitrary
45 file checksums locally (GLEP 74 § 3.3).
46
47 The initial Manifest file to be processed must not be compressed.
48 It can contain an inline OpenPGP signature to provide authenticity
49 verification. Every Manifest file can reference subsequent Manifest
50 files to be processed. Subsequent Manifest files can be compressed.
51 The tools are required to verify the integrity (and authenticity,
52 if provided) of subsequent Manifest files prior to decompressing them
53 (GLEP 74 § 3.2 / 3.12).
54
55 The Manifest files have no special privacy considerations. The same
56 privacy considerations as for the files covered by the Manifest apply.
57
58
59 Interoperability considerations:
60
61 The format is using UTF-8 encoding for best interoperability. Platforms
62 using non-UTF-8 filesystem encoding need to be able to recode filenames
63 to UTF-8. The format does not provide support for using raw filenames
64 with unknown encoding.
65
66 The format does not specify newline encoding. The implementations need
67 to be able to support different platform newline conventions for
68 portability.
69
70 The format specifies the use of forward slash as a directory separator.
71 Platforms using a different character need to convert paths
72 appropriately.
73
74
75 Published specification:
76
77 GLEP 74: Full-tree verification using Manifest files
78 https://www.gentoo.org/glep/glep-0074.html
79
80
81 Applications that use this media type:
82
83 The reference implementation for the format is provided by the gemato
84 tool [1]. A subset of the format is also directly supported by Gentoo
85 package managers, e.g. Portage [2] and pkgcore [3]. This list is not
86 exhaustive.
87
88 [1] https://github.com/projg2/gemato
89 [2] https://wiki.gentoo.org/wiki/Project:Portage
90 [3] https://github.com/pkgcore/pkgcore
91
92
93 Fragment identifier considerations:
94
95 None.
96
97
98 Additional information:
99
100 Deprecated alias names for this type: none
101 Magic number(s): none
102 File extension(s): none, the file is commonly named "Manifest"
103 Macintosh file type code(s): none
104
105 Person & email address to contact for further information:
106
107 Michał Górny <mgorny@g.o>
108
109
110 Intended usage: COMMON
111
112 Restrictions on usage:
113
114 None.
115
116
117 Author: Michał Górny <mgorny@g.o>
118
119 Change controller: Gentoo Council <council@g.o>
120
121 Provisional registration? (standards tree only): no
122 ```
123
124 --
125 Best regards,
126 Michał Górny