diff --git a/README.md b/README.md index cec8ae4..3a7a1ee 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,5 @@ +В итоге этот конфиг теперь не для всех. На x11 приходится хардкодить размеры в пикселях под мой 4к монитор, это создаст кучу проблем для юзеров обычных мониторов. [Новый конфиг](https://git.buliway.ru/buliway/nixos-dots/) будет на wayland (sway+hyprland), который нормально работает со скейлом (хотя XWayland всё ещё может ебать мозги, посмотрим), его я постараюсь сделать почти универсальным + ## ВАЖНО В моём [видео](https://youtu.be/dzWo6Pji-7U) использовалась старая версия конфига, которая теперь находится в ветке [old-video](https://git.buliway.ru/buliway/nixos-private-dots/src/branch/old-video). Новая версия конфига просто обновлена с ядра 6.12 до ядра 6.18, спустя более года без изменений. За это время изменились многие параметры NixOS и немного изменился процесс установки моего конфига. Так что советую ставить конфиг по инструкции ниже, а не повторять за видео @@ -8,7 +10,7 @@ mv ~/.config/qt6ct/qt6ct.conf ~/.config/qt6ct/qt6ct.conf.bak mv ~/.config/qt5ct/qt5ct.conf ~/.config/qt5ct/qt5ct.conf.bak mv ~/.config/Kvantum/kvantum.kvconfig ~/.config/Kvantum/kvantum.kvconfig.bak ``` -Если крашит `ranger`, то в терминел `rm ~/.local/share/ranger/bookmarks`. Это удалит закладки. Сохрани их, если там есть что-то полезное. +Если крашит `ranger`, то в терминал `rm ~/.local/share/ranger/bookmarks`. Это удалит закладки. Сохрани их, если там есть что-то полезное. ## Другие README файлы в этих дотсах diff --git a/THEMES.md b/THEMES.md index de3e423..b3b0496 100644 --- a/THEMES.md +++ b/THEMES.md @@ -5,7 +5,26 @@ Цвет это имя цвета в stylix. Потом идёт название gruvbox-вариант -Я использую gruvbox-dark-medium +Я использую ~~gruvbox-dark-medium~~ rose pine dawn + +``` + base00: "#faf4ed" + base01: "#fffaf3" + base02: "#f2e9de" + base03: "#9893a5" + base04: "#797593" + base05: "#575279" + base06: "#575279" + base07: "#cecacd" + base08: "#b4637a" + base09: "#ea9d34" + base0A: "#d7827e" + base0B: "#286983" + base0C: "#56949f" + base0D: "#907aa9" + base0E: "#ea9d34" + base0F: "#cecacd" +``` |Цвет |dark-hard|dark-medium|dark-pale|dark-soft|material-dark-hard|material-dark-medium|material-dark-soft| |------|---------|-----------|---------|---------|------------------|--------------------|------------------| diff --git a/modules/home-manager/bundle.nix b/modules/home-manager/bundle.nix index d27152b..4ee7013 100644 --- a/modules/home-manager/bundle.nix +++ b/modules/home-manager/bundle.nix @@ -22,7 +22,6 @@ # Софт для работы WM на X11 ./wm/rofi/rofi.nix ./wm/dunst.nix - ./wm/lockscreen.nix # Для выключения i3 комментируй все строки ниже # ./wm/i3.nix diff --git a/modules/home-manager/wm/bspwm/bspwm.nix b/modules/home-manager/wm/bspwm/bspwm.nix index 5560ebf..5d7c244 100644 --- a/modules/home-manager/wm/bspwm/bspwm.nix +++ b/modules/home-manager/wm/bspwm/bspwm.nix @@ -25,10 +25,12 @@ startupPrograms = [ # "lxqt-policykit-agent" # Заменил на гномовский "sxhkd" - # "feh --bg-fill /home/buliway/nixos-private-dots/modules/nixos/nix-glow-gruvbox.jpg" + # "feh --bg-fill ~/nixos-private-dots/modules/nixos/nix-glow-gruvbox.jpg" + "feh --bg-fill ~/nixos-private-dots/modules/nixos/nixos4k.png" "nm-applet" # Нетворк манагер # "blueman-applet" # Блютуз в трее # "ksnip" + "flameshot" "xset s off -dpms" # Отменить затухание экрана через X минут "spice-vdagent" # Для виртуалки "systemctl --user import-environment PATH XDG_DATA_DIRS XDG_RUNTIME_DIR DISPLAY" # Фикс порталов diff --git a/modules/home-manager/wm/bspwm/polybar.nix b/modules/home-manager/wm/bspwm/polybar.nix index 18955c7..2f61337 100644 --- a/modules/home-manager/wm/bspwm/polybar.nix +++ b/modules/home-manager/wm/bspwm/polybar.nix @@ -50,7 +50,7 @@ in { # Статус бар внизу radius = 0; dpi = 0; background = config.lib.stylix.colors.base00; - foreground = config.lib.stylix.colors.base07; + foreground = config.lib.stylix.colors.base05; border-color = config.lib.stylix.colors.base00; border-size = "4pt"; module-margin = "4pt"; @@ -291,7 +291,7 @@ in { # Статус бар внизу type = "internal/xwindow"; label = "%title%"; label-maxlen = 35; - label-foreground = config.lib.stylix.colors.base07; + label-foreground = config.lib.stylix.colors.base05; }; "module/time" = { diff --git a/modules/home-manager/wm/bspwm/sxhkd.nix b/modules/home-manager/wm/bspwm/sxhkd.nix index 2d454aa..c2a1ab7 100644 --- a/modules/home-manager/wm/bspwm/sxhkd.nix +++ b/modules/home-manager/wm/bspwm/sxhkd.nix @@ -47,10 +47,6 @@ in { # super + ctrl + {m,x,y,z} # bspc node -g {marked,locked,sticky,private} - # Lock screen - super + l - betterlockscreen -l dimblur --show-layout - # Quit. Закрыть приложение super + q bspc node -c diff --git a/modules/home-manager/wm/lockscreen.nix b/modules/home-manager/wm/lockscreen.nix deleted file mode 100644 index f95eb0b..0000000 --- a/modules/home-manager/wm/lockscreen.nix +++ /dev/null @@ -1,80 +0,0 @@ -# Есть разные варианты блокировки дисплея. Надо выбрать один -# - i3lock и разные бафы для него (https://i3wm.org/i3lock/) -# В стоке должен нормально работать. Со скриптами на визуал лагает и имеет кд секунды три -# - betterlockscreen (https://github.com/betterlockscreen/betterlockscreen/) -# Бафнутый i3lock без лагов -# - slock (https://tools.suckless.org/slock/) -# Suckless soft. Simple X display locker. Минимализм - -# Есть разные варианты автоматической блокировки дисплея. Требуют блокировщик, сами им не являются -# - xautolock (https://linux.die.net/man/1/xautolock) -# Утилита для автоматической блокировки экрана через определенный промежуток времени бездействия. -# - xidlehook (https://github.com/jD91mZM2/xidlehook) -# Утилита для выполнения команд или скриптов в зависимости от времени бездействия пользователя. - - -############################################ -## Вариант 1. Используем betterlockscreen ## -############################################ - -# Чтоб задать изображение для локскрина, надо написать это: -# betterlockscreen -u путь -# Путь может быть до изображения или каталога. Если каталог, то рандомит картинку -# betterlockscreen --lock (или -l) блокирует экран и применяет указанные фильтры для картинки - -# { -# services.betterlockscreen = { -# enable = true; -# inactiveInterval = 10; # Value used for {option}services.screen-locker.inactiveInterval. -# arguments = [ # List of arguments appended to ./betterlockscreen --lock [args] -# "dimblur" -# ]; -# }; -# } - -################################################################ -## Вариант 2. Используем betterlockscreen через другой сервис ## -################################################################ - -# { pkgs, ... }: { -# services.screen-locker = { -# enable = true; - -# # Inactive time interval in minutes after which session will be locked. -# # The minimum is 1 minute, and the maximum is 1 hour. -# # If {option}xautolock.enable is true, it will use this setting. -# # Otherwise, this will be used with {command}xset to configure the X server's screensaver timeout. -# inactiveInterval = 10; - -# # Команда для запуска локсрина. Тут "-c 000000" это чёрный цвет фона -# lockCmd = "${pkgs.betterlockscreen}/bin/betterlockscreen -l dimblur"; -# }; -# } - -######################################################################## -## Вариант 3. Используем betterlockscreen через продвинутый xidlehook ## -######################################################################## - -# { pkgs, ... }: { -# services.xidlehook = { -# enable = true; -# not-when-audio = true; -# not-when-fullscreen = true; -# timers = [ -# { -# delay = 600; -# command = "${pkgs.betterlockscreen}/bin/betterlockscreen -l dimblur"; -# } -# ]; -# }; -# } - -################################################################################### -## Вариант 4. Просто скачать betterlockscreen. Без автолока. Чтоб с биндом юзать ## -################################################################################### - -{ pkgs, ... }: { - home.packages = with pkgs; [ - betterlockscreen - ]; -} diff --git a/modules/nixos/nixos4k.png b/modules/nixos/nixos4k.png new file mode 100644 index 0000000..9942239 Binary files /dev/null and b/modules/nixos/nixos4k.png differ diff --git a/modules/nixos/stylix.nix b/modules/nixos/stylix.nix index 4b57dac..5a608a2 100644 --- a/modules/nixos/stylix.nix +++ b/modules/nixos/stylix.nix @@ -8,15 +8,29 @@ enable = true; # autoEnable = true; - polarity = "dark"; # "light" or "either". Если "either", то он сам определяет что будет красивее - base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-medium.yaml"; # Если хочешь генерить тему из обоев, то удали эту строку + polarity = "light"; # "light" or "either". Если "either", то он сам определяет что будет красивее + # base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-medium.yaml"; # Если хочешь генерить тему из обоев, то удали эту строку + # base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-light-medium.yaml"; # Если хочешь генерить тему из обоев, то удали эту строку + base16Scheme = "${pkgs.base16-schemes}/share/themes/rose-pine-dawn.yaml"; # Если хочешь генерить тему из обоев, то удали эту строку # image = config.lib.stylix.pixel "base00"; # Вместо обоев будет заливка фона одним цветом из темы - image = /home/buliway/nixos-private-dots/modules/nixos/nix-glow-gruvbox.jpg; # Если хочешь норм обои, то просто укажи путь до изображения + # image = /home/buliway/nixos-private-dots/modules/nixos/nix-glow-gruvbox.jpg; # (не работает) cursor = { package = pkgs.bibata-cursors; - name = "Bibata-Modern-Ice"; - size = 48; # default = 32, 24 for FullHD, 48 for 4K + # name = "Bibata-Modern-Ice"; # Dark theme + name = "Bibata-Modern-Classic"; # Light theme + size = 32; # default = 32, 24 for FullHD, 48 for 4K + }; + + icons = { + enable = true; + # dark = "Gruvbox-Plus-Dark"; + # light = "Gruvbox-Plus-Light"; + # package = pkgs.gruvbox-plus-icons; + # Если часть иконок не работает, то офни сверху и включи снизу + dark = "Papirus-Dark"; + light = "Papirus-Light"; + package = pkgs.papirus-icon-theme; }; fonts = { @@ -33,17 +47,18 @@ }; # Без засечек - sansSerif = { # default = DejaVu Sans - package = pkgs.nerd-fonts.noto; - name = "NotoSans Nerd Font"; - }; + sansSerif = config.stylix.fonts.serif; + # sansSerif = { # default = DejaVu Sans + # package = pkgs.nerd-fonts.noto; + # name = "NotoSans Nerd Font"; + # }; # С засечками serif = { # default = DejaVu Serif - package = pkgs.dejavu_fonts; - name = "DejaVu Serif"; - # package = pkgs.noto-fonts; - # name = "Noto Serif"; + # package = pkgs.dejavu_fonts; + # name = "DejaVu Serif"; + package = pkgs.nerd-fonts.noto; + name = "NotoSerif Nerd Font"; }; # sizes = { diff --git a/nixos/home.nix b/nixos/home.nix index de03754..867f50a 100644 --- a/nixos/home.nix +++ b/nixos/home.nix @@ -45,13 +45,13 @@ stateVersion = "24.05"; # Don't change it }; - gtk = lib.mkIf (pkgs.stdenv.hostPlatform.isLinux) { - # enable = true; - iconTheme = { - name = "Papirus-Dark"; # Имя каталога в /usr/share/icons/ - # package = pkgs.papirus-icon-theme; # Пакет иконок - }; - }; + # gtk = lib.mkIf (pkgs.stdenv.hostPlatform.isLinux) { + # # enable = true; + # iconTheme = { + # name = "Papirus-Dark"; # Имя каталога в /usr/share/icons/ + # # package = pkgs.papirus-icon-theme; # Пакет иконок + # }; + # }; stylix = { # Выключить стили у конкретного таргета походу можно лишь в home-manager targets = { # Выключить авто темы для этих приложений @@ -59,10 +59,14 @@ firefox.enable = false; vencord.enable = false; vesktop.enable = false; + nixcord.enable = false; btop.enable = false; yazi.enable = false; neovim.enable = false; gitui.enable = false; + mpv.enable = false; + obsidian.enable = false; + zed.enable = false; gtk.flatpakSupport.enable = false; # Крашит работу с flatpak, руками задал выше }; # iconTheme = { diff --git a/nvim/lua/kickstart/plugins/themes.lua b/nvim/lua/kickstart/plugins/themes.lua index 64dba9e..3a42ab9 100644 --- a/nvim/lua/kickstart/plugins/themes.lua +++ b/nvim/lua/kickstart/plugins/themes.lua @@ -44,7 +44,7 @@ return { priority = 1000, init = function() -- 'rose-pine-moon', 'rose-pine-main', 'rose-pine-dawn' - -- vim.cmd.colorscheme 'rose-pine-main' + vim.cmd.colorscheme 'rose-pine-dawn' end, }, @@ -103,7 +103,28 @@ return { dim_inactive = false, transparent_mode = false, } - vim.cmd.colorscheme 'gruvbox' + -- vim.cmd.colorscheme 'gruvbox' + end, + }, + { + 'sainnhe/gruvbox-material', + priority = 1000, + init = function() + -- 'hard', 'medium', 'soft' + vim.g.gruvbox_material_background = 'medium' + -- 'material', 'mix', 'original' + vim.g.gruvbox_material_foreground = 'mix' + -- 'grey', 'colored', 'highlighted' + vim.g.gruvbox_material_diagnostic_virtual_text = 'colored' + vim.g.gruvbox_material_diagnostic_line_highlight = 1 + vim.g.gruvbox_material_diagnostic_text_highlight = 1 + + -- vim.g.gruvbox_material_inlay_hints_background = 'dimmed' + -- vim.g.gruvbox_material_better_performance = 1 + -- vim.g.gruvbox_material_spell_foreground = 'colored' + -- vim.g.gruvbox_material_enable_bold = 1 + -- vim.g.gruvbox_material_enable_italic = true + -- vim.cmd.colorscheme 'gruvbox-material' end, }, }