From ad2e06c07b28e455b22a1f5fedab61cb98d063c6 Mon Sep 17 00:00:00 2001 From: Buliway Date: Mon, 19 Jan 2026 03:54:44 +0300 Subject: [PATCH] Refactor packages.nix --- modules/home-manager/wm/bspwm/bspwm.nix | 1 + nixos/packages.nix | 205 +++++++++++------------- 2 files changed, 91 insertions(+), 115 deletions(-) diff --git a/modules/home-manager/wm/bspwm/bspwm.nix b/modules/home-manager/wm/bspwm/bspwm.nix index 89673b5..6d31050 100644 --- a/modules/home-manager/wm/bspwm/bspwm.nix +++ b/modules/home-manager/wm/bspwm/bspwm.nix @@ -22,6 +22,7 @@ # "lxqt-policykit-agent" # Заменил на гномовский "sxhkd" "nm-applet" # Нетворк манагер + # "blueman-applet" # Блютуз в трее "ksnip" "xset s off -dpms" # Отменить затухание экрана через X минут "spice-vdagent" # Для виртуалки diff --git a/nixos/packages.nix b/nixos/packages.nix index cb07ba7..6999168 100644 --- a/nixos/packages.nix +++ b/nixos/packages.nix @@ -1,4 +1,4 @@ -{ pkgs, pkgs2, spkgs, inputs, ... }: { +{ pkgs, pkgs2, spkgs, ... }: { # https://nixos.wiki/wiki/Fonts fonts.packages = with pkgs; [ @@ -132,10 +132,6 @@ # Оптимизация для игр. https://github.com/FeralInteractive/gamemode gamemode.enable = true; - # Я хз надо ли оно мне. https://github.com/ValveSoftware/gamescope - # Подробносни тут https://ventureo.codeberg.page/source/linux-gaming.html#gamescope - # gamescope.enable = true; - adb.enable = true; # Android Tools }; @@ -145,62 +141,53 @@ ## Программирование ## ###################### + neovim + # Это рекомендуют ставить не на всю систему, # а только на nix shell внутри проекта, где нужны эти пакеты # Но я хочу на всю систему # Python - python3 # Python last version - python3Packages.pip # Python package manager (nvim его не видит) + python3 + python3Packages.pip # Package manager (nvim его не видит) python3Packages.debugpy # Debug Adapter Protocol for Python - pyright # Python LSP - ruff # Extremely fast Python linter + pyright # LSP + ruff # Linter # C/C++ - # clang-tools # Clangd? LSP - # ccls # C/C++ LSP - # clang # Компилятор - # gcc # Компилятор - # glibc # GNU C Library - # gnumake # ? - # cmake-language-server # CMake LSP - # cmake # ? - # bear # Tool that generates a compilation database for clang tooling - # boost # Collection of C++ libraries + clang-tools # Clangd? LSP # Rust rust-analyzer # Rust LSP (rustup component add rust-analyzer) # Golang - go # Go programming language - gopls # Go LSP - delve # Go debugger - templ # A language for writing HTML user interfaces in Go. - golangci-lint # Fast linters Runner for Go + go + gopls # LSP + delve # Debugger + golangci-lint # Linter # Nix - nixd # Nix LSP. Нет в mason + nixd # LSP # Lua - lua5_1 # Scripting language + lua5_1 luajit # JIT compiler for Lua - luajitPackages.luarocks # Package manager for lua - lua-language-server # Lua LSP - stylua # Lua formatter + luajitPackages.luarocks # Package manager + lua-language-server # LSP + stylua # Formatter # Shell/Bash - bash-language-server # Basp LSP + bash-language-server # LSP shellcheck # Проверка shell скриптов на ошибки shfmt # Shell parser and formatter # SQL - sqls # SQL LSP + sqls # LSP sqlite dbeaver-bin # Frontend nodejs_24 # For npm - htmx-lsp # HTMX lsp emmet-language-server # Emmet.io LSP vscode-langservers-extracted # HTML/CSS/JSON/ESLint LSP typescript-language-server # TypeScript LSP @@ -226,17 +213,16 @@ # kubernetes-helm # Package manager for kubernetes # Other - # hugo # Для моего блога + gnumake + cmake-language-server + cmake + spkgs.hugo # Для моего блога yaml-language-server # YAML LSP taplo # TOML LSP vim-language-server # VimScript LSP - # go-migrate # Database migrations. CLI and Golang library # postman # API Development Environment # insomnia - # Nushell - # nushell # Modern shell - # For nvim tree-sitter # For nvim ripgrep # For nvim @@ -261,53 +247,49 @@ wget curl git - gitui # Git TUI - xclip # Буфер обмена - ffmpeg_7 # Обработка видео. Нужен всегда и везде как зависимость - svt-av1 # Кодек для рендера в av1 на проце - # imlib2Full # Image manipulation library - imagemagick # Обработка изображений. Мб тоже нужен всегда + tree + xdg-utils + httpie + jq + libxml2 + miller + htmlq + usbutils + f2fs-tools + exfat + gitui + pwgen + lm_sensors + exiftool + xclip # Буфер обмена на X11 + ffmpeg_7 # Обработка видео + svt-av1 # Быстрый рендер в av1 на проце + imagemagick # Конвертация картинок vips # В 4 раза быстрее imagemagick? - tree # Структура файлов в терминале - gnugrep # Поиск в терминале - gawk # Обработка и анализ текста в терминале + gnugrep # Поиск в терминале (grep) + gawk # Обработка и анализ текста в терминале (awk) rsync # Синхронизация файлов bat # Аналог cat с подсветкой синтаксиса xorg.xwininfo # Команда xprop. Статы окна, по типу класса xorg.xrandr # Управление мониторами xorg.xev # Узнать айдишник бинда - xdg-utils # Set of command line tools that assist applications with a variety of desktop integration tasks playerctl # Управление медиа. Плей/пауза и тд xdotool # Fake keyboard/mouse input. Для rofi-pass - # zscroll # A text scroller for use with panels and shells https://github.com/noctuid/zscroll tokei # Количество строк кода на разных языках в каталоге pass # Менеджер паролей в терминале - amdgpu_top # Tool to display AMD GPU usage btop # Монитор ресурсов в терминале - rocmPackages.rocm-smi # Чтоб в btop было gpu (не работает) + rocmPackages.rocm-smi # Чтоб в btop было amd gpu? rocmPackages.rocblas # Для работы hip? rocmPackages.hipblas # Для работы hip? rocmPackages.clr # Для работы hip? - pkgs2.yt-dlp # Скачивать и смотреть медиа с разных сайтов - timer # A "sleep" with progress. Таймер на пельмени "timer 5m" - libqalculate # Advanced calculator library + timer # Таймер на пельмени "timer 5m" + libqalculate # Калькулятор для rofi fastfetch # Пишешь в теримнал и кидаешь всем со словами I use nixos btw fzf # Нечёткий поиск - killall # Убить процессы. Мем, что в стоке не стоит + killall # Убить процессы libnotify # Вызов оповещений через "notify-send" + pkgs2.yt-dlp # Скачивать и смотреть медиа с разных сайтов pkgs2.gallery-dl # Качать много картинок с кучи разных сайтов - shellcheck # Проверка shell скриптов на ошибки - pwgen # Генератор паролей - lm_sensors # Сенсоры - httpie # interacting with APIs & HTTP servers - jq # Cli JSON processor - libxml2 # XML parsing library for C - miller # Like awk, sed, cut, join, and sort for data formats such as CSV, TSV, JSON, JSON Lines, and positionally-indexed - # htmlq # Как jq, но для html. Извлекать конкретные элементы из html - # mkvtoolnix-cli # Cross-platform tools for Matroska - usbutils # lsusb - f2fs-tools # f2fs filesystem - exfat # exFAT filesystem alacritty # Минималистичный терминал. Основной у меня kitty # Самый быстрый протокол отображения медиа, но ssh через жопу работает @@ -316,15 +298,14 @@ ## GUI ## ######### - ksnip # Скрины. Аналоги - Flameshot + ksnip # Скрины. Аналог - Flameshot file-roller # Архиватор от gnome qbittorrent # Торренты качать # thunderbird # Почтовый клиент для своей почты - # screenkey # A screencast tool to display your keys - pavucontrol # PulseAudio Volume Control - # pwvucontrol # Pipewire Volume Control (Не знаю может ли полностью заменить pavucontrol) + pavucontrol + # pwvucontrol # Замена pavucontrol для PipeWire networkmanagerapplet # Tray for network manager - # brightnessctl # Brightness control for laptop + # brightnessctl # gucharmap # Проверка шрифтов. Какой шрифт какие символы отображает ############## @@ -341,64 +322,64 @@ ########## evince # Смотреть документы (так же превью PDF файлов для Thunar) (не читает FB2) - # papers # Я так понимаю это современная замена для evince под GTK4. Оба от gnome + # papers # Современная замена для evince под GTK4. Оба от gnome libreoffice # Редактировать документы hunspell # Проверка орфографии для libreoffice hunspellDicts.ru_RU # Словарь для проверки орфографии hunspellDicts.en_US # Словарь для проверки орфографии calibre # Работа с ebook. Иногда даёт thumbnail в файловом менеджере # drawio # Desktop application for creating diagrams. Вроде даёт thumbnail в ranger - spkgs.xournalpp # Xournal++ is a handwriting Notetaking software with PDF annotation support + spkgs.xournalpp ################### ## File managers ## ################### - ranger # Terminal file manager + ranger xfce.thunar # GUI file manager (допы выше в `programs` и `services`) xfce.catfish # File searching (for Thunar) xfce4-exo # Мб надо, чтоб терминал открывать в каталоге - ffmpegthumbnailer # A lightweight video thumbnailer - gnome-epub-thumbnailer # Thumbnailer for EPub and MOBI books + ffmpegthumbnailer + gnome-epub-thumbnailer # nufraw-thumbnailer # Thumbnailer for .raw images from digital cameras - # mcomix # Comic book reader and image viewer. Thumbnailer for .crb comicbook archives (требует mupdf, который крашит систему) - f3d # Fast and minimalist 3D viewer using VTK. Thumbnailer for 3D files, including glTF, stl, step, ply, obj, fbx. - openscad # 3D model previews (stl, off, dxf, scad, csg). Этот именно для ranger, но мб пригодится и в других местах + # mcomix # Thumbnailer for .crb comicbook archives (требует mupdf, который крашит систему) + f3d # Thumbnailer for 3D files, including glTF, stl, step, ply, obj, fbx. + openscad # 3D model previews (stl, off, dxf, scad, csg). Этот именно для ranger ################## ## File support ## ################## - kdePackages.kimageformats # Image format plugins for Qt 6 + kdePackages.kimageformats # Image format plugins for Qt spkgs.libsForQt5.kimageformats - kdePackages.qtimageformats # Plugins for additional image formats: TIFF, MNG, TGA, WBMP + kdePackages.qtimageformats # Image formats: TIFF, MNG, TGA, WBMP spkgs.libsForQt5.qt5.qtimageformats - kdePackages.qtsvg # SVG support + kdePackages.qtsvg kdePackages.karchive # Plugin for Krita and OpenRaster images - webp-pixbuf-loader # .webp support (what's this?) - gdk-pixbuf.dev # Library for image loading and manipulation - libwebp # .webp support - libavif # AVIF format support - libheif # HEIF format support + webp-pixbuf-loader + gdk-pixbuf.dev + libwebp + libavif + libheif libgsf # .odf support - libjxl # JPEG-XL format support - libraw # RAW format support - librsvg # Small library to render SVG images to Cairo surfaces - jxrlib # JPEG XR image support + libjxl + libraw + librsvg + jxrlib poppler # PDF support - freetype # Font rendering engine - imath # EXR format support - openexr # High dynamic-range (HDR) image file format + freetype + imath + openexr ########### ## Media ## ########### - strawberry # Музыкальный плеер - obs-studio # Запись видео + strawberry + obs-studio picard # Массовый редактор метаданных музыки mousai # Опенсорс шазам. Со временем просит платный api - spek # Спектрограмма аудио. + spek # Спектрограмма аудио mpv # Смотреть видео qview # Смотреть картинки. Умеет открывать всё, включая анимированный webp и avif @@ -406,11 +387,10 @@ ## Social ## ############ - # (pkgs2.discord.override { # Discord - # # withOpenASAR = true; # Оптимизатор дискрода - # withVencord = true; # Имба плагины - # }) - pkgs2.discord + (pkgs2.discord.override { + withVencord = true; + }) + # pkgs2.discord pkgs2.vesktop pkgs2.telegram-desktop @@ -419,16 +399,17 @@ ########### lutris # Запускать .exe игры. Не всё через `wine game.exe` работает на nixos нормально + sidequest # Ставить APK файлы на Oculus Quest 2 + bs-manager # Удобно ставить моды и менять версии Beat Saber - # Мб зависимости - protonup-qt # Управлять версиями proton-ge? + protonup-qt # Управлять версиями proton-ge steam-run # Запуск бинарей в окружении, похожем на steam runtime mangohud # Фпс и нагрузку на пк показывает в играх wineWowPackages.stableFull # support both 32- and 64-bit applications # wineWowPackages.staging # Можно назвать бета версией вайна - winetricks # winetricks (all versions) + winetricks # wineWowPackages.waylandFull # native wayland support (unstable) - # protontricks # Running Winetricks commands for Proton-enabled games + # protontricks ############ ## Design ## @@ -446,14 +427,9 @@ ################## obsidian # Заметки - spkgs.planify # Task manager - pkgs2.ticktick # Powerful to-do app, proprietary - - ######### - ## IDE ## - ######### - - neovim + spkgs.planify # Таски + pkgs2.super-productivity # Таски + pkgs2.ticktick # Таски, proprietary ########### ## Icons ## @@ -488,7 +464,6 @@ # vial # GUI для qmk, если клавиатура поддерживает fontconfig zlib - # google-fonts libva-utils # Проверяет работоспособность VAAPI? clinfo # Проверяет работоспособность OpenCL? libsecret # Хранить и получать аккаунты у приложений. Например для jetbrains toolbox