added enable option to nvim

changed home-manager personal config namespace from home.* to user.*
This commit is contained in:
Gabe Venberg 2024-05-29 13:40:03 -05:00
parent 322788aa3a
commit 6f0e167087
30 changed files with 539 additions and 525 deletions

View file

@ -60,7 +60,7 @@ inputs.nixpkgs.lib.nixosSystem {
...
}: {
host = osConfig.host;
home = {
user = {
git = {
profile = {
name = "Gabe Venberg";

View file

@ -14,12 +14,8 @@ inputs.home-manager.lib.homeManagerConfiguration {
...
}: {
# machine specific options
home = {
user = {
enable-speech = true;
nvim = {
enable-lsp = true;
enable-treesitter = true;
};
git = {
profile = {
name = "Gabe Venberg";

View file

@ -15,7 +15,7 @@ inputs.home-manager.lib.homeManagerConfiguration {
...
}: {
# machine specific options
home = {
user = {
nvim = {
enable-lsp = true;
enable-treesitter = true;

View file

@ -65,11 +65,7 @@ inputs.nixpkgs.lib.nixosSystem {
...
}: {
host = osConfig.host;
home = {
nvim = {
enable-lsp = true;
enable-treesitter = true;
};
user = {
git = {
profile = {
name = "Gabe Venberg";
@ -87,11 +83,6 @@ inputs.nixpkgs.lib.nixosSystem {
# Enable the OpenSSH daemon.
services.openssh.enable = true;
services.nfs.server = {
enable = true;
exports = "/srv/nfs *(rw,sync,no_root_squash,no_subtree_check)";
};
# Bootloader.
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;

View file

@ -41,7 +41,7 @@ inputs.nixpkgs.lib.nixosSystem {
...
}: {
host = osConfig.host;
home = {
user = {
nvim = {
enable-lsp = true;
enable-treesitter = true;

View file

@ -4,15 +4,10 @@
lib,
...
}: {
options = {
home.nvim.enable-completions =
(lib.mkEnableOption "basic completion in nvim")
// {
default = false;
};
};
options.user.nvim.enable-completions = lib.mkEnableOption "basic completion in nvim";
config =
lib.mkIf config.home.nvim.enable-completions
lib.mkIf (config.user.nvim.enable-completions && config.user.nvim.enable)
{
programs.nixvim = {
plugins.luasnip.enable = true;

View file

@ -3,29 +3,33 @@
pkgs,
helpers,
lib,
config,
...
}: {
programs.nixvim = {
enable = true;
viAlias = true;
vimAlias = true;
colorschemes.base16 = {
colorscheme = "gruvbox-dark-medium";
options.user.nvim.enable = lib.mkEnableOption "enable nvim";
config = lib.mkIf config.user.nvim.enable {
programs.nixvim = {
enable = true;
viAlias = true;
vimAlias = true;
colorschemes.base16 = {
colorscheme = "gruvbox-dark-medium";
enable = true;
};
clipboard.providers.xsel.enable = true;
};
home.sessionVariables = {
EDITOR = "nvim";
VISUAL = "nvim";
};
clipboard.providers.xsel.enable = true;
programs.nushell.extraEnv = ''
$env.EDITOR = nvim
$env.VISUAL = nvim
'';
};
home.sessionVariables = {
EDITOR = "nvim";
VISUAL = "nvim";
};
programs.nushell.extraEnv = ''
$env.EDITOR = nvim
$env.VISUAL = nvim
'';
imports = [
./keybinds.nix

View file

@ -1,25 +1,28 @@
{
configs,
config,
lib,
pkgs,
...
}: {
programs.nixvim = {
plugins.gitsigns = {
enable = true;
config = lib.mkIf config.user.nvim.enable {
programs.nixvim = {
plugins.gitsigns = {
enable = true;
};
plugins.which-key.registrations = {
"<leader>g" = "+git";
};
keymaps = [
{
action = ":Gitsigns toggle_current_line_blame<CR>";
key = "<leader>gb";
mode = "n";
options = {
silent = true;
desc = "toggle git blame";
};
}
];
};
plugins.which-key.registrations = {
"<leader>g" = "+git";
};
keymaps = [
{
action = ":Gitsigns toggle_current_line_blame<CR>";
key = "<leader>gb";
mode = "n";
options = {
silent = true;
desc = "toggle git blame";
};
}
];
};
}

View file

@ -1,97 +1,100 @@
{
configs,
config,
lib,
pkgs,
...
}: {
programs.nixvim = {
globals = {
mapleader = ";";
config = lib.mkIf config.user.nvim.enable {
programs.nixvim = {
globals = {
mapleader = ";";
};
plugins.which-key.registrations = {
"<leader>c" = "+check";
};
keymaps = [
{
action = ":setlocal spell!<CR>";
key = "<leader>cs";
mode = "n";
options = {
silent = true;
desc = "toggle spell check";
};
}
{
action = ":bnext<CR>";
key = "gf";
mode = "n";
options = {
silent = true;
desc = "next buffer";
};
}
{
action = ":bprevious<CR>";
key = "gF";
mode = "n";
options = {
silent = true;
desc = "prev buffer";
};
}
{
action = "<C-w>h";
key = "<C-h>";
mode = "n";
options = {
silent = true;
desc = "move to right split";
};
}
{
action = "<C-w>j";
key = "<C-j>";
mode = "n";
options = {
silent = true;
desc = "move to below split";
};
}
{
action = "<C-w>k";
key = "<C-k>";
mode = "n";
options = {
silent = true;
desc = "move to above split";
};
}
{
action = "<C-w>l";
key = "<C-l>";
mode = "n";
options = {
silent = true;
desc = "move to left split";
};
}
{
action = "za";
key = "<Space>";
mode = "n";
options = {
silent = true;
desc = "toggle fold";
};
}
{
action = ":nohls<CR>";
key = "<leader>h";
mode = "n";
options = {
silent = true;
desc = "clear highlighting";
};
}
];
};
plugins.which-key.registrations = {
"<leader>c" = "+check";
};
keymaps = [
{
action = ":setlocal spell!<CR>";
key = "<leader>cs";
mode = "n";
options = {
silent = true;
desc = "toggle spell check";
};
}
{
action = ":bnext<CR>";
key = "gf";
mode = "n";
options = {
silent = true;
desc = "next buffer";
};
}
{
action = ":bprevious<CR>";
key = "gF";
mode = "n";
options = {
silent = true;
desc = "prev buffer";
};
}
{
action = "<C-w>h";
key = "<C-h>";
mode = "n";
options = {
silent = true;
desc = "move to right split";
};
}
{
action = "<C-w>j";
key = "<C-j>";
mode = "n";
options = {
silent = true;
desc = "move to below split";
};
}
{
action = "<C-w>k";
key = "<C-k>";
mode = "n";
options = {
silent = true;
desc = "move to above split";
};
}
{
action = "<C-w>l";
key = "<C-l>";
mode = "n";
options = {
silent = true;
desc = "move to left split";
};
}
{
action = "za";
key = "<Space>";
mode = "n";
options = {
silent = true;
desc = "toggle fold";
};
}
{
action = ":nohls<CR>";
key = "<leader>h";
mode = "n";
options = {
silent = true;
desc = "clear highlighting";
};
}
];
};
}

View file

@ -4,32 +4,16 @@
lib,
...
}: {
home.file = {
".clangd".text = ''
# keeps clangd from choking when it sees a compiler flag for a different
# compiler. (sutch as when acting as an lsp for a project that uses GCC.)
CompileFlags:
Add: -Wno-unknown-warning-option
Remove: [-m*, -f*]
'';
".clang-format".text = ''
---
#this syncronizes with settings used by neovims treesitters so that the lsp formatting and treesitter formatting do not fight eatch other.
PointerAlignment: Left
ColumnLimit: 80
IndentWidth: 4
TabWidth: 4
UseCRLF: false
UseTab: Never
AlignAfterOpenBracket: BlockIndent
AlwaysBreakBeforeMultilineStrings: true
BreakBeforeBraces: Attach
AlignOperands: Align
BreakBeforeBinaryOperators: NonAssignment
...
'';
"work/.clang-format" = lib.mkIf config.home.git.workProfile.enable {
text = ''
config = lib.mkIf (config.user.nvim.enable && config.user.nvim.enable-lsp) {
home.file = {
".clangd".text = ''
# keeps clangd from choking when it sees a compiler flag for a different
# compiler. (sutch as when acting as an lsp for a project that uses GCC.)
CompileFlags:
Add: -Wno-unknown-warning-option
Remove: [-m*, -f*]
'';
".clang-format".text = ''
---
#this syncronizes with settings used by neovims treesitters so that the lsp formatting and treesitter formatting do not fight eatch other.
PointerAlignment: Left
@ -40,10 +24,28 @@
UseTab: Never
AlignAfterOpenBracket: BlockIndent
AlwaysBreakBeforeMultilineStrings: true
BreakBeforeBraces: Allman
BreakBeforeBinaryOperators: None
BreakBeforeBraces: Attach
AlignOperands: Align
BreakBeforeBinaryOperators: NonAssignment
...
'';
"work/.clang-format" = lib.mkIf config.user.git.workProfile.enable {
text = ''
---
#this syncronizes with settings used by neovims treesitters so that the lsp formatting and treesitter formatting do not fight eatch other.
PointerAlignment: Left
ColumnLimit: 80
IndentWidth: 4
TabWidth: 4
UseCRLF: false
UseTab: Never
AlignAfterOpenBracket: BlockIndent
AlwaysBreakBeforeMultilineStrings: true
BreakBeforeBraces: Allman
BreakBeforeBinaryOperators: None
...
'';
};
};
};
}

View file

@ -4,14 +4,12 @@
lib,
...
}: {
options = {
home.nvim.enable-lsp = lib.mkEnableOption "nvim lsp";
};
options.user.nvim.enable-lsp = lib.mkEnableOption "nvim lsp";
config =
lib.mkIf config.home.nvim.enable-lsp
lib.mkIf (config.user.nvim.enable-lsp && config.user.nvim.enable)
{
home.nvim.enable-completions = true;
user.nvim.enable-completions = true;
programs.nixvim = {
plugins.lsp = {
enable = true;

View file

@ -5,7 +5,7 @@
...
}: {
config =
lib.mkIf config.home.nvim.enable-lsp
lib.mkIf (config.user.nvim.enable-lsp && config.user.nvim.enable)
{
programs.nixvim = {
plugins.rust-tools = {

View file

@ -1,76 +1,79 @@
{
configs,
config,
lib,
pkgs,
...
}: {
programs.nixvim = {
plugins.lualine = {
enable = true;
alwaysDivideMiddle = true;
iconsEnabled = true;
sections = {
lualine_a = [
{name = "mode";}
];
lualine_b = [
{name = "branch";}
{name = "diff";}
{name = "diagnostics";}
];
lualine_c = [
{
name = "filename";
extraConfig = {path = 1;};
}
];
lualine_x = [
{name = "encoding";}
{name = "fileformat";}
{name = "filetype";}
];
lualine_y = [
{name = "progress";}
];
lualine_z = [
{name = "location";}
];
};
config = lib.mkIf config.user.nvim.enable {
programs.nixvim = {
plugins.lualine = {
enable = true;
alwaysDivideMiddle = true;
iconsEnabled = true;
sections = {
lualine_a = [
{name = "mode";}
];
lualine_b = [
{name = "branch";}
{name = "diff";}
{name = "diagnostics";}
];
lualine_c = [
{
name = "filename";
extraConfig = {path = 1;};
}
];
lualine_x = [
{name = "encoding";}
{name = "fileformat";}
{name = "filetype";}
];
lualine_y = [
{name = "progress";}
];
lualine_z = [
{name = "location";}
];
};
inactiveSections = {
lualine_a = [];
lualine_b = [];
lualine_c = [{name = "filename";}];
lualine_x = [{name = "filetype";}];
lualine_y = [];
lualine_z = [];
};
inactiveSections = {
lualine_a = [];
lualine_b = [];
lualine_c = [{name = "filename";}];
lualine_x = [{name = "filetype";}];
lualine_y = [];
lualine_z = [];
};
tabline = {
lualine_a = [
{
name = "buffers";
extraConfig = {mode = 4;};
}
];
lualine_b = [];
lualine_c = [];
lualine_x = [];
lualine_y = [];
lualine_z = [
{
name = "tabs";
extraConfig = {mode = 2;};
}
];
};
tabline = {
lualine_a = [
{
name = "buffers";
extraConfig = {mode = 4;};
}
];
lualine_b = [];
lualine_c = [];
lualine_x = [];
lualine_y = [];
lualine_z = [
{
name = "tabs";
extraConfig = {mode = 2;};
}
];
};
winbar = {
lualine_a = [];
lualine_b = [];
lualine_c = [];
lualine_x = [];
lualine_y = [];
lualine_z = [];
winbar = {
lualine_a = [];
lualine_b = [];
lualine_c = [];
lualine_x = [];
lualine_y = [];
lualine_z = [];
};
};
};
};

View file

@ -1,31 +1,34 @@
{
configs,
config,
lib,
pkgs,
...
}: {
programs.nixvim = {
plugins.nvim-tree = {
enable = true;
disableNetrw = true;
hijackCursor = true;
hijackNetrw = true;
hijackUnnamedBufferWhenOpening = true;
actions = {
useSystemClipboard = true;
changeDir.enable = true;
};
filesystemWatchers.enable = true;
};
keymaps = [
{
action = ":NvimTreeToggle<CR>";
key = "<leader>t";
mode = "n";
options = {
silent = true;
desc = "toggle file browser";
config = lib.mkIf config.user.nvim.enable {
programs.nixvim = {
plugins.nvim-tree = {
enable = true;
disableNetrw = true;
hijackCursor = true;
hijackNetrw = true;
hijackUnnamedBufferWhenOpening = true;
actions = {
useSystemClipboard = true;
changeDir.enable = true;
};
}
];
filesystemWatchers.enable = true;
};
keymaps = [
{
action = ":NvimTreeToggle<CR>";
key = "<leader>t";
mode = "n";
options = {
silent = true;
desc = "toggle file browser";
};
}
];
};
};
}

View file

@ -1,70 +1,72 @@
{
configs,
config,
pkgs,
lib,
...
}: {
programs.nixvim = {
opts = {
mouse = "a";
lazyredraw = true;
termguicolors = true;
autoread = true;
swapfile = false;
history = 500;
formatoptions = "rojq";
# dont hard wrap
textwidth = 0;
wrapmargin = 0;
breakindent = true;
# highlight after col
colorcolumn = "80,100,120";
# add ruler to side of screen
number = true;
numberwidth = 3;
#display cursor cordinates
ruler = true;
#always leave 5 cells between cursor and side of window
scrolloff = 5;
# better command line completion
wildmenu = true;
# ignore case if all lowercase
ignorecase = true;
smartcase = true;
# show unfinished keycombos in statusbar
showcmd = true;
# regex stuff
magic = true;
# always show statusline
laststatus = 2;
# tab stuff
tabstop = 4;
shiftwidth = 0;
autoindent = true;
smartindent = true;
smarttab = true;
# for true tabs, change to false
expandtab = true;
softtabstop = -1;
# highlight search results as you type
hlsearch = true;
incsearch = true;
# folding stuff
foldlevelstart = 5;
foldmethod = lib.mkDefault "indent";
foldcolumn = "auto:4";
foldenable = true;
# display whitespace as other chars
list = true;
listchars = {
tab = ">-";
eol = "";
nbsp = "";
trail = "";
extends = "";
precedes = "";
config = lib.mkIf config.user.nvim.enable {
programs.nixvim = {
opts = {
mouse = "a";
lazyredraw = true;
termguicolors = true;
autoread = true;
swapfile = false;
history = 500;
formatoptions = "rojq";
# dont hard wrap
textwidth = 0;
wrapmargin = 0;
breakindent = true;
# highlight after col
colorcolumn = "80,100,120";
# add ruler to side of screen
number = true;
numberwidth = 3;
#display cursor cordinates
ruler = true;
#always leave 5 cells between cursor and side of window
scrolloff = 5;
# better command line completion
wildmenu = true;
# ignore case if all lowercase
ignorecase = true;
smartcase = true;
# show unfinished keycombos in statusbar
showcmd = true;
# regex stuff
magic = true;
# always show statusline
laststatus = 2;
# tab stuff
tabstop = 4;
shiftwidth = 0;
autoindent = true;
smartindent = true;
smarttab = true;
# for true tabs, change to false
expandtab = true;
softtabstop = -1;
# highlight search results as you type
hlsearch = true;
incsearch = true;
# folding stuff
foldlevelstart = 5;
foldmethod = lib.mkDefault "indent";
foldcolumn = "auto:4";
foldenable = true;
# display whitespace as other chars
list = true;
listchars = {
tab = ">-";
eol = "";
nbsp = "";
trail = "";
extends = "";
precedes = "";
};
showbreak = "";
};
showbreak = "";
};
};
}

View file

@ -1,21 +1,24 @@
{
configs,
config,
lib,
pkgs,
...
}: {
programs.nixvim = {
plugins.comment.enable = true;
plugins.marks.enable = true;
plugins.surround.enable = true;
plugins.todo-comments.enable = true;
plugins.leap = {
enable = true;
addDefaultMappings = true;
config = lib.mkIf config.user.nvim.enable {
programs.nixvim = {
plugins.comment.enable = true;
plugins.marks.enable = true;
plugins.surround.enable = true;
plugins.todo-comments.enable = true;
plugins.leap = {
enable = true;
addDefaultMappings = true;
};
extraPlugins = with pkgs.vimPlugins; [
vim-numbertoggle
dressing-nvim
];
extraConfigLua = ''require("dressing").setup({})'';
};
extraPlugins = with pkgs.vimPlugins; [
vim-numbertoggle
dressing-nvim
];
extraConfigLua = ''require("dressing").setup({})'';
};
}

View file

@ -1,116 +1,119 @@
{
configs,
config,
lib,
pkgs,
...
}: {
programs.nixvim = {
plugins.telescope = {
enable = true;
config = lib.mkIf config.user.nvim.enable {
programs.nixvim = {
plugins.telescope = {
enable = true;
};
plugins.which-key.registrations = {
"<leader>f" = "+telescope";
"<leader>fg" = "+telescope git";
};
keymaps = [
{
action = ":Telescope find_files<CR>";
key = "<leader>ff";
mode = "n";
options = {
silent = true;
desc = "files";
};
}
{
action = ":Telescope live_grep<CR>";
key = "<leader>fg";
mode = "n";
options = {
silent = true;
desc = "grep";
};
}
{
action = ":Telescope buffers<CR>";
key = "<leader>fb";
mode = "n";
options = {
silent = true;
desc = "buffers";
};
}
{
action = ":Telescope marks<CR>";
key = "<leader>fm";
mode = "n";
options = {
silent = true;
desc = "marks";
};
}
{
action = ":Telescope registers<CR>";
key = "<leader>fr";
mode = "n";
options = {
silent = true;
desc = "registers";
};
}
{
action = ":Telescope keymaps<CR>";
key = "<leader>fk";
mode = "n";
options = {
silent = true;
desc = "keymaps";
};
}
{
action = ":Telescope current_buffer_fuzzy_find<CR>";
key = "<leader>fz";
mode = "n";
options = {
silent = true;
desc = "fuzzy find";
};
}
{
action = ":Telescope git_commits<CR>";
key = "<leader>fgc";
mode = "n";
options = {
silent = true;
desc = "commits";
};
}
{
action = ":Telescope git_branches<CR>";
key = "<leader>fgb";
mode = "n";
options = {
silent = true;
desc = "branches";
};
}
{
action = ":Telescope git_stash<CR>";
key = "<leader>fgs";
mode = "n";
options = {
silent = true;
desc = "stash";
};
}
{
action = ":Telescope git_commits<CR>";
key = "<leader>fgc";
mode = "n";
options = {
silent = true;
desc = "commits";
};
}
];
};
plugins.which-key.registrations = {
"<leader>f" = "+telescope";
"<leader>fg" = "+telescope git";
};
keymaps = [
{
action = ":Telescope find_files<CR>";
key = "<leader>ff";
mode = "n";
options = {
silent = true;
desc = "files";
};
}
{
action = ":Telescope live_grep<CR>";
key = "<leader>fg";
mode = "n";
options = {
silent = true;
desc = "grep";
};
}
{
action = ":Telescope buffers<CR>";
key = "<leader>fb";
mode = "n";
options = {
silent = true;
desc = "buffers";
};
}
{
action = ":Telescope marks<CR>";
key = "<leader>fm";
mode = "n";
options = {
silent = true;
desc = "marks";
};
}
{
action = ":Telescope registers<CR>";
key = "<leader>fr";
mode = "n";
options = {
silent = true;
desc = "registers";
};
}
{
action = ":Telescope keymaps<CR>";
key = "<leader>fk";
mode = "n";
options = {
silent = true;
desc = "keymaps";
};
}
{
action = ":Telescope current_buffer_fuzzy_find<CR>";
key = "<leader>fz";
mode = "n";
options = {
silent = true;
desc = "fuzzy find";
};
}
{
action = ":Telescope git_commits<CR>";
key = "<leader>fgc";
mode = "n";
options = {
silent = true;
desc = "commits";
};
}
{
action = ":Telescope git_branches<CR>";
key = "<leader>fgb";
mode = "n";
options = {
silent = true;
desc = "branches";
};
}
{
action = ":Telescope git_stash<CR>";
key = "<leader>fgs";
mode = "n";
options = {
silent = true;
desc = "stash";
};
}
{
action = ":Telescope git_commits<CR>";
key = "<leader>fgc";
mode = "n";
options = {
silent = true;
desc = "commits";
};
}
];
};
}

View file

@ -1,36 +1,39 @@
{
configs,
config,
lib,
pkgs,
...
}: {
programs.nixvim = {
plugins.toggleterm = {
enable = true;
settings = {
direction = "horizontal";
insert_mappings = false;
terminal_mappings = false;
open_mapping = ''[[<c-\>]]'';
};
};
keymaps = [
{
action = "function() Floatingterm:toggle() end";
key = "<leader>s";
lua = true;
mode = "n";
options = {
silent = true;
desc = "toggle scratch terminal";
config = lib.mkIf config.user.nvim.enable {
programs.nixvim = {
plugins.toggleterm = {
enable = true;
settings = {
direction = "horizontal";
insert_mappings = false;
terminal_mappings = false;
open_mapping = ''[[<c-\>]]'';
};
}
];
extraConfigLuaPre = ''
local Terminal = require('toggleterm.terminal').Terminal
Floatingterm = Terminal:new({
hidden = true,
direction = "float"
})
'';
};
keymaps = [
{
action = "function() Floatingterm:toggle() end";
key = "<leader>s";
lua = true;
mode = "n";
options = {
silent = true;
desc = "toggle scratch terminal";
};
}
];
extraConfigLuaPre = ''
local Terminal = require('toggleterm.terminal').Terminal
Floatingterm = Terminal:new({
hidden = true,
direction = "float"
})
'';
};
};
}

View file

@ -5,7 +5,7 @@
...
}: {
config =
lib.mkIf config.home.nvim.enable-treesitter
lib.mkIf (config.user.nvim.enable-treesitter && config.user.nvim.enable)
{
programs.nixvim = {
keymaps = [

View file

@ -4,19 +4,12 @@
lib,
...
}: {
options = {
home.nvim.enable-treesitter = lib.mkOption {
default = false;
type = lib.types.bool;
description = ''
enable nvim treesitter
'';
};
};
options.user.nvim.enable-treesitter = lib.mkEnableOption "enable nvim treesitter";
config =
lib.mkIf config.home.nvim.enable-treesitter
lib.mkIf (config.user.nvim.enable-treesitter && config.user.nvim.enable)
{
home.nvim.enable-completions = true;
user.nvim.enable-completions = true;
programs.nixvim = {
plugins.treesitter = {
enable = true;

View file

@ -5,7 +5,7 @@
...
}: {
config =
lib.mkIf config.home.nvim.enable-treesitter
lib.mkIf (config.user.nvim.enable-treesitter && config.user.nvim.enable)
{
programs.nixvim = {
plugins.rainbow-delimiters = {

View file

@ -5,7 +5,7 @@
...
}: {
config =
lib.mkIf config.home.nvim.enable-treesitter
lib.mkIf (config.user.nvim.enable-treesitter && config.user.nvim.enable)
{
programs.nixvim = let
nu-grammar = pkgs.tree-sitter.buildGrammar {

View file

@ -1,15 +1,18 @@
{
configs,
config,
lib,
pkgs,
...
}: {
programs.nixvim = {
opts = {
timeout = true;
timeoutlen = 300;
};
plugins.which-key = {
enable = true;
config = lib.mkIf config.user.nvim.enable {
programs.nixvim = {
opts = {
timeout = true;
timeoutlen = 300;
};
plugins.which-key = {
enable = true;
};
};
};
}

View file

@ -5,7 +5,7 @@
...
}: {
options = {
home.git = {
user.git = {
workProfile = {
enable = lib.mkEnableOption "git work profile";
email = lib.mkOption {
@ -45,8 +45,8 @@
};
# difftastic.enable=true;
# difftastic.background="dark";
userEmail = config.home.git.profile.email;
userName = config.home.git.profile.name;
userEmail = config.user.git.profile.email;
userName = config.user.git.profile.name;
extraConfig = {
init = {
defaultBranch = "main";
@ -75,11 +75,11 @@
};
};
includes =
if config.home.git.workProfile.enable
if config.user.git.workProfile.enable
then [
{
condition = "gitdir:~/work/**";
contents.user.email = config.home.git.workProfile.email;
contents.user.email = config.user.git.workProfile.email;
}
]
else [];

View file

@ -46,7 +46,7 @@
hostname = {
ssh_only = false;
ssh_symbol = "🌐";
format = "[$hostname$ssh_symbol]($style)";
format = "[$hostname $ssh_symbol]($style)";
style = "bg:color_orange";
};
shell = {

View file

@ -5,11 +5,11 @@
...
}: {
options = {
home.enable-speech = lib.mkEnableOption "espeak";
user.enable-speech = lib.mkEnableOption "espeak";
};
config =
lib.mkIf config.home.enable-speech
lib.mkIf config.user.enable-speech
{
home.shellAliases = {
say = "espeak -p 10 -s 150 -a 200";

View file

@ -11,7 +11,11 @@
../../modules/home-manager/terminal/ssh-agent.nix
../../modules/home-manager/terminal/direnv.nix
../../modules/home-manager/terminal/btop.nix
../../modules/home-manager/nvim
];
user.nvim.enable = true;
home.packages = with pkgs; [
sshfs
just

View file

@ -9,8 +9,13 @@
../../modules/home-manager/terminal/nushell
../../modules/home-manager/terminal/starship.nix
../../modules/home-manager/terminal/tiny-irc.nix
../../modules/home-manager/nvim
];
user.nvim = {
enable-lsp = true;
enable-treesitter = true;
};
home.packages = with pkgs; [
tre-command
diskonaut

View file

@ -6,12 +6,12 @@
}: {
programs.steam = {
enable = true;
extraCompatPackages = with pkgs;[
extraCompatPackages = with pkgs; [
proton-ge-bin
];
gamescopeSession.enable=true;
gamescopeSession.enable = true;
};
programs.gamemode.enable=true;
programs.gamemode.enable = true;
hardware.steam-hardware.enable = true;
}

View file

@ -3,9 +3,9 @@
outputs,
...
}: {
default={
path=./default;
description="a basic blank devshell flake";
default = {
path = ./default;
description = "a basic blank devshell flake";
};
hugo = {
path = ./hugo;