कुछ हद तक एक शर्मनाक प्लग है, लेकिन चूँकि वहाँ कोई मौजूदा समाधान नहीं लगता था, और चूंकि यह कार्य अपेक्षाकृत सीधा-सा प्रतीत होता था, इसलिए मैंने समस्या को ठीक करने के लिए एक साधारण पायथन डेमॉन लिखा । यह सिस्टम-वाइड कुंजी प्रेस पर कब्जा करने और फिर कस्टम शेल कमांड चलाने के लिए अजगर-एक्सलिब एपीआई का उपयोग करता है। यह एक बुनियादी डेबियन / उबंटू सेटअप मानता है, लेकिन संभवतः कुछ लिनक्स के साथ सबसे लिनक्स सिस्टम पर काम करेगा।
मेरे केस के लिए, वॉल्यूम अप / डाउन कीज़ कोड 122/123 के मैप्स को मैप करती है, इसलिए डेस्कटॉप के लॉक होने पर वॉल्यूम कम या बढ़ाने के लिए संबंधित कमांड निम्न हैं:
gnome-screensaver-command -q | grep "is active" && bash -c '/usr/bin/pactl -- set-sink-volume `pacmd list-sinks | grep -P -o "(?<=\* index: )[0-9]+"` -10%'
gnome-screensaver-command -q | grep "is active" && bash -c '/usr/bin/pactl -- set-sink-volume `pacmd list-sinks | grep -P -o "(?<=\* index: )[0-9]+"` +10%'
जाहिर है, यह एक बिट क्रिया है। दूसरा grep सिस्टम पर सक्रिय साउंड इंटरफेस खोजने के लिए है जो कई हो सकते हैं (जैसे कि मेरे लैपटॉप में मास्टर और हेडफ़ोन इंटरफ़ेस है, इन कमांड को या तो नियंत्रित करने की अनुमति देता है)।
संपादित करें: यह अब Ubuntu 16 के रूप में काम नहीं करता है। सभी एक्स फ़ंक्शन अक्षम हो गए हैं, यहां तक कि टर्मिनल से भी, स्क्रीन लॉक होने पर।