DeckLock: tela de bloqueio open source para Wayland em Rust

Um brasileiro construiu o DeckLock: bloqueador de tela moderno para Wayland com temas de dev, vídeos em loop, live preview e CLI. Disponível para Arch Linux e qualquer distro x86_64.

Compartilhar
DeckLock: tela de bloqueio open source para Wayland em Rust
Photo by FlyD / Unsplash

Quem usa Hyprland, Sway ou qualquer compositor Wayland moderno conhece a frustração: a tela de bloqueio é um detalhe pequeno que deveria ser simples, mas acaba sendo uma das partes mais difíceis de personalizar. A maioria das alternativas disponíveis é básica, visualmente datada ou quebra com alguma configuração específica de setup.

Um desenvolvedor brasileiro chamado yanvidal estava nessa mesma situação e decidiu resolver o problema do zero. O resultado é o DeckLock, um bloqueador de tela moderno para ambientes Wayland, escrito em Rust e construído sobre GTK4.

O que é o DeckLock

O DeckLock é um bloqueador de tela pensado desde o início para quem leva o ricing a sério. Ele não é mais um port do i3lock com um tema colado por cima. A proposta é diferente: uma ferramenta completa, com interface gráfica de configuração, CLI headless para automação via scripts e suporte nativo a mídias dinâmicas como fundo.

O projeto está na versão 0.1 e foi publicado como pitch no TabNews, onde recebeu atenção imediata da comunidade dev brasileira. O código está disponível no GitHub com licença aberta.

Recursos principais

Temas prontos para quem vive no terminal

O DeckLock vem com seis temas integrados que alteram tanto o painel de configurações quanto os controles da tela de bloqueio:

  • Catppuccin Mocha e Catppuccin Latte
  • Tokyo Night
  • Dracula
  • Nord
  • Gruvbox Dark
  • Classic

Para quem já usa esses temas no Hyprland, no terminal ou no editor, a tela de bloqueio finalmente vai combinar com o restante do setup sem precisar configurar nada manualmente.

Fundo dinâmico com vídeo e slideshow

Em vez de uma cor sólida ou imagem estática, o DeckLock suporta:

  • Vídeos MP4 em loop silencioso como fundo
  • Slideshow de fotos com transição suave (crossfade)
  • Pools de mídia separados para o bloqueio normal e para o modo de repouso (idle), permitindo comportamentos diferentes dependendo do contexto

Isso significa que você pode ter um vídeo animado aparecendo quando a tela bloqueia manualmente e um slideshow de fotos quando o sistema entra em idle depois de inativo por alguns minutos.

Live preview sem precisar bloquear a tela

Um dos pontos mais práticos: a janela de configurações tem pré-visualização em tempo real. Você ajusta tema, fundo e opções e vê o resultado imediatamente, sem precisar bloquear a sessão para testar cada mudança.

Autenticação nativa via PAM

O DeckLock usa o protocolo ext-session-lock-v1 do Wayland para o bloqueio de sessão e autentica via PAM (Pluggable Authentication Modules), o mesmo sistema usado pelo sudo e pelo próprio login do Linux. As senhas são limpas da memória imediatamente após o uso (técnica chamada de zeroizing), sem deixar rastros.

CLI headless para automação

Para quem prefere controlar tudo pelo terminal ou via scripts, o DeckLock tem uma CLI completa:

# Trocar o tema via terminal
decklock config set theme_preset tokyo-night

# Ver todas as configurações atuais
decklock config show

Isso permite integrar o DeckLock em qualquer workflow de automação no Hyprland, como scripts de inicialização, substituição do hyprlock ou ações disparadas por eventos do sistema.

Teclado virtual e suporte a gamepads

O DeckLock inclui um teclado virtual (OSK) com suporte a multi-toque, útil para quem usa touchscreen ou tablet. Para setups de couch gaming, há integração opcional via daemon para gamepads e Steam Controller, permitindo digitar a senha usando o controle.

Bilíngue: português e inglês

O projeto foi construído com suporte nativo completo em pt-BR e inglês. Para a comunidade brasileira, é raro encontrar um projeto de sistema com internacionalização desde o primeiro release.

Como instalar

Arch Linux (recomendado)

O método mais simples é via pacote nativo disponível na página de releases. Todas as dependências, incluindo gtk4-layer-shell, são resolvidas automaticamente:

# Baixe o pacote .pkg.tar.zst da página de releases
# https://github.com/yan-vidal/DeckLock/releases/tag/v0.1

pacman -U decklock-*.pkg.tar.zst

Outras distribuições Linux (x86_64)

Para qualquer distribuição Linux moderna com arquitetura x86_64, há um tarball portável disponível na mesma página de releases. Basta extrair e executar.

Compilar do zero

Se você quiser compilar diretamente do código-fonte com Rust instalado:

git clone https://github.com/yan-vidal/DeckLock
cd DeckLock
cargo build --release --locked

O binário gerado estará em target/release/decklock.

Por que isso importa para a comunidade Linux

A maioria dos bloqueadores de tela para Wayland existentes foi portada do X11 ou construída com escopo mínimo. Ferramentas como swaylock e gtklock funcionam, mas têm personalização limitada e não foram projetadas para os casos de uso que o DeckLock atende, como fundo em vídeo, live preview de configurações e integração com gamepads.

O DeckLock preenche esse espaço com uma ferramenta construída do zero para Wayland, em Rust (o que garante segurança de memória e performance), com uma interface de configuração amigável e uma CLI pensada para automação. É o tipo de projeto que a comunidade do Hyprland estava esperando.

O autor mencionou planos para versões futuras: animações procedurais como fundo, suporte a uma API de mídia própria e possivelmente widgets configuráveis em Lua. O projeto está em desenvolvimento ativo e aberto a contribuições.

Se você usa Hyprland ou qualquer compositor Wayland e sempre quis uma tela de bloqueio que combinasse com o restante do seu setup, o DeckLock vale o teste. E se você usa Arch Linux, a instalação é questão de minutos.


Quer receber mais dicas de ferramentas open source para Linux antes de todo mundo? Assine a newsletter do Flateek e fique por dentro do que está sendo construído pela comunidade dev brasileira.