</>

لینوکس‌پارسی

مرجع فارسی آموزش لینوکس

Gentoo • Arch • Debian • Ubuntu • Kali • Parrot
پرش به محتوای اصلی

Command Palette

Search for a command to run...

نصب Hyprland در Arch Linux

نصب و پیکربندی کامل Hyprland در Arch Linux: tiling window manager مدرن، Wayland، راه‌اندازی پایه و شخصی‌سازی.

پیشرفته۹ دقیقه مطالعهآخرین بروزرسانی: ۹ تیر ۱۴۰۵ویرایش در گیت‌هاب

Hyprland یک tiling window manager مدرن و پویا برای Wayland است که انیمیشن‌های روان، افکت‌های زیبا و کارایی بالا را ارائه می‌دهد. در این آموزش، نصب و پیکربندی کامل Hyprland در Arch Linux را دنبال می‌کنیم.

Hyprland چیست؟#

Hyprland یک compositor برای Wayland است که با C++ نوشته شده و ویژگی‌های زیر را ارائه می‌دهد:

  • انیمیشن‌های روان و customizable
  • پشتیبانی از تایلینگ پویا (master و dwindle layout)
  • افکت‌های گرافیکی پیشرفته (blur, shadows, rounded corners)
  • پشتیبانی از multi-monitor
  • پیکربندی با فایل متنی ساده (نه XML یا Lua)
  • ادغام با اکوسیستم Wayland

Hyprland در برابر Sway

هر دو Wayland compositor هستند. Sway از فلسفهٔ i3 پیروی می‌کند (ساده، کم‌افکت). Hyprland مدرن‌تر است، با انیمیشن و افکت‌های بیشتر. اگر سادگی و ثبات می‌خواهید، Sway را امتحان کنید. اگر ظاهر مدرن می‌خواهید، Hyprland.

پیش‌نیازها#

Hyprland برای کاربران پیشرفته

Hyprland فقط یک window manager است؛ نه دسکتاپ کامل. شما باید خودتان: پنل، launcher، notify daemon, wallpaper setter و... را پیکربندی کنید. این آموزش برای کاربران آشنا به لینوکس است.

پیش‌نیازها:

  • نصب پایهٔ Arch کامل
  • یک کاربر عادی با sudo
  • NetworkManager فعال
  • درایور گرافیکی نصب (با پشتیبانی از Wayland)
  • آشنایی با خط فرمان و فایل‌های پیکربندی

نصب Hyprland#

روش ۱: از مخازن رسمی (پیشنهادی)#

# نصب Hyprland و ابزارهای پایه
sudo pacman -S hyprland

روش ۲: از AUR (نسخهٔ git)#

اگر جدیدترین ویژگی‌ها را می‌خواهید:

yay -S hyprland-git

انتخاب نسخه

برای اکثر کاربران، نسخهٔ پایدار از مخازن رسمی کافی است. نسخهٔ git برای توسعه‌دهندگان و کاربرانی است که آخرین تغییرات را می‌خواهند.

نصب ابزارهای ضروری#

Hyprland فقط مدیریت پنجره‌ها را انجام می‌دهد. برای یک دسکتاپ کامل، این ابزارها را نصب کنید:

# ترمینال
sudo pacman -S kitty
 
# launcher (نمایش برنامه‌ها)
sudo pacman -S wofi
# یا
sudo pacman -S rofi-wayland
 
# نوار وضعیت (status bar)
sudo pacman -S waybar
 
# نوتیفیکیشن
sudo pacman -S mako
# یا
sudo pacman -S dunst
 
# wallpaper
sudo pacman -S hyprpaper
# یا
sudo pacman -S swaybg
 
# قفل صفحه
sudo pacman -S swaylock
 
# سیاست session (idle, lock)
sudo pacman -S swayidle
 
# ابزار استخراج wallpaper
sudo pacman -S swww
 
