penguins-eggs 9.3.4 → 9.3.7

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.
@@ -1 +1 @@
1
- {"version":"9.3.4","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},"all":{"name":"all","type":"boolean","char":"a","description":"export all archs","allowNo":false},"clean":{"name":"clean","type":"boolean","char":"c","description":"remove old .deb before to copy","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","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},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","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.7","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},"all":{"name":"all","type":"boolean","char":"a","description":"export all archs","allowNo":false},"clean":{"name":"clean","type":"boolean","char":"c","description":"remove old .deb before to copy","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","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},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","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
@@ -40,20 +40,24 @@ Thanks to the wardrobe, you can create or use scripts to switch from a "naked" v
40
40
 
41
41
  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.
42
42
 
43
- 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/).
43
+ 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/ISOS/).
44
44
 
45
45
  # Features
46
46
 
47
- ## cuckoo (PXE server)
48
- The cuckoo lays its eggs in the nests of other birds, and the eggs are hatched by the latter. Similarly eggs can start a self-configuring PXE service to allow you to boot and install your iso on third party networked computers. Command cuckoo can be used either to deploy a newly created iso on an installed system or by live booting the iso itself.
47
+ ## addons and themes
48
+ Addons are used mostly to let third parties to develop extensions. Note that currently we have an extension for the theme that includes both branding calamares, link and installer icon. In addition, also as an addon has been developed choose between GUI or CLI installation, adapt the video resolution, link to remote support, etc.
49
49
 
50
50
  ## backup/clone
51
51
 
52
52
  We have two methods to save in the live system all our data: clone and backup.
53
53
 
54
- ```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.
54
+ ```eggs produce --fast --clone```
55
+
56
+ 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
57
 
56
- ```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
+ ```eggs produce --fast --backup```
59
+
60
+ 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
61
 
58
62
  * ```eggs produce``` this is the default: all private data are removed on the live.
59
63
  * ```eggs produce --clone``` include all users data UNCRYPTED directly on the live.
@@ -61,25 +65,25 @@ We have two methods to save in the live system all our data: clone and backup.
61
65
 
62
66
  Using ```sudo eggs install --cli``` will automaticaly restore your CRYPTED backup automatically during the installation.
63
67
 
