Steam (Português)

From ArchWiki

Steam é uma plataforma de distribuição de jogos criado pela Valve.

Nota: Steam para Linux suporta apenas Ubuntu LTS.[1] Portanto, não recorra à Valve para obter suporte para problemas do Steam no Arch Linux.

Instalação

Habilite o repositório multilib e instale o pacote steam.

Os seguintes requisitos devem ser cumpridos para executar o Steam no Arch Linux:

SteamCMD

Instale steamcmdAUR para a versão de linha de comando do Steam.

Instalação alternativa pelo Flatpak

Steam também pode ser instalado com o Flatpak como com.valvesoftware.Steam do Flathub. A forma mais fácil de instalá-lo para o usuário atual é usando o repositório Flathub e o comando flatpak:

 flatpak --user remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
 flatpak --user install flathub com.valvesoftware.Steam
 flatpak run com.valvesoftware.Steam

A aplicação Flatpak atualmente não suporta temas. Você também não pode rodar jogos via optirun/primusrun, veja Issue#869 para mais detalhes.

Steam instalado via Flatpak não é capaz de acessar seu diretório pessoal e alterar isso fará com que o Steam não inicie, por não ser seguro. Porém, você pode adicionar diretórios fora do diretório pessoal livremente. Se você quiser adicionar uma biblioteca externa, rode o seguinte comando para adicionar:

flatpak override com.valvesoftware.Steam --filesystem=/path/to/directory

Problemas com fontes asiáticas pelo Flatpak

Se você está tendo problemas em fazer com que fontes asiáticas apareçam em jogos, é porque org.freedesktop.Platform não as inclue. Primeiramente, tente montar sua fonte local:

flatpak run --filesystem=~/.local/share/fonts --filesystem=~/.config/fontconfig  com.valvesoftware.Steam

Se isso não funcionar, considere essa modificação: copie diretamente os arquivos da fonte nos diretórios do org.freedesktop.Platform, por exemplo:

# substitua ? com sua versão e hash
/var/lib/flatpak/runtime/org.freedesktop.Platform/x86_64/?/?/files/etc/fonts/conf.avail
/var/lib/flatpak/runtime/org.freedesktop.Platform/x86_64/?/?/files/etc/fonts/conf.d
/var/lib/flatpak/runtime/org.freedesktop.Platform/x86_64/?/?/files/share/fonts

Estrutura do diretório

A localização da instalação padrão do Steam é ~/.local/share/Steam. Se o Steam não puder encontrar o diretório, solicitará que você reinstale ou selecione um novo diretório. Esse artigo usa o symlink ~/.steam/root para se referir ao diretório da instalação.

Pastas da biblioteca

Toda aplicação Steam tem um AppID único, que você pode descobrir olhando o caminho de sua página na Loja Steam ou visitando o site SteamDB.

O Steam instala os jogos em um diretório em LIBRARY/steamapps/common/. LIBRARY normalmente é ~/.steam/root, mas você também pode ter múltiplas pastas de biblioteca (Steam > Configurações > Downloads > Pastas de Biblioteca).

Para o Steam reconhecer um jogo, ele precisa ter um arquivo appmanifest_AppId.acf em LIBRARY/steamapps/. O arquivo appmanifest usa o formato KeyValues e a sua propriedade installdir determina o nome do diretório do jogo.

Utilização

