penguins-eggs 10.0.57 → 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 (404) hide show
  1. package/.oclif.manifest.json +100 -1
  2. package/README.md +84 -44
  3. package/addons/eggs/theme/calamares/modules/{_users.yml → users.yml} +3 -3
  4. package/addons/eggs/theme/livecd/grub.main.full.cfg +1 -7
  5. package/addons/eggs/theme/livecd/grub.main.simple.cfg +1 -1
  6. package/assets/config.cfg +30 -0
  7. package/conf/derivatives.yaml +1 -3
  8. package/conf/derivatives_fedora.yaml +6 -0
  9. package/conf/distros/alpine/calamares/modules/users.yml +3 -3
  10. package/conf/distros/bionic/calamares/calamares-modules/grubcfg/grubcfg.yml +1 -1
  11. package/conf/distros/bionic/calamares/modules/users.yml +3 -3
  12. package/conf/distros/buster/calamares/calamares-modules/cleanup/cleanup.sh +8 -1
  13. package/conf/distros/buster/calamares/modules/partition.yml +159 -23
  14. package/conf/distros/buster/calamares/modules/removeuser.yml +1 -1
  15. package/conf/distros/buster/calamares/modules/users.yml +3 -3
  16. package/conf/distros/fedora/calamares/modules/users.yml +3 -3
  17. package/conf/distros/noble/calamares/modules/focal-jammy/users.yml +3 -3
  18. package/conf/distros/opensuse/calamares/modules/users.yml +3 -3
  19. package/conf/distros/rolling/calamares/modules/users.yml +3 -3
  20. package/conf/eggs.yaml +1 -1
  21. package/conf/exclude.list.d/master.list +1 -0
  22. package/conf/krill.yaml +8 -0
  23. package/conf/love.yaml +4 -4
  24. package/package.json +33 -29
  25. package/perrisbrewery/scripts/postinst +98 -0
  26. package/perrisbrewery/scripts/postrm +82 -0
  27. package/perrisbrewery/scripts/preinst +40 -0
  28. package/perrisbrewery/scripts/prerm +47 -0
  29. package/perrisbrewery/template/control.template +17 -0
  30. package/perrisbrewery/template/dependencies-bionic.yaml +33 -0
  31. package/perrisbrewery/template/dependencies.yaml +37 -0
  32. package/perrisbrewery/template/man.template.md +110 -0
  33. package/pods/README.md +14 -0
  34. package/pods/almalinux.sh +10 -0
  35. package/pods/archlinux.sh +10 -0
  36. package/pods/ci/README.md +5 -0
  37. package/pods/ci/kernel-overlay-install.sh +114 -0
  38. package/pods/ci/minimal/almalinux-container2host.sh +165 -0
  39. package/pods/ci/minimal/archlinux-container2host.sh +125 -0
  40. package/pods/ci/minimal/debian-container2host.sh +173 -0
  41. package/pods/ci/minimal/fedora-container2host.sh +170 -0
  42. package/pods/ci/minimal/manjaro-container2host.sh +123 -0
  43. package/pods/ci/minimal/opensuse-container2host.sh +143 -0
  44. package/pods/ci/penguins-eggs-execute.sh +22 -0
  45. package/pods/ci/penguins-eggs-install.sh +115 -0
  46. package/pods/ci/run +34 -0
  47. package/pods/ci/run-on-almalinux.sh +50 -0
  48. package/pods/ci/run-on-archlinux.sh +64 -0
  49. package/pods/ci/run-on-debian.sh +51 -0
  50. package/pods/ci/run-on-devuan.sh +48 -0
  51. package/pods/ci/run-on-fedora.sh +51 -0
  52. package/pods/ci/run-on-manjaro.sh +61 -0
  53. package/pods/ci/run-on-opensuse.sh +58 -0
  54. package/pods/ci/run-on-rockylinux.sh +51 -0
  55. package/pods/ci/run-on-ubuntu.sh +52 -0
  56. package/pods/debian.sh +23 -0
  57. package/pods/devuan.sh +26 -0
  58. package/pods/fedora.sh +12 -0
  59. package/pods/lmde.sh +22 -0
  60. package/pods/manjaro.sh +10 -0
  61. package/pods/opensuse.sh +12 -0
  62. package/pods/podman.command.sh +85 -0
  63. package/pods/rocky.sh +12 -0
  64. package/pods/run-build-packages-debs.sh +45 -0
  65. package/pods/run-create-debs.sh +23 -0
  66. package/pods/ubuntu.sh +24 -0
  67. package/scripts/_eggs +23 -6
  68. package/scripts/eggs.bash +8 -6
  69. package/dist/classes/bleach.d.ts +0 -32
  70. package/dist/classes/bleach.js +0 -135
  71. package/dist/classes/cfs.d.ts +0 -17
  72. package/dist/classes/cfs.js +0 -39
  73. package/dist/classes/cli-autologin.d.ts +0 -52
  74. package/dist/classes/cli-autologin.js +0 -247
  75. package/dist/classes/compressors.d.ts +0 -54
  76. package/dist/classes/compressors.js +0 -109
  77. package/dist/classes/daddy.d.ts +0 -26
  78. package/dist/classes/daddy.js +0 -167
  79. package/dist/classes/distro.d.ts +0 -32
  80. package/dist/classes/distro.js +0 -341
  81. package/dist/classes/diversions.d.ts +0 -52
  82. package/dist/classes/diversions.js +0 -126
  83. package/dist/classes/incubation/branding.d.ts +0 -17
  84. package/dist/classes/incubation/branding.js +0 -85
  85. package/dist/classes/incubation/fisherman-helper/displaymanager.d.ts +0 -11
  86. package/dist/classes/incubation/fisherman-helper/displaymanager.js +0 -40
  87. package/dist/classes/incubation/fisherman-helper/packages.d.ts +0 -20
  88. package/dist/classes/incubation/fisherman-helper/packages.js +0 -72
  89. package/dist/classes/incubation/fisherman-helper/settings.d.ts +0 -15
  90. package/dist/classes/incubation/fisherman-helper/settings.js +0 -83
  91. package/dist/classes/incubation/fisherman.d.ts +0 -70
  92. package/dist/classes/incubation/fisherman.js +0 -263
  93. package/dist/classes/incubation/incubator.d/alpine.d.ts +0 -32
  94. package/dist/classes/incubation/incubator.d/alpine.js +0 -78
  95. package/dist/classes/incubation/incubator.d/bionic.d.ts +0 -32
  96. package/dist/classes/incubation/incubator.d/bionic.js +0 -83
  97. package/dist/classes/incubation/incubator.d/buster.d.ts +0 -32
  98. package/dist/classes/incubation/incubator.d/buster.js +0 -85
  99. package/dist/classes/incubation/incubator.d/jessie.d.ts +0 -31
  100. package/dist/classes/incubation/incubator.d/jessie.js +0 -44
  101. package/dist/classes/incubation/incubator.d/noble.d.ts +0 -32
  102. package/dist/classes/incubation/incubator.d/noble.js +0 -85
  103. package/dist/classes/incubation/incubator.d/openmamba.d.ts +0 -32
  104. package/dist/classes/incubation/incubator.d/openmamba.js +0 -81
  105. package/dist/classes/incubation/incubator.d/opensuse.d.ts +0 -32
  106. package/dist/classes/incubation/incubator.d/opensuse.js +0 -81
  107. package/dist/classes/incubation/incubator.d/rolling.d.ts +0 -32
  108. package/dist/classes/incubation/incubator.d/rolling.js +0 -80
  109. package/dist/classes/incubation/incubator.d.ts +0 -44
  110. package/dist/classes/incubation/incubator.js +0 -382
  111. package/dist/classes/incubation/installer.d.ts +0 -13
  112. package/dist/classes/incubation/installer.js +0 -52
  113. package/dist/classes/keyboards.d.ts +0 -50
  114. package/dist/classes/keyboards.js +0 -287
  115. package/dist/classes/locales.d.ts +0 -21
  116. package/dist/classes/locales.js +0 -77
  117. package/dist/classes/network.d.ts +0 -37
  118. package/dist/classes/network.js +0 -98
  119. package/dist/classes/ovary.d.ts +0 -198
  120. package/dist/classes/ovary.js +0 -1850
  121. package/dist/classes/pacman.d/aldos.d.ts +0 -52
  122. package/dist/classes/pacman.d/aldos.js +0 -100
  123. package/dist/classes/pacman.d/alpine.d.ts +0 -56
  124. package/dist/classes/pacman.d/alpine.js +0 -162
  125. package/dist/classes/pacman.d/archlinux.d.ts +0 -62
  126. package/dist/classes/pacman.d/archlinux.js +0 -139
  127. package/dist/classes/pacman.d/debian.d.ts +0 -65
  128. package/dist/classes/pacman.d/debian.js +0 -143
  129. package/dist/classes/pacman.d/fedora.d.ts +0 -53
  130. package/dist/classes/pacman.d/fedora.js +0 -101
  131. package/dist/classes/pacman.d/openmamba.d.ts +0 -52
  132. package/dist/classes/pacman.d/openmamba.js +0 -100
  133. package/dist/classes/pacman.d/opensuse.d.ts +0 -53
  134. package/dist/classes/pacman.d/opensuse.js +0 -102
  135. package/dist/classes/pacman.d/voidlinux.d.ts +0 -52
  136. package/dist/classes/pacman.d/voidlinux.js +0 -90
  137. package/dist/classes/pacman.d.ts +0 -139
  138. package/dist/classes/pacman.js +0 -775
  139. package/dist/classes/pve-live.d.ts +0 -17
  140. package/dist/classes/pve-live.js +0 -52
  141. package/dist/classes/pxe.d.ts +0 -74
  142. package/dist/classes/pxe.js +0 -410
  143. package/dist/classes/settings.d.ts +0 -53
  144. package/dist/classes/settings.js +0 -185
  145. package/dist/classes/sources_list.d.ts +0 -28
  146. package/dist/classes/sources_list.js +0 -89
  147. package/dist/classes/systemctl.d.ts +0 -47
  148. package/dist/classes/systemctl.js +0 -86
  149. package/dist/classes/tailor.d.ts +0 -50
  150. package/dist/classes/tailor.js +0 -526
  151. package/dist/classes/tools.d.ts +0 -26
  152. package/dist/classes/tools.js +0 -50
  153. package/dist/classes/users.d.ts +0 -28
  154. package/dist/classes/users.js +0 -143
  155. package/dist/classes/utils.d.ts +0 -326
  156. package/dist/classes/utils.js +0 -1025
  157. package/dist/classes/xdg.d.ts +0 -45
  158. package/dist/classes/xdg.js +0 -337
  159. package/dist/classes/yolk.d.ts +0 -33
  160. package/dist/classes/yolk.js +0 -114
  161. package/dist/commands/adapt.d.ts +0 -17
  162. package/dist/commands/adapt.js +0 -33
  163. package/dist/commands/analyze.d.ts +0 -26
  164. package/dist/commands/analyze.js +0 -95
  165. package/dist/commands/calamares.d.ts +0 -29
  166. package/dist/commands/calamares.js +0 -112
  167. package/dist/commands/config.d.ts +0 -35
  168. package/dist/commands/config.js +0 -120
  169. package/dist/commands/cuckoo.d.ts +0 -16
  170. package/dist/commands/cuckoo.js +0 -62
  171. package/dist/commands/dad.d.ts +0 -20
  172. package/dist/commands/dad.js +0 -46
  173. package/dist/commands/export/iso.d.ts +0 -19
  174. package/dist/commands/export/iso.js +0 -55
  175. package/dist/commands/export/pkg.d.ts +0 -29
  176. package/dist/commands/export/pkg.js +0 -163
  177. package/dist/commands/export/tarballs.d.ts +0 -27
  178. package/dist/commands/export/tarballs.js +0 -84
  179. package/dist/commands/install.d.ts +0 -37
  180. package/dist/commands/install.js +0 -88
  181. package/dist/commands/kill.d.ts +0 -24
  182. package/dist/commands/kill.js +0 -50
  183. package/dist/commands/love.d.ts +0 -20
  184. package/dist/commands/love.js +0 -59
  185. package/dist/commands/mom.d.ts +0 -16
  186. package/dist/commands/mom.js +0 -30
  187. package/dist/commands/produce.d.ts +0 -34
  188. package/dist/commands/produce.js +0 -201
  189. package/dist/commands/status.d.ts +0 -23
  190. package/dist/commands/status.js +0 -31
  191. package/dist/commands/syncfrom.d.ts +0 -45
  192. package/dist/commands/syncfrom.js +0 -152
  193. package/dist/commands/syncto.d.ts +0 -40
  194. package/dist/commands/syncto.js +0 -175
  195. package/dist/commands/tools/clean.d.ts +0 -18
  196. package/dist/commands/tools/clean.js +0 -37
  197. package/dist/commands/tools/ppa.d.ts +0 -26
  198. package/dist/commands/tools/ppa.js +0 -138
  199. package/dist/commands/tools/skel.d.ts +0 -18
  200. package/dist/commands/tools/skel.js +0 -44
  201. package/dist/commands/tools/stat.d.ts +0 -31
  202. package/dist/commands/tools/stat.js +0 -70
  203. package/dist/commands/tools/yolk.d.ts +0 -24
  204. package/dist/commands/tools/yolk.js +0 -45
  205. package/dist/commands/update.d.ts +0 -51
  206. package/dist/commands/update.js +0 -219
  207. package/dist/commands/wardrobe/get.d.ts +0 -23
  208. package/dist/commands/wardrobe/get.js +0 -52
  209. package/dist/commands/wardrobe/list.d.ts +0 -24
  210. package/dist/commands/wardrobe/list.js +0 -125
  211. package/dist/commands/wardrobe/show.d.ts +0 -25
  212. package/dist/commands/wardrobe/show.js +0 -97
  213. package/dist/commands/wardrobe/wear.d.ts +0 -26
  214. package/dist/commands/wardrobe/wear.js +0 -84
  215. package/dist/components/finished.d.ts +0 -16
  216. package/dist/components/finished.js +0 -56
  217. package/dist/components/information.d.ts +0 -8
  218. package/dist/components/information.js +0 -156
  219. package/dist/components/install.d.ts +0 -15
  220. package/dist/components/install.js +0 -60
  221. package/dist/components/keyboard.d.ts +0 -16
  222. package/dist/components/keyboard.js +0 -54
  223. package/dist/components/location.d.ts +0 -16
  224. package/dist/components/location.js +0 -59
  225. package/dist/components/network.d.ts +0 -19
  226. package/dist/components/network.js +0 -65
  227. package/dist/components/partitions.d.ts +0 -16
  228. package/dist/components/partitions.js +0 -73
  229. package/dist/components/steps.d.ts +0 -13
  230. package/dist/components/steps.js +0 -148
  231. package/dist/components/summary.d.ts +0 -24
  232. package/dist/components/summary.js +0 -81
  233. package/dist/components/title.d.ts +0 -11
  234. package/dist/components/title.js +0 -35
  235. package/dist/components/users.d.ts +0 -24
  236. package/dist/components/users.js +0 -80
  237. package/dist/components/welcome.d.ts +0 -13
  238. package/dist/components/welcome.js +0 -63
  239. package/dist/index-old.d.ts +0 -8
  240. package/dist/index-old.js +0 -8
  241. package/dist/index.d.ts +0 -54
  242. package/dist/index.js +0 -147
  243. package/dist/interfaces/i-addons.d.ts +0 -12
  244. package/dist/interfaces/i-addons.js +0 -8
  245. package/dist/interfaces/i-analyze.d.ts +0 -17
  246. package/dist/interfaces/i-analyze.js +0 -17
  247. package/dist/interfaces/i-app.d.ts +0 -14
  248. package/dist/interfaces/i-app.js +0 -8
  249. package/dist/interfaces/i-branding.d.ts +0 -36
  250. package/dist/interfaces/i-branding.js +0 -8
  251. package/dist/interfaces/i-calamares-displaymanager.d.ts +0 -17
  252. package/dist/interfaces/i-calamares-displaymanager.js +0 -1
  253. package/dist/interfaces/i-calamares-finished.d.ts +0 -12
  254. package/dist/interfaces/i-calamares-finished.js +0 -1
  255. package/dist/interfaces/i-calamares-packages.d.ts +0 -28
  256. package/dist/interfaces/i-calamares-packages.js +0 -1
  257. package/dist/interfaces/i-calamares-partition.d.ts +0 -40
  258. package/dist/interfaces/i-calamares-partition.js +0 -1
  259. package/dist/interfaces/i-config-tools.d.ts +0 -15
  260. package/dist/interfaces/i-config-tools.js +0 -8
  261. package/dist/interfaces/i-devices.d.ts +0 -20
  262. package/dist/interfaces/i-devices.js +0 -8
  263. package/dist/interfaces/i-distro.d.ts +0 -23
  264. package/dist/interfaces/i-distro.js +0 -8
  265. package/dist/interfaces/i-drive-list.d.ts +0 -33
  266. package/dist/interfaces/i-drive-list.js +0 -8
  267. package/dist/interfaces/i-eggs-config.d.ts +0 -32
  268. package/dist/interfaces/i-eggs-config.js +0 -8
  269. package/dist/interfaces/i-excludes.d.ts +0 -14
  270. package/dist/interfaces/i-excludes.js +0 -8
  271. package/dist/interfaces/i-exec.d.ts +0 -11
  272. package/dist/interfaces/i-exec.js +0 -8
  273. package/dist/interfaces/i-initrd.d.ts +0 -13
  274. package/dist/interfaces/i-initrd.js +0 -8
  275. package/dist/interfaces/i-install.d.ts +0 -16
  276. package/dist/interfaces/i-install.js +0 -8
  277. package/dist/interfaces/i-installer.d.ts +0 -17
  278. package/dist/interfaces/i-installer.js +0 -8
  279. package/dist/interfaces/i-krill-config.d.ts +0 -33
  280. package/dist/interfaces/i-krill-config.js +0 -8
  281. package/dist/interfaces/i-krill.d.ts +0 -42
  282. package/dist/interfaces/i-krill.js +0 -8
  283. package/dist/interfaces/i-materia.d.ts +0 -36
  284. package/dist/interfaces/i-materia.js +0 -8
  285. package/dist/interfaces/i-net.d.ts +0 -16
  286. package/dist/interfaces/i-net.js +0 -8
  287. package/dist/interfaces/i-os-release.d.ts +0 -5
  288. package/dist/interfaces/i-os-release.js +0 -1
  289. package/dist/interfaces/i-packages.d.ts +0 -16
  290. package/dist/interfaces/i-packages.js +0 -8
  291. package/dist/interfaces/i-partitions.d.ts +0 -16
  292. package/dist/interfaces/i-partitions.js +0 -8
  293. package/dist/interfaces/i-pxe.d.ts +0 -45
  294. package/dist/interfaces/i-pxe.js +0 -1
  295. package/dist/interfaces/i-remix.d.ts +0 -21
  296. package/dist/interfaces/i-remix.js +0 -8
  297. package/dist/interfaces/i-settings.d.ts +0 -33
  298. package/dist/interfaces/i-settings.js +0 -8
  299. package/dist/interfaces/i-user.d.ts +0 -14
  300. package/dist/interfaces/i-user.js +0 -8
  301. package/dist/interfaces/i-workdir.d.ts +0 -14
  302. package/dist/interfaces/i-workdir.js +0 -8
  303. package/dist/interfaces/i-xkb-model.d.ts +0 -24
  304. package/dist/interfaces/i-xkb-model.js +0 -8
  305. package/dist/interfaces/index.d.ts +0 -25
  306. package/dist/interfaces/index.js +0 -8
  307. package/dist/krill/modules/add-user.d.ts +0 -20
  308. package/dist/krill/modules/add-user.js +0 -48
  309. package/dist/krill/modules/bootloader-config.d.ts +0 -14
  310. package/dist/krill/modules/bootloader-config.js +0 -165
  311. package/dist/krill/modules/bootloader.d.ts +0 -14
  312. package/dist/krill/modules/bootloader.js +0 -95
  313. package/dist/krill/modules/change-password.d.ts +0 -15
  314. package/dist/krill/modules/change-password.js +0 -18
  315. package/dist/krill/modules/del-live-user.d.ts +0 -14
  316. package/dist/krill/modules/del-live-user.js +0 -39
  317. package/dist/krill/modules/fstab.d.ts +0 -14
  318. package/dist/krill/modules/fstab.js +0 -128
  319. package/dist/krill/modules/grubcfg.d.ts +0 -17
  320. package/dist/krill/modules/grubcfg.js +0 -29
  321. package/dist/krill/modules/hostname.d.ts +0 -13
  322. package/dist/krill/modules/hostname.js +0 -50
  323. package/dist/krill/modules/initramfs-cfg.d.ts +0 -14
  324. package/dist/krill/modules/initramfs-cfg.js +0 -22
  325. package/dist/krill/modules/initramfs.d.ts +0 -13
  326. package/dist/krill/modules/initramfs.js +0 -54
  327. package/dist/krill/modules/locale-cfg.d.ts +0 -10
  328. package/dist/krill/modules/locale-cfg.js +0 -58
  329. package/dist/krill/modules/locale.d.ts +0 -13
  330. package/dist/krill/modules/locale.js +0 -91
  331. package/dist/krill/modules/m-keyboard.d.ts +0 -14
  332. package/dist/krill/modules/m-keyboard.js +0 -58
  333. package/dist/krill/modules/machine-id.d.ts +0 -15
  334. package/dist/krill/modules/machine-id.js +0 -33
  335. package/dist/krill/modules/mkfs.d.ts +0 -15
  336. package/dist/krill/modules/mkfs.js +0 -50
  337. package/dist/krill/modules/mount-fs.d.ts +0 -17
  338. package/dist/krill/modules/mount-fs.js +0 -62
  339. package/dist/krill/modules/mount-vfs.d.ts +0 -17
  340. package/dist/krill/modules/mount-vfs.js +0 -40
  341. package/dist/krill/modules/network-cfg.d.ts +0 -19
  342. package/dist/krill/modules/network-cfg.js +0 -64
  343. package/dist/krill/modules/packages.d.ts +0 -14
  344. package/dist/krill/modules/packages.js +0 -111
  345. package/dist/krill/modules/partition.d.ts +0 -20
  346. package/dist/krill/modules/partition.js +0 -345
  347. package/dist/krill/modules/remove-installer-link.d.ts +0 -13
  348. package/dist/krill/modules/remove-installer-link.js +0 -35
  349. package/dist/krill/modules/umount.d.ts +0 -14
  350. package/dist/krill/modules/umount.js +0 -28
  351. package/dist/krill/modules/unpackfs.d.ts +0 -13
  352. package/dist/krill/modules/unpackfs.js +0 -20
  353. package/dist/krill/prepare.d.ts +0 -78
  354. package/dist/krill/prepare.js +0 -626
  355. package/dist/krill/sequence.d.ts +0 -154
  356. package/dist/krill/sequence.js +0 -652
  357. package/dist/lib/get_address.d.ts +0 -8
  358. package/dist/lib/get_address.js +0 -23
  359. package/dist/lib/get_dns.d.ts +0 -8
  360. package/dist/lib/get_dns.js +0 -23
  361. package/dist/lib/get_domain.d.ts +0 -8
  362. package/dist/lib/get_domain.js +0 -23
  363. package/dist/lib/get_gateway.d.ts +0 -8
  364. package/dist/lib/get_gateway.js +0 -23
  365. package/dist/lib/get_hostname.d.ts +0 -8
  366. package/dist/lib/get_hostname.js +0 -23
  367. package/dist/lib/get_netmask.d.ts +0 -8
  368. package/dist/lib/get_netmask.js +0 -23
  369. package/dist/lib/get_password.d.ts +0 -8
  370. package/dist/lib/get_password.js +0 -36
  371. package/dist/lib/get_userfullname.d.ts +0 -8
  372. package/dist/lib/get_userfullname.js +0 -23
  373. package/dist/lib/get_username.d.ts +0 -8
  374. package/dist/lib/get_username.js +0 -23
  375. package/dist/lib/kill_me_softly.d.ts +0 -11
  376. package/dist/lib/kill_me_softly.js +0 -61
  377. package/dist/lib/select_address_type.d.ts +0 -8
  378. package/dist/lib/select_address_type.js +0 -24
  379. package/dist/lib/select_filesystem_type.d.ts +0 -8
  380. package/dist/lib/select_filesystem_type.js +0 -46
  381. package/dist/lib/select_installation_device.d.ts +0 -8
  382. package/dist/lib/select_installation_device.js +0 -34
  383. package/dist/lib/select_installation_mode.d.ts +0 -8
  384. package/dist/lib/select_installation_mode.js +0 -24
  385. package/dist/lib/select_interface.d.ts +0 -8
  386. package/dist/lib/select_interface.js +0 -24
  387. package/dist/lib/select_keyboard_layout.d.ts +0 -11
  388. package/dist/lib/select_keyboard_layout.js +0 -36
  389. package/dist/lib/select_keyboard_model.d.ts +0 -11
  390. package/dist/lib/select_keyboard_model.js +0 -34
  391. package/dist/lib/select_keyboard_option.d.ts +0 -11
  392. package/dist/lib/select_keyboard_option.js +0 -34
  393. package/dist/lib/select_keyboard_variant.d.ts +0 -11
  394. package/dist/lib/select_keyboard_variant.js +0 -35
  395. package/dist/lib/select_languages.d.ts +0 -8
  396. package/dist/lib/select_languages.js +0 -28
  397. package/dist/lib/select_regions.d.ts +0 -8
  398. package/dist/lib/select_regions.js +0 -24
  399. package/dist/lib/select_user_swap_choice.d.ts +0 -8
  400. package/dist/lib/select_user_swap_choice.js +0 -34
  401. package/dist/lib/select_zones.d.ts +0 -8
  402. package/dist/lib/select_zones.js +0 -518
  403. package/dist/lib/utils.d.ts +0 -34
  404. package/dist/lib/utils.js +0 -79
