LINUX.ORG.RU

Сообщения PPP328

 

Как кушать вилкой. ... или о fork() в двух словах

Статьи — Разработка

Статья о создании процессов в Linux

( читать дальше... )

 

PPP328
()

Просьба увеличить лимит размера для статей

Форум — Linux-org-ru

Хочу запостить техническую статью в «Статьи», но она говорит что таких больших парней у нее не было и отказывается.

Сохраненный бекап показывает 77 КБ. Полагаю что лимит сейчас 64, т.к. в процессе использовал предпросмотр и ближе к концу только начало ругаться.

Можно попросить увеличить хотя бы до 128 КБ? Изменение не такое большое, но плюс минус читаемые за час статьи влезут.

Ну и да, чего не хватало в процессе:

  • Вставка изображений в середину - схемы, иллюстрации.
  • Superscript. Камон, у нас на техническом ресурсе нет базового средства форматирования? Пришлось копировать из charmap.

Мм.. @maxcom?

 

PPP328
()

А почему никто не обсуждает новый Perl?

Форум — Talks

Там вроде новая версия перла вышла (5.38), правда на самом сайте все ссылки на старую версию ведут, но это неважно.

Анекдот вот в чем:

добавлена новая переменная окружения PERL_RAND_SEED, через которую можно выставить свою затравку для генератора псевдослучайных чисел (например, для достижения повторяемого поведения во время тестирования);

Господа, а не дыра ли это в безопасности? Причем такая, что сквозь неё круизный лайнер в обнимку с субмариной проплывет. Помнится в Debian был срач на тему того что починили UB в openssl, сделав рандомайзер более предсказуемым, а тут из коробки средство, которое делит все эти ваши алгоритмы безопасности на ноль.

 ,

PPP328
()

Ищем С-программиста

Форум — Job

Кто мы:

Продуктовая компания, команда профессионалов, сплоченных общими идеями и целями. С 2013 года мы помогаем кинотеатрам работать эффективнее, радовать зрителей качественным контентом и сервисом. Автоматизируем кинопрокатный бизнес с помощью интернет-проектов, интранет-систем, мобильных приложений и программно-аппаратных решений.

С 2017 года входим в группу компаний Rambler Group

В компании открылась вакансия программиста С

От тебя потребуется:

  • Опыт разработки на С/С++ на Linux от года (C в приоритете);
  • Опыт разработки сетевых приложений, знание сетевого стека;
  • Базовые знания устройcтва *nix систем;
  • Умение работать со скриптовыми языками;
  • Знание системы контроля версий.

Плюсом будет:

  • Опыт работы с удаленными устройствами через TCP+binary/HTTP/SOAP/MODBUS;
  • Опыт работы с Perl;
  • Умение соответствовать стандартам безопасности MISRA C/NASA JPL;
  • Умение работать с системами отладки и анализа (GDB, Callgrind, Memcheck, Valgrind, CPPcheck, scan-build);
  • Умение работать с SQL базами;
  • Опыт разработки Windows приложений.

Гарантируем:

  • Интересные задачи, простую и прозрачную систему организации работы;
  • Стабильно высокую заработную плату, постоянные индексации;
  • Оплачиваемое обучение, участие в профильных конференциях;
  • ДМС (со стоматологией);
  • Возможность удаленной работы;
  • Дружный коллектив единомышленников;
  • Перспективы профессионального и карьерного роста;
  • Оформление по ТК РФ с первого дня;
  • Своя кухня, чай/кофе, печеньки, мюсли для приятного и уютного перерыва;
  • Корпоративные праздники и спортивные тренировки.

Зарплатная вилка 140 000+

Удаленка и офис

  • Офис находится в Ростове-на-Дону, центр
  • Удаленная работа более чем возможна, часть команды базирована в СНГ (Узбекистан/Кыргызстан/Грузия/etc).

Какие проекты ждут в команде:

  • Удаленная доставка контента в КТ
  • Удаленное управление устройствами КТ, начиная от кинооборудования и заканчивая камерами в зале
  • Работа с кассовыми терминалами всех мастей
  • Программирование систем управления защищенного проектора
  • Редкие, но интересные side-квесты вроде «написать программный аналог платы управления древнего авиасимулятора» или «написать программу синхронизации контента для разнесенных видеопанелей в виде мозаики»

