penguins-eggs 9.1.37 → 9.2.4

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 (153) hide show
  1. package/README.md +148 -170
  2. package/addons/eggs/adapt/applications/eggs-adapt.desktop +0 -0
  3. package/addons/eggs/adapt/bin/adapt +0 -0
  4. package/addons/eggs/ichoice/bin/eggs-ichoice.sh +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-debian.desktop +0 -0
  8. package/addons/eggs/theme/livecd/isolinux.theme.cfg +36 -41
  9. package/addons/neon/theme/applications/install-debian.desktop +0 -0
  10. package/addons/telos/theme/applications/install-debian.desktop +0 -0
  11. package/addons/ufficiozero/theme/applications/install-debian.desktop +0 -0
  12. package/addons/waydroid/theme/applications/install-debian.desktop +0 -0
  13. package/assets/calamares/install-debian +0 -0
  14. package/assets/penguins-eggs.desktop +0 -0
  15. package/assets/penguins-krill.desktop +0 -0
  16. package/assets/penguins-links-add.desktop +0 -0
  17. package/assets/penguins-live-installer.desktop +0 -0
  18. package/bin/dev +0 -0
  19. package/conf/distros/bionic/calamares/calamares-modules/after-bootloader/after-bootloader.sh +0 -0
  20. package/conf/distros/bionic/calamares/calamares-modules/before-bootloader/before-bootloader.sh +0 -0
  21. package/conf/distros/bionic/calamares/calamares-modules/before-bootloader-mkdirs/before-bootloader-mkdirs.sh +0 -0
  22. package/conf/distros/bionic/calamares/calamares-modules/bug/bug.sh +0 -0
  23. package/conf/distros/bionic/calamares/calamares-modules/grubcfg/main.py +0 -0
  24. package/conf/distros/bionic/calamares/settings.yml +2 -2
  25. package/conf/distros/buster/calamares/calamares-modules/cleanup/cleanup.sh +0 -0
  26. package/conf/distros/buster/calamares/calamares-modules/dpkg-unsafe-io/dpkg-unsafe-io.sh +0 -0
  27. package/conf/distros/buster/calamares/calamares-modules/sources-yolk/sources-yolk.sh +0 -0
  28. package/conf/distros/buster/calamares/settings.yml +2 -2
  29. package/conf/distros/focal/calamares/calamares-modules/automirror/main.py +0 -0
  30. package/conf/distros/focal/calamares/settings.yml +2 -2
  31. package/conf/distros/rolling/calamares/modules/machineid.yml +4 -0
  32. package/conf/distros/rolling/calamares/modules/packages.yml +1 -1
  33. package/conf/distros/rolling/calamares/modules/shellprocess_removelink.yml +6 -0
  34. package/conf/distros/rolling/calamares/settings.yml +4 -11
  35. package/conf/eggs.yaml +41 -73
  36. package/conf/exclude.list +1 -0
  37. package/conf/krill.yaml +38 -0
  38. package/lib/classes/bleach.js +6 -4
  39. package/lib/classes/daddy.d.ts +2 -2
  40. package/lib/classes/daddy.js +2 -1
  41. package/lib/classes/distro.d.ts +2 -0
  42. package/lib/classes/distro.js +10 -0
  43. package/lib/classes/family/archlinux.js +8 -4
  44. package/lib/classes/incubation/distros/bionic.d.ts +1 -1
  45. package/lib/classes/incubation/distros/bionic.js +1 -1
  46. package/lib/classes/incubation/distros/buster.d.ts +1 -1
  47. package/lib/classes/incubation/distros/buster.js +1 -1
  48. package/lib/classes/incubation/distros/focal.d.ts +1 -1
  49. package/lib/classes/incubation/distros/focal.js +1 -1
  50. package/lib/classes/incubation/distros/jessie.d.ts +1 -1
  51. package/lib/classes/incubation/distros/jessie.js +1 -1
  52. package/lib/classes/incubation/distros/rolling.d.ts +3 -3
  53. package/lib/classes/incubation/distros/rolling.js +4 -5
  54. package/lib/classes/incubation/fisherman-helper/packages.d.ts +4 -0
  55. package/lib/classes/incubation/fisherman-helper/packages.js +9 -16
  56. package/lib/classes/incubation/fisherman.d.ts +1 -1
  57. package/lib/classes/incubation/fisherman.js +24 -10
  58. package/lib/classes/incubation/incubator.js +26 -22
  59. package/lib/classes/ovary.d.ts +2 -1
  60. package/lib/classes/ovary.js +50 -20
  61. package/lib/classes/pacman.js +8 -7
  62. package/lib/classes/pxe.d.ts +42 -0
  63. package/lib/classes/pxe.js +242 -0
  64. package/lib/classes/settings.d.ts +3 -3
  65. package/lib/classes/settings.js +2 -1
  66. package/lib/classes/tools.d.ts +2 -2
  67. package/lib/classes/utils.d.ts +2 -2
  68. package/lib/classes/utils.js +4 -4
  69. package/lib/commands/calamares.js +1 -0
  70. package/lib/commands/{remove.d.ts → cuckoo.d.ts} +7 -4
  71. package/lib/commands/cuckoo.js +69 -0
  72. package/lib/commands/{krill.d.ts → install.d.ts} +2 -3
  73. package/lib/commands/install.js +53 -0
  74. package/lib/commands/produce.d.ts +1 -0
  75. package/lib/commands/produce.js +8 -10
  76. package/lib/commands/{info.d.ts → status.d.ts} +1 -1
  77. package/lib/commands/{info.js → status.js} +5 -5
  78. package/lib/commands/syncfrom.js +1 -1
  79. package/lib/commands/syncto.js +1 -1
  80. package/lib/components/summary.d.ts +6 -1
  81. package/lib/components/summary.js +25 -8
  82. package/lib/components/users.js +3 -4
  83. package/lib/interfaces/i-config-tools.d.ts +1 -1
  84. package/lib/interfaces/i-distro.d.ts +2 -0
  85. package/lib/interfaces/{i-config.d.ts → i-eggs-config.d.ts} +2 -4
  86. package/lib/interfaces/{i-config.js → i-eggs-config.js} +0 -0
  87. package/lib/interfaces/i-krill-config.d.ts +26 -0
  88. package/lib/interfaces/i-krill-config.js +2 -0
  89. package/lib/interfaces/i-packages.d.ts +6 -9
  90. package/lib/interfaces/i-packages.js +3 -0
  91. package/lib/interfaces/index.d.ts +1 -1
  92. package/lib/krill/krill-prepare.d.ts +8 -4
  93. package/lib/krill/krill-prepare.js +166 -36
  94. package/lib/krill/krill-sequence.d.ts +6 -3
  95. package/lib/krill/krill-sequence.js +31 -14
  96. package/lib/krill/modules/fstab.d.ts +5 -0
  97. package/lib/krill/modules/fstab.js +5 -0
  98. package/lib/krill/modules/grubcfg.d.ts +5 -0
  99. package/lib/krill/modules/grubcfg.js +5 -0
  100. package/lib/krill/modules/hostname.d.ts +5 -0
  101. package/lib/krill/modules/hostname.js +5 -0
  102. package/lib/krill/modules/hosts.d.ts +5 -0
  103. package/lib/krill/modules/hosts.js +5 -0
  104. package/lib/krill/modules/initramfs-cfg.d.ts +5 -0
  105. package/lib/krill/modules/initramfs-cfg.js +5 -0
  106. package/lib/krill/modules/initramfs.d.ts +5 -0
  107. package/lib/krill/modules/initramfs.js +5 -0
  108. package/lib/krill/modules/locale-cfg.d.ts +5 -0
  109. package/lib/krill/modules/locale-cfg.js +5 -0
  110. package/lib/krill/modules/locale.d.ts +5 -0
  111. package/lib/krill/modules/locale.js +5 -0
  112. package/lib/krill/modules/machine-id.d.ts +5 -0
  113. package/lib/krill/modules/machine-id.js +5 -0
  114. package/lib/krill/modules/mkfs.d.ts +5 -0
  115. package/lib/krill/modules/mkfs.js +5 -0
  116. package/lib/krill/modules/mount-fs.d.ts +5 -0
  117. package/lib/krill/modules/mount-fs.js +5 -0
  118. package/lib/krill/modules/mount-vfs.d.ts +5 -0
  119. package/lib/krill/modules/mount-vfs.js +5 -0
  120. package/lib/krill/modules/network-cfg.d.ts +5 -0
  121. package/lib/krill/modules/network-cfg.js +5 -0
  122. package/lib/krill/modules/packages.d.ts +14 -0
  123. package/lib/krill/modules/packages.js +65 -0
  124. package/lib/krill/modules/{partitions.d.ts → partition.d.ts} +5 -0
  125. package/lib/krill/modules/{partitions.js → partition.js} +5 -0
  126. package/lib/krill/modules/remove-installer-link.d.ts +5 -0
  127. package/lib/krill/modules/remove-installer-link.js +5 -0
  128. package/lib/krill/modules/set-keyboard.d.ts +5 -0
  129. package/lib/krill/modules/set-keyboard.js +37 -18
  130. package/lib/krill/modules/set-timezone.d.ts +5 -0
  131. package/lib/krill/modules/set-timezone.js +5 -0
  132. package/lib/krill/modules/umount.d.ts +5 -0
  133. package/lib/krill/modules/umount.js +5 -0
  134. package/lib/krill/modules/unpackfs.d.ts +5 -0
  135. package/lib/krill/modules/unpackfs.js +5 -0
  136. package/manpages/doc/man/eggs.1.gz +0 -0
  137. package/manpages/doc/man/eggs.html +72 -83
  138. package/package.json +117 -117
  139. package/scripts/_eggs +29 -29
  140. package/scripts/bros/waydroid-helper.sh +0 -0
  141. package/scripts/eggs-adapt.sh +0 -0
  142. package/scripts/eggs.bash +6 -6
  143. package/scripts/install-eggs-ppa.sh +0 -0
  144. package/scripts/mom-cli.sh +33 -89
  145. package/scripts/pve-live.service +0 -0
  146. package/scripts/pve-live.sh +0 -0
  147. package/scripts/resy.sh +0 -0
  148. package/scripts/userexist.sh +0 -0
  149. package/conf/distros/rolling/calamares/calamares-modules/remove-link/module.yml +0 -9
  150. package/conf/distros/rolling/calamares/calamares-modules/remove-link/remove-link.sh +0 -3
  151. package/lib/commands/krill.js +0 -77
  152. package/lib/commands/remove.js +0 -84
  153. package/manpages/doc/man/eggs.roll.gz +0 -0
