kops Kops Online PageS

6août/090

La clé 3G c’est bieng

Ouais, c'est cool. J'avais un forfait 2h qui m'a servi cet hiver à la montagne, ça marchait bien. Là je ne suis pas chez moi pendant 1 mois. Si on veut du net vite fait bien fait, suffit de prendre un pass clé 3G. J'ai déjà le modem 3G dans mon pc Samsung Q45, donc j'ai pas eu besoin d'acheter la clé usb 3G. Du coup on repart avec une carte SIM avec 2 heures de connexion offertes pour rien du tout. Je dis "bravo" parce que c'est super cool.

Juste 2 choses à savoir :

  • L'APN pour un Pass Everywhere Orange, c'est orange.ie (avant j'utilisais orange.fr pour un Forfait Everywhere) ;
  • pour la numérotation j'utilise wvdial qui utilise pppd, c'est tout bête faut juste la bonne configuration (cf. les fichiers joints).

Et ça marche bien, j'ai fait un vieux test débit sur le site l'Internaute, faut pas demander la lune et ça donne ça :

Débits up/down pass iew

Fichiers :
/etc/ppp/chat-secrets
/etc/wvdial.conf

29juin/090

De la Javadoc pour SWT/Jface dans Eclipse

Voilà plusieurs années que je développe des interfaces en SWT/JFace avec Eclipse, et autant d'années que je me galère à consulter la Javadoc de l'API en ligne.

Voilà comment obtenir la Javadoc dans Eclipse :

  • en théorie vous avez mis les jars dans votre build path et ils apparaissent dans l'item Referenced Librairies de l'arborescence de votre projet ;
  • clic droit sur l'un d'eux pour sélectionner les propriétés ;
  • Dans l'item Java Source Attachment, vous n'avez qu'à saisir l'endroit où se situe le fichier jar qui contient les sources (par exemple pour org.eclipse.jface_3.4.0.I20080606-1300.jar ça sera  org.eclipse.jface.source_3.4.0.I20080606-1300.jar dans le répertoire  plugins d'Eclipse) ;
  • si vous n'avez pas les fichiers jars contenant les sources, vous pouvez toujours faire un lien avec l'API en ligne. ça marche tout pareil, sauf qu'il y a une légère latence plus ou moins supportable, à vous de voir. Il suffit d'aller dans l'item Javadoc Location pour y entrer l'URL où se situe la documentation en ligne.
15juin/090

Zzzzzz

La zolie Kawa Z750... Depuis le temps que j'attendais ça (le 23 novembre 2007 pour être précis), la patience paye. En effet, vendredi dernier je débarque en Vendée avec deux potes pour aller chercher ça :

Z750Muahaha, elle sera assurée demain. \o/

Taggé comme: , Aucun commentaire
30mai/090

Du changement dans le système

Les exams passés, le projet multimessenger rendu, ainsi que la vidéo d'animation, il était temps de faire du ménage sur le pc. J'ai cherché un nouveau système à essayer. La contrainte était d'avoir un environnement sous Kde4. Pourquoi ne pas essayer autre chose que du linux ? Je regarde vite fait du côté des BSD les plus connus : OpenBSD, FreeBSD et NetBSD. Le choix part pour NetBSD... Pourquoi pas ?

Installation du système de base pas plus compliquée qu'un autre système, le serveur X ne pose pas des masses de problèmes non plus, c'est quasiment tout automatisé par des scripts. Maintenant, pour installer KDE4 faut aller utiliser le projet WIP, qui signifie "Work In Progress". Déjà ça rebute un peu quand on veut se construire un environnement pour une utilisation de tous les jours. Qu'à cela ne tienne, c'est parti... On lance la compilation de l'usine à gaz. Ça a fini par fonctionner, mais finalement c'est pas ce qu'il me faut. Si je me permet de comparer le système pkgsrc de NetBSD à portage de Gentoo, je trouve portage bien plus simple à utiliser (quand on installe depuis les sources bien sûr). Les "use flags" de Gentoo sont plus simple à mettre en place que les "options" de NetBSD.

Du coup, j'ai un élan de lucidité : Et si j'essayais un truc où on compile pas tout ? Un truc ou y'a tout qu'est intégré, et qu'on optimise pas ? Je persiste du côté BSD, et là je sors PCBSD. Basé sur FreeBSD et il a déjà l'environnement de bureau KDE4 ! Testé sur mon portable aucun soucis, ça tournait. Mais sur mon pc de bureau, pas moyen de passer l'installation, le pc freeze au milieu de la copie des fichiers. Il est 3h du mat', il me faut une solution sans me prendre la tête.

Et je teste Arch Linux. Installé en moins d'une heure (largement) avec un KDE4 qui marche parfaitement bien. La simplicité d'installation est impressionnante. J'ai même failli me laisser tenter par remonter un RAID + LVM sur mes 3 disques durs Raptor. La raison m'a rappelé à l'ordre, pour ce que ça apporte, j'ai remis ça à plus tard. Mais n'empêche que ça doit être possible de mettre ça en place en deux coups de baguette magique.

4mai/090

La sérialisation en Java

Je passe une soirée à glander avant de passer aux choses sérieuses... et je me dis que je vais sérialiser mes objets Java à la main pour mon projet Asyd. Il suffit d'implémenter l'interface Externalizable et de jouer avec les flux :

public void writeExternal(ObjectOutput out) throws IOException {
	ByteArrayOutputStream bout = new ByteArrayOutputStream();
	DataOutputStream dout = new DataOutputStream(bout);
	dout.writeInt(2);
	dout.writeUTF("muahaha");
	out.writeInt(bout.size());
	GZIPOutputStream gzout = new GZIPOutputStream((OutputStream) out);
	gzout.write(bout.toByteArray());
	gzout.finish();
}

Ci-dessus on applique un coup de compression GZip sur les données qu'on écrit, pratique pour les objets qui ont beaucoup d'informations à sérializer.

Et pour désérializer, il ne reste plus qu'à faire la même chose dans l'autre sens :

public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
	int size = in.readInt();
	GZIPInputStream gzin = new GZIPInputStream((InputStream) in);
	byte[] data = new byte[size];
	byte[] buf = new byte[1024];
	int len;
	while (len = gzin.read(buf) != -1) {
		System.arrayCopy(buf, 0, data, len);
	}
	ByteArrayInputStream bin = new ByteArrayInputStream(data);
	DataInputStream din = new DataInputStream(bin);
	int deux = in.readIn();
	String muahaha = in.readUTF();
}

Mouais, ça a l'air bien ennuyant pour pas grand chose... Voyons ce que ça donne. Ma classe représente un dossier et contient dans un tableau de string tous les sous fichiers/dossiers.

Nombre de sous dossiers/fichiers Sérialisation par défaut Sérialisation à la main
6 757 octets 161 octets
38 2,3 Ko 360 octets
232 14 Ko 3,4 Ko

Ça marche plutot bien dans tous les cas ;)

