<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>40364</bug_id>
          
          <creation_ts>2021-07-03 00:52:19 +0300</creation_ts>
          <short_desc>Значения макросов %firefox_*_extensionsdir не соответствует текущему firefox&apos;у</short_desc>
          <delta_ts>2021-07-16 22:29:33 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>firefox</component>
          <version>unstable</version>
          <rep_platform>x86_64</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugzilla.altlinux.org/show_bug.cgi?id=37472</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P5</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Nikolay A. Fetisov">naf</reporter>
          <assigned_to name="Alexey Gladkov">legion</assigned_to>
          <cc>legion</cc>
    
    <cc>rauty</cc>
    
    <cc>sbolshakov</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>199962</commentid>
    <comment_count>0</comment_count>
    <who name="Nikolay A. Fetisov">naf</who>
    <bug_when>2021-07-03 00:52:19 +0300</bug_when>
    <thetext>В rpm-build-firefox-89.0.2-alt1 предполагается установка расширений в каталоги,
определяемые макросами %firefox_arch_extensionsdir и %firefox_noarch_extensionsdir,
т.е. в %_libdir/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384} и
%_datadir/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384} соответственно.

Firefox 89.0.2 при запуске к этим каталогам не обращается, и их содержимое
не подключает. Вместо них он обращается к каталогу 
%_libdir/firefox/distribution/extensions/ , причём каталог 
%_libdir/firefox/distribution/ в пакете firefox есть, а вот
%_libdir/firefox/distribution/extensions/ там отсутствует.

В случае создания каталога %_libdir/firefox/distribution/extensions/ и размещения
в нём расширений они определяются и подключаются.

Ну а имеющиеся сейчас в репозитории расширения firefox-* использоваться браузером не могут.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>200199</commentid>
    <comment_count>1</comment_count>
    <who name="Alexey Gladkov">legion</who>
    <bug_when>2021-07-09 17:52:41 +0300</bug_when>
    <thetext>Описанные директории продолжают поддерживаться firefox. Если это не так в пакете, то это ошибка.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>200201</commentid>
    <comment_count>2</comment_count>
    <who name="Nikolay A. Fetisov">naf</who>
    <bug_when>2021-07-09 18:42:18 +0300</bug_when>
    <thetext>(Ответ для Alexey Gladkov на комментарий #1)
&gt; Описанные директории продолжают поддерживаться firefox. Если это не так в
&gt; пакете, то это ошибка.

Чистая система, свежепоставленный firefox.

$ rpm -aq |grep firefox
firefox-89.0.2-alt1.aarch64

$ strace -f firefox &amp;&gt;/tmp/strace

Ждём запуска, закрываем.

$ grep extensions /tmp/strace 
[pid 44414] mkdirat(AT_FDCWD, &quot;/home/naf/.mozilla/extensions&quot;, 0700) = -1 EEXIST (Файл существует)
[pid 44414] openat(AT_FDCWD, &quot;/usr/lib64/firefox/distribution/extensions&quot;, O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (Нет такого файла или каталога)
[pid 44414] faccessat(AT_FDCWD, &quot;/usr/lib64/firefox/distribution/extensions&quot;, F_OK) = -1 ENOENT (Нет такого файла или каталога)
[pid 44414] mkdirat(AT_FDCWD, &quot;/home/naf/.mozilla/systemextensionsdev&quot;, 0700) = -1 EEXIST (Файл существует)
[pid 44414] newfstatat(AT_FDCWD, &quot;/home/naf/.mozilla/systemextensionsdev&quot;, {st_mode=S_IFDIR|0700, st_size=4096, ...}, 0) = 0
[pid 44414] faccessat(AT_FDCWD, &quot;/home/naf/.mozilla/firefox/o017yq4i.default-default/extensions&quot;, F_OK) = 0
[pid 44414] newfstatat(AT_FDCWD, &quot;/home/naf/.mozilla/firefox/o017yq4i.default-default/extensions&quot;, {st_mode=S_IFDIR|0755, st_size=4096, ...}, 0) = 0
[pid 44414] newfstatat(AT_FDCWD, &quot;/home/naf/.mozilla/systemextensionsdev&quot;,  &lt;unfinished ...&gt;
[pid 44414] faccessat(AT_FDCWD, &quot;/home/naf/.mozilla/firefox/o017yq4i.default-default/extensions&quot;, F_OK) = 0
[pid 44414] newfstatat(AT_FDCWD, &quot;/home/naf/.mozilla/firefox/o017yq4i.default-default/extensions&quot;, {st_mode=S_IFDIR|0755, st_size=4096, ...}, 0) = 0

$ grep ec8030f7-c20a-464f-9b0e-13a3a9e97384 /tmp/strace 
&lt;пусто&gt;

Могу проверить ещё на x86_64/i586, но как минимум на ARM64 Firefox сейчас не смотрит
в %_libdir/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384} и
%_datadir/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384},
а %_libdir/firefox/distribution/extensions/, наоборот, проверяет.

Ну и можно положить какое-либо-расширение.xpi в эти каталоги - загружать его 
Firefox будет из %_libdir/firefox/distribution/extensions/ .</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>200306</commentid>
    <comment_count>3</comment_count>
    <who name="Nikolay A. Fetisov">naf</who>
    <bug_when>2021-07-12 12:03:11 +0300</bug_when>
    <thetext>Поведение текущего Firefox, по-видимому, следующее:

- расширения размещаются и используются только из каталога расширений пользователя,
  в ~/.mozilla/firefox/*/extensions/ ,
- дистрибутивные расширения ищутся в %_libdir/firefox/distribution/extensions/ ,
- при запуске Firefox все расширения из %_libdir/firefox/distribution/extensions/
  копируются в каталог расширений пользователя,
- и то, что было скопировано - запоминается в профиле пользователя,
- свои копии дистрибутивных расширений пользователь может обновлять или удалять
  как и добавленные им самим расширения,
- удалённые пользователем копии дистрибутивных расширений при новом запуске
  Firefox&apos;а из системного каталога не восстанавливаются,
- новые расширения из дистрибутивного каталога при новом запуске Firefox
  копируются в каталог пользователя и подключаются в его профиль,
- обновления расширений в системном каталоге при запуске Firefox копирются
  в каталог пользователя,
- и расширения - это архивы &lt;id&gt;.xpi, где id - это идентификатор из manifest.json.
  Развёрнутые архивы расширений больше не используются.

С символьной ссылкой %_libdir/firefox/distribution/extensions/ -&gt; %_datadir/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/ Firefox работает нормально.
Архитектурно-зависимых расширений, использующих %mozilla_arch_extdir и его производные
в Sisyphus не видно.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>200616</commentid>
    <comment_count>4</comment_count>
    <who name="Repository Robot">repository-robot</who>
    <bug_when>2021-07-16 22:29:33 +0300</bug_when>
    <thetext>firefox-90.0-alt1 -&gt; sisyphus:

 Tue Jul 13 2021 Alexey Gladkov &lt;legion@altlinux.ru&gt; 90.0-alt1
 - New release (90.0).
 - Move rpm-build-firefox from firefox to separate package.
 - Security fixes:
   + CVE-2021-29970: Use-after-free in accessibility features of a document
   + CVE-2021-29971: Granted permissions only compared host; omitting scheme and port on Android
   + CVE-2021-30547: Out of bounds write in ANGLE
   + CVE-2021-29972: Use of out-of-date library included use-after-free vulnerability
   + CVE-2021-29973: Password autofill on HTTP websites was enabled without user interaction on Android
   + CVE-2021-29974: HSTS errors could be overridden when network partitioning was enabled
   + CVE-2021-29975: Text message could be overlaid on top of another website
   + CVE-2021-29976: Memory safety bugs fixed in Firefox 90 and Firefox ESR 78.12
   + CVE-2021-29977: Memory safety bugs fixed in Firefox 90
 Fri Jul 09 2021 Alexey Gladkov &lt;legion@altlinux.ru&gt; 89.0.2-alt2
 - Enable searching system- and account-global directories for extensions (ALT#40364).</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>