penguins-eggs 10.0.60 → 10.1.1

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 (138) hide show
  1. package/.oclif.manifest.json +62 -1
  2. package/README.md +145 -75
  3. package/addons/eggs/theme/calamares/modules/{_users.yml → users.yml} +3 -3
  4. package/addons/eggs/theme/livecd/grub.main.full.cfg +1 -1
  5. package/addons/eggs/theme/livecd/grub.main.simple.cfg +1 -1
  6. package/conf/derivatives.yaml +4 -3
  7. package/conf/derivatives_fedora.yaml +6 -0
  8. package/conf/distros/alpine/calamares/modules/users.yml +3 -3
  9. package/conf/distros/bionic/calamares/calamares-modules/grubcfg/grubcfg.yml +1 -1
  10. package/conf/distros/bionic/calamares/modules/users.yml +3 -3
  11. package/conf/distros/buster/calamares/modules/users.yml +4 -3
  12. package/conf/distros/fedora/calamares/modules/users.yml +3 -3
  13. package/conf/distros/noble/calamares/modules/focal-jammy/users.yml +3 -3
  14. package/conf/distros/noble/calamares/modules/users.yml +1 -0
  15. package/conf/distros/opensuse/calamares/modules/users.yml +3 -3
  16. package/conf/distros/rolling/calamares/modules/users.yml +3 -3
  17. package/conf/eggs.yaml +1 -1
  18. package/conf/love.yaml +4 -4
  19. package/dist/classes/compressors.js +1 -1
  20. package/dist/classes/distro.d.ts +27 -3
  21. package/dist/classes/distro.js +361 -289
  22. package/dist/classes/ovary.d/bind-live-fs.js +22 -30
  23. package/dist/classes/ovary.d/edit-live-fs.d.ts +1 -0
  24. package/dist/classes/ovary.d/edit-live-fs.js +9 -13
  25. package/dist/classes/ovary.d/fertilization.js +6 -1
  26. package/dist/classes/ovary.d/initrd.js +11 -15
  27. package/dist/classes/ovary.d/kernel-copy.js +2 -16
  28. package/dist/classes/ovary.d/make-efi.js +8 -5
  29. package/dist/classes/ovary.d/make-squashfs.d.ts +1 -1
  30. package/dist/classes/ovary.d/make-squashfs.js +17 -24
  31. package/dist/classes/ovary.d/merged.d.ts +9 -13
  32. package/dist/classes/ovary.d/merged.js +38 -48
  33. package/dist/classes/ovary.d/produce.d.ts +1 -1
  34. package/dist/classes/ovary.d/produce.js +38 -32
  35. package/dist/classes/ovary.d/syslinux.js +4 -4
  36. package/dist/classes/ovary.d/user-create-live.js +12 -5
  37. package/dist/classes/ovary.d.ts +8 -3
  38. package/dist/classes/ovary.js +8 -3
  39. package/dist/classes/pacman.d/archlinux.js +1 -5
  40. package/dist/classes/pacman.js +2 -1
  41. package/dist/classes/systemctl.d.ts +1 -1
  42. package/dist/classes/systemctl.js +1 -1
  43. package/dist/classes/tailor.js +2 -1
  44. package/dist/classes/utils.d/architecture.d.ts +41 -0
  45. package/dist/classes/utils.d/architecture.js +87 -0
  46. package/dist/classes/utils.d/console-output.d.ts +26 -0
  47. package/dist/classes/utils.d/console-output.js +46 -0
  48. package/dist/classes/utils.d/filesystem.d.ts +53 -0
  49. package/dist/classes/utils.d/filesystem.js +152 -0
  50. package/dist/classes/utils.d/formatters.d.ts +32 -0
  51. package/dist/classes/utils.d/formatters.js +64 -0
  52. package/dist/classes/utils.d/kernel.d.ts +83 -0
  53. package/dist/classes/utils.d/kernel.js +288 -0
  54. package/dist/classes/utils.d/network.d.ts +43 -0
  55. package/dist/classes/utils.d/network.js +133 -0
  56. package/dist/classes/utils.d/package-info.d.ts +55 -0
  57. package/dist/classes/utils.d/package-info.js +137 -0
  58. package/dist/classes/utils.d/snapshot.d.ts +44 -0
  59. package/dist/classes/utils.d/snapshot.js +102 -0
  60. package/dist/classes/utils.d/system.d.ts +63 -0
  61. package/dist/classes/utils.d/system.js +200 -0
  62. package/dist/classes/utils.d/user-interaction.d.ts +39 -0
  63. package/dist/classes/utils.d/user-interaction.js +104 -0
  64. package/dist/classes/utils.d.ts +90 -322
  65. package/dist/classes/utils.js +105 -1013
  66. package/dist/commands/dad.d.ts +1 -0
  67. package/dist/commands/dad.js +1 -0
  68. package/dist/commands/export/pkg.js +6 -6
  69. package/dist/commands/export/tarballs.js +11 -16
  70. package/dist/commands/kill.js +1 -1
  71. package/dist/commands/love.d.ts +1 -0
  72. package/dist/commands/love.js +21 -7
  73. package/dist/commands/pods.d.ts +22 -0
  74. package/dist/commands/pods.js +92 -0
  75. package/dist/commands/produce.d.ts +1 -0
  76. package/dist/commands/produce.js +21 -1
  77. package/dist/commands/update.js +2 -2
  78. package/dist/index.d.ts +6 -52
  79. package/dist/index.js +6 -145
  80. package/dist/krill/classes/krill_enums.d.ts +14 -1
  81. package/dist/krill/classes/krill_enums.js +16 -1
  82. package/dist/krill/classes/prepare.d/partitions.js +3 -3
  83. package/dist/krill/classes/prepare.d.ts +46 -21
  84. package/dist/krill/classes/prepare.js +187 -187
  85. package/dist/krill/classes/sequence.d/add_user.js +21 -3
  86. package/dist/krill/classes/sequence.d/partition.js +2 -2
  87. package/dist/krill/classes/sequence.d.ts +18 -21
  88. package/dist/krill/classes/sequence.js +156 -423
  89. package/dist/krill/components/information.js +13 -7
  90. package/dist/{krill/lib → lib}/kill_me_softly.js +2 -2
  91. package/dist/penguins-eggs_10.1.1-0_amd64.deb +0 -0
  92. package/dist/penguins-eggs_10.1.1-0_amd64.deb.sha256 +1 -0
  93. package/package.json +32 -27
  94. package/perrisbrewery/scripts/postinst +98 -0
  95. package/perrisbrewery/scripts/postrm +82 -0
  96. package/perrisbrewery/scripts/preinst +40 -0
  97. package/perrisbrewery/scripts/prerm +47 -0
  98. package/perrisbrewery/template/control.template +17 -0
  99. package/perrisbrewery/template/dependencies-bionic.yaml +33 -0
  100. package/perrisbrewery/template/dependencies.yaml +37 -0
  101. package/perrisbrewery/template/man.template.md +110 -0
  102. package/pods/README.md +14 -0
  103. package/pods/almalinux.sh +10 -0
  104. package/pods/archlinux.sh +10 -0
  105. package/pods/ci/README.md +5 -0
  106. package/pods/ci/kernel-overlay-install.sh +114 -0
  107. package/pods/ci/minimal/almalinux-container2host.sh +165 -0
  108. package/pods/ci/minimal/archlinux-container2host.sh +125 -0
  109. package/pods/ci/minimal/debian-container2host.sh +173 -0
  110. package/pods/ci/minimal/fedora-container2host.sh +170 -0
  111. package/pods/ci/minimal/manjaro-container2host.sh +123 -0
  112. package/pods/ci/minimal/opensuse-container2host.sh +143 -0
  113. package/pods/ci/penguins-eggs-execute.sh +22 -0
  114. package/pods/ci/penguins-eggs-install.sh +115 -0
  115. package/pods/ci/run +34 -0
  116. package/pods/ci/run-on-almalinux.sh +50 -0
  117. package/pods/ci/run-on-archlinux.sh +64 -0
  118. package/pods/ci/run-on-debian.sh +51 -0
  119. package/pods/ci/run-on-devuan.sh +48 -0
  120. package/pods/ci/run-on-fedora.sh +51 -0
  121. package/pods/ci/run-on-manjaro.sh +61 -0
  122. package/pods/ci/run-on-opensuse.sh +58 -0
  123. package/pods/ci/run-on-rockylinux.sh +51 -0
  124. package/pods/ci/run-on-ubuntu.sh +52 -0
  125. package/pods/debian.sh +23 -0
  126. package/pods/devuan.sh +26 -0
  127. package/pods/fedora.sh +12 -0
  128. package/pods/lmde.sh +22 -0
  129. package/pods/manjaro.sh +10 -0
  130. package/pods/opensuse.sh +12 -0
  131. package/pods/podman.command.sh +85 -0
  132. package/pods/rocky.sh +12 -0
  133. package/pods/run-build-packages-debs.sh +45 -0
  134. package/pods/run-create-debs.sh +23 -0
  135. package/pods/ubuntu.sh +24 -0
  136. package/scripts/_eggs +14 -5
  137. package/scripts/eggs.bash +5 -4
  138. /package/dist/{krill/lib → lib}/kill_me_softly.d.ts +0 -0
