penguins-eggs 25.11.12 → 25.11.29

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 (168) hide show
  1. package/.oclif.manifest.json +161 -140
  2. package/README.md +811 -4
  3. package/README.pdf +20763 -3833
  4. package/addons/eggs/adapt/applications/eggs-adapt.desktop +0 -0
  5. package/addons/eggs/pve/applications/eggs-pve.desktop +0 -0
  6. package/addons/eggs/rsupport/applications/eggs-rsupport.desktop +0 -0
  7. package/addons/eggs/theme/applications/install-system.desktop +0 -0
  8. package/addons/eggs/theme/livecd/full.grub.main.cfg +39 -4
  9. package/addons/eggs/theme/livecd/full.isolinux.main.cfg +47 -4
  10. package/assets/calamares/install-system.sh +0 -0
  11. package/assets/penguins-eggs.desktop +0 -0
  12. package/assets/penguins-krill.desktop +0 -0
  13. package/assets/penguins-links-add.desktop +0 -0
  14. package/assets/penguins-live-installer.desktop +0 -0
  15. package/bin/dev.js +0 -0
  16. package/bin/run.js +11 -0
  17. package/conf/derivatives.yaml +2 -1
  18. package/conf/distros/alpine/calamares/calamares-modules/machineid-openrc/machineid-openrc.sh +0 -0
  19. package/conf/distros/buster/calamares/calamares-modules/cleanup/cleanup.sh +0 -0
  20. package/conf/distros/buster/calamares/calamares-modules/dpkg-unsafe-io/dpkg-unsafe-io.sh +0 -0
  21. package/conf/distros/buster/calamares/calamares-modules/sources-yolk/sources-yolk.sh +0 -0
  22. package/conf/distros/fedora/calamares/calamares-modules/bootloaderspecification/bootloaderspecification.sh +0 -0
  23. package/conf/distros/focal/calamares/calamares-modules/.keepit +0 -0
  24. package/conf/distros/focal/calamares/calamares-modules/cleanup/cleanup.sh +20 -0
  25. package/conf/distros/focal/calamares/calamares-modules/cleanup/module.yml +9 -0
  26. package/conf/distros/focal/calamares/calamares-modules/sources-yolk/module.yml +8 -0
  27. package/conf/distros/focal/calamares/calamares-modules/sources-yolk/sources-yolk.sh +50 -0
  28. package/conf/distros/focal/calamares/calamares-modules/sources-yolk-undo/module.yml +8 -0
  29. package/conf/distros/focal/calamares/libexec/.keepit +0 -0
  30. package/conf/distros/focal/calamares/libexec/README.md +5 -0
  31. package/conf/distros/focal/calamares/libexec/calamares-aptsources.sh +15 -0
  32. package/conf/distros/focal/calamares/libexec/calamares-l10n-helper.sh +38 -0
  33. package/conf/distros/focal/calamares/libexec/calamares-logs-helper.sh +34 -0
  34. package/conf/distros/focal/calamares/libexec/calamares-nomodeset.sh +19 -0
  35. package/conf/distros/focal/calamares/modules/after_bootloader_context.yml +26 -0
  36. package/conf/distros/focal/calamares/modules/before_bootloader_context.yml +12 -0
  37. package/conf/distros/focal/calamares/modules/bootloader.yml +86 -0
  38. package/conf/distros/focal/calamares/modules/bootloader.yml.old +35 -0
  39. package/conf/distros/focal/calamares/modules/displaymanager.yml +12 -0
  40. package/conf/distros/focal/calamares/modules/finished.yml +6 -0
  41. package/conf/distros/focal/calamares/modules/fstab.yml +63 -0
  42. package/conf/distros/focal/calamares/modules/grubcfg.yml +51 -0
  43. package/conf/distros/focal/calamares/modules/keyboard.yml +29 -0
  44. package/conf/distros/focal/calamares/modules/locale.yml +7 -0
  45. package/conf/distros/focal/calamares/modules/machineid.yml +10 -0
  46. package/conf/distros/focal/calamares/modules/mount.yml +20 -0
  47. package/conf/distros/focal/calamares/modules/netinstall.yml +5 -0
  48. package/conf/distros/focal/calamares/modules/packages.mustache +5 -0
  49. package/conf/distros/focal/calamares/modules/partition.yml +21 -0
  50. package/conf/distros/focal/calamares/modules/removeuser.mustache +3 -0
  51. package/conf/distros/focal/calamares/modules/shellprocess@aptsources.yml +11 -0
  52. package/conf/distros/focal/calamares/modules/shellprocess@boot_deploy.yml +9 -0
  53. package/conf/distros/focal/calamares/modules/shellprocess@boot_reconfigure.yml +15 -0
  54. package/conf/distros/focal/calamares/modules/shellprocess@install_translations.yml +8 -0
  55. package/conf/distros/focal/calamares/modules/shellprocess@logs.yml +8 -0
  56. package/conf/distros/focal/calamares/modules/shellprocess@mkinitramfs.yml +6 -0
  57. package/conf/distros/focal/calamares/modules/shellprocess@nomodeset.yml +12 -0
  58. package/conf/distros/focal/calamares/modules/umount.yml +4 -0
  59. package/conf/distros/focal/calamares/modules/unpackfs.mustache +6 -0
  60. package/conf/distros/focal/calamares/modules/users.yml +27 -0
  61. package/conf/distros/focal/calamares/modules/welcome.yml +24 -0
  62. package/conf/distros/focal/calamares/settings.yml +97 -0
  63. package/conf/distros/noble/calamares/calamares-modules/cleanup/cleanup.sh +0 -0
  64. package/conf/distros/noble/calamares/calamares-modules/sources-yolk/sources-yolk.sh +0 -0
  65. package/conf/distros/noble/calamares/libexec/calamares-aptsources.sh +0 -0
  66. package/conf/distros/noble/calamares/libexec/calamares-l10n-helper.sh +0 -0
  67. package/conf/distros/noble/calamares/libexec/calamares-logs-helper.sh +0 -0
  68. package/conf/distros/noble/calamares/libexec/calamares-nomodeset.sh +0 -0
  69. package/conf/distros/opensuse/calamares/calamares-modules/bootloaderspecification/bootloaderspecification.sh +0 -0
  70. package/conf/distros/opensuse/calamares/settings.yml +0 -0
  71. package/conf/distros/opensuse/calamares/zstd2lzo.sh +0 -0
  72. package/conf/distros/trixie/calamares/calamares-modules/cleanup/cleanup.sh +0 -0
  73. package/conf/distros/trixie/calamares/calamares-modules/dpkg-unsafe-io/dpkg-unsafe-io.sh +0 -0
  74. package/conf/distros/trixie/calamares/calamares-modules/sources-yolk/sources-yolk.sh +0 -0
  75. package/conf/init/unattended.sh +0 -0
  76. package/dist/appimage/dependency-manager.d.ts +31 -0
  77. package/dist/appimage/dependency-manager.js +292 -0
  78. package/dist/appimage/first-run-check.d.ts +8 -0
  79. package/dist/appimage/first-run-check.js +13 -0
  80. package/dist/bin/dev.cmd +3 -0
  81. package/dist/bin/dev.js +6 -0
  82. package/dist/bin/run.cmd +3 -0
  83. package/dist/bin/run.js +16 -0
  84. package/dist/classes/cli-autologin.js +5 -5
  85. package/dist/classes/daddy.js +11 -11
  86. package/dist/classes/diversions.d.ts +5 -0
  87. package/dist/classes/diversions.js +23 -7
  88. package/dist/classes/incubation/fisherman-helper/initcpio.d.ts +7 -0
  89. package/dist/classes/incubation/fisherman-helper/initcpio.js +7 -0
  90. package/dist/classes/incubation/fisherman.js +0 -2
  91. package/dist/classes/network.d.ts +1 -1
  92. package/dist/classes/ovary.d/edit-live-fs.d.ts +1 -1
  93. package/dist/classes/ovary.d/edit-live-fs.js +129 -93
  94. package/dist/classes/ovary.d/fertilization.js +1 -1
  95. package/dist/classes/ovary.d/xorriso-command.js +1 -5
  96. package/dist/classes/pacman.d.ts +21 -7
  97. package/dist/classes/pacman.js +59 -39
  98. package/dist/classes/utils.d.ts +5 -5
  99. package/dist/classes/utils.js +30 -11
  100. package/dist/commands/calamares.js +1 -1
  101. package/dist/commands/config.js +3 -14
  102. package/dist/commands/cuckoo.js +1 -1
  103. package/dist/commands/{analyze.d.ts → export/appimage.d.ts} +10 -9
  104. package/dist/commands/export/appimage.js +76 -0
  105. package/dist/commands/export/iso.js +1 -1
  106. package/dist/commands/export/pkg.d.ts +1 -1
  107. package/dist/commands/export/pkg.js +2 -2
  108. package/dist/commands/{install.d.ts → krill.d.ts} +3 -4
  109. package/dist/commands/{install.js → krill.js} +5 -6
  110. package/dist/commands/produce.js +1 -1
  111. package/dist/commands/setup/install.d.ts +17 -0
  112. package/dist/commands/setup/install.js +71 -0
  113. package/dist/commands/setup/purge.d.ts +17 -0
  114. package/dist/commands/setup/purge.js +71 -0
  115. package/dist/commands/tools/repo.d.ts +0 -5
  116. package/dist/commands/tools/repo.js +205 -127
  117. package/dist/commands/update.d.ts +16 -1
  118. package/dist/commands/update.js +140 -63
  119. package/dist/krill/components/information.js +2 -2
  120. package/dist/krill/components/title.js +13 -13
  121. package/dist/lib/utils.d.ts +16 -0
  122. package/dist/lib/utils.js +5 -32
  123. package/dracut/create-symlink +0 -0
  124. package/dracut/export +0 -0
  125. package/dracut/export-dracut-analysis +0 -0
  126. package/dracut/export-dracut-log +0 -0
  127. package/dracut/mkisofs +0 -0
  128. package/dracut/modules.d/00debug-shell/debug-hook.sh +0 -0
  129. package/dracut/modules.d/00debug-shell/module-setup.sh +0 -0
  130. package/dracut/modules.d/90block/block-cmdline.sh +0 -0
  131. package/dracut/modules.d/90block/module-setup.sh +0 -0
  132. package/dracut/modules.d/95iso-scan/iso-scan-fallback.sh +0 -0
  133. package/dracut/modules.d/95iso-scan/iso-scan.sh +0 -0
  134. package/dracut/modules.d/95iso-scan/module-setup.sh +0 -0
  135. package/dracut/modules.d/95luks-loop/luks-loop.sh +0 -0
  136. package/dracut/modules.d/95luks-loop/module-setup.sh +0 -0
  137. package/dracut/renew-initramfs +0 -0
  138. package/dracut/sbin2bin +0 -0
  139. package/dracut/update-dracut-conf-d +0 -0
  140. package/dracut/update-dracut-modules +0 -0
  141. package/eui/eui-autostart-cinnamon.desktop +0 -0
  142. package/eui/eui-autostart-xfce.desktop +0 -0
  143. package/eui/eui-create-image.sh +0 -0
  144. package/eui/eui-start.sh +0 -0
  145. package/manpages/doc/man/eggs.1.gz +0 -0
  146. package/manpages/doc/man/eggs.html +594 -9
  147. package/package.json +124 -130
  148. package/perrisbrewery/scripts/postinst +0 -0
  149. package/perrisbrewery/scripts/postrm +0 -0
  150. package/perrisbrewery/scripts/preinst +0 -0
  151. package/perrisbrewery/scripts/prerm +0 -0
  152. package/perrisbrewery/template/dependencies.yaml +0 -5
  153. package/perrisbrewery/template/man.template.md +7 -0
  154. package/scripts/99clean +0 -0
  155. package/scripts/_eggs +56 -47
  156. package/scripts/adapt.sh +0 -0
  157. package/scripts/bros/waydroid-helper.sh +0 -0
  158. package/scripts/eggs.bash +4 -4
  159. package/scripts/lsb_release +0 -0
  160. package/scripts/mom.sh +0 -0
  161. package/scripts/pve-live.service +0 -0
  162. package/scripts/pve-live.sh +0 -0
  163. package/scripts/resy +0 -0
  164. package/dist/commands/analyze.js +0 -95
  165. package/dist/commands/pods.d.ts +0 -22
  166. package/dist/commands/pods.js +0 -92
  167. package/scripts/boot-encrypted-root.sh +0 -220
  168. package/scripts/mount-encrypted-home.sh +0 -324
