mirror of
https://github.com/youwen5/nixos.git
synced 2024-11-28 11:43:51 -08:00
Compare commits
No commits in common. "a44b125f4ae8f57a26acb29c9a709db86a33dd32" and "37caaa036d3f0d5333490b5bfa4e76c085f3aaf4" have entirely different histories.
a44b125f4a
...
37caaa036d
7 changed files with 113 additions and 160 deletions
|
@ -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
|
||||||
|
|
|
@ -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 = {
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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";
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -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;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -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";
|
||||||
|
|
|
@ -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
|
||||||
|
|
Loading…
Reference in a new issue