Dress the naked

In this video I will give a demonstration of creation a remix starting from almost nothing - my remixes called naked - who consists in the clean debian netinstall plus addiction of eggs.

Can be interesting not only for desktop remixes but for server remixes too.

I hope you’ll enjoy it.

I can’t make this videos in english, but if You are interest to publish similar demonstrations in english or others languages, I will be happy to collaborate with you. Please, contact me at: piero.proietti@gmail.com

Perri's Brewery

Per lo sviluppo di eggs ho utilizzato dall’inizio il linguaggio javascript, cercando di limitare il più possibile la scrittura di codice bash. Nodejs, difatti, oltre ad essere versabile nell’ambito web, offre la possibilità di realizzare con uno sforzo relativo delle applicazioni a riga di comando.

Inizialmente lo utilizzavo “nature” senza altre aggiunte. Da un anno o due ho cominciato ad utilizzare il framework oclif per generare la struttura di eggs. Si risparmia tempo e fatica, inoltre vengono fuori delle possibilità che, inizialmente, uno manco si sogna.

Con il tempo sono passato quindi a typescript che, a mio avviso, offre una migliore pulizia, maggior controllo sul sorgente e la possibilità di avere un ottimo aiuto durante la scrittura del codice con suggerimenti e quant’altro.

Tra queste, l’automazione delle istruzioni sul README.md che poi sono riuscito ad includere anche nella versione del manuale con pagina man ed il fatto che è possibile esportare il programma non solo come pacchetto npm ma anche in diversi formati, tra cui quello che mi interessa il formato debian.

eggs difatti è cresciuto ed iniziato a camminare da solo e mi sono reso conto delle problematiche degli utenti che, spesso, non hanno nodejs installato e poca o nessuna intenzione di installarlo.

oclif-cli-dev offriva questa possibilità ed ho iniziato ad usarla estensivamente, al punto che attualmente utilizzo eggs quasi sempre nella versione pacchettizata debian, pur avendo spesso, nodejs installato. Si risolvono in questo modo anche problematiche di versione non sempre semplicissime da evitare, come la gestione della architettura i386 sulla quale l’ultima versione di node disponibile è la versione node8.

Naturalmente non si può pretendere tutto da uno strumento che crea pacchetti per debian, macos e windows!

L’esporatione nel formato pacchetto debian non prevede - al momento - gli script di pre e post installazione, così come quelli di pre e post rimozione. Inoltre, e la cosa avrebbe fatto comodo in particolare per eggs, non prevede la presenza di dipendenze nel pacchetto.

Proveniendo da un altro mondo, avrei preferito un mondo migliore, nel quale nodejs sia adottato allo stesso modo di Python per la realizzazione di script ed applicazioni. Ma memore di clipper - che pure includeva se stesso negli eseguibili generati - ho cominciato a rilasciare eggs anche come pacchetto debian con discreta soddisfazione degli utenti.

Estendere le caratteristiche del pacchetto debian creato da @oclif/dev-cli #

A questo punto, mi sono scontrato però con alcune problematiche del pacchetto rilasciato.

Non conoscevo ne’ la struttura e nemmeno - tutto sommato - come il pacchetto stesso veniva fuori, se non a grandi linee.

Con la collaborazione di un tester ed esperto mantainer ho cominciato a ricevere suggerimenti ed astruse - per me - richieste.

Fino che, ad un certo punto, un altro sviluppatore mi ha chiesto se potevo aggiungere uno script ad eggs per eseguire alcuni passaggi - soprattutto rimozione del codice precedente - di eggs stesso.

Ci ho pensato ed ho provato a spacchettare il pacchetto debian e vedere che cosa c’era dentro!

Da quello che ho capito la pacchettizzazione con oclif/dev-cli avviene abbastanza semplicemente, è presente una directory DEBIAN con dentro il solo file control. Mancando completamente i file preinst, postinst, prerm e postrm chiamati all’atto di installazione/aggiornamento/rimozione del pacchetto.

Ho provato ad aggiungerli e, dopo qualche prova a mano, ed un po’ di tentativi con bash sono giunto alla conclusione che poteva funzionare.

Sono quindi tornato al mio strumento preferito e, tutto sommato con pochissime righe di codice, ho codificato una grossa utilità.

Quindi eggs verrà rilasciato sempre con i file di pre e post installazione e di pre e post rimozione nonchè con il controllo delle dipendenze. Qualche operazione - tra cui un più fine controllo delle dipendenze e, forse, la gestione delle diverse versioni - fatta attualmente con nodejs e bash - potrà essere sostituita da una più estesa pacchettizzazione.

Conclusioni #

eggs, da adesso in poi, sarà sempre pacchetizzato con gli script di installazione rimozione ed il controllo delle dipendenze.

Basterà sottoporre il pacchetto debian generato da oclif/dev-cli all’azione degli script della perrisbrewery, inclusa in eggs stesso.

Prevedo. inoltre. di estenderlo in futuro includendo così diverse versione di pacchetto per ogni distribuzione.

Però già adesso - dato il precipuo funzionamento di eggs - che analizza le varie distribuzioni e risale ai pacchetti necessari - è già utile, apportando un maggiore e più semplice controllo dell’installazione e della rimozione del pacchetto permettendomi, inoltre, di soddisfare la curiosità per la scritta “Perri’s Brevery edition” presente, ormai da quasi un anno, sul pacchetto stesso.

Per cui, prima di ogni rilascio di eggs, i pacchetti passeranno nella famosa birreria e tra un doppio malto ed una chiacchiera tra amici, rinfrancati prenderanno il volo!

