Рон: Ну, це було пів години тому, бо пів години сигнал летить туди і пів години назад. З цими розрахунками часу все стає дуже дивним, розумієш? Тож фактично - так, це було годину тому.
Адам: А як це працює? Як ви з ним комунікуєте?
Рон: Гарне питання. Ти знайомий із Python, так?
Адам: Так.
Рон: Коли ти програмуєш на Python, у тебе є REPL - read-eval-print-loop. Тобто ти можеш програмувати інтерактивно, а не лише записувати код у файл і запускати його як звичайну програму. Так от, LISP був піонером цього підходу. Звичайний спосіб взаємодії з LISP - через REPL. Це була перша мова з такою можливістю, і протягом десятиліть - єдина. Саме тому вона давала величезну перевагу на ранніх етапах.
І в нас був REPL, що працював безпосередньо на космічному апараті. Ми могли взаємодіяти з апаратом через цей REPL. Але доступ до нього не означав, що можна просто сісти за термінал і щось надрукувати, бо щоб зв’язатися з цим REPL, потрібно було проходити через Deep Space Network і враховувати годинну затримку сигналу туди й назад.
Тож на практиці процес виглядав так: ми сиділи в конференц-залі, ламали голову, сперечалися й намагалися вирішити, які команди надіслати. Зрештою доходили згоди щодо пакета команд, який слід відправити. Потім ці команди проходили процедуру перевірки, що включала кілька рівнів керівництва - і всі вони мали це схвалити.
Після затвердження пакет передавався оператору, спеціально навченому працювати з Deep Space Network. Він сідав за консоль, підключену до мережі, вводив ці команди і натискав велику червону кнопку, щоб надіслати їх на космічний апарат.
Сигнал ішов із консолі в будівлі JPL через спеціальну виділену дротову мережу до однієї з антен Deep Space Network. Таких антен у світі три - щоб забезпечити покриття всього неба.
Це гігантські 70-метрові антени - справді величезні інфраструктурні об’єкти. Я, чесно кажучи, не знаю всіх деталей того, що відбувається на самій станції - чи є там ще людина в процесі, чи все автоматизовано. Але зрештою сигнал виходить із цієї величезної 70-метрової антени й летить крізь космос зі швидкістю світла. Його приймає антена на борту космічного апарата, він проходить через складну систему декодування, перетворюється на біти, і ці біти потрапляють у LISP-систему так, ніби ти фізично сидів за терміналом і вводив їх із клавіатури.
Це був дуже формалізований і складний процес: люди в гарнітурах, як у кіно, проходили через чітку процедуру - "ми зараз надішлемо цю команду на космічний апарат", хтось інший відповідав: "так, вам дозволено надсилати команду".
І зрештою хлопець, який сидів за консоллю, натискав велику червону кнопку - і ми знову сиділи й чекали на результат. Потім дивилися на отримані дані й повторювали весь процес спочатку.
Адам: Це божевілля. Ви що, надсилали туди якесь велике дерево LISP-виразу чи як?..
Рон: Так. Ми надсилали S-вирази.
Адам: А що саме ви йому казали? Ви казали йому перезавантажитися? Він же активно працює. Що ви робите?
Рон: Перше, що ми йому сказали, - це надіслати нам backtrace. Тобто дамп стану системи: усіх процесів, що виконуються. Процесів, які чекають на якусь подію - і на що саме вони чекають. Це було перше, що ми зробили. Ця інформація повернулася, ми її переглянули - і практично одразу стало зрозуміло, що відбувається, бо був один процес, який чекав на подію, що вже мала статися. І це стало великою підказкою.
У підсумку виявилося, що проблема таки була в race condition - умові гонки, яка, як вважалося, була неможливою.
Адам: А як це працює? Як ви з ним комунікуєте?
Рон: Гарне питання. Ти знайомий із Python, так?
Адам: Так.
Рон: Коли ти програмуєш на Python, у тебе є REPL - read-eval-print-loop. Тобто ти можеш програмувати інтерактивно, а не лише записувати код у файл і запускати його як звичайну програму. Так от, LISP був піонером цього підходу. Звичайний спосіб взаємодії з LISP - через REPL. Це була перша мова з такою можливістю, і протягом десятиліть - єдина. Саме тому вона давала величезну перевагу на ранніх етапах.
І в нас був REPL, що працював безпосередньо на космічному апараті. Ми могли взаємодіяти з апаратом через цей REPL. Але доступ до нього не означав, що можна просто сісти за термінал і щось надрукувати, бо щоб зв’язатися з цим REPL, потрібно було проходити через Deep Space Network і враховувати годинну затримку сигналу туди й назад.
Тож на практиці процес виглядав так: ми сиділи в конференц-залі, ламали голову, сперечалися й намагалися вирішити, які команди надіслати. Зрештою доходили згоди щодо пакета команд, який слід відправити. Потім ці команди проходили процедуру перевірки, що включала кілька рівнів керівництва - і всі вони мали це схвалити.
Після затвердження пакет передавався оператору, спеціально навченому працювати з Deep Space Network. Він сідав за консоль, підключену до мережі, вводив ці команди і натискав велику червону кнопку, щоб надіслати їх на космічний апарат.
Сигнал ішов із консолі в будівлі JPL через спеціальну виділену дротову мережу до однієї з антен Deep Space Network. Таких антен у світі три - щоб забезпечити покриття всього неба.
Це гігантські 70-метрові антени - справді величезні інфраструктурні об’єкти. Я, чесно кажучи, не знаю всіх деталей того, що відбувається на самій станції - чи є там ще людина в процесі, чи все автоматизовано. Але зрештою сигнал виходить із цієї величезної 70-метрової антени й летить крізь космос зі швидкістю світла. Його приймає антена на борту космічного апарата, він проходить через складну систему декодування, перетворюється на біти, і ці біти потрапляють у LISP-систему так, ніби ти фізично сидів за терміналом і вводив їх із клавіатури.
Це був дуже формалізований і складний процес: люди в гарнітурах, як у кіно, проходили через чітку процедуру - "ми зараз надішлемо цю команду на космічний апарат", хтось інший відповідав: "так, вам дозволено надсилати команду".
І зрештою хлопець, який сидів за консоллю, натискав велику червону кнопку - і ми знову сиділи й чекали на результат. Потім дивилися на отримані дані й повторювали весь процес спочатку.
Адам: Це божевілля. Ви що, надсилали туди якесь велике дерево LISP-виразу чи як?..
Рон: Так. Ми надсилали S-вирази.
Адам: А що саме ви йому казали? Ви казали йому перезавантажитися? Він же активно працює. Що ви робите?
Рон: Перше, що ми йому сказали, - це надіслати нам backtrace. Тобто дамп стану системи: усіх процесів, що виконуються. Процесів, які чекають на якусь подію - і на що саме вони чекають. Це було перше, що ми зробили. Ця інформація повернулася, ми її переглянули - і практично одразу стало зрозуміло, що відбувається, бо був один процес, який чекав на подію, що вже мала статися. І це стало великою підказкою.
У підсумку виявилося, що проблема таки була в race condition - умові гонки, яка, як вважалося, була неможливою.
👍5
Доказ і припущення
Адам: Але ж було доведено, що це неможливо, правда?
Рон: Було доведено, що це неможливо - але доказ спирався на припущення. А припущення полягало в тому, що під час програмування використовуються лише конструкції цієї спеціально розробленої мови. Тобто доказ стверджував: якщо ви використовуєте конструкції цієї мови, то deadlock’ів не буде.
Це приблизно як сьогодні в Rust є "безпечна" частина мови й "небезпечна". У нас фактично було щось подібне, але ми не сформулювали це так явно. І чого ми не передбачили - так це того, що був розробник, якому доручили написати частину коду…
Адам: Це той самий хлопець, якого Рон найняв і який сказав йому "йди куди подалі"?
Рон: і йому потрібно було реалізувати певну функціональність. Він не зміг зрозуміти, як зробити це за допомогою конструкцій нашої мови, тому просто викликав нижчорівневу конструкцію в LISP, щоб усе запрацювало. І цим він обійшов гарантії безпеки, які забезпечувала мова.
І це була моя помилка. Я не пояснив достатньо чітко тому хлопцеві, якого найняв і який працював під моїм керівництвом, що так робити не можна. Я просто сказав: ось що потрібно зробити - іди зроби. І він зробив. Але я не наголосив, що не можна виходити за межі конструкцій мови.
На свій захист скажу: це навіть не було в мене в голові як щось, що потрібно окремо проговорювати. Я думав, що він сам це зрозуміє. І, очевидно, з перспективи часу це було нереалістичне очікування. Я недостатньо чітко пояснив, що так робити не слід. І він це зробив - не його провина, а моя. Саме це й стало причиною помилки.
Адам: Але ж було доведено, що це неможливо, правда?
Рон: Було доведено, що це неможливо - але доказ спирався на припущення. А припущення полягало в тому, що під час програмування використовуються лише конструкції цієї спеціально розробленої мови. Тобто доказ стверджував: якщо ви використовуєте конструкції цієї мови, то deadlock’ів не буде.
Це приблизно як сьогодні в Rust є "безпечна" частина мови й "небезпечна". У нас фактично було щось подібне, але ми не сформулювали це так явно. І чого ми не передбачили - так це того, що був розробник, якому доручили написати частину коду…
Адам: Це той самий хлопець, якого Рон найняв і який сказав йому "йди куди подалі"?
Рон: і йому потрібно було реалізувати певну функціональність. Він не зміг зрозуміти, як зробити це за допомогою конструкцій нашої мови, тому просто викликав нижчорівневу конструкцію в LISP, щоб усе запрацювало. І цим він обійшов гарантії безпеки, які забезпечувала мова.
І це була моя помилка. Я не пояснив достатньо чітко тому хлопцеві, якого найняв і який працював під моїм керівництвом, що так робити не можна. Я просто сказав: ось що потрібно зробити - іди зроби. І він зробив. Але я не наголосив, що не можна виходити за межі конструкцій мови.
На свій захист скажу: це навіть не було в мене в голові як щось, що потрібно окремо проговорювати. Я думав, що він сам це зрозуміє. І, очевидно, з перспективи часу це було нереалістичне очікування. Я недостатньо чітко пояснив, що так робити не слід. І він це зробив - не його провина, а моя. Саме це й стало причиною помилки.
👍5🔥1
Motorola оголосила про співпрацю з GrapheneOS
Компанія Motorola і проєкт GrapheneOS, що розробляє захищену вільну прошику на базі Android, домовилися про довгострокову співпрацю щодо посилення конфіденційності та безпеки смартфонів, а також розробку нових пристроїв, для яких буде надано офіційну підтримку прошивок на базі GrapheneOS.
На питання, чи буде на нових смартфонах Motorola можливість розблокування завантажувача, розробники GrapheneOS відповіли, що угода з Motorola включає підтримку встановлення сторонніх ОС на нові пристрої. Серед іншого, користувачі зможуть використовувати власні збірки GrapheneOS.
Відмінною рисою GrapheneOS є те, що він за замовчуванням не включає застосунки Google або служби Google Play. Користувачі можуть встановлювати служби Google Play як повністю ізольовані програми без спеціальних системних привілеїв, зберігаючи орієнтований на безпеку підхід проєкту.
Також в прошивці є можливість вибіркового управління доступом окремих програм до мережі, датчиків, адресної книги та периферії. За замовчуванням заборонено отримання інформації про IMEI, MAC-адресу, серійний номер SIM-карти та інші апаратні ідентифікатори. Читання з буфера обміну дозволено тільки програмам, в яких в даний момент активний фокус введення. Включені додаткові механізми ізоляції процесів, пов'язаних з Wi-Fi і Bluetooth, для запобігання витоків.
У GrapheneOS застосовується криптографічна верифікація завантажуваних компонентів і шифрування даних на рівні файлових систем ext4 і f2fs. Дані в системних розділах і в кожному профілі користувача шифруються різними ключами. На екрані блокування відображається кнопка завершення сеансу, після натискання якої ключі для розшифрування скидаються і сховище переводиться в неактивований стан.
Компанія Motorola і проєкт GrapheneOS, що розробляє захищену вільну прошику на базі Android, домовилися про довгострокову співпрацю щодо посилення конфіденційності та безпеки смартфонів, а також розробку нових пристроїв, для яких буде надано офіційну підтримку прошивок на базі GrapheneOS.
На питання, чи буде на нових смартфонах Motorola можливість розблокування завантажувача, розробники GrapheneOS відповіли, що угода з Motorola включає підтримку встановлення сторонніх ОС на нові пристрої. Серед іншого, користувачі зможуть використовувати власні збірки GrapheneOS.
Відмінною рисою GrapheneOS є те, що він за замовчуванням не включає застосунки Google або служби Google Play. Користувачі можуть встановлювати служби Google Play як повністю ізольовані програми без спеціальних системних привілеїв, зберігаючи орієнтований на безпеку підхід проєкту.
Також в прошивці є можливість вибіркового управління доступом окремих програм до мережі, датчиків, адресної книги та периферії. За замовчуванням заборонено отримання інформації про IMEI, MAC-адресу, серійний номер SIM-карти та інші апаратні ідентифікатори. Читання з буфера обміну дозволено тільки програмам, в яких в даний момент активний фокус введення. Включені додаткові механізми ізоляції процесів, пов'язаних з Wi-Fi і Bluetooth, для запобігання витоків.
У GrapheneOS застосовується криптографічна верифікація завантажуваних компонентів і шифрування даних на рівні файлових систем ext4 і f2fs. Дані в системних розділах і в кожному профілі користувача шифруються різними ключами. На екрані блокування відображається кнопка завершення сеансу, після натискання якої ключі для розшифрування скидаються і сховище переводиться в неактивований стан.
Global Blog
Motorola News | Motorola's new partnership with GrapheneOS
Motorola announces three new B2B solutions at MWC 2026, including GrapheneOS partnership, Moto Analytics and more.
🔥23❤2💩1
Співробітник Wikimedia випадково запустив шкідливий JavaScript-хробак, який вразив Meta-Wiki
У процесі тестування обмежень на роботу з API з user scripts, інженер експериментував із завантаженням великої кількості випадкових скриптів, використовуючи реальні скрипти користувачів. Тестування при цьому здійснювалося з адмінського облікового запису, що мав доступ до редагування скрипта
Серед персональних скриптів виявився створений кілька років тому шкідливий скрипт
Запуск даного скрипта з адмінського облікового запису призвів до розміщення шкідливого коду в користувацьких JavaScript-скриптах на Meta-Wiki. Через запуск доданого хробака при відкритті сторінок Meta-Wiki іншими користувачами та адміністраторами Wikimedia виникла ланцюгова реакція - кілька тисяч сторінок було змінено, а у приблизно сотні користувачів було замінено персональні скрипти
Наразі стан постраждалих сторінок відновлено та повернуто можливість внесення змін.
У процесі тестування обмежень на роботу з API з user scripts, інженер експериментував із завантаженням великої кількості випадкових скриптів, використовуючи реальні скрипти користувачів. Тестування при цьому здійснювалося з адмінського облікового запису, що мав доступ до редагування скрипта
MediaWiki:Common.js і можливості завантажувати JavaScript-скрипти для всіх користувачів і сторінок.Серед персональних скриптів виявився створений кілька років тому шкідливий скрипт
test.js, який додає себе до всіх JavaScript-файлів "User:<username>/common.js" і "MediaWiki:Common.js", а також редагує або видаляє випадкові сторінки з приміткою про закриття проекту.Запуск даного скрипта з адмінського облікового запису призвів до розміщення шкідливого коду в користувацьких JavaScript-скриптах на Meta-Wiki. Через запуск доданого хробака при відкритті сторінок Meta-Wiki іншими користувачами та адміністраторами Wikimedia виникла ланцюгова реакція - кілька тисяч сторінок було змінено, а у приблизно сотні користувачів було замінено персональні скрипти
common.js.Наразі стан постраждалих сторінок відновлено та повернуто можливість внесення змін.
Reddit
From the wikipedia community on Reddit: [MEGATHREAD] Wikimedia wikis locked / Accounts compromised
Explore this post and more from the wikipedia community
🥰7👏5
This media is not supported in your browser
VIEW IN TELEGRAM
На PlayStation 5 змогли запустити Linux і пограти в GTA 5
У підготовленій системі Ubuntu 24.04.4 повністю працює звук і відео з якістю 4K через HDMI, а також підтримуються всі USB-порти. Робоча конфігурація запущена з виставленням для ЦП частоти 3.2 ГГц, а для відеокарти - 2.0 ГГц. Також частота може бути додатково розігнана до 3.5 ГГц для ЦП і 2.23 ГГц для відеокарти, але в цьому випадку PS5 Slim швидко перегрівалася.
Продуктивності підготовленого Linuх-середовища виявилося достатньо для запуску гри GTA 5 з увімкненим трасуванням променів при роздільній здатності 1440p і частоті оновлення 60 кадрів в секунду.
Для обходу верифікації завантажувача і завантаження Linux-дистрибутива замість штатної прошивки задіяний експлойт Byepervisor, що працює тільки зі старими версіями прошивок (1.xx-2xx) і експлуатує дві уразливості в гіпервізорі. Для підтримки GPU AMD для PlayStation 5, підготовлено патч для Mesa, який запропоновано включити до основного складу Mesa.
У підготовленій системі Ubuntu 24.04.4 повністю працює звук і відео з якістю 4K через HDMI, а також підтримуються всі USB-порти. Робоча конфігурація запущена з виставленням для ЦП частоти 3.2 ГГц, а для відеокарти - 2.0 ГГц. Також частота може бути додатково розігнана до 3.5 ГГц для ЦП і 2.23 ГГц для відеокарти, але в цьому випадку PS5 Slim швидко перегрівалася.
Продуктивності підготовленого Linuх-середовища виявилося достатньо для запуску гри GTA 5 з увімкненим трасуванням променів при роздільній здатності 1440p і частоті оновлення 60 кадрів в секунду.
Для обходу верифікації завантажувача і завантаження Linux-дистрибутива замість штатної прошивки задіяний експлойт Byepervisor, що працює тільки зі старими версіями прошивок (1.xx-2xx) і експлуатує дві уразливості в гіпервізорі. Для підтримки GPU AMD для PlayStation 5, підготовлено патч для Mesa, який запропоновано включити до основного складу Mesa.
🔥32👍4❤1
Freedesktop закриває суперечливу пропозицію щодо впровадження API в XDG для перевірки віку
Останніми тижнями спільнота Linux зосередилася на дискусії щодо нового законодавства первірки віку у ОС, що викликало питання про те, як системи Linux можуть до цього пристосуватися.
У спробі вирішити це складне питання до XDG було подано запит на додання
Однак, як і слід було очікувати, пропозиція швидко викликала критику з боку розробників та членів спільноти. Серед занепокоєнь були питання щодо наслідків для конфіденційності, вбудовування політик, специфічних для певної юрисдикції, в інфраструктуру робочого столу, а також питання, чи повинна ця функціональність бути частиною основного простору імен Freedesktop.
Тож, зрештою, Freedesktop просто закрив запит на злиття і вказав, що подальша робота буде проводитися в рамках технологій таких як Flatpak.
Однак питання залишається відкритим, оскільки поки що не було зроблено жодних чітких заяв щодо того, як Linux і open source спільнота відреагують на це.
Останніми тижнями спільнота Linux зосередилася на дискусії щодо нового законодавства первірки віку у ОС, що викликало питання про те, як системи Linux можуть до цього пристосуватися.
У спробі вирішити це складне питання до XDG було подано запит на додання
org.freedesktop.AgeVerification до інтерфейсу D-Bus (система міжпроцесної комунікації між програмою та ОС), щоб дозволити програмам запитувати в ОС вікову групу користувача.Однак, як і слід було очікувати, пропозиція швидко викликала критику з боку розробників та членів спільноти. Серед занепокоєнь були питання щодо наслідків для конфіденційності, вбудовування політик, специфічних для певної юрисдикції, в інфраструктуру робочого столу, а також питання, чи повинна ця функціональність бути частиною основного простору імен Freedesktop.
Тож, зрештою, Freedesktop просто закрив запит на злиття і вказав, що подальша робота буде проводитися в рамках технологій таких як Flatpak.
Однак питання залишається відкритим, оскільки поки що не було зроблено жодних чітких заяв щодо того, як Linux і open source спільнота відреагують на це.
GitLab
Add Age Verification Signal Specification (!113) · Merge requests · xdg / xdg-specs · GitLab
Key features: D-Bus interface with GetAgeBracket and SetAge methods Five age brackets: Unknown, Under 13, 13-15, 16-17, 18+ Per-user storage under /var/lib/AccountsService/users/.age...
👎9👍4🤔3
Фонд вільного ПЗ вимагає від Anthropic оприлюднити вихідний код ШІ Claude
У 2024 році автори книг подали позов проти Anthropic, звинувативши компанію у використанні понад 7 мільйонів книг із піратських бібліотек LibGen та Pirate Library Mirror для навчання своїх ШІ. Потім, у червні 2025 року, суд виніс рішення, що навчання ШІ на легально придбаних книгах є допустимим, а на піратських - ні.
Anthropic хотіла вирішити ситуацію легко й просто - грошима, але тут у справу втрутився Фонд вільного ПЗ.
Представники фонду, перебираючи викорстані книги, знайшли книгу "Free as in Freedom: Richard Stallman's Crusade for Free Software", авторські права на яку належать Фонду вільного ПЗ.
Ось тут і криється підводний камінь, адже книга видана за ліцензією GNU FDL, яка дозволяє вільне використання, але, у свою чергу, вимагає, щоб усі похідні роботи також залишалися вільними.
Фонд заявив, що гроші їх не цікавлять, і якщо Anthropic не оприлюднить вихідний код, вони готові подати новий позов до суду (на додаток до вже існуючих).
У 2024 році автори книг подали позов проти Anthropic, звинувативши компанію у використанні понад 7 мільйонів книг із піратських бібліотек LibGen та Pirate Library Mirror для навчання своїх ШІ. Потім, у червні 2025 року, суд виніс рішення, що навчання ШІ на легально придбаних книгах є допустимим, а на піратських - ні.
Anthropic хотіла вирішити ситуацію легко й просто - грошима, але тут у справу втрутився Фонд вільного ПЗ.
Представники фонду, перебираючи викорстані книги, знайшли книгу "Free as in Freedom: Richard Stallman's Crusade for Free Software", авторські права на яку належать Фонду вільного ПЗ.
Ось тут і криється підводний камінь, адже книга видана за ліцензією GNU FDL, яка дозволяє вільне використання, але, у свою чергу, вимагає, щоб усі похідні роботи також залишалися вільними.
Фонд заявив, що гроші їх не цікавлять, і якщо Anthropic не оприлюднить вихідний код, вони готові подати новий позов до суду (на додаток до вже існуючих).
👍37😁20🔥5❤3
Проєкти Arch Linux 32 та MidnightBSD заблокували (перше, друге) доступ із Бразилії через закон про перевірку віку
17 березня в Бразилії набув чинності закон 15.211/2025 Digital ECA, який запроваджує систему контролю доступу неповнолітніх до цифрового контенту. На відміну від каліфорнійського закону, він передбачає вищі штрафи та суворіші вимоги. Закон передбачає штрафи в розмірі до 10 відсотків від річного доходу або від 2 до 200 доларів за кожного зареєстрованого користувача за відсутності доходу, але в сумі не більше 13 млн доларів.
Закон вимагає суворої перевірки віку, яка не обмежується формальною згодою про те, що користувачу більше 18 років. Для підтвердження потрібно впровадження "ефективних" методів верифікації, таких як перевірка документів або проходження аутентифікації в сторонніх сервісах. ОС повинна надати програмам API для отримання даних про вік, а також підтримувати інструменти батьківського контролю.
Проєкти, що розвиваються ентузіастами, не мають необхідної інфраструктури та фінансових ресурсів для виконання вимог закону, тому вони вирішили заблокувати бразильські підмережі, щоб уникнути ризику закриття проекту в разі накладення штрафу.
При спробі звернення до сайтів, форумів, завантажень, пакетів та wiki проєктів з Бразилії тепер виводиться сторінка про блокування доступу.
P.S. Проєкт Arch Linux 32 розвивається як незалежний форк і не пов'язаний з Arch Linux.
17 березня в Бразилії набув чинності закон 15.211/2025 Digital ECA, який запроваджує систему контролю доступу неповнолітніх до цифрового контенту. На відміну від каліфорнійського закону, він передбачає вищі штрафи та суворіші вимоги. Закон передбачає штрафи в розмірі до 10 відсотків від річного доходу або від 2 до 200 доларів за кожного зареєстрованого користувача за відсутності доходу, але в сумі не більше 13 млн доларів.
Закон вимагає суворої перевірки віку, яка не обмежується формальною згодою про те, що користувачу більше 18 років. Для підтвердження потрібно впровадження "ефективних" методів верифікації, таких як перевірка документів або проходження аутентифікації в сторонніх сервісах. ОС повинна надати програмам API для отримання даних про вік, а також підтримувати інструменти батьківського контролю.
Проєкти, що розвиваються ентузіастами, не мають необхідної інфраструктури та фінансових ресурсів для виконання вимог закону, тому вони вирішили заблокувати бразильські підмережі, щоб уникнути ризику закриття проекту в разі накладення штрафу.
При спробі звернення до сайтів, форумів, завантажень, пакетів та wiki проєктів з Бразилії тепер виводиться сторінка про блокування доступу.
P.S. Проєкт Arch Linux 32 розвивається як незалежний форк і не пов'язаний з Arch Linux.
💊12👍1🌭1