Passa al contenuto principale

way to fedora

· 3 minuti di lettura
Piero Proietti
penguins-eggs author
Deutsch English Español  Français Italiano Polska  Portuguese  Български  Русский  Українська  やまと  中国  فارسی 

E così, ridendo e scherzando è finita l'estate ed è maturato l'esordio di fedora 40 su penguins-eggs!

E' stata una avventura difficile, anche se ormai il fatto di lavorare con più distribuzioni comincia ad essere un aiuto invece che uno svantaggio, le conoscenze fatte cercando di adattare Alpine mi sono risultate utili anche per Fedora.

In questi mesi ho lavorato in contemporanea per Alpine, Fedora ed OpenSuSE e naturalmente su Debian ed Arch per cercare di venirne a capo.

Alpine è stato importante sia per la leggerezza, sia perchè essendo diverso mi ha costretto ad immengermi in mkinitfs ed a scrivere sidecar, per avviarlo. Dracut, tutto sommato potrebbe essere più semplice ma manca di una documentazione intuitiva.

Non è una critica, ci vuole molto di più a scrivere il software che ad impararlo ma dracut è stato veramente ostico sino a che - magicamente - ha funzionato.

Bene, abbiamo aggiunto Fedora , sia pure con il neessario rodaggio ancora da effettuare.

Attualmente penguins-eggs è il uno strumento unico - nel suo genere - e per quanto riguarda la capacità di adattarsi a differenti distribuzioni, pensare a gentoo non è più un tabù, anche se tempo fa mi piacque funtoo che nel frattempo... ma vediamo un po' che succede.

Innanzitutto c'è bisogno di una riarrangiata del codice, ovviamente in prima stesura si cerca la strada più breve, l'importante è che funzioni. Dopo anche la manutenzione ha il suo perchè e mettere a fattor comune funzioni diverse è un modo per risparmiare tempo.

Su Alpine e Fedora poi, abbiamo due grossi problemi: il primo si chiama UEFI ed il secondo calamares ma, anche krill - per Fedora, ancora non pienamente adattato.

Però diciamolo pure a chiare lettere: se qualcuno non viene a dare una mano, prima o poi sarò costretto a chiudere la bottega ed addio sogni di gloria.

Per cui la speranza è che qualcuno segua, si innamori del progetto e contribuisca a portarlo avanti.

Secondo me è utile e riunisce in un solo Linux, differenti ramificazioni oltre al fatto che - volendo - se ne potrebbe a questo punto crearne un propria.

pacchetto fedora

Non esiste ancora un pacchetto di installazione di penguins-eggs su fedora, bisognerà scriverlo partendo da qualche esempio con nodejs.

krill installater

Al moment krll su fedora è piuttoso dispettoso, non configura i locales e qualche volta si pianta. E' nato ieri, è pure normale, ma toccherà sistemarlo.