steam [ -options ] [ steam:// URL ]

Para as opções de linha de comando disponíveis, veja o artigo de Opções de Linha de Comando na Valve Developer Wiki.

O Steam também aceita opcionalmente um Steam URL, veja o protocolo do Steam browser.

Opções de inicialização

Quando você inicia um jogo, o Steam executa seu comando de inicialização em uma shell Bash Para deixar você alterar o comando de inicialização, o Steam providencia opcções de inicialização, que podem ser definidos para um jogo clicando-o com o botão direito em sua biblioteca, selecionando Propriedades e clicando em Definir opções de inicialização.

Por padrão, o Steam apenas anexa suas opções no comando de inicialização. Para definir variáveis de ambiente ou passar o comando de inicialização como um argumento de outro comando, você pode utilizar o substituto %command%.

Exemplos

  • apenas argumentos: -foo
  • variáveis de ambiente: FOO=bar BAZ=bar %command% -baz
  • comando completamente diferente: outrocomando # %command%

Dicas e truques

Iniciar minimizado

É possível com que o Steam inicie minimizado na bandeja do sistema, adicionando -silent na lista de argumentos no arquivo de inicialização automática.

~/.config/autostart/steam.desktop
...
Exec=/usr/bin/steam -silent
...

Patch Fsync

A Valve lançou um patch especial para o kernel que deve ajudar a aumentar o FPS em aplicações com muitos processos. Existem alguns métodos de obter e utilizar esse patch:

Proton Steam-Play

A Valve desenvolveu uma ferramenta de compatibilidade para o Steam Play baseado no Wine e componentes adicionais. Ela permite iniciar vários jogos do Windows (veja a lista de compatibilidade).

É de código aberto e disponível no GitHub. O Steam irá instalar suas próprias versões do Proton quando o Steam Play estiver habilitado.

O Proton precisa ser habilitado no cliente Steam: Steam > Configurações > Steam Play. Você pode habilitar o Steam Play tanto para jogos que foram permitidos pela Valve e para os que não foram.

Se preciso, para forçar o Proton a ser habilitado ou uma versão específica do Proton para um jogo, clique com o botão direito no jogo, clique em Propriedades > Geral > Forçar o uso de uma ferramenta específica de compatibilidade do Steam Play, e selecione a versão desejada. Isso também pode ser usado para forçar jogos que tem uma versão para Linux a usar a versão para Windows.

Você também pode instalar o Proton da AUR com protonAUR ou proton-gitAUR, mas é necessário configuração adicional para funcionar com o Steam. Veja o GitHub do Proton para detalhes de como o Steam reconhece instalações do Proton.

Modo Big Picture sem um window manager

Para iniciar o Steam no modo Big Picture de um Display manager, você pode: To start Steam in Big Picture Mode from a Display manager, you can either:

  • Instalar steamos-compositorAUR
  • Alternativamente, instalar steamos-compositor-plusAUR, que esconde as cores piscando na inicialização de jogos pelo Proton e adiciona uma correção para jogos que iniciam em segundo plano.
  • Manualmente adicionar uma entrada para o Steam (mas você perde as vantagens do compostitor steam: principalmente, você não pode controlar o modo Big Picture com o teclado ou controle):

Crie um arquivo /usr/share/xsessions/steam-big-picture.desktop com o seguinte conteúdo:

/usr/share/xsessions/steam-big-picture.desktop
[Desktop Entry]
Name=Steam Big Picture Mode
Comment=Start Steam in Big Picture Mode
Exec=/usr/bin/steam -bigpicture
TryExec=/usr/bin/steam
Icon=
Type=Application

Temas Steam

A interface do Steam pode ser customizado usando temas. Temas podem sobrescrever arquivos específicos de interface no ~/.steam/root.

Para instalar um tema:

  1. Coloque seu diretório em ~/.steam/root/skins.
  2. Abra Steam > Configurações > Interface e selecione-o.
  3. Reinicie o Steam.

Uma lista extensiva de temas pode ser encontrado nesse post nos fóruns da Steam.

Nota: Utilizar um tema desatualizado pode causar erros visuais.

Criando temas

Quase todos temas do Steam são definidos em ~/.steam/root/resource/styles/steam.styles (o arquivo tem mais de 3.500 linhas). Para um tema ser reconhecido ele precisa de seu próprio resource/styles/steam.styles. Quando uma atualização do Steam muda o steam.styles oficial, seu tema pode ficar desatualizado, potencialmente resultando em erros visuais.

Veja ~/.steam/root/skins/skins_readme.txt para uma introdução em como criar temas.

Alterando a posição da notificação do Steam

A posição padrão da notificação do Steam é no canto inferior direito.

Você pode mudar a posição da notificação do Steam alterando o Notifications.PanelPosition em

  • resource/styles/steam.styles para notificações da desktop, e
  • resource/styles/gameoverlay.styles para notificações no jogo.

Os dois arquivos são sobrescrevidos pelo Steam na inicialização e steam.styles é lido apenas na inicialização.

Nota: Alguns jogos não respeitam a configuração em gameoverlay.styles ex: XCOM: Enemy Unknown.

Usando um tema

Você pode criar um tema para mudar a posição da notificação do seu jeito. Por exemplo, para mudar a posição para o canto superior direito:

$ cd ~/.steam/root/skins
$ mkdir -p Top-Right/resource
$ cp -r ~/.steam/root/resource/styles Top-Right/resource
$ sed -i '/Notifications.PanelPosition/ s/"[A-Za-z]*"/"TopRight"/' Top-Right/resource/styles/*

Live patching

gameoverlay.styles pode ser sobrescrito enquando o Steam está rodando, permitindo que você tenha posições de notificação específicas para cada jogo.

~/.steam/notifpos.sh
sed -i "/Notifications.PanelPosition/ s/\"[A-Za-z]*\"/\"$1\"/" ~/.steam/root/resource/styles/gameoverlay.styles

E as #Opções de inicialização devem ser algo como:

~/.steam/notifpos.sh TopLeft && %command%

Steam Remote Play

Nota: Steam In-Home Streaming virou Steam Remote Play.

O Steam tem suporte embutido para remote play.

Veja esse guia na Comunidade Steam de como configurar um servidor headless de streaming no Linux.

Steam Controller

Normalmente um Steam Controller requer o uso da sobreposição Steam. Porém, em jogos não-Steam nativos para Linux a sobreposição pode não ser prática. Para isso, enquanto o cliente Steam está rodando, ele irá manter uma "configuração de desktop". Com seu Steam Controller, altere sua configuração de desktop para um controle genérico de XBOX. Desde que o cliente Steam esteja rodando, você pode usar o seu Steam Controller em outros jogos, como jogos da GOG, como um controle de XBOX. Certifique-se de selecionar seu tipo de controle para mapear nas configurações gerais do controle.

Solução de problemas

Veja Steam/Troubleshooting.

Veja também