Автор Тема: нещо като tmux/screen за x11/wayland  (Прочетена 3864 пъти)

remotexx

  • Напреднали
  • *****
  • Публикации: 3244
    • Профил
нещо като tmux/screen за x11/wayland
« -: Nov 28, 2023, 01:03 »
Трябва ми да смъкна едни данни от едно GUI приложение и няма как (по друг начин) трябва да ползвам, нещо като Sendkeys плюс малко щракане с мишката на правилните места.. да уточня дотук какво съм пробвал и не работи (задоволително)

- RDP - работи ама бавно и трябва remote джама да е отворен (а то  ще отнеме дни-седмици-месеци) - трябва ми всичкото да върви локално (на друга/та машина)

- VNC същото като RDP - малко по-добре работи и при минимизирано (че RDP направо ми зависва), но аз искам на 100% а и да работи локално

- X Forwarding - не ми върши работа, не ми трябва remote машината да бачка (т.е. тая към коята се forward-ва) а работата да си се върши локално (подобно на screen/tmux и със същата т.е. "нормална" скорост)

- не искам "Running X11 Applications Remotely" ами локално с нормална скорост

...на теория всички тия remote xxx би трабвало да си работят (на пълна скорост) и при разкачена сесия, но на практика не е така - напр. RDP минимизирано работи с под 10% от нормалната скорост (пробвайте с гледане на филм па макар и в локална мрежа), VNC е малко по-добре и когато съм разкачен от сесията но пак е много бавно а и при него често се омотва приложенийцето дето сваля данните (може би от моето разкачане/закачане, но пък не прави така като го пусна директно на същата машина - работи си и с други приложения работещи по същото време)

..общо взето забелязвам че само терминалните екранни емулатори работят както трябва напр. screen/tmux като им пусна да копират файл (там филм няма как да пусна) и свършват за същото време незавсимо дали го изпълнявам локално или отдалечено, по същия начин се държат и при сметки... докато едно графично приложение както и да го пушам различно от локално и ...вече не е същото

П.П. т.е. трябва ми и клиента и съвръра да работят на една машина (но и да позволяват и /от време на време външно подкачане/ т.е. точно това което правят tmux/screen). Всичко което съм пробва досега - като разкача сесията и почва да се държи странно, или мишката не улучва или клавишите не уцелва(т) .. въобще странни работи стават ..може бе ще трябва да дам зор на Уейланд.

Само да уточня че комерсиални приложенийца не съм прбовал там Тийм Вюъри разни и пр.
« Последна редакция: Nov 28, 2023, 01:06 от remotexx »
Активен

4096bits

  • Напреднали
  • *****
  • Публикации: 6206
    • Профил
Re: нещо като tmux/screen за x11/wayland
« Отговор #1 -: Nov 28, 2023, 05:50 »
Нещо се обърках, Ремо.

Кое искаш да върви локално и кое на отдалечена машина? Кое да бъде управлявано, откъде?

Искаш да управляваш приложение локално, но искаш да можеш и отдалечено, от друга машина?
« Последна редакция: Nov 28, 2023, 05:52 от 4096bits »
Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.

remotexx

  • Напреднали
  • *****
  • Публикации: 3244
    • Профил
Re: нещо като tmux/screen за x11/wayland
« Отговор #2 -: Nov 28, 2023, 09:19 »
Ами зависи на кое викаш локална и отдалечена... но предполагам всички знаят конзолните как работят tmux, screen те такова искам - няма локална няма отдалечена и двете вървят на една и съща машина (а аз искам отдалечено само да го пусна и като свърши да го погледна да го проверя т.е. screen -r)
Активен

go_fire

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 8792
  • Distribution: Дебиан Сид
  • Window Manager: ROX-Desktop / е17
  • кашик с гранатомет в танково поделение
    • Профил
    • WWW
Re: нещо като tmux/screen за x11/wayland
« Отговор #3 -: Nov 28, 2023, 11:34 »
X2Go?
Активен

В $por4e2 e истината  ;)

***

Aко даваха стипендия за най-глупави, щях да съм човека с най-много Mини Kупъри

***

Reborn since 1998 || 15.09.2007 totally М$ free && conscience clear

4096bits

  • Напреднали
  • *****
  • Публикации: 6206
    • Профил
Re: нещо като tmux/screen за x11/wayland
« Отговор #4 -: Nov 28, 2023, 16:17 »
Да видим…
Значи искаш да автоматизираш управлението на GUI програма, като същевременно искаш и да следиш, докъде е стигнал процеса?

Не зная, за готово приложение. За такива неща аз ползвам PyAutoGUI.
Което означава, малко писане на код. Но не е сложна библиотека. Правил съм какво ли не на това. Включително на брат ми някаква уеб игричка автоматизирах и му трупаше средства, докато е на работа :D
Как работи? Ами можеш директно да задаваш координати на мишката, къде да кликне, колко пъти, да изпращаш клавиши, да вмъкваш текст в полета, да снимаш екрана и да търсиш определено парче графика от него ( например бутон или нещо друго и при намирането му, да пращаш мишката там ( застава точно в центъра на областта).
Снимаш например тук клавиша за удебелване на текста с някоя screenshot програмка и търсиш точно него в направената от PyAutoGUI екранна снимка, при намирането на това мъничко изображенине, можеш да пратиш мишката директо там, да натиснеш, да я върнеш в полето за въвеждане на текст, да го избереш и да пратиш текст, който съответно ще бъде удебелен.
Не се оправя мисля, само с анимирани изображения.
Как да провериш състоянието ли? Ами би могъл да пишеш в лог файл, който да си проверяваш или през прост уеб интерфейс, който да проверяваш, когато решиш. 10-15 реда с Flask ще свършат работа. И ngrok.

Как да го управляваш? Може би с помощта RPC. Или през уеб интерфейсчето.
Може би е възможно дори да следиш и екрана в уеб браузъра с помощта на WebRTC и то в реално време, но това не съм го правил никога.
 
Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.

remotexx

  • Напреднали
  • *****
  • Публикации: 3244
    • Профил
Re: нещо като tmux/screen за x11/wayland
« Отговор #5 -: Nov 28, 2023, 17:18 »
Благодаря на отзовалите се - ще ги пробвам и тези..

това X2Go не е по различно от Х пренасочването ...но там поне правилно говорят за клиент-сървър, та да обясня по-подробно понеже май останах недоразбран, какво имам предвид под screen-like behaviour:
там (screen) и клиента и сървъра са локално - клиента е още един един "локален" терминал (tty) които обаче (клиента/терминaла) позволява отдалечен достъп към "клиента"/терминала (а не към сървъра) и като се detach-ваш от screen-a машината даже не разбира т.е. юзера си седи в локален терминал и даже тръгва на по-бърза скорост (понеже не трябва да праща и отдалечено напр. печата по екрана т.е. cat bigfile забързва като съм детачнат), а при Х/КДЕ е точно обратното - само сървъра (а не клиента) позволява отдалечено свързване, единствения начин е със Login/Run as different user (или както там се казва сега в КДЕ опцията) и се почва една - нов/втори Х (поне навремето), нова/втора КДЕ сесия (а машината с данните е десетгодишна, но поради настройки/криптиране и т.н. данните трябва да се извличат локално), освен това гадината знае кога се детачвам и юзера вече излиза и почва да ми лагва на 1% т.е. забавя вместо да забързва и.. и аз не знам какво точно става но мишка и/ли клавиатура почват да пропущат няма ли отдалечен клиент закачен... (а локално същия "скрипт" си работи перфектно)

т.е. трябва ми графичен клиент/сървър при които клиента (а не сървъра) да позволява и отдалечен достъп (не ми пука че ще е бавен когато отдалечения потребител е включен) и от гл.т. на сървъра клиента да си е локален и винаги включен и сървъра(Х) въобще да не разбира кога потребителя си се атачва/детачва от клиента, че в аз момента само да си минимизирам (без детач) римоут десктоп клиента (RDP демек) и ми забавя от 50-60 пада на към под 10% от нормалната скорост...

Надявам се по-добре да съм го обяснил тоя път

на мен не ми трябва(ше) готово приложение - аз си имам "скрипт", но май натам вървят нещата ако това PyAutoGUI е най-близо до желания резултат  ::)
Приложението не е уеб за съжаление - стандартно дърто Qt приложение си е.