Per il momento consigli di installare con: `sudo eggs install -u² saltando tutte le configurazioni.

calamares installer

Sarebbe comodo trovare un esempio di configurazione di calamares su Fedora, non dubito ve ne siano ma non ne conosco - vengo da Debian - se qualcuno ha degli esempi prego contattarmi.

fedora

OpenSuSE

Naturalmente un prossimo target è openSuSE.

way to Alpine (reprise)

· 3 minuti di lettura
Piero Proietti
penguins-eggs author
Deutsch English Español  Français Italiano Polska  Portuguese  Български  Русский  Українська  やまと  中国  فارسی 

E' passato un mese, forse due dall'inizio dell'avventura con Alpine Linux visto che ho cominciato dopo metà giugno.

Punti di forza

Usare eggs con Alpine linux può essere veramente un piacere, rimasterizzare è un soffio, crearsi la propria versione con XFCE, plasma, gnome, etc veloce (vi sono i costumi del wardrobe di eggs: colibri ed albatros e funzionano egregiamente).

Per quanto riguarda l'hardware non ho modo di fare test, lavoro esclusivamente su macchine virtuali, ad ogni buon conto c'è un pacchetto linux-firmware che può essere aggiunto con doas apk add linux-firware e che dovrebbe "renderla" compatibile con i maggiori hardware presenti. Niente nvidia naturalmente, ma meglio così.

Dal mio punto di vista di sviluppatore di penguins-eggs, non ho voluto includere questo pacchetto perchè pesa 700 MB e rende quindi Alpine Linux meno leggera da rimasterizzare anche se - a parità di configurazione - più leggera di Arch - anche aggiungendo i firmware - e pesante la metà di Debian senza includere gli stessi.

Ostacoli

Da una parte è stata una esperienza bellissima ed alcune cose sono venute più facili del previsto: costruire un colibri per sviluppare penguins-eggs direttamente su Alpine, constatare le dimensioni minime della distro - con ovvie conseguenze sul debug, etc.

D'altra parte ci sono alcuni scogli che mio malgrado ancora non riesco a superare:

  • non ho ancora trovato il modo per avviare la ISO senza andare in recovery shell per montare overlayfs. Il risultato è aggirabile tramine lo script sidecar.sh, ma per l'utente finale e pure per me medesimo è una grande scocciatura.
  • ancora peggio con aports. Sono al terzo tentativo di effettuare il merge dal mio fork, per il momento ancora non se parla e, francamente essere bloccato così, dopo tanto impegno nello sviluppo, nel porting di eggs e nel costruire il pacchetto è, come dire: un pò "pesante"; (*) vedi nota
  • calamares, per qualche ragione - probabilmente mancanza di librerie - è presente sino alla version 3.18-8, ma non nella versione corrente 3.20-2 e neppure in edge. .

Conclusioni

A mio avviso penguins-eggs potrebbe essere lo strumento per portare Alpine Linux verso i desktop.

Capisco che attualmente tutti ci stiamo allontando dal desktop per andare su dispositivi touch ed Alpine da questo lato è ben fornita con PostmarketOS, però è sempre una possibilità e, comunque lo sviluppo avviene ancora su desktop.

Inoltre per un esercito di "smanettoni" può essere sorprendente far girare le ultime versioni dei desktop con dimensioni e pretese pari a metà o meno di quanto previsto da altre distribuzioni.

Ad esempio, la mia colibri, su Arch misura: 1,8 GB, su Debian boowwork è di 1.3 GB menre la versione Alpine è di solo 743 KB.

La foto sotto è una versione di Albatros costruita utilizzando il wardrobe di eggs su un sistema Alpine Linux... i686! Il peso? Circa 1,2 GB.

(*) Nota: Se qualcuno è pratico di git rebase, squash con git, etc magari mi può dare una mano. Non mi sento completamente a digiuno del resto, ma non riesco a capire il problema.

way to Alpine

· 2 minuti di lettura
Piero Proietti
penguins-eggs author
Deutsch English Español  Français Italiano Polska  Portuguese  Български  Русский  Українська  やまと  中国  فارسی 

Da qualche giorno - inizio luglio 2024 - sto impegnandomi, sarà il caldo, a portare penguins-eggs su Alpine Linux.

Naturalmente non è un processo semplice, Alpine è una distribuzione non derivata da Debian o da Arch e, pertanto, abbastanza diversa.

Per fare esperienza e saggiare le mie capacità, ho iniziato con il crearmi una macchina di sviluppo, il mio famigerato colibri, avvero una macchina abbastanza leggera con xfce, code, nodejs e pnpm per lo sviluppo di penguins-eggs.

Lo scopo ormai può dirsi riuscito, dispongo di una VM configurata perfettamente allo scopo ed è tracciato tutto quanto il percorso sul documento WAY-TO-ALPINE.md.

A che punto siamo con la creazione di una ISO?

Se avete già letto WAY-TO-ALPINE.md avete già una risposta: filesystem.squashfs completo, ISO avviabile da BIOS, mancanza di un initramfs che monti il filesystem.squashfs ed esegua il chroot in eggs.

A chi posso rivolgermi per una collaborazione?

Pure se sto continuando ad andare avanti, è evidente che mi servirebbe la collaborazione di una persona esperta di Alpine Linux, per trovare la soluzione.

Se qualcuno è in linea batta un colpo, avere penguins-eggs su Alpine Linux potrebbe facilitare la diffuzione della Distribuzione e permetterne una customizzazione a portata degli utenti finale. Inoltre, data la sua leggerezza sarebbe possibile effettuare nuomerosi test.

Mi serve aiuto però... magari anche da uno sviluppatore.

ISO to IMG

· 4 minuti di lettura
Piero Proietti
penguins-eggs author
Deutsch English Español  Français Italiano Polska  Portuguese  Български  Русский  Українська  やまと  中国  فارسی 

Nella puntata precedente abbiamo visto come rimasterizzare una MicroSD per RaspberriPi, creando una immagine .img.

Possiamo fare questo a partire da una immagine ISO per arm64 creata con eggs su una VM arm64?

Proviamo

Ho scaricato egg-of_debian-bookworm-naked_arm64_2024-04-14_1821.iso, la monto ed estraggo i file.

Sulla ISO ci sono 4 cartelle:

  • grub
  • efi
  • isolinux
  • live

Isolinux, qua non serve proprio, le altre due non sono sicuro. Quello che ci occorre è il contenuto di live:

  • filesystem.squashfs
  • initrd.img-6.1.0-20-arm64
  • vmlinuz-6.1.0-20-arm64

In soldoni dalla partizione bootfs dovremmo far partire vmlinux che a sua volta utilizzerà initrd-img, questo dovrebbe montare quindi filesystem.squashfs come in effetti succede su una VM.

filesystem.squashfs è 469M, diciamo che con una immagina da 1G dovremmo avere spazio a sufficienza.

Andiamo a creare un raspi.img da 1G, suddiviso in due partizioni: bootfs e rootfs.

Per non sbagliare, partiremo da una immagine esistente e sicuramente funzionante.

Scaricare immagine raspi 2024-07-04-raspios-bookworm-arm64-lite.img.xz

decomprimere l'immagine

unxz 2024-07-04-raspios-bookworm-arm64-lite.img.xz -k

Ridenominazione dell'immagine

mv 2024-07-04-raspios-bookworm-arm64-lite.img raspi.img

La nostra immagine root=PARTUUID=a3f161f3-02

sudo losetup -fP raspi.img
sudo losetup -a

Ridimensionare la partizione

sudo kpartx -av /dev/loop1 # loop0 è usato dall'immagine ISO

troviamo:

add map loop1p1 (252:5): 0 1048576 linear 7:1 8192
add map loop1p2 (252:6): 0 4481024 linear 7:1 1056768

montiamo rootfs

sudo mount /dev/mapper/loop1p2 /mnt/rootfs

copiamo il tutto

sudo rsync -aAXv   /media/artisan/naked/live/ /mnt/rootfs/

Andiamo a montare bootfs

sudo mount /dev/mapper/loop1p1 /mnt/bootfs

La configurazione su ISO

Queste sono le linee di configurazione di grub.cfg nella ISO live

linux /live/vmlinuz-6.1.0-20-arm64
append initrd=/live/initrd.img-6.1.0-20-arm64 boot=live components locales=en_US.UTF-8 cow_spacesize=4G

e questo è il cmdline.txt funzionante, della chiavetta precedente:

console=serial0,115200 console=tty1 root=PARTUUID=a3f161f3-02 rootfstype=ext4 fsck.repair=yes rootwait initrd=/live/initrd.img-6.1.0-20-arm64 boot=live components locales=en_US.UTF-8 cow_spacesize=2G

Qui non abbiamo /live/, quindi dovremmo, forse, aggiungere a cmdline:

initrd=/initrd.img-6.1.0-20-arm64 boot=live components locales=en_US.UTF-8 cow_spacesize=2G

semplificando, riscrivo in questo modo:

initrd=/initrd.img-6.1.0-20-arm64 console=serial0,115200 console=tty1 root=PARTUUID=a3f161f3-02 rootfstype=ext4 fsck.repair=yes rootwait boot=live locales=en_US.UTF-8

smontiamo tutto

sudo umount /mnt/bootfs
sudo umount /mnt/rootfs
sudo kpartx -d /dev/loop1

A questo punto raspi.img dovrebbe essere pronta per essere registrata su usb.

Questo è il boot dell'immagine prodotta

Noto che in init line 246 segnala l'assenza di /scripts/live... Ma in effetti questo file è presente, difatti facendo l'analisi di initrd.img-6.1.0-20-arm64 lo troviamo.

Analisi initrd.img-6.1.0-20-arm64

Il nostro file initrd.img-6.1.0-20-arm64 è compresso con zstd, possiamo rilevarlo con il comando:

file initrd.img-6.1.0-20-arm64

A questo punto possiamo decomprimerlo:

zstd -d -k  initrd.img-6.1.0-20-arm64 -o initrd.img

Quindi creiamo una directory content per riversare i dati:

mkdir contents
cd contents
cpio -id < ../initrd.img

contenuto di initrd.img-6.1.0-20-arm64

ls 
bin conf etc init lib run sbin scripts usr

ls scripts
bin conf etc init lib run sbin scripts usr

quindi, il file /scripts/live esiste...

Perchè non lo trova?

file /scripts/live

Il file /scripts/live esiste ed esiste /bin/live-boot

# Live system filesystem mounting			-*- shell-script -*-

. /bin/live-boot

live_top()
{
if [ "${live_top_used}" != "yes" ]; then
[ "$quiet" != "y" ] && log_begin_msg "Running /scripts/live-top"
run_scripts /scripts/live-top
[ "$quiet" != "y" ] && log_end_msg
fi
live_top_used=yes
}

live_premount()
{
if [ "${live_premount_used}" != "yes" ]; then
[ "$quiet" != "y" ] && log_begin_msg "Running /scripts/live-premount"
run_scripts /scripts/live-premount
[ "$quiet" != "y" ] && log_end_msg
fi
live_premount_used=yes
}

live_bottom()
{
if [ "${live_premount_used}" = "yes" ] || [ "${live_top_used}" = "yes" ]; then
[ "$quiet" != "y" ] && log_begin_msg "Running /scripts/live-bottom"
run_scripts /scripts/live-bottom
[ "$quiet" != "y" ] && log_end_msg
fi
live_premount_used=no
live_top_used=no
}


mountroot()
{
# initramfs-tools entry point for live-boot is mountroot(); function
Live
}

mount_top()
{
# Note, also called directly in case it's overridden.
live_top
}

mount_premount()
{
# Note, also called directly in case it's overridden.
live_premount
}

mount_bottom()
{
# Note, also called directly in case it's overridden.
live_bottom
}

L'initrd è corretto, ho usato lo stesso della chiavetta usb, il file /script/live esiste purtroppo non riesco a superare questo scoglio.

Suggerimenti?

ancora su raspberry

· 3 minuti di lettura
Piero Proietti
penguins-eggs author
Deutsch English Español  Français Italiano Polska  Portuguese  Български  Русский  Українська  やまと  中国  فارسی 

Lavorare con taspberry è bellissimo, tuttavia dal punto di vista della rimasterizzazione abbiamo un problema: la mancanza di grub e la presenza di uboot.

Non sarebbe nemmeno male, ma eggs è strutturato per lavorare con grub ed isolinux, calamares lo stesso, quindi sinora le immagini realizzate per amd64 hanno girato esclusivamente su una versione di Proxmox VE come macchine virtualizzate su un Raspberry 4.

In questo modo abbiamo a disposizione una modalità di installazione standard ed in effetti inizializzando il lettore di CD con la notra immagine ISO riusciamo ad installare regolarmente il sistema con calamares.

Tuttavia, abbiamo bisogno di far girare il nostro lavoro su hardware reale e non emulato e ci scontriamo con l'assenza di un lettore CDROM, l'assenza di grub, etc.

Ho quindi provato a creare una immagine .img per rapberry raspi.img partendo dall'immagine lite, e metterla su chiavetta USB per vedere cosa succede.

Scaricare immagine raspi 2024-07-04-raspios-bookworm-arm64-lite.img.xz

decomprimere l'immagine

unxz 2024-07-04-raspios-bookworm-arm64-lite.img.xz -k

Ridenominazione dell'immagine

mv 2024-07-04-raspios-bookworm-arm64-lite.img raspi.img

La nostra immagine root=PARTUUID=a3f161f3-02

Aggiungere lo spazio necessario

Poichè il filesystem rootfs della mia raspberry ha circa 6GB di dati, mentre l'immagine lite ha circa 2,1 GB di spazio, occorre ingrandire l'immagine. Utilizzeremo il comando qemu-img resize:

qemu-img resize -f raw raspi.img +5G

Associa il file .img a un dispositivo loop:

sudo losetup -fP raspi.img

verifica

sudo losetup -a

espansione della partizione con gparted

sudo gparted /dev/loop0

Creazione dei dispositivi di mappatura delle partizioni:

sudo kpartx -av /dev/loop0

Verifica i dispositivi di mappatura creati:

ls /dev/mapper

monta rootfs

sudo mount /dev/mapper/loop0p2 /mnt/rootfs

esegui copia

sudo rsync -aAXv /zfs/raspi_backup/rootfs/ /mnt/rootfs/
sudo nano /mnt/rootfs/etc/fstab

Ed impostare fstab come segue:

Proc            /proc           proc    defaults          0       0
PARTUUID=a3f161f3-01 /boot/firmware vfat defaults 0 2
PARTUUID=a3f161f3-02 / ext4 defaults,noatime 0 1

monta bootfs

sudo mount /dev/mapper/loop0p1 /mnt/bootfs
sudo rsync -aAXv /zfs/raspi_backup/bootfs/ /mnt/bootfs/

edit /mnt/bootfs/cmdline.txt

sudo nano /mnt/bootfs/cmdline.txt

edita cmdline e rimetti la partizione corretta

console=serial0,115200 console=tty1 root=PARTUUID=a3f161f3-02 rootfstype=ext4 fsck.repair=yes rootwait splash quiet splash plymouth.ignore-serial-console

smonta

sudo umount /mnt/bootfs
sudo umount /mnt/rootfs

Rimuovi i dispositivi di mappatura delle partizioni:

sudo kpartx -d /dev/loop0

Rilascia il dispositivo loop:

sudo losetup -d /dev/loop0

Scrittura dell'immagine su MMC o chiavetta

A questo punto non ci rimane altro che scrivere la nostra immagine su una microsd o una chiavetta USB. Utilizzeremeo rpi-installer selezionando immagine custom e quindi la nostra immagine raspi.img.

Terminata la scrittura non ci resta che avviare il nostro raspberry e goderci l'ebbrezza del boot con la nostra immagine.

sourceforge

· 2 minuti di lettura
Piero Proietti
penguins-eggs author
Deutsch English Español  Français Italiano Polska  Portuguese  Български  Русский  Українська  やまと  中国  فارسی 

Sto avendo sempre più problemi nello scaricare le ISO da sourceforge.

Non comprendo il motivo, ma la faccenda è grave perchè alla fine non permette agli utenti di provare le varie versioni, etc.

Sino a non molto tempo fa, avevo una percentuale di download settimanali in cui circa la metà erano ISO e l'altra metà i pacchetti di eggs.

Da qualche tempo, la percentuale delle ISO si è notevolmente abbassata, non ne capivo le ragioni ma trovandomi a volte a scaricare delle semplici immagini naked per aggiornarle, mi sono trovato con tempi di attesa lunghi.

Quanto lunghi? Diciamo che, paradosso faccio prima ad effettuare un upload sulla mia pagina sourceforge che a scaricare il file che ho immesso.

Occorre perciò trovare delle alternative e mi sto guardando intorno.

Meta.io

Ho messo alcune ISO - per iniziare - su meta.io, le trovate sulla pagina download.

Le iso che trovate nella pagina, sono: colibri, voyager e LastOSLinux. La prima per sviluppo, particolarmente mirata alla creazione e mantenimento di penguins-eggs, la seconda una recente scoperta nella sua versione Debian e la terza il frutto di una collaborazioni in itinere con con il team di LastOS.

Per gli altri download al momento sempre sulla pagina surgeforge.

Tuxfamily.org

Ho provata ad iscrivermi su tuxfamily.org il progetto è in attesa di esame.

Suggerimenti?

Se avete suggerimenti o offerte di hosting potete scrivermi.

Raspberry Pi4 e Pi5

· 3 minuti di lettura
Piero Proietti
penguins-eggs author
Deutsch English Español  Français Italiano Polska  Portuguese  Български  Русский  Українська  やまと  中国  فارسی 

Oggi, dopo molto tempo, torno a scrivere qualcosa sul blog, tanto tempo è passato da fine gennaio, quando ho presentato PenGUI ancora in stato non funzionante.

Nel tempo l'ho corretta e vedo che attualmente marcia spedita a download su sourceforge, presto sarò libero da altri impegni e la potremo perfezionare.

Ma oggi voglio semplicemente descrivere le mie impressioni di utilizzo di Raspberry. Possiedo da tempo un Raspberry 4 che ho utilizzato per creare le ISO per ARM e per la compilazione di PenGUI su arm64 e, sto svrivendo attualment da una Raspberry PI con 8 GB di RAM connesso alla rete domestica.

Rete domestica un corno, perchè comprende una server Proxmox VE su amd64 sul quale sinora ho svolto il mio lavoro, una Pi 4 con 4 G di RAM, che mi funge sia da server per le macchine virtuali arm64 che da git domestico con l'ottimo Forgejo.

Naturalmente essendo col tempo diventato un esperto della customizzazione di sistemi operativi Linux, con sommo piacere opero su tutte e tre le macchine, più le svariate macchine virtuali con la mia customizzazione colibri.

Devo dire che è comodo, ho sempre una certa difficoltà - sarà anche l'età - a passare da un Desktop ad un altro. Per anni ho utilizzato di tutto, simo a stabilizzarmi su cinnamon di Linux Mint. Attualmente, anche per problemi di vista, mi viene comodo xfce che ha il vantaggio di ridimensionare i caratteri del terminale. Si, lo sò che basta installare un altro terminale su cinnamon e si campa tale e quale, ma mi trovo meglio ed è più leggero. Inoltre, da tempo ho "standardizzato" il mio ambiente di lavoro e lo posso installare con un sol colpo di eggs wardrobe wear colibri.

amd64

Su comune PC, parto dalla netinstall di Debian 12 bookworm che installo come dire "naked" ovvero con il minimo indispensabile e senza GUI,

arm64

Per rasberry sto utilizzando la versione lite di Raspberry Pi OS - basata su Debian 12 bookworm - senza interfaccia grafica, che customizzo successivamente utilizzando eggs.

L'ambiente che viene fuori è esattamente lo stesso, poi è chiaro che su raspberry mi troverò raspi-config ed il boot con uboot da configurare con /boot/firmware/cmdline.txt, mentre su PC avremo grub.

In sostanza, sto scrivendo dalla stessa tastiera e lo stesso monitor di sempre: tra farlo da raspberry Pi 5 o dalla mia quotidiana stazione di lavoro non cambia nulla.

I cavi, la vista e la vecchiaia

Odio attaccare e staccare i cavi, averne troppi, etc. Naturalmente sinora ho sempre staccato ed attaccato tastiera, mouse, monitor e cavo di rete da un PC ad un altro.

Ora, visto che tutto sommato mi viene comodo, sto provando ad utilizzare il nuovo Rasberry come unico computer da utilizzare direttamente. Si ha il vantaggio di non attacare e staccare cavi, abbassarsi per collegare la rete, etc. Il rasberry è naturalmete connesso in WIFI e va onestamente, per caricare e scaricare le ISO posso farlo con la rete cablata sul fisso e da Raspberry utilizzare quest'ultimo.

Ah, naturalmente al diavolo le MicroSD - sto lavorando con un drive ssd portatile attaccato alla USB3 ed alimentato direttamente dal Raspberry.

Vediamo come procede, per il momento, sarà un'oretta che il mio Pi 5 è attaccato. non scada affatto, ero molto preoccupato.

raspberry

penGUI: GUI for penguins eggs

· 4 minuti di lettura
Piero Proietti
penguins-eggs author
Deutsch English Español  Français Italiano Polska  Portuguese  Български  Русский  Українська  やまと  中国  فارسی 

Era da molto tempo che mi era stata richiesta la possibilità di aggiungere una GUI ad eggs, sembra che finalmente sia giunta l'ora.

Ho cominciato questo progetto durante il periodo delle feste di Natale e fine anno, mi è servito tra l'altro per formarmi con la libreria QT che non avevo mai usato.

Adesso è passato un po' di tempo, ho maturato un po' di esperienza e quindi - come dire - posso vergognarmi di meno di quello che ho realizzato, in sostanza un aiuto per chi con eggs è alle prime armi.

Ho cercato di riempire i vari campi con lunghi, tediosi e spropositati tooltip ed ho fatto del mio meglio, comunque visto che questo progetto è opensource, può essere migliorato da ognuno e ciascuno può collaborare.

L'interfaccia è questa:

penGUI main window

C'è una toolbar con quattro bottoni:

  • dad per configurare eggs;
  • produce per creare la ISO;
  • kill per rimuovere le ISO generate e lo spazio di lavoro;
  • readme un rimando alla sezione PenGUI sul README di eggs.

Non ho aggiunto troppi bottoni, per semplificare, difatti le operazioni che servono con eggs per rimasterizzare un sistema sono essenzialmente queste.

I menu

Tutte le altre opzioni, sono riportate nel menù, abbiamo:

  • File

    • Calamares
    • Kill
    • Status
    • Cuckoo
    • Exit
  • Edit

    • eggs.yaml
    • tools.yaml
  • Tools

    • Clean
    • PPA
    • Skel
    • Yolk
  • Wardrobe

    • Get
    • List
    • Show
    • Wear
  • Help

    • Users' guide
    • Blog
    • Repository
    • Telegram
    • About

Francamente non mi sembra di aver dimenticato niente, l'unica esclusione - voluta - è Cuckoo che ho si inserito nel menu File ma è disablilitato.

Naturalmente PenGUI utilizza eggs per eseguire i sui compiti, quindi eggs deve essere installato, nel caso eggs non sia installato verrà visualizzato un messaggio ed, eventualmente aperto un browser per installarlo.

Bottoni della toolbar

toolbar

dad

dad

Come in eggs il comando dad va a modificare la nostra configurazione che si trova in /etc/penguins-eggs.d ed in particolare nel file eggs.yaml.

La differenza è che qua avete un form da riempire, invece di una interfaccia CLI nuda e cruda.

dad-form

Una volta inseriti i dati, verrà aperto un Terminale di root e si procederà alla copia degli stessi su /etc/penguins-eggs.d/eggs.yaml

eggs è pronto a produrre la ISO!

produce

produce

Nella form di produce è possibile inserire tutte le varie opzioni presenti nel comando di eggs, diciamo che la sua funzione è costruire il comando utilizzando una interfaccia grafica.

produce-form

Una volta effettuate le scelte, premete sul bottone "Generate" ed il comando vi apparirà nel form stesso. A questo punto potete produrre la ISO semplicemente cliccando sul bottone adiacente, verrà anche qui aperto un Terminale di root ed egge verrà avviato con i parametri generati.

Kill

kill

Kill semplicemente richiama sudo eggs kill di eggs sempre attraverso un Terminale di root.

Readme

readme

Come descritto in precedenza è un semplice rimando alla sezione su PenGUI del README di penguins-eggs.

Scaricare ed installare PenGUI

PenGUI viene caricato sulla pagina di penguins-eggs su sourceforge, e precisamente potete scaricarlo dal link PenGUI.

L'installazione, trattandosi di un pacchetto Debian è piuttosto semplice e standard: dpkg -i pengui-0.2.9_amd64.deb.

Il pacchetto, inoltre viene caricato anche sulla PPA di eggs, per cui se la avete configurata, verrà aggiornato automaticamente ad ogni rilascio.

That's all peoples!

Buon divertimento.

Prince of Persia

· Lettura di 1 minuto
Piero Proietti
penguins-eggs author
Deutsch English Español  Français Italiano Polska  Portuguese  Български  Русский  Українська  やまと  中国  فارسی 

Some time ago I received this message about an eggs problem with plasma:

I have an error on calamares installer.
when i want to install the iso. during the partitioning automatically. it has the following error:

job set the label on partition /dev/sda1 to root partition table of partition /sda/sda1 does not support setting names. job ignored

plasma

error

The error is caused by Plasma settings → Removable Storage → Removable Devices → Uncheck On Login and On Attach and solved problem, calamares installed the system fine.

The Prince of Persia also sent us a new splash screen error

Return of the Jedi

· 3 minuti di lettura
Piero Proietti
penguins-eggs author
Deutsch English Español  Français Italiano Polska  Portuguese  Български  Русский  Українська  やまと  中国  فارسی 

Il Ritorno dello Jedi è il terzo episodio di Guerre Stellari, uscito nel 1983.

Forse è l'età - per questo mi deve essere rimasto in testa - con le Guerre Stellari quello che devo dire non c'entra niente, però volevo raccontarvi la novità del gradito ritorno dell'architettura i386 su penguins-eggs.

penguins-eggs è un programma scritto in typescript quindi compilare è qui utilizzato in maniera un po' improria. Sarebbe più corretto scrivere come sono riuscito a generare nuovamente il pacchetto su l'architettura i386 non più supportata da node.

Qua dobbiamo ringraziare la sua Maestà Debian.

Cercando di aiutare un utente alle prese con LMDE 6 "Faye" ho notato che sulla macchina era presente node18, grazie alla versione pacchettizzata da Debian.

Su Debian bullseye è presente solo node12, ed essendo passato da tempo a node16 - non si può fare - ma qua, con la versione 18 mi è venuto il dubbio e l'idea di provarci.

Eggs è costruito con oclif, e genero il pacchetto con lo stesso framework che - tra l'altro - racchiude l'eseguibile di node nel pacchetto stesso.

Se su Debian node18 esiste, perchè non provare a sostituirlo con un semplice link?

Ha funzionato!

Il ritorno dello Jedi

Nota La storia è naturalmente un po' più lunga e non priva di una certa fatica, ma è la stessa che mi ha portato - usando sostanzialmente lo stesso schema - ad ottenere una versione arm64 funzionante.

Ma di questo parleremo la prossima volta.

E come la mettiamo con Visual Studio code?

Non sò quante volte ho bestemmiato in turco la mancanza di code su i386, ho tentato con lite, un editor LUA un po' somigliante; ho smadonnato con sublime - bello, ma diverso - alla fine, non usando più di tanto i386, m'ero adattato a geany.

Ecco il sistema per installare l'ultima versione di code funzionante su i386.

wget https://az764295.vo.msecnd.net/stable/c7d83e57cd18f18026a8162d042843bda1bcf21f/code_1.35.1-1560349847_i386.deb 

sudo dpkg -i ./code*.deb

Era pure facile! A saperlo, però.

Il futuro dei colibri

Naked - la versione CLI - e Colibri sono le due ISO ufficiali che pubblico per ogni rimasterizzazione di Arch, Debian, Devuan ed Ubuntu.

Colibri è interessante per chi vuole cimentarsi con gli stessi strumenti che utilizzo per creare eggs, naturalmente raccomando la versione amd64, ma attualmente è possibile utilizzare sia arm64 che i386 senza troppe rinunce.

In sostanza viene installato il desktop XFCE - senza troppi fronzoli - nodejs, npm, pnpm e l'editor code o codium nel caso di arm64.

Avere lo stesso sistema di sviluppo su tutte e tre le architetture supportate aiuta non poco diurante il debug.

A quando una versione per RISCV?

Ad inizio dicembre dovrebbe arrivarmi un computer a scheda singola VisionFive 2 Quad-core RISC-V StarFive JH7110 quad-core RISC-V con ben 8GB di RAM.

Il progetto Proxmox-port, grazie al quale ho trasformato la mia Raspberry Pi 4 in un server Proxmox VE, promette bene anche per quanto rigurda l'architettura RISCV.

Vediamo che succede, ci spero!