COde Base Environment

This repository contains configuration files and installation scripts for a quick and ready-to-code work environment, based on any Debian or Debian-based distribution.

What you get

Running the installer gives you a clean, ready-to-code VSCode setup: system packages and build tools, a curated set of extensions, and preconfigured settings, keybindings and formatters โ€” all sourced from this repo, so nothing is left to guesswork.

Supported languages / tooling, each with its own formatter and extension:

Language / Tool Extension Formatter
C / C++ ms-vscode.cpptools vcFormat
Go golang.go gofmt (via Go extension)
Java vscjava.vscode-java-pack Red Hat Java formatter
Scala scalameta.metals Metals
JavaScript / JSON dbaeumer.vscode-eslint + esbenp.prettier-vscode Prettier
R reditorsupport.r (+ rdebugger.r-debugger) lintr
Python ms-python.python Black
Bash / shell mads-hartmann.bash-ide-vscode bash-ide formatter
LaTeX james-yu.latex-workshop latexindent

On top of that, cobe_code also brings in git, gh, ssh, the GitHub Copilot Chat extension, the Monokai Pro theme, and Remote-SSH support.

Install

The only prerequisite you need to cover is a working Debian in any version or form. There is just one installer at your disposal: cobe_code.

The installer does not symlink any file, it just copies the configurations in the right place, so they can be easily modified and eventually reset running the installer again.

To full install COBE, launch the installer (as described below) or just run the install script, it will execute the installer for you.

Code

This script installs all the basic packages you need and resets your VSCode configuration, plus it installs few extensions to make it as loose as a goose and ready to roll in no time. Run ./cobe_code any time you want from the root of the repository to clean VSCode for good.

You need to install VSCode yourself, check the official website for the deb package.

No-Install

If you donโ€™t want to run any installer, you can just copy the main configuration files with the following command and you got yourself just the VSCode dotfiles. Copy-pasta this in your terminal and hit enter ๐Ÿ˜Ž

sh -c '
    BASE="https://raw.githubusercontent.com/matteogiorgi/cobe/refs/heads/main/code"
    VSCODE_DIR="$HOME/.config/Code/User"
    FILES="settings.json keybindings.json"
    command -v wget >/dev/null 2>&1 || { echo "ERROR: install wget"; exit 1; }
    mkdir -p "$VSCODE_DIR"
    for FILE in $FILES; do
        [ -f "$VSCODE_DIR/$FILE" ] && cp "$VSCODE_DIR/$FILE" "$VSCODE_DIR/$FILE.bak"
        wget -qO "$VSCODE_DIR/$FILE" "$BASE/$FILE" && echo "$FILE copied"
    done
    echo "finish"
'