تثبيت بأمر واحد على جميع المنصات. بدون sudo — يُثبّت في مجلد المنزل الخاص بك.
لإعداد الخادم بعد التثبيت، راجع البداية السريعة. لمديري الحزم وDocker والطرق الأخرى، راجع تثبيت الخادم.
ما يفعله المُثبّت
١. يكتشف نظام التشغيل وبنية المعالج وتفاوتات المنصة (Rosetta ٢)
٢. يُنزّل الملف الثنائي الصحيح من إصدارات GitHub
٣. يُثبّت في ~/bin (قابل للتخصيص عبر --install-dir)
٤. يُضيف مجلد التثبيت إلى PATH عبر تهيئة الصدفة
٥. يُنفّذ bedrud completions للاكتمال التلقائي في الصدفة
٦. يطبع الخطوات التالية
المتطلبات
| المنصة | الاعتماديات |
|---|---|
| macOS / Linux | curl + tar |
| Windows | PowerShell 5.1+ (مضمّن مع Windows 10/11) |
التثبيت السريع
curl -fsSL https://get.bedrud.org | bashأعد تحميل الصدفة، ثم تحقّق:
source ~/.bashrc # أو ~/.zshrc
bedrud --versionirm https://get.bedrud.org/install.ps1 | iex
bedrud --versionالعلامات والخيارات
مُثبّت Bash
Usage: curl -fsSL https://get.bedrud.org | bash -s -- [options]
| العلامة | الافتراضي | الوصف |
|---|---|---|
--install-dir <dir> | ~/bin | مكان وضع الملف الثنائي |
--version <ver> | latest | تثبيت إصدار محدد (مثال: v1.2.0) |
--skip-shell | off | عدم تعديل ملفات RC للصدفة أو PATH |
-h, --help | — | طباعة التعليمات والخروج |
أمثلة:
# الافتراضي
curl -fsSL https://get.bedrud.org | bash
# تثبيت إصدار محدد
curl -fsSL https://get.bedrud.org | bash -s -- --version v1.2.0
# تثبيت على مستوى النظام
curl -fsSL https://get.bedrud.org | sudo bash -s -- --install-dir /usr/local/bin
# CI / الأتمتة — تخطي تهيئة الصدفة
curl -fsSL https://get.bedrud.org | bash -s -- --skip-shellمُثبّت PowerShell
Usage: irm https://get.bedrud.org/install.ps1 | iex
لتمرير المعاملات، احفظ الملف أولاً:
irm https://get.bedrud.org/install.ps1 -OutFile install.ps1
.\install.ps1 -Version v1.2.0 -InstallDir C:\Tools| المعامل | الافتراضي | الوصف |
|---|---|---|
-InstallDir <path> | $HOME\bin | مكان وضع bedrud.exe |
-Version <ver> | latest | تثبيت إصدار محدد |
-SkipPath | $false | عدم إضافة مجلد التثبيت إلى PATH المستخدم |
متغيرات البيئة
| المتغير | الافتراضي | المنصات | الوصف |
|---|---|---|---|
BEDRUD_INSTALL | ~/bin | Bash فقط | تجاوز مجلد التثبيت (مثل --install-dir) |
BEDRUD_REPO | bedrud-ir/bedrud | كلاهما | تجاوز مستودع GitHub (للمسارات أو النسخ المطابقة) |
BEDRUD_INSTALL=/opt/bedrud curl -fsSL https://get.bedrud.org | bash
BEDRUD_REPO=myorg/bedrud-fork curl -fsSL https://get.bedrud.org | bash$env:BEDRUD_REPO = "myorg/bedrud-fork"
irm https://get.bedrud.org/install.ps1 | iexدعم المنصات
| الهدف | نظام التشغيل | البنية | ملاحظات |
|---|---|---|---|
darwin_amd64 | macOS | Intel (x86_64) | قياسي |
darwin_arm64 | macOS | Apple Silicon (M1/M2/M3/M4) | اكتشاف Rosetta ٢ تلقائي |
linux_amd64 | Linux | x86_64 | قياسي |
linux_arm64 | Linux | ARM64 | قياسي |
freebsd_amd64 | FreeBSD | x86_64 | قياسي |
windows_amd64 | Windows | x86_64 | قياسي |
windows_arm64 | Windows | ARM64 | قياسي |
منطق اكتشاف نظام التشغيل والبنية
uname -s → "Darwin" → darwin
"Linux" → linux
"FreeBSD" → freebsd
"MINGW*" → إعادة توجيه إلى سكربت PowerShell
"MSYS*" → إعادة توجيه إلى سكربت PowerShell
uname -m → "x86_64" | "amd64" → amd64
"aarch64" | "arm64" → arm64
اكتشاف الحالات الخاصة
Rosetta ٢ (macOS Intel على Apple Silicon)
الاكتشاف: sysctl -n sysctl.proc_translated يُعيد ١.
التأثير: يبدّل darwin_amd64 → darwin_arm64 لأداء ARM أصلي.
تدفق التثبيت
١. فحص Windows — تم اكتشاف MINGW/MSYS/CYGWIN؟ يطبع أمر PowerShell ويخرج
٢. فحص الاعتماديات — يتطلب curl + tar
٣. تحليل المعاملات — بحد أقصى ٣ علامات
٤. اكتشاف المنصة — نظام التشغيل + البنية عبر uname
٥. اكتشاف التفاوتات — Rosetta ٢
٦. التنزيل — تنزيل bedrud_{TARGET}.tar.xz
٧. الاستخراج والتثبيت — مجلد مؤقت، استخراج، mv → $INSTALL_DIR/bedrud، chmod +x
٨. التحقق — يُنفّذ bedrud --version
٩. فحص PATH — موجود بالفعل؟ يتخطى. --skip-shell؟ يطبع أمراً يدوياً. وإلا → يعدّل ملف RC
١٠. الاكتمالات — يُنفّذ bedrud completions
١١. الانتهاء — يطبع رسالة النجاح وتعليمات إعادة التحميل
صيغة رابط التنزيل: github.com/{repo}/releases/{ver}/bedrud_{TARGET}.tar.xz
PATH وتهيئة الصدفة
عند عدم تعيين --skip-shell، يُضيف المُثبّت مجلد التثبيت إلى PATH.
| الصدفة | ملف RC |
|---|---|
| fish | ~/.config/fish/config.fish |
| zsh | $ZDOTDIR/.zshrc (الافتراضي ~/.zshrc) |
| bash (macOS) | ~/.bash_profile، ثم ~/.bashrc |
| bash (Linux) | ~/.bashrc، ثم ~/.bash_profile |
ما يتم إضافته:
# bedrud
export PATH="$HOME/bin:$PATH" # bedrudعلامة التعليق # bedrud تمنع الإدخالات المكررة — آمن لإعادة التشغيل.
Windows: يستخدم [Environment]::SetEnvironmentVariable("PATH", ..., "User") على مستوى السجل. لا حاجة لملف RC.
أعد تحميل الصدفة بعد التثبيت:
source ~/.bashrc # bash
source ~/.zshrc # zsh
source ~/.config/fish/config.fish # fishالتثبيت دون اتصال / المنشآت المعزولة
التنزيل والنقل
curl -fsSL -o bedrud.tar.xz \
https://github.com/bedrud-ir/bedrud/releases/latest/download/bedrud_linux_amd64.tar.xz
scp bedrud.tar.xz airgapped-server:/tmp/
# على الخادم الهدف:
tar -xf /tmp/bedrud.tar.xz -C /tmp/bedrud-extracted
mv /tmp/bedrud-extracted/bedrud ~/bin/
chmod +x ~/bin/bedrudالنسخة المطابقة المستضافة ذاتياً
BEDRUD_REPO=mycompany/bedrud-mirror curl -fsSL https://get.bedrud.org | bashالملف الثنائي المباشر
نزّل من الإصدارات، واستخرج، وانقل إلى مجلد في PATH.
الإزالة
rm ~/bin/bedrud
# أزل سطر PATH من ملف RC للصدفة (ابحث عن "# bedrud"):
# ~/.bashrc, ~/.bash_profile, ~/.zshrc, ~/.config/fish/config.fishلتثبيتات الخادم عبر systemd:
sudo bedrud uninstallWindows:
Remove-Item "$env:USERPROFILE\bin\bedrud.exe"
# أزل من PATH عبر خصائص النظام ← متغيرات البيئةاستكشاف الأخطاء وإصلاحها
command not found: bedrud
source ~/.bashrc # إعادة تحميل الصدفة
echo $PATH | tr ':' '\n' | grep "$HOME/bin" # فحص PATHإذا لم يكن موجوداً:
echo 'export PATH="$HOME/bin:$PATH"' >> ~/.bashrc
source ~/.bashrcFailed to download bedrud
١. تحقق من اتصال الإنترنت
٢. تأكد من وجود الهدف في الإصدارات
٣. جرّب إصداراً محدداً: --version v1.0.0
٤. قد لا تتوفر نسخة مُبنية مسبقاً لمنصتك بعد
macOS: تشغيل x64 تحت Rosetta (بطيء)
فرض ARM أصلي:
arch -arm64 curl -fsSL https://get.bedrud.org | arch -arm64 bashWindows: “running scripts is disabled”
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
irm https://get.bedrud.org/install.ps1 | iex