Taggé comme: , Aucun commentaire
3mai/090

Révisions

Voilà, j'ai une semaine pour préparer les exams.
On va commencer par se mettre à l'aise, donc ranger un bon coup.

4fév/090

Nouveau PC : Samsung Q45

photo du Samsung Q45 XIV
J'ai pensé plusieurs fois changer de PC, mais j'ai à chaque fois oublié l'idée. Difficile de trouver un PC portable avec une bonne finition, donc j'ai tendance à regarder du côté des mac. Rhaaa, les Macbook, ça coûte une fortune pour ce que c'est. Et donc samedi dernier c'est les "soldes" au boulot, on vend des PC ultra portables Samsung Q45 : 799€ -50%... 399€ un portable avec un Core 2 Duo 2Ghz, 2Go de ram, et une carte graphique ignoblement pourrie. 10 minutes pour réfléchir, j'en prend un.

A première vue, la finition est plutôt mauvaise. Habitué à mon bon vieux iBook, là je vois la différence : les plastiques sont "mous", on a l'impression qu'ils vont fêler à la moindre petite chute.  D'autre part on voit des ouvertures par endroits. À 400€, je vais pas trop me plaindre, même si le design date quand même de plusieurs années car il semble reprendre celui du du Q35.

Premier démarrage (cool je vais tester Windows Vista pour la première fois)... c'est affreusement long. Bon ok, c'est le premier démarrage avec la création du compte utilisateur etc. Second mauvais point, Samsung qui en rajoute une couche avec son utilitaire de restauration qui doit faire redémarrer le pc pour créer une image disque. Je me demande si ça n'aurait pas pu être fait avant la sortie d'usine.

