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.
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.
Links
- Repositório no GitHub: https://github.com/yan-vidal/DeckLock
- Release v0.1: https://github.com/yan-vidal/DeckLock/releases/tag/v0.1
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.