penguins-eggs 10.1.1 → 25.7.10

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 (441) hide show
  1. package/.oclif.manifest.json +1 -1
  2. package/README.md +55 -60
  3. package/assets/calamares/install-system.sh +2 -1
  4. package/bootloaders/README.md +22 -0
  5. package/bootloaders/grub/x86_64-efi/acpi.mod +0 -0
  6. package/bootloaders/grub/x86_64-efi/adler32.mod +0 -0
  7. package/bootloaders/grub/x86_64-efi/affs.mod +0 -0
  8. package/bootloaders/grub/x86_64-efi/afs.mod +0 -0
  9. package/bootloaders/grub/x86_64-efi/afsplitter.mod +0 -0
  10. package/bootloaders/grub/x86_64-efi/ahci.mod +0 -0
  11. package/bootloaders/grub/x86_64-efi/all_video.mod +0 -0
  12. package/bootloaders/grub/x86_64-efi/aout.mod +0 -0
  13. package/bootloaders/grub/x86_64-efi/appleldr.mod +0 -0
  14. package/bootloaders/grub/x86_64-efi/archelp.mod +0 -0
  15. package/bootloaders/grub/x86_64-efi/at_keyboard.mod +0 -0
  16. package/bootloaders/grub/x86_64-efi/ata.mod +0 -0
  17. package/bootloaders/grub/x86_64-efi/backtrace.mod +0 -0
  18. package/bootloaders/grub/x86_64-efi/bfs.mod +0 -0
  19. package/bootloaders/grub/x86_64-efi/bitmap.mod +0 -0
  20. package/bootloaders/grub/x86_64-efi/bitmap_scale.mod +0 -0
  21. package/bootloaders/grub/x86_64-efi/blocklist.mod +0 -0
  22. package/bootloaders/grub/x86_64-efi/boot.mod +0 -0
  23. package/bootloaders/grub/x86_64-efi/bsd.mod +0 -0
  24. package/bootloaders/grub/x86_64-efi/bswap_test.mod +0 -0
  25. package/bootloaders/grub/x86_64-efi/btrfs.mod +0 -0
  26. package/bootloaders/grub/x86_64-efi/bufio.mod +0 -0
  27. package/bootloaders/grub/x86_64-efi/cat.mod +0 -0
  28. package/bootloaders/grub/x86_64-efi/cbfs.mod +0 -0
  29. package/bootloaders/grub/x86_64-efi/cbls.mod +0 -0
  30. package/bootloaders/grub/x86_64-efi/cbmemc.mod +0 -0
  31. package/bootloaders/grub/x86_64-efi/cbtable.mod +0 -0
  32. package/bootloaders/grub/x86_64-efi/cbtime.mod +0 -0
  33. package/bootloaders/grub/x86_64-efi/chain.mod +0 -0
  34. package/bootloaders/grub/x86_64-efi/cmdline_cat_test.mod +0 -0
  35. package/bootloaders/grub/x86_64-efi/cmp.mod +0 -0
  36. package/bootloaders/grub/x86_64-efi/cmp_test.mod +0 -0
  37. package/bootloaders/grub/x86_64-efi/command.lst +194 -0
  38. package/bootloaders/grub/x86_64-efi/config.h +69 -0
  39. package/bootloaders/grub/x86_64-efi/configfile.mod +0 -0
  40. package/bootloaders/grub/x86_64-efi/cpio.mod +0 -0
  41. package/bootloaders/grub/x86_64-efi/cpio_be.mod +0 -0
  42. package/bootloaders/grub/x86_64-efi/cpuid.mod +0 -0
  43. package/bootloaders/grub/x86_64-efi/crc64.mod +0 -0
  44. package/bootloaders/grub/x86_64-efi/crypto.lst +45 -0
  45. package/bootloaders/grub/x86_64-efi/crypto.mod +0 -0
  46. package/bootloaders/grub/x86_64-efi/cryptodisk.mod +0 -0
  47. package/bootloaders/grub/x86_64-efi/cs5536.mod +0 -0
  48. package/bootloaders/grub/x86_64-efi/ctz_test.mod +0 -0
  49. package/bootloaders/grub/x86_64-efi/date.mod +0 -0
  50. package/bootloaders/grub/x86_64-efi/datehook.mod +0 -0
  51. package/bootloaders/grub/x86_64-efi/datetime.mod +0 -0
  52. package/bootloaders/grub/x86_64-efi/disk.mod +0 -0
  53. package/bootloaders/grub/x86_64-efi/diskfilter.mod +0 -0
  54. package/bootloaders/grub/x86_64-efi/div.mod +0 -0
  55. package/bootloaders/grub/x86_64-efi/div_test.mod +0 -0
  56. package/bootloaders/grub/x86_64-efi/dm_nv.mod +0 -0
  57. package/bootloaders/grub/x86_64-efi/echo.mod +0 -0
  58. package/bootloaders/grub/x86_64-efi/efi_gop.mod +0 -0
  59. package/bootloaders/grub/x86_64-efi/efi_uga.mod +0 -0
  60. package/bootloaders/grub/x86_64-efi/efifwsetup.mod +0 -0
  61. package/bootloaders/grub/x86_64-efi/efinet.mod +0 -0
  62. package/bootloaders/grub/x86_64-efi/ehci.mod +0 -0
  63. package/bootloaders/grub/x86_64-efi/elf.mod +0 -0
  64. package/bootloaders/grub/x86_64-efi/eval.mod +0 -0
  65. package/bootloaders/grub/x86_64-efi/exfat.mod +0 -0
  66. package/bootloaders/grub/x86_64-efi/exfctest.mod +0 -0
  67. package/bootloaders/grub/x86_64-efi/ext2.mod +0 -0
  68. package/bootloaders/grub/x86_64-efi/extcmd.mod +0 -0
  69. package/bootloaders/grub/x86_64-efi/f2fs.mod +0 -0
  70. package/bootloaders/grub/x86_64-efi/fat.mod +0 -0
  71. package/bootloaders/grub/x86_64-efi/fdt.lst +0 -0
  72. package/bootloaders/grub/x86_64-efi/file.mod +0 -0
  73. package/bootloaders/grub/x86_64-efi/fixvideo.mod +0 -0
  74. package/bootloaders/grub/x86_64-efi/font.mod +0 -0
  75. package/bootloaders/grub/x86_64-efi/fs.lst +37 -0
  76. package/bootloaders/grub/x86_64-efi/fshelp.mod +0 -0
  77. package/bootloaders/grub/x86_64-efi/functional_test.mod +0 -0
  78. package/bootloaders/grub/x86_64-efi/gcry_arcfour.mod +0 -0
  79. package/bootloaders/grub/x86_64-efi/gcry_blowfish.mod +0 -0
  80. package/bootloaders/grub/x86_64-efi/gcry_camellia.mod +0 -0
  81. package/bootloaders/grub/x86_64-efi/gcry_cast5.mod +0 -0
  82. package/bootloaders/grub/x86_64-efi/gcry_crc.mod +0 -0
  83. package/bootloaders/grub/x86_64-efi/gcry_des.mod +0 -0
  84. package/bootloaders/grub/x86_64-efi/gcry_dsa.mod +0 -0
  85. package/bootloaders/grub/x86_64-efi/gcry_idea.mod +0 -0
  86. package/bootloaders/grub/x86_64-efi/gcry_md4.mod +0 -0
  87. package/bootloaders/grub/x86_64-efi/gcry_md5.mod +0 -0
  88. package/bootloaders/grub/x86_64-efi/gcry_rfc2268.mod +0 -0
  89. package/bootloaders/grub/x86_64-efi/gcry_rijndael.mod +0 -0
  90. package/bootloaders/grub/x86_64-efi/gcry_rmd160.mod +0 -0
  91. package/bootloaders/grub/x86_64-efi/gcry_rsa.mod +0 -0
  92. package/bootloaders/grub/x86_64-efi/gcry_seed.mod +0 -0
  93. package/bootloaders/grub/x86_64-efi/gcry_serpent.mod +0 -0
  94. package/bootloaders/grub/x86_64-efi/gcry_sha1.mod +0 -0
  95. package/bootloaders/grub/x86_64-efi/gcry_sha256.mod +0 -0
  96. package/bootloaders/grub/x86_64-efi/gcry_sha512.mod +0 -0
  97. package/bootloaders/grub/x86_64-efi/gcry_tiger.mod +0 -0
  98. package/bootloaders/grub/x86_64-efi/gcry_twofish.mod +0 -0
  99. package/bootloaders/grub/x86_64-efi/gcry_whirlpool.mod +0 -0
  100. package/bootloaders/grub/x86_64-efi/geli.mod +0 -0
  101. package/bootloaders/grub/x86_64-efi/gettext.mod +0 -0
  102. package/bootloaders/grub/x86_64-efi/gfxmenu.mod +0 -0
  103. package/bootloaders/grub/x86_64-efi/gfxterm.mod +0 -0
  104. package/bootloaders/grub/x86_64-efi/gfxterm_background.mod +0 -0
  105. package/bootloaders/grub/x86_64-efi/gfxterm_menu.mod +0 -0
  106. package/bootloaders/grub/x86_64-efi/gptsync.mod +0 -0
  107. package/bootloaders/grub/x86_64-efi/gzio.mod +0 -0
  108. package/bootloaders/grub/x86_64-efi/halt.mod +0 -0
  109. package/bootloaders/grub/x86_64-efi/hashsum.mod +0 -0
  110. package/bootloaders/grub/x86_64-efi/hdparm.mod +0 -0
  111. package/bootloaders/grub/x86_64-efi/hello.mod +0 -0
  112. package/bootloaders/grub/x86_64-efi/help.mod +0 -0
  113. package/bootloaders/grub/x86_64-efi/hexdump.mod +0 -0
  114. package/bootloaders/grub/x86_64-efi/hfs.mod +0 -0
  115. package/bootloaders/grub/x86_64-efi/hfsplus.mod +0 -0
  116. package/bootloaders/grub/x86_64-efi/hfspluscomp.mod +0 -0
  117. package/bootloaders/grub/x86_64-efi/http.mod +0 -0
  118. package/bootloaders/grub/x86_64-efi/iorw.mod +0 -0
  119. package/bootloaders/grub/x86_64-efi/iso9660.mod +0 -0
  120. package/bootloaders/grub/x86_64-efi/jfs.mod +0 -0
  121. package/bootloaders/grub/x86_64-efi/jpeg.mod +0 -0
  122. package/bootloaders/grub/x86_64-efi/json.mod +0 -0
  123. package/bootloaders/grub/x86_64-efi/kernel.img +0 -0
  124. package/bootloaders/grub/x86_64-efi/keylayouts.mod +0 -0
  125. package/bootloaders/grub/x86_64-efi/keystatus.mod +0 -0
  126. package/bootloaders/grub/x86_64-efi/ldm.mod +0 -0
  127. package/bootloaders/grub/x86_64-efi/legacy_password_test.mod +0 -0
  128. package/bootloaders/grub/x86_64-efi/legacycfg.mod +0 -0
  129. package/bootloaders/grub/x86_64-efi/linux.mod +0 -0
  130. package/bootloaders/grub/x86_64-efi/linux16.mod +0 -0
  131. package/bootloaders/grub/x86_64-efi/linuxefi.mod +0 -0
  132. package/bootloaders/grub/x86_64-efi/loadbios.mod +0 -0
  133. package/bootloaders/grub/x86_64-efi/loadenv.mod +0 -0
  134. package/bootloaders/grub/x86_64-efi/loopback.mod +0 -0
  135. package/bootloaders/grub/x86_64-efi/ls.mod +0 -0
  136. package/bootloaders/grub/x86_64-efi/lsacpi.mod +0 -0
  137. package/bootloaders/grub/x86_64-efi/lsefi.mod +0 -0
  138. package/bootloaders/grub/x86_64-efi/lsefimmap.mod +0 -0
  139. package/bootloaders/grub/x86_64-efi/lsefisystab.mod +0 -0
  140. package/bootloaders/grub/x86_64-efi/lsmmap.mod +0 -0
  141. package/bootloaders/grub/x86_64-efi/lspci.mod +0 -0
  142. package/bootloaders/grub/x86_64-efi/lssal.mod +0 -0
  143. package/bootloaders/grub/x86_64-efi/luks.mod +0 -0
  144. package/bootloaders/grub/x86_64-efi/luks2.mod +0 -0
  145. package/bootloaders/grub/x86_64-efi/lvm.mod +0 -0
  146. package/bootloaders/grub/x86_64-efi/lzopio.mod +0 -0
  147. package/bootloaders/grub/x86_64-efi/macbless.mod +0 -0
  148. package/bootloaders/grub/x86_64-efi/macho.mod +0 -0
  149. package/bootloaders/grub/x86_64-efi/mdraid09.mod +0 -0
  150. package/bootloaders/grub/x86_64-efi/mdraid09_be.mod +0 -0
  151. package/bootloaders/grub/x86_64-efi/mdraid1x.mod +0 -0
  152. package/bootloaders/grub/x86_64-efi/memdisk.mod +0 -0
  153. package/bootloaders/grub/x86_64-efi/memrw.mod +0 -0
  154. package/bootloaders/grub/x86_64-efi/minicmd.mod +0 -0
  155. package/bootloaders/grub/x86_64-efi/minix.mod +0 -0
  156. package/bootloaders/grub/x86_64-efi/minix2.mod +0 -0
  157. package/bootloaders/grub/x86_64-efi/minix2_be.mod +0 -0
  158. package/bootloaders/grub/x86_64-efi/minix3.mod +0 -0
  159. package/bootloaders/grub/x86_64-efi/minix3_be.mod +0 -0
  160. package/bootloaders/grub/x86_64-efi/minix_be.mod +0 -0
  161. package/bootloaders/grub/x86_64-efi/mmap.mod +0 -0
  162. package/bootloaders/grub/x86_64-efi/moddep.lst +267 -0
  163. package/bootloaders/grub/x86_64-efi/modinfo.sh +40 -0
  164. package/bootloaders/grub/x86_64-efi/monolithic/gcdx64.efi +0 -0
  165. package/bootloaders/grub/x86_64-efi/monolithic/grubnetx64-installer.efi +0 -0
  166. package/bootloaders/grub/x86_64-efi/monolithic/grubnetx64.efi +0 -0
  167. package/bootloaders/grub/x86_64-efi/monolithic/grubx64.efi +0 -0
  168. package/bootloaders/grub/x86_64-efi/morse.mod +0 -0
  169. package/bootloaders/grub/x86_64-efi/mpi.mod +0 -0
  170. package/bootloaders/grub/x86_64-efi/msdospart.mod +0 -0
  171. package/bootloaders/grub/x86_64-efi/mul_test.mod +0 -0
  172. package/bootloaders/grub/x86_64-efi/multiboot.mod +0 -0
  173. package/bootloaders/grub/x86_64-efi/multiboot2.mod +0 -0
  174. package/bootloaders/grub/x86_64-efi/nativedisk.mod +0 -0
  175. package/bootloaders/grub/x86_64-efi/net.mod +0 -0
  176. package/bootloaders/grub/x86_64-efi/newc.mod +0 -0
  177. package/bootloaders/grub/x86_64-efi/nilfs2.mod +0 -0
  178. package/bootloaders/grub/x86_64-efi/normal.mod +0 -0
  179. package/bootloaders/grub/x86_64-efi/ntfs.mod +0 -0
  180. package/bootloaders/grub/x86_64-efi/ntfscomp.mod +0 -0
  181. package/bootloaders/grub/x86_64-efi/odc.mod +0 -0
  182. package/bootloaders/grub/x86_64-efi/offsetio.mod +0 -0
  183. package/bootloaders/grub/x86_64-efi/ohci.mod +0 -0
  184. package/bootloaders/grub/x86_64-efi/part_acorn.mod +0 -0
  185. package/bootloaders/grub/x86_64-efi/part_amiga.mod +0 -0
  186. package/bootloaders/grub/x86_64-efi/part_apple.mod +0 -0
  187. package/bootloaders/grub/x86_64-efi/part_bsd.mod +0 -0
  188. package/bootloaders/grub/x86_64-efi/part_dfly.mod +0 -0
  189. package/bootloaders/grub/x86_64-efi/part_dvh.mod +0 -0
  190. package/bootloaders/grub/x86_64-efi/part_gpt.mod +0 -0
  191. package/bootloaders/grub/x86_64-efi/part_msdos.mod +0 -0
  192. package/bootloaders/grub/x86_64-efi/part_plan.mod +0 -0
  193. package/bootloaders/grub/x86_64-efi/part_sun.mod +0 -0
  194. package/bootloaders/grub/x86_64-efi/part_sunpc.mod +0 -0
  195. package/bootloaders/grub/x86_64-efi/partmap.lst +11 -0
  196. package/bootloaders/grub/x86_64-efi/parttool.lst +1 -0
  197. package/bootloaders/grub/x86_64-efi/parttool.mod +0 -0
  198. package/bootloaders/grub/x86_64-efi/password.mod +0 -0
  199. package/bootloaders/grub/x86_64-efi/password_pbkdf2.mod +0 -0
  200. package/bootloaders/grub/x86_64-efi/pata.mod +0 -0
  201. package/bootloaders/grub/x86_64-efi/pbkdf2.mod +0 -0
  202. package/bootloaders/grub/x86_64-efi/pbkdf2_test.mod +0 -0
  203. package/bootloaders/grub/x86_64-efi/pcidump.mod +0 -0
  204. package/bootloaders/grub/x86_64-efi/pgp.mod +0 -0
  205. package/bootloaders/grub/x86_64-efi/play.mod +0 -0
  206. package/bootloaders/grub/x86_64-efi/png.mod +0 -0
  207. package/bootloaders/grub/x86_64-efi/priority_queue.mod +0 -0
  208. package/bootloaders/grub/x86_64-efi/probe.mod +0 -0
  209. package/bootloaders/grub/x86_64-efi/procfs.mod +0 -0
  210. package/bootloaders/grub/x86_64-efi/progress.mod +0 -0
  211. package/bootloaders/grub/x86_64-efi/raid5rec.mod +0 -0
  212. package/bootloaders/grub/x86_64-efi/raid6rec.mod +0 -0
  213. package/bootloaders/grub/x86_64-efi/random.mod +0 -0
  214. package/bootloaders/grub/x86_64-efi/rdmsr.mod +0 -0
  215. package/bootloaders/grub/x86_64-efi/read.mod +0 -0
  216. package/bootloaders/grub/x86_64-efi/reboot.mod +0 -0
  217. package/bootloaders/grub/x86_64-efi/regexp.mod +0 -0
  218. package/bootloaders/grub/x86_64-efi/reiserfs.mod +0 -0
  219. package/bootloaders/grub/x86_64-efi/relocator.mod +0 -0
  220. package/bootloaders/grub/x86_64-efi/romfs.mod +0 -0
  221. package/bootloaders/grub/x86_64-efi/scsi.mod +0 -0
  222. package/bootloaders/grub/x86_64-efi/search.mod +0 -0
  223. package/bootloaders/grub/x86_64-efi/search_fs_file.mod +0 -0
  224. package/bootloaders/grub/x86_64-efi/search_fs_uuid.mod +0 -0
  225. package/bootloaders/grub/x86_64-efi/search_label.mod +0 -0
  226. package/bootloaders/grub/x86_64-efi/serial.mod +0 -0
  227. package/bootloaders/grub/x86_64-efi/setjmp.mod +0 -0
  228. package/bootloaders/grub/x86_64-efi/setjmp_test.mod +0 -0
  229. package/bootloaders/grub/x86_64-efi/setpci.mod +0 -0
  230. package/bootloaders/grub/x86_64-efi/sfs.mod +0 -0
  231. package/bootloaders/grub/x86_64-efi/shift_test.mod +0 -0
  232. package/bootloaders/grub/x86_64-efi/signature_test.mod +0 -0
  233. package/bootloaders/grub/x86_64-efi/sleep.mod +0 -0
  234. package/bootloaders/grub/x86_64-efi/sleep_test.mod +0 -0
  235. package/bootloaders/grub/x86_64-efi/smbios.mod +0 -0
  236. package/bootloaders/grub/x86_64-efi/spkmodem.mod +0 -0
  237. package/bootloaders/grub/x86_64-efi/squash4.mod +0 -0
  238. package/bootloaders/grub/x86_64-efi/strtoull_test.mod +0 -0
  239. package/bootloaders/grub/x86_64-efi/syslinuxcfg.mod +0 -0
  240. package/bootloaders/grub/x86_64-efi/tar.mod +0 -0
  241. package/bootloaders/grub/x86_64-efi/terminal.lst +9 -0
  242. package/bootloaders/grub/x86_64-efi/terminal.mod +0 -0
  243. package/bootloaders/grub/x86_64-efi/terminfo.mod +0 -0
  244. package/bootloaders/grub/x86_64-efi/test.mod +0 -0
  245. package/bootloaders/grub/x86_64-efi/test_blockarg.mod +0 -0
  246. package/bootloaders/grub/x86_64-efi/testload.mod +0 -0
  247. package/bootloaders/grub/x86_64-efi/testspeed.mod +0 -0
  248. package/bootloaders/grub/x86_64-efi/tftp.mod +0 -0
  249. package/bootloaders/grub/x86_64-efi/tga.mod +0 -0
  250. package/bootloaders/grub/x86_64-efi/time.mod +0 -0
  251. package/bootloaders/grub/x86_64-efi/tpm.mod +0 -0
  252. package/bootloaders/grub/x86_64-efi/tr.mod +0 -0
  253. package/bootloaders/grub/x86_64-efi/trig.mod +0 -0
  254. package/bootloaders/grub/x86_64-efi/true.mod +0 -0
  255. package/bootloaders/grub/x86_64-efi/udf.mod +0 -0
  256. package/bootloaders/grub/x86_64-efi/ufs1.mod +0 -0
  257. package/bootloaders/grub/x86_64-efi/ufs1_be.mod +0 -0
  258. package/bootloaders/grub/x86_64-efi/ufs2.mod +0 -0
  259. package/bootloaders/grub/x86_64-efi/uhci.mod +0 -0
  260. package/bootloaders/grub/x86_64-efi/usb.mod +0 -0
  261. package/bootloaders/grub/x86_64-efi/usb_keyboard.mod +0 -0
  262. package/bootloaders/grub/x86_64-efi/usbms.mod +0 -0
  263. package/bootloaders/grub/x86_64-efi/usbserial_common.mod +0 -0
  264. package/bootloaders/grub/x86_64-efi/usbserial_ftdi.mod +0 -0
  265. package/bootloaders/grub/x86_64-efi/usbserial_pl2303.mod +0 -0
  266. package/bootloaders/grub/x86_64-efi/usbserial_usbdebug.mod +0 -0
  267. package/bootloaders/grub/x86_64-efi/usbtest.mod +0 -0
  268. package/bootloaders/grub/x86_64-efi/video.lst +4 -0
  269. package/bootloaders/grub/x86_64-efi/video.mod +0 -0
  270. package/bootloaders/grub/x86_64-efi/video_bochs.mod +0 -0
  271. package/bootloaders/grub/x86_64-efi/video_cirrus.mod +0 -0
  272. package/bootloaders/grub/x86_64-efi/video_colors.mod +0 -0
  273. package/bootloaders/grub/x86_64-efi/video_fb.mod +0 -0
  274. package/bootloaders/grub/x86_64-efi/videoinfo.mod +0 -0
  275. package/bootloaders/grub/x86_64-efi/videotest.mod +0 -0
  276. package/bootloaders/grub/x86_64-efi/videotest_checksum.mod +0 -0
  277. package/bootloaders/grub/x86_64-efi/wrmsr.mod +0 -0
  278. package/bootloaders/grub/x86_64-efi/xfs.mod +0 -0
  279. package/bootloaders/grub/x86_64-efi/xnu.mod +0 -0
  280. package/bootloaders/grub/x86_64-efi/xnu_uuid.mod +0 -0
  281. package/bootloaders/grub/x86_64-efi/xnu_uuid_test.mod +0 -0
  282. package/bootloaders/grub/x86_64-efi/xzio.mod +0 -0
  283. package/bootloaders/grub/x86_64-efi/zfs.mod +0 -0
  284. package/bootloaders/grub/x86_64-efi/zfscrypt.mod +0 -0
  285. package/bootloaders/grub/x86_64-efi/zfsinfo.mod +0 -0
  286. package/bootloaders/grub/x86_64-efi/zstd.mod +0 -0
  287. package/bootloaders/grubnetx64.efi.signed +0 -0
  288. package/bootloaders/grubx64.efi +0 -0
  289. package/bootloaders/grubx64.efi.signed +0 -0
  290. package/bootloaders/ipxe.pxe +0 -0
  291. package/bootloaders/shimx64.efi +0 -0
  292. package/bootloaders/shimx64.efi.signed +0 -0
  293. package/bootloaders/undionly.kpxe +0 -0
  294. package/conf/derivatives.yaml +5 -1
  295. package/conf/distros/alpine/calamares/modules/packages.yml +1 -1
  296. package/conf/distros/alpine/calamares/settings.yml +16 -29
  297. package/conf/distros/buster/calamares/modules/fstab.yml +1 -1
  298. package/conf/distros/buster/calamares/modules/mount.yml +4 -12
  299. package/conf/distros/fedora/calamares/modules/bootloader.yml +46 -17
  300. package/conf/distros/fedora/calamares/modules/fstab.yml +36 -11
  301. package/conf/distros/fedora/calamares/modules/mount.yml +101 -39
  302. package/conf/distros/fedora/calamares/modules/partition.yml +173 -23
  303. package/conf/distros/fedora/calamares/modules/users.yml +7 -9
  304. package/conf/distros/openmamba/calamares/settings.yml +0 -2
  305. package/conf/distros/opensuse/calamares/modules/bootloader.yml +46 -17
  306. package/conf/distros/opensuse/calamares/modules/displaymanager.yml +9 -5
  307. package/conf/distros/opensuse/calamares/modules/finished.yml +1 -1
  308. package/conf/distros/opensuse/calamares/modules/fstab.yml +36 -11
  309. package/conf/distros/opensuse/calamares/modules/grubcfg.yml +51 -0
  310. package/conf/distros/opensuse/calamares/modules/mount.yml +104 -39
  311. package/conf/distros/opensuse/calamares/modules/packages.yml +3 -3
  312. package/conf/distros/opensuse/calamares/modules/partition.yml +30 -237
  313. package/conf/distros/opensuse/calamares/modules/removeuser.yml +1 -14
  314. package/conf/distros/opensuse/calamares/modules/unpackfs.yml +0 -1
  315. package/conf/distros/opensuse/calamares/modules/users.yml +296 -16
  316. package/conf/distros/opensuse/calamares/modules/welcome.yml +91 -16
  317. package/conf/distros/opensuse/calamares/settings.yml +34 -120
  318. package/conf/distros/opensuse/calamares/zstd2lzo.sh +2 -0
  319. package/conf/distros/rolling/calamares/modules/shellprocess_sync.yml +5 -0
  320. package/conf/distros/rolling/calamares/settings.yml +4 -5
  321. package/dist/classes/bleach.d.ts +5 -0
  322. package/dist/classes/bleach.js +13 -0
  323. package/dist/classes/cli-autologin.js +14 -9
  324. package/dist/classes/daddy.js +9 -1
  325. package/dist/classes/distro.js +0 -9
  326. package/dist/classes/incubation/incubator.d/fedora.d.ts +32 -0
  327. package/dist/classes/incubation/incubator.d/fedora.js +79 -0
  328. package/dist/classes/incubation/incubator.d/opensuse.js +4 -6
  329. package/dist/classes/incubation/incubator.d/rolling.js +1 -3
  330. package/dist/classes/incubation/incubator.js +6 -11
  331. package/dist/classes/ovary.d/fertilization.js +1 -0
  332. package/dist/classes/ovary.d/initrd.js +39 -10
  333. package/dist/classes/ovary.d/make-dot-disk.js +21 -11
  334. package/dist/classes/ovary.d/make-efi.d.ts +5 -1
  335. package/dist/classes/ovary.d/make-efi.js +60 -118
  336. package/dist/classes/ovary.d/merged.d.ts +1 -1
  337. package/dist/classes/ovary.d/merged.js +3 -2
  338. package/dist/classes/ovary.d/produce.js +7 -6
  339. package/dist/classes/ovary.d/syslinux.js +2 -1
  340. package/dist/classes/ovary.d/user-create-live.js +15 -11
  341. package/dist/classes/ovary.d.ts +2 -1
  342. package/dist/classes/ovary.js +2 -1
  343. package/dist/classes/pacman.d/alpine.js +12 -7
  344. package/dist/classes/pacman.d/opensuse.js +4 -3
  345. package/dist/classes/pacman.js +3 -12
  346. package/dist/classes/pxe.d.ts +21 -18
  347. package/dist/classes/pxe.js +194 -257
  348. package/dist/classes/tailor.js +69 -33
  349. package/dist/classes/utils.d/filesystem.js +2 -0
  350. package/dist/classes/utils.d/kernel.js +12 -2
  351. package/dist/classes/utils.d/snapshot.js +1 -1
  352. package/dist/classes/utils.d/system.js +2 -2
  353. package/dist/commands/cuckoo.js +4 -6
  354. package/dist/commands/export/pkg.js +28 -12
  355. package/dist/commands/wardrobe/wear.js +1 -1
  356. package/dist/dhcpd-proxy/classes/packet.d.ts +36 -0
  357. package/dist/dhcpd-proxy/classes/packet.js +124 -0
  358. package/dist/dhcpd-proxy/index.d.ts +4 -0
  359. package/dist/dhcpd-proxy/index.js +4 -0
  360. package/dist/dhcpd-proxy/interfaces/i-pxe.d.ts +45 -0
  361. package/dist/dhcpd-proxy/interfaces/i-pxe.js +1 -0
  362. package/dist/dhcpd-proxy/lib/packet/converters.d.ts +11 -0
  363. package/dist/dhcpd-proxy/lib/packet/converters.js +395 -0
  364. package/dist/dhcpd-proxy/lib/packet/message-types.d.ts +10 -0
  365. package/dist/dhcpd-proxy/lib/packet/message-types.js +12 -0
  366. package/dist/dhcpd-proxy/lib/packet/options.d.ts +8 -0
  367. package/dist/dhcpd-proxy/lib/packet/options.js +264 -0
  368. package/dist/dhcpd-proxy/lib/sprintf.d.ts +6 -0
  369. package/dist/dhcpd-proxy/lib/sprintf.js +130 -0
  370. package/dist/dhcpd-proxy/lib/utils.d.ts +126 -0
  371. package/dist/dhcpd-proxy/lib/utils.js +255 -0
  372. package/dist/dhcpd-proxy/simple-proxy.d.ts +11 -0
  373. package/dist/dhcpd-proxy/simple-proxy.js +118 -0
  374. package/dist/interfaces/i-pxe.d.ts +16 -16
  375. package/dist/krill/classes/sequence.d/add_user.d.ts +3 -3
  376. package/dist/krill/classes/sequence.d/add_user.js +34 -29
  377. package/dist/krill/classes/sequence.d/bootloader_config.js +3 -26
  378. package/dist/krill/classes/sequence.d/fstab.js +10 -22
  379. package/dist/krill/classes/sequence.d/grubcfg.js +5 -3
  380. package/dist/krill/classes/sequence.d/mkfs.d.ts +1 -1
  381. package/dist/krill/classes/sequence.d/mkfs.js +10 -11
  382. package/dist/krill/classes/sequence.d/partition.d/bios_standard.d.ts +3 -4
  383. package/dist/krill/classes/sequence.d/partition.d/bios_standard.js +31 -16
  384. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.js +0 -1
  385. package/dist/krill/lib/select_filesystem_type.js +2 -1
  386. package/dist/lib/utils.d.ts +2 -25
  387. package/dist/lib/utils.js +4 -27
  388. package/dist/penguins-eggs_25.7.10-1-linux-x64.tar.gz +0 -0
  389. package/dracut/README.md +14 -0
  390. package/dracut/dracut.conf +3 -3
  391. package/dracut/dracut.conf.d/10-persistent_policy.conf +1 -0
  392. package/dracut/dracut.conf.d/{01-live.conf → 50-live.conf} +3 -2
  393. package/mkinitcpio/arch/live.conf +3 -2
  394. package/mkinitcpio/manjaro/live.conf +1 -1
  395. package/mkinitfs/README.md +10 -49
  396. package/mkinitfs/live.conf +2 -0
  397. package/package.json +30 -28
  398. package/pods/ci/minimal/opensuse-container2host.sh +1 -1
  399. package/scripts/99clean +42 -0
  400. package/conf/distros/aldos/calamares/modules/bootloader.yml +0 -85
  401. package/conf/distros/aldos/calamares/modules/displaymanager.yml +0 -22
  402. package/conf/distros/aldos/calamares/modules/finished.yml +0 -5
  403. package/conf/distros/aldos/calamares/modules/fstab.yml +0 -12
  404. package/conf/distros/aldos/calamares/modules/locale.yml +0 -97
  405. package/conf/distros/aldos/calamares/modules/luksopenswaphookcfg.yml +0 -5
  406. package/conf/distros/aldos/calamares/modules/machineid.yml +0 -17
  407. package/conf/distros/aldos/calamares/modules/mount.yml +0 -56
  408. package/conf/distros/aldos/calamares/modules/packages.yml +0 -6
  409. package/conf/distros/aldos/calamares/modules/partition.yml +0 -242
  410. package/conf/distros/aldos/calamares/modules/removeuser.yml +0 -15
  411. package/conf/distros/aldos/calamares/modules/unpackfs.yml +0 -6
  412. package/conf/distros/aldos/calamares/modules/users.yml +0 -19
  413. package/conf/distros/aldos/calamares/modules/welcome.yml +0 -19
  414. package/conf/distros/aldos/calamares/settings.yml +0 -124
  415. package/conf/distros/fedora/calamares/modules/bootloader.conf +0 -85
  416. package/conf/distros/opensuse/calamares/modules/bootloader.conf +0 -86
  417. package/conf/distros/opensuse/calamares/modules/locale.yml +0 -98
  418. package/conf/distros/opensuse/calamares/modules/luksopenswaphookcfg.yml +0 -5
  419. package/conf/distros/opensuse/calamares/modules/machineid.yml +0 -17
  420. package/conf/distros/rolling/calamares/modules/shellprocess_removelink.yml +0 -8
  421. package/dist/index_old.d.ts +0 -8
  422. package/dist/index_old.js +0 -8
  423. package/dist/penguins-eggs_10.1.1-0_amd64.deb +0 -0
  424. package/dist/penguins-eggs_10.1.1-0_amd64.deb.sha256 +0 -1
  425. package/dracut/sidecar.sh +0 -19
  426. package/ipxe/ipxe.efi +0 -0
  427. package/mkinitfs/initramfs-init.in +0 -1051
  428. package/mkinitfs/sidecar.sh +0 -52
  429. /package/{syslinux → bootloaders/syslinux}/README.md +0 -0
  430. /package/{syslinux → bootloaders/syslinux}/chain.c32 +0 -0
  431. /package/{syslinux → bootloaders/syslinux}/isohdpfx.bin +0 -0
  432. /package/{syslinux → bootloaders/syslinux}/isolinux.bin +0 -0
  433. /package/{syslinux → bootloaders/syslinux}/ldlinux.c32 +0 -0
  434. /package/{syslinux → bootloaders/syslinux}/libcom32.c32 +0 -0
  435. /package/{syslinux → bootloaders/syslinux}/libutil.c32 +0 -0
  436. /package/{syslinux → bootloaders/syslinux}/lpxelinux.0 +0 -0
  437. /package/{syslinux → bootloaders/syslinux}/memdisk +0 -0
  438. /package/{syslinux → bootloaders/syslinux}/pxelinux.0 +0 -0
  439. /package/{syslinux → bootloaders/syslinux}/vesamenu.c32 +0 -0
  440. /package/dist/classes/ovary.d/{xorriso-commend.d.ts → xorriso-command.d.ts} +0 -0
  441. /package/dist/classes/ovary.d/{xorriso-commend.js → xorriso-command.js} +0 -0
