لینوکس و من

۱ مطلب در بهمن ۱۳۹۱ ثبت شده است

فعال/غیر فعال کردن اسکرین سیور گنوم با کیبورد

بعضی وقت ها لازمه که اسکرین سیور نباشه! مثلا گذاشتید دانلود، و میخواید پروسه ی دانلود رو ببینید که اگه یوقت قطع شد یا مشکلی پیش اومد متوجه بشید. در حالی که خودتون یه جا دیگه نشستید دارید مثلا درس میخونید!!خب مسخره است که برای این کار هر دفعه بریم توی منوها و تنظیمات و غیره. در عوض با یکی دو خط دستور میتونیم این کار رو در ترمینال انجام بدیم. برای این کار، خطوط زیر رو در فایلی به نام مثلا togglescreensaver ذخیره کنید:

#!/bin/sh

gconftool-2 --toggle /apps/gnome-screensaver/idle_activation_enabled
notify-send "Screen Saver status is" `gconftool-2 -g /apps/gnome-screensaver/idle_activation_enabled`

exit 0

و به این فایل مجوز اجرایی بدید: (یا با دستور، یا روش رایت کلیک کنید و در properties مجوز اجرا شدن رو تیک بزنید)
chmod a+x togglescreensacer
این فایل رو کپی کنید در این پوشه:
sudo cp togglescreensaver /usr/bin

حالا با دستور togglescreensaver به راحتی اسکرین سیور شما فعال یا غیر فعال میشه. یه notification خوشگل هم گوشه تصمیر براتون میاد:



میتونید برای دستور جدیدی که ساختید یه shortcut هم برای کیبردتون تعریف کنید. تا با یه کلید ترکیبی این عمل به راحتی قابل انجام باشه.
توجه: این روی گنوم نسخه ۲ تست شده. اگر کسی روی نسخه ۳ تست کنه و نتیجه رو در کامنت ها بگه ممنون میشم.

ویرایش: متوجه شدم که اسکرین سیور درست کار میکنه، اما چون من در gnome power manager تنظیم کردم مانیتور بعد از ۱۰ دقیقه که از سیستم استفاده نکنیم، خاموش میشه. بنابراین باید یه فکری به این قضیه هم بکنیم.
با یکم ور رفتن! راه حل رو پیدا میکنم و اسکریپت بالا به شکل زیر در میاد:

کد اصلاح شده (ویرایش دوم!):
#!/bin/sh

STAT=`gconftool-2 -g /apps/gnome-screensaver/idle_activation_enabled`
      if [ "$STAT" = "false" ];
         then gconftool-2 --toggle /apps/gnome-screensaver/idle_activation_enabled & gconftool-2 -t int -s /apps/gnome-power-manager/timeout/sleep_display_ac "600";
         else gconftool-2 --toggle /apps/gnome-screensaver/idle_activation_enabled & gconftool-2 -t int -s /apps/gnome-power-manager/timeout/sleep_display_ac "6000";
      fi
notify-send "Screen Saver status is" `gconftool-2 -g /apps/gnome-screensaver/idle_activation_enabled`
exit 0