penguins-eggs 9.6.15 → 9.6.17

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.6.15","commands":{"adapt":{"id":"adapt","description":"adapt monitor resolution for VM only","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["eggs adapt"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","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":"configure calamares or install or configure it","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["sudo eggs calamares","sudo eggs calamares --install","sudo eggs calamares --install --theme=/path/to/theme","sudo eggs calamares --remove"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"install":{"name":"install","type":"boolean","char":"i","description":"install calamares and its dependencies","allowNo":false},"nointeractive":{"name":"nointeractive","type":"boolean","char":"n","description":"no user interaction","allowNo":false},"policies":{"name":"policies","type":"boolean","char":"p","description":"configure calamares policies","allowNo":false},"release":{"name":"release","type":"boolean","char":"r","description":"release: remove calamares and all its dependencies after the installation","allowNo":false},"remove":{"name":"remove","type":"boolean","description":"remove calamares and its dependencies","allowNo":false},"theme":{"name":"theme","type":"option","description":"theme/branding for eggs and calamares","multiple":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":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","sudo eggs config --clean","sudo eggs config --clean --nointeractive"],"flags":{"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},"nointeractive":{"name":"nointeractive","type":"boolean","char":"n","description":"no user interaction","allowNo":false},"noicons":{"name":"noicons","type":"boolean","char":"N","description":"no icons","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"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false}},"args":[]},"dad":{"id":"dad","description":"ask help from daddy - TUI configuration helper","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["sudo dad","sudo dad --clean","sudo dad --default"],"flags":{"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},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false}},"args":[]},"install":{"id":"install","description":"krill: the CLI system installer - the egg became a penguin!","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["sudo eggs install","sudo eggs install --unattended --halt","sudo eggs install --custom it"],"flags":{"crypted":{"name":"crypted","type":"boolean","char":"k","description":"Crypted CLI installation","allowNo":false},"custom":{"name":"custom","type":"option","char":"c","description":"custom unattended configuration","multiple":false},"domain":{"name":"domain","type":"option","char":"d","description":"Domain name, defult: .local","multiple":false},"halt":{"name":"halt","type":"boolean","char":"H","description":"Halt the system after installation","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"ip":{"name":"ip","type":"boolean","char":"i","description":"hostname as ip, eg: ip-192-168-1-33","allowNo":false},"nointeractive":{"name":"nointeractive","type":"boolean","char":"n","description":"no user interaction","allowNo":false},"none":{"name":"none","type":"boolean","char":"N","description":"Swap none: 256M","allowNo":false},"pve":{"name":"pve","type":"boolean","char":"p","description":"Proxmox VE install","allowNo":false},"random":{"name":"random","type":"boolean","char":"r","description":"Add random to hostname, eg: colibri-ay412dt","allowNo":false},"small":{"name":"small","type":"boolean","char":"s","description":"Swap small: RAM","allowNo":false},"suspend":{"name":"suspend","type":"boolean","char":"S","description":"Swap suspend: RAM x 2","allowNo":false},"unattended":{"name":"unattended","type":"boolean","char":"u","description":"Unattended installation","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":["sudo eggs kill"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"nointeractive":{"name":"nointeractive","type":"boolean","char":"n","description":"no user interaction","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[]},"mom":{"id":"mom","description":"ask help from mommy - TUI helper","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["eggs mom"],"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","sudo eggs produce --standard","sudo eggs produce --max","sudo eggs produce --max --basename=colibri","sudo eggs produce --cryptedclone","sudo eggs produce --clone","sudo eggs produce --basename=colibri","sudo eggs produce --basename=colibri --theme theme --addons adapt"],"flags":{"addons":{"name":"addons","type":"option","description":"addons to be used: adapt, ichoice, pve, rsupport","multiple":true},"basename":{"name":"basename","type":"option","description":"basename","multiple":false},"clone":{"name":"clone","type":"boolean","char":"c","description":"clone","allowNo":false},"cryptedclone":{"name":"cryptedclone","type":"boolean","char":"C","description":"crypted clone","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"max":{"name":"max","type":"boolean","char":"m","description":"max compression","allowNo":false},"nointeractive":{"name":"nointeractive","type":"boolean","char":"n","description":"no user interaction","allowNo":false},"noicons":{"name":"noicons","type":"boolean","char":"N","description":"no icons on desktop","allowNo":false},"prefix":{"name":"prefix","type":"option","char":"p","description":"prefix","multiple":false},"release":{"name":"release","type":"boolean","description":"release: max compression, remove penguins-eggs and calamares after installation","allowNo":false},"script":{"name":"script","type":"boolean","char":"s","description":"script mode. Generate scripts to manage iso build","allowNo":false},"standard":{"name":"standard","type":"boolean","char":"f","description":"standard compression","allowNo":false},"theme":{"name":"theme","type":"option","description":"theme for livecd, calamares branding and partitions","multiple":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}},"args":[]},"status":{"id":"status","description":"informations about eggs status","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["eggs status"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","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 syncfrom","sudo eggs syncfrom --file /path/to/fileLUKS"],"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},"rootdir":{"name":"rootdir","type":"option","char":"r","description":"rootdir of the installed system, when used from live","multiple":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","sudo eggs syncto --file /path/to/fileLUKS"],"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 Penguins' eggs tool","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["eggs update"],"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":[],"examples":["eggs export deb","eggs export deb --clean","eggs export deb --all"],"flags":{"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},"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:iso":{"id":"export:iso","description":"export iso in the destination host","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["eggs export iso","eggs export iso --clean"],"flags":{"clean":{"name":"clean","type":"boolean","char":"c","description":"delete old ISOs before to copy","allowNo":false},"checksum":{"name":"checksum","type":"boolean","char":"C","description":"export checksums md5 and sha256","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":[]},"tools:clean":{"id":"tools:clean","description":"clean system log, apt, etc","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["sudo eggs tools clean"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"nointeractive":{"name":"nointeractive","type":"boolean","char":"n","description":"no user interaction","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[]},"tools:ppa":{"id":"tools:ppa","description":"add/remove repo","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["sudo eggs tools ppa --add","sudo eggs tools ppa --remove"],"flags":{"add":{"name":"add","type":"boolean","char":"a","description":"add penguins-eggs PPA repository","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"nointeractive":{"name":"nointeractive","type":"boolean","char":"n","description":"no user interaction","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":["sudo eggs tools skel","sudo eggs tools skel --user user-to-be-copied"],"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":[],"examples":["eggs tools stat","eggs tools stat --month","eggs tools stat --year"],"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":["sudo eggs tools yolk"],"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":[],"examples":["eggs wardrobe get","eggs wardrobe get your-wardrobe"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false}},"args":[{"name":"repo","description":"repository to get","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":[],"examples":["eggs wardrobe list","eggs wardrobe list your-wardrobe","eggs wardrobe list --distro arch"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"distro":{"name":"distro","type":"option","char":"d","description":"distro","multiple":false},"verbose":{"name":"verbose","type":"boolean","char":"v","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":[],"examples":["eggs wardrobe show colibri","eggs wardrobe show accessories/firmwares","eggs wardrobe show accessories/"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"json":{"name":"json","type":"boolean","char":"j","description":"output JSON","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false},"wardrobe":{"name":"wardrobe","type":"option","char":"w","description":"wardrobe","multiple":false}},"args":[{"name":"costume","description":"costume","required":false}],"example":["eggs wardrobe show colibri","eggs wardrobe show accessories/firmwares","eggs wardrobe show accessories/"]},"wardrobe:wear":{"id":"wardrobe:wear","description":"wear costume/accessories from wardrobe","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["sudo eggs wardrobe wear duck","sudo eggs wardrobe wear accessories/firmwares","sudo eggs wardrobe wear wagtail/waydroid"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":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},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false},"wardrobe":{"name":"wardrobe","type":"option","char":"w","description":"wardrobe","multiple":false}},"args":[{"name":"costume","description":"costume","required":false}]}}}
1
+ {"version":"9.6.17","commands":{"adapt":{"id":"adapt","description":"adapt monitor resolution for VM only","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["eggs adapt"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","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":"configure calamares or install or configure it","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["sudo eggs calamares","sudo eggs calamares --install","sudo eggs calamares --install --theme=/path/to/theme","sudo eggs calamares --remove"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"install":{"name":"install","type":"boolean","char":"i","description":"install calamares and its dependencies","allowNo":false},"nointeractive":{"name":"nointeractive","type":"boolean","char":"n","description":"no user interaction","allowNo":false},"policies":{"name":"policies","type":"boolean","char":"p","description":"configure calamares policies","allowNo":false},"release":{"name":"release","type":"boolean","char":"r","description":"release: remove calamares and all its dependencies after the installation","allowNo":false},"remove":{"name":"remove","type":"boolean","description":"remove calamares and its dependencies","allowNo":false},"theme":{"name":"theme","type":"option","description":"theme/branding for eggs and calamares","multiple":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":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","sudo eggs config --clean","sudo eggs config --clean --nointeractive"],"flags":{"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},"nointeractive":{"name":"nointeractive","type":"boolean","char":"n","description":"no user interaction","allowNo":false},"noicons":{"name":"noicons","type":"boolean","char":"N","description":"no icons","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"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false}},"args":[]},"dad":{"id":"dad","description":"ask help from daddy - TUI configuration helper","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["sudo dad","sudo dad --clean","sudo dad --default"],"flags":{"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},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false}},"args":[]},"install":{"id":"install","description":"krill: the CLI system installer - the egg became a penguin!","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":["krill"],"examples":["sudo eggs install","sudo eggs install --unattended --halt","sudo eggs install --custom it"],"flags":{"crypted":{"name":"crypted","type":"boolean","char":"k","description":"Crypted CLI installation","allowNo":false},"custom":{"name":"custom","type":"option","char":"c","description":"custom unattended configuration","multiple":false},"domain":{"name":"domain","type":"option","char":"d","description":"Domain name, defult: .local","multiple":false},"halt":{"name":"halt","type":"boolean","char":"H","description":"Halt the system after installation","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"ip":{"name":"ip","type":"boolean","char":"i","description":"hostname as ip, eg: ip-192-168-1-33","allowNo":false},"nointeractive":{"name":"nointeractive","type":"boolean","char":"n","description":"no user interaction","allowNo":false},"none":{"name":"none","type":"boolean","char":"N","description":"Swap none: 256M","allowNo":false},"pve":{"name":"pve","type":"boolean","char":"p","description":"Proxmox VE install","allowNo":false},"random":{"name":"random","type":"boolean","char":"r","description":"Add random to hostname, eg: colibri-ay412dt","allowNo":false},"small":{"name":"small","type":"boolean","char":"s","description":"Swap small: RAM","allowNo":false},"suspend":{"name":"suspend","type":"boolean","char":"S","description":"Swap suspend: RAM x 2","allowNo":false},"unattended":{"name":"unattended","type":"boolean","char":"u","description":"Unattended installation","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":["sudo eggs kill"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"nointeractive":{"name":"nointeractive","type":"boolean","char":"n","description":"no user interaction","allowNo":false},"isos":{"name":"isos","type":"boolean","char":"i","description":"erase all ISOs on remote mount","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[]},"mom":{"id":"mom","description":"ask help from mommy - TUI helper","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["eggs mom"],"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","sudo eggs produce --standard","sudo eggs produce --max","sudo eggs produce --max --basename=colibri","sudo eggs produce --cryptedclone","sudo eggs produce --clone","sudo eggs produce --basename=colibri","sudo eggs produce --basename=colibri --theme theme --addons adapt"],"flags":{"addons":{"name":"addons","type":"option","description":"addons to be used: adapt, ichoice, pve, rsupport","multiple":true},"basename":{"name":"basename","type":"option","description":"basename","multiple":false},"clone":{"name":"clone","type":"boolean","char":"c","description":"clone","allowNo":false},"cryptedclone":{"name":"cryptedclone","type":"boolean","char":"C","description":"crypted clone","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"max":{"name":"max","type":"boolean","char":"m","description":"max compression","allowNo":false},"nointeractive":{"name":"nointeractive","type":"boolean","char":"n","description":"no user interaction","allowNo":false},"noicons":{"name":"noicons","type":"boolean","char":"N","description":"no icons on desktop","allowNo":false},"prefix":{"name":"prefix","type":"option","char":"p","description":"prefix","multiple":false},"release":{"name":"release","type":"boolean","description":"release: max compression, remove penguins-eggs and calamares after installation","allowNo":false},"script":{"name":"script","type":"boolean","char":"s","description":"script mode. Generate scripts to manage iso build","allowNo":false},"standard":{"name":"standard","type":"boolean","char":"f","description":"standard compression","allowNo":false},"theme":{"name":"theme","type":"option","description":"theme for livecd, calamares branding and partitions","multiple":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}},"args":[]},"status":{"id":"status","description":"informations about eggs status","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["eggs status"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","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 syncfrom","sudo eggs syncfrom --file /path/to/fileLUKS"],"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},"rootdir":{"name":"rootdir","type":"option","char":"r","description":"rootdir of the installed system, when used from live","multiple":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","sudo eggs syncto --file /path/to/fileLUKS"],"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 Penguins' eggs tool","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["eggs update"],"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":[],"examples":["eggs export deb","eggs export deb --clean","eggs export deb --all"],"flags":{"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},"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:iso":{"id":"export:iso","description":"export iso in the destination host","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["eggs export iso","eggs export iso --clean"],"flags":{"clean":{"name":"clean","type":"boolean","char":"c","description":"delete old ISOs before to copy","allowNo":false},"checksum":{"name":"checksum","type":"boolean","char":"C","description":"export checksums md5 and sha256","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":[]},"tools:clean":{"id":"tools:clean","description":"clean system log, apt, etc","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["sudo eggs tools clean"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"nointeractive":{"name":"nointeractive","type":"boolean","char":"n","description":"no user interaction","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","description":"verbose","allowNo":false}},"args":[]},"tools:ppa":{"id":"tools:ppa","description":"add/remove repo","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["sudo eggs tools ppa --add","sudo eggs tools ppa --remove"],"flags":{"add":{"name":"add","type":"boolean","char":"a","description":"add penguins-eggs PPA repository","allowNo":false},"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"nointeractive":{"name":"nointeractive","type":"boolean","char":"n","description":"no user interaction","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":["sudo eggs tools skel","sudo eggs tools skel --user user-to-be-copied"],"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":[],"examples":["eggs tools stat","eggs tools stat --month","eggs tools stat --year"],"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":["sudo eggs tools yolk"],"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":[],"examples":["eggs wardrobe get","eggs wardrobe get your-wardrobe"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false}},"args":[{"name":"repo","description":"repository to get","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":[],"examples":["eggs wardrobe list","eggs wardrobe list your-wardrobe","eggs wardrobe list --distro arch"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"distro":{"name":"distro","type":"option","char":"d","description":"distro","multiple":false},"verbose":{"name":"verbose","type":"boolean","char":"v","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":[],"examples":["eggs wardrobe show colibri","eggs wardrobe show accessories/firmwares","eggs wardrobe show accessories/"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":false},"json":{"name":"json","type":"boolean","char":"j","description":"output JSON","allowNo":false},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false},"wardrobe":{"name":"wardrobe","type":"option","char":"w","description":"wardrobe","multiple":false}},"args":[{"name":"costume","description":"costume","required":false}],"example":["eggs wardrobe show colibri","eggs wardrobe show accessories/firmwares","eggs wardrobe show accessories/"]},"wardrobe:wear":{"id":"wardrobe:wear","description":"wear costume/accessories from wardrobe","strict":true,"pluginName":"penguins-eggs","pluginAlias":"penguins-eggs","pluginType":"core","aliases":[],"examples":["sudo eggs wardrobe wear duck","sudo eggs wardrobe wear accessories/firmwares","sudo eggs wardrobe wear wagtail/waydroid"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"Show CLI help.","allowNo":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},"verbose":{"name":"verbose","type":"boolean","char":"v","allowNo":false},"wardrobe":{"name":"wardrobe","type":"option","char":"w","description":"wardrobe","multiple":false}},"args":[{"name":"costume","description":"costume","required":false}]}}}
package/README.md CHANGED
@@ -112,12 +112,12 @@ There are more than a way to install eggs as .deb package, the most practical is
112
112
  The simplest way to install eggs is download the [package eggs](https://sourceforge.net/projects/penguins-eggs/files/DEBS/) from [sourceforge page of the project](https://sourceforge.net/projects/penguins-eggs/) and install it
113
113
 
114
114
  ```
115
- sudo dpkg -i eggs_9.6.15_amd64.deb
115
+ sudo dpkg -i eggs_9.6.16_amd64.deb
116
116
  ```
117
117
 
118
118
  or, on a i386 system:
119
119
  ```
120
- sudo dpkg -i eggs_9.6.15_i386.deb
120
+ sudo dpkg -i eggs_9.6.16_i386.deb
121
121
  ```
122
122
 
123
123
  Once eggs is installed you can add the [penguins-eggs-ppa](https://pieroproietti.github.io/penguins-eggs-ppa) repository with the command: ```sudo eggs tools ppa --install```
@@ -146,7 +146,7 @@ sudo apt update && sudo apt install eggs
146
146
  ```
147
147
 
148
148
  ### Upgrade eggs
149
- If you are using penguins-eggs-ppa You can upgrade 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.6.15_amd64.deb** or **gdebi eggs_9.6.15_i386.deb**.
149
+ If you are using penguins-eggs-ppa You can upgrade 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.6.16_amd64.deb** or **gdebi eggs_9.6.16_i386.deb**.
150
150
 
151
151
  ## Arch families
152
152
  eggs has been present in [AUR](https://aur.archlinux.org/) 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) and I'm participating in the [Manjaro Community Repository](https://gitlab.manjaro.org/packages/community/penguins-eggs).
@@ -447,7 +447,7 @@ USAGE
447
447
 
448
448
  FLAGS
449
449
  -c, --clean delete old ISOs before to copy
450
- -C --checksum export checksums md5 and sha256
450
+ -C, --checksum export checksums md5 and sha256
451
451
  -h, --help Show CLI help.
452
452
  -v, --verbose verbose
453
453
 
@@ -527,6 +527,7 @@ USAGE
527
527
 
528
528
  FLAGS
529
529
  -h, --help Show CLI help.
530
+ -i, --isos erase all ISOs on remote mount
530
531
  -n, --nointeractive no user interaction
531
532
  -v, --verbose verbose
532
533
 
package/conf/README.md CHANGED
@@ -1,6 +1,21 @@
1
1
  # Penguins' eggs
2
2
 
3
- ## mnt
3
+ FROM eggs v9.6.16 I changed a bit, hide mnt to .mnt, and create links to iso and filesystem.squashfs on the nest. Re have a more logic structure, build on the provious one, unchanged.
4
+
5
+ ## nest (/home/eggs)
6
+
7
+ * iso -> .mnt/iso
8
+ * livefs -> .mnt/filesystem.squashfs
9
+ * ovarium
10
+ * README.md
11
+ * egg-of_image.iso
12
+ * egg-of_image.md5
13
+ * egg-of_image.sha256
14
+
15
+
16
+ Under the hood all remain unchanged, but the importants things now are more visible.
17
+
18
+ ## .mnt
4
19
  * efi-work
5
20
  * filesystem.squashfs
6
21
  * iso
@@ -35,7 +50,7 @@ You already knw boot and efi, are necessary for UEFI and consist in the copy of
35
50
  * mkisofs
36
51
  * mksquashfs
37
52
  * ubind
38
- * .overlay
53
+ * .overlay (moved under nest 2023-11-21)
39
54
 
40
55
  ## Customize your image before to generate it
41
56
  if you want more control on the production of your iso, try the new --dry flag, it's instantaneous: will generate filesystem directory, iso structure complete and the related scripts to bind/ubind filesystem, squash it and create iso.
@@ -50,5 +65,3 @@ if you want more control on the production of your iso, try the new --dry flag,
50
65
  Feel free to contact me for any suggestions.
51
66
 
52
67
  https://github.com/pieroproietti/penguins-eggs
53
-
54
-
@@ -68,12 +68,12 @@ class Daddy {
68
68
  console.log();
69
69
  console.log(chalk_1.default.cyan(`If you don't have enough space to remaster, you can mount`));
70
70
  console.log(chalk_1.default.cyan(`some remote or local space. Follow the samples:`));
71
- console.log(chalk_1.default.cyan(`First, create the eggs mountpoint`));
72
- console.log(chalk_1.default.white(`sudo mkdir /home/eggs/mnt -p`));
73
- console.log(chalk_1.default.cyan(`then, remote space:`));
74
- console.log(chalk_1.default.white(`sudo sshfs -o allow_other root@192.168.1.2:/zfs/iso /home/eggs/mnt`));
75
- console.log(chalk_1.default.cyan('or, a local partition'));
76
- console.log(chalk_1.default.white(`sudo mount /dev/sdx1 /home/eggs/mnt`));
71
+ console.log(chalk_1.default.cyan(`- first, create an hidden mountpoint under the nest:`));
72
+ console.log(chalk_1.default.white(`sudo mkdir /home/eggs/.mnt -p`));
73
+ console.log(chalk_1.default.cyan(`- then, mount remote space:`));
74
+ console.log(chalk_1.default.white(`sudo sshfs -o allow_other root@192.168.1.2:/zfs/iso /home/eggs/.mnt`));
75
+ console.log(chalk_1.default.cyan('- or, mount a local partition:'));
76
+ console.log(chalk_1.default.white(`sudo mount /dev/sdx1 /home/eggs/.mnt`));
77
77
  console.log();
78
78
  console.log(chalk_1.default.cyan('More help? ') + chalk_1.default.white('eggs mom'));
79
79
  // await exec(`cat /etc/penguins-eggs.d/eggs.yaml`)
@@ -261,7 +261,6 @@ class Ovary {
261
261
  if (this.verbose) {
262
262
  console.log('Ovary: liveCreateStructure');
263
263
  }
264
- // efi-work iso memdiskDir sotto mountpoint
265
264
  utils_2.default.warning(`Creating egg in ${this.settings.config.snapshot_dir}`);
266
265
  let cmd;
267
266
  if (!fs_1.default.existsSync(this.settings.config.snapshot_dir)) {
@@ -272,6 +271,11 @@ class Ovary {
272
271
  cmd = `cp ${node_path_1.default.resolve(__dirname, '../../conf/README.md')} ${this.settings.config.snapshot_dir}README.md`;
273
272
  this.tryCatch(cmd);
274
273
  }
274
+ // Ovarium
275
+ if (!fs_1.default.existsSync(this.settings.work_dir.ovarium)) {
276
+ cmd = `mkdir -p ${this.settings.work_dir.ovarium}`;
277
+ this.tryCatch(cmd);
278
+ }
275
279
  if (!fs_1.default.existsSync(this.settings.work_dir.lowerdir)) {
276
280
  cmd = `mkdir -p ${this.settings.work_dir.lowerdir}`;
277
281
  this.tryCatch(cmd);
@@ -301,6 +305,12 @@ class Ovary {
301
305
  cmd = `mkdir -p ${this.settings.iso_work}live`;
302
306
  this.tryCatch(cmd);
303
307
  }
308
+ // ln iso
309
+ cmd = `ln -s ${this.settings.iso_work} ${this.settings.config.snapshot_dir}/iso`;
310
+ this.tryCatch(cmd);
311
+ // ln livefs
312
+ cmd = `ln -s ${this.settings.work_dir.merged} ${this.settings.config.snapshot_dir}/livefs`;
313
+ this.tryCatch(cmd);
304
314
  }
305
315
  /**
306
316
  *
@@ -1490,7 +1500,7 @@ class Ovary {
1490
1500
  let text = `# Created at: ${utils_2.default.formatDate(new Date())}\n`;
1491
1501
  text += `# penguins_eggs v. ${utils_2.default.getPackageVersion()}\n`;
1492
1502
  // .disk/info
1493
- fs_1.default.writeFileSync(dotDisk + '/info', info, 'utf-8');
1503
+ fs_1.default.writeFileSync(dotDisk + '/info', text, 'utf-8');
1494
1504
  // .disk/mksquashfs
1495
1505
  fs_1.default.writeFileSync(dotDisk + '/mksquashfs', text + mksquashfs, 'utf-8');
1496
1506
  // .disk/mkisofs
@@ -1660,7 +1670,6 @@ class Ovary {
1660
1670
  if (this.verbose) {
1661
1671
  console.log('Ovary: makeIso');
1662
1672
  }
1663
- //Utils.writeX(`${this.settings.config.snapshot_dir}mkisofs`, cmd)
1664
1673
  utils_2.default.writeX(`${this.settings.work_dir.ovarium}mkisofs`, cmd);
1665
1674
  if (!scriptOnly) {
1666
1675
  const test = (await (0, utils_1.exec)(cmd, utils_2.default.setEcho(true))).code;
@@ -75,13 +75,15 @@ class Settings {
75
75
  this.config.snapshot_dir += '/';
76
76
  }
77
77
  this.work_dir.ovarium = this.config.snapshot_dir + 'ovarium/';
78
- this.work_dir.lowerdir = this.work_dir.ovarium + '.overlay/lowerdir';
79
- this.work_dir.upperdir = this.work_dir.ovarium + '.overlay/upperdir';
80
- this.work_dir.workdir = this.work_dir.ovarium + '.overlay/workdir';
81
- this.config.snapshot_mnt = this.config.snapshot_dir + 'mnt/';
78
+ // hidden .mnt under nest
79
+ this.config.snapshot_mnt = this.config.snapshot_dir + '.mnt/';
82
80
  if (!this.config.snapshot_mnt.endsWith('/')) {
83
81
  this.config.snapshot_mnt += '/';
84
82
  }
83
+ // hidden .overlay under nest was under ovarium
84
+ this.work_dir.lowerdir = this.config.snapshot_dir + '.overlay/lowerdir';
85
+ this.work_dir.upperdir = this.config.snapshot_dir + '.overlay/upperdir';
86
+ this.work_dir.workdir = this.config.snapshot_dir + '.overlay/workdir';
85
87
  this.work_dir.merged = this.config.snapshot_mnt + 'filesystem.squashfs';
86
88
  this.efi_work = this.config.snapshot_mnt + 'efi-work/';
87
89
  this.iso_work = this.config.snapshot_mnt + 'iso/';
@@ -660,14 +660,15 @@ class Utils {
660
660
  * getDomain
661
661
  */
662
662
  static getDomain() {
663
- return shelljs_1.default.exec('dnsdomainname', { silent: true }).stdout.trim();
663
+ return shelljs_1.default.exec('domainname', { silent: true }).stdout.trim();
664
664
  // return shx.exec(`route -n | grep 'UG[ \t]' | awk '{print $2}'`, { silent: true }).stdout.trim()
665
665
  }
666
666
  /**
667
667
  * @returns gateway
668
668
  */
669
669
  static gateway() {
670
- return shelljs_1.default.exec(`route -n | grep 'UG[ \t]' | awk '{print $2}'`, { silent: true }).stdout.trim();
670
+ return shelljs_1.default.exec(`ip r | grep 'default' | awk '{print $3}'`, { silent: true }).stdout.trim();
671
+ //return shx.exec(`route -n | grep 'UG[ \t]' | awk '{print $2}'`, { silent: true }).stdout.trim()
671
672
  }
672
673
  /**
673
674
  * write a file
@@ -80,16 +80,16 @@ class Calamares extends core_1.Command {
80
80
  policies = true;
81
81
  }
82
82
  }
83
- /**
84
- * Configure
85
- */
86
- if (await this.settings.load()) {
87
- utils_1.default.warning('Configuring calamares');
88
- await this.settings.loadRemix(this.settings.config.snapshot_basename, theme);
89
- const isClone = false;
90
- this.incubator = new incubator_1.default(this.settings.remix, this.settings.distro, this.settings.config.user_opt, theme, isClone, verbose);
91
- await this.incubator.config(release);
92
- }
83
+ }
84
+ /**
85
+ * Configure
86
+ */
87
+ if (await this.settings.load()) {
88
+ utils_1.default.warning(`Configuring ${installer}`);
89
+ await this.settings.loadRemix(this.settings.config.snapshot_basename, theme);
90
+ const isClone = false;
91
+ this.incubator = new incubator_1.default(this.settings.remix, this.settings.distro, this.settings.config.user_opt, theme, isClone, verbose);
92
+ await this.incubator.config(release);
93
93
  /**
94
94
  * policies
95
95
  */
@@ -39,6 +39,8 @@ class ExportIso extends core_1.Command {
39
39
  if (!flags.verbose) {
40
40
  if (flags.clean) {
41
41
  console.log(`remove ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathIso}${Tu.snapshot_name}${filters[0]}`);
42
+ }
43
+ if (flags.checksum) {
42
44
  console.log(`export ${Tu.config.localPathIso}/${Tu.snapshot_name}${filters[1]}/${filters[2]} to ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathIso}`);
43
45
  }
44
46
  console.log(`scp ${Tu.config.localPathIso}/${Tu.snapshot_name}${filters[0]} ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathIso}`);
@@ -56,7 +56,7 @@ class Install extends core_1.Command {
56
56
  // hostname
57
57
  const ip = flags.ip;
58
58
  const random = flags.random;
59
- let domain = '.local';
59
+ let domain = '';
60
60
  if (flags.domain) {
61
61
  domain = flags.domain;
62
62
  }
@@ -100,6 +100,7 @@ Install.flags = {
100
100
  unattended: core_1.Flags.boolean({ char: 'u', description: 'Unattended installation' }),
101
101
  verbose: core_1.Flags.boolean({ char: 'v', description: 'Verbose' }),
102
102
  };
103
+ Install.aliases = ['krill'];
103
104
  Install.description = 'krill: the CLI system installer - the egg became a penguin!';
104
105
  Install.examples = [
105
106
  'sudo eggs install',
@@ -24,18 +24,21 @@ class Kill extends core_1.Command {
24
24
  async run() {
25
25
  utils_1.default.titles(this.id + ' ' + this.argv);
26
26
  const { flags } = await this.parse(Kill);
27
- let verbose = false;
28
- if (flags.verbose) {
29
- verbose = true;
30
- }
27
+ const verbose = flags.verbose;
28
+ const isos = flags.isos;
31
29
  const nointeractive = flags.nointeractive;
32
30
  const echo = utils_1.default.setEcho(verbose);
33
31
  if (utils_1.default.isRoot()) {
34
32
  const settings = new settings_1.default();
35
33
  await settings.load();
36
34
  await settings.listFreeSpace();
35
+ if (utils_1.default.isMountpoint(settings.config.snapshot_mnt)) {
36
+ console.log('==========================================');
37
+ utils_1.default.warning('You are working on a mountpoint');
38
+ console.log('==========================================');
39
+ }
37
40
  if (nointeractive || await utils_1.default.customConfirm()) {
38
- await (0, kill_me_softly_1.default)(settings.config.snapshot_dir, settings.config.snapshot_mnt);
41
+ await (0, kill_me_softly_1.default)(settings.config.snapshot_dir, settings.config.snapshot_mnt, isos);
39
42
  }
40
43
  }
41
44
  else {
@@ -46,6 +49,7 @@ class Kill extends core_1.Command {
46
49
  Kill.flags = {
47
50
  help: core_1.Flags.help({ char: 'h' }),
48
51
  nointeractive: core_1.Flags.boolean({ char: 'n', description: 'no user interaction' }),
52
+ isos: core_1.Flags.boolean({ char: 'i', description: 'erase all ISOs on remote mount' }),
49
53
  verbose: core_1.Flags.boolean({ char: 'v', description: 'verbose' }),
50
54
  };
51
55
  Kill.description = 'kill the eggs/free the nest';
@@ -45,6 +45,7 @@ function Users({ name, fullname, password, rootPassword, hostname, autologin, sa
45
45
  if (autologin) {
46
46
  charAutologin = "[ ]";
47
47
  }
48
+ charAutologin = ""; // Hidden
48
49
  if (sameUserPassword) {
49
50
  rootPassword = password;
50
51
  }
@@ -57,22 +58,23 @@ function Users({ name, fullname, password, rootPassword, hostname, autologin, sa
57
58
  react_1.default.createElement(steps_1.default, { step: 5 }),
58
59
  react_1.default.createElement(ink_1.Box, { flexDirection: "column" },
59
60
  react_1.default.createElement(ink_1.Box, null,
60
- react_1.default.createElement(ink_1.Text, null, "What is your name? "),
61
+ react_1.default.createElement(ink_1.Text, null, "username : "),
61
62
  react_1.default.createElement(ink_1.Text, { color: "cyan" }, name)),
62
63
  react_1.default.createElement(ink_1.Box, null,
63
- react_1.default.createElement(ink_1.Text, null, "What name do you want to use? "),
64
+ react_1.default.createElement(ink_1.Text, null, "full username: "),
64
65
  react_1.default.createElement(ink_1.Text, { color: "cyan" }, fullname)),
65
66
  react_1.default.createElement(ink_1.Box, null,
66
- react_1.default.createElement(ink_1.Text, null, "What is the name of this computer? "),
67
- react_1.default.createElement(ink_1.Text, { color: "cyan" }, hostname)),
68
- react_1.default.createElement(ink_1.Box, null,
69
- react_1.default.createElement(ink_1.Text, null, "Choose a password "),
67
+ react_1.default.createElement(ink_1.Text, null, "user password: "),
70
68
  react_1.default.createElement(ink_1.Text, { color: "cyan" }, password)),
69
+ react_1.default.createElement(ink_1.Box, null),
71
70
  react_1.default.createElement(ink_1.Box, null,
72
- react_1.default.createElement(ink_1.Text, null, "Log in automatically? "),
73
- react_1.default.createElement(ink_1.Text, { color: "cyan" }, charAutologin)),
71
+ react_1.default.createElement(ink_1.Text, null, "root password: "),
72
+ react_1.default.createElement(ink_1.Text, { color: "cyan" }, rootPassword)),
73
+ react_1.default.createElement(ink_1.Box, null,
74
+ react_1.default.createElement(ink_1.Text, null, "hostname : "),
75
+ react_1.default.createElement(ink_1.Text, { color: "cyan" }, hostname)),
74
76
  react_1.default.createElement(ink_1.Box, null,
75
- react_1.default.createElement(ink_1.Text, null, "root password "),
76
- react_1.default.createElement(ink_1.Text, { color: "cyan" }, rootPassword))))))));
77
+ react_1.default.createElement(ink_1.Text, null, " "),
78
+ react_1.default.createElement(ink_1.Text, { color: "cyan" }, charAutologin))))))));
77
79
  }
78
80
  exports.default = Users;
@@ -134,7 +134,7 @@ class Krill {
134
134
  * @param pve
135
135
  * @param verbose
136
136
  */
137
- async prepare(krillConfig = {}, ip = false, random = false, domain = 'local', suspend = false, small = false, none = false, cryped = false, pve = false, verbose = false) {
137
+ async prepare(krillConfig = {}, ip = false, random = false, domain = '', suspend = false, small = false, none = false, cryped = false, pve = false, verbose = false) {
138
138
  /**
139
139
  * Check for disk presence
140
140
  */
@@ -438,7 +438,7 @@ class Krill {
438
438
  }
439
439
  let fullname = this.krillConfig.fullname;
440
440
  if (fullname === '' || fullname === undefined) {
441
- fullname = 'artisan';
441
+ fullname = name;
442
442
  }
443
443
  let password = this.krillConfig.password;
444
444
  if (password === '' || password === undefined) {
@@ -462,7 +462,8 @@ class Krill {
462
462
  }
463
463
  name = await (0, get_username_1.default)(name);
464
464
  fullname = await (0, get_userfullname_1.default)(fullname);
465
- password = await (0, get_password_1.default)(password);
465
+ password = await (0, get_password_1.default)(name, password);
466
+ rootPassword = await (0, get_password_1.default)('root', password);
466
467
  hostname = await (0, get_hostname_1.default)(hostname);
467
468
  }
468
469
  return {
@@ -507,6 +508,9 @@ class Krill {
507
508
  i.netmask = await (0, get_netmask_1.default)(i.netmask);
508
509
  i.gateway = await (0, get_gateway_1.default)(i.gateway);
509
510
  i.domain = await (0, get_domain_1.default)(i.domain);
511
+ if (i.domain.at(0) !== '.') {
512
+ i.domain = '.' + i.domain;
513
+ }
510
514
  i.dns = (await (0, get_dns_1.default)(dnsString)).split(';');
511
515
  dnsString = '';
512
516
  for (let c = 0; c < i.dns.length; c++) {
@@ -162,7 +162,14 @@ class Sequence {
162
162
  * @param umount
163
163
  * @returns
164
164
  */
165
- async start(domain = 'local', unattended = false, nointeractive = false, halt = false, verbose = false) {
165
+ async start(domain = '', unattended = false, nointeractive = false, halt = false, verbose = false) {
166
+ // Imposta il domain per flag
167
+ if (domain !== '') {
168
+ if (domain.at(0) !== '.') {
169
+ domain = '.' + domain;
170
+ }
171
+ this.network.domain = domain;
172
+ }
166
173
  /**
167
174
  * To let krill to work with Arch we need:
168
175
  */
@@ -317,7 +324,7 @@ class Sequence {
317
324
  percent = 0.64;
318
325
  try {
319
326
  await redraw(react_1.default.createElement(install_1.default, { message: message, percent: percent }));
320
- await this.hostname(domain);
327
+ await this.hostname(this.network.domain);
321
328
  }
322
329
  catch (error) {
323
330
  await utils_1.default.pressKeyToExit(JSON.stringify(error));
@@ -414,7 +421,7 @@ class Sequence {
414
421
  await utils_1.default.pressKeyToExit(JSON.stringify(error));
415
422
  }
416
423
  // changePassword root
417
- message = "Add user password";
424
+ message = "Add root password";
418
425
  percent = 0.77;
419
426
  try {
420
427
  await redraw(react_1.default.createElement(install_1.default, { message: message, percent: percent }));
@@ -13,7 +13,7 @@ const fs_1 = tslib_1.__importDefault(require("fs"));
13
13
  /**
14
14
  * hostname
15
15
  */
16
- async function hostname(domain = 'local') {
16
+ async function hostname(domain = '') {
17
17
  const hostname = this.users.hostname;
18
18
  /**
19
19
  * hostname
@@ -28,12 +28,20 @@ async function hostname(domain = 'local') {
28
28
  */
29
29
  {
30
30
  const file = this.installTarget + '/etc/hosts';
31
+ if (domain === '(none)') {
32
+ domain = '';
33
+ }
31
34
  let text = '127.0.0.1 localhost localhost.localdomain\n';
32
35
  if (this.network.addressType === 'static') {
33
- text += `${this.network.address} ${hostname} pvelocalhost\n`;
36
+ text += `${this.network.address} ${hostname} ${hostname}${domain} pvelocalhost pvelocalhost.pvelocaldomain\n`;
34
37
  }
35
38
  else {
36
- text += `127.0.1.1 ${hostname}.${domain} ${hostname} \n`;
39
+ if (domain !== '') {
40
+ text += `127.0.1.1 ${hostname} ${hostname}${domain}\n`;
41
+ }
42
+ else {
43
+ text += `127.0.1.1 ${hostname}\n`;
44
+ }
37
45
  }
38
46
  text += '# The following lines are desirable for IPv6 capable hosts\n';
39
47
  text += ':: 1 ip6 - localhost ip6 - loopback\n';
@@ -8,7 +8,7 @@
8
8
  'use strict';
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
10
  const inquirer = require('inquirer');
11
- async function getDomain(initial) {
11
+ async function getDomain(initial = '') {
12
12
  return new Promise(function (resolve) {
13
13
  const questions = [
14
14
  {
@@ -9,7 +9,7 @@
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
10
  // import { option } from '@oclif/command/lib/flags'
11
11
  const inquirer = require('inquirer');
12
- async function getPassword(initial) {
12
+ async function getPassword(user = 'root', initial) {
13
13
  const requireLetterAndNumber = (value) => {
14
14
  if (/\w/.test(value) && /\d/.test(value)) {
15
15
  return true;
@@ -19,14 +19,14 @@ async function getPassword(initial) {
19
19
  const questions = [
20
20
  {
21
21
  type: 'password',
22
- message: 'Choose a password to keep your account safe: ',
22
+ message: `Choose a password for ${user}: `,
23
23
  name: 'password',
24
24
  default: initial,
25
25
  // validate: requireLetterAndNumber,
26
26
  },
27
27
  {
28
28
  type: 'password',
29
- message: 'Confirm your password: ',
29
+ message: `Confirm your ${user} password: `,
30
30
  name: 'confirmPassword',
31
31
  default: initial,
32
32
  // validate: requireLetterAndNumber,