Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...

CreNTW

1 lid

Algemeen

CreNTW

بالتأكيد! إليك **دليل شامل للاستخدام** خطوة بخطوة: ## 📦 1. التحضير والإعداد ### أ) حفظ السكريبت ```bash # إنشاء ملف السكريبت nano deploy-and-verify.sh # أو استخدام محرر آخر vim deploy-and-verify.sh code deploy-and-verify.sh ``` **الصق الكود المحسّن** ثم احفظ الملف. ### ب) جعل الملف قابل للتنفيذ ```bash chmod +x deploy-and-verify.sh ``` ----- ## ⚙️ 2. إعداد البيئة ### أ) تثبيت المتطلبات ```bash # 1. تثبيت Solana CLI (إن لم يكن مثبتاً) sh -c "$(curl -sSfL https://release.solana.com/stable/install)" # 2. تثبيت solana-verify cargo install solana-verify # 3. التحقق من التثبيت solana --version solana-verify --version ``` ### ب) إعداد Keypair (محفظة) ```bash # إنشاء محفظة جديدة (أو استخدام موجودة) solana-keygen new --outfile ~/.config/solana/id.json # تعيينها كمحفظة افتراضية solana config set --keypair ~/.config/solana/id.json # التحقق solana address ``` ### ج) الحصول على SOL للـ Devnet ```bash # تعيين الشبكة إلى devnet solana config set --url https://api.devnet.solana.com # طلب SOL مجاني (airdrop) solana airdrop 2 # التحقق من الرصيد solana balance ``` ----- ## 🔑 3. إعداد Program ID ### الطريقة 1: إنشاء Program ID مخصص (موصى به) ```bash # إنشاء program ID يبدأ بـ STK (مثال) solana-keygen grind --starts-with STK:1 # ستحصل على شيء مثل: # STKxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # احفظ المفتاح في مكان آمن mv STKxxxxx.json programs/staking_program/target/deploy/staking_program-keypair.json ``` ### الطريقة 2: استخدام Program ID موجود ```bash # إذا كان لديك program ID موجود export PROGRAM_ID="STK7x8PBrNqJznxaKKKH9cNxQQQQQQQQQQQQQQQ" ``` ----- ## 🎯 4. تعديل الإعدادات في السكريبت افتح `deploy-and-verify.sh` وعدّل: ```bash # ⚙️ الإعدادات NETWORK_URL="https://api.devnet.solana.com" # أو mainnet-beta PROGRAM_NAME="staking_program" # اسم المجلد في programs/ PROGRAM_LIB_NAME="staking_program" # اسم المكتبة في Cargo.toml PROGRAM_ID="STK7x8PBrNqJznxaKKKH9cNxQQQQQQQQQQQQQQQ" # ضع Program ID الخاص بك REPO_PATH="YourUsername/your-repo-name" # مسار الريبو على GitHub ``` ----- ## 🚀 5. تشغيل السكريبت ### الطريقة 1: التشغيل العادي ```bash ./deploy-and-verify.sh ``` ### الطريقة 2: مع متغيرات مخصصة (بدون تعديل الملف) ```bash # تحديد Program ID فقط PROGRAM_ID="STKxxx..." ./deploy-and-verify.sh # تحديد عدة متغيرات PROGRAM_ID="STKxxx..." \ REPO_PATH="myusername/my-staking" \ NETWORK_URL="https://api.mainnet-beta.solana.com" \ ./deploy-and-verify.sh ``` ### الطريقة 3: حفظ الإعدادات في ملف منفصل ```bash # إنشاء ملف .env cat > .env << EOF export PROGRAM_ID="STKxxx..." export REPO_PATH="username/repo" export NETWORK_URL="https://api.devnet.solana.com" EOF # تحميل المتغيرات وتشغيل السكريبت source .env && ./deploy-and-verify.sh ``` ----- ## 📋 6. ما يحدث عند التشغيل السكريبت سيقوم بـ: ### ✅ **المرحلة 1: الفحص الأولي** ``` 🔍 Checking prerequisites... ✅ Uploader pubkey: 8x7Pq... 💰 Current balance: 5.2 SOL ``` ### ✅ **المرحلة 2: البناء** ``` 🚧 Building Solana program... ✅ Build complete: target/deploy/staking_program.so (245KB) ``` ### ✅ **المرحلة 3: التأكيد قبل الـ Deploy** ``` 💸 Estimated deployment cost: ~0.8 SOL Proceed with deployment? (y/N) ``` **اكتب `y` واضغط Enter** ### ✅ **المرحلة 4: الـ Deploy** ``` 🚀 Deploying program to devnet... ✅ Program deployed successfully! ``` ### ✅ **المرحلة 5: التحقق المحلي** ``` 🔍 Generating solana-verify build... ✅ Verification build data generated! ``` ### ✅ **المرحلة 6: التحقق من المصدر** ``` 🔎 Verifying program against GitHub repo... ✅ Source verification successful! ``` ### ✅ **المرحلة 7: التحقق عن بُعد (اختياري)** ``` 📡 Submit remote verification job? (y/N) ``` **اكتب `y` إذا كنت تريد** ### ✅ **الملخص النهائي** ``` 🎉 All steps completed successfully! ═══════════════════════════════════════ 📋 Summary: • Network: devnet • Program ID: STKxxx... • Binary: target/deploy/staking_program.so (245KB) 🔗 Useful links: • Solana Explorer: https://explorer.solana.com/address/STKxxx?cluster=devnet • Verify UI: https://verify.osec.io/status/STKxxx ``` ----- ## 🔧 7. استكشاف الأخطاء ### ❌ خطأ: “Solana CLI not found” ```bash # الحل: sh -c "$(curl -sSfL https://release.solana.com/stable/install)" export PATH="$HOME/.local/share/solana/install/active_release/bin:$PATH" ``` ### ❌ خطأ: “No Solana keypair configured” ```bash # الحل: solana-keygen new ``` ### ❌ خطأ: “Insufficient funds” ```bash # الحل (devnet): solana airdrop 2 # الحل (mainnet): # احصل على SOL حقيقي من منصة تداول ``` ### ❌ خطأ: “Verification failed” ```bash # الأسباب المحتملة: # 1. الكود في GitHub مختلف عن الكود المحلي git status # تحقق من التغييرات غير المحفوظة # 2. نسيت عمل push git push origin main # 3. اختلاف إصدار Rust/Solana rustc --version solana --version ``` ----- ## 🎓 8. أمثلة عملية ### مثال كامل من الصفر: ```bash # 1. إنشاء المشروع anchor init my-staking-program cd my-staking-program # 2. تطوير البرنامج # ... (اكتب الكود) # 3. رفع إلى GitHub git init git add . git commit -m "Initial commit" git


Leden

abrahem.75Owner


Top.gg

Explore millions of Discord Bots & Discord Apps

Support

Ticket versturen

Manage Cookie Settings