Editar:
Parece que o problema estava com node-chrome-pak
. O rocketman10404 modificado data_pack.py
está funcionando bem, mesmo com ícones de 32px:
Por favor, use as instruções dele .
Resposta original :
A excelente resposta de @ rocketman10404 me levou ao node-chrome-pak , um script node.js que pode compactar, descompactar e substituir recursos específicos nos .pak
arquivos do Chrome / ium .
Embora eu tenha conseguido substituir os ícones de notificação chrome_100_percent.pak
por essa ferramenta, tenho que informar que não foi possível tornar as alterações visíveis. Ainda acho que vale a pena se esforçar para descrever os passos que tomei para chegar a esse ponto. Espero que alguém aceite isso e encontre uma maneira de fazê-lo funcionar.
Instalando o node.js
node-chrome-pak
precisará do node.js para executar. Você pode instalar a versão mais recente adicionando o PPA nodejs de Chris Lea:
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs
Fazendo o download do script e descompactando os recursos do Chrome
Faça o download do script:
git clone https://bitbucket.org/hikipro/node-chrome-pak.git
cd node-chrome-pak
Copie seu local chrome_100_percent.pak
:
cp /opt/google/chrome/chrome_100_percent.pak ./chrome_100_percent.pak
Descompacte o .pak
arquivo:
node ./main.js unpack chrome_100_percent.pak
Identificando e Modificando os Ícones de Notificação
A última ação terá criado uma nova pasta chamada ./extracted
. Nele, você encontrará todos os recursos contidos no arquivo pak. Eles são nomeados após o ID do recurso. Você deseja preservar esse nome, pois é importante reembalar os arquivos.
A parte difícil agora está na identificação dos ícones corretos. Se não me engano completamente, os seguintes arquivos devem ser os usados na bandeja do sistema:
6864.png
6865.png
6866.png
6867.png
Depois de identificar os ícones que você estava procurando, você pode modificá-los e substituí-los. Se você quiser, pode usar os ícones que eu criei para esse fim:
Os arquivos de origem e os exportados .png
em diferentes resoluções estão hospedados no GitHub .
Aí vem a primeira limitação que encontrei: Se você substituir os ícones por uma imagem em qualquer resolução superior ao Google Chrome original, ela será corrompida e deixará de funcionar corretamente . Para este projeto em particular, você terá que ficar com uma resolução de 16x16. Com efeito, isso significa que você não seria capaz de melhorar significativamente os ícones atuais da bandeja, mesmo que esse método funcionasse.
Claro que há a possibilidade de que essa limitação tenha sido introduzida pela maneira como node-chrome-pak
foi projetada. Talvez seja possível substituir os ícones por outros maiores, se você criar um script python personalizado com base na resposta de @ rocketman10404.
Reempacotando os recursos e substituindo os existentes
Após modificar / substituir os ícones existentes, você precisará criar um pak
arquivo atualizado ...
node ./main.js pack ./extracted ./chrome_100_percent_modified.pak
... e use-o para substituir o existente:
sudo cp ./chrome_100_percent_modified.pak /opt/google/chrome/chrome_100_percent.pak
O cerne deste método
Nas minhas tentativas, não consegui fazer o Chrome mostrar os ícones atualizados. Mesmo se eu certificasse que todos os ícones fossem substituídos corretamente e realmente estivessem presentes no pak
arquivo modificado (descompactando-o novamente), ainda não consegui substituir o ícone real na bandeja do sistema.
Infelizmente não tenho ideia do porquê disso.
/usr/share/icons
, se isso ajuda