Come installare il vapore su Nixos?

Come installare il vapore su Nixos?
Quando si installa le cose su Nixos, è necessario disporre di un pacchetto nel formato giusto sui Nixos.Pagina Web Org. Steam è disponibile, ma alcune stranezze potrebbero farti girare quando provi a installarlo. Sarai di più su questo qui.

In particolare, è un pacchetto software non gratuito, quindi è necessario abilitare questa opzione. Dovrai anche gestire il problema "glxchoosevisual non riuscito". Il processo funzionerà in un modo in Nixos e un altro modo su altre distribuzioni. È più complesso con solo il gestore dei pacchetti Nix.

Cos'è il vapore?

La maggior parte delle persone che vengono già lo sanno ma copriamolo qui comunque. Steam è una piattaforma e un mercato per giochi e giocatori. È iniziato come un modo per aggiornare il tuo gioco da Valve. Era l'unico per la prima volta nella vita. Mentre la società ha aggiunto più giochi, li hanno anche aggiunti alla piattaforma. Con così tanti giochi disponibili, lo hanno ricostruito per essere un luogo di mercato e una piattaforma comunitaria. Ora puoi giocare e acquistare giochi e rimanere in contatto con altri giocatori sulla piattaforma. Dato tutto questo, ovviamente, vuoi averlo installato sul tuo sistema Nixos.

Installazione dell'eseguibile principale

Ci sono stati alcuni problemi con il vapore su Nixos in passato. I problemi sono stati risolti ma richiedono ancora alcune azioni extra rispetto ad altri pacchetti.

Un problema è che questo non è software gratuito. In secondo luogo, i pacchetti usano GLX della variante a 32 bit, qualcosa che non si riflette chiaramente nei pacchetti. Questi due problemi devono essere affrontati nella configurazione di Package Manager: Nix o Nixos Configuration (.FILE NIX). La soluzione effettiva era impostare il valore di supporto DRI a 32 bit su True. Ce n'erano alcuni altri, ma grazie a un nuovo modulo di Maciej Krüger, ora puoi semplicemente aggiungere il modulo con il codice sottostante.

programmi.vapore.abilita = true;
NIXPKGS.configurazione.allownonfree = true;

Questo è un modulo che ha risolto diversi problemi con alcune stranezze del software Steam. Una volta che hai questo set correttamente, è possibile eseguire l'installazione. Se sei interessato, il codice seguente proviene dal commit che aggiunge il modulo per realizzarlo.

config, lib, pkgs, ...:
con lib;
permettere
CFG = config.programmi.vapore;
In
opzioni.programmi.vapore.abilita = mkenableoption "vapore";
config = mkif cfg.abilitare
hardware.OpenGL = # Questo fissa il bug "GlxChoosevisual non riuscito", contesto:
https: // github.com/nixos/nixpkgs/numeri/47932
abilita = true;
drisupport32bit = true;
;
# facoltativamente abilitare il supporto PulseAudio a 32 bit se PulseAudio è abilitato
hardware.Pulseaudio.Support32bit = config.hardware.Pulseaudio.abilitare;
hardware.HADARDware a vapore.abilita = true;
ambiente.SystemPackages = [PKGS.vapore ];
;
meta.manutentori = con manutentori; [MKG20001];

Come puoi vedere nel codice, attiva il supporto per il rendering diretto a 32 bit e l'audio. Aggiunge anche il pacchetto 'pkgs.Steam ', che è il pacchetto di vapore principale. Con la configurazione precedente, dovresti far funzionare l'intero sistema al prossimo interruttore di ricostruzione. Dopo aver salvato la configurazione, eseguire:

$ nixos-rebuild switch

Per la maggior parte di voi, questo consentirà all'installazione di andare avanti. Ora devi assicurarti di avere abbastanza spazio su disco per l'installazione. Anche i giochi che installerai hanno bisogno anche dello spazio su disco.

hardware.OpenGL.drisupport32bit = true;

Se le cose vanno male, usa:

$ Strace Steam

Ci sono molti altri pacchetti opzionali da installare se hai esigenze o desideri speciali.

NIXPKGS.Run a vapore (Run a vapore)

