۱۳۹۰ خرداد ۱۸, چهارشنبه

گنوم ۳!

از جمله اتفاقات پر سر و صدایی که اخیرا توی لینوکس افتاده منتشر شدن نسخه‌ی سوم محیط رومیزی گنومه. این نسخه چند وقت پیش منتشر شد، و فدورا ۱۵ هم که حدودا ۲ هفته‌ی پیش منتشر شد اولین توزیعی بود که به صورت رسمی با گنوم ۳ منتشر شد.
گنوم‌شل (Gnome Shell) که پوسته‌ی پیش‌فرض گنوم ۳ه یک محیط کاملا متفاوت رو نسبت به نسخه‌ی قبلی این میزکار و همچنین میزکارهای مشابه ارائه میده که البته شباهت‌هایی به پوسته‌ی یونیتی که از اوبونتوی ۱۱/۰۴ به صورت پیش‌فرض استفاده میشه داره.
مثلا، توی گنوم شل دیگه منوی سنتی وجود نداره و اگه منو رو بخواین یه صفحه به عنوان منو کل صفحه رو می‌پوشونه و می‌تونید برنامه‌های مورد نظرتون رو توش پیدا کنید. اما این منو خیلی هم دم دست نیست و شما باید روی دکمه‌ی Activities یا «فعالیت‌ها» و بعد روی قسمت «برنامه‌ها» کلیک کنید تا به این منو برسید.
منوی برنامه‌ها


از نظر بعضی، این مسئله خوب نیست و کار کاربر رو سخت‌تر می‌کنه؛ ولی من هیچ مشکلی باهاش ندارم چون به ندرت ازش استفاده می‌کنم. فکر کنم هر کسی، یا حداقل خیلیا، اگه یه مدت از قابلیت جستجو استفاده کنند دیگه دنبال کردن اون شکلی برنامه‌ها رو ول می‌کنن چون واقعا سریع‌تر و راحت‌تره، مگه این که بخواین واقعا توی لیست برنامه‌ها بچرخید. برای جستجو دیگه لازم نیست برین به قسمت برنامه‌ها، همین که روی قسمت «فعالیت‌ها» کلیک کنید و وارد حالت Overview بشیم می‌تونید شروع به تایپ بکنید (برای ورود به این حالت به جای کلیک روی قسمت فعالیت‌ها میشه ماوس رو به قسمت بالا سمت راست(یا چپ توی حالت انگلیسی) صفحه بزنید، یا از کلید ویندوز و یا Alt+F1 استفاده کنید).
جستجو به دنبال برنامه‌ی مورد نظر
وقتی وارد حالت Overview میشین، قبل از این که شروع به تایپ بکنید یا وارد قسمت «برنامه‌ها» بشین، توی این حالت لیستی از پنجره‌های باز و همچنین فضاهای کاری یا Workspaceهای موجود رو می‌بینید و می‌تونید پنجره‌های توی اون‌ها رو هم ببینین. تعداد فضاهای کاری هم به صورت خودکار مدیریت میشه و همیشه یه فضای کاری خالی وجود داره.
حالت Overview
 طراحی گنوم‌شل از قسمت‌هاییه که خیلی سرش بحث هست. یک سری کارهای «غیرعادی» توی این طراحی انجام شده، مثلا این که شما نمی‌تونید هیچ پوشه یا شمایلی(icon) روی میزکار (Desktop)تون داشته باشید، یا این که دیگه نمی‌تونید مثل نسخه‌ی قبلی گنوم نوار بالای صفحه رو راحت جابه‌جا کنید یا چیزهایی رو روش قرار بدین، یا این که اصلا system tray اون بالا نیست، بلکه به صورت عادی اصلا پیدا نیست و اگه ماوس رو به گوشه‌ی پایین سمت چپ (یا راست توی محیط انگلیسی) ببریم دیده میشه. اون بالا فقط مخصوص یک سری آیکن‌های پیش‌فرض گنومه که به صورت دستی هم نمیشه کم و زیاد یا جابه‌جاشون کرد!
