GNU/Linux >> Linux Esercitazione >  >> Linux

Perché i programmatori adorano il packaging di Linux

Nel 2021, ci sono più ragioni per cui le persone amano Linux che mai. In questa serie, condividerò 21 diversi motivi per utilizzare Linux. Oggi parlerò di ciò che rende il packaging per Linux ideale per i programmatori.

I programmatori amano programmare. Probabilmente sembra un'affermazione ovvia, ma è importante capire che lo sviluppo di software implica molto di più della semplice scrittura di codice. Include compilazione, documentazione, gestione del codice sorgente, script di installazione, impostazioni predefinite di configurazione, file di supporto, formato di consegna e altro ancora. Passare da una schermata vuota a un programma di installazione del software disponibile richiede molto più della semplice programmazione, ma la maggior parte dei programmatori preferisce programmare piuttosto che creare pacchetti.

Cos'è l'imballaggio?

Quando il cibo viene inviato ai negozi per essere acquistato, viene confezionato. Quando acquisti direttamente da un agricoltore o da un negozio ecologico di prodotti sfusi o di contenitori, l'imballaggio è qualsiasi contenitore che hai portato con te. Quando si acquista in un negozio di alimentari, l'imballaggio può essere una scatola di cartone, un sacchetto di plastica, un barattolo di latta e così via.

Più risorse Linux

  • Comandi Linux cheat sheet
  • Cheat sheet sui comandi avanzati di Linux
  • Corso online gratuito:Panoramica tecnica RHEL
  • Cheat sheet della rete Linux
  • Cheat sheet di SELinux
  • Cheat sheet dei comandi comuni di Linux
  • Cosa sono i container Linux?
  • I nostri ultimi articoli su Linux

Quando il software viene reso disponibile agli utenti di computer in generale, deve anche essere impacchettato. Come il cibo, ci sono diversi modi in cui il software può essere impacchettato. Il software open source può essere lasciato decompresso perché gli utenti, avendo accesso al codice grezzo, possono compilarlo e impacchettarlo da soli. Tuttavia, i pacchetti presentano vantaggi, quindi le applicazioni vengono comunemente fornite in un formato specifico per la piattaforma dell'utente. Ed è qui che iniziano i problemi, perché non esiste un solo formato per i pacchetti software.

Per l'utente, i pacchetti semplificano l'installazione del software poiché tutto il lavoro viene svolto dal programma di installazione del sistema. Il software viene estratto dal suo pacchetto e distribuito nelle posizioni appropriate all'interno del sistema operativo. Ci sono poche possibilità che qualcosa vada storto.

Per lo sviluppatore di software, tuttavia, la creazione di pacchetti significa che devi imparare a creare un pacchetto e non solo un pacchetto, ma un pacchetto unico per ogni sistema operativo su cui desideri che il tuo software sia installabile. A complicare le cose, ci sono più formati e opzioni di packaging per ogni sistema operativo e talvolta anche per il linguaggio di programmazione utilizzato.

Imballaggio su Linux

Le opzioni di packaging per Linux sono sembrate tradizionalmente piuttosto opprimenti. Le distribuzioni Linux derivate da Fedora, come Red Hat e CentOS, per impostazione predefinita sono .rpm Pacchetti. Debian e Ubuntu (e simili) per impostazione predefinita .deb Pacchetti. Altre distribuzioni possono utilizzare l'una o l'altra o nessuna delle due, optando per un formato personalizzato. Quando gli viene chiesto, molti utenti Linux affermano che idealmente, un programmatore non impacchetta affatto il proprio software per Linux, ma si affida invece ai manutentori dei pacchetti di ciascuna distribuzione per creare il pacchetto. Tutto il software installato su qualsiasi sistema Linux dovrebbe provenire dal repository ufficiale di quella distribuzione. Tuttavia, non è chiaro come ottenere il tuo software impacchettato e incluso in modo affidabile da una distribuzione, per non parlare di tutte le distribuzioni.

Flatpak per Linux

Il sistema di packaging Flatpak è stato introdotto per unificare e decentralizzare Linux come obiettivo di consegna per gli sviluppatori. Con Flatpak, uno sviluppatore o chiunque altro (un membro di una comunità Linux, uno sviluppatore diverso, un membro del team Flatpak o chiunque altro) è libero di creare pacchetti di software. Possono quindi inviare il pacchetto a Flathub o scegliere di ospitare autonomamente il pacchetto e offrirlo praticamente a qualsiasi distribuzione Linux. Il sistema Flatpak è disponibile per tutte le distribuzioni Linux, quindi prendere di mira una equivale a prenderle tutte.

Come funziona la tecnologia Flatpak

Il segreto del fascino universale di Flatpak è una base standard. Il sistema Flatpak consente agli sviluppatori di fare riferimento a un insieme comune di moduli Software Developer Kit (SDK). Questi sono impacchettati e gestiti dai manutentori del sistema Flatpak. Gli SDK vengono inseriti secondo necessità ogni volta che installi un Flatpak, garantendo la compatibilità con il tuo sistema. Un determinato SDK è richiesto solo una volta perché le librerie che contiene possono essere condivise su qualsiasi Flatpak che lo richieda.

Se uno sviluppatore richiede una libreria non già inclusa in un SDK esistente, lo sviluppatore può aggiungere quella libreria nel Flatpak.

I risultati parlano da soli. Gli utenti possono installare centinaia di pacchetti su qualsiasi distribuzione Linux da un repository centrale, chiamato Flathub.

Come gli sviluppatori utilizzano i Flatpak

I flatpak sono progettati per essere riproducibili, quindi il processo di creazione è facilmente integrabile in un flusso di lavoro CI/CD. Un Flatpak è definito in un file manifest YAML o JSON. Puoi creare il tuo primo Flatpak seguendo il mio articolo introduttivo e puoi leggere la documentazione completa su docs.flatpak.org.

Linux lo rende facile

Creare software su Linux è facile e confezionarlo per Linux è semplice e automatizzabile. Se sei un programmatore, Linux ti consente di dimenticare facilmente la creazione di pacchetti mirando a un sistema e integrandolo nel processo di compilazione.


Linux
  1. 10 motivi per amare Linux nel 2021

  2. Perché mi sono innamorato di Antergos Linux

  3. Altri suggerimenti per impacchettare il tuo software Linux con RPM

  4. Perché JFS è così oscuro?

  5. Perché diverse distribuzioni Linux devono applicare patch ai pacchetti?

Imparare ad amare systemd

Perché i fan di Vim adorano il window manager Herbstluftwm Linux

Perché amo ancora Alpine per la posta elettronica sul terminale Linux

Come installare il software in RHEL 8

I 10 motivi principali per utilizzare Linux

Perché i nerd usano Linux