@@ -8,9 +8,9 @@ if loadfont $prefix/font.pf2 ; then
8
8
  insmod video_bochs
9
9
  insmod video_cirrus
10
10
  insmod gfxterm
11
+ insmod gfxterm_background
11
12
  insmod jpeg
12
13
  insmod png
13
- terminal_output gfxterm
14
14
  fi
15
15
 
16
16
  set theme=/boot/grub/theme.cfg
@@ -8,9 +8,9 @@ if loadfont $prefix/font.pf2 ; then
8
8
  insmod video_bochs
9
9
  insmod video_cirrus
10
10
  insmod gfxterm
11
+ insmod gfxterm_background
11
12
  insmod jpeg
12
13
  insmod png
13
- terminal_output gfxterm
14
14
  fi
15
15
 
16
16
  set theme=/boot/grub/theme.cfg
@@ -1,6 +1,6 @@
1
1
  # Penguins' eggs
2
2
  #
3
- # distros.yaml
3
+ # derivatives debian/devuan/ubuntu/arch
4
4
  ---
5
5
  #
6
6
  # DEBIAN
@@ -108,10 +108,13 @@
108
108
  family: debian
109
109
  ids:
110
110
  - oracular # Ubuntu oracular 24.10
111
+ - plucky # Ubuntu 25.04
112
+ # others
111
113
  - abuntu # Abuntu