L'installation de Linux commence mal, difficile de trouver un livecd qui boot du premier coup. Evidemment j'ai commencé par le dernier Gentoo 2008.0 LiveCD 64bits, j'ai eu un joli freeze au boot. Du coup je me retranche sur les vieux Live CD qui me tombent sous la main (Ubuntu, Debian, LFS...) Au final le problème a été résolu en bootant avec l'option "nofb".

Le boot passé tout va bien. Les nombreux guides sur le site Gentoo permettent d'optimiser et de personnaliser facilement le PC. Quoique, la majorité des boutons "FN + F1.... F12" ne fonctionnent pas, et là où ça devient ennuyant c'est pour couper le wifi quand on en n'a pas besoin. Ou bien quand on veut baisser/augmenter la luminosité de l'écran, pour le moment la solution est d'utiliser le logiciel xbacklight.

Bon, résumons les choses intéressantes, ce qui marche bien :

  • Le touchpad fonctionne avec le driver Synaptics, donc y'a moyen de s'amuser avec.
  • La webcam fonctionne avec Video4Linux2
  • Le wifi fonctionne avec le module iwl2945
  • Le module 3G+ fonctionne parfaitement avec le module hso
  • La gestion de l'autonomie fonctionne pas trop mal globalement (si on met de côté l'écran, le wifi etc)

Voyons ce que je n'ai pas encore essayé/reussi à faire fonctionner (ça ne saurait tarder) :

  • Le bluetooth
  • Les touches FN + F* (wifi on/off, rétro-éclairage +/-...)
  • L'accélération matérielle semble ne pas fonctionner avec le driver intel en 64bits.

En bref j'en suis assez content :)

21nov/080

Accès internet en carton

Parfois on a de grosses quantités de données à envoyer sur un serveur, et forcément quand on upload 3Go, à 50Ko/s, ça prend du temps. Et pendant ce temps on se retrouve avec une connexion qui n'est plus réactive. Ok, peut etre qu'on peut utiliser un logiciel du style Filezilla pour envoyer ses fichiers et limiter la vitesse de l'envoi, mais c'est pas drole. Alors qu'il suffit d'ajouter 2 ou 3 modules à son noyau pour arranger tout ça en 5 minutes.

TBF est un genre de file d'attente qui permet de limiter le débit. Il a ses limites, voir man tc-tbf.

Voici le chemin à parcourir pour mon noyau 2.6.24 :

  • Networking support
    • Networking options
      • QoS and/or fair queueing
        • Token Bucket Filter (TBF)

Pour remplacer la file d'attente par défaut de type fifo, il suffit d'exécuter la commande suivante :

tc qdisc add dev eth0 root handle 1:0 tbf rate 400kbit burst 4kb latency 60ms

tc est disponible dans le paquet iproute2.

liens :

6oct/080

Joyeux anniversaie

C'était y'a un mois et demi, et j'ai toujours pas vraiment profité de mon tout nouvel iPod Shuffle. Donc là c'ets parti je me motive à le faire fonctionner avec mon linux (parce que lancer un osx juste pour y mettre de la musique c'est lourd).

Donc après 2 - 3 recherches, je comprend qu'on ne peut pas tout simplement glisser/déposer des musiques dedans. Il faut un logiciel pour faire la conversion. Après avoir essayé Gtkpod, qui à mon gout ressemble à une grosse usine à gaz, je tente FUSEPod mais finalement c'est pas ça : un module de plus au noyau, deux montages à effectuer... bref, je préfere aller coder un petit script pour se charger de ça quand j'aurai un peu de temps. Il semble exister un genre de soft en python pour faire les transferts en ligne de commande (liste des projets libgpod).

27mai/080

De l’imap dans windows mobile

Ouais, le client mail de Windows Mobile 2006 gère le protocole IMAP pour relever vos mails ! Si c'est pas ouf ça, franchement. Ça permet vraiment de gérer ses mails proprement où que l'on soit.