П.П. X2Go май няма да го пробвам - имат неоправени бъгове още с Qt5 (LxQT неработещо) а то текущото е Qt 6.6.0 и онова 5.х е стогодишно, а и аз вече пробвах с по-по-най- леките графични среди за Х (и удрям все същата греда - трявба да държа РДП сесията отворена, тогава пак бави ама по-малко докъм 50%, щото пък затворя ли я и 1-10% че почва и да крашва) По-скоро ще (на)уча питон ако нова другото не иска отделен Х/КДЕ - вероятно го пуща в невидим прозорец (ама важното е да е локално и да си работи на същата машина) пък аз към нея ще си се връзвам нормално от време на време през RDP (или SSH) да проверявам докъде е стигнало.

П.П.П. Между другото установих че вече (под Уейланд) старите методи вече не работят (напр. за мърдане на мишката) но пък има нови "заместители" и там вече е еднааа... направо да махат там всичко X/tty etc. и да оставят само systemd да кара всичко (сам само)  ;D
« Последна редакция: Nov 28, 2023, 17:52 от remotexx »
Активен

4096bits

  • Напреднали
  • *****
  • Публикации: 6206
    • Профил
Re: нещо като tmux/screen за x11/wayland
« Отговор #6 -: Nov 28, 2023, 18:10 »
Ако решиш да пробваш PyAutoGUI ползвай го и за да засичаш координати на статични обекти, като бутон на отворен прозорец.
Импортваш си в интерпретатора библиотеката позиционираш мишката в програмата, която искаш да автоматизираш върху желаното нещо ( бутон или нещо друго), връщаш с ALT+TAB в терминала и ползваш метода на модула, за да видиш точните координатни екрани на мишката, която не си докосвал междувременно. И повтаряш същото за друг обект. time.sleep , ако искаш имаш нужда от пауза между действията. Интерпретатора има история.

Предпочитам да ползвам Python пред BASH за скриптове, понеже можеш да ползваш multi threading и multiprocessing.
Да, в bash можеш да пуснеш скрипт на заден план да се изпълнява и да пуснеш друг. Но е тромаво. Не виждам обаче, как би могъл да използваш останалите ядра на процесора.
« Последна редакция: Nov 28, 2023, 18:55 от 4096bits »
Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.

remotexx

  • Напреднали
  • *****
  • Публикации: 3244
    • Профил
Re: нещо като tmux/screen за x11/wayland
« Отговор #7 -: Nov 28, 2023, 20:59 »
Като ми остане време ще го пробвам и Питона, обаче да попитам за стандартни графични приложение прозореца с приложението видим ли е (напр. нормален потребител иска да си работи на машината и да не му се мандахерцат автоматизирани процеси) А и  още нещо - работи ли под Уейланд че както наското установих старите конзолни апове вече не клатят мишките под Уейланд  :o

П.П.
А бе тия @#%^$@ кога успяха да махнат баш Блендера от тестовия Дебиян - мен един пътн (на 100 г.) ще ми изтрябва и... сега ще трябва да чакам години да го върнат (е поне до догодина) - гадините
E: Package 'blender' has no installation candidate

Пука ми че имал 500 хил апчета дето никой не ползва когат тия по известните дето всеки полва ги няма - едно време така мe нервиха с handbrake (немат спирачки и туй-то)  ;D

П.П.П. Значи дотук установих че определено проблема е само в графичната част - напр. като пусна (предимно) неграфично приложение (BOINC) да смята и там при минимизирам джам и че и при детачната сесия си върви със еднаква скорост (само графичната част лекинко лагва докато припали при подкачване) но подкарам ли нещо дето да разцъква по графиката и.. а съм го минизирал или детачнал и веднага ме усеща гадината и почва да прави каквото си иска (нещо като Котката на Шрьодингер - докато не го гледаш си мислиш че работи на 100% ...но само докато не решиш да погледнеш, а то направо живо умряло)