@@ -11,7 +11,7 @@ import { InstallationMode, SwapChoice } from '../krill_enums.js';
11
11
  /**
12
12
  * mkfs
13
13
  *
14
- * mke2fs - create an ext2/ext3/ext4 file system -F force, -t type
14
+ * mkfs - create an ext2/ext3/ext4/btrfs
15
15
  */
16
16
  export default async function mkfs() {
17
17
  const result = true;
@@ -47,7 +47,6 @@ export default async function mkfs() {
47
47
  }
48
48
  // data
49
49
  if (this.devices.data.name !== 'none') {
50
- await exec(`mke2fs -Ft ${this.devices.data.fsType} ${this.devices.data.name} ${this.toNull}`, this.echo);
51
50
  }
52
51
  // swap
53
52
  if (this.partitions.userSwapChoice === SwapChoice.File) {
@@ -58,15 +57,15 @@ export default async function mkfs() {
58
57
  }
59
58
  }
60
59
  else if (this.partitions.filesystemType === 'btrfs') {
61
- await exec(`mkfs.btrfs -f ${this.devices.root.name} ${this.toNull}`, this.echo);
62
- // create subvolumes
63
- // await exec(`btrfs subvolume create /.snapshots ${this.toNull}`, this.echo)
64
- // await exec(`btrfs subvolume create /home ${this.toNull}`, this.echo)
65
- // await exec(`btrfs subvolume create /root ${this.toNull}`, this.echo)
66
- // await exec(`btrfs subvolume create /var/log ${this.toNull}`, this.echo)
67
- // await exec(`btrfs subvolume create /var/lib/AccountsService ${this.toNull}`, this.echo)
68
- // await exec(`btrfs subvolume create /var/lib/blueman ${this.toNull}`, this.echo)
69
- // await exec(`btrfs subvolume create /tmp ${this.toNull}`, this.echo)
60
+ await exec(`mkfs.btrfs -f btrfs ${this.devices.root.name} ${this.toNull}`, this.echo);
61
+ // Monta temporaneamente il volume Btrfs
62
+ await exec(`mount ${this.devices.root.name} /mnt`);
63
+ await exec(`btrfs subvolume create /mnt/@/`);
64
+ await exec(`btrfs subvolume create /mnt/@home`);
65
+ await exec(`btrfs subvolume create /mnt/@cache`);
66
+ await exec(`btrfs subvolume create /mnt/@log`);
67
+ // Smonta /mnt
68
+ await exec(`umount /mnt`);
70
69
  }
71
70
  return result;
72
71
  }