Как связаться:

  • HH
  • Email (с пометкой «Вакансия Программист С»)

 , , ,

PPP328
()

Откуда такой поток элементарных вопросов?

Форум — Talks

Весь Development/Desktop забит элементарными вопросами типа «я программист, как учить си» или «я админ, что такой dmesg?». Сессии должны быть уже сданы, у школьников каникулы, так откуда вдруг нахлынувший поток настолько низкоквалифицированных вопросов?

Про админство кто-то предлагал вариант что из-за политики Минцифры по поводу регистрации ПО (то, что оно теперь должно работать на ру-ОСях типа Астры) появились элементарные вопросы по Linux. А программирование тогда откуда?

 ,

PPP328
()

Как насчет добавить в правила запрет на ChatGPT

Форум — Linux-org-ru

В ответах. ГПТ чаще всего генерирует правдоподобный, но бред, чем занижает ценность ответа до отрицательных величин.

 

PPP328
()

Я поломав ЛОР

Форум — Linux-org-ru

Я всего лишь хотел посмотреть, за что забанили метапрога, а оно сломалося: https://www.linux.org.ru/forum/development/16803006/1

PreparedStatementCallback; SQL [SELECT * FROM (SELECT DISTINCT ON(id) * FROM (SELECT t.userid as author, t.id, lastmod, t.stat1 AS stat1, g.id AS gid, g.title AS gtitle, t.title AS title, comments.id as cid, comments.userid AS last_comment_by, t.resolved as resolved,section,urlname,comments.postdate as comment_postdate, sections.moderate as smod, t.moderate, 
...

К сожалению, произошла исключительная ситуация при генерации страницы.

Произошла непредвиденная ошибка. Администраторы получили об этом сигнал.

 ,

PPP328
()

А почему никто не делает беспроводные Jack-connected наушники?

Форум — Talks

Ну в плане не у всех есть bluetooth, а у кого есть часто работает криво, USB-наушники требуют дров, почему бы не делать свисток, который втыкается в jack, а сами уши - беспроводные?

 , ,

PPP328
()

Попросить make/cmake/bat забрать объектные файлы из какой-то директории

Форум — Development

Привет!

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

  1. Выделить код в отдельные файлы
  2. Написать make-файл чтобы он компилировал их в .o в отдельный каталог
  3. Создать инструкцию для разработчиков как попросить их make инклуднуть мои объектники.

1 и 2 в принципе ерунда. Задумался над 3. А если у них не make? А если cmake? Кто может подсказать, что мне написать в инструкции (какие-то минимальные действия) чтобы не сильно напрягать человека когда он будет использовать мой проект?

В конкретно для 6502 всё очень плохо в плане качества кода и разработок, поэтому каких-то стандартных make-файлов или сред нет.

Вот, что используют пара проектов этой направленности при работе с объектниками:

$(NAME).nes: $(NAME).o crt0.o $(CFG)
	$(LD65) -C $(CFG) -o $(NAME).nes crt0.o $(NAME).o nes.lib -Ln labels.txt --dbgfile dbg.txt
	rm *.o
	@echo $(NAME).nes created

```bat
@del example.o
@del example.nes
@del example.map.txt
@del example.labels.txt
@del example.nes.ram.nl
@del example.nes.0.nl
@del example.nes.1.nl
@del example.nes.dbg
@echo.
@echo Compiling...
cc65\bin\ca65 example.s -g -o example.o
@IF ERRORLEVEL 1 GOTO failure
@echo.
@echo Linking...
cc65\bin\ld65 -o example.nes -C example.cfg example.o -m example.map.txt -Ln example.labels.txt --dbgfile example.nes.dbg
@IF ERRORLEVEL 1 GOTO failure
@echo.
@echo Generating FCEUX debug symbols...
python example_fceux_symbols.py
@echo.
@echo Success!
@pause
@GOTO endbuild
:failure
@echo.
@echo Build error!
@pause
:endbuild
#!/bin/sh

ca65 crt0.s
cc65 -Oi example1.c --add-source
ca65 example1.s 
./cc65/bin/ld65 -C nrom_128_horz.cfg -o draw25.nes crt0.o example1.o runtime2.lib 

 , ,

PPP328
()

Уведомления вешают хром

Форум — Desktop

Xfce, xubuntu 20.04. При появлении любых системных уведомлений (изменение яркости, изменение уровня звука) хром практически зависает - видео фризится пока уведомление не исчезнет, контекстное меню не появится, страница не прокручивается.

В других приложениях такой проблемы нет.

Как диагностировать\лечить?

Хром 108, появилось после обновы хромого, откатиться обратно эта скотина не умеет - требует ее обновить в агрессивной манере.

Обновил до 109го, проблема все еще присутствует. Не набирается текст, не наживаются кнопки, пока уведомление не уйдет.

Вообще выглядит как вот этот баг: https://github.com/electron/electron/issues/14006

Полуркал по интернетам, пишут что помогает установка notify-osd. Поставил, ребутнул. Вроде проблема ушла.

 ,

PPP328
()

Что сегодня есть чтобы скачать сайт?

Форум — Desktop

Есть сайт с технической инфой, использует MediaWiki. Есть боязнь, что выпилится в ближайшие несколько лет, а информация нужна.

Как его адекватно скачать чтобы локально можно было использовать? Не обязательно в html, главное чтобы работали кросс-ссылки и можно было смотреть изображения.

 

PPP328
()

Перехватить нажатие на [Х] дочернего приложения

Форум — Development

Предположим что моя программа запускает другое GUI-ёвое приложение под X11. Я хочу чтобы при нажатии на [X] не закрывалось окно приложения, а мне в материнскую программу прилетало абсолютно любого типа уведомление, НЕ закрывая при этом окно дочернего приложения.

Может ли Х11 предоставить мне такой функционал?

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

 

PPP328
()

Широкая зеленая полоса в VLC

Форум — Desktop

На свежеустановленной xubuntu 20.04 имею проблемы при воспроизведении видео в vlc - широкая зелена полоса вверху видео. В parole такого нет, так что дело не в видеофайле.

В гугле только проблемы с однопиксельной полоской внизу, а у меня тут ширина на четверть экрана с полупрозрачностью.

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

 

PPP328
()

Почему мануал mv не отображает его поведение?

Форум — Desktop

Что имеем в мануале:

NAME
       mv - move (rename) files

SYNOPSIS
       mv [OPTION]... [-T] SOURCE DEST
       mv [OPTION]... SOURCE... DIRECTORY
       mv [OPTION]... -t DIRECTORY SOURCE...

DESCRIPTION
       Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY.

Что имеем по факту:
Если не указывать опцию -T (про которую есть только скудное описание из которого ничего не понятно)


       -T, --no-target-directory
              treat DEST as a normal file

то mv меняет своё поведение исходя из наличия\отсутствия файлов.

  • Если DEST не существует, то mv переименует SOURCE в DEST
  • Если DEST существует, то mv переименует SOURCE в DEST/SOURCE

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

Где напоролся:
Запускал скрипт, который переименовывает директории согласно шаблону. Иногда попадаются директории, которые уже переименованы (DST=SRC, о чем я не знал), и вместо того, чтобы сказать мне, что, мол, там такой файл уже есть mv попытался поместить директорию в саму себя (SRC/SRC).

Это неочевидное поведение или в мане где-то между строк что-то всё же есть?

 

PPP328
()

Как перенести фильтры писем в thunderbird на другую машину?

Форум — Desktop

Есть около сотни фильтров для входящей почты (куда положить, кого отметить прочитанным, кого удалить). Надо перенести это на другую машину.

Руками займет несколько дней из-за абсолютно ущербного интерфейса добавления\редактирования фильтров.

Как это перенести на другую машину одним махом?

 

PPP328
()

После долгого простоя зависает Х11

Форум — Desktop

На 18.04 Xubuntu такого не было, на 20.04 стал замечать - памятью не течет, в dmesg всё нормльно, в логах иксов последнее:

[ 67580.195] (II) event22 - Telink Wireless Receiver Mouse: is tagged by udev as: Mouse
[ 67580.195] (II) event22 - Telink Wireless Receiver Mouse: device is a pointer
[ 67640.803] (II) event2  - Power Button: device removed
[ 67640.817] (II) event7  - Video Bus: device removed
[ 67640.841] (II) event0  - Sleep Button: device removed
[ 67640.898] (II) event5  - Elan TrackPoint: device removed
[ 67640.934] (II) event3  - AT Translated Set 2 keyboard: device removed
[ 67640.954] (II) event6  - ThinkPad Extra Buttons: device removed
[ 67640.977] (II) event24 - Integrated Camera: Integrated C: device removed
[ 67641.018] (II) event23 - Telink Wireless Receiver Consumer Control: device removed
[ 67641.033] (II) event25 - Telink Wireless Receiver System Control: device removed
[ 67641.061] (II) event26 - Telink Wireless Receiver: device removed
[ 67641.077] (II) event27 - Integrated Camera: Integrated I: device removed
[ 67641.121] (II) event22 - Telink Wireless Receiver Mouse: device removed
[ 67641.165] (II) AIGLX: Suspending AIGLX clients for VT switch

Пришибил через tty фоновые хромак и телегу - не помогло. xfce4-panel -r - не помогло. Видимо что-то с самими иксами, мышка переходит в «задумчивую» анимацию и клики не проходят.

Помог рестарт иксов через

sudo service lightdm restart

Как диагностировать? Какие логи смотреть? Пока не ребутал машину.

Могу предположить, что криво включилась блокировка экрана или заставка из-за простоя. Отрубил обоих, буду наблюдать. Всё равно интересно, куда можно копнуть.

UPD: Логи journald: https://pastebin.com/td0Ab21i

 ,

PPP328
()

Вроде обещали прикрыть лавочку с перехватом запросов в Chrome, как там сейчас?

Форум — Desktop

Вроде ж с полгода-год назад говорили что перестанут работать uMatrix и все кто работает подобным образом, потому что Google закручивает гайки.

Как там сейчас? У меня сейчас версия прошлого года, боюсь обновлять потому что (?) отвалятся umatrix и ublock.

 , ,

PPP328
()

Какие есть IDE/редакторы кода с поддержкой ASM?

Форум — Development

Хочу пописать под 6502, у него кастомный набор инструкций, поэтому, скорее всего нужно будет отредачить файл подсветки.

Хочу:

  • Поддержка CTRL+Click на название метки
  • Подсветка синтаксиса и комментов
  • (опционально) Описание оператора при наведении (полезно если забыл как работает)

Готов написать правила подсветки\описания ручками сам, подскажите кто и в каком формате это сожрет.

Кнопка\клавиатурное сочетание для Build/Run - большой бонус.

Я пробовал прикручивать подсветку ASM для QtCreator - получается шлак. Он банально не умеет вообще ничего кроме как подсвечивать, а с этим и mousepad справляется.

Почему хочу IDE - не хочу колхозить систему сборки на скриптах, постоянно редактировать руками make с его инопланетным синтаксисом - фэ. automake/cmake еще инопланетнее. У IDE обычно есть фича как «файл проекта», где хранится вся инфа о списке файлов и как их компилить

 6502, , ,

PPP328
()

Есть ли готовые утилиты для анализа сишного кода на неиспользуемые сущности?

Форум — Development

Положим что есть какой-то старый легаси проект где куча модулей, перечислений, структур и типов. Положим что у нас есть цель отрефачить его.

Оптимально было бы сначала запустить какую-нибудь утилу, которая сказала бы «перечисление aaa не используется в проекте» и мы такие - круто, удаляем из кода, чтобы не мешало восприятию. Или «функция bbb не используется в проекте» и мы такие - ваще кайф, минус 2500 строк кода.

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

Есть что-то готовое чтобы не городить огород?

 , , ,

PPP328
()

Очередное решето

Форум — Talks

https://github.com/torvalds/linux/tree/8bcab0346d4fcf21b97046eb44db8cf37ddd6da0
Ъ:

hey guys its me linus torvalds, author of the smash hit linux. yes its me you can look at the url of the repo and the thingy at the top of the files it proves its 100% me.

i deleted linux because i hate it now i think it sucks. you should go use this awesome os its called windows xp i just discovered it its great

Немного подробностей: https://news.ycombinator.com/item?id=24976138

До того как мегабаксы купили хаб такой бурни не было.

 , ,

PPP328
()

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