۱. ابزار پایه
sudo apt install -y build-essential git curl pkg-config make
gcc --version && git --versionbuild-essential شامل gcc، g++، make و سرآیندهای libc است و برای کامپایل بیشتر نرمافزارها و ماژولهای Python و Node لازم است.
تنظیم اولیهی Git:
git config --global user.name "Ali Karimi"
git config --global user.email ali@sahor.ir
git config --global init.defaultBranch main۲. مخزن backports
Debian پایدار است چون نسخهی بستهها در طول عمر هر انتشار ثابت میماند. اگر برای یک برنامهی مشخص نسخهی جدیدتری لازم دارید، مخزن رسمی backports همان بسته را از نسخهی testing برای انتشار فعلی بازسازی کرده است.
CODENAME=$(. /etc/os-release; echo "$VERSION_CODENAME") # trixie (13) or bookworm (12)
sudo tee /etc/apt/sources.list.d/backports.sources >/dev/null <<EOT
Types: deb
URIs: http://deb.debian.org/debian
Suites: ${CODENAME}-backports
Components: main
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
EOT
sudo apt updateبستههای backports هیچوقت خودکار نصب نمیشوند. فقط وقتی صریحاً درخواست کنید نصب میشوند:
apt policy cockpit # compare versions
sudo apt install -t "${CODENAME}-backports" cockpit۳. نکتهها
- فقط بستهای را از backports بگیرید که واقعاً نسخهی جدیدترش را لازم دارید، نه کل سیستم را.
- بستهای که از backports نصب شود، بهروزرسانیهایش را هم از backports میگیرد.
- برای ابزارهایی که نسخهی آنها خیلی سریع عوض میشود (مثل Node.js یا Go برای پروژههای مختلف)، مدیر نسخهی کاربری (
nvm،uvیا آرشیو رسمی Go در/usr/local/go) معمولاً گزینهی تمیزتری است و به سیستم دست نمیزند.
نمونهی محیط Python مجزا بدون دست زدن به Python سیستم:
sudo apt install -y python3-venv
python3 -m venv ~/venvs/tools
~/venvs/tools/bin/pip install --upgrade pip httpie
~/venvs/tools/bin/http --versionدر Debian 12 و جدیدتر، pip install در Python سیستم با خطای externally-managed-environment متوقف میشود. این رفتار عمدی است: از venv یا بستهی python3-* در apt استفاده کنید.