Linux для amlogic s905x3

О чем тут написано

Сборка образа Armbian для TV-Box HK1

Сама плата HK1 естественно не поддерживается дистрибутивом, но построена на поддерживаемой платформе Amlogic S905X3 (meson-sm1).
Чип на моей платформе обозначается как meson-sm1. Чтобы собрать образ под этот чип над найти наиболее похожую плату из списка имеющихся. Для этого в директории, куда скачали репозиторий armbian выполняем:

На данный момент наиболее похоже на то что мне нужно выглядит файл odroidc4.conf.
Собираю Ubuntu 20.10:

На моем ноуте с процессором Ryzen 4800H сборка в докере идет 47 минут (с учетом выкачивания всех зависимостей, канал 100Мбит/с), а после выкачивания зависимостей — 8 минут.
После того, как я подключился к консоли, дождался загрузки android’а, подключил флешку с файлом образа и выполнил:

Бокс ожидаемо окрипичился :))) с таким сообщением (среди прочих):

Судя по всему это значит, что параметры инициализации памяти, которые есть в новом загрузчике не подошли к моей железке. Вот тут: https://github.com/3F/aml_s905_uboot я нашел как можно их взять из старого загрузчика и добавить в новый. План был такой — с помощью Amlogic USB Burning Tool я прошью старую прошивку, а дальше — выдеру старого бутлоадера параметры для инциализации памяти. НО это не понадобилось!!
Оказалось, кнопка Reset на моей коробке не работает (она в разъеме 3,5мм) и воспользоваться Amlogic USB Burning Tool я не смогу. После подключения коробки USB-шнурком A-A к ноуту и подаче питания при зажатой (предполагаемой) кнопкой Reset в настольной системе новое USB-устройство не появлялось, а в консоли всё тот же boot loop.
Я внимательно изучил печатную плату возле чипа флешки, а также на обратную исторону и увидел пару контактных площадок.
Терять было нечего — с помощью dd я залил на SD-карту в самое начало карты старый bootloader (слава богу я сохранил все разделы со старой прошивкой), вставил в коробку SD-карту, подал питание и замкнул контактные площадки на обратной от чипа флехи стороне платы отверткой.
Вместо таких сообщений в начале лога:

Внезапно — она не нашла встроенный NAND-flash, но нашла опреативку, SD-карту и сначала загрузилась старым бутлоадером:

Затем прошло что-то похожее на тестирование RAM, а потом — я увидел загрузку нового U-Boot:

Эксперименты показали, что держать замкнутыми контакты нужно до момента появления строк:

А прд ними будет счетчик.
Затем — я извлек карту памяти и выключил-включил коробку — пошла загрузка с новым U-Boot со встроенной флеш-памяти и далее при включении коробки (без карты памяти) стабильно запускался новый U-Boot (что уже неплохо).
Дальше — я залил на карту пямяти собранный образ Armbian:

вставил карту в коробку и включил. Началась загрузка с карты памяти. Сначала мне показалось, что ядро пока не стартует я видел только сообщение:

и дальше пусто. В конфиге build/config/bootscripts/boot-odroid-c4.ini указано устройство консоли ttyS0, а должно быть наверное ttyAML0 Но, судя по тому что моргание светодиодов у коробки стало другим было похоже, что что-то там загружалось и через некоторое время увидел вот такое:

и дальше — приглашение ввести новый пароль!! Система смогла нормально загрузиться с SD-карты. Потом я выключил бокс, вытащил карту и система уже нормально загрузилась с внутреннего накопителя. Armbian сам себя установил. А отсутствие сообщений при загрузке ядра — это сокрее всего некорректные параметры запуска ядра.
К сожалению, в системе оказался не виден беспроводной модуль (наверное загружается не подходящий dtb).

В итоге порядок установки Armbian на HK1BOX вышел такой:

Немного осмелев и поняв, что убить коробку совсем не так уж просто я залил всю внутреннюю флеху нулями и повторил установку. Всё заработало.

Проблемы

не загружается при отсоединенной последовательной консоли

U-Boot не загружает систему, если отключена консоль (кабель физически не подключен).
При подключении кабеля rs-232 в момент “зависания” там видно приглашение консоли U-Boot. Всё выглядит так, как если бы загрузка прервалась по нажатию клавиши.
При нажатии Enter в консоли U-Boot должна выполниться последняя команда, но там в последней команде обычно бывал какой-то мусор, причем довольно часто разный.
Я сделал вывод, что скорее всего консоль не притянута к +3.3 и “шумит” — то есть самопроизвольно льет всякий мусор в RX. Выход — в коробке между выводом V (3.3V) и RX припаять резистор 47-100кОм.
И это помогло. Теперь всё нормально загружается.

Не смог загрузить образ

Не смог загрузить образ, собранный вот так:

Хотя вот такой вариант грузился норм:

Хотя имеет проблемы с работой systemd и других программ. Веротяно — дело в версии glibc или других библиотек. В итоге сейчас нормально заработал такой:

Загрузка с sd-карты для переустановки системы

В скриптах загрузки U-Boot из Armbian обнаружил, что можно переключать загрузочные устройства — практически как в BIOS ПК.
Для того, чтобы стартануть с SD-карты нужно в консоли U-Boot выполнить:

Убедиться, что под номером 0 видна SD-карта. И затем загрузиться с нее:

Предполагается, что на SD-карте будет образ, совместимый с текущими скриптами U-Boot.

fdt задан в U-Boot

В параметрах U-Boot жестко приписан путь к dtb

И на девайссе HK1BOX с этим dtb не заработал Wi-Fi. Я просто скопировал под этим именем dtb, с которым все работает, перезагрузился и Wi-Fi появился:

Раскирпичивание

Специально ради эксперимента я залил нулями весь внутренний флеш.
Восстановить коробку удалось так:

То есть фактически грузим систему с SD-карты.

НЕАКТУАЛЬНОЕ

Всё что написано ниже — заметки о моих первых попытках что-то залить в TV-Box HK1. Оно не очень уже актуально, но может кому-то поможет.

Как загружаться

