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
package/package.json CHANGED
@@ -1,133 +1,127 @@
1
1
  {
2
- "name": "penguins-eggs",
3
- "shortName": "eggs",
4
- "description": "A remaster system tool, compatible with Arch, Debian, Devuan, Ubuntu and others",
5
- "version": "25.11.12",
6
- "author": "Piero Proietti",
7
- "bin": {
8
- "eggs": "./bin/run.js"
9
- },
10
- "bugs": "https://github.com/pieroproietti/penguins-eggs/issues",
11
- "dependencies": {
12
- "@oclif/core": "^4.8.0",
13
- "@oclif/plugin-autocomplete": "^3.2.39",
14
- "@oclif/plugin-help": "^6.2.35",
15
- "@oclif/plugin-version": "^2.2.36",
16
- "@types/express": "^5.0.5",
17
- "ansis": "^4.2.0",
18
- "axios": "^1.13.2",
19
- "chalk": "^5.6.2",
20
- "cli-cursor": "^5.0.0",
21
- "debug": "^4.4.3",
22
- "express": "^5.1.0",
23
- "ink": "^5",
24
- "ink-progress-bar": "^3.0.0",
25
- "ink-spinner": "^5.0.0",
26
- "inquirer": "^12.11.0",
27
- "js-yaml": "^4.1.1",
28
- "mustache": "^4.2.0",
29
- "netmask": "^2.0.2",
30
- "react": "^18.3.1",
31
- "read": "^4.1.0",
32
- "shelljs": "^0.10.0",
33
- "systeminformation": "^5.27.11",
34
- "tftp": "^0.1.2",
35
- "ws": "^8.18.3"
36
- },
37
- "devDependencies": {
38
- "@oclif/prettier-config": "^0.2.1",
39
- "@oclif/test": "^4.1.14",
40
- "@types/chai": "^5.2.3",
41
- "@types/debug": "^4.1.12",
42
- "@types/glob": "^9.0.0",
43
- "@types/inquirer": "^9.0.9",
44
- "@types/js-yaml": "^4.0.9",
45
- "@types/mocha": "^10.0.8",
46
- "@types/mustache": "^4.2.6",
47
- "@types/netmask": "^2.0.5",
48
- "@types/node": "^22.15.30",
49
- "@types/react": "^18.3.18",
50
- "@types/read": "^0.0.32",
51
- "@types/shelljs": "^0.8.17",
52
- "@types/ws": "^8.18.1",
53
- "chai": "^6.2.1",
54
- "eslint": "^9.39.1",
55
- "eslint-config-oclif": "^6.0.116",
56
- "eslint-config-prettier": "^10.1.8",
57
- "glob": "^11.0.3",
58
- "mocha": "^11.7.5",
59
- "oclif": "^4.22.44",
60
- "perrisbrewery": "^25.9.16",
61
- "prettier": "^3.6.2",
62
- "shx": "^0.4.0",
63
- "ts-node": "10.9.2",
64
- "ts-prune": "^0.10.3",
65
- "typescript": "^5.9.3"
66
- },
67
- "engines": {
68
- "node": ">=16.0.0"
69
- },
70
- "files": [
71
- ".oclif.manifest.json",
72
- "/addons",
73
- "/assets",
74
- "/bin",
75
- "/conf",
76
- "/dist",
77
- "/dracut",
78
- "/eui",
79
- "/initramfs-tools",
80
- "/manpages",
81
- "/mkinitcpio",
82
- "/mkinitfs",
83
- "/perrisbrewery",
84
- "/scripts"
2
+ "name": "penguins-eggs",
3
+ "shortName": "eggs",
4
+ "description": "A remaster system tool, compatible with Almalinux, Alpine, Arch, Debian, Devuan, Fedora, Manjaro, Opensuse, Ubuntu and derivatives",
5
+ "version": "25.11.29",
6
+ "author": "Piero Proietti",
7
+ "bin": {
8
+ "eggs": "./bin/run.js"
9
+ },
10
+ "bugs": "https://github.com/pieroproietti/penguins-eggs/issues",
11
+ "dependencies": {
12
+ "@oclif/core": "^4.8.0",
13
+ "@oclif/plugin-autocomplete": "^3.2.39",
14
+ "@oclif/plugin-help": "^6.2.36",
15
+ "@oclif/plugin-version": "^2.2.36",
16
+ "@types/express": "^5.0.5",
17
+ "ansis": "^4.2.0",
18
+ "axios": "^1.13.2",
19
+ "chalk": "^5.6.2",
20
+ "cli-cursor": "^5.0.0",
21
+ "debug": "^4.4.3",
22
+ "express": "^5.1.0",
23
+ "ink": "^5",
24
+ "ink-progress-bar": "^3.0.0",
25
+ "ink-spinner": "^5.0.0",
26
+ "inquirer": "^12.11.0",
27
+ "js-yaml": "^4.1.1",
28
+ "mustache": "^4.2.0",
29
+ "netmask": "^2.0.2",
30
+ "react": "^18.3.1",
31
+ "read": "^4.1.0",
32
+ "shelljs": "^0.10.0",
33
+ "systeminformation": "^5.27.11",
34
+ "tftp": "^0.1.2",
35
+ "ws": "^8.18.3"
36
+ },
37
+ "devDependencies": {
38
+ "@oclif/prettier-config": "^0.2.1",
39
+ "@oclif/test": "^4.1.15",
40
+ "@types/chai": "^5.2.3",
41
+ "@types/debug": "^4.1.12",
42
+ "@types/glob": "^9.0.0",
43
+ "@types/inquirer": "^9.0.9",
44
+ "@types/js-yaml": "^4.0.9",
45
+ "@types/mocha": "^10.0.8",
46
+ "@types/mustache": "^4.2.6",
47
+ "@types/netmask": "^2.0.6",
48
+ "@types/node": "^22.15.30",
49
+ "@types/react": "^18.3.18",
50
+ "@types/read": "^0.0.32",
51
+ "@types/shelljs": "^0.8.17",
52
+ "@types/ws": "^8.18.1",
53
+ "chai": "^6.2.1",
54
+ "eslint": "^9.39.1",
55
+ "eslint-config-oclif": "^6.0.119",
56
+ "eslint-config-prettier": "^10.1.8",
57
+ "glob": "^13.0.0",
58
+ "mocha": "^11.7.5",
59
+ "oclif": "^4.22.50",
60
+ "perrisbrewery": "^25.9.16",
61
+ "prettier": "^3.7.2",
62
+ "shx": "^0.4.0",
63
+ "ts-node": "10.9.2",
64
+ "ts-prune": "^0.10.3",
65
+ "typescript": "^5.9.3"
66
+ },
67
+ "engines": {
68
+ "node": ">=16.0.0"
69
+ },
70
+ "files": [
71
+ ".oclif.manifest.json",
72
+ "/addons",
73
+ "/assets",
74
+ "/bin",
75
+ "/conf",
76
+ "/dist",
77
+ "/dracut",
78
+ "/eui",
79
+ "/manpages",
80
+ "/mkinitcpio",
81
+ "/mkinitfs",
82
+ "/perrisbrewery",
83
+ "/scripts"
84
+ ],
85
+ "homepage": "https://penguins-eggs.net",
86
+ "keywords": [
87
+ "oclif",
88
+ "remaster",
89
+ "system"
90
+ ],
91
+ "license": "MIT",
92
+ "main": "dist/index.js",
93
+ "type": "module",
94
+ "oclif": {
95
+ "bin": "eggs",
96
+ "dirname": "penguins-eggs",
97
+ "commands": "./dist/commands",
98
+ "plugins": [
99
+ "@oclif/plugin-help",
100
+ "@oclif/plugin-autocomplete",
101
+ "@oclif/plugin-version"
85
102
  ],
86
- "homepage": "https://penguins-eggs.net",
87
- "keywords": [
88
- "oclif",
89
- "remaster",
90
- "system"
91
- ],
92
- "license": "MIT",
93
- "main": "dist/index.js",
94
- "type": "module",
95
- "oclif": {
96
- "bin": "eggs",
97
- "dirname": "penguins-eggs",
98
- "commands": "./dist/commands",
99
- "plugins": [
100
- "@oclif/plugin-help",
101
- "@oclif/plugin-autocomplete",
102
- "@oclif/plugin-version"
103
- ],
104
- "topicSeparator": " ",
105
- "topics": {
106
- "hello": {
107
- "description": "Say hello to the world and others"
108
- }
109
- }
110
- },
111
- "repository": "pieroproietti/penguins-eggs",
112
- "scripts": {
113
- "_postpack": "shx rm -f oclif.manifest.json",
114
- "_prepack": "oclif manifest && ocl -t linux-x64",
115
- "build": "shx rm -rf dist && tsc -b",
116
- "deb": "shx rm -rf dist && tsc -p . && oclif manifest && pb deb --release $(cat ./release)",
117
- "format": "prettier --write \"+(src|test)/**/*.+(ts|js|json)\"",
118
- "lint": "eslint . --ext .ts",
119
- "manifest": "oclif manifest",
120
- "posttest": "pnpm run lint",
121
- "tarballs": "shx rm -rf dist && tsc -p . && oclif manifest && oclif pack tarballs -t linux-x64 --no-xz -r . && pb tarballs --release $(cat ./release)",
122
- "test": "mocha --forbid-only \"test/**/*.test.ts\"",
123
- "unused": "ts-prune",
124
- "version": "oclif readme && git add README.md"
125
- },
126
- "types": "dist/index.d.ts",
127
- "pnpm": {
128
- "overrides": {
129
- "react": "^18.3.1",
130
- "@types/react": "^18.3.18"
131
- }
103
+ "topicSeparator": " ",
104
+ "topics": {
105
+ "hello": {
106
+ "description": "Say hello to the world and others"
107
+ }
132
108
  }
133
- }
109
+ },
110
+ "repository": "pieroproietti/penguins-eggs",
111
+ "types": "dist/index.d.ts",
112
+ "scripts": {
113
+ "appimage": "pnpm build && ./appimage.sh",
114
+ "build": "pnpm clean && shx rm -rf dist && tsc -p . && oclif manifest",
115
+ "clean": "rm -rf build dist *.AppImage AppDir",
116
+ "deb": "pnpm build && pb deb --release $(cat ./release)",
117
+ "format": "prettier --write \"+(src|test)/**/*.+(ts|js|json)\"",
118
+ "lint": "eslint . --ext .ts",
119
+ "manifest": "oclif manifest",
120
+ "postbuild": "shx cp -r bin dist/",
121
+ "posttest": "pnpm run lint",
122
+ "tarballs": "shx rm -rf dist && tsc -p . && oclif manifest && oclif pack tarballs -t linux-x64 --no-xz -r . && pb tarballs --release $(cat ./release)",
123
+ "test": "mocha --forbid-only \"test/**/*.test.ts\"",
124
+ "unused": "ts-prune",
125
+ "version": "oclif readme && git add README.md"
126
+ }
127
+ }
File without changes
File without changes
File without changes
File without changes
@@ -32,11 +32,6 @@ common:
32
32
  - ipxe
33
33
  - pxelinux
34
34
 
35
- # dependencies arch specific
36
- # arm64: grub-efi-arm64-bin, ipxe, shim-signed, u-boot-tools,
37
- # amd64: grub-pc-bin, grub-efi-ia32-bin, grub-efi-amd64-bin, syslinux-common, ipxe, isolinux, pxelinux, shim-signed
38
- # i386: grub-pc-bin, grub-efi-ia32-bin, syslinux-common, ipxe, isolinux, pxelinux
39
-
40
35
  arch:
41
36
  amd64:
42
37
  - grub-efi-amd64-bin
@@ -8,6 +8,13 @@ eggs is a console utility, in active development, who let you to remaster your s
8
8
 
9
9
  # INSTALL
10
10
 
11
+ penguins-eggs as an AppImage, it can be installed on all supported distributions. Download it from https://github.com/pieroproietti/penguins-eggs/releases, then run the following commands:
12
+ ```
13
+ $ chmod +x {{{packageNameVersioned}}}-x86_64.AppImage
14
+ $ sudo mv /usr/local/bin
15
+ $ sudo eggs setup
16
+ ```
17
+
11
18
  AlpineLinux
12
19
  ```
13
20
  $ doas apk add penguins-eggs@testing
package/scripts/99clean CHANGED
File without changes
package/scripts/_eggs CHANGED
@@ -10,13 +10,22 @@ _eggs_export() {
10
10
  case "$state" in
11
11
  cmds)
12
12
  _values "completions" \
13
- "iso[export iso in the destination host]" \
14
- "pkg[export pkg/iso to the destination host]" \
13
+ "appimage[export penguins-eggs AppImage to the destination host]" \
14
+ "iso[export remastered ISO in the destination host]" \
15
+ "pkg[export penguins-eggs package to the destination host]" \
15
16
  "tarballs[export pkg/iso/tarballs to the destination host]" \
16
17
 
17
18
  ;;
18
19
  args)
19
20
  case $line[1] in
21
+ "appimage")
22
+ _arguments -S \
23
+ "(-c --clean)"{-c,--clean}"[remove old .AppImage before to copy]" \
24
+ "(-h --help)"{-h,--help}"[Show CLI help.]" \
25
+ "(-v --verbose)"{-v,--verbose}"[verbose]" \
26
+ --help"[Show help for command]" \
27
+ "*: :_files"
28
+ ;;
20
29
  "iso")
21
30
  _arguments -S \
22
31
  "(-C --checksum)"{-C,--checksum}"[export checksums md5 and sha256]" \
@@ -49,6 +58,37 @@ _values "completions" \
49
58
  esac
50
59
  }
51
60
 
61
+ _eggs_setup() {
62
+ local context state state_descr line
63
+ typeset -A opt_args
64
+
65
+ _arguments -C "1: :->cmds" "*::arg:->args"
66
+
67
+ case "$state" in
68
+ cmds)
69
+ _values "completions" \
70
+ "install[Automatically check and install system prerequisites]" \
71
+ "purge[Automatically check and install system prerequisites]" \
72
+
73
+ ;;
74
+ args)
75
+ case $line[1] in
76
+ "install")
77
+ _arguments -S \
78
+ --help"[Show help for command]" \
79
+ "*: :_files"
80
+ ;;
81
+ "purge")
82
+ _arguments -S \
83
+ --help"[Show help for command]" \
84
+ "*: :_files"
85
+ ;;
86
+
87
+ esac
88
+ ;;
89
+ esac
90
+ }
91
+
52
92
  _eggs_tools() {
53
93
  local context state state_descr line
54
94
  typeset -A opt_args
@@ -59,7 +99,7 @@ _eggs_tools() {
59
99
  cmds)
60
100
  _values "completions" \
61
101
  "clean[clean system log, apt, etc]" \
62
- "repo[add/remove penguins-eggs-repo]" \
102
+ "repo[add/remove penguins-repos]" \
63
103
  "skel[update skel from home configuration]" \
64
104
  "stat[get statistics from sourceforge]" \
65
105
  "yolk[configure eggs to install without internet]" \
@@ -77,10 +117,10 @@ _values "completions" \
77
117
  ;;
78
118
  "repo")
79
119
  _arguments -S \
80
- "(-a --add)"{-a,--add}"[add penguins-eggs-repo]" \
120
+ "(-a --add)"{-a,--add}"[add penguins-repos]" \
81
121
  "(-h --help)"{-h,--help}"[Show CLI help.]" \
82
122
  "(-n --nointeractive)"{-n,--nointeractive}"[no user interaction]" \
83
- "(-r --remove)"{-r,--remove}"[remove penguins-eggs-repo]" \
123
+ "(-r --remove)"{-r,--remove}"[remove penguins-repos]" \
84
124
  "(-v --verbose)"{-v,--verbose}"[verbose]" \
85
125
  --help"[Show help for command]" \
86
126
  "*: :_files"
@@ -181,22 +221,20 @@ _eggs() {
181
221
  case "$state" in
182
222
  cmds)
183
223
  _values "completions" \
184
- "export[export iso in the destination host]" \
224
+ "export[export penguins-eggs AppImage to the destination host]" \
225
+ "setup[Automatically check and install system prerequisites]" \
185
226
  "tools[clean system log, apt, etc]" \
186
227
  "wardrobe[get warorobe]" \
187
228
  "adapt[adapt monitor resolution for VM only]" \
188
- "analyze[analyze for syncto]" \
189
- "calamares[configure calamares or install or configure it]" \
229
+ "calamares[a GUI system installer - install and configure calamares]" \
190
230
  "config[Configure eggs to run it]" \
191
231
  "cuckoo[PXE start with proxy-dhcp]" \
192
232
  "dad[ask help from daddy - TUI configuration helper]" \
193
- "install[krill: the CLI system installer - the egg became a penguin!]" \
194
- "krill[krill: the CLI system installer - the egg became a penguin!]" \
195
233
  "kill[kill the eggs/free the nest]" \
234
+ "krill[a TUI system installer - install the system]" \
196
235
  "love[the simplest way to get an egg!]" \
197
236
  "mom[ask help from mommy - TUI helper]" \
198
- "pods[eggs pods: build ISOs from containers]" \
199
- "produce[produce a live image from your system whithout your data]" \
237
+ "produce[produce a live image from your system]" \
200
238
  "status[informations about eggs status]" \
201
239
  "update[update the Penguins' eggs tool]" \
202
240
  "autocomplete[Display autocomplete installation instructions.]" \
@@ -209,6 +247,9 @@ _eggs() {
209
247
  export)
210
248
  _eggs_export
211
249
  ;;
250
+ setup)
251
+ _eggs_setup
252
+ ;;
212
253
  tools)
213
254
  _eggs_tools
214
255
  ;;
@@ -221,12 +262,6 @@ _arguments -S \
221
262
  "(-v --verbose)"{-v,--verbose}"[]" \
222
263
  --help"[Show help for command]" \
223
264
  "*: :_files" ;;
224
- analyze)
225
- _arguments -S \
226
- "(-h --help)"{-h,--help}"[Show CLI help.]" \
227
- "(-v --verbose)"{-v,--verbose}"[verbose]" \
228
- --help"[Show help for command]" \
229
- "*: :_files" ;;
230
265
  calamares)
231
266
  _arguments -S \
232
267
  "(-h --help)"{-h,--help}"[Show CLI help.]" \
@@ -263,25 +298,12 @@ _arguments -S \
263
298
  "(-v --verbose)"{-v,--verbose}"[]" \
264
299
  --help"[Show help for command]" \
265
300
  "*: :_files" ;;
266
- install)
301
+ kill)
267
302
  _arguments -S \
268
- "(-b --btrfs)"{-b,--btrfs}"[Format btrfs]" \
269
- "(-c --chroot)"{-c,--chroot}"[chroot before to end]" \
270
- "(-k --crypted)"{-k,--crypted}"[Crypted CLI installation]" \
271
- "(-d --domain)"{-d,--domain}"[Domain name, defult: .local]:file:_files" \
272
- "(-H --halt)"{-H,--halt}"[Halt the system after installation]" \
273
303
  "(-h --help)"{-h,--help}"[Show CLI help.]" \
274
- "(-i --ip)"{-i,--ip}"[hostname as ip, eg: ip-192-168-1-33]" \
304
+ "(-i --isos)"{-i,--isos}"[erase all ISOs on remote mount]" \
275
305
  "(-n --nointeractive)"{-n,--nointeractive}"[no user interaction]" \
276
- "(-N --none)"{-N,--none}"[Swap none: 256M]" \
277
- "(-p --pve)"{-p,--pve}"[Proxmox VE install]" \
278
- "(-r --random)"{-r,--random}"[Add random to hostname, eg: colibri-ay412dt]" \
279
- "(-R --replace)"{-R,--replace}"[Replace partition. eg: --replace /dev/sda3]:file:_files" \
280
- "(-s --small)"{-s,--small}"[Swap small: RAM]" \
281
- "(-S --suspend)"{-S,--suspend}"[Swap suspend: RAM x 2]" \
282
- "(-t --testing)"{-t,--testing}"[Just testing krill]" \
283
- "(-u --unattended)"{-u,--unattended}"[Unattended installation]" \
284
- "(-v --verbose)"{-v,--verbose}"[Verbose]" \
306
+ "(-v --verbose)"{-v,--verbose}"[verbose]" \
285
307
  --help"[Show help for command]" \
286
308
  "*: :_files" ;;
287
309
  krill)
@@ -305,14 +327,6 @@ _arguments -S \
305
327
  "(-v --verbose)"{-v,--verbose}"[Verbose]" \
306
328
  --help"[Show help for command]" \
307
329
  "*: :_files" ;;
308
- kill)
309
- _arguments -S \
310
- "(-h --help)"{-h,--help}"[Show CLI help.]" \
311
- "(-i --isos)"{-i,--isos}"[erase all ISOs on remote mount]" \
312
- "(-n --nointeractive)"{-n,--nointeractive}"[no user interaction]" \
313
- "(-v --verbose)"{-v,--verbose}"[verbose]" \
314
- --help"[Show help for command]" \
315
- "*: :_files" ;;
316
330
  love)
317
331
  _arguments -S \
318
332
  "(-h --help)"{-h,--help}"[Show CLI help.]" \
@@ -329,11 +343,6 @@ _arguments -S \
329
343
  "(-h --help)"{-h,--help}"[Show CLI help.]" \
330
344
  --help"[Show help for command]" \
331
345
  "*: :_files" ;;
332
- pods)
333
- _arguments -S \
334
- "(-h --help)"{-h,--help}"[Show CLI help.]" \
335
- --help"[Show help for command]" \
336
- "*: :_files" ;;
337
346
  produce)
338
347
  _arguments -S \
339
348
  "*"--addons"[addons to be used: adapt, pve, rsupport]:file:_files" \
package/scripts/adapt.sh CHANGED
File without changes
File without changes
package/scripts/eggs.bash CHANGED
@@ -12,21 +12,21 @@ _eggs_autocomplete()
12
12
 
13
13
  local commands="
14
14
  adapt --help --verbose
15
- analyze --help --verbose
16
15
  calamares --help --install --nointeractive --policies --release --remove --theme --verbose
17
16
  config --clean --help --nointeractive --verbose
18
17
  cuckoo --help --verbose
19
18
  dad --clean --default --file --nointeractive --help --verbose
19
+ export:appimage --clean --help --verbose
20
20
  export:iso --checksum --clean --help --verbose
21
21
  export:pkg --all --clean --help --verbose
22
22
  export:tarballs --clean --help --verbose
23
- install --btrfs --chroot --crypted --domain --halt --help --ip --nointeractive --none --pve --random --replace --small --suspend --testing --unattended --verbose
24
- krill --btrfs --chroot --crypted --domain --halt --help --ip --nointeractive --none --pve --random --replace --small --suspend --testing --unattended --verbose
25
23
  kill --help --isos --nointeractive --verbose
24
+ krill --btrfs --chroot --crypted --domain --halt --help --ip --nointeractive --none --pve --random --replace --small --suspend --testing --unattended --verbose
26
25
  love --help --verbose --hidden --nointeractive --clone --homecrypt --fullcrypt
27
26
  mom --help
28
- pods --help
29
27
  produce --addons --basename --clone --homecrypt --fullcrypt --excludes --help --hidden --kernel --links --max --noicon --nointeractive --pendrive --prefix --release --script --standard --theme --includeRootHome --verbose --yolk
28
+ setup:install
29
+ setup:purge
30
30
  status --help --verbose
31
31
  tools:clean --help --nointeractive --verbose
32
32
  tools:repo --add --help --nointeractive --remove --verbose
File without changes
package/scripts/mom.sh CHANGED
File without changes
File without changes
File without changes
package/scripts/resy CHANGED
File without changes
@@ -1,95 +0,0 @@
1
- /**
2
- * ./src/commands/analyze.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import { Command, Flags } from '@oclif/core';
9
- import fs, { constants } from 'node:fs';
10
- import { access } from 'node:fs/promises';
11
- import si from 'systeminformation';
12
- import Users from '../classes/users.js';
13
- import Utils from '../classes/utils.js';
14
- export default class Analyze extends Command {
15
- static description = 'analyze for syncto';
16
- static examples = ['sudo eggs analyze'];
17
- static flags = {
18
- help: Flags.help({ char: 'h' }),
19
- verbose: Flags.boolean({ char: 'v', description: 'verbose' })
20
- };
21
- config_file = '/etc/penguins-eggs.d/eggs.yaml';
22
- snapshot_dir = '';
23
- work_dir = {};
24
- /**
25
- * fill
26
- */
27
- async fill() {
28
- try {
29
- const usersArray = [];
30
- await access('/etc/passwd', constants.R_OK | constants.W_OK);
31
- const passwd = fs.readFileSync('/etc/passwd', 'utf8').split('\n');
32
- for (const element of passwd) {
33
- const line = element.split(':');
34
- const users = new Users(line[0], line[1], line[2], line[3], line[4], line[5], line[6]);
35
- await users.getValues();
36
- if (users.password !== undefined) {
37
- usersArray.push(users);
38
- }
39
- }
40
- return usersArray;
41
- }
42
- catch {
43
- console.error("can't read /etc/passwd");
44
- process.exit(1);
45
- }
46
- }
47
- async run() {
48
- Utils.titles(this.id + ' ' + this.argv);
49
- const { flags } = await this.parse(Analyze);
50
- let verbose = false;
51
- if (flags.verbose) {
52
- verbose = true;
53
- }
54
- Utils.warning('eggs will analyze your system, and get users data');
55
- const echo = Utils.setEcho(verbose);
56
- let totalSize = 0;
57
- if (Utils.isRoot(this.id)) {
58
- const audio = await si.audio();
59
- const bios = await si.bios();
60
- const blockDevices = await si.blockDevices();
61
- const chassis = await si.chassis();
62
- const cpu = await si.cpu();
63
- const diskLayout = await si.diskLayout();
64
- const mem = await si.mem();
65
- const usb = await si.usb();
66
- console.log(`chassis: ${chassis.manufacturer} model: ${chassis.manufacturer}`);
67
- console.log(`bios vendor: ${bios.vendor} version: ${bios.version} revision: ${bios.revision}`);
68
- console.log(`processor: ${cpu.brand} core: ${cpu.cores} `);
69
- if (diskLayout[0].device !== undefined) {
70
- console.log(`disk0: ${diskLayout[0].device}`);
71
- }
72
- if (diskLayout[1] !== undefined) {
73
- console.log(`disk1: ${diskLayout[1].device}`);
74
- }
75
- if (diskLayout[2] !== undefined) {
76
- console.log(`disk1: ${diskLayout[2].device}`);
77
- }
78
- // console.log(`name: ${blockDevices[0].name} fs: ${blockDevices[0].fsType}`)
79
- // console.log(`name: ${blockDevices[1].name} fs: ${blockDevices[1].fsType}`)
80
- // console.log(`name: ${blockDevices[2].name} fs: ${blockDevices[2].fsType}`)
81
- // console.log(`name: ${blockDevices[3].name} fs: ${blockDevices[3].fsType}`)
82
- // console.log(`usb: ${usb[0].name}`)
83
- const users = await this.fill();
84
- for (let i = 0; i < users.length; i++)
85
- if (users[i].saveIt) {
86
- console.log(`user: ${users[i].login} \thome: ${users[i].home.padEnd(16)} \tsize: ${Utils.formatBytes(users[i].size)} \tBytes: ${users[i].size} `);
87
- totalSize += users[i].size;
88
- }
89
- console.log(`Total\t\t\t\t\tSize: ${Utils.formatBytes(totalSize)} \tBytes: ${totalSize}`);
90
- }
91
- else {
92
- Utils.useRoot(this.id);
93
- }
94
- }
95
- }
@@ -1,22 +0,0 @@
1
- /**
2
- * ./src/commands/cuckoo.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import { Command } from '@oclif/core';
9
- export default class Pods extends Command {
10
- static args: {
11
- distro: import("@oclif/core/interfaces").Arg<string | undefined, Record<string, unknown>>;
12
- };
13
- static description: string;
14
- static examples: string[];
15
- static flags: {
16
- help: import("@oclif/core/interfaces").BooleanFlag<void>;
17
- };
18
- /**
19
- *
20
- */
21
- run(): Promise<void>;
22
- }