# Dotfiles

## Навигация
- [Установка](#установка)
- [Обзор риса](#обзор-риса)
- [Yay](#yay) - помощник для установки пакетов из AUR
- [Hyprland](#hyprland) - оконный менеджер
- [Доп. пакеты](#дополнительные-пакеты) необходимые для корректной работы системы
- [Бинды](#бинды) - все сочетания клавиш
- [Курсор](#курсор) - тема курсора
- [Шрифты](#шрифты) - установка шрифтов
- [Hypridle](#hypridle) - поведение при бездействии
- [Hyprlock](#hyprlock) - экран блокировки
- [Waybar](#waybar) - wayland бар
- [Rofi](#rofi) - запуск приложений, интерфейс для буфера обмена
- [Wlogout](#wlogout) - блокировка экрана, выход, перезагрузка, выключение и т.д
- [Fastfetch](#fastfetch) - похвастаться линуксом)
- [Nwg-look](#nwg-look) - настройка GTK3
- [Терминал](#терминал) - настройка терминала
- [Swaync](#swaync) - уведомления
- [Waypaper](#waypaper) - GUI для простого управление обоями
- [Обои](#обои) - коллекция обоев/фонов
- [Emote](#emote) - выбор эмодзи
- [Flameshot](#flameshot) - мощная утилита для скриншотов
## Установка
```
# Обновление системы и установка Git
sudo pacman -Syu git
# Клонирование репозитория c конфигами
git clone https://github.com/retrilzzy/dotfiles.git ~/dotfiles && cd ~/dotfiles
# Запуск скрипта установки пакетов
chmod +x ./Scripts/install_packages.sh
./Scripts/install_packages.sh
# Копирование старых конфигов в отдельную директорию
mkdir -p ~/.config_backup
cp -r ~/.config ~/.config_backup/
cp ~/{.zshrc,.p10k.zsh,.nanorc} ~/.config_backup/ 2>/dev/null
# Копирование новых конфигов из dotfiles
cp -r ~/dotfiles/Configs/.config/* ~/.config/
cp ~/dotfiles/Configs/.zshrc ~/dotfiles/Configs/.p10k.zsh ~/dotfiles/Configs/.nanorc ~/
```
## Обзор риса
## Yay
- Помощник для установки пакетов из AUR - [yay](https://github.com/Jguer/yay)
```
sudo pacman -S --needed git base-devel \
&& git clone https://aur.archlinux.org/yay.git \
&& cd yay && makepkg -si
```
## Hyprland
Оконный менеджер (WM)
- [[Основной конфиг](./Configs/.config/hypr/hyprland.conf)]
- [[Бинды](./Configs/.config/hypr/keybindings.conf)]
- [[Правила окон и рабочих столов](./Configs/.config/hypr/rules.conf)]
### Дополнительные пакеты
- Трей апплет для управления WiFi соединениями - [network-manager-applet](https://archlinux.org/packages/extra/x86_64/network-manager-applet/)
- Bluetooth - [bluez, bluez-tools, blueman](https://archlinux.org/packages/extra/x86_64/bluez/)
- Управления яркостью экрана - [brightnessctl](https://github.com/Hummer12007/brightnessctl)
- Копирование изображения в буфер обмена - [xdg-utils](https://archlinux.org/packages/extra/any/xdg-utils/)
- Скриншоты - [hyprshot](https://aur.archlinux.org/packages/hyprshot)
```
sudo pacman -S network-manager-applet \
bluez bluez-tools blueman \
brightnessctl xdg-utils grim \
&& yay -S hyprshot
```
### Бинды
#### Запуск приложений
| Клавиши | Действие |
| :--- | :--- |
| Super + W | Терминал (Kitty) |
| Super + Shift + W | Терминал в плавающем режиме (float)|
| Super + R | Меню приложений (Rofi) |
| Super + E | Файловый менеджер (Nautilus) |
| Super + C | Редактор кода (VSCode) |
| Super + B | Браузер (Brave) |
| Super + K | Менеджер паролей (Keepassxc) |
| Super + V | Буфер обмена (Cliphist) |
| Super + N | Центр уведомлений (Swaync) |
| Super + Shift + E | Меню эмодзи (Emote) |
| Super + Shift + P | Управление обоями (Waypaper) |
#### Взаимодействие с окнами
| Клавиши | Действие |
| :--- | :--- |
| Super + Q | Закрыть активное окно |
| Super + A | Переключение на псевдоплиточный режим (pseudo) |
| Super + F | Переключение окна в режим "плавающее" (float) |
| Super + D | Переключение режима разделения окна |
| Alt + Tab | Переключение на следующее окно |
| Super + Стрелки | Перемещение фокуса между окнами |
| Super + Control + Стрелки | Изменение размера активного окна |
| Super + Shift + Стрелки | Перемещение окон |
| Super + ЛКМ | Перемещение окон мышью |
| Super + ПКМ | Изменение размера окон мышью |
#### Рабочие пространства (столы)
| Клавиши | Действие |
| :--- | :--- |
| Super + [0-9] | Переключение между рабочими пространствами с 1 по 10 |
| Super + Shift + [0-9] | Перемещение окна в рабочее пространство с 1 по 10 |
| Super + S | Переключение на специальное рабочее пространство |
| Super + Shift + S | Перемещение окна в специальное рабочее пространство |
| Super + Колесо мыши | Переключение между рабочими пространствами |
#### Скриншоты
| Клавиши | Действие |
| :--- | :--- |
| Print | Скриншот всего экрана |
| Shift + Print | Скриншот выделенной области |
| Super + Print | Скриншот выборного окна |
| Super + Shift + F | Flameshot GUI (мощная утилита для скриншотов) |
| Super + Shift + Print | Скриншот выделенной области и загрузка в Chibisafe |
#### Управление экраном/питанием
| Клавиши | Действие |
| :--- | :--- |
| Super + L | Заблокировать экран |
| Super + Alt + D | Включить/выключить дисплей |
| Super + Alt + S | Заблокировать экран и перевести в спящий режим |
#### Остальное
| Клавиши | Действие |
| :--- | :--- |
| Super + F2 | Перезапуск Waybar |
| Super +Alt + P | Случайный фон из директории Wallpapers |
### Курсор
https://github.com/rose-pine/cursor
https://github.com/ndom91/rose-pine-hyprcursor
```
yay -S rose-pine-cursor rose-pine-hyprcursor
```
### Шрифты
Поддержка всех символов
```
sudo pacman -S noto-fonts noto-fonts-emoji noto-fonts-cjk noto-fonts-extra
```
Шрифт для VSCode
```
sudo pacman -S ttf-jetbrains-mono-nerd
```
Шрифт для терминала
```
yay -S ttf-meslo-nerd-font-powerlevel10k
```
### Hypridle
Поведение при бездействии [[конфиг](./Configs/.config/hypr/hypridle.conf)]
```
sudo pacman -S hypridle
```
| Действие | Таймаут |
| --------------------- | --------- |
| Снижение яркости | 5 мин. |
| Блокировка экрана | 10 мин. |
| Выключение экрана | 10.2 мин. |
| Спящий режим | 20 мин. |
### Hyprlock
Экран блокировки [[конфиг](./Configs/.config/hypr/hyprlock.conf)]
*в конфиге надо поменять путь к изображению*
```
sudo pacman -S hyprlock
```
Скриншот

## Waybar
Wayland бар [[конфиг](./Configs/.config/waybar/)]
```
sudo pacman -S waybar
```
Скриншот

## Rofi
Запуск приложений, интерфейс для буфера обмена [[конфиг](./Configs/.config/rofi/)]
```
sudo pacman -S rofi wl-clipboard cliphist
```
Скриншот (Лаунчер приложений)

Скриншот (Буфер обмена)

## Wlogout
Блокировка экрана, выход, перезагрузка, выключение и т.д. [[конфиг](./Configs/.config/wlogout/)]
```
yay -S wlogout
```
Скриншот

## Терминал
Эмулятор терминала - [Kitty](https://sw.kovidgoyal.net/kitty) [[конфиг](./Configs/.config/kitty/)]
Оболочка - [Zsh](https://www.zsh.org/) [[конфиг](./Configs/.config/.zshrc)]
Расширение для Zsh - [Oh My Zsh](https://github.com/ohmyzsh/ohmyzsh)
Тема - [powerlevel10k](https://github.com/romkatv/powerlevel10k) [[конфиг](./Configs/.config/.p10k.zsh)]
Скриншот

Установка kitty и zsh
```
sudo pacman -S kitty zsh
```
Установка Oh My Zsh
```
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
```
Установка темы powerlevel10k
```
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
```
Установка плагинов для zsh через Oh My Zsh:
- [zsh-syntax-highlighting](https://github.com/zsh-users/zsh-syntax-highlighting)
```
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
```
- [zsh-autosuggestions](https://github.com/zsh-users/zsh-autosuggestions)
```
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
```
Установка [exa](https://github.com/ogham/exa) (замена ls)
```
sudo pacman -S exa
```
Установка [The F*ck](https://github.com/nvbn/thefuck) (корректировщик предыдущих команд в терминале)
```
sudo pacman -S thefuck
```
## Fastfetch
Похвастаться линуксом) [[конфиг](./Configs/.config/fastfetch/)]
```
sudo pacman -S fastfetch
```
Скриншот

## Nwg-look
Настройка GTK3 [[конфиг](./Configs/.config/nwg-look/)]
```
sudo pacman -S nwg-look
```
**Темная тема Adwaita**
`~/.themes/Adwaita-Dark/gtk-3.0/gtk.css`
```
@import url("resource:///org/gtk/libgtk/theme/Adwaita/gtk-contained-dark.css");
```
## SwayNC
Уведомления [[конфиг](./Configs/.config/swaync/)]
```
sudo pacman -S swaync
```
## Waypaper
GUI для простого управление обоями
```
yay -S waypaper
```
Для статичных изображений и gif
```
sudo pacman -S swww
```
Для видео
```
sudo pacman -S mpvpaper
```
### Обои
- [Монохром](https://cdn.rzx.ovh/a/logffks5vds3cwyo)
- Возможно будут еще...
## Emote
Выбор эмодзи
```
yay -S emote
```
## Flameshot
Мощная утилита для скриншотов [[конфиг](./Configs/.config/flameshot/)]
```
sudo pacman -S flameshot
```
Скриншот
