|Piero Proietti 2d1a5b91cf||4 days ago|
|.vscode||9 months ago|
|addons||2 months ago|
|assets||2 months ago|
|bin||6 months ago|
|conf||2 weeks ago|
|documents||2 weeks ago|
|g4||4 months ago|
|sourceforge||4 days ago|
|src||1 week ago|
|test||2 months ago|
|.editorconfig||9 months ago|
|.eslintignore||5 months ago|
|.eslintrc||5 months ago|
|.gitignore||8 months ago|
|.gitpod.yml||9 months ago|
|.npmignore||3 years ago|
|.prettierrc||2 months ago|
|LICENSE||9 months ago|
|README.md||1 week ago|
|changelog.md||1 week ago|
|eggs||7 months ago|
|mtab-eggs.txt||2 weeks ago|
|mtab-mx.txt||2 weeks ago|
|oclif-tarball-config.js||5 months ago|
|package-lock.json||1 week ago|
|package.json||1 week ago|
|test.ts||5 months ago|
|tsconfig.json||9 months ago|
penguins-eggs is a console utility, in active development, who let you to remaster your system and redistribuite it as iso images or from the lan via PXE remote boot.
The scope of this project is to implement the process of remastering your version of Linux, generate it as ISO image to burn on a CD/DVD or copy to a usb key to boot your system. You can also boot your egg - via remote boot - on your LAN. You can easily install your live system with gui calamares installer or eggs cli installer.
All it is written in pure typescript, so ideally can be used with differents Linux distros. Yes, there are big differences about package manager used, but not so much in the way to work of bash and various programs used to build the iso.
penguins-eggs, at the moment 2020 november 2 is a mature tool and is extremely usefull, You can easily create your organization/school version of Linux and deploy it on your LAN, give it to your friends as usb key or publish yours eggs in the internet!
Try penguins-eggs yes, it is a console utility - no GUI - but don’t be scared, penguins-eggs is a console command - really very simple - if you are able to open a terminal, you can use it and yours final users will enjoy of full gui and pratical installer to install your livecd.
Starting with version 7.6.x, an addons architecture has been added to eggs, that allows third parties to develop extensions. Note that we currently have an extension for the theme that includes both calamares branding and installer link and icon. In addition, also as addon has been developed others addons, to chosen hoosing between GUI or CLI installation, adapd video resolution, etc.
yolk so called - staying on the subject of eggs - is a local repository included in the livecd that contains a minimum of indispensable packages during installation. Thanks to yolk, you can safely install your system without the need for an internet connection.
Eggs is born on Debian strecth/buster, full support Debian bullseys, Devuan beowulf, Ubuntu focal, bionic and derivatives. I usually try it against Debian buster, Devuan beowulf, Linux Mint 19.3 tricia (bionic derivated) and Linux Mint 20 ulyana (focal derivated) before releases. I tried it successfully in LMDE 4 debbie, and deepin. Eggs, generally must work with all the derivates from that distros.
Some iso images remastered with eggs are in the sourceforge page of the project.
You can use the same package for all distributions using deb, naturally choosing the appropriate architecture (i386/amd64).
eggs is released as deb package and npm package. If you use nodejs npm version can be indicated, most of users need just deb version.
eggs is released deb packages for i386 and amd64 architectures.
sudo dpkg -i eggs_7.6.65-1_amd64.deb
or, on a i386 system:
sudo dpkg -i eggs_7.6.65-1_i386.deb
The fastest way to update is to use the flag -i in update. Eggs let you to select the version to install and install it.
sudo eggs update -i
Of course, if your distro include eggs in the repositury, you can use apt too.
Note about deb packages You can use the same package for all distributions using deb, naturally choosing the appropriate architecture (i386/amd64).
If you have nodejs installed, you can install penguins-eggs with the utility npm (node package manager).
Simply copy and past the following lines:
sudo npm config set unsafe-perm true
sudo npm i penguins-eggs@latest -g
sudo eggs update
$ npm install -g penguins-eggs $ eggs COMMAND running command... $ eggs (-v|--version|version) penguins-eggs/7.6.79 linux-x64 node-v14.15.0 $ eggs --help [COMMAND] USAGE $ eggs COMMAND ...
eggs help [COMMAND]
adapt monitor resolution for VM only
USAGE $ eggs adapt OPTIONS -h, --help show CLI help -v, --verbose ALIASES $ eggs adjust
See code: src/commands/adapt.ts
calamares or install or configure it
USAGE $ eggs calamares OPTIONS -h, --help show CLI help -i, --install install calamares and it's dependencies -v, --verbose --final final: remove eggs prerequisites, calamares and all it's dependencies --theme=theme theme/branding for eggs and calamares EXAMPLES ~$ sudo eggs calamares create/renew calamares configuration's files ~$ sudo eggs calamares -i install calamares and create it's configuration's files
See code: src/commands/calamares.ts
export package eggs-v7-6-x-1.deb in the destination host
USAGE $ eggs export:deb OPTIONS -c, --clean remove old .deb before to copy -h, --help show CLI help
See code: src/commands/export/deb.ts
remove and export docType documentation of the sources in the destination host
USAGE $ eggs export:docs OPTIONS -h, --help show CLI help
See code: src/commands/export/docs.ts
export iso in the destination host
USAGE $ eggs export:iso OPTIONS -c, --clean delete old ISOs before to copy -h, --help show CLI help
See code: src/commands/export/iso.ts
eggs help [COMMAND]
display help for eggs
USAGE $ eggs help [COMMAND] ARGUMENTS COMMAND command to show help for OPTIONS --all see all commands in CLI
See code: @oclif/plugin-help
informations about system and eggs
USAGE $ eggs info EXAMPLE $ eggs info You will find here informations about penguin's eggs!
See code: src/commands/info.ts
eggs installer - (the egg became penguin)
USAGE $ eggs install OPTIONS -c, --cli try to use antiX installer (cli) -g, --gui use Calamares installer (gui) -h, --info show CLI help -l, --lvmremove remove lvm /dev/pve -m, --mx try to use MX installer (gui) -u, --umount umount devices -v, --verbose verbose ALIASES $ eggs hatch EXAMPLE $ eggs install Install the system with eggs cli installer(default)
See code: src/commands/install.ts
kill the eggs/free the nest
USAGE $ eggs kill OPTIONS -h, --help show CLI help -v, --verbose verbose EXAMPLE $ eggs kill kill the eggs/free the nest
See code: src/commands/kill.ts
install packages prerequisites to run eggs
USAGE $ eggs prerequisites OPTIONS -c, --configuration create configuration's files -h, --help show CLI help -l, --links create links -v, --verbose verbose EXAMPLES ~$ eggs prerequisites install prerequisites and create configuration files sudo eggs prerequisites -c create configuration's file
See code: src/commands/prerequisites.ts
the system produce an egg: livecd creation.
USAGE $ eggs produce OPTIONS -b, --basename=basename basename egg -c, --compress max compression -f, --fast fast compression -h, --help show CLI help -s, --script script mode. Generate scripts to manage iso build -v, --verbose verbose -y, --yolk -y force the renew of the local repository yolk --adapt adapt video resolution in VM --final final: remove eggs prerequisites, calamares and all it's dependencies --ichoice allows the user to choose the installation type cli/gui --pve administration of virtual machines (Proxmox-VE) --rsupport remote support via dwagent --theme=theme theme/branding for eggs and calamares ALIASES $ eggs spawn $ eggs lay EXAMPLES $ sudo eggs produce produce an ISO called [hostname]-[arch]-YYYY-MM-DD_HHMM.iso, compressed xz (standard compression). If hostname=ugo and arch=i386 ugo-x86-2020-08-25_1215.iso $ sudo eggs produce -v the same as the previuos, but with more explicative output $ sudo eggs produce -vf the same as the previuos, compression lz4 (fast compression, but about 30% less compressed compared xz standard) $ sudo eggs produce -vc the same as the previuos, compression xz -Xbcj x86 (max compression, about 10% more compressed compared xz standard) $ sudo eggs produce -vf --basename leo --theme debian --adapt produce an ISO called leo-i386-2020-08-25_1215.iso compression lz4, using Debian theme and link to adapt $ sudo eggs produce -v --basename leo --theme debian --adapt produce an ISO called leo-i386-2020-08-25_1215.iso compression xz, using Debian theme and link to adapt $ sudo eggs produce -v --basename leo --rsupport produce an ISO called leo-i386-2020-08-25_1215.iso compression xz, using eggs theme and link to dwagent $ sudo eggs produce -vs --basename leo --rsupport produce scripts to build an ISO as the previus example. Scripts can be found in /home/eggs/ovarium and you can customize all you need
See code: src/commands/produce.ts
remove all packages installed as prerequisites, calamares and configurations
USAGE $ eggs sterilize OPTIONS -h, --help show CLI help -v, --verbose verbose
See code: src/commands/sterilize.ts
clean system log, apt, etc
USAGE $ eggs tools:clean OPTIONS -h, --help show CLI help -v, --verbose verbose
See code: src/commands/tools/clean.ts
USAGE $ eggs tools:initrd OPTIONS -h, --help show CLI help -v, --verbose --check=check check if necessary to clean initrd.img --clean=clean clean the initrd.img
See code: src/commands/tools/initrd.ts
USAGE $ eggs tools:locales OPTIONS -h, --help show CLI help -r, --reinstall reinstall locales -v, --verbose verbose
See code: src/commands/tools/locales.ts
USAGE $ eggs tools:sanitize OPTIONS -h, --help show CLI help
See code: src/commands/tools/sanitize.ts
update skel from home configuration
USAGE $ eggs tools:skel OPTIONS -h, --help show CLI help -u, --user=user user to be used -v, --verbose EXAMPLE $ eggs skel --user mauro desktop configuration of user mauro will get used as default
See code: src/commands/tools/skel.ts
configure eggs to install without internet
USAGE $ eggs tools:yolk OPTIONS -h, --help show CLI help -v, --verbose EXAMPLE $ eggs yolk -v
See code: src/commands/tools/yolk.ts
update the penguin’s eggs tool.
USAGE $ eggs update OPTIONS -a, --apt if eggs package is .deb, update from distro repositories -b, --basket if eggs package is .deb, update from eggs basket -h, --help show CLI help -n, --npm if eggs package is .npm, update from npmjs.com -v, --verbose verbose DESCRIPTION This method always works, both with npm and deb packages. EXAMPLE $ eggs update update/upgrade the penguin's eggs tool
See code: src/commands/update.ts
No need other configurations, penguins-eggs are battery included or better, as in the real, live is inside! :-D
Copyright (c) 2017, 2020 Piero Proietti, dual licensed under the MIT or GPL Version 2 licenses.