112
114
  - devel # Rhino
113
115
  - wilma # Linuxmint 22
114
116
  - xia # Linuxmint 22.1
117
+ - nexalinux # Nexa LInux
115
118
 
116
119
  - id:
117
120
  #
@@ -131,5 +134,3 @@
131
134
 
132
135
  # Manjaro
133
136
  - yonada
134
-
135
-
@@ -0,0 +1,6 @@
1
+ # derivatives from Fedora, notare la Maiuscola
2
+ ---
3
+ - Almalinux
4
+ - Nobara
5
+ - Rocky
6
+ - Ultramarine
@@ -10,9 +10,9 @@ defaultGroups:
10
10
  - video
11
11
  - plugdev
12
12
  - netdev
13
- - lpadmin
14
- - scanner
15
- - bluetooth
13
+ # lpadmin
14
+ # scanner
15
+ # bluetooth
16
16
  autologinGroup: autologin
17
17
  sudoersGroup: sudo
18
18
  setRootPassword: true
@@ -1,5 +1,5 @@
1
1
  # Ubuntu bionic
2
- # Aggiunto per correggere errore di splash
2
+ # Aggiunto per correggsre errore di splash
3
3
  #
4
4
  # SPDX-FileCopyrightText: no
5
5
  # SPDX-License-Identifier: CC0-1.0
@@ -11,9 +11,9 @@ defaultGroups:
11
11
  - video
12
12
  - plugdev
13
13
  - netdev
14
- - lpadmin
15
- - scanner
16
- - bluetooth
14
+ # lpadmin
15
+ # scanner
16
+ # bluetooth
17
17
  autologinGroup: autologin
18
18
  sudoersGroup: sudo
19
19
  setRootPassword: false
@@ -10,9 +10,10 @@ defaultGroups:
10
10
  - video
11
11
  - plugdev
12
12
  - netdev
13
- - lpadmin
14
- - scanner
15
- - bluetooth
13
+ # www-data
14
+ # lpadmin
15
+ # scanner
16
+ # bluetooth
16
17
  autologinGroup: autologin
17
18
  sudoersGroup: sudo
18
19
  setRootPassword: true
@@ -10,9 +10,9 @@ defaultGroups:
10
10
  - video
11
11
  - plugdev
12
12
  - netdev
13
- - lpadmin
14
- - scanner
15
- - bluetooth
13
+ # lpadmin
14
+ # scanner
15
+ # bluetooth
16
16
  autologinGroup: autologin
17
17
  sudoersGroup: sudo
18
18
  setRootPassword: true
