حذف خطوط حاوی یک عبارت در یک فایل

اگر لازم داشتیم در یک فایل متنی خطوطی رو که یک عبارت مشخصی در اونها وجود داره حذف بشن، میتونیم از sed استفاده کنیم. به طور مثال من میخوام mpv رو از لیست پیشنهادی open with حذف کنم. چون رابط گرافیکی اون یعنی Celluloid برای پخش فایلهای مدیا کافیه. برای این کار:

$ sed -i.bak '/mpv/d' ~/.local/share/applications/defaults.list
$ sed -i.bak '/mpv/d' ./.local/share/applications/mimeapps.list

آرشیو پکیج‌های قدیمی Arch

اگر در Arch لازم داشتید یک نسخه قدیمی‌تر از پکیج مورد نظرتون رو نصب کنید، و فایلش رو در اختیار نداشتید، میتونید توی این آدرس دنبالش بگردید. سپس میتونید با pacman اون رو نصب کنید. به طور مثال:

$ pacman -U https://archive.archlinux.org/packages/path/packagename.pkg.tar.zst

اطلاعات بیشتر رو میتونید در این لینک از ویکی آرچ ببینید. مثلا میتونید پکیج های سیستم رو به یک تاریخ خاصی downgrade کنید و...

چند ابزار کمکی Nautilus

فایل منیجر پیش فرض گنوم، موسوم به Nautilus یا Files قابلیت این رو داره که اکستنشن هایی بهش اضافه بشن. این افزونه ها در مخازن توزیع های مختلف وجود دارند. در این مطلب چند تا از افزونه هایی که برای من کاربردی بودند رو براتون لیست میکنم. در توزیع های آرچ، این افزونه ها از طریق AUR قابل نصب هستند:

appimage-thumbnailer-git یک افزونه است که آیکن برنامه هایی رو که از طریق Appimage اجرا میشن به ما نشون میده.

nautilus-compare یک افزونه که وقتی رایت کلیک کنید روی مثلا دو تا فایل مشابه، اونها رو با هم مقایسه میکنه. این مقایسه در برنامه های جانبی مثل meld قابل انجام هست.

nautilus-hide یک افزونه که به راحتی با رایت کلیک روی یک فایل میتونید اون رو مخفی کنید. بدون اضافه کردن  (.) به ابتدای اسم فایل. در واقع میاد اسم فایل رو در یک فایل به نام .hidden اضافه میکنه که باعث میشه اون فایل مخفی بشه.

nautilus-emblems با رایت کلیک روی یک فایل یا فولدر میتونید یک نماد کوچک در گوشه آیکن اضافه کنید. مثلا مشخص کنید که این فایل رو قراره بعدا بررسی کنید. یا مثلا کارهاتون رو تا این فایل پیش بردید و...

nautilus-admin یک آیتم به رایت کلیک اضافه میشه، برای باز کردن اون فولدر در حالت root. 

nautilus-annotations یک افزونه که امکان اضافه کردن یادداشت به فایلها و فولدرها رو فراهم میکنه!

مخزن کامپایل شده AUR

در ویکی آرچ مخازن غیر رسمی متعددی نام برده شده اند که کاربران میتونن اونها رو به لیست مخازن pacman اضافه کنند. البته کاملا با مسئولیت خودشون. چون این مخازن توسط تیم توسعه دهنده آرچ و یا توزیع های وابسته به آرچ کنترل و تست نمیشن.

هر مخزنی با توجه به هدف سازنده، حاوی یک سری پکیج ها است. مثلا اینجا نسخه های بتای گنوم رو میتونید به لیست مخازن اضافه کنید. یکی از مخازن، مخزن پکیج های کامپایل شده ی AUR به نام Chaotic-AUR هست. یعنی یک گروهی نشستن پکیج های به درد بخور AUR رو کامپایل میکنن و در این مخزن قرار میدن. البته این کار به صورت خودکار انجام میشه. خیلی هم به روز هست!

خوبی های این کار:

  • لازم نیست دردسر کامپایل از سورس رو بکشید
  • لازم نیست ده ها بسته اضافی برای کامپایل کردن نصب کنید
  • بسته ها به راحتی آپدیت میشن.
  • برخی بسته ها فقط در AUR هستن و در مخازن رسمی نیستن

بدی های این کار:

  • اولا که AUR خودش مخالفانی داره (از نظر امنیت بسته ها)
  • دوما که بسته ها توسط تیم غیر رسمی کامپایل شدند و میتونن اشکالاتی داشته باشند. چه فنی چه امنیتی

با این حال این موضوع خیلی به درد من خورد و مشکلی باهاش ندارم. برای اینکه بتونید مخزن کامپایل شده بسته های AUR رو به لیست مخازن pacman اضافه کنید، به این سایت مراجعه کنید و طبق راهنما اقدامات لازم رو انجام بدید.

جلوگیری از نصب زبان های غیر انگلیسی در pacman

اگر نمیخواید سیستمتون پر از فایلهای locale زبان های مختلف بشه، کافیه خطوط زیر رو به فایل /etc/pacman.conf اضافه کنید. با این کار فایلهای زبان های غیر انگلیسی از درون بسته extract نخواهند شد

NoExtract = usr/share/help/* !usr/share/help/en*
NoExtract = usr/share/locale/* !usr/share/locale/en* !usr/share/locale/locale.alias
NoExtract = usr/share/man/* !usr/share/man/man*
NoExtract = usr/lib/chromium/locales/*.pak !usr/lib/chromium/locales/en.pak

حتما متوجه قضیه شدید. این کار فقط برای زبان ها نیست. شما میتونید هر چیزی که نمیخواد از درون یک بسته ای موقع آپدیت یا نصب اکسترکت بشه بدین ترتیب به pacman بفهمونید.

نصب از AUR در Manjaro

اگر با توزیع های مبتنی بر آرچ کار کرده باشید، حتما با AUR آشنا هستید. و میدونید که برای نصب از AUR باید از یک به اصطلاح AUR Helper استفاده کنید. مدتی رو صرف جست و جو برای نحوه نصب یکی از اینها میکنید و احتمالا بدون اینکه بدونید هر کدوم چه ویژگی هایی دارن یکی رو انتخاب می کنید.

اما اگر از Manjaro استفاده میکنید، برای نصب از AUR نیاز به AUR Helper ندارید. در واقع مدیر بسته های مانجارو یعنی pamac از AUR هم پشتیبانی می کنه. هم در خط فرمان و هم در رابط گرافیکی. برای اینکه در رابط گرافیکی پکیج منیجر AUR رو فعال کنید میبایست از قسمت Preferences پشتیبانی از AUR رو فعال کنید:

و اما در خط فرمان هم میتونید با دستورهای زیر با AUR سر و کله بزنید.

  • برای جست و جوی مثلا mpv:
$ pamac search mpv
  • برای نصب یک پکیج از AUR مثلا implay-bin:
$ pamac install implay-bin

اگر چیز بیشتری از AUR نمیخواید به نظر من همین pamac کافیه و نیاز نیست سیستمتون رو با چندین پکیج برای یه همچین کاری شلوغش کنید.




حاصل سر و کله زدن های من با لینوکس