diff --git a/home-manager/no-gui.nix b/home-manager/no-gui.nix index 6b05a7e..42109f3 100644 --- a/home-manager/no-gui.nix +++ b/home-manager/no-gui.nix @@ -6,20 +6,9 @@ config, ... }: -{ - imports = [ - ./progs/fish.nix - ./progs/helix.nix - ]; +let + rust_pkgs = with pkgs; [ - home.stateVersion = "24.11"; - home.enableNixpkgsReleaseCheck = false; - - home.packages = with pkgs; [ - # hex viewer - hexyl - - # rust stuff (rust-bin.stable.latest.default.override ({ extensions = [ "rust-src" @@ -39,144 +28,161 @@ bolt_19 libllvm # llvm-profdata cargo-show-asm + cargo-flamegraph + ]; - # find typos in code - typos - - # python formatter - ruff - - # for website generation - hugo - go - - # java development - google-java-format # formatter - jdk # java - jdt-language-server # lsp server - - # for benchmaking stuff - hyperfine - - # replacements for common posix tools - eza # ls replacement - bat # pretty `cat` clone - delta # viewer for `git` and `diff` output - dust # pretty `du` version - duf # better `df` clone - gping # `ping`... but with a graph!! - tldr # `man` but more straight-forward and simpler - ripgrep # grep, but written in rust, respects .gitignore, and very very fast, command is `rg` - lurk # better strace - - # adds `sensors` command - lm_sensors - - # rssfeed - newsboat + lsps = with pkgs; [ + # java + jdt-language-server # HTML/CSS/JSON/ESLint language servers vscode-langservers-extracted - - just - - pfetch-rs - waypipe - htop - bottom - wget - unzip - compsize - killall - - sshfs - - # nix formatter - nixfmt-rfc-style - - # serial viewer - minicom - - # "~~matt's~~ my trace route" - mtr - - file - - b3sum - - ffmpeg-full - - # microcontroller tooling - probe-rs - (python312.withPackages ( ps: with ps; [ python-lsp-server # lsp python-lsp-ruff # ruff integration - - mypy # type checking - - pyserial - - numpy - matplotlib - notebook - - pandas ] )) - - # dep fails to build - # binwalk - - smartmontools - nil # nix lsp yaml-language-server # yaml lsp marksman # markdown lsp typescript-language-server # typescript lsp cmake-language-server # cmake lsp - - # clang-format and clang-tidy - clang-tools - clang - gdb - - # broken - # lldb - - fio - - age - git-crypt - - imagemagick - - nixpkgs-review - - nmap - - # terminal image viewer - timg - lsof - - tcpdump - - cargo-flamegraph - linuxKernel.packages.linux_6_14.perf - - borgbackup - - tinyxxd - - bfc - - # java assembler - jasmin - - # rust-written LLM inference - mistral-rs ]; +in +{ + imports = [ + ./progs/fish.nix + ./progs/helix.nix + ]; + + home.stateVersion = "24.11"; + home.enableNixpkgsReleaseCheck = false; + + home.packages = + with pkgs; + [ + # hex viewer + hexyl + + # find typos in code + typos + + # python formatter + ruff + + # for website generation + hugo + go + + # java development + google-java-format # formatter + jdk # java + + # for benchmaking stuff + hyperfine + + # replacements for common posix tools + eza # ls replacement + bat # pretty `cat` clone + delta # viewer for `git` and `diff` output + dust # pretty `du` version + duf # better `df` clone + gping # `ping`... but with a graph!! + tldr # `man` but more straight-forward and simpler + ripgrep # grep, but written in rust, respects .gitignore, and very very fast, command is `rg` + lurk # better strace + + # adds `sensors` command + lm_sensors + + # rssfeed + newsboat + + just + + pfetch-rs + waypipe + htop + bottom + wget + unzip + compsize + killall + + sshfs + + # nix formatter + nixfmt-rfc-style + + # serial viewer + minicom + + # "~~matt's~~ my trace route" + mtr + + file + + b3sum + + ffmpeg-full + + # microcontroller tooling + probe-rs + + (python312.withPackages ( + ps: with ps; [ + mypy # type checking + + pyserial + + numpy + matplotlib + notebook + + pandas + ] + )) + + binwalk + + smartmontools + + # clang-format and clang-tidy + clang-tools + clang + gdb + + fio + + age + git-crypt + + imagemagick + + nixpkgs-review + + nmap + + # terminal image viewer + timg + lsof + + tcpdump + + linuxKernel.packages.linux_6_14.perf + + borgbackup + + tinyxxd + + bfc + + # java assembler + jasmin + ] + ++ rust_pkgs + ++ lsps; # https://github.com/flamegraph-rs/flamegraph home.file.".cargo/config.toml".text = ''