Jedná se zejména o nesvobodný softwarový balíček, takže musíte tuto možnost povolit. Budete také muset vyřešit problém „glXChooseVisual failed“. Tento proces bude fungovat jedním způsobem v NixOS a jiným způsobem v jiných distribucích. Je to složitější pouze se správcem balíků Nix.
Co je Steam?
Většina lidí, kteří přijdou, to už ví, ale pojďme to zde stejně pokrýt. Steam je platforma a trh pro hry a hráče. Začalo to jako způsob aktualizace hry z Valve. Byl to jediný poprvé v životě. Protože společnost přidala další hry, přidala je také na platformu. S tolika dostupnými hrami jej přestavěli na tržiště a komunitní platformu. Nyní můžete hrát i kupovat hry a zůstat v kontaktu s ostatními hráči na platformě. S ohledem na to vše samozřejmě chcete mít nainstalované ve vašem systému NixOS.
Instalace hlavního spustitelného souboru
V minulosti se ve službě Steam na NixOS vyskytly problémy. Problémy byly vyřešeny, ale stále vyžadují některé další akce ve srovnání s jinými balíčky.
Jedním z problémů je, že se nejedná o svobodný software. Zadruhé, balíčky používají Glx 32bitové varianty, což se v balíčcích jasně neodráží. Tyto dva problémy je třeba řešit v nastavení správce balíčků: Konfigurace Nix nebo NixOS (.soubor nix). Skutečným řešením bylo nastavit 32bitovou hodnotu podpory dri na true. Bylo několik dalších, ale díky novému modulu od Macieje Krügera nyní můžete modul přidat pouze s níže uvedeným kódem.
programy.parní.enable = true;nixpkgs.konfigurace.allowNonFree = true;
Jedná se o modul, který vyřešil několik problémů s některými vtípky softwaru Steam. Jakmile budete mít tuto sadu správně, můžete spustit instalaci. Pokud vás zajímá, níže uvedený kód pochází z potvrzení, které přidá modul, aby se to stalo.
config, lib, pkgs,…:s lib;
nechat
cfg = konfigurace.programy.parní;
v
možnosti.programy.parní.enable = mkEnableOption "pára";
config = mkIf cfg.povolit
Hardware.opengl = # toto opravuje chybu "glXChooseVisual failed", kontext:
https: // github.com / NixOS / nixpkgs / issues / 47932
enable = true;
driSupport32Bit = true;
;
# volitelně povolit podporu 32bit pulseaudio, pokud je povolen pulseaudio
Hardware.pulseaudio.support32Bit = konfigurace.Hardware.pulseaudio.umožnit;
Hardware.parní hardware.enable = true;
životní prostředí.systemPackages = [pkgs.parní ];
;
meta.udržovatelé = s udržovateli; [mkg20001];
Jak vidíte v kódu, aktivuje podporu pro 32bitové přímé vykreslování a zvuk. Přidává také balíček 'pkgs.steam ', což je hlavní balíček Steam. V dřívější konfiguraci byste měli celý systém uvést do provozu při příštím přepracování. Po uložení konfigurace spusťte:
Přepínač $ nixos-rebuildPro většinu z vás to umožní instalaci pokračovat. Nyní se musíte ujistit, že máte dostatek místa na disku pro instalaci. Také hry, které nainstalujete, také potřebují místo na disku.
Hardware.opengl.driSupport32Bit = true;Pokud se něco pokazí, použijte:
$ strace páryExistuje mnoho dalších volitelných balíčků k instalaci, pokud máte nějaké speciální potřeby nebo přání.
nixpkgs.parní provoz (parní provoz)
Proč potřebujete páru? Steam-run umožňuje spouštět pomocí knihoven NixOS místo těch, které poskytuje Steam. To může fungovat lépe, pokud chcete spouštět hry, které pod sebou očekávají běžný systém Linux. Některé hry potřebují ke spuštění opravu pomocí prostředí Steam. Důvodem je, že pouze hry poskytované Steamem jsou postaveny pro uzavřené prostředí. Chcete-li je použít, přidejte do konfiguračního souboru steam-run nebo steam-run-native.
životní prostředí.systemPackages = s pkgs; […
parní běh
];
Parní běh můžete také použít přímo jako příkaz, například takto:
$ parní provoz ./začít hru.shTím se hra spustí přímo v prostředí Steam.
Chybějící závislosti
Některé hry mohou vyžadovat závislosti, které NixOS automaticky neposkytuje. Chcete-li tento problém vyřešit, můžete je přidat do konfiguračního souboru v části systemPackages.
životní prostředí.systemPackages = s pkgs; […
(parní.přepsat extraPkgs = pkgs: [mono gtk3 gtk3-x11 libgdiplus zlib];
nativeOnly = true; ).běh
(parní.přepsat withPrimus = true; extraPkgs = pkgs: [čmelák glxinfo];
nativeOnly = true; ).běh
(parní.přepsat withJava = true; )
];
Výše uvedený kód přidává závislosti pro mnoho případů. Samozřejmě si vyberete ty, které potřebujete sami. Můžete také vyhledat další závislosti, které mohou chybět. Pokud to však uděláte, budete sami, takže buďte připraveni ke spuštění a sledování terminálu, když požádáte o pomoc na různých fórech podpory.
Další užitečné balíčky
Máte také několik speciálních balíčků, které vám mohou pomoci s některými problémy.
nixpkgs.steamcmd (steamcmd)
Tento balíček přidává nástroje příkazového řádku Steam. Můžete jej použít k instalaci softwaru a provozování vlastních serverů; některé úkoly lze automatizovat.
Máte také k dispozici mnoho dalších balíčků. Chcete-li je použít, přidejte je do svých balíčků a znovu sestavte. Aktuálně dostupné jsou níže:
nixpkgs.kodiPlugins.steam-launcher (kodi-plugin-steam-launcher)
Spusťte Steam v režimu Big Picture z Kodi
nixpkgs.pidgin-opensteamworks (pidgin-opensteamworks)
Plugin pro Pidgin 2.x, který implementuje kompatibilitu Steam Friends / Steam IM
nixpkgs.bitlbee-steam (bitlbee-steam)
Plugin protokolu Steam pro BitlBee
nixpkgs.eidolon (eidolon-1.4.6)
Jediný registr založený na TUI pro hry bez drmů, víno a parní hry v systému Linux, přístupný prostřednictvím spouštěcí nabídky rofi
nixpkgs.kodiPlugins.regulátor páry (kodi-plugin-periferní.regulátor páry)
Binární doplněk pro regulátor páry
nixpkgs.matterbridge (matterbridge-1.18.0)
Jednoduchý most mezi Mattermost, IRC, XMPP, Gitter, Slack, Discord, Telegram, Rocket.Chat, Hipchat (prostřednictvím XMPP), Matrix a Steam
nixpkgs.steamcontroller (steamcontroller)
Samostatný ovladač ovladače Steam
nixpkgs.sc-controller (sc-controller-0.4.7)
Ovladač uživatelského režimu a grafické uživatelské rozhraní pro řadič Steam a další řadiče
Závěr
Steam představuje malý problém, protože velká část platformy a některé hry stále vyžadují 32bitové knihovny a musíte to povolit. Doufejme, že jste zde dostali svou odpověď. Pokud ne, můžete se zeptat na fórech! NixOS je extrémně všestranný, ale zvládnout jazyk Nix je práce. Když přepnete, ujistěte se, že máte základní znalosti jazyka, abyste se vyhnuli dlouhému hledání řešení. Měli byste být schopni přijít s mnoha sami s dostatečným pochopením jazyka Nix.