Как стать автором
Обновить
551.32

Open source *

Открытое программное обеспечение

Сначала показывать
Порог рейтинга

Ускорение Youtube в Линукс. Скрипт для автоматизированной установки полезного ПО из исходников.

Youtube в России, как известно официально не внесен в реестр запрещенных сайтов, но по разным официальным версиям почему-то медленно работает), а Роскомнадзор выражает свое сочувствие российским гражданам уставшим от медленного и некачественного видео на зарубежных сервисах. Оживились шарлатаны, которые под видом "ускорителей Ютуба" предлагают разные зловреды в бинарниках.

По отзывам для реального решения проблемы медленного Ютуба в РФ на Линуксах весьма неплохо себя показал специально настроенный под эту задачу "zapret", но по тем же отзывам у рядового пользователя тонкости настроек этого ПО вызывают трудности.

С учетом изложенного, внося свой посильный вклад, написал, для ускорения Ютуба, скрипты на bash: скрип-установщик, который автоматически качает исходники с GitHub, ставит зависимости, компилирует, устанавливает и настраивает zapret на настольном ПК с Ubuntu-based и Red-Hat-based Линуксами, скрипт обновления zapret(не изменящий его настройки), и скрипт деинсталятор.

Обновление от 22.09.2024 и zapret-a и его настроек (запускать скрип-установщик) Скрипты для Ubuntu-based ОС, скрипты для Red-Hat-based ОС. Проверенно на Linux Mint 20.1 "Ulyssa" и "Fedora 40" соответственно.

Ставится все в пару кликов. Берите пользуйтесь, адаптируйте к другим Линуксам! Конструктивная критика приветствуется.

Теги:
Всего голосов 11: ↑9 и ↓2+8
Комментарии31

Скрипт для отключения расширений, не входящих в ядро Joomla 3 (для обновления на Joomla 5+)

Перед обновлением сайта с Joomla 3 на Joomla 4 и выше нужно обновить все старые расширения до последних (для Joomla 3) версий. Затем отключить их, особенно системные плагины. Это делается для того, чтобы ничто не мешало процессу обновления. Для того, чтобы сделать это быстро - накидал скрипт, который отключает нестандартные расширения в Joomla 3.

➡️ Получить код скрипта (GitHub gist)

Файл disable_non_joomla3_extensions.php нужно положить в папку administrator вашего сайта и перейти по нему в браузере - yoursite.ru/administrator/disable_non_joomla3_extensions.php. Если всё успешно отключилось - выйдет сообщение.

XXX extensions that are not included in the Joomla 3 core have been detected and disabled. Make sure that they are disabled in the Site Admin Panel: Extensions - Extension Manager - Management.

Проверяем работу в менеджере расширений и после этого обновляем Joomla до Joomla 4 с помощью пакета обновлений Joomla 4.0.0. Обновляем Joomla 4 находясь на PHP 7.4 до конца. Меняем базу данных на MySQL 8+ (импорт-экспорт базы), поднимаем PHP до 8.1.

⚠️ Всё это делаем находясь ещё на Joomla 4. Обновиться нужно минимум до Joomla 4.4.0. Только после этого можно обновляться на Joomla 5 пакетом обновления 5.0.0. Затем обновляем все расширения и постепенно включаем их.

Теги:
Всего голосов 4: ↑4 и ↓0+6
Комментарии3

Представлен выпуск Aura 4.0.0. Это проект пакетного менеджера для дистрибутива Arch Linux, расширяющий возможности штатного пакетного менеджера Pacman.

Проект создан в 2012 году и изначально был нацелен на предоставление средств для сборки пакетов для репозитория AUR (Arch User Repository), применяемого для распространения сторонними разработчиками своих пакетов, не входящих в основные репозитории дистрибутива Arch Linux.

Код проекта распространяется под лицензией GPLv3.

Кроме специфичных для AUR функций в Aura также предоставляются и другие возможности, расширяющие функциональность Pacman (в настоящее время только 1/3 расширенных возможностей Aura связаны с AUR). Например, доступны средства для наглядного анализа зависимостей, работы со снапшотами наборов пакетов (для сохранения и восстановления состояния), управления остаточными зависимостями и отката отдельных пакетов или всей системы на прошлые версии.

