اضافه کردن global menu به XFCE

من از طرفداران Global Menu هستم چون از فضا استفاده بهینه میکنه 🙂 Global Menu همون نشون دادن منوها روی پنل بالایی هست . این حالت رو توی میزکار یونیتی و ورژن جدید میزکار KDE و Mac OSX وجود داره . و با این مقاله میتونید این منو رو در XFCE هم داشته باشید . البته ظاهرا توی Mate هم جواب میده (تست نکردم و نمیدونم) . توسعه دهنده از امکانات میزکار Unity استفاده کرده و برای میزکار های دیگه توسعش داده .

 

همونطور که در عکس های پایین میبینید ، هم برای برنامه های QT خوب کار میکنه و هم برای برنامه های GTK+

 

 

 

 

مرحله اول : نصب بسته های مورد نیاز

نصب و راه اندازیش کمی حوصله میخواد! لطفا با دقت نکاتی که گفتم رو بخونید و فقط کپی پیست نکنید تا به مشکل بر نخورید!

 

برای آرچ لینوکس :

اول این بسته رو نصب کنید

 sudo pacman -S bzr

 

حالا این بسته رو AUR رو نصب کنید (توی سایت AUR برای این بسته برچسب orphaned خورده ، ولی نگران نباشید کار میکنه! توسعه دهندش فراموش کرده بوده bzr رو به عنوان پیش نیازهای بسته بذاره و برای همین خطا میده . البته بهشون پیغام دادم ولی تصحیح نکردند هنوز .)

yaourt -S unity-gtk-module-standalone-bzr

 

این بسته رو نصب کنید تا گلوبال منو برای برنامه هایی هم که با QT نوشته شدند نشون داده بشه

yaourt -S appmenu-qt

 

این بسته ها  رو نصب کنید تا گلوبال منو برای کروم و کرومیوم هم نشون داده بشه

yaourt -S libdbusmenu-glib

 

yaourt -S libdbusmenu-gtk3

 

yaourt -S  libdbusmenu-gtk2

 

و در آخر اپلت مربوط به پنل XFCE رو نصب کنید

 

yaourt -S  vala-panel-appmenu-xfce-git

 

برای زیرمجموعه های اوبونتو (مثل زوبونتو و … ) :

توضیحات این قسمت رو از این سایت برداشتم و چون خودم XUBUNTU ندارم تست نکردم ولی طبق گفته نویسندش جواب میده . البته توضیحاتی که برای آرچ نوشتند کامل نیست .

این کدها رو در ترمینال بزنید

sudo add-apt-repository ppa:webupd8team/mate
sudo apt update
sudo apt install xfce4-vala-appmenu-plugin unity-gtk3-module unity-gtk2-module appmenu-qt appmenu-qt5

 

مرحله دوم : راه اندازی

بعد از نصب بسته ها باید یه سری کارهایی رو انجام بدید تا برنامه کار کنه

این کدها رو در ترمینال بزنید .

xfconf-query -c xsettings -p /Gtk/ShellShowsMenubar -n -t bool -s true
xfconf-query -c xsettings -p /Gtk/ShellShowsAppmenu -n -t bool -s true

 

در شاخه home شما فایلی به اسم .gtkrc وجود داره (اگر وجود نداره به وجودش بیارید) .

touch ~/.gtkrc

با ادیتورتون بازش کنید و  این خط رو بهش اضافه کنید

export GTK_MODULES=unity-gtk-module:$GTK_MODULES

 

مرحله یعد : این کد رو بزنید تا اگر این پوشه وجود نداره به وجودش بیات :

mkdir -p ~/.config/gtk-3.0/

 

این کد رو بزنید تا فایل setting.ini  در این مسیر اگر وجود نداره به وجود بیات

touch ~/.config/gtk-3.0/settings.ini

 

حالا همین فایل رو با ویرایشگرتون باز کنید . باید داخلش نوشته باشه

[Settings]

 

اگه ننوشته بهش اضافه کنید! و بعد از اینکه عبارت بالا رو اضافه کردید ، زیر اون این دو خط رو اضافه کنید

 

gtk-shell-shows-app-menu=true
gtk-shell-shows-menubar=true

 

یعنی اگر فایلتون از قبل وجود نداشته باید این شکلی باشه

[Settings]
gtk-shell-shows-app-menu=true
gtk-shell-shows-menubar=true

 

