Skip to main content

Sway

Описание в wiki Arch Linux.

Установка

pikaur -S sway swaylock swayidle swaybg wmenu dmenu foot waybar xdg-desktop-portal-wlr

Настройка

Создать каталоги для конфигурационных файлов и скопировать системный конфигурационный файл:

mkdir -p ~/.config/sway/config.d && cp /etc/sway/config ~/.config/sway

Закомментировать запуск swaybar и подключить каталог с пользовательскими конфигурационными файлами в скопированном конфигурационном файле (в конце файла):

nano ~/.config/sway/config

Пример:

#
# Read `man 5 sway-bar` for more information about this section.
#bar {
#    position top
#
#    # When the status_command prints a new line to stdout, swaybar updates.
#    # The default just shows the current date and time.
#    status_command while date +'%Y-%m-%d %X'; do sleep 1; done
#
#    colors {
#        statusline #ffffff
#        background #323232
#        inactive_workspace #32323200 #32323200 #5c5c5c
#    }
#}

include /etc/sway/config.d/*
include ~/.config/sway/config.d/*

Настройка клавиатуры

Создать файл ~/.config/sway/config.d/10-keyboard:

# Apple alluminium keyboard
input "1452:592:Apple_Inc._Apple_Keyboard" {
    xkb_layout "us,ru(mac)"
    xkb_options "grp:win_space_toggle,lv3:ralt_switch"
    xkb_model "apple_iso"
}

bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +5%
bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -5%
bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle
bindsym XF86AudioMicMute exec pactl set-source-mute @DEFAULT_SOURCE@ toggle
bindsym XF86MonBrightnessDown exec brightnessctl set 5%-
bindsym XF86MonBrightnessUp exec brightnessctl set 5%+
bindsym XF86AudioPlay exec playerctl play-pause
bindsym XF86AudioNext exec playerctl next
bindsym XF86AudioPrev exec playerctl previous
bindsym XF86Search exec bemenu-run

Настройка waybar

Создать файл ~/.config/sway/config.d/20-waybar:

bar {
    swaybar_command waybar
}

Создать каталог для конфигурации waybar:

mkdir -p ~/.config/waybar

Создать пользовательский конфигурационный файл ~/.config/waybar/config.jsonc, (опционально запретить вывод на встроенный экран и) подключить системный конфигурационный файл:

{
    //"output"  : "!eDP-1",
    "include" : "/etc/xdg/waybar/config.jsonc"
}

Настройка терминала foot

Foot на wiki Arch Linux.

Создать каталог с конфигурационным файлом:

mkdir -p ~/.config/foot && cp /etc/xdg/foot/foot.ini ~/.config/foot/

Добавить в ~/.config/foot/foot.ini следующие строки (можно в соответствующих местах):

term=xterm-256color
font=MesloLGS NF:size=9

Настройка запуска приложений

Создать файл ~/.config/sway/config.d/50-apps:

# Shortcut to launch Brave browser
for_window [class="Brave"] {
    move scratchpad
    resize set 1920 1056
    move position 0 0
    scratchpad show
}
bindsym $mod+i exec swaymsg [class="Brave"] scratchpad show || exec brave

# Shortcut to launch Telegram app
for_window [app_id="org.telegram.desktop"] {
    move scratchpad
    resize set 800 1056
    move position 0 0
    scratchpad show
}
bindsym $mod+t exec swaymsg [app_id="org.telegram.desktop"] scratchpad show || exec telegram-desktop