Aura полностью обратно совместим с Pacman и поддерживает все его команды и опции. Связанные с AUR дополнительные возможности вызываются через указание опции командной строки «‑A», а средства работы со снапшотами и версиями через опции «‑B» и «‑С», не пересекающиеся с опциями Pacman.

В Aura 4.0.0 переведена вся кодовая база с Haskell на язык Rust. Смена языка позволила значительно повысить производительность, упростить установку, задействовать готовые Rust-биндинги к libalpm, сделать проект более привлекательным для новых разработчиков.

Источник: OpenNET.

Теги:
Всего голосов 2: ↑2 и ↓0+4
Комментарии0

Совет по Joomla: как получать данные из суперглобальных массивов $_POST, $_GET и других?

На основе данных из $_GET, $_POST порой строится логика работы кода начиная от шаблона Joomla и кончая модулями и плагинами. Для работы с этими данными используется объект Input, который мы получаем из Приложения Joomla.

Приведу пример, часто использующийся при разработке шаблонов Joomla

<?php
/** @var \Joomla\CMS\Application\CMSApplication $app */
$app   = Factory::getApplication();
/** @var \Joomla\Input\Input $input */
$input = $app->getInput();

// Имя параметра и его значение по умолчанию
$option   = $input->get('option','');
$view     = $input->get('view', 'category');
$layout   = $input->getCmd('layout', 'edit');
$task     = $input->getString('task', '');
$itemid   = $input->getInt('Itemid', '');

В методе $input->get() 2-й аргумент - это значение по умолчанию на случай, если данных не обнаружено. 3-й аргумент - параметры фильтрации данных - будьте с ним внимательны. Например, вы хотите получить данные, отправленные на ендпоинт в виде JSON.stringify.

<?php
/** @var \Joomla\Input\Input $input */
$input->json->get('title', '', 'RAW')
// ИЛИ
$data = $input->json->getArray();

Если вы уверены, что данные должны быть именно в $_POST и нигде более, то получайте их именно оттуда.

<?php
/** @var \Joomla\Input\Input $input */
$title = $input->post->get('title', '', 'RAW');

Подробнее в файле libraries/vendor/joomla/input/src/Input.php.

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии0

Разработчики Manjaro Linux на базе Arch Linux объявили о начале тестирования экспериментальной сборки Manjaro Immutable, которая примечательна поставкой базовой системы в форме единого монолитного образа, монтируемого в режиме только для чтения и обновляемого целиком в атомарном режиме. Размер загрузочного образа 1,7 ГБ. Поддерживается только загрузка в режиме UEFI как на оборудовании x86_64, так и в системах виртуализации и эмуляции, таких как VirtualBox и QEMU. После завершения тестирования сборке планируют придать статус официального варианта Manjaro.

Для формирования монолитных системных образов на основе пакетной базы Arch Linux, а также для их установки, сопровождения и организации отката на прошлое состояния задействован инструментарий arkdep, развиваемый проектом Arkane Linux.

Источник: OpenNET..

Теги:
Всего голосов 2: ↑2 и ↓0+4
Комментарии1

Список устаревших классов ядра Joomla 1.6-3.10 и их современные аналоги в ядре Joomla 5.x

Разработчикам при обновлении расширений на архитектуру Joomla 4 / Joomla 5 нередко не сразу удаётся найти аналоги устаревших методов ядра. Особенно, если под рукой нет современной среды разработки (IDE), например PHP Storm, который подсказывает нужные методы ядра Joomla. Без него, конечно, разработка для Joomla становится непростым делом. В этой статье вы найдете табличку соответствия старых и новых названий PHP классов ядра Joomla и её расширений для того, чтобы быстрее и легче было обновить свои расширения. Эти классы пока что можно использовать в случае, если включён плагин обратной совместимости Joomla 4 / Joomla 5. Но в Joomla 6 или последующих версиях он может быть удалён.

Подробнее: Список устаревших классов ядра Joomla 1.6-3.10 и их современные аналоги в ядре Joomla 5.x.

Теги:
Всего голосов 4: ↑2 и ↓2+2
Комментарии0

Microsoft опубликовала первое стабильное обновление новой ветки дистрибутива Azure Linux 3.0, который ранее распространялся под именем CBL-Mariner.

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

Наработки проекта распространяются под лицензией MIT. Сборки пакетов формируются для архитектур aarch64 и x86_64. Размер установочного образа 740 МБ.

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

