سلام من سید محمد جواد تقی پور هستم.
این اولین دفعه است که میخوام اینجا چیزی بنویسم، امیدوارم خوشتون بیاد و استفاده کنید.
قبل از اینکه شروع کنیم اول یسری چیزهارو بررسی کنیم:
توسعه دهنده یه مستند عالی از ساختار و نحوه تنظیم کردن Qtile در این لینک قرار داده که میتونید ازش استفاده کنید.
چه پیش نیاز هایی برای استفاده وجود داره
پایتون رو یکمی بلد باشید و با کلید های عملکرد H,J,K,L توی ویم آشنا باشید کفایت میکنه، برای بعضی عملکردهای معمول یکمی کار با ترمینال هم بلد باشید لازمه

مدیر پنجره چیه
ویکی پدیا:
مدیر پنجره (به انگلیسی: Window manager) نرمافزار سیستمی میباشد که وظیفه کنترل ظاهر و مکان پنجرههای سامانه پنجره ای را در واسط گرافیکی کاربر بر عهده دارد.اغلب مدیر پنجرهها به منظور کمک برای ساخت محیط میزکار طراحی شدهاند. مدیر پنجره در ادامه رابطهای گرافیکی سطح پایینتر خود فعالیت میکند و ملزومات پشتیبانی از سخت افزارهای گرافیکی مانند وسایل اشارهای مثلاً موشواره و صفحه کلید را فراهم میاورد و برای ساخت و نوشتن این ملزومات از ابزار ویجت بهره میبرد.
خیلی ساده:
مدیر پنجره برنامهای هست که محل قرارگیری پنجره ها و اندازشون رو مشخص میکنه. یعنی وقتی شما یه برنامه جدید باز میکنید،مدیر پنجرهاست که مشخص میکنه پنجره جدید کدوم قسمت نمایشگر و با چه اندازهای ایجاد(باز) بشه.
برای مثال، اگر شما گنوم رو نصب کنید این برنامه ها همراهش نصب میشه:
و اگر KDE نصب کنید این برنامه ها همراهش نصب میشن:
مدیر پنجره های زیادی وجود دارن که شما میتونید از هرکدوم که دوست دارین استفاده کنید. پیشنهاد میکنم مدیر پنجرهای رو نصب کنید که زبانی که باهاش نوشته شده براتون ساده باشه. منم چون پایتون بلدم از Qtile استفاده میکنم.
تفاوت اصلی مدیر پنجره ها در زبان برنامه نویسی که استفاده میکنن و ابزار های آمادهای که دارن هست.
نکته مهم: من روی ماشین مجازی و دو توزیع مختلف برپایه اوبونتو سعی کردم Qtile رو نصب کنم. باید یسری وابستگی هارو نصب میکردم تا در نهایت بشه Qtile رو نصب کرد. نمیدونم چیشد و متاسفانه محیط گرافیکی توزیع ازکار افتاد.
تنها توزیع های مبتنی بر آرچ هستن که Qtile رو داخل مخازن دارن و بدون مشکل نصب و راه اندازی میشه.
نصب Qtile در توزیع های مختلف
در توزیع های مبتنی بر آرچ
sudo pacman -S qtile
در توزیع های برپایه فدورا و اوبونتو باید از سورس کامپایل کنید:
git clone https://github.com/qtile/qtile.git cd qtile pip install .
در سایر توزیع ها هم میتونید از سورس کامپایل کنید یا با pip نصب کنید :
pip install qtile
حالا باید فایل تنظیمات پیش فرض رو در مسیر خودش کپی کنید:
mkdir -p ~/.config/qtile sudo cp /usr/share/doc/qtile/default_config.py ~/.config/qtile/config.py sudo chown $USER:$USER ~/.config/qtile/config.py
اگر فایل وجود نداشت میتونید محتویات این فایل رو در فایل config.py بریزید
وارد شدن به Qtile و شروع شخصی سازی
یکبار از سیستم خارج بشید(log out) و دوباره وارد بشید اما اینبار برای ورود، Qtile رو انتخاب کنید.
دقت کنید که ممکنه Qtile روی Wayland کمی ناپایدار باشه و بعضی از ابزارهاش کار نکنه.
اولین باری که وارد Qtile بشید با این صحنه روبرو میشید:

همونطور که میبینید فقط یک صفحه سیاه هست با یه نوار خیلی ساده پایین صفحه.
و این هم چیزی هست که من برای خودم تنظیم کردم:

