297 lines
No EOL
15 KiB
Nix
297 lines
No EOL
15 KiB
Nix
{ pkgs, ... }: {
|
||
|
||
nixpkgs.config.allowUnfree = true;
|
||
|
||
services = {
|
||
gvfs.enable = true; # Mount, trash, and other functionalities for Thunar file manager
|
||
tumbler.enable = true; # Thumbnail support for Thunar file manager
|
||
unclutter.enable = true; # Enable unclutter to hide your mouse cursor when inactive
|
||
# greenclip.enable = true; # https://github.com/erebe/greenclip (использую clipmenu вместо этого)
|
||
openssh.enable = true; # Потом удали. Это ставится на виртуалку, чтоб к ней конект по ssh работал.
|
||
spice-vdagentd.enable = true; # Общий буфер обмена с виртуалкой
|
||
# fstrim.enable = true; # Чистит ssd для норм производительности. Пока не пользуюсь
|
||
# archisteamfarm = {}; # Фарм карточек стима афк. Простро раскомментить мало, надо настроить
|
||
};
|
||
|
||
programs = {
|
||
mtr.enable = true; # Объединяет функции утилит traceroute и ping
|
||
gnupg.agent = {
|
||
enable = true;
|
||
enableSSHSupport = true;
|
||
};
|
||
|
||
thunar = { # Can't I use it with home-manager? WTF
|
||
enable = true;
|
||
plugins = with pkgs.xfce; [
|
||
thunar-media-tags-plugin # Thunar plugin providing tagging and renaming features for media files
|
||
thunar-archive-plugin # Thunar plugin providing file context menus for archives
|
||
thunar-volman # Thunar extension for automatic management of removable drives and media
|
||
];
|
||
};
|
||
xfconf.enable = true; # For Thunar configs
|
||
|
||
# Параметры запуска для игр, чтоб юзать все доступные бафы, что я сделал
|
||
# Параметр запуска без использования gamescope:
|
||
# mangohud gamemoderun %command%
|
||
# Параметр запуска с использованием gamescop:
|
||
# gamescope --mangoapp gamemoderun %command%
|
||
# Если надо печатать на русском языке, то добавать в начало LC_ALL="ru_RU.UTF-8"
|
||
# FSR в proton-ge включается только в фулскрине через WINE_FULLSCREEN_FSR=1
|
||
# Регулировать резкость можно через переменную окружения WINE_FULLSCREEN_FSR_STRENGTH=N,
|
||
# где N - это уровень резкости изображения от 0 до 5. Чем выше значение, тем меньше резкость.
|
||
# По умолчанию установлено значение "2", рекомендуют использовать значение "3".
|
||
steam = {
|
||
enable = true;
|
||
extraCompatPackages = with pkgs; [ # Доп версии протона. Должны иметь `steamcompattool` output
|
||
proton-ge-bin
|
||
];
|
||
# fontPackages = with pkgs; []; # Font packages to use in Steam
|
||
# extraPackages = with pkgs; []; # Additional
|
||
# protontricks.enable = true; # Running Winetricks commands for Proton-enabled games.
|
||
# remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
|
||
# dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
|
||
# localNetworkGameTransfers.openFirewall = true; # Open ports in the firewall for Steam Local Network Game Transfers
|
||
|
||
# Я хз надо ли оно мне. https://github.com/ValveSoftware/gamescope
|
||
# Помню как на Hyprland пытался этим fsr включить.
|
||
# Качество картинки было таким, будто я головой в анус залез
|
||
# Подробносни тут https://ventureo.codeberg.page/source/linux-gaming.html#gamescope
|
||
gamescopeSession = { # Run a GameScope driven Steam session from your display-manager
|
||
enable = true;
|
||
# args = []; # Arguments to be passed to GameScope for the session.
|
||
# env = {}; # Environmental variables to be passed to GameScope for the session.
|
||
};
|
||
|
||
# package = pkgs.steam.override {
|
||
# extraEnv = {
|
||
# MANGOHUD = true;
|
||
# OBS_VKCAPTURE = true;
|
||
# # RADV_TEX_ANISO = 16; # Улучшает качество текстур с драйвером radv?
|
||
# };
|
||
# extraPkgs = pkgs: with pkgs; [
|
||
# xorg.libXcursor xorg.libXi xorg.libXinerama xorg.libXScrnSaver
|
||
# libpng libpulseaudio libvorbis stdenv.cc.cc.lib
|
||
# libkrb5 keyutils
|
||
# ];
|
||
# extraLibraries = p: with p; [ atk ]; # почему тут with p, а не pkgs?
|
||
# extraLibraries = pkgs: with pkgs; [ gperftools pkgsi686Linux.gperftools ];
|
||
# };
|
||
};
|
||
|
||
# Оптимизация для игр. https://github.com/FeralInteractive/gamemode
|
||
gamemode.enable = true;
|
||
};
|
||
|
||
# Многое из этого продублировано в home-manager. Мне так удобней
|
||
environment.systemPackages = with pkgs; [
|
||
|
||
######################
|
||
## Программирование ##
|
||
######################
|
||
|
||
# Это рекомендуют ставить не на всю систему,
|
||
# а только на nix shell внутри проекта, где нужны эти пакеты
|
||
|
||
go # Go programming language
|
||
rustup # Управление версиями языка Rust
|
||
nil # Nix language server
|
||
hugo # Для моего блога
|
||
|
||
############
|
||
## Архивы ##
|
||
############
|
||
|
||
zip # Архивировать
|
||
unzip # Разархивировать
|
||
unrar # Разархивировать
|
||
gnutar # Для .tar?
|
||
_7zz # Это пакет для 7z?
|
||
bzip2 # .bz2 архивы
|
||
|
||
##############
|
||
## Terminal ##
|
||
##############
|
||
|
||
wget
|
||
curl
|
||
git
|
||
python
|
||
xclip # Для работы буфера обмена
|
||
ffmpeg_7 # Обработка видео. Нужен всегда и везде
|
||
imagemagick # Обработка изображений. Мб тоже нужен всегда
|
||
tree # Структура файлов в терминале
|
||
gnugrep # Поиск в терминале
|
||
gawk # Обработка и анализ текста в терминале
|
||
rsync # Синхронизация файлов
|
||
bat # A cat(1) clone with syntax highlighting and Git integration.
|
||
xorg.xwininfo # Для команды xprop?
|
||
xorg.xrandr # Для команды xrandr
|
||
xdg-utils # Set of command line tools that assist applications with a variety of desktop integration tasks
|
||
feh # Смотреть изображения. Вроде нужен в большом количестве софта как зависимость
|
||
playerctl # Command-line utility and library for controlling media players that implement MPRIS
|
||
xdotool # Fake keyboard/mouse input, window management, and more. Автоматизация
|
||
zscroll # A text scroller for use with panels and shells https://github.com/noctuid/zscroll
|
||
tokei # Показывает количество строк кода на разных языках внутри каталога
|
||
pass # Менеджер паролей в терминале
|
||
btop # Монитор ресурсов в терминале
|
||
yt-dlp # Скачивать и смотреть медиа с разных сайтов
|
||
tasktimer # TUI task timer. Можно несколько таймеров с описанием запустить
|
||
timer # A "sleep" with progress. Таймер на пельмени "timer 5m"
|
||
libqalculate # Advanced calculator library
|
||
fastfetch # Пишешь в теримнал и кидаешь всем со словами I use nixos btw
|
||
# zsh-nix-shell # zsh plugin that lets you use zsh in nix-shell shell
|
||
|
||
alacritty # Минималистичный терминал. Основной у меня
|
||
kitty # Самый быстрый протокол отображения медиа, но ssh через жопу работает
|
||
|
||
#########
|
||
## GUI ##
|
||
#########
|
||
|
||
nekoray # VPN # TODO: Настройки надо сделать декларативными
|
||
ksnip # Скрины. Аналоги - Flameshot # TODO: Настройки надо сделать декларативными
|
||
kdePackages.ark # Архиватор
|
||
qbittorrent # Торренты качать
|
||
thunderbird # Почтовый клиент для своей почты
|
||
screenkey # A screencast tool to display your keys
|
||
pavucontrol # PulseAudio Volume Control
|
||
# pwvucontrol # Pipewire Volume Control (Не знаю может ли полностью заменить pavucontrol)
|
||
networkmanagerapplet # Tray for network manager
|
||
brightnessctl # Brightness control for laptop
|
||
gcolor3 # GUI color picker
|
||
xcolor # CLI color picker https://github.com/Soft/xcolor
|
||
# goverlay # UI для редактирования конфигов. Мне для mangohud нужен
|
||
|
||
##############
|
||
## Browsers ##
|
||
##############
|
||
|
||
librewolf
|
||
firefox
|
||
chromium
|
||
ff2mpv # Open online videos in mpv
|
||
lynx # Текстовый браузер в терминале. Без картинок
|
||
|
||
##########
|
||
## Docs ##
|
||
##########
|
||
|
||
evince # Смотреть документы (так же превью PDF файлов для Thunar) (не читает FB2)
|
||
# papers # Я так понимаю это современная замена для evince под GTK4. Оба от gnome
|
||
libreoffice # Редактировать документы
|
||
hunspell # Проверка орфографии для libreoffice
|
||
hunspellDicts.ru_RU # Словарь для проверки орфографии
|
||
hunspellDicts.en_EN # Словарь для проверки орфографии
|
||
calibre # Работа с ebook. Иногда даёт thumbnail в файловом менеджере
|
||
drawio # Desktop application for creating diagrams. Вроде даёт thumbnail в ranger
|
||
|
||
###################
|
||
## File managers ##
|
||
###################
|
||
|
||
yazi # Terminal file manager
|
||
ranger # Terminal file manager
|
||
xfce.thunar # GUI file manager (допы выше в `programs` и `services`)
|
||
xfce.catfish # File searching (for Thunar)
|
||
ffmpegthumbnailer # A lightweight video thumbnailer
|
||
gnome-epub-thumbnailer # Thumbnailer for EPub and MOBI books
|
||
nufraw-thumbnailer # Thumbnailer for .raw images from digital cameras
|
||
mcomix # Comic book reader and image viewer. Thumbnailer for .crb comicbook archives
|
||
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, но мб пригодится и в других местах
|
||
|
||
##################
|
||
## File support ##
|
||
##################
|
||
|
||
kdePackages.kimageformats # Image format plugins for Qt 6
|
||
kdePackages.qtimageformats # Plugins for additional image formats: TIFF, MNG, TGA, WBMP
|
||
kdePackages.qtsvg # SVG support
|
||
kdePackages.karchive # Plugin for Krita and OpenRaster images
|
||
webp-pixbuf-loader # .webp support (what's this?)
|
||
libwebp # .webp support
|
||
libavif # AVIF format support
|
||
libheif # HEIF format support
|
||
libgsf # .odf support
|
||
libjxl # JPEG-XL format support
|
||
libraw # RAW format support
|
||
jxrlib # JPEG XR image support
|
||
poppler # PDF support
|
||
freetype # Font rendering engine
|
||
imath # EXR format support
|
||
openexr # High dynamic-range (HDR) image file format
|
||
|
||
###########
|
||
## Media ##
|
||
###########
|
||
|
||
strawberry # Музыкальный плеер # TODO: Настройки надо сделать декларативными
|
||
obs-studio # Запись видео # TODO: Настройки надо сделать декларативными
|
||
picard # Массовый редактор метаданных музыки
|
||
mousai # Опенсорс шазам. Со временем просит платный api
|
||
spek # Спектрограмма аудио.
|
||
mpv # Смотреть видео
|
||
imv # Смотреть картинки 1. Не умеет показывать анимированные webp
|
||
qview # Смотреть картинки 2. Если imv не может что-то открыть
|
||
viewnior # До перехода на wayland юзал его. Если сортирует лучше imv, то удалить imv
|
||
|
||
############
|
||
## Social ##
|
||
############
|
||
|
||
(pkgs.discord.override { # Discord
|
||
withOpenASAR = true; # Оптимизатор дискрода?
|
||
withVencord = true; # Имба плагины # TODO: Настройки надо сделать декларативными
|
||
})
|
||
telegram-desktop
|
||
|
||
###########
|
||
## Games ##
|
||
###########
|
||
|
||
# steam # Мб не надо сюда писать, раз через programs.steam редачу
|
||
# inputs.nix-gaming.packages.${pkgs.system}.osu-stable # osu!stable from nix-gaming
|
||
# heroic # A Native GOG, Epic, and Amazon Games Launcher for Linux, Windows and Mac
|
||
# lutris # Запускать игры не из стима
|
||
bottles # Минималистичная альтернатива lutris
|
||
|
||
############
|
||
## Design ##
|
||
############
|
||
|
||
krita # Рисовать 1. Часто крашится
|
||
gimp # Рисовать 2. Потом выберу что оставить
|
||
blender-hip # 3д графика и рендер видео
|
||
|
||
##################
|
||
## Productivity ##
|
||
##################
|
||
|
||
obsidian # Заметки
|
||
planify # Task manager
|
||
|
||
#########
|
||
## IDE ##
|
||
#########
|
||
|
||
# neovim # Мб не надо писать, он у меня необычный через nixvim flake
|
||
vscode # Мб надо в home.packages писать, чтоб расширения ставились без рута
|
||
# vscodium # VSCode без телеметрии и прочего кала. Не имеет обратной совместимости с расширениями vscode
|
||
jetbrains-toolbox # Если геморрой, то качай IDE отдельно https://nixos.wiki/wiki/Jetbrains_Tools
|
||
# jetbrains.webstorm
|
||
# jetbrains.rust-rover
|
||
# jetbrains.pycharm-professional
|
||
# jetbrains.goland
|
||
# jetbrains.clion
|
||
helix # A Kakoune / Neovim inspired editor, written in Rust.
|
||
|
||
###########
|
||
## Other ##
|
||
###########
|
||
|
||
qmk # Прошивка для моих раздельных клавиатур
|
||
vial # GUI для qmk, если клавиатура поддерживает
|
||
|
||
];
|
||
|
||
} |