Изменения в новой версии:

  • ядро Linux обновлено до версии 6.6;

  • добавлена поддержка GPU Nvidia A100 и H100, а также предоставлен Nvidia GPU Operator для автоматизации управления драйверами Nvidia на узлах с Azure Linux;

  • добавлены инструменты для замены других дистрибутивов (OSsku In‑Place Migration) на узлах в облаке Microsoft Azure, например, можно заменить установленный Ubuntu на Azure Linux;

  • система принудительного контроля доступа SELinux переведена по умолчанию в режим enforcing.

Источник: OpenNET.

Теги:
Всего голосов 3: ↑3 и ↓0+5
Комментарии1

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

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии0

Представлен открытый проект Hyperscript. Это гибкий скрипт для обработки сложных конфигураций и запросов. Проект поддерживает различные методы HTTP, включая GET, POST, PUT и DELETE, и предоставляет обширные возможности для проверки ответов на соответствие указанным условиям.

Hyperscript поддерживает нескольких методов HTTP, включая опции простой настройки и тестирование запросов GET, POST, PUT и DELETE.

В Hyperscript есть редим гибкой проверки и проверки ответов на основе кодов состояния, типов содержимого и определённого содержимого.

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

Проект написан на языке Python и опубликован под лицензией MIT.

Теги:
Всего голосов 5: ↑2 и ↓3+1
Комментарии0

Разработчик Мишан Пудель представил открытое локальное приложение в виде клона интерфейса Windows 11 на React.js с некоторыми компонентами ОС, включая работающий браузер Chrome, инструментарий VS Code, игру Emoji Tic-Tac-Toe, клиент Spotify в качестве музыкального проигрывателя и калькулятор.

Используемые в проекте технологии:

  • React.js: для создания интерактивного пользовательского интерфейса.

  • Tailwind CSS: для стилизации компонентов и создания дескопного окружения.

  • React Router DOM: для управления навигацией и маршрутизацией в приложении.

  • Framer Motion: для добавления анимации и переходов.

  • React Draggable: для создания элементов, которые можно перетаскивать.

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

Установка проекта локально:

  • Clone the repository: git clone https://github.com/MishanPoudel/Windows11-3.0;

  • Navigate to the project directory: cd Windows11-3.0;

  • Install the dependencies: npm install;

  • Start the development server: npm start;

  • Открыть в браузере: http://localhost:3000.

Теги:
Всего голосов 3: ↑3 и ↓0+5
Комментарии0

Совет по Joomla: метод HTMLHelper::image() для рендера изображений

В API Joomla есть довольно богатый инструмент - класс HTMLHelper. С его помощью можно выводить различные HTML-элементы с нужными параметрами: модальные окна, аккордеоны, табы, изображения и т.д.

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

Самый простой способ рендера изображений - с 2-мя аргументами:

  • $img - путь к изображению

  • $alt - текст для атрибута alt изображения 3-й необязательный параметр - массив или строка с атрибутами изображения: class, title, различные data-атрибуты, onclick, loading и т.д. Я предпочитаю удобно и наглядно собрать атрибуты в массив, использовать условия в PHP, а не HTML коде.

<?php
use Joomla\CMS\HTML\HTMLHelper;

$img_src = 'images/banner.webp';
$img_attribs = [
    'loading' => 'lazy',
    'class'=>'img-fluid',
    'data-custom-attr'=>'your-custom-data-attr-value',
    'title'=> 'Title attribute for image'
];

echo HTMLHelper::image($img_src,'Alt text for image', $img_attribs);

Если изображение найдено - получим HTML-разметку <img src="..."/> с нашими данными. Если не найдено - null.

Ещё 2 параметра, которые используются реже и связаны с одной из главных фишек Joomla - функционалом переопределений. Но их описание не укладывается в размер поста на Хабре 😢

Теги:
Всего голосов 3: ↑3 и ↓0+5
Комментарии0

Привет всем!

Приём работ на Open Source Education Cup 2024 продолжается. Это мероприятие является первым из ряда инициатив, запланированных для сотрудников системы образования на 2024-2025 годы.

Принять участие могут представители образовательных учреждений, исследователи, инженеры и контрибьюторы. Задача — разработать концепции образовательного курса длительностью более 72 академических часов, а также сопутствующих учебно-методических материалов. Курс должен быть направлен на изучение основных принципов работы и инструментов создания Open Source проектов, с акцентом на разработку операционных систем с открытым исходным кодом.

