penguins-eggs 9.6.34 → 10.0.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 (351) hide show
  1. package/.oclif.manifest.json +1458 -1
  2. package/README.md +823 -8
  3. package/addons/eggs/theme/livecd/grub.main.cfg +4 -4
  4. package/addons/eggs/theme/livecd/isolinux.main.cfg +5 -5
  5. package/bin/dev.cmd +1 -1
  6. package/bin/dev.js +6 -0
  7. package/bin/run.js +5 -0
  8. package/conf/derivatives.yaml +2 -0
  9. package/conf/distros/buster/calamares/calamares-modules/bootloader-config/bootloader-config.sh +3 -3
  10. package/conf/distros/buster/calamares/calamares-modules/sources-yolk/sources-yolk.sh +1 -1
  11. package/conf/distros/buster/calamares/modules/fstab.yml +1 -1
  12. package/conf/distros/focal/calamares/modules/fstab.yml +1 -1
  13. package/conf/{exclude.list.homes → exclude.list.d/home.list} +6 -1
  14. package/conf/{exclude.list.template → exclude.list.d/master.list} +15 -24
  15. package/conf/exclude.list.d/var.list +21 -0
  16. package/conf/tools.yaml +1 -3
  17. package/dist/classes/bleach.d.ts +37 -0
  18. package/dist/classes/bleach.js +43 -91
  19. package/dist/classes/cfs.d.ts +17 -0
  20. package/dist/classes/cfs.js +15 -12
  21. package/dist/classes/compressors.d.ts +53 -0
  22. package/dist/classes/compressors.js +51 -58
  23. package/dist/classes/daddy.d.ts +18 -0
  24. package/dist/classes/daddy.js +93 -101
  25. package/dist/classes/distro.d.ts +26 -0
  26. package/dist/classes/distro.js +45 -27
  27. package/dist/classes/families/archlinux.d.ts +61 -0
  28. package/dist/classes/families/archlinux.js +56 -113
  29. package/dist/classes/families/debian.d.ts +65 -0
  30. package/dist/classes/families/debian.js +68 -143
  31. package/dist/classes/families/fedora.d.ts +52 -0
  32. package/dist/classes/families/fedora.js +43 -99
  33. package/dist/classes/families/mockup.d.ts +60 -0
  34. package/dist/classes/families/mockup.js +27 -46
  35. package/dist/classes/families/suse.d.ts +52 -0
  36. package/dist/classes/families/suse.js +45 -97
  37. package/dist/classes/incubation/branding.d.ts +17 -0
  38. package/dist/classes/incubation/branding.js +33 -32
  39. package/dist/classes/incubation/distros/bionic.d.ts +32 -0
  40. package/dist/classes/incubation/distros/bionic.js +15 -15
  41. package/dist/classes/incubation/distros/buster.d.ts +32 -0
  42. package/dist/classes/incubation/distros/buster.js +15 -15
  43. package/dist/classes/incubation/distros/focal.d.ts +32 -0
  44. package/dist/classes/incubation/distros/focal.js +15 -15
  45. package/dist/classes/incubation/distros/jessie.d.ts +31 -0
  46. package/dist/classes/incubation/distros/jessie.js +11 -13
  47. package/dist/classes/incubation/distros/rolling.d.ts +32 -0
  48. package/dist/classes/incubation/distros/rolling.js +15 -16
  49. package/dist/classes/incubation/fisherman-helper/displaymanager.d.ts +11 -0
  50. package/dist/classes/incubation/fisherman-helper/displaymanager.js +8 -9
  51. package/dist/classes/incubation/fisherman-helper/packages.d.ts +20 -0
  52. package/dist/classes/incubation/fisherman-helper/packages.js +17 -17
  53. package/dist/classes/incubation/fisherman-helper/settings.d.ts +15 -0
  54. package/dist/classes/incubation/fisherman-helper/settings.js +30 -28
  55. package/dist/classes/incubation/fisherman.d.ts +77 -0
  56. package/dist/classes/incubation/fisherman.js +137 -132
  57. package/dist/classes/incubation/incubator.d.ts +40 -0
  58. package/dist/classes/incubation/incubator.js +93 -87
  59. package/dist/classes/incubation/installer.d.ts +13 -0
  60. package/dist/classes/incubation/installer.js +27 -12
  61. package/dist/classes/initrd.d.ts +41 -0
  62. package/dist/classes/initrd.js +42 -44
  63. package/dist/classes/keyboards.d.ts +50 -0
  64. package/dist/classes/keyboards.js +110 -107
  65. package/dist/classes/locales.d.ts +21 -0
  66. package/dist/classes/locales.js +30 -34
  67. package/dist/classes/n8.d.ts +17 -0
  68. package/dist/classes/n8.js +16 -22
  69. package/dist/classes/network.d.ts +37 -0
  70. package/dist/classes/network.js +21 -25
  71. package/dist/classes/ovary.d.ts +205 -0
  72. package/dist/classes/ovary.js +1262 -1334
  73. package/dist/classes/pacman.d.ts +149 -0
  74. package/dist/classes/pacman.js +347 -426
  75. package/dist/classes/pve-live.d.ts +17 -0
  76. package/dist/classes/pve-live.js +23 -25
  77. package/dist/classes/pxe.d.ts +65 -0
  78. package/dist/classes/pxe.js +206 -210
  79. package/dist/classes/settings.d.ts +53 -0
  80. package/dist/classes/settings.js +99 -102
  81. package/dist/classes/sources_list.d.ts +28 -0
  82. package/dist/classes/sources_list.js +35 -39
  83. package/dist/classes/systemctl.d.ts +47 -0
  84. package/dist/classes/systemctl.js +35 -39
  85. package/dist/classes/tailor.d.ts +46 -0
  86. package/dist/classes/tailor.js +225 -241
  87. package/dist/classes/tools.d.ts +30 -0
  88. package/dist/classes/tools.js +20 -26
  89. package/dist/classes/users.d.ts +28 -0
  90. package/dist/classes/users.js +22 -16
  91. package/dist/classes/utils.d.ts +318 -0
  92. package/dist/classes/utils.js +91 -76
  93. package/dist/classes/xdg.d.ts +45 -0
  94. package/dist/classes/xdg.js +129 -133
  95. package/dist/classes/yolk.d.ts +33 -0
  96. package/dist/classes/yolk.js +54 -60
  97. package/dist/commands/adapt.d.ts +17 -0
  98. package/dist/commands/adapt.js +21 -25
  99. package/dist/commands/analyze.d.ts +26 -0
  100. package/dist/commands/analyze.js +60 -74
  101. package/dist/commands/calamares.d.ts +29 -0
  102. package/dist/commands/calamares.js +53 -60
  103. package/dist/commands/config.d.ts +36 -0
  104. package/dist/commands/config.js +120 -142
  105. package/dist/commands/cuckoo.d.ts +16 -0
  106. package/dist/commands/cuckoo.js +24 -28
  107. package/dist/commands/dad.d.ts +19 -0
  108. package/dist/commands/dad.js +26 -30
  109. package/dist/commands/export/deb.d.ts +19 -0
  110. package/dist/commands/export/deb.js +33 -42
  111. package/dist/commands/export/iso.d.ts +19 -0
  112. package/dist/commands/export/iso.js +24 -28
  113. package/dist/commands/install.d.ts +37 -0
  114. package/dist/commands/install.js +68 -68
  115. package/dist/commands/kill.d.ts +24 -0
  116. package/dist/commands/kill.js +31 -38
  117. package/dist/commands/mom.d.ts +16 -0
  118. package/dist/commands/mom.js +20 -22
  119. package/dist/commands/produce.d.ts +33 -0
  120. package/dist/commands/produce.js +100 -92
  121. package/dist/commands/status.d.ts +23 -0
  122. package/dist/commands/status.js +14 -20
  123. package/dist/commands/syncfrom.d.ts +45 -0
  124. package/dist/commands/syncfrom.js +99 -109
  125. package/dist/commands/syncto.d.ts +40 -0
  126. package/dist/commands/syncto.js +152 -216
  127. package/dist/commands/tools/clean.d.ts +18 -0
  128. package/dist/commands/tools/clean.js +21 -25
  129. package/dist/commands/tools/ppa.d.ts +26 -0
  130. package/dist/commands/tools/ppa.js +46 -50
  131. package/dist/commands/tools/skel.d.ts +18 -0
  132. package/dist/commands/tools/skel.js +27 -31
  133. package/dist/commands/tools/stat.d.ts +31 -0
  134. package/dist/commands/tools/stat.js +21 -25
  135. package/dist/commands/tools/yolk.d.ts +24 -0
  136. package/dist/commands/tools/yolk.js +23 -27
  137. package/dist/commands/update.d.ts +47 -0
  138. package/dist/commands/update.js +66 -70
  139. package/dist/commands/wardrobe/get.d.ts +23 -0
  140. package/dist/commands/wardrobe/get.js +26 -28
  141. package/dist/commands/wardrobe/list.d.ts +24 -0
  142. package/dist/commands/wardrobe/list.js +69 -67
  143. package/dist/commands/wardrobe/show.d.ts +25 -0
  144. package/dist/commands/wardrobe/show.js +57 -52
  145. package/dist/commands/wardrobe/wear.d.ts +26 -0
  146. package/dist/commands/wardrobe/wear.js +39 -41
  147. package/dist/components/finished.d.ts +15 -0
  148. package/dist/components/finished.js +37 -42
  149. package/dist/components/information.d.ts +8 -0
  150. package/dist/components/information.js +155 -0
  151. package/dist/components/install.d.ts +15 -0
  152. package/dist/components/install.js +31 -35
  153. package/dist/components/keyboard.d.ts +16 -0
  154. package/dist/components/keyboard.js +37 -40
  155. package/dist/components/location.d.ts +16 -0
  156. package/dist/components/location.js +38 -38
  157. package/dist/components/network.d.ts +19 -0
  158. package/dist/components/network.js +47 -48
  159. package/dist/components/partitions.d.ts +16 -0
  160. package/dist/components/partitions.js +47 -51
  161. package/dist/components/steps.d.ts +13 -0
  162. package/dist/components/steps.js +148 -0
  163. package/dist/components/summary.d.ts +24 -0
  164. package/dist/components/summary.js +53 -54
  165. package/dist/components/title.d.ts +12 -0
  166. package/dist/components/title.js +35 -0
  167. package/dist/components/users.d.ts +24 -0
  168. package/dist/components/users.js +43 -43
  169. package/dist/components/welcome.d.ts +13 -0
  170. package/dist/components/welcome.js +37 -38
  171. package/dist/index.d.ts +8 -0
  172. package/dist/index.js +8 -5
  173. package/dist/interfaces/i-addons.d.ts +13 -0
  174. package/dist/interfaces/i-addons.js +8 -3
  175. package/dist/interfaces/i-analyze.d.ts +17 -0
  176. package/dist/interfaces/i-analyze.js +11 -16
  177. package/dist/interfaces/i-app.d.ts +14 -0
  178. package/dist/interfaces/i-app.js +8 -2
  179. package/dist/interfaces/i-branding.d.ts +36 -0
  180. package/dist/interfaces/i-branding.js +8 -2
  181. package/dist/interfaces/i-calamares-partition.d.ts +18 -0
  182. package/dist/interfaces/i-calamares-partition.js +3 -4
  183. package/dist/interfaces/i-config-tools.d.ts +18 -0
  184. package/dist/interfaces/i-config-tools.js +8 -2
  185. package/dist/interfaces/i-devices.d.ts +20 -0
  186. package/dist/interfaces/i-devices.js +8 -2
  187. package/dist/interfaces/i-distro.d.ts +27 -0
  188. package/dist/interfaces/i-distro.js +3 -4
  189. package/dist/interfaces/i-drive-list.d.ts +33 -0
  190. package/dist/interfaces/i-drive-list.js +3 -4
  191. package/dist/interfaces/i-eggs-config.d.ts +32 -0
  192. package/dist/interfaces/i-eggs-config.js +3 -4
  193. package/dist/interfaces/i-excludes.d.ts +14 -0
  194. package/dist/interfaces/i-excludes.js +8 -0
  195. package/dist/interfaces/i-exec.d.ts +11 -0
  196. package/dist/interfaces/i-exec.js +3 -4
  197. package/dist/interfaces/i-initrd.d.ts +13 -0
  198. package/dist/interfaces/i-initrd.js +8 -2
  199. package/dist/interfaces/i-install.d.ts +16 -0
  200. package/dist/interfaces/i-install.js +8 -2
  201. package/dist/interfaces/i-installer.d.ts +17 -0
  202. package/dist/interfaces/i-installer.js +8 -2
  203. package/dist/interfaces/i-krill-config.d.ts +33 -0
  204. package/dist/interfaces/i-krill-config.js +3 -4
  205. package/dist/interfaces/i-krill.d.ts +42 -0
  206. package/dist/interfaces/i-krill.js +8 -2
  207. package/dist/interfaces/i-materia.d.ts +41 -0
  208. package/dist/interfaces/i-materia.js +8 -2
  209. package/dist/interfaces/i-net.d.ts +16 -0
  210. package/dist/interfaces/i-net.js +8 -2
  211. package/dist/interfaces/i-packages.d.ts +29 -0
  212. package/dist/interfaces/i-packages.js +3 -4
  213. package/dist/interfaces/i-partitions.d.ts +16 -0
  214. package/dist/interfaces/i-partitions.js +8 -2
  215. package/dist/interfaces/i-pxe.d.ts +21 -0
  216. package/dist/interfaces/i-pxe.js +8 -39
  217. package/dist/interfaces/i-remix.d.ts +21 -0
  218. package/dist/interfaces/i-remix.js +3 -4
  219. package/dist/interfaces/i-settings.d.ts +39 -0
  220. package/dist/interfaces/i-settings.js +8 -2
  221. package/dist/interfaces/i-user.d.ts +14 -0
  222. package/dist/interfaces/i-user.js +8 -2
  223. package/dist/interfaces/i-workdir.d.ts +14 -0
  224. package/dist/interfaces/i-workdir.js +8 -2
  225. package/dist/interfaces/i-xkb-model.d.ts +24 -0
  226. package/dist/interfaces/i-xkb-model.js +8 -2
  227. package/dist/interfaces/index.d.ts +25 -0
  228. package/dist/interfaces/index.js +3 -4
  229. package/dist/krill/modules/add-user.d.ts +20 -0
  230. package/dist/krill/modules/add-user.js +11 -15
  231. package/dist/krill/modules/bootloader-config-arch.d.ts +14 -0
  232. package/dist/krill/modules/bootloader-config-arch.js +15 -11
  233. package/dist/krill/modules/bootloader-config-debian.d.ts +10 -0
  234. package/dist/krill/modules/bootloader-config-debian.js +20 -16
  235. package/dist/krill/modules/bootloader-config.d.ts +10 -0
  236. package/dist/krill/modules/bootloader-config.js +3 -6
  237. package/dist/krill/modules/bootloader.d.ts +14 -0
  238. package/dist/krill/modules/bootloader.js +9 -13
  239. package/dist/krill/modules/change-password.d.ts +15 -0
  240. package/dist/krill/modules/change-password.js +5 -8
  241. package/dist/krill/modules/del-live-user.d.ts +14 -0
  242. package/dist/krill/modules/del-live-user.js +8 -12
  243. package/dist/krill/modules/fstab.d.ts +14 -0
  244. package/dist/krill/modules/fstab.js +69 -46
  245. package/dist/krill/modules/grubcfg.d.ts +17 -0
  246. package/dist/krill/modules/grubcfg.js +8 -17
  247. package/dist/krill/modules/hostname.d.ts +13 -0
  248. package/dist/krill/modules/hostname.js +11 -17
  249. package/dist/krill/modules/initramfs-cfg.d.ts +14 -0
  250. package/dist/krill/modules/initramfs-cfg.js +6 -15
  251. package/dist/krill/modules/initramfs.d.ts +13 -0
  252. package/dist/krill/modules/initramfs.js +17 -19
  253. package/dist/krill/modules/locale-cfg.d.ts +10 -0
  254. package/dist/krill/modules/locale-cfg.js +8 -12
  255. package/dist/krill/modules/locale.d.ts +13 -0
  256. package/dist/krill/modules/locale.js +7 -11
  257. package/dist/krill/modules/m-keyboard.d.ts +14 -0
  258. package/dist/krill/modules/m-keyboard.js +14 -18
  259. package/dist/krill/modules/m-timezone.d.ts +14 -0
  260. package/dist/krill/modules/m-timezone.js +8 -12
  261. package/dist/krill/modules/machine-id.d.ts +15 -0
  262. package/dist/krill/modules/machine-id.js +6 -10
  263. package/dist/krill/modules/mkfs.d.ts +13 -0
  264. package/dist/krill/modules/mkfs.js +33 -23
  265. package/dist/krill/modules/mount-fs.d.ts +17 -0
  266. package/dist/krill/modules/mount-fs.js +20 -26
  267. package/dist/krill/modules/mount-vfs.d.ts +17 -0
  268. package/dist/krill/modules/mount-vfs.js +16 -21
  269. package/dist/krill/modules/network-cfg.d.ts +19 -0
  270. package/dist/krill/modules/network-cfg.js +28 -31
  271. package/dist/krill/modules/packages.d.ts +14 -0
  272. package/dist/krill/modules/packages.js +17 -21
  273. package/dist/krill/modules/partition.d.ts +20 -0
  274. package/dist/krill/modules/partition.js +80 -86
  275. package/dist/krill/modules/remove-installer-link.d.ts +13 -0
  276. package/dist/krill/modules/remove-installer-link.js +7 -11
  277. package/dist/krill/modules/umount.d.ts +14 -0
  278. package/dist/krill/modules/umount.js +9 -13
  279. package/dist/krill/modules/unpackfs.d.ts +13 -0
  280. package/dist/krill/modules/unpackfs.js +7 -11
  281. package/dist/krill/prepare.d.ts +77 -0
  282. package/dist/krill/{krill-prepare.js → prepare.js} +136 -130
  283. package/dist/krill/sequence.d.ts +156 -0
  284. package/dist/krill/sequence.js +640 -0
  285. package/dist/lib/cli-autologin.d.ts +43 -0
  286. package/dist/lib/cli-autologin.js +88 -92
  287. package/dist/lib/get_address.d.ts +8 -0
  288. package/dist/lib/get_address.js +9 -11
  289. package/dist/lib/get_dns.d.ts +8 -0
  290. package/dist/lib/get_dns.js +9 -11
  291. package/dist/lib/get_domain.d.ts +8 -0
  292. package/dist/lib/get_domain.js +9 -11
  293. package/dist/lib/get_gateway.d.ts +8 -0
  294. package/dist/lib/get_gateway.js +9 -11
  295. package/dist/lib/get_hostname.d.ts +8 -0
  296. package/dist/lib/get_hostname.js +9 -11
  297. package/dist/lib/get_netmask.d.ts +8 -0
  298. package/dist/lib/get_netmask.js +9 -11
  299. package/dist/lib/get_password.d.ts +8 -0
  300. package/dist/lib/get_password.js +10 -13
  301. package/dist/lib/get_userfullname.d.ts +8 -0
  302. package/dist/lib/get_userfullname.js +9 -11
  303. package/dist/lib/get_username.d.ts +8 -0
  304. package/dist/lib/get_username.js +9 -12
  305. package/dist/lib/kill_me_softly.d.ts +11 -0
  306. package/dist/lib/kill_me_softly.js +19 -24
  307. package/dist/lib/select_address_type.d.ts +8 -0
  308. package/dist/lib/select_address_type.js +9 -12
  309. package/dist/lib/select_filesystem_type.d.ts +8 -0
  310. package/dist/lib/select_filesystem_type.js +19 -17
  311. package/dist/lib/select_installation_device.d.ts +8 -0
  312. package/dist/lib/select_installation_device.js +11 -15
  313. package/dist/lib/select_installation_mode.d.ts +8 -0
  314. package/dist/lib/select_installation_mode.js +9 -11
  315. package/dist/lib/select_interface.d.ts +8 -0
  316. package/dist/lib/select_interface.js +9 -12
  317. package/dist/lib/select_keyboard_layout.d.ts +11 -0
  318. package/dist/lib/select_keyboard_layout.js +11 -15
  319. package/dist/lib/select_keyboard_model.d.ts +11 -0
  320. package/dist/lib/select_keyboard_model.js +11 -15
  321. package/dist/lib/select_keyboard_option.d.ts +11 -0
  322. package/dist/lib/select_keyboard_option.js +11 -15
  323. package/dist/lib/select_keyboard_variant.d.ts +11 -0
  324. package/dist/lib/select_keyboard_variant.js +11 -15
  325. package/dist/lib/select_languages.d.ts +8 -0
  326. package/dist/lib/select_languages.js +11 -15
  327. package/dist/lib/select_regions.d.ts +8 -0
  328. package/dist/lib/select_regions.js +9 -11
  329. package/dist/lib/select_user_swap_choice.d.ts +8 -0
  330. package/dist/lib/select_user_swap_choice.js +13 -17
  331. package/dist/lib/select_zones.d.ts +8 -0
  332. package/dist/lib/select_zones.js +9 -11
  333. package/dist/lib/utils.d.ts +34 -0
  334. package/dist/lib/utils.js +24 -14
  335. package/manpages/doc/man/eggs.1.gz +0 -0
  336. package/manpages/doc/man/eggs.html +130 -76
  337. package/package.json +55 -74
  338. package/scripts/_eggs +9 -7
  339. package/scripts/eggs.bash +4 -4
  340. package/LICENSE +0 -339
  341. package/bin/dev +0 -17
  342. package/bin/run +0 -5
  343. package/conf/exclude.list.custom +0 -3
  344. package/dist/components/elements/information.js +0 -194
  345. package/dist/components/elements/steps.js +0 -152
  346. package/dist/components/elements/title.js +0 -36
  347. package/dist/interfaces/i-filters.js +0 -3
  348. package/dist/krill/krill-sequence.js +0 -645
  349. package/dist/lib/dependencies.js +0 -120
  350. package/manpages/doc/man/README.md +0 -0
  351. /package/conf/{exclude.list.usr → exclude.list.d/usr.list} +0 -0
