انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید

اوبونتو ۲۶٫۰۴ «راکون ثابت‌قدم» با پشتیبانی بلند مدّت منتشر شد 🎊

آخرین ارسال‌ها

صفحه: 1 [2] 3 4 ... 10
11
mdbook یک ابزار خط فرمان برای ساخت کتاب از روی پرونده‌های markdown است.
به این شکل که شما مطالب را در قالب فایل مارک‌داون می‌نویسید و mdbook آن‌ها را به html کامپایل می‌کند.
نتیجه یک محصول سبک و تمیز است.

این نرم‌افزار که برای ساخت مستندات، کتاب‌های فنی و آموزش‌ها بسیار مناسب است با زبان راست Rust نوشته شده است.


نشانی

https://rust-lang.github.io/mdBook/
12
سلام و عرض ادب؛ ممنون از دوست عزیز seyal که زحمت کشیدن و این مطالب رو با جزئیات و توضیجات لازم قرار دادن. منم صرفا شیوه‌ای که چند ساله خودم دارم استفاده می‌کنم رو قرار می‌دم همین.
بنده یه گوشی قدیمی داشتم(Redmi 9) که روتش کردم و با برنامه‌ی VPNHotspot و معمولا با کلاینت Hiddify تمام ترافیک رو از VPN می‌گذرونم. من خیلی نشت IP یا DNS واسم حائز اهمیت بود چون کوچک‌ترین لیک باعث می‌شد کارم مختل بشه که با فعال کردن Warp بر روی Hiddify و کانفیگ‌های معمولی v2ray تونستم بهترین نتیجه رو بگیرم.

https://github.com/mygod/vpnhotspot
13
با توجه به اینکه پروژه V بیشتر هدفش اتصال به اینترنت آزاد هست تا داشتن قابلیت‌های پیشرفته حریم خصوصی و فراهم کردن یک VPN تجاری،
باید کلاینتی که از اون استفاده می‌کنیم این رو ساپورت کنه که developer ها زیاد مانوری روی این قضیه نمی‌دن
هرچند با تنظیم صحیح و آگاه بودن کاربر تا حد زیادی می‌شه به این نتایج رسید.
من هم با تست‌هایی که داشتم زیاد اعتمادی به این kill switch تو خود کلاینت‌ها ندارم چون اصلا هدفشون این نیست.

برای همین هم هست که این روشی که بالا گفتیم می‌تونه مفید واقع بشه
چون که با داشتن اتصال اینترنت بین‌الملل به صورت ورودی Native در دستگاه، می‌تونیم از کلاینت‌ها و پروتکل‌های استاندارد VPN استفاده کنیم
و حالا با استفاده از اون اپ و پروتکل‌های استاندارد به قابلیت‌های kill switch و .. دسترسی داریم چون مخصوص این نیاز ساخته شدن.


14
ممنون از ارسال مفیدتون.
این روش قابلیت kill switch هم داره؟ اگه اضافه بشه خیلی خوب می‌شه.

15
خوب یک روش دیگه‌ای هم هست که به ذهنم رسید اجراش کنم و خروجی خوبی هم داد
یجورایی شبیه همون روش روتر Openwrt هست.

به این صورت که یک لپتاپ قدیمی داشتم و روش اوبونتو ریخته بودم
گفتم چطوره که بیایم و کانفیگ v2ray که داریم رو روی این دستگاه فعال کنیم و بعد خروجی اون رو با یک روتر پخش کنیم
یعنی اینکه لپتاپ با وایفای خودش به مودم/روتر ما وصل می‌شه حالا می‌تونه این اینترنتی رو که از این طریق دریافت می‌کنه به صورت تونل‌شده با پورت LAN خروجی بده که بعدا خروجی این پورت LAN رو به یک اکسس‌پوینت معمولی بدیم.
و حالا هر دستگاهی که به این Access Point وصل بشه یک اینترنت پروکسی‌شده رو دریافت می‌کنه.
حتی می‌تونید مستقیم این کابل LAN رو به یک لپتاپ دیگه وصل کنید و تو اون لپتاپ اینترنت تونل شده دریافت کنید.

