Editar:
Parece que el problema fue con node-chrome-pak
. La modificación de rocketman10404 data_pack.py
funciona bien, incluso con iconos de 32px:
Por favor use sus instrucciones en su lugar.
Respuesta original :
La excelente respuesta de @ rocketman10404 me llevó a node-chrome-pak , un script de node.js que puede empaquetar, desempaquetar y reemplazar recursos específicos en los .pak
archivos de Chrome / ium .
Aunque logré reemplazar los íconos de notificación chrome_100_percent.pak
con esta herramienta, debo informar que no pude hacer visibles los cambios. Aún así, creo que vale la pena resumir los pasos que tomé para llegar a este punto. Esperemos que alguien más tome esto y encuentre una manera de hacerlo funcionar.
Instalar node.js
node-chrome-pak
necesitará node.js para ejecutarse. Puede instalar la última versión agregando el PPA nodejs de Chris Lea:
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs
Descargando el script y desempacando los recursos de Chrome
Descargar el guión:
git clone https://bitbucket.org/hikipro/node-chrome-pak.git
cd node-chrome-pak
Copie su local chrome_100_percent.pak
sobre:
cp /opt/google/chrome/chrome_100_percent.pak ./chrome_100_percent.pak
Descomprima el .pak
archivo:
node ./main.js unpack chrome_100_percent.pak
Identificar y modificar los íconos de notificación
La última acción habrá creado una nueva carpeta llamada ./extracted
. En él encontrará todos los recursos contenidos en el archivo pak. Se nombran después de su ID de recurso. Deberá conservar este nombre, ya que es importante para volver a empaquetar los archivos.
La parte difícil ahora radica en identificar los íconos correctos. Si no estoy completamente equivocado, los siguientes archivos deberían ser los que se usan en la bandeja del sistema:
6864.png
6865.png
6866.png
6867.png
Una vez identificados los iconos que estaba buscando, puede proceder a modificarlos y reemplazarlos. Si lo desea, puede usar los iconos que creé para este propósito:
Los archivos de origen y los correos .png
electrónicos exportados en diferentes resoluciones se alojan en GitHub .
Aquí viene la primera limitación que encontré: si reemplaza los iconos con una imagen en una resolución superior a la original, Google Chrome se dañará y dejará de funcionar correctamente . Para este proyecto en particular, tendrá que quedarse con una resolución de 16x16. En efecto, esto significa que no podría mejorar significativamente los iconos de la bandeja del sistema actual, incluso si tuviera que hacer funcionar este método.
Por supuesto, existe la posibilidad de que esta limitación se introdujera por la forma en que node-chrome-pak
fue diseñada. Es posible reemplazar los íconos por otros más grandes si crea un script de Python personalizado basado en la respuesta de @ rocketman10404.
Reempaquetar los recursos y reemplazar los existentes.
Después de modificar / reemplazar los iconos existentes, tendrá que crear un pak
archivo actualizado ...
node ./main.js pack ./extracted ./chrome_100_percent_modified.pak
... y úsalo para reemplazar el existente:
sudo cp ./chrome_100_percent_modified.pak /opt/google/chrome/chrome_100_percent.pak
El quid de este método
En mis intentos, no he podido hacer que Chrome muestre los íconos actualizados. Incluso si me aseguré de que todos los íconos se reemplazaran correctamente y realmente estuvieran presentes en el pak
archivo modificado (al desempaquetarlo nuevamente) aún no podía reemplazar el ícono real en la bandeja del sistema.
Lamentablemente no tengo idea de por qué es esto.
/usr/share/icons
, si eso ayuda