Pular para o conteúdo

NixOS + NVIDIA antiga: como sobreviver ao driver 595 (GTX 750 Ti / Maxwell)

Dica publicada em Linux / Hardware
Cézar Augusto cizordj
Hits: 331 Categoria: Linux Subcategoria: Hardware
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

NixOS + NVIDIA antiga: como sobreviver ao driver 595 (GTX 750 Ti / Maxwell)

Recentemente enfrentei um problema ao atualizar meu sistema NixOS: após atualizar os flakes, o driver da NVIDIA foi atualizado automaticamente da versão 580.142 para 595.58.03, e minha GPU (GTX 750 Ti, arquitetura Maxwell) simplesmente parou de funcionar.

Ao tentar carregar o módulo manualmente:

modprobe nvidia

Recebi o erro:

modprobe: ERROR: could not insert 'nvidia': No such device

Apesar disso, o sistema ainda apresentava vídeo normalmente usando framebuffer em baixa resolução.

Causa do problema

A causa não é um erro de configuração, mas sim uma mudança recente da NVIDIA:

  • A arquitetura Maxwell foi considerada "feature-complete"
  • Drivers mais novos (como 595) não garantem mais suporte real
  • O módulo carrega, mas não reconhece a GPU

Ou seja, o driver existe, mas não contém mais suporte efetivo ao hardware.

Solução

A solução é usar a versão mais recente ainda compatível com a GPU que no meu caso é a 580.142.

No NixOS, isso pode ser feito usando a função mkDriver.

{ config, pkgs, ... }:

{

  services.xserver.videoDrivers = [ "nvidia" ];

  hardware.graphics.enable = true;

  nixpkgs.config.nvidia.acceptLicense = true;

  hardware.nvidia = {

  modesetting.enable = true;

  powerManagement.enable = true;

  open = false;

  nvidiaSettings = true;

  # GPUs antigas não usam GSP

  gsp.enable = false;

  nvidiaPersistenced = true;

  package = config.boot.kernelPackages.nvidiaPackages.mkDriver {

    version = "580.142";

    sha256_64bit = "sha256-IJFfzz/+icNVDPk7YKBKKFRTFQ2S4kaOGRGkNiBEdWM=";

    settingsSha256 = "sha256-BnrIlj5AvXTfqg/qcBt2OS9bTDDZd3uhf5jqOtTMTQM=";

    persistencedSha256 = "sha256-il403KPFAnDbB+dITnBGljhpsUPjZwmLjGt8iPKuBqw=";

    };

  };

}
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

De acordo com o site oficial, a última versão suportada de fato é a 580.142.

Linux: NixOS + NVIDIA antiga: como sobreviver ao driver 595 (GTX 750 Ti / Maxwell)

Observações importantes

1. GSP precisa ser desabilitado

GPUs antigas não possuem suporte a firmware GSP.

Sem isto:

gsp.enable = false;

o build falha com:

This version of NVIDIA driver does not provide a GSP firmware

2. Como descobrir os hashes

Use:

pkgs.lib.fakeSha256

e deixe o Nix falhar. Ele mostrará o hash correto para substituir.

Conclusão

Se você possui uma GPU mais antiga (como a GTX 750 Ti), atualizar o NixOS pode quebrar o driver NVIDIA sem aviso claro.

A solução não é usar um driver "legacy" antigo, mas sim fixar a versão mais recente ainda compatível com o seu hardware. No caso da arquitetura Maxwell, isso está na faixa da série 580.

A Nvidia falou que ainda vai dar três anos de atualizações de segurança para essas GPUs, mas não vai haver novas versões. Temos até 2028 para usar essas placas.

Referências


O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Servidor web simples sem instalar nada

Como verificar a integridade das stock ROMs da Samsung

Problemas para instalar WoeUSB no Debian, Ubuntu e derivados [Resolvido]

O Molotov está no ar!

Como verificar senha no shell script

SmartConnect 3G: Seus modens 3G funcionando no Linux

Áudio no Ubuntu 10.04 - notebook HP G42-230

Driver Modem Lucent no K/Ubuntu 7/8

Wireless no ASUS X45

Ralink RT2870/RT3070 Wireless Adapter no Debian Squeeze

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.