# پشتیبانی از polkit (گرافیکی)
sudo pacman -S polkit-gnome
 
# ابزارهای پایه Wayland
sudo pacman -S xdg-desktop-portal-hyprland xdg-desktop-portal-gtk

نصب نرم‌افزارهای جانبی#

# مرورگر
sudo pacman -S firefox firefox-i18n-fa
 
# فونت‌های فارسی
sudo pacman -S ttf-vazirmatn
 
# فونت‌های نردبار (status bar)
sudo pacman -S ttf-jetbrains-mono-nerd noto-fonts-emoji
 
# ابزارهای سیستم
sudo pacman -S brightnessctl playerctl pamixer
 
# شبیه‌ساز ترمینال جایگزین
sudo pacman -S alacritty
 
# FileManager
sudo pacman -S thunar

راه‌اندازی Hyprland#

روش ۱: با display manager (SDDM)#

sudo pacman -S sddm
sudo systemctl enable sddm

در صفحهٔ ورود SDDM، Hyprland را به‌عنوان session انتخاب کنید.

روش ۲: با TTY (بدون display manager)#

اگر بدون display manager می‌خواهید وارد شوید، فایل ~/.bash_profile یا ~/.zprofile را ویرایش کنید:

if [ -z "$WAYLAND_DISPLAY" ] && [ "$XDG_VTNR" -eq 1 ]; then
    exec Hyprland
fi

سپس پس از ورود به سیستم در TTY1، Hyprland به‌طور خودکار شروع می‌شود.

پیکربندی پایه#

فایل پیکربندی Hyprland در ~/.config/hypr/hyprland.conf قرار دارد:

mkdir -p ~/.config/hypr
nano ~/.config/hypr/hyprland.conf

پیکربندی پیشنهادی پایه#

# ============= Monitor =============
monitor=,preferred,auto,1
 
# ============= Programs ============
$terminal = kitty
$menu = wofi --show drun
$browser = firefox
 
# ============= Autostart ===========
exec-once = waybar
exec-once = mako
exec-once = hyprpaper
exec-once = /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
 
# ============= Variables ===========
$mainMod = SUPER
 
# ============= Bindings ===========
bind = $mainMod, Return, exec, $terminal
bind = $mainMod, D, exec, $menu
bind = $mainMod, Q, killactive,
bind = $mainMod SHIFT, E, exit,
bind = $mainMod, F, fullscreen,
bind = $mainMod, Space, togglefloating,
bind = $mainMod, P, pseudo, # dwindle
 
# تمرکز
bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d
 
# حرکت پنجره
bind = $mainMod SHIFT, left, movewindow, l
bind = $mainMod SHIFT, right, movewindow, r
bind = $mainMod SHIFT, up, movewindow, u
bind = $mainMod SHIFT, down, movewindow, d
 
# workspaceها
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
 
# انتقال پنجره به workspace
bind = $mainMod SHIFT, 1, movetoworkspace, 1
bind = $mainMod SHIFT, 2, movetoworkspace, 2
bind = $mainMod SHIFT, 3, movetoworkspace, 3
 
# ============= Graphics ===========
exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
 
# ============= Look ===============
general {
    gaps_in = 5
    gaps_out = 10
    border_size = 2
    col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
    col.inactive_border = rgba(595959aa)
    layout = dwindle
}
 
decoration {
    rounding = 10
    blur {
        enabled = true
        size = 3
        passes = 1
    }
    drop_shadow = yes
    shadow_range = 4
    shadow_render_power = 3
}
 
animations {
    enabled = yes
    bezier = myBezier, 0.05, 0.9, 0.1, 1.05
    animation = windows, 1, 7, myBezier
    animation = windowsOut, 1, 7, default, popin 80%
    animation = border, 1, 10, default
    animation = fade, 1, 7, default
    animation = workspaces, 1, 6, default
}
 
# ============= Input ==============
input {
    kb_layout = us,ir
    kb_options = grp:alt_shift_toggle
    follow_mouse = 1
    touchpad {
        natural_scroll = yes
    }
    sensitivity = 0 # -1.0 to 1.0
}
 
# ============= Rules ==============
windowrule = float, ^(wofi)$
windowrule = center, ^(wofi)$
windowrule = float, ^(mpv)$

بارگذاری مجدد پیکربندی

Hyprland به‌طور خودکار فایل پیکربندی را reload می‌کند. کافی است فایل را ذخیره کنید. اگر خطای سینتکس باشد، در通知 mako نمایش داده می‌شود.

پیکربندی Waybar#

mkdir -p ~/.config/waybar
nano ~/.config/waybar/config
{
    "layer": "top",
    "position": "top",
    "height": 30,
    "modules-left": ["hyprland/workspaces"],
    "modules-center": ["hyprland/window"],
    "modules-right": ["pulseaudio", "network", "cpu", "memory", "battery", "clock", "tray"],
    
    "hyprland/workspaces": {
        "format": "{icon}",
        "on-click": "activate"
    },
    "clock": {
        "format": "YYYY-MM-DD HH:mm"
    },
    "pulseaudio": {
        "format": "{volume}% {icon}",
        "format-muted": "MUTE",
        "icons": {
            "default": "♪"
        }
    },
    "battery": {
        "format": "{capacity}% {icon}",
        "format-icons": ["", "", "", "", ""]
    }
}

سپس فایل CSS:

nano ~/.config/waybar/style.css
* {
    font-family: "JetBrains Mono Nerd Font";
    font-size: 13px;
}
 
window#waybar {
    background-color: rgba(30, 30, 46, 0.9);
    color: #cdd6f4;
}
 
#workspaces button {
    padding: 0 10px;
    color: #cdd6f4;
    background: transparent;
}
 
#workspaces button.active {
    color: #89b4fa;
}
 
#clock, #battery, #cpu, #memory, #network, #pulseaudio {
    padding: 0 10px;
    margin: 0 5px;
    color: #cdd6f4;
    background-color: rgba(69, 71, 90, 0.5);
}
 
#battery.warning {
    color: #f9e2af;
}
 
#battery.critical {
    color: #f38ba8;
}

پیکربندی Hyprpaper#

mkdir -p ~/.config/hypr
nano ~/.config/hypr/hyprpaper.conf
preload = ~/Pictures/wallpaper.jpg
wallpaper = ,~/Pictures/wallpaper.jpg

شروع به کار#

پس از ذخیرهٔ همهٔ فایل‌ها، Hyprland را اجرا کنید:

# اگر با TTY وارد شده‌اید، Hyprland خودکار شروع می‌شود
# یا اجرای دستی
Hyprland

شورتکات‌های پایه#

شورتکاتکاربرد
Super + Enterباز کردن ترمینال
Super + Dباز کردن launcher
Super + Qبستن پنجرهٔ فعال
Super + Fتمام‌صفحه
Super + Spaceحالت شناور
Super + Arrowحرکت تمرکز
Super + 1-9سوییچ به workspace
Super + Shift + 1-9انتقال پنجره به workspace
Super + Shift + Eخروج از Hyprland

کلید Super

کلید Super همان کلید Windows در اکثر کیبوردها است. در مک، کلید Command است.

نصب تم و اسکریپت‌های آماده#

Hyprland dotfiles#

برای شروع سریع، می‌توانید dotfiles آمادهٔ دیگران را استفاده کنید:

# نمونه: dotfiles محبوب (با احتیاط، ببینید چه نصب می‌کند)
git clone https://github.com/.../dotfiles.git

احتیاط با dotfiles دیگران

دوت‌فایل‌های دیگران ممکن است شامل پیکربندی‌های نامناسب برای سیستم شما باشند. همیشه قبل از استفاده، کد را بخوانید و در صورت نیاز تنظیم کنید.