مدیریت فضاهای کاری توی حالت Overview
و برای این که تیر خلاص رو هم زده باشه، پشتیبانی از برنامک‌ها یا Appletهای گنوم ۲ هم به کلی حذف شده و دیگه چیزی به اسم برنامک وجود نداره! البته کار به این‌جاها هم ختم نمیشه: یک سری از تنظیمات هم دیگه وجود نداره، مثل تنظیم قلم‌های مورد استفاده، یا تنظیم این که وقتی در لپ‌تاپ رو می‌بندیم چه اتفاقی بیفته (به صورت پیش‌فرض به حالت تعلیق (suspend) میره) و یه سری تنظیمات دیگه؛ و دکمه‌های حداکثر و حداقل‌سازی هم از بالای پنجره‌ها حذف شده و فقط دکمه‌ی بستن مونده! تیم طراح گنوم۳ به این نتیجه رسیدند که با استفاده‌ی مناسب از فضاهای کاری، نیازی به استفاده از حداقل‌سازی نیست. حداکثر کردن هم با کشیدن نوار عنوان برنامه به بالای صفحه یا دوبار کلیک روی نوار عنوان برنامه قابل انجامه.
خب! این چیزا اولش یکمی آدمو شوکه می‌کنه. من خودمم با بعضیش مشکل داشتم، مثلا نبود برنامک‌ها و خواب رفتن لپ‌تاپ وقتی درش رو می‌بندیم! خوشبختانه، اگه بخواین تنظیماتی مثل قلم‌های مورد استفاده یا همین قضیه‌ی در لپ‌تاپ رو انجام بدین، یه ابزار gnome-tweak-tool هست که اگه نصب کنید میشه این کارها رو باهاش کرد. نظر طراحان گنوم‌شل این بوده که یه کاربر معمولی بهتره این چیزا دم دستش نباشه!
اما بحث برنامک‌ها یکمی جالب‌تر از اونه. گنوم‌شل برنامک‌ها رو پشتیبانی نمی‌کنه، اما در عوض میشه براش یک سری افزودنی نوشت که بهش میگن Gnome Shell Extension یا افزودنی‌های گنوم‌شل. این افزودنی‌ها نه تنها می‌تونن قابلیت‌هایی مثل برنامک‌ها رو ارائه بدن، بلکه می‌تونن تغییرات اساسی‌تری رو توی پوسته انجام بدند که با برنامک‌های گنوم۲ به این راحتی امکان‌پذیر نبود. مثلا افزودنی‌ای هست که گزینه‌های راه‌اندازی مجدد (restart) و خاموش‌کردن (power off) رو به منوی وضعیت اضافه می‌کنه (راستی یادم رفته بود بگم که به صورت پیش‌فرض توی گنوم‌شل این گزینه‌ها نیستند و فقط گزینه‌ی تعلیق یا suspend دم دسته، مگه این که سخت‌افزار پشتیبانی نکنه. البته اگه دکمه‌ی Alt رو بگیریم suspend تبدیل میشه به power off) یا رفتار یک سری از قسمت‌های شل رو تغییر میده. البته، این‌جا برای هر تغییری شما نیاز به افزودنی دارین، مثلا یه افزودنی داریم که منوی مربوط به دسترسی‌پذیری(Accessibility) رو حذف کنه، یا جای تقویم رو عوض کنه!! البته نکته‌ای که هست اینه که گنوم‌شل برای طراحی ظاهرش تا حد زیادی از جاوااسکریپت و CSS استفاده می‌کنه و افزودنی‌ها هم عمدتا با همین تکنولوژی نوشته میشن و به خوبی هم مجتمع میشن باهاش.
محیط رومیزی گنوم۳ در حال نمایش افزودنی وضعیت آب و هوا
این افزودنی‌ها واقعا چیزهای جالبی هستند! من تقریبا تمام چیزهایی که توی گنوم۲ داشتم رو الان توی گنوم۳ هم دارم مثل دمای پردازنده و وضعیت استفاده از پردازنده و حافظه‌ی اصلی (RAM). همون‌طور که گفتم شمایل برنامه‌ها هم به صورت پیش‌فرض به اون بالا اضافه نمیشه، برای همین با کمک این سایت یه افزودنی تک‌خطی نوشتم که شمایلی starcal که یه تقویم شمسیه رو به اون بالا اضافه کنه (هر وقت که اجرا میشه).
افزودنی بازدید وضعیت سیستم

افزودنی‌های گنوم‌شل به سرعت دارن پیشرفت می‌کنن و زیاد میشن، و با توجه به انعطاف خیلی بیشتری که دارن کارهایی میکنن که قبلا نمی‌کردند. امشب که داشتم نگاه می‌کردم از دیدن تعداد افزودنی‌ها نسبت به چند روز پیش کلی تعجب کردم!
یکی از افزودنی‌ها یه حالت presentation mode رو به اون منوی باتری که اون بالاست اضافه می‌کنه که تو این حالت هم محافظ صفحه (screen saver) غیرفعال میشه و هم معلق شدن خودکار لپ‌تاپ بعد از بستن درش. این مطلب هم برای شروع نوشتن افزودنی‌ها بدک نیست!
خلاصه... جای شما خالی! به طور کلی خیلی ازش خوشم اومده. از یک طرف محیط قشنگی داره (از عکس تغییر یافته‌ای هم که فدورا گذاشته پشتش خیلی خوشم میاد) و از طرف دیگه یه سری امکانات داره که کار کردن رو دلچسب‌تر می‌کنه. مثلا دیگه وقتی داری توی یه برنامه کار می‌کنی یه پنجره نمی‌پره جلوی صورتت و میره اون پشت، فقط یه پیام از پایین صفحه میاد و میگه که فلان برنامه آمادست. یا این که Alt+Tab بین پنجره‌ها جابه‌جا نمیشه، بلکه بین برنامه‌ها جابه‌جا میشه. مثلا اگه ۳ تا پنجره فایرفاکس باز باشه و یه پنجره یه برنامه دیگه، با Alt+Tab بین این ۲ برنامه جابه‌جا میشه. و اگه بخواین بین پنجره‌های یه برنامه جابه‌جا بشین می‌تونید از ~+Alt استفاده کنید (البته اگه از این روش خوشتون نیاد کافیه افزودنی مربوطه رو نصب کنید!).

راستی! یکی از چیزایی که من استفاده می‌کردم و قرار بود معرفیش کنم، امکان «استراحت تایپ» توی گنوم ۲ بود که مثلا تنظیمش می‌کردم که هر ۵۵ دقیقه کار با سیستم من رو مجبور کنه که ۵ دقیقه استراحت کنم. توی گنوم ۲، این رو مشید توی تنظیمات صفحه‌کلید تنظیم کرد اما توی گنوم۳ دیگه اونجا نیست. خوش‌بختانه، الان این برنامه تبدیل شده به یه برنامه‌ی مستقل به اسم drwright که توی مخازن فدورا هم هست....
System Tray
آماده برای استراحت!
بله... این بود یه بررسی کوچولو روی گنوم۳ و گنوم‌شل و خصوصیاتش و افزودنی‌هاش :)