@@ -1,15 +1,14 @@
1
1
  /**
2
- * ./src/krill/modules/partition.d/bios-standard.ts
2
+ * ./src/krill/modules/partition.d/bios-standard.ts (versione unificata)
3
3
  * penguins-eggs v.10.0.0 / ecmascript 2020
4
4
  * author: Piero Proietti
5
5
  * email: piero.proietti@gmail.com
6
6
  * license: MIT
7
- * https://stackoverflow.com/questions/23876782/how-do-i-split-a-typescript-class-into-multiple-files
7
+ * Partiziona un disco per sistemi BIOS, gestendo dinamicamente ext4 (con swap) e btrfs (senza swap).
8
8
  */
9
9
  import Sequence from '../../sequence.js';
10
10
  /**
11
- *
12
- * @param this
11
+ * * @param this
13
12
  * @param installDevice
14
13
  * @param p
15
14
  * @returns
@@ -1,34 +1,49 @@
1
1
  /**
2
- * ./src/krill/modules/partition.d/bios-standard.ts
2
+ * ./src/krill/modules/partition.d/bios-standard.ts (versione unificata)
3
3
  * penguins-eggs v.10.0.0 / ecmascript 2020
4
4
  * author: Piero Proietti
5
5
  * email: piero.proietti@gmail.com
6
6
  * license: MIT
7
- * https://stackoverflow.com/questions/23876782/how-do-i-split-a-typescript-class-into-multiple-files
7
+ * Partiziona un disco per sistemi BIOS, gestendo dinamicamente ext4 (con swap) e btrfs (senza swap).
8
8
  */