Няма ли нещо за Уейланд.. нещо като framebuffer, че и DirectFB имаше навремето...
- ...
- A possible graphic output method for a display server, independent of video adapter hardware and its drivers.
- Graphic programs avoiding the overhead of the X Window System.
« Последна редакция: Nov 28, 2023, 21:16 от remotexx »
Активен

4096bits

  • Напреднали
  • *****
  • Публикации: 6206
    • Профил
Re: нещо като tmux/screen за x11/wayland
« Отговор #8 -: Nov 28, 2023, 21:23 »
Не съм го пробвал, дали ще стане някой да седне на машината и да си работи.
Мисля, че не.
Но може би, ако пуснеш програмата и скрипта през KVM…

Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.

spec1a

  • Напреднали
  • *****
  • Публикации: 3873
    • Профил
Re: нещо като tmux/screen за x11/wayland
« Отговор #9 -: Nov 29, 2023, 09:52 »
Като ми остане време ще го пробвам и Питона, обаче да попитам за стандартни графични приложение прозореца с приложението видим ли е (напр. нормален потребител иска да си работи на машината и да не му се мандахерцат автоматизирани процеси) А и  още нещо - работи ли под Уейланд че както наското установих старите конзолни апове вече не клатят мишките под Уейланд  :o

П.П.
А бе тия @#%^$@ кога успяха да махнат баш Блендера от тестовия Дебиян - мен един пътн (на 100 г.) ще ми изтрябва и... сега ще трябва да чакам години да го върнат (е поне до догодина) - гадините
E: Package 'blender' has no installation candidate

Пука ми че имал 500 хил апчета дето никой не ползва когат тия по известните дето всеки полва ги няма - едно време така мe нервиха с handbrake (немат спирачки и туй-то)  ;D

П.П.П. Значи дотук установих че определено проблема е само в графичната част - напр. като пусна (предимно) неграфично приложение (BOINC) да смята и там при минимизирам джам и че и при детачната сесия си върви със еднаква скорост (само графичната част лекинко лагва докато припали при подкачване) но подкарам ли нещо дето да разцъква по графиката и.. а съм го минизирал или детачнал и веднага ме усеща гадината и почва да прави каквото си иска (нещо като Котката на Шрьодингер - докато не го гледаш си мислиш че работи на 100% ...но само докато не решиш да погледнеш, а то направо живо умряло)

Няма ли нещо за Уейланд.. нещо като framebuffer, че и DirectFB имаше навремето...
- ...
- A possible graphic output method for a display server, independent of video adapter hardware and its drivers.
- Graphic programs avoiding the overhead of the X Window System.


   Какъв е проблема Блендера или квото е там да му изтеглиш
сорс кода и да го компилираш.

tar zxf (jxf , Jxf ...) ...
cd  sourcedir
./configure
make
make install

Ако зависи от някои пакети:
apt install ...

и т.н.
Активен

4096bits

  • Напреднали
  • *****
  • Публикации: 6206
    • Профил
Re: нещо като tmux/screen за x11/wayland
« Отговор #10 -: Nov 29, 2023, 10:46 »
Потърсих сега отговор, дали работи под Wayland и попрочетох това:
https://github.com/asweigart/pyautogui/issues/111

Или иначе - все още не.

Но мисля си, след като съм го ползвал това толкова, общо взето, няма много значение, дали ще се ползва цялата функционалност на библиотеката или само разпознаването на по-малко изображение в скрийншот и определянето на позицията му. Но и това може да се направи с друг инструментариум като Pillow например или OpenCV за Python.
Останалите стъпки могат да се направят с каквото е налично като инструментариум. Упрвление на мишката, инжектиране на клавиши, вмъкване на текст и подобни. Но е по-ангажиращо.

