penguins-eggs 9.1.35 → 9.1.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/README.md +17 -17
  2. package/addons/eggs/adapt/applications/eggs-adapt.desktop +0 -0
  3. package/addons/eggs/adapt/bin/adapt +0 -0
  4. package/addons/eggs/ichoice/bin/eggs-ichoice.sh +0 -0
  5. package/addons/eggs/pve/applications/eggs-pve.desktop +0 -0
  6. package/addons/eggs/rsupport/applications/eggs-rsupport.desktop +0 -0
  7. package/addons/eggs/theme/applications/install-debian.desktop +0 -0
  8. package/addons/neon/theme/applications/install-debian.desktop +0 -0
  9. package/addons/telos/theme/applications/install-debian.desktop +0 -0
  10. package/addons/ufficiozero/theme/applications/install-debian.desktop +0 -0
  11. package/addons/waydroid/theme/applications/install-debian.desktop +0 -0
  12. package/assets/calamares/install-debian +0 -0
  13. package/assets/penguins-eggs.desktop +0 -0
  14. package/assets/penguins-krill.desktop +0 -0
  15. package/assets/penguins-links-add.desktop +0 -0
  16. package/assets/penguins-live-installer.desktop +0 -0
  17. package/bin/dev +0 -0
  18. package/conf/distros/bionic/calamares/calamares-modules/after-bootloader/after-bootloader.sh +0 -0
  19. package/conf/distros/bionic/calamares/calamares-modules/before-bootloader/before-bootloader.sh +0 -0
  20. package/conf/distros/bionic/calamares/calamares-modules/before-bootloader-mkdirs/before-bootloader-mkdirs.sh +0 -0
  21. package/conf/distros/bionic/calamares/calamares-modules/bug/bug.sh +0 -0
  22. package/conf/distros/bionic/calamares/calamares-modules/grubcfg/main.py +0 -0
  23. package/conf/distros/buster/calamares/calamares-modules/cleanup/cleanup.sh +0 -0
  24. package/conf/distros/buster/calamares/calamares-modules/dpkg-unsafe-io/dpkg-unsafe-io.sh +0 -0
  25. package/conf/distros/buster/calamares/calamares-modules/sources-yolk/sources-yolk.sh +0 -0
  26. package/conf/distros/focal/calamares/calamares-modules/automirror/main.py +0 -0
  27. package/conf/tools.yaml +1 -1
  28. package/lib/classes/distro.js +13 -14
  29. package/lib/classes/ovary.js +35 -11
  30. package/lib/classes/utils.js +2 -1
  31. package/lib/krill/krill-prepare.js +1 -1
  32. package/lib/krill/krill-sequence.d.ts +1 -1
  33. package/lib/krill/krill-sequence.js +31 -31
  34. package/lib/krill/modules/bootloader.js +28 -2
  35. package/lib/krill/modules/initramfs.js +14 -2
  36. package/lib/krill/modules/{l/303/262cale-cfg.d.ts → locale-cfg.d.ts} +0 -0
  37. package/lib/krill/modules/{l/303/262cale-cfg.js → locale-cfg.js} +0 -0
  38. package/lib/lib/utils.d.ts +27 -0
  39. package/lib/lib/utils.js +54 -19
  40. package/mkinitcpio/archlinux/README.md +116 -0
  41. package/mkinitcpio/manjaro/README.md +4 -0
  42. package/package.json +117 -112
  43. package/scripts/bros/waydroid-helper.sh +0 -0
  44. package/scripts/eggs-adapt.sh +0 -0
  45. package/scripts/install-eggs-ppa.sh +0 -0
  46. package/scripts/mom-cli.sh +0 -0
  47. package/scripts/pve-live.service +0 -0
  48. package/scripts/pve-live.sh +0 -0
  49. package/scripts/resy.sh +0 -0
  50. package/scripts/userexist.sh +0 -0
package/README.md CHANGED
@@ -48,7 +48,7 @@ wardrobe was added to eggs on april 2022, it's is a way to guide and consolidate
48
48
 
