No description
Find a file
2025-01-03 15:30:51 +03:00
archive
modules
nixos
nvim
shit
flake.lock
flake.nix
README.md

Навигация

Бинды

Клавиша Super это клавиша Win

Bspwm Описание Работает?
Super + L Lock screen Да
Super + Q Quit. Выключить приложение Да
Super + Shift + Q Kill. Если приложение не отвечает, то убить его Да
Super + F Floating toggle Да
Super + Shift + F Tiled toggle Да
Super + Enter Fullscreen toggle Да
Super + Esc Прошлый воркспейс. Желательно внутри одного монитора Да
Super + ЛКМ Переместить окно Да
Super + ПКМ Ресайзить окно Да
Super + Arrows Менять фокус приложения в указанном направлении Да
Super + 0-9 Переключить воркспейс на 1-10. Если они общие на все моники, то добавить F1-F12 для 11-22 Да
Super + Shift + 0-9 Перекинуть активное окно на воркспейс. Желательно silent, чтоб меня не перекидывало к проге Да
Super + Ctrl + Down Переключает на первый пустой воркспейс Да
Super + Ctrl + Left/Right Переключает на предыдущий/следующий воркспейс. Тоесть делает -1 или +1 от текущего Да
Super + Ctrl + Alt + Down Свапает активное окно с самым большим на экране хз
Super + Ctrl + Alt + Left/Right Перекидывает активное окно на предыдущий/следующий воркспейс и следует за ним Да
Super + Alt + Arrows Move floating window Да
Super + Shift + Arrows Resize window на 30 пикселей в указанном направлении наружу Да
Super + Shift + Alt + Arrows Resize window на 30 пикселей в указанном направлении внутрь Да
Super + Shift + Ctrl + Arrows Перемещает активное окно в указанном направлении Криво
Super + S Split toggle. Меняет позиционирование с горизонтального на вертикальный и обратно. Не понял
Super + Ctrl + Shift + R Make sxhkd reload its config files Да
Super + Alt + Ctrn + Shift + R Restart bspwm Да
Super + Alt + Ctrn + Shift + Q Quit bspwm Да
Rofi Описание Работает?
Super + A Applications. Запускатор софта Да
Super + C Calculator имбовый. Можно даже написать 5600 USD to BTC или 500 + 25%. Да
Super + P Passwords. Пароли из утилиты pass Да
Super + V История буфера обмена. Как ctrl+v, но через win. Да
Super + Backspace PowerMenu. Выключение пк Да
Super + Tab Как alt+tab, переключение окон. На нужный воркспейс само перекинет Да
Super + Alt + T Timer. Думаю сделать через утилиту timer нет
Super + Shift + N Notification history. История оповещений. Мб сделать только в баре кнопку? Мб не делать вообще нет
Applications Описание Работает?
Super + B Browser LibreWolf. Основа Да
Super + Shift + B Browser Firefox. Паблик активность Да
Super + Shift + Ctrl + B Browser Chromium. Пусть будет Да
Super + E Explorer. Dolphin file manager Да
Super + I IDE, text editor, NeoVim Да
Super + M Monitor of resources (btop) Да
Super + G Goals. Todo manager. Task tracker Да
Super + Shift + C Color picker. Получить hex в буфер обмена Да
Super + Ctrl + C Color picker. Получить rgb в буфер обмена Да
Terminal Описание Работает?
Super + T Terminal основной Да
Super + Shift + T Floating Terminal основной в центре экрана с размерами треть на треть экрана Да
Super + Ctrl + T Terminal запасной Да
Super + Shift + Ctrl + T Floating Terminal запасной в центре экрана с размерами треть на треть экрана Да
Колдунские кнопки Описание Работает?
XF86AudioMute Toggle audio mute хз
XF86AudioMicMute Toggle microphone mute хз
XF86AudioLowerVolume Decrease volume Да
XF86AudioRaiseVolume Increase volume Да
XF86AudioPlay Play/pause хз
XF86AudioPause Play/pause хз
XF86AudioNext Next track хз
XF86AudioPrev Previous track хз
XF86MonBrightnessUp Increase brightness хз
XF86MonBrightnessDown Decrease brightness хз
Not sxhkd Описание Работает?
Print Выделить область Да
Print + Alt Все мониторы целиком Да
Print + Ctrl Активный монитор Да
Print + Shift Активное окно Да
CapsLock Switch keyboard layout Да

Так же есть бинд на зажим дальней боковой кнопки мыши. Если эту кнопку нажимать, то она работает как обычно. Если её зажать и начать двигать мышку, то вместо движения курсора будет плавный скрол. Обычно такое делают на трекболах без колеса мыши, но я люблю этот метод скрола на любом девайсе. Можно скролить с нужной скоростью и точностью куда надо без долгого кручения колеса.

Другие README файлы в этих дотсах

Проблемы

  • Некоторые симлинки, созданные через home-manager, могут быть перезаписаны другим софтом, удалив мои настройки
  • Mimetypes удаляют симлинк. Поэтому я сделал отдельный файл в каталоге shit и буду копировать готовый файл целиком в нужный каталог
  • Не работает TUN мод во всех xray/singbox клиентах. Например nekoray пишет, что не удалось setcap при вводе пароля. Испробовал все доступные методы подключения, даже голый singbox через сервис никса. У меня просто пропадает инет в системе после конекта. Сейчас единственный рабочий метод, это скачать appimage nekoray с гитхаба, обязательно именно версии 3.26, иначе не заработает, и запустить через sudo. И в настройках tun надо обязательно выключить strick route. Обычно я с ним сидел, но тут с ним проблемы и не работает ничего.
  • Gitui выёбывается. Не может запушить, ошибка ssh появляется
  • Thunar удаляет мой конфиг, даже если это не симлинк и даже если я перезапишу настройки в его же собственный файл. Приходится руками всё делать при каждой переустановке системы
  • Thunar крашится при работе с более чем одним окном. Не всегда, но в самый не нужный момент. А dolphin тянет 10 терабайт гей порно в зависимости и выводит blowjob по среди экрана, так что я рот ебал. Хз даже что делать. Все файловый менеджеры гавно ебаное
  • Thunar криво показывает превью видео. Это ебло дырявое генерит рандом кадр из видео в качестве превью. Ебантропы не могут взять данные из метаданных, куда все закидывают реальное превью. Они считают, что лучше генерить превью каждый ёбаный раз, чем взять уже готовое
  • polybar и bspwm создали пидарасы ебаные бездарные. Одни ломают floating окна и не умеют нормально отображать все символы без ручного указания двух сотен шрифтов, другие не имеют документации и не могут нормально реализовать слои в wm. Ебланы блять. Все floating окна находятся под tiling окнами при запуске ебаного гей бара. Ебантропы не могут даже элементарную работу слоёв реализовать нормально. И эти два куска дерьма называют лучшими wm и status bar? Та нахуй они кому нужны с такими далбаёбами на разрабах. Иногда даже фулскрин находится под флоатингом, а флоатинг под тилингом. Ёбаный олигофрен создал этот bspwm

Мелочи

  • Пароли через rofi выдают меню ввода пароля от qt, но оно имеет светлую тему. Ебал рот делать темы для qt, вечно всё через пизду работает
  • В терминале ssh-agent палит мою почту. Но мб это только при первом запуске терминала
  • В btop не работает статистика gpu. Установка зависимостей не помогла
  • Не работает git push в gitui. Мб надо переподключить репу. Дело не в ssh-agent, его я исправил
  • Не работает нечёткий поиск по истории комманд в терминале, если написать что-то и жать стрелку вверх

Ребилд крашит систему

Эта проблема была раньше. Сейчас исправлена. Но заметку оставлю, вдруг пригодится в будущем

Ребилд системы через switch или test кладёт нахуй систему. Чёрный экран без возможности переключить tty через ctrl + alt + F1-F7. Можно юзать boot, чтоб после ребута пк применялось. Тогда не крашит и после ребута всё работает.

Потенциальный способ исправить проблему

Есть следующие два параметра:

  • systemd.services.<name>.restartIfChanged
  • systemd.user.services.<name>.restartIfChanged

Они указывают надо ли ребутать указанный сервис при ребилде системы. Мб надо туда что-то указать и сделать false

