لینوکس و من

مدیریت برنامه های startup در گنوم شل

برای مدیریت برنامه هایی که هنگام لود شدن دسکتاپ قراره که اجرا بشن، در گنوم ۳، دستور زیر رو در ترمینال یا یک پنجره ی run اجرا کنید:
gnome-session-properties
این برنامه در گنوم-شل پنهانه، با این دستور اجرا میشه.
البته میتونید با alacarte این برنامه رو به منوها برگردونید.

نکته ی خاصی نبود، صرفا این رو نوشتم که در آینده بهش رجوع کنم!

چینش دلخواه دکمه های titlebar در gnome3

چند وقت پیش مطلبی رو تحت عنوان چینش دلخواه دکمه های titlebar در metacity نوشته بودم. برای اینکه این کار رو در گنوم۳ هم انجام بدیم روش مشابهی وجود داره. با این تفاوت که مسیری رو که در تنظیمات باید طی کنید این هست:

org>gnome>shell>overrides

تغییر زبان در گنوم شل ۳.۸ بوسیله Alt + Shift

ما عادت کردیم که با کلید های Alt+Shift زبان کیبرد رو تغییر بدیم. کلید پیشفرض در گنوم شل ۳.۸ Win+Space هست! و در تنظیمات کیبرد نمیشه تغییرش داد به Alt+shift!  و حتی tweak tools هم در این رابطه کمک کننده نبود. برای اینکه به خواسته ی خودمون برسیم، dconf editor رو باز کنید و این مسیر رو دنبال کنید:

org->gnome->desktop->input-sources
و مقدار xkb options رو به این عبارت تغییر بدید:
['grp:alt_shift_toggle']

یا راحت تر،‌ این رو در ترمینال اجرا کنید:

dconf write /org/gnome/desktop/input-sources/xkb-options "['grp:alt_shift_toggle']"

Antergos یک Arch !

همون طور که میدونید توزیع Arch یک توزیع مادر محسوب میشه. قبلا قبلاها رفته بودم سراغش. اما هیچی سر در نیاورده بودم بعد با Chackra مواجه شدم. یک توزیع مبتنی بر Arch. اما یکم که باهاش کار کردم دیدم واقعا چیزی نیست که بشه بطور پیش فرض  ازش استفاده کرد. اشکال خیلی زیاد داشت و کار باهاش حوصله ی زیادی میخواست. گذشت و گذشت و من با پارسیکس 3.6 خودم سر کردم... تا اینکه دیگه نتونستم عقب موندن از آپدیت ها و پیشرفت ها رو تحمل کنم! و تصمیم گرفتم که یه تکونی به خودم بدم!
من طرفدار سادگی هستم. بنابراین هیچ وقت نتونستم توزیع سنگین و پیچیده ای رو باهاش کار کنم. و با KDE هم که کار کردم اولش خوب بود ولی بعد دلم برای سادگی گنوم تنگ میشد. توزیع های مختلفی رو دانلود و امتحان کردم. حتی اوبونتوی جدید یعنی ۱۳.۰۴ و ۱۲.۰۴ ! اما باز مثل همیشه پر از اشکال بود و با آپدیت هم برطرف نمیشد ElementaryOs Luna هم که مبتنی بر اوبونتو هست رو امتحان کردم. خوب و ساده و سریع بود. اما همه ی اینها یک اشکال اساسی داشتن. البته از نظر من! خب من فرصت سر و کله زدن با لینوکس رو مثل قبل ندارم دیگه. اگه بخوام همیشه به روز باشم و جدیدترین چیزهای دنیای لینوکس رو داشته باشم باید سراغ یک توزیع غلطان یعنی rolling release برم. تا مجبور نباشم هر چند ماه یک بار بشینم لینوکس تازه رو دانلود کنم و کلی وقت بذارم برای راست و ریس کردنش.
از بین توزیع های غلطان، یک انتخاب میتونه توزیع دبیان نسخه ی آزمایشی باشه. اما این توزیع به روز ترین ها رو نداره. و باید رفت سراغ نسخه ی غیرپایدارش unstable. که کار عاقلانه ای به نظر نمیرسه.  از بین توزیع های دیگه، توزیع Arch هم توزیع غلطان هست. و به نظر انتخاب خوبی میومد. اما باید دنبال توزیعی مبتنی بر Arch میگشتم که از لحاظ کارهای گرافیکی در حد قابل قبولی کار کرده باشه. و مثل چاکرا خنگ و پر دردسر نباشه! گشتم و گشتم و Antergos رو پیدا کردم.
در تجربه ی اولم در کار با Antergos چند نکته رو خواستم بگم:

۱- توزیع فوق‌العاده سریعی هست.
۲- دسکتاپ پیشفرضش گنوم شل ۳.۸ هست که آخرین نسخه ی گنوم هست.
۳- بر پایه ی Arch هست و بنابراین یک توزیع غلطان محسوب میشه. پس نیاز نیست هر چند ماه یک بار کلی وقت تلف کرد!
۴- به نظر هوشمندتر از دبیان ها میرسه. هر چیزی که خواستم توی اینترنت پیدا کردم و مثل آدم نیازم رو برطرف کرده! برخلاف دبیان‌ها که کلی انرژی باید بذاری تا یه چیزی رو بتونی درست راه بندازی. (این نظر منه!)
۵- فعلا که به هیچ باگ و خطای محسوسی برخورد نکردم.
۶- مستندات فوق العاده خوبی داره (همون مستندات Arch). که به نظر من خیلی جامع و کاربردی هستن.
۷- اما اشکال مهمی که داره اینه که برای نصب حتما باید به اینترنت وصل باشید و حتما باید آخرین بسته ها رو دانلود کنه! چیزی حدود ۶۰۰ مگابایت!!! و با وضعیت مزخرف اینترنت مملکت مجبورید چند بار پروسه ی نصب رو از اول شروع کنید. و باید حواستون باشه که بسته هایی که دانلود شدن رو بکاپ بگیرید تا دوباره از اول دانلود نشن. (اگر وقت کردم در مطالب بعدی میگم چطوری)
۸- روشهایی برای نصب آفلاین هست، اما من نتونستم موفق بشم!

