penguins-eggs 9.0.31 → 9.0.35
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/README.md +22 -21
- package/lib/classes/daddy.js +2 -2
- package/lib/classes/distro.d.ts +4 -2
- package/lib/classes/distro.js +60 -76
- package/lib/classes/family/debian.js +2 -2
- package/lib/classes/i18n.js +2 -2
- package/lib/classes/incubation/fisherman-helper/packages.js +1 -1
- package/lib/classes/incubation/incubator.js +1 -1
- package/lib/classes/incubation/installer.d.ts +1 -1
- package/lib/classes/incubation/installer.js +2 -2
- package/lib/classes/krill_install.d.ts +1 -0
- package/lib/classes/krill_install.js +18 -4
- package/lib/classes/ovary.d.ts +0 -1
- package/lib/classes/ovary.js +40 -37
- package/lib/classes/pacman.d.ts +1 -1
- package/lib/classes/pacman.js +21 -21
- package/lib/classes/pve-live.js +10 -14
- package/lib/classes/utils.d.ts +6 -3
- package/lib/classes/utils.js +35 -17
- package/lib/classes/xdg.js +18 -34
- package/lib/classes/yolk.d.ts +8 -7
- package/lib/classes/yolk.js +31 -34
- package/lib/commands/produce.js +1 -1
- package/lib/commands/syncfrom.d.ts +9 -3
- package/lib/commands/syncfrom.js +38 -31
- package/lib/commands/syncto.d.ts +26 -6
- package/lib/commands/syncto.js +71 -48
- package/lib/components/elements/information.js +14 -11
- package/lib/interfaces/i-distro.d.ts +4 -2
- package/lib/interfaces/i-installer.d.ts +1 -1
- package/oclif.manifest.json +1 -1
- package/package.json +1 -1
- package/scripts/userexist.sh +6 -0
package/lib/commands/syncto.js
CHANGED
|
@@ -1,12 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const tslib_1 = require("tslib");
|
|
4
2
|
/**
|
|
5
3
|
* penguins-eggs-v9
|
|
6
4
|
* author: Piero Proietti
|
|
7
5
|
* email: piero.proietti@gmail.com
|
|
8
6
|
* license: MIT
|
|
9
7
|
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
const tslib_1 = require("tslib");
|
|
10
|
+
/**
|
|
11
|
+
*
|
|
12
|
+
* syncfrom (restore)
|
|
13
|
+
* --include-from file.list // if only include is provided everything from the list if used to update the system.
|
|
14
|
+
* --exclude-from file-list // it just updates the system
|
|
15
|
+
* --delete
|
|
16
|
+
*
|
|
17
|
+
* If both options are provided then it works as a combination as provided in the link above.
|
|
18
|
+
* https://stackoverflow.com/questions/19296190/rsync-include-from-vs-exclude-from-what-is-the-actual-difference
|
|
19
|
+
*
|
|
20
|
+
* The same logic is applied for the syncto also.
|
|
21
|
+
*
|
|
22
|
+
* On top of all of this the --delete option
|
|
23
|
+
* if needed to be passed so that everything else is removed, but this
|
|
24
|
+
* this should not be available by default
|
|
25
|
+
*/
|
|
10
26
|
const core_1 = require("@oclif/core");
|
|
11
27
|
const fs = require("fs");
|
|
12
28
|
const path = require("path");
|
|
@@ -16,9 +32,14 @@ const utils_2 = require("../lib/utils");
|
|
|
16
32
|
const promises_1 = require("fs/promises");
|
|
17
33
|
const fs_1 = require("fs");
|
|
18
34
|
const users_1 = (0, tslib_1.__importDefault)(require("../classes/users"));
|
|
35
|
+
/**
|
|
36
|
+
*
|
|
37
|
+
*/
|
|
19
38
|
class Syncto extends core_1.Command {
|
|
20
39
|
constructor() {
|
|
21
40
|
super(...arguments);
|
|
41
|
+
this.verbose = false;
|
|
42
|
+
this.echo = {};
|
|
22
43
|
this.luksName = 'luks-eggs-backup';
|
|
23
44
|
this.luksFile = `/run/live/medium/live/${this.luksName}`;
|
|
24
45
|
this.luksDevice = `/dev/mapper/${this.luksName}`;
|
|
@@ -29,15 +50,18 @@ class Syncto extends core_1.Command {
|
|
|
29
50
|
*/
|
|
30
51
|
async run() {
|
|
31
52
|
const { flags } = await this.parse(Syncto);
|
|
32
|
-
let verbose = false;
|
|
33
53
|
if (flags.verbose) {
|
|
34
|
-
verbose = true;
|
|
54
|
+
this.verbose = true;
|
|
35
55
|
}
|
|
56
|
+
this.echo = utils_1.default.setEcho(this.verbose);
|
|
36
57
|
let fileVolume = '';
|
|
37
58
|
if (flags.file) {
|
|
38
59
|
fileVolume = flags.file;
|
|
39
60
|
}
|
|
40
|
-
|
|
61
|
+
let destDelete = false;
|
|
62
|
+
if (flags.delete) {
|
|
63
|
+
destDelete = true;
|
|
64
|
+
}
|
|
41
65
|
if (utils_1.default.isRoot(this.id)) {
|
|
42
66
|
/**
|
|
43
67
|
* restore con file
|
|
@@ -50,44 +74,47 @@ class Syncto extends core_1.Command {
|
|
|
50
74
|
this.luksDevice = `/dev/mapper/${this.luksName}`;
|
|
51
75
|
this.luksMountpoint = '/tmp/eggs-backup';
|
|
52
76
|
if (!fs.existsSync(fileVolume)) {
|
|
53
|
-
await this.luksCreate(
|
|
77
|
+
await this.luksCreate();
|
|
54
78
|
}
|
|
55
79
|
else {
|
|
56
80
|
utils_1.default.warning(`LUKS volume: ${this.luksFile} exist, don't need create`);
|
|
57
81
|
}
|
|
58
82
|
if (fs.existsSync(fileVolume)) {
|
|
59
|
-
await this.luksOpen(
|
|
60
|
-
await this.backup(
|
|
61
|
-
await this.luksClose(
|
|
83
|
+
await this.luksOpen();
|
|
84
|
+
await this.backup(destDelete);
|
|
85
|
+
await this.luksClose();
|
|
62
86
|
}
|
|
63
87
|
}
|
|
64
88
|
}
|
|
65
89
|
/**
|
|
66
90
|
*
|
|
67
|
-
* @param verbose
|
|
68
91
|
*/
|
|
69
|
-
async backup(
|
|
70
|
-
|
|
71
|
-
if (verbose) {
|
|
92
|
+
async backup(destDelete = false) {
|
|
93
|
+
if (this.verbose) {
|
|
72
94
|
utils_1.default.warning('backup');
|
|
73
95
|
}
|
|
96
|
+
utils_1.default.warning(`Coping users and services data on ${this.luksFile}`);
|
|
74
97
|
const usersArray = await this.usersFill();
|
|
75
98
|
const cmds = [];
|
|
76
99
|
for (let i = 0; i < usersArray.length; i++) {
|
|
77
100
|
if (usersArray[i].saveIt) {
|
|
78
101
|
if (fs.existsSync(usersArray[i].home)) {
|
|
79
|
-
await (0, utils_2.exec)(`mkdir -p ${this.luksMountpoint}/ROOT${usersArray[i].home}`, echo);
|
|
102
|
+
await (0, utils_2.exec)(`mkdir -p ${this.luksMountpoint}/ROOT${usersArray[i].home}`, this.echo);
|
|
80
103
|
const source = usersArray[i].home;
|
|
81
104
|
let dest = this.luksMountpoint + '/ROOT' + usersArray[i].home;
|
|
82
105
|
dest = dest.substring(0, dest.lastIndexOf('/'));
|
|
83
|
-
|
|
106
|
+
let cmd = `rsync --archive ${source} ${dest}`;
|
|
107
|
+
if (destDelete) {
|
|
108
|
+
cmd = `rsync --archive --delete ${source} ${dest}`;
|
|
109
|
+
}
|
|
110
|
+
await (0, utils_2.exec)(cmd, this.echo);
|
|
84
111
|
}
|
|
85
112
|
}
|
|
86
113
|
}
|
|
87
|
-
await (0, utils_2.exec)(`mkdir -p ${this.luksMountpoint}/etc`, echo);
|
|
88
|
-
await (0, utils_2.exec)(`cp /etc/passwd ${this.luksMountpoint}/etc`, echo);
|
|
89
|
-
await (0, utils_2.exec)(`cp /etc/shadow ${this.luksMountpoint}/etc`, echo);
|
|
90
|
-
await (0, utils_2.exec)(`cp /etc/group ${this.luksMountpoint}/etc`, echo);
|
|
114
|
+
await (0, utils_2.exec)(`mkdir -p ${this.luksMountpoint}/etc`, this.echo);
|
|
115
|
+
await (0, utils_2.exec)(`cp /etc/passwd ${this.luksMountpoint}/etc`, this.echo);
|
|
116
|
+
await (0, utils_2.exec)(`cp /etc/shadow ${this.luksMountpoint}/etc`, this.echo);
|
|
117
|
+
await (0, utils_2.exec)(`cp /etc/group ${this.luksMountpoint}/etc`, this.echo);
|
|
91
118
|
}
|
|
92
119
|
/**
|
|
93
120
|
* usersFill
|
|
@@ -109,9 +136,7 @@ class Syncto extends core_1.Command {
|
|
|
109
136
|
/**
|
|
110
137
|
*
|
|
111
138
|
*/
|
|
112
|
-
async luksCreate(
|
|
113
|
-
const echo = utils_1.default.setEcho(verbose);
|
|
114
|
-
const echoYes = utils_1.default.setEcho(true);
|
|
139
|
+
async luksCreate() {
|
|
115
140
|
utils_1.default.warning(`Creating LUKS Volume on ${this.luksFile}`);
|
|
116
141
|
let totalSize = 0;
|
|
117
142
|
console.log(`I will extimate volume size from your private data:`);
|
|
@@ -119,12 +144,16 @@ class Syncto extends core_1.Command {
|
|
|
119
144
|
for (let i = 0; i < users.length; i++) {
|
|
120
145
|
if (users[i].login !== 'root') {
|
|
121
146
|
if (users[i].saveIt) {
|
|
122
|
-
|
|
147
|
+
let utype = 'user ';
|
|
148
|
+
if (parseInt(users[i].uid) < 1000) {
|
|
149
|
+
utype = 'service';
|
|
150
|
+
}
|
|
151
|
+
console.log(`- ${utype}: ${users[i].login.padEnd(16)} \thome: ${users[i].home} \tsize: ${utils_1.default.formatBytes(users[i].size)} \tBytes: ${users[i].size} `);
|
|
123
152
|
totalSize += users[i].size;
|
|
124
153
|
}
|
|
125
154
|
}
|
|
126
155
|
}
|
|
127
|
-
console.log(`Total\t\t\t\t\
|
|
156
|
+
console.log(`Total\t\t\t\t\t\t\tsize: ${utils_1.default.formatBytes(totalSize)} \tBytes: ${totalSize}`);
|
|
128
157
|
/**
|
|
129
158
|
* after we get size, we can start building luks-volume
|
|
130
159
|
*/
|
|
@@ -141,53 +170,48 @@ class Syncto extends core_1.Command {
|
|
|
141
170
|
blocks = Math.ceil(minimunSize / blockSize);
|
|
142
171
|
}
|
|
143
172
|
utils_1.default.warning(`Creating an encrypted file ${this.luksFile} blocks=${blocks}, block size: ${blockSize}, size: ${utils_1.default.formatBytes(blocks * blockSize)}`);
|
|
144
|
-
await (0, utils_2.exec)(`dd if=/dev/zero of=${this.luksFile} bs=${blockSize} count=${blocks}`, echo);
|
|
173
|
+
await (0, utils_2.exec)(`dd if=/dev/zero of=${this.luksFile} bs=${blockSize} count=${blocks}`, this.echo);
|
|
145
174
|
// find first unused device
|
|
146
|
-
let findFirstUnusedDevice = await (0, utils_2.exec)(`losetup -f`, { echo: verbose, ignore: false, capture: true });
|
|
175
|
+
let findFirstUnusedDevice = await (0, utils_2.exec)(`losetup -f`, { echo: this.verbose, ignore: false, capture: true });
|
|
147
176
|
let firstUnusedDevice = '';
|
|
148
177
|
if (findFirstUnusedDevice.code !== 0) {
|
|
149
|
-
utils_1.default.
|
|
150
|
-
process.exit(1);
|
|
178
|
+
utils_1.default.pressKeyToExit(`Error: ${findFirstUnusedDevice.code} ${findFirstUnusedDevice.data}`);
|
|
151
179
|
}
|
|
152
180
|
else {
|
|
153
181
|
firstUnusedDevice = findFirstUnusedDevice.data.trim();
|
|
154
182
|
}
|
|
155
|
-
await (0, utils_2.exec)(`losetup ${firstUnusedDevice} ${this.luksFile}`, echo);
|
|
183
|
+
await (0, utils_2.exec)(`losetup ${firstUnusedDevice} ${this.luksFile}`, this.echo);
|
|
156
184
|
utils_1.default.warning('Enter a large string of random text below to setup the pre-encryption');
|
|
157
|
-
await (0, utils_2.exec)(`cryptsetup -y -v --type luks2 luksFormat ${this.luksFile}`,
|
|
185
|
+
await (0, utils_2.exec)(`cryptsetup -y -v --type luks2 luksFormat ${this.luksFile}`, utils_1.default.setEcho(true));
|
|
158
186
|
utils_1.default.warning(`Enter the desired passphrase for the encrypted ${this.luksName} below`);
|
|
159
|
-
let crytoSetup = await (0, utils_2.exec)(`cryptsetup luksOpen --type luks2 ${this.luksFile} ${this.luksName}`,
|
|
187
|
+
let crytoSetup = await (0, utils_2.exec)(`cryptsetup luksOpen --type luks2 ${this.luksFile} ${this.luksName}`, utils_1.default.setEcho(true));
|
|
160
188
|
if (crytoSetup.code !== 0) {
|
|
161
|
-
utils_1.default.
|
|
162
|
-
process.exit(1);
|
|
189
|
+
utils_1.default.pressKeyToExit(`Error: ${crytoSetup.code} ${crytoSetup.data}`);
|
|
163
190
|
}
|
|
164
191
|
utils_1.default.warning(`Formatting ${this.luksDevice} to ext2`);
|
|
165
|
-
let formatting = await (0, utils_2.exec)(`sudo mkfs.ext2 ${this.luksDevice}`, echo);
|
|
192
|
+
let formatting = await (0, utils_2.exec)(`sudo mkfs.ext2 ${this.luksDevice}`, this.echo);
|
|
166
193
|
if (formatting.code !== 0) {
|
|
167
|
-
utils_1.default.
|
|
168
|
-
process.exit(1);
|
|
194
|
+
utils_1.default.pressKeyToExit(`Error: ${formatting.code} ${formatting.data}`);
|
|
169
195
|
}
|
|
170
196
|
// this.luksClose()
|
|
171
197
|
}
|
|
172
198
|
/**
|
|
173
199
|
*
|
|
174
200
|
*/
|
|
175
|
-
async luksOpen(
|
|
176
|
-
const echo = utils_1.default.setEcho(verbose);
|
|
177
|
-
const echoYes = utils_1.default.setEcho(true); // echoYes serve solo per cryptsetup luksOpen
|
|
201
|
+
async luksOpen() {
|
|
178
202
|
if (!fs.existsSync(this.luksDevice)) {
|
|
179
203
|
utils_1.default.warning(`LUKS open volume: ${this.luksName}`);
|
|
180
|
-
await (0, utils_2.exec)(`cryptsetup luksOpen --type luks2 ${this.luksFile} ${this.luksName}`,
|
|
204
|
+
await (0, utils_2.exec)(`cryptsetup luksOpen --type luks2 ${this.luksFile} ${this.luksName}`, utils_1.default.setEcho(true));
|
|
181
205
|
}
|
|
182
206
|
else {
|
|
183
207
|
utils_1.default.warning(`LUKS volume: ${this.luksName} already open`);
|
|
184
208
|
}
|
|
185
209
|
if (!fs.existsSync(this.luksMountpoint)) {
|
|
186
|
-
await (0, utils_2.exec)(`mkdir -p ${this.luksMountpoint}`, echo);
|
|
210
|
+
await (0, utils_2.exec)(`mkdir -p ${this.luksMountpoint}`, this.echo);
|
|
187
211
|
}
|
|
188
212
|
if (!utils_1.default.isMountpoint(this.luksMountpoint)) {
|
|
189
213
|
utils_1.default.warning(`mount volume: ${this.luksDevice} on ${this.luksMountpoint}`);
|
|
190
|
-
await (0, utils_2.exec)(`mount ${this.luksDevice} ${this.luksMountpoint}`, echo);
|
|
214
|
+
await (0, utils_2.exec)(`mount ${this.luksDevice} ${this.luksMountpoint}`, this.echo);
|
|
191
215
|
}
|
|
192
216
|
else {
|
|
193
217
|
utils_1.default.warning(`mount volume: ${this.luksDevice} already mounted on ${this.luksMountpoint}`);
|
|
@@ -196,24 +220,23 @@ class Syncto extends core_1.Command {
|
|
|
196
220
|
/**
|
|
197
221
|
*
|
|
198
222
|
*/
|
|
199
|
-
async luksClose(
|
|
200
|
-
const echo = utils_1.default.setEcho(verbose);
|
|
223
|
+
async luksClose() {
|
|
201
224
|
if (utils_1.default.isMountpoint(this.luksMountpoint)) {
|
|
202
|
-
await (0, utils_2.exec)(`umount ${this.luksMountpoint}`, echo);
|
|
225
|
+
await (0, utils_2.exec)(`umount ${this.luksMountpoint}`, this.echo);
|
|
203
226
|
}
|
|
204
227
|
if (fs.existsSync(this.luksDevice)) {
|
|
205
228
|
utils_1.default.warning(`LUKS close volume: ${this.luksName}`);
|
|
206
|
-
await (0, utils_2.exec)(`cryptsetup luksClose ${this.luksName}`, echo);
|
|
229
|
+
await (0, utils_2.exec)(`cryptsetup luksClose ${this.luksName}`, this.echo);
|
|
207
230
|
}
|
|
208
231
|
}
|
|
209
232
|
}
|
|
210
233
|
exports.default = Syncto;
|
|
211
234
|
Syncto.description = 'Backup users, server and datas to luks-eggs-backup';
|
|
212
235
|
Syncto.flags = {
|
|
213
|
-
|
|
236
|
+
delete: core_1.Flags.string({ description: 'rsync --delete delete extraneous files from dest dirs' }),
|
|
214
237
|
file: core_1.Flags.string({ char: 'f', description: "file LUKS volume encrypted" }),
|
|
215
238
|
help: core_1.Flags.help({ char: 'h' }),
|
|
216
239
|
verbose: core_1.Flags.boolean({ char: 'v', description: 'verbose' })
|
|
217
240
|
};
|
|
218
241
|
Syncto.aliases = ['backup'];
|
|
219
|
-
Syncto.examples = ['$ sudo eggs
|
|
242
|
+
Syncto.examples = ['$ sudo eggs syncto'];
|
|
@@ -66,25 +66,28 @@ async function information(verbose = false) {
|
|
|
66
66
|
react_1.default.createElement(ink_1.Text, { color: "cyan" }, settings.config.root_passwd)))));
|
|
67
67
|
(0, ink_1.render)(react_1.default.createElement(Live, null));
|
|
68
68
|
const distroId = shelljs_1.default.exec('lsb_release -is', { silent: true }).stdout.trim();
|
|
69
|
-
const
|
|
69
|
+
const releaseId = shelljs_1.default.exec('lsb_release -rs', { silent: true }).stdout.trim();
|
|
70
|
+
const codenameId = shelljs_1.default.exec('lsb_release -cs', { silent: true }).stdout.trim();
|
|
70
71
|
const Distro = () => (react_1.default.createElement(ink_1.Box, { flexDirection: 'column' },
|
|
71
72
|
react_1.default.createElement(ink_1.Box, { borderStyle: "round", marginRight: 2, flexDirection: 'row' },
|
|
72
73
|
react_1.default.createElement(ink_1.Box, { marginRight: 2 },
|
|
73
74
|
react_1.default.createElement(ink_1.Text, null,
|
|
74
75
|
"distro: ",
|
|
75
|
-
react_1.default.createElement(ink_1.Text, { color: "cyan" },
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
76
|
+
react_1.default.createElement(ink_1.Text, { color: "cyan" },
|
|
77
|
+
distroId,
|
|
78
|
+
" ",
|
|
79
|
+
releaseId,
|
|
80
|
+
" ",
|
|
81
|
+
codenameId))),
|
|
80
82
|
react_1.default.createElement(ink_1.Box, { marginRight: 2 },
|
|
81
83
|
react_1.default.createElement(ink_1.Text, null,
|
|
82
84
|
"compatible: ",
|
|
83
|
-
react_1.default.createElement(ink_1.Text, { color: "cyan" },
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
85
|
+
react_1.default.createElement(ink_1.Text, { color: "cyan" },
|
|
86
|
+
settings.distro.distroLike,
|
|
87
|
+
"/",
|
|
88
|
+
settings.distro.releaseLike,
|
|
89
|
+
"/",
|
|
90
|
+
settings.distro.codenameLikeId))))));
|
|
88
91
|
(0, ink_1.render)(react_1.default.createElement(Distro, null));
|
|
89
92
|
const dependencies = await pacman_1.default.prerequisitesCheck();
|
|
90
93
|
const configurations = pacman_1.default.configurationCheck();
|
|
@@ -2,8 +2,10 @@ export interface IDistro {
|
|
|
2
2
|
familyId: string;
|
|
3
3
|
distroId: string;
|
|
4
4
|
distroLike: string;
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
codenameId: string;
|
|
6
|
+
codenameLikeId: string;
|
|
7
|
+
releaseId: string;
|
|
8
|
+
releaseLike: string;
|
|
7
9
|
usrLibPath: string;
|
|
8
10
|
isolinuxPath: string;
|
|
9
11
|
syslinuxPath: string;
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* modules = configuration + 'modules/'
|
|
5
5
|
* modulesMultiarch = '/usr/lib/' + arch-linux-gnu + '/' + installer + '/'
|
|
6
6
|
*
|
|
7
|
-
* template = '/etc/penguins-eggs/' + .distro.
|
|
7
|
+
* template = '/etc/penguins-eggs/' + .distro.codenameLikeId + '/' + installer + '/'
|
|
8
8
|
* templateModules = template + '/modules/'
|
|
9
9
|
* templateMultiarch = template + installer + '-modules/'
|
|
10
10
|
*/
|
package/oclif.manifest.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":"9.0.31","commands":{"adapt":{"id":"adapt","description":"adapt monitor resolution for VM only","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":["adjust"],"flags":{"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false}},"args":[],"_globalFlags":{}},"analyze":{"id":"analyze","description":"analyze situation","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["$ sudo eggs analyze"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[],"_globalFlags":{}},"bro":{"id":"bro","description":"bro: waydroid helper","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false}},"args":[],"_globalFlags":{}},"calamares":{"id":"calamares","description":"calamares or install or configure it","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["~$ sudo eggs calamares \ncreate/renew calamares configuration's files\n","~$ sudo eggs calamares -i \ninstall calamares and create it's configuration's files\n"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false},"install":{"name":"install","type":"boolean","char":"i","description":"install calamares and it's dependencies","allowNo":false},"final":{"name":"final","type":"boolean","char":"f","description":"final: remove calamares and all it's dependencies after the installation","allowNo":false},"remove":{"name":"remove","type":"boolean","char":"r","description":"remove calamares and it's dependencies","allowNo":false},"theme":{"name":"theme","type":"option","description":"theme/branding for eggs and calamares","multiple":false}},"args":[],"_globalFlags":{}},"config":{"id":"config","description":"Configure and install prerequisites deb packages to run it","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":["prerequisites"],"examples":["~$ sudo eggs config\nConfigure and install prerequisites deb packages to run it"],"flags":{"nointeractive":{"name":"nointeractive","type":"boolean","char":"n","description":"assume yes","allowNo":false},"clean":{"name":"clean","type":"boolean","char":"c","description":"remove old configuration before to create new one","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[],"_globalFlags":{}},"dad":{"id":"dad","description":"ask help from daddy - configuration helper","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"clean":{"name":"clean","type":"boolean","char":"c","description":"remove old configuration before to create","allowNo":false},"default":{"name":"default","type":"boolean","char":"d","description":"remove old configuration and force default","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false}},"args":[],"_globalFlags":{}},"info":{"id":"info","description":"re-thinking for a different approach to CLI","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false}},"args":[],"_globalFlags":{}},"install":{"id":"install","description":"command-line system installer - the egg became a penguin!","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":["hatch","krill"],"examples":["$ eggs install\nInstall the system using GUI or CLI installer\n"],"flags":{"cli":{"name":"cli","type":"boolean","char":"c","description":"force use CLI installer","allowNo":false},"crypted":{"name":"crypted","type":"boolean","char":"k","description":"crypted CLI installation","allowNo":false},"pve":{"name":"pve","type":"boolean","char":"p","description":"Proxmox VE install","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[],"_globalFlags":{}},"kill":{"id":"kill","description":"kill the eggs/free the nest","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["$ eggs kill\nkill the eggs/free the nest"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[],"_globalFlags":{}},"mom":{"id":"mom","description":"ask for mommy - gui helper","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false}},"args":[],"_globalFlags":{}},"produce":{"id":"produce","description":"produce a live image from your system whithout your data","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":["spawn","lay"],"examples":["$ sudo eggs produce \nproduce an ISO called [hostname]-[arch]-YYYY-MM-DD_HHMM.iso, compressed xz (standard compression).\nIf hostname=ugo and arch=i386 ugo-x86-2020-08-25_1215.iso\n","$ sudo eggs produce -v\nsame as previuos, but with --verbose output\n","$ sudo eggs produce -vf\nsame as previuos, compression zstd, lz4 or gzip (depend from system capability)\n","$ sudo eggs produce -vm\nsame as previuos, compression xz -Xbcj x86 (max compression, about 10%\nmore compressed)\n","$ sudo eggs produce -vf --basename leo --theme debian --addons adapt \nproduce an ISO called leo-i386-2020-08-25_1215.iso compression fast,\nusing Debian theme and link to adapt\n","$ sudo eggs produce -v --basename leo --theme debian --addons rsupport \nproduce an ISO called leo-i386-2020-08-25_1215.iso compression xz,\nusing Debian theme and link to dwagent\n","$ sudo eggs produce -v --basename leo --rsupport \nproduce an ISO called leo-i386-2020-08-25_1215.iso compression xz, using eggs\ntheme and link to dwagent\n","$ sudo eggs produce -vs --basename leo --rsupport \nproduce scripts to build an ISO as the previus example. Scripts can be found\nin /home/eggs/ovarium and you can customize all you need\n"],"flags":{"prefix":{"name":"prefix","type":"option","char":"p","description":"prefix","multiple":false},"basename":{"name":"basename","type":"option","description":"basename","multiple":false},"backup":{"name":"backup","type":"boolean","char":"b","description":"backup mode","allowNo":false},"fast":{"name":"fast","type":"boolean","char":"f","description":"fast compression","allowNo":false},"normal":{"name":"normal","type":"boolean","char":"n","description":"normal compression","allowNo":false},"max":{"name":"max","type":"boolean","char":"m","description":"max compression","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false},"yolk":{"name":"yolk","type":"boolean","char":"y","description":"-y force yolk renew","allowNo":false},"script":{"name":"script","type":"boolean","char":"s","description":"script mode. Generate scripts to manage iso build","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"theme":{"name":"theme","type":"option","description":"theme for livecd, calamares branding and partitions","multiple":false},"addons":{"name":"addons","type":"option","description":"addons to be used: adapt, ichoice, pve, rsupport","multiple":true},"release":{"name":"release","type":"boolean","description":"release: configure GUI installer to remove eggs and calamares after installation","allowNo":false}},"args":[],"_globalFlags":{}},"remove":{"id":"remove","description":"remove eggs and others stuff","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["$ sudo eggs remove \nremove eggs\n","$ sudo eggs remove --purge \nremove eggs, eggs configurations, configuration's files\n","$ sudo eggs remove --autoremove \nremove eggs, eggs configurations, packages dependencies\n"],"flags":{"purge":{"name":"purge","type":"boolean","char":"p","description":"remove eggs configurations files","allowNo":false},"autoremove":{"name":"autoremove","type":"boolean","char":"a","description":"remove eggs packages dependencies","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[],"_globalFlags":{}},"syncfrom":{"id":"syncfrom","description":"Restore users, server and datas from luks-eggs-backup","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":["restore"],"examples":["$ sudo eggs restore"],"flags":{"file":{"name":"file","type":"option","char":"f","description":"file with LUKS volume encrypted","multiple":false},"rootdir":{"name":"rootdir","type":"option","char":"r","description":"rootdir of the installed system, when used from live","multiple":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[],"_globalFlags":{}},"syncto":{"id":"syncto","description":"Backup users, server and datas to luks-eggs-backup","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":["backup"],"examples":["$ sudo eggs restore"],"flags":{"krill":{"name":"krill","type":"boolean","char":"k","description":"krill","allowNo":false},"file":{"name":"file","type":"option","char":"f","description":"file LUKS volume encrypted","multiple":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[],"_globalFlags":{}},"update":{"id":"update","description":"update the penguin's eggs tool","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["$ eggs update\nupdate/upgrade the penguin's eggs tool"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"apt":{"name":"apt","type":"boolean","char":"a","description":"if eggs package is .deb, update from distro repositories","allowNo":false},"basket":{"name":"basket","type":"boolean","char":"b","description":"if eggs package is .deb, update from eggs basket","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[],"_globalFlags":{}},"export:deb":{"id":"export:deb","description":"export deb/docs/iso to the destination host","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"clean":{"name":"clean","type":"boolean","char":"c","description":"remove old .deb before to copy","allowNo":false},"amd64":{"name":"amd64","type":"boolean","description":"export amd64 arch","allowNo":false},"i386":{"name":"i386","type":"boolean","description":"export i386 arch","allowNo":false},"armel":{"name":"armel","type":"boolean","description":"export armel arch","allowNo":false},"arm64":{"name":"arm64","type":"boolean","description":"export arm64 arch","allowNo":false},"all":{"name":"all","type":"boolean","char":"a","description":"export all archs","allowNo":false}},"args":[],"_globalFlags":{}},"export:docs":{"id":"export:docs","description":"remove and export docType documentation of the sources in the destination host","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false}},"args":[],"_globalFlags":{}},"export:iso":{"id":"export:iso","description":"export iso in the destination host","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"backup":{"name":"backup","type":"boolean","char":"b","description":"export backup ISOs","allowNo":false},"clean":{"name":"clean","type":"boolean","char":"c","description":"delete old ISOs before to copy","allowNo":false}},"args":[],"_globalFlags":{}},"tools:clean":{"id":"tools:clean","description":"clean system log, apt, etc","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":["clean"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[],"_globalFlags":{}},"tools:locales":{"id":"tools:locales","description":"install/clean locales","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"reinstall":{"name":"reinstall","type":"boolean","char":"r","description":"reinstall locales","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[],"_globalFlags":{}},"tools:skel":{"id":"tools:skel","description":"update skel from home configuration","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":["skel"],"examples":["$ eggs skel --user mauro\ndesktop configuration of user mauro will get used as default"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"user":{"name":"user","type":"option","char":"u","description":"user to be used","multiple":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false}},"args":[],"_globalFlags":{}},"tools:stat":{"id":"tools:stat","description":"get statistics from sourceforge","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":["stat"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"month":{"name":"month","type":"boolean","char":"m","description":"current month","allowNo":false},"year":{"name":"year","type":"boolean","char":"y","description":"current year","allowNo":false}},"args":[],"_globalFlags":{}},"tools:yolk":{"id":"tools:yolk","description":"configure eggs to install without internet","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["$ eggs yolk -v"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false}},"args":[],"_globalFlags":{},"dir":"/var/local/yolk"}}}
|
|
1
|
+
{"version":"9.0.35","commands":{"adapt":{"id":"adapt","description":"adapt monitor resolution for VM only","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":["adjust"],"flags":{"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false}},"args":[],"_globalFlags":{}},"analyze":{"id":"analyze","description":"analyze situation","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["$ sudo eggs analyze"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[],"_globalFlags":{}},"bro":{"id":"bro","description":"bro: waydroid helper","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false}},"args":[],"_globalFlags":{}},"calamares":{"id":"calamares","description":"calamares or install or configure it","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["~$ sudo eggs calamares \ncreate/renew calamares configuration's files\n","~$ sudo eggs calamares -i \ninstall calamares and create it's configuration's files\n"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false},"install":{"name":"install","type":"boolean","char":"i","description":"install calamares and it's dependencies","allowNo":false},"final":{"name":"final","type":"boolean","char":"f","description":"final: remove calamares and all it's dependencies after the installation","allowNo":false},"remove":{"name":"remove","type":"boolean","char":"r","description":"remove calamares and it's dependencies","allowNo":false},"theme":{"name":"theme","type":"option","description":"theme/branding for eggs and calamares","multiple":false}},"args":[],"_globalFlags":{}},"config":{"id":"config","description":"Configure and install prerequisites deb packages to run it","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":["prerequisites"],"examples":["~$ sudo eggs config\nConfigure and install prerequisites deb packages to run it"],"flags":{"nointeractive":{"name":"nointeractive","type":"boolean","char":"n","description":"assume yes","allowNo":false},"clean":{"name":"clean","type":"boolean","char":"c","description":"remove old configuration before to create new one","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[],"_globalFlags":{}},"dad":{"id":"dad","description":"ask help from daddy - configuration helper","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"clean":{"name":"clean","type":"boolean","char":"c","description":"remove old configuration before to create","allowNo":false},"default":{"name":"default","type":"boolean","char":"d","description":"remove old configuration and force default","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false}},"args":[],"_globalFlags":{}},"info":{"id":"info","description":"re-thinking for a different approach to CLI","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false}},"args":[],"_globalFlags":{}},"install":{"id":"install","description":"command-line system installer - the egg became a penguin!","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":["hatch","krill"],"examples":["$ eggs install\nInstall the system using GUI or CLI installer\n"],"flags":{"cli":{"name":"cli","type":"boolean","char":"c","description":"force use CLI installer","allowNo":false},"crypted":{"name":"crypted","type":"boolean","char":"k","description":"crypted CLI installation","allowNo":false},"pve":{"name":"pve","type":"boolean","char":"p","description":"Proxmox VE install","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[],"_globalFlags":{}},"kill":{"id":"kill","description":"kill the eggs/free the nest","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["$ eggs kill\nkill the eggs/free the nest"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[],"_globalFlags":{}},"mom":{"id":"mom","description":"ask for mommy - gui helper","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false}},"args":[],"_globalFlags":{}},"produce":{"id":"produce","description":"produce a live image from your system whithout your data","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":["spawn","lay"],"examples":["$ sudo eggs produce \nproduce an ISO called [hostname]-[arch]-YYYY-MM-DD_HHMM.iso, compressed xz (standard compression).\nIf hostname=ugo and arch=i386 ugo-x86-2020-08-25_1215.iso\n","$ sudo eggs produce -v\nsame as previuos, but with --verbose output\n","$ sudo eggs produce -vf\nsame as previuos, compression zstd, lz4 or gzip (depend from system capability)\n","$ sudo eggs produce -vm\nsame as previuos, compression xz -Xbcj x86 (max compression, about 10%\nmore compressed)\n","$ sudo eggs produce -vf --basename leo --theme debian --addons adapt \nproduce an ISO called leo-i386-2020-08-25_1215.iso compression fast,\nusing Debian theme and link to adapt\n","$ sudo eggs produce -v --basename leo --theme debian --addons rsupport \nproduce an ISO called leo-i386-2020-08-25_1215.iso compression xz,\nusing Debian theme and link to dwagent\n","$ sudo eggs produce -v --basename leo --rsupport \nproduce an ISO called leo-i386-2020-08-25_1215.iso compression xz, using eggs\ntheme and link to dwagent\n","$ sudo eggs produce -vs --basename leo --rsupport \nproduce scripts to build an ISO as the previus example. Scripts can be found\nin /home/eggs/ovarium and you can customize all you need\n"],"flags":{"prefix":{"name":"prefix","type":"option","char":"p","description":"prefix","multiple":false},"basename":{"name":"basename","type":"option","description":"basename","multiple":false},"backup":{"name":"backup","type":"boolean","char":"b","description":"backup mode","allowNo":false},"fast":{"name":"fast","type":"boolean","char":"f","description":"fast compression","allowNo":false},"normal":{"name":"normal","type":"boolean","char":"n","description":"normal compression","allowNo":false},"max":{"name":"max","type":"boolean","char":"m","description":"max compression","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false},"yolk":{"name":"yolk","type":"boolean","char":"y","description":"-y force yolk renew","allowNo":false},"script":{"name":"script","type":"boolean","char":"s","description":"script mode. Generate scripts to manage iso build","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"theme":{"name":"theme","type":"option","description":"theme for livecd, calamares branding and partitions","multiple":false},"addons":{"name":"addons","type":"option","description":"addons to be used: adapt, ichoice, pve, rsupport","multiple":true},"release":{"name":"release","type":"boolean","description":"release: configure GUI installer to remove eggs and calamares after installation","allowNo":false}},"args":[],"_globalFlags":{}},"remove":{"id":"remove","description":"remove eggs and others stuff","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["$ sudo eggs remove \nremove eggs\n","$ sudo eggs remove --purge \nremove eggs, eggs configurations, configuration's files\n","$ sudo eggs remove --autoremove \nremove eggs, eggs configurations, packages dependencies\n"],"flags":{"purge":{"name":"purge","type":"boolean","char":"p","description":"remove eggs configurations files","allowNo":false},"autoremove":{"name":"autoremove","type":"boolean","char":"a","description":"remove eggs packages dependencies","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[],"_globalFlags":{}},"syncfrom":{"id":"syncfrom","description":"Restore users, server and datas from luks-eggs-backup","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":["restore"],"examples":["$ sudo eggs restore"],"flags":{"delete":{"name":"delete","type":"option","description":"rsync --delete delete extraneous files from dest dirs","multiple":false},"file":{"name":"file","type":"option","char":"f","description":"file LUKS volume encrypted","multiple":false},"rootdir":{"name":"rootdir","type":"option","char":"r","description":"rootdir of the installed system, when used from live","multiple":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[],"_globalFlags":{}},"syncto":{"id":"syncto","description":"Backup users, server and datas to luks-eggs-backup","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":["backup"],"examples":["$ sudo eggs syncto"],"flags":{"delete":{"name":"delete","type":"option","description":"rsync --delete delete extraneous files from dest dirs","multiple":false},"file":{"name":"file","type":"option","char":"f","description":"file LUKS volume encrypted","multiple":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[],"_globalFlags":{}},"update":{"id":"update","description":"update the penguin's eggs tool","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["$ eggs update\nupdate/upgrade the penguin's eggs tool"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"apt":{"name":"apt","type":"boolean","char":"a","description":"if eggs package is .deb, update from distro repositories","allowNo":false},"basket":{"name":"basket","type":"boolean","char":"b","description":"if eggs package is .deb, update from eggs basket","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[],"_globalFlags":{}},"export:deb":{"id":"export:deb","description":"export deb/docs/iso to the destination host","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"clean":{"name":"clean","type":"boolean","char":"c","description":"remove old .deb before to copy","allowNo":false},"amd64":{"name":"amd64","type":"boolean","description":"export amd64 arch","allowNo":false},"i386":{"name":"i386","type":"boolean","description":"export i386 arch","allowNo":false},"armel":{"name":"armel","type":"boolean","description":"export armel arch","allowNo":false},"arm64":{"name":"arm64","type":"boolean","description":"export arm64 arch","allowNo":false},"all":{"name":"all","type":"boolean","char":"a","description":"export all archs","allowNo":false}},"args":[],"_globalFlags":{}},"export:docs":{"id":"export:docs","description":"remove and export docType documentation of the sources in the destination host","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false}},"args":[],"_globalFlags":{}},"export:iso":{"id":"export:iso","description":"export iso in the destination host","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"backup":{"name":"backup","type":"boolean","char":"b","description":"export backup ISOs","allowNo":false},"clean":{"name":"clean","type":"boolean","char":"c","description":"delete old ISOs before to copy","allowNo":false}},"args":[],"_globalFlags":{}},"tools:clean":{"id":"tools:clean","description":"clean system log, apt, etc","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":["clean"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[],"_globalFlags":{}},"tools:locales":{"id":"tools:locales","description":"install/clean locales","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"reinstall":{"name":"reinstall","type":"boolean","char":"r","description":"reinstall locales","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[],"_globalFlags":{}},"tools:skel":{"id":"tools:skel","description":"update skel from home configuration","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":["skel"],"examples":["$ eggs skel --user mauro\ndesktop configuration of user mauro will get used as default"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"user":{"name":"user","type":"option","char":"u","description":"user to be used","multiple":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false}},"args":[],"_globalFlags":{}},"tools:stat":{"id":"tools:stat","description":"get statistics from sourceforge","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":["stat"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"month":{"name":"month","type":"boolean","char":"m","description":"current month","allowNo":false},"year":{"name":"year","type":"boolean","char":"y","description":"current year","allowNo":false}},"args":[],"_globalFlags":{}},"tools:yolk":{"id":"tools:yolk","description":"configure eggs to install without internet","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["$ eggs yolk -v"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false}},"args":[],"_globalFlags":{},"dir":"/var/local/yolk"}}}
|
package/package.json
CHANGED