Zamrożeni w czasie
Oto i stało się! Nadszedł kres Firefoksa jakiego wszyscy znamy. Wraz z wersją 57, definitywnie przestały działać dodatki napisane z myślą o XUL/XPCOM. W praktyce oznacza to, że Mozilla lekką ręką wyrzuca do śmietnika cały dorobek swoich wiernych użytkowników – tak, bez wyjątku wszystkie dotychczasowe dodatki zamilkną na zawsze, a kto wie czy nawet nie zostaną skasowane. Holokaust nie ominął nawet skórek (tzw. „kompletnych motywów”).
W takim razie, czy nie lepiej przesiąść się na forki, np. Palemoon lub Waterfox ? Moim zdaniem nie. Pierwszy pozostał w erze sprzed Australis (co dla wielu jest zaletą, szanuję, ponoć silnik rozwijają już niezależnie od Mozilli) i większość dodatków nie jest z nim kompatybilna. Drugiemu zwyczajnie nie ufam i też nie wiadomo jak długo autor jest w stanie utrzymać kompatybilność ze starym API.
Oczywiście wszyscy zdajemy sobie sprawę z tego jak ociężałą przeglądarką był i nadal jest nasz Lis (nawet pomimo znacznego wzrostu „responsywności” w wersji 54). Zamiast szlifować Gecko i aktualne API dodatków, Mozilla trwoni pieniądze na głupoty i pozbywa się specjalistów. Po sromotnej porażce FirefoxOS, stawiają wszystko na jedną kartę: nowy silnik Servo i Web Extensions, nowe biznesowe koligacje i nadzieja na powrót do pierwszej ligi w niemal Chrome’owym wdzianku. Czyżby przepis na sukces? Przy można by rzec, nieograniczonym budżecie głównego rywala – Google – jest to co najmniej wątpliwe. Czy twórcy przepiszą swoje dodatki? Części z nich podobno się nie da ze względu na ograniczenia, zaś funkcjonalność innych zostanie zmniejszona. .. Czy użytkownicy, których przy Ognistym Lisie (lub jak wolą ortodoksi: Pandzie Małej) trzymały te drobne, niepozorne programy, pozostaną wierni? Otóż sytuacja na dzień dzisiejszy wygląda tak, że tylko niewielki procent deweloperów wyraziło chęć portowania swoich dzieł (każdy autor wiedział o tym już od ponad roku), a tak zatwardziali użytkownicy jak ja, nie zamierzają się przesiadać na nowszą, bo przecież okaleczoną wersję.
I to właśnie dla nich przygotowałem paczkę z 64 bitową, przenośną wersją Firefox 55.0.3 (na 56 już niektóre dodatki nie działają ze względu ograniczenie wersji w manifesćie, a tylko linia deweloperska pozwala na edytowane, a więc i niepodpisane). Wraz ze wtyczkami NPAPI (w zewnętrznym archiwum, ale do działania czegokolwiek innego niż Flash, wymagana jest starsza wersja i to 32bitowa – a w tej roli idealna wydaje się być linia ESR v52), z moimi ulubionymi dodatkami (zaledwie kilka jest domyślnie zainstalowanych), skonfigurowany wg. mojego widzimisię (a więc np. z wyłączonymi Pocket, telemetrią).
Oczywiście ***NIE*** powinieneś mi ufać! Z twojego punktu widzenia jestem niemal anonimem, przypadkową osobą z internetu, więc mam w tym interes aby cię szanowny czytelniku zainfekować w białych rękawiczkach. I dlatego właśnie, opiszę jak sobie złożyć taką paczkę samemu jeśli tylko jesteś tak przezorny jak pracowity. :)
Kopiowanie dodatków
Na początku zacznę od opisu w jaki sposób skopiować dodatki z repozytorium Mozilli. Oczywiście to tylko na wypadek gdybyś chciał je mieć normalnie nazwane, poza macierzystym folderem (ponieważ przeglądarka po instalacji nazwie je po swojemu) i na wypadek gdyby pewnego dnia zniknęły z ichniej strony internetowej. Jeśli o to nie dbasz, a dodatki które cię interesują nie są w uboższych, ale nowszych wersjach dla Web Extensions, to możesz korzystać z wbudowanej wyszukiwarki dodatków i przejść do kolejnego zagadnienia.
Jak pewnie zauważyłeś, będąc na stronie dodatku można pobrać i zainstalować tylko najnowszą wersję. Aby wybrać inną trzeba odwiedzić:
https://addons.mozilla.org/pl/firefox/addon/<nazwa dodatku>/versions/
Poszukaj informacji na temat tego, od której wersji dodatek przeszedł na WE. W przykładzie niżej, autor umieścił to na liście zmian:
Wystarczy więc teraz kliknąć prawym przyciskiem myszy na zielonym przycisku "Pobierz" i "Zapisz element docelowy jako...".
Jeśli jednak autor nie wyszczególnił tej informacji to można poznać po zawartości archiwum XPI (czyli ZIP). Dodatki dla XUL/XPCOM mają w środku obowiązkowe pliki "install.rdf" i "chrome.manifest", podczas gdy te dla Web Extensions tylko "manifest.json" (są też dodatki hybrydowe zawierające oba warianty i taki też się nada, ponieważ Firefox w wersji 56, uzna WE za obywatela drugiej kategorii).
Wersja przenośna (czyli portable)
Pobierz instalator przenośnej wersji Firefoksa, przygotowany przez zespół PortableApps. Zainstaluj (rozpakuj) Lisa w dowolnym miejscu – i póki co go jeszcze nie uruchamiaj tylko przejdź do folderu, który wskazałeś.
Znajdziesz tam "App" gdzie fizycznie znajduje się „oryginalny Firefox”, "Data" w którym zostanie utworzony profil użytkownika przy pierwszym uruchomieniu programu, "Other", ze źródłami i zewnętrznym zasobem dla "help.html" (oba zbędne z punktu widzenia użytkownika, więc możesz skasować) oraz "FirefoxPortable.exe", który pełni rolę launchera (czyli to za jego pomocą należy uruchamiać Pandę Małą ;)).
Wewnątrz "App" znajdują się foldery "Firefox" i jego brat bliźniak "Firefox64". Odpowiadają one wersjom 32 i 64 bitowej, które wybiera launcher adekwatnie do platformy, na której go uruchomiłeś. Jeśli nie masz zamiaru kiedykolwiek korzystać z wersji 32 bitowej to możesz ją skasować i zmienić nazwę folderu z 64 bitową wersją po prostu na "Firefox", a jeśli 64 bitowej to wystarczy skasować folder "Firefox64". Oszczędzisz w ten sposób ponad 100MB na dysku twardym.
Możesz też usunąć niżej wymienione pliki. W przenośnej wersji nie będą potrzebne. crashreporter.exe maintenanceservice.exe maintenanceservice_installer.exe minidump_analyzer.exe pingsender.exe updater.exe.
Zalecam spuścić w ubikacji również wbudowane, ukryte (!) dodatki. Znajdziesz je w "browser\features\"). W zasadzie to można skasować wszystkie za wyjątkiem elektrolizy i click to play (chyba, że któregoś używasz).
aushelper@mozilla.org.xpi odpowiada za sprawdzanie aktualizacji firefox@getpocket.com.xpi Pocket followonsearch@mozilla.com.xpi szpieguje screenshots@mozilla.org.xpi funkcja wykonywania screenshotów, nie działa w trybie prywatnym shield-recipe-client@mozilla.org.xpi szpieguje webcompat@mozilla.org.xpi odpowiada za obsługę WE, jeśli używasz takich dodatków nie kasuj tego pliku
Przygotowanie profilu
W "DefaultData" znajdują się domyślne zasoby profilu użytkownika, które będą za każdym razem powielane jeśli FX nie znajdzie żadnej zawartości w folderze "Data" (czyli ekwiwalentu "%HOMEPATH%\AppData\Roaming\Mozilla\Firefox\"), celem szybkiego „odświeżenia profilu”.
Wewnątrz "plugins" oczywiście znajdują się wtyczki NPAPI (czyli np. Adobe Flash Player, Microsoft Silverlight). W jaki sposób zrobić sobie ich wersję przenośną opisałem w poradniku do Firefoksa, który napisałem już jakiś czas temu. Znajdziesz tam też spis dodatków, które sam polecam (warto również przejrzeć komentarze innych użytkowników, którzy wypisali swoje propozycje). Do katalogu "profile", należy wrzucić tylko niezbędne dane, które można sobie samemu pedantycznie wybrać.
Ustawienia przeglądarki
Niemal wszystkie ustawienia znajdują się w pliku "prefs.js" (nie musisz od nowa wszystkiego konfigurować, może być klonem ze stacjonarnego Lisa). Moje propozycje zmian w pliku znajdziesz w paczce (jest ich zbyt wiele aby wszystkie opisywać). Najważniejsze znajdziesz pod tym linkiem.
Zakładki
Powinny się znaleźć w "bookmarkbackups\bookmarks-<rok>-<miesiąc>-<dzień>*.json/jsonlz4". Inne nazwy plików będą ignorowane – i wtedy Firefox wczyta domyślne zakładki. Po dacie można użyć dowolnego ciągu znaków. Nie zapomnij także o myślnikach pomiędzy cyframi i jednym poprzedzającym datę. Oczywiście plików z zakładkami może być więcej, ale wczytany zostanie tylko najnowszy (po to właśnie te daty).
Dodatki
Powinny się znaleźć w folderze "extensions", a oprócz nich poziom wyżej, czyli tak jak ustawienia, pliki "extensions.json" i "addons.json" w którym są zarejestrowane. Jeśli któryś trzyma swoje dodatkowe zasoby we własnych folderach to je oczywiście także przekopiuj. Oprócz tego, teoretycznie powinien znaleźć się jeszcze plik "addonStartup.json.lz4", który wskazuje które dodatki są włączone, ale używa bezwzględnych ścieżek, więc nie nadaje się do wersji przenośnej. Na szczęście, Lis odtworzy go po pierwszym uruchomieniu, i już za drugim razem wszystko wróci do normy (dopóki nie przeniesiesz folderu z całym portable’owym Firefox’em).
Wyszukiwarki
Miejsce dla wyszukiwarek to "searchplugins\*.xml". Wszystkie, które tam się znajdą zostaną automatycznie wczytane. Dodatkowo ustawienia domyślnej z jakiegoś powodu nie są wpisane do "prefs.js", tylko do "search.json.mozlz4", więc jeśli zależy ci na zachowaniu tego ustawienia, plik ten umieść w folderze z profilem.
Modyfikacje interfejsu i stron
Jeśli posiadasz własne modyfikacje interfejsu to umieść je w plikach "chrome\userChrome.css" i "chrome\userContent.css".
Loginy i hasła
Nie wiem gdzie są przechowywane loginy i hasła, a także uzupełnione formularze, ponieważ nie używam takiej funkcjonalności. Prawdopodobnie znajdziesz je w "logins.json" i "key3.db" i prawdopodobnie dadzą się przenieść. ;)
Poniżej przykład jak to wszystko wygląda u mnie: