Nous sommes le Lun 23 Juin, 2025 01:09
Supprimer les cookies

Messenger portable

Image Image Forum dédié à notre projet de clé USB nomade libre sous Windows

Ven 09 Sep, 2005 21:11

J'ai réalisé un petit tutoriel pour installer AMSN sur une clé USB, ce n'est pas trop compliqué.

Projet: AMSN
Description : Clone MSN Messenger multiplateforme
Url: http://amsn.sourceforge.net/
Licence: GNU version 2

1 - Télécharger la version Windows : http://prdownloads.sourceforge.net/amsn/Amsn-Pack-0.94.exe?download
2 - Au début de l’installation, décocher toutes les options.
3 - A la fin de l’installation décocher l’option de lancement.
4 - Copier le répertoire « C:\Program Files\AMSN » sur la clé USB.
5 - Editer le fichier « AMSN\scripts\amsn » à l’aide un éditeur de code comme « Scite » et remplacer le code suivant

Code: Tout sélectionner
############################################################
### Setup other important directory paths
### depending on the platform
############################################################

if {![catch {tk windowingsystem} wsystem] && $wsystem == "aqua"} {
   set HOME "[file join $env(HOME) Library/Application\ Support/amsn]"
   set files_dir "[file join $env(HOME) Desktop/amsn\ received\ files]"
} elseif {$tcl_platform(platform) == "unix"} {
   set HOME "[file join $env(HOME) .amsn]"
   set files_dir "[file join $env(HOME) amsn_received]"
} elseif {$tcl_platform(platform) == "windows"} {
  if {[info exists env(USERPROFILE)]} {
     set HOME "[file join $env(USERPROFILE) amsn]"
     set files_dir "[file join $env(USERPROFILE) amsn_received]"
  } else {
   set HOME "[file join [pwd] amsn_config]"
   set files_dir "[file join [pwd] amsn_received]"
  }
} else {
   set HOME "[file join [pwd] amsn_config]"
   set files_dir "[file join [pwd] amsn_received]"
}


Par ceci:

Code: Tout sélectionner
############################################################
### Setup other important directory paths
### depending on the platform
############################################################

set HOME "[file join [pwd] amsn_config]"
set files_dir "[file join [pwd] amsn_received]"


Cela permet de conserver la configuration et les profils sur la clé.

6 – Lancer le programme : « AMSN\amsn.exe » sur la clé.
7 – Commencer par changer la langue dans le menu « Tools>Language… ».
8 – Aller dans Outils > Préférences > Autres » et Changer la valeur qui se trouve dans « Dossier des fichiers reçus » par « amsn_received ». Répéter l’opération à chaque création de profil.

Astuce
Vous pouvez également changer le mode de connexion en http dans les options afin de passer au travers des firewalls.

Et voila un Messenger portable.

Henri
hgourvest

Messages : 45

Ven 09 Sep, 2005 21:38

Merci Henri pour ce tuto,

dès qu'on a un peu de temps, on va essayer de voir la portabilité et les traces que laissent amsn.
Thierry
tbernard

Messages : 4920
Géo : Aix en Provence

Ven 09 Sep, 2005 21:57

De rien :),
une petite amélioration cependant pour éliminer l'étape 8:

Code: Tout sélectionner
############################################################
### Setup other important directory paths
### depending on the platform
############################################################

set HOME "[file join amsn_config]"
set files_dir "[file join amsn_received]"


comme ca plus besoin de changer le chemin du dossier.

Henri
hgourvest

Messages : 45

Ven 09 Sep, 2005 22:35

Je viens de tester la base de registre et le systeme de fichier, je n'ai rien vu passer:

les outils utilisés:
http://www.sysinternals.com/Utilities/Regmon.html
http://www.sysinternals.com/Utilities/Filemon.html

henri
hgourvest

Messages : 45

Sam 10 Sep, 2005 02:07

Finalement j'ai revu ma copie, AMSN peut laisser une infime trace dans le cache ie indirectement par l'os. J'ai donc pris le probleme par un autre bout.
Les applications windows utilisent les variables d'environnement pour déterminer les dossiers dans les quels il peuvent stocker leurs données.
J'ai créé un dossier "User" et "User/Application Data" sur la clé et modifié les variables d'environnements visibles par l'application que je veux lancer grace à un petit programme écrit en Delphi

Code: Tout sélectionner
program launcher;
uses
  SysUtils, ShellApi, windows;

