penguins-eggs 25.10.6 → 25.10.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (474) hide show
  1. package/.oclif.manifest.json +51 -145
  2. package/README.md +59 -120
  3. package/README.pdf +1723 -1731
  4. package/addons/eggs/theme/livecd/isolinux.main.simple.cfg +2 -3
  5. package/conf/distros/trixie/calamares/modules/shellprocess@boot_deploy.yml +3 -4
  6. package/conf/love.yaml +1 -1
  7. package/dracut/create-symlink +71 -0
  8. package/dracut/dracut-log.txt +3 -0
  9. package/dracut/dracut.conf.d/50-live.conf +24 -6
  10. package/dracut/dracut.conf.d/README.md +10 -0
  11. package/dracut/export +4 -0
  12. package/dracut/export-dracut-analysis +51 -0
  13. package/dracut/export-dracut-log +2 -0
  14. package/dracut/mkisofs +10 -0
  15. package/dracut/modules.d/00debug-shell/debug-hook.sh +13 -0
  16. package/dracut/modules.d/00debug-shell/module-setup.sh +20 -0
  17. package/dracut/modules.d/90block/README.md +7 -0
  18. package/dracut/modules.d/90block/block-cmdline.sh +3 -0
  19. package/dracut/modules.d/90block/module-setup.sh +15 -0
  20. package/dracut/modules.d/95iso-scan/README.md +3 -0
  21. package/dracut/modules.d/95iso-scan/iso-scan-fallback.sh +12 -0
  22. package/dracut/modules.d/95iso-scan/iso-scan.sh +92 -0
  23. package/dracut/modules.d/95iso-scan/module-setup.sh +18 -0
  24. package/dracut/modules.d/95luks-loop/README.md +9 -0
  25. package/dracut/modules.d/95luks-loop/luks-loop.sh +90 -0
  26. package/dracut/modules.d/95luks-loop/module-setup.sh +17 -0
  27. package/dracut/renew-initramfs +17 -0
  28. package/dracut/sbin2bin +10 -0
  29. package/dracut/update-dracut-conf-d +2 -0
  30. package/dracut/update-dracut-modules +62 -0
  31. package/manpages/doc/man/eggs.1.gz +0 -0
  32. package/manpages/doc/man/eggs.html +7 -661
  33. package/package.json +10 -9
  34. package/perrisbrewery/template/dependencies.yaml +6 -5
  35. package/scripts/_eggs +16 -31
  36. package/scripts/boot-encrypted-root.sh +177 -0
  37. package/scripts/eggs.bash +4 -6
  38. package/scripts/mount-encrypted-home.sh +259 -0
  39. package/dist/classes/bleach.d.ts +0 -37
  40. package/dist/classes/bleach.js +0 -148
  41. package/dist/classes/cli-autologin.d.ts +0 -52
  42. package/dist/classes/cli-autologin.js +0 -252
  43. package/dist/classes/compressors.d.ts +0 -54
  44. package/dist/classes/compressors.js +0 -109
  45. package/dist/classes/daddy.d.ts +0 -26
  46. package/dist/classes/daddy.js +0 -175
  47. package/dist/classes/distro.d.ts +0 -32
  48. package/dist/classes/distro.js +0 -356
  49. package/dist/classes/diversions.d.ts +0 -53
  50. package/dist/classes/diversions.js +0 -133
  51. package/dist/classes/incubation/branding.d.ts +0 -17
  52. package/dist/classes/incubation/branding.js +0 -85
  53. package/dist/classes/incubation/customize/customize-partitions.d.ts +0 -4
  54. package/dist/classes/incubation/customize/customize-partitions.js +0 -29
  55. package/dist/classes/incubation/fisherman-helper/initcpio.d.ts +0 -1
  56. package/dist/classes/incubation/fisherman-helper/initcpio.js +0 -69
  57. package/dist/classes/incubation/fisherman-helper/packages.d.ts +0 -20
  58. package/dist/classes/incubation/fisherman-helper/packages.js +0 -72
  59. package/dist/classes/incubation/fisherman-helper/settings.d.ts +0 -15
  60. package/dist/classes/incubation/fisherman-helper/settings.js +0 -116
  61. package/dist/classes/incubation/fisherman.d.ts +0 -71
  62. package/dist/classes/incubation/fisherman.js +0 -281
  63. package/dist/classes/incubation/incubator.d/alpine.d.ts +0 -32
  64. package/dist/classes/incubation/incubator.d/alpine.js +0 -78
  65. package/dist/classes/incubation/incubator.d/archlinux.d.ts +0 -32
  66. package/dist/classes/incubation/incubator.d/archlinux.js +0 -81
  67. package/dist/classes/incubation/incubator.d/bionic.d.ts +0 -32
  68. package/dist/classes/incubation/incubator.d/bionic.js +0 -83
  69. package/dist/classes/incubation/incubator.d/buster.d.ts +0 -32
  70. package/dist/classes/incubation/incubator.d/buster.js +0 -101
  71. package/dist/classes/incubation/incubator.d/fedora.d.ts +0 -32
  72. package/dist/classes/incubation/incubator.d/fedora.js +0 -81
  73. package/dist/classes/incubation/incubator.d/focal.d.ts +0 -32
  74. package/dist/classes/incubation/incubator.d/focal.js +0 -85
  75. package/dist/classes/incubation/incubator.d/manjaro.d.ts +0 -32
  76. package/dist/classes/incubation/incubator.d/manjaro.js +0 -82
  77. package/dist/classes/incubation/incubator.d/noble.d.ts +0 -32
  78. package/dist/classes/incubation/incubator.d/noble.js +0 -102
  79. package/dist/classes/incubation/incubator.d/openmamba.d.ts +0 -32
  80. package/dist/classes/incubation/incubator.d/openmamba.js +0 -81
  81. package/dist/classes/incubation/incubator.d/opensuse.d.ts +0 -32
  82. package/dist/classes/incubation/incubator.d/opensuse.js +0 -81
  83. package/dist/classes/incubation/incubator.d/trixie.d.ts +0 -32
  84. package/dist/classes/incubation/incubator.d/trixie.js +0 -101
  85. package/dist/classes/incubation/incubator.d.ts +0 -48
  86. package/dist/classes/incubation/incubator.js +0 -378
  87. package/dist/classes/incubation/installer.d.ts +0 -13
  88. package/dist/classes/incubation/installer.js +0 -52
  89. package/dist/classes/keyboards.d.ts +0 -50
  90. package/dist/classes/keyboards.js +0 -287
  91. package/dist/classes/locales.d.ts +0 -21
  92. package/dist/classes/locales.js +0 -77
  93. package/dist/classes/network.d.ts +0 -37
  94. package/dist/classes/network.js +0 -98
  95. package/dist/classes/ovary.d/bind-live-fs.d.ts +0 -18
  96. package/dist/classes/ovary.d/bind-live-fs.js +0 -185
  97. package/dist/classes/ovary.d/bind-vfs.d.ts +0 -17
  98. package/dist/classes/ovary.d/bind-vfs.js +0 -37
  99. package/dist/classes/ovary.d/create-xdg-autostart.d.ts +0 -13
  100. package/dist/classes/ovary.d/create-xdg-autostart.js +0 -194
  101. package/dist/classes/ovary.d/edit-live-fs.d.ts +0 -20
  102. package/dist/classes/ovary.d/edit-live-fs.js +0 -245
  103. package/dist/classes/ovary.d/fertilization.d.ts +0 -12
  104. package/dist/classes/ovary.d/fertilization.js +0 -52
  105. package/dist/classes/ovary.d/finished.d.ts +0 -13
  106. package/dist/classes/ovary.d/finished.js +0 -44
  107. package/dist/classes/ovary.d/initrd.d.ts +0 -21
  108. package/dist/classes/ovary.d/initrd.js +0 -97
  109. package/dist/classes/ovary.d/kernel-copy.d.ts +0 -12
  110. package/dist/classes/ovary.d/kernel-copy.js +0 -22
  111. package/dist/classes/ovary.d/live-create-structure.d.ts +0 -12
  112. package/dist/classes/ovary.d/live-create-structure.js +0 -73
  113. package/dist/classes/ovary.d/make-dot-disk.d.ts +0 -12
  114. package/dist/classes/ovary.d/make-dot-disk.js +0 -62
  115. package/dist/classes/ovary.d/make-efi.d.ts +0 -14
  116. package/dist/classes/ovary.d/make-efi.js +0 -274
  117. package/dist/classes/ovary.d/make-iso.d.ts +0 -13
  118. package/dist/classes/ovary.d/make-iso.js +0 -45
  119. package/dist/classes/ovary.d/make-squashfs.d.ts +0 -18
  120. package/dist/classes/ovary.d/make-squashfs.js +0 -110
  121. package/dist/classes/ovary.d/merged.d.ts +0 -27
  122. package/dist/classes/ovary.d/merged.js +0 -78
  123. package/dist/classes/ovary.d/produce.d.ts +0 -23
  124. package/dist/classes/ovary.d/produce.js +0 -319
  125. package/dist/classes/ovary.d/rexec.d.ts +0 -13
  126. package/dist/classes/ovary.d/rexec.js +0 -34
  127. package/dist/classes/ovary.d/syslinux.d.ts +0 -12
  128. package/dist/classes/ovary.d/syslinux.js +0 -82
  129. package/dist/classes/ovary.d/user-create-live.d.ts +0 -14
  130. package/dist/classes/ovary.d/user-create-live.js +0 -97
  131. package/dist/classes/ovary.d/users-remove.d.ts +0 -9
  132. package/dist/classes/ovary.d/users-remove.js +0 -38
  133. package/dist/classes/ovary.d/xorriso-command.d.ts +0 -14
  134. package/dist/classes/ovary.d/xorriso-command.js +0 -123
  135. package/dist/classes/ovary.d.ts +0 -87
  136. package/dist/classes/ovary.js +0 -90
  137. package/dist/classes/pacman.d/alpine.d.ts +0 -56
  138. package/dist/classes/pacman.d/alpine.js +0 -167
  139. package/dist/classes/pacman.d/archlinux.d.ts +0 -62
  140. package/dist/classes/pacman.d/archlinux.js +0 -128
  141. package/dist/classes/pacman.d/debian.d.ts +0 -65
  142. package/dist/classes/pacman.d/debian.js +0 -143
  143. package/dist/classes/pacman.d/fedora.d.ts +0 -53
  144. package/dist/classes/pacman.d/fedora.js +0 -107
  145. package/dist/classes/pacman.d/openmamba.d.ts +0 -52
  146. package/dist/classes/pacman.d/openmamba.js +0 -106
  147. package/dist/classes/pacman.d/opensuse.d.ts +0 -53
  148. package/dist/classes/pacman.d/opensuse.js +0 -109
  149. package/dist/classes/pacman.d.ts +0 -139
  150. package/dist/classes/pacman.js +0 -683
  151. package/dist/classes/pve-live.d.ts +0 -17
  152. package/dist/classes/pve-live.js +0 -52
  153. package/dist/classes/pxe.d.ts +0 -76
  154. package/dist/classes/pxe.js +0 -353
  155. package/dist/classes/settings.d.ts +0 -52
  156. package/dist/classes/settings.js +0 -185
  157. package/dist/classes/sources_list.d.ts +0 -28
  158. package/dist/classes/sources_list.js +0 -89
  159. package/dist/classes/systemctl.d.ts +0 -47
  160. package/dist/classes/systemctl.js +0 -86
  161. package/dist/classes/tailor.d.ts +0 -50
  162. package/dist/classes/tailor.js +0 -563
  163. package/dist/classes/tools.d.ts +0 -26
  164. package/dist/classes/tools.js +0 -50
  165. package/dist/classes/users.d.ts +0 -28
  166. package/dist/classes/users.js +0 -143
  167. package/dist/classes/utils.d/kernel.d.ts +0 -39
  168. package/dist/classes/utils.d/kernel.js +0 -206
  169. package/dist/classes/utils.d.ts +0 -327
  170. package/dist/classes/utils.js +0 -955
  171. package/dist/classes/xdg.d.ts +0 -45
  172. package/dist/classes/xdg.js +0 -337
  173. package/dist/classes/yolk.d.ts +0 -33
  174. package/dist/classes/yolk.js +0 -114
  175. package/dist/commands/adapt.d.ts +0 -17
  176. package/dist/commands/adapt.js +0 -33
  177. package/dist/commands/analyze.d.ts +0 -26
  178. package/dist/commands/analyze.js +0 -95
  179. package/dist/commands/calamares.d.ts +0 -29
  180. package/dist/commands/calamares.js +0 -112
  181. package/dist/commands/config.d.ts +0 -35
  182. package/dist/commands/config.js +0 -120
  183. package/dist/commands/cuckoo.d.ts +0 -17
  184. package/dist/commands/cuckoo.js +0 -61
  185. package/dist/commands/dad.d.ts +0 -21
  186. package/dist/commands/dad.js +0 -47
  187. package/dist/commands/export/iso.d.ts +0 -19
  188. package/dist/commands/export/iso.js +0 -55
  189. package/dist/commands/export/pkg.d.ts +0 -29
  190. package/dist/commands/export/pkg.js +0 -173
  191. package/dist/commands/export/tarballs.d.ts +0 -27
  192. package/dist/commands/export/tarballs.js +0 -79
  193. package/dist/commands/install.d.ts +0 -39
  194. package/dist/commands/install.js +0 -113
  195. package/dist/commands/kill.d.ts +0 -24
  196. package/dist/commands/kill.js +0 -50
  197. package/dist/commands/love.d.ts +0 -21
  198. package/dist/commands/love.js +0 -73
  199. package/dist/commands/mom.d.ts +0 -16
  200. package/dist/commands/mom.js +0 -30
  201. package/dist/commands/pods.d.ts +0 -22
  202. package/dist/commands/pods.js +0 -92
  203. package/dist/commands/produce.d.ts +0 -35
  204. package/dist/commands/produce.js +0 -221
  205. package/dist/commands/status.d.ts +0 -23
  206. package/dist/commands/status.js +0 -31
  207. package/dist/commands/syncfrom.d.ts +0 -45
  208. package/dist/commands/syncfrom.js +0 -152
  209. package/dist/commands/syncto.d.ts +0 -40
  210. package/dist/commands/syncto.js +0 -175
  211. package/dist/commands/tools/clean.d.ts +0 -18
  212. package/dist/commands/tools/clean.js +0 -37
  213. package/dist/commands/tools/ppa.d.ts +0 -31
  214. package/dist/commands/tools/ppa.js +0 -244
  215. package/dist/commands/tools/skel.d.ts +0 -18
  216. package/dist/commands/tools/skel.js +0 -44
  217. package/dist/commands/tools/stat.d.ts +0 -31
  218. package/dist/commands/tools/stat.js +0 -70
  219. package/dist/commands/tools/yolk.d.ts +0 -24
  220. package/dist/commands/tools/yolk.js +0 -45
  221. package/dist/commands/update.d.ts +0 -46
  222. package/dist/commands/update.js +0 -238
  223. package/dist/commands/wardrobe/get.d.ts +0 -23
  224. package/dist/commands/wardrobe/get.js +0 -52
  225. package/dist/commands/wardrobe/list.d.ts +0 -24
  226. package/dist/commands/wardrobe/list.js +0 -125
  227. package/dist/commands/wardrobe/show.d.ts +0 -25
  228. package/dist/commands/wardrobe/show.js +0 -97
  229. package/dist/commands/wardrobe/wear.d.ts +0 -26
  230. package/dist/commands/wardrobe/wear.js +0 -84
  231. package/dist/dhcpd-proxy/classes/packet.d.ts +0 -36
  232. package/dist/dhcpd-proxy/classes/packet.js +0 -124
  233. package/dist/dhcpd-proxy/index.d.ts +0 -4
  234. package/dist/dhcpd-proxy/index.js +0 -4
  235. package/dist/dhcpd-proxy/interfaces/i-pxe.d.ts +0 -45
  236. package/dist/dhcpd-proxy/interfaces/i-pxe.js +0 -1
  237. package/dist/dhcpd-proxy/lib/packet/converters.d.ts +0 -11
  238. package/dist/dhcpd-proxy/lib/packet/converters.js +0 -395
  239. package/dist/dhcpd-proxy/lib/packet/message-types.d.ts +0 -10
  240. package/dist/dhcpd-proxy/lib/packet/message-types.js +0 -12
  241. package/dist/dhcpd-proxy/lib/packet/options.d.ts +0 -8
  242. package/dist/dhcpd-proxy/lib/packet/options.js +0 -264
  243. package/dist/dhcpd-proxy/lib/sprintf.d.ts +0 -6
  244. package/dist/dhcpd-proxy/lib/sprintf.js +0 -130
  245. package/dist/dhcpd-proxy/lib/utils.d.ts +0 -126
  246. package/dist/dhcpd-proxy/lib/utils.js +0 -255
  247. package/dist/dhcpd-proxy/simple-proxy.d.ts +0 -11
  248. package/dist/dhcpd-proxy/simple-proxy.js +0 -118
  249. package/dist/index.d.ts +0 -8
  250. package/dist/index.js +0 -8
  251. package/dist/interfaces/calamares/i-calamares-bootloader.d.ts +0 -23
  252. package/dist/interfaces/calamares/i-calamares-bootloader.js +0 -7
  253. package/dist/interfaces/calamares/i-calamares-branding.d.ts +0 -46
  254. package/dist/interfaces/calamares/i-calamares-branding.js +0 -1
  255. package/dist/interfaces/calamares/i-calamares-displaymanager.d.ts +0 -34
  256. package/dist/interfaces/calamares/i-calamares-displaymanager.js +0 -1
  257. package/dist/interfaces/calamares/i-calamares-finished.d.ts +0 -14
  258. package/dist/interfaces/calamares/i-calamares-finished.js +0 -1
  259. package/dist/interfaces/calamares/i-calamares-packages.d.ts +0 -26
  260. package/dist/interfaces/calamares/i-calamares-packages.js +0 -1
  261. package/dist/interfaces/calamares/i-calamares-partitions.d.ts +0 -39
  262. package/dist/interfaces/calamares/i-calamares-partitions.js +0 -1
  263. package/dist/interfaces/calamares/i-calamares-settings.d.ts +0 -36
  264. package/dist/interfaces/calamares/i-calamares-settings.js +0 -1
  265. package/dist/interfaces/i-addons.d.ts +0 -12
  266. package/dist/interfaces/i-addons.js +0 -8
  267. package/dist/interfaces/i-analyze.d.ts +0 -17
  268. package/dist/interfaces/i-analyze.js +0 -17
  269. package/dist/interfaces/i-app.d.ts +0 -14
  270. package/dist/interfaces/i-app.js +0 -8
  271. package/dist/interfaces/i-config-tools.d.ts +0 -15
  272. package/dist/interfaces/i-config-tools.js +0 -8
  273. package/dist/interfaces/i-devices.d.ts +0 -20
  274. package/dist/interfaces/i-devices.js +0 -8
  275. package/dist/interfaces/i-distro.d.ts +0 -23
  276. package/dist/interfaces/i-distro.js +0 -8
  277. package/dist/interfaces/i-drive-list.d.ts +0 -33
  278. package/dist/interfaces/i-drive-list.js +0 -8
  279. package/dist/interfaces/i-eggs-config.d.ts +0 -32
  280. package/dist/interfaces/i-eggs-config.js +0 -8
  281. package/dist/interfaces/i-excludes.d.ts +0 -14
  282. package/dist/interfaces/i-excludes.js +0 -8
  283. package/dist/interfaces/i-exec.d.ts +0 -11
  284. package/dist/interfaces/i-exec.js +0 -8
  285. package/dist/interfaces/i-initrd.d.ts +0 -13
  286. package/dist/interfaces/i-initrd.js +0 -8
  287. package/dist/interfaces/i-install.d.ts +0 -16
  288. package/dist/interfaces/i-install.js +0 -8
  289. package/dist/interfaces/i-installer.d.ts +0 -17
  290. package/dist/interfaces/i-installer.js +0 -8
  291. package/dist/interfaces/i-luks-passphrase.d.ts +0 -11
  292. package/dist/interfaces/i-luks-passphrase.js +0 -8
  293. package/dist/interfaces/i-materia.d.ts +0 -36
  294. package/dist/interfaces/i-materia.js +0 -8
  295. package/dist/interfaces/i-net.d.ts +0 -16
  296. package/dist/interfaces/i-net.js +0 -8
  297. package/dist/interfaces/i-os-release.d.ts +0 -5
  298. package/dist/interfaces/i-os-release.js +0 -1
  299. package/dist/interfaces/i-packages.d.ts +0 -16
  300. package/dist/interfaces/i-packages.js +0 -8
  301. package/dist/interfaces/i-partitions.d.ts +0 -16
  302. package/dist/interfaces/i-partitions.js +0 -8
  303. package/dist/interfaces/i-pxe.d.ts +0 -45
  304. package/dist/interfaces/i-pxe.js +0 -1
  305. package/dist/interfaces/i-remix.d.ts +0 -21
  306. package/dist/interfaces/i-remix.js +0 -8
  307. package/dist/interfaces/i-settings.d.ts +0 -33
  308. package/dist/interfaces/i-settings.js +0 -8
  309. package/dist/interfaces/i-user.d.ts +0 -14
  310. package/dist/interfaces/i-user.js +0 -8
  311. package/dist/interfaces/i-workdir.d.ts +0 -14
  312. package/dist/interfaces/i-workdir.js +0 -8
  313. package/dist/interfaces/i-xkb-model.d.ts +0 -24
  314. package/dist/interfaces/i-xkb-model.js +0 -8
  315. package/dist/interfaces/index.d.ts +0 -26
  316. package/dist/interfaces/index.js +0 -8
  317. package/dist/krill/classes/cfs.d.ts +0 -17
  318. package/dist/krill/classes/cfs.js +0 -39
  319. package/dist/krill/classes/krill_enums.d.ts +0 -37
  320. package/dist/krill/classes/krill_enums.js +0 -41
  321. package/dist/krill/classes/prepare.d/confirm.d.ts +0 -5
  322. package/dist/krill/classes/prepare.d/confirm.js +0 -30
  323. package/dist/krill/classes/prepare.d/keyboard.d.ts +0 -14
  324. package/dist/krill/classes/prepare.d/keyboard.js +0 -62
  325. package/dist/krill/classes/prepare.d/location.d.ts +0 -17
  326. package/dist/krill/classes/prepare.d/location.js +0 -59
  327. package/dist/krill/classes/prepare.d/network.d.ts +0 -14
  328. package/dist/krill/classes/prepare.d/network.js +0 -68
  329. package/dist/krill/classes/prepare.d/partitions.d.ts +0 -14
  330. package/dist/krill/classes/prepare.d/partitions.js +0 -86
  331. package/dist/krill/classes/prepare.d/summary.d.ts +0 -15
  332. package/dist/krill/classes/prepare.d/summary.js +0 -72
  333. package/dist/krill/classes/prepare.d/users.d.ts +0 -6
  334. package/dist/krill/classes/prepare.d/users.js +0 -63
  335. package/dist/krill/classes/prepare.d/welcome.d.ts +0 -6
  336. package/dist/krill/classes/prepare.d/welcome.js +0 -30
  337. package/dist/krill/classes/prepare.d.ts +0 -89
  338. package/dist/krill/classes/prepare.js +0 -319
  339. package/dist/krill/classes/sequence.d/add_user.d.ts +0 -20
  340. package/dist/krill/classes/sequence.d/add_user.js +0 -77
  341. package/dist/krill/classes/sequence.d/bootloader.d.ts +0 -14
  342. package/dist/krill/classes/sequence.d/bootloader.js +0 -117
  343. package/dist/krill/classes/sequence.d/bootloader_config.d.ts +0 -14
  344. package/dist/krill/classes/sequence.d/bootloader_config.js +0 -192
  345. package/dist/krill/classes/sequence.d/change_password.d.ts +0 -15
  346. package/dist/krill/classes/sequence.d/change_password.js +0 -18
  347. package/dist/krill/classes/sequence.d/del_live_user.d.ts +0 -14
  348. package/dist/krill/classes/sequence.d/del_live_user.js +0 -39
  349. package/dist/krill/classes/sequence.d/fstab.d.ts +0 -14
  350. package/dist/krill/classes/sequence.d/fstab.js +0 -177
  351. package/dist/krill/classes/sequence.d/grubcfg.d.ts +0 -17
  352. package/dist/krill/classes/sequence.d/grubcfg.js +0 -35
  353. package/dist/krill/classes/sequence.d/hostname.d.ts +0 -13
  354. package/dist/krill/classes/sequence.d/hostname.js +0 -50
  355. package/dist/krill/classes/sequence.d/initramfs.d.ts +0 -13
  356. package/dist/krill/classes/sequence.d/initramfs.js +0 -54
  357. package/dist/krill/classes/sequence.d/initramfs_cfg.d.ts +0 -14
  358. package/dist/krill/classes/sequence.d/initramfs_cfg.js +0 -35
  359. package/dist/krill/classes/sequence.d/locale.d.ts +0 -13
  360. package/dist/krill/classes/sequence.d/locale.js +0 -91
  361. package/dist/krill/classes/sequence.d/locale_cfg.d.ts +0 -10
  362. package/dist/krill/classes/sequence.d/locale_cfg.js +0 -58
  363. package/dist/krill/classes/sequence.d/m_keyboard.d.ts +0 -14
  364. package/dist/krill/classes/sequence.d/m_keyboard.js +0 -58
  365. package/dist/krill/classes/sequence.d/machine_id.d.ts +0 -15
  366. package/dist/krill/classes/sequence.d/machine_id.js +0 -33
  367. package/dist/krill/classes/sequence.d/mkfs.d.ts +0 -15
  368. package/dist/krill/classes/sequence.d/mkfs.js +0 -88
  369. package/dist/krill/classes/sequence.d/mount_fs.d.ts +0 -17
  370. package/dist/krill/classes/sequence.d/mount_fs.js +0 -68
  371. package/dist/krill/classes/sequence.d/mount_vfs.d.ts +0 -17
  372. package/dist/krill/classes/sequence.d/mount_vfs.js +0 -59
  373. package/dist/krill/classes/sequence.d/network_cfg.d.ts +0 -19
  374. package/dist/krill/classes/sequence.d/network_cfg.js +0 -73
  375. package/dist/krill/classes/sequence.d/packages.d.ts +0 -14
  376. package/dist/krill/classes/sequence.d/packages.js +0 -111
  377. package/dist/krill/classes/sequence.d/partition.d/bios_luks.d.ts +0 -17
  378. package/dist/krill/classes/sequence.d/partition.d/bios_luks.js +0 -73
  379. package/dist/krill/classes/sequence.d/partition.d/bios_standard.d.ts +0 -16
  380. package/dist/krill/classes/sequence.d/partition.d/bios_standard.js +0 -51
  381. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.d.ts +0 -17
  382. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.js +0 -77
  383. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.d.ts +0 -10
  384. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.js +0 -33
  385. package/dist/krill/classes/sequence.d/partition.d.ts +0 -14
  386. package/dist/krill/classes/sequence.d/partition.js +0 -84
  387. package/dist/krill/classes/sequence.d/remove_installer_link.d.ts +0 -13
  388. package/dist/krill/classes/sequence.d/remove_installer_link.js +0 -35
  389. package/dist/krill/classes/sequence.d/umount.d.ts +0 -14
  390. package/dist/krill/classes/sequence.d/umount.js +0 -28
  391. package/dist/krill/classes/sequence.d/unpackfs.d.ts +0 -13
  392. package/dist/krill/classes/sequence.d/unpackfs.js +0 -20
  393. package/dist/krill/classes/sequence.d.ts +0 -134
  394. package/dist/krill/classes/sequence.js +0 -400
  395. package/dist/krill/components/finished.d.ts +0 -16
  396. package/dist/krill/components/finished.js +0 -56
  397. package/dist/krill/components/information.d.ts +0 -8
  398. package/dist/krill/components/information.js +0 -162
  399. package/dist/krill/components/install.d.ts +0 -15
  400. package/dist/krill/components/install.js +0 -60
  401. package/dist/krill/components/keyboard.d.ts +0 -16
  402. package/dist/krill/components/keyboard.js +0 -54
  403. package/dist/krill/components/location.d.ts +0 -16
  404. package/dist/krill/components/location.js +0 -59
  405. package/dist/krill/components/network.d.ts +0 -19
  406. package/dist/krill/components/network.js +0 -65
  407. package/dist/krill/components/partitions.d.ts +0 -18
  408. package/dist/krill/components/partitions.js +0 -89
  409. package/dist/krill/components/steps.d.ts +0 -13
  410. package/dist/krill/components/steps.js +0 -148
  411. package/dist/krill/components/summary.d.ts +0 -25
  412. package/dist/krill/components/summary.js +0 -77
  413. package/dist/krill/components/title.d.ts +0 -11
  414. package/dist/krill/components/title.js +0 -35
  415. package/dist/krill/components/users.d.ts +0 -24
  416. package/dist/krill/components/users.js +0 -80
  417. package/dist/krill/components/welcome.d.ts +0 -13
  418. package/dist/krill/components/welcome.js +0 -63
  419. package/dist/krill/interfaces/i_krill.d.ts +0 -44
  420. package/dist/krill/interfaces/i_krill.js +0 -8
  421. package/dist/krill/interfaces/i_krill_config.d.ts +0 -35
  422. package/dist/krill/interfaces/i_krill_config.js +0 -8
  423. package/dist/krill/lib/get_address.d.ts +0 -8
  424. package/dist/krill/lib/get_address.js +0 -23
  425. package/dist/krill/lib/get_dns.d.ts +0 -8
  426. package/dist/krill/lib/get_dns.js +0 -23
  427. package/dist/krill/lib/get_domain.d.ts +0 -8
  428. package/dist/krill/lib/get_domain.js +0 -23
  429. package/dist/krill/lib/get_gateway.d.ts +0 -8
  430. package/dist/krill/lib/get_gateway.js +0 -23
  431. package/dist/krill/lib/get_hostname.d.ts +0 -8
  432. package/dist/krill/lib/get_hostname.js +0 -23
  433. package/dist/krill/lib/get_luks_passphrase.d.ts +0 -8
  434. package/dist/krill/lib/get_luks_passphrase.js +0 -32
  435. package/dist/krill/lib/get_netmask.d.ts +0 -8
  436. package/dist/krill/lib/get_netmask.js +0 -23
  437. package/dist/krill/lib/get_password.d.ts +0 -8
  438. package/dist/krill/lib/get_password.js +0 -36
  439. package/dist/krill/lib/get_userfullname.d.ts +0 -8
  440. package/dist/krill/lib/get_userfullname.js +0 -23
  441. package/dist/krill/lib/get_username.d.ts +0 -8
  442. package/dist/krill/lib/get_username.js +0 -23
  443. package/dist/krill/lib/select_address_type.d.ts +0 -8
  444. package/dist/krill/lib/select_address_type.js +0 -24
  445. package/dist/krill/lib/select_filesystem_type.d.ts +0 -8
  446. package/dist/krill/lib/select_filesystem_type.js +0 -40
  447. package/dist/krill/lib/select_installation_device.d.ts +0 -8
  448. package/dist/krill/lib/select_installation_device.js +0 -40
  449. package/dist/krill/lib/select_installation_mode.d.ts +0 -9
  450. package/dist/krill/lib/select_installation_mode.js +0 -25
  451. package/dist/krill/lib/select_interface.d.ts +0 -8
  452. package/dist/krill/lib/select_interface.js +0 -24
  453. package/dist/krill/lib/select_keyboard_layout.d.ts +0 -11
  454. package/dist/krill/lib/select_keyboard_layout.js +0 -36
  455. package/dist/krill/lib/select_keyboard_model.d.ts +0 -11
  456. package/dist/krill/lib/select_keyboard_model.js +0 -34
  457. package/dist/krill/lib/select_keyboard_option.d.ts +0 -11
  458. package/dist/krill/lib/select_keyboard_option.js +0 -34
  459. package/dist/krill/lib/select_keyboard_variant.d.ts +0 -11
  460. package/dist/krill/lib/select_keyboard_variant.js +0 -35
  461. package/dist/krill/lib/select_languages.d.ts +0 -8
  462. package/dist/krill/lib/select_languages.js +0 -28
  463. package/dist/krill/lib/select_regions.d.ts +0 -8
  464. package/dist/krill/lib/select_regions.js +0 -24
  465. package/dist/krill/lib/select_replaced_partition.d.ts +0 -8
  466. package/dist/krill/lib/select_replaced_partition.js +0 -31
  467. package/dist/krill/lib/select_user_swap_choice.d.ts +0 -9
  468. package/dist/krill/lib/select_user_swap_choice.js +0 -35
  469. package/dist/krill/lib/select_zones.d.ts +0 -8
  470. package/dist/krill/lib/select_zones.js +0 -518
  471. package/dist/lib/kill_me_softly.d.ts +0 -11
  472. package/dist/lib/kill_me_softly.js +0 -61
  473. package/dist/lib/utils.d.ts +0 -19
  474. package/dist/lib/utils.js +0 -65