الآن روی کامپیوتر دسکتاپم نصبش کردم. روی هم رفته فعلا که ازش راضی هستم. سریع و بدون اشکال. دارم تستش میکنم، اگر خوب بود روی لپتاپ هم نصبش میکنم.

ویرایش: در این لینک میتونید روش نصب آفلاین رو ببینید. البته روش نصب که نه، در واقع یک نوع بکاپ گرفتن از توزیع لایو روی هارد شماست. من توی تنظیمات بوت گیر کردم.
VLC معمولا زود به زود تغییر میکنه و هر دفعه تعدادی باگ رو بر طرف میکنه. اما این تغییرات تا بخواد وارد مخازن بشه ما پیر شدیم! برای همین یه مخزن مخصوص این کار در PPA وجود داره که میتونید اون رو به سیستمتون اضافه کنید. توجه کنید که این برای اوبونتو و شاخه های اونه. مثلا Elementary Os, Deepin, AriOS و ... ...
در ترمینال این ها رو اجرا کنید:

sudo add-apt-repository ppa:videolan/stable-daily sudo apt-get update sudo apt-get install vlc

تق صفحه بعد!

یه افزونه جالب برای فایرفاکس پیدا کردم. مخصوص کسایی که حوصله ندارن دو ساعت ماوس رو ببرن روی عدد صفحه های بعدی از یک سایت. وقتی به آخر صفحه اسکرول میکنین، با زدن space، اون صفحه میره صفحه ی بعدی. روی خیلی از سایت ها امتحان کردم جواب داده. اسم افزونه هست: space next

اتصال خودکار کانکشن vpn در لینوکس

چندی پیش مشکلی برای دوستم توی خوابگاه پیش اومده بود که کانکشن vpn قطع میشد و دانلودهاش نصفه شب ها نصفه میموندن!چاره ی کار بجستم و این راه یا بیافتم.
خب. اول شما کانکشن vpn مورد نظرتون رو بسازید. یا قبلا ساختید! و بعد دستور زیر رو اجرا کنید:
nmcli con
این دستور کانکشن های شما رو لیست میکنه و برای هر کدوم یک عبارت معینی به نام uuid نشون میده. شما کانکشن مورد نظرتون رو پیدا کنید و uuid مخصوص به اون رو در اسکریپت زیر جایگزین کنید. همچنین اسم کانکشن رو هم جایگزین کنید.


#!/bin/bash
while [ "true" ]
do
    VPNCON=$(nmcli con status)
    if [[ $VPNCON != *khabgah* ]]; then
        echo "Disconnected, trying to reconnect..." & zenity --info --title="VPN reconnected" --text="VPN connection khabgah has been disconnected. Please wait to auto reconnect..."
        (sleep 1s && nmcli con up uuid fe7cb00d-86b1-4457-a4df-32657c78dc4b)
    else
        echo "Already connected !"
    fi
    sleep 30
done

حالا اسکریپت بالا رو در یک فایل متنی دخیره کنید  مجوز اجرا شدن رو بهش بدید. (کلیک راست، properties , permissions و بعد allow executing file as a programs . این اسکریپت رو میتونید بدید به scheduled task تا براتون موقع بوت شدن اجرا کنه. یا یه کار دیگه هم که میشه کرد اینه که آدرس این اسکریپت رو در فایلی به نام profile. یا bashrc. که به صورت مخفی در فولدر home کاربر وجود داره قرار بدید. مثلا این خط رو:

/home/amin/Autovpnscript

نکته: اگه دوست ندارید پیامی رو که اسکریپت موقع قطع بودن کانکشن نشون میده، نشون نده، عبارت سبز رنگ بالا رو حذف کنید تا همه چیز بی سر و صدا اتفاق بیفته!

mount کردن فایل های iso با یک کلیک راست

کافیه این بسته رو نصب کنید تا از این به بعد بتونین در nautilus روی یک فایل iso راست کلیک کنین، و بعد بزنین mount تا اون فایل به راحتی mount بشه.


نکته: من روی nautilus 2.32.2 امتحان کردم. نمیدونم روی گنوم ۳ جواب میده یا نه.

پخش آهنگ های موجود در یک فولدر در nautilus

دوست داشتم روی یک فولدر کلیک راست کنم و بزنم مثلا play all !
اینجا یه سری اسکریپت برای nautilus وجود داره که با نصب کردن اون ها به راحتی میشه این امکان رو اضافه کرد. منتها فقط برای banshee و mplayer و amarok.



فعلا فرصت ندارم. باید سر فرصت کد ها رو ببینم، ببینم چطور میشه مثلا totem رو قرار بدیم.
نکته: من روی nautilus 2.32.2 امتحان کردم. نمیدونم روی گنوم ۳ جواب میده یا نه.

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

بعضی وقت ها لازمه که اسکرین سیور نباشه! مثلا گذاشتید دانلود، و میخواید پروسه ی دانلود رو ببینید که اگه یوقت قطع شد یا مشکلی پیش اومد متوجه بشید. در حالی که خودتون یه جا دیگه نشستید دارید مثلا درس میخونید!!خب مسخره است که برای این کار هر دفعه بریم توی منوها و تنظیمات و غیره. در عوض با یکی دو خط دستور میتونیم این کار رو در ترمینال انجام بدیم. برای این کار، خطوط زیر رو در فایلی به نام مثلا 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