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
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
|
## SECTION=rootfs
# ----------------------------------------------------------------------------
menu "directories in rootfs "
# ----------------------------------------------------------------------------
config ROOTFS
bool
prompt "Create Directories in /"
default y
select BUSYBOX_FEATURE_SHADOWPASSWDS if ROOTFS_SHADOW && BUSYBOX
select HOST_FIGLET if ROOTFS_ISSUE
help
In order to support a standard root filesystem some subdirectories are
mandatory. They will be created by ptxdist automatically. Some
other directories are may be required on demand. This menu entry here
gives you the ability to create them.
if ROOTFS
config ROOTFS_DEV
bool
prompt "/dev"
default y
help
This directory contains system's device nodes. This is a common
location and name. For example udev depends on the existence of this
directory
config ROOTFS_DEV_INITIAL
depends on ROOTFS_DEV
bool
prompt "create initial device nodes"
help
install /dev/null, /dev/zero and /dev/console device nodes.
udev needs at least these nodes to startup. If you use udev
say yes here
config ROOTFS_HOME
bool
prompt "/home"
default y
help
home/ is a common location to store users private data. As ptxdist does
not support users out of the box, its up to yourself to create
additional subdirectories here and also provide the permission info.
config ROOTFS_HOME_ROOT
bool
prompt "/root"
default y
help
root/ is the usual location to store roots private data.
# Media Mountpoints
menuconfig ROOTFS_MEDIA
bool
prompt "/media "
config ROOTFS_MEDIA1
prompt "Mountpoint 1"
string
depends on ROOTFS_MEDIA
help
This string defines a mountpoint directory in /media
config ROOTFS_MEDIA2
prompt "Mountpoint 2"
string
depends on ROOTFS_MEDIA && ROOTFS_MEDIA1!=""
help
This string defines a mountpoint directory in /media
config ROOTFS_MEDIA3
prompt "Mountpoint 3"
string
depends on ROOTFS_MEDIA && ROOTFS_MEDIA2!=""
help
This string defines a mountpoint directory in /media
config ROOTFS_MEDIA4
prompt "Mountpoint 4"
string
depends on ROOTFS_MEDIA && ROOTFS_MEDIA3!=""
help
This string defines a mountpoint directory in /media
config ROOTFS_MEDIA5
prompt "Mountpoint 5"
string
depends on ROOTFS_MEDIA && ROOTFS_MEDIA4!=""
help
This string defines a mountpoint directory in /media
config ROOTFS_MEDIA6
prompt "Mountpoint 6"
string
depends on ROOTFS_MEDIA && ROOTFS_MEDIA5!=""
help
This string defines a mountpoint directory in /media
config ROOTFS_MEDIA7
prompt "Mountpoint 7"
string
depends on ROOTFS_MEDIA && ROOTFS_MEDIA6!=""
help
This string defines a mountpoint directory in /media
config ROOTFS_MEDIA8
prompt "Mountpoint 8"
string
depends on ROOTFS_MEDIA && ROOTFS_MEDIA7!=""
help
This string defines a mountpoint directory in /media
config ROOTFS_MEDIA9
prompt "Mountpoint 9"
string
depends on ROOTFS_MEDIA && ROOTFS_MEDIA8!=""
help
This string defines a mountpoint directory in /media
config ROOTFS_MEDIA10
prompt "Mountpoint 10"
string
depends on ROOTFS_MEDIA && ROOTFS_MEDIA9!=""
help
This string defines a mountpoint directory in /media
# ok, that's all for /media.
config ROOTFS_MNT
bool
prompt "/mnt"
default y
help
This is a common directory to temporarely mount external media. Its
always a good idea to select this entry.
config ROOTFS_PROC
bool
prompt "/proc"
default y
help
Create a /proc directory in the root filesystem.
You should say yes here.
config ROOTFS_RUN
bool
prompt "/run"
default y
help
Create a /run directory in the root filesystem.
config ROOTFS_SYS
bool
prompt "/sys"
default y
help
Create a /sys directory in the root filesystem.
2.6 kernel users should say yes here.
config ROOTFS_TMP
bool
prompt "/tmp"
default y
help
Create a /tmp directory in the root filesystem.
You should say yes here.
config ROOTFS_VAR
bool
prompt "/var"
default y
help
Create a /var directory in the root filesystem.
You should say yes here.
if ROOTFS_VAR
config ROOTFS_VAR_RUN
bool
select ROOTFS_RUN
prompt "/var/run"
default y
help
This will not create a directory but a symlink to /run.
Unless you want to mount a tmpfs on /var you should
say yes here.
config ROOTFS_VAR_LOG
bool
prompt "/var/log"
default y
help
Create a /var/log directory in the root filesystem.
Unless you want to mount a tmpfs on /var you should
say yes here.
config ROOTFS_VAR_LOCK
bool
prompt "/var/lock"
default y
help
Create a /var/lock directory in the root filesystem.
Unless you want to mount a tmpfs on /var you should
say yes here.
config ROOTFS_VAR_LIB
bool
prompt "/var/lib"
help
Create a /var/lib directory in the root filesystem.
Unless you want to mount a tmpfs on /var you should
say yes here.
If you are going to run an NFS server with file locking
support this folder must be persistent!
config ROOTFS_VAR_CACHE
bool
prompt "/var/cache"
help
Create a /var/cache directory in the root filesystem.
Unless you want to mount a tmpfs on /var you should
say yes here.
config ROOTFS_VAR_SPOOL
bool
prompt "/var/spool"
help
Create a /var/spool directory in the root filesystem.
Unless you want to mount a tmpfs on /var you should
say yes here.
config ROOTFS_VAR_SPOOL_CRON
bool
prompt "/var/spool/cron"
help
Create a /var/spool/cron directory in the root filesystem.
Unless you want to mount a tmpfs on /var you should
say yes here.
config ROOTFS_VAR_TMP
bool
prompt "/var/tmp"
default y
help
Create a /var/tmp directory in the root filesystem.
Unless you want to mount a tmpfs on /var you should
say yes here.
endif # ROOTFS_VAR
endif # ROOTFS
# ----------------------------------------------------------------------------
endmenu
# ----------------------------------------------------------------------------
menu "files in rootfs "
# ----------------------------------------------------------------------------
config ROOTFS_PASSWD
bool
prompt "install /etc/passwd"
default y
help
If enabled, it installs the "./projectroot/etc/passwd" file if
present, else a generic one from the ptxdist directory.
config ROOTFS_SHADOW
bool
prompt "install /etc/shadow"
default y
help
If enabled, it installs the "./projectroot/etc/shadow" file if
present, else a generic one from the ptxdist directory.
config ROOTFS_GROUP
bool
default y
prompt "install /etc/group"
help
If enabled, it installs the "./projectroot/etc/group" file if
present, else a generic one from the ptxdist directory.
config ROOTFS_GSHADOW
bool
default y
prompt "install /etc/gshadow"
help
If enabled, it installs the "./projectroot/etc/gshadow" file if
present, else a generic one from the ptxdist directory.
config ROOTFS_FSTAB
bool
default y
prompt "install /etc/fstab"
help
If enabled, it installs the "./projectroot/etc/fstab" file if
present, else a generic one from the ptxdist directory.
choice
prompt "install /etc/mtab"
default ROOTFS_MTAB_LINK_SELF_MOUNTS
config ROOTFS_MTAB_FILE
bool
prompt "from file"
help
If enabled, it installs the "./projectroot/etc/mtab" file if
present, else a generic one from the ptxdist directory.
config ROOTFS_MTAB_LINK_MOUNTS
bool
prompt "link to /proc/mounts"
help
If enabled, it installs /etc/mtab as a link to /proc/mounts
config ROOTFS_MTAB_LINK_SELF_MOUNTS
bool
prompt "link to /proc/self/mounts"
help
If enabled, it installs /etc/mtab as a link to /proc/self/mounts
config ROOTFS_MTAB_LINK_VAR
bool
prompt "link to /var/tmp/mtab"
help
If enabled, it installs /etc/mtab as a link to /var/tmp/mtab
endchoice
config ROOTFS_MTAB_LINK_VAR_FAKE_OVERLAYFS
bool
depends on ROOTFS_MTAB_LINK_VAR
select FAKE_OVERLAYFS
select FAKE_OVERLAYFS_VAR_TMP if !FAKE_OVERLAYFS_VAR
prompt "use fake-overlayfs to create /var/tmp/mtab"
config ROOTFS_HOSTNAME
bool
default y
prompt "install /etc/hostname"
config ROOTFS_ETC_HOSTNAME
string
prompt "hostname"
default "${PTXCONF_PROJECT}"
depends on ROOTFS_HOSTNAME
config ROOTFS_HOSTS
bool
prompt "install /etc/hosts"
help
If enabled, it installs the "./projectroot/etc/hosts" file if
present, else a generic one from the ptxdist directory.
config ROOTFS_ISSUE
bool
prompt "install /etc/issue"
default y
help
If enabled, it installs the "./projectroot/etc/issue" file if
present, else a generic one will be generated using 'figlet'.
config ROOTFS_MODPROBE_CONF
bool
prompt "install /etc/modprobe.conf"
help
If enabled, it installs the "./projectroot/etc/modprobe.conf" file if
present. Default options for kernel modules can be configured in that
file. It's read either in busybox modprobe or in the module-init-tools
modprobe implementation.
config ROOTFS_NSSWITCH_CONF
bool
default y
prompt "install /etc/nsswitch"
help
If enabled, it installs the "./projectroot/etc/nsswitch" file if
present, else a generic one from the ptxdist directory.
config ROOTFS_PROFILE
bool
default y
prompt "install /etc/profile"
help
If enabled, it installs "./projectroot/etc/profile" (for init-shells)
and "./projectroot/etc/profile.environment" (for sub-shells) files if
present, else generic ones from the ptxdist directory.
config ROOTFS_PROTOCOLS
bool
prompt "install /etc/protocols"
help
If enabled, it installs the "./projectroot/etc/protocols" file if
present, else a generic one from the ptxdist directory.
choice
prompt "install /etc/resolv.conf"
default ROOTFS_RESOLV_FILE
config ROOTFS_RESOLV_FILE
bool
prompt "from file"
help
If enabled, it installs the "./projectroot/etc/resolv.conf" file if
present, else a generic one from the ptxdist directory.
config ROOTFS_RESOLV_LINK
bool
prompt "link to /proc/net/pnp"
help
If enabled, it installs /etc/resolv.conf as a link to /proc/net/pnp.
config ROOTFS_RESOLV_RUN
bool
prompt "link to /run/resolv.conf"
help
If enabled, it installs /etc/resolv.conf as a link to
/run/resolv.conf. This is useful if the root filesystem is mounted
read-only.
config ROOTFS_RESOLV_SYSTEMD
bool
depends on SYSTEMD_NETWORK
prompt "link to /run/systemd/resolve/resolv.conf"
help
If enabled, it installs /etc/resolv.conf as a link to
/run/systemd/resolve/resolv.conf. This file is provided by
systemd-resolved and is filled with data from the systemd
managed interfaces.
config ROOTFS_RESOLV_STATIC
bool
depends on SYSTEMD_NETWORK
prompt "link to /usr/lib/systemd/resolv.conf"
help
If enabled, it installs /etc/resolv.conf as a link to
/usr/lib/systemd/resolv.conf.
This static file is provided by systemd that lists
the 127.0.0.53 DNS stub as only DNS server.
This mode of operation is recommended by systemd.
config ROOTFS_RESOLV_NONE
bool
prompt "none"
help
If enabled, no /etc/resolv.conf will be install.
endchoice
config ROOTFS_SERVICES
bool
default y
prompt "install /etc/services"
help
If enabled, it installs the "./projectroot/etc/services" file if
present, else a generic one from the ptxdist directory.
choice
prompt "install /init"
default ROOTFS_INIT_NONE
config ROOTFS_INIT_LINK
bool
prompt "link to /sbin/init"
help
Create a symlink from /init to /sbin/init. This is useful for
initramfs for example in which /init is executed by default.
config ROOTFS_INIT_BIN
bool
prompt "binary from file"
help
Install the /init binary instead of a symlink to /sbin/init.
config ROOTFS_INIT_NONE
bool
prompt "none"
help
If enabled, no /init will be install.
endchoice
endmenu
|