{ pkgs, inputs, ... }: { home.packages = [pkgs.python3]; programs.vscode = { enable = true; userSettings = { editr = { fontFamily = "'Berkeley Mono', 'Droid Sans Mono', 'monospace', monospace"; formatOnType = true; fontSize = 16; }; files.autoSave = "onFocusChange"; rust-analyzer.checkOnSave.command = "clippy"; platformio-ide = { useBuiltinPIOCore = true; useBuiltinPython = true; }; }; extensions = with pkgs.vscode-extensions; [ inputs.nixpkgs-rust-analyzer.legacyPackages.x86_64-linux.vscode-extensions.rust-lang.rust-analyzer (pkgs.vscode-utils.buildVscodeExtension { vscodeExtUniqueId = "vadimcn.vscode-lldb"; vscodeExtPublisher = "vadimcn"; vscodeExtName = "vscode-lldb"; version = "1.6.10"; name = "vadimcn.vscode-lldb-1.6.10"; src = pkgs.fetchurl { name = "vadimcn.vscode-lldb.zip"; url = "https://github.com/vadimcn/vscode-lldb/releases/download/v1.6.10/codelldb-${pkgs.system}.vsix"; sha256 = "sha256-QWbpe6ofacjrTCyWSKljwHDWWeHGmKNqi7cpw8Qy5Tw="; }; buildInputs = with pkgs; [llvm lldb python39 autoPatchelfHook]; }) ] ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [ { publisher = "vscodevim"; name = "vim"; version = "1.25.2"; sha256 = "sha256-hy2Ks6oRc9io6vfgql9aFGjUiRzBCS4mGdDO3NqIFEg="; } { publisher = "bierner"; name = "markdown-mermaid"; version = "1.18.1"; sha256 = "sha256-JWeSs7V/LZ345vGWOLeUgGi68Fot/eA2k+CzWL/Wp4w="; } { publisher = "arrterian"; name = "nix-env-selector"; version = "1.0.9"; sha256 = "sha256-TkxqWZ8X+PAonzeXQ+sI9WI+XlqUHll7YyM7N9uErk0="; } { publisher = "bbenoist"; name = "nix"; version = "1.0.1"; sha256 = "sha256-qwxqOGublQeVP2qrLF94ndX/Be9oZOn+ZMCFX1yyoH0="; } { publisher = "hashicorp"; name = "terraform"; version = "2.19.0"; sha256 = "sha256-k/fcEJuELz0xkwivSrP6Nxtz861BLq1wR2ZDMXVrvkY="; } { publisher = "be5invis"; name = "toml"; version = "0.6.0"; sha256 = "sha256-yk7buEyQIw6aiUizAm+sgalWxUibIuP9crhyBaOjC2E="; } { publisher = "tiehuis"; name = "zig"; version = "0.2.5"; sha256 = "sha256-P8Sep0OtdchTfnudxFNvIK+SW++TyibGVI9zd+B5tu4="; } { publisher = "sjhuangx"; name = "vscode-scheme"; version = "0.4.0"; sha256 = "07vjfymvfv98s5r5a4b5iqhgfz1wpgq2l8h3wlq1bnhhhvmq5pq4"; } { publisher = "shaunlebron"; name = "vscode-parinfer"; version = "0.6.2"; sha256 = "0h4v4rnximy6rbh83y4s2qj1cqbj66g9wld39mzd0zwgi6ig9syd"; } { publisher = "swyphcosmo"; name = "spellchecker"; version = "1.2.13"; sha256 = "1lr33lf01afgi74c1a9gylk92li4hyq24l8bki4l6ggl4z4c2h3w"; } { publisher = "asabil"; name = "meson"; version = "1.1.1"; sha256 = "00cc28a2nb325f54bx51wf5q15x1pmsn0j9z6rnxxqxwii1dm5cl"; } { publisher = "codezombiech"; name = "gitignore"; version = "0.6.0"; sha256 = "0gnc0691pwkd9s8ldqabmpfvj0236rw7bxvkf0bvmww32kv1ia0b"; } { publisher = "DavidAnson"; name = "vscode-markdownlint"; version = "0.26.0"; sha256 = "0g4pssvajn7d8p2547v7313gjyqx4pzs7cbjws2s3v2fk1sw7vbj"; } { publisher = "esbenp"; name = "prettier-vscode"; version = "1.8.1"; sha256 = "0qcm2784n9qc4p77my1kwqrswpji7bp895ay17yzs5g84cj010ln"; } { publisher = "hbenl"; name = "vscode-test-explorer"; version = "2.9.3"; sha256 = "1yf85hgvganxq5n5jff9ckn3smxd6xi79cgn6k53qi5w1r5rahy0"; } { publisher = "lostintangent"; name = "vsls-pomodoro"; version = "0.1.0"; sha256 = "1b73zbkhlhacvi18cx4g3n6randy3hw9cab1gkw5gzb3375w7w3p"; } { publisher = "lostintangent"; name = "vsls-whiteboard"; version = "0.0.8"; sha256 = "13fcay9bs861msb5y694casbw66dmhl504xm5cvprssx1qka186p"; } { publisher = "mechatroner"; name = "rainbow-csv"; version = "1.0.0"; sha256 = "1fyamgm7zq31r3c00cn6pcb66rrkfhwfmp72qnhrajydmnvcnbg6"; } { publisher = "ronnidc"; name = "nunjucks"; version = "0.2.3"; sha256 = "119xgyn1dggw2rcqkn2mnz364iw5jlrxg7pcydbijsqj5d3zdfsf"; } { publisher = "serayuzgur"; name = "crates"; version = "0.4.2"; sha256 = "1knspsc98cfw4mhc0yaz0f2185sxdf9kn9qsysfs6c82g9wjaqcj"; } ]; }; }