[RÉSOLU] apt.conf : modification des param. de MAJ système

j’ai plusieurs machines portables que j’utilise soit au travail, en réseau avec ip fixe, derrière un proxy, soit chez moi, réseau fbx dhcp sans proxy.
c’est le proxy qui me pose problème :
dans apt.conf, j’ai la ligne suivante :

qui bien évidemment m’empêche d’accéder aux dépôts quand je suis chez moi.
le seul moyen que j’ai trouvé est de commenter/décommenter à la main cette ligne, selon l’endroit où je me trouve.
il doit bien y avoir une autre solution plus pratique mais je ne l’ai pas trouvée.
des idées ?

NB les portables en question sont sous sid, avec gnome ou fluxbox selon la machine, en connexion filiaire uniquement lorsque je suis au travail, en filiaire ou wifi lorsque je suis ailleurs.

edit : j’ai oublié un détail, aptitude n’aime pas du tout quand je commente la ligne en question il met quand même à jour mon système mais m’avertit à chaque fois : E: Erreur syntaxique /etc/apt/apt.conf:1 : directive « Acquire::http::Proxy » non tolérée

Normalement, on n’utilise plus directement apt.conf, mais on met les directives de configs supplémentaires dans des fichiers indépendants au suffixe .conf dans le répertoire apt.conf.d .
Ca permet à apt de mettre à jour le fichier apt.conf lors d’un upgrade sans râler à cause des modifs que tu as faites, et surtout, c’est ça qui t’intéresse, ça permet d’activer/désactiver un de ces sous fichiers de config juste en changeant le suffixe.

merci matt,
je ne savais pas du tout qu’on n’utilisait plus apt.conf directement, si je l’ai modifié c’est parce que j’ai cherché dans le répertoire apt s’il y avait un fichier qui mentionnait mon proxy.
c’est le premier que j’ai trouvé et j’y suis allé brutalement, en me doutant qu’il y avait certainement autre chose à faire.
je vais donc aller m’occuper de ces fichiers de config.
merci encore.

Ben c’était la manière d’avant donc c’est pas une honte de faire comme ça.

peut-être, mais ça m’embêtait d’avoir une erreur quand je mettais à jour.
je viens d’essayer la méthode que tu m’indiques, en créant un fichier 02proxyboulot, j’y ai mis les infos qui étaient auparavant dans apt.conf, et je viens de tester, ça marche impec et ça fait plus gueuler aptitude.
bon, c’est pas tellement plus rapide que ce que je faisais avant, renommer 02proxyboulot en 02proxyboulot.old prenant au moins autant de temps que de commenter la igne qui me gêne chez moi ! :laughing:

#!/bin/sh CONFFILE=/etc/apt/apt.conf.d/02proxyboulot [-f $CONFFILE] && mv $CONFFILE $CONFILE.disabled && exit 0 [-f $CONFFILE.disabled] && mv $CONFFILE.disabled $CONFFILE && exit 0 exit 1 et hop, tu as un script qui t’active/désactive ton proxy.

j’ai un petit souci sur le script que tu m’as filé, matt.
j’ai un message d’erreur sur les lignes 3 et 4 :

[ -f: command not foundet pour une fois google n’est pas mon ami car la recherche sur -f ne donne rien.
un dernier coup de pouce ?

man test
mais ce ne serait pas une question d’espace entre le [ et le -f ?

j’espère que j’ai utilisé test correctement:test [-f $CONFFILE] bash: test: [-f: unary operator expectedj’ai pastrouvé ce que ça voulait dire
j’ai essayé en mettant des guillemets, en enlevant le $, mais rien de plus

non. test est un équivalent de [].
Mais bon, comprend pas pkoi le [ ne marche pas.
voilà une version testéə:

#!/bin/sh CONFFILE=/etc/apt/apt.conf.d/02proxyboulot test -f $CONFFILE && mv $CONFFILE $CONFILE.disabled && exit 0 test -f $CONFFILE.disabled && mv $CONFFILE.disabled $CONFFILE && exit 0 exit 1

bon ben voilà, y a plus d’erreur …
sauf que quand je lance le script en root, ça m’efface purement et simplement le fichier au lieu de le renommer disabled, et si je lance en user je n’ai pas la permission de renommer le fichier, même en faisant un chmod 777 ou chown mon_user mon_fichier

testée, mais pas assez. Il y a une erreur ligne 3, $CONFILE au lieu de $CONFFILE.
Du coup, ton fichier de conf doit toujours se trouver dans apt.conf.d sous le nom .disabled.

je ne l’avais pas vu non plus qu’il manquait un F
cette fois, ça marche au poil !
merci matt.