# Freedesktop.org

Freedesktop.org (fd.o) é um projeto que trabalha para a interoperabilidade e a partilha de tecnologia com base em ambientes para o X Window System (X11) e Wayland, tanto em Linux quanto em outros sistemas operacionais semelhantes ao Unix. Foi fundado por Havoc Pennington, da Red Hat, em Março de 2000.
Existem muitos frameworks de desenvolvimento para o X11, e é pouco provável que isso mude. A organização procura garantir que as diferenças nas estruturas de desenvolvimento não sejam visíveis para o usuário.
Projetos de ambientes de desktop para o X de código aberto amplamente utilizados — como o GNOME, KDE e Xfce — estão colaborando com o projeto freedesktop.org. Em 2006, o projeto lançou o Portland 1.0 (xdg-utils), um conjunto de interfaces comuns para ambientes de desktop. No entanto, o freedesktop.org é uma "zona de colaboração" para padrões e especificações onde os usuários podem discutir livremente ideias, não uma organização formal de padrões.
O freedesktop.org era anteriormente conhecido como X Desktop Group, e a abreviatura "XDG" permanece comum em seus trabalhos.

## Objetivos

O projeto visa descobrir problemas de interoperabilidade muito mais cedo no processo, não legislar padrões formais.
* Coletar especificações, padrões e documentos existentes relacionados à interoperabilidade entre ambientes de desktop X e disponibilizá-los em um local central;
* Promover o desenvolvimento de novas especificações e padrões a serem compartilhados entre múltiplos ambientes de desktop X;
* Integrar os padrões específicos de desktop em esforços de padrões mais amplos, como o Linux Standard Base e o ICCCM;
* Trabalhar na implementação desses padrões em desktops X específicos;
* Servir como um fórum neutro para compartilhar ideias sobre a tecnologia de ambientes de desktop X;
* Implementar tecnologias que aumentem a interoperabilidade entre ambientes de desktop X e os ambientes de desktops X livres em geral;
* Promover desktops X e padrões de desktop X para autores de aplicativos, tanto comerciais quanto voluntários;
* Comunicação com os desenvolvedores de núcleos de sistemas operacionais gratuitos, o próprio X Window System, distribuições livres de SO e assim por diante para resolver problemas relacionados à área de trabalho;
* Fornecer repositórios de código-fonte (git), hospedagem de CVS na Web, Bugzilla, listas de e-mail e outros recursos para projetos de software livre que trabalhem em direção aos objetivos acima.

## Projetos hospedados

O freedesktop.org fornece hospedagem para vários projetos relevantes. Esses incluem:

### Sistema de janelas e gráficos

Software relacionado a sistemas de janelas e gráficos em geral.
* Cairo, uma biblioteca de gráficos vetoriais com suporte a saída entre dispositivos.
* Direct Rendering Infrastructure (DRI), API do Linux para acessar o hardware gráfico, usado por X11, Wayland compositors, Mesa 3D, etc.
* Glamor, driver comum de gráficos 2D para servidor X, ele suporta uma variedade de chipsets gráficos que suportam as APIs OpenGL/EGL/GBM.
* Mesa 3D, uma implementação do OpenGL.
* Pixman, uma biblioteca de software de baixo nível para manipulação de pixels, fornecendo recursos como composição de imagem e rasterização trapezoidal. Usuários importantes do pixman são a biblioteca de gráficos Cairo e o X.Org Server.
* Poppler, uma biblioteca de renderização de PDFs.
* Video Acceleration API.
* Wayland, protocolo para substituir o X11.
* X.Org Server: a implementação de referência oficial do protocolo X11.
* XCB, um substituto do Xlib.
* Xephyr é um servidor de exibição.

### Outros

* D-Bus, um barramento de mensagens semelhante ao DCOP (KDE 3) e Bonobo (GNOME 2).
* Elektra, uma biblioteca para leitura e escrita de configurações.
* fontconfig é uma biblioteca para descoberta de fontes, substituição de nomes, etc.
* fprint, uma biblioteca para os dispositivos leitores de impressão digital de consumidor.
* GStreamer é um framework multimídia multiplataforma.
* GTK-Qt engine, um motor do GTK+ 2 que usa o Qt para desenhar elementos de controle gráficos, proporcionando a mesma aparência de aplicativos do KDE para os aplicativos GTK+ 2.
* HAL (Hardware Abstraction Layer) é uma camada de abstração de hardware de sistema operacional consistente; foi depreciado e substituído pelo udev.
* kmscon, console virtual em espaço de usuário para substituir o console Linux, usa o driver KMS e suporta o Unicode.
* luit, uma ferramenta usada por emuladores de terminal.
* libinput, uma biblioteca para manipular dispositivos de entrada em compositores Wayland e fornecer um driver genérico de entrada para o X.Org. Ele fornece detecção de dispositivos, manipulação de dispositivos, processamento de eventos de dispositivos de entrada e abstração para minimizar a quantidade de código-fonte customizado do dispositivo de entrada necessário para fornecer o conjunto comum de funcionalidades que os usuários esperam.
* O PulseAudio é um frontend de servidor de som destinado a fornecer mixagem de software, áudio de rede e controle de volume por aplicativo.
* systemd é um framework de inicialização abrangente para iniciar e gerenciar serviços e sessões destinadas a substituir modelos de init mais antigos.
* Xft, fontes sem serrilhado usando a biblioteca FreeType, em vez das antigas fontes básicas do X.
Além disso, o Avahi (uma implementação livre de Zeroconf) começou como um projeto no fd.o, mas agora foi mudado para outro lugar.