- يتيح لك برنامج GNU Stow مركزة ملفات الإعدادات المخفية في مستودع واحد وربطها بالنظام باستخدام الروابط الرمزية بطريقة نظيفة وقابلة للعكس.
- هناك نموذجان تنظيميان رئيسيان: المستودع الموحد والنهج القائم على الحزم، مع مستويات مختلفة من التنميط.
- يُسهّل دمج Stow مع Git عملية التحكم في الإصدارات، وإنشاء نسخ احتياطية، وتكرار الإعدادات عبر أجهزة متعددة ببضع خطوات فقط. الأوامر.
- تضمن الممارسات الجيدة مثل استخدام .stow-local-ignore، واحترام بنية الدليل، وتجنب خلط الملفات الحقيقية والروابط الرمزية، سير عمل قوي.
إذا كنت تستخدم لينكس، macOS أو Termux على Android كل يوم، عاجلاً أم آجلاً، ينتهي بك الأمر بتجميع مجموعة من ملفات التكوين المتناثرة في جميع أنحاء جهازك المجلد الرئيسي: .zshrc، .bashrc، .config، nvim، Hyprland، إلخ. عندما يكون لديك جهاز كمبيوتر واحد فقط يمكنك الاستمرار، ولكن بمجرد أن تعمل مع عدة أجهزة كمبيوتر أو خوادم، فإن الحفاظ على كل هذا محدثًا هو قصة مختلفة تمامًا.
وفي هذا السياق، يدخل ما يلي حيز التنفيذ GNU Stow، مدير الروابط الرمزية أصبحت هذه الطريقة من أنظف وأبسط وأكثر الطرق قابليةً للتراجع لإدارة ملفات الإعدادات المخفية. ليست هذه الطريقة الوحيدة المتاحة (فهناك بدائل مثل مستودعات Git الأساسية، وyadm، وChezmoi، وDotbot...)، لكن فلسفتها البسيطة تُناسب تمامًا من يبحث عن أداة قوية دون تعقيدات.
ما هو برنامج GNU Stow تحديداً، ولماذا هو مفيد لإدارة ملفات .dotfiles؟
برنامج GNU Stow هو في الأصل "مدير مزرعة الروابط الرمزية".أداة مصممة لتنظيم حزم ملفات متعددة في موقع واحد وعرضها في دليل آخر باستخدام الروابط الرمزية. على الرغم من أنها صُممت في الأصل لإدارة تثبيتات البرامج المحلية، إلا أن المجتمع سرعان ما اعتمدها للتعامل مع ملفات الإعدادات المخفية (dotfiles) لأنها تُناسبها تمامًا.
الفكرة الأساسية بسيطة للغاية: تقوم بحفظ جميع إعداداتك في ملف واحد. المستودع المركزي (على سبيل المثال ~/dotfiles)تُبنى هذه الملفات كما لو كانت ستُخزَّن في مجلدك الرئيسي، ويتولى Stow إنشاء روابط رمزية من مجلدك الرئيسي إلى تلك الملفات. يتيح لك هذا التحكم في إصداراتها باستخدام Git، واستنساخها على أجهزة متعددة، وإعادة إنشاء بيئتك باستخدام أمر واحد أو بضعة أوامر.
شيء مهم: لا يعتبر Stow "أداة ملفات dotfile" بالمعنى الدقيق للكلمةلا يقوم بتخزين حالته الخاصة، ولا يحتفظ بقاعدة بيانات، ولا يستخدم قوالب، ولا يوظف التشفير. إنه ببساطة يقوم بإنشاء وحذف الروابط الرمزية وفقًا لبنية دليل. وهذا تحديدًا ما يجعله سهل الفهم والتراجع.
تتناقض هذه الفلسفة البسيطة مع الحلول الأكثر تعقيدًا مثل Chezmoi، والتي تضيف قوالب، وإدارة الأسرار، والتكامل مع برامج إدارة كلمات المرور، وسير عمل أكثر آلية. مع Stow، أنت المتحكم: كل شيء موجود في نظام الملفات ومستودع Git الخاص بك، بدون طبقات وسيطة.
مزايا استخدام Stow مقارنةً بالطرق الأخرى لإدارة ملفات الإعدادات المخفية (dotfiles)
قبل أن يصبح برنامج Stow شائعًا، كان العديد من الأشخاص يديرون ملفاتهم المخفية باستخدام أوامر "cp" و "mv".كانت الإعدادات تُنسخ يدويًا بين أجهزة الكمبيوتر، أو يُحتفظ بمستودع يتطلب تحديثًا مستمرًا. وكان من السهل أن ينتهي الأمر بنسخ متعددة من الملف نفسه دون معرفة أيها قيد الاستخدام فعليًا.
مع برنامج Stow، توجد جميع الملفات "الحقيقية" في مجلد ملفاتك المخفية (dotfiles) و يحتوي دليل $HOME الخاص بك على روابط رمزية فقطهذا يعني أنه عند تعديل ملف مثلاً ~/.zshrc، فإنك في الواقع تُعدّل الملف الموجود داخل مستودعك. لا توجد نسخ مكررة، ولا يوجد عدم تزامن، ولا حاجة لتذكر ما يجب نسخه وأين.
ومن المزايا الواضحة الأخرى إمكانية عكس العملية: إذا كنت ترغب في التراجع عما فعله برنامج Stow، فما عليك سوى تشغيل الأمر "stow -D package". من مجلد ملفات الإعدادات الخاصة بك، احذف جميع الروابط الرمزية التي تم إنشاؤها لتلك الحزمة. هذا لا يحذف إعداداتك الفعلية (التي تبقى في المستودع)، بل يزيل فقط الروابط الرمزية إلى الحزمة المستهدفة.
علاوة على ذلك، يعمل برنامج Stow بشكل جيد للغاية مع Git: يمكنك التحكم في إصدارات ملفات ~/dotfiles كما تفعل مع المستودعات العادية.يمكنك إجراء عمليات الالتزام، وإنشاء الفروع، واستخدام GitHub أو GitLab كنسخة احتياطية، وما إلى ذلك. يتجاهل Stow تلقائيًا مجلد .git عند إنشاء الروابط، لذلك لا تخاطر بملء دليل $HOME الخاص بك بملفات Git الداخلية.
وأخيرًا، على عكس الأدوات الأخرى الأثقل وزنًا، يتوفر برنامج Stow عادةً على أي توزيعة لينكس، وحتى على نظام macOS عبر Homebrewهو في الأساس سيناريو مكتوب بلغة بيرل مع عدد قليل جدًا من التبعيات ويعمل في أي بيئة UNIX.
البدائل الشائعة: Git bare، yadm، Chezmoi، Dotbot…
عندما تفكر بجدية في إدارة ملفات الإعدادات المخفية (dotfiles)، تظهر عادةً نفس قائمة الخيارات: مستودع Git "bare"، وyadm، وDotbot، وChezmoi، بالإضافة إلى Stowلكل نهج أسلوبه الخاص وجمهوره، لذلك من المهم وضع ستو ضمن هذا النظام البيئي.
طريقة مستودع Git فارغ يتضمن هذا إنشاء مستودع بدون شجرة عمل مرتبطة به، واستخدام أسماء مستعارة في Git بحيث يعمل مجلد $HOME نفسه كدليل عمل. المزايا: لا توجد روابط رمزية، ويعمل Git مباشرةً على ملفاتك الفعلية، وتدفق الأوامر بسيط للغاية. يعلق العديد من المستخدمين بأنهم فوجئوا بمدى سهولة اتباع دليل تعليمي على نمط "DT" وتشغيله دون الحاجة إلى تعديل أي روابط رمزية.
وعلاوة على ذلك، يركز تطبيق Chezmoi بشكل كامل على إدارة ملفات dotfile المتقدمةتشمل الميزات: قوالب للتعامل مع الاختلافات بين الأجهزة، والتكامل مع برامج إدارة كلمات المرور، وتشفير الملفات باستخدام GPG أو AGE، وإمكانية تشغيل البرامج النصية أثناء التثبيت، ودعم قوي متعدد المنصات، وغير ذلك الكثير. إنه مثالي إذا كنت بحاجة إلى إدارة الأسرار، ودعم العديد من الأنظمة المختلفة، أو أتمتة عمليات التثبيت المعقدة..
أما ستو فهو على النقيض تماماً: لا يعرف شيئاً عن الأسرار أو القوالب أو النصوص البرمجية.ببساطة، يُنشئ روابط رمزية نظيفة. وهذا يُعدّ ميزةً للعديد من المستخدمين: فهو يُقلّل من الحاجة إلى التعلّم، ويُبسّط السلوكيات غير المتوقعة، ويُوفّر شفافيةً أكبر. إذا كنتَ بحاجة إلى منطق شرطي مُعقّد، فربما يكون Chezmoi خيارًا أفضل؛ أما إذا كنتَ ترغب فقط في تنظيم إعداداتك دون تعقيدات، فإن Stow خيار كلاسيكي موثوق للغاية.
هناك أيضًا أدوات مثل Yadm أو Dotbot، اللذان يقومان بأتمتة الكثير من المهام (بما في ذلك تشغيل البرامج النصية بعد التثبيت، واستنساخ المستودعات، وتثبيت الحزم، وما إلى ذلك). ومع ذلك، لا يزال عدد كبير من المطورين يفضلون Stow لأنه سهل التدقيق، ويتكامل جيدًا مع سير عمل Git الحالي، ويتكيف بسلاسة مع كل من الإعدادات البسيطة وبيئات سطح المكتب الأكثر تطلبًا.
الأساليب التنظيمية: المستودع الموحد مقابل المستودع القائم على الحزم
عندما تبدأ باستخدام Stow، فإن أحد القرارات الأولى التي عليك اتخاذها هو كيفية تنظيم مستودع ملفات الإعدادات الخاصة بكبشكل عام، هناك نمطان شائعان: النهج الموحد والنهج القائم على الحزم.
في النموذج الموحد، يكون لمستودع ملفات الإعدادات الخاصة بك نفس شكل دليل $HOME الخاص بك تقريبًا: ملفات مثل .bashrc أو .zshrc في الجذر، ومجلدات مثل .config/nvim أو .config/lazygit في الداخلشيء من هذا القبيل:
dotfiles-unified/
├── .bash_aliases
├── .bash_completion/
│ └── alacritty.bash
├── .bashrc
└── .config/
├── lazygit/config.yml
└── nvim/…
باستخدام هذا التصميم، تدخل إلى مجلد المستودع، ثم تقوم بتشغيل خبأ. وفجأة، جميع إعداداتك مرتبطة بدليل $HOME الخاص بكإنه أمر مريح للغاية عندما تريد استنساخ بيئتك بالكامل إلى جهاز جديد بأمر واحد ولا تحتاج إلى الكثير من التمييز بين الأنظمة.
يعمل النهج القائم على الحزم بشكل مختلف: يمكنك إنشاء دليل فرعي لكل "وحدة" أو تطبيقعلى سبيل المثال، مجلد لـ bash، وآخر لـ nvim، وآخر لـ lazygit، وآخر لـ zsh، وآخر لـ Hyprland، وهكذا. يحتوي كل مجلد على الملفات مع مسارها الكامل كما لو كانت موجودة في مجلد $HOME الخاص بك. شيء من هذا القبيل:
dotfiles-packages/
├── bash/
│ ├── .bash_aliases
│ ├── .bash_completion/alacritty.bash
│ └── .bashrc
├── lazygit/.config/lazygit/config.yml
└── nvim/.config/nvim/…
باستخدام هذه الخطة، يمكنك تحديد الحزم التي تريد "تفعيلها" على كل جهاز: على جهاز واحد تقوم بتشغيل "stow bash nvim lazygit"، وعلى جهاز آخر ربما "stow zsh nvim".هذا مفيد للغاية عندما تعمل مع توزيعات متعددة (على سبيل المثال، Arch على جهاز كمبيوتر واحد و Fedora على جهاز آخر) أو مع واجهات سطر أوامر مختلفة (fish على جهاز واحد، bash على جهاز آخر) وتريد الاحتفاظ بكل شيء في مستودع واحد، ولكن اختيار ما يتم تطبيقه في كل بيئة.
لكن المشكلة؟ الأمر أكثر تعقيداً بعض الشيء: لم يعد مصطلح "Stow" كافياً. وهذا كل ما في الأمر؛ كل ما عليك فعله هو تذكر الطرود التي تحتاجها.بدلاً من ذلك، يمكنك إنشاء برنامج نصي صغير لكل جهاز يستدعي Stow بالتركيبة المناسبة. ومع ذلك، يفضل العديد من المستخدمين هذا التحكم الدقيق، خاصةً إذا كان لديهم برامج متخصصة للغاية على كل جهاز.
كيف يعمل برنامج Stow داخليًا: مفهوم "نسخ" الدليل
يكمن مفتاح فهم ستو في نظامها من هياكل الدليل المتطابقةلا يقوم برنامج Stow بتخمين المسارات؛ بل ينظر ببساطة إلى كيفية تنظيم الملفات داخل "الحزمة" ويضع الروابط الرمزية المقابلة في دليل الوجهة.
على سبيل المثال، إذا كان التطبيق يتوقع أن يكون تكوينه في:
~/.config/ghostty/
يجب أن يحتوي ملف الوحدة النمطية الموجود داخل ~/dotfiles على هذا المسار النسبي بالضبط:
~/dotfiles/ghostty/.config/ghostty/
أي شيء تضعه داخل هذا المجلد (على سبيل المثال، ملف باسم config) سيربطه Stow بالموقع الصحيح. وبهذه الطريقة، سيستمر Ghostty في قراءة إعداداته من ~/.config/ghostty/config، ولكن هذا الملف سيشير فعليًا إلى الملف المخزن في مستودعك.
يتكرر هذا النمط مع أي أداة: سيكون لدى Waybar شيء مثل ~/dotfiles/waybar/.config/waybar/، وNeovim ~/dotfiles/nvim/.config/nvim/وهكذا دواليك. العملية موحدة للغاية، مما يجعل التوسع إلى المزيد من البرامج شبه آلي.
بالنسبة للملفات المخفية التي توجد مباشرة في $HOME (مثل ~/.gitconfig أو ~/.zshrc)، فإن المنطق متطابق: ستجد ضمن حزمة git ملفًا باسم .gitconfig في الدليل الجذرسيقوم Stow بعد ذلك بإنشاء الرابط في دليل منزلك عند تشغيل "stow git".
خطوة بخطوة: إعداد مستودع ملفات الإعدادات باستخدام Stow
إن سير العمل النموذجي مع Stow بسيط ويمكن تلخيصه في بضع خطوات محددة جيدًا، سواء على نظامي التشغيل Linux و macOS. الشيء المهم هو أن تعتاد على حقيقة أن الملفات "الحقيقية" موجودة دائمًا داخل المستودع. وليس متناثرة في جميع أنحاء منزلك.
للبدء، أنشئ المجلد الذي ستُخزَّن فيه ملفات الإعدادات الخاصة بك. يستخدم الكثير من الأشخاص ~/.dotfiles أو ~/dotfilesالاسم هو أقل الأمور أهمية:
mkdir -p ~/.dotfiles
cd ~/.dotfiles
ثم انقل ملفات التكوين الحالية إلى المستودع.على سبيل المثال، إذا كان لديك ملف .bashrc في مجلدك الرئيسي وتريد إدارته باستخدام Stow، فيمكنك القيام بما يلي:
mv ~/.bashrc ~/.dotfiles/.bashrc
إذا كنت تفضل النهج القائم على الحزم، فبدلاً من ترك الملف في جذر المستودع، يمكنك وضعه في مجلد "bash"، مع الاحتفاظ بالمسار الكامل:
mkdir -p ~/.dotfiles/bash
mv ~/.bashrc ~/.dotfiles/bash/.bashrc
الإجراء المتعلق بالتكوينات الموجودة داخل ملف .config مماثل لما يلي: تقوم بنسخ بنية الدليل داخل المستودععلى سبيل المثال، بالنسبة لـ Neovim، يمكنك أن يكون لديك:
mkdir -p ~/.dotfiles/nvim/.config/nvim
mv ~/.config/nvim/* ~/.dotfiles/nvim/.config/nvim/
بعد إضافة الملفات إلى مستودعك، يُنصح بحذف الملفات الأصلية أو إعادة تسميتها في مجلد $HOME لتجنب التعارضات. لاحقًا، سيعيد Stow إنشاء الروابط الرمزية في المسارات التي تتوقع التطبيقات العثور على إعداداتها فيها.
قم بتثبيت GNU Stow على منصات مختلفة
تختلف عملية تثبيت Stow قليلاً حسب المنصة، ولكنها بشكل عام عملية بسيطة للغاية. في نظام macOS، من الشائع استخدام Homebrew.مدير الحزم الأكثر انتشارًا على هذا النظام:
brew install stow
في توزيعات لينكس مثل ديبيان أو أوبونتو، تتمثل الممارسة المعتادة في استخدام apt:
sudo apt install stow
En قوس لينكس والمشتقات، يمكنك العثور عليها في المستودعات الرسمية ويتم تثبيتها مع بكمن بدون الكثير من الغموض:
sudo pacman -S stow
بمجرد التثبيت، ستجد أمر "stow" في مسار النظام (PATH). لا توجد برامج خفية أو خدمات تعمل في الخلفية، فقط ملف تنفيذي يعمل عند الحاجة إليه.يمكنك التحقق من أن كل شيء يعمل بشكل صحيح باستخدام الأمر "stow --version" وبذلك تكون قد انتهيت.
في الأنظمة التي تستخدم فيها بالفعل أدوات مثل Oh My Zsh، يتناسب Stow بشكل جيد للغاية: يمكنك الاحتفاظ بملف .zshrc وتكوين المكونات الإضافية والقوالب في مستودعك المركزي وتطبيق كل شيء ببضع أوامر. العديد من المستخدمين مع عدة ماك أو، باستخدام مزيج من نظامي التشغيل لينكس وماك أو إس، يقولون إنهم بهذه الطريقة يتمكنون من الحصول على نفس الصدفة ونفس موجه الأوامر في كل مكان..
تجاهل الملفات غير المرغوب فيها باستخدام .stow-local-ignore
من بين التفاصيل الدقيقة في لعبة Stow نظام التجاهل. بشكل افتراضي، يتجاهل Stow بالفعل بعض ملفات التحكم في الإصدارات النموذجية مثل .git و .gitignore و .gitmodules ومجلدات CVS و RCS وما إلى ذلك. ومع ذلك، هناك حالات تحتاج فيها إلى تحكم أكثر تحديدًا، على سبيل المثال على نظام macOS مع .DS_Store سيئ السمعة.
يتيح لك برنامج Stow إنشاء ملف يسمى .stow-local-ignore في المجلد الذي تُشغّل منه الأمر. يُحدد هذا الملف الأنماط التي يجب تجاهلها محليًا. بمجرد إنشائه، تتوقف عن استخدام قائمة التجاهل الافتراضية، لذا عليك إضافتها بنفسك وتضمين أي أنماط إضافية.
يتضمن مثال نموذجي لمحتوى ملف .stow-local-ignore التعليقات والأنماط الخاصة بتعارضات CVS، ونسخ Emacs الاحتياطية، وملفات التحكم في الإصدار، وفي النهاية . DS_Store حتى لا يعترض برنامج Stow أو يحاول ربط تلك الملفات التي أنشأها برنامج Finder:
# Comentarios y líneas en blanco permitidas
RCS
.+,v
CVS
\.#.+
\.cvsignore
\.svn
_darcs
\.hg
\.git
\.gitignore
\.gitmodules
.+~
\#.*\#
^/README.*
^/LICENSE.*
^/COPYING
.DS_Store
بفضل هذا، تمنع برنامج Stow من محاولة إنشاء روابط ملفات غير ذات صلة تمامًا و تتجنب الأخطاء المزعجة عند تخزين الطرود أو إخراجها من المخزن.يُعد هذا الأمر مفيدًا بشكل خاص إذا كنت تتصفح مستودعك بشكل متكرر باستخدام واجهات رسومية تقوم بإنشاء ملفات مساعدة.
تذكر أن خاصية التجاهل في Stow مستقلة عن ملف .gitignore الذي تستخدمه في مستودعك: يتحكم الأول فيما يتم ربطه، والثاني فيما يتم تحديد إصداراته.من خلال الاثنين، يمكنك ضبط سلوك كل من Stow و Git بدقة.
الاستخدام الأساسي لـ Stow: ربط وفصل حزم التكوين
مع تجهيز كل شيء، تصبح العمليات اليومية لشركة ستو موجزة للغاية. يجب عليك دائمًا تشغيل Stow من داخل دليل مستودع ملفات الإعدادات الخاصة بك.، وليس من مجلدك الرئيسي أو من مسارات عشوائية، بحيث تكون المسارات النسبية التي يتم إنشاؤها منطقية.
تخيل أن لديك بالفعل وحدة نمطية باسم "ghostty" في المسار ~/dotfiles/ghostty/.config/ghostty تحتوي على ملف التكوين الخاص بك. بمجرد إضافتها إلى المستودع، يمكنك تخزينها باستخدام الأمر التالي:
cd ~/dotfiles
stow ghostty
يؤدي هذا الأمر إلى ظهور روابط رمزية على نظامك من ~/.config/ghostty إلى الملفات الموجودة في ~/dotfiles/ghostty/.config/ghostty. إذا قمت بتنفيذ الأمر "ls -l ~/.config/ghostty"، فسترى رموزًا على شكل فطر (->) تشير إلى وجهة كل رابط رمزي.التأكد من أن كل شيء مرتبط بشكل صحيح.
إذا اخترت اتباع نهج موحد وترغب في ربط كل شيء دفعة واحدة، يمكنك تشغيل الأمر "stow ." من جذر المستودعسيقوم برنامج Stow بتفسير كل دليل فرعي كحزمة أو العمل مباشرة على البنية إذا كانت مسطحة، وإنشاء روابط رمزية لكل شيء يناسبها.
لإلغاء حزمة معينة، ما عليك سوى استدعاء Stow مع الخيار -D (اختصارًا لـ "حذف" في مصطلحات الأداة). على سبيل المثال:
cd ~/dotfiles
stow -D ghostty
يؤدي ذلك إلى إزالة الروابط الرمزية التي أنشأتها لتلك الوحدة دون المساس بالملفات الأصلية الموجودة في المستودع. إنها طريقة نظيفة للغاية "لإلغاء تثبيت" الإعدادات من جهاز معين. دون فقدانهم تماماً.
من الضروري تجنب خطأ شائع جداً: لا تقم بتشغيل Stow من مجلد $HOME أو من مجلدات أخرى خارج المستودعإذا فعلت ذلك، فإنك تخاطر بإنشاء روابط في أماكن غير متوقعة، وينتهي بك الأمر بمجلدك الرئيسي مليئًا بملفات لا تنتمي إليه. دائمًا: انتقل إلى المستودع باستخدام الأمر `cd`، ثم استخدم الأمر `stow`.
قم بدمج Git و GitHub في سير عمل ملف dotfile الخاص بك باستخدام Stow
يكمن جمال هذا الإعداد بأكمله في الجمع بين Stow و Git بحيث يكون نظامك يتم ترقيم ملفات الإعدادات (dotfiles) وحفظ نسخ احتياطية منها عن بُعد، ويمكن نسخها بسهولة على أجهزة أخرى.العملية بسيطة للغاية ولا تختلف عن أي مشروع آخر تديره باستخدام Git.
قم بإنشاء مستودع جديد من مجلد ملفات الإعدادات الخاصة بك إذا لم تكن قد فعلت ذلك بالفعل:
cd ~/dotfiles
git init
ومن هناك يمكنك إضافة ملفاتك، وإجراء عمليات الالتزام، والعمل مع الفروع كالمعتاد. حذاء يمكن أن يكون:
git add .
git commit -m "Primer commit de mis dotfiles"
تتمثل الخطوة التالية عادةً في إنشاء مستودع على GitHub أو GitLab أو خدمة أخرى وإضافته كمستودع بعيد. شيء من هذا القبيل:
git remote add origin [email protected]:tuusuario/dotfiles.git
git push -u origin main
ضع في اعتبارك أنه على الرغم من أن بعض الأشخاص ينشرون ملفاتهم المخفية في مستودعات عامة، إن الإجراء الأكثر حكمة هو استخدام المستودعات الخاصة إذا كنت تتعامل مع بيانات حساسة. أو المسارات التي قد تكشف الكثير من المعلومات الشخصية. على أي حال، يمكنك إضافة تشفير خارجي للأسرار إذا لزم الأمر.
لتحسين عملية تحديد الإصدارات، من الجيد أيضًا أن يكون لديك ملف .gitignore في المستودع حيث يمكنك إضافة، على سبيل المثال، .DS_Store أو ملفات أخرى لا تريد تحميلها. يتجاهل Stow بالفعل ملف .git تلقائيًا، لكن Git لا يعرف شيئًا عن ملف .stow-local-ignoreلذلك، يخدم الملفان أغراضًا مختلفة ويكملان بعضهما البعض بشكل جيد.
الروتين اليومي واضح للغاية: تقوم بنسخ مستودع ملفات الإعدادات (dotfiles) إلى جهاز جديد، ثم تثبيت Stow، وتشغيل الأمر "stow ." أو "stow package1 package2…" وبذلك تحصل على بيئتك المنسوخة.إذا قمت لاحقًا بتغيير تكوين Neovim أو ملف .zshrc الخاص بك، فقم بالتثبيت والدفع، وعلى الأجهزة الأخرى يكفي استخدام git pull متبوعًا بـ stow لتحديث الروابط إذا قمت بإضافة ملفات أو حزم جديدة.
كاتب شغوف بعالم البايت والتكنولوجيا بشكل عام. أحب مشاركة معرفتي من خلال الكتابة، وهذا ما سأفعله في هذه المدونة، لأعرض لك كل الأشياء الأكثر إثارة للاهتمام حول الأدوات الذكية والبرامج والأجهزة والاتجاهات التكنولوجية والمزيد. هدفي هو مساعدتك على التنقل في العالم الرقمي بطريقة بسيطة ومسلية.