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: