Rinomina un file durante l'installazione di un pacchetto Debian


15

Ho uno script Python che voglio pacchetto per Debian. Uso un file debian / install dove ho scritto

auto_dice.py /usr/bin/

Linitan quindi si lamenta dell'estensione .py (estensione script con linguaggio).

L'ho quindi cambiato in

auto_dice.py /usr/bin/autodice.py

che causa un errore perché interpretato autodice.pycome una directory.

Come posso fare la ridenominazione lì? Non voglio rinominare il mio script Python nelle fonti.

Risposte:


13

Non è possibile rinominare i file utilizzando dh_install(tramite debian/install). Dovrai rinominarlo durante il debian/rulestarget "build" prima di arrivare dh_installall'invocazione.


così sarà build: \\ mv auto_dice.py autodice?
Martin Ueding,

probabilmente il mv avverrebbe nella directory di destinazione piuttosto che nella directory di compilazione, ma sì, dovresti aggiungere lo spostamento prima di chiamare dh_install.
Kees Cook,

Per una segnalazione di bug che richiede questa funzione, vedere bugs.debian.org/cgi-bin/bugreport.cgi?bug=245554
Bernhard Reiter

@Kees Cook: se lo rinominassi nella directory di destinazione - apt-get sarebbe ancora in grado di rimuovere il file dopo la rimozione / l'aggiornamento del pacchetto?
zerkms,

11

Dal bug Debian 245554 già menzionato:

questo può essere già facilmente risolto se si utilizza dh> = 9 e dh-exec. Rendi eseguibile il tuo file .install, aggiungi #! / Usr / bin / dh-exec in alto e puoi usare "source => dest", in questo modo:

#!/usr/bin/dh-exec
debian/default.conf => /etc/my-package/start.conf
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.