penguins-eggs 10.0.15 → 10.0.19
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 -8
- package/README.md +30 -30
- package/conf/yolk.yaml +52 -0
- package/dist/classes/bleach.js +2 -2
- package/dist/classes/distro.js +30 -7
- 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/ovary.d.ts +7 -2
- package/dist/classes/ovary.js +57 -32
- package/dist/classes/pacman.js +22 -21
- package/dist/classes/utils.js +8 -1
- package/dist/classes/yolk.js +4 -3
- package/dist/commands/produce.d.ts +0 -1
- package/dist/commands/produce.js +1 -3
- package/manpages/doc/man/eggs.1.gz +0 -0
- package/manpages/doc/man/eggs.html +4 -5
- package/package.json +11 -11
- package/scripts/_eggs +8 -7
- package/scripts/eggs.bash +3 -3
package/.oclif.manifest.json
CHANGED
|
@@ -662,13 +662,6 @@
|
|
|
662
662
|
"allowNo": false,
|
|
663
663
|
"type": "boolean"
|
|
664
664
|
},
|
|
665
|
-
"udf": {
|
|
666
|
-
"char": "U",
|
|
667
|
-
"description": "udf, create iso UDF format using genisoimage",
|
|
668
|
-
"name": "udf",
|
|
669
|
-
"allowNo": false,
|
|
670
|
-
"type": "boolean"
|
|
671
|
-
},
|
|
672
665
|
"yolk": {
|
|
673
666
|
"char": "y",
|
|
674
667
|
"description": "force yolk renew",
|
|
@@ -1468,5 +1461,5 @@
|
|
|
1468
1461
|
]
|
|
1469
1462
|
}
|
|
1470
1463
|
},
|
|
1471
|
-
"version": "10.0.
|
|
1464
|
+
"version": "10.0.19"
|
|
1472
1465
|
}
|
package/README.md
CHANGED
|
@@ -32,6 +32,7 @@ penguins-eggs
|
|
|
32
32
|
* [Cook eggs in 5 minutes!](https://penguins-eggs.net/docs/Tutorial/eggs5)
|
|
33
33
|
* [Users guide](https://penguins-eggs.net/docs/Tutorial/eggs-users-guide)
|
|
34
34
|
* [Wardrobe users' guide](https://penguins-eggs.net/docs/Tutorial/wardrobe-users-guide)
|
|
35
|
+
* [Penguins' eggs book](https://penguins-eggs.gitbook.io/book)
|
|
35
36
|
* [FAQ](https://penguins-eggs.net/docs/faq)
|
|
36
37
|
* [Changelog](https://github.com/pieroproietti/penguins-eggs/blob/master/CHANGELOG.md#changelog)
|
|
37
38
|
|
|
@@ -485,7 +486,7 @@ EXAMPLES
|
|
|
485
486
|
$ eggs adapt
|
|
486
487
|
```
|
|
487
488
|
|
|
488
|
-
_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.19/src/commands/adapt.ts)_
|
|
489
490
|
|
|
490
491
|
## `eggs analyze`
|
|
491
492
|
|
|
@@ -506,7 +507,7 @@ EXAMPLES
|
|
|
506
507
|
sudo eggs analyze
|
|
507
508
|
```
|
|
508
509
|
|
|
509
|
-
_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.19/src/commands/analyze.ts)_
|
|
510
511
|
|
|
511
512
|
## `eggs autocomplete [SHELL]`
|
|
512
513
|
|
|
@@ -537,7 +538,7 @@ EXAMPLES
|
|
|
537
538
|
$ eggs autocomplete --refresh-cache
|
|
538
539
|
```
|
|
539
540
|
|
|
540
|
-
_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.7/src/commands/autocomplete/index.ts)_
|
|
541
542
|
|
|
542
543
|
## `eggs calamares`
|
|
543
544
|
|
|
@@ -570,7 +571,7 @@ EXAMPLES
|
|
|
570
571
|
sudo eggs calamares --remove
|
|
571
572
|
```
|
|
572
573
|
|
|
573
|
-
_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.19/src/commands/calamares.ts)_
|
|
574
575
|
|
|
575
576
|
## `eggs config`
|
|
576
577
|
|
|
@@ -597,7 +598,7 @@ EXAMPLES
|
|
|
597
598
|
sudo eggs config --clean --nointeractive
|
|
598
599
|
```
|
|
599
600
|
|
|
600
|
-
_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.19/src/commands/config.ts)_
|
|
601
602
|
|
|
602
603
|
## `eggs cuckoo`
|
|
603
604
|
|
|
@@ -617,7 +618,7 @@ EXAMPLES
|
|
|
617
618
|
sudo eggs cuckoo
|
|
618
619
|
```
|
|
619
620
|
|
|
620
|
-
_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.19/src/commands/cuckoo.ts)_
|
|
621
622
|
|
|
622
623
|
## `eggs dad`
|
|
623
624
|
|
|
@@ -645,7 +646,7 @@ EXAMPLES
|
|
|
645
646
|
sudo dad --default
|
|
646
647
|
```
|
|
647
648
|
|
|
648
|
-
_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.19/src/commands/dad.ts)_
|
|
649
650
|
|
|
650
651
|
## `eggs export deb`
|
|
651
652
|
|
|
@@ -672,7 +673,7 @@ EXAMPLES
|
|
|
672
673
|
$ eggs export deb --all
|
|
673
674
|
```
|
|
674
675
|
|
|
675
|
-
_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.19/src/commands/export/deb.ts)_
|
|
676
677
|
|
|
677
678
|
## `eggs export iso`
|
|
678
679
|
|
|
@@ -697,7 +698,7 @@ EXAMPLES
|
|
|
697
698
|
$ eggs export iso --clean
|
|
698
699
|
```
|
|
699
700
|
|
|
700
|
-
_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.19/src/commands/export/iso.ts)_
|
|
701
702
|
|
|
702
703
|
## `eggs help [COMMAND]`
|
|
703
704
|
|
|
@@ -717,7 +718,7 @@ DESCRIPTION
|
|
|
717
718
|
Display help for eggs.
|
|
718
719
|
```
|
|
719
720
|
|
|
720
|
-
_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)_
|
|
721
722
|
|
|
722
723
|
## `eggs install`
|
|
723
724
|
|
|
@@ -758,7 +759,7 @@ EXAMPLES
|
|
|
758
759
|
sudo eggs install --chroot
|
|
759
760
|
```
|
|
760
761
|
|
|
761
|
-
_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.19/src/commands/install.ts)_
|
|
762
763
|
|
|
763
764
|
## `eggs kill`
|
|
764
765
|
|
|
@@ -781,7 +782,7 @@ EXAMPLES
|
|
|
781
782
|
sudo eggs kill
|
|
782
783
|
```
|
|
783
784
|
|
|
784
|
-
_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.19/src/commands/kill.ts)_
|
|
785
786
|
|
|
786
787
|
## `eggs krill`
|
|
787
788
|
|
|
@@ -840,7 +841,7 @@ EXAMPLES
|
|
|
840
841
|
$ eggs mom
|
|
841
842
|
```
|
|
842
843
|
|
|
843
|
-
_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.19/src/commands/mom.ts)_
|
|
844
845
|
|
|
845
846
|
## `eggs produce`
|
|
846
847
|
|
|
@@ -849,13 +850,12 @@ produce a live image from your system whithout your data
|
|
|
849
850
|
```
|
|
850
851
|
USAGE
|
|
851
852
|
$ eggs produce [--addons <value>...] [--basename <value>] [-c] [-C] [--excludes <value>...] [-h] [--links
|
|
852
|
-
<value>...] [-m] [-N] [-n] [-p] [-P <value>] [--release] [-s] [-f] [--theme <value>] [-u] [-v] [-
|
|
853
|
+
<value>...] [-m] [-N] [-n] [-p] [-P <value>] [--release] [-s] [-f] [--theme <value>] [-u] [-v] [-y]
|
|
853
854
|
|
|
854
855
|
FLAGS
|
|
855
856
|
-C, --cryptedclone crypted clone
|
|
856
857
|
-N, --noicon no icon eggs on desktop
|
|
857
858
|
-P, --prefix=<value> prefix
|
|
858
|
-
-U, --udf udf, create iso UDF format using genisoimage
|
|
859
859
|
-c, --clone clone
|
|
860
860
|
-f, --standard standard compression: xz -b 1M
|
|
861
861
|
-h, --help Show CLI help.
|
|
@@ -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.19/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.19/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.19/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.19/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.19/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.19/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.19/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.19/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.19/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.19/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.19/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.19/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.19/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.19/src/commands/wardrobe/wear.ts)_
|
|
1252
1252
|
<!-- commandsstop -->
|
|
1253
1253
|
|
|
1254
1254
|
# penGUI
|
package/conf/yolk.yaml
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
packages:
|
|
2
|
+
- cryptsetup
|
|
3
|
+
- grub-efi-amd64
|
|
4
|
+
- grub-pc
|
|
5
|
+
- keyutils
|
|
6
|
+
- shim-signed
|
|
7
|
+
############################################
|
|
8
|
+
# optional packages: yoi can add or remove
|
|
9
|
+
############################################
|
|
10
|
+
#- amd64-microcode_3.20230808.1.1~deb12u1_amd64.deb
|
|
11
|
+
#- atmel-firmware_1.3-7_all.deb
|
|
12
|
+
#- b43-fwcutter_019-8_amd64.deb
|
|
13
|
+
#- bluez-firmware_1.2-9_all.deb
|
|
14
|
+
#- cheese_43.0-1_amd64.deb
|
|
15
|
+
#- cheese-common_43.0-1_all.deb
|
|
16
|
+
#- cups_2.4.2-3+deb12u5_amd64.deb
|
|
17
|
+
#- cups-bsd_2.4.2-3+deb12u5_amd64.deb
|
|
18
|
+
#- cups-client_2.4.2-3+deb12u5_amd64.deb
|
|
19
|
+
#- cups-common_2.4.2-3+deb12u5_all.deb
|
|
20
|
+
#- cups-core-drivers_2.4.2-3+deb12u5_amd64.deb
|
|
21
|
+
#- cups-daemon_2.4.2-3+deb12u5_amd64.deb
|
|
22
|
+
#- cups-ipp-utils_2.4.2-3+deb12u5_amd64.deb
|
|
23
|
+
#- cups-ppdc_2.4.2-3+deb12u5_amd64.deb
|
|
24
|
+
#- cups-server-common_2.4.2-3+deb12u5_all.deb
|
|
25
|
+
#- dahdi-firmware-nonfree_2.11.1.0.20170917-2_all.deb
|
|
26
|
+
#- firmware-amd-graphics_20230210-5_all.deb
|
|
27
|
+
#- firmware-ast_20140808-7_all.deb
|
|
28
|
+
#- firmware-b43-installer_019-8_all.deb
|
|
29
|
+
#- firmware-b43legacy-installer_019-8_all.deb
|
|
30
|
+
#- firmware-bnx2_20230210-5_all.deb
|
|
31
|
+
#- firmware-bnx2x_20230210-5_all.deb
|
|
32
|
+
#- firmware-brcm80211_20230210-5_all.deb
|
|
33
|
+
#- firmware-intel-sound_20230210-5_all.deb
|
|
34
|
+
#- firmware-ipw2x00_20230210-5_all.deb
|
|
35
|
+
#- firmware-ivtv_20230210-5_all.deb
|
|
36
|
+
#- firmware-iwlwifi_20230210-5_all.deb
|
|
37
|
+
#- firmware-linux-nonfree_20230210-5_all.deb
|
|
38
|
+
#- firmware-realtek_20230210-5_all.deb
|
|
39
|
+
#- firmware-realtek-rtl8723cs-bt_20181104-2_all.deb
|
|
40
|
+
#- firmware-sof-signed_2.2.4-1_all.deb
|
|
41
|
+
#- firmware-zd1211_1.5-10_all.deb
|
|
42
|
+
#- intel-microcode_3.20231114.1~deb12u1_amd64.deb
|
|
43
|
+
#- libcheese-gtk25_43.0-1_amd64.deb
|
|
44
|
+
#- libcheese8_43.0-1_amd64.deb
|
|
45
|
+
#- libcups2_2.4.2-3+deb12u5_amd64.deb
|
|
46
|
+
#- libcupsimage2_2.4.2-3+deb12u5_amd64.deb
|
|
47
|
+
#- libsane_1.2.1-2_amd64.deb
|
|
48
|
+
#- libsane-common_1.2.1-2_all.deb
|
|
49
|
+
#- libsane1_1.2.1-2_amd64.deb
|
|
50
|
+
#- sane_1.0.14-17_amd64.deb
|
|
51
|
+
#- sane-airscan_0.99.27-1+b1_amd64.deb
|
|
52
|
+
#- sane-utils_1.2.1-2_amd64.deb
|
package/dist/classes/bleach.js
CHANGED
|
@@ -44,8 +44,8 @@ export default class Bleach {
|
|
|
44
44
|
}
|
|
45
45
|
await exec('apt-get clean', echo);
|
|
46
46
|
await exec('apt-get autoclean', echo);
|
|
47
|
-
const
|
|
48
|
-
|
|
47
|
+
const lockFile = '/var/lib/apt/lists/lock';
|
|
48
|
+
await exec(`rm ${lockFile} -rf`, echo);
|
|
49
49
|
}
|
|
50
50
|
/**
|
|
51
51
|
* cleanHistory
|
package/dist/classes/distro.js
CHANGED
|
@@ -203,13 +203,24 @@ class Distro {
|
|
|
203
203
|
case 'Spizaetus':
|
|
204
204
|
case 'n/a':
|
|
205
205
|
case 'rolling': {
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
206
|
+
if (this.distroId === "Alpine") {
|
|
207
|
+
// Alpine
|
|
208
|
+
this.familyId = 'alpine';
|
|
209
|
+
this.distroLike = 'Alpine';
|
|
210
|
+
this.codenameId = 'rolling'; // questo viene rimosso dal nome
|
|
211
|
+
this.codenameLikeId = 'alpine-rolling';
|
|
212
|
+
this.liveMediumPath = '/.modloop/'; // ? è il mount della root su cd di installatione
|
|
213
|
+
this.squashfs = `to/define/filestem.squashfs`;
|
|
214
|
+
}
|
|
215
|
+
else {
|
|
216
|
+
// Arch, ArcoLinux, BlendOS, EndeavourOS, Garuda, RebornOS
|
|
217
|
+
this.familyId = 'archlinux';
|
|
218
|
+
this.distroLike = 'Arch';
|
|
219
|
+
this.codenameId = 'rolling';
|
|
220
|
+
this.codenameLikeId = 'rolling';
|
|
221
|
+
this.liveMediumPath = '/run/archiso/bootmnt/';
|
|
222
|
+
this.squashfs = `arch/x86_64/airootfs.sfs`;
|
|
223
|
+
}
|
|
213
224
|
break;
|
|
214
225
|
}
|
|
215
226
|
default: {
|
|
@@ -266,6 +277,14 @@ class Distro {
|
|
|
266
277
|
this.isolinuxPath = this.syslinuxPath;
|
|
267
278
|
break;
|
|
268
279
|
}
|
|
280
|
+
case 'alpine': {
|
|
281
|
+
this.syslinuxPath = '/usr/share/syslinux/'; //correct
|
|
282
|
+
this.pxelinuxPath = this.syslinuxPath;
|
|
283
|
+
this.usrLibPath = '/usr/lib/';
|
|
284
|
+
this.memdiskPath = this.syslinuxPath;
|
|
285
|
+
this.isolinuxPath = this.syslinuxPath;
|
|
286
|
+
break;
|
|
287
|
+
}
|
|
269
288
|
// No default
|
|
270
289
|
} // Fine analisi codenameId
|
|
271
290
|
/**
|
|
@@ -275,6 +294,10 @@ class Distro {
|
|
|
275
294
|
if (fs.existsSync(lsbConfig)) {
|
|
276
295
|
this.distroId = Utils.searchOnFile(lsbConfig, `DISTRIB_ID`);
|
|
277
296
|
this.codenameId = Utils.searchOnFile(lsbConfig, `DISTRIB_CODENAME`);
|
|
297
|
+
// patch for BigLinux
|
|
298
|
+
if (this.distroId.toLowerCase().includes('biglinux')) {
|
|
299
|
+
this.distroId = 'biglinux';
|
|
300
|
+
}
|
|
278
301
|
}
|
|
279
302
|
/**
|
|
280
303
|
* ManjaroLinux and BigLinux
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ./src/classes/families/alpine.ts
|
|
3
|
+
* penguins-eggs v.10.0.0 / ecmascript 2020
|
|
4
|
+
* author: Piero Proietti
|
|
5
|
+
* email: piero.proietti@gmail.com
|
|
6
|
+
* license: MIT
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Alpine
|
|
10
|
+
* @remarks all the utilities
|
|
11
|
+
*/
|
|
12
|
+
export default class Alpine {
|
|
13
|
+
static packs4calamares: string[];
|
|
14
|
+
/**
|
|
15
|
+
* Alpine: calamaresInstall
|
|
16
|
+
*/
|
|
17
|
+
static calamaresInstall(verbose?: boolean): Promise<void>;
|
|
18
|
+
/**
|
|
19
|
+
* Alpine: calamaresPolicies
|
|
20
|
+
*/
|
|
21
|
+
static calamaresPolicies(): Promise<void>;
|
|
22
|
+
/**
|
|
23
|
+
* Alpine: calamaresRemove
|
|
24
|
+
*/
|
|
25
|
+
static calamaresRemove(verbose?: boolean): Promise<boolean>;
|
|
26
|
+
/**
|
|
27
|
+
* Alpine: isInstalledWayland
|
|
28
|
+
* @returns true if wayland is installed
|
|
29
|
+
*/
|
|
30
|
+
static isInstalledWayland(): boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Alpine: isInstalledXorg
|
|
33
|
+
* @returns true if xorg is installed
|
|
34
|
+
*/
|
|
35
|
+
static isInstalledXorg(): boolean;
|
|
36
|
+
/**
|
|
37
|
+
* Alpine: packageInstall
|
|
38
|
+
* Install the package packageName
|
|
39
|
+
* @param packageName {string} Pacchetto Debian da installare
|
|
40
|
+
* @returns {boolean} True if success
|
|
41
|
+
*/
|
|
42
|
+
static packageInstall(packageName: string): Promise<boolean>;
|
|
43
|
+
/**
|
|
44
|
+
* Alpine: packageIsInstalled OK
|
|
45
|
+
* restuisce VERO se il pacchetto è installato
|
|
46
|
+
* @param packageName
|
|
47
|
+
*/
|
|
48
|
+
static packageIsInstalled(packageName: string): boolean;
|
|
49
|
+
/**
|
|
50
|
+
* Alpine: packagePacmanAvailable
|
|
51
|
+
* restuisce VERO se il pacchetto è installato
|
|
52
|
+
* @param packageName
|
|
53
|
+
*/
|
|
54
|
+
static packagePacmanAvailable(packageName: string): Promise<boolean>;
|
|
55
|
+
}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ./src/classes/families/alpine.ts
|
|
3
|
+
* penguins-eggs v.10.0.0 / ecmascript 2020
|
|
4
|
+
* author: Piero Proietti
|
|
5
|
+
* email: piero.proietti@gmail.com
|
|
6
|
+
* license: MIT
|
|
7
|
+
*/
|
|
8
|
+
import shx from 'shelljs';
|
|
9
|
+
import { exec } from '../../lib/utils.js';
|
|
10
|
+
import Utils from '../utils.js';
|
|
11
|
+
/**
|
|
12
|
+
* Alpine
|
|
13
|
+
* @remarks all the utilities
|
|
14
|
+
*/
|
|
15
|
+
export default class Alpine {
|
|
16
|
+
static packs4calamares = ['calamares'];
|
|
17
|
+
/**
|
|
18
|
+
* Alpine: calamaresInstall
|
|
19
|
+
*/
|
|
20
|
+
static async calamaresInstall(verbose = false) {
|
|
21
|
+
const echo = Utils.setEcho(verbose);
|
|
22
|
+
try {
|
|
23
|
+
let cmd = `apk add ${this.packs4calamares}`;
|
|
24
|
+
try {
|
|
25
|
+
await exec(cmd, echo);
|
|
26
|
+
}
|
|
27
|
+
catch {
|
|
28
|
+
Utils.error(`Cannot install ${this.packs4calamares}`); // + e.error)
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
catch {
|
|
32
|
+
Utils.error(`Cannot download ${this.packs4calamares}`); // + e.error)
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Alpine: calamaresPolicies
|
|
37
|
+
*/
|
|
38
|
+
static async calamaresPolicies() {
|
|
39
|
+
const policyFile = '/usr/share/polkit-1/actions/com.github.calamares.calamares.policy';
|
|
40
|
+
await exec(`sed -i 's/auth_admin/yes/' ${policyFile}`);
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Alpine: calamaresRemove
|
|
44
|
+
*/
|
|
45
|
+
static async calamaresRemove(verbose = true) {
|
|
46
|
+
verbose = true; // serve per pacman
|
|
47
|
+
let removed = true;
|
|
48
|
+
const echo = Utils.setEcho(verbose);
|
|
49
|
+
await exec(`apk del ${this.packs4calamares}`);
|
|
50
|
+
await exec('rm /etc/calamares -rf', echo);
|
|
51
|
+
return removed;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Alpine: isInstalledWayland
|
|
55
|
+
* @returns true if wayland is installed
|
|
56
|
+
*/
|
|
57
|
+
static isInstalledWayland() {
|
|
58
|
+
return this.packageIsInstalled('xwayland');
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Alpine: isInstalledXorg
|
|
62
|
+
* @returns true if xorg is installed
|
|
63
|
+
*/
|
|
64
|
+
static isInstalledXorg() {
|
|
65
|
+
return this.packageIsInstalled('xorg-server-common');
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Alpine: packageInstall
|
|
69
|
+
* Install the package packageName
|
|
70
|
+
* @param packageName {string} Pacchetto Debian da installare
|
|
71
|
+
* @returns {boolean} True if success
|
|
72
|
+
*/
|
|
73
|
+
static async packageInstall(packageName) {
|
|
74
|
+
let retVal = false;
|
|
75
|
+
if (shx.exec(`/sbin/apk add ${packageName}`, { silent: true }) === '0') {
|
|
76
|
+
retVal = true;
|
|
77
|
+
}
|
|
78
|
+
return retVal;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Alpine: packageIsInstalled OK
|
|
82
|
+
* restuisce VERO se il pacchetto è installato
|
|
83
|
+
* @param packageName
|
|
84
|
+
*/
|
|
85
|
+
static packageIsInstalled(packageName) {
|
|
86
|
+
let installed = false;
|
|
87
|
+
const cmd = `/sbin/apk info -e ${packageName}`;
|
|
88
|
+
const stdout = shx.exec(cmd, { silent: true }).stdout.trim();
|
|
89
|
+
if (stdout.includes(packageName)) {
|
|
90
|
+
installed = true;
|
|
91
|
+
}
|
|
92
|
+
return installed;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Alpine: packagePacmanAvailable
|
|
96
|
+
* restuisce VERO se il pacchetto è installato
|
|
97
|
+
* @param packageName
|
|
98
|
+
*/
|
|
99
|
+
static async packagePacmanAvailable(packageName) {
|
|
100
|
+
let available = false;
|
|
101
|
+
const cmd = `/sbin/apk search ${packageName} | awk '{ print $1 }'`;
|
|
102
|
+
const stdout = shx.exec(cmd, { silent: true }).stdout.trim();
|
|
103
|
+
if (stdout == packageName) {
|
|
104
|
+
available = true;
|
|
105
|
+
}
|
|
106
|
+
return available;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
@@ -24,7 +24,8 @@ export default class Archlinux {
|
|
|
24
24
|
// const cal_eggs = 'arco-calamares-3.3.2-02-x86_64.pkg.tar.zst' // 2024-02-10
|
|
25
25
|
// const cal_eggs = 'arco-calamares-3.3.5-02-x86_64.pkg.tar.zst' // 2024-03-10
|
|
26
26
|
// const cal_eggs = 'calamares-garuda-3.3.5.r19.g10acebff4-1-x86_64.pkg.tar.zst' // 2024-03-10
|
|
27
|
-
const cal_eggs = 'arco-calamares-3.3.6-06-x86_64.pkg.tar.zst'
|
|
27
|
+
// const cal_eggs = 'arco-calamares-3.3.6-06-x86_64.pkg.tar.zst' // 24/04/27
|
|
28
|
+
const cal_eggs = 'calamares-eggs-3.3.8.r39.g80ef430-1-x86_64.pkg.tar.zst'; // 12/07/24
|
|
28
29
|
let cmd = `wget -O /tmp/${cal_eggs} https://sourceforge.net/projects/penguins-eggs/files/PKGBUILD/${cal_eggs}/download`;
|
|
29
30
|
try {
|
|
30
31
|
await exec(cmd, echo);
|
package/dist/classes/ovary.d.ts
CHANGED
|
@@ -87,6 +87,11 @@ export default class Ovary {
|
|
|
87
87
|
* necessita di echoYes
|
|
88
88
|
*/
|
|
89
89
|
initrdArch(): Promise<void>;
|
|
90
|
+
/**
|
|
91
|
+
* initrdArch()
|
|
92
|
+
* necessita di echoYes
|
|
93
|
+
*/
|
|
94
|
+
initrdAlpine(): Promise<void>;
|
|
90
95
|
/**
|
|
91
96
|
* We must upgrade to initrdCreate for Debian/Ubuntu
|
|
92
97
|
* @returns
|
|
@@ -159,7 +164,7 @@ export default class Ovary {
|
|
|
159
164
|
* @param unsecure
|
|
160
165
|
* @param verbose
|
|
161
166
|
*/
|
|
162
|
-
produce(clone: boolean | undefined, cryptedclone: boolean | undefined, scriptOnly: boolean | undefined, yolkRenew: boolean | undefined, release: boolean | undefined, myAddons: IAddons, myLinks: string[], excludes: IExcludes, nointeractive?: boolean, noicons?: boolean, unsecure?: boolean,
|
|
167
|
+
produce(clone: boolean | undefined, cryptedclone: boolean | undefined, scriptOnly: boolean | undefined, yolkRenew: boolean | undefined, release: boolean | undefined, myAddons: IAddons, myLinks: string[], excludes: IExcludes, nointeractive?: boolean, noicons?: boolean, unsecure?: boolean, verbose?: boolean): Promise<void>;
|
|
163
168
|
/**
|
|
164
169
|
* syslinux
|
|
165
170
|
*/
|
|
@@ -191,7 +196,7 @@ export default class Ovary {
|
|
|
191
196
|
* @param cryptedclone
|
|
192
197
|
* @returns cmd 4 mkiso
|
|
193
198
|
*/
|
|
194
|
-
xorrisoCommand(clone?: boolean, cryptedclone?: boolean
|
|
199
|
+
xorrisoCommand(clone?: boolean, cryptedclone?: boolean): Promise<string>;
|
|
195
200
|
/**
|
|
196
201
|
* Creazione link desktop per lxde
|
|
197
202
|
* @param name
|
package/dist/classes/ovary.js
CHANGED
|
@@ -93,7 +93,7 @@ export default class Ovary {
|
|
|
93
93
|
*/
|
|
94
94
|
const dirs = fs.readdirSync('/');
|
|
95
95
|
const startLine = '#############################################################';
|
|
96
|
-
const titleLine = '#
|
|
96
|
+
const titleLine = '# ---------------------------------------------------------';
|
|
97
97
|
const endLine = '# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n';
|
|
98
98
|
let lnkDest = '';
|
|
99
99
|
let cmd = '';
|
|
@@ -198,9 +198,14 @@ export default class Ovary {
|
|
|
198
198
|
ignore: false
|
|
199
199
|
});
|
|
200
200
|
const users = result.data.split('\n');
|
|
201
|
+
let cmdUserDel = `userdel`;
|
|
202
|
+
if (this.familyId === 'alpine') {
|
|
203
|
+
// On Alpine we have just deluser
|
|
204
|
+
cmdUserDel = "deluser";
|
|
205
|
+
}
|
|
201
206
|
for (let i = 0; i < users.length - 1; i++) {
|
|
202
207
|
// cmds.push(await rexec(`chroot ${this.settings.work_dir.merged} deluser ${users[i]}`, verbose))
|
|
203
|
-
cmds.push(await rexec(`chroot ${this.settings.work_dir.merged}
|
|
208
|
+
cmds.push(await rexec(`chroot ${this.settings.work_dir.merged} ${cmdUserDel} ${users[i]}`, this.verbose));
|
|
204
209
|
}
|
|
205
210
|
}
|
|
206
211
|
/**
|
|
@@ -215,14 +220,21 @@ export default class Ovary {
|
|
|
215
220
|
const cmds = [];
|
|
216
221
|
cmds.push(await rexec('chroot ' + this.settings.work_dir.merged + ' rm /home/' + this.settings.config.user_opt + ' -rf', this.verbose));
|
|
217
222
|
cmds.push(await rexec('chroot ' + this.settings.work_dir.merged + ' mkdir /home/' + this.settings.config.user_opt, this.verbose));
|
|
218
|
-
|
|
223
|
+
if (this.familyId === 'alpine') {
|
|
224
|
+
// Create user using adduser
|
|
225
|
+
cmds.push(await rexec('chroot ' + this.settings.work_dir.merged + ' adduser -D -h /home/' + this.settings.config.user_opt + ' -s /bin/bash ' + this.settings.config.user_opt, this.verbose));
|
|
226
|
+
}
|
|
227
|
+
else {
|
|
228
|
+
// Create user using useradd
|
|
229
|
+
cmds.push(await rexec('chroot ' + this.settings.work_dir.merged + ' useradd ' + this.settings.config.user_opt + ' --home-dir /home/' + this.settings.config.user_opt + ' --shell /bin/bash ', this.verbose));
|
|
230
|
+
}
|
|
231
|
+
// live password
|
|
232
|
+
cmds.push(await rexec('chroot ' + this.settings.work_dir.merged + ' echo ' + this.settings.config.user_opt + ':' + this.settings.config.user_opt_passwd + ' | chroot ' + this.settings.work_dir.merged + ' chpasswd', this.verbose));
|
|
233
|
+
// root password
|
|
234
|
+
cmds.push(await rexec('chroot ' + this.settings.work_dir.merged + ' echo root:' + this.settings.config.root_passwd + ' | chroot ' + this.settings.work_dir.merged + ' chpasswd', this.verbose));
|
|
219
235
|
cmds.push(await rexec('chroot ' + this.settings.work_dir.merged + ' cp /etc/skel/. /home/' + this.settings.config.user_opt + ' -R', this.verbose));
|
|
220
236
|
// da problemi con il mount sshfs
|
|
221
237
|
cmds.push(await rexec('chroot ' + this.settings.work_dir.merged + ' chown ' + this.settings.config.user_opt + ':users' + ' /home/' + this.settings.config.user_opt + ' -R', this.verbose));
|
|
222
|
-
// live password
|
|
223
|
-
cmds.push(await rexec('chroot ' + this.settings.work_dir.merged + ' echo ' + this.settings.config.user_opt + ':' + this.settings.config.user_opt_passwd + '| chroot ' + this.settings.work_dir.merged + ' chpasswd', this.verbose));
|
|
224
|
-
// root password
|
|
225
|
-
cmds.push(await rexec('chroot ' + this.settings.work_dir.merged + ' echo root:' + this.settings.config.root_passwd + '| chroot ' + this.settings.work_dir.merged + ' chpasswd', this.verbose));
|
|
226
238
|
if (this.familyId === 'debian') {
|
|
227
239
|
cmds.push(await rexec(`chroot ${this.settings.work_dir.merged} usermod -aG sudo ${this.settings.config.user_opt}`, this.verbose));
|
|
228
240
|
}
|
|
@@ -711,6 +723,21 @@ export default class Ovary {
|
|
|
711
723
|
const pathConf = path.resolve(__dirname, `../../mkinitcpio/${fileConf}/live.conf`);
|
|
712
724
|
await exec(`mkinitcpio -c ${pathConf} -g ${this.settings.iso_work}live/${initrdImg}`, Utils.setEcho(true));
|
|
713
725
|
}
|
|
726
|
+
/**
|
|
727
|
+
* initrdArch()
|
|
728
|
+
* necessita di echoYes
|
|
729
|
+
*/
|
|
730
|
+
async initrdAlpine() {
|
|
731
|
+
Utils.warning(`creating ${path.basename(this.settings.initrdImg)} on ISO/live`);
|
|
732
|
+
let initrdImg = Utils.initrdImg();
|
|
733
|
+
//initrdImg = initrdImg.slice(Math.max(0, initrdImg.lastIndexOf('/') + 1))
|
|
734
|
+
Utils.warning(`Creating ${initrdImg} in ${this.settings.iso_work}live/`);
|
|
735
|
+
const { distroId } = this.settings.distro;
|
|
736
|
+
// da cambiare ...
|
|
737
|
+
let fileConf = 'arch';
|
|
738
|
+
const pathConf = path.resolve(__dirname, `../../mkinitcpio/${fileConf}/live.conf`);
|
|
739
|
+
await exec(`mkinitcpio -c ${pathConf} -g ${this.settings.iso_work}live/${initrdImg}`, Utils.setEcho(true));
|
|
740
|
+
}
|
|
714
741
|
/**
|
|
715
742
|
* We must upgrade to initrdCreate for Debian/Ubuntu
|
|
716
743
|
* @returns
|
|
@@ -1275,7 +1302,7 @@ export default class Ovary {
|
|
|
1275
1302
|
* @param unsecure
|
|
1276
1303
|
* @param verbose
|
|
1277
1304
|
*/
|
|
1278
|
-
async produce(clone = false, cryptedclone = false, scriptOnly = false, yolkRenew = false, release = false, myAddons, myLinks, excludes, nointeractive = false, noicons = false, unsecure = false,
|
|
1305
|
+
async produce(clone = false, cryptedclone = false, scriptOnly = false, yolkRenew = false, release = false, myAddons, myLinks, excludes, nointeractive = false, noicons = false, unsecure = false, verbose = false) {
|
|
1279
1306
|
this.verbose = verbose;
|
|
1280
1307
|
this.echo = Utils.setEcho(verbose);
|
|
1281
1308
|
if (this.verbose) {
|
|
@@ -1467,7 +1494,7 @@ export default class Ovary {
|
|
|
1467
1494
|
Utils.warning(`moving ${luksFile} in ${this.nest}iso/live`);
|
|
1468
1495
|
await exec(`mv ${luksFile} ${this.nest}iso/live`, this.echo);
|
|
1469
1496
|
}
|
|
1470
|
-
const mkIsofsCmd = (await this.xorrisoCommand(clone, cryptedclone
|
|
1497
|
+
const mkIsofsCmd = (await this.xorrisoCommand(clone, cryptedclone)).replaceAll(/\s\s+/g, ' ');
|
|
1471
1498
|
this.makeDotDisk(this.volid, mksquashfsCmd, mkIsofsCmd);
|
|
1472
1499
|
/**
|
|
1473
1500
|
* AntiX/MX LINUX
|
|
@@ -1648,7 +1675,7 @@ export default class Ovary {
|
|
|
1648
1675
|
* @param cryptedclone
|
|
1649
1676
|
* @returns cmd 4 mkiso
|
|
1650
1677
|
*/
|
|
1651
|
-
async xorrisoCommand(clone = false, cryptedclone = false
|
|
1678
|
+
async xorrisoCommand(clone = false, cryptedclone = false) {
|
|
1652
1679
|
if (this.verbose) {
|
|
1653
1680
|
console.log('Ovary: xorrisoCommand');
|
|
1654
1681
|
}
|
|
@@ -1695,28 +1722,26 @@ export default class Ovary {
|
|
|
1695
1722
|
uefi_isohybridGptBasdat = '-isohybrid-gpt-basdat';
|
|
1696
1723
|
uefi_noEmulBoot = '-no-emul-boot';
|
|
1697
1724
|
}
|
|
1698
|
-
if (
|
|
1699
|
-
|
|
1700
|
-
|
|
1701
|
-
|
|
1702
|
-
|
|
1703
|
-
|
|
1704
|
-
|
|
1705
|
-
|
|
1706
|
-
|
|
1707
|
-
|
|
1708
|
-
|
|
1709
|
-
|
|
1710
|
-
|
|
1711
|
-
|
|
1712
|
-
|
|
1713
|
-
|
|
1714
|
-
|
|
1715
|
-
|
|
1716
|
-
|
|
1717
|
-
|
|
1718
|
-
return command;
|
|
1719
|
-
}
|
|
1725
|
+
if (Pacman.packageIsInstalled('genisoimage')) {
|
|
1726
|
+
this.genisoimage = true;
|
|
1727
|
+
command = `genisoimage \
|
|
1728
|
+
-iso-level 3 \
|
|
1729
|
+
-allow-limited-size \
|
|
1730
|
+
-joliet-long \
|
|
1731
|
+
-r \
|
|
1732
|
+
-V ${this.volid} \
|
|
1733
|
+
-cache-inodes \
|
|
1734
|
+
-J \
|
|
1735
|
+
-l \
|
|
1736
|
+
-b isolinux/isolinux.bin \
|
|
1737
|
+
-c isolinux/boot.cat \
|
|
1738
|
+
-no-emul-boot \
|
|
1739
|
+
-boot-load-size 4 \
|
|
1740
|
+
-boot-info-table \
|
|
1741
|
+
-eltorito-alt-boot \
|
|
1742
|
+
-e boot/grub/efiboot.img \
|
|
1743
|
+
-o ${output} ${this.settings.iso_work}`;
|
|
1744
|
+
return command;
|
|
1720
1745
|
}
|
|
1721
1746
|
// xorriso
|
|
1722
1747
|
command = `xorriso -as mkisofs \
|
package/dist/classes/pacman.js
CHANGED
|
@@ -15,7 +15,7 @@ import Distro from './distro.js';
|
|
|
15
15
|
import Archlinux from './families/archlinux.js';
|
|
16
16
|
import Debian from './families/debian.js';
|
|
17
17
|
import Fedora from './families/fedora.js';
|
|
18
|
-
import
|
|
18
|
+
import Alpine from './families/alpine.js';
|
|
19
19
|
import Settings from './settings.js';
|
|
20
20
|
import Utils from './utils.js';
|
|
21
21
|
const __dirname = path.dirname(new URL(import.meta.url).pathname);
|
|
@@ -79,8 +79,8 @@ export default class Pacman {
|
|
|
79
79
|
await Archlinux.calamaresInstall(verbose);
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
|
-
else if (this.distro().familyId === '
|
|
83
|
-
await
|
|
82
|
+
else if (this.distro().familyId === 'alpine') {
|
|
83
|
+
await Alpine.calamaresInstall(verbose);
|
|
84
84
|
}
|
|
85
85
|
// remove others calamares links
|
|
86
86
|
await exec('rm -f /usr/share/applications/calamares-eggs-debugging.desktop');
|
|
@@ -101,8 +101,8 @@ export default class Pacman {
|
|
|
101
101
|
else if (this.distro().familyId === 'archlinux') {
|
|
102
102
|
await Archlinux.calamaresPolicies();
|
|
103
103
|
}
|
|
104
|
-
else if (this.distro().familyId === '
|
|
105
|
-
await
|
|
104
|
+
else if (this.distro().familyId === 'alpine') {
|
|
105
|
+
await Alpine.calamaresPolicies();
|
|
106
106
|
}
|
|
107
107
|
}
|
|
108
108
|
/**
|
|
@@ -119,8 +119,8 @@ export default class Pacman {
|
|
|
119
119
|
else if (this.distro().familyId === 'archlinux') {
|
|
120
120
|
retVal = await Archlinux.calamaresRemove(verbose);
|
|
121
121
|
}
|
|
122
|
-
else if (this.distro().familyId === '
|
|
123
|
-
retVal = await
|
|
122
|
+
else if (this.distro().familyId === 'alpine') {
|
|
123
|
+
retVal = await Alpine.calamaresRemove(verbose);
|
|
124
124
|
}
|
|
125
125
|
return retVal;
|
|
126
126
|
}
|
|
@@ -222,6 +222,7 @@ export default class Pacman {
|
|
|
222
222
|
shx.cp(path.resolve(__dirname, '../../conf/tools.yaml'), config_tools);
|
|
223
223
|
shx.cp(path.resolve(__dirname, '../../conf/krill.yaml'), confRoot);
|
|
224
224
|
shx.cp(path.resolve(__dirname, '../../conf/derivatives.yaml'), confRoot);
|
|
225
|
+
shx.cp(path.resolve(__dirname, '../../conf/yolk.yaml'), confRoot);
|
|
225
226
|
// init
|
|
226
227
|
shx.cp(path.resolve(__dirname, '../../conf/init/unattended.sh'), '/etc/penguins-eggs.d/init');
|
|
227
228
|
shx.chmod('+x', '/etc/penguins-eggs.d/init/unattended.sh');
|
|
@@ -453,16 +454,13 @@ export default class Pacman {
|
|
|
453
454
|
const rolling = `${rootPen}/conf/distros/rolling/*`;
|
|
454
455
|
await exec(`cp -r ${rolling} ${dest}`, echo);
|
|
455
456
|
/***********************************************************************************
|
|
456
|
-
*
|
|
457
|
+
* Alpine
|
|
457
458
|
**********************************************************************************/
|
|
458
|
-
/**
|
|
459
|
-
* openSUSE tumbleweed: eredita da tumbleweed
|
|
460
|
-
*/
|
|
461
459
|
}
|
|
462
|
-
else if (this.distro().codenameLikeId === '
|
|
463
|
-
const dest = '/etc/penguins-eggs.d/distros/
|
|
464
|
-
const
|
|
465
|
-
await exec(`cp -r ${
|
|
460
|
+
else if (this.distro().codenameLikeId === 'alpine-rolling') {
|
|
461
|
+
const dest = '/etc/penguins-eggs.d/distros/alpine-rolling/';
|
|
462
|
+
const alpine = `${rootPen}/conf/distros/alpine-rolling/*`;
|
|
463
|
+
await exec(`cp -r ${alpine} ${dest}`, echo);
|
|
466
464
|
}
|
|
467
465
|
}
|
|
468
466
|
/**
|
|
@@ -504,7 +502,7 @@ export default class Pacman {
|
|
|
504
502
|
installed = true;
|
|
505
503
|
}
|
|
506
504
|
}
|
|
507
|
-
else if (this.distro().familyId === '
|
|
505
|
+
else if (this.distro().familyId === 'alpine' && Alpine.packageIsInstalled('xwayland*')) {
|
|
508
506
|
installed = true;
|
|
509
507
|
}
|
|
510
508
|
return installed;
|
|
@@ -530,7 +528,7 @@ export default class Pacman {
|
|
|
530
528
|
installed = true;
|
|
531
529
|
}
|
|
532
530
|
}
|
|
533
|
-
else if (this.distro().familyId === '
|
|
531
|
+
else if (this.distro().familyId === 'alpine' && Alpine.packageIsInstalled('xorg-x11-server')) {
|
|
534
532
|
installed = true;
|
|
535
533
|
}
|
|
536
534
|
return installed;
|
|
@@ -576,7 +574,7 @@ export default class Pacman {
|
|
|
576
574
|
else if (Pacman.distro().familyId === 'archlinux') {
|
|
577
575
|
isUefi = true;
|
|
578
576
|
}
|
|
579
|
-
else if (Pacman.distro().familyId === '
|
|
577
|
+
else if (Pacman.distro().familyId === 'alpine') {
|
|
580
578
|
isUefi = true;
|
|
581
579
|
}
|
|
582
580
|
return isUefi;
|
|
@@ -640,6 +638,9 @@ export default class Pacman {
|
|
|
640
638
|
else if (this.distro().familyId === 'fedora') {
|
|
641
639
|
retVal = await Fedora.packageInstall(packageName);
|
|
642
640
|
}
|
|
641
|
+
else if (this.distro().familyId === 'alpine') {
|
|
642
|
+
retVal = await Alpine.packageInstall(packageName);
|
|
643
|
+
}
|
|
643
644
|
return retVal;
|
|
644
645
|
}
|
|
645
646
|
/**
|
|
@@ -657,8 +658,8 @@ export default class Pacman {
|
|
|
657
658
|
else if (this.distro().familyId === 'archlinux') {
|
|
658
659
|
installed = Archlinux.packageIsInstalled(packageName);
|
|
659
660
|
}
|
|
660
|
-
else if (this.distro().familyId === '
|
|
661
|
-
installed =
|
|
661
|
+
else if (this.distro().familyId === 'alpine') {
|
|
662
|
+
installed = Alpine.packageIsInstalled(packageName);
|
|
662
663
|
}
|
|
663
664
|
return installed;
|
|
664
665
|
}
|
|
@@ -686,7 +687,7 @@ export default class Pacman {
|
|
|
686
687
|
grubInstalled = 'grub';
|
|
687
688
|
}
|
|
688
689
|
}
|
|
689
|
-
else if (this.distro().familyId === '
|
|
690
|
+
else if (this.distro().familyId === 'alpine') {
|
|
690
691
|
grubInstalled = 'grub2';
|
|
691
692
|
}
|
|
692
693
|
return grubInstalled;
|
package/dist/classes/utils.js
CHANGED
|
@@ -172,6 +172,7 @@ export default class Utils {
|
|
|
172
172
|
* ricava path per initrdImg
|
|
173
173
|
*/
|
|
174
174
|
static initrdImg() {
|
|
175
|
+
let separator = "-";
|
|
175
176
|
const vmlinuz = Utils.vmlinuz();
|
|
176
177
|
const path = vmlinuz.substring(0, vmlinuz.lastIndexOf('/')) + '/';
|
|
177
178
|
let initrd = 'initrd.img';
|
|
@@ -185,10 +186,16 @@ export default class Utils {
|
|
|
185
186
|
initrd = 'initramfs';
|
|
186
187
|
suffix = '.img';
|
|
187
188
|
}
|
|
189
|
+
else if (distro.familyId === 'alpine') {
|
|
190
|
+
initrd = 'initramfs';
|
|
191
|
+
separator = '-';
|
|
192
|
+
version = 'lts';
|
|
193
|
+
suffix = '';
|
|
194
|
+
}
|
|
188
195
|
if (distro.distroId === 'Manjaro') {
|
|
189
196
|
version = vmlinuz.substring(vmlinuz.indexOf('-') + 1);
|
|
190
197
|
}
|
|
191
|
-
initrd = path + initrd +
|
|
198
|
+
initrd = path + initrd + separator + version + suffix;
|
|
192
199
|
return initrd;
|
|
193
200
|
}
|
|
194
201
|
/**
|
package/dist/classes/yolk.js
CHANGED
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import fs from 'node:fs';
|
|
9
9
|
import shx from 'shelljs';
|
|
10
|
+
import yaml from 'js-yaml';
|
|
10
11
|
import { exec } from '../lib/utils.js';
|
|
11
12
|
import Bleach from './bleach.js';
|
|
12
13
|
import Pacman from './pacman.js';
|
|
@@ -51,11 +52,11 @@ export default class Yolk {
|
|
|
51
52
|
await exec(`mkdir ${this.yolkDir} -p`, this.echo);
|
|
52
53
|
await exec(`chown _apt:root ${this.yolkDir} -R`, this.echo);
|
|
53
54
|
}
|
|
54
|
-
|
|
55
|
-
const
|
|
55
|
+
const yolk_yaml = '/etc/penguins-eggs.d/yolk.yaml';
|
|
56
|
+
const yolk = yaml.load(fs.readFileSync(yolk_yaml, 'utf8'));
|
|
56
57
|
process.chdir(this.yolkDir);
|
|
57
58
|
Utils.warning(`Downloading packages and its dependencies`);
|
|
58
|
-
for (const pkg of
|
|
59
|
+
for (const pkg of yolk.packages) {
|
|
59
60
|
Utils.warning(`- ${pkg}`);
|
|
60
61
|
cmd = `apt-cache depends --recurse --no-recommends --no-suggests --no-conflicts --no-breaks --no-replaces --no-enhances ${pkg} | grep "^\\w" | sort -u`;
|
|
61
62
|
let depends = pkg + '\n';
|
|
@@ -28,7 +28,6 @@ export default class Produce extends Command {
|
|
|
28
28
|
theme: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
29
29
|
unsecure: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
30
30
|
verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
31
|
-
udf: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
32
31
|
yolk: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
33
32
|
};
|
|
34
33
|
run(): Promise<void>;
|
package/dist/commands/produce.js
CHANGED
|
@@ -48,7 +48,6 @@ export default class Produce extends Command {
|
|
|
48
48
|
theme: Flags.string({ description: 'theme for livecd, calamares branding and partitions' }),
|
|
49
49
|
unsecure: Flags.boolean({ char: 'u', description: '/root contents are included on live' }),
|
|
50
50
|
verbose: Flags.boolean({ char: 'v', description: 'verbose' }),
|
|
51
|
-
udf: Flags.boolean({ char: 'U', description: 'udf, create iso UDF format using genisoimage' }),
|
|
52
51
|
yolk: Flags.boolean({ char: 'y', description: 'force yolk renew' }),
|
|
53
52
|
};
|
|
54
53
|
async run() {
|
|
@@ -143,7 +142,6 @@ export default class Produce extends Command {
|
|
|
143
142
|
const yolkRenew = flags.yolk;
|
|
144
143
|
const { nointeractive } = flags;
|
|
145
144
|
const { noicon } = flags;
|
|
146
|
-
const { udf } = flags;
|
|
147
145
|
// if clone or cryptedclone unsecure = true
|
|
148
146
|
const unsecure = flags.unsecure || clone || cryptedclone;
|
|
149
147
|
/**
|
|
@@ -190,7 +188,7 @@ export default class Produce extends Command {
|
|
|
190
188
|
const ovary = new Ovary();
|
|
191
189
|
Utils.warning('Produce an egg...');
|
|
192
190
|
if (await ovary.fertilization(prefix, basename, theme, compression, !nointeractive)) {
|
|
193
|
-
await ovary.produce(clone, cryptedclone, scriptOnly, yolkRenew, release, myAddons, myLinks, excludes, nointeractive, noicon, unsecure,
|
|
191
|
+
await ovary.produce(clone, cryptedclone, scriptOnly, yolkRenew, release, myAddons, myLinks, excludes, nointeractive, noicon, unsecure, verbose);
|
|
194
192
|
ovary.finished(scriptOnly);
|
|
195
193
|
}
|
|
196
194
|
}
|
|
Binary file
|
|
@@ -6,10 +6,10 @@
|
|
|
6
6
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
7
7
|
</head>
|
|
8
8
|
<body>
|
|
9
|
-
<h1>eggs(1) -- the reproductive system of penguins: eggs v10.0.
|
|
9
|
+
<h1>eggs(1) -- the reproductive system of penguins: eggs v10.0.19</h1>
|
|
10
10
|
<h1>SYNOPSIS</h1>
|
|
11
11
|
<p>Install Debian families (debian/devuan/ubuntu)</p>
|
|
12
|
-
<pre><code>$ sudo dpkg -i penguins-eggs_10.0.
|
|
12
|
+
<pre><code>$ sudo dpkg -i penguins-eggs_10.0.19-bionic-1_amd64.deb
|
|
13
13
|
</code></pre>
|
|
14
14
|
<p>Install Arch families (Arch, manjaro Linux)</p>
|
|
15
15
|
<p>Arch from AUR</p>
|
|
@@ -30,7 +30,7 @@ $ makepkg -si
|
|
|
30
30
|
<h1>USAGE</h1>
|
|
31
31
|
<pre><code>$ eggs (-v|--version|version)
|
|
32
32
|
|
|
33
|
-
penguins-eggs/10.0.
|
|
33
|
+
penguins-eggs/10.0.19
|
|
34
34
|
$ eggs --help [COMMAND]
|
|
35
35
|
|
|
36
36
|
USAGE
|
|
@@ -382,13 +382,12 @@ EXAMPLES
|
|
|
382
382
|
<p>produce a live image from your system whithout your data</p>
|
|
383
383
|
<pre><code>USAGE
|
|
384
384
|
$ eggs produce [--addons <value>...] [--basename <value>] [-c] [-C] [--excludes <value>...] [-h] [--links
|
|
385
|
-
<value>...] [-m] [-N] [-n] [-p] [-P <value>] [--release] [-s] [-f] [--theme <value>] [-u] [-v] [-
|
|
385
|
+
<value>...] [-m] [-N] [-n] [-p] [-P <value>] [--release] [-s] [-f] [--theme <value>] [-u] [-v] [-y]
|
|
386
386
|
|
|
387
387
|
FLAGS
|
|
388
388
|
-C, --cryptedclone crypted clone
|
|
389
389
|
-N, --noicon no icon eggs on desktop
|
|
390
390
|
-P, --prefix=<value> prefix
|
|
391
|
-
-U, --udf udf, create iso UDF format using genisoimage
|
|
392
391
|
-c, --clone clone
|
|
393
392
|
-f, --standard standard compression: xz -b 1M
|
|
394
393
|
-h, --help Show CLI help.
|
package/package.json
CHANGED
|
@@ -2,17 +2,17 @@
|
|
|
2
2
|
"name": "penguins-eggs",
|
|
3
3
|
"shortName": "eggs",
|
|
4
4
|
"description": "A remaster system tool, compatible with Arch, Debian, Devuan, Ubuntu and others",
|
|
5
|
-
"version": "10.0.
|
|
5
|
+
"version": "10.0.19",
|
|
6
6
|
"author": "Piero Proietti",
|
|
7
7
|
"bin": {
|
|
8
8
|
"eggs": "./bin/run.js"
|
|
9
9
|
},
|
|
10
10
|
"bugs": "https://github.com/pieroproietti/penguins-eggs/issues",
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@oclif/core": "^4.0.
|
|
13
|
-
"@oclif/plugin-autocomplete": "^3.1.
|
|
14
|
-
"@oclif/plugin-help": "^6.2.
|
|
15
|
-
"@oclif/plugin-version": "^2.2.
|
|
12
|
+
"@oclif/core": "^4.0.12",
|
|
13
|
+
"@oclif/plugin-autocomplete": "^3.1.7",
|
|
14
|
+
"@oclif/plugin-help": "^6.2.6",
|
|
15
|
+
"@oclif/plugin-version": "^2.2.8",
|
|
16
16
|
"axios": "^1.7.2",
|
|
17
17
|
"chalk": "^5.3.0",
|
|
18
18
|
"cli-cursor": "^4.0.0",
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"@types/mocha": "^10.0.6",
|
|
38
38
|
"@types/mustache": "^4.2.5",
|
|
39
39
|
"@types/netmask": "^2.0.5",
|
|
40
|
-
"@types/node": "^20.14.
|
|
40
|
+
"@types/node": "^20.14.11",
|
|
41
41
|
"@types/node-static": "^0.7.11",
|
|
42
42
|
"@types/react": "^18.3.3",
|
|
43
43
|
"@types/shelljs": "^0.8.15",
|
|
@@ -46,13 +46,13 @@
|
|
|
46
46
|
"eslint-config-oclif": "^5.2.0",
|
|
47
47
|
"eslint-config-oclif-typescript": "^3.1.8",
|
|
48
48
|
"eslint-config-prettier": "^9.1.0",
|
|
49
|
-
"mocha": "^10.
|
|
50
|
-
"oclif": "^4.
|
|
51
|
-
"perrisbrewery": "^10",
|
|
52
|
-
"prettier": "^3.3.
|
|
49
|
+
"mocha": "^10.6.0",
|
|
50
|
+
"oclif": "^4.14.6",
|
|
51
|
+
"perrisbrewery": "^10.0.1",
|
|
52
|
+
"prettier": "^3.3.3",
|
|
53
53
|
"shx": "^0.3.4",
|
|
54
54
|
"ts-node": "^10.9.2",
|
|
55
|
-
"typescript": "^5.5.
|
|
55
|
+
"typescript": "^5.5.3"
|
|
56
56
|
},
|
|
57
57
|
"engines": {
|
|
58
58
|
"node": ">=16.0.0"
|
package/scripts/_eggs
CHANGED
|
@@ -190,9 +190,9 @@ _eggs() {
|
|
|
190
190
|
"syncfrom[restore users and user data from a LUKS volumes]" \
|
|
191
191
|
"syncto[Save users and users' data ENCRYPTED]" \
|
|
192
192
|
"update[update the Penguins' eggs tool]" \
|
|
193
|
-
"version[]" \
|
|
194
|
-
"help[Display help for eggs.]" \
|
|
195
193
|
"autocomplete[Display autocomplete installation instructions.]" \
|
|
194
|
+
"help[Display help for eggs.]" \
|
|
195
|
+
"version[]" \
|
|
196
196
|
|
|
197
197
|
;;
|
|
198
198
|
args)
|
|
@@ -323,6 +323,7 @@ _arguments -S \
|
|
|
323
323
|
--theme"[theme for livecd, calamares branding and partitions]:file:_files" \
|
|
324
324
|
"(-u --unsecure)"{-u,--unsecure}"[/root contents are included on live]" \
|
|
325
325
|
"(-v --verbose)"{-v,--verbose}"[verbose]" \
|
|
326
|
+
"(-U --udf)"{-U,--udf}"[use UDF format on ISO with genisoimage breacking 4.7 G limit]" \
|
|
326
327
|
"(-y --yolk)"{-y,--yolk}"[force yolk renew]" \
|
|
327
328
|
--help"[Show help for command]" \
|
|
328
329
|
"*: :_files" ;;
|
|
@@ -355,10 +356,9 @@ _arguments -S \
|
|
|
355
356
|
"(-v --verbose)"{-v,--verbose}"[verbose]" \
|
|
356
357
|
--help"[Show help for command]" \
|
|
357
358
|
"*: :_files" ;;
|
|
358
|
-
|
|
359
|
+
autocomplete)
|
|
359
360
|
_arguments -S \
|
|
360
|
-
--
|
|
361
|
-
--verbose"[Show additional information about the CLI.]" \
|
|
361
|
+
"(-r --refresh-cache)"{-r,--refresh-cache}"[Refresh cache (ignores displaying instructions)]" \
|
|
362
362
|
--help"[Show help for command]" \
|
|
363
363
|
"*: :_files" ;;
|
|
364
364
|
help)
|
|
@@ -366,9 +366,10 @@ _arguments -S \
|
|
|
366
366
|
"(-n --nested-commands)"{-n,--nested-commands}"[Include all nested commands in the output.]" \
|
|
367
367
|
--help"[Show help for command]" \
|
|
368
368
|
"*: :_files" ;;
|
|
369
|
-
|
|
369
|
+
version)
|
|
370
370
|
_arguments -S \
|
|
371
|
-
|
|
371
|
+
--json"[Format output as json.]" \
|
|
372
|
+
--verbose"[Show additional information about the CLI.]" \
|
|
372
373
|
--help"[Show help for command]" \
|
|
373
374
|
"*: :_files" ;;
|
|
374
375
|
esac
|
package/scripts/eggs.bash
CHANGED
|
@@ -23,7 +23,7 @@ install --btrfs --chroot --crypted --domain --halt --help --ip --nointeractive -
|
|
|
23
23
|
krill --btrfs --chroot --crypted --domain --halt --help --ip --nointeractive --none --pve --random --small --suspend --unattended --verbose
|
|
24
24
|
kill --help --isos --nointeractive --verbose
|
|
25
25
|
mom --help
|
|
26
|
-
produce --addons --basename --clone --cryptedclone --excludes --help --links --max --noicon --nointeractive --pendrive --prefix --release --script --standard --theme --unsecure --verbose --yolk
|
|
26
|
+
produce --addons --basename --clone --cryptedclone --excludes --help --links --max --noicon --nointeractive --pendrive --prefix --release --script --standard --theme --unsecure --verbose --udf --yolk
|
|
27
27
|
status --help --verbose
|
|
28
28
|
syncfrom --delete --file --help --rootdir --verbose
|
|
29
29
|
syncto --excludes --file --help --verbose
|
|
@@ -37,9 +37,9 @@ wardrobe:get --help --verbose
|
|
|
37
37
|
wardrobe:list --distro --help --verbose
|
|
38
38
|
wardrobe:show --help --json --verbose --wardrobe
|
|
39
39
|
wardrobe:wear --help --no_accessories --no_firmwares --verbose --wardrobe
|
|
40
|
-
version --json --verbose
|
|
41
|
-
help --nested-commands
|
|
42
40
|
autocomplete --refresh-cache
|
|
41
|
+
help --nested-commands
|
|
42
|
+
version --json --verbose
|
|
43
43
|
"
|
|
44
44
|
|
|
45
45
|
function __trim_colon_commands()
|