تهدف أداة استبدال المصدر العالمي وإطار عمل chsrc
لجميع الأنظمة الأساسية إلى دعم أكبر عدد ممكن من بيئات أنظمة التشغيل مثل Linux وWindows (MSYS2 وCygwin) وmacOS وBSD وما إلى ذلك، بالإضافة إلى أكبر عدد ممكن من وحدات المعالجة المركزية مثل Loongson وFeiteng و ريسك-V .
نحن نستخدم C99 لتحقيق الأهداف المذكورة أعلاه. نحن لا نستخدم اللغات المترجمة مثل Python أو JS لأن أداة بسيطة لتغيير المصدر لا ينبغي أن تجبر المستخدمين على الحصول على مترجم ضخم وعشرات أو مئات ميغابايت من الملفات الأخرى.
هذا البرنامج مجاني ، وترخيص برنامج SDPX هو GPL-3.0-or-later and MIT
ملحوظة
يمكن لـ chsrc
استبدال أكثر من 60 هدفًا بالمصدر. الجميع يساهم ويحافظ فقط على الأجزاء التي يعرفها، وفي المقابل يحصل على المساعدة من الخبراء في جميع المجالات الأخرى . نرحب بالأشخاص الذين ليسوا على دراية بالتعاون بين GitHub وGitee لاغتنام هذه الفرصة للتعلم والمساهمة، ويمكن للمؤلف @ccmywish تقديم إرشادات محددة للمساهمة.
نصيحة
إن chsrc
ليس مجرد أداة لسطر الأوامر، ولكنه أيضًا إطار عمل لاستبدال المصدر، حتى أنه يمكّنك من كتابة طرق (وصفات) جديدة لاستبدال المصدر دون معرفة لغة C.
أضف على الفور طريقة تغيير المصدر لبرنامج جديد! اكتب وصفة حتى لو كنت لا تعرف ج
قائمة التحدي:
[مساعدة] قم بتوفير عنوان المصدر الافتراضي، مثل عنوان URL للمصدر الافتراضي لـ Ubuntu وDebian وGo وما إلى ذلك، لمساعدتنا في chsrc reset
[التحدي] كتابة غلاف التثبيت الموحد ونصوص PowerShell: اكتمل بواسطة @Efterklang و@xuan
[التحدي] وصفة CentOS (البث).
https://github.com/RubyMetric/chsrc/wiki
https://github.com/RubyMetric/chsrc/discussions
مهم
إذا تم تثبيته من خلال الطريقة اليدوية التالية، فسيتم تنزيله إلى الدليل الحالي ويمكن تشغيله مباشرة من خلال ./chsrc
يمكن تثبيته عبر scoop
، بفضل @Gn3po4g و@niheaven
مغرفة $ تثبيت Chsrc
قم بتنزيل أحدث إصدار من الملف الثنائي بنقرة واحدة من خلال برنامج PowerShell
النصي
$ iwr -useb "https://chsrc.run/windows" |
أو قم بتنزيل الملف الثنائي يدويًا. هذا هو الإصدار الأحدث، والذي غالبًا ما يكون أحدث مما يوفره scoop
، وهو مناسب للاستخدام في الوقت المناسب بعد إصلاح الأخطاء، وإضافة ميزات جديدة، وعندما لا يتم تثبيت scoop
.
# x64curl -L https://gitee.com/RubyMetric/chsrc/releases/download/pre/chsrc-x64-windows.exe -o chsrc.exe # x86curl -L https://gitee.com/RubyMetric/chsrc/ الإصدارات/التنزيل/ما قبل/chsrc-x86-windows.exe -o chsrc.exe
يدعم AUR
، ويمكن تثبيته عبر yay
، وذلك بفضل @Jerry-Terrasse
# AUR$ yay -S chsrc-bin # ثنائي من إصدار GitHub$ yay -S chsrc-git # البناء من أحدث فرع رئيسي (مستقر)$ yay -S chsrc # البناء من إصدار GitHub
يمكن تثبيت الإصدار الأحدث بنقرة واحدة من خلال البرنامج النصي shell
، وذلك بفضل @Efterklang و@xuan (ليتم اختباره من قبل المستخدمين، يرجى تقديم تعليقات في الإصدار رقم 98 على GitHub)
# يتم تثبيت المستخدمين غير الجذر على ~/.local/bin$ افتراضيًا على cur https:/chsrc.run/posix | bash # يتم تثبيت المستخدمين الجذر على /usr/local/bin$ افتراضيًا على cur https:/chsrc.run /posix |.sudo bash # استخدم -d لتحديد الدليل لتثبيت $ cur/posix |. تشغيل/بوسيكس |.bash -s -- -l en
يمكن تنزيل الملفات الثنائية وتثبيتها يدويًا
# x64curl -L https://gitee.com/RubyMetric/chsrc/releases/download/pre/chsrc-x64-linux -o chsrc; /chsrc/releases/download/pre/chsrc-aarch64-linux -o chsrc; linux -o chsrc;
يمكن تثبيته عبر homebrew
، وذلك بفضل @Aaron-212 و@chenrui333
$ تثبيت المشروب Chsrc
يمكن تثبيت أحدث إصدار من خلال البرنامج النصي shell
، وذلك بفضل @Efterklang و@xuan (ليتم اختباره بواسطة مستخدمي macOS، يرجى تقديم الملاحظات في الإصدار رقم 98 على GitHub)
# يتم تثبيت المستخدمين غير الجذر على ~/.local/bin$ افتراضيًا على cur https:/chsrc.run/posix | bash # يتم تثبيت المستخدمين الجذر على /usr/local/bin$ افتراضيًا على cur https:/chsrc.run /posix |.sudo bash # استخدم -d لتحديد الدليل لتثبيت $ cur/posix |. تشغيل/بوسيكس |.bash -s -- -l en
أو قم بتنزيل الملف الثنائي يدويًا، وهذا هو الإصدار الأحدث، والذي غالبًا ما يكون أحدث من الإصدار الذي يوفره homebrew
، وهو مناسب للاستخدام في الوقت المناسب بعد إصلاح الأخطاء وإضافة ميزات جديدة.
#arm64/aarch64curl -L https://gitee.com/RubyMetric/chsrc/releases/download/pre/chsrc-aarch64-macos -o chsrc; /RubyMetric/chsrc/releases/download/pre/chsrc-x64-macos -o chsrc;
$ git clone https://gitee.com/RubyMetric/chsrc.git; $ clang -Iinclude src/chsrc-main.c -o chsrc
استخدم: chsrc[options] [target] [mirror]help # اطبع هذه التعليمات، أو h, -h, --helpissue # عرض قائمة المشكلات ذات الصلة (أو ls, أو l) # قائمة بمصادر المرآة المتاحة والاستبدال المتاح قائمة أهداف المصدر مرآة/هدف # قائمة مصادر المرآة المتاحة، أو قائمة أهداف المصدر القابلة للاستبدال os/lang/ware # قائمة أنظمة التشغيل/لغات البرمجة/برامج المصادر القابلة للاستبدال قياس # قياس سرعة جميع مصادر الهدف cesu list # تحقق من المصادر المتاحة والوظائف المدعومة للهدف get # تحقق من استخدام المصدر الحالي لمجموعة الهدف # قم بتغيير المصدر وحدد المصدر الأسرع بعد ضبط قياس السرعة التلقائي < target> first # قم بتغيير المصدر، استخدم المصدر بأعلى سرعة تم قياسها من قبل فريق الصيانة set # قم بتغيير المصدر، حدد استخدام محطة مرآة (عرض من خلال أمر القائمة) set https ://url # قم بتغيير المصدر، إعادة تعيين عنوان URL للمصدر المحدد بواسطة المستخدم #Reset، باستخدام خيارات المصدر التي يستخدمها المنبع بشكل افتراضي: -dry # Dry Run، يحاكي عملية تغيير المصدر، الأمر يطبع فقط ولا يعمل -local # قم بتغيير المصادر لمشروع معين فقط وليس عالميًا (فقط بعض البرامج مثل المجمع ودعم pdm) -ipv6 # استخدم سرعة IPv6 قياس -en(glish) # استخدم الإخراج الإنجليزي -no-color # لا يوجد إخراج ملون
قياس السرعة تلقائيًا، والعثور على الأسرع، وتغيير المصدر $ chsrc set Ruby إذا كنت لا ترغب في قياس السرعة تلقائيًا، فيمكنك استخدام أسرع محطة مرآة تم اختبارها من قبل فريق الصيانة $ chsrc set Ruby أولاً قم أولاً بإدراج مواقع النسخ المتطابقة المتاحة، ثم حدد واحدًا، مثل استخدام RubyChina كموقع النسخ المتطابق $ chsrc ls Ruby تعيين $ Chsrc روبي Rubychina إذا كان لديك عنوان مرآة خاص بك، فاستخدم عنوان URL مخصصًا تعيين $ chsrc روبي https://gems.ruby-china.com/ بالنسبة للأهداف التي تدعم توفير الموارد *على مستوى المشروع*، يمكنك تجنب توفير الموارد العالمية (*على مستوى النظام* أو *على مستوى المستخدم*) $ chsrc set -local Bundle مجموعة $ chsrc - PDM المحلية
مجموعة Chsrc روبي|rb|الجوهرة|المجمع|روبيجيمس chsrc set python |.py |.pypi # قم بتغيير النقاط الثلاثة لمديري الحزم والشعر وpdm في نفس الوقت، أو يمكنك تغيير المصادر بشكل مستقل chsrc set pip مجموعة الشعر Chsrc مجموعة Chsrc PDM عقدة مجموعة chsrc |.nodejs # قم بتغيير مديري الحزم الثلاثة npm وغزل وpnpm في نفس الوقت، أو يمكنك تغيير المصادر بشكل مستقل مجموعة chsrc npm مجموعة Chsrc الغزل تعيين Chsrc pnpm مجموعة Chsrc nvm مجموعة chsrc كعكة مجموعة Chsrc بيرل | مجموعة Chsrc PHP | مجموعة Chsrc لوا | مجموعة Chsrc الصدأ | تعيين Chsrc الصدأ مجموعة Chsrc تذهب مجموعة Chsrc جافا |.mvn | مجموعة Chsrc clojure | مجموعة Chsrc ثبة | مجموعة Chsrc ترفرف مجموعة chsrc هاسكل | هاكاج | مجموعة chsrc ocaml |.opam# ستغير أيضًا مصدر الموصل الحيوي chsrc set r | مجموعة Chsrc جوليا
سودو Chsrc مجموعة أوبونتو سودو Chsrc مجموعة لينكس مينت | سودو Chsrc مجموعة ديبيان سودو Chsrc مجموعة فيدورا sudo chsrc set suse | سودو Chsrc مجموعة كالي سودو Chsrc مجموعة القوس سودو Chsrc مجموعة Archlinuxcn مجموعة سودو Chsrc مانجارو سودو Chsrc مجموعة جنتو مجموعة سودو Chsrc روكي لينكس سودو Chsrc مجموعة ألما | سودو Chsrc مجموعة جبال الألب Sudo Chsrc set void | سودو Chsrc مجموعة سولوس سودو Chsrc مجموعة روس | سودو Chsrc مجموعة trisquel سودو Chsrc مجموعة لايت | سودو Chsrc مجموعة raspi | سودو Chsrc مجموعة Armbian Sudo Chsrc قم بتعيين openwrt سودو Chsrc مجموعة openeuler سودو Chsrc مجموعة openanolis | سودو Chsrc مجموعة openkylin Sudo Chsrc قم بتعيين Deepin مجموعة Chsrc msys2 |.msys# BSDsudo مجموعة chsrc freebsd سودو Chsrc مجموعة openbsd سودو Chsrc مجموعة netbsd
مجموعة Chsrc Winget مجموعة Chsrc المشروب | مجموعة Chsrc الكاكاو بودس | مجموعة Chsrc dockerhub | مجموعة Chsrc فلاثوب | مجموعة Chsrc لا شىء chsrc setguix مجموعة Chsrc إيماكس | مجموعة chsrc تكس |.لاتكس | مجموعة Chsrc كوندا |
الرجاء تثبيت gcc
أو clang
، make
curl
# استخدم فرع التطوير لتطوير git clone https://gitee.com/RubyMetric/chsrc.git -b dev make # بشكل افتراضي، استخدم cc للتجميع make CC=clang # استخدم clang للتجميع make CC=gcc # استخدم gcc للتجميع make test # اختبار الأمر make test-xy # اختبار xy.hmake clean
يعتمد برنامج chsrc
الرئيسي ترخيص GPL-3.0-or-later
لضمان الحرية الدائمة للبرنامج
يستخدم xy.h
ترخيص MIT
لضمان إمكانية إعادة استخدام المكتبة في أكبر عدد ممكن من المواقف
بفضل مواقع المرايا المختلفة لتقديم خدمات مرآة مجانية عالية الجودة
يحتوي source.h على معلومات موقع المرآة العامة
محطات مرآة مخصصة محددة ضمن كل وصفة
شكر خاص للمنظمات أو المشاريع التالية:
محطة مرآة شبكة التعليم MirrorZ
جامعة تسينغهوا التونة
خدمة مرآة مصدر البرمجيات بجامعة شنغهاي جياو تونغ
رابطة مستخدمي Linux بجامعة العلوم والتكنولوجيا الصينية
شكرًا لمشروع المرآة من @eryajf
هل قمت بتوفير الوقت والجهد باستخدام chsrc
أو أي شيء آخر؟