Я сделал это для одного сервиса в nixos/configuration.nix. Мне помогло. Но если будут ещё сервисы, ребилд на которых зависает и после него крашится система, то можно пробовать запретить рестарт при ребилде.

Реальный способ исправить проблему

Походу дело было в сервисе cage. Когда я его удалил, то всё стало работать нормально

TODO

Надо сделать декларативную QT тему (ебал их рты). Сейчас у меня есть три каталог в каталоге shit. Их я могу скопировать в ~/.config, нужная переменная окружения в home.nix стоит и всё заработает. Но это залупа. Другой человек не сможет это юзать мб. Потому что там в коде написан путь /home/buliway. Не всем же быть буливеями. Хотя это изи исправляется, потом сделаю. Но пока что я рот ебал тратить 3 дня на настройку темы бездарных далбаёбов на QT.

Надо сделать Nekoray нормально. Пока что только путь пидараса есть. Запускаешь sudo ~/Downloads/VPN/nekoray-3.26-2023-12-09-linux-x64.AppImage. В некобоксе офаешь у тян мода стрик роут. Систем тан. В меню жмёшь перезапустить прогу, она отлипла от терминала, перетащил на 10 воркспейс и сижу хуй сосу, ибо меня сайты в пермак кидают за такую хуйню

Надо добавить в polybar отображение:

  • Заряд аккума. Сейчас проверить негде. Мб взять готовый вариант тут
  • Яркость экрана. Тоже ноуты. Хз надо ли
  • Температура и нагрузка на гп
  • Температура цп
  • Блютуз. Не знаю отображается ли он сейчас. Не могу проверить, негде

Установить и настроить:

  • i3 с его экосистемой софта. Чтоб тот же polybar был лишь на bspwm, а на i3 работал i3bar
  • Sway. Мб сделать через ags

Описание

Железо, на котором это работает:

  • CPU: i7 9700
  • GPU: AMD RX6700XT
  • RAM: 32gb (2x16) ddr4 3200
  • Два монитора 2560x1440 на 144 герц

Основной набор софта

Изначально я написал конфиги для bspwm + polybar. Но так как оба эти проги созданы далбаёбами бездарными, я перееду на i3 + i3bar. В теории между ними можно переключаться при запуске пк, так что проблем быть не должно. Если какой-то wm надо выключить, чтоб не засирать систему, то это можно делать в modules/home-manager/bundle.nix

Software Name
WM bspwm/i3
Hotkeys sxhkd/i3
Terminal Alacritty, Kitty
Multiplexer Zellij
Shell oh-my-zsh with many plugins
Shell Prompt Starship
Apps/Menus Rofi
Bar Polybar/i3bar
ScreenLock betterlockscreen/i3lock
Notification Dunst
Files Thunar, Ranger
Images qView, imv, feh
Video mpv with plugins
Music Strawberry, Picard, Mousai, spek
Browsers Librewolf, Firefox, Chromium
Social Discord, Telegram, Steam
Audio PipeWire, pavucontrol
Color Theme Gruvbox Dark Medium
Icons Gruvbox Plus Dark
DM LightDM
Compositor Нет. Мб будет стоковый picom
Screenshare OBS, Screenkey, ksnip
Code Editor VSCode, JetBrains, nixvim, helix
Video Editor Blender
Fetch fastfetch
Torrent qBittorrent
Email client Thunderbird
Color picker xcolor, gcolor3
Docs/eBook Evince, LibreOffice, Calibre
Design Gimp, Krita
Productivity Obsidian, Planify

Чтоб узнать sha256 для гитхаб репы, пишем в терминал эту команду:

nix-prefetch-git link

Если хочется поменять цвета или шрифты в конфиге какой-то программы, но при ребилде получается конфликт, то дело в Stylix, который управляет системной темой и сам везде ставит шрифты и цвета. Если хочется заменить, не трогая stylix, то надо добавить lib.mkForce перед значением. Например так:

font = lib.mkForce "JetBrainsMono Nerd Font 11";

Узнать localhost виртуалки, чтоб конектиться по ssh:

ip a

Нюансы с JetBrains Toolbox

В стоке тулбокс может всегда разлогинивать. Я не проверял, сразу сделал как просили на вики, чтоб это исправить.

