Firefox 4 comme IE9

La nouvelle interface d’Internet Explorer 9 a été dévoilée hier. Elle a ses défauts, mais son côté minimaliste est vraiment agréable.

D’ailleurs, avec Firefox 4 bêta, il y a moyen d’obtenir la même interface — sans extension, simplement en réorganisant les barres d’outils.

Firefox avec l'interface
d'IE9

Il suffit de glisser la barre d’adresse et les quelques boutons nécessaires dans la barre d’onglets, et voilà : une interface simple à la IE9.

Easter-egg dans la BO d'Inception

J’ai bien aimé la musique d’Inception. Il n’y a pas vraiment de thème qui reste précisément en tête : on se souvient d’une idée générale, de fragments — ce qui colle très bien avec les rêves imbriqués du film.

Bref, Hans Zimmer a mentionné ses sources d’inspiration et la manière dont il avait composé ces musiques dans plusieurs interviews — donc on voit à peu près d’où certaines choses viennent. N’empêche, l’entendre, c’est encore autre chose. Enjoy.

</param></param></param> </embed>

Fix "duplicate symbols" when linking a universal static library with iOS SDK 4

If you updated to the recently released iOS SDK 4, you may have encountered a rather annoying issue. All projects that link again a static library which is the combination of multiple sub-libraries now fail to link, producing only a “duplicate symbols” error. It is the case, for instance, with the widely used Three20 library for iPhone development.

This is because of a bug in libtool : when building an universal library (understand “with multiple architectures”, like the “Standard” build option that includes both armv6 and armv7), if you are merging multiple libs together, libtool will fail to strip properly some parts of the libs, then try to merge them, adding the same symbols several times. It will only be noticed on a linker invocation, such as when building the application that uses the library. This is perfectly explained with much details in this blog post of James Briant.

He suggested a script to fix this issue with Three20. I generalized it, so it can be used for any library that has the same issue.

To use it, open your library Target in Xcode, add a new “Shell Script build phase”, and copy the content of this script inside :

#!/bin/bash# (c) 2010 James Briant, binaryfinery.com# Edited by Pierre de La Morinerieif [[ $TARGET_BUILD_DIR == *iphoneos* ]] && [[ $ARCHS == *\ * ]]thenecho "Rebuilding library as proper multiarch file"LIB_ARM6=$TEMP_FILES_DIR/Objects-$BUILD_VARIANTS/armv6/$EXECUTABLE_NAMELIB_ARM7=$TEMP_FILES_DIR/Objects-$BUILD_VARIANTS/armv7/$EXECUTABLE_NAME# Libtool skrewed up, and built fat binaries in place of the arch-specific ones : strip them.lipo $LIB_ARM6 -remove armv7 -o $LIB_ARM6lipo $LIB_ARM7 -remove armv6 -o $LIB_ARM7# Now recombine the stripped lib to the final productlibtool -static $LIB_ARM6 $LIB_ARM7 -o $BUILT_PRODUCTS_DIR/$EXECUTABLE_NAMEelseecho "Skipping arm multi-architecture rebuild"fi

Now, each time your project is built, the architectures in the output binary will be correctly merged. This should be as unobtrusive as possible — but hopefully Apple will fix the bug soon.

Zelda Majora's Mask retexturé

Zelda: Majora’s Mask, sur Nintendo 64, était un excellent jeu. Si si. Il a réussi à proposer un ton, une atmosphère et un style différent à la série après le succès planétaire d’Ocarina of Time : ce n’était pas évident, les équipes de Nintendo auraient aussi bien pu sortir un fade “Ocarina 2”.

À la place, nous avons eu droit à ce mélange de Un jour sans fin et des côtés bizarres et décalés des réalités parallèles, où le monde touche à sa fin, les mêmes journées recommencent encore et encore sans espoir de sortie du cercle… À la fin de chaque cycle, tous les problème résolus sont effacé par le temps qui remonte, et il faut recommencer, encore — et pourtant, au fur et à mesure, l’espoir fini par poindre, on s’attache aux personnages et à cette vie dont on finit par connaitre les rouages.

Bref, tout ça pour vous dire que Toon-Link, un allemand, a sorti hier une nouvelle version plus complète de son pack de textures pour le jeu, qui vise à augmenter la qualité des textures souvent floues de la Nintendo 64, mais aussi, autant que possible, à tirer légèrement le style graphique du jeu vers celui de Twilight Princess.

</param></param></param> </embed>

C’est somptueux, ça redonne une nouvelle jeunesse à cette merveille, et c’est gratuit. Pour voir ça en action, téléchargez le pack (le lien est en dessous de la vidéo YouTube), ouvrez votre émulateur N64 préféré avec le plugin 1964 Vidéo, activez l’option “Load Hi-Res textures”, et profitez du spectacle.

Un lecteur RSS/Twitter/Google Reader sympa ? Que oui !

Amis utilisateurs de Google Reader et de Twitter, ou simplement à la recherche d’un aggrégateur RSS sympa, j’ai peut-être quelque chose pour vous. J’ai découvert hier Feedly, un lecteur RSS basé (initialement) sur Google Reader, mais proposant une interface et des options bien plus sympa.

L'interface principale de Feedly, qui présente vos articles à la
manière d'un
journal

Vous pouvez aggréger vos flux RSS, Twitter (et quelques autres sources), ça se synchronise avec Google Reader si vous l’utilisez, et vous retrouvez les fonctions de partage habituel (Partager sur Google Reader, Twitter, bloguer, faire une note sur Facebook, envoyer par courriel, etc).

Pour parcourir d’un coup d’œil une grande quantité d’articles, ou des rubriques particulières, il faut dire que ce genre de présentation, ça fonctionne bien ; et ça change de la vue Liste de Google Reader. Je ne l’ai pour l’instant testé que quelques heures — mais vu d’ici, ça a l’air d’être du tout bon. À tester.

Edit: Ouep, y’a des options sympa. Je recommande “Mark as Read: Older than one week/Older than one day”, ou la personnalisation de l’affichage des articles, ou l’intégration avec Google Buzz (qui en devient presque pratique)… Pas mal, pas mal.