penguins-eggs 10.0.18 → 10.0.20
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.
- package/.oclif.manifest.json +1 -1
- package/README.md +28 -28
- package/dist/classes/distro.js +188 -154
- package/dist/classes/families/alpine.d.ts +55 -0
- package/dist/classes/families/alpine.js +108 -0
- package/dist/classes/families/archlinux.js +2 -1
- package/dist/classes/families/fedora.js +2 -4
- package/dist/classes/ovary.d.ts +10 -1
- package/dist/classes/ovary.js +48 -16
- package/dist/classes/pacman.js +21 -21
- package/dist/classes/utils.d.ts +4 -4
- package/dist/classes/utils.js +20 -9
- package/manpages/doc/man/eggs.1.gz +0 -0
- package/manpages/doc/man/eggs.html +3 -3
- package/mkinitcpio/README.md +1 -1
- package/package.json +12 -12
- package/scripts/_eggs +0 -1
- package/scripts/eggs.bash +1 -1
- package/dist/classes/initrd.d.ts +0 -41
- package/dist/classes/initrd.js +0 -152
package/.oclif.manifest.json
CHANGED
package/README.md
CHANGED
|
@@ -486,7 +486,7 @@ EXAMPLES
|
|
|
486
486
|
$ eggs adapt
|
|
487
487
|
```
|
|
488
488
|
|
|
489
|
-
_See code: [src/commands/adapt.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
489
|
+
_See code: [src/commands/adapt.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/adapt.ts)_
|
|
490
490
|
|
|
491
491
|
## `eggs analyze`
|
|
492
492
|
|
|
@@ -507,7 +507,7 @@ EXAMPLES
|
|
|
507
507
|
sudo eggs analyze
|
|
508
508
|
```
|
|
509
509
|
|
|
510
|
-
_See code: [src/commands/analyze.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
510
|
+
_See code: [src/commands/analyze.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/analyze.ts)_
|
|
511
511
|
|
|
512
512
|
## `eggs autocomplete [SHELL]`
|
|
513
513
|
|
|
@@ -538,7 +538,7 @@ EXAMPLES
|
|
|
538
538
|
$ eggs autocomplete --refresh-cache
|
|
539
539
|
```
|
|
540
540
|
|
|
541
|
-
_See code: [@oclif/plugin-autocomplete](https://github.com/oclif/plugin-autocomplete/blob/v3.1.
|
|
541
|
+
_See code: [@oclif/plugin-autocomplete](https://github.com/oclif/plugin-autocomplete/blob/v3.1.8/src/commands/autocomplete/index.ts)_
|
|
542
542
|
|
|
543
543
|
## `eggs calamares`
|
|
544
544
|
|
|
@@ -571,7 +571,7 @@ EXAMPLES
|
|
|
571
571
|
sudo eggs calamares --remove
|
|
572
572
|
```
|
|
573
573
|
|
|
574
|
-
_See code: [src/commands/calamares.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
574
|
+
_See code: [src/commands/calamares.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/calamares.ts)_
|
|
575
575
|
|
|
576
576
|
## `eggs config`
|
|
577
577
|
|
|
@@ -598,7 +598,7 @@ EXAMPLES
|
|
|
598
598
|
sudo eggs config --clean --nointeractive
|
|
599
599
|
```
|
|
600
600
|
|
|
601
|
-
_See code: [src/commands/config.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
601
|
+
_See code: [src/commands/config.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/config.ts)_
|
|
602
602
|
|
|
603
603
|
## `eggs cuckoo`
|
|
604
604
|
|
|
@@ -618,7 +618,7 @@ EXAMPLES
|
|
|
618
618
|
sudo eggs cuckoo
|
|
619
619
|
```
|
|
620
620
|
|
|
621
|
-
_See code: [src/commands/cuckoo.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
621
|
+
_See code: [src/commands/cuckoo.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/cuckoo.ts)_
|
|
622
622
|
|
|
623
623
|
## `eggs dad`
|
|
624
624
|
|
|
@@ -646,7 +646,7 @@ EXAMPLES
|
|
|
646
646
|
sudo dad --default
|
|
647
647
|
```
|
|
648
648
|
|
|
649
|
-
_See code: [src/commands/dad.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
649
|
+
_See code: [src/commands/dad.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/dad.ts)_
|
|
650
650
|
|
|
651
651
|
## `eggs export deb`
|
|
652
652
|
|
|
@@ -673,7 +673,7 @@ EXAMPLES
|
|
|
673
673
|
$ eggs export deb --all
|
|
674
674
|
```
|
|
675
675
|
|
|
676
|
-
_See code: [src/commands/export/deb.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
676
|
+
_See code: [src/commands/export/deb.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/export/deb.ts)_
|
|
677
677
|
|
|
678
678
|
## `eggs export iso`
|
|
679
679
|
|
|
@@ -698,7 +698,7 @@ EXAMPLES
|
|
|
698
698
|
$ eggs export iso --clean
|
|
699
699
|
```
|
|
700
700
|
|
|
701
|
-
_See code: [src/commands/export/iso.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
701
|
+
_See code: [src/commands/export/iso.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/export/iso.ts)_
|
|
702
702
|
|
|
703
703
|
## `eggs help [COMMAND]`
|
|
704
704
|
|
|
@@ -718,7 +718,7 @@ DESCRIPTION
|
|
|
718
718
|
Display help for eggs.
|
|
719
719
|
```
|
|
720
720
|
|
|
721
|
-
_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v6.2.
|
|
721
|
+
_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v6.2.6/src/commands/help.ts)_
|
|
722
722
|
|
|
723
723
|
## `eggs install`
|
|
724
724
|
|
|
@@ -759,7 +759,7 @@ EXAMPLES
|
|
|
759
759
|
sudo eggs install --chroot
|
|
760
760
|
```
|
|
761
761
|
|
|
762
|
-
_See code: [src/commands/install.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
762
|
+
_See code: [src/commands/install.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/install.ts)_
|
|
763
763
|
|
|
764
764
|
## `eggs kill`
|
|
765
765
|
|
|
@@ -782,7 +782,7 @@ EXAMPLES
|
|
|
782
782
|
sudo eggs kill
|
|
783
783
|
```
|
|
784
784
|
|
|
785
|
-
_See code: [src/commands/kill.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
785
|
+
_See code: [src/commands/kill.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/kill.ts)_
|
|
786
786
|
|
|
787
787
|
## `eggs krill`
|
|
788
788
|
|
|
@@ -841,7 +841,7 @@ EXAMPLES
|
|
|
841
841
|
$ eggs mom
|
|
842
842
|
```
|
|
843
843
|
|
|
844
|
-
_See code: [src/commands/mom.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
844
|
+
_See code: [src/commands/mom.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/mom.ts)_
|
|
845
845
|
|
|
846
846
|
## `eggs produce`
|
|
847
847
|
|
|
@@ -898,7 +898,7 @@ EXAMPLES
|
|
|
898
898
|
sudo eggs produce --excludes home # exclude ~/*
|
|
899
899
|
```
|
|
900
900
|
|
|
901
|
-
_See code: [src/commands/produce.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
901
|
+
_See code: [src/commands/produce.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/produce.ts)_
|
|
902
902
|
|
|
903
903
|
## `eggs status`
|
|
904
904
|
|
|
@@ -919,7 +919,7 @@ EXAMPLES
|
|
|
919
919
|
$ eggs status
|
|
920
920
|
```
|
|
921
921
|
|
|
922
|
-
_See code: [src/commands/status.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
922
|
+
_See code: [src/commands/status.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/status.ts)_
|
|
923
923
|
|
|
924
924
|
## `eggs syncfrom`
|
|
925
925
|
|
|
@@ -945,7 +945,7 @@ EXAMPLES
|
|
|
945
945
|
sudo eggs syncfrom --file /path/to/luks-volume
|
|
946
946
|
```
|
|
947
947
|
|
|
948
|
-
_See code: [src/commands/syncfrom.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
948
|
+
_See code: [src/commands/syncfrom.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/syncfrom.ts)_
|
|
949
949
|
|
|
950
950
|
## `eggs syncto`
|
|
951
951
|
|
|
@@ -972,7 +972,7 @@ EXAMPLES
|
|
|
972
972
|
sudo eggs syncto --excludes
|
|
973
973
|
```
|
|
974
974
|
|
|
975
|
-
_See code: [src/commands/syncto.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
975
|
+
_See code: [src/commands/syncto.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/syncto.ts)_
|
|
976
976
|
|
|
977
977
|
## `eggs tools clean`
|
|
978
978
|
|
|
@@ -994,7 +994,7 @@ EXAMPLES
|
|
|
994
994
|
sudo eggs tools clean
|
|
995
995
|
```
|
|
996
996
|
|
|
997
|
-
_See code: [src/commands/tools/clean.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
997
|
+
_See code: [src/commands/tools/clean.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/tools/clean.ts)_
|
|
998
998
|
|
|
999
999
|
## `eggs tools ppa`
|
|
1000
1000
|
|
|
@@ -1020,7 +1020,7 @@ EXAMPLES
|
|
|
1020
1020
|
sudo eggs tools ppa --remove
|
|
1021
1021
|
```
|
|
1022
1022
|
|
|
1023
|
-
_See code: [src/commands/tools/ppa.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
1023
|
+
_See code: [src/commands/tools/ppa.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/tools/ppa.ts)_
|
|
1024
1024
|
|
|
1025
1025
|
## `eggs tools skel`
|
|
1026
1026
|
|
|
@@ -1044,7 +1044,7 @@ EXAMPLES
|
|
|
1044
1044
|
sudo eggs tools skel --user user-to-be-copied
|
|
1045
1045
|
```
|
|
1046
1046
|
|
|
1047
|
-
_See code: [src/commands/tools/skel.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
1047
|
+
_See code: [src/commands/tools/skel.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/tools/skel.ts)_
|
|
1048
1048
|
|
|
1049
1049
|
## `eggs tools stat`
|
|
1050
1050
|
|
|
@@ -1070,7 +1070,7 @@ EXAMPLES
|
|
|
1070
1070
|
$ eggs tools stat --year
|
|
1071
1071
|
```
|
|
1072
1072
|
|
|
1073
|
-
_See code: [src/commands/tools/stat.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
1073
|
+
_See code: [src/commands/tools/stat.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/tools/stat.ts)_
|
|
1074
1074
|
|
|
1075
1075
|
## `eggs tools yolk`
|
|
1076
1076
|
|
|
@@ -1091,7 +1091,7 @@ EXAMPLES
|
|
|
1091
1091
|
sudo eggs tools yolk
|
|
1092
1092
|
```
|
|
1093
1093
|
|
|
1094
|
-
_See code: [src/commands/tools/yolk.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
1094
|
+
_See code: [src/commands/tools/yolk.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/tools/yolk.ts)_
|
|
1095
1095
|
|
|
1096
1096
|
## `eggs update`
|
|
1097
1097
|
|
|
@@ -1112,7 +1112,7 @@ EXAMPLES
|
|
|
1112
1112
|
$ eggs update
|
|
1113
1113
|
```
|
|
1114
1114
|
|
|
1115
|
-
_See code: [src/commands/update.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
1115
|
+
_See code: [src/commands/update.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/update.ts)_
|
|
1116
1116
|
|
|
1117
1117
|
## `eggs version`
|
|
1118
1118
|
|
|
@@ -1132,7 +1132,7 @@ FLAG DESCRIPTIONS
|
|
|
1132
1132
|
Additionally shows the architecture, node version, operating system, and versions of plugins that the CLI is using.
|
|
1133
1133
|
```
|
|
1134
1134
|
|
|
1135
|
-
_See code: [@oclif/plugin-version](https://github.com/oclif/plugin-version/blob/v2.2.
|
|
1135
|
+
_See code: [@oclif/plugin-version](https://github.com/oclif/plugin-version/blob/v2.2.8/src/commands/version.ts)_
|
|
1136
1136
|
|
|
1137
1137
|
## `eggs wardrobe get [REPO]`
|
|
1138
1138
|
|
|
@@ -1158,7 +1158,7 @@ EXAMPLES
|
|
|
1158
1158
|
$ eggs wardrobe get your-wardrobe
|
|
1159
1159
|
```
|
|
1160
1160
|
|
|
1161
|
-
_See code: [src/commands/wardrobe/get.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
1161
|
+
_See code: [src/commands/wardrobe/get.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/wardrobe/get.ts)_
|
|
1162
1162
|
|
|
1163
1163
|
## `eggs wardrobe list [REPO]`
|
|
1164
1164
|
|
|
@@ -1187,7 +1187,7 @@ EXAMPLES
|
|
|
1187
1187
|
$ eggs wardrobe list --distro arch
|
|
1188
1188
|
```
|
|
1189
1189
|
|
|
1190
|
-
_See code: [src/commands/wardrobe/list.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
1190
|
+
_See code: [src/commands/wardrobe/list.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/wardrobe/list.ts)_
|
|
1191
1191
|
|
|
1192
1192
|
## `eggs wardrobe show [REPO]`
|
|
1193
1193
|
|
|
@@ -1217,7 +1217,7 @@ EXAMPLES
|
|
|
1217
1217
|
$ eggs wardrobe show accessories/
|
|
1218
1218
|
```
|
|
1219
1219
|
|
|
1220
|
-
_See code: [src/commands/wardrobe/show.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
1220
|
+
_See code: [src/commands/wardrobe/show.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/wardrobe/show.ts)_
|
|
1221
1221
|
|
|
1222
1222
|
## `eggs wardrobe wear [REPO]`
|
|
1223
1223
|
|
|
@@ -1248,7 +1248,7 @@ EXAMPLES
|
|
|
1248
1248
|
sudo eggs wardrobe wear wagtail/waydroid
|
|
1249
1249
|
```
|
|
1250
1250
|
|
|
1251
|
-
_See code: [src/commands/wardrobe/wear.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.
|
|
1251
|
+
_See code: [src/commands/wardrobe/wear.ts](https://github.com/pieroproietti/penguins-eggs/blob/v10.0.20/src/commands/wardrobe/wear.ts)_
|
|
1252
1252
|
<!-- commandsstop -->
|
|
1253
1253
|
|
|
1254
1254
|
# penGUI
|
package/dist/classes/distro.js
CHANGED
|
@@ -102,172 +102,202 @@ class Distro {
|
|
|
102
102
|
this.releaseLike = 'unstable';
|
|
103
103
|
}
|
|
104
104
|
/**
|
|
105
|
-
*
|
|
105
|
+
* Analize distroId
|
|
106
106
|
*/
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
break;
|
|
135
|
-
}
|
|
136
|
-
case 'bookworm': {
|
|
137
|
-
// Debian 12 bookworm
|
|
138
|
-
this.distroLike = 'Debian';
|
|
139
|
-
this.codenameLikeId = 'bookworm';
|
|
140
|
-
break;
|
|
141
|
-
}
|
|
142
|
-
case 'trixie': {
|
|
143
|
-
// Debian 13 trixie
|
|
144
|
-
this.distroLike = 'Debian';
|
|
145
|
-
this.codenameLikeId = 'trixie';
|
|
146
|
-
break;
|
|
147
|
-
}
|
|
148
|
-
case 'beowulf': {
|
|
149
|
-
// Devuab 3 beowulf
|
|
150
|
-
this.distroLike = 'Devuan';
|
|
151
|
-
this.codenameLikeId = 'beowulf';
|
|
152
|
-
break;
|
|
153
|
-
}
|
|
154
|
-
case 'chimaera': {
|
|
155
|
-
// Devuab 4 chimaera
|
|
156
|
-
this.distroLike = 'Devuan';
|
|
157
|
-
this.codenameLikeId = 'chimaera';
|
|
158
|
-
break;
|
|
159
|
-
}
|
|
160
|
-
case 'daedalus': {
|
|
161
|
-
// Devuan 5 daedalus
|
|
162
|
-
this.distroLike = 'Devuan';
|
|
163
|
-
this.codenameLikeId = 'daedalus';
|
|
164
|
-
break;
|
|
165
|
-
}
|
|
166
|
-
/**
|
|
167
|
-
* Ubuntu LTS + actual
|
|
168
|
-
*/
|
|
169
|
-
case 'bionic': {
|
|
170
|
-
// Ubuntu 18.04 bionic LTS eol aprile 2023
|
|
171
|
-
this.distroLike = 'Ubuntu';
|
|
172
|
-
this.codenameLikeId = 'bionic';
|
|
173
|
-
this.liveMediumPath = '/lib/live/mount/medium/';
|
|
174
|
-
break;
|
|
175
|
-
}
|
|
176
|
-
case 'focal': {
|
|
177
|
-
// Ubuntu 20.04 focal LTS
|
|
178
|
-
this.distroLike = 'Ubuntu';
|
|
179
|
-
this.codenameLikeId = 'focal';
|
|
180
|
-
break;
|
|
181
|
-
}
|
|
182
|
-
case 'jammy': {
|
|
183
|
-
// Ubuntu 22.04 jammy LTS
|
|
184
|
-
this.distroLike = 'Ubuntu';
|
|
185
|
-
this.codenameLikeId = 'jammy';
|
|
186
|
-
break;
|
|
187
|
-
}
|
|
188
|
-
case 'noble': {
|
|
189
|
-
// Ubuntu 24.04 noble LTS
|
|
190
|
-
this.distroLike = 'Ubuntu';
|
|
191
|
-
this.codenameLikeId = 'noble';
|
|
192
|
-
break;
|
|
193
|
-
}
|
|
194
|
-
case 'devel': {
|
|
195
|
-
// Ubuntu rhino
|
|
196
|
-
this.distroLike = 'Ubuntu';
|
|
197
|
-
this.codenameLikeId = 'devel';
|
|
198
|
-
break;
|
|
199
|
-
}
|
|
107
|
+
if (this.distroId === 'Alpine') {
|
|
108
|
+
this.familyId = 'alpine';
|
|
109
|
+
this.distroLike = 'Alpine';
|
|
110
|
+
this.codenameId = 'rolling'; // questo viene rimosso dal nome
|
|
111
|
+
this.codenameLikeId = 'alpine-rolling';
|
|
112
|
+
this.liveMediumPath = '/.modloop/'; // ? è il mount della root su cd di installatione
|
|
113
|
+
this.squashfs = `live/filesystem.squashfs`;
|
|
114
|
+
this.syslinuxPath = '/usr/share/syslinux/'; //correct
|
|
115
|
+
this.pxelinuxPath = this.syslinuxPath;
|
|
116
|
+
this.usrLibPath = '/usr/lib/';
|
|
117
|
+
this.memdiskPath = this.syslinuxPath;
|
|
118
|
+
this.isolinuxPath = this.syslinuxPath;
|
|
119
|
+
}
|
|
120
|
+
else if (this.distroId === 'Fedora') {
|
|
121
|
+
this.familyId = 'fedora';
|
|
122
|
+
this.distroLike = 'Fedora';
|
|
123
|
+
this.codenameId = 'rolling';
|
|
124
|
+
this.codenameLikeId = '40';
|
|
125
|
+
this.liveMediumPath = '/run/install/repo/'; // ? è il mount della root su cd di installatione
|
|
126
|
+
this.squashfs = `live/filesystem.squashfs`;
|
|
127
|
+
this.syslinuxPath = '/usr/share/syslinux/';
|
|
128
|
+
this.pxelinuxPath = this.syslinuxPath;
|
|
129
|
+
this.usrLibPath = '/usr/lib/';
|
|
130
|
+
this.memdiskPath = this.syslinuxPath;
|
|
131
|
+
this.isolinuxPath = this.syslinuxPath;
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
200
134
|
/**
|
|
201
|
-
* Arch
|
|
135
|
+
* Arch/Debian/Devuan/Manjaro and Ubuntu
|
|
202
136
|
*/
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
137
|
+
switch (this.codenameId) {
|
|
138
|
+
case 'jessie': {
|
|
139
|
+
// Debian 8 jessie
|
|
140
|
+
this.distroLike = 'Debian';
|
|
141
|
+
this.codenameLikeId = 'jessie';
|
|
142
|
+
this.liveMediumPath = '/lib/live/mount/medium/';
|
|
143
|
+
this.isCalamaresAvailable = false;
|
|
144
|
+
break;
|
|
145
|
+
}
|
|
146
|
+
case 'stretch': {
|
|
147
|
+
// Debian 9 stretch
|
|
148
|
+
this.distroLike = 'Debian';
|
|
149
|
+
this.codenameLikeId = 'stretch';
|
|
150
|
+
this.liveMediumPath = '/lib/live/mount/medium/';
|
|
151
|
+
this.isCalamaresAvailable = false;
|
|
152
|
+
break;
|
|
153
|
+
}
|
|
154
|
+
case 'buster': {
|
|
155
|
+
// Debian 10 buster
|
|
156
|
+
this.distroLike = 'Debian';
|
|
157
|
+
this.codenameLikeId = 'buster';
|
|
158
|
+
break;
|
|
159
|
+
}
|
|
160
|
+
case 'bullseye': {
|
|
161
|
+
// Debian 11 bullseye
|
|
162
|
+
this.distroLike = 'Debian';
|
|
163
|
+
this.codenameLikeId = 'bullseye';
|
|
164
|
+
break;
|
|
165
|
+
}
|
|
166
|
+
case 'bookworm': {
|
|
167
|
+
// Debian 12 bookworm
|
|
168
|
+
this.distroLike = 'Debian';
|
|
169
|
+
this.codenameLikeId = 'bookworm';
|
|
170
|
+
break;
|
|
171
|
+
}
|
|
172
|
+
case 'trixie': {
|
|
173
|
+
// Debian 13 trixie
|
|
174
|
+
this.distroLike = 'Debian';
|
|
175
|
+
this.codenameLikeId = 'trixie';
|
|
176
|
+
break;
|
|
177
|
+
}
|
|
178
|
+
case 'beowulf': {
|
|
179
|
+
// Devuab 3 beowulf
|
|
180
|
+
this.distroLike = 'Devuan';
|
|
181
|
+
this.codenameLikeId = 'beowulf';
|
|
182
|
+
break;
|
|
183
|
+
}
|
|
184
|
+
case 'chimaera': {
|
|
185
|
+
// Devuab 4 chimaera
|
|
186
|
+
this.distroLike = 'Devuan';
|
|
187
|
+
this.codenameLikeId = 'chimaera';
|
|
188
|
+
break;
|
|
189
|
+
}
|
|
190
|
+
case 'daedalus': {
|
|
191
|
+
// Devuan 5 daedalus
|
|
192
|
+
this.distroLike = 'Devuan';
|
|
193
|
+
this.codenameLikeId = 'daedalus';
|
|
194
|
+
break;
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Ubuntu LTS + actual
|
|
198
|
+
*/
|
|
199
|
+
case 'bionic': {
|
|
200
|
+
// Ubuntu 18.04 bionic LTS eol aprile 2023
|
|
201
|
+
this.distroLike = 'Ubuntu';
|
|
202
|
+
this.codenameLikeId = 'bionic';
|
|
203
|
+
this.liveMediumPath = '/lib/live/mount/medium/';
|
|
204
|
+
break;
|
|
205
|
+
}
|
|
206
|
+
case 'focal': {
|
|
207
|
+
// Ubuntu 20.04 focal LTS
|
|
208
|
+
this.distroLike = 'Ubuntu';
|
|
209
|
+
this.codenameLikeId = 'focal';
|
|
210
|
+
break;
|
|
211
|
+
}
|
|
212
|
+
case 'jammy': {
|
|
213
|
+
// Ubuntu 22.04 jammy LTS
|
|
214
|
+
this.distroLike = 'Ubuntu';
|
|
215
|
+
this.codenameLikeId = 'jammy';
|
|
216
|
+
break;
|
|
217
|
+
}
|
|
218
|
+
case 'noble': {
|
|
219
|
+
// Ubuntu 24.04 noble LTS
|
|
220
|
+
this.distroLike = 'Ubuntu';
|
|
221
|
+
this.codenameLikeId = 'noble';
|
|
222
|
+
break;
|
|
223
|
+
}
|
|
224
|
+
case 'devel': {
|
|
225
|
+
// Ubuntu rhino
|
|
226
|
+
this.distroLike = 'Ubuntu';
|
|
227
|
+
this.codenameLikeId = 'devel';
|
|
228
|
+
break;
|
|
229
|
+
}
|
|
216
230
|
/**
|
|
217
|
-
*
|
|
231
|
+
* Arch Linux/Garuda
|
|
218
232
|
*/
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
233
|
+
case 'Spizaetus':
|
|
234
|
+
case 'n/a':
|
|
235
|
+
case 'rolling': {
|
|
236
|
+
this.familyId = 'archlinux';
|
|
237
|
+
this.distroLike = 'Arch';
|
|
238
|
+
this.codenameId = 'rolling';
|
|
239
|
+
this.codenameLikeId = 'rolling';
|
|
240
|
+
this.liveMediumPath = '/run/archiso/bootmnt/';
|
|
241
|
+
this.squashfs = `arch/x86_64/airootfs.sfs`;
|
|
242
|
+
break;
|
|
223
243
|
}
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
244
|
+
default: {
|
|
245
|
+
/**
|
|
246
|
+
* patch per Roy VERIFICARE
|
|
247
|
+
*/
|
|
248
|
+
let found = false;
|
|
249
|
+
let file = path.resolve(__dirname, '../../conf/derivatives.yaml');
|
|
250
|
+
if (fs.existsSync('/etc/penguins-eggs.d/derivatives.yaml')) {
|
|
251
|
+
file = '/etc/penguins-eggs.d/derivatives.yaml';
|
|
252
|
+
}
|
|
253
|
+
const content = fs.readFileSync(file, 'utf8');
|
|
254
|
+
const distros = yaml.load(content);
|
|
255
|
+
for (const distro of distros) {
|
|
256
|
+
if (distro.ids !== undefined) {
|
|
257
|
+
for (let n = 0; n < distro.ids.length; n++) {
|
|
258
|
+
if (this.codenameId === distro.ids[n]) {
|
|
259
|
+
found = true;
|
|
260
|
+
this.distroLike = distro.distroLike;
|
|
261
|
+
this.codenameLikeId = distro.id;
|
|
262
|
+
this.familyId = distro.family;
|
|
263
|
+
}
|
|
234
264
|
}
|
|
235
265
|
}
|
|
236
266
|
}
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
267
|
+
if (!found) {
|
|
268
|
+
console.log(`This distro ${this.distroId}/${this.codenameId} is not yet recognized!`);
|
|
269
|
+
console.log('');
|
|
270
|
+
console.log('You can edit /usr/lib/penguins-eggs/conf/derivatives.yaml to add it -');
|
|
271
|
+
console.log('after that - run: sudo eggs dad -d to re-configure eggs.');
|
|
272
|
+
console.log('If you can create your new iso, you can contribute to the project');
|
|
273
|
+
console.log('by suggesting your modification.');
|
|
274
|
+
process.exit(0);
|
|
275
|
+
}
|
|
246
276
|
}
|
|
247
277
|
}
|
|
278
|
+
/**
|
|
279
|
+
* setting paths: syslinux, isolinux, usrLibPath
|
|
280
|
+
*/
|
|
281
|
+
switch (this.familyId) {
|
|
282
|
+
case 'debian': {
|
|
283
|
+
this.isolinuxPath = '/usr/lib/ISOLINUX/';
|
|
284
|
+
this.syslinuxPath = '/usr/lib/syslinux/modules/bios/';
|
|
285
|
+
this.pxelinuxPath = '/usr/lib/PXELINUX/';
|
|
286
|
+
this.memdiskPath = '/usr/lib/syslinux/';
|
|
287
|
+
this.usrLibPath = '/usr/lib/' + Utils.usrLibPath();
|
|
288
|
+
break;
|
|
289
|
+
}
|
|
290
|
+
case 'archlinux': {
|
|
291
|
+
this.syslinuxPath = '/usr/lib/syslinux/bios/';
|
|
292
|
+
this.pxelinuxPath = this.syslinuxPath;
|
|
293
|
+
this.usrLibPath = '/usr/lib/';
|
|
294
|
+
this.memdiskPath = this.syslinuxPath;
|
|
295
|
+
this.isolinuxPath = this.syslinuxPath;
|
|
296
|
+
break;
|
|
297
|
+
}
|
|
298
|
+
// No default
|
|
299
|
+
} // Fine analisi codenameId
|
|
248
300
|
}
|
|
249
|
-
/**
|
|
250
|
-
* setting paths: syslinux, isolinux, usrLibPath
|
|
251
|
-
*/
|
|
252
|
-
switch (this.familyId) {
|
|
253
|
-
case 'debian': {
|
|
254
|
-
this.isolinuxPath = '/usr/lib/ISOLINUX/';
|
|
255
|
-
this.syslinuxPath = '/usr/lib/syslinux/modules/bios/';
|
|
256
|
-
this.pxelinuxPath = '/usr/lib/PXELINUX/';
|
|
257
|
-
this.memdiskPath = '/usr/lib/syslinux/';
|
|
258
|
-
this.usrLibPath = '/usr/lib/' + Utils.usrLibPath();
|
|
259
|
-
break;
|
|
260
|
-
}
|
|
261
|
-
case 'archlinux': {
|
|
262
|
-
this.syslinuxPath = '/usr/lib/syslinux/bios/';
|
|
263
|
-
this.pxelinuxPath = this.syslinuxPath;
|
|
264
|
-
this.usrLibPath = '/usr/lib/';
|
|
265
|
-
this.memdiskPath = this.syslinuxPath;
|
|
266
|
-
this.isolinuxPath = this.syslinuxPath;
|
|
267
|
-
break;
|
|
268
|
-
}
|
|
269
|
-
// No default
|
|
270
|
-
} // Fine analisi codenameId
|
|
271
301
|
/**
|
|
272
302
|
* if lsb-release exists
|
|
273
303
|
*/
|
|
@@ -275,6 +305,10 @@ class Distro {
|
|
|
275
305
|
if (fs.existsSync(lsbConfig)) {
|
|
276
306
|
this.distroId = Utils.searchOnFile(lsbConfig, `DISTRIB_ID`);
|
|
277
307
|
this.codenameId = Utils.searchOnFile(lsbConfig, `DISTRIB_CODENAME`);
|
|
308
|
+
// patch for BigLinux
|
|
309
|
+
if (this.distroId.toLowerCase().includes('biglinux')) {
|
|
310
|
+
this.distroId = 'biglinux';
|
|
311
|
+
}
|
|
278
312
|
}
|
|
279
313
|
/**
|
|
280
314
|
* ManjaroLinux and BigLinux
|