المصنفات | وصف |
---|---|
يبني | |
طَرد | |
ميتا |
الثنائيات للإصدار extended
+ withdeploy
من منشئ موقع Hugo الثابت، القابل للتثبيت عبر pip
يوفر هذا المشروع عجلات لـ Hugo بحيث يمكن استخدامها مع pip
على أنظمة التشغيل macOS وLinux وWindows؛ لبيثون 3.9 والإصدارات الأحدث.
ملحوظة
يتم فقط اختبار إصدارات EOL Python الأحدث والمستقرة والمنتظرة بشكل منتظم. إذا واجهت أي مشكلات مع الحزمة على إصدار معين من Python، فلا تتردد في فتح مشكلة.
Hugo هو منشئ مواقع ثابتة مكتوب بلغة Go. لقد تم تصميمه ليكون سريعًا ومرنًا، ويستخدمه العديد من الأشخاص والمؤسسات لمواقعهم الإلكترونية ووثائقهم ومدوناتهم الشخصية.
ملحوظة
لا ينتمي هذا التوزيع لـ Hugo
حاليًا إلى مشروع Hugo
الرسمي. الرجاء الرجوع إلى وثائق Hugo للحصول على مزيد من المعلومات حول Hugo.
hugo
الذي أقوم بتثبيته؟ تم إصدار هذا المشروع، hugo
جنبًا إلى جنب مع إصدارات Hugo وهو متوافق مع إصدار Hugo نفسه، والذي يستخدم SemVer
- ولكن من المحتمل أن يتم إصداره وفقًا لمعايير البرامج 0ver استنادًا إلى تاريخ الإصدارات الخاص بهم.
تتوفر ثنائيات hugo
من خلال هذه العجلات لإصدارات Hugo 0.121.2 وما فوق، من خلال PyPI أو من خلال الإصدارات على GitHub. إذا كنت تريد إصدارًا قديمًا من hugo
غير متوفر من خلال هذه الحزمة، فيرجى التفكير في استخدام ثنائيات Hugo الرسمية.
يرجى الرجوع إلى القسم الخاص بالأنظمة الأساسية المدعومة للحصول على قائمة بالعجلات المتاحة للأنظمة الأساسية والبنيات المدعومة. إذا كان الأمر كذلك، فانتقل إلى قسم Quickstart للبدء.
تحذير
نظرًا للقيود المفروضة على الحجم الإجمالي المتاح على PyPI لـ hugo
، فإن الإصدارات الأحدث فقط من Hugo متاحة للتنزيل من خلال pip
، وسيتم حذف الإصدارات الأقدم من هذه العجلات لإفساح المجال للإصدارات الأحدث. إذا كنت بحاجة إلى إصدار أقدم من Hugo، فيرجى التفكير في استخدام العجلات التي تم تحميلها على صفحة إصدارات GitHub أو ثنائيات Hugo الرسمية. يمكن إجراء الأول عبر pip
عن طريق تنزيل ملف .whl
، أو من خلال pipx
باستخدام عنوان URL مباشرة (مستحسن). على سبيل المثال، إذا كنت بحاجة إلى Hugo 0.122.0، فيمكنك تشغيل pipx install "https://github.com/agriyakhetarpal/hugo-python-distributions/releases/download/v0.122.0/hugo-0.122.0-cp311-cp311-win_amd64.whl"
لتنزيل وتثبيت العجلة الخاصة بـ Hugo 0.122.0 على نظام التشغيل Windows لـ Python 3.11.
قم بإنشاء بيئة افتراضية وتثبيت الحزمة (أو تثبيتها عالميًا على نظامك):
python -m virtualenv venv # (or your preferred method of creating virtual environments)
pip install hugo
يؤدي هذا إلى وضع تثبيت hugo
مع ملف قابل للتنفيذ في بيئتك الافتراضية وإضافة نقطة إدخال إليه في دليل bin
الخاص ببيئتك الافتراضية. يمكنك استخدام أمر hugo
كما تفعل عادةً:
hugo version
hugo env --logLevel info
وبدلاً من ذلك، يمكنك تثبيت الحزمة عالميًا على نظامك:
python3.X -m pip install hugo # Unix
py -m pip install hugo # Windows
نصيحة
إنها فكرة رائعة أن تستخدم pipx
لتثبيت Hugo أو استخدامه في مكان معزول دون الحاجة إلى إنشاء بيئة افتراضية، مما سيسمح لك بتشغيل Hugo كأداة سطر أوامر دون الحاجة إلى تثبيته عالميًا على نظامك. أي،
pipx install hugo # install and run Hugo through pipx
أو
pipx run hugo==0.121.2 # run a specific version of Hugo through pipx, even if a different version is installed in whatever environment you are in
الرجاء الرجوع إلى وثائق pipx
لمزيد من المعلومات.
بعد ذلك، يمكنك استخدام أوامر hugo
كما تفعل عادةً:
hugo version
hugo env --logLevel info
و
hugo new site mysite
hugo --printI18nWarnings server
# and so on
...
يمكن أن تسمح البيئات الافتراضية القياسية بتثبيت إصدارات متعددة من Hugo واستخدامها جنبًا إلى جنب. لاستخدام إصدار محدد من Hugo، يمكنك تحديد الإصدار عند تثبيت الحزمة (يرجى الرجوع إلى القسم ما هو إصدار hugo
الذي أقوم بتثبيته؟ لمزيد من المعلومات):
pip install " hugo==0.X.Y "
لمزيد من المعلومات حول استخدام Hugo وواجهة سطر الأوامر الخاصة به، يرجى الرجوع إلى وثائق Hugo ووثائق Hugo CLI.
يتم دعم مجموعة فرعية من الأنظمة الأساسية التي يدعمها Hugo نفسه بواسطة هذه العجلات لـ hugo
عبر hugo-python-distributions
. تتمثل الخطة في دعم أكبر عدد ممكن من الأنظمة الأساسية باستخدام عجلات Python وعلامات النظام الأساسي. يرجى الرجوع إلى الجدول التالي للحصول على قائمة بالأنظمة الأساسية والبنيات المدعومة:
منصة | بنيان | يدعم |
---|---|---|
ماك | x86_64 (إنتل) | ✅ نظام التشغيل macOS 10.13 (High Sierra) والإصدارات الأحدث |
ماك | ذراع 64 (سيليكون) | ✅ نظام التشغيل macOS 11.0 (Big Sur) والإصدارات الأحدث |
لينكس | AMD64 | ✅جليبك 2.24 فما فوق |
لينكس | ذراع64 | ✅جليبك 2.24 فما فوق |
لينكس | s390x | ✅جليبك 2.17 والإصدارات الأحدث |
لينكس | com.ppc64le | ✅جليبك 2.17 والإصدارات الأحدث |
ويندوز | x86_64 | ✅ |
ويندوز | ذراع64 | ✅ الدعم التجريبي 1 |
ويندوز | x86 | ✅ الدعم التجريبي 1 |
DragonFlyBSD | AMD64 | لن تتلقى الدعم 2 |
فري بي إس دي | AMD64 | لن تتلقى الدعم 2 |
أوبن بي إس دي | AMD64 | لن تتلقى الدعم 2 |
نت بي إس دي | AMD64 | لن تتلقى الدعم 2 |
سولاريس | AMD64 | لن تتلقى الدعم 2 |
يتطلب إنشاء الإصدار الموسع + withdeploy من Hugo من المصدر التبعيات التالية:
يمكن لمستخدمي Windows استخدام مدير الحزم Chocolatey من أجل استخدام برنامج التحويل البرمجي MinGW. بعد تثبيت Chocolatey، قم بتشغيل الأمر التالي في موجه طرفي مرتفع:
choco install mingw
ثم قم باستنساخ المستودع وتشغيل البرنامج النصي للبناء:
git clone https://github.com/agriyakhetarpal/hugo-python-distributions@main
python -m venv venv
source venv/bin/activate # on Unix-based systems
venv S cripts a ctivate.bat # on Windows
pip install -e . # editable installation
pip install . # regular installation
ملحوظة
يعتبر التجميع المتقاطع تجريبيًا وقد لا يكون مستقرًا أو موثوقًا به لجميع حالات الاستخدام. إذا واجهت أية مشكلات في التجميع المتقاطع، فلا تتردد في فتح مشكلة.
هذا المشروع قادر على تجميع ثنائيات Hugo لمختلف المنصات والبنيات ويمكن استخدامه على النحو التالي. يتم توفير التجميع المتقاطع للمنصات التالية:
arm64
و amd64
عبر سلسلة أدوات Xcode،arm64
و amd64
و s390x
و ppc64le
عبر سلسلة أدوات Zig، وamd64
و arm64
و x86
عبر سلسلة أدوات Zig.يرجى الرجوع إلى الأمثلة أدناه للحصول على مزيد من المعلومات حول كيفية ترجمة Hugo للبنيات المختلفة:
لنفترض، على جهاز macOS قائم على Intel (x86_64):
export GOARCH= " arm64 "
pip install . # or pip install -e .
سيؤدي هذا إلى إنشاء توزيع ثنائي لـ macOS arm64
لـ Hugo والذي يمكن استخدامه على أجهزة macOS المستندة إلى Apple Silicon ( arm64
). لإنشاء توزيع ثنائي لمنصة macOS المستهدفة المستندة إلى Intel ( x86_64
) على جهاز macOS المضيف المستند إلى Apple Silicon ( arm64
)، يمكنك استخدام الأمر التالي:
export GOARCH= " amd64 "
pip install . # or pip install -e .
أولاً، قم بتثبيت Zig على جهاز Linux الخاص بك، وقم بتعيين متغيرات البيئة USE_ZIG
و GOOS
و GOARCH
قبل تثبيت الحزمة:
لنفترض، على جهاز amd64
Linux:
export USE_ZIG= " 1 "
export GOOS= " linux "
export GOARCH= " arm64 "
pip install . # or pip install -e .
سوف يقوم بتجميع توزيعة Linux Arm64 الثنائية لـ Hugo والتي يمكن استخدامها على أجهزة Linux Arm64 المستهدفة. لإنشاء توزيع ثنائي لمنصة amd64
Linux المستهدفة على جهاز arm64
Linux المضيف ، قم بتعيين الأهداف بشكل مختلف:
export USE_ZIG= " 1 "
export GOOS= " linux "
export GOARCH= " amd64 "
pip install . # or pip install -e .
يؤدي هذا إلى إنشاء رابط ديناميكي لثنائي Hugo المدمج مع GLIBC الذي يوفره النظام. إذا كنت ترغب في ربط الملف الثنائي بشكل ثابت مع MUSL، قم بتغيير متغيرات البيئة CC
و CXX
كما يلي:
export CC= " zig cc -target x86_64-linux-musl "
export CXX= " zig c++ -target x86_64-linux-musl "
لم يتم اختبار الارتباط ضد MUSL في CI في هذا الوقت، ولكن يجب أن يعمل من الناحية النظرية. لا ترتبط ثنائيات Hugo الرسمية بـ MUSL لعدة أسباب بما في ذلك، على سبيل المثال لا الحصر، حجم الملف الثنائي وشعبية مكتبة GLIBC C القياسية واتفاقياتها.
أولاً، قم بتثبيت Zig على جهاز Windows الخاص بك، وقم بتعيين متغيرات البيئة هذه قبل تثبيت الحزمة:
لنفترض، على جهاز يعمل بنظام التشغيل Windows amd64
:
set USE_ZIG= " 1 "
set GOOS= " windows "
set GOARCH= " arm64 "
pip install . # or pip install -e .
سوف يقوم بتجميع التوزيعة الثنائية لـ Windows arm64
من Hugo والتي يمكن استخدامها على أجهزة Windows arm64
المستهدفة (لاحظ استخدام set
بدلاً من export
على Windows)، وما إلى ذلك بالنسبة لبنية x86
:
set USE_ZIG= " 1 "
set GOOS= " windows "
set GOARCH= " 386 "
pip install . # or pip install -e .
للحصول على قائمة بالتوزيعات المدعومة لـ Go، يرجى تشغيل أمر go tool dist list
على نظامك. للحصول على قائمة بالأهداف المدعومة لـ Zig، يرجى الرجوع إلى وثائق Zig للحصول على مزيد من المعلومات أو تشغيل أمر zig targets
على نظامك.
نصيحة
من الممكن أيضًا التجميع المتقاطع لمنصة وبنية مستهدفة من منصة وبنية مضيفة مختلفة، لكنه يظل غير مختبر إلى حد كبير في الوقت الحالي. حاليًا، من المعروف أن سلسلة أدوات التحويل البرمجي Zig تعمل من أجل التجميع عبر الأنظمة الأساسية والبنية التحتية.
الثنائيات الخاصة بمولد موقع Hugo الثابت متاحة للتنزيل من صفحة إصدارات Hugo. يجب تنزيل هذه الثنائيات ووضعها في مكان مناسب على النظام يدويًا ويجب تحديث متغير بيئة PATH ليشمل الموقع المذكور.
يوفر هذا المشروع عجلات لـ Hugo لاستخدامها مع pip
على أنظمة التشغيل macOS وLinux وWindows. يتيح ذلك تثبيت Hugo واستخدامه في بيئة افتراضية، مما يسمح بتثبيت إصدارات متعددة من Hugo واستخدامها جنبًا إلى جنب في بيئات افتراضية مختلفة، حيث يمكن استخدام Hugo كأداة لسطر الأوامر (واجهة برمجة تطبيقات Python هي لم يتم توفيرها في هذا الوقت نظرا لعدم وجود مثل هذا الطلب عليها).
تم تصميم هذا المشروع ليتم استخدامه في السيناريوهات التالية:
pip install --upgrade hugo
، والتحديثات التلقائية ممكنة أيضًا إذا كنت تستخدم مدير حزم مثل Poetry أو PDM لإدارة تبعيات Python أو أداة مثل pipx للإدارة أدوات سطر الأوامر الخاصة بكتم ترخيص هذا المشروع بموجب شروط ترخيص Apache 2.0. يتوفر Hugo ضمن Apache 2.0 (راجع ترخيص Hugo) أيضًا.
يرجى الرجوع إلى سياسة الأمان لهذا المشروع لمزيد من المعلومات.
يهدف هذا المستودع إلى متابعة مشروع Hugo في السعي لتوفير بيئة ترحيبية وشاملة لجميع المساهمين، بغض النظر عن خلفيتهم وهويتهم. يرجى الرجوع إلى قواعد السلوك للحصول على مزيد من المعلومات التي تنطبق على جميع التفاعلات في هذا المستودع والمساحات المرتبطة به. وهو يعتمد على ميثاق المساهمين في إرشاداته ويتوافق مع الإصدار 2.1.
لطلب المساعدة أو الإبلاغ عن الأخطاء أو طلب الميزات الخاصة بوظائف Hugo، يرجى الرجوع إلى منتدى Hugo Discourse. لطلب المساعدة في hugo-python-distributions
، فلا تتردد في فتح مشكلة في هذا المستودع.
Hugo
على PyPI (@nariman) على لفتته الطيبة المتمثلة في منح حق الوصول لتولي اسم الحزمة مع الأحكام الأساسية لـ PEP 541 وبهذه الطريقة، تتيح للمستخدمين تثبيت الحزمة باستخدام نفس اسم مشروع Hugo الرسمي، مما يوفر بلا شك تجربة مستخدم أفضل وراحة لمستخدمي هذه الحزمة عند مقارنتها باسم الحزمة السابقة. python-hugo
. أصبح دعم بنيات 32 بت (i686) وarm64 على نظام التشغيل Windows ممكنًا من خلال استخدام سلسلة أدوات التحويل البرمجي Zig التي تستخدم النظام البيئي LLVM. هذه العجلات تجريبية بسبب استخدام التجميع المتقاطع وقد لا تكون مستقرة أو موثوقة لجميع حالات الاستخدام، ولا يتم دعمها رسميًا من قبل مشروع Hugo في الوقت الحالي. وبالتالي، على الرغم من نشرها على PyPI للتوفر العام، إلا أنها تعتبر تجريبية. برجاء الرجوع إلى قسم البناء من المصدر لمزيد من المعلومات حول كيفية إنشاء Hugo لهذه الأنظمة الأساسية والبنيات محليًا. إذا كنت بحاجة إلى دعم رسمي لهذه المنصات أو واجهت أي أخطاء، يرجى التفكير في الاتصال بمؤلفي Hugo عبر [https://github.com/gohugoio/hugo/issues/new](فتح مشكلة). ↩ ↩ 2
لا يمكن تضمين دعم هذه الأنظمة الأساسية بسبب i. نقص الموارد اللازمة للاختبار والبناء لهم و ii. عدم وجود دعم لمواصفات النظام الأساسي هذه في معايير وأدوات التعبئة والتغليف ببايثون. إذا كنت بحاجة إلى دعم لهذه الأنظمة الأساسية، فيرجى التفكير في تنزيل ثنائيات Hugo الرسمية لإصداراتها غير الموسعة. ↩ ↩ 2 ↩ 3 ↩ 4 ↩ 5