Cambio di versione #

Con l’occasione passeremo dalla versione 7.7.33 direttamente alla versione 7.8.10.1

Perri's Brewery

Updated eggs, revised commands and drop eggs i386

here we are

Here we are, with bad news. #

I start with the bad news: during this week I drop the eggs version for i386.

The problem is nodejs, we have version 14 LTS in amd64 and armel, but for i386 the last possible version is node 8.x.

Time is passing fast and when I started to update the npm packages in eggs, I saw who can’t yet compile eggs in node 8 anymore.

This is a great pity, becouse I know there are again users and distros interested to this version. At the moment, to continue to improve eggs, I decided to drop the i386 version.

Note: You can continue to use the last version, and for sureI will try later to compile it again. Same help is possible?

Good news! #

Today I found the way to compile eggs with node8 only for the pourpuse to get i386 version.

This is great, becouse peoples need again it!

I started a mail list in sourceforge, and describe on the last mail that was the solution. If you are interested you can subscribe it.

Now we have a man page build automatically, so always updated and on line with the sources.

Not only, we “sell” it in double versions: man and html. You can find it always update in our site too!

All npm packages were updated, so the oclif-plugins autocomplete, command not-found and everything are in order and don’t get you in panic, just for a mispell in a command or a flag: eggs will suggest the nearest command.

After long think, I renamed the command prerequisites to init. In all the way, you can use the old command too, there are two aliases for init: prerequisites or fertilization.

I did this becouse I put in init all the tasks eggs need to do to become operative. This reduce the commands list too, becouse now autocomplete and man are included in init and we reduce commands to learn.

Updated original guide italian #

Guida originale in italiano aggiornata al 30 gennaio 2021

I need same help for translations, contact me to propose yourself.

mom #

The script mom is continuing to improve and remain cli compatible. Don’t use more zenity anymore but whitail only - it is more rational - and I found enought cases where zenity is not installed (kde) and a bit too heavy to install on them.

mom

So, You are welcome to eggs-7.7.27 #

Next step will be probably the possibility to edit differents locales, locales_default and timezone. Is is already possible to edit /etc/penguins-eggs.d/eggs.yaml but I want to find a more simple way,

eggs-7.7.18

Una carrellata di novità e nuovi arrivi! #

Oltre agli abituali buxfix sul repository interno yolk che vi permette di reinstallare la vostra remix senza essere necessariamente connessi ad internet e, peraltro, con maggiore velocità e basso utilizzo di RAM, abbiamo raggiunto Ulyssa!

Quindi, a partire da questa versione è possibile remixare Linux Mint 20.1 Ulyssa, recentemente uscita ed indiscutibilmente un ottimo prodotto.

Personalmente, ho sempre amato cinnamon l’interfaccia di Mint ed è quella che maggiormente utilizzo dopo aver “dimenticato” KDE nel passaggio dalla versione 3 a quella attuale. Dovrei provare trinity il fork di KDE 3 che è risorto. In vero mi trovo benissimo con cinnamon ed aspetto - come tutti - il giorno che sorgerà una nuova interfaccia utilizzabile sia con con il tochiscreen che con il mouse.

ulyssa

Potete scaricare la versione di ulyssa linux mint 20.1, riprodotta ed aggiornata con eggs da sourceforge

In questo video potete vedere come customizzare ulteriormente questa remix o prendere esempio per customizzarne altre.

Video: Linux Mint Ulyana com o Penguin’s eggs, Um Programa Para Gerar Outra Distro Veja Como Fazer di ticofan.

Infine, grazie al suggerimento di un amico polacco, ho testato il remix di netrunner-core, una distro medio/leggera basata su KDE.

netrunner-core

Potete scaricare la remix di netrunner-core da sourceforge.

Nota. In questa versione non sono riuscito a far funzionare su liveCD il desktop environment originale sddm e l’ho sostituito con lightdm. Se qualcuno scopre il problema è pregato di segnalarlo issue #40. Grazie!

Manuale man, mom e dad GUI #

Naturalmente in questa versione trovate tutte le recenti novità, dal manuale di eggs in formato man, consultabile SEMPRE - sia su GUI che in ambiente CLI, con o senza connessione. Le due interfacce grafiche: mom e dad permettono un approccio più morbido all’utilizzo di eggs.

man

Video: #

dad

mom

Video: #

Buon divertimento e, se potete e volete, iscrivetevi al gruppo su Facebook o al forum su questo sito secondo le vostre preferenze.

Segnalate i problemi nelle issues di github.com e, perchè no, se potete date pure una occhiata al codice.

Non dimenticate, infine, di aggiungere una stella su github o una review su sourceforge.

Grazie!

mom-and-dad

mom

dad

Some videos are in our channel

Index #

Italiano #

Due interfacce grafiche per eggs #

Nel tentativo di semplificare l’uso e l’apprendimento di eggs ho realizzato due utili interfacce che - trattandosi di pinguini - sono state denominate mom (mamma) e dad (papà).

mom #

mom è un semplice script bash che gira sia su sistemi con interfaccia grafica, sia su sistemi CLI.

Consente di avere una guida visiva ai vari comandi, la selezione degli stessi ed il loro avvio, consentendo - quindi - un più semplice approccio ad eggs.

mom, non va mai chiamato con l’utente di root.

dad #

dad, invece, si utilizza sempre con sudo e ci conduce direttamente alla creazione della nostra iso.