var path: string;
begin
  path := ExtractFilePath(ParamStr(0));
  SetEnvironmentVariable('PATH', PChar(path + 'GTK\2.0\bin\'));
  SetEnvironmentVariable('USERPROFILE', PChar(path + 'User\'));
  SetEnvironmentVariable('HOMEPATH', PChar(path + 'User\'));
  SetEnvironmentVariable('APPDATA', PChar(path + 'User\Application Data\'));
  SetEnvironmentVariable('USERNAME', 'User');
  path := path + paramstr(1);
  ShellExecute(0, 'open', PChar(path), nil, PChar(ExtractFilePath(path)), SW_SHOW);
end.


Du coup on a même plus besoin de modifier AMSN, ca marche les doits dans le nez. J'ai même essayé avec Gaim, aucun probleme.

En utilisant le "launcher" avec toutes mes applications je peux leur faire partager le même compte utilisateur sur ma clef. Grace à la variable d'environnement 'PATH', je peux également partager des bibliotheques courantes comme GTK, TCL/TK ...

C'est quand même plus facile que de modifier les applis.
J'espere que je n'ai pas réinventé la roue et que ca pourra être utile pour la suite.

Henri
hgourvest

Messages : 45

Dim 11 Sep, 2005 20:48

Un ptit mot rapidement (parce que là, la participation au stand Framasoft à la Fête de l'huma m'a achevé !)

Ca m'a l'air *tres* interessant, ça.
(pour tout te dire, je ne pensais même pas que c'etait possible aussi simplement)

Il faut vraiment que je me teste ta solution (qui, compilée avec Lazarus, ferait une proposition libre interessante pour contourner ce genre de souci).
Mon seul souci, c'est que je n'aurais pas le temps de me pencher dessus avant plusieurs jours.
Pourtant je t'assure que ça me parait une excellente piste qui pourrait nous permettre d'avancer considérablement.

Si j'ai bien compris, cette solution permet de de "substituer" la variable d'environnement d'un soft (genre, je compile ton code en "lance.exe" et j'execute "lance amsn.exe" et amsn utilisera le /user/application data de la clef) ?
C'est tres interessant !

Si j'ai bien compris (fatigué, moi :) ), alors par contre, que ce passe-t-il si je lance un soft "local" (Windows Media Player, pour prendre un exemple extreme) alors que amsn est lancé avec ta méthode ? quelle chemin de Apllication Data va-t-il utiliser (celui de la clé, ou celui du DD ?).

Je me repète :) mais ça me parait *vraiment* une piste interessante !
*Nouveau venu ? Lisez les règles d'utilisation de ce forum
*Une question à poser ? Assurez vous qu'on vous répondra
*Soutenir Framasoft ? Participez à l'annuaire !
*"T'es où ?" Inscrivez vous sur la FramaMap
pyg

Avatar de l’utilisateur
Messages : 7858
Géo : Lyonnais

Dim 11 Sep, 2005 21:55

D'apres ce que je sais les variables d'environnement se transmettent entre processus, c'est à dire que si A lance B, alors B herite des variables de A.
J'ai mis en place cette méthodes pour toutes les applications de ma clés, et depuis je vois mon répertoire "User" s'agrémenter de plein d'autres fichiers.
Ce qui me laisse penser que toutes les applications de la Framakey ne sont pas totallement imperméables. C'est en effet difficile de de détecter le probleme quand les fichiers sont générés indirectements par des processus enfants ou des controles activex.

FPC suffit tres largement pour compiler mon code, bien qu'il serait assez facile de le reproduire en C. Ceci dit un simple batch fonctionne aussi.

Henri
hgourvest

Messages : 45

Ven 16 Juin, 2006 11:58

Coucou,

J'ai suivit votre conversation depuis le début.. et en fait j'ai carrement décroché vu que je suis pas expert en la matière.

Il n'empeche que je trouve ca génial d'avoir un MSN portable et surtout libre !!!

J'ai vu qu'un petit tutoriel était dispo au tout début du post mais j'ai aussi cru comprendre qu'il a était mis à jour par les messages qui lui ont succédé (et que je n'ai pas compris dans la globalité)

Donc est-ce qu'il ya aurait moyen d'avoir un genre de tutoriel aMSN portaibeul "pour les nuls comme RaqUi", petit récapitulatif de ce qui a était dit jusqu'à présent mais un peu traduit pour les newbies ? ca serait super sympa merci, parce que là, j'ai vraiment du mal...

Sinon, j'ai vu qu'une version d'aMSN portaibeul était en train d'être testée et je voulais savoir si je pouvais vous filer un coup de main (à mon niveau) pour vous faciliter la tâche.

Merci d'avance!!
++
"None but ourselves, can free our minds"
RaqUi

Messages : 70
Géo : Au fond à gauche...

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit