Reproducible, Declarative, RELIABLE? - NixOS 24.05 "Uakari" (+ Nix)
Вставка
- Опубліковано 29 сер 2024
- In this video we take a look at a very special distro since it's completely different from virtually all other Linux-based operating systems: NixOS. NixOS is based on the Nix package manager, revolving around the capabilities that tool offers. It has an immutable design and an atomic update model. But most importantly, NixOS makes use of a declarative configuration system that allows reproducibility and portability of the system, taking advantage of the packages defined in the Nixpkgs project. The instructions in those packages (and in the configuration files) are written in Nix-language.
» nixos.org/
» Nix Dev Portal: nix.dev/
» Flakes: nixos-and-flak...
» Nixpkgs: github.com/nix...
» Search: search.nixos.o...
#NixOS #Linux #distro #distribuzione #Nix #Nixpkgs #declarative #immutable #atomic #reproducible #reliable #devops #Flakes #experimental
Distro particolare, un po come (Gentoo, Arch) ostiche e particolari. Ma questo è il bello del software libero e open source, poter scegliere in base alle proprie esigenze. Complimenti per la tua capacità divulgativa.
Grazie mille! ❤️
Utilizzo NixOS da circa 3 mesi e da 1 mese come unstable, superata la fase iniziale dove per configurare NixOS al mio hardware è stato difficile dato dal fatto della documentazione che non è sempre affidabile ed aggiornata, bhe ora sono entusiasta di come gira NixOS sul mio Notebook in termini di fluidità, velocità e utizzo della Ram, inoltre avendo una scheda Nvidia non ho mai riscontrato un ben che minimo problema nelle varie successioni del Kernel, sto utilizzando un Kernel latest che non è poco. Sullo stesso PC ho installato anche Fedora Silverblue per fare dei confronti ma NixOS è nettamente superiore come prestazioni
Non fatico a crederlo, anche nelle mie prove NixOS è sempre stata una scheggia 🙂 Grazie per la condivisione della tua esperienza 💪
Le distro immutabili in genere hanno gnome come DE di riferimento. Rispetto a KDE, Gnome gestisce meglio i flatpak o c'e un altro motivo?
Ma NixOS non è una distro immutabile (termine purtroppo utilizzato in modo improprio), o quantomeno non è "immutabile" così come lo sono i vari Atomic Desktops, Endless OS, BlendOS, Nitrux, MicroOS e via discorrendo, o persino SteamOS. La "immutabilità" di NixOS è relativa soltanto al fatto che i pacchetti (e quindi poi i file immagazzinati sul PC) non vengono sostituiti da altri quando si installano nuove versioni del software. L'utente (e/o altri processi eseguiti come root) può (possono) "pasticciare" sul file system senza problemi.
Nelle distro "immutabili" il core non può essere modificato e non ci sono processi che possono fare il bello ed il cattivo tempo in giro per il file system (a meno delle poche cose di base che sono "trusted" ed incluse nell'immagine core dell'OS).
A parte questo, su NixOS usare i Flatpak non dà grandi vantaggi poiché, anche meglio rispetto a quanto accade in Arch (tramite AUR), il software (soprattutto se si usa il ramo unstable) è decisamente molto aggiornato e c'è pure molta più roba a disposizione. Poi se l'utente vuole proprio usare Flatpak, può configurarselo e procedere.
Detto ciò, in generale, che io sappia non c'è "differenza sensibile" nell'usare Flatpak su GNOME o KDE (oppure altri DE): in teoria, se vengono gestite le cose correttamente, le app sono eseguite allo stesso modo ovunque. E sempre parlando in generale, non mi pare che le distro "immutabili" usino GNOME come DE di riferimento: le Fedora Atomic Desktops offrono 4 DE, le varianti desktop di MicroOS ci sono sia con GNOME che KDE, Nitrux usa KDE come base (anche se, in realtà, poi punta più sulle AppImage che sui Flatpak), VanillaOS ed Endless OS usano GNOME, BlendOS funziona con praticamente qualsiasi DE disponibile sui repo di Arch, e via discorrendo. SteamOS usa KDE.
Penso che GNOME, in generale, sia più utilizzato dagli sviluppatori e quindi, di conseguenza, quando nascono nuovi progetti, chi li segue si concentra prima sul DE con il quale sviluppa. Ad esempio: MicroOS Desktop (che è stata ribattezzata in Aeon) usa GNOME perché il developer che la segue usa quel DE, mentre la variante KDE (Kalpa) è un po' più indietro perché il relativo maintainer che la segue non ci sta dietro con la stessa continuità. Fedora Silverblue è partita con GNOME perché Fedora usa GNOME, poi però sono arrivate le varianti con KDE, Sway e Budgie. Il progetto UniversalBlue è partito da Silverblue, quindi con GNOME (Bluefin), ma oggi ha anche la variante KDE (Aurora/Bazzite), etc. Come detto prima, SteamOS usa KDE. Quindi non credo ci siano motivazioni particolari nel puntare su un DE o sull'altro, se non appunto il fatto che questi progetti sono tutti partiti da altri che avevano già GNOME di base, oppure sono semplici preferenze dei rispettivi maintainer.
Nel complesso credo che GNOME sia il DE più utilizzato, più di KDE: non ho statistiche alla mano ma, banalmente, già solo considerando che Ubuntu ed il mondo Fedora (che sono le distro più usate in assoluto) lo hanno di default, beh, fa pensare ad una massa di utenti maggiori. Del resto, se ci pensi, tantissime app sono anche scritte in GTK e non in QT.
👏👏👏👏👏👏
💪💪
Le distro immutabili come nixos possono essere considerate utili in termini di maggior si sicurezza e privacy? L'inserimento di malware dovrebbe essere piu' difficile e eventualmente, anche piu' facile contenere i danni essendo tutti gli appliccativi in qualche modo "pacchettizati"
Diciamo che, il fatto che 1) in queste distro parte del filesystem (soprattutto le aree fuori dalla home) è read-only e/o gestito in modo "mirato" senza processi che hanno la libertà di scrivere dove meglio credono e che 2) le applicazioni containerizzate hanno generalmente meno libertà "di manovra" (entrambe le cose non sono vere di base in NixOS però), in linea teorica c'è meno rischio che software malevolo possa fare danni.
Però alla fine c'è danno e danno: se, ad esempio, un software avviato con i permessi dell'utente andasse a bloccarne la home (dove può operare senza particolari permessi), tenendo in ostaggio tutti i suoi dati personali, beh, che la distro sia immutabile o meno non cambia niente. Insomma, vale comunque sempre il principio base che l'utente deve stare attento a quello che fa, cosa installa, etc...
NixOS ha una filosofia molto più simile a quella delle distro tradizionali, c'è sempre un package manager a livello globale che lavora con pacchetti che alla fine immagazzinano sul computer software "standard", e via discorrendo. Quello che cambia è che garantisce tutta una serie di caratteristiche (atomicità degli update, rollback, e insomma tutte le cose descritte in video) che nelle distro tipiche non ci sono, organizzando i dati in modo differente. Ma a parte questo, il core viene modificato, l'utente può aggiungere servizi e tutto quello che desidera.
Le distro "composable" (erroneamente definite immutabili), invece, hanno un approccio diverso: non c'è un gestore dei pacchetti che lavora globalmente, e si tende ad usare solo software containerizzato (Flatpak o similari lato GUI, podman/docker o similari lato CLI) in modo da non toccare nulla sul core, che rimane immutato, passando di immagine in immagine successiva
Ciao! Insomma, roba tosta per super smanettoni...😂 Se posso con una richiesta che esula dalle distro Linux.
Girovagando sulla rete ho scoperto che esistono anche OS che non appartengono alle famiglie più note, mi riferisco ad HaikuOs e BSD. Visto che sei un divulgatore di alto livello, non che magari ci scappa una lezione su questi OS? Grazie!!
Ahaha 🤪 ti ringrazio per il "divulgatore di alto livello" 🤗 Non sono sistemi che utilizzo, quindi dovrei un attimo studiarli prima... Ma mai dire mai, chissà magari in futuro un qualche focus tra qui e l'altro canale potrebbe anche scapparci 😉
@@linux_distros 👍👍👋👋
E di cosa? Ribadisco che sei un divulgatore di alto livello, hai proprietà di linguaggio, ti esprimi in un italiano corretto e comprensibile e di questi tempi non è poco, credimi.
🤗🤗🤗
A quando una recensione di Void Linux? L'hai mai provata prima?
Certo, ne ho anche parlato sull'altro canale per uso su Raspberry Pi 😉 Comunque prossimamente farò un focus anche qui
Ho usato nixos plasma ma non ho avuto grande fortuna. Ryzen 7 con 16 giga di ram ho impiegato più di 30 minuti per l'installazione. Cpu a palla. Alla fine non si è avviato il server grafico a causa probabilmente della mia nidia gt 1070. Probabilmente dovevo spulciare il file di configurazione ma ho lasciato perdere...
Davvero? Pensa che io l'ho installato su un mini PC da 90€ con CPU scarsissima, senza ventole e 6GB (condivisi) di RAM :-D Comunque confermo che l'installazione è abbastanza lunga. Per il problema con il server grafico, probabilmente avresti dovuto configurare Nix come riportato sul wiki (vedi tipo qui: nixos.wiki/wiki/Nvidia o risorse affini) oppure utilizzare le ISO live che, se non sbaglio, hanno direttamente l'opzione per utilizzare i driver Nvidia (potrei ricorda male però)
@@linux_distros si ho visto e fra l'altro non l'ho ancora tolta. Il problema è che con tutti i tuoi video mi hai fatto venir voglia di provare una Garuda pulita per provare tutti i suoi tool grafici. Per nixos ho l'usato la live plasma ma non prevede l'indicazione dei driver Nvidia. Cmq ricontrollo. Grazie ancora ter tutti i tuoi contenuti. Per fortuna che microos è ancora in sviluppi e non definita come universal blue mi crei troppe voglie di provare tutto...🤣🤣
ahaha :D dai dai che è il bello di Linux, smanettamenti a più non posso ;-)
@@linux_distros ci puoi scommettere, hai trovato la persona giusta. Se non sbaglio domani esce il tuo prossimo video. In autunno devo recuperare degli ssd che ho in un pc fermo così posso starti dietro. 😁😉 Ciao
Non sbagli 👌
хотел себе установить но при установке не видит SSD))))
Have you tried formatting the SSD with Gparted before starting the setup?
@@linux_distros я 25 лет на Windows и 7 лет на Linux) Все способы пробовал. Ничего не помогает.
I don't know how to help you then. Personally I haven't had any troubles with the setup (as shown in the video). Last thing: have you checked if the disk is detected from the kernel (i.e.: with dmesg)?
@@linux_distros я уже Debian обратно установил)
👍
Potete dire quello che volete ma la Opensuse Tumbleweed (latest) non la supera nessun'altra disto !
Ne ho parlato in modo approfondito in un precedente video, e l'ho messa anche in quello delle top 10 del 2023. Tumbleweed è (attualmente) tra le 5 distro che consiglio ad occhi chiusi 🙃
Tu pensa che ho fatto il passaggio da Tumbleweed a Nixos un paio di mesi fa... 😅
Nixos ha una curva di apprendimento un po' strana, ostica all'inizio, ma via via più semplice mano a mano che si procede. Come molti altri nei commenti: sono su unstable, va come un missile e problemi ne ho visti pochi (forse meno che su tumbleweed, ma in entrambi i casi tutta roba compatibile con lo stare su una rolling release). Ogni tanto testo su una seconda macchina la riproducibilità della configurazione facendo partire l'installer con la mia config, e finora ha sempre funzionato, dal partizionamento fino a container e profili del browser. Per tenere allineato il setup tra più postazioni e poter reinstallare senza riconfigurare tutto o dimenticarsi pezzi, è il nirvana.
👌
io mi trovo benissimo con una arch su btrfs per fare eventualmente rollback ma trovo nixos ottima e superveloce. Invece dopo averla provata non mi sono trovato bene e non mi piace opensuse, ma per fortuna possiamo dire quello che vogliamo