penguins-eggs 9.3.1 → 9.3.2

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 (26) hide show
  1. package/.oclif.manifest.json +1 -1
  2. package/README.md +29 -21
  3. package/conf/distros/bionic/README.md +1 -1
  4. package/conf/distros/bionic/calamares/settings.yml +1 -1
  5. package/conf/distros/buster/calamares/calamares-modules/dpkg-unsafe-io/module.yml +1 -1
  6. package/conf/distros/buster/calamares/calamares-modules/dpkg-unsafe-io-undo/module.yml +1 -1
  7. package/conf/distros/buster/calamares/calamares-modules/sources-yolk/sources-yolk.sh +56 -79
  8. package/conf/distros/buster/calamares/calamares-modules/{sources-yolk-unmount → sources-yolk-undo}/module.yml +2 -2
  9. package/conf/distros/buster/calamares/modules/packages.yml +2 -4
  10. package/conf/distros/buster/calamares/settings.yml +3 -3
  11. package/conf/distros/focal/calamares/settings.yml +1 -1
  12. package/conf/distros/jessie/krill/krill-modules/sources-yolk-unmount/module.yml +2 -2
  13. package/conf/distros/jessie/krill/settings.yml +1 -1
  14. package/dist/classes/incubation/distros/bionic.js +1 -1
  15. package/dist/classes/incubation/distros/buster.js +2 -2
  16. package/dist/classes/incubation/distros/focal.js +1 -1
  17. package/dist/classes/incubation/distros/jessie.js +1 -1
  18. package/dist/classes/incubation/fisherman-helper/packages.js +24 -31
  19. package/dist/classes/incubation/fisherman.js +8 -5
  20. package/dist/classes/pacman.js +5 -5
  21. package/dist/classes/pxe.js +3 -3
  22. package/dist/krill/krill-sequence.js +26 -6
  23. package/dist/krill/modules/packages.js +40 -34
  24. package/package.json +1 -1
  25. package/conf/distros/buster/calamares/calamares-modules/sources-yolk/sources-yolk.working.sh +0 -75
  26. package/scripts/netgrub.sh +0 -39
