संपादित करें: अधिसूचना आइकन की जगह पर अद्यतन के लिए नीचे देखें
यदि आप क्रोम बायनेरी ठेठ स्थान पर स्थापित हैं, तो आप उन्हें खोज लेंगे /opt/google/chrome
। उस फ़ोल्डर में आपको वह फ़ाइल ढूंढनी चाहिए chrome_100_percent.pak
जिसमें अधिसूचना आइकन है। इस स्टैक ओवरफ्लो प्रश्न की जानकारी का उपयोग करते हुए, मैंने इसे निकालने के लिए उपयोग किए जाने वाले चरण दिए हैं :
के साथ grit-i18n प्रोजेक्ट के लिए कोड चेकआउट करें
svn checkout http://grit-i18n.googlecode.com/svn/trunk/ grit-i18n-read-only
यह आपको आपके CWD नामक फोल्डर में देगा grit-i18n-read-only
। इस फोल्डर में सी.डी.
cd grit-i18n-read-only
इस फ़ोल्डर में data_pack python मॉड्यूल को कॉपी करें
cp grit/format/data_pack.py .
data_pack.py
अपने पसंदीदा संपादक में संपादित करें । प्रारंभिक आयात के बाद, निम्नलिखित पंक्ति जोड़ें:
sys.path.append(os.getcwd())
main
फ़ंक्शन में फ़ाइल के अंत की ओर , लाइन को हटा दें
print '%s: %s' % (resource_id, text)
(स्टैक ओवरफ्लो उत्तर में कहा गया है कि यह लाइन 160 पर होता है, मेरे अनुभव में वर्तमान संस्करण में यह लाइन 201 पर है)
इसके स्थान पर, निम्नलिखित पंक्तियों को उचित रूप से सम्मिलित करें (3 बार):
file = open(str(resource_id), "wb")
file.write(text)
data_pack.py
क्रोम पाक फ़ाइल पर उपयोगिता चलाएँ (मैंने इसे grit-i18n-read-only
पहले फ़ोल्डर में कॉपी किया है ):
./data_pack.py ../chrome_100_percent.pak
इसके परिणामस्वरूप वर्तमान निर्देशिका में बहुत सी नई फाइलें होंगी, सभी को बिना किसी एक्सटेंशन के संख्या के रूप में नामित किया जाएगा। आपका फ़ाइल ब्राउज़र (जैसे nautilus) फ़ाइल प्रकारों को निर्धारित करने और छवि थंबनेल दिखाने में सक्षम होना चाहिए। मुझे 6866 और 6867 नाम के नोटिफिकेशन आइकन मिले।
संपादित करें
जबकि नीचे कुछ सरल उत्तर हैं, मैं उन संसाधनों को फिर से पैकेज करने के लिए कुछ कोड को एक साथ हैक करने में कामयाब रहा, जिन्हें आप आइकन संपादित करने के बाद प्रयास कर सकते हैं। यह एक नई .pak
फ़ाइल का उत्पादन करेगा , जिसे मैंने खुद का उपयोग करने का प्रयास नहीं किया है, इसलिए मैं यह निश्चित रूप से नहीं कह सकता कि यह नए अधिसूचना आइकन में सफलतापूर्वक परिणाम देगा।
मुख्य समारोह में data_pack.py
, मैंने else
ब्लॉक के सभी कोड को टिप्पणी की और निम्नलिखित पंक्तियों को जोड़ा:
# Read in the modified icon resource files
file = open('6864', 'r')
icon1 = file.read()
file.close()
file = open('6865', 'r')
icon2 = file.read()
file.close()
file = open('6866', 'r')
icon3 = file.read()
file.close()
file = open('6867', 'r')
icon4 = file.read()
file.close()
# Write resource pak of only notification icons
iconData = {6864: icon1, 6865: icon2, 6866: icon3, 6867: icon4}
WriteDataPack(iconData, 'tmp.pak', BINARY)
# Create copy of original pak without notification icons
dataPack = ReadDataPack('chrome_100_percent.pak')
# List of icon resources to remove
toRemove = set([6864,6865,6866,6867])
whiteList = set(dataPack.resources.keys()).difference(toRemove)
whiteListFile = open('whitelist.txt', 'w')
for i in whiteList:
whiteListFile.write(str(i)+'\n')
whiteListFile.close()
newDataPack = RePack('tmp2.pak', ['chrome_100_percent.pak'], 'whitelist.txt')
# Merge the two paks together
combinedPack = RePack('chrome_100_percent_new.pak', ['tmp2.pak', 'tmp.pak'], None)
फिर, बस दौड़ो ./data_pack.py
। यह chrome_100_percent.pak
माना जाता है कि वर्तमान निर्देशिका में है, और आपको एक नई chrome_100_percent_new.pak
फ़ाइल देनी चाहिए, जिसे आप कॉपी करके देख सकते हैं /opt/google/chrome/chrome_100_percent.pak
।
मेरा मानना है कि अधिसूचना आइकन से संबंधित संसाधन पाक में कुछ अतिरिक्त आइकन पहचाने गए हैं; उन लोगों को शामिल करने के लिए उपरोक्त संपादन बहुत सरल होना चाहिए।
अंतिम संपादन
अब जब मैं घर वापस आ गया हूं और मुझे इस पर काम करने का मौका मिला, तो मैं क्रोम के नोटिफिकेशन आइकन को सफलतापूर्वक बदलने में कामयाब रहा। जैसा कि @Gutanimate ने कहा, आप 16x16 रिज़ॉल्यूशन के साथ फंस गए हैं, इसलिए मुझे यकीन नहीं है कि आप वास्तव में कितना सुधार कर सकते हैं, लेकिन मुझे लगता है कि यह व्यक्तिपरक है।
मैंने बस GIMP में पूर्वोक्त आइकॉन (6864 - 6867) खोले, जो उन्हें ग्रेस्केल PNGs के रूप में पाया। मैंने GIMP में एक ही फ़ाइल में एक नया आइकन चिपकाया है, इस प्रकार समान छवि गुण (जैसे ग्रेस्केल) रखने का प्रयास किया जा रहा है। मैंने फिर उन्हें PNG के रूप में निर्यात किया, GIMP के सभी विकल्पों को अनचेक करते हुए, लेकिन 9 के संपीड़न स्तर को बनाए रखा। परिणामस्वरूप फ़ाइलों में .png एक्सटेंशन थे, इसलिए मैंने उन को हटा दिया और मूल को बदल दिया। मैं फिर से फिर से भागा data_pack.py
, पहले से ही संशोधनों को ऊपर कर दिया।
मैंने मूल पाक की एक बैकअप प्रति अपने पास रखी mv /opt/google/chrome/chrome_100_percent.pak /opt/google/chrome/chrome_100_percent.bak
और अपनी संशोधित .pak फ़ाइल को उसके स्थान पर स्थानांतरित कर दिया। मैं यह सुनिश्चित करूंगा कि ऐसा करते समय क्रोम बंद हो, और यह जांचें कि क्रोम प्रक्रियाएं नहीं चल रही हैं, और मेरा मानना है कि क्रोम में पृष्ठभूमि प्रक्रियाओं को अनुमति देने के लिए एक नई सेटिंग है, जब ब्राउज़र डिफ़ॉल्ट रूप से बंद हो जाता है।
लो और निहारना, एकता में मेरे अधिसूचना आइकन मेरे परिवर्तनों को दर्शाते हैं।
अंत में अंतिम संपादन: ठीक है, मैंने झूठ बोला - मैंने 32x32 पीएनजी का प्रयास किया और ऐसा लगता है कि यह ठीक काम किया है। तो यह तूम गए वहाँ। यहाँ कुछ परिणाम स्क्रीनशॉट।
- मूल चिह्न: आप शायद मेरे पैनल में मेरे ड्रॉपबॉक्स और मौसम के आइकन के बीच डिफ़ॉल्ट 'कोई अपठित सूचनाएँ' आइकन नहीं पहचान पाएंगे:
- नया चिह्न: मेरा 32x32px एक ही स्थान पर संशोधित संस्करण:
(स्रोत: एडम व्हिटक्रॉफ्ट से बैच आइकन )
/usr/share/icons
, यदि वह मदद करता है