Különösen egy nem ingyenes szoftvercsomagról van szó, ezért engedélyeznie kell ezt az opciót. Ezenkívül kezelnie kell az 'glXChooseVisual sikertelen' problémát is. A folyamat a NixOS-ban egyféleképpen, más terjesztéseknél pedig másképp fog működni. Csak a Nix csomagkezelővel bonyolultabb.
Mi a Steam?
A legtöbb érkező már ismeri ezt, de mindenképp térjünk ki ide. A Steam egy platform és piac a játékok és a játékosok számára. Úgy indult, hogy frissítse a játékot a Valve-ból. Ez volt az egyetlen életben először. Mivel a cég további játékokat adott hozzá, azokat is felvette a platformra. A sok rendelkezésre álló játék miatt piacra és közösségi platformra építették. Most már játszhat és vásárolhat játékokat, és kapcsolatban maradhat a többi játékossal a platformon. Mindezek figyelembevételével természetesen szeretné telepíteni a NixOS rendszerére.
A futtatható fájl telepítése
Korábban a NixOS-on volt néhány probléma a Steam szolgáltatással. A problémák megoldódtak, de a többi csomaghoz képest még mindig szükség van néhány további műveletre.
Az egyik kérdés, hogy ez nem szabad szoftver. Másodszor, a csomagok a 32 bites változat Glx-jét használják, ami nem tükröződik egyértelműen a csomagokban. Ezt a két kérdést kell kezelni a csomagkezelő beállításakor: Nix vagy NixOS konfiguráció (.nix) fájl. A tényleges megoldás az volt, hogy a dri támogatás 32 bites értékét igazra állítsa. Volt néhány más, de a Maciej Krüger új moduljának köszönhetően most hozzáadhatja a modult az alábbi kóddal.
programok.gőz.engedélyez = igaz;nixpkgs.konfig.allowNonFree = igaz;
Ez egy olyan modul, amely számos problémát megoldott a Steam szoftver egyes furcsaival. Miután ezt megfelelően beállította, futtathatja a telepítést. Ha érdekel, az alábbi kód az a dedikálás, amely hozzáadja a modult annak megvalósításához.
config, lib, pkgs,…:libvel;
hadd
cfg = config.programok.gőz;
ban ben
opciók.programok.gőz.enable = mkEnableOption "steam";
config = mkHa vö.engedélyezze
hardver.opengl = # ez kijavítja a "glXChooseVisual sikertelen" hibát, kontextus:
https: // github.com / NixOS / nixpkgs / issues / 47932
engedélyez = igaz;
driSupport32Bit = igaz;
;
# opcionálisan engedélyezze a 32 bites pulseaudio támogatást, ha a pulseaudio engedélyezve van
hardver.pulseaudio.support32Bit = config.hardver.pulseaudio.engedélyezze;
hardver.gőz-hardver.engedélyez = igaz;
környezet.systemPackages = [pkgs.gőz ];
;
meta.fenntartók = fenntartókkal; [mkg20001];
Amint a kódban láthatja, aktiválja a 32 bites közvetlen megjelenítés és hang támogatását. Hozzáadja a 'pkgs. Csomagot is.steam ', amely a fő Steam csomag. A korábbi konfigurációval a következő újjáépítési kapcsolónál be kell állítania az egész rendszert. Miután elmentette a konfigurációt, futtassa:
$ nixos-rebuild kapcsolóLegtöbben ez lehetővé teszi a telepítés előrehaladását. Most meg kell győződnie arról, hogy van-e elegendő lemezterülete a telepítéshez. A telepítendő játékokhoz is szükséges lemezterület.
hardver.opengl.driSupport32Bit = igaz;Ha rosszul mennek a dolgok, használja:
$ strace gőzSok egyéb opcionális csomag telepíthető, ha bármilyen speciális igénye vagy vágya van.
nixpkgs.gőzfutás (gőzfutás)
Miért van szükséged gőzfuttatásra? A Steam-run lehetővé teszi a NixOS könyvtárak használatát a Steam által biztosítottak helyett. Ez jobban működhet, ha olyan játékokat szeretne futtatni, amelyek alatt rendes Linux rendszerre számítanak. Néhány játék futtatásához javításra van szükség a Steam környezet használatával. Ennek oka, hogy csak a Steam által biztosított játékok készülnek zárt környezetben. Ezek használatához adja hozzá a steam-run vagy steam-run-native konfigurációs fájljához.
környezet.systemPackages = pkgs-szel; […
gőzzel futott-honos
];
A steam-run parancsot közvetlenül is használhatja, például:
$ gőzfutás ./játék kezdése.SHEz közvetlenül a Steam környezetben futtatja a játékot.
Hiányzó függőségek
Egyes játékokhoz szükség lehet olyan függőségekre, amelyeket a NixOS nem biztosít automatikusan. Ennek kijavításához felveheti őket a konfigurációs fájlba a systemPackages alatt.
környezet.systemPackages = pkgs-szel; […
(gőz.felülbírálja az extraPkgs = pkgs: [mono gtk3 gtk3-x11 libgdiplus zlib];
natívCsak = igaz; ).fuss
(gőz.override withPrimus = true; extraPkgs = pkgs: [darázs glxinfo];
natívCsak = igaz; ).fuss
(gőz.felülbírálja withJava = true; )
];
A fenti kód sok esetben függőséget ad hozzá. Természetesen maga választja ki azokat, amelyekre szüksége van. Kereshet más hiányzó függőségeket is. Ha mégis, akkor egyedül leszel, ezért készülj fel a terminál használatára az indításhoz és a nyomon követéshez, amikor segítséget kérsz a különböző támogatási fórumokon.
Egyéb hasznos csomagok
Van néhány speciális csomagja is, amelyek segítséget nyújthatnak bizonyos kérdésekben.
nixpkgs.steamcmd (steamcmd)
Ez a csomag hozzáadja a Steam parancssori eszközöket. Ezt felhasználhatja szoftverek telepítéséhez és saját szervereinek futtatásához; egyes feladatok automatizálhatók.
Sok más csomag is rendelkezésre áll. Használatukhoz hozzáadjuk őket a csomagjaihoz és újjáépítjük. A jelenleg elérhetőek az alábbiak:
nixpkgs.kodiPlugins.gőzindító (kodi-plugin-steam-launcher)
Indítsa el a Steam-et nagy kép módban a Kodi-tól
nixpkgs.pidgin-opensteamworks (pidgin-opensteamworks)
Plugin a Pidgin 2-hez.x, amely a Steam Friends / Steam IM kompatibilitást valósítja meg
nixpkgs.bitlbee-steam (bitlbee-steam)
Steam protokoll plugin a BitlBee számára
nixpkgs.eidolon (eidolon-1.4.6)
Egyetlen TUI-alapú regisztráció drm-mentes, bor- és gőzjátékokhoz Linuxon, egy rofi indítómenü segítségével érhető el
nixpkgs.kodiPlugins.steam-controller (kodi-plugin-peripheral.gőzvezérlő)
Bináris kiegészítő a gőzszabályozóhoz
nixpkgs.anyaghíd (anyaghíd-1.18.0)
Az egyszerű híd a Mattermost, IRC, XMPP, Gitter, Slack, Discord, Telegram, Rocket között.Chat, Hipchat (XMPP-n keresztül), Matrix és Steam
nixpkgs.gőzszabályozó (gőzszabályozó)
Önálló Steam vezérlő illesztőprogram
nixpkgs.sc-vezérlő (sc-controller-0.4.7)
Felhasználói módú illesztőprogram és GUI a Steam vezérlőhöz és más vezérlőkhöz
Következtetés
A Steam egy kis problémát jelent, mivel a platform és egyes játékok nagy része még mindig 32 bites könyvtárakat igényel, és ezt engedélyeznie kell. Remélhetőleg itt kapta meg a választ. Ha nem, akkor kérdezhet a fórumokon! A NixOS rendkívül sokoldalú, de a Nix nyelv megismerése nehézkes. A váltáskor győződjön meg arról, hogy valamilyen alapvető ismerettel rendelkezik a nyelvről, hogy elkerülje a megoldások hosszadalmas keresését. Önnek képesnek kell lennie arra, hogy maga is előálljon sokakkal a Nix nyelv megfelelő megértésével.