Lascio il compito di illustrare meglio le due interfacce al filmato in basso. (Sono disponibili i sottotitoli nelle lingue: italiano, inglese, portoghese e spagnolo).

#

English #

english

Two graphical interfaces for eggs #

In an attempt to simplify the use and learning of eggs I have created two useful interfaces that - being penguins - have been named mom and dad.

mom #

mom is a simple bash script that runs on both GUI and CLI systems.

It provides a visual guide to various commands, the selection of commands and their startup, thus allowing an easier approach to eggs.

mom, it should never be called with the root user.

dad #

dad, instead, is always used with sudo and leads us directly to the creation of our iso.

I leave the task of better illustrating the two interfaces to the movie below. (Subtitles are available in Italian, English, Portuguese and Spanish).

#

Portuguese (BR) #

portugues

Duas interfaces gráficas para eggs #

Numa tentativa de simplificar o uso e o aprendizado do eggs, percebi duas interfaces úteis que - sendo pingüins - foram nomeadas mom (mãe) e dad (pai).

mom #

mom é um simples roteiro de bash que roda em ambos os sistemas GUI e CLI.

Permite ter um guia visual dos vários comandos, a seleção dos mesmos e seu lançamento, permitindo - então - uma aproximação mais fácil dos ovos.

mom, ela nunca deve ser chamada com o usuário root.

dad #

O dad, ao invés disso, é sempre usado com sudo e nos leva diretamente à criação de nossa iso.

Deixo a tarefa de ilustrar melhor as duas interfaces para o filme abaixo. (As legendas estão disponíveis em italiano, inglês, português e espanhol).

#

Espanol #

espanol

Dos interfaces gráficas para los huevos #

En un intento de simplificar el uso y aprendizaje de los huevos me he dado cuenta de dos útiles interfaces que - siendo pingüinos - han sido nombrados mamá y papá.

mamá #

mamá es un simple script bash que se ejecuta tanto en sistemas GUI como CLI.

Permite tener una guía visual de los distintos comandos, la selección de los mismos y su lanzamiento, permitiendo - entonces - un acercamiento más fácil a los huevos.

Mamá, nunca debe ser llamado con el usuario raíz.

Dad #

papá, en cambio, siempre se usa con el sudo y nos lleva directamente a la creación de nuestra iso.

Dejo la tarea de ilustrar mejor las dos interfaces de la película a continuación. (Los subtítulos están disponibles en italiano, inglés, portugués y español).

#

autocomplete

autocomplete

Index #

Italiano #

italiano

Autocomplete e command not found #

Una moderna applicazione cli contiene due utili funzioni, l’autocomplete e l’avvertimeno di comand not found, seguito dal suggerimento del comando più vicino.

eggs a partire dalla versione 7.7.0 contiene entrambe le caratteristiche, grazie ai plugin di oclif-dev con il quale è sviluppato.

Il risultato di autocomplete è che digitando eggs seguito da due tab, vi verranno esposte le opzioni disponibili.

1
2
3
4
5
6
7
artisan@demo:~$ eggs 
adapt help remove tools:skel
autocomplete info tools:clean tools:yolk
calamares install tools:initrd update
export:deb kill tools:locales
export:docs prerequisites tools:pve
export:iso produce tools:sanitize

mentre, digitando

1
eggs pr

seguito da tab, verranno mostrate le possibili opzioni:

1
2
3
artisan@demo:~$ eggs  pr
prerequisites produce
artisan@demo:~$ eggs pr

E così via per tutti i comandi.

D’altra parte la funziona command not found se rileva in ingresso un comando sconosciuto, ci suggerirà il comando più vicino.

1
2
3
artisan@demo:~$ eggs priduce
› Warning: priduce is not a eggs command.
Did you mean produce? [y/n]:

E’ anche possibile visualizzare tutti i flags disponibili per un comando dato:

1
2
3
4
5
artisan@demo:~$ eggs  produce --
--adapt --fast --ichoice --script --yolk
--basename --final --pve --theme
--compress --help --rsupport --verbose
artisan@demo:~$ eggs produce --

Installazione di autocomplete per l’utente corrente #

Per beneficiare della funzione autocomplete, tutto quello che dobbiamo fare è generare i file di configurazione, comando

1
eggs autocomplate bash

Che mostrerà la seguente schermata:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
artisan@demo:~$ eggs autocomplete
Building the autocomplete cache... done

Setup Instructions for EGGS CLI Autocomplete ---

1) Add the autocomplete env var to your bash profile and source it
$ printf "$(eggs autocomplete:script bash)" >> ~/.bashrc; source ~/.bashrc

NOTE: If your terminal starts as a login shell you may need to print the init script into ~/.bash_profile or ~/.profile.

2) Test it out, e.g.:
$ eggs <TAB><TAB> # Command completion
$ eggs command --<TAB><TAB> # Flag completion

Enjoy!

copiare il codice per aggiungere autocomplete al vostro profilo .bashrc

1
printf "$(eggs autocomplete:script bash)" >> ~/.bashrc; source ~/.bashrc

e lanciarla da terminale.

A questo punto digitate eggs seguito da due tab ed il gioco è fatto.

Installazione di autocomplete per tutti gli utenti #

Per utilizzare l’autocomplete di eggs per tutti gli utenti e, quindi, anche per l’utente live del liveCD, occorre copiare il file ~/.cache/penguins-eggs/autocomplete/functions/bash/eggs.bash in /etc/bash_complete.d:

1
sudo cp ~/.cache/penguins-eggs/autocomplete/functions/bash/eggs.bash /etc/bash_complete.d

