แก้ไข:
node-chrome-pak
ดูเหมือนว่าปัญหาอยู่กับ rocketman10404's แก้ไขแล้วdata_pack.py
ทำงานได้ดีแม้จะมีไอคอน 32px:
โปรดใช้คำแนะนำของเขาแทน
คำตอบเดิม :
คำตอบที่ยอดเยี่ยมของ @ rocketman10404 นำฉันไปสู่node-chrome-pakซึ่งเป็นสคริปต์ node.js ที่สามารถแพ็คแกะและแทนที่ทรัพยากรเฉพาะใน.pak
ไฟล์ของ Chrome / ium
แม้ว่าฉันจะสามารถแทนที่ไอคอนการแจ้งเตือนchrome_100_percent.pak
ด้วยเครื่องมือนี้ได้ แต่ฉันต้องรายงานว่าฉันไม่สามารถทำการเปลี่ยนแปลงได้ ถึงกระนั้นฉันคิดว่ามันคุ้มค่ากับความพยายามที่จะร่างขั้นตอนที่ฉันทำเพื่อรับประเด็นนี้ หวังว่าคนอื่นจะใช้เวลานี้และหาวิธีที่จะทำให้มันใช้งานได้จริง
การติดตั้ง node.js
node-chrome-pak
จะต้องใช้ node.js เพื่อรัน คุณสามารถติดตั้งเวอร์ชันล่าสุดโดยเพิ่ม nodejs PPA ของ Chris Lea:
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs
การดาวน์โหลดสคริปต์และคลายทรัพยากรของ Chrome
ดาวน์โหลดสคริปต์:
git clone https://bitbucket.org/hikipro/node-chrome-pak.git
cd node-chrome-pak
คัดลอกท้องถิ่นของคุณchrome_100_percent.pak
มากกว่า:
cp /opt/google/chrome/chrome_100_percent.pak ./chrome_100_percent.pak
คลาย.pak
ไฟล์:
node ./main.js unpack chrome_100_percent.pak
การระบุและแก้ไขไอคอนการแจ้งเตือน
./extracted
การกระทำที่ผ่านมาจะได้สร้างโฟลเดอร์ใหม่ที่เรียกว่า ในนั้นคุณจะพบทรัพยากรทั้งหมดที่มีอยู่ในไฟล์ปาก พวกเขาถูกตั้งชื่อตาม ID ทรัพยากรของพวกเขา คุณจะต้องรักษาชื่อนี้ไว้เพราะมันเป็นสิ่งสำคัญสำหรับการบรรจุไฟล์ใหม่
ตอนนี้ส่วนที่ยากอยู่ในการระบุไอคอนที่ถูกต้อง ถ้าฉันไม่ผิดอย่างสมบูรณ์ไฟล์ต่อไปนี้ควรเป็นไฟล์ที่ใช้ใน systray:
6864.png
6865.png
6866.png
6867.png
เมื่อระบุไอคอนที่คุณต้องการแล้วคุณสามารถทำการแก้ไขและแทนที่พวกเขาได้ หากคุณต้องการคุณสามารถใช้ไอคอนที่ฉันสร้างขึ้นเพื่อจุดประสงค์นี้:
แฟ้มแหล่งที่มาและส่งออก.png
ในความละเอียดที่แตกต่างกันเป็นเจ้าภาพมากกว่าที่GitHub
มาที่นี่ครั้งแรกข้อ จำกัด ที่ฉันพบ: ถ้าคุณแทนที่ไอคอนที่มีภาพในความละเอียดใด ๆ ที่สูงขึ้นกว่าเดิม Google Chrome จะได้รับความเสียหายและหยุดการทำงานอย่างถูกต้อง สำหรับโครงการนี้คุณจะต้องใช้ความละเอียด 16x16 ในกรณีนี้หมายความว่าคุณจะไม่สามารถปรับปรุงไอคอนระบบ systray ปัจจุบันได้อย่างมีนัยสำคัญแม้ว่าคุณจะต้องใช้วิธีการนี้ก็ตาม
แน่นอนว่ามีความเป็นไปได้ที่ข้อ จำกัด นี้ได้รับการแนะนำโดยวิธีnode-chrome-pak
การออกแบบ อาจเป็นไปได้ที่จะแทนที่ไอคอนด้วยไอคอนที่ใหญ่กว่าถ้าคุณสร้างสคริปต์ python ที่กำหนดเองตามคำตอบของ @ rocketman10404
การทำซ้ำทรัพยากรและแทนที่ทรัพยากรที่มีอยู่
หลังจากแก้ไข / แทนที่ไอคอนที่มีอยู่คุณจะต้องสร้างpak
ไฟล์ที่อัปเดต...
node ./main.js pack ./extracted ./chrome_100_percent_modified.pak
... และใช้เพื่อแทนที่อันที่มีอยู่:
sudo cp ./chrome_100_percent_modified.pak /opt/google/chrome/chrome_100_percent.pak
ปมของวิธีนี้
ในความพยายามของฉันฉันไม่สามารถทำให้ Chrome แสดงไอคอนที่อัปเดตได้ แม้ว่าฉันจะทำให้แน่ใจว่าไอคอนทั้งหมดถูกแทนที่อย่างถูกต้องและมีอยู่จริงในpak
ไฟล์ที่ถูกแก้ไข(โดยการแกะอีกครั้ง) ฉันยังคงไม่สามารถแทนที่ไอคอนจริงใน systray
น่าเสียดายที่ฉันไม่รู้ว่าทำไมถึงเป็นแบบนี้
/usr/share/icons
ถ้ามันช่วยได้