Подавать картинку как вход веб-камеры для android-x86 в qemu.
сабж
проверенное рабочее решение у кого-нибудь есть?
сабж
проверенное рабочее решение у кого-нибудь есть?
Привет всем!
Есть старый телефон Redmi 5 Plus, на котором стоит Android 9, root права в наличии. Система Havoc 2.9. Сейчас для управления использую RustDesk 1.1.10-1. Это приложение могло бы передать звук, но ему надо Android 10 или выше (про это написано вот тут https://rustdesk.com/docs/ru/manual/control-mobile/). Обновить ОС возможности нет. Хотя прошивки более свежие под телефон есть, но телефон от меня физически далеко.
Есть ли какое-то открытое и свободное ПО для управления с поддержкой звука? Проприетарщине доверять как-то не особенно хочется.
P.S.: Собственно звук нужен чтобы через него удалённо позвонить.
Всем спасибо!
Добрый день, ЛОР.
Есть андроид-проект с гитхаба. Инструкций по сборке нет.
В корне подпроекта есть файлы
.classpath
.project
AndroidManifest.xml
lint.xml
project.properties
Насколько я понимаю, файл .project сигнализирует, что собирать эту штуку надо с помощью Eclipse. Так ли это, или есть «более автоматизированные» способы? И если так, то что скорее всего потребуется, кроме Эклипса? apt-get install android-sdk
хватит?
http://repo.steamstatic.com/arch/valveaur/
А это значит, что:
Сюда можно и нужно писать, какими бы ключами вы бы хотели поделиться. Steam, desura, всякие бандлы и т.д.
Замечания:
Клавиатура MP-08J66SU-439 на нетбуке.
Нет необходимости в замене, т.к. нетбук рассыпается. Но есть потребность включить WIFI. Клавиатура уже дохлая, а он захардлочен.
Может кто знаком с распиновкой, уж очень лень её всю раздербанивать, потом дырку закрывать.
Решил немного написать о моём опыте перехода на MicroG и про небольшой список свободных аналогов софта.
TL;DR: жить на MicroG можно
Но сначала немного дополню статью от derlafff про XPosed.
Не доступен для свежих андроидов
Доступен вплоть до версии 8.1, на тот момент был то ли в альфе, то ли в бете, уже не помню. Для 9 версии есть под названием EdXposed (поддерживает ещё и 8.1).
Переход на MicroG
Существует форк NanoDroid (зеркало на гитхабе). Основные отличия от MicroG:
Прочитать про все отличия можно здесь.
С приложениями, использующими карты Google, могут возникнуть проблемы (например, Runtastic падает, хотя карты установлены). Читать дополнение в конце поста.
Очень желательно иметь Magisk вместо Superuser.
Скачиваем последнюю версию отсюда. Берём самую жирную. Распаковываем архив, редактируем .nanodroid-setup (описание настроек лежит здесь). FakeStore обязателен к установке.
Обязательно сделайте бэкап следующих приложений, т.к. иногда они по ошибке удаляются:
Приложения заменяются только если в .nanodroid-setup включена установка приложений, в противном случае они просто удаляются.
Скорее всего заменяются ещё клавиатура от Google, Gmail и Google Music (не пользуюсь, поэтому не могу проверить).
Обязательно проверьте, поддерживает ли прошивка SignatureSpoofing, список есть здесь. Процитирую пост по ссылке выше:
Коротко говоря, это обход защитного механизма, не позволяющего прикидываться gapps'ами кому попало. Для этого необходимо либо патчить прошивку при помощи Xposed/Needle/Haystack, либо использовать совместимую прошивку
Прошиваем архив (желательно перед этим сделать бэкап), вычищаем остатки гугловых приложений (если они есть, я ставил с удалением GAPPS).
Для обновления компонентов без прошивки архива добавьте этот репозиторий в F-Droid.
Получение приложений
Я решил обойтись без установки Google Play Store. Тем не менее, он должен заработать. Для получения пакетов из Google Play я использую Aurora. Можно использовать аккаунт Google или анонимный. Некоторые приложения не устанавливаются, и я понятия не имею, почему. В основном это гугловые приложения и зависимые от них (к примеру, использующие Google Maps). Через Yalp и файловый менеджер такие приложения устанавливаются. Минимальная версия системы - 5.0. Есть проверка приложений на предмет известных трекеров в базе Exodus Privacy. Для более старых систем есть Yalp Store, который поддерживает версии Android от 2.0 и выше.
Для свободного софта конечно же F-Droid. Ещё существуют M-Droid с более приятным интерфейсом (и вроде как исправленной загрузкой скриншотов, но у меня оно не заработало), и G-Droid (лучше интерфейс, но нет поддержки сторонних репозиториев).
Немного про навигацию
Навигация по GPS работает. С навигацией по мобильной сети есть косяки. В MAPS.ME и некотором софте работает только MozillaNlpBackend, но показывает, будто телефон на другом конце города. Déjà Vu Location Service работает в другом софте (Карты Google, Яндекс.Карты, ЕСТ Такси), с погрешностью в 30-50 метров.
Карты Google работают. Яндекс.Карты тоже. Приложения, использующие OSM и Яндекс.Карты - работают.
Свободные аналоги разного софта
Разный годный открытый софт
Напишите, если знаете годные аналоги свободного софта (и любой годный открытый софт), добавлю в список.
Всякие мелочи
ClassyShark3xodus - сканирование всех приложений в системе на предмет трекеров. Использует базу Exodus Privacy.
Komoot - не открытое, но использует OSM. Аналог приложений вроде Runtastic (хоть и умеет меньше). Судя по Exodus Privacy, трекеров нет.
UPD: дополнение от ma1uta
Цель такова: запилить схематическую картинку на основе фотографии, путём прокладывания прямых соединяющих отрезков, используя фотографию фоновым изображением как образец. И чтоб эти отрезки потом можно было двигать, тянуть за концы. В общем, как в чертёжных CAD-ах. Есть что такое подходящее в наших гнулинуксах?
На ноуте установлен Debian 9 и virt-manager. Интересует следующий вопрос: возможно ли работать с виртуалкой в отдельной X-сессии ? Собственно для чего нужно: на хост системе у меня только виртуалки, для работы и учебы отдельные системы, не совсем удобно между ними переключаться, особенно при работе в полноэкранном режиме. Хочу сделать так чтобы на хосте залочил экран, нажал ctrl+alt+f4 и попал в гостевую систему.
Тут http://dmzik.blogspot.com/2013/05/virtualbox-tty.html автор проделал то что мне нужно с virtualbox-ом , как такое реализовать в qemu/virt-manager ?
Здравствуйте. Нашел вот такую вещь: https://github.com/zhovner/OneFileLinux
Все прекрасно и нравится, однако, хотелось бы обновить версии утилит и добавить несколько новых, но при попытке что-либо сделать получаю ошибки.
Мой дистрибутив: Archlinux, если это важно.
user@localhost ~/OneFileLinux> sudo ./build.sh
____________
/|------------|
/_| .---. |
| / \ |
| \.6-6./ |
| /`\_/`\ |
| // _ \\ |
| | \ / | |
| /`\_`> <_/`\ |
| \__/'---'\__/ |
|_______________|
OneFileLinux.efi
----------------------------------------------------
Checking root filesystem
ls: cannot access 'alpine-minirootfs/var/cache/apk/': No such file or directory
/dev/ bindings found: alpine-minirootfs/dev/urandom. Unmounting...
Version in banner: v0.3.2
Uncompressed root filesystem size WITHOUT kernel modules: 47M
----------------------------------------------------
Building kernel mobules using 4 threads...
CHK include/config/kernel.release
CHK include/generated/uapi/linux/version.h
CHK include/generated/utsrelease.h
DESCEND objtool
CC /home/claire/OneFileLinux/linux-4.14.22/tools/objtool/str_error_r.o
CC /home/claire/OneFileLinux/linux-4.14.22/tools/objtool/pager.o
../lib/str_error_r.c: In function ‘str_error_r’:
../lib/str_error_r.c:25:3: error: passing argument 1 to restrict-qualified parameter aliases with argument 5 [-Werror=restrict]
snprintf(buf, buflen, "INTERNAL ERROR: strerror_r(%d, %p, %zd)=%d", errnum, buf, buflen, err);
^~~~~~~~
cc1: all warnings being treated as errors
mv: cannot stat '/home/claire/OneFileLinux/linux-4.14.22/tools/objtool/.str_error_r.o.tmp': No such file or directory
make[3]: *** [Build:22: /home/claire/OneFileLinux/linux-4.14.22/tools/objtool/str_error_r.o] Error 1
make[2]: *** [Makefile:46: /home/claire/OneFileLinux/linux-4.14.22/tools/objtool/objtool-in.o] Error 2
make[2]: *** Waiting for unfinished jobs....
pager.c: In function ‘pager_preexec’:
pager.c:36:12: error: passing argument 2 to restrict-qualified parameter aliases with argument 4 [-Werror=restrict]
select(1, &in, NULL, &in, NULL);
^~~ ~~~
cc1: all warnings being treated as errors
mv: cannot stat '/home/claire/OneFileLinux/linux-4.14.22/tools/objtool/.pager.o.tmp': No such file or directory
make[4]: *** [/home/claire/OneFileLinux/linux-4.14.22/tools/build/Makefile.build:96: /home/claire/OneFileLinux/linux-4.14.22/tools/objtool/pager.o] Error 1
make[3]: *** [Makefile:52: /home/claire/OneFileLinux/linux-4.14.22/tools/objtool/libsubcmd-in.o] Error 2
make[2]: *** [Makefile:54: /home/claire/OneFileLinux/linux-4.14.22/tools/objtool/libsubcmd.a] Error 2
make[1]: *** [Makefile:62: objtool] Error 2
make: *** [Makefile:1633: tools/objtool] Error 2
user@localhost ~/OneFileLinux> lsblk
Возможно ли сделать мониторинг изменения текстовой информации на сайте через виджет на рабочем столе?
Привет
Когда-то был для Firefox плагин remote-control, который открывал порт (например, 1234), и позволял удаленно запускать JavaScript команды и доставать значения переменных. Например, из CLI можно было на порт 1234 отправить document.body.innerHTML;
и получить содержимое страницы, а отправив на порт 1234 window.location.reload();
можно можно было инициировать refresh страницы.
А потом у Firefox изменили API...
Подскажите, а сейчас есть у Firefox (или Chrome) подобный плагин?
Друзья, подскажите, можно ли такое ввернуть вообще.
Хочется примонтировать каталог на внутреннем накопителе к USB. Т.е. чтобы подключаешь устройство к другому устройству, а оно прикидывается обычной флешкой.
Целевая платформа Debian/Raspbian и скорее всего малина.
Решил попробовать подключить удаленные файловые системы при помощи systemd .mount-модулей. По пользователям, а не для системы глобально.
Подключение из командной строки работает без проблем:
sshfs iron.burato:/ ~/iron
Host iron.burato
HostName 10.10.0.5
IdentityFile ~/.ssh/Keys/iron.burato
User burato
[Install]
WantedBy=default.target
[Mount]
Type=fuse.sshfs
What=iron.burato:/
Where=/home/burato/iron
systemctl --user start home-burato-iron.mount
mount[17611]: mount: only root can use "--types" option
Options=user
systemctl --user daemon-reload
mount[20509]: mount: only root can use "--options" option
ОС Arch Linux, но systemd вроде как везде одинаков.
Интересуют 84x48, монохромные - только чёрный и белый, как на древние трубки.
Собираю одну штуку в подарок на адруине, подключен дисплей от Nokia 5110. Картинки оптимально милые или романтические. Не знал, куда запостить (если в мобайл - так у меня не мобила, да и такого нет давно ни у кого; если в hardware - при чём тут картинки и оборудование), потому оставил это в general.
Имеется debian 9 stretch LXDE. Открыта IDE, веб-браузер и терминал. Я хочу переключаться между ними не альт-табом, а по горячим клавишам. Я знаю, что это можно сделать с помощью рабочих столов, но у меня два монитора. Если раскидать приложения по рабочим столам, пространство экрана будет недоиспользовано.
В офтопике есть «закреплённые приложения» возле кнопки «Пуск». Когда нажимаем Win+1, Win-2 и т.п., запускается первое, второе и т.п. приложение . А если приложение уже запущено, то в него переключаюсь.
Можно ли так настроить LXDE? Или, может быть, есть какая-то ещё альтернатива?
РЕШЕНИЕ
# Установим программки...
> sudo apt-get install wmctrl wish xdg-utils
# Посмотрим, какие окошки у нас есть
> wmctrl -x -l
0x03000046 0 sun-awt-X11-XFramePeer.jetbrains-phpstorm deb8 rl [/y/rl] - ...ргт [rl] - PhpStorm
0x03600004 0 lxterminal.Lxterminal deb8 den73@deb8: ~
0x03c00001 0 google-chrome.Google-chrome deb8 Новая вкладка - Google Chrome
0x03c00014 0 google-chrome.Google-chrome deb8 Developer Tools - https://www.google.ru/...
0x03800003 0 leafpad.Leafpad deb8 (Без имени)
# Окошки можно искать по имени класса и по заголовку (man wmctrl).
Создадим скрипт для обработки горячих клавиш и запишем в файл ~/.config/горячие-клавиши-openbox.ш:
#!/bin/bash
function Диалог {
echo "wm withdraw .
tk_messageBox -title {Помощник горячих клавиш} -message \"$0 сообщает:
[list $1]\"
destroy ." | wish
}
command -v wmctrl || Диалог "Не установлена программа wmctrl"
case $1 in
(W-1)
wmctrl -x -a Lxterminal \
|| xdg-open ~/Рабочий\ стол/lxterminal.desktop;;
(W-2)
wmctrl -x -a "Doublecmd" \
|| ~/doublecmd/doublecmd.sh;;
(W-3)
wmctrl -a "- Google Chrome" \
|| google-chrome;;
(W-4)
wmctrl -a "Developer Tools -" \
|| Диалог "$1 только активирует Chrome Developer Tools, но не запускает их";;
(W-5) wmctrl -a "- Visual Studio Code" \
|| code;;
("") Диалог "В качестве параметра передай горячую клавишу, как она записана в OpenBox.";;
(*) Диалог "Неизвестная горячая клавиша «$1»"
esac
# Сделаем файл исполняемым
> chmod u+x ~/.config/горячие-клавиши-openbox.ш
# Настроим конфигурацию LXDE
# Для LXDE
> leafpad ~/.config/openbox/lxde-rc.xml
# Для Lubuntu-desktop
> leafpad ~/.config/openbox/lubuntu-rc.xml
Добавляем в секцию keyboard:
<keybind key="W-1"><action name="Execute">
<command>~/.config/горячие-клавиши-openbox.ш W-1</command></action></keybind>
<keybind key="W-2"><action name="Execute">
<command>~/.config/горячие-клавиши-openbox.ш W-2</command></action></keybind>
<keybind key="W-3"><action name="Execute">
<command>~/.config/горячие-клавиши-openbox.ш W-3</command></action></keybind>
<keybind key="W-4"><action name="Execute">
<command>~/.config/горячие-клавиши-openbox.ш W-4</command></action></keybind>
<keybind key="W-5"><action name="Execute">
<command>~/.config/горячие-клавиши-openbox.ш W-5</command></action></keybind>
Применяем
> openbox --reconfigure
Сочетания Win+1 .. Win+5 теперь вроде работают.
Теперь можно поместить эти команды в панель быстрого запуска, чтобы иметь наглядное напоминание о том, какая кнопка про что, но я, наоборот, очищу эту панель, чтобы место освободилось.
P.S. работает также в Ubuntu 12.04; также проверено в Ubuntu 16.04 для рабочего стола lubuntu-desktop
Хочу сделать робот пылесос. Но возникло просто тысяча вопросов.
Для начала что я хочу от пылесоса
1) Красота не важная
2) Шум не важен (Пока что)
3) Должен убирать пыль
4) Пусть ездит рандомно
Конструкцию думал сделать такую:
1) Купить одноразовые мешки для пылесоса (Нашел по ~20 гривен за штуку)
2) Купить один мотор от квадрокоптера (~150 Ватт) использовать его в качестве насоса воздуха
3) Купить несколько маленьких моторов (~1 Ватт для колес) и счеток (веников)
4) "Веники" будут подымать мусор в воздух
5) Из всякого хлама сделать аналог трубы в который я помещу пропеллер и воздух с пылью будет всасываться с пола и продуваться через одноразовый мешок
Для рандомного движения думал использовать ардуино (Хватит ли?, у меня с ней есть опыт). Идея сделать пылесос умным мне нравится, но не уверен что хватит навыков.
Теперь о проблемах. Мотор от коптера напрямую от постоянного тока не запитать, приходится покупать вот такую штуку https://arduino.ua/prod667-Regylyator_hoda_ESC_Mystery_30A, стоит весьма дорого, есть какой-то другой способ? Здесь 30А, мне должно и 10А хватить. В этом же магазине обычные (коллекторные) моторы очень слабые, несколько ватт.
Дальше не понятно какой источник энергии брать, изначально я думал павербанк, но 5V* (~2A) = 10 Ватт, что совсем мало, к тому же мотор хочет себе около 12 Вольт. Думал может соединить несколько павербанков (И последовательно и параллельно) Но по цене это выйдет очень уж дорого (Минимум 100 гривен за 5 Ватт).
В магазине ардуино есть большой выбор аккумуляторов, но я не понял как их заряжать, продаются какие-то устройства (https://arduino.ua/prod507-Zaryadnoe_ystroistvo-balansir_Imax_B6) за весьма много денег (500 гривен и выше). Жуть просто, это реально нужно чтоб просто зарядить аккумы?
Также я смотрел на аккумы для коптеров - но опять же цена почему-то огромная
Добрый вечер, господа. Это тред-howto о том, как сделать корректный автологин в иксы «на чистом systemd». В вики мне писать влом, да и никто её не читает, а тут и теги указать можно, и людей скастовать. Собственно, да: border-radius, ecko.
В чём вообще проблема? Проблема в том, что значительное количество людей делают это через банальнейшие костыли, настраивая автологин в текстовую консоль и запуская иксы из bashrc (или, чего хуже, из bash_profile). Это плохо по трём причинам:
systemd
/bin/agetty
/bin/login
PAM
/bin/bash
~/.bashrc
/bin/startx
Я предлагаю написать getty-подобный юнит, который будет запускать иксы от фиксированного пользователя с фиксированным номером дисплея на произвольном VT. (Почему так много хардкода? Потому что systemd — не дисплейный менеджер.)
Это тоже неидеальное решение. Например, нафиг идёт мультисит и возникают гонки между запуском иксов и обнаружением видеоустройств. Но этими недостатками мы пренебрежём.
Параграф один. logind, autovt и getty-подобные юниты. Getty могут запускаться двумя способами.
autovt@ttyN.service
, который засимлинкен на getty@.service
. Эта логика работает для tty2-tty6.
getty@tty1.service
включен по умолчанию и втягивается через getty.target
. Это даёт нам всегда запущенный getty на tty1.
Соответственно, допустим, у нас есть юнит xorg@.service, который запускает иксы на указанном VT.
Его нужно либо симлинкнуть под именем autovt@ttyN.service
, переопределив шаблонный юнит (тогда при переключении на выбранный VT иксы будут запускаться вместо getty — первый способ), либо отключить getty@tty1.service
и включить вместо него xorg@tty1.service
(тогда мы вместо всегда запущенного getty будем иметь всегда запущенные иксы — второй способ).
Параграф два. Xorg вместо getty. Итак, имеем юнит для иксов, написанный по аналогии с getty@.service: /etc/systemd/system/xorg@.service.
User=<впишитеюзера>
PAMName=login
-- это аналог su.
Conflicts=getty@%i.service
After=getty@%i.service
-- это некоторая защита от одновременного запуска getty на том же терминале.
StandardOutput=tty
StandardInput=tty-fail
-- это указание systemd запускать иксы подсоединёнными напрямую к терминалу, а не к логгеру (нужно для того, чтобы иксы можно было запускать не от рута... ах да, работает только с 1.16 и выше).
ExecStart=/etc/systemd/scripts/startx -D :0
-- это мой велосипед вместо startx с нескучным синтаксисом и exec xinit
в конце, что важнее.
Дело в том, что systemd из-за вероятного бага при остановке юнита отправляет SIGTERM/SIGKILL не всем процессам в дереве, начиная с startx, а только самому startx. А поскольку он написан на шелле, то он радостно игнорирует SIGTERM и ждёт завершения xinit, которому никакого сигнала не приходит. Следовательно, проблему решаем переписыванием startx так, чтобы он в конце не запускал xinit подпроцессом, а делал exec xinit
, заменяя им собственный процесс. Тогда сигнал приходит xinit'у, а он его корректно ловит и убивает иксы.
Всё остальное скопипащено из getty@.service.
Да, дисплей захардкожен в :0. Пара слов о назначении VT: процесс startx получает номер VT в переменной $XDG_VTNR
(её устанавливает pam_systemd), а из startx запускается /etc/X11/xinit/xserverrc
, который об этой переменной знает и передаёт X-серверу параметр vt$XDG_VTNR
.
Параграф три. Запускаем.
Итак, помещаем юнит в /etc/systemd/system/xorg@.service
, startx в /etc/systemd/scripts/startx
(можно куда угодно) и делаем:
systemctl daemon-reload
systemctl disable getty@tty1
systemctl enable xorg@tty1
После этого можно ребутиться и надеяться, что запустится. Ах да, дисплейный менеджер тоже стоит отключить, потому что он запустит свой X-сервер и произойдёт адъ и израиль.
Как-то так. Сейчас три часа семнадцать минут по московскому времени, поэтому прошу меня извинить за упрт стиль изложения, краткость, неконсистентное использование форматирования и так далее.
Представлен проект OpenSnitch, в рамках которого подготовлен свободный аналог проприетарного сетевого экрана Little Snitch.
( читать дальше... )
>>> Подробности
Итак, раз в пол года я рассказываю о проекте Glacier - полностью графической оболочки для мобильных телефонов.
Итак, это графическая оболочка работающая поверх Mer/Qt/Wayland в своё время была заброшена сейчас пилится усилиями полутра землекопов в том числе и мной - чисто в образовательных целях.
Что было сделано за последние пол года:
1. Полностью опенсорсные образы (раньше ставилось поверх SailfishOS)
2. Дописаны/Переписаны компоненты QtQuickControls-nemo - добавили темы, добавили подстройку автоматическую под разные расширения экрана, добавили новые контролсы.
3. Переписаны кучу приложений с использованием QtQuickControls-nemo (раньше юзали миговские контролы), такие как звонилка, галерея, контакты и прочее прочее прочее естественно куча всего поломано и работает от слова никак.
4. Написали библиотеку libglacierapp, которая позволяет проще начать писать приложения.
5. Сделан порт под Arm64 что представлено на фото.
Из известных багов:
1. Образ не запускает юзерсессию - надо дописывать сервисы systemd
2. Нет многих приложений и они некорректно работают - просто нет людей.
3. Нет системы обновления и прочего
И много-много-много другого :)
Гит проекта https://github.com/nemomobile-ux
И https://github.com/nemomobile
На остальное велком в комментариях
следующие → |