Технологическими партнёрами являются СберТех и платформа GitVerse.

Формат участия — заочный, участие бесплатное.

Подробнее — по ссылке

Теги:
Всего голосов 2: ↑2 и ↓0+4
Комментарии0

Опубликован релиз свободного гипервизора Xen 4.19. В разработке проекта приняли участие Amazon, Arm, EPAM Systems и AMD. Формирование обновлений для ветки Xen 4.19 продлится до февраля 2026 года, а публикация исправлений уязвимостей до августа 2027 года.

Ключевые изменения в Xen 4.19:

  • для систем на базе архитектуры ARM добавлена поддержка механизма асинхронного обмена данными «FF‑A Notifications», описанного в спецификации FF‑A (Firmware Framework for Arm A‑profile). Реализована возможность динамического добавления и удаления узлов в Xen device tree при помощи файлов.dtbo;

  • для систем на базе архитектуры x86 добавлен новый драйвер контроллера прерываний x2APIC, использующий режим логической адресации (Cluster Logical) для внутренних прерываний (IPI, inter‑processor interrupt) и режим физической адресации для внешних прерываний;

  • объявлена устаревшей и будет прекращена в следующем выпуске поддержка процессоров Intel XeonPhi;

  • максимальное число CPU, используемых в Xen, увеличено с 4095 до 16383;

  • при сборке с systemd (./configure --enable-systemd) из сборочных зависимостей исключена библиотека libsystemd (поддержка systemd-notify реализована через собственную урезанную библиотеку);

  • для анализа трассировок для CPU AMD в xenalyze больше не нужно использовать опцию "--svm-mode";

  • продолжена реализация требований к разработке безопасных и надёжных программ на языке Си, сформулированных в спецификациях MISRA-C для критически важных систем.

Источник: OpenNET.

Теги:
Всего голосов 2: ↑2 и ↓0+4
Комментарии0

Ближайшие события

7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн
15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
22 – 24 ноября
Хакатон «AgroCode Hack Genetics'24»
Онлайн
28 ноября
Конференция «TechRec: ITHR CAMPUS»
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань

Разработчики проекта UBports, который взял в свои руки создание мобильной платформы Ubuntu Touch, после того как от неё отстранилась компания Canonical, представили прошивку OTA-5 Focal (over‑the‑air). Это четвёртый выпуск Ubuntu Touch, основанный на пакетной базе Ubuntu 20.04. Проектом также развивается экспериментальный порт рабочего стола Unity 8, который переименован в Lomiri.

Обновление Ubuntu Touch OTA-5 Focal в ближайшие дни будет сформировано для устройств Asus Zenfone Max Pro M1, F(x)tec Pro1 X, Fairphone 3/3+/4, Google Pixel 3a/3a XL, JingPad A1, Oneplus 5/5T/6/6T, Sony Xperia X, Vollaphone X/22/X23 и Xiaomi Poco X3 NFC / X3. По сравнению с прошлой версией не будут формироваться сборки для устройств OnePlus One, Samsung Galaxy S7, Xiaomi Redmi Note 9/9 Pro/9 Pro Max/9S и Xiaomi Poco M2 Pro.

Отмечается, что выпуск в основном сосредоточен на исправлении ошибок. Среди заметных изменений:

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

  • устранена проблема с переносом настроек при миграции с Ubuntu Touch на базе Ubuntu 16.04 на Ubuntu Touch OTA-5 Focal на базе Ubuntu 20.04.

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

Источник: OpenNET.

Теги:
Всего голосов 4: ↑4 и ↓0+7
Комментарии0

Представлен открытый проект ngtop. Это утилита командной строки для вывода количества запросов (request counts) из файлов access.log nginx.

Исходный код ngtop написан на go и распространяется на GitHub под лицензией GNU General Public License v3.0.

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии0

Состоялся выпуск распределенной системы управления исходными текстами Git 2.46.

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

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

Исходный Код Git распространяется под лицензией GPLv2+.

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

Основные изменения:

  • добавлена экспериментальная поддержка нового вида битовых карт — «pseudo‑merge reachability bitmap», в которых в отличие от структуры «reachability bitmap» данные о наборах объектов, имеющих отношение к коммитам, хранятся в привязке сразу к нескольким коммитам.

  • реализован интерфейс командной строки для команды «git config», в котором вместо разрозненных опций для просмотра, переименования и удаления настроек и секций, таких как «‑get», «‑get‑all», «‑unset» и «‑remove‑section», предложен набор отдельных субкоманд.

  • В команду git добавлена опция «‑no‑advice», отключающая все сообщения с рекомендациями и подсказками, что может оказаться полезным для предотвращения забивания лога лишней информацией при автоматизированном вызове git.