A questo punto eggs autocomplete sarà disponibile per tutti gli utenti.

English #

english

Autocomplete and command not found #

A modern cli application contains two useful features, autocomplete and command not found warning, followed by the suggestion of the nearest command.

eggs starting from version 7.7.0 contains both features, thanks to oclif-dev plugins with which it is developed.

The result of autocomplete is that by typing eggs followed by two tabs, you will be shown the available options.

1
2
3
4
5
6
7
artisan@demo:~$ eggs 
adapt help remove tools:skel
autocomplete info tools:clean tools:yolk
calamares install tools:initrd update
export:deb kill tools:locales
export:docs prerequisites tools:pve
export:iso produce tools:sanitize

while typing

1
eggs pr

followed by tab, the possible options will be shown:

1
2
3
artisan@demo:~$ eggs  pr
prerequisites produce
artisan@demo:~$ eggs pr

And so on for all commands.

On the other hand, the command not found function, if it detects an unknown command as input, will suggest the nearest command.

1
2
3
artisan@demo:~$ eggs priduce
› Warning: priduce is not a eggs command.
Did you mean produce? [y/n]:

It is also possible to display all available flags for a given command:

1
2
3
4
5
artisan@demo:~$ eggs  produce --
--adapt --fast --ichoice --script --yolk
--basename --final --pve --theme
--compress --help --rsupport --verbose
artisan@demo:~$ eggs produce --

Installation of autocomplete for the current user #

To benefit from the autocomplete feature, all we have to do is generate the configuration files. Command:

1
eggs autocomplate bash

That will show the following screen:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
artisan@demo:~$ eggs autocomplete
Building the autocomplete cache... done

Setup Instructions for EGGS CLI Autocomplete ---

1) Add the autocomplete env var to your bash profile and source it
$ printf "$(eggs autocomplete:script bash)" >> ~/.bashrc; source ~/.bashrc

NOTE: If your terminal starts as a login shell you may need to print the init script into ~/.bash_profile or ~/.profile.

2) Test it out, e.g.:
$ eggs <TAB><TAB> # Command completion
$ eggs command --<TAB><TAB> # Flag completion

Enjoy!

Copy the code to add autocomplete to your .bashrc profile

1
printf "$(eggs autocomplete:script bash)" >> ~/.bashrc; source ~/.bashrc

and launch it from the terminal.

At this point type eggs followed by two tabs and you’re done.

Installing eggs autocomplete for all users #

To use the eggs autocomplete for all users and, therefore, also for the live user of the liveCD, you need to copy the file ~/.cache/penguins-eggs/autocomplete/functions/bash/eggs.bash in /etc/bash_complete.d:

1
sudo cp ~/.cache/penguins-eggs/autocomplete/functions/bash/eggs.bash /etc/bash_complete.d

At this point eggs autocomplete will be available for all users.

Portuguese (BR) #

portugues

Autocompletar e comando não encontrado #

Uma aplicação de linha de comando moderna contém duas características úteis, o autocompletar e o comando não encontrado aviso, seguido pela sugestão do comando mais próximo.

Eggs desde a versão 7.7.0 contém ambas as características, graças aos plugins oclif-dev com os quais é desenvolvido.

O resultado do autocompletar é que a digitação eggs seguida por duas abas mostrará as opções disponíveis.

1
2
3
4
5
6
7
artisan@demo:~$ eggs 
adapt help remove tools:skel
autocomplete info tools:clean tools:yolk
calamares install tools:initrd update
export:deb kill tools:locales
export:docs prerequisites tools:pve
export:iso produce tools:sanitize

durante a digitação

1
eggs pr

seguido de tabulação, as opções possíveis serão mostradas:

1
2
3
artisan@demo:~$ eggs  pr
prerequisites produce
artisan@demo:~$ eggs pr

E assim por diante para todos os comandos.

Por outro lado, se o comando não encontrado detecta um comando desconhecido, ele sugerirá o comando mais próximo.

1
2
3
artisan@demo:~$ eggs priduce
› Warning: priduce is not a eggs command.
Did you mean produce? [y/n]:

Também é possível exibir todas as bandeiras disponíveis para um determinado comando:

1
2
3
4
5
artisan@demo:~$ eggs  produce --
--adapt --fast --ichoice --script --yolk
--basename --final --pve --theme
--compress --help --rsupport --verbose
artisan@demo:~$ eggs produce --

Instalando o autocompletar para o usuário atual #

Para aproveitar o recurso de autocompletar, tudo o que precisamos fazer é gerar os arquivos de configuração, comandar

1
eggs autocomplete bash

Que mostrará a seguinte tela:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
artisan@demo:~$ eggs autocomplete
Building the autocomplete cache... done

Setup Instructions for EGGS CLI Autocomplete ---

1) Add the autocomplete env var to your bash profile and source it
$ printf "$(eggs autocomplete:script bash)" >> ~/.bashrc; source ~/.bashrc

NOTE: If your terminal starts as a login shell you may need to print the init script into ~/.bash_profile or ~/.profile.

2) Test it out, e.g.:
$ eggs <TAB><TAB> # Command completion
$ eggs command --<TAB><TAB> # Flag completion

Enjoy!

copie o código para adicionar o autocompletar ao seu perfil .bashrc

1
printf "$(eggs autocomplete:script bash)" >> ~/.bashrc; source ~/.bashrc

e o execute a partir do terminal.

Agora digite eggs seguidos de duas abas e está pronto!

Instalação eggs autocomplete para todos os usuários #