نکات کار با Hyprland#

نصب اسکریپت‌های کمکی#

# ابزارهای Hyprland ecosystem
sudo pacman -S hyprpicker  # رنگ‌گیر
yay -S hypridle  # مدیریت idle
yay -S hyprlock  # قفل صفحه-native

پیکربندی multi-monitor#

# در hyprland.conf
monitor=eDP-1,1920x1080,0x0,1
monitor=HDMI-A-1,2560x1440,1920x0,1

اجرای نرم‌افزارهای X11#

برخی نرم‌افزارها هنوز با Wayland کار نمی‌کنند. Hyprland از XWayland برای اجرای آن‌ها استفاده می‌کند. در صورت نیاز:

# نصب XWayland (معمولاً به‌صورت پیش‌فرض نصب است)
sudo pacman -S xorg-xwayland

خطاهای رایج#

صفحهٔ سیاه پس از شروع#

# بررسی لاگ
journalctl -b | grep Hyprland
 
# بررسی درایور گرافیکی
lspci -k | grep -A 3 -i vga

NVIDIA و Hyprland#

اگر از NVIDIA استفاده می‌کنید، متغیرهای محیطی زیر را تنظیم کنید:

# در hyprland.conf (ابتدای فایل)
env = WLR_NO_HARDWARE_CURSORS,1
env = GBM_BACKEND,nvidia-drm
env = __GLX_VENDOR_LIBRARY_NAME,nvidia

و مطمئن شوید درایور جدید (۵۵۵ به بالا) نصب است:

nvidia-smi

فونت فارسی نمایش داده نمی‌شود#

sudo pacman -S ttf-vazirmatn noto-fonts
fc-cache -fv

خلاصه#

در این آموزش:

  • Hyprland را نصب کردید
  • ابزارهای ضروری Wayland را پیکربندی کردید
  • فایل hyprland.conf را نوشتید
  • Waybar، mako و hyprpaper را راه‌اندازی کردید
  • شورتکات‌های پایه را یاد گرفتید

Hyprland یک تجربهٔ دسکتاپ مدرن و قدرتمند است اما نیازمند پیکربندی دستی است. این انعطاف‌پذیری، بزرگ‌ترین نقطهٔ قوت آن است.

برای جزئیات بیشتر و قابلیت‌های پیشرفته، به Arch Wiki: Hyprland و مستندات رسمی مراجعه کنید.

در آموزش بعدی، با NetworkManager آشنا می‌شوید.

پرسش‌های رایج#

آیا Hyprland برای مبتدیان مناسب است؟#

خیر. Hyprland برای کاربران پیشرفته‌ای است که با لینوکس آشنا هستند و آمادهٔ پیکربندی دستی هستند. اگر مبتدی هستید، GNOME یا KDE Plasma را امتحان کنید.

آیا Hyprland با NVIDIA کار می‌کند؟#

بله، اما نیاز به درایور جدید (۵۵۵ به بالا) و تنظیمات اضافی دارد. اگر با NVIDIA مشکل دارید، X11 با i3/sway را امتحان کنید.

چگونه تم کامل Hyprland را نصب کنم؟#

بهترین راه، استفاده از dotfiles دیگران به‌عنوان پایه است. در GitHub جستجوی hyprland dotfiles کنید. سپس فایل‌ها را در ~/.config/ قرار دهید و به سیستم خودتان تطبیق دهید.

آیا Hyprland پایدار است؟#

Hyprland در حال توسعهٔ فعال است و گاهی باگ‌های جدید در نسخه‌های جدید وارد می‌شوند. اگر پایداری برایتان حیاتی است، نسخهٔ پایدار (نه git) را استفاده کنید و قبل از به‌روزرسانی، changelog را بخوانید.

اشتراک‌گذاری:

این صفحه در تاریخ ۹ تیر ۱۴۰۵ به‌روزرسانی شده است.