9
9
  import { exec } from '../../../../lib/utils.js';
10
10
  /**
11
- *
12
- * @param this
11
+ * * @param this
13
12
  * @param installDevice
14
13
  * @param p
15
14
  * @returns
16
15
  */
17
16
  export default async function biosStandard(installDevice = "", p = "") {
17
+ const fsType = this.partitions.filesystemType;
18
+ // 1. Creazione della tabella delle partizioni (comune a entrambi)
18
19
  await exec(`parted --script ${installDevice} mklabel msdos`, this.echo);
19
- await exec(`parted --script --align optimal ${installDevice} mkpart primary linux-swap 1MiB ${this.swapSize + 1}MiB`, this.echo); // dev/sda1 swap
20
- await exec(`parted --script --align optimal ${installDevice} mkpart primary ext4 ${this.swapSize + 1}MiB 100%`, this.echo); // dev/sda2 root
21
- await exec(`parted ${installDevice} set 2 boot on`, this.echo);
22
- await exec(`parted ${installDevice} set 2 esp on`, this.echo);
23
- // SWAP
24
- this.devices.swap.name = `${installDevice}${p}1`;
25
- this.devices.swap.fsType = 'swap';
26
- this.devices.swap.mountPoint = 'none';
27
- // ROOT
28
- this.devices.root.name = `${installDevice}${p}2`;
29
- this.devices.root.fsType = 'ext4';
20
+ // 2. Logica di partizionamento condizionale
21
+ if (fsType === 'btrfs') {
22
+ // --- CASO BTRFS: NESSUNA PARTIZIONE DI SWAP ---
23
+ // Creiamo un'unica partizione che occupa tutto il disco.
24
+ // Lo swap verrà gestito con uno swapfile direttamente su Btrfs.
25
+ await exec(`parted --script --align optimal ${installDevice} mkpart primary "" 1MiB 100%`, this.echo); // Partizione 1: root
26
+ await exec(`parted ${installDevice} set 1 boot on`, this.echo);
27
+ // Imposta i dispositivi per Btrfs
28
+ this.devices.root.name = `${installDevice}${p}1`;
29
+ this.devices.swap.name = 'none'; // Nessuna partizione di swap
30
+ }
31
+ else {
32
+ // --- CASO EXT4 (o default): CON PARTIZIONE DI SWAP ---
33
+ // Comportamento standard con partizione di swap.
34
+ await exec(`parted --script --align optimal ${installDevice} mkpart primary linux-swap 1MiB ${this.swapSize + 1}MiB`, this.echo); // Partizione 1: swap
35
+ await exec(`parted --script --align optimal ${installDevice} mkpart primary "" ${this.swapSize + 1}MiB 100%`, this.echo); // Partizione 2: root
36
+ await exec(`parted ${installDevice} set 2 boot on`, this.echo);
37
+ // Imposta i dispositivi per ext4
38
+ this.devices.swap.name = `${installDevice}${p}1`;
39
+ this.devices.swap.fsType = 'swap';
40
+ this.devices.swap.mountPoint = 'none';
41
+ this.devices.root.name = `${installDevice}${p}2`;
42
+ }
43
+ // 3. Impostazioni finali comuni
44
+ this.devices.root.fsType = fsType;
30
45
  this.devices.root.mountPoint = '/';
31
- // BOOT/DATA/EFI
46
+ // BOOT/DATA/EFI non sono usati in questo schema
32
47
  this.devices.boot.name = 'none';
33
48
  this.devices.data.name = 'none';
34
49
  this.devices.efi.name = 'none';
@@ -27,6 +27,5 @@ export default async function uefiStandard(installDevice = "", p = "") {
27
27
  // BOOT/DATA/EFI
28
28
  this.devices.boot.name = 'none';
29
29
  this.devices.data.name = 'none';
30
- // this.devices.efi.name = `none`
31
30
  return true;
32
31
  }
@@ -18,7 +18,8 @@ export default async function selectFileSystemType() {
18
18
  partitions.defaultFileSystemType = 'ext4';
19
19
  }
20
20
  const choices = ['ext4'];
21
- if (Pacman.packageIsInstalled('btrfs-progs')) {
21
+ if (Pacman.packageIsInstalled('btrfs-progs') ||
22
+ Pacman.packageIsInstalled('btrfsprogs')) {
22
23
  choices.push('btrfs');
23
24
  }
24
25
  partitions.defaultFileSystemType = 'ext4';
@@ -12,31 +12,8 @@ import { IExec } from '../interfaces/index.js';
12
12
  * @param param1
13
13
  * @returns
14
14
  */
15
- export declare function exec(command: string, { capture, echo, ignore }?: {
16
- capture?: boolean | undefined;
15
+ export declare function exec(command: string, { echo, ignore, capture }?: {
17
16
  echo?: boolean | undefined;
18
17
  ignore?: boolean | undefined;
18
+ capture?: boolean | undefined;
19
19
  }): Promise<IExec>;
20
- /**
21
- * Compare two instances in order to determinate if they have save property values
22
- *
23
- * @param instance1 T
24
- * @param instance2 T
25
- * @returns boolean
26
- */
27
- export declare function compareInstances<T>(instance1: T, instance2: T): boolean;
28
- /**
29
- * Il problema è in questa funzione: core/cli-ux/indesx.ts
30
- * qui riportata solo come esempio
31
- *
32
- function timeout(p: Promise<any>, ms: number) {
33
- function wait(ms: number, unref = false) {
34
- return new Promise(resolve => {
35
- const t: any = setTimeout(() => resolve(null), ms)
36
- if (unref) t.unref()
37
- })
38
- }
39
-
40
- return Promise.race([p, wait(ms, true).then(() => ux.error('timed out'))])
41
- }
42
- */
package/dist/lib/utils.js CHANGED
@@ -9,9 +9,9 @@
9
9
  * Executes shell command as it would happen in BASH script
10
10
  * @param {string} command
11
11
  * @param {Object} [options] Object with options.
12
- * Set `echo` to TRUE, to echo command passed.
13
- * Set `ignore` to TRUE to ignore stdout
14
- * Set `capture` to TRUE, to capture and return stdout.
12
+ * echo: true, to echo command passed.
13
+ * ignore: true to ignore stdout
14
+ * capture: true, to capture and return stdout.
15
15
  *
16
16
  * @returns {Promise<{code: number, data: string | undefined, error: Object}>}
17
17
  *
@@ -28,7 +28,7 @@ import { spawn } from 'node:child_process';
28
28
  * @param param1
29
29
  * @returns
30
30
  */
31
- export async function exec(command, { capture = false, echo = false, ignore = false } = {}) {
31
+ export async function exec(command, { echo = false, ignore = false, capture = false } = {}) {
32
32
  /**
33
33
  * You could wrap spawn in a promise,
34
34
  * listen to exit event,
@@ -62,26 +62,3 @@ export async function exec(command, { capture = false, echo = false, ignore = fa
62
62
  // end promise
63
63
  });
64
64
  }
65
- /**
66
- * Compare two instances in order to determinate if they have save property values
67
- *
68
- * @param instance1 T
69
- * @param instance2 T
70
- * @returns boolean
71
- */
72
- export function compareInstances(instance1, instance2) { return JSON.stringify(instance1) === JSON.stringify(instance2); }
73
- /**
74
- * Il problema è in questa funzione: core/cli-ux/indesx.ts
75
- * qui riportata solo come esempio
76
- *
77
- function timeout(p: Promise<any>, ms: number) {
78
- function wait(ms: number, unref = false) {
79
- return new Promise(resolve => {
80
- const t: any = setTimeout(() => resolve(null), ms)
81
- if (unref) t.unref()
82
- })
83
- }
84
-
85
- return Promise.race([p, wait(ms, true).then(() => ux.error('timed out'))])
86
- }
87
- */
package/dracut/README.md CHANGED
@@ -16,3 +16,17 @@ sudo zypper -y install \
16
16
  dracut-tools
17
17
  ```
18
18
 
19
+ ### pacchetti da installare/rimuovere per opensuse
20
+ sudo zypper rm multipath-tools
21
+ sudo zypper install libxkbcommon-tools util-linux kf6-qqc2-desktop-styl
22
+
23
+
24
+ # procedura per grub su btrfs
25
+ sudo mount -o subvol=@ /dev/sda2 /mnt
26
+ sudo mount -o subvol=@home /dev/sda2 /mnt/home
27
+ sudo mount /dev/sda1 /mnt/boot/efi
28
+ for i in /dev /proc /sys; do sudo mount --bind $i /mnt$i; done
29
+ sudo mount --bind /sys/firmware/efi/efivars /mnt/sys/firmware/efi/efivars
30
+ sudo chroot /mnt
31
+ grub2-install
32
+ grub2-mkconfig -o /boot/grub2/grub.cfg
@@ -1,3 +1,3 @@
1
- # dracut.conf
2
- # intentionally blank
3
-
1
+ # PUT YOUR CONFIG IN separate files
2
+ # in /etc/dracut.conf.d named "<name>.conf"
3
+ # SEE man dracut.conf(5) for options
@@ -0,0 +1 @@
1
+ persistent_policy="by-label"
@@ -1,9 +1,10 @@
1
- # dracut.conf.d/01-live.conf
1
+ # dracut.conf.d/50-live.conf
2
2
  mdadmconf="no"
3
3
  lvmconf="no"
4
- #dmsetup="no" unfortunately, dmsetup block all the device mapper devices
4
+ use_fstab="no"
5
5
  squash_compress="zstd"
6
6
  compress="zstd"
7
7
  add_dracutmodules+=" livenet dmsquash-live dmsquash-live-autooverlay convertfs pollcdrom qemu qemu-net "
8
8
  hostonly="no"
9
9
  early_microcode="no"
10
+
@@ -1,3 +1,4 @@
1
- HOOKS=(base udev microcode modconf kms memdisk archiso archiso_loop_mnt archiso_pxe_common archiso_pxe_nbd archiso_pxe_http archiso_pxe_nfs block filesystems keyboard)
1
+ MODULES=(loop dm-snapshot btrfs)
2
+ HOOKS=(base udev microcode modconf kms memdisk archiso archiso_loop_mnt archiso_pxe_common archiso_pxe_nbd archiso_pxe_http archiso_pxe_nfs block filesystems keyboard keymap consolefont filesystems fsck)
2
3
  COMPRESSION="xz"
3
- COMPRESSION_OPTIONS=(-9e)
4
+ #COMPRESSION_OPTIONS=(-9e)
@@ -1,4 +1,4 @@
1
1
  # come from buldconf on initramfs-x86_64.img from manjaro-xfce-24.1.0-241001-linux610.iso
2
- MODULES=(loop dm-snapshot)
2
+ MODULES=(loop dm-snapshot btrfs)
3
3
  HOOKS=(base udev miso_shutdown miso miso_loop_mnt miso_pxe_common miso_pxe_http miso_pxe_nbd miso_pxe_nfs miso_kms modconf block filesystems keyboard keymap)
4
4
  COMPRESSION="xz"
@@ -1,55 +1,16 @@
1
1
  # AlpineLinux
2
2
 
3
- Sto cercando una soluzione per montare il mio `filesystem.squasfs` attraverso un apposito `initramfs-lts` custom che viene inserito nella ISO.
3
+ Fare riferimento a [penguins-alpine](https://github.com/pieroproietti/penguins-alpine) per installare penguins-eggs su Alpine e sul funzionamento del sidecar.
4
4
 
5
- Dato che dobbiamo avere a disposizione squashfs ed overlay per montare il `filesystem.squash`, li ho aggiunti alle features del file utilizzato per la configurazione: `live.conf`
5
+ ## sidecar
6
6
 
7
- ```
8
- # live conf
9
- features="ata base ide scsi usb cdrom virtio blkid squashfs overlay ext4"
10
- ```
7
+ Il sidecar consiste in una patch a inittra,s-init che aggiunge le catatteristiche di permettere l'avvio da una ISO prodotta con penguins-eggs.
11
8
 
12
- La creazione di `initramfs-lts` avviene all'interno di `ovary.ts` chiamando il metodo `initrdAlpine()`:
9
+ Il sidecar:
13
10
 
14
- ```
15
- /**
16
- * initrdAlpine()
17
- */
18
- async initrdAlpine() {
19
- Utils.warning(`creating ${path.basename(this.settings.initrdImg)} Alpine on ISO/live`)
20
- let initrdImg='initramfs-lts'
21
- const pathConf = path.resolve(__dirname, `../../mkinitfs/live.conf`)
22
- const sidecar = path.resolve(__dirname, `../../mkinitfs/sidecar.sh`)
23
- await exec(`mkinitfs -c ${pathConf} -o ${this.settings.iso_work}live/${initrdImg}`, Utils.setEcho(true))
24
- await exec(`cp ${sidecar} ${this.settings.iso_work}live/`)
25
- }
26
- ```
27
-
28
- Nella stessa funzione, lo script `sidecar.sh` viene creato e viene inserito all'interno della carlella `live` della ISO.
29
-
30
-
31
- L'avvio del live è possibile solo da sistemi BIOS, il sistema viene avviato ma `initramfs-lts` va in emergency mode, non è previsto il mount con overlayfs.
32
-
33
- A questo punto, basta montare la ISO, digitare exit per trovarisi in emergency shell e lanciare sidecar.sh:
34
-
35
- ```
36
- mkdir /mnt/
37
- mount /dev/sr0 /mnt
38
- exit
39
- /mnt/live/sidecar.sh
40
- ```
41
-
42
- Le istruzioni di `sidecar.sh` utilizzano `/sysroot` come mountpoint per il mount RW del filesystem live e, digitanto ancora `exit` per tornare all'init, verrà correttamente eseguito lo `switch_root` ed il sistema verrà avviato.
43
-
44
- Resta da vedere se è possibile includere questo in un vero init.
45
-
46
-
47
-
48
- # overlaytmpfs=yes
49
- When booting from a read-only filesystem, you can specify this flag to have
50
- your changes written to an in-memory temporary overlayfs. The underlying
51
- filesystem will always be mounted read-only, the overlay always writable.
52
-
53
- # overlaytmpfsflags=lowerdir=/media/root-ro,upperdir=/media/root-rw/root,workdir=/media/root-rw/work
54
- Optional comma-separated list of tmpfs(5) mount options when Boverlaytmpfs
55
- is used. The default is mode=0755,rw, you cannot override.
11
+ Cerca un dispositivo con la label specificata
12
+ Monta il dispositivo live
13
+ Monta il filesystem.squashfs come layer read-only
14
+ Crea un overlay con tmpfs per le modifiche
15
+ Configura il sistema per il boot live
16
+ Attaccare il sidecar alla moto
@@ -1,2 +1,4 @@
1
1
  # live conf
2
+ modules="8139cp e1000e r8169 virtio-pci virtio_net tg3 "
2
3
  features="ata base ide scsi cdrom usb virtio ext4 blkid squashfs"
4
+
package/package.json CHANGED
@@ -2,64 +2,66 @@
2
2
  "name": "penguins-eggs",
3
3
  "shortName": "eggs",
4
4
  "description": "A remaster system tool, compatible with Arch, Debian, Devuan, Ubuntu and others",
5
- "version": "10.1.1",
5
+ "version": "25.7.10",
6
6
  "author": "Piero Proietti",
7
7
  "bin": {
8
8
  "eggs": "./bin/run.js"
9
9
  },
10
10
  "bugs": "https://github.com/pieroproietti/penguins-eggs/issues",
11
11
  "dependencies": {
12
- "@oclif/core": "^4.3.0",
13
- "@oclif/plugin-autocomplete": "^3.2.29",
14
- "@oclif/plugin-help": "^6.2.28",
15
- "@oclif/plugin-version": "^2.2.28",
16
- "ansis": "^4.0.0",
12
+ "@oclif/core": "^4.5.0",
13
+ "@oclif/plugin-autocomplete": "^3.2.32",
14
+ "@oclif/plugin-help": "^6.2.30",
15
+ "@oclif/plugin-version": "^2.2.31",
16
+ "@types/express": "^5.0.3",
17
+ "ansis": "^4.1.0",
17
18
  "axios": "^1.9.0",
18
19
  "chalk": "^5.4.0",
19
20
  "cli-cursor": "^5.0.0",
20
21
  "debug": "^4.4.1",
21
- "ink": "^5.2.1",
22
+ "express": "^5.1.0",
23
+ "ink": "^5",
22
24
  "ink-progress-bar": "^3.0.0",
23
25
  "ink-spinner": "^5.0.0",
24
- "inquirer": "^12.6.3",
26
+ "inquirer": "^12.7.0",
25
27
  "js-yaml": "^4.1.0",
26
28
  "mustache": "^4.2.0",
27
29
  "netmask": "^2.0.2",
28
- "node-proxy-dhcpd": "0.1.2",
29
- "node-static": "^0.7.11",
30
30
  "react": "^18.3.1",
31
31
  "read": "^4.1.0",
32
32
  "shelljs": "^0.10.0",
33
- "systeminformation": "^5.25.11",
34
- "tftp": "^0.1.2"
33
+ "systeminformation": "^5.27.7",
34
+ "tftp": "^0.1.2",
35
+ "ws": "^8.18.3"
35
36
  },
36
37
  "devDependencies": {
37
38
  "@oclif/prettier-config": "^0.2.1",
38
39
  "@oclif/test": "^4.1.13",
39
40
  "@types/chai": "^5.2.2",
40
41
  "@types/debug": "^4.1.12",
41
- "@types/glob": "^8.1.0",
42
+ "@types/glob": "^9.0.0",
42
43
  "@types/inquirer": "^9.0.8",
43
44
  "@types/js-yaml": "^4.0.9",
44
45
  "@types/mocha": "^10.0.8",
45
46
  "@types/mustache": "^4.2.6",
46
47
  "@types/netmask": "^2.0.5",
47
- "@types/node": "^22.15.21",
48
- "@types/node-static": "^0.7.11",
49
- "@types/react": "18.3.18",
48
+ "@types/node": "^22.15.30",
49
+ "@types/react": "^18.3.1",
50
50
  "@types/read": "^0.0.32",
51
- "@types/shelljs": "^0.8.16",
52
- "chai": "^5.2.0",
53
- "eslint": "^9.26.0",
54
- "eslint-config-oclif": "^6.0.62",
51
+ "@types/shelljs": "^0.8.17",
52
+ "@types/ws": "^8.18.1",
53
+ "chai": "^5.2.1",
54
+ "eslint": "^9.30.1",
55
+ "eslint-config-oclif": "^6.0.83",
55
56
  "eslint-config-prettier": "^10.1.5",
56
- "glob": "^11.0.2",
57
- "mocha": "^11.5.0",
58
- "oclif": "^4.17.46",
59
- "perrisbrewery": "^10.1.3",
60
- "prettier": "^3.5.3",
57
+ "glob": "^11.0.3",
58
+ "mocha": "^11.7.0",
59
+ "oclif": "^4.20.5",
60
+ "perrisbrewery": "^10",
61
+ "prettier": "^3.6.2",
61
62
  "shx": "^0.4.0",
62
63
  "ts-node": "10.9.2",
64
+ "ts-prune": "^0.10.3",
63
65
  "typescript": "^5.7.3"
64
66
  },
65
67
  "engines": {
@@ -70,19 +72,18 @@
70
72
  "/addons",
71
73
  "/assets",
72
74
  "/bin",
75
+ "/bootloaders",
73
76
  "/conf",
74
77
  "/dist",
75
78
  "/dracut",
76
79
  "/eui",
77
- "/ipxe",
78
80
  "/maker",
79
81
  "/manpages",
80
82
  "/mkinitcpio",
81
83
  "/mkinitfs",
82
84
  "/perrisbrewery",
83
85
  "/pods",
84
- "/scripts",
85
- "/syslinux"
86
+ "/scripts"
86
87
  ],
87
88
  "homepage": "https://penguins-eggs.net",
88
89
  "keywords": [
@@ -122,6 +123,7 @@
122
123
  "posttest": "pnpm run lint",
123
124
  "tarballs": "shx rm -rf dist && tsc -p . && oclif manifest && oclif pack tarballs -t linux-x64 --no-xz -r . && pb tarballs --release $(cat ./release)",
124
125
  "test": "mocha --forbid-only \"test/**/*.test.ts\"",
126
+ "unused": "ts-prune",
125
127
  "version": "oclif readme && git add README.md"
126
128
  }
127
129
  }
@@ -60,7 +60,7 @@ zypper install -y \
60
60
 
61
61
  echo "filesystem and disk support"
62
62
  zypper install -y \
63
- btrfs-progs \
63
+ btrfsprogs \
64
64
  xfsprogs \
65
65
  dosfstools \
66
66
  ntfs-3g \
@@ -0,0 +1,42 @@
1
+ #!/bin/bash
2
+
3
+ # Uscita immediata in caso di errore
4
+ set -e
5
+
6
+ # Percorso del file initrd appena creato da dracut
7
+ # Adatta questo percorso a quello usato dal tuo script
8
+ INITRD_FILE="/home/eggs/.mnt/iso/live/initrd-$1"
9
+
10
+ # Controlla se il file esiste prima di procedere
11
+ if [ ! -f "$INITRD_FILE" ]; then
12
+ echo "Errore: il file initrd $INITRD_FILE non è stato trovato!"
13
+ exit 1
14
+ fi
15
+
16
+ # Crea una directory temporanea sicura
17
+ TMP_DIR=$(mktemp -d)
18
+
19
+ echo ">>> Pulizia dell'initrd: ${INITRD_FILE}"
20
+ echo ">>> Directory temporanea: ${TMP_DIR}"
21
+
22
+ # Entra nella directory temporanea e scompatta l'archivio
23
+ cd "${TMP_DIR}"
24
+ # La compressione è zstd, come da tua configurazione dracut
25
+ zstd -d < "${INITRD_FILE}" | cpio -idm
26
+
27
+ echo ">>> Rimozione degli hook UUID specifici dell'host..."
28
+ # Usiamo -f per non dare errore se i file non esistono
29
+ rm -f ./var/lib/dracut/hooks/emergency/80-*
30
+ rm -f ./var/lib/dracut/hooks/initqueue/finished/devexists-*
31
+
32
+ echo ">>> Ricompressione dell'initrd pulito..."
33
+ # Ricreiamo l'archivio cpio e lo ricomprimiamo con zstd
34
+ find . | cpio -o -H newc | zstd -T0 > "${INITRD_FILE}.clean"
35
+
36
+ echo ">>> Sostituzione del file originale con la versione pulita."
37
+ mv "${INITRD_FILE}.clean" "${INITRD_FILE}"
38
+
39
+ echo ">>> Pulizia della directory temporanea."
40
+ rm -rf "${TMP_DIR}"
41
+
42
+ echo ">>> FATTO! L'initrd è stato pulito con successo."
@@ -1,85 +0,0 @@
1
- # SPDX-FileCopyrightText: no
2
- # SPDX-License-Identifier: CC0-1.0
3
- #
4
- # Bootloader configuration. The bootloader is installed to allow
5
- # the system to start (and pick one of the installed operating
6
- # systems to run).
7
- #
8
- # Take note that Debian-derivatives that use unmodified GRUB EFI packages
9
- # should specifically set *efiBootloaderId* to "debian" because that is
10
- # hard-coded in `grubx64.efi`.
11
- ---
12
- # A variable from global storage which overrides the value of efiBootLoader
13
- #efiBootLoaderVar: "packagechooser_bootloader"
14
-
15
- # Define which bootloader you want to use for EFI installations
16
- # Possible options are 'grub', 'sb-shim', 'refind` and 'systemd-boot'.
17
- efiBootLoader: "sb-shim"
18
-
19
- # systemd-boot configuration files settings
20
-
21
- # kernelSearchPath is the path relative to the root of the install to search for kernels
22
- # A kernel is identified by finding files which match regular expression, kernelPattern
23
- kernelSearchPath: "/usr/lib/modules"
24
- kernelPattern: "^vmlinuz.*"
25
-
26
- # loaderEntries is an array of options to add to loader.conf for systemd-boot
27
- # please note that the "default" option is added programmatically
28
- loaderEntries:
29
- - "timeout 5"
30
- - "console-mode keep"
31
-
32
- # systemd-boot and refind support custom kernel params
33
- kernelParams: [ "quiet" ]
34
-
35
- # A list of kernel names that refind should accept as kernels
36
- #refindKernelList: [ "linux","linux-lts","linux-zen","linux-hardened" ]
37
-
38
- # GRUB 2 binary names and boot directory
39
- # Some distributions (e.g. Fedora) use grub2-* (resp. /boot/grub2/) names.
40
- # These names are also used when using sb-shim, since that needs some
41
- # GRUB functionality (notably grub-probe) to work. As needed, you may use
42
- # complete paths like `/usr/bin/efibootmgr` for the executables.
43
- #
44
- grubInstall: "grub2-install"
45
- grubMkconfig: "grub2-mkconfig"
46
- grubCfg: "/boot/grub2/grub.cfg"
47
- grubProbe: "grub2-probe"
48
- efiBootMgr: "efibootmgr"
49
-
50
- # Optionally set the bootloader ID to use for EFI. This is passed to
51
- # grub-install --bootloader-id.
52
- #
53
- # If not set here, the value from bootloaderEntryName from branding.desc
54
- # is used, with problematic characters (space and slash) replaced.
55
- #
56
- # The ID is also used as a directory name within the EFI environment,
57
- # and the bootloader is copied from /boot/efi/EFI/<dirname>/ . When
58
- # setting the option here, keep in mind that the name is sanitized
59
- # (problematic characters, see above, are replaced).
60
- #
61
- # There are some special words possible at the end of *efiBootloaderId*:
62
- # ${SERIAL} can be used to obtain a uniquely-numbered suffix
63
- # that is added to the Id (yielding, e.g., `dirname1` or `dirname72`)
64
- # ${RANDOM} can be used to obtain a unique 4-digit hex suffix
65
- # ${PHRASE} can be used to obtain a unique 1-to-3-word suffix
66
- # from a dictionary of space-themed words
67
- # These words must be at the **end** of the *efiBootloaderId* value.
68
- # There must also be at most one of them. If there is none, no suffix-
69
- # processing is done and the *efiBootloaderId* is used unchanged.
70
- #
71
- # NOTE: Debian derivatives that use the unmodified Debian GRUB EFI
72
- # packages may need to set this to "debian" because that is
73
- # hard-coded in `grubx64.efi`.
74
- #
75
- # PACKAGER NOTE: If you really want to change this value, you will also have to
76
- # change the hardcoded directory name in the grub2(-efi) package.
77
- efiBootloaderId: "fedora"
78
-
79
- # Optionally install a copy of the GRUB EFI bootloader as the EFI
80
- # fallback loader (either bootia32.efi or bootx64.efi depending on
81
- # the system). This may be needed on certain systems (Intel DH87MC
82
- # seems to be the only one). If you set this to false, take care
83
- # to add another module to optionally install the fallback on those
84
- # boards that need it.
85
- installEFIFallback: true
@@ -1,22 +0,0 @@
1
- # Fedora
2
- # Configure one or more display managers (e.g. SDDM)
3
- # with a "best effort" approach.
4
- ---
5
- #The DM module attempts to set up all the DMs found in this list, in that precise order.
6
- #It also sets up autologin, if the feature is enabled in globalstorage.
7
- #The displaymanagers list can also be set in globalstorage, and in that case it overrides anything set up here.
8
- displaymanagers: none
9
-
10
- #Enable the following settings to force a desktop environment in your displaymanager configuration file:
11
- #defaultDesktopEnvironment:
12
- # executable: "startkde"
13
- # desktopFile: "plasma"
14
-
15
- #If true, try to ensure that the user, group, /var directory etc. for the
16
- #display manager are set up correctly. This is normally done by the distribution
17
- #packages, and best left to them. Therefore, it is disabled by default.
18
- basicSetup: false
19
-
20
- #If true, setup autologin for openSUSE. This only makes sense on openSUSE
21
- #derivatives or other systems where /etc/sysconfig/displaymanager exists.
22
- sysconfigSetup: false