@@ -1,25 +1,27 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.tryInstall = exports.remove = void 0;
4
- const tslib_1 = require("tslib");
5
- const pacman_1 = tslib_1.__importDefault(require("../../pacman"));
1
+ /**
2
+ * ./src/classes/incubation/fisherman-helper/packages.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 Pacman from '../../pacman.js';
6
9
  /**
7
10
  *
8
11
  * @param distro
9
12
  * @returns yaml-string
10
13
  */
11
- function remove(distro) {
14
+ export function remove(distro) {
12
15
  const packages = [
13
- 'arco-calamares-git',
14
16
  'calamares-eggs',
15
- 'calamares-git',
17
+ 'calamares-garuda',
16
18
  'calamares',
17
19
  ];
18
20
  if (distro.familyId === 'archlinux') {
19
21
  packages.push('penguins-eggs');
20
22
  }
21
23
  if (distro.familyId === 'debian') {
22
- packages.push('eggs');
24
+ packages.push('penguins-eggs', 'live-boot', 'live-boot-doc', 'live-boot-initramfs-tools', 'live-tools');
23
25
  }
24
26
  let yaml = '';
25
27
  for (const elem of packages) {
@@ -30,13 +32,12 @@ function remove(distro) {
30
32
  }
31
33
  return yaml;
32
34
  }
33
- exports.remove = remove;
34
35
  /**
35
36
  *
36
37
  * @param distro
37
38
  * @returns yaml-string
38
39
  */
39
- function tryInstall(distro) {
40
+ export function tryInstall(distro) {
40
41
  let yaml = '';
41
42
  /**
42
43
  * Depending on the distro
@@ -45,20 +46,20 @@ function tryInstall(distro) {
45
46
  yaml += ' - language-pack-$LOCALE\n';
46
47
  }
47
48
  // Da localizzare se presenti
48
- if (pacman_1.default.packageIsInstalled('hunspell')) {
49
+ if (Pacman.packageIsInstalled('hunspell')) {
49
50
  yaml += ' - hunspell-$LOCALE\n';
50
51
  }
51
- if (pacman_1.default.packageIsInstalled('libreoffice-base-core')) {
52
+ if (Pacman.packageIsInstalled('libreoffice-base-core')) {
52
53
  yaml += ' - libreoffice-l10n-$LOCALE\n';
53
54
  yaml += ' - libreoffice-help-$LOCALE\n';
54
55
  }
55
- if (pacman_1.default.packageIsInstalled('firefox-esr')) {
56
+ if (Pacman.packageIsInstalled('firefox-esr')) {
56
57
  yaml += ' - firefox-esr-$LOCALE\n';
57
58
  }
58
- if (pacman_1.default.packageIsInstalled('firefox')) {
59
+ if (Pacman.packageIsInstalled('firefox')) {
59
60
  yaml += ' - firefox-$LOCALE\n';
60
61
  }
61
- if (pacman_1.default.packageIsInstalled('thunderbird')) {
62
+ if (Pacman.packageIsInstalled('thunderbird')) {
62
63
  yaml += ' - thunderbird-locale-$LOCALE\n';
63
64
  }
64
65
  if (yaml !== '') {
@@ -66,4 +67,3 @@ function tryInstall(distro) {
66
67
  }
67
68
  return yaml;
68
69
  }
69
- exports.tryInstall = tryInstall;
@@ -0,0 +1,15 @@
1
+ /**
2
+ * ./src/classes/incubation/fisherman-helper/settings.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
+ *
10
+ * @param src
11
+ * @param dest
12
+ * @param theme
13
+ * @param isClone
14
+ */
15
+ export declare function settings(src: string, dest: string, theme?: string, isClone?: boolean): Promise<void>;
@@ -1,18 +1,21 @@
1
- "use strict";
1
+ /**
2
+ * ./src/classes/incubation/fisherman-helper/settings.ts
3
+ * penguins-eggs v.10.0.0 / ecmascript 2020
4
+ * author: Piero Proietti
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
+ */
2
8
  /**
3
9
  *
4
10
  * @param theme
5
11
  * @param isClone
6
12
  */
7
- Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.settings = void 0;
9
- const tslib_1 = require("tslib");
10
- const fs_1 = tslib_1.__importDefault(require("fs"));
11
- const js_yaml_1 = tslib_1.__importDefault(require("js-yaml"));
12
- const shelljs_1 = tslib_1.__importDefault(require("shelljs"));
13
- const displaymanager_1 = require("./displaymanager");
14
- const utils_1 = tslib_1.__importDefault(require("../../utils"));
15
- const installer_1 = require("../installer");
13
+ import yaml from 'js-yaml';
14
+ import fs from 'node:fs';
15
+ import shx from 'shelljs';
16
+ import Utils from '../../utils.js';
17
+ import { installer } from '../installer.js';
18
+ import { displaymanager } from './displaymanager.js';
16
19
  /**
17
20
  *
18
21
  * @param src
@@ -20,16 +23,16 @@ const installer_1 = require("../installer");
20
23
  * @param theme
21
24
  * @param isClone
22
25
  */
23
- async function settings(src, dest, theme = 'eggs', isClone = false) {
26
+ export async function settings(src, dest, theme = 'eggs', isClone = false) {
24
27
  let branding = theme;
25
- let settingsSrc = src + 'settings.yml';
28
+ const settingsSrc = src + 'settings.yml';
26
29
  if (theme.includes('/')) {
27
30
  branding = theme.slice(Math.max(0, theme.lastIndexOf('/') + 1));
28
31
  }
29
32
  const settingsDest = dest + 'settings.conf';
30
- shelljs_1.default.cp(settingsSrc, settingsDest);
33
+ shx.cp(settingsSrc, settingsDest);
31
34
  let hasSystemd = '# ';
32
- if (utils_1.default.isSystemd()) {
35
+ if (Utils.isSystemd()) {
33
36
  hasSystemd = '- ';
34
37
  }
35
38
  let createUsers = '- ';
@@ -37,31 +40,30 @@ async function settings(src, dest, theme = 'eggs', isClone = false) {
37
40
  createUsers = '# ';
38
41
  }
39
42
  let hasDisplaymanager = '# ';
40
- if ((0, displaymanager_1.displaymanager)() !== '') {
43
+ if (displaymanager() !== '') {
41
44
  hasDisplaymanager = '- ';
42
45
  }
43
- shelljs_1.default.sed('-i', '{{hasSystemd}}', hasSystemd, settingsDest);
44
- shelljs_1.default.sed('-i', '{{hasDisplaymanager}}', hasDisplaymanager, settingsDest);
45
- shelljs_1.default.sed('-i', '{{branding}}', branding, settingsDest);
46
- shelljs_1.default.sed('-i', '{{createUsers}}', createUsers, settingsDest);
46
+ shx.sed('-i', '{{hasSystemd}}', hasSystemd, settingsDest);
47
+ shx.sed('-i', '{{hasDisplaymanager}}', hasDisplaymanager, settingsDest);
48
+ shx.sed('-i', '{{branding}}', branding, settingsDest);
49
+ shx.sed('-i', '{{createUsers}}', createUsers, settingsDest);
47
50
  /**
48
51
  * cfsAppend
49
52
  */
50
53
  const cfsPath = `${theme}/theme/calamares/cfs.yml`;
51
- if (fs_1.default.existsSync(cfsPath)) {
54
+ if (fs.existsSync(cfsPath)) {
52
55
  cfsAppend(cfsPath);
53
56
  }
54
57
  }
55
- exports.settings = settings;
56
58
  /**
57
59
  *
58
60
  */
59
61
  function cfsAppend(cfs) {
60
- const configRoot = (0, installer_1.installer)().configRoot + 'settings.conf';
61
- let soContent = fs_1.default.readFileSync(configRoot, 'utf8');
62
- let so = js_yaml_1.default.load(soContent);
63
- const cfsContent = fs_1.default.readFileSync(cfs, 'utf8');
64
- const cfsSteps = js_yaml_1.default.load(cfsContent);
62
+ const configRoot = installer().configRoot + 'settings.conf';
63
+ const soContent = fs.readFileSync(configRoot, 'utf8');
64
+ const so = yaml.load(soContent);
65
+ const cfsContent = fs.readFileSync(cfs, 'utf8');
66
+ const cfsSteps = yaml.load(cfsContent);
65
67
  const execSteps = so.sequence[1].exec;
66
68
  for (const execStep of execSteps) {
67
69
  if (execStep.includes('umount')) {
@@ -76,6 +78,6 @@ function cfsAppend(cfs) {
76
78
  }
77
79
  }
78
80
  // ***
79
- fs_1.default.writeFileSync(configRoot, js_yaml_1.default.dump(so), 'utf-8');
80
- shelljs_1.default.sed('-i', 'end-cfs', 'umount', configRoot);
81
+ fs.writeFileSync(configRoot, yaml.dump(so), 'utf-8');
82
+ shx.sed('-i', 'end-cfs', 'umount', configRoot);
81
83
  }
@@ -0,0 +1,77 @@
1
+ /**
2
+ * ./src/classes/incubation/fisherman.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 { IDistro, IInstaller } from '../../interfaces/index.js';
9
+ export default class Fisherman {
10
+ distro: IDistro;
11
+ installer: IInstaller;
12
+ verbose: boolean;
13
+ constructor(distro: IDistro, installer: IInstaller, verbose?: boolean);
14
+ /**
15
+ *
16
+ * @param name
17
+ * @param isScript
18
+ */
19
+ buildCalamaresModule(name: string, isScript?: boolean, theme?: string): Promise<string>;
20
+ /**
21
+ *
22
+ * @param name
23
+ */
24
+ buildCalamaresPy(name: string): Promise<void>;
25
+ /**
26
+ *
27
+ * @param name
28
+ * @param replaces [['search','replace']]
29
+ */
30
+ buildModule(name: string, vendor?: string): Promise<void>;
31
+ /**
32
+ *
33
+ * @param name
34
+ */
35
+ contextualprocess(name: string): Promise<void>;
36
+ /**
37
+ * write setting
38
+ */
39
+ createCalamaresSettings(theme?: string, isClone?: boolean): Promise<void>;
40
+ /**
41
+ * usa i moduli-ts
42
+ */
43
+ moduleDisplaymanager(): Promise<void>;
44
+ /**
45
+ * Al momento rimane con la vecchia configurazione
46
+ */
47
+ moduleFinished(): Promise<void>;
48
+ /**
49
+ * ====================================================================================
50
+ * M O D U L E S
51
+ * ====================================================================================
52
+ */
53
+ /**
54
+ * usa i moduli-ts
55
+ */
56
+ modulePackages(distro: IDistro, release?: boolean): Promise<void>;
57
+ /**
58
+ * Al momento rimane con la vecchia configurazione
59
+ */
60
+ moduleRemoveuser(username: string): Promise<void>;
61
+ /**
62
+ * Al momento rimane con la vecchia configurazione
63
+ */
64
+ moduleUnpackfs(): Promise<void>;
65
+ /**
66
+ *
67
+ * @param name
68
+ */
69
+ shellprocess(name: string): Promise<void>;
70
+ /**
71
+ *
72
+ * @param module
73
+ * @param type
74
+ * @param path
75
+ */
76
+ show(name: string, type: string, path: string): void;
77
+ }
@@ -1,64 +1,73 @@
1
- "use strict";
2
1
  /**
3
- * penguins-eggs: fisherman.ts
4
- *
2
+ * ./src/classes/incubation/fisherman.ts
3
+ * penguins-eggs v.10.0.0 / ecmascript 2020
5
4
  * author: Piero Proietti
6
- * mail: piero.proietti@gmail.com
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
7
  */
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- const tslib_1 = require("tslib");
10
- const node_fs_1 = tslib_1.__importDefault(require("node:fs"));
11
- const shelljs_1 = tslib_1.__importDefault(require("shelljs"));
12
- const node_path_1 = tslib_1.__importDefault(require("node:path"));
13
- const mustache_1 = tslib_1.__importDefault(require("mustache"));
14
- const chalk_1 = tslib_1.__importDefault(require("chalk"));
15
- const settings_1 = require("./fisherman-helper/settings");
16
- const utils_1 = require("../../lib/utils");
17
- class Fisherman {
8
+ import chalk from 'chalk';
9
+ import mustache from 'mustache';
10
+ import fs from 'node:fs';
11
+ import path from 'node:path';
12
+ import shx from 'shelljs';
13
+ import { exec } from '../../lib/utils.js';
14
+ import { settings } from './fisherman-helper/settings.js';
15
+ // _dirname
16
+ const __dirname = path.dirname(new URL(import.meta.url).pathname);
17
+ /**
18
+ * vecchi require che vanno sostituiti con import
19
+ */
20
+ import { displaymanager } from './fisherman-helper/displaymanager.js';
21
+ import { remove as removePackages, tryInstall } from './fisherman-helper/packages.js';
22
+ export default class Fisherman {
23
+ distro;
24
+ installer = {};
25
+ verbose = false;
18
26
  constructor(distro, installer, verbose = false) {
19
- this.installer = {};
20
- this.verbose = false;
21
27
  this.distro = distro;
22
28
  this.installer = installer;
23
29
  this.verbose = verbose;
24
30
  }
25
- /**
26
- * write setting
27
- */
28
- async createCalamaresSettings(theme = 'eggs', isClone = false) {
29
- await (0, settings_1.settings)(this.installer.template, this.installer.configRoot, theme, isClone);
30
- }
31
31
  /**
32
32
  *
33
33
  * @param name
34
+ * @param isScript
34
35
  */
35
- async shellprocess(name) {
36
- const moduleSource = node_path_1.default.resolve(__dirname, this.installer.templateModules + 'shellprocess_' + name + '.yml');
37
- const moduleDest = this.installer.modules + 'shellprocess_' + name + '.conf';
38
- if (node_fs_1.default.existsSync(moduleSource)) {
39
- if (this.verbose)
40
- this.show(name, 'shellprocess', moduleDest);
41
- shelljs_1.default.cp(moduleSource, moduleDest);
36
+ async buildCalamaresModule(name, isScript = true, theme = 'eggs') {
37
+ let moduleTemplate = path.resolve(__dirname, this.installer.templateMultiarch + name);
38
+ if (theme !== 'eggs') {
39
+ moduleTemplate = theme + '/theme/calamares/calamares-modules/' + name;
42
40
  }
43
- else if (this.verbose) {
44
- console.log(`calamares: ${name} shellprocess, nothing to do`);
41
+ const moduleDest = this.installer.multiarchModules + name;
42
+ const moduleScript = `/usr/sbin/${name}.sh`;
43
+ if (this.verbose)
44
+ this.show(name, 'module', moduleDest);
45
+ if (!fs.existsSync(moduleDest)) {
46
+ fs.mkdirSync(moduleDest);
45
47
  }
48
+ shx.cp(`${moduleTemplate}/module.yml`, `${moduleDest}/module.desc`);
49
+ if (isScript) {
50
+ shx.cp(`${moduleTemplate}/${name}.sh`, moduleScript);
51
+ await exec(`chmod +x ${moduleScript}`);
52
+ }
53
+ return moduleScript;
46
54
  }
47
55
  /**
48
56
  *
49
57
  * @param name
50
58
  */
51
- async contextualprocess(name) {
52
- const moduleSource = node_path_1.default.resolve(__dirname, this.installer.templateModules + name + '_context.yml');
53
- const moduleDest = this.installer.modules + name + '_context.conf';
54
- if (node_fs_1.default.existsSync(moduleSource)) {
55
- if (this.verbose)
56
- this.show(name, 'contextualprocess', moduleDest);
57
- shelljs_1.default.cp(moduleSource, moduleDest);
58
- }
59
- else if (this.verbose) {
60
- console.log(`calamares: ${name} contextualprocess, nothing to do!`);
59
+ async buildCalamaresPy(name) {
60
+ const moduleSource = path.resolve(__dirname, this.installer.templateMultiarch + '/' + name);
61
+ const moduleDest = this.installer.multiarchModules + name;
62
+ if (this.verbose)
63
+ this.show(name, 'python', moduleDest);
64
+ if (!fs.existsSync(moduleDest)) {
65
+ fs.mkdirSync(moduleDest);
61
66
  }
67
+ shx.cp(`${moduleSource}/module.yml`, `${moduleDest}/module.desc`);
68
+ shx.cp(`${moduleSource}/${name}.yml`, `${moduleDest}/${name}.conf`);
69
+ shx.cp(`${moduleSource}/main.py`, moduleDest);
70
+ await exec(`chmod +x ${moduleSource}/main.py`);
62
71
  }
63
72
  /**
64
73
  *
@@ -66,7 +75,7 @@ class Fisherman {
66
75
  * @param replaces [['search','replace']]
67
76
  */
68
77
  async buildModule(name, vendor = '') {
69
- let moduleSource = node_path_1.default.resolve(__dirname, this.installer.templateModules + name + '.yml');
78
+ let moduleSource = path.resolve(__dirname, this.installer.templateModules + name + '.yml');
70
79
  /**
71
80
  * We need vendor here to have possibility to load custom modules for calamares
72
81
  * the custom modules live in: /addons/vendor/theme/calamares/modules
@@ -84,111 +93,69 @@ class Fisherman {
84
93
  *
85
94
  */
86
95
  if (vendor !== 'eggs') {
87
- let customModuleSource = node_path_1.default.resolve(__dirname, `../../../addons/${vendor}/theme/calamares/modules/${name}.yml`);
96
+ let customModuleSource = path.resolve(__dirname, `../../../addons/${vendor}/theme/calamares/modules/${name}.yml`);
88
97
  if (vendor.includes('/')) {
89
98
  customModuleSource = `${vendor}/theme/calamares/modules/${name}.yml`;
90
99
  }
91
- if (node_fs_1.default.existsSync(customModuleSource)) {
100
+ if (fs.existsSync(customModuleSource)) {
92
101
  moduleSource = customModuleSource;
93
102
  }
94
103
  }
95
104
  const moduleDest = this.installer.modules + name + '.conf';
96
- if (node_fs_1.default.existsSync(moduleSource)) {
105
+ if (fs.existsSync(moduleSource)) {
97
106
  if (this.verbose) {
98
107
  this.show(name, 'module', moduleDest);
99
108
  }
100
109
  // We need to adapt just mount.conf
101
110
  if (name === 'mount') {
102
- let calamaresVersion = (await (0, utils_1.exec)('calamares --version', { echo: false, ignore: false, capture: true })).data.trim().substring(10, 13);
111
+ const calamaresVersion = (await exec('calamares --version', { capture: true, echo: false, ignore: false })).data.trim().slice(10, 13);
103
112
  let options = '[ bind ]';
104
113
  if (calamaresVersion === '3.2') {
105
114
  options = 'bind';
106
115
  }
107
- let view = { options: options };
108
- const moduleSourceTemplate = node_fs_1.default.readFileSync(moduleSource, 'utf8');
109
- node_fs_1.default.writeFileSync(moduleDest, mustache_1.default.render(moduleSourceTemplate, view));
116
+ const view = { options };
117
+ const moduleSourceTemplate = fs.readFileSync(moduleSource, 'utf8');
118
+ fs.writeFileSync(moduleDest, mustache.render(moduleSourceTemplate, view));
110
119
  }
111
120
  else {
112
- shelljs_1.default.cp(moduleSource, moduleDest);
121
+ shx.cp(moduleSource, moduleDest);
113
122
  }
114
123
  }
115
124
  else if (this.verbose) {
116
- console.log('unchanged: ' + chalk_1.default.greenBright(name));
125
+ console.log('unchanged: ' + chalk.greenBright(name));
117
126
  }
118
127
  }
119
128
  /**
120
129
  *
121
130
  * @param name
122
- * @param isScript
123
131
  */
124
- async buildCalamaresModule(name, isScript = true, theme = 'eggs') {
125
- let moduleTemplate = node_path_1.default.resolve(__dirname, this.installer.templateMultiarch + name);
126
- if (theme !== 'eggs') {
127
- moduleTemplate = theme + '/theme/calamares/calamares-modules/' + name;
128
- }
129
- const moduleDest = this.installer.multiarchModules + name;
130
- const moduleScript = `/usr/sbin/${name}.sh`;
131
- if (this.verbose)
132
- this.show(name, 'module', moduleDest);
133
- if (!node_fs_1.default.existsSync(moduleDest)) {
134
- node_fs_1.default.mkdirSync(moduleDest);
132
+ async contextualprocess(name) {
133
+ const moduleSource = path.resolve(__dirname, this.installer.templateModules + name + '_context.yml');
134
+ const moduleDest = this.installer.modules + name + '_context.conf';
135
+ if (fs.existsSync(moduleSource)) {
136
+ if (this.verbose)
137
+ this.show(name, 'contextualprocess', moduleDest);
138
+ shx.cp(moduleSource, moduleDest);
135
139
  }
136
- shelljs_1.default.cp(`${moduleTemplate}/module.yml`, `${moduleDest}/module.desc`);
137
- if (isScript) {
138
- shelljs_1.default.cp(`${moduleTemplate}/${name}.sh`, moduleScript);
139
- await (0, utils_1.exec)(`chmod +x ${moduleScript}`);
140
+ else if (this.verbose) {
141
+ console.log(`calamares: ${name} contextualprocess, nothing to do!`);
140
142
  }
141
- return moduleScript;
142
143
  }
143
144
  /**
144
- *
145
- * @param name
145
+ * write setting
146
146
  */
147
- async buildCalamaresPy(name) {
148
- const moduleSource = node_path_1.default.resolve(__dirname, this.installer.templateMultiarch + '/' + name);
149
- const moduleDest = this.installer.multiarchModules + name;
150
- if (this.verbose)
151
- this.show(name, 'python', moduleDest);
152
- if (!node_fs_1.default.existsSync(moduleDest)) {
153
- node_fs_1.default.mkdirSync(moduleDest);
154
- }
155
- shelljs_1.default.cp(`${moduleSource}/module.yml`, `${moduleDest}/module.desc`);
156
- shelljs_1.default.cp(`${moduleSource}/${name}.yml`, `${moduleDest}/${name}.conf`);
157
- shelljs_1.default.cp(`${moduleSource}/main.py`, moduleDest);
158
- await (0, utils_1.exec)(`chmod +x ${moduleSource}/main.py`);
147
+ async createCalamaresSettings(theme = 'eggs', isClone = false) {
148
+ await settings(this.installer.template, this.installer.configRoot, theme, isClone);
159
149
  }
160
150
  /**
161
- *
162
- * @param module
163
- * @param type
164
- * @param path
151
+ * usa i moduli-ts
165
152
  */
166
- show(name, type, path) {
167
- switch (type) {
168
- case 'module': {
169
- console.log('fisherman: ' + chalk_1.default.yellow(name) + ' module in ' + chalk_1.default.yellow(path));
170
- break;
171
- }
172
- case 'calamares_module': {
173
- console.log('fisherman: ' + chalk_1.default.cyanBright(name) + ' calamares_module in ' + chalk_1.default.cyanBright(path));
174
- break;
175
- }
176
- case 'shellprocess': {
177
- console.log('fisherman: ' + chalk_1.default.green(name) + ' shellprocess in ' + chalk_1.default.green(path));
178
- break;
179
- }
180
- case 'contextualprocess': {
181
- console.log('fisherman: ' + chalk_1.default.cyanBright(name) + ' shellprocess in ' + chalk_1.default.cyanBright(path));
182
- break;
183
- }
184
- // No default
185
- }
153
+ async moduleDisplaymanager() {
154
+ const name = 'displaymanager';
155
+ // const displaymanager = require('./fisherman-helper/displaymanager').displaymanager
156
+ this.buildModule(name);
157
+ shx.sed('-i', '{{displaymanagers}}', displaymanager(), this.installer.modules + name + '.conf');
186
158
  }
187
- /**
188
- * ====================================================================================
189
- * M O D U L E S
190
- * ====================================================================================
191
- */
192
159
  /**
193
160
  * Al momento rimane con la vecchia configurazione
194
161
  */
@@ -196,32 +163,20 @@ class Fisherman {
196
163
  const name = 'finished';
197
164
  await this.buildModule(name);
198
165
  const restartNowCommand = 'reboot';
199
- shelljs_1.default.sed('-i', '{{restartNowCommand}}', restartNowCommand, this.installer.modules + name + '.conf');
166
+ shx.sed('-i', '{{restartNowCommand}}', restartNowCommand, this.installer.modules + name + '.conf');
200
167
  }
201
168
  /**
202
- * Al momento rimane con la vecchia configurazione
203
- */
204
- async moduleUnpackfs() {
205
- const name = 'unpackfs';
206
- this.buildModule(name);
207
- shelljs_1.default.sed('-i', '{{source}}', this.distro.liveMediumPath + this.distro.squashfs, this.installer.modules + name + '.conf');
208
- }
209
- /**
210
- * usa i moduli-ts
169
+ * ====================================================================================
170
+ * M O D U L E S
171
+ * ====================================================================================
211
172
  */
212
- async moduleDisplaymanager() {
213
- const name = 'displaymanager';
214
- const displaymanager = require('./fisherman-helper/displaymanager').displaymanager;
215
- this.buildModule(name);
216
- shelljs_1.default.sed('-i', '{{displaymanagers}}', displaymanager(), this.installer.modules + name + '.conf');
217
- }
218
173
  /**
219
174
  * usa i moduli-ts
220
175
  */
221
176
  async modulePackages(distro, release = false) {
222
177
  const name = 'packages';
223
- const removePackages = require('./fisherman-helper/packages').remove;
224
- const tryInstall = require('./fisherman-helper/packages').tryInstall;
178
+ // const removePackages = require('./fisherman-helper/packages').remove
179
+ // const tryInstall = require('./fisherman-helper/packages').tryInstall
225
180
  this.buildModule(name);
226
181
  const yamlInstall = tryInstall(distro);
227
182
  let yamlRemove = '';
@@ -232,7 +187,7 @@ class Fisherman {
232
187
  if (yamlRemove !== '' || yamlInstall !== '') {
233
188
  operations = 'operations:\n' + yamlRemove + yamlInstall;
234
189
  }
235
- shelljs_1.default.sed('-i', '{{operations}}', operations, this.installer.modules + name + '.conf');
190
+ shx.sed('-i', '{{operations}}', operations, this.installer.modules + name + '.conf');
236
191
  }
237
192
  /**
238
193
  * Al momento rimane con la vecchia configurazione
@@ -240,7 +195,57 @@ class Fisherman {
240
195
  async moduleRemoveuser(username) {
241
196
  const name = 'removeuser';
242
197
  this.buildModule(name);
243
- shelljs_1.default.sed('-i', '{{username}}', username, this.installer.modules + name + '.conf');
198
+ shx.sed('-i', '{{username}}', username, this.installer.modules + name + '.conf');
199
+ }
200
+ /**
201
+ * Al momento rimane con la vecchia configurazione
202
+ */
203
+ async moduleUnpackfs() {
204
+ const name = 'unpackfs';
205
+ this.buildModule(name);
206
+ shx.sed('-i', '{{source}}', this.distro.liveMediumPath + this.distro.squashfs, this.installer.modules + name + '.conf');
207
+ }
208
+ /**
209
+ *
210
+ * @param name
211
+ */
212
+ async shellprocess(name) {
213
+ const moduleSource = path.resolve(__dirname, this.installer.templateModules + 'shellprocess_' + name + '.yml');
214
+ const moduleDest = this.installer.modules + 'shellprocess_' + name + '.conf';
215
+ if (fs.existsSync(moduleSource)) {
216
+ if (this.verbose)
217
+ this.show(name, 'shellprocess', moduleDest);
218
+ shx.cp(moduleSource, moduleDest);
219
+ }
220
+ else if (this.verbose) {
221
+ console.log(`calamares: ${name} shellprocess, nothing to do`);
222
+ }
223
+ }
224
+ /**
225
+ *
226
+ * @param module
227
+ * @param type
228
+ * @param path
229
+ */
230
+ show(name, type, path) {
231
+ switch (type) {
232
+ case 'module': {
233
+ console.log('fisherman: ' + chalk.yellow(name) + ' module in ' + chalk.yellow(path));
234
+ break;
235
+ }
236
+ case 'calamares_module': {
237
+ console.log('fisherman: ' + chalk.cyanBright(name) + ' calamares_module in ' + chalk.cyanBright(path));
238
+ break;
239
+ }
240
+ case 'shellprocess': {
241
+ console.log('fisherman: ' + chalk.green(name) + ' shellprocess in ' + chalk.green(path));
242
+ break;
243
+ }
244
+ case 'contextualprocess': {
245
+ console.log('fisherman: ' + chalk.cyanBright(name) + ' shellprocess in ' + chalk.cyanBright(path));
246
+ break;
247
+ }
248
+ // No default
249
+ }
244
250
  }
245
251
  }
246
- exports.default = Fisherman;