
لماذا
impala هي واجهة TUI رائعة للواي فاي لكنها تتحدث مع iwd. إذا كان توزيعك يستخدم بالفعل NetworkManager (معظمها يفعل — GNOME, KDE, Ubuntu, Fedora, Pop, …)، فلا يمكنك إسقاط impala دون خلع المكدس. يحتفظ wlctl بتجربة مستخدم impala ويوجهها إلى NetworkManager، لذلك تعمل بجانب ما يفعله سطح المكتب الخاص بك بالفعل.
الميزات
- وضعي المحطة (Station) ونقطة الوصول (Access Point)
- مؤسسات WPA (802.1X)
- محولات متعددة — اختر أي محول تريد تشغيله، وبدّل بسرعة
- اتصالات VPN — تشغيل/إيقاف، إدارة الاتصال التلقائي، وحذف ملفات تعريف VPN / WireGuard المحفوظة، مثل nmtui؛ نفق نشط يظهر كشارة في الزاوية اليمنى العليا
wlctl doctor — يتفقد rfkill، السائق، الارتباط، IP، DHCP، البوابة، DNS، الإنترنت
- مشاركة رمز QR، الشبكات المخفية، اختبار السرعة
- مفاتيح Vim، كل اختصار قابل للتخصيص
تثبيت
# crates.io
cargo install wlctl
# Arch (AUR)
yay -S wlctl-bin
# Nix (تشغيل دون تثبيت)
nix run github:aashish-thapa/wlctl
# من المصدر
git clone https://github.com/aashish-thapa/wlctl && cd wlctl
cargo build --release
على NixOS، أضف flake كمدخل واستخدم wlctl.packages.${system}.default، أو ضعه داخل قشرة بأمر nix shell github:aashish-thapa/wlctl.
يحتاج NetworkManager قيد التشغيل. Nerd Fonts اختياري، للأيقونات.
الاستخدام
wlctl لتشغيل واجهة TUI. wlctl doctor عندما يكون هناك خطأ وتريد معرفة أي طبقة.
عام
الشبكات المعروفة
عندما يكون كل من WiFi و Ethernet قيد التشغيل، يكون الرابط الذي يوجّه NetworkManager حركة الإنترنت فعلاً باللون الأخضر، ويوضح تذييل المربع ذلك ( الإنترنت: WiFi · <ssid>). اضغط u على صف Ethernet أو WiFi المتصل لتبديل المسار الافتراضي إليه (يبقى الرابط الآخر قيد التشغيل).
يظهر تذييل مربع الجهاز عنوان LAN للمحول النشط (مثال: wlan0 · 192.168.1.20) حتى تتمكن من الدخول عبر SSH دون تشغيل ip addr.
الشبكات الجديدة
| الإجراء | المفتاح |
|---|
| اتصال / فصل | Space أو Enter |
اضغط / لتصفية قائمة المسح حسب SSID أثناء الكتابة؛ Enter يحتفظ بالفلتر، Esc يمسحه.
اتصالات VPN (فتح بـ v)
يظهر IP النفق المحدد ووقت التشغيل أسفل القائمة أثناء تشغيله.
استيراد إعدادات WireGuard: اضغط i، ثم إما ألصق الإعدادات كاملة (معظم المزودين — Proton, Mullvad — يعطونك النص مباشرة) أو اكتب مسار ملف .conf، واضغط Enter. يقوم wlctl بتحليلها وإنشاء ملف تعريف NetworkManager — لا حاجة لـ nmcli. يتم تسمية الإعدادات الملصقة بعد اسم خادم النقطة الطرفية؛ استيراد الملفات بعد اسم الملف. يتم توسيع ~ في المسارات. يُضاف الملف التعريفي دون اتصال تلقائي؛ قم بتشغيله بـ Enter. ملفات OpenVPN .ovpn غير مدعومة هنا — استوردها باستخدام nmcli connection import type openvpn file <path> (يحتاج إضافة NetworkManager-openvpn).
لوحة الجهاز
| الإجراء | المفتاح |
|---|
| معلومات المحول | i |
| تبديل الطاقة | o |
| Doctor | ? |
وضع المحطة (Station)
وضع نقطة الوصول (Access Point)
| الإجراء | المفتاح |
|---|
| بدء نقطة الوصول | n |
| إيقاف نقطة الوصول | x |
الإعدادات
~/.config/wlctl/config.toml. جميع المفاتيح قابلة لإعادة التعيين.
switch = "r"
mode = "station"
esc_quit = false
vpn = "v"
[device]
infos = "i"
toggle_power = "o"
doctor = "?"
[station]
toggle_scanning = "s"
[station.known_network]
toggle_autoconnect = "t"
remove = "d"
show_all = "a"
share = "p"
speed_test = "S"
prefer = "u"
[station.new_network]
show_all = "a"
connect_hidden = "h"
filter = "/"
[access_point]
start = "n"
stop = "x"
مقابل impala
الإسناد
مشتق من pythops/impala. واجهة المستخدم والهيكلة لهم.
الترخيص
GPLv3