{ pkgs, ... }: { # https://nixos.wiki/wiki/Visual_Studio_Code
  programs.vscode = {
    enable = true;

    # Что-то из этого может пригодиться, если хочу ставить пакеты без декларативности
    # package = pkgs.vscode.fhs; # Почему в вики написано ".fhs", если пакет называется "-fhs"?
    # package = pkgs.vscode-with-extensions; # Мб это надо?


    # Чтоб узнать sha256, я скачал расширение напрямую с сайта маркетплейса
    # А потом в терминале написал "sha256sum filename"
    # В оф репе юзают такой скрипт для установки расширений, не знаю поможет ли
    # https://github.com/NixOS/nixpkgs/blob/master/pkgs/applications/editors/vscode/extensions/update_installed_exts.sh#L34
    # Имя и паблишер берутся из ссылки. После "?itemName" идёт паблишер.нейм
    extensions = with pkgs.vscode-extensions; [
      jdinhlife.gruvbox # Gruvbox theme
      eamodio.gitlens # GitLens - Git supercharged
      jnoortheen.nix-ide # Nix language support - syntax highlighting, formatting, and error reporting.
      sumneko.lua # Lua language server
      naumovs.color-highlight # Highlight web colors in your editor
      tamasfe.even-better-toml # Fully-featured TOML support
      ms-python.python # Python language support
      golang.go # Rich Go language support
    ] ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [ # Руками с гита ставить
      { # https://marketplace.visualstudio.com/items?itemName=budparr.language-hugo-vscode
        name = "language-hugo-vscode";
        publisher = "budparr";
        version = "1.3.1";
        sha256 = "f5da7cfe02c06fc3899e6b0b55b380280619e7085abcf5b6024f9684ba846c99";
      }
      { # https://marketplace.visualstudio.com/items?itemName=Codeium.codeium
        name = "codeium";
        publisher = "Codeium";
        version = "1.11.9";
        sha256 = "0e07e78e487418d0c5289eeb2c530dd7dd18f82612e46c8b177f2a1f95acb730";
      }
    ];

    userSettings = {
      "telemetry.telemetryLevel" = "off";
      "update.showReleaseNotes" = false;
      "workbench.colorTheme" = "Gruvbox Dark Medium";
      "editor.fontFamily" = "JetBrainsMono Nerd Font";
    };

    globalSnippets = {};

    languageSnippets = {};

    # keybindings = [
    #   {
    #     key = "ctrl+c";
    #     command = "editor.action.clipboardCopyAction";
    #     when = "textInputFocus";
    #   }
    # ];
  };
}