این روش برای این خوبه که مثلا دستگاهی دارید به صورت native قابلیت تنظیم پروکسی نداره
یا اینکه یه توزیع لینوکسی خاصی رو می‌خواهید نصب کنید که همون اول باید به اینترنت بین‌الملل متصل باشید تا پکیج‌های ضروری اولیه رو بگیره


خوب بریم سراغ مراحل کار:
من این کار رو تو اوبنتو 26.04 انجام دادم و خیلی خوب کار می‌کرد.
سیستم مقصد خودم هم که خروجی رو تست کردم فدورا بود.
این دو تا اسم رو می‌گذارم که آموزش واضح‌تر باشه.
پس میزبان شد اوبنتو و مقصد هم فدورا.
دقت کنید من اکثر دستورات رو با sudo انجام می‌دم چون این سیستم من آزمایشی هست شما اگه می‌خواید انجام بدید یا کامل مطالعه کنید ببینید چطور وابستگی‌ها نصب می‌شن و کلاینت کار میکنه.


۱- با سیستم اوبونتو به وایفای که دارید متصل بشید

۲- دو تا لپتاپ رو با کابل LAN به همدیگه متصل کنید

۳- داخل اوبونتو این دستور رو اجرا کنید:
nm-connection-editorیک پنجره گرافیکی نمایش داده می‌شه
وارد تنظیمات قسمت Ethernet که به فدورا متصله بشید(در حالیکه گزینه Ethernet هایلایت هست اون چرخ‌دنده پایین گوشه سمت چپ صفحه رو بزنید)
بعد برید داخل قسمت IPV4 Setting و گزینه Shared to other computers رو از منوی Method انتخاب و ذخیره کنید و خارج بشید
تا الان نصف راه رو اومدیم اگه با فدورا از کابل LAN به اوبنتو متصل بشید می‌بینید که دسترسی به اینترنت براتون برقرار هست.

۴- نیاز به نرم‌افزاری داریم که بتونه کانفیگ ما رو در حالت TUN Mode اجرا کنه.
نرم‌افزارهای مختلفی رو امتحان کردم؛ هسته‌های خام که تنظیمات پیچیده‌ای داشتند و Beginner friendly نبود، V2rayN هم که TUN Modeاش دارای باگ بود هم تو فدورا هم اوبنتو، nekoray هم که TUN مودش کار می‌کرد قدیمی بود و کانفیگ‌های جدید وصل نمی‌شد. خیلی گشتم تا اینکه در نهایت به این نرم‌افزار رسیدم که عالی کار می‌کنه:
https://github.com/throneproj/Throneایشون از همون پروژه Nekoray استفاده می‌کنه اما به طور مرتب آپدیت هسته‌ها رو انجام میدن. برای نصب این نرم‌افزار نسخه .zip مخصوص لینوکس رو دانلود کنید و سپس اجرای این دستورات:
wget https://github.com/throneproj/Throne/releases/download/1.1.6/Throne-1.1.6-linux-amd64.zip
unzip Throne-1.1.6-linux-amd64.zip
cd Throne-1.1.6-linux-amd64
cd Throne
chmod +x ./Throne

۵- نرم‌افزار رو اجرا کنید
نکته مهم:
شاید وقتی این برنامه با فایل‌منیجر اجرا کنید ببیند که باز نمیشه.
داشتم ازش دلسرد می‌شدم که تو ترمینال اون رو به این صورت باز کردم(اگر برای شما هم باز نشد به این روش می‌تونید بفهمید مشکل از کجا بوده):
./Throneو معلوم شد که بعضی کتابخونه‌ها که برای اجراش لازم هستند رو نداره که به این روش نصب کنید:
sudo apt update
sudo apt install libopengl0 libgl1 libglx0 libgl1-mesa-glx
حالا باز با همون دستور قبلی پس از نصب این کتابخونه‌ها برنامه رو اجرا کنید.

۶- کانفیگ خودتون رو وارد نرم‌افزار کنید و پس از فعال کردن از قسمت بالای سمت راست گزینه TUN Mode رو تیک بزنید.