@@ -1,46 +1,41 @@
1
1
  #
2
2
  # eggs: isolinux.theme
3
3
  #
4
- MENU TITLE Penguin's eggs - Perri's brewery edition
5
- MENU BACKGROUND splash.png
4
+ menu color screen * #80ffffff #00000000 none
5
+ menu color border * #40000000 #00000000 none
6
+ menu color title * #ffffffff #429ad6 none
7
+ menu color sel * #fffafafa #ff4dd0e1 none
8
+ menu color unsel * #ff231f20 #00000000 none
9
+ menu color hotsel * #e0400000 #20ff8000 none
10
+ menu color disabled * #60cccccc #00000000 none
11
+ menu color scrollbar * #40000000 #00000000 none
12
+ menu color tabmsg * #0808ea #ffffffff none
13
+ menu color cmdline * #ff231f20 #ffffffff none
14
+ menu color cmdmark * #c000ffff #00000000 none
15
+ menu color pwdborder * #80ffffff #20ffffff none
16
+ menu color pwdheader * #80ff8080 #20ffffff none
17
+ menu color pwdentry * #80ffffff #20ffffff none
18
+ menu color timeout_msg * #80ffffff #00000000 none
19
+ menu color timeout * #c0ffffff #00000000 none
20
+ menu color help * #c0ffffff #00000000 none
21
+ menu color msg07 * #ffffffff #00000000 none
6
22
 
