[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Copiar arquivos através de pacotes



Oi Felipe,

Fiz um pacote para automatizar criação de bancos no
postgresql.conf. Preciso aplicar o seguinte comando:

psql -p $port -d DB -U db -h $INPUT -f /opt/script.sh

Então pensei em fazer um install dos arquivos no
makefile.
Quando rodo o dpkg-buildpackage ele gera o pacote e
copia o script para o /opt.

Acontece que quando eu instalo o pacote, o arquivo
script.sh não é copiado para o diretório.

Preciso copiar o arquivo script.sh antes do preinst
ser executado. Como posso fazer isto ?

Segue abaixo meu makefile, que a idéia é somente gera
o pacote e jogar arquivos no filesystem para ser
usado, e  depois removidos.

#!/usr/bin/make -f
package = inicializa-dbar

# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1

# This is the debhelper compatibility version to use.
export DH_COMPAT=4

CFLAGS = -g
ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
CFLAGS += -O0
else
CFLAGS += -O2
endif

install: build
        dh_testdir
        dh_testroot
        dh_clean -k
        dh_installdirs

# Add here commands to install the package into
debian/gentoo.
        #$(MAKE) install
DESTDIR=$(CURDIR)/debian/inicializa-dbar
        install -m 755 debian/scripts-bd/script-.sh
$$packagename/opt/

binary-arch: build install
        dh_testdir
        dh_testroot
        .
        .
        binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary
install

Att, 

Faria




--- "Felipe Augusto van de Wiel (faw)"
<felipe@cathedrallabs.org> escreveu:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> On 01/06/2007 04:13 PM, Faria wrote:
> > Oi Otavio,
> > 
> > Mesmo assim não copia para o diretório opt.
> > Meu Makefile esta anexado.
> 
> 	Só pra confirmar, esse é o seu debian/rules, certo?
> 
> 
> > Att,
> > Faria
> 
> [...]
> >     dh_testdir
> >     #dh_clean -k -i
> >     dh_installdirs -a $(DOC) $(MAN)
> >     dh_installdocs -a debian/copyright
> >     cp debian/script-criacao.sh
> debian/$$PACKAGE/opt       
> >     install -m 755 debian/script-criacao.sh
> debian/$$PACKAGE/opt 
> 
> 	Você deveria estar usando algo como:
> 
>         cp $(CURDIR)/debian/foo $(DESTDIR)/opt/
> 
> 	Se esse é o /opt (o opt que fica na raiz). De
> qualquer forma,
> você não deveria estar instalando arquivos nesse
> diretório, você
> deveria usar o /usr/share ou o /usr/lib dependendo
> do seu objetivo e
> contexto.
> 
> 	O CURDIR o próprio make fornece pra você. Há várias
> formas de
> o DESTDIR, uma delas:
> 
> 	package = lifelines
> 	export DESTDIR = $(shell pwd)/debian/$(package)
> 
> 
> 	Se eu entendi direito, isso resolve o seu problema.
> Agora, se
> o seu objetivo é criar um opt dentro de algum outro
> diretório, você
> precisa fazer isso no dh_installdirs.
> 
> 	Pra todos os efeitos, procure mandar mais detalhes
> do seu
> pacote (se for possível, se não for, diga que não é
> possível) e
> procure mandar as mensagens de erro. Mais que isso,
> procure dizer
> o que está tentando fazer, como e porque acha que
> não está
> funcionando.
> 
> 
> 	Abraço,
> 
> - --
> Felipe Augusto van de Wiel (faw)
> "Debian. Freedom to code. Code to freedom!"
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.6 (GNU/Linux)
> Comment: Using GnuPG with Debian -
> http://enigmail.mozdev.org
> 
>
iD8DBQFFocwDCjAO0JDlykYRAqp/AKCvB8gjql4j69qYzIHZcen9hiSwQACfTjyY
> 944siGY18uLFNpR7V9okzT4=
> =ieM9
> -----END PGP SIGNATURE-----
> 
> 
> -- 
> To UNSUBSCRIBE, email to
> debian-devel-portuguese-REQUEST@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact
> listmaster@lists.debian.org
> 
> 


__________________________________________________
Fale com seus amigos  de graça com o novo Yahoo! Messenger 
http://br.messenger.yahoo.com/ 



Reply to: