Форум проекта PuppyRus Linux

Дистрибутивы проекта PuppyRus Linux => Сборки Linux от пользователей => Richy => Тема начата: DdShurick от 30 Июль 2021, 21:09:53

Название: UpNet-0.3
Отправлено: DdShurick от 30 Июль 2021, 21:09:53
 Пока маялся с глазами, переосмыслил работу trayNet. Теперь индикацией управляет простейший демон ( while true ) upNetd, который запускается из init.d. Сам же trayNet сделал самоубивающимся "if operstate != up  exit(0);" Тестирую потихоньку, пока без ppp (нет ни модемов, ни pppoe), только lan и wifi.
Название: Re: UpNet-0.3
Отправлено: sfs от 31 Июль 2021, 09:25:32
Пока маялся с глазами
сейчас лучше?

У меня в утилитах tray* давно так и сделано:
1. Демон на ash (bash жирнее ) , который обновляет данные и перерисовывает svg с цифрами
2. GUI на yad, который висит в трее и выводит обновляемый в п.1 svg
3. GUI с подробной статистикой, опционально вызываемый в п.2
Особого жора ресурсов не замечено
Название: Re: UpNet-0.3
Отправлено: DdShurick от 31 Июль 2021, 12:55:49
сейчас лучше?
Да, терпимо.
1. Демон на ash
Естественно. Busybox sh это и есть ash.
2. GUI на yad
У меня на gtk2 (на gtk3 tray вырезали). Получается интелектуальнее и добавить могу что хочу. Кстати, пробовал компилировать trayNet clang-ом, получается.
3. GUI с подробной статистикой
По моему - лишнее. Мало кому надо, а кому надо, тот знает, где взять. Зато у меня "инструкция в картинках для чайников" ;)
Особого жора ресурсов не замечено
А не с чего ему быть
 Пока ничего не выкладываю, потому что pre alfa.
 Для запуска из init.d добавил в inittab строку
Код
::sysinit:/usr/bin/find /etc/init.d -type f -exec {} start \; 
Для остановки
Код
::::shutdown:/usr/bin/find /etc/init.d -type f -exec {} stop \; 
Нравится?
Название: Re: UpNet-0.3
Отправлено: sfs от 31 Июль 2021, 18:01:32
на gtk3 tray вырезали
Нет. Трей в yad одинаков в gtk2 и 3
Нравится?
Минималистично. Плохо знаком с иниттаб.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 31 Июль 2021, 19:01:46
Нет. Трей в yad одинаков в gtk2 и 3
Функцию create_tray_icon вырезали, как это обойти, не знаю.
Плохо знаком с иниттаб.
Ничего сложного нет, особенно в busybox init. Вот
Код
::sysinit:/bin/mount -o remount,rw /
::sysinit:/bin/mount -a
::sysinit:/bin/mkdir -p /dev/shm /dev/pts
::sysinit:/bin/mount /dev/shm
::sysinit:/bin/mount /dev/pts
::sysinit:/sbin/udevd --daemon
::sysinit:/sbin/udevadm trigger
::sysinit:/usr/bin/find /etc/init.d -type f -exec {} start \;
tty1::respawn:/sbin/getty -n -l /usr/bin/slim 38400 tty1
tty2::respawn:/sbin/getty 38400 tty2
tty3::respawn:/sbin/getty 38400 tty3
::ctrlaltdel:/sbin/reboot
::shutdown:/usr/bin/find /etc/init.d -type f -exec {} stop \;
::shutdown:/bin/umount -a -r
::shutdown:/sbin/swapoff -a
Хочу сделать так:
- интерфейсов нет - в трее не отображается ничего
- интерфейс опущен - в трее отображается значок "No Net"
- интерфейс поднят но не подключен ( отсоединён провод lan, не запущен wpa_supplicant wlan ) - отображается мигающий значок интерфейса. ( лишний повод отключить неработающее или настроить как надо )
- интерфейс поднят - отображается значок интерфейса
- интерфейс упал - значок исчезает. Если это был единственный интерфейс, то начинает отображаться значок "No Net"
Вот как то так....
Оно уже работает, но надо доводить
Название: Re: UpNet-0.3
Отправлено: DdShurick от 03 Август 2021, 19:07:11
 Проблемы с уведомлениями. От udev показывает в виде узкой ленты вверху экрана. Как вразумить, не знаю.
 Немножко повоевал с usb_modeswitch. Мой Megafon M150-2 не пожелал запускаться с версией usb_modeswitch-2.6.0. Причина - usb_modeswitch_dispatcher. Выяснилось, что для Huawei можно обойтись без жирного и глючного usb_modeswitch_dispatcher и usb-modeswitch-data.
Срока 15 для Huawei (40-usb_modeswitch.rules):
Код
ATTRS{idVendor}=="12d1", ATTRS{manufacturer}!="Android", ATTR{bInterfaceNumber}=="00", ATTR{bInterfaceClass}=="08", RUN+="usb_modeswitch -J -v %s{idVendor} -p %s{idProduct}"
Скрипт /lib/udev/usb_modeswitch переписал:
Код
#!/bin/sh
/usr/sbin/usb_modeswitch $@
/sbin/udevadm trigger -s usb
Работает как часы. Правда это частный случай, но хорошо бы его сделать общим.
Андроидофонщиков прошу обратить внимание на "ATTRS{manufacturer}!="Android", это содержится и в оригинале. Возможно, все ваши беды отсюда.

Инструкция для чайников в картинках (https://disk.yandex.ru/d/c3Sfg51135TRIA)
Название: Re: UpNet-0.3
Отправлено: sfs от 04 Август 2021, 08:27:55
Проблемы с уведомлениями.
Как выводите? (https://wiki.puppyrus.org/soft/notify)
Название: Re: UpNet-0.3
Отправлено: DdShurick от 04 Август 2021, 09:38:02
Как выводите?
notify-send -> dunst
Проблема в том, что в $HOME должен быть .config/dunst/dunstrc, root его видит, а udev нет.
Название: Re: UpNet-0.3
Отправлено: krasnyh от 04 Август 2021, 09:47:31
Уведомления на рабочем столе (https://wiki.archlinux.org/title/udev_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9)#%D0%A3%D0%B2%D0%B5%D0%B4%D0%BE%D0%BC%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F_%D0%BD%D0%B0_%D1%80%D0%B0%D0%B1%D0%BE%D1%87%D0%B5%D0%BC_%D1%81%D1%82%D0%BE%D0%BB%D0%B5)
Название: Re: UpNet-0.3
Отправлено: DdShurick от 04 Август 2021, 09:50:01
Проблема в том, что в $HOME
В вопросе оказался ответ: export HOME=/root решило проблему.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 04 Август 2021, 11:36:39
 Как поступить с usb_modeswitch_dispatcher? Оставить и ловить ошибки или выкинуть и ловить новые? Я бы выкинул, но у меня сейчас всего два модема: старинный WeTelecom WM-D200, для которого не существует сети, и Megafon M150-2 прошивка HiLink, фактически usb-сетевая карта, а не модем. Не на чем пробовать.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 06 Август 2021, 20:27:42
Код
#!/bin/sh
##trayNetd демон отображения сетевых интерфейсов в трее. DdShurick GPL-v2. 06.08.2021
while true
do
sleep 5
[ -d /tmp/.X11-unix ] || continue
[ -f /tmp/dsp -a ! "$DISPLAY" ] && export DISPLAY="$(cat /tmp/dsp)" #?? Костыль, но как отследить загрузку WM?
ls -1 /sys/class/net | grep -v lo | while read IFACE
do
OPST="$(cat /sys/class/net/$IFACE/operstate)" 2>/dev/null
[ "$(cat /tmp/operstate.$IFACE)" == "$OPST" ] && continue
[ "$OPST" == "up"  ] && trayNet "$IFACE" &
echo "$OPST" | tee /tmp/operstate.$IFACE
done
[ "$(grep up /tmp/operstate.*)" -o "$(pidof trayNet)" ] || trayNet none &
done
Посмотрите, у кого есть желание. Может что присоветуете.
trayNet (gtk2) с иконками прилагаю.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 07 Август 2021, 14:03:19
 Кто пользуется 3G-модемами, похимичим?  ;)
Название: Re: UpNet-0.3
Отправлено: knn от 07 Август 2021, 16:20:47
upNet достаточно пользовал для 'usb0'(андроид-модем-смартов) и для 'pppoe'( # PRA-03,1808,... Richi32, ... а на слакваре(PuppySlako) можно сказать бывало - "чуть ли не единственный вариант" и жалобы там и-нетные на pppoe попадались). Для другого не пробовал. Как и "другое" тоже.
---------
пока на "чистомАрче"/т.е. Ледяном. Компилить не пробовал. И предполагаю, что возможно придется что-нибудь "вырубать"... # но нет четкого представления что именно...
на другое пока времени не хватает
Название: Re: UpNet-0.3
Отправлено: DdShurick от 07 Август 2021, 17:41:15
Компилить не пробовал.
Компилить не надо, я github не обновлял, химичу локально.
андроид-модем-смартов
Тут интересно было бы посмотреть вывод
Код
# udevadm info -a -p /sys/class/net/usb0
# udevadm info env -p /sys/class/net/usb0
Название: Re: UpNet-0.3
Отправлено: knn от 07 Август 2021, 18:33:50
на той системе какая у меня сейчас есть вырубил 'pppoe' и поднял/подключил 'анроид-смарт-модем'
[# почти не понимаю....  ну лат-шрифт знаком...)]
=> прикрепил txt (не влазило)
Название: Re: UpNet-0.3
Отправлено: DdShurick от 07 Август 2021, 19:17:13
code-dDs-2021-08-07_23-31-22.txt
Спасибо за информацию. Ваше устройство не требует usb_modeswitch, но максимальную длину имени в trayNet я добавил.
# почти не понимаю....
Эти команды полезны при написании правил udev (udev rules). Первая показывает все атрибуты устройства, которые можно использовать и как ключи для поиска, и как переменные для запуска программы. Вторая показывает переменные окружения, использовать можно аналогично. Например строка
Код
ACTION=="add", KERNEL!="ppp?", SUBSYSTEM=="net", RUN+="upNet.sh %k %s{address} %s{operstate} %E{ID_BUS} %E{ID_MODEL}"
обозначает: при появлении нового устройства (ACTION=="add") не ppp (KERNEL!="ppp?") подсистема net (SUBSYSTEM=="net") запустить (RUN+=) скрипт upNet.sh (должен находиться обязательно в /lib/udev/) и передать ему аргументы: имя интерфейса (%k) макадрес (%s{address}) состояние (%s{operstate} usb или pci (%E{ID_BUS}) и модель устройства (%E{ID_MODEL})
Что нибудь понятно?
Название: Re: UpNet-0.3
Отправлено: knn от 07 Август 2021, 19:28:48
Что нибудь понятно?
) "относительно".
извиняюсь - но правда как минимум не сегодня
---------------
если серьезно - на "сети" делал нескоько заходов. меня пока никак не "прорубает"...
можт какая литература-попроще для " недалеких" подберется ( # :)  когда-то, было дело, по-электрике меня с ручника сорвала кижка "полковнника(?~=Мощевитин?)-для-более-младш.-состава" - там было на примере "тенисных шариков" - никогда не забуду....
Название: Re: UpNet-0.3
Отправлено: knn от 07 Август 2021, 20:27:10
к cлову - "ранее упомянутое устроство" == 'htc-wilefire-S'( # рутованое, и перешитое на 'cianogenmod')
-------
- переставил симку в 'htc-HD'(#! нерутованый. к сожалению пока. и соответственноо не перешитый.) ==>
Код
ifconfig....
enp0s29f7u2...
# на другом, на пример на гаражном-компе, посмотреть не помешает т.к. не знаю почему-то ранее думалось что " значение устройства другое"... но это всё не точно...
-----
сообщение - с "последнего устройства"
Название: Re: UpNet-0.3
Отправлено: DdShurick от 08 Август 2021, 11:07:08
enp0s29f7u2...
Нашёл пример расшифровки
Цитата
enp1s0 и enp2s0 - что-то вроде Ethernet устройство, PCI шина 1,2, слот 0.
более подробно
Цитата
The names have two character prefixes based on the type of interface:

    en for Ethernet,
    wl for wireless LAN (WLAN),
    ww for wireless wide area network (WWAN).

The names have the following types:

    o<index> - on-board device index number
    s<slot>[f<function>][d<dev_id>] - hotplug slot index number
    x<MAC> - MAC address
    p<bus>s<slot>[f<function>][d<dev_id>] - PCI geographical location
    p<bus>s<slot>[f<function>][u<port>][..][c<config>][i<interface>] - USB port number chain
отсюда (https://www.linux.org.ru/forum/admin/13169873).
Вывод: оба ваших андроидофона в системе подключаются одинаково.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 13 Август 2021, 15:16:37
 Новый вариант trayNetd:
Код
#!/bin/sh
##trayNetd управление отображением сетевых интерфейсов в трее. DdShurick GPL-v2. 09.08.2021
while true
do
sleep 5
[ -d /tmp/.X11-unix ] || continue
if [ ! "$DISPLAY" ]; then
#?? Костыль, но как отследить загрузку WM?
[ -f /tmp/dsp ] && export DISPLAY="$(cat /tmp/dsp)" || continue
fi
ls -1 /sys/class/net | grep -v lo | while read IFACE
do
if [  "$(cat /sys/class/net/$IFACE/operstate)" == "down"  ]; then
[ -f /var/run/${IFACE}.pid ] && rm /var/run/${IFACE}.pid
continue
fi
[ -f /var/run/${IFACE}.pid ] && pidof trayNet | grep "$(cat /var/run/${IFACE}.pid)" >/dev/null && continue
trayNet "$IFACE" &
echo $! > /var/run/${IFACE}.pid
done
[ "$(grep up /tmp/operstate.*)" -o "$(pidof trayNet)" ] || trayNet none
done
Может показывать любое количество поднятых интерфейсов.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 20 Август 2021, 14:08:27
 С одним костылём разобрался (/tmp/dsp). Строка:
Код
bash-4.4# grep DISPLAY /proc/`pidof Xorg`/environ
DISPLAY=:0.0
Хотя лучше подставлять `pidof $SESSION`, но не знаю, как получить универсально, без костыля.
Название: Re: UpNet-0.3
Отправлено: sfs от 20 Август 2021, 14:38:28
Вы DISPLAY автоопределяете?
Код
for x in /tmp/.X11-unix/*; do  export DISPLAY=":`echo $x | sed s#/tmp/.X11-unix/X##`" ; done
Название: Re: UpNet-0.3
Отправлено: DdShurick от 20 Август 2021, 15:04:34
Код
for x in /tmp/.X11-unix/*; do  export DISPLAY=":`echo $x | sed s#/tmp/.X11-unix/X##`" ; done
Код
bash-4.4# time for x in /tmp/.X11-unix/*; do  echo DISPLAY=":`echo $x | sed s#/tmp/.X11-unix/X##`" ; done
DISPLAY=:0

real 0m0,004s
user 0m0,002s
sys 0m0,003s
bash-4.4# time grep DISPLAY /proc/`pidof Xorg`/environ
DISPLAY=:0.0

real 0m0,016s
user 0m0,004s
sys 0m0,011s
Ваш вариант быстрее, но похож на костыль, мой точнее. У меня DISPLAY==:0.0, тем более, что "pidof $SESSION" мне нужен для отслеживания запуска рабочего стола.
Код
	PID=$(pidof jwm) || continue
[ -z "$DISPLAY" ] && export $(grep DISPLAY /proc/$PID/environ)
Только вместо jwm должно быть $SESSION.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 21 Август 2021, 14:18:17
 Sfs, как в твоих дистрибутивах организован выбор сессии? Для каждой отдельный ~/.xinitrc?
Название: Re: UpNet-0.3
Отправлено: sfs от 21 Август 2021, 15:51:08
ля каждой отдельный ~/.xinitrc?
Да. Если каждая де отдельным модулем - читать , как, в пупи /etc/wm-что-то там лишнее
Название: Re: UpNet-0.3
Отправлено: DdShurick от 21 Август 2021, 15:56:21
 А если сразу несколько?
Название: Re: UpNet-0.3
Отправлено: DdShurick от 21 Август 2021, 21:50:21
А если сразу несколько?
Отвечу сам: запустится тот WM, ~/.xinitrc которого в более верхнем слое. А надо который хочется. Давай это дело утрясём.
Название: Re: UpNet-0.3
Отправлено: sfs от 22 Август 2021, 09:08:26
запустится тот WM, ~/.xinitrc которого в более верхнем слое.
Если wm модулями - подключить в верхний слой вторую вь и запустить первую... Где логика. Считаю горячее переключение вм бесполезным.
Давай это дело утрясём.
Сделайте как в пупи
Название: Re: UpNet-0.3
Отправлено: DdShurick от 22 Август 2021, 12:22:51
Сделайте как в пупи
$CURRENTWM? Хорошо.
Название: Re: UpNet-0.3
Отправлено: ansivar от 22 Август 2021, 13:27:57
несколько X11 со своими WM:
https://linux-ru.ru/viewtopic.php?f=32&t=1587 (https://linux-ru.ru/viewtopic.php?f=32&t=1587)

Название: Re: UpNet-0.3
Отправлено: DdShurick от 22 Август 2021, 17:14:12
несколько X11 со своими WM:
Нет, несколько слоёв aufs с WM.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 23 Август 2021, 18:29:09
Код
eval $(grep ^CURRENTWM /home/live/.xinitrc)
PID=$(pidof $CURRENTWM) || continue
Теперь прекрасно работает, но, как говорит sfs, пользователь "прибит гвоздями". Решений вижу два:
- "прибить гвоздями" xinitrc, сделав его глобальнымб например в /etc/X11/xinit/
- брать переменную $USER из /proc/$pid/environ любой программы, запущенной из autostart
Что лучше?
Добавлю: взять переменную из environ получается только busybox grep, полноценный grep "пишет отписку" (или я вразумит его не умею?).
Название: Re: UpNet-0.3
Отправлено: krasnyh от 23 Август 2021, 19:10:51
полноценный grep "пишет отписку"
Код
$ strings /proc/$pid/environ | grep USER


В PRA strings в модуле DEVX, который не подключен по умолчанию, так что можно заменить на xargs -0 -L1 -a.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 24 Август 2021, 07:01:59
 Смысл, если есть busybox?
Название: Re: UpNet-0.3
Отправлено: sfs от 24 Август 2021, 10:21:14
"прибит гвоздями"
У меня определяется скриптом sfsusr. Грепает процессы на юзера WM. Кривовато, но других идей нет
Решений вижу два:
Оба такие же кривые как и мое. Но рабочие
Название: Re: UpNet-0.3
Отправлено: DdShurick от 24 Август 2021, 11:20:58
Оба такие же кривые
То то и оно :(
Вот ещё кривулька:
Код
bash-4.4# time find /proc -maxdepth 1 -type d -name [1-9]??|while read P; do grep USER $P/environ|grep -v root && break; done
USER=live

real 0m0,247s
user 0m0,188s
sys 0m0,216s
Название: Re: UpNet-0.3
Отправлено: betcher от 24 Август 2021, 15:18:49
Чет не понял какого юзера вы там добываете? ))
Название: Re: UpNet-0.3
Отправлено: DdShurick от 24 Август 2021, 16:33:33
 От которого сессия запущена.
Честно говоря, дурью маюсь. Пользователь сессии один - live, но вдруг кому-то захочется другого. Ну и чтоб не было "гвоздями прибито".
Название: Re: UpNet-0.3
Отправлено: betcher от 24 Август 2021, 17:06:39
От которого сессия запущена.
иксы то есть?
В магос есть вот такой скрипт
https://github.com/magos-linux/magos-linux/blob/master/make_MagOS/files/patches/rootfs/MagOS/usr/lib/magos/scripts/xuserrun
Нужен для запуска чего нибудь от пользователя иксов. Соответственно чтоб получить его имя в скрипте делаю
xuserrun whoami

Название: Re: UpNet-0.3
Отправлено: knn от 24 Август 2021, 17:19:49
Пользователь сессии один - live, но вдруг кому-то захочется другого. Ну и чтоб не было "гвоздями прибито".
- я так - на "а вдруг" -
Код
echo ~
# с "вытекающими"/ или недопонял ...
Название: Re: UpNet-0.3
Отправлено: DdShurick от 24 Август 2021, 17:53:57
Код
echo ~
Скрипт запускается из /etc/init.d от init и "echo ~" будет "/"
xuserrun
Нет у меня loginctl, и не будет. И у меня попроще
trayNetUp
Код
#!/bin/sh
##trayNetd управление отображением сетевых интерфейсов в трее. DdShurick GPL-v2. 24.08.2021

finduser () {
find /proc -maxdepth 1 -type d -name [1-9]* | while read P
do
awk -F\= '/USER/ {print $2}' $P/environ | grep -v root && break
done
}

while true
do
sleep 5
[ -z "$user" ] && export user=$(finduser)
eval $(grep ^CURRENTWM /home/$user/.xinitrc)
PID=$(pidof $CURRENTWM) || continue
[ -z "$DISPLAY" ] && export $(grep DISPLAY /proc/$PID/environ)

ls -1 /sys/class/net | grep -v lo | while read IFACE
do
if [ "$(grep -q  down /sys/class/net/$IFACE/operstate)" ]; then
[ -f /var/run/${IFACE}.pid ] && rm /var/run/${IFACE}.pid
continue
fi
[ -f /var/run/${IFACE}.pid ] && pidof trayNet | grep -q "$(cat /var/run/${IFACE}.pid)" && continue
trayNet "$IFACE" &
echo $! > /var/run/${IFACE}.pid
done
[ "$(grep -q up /sys/class/net/*/operstate)" -o "$(pidof trayNet)" ] || trayNet none
done
      

Название: Re: UpNet-0.3
Отправлено: krasnyh от 24 Август 2021, 19:22:53
Код
$ id -u -n
live
Команда отсюда:
В магос есть вот такой скрипт
Название: Re: UpNet-0.3
Отправлено: betcher от 24 Август 2021, 19:55:26
id -u -n
Это не юзер иксов. В xuserrun на случай если не получилось вычислить юзера с loginctl был добавлен костыль. Это он )). Скрипт появился когда в одной из версий магоса не было системд, а во второй был.
Название: Re: UpNet-0.3
Отправлено: krasnyh от 24 Август 2021, 20:00:23
А можно пример ситуации, где выхлоп не совпадет с USER, который вошел в систему? Я проверил на разных iso - PRA (live), ArchLinux (root), Richy64 (live).


Или "юзер иксов" это что то особое?
Название: Re: UpNet-0.3
Отправлено: betcher от 24 Август 2021, 20:07:08
Линукс - многопользовательская ОС )).
Название: Re: UpNet-0.3
Отправлено: krasnyh от 24 Август 2021, 20:11:30
Т.е. если в системе добавлены два пользователя, например live и user, а зашел я под user, то команда выше покажет и live и user? Тогда понятно.
Название: Re: UpNet-0.3
Отправлено: betcher от 24 Август 2021, 20:46:11
Команда покажет юзера от которого запущена.
Название: Re: UpNet-0.3
Отправлено: krasnyh от 24 Август 2021, 21:04:56
Проверил на примере MagOS.iso. Грузится с user, команда выше показала user. Вышел из сеанса, зашел под root, команда показала root.

Если это не пример "многопользовательского линукса", тогда не знаю... )


upd. Наверно root не считается.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 24 Август 2021, 21:05:04
Создал второго пользователя user. Показывает live и user. В моём скрипте до первого совпадения, выходит "кто успел, тот и съел". Лажа ;(
Название: Re: UpNet-0.3
Отправлено: betcher от 24 Август 2021, 21:24:51
Это совсем не пример многопользовательского линукса. Юзеры могут быть залогинены одновременно. Например один в иксах второй по ssh. Или допустим у вас демон, выполняется под своим юзером и ему нужно узнать кто запустил иксы. Или например вы хотите чтоб запустилось пользовательское  gui приложение, когда вы вставили флешку. У udev есть права  чтоб запустить от юзера,  но он не в курсе от которого запускать. Короче id -un .вообще не вариант. Когда копал в этом направлении в некоторых версиях who можно было отличить юзера иксов, как сейчас с этим не знаю. С systemctl работает хорошо, но это только с системд и допущением, что seat0.  такого решения чтоб 100% не знаю, еще ж wayland есть )
Название: Re: UpNet-0.3
Отправлено: krasnyh от 24 Август 2021, 21:38:48
Наверно из сборок форума только MagOS подходит для проверки многопользовательского режима. )

Зашел, создал помимо user еще и ice через гуи. Команда id отработала при выходе из сеанса и смене пользователя, показав для первого сеанса user, для второго ice.


Но конечно, ситуации описанные комментом выше, за гранью...  :)
Название: Re: UpNet-0.3
Отправлено: DdShurick от 24 Август 2021, 22:07:50
Код
bash-4.4$ ps|awk '/wm$/ {print $2}'
live
Получаем пользователя WM.
В моём скрипте пользователь не нужен, нужен pid WM, тогда
Код
PID=$(ps | awk '/wm$/ {print $1}')
[ -z "$PID" ] && continue
Трудно быть бестолковым. Очень трудно :(
trayNetUp:
Код
#!/bin/sh
##trayNetUp управление отображением сетевых интерфейсов в трее. DdShurick GPL-v2. 24.08.2021

while true
do
sleep 5
PID=$(ps | awk '/wm$/ {print $1}')
[ -z "$PID" ] && continue
[ -z "$DISPLAY" ] && export $(grep DISPLAY /proc/$PID/environ)

ls -1 /sys/class/net | grep -v lo | while read IFACE
do
if [ "$(grep -q  down /sys/class/net/$IFACE/operstate)" ]; then
[ -f /var/run/${IFACE}.pid ] && rm /var/run/${IFACE}.pid
continue
fi
[ -f /var/run/${IFACE}.pid ] && pidof trayNet | grep -q "$(cat /var/run/${IFACE}.pid)" && continue
trayNet "$IFACE" &
echo $! > /var/run/${IFACE}.pid
done
[ "$(grep -q up /sys/class/net/*/operstate)" -o "$(pidof trayNet)" ] || trayNet none
done
Название: Re: UpNet-0.3
Отправлено: DdShurick от 24 Август 2021, 22:12:22
У udev есть права  чтоб запустить от юзера,  но он не в курсе от которого запускать.
Не совсем так, udev не знает $DISPLAY, это основная причина.
Название: Re: UpNet-0.3
Отправлено: krasnyh от 24 Август 2021, 22:15:07
 :)