Perché hai bisogno di vapore? Run a vapore consente di funzionare utilizzando librerie Nixos anziché quelle che Steam fornisce. Questo potrebbe funzionare meglio quando si desidera eseguire giochi che si aspettano un normale sistema Linux sotto. Alcuni giochi hanno bisogno di patch per funzionare, usando l'ambiente Steam. Il motivo è che solo i giochi a vapore forniti sono costruiti per un ambiente chiuso. Per utilizzarli, aggiungi il nativo a vapore o-nativo a vapore al file di configurazione.

ambiente.SystemPackages = con PKGS; [
..
Nativo a vapore
];

Puoi anche usare il vapore direttamente come comando, come questo:

$-RUN ./inizia il gioco.sh

Questo eseguirà il gioco in un ambiente Steam direttamente.

Dipendenze mancanti

Alcuni giochi potrebbero aver bisogno di dipendenze che Nixos non fornisce automaticamente. Per risolvere questo problema, puoi aggiungerli al file di configurazione in SystemPackages.

ambiente.SystemPackages = con PKGS; [
..
(vapore.override extrapkgs = pkgs: [mono gtk3 gtk3-x11 libgdiplus zlib];
nativeOnly = true; ).correre
(vapore.Override withprimus = true; extrapkgs = pkgs: [bumblebee glxinfo];
nativeOnly = true; ).correre
(vapore.Override withJava = true; )
];

Il codice sopra aggiunge dipendenze per molti casi. Sceglierai quelli di cui hai bisogno, ovviamente. Puoi anche cercare altre dipendenze che potrebbero mancare. Tuttavia, se lo fai, sarai da solo, quindi preparati a utilizzare il terminale per iniziare e rintracciarlo quando chiedi aiuto sui diversi forum di supporto.

Altri pacchetti utili

Hai anche alcuni pacchetti speciali che potrebbero aiutarti con alcuni problemi.

NIXPKGS.Steamcmd (Steamcmd)

Questo pacchetto aggiunge strumenti di riga di comando Steam. Puoi usarlo per l'installazione di software ed eseguire i tuoi server; Alcune attività possono essere automatizzate.

Hai anche molti altri pacchetti disponibili. Per usarli, li aggiungi ai tuoi pacchetti e ricostruisci. Quelli attualmente disponibili sono di seguito:

NIXPKGS.Kodiplugins.Steam-Launcher (Kodi-Plugin-Steam-Luncher)

Avvia il vapore in modalità Big Picture da Kodi

NIXPKGS.Pidgin-Opensteamworks (Pidgin-Opensteamworks)

Plugin per pidgin 2.X, che implementa Steam Friends/Steam IM Compatibility

NIXPKGS.Bitlbee-Steam (Bitlbee-Steam)

Plug -in protocollo Steam per Bitlbee

NIXPKGS.Eidolon (Eidolon-1.4.6)

Un singolo registro basato su TUI per giochi DRM-Free, Wine e Steam su Linux, accessibile tramite un menu di lancio ROFI

NIXPKGS.Kodiplugins.Controller a vapore (kodi-plugin-periferale.SteamController)

Addon binario per il controller Steam

NIXPKGS.MatterBridge (Matterbridge-1.18.0)

Il semplice ponte tra i più materiali, IRC, XMPP, gitter, Slack, Discord, Telegram, Rocket.Chat, hipchat (tramite XMPP), matrice e vapore

NIXPKGS.SteamController (SteamController)

Un driver di controller a vapore autonomo

NIXPKGS.SC-Controller (SC-Controller-0.4.7)

Driver in modalità utente e GUI per controller Steam e altri controller

Conclusione

Steam presenta un piccolo problema perché gran parte della piattaforma e alcuni giochi richiedono ancora librerie a 32 bit e devi abilitarlo. Spero che tu abbia ricevuto la tua risposta qui. In caso contrario, puoi chiedere nei forum! Nixos è estremamente versatile, ma arrivare alle prese con la lingua Nix è un lavoro ingrato. Quando si cambia, assicurati di avere una certa comprensione fondamentale della lingua per evitare ricerche di tornante a lunghe soluzioni. Dovresti essere in grado di escogitare molti te stesso con abbastanza comprensione della lingua Nix.