aboutsummaryrefslogtreecommitdiff
path: root/home/rices/cassette-futurism/nvim.nix
diff options
context:
space:
mode:
authorNatasha Moongrave <natasha@256phi.eu>2026-04-05 22:27:45 +0200
committerNatasha Moongrave <natasha@256phi.eu>2026-04-05 22:27:45 +0200
commitb92708b616ffefae3fec27b21072f28d177bd120 (patch)
treee65414ef45ea91bfa507ab660cd7611bf64d7cd8 /home/rices/cassette-futurism/nvim.nix
parent0a4134a7b7c33493aaacdb657b4ebefbfe6f0a25 (diff)
Add minimal KDE Plasma 6 configuration for cassette-futurism rice
Created complete cassette-futurism rice with KDE Plasma 6 desktop environment. Includes system.nix (Plasma 6 setup, Stylix theming), plasma.nix (minimal config with manual theming documentation), default.nix (module orchestrator), and nvim.nix/variables.nix (editor config and color palette). Fixed critical bug in home/mun/default.nix where rice import was hardcoded to nord-blue instead of using the rice parameter, causing all hosts to use nord-blue home configuration regardless of their assigned rice. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Diffstat (limited to 'home/rices/cassette-futurism/nvim.nix')
-rw-r--r--home/rices/cassette-futurism/nvim.nix58
1 files changed, 58 insertions, 0 deletions
diff --git a/home/rices/cassette-futurism/nvim.nix b/home/rices/cassette-futurism/nvim.nix
new file mode 100644
index 0000000..8e20790
--- /dev/null
+++ b/home/rices/cassette-futurism/nvim.nix
@@ -0,0 +1,58 @@
+{pkgs, ...}: let
+ vars = import ./variables.nix;
+in {
+ programs.neovim = {
+ enable = true;
+ defaultEditor = true;
+ viAlias = true;
+ vimAlias = true;
+
+ extraLuaConfig = ''
+ -- Cassette Futurism Neovim theme
+ vim.cmd([[
+ highlight Normal guibg=${vars.colors.background} guifg=${vars.colors.foreground}
+ highlight NormalFloat guibg=${vars.colors.backgroundAlt} guifg=${vars.colors.foreground}
+ highlight Comment guifg=${vars.colors.gray4} gui=italic
+ highlight Constant guifg=${vars.colors.orange}
+ highlight String guifg=${vars.colors.success}
+ highlight Character guifg=${vars.colors.success}
+ highlight Number guifg=${vars.colors.orange}
+ highlight Boolean guifg=${vars.colors.hotPink}
+ highlight Float guifg=${vars.colors.orange}
+ highlight Identifier guifg=${vars.colors.cyan}
+ highlight Function guifg=${vars.colors.purple}
+ highlight Statement guifg=${vars.colors.magenta}
+ highlight Keyword guifg=${vars.colors.magenta}
+ highlight Operator guifg=${vars.colors.cyan}
+ highlight PreProc guifg=${vars.colors.hotPink}
+ highlight Type guifg=${vars.colors.yellow}
+ highlight Special guifg=${vars.colors.cyan}
+ highlight Underlined guifg=${vars.colors.purple} gui=underline
+ highlight Error guibg=${vars.colors.error} guifg=${vars.colors.background}
+ highlight Todo guibg=${vars.colors.yellow} guifg=${vars.colors.background}
+ highlight LineNr guifg=${vars.colors.gray4}
+ highlight CursorLineNr guifg=${vars.colors.hotPink}
+ highlight Visual guibg=${vars.colors.gray2}
+ highlight Search guibg=${vars.colors.purple} guifg=${vars.colors.background}
+ highlight IncSearch guibg=${vars.colors.hotPink} guifg=${vars.colors.background}
+ highlight StatusLine guibg=${vars.colors.backgroundAlt} guifg=${vars.colors.cyan}
+ highlight StatusLineNC guibg=${vars.colors.backgroundAlt} guifg=${vars.colors.gray4}
+ highlight VertSplit guibg=${vars.colors.background} guifg=${vars.colors.gray3}
+ highlight Pmenu guibg=${vars.colors.backgroundAlt} guifg=${vars.colors.foreground}
+ highlight PmenuSel guibg=${vars.colors.hotPink} guifg=${vars.colors.background}
+ highlight PmenuSbar guibg=${vars.colors.gray2}
+ highlight PmenuThumb guibg=${vars.colors.gray4}
+ ]])
+
+ -- Basic settings
+ vim.opt.number = true
+ vim.opt.relativenumber = true
+ vim.opt.expandtab = true
+ vim.opt.shiftwidth = 2
+ vim.opt.tabstop = 2
+ vim.opt.smartindent = true
+ vim.opt.termguicolors = true
+ vim.opt.cursorline = true
+ '';
+ };
+}