Теги:
Всего голосов 2: ↑2 и ↓0+5
Комментарии0

☁️Облачная миссия Cloud-Man: результаты конкурса-игры☁️

Всем привет!

Вот и пролетел почти месяц игры Cloud-Man — конкурс завершен! Надеемся, вам было интересно погрузиться в атмосферу игры, примерить роль облачного провайдера и просто весело провести время. Пришло время подвести итоги и объявить победителей.

Результаты конкурса:

🥇1 место  — questeri, 2255 очков. Получает 100 000 бонусных баллов.

🥈2 место  — destapador1, 2249 очков. Получает 70 000 бонусных баллов.

🥉3 место  — melpnz, 2033 очков. Получает 50 000 бонусных баллов.

Баллы (= рубли) можно использовать на любые сервисы облачной платформы Cloud.ru Evolution. А еще каждому, кто вошел в тройку лидеров, полагается толстовка с принтом игры.

Совсем скоро мы придем к победителям в личные сообщения (и в Telegram-боте к тем, кто регистрировался через него) и расскажем, как получить заслуженные призы😊.

Поздравляем победителей! 

Интересное в блоге:

Теги:
Всего голосов 2: ↑2 и ↓0+6
Комментарии1

Разрешение экрана портативного компьютера Steam Deck составляет всего 1280×800. Это вполне нормально для 7-дюймового дисплея и игрового устройства. Если сравнивать Steam Deck с ближайшим конкурентом в своей идеологической нише карманного гейминга, то у Nintendo Switch экран имеет схожее разрешение 1280×720 при диагонали в те же 7 дюймов.

Тем не менее это устраивает не всех. По крайней мере недовольных набралось достаточно, чтобы коммерческий успех имели соответствующие модификации Steam Deck. Так, проект DeckHD завёл собственный сайт, где продаёт наборы для замены штатного экрана Steam Deck на дисплей разрешением 1920×1200.

Как указали в микроблогах, Valve, компания-разработчик Steam Deck, в курсе подобных аппаратных модов. Deck работает на операционной системе SteamOS, исходные коды которой открыты. В том числе любой желающий может прислать пулл-реквест в репозиторий Gamescope, менеджера окон SteamOS. На днях код программы немного изменили.

Вчера Джошуа Эштон, сотрудник Valve, смёрджил в мастер github.com/ValveSoftware/gamescope пулл-реквест #1281, который вообще начинался как #1021. В коде основной ветки Gamescope появилась поддержка нескольких сторонних экранов: заданы нужные тайминги, часто́ты работы и прочие параметры этих панелей.

Одно из изменений коммита #1281

Теги:
Всего голосов 3: ↑2 и ↓1+3
Комментарии0

На GitHub представлен проект OpenTTY Java Edition. Это эмулятор терминала OpenTTY для старых телефонов с поддержкой J2ME (Java ME, ранее — Java 2 Micro Edition).

Исходный код проекта OpenTTY Java Edition написан на Java, в нём доступны основные команды, есть поддержка Debug Tool, shell script, Xorg server, htop (show memory usage), netstat (verify network), nano (temporary notepad), wget (save website html) и tty (show console path).

Файл OpenTTY.jar занимает размер 43 КБ.

Теги:
Всего голосов 3: ↑2 и ↓1+4
Комментарии1

На прошедшей недавно (не)конференции Yandex Open Source Jam Юрий Пузыня подробно рассказал об опенсорс‑платформе для работы с документацией Diplodoc — и за 40 минут вместе с участниками собрал готовую документацию (и даже осталось немного времени на лендинг, собранный на Gravity UI).

Чтобы повторить то же самое, а также узнать, что вообще можно сделать на Diplodoc, смотрите запись выступления. Всё, что вам понадобится для работы, команда также собрала в отдельной документации.

Пробуйте, задавайте вопросы, делитесь впечатлениями — например, на GitHub или в чате сообщества в Telegram.

Теги:
Всего голосов 4: ↑4 и ↓0+9
Комментарии0

Вклад авторов