У меня определяется скриптом sfsusr.
Код
 % cat =sfsusr

#!/bin/ash
#190619
# X user detect
for i in jwm openbox metacity xfce4-session enlightenment marco twin icewm-session ;do
    #echo $i
    wm="`pidof $i`"
    [ "$wm" = "" ] || u=`ps axu |awk '$2 ~ /^'$wm'$/ {print $1}'`
done
echo $u
Название: Re: UpNet-0.3
Отправлено: DdShurick от 25 Август 2021, 08:09:51
скриптом sfsusr.
Можно и так, но зачем затевать цикл, когда можно "jwm openbox metacity xfce4-session enlightenment marco twin icewm-session" сразу в awk
Код
bash-4.4# ps | awk '/jwm$|openbox$|metacity$|xfce4-session$|enlightenment$|marco$|twin$|icewm-session$/ {print $1" "$2}'
872 live
(у меня busybox ps, поэтому без ключей.)
Название: Re: UpNet-0.3
Отправлено: sfs от 25 Август 2021, 10:40:14
сразу в awk
Стремно. Можно не того нафильтровать. Как у меня - через пид надежнее
openbox$ - $ не прокатит.  Как правило вм запускается с параметрами
Название: Re: UpNet-0.3
Отправлено: betcher от 25 Август 2021, 10:42:48
Не совсем так, udev не знает $DISPLAY, это основная причина.
Да DISPLAY и еще где файл с Xauthority не знает, но я не об этом. Запустить от юзера и вывести на экран не одно и тоже.
Название: Re: UpNet-0.3
Отправлено: betcher от 25 Август 2021, 10:50:09
bash-4.4# ps | awk '/jwm$|openbox$|metacity$|xfce4-session$|enlightenment$|marco$|twin$|icewm-session$/ {print $1" "$2}'
872 live
Добавил i3$, в магос сработало
Название: Re: UpNet-0.3
Отправлено: sfs от 25 Август 2021, 10:51:59
В моем (sfsusr) случае, наверное можно упростить получение юзера ВМ до
Код
basename "`dirname "$XAUTORITY"`"
Название: Re: UpNet-0.3
Отправлено: DdShurick от 25 Август 2021, 11:19:12
Код
basename "`dirname "$XAUTORITY"`"
Не всегда. Вот Xorg
Код
bash-4.4# grep XAUTHORITY /proc/2317/environ
XAUTHORITY=/var/run/slim.auth
а это jwm
Код
bash-4.4# grep XAUTHORITY /proc/2329/environ
XAUTHORITY=/home/live/.Xauthority
Название: Re: UpNet-0.3
Отправлено: DdShurick от 26 Август 2021, 20:12:22
 Попробовал скрипт trayNetUp на prar-21.03, получается какая-то лажа. Вроде работает, ошибки не пишет, но работает не так. Не пойму, где собака порылась.
Ещё на prar wifi не настраивается, только руками через консоль.
Название: Re: UpNet-0.3
Отправлено: krasnyh от 26 Август 2021, 22:16:44
Запустить систему с base_only, чтобы убрать возможное влияние сетевых утилит, типа NM. Выключить автозагрузку net-auto в /etc/xdg/autostart (другая папка автозагрузки /home/live/.config/autostart). Это можно проделать и из Меню - Настройки, что-то связанное с автозапуском и сеансами (в разных DE по-разному).


p.s. Проконтролировать запуск /modules/linux-firmware-middle*.pfs, если требует железо. Или сразу кинуть в /base.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 27 Август 2021, 15:57:43
 Убрал модуль NM, wifi удалось настроить штатной утилитой. (Я всегда говорил: NM - зло). После запуска trayNetUp наблюдается следующее:
- pidof trayNetUp пустой (""), но trayNetUp работает, запускает соответствующие индикаторы. Как это может быть?
- индикаторы (trayNet) работают штатно, интерфейс down - нет иконки, up но сеть не настроена - мигающая иконка, настроена - зелёная постоянная.
- проблемы с удалением /var/run/$IFACE.pid, но это кажется NM гадил.
К сожалению заняться всерьёз не могу, опасаюсь за глаза.
Название: Re: UpNet-0.3
Отправлено: sfs от 30 Август 2021, 13:27:35
pidof trayNetUp пустой
Это скомпиленный бинарник или скрипт? ps ax |grep trayNetUp покажите
Название: Re: UpNet-0.3
Отправлено: DdShurick от 30 Август 2021, 14:59:00
Пока в твоём prar выйдешь в интернет..... Слов нет! Тягомотина.
бинарник или скрипт?
Скрипт, бесконечный цикл "while true"
ps ax |grep trayNetUp покажите
Код
root@roll2103:live# trayNetUp &
[1] 6544
root@roll2103:live# ps ax|grep trayNetUp
   6544 pts/0    S      0:00 /bin/sh /usr/bin/trayNetUp
   6671 pts/0    S+     0:00 grep trayNetUp
root@roll2103:live# pidof trayNetUp
root@roll2103:live#
Теперь понятно, откуда лажа, pidof кривой
Название: Re: UpNet-0.3
Отправлено: krasnyh от 30 Август 2021, 15:49:10
pidof кривой
А он умеет со скриптами? Тогда уж pgrep trayNetUp.


Чтобы не настраивать каждый раз соединение, создать модуль сохранения "Super-x - Сохранение - В модуль /base/090-save".
Название: Re: UpNet-0.3
Отправлено: sfs от 30 Август 2021, 15:55:19
Пока в твоём prar выйдешь в интернет
sudo netctl start профиль
pidof кривой
Нормальный. Но скрипты так не поймать. Надо pgrep -f
Название: Re: UpNet-0.3
Отправлено: krasnyh от 30 Август 2021, 16:02:37
Это наверно опять busybox, который умеет такое, что и не снилось стандартным утилитам линукса. :)

