Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Obě strany předchozí revizePředchozí verzeNásledující verze | Předchozí verze | ||
navody:distribuce:nixos [2019/03/11 11:29] – added information about firewall by default and how to set it up martyet | navody:distribuce:nixos [2023/12/09 14:02] (aktuální) – Opraven odkaz na navody VPS aither | ||
---|---|---|---|
Řádek 1: | Řádek 1: | ||
- | ===== NixOS ===== | + | < |
+ | ====== NixOS ====== | ||
+ | [[https:// | ||
+ | Konfigurace systému a všech služeb se provádí deklarativně. Tato stránka popisuje | ||
+ | použití NixOS na vpsFree.cz VPS. Pro více informací o NixOS obecně viz | ||
+ | [[https:// | ||
- | NixOS allows declarative configuration management of the whole system and deployed services. | + | ===== Podporované verze ===== |
+ | Poskytujeme šablony VPS pro stabilní vydání | ||
- | To start using NixOS choose **[vpsAdminOS] NixOS** template. | + | Sami NixOS používáme na naší |
+ | [[https:// | ||
+ | Naše virtualizační platforma [[navody: | ||
+ | na NixOS a nixpkgs založená. | ||
- | If you have set your public | + | ===== Prvotní konfigurace ===== |
+ | VPS je vytvořeno ze šablony, která obsahuje minimální systém a SSH. | ||
+ | Pro přihlášení je možné použít [[navody: | ||
+ | nebo si nechat [[navody: | ||
+ | vpsAdmin. | ||
+ | na nasazení NixOS. | ||
- | ==== Initial setup & informations ==== | + | Naše VPS jsou linuxové kontejnery, není zde zavaděč, jádro je sdílené a je potřeba |
+ | určité nastavení pro správnou funkci NixOS. Šablona obsahuje tuto konfiguraci | ||
+ | v souboru ''/ | ||
+ | Aktuální modul s konfigurací je vždy možné stáhnout | ||
+ | z [[https:// | ||
- | After installing NixOS (mainly talking about stable release) you **have to know**, that there is activated firewall by default blocking everything except ssh (port no. 22) so if you want to run some webserver (for example nginx) you have to tell firewall to not block your ports with this in your / | + | ===== Upgrade mezi verzemi ===== |
- | < | + | Upgrade probíhá standardním způsobem ve VPS, v průběhu aktualizace (načtení channel s balíčky, zbuildění konfigurace) však může být třeba ve vpsAdminu v detailu VPS změnit použitou verzi distribuce na novější (právě instalovanou). |
- | Then dont forget to do | + | Nejprve si vylistujeme stávající channel a zjistíme tak verzi a název kanálu: |
- | < | + | < |
+ | Poté můžeme přidat channel nové verze na stejném kanálu (v případě VPS u vpsFree je to vždy nixos): | ||
- | ==== Configuration ==== | + | < |
- | Configuration is available at < | + | Následně můžeme udělat update (načtení kanálu a balíčků z něj): |
- | This can be altered to change container configuration on the fly or for next reboot. Try changing container hostname and running | + | < |
- | If you are using channels you can update your system by running < | + | A samotný |
- | ==== Package installation ==== | + | < |
- | Packages can be installed system wide via configuration.nix or for local profile via < | + | V této fázi bude třeba velmi pravděpodobně změnit distribuci v detailu vps ve vpsAdminu a také upravit konfiguraci podle doporučení (různá změna konfigurace, |
- | To install vim use < | + | ===== Správa VPS ===== |
+ | Přejdi na [[: | ||
- | To search for a package use < | ||
- | |||
- | ==== Manual ==== | ||
- | |||
- | Consult NixOS manual for more https:// | ||
- | |||
- | |||
- | ===== Legacy OpenVZ templates ===== | ||
- | |||
- | <note important> | ||
- | |||
- | ==== Common issues ==== | ||
- | |||
- | === SSH public key deployment fails === | ||
- | |||
- | This can occur on first boot of the template when there' | ||
- | |||
- | === error: while setting up the build environment: | ||
- | |||
- | Nix ≥ 1.11.10 requires seccomp, which is not available on vpsFree. To fix this, pin Nix to 1.11.9 by adding the following option to '' | ||
- | |||
- | < | ||
- | nix.package = (import (pkgs.fetchFromGitHub { | ||
- | owner = " | ||
- | repo = " | ||
- | rev = " | ||
- | sha256 = " | ||
- | }) {}).nix; | ||
- | </ | ||
- | |||
- | In the future, it will be possible to [[https:// | ||
- | |||
- | === systemd 233+ compatibility issues === | ||
- | |||
- | Causes boot failures, workaround is pinning systemd to version 232: | ||
- | < | ||
- | nixpkgs.config.packageOverrides = super: | ||
- | let systemdGperfCompat = super.systemd.override { gperf = super.gperf_3_0; | ||
- | in { | ||
- | systemd = systemdGperfCompat.overrideAttrs ( oldAttrs: rec { | ||
- | version = " | ||
- | name = " | ||
- | src = pkgs.fetchFromGitHub { | ||
- | owner = " | ||
- | repo = " | ||
- | rev = " | ||
- | sha256 = " | ||
- | }; | ||
- | }); | ||
- | }; | ||
- | </ | ||
- | |||
- | ==== Details ==== | ||
- | |||
- | Log contents | ||
- | < | ||
- | Failed to canonicalize path / | ||
- | |||
- | $ journalctl -o verbose | ||
- | _EXE=/ | ||
- | _CMDLINE=/ | ||
- | CODE_FILE=src/ | ||
- | CODE_LINE=133 | ||
- | CODE_FUNC=unit_file_find_dir | ||
- | ERRNO=40 | ||
- | MESSAGE=Failed to canonicalize path / |