penguins-eggs 10.0.60 → 10.1.0

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 (470) hide show
  1. package/.oclif.manifest.json +93 -1
  2. package/README.md +79 -40
  3. package/addons/eggs/theme/calamares/modules/{_users.yml → users.yml} +3 -3
  4. package/addons/eggs/theme/livecd/grub.main.full.cfg +1 -1
  5. package/addons/eggs/theme/livecd/grub.main.simple.cfg +1 -1
  6. package/conf/derivatives.yaml +1 -3
  7. package/conf/derivatives_fedora.yaml +6 -0
  8. package/conf/distros/alpine/calamares/modules/users.yml +3 -3
  9. package/conf/distros/bionic/calamares/calamares-modules/grubcfg/grubcfg.yml +1 -1
  10. package/conf/distros/bionic/calamares/modules/users.yml +3 -3
  11. package/conf/distros/buster/calamares/modules/users.yml +3 -3
  12. package/conf/distros/fedora/calamares/modules/users.yml +3 -3
  13. package/conf/distros/noble/calamares/modules/focal-jammy/users.yml +3 -3
  14. package/conf/distros/opensuse/calamares/modules/users.yml +3 -3
  15. package/conf/distros/rolling/calamares/modules/users.yml +3 -3
  16. package/conf/eggs.yaml +1 -1
  17. package/conf/love.yaml +4 -4
  18. package/package.json +22 -19
  19. package/perrisbrewery/scripts/postinst +98 -0
  20. package/perrisbrewery/scripts/postrm +82 -0
  21. package/perrisbrewery/scripts/preinst +40 -0
  22. package/perrisbrewery/scripts/prerm +47 -0
  23. package/perrisbrewery/template/control.template +17 -0
  24. package/perrisbrewery/template/dependencies-bionic.yaml +33 -0
  25. package/perrisbrewery/template/dependencies.yaml +37 -0
  26. package/perrisbrewery/template/man.template.md +110 -0
  27. package/pods/README.md +14 -0
  28. package/pods/almalinux.sh +10 -0
  29. package/pods/archlinux.sh +10 -0
  30. package/pods/ci/README.md +5 -0
  31. package/pods/ci/kernel-overlay-install.sh +114 -0
  32. package/pods/ci/minimal/almalinux-container2host.sh +165 -0
  33. package/pods/ci/minimal/archlinux-container2host.sh +125 -0
  34. package/pods/ci/minimal/debian-container2host.sh +173 -0
  35. package/pods/ci/minimal/fedora-container2host.sh +170 -0
  36. package/pods/ci/minimal/manjaro-container2host.sh +123 -0
  37. package/pods/ci/minimal/opensuse-container2host.sh +143 -0
  38. package/pods/ci/penguins-eggs-execute.sh +22 -0
  39. package/pods/ci/penguins-eggs-install.sh +115 -0
  40. package/pods/ci/run +34 -0
  41. package/pods/ci/run-on-almalinux.sh +50 -0
  42. package/pods/ci/run-on-archlinux.sh +64 -0
  43. package/pods/ci/run-on-debian.sh +51 -0
  44. package/pods/ci/run-on-devuan.sh +48 -0
  45. package/pods/ci/run-on-fedora.sh +51 -0
  46. package/pods/ci/run-on-manjaro.sh +61 -0
  47. package/pods/ci/run-on-opensuse.sh +58 -0
  48. package/pods/ci/run-on-rockylinux.sh +51 -0
  49. package/pods/ci/run-on-ubuntu.sh +52 -0
  50. package/pods/debian.sh +23 -0
  51. package/pods/devuan.sh +26 -0
  52. package/pods/fedora.sh +12 -0
  53. package/pods/lmde.sh +22 -0
  54. package/pods/manjaro.sh +10 -0
  55. package/pods/opensuse.sh +12 -0
  56. package/pods/podman.command.sh +85 -0
  57. package/pods/rocky.sh +12 -0
  58. package/pods/run-build-packages-debs.sh +45 -0
  59. package/pods/run-create-debs.sh +23 -0
  60. package/pods/ubuntu.sh +24 -0
  61. package/scripts/_eggs +21 -6
  62. package/scripts/eggs.bash +6 -4
  63. package/dist/classes/bleach.d.ts +0 -32
  64. package/dist/classes/bleach.js +0 -135
  65. package/dist/classes/cli-autologin.d.ts +0 -52
  66. package/dist/classes/cli-autologin.js +0 -247
  67. package/dist/classes/compressors.d.ts +0 -54
  68. package/dist/classes/compressors.js +0 -109
  69. package/dist/classes/daddy.d.ts +0 -26
  70. package/dist/classes/daddy.js +0 -167
  71. package/dist/classes/distro.d.ts +0 -32
  72. package/dist/classes/distro.js +0 -341
  73. package/dist/classes/diversions.d.ts +0 -52
  74. package/dist/classes/diversions.js +0 -126
  75. package/dist/classes/incubation/branding.d.ts +0 -17
  76. package/dist/classes/incubation/branding.js +0 -85
  77. package/dist/classes/incubation/fisherman-helper/displaymanager.d.ts +0 -11
  78. package/dist/classes/incubation/fisherman-helper/displaymanager.js +0 -40
  79. package/dist/classes/incubation/fisherman-helper/packages.d.ts +0 -20
  80. package/dist/classes/incubation/fisherman-helper/packages.js +0 -72
  81. package/dist/classes/incubation/fisherman-helper/settings.d.ts +0 -15
  82. package/dist/classes/incubation/fisherman-helper/settings.js +0 -83
  83. package/dist/classes/incubation/fisherman.d.ts +0 -70
  84. package/dist/classes/incubation/fisherman.js +0 -263
  85. package/dist/classes/incubation/incubator.d/alpine.d.ts +0 -32
  86. package/dist/classes/incubation/incubator.d/alpine.js +0 -78
  87. package/dist/classes/incubation/incubator.d/bionic.d.ts +0 -32
  88. package/dist/classes/incubation/incubator.d/bionic.js +0 -83
  89. package/dist/classes/incubation/incubator.d/buster.d.ts +0 -32
  90. package/dist/classes/incubation/incubator.d/buster.js +0 -85
  91. package/dist/classes/incubation/incubator.d/jessie.d.ts +0 -31
  92. package/dist/classes/incubation/incubator.d/jessie.js +0 -44
  93. package/dist/classes/incubation/incubator.d/noble.d.ts +0 -32
  94. package/dist/classes/incubation/incubator.d/noble.js +0 -85
  95. package/dist/classes/incubation/incubator.d/openmamba.d.ts +0 -32
  96. package/dist/classes/incubation/incubator.d/openmamba.js +0 -81
  97. package/dist/classes/incubation/incubator.d/opensuse.d.ts +0 -32
  98. package/dist/classes/incubation/incubator.d/opensuse.js +0 -81
  99. package/dist/classes/incubation/incubator.d/rolling.d.ts +0 -32
  100. package/dist/classes/incubation/incubator.d/rolling.js +0 -80
  101. package/dist/classes/incubation/incubator.d.ts +0 -44
  102. package/dist/classes/incubation/incubator.js +0 -382
  103. package/dist/classes/incubation/installer.d.ts +0 -13
  104. package/dist/classes/incubation/installer.js +0 -52
  105. package/dist/classes/keyboards.d.ts +0 -50
  106. package/dist/classes/keyboards.js +0 -287
  107. package/dist/classes/locales.d.ts +0 -21
  108. package/dist/classes/locales.js +0 -77
  109. package/dist/classes/network.d.ts +0 -37
  110. package/dist/classes/network.js +0 -98
  111. package/dist/classes/ovary.d/bind-live-fs.d.ts +0 -18
  112. package/dist/classes/ovary.d/bind-live-fs.js +0 -185
  113. package/dist/classes/ovary.d/bind-vfs.d.ts +0 -17
  114. package/dist/classes/ovary.d/bind-vfs.js +0 -37
  115. package/dist/classes/ovary.d/create-xdg-autostart.d.ts +0 -13
  116. package/dist/classes/ovary.d/create-xdg-autostart.js +0 -194
  117. package/dist/classes/ovary.d/edit-live-fs.d.ts +0 -19
  118. package/dist/classes/ovary.d/edit-live-fs.js +0 -249
  119. package/dist/classes/ovary.d/fertilization.d.ts +0 -12
  120. package/dist/classes/ovary.d/fertilization.js +0 -46
  121. package/dist/classes/ovary.d/finished.d.ts +0 -13
  122. package/dist/classes/ovary.d/finished.js +0 -41
  123. package/dist/classes/ovary.d/initrd.d.ts +0 -21
  124. package/dist/classes/ovary.d/initrd.js +0 -72
  125. package/dist/classes/ovary.d/kernel-copy.d.ts +0 -12
  126. package/dist/classes/ovary.d/kernel-copy.js +0 -36
  127. package/dist/classes/ovary.d/live-create-structure.d.ts +0 -12
  128. package/dist/classes/ovary.d/live-create-structure.js +0 -90
  129. package/dist/classes/ovary.d/make-dot-disk.d.ts +0 -12
  130. package/dist/classes/ovary.d/make-dot-disk.js +0 -40
  131. package/dist/classes/ovary.d/make-efi.d.ts +0 -12
  132. package/dist/classes/ovary.d/make-efi.js +0 -268
  133. package/dist/classes/ovary.d/make-iso.d.ts +0 -13
  134. package/dist/classes/ovary.d/make-iso.js +0 -45
  135. package/dist/classes/ovary.d/make-squashfs.d.ts +0 -18
  136. package/dist/classes/ovary.d/make-squashfs.js +0 -117
  137. package/dist/classes/ovary.d/merged.d.ts +0 -31
  138. package/dist/classes/ovary.d/merged.js +0 -87
  139. package/dist/classes/ovary.d/produce.d.ts +0 -23
  140. package/dist/classes/ovary.d/produce.js +0 -287
  141. package/dist/classes/ovary.d/rexec.d.ts +0 -13
  142. package/dist/classes/ovary.d/rexec.js +0 -34
  143. package/dist/classes/ovary.d/syslinux.d.ts +0 -12
  144. package/dist/classes/ovary.d/syslinux.js +0 -79
  145. package/dist/classes/ovary.d/user-create-live.d.ts +0 -14
  146. package/dist/classes/ovary.d/user-create-live.js +0 -86
  147. package/dist/classes/ovary.d/users-remove.d.ts +0 -9
  148. package/dist/classes/ovary.d/users-remove.js +0 -38
  149. package/dist/classes/ovary.d/xorriso-commend.d.ts +0 -14
  150. package/dist/classes/ovary.d/xorriso-commend.js +0 -119
  151. package/dist/classes/ovary.d.ts +0 -77
  152. package/dist/classes/ovary.js +0 -81
  153. package/dist/classes/pacman.d/aldos.d.ts +0 -52
  154. package/dist/classes/pacman.d/aldos.js +0 -100
  155. package/dist/classes/pacman.d/alpine.d.ts +0 -56
  156. package/dist/classes/pacman.d/alpine.js +0 -162
  157. package/dist/classes/pacman.d/archlinux.d.ts +0 -62
  158. package/dist/classes/pacman.d/archlinux.js +0 -140
  159. package/dist/classes/pacman.d/debian.d.ts +0 -65
  160. package/dist/classes/pacman.d/debian.js +0 -143
  161. package/dist/classes/pacman.d/fedora.d.ts +0 -53
  162. package/dist/classes/pacman.d/fedora.js +0 -101
  163. package/dist/classes/pacman.d/openmamba.d.ts +0 -52
  164. package/dist/classes/pacman.d/openmamba.js +0 -100
  165. package/dist/classes/pacman.d/opensuse.d.ts +0 -53
  166. package/dist/classes/pacman.d/opensuse.js +0 -102
  167. package/dist/classes/pacman.d/voidlinux.d.ts +0 -52
  168. package/dist/classes/pacman.d/voidlinux.js +0 -90
  169. package/dist/classes/pacman.d.ts +0 -139
  170. package/dist/classes/pacman.js +0 -775
  171. package/dist/classes/pve-live.d.ts +0 -17
  172. package/dist/classes/pve-live.js +0 -52
  173. package/dist/classes/pxe.d.ts +0 -74
  174. package/dist/classes/pxe.js +0 -410
  175. package/dist/classes/settings.d.ts +0 -52
  176. package/dist/classes/settings.js +0 -185
  177. package/dist/classes/sources_list.d.ts +0 -28
  178. package/dist/classes/sources_list.js +0 -89
  179. package/dist/classes/systemctl.d.ts +0 -47
  180. package/dist/classes/systemctl.js +0 -86
  181. package/dist/classes/tailor.d.ts +0 -50
  182. package/dist/classes/tailor.js +0 -526
  183. package/dist/classes/tools.d.ts +0 -26
  184. package/dist/classes/tools.js +0 -50
  185. package/dist/classes/users.d.ts +0 -28
  186. package/dist/classes/users.js +0 -143
  187. package/dist/classes/utils.d.ts +0 -327
  188. package/dist/classes/utils.js +0 -1019
  189. package/dist/classes/xdg.d.ts +0 -45
  190. package/dist/classes/xdg.js +0 -337
  191. package/dist/classes/yolk.d.ts +0 -33
  192. package/dist/classes/yolk.js +0 -114
  193. package/dist/commands/adapt.d.ts +0 -17
  194. package/dist/commands/adapt.js +0 -33
  195. package/dist/commands/analyze.d.ts +0 -26
  196. package/dist/commands/analyze.js +0 -95
  197. package/dist/commands/calamares.d.ts +0 -29
  198. package/dist/commands/calamares.js +0 -112
  199. package/dist/commands/config.d.ts +0 -35
  200. package/dist/commands/config.js +0 -120
  201. package/dist/commands/cuckoo.d.ts +0 -16
  202. package/dist/commands/cuckoo.js +0 -62
  203. package/dist/commands/dad.d.ts +0 -20
  204. package/dist/commands/dad.js +0 -46
  205. package/dist/commands/export/iso.d.ts +0 -19
  206. package/dist/commands/export/iso.js +0 -55
  207. package/dist/commands/export/pkg.d.ts +0 -29
  208. package/dist/commands/export/pkg.js +0 -163
  209. package/dist/commands/export/tarballs.d.ts +0 -27
  210. package/dist/commands/export/tarballs.js +0 -84
  211. package/dist/commands/install.d.ts +0 -38
  212. package/dist/commands/install.js +0 -91
  213. package/dist/commands/kill.d.ts +0 -24
  214. package/dist/commands/kill.js +0 -50
  215. package/dist/commands/love.d.ts +0 -20
  216. package/dist/commands/love.js +0 -59
  217. package/dist/commands/mom.d.ts +0 -16
  218. package/dist/commands/mom.js +0 -30
  219. package/dist/commands/produce.d.ts +0 -34
  220. package/dist/commands/produce.js +0 -201
  221. package/dist/commands/status.d.ts +0 -23
  222. package/dist/commands/status.js +0 -31
  223. package/dist/commands/syncfrom.d.ts +0 -45
  224. package/dist/commands/syncfrom.js +0 -152
  225. package/dist/commands/syncto.d.ts +0 -40
  226. package/dist/commands/syncto.js +0 -175
  227. package/dist/commands/tools/clean.d.ts +0 -18
  228. package/dist/commands/tools/clean.js +0 -37
  229. package/dist/commands/tools/ppa.d.ts +0 -26
  230. package/dist/commands/tools/ppa.js +0 -138
  231. package/dist/commands/tools/skel.d.ts +0 -18
  232. package/dist/commands/tools/skel.js +0 -44
  233. package/dist/commands/tools/stat.d.ts +0 -31
  234. package/dist/commands/tools/stat.js +0 -70
  235. package/dist/commands/tools/yolk.d.ts +0 -24
  236. package/dist/commands/tools/yolk.js +0 -45
  237. package/dist/commands/update.d.ts +0 -51
  238. package/dist/commands/update.js +0 -219
  239. package/dist/commands/wardrobe/get.d.ts +0 -23
  240. package/dist/commands/wardrobe/get.js +0 -52
  241. package/dist/commands/wardrobe/list.d.ts +0 -24
  242. package/dist/commands/wardrobe/list.js +0 -125
  243. package/dist/commands/wardrobe/show.d.ts +0 -25
  244. package/dist/commands/wardrobe/show.js +0 -97
  245. package/dist/commands/wardrobe/wear.d.ts +0 -26
  246. package/dist/commands/wardrobe/wear.js +0 -84
  247. package/dist/index.d.ts +0 -54
  248. package/dist/index.js +0 -147
  249. package/dist/index_old.d.ts +0 -8
  250. package/dist/index_old.js +0 -8
  251. package/dist/interfaces/i-addons.d.ts +0 -12
  252. package/dist/interfaces/i-addons.js +0 -8
  253. package/dist/interfaces/i-analyze.d.ts +0 -17
  254. package/dist/interfaces/i-analyze.js +0 -17
  255. package/dist/interfaces/i-app.d.ts +0 -14
  256. package/dist/interfaces/i-app.js +0 -8
  257. package/dist/interfaces/i-branding.d.ts +0 -36
  258. package/dist/interfaces/i-branding.js +0 -8
  259. package/dist/interfaces/i-calamares-displaymanager.d.ts +0 -17
  260. package/dist/interfaces/i-calamares-displaymanager.js +0 -1
  261. package/dist/interfaces/i-calamares-finished.d.ts +0 -12
  262. package/dist/interfaces/i-calamares-finished.js +0 -1
  263. package/dist/interfaces/i-calamares-packages.d.ts +0 -28
  264. package/dist/interfaces/i-calamares-packages.js +0 -1
  265. package/dist/interfaces/i-calamares-partition.d.ts +0 -40
  266. package/dist/interfaces/i-calamares-partition.js +0 -1
  267. package/dist/interfaces/i-config-tools.d.ts +0 -15
  268. package/dist/interfaces/i-config-tools.js +0 -8
  269. package/dist/interfaces/i-devices.d.ts +0 -20
  270. package/dist/interfaces/i-devices.js +0 -8
  271. package/dist/interfaces/i-distro.d.ts +0 -23
  272. package/dist/interfaces/i-distro.js +0 -8
  273. package/dist/interfaces/i-drive-list.d.ts +0 -33
  274. package/dist/interfaces/i-drive-list.js +0 -8
  275. package/dist/interfaces/i-eggs-config.d.ts +0 -32
  276. package/dist/interfaces/i-eggs-config.js +0 -8
  277. package/dist/interfaces/i-excludes.d.ts +0 -14
  278. package/dist/interfaces/i-excludes.js +0 -8
  279. package/dist/interfaces/i-exec.d.ts +0 -11
  280. package/dist/interfaces/i-exec.js +0 -8
  281. package/dist/interfaces/i-initrd.d.ts +0 -13
  282. package/dist/interfaces/i-initrd.js +0 -8
  283. package/dist/interfaces/i-install.d.ts +0 -16
  284. package/dist/interfaces/i-install.js +0 -8
  285. package/dist/interfaces/i-installer.d.ts +0 -17
  286. package/dist/interfaces/i-installer.js +0 -8
  287. package/dist/interfaces/i-luks-passphrase.d.ts +0 -11
  288. package/dist/interfaces/i-luks-passphrase.js +0 -8
  289. package/dist/interfaces/i-materia.d.ts +0 -36
  290. package/dist/interfaces/i-materia.js +0 -8
  291. package/dist/interfaces/i-net.d.ts +0 -16
  292. package/dist/interfaces/i-net.js +0 -8
  293. package/dist/interfaces/i-os-release.d.ts +0 -5
  294. package/dist/interfaces/i-os-release.js +0 -1
  295. package/dist/interfaces/i-packages.d.ts +0 -16
  296. package/dist/interfaces/i-packages.js +0 -8
  297. package/dist/interfaces/i-partitions.d.ts +0 -16
  298. package/dist/interfaces/i-partitions.js +0 -8
  299. package/dist/interfaces/i-pxe.d.ts +0 -45
  300. package/dist/interfaces/i-pxe.js +0 -1
  301. package/dist/interfaces/i-remix.d.ts +0 -21
  302. package/dist/interfaces/i-remix.js +0 -8
  303. package/dist/interfaces/i-settings.d.ts +0 -33
  304. package/dist/interfaces/i-settings.js +0 -8
  305. package/dist/interfaces/i-user.d.ts +0 -14
  306. package/dist/interfaces/i-user.js +0 -8
  307. package/dist/interfaces/i-workdir.d.ts +0 -14
  308. package/dist/interfaces/i-workdir.js +0 -8
  309. package/dist/interfaces/i-xkb-model.d.ts +0 -24
  310. package/dist/interfaces/i-xkb-model.js +0 -8
  311. package/dist/interfaces/index.d.ts +0 -26
  312. package/dist/interfaces/index.js +0 -8
  313. package/dist/krill/classes/cfs.d.ts +0 -17
  314. package/dist/krill/classes/cfs.js +0 -39
  315. package/dist/krill/classes/krill_enums.d.ts +0 -24
  316. package/dist/krill/classes/krill_enums.js +0 -26
  317. package/dist/krill/classes/prepare.d/confirm.d.ts +0 -5
  318. package/dist/krill/classes/prepare.d/confirm.js +0 -30
  319. package/dist/krill/classes/prepare.d/keyboard.d.ts +0 -14
  320. package/dist/krill/classes/prepare.d/keyboard.js +0 -62
  321. package/dist/krill/classes/prepare.d/location.d.ts +0 -17
  322. package/dist/krill/classes/prepare.d/location.js +0 -59
  323. package/dist/krill/classes/prepare.d/network.d.ts +0 -14
  324. package/dist/krill/classes/prepare.d/network.js +0 -68
  325. package/dist/krill/classes/prepare.d/partitions.d.ts +0 -14
  326. package/dist/krill/classes/prepare.d/partitions.js +0 -86
  327. package/dist/krill/classes/prepare.d/summary.d.ts +0 -15
  328. package/dist/krill/classes/prepare.d/summary.js +0 -69
  329. package/dist/krill/classes/prepare.d/users.d.ts +0 -6
  330. package/dist/krill/classes/prepare.d/users.js +0 -63
  331. package/dist/krill/classes/prepare.d/welcome.d.ts +0 -6
  332. package/dist/krill/classes/prepare.d/welcome.js +0 -30
  333. package/dist/krill/classes/prepare.d.ts +0 -64
  334. package/dist/krill/classes/prepare.js +0 -314
  335. package/dist/krill/classes/sequence.d/add_user.d.ts +0 -20
  336. package/dist/krill/classes/sequence.d/add_user.js +0 -48
  337. package/dist/krill/classes/sequence.d/bootloader.d.ts +0 -14
  338. package/dist/krill/classes/sequence.d/bootloader.js +0 -95
  339. package/dist/krill/classes/sequence.d/bootloader_config.d.ts +0 -14
  340. package/dist/krill/classes/sequence.d/bootloader_config.js +0 -165
  341. package/dist/krill/classes/sequence.d/change_password.d.ts +0 -15
  342. package/dist/krill/classes/sequence.d/change_password.js +0 -18
  343. package/dist/krill/classes/sequence.d/del_live_user.d.ts +0 -14
  344. package/dist/krill/classes/sequence.d/del_live_user.js +0 -39
  345. package/dist/krill/classes/sequence.d/fstab.d.ts +0 -14
  346. package/dist/krill/classes/sequence.d/fstab.js +0 -189
  347. package/dist/krill/classes/sequence.d/grubcfg.d.ts +0 -17
  348. package/dist/krill/classes/sequence.d/grubcfg.js +0 -33
  349. package/dist/krill/classes/sequence.d/hostname.d.ts +0 -13
  350. package/dist/krill/classes/sequence.d/hostname.js +0 -50
  351. package/dist/krill/classes/sequence.d/initramfs.d.ts +0 -13
  352. package/dist/krill/classes/sequence.d/initramfs.js +0 -54
  353. package/dist/krill/classes/sequence.d/initramfs_cfg.d.ts +0 -14
  354. package/dist/krill/classes/sequence.d/initramfs_cfg.js +0 -35
  355. package/dist/krill/classes/sequence.d/locale.d.ts +0 -13
  356. package/dist/krill/classes/sequence.d/locale.js +0 -91
  357. package/dist/krill/classes/sequence.d/locale_cfg.d.ts +0 -10
  358. package/dist/krill/classes/sequence.d/locale_cfg.js +0 -58
  359. package/dist/krill/classes/sequence.d/m_keyboard.d.ts +0 -14
  360. package/dist/krill/classes/sequence.d/m_keyboard.js +0 -58
  361. package/dist/krill/classes/sequence.d/machine_id.d.ts +0 -15
  362. package/dist/krill/classes/sequence.d/machine_id.js +0 -33
  363. package/dist/krill/classes/sequence.d/mkfs.d.ts +0 -15
  364. package/dist/krill/classes/sequence.d/mkfs.js +0 -72
  365. package/dist/krill/classes/sequence.d/mount_fs.d.ts +0 -17
  366. package/dist/krill/classes/sequence.d/mount_fs.js +0 -68
  367. package/dist/krill/classes/sequence.d/mount_vfs.d.ts +0 -17
  368. package/dist/krill/classes/sequence.d/mount_vfs.js +0 -40
  369. package/dist/krill/classes/sequence.d/network_cfg.d.ts +0 -19
  370. package/dist/krill/classes/sequence.d/network_cfg.js +0 -73
  371. package/dist/krill/classes/sequence.d/packages.d.ts +0 -14
  372. package/dist/krill/classes/sequence.d/packages.js +0 -111
  373. package/dist/krill/classes/sequence.d/partition.d/bios_luks.d.ts +0 -17
  374. package/dist/krill/classes/sequence.d/partition.d/bios_luks.js +0 -73
  375. package/dist/krill/classes/sequence.d/partition.d/bios_standard.d.ts +0 -17
  376. package/dist/krill/classes/sequence.d/partition.d/bios_standard.js +0 -36
  377. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.d.ts +0 -17
  378. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.js +0 -78
  379. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.d.ts +0 -10
  380. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.js +0 -32
  381. package/dist/krill/classes/sequence.d/partition.d.ts +0 -14
  382. package/dist/krill/classes/sequence.d/partition.js +0 -84
  383. package/dist/krill/classes/sequence.d/remove_installer_link.d.ts +0 -13
  384. package/dist/krill/classes/sequence.d/remove_installer_link.js +0 -35
  385. package/dist/krill/classes/sequence.d/umount.d.ts +0 -14
  386. package/dist/krill/classes/sequence.d/umount.js +0 -28
  387. package/dist/krill/classes/sequence.d/unpackfs.d.ts +0 -13
  388. package/dist/krill/classes/sequence.d/unpackfs.js +0 -20
  389. package/dist/krill/classes/sequence.d.ts +0 -136
  390. package/dist/krill/classes/sequence.js +0 -663
  391. package/dist/krill/components/finished.d.ts +0 -16
  392. package/dist/krill/components/finished.js +0 -56
  393. package/dist/krill/components/information.d.ts +0 -8
  394. package/dist/krill/components/information.js +0 -156
  395. package/dist/krill/components/install.d.ts +0 -15
  396. package/dist/krill/components/install.js +0 -60
  397. package/dist/krill/components/keyboard.d.ts +0 -16
  398. package/dist/krill/components/keyboard.js +0 -54
  399. package/dist/krill/components/location.d.ts +0 -16
  400. package/dist/krill/components/location.js +0 -59
  401. package/dist/krill/components/network.d.ts +0 -19
  402. package/dist/krill/components/network.js +0 -65
  403. package/dist/krill/components/partitions.d.ts +0 -18
  404. package/dist/krill/components/partitions.js +0 -89
  405. package/dist/krill/components/steps.d.ts +0 -13
  406. package/dist/krill/components/steps.js +0 -148
  407. package/dist/krill/components/summary.d.ts +0 -25
  408. package/dist/krill/components/summary.js +0 -77
  409. package/dist/krill/components/title.d.ts +0 -11
  410. package/dist/krill/components/title.js +0 -35
  411. package/dist/krill/components/users.d.ts +0 -24
  412. package/dist/krill/components/users.js +0 -80
  413. package/dist/krill/components/welcome.d.ts +0 -13
  414. package/dist/krill/components/welcome.js +0 -63
  415. package/dist/krill/interfaces/i_krill.d.ts +0 -44
  416. package/dist/krill/interfaces/i_krill.js +0 -8
  417. package/dist/krill/interfaces/i_krill_config.d.ts +0 -35
  418. package/dist/krill/interfaces/i_krill_config.js +0 -8
  419. package/dist/krill/lib/get_address.d.ts +0 -8
  420. package/dist/krill/lib/get_address.js +0 -23
  421. package/dist/krill/lib/get_dns.d.ts +0 -8
  422. package/dist/krill/lib/get_dns.js +0 -23
  423. package/dist/krill/lib/get_domain.d.ts +0 -8
  424. package/dist/krill/lib/get_domain.js +0 -23
  425. package/dist/krill/lib/get_gateway.d.ts +0 -8
  426. package/dist/krill/lib/get_gateway.js +0 -23
  427. package/dist/krill/lib/get_hostname.d.ts +0 -8
  428. package/dist/krill/lib/get_hostname.js +0 -23
  429. package/dist/krill/lib/get_luks_passphrase.d.ts +0 -8
  430. package/dist/krill/lib/get_luks_passphrase.js +0 -40
  431. package/dist/krill/lib/get_netmask.d.ts +0 -8
  432. package/dist/krill/lib/get_netmask.js +0 -23
  433. package/dist/krill/lib/get_password.d.ts +0 -8
  434. package/dist/krill/lib/get_password.js +0 -36
  435. package/dist/krill/lib/get_userfullname.d.ts +0 -8
  436. package/dist/krill/lib/get_userfullname.js +0 -23
  437. package/dist/krill/lib/get_username.d.ts +0 -8
  438. package/dist/krill/lib/get_username.js +0 -23
  439. package/dist/krill/lib/kill_me_softly.d.ts +0 -11
  440. package/dist/krill/lib/kill_me_softly.js +0 -61
  441. package/dist/krill/lib/select_address_type.d.ts +0 -8
  442. package/dist/krill/lib/select_address_type.js +0 -24
  443. package/dist/krill/lib/select_filesystem_type.d.ts +0 -8
  444. package/dist/krill/lib/select_filesystem_type.js +0 -39
  445. package/dist/krill/lib/select_installation_device.d.ts +0 -8
  446. package/dist/krill/lib/select_installation_device.js +0 -40
  447. package/dist/krill/lib/select_installation_mode.d.ts +0 -9
  448. package/dist/krill/lib/select_installation_mode.js +0 -25
  449. package/dist/krill/lib/select_interface.d.ts +0 -8
  450. package/dist/krill/lib/select_interface.js +0 -24
  451. package/dist/krill/lib/select_keyboard_layout.d.ts +0 -11
  452. package/dist/krill/lib/select_keyboard_layout.js +0 -36
  453. package/dist/krill/lib/select_keyboard_model.d.ts +0 -11
  454. package/dist/krill/lib/select_keyboard_model.js +0 -34
  455. package/dist/krill/lib/select_keyboard_option.d.ts +0 -11
  456. package/dist/krill/lib/select_keyboard_option.js +0 -34
  457. package/dist/krill/lib/select_keyboard_variant.d.ts +0 -11
  458. package/dist/krill/lib/select_keyboard_variant.js +0 -35
  459. package/dist/krill/lib/select_languages.d.ts +0 -8
  460. package/dist/krill/lib/select_languages.js +0 -28
  461. package/dist/krill/lib/select_regions.d.ts +0 -8
  462. package/dist/krill/lib/select_regions.js +0 -24
  463. package/dist/krill/lib/select_replaced_partition.d.ts +0 -8
  464. package/dist/krill/lib/select_replaced_partition.js +0 -31
  465. package/dist/krill/lib/select_user_swap_choice.d.ts +0 -9
  466. package/dist/krill/lib/select_user_swap_choice.js +0 -35
  467. package/dist/krill/lib/select_zones.d.ts +0 -8
  468. package/dist/krill/lib/select_zones.js +0 -518
  469. package/dist/lib/utils.d.ts +0 -42
  470. package/dist/lib/utils.js +0 -87
