Ir para o conteúdo

veilDocumentaçãoInício

Recursos e status

O que é suportado, experimental, planejado ou sem suporte, recurso por recurso.

Copiado de README.md no repositório do veilVer no GitHub (abre em uma nova aba)

Suportado significa: implementado, coberto por testes automatizados e verificado em um compositor (até agora, um sway headless; veja o status acima). Experimental significa que funciona, com uma limitação que convém conhecer, ou que ainda não foi verificado onde importa. Os recursos planejados vêm depois da 1.0.

RecursoStatusNotas
Imagens: PNG, JPEG, WebP, BMP, TIFF, GIF e os demais formatos do crate image (abre em uma nova aba)SuportadoDesenhadas na resolução física do monitor, e a cópia decodificada é liberada em seguida. Imagens com mais de 16384 pixels por lado, ou que precisariam de mais de 512 MiB, são recusadas.
Vídeos, em loop, sem áudioSuportadoQualquer formato que os plugins GStreamer instalados reproduzam. Verificados: H.264, HEVC, VP8, VP9 e AV1, e dez contêineres (MP4, WebM, Matroska, QuickTime, AVI, Ogg, ...).
Escala: fill, fit, stretch, center, tile e uma cor de fundoSuportadoPara imagens e vídeos (tile age como center para um vídeo).
HiDPI e escala fracionáriaSuportadoVerificado pixel a pixel nas escalas 1, 1.25, 1.5 e 2.
Todos os monitores, ou os que forem indicados; um papel de parede por monitor; monitores conectados depoisSuportadoCom imagens. Com vídeo, veja a próxima linha.
Mudanças de monitor durante a reprodução de um vídeoExperimentalUma mudança em qualquer monitor (conectado, desconectado, reescalado, ligado) derruba o daemon dentro do GStreamer (problema conhecido 1). Sob a unidade do systemd, ele volta com seus papéis de parede em cerca de três segundos.
veil set, clear, pause, resume, toggle, status, outputs (também como JSON), quit, pingSuportadoCódigos de saída estáveis. Um socket de controle para scripts e barras de status (docs/ipc.md).
Um novo papel de parede só substitui o anterior quando está prontoSuportadoUm vídeo assume quando o primeiro quadro está na tela; um arquivo que não pode ser exibido deixa o papel de parede anterior como está.
Papéis de parede salvos e exibidos de novo após uma reinicializaçãoSuportadoPor monitor, em ~/.local/state/veil/state.json.
Arquivo de configuraçãoSuportado~/.config/veil/config.toml (docs/configuration.md).
Unidade de usuário do systemdSuportadoPronta quando todos os monitores exibem seu papel de parede, reiniciada após uma falha, com watchdog.
Pausar um vídeo atrás de uma janela em tela cheia (ou de janelas que o cubram)Suportado no sway, experimental no HyprlandLido do IPC do compositor. No Hyprland 0.56.2, uma janela em tela cheia pausou a sua saída e, ao fechá-la, o vídeo voltou a ser reproduzido (2026-10-20); com --pause-on covered e nos demais casos, a verificação foi feita apenas contra um Hyprland falso.
Interromper um vídeo enquanto a tela está bloqueada ou o monitor está desligadoSuportado no sway, experimental nos demaisFunciona em qualquer compositor que pare de aceitar os quadros do vídeo, como o sway; não verificado no Hyprland (bloqueio e DPMS). O vídeo recomeça do início.
Decodificação de vídeo por hardwareExperimentalNVIDIA (nvcodec) decodifica na GPU, mas cada quadro é convertido para RGB na CPU (problema conhecido 7). Intel e AMD (VA-API) deveriam evitar essa conversão; ainda não verificado. A decodificação por software sempre funciona.
GIFs animadosSuportadoReproduzidos como vídeos; exige os plugins libav do GStreamer.
HyprlandExperimentalO alvo principal do veil. Imagens, vídeo em dois monitores e a pausa automática foram executados no Hyprland 0.56.2 (2026-10-20); fluidez, escalas, bloqueio, desligamento e recuperação de falhas não foram verificados lá.
Outros compositores com layer-shell (river, niri, Wayfire, labwc, KDE Plasma)ExperimentalDeve funcionar; ninguém relatou ainda. Sem pausa atrás de janelas nesses compositores (a interrupção por bloqueio e desligamento continua valendo).
Autocompletar do shell (bash, zsh, fish, nushell) e páginas de manualSuportadoGerados pelo próprio binário.
Flake e pacote do NixSuportadoO pacote traz seus plugins do GStreamer.
Binários pré-compilados para Linux x86_64 e aarch64ExperimentalVeja Binários pré-compilados; publicados a cada lançamento. O tarball x86_64 foi executado no Debian 12 e 13, no Ubuntu 22.04 e 24.04, no Fedora 44 e no Arch; o aarch64 não foi executado. Com GStreamer anterior à 1.26, GIFs animados não são reproduzidos (problema conhecido 8).
GNOME, X11NãoO GNOME não tem layer-shell.
HEIF/HEIC, AVIF, JPEG XL; WebP e PNG animadosNãoRecusados com o motivo; um WebP ou PNG animado mostra o seu primeiro quadro.
Áudio, limite de taxa de quadros, velocidade de reprodução, pontos de loopPlanejadoDepois da 1.0.
Playlists, rotação de diretório, transiçõesPlanejadoDepois da 1.0. veil set a partir de um script ou de um timer funciona hoje.
Pausar quando ocioso ou na bateria; pausar atrás de janelas no niri e no riverPlanejadoDepois da 1.0.
Módulos do NixOS e do home-manager, AUR, pacotes .deb e .rpmPlanejadoDepois da 1.0.