Наверно в trayNetUp надо добавить обнаружение busybox, если скрипт рассчитан для продвижения на разные сборки.
Название: Re: UpNet-0.3
Отправлено: sfs от 30 Август 2021, 16:27:42
Попробовал. Действительно busybox pidof ловит без ключей sh скрипт
Но как -то стремно такое использовать. Тем более от версии busybox может зависеть
Название: Re: UpNet-0.3
Отправлено: DdShurick от 30 Август 2021, 16:56:05
sudo netctl start профиль
Интернет поднимался автоматом, так как на этот раз по проводу, но, по сравнению с Richy о-очень медленно. Хром вообще замучился ждать. Richy в разы отзывчивее. Я привык, поэтому и ругаюсь на тягомотину.
Это наверно опять busybox
Да.
Но как -то стремно такое использовать.
Я больше 10 лет использую, и ничего, пока не умер. Так что не боись.
Название: Re: UpNet-0.3
Отправлено: krasnyh от 30 Август 2021, 17:08:48
А он умеет со скриптами?
pidof -x
Название: Re: UpNet-0.3
Отправлено: sfs от 30 Август 2021, 17:32:20
Интернет поднимался автоматом, так как на этот раз по проводу
Если netctl и NM не настроены - автонастройка идет уже после старта Х. Т.е. хотите быстрее - настройте профиль
Хром в Ричи отзывчивее при первом старте или во время браузинга?
Название: Re: UpNet-0.3
Отправлено: DdShurick от 30 Август 2021, 18:35:46
Хром в Ричи отзывчивее при первом старте или во время браузинга?
Как то пробовал хром, быстрее, но мне нужен с почтовым клиентом, поэтому Seamonkey.
хотите быстрее - настройте профиль
Провод то чего настраивать? Автоматом должен при наличии dns-сервера. Зачем эти лишние заморочки.
Название: Re: UpNet-0.3
Отправлено: sfs от 31 Август 2021, 09:16:58
мне нужен с почтовым клиентом
ввв морды к почте не устраивают?
Автоматом должен
Так и есть. Запуск теоретически можно перенести на более раннюю стадию.... Хотя никто не жаловался. Видимо юзают вифи
Название: Re: UpNet-0.3
Отправлено: DdShurick от 31 Август 2021, 09:47:09
ввв морды к почте не устраивают?
Привык, что браузер сообщает о новых письмах
Запуск теоретически можно перенести на более раннюю стадию....
Надо практически. У меня как сделано, интерфейс появился, пошла его настройка.
Название: Re: UpNet-0.3
Отправлено: sfs от 31 Август 2021, 09:49:16
Привык, что браузер сообщает о новых письмах
Нормальные морды типа roundcube сообщают
интерфейс появился, пошла его настройка
Ну и как автонастройка угадает пароль вифи?
Название: Re: UpNet-0.3
Отправлено: DdShurick от 31 Август 2021, 12:48:20
Ну и как автонастройка угадает пароль вифи?
Если на данную сеть нет настроек, предложит настроить (скрипт wifi), если настройки есть - молча подключит (скрипт wlan.sh), после чего высветится индикатор сети в трее.
Название: Re: UpNet-0.3
Отправлено: sfs от 01 Сентябрь 2021, 09:11:57
предложит настроить
Уже в Xorg? Тогда смысл запускать что-то  на более ранней стадии и зачем что-то еще детектить , если юзер уже настроил профиль сети и поставил в автозагрузку...
Название: Re: UpNet-0.3
Отправлено: DdShurick от 01 Сентябрь 2021, 11:33:28
Тогда смысл запускать что-то  на более ранней стадии
А на более поздней смысл есть? А "чистая" и без "X"?
зачем что-то еще детектить
Твои тридцать три уведомления чем то лучше? Напрягают.
Название: Re: UpNet-0.3
Отправлено: sfs от 01 Сентябрь 2021, 12:14:21
на более поздней смысл есть?
Xorg GUI настройки
Твои тридцать три уведомления чем то лучше?
Отключаемо. Но при чем это здесь?
Название: Re: UpNet-0.3
Отправлено: DdShurick от 01 Сентябрь 2021, 12:57:27
Xorg GUI настройки
Ты предлагаешь настраивать провод? Для чего тогда dhcp придумали?
Отключаемо.
На "чистой"?
Но при чем это здесь?
Сеть тоже выдаёт уведомления, и не одно. И висят они, мешают...
Название: Re: UpNet-0.3
Отправлено: sfs от 01 Сентябрь 2021, 13:07:59
Ничего не предлагаю. Уже потерял нить обсуждения. Изначально вы что-то спрашивали - я отвечал. Сейчас тема скатилась в "Разговоры обо всем".
Название: Re: UpNet-0.3
Отправлено: DdShurick от 01 Сентябрь 2021, 16:09:57
"Разговоры обо всем".
Поговорить тоже не вредно.
Подскажи, как лучше сделать автозапуск от рута в prar? Из /etc/rc.d не запускается, init.d у тебя отсутствует.
Пробовал xfce, ovs, lxqt. Как это ни странно, индикаторы (trayNet) нормально запускаются только в lxqt, в xfce только первый запуск, потом "проваливаются", pid есть, значка нет. Панель xfce какая-то дёрганая, такое впечатление, что сейчас рассыпется. Панель Vala trayNet в упор не видит. И ещё такое ощущение, что логика оболочки (bash и dash) какая-то другая, то, что чётко отрабатывает в busybox sh, работать не желает. Второй день бьюсь и ничего понять не могу.
Название: Re: UpNet-0.3
Отправлено: sfs от 01 Сентябрь 2021, 16:50:41
как лучше сделать автозапуск от рута в prar?
До Xorg - написать .service для systemd или через /etc/rc.local
После - sudo
логика оболочки (bash и dash) какая-то другая
Да. Чтобы наверняка лучше сделать везде симлинки на bash
Название: Re: UpNet-0.3
Отправлено: DdShurick от 01 Сентябрь 2021, 17:23:24
sudo
Не годится sudo, не передаёт привилегий.
Придётся пусковые скрипты самому смотреть, а глаза то слезятся :(
Название: Re: UpNet-0.3
Отправлено: DdShurick от 06 Сентябрь 2021, 10:54:19
Без busybox можно использовать "ps e", выдаёт список env процесса.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 07 Сентябрь 2021, 08:57:46
 Sfs, поможешь с автозапуском, а то застрял?
Название: Re: UpNet-0.3
Отправлено: sfs от 07 Сентябрь 2021, 09:27:44
Надо запустить сеть от рута до Xorg в прар2103?
через /etc/rc.local
Лучше по аналогии с netctl - т.е. создать профиль и https://wiki.archlinux.org/title/Netctl#Enabling_a_profile
После чего переделать полученный сервис на UpNet
Лучше тем , что можно задать в какой момент запускаться
Название: Re: UpNet-0.3
Отправлено: DdShurick от 07 Сентябрь 2021, 11:19:21
Надо запустить сеть от рута до Xorg в прар2103?
Не сеть, а trayNetUp.
Что ты думаешь насчёт default? defaultnet, defaultwifi, defaultpppoe? Это есть в Puppy, есть в Альте и других, только реализовано по разному. Вот что у меня есть сейчас:
Код
bash-4.4$ ls /etc/alternatives/
archiver  filemanager  imageeditor  mediaplayer  terminal    wordprocessor
browser   htmlviewer   imageviewer  pdfviewer texteditor  x-session-manager
Название: Re: UpNet-0.3
Отправлено: sfs от 07 Сентябрь 2021, 11:34:27
Не сеть, а trayNetUp
Т.е. уже в Xorg - тогда: ~/.config/autostart
У меня там много чего запускается . в том числе от рута
Что ты думаешь насчёт default?
Меня устраивает. У меня много где использовано. Запарюсь переписывать
Юзера не жалуются
Если делать как в Альте и пр. - надо в скрипты подключения модуля прописывать изменение alternatives. Думаю - лишние заморочки
Название: Re: UpNet-0.3
Отправлено: DdShurick от 07 Сентябрь 2021, 14:18:52
Если делать как в Альте
Не надо как в Альте, но и как в Puppy не надо, надо нечто среднее. В /etc/alternatives/<категория>/ помещается ссылка на исполняемый файл, если ссылок несколько, предлагается выбор. Выбранное - ссылка в /usr/local/bin/ под именем default<категория>. При таком раскладе исключаются наложение слоёв.
тогда: ~/.config/autostart
Тогда уж /etc/xdg/autostart/.
Название: Re: UpNet-0.3
Отправлено: sfs от 08 Сентябрь 2021, 08:37:00
В /etc/alternatives/<категория>/ помещается ссылка на исполняемый файл, если ссылок несколько, предлагается выбор
И выбранное сохраняется в конфиг. Хороший вариант. Особенно для тематических модулей как в Магос.
У меня весь софт единичными модулями. Поэтому ситуации выбора возникать не должно. Не нужна прога - не подключай модуль
Название: Re: UpNet-0.3
Отправлено: DdShurick от 08 Сентябрь 2021, 09:45:05
 Разобрался с запуском от systemd, написал юнит, в прцессах trayNetUp появился, но радости никакой, trayNet он запустить не может. Почему, непонятно. Переменная DISPLAY берётся, проверил.
Не нужна прога - не подключай модуль
Если в /etc/alternatives/<категория>/ всего одна ссылка, запускает автоматом, молча, если пусто, сообщает, что данной категории программ нет. Мешать точно не будет.
Название: Re: UpNet-0.3
Отправлено: sfs от 08 Сентябрь 2021, 10:54:29
написал юнит, в прцессах trayNetUp появился, но радости никакой,
Xorg проги обычно запускают через /etc/xdg/autostart/. Че не устраивает?
Мешать точно не будет.
Тогда совсем хорошо. Плохо только то, что во все имеющиеся модули надо  будет добавить эти симлинки
Название: Re: UpNet-0.3
Отправлено: DdShurick от 08 Сентябрь 2021, 11:26:27
Xorg проги обычно запускают через /etc/xdg/autostart/. Че не устраивает?
Надо от рута, не через sudo.
Название: Re: UpNet-0.3
Отправлено: sfs от 09 Сентябрь 2021, 09:15:08
Почему sudo не устраивает? У меня с ним все tray работают
Название: Re: UpNet-0.3
Отправлено: sfs от 09 Сентябрь 2021, 09:16:51
В /etc/alternatives/<категория>/ помещается ссылка на исполняемый файл, если ссылок несколько, предлагается выбор.
Вспомнил - у меня в defaultbrowser подобное реализовано
И кстати  проще перечислить софт категории в скрипте или конфиге, чем переделывать все модули
Название: Re: UpNet-0.3
Отправлено: DdShurick от 09 Сентябрь 2021, 12:29:39
проще перечислить софт категории в скрипте или конфиге
Ну это кому как, но, с точки зрения производительности, проще запустить сразу по ссылке, чем перебирать кучу отсутствующего. И ещё, а если что-то совсем новое, чего нет в конфиге?
Почему sudo не устраивает? У меня с ним все tray работают
Потому что trayNet исполняет команды, требующие root-привилегий, а sudo их не передаёт "по цепочке", и, похоже, systemd тоже этим болен, только в более агрессивной стадии.
Название: Re: UpNet-0.3
Отправлено: sfs от 09 Сентябрь 2021, 12:32:55
если что-то совсем новое, чего нет в конфиге?
Дописать и распространить через автообновление
rtayNet исполняет команды, требующие root-привилегий, а sudo их не передаёт
suid bit пробовали?
Название: Re: UpNet-0.3
Отправлено: DdShurick от 09 Сентябрь 2021, 12:37:21
suid bit пробовали?
Gtk не позволяет.
Буду исследовать проблему с systemd досконально.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 10 Сентябрь 2021, 10:37:30
исследовать проблему с systemd
В итоге: systemd не запускает программы в иксах (или я не умею дрессировать этого дракона). Пробовал запуск из скрипта trayNetUp и напрямую из юнита - не хочет и никаких ошибок не пишет.
Запуск из /etc/xdg/autostart/ через sudo получился и даже передаёт привилегии дочерним процессам. Впрочем, так даже проще, не надо отлавливать и экспортировать DISPLAY. Проверил скрипт connect, работает, но почему-то не отобрахает иконку lan.svg. В трее она отображается нормально.
Название: Re: UpNet-0.3
Отправлено: sfs от 10 Сентябрь 2021, 11:05:50
Запуск из /etc/xdg/autostart/ через sudo получился
В чем оказался секрет?
Название: Re: UpNet-0.3
Отправлено: DdShurick от 10 Сентябрь 2021, 14:23:38
В чем оказался секрет?
Сам не понял. По всем правилам не должно так работать.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 10 Сентябрь 2021, 22:13:07
 Выкладываю альфу trayNet урезаный вариант, без модемов и pppoe.
Для корректных испытаний NM отключить, конфликтует. Есть проблемы с netctl из-за dhcpcd (кто первый его запустит).
Лично я не использую dhcpcd из-за того, что он демон. Каждый раз при переключении интерфейса его надо тормозить "dhcpcd -k $IFACE", netctl этого не делает, оттого и конфликт. Поэтому для переносной системы busybox udhcpc (клиент) считаю предпочтительнее, но у некоторых другое мнение.
Название: Re: UpNet-0.3
Отправлено: sfs от 11 Сентябрь 2021, 10:19:20
Для корректных испытаний NM отключить
Никогда не нужно юзать несколько подключалок одновременно. netctl - достаточно убрать свои конфиги. NM , connman - загасить демон в автозагрузке или отключить модуль
для переносной системы busybox udhcpc (клиент) считаю предпочтительнее
Уже обсуждали. Без демона в большой сети при длительном подключении могут быть проблемы типа просрочки аренды ип и как следствие конфликт ип
Название: Re: UpNet-0.3
Отправлено: DdShurick от 11 Сентябрь 2021, 11:49:42
 Роутеры и модемы используют busybox.
при длительном подключении
На переносной системе длительное подключение? Сомневаюсь.
Название: Re: UpNet-0.3
Отправлено: sfs от 11 Сентябрь 2021, 12:50:51
trayNet-alpha-ds.pfs в prar2103 :
После загрузки init создает большую нагрузку на проц. Без  trayNet-alpha-ds.pfs все ок. Так бывает когда зациклился какой-то стартовый скрипт
trayNet --help = сегфолт. Он еще и гтк2.... Не универсальнее было его написать на yad...
Запускаю настройку wifi. Ничего не происходит
Запускаю в консоли
Код
# ./wifi
** (gtkdialog:109264): ERROR **: 12:47:20.635: gtkdialog: Error in line 7, near token 'string': syntax error
Вот , кстати, почему удобно гуй отдельным скриптом
Название: Re: UpNet-0.3
Отправлено: DdShurick от 11 Сентябрь 2021, 15:29:20
После загрузки init создает большую нагрузку на проц.
Предполагаю конфликт udev.rules с systemd, первый включает, второй выключает.
Запускаю настройку wifi. Ничего не происходит
У меня нормально настроилось
написать на yad
Не-е-е...
гуй отдельным скриптом
Над этим можно подумать.
Занялся pppoe, два дня один дома, весь инет мой.
Название: Re: UpNet-0.3
Отправлено: sfs от 12 Сентябрь 2021, 09:30:39
конфликт udev.rules с systemd
Т.е. с systemd не должно работать?
Название: Re: UpNet-0.3
Отправлено: DdShurick от 12 Сентябрь 2021, 10:11:10
Т.е. с systemd не должно работать?
Почему? У меня чистый prar2103 (jwm) работает. Ты запускал наверное в виртуалке?
Название: Re: UpNet-0.3
Отправлено: sfs от 12 Сентябрь 2021, 10:17:38
Ты запускал наверное в виртуалке?
Нет.  Проверьте кто-нибудь еще
Название: Re: UpNet-0.3
Отправлено: DdShurick от 12 Сентябрь 2021, 17:25:22
 PPPoE не успел. Пока займусь модемами.
По prar2103:
- pppd немного устарел, не поддерживает replacedefaultroute, но это не страшно.
- usb_modeswitch не определил ни одного модема (ZTE MF667, Huawei T171). usb_modeswitch отсутствует.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 14 Сентябрь 2021, 08:48:59
 Alpha2. Убрал автозапуск, оставил только управление. Добавил pppoe (на prar не тестировал, не было возможности), работает, правда настраивается шершаво, надо шлифовать скрипты.
Код
live@roll2103:~$ ifconfig ppp0
ppp0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST>  mtu 1492
        inet 31.192.131.238  netmask 255.255.255.255  destination 83.219.128.0
        ppp  txqueuelen 3  (Point-to-Point Protocol)
        RX packets 25188  bytes 31962892 (30.4 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 14915  bytes 1242143 (1.1 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
Надо наладить нотификацию. (у меня notify-send -> dunst)
Название: Re: UpNet-0.3
Отправлено: DdShurick от 16 Сентябрь 2021, 21:35:20
 Проверил pppoe в prar на чистой системе, net-auto отключил добавив "тень" в 089-upd. Запустился штатно: после загрузки рабочего стола автоматом появилось окно с предложением настроить pppoe, так как обнаружился концентратор. Ввёл "Имя сети" "Логин" "Пароль" -> Ok, сеть быстро поднялась.
 А то Roaring  penguin, Roaring  penguin.... chat рулит!
 Отсюда вывод: чем древнее, тем надёжнее. ;) Прогрессивисты, мотайте на ус.

 Перезагрузился с сохранением настроек. Сеть автоматом не поднялась, видимо systemd не дал, но после первого тычка мышью взлетела.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 17 Сентябрь 2021, 10:02:25
 Никому не интересно? Ну и сидите на глючном жирном NM, так вам и надо! ;)
Название: Re: UpNet-0.3
Отправлено: DdShurick от 19 Сентябрь 2021, 16:11:02
 Выкладываю последний trayNet (lan, wlan, pppoe) для prar, если никому не надо, следующего не будет.
Название: Re: UpNet-0.3
Отправлено: krasnyh от 19 Сентябрь 2021, 16:50:57
Во-первых, изменить названия в *.desktop, иначе в гуи автостарта видно, что включены два одинаковых скрипта trayNetUp, что выглядит как ошибка. Проверить можно в de-ovs, запустив lxsession-edit.
Код
live@roll2103 ..03/trayNet-alpha3-ds/etc/xdg/autostart % grep -R Name .
./trayNetUp.desktop:Name=trayNetUp
./upNet.desktop:Name=trayNetUp
Во-вторых, грузит процессор, о чем уже говорилось.

PRAR21.03, de-ovs.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 19 Сентябрь 2021, 18:00:47
грузит процессор
Почему у меня тогда не грузит? Проделки systemd? Что-то не верится, что bash-скрипты грузят процессор больше, чем, например, NM.
изменить названия в *.desktop
Исправил, перезалил.
Название: Re: UpNet-0.3
Отправлено: sfs от 20 Сентябрь 2021, 09:30:56
Почему у меня тогда не грузит?
Возможно у вас что-то есть в сохраненке, чего нет у других. Какой-то скрипт зацикливается наверное. Надо пробовать с максимальным отключением скриптов в удев и автостарте. А эти скрипты проверять запуском в консоли
Сам демон NM , кстати грузит проц минимально. Даже меньше connman. Но размером побольше. Я научился его компилить без лишних зависимостей
Думаю - на стационаре достаточно 1 раз настроить netctl . На часто носимом пк (с частыми сложными переподключениями) - вряд ли мы сможем тягаться по удобству с подключалками , которые пилят десятилетиями команды профи программеров
Экономия ресурсов будет размером с одну вкладку браузера. Не тратьте время

В итоге если уж пилить что-то - то гуй к pfs util , сохраненке и т.п.. Тут помощи ждать неоткуда и альтернатив нет.

на глючном  NM
Есть факты?
Название: Re: UpNet-0.3
Отправлено: DdShurick от 20 Сентябрь 2021, 11:25:31
что-то есть в сохраненке
Загружаюсь без сохранёнки.
на стационаре достаточно 1 раз настроить netctl
Или написать простейший скрипт.
вряд ли мы сможем тягаться по удобству с подключалками , которые пилят десятилетиями команды профи программеров
Почему бы не попробовать?
Не тратьте время
У меня его вагон и маленькая тележка.
Есть факты?
При переходе с одной сети на другую (wifi) начинаются фокусы.
Название: Re: UpNet-0.3
Отправлено: sfs от 20 Сентябрь 2021, 11:43:33
Или написать простейший скрипт.
https://wiki.puppyrus.org/setups/wi-fi
При переходе с одной сети на другую (wifi) начинаются фокусы.
Какие? У меня норм
Название: Re: UpNet-0.3
Отправлено: DdShurick от 20 Сентябрь 2021, 12:02:08
Какие?
Каждый разх требуются лишние телодвижения.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 15 Ноябрь 2021, 20:28:58
Android переключается из одной сети в другую автоматически, пробую сделать то-же в upNet. Подключайтесь, это же интересно.
Танцую от carrier. Файл /sys/class/net/*/carrier имеет три состояния: пустой, когда интерфейс опущен, 0 когда поднят, но не настроен и 1 при нормальной работе. Если carrier пропадает (0), то иконка мигает и запускается wlan.sh, который либо находит другую сеть, либо вызывает wifi(sh) для настройки.
Вот как-то так.
Название: Re: UpNet-0.3
Отправлено: k0l0p0k от 16 Ноябрь 2021, 11:12:03
Если carrier пропадает (0), то иконка мигает и запускается wlan.sh, который либо находит другую сеть, либо вызывает wifi(sh) для настройки.
Тогда нужно предусмотреть чекбокс: поставлена галочка - делает что выше описано, ищет, подключает другую сеть. Нет галочки - ничего не делает.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 16 Ноябрь 2021, 11:30:25
чекбокс:
Излишество.
ничего не делает.
И сидим без интернета?
Название: Re: UpNet-0.3
Отправлено: k0l0p0k от 16 Ноябрь 2021, 11:37:14
Излишество.
необходимость
И сидим без интернета?
да, нужно иногда, например при настройке-тестировании других подключалок, может еще когда.
Назойливая автоматизация не всегда нужна.
Но не настаиваю, хозяин барин :)
Название: Re: UpNet-0.3
Отправлено: DdShurick от 16 Ноябрь 2021, 17:25:03
при настройке-тестировании других подключалок
В этом случае чекбокс не поможет, надо вырезать под корень, "kill `pidof trayNetUp`" на первый случай или удалить trayNetUp.desktop. Короче, нормальный тестер справится.
Назойливая автоматизация не всегда нужна.
Назойливая - не нужна, нужна незаметная.
Название: Re: UpNet-0.3
Отправлено: k0l0p0k от 16 Ноябрь 2021, 18:10:55
нужна незаметная.
да, если в чекбоксе "автоматически переключать на доступную сеть" стоит галочка :)
проверить чекбокс легко,
релиазовать в коде несложно,
экранного места он занимает мало,
подключалка с ним становится чуть гибче
пс
по умолчанию пусть будет взведена
отключат только те привередливые :) пользователи, которым автоматика не нужна :)
Название: Re: UpNet-0.3
Отправлено: knn от 16 Ноябрь 2021, 21:25:15
отключат только те привередливые  пользователи, которым автоматика не нужна
- присоединяюсь.
(! так же и к тому что "дело Автора")
Название: Re: UpNet-0.3
Отправлено: DdShurick от 21 Ноябрь 2021, 09:40:58
В GUI добавить чекбокс не проблема. Но. Размышления, нужен - не нужен, а если нужен, то каким образом реализовать исполнение (способов несколько), привели к переосмысливанию и ревизии всей программы. Так что "ждите отстоя пива" :)
Название: Re: UpNet-0.3
Отправлено: DdShurick от 27 Ноябрь 2021, 10:47:36
 Вопрос к sfs: в prar /etc/init.d, как я понял, не задействован?
Название: Re: UpNet-0.3
Отправлено: k0l0p0k от 27 Ноябрь 2021, 11:47:42
под lfds2104 (5.11.0-pf2-1-pra) :
Код
./trayNet 1
/sys/class/net/1/carrier
(trayNet:263374): Gtk-WARNING **: 13:34:08.775: Загружаемый модуль тем не найден в module_path: «pixmap»,
(trayNet:263374): Gtk-WARNING **: 13:34:08.775: Загружаемый модуль тем не найден в module_path: «pixmap»,
(trayNet:263374): Gtk-WARNING **: 13:34:08.776: Загружаемый модуль тем не найден в module_path: «pixmap»,
(trayNet:263374): Gtk-WARNING **: 13:34:08.777: Загружаемый модуль тем не найден в module_path: «pixmap»,
(trayNet:263374): Gtk-WARNING **: 13:34:08.777: Загружаемый модуль тем не найден в module_path: «pixmap»,
Ошибка сегментирования
не обработалась ошибка
ps
подсовываю несуществующий интерфейс, напр trayNet eth0 - тоже с ошибкой сегментирования падает
psps
если указать имеющийся интерфейс, в трее хотя бы видно всплывающую подсказку при наведении, но без картинок  :(
Название: Re: UpNet-0.3
Отправлено: DdShurick от 27 Ноябрь 2021, 12:16:20
Код
./trayNet 1
/sys/class/net/1/carrier
......................
Ошибка сегментирования
Ну вы даёте, разве у нас есть сетевой интерфейс "1"? Подставляйте что-нибудь реально существующее, а ещё лучше запустите trayNetUp, он сам разберётся.
но без картинок
Картинки в /usr/share/pixmaps
Сегментацию я уберу.
Название: Re: UpNet-0.3
Отправлено: k0l0p0k от 27 Ноябрь 2021, 12:33:46
Ну вы даёте, разве у нас есть сетевой интерфейс "1"?
Цитата
подсовываю несуществующий интерфейс, напр trayNet eth0 - тоже с ошибкой сегментирования падает
пс
утилитка должна правильно обрабатывать действия юзеров, даже дурацкие, защита от "дурака" должна быть всегда

Название: Re: UpNet-0.3
Отправлено: DdShurick от 27 Ноябрь 2021, 12:38:55
Сегментацию я уберу.
Строка 20 trayNet.c
Код
if ((fs=fopen(pthc,"r"))==0) exit(1);
"Вот она была и нету"
Название: Re: UpNet-0.3
Отправлено: k0l0p0k от 27 Ноябрь 2021, 13:13:51
под lfds2104 (5.11.0-pf2-1-pra) еще одна проблемка\странность:
live@lfds2104:~$ sudo ifconfig enp0s3 up
live@lfds2104:~$ sudo cat /sys/class/net/enp0s3/carrier
1
live@lfds2104:~$ sudo ifconfig enp0s3 down
live@lfds2104:~$ sudo cat /sys/class/net/enp0s3/carrier
cat: /sys/class/net/enp0s3/carrier: Недопустимый аргумент


пс, еще
Картинки в /usr/share/pixmaps
модуль подключен, картинки на месте
возможно отсутствие отображения их в трее - несостыковки с  "местной" панелькой/треем
Название: Re: UpNet-0.3
Отправлено: DdShurick от 27 Ноябрь 2021, 14:02:17
cat: /sys/class/net/enp0s3/carrier: Недопустимый аргумент
Так и должно быть. При "enp0s3 down" в carrier ничего нет, сразу конец файла (EOF), cat его открыть не может.
Название: Re: UpNet-0.3
Отправлено: k0l0p0k от 27 Ноябрь 2021, 14:48:42
Так и должно быть. При "enp0s3 down" в carrier ничего нет, сразу конец файла (EOF), cat его открыть не может.
понял
однако cat обычныйПустойФайл просто  выдает "пустую" строку, без ругани
пс
вот эта ругань при запуске sudo /usr/bin/upNet.sh:
/usr/bin/lan.sh: 53: [: 1: unexpected operator
видимо из-за причины озвученной выше?
вот эта строчка(53) в lan.sh
if [ "$(cat /sys/class/net/$IFACE/carrier)" == 1 ]; then
Название: Re: UpNet-0.3
Отправлено: DdShurick от 27 Ноябрь 2021, 15:23:27
/usr/bin/lan.sh: 53: [: 1: unexpected operator
видимо из-за причины озвученной выше?
Да. Надо изменить на
Код
if grep -q 1 /sys/class/net/$IFACE/carrier; then
Ругаться не будет
Название: Re: UpNet-0.3
Отправлено: k0l0p0k от 27 Ноябрь 2021, 15:49:05
при опущенном интерфейсе:
grep -q 1 /sys/class/net/enp0s3/carrier
grep: /sys/class/net/enp0s3/carrier: Недопустимый аргумент

python тоже не может прочитать этот файлик, выдает ошибку.
Открывает\закрывает без ошибок, прочитать не может
когда интерфейс поднят, считывается без ошибок(единичка и перенос строки)

ps
этот вариант(с grep'ом) лучше, хоть grep и ругается
Название: Re: UpNet-0.3
Отправлено: k0l0p0k от 27 Ноябрь 2021, 16:34:33
строка 8 в upNet.sh
eval $(udevadm info env -p /sys/class/net/eth0|awk '/ID_BUS/ {print $2}')
точно eth0 ? а не $IFACE ?
-----
сам стараюсь настраивать систему так чтоб проводной интерфейс по старому назывался - eth0
имхо путаницы меньше потом
но вот на тестовой забыл поменять
Название: Re: UpNet-0.3
Отправлено: DdShurick от 27 Ноябрь 2021, 16:45:04
точно eth0 ? а не $IFACE ?
Конечно $IFACE, мой ляп. Спасибо, исправил, перезалил.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 28 Ноябрь 2021, 14:38:50
 Лирическое отступление, чтобы было понятно.
Самый быстрый и, пожалуй, простой способ поднять сеть, "как только, так сразу", запуск от udev. Простейший пример с проводным интерфейсом:
Код
ACTION=="add|change", KERNEL=="eth?", SUBSYSTEM=="net", RUN+="/usr/bin/dhcpcd %k"
Кроме того, в отличие от традиционных способов, удобно для usb-сетевых карт (4G-HiLink, wifi-свистки). Но, то что прекрасно работает в Richy, который без systemd, не желает устойчиво работать в prar. Надо "найти и обезвредить"
Название: Re: UpNet-0.3
Отправлено: Pro от 28 Ноябрь 2021, 15:14:03
Написать service файл с активацией по событию udev (чет даже не знаю можно ли так) ну или из правила udev вызывать systemctl start foo.service
Название: Re: UpNet-0.3
Отправлено: krasnyh от 28 Ноябрь 2021, 15:27:54
Но, то что прекрасно работает в Richy, который без systemd, не желает устойчиво работать в prar.
А в чем проблема? Ведь, если запустить prar2110 в режиме base_only и с выключенным скриптом net-auto, то никаких служб systemd, относящихся к сети, не будет. И значит ничего не будет конфликтовать с UpNet.

Т.е. всего лишь прописать в UpNet обнаружение разных сетевых приложений, типа NM, connman и т.д. и выдать сообщение, что с ними не гарантируется работа. Имхо.


Или там проблема конфликта с systemd намного глубже?
Название: Re: UpNet-0.3
Отправлено: DdShurick от 28 Ноябрь 2021, 16:46:53
А в чем проблема?
От udev не работает
с выключенным скриптом net-auto
Первым делом выключил.
ничего не будет конфликтовать с UpNet.
Не конфликтует
обнаружение разных сетевых приложений
С последующим уничтожением? :)
проблема конфликта с systemd
Такое впечатление, что systemd подавляет запущенное от udev напрямую. При исполнении приведённого мной выше правила интерфейс успевает подняться, но остаётся ненастроенным, pid dhcpcd отсутствует. Запуск "dhcpcd eth0" из консоли - норма.
Написать service файл
Саша, зачем делать сложным, то, что проще простого? К чему эта "бюрократия". Ты наверняка помнишь ifplugd, он был в ранних puppy, и представляешь, что он делает: поднимает интерфейс, проверяет несущую, если есть, исполняет заданную в конфиге команду. Это же скрипт на три строчки. А посмотри исходник, плюс библиотека. Наворочено, чёрт ногу сломит. "Чудотворец" ещё тот. А ты за его поделие держишься, когда можно сделать гораздо проще.
Название: Re: UpNet-0.3
Отправлено: krasnyh от 28 Ноябрь 2021, 22:52:48
При исполнении приведённого мной выше правила интерфейс успевает подняться, но остаётся ненастроенным, pid dhcpcd отсутствует.
Прописать debug в командной строке, при запуске системы. Это включит journalctl, где будет все с момента старта линукс. Смотреть командой sudo journalctl.

Работает только для "title PRA-porteus initrd'. В 'title RootAuFs2 initrd' журнал оказывается выключенным.


Последнее, что попадается в журнале - "systemd-udevd: eth0: Process '/usr/bin/dhcpcd eth0' failed with exit code 1."
Название: Re: UpNet-0.3
Отправлено: DdShurick от 29 Ноябрь 2021, 08:20:17
Process '/usr/bin/dhcpcd eth0' failed with exit code 1
Возможно, не дожидается подъёма интерфейса (приблизительно около 3 секунд). Но от udev через wlan.sh, где заложено ожидание
Код
while [ "$(cat /sys/class/net/$IFACE/operstate)" != "up" ]; do sleep 1; done
eth0 не поднимается, хотя через upNet.desktop (sudo upNet.sh) всё работает прекрасно. Можно было бы так и оставить, но уж очень мне хочется сделать перезапуск сети при обрыве соединения командой "udevadm trigger -s net".
Название: Re: UpNet-0.3
Отправлено: sfs от 29 Ноябрь 2021, 09:40:08
в prar /etc/init.d, как я понял, не задействован?
Нет. Задействован только в ddr lfd
за его поделие держишься, когда можно сделать гораздо проще.
Можно, но переделка инициализации приведет к переделке кучи пакетов донорского дистра
В одиночку  такое не вывезти. Можно перейти на дистр без системд, но большого выигрыша ни в чем это не даст.  Зато даст кучу нестыковок с вики донора и пр. проблем

upnet завязан на udev (который как раз в системе инициализации) . Чтобы получилось под любой юдев надо тестировать с разными инициализациями
Вифи и модемы разные- надо тестировать на куче железа
Вифи уже есть старый и iwd
Т.е. все Вифи и модемы надо тестировать под всеми  инициализациями
Попытки автоопределения ситуаций - ненужное  усложнение.
Написать удобный гуй переключения сетей - нет у нас программеров такого уровня
Т.к. без сети дальше с освоением дистра не продвинуться - тема ответственная
Тестеров у нас почти не осталось

В итоге до широкого использования upnet довести нереально. Заработает в лучшем случае у автора и тестеров из этой темы на их дистре и железе
Определитесь чем апнет должен быть лучше имеющихся подключалок. Пока просматривается только "родной для автора"
Хотите совсем просто - воткните это (https://wiki.puppyrus.org/setups/start?&#%D0%BE%D0%B1%D0%BE%D1%80%D1%83%D0%B4%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_%D1%81%D0%B5%D1%82%D0%B8_%D0%B8%D0%B7_%D0%BA%D0%BE%D0%BD%D1%81%D0%BE%D0%BB%D0%B8) в свою систему инициализации. Тут хотя бы реально понять как это работает
Название: Re: UpNet-0.3
Отправлено: DdShurick от 29 Ноябрь 2021, 11:55:26
удобный гуй переключения сетей
Чем неудобен connect (gtkdialog)?
переделка инициализации
Не надо переделывать всю инициализацию, нужна только сеть. Значит надо понять, как укоротить щупальца монстру.
Вифи уже есть старый и iwd
Не доверяю я этому iwd, потому что daemon и не сообществом написан.
Попытки автоопределения ситуаций - ненужное  усложнение.
Иногда нужное. Вот у меня два роутера: mikrotik (оптоволокно) и Yota (4G). Иногда у провайдера (оптоволокно) случаются аварии и приходится переходить на резерв (4G). Твой хвалёный NM (Altlinux) резерв автоматом включать никак не желает, только мышкотыком. UpNet (Richy) это делает автоматически, правда пока через перезагрузку. Имитировать перезагрузку можно командой "udevadm trigger", но пока нестабильно, вылезают зомби-процессы. Для переносного дистрибутива определять знакомую сеть автоматически пожалуй самое то.
Идею понял?
Название: Re: UpNet-0.3
Отправлено: sfs от 29 Ноябрь 2021, 11:58:39
Идеи-то хорошие, но по реализации надо не переоценить свои силы
Название: Re: UpNet-0.3
Отправлено: sfs от 29 Ноябрь 2021, 11:59:19
Чем неудобен connect (gtkdialog)?
Я не хожу с ноутом по разным вифи. Не знаю что удобно
Название: Re: UpNet-0.3
Отправлено: DdShurick от 29 Ноябрь 2021, 15:34:00
Идеи-то хорошие
Поэтому и силы не надо жалеть.
Я не хожу с ноутом по разным вифи
Я тоже, ноута нет.
Не знаю что удобно
Я тоже, зато знаю, что неудобно.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 29 Ноябрь 2021, 19:04:38
 Отчёт: prar, busybox udhcpc поднимает сеть от udev. Выходит, над не демонами монстр не властен.
Замечание: busybox v1.32.0 собрана кривовато. Например, не запускает приложение через ссылку (ошибка "applet not found), хотя busybox0 udhcpc срабатывает, но не полностью, не прописывает gw в route. Замени на нормальную и без "0".
В Richy зомбаков убрал, теперь работает, но надо погонять в разных ситуациях.
Не пора ли бету мутить, а?
Название: Re: UpNet-0.3
Отправлено: sfs от 01 Декабрь 2021, 09:24:07
busybox v1.32.0 собрана кривовато
Откуда такой взялся ? В исо нет. В арчрепе 133
busybox0 - неиспользуемый скрипт
Название: Re: UpNet-0.3
Отправлено: DdShurick от 01 Декабрь 2021, 09:50:23
Откуда такой взялся ?
Не знаю, тебе видней... В базе.
Доказательство:
Код
/mnt/live/memory/images/001-prar-2103-sf03.pfs/usr/local/bin/busybox0

BusyBox v1.32.1 () multi-call binary.
BusyBox is copyrighted by many authors between 1998-2015.
Licensed under GPLv2. See source distribution for detailed
copyright notices.

Usage: busybox [function [arguments]...]
   or: busybox --list[-full]
   or: busybox --show SCRIPT
   or: busybox --install [-s] [DIR]
   or: function [arguments]...

BusyBox is a multi-call binary that combines many common Unix
utilities into a single executable.  Most people will create a
link to busybox for each function they wish to use and BusyBox
will act like whatever it was invoked as.

Currently defined functions:
[, arch, ash, awk, base64, basename, bc, blkdiscard, bzip2, cat, chgrp, chmod, chown,
chroot, clear, cp, cpio, cttyhack, cut, dd, df, dirname, dmesg, du, echo, env, expr,
fallocate, false, fatattr, free, fsfreeze, fstrim, fsync, getopt, grep, gzip, halt, head,
hexdump, hexedit, i2ctransfer, ifconfig, init, install, ip, ipaddr, iplink, ipneigh,
iproute, iprule, iptunnel, kbd_mode, kill, killall, less, link, ln, loadfont, loadkmap,
losetup, ls, lsscsi, lzop, md5sum, mim, mkdir, mkfifo, mknod, mkpasswd, mktemp, mountpoint,
mv, nc, netstat, nologin, nproc, nsenter, nslookup, nuke, openvt, partprobe, paste, pgrep,
pidof, ping, ping6, poweroff, printf, ps, pwd, readlink, realpath, reboot, resume, rm,
rmdir, route, run-init, sed, seq, setfattr, setfont, sh, sha1sum, sha256sum, sha512sum,
shuf, sleep, sort, stat, strings, sync, tac, tail, tar, tcpsvd, tee, telnet, test, tftp,
touch, true, truncate, ts, udhcpc, udhcpc6, umount, uname, uniq, unlink, unshare, unzip,
uptime, vi, wc, wget, which, xxd, xz, yes
Название: Re: UpNet-0.3
Отправлено: sfs от 01 Декабрь 2021, 10:10:00
prar-2103 не поддерживается. переходите на  2110
Название: Re: UpNet-0.3
Отправлено: DdShurick от 01 Декабрь 2021, 10:20:15
переходите на  2110
Хорошо. Но busybox всё равно нужен.
Название: Re: UpNet-0.3
Отправлено: sfs от 01 Декабрь 2021, 10:39:16
busybox всё равно нужен.
Если из арчрепы не подойдет - включайте подходяший в свой модуль
Название: Re: UpNet-0.3
Отправлено: sfs от 01 Декабрь 2021, 10:55:42
В 2110 busybox есть, v1.33.1
Это из инитрд. Он урезанный. В арчрепе есть еще и полный
Название: Re: UpNet-0.3
Отправлено: DdShurick от 01 Декабрь 2021, 10:59:27
В арчрепе есть еще и полный
Интересно посмотреть.
Зря ты gtk2 выкинул, легче, проще и надёжнее.
Название: Re: UpNet-0.3
Отправлено: sfs от 01 Декабрь 2021, 11:02:56
Интересно посмотреть.
https://archlinux.org/packages/?sort=&q=busybox&maintainer=&flagged=
Зря ты gtk2 выкинул
Так софта под него не осталось живого. А как вайланд по дефолту пойдет - вообще запускаться перестанет. Для антикваров гтк2 и все под него есть в ddr lfd
Название: Re: UpNet-0.3
Отправлено: DdShurick от 01 Декабрь 2021, 11:32:43
А как вайланд по дефолту пойдет
Не верю, да и не надо.
На свежеустановленном поигрался с connman. Свежие впечатления: GUI переусложнён, новичок без путеводителя заблудится. На Qt. Пароль wifi видно невооружённым глазом. Сеть wifi настроить не удалось, не поднимается интерфейс через GUI и как следствие нет сканирования. Заранее поднятый интерфейс только выключает. Настроился через trayNet -> connect, хотя пришлось пошаманить из-за busybox. Вот такие свежие впечатления...
Моё мнение, connman - в топку. И убери раскоряку из переключения раскладки. Пока писал, весь запас непечатных слов использовал.
Название: Re: UpNet-0.3
Отправлено: sfs от 01 Декабрь 2021, 13:00:51
На Qt
Там же и на гтк3  (кстати, на гтк2 нет вообще) : connman-gtk попроще
Сеть wifi настроить не удалось
Проверял - у меня норм
Моё мнение, connman - в топку
Т.к. от наших обратной связи не дождаться - я ориентировался на общий тренд - nm
В 2110 с ним у меня не все получилось. Заморачиваться не стал. Может в 22хх само пройдет
Название: Re: UpNet-0.3
Отправлено: DdShurick от 01 Декабрь 2021, 14:13:46
общий тренд - nm
Ложное направление.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 01 Декабрь 2021, 20:42:11
Сеть wifi настроить не удалось, не поднимается интерфейс через GUI
Причина:
Код
root@roll2110:live# rfkill list
0: phy0: Wireless LAN
Soft blocked: yes
Hard blocked: no
Посмотрел busybox по твоей ссылке, вроде работает, но надо проверять более тщательно.
Название: Re: UpNet-0.3
Отправлено: krasnyh от 02 Декабрь 2021, 00:02:42
Но, то что прекрасно работает в Richy, который без systemd, не желает устойчиво работать в prar.

Цитата
Обратите внимание, что запуск программ, которые обращаются к сети или монтируют / размонтируют файловые системы, не разрешены внутри правил udev из-за изолированной программной среды по умолчанию, которая применяется в systemd-udevd.service.
udev man (https://www.freedesktop.org/software/systemd/man/udev.html#RUN%7Btype%7D)
Название: Re: UpNet-0.3
Отправлено: DdShurick от 02 Декабрь 2021, 08:49:55
Цитата
Обратите внимание, что запуск программ, которые обращаются к сети или монтируют / размонтируют файловые системы, не разрешены внутри правил udev из-за изолированной программной среды по умолчанию, которая применяется в systemd-udevd.service.
Этот "вывих" вправляется просто: "su root" в начало upNet.sh. Осталось укротить rfkill от connman.
Название: Re: UpNet-0.3
Отправлено: krasnyh от 02 Декабрь 2021, 09:03:13
вправляется просто
Да, но все же не удается запустить настроить сеть через
RUN+="/usr/bin/dhcpcd %k"

Мне было интересно и я проверил. ) Действительно, в сборках без systemd указанная строка работает, а вот с ним - нет. Но если все, что связано с сетью systemd-udevd.service обрабатывает в песочнице, тогда понятно, почему не получается настроить сеть через простое RUN+="/usr/bin/dhcpcd %k".
Название: Re: UpNet-0.3
Отправлено: DdShurick от 02 Декабрь 2021, 09:15:56
RUN+="/usr/bin/dhcpcd %k"
А если RUN+="/bin/su root", RUN+="/usr/bin/dhcpcd %k" ?
Название: Re: UpNet-0.3
Отправлено: krasnyh от 02 Декабрь 2021, 20:23:54
Там на все один ответ. После загрузки системы со всеми этими правилами через udev, сеть выглядит как 'живая', ) но не работает.
При исполнении приведённого мной выше правила интерфейс успевает подняться, но остаётся ненастроенным, pid dhcpcd отсутствует.


p.s. Похожая ситуация, но не с сетью, а с монтированием обсуждалась здесь (https://github.com/systemd/systemd/issues/11982) с Поттерингом.
Где он высказался, "монтировать прямо из правил udev проблематично, и этого не следует делать." Но в то же время предложил это делать через соответствующую службу systemd, запуская ее через udev, "подумайте об использовании вместо этого инструмента "systemd-mount", это то решение, которое вам действительно нужно".

"Да, команда, которую вы хотите запустить, выглядит примерно так:
RUN{program}+="/usr/bin/systemd-mount --no-block --automount=yes --collect $devnode""
Название: Re: UpNet-0.3
Отправлено: DdShurick от 03 Декабрь 2021, 08:24:46
обсуждалась здесь с Поттерингом.
Нашли с кем обсуждать, он же явно рекламирует своё поделие.
Логи подключения сетей в prar после добавления "su root":
Код
live@roll2110:~$ cat /var/log/eth0.log 
/usr/bin/lan.sh: eth0 up
/usr/bin/lan.sh: carrier yes
Setting IP address 0.0.0.0 on eth0
Setting IP address 192.168.0.252 on eth0
Deleting routers
Adding router 192.168.0.1
Recreating /etc/resolv.conf
 Adding DNS server 192.168.0.1
 Adding DNS server 83.219.128.10
 Adding DNS server 83.219.128.14
/usr/bin/lan.sh: Network Ok!
live@roll2110:~$ rfkill list
0: phy0: Wireless LAN
Soft blocked: yes
Hard blocked: no
live@roll2110:~$ rfkill unblock 0
live@roll2110:~$ rfkill list
0: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
live@roll2110:~$ cat /var/log/wlan0.log
wlan0 up
Setting IP address 0.0.0.0 on wlan0
Setting IP address 192.168.0.251 on wlan0
Deleting routers
Adding router 192.168.0.1
Recreating /etc/resolv.conf
 Adding DNS server 192.168.0.1
 Adding DNS server 83.219.128.10
 Adding DNS server 83.219.128.14
/usr/bin/wifi: Network Ok!
Однако, вопреки Поттерингу, работает  ;) .
Название: Re: UpNet-0.3
Отправлено: sfs от 03 Декабрь 2021, 09:49:17
Soft blocked: yes
Я нигде такое не вставлял и у меня такого нет
Возможно , специфика вашего железа. Слелайте разблок в стартовых скриптах
Название: Re: UpNet-0.3
Отправлено: krasnyh от 03 Декабрь 2021, 11:06:40
Я нигде такое не вставлял и у меня такого нет
Код
live@roll2110 /usr/lib/udev/rules.d % grep -R rfkill
50-udev-default.rules:KERNEL=="rfkill", MODE="0664"
60-rfkill.rules:KERNEL=="rfkill", GROUP="rfkill", MODE="0664"
99-systemd.rules:# Pull in rfkill save/restore for all rfkill devices
99-systemd.rules:SUBSYSTEM=="rfkill", ENV{SYSTEMD_RFKILL}="1"
99-systemd.rules:SUBSYSTEM=="rfkill", IMPORT{builtin}="path_id"
99-systemd.rules:SUBSYSTEM=="misc", KERNEL=="rfkill", TAG+="systemd", ENV{SYSTEMD_WANTS}+="systemd-rfkill.socket"
Что-то, а возможно конкретно systemd-rfkill, управляет Soft blocked. Возможно это происходит в ситуации с подключением провода и вифи одновременно. Имхо.
Название: Re: UpNet-0.3
Отправлено: sfs от 03 Декабрь 2021, 11:11:01
Возможно это происходит в ситуации с подключением провода и вифи одновременно
Я сам тут ничего не крутил
Название: Re: UpNet-0.3
Отправлено: DdShurick от 03 Декабрь 2021, 11:42:18
99-systemd.rules:SUBSYSTEM=="rfkill", ENV{SYSTEMD_RFKILL}="1"
Похоже это.
Возможно это происходит в ситуации с подключением провода и вифи одновременно.
Нет.
Слелайте разблок в стартовых скриптах
Так и хочу сделать.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 03 Декабрь 2021, 12:48:34
Похоже это.
Нет. В отключении wifi виноват connman. Отправил его в noload, блокировка пропала. Говорил же - в топку.
Название: Re: UpNet-0.3
Отправлено: krasnyh от 03 Декабрь 2021, 12:52:54
виноват connman
А ведь я еще давно говорил:  :)
Т.е. всего лишь прописать в UpNet обнаружение разных сетевых приложений, типа NM, connman и т.д. и выдать сообщение, что с ними не гарантируется работа. Имхо.
Просто не упомянул более жесткий вариант, когда эти сетевые приложения блокируются скриптом UpNet. Сами пользователи должны убрать их, после предупреждения от UpNet.
Название: Re: UpNet-0.3
Отправлено: sfs от 03 Декабрь 2021, 12:56:42
Несколько подключалок одновременно по любому зло.
Название: Re: UpNet-0.3
Отправлено: knn от 03 Декабрь 2021, 19:04:09
# "просто ламерский взгляд со стороны"...
- а может ближе к 'один-скрипт' + "глушилки"(/"активаторы")[  по отношению к дистру/сис-инициализации/etc] ?
---------
# не в тему "сетей", но запиливал "радио-ip-скрипт" допустим на "Xdialog/dialog" - "дофига делов" по отношению к разным сборкам (хотя и dialog относительностабилен, и нет особой нужды в посторонних зависимостях...). имхо - бывает что к.-либо прога скомпилена по-разному и т.д. #  и приходилось выбирать среднездельное для гуя (того же диалога)
=============
# недавно смотрел видео с Линусом по теме линукс-пакетов - как я понял, он вроде пока не видит решения
Название: Re: UpNet-0.3
Отправлено: sfs от 04 Декабрь 2021, 07:33:27
Несколько подключалок одновременно по любому зло.
Значит их надо делать отдельными модулями или пусть пользователь выбирает по "defaultconnect".
У меня так и сделано. За исключением netctl , который не запускает демонов и если нет его конфигов - никому не мешает
Название: Re: UpNet-0.3
Отправлено: DdShurick от 04 Декабрь 2021, 09:33:39
За исключением netctl , который не запускает
Что же тогда поднимает eth0?
Название: Re: UpNet-0.3
Отправлено: sfs от 04 Декабрь 2021, 11:17:31
Если никаких управлялок нет - скрипт net-auto запустит dhcpcd. Отключить - в /etc/xdg/autostart/net-auto.desktop
Название: Re: UpNet-0.3
Отправлено: DdShurick от 04 Декабрь 2021, 13:18:30
Если никаких управлялок нет - скрипт net-auto запустит dhcpcd.
Тогда добавь туда UpNet, не запуск, а просто выход.
Название: Re: UpNet-0.3
Отправлено: DdShurick от 05 Декабрь 2021, 12:50:25
 Бегло посмотрел net-auto. Ну и награфоманено. Сам писал, или Пёттеринг помогал? :)
Разберу подробно, тогда видно будет, что с ним делать.
Название: Re: UpNet-0.3
Отправлено: sfs от 05 Декабрь 2021, 14:36:30
Ну и награфоманено
Когда-то вдохновлялся вашим ранним скриптом
Думаю в net-auto можно оставить только запуск dhcp в случае отсутствия прочих настройщиков
Открытые сети автоматом и пр. - не разу не проверил после написания
Название: Re: UpNet-0.3
Отправлено: DdShurick от 05 Декабрь 2021, 15:52:38
Когда-то вдохновлялся вашим ранним скриптом
У меня сто-о-олько не было. :) Может его вообще убрать, UpNet конфликтует только с ним, и то не фатально, только некоторая задержка. С connman конфликта не было, кроме rfkill. С netctl не проверял. Начальные строки net-auto можно поместить в upNet.sh, чтоб в присутствии старших upNet не путался под ногами.
Название: Re: UpNet-0.3
Отправлено: sfs от 06 Декабрь 2021, 09:16:27
Может его вообще убрать
Перенесите в свой модуль и добавьте в начало: which upNet.sh && exit
Название: Re: UpNet-0.3
Отправлено: DdShurick от 06 Декабрь 2021, 11:34:31
Закрыл тенью net_auto, всё-равно что-то запускает eth0 помимо upNet.
Перенесите в свой модуль и добавьте в начало: which upNet.sh && exit
Бессмыслица. "Если есть upNet, то его выключить"