Но метода си остава един и същ. Просто всичко е набутано в една библиотека. Или  иначе, можеш да срежеш парче дърво с трион, с моторна резачка, да го разполовиш с брадва или да го счупиш на две. Имаеш еднакъв краен резултат.

Преди изобщо да пробваш да учиш Python заради това, направи си проучване за всичко, което е налично като други конзолни инструменти. За управление на мишка, симулиране на клавиатура, прихващане на клавиши, снимка на екрана.

Доколкото разбрах от линка в началото, голяма част от проблемите са свързани със сигурността в Wayland и как работи заради това. Но имаш ли работещи инструменти, Python спокойно може да ги използва и да получиш същия резултат, на практика по абсолютно същия начин.
« Последна редакция: Nov 29, 2023, 11:01 от 4096bits »
Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.

spec1a

  • Напреднали
  • *****
  • Публикации: 3873
    • Профил
Re: нещо като tmux/screen за x11/wayland
« Отговор #11 -: Nov 30, 2023, 13:45 »
   А какъв би бил проблема,ако на съответния компютър сложиш в
crontab да ти се стартира еди какво си в еди колко си часа ?
Слагаш го в конфига,излизаш,след време пак влизаш и си на 6.
И не би трябвало да имаш ядове,независимо как си влязъл -
ssh,vnc,AnyDesk  и т.н.и т.н. ...
Активен

4096bits

  • Напреднали
  • *****
  • Публикации: 6206
    • Профил
Re: нещо като tmux/screen за x11/wayland
« Отговор #12 -: Nov 30, 2023, 16:51 »
Сигурно и някой друг го ползва.
Ремо не уточни, какви са данните, откъде са, по кое време може да ги сваля, кой има достъп до машината и за какво.
Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.

remotexx

  • Напреднали
  • *****
  • Публикации: 3244
    • Профил
Re: нещо като tmux/screen за x11/wayland
« Отговор #13 -: Nov 30, 2023, 23:45 »
Считайте темата за затворена...

Ще дам (само доколкото ми е разрешено) рекапитулация, но общо взето хората се отказаха от тоя метод и... ще дадът там едни пари (10-20х повече) само и само експрота да им е от "производителя" (който май се опита да им играе номера с vendor lock-in но тука такива не минават и съдилищата работят, та последно остава само да се договорят за цената и... кой откъдето е)

Примерът е измислен но горе-долу ситуяцията е следната - представете си зъбарски офис с около десетина зъбаря вътре още толкова хигиенистки, стажантки и т.н. със стар апп със дърт графичен УИ (GUI) които искат да мигирират на нова (уеб) платформа, но пради ред изисквания всички данни са зааключени и криптирани в старата платформа (или "в первод" на българсkи - напр. Гогата да си мигрира стара ДОСовска програма и/ли само данните за Уиндоуска или да прескочи "робовладелския строй" и направо у уеба)

@4К - въобще не ми е проблем с какъв скрипт ще разцъквам по УИ-я, даже си имах работещ (даже така разбрах че всички стари утилки вече не клатят нищо под Уейланд, нитo мишката нито клавиатурата, има нови, който обаче вече не могат да се отърват от systemd)

spec1a - да ползват го ежедневно хората, а опити за влизане извън работно време се логоват и дропят и т.н. защити, обаче (опитно) установихме че ако веднъж си се логнал през работно време такива не ги изхвърля посред нощ (понеже аз отначало подозирах че дори и да работи нормално ще отнеме 2-3 дена работа на скрипта без прекъсване), да-да ама не...

Сега да уточня проблема с който се борех ...понеже пак останах недоразбран пак ще опитам с дру пример (не със screen тоя път)
пробвайте два пинга - един към локал хоста и един към най-отдалечения хост в локалната мрежа (ако е безична още по-добре)
ще забележите разлика от околк ..да кажем 50% във времето за отговор 1-2мс/5-6мс локален/отдалечен хост или преизчислено моте 3 дена раборта стават 6 дена нон-стоп
Уточнявам че при графични отдалечни сесии е повече 10мс/100мс щото нали чакаш 4К картина да ти дойде, после вече почваш да забелязваш как бутона хлътва и после бааавно се изправя и т.н. (замерването му е на окомер, но поправете ме ако греша но за да го лови човешкото трябва да е под 24 кадъра/сек т.е. 1000мс/24 т.е. 50+ мс закръглям на 100) та това приравнява моите 3 дена на 30 дена, като и това не е съществения проблем...