Надо скачать тулбокс (уже стоит), запустить его один раз, а потом:

  • Изменить ~/.local/share/JetBrains/Toolbox/.storage.json и добавить строку "preferredKeychain": "linux-fallback" (у меня было в стоке)
  • Залогиниться как обычно, но остановиться после того, как JetBrains вебсайт откроется
  • Перезапустить JetBrains Toolbox, открыть настройки и нажать "Troubleshoot..."
  • Следуй инструкциям по ручному входу в систему, как указано в руководстве

После выполнения этих действий JetBrains Toolbox сохранит учетные данные пользователя в зашифрованном файле (со статическим ключом) по адресу ~/.local/share/JetBrains/Toolbox/.securestorage. Если этого не сделать, JetBrains Toolbox не сможет получить учетные данные через libsecret (из-за bwrap sandboxing?) и постоянно уведомляет пользователя о необходимости повторной авторизации.

Если что-то не работает, то мб помогут эти ссылки:

Настройки для игр

Я установил MangoHud, gamemode и gamescope. Ещё есть proton-ge в steam. Всё это можно по разному комбинировать между собой.

MangoHud

Мониторинг ресурсов для vulkan и opengl приложений. Показывает fps и нагрузку на пк, включая температуры цп и гп. Можно использовать как полноценные бенчмарки, логируя всю его инфу и визуализируя данные другой утилитой. Чтоб использовать, надо написать mangehud приложение, если запускать через терминал, или mangohud %command%, если использовать через steam. Если используется вместе с gamescope, то надо писать gamescope --mangoapp.

gamemode

Оптимизатор линукса для игр

gamescope

SteamOS session compositing window manager. Можно назвать мини wm внутри wm (хотя можно и в tty запустить, без стороннего wm). Не совсем понимаю когда его надо использовать. Иногда, если у игры есть проблемы с обычным linux, то она может нормально запускаться через gamescope

Параметры запуска Steam

Если в параметры запуска захочется добавить что-то помимо того, что я напишу, то надо учитывать порядок написания. Как я понял, если надо используется переменная, то её надо писать в начале. Например, если в игре не работает печать на русском языке, то надо в начало добавить LC_ALL="ru_RU.UTF-8". Если же речь про стандартные параметры запуска стима, по типу -dev или -novid, то их надо писать после %command%. Слово %command% скорее всего является игрой, тоесть команда для запуска игры. Тоесть синтаксис как в обычном терминале. Сначала переменные окружения, потом команда, потом параметры запуска через -параметр.

Параметры запуска для игр, чтоб использовать все доступные бафы, что я сделал: Параметр запуска без использования gamescope - mangohud gamemoderun %command%. Параметр запуска с использованием gamescop gamescope --mangoapp gamemoderun %command%.

Вот пример параметров запуска для Apex Legends: mangohud gamemoderun %command% +exec autoexec.cfg -dev

FSR в proton-ge включается только в фулскрине через WINE_FULLSCREEN_FSR=1. Регулировать резкость можно через переменную окружения WINE_FULLSCREEN_FSR_STRENGTH=N, где N - это уровень резкости изображения от 0 до 5. Чем выше значение, тем меньше резкость. По умолчанию установлено значение "2", рекомендуют использовать значение "3".

Настройка мониторов

На иксах второй монитор может не работать или все мониторы могут сидеть на 60 герц. Изменить это один раз недостаточно, после ребута сбросится. Не знаю нормального способа, кроме как добавить настройки в автозапуск. Ниже пример того, как произвести начальную настройкy:

# Увидеть список мониторов
xrandr
# Изменить настройки для основного монитора. Мб вместе с --primary для основного монитора
xrandr --output DisplayPort-2 --mode 2560x1440 --rate 144 --primary
# Изменить настройки для второго (правого) монитора
xrandr --output DisplayPort-0 --mode 2560x1440 --rate 144 --left-of DisplayPort-2

Есть ещё такая штука - https://github.com/phillipberndt/autorandr . Но мне лень с ней разбираться

Системная тема на всех вебсайтах