۷- تمام.
حالا هم روی خود اوبونتو و هم فدورا به اینترنت تونل شده دسترسی دارید
بدون اینکه نیاز باشه که برای هر کاری مدام دستی پروکسی تعیین کنید.
از تو لاگ نرم‌افزار Throne هم به راحتی می‌تونید ترافیک رو بررسی کنید
اگه به جای فدورا یک اکسس‌پوینت و یا روتر قرار بدید(با اتصال صحیح به پورت ورودی و تنظیم صحیح) اون روتر/اکسس‌پوینت می‌تونه این اینترنت تونل شده رو به دستگاه‌هایی که بهش متصل می‌شن مثل یک اینترنت عادی پخش کنه بدون اینکه متوجه بشن که به یک VPN متصلند.

البته اینم امکان‌پذیره که با اوبونتو اینترنت رو با LAN از مودم بگیرید و اوبونتو پس از فعالسازی هات‌اسپات لپتاپ مثل یک پخش‌کننده عمل کنه(اونو امتحان نکردم دیگه)  ;)
ترجیحا یک تست DNS Leak هم بگیرید. من گرفتم مشکلی نداشت.


یک کاربرد خیلی خوب دیگه‌ای که این روش میتونه داشته باشه:
فرض کنید که شما از جایی یک کانفیگ حرفه‌ای برای کارهای Trade و .. تهیه کردید
اما این کانفیگ‌ها در شرایط نت فعلی متصل نیستند و اپ مخصوص به خودشون رو هم دارند.
از اون طرف هم این کانفیگ‌های V2ray که دارید درسته که دسترسی به اینترنت بین‌الملل رو براتون فراهم می‌کنند
اما آیپی‌های حرفه‌ای ندارند و ریسک کار با اون در اپ‌های حساس بانکی و .. بالاست.

تو روشی که یک سیستم باید همه‌چیز رو هندل کنه، یعنی به صورت proxychain هم به کانفیگ v2ray متصل بشه هم به کانفیگ تمیزی که دارید
اون کانفیگ تمیز حتما باید پروتکلش قابل ایمپورت کردن به این اپ v2ray باشه در غیر این صورت پس از فعالسازی هرکدوم با مشکل routing loop مواجه می‌شید
چون وقتی V2ray رو فعال کنید میاد کل شبکه رو تونل می‌کنه و اون تونلی که برنامه دوم ساخته بود رو پاک می‌کنه
اگه هم بیاید اپ دوم رو فعال کنید میاد تونل v2ray رو غیرفعال می‌کنه و دسترسی خودش و v2ray رو به اینترنت قطع می‌کنه
حتی با تنظیم پروکسی برای اون اپ خاص هم این مشکل حل نمیشه چون به محض اینکه اون اپ TUN مود خودش رو فعال کنه v2ray دیگه نمی‌تونه به اینترنت متصل بشه.

مگر اینکه اپ دوم به شما اجازه بده که اون رو در حالت صرفا پروکسی اجرا کنید و کل سیستم رو TUN نکنه که خوب خیلی از این اپ‌های شخص ثالث از این قابلیت پیشتیبانی نمی‌کنند چون قابلیت‌هایی مثل kill switch و .. رو برای حداکثر ایمنی روی اون پیاده‌سازی کردند.

البته تو لینوکس باز هم می‌شه که دو تا TUN رو به هم زنجیره کرد
اما کار پیچیده‌ای هست و دوم اینکه مثلا اگر دستگاه اندرویدی داشته باشید که root نشده باشه و بخواید نه به طور همیشگی بلکه هروقت خواستید اون VPN دوم رو فعال کنید و وصل بشید باز با مشکل مواجه‌اید.

درحالیکه با این روشی که گفتیم وقتی ما شبکه رو به طور TUN شده از روتر یا لپتاپ دریافت می‌کنیم بدون هیچ مشکلی می‌تونیم از ابزارهای جهانی به طور استاندارد و ساده روی سیستم‌های دیگه خودمون هم استفاده کنیم  مثلا روی اندروید اپی که داریم(مثلا Proton VPN) رو باز کنیم و به راحتی به اون متصل بشیم چون مثل کاربری هستیم که به طور پیشفرض اینترنت بین‌الملل داره.

