Skip to content

Installation.ar

Anagnostakis Ioannis edited this page Sep 19, 2026 · 4 revisions

EN · EL · FR · ES · IT · RU · ZH · AR · HI · PT · DE

التثبيت

الطريقة السهلة: الحزمة الثنائية

على Slackware تُثبِّت الحزمة الثنائية المبنيّة من SlackBuild. وهي تضع كل شيءٍ في موضعه نيابةً عنك:

  • الملفُّ التنفيذيُّ slacker (/usr/bin/slacker
  • صفحة الدليل (man slacker
  • ملفّات الإعداد النصّية الصِّرفة تحت /etc/slacker/،
  • الإكمال التلقائي في الصَّدَفة لـ bash وzsh وfish،
  • slacker-gui (/usr/bin/slacker-gui)، مع مُدخَل سطح المكتب والأيقونات وسياسة polkit التي يستعملها لتنفيذ التغييرات بصلاحيات root.

أنت لا تنسخ أيَّ شيء. بعد تثبيت الحزمة، الإعداد الوحيد هو تحرير ملفّين — اختيار مرآةٍ في mirrors وضبط أولويات المستودعات في repos — ثم تشغيل slacker status (يفحص الإعداد ويُخبرك بما يلي)، وslacker update gpg، وslacker update. انظر Quick Start.

عند الترقيات، تُسلِّم Slackware ملفّات الإعداد المتغيّرة بصيغة *.new كي لا تُمحى تعديلاتك أبدًا؛ ويساعدك slacker new-config على التوفيق بينها.

البناء من المصدر (للمطوِّرين)

يتطلّب البناء Rust 1.85.1 أو أحدث — وهي أدنى نسخة Rust مدعومةٍ فعليًّا. وتأتي Slackware الحالية بـ Rust 1.96، وهو ملائم. (الـ crate نفسه من edition 2021، لكن اعتماديةً اسمها clap_lex مكتوبةٌ بـ edition 2024، وهي ما يضع الحدَّ عند 1.85.1 — لا شيفرة slacker نفسها.)

cargo build --release
install -m0755 target/release/slacker /usr/bin/slacker
install -m0644 man/slacker.8 /usr/man/man8/slacker.8
mkdir -p /etc/slacker
for f in slacker.conf distro-upgrade.conf mirrors repos blacklist; do
  install -m0644 CONF/etc-slacker/current/$(uname -m)/$f /etc/slacker/$f
done

(يُنشئ slacker المجلّد /etc/slacker/templates/ بنفسه عند أوّل generate-template.)

لا حاجة إلى root للبناء أو لتشغيل مجموعة الاختبارات؛ فقط الأوامر التي تُعدِّل النظام تحتاج إلى root.

cargo build
cargo test            # كل الاختبارات تنجح؛ والبناء خالٍ من التحذيرات

الاعتماديات

‏slacker خفيف الاعتماديات عن قصد. الـ crates المباشرة: clap، ureq، md-5، ‏regex، rusqlite. وكلُّ ثقيلٍ يُحال إلى الأدوات التي تأتي بها Slackware أصلًا:

  • installpkg / upgradepkg / removepkg — لعمليات الحزم الفعلية،
  • gpg2 (أو gpg إن لم يوجد) — للتحقُّق من التواقيع،
  • bzip2 — لِـ MANIFEST،
  • sha256sum — لمجاميع SHA الاختبارية،
  • diff — لِـ new-config.

يُعالَج TLS داخل العملية بواسطة rustls (عبر ميزة tls في ureq)، وتُصرَّف SQLite (التي يقرؤها resolve-stock) ضمن الملف التنفيذي عبر ميزة bundled في rusqlite، فلا يرتبط slacker لا بـ OpenSSL النظام ولا بـ SQLite النظام. ولا يحتاج الملف التنفيذي من النظام إلى أكثر من مكتبة C تقريبًا.

slacker-gui

الواجهة الرسومية منفصلة عن slacker وليست خفيفة الاعتماديات: فهي ترتبط بـ GTK4 وlibadwaita (>= 1.5)، وتحتاج إلى polkit (pkexec) مع وكيل مصادقة في الجلسة للإجراءات التي تُعدِّل النظام. أمّا slacker نفسه فلا يعتمد عليها.

ملاحظات التحزيم

إن كنت تبني حزمةً قابلة للتوزيع، فجمِّد إصدارات الاعتماديات أولًا كي يبقى البناء قابلًا لإعادة الإنتاج. انظر Building and Releasing.

تأكَّد من أنه يعمل

slacker --version
slacker status        # فحص سلامة الإعداد بأكمله

التالي: Quick Start.

Clone this wiki locally