Jak zrobić aby stare rozszerzenia były kompatybilne z Firefox 3

Czasami brak jest kompatybilnych rozszerzeń dla najnowszej wersji przeglądarki. Zwykle są dwa powody dla których jest taki stan rzeczy:

  1. Autorzy pracują nad tym aby zadbać o kompatybilność rozszerzenia, ale jest to na tyle skomplikowane, że ilość zmian jakie trzeba wprowadzić zajmuje mnóstwo czasu.
  2. Rozszerzenie generalnie jest kompatybilne, ale autorowi nie chce się zabrać za zmianę numeru wersji Firefox z którymi jest kompatybilna.

Oczywiście nie zamierzam pisać o tym jak przerobić wtyczkę, aby zachowała zgodność z nową przeglądarką. Jednak na przykładzie pokarzę jak łatwo zmienić restrykcję co do wersji przeglądarki z którą można używać ulubionego rozszerzenia. Mnie zależy bardzo na tym aby działała wtyczka gspace. Nie mam zaufania do serwerów typu rapidshare.com, czy odsiebie.com. Wszystkie one nadają się do przechowywania danych przeznaczonych do odczytu przez wszystkich. Wolę zachować trochę prywatności i nie tracąc czasu na szyfrowanie używam dostępnego miejsca na gmail.com.

Zatem jak zrobić aby gspace-0.5.92.xpi zadziałał na nowym Firefox 3? Oczywiście najpierw pobieramy rozszerzenie. Nie chcemy robić bałaganu więc tworzymy katalog gspace, tam rozpakujemy zawartość rozszerzenia.

mkdir gspace
wget http://www.getgspace.com/download/gspace-0.5.92.xpi
unzip gspace-0.5.92.xpi

Teraz trzeba edytować plik install.rdf. Tam znajdują się informację o wersji rozszerzenia, nazwie, autorach itd. W pozycji em:maxVersion, określona jest maksymalna wersja przeglądarki z jaką współpracuje rozszerzenie. W gspace-0.5.92.xpi jest ona ustawiona na 2.0.0.*, wystarczy zmienić ją na 3.0.0.*. Po edycji przechodzimy do pakowania rozszerzenia. Tak przygotowany Gspace zainstaluje się bez przeszkód. Robimy więc co trzeba:

ex -c "%s/2.0.0/3.0.0/g | wq" install.rdf
zip -r -D gspace-0.5.92-ff3.xpi chrome defaults license.txt install.rdf gpl.txt chrome_jar.manifest chrome.manifest

Używanie tego rozszerzenia w Firefox 3 będzie wiązać się z pewnymi utrudnieniami. Mozilla zmieniła sposób zarządzania hasłami dlatego nie będzie możliwe logowanie się za pomocą zapamiętanych ustawień. Problem jest do obejścia. Robimy w taki sposób: logujemy się na gmail i odpalamy gspace. Ten automatycznie wykrywa, że mamy otwartą sesję z gmail.

Gspace jest na licencji GPL więc postanowiłem go troszkę ulepszyć dodając obsługę kont dla Firefox 3. Testowałem zmiany na Firefox w wersji beta 4 i działa poprawnie. Natomiast używając wersji beta 5 pojawiły się problemy z obsługą samego procesu logowania.

http://zawiasa.pl/pliki/ff3/gspace-0.5.92k.xpi

Leave a Reply

You must be logged in to post a comment.