آپدیت:
۱- یک روش دیگری هم هست. شما به کانفیگ v2ray خودتون تو سیستم با TUN متصل می‌شید. حالا با افزونه‌های استاندارد فایرفاکس می‌تونید برای دسترسی به آیپی‌های خاص سرویس‌های پریمیومی که تهیه کردید استفاده کنید. مثلا Proton VPN و Nord و Tor guard و خیلی از کمپانی‌های دیگه این افزونه‌های اختصاصی رو برای مرورگر دارند و اونجا به اکانتتون لاگین می‌کنید.
از تو ردیت هم می‌تونید اگر نیاز خاصی برای آیپی تجاری دارید ببینید کدوم شرکت آیپی بهتری رو ارائه می‌ده و سرویس‌های حساس اون رو flag نمی‌کنند.
البته باز هم روش قبلی ارجح هست چون معمولا این‌ها در پلن‌های با نیاز خاص کانفیگ وایرگارد می‌دن که با افزونه قابل دسترسی نیست.

۲- شما می‌تونید داخل خود اپ v2ray یا سیستم openwrt، کانفیگ Wireguard و vmess و ... رو به هم chain کنید(با رفتن به گزینه add proxy chains). البته تو V2rayN این قابلیت هست تو Throne فعلا این قابلیت نیست.خوبیش اینه که اکثر سایت‌های معروف فروش VPN کانفیگ وایرگارد رو هم به شما می‌دن باید بگردید تو قسمت مخصوص پیدا کنید. مثلا اون شرکت‌هایی که بالا گفتم همه این رو دارند.
16
تو بعضی از توزیع‌ها که Fresh Install انجام می‌دیم
مشکلی که وجود داره اینه که فونت فارسی پیش‌فرضی که استفاده میشه Deajavu با ظاهر قدیمی و نازیبا برای کاراکترهای فارسی هست
تو اوبونتو این مشکل نیست و فونت فارسی پیش‌فرض وزیرمتن هست که فونت زیبایی هست
اما توی لینوکس مینت و فدورا که امتحان کردم این مشکل برقرار بود و حس می‌کردی سیستم با فارسی سازگاری خوبی نداره
و این نازیبایی فونت خیلی در تجربه کاربری تاثیر می‌زاره

پس از انجام این تغییرات تونستم این مشکل رو حل کنم:

از یک فونتی استفاده می‌کنم که پیش‌فرض در اکثر توزیع‌ها نصب است. شما اگه خواستید بعدا به وزیرمتن تغییرش بدید
اول ببینیم که اسم دقیق این فونت همین هست و داریمش یا نه:
fc-list -f '%{family}\n' | sort -u | grep -i 'Noto Sans Arabic'تو خروجی باید این رو ببینید:
Noto Sans Arabic
اما خوب این نسخش زیاد به درد ما نمی‌خوره و باید از نسخه UI اون استفاده کنیم که تجربه خوبی رو داشته باشیم
نصب نسخه UI:
sudo dnf install google-noto-sans-arabic-ui-fontsچک کردن این که نصب شده و اسم فونت رو هم با همون دستور بالا انجام بدید

تو این مرحله می‌ریم که تنظیمات این فونت رو برای اعمال سراسری برای کاراکترهای عربی و فارسی در سیستم بنویسیم
ابتدا این فایل متنی رو تشکیل بدید:
nano ~/.config/fontconfig/conf.d/30-persian-arabic.confو این محتویات رو داخل اون قرار بدید:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>

  <!-- Applications that provide script information -->
  <match target="pattern">
    <test name="script">
      <string>arab</string>
    </test>
    <edit name="family" mode="prepend" binding="strong">
      <string>Noto Sans Arabic UI</string>
    </edit>
  </match>

  <!-- Applications that only provide language -->
  <match target="pattern">
    <test name="lang" compare="contains">
      <string>fa</string>
    </test>
    <edit name="family" mode="prepend" binding="strong">
      <string>Noto Sans Arabic UI</string>
    </edit>
  </match>

  <match target="pattern">
    <test name="lang" compare="contains">
      <string>ar</string>
    </test>
    <edit name="family" mode="prepend" binding="strong">
      <string>Noto Sans Arabic UI</string>
    </edit>
  </match>

</fontconfig>

پس از ذخیره فایل این کامند رو اجرا کنید که فونت‌ها دوباره ساخته بشن:
fc-cache -f
مطمئن بشید که فایل لود شده:
fc-conflist | grep 30-persian-arabic
و اینکه فونت اعمال شده:
fc-match 'sans-serif:lang=fa'
fc-match 'sans-serif:lang=ar'