@@ -1,5 +1,5 @@
1
1
  /**
2
- * ./src/commands/syncfrom.ts
2
+ * ./src/commands/update.ts
3
3
  * penguins-eggs v.25.7.x / ecmascript 2020
4
4
  * author: Piero Proietti
5
5
  * email: piero.proietti@gmail.com
@@ -12,6 +12,7 @@ import Tools from '../classes/tools.js';
12
12
  import Utils from '../classes/utils.js';
13
13
  import Diversions from '../classes/diversions.js';
14
14
  import { exec } from '../lib/utils.js';
15
+ import { spawn } from 'child_process';
15
16
  import axios from 'axios';
16
17
  import https from 'node:https';
17
18
  const agent = new https.Agent({
@@ -57,8 +58,13 @@ export default class Update extends Command {
57
58
  await this.getPkgFromLan();
58
59
  break;
59
60
  }
60
- case 'Package_Manager': {
61
- await this.getPkgFromPackageManager();
61
+ case 'Internet': {
62
+ if (Utils.isAppImage()) {
63
+ await this.getLatestAppImage();
64
+ }
65
+ else {
66
+ await this.getPkgFromPackageManager();
67
+ }
62
68
  break;
63
69
  }
64
70
  case 'Source': {
@@ -73,7 +79,7 @@ export default class Update extends Command {
73
79
  */
