XPInstall (Instalación multiplataforma) era una tecnología utilizada por Mozilla Application Suite , SeaMonkey , Mozilla Firefox , Mozilla Thunderbird y otras aplicaciones basadas en XUL para instalar extensiones de Mozilla que añadían funcionalidad a la aplicación principal. [ 1 ] El soporte para XPInstall se eliminó de Firefox en noviembre de 2017 con el lanzamiento de Firefox 57. [ 2 ]
Descripción general
Un módulo de instalación XPI (pronunciado "zippy" y derivado de XPInstall) es un archivo ZIP que contiene un script de instalación o un manifiesto en la raíz del archivo, y varios archivos de datos. [ 1 ] Los archivos XPI permitían a los usuarios instalar complementos, temas y otras extensiones para personalizar sus aplicaciones Mozilla. [ 3 ]
En las primeras versiones de Mozilla (Firefox antes de la 0.7 y Thunderbird antes de la 0.5), [ 4 ] el paquete contenía un script de instalación de JavaScript (install.js) con algunas directivas para las acciones que se debían realizar durante la instalación, incluyendo agregar archivos y directorios, eliminar archivos y directorios antiguos u obsoletos, ejecutar herramientas de línea de comandos , etc. [ 5 ] En versiones posteriores de Firefox y Thunderbird, el script de instalación fue reemplazado por un manifiesto de Chrome y un archivo de marco de descripción de recursos (install.rdf). [ 6 ]
Deprecación
En agosto de 2015, Mozilla anunció planes para descontinuar los complementos basados en XUL, XPCOM y el SDK de complementos en favor de una nueva API de WebExtensions. [ 7 ] Mozilla citó varias razones para la transición:
- Problemas de seguridad : Las extensiones antiguas tenían acceso sin restricciones a los componentes internos de Firefox, lo que creaba vulnerabilidades de seguridad.
- Problemas de rendimiento : Las extensiones XUL/XPCOM interfirieron con la transición de Firefox a una arquitectura multiproceso (Electrolysis/e10s).
- Complejidad del desarrollo : El estrecho acoplamiento entre Firefox y sus complementos provocó retrasos en el desarrollo y fallos del sistema.
- Compatibilidad entre navegadores : WebExtensions, basada en el modelo de extensiones de Chrome, permitió a los desarrolladores crear extensiones que funcionaban en varios navegadores.
Impacto
La transición a Firefox 57 afectó a miles de extensiones. [ 8 ] Muchos complementos populares se reescribieron utilizando la API WebExtensions, mientras que otros se descontinuaron porque su funcionalidad no podía replicarse dentro del marco más restrictivo de WebExtensions. [ 9 ] El cambio fue controvertido dentro de la comunidad de Firefox, [ 10 ] con algunos usuarios y desarrolladores elogiando la compatibilidad mejorada entre navegadores, mientras que otros criticaron la pérdida de capacidades de personalización. [ 11 ] Algunos usuarios migraron a bifurcaciones de Firefox como Pale Moon y Waterfox , que continuaron siendo compatibles con las extensiones antiguas. [ 12 ]
Legado
La extensión de archivo .xpi se sigue utilizando para las WebExtensions en Firefox. Los archivos XPI modernos contienen un manifest.jsonarchivo en lugar de install.rdfy utilizan la API de WebExtensions en vez de XUL/XPCOM. Varias aplicaciones mantuvieron la compatibilidad con XPInstall después de que Firefox la descontinuara:
- Pale Moon : Bifurcó el código fuente de Firefox para crear la Plataforma XUL Unificada (UXP), que continúa siendo compatible con las extensiones XUL tradicionales.
- SeaMonkey : Se ha reimplementado la compatibilidad con XUL para las versiones más recientes del código fuente, aunque el desarrollo se ha ralentizado.
- Thunderbird : Se fue alejando gradualmente de las extensiones basadas en XUL, eliminando la compatibilidad en la versión 78 (2020).
Véase también
Referencias
- 1 2 File.org (24-02-2023). "Archivo XPI: Cómo abrir un archivo XPI (y qué es)" . file.org . Consultado el 23-02-2024 .
- ↑ Cimpanu, Catalin. "Los complementos antiguos de Firefox dejarán de funcionar en Firefox 57, a finales de 2017" . BleepingComputer . Consultado el 11 de noviembre de 2025 .
- ↑ "XPI - Mozilla | MDN" . developer.mozilla.org . 4 de octubre de 2016. Consultado el 11 de noviembre de 2025 .
- ↑ "CVE-2011-2375" . vulmon.com . Consultado el 11 de noviembre de 2025 .
- ↑ "Nota de vulnerabilidad CERT/CC VU#648758" . www.kb.cert.org . Consultado el 11 de noviembre de 2025 .
- ↑ "Instalar manifiestos - Mozilla | MDN" . developer.mozilla.org . 26/10/2016 . Consultado el 11/11/2025 .
- ↑ Needham, Kev (21 de agosto de 2015). "El futuro del desarrollo de complementos para Firefox" . Blog de la comunidad de complementos de Mozilla . Recuperado el 11 de noviembre de 2025 .
- ↑ Brinkmann, Martin (27 de abril de 2017). "Si Firefox 57 se lanzara hoy, 2273 complementos serían compatibles - gHacks Tech News" . gHacks Technology News . Consultado el 11 de noviembre de 2025 .
- ↑ Cimpanu, Catalin. "Los complementos antiguos de Firefox dejarán de funcionar en Firefox 57, a finales de 2017" . BleepingComputer . Consultado el 11 de noviembre de 2025 .
- ↑ "Sentimientos encontrados reciben la renovación de los complementos de Mozilla" . InfoQ . Consultado el 11 de noviembre de 2025 .
- ↑ "Firefox 57: ¿Buenas noticias? Es rápido. ¿Malas noticias? También dañará tus complementos" . Archivado del original el 9 de agosto de 2025. Consultado el 11 de noviembre de 2025 .
- ↑ Brinkmann, Martin (25-10-2019). "El desarrollo de Waterfox se divide en ramas Clásica y Actual - gHacks Tech News" . gHacks Technology News . Recuperado el 11-11-2025 .
Enlaces externos
- "XPInstall" . Archivado del original el 22 de abril de 2009. Consultado el 28 de septiembre de 2021 .
- "Embalaje de extensión – MDC" . Archivado del original el 19 de agosto de 2008. Consultado el 28 de septiembre de 2021 .
- "Tu primera extensión – Mozilla | MDN" . 19 de febrero de 2021. Consultado el 28 de septiembre de 2021 .
- Formatos de archivo
- Complementos de Firefox
- extensiones de Firefox
- Software de instalación
- Mozilla
- Sistemas de gestión de paquetes