This is an archive of past FreeBSD releases; it's part of the FreeBSD Documentation Archive.

6.9. Usando o X11

6.9. Usando o X11

6.9.1. Componentes X.Org

A implementação do X11 disponível na Coleção de Ports é o X.Org. Se o aplicativo depender de componentes X, defina USE_XORG a lista de componentes necessários. Componentes disponíveis, no momento da escrita, são:

bigreqsproto compositeproto damageproto dmx dmxproto dri2proto dri3proto evieproto fixesproto fontcacheproto fontenc fontsproto fontutil glproto ice inputproto kbproto libfs oldx pciaccess pixman presentproto printproto randrproto recordproto renderproto resourceproto scrnsaverproto sm trapproto videoproto x11 xau xaw xaw6 xaw7 xbitmaps xcb xcmiscproto xcomposite xcursor xdamage xdmcp xevie xext xextproto xf86bigfontproto xf86dgaproto xf86driproto xf86miscproto xf86rushproto xf86vidmodeproto xfixes xfont xfontcache xft xi xinerama xineramaproto xkbfile xkbui xmu xmuu xorg-macros xorg-server xp xpm xprintapputil xprintutil xproto xproxymngproto xrandr xrender xres xscrnsaver xshmfence xt xtrans xtrap xtst xv xvmc xxf86dga xxf86misc xxf86vm.

A lista sempre atualizada pode ser encontrada em /usr/ports/Mk/bsd.xorg.mk

O Projeto Mesa é um esforço para fornecer implementação gratuita do OpenGL. Para especificar uma dependência em vários componentes deste projeto, use a variável USE_GL. Veja Seção 17.31, “gl para a lista completa dos componentes disponíveis. Para compatibilidade com versões anteriores, o valor yes direciona para glu.

Exemplo 6.14. Exemplo USE_XORG
USES=		gl
USE_GL=		glu
USE_XORG=	xrender xft xkbfile xt xaw

Tabela 6.7. Variáveis ​​para Ports Que Usam X
USES= imakeO port usa imake
XMKMFDefinir o caminho de xmkmf se não no PATH. Padrão para xmkmf -a.

Exemplo 6.15. Usando Variáveis ​​Relacionadas ao X11
# Use some X11 libraries
USE_XORG=	x11 xpm

6.9.2. Ports que Requerem Motif

Se o port requer uma biblioteca Motif, defina USES=motif no Makefile. A implementação padrão do Motif é x11-toolkits/open-motif. Os usuários podem escolher o x11-toolkits/lesstif em vez disso, definindo WANT_LESSTIF no seu make.conf.

O MOTIFLIB será definido por motif.mk para referenciar a biblioteca Motif apropriada. Por favor, corrija o fonte do port para usar ${MOTIFLIB} onde quer que a biblioteca Motif seja referenciada no Makefile original ou no Imakefile.

Existem dois casos comuns:

  • Se o port se referir à biblioteca Motif como -lXm em seu Makefile ou Imakefile, substitua ${MOTIFLIB} por isso.

  • Se o port usa XmClientLibs em seu Imakefile, mude para ${MOTIFLIB} ${XTOOLLIB} ${XLIB}.

Observe que o MOTIFLIB (geralmente) se expande para -L/usr/local/lib -lXm -lXp ou /usr/local/lib/libXm.a, então não há necessidade de adicionar -L ou -l na frente.

6.9.3. Fontes X11

Se o port instalar fontes para o X Window System, coloque-as em LOCALBASE/lib/X11/fontes/local.

6.9.4. Obtendo um DISPLAY Falso com Xvfb

Algumas aplicações requerem uma tela X11 funcional para que a compilação seja bem-sucedida. Isso representa um problema para as máquinas que operam sem um monitor. Quando essa variável é usada, a infraestrutura de compilação iniciará o X virtual framebuffer. Um DISPLAY funcional é então passado para a compilação. Veja USES=exibição para os possíveis argumentos.

USES=	display

6.9.5. Entradas de Desktop

Entradas de desktop (um padrão Freedesktop) fornecem uma maneira de ajustar automaticamente os recursos do desktop quando um novo programa é instalado, sem a necessidade de intervenção do usuário. Por exemplo, programas recém-instalados aparecem automaticamente nos menus de aplicativos de ambientes de desktop compatíveis. Entradas de Desktop surgiram no ambiente de desktop GNOME, mas agora são um padrão e também funcionam com o KDE e o Xfce. Esta pitada de automação fornece um benefício real para o usuário, e as entradas de desktop são incentivadas para aplicativos que podem ser usados ​​em um ambiente desktop.

6.9.5.1. Usando Arquivos .desktop Pré-definidos

Ports que incluem *.desktop pré-definidos devem incluir estes arquivos no pkg-plist e instalá-los no diretório $LOCALBASE/share/applications. A macro INSTALL_DATA é útil para instalar esses arquivos.

6.9.5.2. Atualizando o Banco de Dados do Desktop

Se um port tiver uma entrada MimeType em seu portname.desktop, o banco de dados do desktop deve ser atualizado após a instalação e desinstalação. Para fazer isso, defina USES= desktop-file-utils.

6.9.5.3. Criando Entradas de Desktop com DESKTOP_ENTRIES

As entradas desktop podem ser facilmente criadas para aplicativos usando DESKTOP_ENTRIES. Um arquivo chamado name.desktop será criado, instalado e adicionado ao pkg-plist automaticamente. A sintaxe é:

DESKTOP_ENTRIES=	"NAME" "COMMENT" "ICON" "COMMAND" "CATEGORY" StartupNotify

A lista de possíveis categorias está disponível no Site Freedesktop. StartupNotify indica se a aplicação é compatível com notificações de inicialização. Estes são tipicamente um indicador gráfico como um relógio que aparece no ponteiro do mouse, menu ou painel para dar ao usuário uma indicação quando um programa está sendo iniciado. Um programa que seja compatível com as notificações de inicialização limpa o indicador depois de iniciado. Programas que não são compatíveis com as notificações de inicialização nunca limpariam o indicador (possivelmente confundindo e enfurecendo o usuário) e devem ter StartupNotify definido como false então o indicador não é mostrado.

Exemplo:

DESKTOP_ENTRIES=	"ToME" "Roguelike game based on JRR Tolkien's work" \
			"${DATADIR}/xtra/graf/tome-128.png" \
			"tome -v -g" "Application;Game;RolePlaying;" \
			false

All FreeBSD documents are available for download at https://download.freebsd.org/ftp/doc/

Questions that are not answered by the documentation may be sent to <freebsd-questions@FreeBSD.org>.
Send questions about this document to <freebsd-doc@FreeBSD.org>.