Pular para o conteúdo principal

Programas no wine para todos os usuários

Existem alguns programas que os desenvolvedores teimam em não portar para o linux, para a maioria destes programas o Wine resolve o problema. Todavia a utilização do wine para programas grandes implica em outro inconveniente, o programa deve ser instalado para cada usuário da máquina o que gera uma enorme duplicidade de arquivos.

Muitos podem imaginar em contornar este problema com configurado diretiva WINEPREFIX de todos os usuários para um mesmo local, mas o wine só permite usar o WINEPREFIX para um diretório pertecente ao usuário corrente. Ou seja, se atribuimos o WINEPREFIX para /opt/programa (com o comando export WINEPREFIX="/opt/programa") e o usuário que vai executar o wine não é dono de /opt/programa o wine não executa.

A solução é criar um diretório X para o wine (com o comando wineprefixcrete --prefix X) , setar o WINEPREFIX para este diretório X e instalar o programa. Depois damos permissão de leitura para todos os usuário sobre este diretório X. Feito isto criamos um diretório Y para cada usuário corrente e criamos links para os subdiretórios de X. Atribuimos o WINEPREFIX para o diretório Y de cada usuário e desta forma o wine funcionará.

Vamos a um exemplo:
1) Instalação do programa
$ wineprefixcreate /tmp/dircompartilhado
$ export WINEPREFIX="/tmp/dircompartilhado"
$ wine /onde/esta/oprograma/instala.exe
$ sudo mv /tmp/dircompartilhado /opt
$ sudo chown root.root -R /opt/dircompartilhado
$ sudo chmod a+r -R /opt/dircompartilhado

2) Script para execução do programar por todos os usuários
#!/bin/bash
export WINEPREFIX=$(mktemp -d)
cd $WINEPREFIX
ln -s /opt/dircompartilhado/dosdevices
ln -s /opt/dircompartilhado/drive_c
ln -s /opt/dircompartilhado/system.reg
ln -s /opt/dircompartilhado/userdef.reg
ln -s /opt/dircompartilhado/user.reg
wine "C:\Arquivos de Programas\Instalado\programa.exe"

Obs.: Se o programa necessitar de escrever em algum arquivo dentro do WINEPREFIX ocorrerá erros pois os arquivos estão com permissão de somente leitura. Nestes casos é interessante estudar quais arquivos são gravados e dar permissão de escrita para os mesmos.

Comentários

Postagens mais visitadas deste blog

Referências Bibliográficas com ABNTeX e JabRef

É inevitável escrever textos técnicos e científicos sem referências bibliográficas. Quando escrevemos em LaTeX a maneira mais conveniente de trabalhar com referências é a criação de bancos de dados bibliográficos que são incorporados ao documento final com o utilitário BibTeX . Estes bancos de dados são arquivos texto que obedecem uma formatação e possuem extensão "bib" . Para facilitar o nosso trabalho e não termos que nos preocupar com a formatação do arquivo podem ser utilizadas ferramentas específicas para trabalhar com arquivos BibTeX. Nesta postagem vamos explicar como trabalhar com o JabRef , um excelente software livre multiplataforma para lidar com arquivos BibTeX para documentos que usam a classe abnTeX  (Classes LaTeX para as normas ABNT). Antes de criarmos um arquivo e incluir qualquer referência vamos verificar algumas configurações importantes. A primeira delas é definir a codificação padrão para os arquivos através do menu "Options / Preferences" .

Cross-compile com Lazarus no Linux de maneira fácil

Este artigo descreve como realizar cross-compile de aplicações windows sobre a plataforma Linux de uma maneira mais simples. Introdução O Lazarus é um ambiente de desenvolvimento gráfico multi-plataforma que utiliza o compilador Free Pascal. Com ele é possível desenvolver aplicações de maneira muito semelhante ao Delphi. Na documentação wiki do Lazarus existe uma descrição (em inglês) de como realizar cross-compile de aplicações windows sobre a plataforma Linux. Porém, o principal objetivo deste artigo é descrever esta tarefa de uma maneira mais simples. Instalação Neste artigo serão utilizados Kurumin 6.1, Lazarus 0.9.20 e Freepascal 2.0.4, como será usado Kurumin ( que é um descendente do debian) baixei os pacotes para .deb no SourceForge , são eles: fpc-crosswin32_2.0.4-060919_i386.deb fp-compiler_2.0.4-1_i386.deb fpc-src_2.0.4-1_i386.deb fp-ide_2.0.4-1_i386.deb fp-units-base_2.0.4-1_i386.deb fp-units-db_2.0.4-1_i386.deb fp-units-fcl_2.0.4-1_i386.deb fp-units-fv_2.0.4-1_

Instalar Debian com KDE como gerenciador de janelas padrão

Meu gerenciador de janelas preferido no linux é o KDE e minha distribuição favorita é o Debian. Porém o Debian instala por padrão o Gnome (isso para a instalação com DVDs para a instalação com CDs há um CD como o KDE como gerenciado padrão), consultando manual de instalação do debian descobri como instalar o KDE como gerenciador de janelas padrão. Quando se dá o boot com o CD de instalação do Debian Etch deve-se escolher as opções install, expert, installgui ou expertgui. Para Instalar o KDE por padrão deve acrescentar alguns parâmetros após a opção escolhida. No meu caso: expert tasks="standard, kde-desktop" Pode-se escolher outras opções recomendo uma consulta ao manual do Debian: http://www.debian.org/releases/stable/i386/apbs04.html.pt#preseed-pkgsel