74
80
  async choosePkg() {
75
81
  const choices = ['Abort'];
76
- choices.push('LAN', 'Package_Manager', 'Source');
82
+ choices.push('LAN', 'Internet', 'Source');
77
83
  const questions = [
78
84
  {
79
85
  choices,
@@ -92,6 +98,7 @@ export default class Update extends Command {
92
98
  *
93
99
  */
94
100
  async getPkgFromPackageManager() {
101
+ Utils.titles(`update from package Manager`);
95
102
  let cmd = "";
96
103
  if (this.distro.familyId === 'alpine') {
97
104
  cmd = `doas apk add penguins-egga`;
@@ -111,7 +118,6 @@ export default class Update extends Command {
111
118
  else if (this.distro.familyId === "opensuse") {
112
119
  cmd = 'sudo zypper install penguins-eggs\\zypper install --force penguins-eggs';
113
120
  }
114
- Utils.titles(`update`);
115
121
  Utils.warning(`To install/update penguins-eggs cut and copy one of the follow commands`);
116
122
  console.log();
117
123
  console.log(cmd);
@@ -127,68 +133,77 @@ export default class Update extends Command {
127
133
  let filter = '';
128
134
  let copy = '';
129
135
  let install = '';
130
- /**
131
- * Alpine
132
- */
133
- if (this.distro.familyId === 'alpine') {
134
- let repo = `alpine/x86_64`;
135
- filter = `penguins-eggs-*-*.*.?-r?.apk`;
136
- copy = `scp ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathPackages}/${repo}/${filter} /tmp`;
137
- install = `apk add /tmp/${filter}`;
136
+ let repo = '';
137
+ if (Utils.isAppImage()) {
138
+ console.log("AppImage: penguins-eggs-*-x86_64.AppImage will be installed as /usr/bin/eggs");
139
+ filter = `penguins-eggs-*-x86_64.AppImage`;
140
+ copy = `scp ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathPackages}/${filter} /tmp`;
141
+ install = `mv /tmp/${filter} /usr/bin/eggs`;
142
+ }
143
+ else {
138
144
  /**
139
- * Arch
145
+ * Alpine
140
146
  */
141
- }
142
- else if (this.distro.familyId === 'archlinux') {
143
- let repo = "aur";
144
- filter = `penguins-eggs-??.*.*-?-any.pkg.tar.zst`;
145
- if (Diversions.isManjaroBased(this.distro.distroId)) {
146
- repo = 'manjaro';
147
- filter = `penguins-eggs-??.*.*-?-any.pkg.tar.*`;
147
+ if (this.distro.familyId === 'alpine') {
148
+ repo = `alpine/x86_64`;
149
+ filter = `penguins-eggs-*-*.*.?-r?.apk`;
150
+ copy = `scp ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathPackages}/${repo}/${filter} /tmp`;
151
+ install = `apk add /tmp/${filter}`;
152
+ /**
153
+ * Arch
154
+ */
148
155
  }
149
- copy = `scp ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathPackages}/${repo}/${filter} /tmp`;
150
- install = `pacman -U /tmp/${filter}`;
151
- /**
152
- * Devuan/Debian/Ubuntu
153
- */
154
- }
155
- else if (this.distro.familyId === "debian") {
156
- let repo = 'debs';
157
- filter = `penguins-eggs_??.*.*-?_${Utils.uefiArch()}.deb`;
158
- copy = `scp ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathPackages}/${repo}/${filter} /tmp`;
159
- install = `apt reinstall /tmp/${filter}`;
160
- /**
161
- * fedora/el9
162
- */
163
- }
164
- else if (this.distro.familyId === "fedora") {
165
- let repo = 'fedora';
166
- let ftype = 'fc??';
167
- if (this.distro.distroId !== 'Fedora') {
168
- repo = 'el9';
169
- ftype = 'el?';
156
+ else if (this.distro.familyId === 'archlinux') {
157
+ repo = "aur";
158
+ filter = `penguins-eggs-??.*.*-?-any.pkg.tar.zst`;
159
+ if (Diversions.isManjaroBased(this.distro.distroId)) {
160
+ repo = 'manjaro';
161
+ filter = `penguins-eggs-??.*.*-?-any.pkg.tar.*`;
162
+ }
163
+ copy = `scp ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathPackages}/${repo}/${filter} /tmp`;
164
+ install = `pacman -U /tmp/${filter}`;
165
+ /**
166
+ * Devuan/Debian/Ubuntu
167
+ */
168
+ }
169
+ else if (this.distro.familyId === "debian") {
170
+ repo = 'debs';
171
+ filter = `penguins-eggs_??.*.*-?_${Utils.uefiArch()}.deb`;
172
+ copy = `scp ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathPackages}/${repo}/${filter} /tmp`;
173
+ install = `apt reinstall /tmp/${filter}`;
174
+ /**
175
+ * fedora/el9
176
+ */
177
+ }
178
+ else if (this.distro.familyId === "fedora") {
179
+ repo = 'fedora';
180
+ let ftype = 'fc??';
181
+ if (this.distro.distroId !== 'Fedora') {
182
+ repo = 'el9';
183
+ ftype = 'el?';
184
+ }
185
+ filter = `penguins-eggs-??.*.*-?.${ftype}.x86_64.rpm`;
186
+ copy = `scp ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathPackages}/${repo}/${filter} /tmp`;
187
+ install = `dnf reinstall /tmp/${filter} || dnf install /tmp/${filter}`;
188
+ /**
189
+ * openmamba
190
+ */
191
+ }
192
+ else if (this.distro.familyId === "openmamba") {
193
+ repo = 'openmamba';
194
+ filter = `penguins-eggs-??.*.*-?mamba.x86_64.rpm`;
195
+ copy = `scp ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathPackages}/${repo}/${filter} /tmp`;
196
+ install = `dnf reinstall /tmp/${filter} || dnf install /tmp/${filter}`;
197
+ /**
198
+ * opensuse
199
+ */
200
+ }
201
+ else if (this.distro.familyId === "opensuse") {
202
+ repo = 'opensuse';
203
+ filter = `penguins-eggs-*.*.*-?.opensuse.x86_64.rpm`;
204
+ copy = `scp ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathPackages}/${repo}/${filter} /tmp`;
205
+ install = `zypper install --force /tmp/${filter} || zypper install /tmp/${filter}`;
170
206
  }
171
- filter = `penguins-eggs-??.*.*-?.${ftype}.x86_64.rpm`;
172
- copy = `scp ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathPackages}/${repo}/${filter} /tmp`;
173
- install = `dnf reinstall /tmp/${filter} || dnf install /tmp/${filter}`;
174
- /**
175
- * openmamba
176
- */
177
- }
178
- else if (this.distro.familyId === "openmamba") {
179
- let repo = 'openmamba';
180
- filter = `penguins-eggs-??.*.*-?mamba.x86_64.rpm`;
181
- copy = `scp ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathPackages}/${repo}/${filter} /tmp`;
182
- install = `dnf reinstall /tmp/${filter} || dnf install /tmp/${filter}`;
183
- /**
184
- * opensuse
185
- */
186
- }
187
- else if (this.distro.familyId === "opensuse") {
188
- let repo = 'opensuse';
189
- filter = `penguins-eggs-*.*.*-?.opensuse.x86_64.rpm`;
190
- copy = `scp ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathPackages}/${repo}/${filter} /tmp`;
191
- install = `zypper install --force /tmp/${filter} || zypper install /tmp/${filter}`;
192
207
  }
193
208
  /**
194
209
  * copy and install
@@ -235,4 +250,66 @@ export default class Update extends Command {
235
250
  console.log('- ' + country[0] + ': ' + country[1]);
236
251
  }
237
252
  }
253
+ /**
254
+ *
255
+ */
256
+ async getLatestAppImage() {
257
+ let url = await this.getLatestAppImageUrl();
258
+ console.log(`Downloading AppImage from ${url}`);
259
+ let AppFile = '/tmp/eggs.AppImage';
260
+ if (url !== null) {
261
+ await this.downloadWithCurl(url, AppFile);
262
+ }
263
+ await exec(`mv ${AppFile} /usr/bin/eggs`);
264
+ await exec(`chmod +x /usr/bin/eggs`);
265
+ }
266
+ /**
267
+ *
268
+ */
269
+ async getLatestAppImageUrl() {
270
+ const repo = 'pieroproietti/penguins-eggs';
271
+ const apiUrl = `https://api.github.com/repos/${repo}/releases/latest`;
272
+ try {
273
+ const response = await fetch(apiUrl);
274
+ if (!response.ok)
275
+ throw new Error(`Errore API GitHub: ${response.statusText}`);
276
+ const data = await response.json();
277
+ // Cerchiamo l'asset che finisce per .AppImage
278
+ const asset = data.assets.find((a) => a.name.endsWith('.AppImage'));
279
+ return asset ? asset.browser_download_url : null;
280
+ }
281
+ catch (error) {
282
+ console.error(" :", error);
283
+ return null;
284
+ }
285
+ }
286
+ /**
287
+ *
288
+ * @param url
289
+ * @param outputFilename
290
+ * @returns
291
+ */
292
+ async downloadWithCurl(url, outputFilename) {
293
+ return new Promise((resolve, reject) => {
294
+ console.log(`Avvio download di: ${outputFilename}...`);
295
+ // Spawniamo il processo curl
296
+ // -L: segue i redirect (fondamentale per GitHub)
297
+ // -o: specifica il file di output
298
+ const curl = spawn('curl', ['-L', '-o', outputFilename, url], {
299
+ stdio: 'inherit' // Questo mostra la progress bar di curl direttamente nel tuo terminale!
300
+ });
301
+ curl.on('close', (code) => {
302
+ if (code === 0) {
303
+ console.log('\nDownload completato con successo!');
304
+ resolve();
305
+ }
306
+ else {
307
+ reject(new Error(`Curl è uscito con codice errore: ${code}`));
308
+ }
309
+ });
310
+ curl.on('error', (err) => {
311
+ reject(new Error(`Impossibile avviare curl. È installato? ${err.message}`));
312
+ });
313
+ });
314
+ }
238
315
  }
@@ -125,8 +125,8 @@ export default async function information(verbose = false) {
125
125
  React.createElement(Text, null, " ")),
126
126
  React.createElement(Box, { borderStyle: "round", marginRight: 2, flexDirection: "column" },
127
127
  React.createElement(Box, null,
128
- React.createElement(Text, { color: "cyan" }, "eggs install"),
129
- React.createElement(Text, null, " install your CLI iso with TUI installer krill, on GUI prefere calamares")),
128
+ React.createElement(Text, { color: "cyan" }, "eggs krill"),
129
+ React.createElement(Text, null, " install your CLI system with TUI installer krill, on GUI use calamares")),
130
130
  React.createElement(Box, null,
131
131
  React.createElement(Text, { color: "cyan" }, "eggs wardrobe"),
132
132
  React.createElement(Text, null, " build your personal system starting from cli")),
@@ -9,13 +9,19 @@ import React from 'react';
9
9
  import { Text, Box, Newline } from 'ink';
10
10
  // pjson
11
11
  import { createRequire } from 'module';
12
+ import Utils from '../../classes/utils.js';
12
13
  const require = createRequire(import.meta.url);
13
14
  const pjson = require('../../../package.json');
14
15
  export default function Title({ title = "", version = "" }) {
15
- if (title == "")
16
- title = pjson.name;
17
- if (version == "")
18
- version = pjson.version;
16
+ let type = "";
17
+ if (!Utils.isAppImage()) {
18
+ type = "native";
19
+ }
20
+ if (title === "")
21
+ title = `${pjson.name}`;
22
+ let green = ` ${title}`.padEnd(25, " ");
23
+ let white = ` Perri's brewery edition `.padEnd(25, " ");
24
+ let red = ` v${pjson.version} ${type} `.padStart(25, " ");
19
25
  return (React.createElement(React.Fragment, null,
20
26
  React.createElement(Box, { flexDirection: "column" },
21
27
  React.createElement(Box, null),
@@ -23,13 +29,7 @@ export default function Title({ title = "", version = "" }) {
23
29
  React.createElement(Text, null, "E G G S: reproductive system of penguins")),
24
30
  React.createElement(Newline, null)),
25
31
  React.createElement(Box, { flexDirection: "row" },
26
- React.createElement(Text, { backgroundColor: "green" },
27
- " ",
28
- title,
29
- " "),
30
- React.createElement(Text, { backgroundColor: "white", color: "blue" }, " Perri's brewery edition "),
31
- React.createElement(Text, { backgroundColor: "red" },
32
- " ver. ",
33
- version,
34
- " "))));
32
+ React.createElement(Text, { backgroundColor: "green" }, green),
33
+ React.createElement(Text, { backgroundColor: "white", color: "blue" }, white),
34
+ React.createElement(Text, { backgroundColor: "red" }, red))));
35
35
  }
@@ -5,6 +5,22 @@
5
5
  * email: piero.proietti@gmail.com
6
6
  * license: MIT
7
7
  */
8
+ /**
9
+ * Executes shell command as it would happen in BASH script
10
+ * @param {string} command
11
+ * @param {Object} [options] Object with options.
12
+ * echo: true, to echo command passed.
13
+ * ignore: true to ignore stdout
14
+ * capture: true, to capture and return stdout.
15
+ *
16
+ * @returns {Promise<{code: number, data: string | undefined, error: Object}>}
17
+ *
18
+ * https://github.com/oclif/core/issues/453#issuecomment-1200778612
19
+ * codespool:
20
+ * You could wrap spawn in a promise, listen to exit event, and resolve when it happens. That should play nicely with oclif/core.
21
+ * We are using it here:
22
+ * https://github.com/AstarNetwork/swanky-cli/blob/master/src/commands/compile/index.ts
23
+ */
8
24
  import { IExec } from '../interfaces/index.js';
9
25
  /**
10
26
  *
package/dist/lib/utils.js CHANGED
@@ -5,23 +5,7 @@
5
5
  * email: piero.proietti@gmail.com
6
6
  * license: MIT
7
7
  */
8
- /**
9
- * Executes shell command as it would happen in BASH script
10
- * @param {string} command
11
- * @param {Object} [options] Object with options.
12
- * echo: true, to echo command passed.
13
- * ignore: true to ignore stdout
14
- * capture: true, to capture and return stdout.
15
- *
16
- * @returns {Promise<{code: number, data: string | undefined, error: Object}>}
17
- *
18
- * https://github.com/oclif/core/issues/453#issuecomment-1200778612
19
- * codespool:
20
- * You could wrap spawn in a promise, listen to exit event, and resolve when it happens. That should play nicely with oclif/core.
21
- * We are using it here:
22
- * https://github.com/AstarNetwork/swanky-cli/blob/master/src/commands/compile/index.ts
23
- */
24
- import { spawn } from 'node:child_process';
8
+ import { spawn } from 'child_process';
25
9
  /**
26
10
  *
27
11
  * @param command
@@ -29,37 +13,26 @@ import { spawn } from 'node:child_process';
29
13
  * @returns
30
14
  */
31
15
  export async function exec(command, { echo = false, ignore = false, capture = false } = {}) {
32
- /**
33
- * You could wrap spawn in a promise,
34
- * listen to exit event,
35
- * and resolve when it happens.
36
- *
37
- * That should play nicely with oclif/core.
38
- */
39
16
  return new Promise((resolve, reject) => {
40
17
  if (echo) {
41
- // seem no need!
42
18
  console.log(command);
43
19
  }
44
- const child = spawn('bash', ['-c', command], {
20
+ // Opzioni di base per spawn
21
+ const spawnOptions = {
45
22
  stdio: ignore ? 'ignore' : capture ? 'pipe' : 'inherit'
46
- });
23
+ };
24
+ const child = spawn('bash', ['-c', command], spawnOptions);
47
25
  let stdout = '';
48
26
  if (capture) {
49
27
  child.stdout?.on('data', (data) => {
50
28
  stdout += data;
51
29
  });
52
30
  }
53
- // 'error' event
54
31
  child.on('error', (error) => {
55
32
  reject({ code: 1, error });
56
33
  });
57
- // The 'exit' event is emitted after the child process ends. If the process exited, code is the final exit code of the process,
58
- // otherwise null. If the process terminated due to receipt of a signal, signal is the string name of the signal, otherwise null.
59
- // One of the two will always be non-null.
60
34
  child.on('exit', (code) => {
61
35
  resolve({ code, data: stdout });
62
36
  });
63
- // end promise
64
37
  });
65
38
  }
File without changes
package/dracut/export CHANGED
File without changes
File without changes
File without changes
package/dracut/mkisofs CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/dracut/sbin2bin CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/eui/eui-start.sh CHANGED
File without changes
Binary file