Compare commits

..

No commits in common. "a44b125f4ae8f57a26acb29c9a709db86a33dd32" and "37caaa036d3f0d5333490b5bfa4e76c085f3aaf4" have entirely different histories.

7 changed files with 113 additions and 160 deletions

View file

@ -181,8 +181,12 @@
curl curl
librewolf librewolf
gnumake gnumake
clang
gcc gcc
cachix cachix
nodejs_22
cargo
rustc
gnupg gnupg
openssh openssh
python3 python3

View file

@ -136,6 +136,23 @@
wget wget
git git
curl curl
# librewolf
# gnumake
# clang
# gcc
# cachix
# nodejs_22
# cargo
# rustc
# gnupg
# openssh
# python3
# steam-run
# # deps for neovim compilation
# lua51Packages.lua
# lua51Packages.luarocks
# tree-sitter
]; ];
environment.variables = { environment.variables = {

View file

@ -164,8 +164,12 @@
curl curl
librewolf librewolf
gnumake gnumake
clang
gcc gcc
cachix cachix
nodejs_22
cargo
rustc
gnupg gnupg
openssh openssh
python3 python3

View file

@ -147,32 +147,4 @@
enableFishIntegration = true; enableFishIntegration = true;
enableBashIntegration = true; enableBashIntegration = true;
}; };
programs.yazi = {
enable = true;
enableBashIntegration = true;
enableFishIntegration = true;
plugins = {
mediainfo = pkgs.fetchFromGitHub {
owner = "Ape";
repo = "mediainfo.yazi";
rev = "c69314e80f5b45fe87a0e06a10d064ed54110439";
hash = "sha256-8xdBPdKSiwB7iRU8DJdTHY+BjfR9D3FtyVtDL9tNiy4=";
};
};
settings = {
plugin = {
prepend_previewers = [
{
mime = "{image,audio,video}/*";
run = "mediainfo";
}
{
mime = "application/x-subrip";
run = "mediainfo";
}
];
};
};
};
} }

View file

@ -6,29 +6,7 @@
withNodeJs = true; withNodeJs = true;
withRuby = true; withRuby = true;
extraPackages = with pkgs; [ extraPackages = with pkgs; [alejandra black stylua codespell nodePackages.prettier];
# TS/JS
nodePackages.prettier
# Rust
rust-analyzer
# Nix
alejandra
# Python
black
# Lua
stylua
lua-language-server
# Misc
codespell
ripgrep
yazi
fd
];
luaLoader.enable = true; luaLoader.enable = true;
performance = { performance = {
@ -41,7 +19,6 @@
opts = { opts = {
laststatus = 3; laststatus = 3;
relativenumber = true; relativenumber = true;
number = true;
}; };
globals = { globals = {
@ -358,15 +335,6 @@
silent = true; silent = true;
}; };
} }
{
action = '':lua vim.lsp.buf.code_action()<CR>'';
key = "<Leader>ca";
options = {
desc = "View available code actions";
noremap = true;
silent = true;
};
}
# { # {
# action = ":Yazi<CR>"; # action = ":Yazi<CR>";
# key = "<Leader>mf"; # key = "<Leader>mf";
@ -388,7 +356,6 @@
]; ];
plugins = { plugins = {
# LSP and Treesitter related
lsp = { lsp = {
enable = true; enable = true;
inlayHints = true; inlayHints = true;
@ -401,103 +368,55 @@
svelte.enable = true; svelte.enable = true;
tailwindcss.enable = true; tailwindcss.enable = true;
typst-lsp.enable = true; typst-lsp.enable = true;
rust-analyzer = {
enable = true;
installCargo = true;
installRustc = true;
};
marksman.enable = true; marksman.enable = true;
}; };
}; };
typescript-tools.enable = true;
presence-nvim = {
enable = true;
editingText = "Hacking %s";
workspaceText = "The One True Text Editor";
buttons = [
{
label = "GitHub";
url = "https://github.com/youwen5";
}
{
label = "Code Forge";
url = "https://code.youwen.dev/";
}
];
};
treesitter = { treesitter = {
enable = true; enable = true;
settings = { settings = {
highlight.enable = true; highlight.enable = true;
indent.enable = true; indent.enable = true;
folding.enable = true;
}; };
}; };
lsp-lines.enable = true;
crates-nvim.enable = true;
treesitter-context.enable = true; treesitter-context.enable = true;
wakatime.enable = true;
# Language specific tools
markdown-preview.enable = true;
# rustaceanvim.enable = true;
typescript-tools.enable = true;
# git stuff
lazygit.enable = true; lazygit.enable = true;
gitsigns.enable = true; gitsigns.enable = true;
# QoL and utility
intellitab.enable = true; intellitab.enable = true;
guess-indent.enable = true; guess-indent.enable = true;
vim-bbye.enable = true; vim-bbye.enable = true;
indent-blankline.enable = true; indent-blankline.enable = true;
which-key.enable = true; which-key.enable = true;
zen-mode.enable = true; zen-mode.enable = true;
markdown-preview.enable = true;
yanky = { yanky = {
enable = true; enable = true;
enableTelescope = true; enableTelescope = true;
}; };
telescope = { telescope = {
enable = true; enable = true;
extensions = {
ui-select = {
enable = true;
settings = {
codeactions = true;
}; };
};
media-files = {
enable = true;
settings = {
filetypes = [
"png"
"webp"
"jpg"
"jpeg"
"mp4"
"svg"
"pdf"
"mov"
"mkv"
"avi"
];
find_cmd = "rg";
};
dependencies = {
imageMagick.enable = true;
pdftoppm.enable = true;
ffmpegthumbnailer.enable = true;
};
};
};
};
trouble.enable = true;
direnv.enable = true;
yazi = {
enable = true;
settings = {
open_for_directories = true;
};
};
# Code formatting
conform-nvim = {
enable = true;
formatOnSave = {
timeoutMs = 500;
lspFallback = true;
};
formattersByFt = {
lua = ["stylua"];
python = ["black"];
nix = ["alejandra"];
svelte = ["prettier"];
rust = ["rust-analyzer"];
"*" = ["codespell"];
"_" = ["trim_whitespace"];
};
};
# mini.nvim
mini = { mini = {
enable = true; enable = true;
modules = { modules = {
@ -511,8 +430,25 @@
comment = {}; comment = {};
}; };
}; };
trouble.enable = true;
# Completion direnv.enable = true;
# cmp = {
# enable = true;
# settings = {
# mapping = {
# "<C-Space>" = "cmp.mapping.complete()";
# "<C-b>" = "cmp.mapping.scroll_docs(-4)";
# "<C-e>" = "cmp.mapping.close()";
# "<C-f>" = "cmp.mapping.scroll_docs(4)";
# "<C-p>" = "cmp.mapping(cmp.mapping.select_prev_item(), {'i', 's'})";
# "<C-n>" = "cmp.mapping(cmp.mapping.select_next_item(), {'i', 's'})";
# "<Tab>" = "cmp.mapping.confirm({ select = true })";
# };
# completion.autocomplete = [
# "require('cmp.types').cmp.TriggerEvent.TextChanged"
# ];
# };
# };
cmp-async-path.enable = true; cmp-async-path.enable = true;
cmp = { cmp = {
enable = true; enable = true;
@ -575,23 +511,28 @@
cmp-cmdline = { cmp-cmdline = {
enable = true; # autocomplete for cmdline enable = true; # autocomplete for cmdline
}; };
crates-nvim.enable = true;
# Extra (stuff that doesn't affect editing) conform-nvim = {
wakatime.enable = true;
presence-nvim = {
enable = true; enable = true;
editingText = "Hacking %s"; formatOnSave = {
workspaceText = "The One True Text Editor"; timeoutMs = 500;
buttons = [ lspFallback = true;
{ };
label = "GitHub"; formattersByFt = {
url = "https://github.com/youwen5"; lua = ["stylua"];
} python = ["black"];
{ nix = ["alejandra"];
label = "Code Forge"; svelte = ["prettier"];
url = "https://code.youwen.dev/"; rust = ["rust-analyzer"];
} "*" = ["codespell"];
]; "_" = ["trim_whitespace"];
};
};
yazi = {
enable = true;
settings = {
open_for_directories = true;
};
}; };
}; };
@ -623,15 +564,11 @@
hash = "sha256-5CS5kvUSqQJe7iFFpicinBjCQXgFPL0ElGgnrZHTT+Y="; hash = "sha256-5CS5kvUSqQJe7iFFpicinBjCQXgFPL0ElGgnrZHTT+Y=";
}; };
}) })
(pkgs.vimUtils.buildVimPlugin {
name = "rustaceanvim";
src = pkgs.fetchFromGitHub {
owner = "mrcjkb";
repo = "rustaceanvim";
rev = "7cba8e599deca98d4b44cac1bcbd720c62937d90";
hash = "sha256-OYfeJuo4FZUBdW9wGGCT0lZGYr/ur1uy8frcyUJMF3k=";
};
})
]; ];
}; };
programs.yazi = {
enable = true;
enableBashIntegration = true;
enableFishIntegration = true;
};
} }

View file

@ -40,6 +40,11 @@
# it provides the command `nom` works just like `nix` # it provides the command `nom` works just like `nix`
# with more details log output # with more details log output
nix-output-monitor nix-output-monitor
# dev tools
nodePackages_latest.pnpm
rustfmt
rust-analyzer
]; ];
programs.git.extraConfig.commit.gpgsign = "false"; programs.git.extraConfig.commit.gpgsign = "false";

View file

@ -39,7 +39,21 @@ with pkgs; [
vesktop vesktop
signal-desktop signal-desktop
# dev tools
nodePackages_latest.pnpm
rustfmt
rust-analyzer
gcc gcc
lua51Packages.luarocks
lua
nodejs_22
python3
tree-sitter
cargo
rustc
# currently marked broken
# haskellPackages.stack
# haskellPackages.ghcup
# desktop ricing # desktop ricing
bibata-cursors bibata-cursors