Logo von Thomas Waldecker Software Engineering
Veröffentlichungsdatum

Entwicklungsumgebung in WSL mit Debian, zsh, Nix

Autoren
  • avatar
    Name
    Thomas Waldecker

Eine Beschreibung meines Entwicklungs-Setups mit Windows, WSL, Debian und Nix. Dient hautpsächlich mir selbst, damit ich das als Referenz hab, wie ich mein Setup eingestellt habe.

Welche Projekte realisiere ich mit diesem Setup?

  • Webapplikationen mit verschiedenen Sprachen (php, Python, Node.js) für Front- und Backend
  • KI-Anwendungen mit Python
  • Containerbasierte Anwendungen mit Podman, Kubernetes.
  • Datenbanken in Containern
  • Embedded-Entwicklung mit Rust und Zephyr

Überblick:

  • Windows 11
  • WSL 2.5.10.0
  • Debian 13 (Trixie)
  • Nix

WSL

Installation von WSL in der Windows Powershell:

wsl --install -d Debian

Debian Pakete installieren

Grundlegende Pakete in Debian installieren:

sudo apt install zsh wget curl git xz-utils vim starship

zsh

Verwenden der oh-my-zsh Konfiguration für die zsh

sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

zsh-autosuggestions installieren.

Visual Studio Code

Starten von Visual Studio Code in wsl:

code .

Nix

Nix installieren (siehe: https://nix.dev/install-nix)

curl -L https://nixos.org/nix/install | sh -s -- --daemon

und konfigurieren für flakes und den nix command:

$ cat /etc/nix/nix.conf
experimental-features = nix-command flakes
build-users-group = nixbld

SSH

SSH-Keys und config in .ssh reinkopieren.

Fertig

Damit ist meine Entwicklungsumgebung fertig und bereit für alle möglichen Projekte. Die verschiedenen Tools wie php, Python, Node.js, yarn werden nur im Projekt mit den jeweils verwendeten Versionen installiert. Das ist der große Vorteil von Nix.

Ich verwende nicht die NixOS Distribution in WSL, ich hatte damit Probleme mit Visual Studio Code.