# Окремі профілі Firefox на базі спільного релізу

Я користуюсь декількома браузерами одночасно: для Mycelium та Yggdrasil - в мене окремі пресети PAC:
=> safe-yggdrasil-websites-browsing-with-yggstack.gmi Безпечний перегляд сайтів Yggdrasil з Yggstack

У той час, як для Інтернет - самописний фільтруючий psocks:
=> psocks-my-vision-of-filtering-out-proxy.gmi psocks: моє бачення фільтруючого проксі

Таким чином, трафік розділяється та фільтрується між різними мережами, не дозволяючи з Yggdrasil пов'язати мій Інтернет-IP через запит якоїсь картинки або іншого віддаленого ресурсу. Те само стосується й браузеру I2P: для цієї мережі я виділив NetSurf, бо Librewolf мені не подобається своєю мутною політикою довкола сумнівного uBlock а інших приватно-орієнтованих екземплярів FF у мене не лишилось.

Віднедавна, відкрив для себе консервативну збірку "i2pdbrowser", з якої випиляв залежність I2P і трішки послабив політики приватності:
=> my-personal-i2pdbrowser-fork-for-privacy-oriented-web.gmi Мій форк i2pdbrowser для приватно-орієнтованого Веб

Тепер я хочу цей браузер задіяти і для профілю Інтернет, бо останнім часом Mozilla дивує своєю попсовістю. Спочатку, поліз не в ті кущі бо хотів збілдити ще один екземпляр браузеру з іншим App ID, щоб пускати його паралельно:
=> build-firefox-from-source-on-fedora-linux.gmi Збірка Firefox з початкового коду в Linux / Fedora 43

Очікувано, збірка старої версії Firefox на сучасній Fedora - завершилась нічим, цю ідею я відклав, а повертатись на Flatpak вперто не планую:
=> goodbye-flatpak.gmi Видаляю Flatpak зі свого комп'ютера

## До справи

Власне, яку "Америку" я для себе відкрив: виявляється, FF підтримує вибіркові профілі, для цього достатньо запустити його з аргументом `-P`:

``` bash
/path/to/i2pdbrowser/firefox -P
```

У вікні створюємо профіль, наприклад "firefox-internet" і потім вказуємо його при запуску потрібного екземпляру:

``` bash
/path/to/i2pdbrowser/firefox -P 'firefox-internet'
/path/to/i2pdbrowser/firefox -P 'firefox-mesh'
```
* і т.д. по аналогії

Оскільки в мене десктоп, ці команди я чіпляю на Exec файлів .Desktop, змінюю піктограми і налаштовую профілі під себе.

### Приклад файлу .desktop

Щоб при запуску процес не чіплявся до спільного ярличка програми в меню, додаю ще такі аргументи:

``` ~/.local/share/applications/firefox-internet.desktop
[Desktop Entry]
Name=Firefox ESR 115.20 (internet)
StartupWMClass=firefox-internet
Exec=/path/to/i2pdbrowser/firefox -P internet --name firefox-internet --class firefox-internet
Icon=/path/to/i2pdbrowser/browser/chrome/icons/default/default128.png
Terminal=false
Type=Application
Categories=Web;
```
* `--class firefox-internet` - X11
* `--name firefox-internet` - Wayland
* зверніть увагу, що `StartupWMClass` повинен відповідати ідентифікаторам вище