@@ -10,9 +10,9 @@ defaultGroups:
10
10
  - video
11
11
  - plugdev
12
12
  - netdev
13
- - lpadmin
14
- - scanner
15
- - bluetooth
13
+ # lpadmin
14
+ # scanner
15
+ # bluetooth
16
16
  autologinGroup: autologin
17
17
  sudoersGroup: sudo
18
18
  setRootPassword: false
@@ -13,6 +13,7 @@ defaultGroups:
13
13
  must_exist: false
14
14
  system: true
15
15
  - sudo
16
+ # www-data
16
17
  passwordRequirements:
17
18
  minLength: 1
18
19
  maxLength: -1
@@ -10,9 +10,9 @@ defaultGroups:
10
10
  - video
11
11
  - plugdev
12
12
  - netdev
13
- - lpadmin
14
- - scanner
15
- - bluetooth
13
+ # lpadmin
14
+ # scanner
15
+ # bluetooth
16
16
  autologinGroup: autologin
17
17
  sudoersGroup: sudo
18
18
  setRootPassword: true
@@ -11,9 +11,9 @@ defaultGroups:
11
11
  - video
12
12
  - plugdev
13
13
  - netdev
14
- - lpadmin
15
- - scanner
16
- - bluetooth
14
+ # lpadmin
15
+ # scanner
16
+ # bluetooth
17
17
  autologinGroup: autologin
18
18
  sudoersGroup: wheel
19
19
  setRootPassword: true
package/conf/eggs.yaml CHANGED
@@ -46,7 +46,7 @@ compression: xz
46
46
  ssh_pass: false
47
47
 
48
48
  # timezone
49
- timezone: Europe/Rome
49
+ timezone: America/New_York
50
50
 
51
51
  # it's still used?
52
52
  pmount_fixed: false
package/conf/love.yaml CHANGED
@@ -1,8 +1,8 @@
1
1
  # Penguins' eggs
2
2
  # love.yaml
3
3
  ---
4
- - sudo eggs kill
5
- - sudo eggs dad --default
6
- - sudo eggs tools clean
7
- - sudo eggs produce --pendrive --addons adapt
4
+ - eggs kill
5
+ - eggs dad --default
6
+ - eggs tools clean
7
+ - eggs produce --pendrive --addons adapt
8
8
 
@@ -86,7 +86,7 @@ export default class Compressors {
86
86
  */
87
87
  async check(compressor) {
88
88
  let result = false;
89
- const { stderr } = shx.exec('mksquashfs ' + this.source + ' ' + this.dest + ' -comp ' + compressor + ' -ef ' + this.dest, { silent: true });
89
+ const { stderr } = shx.exec('mksquashfs ' + this.source + ' ' + this.dest + ' -comp ' + compressor + ' -no-xattrs -ef ' + this.dest, { silent: true });
90
90
  if (stderr === '') {
91
91
  result = true;
92
92
  }
@@ -1,5 +1,5 @@
1
1
  /**
2
- * penguins-eggs
2
+ * penguins-eggs - Refactored distros.ts
3
3
  * class: distro.ts
4
4
  * author: Piero Proietti
5
5
  * email: piero.proietti@gmail.com
@@ -7,7 +7,7 @@
7
7
  */
8
8
  import { IDistro } from '../interfaces/index.js';
9
9
  /**
10
- * Classe
10
+ * Main Distro class - Refactored
11
11
  */
12
12
  declare class Distro implements IDistro {
13
13
  bugReportUrl: string;
@@ -25,8 +25,32 @@ declare class Distro implements IDistro {
25
25
  syslinuxPath: string;
26
26
  usrLibPath: string;
27
27
  /**
28
- * Costruttore
28
+ * Constructor - Now much cleaner and focused
29
29
  */
30
30
  constructor();
31
+ /**
32
+ * Initialize with default values
33
+ */
34
+ private initializeDefaults;
35
+ /**
36
+ * Main configuration logic
37
+ */
38
+ private configure;
39
+ /**
40
+ * Apply family-based configuration
41
+ */
42
+ private applyFamilyConfig;
43
+ /**
44
+ * Apply custom configuration from derivatives
45
+ */
46
+ private applyCustomConfig;
47
+ /**
48
+ * Apply codename-specific configurations
49
+ */
50
+ private applyCodenameConfig;
51
+ /**
52
+ * Handle unknown distribution
53
+ */
54
+ private handleUnknownDistro;
31
55
  }
32
56
  export default Distro;