7
- # MENU COLOR element backgound foreground shadow
8
- # background and foreground are hexadecimal digits for alpha (opacity), red, green and blue,
9
- # respectively. #00000000 represents fully transparent, and #ffffffff represents opaque white.
10
- # shadow none/std
11
- MENU COLOR screen 37;40 #80ffffff #00000000 std
12
- MENU COLOR border 30;44 #40000000 #00000000 std
13
- MENU COLOR title 1;36;44 #c00090f0 #00000000 std
14
- MENU COLOR unsel 37;44 #90ffffff #00000000 std
15
- MENU COLOR sel 7;37;40 #e0000000 #20ff8000 all
16
- MENU COLOR hotsel 1;7;37;40 #e0400000 #20ff8000 all
17
- MENU COLOR disabled 1;30;44 #60cccccc #00000000 std
18
- MENU COLOR scrollbar 30;44 #40000000 #00000000 std
19
- MENU COLOR tabmsg 31;40 #90ffff00 #00000000 std
20
- MENU COLOR cmdmark 1;36;40 #c000ffff #00000000 std
21
- MENU COLOR cmdline 37;40 #c0ffffff #00000000 std
22
- MENU COLOR pwdborder 30;47 #80ffffff #20ffffff std
23
- MENU COLOR pwdheader 31;47 #80ff8080 #20ffffff std
24
- MENU COLOR pwdentry 30;47 #80ffffff #20ffffff std
25
- MENU COLOR timeout_msg 37;40 #80ffffff #00000000 std
26
- MENU COLOR timeout 1;37;40 #c0ffffff #00000000 std
27
- MENU COLOR help 37;40 #c0ffffff #00000000 std
28
- MENU COLOR msg07 37;40 #90ffffff #00000000 std
29
23
 
