more dedup
This commit is contained in:
parent
423a2ee604
commit
2dfc594aad
12 changed files with 159 additions and 233 deletions
|
@ -6,7 +6,8 @@
|
||||||
nix.nixPath = [ "nixpkgs=${inputs.nixpkgs}" ];
|
nix.nixPath = [ "nixpkgs=${inputs.nixpkgs}" ];
|
||||||
nix.registry.nixpkgs.flake = inputs.nixpkgs;
|
nix.registry.nixpkgs.flake = inputs.nixpkgs;
|
||||||
|
|
||||||
home-manager.sharedModules = [ ./hm-modules ];
|
home-manager.sharedModules =
|
||||||
|
[ ./hm-modules inputs.nixvim.homeManagerModules.nixvim ];
|
||||||
|
|
||||||
vault-secrets = let
|
vault-secrets = let
|
||||||
inherit (config.networking) domain hostName;
|
inherit (config.networking) domain hostName;
|
||||||
|
|
40
nixos/common/hm-modules/catppuccin.nix
Normal file
40
nixos/common/hm-modules/catppuccin.nix
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
with lib;
|
||||||
|
let cfg = config.themes.v.catppuccin;
|
||||||
|
in {
|
||||||
|
options.themes.v.catppuccin = {
|
||||||
|
enable = mkEnableOption "catppuccin";
|
||||||
|
};
|
||||||
|
config = let
|
||||||
|
theme = "Catppuccin-Pink-Dark";
|
||||||
|
cursorTheme = config.home.pointerCursor.name;
|
||||||
|
in mkIf cfg.enable {
|
||||||
|
home.pointerCursor = {
|
||||||
|
name = "Bibata_Ghost";
|
||||||
|
size = 24;
|
||||||
|
package = pkgs.bibata-cursors-translucent;
|
||||||
|
};
|
||||||
|
|
||||||
|
gtk = {
|
||||||
|
enable = true;
|
||||||
|
theme = {
|
||||||
|
name = theme;
|
||||||
|
package = pkgs.catppuccin-gtk;
|
||||||
|
};
|
||||||
|
iconTheme = {
|
||||||
|
name = "Papirus-Dark";
|
||||||
|
package = pkgs.papirus-icon-theme.override { color = "violet"; };
|
||||||
|
};
|
||||||
|
cursorTheme = {
|
||||||
|
name = cursorTheme;
|
||||||
|
inherit (config.home.pointerCursor) package size;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.vscode = {
|
||||||
|
userSettings."workbench.colorTheme" = "Catppuccin Frappé";
|
||||||
|
extensions = [ pkgs.vscode-extensions.catppuccin.catppuccin-vsc ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
{ ... }: {
|
{ ... }: {
|
||||||
imports = [
|
imports = [
|
||||||
|
./catppuccin.nix
|
||||||
|
./nvim.nix
|
||||||
./riff.nix
|
./riff.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
101
nixos/common/hm-modules/nvim.nix
Normal file
101
nixos/common/hm-modules/nvim.nix
Normal file
|
@ -0,0 +1,101 @@
|
||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
with lib;
|
||||||
|
let cfg = config.programs.v.nvim;
|
||||||
|
in {
|
||||||
|
options.programs.v.nvim = {
|
||||||
|
enable = mkEnableOption "nvim";
|
||||||
|
};
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
programs.nixvim = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.neovim-unwrapped;
|
||||||
|
vimAlias = true;
|
||||||
|
|
||||||
|
globals = { mapleader = " "; };
|
||||||
|
|
||||||
|
maps.normal = {
|
||||||
|
"<leader>ff" = "<cmd>lua require('telescope.builtin').find_files()<cr>";
|
||||||
|
"<leader>fg" = "<cmd>lua require('telescope.builtin').live_grep()<cr>";
|
||||||
|
"<C-_>" =
|
||||||
|
"<cmd>lua require('Comment.api').toggle.linewise.current()<cr>"; # map ctrl+/ to commenting code
|
||||||
|
};
|
||||||
|
|
||||||
|
extraPlugins = with pkgs.vimPlugins; [ catppuccin-nvim luasnip ];
|
||||||
|
|
||||||
|
colorscheme = "catppuccin-frappe";
|
||||||
|
|
||||||
|
extraConfigLua = "";
|
||||||
|
|
||||||
|
plugins = {
|
||||||
|
bufferline.enable = true;
|
||||||
|
nix.enable = true;
|
||||||
|
treesitter = {
|
||||||
|
enable = true;
|
||||||
|
nixGrammars = true;
|
||||||
|
# ensureInstalled = [ ];
|
||||||
|
};
|
||||||
|
surround.enable = true;
|
||||||
|
fugitive.enable = true;
|
||||||
|
gitgutter.enable = true;
|
||||||
|
lualine = {
|
||||||
|
enable = true;
|
||||||
|
theme = "catppuccin";
|
||||||
|
};
|
||||||
|
telescope = {
|
||||||
|
enable = true;
|
||||||
|
extensions.fzf-native.enable = true;
|
||||||
|
extensions.fzf-native.fuzzy = true;
|
||||||
|
};
|
||||||
|
comment-nvim = { enable = true; };
|
||||||
|
lsp = {
|
||||||
|
enable = true;
|
||||||
|
servers.rust-analyzer.enable = true;
|
||||||
|
servers.rnix-lsp.enable = true;
|
||||||
|
servers.pyright.enable = true;
|
||||||
|
servers.elixirls.enable = true;
|
||||||
|
servers.clangd.enable = true;
|
||||||
|
};
|
||||||
|
trouble.enable = true;
|
||||||
|
lspkind.enable = true;
|
||||||
|
nvim-cmp = {
|
||||||
|
enable = true;
|
||||||
|
autoEnableSources = true;
|
||||||
|
sources = [
|
||||||
|
{ name = "nvim_lsp"; }
|
||||||
|
{ name = "cmp-latex-symbols"; }
|
||||||
|
{
|
||||||
|
name = "luasnip";
|
||||||
|
option = { show_autosnippets = true; };
|
||||||
|
}
|
||||||
|
{ name = "cmp-spell"; }
|
||||||
|
{ name = "cmp-rg"; }
|
||||||
|
{ name = "path"; }
|
||||||
|
{ name = "buffer"; }
|
||||||
|
];
|
||||||
|
snippet.expand = "luasnip";
|
||||||
|
mappingPresets = [ "insert" "cmdline" ];
|
||||||
|
mapping = {
|
||||||
|
"<CR>" = "cmp.mapping.confirm({ select = true })";
|
||||||
|
"<Tab>" = {
|
||||||
|
modes = [ "i" "s" ];
|
||||||
|
action = ''
|
||||||
|
function(fallback)
|
||||||
|
local luasnip = require('luasnip')
|
||||||
|
if cmp.visible() then
|
||||||
|
cmp.select_next_item()
|
||||||
|
elseif luasnip.expandable() then
|
||||||
|
luasnip.expand()
|
||||||
|
elseif luasnip.expand_or_jumpable() then
|
||||||
|
luasnip.expand_or_jump()
|
||||||
|
else
|
||||||
|
fallback()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -9,6 +9,7 @@ in {
|
||||||
services.xserver.enable = true;
|
services.xserver.enable = true;
|
||||||
services.xserver.excludePackages = [ pkgs.xterm ];
|
services.xserver.excludePackages = [ pkgs.xterm ];
|
||||||
|
|
||||||
|
# Add Home-manager dconf stuff
|
||||||
home-manager.sharedModules = [
|
home-manager.sharedModules = [
|
||||||
./dconf.nix
|
./dconf.nix
|
||||||
];
|
];
|
||||||
|
|
|
@ -8,15 +8,20 @@ let
|
||||||
in {
|
in {
|
||||||
programs.home-manager.enable = true;
|
programs.home-manager.enable = true;
|
||||||
|
|
||||||
|
imports = [];
|
||||||
|
|
||||||
home.username = "victor";
|
home.username = "victor";
|
||||||
home.homeDirectory = "/home/victor";
|
home.homeDirectory = "/home/victor";
|
||||||
home.stateVersion = "23.05";
|
home.stateVersion = "23.05";
|
||||||
|
|
||||||
imports = [ ./theme.nix ./neovim.nix ];
|
# Enable catppuccin theme
|
||||||
|
themes.v.catppuccin.enable = true;
|
||||||
|
|
||||||
# Custom dconf settings
|
# Custom dconf settings
|
||||||
dconf.settings."org/gnome/desktop/input-sources".xkb-options = [ "caps:swapescape"];
|
dconf.settings."org/gnome/desktop/input-sources".xkb-options = [ "caps:swapescape"];
|
||||||
|
|
||||||
|
programs.v.nvim.enable = true;
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
btop
|
btop
|
||||||
calibre
|
calibre
|
||||||
|
@ -188,13 +193,5 @@ in {
|
||||||
templates = "${home}/.templates";
|
templates = "${home}/.templates";
|
||||||
videos = "${home}/cloud/Videos";
|
videos = "${home}/cloud/Videos";
|
||||||
};
|
};
|
||||||
|
|
||||||
# xdg.configFile."electron-flags.conf".text = ''
|
|
||||||
# --enable-features=UseOzonePlatform
|
|
||||||
# --ozone-platform=wayland
|
|
||||||
# --enable-features=WaylandWindowDecorations
|
|
||||||
# --ozone-platform-hint=auto
|
|
||||||
# '';
|
|
||||||
|
|
||||||
services.syncthing.enable = true;
|
services.syncthing.enable = true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,94 +0,0 @@
|
||||||
{ inputs, pkgs, ... }: {
|
|
||||||
imports = [ inputs.nixvim.homeManagerModules.nixvim ];
|
|
||||||
programs.nixvim = {
|
|
||||||
enable = true;
|
|
||||||
package = pkgs.neovim-unwrapped;
|
|
||||||
vimAlias = true;
|
|
||||||
|
|
||||||
globals = { mapleader = " "; };
|
|
||||||
|
|
||||||
maps.normal = {
|
|
||||||
"<leader>ff" = "<cmd>lua require('telescope.builtin').find_files()<cr>";
|
|
||||||
"<leader>fg" = "<cmd>lua require('telescope.builtin').live_grep()<cr>";
|
|
||||||
"<C-_>" =
|
|
||||||
"<cmd>lua require('Comment.api').toggle.linewise.current()<cr>"; # map ctrl+/ to commenting code
|
|
||||||
};
|
|
||||||
|
|
||||||
extraPlugins = with pkgs.vimPlugins; [ catppuccin-nvim luasnip ];
|
|
||||||
|
|
||||||
colorscheme = "catppuccin-frappe";
|
|
||||||
|
|
||||||
extraConfigLua = builtins.readFile ./nvim.lua;
|
|
||||||
|
|
||||||
plugins = {
|
|
||||||
bufferline.enable = true;
|
|
||||||
nix.enable = true;
|
|
||||||
treesitter = {
|
|
||||||
enable = true;
|
|
||||||
nixGrammars = true;
|
|
||||||
# ensureInstalled = [ ];
|
|
||||||
};
|
|
||||||
surround.enable = true;
|
|
||||||
fugitive.enable = true;
|
|
||||||
gitgutter.enable = true;
|
|
||||||
lualine = {
|
|
||||||
enable = true;
|
|
||||||
theme = "catppuccin";
|
|
||||||
};
|
|
||||||
telescope = {
|
|
||||||
enable = true;
|
|
||||||
extensions.fzf-native.enable = true;
|
|
||||||
extensions.fzf-native.fuzzy = true;
|
|
||||||
};
|
|
||||||
comment-nvim = { enable = true; };
|
|
||||||
lsp = {
|
|
||||||
enable = true;
|
|
||||||
servers.rust-analyzer.enable = true;
|
|
||||||
servers.rnix-lsp.enable = true;
|
|
||||||
servers.pyright.enable = true;
|
|
||||||
servers.elixirls.enable = true;
|
|
||||||
servers.clangd.enable = true;
|
|
||||||
};
|
|
||||||
trouble.enable = true;
|
|
||||||
lspkind.enable = true;
|
|
||||||
nvim-cmp = {
|
|
||||||
enable = true;
|
|
||||||
autoEnableSources = true;
|
|
||||||
sources = [
|
|
||||||
{ name = "nvim_lsp"; }
|
|
||||||
{ name = "cmp-latex-symbols"; }
|
|
||||||
{
|
|
||||||
name = "luasnip";
|
|
||||||
option = { show_autosnippets = true; };
|
|
||||||
}
|
|
||||||
{ name = "cmp-spell"; }
|
|
||||||
{ name = "cmp-rg"; }
|
|
||||||
{ name = "path"; }
|
|
||||||
{ name = "buffer"; }
|
|
||||||
];
|
|
||||||
snippet.expand = "luasnip";
|
|
||||||
mappingPresets = [ "insert" "cmdline" ];
|
|
||||||
mapping = {
|
|
||||||
"<CR>" = "cmp.mapping.confirm({ select = true })";
|
|
||||||
"<Tab>" = {
|
|
||||||
modes = [ "i" "s" ];
|
|
||||||
action = ''
|
|
||||||
function(fallback)
|
|
||||||
local luasnip = require('luasnip')
|
|
||||||
if cmp.visible() then
|
|
||||||
cmp.select_next_item()
|
|
||||||
elseif luasnip.expandable() then
|
|
||||||
luasnip.expand()
|
|
||||||
elseif luasnip.expand_or_jumpable() then
|
|
||||||
luasnip.expand_or_jump()
|
|
||||||
else
|
|
||||||
fallback()
|
|
||||||
end
|
|
||||||
end
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,32 +0,0 @@
|
||||||
{ lib, pkgs, config, ... }:
|
|
||||||
let
|
|
||||||
theme = "Catppuccin-Pink-Dark";
|
|
||||||
cursorTheme = config.home.pointerCursor.name;
|
|
||||||
in {
|
|
||||||
home.pointerCursor = {
|
|
||||||
name = "Bibata_Ghost";
|
|
||||||
size = 24;
|
|
||||||
package = pkgs.bibata-cursors-translucent;
|
|
||||||
};
|
|
||||||
|
|
||||||
gtk = {
|
|
||||||
enable = true;
|
|
||||||
theme = {
|
|
||||||
name = theme;
|
|
||||||
package = pkgs.catppuccin-gtk;
|
|
||||||
};
|
|
||||||
iconTheme = {
|
|
||||||
name = "Papirus-Dark";
|
|
||||||
package = pkgs.papirus-icon-theme.override { color = "violet"; };
|
|
||||||
};
|
|
||||||
cursorTheme = {
|
|
||||||
name = cursorTheme;
|
|
||||||
inherit (config.home.pointerCursor) package size;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.vscode = {
|
|
||||||
userSettings."workbench.colorTheme" = "Catppuccin Frappé";
|
|
||||||
extensions = [ pkgs.vscode-extensions.catppuccin.catppuccin-vsc ];
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -11,12 +11,16 @@ in {
|
||||||
home.homeDirectory = "/home/victor";
|
home.homeDirectory = "/home/victor";
|
||||||
home.stateVersion = "23.05";
|
home.stateVersion = "23.05";
|
||||||
|
|
||||||
imports = [ ./theme.nix ./neovim.nix ];
|
|
||||||
|
|
||||||
dconf.settings."org/gnome/desktop/peripherals/mouse" = {
|
dconf.settings."org/gnome/desktop/peripherals/mouse" = {
|
||||||
accel-profile = "flat";
|
accel-profile = "flat";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Enable my neovim config
|
||||||
|
programs.v.nvim.enable = true;
|
||||||
|
|
||||||
|
# Enable catppuccin theme
|
||||||
|
themes.v.catppuccin.enable = true;
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
btop
|
btop
|
||||||
calibre
|
calibre
|
||||||
|
|
|
@ -1,94 +0,0 @@
|
||||||
{ inputs, pkgs, ... }: {
|
|
||||||
imports = [ inputs.nixvim.homeManagerModules.nixvim ];
|
|
||||||
programs.nixvim = {
|
|
||||||
enable = true;
|
|
||||||
package = pkgs.neovim-unwrapped;
|
|
||||||
vimAlias = true;
|
|
||||||
|
|
||||||
globals = { mapleader = " "; };
|
|
||||||
|
|
||||||
maps.normal = {
|
|
||||||
"<leader>ff" = "<cmd>lua require('telescope.builtin').find_files()<cr>";
|
|
||||||
"<leader>fg" = "<cmd>lua require('telescope.builtin').live_grep()<cr>";
|
|
||||||
"<C-_>" =
|
|
||||||
"<cmd>lua require('Comment.api').toggle.linewise.current()<cr>"; # map ctrl+/ to commenting code
|
|
||||||
};
|
|
||||||
|
|
||||||
extraPlugins = with pkgs.vimPlugins; [ catppuccin-nvim luasnip ];
|
|
||||||
|
|
||||||
colorscheme = "catppuccin-frappe";
|
|
||||||
|
|
||||||
extraConfigLua = builtins.readFile ./nvim.lua;
|
|
||||||
|
|
||||||
plugins = {
|
|
||||||
bufferline.enable = true;
|
|
||||||
nix.enable = true;
|
|
||||||
treesitter = {
|
|
||||||
enable = true;
|
|
||||||
nixGrammars = true;
|
|
||||||
# ensureInstalled = [ ];
|
|
||||||
};
|
|
||||||
surround.enable = true;
|
|
||||||
fugitive.enable = true;
|
|
||||||
gitgutter.enable = true;
|
|
||||||
lualine = {
|
|
||||||
enable = true;
|
|
||||||
theme = "catppuccin";
|
|
||||||
};
|
|
||||||
telescope = {
|
|
||||||
enable = true;
|
|
||||||
extensions.fzf-native.enable = true;
|
|
||||||
extensions.fzf-native.fuzzy = true;
|
|
||||||
};
|
|
||||||
comment-nvim = { enable = true; };
|
|
||||||
lsp = {
|
|
||||||
enable = true;
|
|
||||||
servers.rust-analyzer.enable = true;
|
|
||||||
servers.rnix-lsp.enable = true;
|
|
||||||
servers.pyright.enable = true;
|
|
||||||
servers.elixirls.enable = true;
|
|
||||||
servers.clangd.enable = true;
|
|
||||||
};
|
|
||||||
trouble.enable = true;
|
|
||||||
lspkind.enable = true;
|
|
||||||
nvim-cmp = {
|
|
||||||
enable = true;
|
|
||||||
autoEnableSources = true;
|
|
||||||
sources = [
|
|
||||||
{ name = "nvim_lsp"; }
|
|
||||||
{ name = "cmp-latex-symbols"; }
|
|
||||||
{
|
|
||||||
name = "luasnip";
|
|
||||||
option = { show_autosnippets = true; };
|
|
||||||
}
|
|
||||||
{ name = "cmp-spell"; }
|
|
||||||
{ name = "cmp-rg"; }
|
|
||||||
{ name = "path"; }
|
|
||||||
{ name = "buffer"; }
|
|
||||||
];
|
|
||||||
snippet.expand = "luasnip";
|
|
||||||
mappingPresets = [ "insert" "cmdline" ];
|
|
||||||
mapping = {
|
|
||||||
"<CR>" = "cmp.mapping.confirm({ select = true })";
|
|
||||||
"<Tab>" = {
|
|
||||||
modes = [ "i" "s" ];
|
|
||||||
action = ''
|
|
||||||
function(fallback)
|
|
||||||
local luasnip = require('luasnip')
|
|
||||||
if cmp.visible() then
|
|
||||||
cmp.select_next_item()
|
|
||||||
elseif luasnip.expandable() then
|
|
||||||
luasnip.expand()
|
|
||||||
elseif luasnip.expand_or_jumpable() then
|
|
||||||
luasnip.expand_or_jump()
|
|
||||||
else
|
|
||||||
fallback()
|
|
||||||
end
|
|
||||||
end
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
Loading…
Reference in a new issue