Makefile pour installer le bazar dans ~ pour le client.

Le côté serveur viendra dans un prochain commit.

C'était pour make rename et make rerename qu'il était
nettement plus pratique d'avoir des guillemets simples.
This commit is contained in:
Vincent Le Gallic 2013-07-28 16:14:19 +02:00
parent 5843f64636
commit 2a2c405d33
4 changed files with 44 additions and 8 deletions

37
Makefile Normal file
View file

@ -0,0 +1,37 @@
# Nom de commande originel. Ne surtout pas changer cette variable
cmd_original_name=cranspasswords
# Nom de la commande, par défaut cranspasswords
# Vous pouvez la modifier
cmd_name=bdepasswords
# Expression régulière et son remplacement, pour le renommage
before=cmd_name = '${cmd_original_name}'
after=cmd_name = '${cmd_name}'
before2=cmd_name=${cmd_original_name}
after2=cmd_name=${cmd_name}
build:
@echo "Pour installer ${cmd_name} :"
@echo "Exécutez make install pour installer le client pour vous."
@echo "Exécutez sudo make install-server pour installer le serveur sur la machine."
rename:
@echo "Modification des variables pour renommer '${cmd_original_name}' en '${cmd_name}'"
@sed -i "s/^${before}$$/${after}/" serverconfig.example.py clientconfig.example.py
@sed -i "s/^${before2}$$/${after2}/" server
rerename:
@echo "Remise en place des variables passées à '${cmd_name}' en leur valeur de départ '${cmd_original_name}'"
@sed -i "s/^${after}$$/${before}/" serverconfig.example.py clientconfig.example.py
@sed -i "s/^${after2}$$/${before2}/" server
install:
@if [ "${cmd_name}" != "${cmd_original_name}" ]; then make --quiet rename; fi
install -d ~/bin
install client.py ~/bin/${cmd_name}
install -d ~/.config/${cmd_name}
install clientconfig.py ~/.config/${cmd_name}
@if [ "${cmd_name}" != "${cmd_original_name}" ]; then make --quiet rerename; fi
install-server:

12
README
View file

@ -4,19 +4,17 @@ ordinateur) et le serveur.
== Nom de la commande == == Nom de la commande ==
Si vous voulez appeler votre commande autrement que "cranspasswords", Si vous voulez appeler votre commande autrement que "cranspasswords",
c'est possible. Il faut pour cela changer la variable cmd_name dans : c'est possible. Il faut pour cela changer la variable cmd_name dans le Makefile
* serverconfig(.example)?.py avant de lancer make install.
* clientconfig(.example)?.py
* server
== Installation et configuration du client == == Installation et configuration du client ==
* Copier le dépôt git sur votre machine : * Copier le dépôt git sur votre machine :
$ git clone git://git.crans.org/git/cranspasswords.git $ git clone git://git.crans.org/git/cranspasswords.git
* Copier clientconfig.example.py en clientconfig.py et adapter
à vos besoins
* Installer le package python-gnupg * Installer le package python-gnupg
* Si ce n'est déjà fait, indiquer votre clé publique sur gest_crans * Si ce n'est déjà fait, indiquer votre clé publique sur gest_crans
* ??? * Lancez make install
* Assurez-vous d'avoir ~/bin dans votre $PATH
* Exécutez cranspasswords test pour voir si vous arrivez à récupérer le mot de passe de test
== Complétion == == Complétion ==
* Pour avoir la bash-complétion, dans votre .bashrc : * Pour avoir la bash-complétion, dans votre .bashrc :

View file

@ -25,6 +25,7 @@ except ImportError:
if sys.stderr.isatty() and not any([opt in sys.argv for opt in ["-q", "--quiet"]]): if sys.stderr.isatty() and not any([opt in sys.argv for opt in ["-q", "--quiet"]]):
sys.stderr.write(u"Package python-gnupg introuvable, vous ne pourrez pas vérifiez les clés.\n".encode("utf-8")) sys.stderr.write(u"Package python-gnupg introuvable, vous ne pourrez pas vérifiez les clés.\n".encode("utf-8"))
try: try:
sys.path.append("~/.config/%s/" % (config.cmd_name,))
import clientconfig as config import clientconfig as config
except ImportError: except ImportError:
if sys.stderr.isatty() and not any([opt in sys.argv for opt in ["-q", "--quiet"]]): if sys.stderr.isatty() and not any([opt in sys.argv for opt in ["-q", "--quiet"]]):

View file

@ -12,7 +12,7 @@ cmd_name = 'cranspasswords'
ssh_path = '/usr/bin/ssh' ssh_path = '/usr/bin/ssh'
#: Path du script ``cmd_name``-server sur le serveur #: Path du script ``cmd_name``-server sur le serveur
server_path = '/root/%s/server' % (cmd_name,) server_path = '/usr/local/bin/%s-server' % (cmd_name,)
#: Username utilisé pour se loguer sur le serveur. #: Username utilisé pour se loguer sur le serveur.
#: Par défaut, prend la valeur de l'username sur le client, #: Par défaut, prend la valeur de l'username sur le client,