NixOS

Come installare Steam su NixOS?

Come installare Steam su NixOS?
Quando installi cose su NixOS, devi avere un pacchetto nel formato giusto su nixos.pagina web dell'organizzazione. Steam è disponibile, ma alcune stranezze potrebbero farti inciampare quando provi a installarlo. Sentirai di più su questo qui.

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

Cos'è Steam??

La maggior parte delle persone che vengono già lo sanno, ma copriamolo comunque qui. 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. Man mano che la società aggiungeva più giochi, li aggiungeva anche alla piattaforma. Con così tanti giochi disponibili, l'hanno ricostruito per essere un mercato e una piattaforma di comunità. Ora puoi sia giocare che acquistare giochi e rimanere in contatto con altri giocatori sulla piattaforma. Detto tutto questo, ovviamente, vuoi averlo installato sul tuo sistema NixOS.

Installazione dell'eseguibile principale

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

Un problema è che questo non è un software gratuito. In secondo luogo, i pacchetti utilizzano Glx della variante a 32 bit, cosa che non si riflette chiaramente nei pacchetti. Questi due problemi devono essere affrontati nella configurazione del gestore pacchetti: configurazione Nix o NixOS (.nix) file. La soluzione effettiva era impostare il valore a 32 bit del supporto dri 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 qui sotto.

programmi.vapore.abilita = vero;
nixpkgs.config.allowNonFree = vero;

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

config, lib, pkgs,… :
con lib;
permettere
cfg = config.programmi.vapore;
nel
opzioni.programmi.vapore.enable = mkEnableOption "steam";
config = mkIf cfg.abilitare
hardware.opengl = # questo risolve il bug "glXChooseVisual failed", context:
https://github.com/NixOS/nixpkgs/issues/47932
abilita = vero;
driSupport32Bit = vero;
;
# abilita facoltativamente il supporto pulseaudio a 32 bit se pulseaudio è abilitato
hardware.impulsoaudio.support32Bit = config.hardware.impulsoaudio.abilitare;
hardware.vapore-hardware.abilita = vero;
ambiente.systemPackages = [ pkgs.vapore];
;
meta.manutentori = con manutentori; [mkg20001];

Come puoi vedere nel codice, attiva il supporto per il rendering diretto e l'audio a 32 bit. Aggiunge anche il pacchetto 'pkgs.steam", che è il pacchetto principale di Steam. Con la configurazione precedente, dovresti far funzionare l'intero sistema al prossimo switch di ricostruzione. Una volta salvata la configurazione, esegui:

$ switch nixos-rebuild

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 richiedono spazio su disco.

hardware.aperto.driSupport32Bit = vero;

Se le cose vanno male, usa:

$ strace vapore

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

nixpkgs.a vapore (a vapore)

Perché hai bisogno di vapore?? Steam-run rende possibile l'esecuzione utilizzando le librerie NixOS invece di quelle fornite da Steam. Questo potrebbe funzionare meglio quando vuoi eseguire giochi che si aspettano un normale sistema Linux sotto. Alcuni giochi necessitano di patch per essere eseguiti, utilizzando l'ambiente Steam. Il motivo è che solo i giochi forniti da Steam sono creati per un ambiente chiuso. Per usarli, aggiungi steam-run o steam-run-native al tuo file di configurazione.

ambiente.systemPackages = con pacchetti; [

Steam-run-nativo
];

Puoi anche usare steam-run direttamente come comando, in questo modo:

$ corsa a vapore ./inizia il gioco.sh

Questo eseguirà il gioco direttamente in un ambiente Steam.

Dipendenze mancanti

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

ambiente.systemPackages = con pacchetti; [

(vapore.override extraPkgs = pkgs: [ mono gtk3 gtk3-x11 libgdiplus zlib ];
nativeOnly = vero; ).correre
(vapore.override withPrimus = true; extraPkgs = pkgs: [ bumblebee glxinfo ];
nativeOnly = vero; ).correre
(vapore.override withJava = true; )
];

Il codice sopra aggiunge dipendenze per molti casi. Sceglierai tu stesso quelli di cui hai bisogno, ovviamente. Puoi anche cercare altre dipendenze che potrebbero mancare. Tuttavia, sarai da solo se lo fai, quindi preparati a utilizzare il terminale per avviarlo 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 da riga di comando di Steam. Puoi usarlo per installare 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-launcher)

Avvia Steam in modalità Big Picture da Kodi

nixpkgs.pidgin-opensteamworks (pidgin-opensteamworks)

Plugin per Pidgin 2.x, che implementa la compatibilità Steam Friends/Steam IM

nixpkgs.bitlbee-steam (bitlbee-steam)

Plugin del protocollo Steam per BitlBee

nixpkgs.eidolon (eidolon-1.4.6)

Un unico registro basato su TUI per giochi senza drm, wine e steam su Linux, accessibile tramite un menu di avvio rofi

nixpkgs.kodiPlugins.controller del vapore (kodi-plugin-peripheral.regolatore di vapore)

Componente aggiuntivo binario per il controller del vapore

nixpkgs.matterbridge (matterbridge-1.18.0)

Il semplice ponte tra Mattermost, IRC, XMPP, Gitter, Slack, Discord, Telegram, Rocket.Chat, Hipchat (tramite XMPP), Matrix e Steam

nixpkgs.controller del vapore (controllore del vapore)

Un driver per controller Steam autonomo Steam

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 sui forum! NixOS è estremamente versatile, ma fare i conti con il linguaggio Nix è un lavoro ingrato. Quando cambi, assicurati di avere una conoscenza fondamentale della lingua per evitare lunghe e tortuose ricerche di soluzioni. Dovresti essere in grado di inventarne molti da solo con una sufficiente padronanza della lingua Nix.

Come cambiare i pulsanti sinistro e destro del mouse su PC Windows 10
È abbastanza normale che tutti i mouse dei computer siano progettati ergonomicamente per gli utenti destrimani. Ma sono disponibili dispositivi mouse ...
Emula i clic del mouse passando il mouse utilizzando il mouse senza clic in Windows 10
L'uso di un mouse o di una tastiera nella postura sbagliata di un uso eccessivo può causare molti problemi di salute, tra cui tensione, sindrome del t...
Aggiungi i gesti del mouse a Windows 10 utilizzando questi strumenti gratuiti
Negli ultimi anni computer e sistemi operativi si sono notevolmente evoluti greatly. C'è stato un tempo in cui gli utenti dovevano usare i comandi per...