Para utilizar os eggs autocomplete para todos os usuários e, portanto, também para o usuário vivo do liveCD, é necessário copiar o arquivo
~/.cache/penguins-eggs/autocomplete/functions/bash/eggs.bash in /etc/bash_complete.d:

1
sudo cp ~/.cache/penguins-eggs/autocomplete/functions/bash/eggs.bash /etc/bash_complete.d

Neste momento, os eggs autocomple estarão disponíveis para todos os usuários.

themes

roma

Index #

English #

english

Where do the themes reside #

The themes are an addon of eggs.

They are seen by eggs in ```/etc/penguins-eggs.d/addons`` even though they reside in different positions depending on the type of installation and architecture in use.

From this link, they are compiled and copied into the relevant directories. For calamares /etc/calamares/branding.
You should not, therefore, directly change the branding of calamares in /etc/calamares, but create an addon in /etc/penguins-eggs.d/addons.

link /etc/penguins-eggs.d/addons #

In this directory you can find the addons of eggs. At the moment:

  • debian
  • deblinux
  • eggs
  • ufficiozero

Inside these folders (vendors) there are the actual addons.

For example:

1
ls /etc/penguins-eggs.d/addons/eggs
  • dwagent
  • installer-choice
  • proxmox-ve
  • theme

Themes #

Nowadays we only talk about themes, but the same goes for the other types of addons.

Let’s assume that our vendor is the tico user. Let’s create a folder ~/tico in our home.

We copy the content of /etc/penguins-eggs.d/eggs/theme into this one.

1
cp /etc/penguins-eggs.d/eggs/theme/ ~/tico -R

At this point we have to create a symbolic link in /etc/penguins-eggs.d/ to use our new theme.

First let’s see where the /etc/penguins-eggs/addons folder actually resides.

To find out simply give the command:

1
ls /etc/penguins-eggs.d/addons -l

discovering that, with deb installation and amd64 architecture, this is a link to the folder:

/usr/lib/penguins-eggs/addons

So, at this point we can create a link to our theme project:

1
sudo ln -s ~/tico /usr/lib/penguins-eggs/addons/tico

Well, we have achieved our goal.

NB: Following the update of eggs we may lose the link, which will have to be rebuilt, but not our customization.

Change the theme #

We can modify and keep in our home our theme project that will be seen by eggs as /etc/penguins-eggs.d/addons/tico.

Now we can start modifying the content of ~/tico/theme.

The structure of the theme #

In the theme folder there are three folders:

  • applications
  • artwork
  • branding

In applications we simply find the link debian-install.desktop, in artwork the icon debian-install.png and in branding we find the template for squid.

I don’t write long on applications and artwork, those who do remastering will do very well. We will talk about branding instead.

In branding there are two text files and some images.

  • branding.desc
  • show.qml

branding.desc is just a placeholder, it will be built from scratch directly from eggs.

show.qml, instead, is our presentation.

the various images: welcome.png and slide1.png, etc are the various figures that will scroll during the installation.

You can change everything to your liking.

NB: For information, see the documentation of calamari.

Using our theme #

To use our tico theme, we will simply have to specify the flag –theme vendor in produce.

1
sudo eggs produce -vf --theme tico

Translation #

Translated with the free version of the translator - www.DeepL.com/Translator

If you want to contribute to the translation to your language, you can download the content of this site with git. Correct it and send it to the author piero.proietti.

Thanks.

Italiano #

italiano

Dove risiedono i temi #

I temi sono un addon di eggs.

Essi sono visti da eggs in /etc/penguins-eggs.d/addons pur risiedendo in differenti posizioni a seconda del tipo di installazione e della architettura in uso.

Da questo link, vengono compilati e copiani nelle directory di pertinenza. Per calamares /etc/calamares/branding.

Non si deve, quindi, cambiare direttamente il branding di calamares in /etc/calamares, ma creare un addon in /etc/penguins-eggs.d/addons.

link /etc/penguins-eggs.d/addons #

In questa directory puoi trovare, appunto, gli addons di eggs. Al momento:

  • debian
  • deblinux
  • eggs
  • ufficiozero

All’interno di queste cartelle (vendor) ci sono gli addons veri e propri.

Ad esempio:

1
ls /etc/penguins-eggs.d/addons/eggs
  • dwagent
  • installer-choice
  • proxmox-ve
  • theme

I temi #

Oggi parliamo solo di temi, ma lo stesso vale anche per gli altri tipi di addon.

Supponiamo che il nostro vendor sia l’utente tico. Creiamo, quindi, una cartella ~/tico nella nostra home.

Copiamo in questa il contenuto di /etc/penguins-eggs.d/eggs/theme.

1
cp /etc/penguins-eggs.d/eggs/theme/ ~/tico -R

A questo punto dobbiamo creare un collegamento simbolico in /etc/penguins-eggs.d/ per poter utilizzare il nostro nuovo tema.

Per prima cosa vediamo dove risiede effettivamente la cartella /etc/penguins-eggs/addons.

Per scoprirlo daremo semplicemente il comando:

1
ls /etc/penguins-eggs.d/addons -l

scoprendo che, con installazione deb ed architettura amd64, questo è un link alla cartella:

/usr/lib/penguins-eggs/addons

Quindi, a questo punto possiamo creare un link al nostro progetto di tema:

1
sudo ln -s ~/tico /usr/lib/penguins-eggs/addons/tico

Bene, abbiamo raggiunto il nostro scopo.

NB: A seguito dell’aggiornamento di eggs potremo perdere il link, cha andrà rifatto, ma non la nostra customizzazione.

Modifica del tema #

Possiamo modificare e conservare nella nostra home il nostro progetto di tema che sarà visto da eggs come /etc/penguins-eggs.d/addons/tico.

Ora possiamo iniziare a modificare il contenuto di ~/tico/theme.

La struttura del tema #

Nella cartella theme ci sono tre cartelle:

  • applications
  • artwork
  • branding

In applications troviamo semplicemente il link debian-install.desktop, in artwork l’icona debian-install.png mentre in branding troviamo il template per calamares.

Non mi dilungo su applications ed artwork, chi si occupa di rimasterizzazione se la caverà egregiamente. Parleremo invece di branding.

In branding sono presenti due file di testo ed alcune immagini.

  • branding.desc
  • show.qml

branding.desc è solamente un segnaposto, sarà costruito da zero direttamente da eggs.

show.qml, invece, è la nostra presentazione.

le varie immagini: welcome.png e slide1.png, etc sono invece le varie figure che scorrerenno durante l’installazione.

Potete cambiare tutto a vostro piacimento.

NB: Per informazioni, consultate la documentazione di calamares.

Uso del nostro tema #

Per usare il nostro tema tico, dovremo semplicemente specificare il flag –theme vendor in produce.

1
sudo eggs produce -vf --theme tico

Portuguese (BR) #

portugues

Onde residem os temas #

Os temas são um suplemento de eggs.

Eles são vistos por eggs em /etc/penguins-eggs.d/addons enquanto residem em locais diferentes, dependendo do tipo de instalação e da arquitetura em uso.

A partir deste link, eles são compilados e copiados para os diretórios relevantes. Para calamares /etc/calamares/branding.

Portanto, você não deve alterar diretamente a marca das lulas em /etc/calamares, mas criar um addon em /etc/penguins-eggs.d/addons.

link /etc/penguins-eggs.d/addons #

Neste diretório você pode encontrar, de fato, os suplementos de eggs. No momento:

  • debian
  • deblinux
  • eggs
  • ufficiozero

Dentro destas pastas (vendors) estão os próprios addons.

Por exemplo:

1
ls /etc/penguins-eggs.d/addons/eggs
  • dwagent
  • installer-choice
  • proxmox-ve
  • theme

Temas #

Hoje estamos falando apenas de temas, mas o mesmo vale para os outros tipos de adições.

Vamos assumir que nosso fornecedor é o usuário tico. Vamos criar uma pasta ~/tico em nossa casa.

Copiamos o conteúdo de /etc/penguins-eggs.d/eggs/theme para este aqui.

1
cp /etc/penguins-eggs.d/eggs/theme/ ~/tico -R

Neste ponto, temos que criar um link simbólico em /etc/penguins-eggs.d/ para usar nosso novo tema.

Primeiro vamos ver onde realmente reside a pasta /etc/penguins-eggs/addons.

Para saber, basta dar o comando:

1
ls /etc/penguins-eggs.d/addons -l

descobrindo que, com a instalação da deb e a arquitetura amd64, este é um link para a pasta:

/usr/lib/penguins-eggs/addons

Assim, neste momento, podemos criar um link para nosso projeto temático:

1
sudo ln -s ~/tico /usr/lib/penguins-eggs/addons/tico

Bem, nós atingimos nosso objetivo.

NB: Após a atualização dos eggs podemos perder o elo, que precisará ser reconstruído, mas não nossa customização.

Mude o tema #

Podemos modificar e manter em nossa casa nosso projeto temático que será visto pelo eggs como /etc/penguins-eggs.d/addons/tico.

Agora podemos começar a modificar o conteúdo de ~/tico/tema.

A estrutura do tema #

Há três pastas na pasta temática:

  • applications
  • artwork
  • branding

Em applications nós simplesmente encontramos o link debian-install.desktop, em artwork encontramos o icon debian-install.png e em branding encontramos o modelo para lula.

Não me detenho em applications e artwork, aqueles que lidam com remasterização se sairão muito bem. Em vez disso, falaremos sobre branding.

Em branding há dois arquivos de texto e algumas imagens.

  • branding.desc
  • show.qml

O branding.desc é apenas um suporte de local, ele será construído a partir do zero diretamente do eggs.

show.qml, ao invés disso, é nossa apresentação.

as várias imagens: welcome.png e slide1.png, etc. são as várias figuras que irão rolar durante a instalação.

Você pode mudar tudo à sua vontade.

NB: Para informações, consulte a documentação de calamares.

Usando nosso tema #

Para utilizar nosso tema tico, teremos simplesmente que especificar a bandeira –theme tico.

1
sudo eggs produce -vf --theme tico

Tradução #

Traduzido com a versão gratuita do tradutor - www.DeepL.com/Translator

Se você quiser contribuir para a tradução para seu idioma, você pode baixar o conteúdo deste site com git. Corrigi-lo e enviá-lo ao autor piero.proietti.

Obrigado.

mx-linux

eggs-7.6.78 #

Please note what this project is in no way connected to MX Linux in any official way, it’s just my personal experiment.

I am trying to port eggs to mx-linux.

At the moment I have managed to remaster mx-linux with eggs and reinstall it with calamares.

mx-linux has an excellent program for creating system snapshots. Furthermore, mx-linux has an excellent mx-installer installation program, with a graphical interface and a cli installer.

Both mx-snapshot and eggs are derived, with extensive modifications, from the same software: reftracta-snapshot by fsmithred.

Why bring eggs to mx if after all this distribution already has all the necessary tools?

A first reason could be to get familiar with their installer and make it available on other distributions.

A second reason is that this distribution is based on the antiX scripts which are the most versatile as regards the possibility of installing linux on USB sticks with the possibility of having a system that can always be updated at hand.

At the moment I can only ensure that the snapshot creation with eggs and its installation with calamares will work with minor problems who I hope to solve soon.

We still have a long way to go …

mx-linux

Here You can find a short eggs presentation.

More informations #

Copyright and licenses #

Copyright (c) 2017, 2020 Piero Proietti, dual licensed under the MIT or GPL Version 2 licenses.

basket

Where are you going to get the eggs? Introducing basket. #

basket

Index #

Italiano #

italiano

Dove andate a prendere le uova? #

La maggior parte dei programmi utilizzati da una distribuzione risiede nelle repository della stessa.

eggs è differente, sia perchè p un software relativamente giovane - le uniche repository attiva al momento sono quelle del progetto ufficiozero.org - e perchè, proprio per essere stato concepito per essere compatibile con più distribuzioni Linux, è nato - per così dire - figlio di una madre ignota!

Aspettare di avere eggs direttamente nella repository della propria distribuzione o creare una repository per eggs stesso, dove andare a scaricarlo?

Dove andate normalmente a cercare le uova più fresche?

E così, come sempre, andrete a cercare le uova nel basket (cestino).

Il basker per gli aggiornamenti di eggs è attualmente composto di due server, in uno sono allocati i file *.deb di eggs nelle varie versioni, mentre sul secondo è attivo un servizio che fornisce ad eggs le informazione su dove aggiornare e da dove scaricare l’aggiornamento.

Il risultato finale è che, dato il comando:

sudo eggs update.

e selezionando basket come metodo di aggiornamento, vi verranno proposte le varie versioni che, se selezionate, forniranno il link per il download del pacchetto e lo installeranno automaticamente.

Un metodo semplice e pulito per stare aggiornati. También

A Roma potremmo dire: “proprio da figli de puttana!

English #

english

Where are you going to get the eggs? #

Most of the programs of a distribution resides in the repositories of the same.

Eggs is different, both because it is a relatively young program - the only currently active repository I know of is ufficiozero.org - and because, being born with the purpose of being compatible with multiple Linux distributions, it was born - so to speak - from an unknown mother!

Waiting to have eggs directly in the distribution used, or to create a repository for eggs itself, where are we going to get eggs?

So, like everyone else, we’re going to get eggs from the basket.

The basket for eggs is actually composed of two independent servers, on one are located the *.deb files of eggs in the various versions, while on the second is active a service that provides eggs with information about updates and where to find them.

The final result is that by entering the command:

sudo eggs update.

and selecting basket as the upgrade method, we will be offered the various versions that, if selected, will provide the download address, download the package and install it automatically.

A clean and effective system to stay up to date.

In Rome we can say “proprio da figli de puttana!

Translation #

Translated with the free version of the translator - www.DeepL.com/Translator

If you want to contribute to the translation to your language, you can download the content of this site with git. Correct it and send it to the author piero.proietti.

Thanks.

Portuguese (BR) #

portugues

Onde você vai conseguir os ovos? #

A maioria dos programas utilizados por uma distribuição reside em seus repositórios.

eggs é diferente, tanto porque es um software relativamente jovem - os únicos repositórios ativos no momento são os do projeto ufficiozero.org - como porque, só porque foi projetado para ser compatível com várias distribuições Linux, nasceu - por assim dizer - o filho de uma mãe desconhecida!

Esperando para ter ovos diretamente no repositório de sua distribuição ou criar um repositório para os próprios eggs, onde fazer o download?

Aonde você normalmente vai para procurar os ovos mais frescos?

E assim, como sempre, você irá à procura de ovos na basket (cesta).

O basket para atualizações de eggs é atualmente composto de dois servidores, em um estão alocados os arquivos *.deb de eggs nas várias versões, enquanto no segundo está ativo um serviço que fornece aos eggs informações sobre onde atualizar e onde baixar a atualização.

O resultado final é que, dado o comando:

sudo eggs update

e selecionando basket como método de atualização, serão oferecidas as várias versões que, se selecionadas, fornecerão o link para baixar o pacote e instalá-lo automaticamente.

Um método simples e limpo para se manter atualizado. También

Em Roma, poderíamos dizer: “proprio da figli de puttana!

Tradução #

Traduzido com a versão gratuita do tradutor - www.DeepL.com/Translator

Se você quiser contribuir para a tradução para seu idioma, você pode baixar o conteúdo deste site com git. Corrigi-lo e enviá-lo ao autor piero.proietti.

Obrigado.

update

penguins-eggs presentation

presentation

Index #

English #

english

For some time now, we have been missing a valid Linux remastering program.

I have used remastersys, systemback, refracta, uck, etc. over the years, but for some years there was a lack of a practical software suitable for the purpose of building remixes - personal or not - to be distributed to friends or to make specialized vertical versions. I’m thinking of the various specialized distros, musical and other.

Well, the time is now ripe and a new remastering system has arrived and is also mature and stable penguins-eggs.

penguins-eggs is a remastering tool, allows you to make your own version of Linux and is compatible with:

  • Debian 10 (buster)
  • Debian 11 (bullseye)
  • Devuan beowulf
  • Deepin 20
  • Linux Mint 19.3 (tricia)
  • Linux Mint 20.0 (ulyana)
  • Ubunti 18.4 (bionic) LTS
  • Ubuntu 20.4 (focal) LTS
  • Ubuntu 20.10 (groovy)

THE CHARACTERISTICS OF PENGUINS-EGGS #

It is a tool that allows the installation of the livecd with the graphic installer calamares, which automatically takes care of the configuration. It is also possible to customize the appearance of the installer through themes.

Thanks to a small repository on the livecd, you can install the system even without internet connection.

It includes tools for cleaning the apt file and for the log files.

For Debian buster, Debian bullseye, Ubuntu focal there are remixes called naked on which no graphical interface is installed. Excellent as a boot point for your customization.

It works and you can find numerous examples of distros remastered with eggs directly on the penguins-eggs page of sourceforge.
It doesn’t come from nothing, the first commit is in 2017, now three years ago.

USER MANUAL AND INSTRUCTIONS #

You can find the user manual in differnt languages english, italiano, português
and informations, curiosities, forum.

There is a series of easy video terminal examples too.

Translation #

Translated with the free version of the translator - www.DeepL.com/Translator

If you want to contribute to the translation to your language, you can download the content of this site with git. Correct it and send it to the author piero.proietti.

Thanks.

Italiano #

italiano

Da qualche tempo abbiamo tutti sentito l’esigenza di un valido software di rimasterizzazione per Linux.

Personalmente ho usato remastersys, systemback, refracta, uck, etc per anni, ma da qualche anno c’è stata una mancanza di un software pratico per la costruzione di una propria remix - sia personale che pubblica - da distribuire ad amici o farci una versione specializzata. Penso a distro specializzate ad esempio per la musica ed altro.

Bene, questo tempo è finito ed un nuovo strumento di rimasterizzazione è giunto ed è maturo e stabile penguins-eggs.

penguins-eggs è un software di rimasterizzazione che ti permette di creare la tua propria versione di Linux ed è compatibile con:

  • Debian 10 (buster)
  • Debian 11 (bullseye)
  • Devuan beowulf
  • Deepin 20
  • Linux Mint 19.3 (tricia)
  • Linux Mint 20.0 (ulyana)
  • Ubunti 18.4 (bionic) LTS
  • Ubuntu 20.4 (focal) LTS

Le caratteristiche di penguins-eggs #

penguins-eggs permette l’installazione del livecd creato con un installer grafico (calamares), del quale automaticamente crea la configurazione. E’ possibile, inoltre, customizzarne l’aspetto attraverso la creazione di temi propri.

Grazie ad una piccola repository locale sul livecd, potrete installare il vostro sistema anche in assenza di connessione internet.

Include un tool per la pulizia della cache apt e dei file di log.

Per Debian buster, Debian bullseye, Ubuntu focal sono disponibili delle remix denomanite naked (nude) nelle quali non è installata alcuna interfaccia grafica. Queste sono degli eccellenti punti di partenza per la vostra customizzazione.

Funziona e potete trovare numerosi esempi di distro rimasterizzate con eggs direttamente dalla pagina penguins-eggs di sourgeforge.

Non viene dal nulla, il primo commit è del 2017, ormai tre anni orsono,

Manuale utente ed istruzioni #

Potete trovare il manuale utente in differenti lingue english, italiano, português ed informazioni, curiosità. forum.

C’è pure una serie di facili esempi di sessioni al terminale.

Portuguese (BR) #

portugues

Há algum tempo todos nós sentimos a necessidade de um bom software de remasterização para Linux.

Pessoalmente tenho usado remastersys, systemback, refracta, uck, etc. por anos, mas há alguns anos tem havido uma falta de software prático para construir o próprio remix - tanto pessoal quanto público - para distribuir a amigos ou fazer uma versão especializada. Estou pensando em distros especializados para música e muito mais.

Bem, desta vez acabou e uma nova ferramenta de remasterização chegou e é madura e estável *penguins-eggs**. O

penguins-eggs é um software de remasterização que permite a você criar sua própria versão do Linux e é compatível com ele:

  • Debian 10 (buster)
  • Debian 11 (bullseye)
  • Devuan beowulf
  • Deepin 20
  • Linux Mint 19.3 (tricia)
  • Linux Mint 20.0 (ulyana)
  • Ubunti 18.4 (bionic) LTS
  • Ubuntu 20.4 (focal) LTS
  • Ubuntu 20.10 (groovy)

As características dos penguins-eggs #

penguins-eggs permite a instalação do livecd criado com um instalador gráfico (calamares), do qual se cria automaticamente a configuração. Também é possível personalizar sua aparência, criando seus próprios temas.

Graças a um pequeno repositório local no livecd, você pode instalar seu sistema mesmo sem conexão à Internet.

Inclui uma ferramenta para a limpeza do cache apt e dos arquivos de log.

Para Debian buster, Debian bullseye, Ubuntu focal, há remixes chamados naked (nua) nos quais não há interface gráfica instalada. Estes são excelentes pontos de partida para sua personalização.

Funciona e você pode encontrar inúmeros exemplos de distros remasterizados com eggs diretamente da página de penguins-eggs de sourgeforge.

Não vem do nada, o primeiro commit é de 2017, faz agora três anos,

Manual do usuário e instruções #

Você pode encontrar o manual do usuário em diferentes idiomas english, italiano, português e informações, curiosidades. fórum.

Há também vários exemplos fáceis de sessões em terminal.

Tradução #

Traduzido com a versão gratuita do tradutor - www.DeepL.com/Translator

Se você quiser contribuir para a tradução para seu idioma, você pode baixar o conteúdo deste site com git. Corrigi-lo e enviá-lo ao autor piero.proietti.

Obrigado.