49
49
  I hope peoples will be interested in wardrobe and you will end to fork the main repository and add your customizations: together will be possibile to make great steps impossible for a single developer.
50
50
 
51
- You can read more in wardrobe on [penguin's eggs blog](https://penguins-eggs.net/2022/04/12/wardrobe-colibri-duck-eagle-and-owl/). The results of mine customizations are mostly under [Debian bullseye](https://sourceforge.net/projects/penguins-eggs/files/iso/debian/bullseye/), [Devuan chimaera](https://sourceforge.net/projects/penguins-eggs/files/iso/devuan/chimaera/) and [Ubuntu jammy](https://sourceforge.net/projects/penguins-eggs/files/iso/ubuntu/jammy/) on my sourgeforce page.
51
+ You can read more in wardrobe on [penguin's eggs blog](https://penguins-eggs.net/2022/04/12/wardrobe-colibri-duck-eagle-and-owl/). The results of mine customizations are mostly under [Debian bullseye](https://sourceforge.net/projects/penguins-eggs/files/iso/debian/bullseye/), [Devuan chimaera](ttps://sourceforge.net/projects/penguins-eggs/files/iso/devuan/chimaera/) and [Ubuntu jammy](https://sourceforge.net/projects/penguins-eggs/files/iso/ubuntu/jammy/) on my sourgeforce page.
52
52
 
53
53
  ### krill
54
54
  eggs include a CLI installer named krill, this let you to produce and install servers configurations. krill use a nice TUI interface using the same, configuration created by eggs for [calamares](calamares.io). This lead to have "about the same" experience installing, from old distros to new ones and for GUI and CLI. To force using krill in place of calamares in a GUI system just: **sudo eggs install --cli**
@@ -78,7 +78,7 @@ Or a new installation, can easyly get users and servers data from a luks-eggs-ba
78
78
  * ```syncfrom``` replace all users homes and all servers homes with data from the luck-eggs-backup file, Force this data in a not appropriate system can easily end in a long disaster recovery.
79
79
 
80
80
  ## What distributions can I use?
81
- eggs was born on Debian strecth, buster and following, actually full support Debian from jessie to bookworm/sid, Devuan beowulf, chimaera, daedalus, Ubuntu bionic, focal, jammy and all derivatives from them, including Linux mint, Deepin, neon KDE, etc. Eggs is able to remaster and install manjaro linux too and derivated, i need help to continue the effort to manjaro.
81
+ eggs was born on Debian strecth, buster and followinng. Actually full support Debian from jessie to bookworm/sid, Devuan beowulf, chimaera, daedalus, Ubuntu bionic, focal, jammy - and all derivatives from them including Linux mint, Deepin, neon KDE, etc - ManjaroLinux and finally Arch, the last distro added.
82
82
 
83
83
  You can read more on the [blog](https://penguins-eggs.net/2021/11/02/distros-that-can-be-remastered-with-eggs/), some examples of iso images remastered with eggs are in the [sourceforge page of the project](https://sourceforge.net/projects/penguins-eggs/files/iso/).
84
84
 
@@ -132,7 +132,7 @@ $ npm install -g penguins-eggs
132
132
  $ eggs COMMAND
133
133
  running command...
134
134
  $ eggs (--version|-v)
135
- penguins-eggs/9.1.35 linux-x64 node-v16.15.1
135
+ penguins-eggs/9.1.37 linux-x64 node-v16.16.0
136
136
  $ eggs --help [COMMAND]
137
137
  USAGE
138
138
  $ eggs COMMAND
@@ -189,7 +189,7 @@ DESCRIPTION
189
189
  adapt monitor resolution for VM only
190
190
  ```
191
191
 
192
- _See code: [src/commands/adapt.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.35/src/commands/adapt.ts)_
192
+ _See code: [src/commands/adapt.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.37/src/commands/adapt.ts)_
193
193
 
194
194
  ## `eggs analyze`
195
195
 
@@ -210,7 +210,7 @@ EXAMPLES
210
210
  $ sudo eggs analyze
211
211
  ```
212
212
 
213
- _See code: [src/commands/analyze.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.35/src/commands/analyze.ts)_
213
+ _See code: [src/commands/analyze.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.37/src/commands/analyze.ts)_
214
214
 
215
215
  ## `eggs autocomplete [SHELL]`
216
216
 
@@ -268,7 +268,7 @@ EXAMPLES
268
268
  install calamares and create it's configuration's files
269
269
  ```
270
270
 
271
- _See code: [src/commands/calamares.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.35/src/commands/calamares.ts)_
271
+ _See code: [src/commands/calamares.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.37/src/commands/calamares.ts)_
272
272
 
273
273
  ## `eggs config`
274
274
 
@@ -292,7 +292,7 @@ EXAMPLES
292
292
  Configure and install prerequisites deb packages to run it
293
293
  ```
294
294
 
295
- _See code: [src/commands/config.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.35/src/commands/config.ts)_
295
+ _See code: [src/commands/config.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.37/src/commands/config.ts)_
296
296
 
297
297
  ## `eggs dad`
298
298
 
@@ -312,7 +312,7 @@ DESCRIPTION
312
312
  ask help from daddy - configuration helper
313
313
  ```
314
314
 
315
- _See code: [src/commands/dad.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.35/src/commands/dad.ts)_
315
+ _See code: [src/commands/dad.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.37/src/commands/dad.ts)_
316
316
 
317
317
  ## `eggs export deb`
318
318
 
@@ -403,7 +403,7 @@ DESCRIPTION
403
403
  informations about eggs configuration
404
404
  ```
405
405
 
406
- _See code: [src/commands/info.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.35/src/commands/info.ts)_
406
+ _See code: [src/commands/info.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.37/src/commands/info.ts)_
407
407
 
408
408
  ## `eggs install`
409
409
 
@@ -451,7 +451,7 @@ EXAMPLES
451
451
  kill the eggs/free the nest
452
452
  ```
453
453
 
454
- _See code: [src/commands/kill.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.35/src/commands/kill.ts)_
454
+ _See code: [src/commands/kill.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.37/src/commands/kill.ts)_
455
455
 
456
456
  ## `eggs krill`
457
457
 
@@ -479,7 +479,7 @@ EXAMPLES
479
479
  Install the system using GUI or CLI installer
480
480
  ```
481
481
 
482
- _See code: [src/commands/krill.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.35/src/commands/krill.ts)_
482
+ _See code: [src/commands/krill.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.37/src/commands/krill.ts)_
483
483
 
484
484
  ## `eggs mom`
485
485
 
@@ -496,7 +496,7 @@ DESCRIPTION
496
496
  ask for mommy - gui helper
497
497
  ```
498
498
 
499
- _See code: [src/commands/mom.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.35/src/commands/mom.ts)_
499
+ _See code: [src/commands/mom.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.37/src/commands/mom.ts)_
500
500
 
501
501
  ## `eggs produce`
502
502
 
@@ -557,7 +557,7 @@ EXAMPLES
557
557
  in /home/eggs/ovarium and you can customize all you need
558
558
  ```
559
559
 
560
- _See code: [src/commands/produce.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.35/src/commands/produce.ts)_
560
+ _See code: [src/commands/produce.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.37/src/commands/produce.ts)_
561
561
 
562
562
  ## `eggs remove`
563
563
 
@@ -587,7 +587,7 @@ EXAMPLES
587
587
  remove eggs, eggs configurations, packages dependencies
588
588
  ```
589
589
 
590
- _See code: [src/commands/remove.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.35/src/commands/remove.ts)_
590
+ _See code: [src/commands/remove.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.37/src/commands/remove.ts)_
591
591
 
592
592
  ## `eggs syncfrom`
593
593
 
@@ -611,7 +611,7 @@ EXAMPLES
611
611
  $ sudo eggs restore
612
612
  ```
613
613
 
614
- _See code: [src/commands/syncfrom.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.35/src/commands/syncfrom.ts)_
614
+ _See code: [src/commands/syncfrom.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.37/src/commands/syncfrom.ts)_
615
615
 
616
616
  ## `eggs syncto`
617
617
 
@@ -634,7 +634,7 @@ EXAMPLES
634
634
  $ sudo eggs syncto
635
635
  ```
636
636
 
637
- _See code: [src/commands/syncto.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.35/src/commands/syncto.ts)_
637
+ _See code: [src/commands/syncto.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.37/src/commands/syncto.ts)_
638
638
 
639
639
  ## `eggs tools clean`
640
640
 
@@ -729,7 +729,7 @@ EXAMPLES
729
729
  update/upgrade the penguin's eggs tool
730
730
  ```
731
731
 
732
- _See code: [src/commands/update.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.35/src/commands/update.ts)_
732
+ _See code: [src/commands/update.ts](https://github.com/pieroproietti/penguins-eggs/blob/v9.1.37/src/commands/update.ts)_
733
733
 
734
734
  ## `eggs version`
735
735
 
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/bin/dev CHANGED
File without changes
package/conf/tools.yaml CHANGED
@@ -4,7 +4,7 @@
4
4
  penguins_eggs_conf: /etc/penguins-eggs.d/eggs.yaml
5
5
 
6
6
  # you can adapt this configuration to your needs
7
- remoteHost: 192.168.61.2
7
+ remoteHost: 192.168.1.2
8
8
 
9
9
  # user to be used in remote host
10
10
  remoteUser: artisan
@@ -307,18 +307,24 @@ class Distro {
307
307
  case 'n/a': {
308
308
  this.familyId = 'archlinux';
309
309
  this.distroLike = 'Arch';
310
+ this.codenameId = 'rolling';
310
311
  this.codenameLikeId = 'rolling';
311
312
  break;
312
313
  }
313
314
  /**
314
- * GARUDA
315
+ * Manjaro
315
316
  */
316
- case 'Harpy-Eagle': {
317
+ case 'Qonos':
318
+ case 'Ruah': {
317
319
  this.familyId = 'archlinux';
318
320
  this.distroLike = 'Arch';
319
321
  this.codenameLikeId = 'rolling';
320
322
  break;
321
323
  }
324
+ /**
325
+ * GARUDA
326
+ */
327
+ case 'Harpy-Eagle':
322
328
  case 'White-tailed-eagle': {
323
329
  this.familyId = 'archlinux';
324
330
  this.distroLike = 'Arch';
@@ -326,18 +332,8 @@ class Distro {
326
332
  break;
327
333
  }
328
334
  /**
329
- * Manjaro
335
+ * FEDORA
330
336
  */
331
- case 'Qonos':
332
- case 'Ruah': {
333
- this.familyId = 'archlinux';
334
- this.distroLike = 'Arch';
335
- this.codenameLikeId = 'rolling';
336
- break;
337
- /**
338
- * Fedora
339
- */
340
- }
341
337
  case 'ThirtyFive': {
342
338
  this.familyId = 'fedora';
343
339
  this.distroLike = 'Fedora';
@@ -372,9 +368,12 @@ class Distro {
372
368
  else {
373
369
  this.mountpointSquashFs = '/run/live/medium/live/filesystem.squashfs';
374
370
  }
375
- if (this.familyId === "archlinux") {
371
+ if (this.distroId === "ManjaroLinux") {
376
372
  this.mountpointSquashFs = "/run/miso/bootmnt/live/filesystem.squashfs";
377
373
  }
374
+ else if (this.distroId === "Arch") {
375
+ this.mountpointSquashFs = "/run/archiso/bootmnt/live/filesystem.squashfs";
376
+ }
378
377
  /**
379
378
  * setting paths: syslinux, isolinux, usrLib
380
379
  */
@@ -191,11 +191,19 @@ class Ovary {
191
191
  }
192
192
  const xorrisoCommand = this.makeDotDisk(backup);
193
193
  /**
194
- * patch to emulate miso archilinux
194
+ * patch to emulate miso/archiso on archilinux
195
195
  */
196
196
  if (this.familyId === 'archlinux') {
197
197
  await (0, utils_1.exec)(`mkdir ${this.settings.work_dir.pathIso}/live/x86_64`, this.echo);
198
- await (0, utils_1.exec)(`ln ${this.settings.work_dir.pathIso}/live/filesystem.squashfs ${this.settings.work_dir.pathIso}/live/x86_64/livefs.sfs`, this.echo);
198
+ if (this.settings.distro.distroId === 'ManjaroLinux') {
199
+ await (0, utils_1.exec)(`ln ${this.settings.work_dir.pathIso}/live/filesystem.squashfs ${this.settings.work_dir.pathIso}/live/x86_64/livefs.sfs`, this.echo);
200
+ await (0, utils_1.exec)(`md5sum ${this.settings.work_dir.pathIso}/live/filesystem.squashfs > ${this.settings.work_dir.pathIso}/live/x86_64/livefs.md5`, this.echo);
201
+ }
202
+ else if (this.settings.distro.distroId === 'Arch') {
203
+ await (0, utils_1.exec)(`ln ${this.settings.work_dir.pathIso}/live/filesystem.squashfs ${this.settings.work_dir.pathIso}/live/x86_64/airootfs.sfs`, this.echo);
204
+ await (0, utils_1.exec)(`sha512sum ${this.settings.work_dir.pathIso}/live/filesystem.squashfs > ${this.settings.work_dir.pathIso}/live/x86_64/airootfs.sha512`, this.echo);
205
+ // await exec(`gpg --detach-sign ${this.settings.work_dir.pathIso}/live/filesystem.squashfs ${this.settings.work_dir.pathIso}/live/x86_64/airootfs.sig`, this.echo)
206
+ }
199
207
  }
200
208
  await this.makeIso(xorrisoCommand, scriptOnly);
201
209
  }
@@ -214,7 +222,7 @@ class Ovary {
214
222
  this.tryCatch(cmd);
215
223
  }
216
224
  if (!fs_1.default.existsSync(this.settings.work_dir.path + '/README.md')) {
217
- cmd = `cp ${node_path_1.default.resolve(__dirname, '../../conf/README.md')} ${this.settings.work_dir.path}README.md}`;
225
+ cmd = `cp ${node_path_1.default.resolve(__dirname, '../../conf/README.md')} ${this.settings.work_dir.path}README.md`;
218
226
  this.tryCatch(cmd);
219
227
  }
220
228
  if (!fs_1.default.existsSync(this.settings.work_dir.lowerdir)) {
@@ -508,10 +516,18 @@ class Ovary {
508
516
  utils_2.default.warning('Cannot find: ' + isolinuxTemplate);
509
517
  process.exit();
510
518
  }
519
+ /**
520
+ * kernel_parameters are used by miso, archiso
521
+ */
511
522
  let kernel_parameters = `boot=live components locales=${process.env.LANG}`;
512
- let volid = utils_2.default.getVolid(this.settings.remix.name);
513
- if (this.familyId === "archlinux") {
514
- kernel_parameters = `misobasedir=live misolabel=${volid} boot=live locales=${process.env.LANG}`;
523
+ if (this.familyId === 'archlinux') {
524
+ let volid = utils_2.default.getVolid(this.settings.remix.name);
525
+ if (this.settings.distro.distroId === 'ManjaroLinux') {
526
+ kernel_parameters += ` misobasedir=live misolabel=${volid}`;
527
+ }
528
+ else if (this.settings.distro.distroId === 'Arch') {
529
+ kernel_parameters += ` archisobasedir=live archisolabel=${volid} cow_spacesize=4G`;
530
+ }
515
531
  }
516
532
  const template = fs_1.default.readFileSync(isolinuxTemplate, 'utf8');
517
533
  const view = {
@@ -922,7 +938,7 @@ class Ovary {
922
938
  // adduser live to wheel and autologin
923
939
  cmds.push(await rexec(`chroot ${this.settings.work_dir.merged} usermod -aG wheel ${this.settings.config.user_opt}`, this.verbose));
924
940
  // in manjaro they use autologin group for the iso, if not exist create it
925
- cmds.push(await rexec(`chroot ${this.settings.work_dir.merged} test $(grep "autologin" /etc/group) || groupadd -r autologin`, this.verbose));
941
+ cmds.push(await rexec(`chroot ${this.settings.work_dir.merged} test $(grep "autologin" /etc/group) || chroot ${this.settings.work_dir.merged} groupadd -r autologin`, this.verbose));
926
942
  cmds.push(await rexec(`chroot ${this.settings.work_dir.merged} usermod -aG autologin ${this.settings.config.user_opt}`, this.verbose));
927
943
  }
928
944
  if (this.familyId === 'debian' || this.familyId === 'archlinux') {
@@ -1255,10 +1271,18 @@ class Ovary {
1255
1271
  utils_2.default.warning('Cannot find: ' + grubTemplate);
1256
1272
  process.exit();
1257
1273
  }
1258
- let kernel_parameters = `boot=live locales=${process.env.LANG}`;
1259
- let volid = utils_2.default.getVolid(this.settings.remix.name);
1260
- if (this.familyId === "archlinux") {
1261
- kernel_parameters = `misobasedir=live misolabel=${volid} boot=live locales=${process.env.LANG}`;
1274
+ /**
1275
+ * kernel_parameters are used by miso, archiso
1276
+ */
1277
+ let kernel_parameters = `boot=live components locales=${process.env.LANG}`;
1278
+ if (this.familyId === 'archlinux') {
1279
+ let volid = utils_2.default.getVolid(this.settings.remix.name);
1280
+ if (this.settings.distro.distroId === 'ManjaroLinux') {
1281
+ kernel_parameters += ` misobasedir=live misolabel=${volid}`;
1282
+ }
1283
+ else if (this.settings.distro.distroId === 'Arch') {
1284
+ kernel_parameters += ` archisobasedir=live archisolabel=${volid} cow_spacesize=4G`;
1285
+ }
1262
1286
  }
1263
1287
  const grubDest = `${isoDir}/boot/grub/grub.cfg`;
1264
1288
  const template = fs_1.default.readFileSync(grubTemplate, 'utf8');
@@ -495,7 +495,8 @@ class Utils {
495
495
  '/lib/live/mount',
496
496
  '/lib/live/mount/rootfs/filesystem.squashfs',
497
497
  '/live/aufs',
498
- '/run/miso/sfs/livefs' // manjaro qonos
498
+ '/run/miso/sfs/livefs',
499
+ '/run/archiso/airootfs' // Arch
499
500
  ];
500
501
  for (let i = 0; i < paths.length; i++) {
501
502
  if (Utils.isMountpoint(paths[i])) {
@@ -337,7 +337,7 @@ class Krill {
337
337
  */
338
338
  async install(location, keyboard, partitions, users, network, verbose = false) {
339
339
  const sequence = new krill_sequence_1.default(location, keyboard, partitions, users, network);
340
- sequence.install(verbose);
340
+ await sequence.install(verbose);
341
341
  }
342
342
  /**
343
343
  * return true if pv exist
@@ -53,7 +53,7 @@ import machineId from './modules/machine-id';
53
53
  import fstab from './modules/fstab';
54
54
  import locale from './modules/locale';
55
55
  import setKeyboard from './modules/set-keyboard';
56
- import localeCfg from './modules/lòcale-cfg';
56
+ import localeCfg from './modules/locale-cfg';
57
57
  import addUser from './modules/add-user';
58
58
  import changePassword from './modules/change-password';
59
59
  import networkCfg from './modules/network-cfg';