Aj keď v systéme NixOS môžete spúšťať aplikácie, pretože vyhovujú vyššie uvedenému štandardu, súbory sa nenachádzajú tam, kde by boli v inom systéme. Vývojári systémov NixOS a GNU Guix majú o tomto systéme vyhranené názory a prišli s chytrými spôsobmi, ako mu vyhovieť.
Iný systém
Váš systém ukladania softvéru ovplyvňuje funkčnosť spôsobom, ktorý je oveľa hlbší, ako sa na prvý pohľad zdá. Aby softvér našiel potrebné súbory, NixOS používa symbolické odkazy. Každá aplikácia má svoj vlastný adresár, ktorý obsahuje spustiteľný súbor a odkazy na knižnice, ktoré ho spúšťajú.
V tomto organizačnom systéme môžete mať nainštalované rôzne súbory a verzie súčasne. Štandardne by sa všetky balíčky a ich závislosti mali kompilovať počas inštalácie. Vyžaduje to však veľa času a výpočtovej sily, aby ste to mohli urobiť pri každej inštalácii, existujú pamäte cache.
Sťahovanie
V systéme NixOS existuje vždy viac ako jeden spôsob, ako niečo urobiť. Rovnako ako iné distribúcie, aj v prípade NixOS máte ISO na USB kľúči. Máte na výber, ako chcete nainštalovať NixOS do svojej distribúcie. Predtým, ako sa budeme podrobnejšie venovať tejto téme, je však potrebné pochopiť, že tento proces má dve mierne mätúce časti.
Po prvé, Nix sa líši od NixOS a musíte pochopiť rozdiel medzi Nix, správcom balíkov a NixOS, ktorý konfiguruje váš systém. Môžete si stiahnuť správcu balíkov Nix a použiť ho vo vašom súčasnom systéme. Vďaka nemu môžete vo svojom systéme ponechať veľa verzií aplikácií bez toho, aby si navzájom prekážali.
Po druhé, v prípade systému NixOS síce nemôžete deklarovať schému rozdelenia, ale všetko ostatné môže zostať v jednom súbore. Väčšina používateľov necháva automaticky vytvorený konfiguračný súbor hardvéru na pokoji. Pri prvom spustení môžete ponechať svoje balíčky deklarované v súbore, ale časom pravdepodobne vytvoríte samostatné súbory, ktoré importujete do konfiguračného súboru.
Delenie na oddiely
Pred inštaláciou musíte svoje jednotky rozdeliť na oddiely. V iných distribúciách existujú predvolené nastavenia, ktoré môžete prijať; v systéme NixOS si však musíte vytvoriť svoje vlastné oddiely. Delenie na oddiely nie je príliš zložité, ale môžete naraziť na problémy, keď budete musieť nastaviť konfiguráciu pre zvolenú schému rozdelenia. Je dôležité si uvedomiť, že pokyny a skripty uprednostňujú, ak sú vaše súborové systémy označené správne.
Štandardná príručka zobrazuje príkazy na rozdelenie. Upozorňujeme, že príkazy sa líšia pre disky UEFI a MBR a nastavenie nesprávnych hodnôt spôsobí veľa problémov. Príručka navrhuje pre úvodnú inštaláciu použiť nižšie uvedené hodnoty, avšak je veľmi ľahké otestovať nové hodnoty.
Štandardné priečky:
MBR:
parted / dev / sda - mkpart primary 1MiB -8GiB
parted / dev / sda - mkpart primárny linux-swap -8GiB 100%
UEFI:
parted / dev / sda - mklabel gptparted / dev / sda - mkpart primary 512MiB -8GiB
parted / dev / sda - mkpart primárny linux-swap -8GiB 100%
parted / dev / sda - mkpart ESP fat32 1MiB 512MiB
parted / dev / sda - zapnúť 3 esp
Pripojenie oddielov do MBR:
mkswap -L swap / dev / sda2mount / dev / disk / by-label / nixos
Pripojenie oddielov v UEFI:
mount / dev / disk / by-label / nixos / mntmkdir -p / mnt / boot
mount / dev / disk / podľa štítku / boot / mnt / boot
V nasledujúcej časti sa dozviete, ako vytvoriť konfiguračný súbor.
Súbor konfigurácie
Po nastavení diskov môžete začať s procesom konfigurácie. V systéme NixOS najskôr nakonfigurujete a potom nainštalujete. Nasledujúce pokyny predpokladajú, že ste zaviedli systém ISO, ale je možné zaviesť systém pomocou chroot.
Pomocou nástroja nixos-generate-config systém vygeneruje štandardný konfiguračný súbor.
$ nixos-generate-config -root / mntTento príkaz vytvorí dva súbory: / mnt / etc / nixos / hardware-configuration.nix (tento súbor nezmeníte) a / mnt / etc / nixos / configuration.nix. Druhý súbor môžete upraviť vo svojom obľúbenom editore.
Možnosti sa zvyčajne nemenia v závislosti od spôsobu zavedenia. Môžete použiť grub alebo inú konfiguráciu bootovania. Existuje veľa možností, ale tu je niekoľko štandardov.
Pridajte tento riadok iba pre MBR:
topánka.nakladač.grub.zariadenie = "dev / sda";Pridajte tieto riadky iba pre UEFI:
topánka.nakladač.systemd-boot.povoliť = pravda;topánka.nakladač.efi.canTouchEfiVariables = true;
Ak chcete začať, zmeňte konfiguračné súbory čo najmenej. Všetky tieto hodnoty sú v pôvodnom súbore: stačí ich zrušiť a vykonať zmeny, ktoré vyhovujú vašim potrebám.
sieťovanie.hostName = "nixos";používateľov.používateľ.nixos =
isNormalUser = true;
extraGroups = "koleso"
prostredie.systemPackages = s pkgs [
wget vim
];
služby.openssh.povoliť = pravda;
Pridajte balíčky, ktoré chcete použiť, ako štandardné balíčky. Všetky štandardné balíčky sú v hranatých zátvorkách s programami wget a vim. Po spustení systému môžete nainštalovať viac balíkov.
Budova
Keď je váš konfiguračný súbor správny, môžete spustiť inštaláciu.
$ nixos-inštaláciaĎalej bude inštalačný program požadovať heslo root, ktoré sa použije v skutočnom systéme. Všetky programy budú skompilované alebo stiahnuté z medzipamäte.nixpkgs.org a potom nainštalovaný v obchode nix na vašom počítači. Potom môžete reštartovať počítač a mali by ste dostať výzvu na prihlásenie.
$ reštartTeraz zadajte heslo pre svojho používateľa pomocou root. Používateľ, ktorého ste definovali v konfiguračnom súbore, bude mať tiež domovský adresár.
New Config
Po dokončení vyššie uvedených krokov sa môžete pohrať s konfiguračným súborom. Keď niečo zmeníte, vyskúšajte to bez nasledujúcej inštalácie:
$ nixos-rebuild testKeď máte nové hodnoty, ktoré fungujú dobre, spustite príkaz rebuild:
$ nixos-prestavať prepínačTeraz uvidíte, či ste správne nastavili bootovacie hodnoty. Je dôležité si uvedomiť, že zmeny v konfigurácii sú reverzibilné. Môžete jednoducho reštartovať a zvoliť staršiu verziu, ktorá sa nazýva generácia, a skúsiť to znova. Každá konfigurácia však vyžaduje miesto na disku, takže sa oboznámte s funkciou odvozu odpadu.
Záver
NixOS vyžaduje na nastavenie niekoľko manuálnych krokov, ale k spustenému systému sa môžete vrátiť oveľa rýchlejšie ako v iných systémoch. Okrem toho je riadenie verzií jednoduchšie, ak potrebujete veľa verzií tej istej aplikácie alebo ak potrebujete veľa verzií rovnakých knižníc. Na prvý pohľad sa môže zdať veľa obmedzení, ale tieto obmedzenia je možné prekonať pomocou pokročilejších častí systému.