Истински проблем е че графични сървър или сесията или systemd  >:D надушва кога отдалечния потребител не е активен/логнат или е детачнат (от сесията), или дори само е минимизирал сеисята и оттам почват големите мизерии т.е. всичко гореизборено можех да го преживея но не и това, тук вече забавянето е минути, а понякога и зависва т.е. пропуска скрипта да уцели правилния бутон/клавиш (а съм го тествал цял работен ден на една машина - без грешка, но също и това беше деня в който ми казаха че не могат да ми заделят една локална машина ей така само за мен за 30тина дена само...)

Най-близко до това което ми трябва за Х/КДЕ е нещо като това което правят screen/tmux за конзола, но за Х това нещо е (което пуща апп като два различни потребителя локално) ..няко спомня ли си я тая команда
Код
GeSHi (Bash):
  1. $ export DISPLAY=yourmachine.yourdomain.com:0.0
  2. $ firefox &
и имаше още една която пък разрешаваше на един потребител да бара дисплея на друг  :P
Код
GeSHi (Bash):
  1. xhost +si:localuser:user

значи така пуснато (но на localhost) работи почти с оригинална скорост (и съвръра и дисплея са на една и съща машина) и е баш като screen обаче...  той има един скрит коз - освен дисплей т.е. TTY прави и сесия с твoя потребител който е активeн докато нещото работи вътре в него (т.е. ОС вижда логнат/активен локален потребител който има /вечно/ активна сесия че и tty) докато графичния не само че не го може/прави това (там само remote сесии) но и те надушва даже и кога си минимизирал и а си го минимизирал (RDP) и веднага renice от най-бързо към най-бавно (тъй и тъй котката е в кашона и няма как да го изхващаш, но то се усеща)

но.. и това не върши работа защото пък приложението изскача на нечия машина е нечия чужда сеися и макар и локално но им пречи да работят, та ми трябваше нещо я сесийно,  я със скрит бакбуфер а бе да не им пречи да си работят

А то нещото го има ама там па яде ресурса като за световното - Runas user/switch user etc. обаче те тие (графичните варианти) направо имам чувството че подкарват и още едно Х11/КДЕ и за втория (и по едно за всеки следващ) юзер и там убват мшинките и откън локални ресурси даже (сега аз си мисля че е то рам/суап и т.н. обичайните заподозрени, но може и да се лъжа и да е от видеокарта защото там е най-тясното място при делбата на ресурсите)

Също така пробвах и тия по-по-най леките среди XFCE etc. за втория/отдалечения ми юзер (за локалния нямат избор там конфига е КДЕ)

П.П. извинявам се за правописните грешки, но тия дни съм ного зает (по очевидни причини) и ...няма да ги оправям (та тъй де, тоя път не всички са от автокоректора)
« Последна редакция: Dec 01, 2023, 00:30 от remotexx »
Активен

Подобни теми
Заглавие Започната от Отговора Прегледи Последна публикация
Screen-запис
Идеи и мнения
Tsika4 0 1739 Последна публикация Mar 05, 2005, 22:27
от Tsika4
Резолюция на login screen-a
Настройка на хардуер
madmad 1 1926 Последна публикация Dec 28, 2007, 12:28
от gizi_
Уязвимост в screen или функционалност, която не разбирам и вчера открих :)
Коментар
tolostoi 5 2046 Последна публикация Jan 06, 2012, 09:52
от tolostoi
Screen Recorder - Проблем
Настройка на програми
MMIROJV 4 1903 Последна публикация Jul 29, 2012, 22:23
от MMIROJV
wayland/weston настройки
Хардуерни и софтуерни проблеми
Yasen6275 0 900 Последна публикация Jul 16, 2013, 18:26
от Yasen6275