30
- # POSIZIONE
31
- MENU WIDTH 80
32
- MENU MARGIN 10
33
- MENU PASSWORDMARGIN 3
34
- MENU ROWS 12
35
- MENU TABMSGROW 18
36
- MENU CMDLINEROW 18
37
- MENU ENDROW -1
38
- MENU PASSWORDROW 11
39
- MENU TIMEOUTROW 20
40
- MENU HELPMSGROW 22
41
- MENU HELPMSGENDROW -1
42
- MENU HIDDENROW -2
43
- MENU HSHIFT 0
44
- MENU VSHIFT 0
45
-
46
- MENU tabmsg Press ENTER to boot or TAB to edit a menu entry
24
+ # Position
25
+ menu width 80
26
+ menu margin 10
27
+ #menu passwordmargin 3
28
+ menu rows 12
29
+ menu tabmsgrow 18
30
+ menu cmdlinegrow 18
31
+ menu endrow -1
32
+ menu passwordrow 11
33
+ menu timeout 20
34
+ menu helpmsggrow 22
35
+ menu helpmsgendrow -1
36
+ menu hiddenrow -2
37
+ menu hshift 0
38
+ menu vshift 0
39
+ menu title Penguin's eggs - Perri's brewery edition
40
+ menu background splash.png
41
+ menu tabmsg Press ENTER to boot or TAB to edit a menu entry
File without changes
File without changes
File without changes
File without changes
File without changes
package/bin/dev CHANGED
File without changes
@@ -11,7 +11,7 @@ sequence:
11
11
  - locale
12
12
  - keyboard
13
13
  - partition
14
- - users
14
+ {{createUsers}}users
15
15
  - summary
16
16
  - exec:
17
17
  - partition
@@ -24,7 +24,7 @@ sequence:
24
24
  - keyboard
25
25
  - localecfg
26
26
  - luksbootkeyfile
27
- - users
27
+ {{createUsers}}users
28
28
  {{hasDisplaymanager}}displaymanager
29
29
  - networkcfg
30
30
  - hwclock
@@ -52,7 +52,7 @@ sequence:
52
52
  - locale
53
53
  - keyboard
54
54
  - partition
55
- - users
55
+ {{createUsers}}users
56
56
  - summary
57
57
 
58
58
  # Phase 2 - install.
@@ -72,7 +72,7 @@ sequence:
72
72
  - locale
73
73
  - keyboard
74
74
  - localecfg
75
- - users
75
+ {{createUsers}}users
76
76
  {{hasDisplaymanager}}displaymanager
77
77
  - networkcfg
78
78
  - hwclock
@@ -28,7 +28,7 @@ sequence:
28
28
  - locale
29
29
  - keyboard
30
30
  - partition
31
- - users
31
+ {{createUsers}}users
32
32
  - summary
33
33
  - exec:
34
34
  - partition
@@ -41,7 +41,7 @@ sequence:
41
41
  - keyboard
42
42
  - localecfg
43
43
  - luksbootkeyfile
44
- - users
44
+ {{createUsers}}users
45
45
  {{hasDisplaymanager}}displaymanager
46
46
  - networkcfg
47
47
  - hwclock
@@ -0,0 +1,4 @@
1
+ ---
2
+ systemd: true
3
+ dbus: true
4
+ symlink: true
@@ -1,7 +1,7 @@
1
1
  # manjaro
2
2
  # packages
3
3
  ---
4
- backend: pamac
4
+ backend: pacman
5
5
 
6
6
  operations:
7
7
  {{remove}}
@@ -0,0 +1,6 @@
1
+ --
2
+ dontChroot: false
3
+ timeout: 30
4
+ script:
5
+ - "rm -r @@ROOT@@/usr/share/applications/install-debian.desktop"
6
+
@@ -18,7 +18,7 @@ sequence:
18
18
  - locale
19
19
  - keyboard
20
20
  - partition
21
- - users
21
+ {{createUsers}}users
22
22
  - summary
23
23
 
24
24
  # Phase 2 - install.
@@ -31,29 +31,22 @@ sequence:
31
31
  - partition
32
32
  - mount
33
33
  - unpackfs
34
- # sources-yolk
35
- #{{hasSystemd}}machineid
34
+ - machineid
36
35
  - fstab
37
36
  - locale
38
37
  - keyboard
39
38
  - localecfg