برای اینکه برای برنامه‌های فلت‌پک هم اعمال بشه این دستور رو اجرا کنید:
flatpak override --user --filesystem=xdg-config/fontconfig:ro
و تمام.
الان برنامه‌ای رو که دارید ببندید و بعد اجرا کنید می‌تونید این تغییر رو در اون مشاهده کنید(در اکثر برنامه‌ها).
17
میزکار KDE / افزونه مدیریت‌پنجره KZones
« آخرین ارسال توسط seyal 26 تیر 1405، 11:48 ق‌ظ »
تو بعضی از ویدیوهای یوتیوب دیده بودم که چقدر پنجره‌ها رو تمیز با شورتکات کنار هم می‌چینند و چقدر تو بهبود تجربه کاربری از میزکار تاثیر داره
البته اون ویدیوی که من دیدم و خوشم اومده بود از مدیریت پنجره‌هایی مثل hyprland استفاده می‌کرد

داشتم دنبالش می‌گردم که چه افزونه‌ای هست که این کار رو انجام می‌ده
پس از جستجو فهمیدم تو KDE باید از قسمت Kwin Scripts استفاده کنم:


اول افزونه‌ای که بیشترین پیشنهاد رو داشت و بررسیش کرده بوند افزونه KrohinKite بود
افزونه خوبی بود اما من نتونستم به خوبی باهاش ارتباط بگیرم
چون تا حدی رو اعصاب بود خودش می‌اومد خودکار پنجره‌ها رو دستکاری و مرتب می‌کرد
تنظیماتش هم زیاد منوی جذابی نبودش.
یادگیریش با کیبورد هم برام جالب نبود

اسکریپت‌های مختلف دیگه‌ای رو از فروشگاه KDE نصب و امتحان کردم
یکیش plotonium که گفتن سازنده به طور رسمی گفته که پروژه دیگه ادامه داده نمی‌شه

تا در نهایت رسیدم به اسکریپت KZones:
درست همون چیزی بود که می‌خواستم(هرچند جای پیشرفت هم داره)

روش استفادش این‌طوریه که پس از نصب این افزونه و فعالسازی اون
هر وقت که یک پنجره‌ای رو با ماوس نگه دارید و جابه‌جا کنید
براتون به صورت گرافیکی یک منوی اختیاری نمایش داده می‌شه که اون برنامه رو کجای صفحه دوست دارید قرار بدید:


می‌تونید چندین layout هم تعریف کنید
برای دسترسی و سوییچ بین این layout ها، باید ماوس رو در حالیکه اون پنجره رو گرفتید ببرید بالای صفحه
از اونجا خیلی راحت می‌تونید به انواع layout هاتون سوییچ کنید.


تعریف یک لایه جدید هم خیلی آسونه
کافیه که تو قسمت تنظیمات این افزونه به تب Layouts برید و اونجا یک ساختار JSON واضح می‌بینید که با یک نگاه می‌فهمید چطور چیدمان مخصوص به خودتون رو تعریف کنید
مثلا من این چیدمان رو بهش اضافه کردم:
    {
        "name": "Two Columns with Offset (1080p + Top Panel)",
        "zones": [
            {
                "x": 2,
                "y": 5,
                "height": 94,
                "width": 48
            },
            {
                "x": 52,
                "y": 5,
                "height": 94,
                "width": 48
            }
        ]
    }
]

حواستون باید به براکت‌ها و کاما باشه وقتی می‌خواید این رو جای‌گذاری کنید



البته پس از این تغییرات باید این افزونه رو یکبار غیرفعال و فعال کنید تا تغییرات جدید اعمال بشه.
18
معرفی نرم‌افزار / دسترسی به دستگاه اندرویدی با scrcpy
« آخرین ارسال توسط seyal 26 تیر 1405، 07:41 ق‌ظ »
می‌خواستم از اپلیکیشن‌های هوش‌مصنوعی که تو اندرویدم بود و حوصله نصب و تنظیمشون تو لینوکس نداشتم استفاده کنم
اپلیکیشنی نیاز داشتم که بتونه برام دسترسی به:
کلیپ‌بورد مشترک اندروید و لینوکس،
اتصال با usb c
قابلیت فراخوانی سریع
میرور اسکرین اندروید روی سیستم و قابلیت استفاده از عملکردهای اون
و ...
رو فراهم کنه.

پس از جستجو به اپلیکیشن scrcpy رسیدم لینک گیتهاب:
https://github.com/genymobile/scrcpy
روش نصبش رو قبلا تو یه تاپیک دیگه که در مورد استفاده از دوربین اندروید روی سیستم بود گفته بودم:
نقل‌قول
نسخه جدید اون رو از گیتهاب نصب کن من نصب کردم بدون مشکل کار می‌کنه:

برای نصب اول اگه اونو از قبل نصب داری پاک کن:
sudo apt remove scrcpy
sudo rm -rf /opt/scrcpy

بعد این دستورات رو به ترتیب اجرا کن:
wget https://github.com/Genymobile/scrcpy/releases/download/v4.0/scrcpy-linux-x86_64-v4.0.tar.gz
tar -xvf scrcpy-linux-x86_64-v4.0.tar.gz
cd scrcpy-linux-x86_64-v4.0
sudo mkdir -p /opt/scrcpy
sudo cp -a . /opt/scrcpy/
sudo ln -sf /opt/scrcpy/scrcpy /usr/local/bin/scrcpy

برای تست موفقیت‌آمیز بودن نصب:
scrcpy --version
و این رو باید ببینی:
scrcpy 4.0 <https://github.com/Genymobile/scrcpy>

Dependencies (compiled / linked):
 - SDL: 3.4.8 / 3.4.8
 - libavcodec: 62.28.101 / 62.28.101
 - libavformat: 62.12.101 / 62.12.101
 - libavutil: 60.26.101 / 60.26.101
 - libavdevice: 62.3.101 / 62.3.101
 - libusb: - / 1.0.29


در مورد استفاده از صفحه کلید فیزیکی هم وقتی scrcpy رو اجرا کردی
اون رو با این suffix اجرا کن:
--keyboard=uhid و اگر از سامسونگ استفاده می‌کنی برو تو بخش تنظیمات و از صفحه‌کلید پیش‌فرض خود سامسونگ استفاده کن
من هرکار کردم وقتی GBoard فعال بود نتونستم زبان رو عوض کنم اما با صفحه کلید پیش‌فرض بدون مشکل کار می‌کرد.


جدای از این برای راه‌اندازی scrcpy من خودم معمولا از این ترکیب استفاده می‌کنم:
scrcpy --turn-screen-off --stay-awake --keyboard=uhidحتی می‌تونی symlink هم درست کنی و با یک دستور ساده مثل phone کاری کنی این دستور اجرا بشه.

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

حتی این تو نسخه‌های جدیدتر این برنامه قابلیت‌های جالب دیگه‌ای هم اضافه شده (که باید موبایلتون هم پشتیبانی کنه) مثلا می‌تونید از یک دسکتاپ مجازی برای اندروید استفاده کنید که رزولوشن و سایز متفاوتی با صفحه پیشفرض خود اندرویدتون داشته باشه.

یک مزیت خیلی عالی اینه که درحالیکه به اندروید دسترسی دارید اما هر دو کاملا از هم ایزوله‌اند چون هریک از سخت‌افزار خودش استفاده می‌کنه
یعنی شاید تو سیستم خودتون وایفای فعال نباشه اما تو اندروید اینترنت و پروکسی رو فعال کرده باشید و به وایفای متصل باشید
در کل استفاده ازش به شدت پیشنهاد میشه.
19
خوب امروز با شرایط غیرمنتظره‌ای مواجه شدم استفاده از همین روش خیلی به دردم خورد:

فرض کنید می‌خواید پکیج خاصی رو نصب کنید. تو سیستم خودتون ارور conflict ميده و نمی‌خواید هم که سیستمتون و پکیج‌هاش رو خراب کنید که برای این پکیجی که می‌خوام در ادامه بگم پیش اومد:
Solving dependencies... Error!
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

Unsatisfied dependencies:
 whitedns-desktop : Depends: libwebkit2gtk-4.0-37 but it is not installable
Error: Unable to satisfy dependencies. Reached two conflicting assignments:
   1. whitedns-desktop:amd64=1.0.0-beta5 is selected for install
   2. whitedns-desktop:amd64 Depends libwebkit2gtk-4.0-37
      but none of the choices are installable:
      [no choices]

همون‌طور که می‌بینید تفاوت نسخه در وابستگی‌ها وجود داره و نصب اجباری اون باعث آسیب به بسته‌ها و بروزرسانی سیستم می‌شه که توصیه نمیشه.
به ترتیب به این روش عمل می‌کنیم:
۱- نصب DistroBox:
sudo dnf install distrobox
۲- گرفتن یک ایمیج سازگار و نصب و نام‌گذاری اون:
distrobox create -n whitedns-box -i ubuntu:22.04
۳- وارد شدن به این ایمیج(این مرحله چون setup اولیه هست کمی طول می‌کشه):
distrobox enter whitedns-box
۴- و حالا نصب مجدد پکیج موردنظر:
sudo apt update
sudo apt install /home/USER/Downloads/WhiteDNS-1.0.0-beta5-linux-amd64.deb

به سادگی نصب انجام شد و پیغام موفق‌آمیز بودن هم نمایش داده شد:
Processing triggers for dbus (1.12.20-2ubuntu4.1) ...
Setting up at-spi2-core (2.44.0-3) ...
Setting up glib-networking:amd64 (2.72.0-1) ...
Setting up xdg-desktop-portal-gtk (1.14.0-1build1) ...
Setting up libsoup2.4-1:amd64 (2.74.2-3ubuntu0.7) ...
Setting up gstreamer1.0-plugins-good:amd64 (1.20.3-0ubuntu1.6) ...
Setting up libwebkit2gtk-4.0-37:amd64 (2.50.4-0ubuntu0.22.04.1) ...
Setting up whitedns-desktop (1.0.0-beta5) ...
Processing triggers for dictionaries-common (1.28.14) ...

یک نکته:
از اونجایی که Distrobox به طور پیش‌فرض دایرکتوری خانه شما (/home/seal) رو با میزبان به اشتراک می‌زاره، کانتینر می‌تونه پوشه دانلودهای شما را به طور خودکار ببینه.
روش بهتر هم اینه که ابتدا برای نصب اون رو تو خود کانتینتر کپی کنید و بعد نصب کنید که آخرش اخطار نده هرچند روش قبلی هم بدون مشکل نصب و اجرا می‌شه:
cp /home/USER/Downloads/WhiteDNS-1.0.0-beta5-linux-amd64.deb /tmp/
sudo apt install /tmp/WhiteDNS-1.0.0-beta5-linux-amd64.deb

۵- و در نهایت ایجاد شورتکات و افزودن به application menu سیستم اصلی:
distrobox-export --app whitedns-desktop
این هم پیام افزوده شدن:
📦[USER@whitedns-box Downloads]$ distrobox-export --app whitedns-desktop
Application whitedns-desktop successfully exported.
OK!
whitedns-desktop will appear in your applications list in a few seconds.
تمام.

به همین سادگی بدون به هم ریختن سیستم و درگیری با فرایند کامپایل تونستیم یک پکیج ناسازگار رو نصب کنیم.


یک نکته مهم در مورد این روش و نرم‌افزارهای V2Ray:
اینکه چطور کانتینر می‌تواند برای سیستم اصلی پروکسی تنظیم کند، به دو دلیل فنی زیر است:

۱. اشتراک‌گذاری کامل شبکه (Network Sharing)
به طور پیش‌فرض، Distrobox کانتینر را در حالت host network اجرا می‌کند. این یعنی:
* کانتینر کارت شبکه مجزا ندارد و از همان کارت شبکه سیستم اصلی شما استفاده می‌کند.
* پورت‌ها کاملاً مشترک هستند اگر برنامه V2Ray را داخل کانتینر روی پورت `10808` اجرا کنید، این پورت روی سیستم اصلی شما (Host) نیز دقیقاً روی `localhost:10808` یا `127.0.0.1:10808` در دسترس خواهد بود.
* بنابراین، مرورگر سیستم اصلی شما به راحتی می‌تواند ترافیک خود را به این پورت بفرستد.

۲. دسترسی به تنظیمات سیستم اصلی (از طریق کانال‌های ارتباطی)
برنامه‌هایی مانند WhiteDNS یا ابزارهای مشابه، برای اعمال پروکسی سراسری روی سیستم اصلی (Host)، از ابزارهایی مثل `gsettings` (در میزکار GNOME) یا تغییر متغیرهای محیطی سیستم (Environment Variables) استفاده می‌کنند.

Distrobox به طور پیش‌فرض سوکت‌های ارتباطی میزکار (بخش D-Bus و X11/Wayland) را بین کانتینر و سیستم اصلی به اشتراک می‌گذارد. به همین دلیل:
* برنامه داخل کانتینر می‌تواند دستور تغییر تنظیمات پروکسی را به میزکار سیستم اصلی ارسال کند.
* سیستم اصلی این دستور را دریافت کرده و پروکسی را روی شبکه اعمال می‌کند (که مسیر آن به همان پورت مشترک داخل کانتینر ختم می‌شود).

در حالی که حالت‌های استاندارد پروکسی SOCKS5 و HTTP بدون هیچ مشکلی کار می‌کنند، ممکن است هنگام استفاده از حالت TUN (حالت VPN که تمام ترافیک سیستم را از طریق V2Ray هدایت می‌کند) با مشکل مواجه شوید. این حالت به دسترسی روت (روت‌اسکیپ) و ایجاد یک کارت شبکه مجازی (tun0) نیاز دارد. از آنجایی که کانتینرهای Distrobox به طور پیش‌فرض بدون دسترسی‌های حساس امنیتی (Unprivileged) ساخته می‌شوند، این قابلیت در حالت عادی کار نخواهد کرد.

اگر به حالت TUN/VPN نیاز دارید، باید کانتینر Distrobox خود را با دسترسی روت ایجاد کنید:
distrobox create --root -n v2ray-admin -i archlinux:latest
20
معرفی نرم‌افزار / استفاده از مخازن دیگر توزیع‌ها با DistroBox
« آخرین ارسال توسط seyal 25 تیر 1405، 05:37 ب‌ظ »
خوب داشتم در مورد دسترسی به پکیج‌های خاصی که شاید تو توزیع خودمون وجود نداشته باشه یا نسخه متفاوتی داشته باشه جستجو می‌کردم
که تو یکی از پیشنهادات با DistroBox مواجه شدم
عجیب بود برام که چرا قبلا اسم این پروژه به این خوبی به گوشم نخورده بود.
جالبی قضیه اینجاست که بعضیا اون رو حتی با Flatpak به عنوان راه‌حلی جایگزین برای نصب نرم‌افزار هم مقایسه می‌کنند(البته کلا هدف این دوتا متفاوته و هر یک کاربرد خودشون رو دارند)

اما چه قابلیتی به ما میده؟
شما می‌تونید با استفاده از Distro Box روی توزیع اصلی خودتون(مثلا دبیان پایدار) به پکیج‌های توزیع‌های دیگه‌ مثل آرچ و فدورا و ... دسترسی داشته باشید و نرم‌افزارهاشون رو نصب و اجرا کنید بدون اینکه مثل ویرچوال باکس بار پردازشی زیادی به سیستم وارد بشه.
حتی استفاده از نرم‌افزارهای GUI این توزیع‌ها هم به سادگی با distrobox امکان‌پذیره.
می‌تونید میزکارهای مختلف مثل KDE و XFCE و .. رو هم بدون آسیب به پکیج‌ها و سازگاری توزیع خودتون نصب و امتحان کنید.


اساس کار نرم‌افزار تکنولوژی جدیدی نیست و از قبل وجود داشته اما این پروژه اومده و اون فرایند رو به شدت بهینه و ساده کرده.
به این صورت عمل می‌کنه که از کانتینتر و ایمیج اون دیسترو استفاده می‌کنه
مثل docker و podman

برای نصب و آشنایی با اون دیدن این ویدیو یوتیوب رو توصیه می‌کنم(اگه کسی از پلتفرم آزاد ویدیو پیدا کرد بفرسته):
https://www.youtube.com/watch?v=eiDt4O6UPRw
صفحه: 1 [2] 3 4 ... 10