@@ -1,35 +0,0 @@
1
- /**
2
- * ./src/krill/modules/initramfs-cfg.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- * https://stackoverflow.com/questions/23876782/how-do-i-split-a-typescript-class-into-multiple-files
8
- */
9
- import Utils from '../../../classes/utils.js';
10
- import { exec } from '../../../lib/utils.js';
11
- import { SwapChoice } from '../krill_enums.js';
12
- /**
13
- *
14
- * @param this
15
- */
16
- export default async function initramfsCfg(installDevice) {
17
- if (this.distro.familyId === 'debian') {
18
- // userSwapChoices = ['none', 'small', 'suspend', 'file']
19
- const file = this.installTarget + '/etc/initramfs-tools/conf.d/resume';
20
- let text = '';
21
- if (SwapChoice.None) {
22
- text += `#RESUME=none\n`;
23
- }
24
- else if (this.partitions.userSwapChoice === SwapChoice.File) {
25
- const swap_uuid = (await exec(`findmnt -no UUID -T /swapfile`)).data.trim();
26
- const swap_offset = (await exec(`filefrag -v /swapfile | awk 'NR==4 {print $4}' | sed 's/\..*//'`)).data.trim();
27
- text += `RESUME=UUID=${swap_uuid}\n`;
28
- text += `RESUME_OFFSET=${swap_offset}\n`;
29
- }
30
- else {
31
- text += 'RESUME=UUID=' + Utils.uuid(this.devices.swap.name);
32
- }
33
- Utils.write(file, text);
34
- }
35
- }
@@ -1,13 +0,0 @@
1
- /**
2
- * ./src/krill/modules/locale.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- * https://stackoverflow.com/questions/23876782/how-do-i-split-a-typescript-class-into-multiple-files
8
- */
9
- import Sequence from '../../classes/sequence.js';
10
- /**
11
- * locale
12
- */
13
- export default function locale(this: Sequence): Promise<void>;
@@ -1,91 +0,0 @@
1
- /**
2
- * ./src/krill/modules/locale.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- * https://stackoverflow.com/questions/23876782/how-do-i-split-a-typescript-class-into-multiple-files
8
- */
9
- import fs from 'node:fs';
10
- import Utils from '../../../classes/utils.js';
11
- import { exec } from '../../../lib/utils.js';
12
- /**
13
- * locale
14
- */
15
- export default async function locale() {
16
- const defaultLocale = this.language;
17
- if (this.distro.familyId === 'archlinux' || this.distro.familyId === 'debian') {
18
- /**
19
- * influcence: - /etc/default/locale
20
- * - /etc/locale.conf
21
- * - /etc/timezone
22
- */
23
- let file = this.installTarget + '/etc/default/locale';
24
- let content = '';
25
- content += `LANG=${defaultLocale}\n`;
26
- content += `LC_CTYPE=${defaultLocale}\n`;
27
- content += `LC_NUMERIC=${defaultLocale}\n`;
28
- content += `LC_TIME=${defaultLocale}\n`;
29
- content += `LC_COLLATE=${defaultLocale}\n`;
30
- content += `LC_MONETARY=${defaultLocale}\n`;
31
- content += `LC_MESSAGES=${defaultLocale}\n`;
32
- content += `LC_PAPER=${defaultLocale}\n`;
33
- content += `LC_NAME=${defaultLocale}\n`;
34
- content += `LC_ADDRESS=${defaultLocale}\n`;
35
- content += `LC_TELEPHONE=${defaultLocale}\n`;
36
- content += `LC_MEASUREMENT=${defaultLocale}\n`;
37
- content += `LC_IDENTIFICATION=${defaultLocale}\n`;
38
- content += `LC_ALL=${defaultLocale}\n`;
39
- Utils.write(file, content);
40
- // /etc/locale.conf
41
- file = this.installTarget + '/etc/locale.conf';
42
- Utils.write(file, content);
43
- // timezone Arch Debian
44
- if (fs.existsSync('/etc/localtime')) {
45
- const cmd = `chroot ${this.installTarget} unlink /etc/localtime ${this.toNull}`;
46
- await exec(cmd, this.echo);
47
- }
48
- const cmd = `chroot ${this.installTarget} ln -sf /usr/share/zoneinfo/${this.region}/${this.zone} /etc/localtime ${this.toNull}`;
49
- await exec(cmd, this.echo);
50
- }
51
- else if (this.distro.familyId === 'alpine') {
52
- // locale Alpine
53
- let file = this.installTarget + "/etc/profile.d/00locale.sh";
54
- let content = "";
55
- content += `#!/bin/sh\n`;
56
- content += `export MUSL_LOCPATH="/usr/share/i18n/locales/musl"\n`;
57
- content += `\n`;
58
- content += `export LANG=${defaultLocale}\n`;
59
- content += `export LC_CTYPE=${defaultLocale}\n`;
60
- content += `export LC_NUMERIC=${defaultLocale}\n`;
61
- content += `export LC_TIME=${defaultLocale}\n`;
62
- content += `export LC_COLLATE=${defaultLocale}\n`;
63
- content += `export LC_MONETARY=${defaultLocale}\n`;
64
- content += `export LC_MESSAGES=${defaultLocale}\n`;
65
- content += `export LC_PAPER=${defaultLocale}\n`;
66
- content += `export LC_NAME=${defaultLocale}\n`;
67
- content += `export LC_ADDRESS=${defaultLocale}\n`;
68
- content += `export LC_TELEPHONE=${defaultLocale}\n`;
69
- content += `export LC_MEASUREMENT=${defaultLocale}\n`;
70
- content += `export LC_IDENTIFICATION=${defaultLocale}\n`;
71
- content += `export LC_ALL=${defaultLocale}\n`;
72
- Utils.write(file, content);
73
- await exec(`chmod +x ${file}`);
74
- /**
75
- * https://docs.alpinelinux.org/user-handbook/0.1a/Installing/manual.html
76
- */
77
- /**
78
- * timezone
79
- *
80
- */
81
- let tz = `/etc/zoneinfo/${this.region}/${this.zone}`;
82
- await exec(`chroot ${this.installTarget} rm -rf /etc/zoneinfo/* ${this.toNull}`, this.echo);
83
- await exec(`chroot ${this.installTarget} mkdir -p ${tz} ${this.toNull}`, this.echo);
84
- file = `${this.installTarget}/etc/profile.d/timezone.sh`;
85
- content = "";
86
- content += `#!/bin/sh\n`;
87
- content += `export TZ='${tz}'`;
88
- Utils.write(file, content);
89
- await exec(`chmod +x ${file} ${this.toNull}`);
90
- }
91
- }
@@ -1,10 +0,0 @@
1
- /**
2
- * ./src/krill/modules/locale-cfg.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- * https://stackoverflow.com/questions/23876782/how-do-i-split-a-typescript-class-into-multiple-files
8
- */
9
- import Sequence from '../sequence.js';
10
- export default function localeCfg(this: Sequence): Promise<void>;
@@ -1,58 +0,0 @@
1
- /**
2
- * ./src/krill/modules/locale-cfg.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- * https://stackoverflow.com/questions/23876782/how-do-i-split-a-typescript-class-into-multiple-files
8
- */
9
- import fs from 'node:fs';
10
- /* localeCfg
11
- * Enable the configured locales (those set by the user on the
12
- * user page) in /etc/locale.gen, if they are available in the
13
- * target system.
14
- */
15
- export default async function localeCfg() {
16
- /**
17
- * influence: - locale-gen
18
- */
19
- let supporteds = [];
20
- if (this.distro.familyId === 'debian') {
21
- // Format: en_US.UTF-8 UTF-8
22
- supporteds = fs.readFileSync('/usr/share/i18n/SUPPORTED', 'utf8').split('\n');
23
- }
24
- else if (this.distro.familyId === 'archlinux') {
25
- const supportedsSource = fs.readFileSync('/etc/locale.gen', 'utf8').split('\n');
26
- for (let line of supportedsSource) {
27
- if (line.slice(0, 2) !== '# ') {
28
- // se non è un commento
29
- line = line.slice(1); // Rimuove #
30
- }
31
- supporteds.push(line);
32
- }
33
- }
34
- const localeGenSource = fs.readFileSync(`${this.installTarget}/etc/locale.gen`, 'utf8').split('\n');
35
- let localeGenDest = '';
36
- const krillBookmark = '# Locales enabled by krill\n';
37
- for (const line of localeGenSource) {
38
- if (line.includes(krillBookmark)) {
39
- break;
40
- }
41
- localeGenDest += line + '\n';
42
- }
43
- localeGenDest += '\n';
44
- localeGenDest += krillBookmark;
45
- const locales = [];
46
- if (this.language !== 'en_US.UTF-8') {
47
- locales.push('en_US.UTF-8');
48
- }
49
- locales.push(this.language);
50
- for (const supported of supporteds) {
51
- for (const locale of locales) {
52
- if (supported.includes(locale)) {
53
- localeGenDest += `${supported}\n`;
54
- }
55
- }
56
- }
57
- fs.writeFileSync(`${this.installTarget}/etc/locale.gen`, localeGenDest);
58
- }
@@ -1,14 +0,0 @@
1
- /**
2
- * ./src/krill/modules/m-keyboard.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- * https://stackoverflow.com/questions/23876782/how-do-i-split-a-typescript-class-into-multiple-files
8
- */
9
- import Sequence from '../sequence.js';
10
- /**
11
- *
12
- * @param this
13
- */
14
- export default function mKeyboard(this: Sequence): Promise<void>;
@@ -1,58 +0,0 @@
1
- /**
2
- * ./src/krill/modules/m-keyboard.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- * https://stackoverflow.com/questions/23876782/how-do-i-split-a-typescript-class-into-multiple-files
8
- */
9
- import fs from 'node:fs';
10
- import Utils from '../../../classes/utils.js';
11
- import { exec } from '../../../lib/utils.js';
12
- /**
13
- *
14
- * @param this
15
- */
16
- export default async function mKeyboard() {
17
- /**
18
- * influence: - /etc/default/keyboard (console)
19
- * - /etc/X11/xorg.conf.d/00-keyboard.conf
20
- * - /ext/vconsole.conf (non systemd)
21
- */
22
- if (this.distro.familyId === 'archlinux' || this.distro.familyId === 'debian' || this.distro.familyId === 'fedora') {
23
- let cmd = '';
24
- let content = '';
25
- if (Utils.isSystemd()) {
26
- cmd = `chroot ${this.installTarget} localectl set-keymap ${this.keyboardLayout} ${this.toNull}`;
27
- content = '# See penguins-eggs/src/krill/modules/set-keyboard.ts\n\n';
28
- content += "# Read and parsed by systemd-localed. It's probably wise not to edit this file\n";
29
- content += '# manually too freely.\n';
30
- content += 'Section "InputClass"\n';
31
- content += ' Identifier "system-keyboard"\n';
32
- content += ' MatchIsKeyboard "on"\n';
33
- content += ' Option "XkbLayout" "' + this.keyboardLayout + '"\n';
34
- content += 'EndSection\n';
35
- if (fs.existsSync(this.installTarget + '/etc/X11/xorg.conf.d')) {
36
- Utils.write(this.installTarget + '/etc/X11/xorg.conf.d/00-keyboard.conf', content);
37
- }
38
- }
39
- else {
40
- /**
41
- * configuro vconsole.conf
42
- */
43
- cmd = `chroot ${this.installTarget} setupcon ${this.toNull}`;
44
- content = '# See penguins-eggs/src/krill/modules/set-keyboard.ts\n\n';
45
- content += 'KEYMAP="' + this.keyboardLayout + '"\n';
46
- content += 'FONT=\n';
47
- content += 'FONT_MAP=\n';
48
- Utils.write(this.installTarget + '/etc/vconsole.conf', content);
49
- }
50
- await exec(cmd, this.echo);
51
- }
52
- else if (this.distro.familyId === 'alpine') {
53
- /**
54
- * Alpine dovrebbe fare tutto con `setup-keymap us us`
55
- */
56
- await exec(`chroot ${this.installTarget} setup-keymap ${this.keyboardLayout} ${this.keyboardLayout}`);
57
- }
58
- }
@@ -1,15 +0,0 @@
1
- /**
2
- * penguins-eggs
3
- * krill modules: machine-id.ts
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- * https://stackoverflow.com/questions/23876782/how-do-i-split-a-typescript-class-into-multiple-files
8
- */
9
- import Sequence from '../sequence.js';
10
- /**
11
- * On Ubuntu
12
- * /etc/machine-id must exist to be re-created
13
- * https://unix.stackexchange.com/questions/402999/is-it-ok-to-change-etc-machine-id
14
- */
15
- export default function machineId(this: Sequence): Promise<void>;
@@ -1,33 +0,0 @@
1
- /**
2
- * penguins-eggs
3
- * krill modules: machine-id.ts
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- * https://stackoverflow.com/questions/23876782/how-do-i-split-a-typescript-class-into-multiple-files
8
- */
9
- import fs from 'node:fs';
10
- import { exec } from '../../../lib/utils.js';
11
- import Utils from '../../../classes/utils.js';
12
- /**
13
- * On Ubuntu
14
- * /etc/machine-id must exist to be re-created
15
- * https://unix.stackexchange.com/questions/402999/is-it-ok-to-change-etc-machine-id
16
- */
17
- export default async function machineId() {
18
- // We delete the machine-id file to force its recreation
19
- const file = `${this.installTarget}/etc/machine-id`;
20
- if (fs.existsSync(file)) {
21
- await exec(`rm ${file} ${this.toNull}`, this.echo);
22
- }
23
- /**
24
- * machine/id ALWAYS new
25
- */
26
- if (Utils.isSystemd()) {
27
- await exec(`chroot ${this.installTarget} systemd-machine-id-setup`);
28
- }
29
- else {
30
- await exec(`chroot ${this.installTarget} dbus-uuidgen --ensure=/var/lib/dbus/machine-id ${this.toNull}`);
31
- await exec(`chroot ${this.installTarget} cp /var/lib/dbus/machine-id /etc/machine-id`);
32
- }
33
- }
@@ -1,15 +0,0 @@
1
- /**
2
- * ./src/krill/modules/mkfs.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- * https://stackoverflow.com/questions/23876782/how-do-i-split-a-typescript-class-into-multiple-files
8
- */
9
- import Sequence from '../../classes/sequence.js';
10
- /**
11
- * mkfs
12
- *
13
- * mkfs - create an ext2/ext3/ext4/btrfs
14
- */
15
- export default function mkfs(this: Sequence): Promise<boolean>;
@@ -1,88 +0,0 @@
1
- /**
2
- * ./src/krill/modules/mkfs.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- * https://stackoverflow.com/questions/23876782/how-do-i-split-a-typescript-class-into-multiple-files
8
- */
9
- import { exec } from '../../../lib/utils.js';
10
- import shx from "shelljs";
11
- import { InstallationMode, SwapChoice } from '../krill_enums.js';
12
- /**
13
- * mkfs
14
- *
15
- * mkfs - create an ext2/ext3/ext4/btrfs
16
- */
17
- export default async function mkfs() {
18
- const result = true;
19
- if (this.partitions.installationMode === InstallationMode.Replace) {
20
- /**
21
- * we need to define this.devices
22
- */
23
- this.devices.root.name = this.partitions.replacedPartition;
24
- this.devices.root.mountPoint = '/';
25
- this.devices.root.fsType = this.partitions.filesystemType;
26
- this.devices.boot.name = 'none'; // OK
27
- this.devices.data.name = 'none'; // OK
28
- this.partitions.userSwapChoice = SwapChoice.File;
29
- this.devices.swap.name = 'file'; // OK
30
- this.devices.efi.name = 'none';
31
- if (this.efi) {
32
- // usare shx.exec qui
33
- const efiDetectCmd = `fdisk -l | grep 'EFI System' | awk '{print $1}'`;
34
- const efiName = shx.exec(efiDetectCmd).stdout.trim();
35
- if (efiName) {
36
- this.devices.efi.name = efiName;
37
- this.devices.efi.mountPoint = '/boot/efi';
38
- }
39
- else {
40
- this.devices.efi.name = 'none';
41
- }
42
- }
43
- }
44
- if (this.partitions.filesystemType === 'ext4') {
45
- /**
46
- * EFI
47
- */
48
- if (this.efi) {
49
- await exec(`mkfs.vfat -F 32 ${this.devices.efi.name} ${this.toNull}`, this.echo);
50
- }
51
- // boot
52
- if (this.devices.boot.name !== 'none') {
53
- if (this.devices.boot.fsType === undefined) {
54
- this.devices.boot.fsType = 'ext2';
55
- this.devices.boot.mountPoint = '/boot';
56
- }
57
- // await exec(`mke2fs -Ft ${this.devices.boot.fsType} ${this.devices.boot.name} ${this.toNull}`, this.echo)
58
- await exec(`mkfs.${this.devices.boot.fsType} -F ${this.devices.boot.name} ${this.toNull}`, this.echo);
59
- }
60
- // root
61
- if (this.devices.root.name !== 'none') {
62
- // await exec(`mke2fs -Ft ${this.devices.root.fsType} ${this.devices.root.name} ${this.toNull}`, this.echo)
63
- await exec(`mkfs.ext4 -F ${this.devices.root.name} ${this.toNull}`, this.echo);
64
- }
65
- // data
66
- if (this.devices.data.name !== 'none') {
67
- }
68
- // swap
69
- if (this.partitions.userSwapChoice === SwapChoice.File) {
70
- // we'll create it on mount-fs
71
- }
72
- else if (this.devices.swap.name !== 'none') {
73
- await exec(`mkswap ${this.devices.swap.name} ${this.toNull}`, this.echo);
74
- }
75
- }
76
- else if (this.partitions.filesystemType === 'btrfs') {
77
- await exec(`mkfs.btrfs -f btrfs ${this.devices.root.name} ${this.toNull}`, this.echo);
78
- // Monta temporaneamente il volume Btrfs
79
- await exec(`mount ${this.devices.root.name} /mnt`);
80
- await exec(`btrfs subvolume create /mnt/@/`);
81
- await exec(`btrfs subvolume create /mnt/@home`);
82
- await exec(`btrfs subvolume create /mnt/@cache`);
83
- await exec(`btrfs subvolume create /mnt/@log`);
84
- // Smonta /mnt
85
- await exec(`umount /mnt`);
86
- }
87
- return result;
88
- }
@@ -1,17 +0,0 @@
1
- /**
2
- * ./src/krill/modules/mount-fs.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- * https://stackoverflow.com/questions/23876782/how-do-i-split-a-typescript-class-into-multiple-files
8
- */
9
- import Sequence from '../sequence.js';
10
- /**
11
- * mountFs
12
- */
13
- export declare function mountFs(this: Sequence): Promise<boolean>;
14
- /**
15
- * umountFs
16
- */
17
- export declare function umountFs(this: Sequence): Promise<boolean>;
@@ -1,68 +0,0 @@
1
- /**
2
- * ./src/krill/modules/mount-fs.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- * https://stackoverflow.com/questions/23876782/how-do-i-split-a-typescript-class-into-multiple-files
8
- */
9
- import fs from 'node:fs';
10
- import { exec } from '../../../lib/utils.js';
11
- import { SwapChoice } from '../krill_enums.js';
12
- /**
13
- * mountFs
14
- */
15
- export async function mountFs() {
16
- if (!fs.existsSync(this.installTarget)) {
17
- await exec(`mkdir ${this.installTarget} ${this.toNull}`, this.echo);
18
- }
19
- // root
20
- await exec(`mount -t ${this.devices.root.fsType} ${this.devices.root.name} ${this.installTarget}${this.devices.root.mountPoint} ${this.toNull}`, this.echo);
21
- await exec(`tune2fs -c 0 -i 0 ${this.devices.root.name} ${this.toNull}`, this.echo);
22
- await exec(`rm -rf ${this.installTarget}/lost+found ${this.toNull}`, this.echo);
23
- // boot
24
- if (this.devices.boot.name !== 'none') {
25
- await exec(`mkdir ${this.installTarget}/boot -p ${this.toNull}`, this.echo);
26
- await exec(`mount -t ${this.devices.boot.fsType} ${this.devices.boot.name} ${this.installTarget}${this.devices.boot.mountPoint} ${this.toNull}`, this.echo);
27
- await exec(`tune2fs -c 0 -i 0 ${this.devices.boot.name} ${this.toNull}`, this.echo);
28
- }
29
- // data
30
- if (this.devices.data.name !== 'none') {
31
- await exec(`mkdir ${this.installTarget}${this.devices.data.mountPoint} -p ${this.toNull}`, this.echo);
32
- await exec(`mount -t ${this.devices.data.fsType} ${this.devices.data.name} ${this.installTarget}${this.devices.data.mountPoint} ${this.toNull}`, this.echo);
33
- await exec(`tune2fs -c 0 -i 0 ${this.devices.data.name} ${this.toNull}`, this.echo);
34
- }
35
- // efi
36
- if (this.efi && !fs.existsSync(this.installTarget + this.devices.efi.mountPoint)) {
37
- await exec(`mkdir ${this.installTarget}${this.devices.efi.mountPoint} -p ${this.toNull}`, this.echo);
38
- // utilizzare vfat per evitare errori
39
- await exec(`mount -t vfat ${this.devices.efi.name} ${this.installTarget}${this.devices.efi.mountPoint} ${this.toNull}`, this.echo);
40
- }
41
- // swap file if we need
42
- if (this.partitions.userSwapChoice === SwapChoice.File) {
43
- await exec(`fallocate -l 8G ${this.installTarget}/swapfile`);
44
- await exec(`chmod 600 ${this.devices.root.mountPoint}/swapfile`, this.echo);
45
- await exec(`mkswap ${this.devices.root.mountPoint}/swapfile`, this.echo);
46
- }
47
- return true;
48
- }
49
- /**
50
- * umountFs
51
- */
52
- export async function umountFs() {
53
- // efi
54
- if (this.efi) {
55
- await this.umount(this.devices.efi.name);
56
- }
57
- // data
58
- if (this.devices.data.name !== 'none') {
59
- await this.umount(this.devices.data.name);
60
- }
61
- // boot
62
- if (this.devices.boot.name !== 'none') {
63
- await this.umount(this.devices.boot.name);
64
- }
65
- // root
66
- await this.umount(this.devices.root.name);
67
- return true;
68
- }
@@ -1,17 +0,0 @@
1
- /**
2
- * ./src/krill/modules/mount-vfs.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- * https://stackoverflow.com/questions/23876782/how-do-i-split-a-typescript-class-into-multiple-files
8
- */
9
- import Sequence from '../sequence.js';
10
- /**
11
- * mountvfs()
12
- */
13
- export declare function mountVfs(this: Sequence): Promise<void>;
14
- /**
15
- *
16
- */
17
- export declare function umountVfs(this: Sequence): Promise<void>;
@@ -1,59 +0,0 @@
1
- /**
2
- * ./src/krill/modules/mount-vfs.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- * https://stackoverflow.com/questions/23876782/how-do-i-split-a-typescript-class-into-multiple-files
8
- */
9
- import { exec } from '../../../lib/utils.js';
10
- /**
11
- * mountvfs()
12
- */
13
- export async function mountVfs() {
14
- /**
15
- * dev
16
- */
17
- await exec(`mkdir ${this.installTarget}/dev ${this.toNull}`, this.echo);
18
- await exec(`mount -o bind /dev ${this.installTarget}/dev ${this.toNull}`, this.echo);
19
- /**
20
- * dev/pts
21
- */
22
- await exec(`mkdir ${this.installTarget}/dev/pts ${this.toNull}`, this.echo);
23
- await exec(`mount -o bind /dev/pts ${this.installTarget}/dev/pts ${this.toNull}`, this.echo);
24
- /**
25
- * proc
26
- */
27
- await exec(`mkdir ${this.installTarget}/proc ${this.toNull}`, this.echo);
28
- await exec(`mount -o bind /proc ${this.installTarget}/proc ${this.toNull}`, this.echo);
29
- /**
30
- * sys
31
- */
32
- await exec(`mkdir ${this.installTarget}/sys ${this.toNull}`, this.echo);
33
- await exec(`mount -o bind /sys ${this.installTarget}/sys ${this.toNull}`, this.echo);
34
- /**
35
- * sys/efivar
36
- */
37
- if (this.efi) {
38
- await exec(`mkdir -p ${this.installTarget}/sys/firmware/efi/efivars ${this.toNull}`, this.echo);
39
- await exec(`mount -o bind /sys/firmware/efi/efivars ${this.installTarget}/sys/firmware/efi/efivars`);
40
- }
41
- /**
42
- * run: use recursive binding rbins
43
- */
44
- await exec(`mkdir ${this.installTarget}/run ${this.toNull}`, this.echo);
45
- await exec(`mount -o rbind /run ${this.installTarget}/run ${this.toNull}`, this.echo);
46
- }
47
- /**
48
- *
49
- */
50
- export async function umountVfs() {
51
- await this.umount(`${this.installTarget}/dev/pts`);
52
- await this.umount(`${this.installTarget}/dev`);
53
- await this.umount(`${this.installTarget}/proc`);
54
- await this.umount(`${this.installTarget}/run`);
55
- if (this.efi) {
56
- await this.umount(`${this.installTarget}/sys/firmware/efi/efivars`);
57
- }
58
- await this.umount(`${this.installTarget}/sys`);
59
- }
@@ -1,19 +0,0 @@
1
- /**
2
- * ./src/krill/modules/network-cfg.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- * https://stackoverflow.com/questions/23876782/how-do-i-split-a-typescript-class-into-multiple-files
8
- */
9
- import Sequence from '../sequence.js';
10
- /**
11
- * networkcfg
12
- *
13
- * - debian: /etc/network/interface
14
- * - ubuntu: netplan
15
- * - arch:
16
- *
17
- * - all: /etc/resolv.conf
18
- */
19
- export default function networkCfg(this: Sequence): Promise<void>;