40
- - users
39
+ {{createUsers}}users
41
40
  {{hasDisplaymanager}}displaymanager
42
41
  - networkcfg
43
42
  - hwclock
44
- #{{hasSystemd}}services-systemd
45
- #- bootloader-config
46
43
  - grubcfg
47
44
  - bootloader
48
45
  - packages
49
46
  - luksbootkeyfile
50
47
  - plymouthcfg
51
- #- initramfscfg
52
- #- initramfs
53
48
  - removeuser
54
- #- shellprocess@cleanup
55
- #- remove-link
56
- #- sources-yolk-unmount
49
+ # shellprocess removelink
57
50
  - umount
58
51
 
59
52
  # Phase 3 - postinstall.
package/conf/eggs.yaml CHANGED
@@ -1,100 +1,68 @@
1
1
  # Penguin's eggs
2
2
  # eggs.yaml
3
3
  ---
4
- # version
5
- version: '16.*.*'
6
-
7
- # You can change the location of 'snapshot_dir' (location of final iso file)
8
- # in case you don't have enough space on the system.
9
- # default: /home/eggs
10
- snapshot_dir: '/home/eggs/'
11
-
12
- # The name of the snapshot file will be hostname-{arch}_{yyyy-mm-dd_hhmm}.iso.
13
- # If you'd like to replace "hostname" with something different,
14
- # change it here. (example: snapshot_basename="my-buster-live")
15
- #
16
- # prefix iso file
17
- # You can choose a prefix like 'UfficioZero_'
18
- # default ''
4
+ version: ''
5
+
6
+ # eggs nest, default: /home/eggs
7
+ snapshot_dir: /home/eggs/
8
+
9
+ # Default '', dad -d put it at egg-of-distro-version-
19
10
  snapshot_prefix: ''
20
11
 
21
- # Note: hostname use the name of the host
22
- #
23
- # default hostname
24
- snapshot_basename: 'hostname'
12
+ # You can edit this rsync excludes file
13
+ snapshot_excludes: /usr/local/share/penguins-eggs/exclude.list
25
14
 
26
- # You can change the rsync excludes file here - if you know what you're doing -
27
- # be sure to use the full path to the file.
28
- #
29
- # default /var/local/share/excludes/penguins-eggs-snapshot-exclude.list
30
- snapshot_excludes: '/var/local/share/penguins-eggs/exclude.list'
15
+ # snapshot_basename, default: ''
16
+ snapshot_basename: ''
31
17
 
32
- # user to be used in the liveCd
33
- # default live
34
- user_opt: 'live'
18
+ # user liveCD, default: live
19
+ user_opt: live
35
20
 
36
- # password of user to be used in the liveCd
37
- # default evolution
38
- user_opt_passwd: 'evolution'
21
+ # user liveCD password, default: evolution
22
+ user_opt_passwd: evolution
39
23
 
40
- # root password to be used in liveCd
41
- # default evolution
42
- root_passwd: 'evolution'
24
+ # root liveCD password, default: evolution
25
+ root_passwd: evolution
43
26
 
44
- # theme to be used as default
45
- # default: eggs
46
- theme: ''
27
+ # theme to be used, default: eggs
28
+ theme: eggs
47
29
 
48
- # Force installation package calamares if is not already installed.
49
- # default no if calamares is not installed
50
- force_installer: false
30
+ # Ask for installation calamares
31
+ force_installer: true
51
32
 
52
- # Set to true to create boot files for uefi.
53
- # default true if grub_efi_amd64 package is installed
54
- make_efi: false
33
+ # make_efi, default: true
34
+ make_efi: true
55
35
 
56
- # Change to false if you don't want the md5sum file created with the iso.
57
- # default yes
36
+ # Create md5sum file, default true
58
37
  make_md5sum: true
59
38
 
60
- # Change to fale if you want a plain iso image instead of isohybrid.
61
- # Default true
39
+ # make_isohybrid, default true
62
40
  make_isohybrid: true
63
41
 
64
- # Compression algorithm
65
- # Allowed values are, in order of speed-size tradeoff: lz4, lzo, gzip, xz
66
- # default -Xcompression-level 20
67
- compression: '-Xcompression-level 20'
42
+ # Compression algorithm, default xz
43
+ compression: xz
68
44
 
69
45
  # Allow password login to ssh for users (not root).
70
- # If ssh_pass=true, then PasswordAuthentication will be set to true
71
- # If ssh_pass=false, then PasswordAuthentication will be set to false
72
- # In either of the above cases, if PermitRootLogin was set to true,
73
- # it will be changed to "prohibit-password" (meaning with auth keys only)
74
- # default true
75
46
  ssh_pass: true