این کد رو بزنید تا فایل.profile اگر وجود نداره به وجود بیات

touch ~/.profile

 

حالا این فایل رو با ادیتورتون (ویرایشگرتون) باز کنید و این دو خط رو به آخرش اضافه کنید

export UBUNTU_MENUPROXY=1 
export GTK_MODULES=unity-gtk-module:$GTK_MODULES

 

مرحله سوم :

applet مربوط بهش رو به پتلتون اضافه کنید . برای این کار روی پنل بالایی میزکار xfce راست کلیک کنید و از قسمت panels گزینه Panel preferences رو انتخاب کنید . بعد از باز شدن پنجره تنظیمات وارد زبانه Items بشید و روی علامت + کلیک کنید و بعد از باز شدن پنجره جدید AppMenu Plugin رو انتخاب و اضافه کنید و در نهایت با دکمه های جهت روی پنجره تنظیمات پنل به مکان دلخواهتون انتقالش بدید .

 

 

 

حالا یه بار از میزکار log out کنید و دوباره وارد بشید . یه برنامه رو باز کنید و تست کنید (مثلا ترمینال )

 

نکات و اشکالات احتمالی :

۱ – اگر برای برنامه ای منو رو غیرفعال کرده باشید توی گلوبال منو هم نمایش داده نمیشه

۲- برای من فایل منجر thunar کرش میکرد! توصیه میکنم از گزینه view برنامه thunar منو رو براش غیرفعال کنید .

۳- توی سایتی که گفتم یه شیوه هم گفته برای اینکه این منو با فایرفاکس هم کار کنه . منم اینجا مینویسمش ولی برای من جواب نداد .

برای فایرفاکس :

mkdir -p ~/.local/share/applications/
cp /usr/share/applications/firefox.desktop ~/.local/share/applications/
sed -i 's/^Exec=/Exec=env UBUNTU_MENUPROXY=0 firefox %u/' ~/.local/share/applications/firefox.desktop

برای Thunder bird (البته اگر نصب داید 🙂  )

cp /usr/share/applications/thunderbird.desktop ~/.local/share/applications/
sed -i 's/^Exec=/Exec=env UBUNTU_MENUPROXY=0 thunderbird %u/' ~/.local/share/applications/thunderbird.desktop

 

۴-  گاهی کرش میکنه و کار نمیکنه ! برای این که دوباره درست کار کنه از پنلتون حذفش کنید و دوباره اضافش کنید .

 

 

این آدرس گیت هاب توسعه دهندش هست ، اگه خوشتون اومد بهش ستاره بدید 🙂

 

17 thoughts on “اضافه کردن global menu به XFCE

  1. سلام
    من این برنامه رو میخواستم روی زوبونتو ۱۸٫۴ نصب کنم ولی متوجه شدم که این برنامه توسعش متوقف شده است. و نتوانستم ان را نصب کنم.
    آیا جایگذینی برای این برنامه وجود دارد؟

  2. سلام
    من این رو روی آرچ نصب کردم البته باید بگم اسم بسته‌ها کمی تغییر کرده ولی بلاخره پیدا و نصبشون کردم.
    ممنون از آموزش خوبتون.
    اول اینکه کم پیدایین خبری ازتون نیست کارای جدید نمی‌بینیم 🙂
    دوم اینکه راهی نداره این منو ها برای دسکتاپ نمایش داده نشن؟

  3. سلام اون theme که داخل تصویر نصب شده رو ارچ نامش چیست و چگونه می توان ترمینال ارچ را این شکلی کرد

  4. سلام علیرضا جان
    میشه لطف کنی یه پک از والپیپر هایی که داری رو بزاری تو سایت برا دانلود ؟
    خیلی میخورن به xfce اصلا
    ممنون

    1. سلام
      در تاریخی که من نوشتم مطلب رو این بسته موجود بود
      ولی ظاهرا حذف شده
      توصیه میکنم به توسعه دهنده همین برنامه در گیت هاب حذف شدن این بسته رو اطلاع بدید و بپرسید چه راه حلی پیشنهاد میدن

  5. سلام علیرضا جان از آموزش های خوبت سپاس گزارم. من هم فعالیت هایی شبیه شما در زمینه پایتون دارم. دوست دارم این افتخارو بهم بدی تا بتونیم با هم به نشر اینجور مطالب بپردازیم. کانال تلگرام ما telegram.me/programmersfun و سایت من django.torangnet.com

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *