ViniciusMuniz.com Programacao, linux, informatica e afins.

15set/102

Criando um Pacote DEB – PARTE 3

Para execução de scripts antes ou após a instalação do pacote, pode se utilizar os arquivos na pasta DEBIAN:

  • Preinst - Executado antes do início da instalação;
  • Postinst - Executado após o termino da instalação;
  • Prerm - Executado antes da remoção;
  • Postrm - Executado após a remoção.

Os scripts seguem o mesmo padrão. Utilização de bash, sh ou ksh. Ou se souber "fazer marretas", pode utilizar php, c, c++, tudo seria uma questão de fazer a chamada do arquivo com outra linguagem dentro dos scripts do pacote.

No nosso exemplo não há necessidade da utilização de um destes scripts. Porém utilizaremos, para criar um ícone no menu para abrir o navegador com o arquivo php sendo executado.

Postinst

#!/bin/sh
#
# Copyright (c) 2010 The Vinicius Muniz <http://viniciusmuniz.com> Authors. All rights reserved.

#Add icons to all users.

for usuario in $( ls /home ); do
	if [ ! -d /home/$usuario/.local/share/applications ]; then
		mkdir /home/$usuario/.local/share/applications
	fi
	cp /usr/share/applications/examplePHPDEB.desktop /home/$usuario/.local/share/applications
done

Postinst

Para a utilização deste script, iremos criar outro arquivo, com o nome de  examplePHPDEB.desktop onde iremos armazenar os dados do atalho. O arquivo ficará armazenado dentro de /usr/share/applications/ dentro do pacote, e após a instalação neste mesmo caminho dentro do servidor.

O conteúdo do atalho será:

[Desktop Entry]
# Created by Vinícius Muniz <http://ViniciusMuniz.com>
Version=1.0
Encoding=UTF-8
Name=examplePHPDEB
# Only KDE 4 seems to use GenericName, so we reuse the KDE strings.
# From Ubuntu's language-pack-kde-XX-base packages, version 9.04-20090413.
GenericName=examplePHPDEB

# Gnome and KDE 3 uses Comment.
Comment=Example DEB

Exec=/var/www/start.sh
Terminal=false
Type=Application
Categories=GTK;Application;Development;IDE;
StartupNotify=true

examplePHPDEB.desktop

Para a execução do nosso arquivo iremos criar um outro arquivo em shell para abrir o navegador com o script PHP rodando. O arquivo, está especificado em Exec no arquivo .desktop será o arquivo start.sh, o conteúdo do mesmo será:

#!/bin/sh
# Created by Vinícius Muniz <ViniciusMuniz.com>

sudo /etc/init.d/apache2 start

for i in google-chrome firefox mozilla konqueror; do
        if test -x "/usr/bin/$i"; then
                /usr/bin/$i http://localhost/example.php
                exit $?
        fi
done

start.sh
No proximo artigo, finalmente iremos ver os comandos para compilar o pacote.

Related posts:

  1. Criando um Pacote DEB – PARTE 2
  2. Criando um pacote DEB – PARTE 1
  3. Instalando Subversion no ubuntu

Posted by Vinicius Muniz

Comentários (2) Trackbacks (0)

Leave a comment

(required)

Sem trackbacks