В итоге файлик получается такой (если убрать все закоментированные строки:

На самом деле это скрипт. Фактически, если отбрсить всякие if-then он делает следующее:

Читайте также:  Как запустить скрипт windows powershell

разобратьэто все, можно если выполнить команду

и начать копать.
Загрузка начинается с выпонения того, что написано в bootcmd. Чтобы printenv выводил длинные строки целиком необходимо в терминале включить wrapping в minicom это можно сделать нажав Ctrl-A, затем Z и затем W.

Нормально подошел meson-sm1-khadas-vim3l.dtb с образа Armbian_19.11.5_Arm-64_eoan_current_5.5.0-rc6_20200127.img
А вот результаты тестирования некоторых других dtb:

Чтобы после установки на emmc логи systemd сыпались в консоль нужно дописать в строку запуска ядра в файлике /boot/uEnv.txt параметр systemd.log_target=console:

HK1 Box

Отказалась загружаться с образа Armbian_19.11.3_Aml-g12_eoan_legacy_5.3.0_20191126.img как с SD-карты, так и с двух портов USB. Это значит, что для того, чтобы загрузить ее с внешнего носителя нужно изменить настройки загрузчика U-Boot.

Поэтому — следуем мануалам armbian. Вставляю карточку с armbian, загружаюсь в Android , иду в Apps, нахожу там Update, кликаю UpdateLocaleSelect, выбираю BOOT/aml_autoscript.zip, и кликаю Update. Система перезагружается и я вижу меню bootloader‘а и ошибку:

Этот скрипт должен был скорректировать параметры загрузки U-Boot и позволить загрузиться с sd-карты, однако, судя по всему, установка неподписанных обновлений запрещена, поэтому нужно подключиться к консоли.

Подключение к отладочной консоли RS-232

На плате оказались “пятачки” с обозначениями ‘V R T G‘ — видимо консоль. Я откопал старинный провод USB-COM на базе pl2303, с помощью которого я когда-то подключал Siemens ME45 к компу для выхода в интернет, припаял к плате TV-Box‘а три проводочка — G (земля), R и T (прием и передача) и запустил minicom:

При включении TV-Box‘а в консоли minicom побежали сообщения.

Для того, чтобы прервать загрузку и скорректировать параметры загрузки нужно понажимать пробел и появится приглашение консоли U-Boot:

Теперь можно поглядеть текущие параметры загрузки. Чтоы длинные строки можно было увиждеть целиком — включаем перенос (Ctrl+a w).

Если при вставленной SD-карте выполнить:

то успешно загружается в память ядро — файлик zImage с первго раздела вставленной SD-карточки:

В данном случае 1080000 — это значение переменной loadaddr из вывода printenv.

Для того, чтоб запустить какое-либо cтороннее ядро нам нужен образ ядра и файл dtb (DeviceTreeBlob). Ядро у нас есть (на карте памяти), а dtb нужно либо скомпилировать, либо — извлечь.
Вот # cat /proc/cmdline

С работающего андроида

Извлечение dtb (DeviceTreeBlob)

https://www.cnx-software.com/2014/05/12/how-to-extract-a-device-tree-file-from-android-firmware-files/
Чтобы извлечь dtb из текущей прошивки нужно сделать образ раздела boot или recovery и распаковать его с помощью утилиты split_bootimg.pl. У меня не получилось распаковать образ раздела boot (распаковывался неполностью), но нормально распаковался образ раздела recovery.
Для этого:

Кстати, извлечь этот файлик с помощью стандартных утилит android_bootimg_tools не удалось. RamDisk и kernel извлекаются, а вот третий файлик — нет!

Нужный нам файлик — recovery.img-second.gz
Убедиться, что полученный файлик — это dtb можно, декомпилировав его. Как это сделать — написано ниже.

Изменение аппаратных настроек в файле dtb с помощью DTC

Изменение объема памяти, выделенной видеоадаптеру

Вот в таком кусочке кода (параметр size):

Задается объем памяти, выделенной видяхе. В данном случае выдляется 32Mb.

Изменение доступного объема RAM

Загрузка

Последние эксперименты

Настройки (bootargs и dtb) лежат в файлике uEnv.txt

В оригинале загружается содержимое раздела boot и хапускается, а там указан androidboot.dtbo_idx.

Вероятно, можно просто перепаковать. boot.img — https://www.whitewinterwolf.com/posts/2016/08/11/how-to-unpack-and-edit-android-boot-img/
Или просто добавить этот параметр к строке запуска ядра как тут:

Ошибки

Если появляется сообщение:

Значит нужно задать переменную androidboot.dtbo_idx:

Значение которой видно при распаковке boot.img:

УДАЛОСЬ ЗАГРУЗИТЬСЯ

Запустить скрипт путем update не удалось (т.к. он не подписан), однако, после пристального изучения вывода printenv оказалось, что его успешно запускает команда recovery_from_sdcard, прописанная в env U-Boot. То есть — готовим флеху, в консоли RS-232 жмем пробелы и в ответ на приглашение U-Boot вводим такое:

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

Источник

Создатель сборок Armbian объявил войну Amlogic

Для «Ъ»: у мужика случился приступ идиотизма, и он решил создать проблемы пользователям устройств с чипами Amlogic. Ещё и пригрозил анальными карами за альтернативные сборки.

Вообще это давно известно было. Я ещё когда устанавливал armbian на Amlogic 905×3, там было написано что никакой поддержки для Amlogic, только ванильное ядро. И потом не будет работать, потому что Amlogic болт на них клали, и никак не помогают, а только мешают им.

Он вроде Rockchip рекомендует, и они сотрудничают… Имеет полное право. Как другие имеют полное право класть болт на пользователей Nvidia.

Или другие кладут бот на AMD + OpenCL и говорят у нас только Cuda.

Это Opensource, и чтобы твоё железо поддерживали ты должен договариваться.

Одно дело – не поддерживать, и совсем другое – вредить пользователям. А именно это balbes150 и собирается делать.

И как он собирается вредить пользователям?

Ванильный Arch Arm или любой другой дистрибутив, точно также не встанет на случайный TVBox. (например поддерживаются всего лишь две платки от amlogic https://archlinuxarm.org/platforms/armv8/amlogic)

Ещё раз, дистрибутивов под Arm выше крыши, Amlogic может связаться с каким-нибудь Manjaro Arm и вместе выкатить сборки для девайсов, но им плевать на Linux, им важен только Android.

Armbian может поддерживать любой набор плат, который захочет.

И как он собирается вредить пользователям?

Вижу, вы «Ъ», ничего не читали.

In all new versions of images and the kernel, I will add various security mechanisms that will create serious problems, including hardware problems and hardware failure.

А вы прочитали, и при этом приняли предупреждение за угрозы?

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

Предыдущие версии бесплатны и исходники доступны, вперёд поддерживать форк.

Да кому оно надо…

Лучший дистрибутив для Orange Pi

Суть срача для Ъ: чувак, делавший сборки armbian для некоторых amlogic девайсов, решил внедрить вредоносный код в свои прошивки, который будет препятствовать использованию его на остальных девайсах amlogic. Делает он это потому что считает что его прошивки «пиратят» китайцы.

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

Читайте также:  Windows пишет класс не зарегистрирован

Всё я читал. Новые версии под Amlogic будут только платные, и с защитой

Трололо. Новые версии чего, пардон? Ядра? А GPL-ем по щам он получить не хочет?

ну справедливости ради, gpl не запрещает продавать бинарники, нотребует предоставить исходники изменений и право распространять их далее на условиях gpl

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

Я про «защиту». Любая «защита» обычно предполагает, что исходников ты не получишь, иначе защиту можно элементарно выпилить и выложить исправленные исходники. А за это уже можно и GPL-ем по щам.

для того, чтобы выпилить и выложить — придется китайцам этим постоянно заниматься, держать свою собственную инфраструктуру сборки, самим выкладывать бинарники, самим тестировать (потому что неясно, где и какие там закладки). Что ему собственно и надо — чтобы конкуренты перестали иметь возможность использовать его сборку как есть

какие проблемы бойкотировать амлогик?

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

а amlogic то тут при чем?

Меня больше удивляет неожиданная популярность этого поделия среди любителей ковырять одноплатники. Armbian же всегда был кривым болгеносом, в ядро которого по рандому фигачат полурабочие (иногда — нерабочие) патчи.

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

Самое геморное в прошивках всяких специализированных arm — это драйвера ядра и иногда загрузчик. При этом что линукс, что uboot не разработаны им с нуля, максимум он туда патчи мог накладывать.

А прошивка в сборе тут вообще мелочи, тем более что он в своем репозитории (https://github.com/150balbes/Build-Armbian) явно указал GPLv2, а точнее не он указал, а сообщество armbian, а он вправе распространять свою производную работу дальше только на условиях GPLv2

И вот выходит интересная история: вот есть прошивка, она распространяется на условиях GPLv2, какие-то китайцы честно ее используют в своих девайсах, но тут этот balbes150 агрится со словами ПИРААААТЫ! НЕ ЗАПЛАТИЛИ! И внедряет злонамеренный код. Т.е. по факту он запрещает использование своей работы. Хотя лицензия требует, чтобы он разрешал. Тут вообще GPL-violation попахивает а также созданием злонамеренного ПО

Бинарник — это интеллектуальная собственность собравшего, причем на неё вообще никак не распространяется GPL никакой версии, GPL — о предоставлении исходников и патентов

Исходники «злонамеренного» кода (на самом деле не злонамеренного, а осуществляющего device lock, это обычная мера в мире копирастии), скорей всего, он может предоставить легко. Заметь, что в GPL указано наличие исходников самой программы — ты не обязан делать эти исходники понятными или раскрывать скрипты сборки бинарника. Чтобы следить за этими мутыми опасными нисходниками амлогику придется выделить под это отдельных разработчиков и постоянно сидеть на измене — а вдруг чего пропустили. Что, собственно, уже вполне достаточно, чтобы превратить их в жизнь ад, что и требовалось.

причем на неё вообще никак не распространяется GPL никакой версии

Распространяется. Читай текст GPL. Он создал производную работу от GPL-софта и распространяет в виде бинарника и исходника.

не поддерживают опенсорс

Если он не сам с нуля написал скрипт сборки, а использовал за основу готовый скрипт из armbian, то на этот скрипт тоже действует лицензия GPL

Далее, он на форуме называет создателей сторонних железок, использующих его прошивку, «пиратами», т.е. нарушителями лицензии. Тем самым он запрещает им использовать свой код, хотя они честно получили его. И тем самым сам нарушает GPLv2

Любая «защита» обычно предполагает, что исходников ты не получишь, иначе защиту можно элементарно выпилить и выложить исправленные исходники.

Зачем так сложно? Просто сделать проверку подписи при загрузке ядра.

Так это про случай когда производитель не хочет чтобы на его девайсе запускали сторонние прошивки. А тут этот чудик не хочет, чтобы его прошивку запускали на других устройствах

Пока ещё ничего нет 🙂

Всё остальное только будущие намерения.

яке прикре самогубство (с)

Кстати, видимо он когда-то был на лоре 🙂

А тут этот чудик не хочет, чтобы его прошивку запускали на других устройствах

А… да и пошёл бы он лесом тогда, чо. Это как тупая драма с ZFS и Greg KH, который против ZFS и постоянно API меняет. В итоге-то всё решается парой патчей в дистре.

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

Про эти вопиющие факты мировое опенсоурс сообщество должно быть поставлено в известность.

Чо-то какое-то нелогичное поведение. Уменьшать пользовательскую базу из-за того, что китайцы как всегда что-то зажали… Они всегда это делали, а после появления среди ОС ублюдка под названием «Android» — это вообще неизбежное зло. Годным ответом была бы публикация сырцов ядра и проприетарных драйверов из утёкших говноSDK распространяемых тем же Amlogic под NDA — с огромной вероятностью они у автора имеются (без них очень тоскливо заводить систему на конкретной железке к которой толком нет документации).

Он реально балбес. Во тупооооой.

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

  • Во-первых, не навреди. Не париться добавлением кода для поддержки чего-нибудь или исправления давно существующего бага — одно, а активно тратить время на вредительство — совсем другое.
  • Во-вторых, если у тебя проблемы с китайцами, то и решай их с китайцами, что тебе пользователи навредили? А именно они словят больше всех багов и поломок.
  • В-третьих, вот где теперь гарантия, что вредительства не было раньше? Что всякие намеренные баги не позасунуты в код поддержки остальных плат, только никто об этом не знает?
  • В-четвертых, вот видный «член опенсорс-сообщества» выставил себя неадекватом. Вывод? Да они все, опенсорсники, чокнутые какие-то.

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

Читайте также:  Системная ошибка 1376 указанная локальная группа не существует windows 10

В данном случае китайцы даже ничего не зажали. Они просто взяли его прошивку и накатывают ее (почти) без изменений на свои девайсы. Просто они не платят ему денег.

что тебе пользователи навредили?

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

Пользователи готовы покупать лицензии на Linux 🙂

Introducing creeping errors / timebombs in systems is so anti-community/ OSS as it can be. I understand if you drop support, even drop it completely. It works, or it doesn’t work. If I had to pay you $10 for a license, I would do that, I have no problem with that. I have created a couple smaller OSS projects as well, and contributed to soma larger ones, but not spent nearly the amount of time you have. I understand the amount of effort that goes into OSS. But you destroying other peoples work because they used software based on Open Source if not a good thing to do, and might actually be illegal in many countries.

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

В данном случае китайцы даже ничего не зажали

Да неужели. Где сырцы драйвера AmlogicVE? Без полной поддержки VideoEngine Всё это TV будет работать в формате слайдшоу. Тем не менее, на s905x3 этот дистрибутивчик таки работает, и, видимо, неплохо, раз китайцы его на свои поделия ставят. Опенсорсно если что только MPEG1 и MPEG2 поддерживаются, что по нынешним временам вообще ни о чём.

Безотносительно идиотизма самой идеи «мстить китайцам за то что деньги не платят» и .удачества аффтара, мог бы и поадекватнее мстю придумать.

ARM всегда был токсичным и анальным, неудивительно что это заразно для разработчиков. Либо же, подобное тянется к подобному, и чувак не зря взялся за АРМ

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

Ваще не понимаю, как можно в современном мире, имея квалификацию, быть без денег. Да тебя возьмет в штат или на контракт большинство SoC-разрабатывающих контор!

Видимо, дело в головушке.

а при чем тут китайцы?

При том, они основные производители железок на Amlogic на которые они ставят Armbian и у них эти сырцы есть (потому что они крупные покупатели микрух, и таким SDK на микрухи дают даром), и они не поделились.

Ну так вероятно эти сорцы (если они у них вообще есть) не под gpl

Ну так вероятно эти сорцы (если они у них вообще есть) не под gpl

Не смеши. Когда это китайцев волновало?

В любом случае сорцы эти не принесут пользы тк их невозможно легально использовать, тк они будут нелегально получены

Но на деле все это вообще не имеет отношения к проблеме из поста

В любом случае сорцы эти не принесут пользы тк их невозможно легально использовать, тк они будут нелегально получены

Они ещё небось и коряво написаны. Поэтому использовать их не «невозможно», а «ненужно».

Их назначение — посмотреть в какие регистры чего и как писать, и как и куда данные пихать, чтобы всякие новомодные H264/VP9 работали, и потом написать всё с нуля по-людски.

Даже хрен с ней, с фирмварью, сырцов драйвера вполне достаточно.

Но на деле все это вообще не имеет отношения к проблеме из поста

Это имеет отношение к проблеме «возмездия». Наказывать юзеров вне зависимости от причины «возмездения» — идиотизм. Чем-то напоминает российские сракции, от которых пострадало исключительно население РФ.

Любители зондов должны страдать. Да зонды и в железе есть и это очень плохо, но всем пофиг.

Болгенос-ы не нужны, особенно когда их пилят дурачки и вредители.

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

а вот это уже тянет на производство внедоносного ПО. ст 273 ук рф. скорее всего в других странах аналогичные законы тоже есть.

нельзя просто так взять и пожечь чужие девайсы.

нельзя просто так взять и пожечь чужие девайсы.

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

Дебилы, которые сжигают свои девайсы/микроконтроллеры и прочее есть на каждом углу, нужно смотреть что ты прошиваешь и куда, и понимать что ты делаешь…

если там написано что это именно «бивас для твоей родимой видимокарты сказать безплатно без смс манькрафт лучи ускорение» и он ее убивает — то виноват будет распространитель.

закон не о возможностях ПО по убиванию, а по санкционированию этого убивания.

т.е. сама програмка «format c:» Не является вредоносной, это системные средства сервисные утилиты. ты сам запускаешь ее осознанно именно для создания раздела (и попутно «уничтожения данных»* если они там были).

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

если ты делаешь и распространяешь васян сборочку, которая при запуске на некотором железе наносит хоть какой-то имущественный вред (неважно порчу данных или реально повреждение типа сгорания и прочего выхода из строя компонентов) — то хоть 10 дисклеймеров напиши и у нотариуса вместе с конечным пользователем заверь — по местным законам ты будешь виноват.

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

Источник

Оцените статью