@@ -1,18 +0,0 @@
1
- /**
2
- * ./src/krill/modules/change-password.ts
3
- * penguins-eggs v.10.0.0 / 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
- * changePassword
12
- * @param name
13
- * @param newPassword
14
- */
15
- export default async function changePassword(name = 'live', newPassword = 'evolution') {
16
- const cmd = `echo ${name}:${newPassword} | chroot ${this.installTarget} chpasswd ${this.toNull}`;
17
- await exec(cmd, this.echo);
18
- }
@@ -1,14 +0,0 @@
1
- /**
2
- * ./src/krill/modules/del-live-user.ts
3
- * penguins-eggs v.10.0.0 / 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
- * delUser
12
- * va corretto con users.conf di calamares
13
- */
14
- export default function delLiveUser(this: Sequence): Promise<void>;
@@ -1,39 +0,0 @@
1
- /**
2
- * ./src/krill/modules/del-live-user.ts
3
- * penguins-eggs v.10.0.0 / 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
- /**
12
- * delUser
13
- * va corretto con users.conf di calamares
14
- */
15
- export default async function delLiveUser() {
16
- if (Utils.isLive()) {
17
- const user = this.settings.config.user_opt;
18
- let userExists = false;
19
- try {
20
- const cmd = `#!/bin/sh\ngetent passwd "${user}" > /dev/null`;
21
- await exec(cmd, Utils.setEcho(this.verbose));
22
- userExists = true;
23
- }
24
- catch (error) {
25
- console.log(error);
26
- }
27
- finally {
28
- if (userExists) {
29
- let cmd = `chroot ${this.installTarget} deluser --remove-home ${user} ${this.toNull}`;
30
- if (this.distro.familyId === 'archlinux' ||
31
- this.distro.familyId === 'fedora' ||
32
- this.distro.familyId === 'opensuse') {
33
- cmd = `chroot ${this.installTarget} sudo userdel -r ${user} ${this.toNull}`;
34
- }
35
- await exec(cmd, this.echo);
36
- }
37
- }
38
- }
39
- }
@@ -1,14 +0,0 @@
1
- /**
2
- * ./src/krill/modules/fstab.ts
3
- * penguins-eggs v.10.0.0 / 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
- * fstab()
12
- * @param devices
13
- */
14
- export default function fstab(this: Sequence, installDevice: string, crypted?: boolean): Promise<void>;
@@ -1,189 +0,0 @@
1
- /**
2
- * ./src/krill/modules/fstab.ts
3
- * penguins-eggs v.10.0.0 / 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 shx from 'shelljs';
10
- import { InstallationMode } from '../krill_enums.js';
11
- import Pacman from '../../../classes/pacman.js';
12
- import Utils from '../../../classes/utils.js';
13
- import { SwapChoice } from '../krill_enums.js';
14
- /**
15
- * fstab()
16
- * @param devices
17
- */
18
- export default async function fstab(installDevice, crypted = false) {
19
- let text = '';
20
- /**
21
- * crypttab
22
- */
23
- if (this.partitions.installationMode === InstallationMode.Luks) {
24
- const crypttab = this.installTarget + '/etc/crypttab';
25
- text += '# /etc/crypttab: mappings for encrypted partitions.\n';
26
- text += '#\n';
27
- text += '# Each mapped device will be created in /dev/mapper, so your /etc/fstab\n';
28
- text += '# should use the /dev/mapper/<name> paths for encrypted devices.\n';
29
- text += '#\n';
30
- text += '# See crypttab(5) for the supported syntax.\n';
31
- text += '#\n';
32
- text += '# NOTE: You need not list your root (/) partition here, but it must be set up\n';
33
- text += '# beforehand by the initramfs (/etc/mkinitcpio.conf). The same applies\n';
34
- text += '# to encrypted swap, which should be set up with mkinitcpio-openswap\n';
35
- text += '# for resume support.\n';
36
- text += '#\n';
37
- text += '# <name> <device> <password> <options>\n';
38
- text += `#root_crypted was ${this.devices.root.cryptedFrom}\n`;
39
- text += `root_crypted UUID=${Utils.uuid(this.devices.root.cryptedFrom)} none luks,discard\n`;
40
- Utils.write(crypttab, text);
41
- }
42
- /**
43
- * fstab
44
- */
45
- if (!Pacman.packageIsInstalled('btrfs-progs')) {
46
- this.partitions.filesystemType === 'ext4';
47
- }
48
- const fstab = this.installTarget + '/etc/fstab';
49
- /**
50
- boot: IDevice
51
- data: IDevice
52
- efi: IDevice
53
- root: IDevice
54
- swap: IDevice
55
- */
56
- let mountOptsBoot = '';
57
- let mountOptsData = '';
58
- let mountOptsEfi = '';
59
- let mountOptsRoot = '';
60
- let mountOptsSwap = '';
61
- /**
62
- * ext4
63
- */
64
- if (this.partitions.filesystemType === 'ext4') {
65
- if (await isRotational(installDevice)) {
66
- mountOptsBoot = 'defaults,relatime 0 1';
67
- mountOptsData = 'defaults,relatime 0 1';
68
- mountOptsEfi = 'defaults,relatime 0 2';
69
- mountOptsRoot = 'defaults,relatime 0 1';
70
- mountOptsSwap = 'defaults,relatime 0 2';
71
- }
72
- else {
73
- mountOptsBoot = 'defaults,noatime 0 1';
74
- mountOptsData = 'defaults,noatime 0 1';
75
- mountOptsEfi = 'defaults,noatime 0 2';
76
- mountOptsRoot = 'defaults,noatime 0 1';
77
- mountOptsSwap = 'defaults,noatime 0 2';
78
- }
79
- /**
80
- * root must to be defined!
81
- */
82
- text += `# root\n`;
83
- text += `# ${this.devices.root.name} ${this.devices.root.mountPoint} ${this.devices.root.fsType} ${mountOptsRoot}\n`;
84
- text += `UUID=${Utils.uuid(this.devices.root.name)} ${this.devices.root.mountPoint} ${this.devices.root.fsType} ${mountOptsRoot}\n`;
85
- text += `\n`;
86
- /**
87
- * boot can be none or defined!
88
- */
89
- if (this.devices.boot.name !== 'none') {
90
- text += `# boot\n`;
91
- text += `# ${this.devices.boot.name} ${this.devices.boot.mountPoint} ${this.devices.boot.fsType} ${mountOptsBoot}\n`;
92
- text += `UUID=${Utils.uuid(this.devices.boot.name)} ${this.devices.boot.mountPoint} ${this.devices.root.fsType} ${mountOptsBoot}\n`;
93
- text += `\n`;
94
- }
95
- /**
96
- * data can be none or defined!
97
- */
98
- if (this.devices.data.name !== 'none') {
99
- text += `# data\n`;
100
- text += `# ${this.devices.data.name} ${this.devices.data.mountPoint} ${this.devices.data.fsType} ${mountOptsData}\n`;
101
- text += `UUID=${Utils.uuid(this.devices.data.name)} ${this.devices.data.mountPoint} ${this.devices.data.fsType} ${mountOptsData}\n`;
102
- text += `\n`;
103
- }
104
- if (this.efi) {
105
- /**
106
- * efi must to be defined
107
- */
108
- text += `# efi\n`;
109
- text += `# ${this.devices.efi.name} ${this.devices.efi.mountPoint} vfat ${mountOptsEfi}\n`;
110
- text += `UUID=${Utils.uuid(this.devices.efi.name)} ${this.devices.efi.mountPoint} vfat ${mountOptsEfi}\n`;
111
- text += `\n`;
112
- }
113
- /**
114
- * swap can be none, file, defined, undefined
115
- */
116
- if (this.devices.swap.name !== undefined) {
117
- if (this.devices.swap.name !== `none`) {
118
- if (this.partitions.userSwapChoice == SwapChoice.None) {
119
- text += `# swap None ${this.partitions.userSwapChoice}\n`;
120
- text += `# no swap configured\n`;
121
- text += `\n`;
122
- // file
123
- }
124
- else if (this.partitions.userSwapChoice == SwapChoice.File) {
125
- text += `# swap File ${this.partitions.userSwapChoice}\n`;
126
- let swapFile = ``;
127
- text += `# /swapfile none swap sw 0 0\n`;
128
- text += `/swapfile none swap sw 0 0\n`;
129
- text += `\n`;
130
- // others
131
- }
132
- else {
133
- text += `# swap ${this.partitions.userSwapChoice}\n`;
134
- text += `# ${this.devices.swap.name} ${this.devices.swap.mountPoint} ${this.devices.swap.fsType} ${mountOptsSwap}\n`;
135
- text += `UUID=${Utils.uuid(this.devices.swap.name)} ${this.devices.swap.mountPoint} ${this.devices.swap.fsType} ${mountOptsSwap}\n`;
136
- text += `\n`;
137
- }
138
- }
139
- else {
140
- text += `# swap none\n`;
141
- }
142
- }
143
- else {
144
- text += `# swap undefined\n`;
145
- }
146
- /**
147
- * brtfs: TUTTO da rivedere!
148
- */
149
- }
150
- else if (this.partitions.filesystemType === 'btrfs') {
151
- const base = '/ btrfs subvol=/@,defaults 0 0';
152
- const snapshots = '/.snapshots btrfs subvol=/@snapshots,defaults 0 0';
153
- const home = '/home btrfs subvol=/@home,defaults 0 0';
154
- const root = '/root btrfs subvol=/@root,defaults 0 0';
155
- const var_log = '/var/log btrfs subvol=/@var@log,defaults 0 0';
156
- const var_lib_AccountsService = '/var/lib/AccountsService btrfs subvol=/@var@lib@AccountsService,defaults 0 0';
157
- const var_lib_blueman = '/var/lib/blueman btrfs subvol=/@var@lib@blueman,defaults 0 0';
158
- const tmp = '/tmp btrfs subvol=/@tmp,defaults 0 0';
159
- text += `# ${this.devices.root.name} btrfs ${this.devices.root.mountPoint} subvol\n`;
160
- text += `UUID=${Utils.uuid(this.devices.root.name)} ${base}\n`;
161
- text += `# UUID=${Utils.uuid(this.devices.root.name)} ${snapshots}\n`;
162
- text += `# UUID=${Utils.uuid(this.devices.root.name)} ${home}\n`;
163
- text += `# UUID=${Utils.uuid(this.devices.root.name)} ${root}\n`;
164
- text += `# UUID=${Utils.uuid(this.devices.root.name)} ${var_log}\n`;
165
- text += `# UUID=${Utils.uuid(this.devices.root.name)} ${var_lib_AccountsService}\n`;
166
- text += `# UUID=${Utils.uuid(this.devices.root.name)} ${var_lib_blueman}\n`;
167
- text += `# UUID=${Utils.uuid(this.devices.root.name)} ${tmp}\n`;
168
- }
169
- Utils.write(fstab, text);
170
- }
171
- /**
172
- * isRotational
173
- * @param device
174
- */
175
- async function isRotational(device) {
176
- device = device.slice(4);
177
- let response;
178
- let retVal = false;
179
- // Check if the selected disk is a software raid
180
- if (device.startsWith('md')) {
181
- // Get the first disk from which the raid is composed
182
- device = shx.exec(`cat /proc/mdstat | grep ${device} | cut -f 5 -d " " | cut -f 1 -d "["`).stdout.trim();
183
- }
184
- response = shx.exec(`cat /sys/block/${device}/queue/rotational`, { silent: true }).stdout.trim();
185
- if (response === '1') {
186
- retVal = true;
187
- }
188
- return retVal;
189
- }
@@ -1,17 +0,0 @@
1
- /**
2
- * ./src/krill/modules/grubcfg.ts
3
- * penguins-eggs v.10.0.0 / 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
- * grubcfg
12
- * - open /etc/default/grub
13
- * - find GRUB_CMDLINE_LINUX_DEFAULT=
14
- * - replace with GRUB_CMDLINE_LINUX_DEFAULT=
15
- * 's/GRUB_CMDLINE_LINUX_DEFAULT=.*$/GRUB_CMDLINE_LINUX_DEFAULT=/g'
16
- */
17
- export default function grubcfg(this: Sequence): Promise<void>;
@@ -1,33 +0,0 @@
1
- /**
2
- * ./src/krill/modules/grubcfg.ts
3
- * penguins-eggs v.10.0.0 / 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 { SwapChoice } from '../krill_enums.js';
12
- import { InstallationMode } from '../krill_enums.js';
13
- /**
14
- * grubcfg
15
- * - open /etc/default/grub
16
- * - find GRUB_CMDLINE_LINUX_DEFAULT=
17
- * - replace with GRUB_CMDLINE_LINUX_DEFAULT=
18
- * 's/GRUB_CMDLINE_LINUX_DEFAULT=.*$/GRUB_CMDLINE_LINUX_DEFAULT=/g'
19
- */
20
- export default async function grubcfg() {
21
- const file = `${this.installTarget}/etc/default/grub`;
22
- let content = '';
23
- const grubs = fs.readFileSync(file, 'utf8').split('\n');
24
- for (let i = 0; i < grubs.length; i++) {
25
- if (grubs[i].includes('GRUB_CMDLINE_LINUX_DEFAULT=')) {
26
- if (this.partitions.userSwapChoice != SwapChoice.File) {
27
- grubs[i] = this.partitions.installationMode === InstallationMode.Luks ? `GRUB_CMDLINE_LINUX_DEFAULT="resume=UUID=${Utils.uuid(this.devices.swap.name)}"` : `GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=${Utils.uuid(this.devices.swap.name)}"`;
28
- }
29
- }
30
- content += grubs[i] + '\n';
31
- }
32
- fs.writeFileSync(file, content, 'utf-8');
33
- }
@@ -1,13 +0,0 @@
1
- /**
2
- * ./src/krill/modules/hostnames.ts
3
- * penguins-eggs v.10.0.0 / 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
- * hostname
12
- */
13
- export default function hostname(this: Sequence, domain?: string): Promise<void>;
@@ -1,50 +0,0 @@
1
- /**
2
- * ./src/krill/modules/hostnames.ts
3
- * penguins-eggs v.10.0.0 / 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
- /**
11
- * hostname
12
- */
13
- export default async function hostname(domain = '') {
14
- const { hostname } = this.users;
15
- /**
16
- * hostname
17
- */
18
- {
19
- const file = this.installTarget + '/etc/hostname';
20
- const text = hostname;
21
- fs.writeFileSync(file, text);
22
- }
23
- /**
24
- * hosts
25
- */
26
- {
27
- const file = this.installTarget + '/etc/hosts';
28
- if (domain === '(none)') {
29
- domain = '';
30
- }
31
- let text = '127.0.0.1 localhost localhost.localdomain\n';
32
- if (this.network.addressType === 'static') {
33
- text += `${this.network.address} ${hostname} ${hostname}${domain} pvelocalhost pvelocalhost.pvelocaldomain\n`;
34
- }
35
- else if (domain === '') {
36
- text += `127.0.1.1 ${hostname}\n`;
37
- }
38
- else {
39
- text += `127.0.1.1 ${hostname} ${hostname}${domain}\n`;
40
- }
41
- text += '# The following lines are desirable for IPv6 capable hosts\n';
42
- text += ':: 1 ip6 - localhost ip6 - loopback\n';
43
- text += 'fe00:: 0 ip6 - localnet\n';
44
- text += 'ff00:: 0 ip6 - mcastprefix\n';
45
- text += 'ff02:: 1 ip6 - allnodes\n';
46
- text += 'ff02:: 2 ip6 - allrouters\n';
47
- text += 'ff02:: 3 ip6 - allhosts\n';
48
- fs.writeFileSync(file, text);
49
- }
50
- }
@@ -1,13 +0,0 @@
1
- /**
2
- * ./src/krill/modules/initramfs.ts
3
- * penguins-eggs v.10.0.0 / 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
- * initramfs()
12
- */
13
- export default function initramfs(this: Sequence): Promise<void>;
@@ -1,54 +0,0 @@
1
- /**
2
- * ./src/krill/modules/initramfs.ts
3
- * penguins-eggs v.10.0.0 / 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 path from 'node:path';
10
- import Utils from '../../../classes/utils.js';
11
- import { exec } from '../../../lib/utils.js';
12
- // _dirname
13
- const __dirname = path.dirname(new URL(import.meta.url).pathname);
14
- /**
15
- * initramfs()
16
- */
17
- export default async function initramfs() {
18
- if (this.distro.familyId === 'debian') {
19
- /**
20
- * Debian
21
- */
22
- let cmd = `chroot ${this.installTarget} mkinitramfs -o /boot/initrd.img-$(uname -r)`;
23
- await exec(cmd, this.echo);
24
- }
25
- else if (this.distro.familyId === 'archlinux') {
26
- /**
27
- * Archlinux
28
- */
29
- let initrdImg = path.basename(Utils.initrdImg());
30
- let cmd = `chroot ${this.installTarget} mkinitcpio -g /boot/${initrdImg}}`;
31
- await exec(cmd, this.echo);
32
- }
33
- else if (this.distro.familyId === 'alpine') {
34
- /**
35
- * Alpine
36
- */
37
- let cmd = `chroot ${this.installTarget} mkinitfs`;
38
- await exec(cmd, this.echo);
39
- }
40
- else if (this.distro.familyId === 'fedora') {
41
- /**
42
- * Fedora
43
- */
44
- let cmd = `chroot ${this.installTarget} dracut -f`;
45
- await exec(cmd, this.echo);
46
- }
47
- else if (this.distro.familyId === 'opensuse') {
48
- /**
49
- * Opensuse
50
- */
51
- let cmd = `chroot ${this.installTarget} dracut -f`;
52
- await exec(cmd, this.echo);
53
- }
54
- }
@@ -1,14 +0,0 @@
1
- /**
2
- * ./src/krill/modules/initramfs-cfg.ts
3
- * penguins-eggs v.10.0.0 / 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 initramfsCfg(this: Sequence, installDevice: string): Promise<void>;
@@ -1,35 +0,0 @@
1
- /**
2
- * ./src/krill/modules/initramfs-cfg.ts
3
- * penguins-eggs v.10.0.0 / 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.10.0.0 / 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.10.0.0 / 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.10.0.0 / 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>;