Если используется популярная системная тема, то, скорее всего, её можно выбрать в браузерном расширении DarkReader, чтоб все сайты в интернете выглядели как системная тема. Может быть я потом займусь синхронизацией темы stylix с настройками DarkReader

Мини гайд по NixOS

  • Одинаковые вещи могут делаться разными способами. Это норма. По началу меня это бесило, когда читал чужие дотсы
  • Нюансы работы NixOS в этом видео. Мне понравилось
  • Плейлист с английскими видео. Мне больше всего понравились видео под номерами 16, 18, 21, 27 и 28.
  • Пакеты искать тут. Параметры для сток NixOS тут. Параметры для home-manager тут. Для моих конфигов надо обязательно искать в unstable ветке, ибо параметры могут отличаться.
  • Для системной темы тут используется stylix. Все его параметры можно найти тут.

Процесс установки

Сначала качаем nixos kde или nixos gnome вариант и устанавливаем систему через визуальный установщик. При установке выбираем минимальный вариант, без DE.

Кто-то говорит, что потом достаточно просто забилдить одной командой чужой конфиг, но это не так. Будет ошибка, что нет гита. Если использовать nix-shell для гита, то скажет, что нет экспериментальной функции. Либо писать огромную команду, либо, как советую сделать я, изменить стоковый конфиг никса. Для этого пишем следующее:

sudo nano /etc/nixos/configuration.nix

Я добавил туда nix.settings.experimental-features = [ "nix-command" "flakes" ]; сразу после настроек boot. Ниже, почти в самом конце, в environment.systemPackages = with pkgs; я добавил пакеты wget, git, curl. В итоге получился такой конфиг (написал лишь его часть):

{
  # Bootloader.
  boot.loader.systemd-boot.enable = true;
  boot.loader.efi.canTouchEfiVariables = true;

  nix.settings.experimental-features = [ "nix-command" "flakes" ];

  # List packages installed in system profile. To search, run:
  # $ nix search wget
  environment.systemPackages = with pkgs; [
  #  vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
    wget
    git
    curl
    fastfetch
  ];
}

После этого сохраняем и пишем в терминале это:

sudo nixos-rebuild switch

Дальше есть два способа. Перед использованием любого из них я рекомендую сделать форк и внести следующие изменения в конфиг перед установкой (либо можно сделать гит клон и через nano внести изменения для первых трёх пунктов, остальное менять на готовой системе):

  • Переменную username в nixos/configuration.nix.
  • username и homeDirectory в nixos/home.nix.
  • userName и userEmail в modules/home-manager/terminal/git.nix.

А это можно донастроить уже в готовой системе

  • Путь до home в shit/qt5ct/qt5ct.conf и shit/qt6ct/qt6ct.conf.
  • Параметры мониторов закомментированы в файле modules/home-manager/wm/bspwm/bspwm.nix. Можно указать по желанию. Команда xrandr покажет доступные значения и имена мониторов.
  • Если видеокарта от amd, то, чтоб не было тиринга, надо раскомментировать videoDrivers в modules/nixos/xserver.nix, boot.initrd.kernelModules и всю категорию настроек amdgpu в modules/nixos/hardware.nix.
  • Если надо задать симлинки, то для этого есть файл modules/home-manager/symlinks.nix. Там сейчас мои симлинки, их лучше удалить. Чтоб файл заработал, надо раскомментировать ./symlinks.nix в файле modules/home-manager/bundle.nix.
  • Если надо монтировать другие диски, то для этого есть файл modules/nixos/filesystems.nix. Там сейчас мой второй ссд. Чтоб файл заработал, надо раскомментировать ./filesystems.nix в файле modules/nixos/bundle.nix.
  • Если нужна гибернация, то её можно настроить в modules/nixos/hibernate.nix. Там надо указать uuid и офсет для swap файла. Чтоб файл заработал, надо раскомментировать ./hibernate.nix в файле modules/nixos/bundle.nix.

С гитом есть нюанс. Если захочешь потом создать свои конфиги или добавить новые файлы, на которые надо ссылаться из nix, то надо указывать либо полный путь до файла, либо добавлять файл в гит. Если указывать относительный путь, как сделано в моих bundle.nix, то все эти файлы должны находиться в гите, либо каталог дотсов должен быть без гита вовсе. Если в каталоге дотсов инициализирован репозиторий гита, то в относительных путях он не видит файлы из gitignore или просто не отслеживаемые гитом файлы.

Первый способ

Установить систему одной командой (я написал пример для github, но сейчас мои дотсы есть лишь на forgejo, не знаю как с него использовать такой синтаксис):

sudo nixos-rebuild boot --flake github:Buliway/nixos-private-dots --impure

Чтоб использовать с репой forgejo, можно попробовать такой синтаксис git@git.urec56.ru:urec/nixos_dots.

Параметр boot делает так, что настройки не применяются сразу. После установки надо будет перезапустить пк. Если хочешь проверить как оно заработает без ребута пк, то используй switch вместо boot.

Второй способ

Клонировать репозиторий и ребилдить систему с указанием пути:

git clone https://git.urec56.ru/urec/nixos_dots
sudo nixos-rebuild boot --impure --flake ~/nixos_dots

Параметр boot делает так, что настройки не применяются сразу. После установки надо будет перезапустить пк. Если хочешь проверить как оно заработает без ребута пк, то используй switch вместо boot.

После установки надо

Это заметка для меня. Каждый ставит то, что ему надо

  • Включить подкачку на 64 гига в /etc/nixos/hardware-configuration.nix через такой синтаксис:
  swapDevices = [ {
    device = "/swapfile";
    size = 64*1024; # В мегабайтах
  } ];
  • Настроить гибренацию в modules/nixos/hibernate.nix
  • Активировать скрипт в shit каталоге, чтоб скопировать нужные конфиги в нужные каталоги. Симлинки не работают
  • Настроить приложения Qt5 Settings, Qt6 Settings и Kvantum. Там надо выбрать свою системную тему. Вроде всё интуитивно понятно будет. Можно попробовать обновить систему, в надежде, что системная тема stylix начнёт работать с приложениями qt. Для этого надо будет закомментить настройки qt в конфиге stylix.
  • Руками настроить thunar, бинды для ksnip, discord, telegram, steam и strawberry
  • Добавить gpg ключи
gpg --import /path/to/your-key.gpg

Если не работает, то смотришь список ключей. Копируешь ID нужного и используешь во второй команде.

gpg --list-keys
gpg --edit-key ID-ключа

В этом режиме надо написать trust и выбрать степень доверия. Например 5 для своих ключей можно задать, это прям самое максимально доверие. Потом Ctrl + D чтоб выйти.

Изменения для виртуалок

Это надо, чтоб включить коннект по ssh к виртуалке и сделать с ней общий буфер обмена. Ну и ещё параметры экрана меняю на один 1080p монитор на 60 герц.

В файле modules/nixos/virtualisation.nix раскомментировать эти строки:

+  services = {
+    openssh.enable = true; # Потом удали. Это ставится на виртуалку, чтоб к ней конект по ssh работал.
+    spice-vdagentd.enable = true; # Clipboard sharing
+    qemuGuest = {
+      enable = true; # Fix resolution
+      package = pkgs.qemu_full;
+    };
+  };

В файле modules/home-manager/wm/bspwm/bspwm.nix изменить эти строки:

   extraConfigEarly = ''
-     xrandr --output DisplayPort-2 --mode 1920x1080 --rate 165
-     xrandr --output HDMI-A-0 --mode 1920x1080 --rate 100 --right-of DisplayPort-2
+     xrandr --output Virtual-1 --mode 1920x1080 --rate 60
   '';

    startupPrograms = [
-      # "spice-vdagent" # Для виртуалки
+      "spice-vdagent" # Для виртуалки
    ];

Запуск Waydroid на X11

Один раз написать в терминале waydroid init

  • Запустить weston
  • В его терминале написать waydroid session start &
  • Потом waydroid show-full-ui

На weston всё работает сразу как надо. Но стоит изменить размеры окна, как waydroid ui пропадает. Приходится стопать и по новой запускать отображение

Иконки

Искать иконки для nerd шрифта можно тут.

Соберу сюда список nerd иконок, которые могут пригодиться. Для их отображения нужен специальный шрифт

CPU (мб не юзать, а писать текстом и cpu и gpu) - 