76
47
 
77
-
78
-
79
- # timezone
48
+ # timezone
80
49
  timezone: Europe/Rome
81
50
 
82
- # locales to be builded
51
+ # locales_default, default env.LANG or en_US.UTF-8
52
+ locales_default:
53
+
54
+ # locales, default: locales_default + en_US.UTF-8
83
55
  locales:
84
- - it_IT.UTF-8
56
+ - en_US.UTF-8
57
+
58
+ # it's still used?
59
+ pmount_fixed: false
85
60
 
86
- # default locales
87
- locales_default: it_IT.UTF-8
61
+ # machine_id: default /etc/machine-id
62
+ machine_id: ''
88
63
 
89
- # keyboard
90
- keyboard:
91
- XkbModel: "pc105"
92
- XkbLayout: "it"
93
- XkbVariant: ""
94
- XkbOptions: ""
64
+ # vmlinuz, default: /path/to/vmlinuz
65
+ vmlinuz: ''
95
66
 
96
- ##
97
- # The following fields are actually not used in eggs
98
- pmount_fixed: false
99
- netconfig_opt: ''
100
- ifnames_opt: ''
67
+ # initrd_img, default: /path/to/initrd_img
68
+ initrd_img: ''
package/conf/exclude.list CHANGED
@@ -32,6 +32,7 @@
32
32
  - /etc/crypttab
33
33
  - /etc/fstab
34
34
  - /etc/fstab.d/*
35
+ - /etc/dnsmasq.d/cuckoo.conf
35
36
  - /etc/initramfs-tools/conf.d/resume # see remove-cryptroot and nocrypt.sh
36
37
  - /etc/initramfs-tools/conf.d/cryptroot # see remove-cryptroot and nocrypt.sh
37
38
  - /etc/machine-id
@@ -0,0 +1,38 @@
1
+ # Penguin's eggs
2
+ # krill.yaml
3
+ ---
4
+ # welcome (put your language, example: it_IT.UTF-8)
5
+ language: 'en_US.UTF-8'
6
+
7
+ # location (put your location, example region: "Europe", zone: "Rome")
8
+ region: 'America'
9
+ zone: 'New_York'
10
+
11
+ # keyboard (put your values example: keyboardModel: "pc105", keyboardLayout: "it")
12
+ keyboardModel: 'pc105'
13
+ keyboardLayout: 'us'
14
+ keyboardVariant: ''
15
+ keyboardOption: ''
16
+
17
+ # partition (leave it unchanged)
18
+ installationDevice: ''
19
+ installationMode: 'standard'
20
+ filesystemType: 'ext4'
21
+ userSwapChoice: 'small'
22
+
23
+ # users (Here you can put your default user, password, etc)
24
+ name: 'artisan'
25
+ fullname: 'artisan'
26
+ password: 'evolution'
27
+ rootPassword: 'evolution'
28
+ autologin: true
29
+ hostname: ''
30
+
31
+ # network (leave it unchanged)
32
+ iface: ""
33
+ addressType: 'dhcp'
34
+ address: ''
35
+ netmask: ''
36
+ gateway: ''
37
+ domain: ''
38
+ dns: ''
@@ -22,12 +22,15 @@ class Bleach {
22
22
  * @param verbose
23
23
  */
