Projeto NetBSD sobre a mudança do gerenciador de janelas padrão na sessão X11 com para . O CTWM é um fork do twm, que surgiu em 1992, e foi desenvolvido com o objetivo de criar um gerenciador de janelas leve e totalmente personalizável, permitindo modificar a aparência e o comportamento ao seu gosto.
O gerenciador de janelas twm foi oferecido no NetBSD nos últimos 20 anos e, nas condições atuais, parecia arcaico. A reação negativa das pessoas ao twm padrão fez com que os desenvolvedores reavaliassem a interface padrão e adotassem um gerenciador de janelas mais funcional, o CTWM, para criar um ambiente mais amigável para os usuários com experiência em outros sistemas operacionais.
O CTWM suporta desktops virtuais, está em ativa evolução e é distribuído sob uma licença compatível com o NetBSD. Entre as novas funcionalidades implementadas com base no CTWM, destaca-se o menu de aplicativos gerado automaticamente, combinações úteis de teclados para um controle completo sem mouse, adaptação para diferentes resoluções de tela (incluindo HiDPI após a adição de fontes grandes) e a capacidade de suportar sistemas muito lentos e muito rápidos com um único arquivo de configuração.
Era:
Tornou-se:
Além disso nota sobre o estado do projeto para garantir a funcionalidade do servidor compositor no NetBSD baseado no protocolo Wayland. O port ainda não está pronto para uso diário, mas já é adequado para experimentos e para executar aplicativos que usam Qt5, GTK3 ou SDL2. Os problemas incluem incompatibilidade com alguns aplicativos, incluindo Firefox, falta de suporte para execução de aplicativos X11 e a possibilidade de funcionar apenas com GPUs Intel, para as quais existe driver para alternância de modos de vídeo a nível de kernel.
Entre as características do Wayland que dificultam o port para o NetBSD, menciona-se a quantidade significativa de código específico do sistema operacional em gerenciadores de composição que são responsáveis pela gestão de tela, entrada e controle de janelas. O Wayland não fornece protocolos prontos para funcionalidades como captura de tela, bloqueio de tela e gerenciamento de janelas, e, por enquanto, fica atrás do servidor X em áreas como portabilidade, modularidade e padronização.
Recursos adicionais são implementados pelo gerenciador de composição ou através da definição de extensões para os protocolos. O servidor composto de referência Weston está fortemente vinculado à API do núcleo Linux. Por exemplo, a vinculação ao mecanismo de multiplexação de entrada/saída epoll requer uma reestruturação para suportar kqueue. Os patches para o uso de kqueue já foram preparados pelos desenvolvedores dos sistemas BSD, mas ainda não foram aceitos na versão principal.
O código do servidor composto de referência foi inicialmente escrito com foco apenas no Linux e não leva em consideração as particularidades de outros sistemas (por exemplo, o código usa "#include " e depende do libinput). No FreeBSD, um clone da API de entrada do Linux foi implementado, mas no NetBSD é aplicada uma API fundamentalmente diferente para gerenciamento de entrada — wscons. Atualmente, o suporte a wscons já foi adicionado ao swc e está planejado para a transferência para outros gerenciadores de composição.
Representantes do NetBSD pretendem convencer os desenvolvedores do Wayland a não usar uma vinculação rígida ao epoll, mas a adotar uma camada universal, como a libevent. Entre os trabalhos planejados, também se destaca a atualização da pilha DRM/KMS do núcleo do NetBSD e dos drivers gráficos, incluindo a portabilidade de código do núcleo Linux, bem como a adição de suporte à troca atômica de modos de vídeo, novas versões do DRM e da API Glamor (para executar aplicativos X11 sob o gerenciamento do xwayland). O servidor de composição baseado no Wayland pretende adicionar suporte a framebuffers.
Fonte: opennet.ru
