NetBSD cambia ao xestor de fiestras CTWM predeterminado e experimenta con Wayland

Proxecto NetBSD anunciou sobre cambiar o xestor de ventás predeterminado ofrecido nunha sesión X11 desde Búfalo en CTWM. CTWM é unha bifurcación de twm, que foi creada en 1992 e evolucionou para crear un xestor de ventás lixeiro e totalmente personalizable que che permite cambiar a aparencia e o comportamento ao teu gusto.

O xestor de fiestras twm foi ofrecido en NetBSD durante os últimos 20 anos e parece arcaico no ambiente actual. A reacción negativa da xente ao twm predeterminado obrigou aos desenvolvedores a reconsiderar o shell predeterminado e utilizar o xestor de fiestras CTWM máis potente para crear un ambiente amigable para os usuarios con experiencia noutros sistemas operativos.

CTWM admite escritorios virtuais, está a desenvolverse activamente e está dispoñible baixo unha licenza compatible con NetBSD. As novas funcións implementadas con base en CTWM inclúen un menú de aplicación xerado automaticamente, atallos de teclado útiles para un control total sen rato, adaptación para traballar con diferentes resolucións de pantalla (incluíndo o HiDPI despois de engadir fontes grandes), a capacidade de admitir tanto moi lento como moi sistemas rápidos usando un único ficheiro de configuración.

Foi:

 NetBSD cambia ao xestor de fiestras CTWM predeterminado e experimenta con Wayland

Converteuse en:

 NetBSD cambia ao xestor de fiestras CTWM predeterminado e experimenta con Wayland

adicionalmente publicado Unha nota sobre o estado do proxecto do servidor composto NetBSD swc baseado no protocolo Wayland. O porto aínda non está preparado para o uso diario, pero xa é adecuado para experimentos e executar aplicacións usando Qt5, GTK3 ou SDL2. Os problemas inclúen a incompatibilidade con algunhas aplicacións, incluíndo Firefox, a falta de compatibilidade para executar aplicacións X11 e a capacidade de traballar só con GPU Intel para as que hai un controlador para cambiar os modos de vídeo a nivel do núcleo.

Unha das características de Wayland que dificulta a portabilidade a NetBSD é a presenza dunha gran cantidade de código específico do SO nos xestores compostos encargados de xestionar a pantalla, a entrada e a xestión da ventá. Wayland non ofrece protocolos preparados para funcións como a captura de pantalla, o bloqueo de pantalla e a xestión de ventás, e aínda queda atrás do servidor X en áreas como a portabilidade, a modularidade e a estandarización.

As capacidades adicionais son implementadas polo xestor composto ou mediante a definición de extensións de protocolo. O servidor composto de referencia de Weston depende en gran medida da API do núcleo de Linux. Por exemplo, a vinculación ao mecanismo de multiplexación de E/S epoll require unha reelaboración para admitir kqueue. Os desenvolvedores de sistemas BSD xa prepararon parches para usar kqueue, pero aínda non foron aceptados no mainstream.

O código do servidor composto de referencia escribiuse inicialmente cun ollo só en Linux e non ten en conta as características doutros sistemas (por exemplo, o código usa “#include "e dependencia de libinput). FreeBSD implementa un clon da API de entrada de Linux, pero NetBSD usa unha API de xestión de entrada fundamentalmente diferente, wscons. Actualmente, o soporte de wscons xa se engadiu a swc e está previsto que o porte a outros xestores compostos.

Os representantes de NetBSD pretenden convencer aos desenvolvedores de Wayland de que non usen unha ligazón dura para epoll, senón que cambien a unha capa universal como libevent. O traballo planificado tamén inclúe a actualización da pila DRM/KMS do núcleo NetBSD e dos controladores de gráficos, incluíndo o código de portación do núcleo de Linux, así como engadir soporte para a conmutación atómica de modos de vídeo, novas versións de DRM e a API Glamour (para executar X11 aplicacións que executan xwayland). Está previsto engadir soporte para framebuffers ao servidor composto baseado en Wayland.

 NetBSD cambia ao xestor de fiestras CTWM predeterminado e experimenta con Wayland

Fonte: opennet.ru