@@ -1,80 +0,0 @@
1
- /**
2
- * ./src/classes/incubation/distros/rolling.ts
3
- * penguins-eggs v.10.0.0 / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import CFS from '../../cfs.js';
9
- import Fisherman from '../fisherman.js';
10
- /**
11
- *
12
- */
13
- export class Rolling {
14
- distro;
15
- installer = {};
16
- isClone = false;
17
- release = false;
18
- remix;
19
- theme;
20
- user_opt;
21
- verbose = false;
22
- /**
23
- * @param remix
24
- * @param distro
25
- * @param displaymanager
26
- * @param verbose
27
- */
28
- constructor(installer, remix, distro, user_opt, release = false, theme = 'eggs', isClone = false, verbose = false) {
29
- this.installer = installer;
30
- this.remix = remix;
31
- this.distro = distro;
32
- this.user_opt = user_opt;
33
- this.verbose = verbose;
34
- this.release = release;
35
- this.theme = theme;
36
- this.isClone = isClone;
37
- }
38
- /**
39
- * locale, partitions, users can come from themes
40
- */
41
- async create() {
42
- const fisherman = new Fisherman(this.distro, this.installer, this.verbose);
43
- await fisherman.createCalamaresSettings(this.theme, this.isClone);
44
- await fisherman.buildModule('welcome');
45
- await fisherman.buildModule('partition', this.theme);
46
- await fisherman.buildModule('mount');
47
- await fisherman.moduleUnpackfs();
48
- await fisherman.buildModule('fstab');
49
- await fisherman.buildModule('locale', this.theme);
50
- await fisherman.buildModule('keyboard');
51
- await fisherman.buildModule('localecfg');
52
- await fisherman.buildModule('users', this.theme);
53
- await fisherman.moduleDisplaymanager();
54
- await fisherman.buildModule('networkcfg');
55
- await fisherman.buildModule('hwclock');
56
- // await fisherman.buildModule('services-systemd')
57
- // await fisherman.buildCalamaresModule('bootloader-config', true)
58
- await fisherman.buildModule('grubcf');
59
- await fisherman.buildModule('bootloader');
60
- await fisherman.modulePackages(this.distro, this.release);
61
- await fisherman.buildModule('luksbootkeyfile');
62
- await fisherman.buildModule('plymouthcfg');
63
- // await fisherman.buildModule('initramfscfg')
64
- // await fisherman.buildModule('initramfs')
65
- await fisherman.moduleRemoveuser(this.user_opt);
66
- await fisherman.shellprocess('removelink');
67
- /**
68
- * cfs: custom final steps
69
- */
70
- const cfs = new CFS();
71
- const steps = await cfs.steps();
72
- if (steps.length > 0) {
73
- for (const step of steps) {
74
- await fisherman.buildCalamaresModule(step, true, this.theme);
75
- }
76
- }
77
- await fisherman.buildModule('umount');
78
- await fisherman.moduleFinished();
79
- }
80
- }
@@ -1,44 +0,0 @@
1
- /**
2
- * ./src/classes/incubation/incubator.ts
3
- * penguins-eggs v.10.0.0 / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import { IInstaller } from '../../interfaces/i-installer.js';
9
- import { IDistro, IRemix } from '../../interfaces/index.js';
10
- /**
11
- *
12
- */
13
- export default class Incubator {
14
- distro: IDistro;
15
- installer: IInstaller;
16
- isClone: boolean;
17
- remix: IRemix;
18
- theme: string;
19
- user_opt: string;
20
- verbose: boolean;
21
- /**
22
- *
23
- * @param remix
24
- * @param distro
25
- * @param verbose
26
- */
27
- constructor(remix: IRemix, distro: IDistro, user_opt?: string, theme?: string, isClone?: boolean, verbose?: boolean);
28
- /**
29
- * config
30
- */
31
- config(release?: boolean): Promise<void>;
32
- /**
33
- * Rewrite modules
34
- */
35
- private cleanupConfiguration;
36
- /**
37
- *
38
- */
39
- private createBranding;
40
- /**
41
- *
42
- */
43
- private createInstallerDirs;
44
- }
@@ -1,382 +0,0 @@
1
- /**
2
- * ./src/classes/incubation/incubator.ts
3
- * penguins-eggs v.10.0.0 / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- // pjson
9
- import { createRequire } from 'node:module';
10
- const require = createRequire(import.meta.url);
11
- const pjson = require('../../../package.json');
12
- // partition
13
- import yaml from 'js-yaml';
14
- import fs from 'node:fs';
15
- import path from 'node:path';
16
- import shx from 'shelljs';
17
- import { exec } from '../../lib/utils.js';
18
- import Pacman from '../pacman.js';
19
- import Utils from '../utils.js';
20
- import { installer } from './installer.js';
21
- import { branding } from './branding.js';
22
- // incubator.d
23
- import { Alpine } from './incubator.d/alpine.js';
24
- import { Bionic } from './incubator.d/bionic.js';
25
- import { Buster } from './incubator.d/buster.js';
26
- import { Jessie } from './incubator.d/jessie.js';
27
- import { Noble } from './incubator.d/noble.js';
28
- import { Openmamba } from './incubator.d/openmamba.js';
29
- import { Opensuse } from './incubator.d/opensuse.js';
30
- import { Rolling } from './incubator.d/rolling.js';
31
- // _dirname
32
- const __dirname = path.dirname(new URL(import.meta.url).pathname);
33
- /**
34
- *
35
- */
36
- export default class Incubator {
37
- distro;
38
- installer = {};
39
- isClone;
40
- remix;
41
- theme;
42
- user_opt;
43
- verbose = false;
44
- /**
45
- *
46
- * @param remix
47
- * @param distro
48
- * @param verbose
49
- */
50
- constructor(remix, distro, user_opt = 'live', theme = 'eggs', isClone = false, verbose = false) {
51
- this.installer = installer();
52
- this.remix = remix;
53
- this.distro = distro;
54
- this.user_opt = user_opt;
55
- this.theme = theme;
56
- this.verbose = verbose;
57
- this.remix.branding = theme;
58
- this.isClone = isClone;
59
- // branding è solo il basename
60
- this.remix.branding = path.basename(theme);
61
- }
62
- /**
63
- * config
64
- */
65
- async config(release = false) {
66
- const verbose = true;
67
- const echo = Utils.setEcho(verbose);
68
- Utils.warning(`creating ${installer().name} configuration files on ${installer().configRoot}`);
69
- this.createInstallerDirs();
70
- this.createBranding();
71
- const codenameLikeId = this.distro.codenameLikeId;
72
- /**
73
- * aldos
74
- */
75
- if (codenameLikeId === 'aldos') {
76
- const aldos = new Openmamba(this.installer, this.remix, this.distro, this.user_opt, release, this.theme, this.isClone, this.verbose);
77
- await aldos.create();
78
- /**
79
- * Alpine
80
- */
81
- }
82
- else if (codenameLikeId === 'alpine') {
83
- const alpine = new Alpine(this.installer, this.remix, this.distro, this.user_opt, release, this.theme, this.isClone, this.verbose);
84
- await alpine.create();
85
- /**
86
- * Arch
87
- */
88
- }
89
- else if (codenameLikeId === 'rolling') {
90
- const rolling = new Rolling(this.installer, this.remix, this.distro, this.user_opt, release, this.theme, this.isClone, this.verbose);
91
- await rolling.create();
92
- /**
93
- * Debian
94
- */
95
- }
96
- else if (codenameLikeId === 'jessie') {
97
- const jessie = new Jessie(this.installer, this.remix, this.distro, this.user_opt, release, this.verbose);
98
- await jessie.create();
99
- }
100
- else if (codenameLikeId === 'stretch') {
101
- const stretch = new Jessie(this.installer, this.remix, this.distro, this.user_opt, release, this.verbose);
102
- await stretch.create();
103
- }
104
- else if (codenameLikeId === 'buster') {
105
- const buster = new Buster(this.installer, this.remix, this.distro, this.user_opt, release, this.theme, this.isClone, this.verbose);
106
- await buster.create();
107
- }
108
- else if (codenameLikeId === 'bullseye') {
109
- const bullseye = new Buster(this.installer, this.remix, this.distro, this.user_opt, release, this.theme, this.isClone, this.verbose);
110
- await bullseye.create();
111
- }
112
- else if (codenameLikeId === 'bookworm') {
113
- const bookworm = new Buster(this.installer, this.remix, this.distro, this.user_opt, release, this.theme, this.isClone, this.verbose);
114
- await bookworm.create();
115
- }
116
- else if (codenameLikeId === 'trixie') {
117
- const trixie = new Buster(this.installer, this.remix, this.distro, this.user_opt, release, this.theme, this.isClone, this.verbose);
118
- await trixie.create();
119
- /**
120
- * Devuan
121
- */
122
- }
123
- else if (codenameLikeId === 'beowulf') {
124
- const beowulf = new Buster(this.installer, this.remix, this.distro, this.user_opt, release, this.theme, this.isClone, this.verbose);
125
- await beowulf.create();
126
- }
127
- else if (codenameLikeId === 'chimaera') {
128
- const chimaera = new Buster(this.installer, this.remix, this.distro, this.user_opt, release, this.theme, this.isClone, this.verbose);
129
- await chimaera.create();
130
- }
131
- else if (codenameLikeId === 'daedalus') {
132
- const daedalus = new Buster(this.installer, this.remix, this.distro, this.user_opt, release, this.theme, this.isClone, this.verbose);
133
- await daedalus.create();
134
- }
135
- else if (codenameLikeId === 'excalibur') {
136
- const excalibur = new Buster(this.installer, this.remix, this.distro, this.user_opt, release, this.theme, this.isClone, this.verbose);
137
- await excalibur.create();
138
- /**
139
- * fedora
140
- */
141
- }
142
- else if (codenameLikeId === 'fedora') {
143
- const fedora = new Rolling(this.installer, this.remix, this.distro, this.user_opt, release, this.theme, this.isClone, this.verbose);
144
- await fedora.create();
145
- /**
146
- * openmamba
147
- */
148
- }
149
- else if (codenameLikeId === 'openmamba') {
150
- const mamba = new Openmamba(this.installer, this.remix, this.distro, this.user_opt, release, this.theme, this.isClone, this.verbose);
151
- await mamba.create();
152
- /**
153
- * opensuse
154
- */
155
- }
156
- else if (codenameLikeId === 'opensuse') {
157
- const suse = new Opensuse(this.installer, this.remix, this.distro, this.user_opt, release, this.theme, this.isClone, this.verbose);
158
- await suse.create();
159
- /**
160
- * Ubuntu
161
- */
162
- }
163
- else if (codenameLikeId === 'bionic') {
164
- const bionic = new Bionic(this.installer, this.remix, this.distro, this.user_opt, release, this.theme, this.isClone, this.verbose);
165
- await bionic.create();
166
- }
167
- else if (codenameLikeId === 'focal') {
168
- const focal = new Noble(this.installer, this.remix, this.distro, this.user_opt, release, this.theme, this.isClone, this.verbose);
169
- await focal.create();
170
- }
171
- else if (codenameLikeId === 'jammy') {
172
- const jammy = new Noble(this.installer, this.remix, this.distro, this.user_opt, release, this.theme, this.isClone, this.verbose);
173
- await jammy.create();
174
- }
175
- else if (codenameLikeId === 'noble') {
176
- const noble = new Noble(this.installer, this.remix, this.distro, this.user_opt, release, this.theme, this.isClone, this.verbose);
177
- await noble.create();
178
- }
179
- else if (codenameLikeId === 'devel') {
180
- const devel = new Noble(this.installer, this.remix, this.distro, this.user_opt, release, this.theme, this.isClone, this.verbose);
181
- await devel.create();
182
- }
183
- if (Pacman.calamaresExists()) {
184
- await partitionCustomize();
185
- }
186
- Utils.warning(`cleanup ${installer().name} configuration files`);
187
- await this.cleanupConfiguration();
188
- }
189
- /**
190
- * Rewrite modules
191
- */
192
- async cleanupConfiguration() {
193
- // modules
194
- const elements = fs.readdirSync(this.installer.modules);
195
- for (const elem of elements) {
196
- let file = this.installer.modules + elem;
197
- let fileContent = fs.readFileSync(file, 'utf8');
198
- let yamlContent = yaml.load(fileContent);
199
- let destContent = `# ${elem} on ${this.distro.distroId}, penguins-eggs ${pjson.version}\n`;
200
- destContent += '---\n';
201
- destContent += yaml.dump(yamlContent);
202
- fs.writeFileSync(file, destContent, 'utf8');
203
- }
204
- // settings
205
- let file = this.installer.configRoot + '/settings.conf';
206
- let fileContent = fs.readFileSync(file, 'utf8');
207
- let yamlContent = yaml.load(fileContent);
208
- let destContent = `# settings.conf on ${this.distro.distroId} penguins-eggs ${pjson.version}\n`;
209
- destContent += '---\n';
210
- destContent += yaml.dump(yamlContent);
211
- fs.writeFileSync(file, destContent, 'utf8');
212
- }
213
- /**
214
- *
215
- */
216
- createBranding() {
217
- const dir = this.installer.configRoot + 'branding/' + this.remix.branding + '/';
218
- if (!fs.existsSync(dir)) {
219
- shx.exec(`mkdir ${dir} -p`);
220
- }
221
- const file = dir + 'branding.desc';
222
- let destContent = `# branding.desc on ${this.distro.distroId} penguins-eggs ${pjson.version}\n`;
223
- destContent += '---\n';
224
- destContent += branding(this.remix, this.distro, this.theme, this.verbose);
225
- write(file, destContent, this.verbose);
226
- }
227
- /**
228
- *
229
- */
230
- createInstallerDirs() {
231
- if (this.installer.name !== 'calamares') {
232
- // Remove krill configuration and multiarc if present
233
- try {
234
- shx.exec('rm ' + this.installer.configRoot + ' -rf');
235
- }
236
- catch (error) {
237
- console.log('error: ' + error + ' removing ' + this.installer.configRoot + ' -rf');
238
- }
239
- try {
240
- shx.exec('rm ' + this.installer.multiarch + ' -rf');
241
- }
242
- catch (error) {
243
- console.log('error: ' + error + ' removing ' + this.installer.multiarch + ' -rf');
244
- }
245
- }
246
- // rootConfiguration krill/calamares
247
- if (!fs.existsSync(this.installer.configRoot)) {
248
- try {
249
- fs.mkdirSync(this.installer.configRoot);
250
- }
251
- catch (error) {
252
- console.log('error: ' + error + ' creating ' + this.installer.configRoot);
253
- }
254
- }
255
- if (!fs.existsSync(this.installer.configRoot + 'branding')) {
256
- try {
257
- fs.mkdirSync(this.installer.configRoot + 'branding');
258
- }
259
- catch (error) {
260
- console.log('error: ' + error + ' creating ' + this.installer.configRoot + 'branding');
261
- }
262
- }
263
- if (!fs.existsSync(this.installer.configRoot + 'branding/eggs')) {
264
- try {
265
- fs.mkdirSync(this.installer.configRoot + 'branding/eggs');
266
- }
267
- catch (error) {
268
- console.log('error: ' + error + ' creating ' + this.installer.configRoot + 'branding/eggs');
269
- }
270
- }
271
- if (!fs.existsSync(this.installer.configRoot + 'modules')) {
272
- try {
273
- fs.mkdirSync(this.installer.configRoot + 'modules');
274
- }
275
- catch (error) {
276
- console.log('error: ' + error + ' creating ' + this.installer.configRoot + 'modules');
277
- }
278
- }
279
- if (!fs.existsSync(this.installer.multiarch)) {
280
- try {
281
- fs.mkdirSync(this.installer.multiarch);
282
- }
283
- catch (error) {
284
- console.log('error: ' + error + ' creating ' + this.installer.multiarch);
285
- }
286
- }
287
- if (!fs.existsSync(this.installer.multiarchModules)) {
288
- try {
289
- fs.mkdirSync(this.installer.multiarchModules);
290
- }
291
- catch (error) {
292
- console.log('error: ' + error + ' creating ' + this.installer.multiarchModules);
293
- }
294
- }
295
- /**
296
- * themes krill/calamares
297
- */
298
- let calamaresBranding = path.resolve(__dirname, `../../../addons/eggs/theme/calamares/branding`);
299
- if (this.theme.includes('/')) {
300
- calamaresBranding = `${this.theme}/theme/calamares/branding`;
301
- }
302
- // console.log(`calamaresBranding: ${calamaresBranding}`)
303
- if (fs.existsSync(calamaresBranding)) {
304
- if (!fs.existsSync(this.installer.configRoot + `branding/${this.remix.branding}`)) {
305
- try {
306
- fs.mkdirSync(this.installer.configRoot + `branding/${this.remix.branding}`);
307
- }
308
- catch (error) {
309
- console.log('error: ' + error + ' creating ' + this.installer.configRoot + `branding/${this.remix.branding}`);
310
- }
311
- }
312
- // patch quirinux
313
- shx.cp('-r', calamaresBranding + '/*', this.installer.configRoot + `branding/${this.remix.branding}/`);
314
- }
315
- else {
316
- console.log(calamaresBranding);
317
- console.log(`${calamaresBranding} branding not found!`);
318
- process.exit();
319
- }
320
- let calamaresIcon = path.resolve(__dirname, `../../../addons/${this.remix.branding}/theme/artwork/install-system.png`);
321
- if (this.theme.includes('/')) {
322
- calamaresIcon = `${this.theme}/theme/artwork/install-system.png`;
323
- }
324
- // se non esiste non copio la icona
325
- if (Pacman.calamaresExists()) {
326
- if (fs.existsSync(calamaresIcon)) {
327
- shx.cp(calamaresIcon, '/usr/share/icons/');
328
- }
329
- else {
330
- console.log(`${calamaresIcon} icon not found!`);
331
- process.exit();
332
- }
333
- }
334
- let calamaresLauncher = path.resolve(__dirname, `../../../addons/${this.remix.branding}/theme/applications/install-system.desktop`);
335
- if (this.theme.includes('/')) {
336
- calamaresLauncher = `${this.theme}/theme/applications/install-system.desktop`;
337
- }
338
- if (fs.existsSync(calamaresLauncher)) {
339
- shx.cp(calamaresLauncher, '/usr/share/applications/');
340
- }
341
- else {
342
- console.log(`${calamaresLauncher} launcher not found!`);
343
- process.exit();
344
- }
345
- // script di avvio
346
- shx.cp(path.resolve(__dirname, '../../../assets/calamares/install-system.sh'), '/usr/sbin/install-system.sh');
347
- shx.chmod('+x', '/usr/sbin/install-system.sh');
348
- }
349
- }
350
- /**
351
- *
352
- * @param file
353
- * @param content
354
- * @param verbose
355
- */
356
- function write(file, content, verbose = false) {
357
- if (verbose) {
358
- console.log(`calamares: create ${file}`);
359
- }
360
- fs.writeFileSync(file, content, 'utf8');
361
- }
362
- /**
363
- *
364
- */
365
- async function partitionCustomize() {
366
- const filePartition = '/etc/calamares/modules/partition.conf';
367
- const partition = yaml.load(fs.readFileSync(filePartition, 'utf8'));
368
- // detect filesystem type
369
- let test = await exec(`df -T / | awk 'NR==2 {print $2}'`, { capture: true, echo: false });
370
- partition.defaultFileSystemType = test.data.trim();
371
- partition.availableFileSystemTypes = ['ext4'];
372
- if (Pacman.packageIsInstalled('btrfs-progs')) {
373
- partition.availableFileSystemTypes.push('btrfs');
374
- }
375
- if (Pacman.packageIsInstalled('xfsprogs')) {
376
- partition.availableFileSystemTypes.push('xfs');
377
- }
378
- if (Pacman.packageIsInstalled('f2fs-tools')) {
379
- partition.availableFileSystemTypes.push('f2fs');
380
- }
381
- fs.writeFileSync(filePartition, yaml.dump(partition), 'utf-8');
382
- }
@@ -1,13 +0,0 @@
1
- /**
2
- * ./src/classes/incubation/installer.ts
3
- * penguins-eggs v.10.0.0 / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import { IInstaller } from '../../interfaces/index.js';
9
- /**
10
- *
11
- * @returns
12
- */
13
- export declare function installer(): IInstaller;
@@ -1,52 +0,0 @@
1
- /**
2
- * ./src/classes/incubation/installer.ts
3
- * penguins-eggs v.10.0.0 / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- /**
9
- * installer
10
- *
11
- * name = 'calamares' oppure 'krill'
12
- * configRoot = '/etc/calamares/' oppure '/etc/penguins-eggs.d/krill/'
13
- * modules = configuration + 'modules/'
14
- * modulesMultiarch = '/usr/lib/' + arch-linux-gnu + '/' + installer + '/'
15
- *
16
- * template = '/etc/penguins-eggs/' + .distro.codenameLikeId + '/' + installer + '/'
17
- * templateModules = template + '/modules/'
18
- * templateMultiarch = template + installer + '-modules/'
19
- *
20
- */
21
- import Distro from '../../classes/distro.js';
22
- import Pacman from '../../classes/pacman.js';
23
- /**
24
- *
25
- * @returns
26
- */
27
- export function installer() {
28
- const installer = {};
29
- // configRoot
30
- installer.configRoot = '';
31
- if (Pacman.calamaresExists()) {
32
- installer.name = 'calamares';
33
- installer.configRoot = '/etc/calamares/';
34
- installer.multiarch = Pacman.distro().usrLibPath + '/calamares/';
35
- }
36
- else {
37
- installer.name = 'krill';
38
- installer.configRoot = '/etc/penguins-eggs.d/krill/';
39
- installer.multiarch = Pacman.distro().usrLibPath + '/krill/';
40
- }
41
- installer.modules = installer.configRoot + 'modules/';
42
- installer.multiarchModules = installer.multiarch + 'modules/';
43
- /**
44
- * i template calamares/krill sono SEMPRE nel folder calamares e calamares-modules
45
- *
46
- */
47
- const distro = new Distro();
48
- installer.template = `/etc/penguins-eggs.d/distros/${distro.codenameLikeId}/calamares/`;
49
- installer.templateModules = `${installer.template}modules/`;
50
- installer.templateMultiarch = `${installer.template}calamares-modules/`;
51
- return installer;
52
- }
@@ -1,50 +0,0 @@
1
- /**
2
- * ./src/classes/keyboards.ts
3
- * penguins-eggs v.10.0.0 / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import { IXkbLayout, IXkbModel, IXkbOption, IXkbVariant } from '../interfaces/i-xkb-model.js';
9
- /**
10
- * /usr/share/X11/xkb/rules/xorg.lst
11
- */
12
- export default class Keyboard {
13
- layouts: string[];
14
- models: string[];
15
- options: string[];
16
- variants: string[];
17
- constructor();
18
- /**
19
- * XKBLAYOUT='us'
20
- */
21
- getLayout(): Promise<string>;
22
- /**
23
- * XKBLAYOUT=[]
24
- */
25
- getLayouts(): IXkbLayout[];
26
- /**
27
- * XKBMODEL='pc105'
28
- */
29
- getModel(): Promise<string>;
30
- /**
31
- * XKBMODEL[]
32
- */
33
- getModels(): IXkbModel[];
34
- /**
35
- * XKBOPTIONS=''
36
- */
37
- getOption(): Promise<string>;
38
- /**
39
- * XKBOPTIONS[]
40
- */
41
- getOptions(): IXkbOption[];
42
- /**
43
- * XKBVARIANT=''
44
- */
45
- getVariant(): Promise<string>;
46
- /**
47
- * IXkbVariant[]
48
- */
49
- getVariants(layout: string): IXkbVariant[];
50
- }