RAM - 

CapsLock - 󰪛

Клавиатура -  или 󰌌

Громкость -   

Яркость - 󰃟 󰃞 󰃝

Календарь -   󰸗

Выключение пк - ⏻ 󰐥 

Приложения -  󰀻  󰵆

Блютуз -  󰂯 󰂲 󰥰 󰦋 󰏳 󰦢 󰗾 󰗿

Network - 󰈀  󰒍

Clipboard -   󱉧 

Оповещения (bell) - 󰀦  󰀧 󰀨 󰅉 󰨱 󰵙  󰂚    

Reload - 󰑓 󱄋

Wifi  󰖩 󱚵 󱚽 󱚼 󰖪 󱛄 󰤭 󰤨 󰤥 󰤢 󰤟 󰤯 󰤫 󰤮

Батарейки      󰁹 󰂂 󰂁 󰂀 󰁿 󰁾 󰁽 󰁼 󰁻 󰁺 󰂎 󱊣 󱊢 󱊡 󰂎 󰂃 󱉝 󰂑

Батарейки зарядка 󰂅 󰂋 󰂊 󰢞 󰂉 󰢝 󰂈 󰂇 󰂆 󰢜 󰢟 󱊦 󱊥 󱊤 󰢟 󰂄

Батарейки блютуз 󰥈 󰥆 󰥅 󰥄 󰥃 󰥂 󰥁 󰥀 󰤿 󰤾 󰥇 󰥊 󰥉

Температура 󰔄 - Температура по цельсию       

Темы

У меня в vscode отображаются цвета. Так что я для себя сохраню разные варианты gruvbox

Цвет это имя цвета в stylix. Потом идёт название gruvbox-вариант

Я использую gruvbox-dark-medium

Цвет dark-hard dark-medium dark-pale dark-soft material-dark-hard material-dark-medium material-dark-soft
base00 #1d2021 #282828 #262626 #32302f #202020 #292828 #32302f
base01 #3c3836 #3c3836 #3a3a3a #3c3836 #2a2827 #32302f #3c3836
base02 #504945 #504945 #4e4e4e #504945 #504945 #504945 #5a524c
base03 #665c54 #665c54 #8a8a8a #665c54 #5a524c #665c54 #7c6f64
base04 #bdae93 #bdae93 #949494 #bdae93 #bdae93 #bdae93 #bdae93
base05 #d5c4a1 #d5c4a1 #dab997 #d5c4a1 #ddc7a1 #ddc7a1 #ddc7a1
base06 #ebdbb2 #ebdbb2 #d5c4a1 #ebdbb2 #ebdbb2 #ebdbb2 #ebdbb2
base07 #fbf1c7 #fbf1c7 #ebdbb2 #fbf1c7 #fbf1c7 #fbf1c7 #fbf1c7
base08 #fb4934 #fb4934 #d75f5f #fb4934 #ea6962 #ea6962 #ea6962
base09 #fe8019 #fe8019 #ff8700 #fe8019 #e78a4e #e78a4e #e78a4e
base0A #fabd2f #fabd2f #ffaf00 #fabd2f #d8a657 #d8a657 #d8a657
base0B #b8bb26 #b8bb26 #afaf00 #b8bb26 #a9b665 #a9b665 #a9b665
base0C #8ec07c #8ec07c #85ad85 #8ec07c #89b482 #89b482 #89b482
base0D #83a598 #83a598 #83adad #83a598 #7daea3 #7daea3 #7daea3
base0E #d3869b #d3869b #d485ad #d3869b #d3869b #d3869b #d3869b
base0F #d65d0e #d65d0e #d65d0e #d65d0e #bd6f3e #bd6f3e #bd6f3e

Сравнение цветов моей темы gruvbox с другими темами

