penguins-eggs 9.4.12 → 9.4.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.oclif.manifest.json +1 -1
- package/README.md +2 -2
- package/addons/templates/grub.template +0 -1
- package/conf/distros/rolling/calamares/modules/users.yml +3 -3
- package/conf/exclude.list +4 -1
- package/dist/classes/ccm.js +28 -0
- package/dist/classes/distro.js +2 -3
- package/dist/classes/incubation/distros/bionic.js +3 -2
- package/dist/classes/incubation/distros/buster.js +11 -1
- package/dist/classes/incubation/distros/focal.js +11 -1
- package/dist/classes/incubation/distros/jessie.js +1 -1
- package/dist/classes/incubation/distros/rolling.js +6 -5
- package/dist/classes/incubation/fisherman.js +26 -15
- package/dist/classes/incubation/incubator.js +5 -17
- package/dist/classes/incubation/installer.js +4 -0
- package/dist/classes/ovary.js +48 -46
- package/dist/classes/utils.js +17 -69
- package/dist/classes/xdg.js +0 -3
- package/dist/commands/calamares.js +11 -1
- package/dist/commands/produce.js +8 -10
- package/dist/interfaces/i-settings.js +4 -0
- package/dist/krill/krill-sequence.js +26 -0
- package/dist/krill/modules/add-user.js +5 -1
- package/mkinitcpio/README.md +10 -7
- package/mkinitcpio/{archlinux/mkinitcpio-produce.conf → arch/live.conf} +1 -1
- package/mkinitcpio/{archlinux/mkinitcpio-install.conf → arch/mkinitcpio.conf} +1 -1
- package/mkinitcpio/blendos/README.md +0 -7
- package/mkinitcpio/blendos/live.conf +7 -0
- package/mkinitcpio/blendos/{mkinitcpio-install.conf → mkinitcpio.conf} +1 -1
- package/package.json +1 -1
- package/mkinitcpio/archlinux/README.md +0 -212
- package/mkinitcpio/archlinux/archinstall/user_configuration.json +0 -42
- package/mkinitcpio/archlinux/archinstall/user_credentials.json +0 -9
- package/mkinitcpio/archlinux/archinstall/user_disk_layout.json +0 -31
- package/mkinitcpio/blendos/mkinitcpio-produce.conf +0 -7
- /package/addons/eggs/theme/calamares/modules/{users.yml → _users.yml} +0 -0
- /package/mkinitcpio/crystal/{mkinitcpio-produce.conf → live.conf} +0 -0
- /package/mkinitcpio/crystal/{mkinitcpio-install.conf → mkinitcpio.conf} +0 -0
- /package/mkinitcpio/{manjaro → manjarolinux}/README.md +0 -0
- /package/mkinitcpio/{manjaro/mkinitcpio-produce.conf → manjarolinux/live.conf} +0 -0
- /package/mkinitcpio/{manjaro/mkinitcpio-install.conf → manjarolinux/mkinitcpio.conf} +0 -0
package/.oclif.manifest.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":"9.4.12","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},"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},"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 /path/to/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},"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},"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 PPA repositories (Debian family)","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.4.16","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},"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},"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 /path/to/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},"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},"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 PPA repositories (Debian family)","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
|
@@ -105,7 +105,7 @@ There are more than a way to install eggs as .deb package, the most practical is
|
|
|
105
105
|
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
|
|
106
106
|
|
|
107
107
|
```
|
|
108
|
-
sudo dpkg -i eggs_9.4.
|
|
108
|
+
sudo dpkg -i eggs_9.4.15_amd64.deb
|
|
109
109
|
```
|
|
110
110
|
|
|
111
111
|
or, on a i386 system:
|
|
@@ -131,7 +131,7 @@ sudo apt update && sudo apt install eggs
|
|
|
131
131
|
```
|
|
132
132
|
|
|
133
133
|
### Upgrade eggs
|
|
134
|
-
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.4.
|
|
134
|
+
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.4.15_amd64.deb**.
|
|
135
135
|
|
|
136
136
|
|
|
137
137
|
## Arch families
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Arch
|
|
2
2
|
# users
|
|
3
3
|
---
|
|
4
4
|
userGroup: users
|
|
5
5
|
defaultGroups:
|
|
6
6
|
- cdrom
|
|
7
7
|
- floppy
|
|
8
|
-
-
|
|
8
|
+
- wheel
|
|
9
9
|
- audio
|
|
10
10
|
- dip
|
|
11
11
|
- video
|
|
@@ -15,6 +15,6 @@ defaultGroups:
|
|
|
15
15
|
- scanner
|
|
16
16
|
- bluetooth
|
|
17
17
|
autologinGroup: autologin
|
|
18
|
-
sudoersGroup:
|
|
18
|
+
sudoersGroup: wheel
|
|
19
19
|
setRootPassword: true
|
|
20
20
|
doReusePassword: false
|
package/conf/exclude.list
CHANGED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.ccm = void 0;
|
|
7
|
+
const fs_1 = __importDefault(require("fs"));
|
|
8
|
+
const js_yaml_1 = __importDefault(require("js-yaml"));
|
|
9
|
+
/**
|
|
10
|
+
* custom calamares modules
|
|
11
|
+
*/
|
|
12
|
+
function ccm() {
|
|
13
|
+
const ccm = [];
|
|
14
|
+
const settingsVar = fs_1.default.readFileSync('/etc/calamares/settings.conf', 'utf8');
|
|
15
|
+
const settingsYaml = js_yaml_1.default.load(settingsVar);
|
|
16
|
+
const execSequence = settingsYaml.sequence[1];
|
|
17
|
+
const steps = execSequence.exec;
|
|
18
|
+
for (const step of steps) {
|
|
19
|
+
if (step.includes('ccm-')) {
|
|
20
|
+
ccm.push(step);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
return ccm;
|
|
24
|
+
}
|
|
25
|
+
exports.ccm = ccm;
|
|
26
|
+
/**
|
|
27
|
+
*
|
|
28
|
+
*/
|
package/dist/classes/distro.js
CHANGED
|
@@ -174,12 +174,11 @@ class Distro {
|
|
|
174
174
|
break;
|
|
175
175
|
}
|
|
176
176
|
/**
|
|
177
|
-
* Arch Linux
|
|
178
|
-
* calamares rebornOS: Reborn-OS/calamares-core-git
|
|
177
|
+
* Arch Linux
|
|
179
178
|
*/
|
|
180
179
|
case 'n/a':
|
|
181
180
|
case 'rolling': {
|
|
182
|
-
//
|
|
181
|
+
// Arch, BlendOS, RebornOS, EndeavourOS
|
|
183
182
|
this.familyId = 'archlinux';
|
|
184
183
|
this.distroLike = 'Arch';
|
|
185
184
|
this.codenameId = 'rolling';
|
|
@@ -21,7 +21,7 @@ class Bionic {
|
|
|
21
21
|
* @param release
|
|
22
22
|
* @param verbose
|
|
23
23
|
*/
|
|
24
|
-
constructor(installer, remix, distro, user_opt, release = false, isClone = false, verbose = false) {
|
|
24
|
+
constructor(installer, remix, distro, user_opt, release = false, theme = 'eggs', isClone = false, verbose = false) {
|
|
25
25
|
this.verbose = false;
|
|
26
26
|
this.installer = {};
|
|
27
27
|
this.release = false;
|
|
@@ -31,6 +31,7 @@ class Bionic {
|
|
|
31
31
|
this.user_opt = user_opt;
|
|
32
32
|
this.verbose = verbose;
|
|
33
33
|
this.release = release;
|
|
34
|
+
this.theme = theme;
|
|
34
35
|
this.isClone = isClone;
|
|
35
36
|
}
|
|
36
37
|
/**
|
|
@@ -38,7 +39,7 @@ class Bionic {
|
|
|
38
39
|
*/
|
|
39
40
|
async create() {
|
|
40
41
|
const fisherman = new fisherman_1.default(this.distro, this.installer, this.verbose);
|
|
41
|
-
await fisherman.
|
|
42
|
+
await fisherman.createCalamaresSettings(this.theme, this.isClone);
|
|
42
43
|
await fisherman.buildModule('partition', this.remix.branding);
|
|
43
44
|
await fisherman.buildModule('mount');
|
|
44
45
|
await fisherman.moduleUnpackfs(); //
|
|
@@ -12,6 +12,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
};
|
|
13
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
14
|
exports.Buster = void 0;
|
|
15
|
+
const ccm_1 = require("../../ccm");
|
|
15
16
|
const fisherman_1 = __importDefault(require("../fisherman"));
|
|
16
17
|
/**
|
|
17
18
|
*
|
|
@@ -41,7 +42,7 @@ class Buster {
|
|
|
41
42
|
*/
|
|
42
43
|
async create() {
|
|
43
44
|
const fisherman = new fisherman_1.default(this.distro, this.installer, this.verbose);
|
|
44
|
-
await fisherman.
|
|
45
|
+
await fisherman.createCalamaresSettings(this.theme, this.isClone);
|
|
45
46
|
await fisherman.buildModule('partition', this.theme);
|
|
46
47
|
await fisherman.buildModule('mount');
|
|
47
48
|
await fisherman.moduleUnpackfs();
|
|
@@ -69,6 +70,15 @@ class Buster {
|
|
|
69
70
|
await fisherman.moduleRemoveuser(this.user_opt);
|
|
70
71
|
await fisherman.buildCalamaresModule('sources-yolk-undo', false);
|
|
71
72
|
await fisherman.buildCalamaresModule('cleanup', true);
|
|
73
|
+
/**
|
|
74
|
+
* custom calamares modules
|
|
75
|
+
*/
|
|
76
|
+
const steps = (0, ccm_1.ccm)();
|
|
77
|
+
if (steps.length > 0) {
|
|
78
|
+
for (const step of steps) {
|
|
79
|
+
await fisherman.buildCalamaresModule(step, true, this.theme);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
72
82
|
await fisherman.buildModule('umount');
|
|
73
83
|
await fisherman.moduleFinished();
|
|
74
84
|
}
|
|
@@ -11,6 +11,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.Focal = void 0;
|
|
13
13
|
const fisherman_1 = __importDefault(require("../fisherman"));
|
|
14
|
+
const ccm_1 = require("../../ccm");
|
|
14
15
|
/**
|
|
15
16
|
*
|
|
16
17
|
*/
|
|
@@ -39,7 +40,7 @@ class Focal {
|
|
|
39
40
|
*/
|
|
40
41
|
async create() {
|
|
41
42
|
const fisherman = new fisherman_1.default(this.distro, this.installer, this.verbose);
|
|
42
|
-
await fisherman.
|
|
43
|
+
await fisherman.createCalamaresSettings(this.theme, this.isClone);
|
|
43
44
|
await fisherman.buildModule('partition', this.theme);
|
|
44
45
|
await fisherman.buildModule('mount');
|
|
45
46
|
await fisherman.moduleUnpackfs();
|
|
@@ -67,6 +68,15 @@ class Focal {
|
|
|
67
68
|
await fisherman.buildCalamaresModule('sources-yolk', false);
|
|
68
69
|
await fisherman.buildCalamaresModule('sources-yolk-undo', false);
|
|
69
70
|
await fisherman.buildCalamaresModule('cleanup', true);
|
|
71
|
+
/**
|
|
72
|
+
* custom calamares modules
|
|
73
|
+
*/
|
|
74
|
+
const steps = (0, ccm_1.ccm)();
|
|
75
|
+
if (steps.length > 0) {
|
|
76
|
+
for (const step of steps) {
|
|
77
|
+
await fisherman.buildCalamaresModule(step, true, this.theme);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
70
80
|
await fisherman.buildModule('umount');
|
|
71
81
|
await fisherman.buildModule('finished');
|
|
72
82
|
}
|
|
@@ -39,7 +39,7 @@ class Jessie {
|
|
|
39
39
|
*/
|
|
40
40
|
async create() {
|
|
41
41
|
const fisherman = new fisherman_1.default(this.distro, this.installer, this.verbose);
|
|
42
|
-
await fisherman.
|
|
42
|
+
await fisherman.createCalamaresSettings(this.remix.branding);
|
|
43
43
|
await fisherman.buildModule('partition', this.remix.branding);
|
|
44
44
|
await fisherman.buildCalamaresModule('sources-yolk', true);
|
|
45
45
|
await fisherman.moduleRemoveuser(this.user_opt);
|
|
@@ -23,7 +23,7 @@ class Rolling {
|
|
|
23
23
|
* @param displaymanager
|
|
24
24
|
* @param verbose
|
|
25
25
|
*/
|
|
26
|
-
constructor(installer, remix, distro, user_opt, release = false, isClone = false, verbose = false) {
|
|
26
|
+
constructor(installer, remix, distro, user_opt, release = false, theme = 'eggs', isClone = false, verbose = false) {
|
|
27
27
|
this.installer = {};
|
|
28
28
|
this.release = false;
|
|
29
29
|
this.verbose = false;
|
|
@@ -34,6 +34,7 @@ class Rolling {
|
|
|
34
34
|
this.user_opt = user_opt;
|
|
35
35
|
this.verbose = verbose;
|
|
36
36
|
this.release = release;
|
|
37
|
+
this.theme = theme;
|
|
37
38
|
this.isClone = isClone;
|
|
38
39
|
}
|
|
39
40
|
/**
|
|
@@ -41,17 +42,17 @@ class Rolling {
|
|
|
41
42
|
*/
|
|
42
43
|
async create() {
|
|
43
44
|
const fisherman = new fisherman_1.default(this.distro, this.installer, this.verbose);
|
|
44
|
-
await fisherman.
|
|
45
|
-
await fisherman.buildModule('partition', this.
|
|
45
|
+
await fisherman.createCalamaresSettings(this.theme, this.isClone);
|
|
46
|
+
await fisherman.buildModule('partition', this.theme);
|
|
46
47
|
await fisherman.buildModule('mount');
|
|
47
48
|
await fisherman.moduleUnpackfs();
|
|
48
49
|
// await fisherman.buildCalamaresModule('sources-yolk', true)
|
|
49
50
|
// await fisherman.buildModule('machineid')
|
|
50
51
|
await fisherman.buildModule('fstab');
|
|
51
|
-
await fisherman.buildModule('locale', this.
|
|
52
|
+
await fisherman.buildModule('locale', this.theme);
|
|
52
53
|
await fisherman.buildModule('keyboard');
|
|
53
54
|
await fisherman.buildModule('localecfg');
|
|
54
|
-
await fisherman.buildModule('users', this.
|
|
55
|
+
await fisherman.buildModule('users', this.theme);
|
|
55
56
|
await fisherman.moduleDisplaymanager();
|
|
56
57
|
await fisherman.buildModule('networkcfg');
|
|
57
58
|
await fisherman.buildModule('hwclock');
|
|
@@ -27,13 +27,22 @@ class Fisherman {
|
|
|
27
27
|
/**
|
|
28
28
|
* write setting
|
|
29
29
|
*/
|
|
30
|
-
async
|
|
31
|
-
let branding =
|
|
32
|
-
|
|
33
|
-
|
|
30
|
+
async createCalamaresSettings(theme = 'eggs', isClone = false) {
|
|
31
|
+
let branding = theme;
|
|
32
|
+
let settingsSrc = this.installer.template + 'settings.yml';
|
|
33
|
+
if (theme.includes('/')) {
|
|
34
|
+
branding = theme.slice(Math.max(0, theme.lastIndexOf('/') + 1));
|
|
35
|
+
if (node_fs_1.default.existsSync(`${theme}/theme/calamares/settings.yml`)) {
|
|
36
|
+
settingsSrc = `${theme}/theme/calamares/settings.yml`;
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
console.log(`cannot find: ${theme}/theme/calamares/settings.yml`);
|
|
40
|
+
}
|
|
34
41
|
}
|
|
35
|
-
|
|
36
|
-
|
|
42
|
+
// console.log('theme: ' + theme)
|
|
43
|
+
// console.log('settingsSrc: ' + settingsSrc)
|
|
44
|
+
const settingsDest = this.installer.configuration + 'settings.conf';
|
|
45
|
+
shelljs_1.default.cp(settingsSrc, settingsDest);
|
|
37
46
|
let hasSystemd = '# ';
|
|
38
47
|
if (utils_1.default.isSystemd()) {
|
|
39
48
|
hasSystemd = '- ';
|
|
@@ -46,10 +55,10 @@ class Fisherman {
|
|
|
46
55
|
if ((0, displaymanager_1.displaymanager)() !== '') {
|
|
47
56
|
hasDisplaymanager = '- ';
|
|
48
57
|
}
|
|
49
|
-
shelljs_1.default.sed('-i', '{{hasSystemd}}', hasSystemd,
|
|
50
|
-
shelljs_1.default.sed('-i', '{{hasDisplaymanager}}', hasDisplaymanager,
|
|
51
|
-
shelljs_1.default.sed('-i', '{{branding}}', branding,
|
|
52
|
-
shelljs_1.default.sed('-i', '{{createUsers}}', createUsers,
|
|
58
|
+
shelljs_1.default.sed('-i', '{{hasSystemd}}', hasSystemd, settingsDest);
|
|
59
|
+
shelljs_1.default.sed('-i', '{{hasDisplaymanager}}', hasDisplaymanager, settingsDest);
|
|
60
|
+
shelljs_1.default.sed('-i', '{{branding}}', branding, settingsDest);
|
|
61
|
+
shelljs_1.default.sed('-i', '{{createUsers}}', createUsers, settingsDest);
|
|
53
62
|
}
|
|
54
63
|
/**
|
|
55
64
|
*
|
|
@@ -92,6 +101,8 @@ class Fisherman {
|
|
|
92
101
|
// console.log('creating calamares module ' + name)
|
|
93
102
|
let moduleSource = node_path_1.default.resolve(__dirname, this.installer.templateModules + name + '.yml');
|
|
94
103
|
/**
|
|
104
|
+
* Here we MUST revisit it and bring theme from wardrobe
|
|
105
|
+
*
|
|
95
106
|
* We need vendor here to have possibility to load custom modules for calamares
|
|
96
107
|
* the custom modules live in: /addons/vendor/theme/calamares/modules
|
|
97
108
|
* and - if exist - take priority on distro modules on /conf/distros/calamares/modules
|
|
@@ -132,13 +143,13 @@ class Fisherman {
|
|
|
132
143
|
* @param name
|
|
133
144
|
* @param isScript
|
|
134
145
|
*/
|
|
135
|
-
async buildCalamaresModule(name, isScript = true) {
|
|
136
|
-
|
|
146
|
+
async buildCalamaresModule(name, isScript = true, theme = 'eggs') {
|
|
147
|
+
let moduleTemplate = node_path_1.default.resolve(__dirname, this.installer.templateMultiarch + name);
|
|
148
|
+
if (theme !== 'eggs') {
|
|
149
|
+
moduleTemplate = theme + '/theme/calamares/calamares-modules/' + name;
|
|
150
|
+
}
|
|
137
151
|
const moduleDest = this.installer.multiarchModules + name;
|
|
138
152
|
const moduleScript = `/usr/sbin/${name}.sh`;
|
|
139
|
-
// console.log('moduleDest: ' + moduleDest)
|
|
140
|
-
// console.log('moduleTemplate: ' + moduleTemplate)
|
|
141
|
-
// console.log('moduleScript: ' + moduleScript)
|
|
142
153
|
if (this.verbose)
|
|
143
154
|
this.show(name, 'module', moduleDest);
|
|
144
155
|
if (!node_fs_1.default.existsSync(moduleDest)) {
|
|
@@ -19,7 +19,6 @@ const focal_1 = require("./distros/focal");
|
|
|
19
19
|
const bionic_1 = require("./distros/bionic");
|
|
20
20
|
const rolling_1 = require("./distros/rolling");
|
|
21
21
|
const installer_1 = require("./installer");
|
|
22
|
-
const utils_2 = require("../../lib/utils");
|
|
23
22
|
/**
|
|
24
23
|
*
|
|
25
24
|
*/
|
|
@@ -101,7 +100,7 @@ class Incubator {
|
|
|
101
100
|
* UBUNTU
|
|
102
101
|
*/
|
|
103
102
|
case 'bionic': {
|
|
104
|
-
const bionic = new bionic_1.Bionic(this.installer, this.remix, this.distro, this.user_opt, release, this.isClone, this.verbose);
|
|
103
|
+
const bionic = new bionic_1.Bionic(this.installer, this.remix, this.distro, this.user_opt, release, this.theme, this.isClone, this.verbose);
|
|
105
104
|
await bionic.create();
|
|
106
105
|
break;
|
|
107
106
|
}
|
|
@@ -124,7 +123,7 @@ class Incubator {
|
|
|
124
123
|
* Arch
|
|
125
124
|
*/
|
|
126
125
|
case 'rolling': {
|
|
127
|
-
const rolling = new rolling_1.Rolling(this.installer, this.remix, this.distro, this.user_opt, release, this.isClone, this.verbose);
|
|
126
|
+
const rolling = new rolling_1.Rolling(this.installer, this.remix, this.distro, this.user_opt, release, this.theme, this.isClone, this.verbose);
|
|
128
127
|
await rolling.create();
|
|
129
128
|
break;
|
|
130
129
|
}
|
|
@@ -201,14 +200,14 @@ class Incubator {
|
|
|
201
200
|
}
|
|
202
201
|
}
|
|
203
202
|
/**
|
|
204
|
-
*
|
|
203
|
+
* themes (only for calamares)
|
|
205
204
|
*/
|
|
206
205
|
if (this.installer.name === 'calamares') {
|
|
207
|
-
|
|
208
|
-
let calamaresBranding = node_path_1.default.resolve(__dirname, `../../../addons/${this.remix.branding}/theme/calamares/branding`);
|
|
206
|
+
let calamaresBranding = node_path_1.default.resolve(__dirname, `../../../addons/eggs/theme/calamares/branding`);
|
|
209
207
|
if (this.theme.includes('/')) {
|
|
210
208
|
calamaresBranding = `${this.theme}/theme/calamares/branding`;
|
|
211
209
|
}
|
|
210
|
+
// console.log(`calamaresBranding: ${calamaresBranding}`)
|
|
212
211
|
if (node_fs_1.default.existsSync(calamaresBranding)) {
|
|
213
212
|
if (!node_fs_1.default.existsSync(this.installer.configuration + `branding/${this.remix.branding}`)) {
|
|
214
213
|
try {
|
|
@@ -266,17 +265,6 @@ class Incubator {
|
|
|
266
265
|
const content = branding(this.remix, this.distro, this.verbose);
|
|
267
266
|
write(file, content, this.verbose);
|
|
268
267
|
}
|
|
269
|
-
/**
|
|
270
|
-
* non dovrebbe servire
|
|
271
|
-
*/
|
|
272
|
-
async createInstallDebian() {
|
|
273
|
-
const scriptInstallDebian = require('./calamares-modules/scripts/install-system.sh').installDebian;
|
|
274
|
-
const scriptDir = '/usr/bin/';
|
|
275
|
-
const scriptFile = scriptDir + 'install-system.sh';
|
|
276
|
-
const scriptContent = scriptInstallDebian();
|
|
277
|
-
write(scriptFile, scriptContent, this.verbose);
|
|
278
|
-
await (0, utils_2.exec)(`chmod +x ${scriptFile}`);
|
|
279
|
-
}
|
|
280
268
|
}
|
|
281
269
|
exports.default = Incubator;
|
|
282
270
|
/**
|
|
@@ -6,6 +6,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.installer = void 0;
|
|
7
7
|
const distro_1 = __importDefault(require("../../classes/distro"));
|
|
8
8
|
const pacman_1 = __importDefault(require("../../classes/pacman"));
|
|
9
|
+
/**
|
|
10
|
+
*
|
|
11
|
+
* @returns
|
|
12
|
+
*/
|
|
9
13
|
function installer() {
|
|
10
14
|
const installer = {};
|
|
11
15
|
if (pacman_1.default.packageIsInstalled('calamares')) {
|