Implemented custom system for creating and distributing color schemes based on wallpapers, and also cycling through wallpapers.

nixfmt'd the codebase
This commit is contained in:
2026-03-09 22:02:46 -04:00
parent 4308b8eb16
commit 8ee748a997
145 changed files with 2776 additions and 1125 deletions

View File

@@ -1,7 +1,7 @@
{
programs.nixvim = {
plugins.airline = {
enable = false;
enable = true;
settings = {
left_sep = "";
right_sep = "";

View File

@@ -2,7 +2,9 @@
programs.nixvim = {
plugins.barbar = {
enable = false;
settings = { auto_hide = 1; };
settings = {
auto_hide = 1;
};
};
};
}

View File

@@ -2,7 +2,9 @@
programs.nixvim = {
plugins.coq-nvim = {
enable = true;
settings = { auto_start = false; };
settings = {
auto_start = false;
};
};
};
}

View File

@@ -1,4 +1,10 @@
{ host, self, pkgs, env, ... }:
{
host,
self,
pkgs,
env,
...
}:
{
imports = [

View File

@@ -1,4 +1,5 @@
{ pkgs, ... }: {
{ pkgs, ... }:
{
programs.nixvim = {
extraPlugins = [
(pkgs.vimUtils.buildVimPlugin {

View File

@@ -4,7 +4,9 @@
settings = {
notification = {
overrideVimNotify = true;
window = { border = "rounded"; };
window = {
border = "rounded";
};
};
};
};

View File

@@ -1,15 +1,16 @@
{ pkgs, ... }: {
{ pkgs, ... }:
{
programs.nixvim = {
#extraPlugins = [
#(pkgs.vimUtils.buildVimPlugin {
#name = "haskell-tools.nvim";
#src = pkgs.fetchFromGitHub {
#owner = "mrcjkb";
#repo = "haskell-tools.nvim";
#rev = "39c4ced6f1bff1abc8d4df5027efd11ac38c6e6c";
#hash = "sha256-f+M35EwAlHwjJ2Xs2u9FLnyH0FJT22D0LLShDXCbEEs=";
#};
#})
#(pkgs.vimUtils.buildVimPlugin {
#name = "haskell-tools.nvim";
#src = pkgs.fetchFromGitHub {
#owner = "mrcjkb";
#repo = "haskell-tools.nvim";
#rev = "39c4ced6f1bff1abc8d4df5027efd11ac38c6e6c";
#hash = "sha256-f+M35EwAlHwjJ2Xs2u9FLnyH0FJT22D0LLShDXCbEEs=";
#};
#})
#];
#plugins = { haskell-scope-highlighting.enable = true; };
};

View File

@@ -3,7 +3,7 @@
plugins.indent-blankline = {
enable = true;
#settings = {
#indent.char = "│";
#indent.char = "│";
#};
};
};

View File

@@ -61,7 +61,9 @@
})
'';
};
window = { completion.border = "rounded"; };
window = {
completion.border = "rounded";
};
};
};
lsp = {
@@ -98,10 +100,8 @@
};
options = {
# uses Xenon config because it has every option exposed to it
nixos.expr = ''
(builtins.getFlake "github:pagedMov/nixos-config").nixosConfigurations.phosphorous.options'';
home.expr = ''
(builtins.getFlake "github:pagedMov/nixos-config").homeConfigurations.phospohorousHome.options'';
nixos.expr = ''(builtins.getFlake "github:pagedMov/nixos-config").nixosConfigurations.phosphorous.options'';
home.expr = ''(builtins.getFlake "github:pagedMov/nixos-config").homeConfigurations.phospohorousHome.options'';
};
};
};

View File

@@ -1,42 +1,100 @@
let
colors = {
blue = "#80a0ff";
cyan = "#79dac8";
black = "#080808";
white = "#c6c6c6";
red = "#ff5189";
violet = "#d183e8";
grey = "#303030";
bg_grey = "#202020";
};
bubbles_theme = {
normal = {
a = {
fg = colors.black;
bg = colors.violet;
gui = "bold";
};
b = {
fg = colors.white;
bg = colors.grey;
};
c = {
fg = colors.white;
bg = colors.bg_grey;
};
};
insert = {
a = {
fg = colors.black;
bg = colors.blue;
};
};
visual = {
a = {
fg = colors.black;
bg = colors.cyan;
};
};
replace = {
a = {
fg = colors.black;
bg = colors.red;
};
};
inactive = {
a = {
fg = colors.white;
bg = colors.grey;
};
b = {
fg = colors.white;
bg = colors.black;
};
c = {
fg = colors.white;
};
z = {
fg = colors.white;
bg = colors.grey;
};
};
};
in
{
programs.nixvim = {
plugins.lualine = {
enable = true;
enable = false;
settings = {
options = {
icons_enabled = true;
theme = "auto";
theme = bubbles_theme;
component_separators = {
left = "";
right = "";
left = "|";
right = "|";
};
section_separators = {
left = "";
right = "";
};
always_divide_middle = true;
globalstatus = true;
refresh = {
statusline = 1000;
tabline = 1000;
winbar = 1000;
};
};
sections = {
lualine_a = [ "mode" ];
lualine_b = [ "buffers" ];
lualine_c = [ ];
lualine_x = [ "searchcount" "fileformat" "filetype" ];
lualine_y = [ "branch" "diff" "diagnostics" ];
lualine_z = [ "location" ];
lualine_a.__raw = "{ { 'mode', separator = { left = '' }, right_padding = 2 } }";
lualine_b.__raw = "{ 'filename', 'branch' }";
lualine_c.__raw = "{}";
lualine_x.__raw = "{}";
lualine_y.__raw = "{ 'filetype', 'progress' }";
lualine_z.__raw = "{ { 'location', separator = { right = '' }, left_padding = 2 } }";
};
inactive_sections = {
lualine_a = [ ];
lualine_b = [ ];
lualine_c = [ "filename" ];
lualine_x = [ "location" ];
lualine_y = [ ];
lualine_z = [ ];
lualine_a.__raw = "{ { 'mode', separator = { left = '' }, right_padding = 2 } }";
lualine_b.__raw = "{ 'filename', 'branch' }";
lualine_c.__raw = "{}";
lualine_x.__raw = "{}";
lualine_y.__raw = "{ 'filetype', 'progress' }";
lualine_z.__raw = "{ { 'location', separator = { right = '' }, left_padding = 2 } }";
};
};
};

View File

@@ -1,8 +1,12 @@
{
programs.nixvim = {
plugins = {
mini-align = { enable = true; };
mini-clue = { enable = true; };
mini-align = {
enable = true;
};
mini-clue = {
enable = true;
};
};
};
}

View File

@@ -2,8 +2,7 @@
programs.nixvim.plugins.neocord = {
enable = true;
settings = {
logo =
"https://styles.redditmedia.com/t5_30kix/styles/communityIcon_n2hvyn96zwk81.png";
logo = "https://styles.redditmedia.com/t5_30kix/styles/communityIcon_n2hvyn96zwk81.png";
logo_tooltip = "Neovim";
buttons = [
{

View File

@@ -2,7 +2,9 @@
programs.nixvim.plugins.nvim-lightbulb = {
enable = true;
settings = {
virtual_text = { enable = true; };
virtual_text = {
enable = true;
};
autocmd.enabled = true;
sign.enabled = false;
};

View File

@@ -15,7 +15,7 @@
markdown-preview.enable = true;
marks.enable = true;
nvim-surround.enable = true;
rainbow-delimiters.enable = true;
# rainbow-delimiters.enable = true;
render-markdown.enable = true;
treesitter.enable = true;
trim.enable = true;

View File

@@ -1 +1,5 @@
{ programs.nixvim.plugins.chatgpt = { enable = true; }; }
{
programs.nixvim.plugins.chatgpt = {
enable = true;
};
}

View File

@@ -8,7 +8,9 @@
motion_enabled = 1;
motion_cursor_end = 1;
matchparen_deferred_hi_surround_always = true;
matchparen_offscreen = { method = "popup"; };
matchparen_offscreen = {
method = "popup";
};
treesitter = {
enable = true;
include_match_words = true;