LINUX.ORG.RU

Сообщения pihter

 

Yocto. Передача хидера между рецептами через STAGING_DIR не работает

Приветствую, дорогие писатели рецептов.

Нужно разделить рецепт в котором собирается библиотека и бинарь, зависящий от нее: для этого надо хидеры передавать между рецептами.

Вроде бы штука тривиальная, но не работает. Делал по совету со стек оверфлоу: https://stackoverflow.com/questions/50035143/in-yocto-how-to-include-header-files-from-another-recipes

Есть кто по ёкте на моем ЛОРе? Я пока минимальный пример рецептов наваяю.

Заранее благодарю всех откликнувшихся.

 

pihter
()

Где местный кулибин заказывает PCB в наше неспокойное?

Я пользовался JLCPCB, но прошел слух, что они с РФ не работают теперь. Я написал, спросил, да, говорят, нет способов оплаты, делаем, мол, все что можем, ждите.

Надо полагать в конкурирующих конторах то же самое.

Контекстная реклама, прорвавшись через адблок немедленно предложила фирму-посредник у которой свой склад в Китае, счет там же: сходил, почитал, всего раза в два дороже получается ( что все равно довольно дешево, ну не сто руб/штука, а 200 руб/штука при мельчайшей серии в 10 штук.

Обсчем, кто как делает?

 , ,

pihter
()

Выдрать gstreamer из дебиана для запуска на другом дистре

Привет всем.

Есть борда на рокчипе, для нее есть прошивка с настоящим дебианом, apt работает – вообще все. Там есть ( и работает ) gstreamer собранный производителем, в частности умеет рисовать видео без десктопа через DRM/KMS с аппаратным декодированием.

Далее, есть более другая борда на таком же камне, с другим недолинуксом, на который если что-то и собирать, то с болью, с большими трудозатратами. Любая софтина, которую я выковыриваю из дебиана и перетаскиваю на борду 2 – работает, при условии обеспечения библиотеками, в том числе и софтины с ускоренным выводом графики.

Из чего вопрос: можно ли как-то в полуавтоматическом режиме вытащить gstreamer со всеми зависимостями в отдельную папочку, чтоб запускать через LD_LIBRARY_PATH и поулчать удовольствие?

(ну на ум приходит что-то типа установить в чрут АПТхой этот gstreamer или что-то типа того)

 , ,

pihter
()

Выбрать аккумы в ИБП-шник помогите

Смеркалось.

Подошел коллега, попросил посоветовать какие аккумуляторы ставить в ИБП-шник стоечный ( у нас сдохли на днях ), говорит, по личным наблюдениям, бывает что аккум год держит, а бывает – 10. И по фирме и по цене особо не работает, вопрос: как ЛОРовец выбирает аккумуляторы?

(нужны узенькие, на 7Ач )

Спасибо.

 , ,

pihter
()

Подскажите технологию/способ обновлять линукс из файла-прошивки?

Поясню: хочу на одноплатник заливать прошивку, содержащую всю необходимую систему и иметь возможность софтварно, из под этой же запущенной системы, обновлять прошивку (из файла и/или по сети).

На ум приходит: иметь два раздела, с одного грузиться, второй dd-шкой из образа-архива обновлять и както сообщить загрузчику, что теперь активен второй и грузиться надо с него

Вопрос: нет ли какого общеизвестного решения этой явно не в первый раз возникшей хотелки или колхозить руками?

 , ,

pihter
()

directfb — все?

чета ни дышит… кто что слышал? Использовать в живом проекте не стоит и переходить на… что? SDL?

 

pihter
()

Gtk: многострочное поле ввода

Казалось бы, где это видано, чтоб в тулките не было компонента (элемента, объекта) «многострочное поле ввода текста»?

А вот в gtk3 нет компонента именно под эту задачу ( по крайней мере – не вижу )

Может можно как-то GtkEntry сделать многострочным?

Есть еще GtkTextView, но он выглядит вообще не так как интри и размещать их рядом даже для такого непритязательного к дизайну парня как я – глаза вытекают.

Как вообще решается эта проблема? Кастомизировать стили для ТекстВью? Ну тупо же.

Вот код-демонстрация, он, правда, на vala, но то – для краткости, думаю, тут все понятно:

//  to compile valac --pkg gtk+-3.0  lor_example.vala 

using Gtk;

public class lor_example : Window {

  private Entry entry;
  private TextView text_view;
  private Box vbox;

  public lor_example() {
    this.window_position = WindowPosition.CENTER;
    this.destroy.connect( Gtk.main_quit );
    set_default_size( 400, 400 );

    vbox = new Box( Orientation.VERTICAL, 10 );

    entry = new Entry();
    vbox.add( entry );

    text_view = new TextView();
    vbox.add( text_view );

    add( vbox );
  }

  public static int main( string[] args ) {
    Gtk.init( ref args );

    var window = new lor_example();
    window.show_all();

    Gtk.main();
    return 0;
  }
}

Просто чтоб вы могли посмотреть как оно выглядит

 

pihter
()

Универсальная кросскомпиляция под винду с сокетми бывает?

Возникла потребность собрать openssh-сервер под проклятую: у меня на билд-сервачке налажен MXE для кросскомпиляции другого, дай думаю, скормлю ему сырцы openssh-portable.

Он ожидаемо ругается на отсутствие sys/socket.h в связи с чем – вопрос: а есть какой-то универсальный способ решить эту проблему или только руками через winsock2.h переделывать? Неужто все те сотни линуксовых программ, которые я вижу для винды, руками переделывали? Почему нельзя запилить имплементацию sys/socket.h на виндовых сокетах для кросскомпиляции вот подобной, там что-то принципиально несовместимо?

 , ,

pihter
()

Посоветуйте современный легенький форум для установки в локалку

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

Люблю совсем классические, но может есть что-то без перезагрузки страниц. Привязка к соцсетям – не требуется.

А бывают ли такие, которые при публикации кем-то сообщения могут выполнять мою шелл-команду, вроде beep ; echo «$user $message» >> /var/forum_dbg.log ?

 ,

pihter
()

Неявный каст int в unsigned int стандартизован или мы просто привыкли?

Смеркалось.

Дано:

unsigned int some_function(){
  return -1;
}

Вернет 0xFF…F. Это обязано(гарантированно? где?) так быть или бывают компиляторы/платформы в которых не так?

Про исторические я знаю, а что-то из более или менее актуальных?

Перемещено maxcom из talks

 ,

pihter
()

Собрать curl динамически слинкованный с libcurl.so.4.8.0 вместо libcurl.so.4

…чтоб подложить в устройство на котором libcurl.so.4 – линк на другую версию и менять его нельзя

Должен быть способ, я в этом уверен

 , , ,

pihter
()

А можно ли запилить домашнее распознавание голоса?

Сабж. Ну типа как какая-нибудь алиса, тока дома, от сервака и чтоб она по командам умела мне какие-нибудь POST-запросы слать или прочее, современное, ненужное.

Если нет – то как можно организовать внешнее распознавание голоса и команды ко мне, желательно чтоб не пришлось слать нотариально-заверенный скан паспорта.

 распознавание голоса

pihter
()

В чем проблема чистить солнечные батареи марсоходов?

Сабж.

Приходится списывать марсоходы потому что не догадались кисточко-дворники задезайнить? Выглядит нереалистично. Отговорка такая?

 марсоход, солнечная батарея

pihter
()

Ищу трансивер для организации своего цифрового радиоканала

Смеркалось.

Давно мечтаю о паре девайсов, которые можно было бы подключить к компу по USB(/LPT/COM/PCI/UART/I2C/etc.) настроить радиосвязь и невозбранно обмениваться данными ( а то и сеть организовать )

Плюсом будет законность (возможность работать без лицензии, но, если что, такое тоже предлагайте), мощность (на самом деле – дальность) и независимость и конечно – цена.

Кто что бодобное занет? Наверняка же есть какие-нибудь CB-шки копеечные с COM-портом, но мне не попадались

Спасибо!

 ,

pihter
()

LIRC не понимает USB-UART в принципе?

или как?

Есть у меня товарищ, а аккаунта на ЛОРе у него нет, зато есть уже на пару дней боль как подружить lirc и ИК-приемник за 23 рубля через usb-uart кабелек. Собсна, слово потерпевшему:

есть pl2303, к нему ик-приёмник vs1838, какой драйвер в лирке использовать и скакими параметрами

putty при подключение на 9600 бод показывает байты

sudo mode2 -Husb_uirt_raw -d/dev/ttyUSB0 ничего не показывает

только устанавливает 115200 бод

после этого cat /dev/ttyUSB0 | hexdump -Cv показывает одни нули

делаем sudo stty -F /dev/ttyUSB0 9600, затем опять cat /dev/ttyUSB0 | hexdump -Cv, есть последовательность 0х80/0х00

как быть?

помогите, люди добрые, не проходите мимо!

 ,

pihter
()

IPC события в одном потоке

Смеркалось.

Возникла у меня потребность обмениваться событиями между процессом на одном хосте. Именно самим фактом события, но было б неплохо с сообщением. Мне известны такие способы: сокеты юниксовые и сетевые, очереди сообщений и сигналы. Еще пайпы.

Мне не нравится что во всех случаях, кроме сигналов, чтение – забота принимающего сигнал: то есть мне надо либо сидеть в блокировке и ждать сообщения (это не то что мне нужно, мне нужно чтоб программа работала все время) либо заводить отдельный тред и сидеть в блокировке там, а когда придет сообщение – звать уже колбек (это будет план БЭ, хочу поспрашать нет ли чего проще/дешевле). А сигналы мне не нравятся потому что пользовательских всего два, а привязать к ним данные – это надо отдельную песню городить ( ну типа по сигналу, например, выгребать сообщение из очереди )

В общем, как эксперты по всему решают эту проблему? Мож есть какая общеизвестная либа или как обычно зоопарк? Нужно для сей на сабжевую ОС, само собой. Предалгайте!

 ,

pihter
()

Самодельный self-signed сертификат для локалхостного вебсокета

Смеркалось.

Захотелось (пришлось) мне опять вляпаться в эту вашу вебнню, значит, надо вебсокет из странички запущенной на локалхосте к серваку на локалхосте. Колдуем:

openssl req -x509 -newkey rsa:2048 -keyout lclhost.key -out lclhost.crt -sha256 -days 365 -nodes -subj '/CN=localhost'

потом пакуем:

openssl pkcs12 -export -in lclhost.crt -inkey lclhost.key -out lclhost.p12

и устанавливаем в браузер. Далее, запускаем в браузере что-то вроде

ws = new WebSocket("wss://localhost:9988");

а на хосте что-то вроде

./websocketd --address=localhost --port=9988 --ssl --sslkey=./lclhost.key --sslcert=./lclhost.crt --loglevel=debug

и, значится, браузер ругается:

ws try to create ws...1
ws Connection closed... code:1015 reason:

а сервер ругается:

2022/08/24 09:25:50 http: TLS handshake error from 192.168.220.35:55234: remote error: tls: bad certificate

Что ж ему не нравится в моих сертификатах? При том, раньше работало, а на новых браузерах видимо чет ужесточили и – вот

UPD: chrome ругается несколько иначе:

2022/08/24 09:52:57 http: TLS handshake error from 192.168.220.35:55832: remote error: tls: unknown certificate

UPD2: додумался посмотреть что пишет браузер: MOZILLA_PKIX_ERROR_SELF_SIGNED_CERT – так, все-таки, самоподписанные больше нельзя?

 , ,

pihter
()

Траффик из определенного сетевого интерфейса в тор

Смеркалось.

Захотелось Понадобилось мне одну внешнюю железяку заставить ходить в интернет через тор. Воткнул вторую сетевушку, запилил ей статический айпи. Поднял dnsmasq, кастанул

iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

обычный NAT заработал, в интернет ходит

Дальше, поставил тор:

cat /etc/tor/torrc

VirtualAddrNetwork 10.0.0.0/10
AutomapHostsOnResolve 1
TransPort 9040
DNSPort 53

(кто знает что имеется в виду в первом параметре – научите дурака. Какой виртуальный адрес? Какой сети?)

а вот iptables для заворачивания трафика в тор на локальной машине:

# Generated by iptables-save v1.8.7 on Mon Jul 25 14:29:18 2022
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A OUTPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j REDIRECT --to-ports 9040
-A OUTPUT -p udp -m udp --dport 53 -j REDIRECT --to-ports 53
#-A POSTROUTING -o eth1 -j MASQUERADE
COMMIT
# Completed on Mon Jul 25 14:29:18 202

и оно тоже работает, но только для моего ПК, а не для входящего, что и логично, ибо АУТПУТ – оно только для пакетов, сгенерированных на моем ПК.

Внимание вопрос – как завернуть внешний траффик туда же? Вроде надо из прероутинга – но у меня не выходит.

Явно ж у кого-то уже сделано – поделитесь

Спасибо

 ,

pihter
()

Автомагнитолы с линуксом. Бывают?

Сабж.

Личный опыт приветствуется.

 , ,

pihter
()

Посоветуйте копеечный USB осциллограф (можно DIY)

Сабж.

Заодно и софт. Про sigrok знаю, даже пользуюсь, но в смысле осциллографа он как-то бледненько.

Советуйте кто во что горазд, кто что пробовал, даже всякий смех типа ftdi-based советуйте, если у кого опыт есть.

Цель: оглядеться в этом вопросе не просто по гуглу, а на реальном опыте. Ну и есть потребность в нескольких штуках для полуигрушечных целей. А может и себе прикуплю какой повзрослее, если понравится и не пожалею денег.

 , ,

pihter
()

RSS подписка на новые темы