Цвет gruvbox-d-m onedark nord catppuccin-mocha catppuccin-latte rose-pine rose-pine-moon tokyo-night-moon everforest dracula
base00 #282828 #282c34 #2E3440 #1e1e2e #eff1f5 #191724 #232136 #222436 #2d353b #282a36
base01 #3c3836 #353b45 #3B4252 #181825 #e6e9ef #1f1d2e #2a273f #1e2030 #343f44 #363447
base02 #504945 #3e4451 #434C5E #313244 #ccd0da #26233a #393552 #2d3f76 #475258 #44475a
base03 #665c54 #545862 #4C566A #45475a #bcc0cc #6e6a86 #6e6a86 #636da6 #859289 #6272a4
base04 #bdae93 #565c64 #D8DEE9 #585b70 #acb0be #908caa #908caa #828bb8 #9da9a0 #9ea8c7
base05 #d5c4a1 #abb2bf #E5E9F0 #cdd6f4 #4c4f69 #e0def4 #e0def4 #3b4261 #d3c6aa #f8f8f2
base06 #ebdbb2 #b6bdca #ECEFF4 #f5e0dc #dc8a78 #e0def4 #e0def4 #828bb8 #e6e2cc #f0f1f4
base07 #fbf1c7 #c8ccd4 #8FBCBB #b4befe #7287fd #524f67 #56526e #c8d3f5 #fdf6e3 #ffffff
base08 #fb4934 #e06c75 #BF616A #f38ba8 #d20f39 #eb6f92 #eb6f92 #ff757f #e67e80 #ff5555
base09 #fe8019 #d19a66 #D08770 #fab387 #fe640b #f6c177 #f6c177 #ffc777 #e69875 #ffb86c
base0A #fabd2f #e5c07b #EBCB8B #f9e2af #df8e1d #ebbcba #ea9a97 #ffc777 #dbbc7f #f1fa8c
base0B #b8bb26 #98c379 #A3BE8C #a6e3a1 #40a02b #31748f #3e8fb0 #c3e88d #a7c080 #50fa7b
base0C #8ec07c #56b6c2 #88C0D0 #94e2d5 #179299 #9ccfd8 #9ccfd8 #86e1fc #83c092 #8be9fd
base0D #83a598 #61afef #81A1C1 #89b4fa #1e66f5 #c4a7e7 #c4a7e7 #82aaff #7fbbb3 #80bfff
base0E #d3869b #c678dd #B48EAD #cba6f7 #8839ef #f6c177 #f6c177 #fca7ea #d699b6 #ff79c6
base0F #d65d0e #be5046 #5E81AC #f2cdcd #dd7878 #524f67 #56526e #c53b53 #9da9a0 #bd93f9

Цветовая схема Base16 используется для унификации цветовых тем в разных приложениях. Она определяет 16 базовых цветов, каждый из которых играет определённую роль. Вот основные цвета и их назначения:

  • Base00 Background: Основной фоновый цвет.
  • Base01 Lighter Background: Более светлый цвет для фона, часто используется для элементов вроде выделенных областей.
  • Base02 Selection Background: Цвет фона выделений, обычно для текста или других активных областей.
  • Base03 Comments/Inactive Text: Цвет для комментариев или неактивного текста, обычно более тусклый или нейтральный.
  • Base04 Dark Foreground: Тёмный текст на светлом фоне или для элементов UI.
  • Base05 Default Foreground: Основной цвет текста.
  • Base06 Light Foreground: Более светлый текст, используется на более тёмных элементах.
  • Base07 Light Background/Foreground Accent: Самый светлый цвет, часто используется для акцентированных областей или фона текста.
  • Base08 Variables/Errors: Акцентный цвет для переменных или ошибок. Часто красный.
  • Base09 Integers/Warnings: Используется для целых чисел или предупреждений. Оранжевый.
  • Base0A Booleans/Keys: Акцентный цвет для логических значений или ключей. Жёлтый.
  • Base0B Strings/Success: Цвет для строк или успешных операций. Зелёный.
  • Base0C Support/Functions: Цвет для поддерживающих элементов, функций или специальных значений. Бирюзовый.
  • Base0D Keywords/Declarations: Используется для ключевых слов или деклараций. Синий.
  • Base0E Class Names/Constructors: Акцентный цвет для имён классов или конструкторов. Фиолетовый.
  • Base0F Deprecated Elements/Exceptions: Обычно используется для устаревших элементов или исключений. Коричневый.

Эти цвета обеспечивают чёткую структуру для создания тем, где легко отличить синтаксические элементы или UI-компоненты.