@@ -1 +1 @@
1
- {"version":"9.3.1","commands":{"adapt":{"id":"adapt","description":"adapt monitor resolution for VM only","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":[]},"analyze":{"id":"analyze","description":"analyze for syncto","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":[]},"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},"release":{"name":"release","type":"boolean","char":"r","description":"release: remove calamares and all it's dependencies after the installation","allowNo":false},"remove":{"name":"remove","type":"boolean","description":"remove calamares and it's dependencies","allowNo":false},"theme":{"name":"theme","type":"option","description":"theme/branding for eggs and calamares","multiple":false}},"args":[]},"config":{"id":"config","description":"Configure and install prerequisites deb packages to run it","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"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":[]},"cuckoo":{"id":"cuckoo","description":"PXE start with proxy-dhcp","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["$ sudo eggs cuckoo\nstart a PXE server with dhcp-proxy (can coexists with a real dhcp server)\n"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false}},"args":[]},"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":[]},"install":{"id":"install","description":"command-line system installer - the egg became a penguin!","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["$ eggs install\nInstall the system using krill installer\n"],"flags":{"unattended":{"name":"unattended","type":"boolean","char":"u","description":"Unattended installation","allowNo":false},"ip":{"name":"ip","type":"boolean","char":"i","description":"hostname as ip, eg: ip-192-168-1-33","allowNo":false},"random":{"name":"random","type":"boolean","char":"r","description":"Add random to hostname, eg: colibri-ay412dt","allowNo":false},"domain":{"name":"domain","type":"option","char":"d","description":"Domain name, defult: .local","multiple":false},"suspend":{"name":"suspend","type":"boolean","char":"S","description":"Swap suspend: RAM x 2","allowNo":false},"small":{"name":"small","type":"boolean","char":"s","description":"Swap small: RAM","allowNo":false},"none":{"name":"none","type":"boolean","char":"n","description":"Swap none: 256M","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":[]},"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":[]},"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":[]},"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":[],"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 (CRYPTED)","allowNo":false},"clone":{"name":"clone","type":"boolean","char":"c","description":"clone 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: max compression, remove penguins-eggs and calamares after installation","allowNo":false}},"args":[]},"status":{"id":"status","description":"informations about eggs status","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":[]},"syncfrom":{"id":"syncfrom","description":"restore users and user data from a LUKS volumes","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"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":[]},"syncto":{"id":"syncto","description":"saves users and user data in a LUKS volume inside the iso","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"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":[]},"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},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[]},"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":[]},"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":[]},"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":[]},"tools:clean":{"id":"tools:clean","description":"clean system log, apt, etc","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},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[]},"tools:ppa":{"id":"tools:ppa","description":"add/remove PPA repositories (Debian family)","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},"add":{"name":"add","type":"boolean","char":"a","description":"add penguins-eggs PPA repository","allowNo":false},"remove":{"name":"remove","type":"boolean","char":"r","description":"remove penguins-eggs PPA repository","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[]},"tools:skel":{"id":"tools:skel","description":"update skel from home configuration","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"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":[]},"tools:stat":{"id":"tools:stat","description":"get statistics from sourceforge","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},"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":[]},"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":[],"dir":"/var/local/yolk"},"wardrobe:get":{"id":"wardrobe:get","description":"get warorobe","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":[{"name":"repo","description":"repository to get","required":false}]},"wardrobe:ironing":{"id":"wardrobe:ironing","description":"ordered show of costumes or accessories in wardrobe","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"wardrobe":{"name":"wardrobe","type":"option","char":"w","description":"wardrobe","multiple":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false}},"args":[{"name":"costume","description":"costume","required":false}]},"wardrobe:list":{"id":"wardrobe:list","description":"list costumes and accessoires in wardrobe","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":[{"name":"wardrobe","description":"wardrobe","required":false}]},"wardrobe:show":{"id":"wardrobe:show","description":"show costumes/accessories in wardrobe","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"wardrobe":{"name":"wardrobe","type":"option","char":"w","description":"wardrobe","multiple":false},"json":{"name":"json","type":"boolean","char":"j","description":"output JSON","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false}},"args":[{"name":"costume","description":"costume","required":false}]},"wardrobe:wear":{"id":"wardrobe:wear","description":"wear costume/accessories from wardrobe","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"wardrobe":{"name":"wardrobe","type":"option","char":"w","description":"wardrobe","multiple":false},"no_accessories":{"name":"no_accessories","type":"boolean","char":"a","description":"not install accessories","allowNo":false},"no_firmwares":{"name":"no_firmwares","type":"boolean","char":"f","description":"not install firmwares","allowNo":false},"silent":{"name":"silent","type":"boolean","char":"s","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false}},"args":[{"name":"costume","description":"costume","required":false}]}}}
1
+ {"version":"9.3.2","commands":{"adapt":{"id":"adapt","description":"adapt monitor resolution for VM only","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":[]},"analyze":{"id":"analyze","description":"analyze for syncto","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":[]},"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},"release":{"name":"release","type":"boolean","char":"r","description":"release: remove calamares and all it's dependencies after the installation","allowNo":false},"remove":{"name":"remove","type":"boolean","description":"remove calamares and it's dependencies","allowNo":false},"theme":{"name":"theme","type":"option","description":"theme/branding for eggs and calamares","multiple":false}},"args":[]},"config":{"id":"config","description":"Configure and install prerequisites deb packages to run it","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"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":[]},"cuckoo":{"id":"cuckoo","description":"PXE start with proxy-dhcp","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["$ sudo eggs cuckoo\nstart a PXE server with dhcp-proxy (can coexists with a real dhcp server)\n"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false}},"args":[]},"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":[]},"install":{"id":"install","description":"command-line system installer - the egg became a penguin!","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["$ eggs install\nInstall the system using krill installer\n"],"flags":{"unattended":{"name":"unattended","type":"boolean","char":"u","description":"Unattended installation","allowNo":false},"ip":{"name":"ip","type":"boolean","char":"i","description":"hostname as ip, eg: ip-192-168-1-33","allowNo":false},"random":{"name":"random","type":"boolean","char":"r","description":"Add random to hostname, eg: colibri-ay412dt","allowNo":false},"domain":{"name":"domain","type":"option","char":"d","description":"Domain name, defult: .local","multiple":false},"suspend":{"name":"suspend","type":"boolean","char":"S","description":"Swap suspend: RAM x 2","allowNo":false},"small":{"name":"small","type":"boolean","char":"s","description":"Swap small: RAM","allowNo":false},"none":{"name":"none","type":"boolean","char":"n","description":"Swap none: 256M","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":[]},"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":[]},"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":[]},"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":[],"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 (CRYPTED)","allowNo":false},"clone":{"name":"clone","type":"boolean","char":"c","description":"clone 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: max compression, remove penguins-eggs and calamares after installation","allowNo":false}},"args":[]},"status":{"id":"status","description":"informations about eggs status","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":[]},"syncfrom":{"id":"syncfrom","description":"restore users and user data from a LUKS volumes","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"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":[]},"syncto":{"id":"syncto","description":"saves users and user data in a LUKS volume inside the iso","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"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":[]},"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},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[]},"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":[]},"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":[]},"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":[]},"tools:clean":{"id":"tools:clean","description":"clean system log, apt, etc","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},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[]},"tools:ppa":{"id":"tools:ppa","description":"add/remove PPA repositories (Debian family)","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},"add":{"name":"add","type":"boolean","char":"a","description":"add penguins-eggs PPA repository","allowNo":false},"remove":{"name":"remove","type":"boolean","char":"r","description":"remove penguins-eggs PPA repository","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[]},"tools:skel":{"id":"tools:skel","description":"update skel from home configuration","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"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":[]},"tools:stat":{"id":"tools:stat","description":"get statistics from sourceforge","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},"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":[]},"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":[],"dir":"/var/local/yolk"},"wardrobe:get":{"id":"wardrobe:get","description":"get warorobe","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":[{"name":"repo","description":"repository to get","required":false}]},"wardrobe:ironing":{"id":"wardrobe:ironing","description":"ordered show of costumes or accessories in wardrobe","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"wardrobe":{"name":"wardrobe","type":"option","char":"w","description":"wardrobe","multiple":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false}},"args":[{"name":"costume","description":"costume","required":false}]},"wardrobe:list":{"id":"wardrobe:list","description":"list costumes and accessoires in wardrobe","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":[{"name":"wardrobe","description":"wardrobe","required":false}]},"wardrobe:show":{"id":"wardrobe:show","description":"show costumes/accessories in wardrobe","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"wardrobe":{"name":"wardrobe","type":"option","char":"w","description":"wardrobe","multiple":false},"json":{"name":"json","type":"boolean","char":"j","description":"output JSON","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false}},"args":[{"name":"costume","description":"costume","required":false}]},"wardrobe:wear":{"id":"wardrobe:wear","description":"wear costume/accessories from wardrobe","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"flags":{"wardrobe":{"name":"wardrobe","type":"option","char":"w","description":"wardrobe","multiple":false},"no_accessories":{"name":"no_accessories","type":"boolean","char":"a","description":"not install accessories","allowNo":false},"no_firmwares":{"name":"no_firmwares","type":"boolean","char":"f","description":"not install firmwares","allowNo":false},"silent":{"name":"silent","type":"boolean","char":"s","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false}},"args":[{"name":"costume","description":"costume","required":false}]}}}
package/README.md CHANGED
@@ -18,7 +18,7 @@ penguins-eggs
18
18
  <!-- toc -->
19
19
  * [Index](#index)
20
20
  * [Presentation](#presentation)
21
- * [Tecnology](#tecnology)
21
+ * [Technology](#technology)
22
22
  * [Features](#features)
23
23
  * [Packages](#packages)
24
24
  * [Usage](#usage)
@@ -37,7 +37,7 @@ You can easily install the resulting live system with the calamares installer or
37
37
  Thanks to the wardrobe, you can create or use scripts to switch from a "naked" version - with only a CLI interface - and "wear" it with a full GUI or server configurations. See [penguins-wardrobe](https://github.com/pieroproietti/penguins-wardrobe), fork it and adapt it to yours needs.
38
38
 
39
39
 
40
- # Tecnology
40
+ # Technology
41
41
 
42
42
  The whole thing is written in pure typescript, so ideally it can be used with different Linux distributions. Yes, there are major differences in terms of the package manager used, but not so much on the way the various programs used to build the isos work. Actually eggs support: Debian, Devuan, Ubuntu, Arch and ManjaroLinux.
43
43
 
@@ -52,9 +52,9 @@ The cuckoo lays its eggs in the nests of other birds, and the eggs are hatched b
52
52
 
53
53
  We have two methods to save in the live system all our data: clone and backup.
54
54
 
55
- ```eggs produces --fast --clone``` saves our users and our data directly in the generated iso. The data will be visible directly from the live and accessible to anyone who gets a copy.
55
+ ```eggs produce --fast --clone``` saves our users and our data directly in the generated iso. The data will be visible directly from the live and accessible to anyone who gets a copy.
56
56
 
57
- ```eggs produces --fast --backup``` saves our data within the generated iso using a LUKS volume. Our data will NOT be visible in the live system but can be reinstalled automatically with krill installer. Even having the generated image available, our data will be protected by the LUKS passphrase.
57
+ ```eggs produce --fast --backup``` saves our data within the generated iso using a LUKS volume. Our data will NOT be visible in the live system but can be reinstalled automatically with krill installer. Even having the generated image available, our data will be protected by the LUKS passphrase.
58
58
 
59
59
  * ```eggs produce``` this is the default: all private data are removed on the live.
60
60
  * ```eggs produce --clone``` include all users data UNCRYPTED directly on the live.
@@ -66,7 +66,7 @@ Using ```sudo eggs install --cli``` will automaticaly restore your CRYPTED backu
66
66
  yolk - so called staying on the subject of eggs - is a local repository included in the livecd that contains a minimum of indispensable packages during installation. Thanks to yolk, you can safely install your system without the need of an active internet connection. Yolk, It is used only for Debian families and derivated.
67
67
 
68
68
  ## GUI calamares or TUI krill installer
69
- eggs include a TUI 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. It's possible with krill to do unattended installations, simply add ```--unattended``` flag and the values in ```/etc/penguins-eggs.d/krill.yaml``` will be used for installation.
69
+ eggs include a TUI 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](https://calamares.io/). This lead to have "about the same" experience installing, from old distros to new ones and for GUI and CLI. It's possible with krill to do unattended installations, simply add ```--unattended``` flag and the values in ```/etc/penguins-eggs.d/krill.yaml``` will be used for installation.
70
70
 
71
71
  ## helper: mom and dad
72
72
  I've added two lightweight assistants integrated with eggs: mom and dad. While mom is a bash script with whiptail - and guides the user to the various commands and documentation, dad started as a short way to create isos. All you have to do is type **sudo eggs dad** and follow simple instructions. You can also shortcut the way to reset the configuration **sudo dad -c** or - even faster - reset the configuration, load defaults, kill created isos: simply type **sudo eggs dad -d** and you will immediately be able to produce the egg in the default /home/eggs nest.
@@ -97,10 +97,18 @@ eggs have it's repository ppa, You can use it, copy and paste in a terminal wind
97
97
 
98
98
  ```
99
99
  curl -SsL https://pieroproietti.github.io/penguins-eggs-ppa/KEY.gpg | gpg --dearmor | sudo tee /usr/share/keyrings/penguins-eggs-ppa-keyring.gpg
100
+
100
101
  sudo curl -s --compressed -o /etc/apt/sources.list.d/penguins-eggs-ppa.list "https://pieroproietti.github.io/penguins-eggs-ppa/penguins-eggs-ppa.list"
101
102
  ```
102
103
 
103
- Update your repositories: **sudo apt update** and install eggs: **sudo apt install eggs**.
104
+ Update your repositories and install eggs:
105
+
106
+ ```
107
+ sudo apt update
108
+
109
+ sudo apt install eggs
110
+ ```
111
+
104
112
 
105
113
  #### Download the package and install with dpkg
106
114
 
@@ -128,7 +136,7 @@ The same for manjaroLinux: ```git clone https://github.com/pieroproietti/penguin
128
136
 
129
137
  # Usage
130
138
 
131
- Once the package has been installed, you can have the new ```eggs``` command. Typing ```eggs``` will get the list of commands, typing ```eggs produces --help``` will get the eggs produce command help screen. You can also use the command autocomplete with the TABS key, you will get the possible choices for each command. In addition, there is a man page, so by typing ```man eggs``` you will get that help as well. A more guided approach can be made usind ```eggs mom```, will present a menu with various commands.
139
+ Once the package has been installed, you can have the new ```eggs``` command. Typing ```eggs``` will get the list of commands, typing ```eggs produce --help``` will get the eggs produce command help screen. You can also use the command autocomplete with the TABS key, you will get the possible choices for each command. In addition, there is a man page, so by typing ```man eggs``` you will get that help as well. A more guided approach can be made usind ```eggs mom```, will present a menu with various commands.
132
140
 
133
141
  ## Examples
134
142
 
@@ -198,7 +206,7 @@ DESCRIPTION
198
206
  adapt monitor resolution for VM only
199
207
  ```
200
208
 
201
- _See code: [dist/commands/adapt.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.1/dist/commands/adapt.js)_
209
+ _See code: [dist/commands/adapt.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.2/dist/commands/adapt.js)_
202
210
 
203
211
  ## `eggs analyze`
204
212
 
@@ -219,7 +227,7 @@ EXAMPLES
219
227
  $ sudo eggs analyze
220
228
  ```
221
229
 
222
- _See code: [dist/commands/analyze.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.1/dist/commands/analyze.js)_
230
+ _See code: [dist/commands/analyze.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.2/dist/commands/analyze.js)_
223
231
 
224
232
  ## `eggs autocomplete [SHELL]`
225
233
 
@@ -277,7 +285,7 @@ EXAMPLES
277
285
  install calamares and create it's configuration's files
278
286
  ```
279
287
 
280
- _See code: [dist/commands/calamares.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.1/dist/commands/calamares.js)_
288
+ _See code: [dist/commands/calamares.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.2/dist/commands/calamares.js)_
281
289
 
282
290
  ## `eggs config`
283
291
 
@@ -301,7 +309,7 @@ EXAMPLES
301
309
  Configure and install prerequisites deb packages to run it
302
310
  ```
303
311
 
304
- _See code: [dist/commands/config.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.1/dist/commands/config.js)_
312
+ _See code: [dist/commands/config.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.2/dist/commands/config.js)_
305
313
 
306
314
  ## `eggs cuckoo`
307
315
 
@@ -322,7 +330,7 @@ EXAMPLES
322
330
  start a PXE server with dhcp-proxy (can coexists with a real dhcp server)
323
331
  ```
324
332
 
325
- _See code: [dist/commands/cuckoo.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.1/dist/commands/cuckoo.js)_
333
+ _See code: [dist/commands/cuckoo.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.2/dist/commands/cuckoo.js)_
326
334
 
327
335
  ## `eggs dad`
328
336
 
@@ -342,7 +350,7 @@ DESCRIPTION
342
350
  ask help from daddy - configuration helper
343
351
  ```
344
352
 
345
- _See code: [dist/commands/dad.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.1/dist/commands/dad.js)_
353
+ _See code: [dist/commands/dad.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.2/dist/commands/dad.js)_
346
354
 
347
355
  ## `eggs export deb`
348
356
 
@@ -446,7 +454,7 @@ EXAMPLES
446
454
  Install the system using krill installer
447
455
  ```
448
456
 
449
- _See code: [dist/commands/install.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.1/dist/commands/install.js)_
457
+ _See code: [dist/commands/install.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.2/dist/commands/install.js)_
450
458
 
451
459
  ## `eggs kill`
452
460
 
@@ -468,7 +476,7 @@ EXAMPLES
468
476
  kill the eggs/free the nest
469
477
  ```
470
478
 
471
- _See code: [dist/commands/kill.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.1/dist/commands/kill.js)_
479
+ _See code: [dist/commands/kill.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.2/dist/commands/kill.js)_
472
480
 
473
481
  ## `eggs mom`
474
482
 
@@ -485,7 +493,7 @@ DESCRIPTION
485
493
  ask for mommy - gui helper
486
494
  ```
487
495
 
488
- _See code: [dist/commands/mom.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.1/dist/commands/mom.js)_
496
+ _See code: [dist/commands/mom.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.2/dist/commands/mom.js)_
489
497
 
490
498
  ## `eggs produce`
491
499
 
@@ -547,7 +555,7 @@ EXAMPLES
547
555
  in /home/eggs/ovarium and you can customize all you need
548
556
  ```
549
557
 
550
- _See code: [dist/commands/produce.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.1/dist/commands/produce.js)_
558
+ _See code: [dist/commands/produce.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.2/dist/commands/produce.js)_
551
559
 
552
560
  ## `eggs status`
553
561
 
@@ -565,7 +573,7 @@ DESCRIPTION
565
573
  informations about eggs status
566
574
  ```
567
575
 
568
- _See code: [dist/commands/status.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.1/dist/commands/status.js)_
576
+ _See code: [dist/commands/status.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.2/dist/commands/status.js)_
569
577
 
570
578
  ## `eggs syncfrom`
571
579
 
@@ -589,7 +597,7 @@ EXAMPLES
589
597
  $ sudo eggs restore
590
598
  ```
591
599
 
592
- _See code: [dist/commands/syncfrom.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.1/dist/commands/syncfrom.js)_
600
+ _See code: [dist/commands/syncfrom.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.2/dist/commands/syncfrom.js)_
593
601
 
594
602
  ## `eggs syncto`
595
603
 
@@ -612,7 +620,7 @@ EXAMPLES
612
620
  $ sudo eggs syncto
613
621
  ```
614
622
 
615
- _See code: [dist/commands/syncto.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.1/dist/commands/syncto.js)_
623
+ _See code: [dist/commands/syncto.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.2/dist/commands/syncto.js)_
616
624
 
617
625
  ## `eggs tools clean`
618
626
 
@@ -725,7 +733,7 @@ EXAMPLES
725
733
  update/upgrade the penguin's eggs tool
726
734
  ```
727
735
 
728
- _See code: [dist/commands/update.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.1/dist/commands/update.js)_
736
+ _See code: [dist/commands/update.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.2/dist/commands/update.js)_
729
737
 
730
738
  ## `eggs version`
731
739
 
@@ -13,7 +13,7 @@ It take all configuration of Debian buster
13
13
  * /calamares/calamares-modules/grubcfg original
14
14
  * /calamares/calamares-modules/remove-link from buster
15
15
  * /calamares/calamares-modules/sources-yolk from buster
16
- * /calamares/calamares-modules/sources-yolk-unmount from buster
16
+ * /calamares/calamares-modules/sources-yolk-undo from buster
17
17
 
18
18
  * /calamares/modules/bootloader.yml original
19
19
  * /calamares/modules/displaymanager.yml from focal
@@ -39,7 +39,7 @@ sequence:
39
39
  - add386arch
40
40
  - packages
41
41
  - removeuser
42
- - sources-yolk-unmount
42
+ - sources-yolk-undo
43
43
  - cleanup
44
44
  - umount
45
45
  - show:
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  type: "job"
3
- name: "disable-dpkg-sync"
3
+ name: "dpkg-unsafe-io"
4
4
  interface: "process"
5
5
  command: "/usr/sbin/dpkg-unsafe-io.sh"
6
6
  timeout: 600
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  type: "job"
3
- name: "re-enable-dpkg-sync"
3
+ name: "dpkg-unsafe-io-undo"
4
4
  interface: "process"
5
5
  command: "/usr/sbin/dpkg-unsafe-io.sh -u"
6
6
  timeout: 600
@@ -1,105 +1,82 @@
1
- #!/bin/bash
1
+ #!/bin/sh
2
2
 
3
3
  #
4
- # sources-yolk
5
- # utilizza solo la repository yolk durante l'installazione.
6
- #
7
- # sources-yolk -u
8
- # rimuove yolk e reimposta le apt-list originali
9
-
4
+ # We use just yolk during installation
5
+ #
6
+ # sources-yolk.sh
7
+ # add yolk, rimuove LIST, LIST.d ed esegue apt non autenticato
8
+ #
9
+ # sources-yolk.sh -u
10
+ # remove yolk, restore LIST, LIST.d ed esegue apt non autenticato
10
11
 
11
- ##############################
12
- # function main {
13
- ##############################
14
- function main {
15
- # if u = unmount restore_apt
12
+ #
13
+ #
14
+ #
15
+ main() {
16
16
  if [ "$1" = "-u" ]; then
17
- clean_apt
18
- restore_apt
17
+ restore
19
18
  else
20
- # backup_apt, yolk
21
- clean_backup
22
- backup_apt
23
-
24
- clean_apt
19
+ backup
25
20
  yolk
26
21
  fi
22
+ sync
23
+ exit 0
27
24
  }
28
25
 
29
-
30
-
31
- ##############################
32
- # function backup_apt
33
- ##############################
34
- function backup_apt {
35
- mkdir "$APT_BACKUP" -p
36
- if [ -f "$APT_ROOT/sources.list" ]; then
37
- mv "$APT_ROOT/sources.list" "$APT_BACKUP"
38
- fi
39
- if [ -d "$APT_ROOT/sources.list.d" ]; then
40
- mv "$APT_ROOT/sources.list.d/" "$APT_BACKUP"
26
+ #
27
+ #
28
+ #
29
+ backup() {
30
+ if [ -f "$BACKUP" ]; then
31
+ rm -f "$BACKUP"
41
32
  fi
42
- }
43
33
 
34
+ if [ -d "$BACKUP_D" ]; then
35
+ rm -rf "$BACKUP_D"
36
+ fi
44
37
 
38
+ mv "$LIST" "$BACKUP"
45
39
 
46
- ##############################
47
- # function restore_apt
48
- ##############################
49
- function restore_apt {
50
- mv "$APT_BACKUP/sources.list" "$APT_ROOT"
51
- mv "$APT_BACKUP/sources.list.d/" "$APT_ROOT"
40
+ mv "$LIST_D" "$BACKUP_D"
52
41
  }
53
42
 
54
-
55
-
56
- ##############################
57
- # function: clean_apt
58
- ##############################
59
- function clean_apt {
60
- if [ -f "$APT_ROOT/sources.list" ]; then
61
- rm "$APT_ROOT/sources.list"
62
- fi
63
- if [ -d "$APT_ROOT/sources.list.d" ]; then
64
- rm "$APT_ROOT/sources.list.d" -rf
43
+ #
44
+ #
45
+ #
46
+ restore() {
47
+ if [ -f "$LIST" ]; then
48
+ rm -f "$LIST"
65
49
  fi
66
- }
67
50
 
68
-
69
- ##############################
70
- # function: clean_backup
71
- ##############################
72
- function clean_backup {
73
- if [ -d "$APT_BACKUP" ]; then
74
- rm "$APT_BACKUP" -rf
51
+ if [ -d "$LIST_D" ]; then
52
+ rm -rf "$LIST_D"
75
53
  fi
76
- }
77
54
 
55
+ mv "$BACKUP" "$LIST"
78
56
 
57
+ mv "$BACKUP_D" "$LIST_D"
58
+ }
79
59
 
80
- ##############################
81
- # function yolk {
82
- ##############################
83
- function yolk {
84
-
85
- mkdir "$APT_ROOT/sources.list.d"
86
-
87
- cat << EOF > "$CHROOT/etc/apt/sources.list.d/yolk.list"
88
- deb [trusted=yes] file:///var/local/yolk /
89
- EOF
90
-
91
- # apt-get update
92
- chroot "${CHROOT}" apt-get --allow-unauthenticated update -y
60
+ #
61
+ #
62
+ #
63
+ yolk() {
64
+ mkdir -p "$LIST_D"
65
+ echo "deb [trusted=yes] file:/var/local/yolk ./" > "$LIST_D/yolk.list"
66
+ touch "$LIST"
67
+ chroot "$CHROOT" apt-get update
93
68
  }
94
69
 
70
+ #
71
+ # WE START HERE
72
+ #
73
+ CHROOT=$(mount | grep proc | grep calamares | awk '{print $3}' | sed -e "s#/proc##g")
95
74
 
75
+ LIST="$CHROOT/etc/apt/sources.list"
76
+ BACKUP="$LIST.backup"
77
+
78
+ LIST_D="$LIST.d"
79
+ BACKUP_D="$LIST_D.backup"
96
80
 
97
- ##############################
98
- # PROCESS START HERE!!!
99
- # CHROOT=$(mount | grep proc | grep calamares | awk '{print $3}' | sed -e "s#/proc##g")
100
- ##############################
101
- CHROOT=$(mount | grep proc | grep calamares | awk '{print $3}' | sed -e "s#/proc##g")
102
- APT_ROOT="${CHROOT}/etc/apt"
103
- APT_BACKUP="/tmp/calamares-krill-temp"
104
81
  main "$1"
105
- exit 0
82
+
@@ -1,8 +1,8 @@
1
1
  # Debian Buster
2
- # sources-yolk-unmount
2
+ # sources-yolk-undo
3
3
  ---
4
4
  type: "job"
5
- name: "sources-yolk-unmount"
5
+ name: "sources-yolk-undo"
6
6
  interface: "process"
7
7
  command: "/usr/sbin/sources-yolk.sh -u"
8
8
  timeout: 600
@@ -1,8 +1,6 @@
1
- # Debian/Bookworm
1
+ # Debian/Buster et others
2
2
  # packages
3
3
  ---
4
4
  backend: apt
5
5
 
6
- operations:
7
- {{remove}}
8
- {{try_install}}
6
+ {{operations}}
@@ -65,7 +65,7 @@ sequence:
65
65
  - partition
66
66
  - mount
67
67
  - unpackfs
68
- # dpkg-unsafe-io
68
+ - dpkg-unsafe-io
69
69
  - sources-yolk
70
70
  {{hasSystemd}}machineid
71
71
  - fstab
@@ -85,9 +85,9 @@ sequence:
85
85
  - plymouthcfg
86
86
  - initramfscfg
87
87
  - initramfs
88
- # dpkg-unsafe-io-undo
88
+ - dpkg-unsafe-io-undo
89
89
  - removeuser
90
- - sources-yolk-unmount
90
+ - sources-yolk-undo
91
91
  - cleanup
92
92
  - umount
93
93
 
@@ -59,7 +59,7 @@ sequence:
59
59
  - removeuser
60
60
  # - shellprocess@logs
61
61
  - cleanup
62
- - sources-yolk-unmount
62
+ - sources-yolk-undo
63
63
  - umount
64
64
  - show:
65
65
  - finished
@@ -1,8 +1,8 @@
1
1
  # Debian Buster
2
- # sources-yolk-unmount
2
+ # sources-yolk-undo
3
3
  ---
4
4
  type: "job"
5
- name: "sources-yolk-unmount"
5
+ name: "sources-yolk-undo"
6
6
  interface: "process"
7
7
  command: "/usr/sbin/sources-yolk.sh -u"
8
8
  timeout: 600
@@ -87,7 +87,7 @@ sequence:
87
87
  - initramfs
88
88
  # dpkg-unsafe-io-undo
89
89
  - removeuser
90
- - sources-yolk-unmount
90
+ - sources-yolk-undo
91
91
  - cleanup
92
92
  - umount
93
93
 
@@ -59,7 +59,7 @@ class Bionic {
59
59
  await fisherman.buildCalamaresModule('add386arch', false);
60
60
  await fisherman.modulePackages(this.distro, this.release); //
61
61
  await fisherman.moduleRemoveuser(this.user_opt); //
62
- await fisherman.buildCalamaresModule('sources-yolk-unmount', false);
62
+ await fisherman.buildCalamaresModule('sources-yolk-undo', false);
63
63
  await fisherman.buildCalamaresModule('cleanup', true);
64
64
  await fisherman.buildModule('umount');
65
65
  await fisherman.buildModule('finished');
@@ -61,9 +61,9 @@ class Buster {
61
61
  await fisherman.buildModule('plymouthcfg');
62
62
  await fisherman.buildModule('initramfscfg');
63
63
  await fisherman.buildModule('initramfs');
64
- await fisherman.moduleRemoveuser(this.user_opt);
65
64
  await fisherman.buildCalamaresModule('dpkg-unsafe-io-undo', false);
66
- await fisherman.buildCalamaresModule('sources-yolk-unmount', false);
65
+ await fisherman.moduleRemoveuser(this.user_opt);
66
+ await fisherman.buildCalamaresModule('sources-yolk-undo', false);
67
67
  await fisherman.buildCalamaresModule('cleanup', true);
68
68
  await fisherman.buildModule('umount');
69
69
  await fisherman.moduleFinished();
@@ -63,7 +63,7 @@ class Focal {
63
63
  await fisherman.modulePackages(this.distro, this.release); //
64
64
  await fisherman.moduleRemoveuser(this.user_opt);
65
65
  await fisherman.buildCalamaresModule('sources-yolk', false);
66
- await fisherman.buildCalamaresModule('sources-yolk-unmount', false);
66
+ await fisherman.buildCalamaresModule('sources-yolk-undo', false);
67
67
  await fisherman.buildCalamaresModule('cleanup', true);
68
68
  await fisherman.buildModule('umount');
69
69
  await fisherman.buildModule('finished');
@@ -41,7 +41,7 @@ class Jessie {
41
41
  await fisherman.buildModule('partition', this.remix.branding);
42
42
  await fisherman.buildCalamaresModule('sources-yolk', true);
43
43
  await fisherman.moduleRemoveuser(this.user_opt);
44
- await fisherman.buildCalamaresModule('sources-yolk-unmount', false);
44
+ await fisherman.buildCalamaresModule('sources-yolk-undo', false);
45
45
  }
46
46
  }
47
47
  exports.Jessie = Jessie;
@@ -2,70 +2,63 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.tryInstall = exports.remove = void 0;
4
4
  const tslib_1 = require("tslib");
5
- /**
6
- *
7
- */
8
5
  const pacman_1 = tslib_1.__importDefault(require("../../pacman"));
9
6
  /**
10
- * Work only with:
11
- * - calamares
12
- * - penguins-eggs
13
7
  *
14
- * dependencies actually are removed by package managers
8
+ * @param distro
9
+ * @returns yaml-string
15
10
  */
16
11
  function remove(distro) {
17
- let removePackages = ["calamares"];
12
+ let packages = ["calamares"];
18
13
  if (distro.familyId === 'archlinux') {
19
- removePackages.push("penguins-eggs");
14
+ packages.push("penguins-eggs");
20
15
  }
21
16
  if (distro.familyId === 'debian') {
22
- removePackages.push("eggs");
17
+ packages.push("eggs");
18
+ }
19
+ let yaml = '';
20
+ for (const elem of packages) {
21
+ yaml += ` - ${elem.trim()}\n`;
23
22
  }
24
- let text = ' - remove:\n';
25
- for (const elem of removePackages) {
26
- text += ` - ${elem.trim()}\n`;
23
+ if (yaml !== '') {
24
+ yaml = '- remove:\n' + yaml;
27
25
  }
28
- return text;
26
+ return yaml;
29
27
  }
30
28
  exports.remove = remove;
31
29
  /**
32
30
  *
33
31
  * @param distro
34
- - try_install:
35
- - language-pack-$LOCALE
36
- - hunspell-$LOCALE
37
- - libreoffice-help-$LOCALE
38
-
32
+ * @returns yaml-string
39
33
  */
40
34
  function tryInstall(distro) {
41
- let packages = '';
35
+ let yaml = '';
42
36
  /**
43
37
  * Depending on the distro
44
38
  */
45
39
  if (distro.distroLike === 'Ubuntu') {
46
- packages += ' - language-pack-$LOCALE\n';
40
+ yaml += ' - language-pack-$LOCALE\n';
47
41
  }
48
42
  // Da localizzare se presenti
49
43
  if (pacman_1.default.packageIsInstalled('hunspell')) {
50
- packages += ' - hunspell-$LOCALE\n';
44
+ yaml += ' - hunspell-$LOCALE\n';
51
45
  }
52
46
  if (pacman_1.default.packageIsInstalled('libreoffice-base-core')) {
53
- packages += ` - libreoffice-l10n-$LOCALE\n`;
54
- packages += ` - libreoffice-help-$LOCALE\n`;
47
+ yaml += ` - libreoffice-l10n-$LOCALE\n`;
48
+ yaml += ` - libreoffice-help-$LOCALE\n`;
55
49
  }
56
50
  if (pacman_1.default.packageIsInstalled('firefox-esr')) {
57
- packages += ` - firefox-esr-$LOCALE\n`;
51
+ yaml += ` - firefox-esr-$LOCALE\n`;
58
52
  }
59
53
  if (pacman_1.default.packageIsInstalled('firefox')) {
60
- packages += ` - firefox-$LOCALE\n`;
54
+ yaml += ` - firefox-$LOCALE\n`;
61
55
  }
62
56
  if (pacman_1.default.packageIsInstalled('thunderbird')) {
63
- packages += ` - thunderbird-locale-$LOCALE\n`;
57
+ yaml += ` - thunderbird-locale-$LOCALE\n`;
64
58
  }
65
- let retVal = '';
66
- if (packages !== '') {
67
- retVal += ' - try_install:\n' + packages;
59
+ if (yaml !== '') {
60
+ yaml = ' - try_install:\n' + yaml;
68
61
  }
69
- return retVal;
62
+ return yaml;
70
63
  }
71
64
  exports.tryInstall = tryInstall;
@@ -232,13 +232,16 @@ class Fisherman {
232
232
  const removePackages = require('./fisherman-helper/packages').remove;
233
233
  const tryInstall = require('./fisherman-helper/packages').tryInstall;
234
234
  this.buildModule(name);
235
- let toRemove = '';
235
+ let yamlInstall = tryInstall(distro);
236
+ let yamlRemove = '';
236
237
  if (release) {
237
- toRemove = removePackages(distro);
238
+ yamlRemove = removePackages(distro);
238
239
  }
239
- let toInstall = tryInstall(distro);
240
- shelljs_1.default.sed('-i', '{{remove}}', toRemove, this.installer.modules + name + '.conf');
241
- shelljs_1.default.sed('-i', '{{try_install}}', toInstall, this.installer.modules + name + '.conf');
240
+ let operations = '';
241
+ if (yamlRemove !== '' || yamlInstall !== '') {
242
+ operations = "operations:\n" + yamlRemove + yamlInstall;
243
+ }
244
+ shelljs_1.default.sed('-i', '{{operations}}', operations, this.installer.modules + name + '.conf');
242
245
  }
243
246
  /**
244
247
  * Al momento rimane con la vecchia configurazione
@@ -537,7 +537,7 @@ class Pacman {
537
537
  // Poi da buster
538
538
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/calamares-modules/cleanup ${dest}/calamares/calamares-modules/cleanup`, echo);
539
539
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/calamares-modules/sources-yolk ${dest}/calamares/calamares-modules/sources-yolk`, echo);
540
- await (0, utils_2.exec)(`cp -r ${buster}/calamares/calamares-modules/sources-yolk-unmount ${dest}/calamares/calamares-modules/sources-yolk-unmount`, echo);
540
+ await (0, utils_2.exec)(`cp -r ${buster}/calamares/calamares-modules/sources-yolk-undo ${dest}/calamares/calamares-modules/sources-yolk-undo`, echo);
541
541
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/modules/packages.yml ${dest}/calamares/modules/packages.yml`, echo);
542
542
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/modules/removeuser.yml ${dest}/calamares/modules/removeuser.yml`, echo);
543
543
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/modules/unpackfs.yml ${dest}/calamares/modules/unpackfs.yml`, echo);
@@ -552,7 +552,7 @@ class Pacman {
552
552
  await (0, utils_2.exec)(`cp -r ${focal} ${dest}`, echo);
553
553
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/calamares-modules/cleanup ${dest}/calamares/calamares-modules/cleanup`, echo);
554
554
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/calamares-modules/sources-yolk ${dest}/calamares/calamares-modules/sources-yolk`, echo);
555
- await (0, utils_2.exec)(`cp -r ${buster}/calamares/calamares-modules/sources-yolk-unmount ${dest}/calamares/calamares-modules/sources-yolk-unmount`, echo);
555
+ await (0, utils_2.exec)(`cp -r ${buster}/calamares/calamares-modules/sources-yolk-undo ${dest}/calamares/calamares-modules/sources-yolk-undo`, echo);
556
556
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/modules/packages.yml ${dest}/calamares/modules/packages.yml`, echo);
557
557
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/modules/removeuser.yml ${dest}/calamares/modules/removeuser.yml`, echo);
558
558
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/modules/unpackfs.yml ${dest}/calamares/modules/unpackfs.yml`, echo);
@@ -567,7 +567,7 @@ class Pacman {
567
567
  await (0, utils_2.exec)(`cp -r ${focal} ${dest}`, echo);
568
568
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/calamares-modules/cleanup ${dest}/calamares/calamares-modules/cleanup`, echo);
569
569
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/calamares-modules/sources-yolk ${dest}/calamares/calamares-modules/sources-yolk`, echo);
570
- await (0, utils_2.exec)(`cp -r ${buster}/calamares/calamares-modules/sources-yolk-unmount ${dest}/calamares/calamares-modules/sources-yolk-unmount`, echo);
570
+ await (0, utils_2.exec)(`cp -r ${buster}/calamares/calamares-modules/sources-yolk-undo ${dest}/calamares/calamares-modules/sources-yolk-undo`, echo);
571
571
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/modules/packages.yml ${dest}/calamares/modules/packages.yml`, echo);
572
572
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/modules/removeuser.yml ${dest}/calamares/modules/removeuser.yml`, echo);
573
573
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/modules/unpackfs.yml ${dest}/calamares/modules/unpackfs.yml`, echo);
@@ -582,7 +582,7 @@ class Pacman {
582
582
  await (0, utils_2.exec)(`cp -r ${focal} ${dest}`, echo);
583
583
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/calamares-modules/cleanup ${dest}/calamares/calamares-modules/cleanup`, echo);
584
584
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/calamares-modules/sources-yolk ${dest}/calamares/calamares-modules/sources-yolk`, echo);
585
- await (0, utils_2.exec)(`cp -r ${buster}/calamares/calamares-modules/sources-yolk-unmount ${dest}/calamares/calamares-modules/sources-yolk-unmount`, echo);
585
+ await (0, utils_2.exec)(`cp -r ${buster}/calamares/calamares-modules/sources-yolk-undo ${dest}/calamares/calamares-modules/sources-yolk-undo`, echo);
586
586
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/modules/packages.yml ${dest}/calamares/modules/packages.yml`, echo);
587
587
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/modules/removeuser.yml ${dest}/calamares/modules/removeuser.yml`, echo);
588
588
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/modules/unpackfs.yml ${dest}/calamares/modules/unpackfs.yml`, echo);
@@ -597,7 +597,7 @@ class Pacman {
597
597
  await (0, utils_2.exec)(`cp -r ${focal} ${dest}`, echo);
598
598
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/calamares-modules/cleanup ${dest}/calamares/calamares-modules/cleanup`, echo);
599
599
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/calamares-modules/sources-yolk ${dest}/calamares/calamares-modules/sources-yolk`, echo);
600
- await (0, utils_2.exec)(`cp -r ${buster}/calamares/calamares-modules/sources-yolk-unmount ${dest}/calamares/calamares-modules/sources-yolk-unmount`, echo);
600
+ await (0, utils_2.exec)(`cp -r ${buster}/calamares/calamares-modules/sources-yolk-undo ${dest}/calamares/calamares-modules/sources-yolk-undo`, echo);
601
601
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/modules/packages.yml ${dest}/calamares/modules/packages.yml`, echo);
602
602
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/modules/removeuser.yml ${dest}/calamares/modules/removeuser.yml`, echo);
603
603
  await (0, utils_2.exec)(`cp -r ${buster}/calamares/modules/unpackfs.yml ${dest}/calamares/modules/unpackfs.yml`, echo);
@@ -168,7 +168,7 @@ class Pxe {
168
168
  content += `TIMEOUT 0\n`;
169
169
  content += `\n`;
170
170
  content += `label egg\n`;
171
- content += `menu label ${this.bootLabel}\n`;
171
+ content += `menu label ${this.bootLabel.replace('.iso', '')}\n`;
172
172
  let clid = this.settings.distro.codenameLikeId;
173
173
  if (clid === 'bionic' || clid === 'stretch' || clid === 'jessie') {
174
174
  content += `kernel vmlinuz\n`;
@@ -178,7 +178,7 @@ class Pxe {
178
178
  content += `kernel http://${utils_1.default.address()}/vmlinuz\n`;
179
179
  content += `append initrd=http://${utils_1.default.address()}/initrd boot=live config noswap noprompt fetch=http://${utils_1.default.address()}/live/filesystem.squashfs\n`;
180
180
  }
181
- content += `SYSAPPEND 3\n`;
181
+ content += `sysappend 3\n`;
182
182
  content += `\n`;
183
183
  if (this.isos.length > 0) {
184
184
  content += `menu separator\n`;
@@ -188,7 +188,7 @@ class Pxe {
188
188
  content += `menu label ${iso}\n`;
189
189
  content += `kernel http://${utils_1.default.address()}/memdisk\n`;
190
190
  content += `initrd http://${utils_1.default.address()}/${iso}\n`;
191
- content += `append iso raw\n`;
191
+ content += `append iso raw sysappend 3\n`;
192
192
  }
193
193
  }
194
194
  let file = `${this.pxeRoot}/pxelinux.cfg/default`;
@@ -225,6 +225,16 @@ class Sequence {
225
225
  catch (error) {
226
226
  await utils_1.default.pressKeyToExit(JSON.stringify(error));
227
227
  }
228
+ // dpkg-unsafe-io
229
+ message = "dpkg-unsafe-io";
230
+ percent = 0.11;
231
+ try {
232
+ await redraw(react_1.default.createElement(install_1.default, { message: message, percent: percent }));
233
+ await this.execCalamaresModule('dpkg-unsafe-io');
234
+ }
235
+ catch (error) {
236
+ await utils_1.default.pressKeyToExit(JSON.stringify(error));
237
+ }
228
238
  /**
229
239
  * IF RESTORE USERS DATA
230
240
  */
@@ -340,6 +350,16 @@ class Sequence {
340
350
  catch (error) {
341
351
  await utils_1.default.pressKeyToExit(JSON.stringify(error));
342
352
  }
353
+ // dpkg-unsafe-io
354
+ message = "dpkg-unsafe-io-undo";
355
+ percent = 0.61;
356
+ try {
357
+ await redraw(react_1.default.createElement(install_1.default, { message: message, percent: percent }));
358
+ await this.execCalamaresModule('dpkg-unsafe-io-undo');
359
+ }
360
+ catch (error) {
361
+ await utils_1.default.pressKeyToExit(JSON.stringify(error));
362
+ }
343
363
  /**
344
364
  * IF NOT RESTORE USERS DATA OR PERSONAL BACKUP
345
365
  */
@@ -403,7 +423,7 @@ class Sequence {
403
423
  // cleanup
404
424
  await cliAutologin.msgRemove(`${this.installTarget}/etc/motd`);
405
425
  await cliAutologin.msgRemove(`${this.installTarget}/etc/issue`);
406
- // bootloader-config [moved to the end]
426
+ // bootloader-config
407
427
  message = "bootloader-config ";
408
428
  percent = 0.70;
409
429
  try {
@@ -413,7 +433,7 @@ class Sequence {
413
433
  catch (error) {
414
434
  await utils_1.default.pressKeyToExit(JSON.stringify(error));
415
435
  }
416
- // grubcfg [moved to the end]
436
+ // grubcfg
417
437
  message = "grubcfg ";
418
438
  percent = 0.75;
419
439
  try {
@@ -423,7 +443,7 @@ class Sequence {
423
443
  catch (error) {
424
444
  await utils_1.default.pressKeyToExit(JSON.stringify(error));
425
445
  }
426
- // bootloader (grub-install) [moved to the end)
446
+ // bootloader (grub-install)
427
447
  message = "bootloader ";
428
448
  percent = 0.80;
429
449
  try {
@@ -433,13 +453,13 @@ class Sequence {
433
453
  catch (error) {
434
454
  await utils_1.default.pressKeyToExit(JSON.stringify(error));
435
455
  }
436
- // sourcesYolkUmount
456
+ // sources-yolk-undo
437
457
  if (this.distro.familyId === 'debian') {
438
- message = "sources yolk unmount";
458
+ message = "sources-yolk-undo";
439
459
  percent = 0.90;
440
460
  try {
441
461
  await redraw(react_1.default.createElement(install_1.default, { message: message, percent: percent }));
442
- await this.execCalamaresModule('sources-yolk-unmount');
462
+ await this.execCalamaresModule('sources-yolk-undo');
443
463
  }
444
464
  catch (error) {
445
465
  await utils_1.default.pressKeyToExit(JSON.stringify(error));
@@ -11,6 +11,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
11
11
  const tslib_1 = require("tslib");
12
12
  const utils_1 = require("../../lib/utils");
13
13
  const utils_2 = tslib_1.__importDefault(require("../../classes/utils"));
14
+ const pacman_1 = tslib_1.__importDefault(require("../../classes/pacman"));
14
15
  const fs_1 = tslib_1.__importDefault(require("fs"));
15
16
  const js_yaml_1 = tslib_1.__importDefault(require("js-yaml"));
16
17
  /**
@@ -19,45 +20,50 @@ const js_yaml_1 = tslib_1.__importDefault(require("js-yaml"));
19
20
  */
20
21
  async function packages() {
21
22
  let echoYes = utils_2.default.setEcho(true);
22
- const config_file = `${this.installTarget}/etc/calamares/modules/packages.conf`;
23
+ let modulePath = '/etc/penguins-eggs.d/krill/';
24
+ if (pacman_1.default.packageIsInstalled('calamares')) {
25
+ modulePath = '/etc/calamares/';
26
+ }
27
+ const config_file = `${this.installTarget}${modulePath}modules/packages.conf`;
23
28
  if (fs_1.default.existsSync(config_file)) {
24
29
  const packages = js_yaml_1.default.load(fs_1.default.readFileSync(config_file, 'utf-8'));
25
- /**
26
- * we can do better, but work
27
- */
28
- let operations = JSON.parse(JSON.stringify(packages.operations));
29
- let packagesToRemove = [];
30
- let packagesTryInstall = [];
31
- if (operations.length > 1) {
32
- packagesToRemove = operations[0].remove;
33
- packagesTryInstall = operations[1].try_install;
34
- }
35
- else {
36
- packagesTryInstall = operations[0].try_install;
37
- }
38
- if (packages.backend === 'apt') {
39
- if (packagesToRemove.length > 0) {
40
- let ctr = `chroot ${this.installTarget} apt-get purge -y `;
41
- for (const packageToRemove of packagesToRemove) {
42
- ctr += packageToRemove + ' ';
30
+ if (packages.operations !== undefined) {
31
+ if (packages.backend === 'apt') {
32
+ /**
33
+ * apt: Debian/Devuan/Ubuntu
34
+ */
35
+ if (packages.operations.remove !== undefined) {
36
+ let cmd = `chroot ${this.installTarget} apt-get purge -y `;
37
+ for (const elem of packages.operations.remove) {
38
+ cmd += elem + ' ';
39
+ }
40
+ await (0, utils_1.exec)(`${cmd} ${this.toNull}`, this.echo);
43
41
  }
44
- await (0, utils_1.exec)(`${ctr} ${this.toNull}`, this.echo);
45
- await (0, utils_1.exec)(`chroot ${this.installTarget} apt-get autoremove -y ${this.toNull}`, this.echo);
46
- }
47
- for (const packageToInstall of packagesTryInstall) {
48
- await (0, utils_1.exec)(`chroot ${this.installTarget} apt-get purge -y ${packageToInstall} ${this.toNull}`, this.echo);
49
- }
50
- }
51
- else if (packages.backend === 'pacman') {
52
- if (packagesToRemove.length > 0) {
53
- let ctr = `chroot ${this.installTarget} pacman -S `;
54
- for (const packageToRemove of packagesToRemove) {
55
- ctr += packageToRemove + ' ';
42
+ if (packages.operations.try_install !== undefined) {
43
+ let cmd = `chroot ${this.installTarget} apt-get install -y `;
44
+ for (const elem of packages.operations.try_install) {
45
+ cmd += elem + ' ';
46
+ }
47
+ await (0, utils_1.exec)(`chroot ${this.installTarget} apt-get update ${this.toNull}`, this.echo);
48
+ await (0, utils_1.exec)(`${cmd} ${this.toNull}`, this.echo);
56
49
  }
57
- await (0, utils_1.exec)(`${ctr} ${echoYes}`, this.echo);
58
50
  }
59
- for (const packageToInstall of packagesTryInstall) {
60
- await (0, utils_1.exec)(`chroot ${this.installTarget} pacman -S ${packageToInstall}`, echoYes);
51
+ else if (packages.backend === 'pacman') {
52
+ /**
53
+ * pacman: arch/manjaro
54
+ */
55
+ if (packages.operations.remove !== undefined) {
56
+ let cmd = `chroot ${this.installTarget} pacman -R\n`;
57
+ for (const elem of packages.operations.remove) {
58
+ cmd += elem + ' ';
59
+ }
60
+ await (0, utils_1.exec)(`${cmd} ${echoYes}`, this.echo);
61
+ }
62
+ if (packages.operations.try_install !== undefined) {
63
+ for (const elem of packages.operations.try_install) {
64
+ await (0, utils_1.exec)(`chroot ${this.installTarget} pacman -S ${elem}`, echoYes);
65
+ }
66
+ }
61
67
  }
62
68
  }
63
69
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "penguins-eggs",
3
3
  "description": "Perri's Brewery edition: remaster your system and distribuite it",
4
- "version": "9.3.1",
4
+ "version": "9.3.2",
5
5
  "author": "Piero Proietti @pieroproietti",
6
6
  "bin": {
7
7
  "eggs": "bin/run"
@@ -1,75 +0,0 @@
1
- #!/bin/bash
2
-
3
- #
4
- # Questa versione utilizza SOLO yolk
5
- # durante l'installazione.
6
- # sources-yolk.sh
7
- # aggiunge yolk, rimuove list ed esegue apt non autenticato
8
- # sources-yolk.sh
9
- # -u rimuove yolk e ri-aggiunge le list
10
-
11
- function main {
12
- #####################################################################
13
- # unmount: remove yolk.list
14
- #####################################################################
15
- if [ "$1" = "-u" ]; then
16
- remove_yolk
17
- else
18
- add_yolk
19
- fi
20
- }
21
-
22
-
23
- #####################################################################
24
- function remove_list {
25
- if [ -f "$LIST_BACKUP" ]; then
26
- rm "$LIST_BACKUP"
27
- fi
28
- mv "$LIST $LIST_BACKUP"
29
-
30
- if [ -d "$LIST_D_BACKUP" ]; then
31
- rm "$LIST_D_BACKUP" -rf
32
- fi
33
- mv "$LIST_D $APT_LIST_D_BACKUP"
34
- }
35
-
36
- function add_list {
37
- if [ -f "$LIST" ]; then
38
- rm "$LIST"
39
- fi
40
- mv "$APT_LIST_BACKUP $LIST"
41
-
42
- if [ -d "$LIST_D" ]; then
43
- rm "$LIST_D" -rf
44
- fi
45
- mv "$LIST_D_BACKUP $LIST_D"
46
- }
47
-
48
-
49
- function add_yolk {
50
- remove_list
51
- cat << EOF > $CHROOT/etc/apt/sources.list.d/yolk.list
52
- deb [trusted=yes] file:/var/local/yolk ./
53
- EOF
54
- chroot $CHROOT apt-get --allow-unauthenticated update -y
55
- }
56
-
57
- function remove_yolk {
58
- add_list
59
- rm $CHROOT/etc/apt/sources.list.d/yolk.list
60
- chroot $CHROOT apt-get update -y
61
- }
62
-
63
-
64
-
65
- # Lo script inizia qui
66
- CHROOT=$(mount | grep proc | grep calamares | awk '{print $3}' | sed -e "s#/proc##g")
67
-
68
- LIST = "$CHROOT/etc/apt/sources.list"
69
- LIST_BACKUP = "$LIST.backup"
70
-
71
- LIST_D = "$CHROOT/etc/apt/sources.list.d"
72
- LIST_D_BACKUP = "$LIST_D.backup"
73
-
74
- main $1
75
- exit 0
@@ -1,39 +0,0 @@
1
- #!/bin/sh
2
-
3
- set -e
4
-
5
- # Sets up a tftp server to netboot x86_64 systems over UEFI.
6
- # Works on Ubuntu 13.10 and later.
7
-
8
- # change to the root of your tftp server
9
- TFTPROOT=/var/lib/tftpboot
10
-
11
- # needed for unpacking the shim-signed source package
12
- apt-get install dpkg-dev
13
-
14
- tmpdir=$(mktemp -d)
15
-
16
- cleanup () {
17
- if [ -n "$tmpdir" ]; then
18
- rm -rf "$tmpdir"
19
- fi
20
- }
21
-
22
- trap cleanup EXIT HUP INT QUIT PIPE TERM
23
-
24
- cd "$tmpdir"
25
- apt-get source shim-signed
26
- cp shim-signed-*/shim.efi.signed "$TFTPROOT"/bootx64.efi
27
-
28
- cd "$TFTPROOT"
29
-
30
- wget -O grubx64.efi http://archive.ubuntu.com/ubuntu/dists/saucy/main/uefi/grub2-amd64/current/grubnetx64.efi.signed
31
-
32
- # Unfortunately the unicode font is assembled by the grub2 package at
33
- # build-time, so we can't grab it from the source; and we have no persistent
34
- # URL for it since that changes with each version number; so try to install
35
- # it (which should be a no-op on x86 anyway) and copy the contents.
36
- apt-get install grub-common
37
- mkdir -p grub/fonts
38
- cp /usr/share/grub/unicode.pf2 grub/fonts
39
-