64
- ## yolk
65
- 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.
68
+ ## calamares and krill
69
+ eggs was developed to use the excellent [calamares](https://calamares.io) as a system installer and allows customization. It also includes its own installer called krill, which allows you to produce and install CLI systems such as servers. krill uses a CLI interface that mimics calamares and uses the same configuration files created by eggs for calamares itself. This results in having "about the same" installation experience from old distros to new ones, desktop or server installations. With krill it is also possible to have unattended installations, simply by adding the ``--unattended`` flag, the configuration values can be changed in ``/etc/penguins-eggs.d/krill.yaml`` and they will be used for the configuration.
66
70
 
67
- ## GUI calamares or TUI krill installer
68
- 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.
71
+ ## cuckoo
72
+ The cuckoo lays its eggs in the nests of other birds, and the eggs are hatched by the latter. Similarly eggs can start a self-configuring PXE service to allow you to boot and install your iso on third party networked computers. Command cuckoo can be used either to deploy a newly created iso on an installed system or by live booting the iso itself.
69
73
 
70
74
  ## mom and dad
71
75
  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.
72
76
 
73
-
74
- ## addons and themes
75
- Addons are used mostly to let third parties to develop extensions. Note that currently we have an extension for the theme that includes both branding calamares, link and installer icon. In addition, also as an addon has been developed choose between GUI or CLI installation, adapt the video resolution, link to remote support, etc.
76
-
77
77
  ## wardrobe
78
78
  wardrobe was added to eggs on april 2022, it's is a way to guide and consolidate the process of creating a custom version of Linux, starting from a CLI system. All my personal editions are passed to use wardrobe for their convenience, in that way I can organize, consolidate and manage better my work. I used birds names for my customizations, we have: colibri, duck, eagle, owl, wagtail and warbier.
79
79
 
80
80
  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.
81
81
 
82
- 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/ISOS/debian/bullseye/), [Devuan chimaera](ttps://sourceforge.net/projects/penguins-eggs/files/ISOS/devuan/chimaera/) and [Ubuntu jammy](https://sourceforge.net/projects/penguins-eggs/files/ISOS/ubuntu/jammy/) on my sourgeforce page.
82
+ 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/ISOS/debian/bullseye/), [Devuan chimaera](https://sourceforge.net/projects/penguins-eggs/files/ISOS/devuan/chimaera/) and [Ubuntu jammy](https://sourceforge.net/projects/penguins-eggs/files/ISOS/ubuntu/jammy/) on my sourgeforce page.
83
+
84
+ ## yolk
85
+ 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.
86
+
83
87
 
84
88
  # Packages
85
89
  Supporting various distributions, we need to have different packages. Debian, Devuan and Ubuntu share the .deb packages of eggs, while for Arch Linux and ManjaroLinux they use their PKGBUILD.
@@ -123,12 +127,12 @@ sudo dpkg -i eggs_8.17.17-1_i386.deb
123
127
  If you are using penguins-eggs-ppa You can ugrade eggs as others packages just: **sudo apt upgrade**, else simply download new versions of eggs from [sourgeforge page](https://sourceforge.net/projects/penguins-eggs/files/DEBS/) and install it with the standard command **sudo dpkg -i eggs_.9.2.2-1_amd64.deb**.
124
128
 
125
129
  ## Arch families: Arch and ManjaroLinux
126
- eggs has been present in AUR for a long time, even without my knowledge thanks the support of Arch peoples. I am currently directly maintaining the AUR version of [penguins-eggs](https://aur.archlinux.org/packages/penguins-eggs) for Arch linux, however you can refer to the versions for Arch and manjaroLinux in their respective repositories on github.
130
+ eggs has been present in AUR for a long time, even without my knowledge thanks the support of Arch peoples. I am currently directly maintaining the AUR version of [penguins-eggs](https://aur.archlinux.org/packages/penguins-eggs) for Arch, however you can refer to the versions for Arch and manjaro in their respective repositories on github.
127
131
 
128
132
  To install eggs on Arch, simply ```git clone https://github.com/pieroproietti/penguins-eggs-arch```, ```cd penguins-eggs-arch```, then ```makepkg -si```.
129
133
 
130
134
 
131
- The same for manjaroLinux: ```git clone https://github.com/pieroproietti/penguins-eggs-manjaro```, ```cd penguins-eggs-manjaro```, then ```makepkg -si```.
135
+ The same for manjaro: ```git clone https://github.com/pieroproietti/penguins-eggs-manjaro```, ```cd penguins-eggs-manjaro```, then ```makepkg -si```.
132
136
 
133
137
  # Usage
134
138
 
@@ -201,7 +205,7 @@ DESCRIPTION
201
205
  adapt monitor resolution for VM only
202
206
  ```
203
207
 
204
- _See code: [dist/commands/adapt.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.4/dist/commands/adapt.js)_
208
+ _See code: [dist/commands/adapt.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.7/dist/commands/adapt.js)_
205
209
 
206
210
  ## `eggs analyze`
207
211
 
@@ -222,7 +226,7 @@ EXAMPLES
222
226
  $ sudo eggs analyze
223
227
  ```
224
228
 
225
- _See code: [dist/commands/analyze.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.4/dist/commands/analyze.js)_
229
+ _See code: [dist/commands/analyze.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.7/dist/commands/analyze.js)_
226
230
 
227
231
  ## `eggs autocomplete [SHELL]`
228
232
 
@@ -280,7 +284,7 @@ EXAMPLES
280
284
  install calamares and create it's configuration's files
281
285
  ```
282
286
 
283
- _See code: [dist/commands/calamares.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.4/dist/commands/calamares.js)_
287
+ _See code: [dist/commands/calamares.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.7/dist/commands/calamares.js)_
284
288
 
285
289
  ## `eggs config`
286
290
 
@@ -304,7 +308,7 @@ EXAMPLES
304
308
  Configure and install prerequisites deb packages to run it
305
309
  ```
306
310
 
307
- _See code: [dist/commands/config.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.4/dist/commands/config.js)_
311
+ _See code: [dist/commands/config.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.7/dist/commands/config.js)_
308
312
 
309
313
  ## `eggs cuckoo`
310
314
 
@@ -325,7 +329,7 @@ EXAMPLES
325
329
  start a PXE server with dhcp-proxy (can coexists with a real dhcp server)
326
330
  ```
327
331
 
328
- _See code: [dist/commands/cuckoo.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.4/dist/commands/cuckoo.js)_
332
+ _See code: [dist/commands/cuckoo.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.7/dist/commands/cuckoo.js)_
329
333
 
330
334
  ## `eggs dad`
331
335
 
@@ -345,7 +349,7 @@ DESCRIPTION
345
349
  ask help from daddy - configuration helper
346
350
  ```
347
351
 
348
- _See code: [dist/commands/dad.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.4/dist/commands/dad.js)_
352
+ _See code: [dist/commands/dad.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.7/dist/commands/dad.js)_
349
353
 
350
354
  ## `eggs export deb`
351
355
 
@@ -432,7 +436,7 @@ EXAMPLES
432
436
  Install the system using krill installer
433
437
  ```
434
438
 
435
- _See code: [dist/commands/install.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.4/dist/commands/install.js)_
439
+ _See code: [dist/commands/install.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.7/dist/commands/install.js)_
436
440
 
437
441
  ## `eggs kill`
438
442
 
@@ -454,7 +458,7 @@ EXAMPLES
454
458
  kill the eggs/free the nest
455
459
  ```
456
460
 
457
- _See code: [dist/commands/kill.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.4/dist/commands/kill.js)_
461
+ _See code: [dist/commands/kill.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.7/dist/commands/kill.js)_
458
462
 
459
463
  ## `eggs mom`
460
464
 
@@ -471,7 +475,7 @@ DESCRIPTION
471
475
  ask for mommy - gui helper
472
476
  ```
473
477
 
474
- _See code: [dist/commands/mom.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.4/dist/commands/mom.js)_
478
+ _See code: [dist/commands/mom.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.7/dist/commands/mom.js)_
475
479
 
476
480
  ## `eggs produce`
477
481
 
@@ -533,7 +537,7 @@ EXAMPLES
533
537
  in /home/eggs/ovarium and you can customize all you need
534
538
  ```
535
539
 
536
- _See code: [dist/commands/produce.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.4/dist/commands/produce.js)_
540
+ _See code: [dist/commands/produce.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.7/dist/commands/produce.js)_
537
541
 
538
542
  ## `eggs status`
539
543
 
@@ -551,7 +555,7 @@ DESCRIPTION
551
555
  informations about eggs status
552
556
  ```
553
557
 
554
- _See code: [dist/commands/status.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.4/dist/commands/status.js)_
558
+ _See code: [dist/commands/status.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.7/dist/commands/status.js)_
555
559
 
556
560
  ## `eggs syncfrom`
557
561
 
@@ -575,7 +579,7 @@ EXAMPLES
575
579
  $ sudo eggs restore
576
580
  ```
577
581
 
578
- _See code: [dist/commands/syncfrom.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.4/dist/commands/syncfrom.js)_
582
+ _See code: [dist/commands/syncfrom.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.7/dist/commands/syncfrom.js)_
579
583
 
580
584
  ## `eggs syncto`
581
585
 
@@ -598,7 +602,7 @@ EXAMPLES
598
602
  $ sudo eggs syncto
599
603
  ```
600
604
 
601
- _See code: [dist/commands/syncto.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.4/dist/commands/syncto.js)_
605
+ _See code: [dist/commands/syncto.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.7/dist/commands/syncto.js)_
602
606
 
603
607
  ## `eggs tools clean`
604
608
 
@@ -711,7 +715,7 @@ EXAMPLES
711
715
  update/upgrade the penguin's eggs tool
712
716
  ```
713
717
 
714
- _See code: [dist/commands/update.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.4/dist/commands/update.js)_
718
+ _See code: [dist/commands/update.js](https://github.com/pieroproietti/penguins-eggs/blob/v9.3.7/dist/commands/update.js)_
715
719
 
716
720
  ## `eggs version`
717
721
 
@@ -3,7 +3,4 @@
3
3
  ---
4
4
  backend: pacman
5
5
 
6
- operations:
7
- {{remove}}
8
- {{try_install}}
9
-
6
+ {{operations}}
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.1.2
7
+ remoteHost: 192.168.61.2
8
8
 
9
9
  # path to remote host
10
10
  remotePathDeb: /eggs/
@@ -50,7 +50,7 @@ class Distro {
50
50
  this.pxelinuxPath = '';
51
51
  this.memdiskPath = '';
52
52
  this.liveMediumPath = `/run/live/medium/`;
53
- this.mountpointSquashFs = '';
53
+ this.squashfs = `live/filesystem.squashfs`;
54
54
  this.homeUrl = '';
55
55
  this.supportUrl = '';
56
56
  this.bugReportUrl = '';
@@ -294,23 +294,27 @@ class Distro {
294
294
  }
295
295
  /**
296
296
  * Arch Linux
297
- * distroId= "Arch"
298
297
  */
299
298
  case 'n/a': {
300
299
  this.familyId = 'archlinux';
301
300
  this.distroLike = 'Arch';
302
301
  this.codenameId = 'rolling';
303
302
  this.codenameLikeId = 'rolling';
303
+ this.liveMediumPath = `/run/archiso/copytoram/`;
304
+ this.squashfs = `airootfs.sfs`;
304
305
  break;
305
306
  }
306
307
  /**
307
308
  * Manjaro
308
309
  */
309
310
  case 'Qonos':
310
- case 'Ruah': {
311
+ case 'Ruah':
312
+ case 'Sikaris': {
311
313
  this.familyId = 'archlinux';
312
314
  this.distroLike = 'Arch';
313
315
  this.codenameLikeId = 'rolling';
316
+ this.liveMediumPath = `/run/miso/bootmnt/`;
317
+ this.squashfs = `manjaro/x86_64/livefs.sfs`;
314
318
  break;
315
319
  }
316
320
  /**
@@ -351,21 +355,6 @@ class Distro {
351
355
  this.codenameLikeId = 'buster';
352
356
  }
353
357
  }
354
- /**
355
- * Selezione il mountpoint per squashfs
356
- */
357
- if (this.codenameLikeId === 'jessie' || this.codenameLikeId === 'stretch' || this.codenameLikeId === 'bionic' || this.codenameLikeId === 'xenial') {
358
- this.mountpointSquashFs = '/lib/live/mount/medium/live/filesystem.squashfs';
359
- }
360
- else {
361
- this.mountpointSquashFs = '/run/live/medium/live/filesystem.squashfs';
362
- }
363
- if (this.distroId === "ManjaroLinux") {
364
- this.mountpointSquashFs = "/run/miso/bootmnt/live/filesystem.squashfs";
365
- }
366
- else if (this.distroId === "Arch") {
367
- this.mountpointSquashFs = "/run/archiso/bootmnt/live/filesystem.squashfs";
368
- }
369
358
  /**
370
359
  * setting paths: syslinux, isolinux, usrLib
371
360
  */
@@ -18,7 +18,7 @@ function remove(distro) {
18
18
  }
19
19
  let yaml = '';
20
20
  for (const elem of packages) {
21
- yaml += ` - ${elem.trim()}\n`;
21
+ yaml += ` - ${elem.trim()}\n`;
22
22
  }
23
23
  if (yaml !== '') {
24
24
  yaml = '- remove:\n' + yaml;
@@ -37,27 +37,27 @@ function tryInstall(distro) {
37
37
  * Depending on the distro
38
38
  */
39
39
  if (distro.distroLike === 'Ubuntu') {
40
- yaml += ' - language-pack-$LOCALE\n';
40
+ yaml += ' - language-pack-$LOCALE\n';
41
41
  }
42
42
  // Da localizzare se presenti
43
43
  if (pacman_1.default.packageIsInstalled('hunspell')) {
44
- yaml += ' - hunspell-$LOCALE\n';
44
+ yaml += ' - hunspell-$LOCALE\n';
45
45
  }
46
46
  if (pacman_1.default.packageIsInstalled('libreoffice-base-core')) {
47
- yaml += ` - libreoffice-l10n-$LOCALE\n`;
48
- yaml += ` - libreoffice-help-$LOCALE\n`;
47
+ yaml += ` - libreoffice-l10n-$LOCALE\n`;
48
+ yaml += ` - libreoffice-help-$LOCALE\n`;
49
49
  }
50
50
  if (pacman_1.default.packageIsInstalled('firefox-esr')) {
51
- yaml += ` - firefox-esr-$LOCALE\n`;
51
+ yaml += ` - firefox-esr-$LOCALE\n`;
52
52
  }
53
53
  if (pacman_1.default.packageIsInstalled('firefox')) {
54
- yaml += ` - firefox-$LOCALE\n`;
54
+ yaml += ` - firefox-$LOCALE\n`;
55
55
  }
56
56
  if (pacman_1.default.packageIsInstalled('thunderbird')) {
57
- yaml += ` - thunderbird-locale-$LOCALE\n`;
57
+ yaml += ` - thunderbird-locale-$LOCALE\n`;
58
58
  }
59
59
  if (yaml !== '') {
60
- yaml = ' - try_install:\n' + yaml;
60
+ yaml = '- try_install:\n' + yaml;
61
61
  }
62
62
  return yaml;
63
63
  }
@@ -37,7 +37,7 @@ class Fisherman {
37
37
  */
38
38
  let filePersonal = `/home/eggs/ovarium/iso/live/is-clone.md`;
39
39
  if (utils_1.default.isLive()) {
40
- filePersonal = node_path_1.default.dirname(this.distro.mountpointSquashFs) + `/is-clone.md`;
40
+ filePersonal = node_path_1.default.dirname(this.distro.liveMediumPath) + `/is-clone.md`;
41
41
  }
42
42
  let hasDisplaymanager = '# ';
43
43
  let createUsers = '# ';
@@ -213,7 +213,7 @@ class Fisherman {
213
213
  async moduleUnpackfs() {
214
214
  const name = 'unpackfs';
215
215
  this.buildModule(name);
216
- shelljs_1.default.sed('-i', '{{source}}', this.distro.mountpointSquashFs, this.installer.modules + name + '.conf');
216
+ shelljs_1.default.sed('-i', '{{source}}', this.distro.liveMediumPath + this.distro.squashfs, this.installer.modules + name + '.conf');
217
217
  }
218
218
  /**
219
219
  * usa i moduli-ts
@@ -216,15 +216,15 @@ class Ovary {
216
216
  * patch to emulate miso/archiso on archilinux
217
217
  */
218
218
  if (this.familyId === 'archlinux') {
219
- await (0, utils_1.exec)(`mkdir ${this.settings.work_dir.pathIso}/live/x86_64`, this.echo);
220
219
  if (this.settings.distro.distroId === 'ManjaroLinux') {
221
- 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);
222
- 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);
220
+ await (0, utils_1.exec)(`mkdir ${this.settings.work_dir.pathIso}manjaro/x86_64 -p`, this.echo);
221
+ await (0, utils_1.exec)(`ln ${this.settings.work_dir.pathIso}live/filesystem.squashfs ${this.settings.work_dir.pathIso}manjaro/x86_64/livefs.sfs`, this.echo);
222
+ await (0, utils_1.exec)(`md5sum ${this.settings.work_dir.pathIso}live/filesystem.squashfs > ${this.settings.work_dir.pathIso}manjaro/x86_64/livefs.md5`, this.echo);
223
223
  }
224
224
  else if (this.settings.distro.distroId === 'Arch') {
225
- 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);
226
- await (0, utils_1.exec)(`sha512sum ${this.settings.work_dir.pathIso}/live/filesystem.squashfs > ${this.settings.work_dir.pathIso}/live/x86_64/fs.sha512`, this.echo);
227
- // await exec(`gpg --detach-sign ${this.settings.work_dir.pathIso}/live/filesystem.squashfs ${this.settings.work_dir.pathIso}/live/x86_64/fs.sig`, this.echo)
225
+ await (0, utils_1.exec)(`mkdir ${this.settings.work_dir.pathIso}arch/x86_64 -p`, this.echo);
226
+ await (0, utils_1.exec)(`ln ${this.settings.work_dir.pathIso}live/filesystem.squashfs ${this.settings.work_dir.pathIso}arch/x86_64/airootfs.sfs`, this.echo);
227
+ await (0, utils_1.exec)(`sha512sum ${this.settings.work_dir.pathIso}live/filesystem.squashfs > ${this.settings.work_dir.pathIso}arch/x86_64/airootfs.sha512`, this.echo);
228
228
  }
229
229
  }
230
230
  await this.makeIso(xorrisoCommand, scriptOnly);
@@ -272,9 +272,10 @@ class Ovary {
272
272
  this.tryCatch(cmd);
273
273
  cmd = `mkdir -p ${this.settings.work_dir.pathIso}/efi/boot`;
274
274
  this.tryCatch(cmd);
275
+ let liveBsseDir = 'live';
275
276
  cmd = `mkdir -p ${this.settings.work_dir.pathIso}/isolinux`;
276
277
  this.tryCatch(cmd);
277
- cmd = `mkdir -p ${this.settings.work_dir.pathIso}/live`;
278
+ cmd = `mkdir -p ${this.settings.work_dir.pathIso}live`;
278
279
  this.tryCatch(cmd);
279
280
  }
280
281
  }
@@ -545,10 +546,10 @@ class Ovary {
545
546
  if (this.familyId === 'archlinux') {
546
547
  let volid = utils_2.default.getVolid(this.settings.remix.name);
547
548
  if (this.settings.distro.distroId === 'ManjaroLinux') {
548
- kernel_parameters += ` misobasedir=live misolabel=${volid}`;
549
+ kernel_parameters += ` misobasedir=manjaro misolabel=${volid}`;
549
550
  }
550
551
  else if (this.settings.distro.distroId === 'Arch') {
551
- kernel_parameters += ` archisobasedir=live archisolabel=${volid} cow_spacesize=4G`;
552
+ kernel_parameters += ` archisobasedir=arch archisolabel=${volid} cow_spacesize=4G`;
552
553
  }
553
554
  }
554
555
  const template = fs_1.default.readFileSync(isolinuxTemplate, 'utf8');
@@ -1023,8 +1024,8 @@ class Ovary {
1023
1024
  if (myAddons.adapt) {
1024
1025
  const dirAddon = node_path_1.default.resolve(__dirname, `../../addons/eggs/adapt/`);
1025
1026
  shelljs_1.default.cp(`${dirAddon}/applications/eggs-adapt.desktop`, `${this.settings.work_dir.merged}/usr/share/applications/`);
1026
- shelljs_1.default.cp(`${dirAddon}/bin/adapt`, `${this.settings.work_dir.merged}/usr/local/bin/`);
1027
- shelljs_1.default.chmod('+x', `${this.settings.work_dir.merged}/usr/local/bin/adapt`);
1027
+ shelljs_1.default.cp(`${dirAddon}/bin/adapt`, `${this.settings.work_dir.merged}/usr/bin/`);
1028
+ shelljs_1.default.chmod('+x', `${this.settings.work_dir.merged}/usr/bin/adapt`);
1028
1029
  }
1029
1030
  // ichoice
1030
1031
  if (myAddons.ichoice) {
@@ -1032,8 +1033,8 @@ class Ovary {
1032
1033
  installerIcon = 'system-software-install';
1033
1034
  const dirAddon = node_path_1.default.resolve(__dirname, '../../addons/eggs/ichoice/');
1034
1035
  shelljs_1.default.cp(`${dirAddon}/applications/eggs-ichoice.desktop`, `${this.settings.work_dir.merged}/usr/share/applications/`);
1035
- shelljs_1.default.cp(`${dirAddon}/bin/eggs-ichoice.sh`, `${this.settings.work_dir.merged}/usr/local/bin/`);
1036
- shelljs_1.default.chmod('+x', `${this.settings.work_dir.merged}/usr/local/bin/eggs-ichoice.sh`);
1036
+ shelljs_1.default.cp(`${dirAddon}/bin/eggs-ichoice.sh`, `${this.settings.work_dir.merged}/usr/bin/`);
1037
+ shelljs_1.default.chmod('+x', `${this.settings.work_dir.merged}/usr/bin/eggs-ichoice.sh`);
1037
1038
  }
1038
1039
  // pve
1039
1040
  if (myAddons.pve) {
@@ -1278,8 +1279,8 @@ class Ovary {
1278
1279
  // chown -R 1000:1000 $(pwd) 2>/dev/null
1279
1280
  // Cleanup efi temps
1280
1281
  await (0, utils_1.exec)(`umount ${efiWorkDir}/img-mnt`, this.echo);
1281
- // await exec(`rmdir ${efiWorkDir}/img-mnt`, echo)
1282
- // await exec(`rm ${memdiskDir}/img-mnt -rf`, echo)
1282
+ await (0, utils_1.exec)(`rmdir ${efiWorkDir}/img-mnt`, this.echo);
1283
+ await (0, utils_1.exec)(`rm ${memdiskDir}/img-mnt -rf`, this.echo);
1283
1284
  // popd
1284
1285
  // Copy efi files to iso
1285
1286
  await (0, utils_1.exec)(`rsync -avx ${efiWorkDir}/boot ${isoDir}/`, this.echo);
@@ -1308,25 +1309,20 @@ class Ovary {
1308
1309
  if (this.familyId === 'archlinux') {
1309
1310
  let volid = utils_2.default.getVolid(this.settings.remix.name);
1310
1311
  if (this.settings.distro.distroId === 'ManjaroLinux') {
1311
- kernel_parameters += ` misobasedir=live misolabel=${volid}`;
1312
+ kernel_parameters += ` misobasedir=manjaro misolabel=${volid}`;
1312
1313
  }
1313
1314
  else if (this.settings.distro.distroId === 'Arch') {
1314
- kernel_parameters += ` archisobasedir=live archisolabel=${volid} cow_spacesize=4G`;
1315
+ kernel_parameters += ` archisobasedir=arch archisolabel=${volid} cow_spacesize=4G`;
1315
1316
  }
1316
1317
  }
1317
1318
  const grubDest = `${isoDir}/boot/grub/grub.cfg`;
1318
1319
  const template = fs_1.default.readFileSync(grubTemplate, 'utf8');
1319
- // let rmModules = ''
1320
- // if (this.settings.distro.codenameLikeId === 'focal') {
1321
- // rmModules = 'rmmod tpm'
1322
- // }
1323
1320
  const view = {
1324
1321
  fullname: this.settings.remix.fullname.toUpperCase(),
1325
1322
  kernel: utils_2.default.kernelVersion(),
1326
1323
  vmlinuz: `/live${this.settings.vmlinuz}`,
1327
1324
  initrdImg: `/live${this.settings.initrdImg}`,
1328
1325
  kernel_parameters: kernel_parameters,
1329
- // rmModules: rmModules,
1330
1326
  };
1331
1327
  fs_1.default.writeFileSync(grubDest, mustache_1.default.render(template, view));
1332
1328
  /**
@@ -29,7 +29,7 @@ class Pxe {
29
29
  this.pxeRoot = '';
30
30
  this.eggRoot = '';
31
31
  this.vmlinuz = '';
32
- this.initrd = '';
32
+ this.initrdImg = '';
33
33
  this.isos = [];
34
34
  }
35
35
  /**
@@ -42,6 +42,11 @@ class Pxe {
42
42
  await this.settings.load();
43
43
  if (utils_1.default.isLive()) {
44
44
  this.eggRoot = this.settings.distro.liveMediumPath;
45
+ if (this.settings.distro.distroId === 'Arch') {
46
+ this.eggRoot = '/run/archiso/bootmnt/';
47
+ await (0, utils_2.exec)(`mkdir ${this.eggRoot} -p`);
48
+ await (0, utils_2.exec)(`mount /dev/sr0 ${this.eggRoot}`);
49
+ }
45
50
  }
46
51
  else {
47
52
  this.eggRoot = node_path_1.default.dirname(this.settings.work_dir.path) + '/ovarium/iso/';
@@ -52,9 +57,6 @@ class Pxe {
52
57
  }
53
58
  this.nest = '/home/eggs';
54
59
  this.pxeRoot = this.nest + '/pxe';
55
- // console.log('nest: ' + this.nest)
56
- // console.log('pxeRoot: ' + this.pxeRoot)
57
- // console.log('eggRoot: ' + this.eggRoot)
58
60
  /**
59
61
  * se pxeRoot non esiste viene creato
60
62
  */
@@ -78,7 +80,7 @@ class Pxe {
78
80
  * installed: /home/eggs/ovarium/iso/live
79
81
  * live: this.iso/live
80
82
  */
81
- let pathFiles = this.eggRoot + '/live';
83
+ let pathFiles = this.eggRoot + 'live';
82
84
  let files = fs_1.default.readdirSync(pathFiles);
83
85
  for (const file of files) {
84
86
  if (this.settings.distro.familyId === 'debian') {
@@ -86,28 +88,31 @@ class Pxe {
86
88
  this.vmlinuz = node_path_1.default.basename(file);
87
89
  }
88
90
  if (node_path_1.default.basename(file).substring(0, 6) === 'initrd') {
89
- this.initrd = node_path_1.default.basename(file);
91
+ this.initrdImg = node_path_1.default.basename(file);
90
92
  }
91
93
  }
92
94
  else if (this.settings.distro.familyId === 'archlinux') {
93
95
  if (node_path_1.default.basename(file).substring(0, 7) === 'vmlinuz') {
94
96
  this.vmlinuz = node_path_1.default.basename(file);
95
97
  }
96
- if (node_path_1.default.basename(file) === 'initramfs-linux.img') {
97
- this.initrd = node_path_1.default.basename(file);
98
+ if (node_path_1.default.basename(file).substring(0, 9) === 'initramfs') {
99
+ this.initrdImg = node_path_1.default.basename(file);
98
100
  }
99
101
  }
100
102
  }
101
103
  /**
102
104
  * bootLabel
103
105
  */
104
- const a = fs_1.default.readFileSync(this.eggRoot + '/.disk/mkisofs', "utf-8");
105
- const b = a.substring(a.indexOf('-o ') + 3);
106
- const c = b.substring(0, b.indexOf(' '));
107
- this.bootLabel = c.substring(c.lastIndexOf('/') + 1);
108
- console.log(this.bootLabel);
109
- console.log(this.vmlinuz);
110
- console.log(this.initrd);
106
+ this.bootLabel = 'not found';
107
+ if (fs_1.default.existsSync(this.eggRoot + '/.disk/mkisofs')) {
108
+ const a = fs_1.default.readFileSync(this.eggRoot + '/.disk/mkisofs', "utf-8");
109
+ const b = a.substring(a.indexOf('-o ') + 3);
110
+ const c = b.substring(0, b.indexOf(' '));
111
+ this.bootLabel = c.substring(c.lastIndexOf('/') + 1);
112
+ }
113
+ console.log(`bootLabel: ${this.bootLabel}`);
114
+ console.log(`vmlinuz: ${this.vmlinuz}`);
115
+ console.log(`initrd: ${this.initrdImg}`);
111
116
  }
112
117
  /**
113
118
  * build
@@ -118,12 +123,18 @@ class Pxe {
118
123
  }
119
124
  await this.tryCatch(`mkdir ${this.pxeRoot} -p`);
120
125
  await this.tryCatch(`mkdir ${this.pxeRoot} -p`);
121
- await this.tryCatch(`ln -s ${this.eggRoot}/live ${this.pxeRoot}/live`);
126
+ await this.tryCatch(`ln -s ${this.eggRoot}live ${this.pxeRoot}/live`);
122
127
  await this.tryCatch(`ln -s ${this.nest}.disk ${this.pxeRoot}/.disk`);
128
+ if (this.settings.distro.distroId === 'ManjaroLinux') {
129
+ await this.tryCatch(`ln -s ${this.eggRoot}manjaro ${this.pxeRoot}/manjaro`);
130
+ }
131
+ else if (this.settings.distro.distroId === 'Arch') {
132
+ await this.tryCatch(`ln -s ${this.eggRoot}arch ${this.pxeRoot}/arch`);
133
+ }
123
134
  if (fs_1.default.existsSync(this.eggRoot)) {
124
- await this.tryCatch(`cp ${this.eggRoot}live/${this.vmlinuz} ${this.pxeRoot}/vmlinuz`);
135
+ await this.tryCatch(`cp ${this.eggRoot}live/${this.vmlinuz} ${this.pxeRoot}/vmlinuz`, true);
125
136
  await this.tryCatch(`chmod 777 ${this.pxeRoot}/vmlinuz`);
126
- await this.tryCatch(`cp ${this.eggRoot}live/${this.initrd} ${this.pxeRoot}/initrd`);
137
+ await this.tryCatch(`cp ${this.eggRoot}live/${this.initrdImg} ${this.pxeRoot}/initrd`, true);
127
138
  await this.tryCatch(`chmod 777 ${this.pxeRoot}/initrd`);
128
139
  }
129
140
  // link iso images in pxe
@@ -169,17 +180,33 @@ class Pxe {
169
180
  content += `\n`;
170
181
  content += `label egg\n`;
171
182
  content += `menu label ${this.bootLabel.replace('.iso', '')}\n`;
172
- let clid = this.settings.distro.codenameLikeId;
173
- if (clid === 'bionic' || clid === 'stretch' || clid === 'jessie') {
174
- content += `kernel vmlinuz\n`;
175
- content += `append initrd=initrd boot=live config noswap noprompt fetch=http://${utils_1.default.address()}/live/filesystem.squashfs\n`;
183
+ if (this.settings.distro.familyId === 'debian') {
184
+ /**
185
+ * DEBIAN
186
+ */
187
+ let clid = this.settings.distro.codenameLikeId;
188
+ if (clid === 'bionic' || clid === 'stretch' || clid === 'jessie') {
189
+ content += `kernel vmlinuz\n`;
190
+ content += `append initrd=initrd boot=live config noswap noprompt fetch=http://${utils_1.default.address()}/live/filesystem.squashfs\n`;
191
+ }
192
+ else {
193
+ content += `kernel http://${utils_1.default.address()}/vmlinuz\n`;
194
+ content += `append initrd=http://${utils_1.default.address()}/initrd boot=live config noswap noprompt fetch=http://${utils_1.default.address()}/live/filesystem.squashfs\n`;
195
+ }
176
196
  }
177
- else {
197
+ else if (distro.familyId === 'archlinux') {
198
+ /**
199
+ * ARCH LINUX
200
+ */
201
+ let tool = 'archiso';
202
+ if (distro.codenameId === 'Qonos' || distro.codenameId === 'Ruah' || distro.codenameId === 'Sikaris') {
203
+ tool = 'miso';
204
+ }
178
205
  content += `kernel http://${utils_1.default.address()}/vmlinuz\n`;
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`;
206
+ content += `append initrd=http://${utils_1.default.address()}/initrd boot=live config noswap noprompt ${tool}_http_srv=http://${utils_1.default.address()}/\n`;
207
+ content += `sysappend 3\n`;
208
+ content += `\n`;
180
209
  }
181
- content += `sysappend 3\n`;
182
- content += `\n`;
183
210
  if (this.isos.length > 0) {
184
211
  content += `menu separator\n`;
185
212
  for (const iso of this.isos) {
@@ -231,7 +258,23 @@ class Pxe {
231
258
  * CORRECT:
232
259
  * content += `imgargs vmlinuz fetch=http://${Utils.address()}/live/filesystem.squashfs boot=live dhcp initrd=initrd ro\n`
233
260
  */
234
- content += `imgargs vmlinuz fetch=http://${utils_1.default.address()}/live/filesystem.squashfs boot=live dhcp initrd=initrd ro\n`;
261
+ if (this.settings.distro.familyId === 'debian') {
262
+ /**
263
+ * DEBIAN
264
+ */
265
+ content += `imgargs vmlinuz fetch=http://${utils_1.default.address()}/live/filesystem.squashfs boot=live dhcp initrd=initrd ro\n`;
266
+ }
267
+ else if (this.settings.distro.familyId === 'archlinux') {
268
+ /**
269
+ * ARCH LINUX
270
+ */
271
+ let tool = 'archiso';
272
+ if (this.settings.distro.codenameId === 'Qonos' || this.settings.distro.codenameId === 'Ruah' || this.settings.distro.codenameId === 'Sikaris') {
273
+ tool = 'miso';
274
+ }
275
+ content += `imgargs vmlinuz ${tool}_http_srv=http://${utils_1.default.address()}/ boot=live dhcp initrd=initrd ro\n`;
276
+ //content += 'ipappend 3\n'
277
+ }
235
278
  content += `sleep 5\n`;
236
279
  content += `boot || goto start\n\n`;
237
280
  if (this.isos.length > 0) {
@@ -324,8 +367,11 @@ class Pxe {
324
367
  *
325
368
  * @param cmd
326
369
  */
327
- async tryCatch(cmd = '') {
370
+ async tryCatch(cmd = '', echo = false) {
328
371
  try {
372
+ if (echo) {
373
+ console.log(cmd);
374
+ }
329
375
  await (0, utils_2.exec)(cmd, this.echo);
330
376
  }
331
377
  catch (error) {
@@ -226,14 +226,16 @@ class Sequence {
226
226
  await utils_1.default.pressKeyToExit(JSON.stringify(error));
227
227
  }
228
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));
229
+ if (this.distro.familyId === 'debian') {
230
+ message = "dpkg-unsafe-io";
231
+ percent = 0.11;
232
+ try {
233
+ await redraw(react_1.default.createElement(install_1.default, { message: message, percent: percent }));
234
+ await this.execCalamaresModule('dpkg-unsafe-io');
235
+ }
236
+ catch (error) {
237
+ await utils_1.default.pressKeyToExit(JSON.stringify(error));
238
+ }
237
239
  }
238
240
  /**
239
241
  * IF RESTORE USERS DATA
@@ -350,15 +352,17 @@ class Sequence {
350
352
  catch (error) {
351
353
  await utils_1.default.pressKeyToExit(JSON.stringify(error));
352
354
  }
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));
355
+ // dpkg-unsafe-io-undo
356
+ if (this.distro.familyId === 'debian') {
357
+ message = "dpkg-unsafe-io-undo";
358
+ percent = 0.61;
359
+ try {
360
+ await redraw(react_1.default.createElement(install_1.default, { message: message, percent: percent }));
361
+ await this.execCalamaresModule('dpkg-unsafe-io-undo');
362
+ }
363
+ catch (error) {
364
+ await utils_1.default.pressKeyToExit(JSON.stringify(error));
365
+ }
362
366
  }
363
367
  /**
364
368
  * IF NOT RESTORE USERS DATA OR PERSONAL BACKUP
@@ -453,6 +457,7 @@ class Sequence {
453
457
  catch (error) {
454
458
  await utils_1.default.pressKeyToExit(JSON.stringify(error));
455
459
  }
460
+ // await Utils.pressKeyToExit('check bootloaded and continue...')
456
461
  // sources-yolk-undo
457
462
  if (this.distro.familyId === 'debian') {
458
463
  message = "sources-yolk-undo";
@@ -7,19 +7,10 @@ const tslib_1 = require("tslib");
7
7
  const utils_1 = require("../../lib/utils");
8
8
  const utils_2 = tslib_1.__importDefault(require("../../classes/utils"));
9
9
  /**
10
- * bootloader
11
- * @param target
12
- * @param options
13
- */
10
+ *
11
+ * @param this
12
+ */
14
13
  async function bootloader() {
15
- /**
16
- * update-grub it's just a script:
17
- #!/bin/sh
18
- set -e
19
- exec grub-mkconfig -o /boot/grub/grub.cfg "$@"
20
- *
21
- * not present on Arch, so we use grub-mkconfig
22
- */
23
14
  let cmd = `chroot ${this.installTarget} grub-install ${this.partitions.installationDevice} ${this.toNull}`;
24
15
  try {
25
16
  await (0, utils_1.exec)(cmd, this.echo);
@@ -35,7 +35,10 @@ async function initramfs() {
35
35
  else if (this.distro.familyId === 'archlinux') {
36
36
  let initrdImg = utils_2.default.initrdImg();
37
37
  initrdImg = initrdImg.substring(initrdImg.lastIndexOf('/') + 1);
38
- const cmd = `mkinitcpio -c ${path_1.default.resolve(__dirname, '../../../mkinitcpio/manjaro/mkinitcpio-install.conf')} -g ${this.installTarget}/boot/${initrdImg}`; // ${this.toNull}
38
+ let cmd = `mkinitcpio -c ${path_1.default.resolve(__dirname, '../../../mkinitcpio/arch/mkinitcpio-install.conf')} -g ${this.installTarget}/boot/${initrdImg}`; // ${this.toNull}
39
+ if (this.distro.codenameId === 'Qonos' || this.distro.codenameId === 'Ruah' || this.distro.codenameId === 'Sikaris') {
40
+ cmd = `mkinitcpio -c ${path_1.default.resolve(__dirname, '../../../mkinitcpio/manjaro/mkinitcpio-install.conf')} -g ${this.installTarget}/boot/${initrdImg}`; // ${this.toNull}
41
+ }
39
42
  try {
40
43
  await (0, utils_1.exec)(cmd, utils_2.default.setEcho(true));
41
44
  }
@@ -26,7 +26,7 @@ async function mountVfs() {
26
26
  if (this.efi) {
27
27
  await (0, utils_1.exec)(`mount -o bind /sys/firmware/efi/efivars ${this.installTarget}/sys/firmware/efi/efivars ${this.toNull}`, this.echo);
28
28
  }
29
- await (0, utils_1.exec)(`mount -o bind /run ${this.installTarget}/run ${this.toNull}`, this.echo);
29
+ await (0, utils_1.exec)(`mount -o rbind /run ${this.installTarget}/run ${this.toNull}`, this.echo);
30
30
  }
31
31
  exports.mountVfs = mountVfs;
32
32
  /**
@@ -15,7 +15,8 @@ const utils_2 = require("../../lib/utils");
15
15
  * unpackfs
16
16
  */
17
17
  async function unpackfs() {
18
- const cmd = `unsquashfs -d ${this.installTarget} -f ${this.distro.mountpointSquashFs}`;
18
+ //const cmd = `unsquashfs -d ${this.installTarget} -f ${this.distro.liveMediumPath}`
19
+ const cmd = `unsquashfs -d ${this.installTarget} -f ${this.distro.liveMediumPath}${this.distro.squashfs}`;
19
20
  const echoYes = utils_1.default.setEcho(true);
20
21
  await (0, utils_2.exec)(cmd, echoYes);
21
22
  }
@@ -1,5 +1,101 @@
1
- # install Archlinux
2
1
 
2
+ # archinstall
3
+
4
+ Here I'm using archinstall, minimum installation, you can find configuration files in
5
+ [archinstall](./archinstall).
6
+ I added this packages:
7
+
8
+ ```bash-completion git nano openssh```
9
+
10
+ and completed the installation.
11
+
12
+
13
+ ## reboot
14
+ Here I enabled members of group wheel to sudo, after I just installed penguins-eggs:
15
+
16
+ ### visudo
17
+ ```sudo su```
18
+
19
+ ```export EDITOR=nano```
20
+
21
+ ```visudo```
22
+
23
+ find line:
24
+ ```
25
+ ## Uncomment to allow members of group wheel to execute any command
26
+ # %wheel ALL=(ALL:ALL) ALL
27
+ ```
28
+ and remove # before %wheel
29
+
30
+ ### install penguins-eggs
31
+ ```git clone https://github.com/pieroproietti/penguins-eggs-arch```
32
+
33
+ ```cd penguins-eggs-arch```
34
+
35
+ ```./build```
36
+
37
+ ### run eggs
38
+ ```eggs dad -d```
39
+
40
+ ```eggs produce --fast```
41
+
42
+ The iso was generated and I exported it to boot from the new iso.
43
+
44
+ ## booting from eggs generated iso
45
+ boot is successfully, and I tryed to install with:
46
+
47
+ ```sudo eggs install -u```
48
+
49
+ No signs of problems.
50
+
51
+
52
+ ## booting from the new installed machine
53
+
54
+ grub start with just the option:
55
+
56
+ ```
57
+ UEFI firmware settings
58
+ ```
59
+
60
+ ### workaround
61
+
62
+ I tryed to reinstall grub, starting from the initial archiso.
63
+
64
+
65
+ ```ssh root@192.168.61.102```
66
+
67
+ ```
68
+ root@archiso ~ # lsblk
69
+ NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
70
+ loop0 7:0 0 671M 1 loop /run/archiso/airootfs
71
+ sda 8:0 0 40G 0 disk
72
+ ├─sda1 8:1 0 256M 0 part
73
+ ├─sda2 8:2 0 4G 0 part
74
+ └─sda3 8:3 0 35.7G 0 part
75
+ sr0 11:0 1 782.3M 0 rom
76
+ root@archiso ~ # mount /dev/sda3 /mnt
77
+ root@archiso ~ # ls /mnt/boot/efi
78
+ root@archiso ~ # mount /dev/sda1 /mnt/boot/efi
79
+ root@archiso ~ # arch-chroot /mnt
80
+ ```
81
+ and give:
82
+ ```grub-mkconfig -o /boot/grub/grub.cfg```
83
+
84
+ Agein, it seem all OK, but grub-mkconfig cant create linux entry!
85
+
86
+ Saoeone can help?
87
+
88
+
89
+
90
+ ## adding fstab
91
+ ```genfstab -U /mnt >> /mnt/etc/fstab```
92
+
93
+ ```arch-chroot /mnt```
94
+
95
+ ```ln -sf /proc/self/mounts /etc/mtab```
96
+
97
+
98
+ # install Archlinux
3
99
  ```password```
4
100
 
5
101
  ```systemctl start sshd```
@@ -0,0 +1,42 @@
1
+ {
2
+ "archinstall-language": "Italian",
3
+ "bootloader": "grub-install",
4
+ "config_version": "2.5.1",
5
+ "debug": false,
6
+ "harddrives": [
7
+ "/dev/sda"
8
+ ],
9
+ "hostname": "naked",
10
+ "keyboard-layout": "it",
11
+ "mirror-region": {
12
+ "Italy": {
13
+ "http://archlinux.mirror.garr.it/archlinux/$repo/os/$arch": true,
14
+ "http://archlinux.mirror.server24.net/$repo/os/$arch": true,
15
+ "https://archlinux.mirror.server24.net/$repo/os/$arch": true,
16
+ "https://archmirror.it/repos/$repo/os/$arch": true
17
+ }
18
+ },
19
+ "nic": {
20
+ "dhcp": true,
21
+ "dns": null,
22
+ "gateway": null,
23
+ "iface": null,
24
+ "ip": null,
25
+ "type": "nm"
26
+ },
27
+ "no_pkg_lookups": false,
28
+ "offline": false,
29
+ "packages": [
30
+ "bash-completion",
31
+ "git",
32
+ "nano"
33
+ ],
34
+ "profile": {
35
+ "path": "/usr/lib/python3.10/site-packages/archinstall/profiles/minimal.py"
36
+ },
37
+ "script": "guided",
38
+ "silent": false,
39
+ "sys-language": "it_IT.UTF-8",
40
+ "timezone": "Europe/Rome",
41
+ "version": "2.5.1"
42
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "!users": [
3
+ {
4
+ "!password": "evolution",
5
+ "sudo": true,
6
+ "username": "artisan"
7
+ }
8
+ ]
9
+ }
@@ -0,0 +1,31 @@
1
+ {
2
+ "/dev/sda": {
3
+ "partitions": [
4
+ {
5
+ "boot": true,
6
+ "encrypted": false,
7
+ "filesystem": {
8
+ "format": "fat32"
9
+ },
10
+ "mountpoint": "/boot",
11
+ "size": "512MiB",
12
+ "start": "1MiB",
13
+ "type": "primary",
14
+ "wipe": true
15
+ },
16
+ {
17
+ "encrypted": false,
18
+ "filesystem": {
19
+ "format": "ext4",
20
+ "mount_options": []
21
+ },
22
+ "mountpoint": "/",
23
+ "size": "100%",
24
+ "start": "513MiB",
25
+ "type": "primary",
26
+ "wipe": true
27
+ }
28
+ ],
29
+ "wipe": true
30
+ }
31
+ }
@@ -2,4 +2,3 @@ MODULES=(qxl virtio-gpu virtio virtio_scsi virtio_blk virtio_pci virtio_net virt
2
2
  HOOKS="base udev modconf block keyboard keymap consolefont filesystems fsck"
3
3
  COMPRESSION="zstd"
4
4
  # removed: bochs_drm
5
-
@@ -6,8 +6,3 @@ FILES=()
6
6
  HOOKS=(base udev modconf memdisk archiso archiso_loop_mnt archiso_pxe_common archiso_pxe_nbd archiso_pxe_http archiso_pxe_nfs archiso_kms block filesystems keyboard)
7
7
  COMPRESSION="zsd"
8
8
  #COMPRESSION_OPTIONS=()
9
-
10
- # manjaro mkinitcpio-produce.conf
11
- # MODULES="loop dm-snapshot"
12
- # HOOKS="base udev miso_shutdown miso miso_loop_mnt miso_kms modconf block filesystems keyboard keymap"
13
- # COMPRESSION="zstd"
@@ -1,7 +1,9 @@
1
1
  # manjaro linux Qono krill producing iso
2
2
  MODULES="loop dm-snapshot"
3
- HOOKS="base udev miso_shutdown miso miso_loop_mnt miso_kms modconf block filesystems keyboard keymap"
3
+ #HOOKS="base udev miso_shutdown miso miso_loop_mnt miso_kms modconf block filesystems keyboard keymap"
4
+ HOOKS="base udev miso_shutdown miso miso_loop_mnt miso_kms miso_pxe_common miso_pxe_http modconf block filesystems keyboard keymap"
4
5
  COMPRESSION="zstd"
5
-
6
+ # richiede mkinitcpio-nfs-utils
6
7
 
7
8
  # HOOKS="base udev pe_miso_shutdown pe_miso pe_miso_loop_mnt pe_miso_kms modconf block filesystems keyboard keymap"
9
+
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.4",
4
+ "version": "9.3.7",
5
5
  "author": "Piero Proietti @pieroproietti",
6
6
  "bin": {
7
7
  "eggs": "bin/run"