برای خارج شدن از Qtile، روی گزینه [shutdown] که گوشه پایین سمت راست صفحه هست کلیک کنید. اینجوری بعد از اینکه شمارشگر تموم شد از محیط Qtile خارج میشید.
ممکنه بعد از اولین ورود به Qtile تصویر صفحه ورود تغییری نکنه و فقط نوار پایین اضافه بشه، در این صورت هر برنامهای که باز کنید، بعد از بستن برنامه آخرین صحنه ازون برنامه به عنوان تصویر زمینه قرار میگیره. این مشکل تا زمانی توی تنظیمات تصویر زمینه رو تنظیم نکرده باشید رفع نخواهد شد.
کلید های میانبر پیش فرض
یسری میانبرها ازپیش تعیین شده و در این قسمت قراره مهم هارو یاد بگیریم
در اینجا منظور از کلید super، کلید meta یا همون کلید ویندوز هست
باز کردن ترمینال: super + enter
بارگذاری مجدد تنظیمات(برای وقتی که تنظیمات رو تغییر میدید): super + ctrl + R
بستن پنجرهی برنامهها: super + W
فعال کردن لانچر برنامهها: super + R
بریم که شخصی سازی رو شروع کنیم
اول ترمینال رو باز کنید، به مسیر زیر برید و فایل config.py رو با ادیتور دلخواهتون باز کنید
~.config/qtile/
خود Qtile سعی میکنه از طریقی ترمینال شمارو تشخیص بده و هربار که میخواید بازش کنید، چیزی که حدس زده رو باز میکنه. پیشنهاد من اینه که ترمینال مدنظرتون رو بهش بشناسونید. در فایل تنظیمات خط زیر رو پیدا کنید و پاک یا کامنتش کنید:
from libqtile.tuils import guess_terminal
چند خط پایین تر جایی که نوشته شده ()terminal = guress_terminal رو تغییر بدید
terminal = 'konsole'
بجای konsole، اسم ترمینال مدنظرتون رو قرار بدید.
شاید بخواید به برنامه مدیریت فایل و مرورگر هم یه میانبر اختصاص بدید، پس این خط هارو به تنظیمات اضافه کنید
file_manager = 'dolphin'
browser = 'firefox'
بجای dolphin و firefox، برنامه های مدنظرتون رو قرار بدید(قطعا میدونید که این برنامهها باید روی سیستم نصب باشن)
در نهایت باید همچین چیزی داشته باشید:
mod = "mod4" #به این خط کاری نداشته باشید.قطعا به مشکل خواهید خورد terminal = 'konsole' browser = 'firefox' file_manager = 'dolphin'
تنظیم میانبرهای مهم
همونطور که قبلا گفتم نیاز دارید که یسری عملکردهارو خودتون تنظیم کنید، مثل کم و زیاد کردن نور صفحه و میزان صدا.
اول باید تشخیص بدیم هر کلید چه کدی داره. برنامه xbindkeys رو نصب کنید و یه ترمینال باز کنید و دستور زیر رو بزنید
xbindkeys -mk
یه پنجره سفید باز میشه که با هربار فشار دادن یک کلید، کد مربوط به اون کلید رو نشون میده، کلیدهای افزایش و کاهش صدا و کلیدهای افزایش و کاهش نور صفحه رو فشار بدید
برای من با فشار دادن کلید افزایش نور صفحه این خروجی نمایش داده میشه:
m:0x0 + c:223
XF86MonBrightnessUp
قسمت مهم برای ما XF86MonBrightnessUp هستش، برای همهی کلیدهایی که نیاز دارید این کارو انجام بدید و کد هر کلید رو یادداشت کنید. با فشار دادن کلید q برنامه متوقف میشه.
این کد کلیدهایی هست که من بدست آوردم و ممکنه برای شما متفاوت باشه
XF86AudioMute قطع و وصل کردن صدا
XF86AudioRaiseVolume افزایش صدا
XF86AudioLowerVolume کاهش صدا
XF86MonBrightnessUp افزایش روشنایی صفحه
XF86MonBrightnessDown کاهش روشنایی صفحه
حالا باید بریم و این میانبر هارو تنظیم کنیم. بدلیل اینکه این کار یکمی وقت گیره در قسمت بعد این کارو انجام خواهیم داد.
امیدوارم تا اینجای کار از این مطلب راضی بوده باشید.