FPM falha ao tentar fazer um deb - Nenhum parâmetro dado

1

Esta é uma questão de duas partes, na verdade. A primeira parte é tentar descobrir por que o FPM não está funcionando, o segundo é descobrir se o FPM é a resposta em primeiro lugar ...

Histórico: Eu atualizei alguns arquivos em um pacote de código aberto que eu quero reempacotar com um nome diferente para que possa ser instalado ao lado do existente (no caso de alguém usá-lo já ter a versão principal instalada - eu não quero sobrescrevê-lo). Eu também quero usar um deb para que eu possa gerenciar dependências e fazer com que as pessoas usem o apt-get para instalá-lo.

Eu fiz algumas pesquisas e descobri que o FPM parece ser a arma escolhida para construir um .deb, mas não consigo fazê-lo funcionar. Eu instalei a versão 0.4.29 e estou executando o Ubuntu 12.04.

Heres o que eu tenho no meu diretório de código (é a saída de sudo make install ):

~code
   |_main_folder
     |_ sub_1
     |_ sub_2
        |_sub 3

Estou tentando fazer isso:

sudo fpm -s dir -t deb -n "my_package" -v 1.0 -C ~/code/main_folder/

Mas eu entendo isso:

No parameters given. You need to pass additional command arguments
so that I know what you want to build packages from. For example, 
for '-s dir' you would pass a list of files and directories. 
For '-s gem' you would pass a one or more gems to package from. 
As a full example, this will make an rpm of the 'json' rubygem: 
'fpm -s gem -t rpm json' {:level=>:warn}
Fix the above problems, and you'll be rolling packages in no time! {:level=>:fatal}

É claro que forneci vários parâmetros, então a mensagem de erro é um pouco inútil para mim. Eu tentei algumas variações diferentes deste comando, mas nada me dá um pacote. Eu estou querendo saber se é algo simples e óbvio, mas não tenho certeza do que tentar em seguida. O Google mostra-me que este é um problema que muitas pessoas parecem ter com ele, mas eu não consegui encontrar nenhuma solução ... o que me faz pensar se o FPM está totalmente errado ...

Então, se não é - existe outra alternativa para a construção de arquivos .deb? Não é uma tarefa que fiz antes ...

Cheers antecipadamente

PS: Eu queria adicionar a tag 'fpm' à pergunta, mas não tenho reputação suficiente. Parece uma tag sensata, por isso, se alguém que tem a reputação quiser adicioná-la, ela poderá ajudar outras pessoas no futuro.

    
por Steve 21.02.2013 / 22:48

1 resposta

2

A resposta foi muito simples, mas irritante. Aparentemente, o C altera o fpm para o diretório, mas mesmo que eu tenha especificado que eu estava empacotando um diretório, ele ainda precisa saber quais arquivos serão empacotados. Eu tentei um *, que só resultou em um erro ... mas um simples '. no final fez o truque.

O comando de trabalho (incluindo algumas dependências como exemplo):

fpm -s dir -t deb -n my-package -v 1.0 -C /tmp/installdir/ -d pkgreqd -d libneedthis .
    
por Steve 22.02.2013 / 02:31