Мой набор утилит для работы с видео, терминалом и бэкапами заметок.
Скрипт для качественного сжатия видеофайлов под лимит ~400 МБ (например, для загрузки в мессенджеры или файлообменники с ограничениями).
-
Как это работает:
-
Анализирует длительность видео.
-
Автоматически вычисляет максимально возможный битрейт, чтобы итоговый файл весил ровно 385 МБ.
-
Делает звук моно (48k), чтобы отдать больше места под картинку.
-
Использует 2-проходное кодирование (2-pass) с пресетом
slowerдля максимального качества при заданном размере. -
Использование:
./compress.sh my_video.mp4
- Результат: Рядом появится файл
my_video_399mb.mp4.
Скрипт для запуска нового экземпляра терминала Ghostty в той же директории, где я сейчас нахожусь. Написан специально для оконного менеджера Niri.
-
Как это работает:
-
Запрашивает у Niri (
niri msg) информацию об активном окне. -
Находит PID процесса оболочки (bash/fish/zsh) внутри этого окна.
-
Считывает рабочий путь через
/proc/PID/cwd. -
Открывает Ghostty в найденной папке (или в
$HOME, если не нашел). -
Использование: Лучше всего повесить на хоткей в конфиге Niri (
config.kdl):
bind "Mod+Enter" { spawn "/путь/к/скрипту/ghostty-cwd.sh"; }
Скрипт для автоматического бэкапа хранилищ Obsidian (папки Prog и Self) в Git-репозиторий.
-
Как это работает:
-
Anti-crash: Принудительно удаляет файлы
index.lock, если предыдущая синхронизация/git упали (чтобы не блокировать новую). -
Выполняет стандартную цепочку:
git add->git commit->git pushдля двух папок по очереди. -
Отправляет системное уведомление (
notify-send) об успехе или ошибке. -
Использование: Можно запускать вручную в конце дня или добавить в Cron/Systemd-timer для автозапуска:
./sync.sh
Моя конфигурация Fish Shell (.config/fish/config.fish) с набором алиасов, аббревиатур и настроек окружения.
Если установлен eza, стандартные команды ls заменяются на улучшенные версии с иконками и git-статусом:
| Алиас | Команда | Описание |
|---|---|---|
ls |
eza --icons --group-directories-first |
Список файлов с иконками |
ll |
eza -l -g --icons --git --group-directories-first |
Подробный список с git-статусом |
la |
eza -l -a -g --icons --git --group-directories-first |
То же + скрытые файлы |
lt |
eza --tree --level=2 --icons |
Дерево файлов (2 уровня) |
| Сокращение | Команда | Описание |
|---|---|---|
gs |
git status |
Статус репозитория |
ga |
git add . |
Добавить все изменения |
gc |
git commit -m |
Коммит с сообщением |
gp |
git push |
Отправить в remote |
pac |
sudo pacman -S |
Установка пакета |
| Алиас | Команда | Описание |
|---|---|---|
myip |
curl ifconfig.me |
Узнать внешний IP |
cls |
clear |
Очистить терминал |
cat |
bat |
Подсветка синтаксиса при выводе файлов |
d |
docker |
Docker |
d-c |
docker-compose |
Docker Compose |
lg |
lazygit |
TUI для Git |
ld |
lazydocker |
TUI для Docker |
- Starship — prompt инициализируется через
starship init fish - pnpm — добавлен в
PATH(~/.local/share/pnpm) - Homebrew (Linuxbrew) — подключен через
brew shellenv - Курсор — принудительно
blockво всех режимах Fish - MOZ_ENABLE_WAYLAND=1 — Firefox запускается в нативном Wayland-режиме