24
24
  async clean(verbose = false) {
25
+ if (verbose) {
26
+ utils_1.default.warning('cleaning the system');
27
+ }
25
28
  const distro = new distro_1.default();
26
- if (distro.distroLike === 'Debian' || distro.distroLike === 'Devuan' || (distro.distroLike === 'Ubuntu')) {
29
+ if (distro.familyId === 'debian') {
27
30
  await this.cleanApt(verbose);
28
31
  }
29
- else if (distro.distroLike === 'Arch') {
30
- await (0, utils_2.exec)('paccache -ruk0');
32
+ else if (distro.familyId === 'archlinux') {
33
+ await (0, utils_2.exec)('pacman -Scc', utils_1.default.setEcho(true));
31
34
  }
32
35
  await this.cleanHistory(verbose);
33
36
  await this.cleanJournal(verbose);
@@ -41,7 +44,6 @@ class Bleach {
41
44
  let echo = { echo: false, ignore: true, capture: false };
42
45
  if (verbose) {
43
46
  echo = { echo: true, ignore: true, capture: false };
44
- utils_1.default.warning('cleaning apt');
45
47
  }
46
48
  await (0, utils_2.exec)('apt-get clean', echo);
47
49
  await (0, utils_2.exec)('apt-get autoclean', echo);
@@ -1,5 +1,5 @@
1
1
  import Settings from '../classes/settings';
2
- import { IConfig } from '../interfaces';
2
+ import { IEggsConfig } from '../interfaces';
3
3
  export default class Daddy {
4
4
  settings: Settings;
5
5
  helpMe(loadDefault?: boolean, verbose?: boolean): Promise<void>;
@@ -7,5 +7,5 @@ export default class Daddy {
7
7
  *
8
8
  * @param c
9
9
  */
10
- editConfig(c: IConfig): Promise<string>;
10
+ editConfig(c: IEggsConfig): Promise<string>;
11
11
  }
@@ -102,13 +102,14 @@ class Daddy {
102
102
  const myAddons = {};
103
103
  myAddons.adapt = true;
104
104
  const backup = false;
105
+ const personal = false;
105
106
  const scriptOnly = false;
106
107
  const yolkRenew = false;
107
108
  const final = false;
108
109
  const ovary = new ovary_1.default();
109
110
  utils_1.default.warning('Produce an egg...');
110
111
  if (await ovary.fertilization(config.snapshot_prefix, config.snapshot_basename, config.theme, config.compression)) {
111
- await ovary.produce(backup, scriptOnly, yolkRenew, final, myAddons, verbose);
112
+ await ovary.produce(backup, personal, scriptOnly, yolkRenew, final, myAddons, verbose);
112
113
  ovary.finished(scriptOnly);
113
114
  }
114
115
  }
@@ -19,6 +19,8 @@ declare class Distro implements IDistro {
19
19
  usrLibPath: string;
20
20
  isolinuxPath: string;
21
21
  syslinuxPath: string;
22
+ pxelinuxPath: string;
23
+ liveMediumPath: string;
22
24
  mountpointSquashFs: string;
23
25
  homeUrl: string;
24
26
  supportUrl: string;
@@ -27,6 +27,10 @@
27
27
  * Ubuntu 21.10 (impish) active
28
28
  * Ubuntu 22.04 (jammy) LTS
29
29
  *
30
+ * Arch
31
+ * Manjaro Qonos
32
+ * Manjaro Ruah
33
+ *
30
34
  */
31
35
  'use strict';
32
36
  Object.defineProperty(exports, "__esModule", { value: true });
@@ -48,6 +52,8 @@ class Distro {
48
52
  this.usrLibPath = '/usr/lib';
49
53
  this.isolinuxPath = '';
50
54
  this.syslinuxPath = '';
55
+ this.pxelinuxPath = '';
56
+ this.liveMediumPath = `/run/live/medium/`;
51
57
  this.mountpointSquashFs = '';
52
58
  this.homeUrl = '';
53
59
  this.supportUrl = '';
@@ -113,12 +119,14 @@ class Distro {
113
119
  // Debian 8 jessie
114
120
  this.distroLike = 'Debian';
115
121
  this.codenameLikeId = 'jessie';
122
+ this.liveMediumPath = '/lib/live/mount/medium/';
116
123
  break;
117
124
  }
118
125
  case 'stretch': {
119
126
  // Debian 9 stretch
120
127
  this.distroLike = 'Debian';
121
128
  this.codenameLikeId = 'stretch';
129
+ this.liveMediumPath = '/lib/live/mount/medium/';
122
130
  break;
123
131
  }
124
132
  case 'buster': {
@@ -164,6 +172,7 @@ class Distro {
164
172
  // Ubuntu 18.04 bionic LTS eol aprile 2023
165
173
  this.distroLike = 'Ubuntu';
166
174
  this.codenameLikeId = 'bionic';
175
+ this.liveMediumPath = '/lib/live/mount/medium/';
167
176
  break;
168
177
  }
169
178
  case 'focal': {
@@ -381,6 +390,7 @@ class Distro {
381
390
  case 'debian': {
382
391
  this.isolinuxPath = '/usr/lib/ISOLINUX/';
383
392
  this.syslinuxPath = '/usr/lib/syslinux/modules/bios/';
393
+ this.pxelinuxPath = '/usr/lib/PXELINUX/';
384
394
  this.usrLibPath = '/usr/lib/x86_64-linux-gnu/';
385
395
  if (process.arch === 'ia32') {
386
396
  this.usrLibPath = '/usr/lib/i386-linux-gnu/';
@@ -36,8 +36,12 @@ class Archlinux {
36
36
  * Crea array pacchetti da installare/rimuovere
37
37
  */
38
38
  static packages(remove = false, verbose = false) {
39
+ /**
40
+ * praticamente non serve, perche prende dal pacchetto o da pkgbuild
41
+ */
39
42
  // non può essere pacman è universalmente presente
40
- const packages = ['arch-install-scripts', 'awk', 'dosfstools', 'e2fsprogs', 'erofs-utils', 'findutils', 'gzip', 'libarchive', 'libisoburn', 'mtools', 'openssl', 'pacman', 'rsync', 'sed', 'syslinux', 'squashfs-tools'];
43
+ // 'pacman', 'awk', 'dosfstools'
44
+ const packages = ['']; // 'arch-install-scripts', 'e2fsprogs', 'erofs-utils', 'findutils', 'gzip', 'libarchive', 'libisoburn', 'mtools', 'openssl', 'rsync', 'sed', 'syslinux', 'squashfs-tools']
41
45
  const toInstall = [];
42
46
  const toRemove = [];
43
47
  for (const elem of packages) {
@@ -97,12 +101,12 @@ class Archlinux {
97
101
  static async calamaresInstall(verbose = false) {
98
102
  verbose = true; // serve per pacman
99
103
  const echo = utils_1.default.setEcho(verbose);
104
+ let cmd = `pacman -Sy --noconfirm ${(0, dependencies_1.array2spaced)(this.packs4calamares)}`;
100
105
  try {
101
- // inserito flag --noconfirm
102
- await (0, utils_2.exec)(`pacman -Sy --noconfirm ${(0, dependencies_1.array2spaced)(this.packs4calamares)}`, echo);
106
+ await (0, utils_2.exec)(cmd, echo);
103
107
  }
104
108
  catch {
105
- utils_1.default.error(`Archlinux.calamaresInstall() pacman -Sy ${(0, dependencies_1.array2spaced)(this.packs4calamares)}`); // + e.error)
109
+ utils_1.default.error(`Archlinux.calamaresInstall(): ${cmd}`); // + e.error)
106
110
  }
107
111
  }
108
112
  /**
@@ -21,7 +21,7 @@ export declare class Bionic {
21
21
  * @param release
22
22
  * @param verbose
23
23
  */
24
- constructor(installer: IInstaller, remix: IRemix, distro: IDistro, release: boolean, user_opt: string, verbose?: boolean);
24
+ constructor(installer: IInstaller, remix: IRemix, distro: IDistro, user_opt: string, release?: boolean, verbose?: boolean);
25
25
  /**
26
26
  *
27
27
  */
@@ -19,7 +19,7 @@ class Bionic {
19
19
  * @param release
20
20
  * @param verbose
21
21
  */
22
- constructor(installer, remix, distro, release, user_opt, verbose = false) {
22
+ constructor(installer, remix, distro, user_opt, release = false, verbose = false) {
23
23
  this.verbose = false;
24
24
  this.installer = {};
25
25
  this.release = false;
@@ -23,7 +23,7 @@ export declare class Buster {
23
23
  * @param displaymanager
24
24
  * @param verbose
25
25
  */
26
- constructor(installer: IInstaller, remix: IRemix, distro: IDistro, release: boolean, user_opt: string, verbose?: boolean);
26
+ constructor(installer: IInstaller, remix: IRemix, distro: IDistro, user_opt: string, release?: boolean, verbose?: boolean);
27
27
  /**
28
28
  *
29
29
  */
@@ -21,7 +21,7 @@ class Buster {
21
21
  * @param displaymanager
22
22
  * @param verbose
23
23
  */
24
- constructor(installer, remix, distro, release, user_opt, verbose = false) {
24
+ constructor(installer, remix, distro, user_opt, release = false, verbose = false) {
25
25
  this.verbose = false;
26
26
  this.installer = {};
27
27
  this.release = false;
@@ -21,7 +21,7 @@ export declare class Focal {
21
21
  * @param displaymanager
22
22
  * @param verbose
23
23
  */
24
- constructor(installer: IInstaller, remix: IRemix, distro: IDistro, release: boolean, user_opt: string, verbose?: boolean);
24
+ constructor(installer: IInstaller, remix: IRemix, distro: IDistro, user_opt: string, release?: boolean, verbose?: boolean);
25
25
  /**
26
26
  *
27
27
  */
@@ -19,7 +19,7 @@ class Focal {
19
19
  * @param displaymanager
20
20
  * @param verbose
21
21
  */
22
- constructor(installer, remix, distro, release, user_opt, verbose = false) {
22
+ constructor(installer, remix, distro, user_opt, release = false, verbose = false) {
23
23
  this.verbose = false;
24
24
  this.installer = {};
25
25
  this.release = false;