<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ProHoster</title>
	<atom:link href="https://prohoster.info/feed" rel="self" type="application/rss+xml" />
	<link>https://prohoster.info</link>
	<description>Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы</description>
	<lastBuildDate>Fri, 04 Dec 2020 00:42:15 +0000</lastBuildDate>
	<language>ru-RU</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=5.5.3</generator>
	<item>
		<title>Стабильный релиз браузера Vivaldi 3.5 для Android</title>
		<link>https://prohoster.info/blog/novosti-interneta/stabilnyj-reliz-brauzera-vivaldi-3-5-dlya-android</link>
		
		<dc:creator><![CDATA[gagarinura]]></dc:creator>
		<pubDate>Fri, 04 Dec 2020 00:42:15 +0000</pubDate>
				<category><![CDATA[Новости интернета]]></category>
		<guid isPermaLink="false">https://prohoster.info/blog/novosti-interneta/stabilnyj-reliz-brauzera-vivaldi-3-5-dlya-android</guid>

					<description><![CDATA[<p>Сегодня вышла новая стабильная версия браузера Vivaldi 3.5 для Android. Среди новых функций: Возможность выборочно...</p>
<p>The post <a href="https://prohoster.info/blog/novosti-interneta/stabilnyj-reliz-brauzera-vivaldi-3-5-dlya-android/" target="_blank">Стабильный релиз браузера Vivaldi 3.5 для Android</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></description>
										<content:encoded><![CDATA[<p><a rel="nofollow" href="https://www.linux.org.ru/images/19481/original.png" itemprop="contentURL"><br />
      <img alt="Стабильный релиз браузера Vivaldi 3.5 для Android" src="/wp-content/uploads/2020/12/cc8e2027d23345bc35494b235219fb3d.jpg" style="display:block;margin: 0 auto;" /></p>
<p>    </a></p>
<p>Сегодня вышла новая стабильная версия браузера Vivaldi 3.5 для Android. Среди новых функций:</p>
<ul>
<li>Возможность выборочно очищать данные просмотра при выходе из браузера;</li>
<li>Опция закрытия всех вкладок при выходе;</li>
<li>Сортировка заметок и закладок;</li>
<li>Опция отключения трансляции IP для WebRTC.</li>
</ul>
<p>К прочим изменениям отнесены улучшения Экспресс-панели и интерфейса браузера, а также исправление ошибок в работе браузера.</p>
<p>Браузер Vivaldi для Android работает на мобильных устройствах под управлением Android 5 и выше, а также на хромобуках. В браузере имеется встроенный блокировщик рекламы и слежки, собственная защищённая шифрованием система синхронизации данных, заметки, снимок экрана и многое другое.</p>
<p>Браузер Vivaldi 3.5 для Android доступен в Google Play<br />
<noindex><a rel="nofollow" href="https://play.google.com/store/apps/details?id=com.vivaldi.browser">https://play.google.com/store/apps/details?id=com.vivaldi.browser</a></p>
<p></noindex></p>
<p>Источник: <a 
content="nofollow" href="http://www.linux.org.ru/news/android/16032655">linux.org.ru</a></p><p>The post <a href="https://prohoster.info/blog/novosti-interneta/stabilnyj-reliz-brauzera-vivaldi-3-5-dlya-android/" target="_blank">Стабильный релиз браузера Vivaldi 3.5 для Android</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>OpenZFS 2.0.0</title>
		<link>https://prohoster.info/blog/novosti-interneta/openzfs-2-0-0</link>
		
		<dc:creator><![CDATA[gagarinura]]></dc:creator>
		<pubDate>Tue, 01 Dec 2020 12:42:34 +0000</pubDate>
				<category><![CDATA[Новости интернета]]></category>
		<guid isPermaLink="false">https://prohoster.info/blog/novosti-interneta/openzfs-2-0-0</guid>

					<description><![CDATA[<p>Выпущено крупное обновление файловой системы и средств ее обслуживания OpenZFS 2.0.0. Новая версия поддерживает ядра...</p>
<p>The post <a href="https://prohoster.info/blog/novosti-interneta/openzfs-2-0-0/" target="_blank">OpenZFS 2.0.0</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>Выпущено крупное обновление файловой системы и средств ее обслуживания OpenZFS 2.0.0. Новая версия поддерживает ядра Linux, начиная с 3.10, и FreeBSD, начиная с версии 12.2, и в дополение к этому теперь объединяет код для обеих операционных систем в едином репозитории. Среди наиболее крупных изменений разработчики отмечают следующие:</p>
<ul>
<li>
<p>Добавлена возможность последовательного (LBA) перестроения разрушенного RAID-массива Mirror vDev. Этот механизм гораздо быстрее традиционного &laquo;лечащего&raquo; восстановления. Однако в нем отсутствует проверка контрольных сумм блоков, из-за чего сразу после его завершения следующим шагом запускается проверка целостности системы (scrub).</p>
</li>
<li>
<p>Восстановление данных кэша L2ARC после перезагрузке системы. Сам кэш использует выделенный объем оперативной памяти, не задействуя более медленный жесткий диск при частых обращениях к данным. Теперь после перезагрузки данные кэша L2ARC будут на месте.</p>
</li>
<li>
<p>Поддержка сжатия в формате ZStandard, предоставляющего сравнимый с GZIP уровень компрессии, но при этом гораздо более высокую производительность. Для удобства администратору предоставлена возможность выбора уровня сжатия для обеспечения наилучшего баланса между быстродействием и экономией места на диске.</p>
</li>
<li>
<p>Возможность выбора данных при переносе командами send/receive. Теперь администраторы могут вручную исключать из переноса лишние, либо приватные данные перед копированием снэпшота.</p>
</li>
<li>
<noindex><noindex></p>
<p>Реализовано множество других, менее значительных, но не менее приятных улучшений, в частности написан модуль pam для загрузки ключей шифрования папок, реорганизованы man-страницы и <a rel="nofollow" href="https://openzfs.github.io/openzfs-docs/">актуализирована документация</a>, добавлен генератор монтирования zfs-томов для systemd, расширено логирование в syslog, улучшена совместимость с системными загрузчиками и многое другое.</p>
<p></noindex></noindex>
</li>
<li>
<noindex></p>
<p>Добавлены новые команды и ключи к существующим, о чем можно почитать подробнее в <a rel="nofollow" href="https://github.com/openzfs/zfs/releases/tag/zfs-2.0.0">кратких комментариях к выпуску</a>.</p>
<p></noindex>
</li>
<li>
<p>Проведена оптимизация ряда внутренних инструментов в плане скорости и эффективного использования системных ресурсов.</p>
</li>
</ul>
<p><noindex></p>
<p><a rel="nofollow" href="https://github.com/openzfs/zfs/compare/zfs-0.8.0...zfs-2.0.0">Полный список изменений</a>.</p>
<p></noindex></p>
<p>Источник: <a 
content="nofollow" href="http://www.linux.org.ru/news/opensource/16029572">linux.org.ru</a></p><p>The post <a href="https://prohoster.info/blog/novosti-interneta/openzfs-2-0-0/" target="_blank">OpenZFS 2.0.0</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Verloren 0.8 — открытая многопользовательская RPG игра</title>
		<link>https://prohoster.info/blog/novosti-interneta/verloren-0-8-otkrytaya-mnogopolzovatelskaya-rpg-igra</link>
		
		<dc:creator><![CDATA[gagarinura]]></dc:creator>
		<pubDate>Sun, 29 Nov 2020 18:42:16 +0000</pubDate>
				<category><![CDATA[Новости интернета]]></category>
		<guid isPermaLink="false">https://prohoster.info/blog/novosti-interneta/verloren-0-8-otkrytaya-mnogopolzovatelskaya-rpg-igra</guid>

					<description><![CDATA[<p>Veloren &#8211; многопользовательская ролевая игра с открытым исходным кодом на voxel-движке, написанная на языке Rust...</p>
<p>The post <a href="https://prohoster.info/blog/novosti-interneta/verloren-0-8-otkrytaya-mnogopolzovatelskaya-rpg-igra/" target="_blank">Verloren 0.8 — открытая многопользовательская RPG игра</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></description>
										<content:encoded><![CDATA[<p><a rel="nofollow" href="https://www.linux.org.ru/images/19476/original.png" itemprop="contentURL"><br />
      <img alt="Verloren 0.8&nbsp;&mdash; открытая многопользовательская RPG игра" src="/wp-content/uploads/2020/11/ab2bde8809effda75abf65177b171600.jpg" style="display:block;margin: 0 auto;" /></p>
<p>    </a></p>
<p>Veloren &ndash; многопользовательская ролевая игра с открытым исходным кодом на voxel-движке, написанная на языке Rust и<br />
вдохновленная такие играми, как Cube World, Legend of Zelda: Breath of the Wild, Dwarf Fortress и Minecraft. Игра находится на ранней стадии разработки, но в неё уже можно играть онлайн.</p>
<p><noindex><noindex></p>
<p>Veloren полностью открыта, лицензирована по GPL 3. В ней используется оригинальная графика и музыка, созданные её сообществом. У игры есть маленькое, но растущее сообщество в <a rel="nofollow" href="https://discord.gg/ecUxc9N">Discord</a> и <a rel="nofollow" href="https://www.reddit.com/r/Veloren/">Reddit</a>.</p>
<p></noindex></noindex><br />
<noindex></p>
<p>Игра доступна в виде flatpak и snap пакетов, а также через <a rel="nofollow" href="https://github.com/Songtronix/Airshipper">Airshipper</a> &ndash; собственный кросплатформенный launcher игры.</p>
<p></noindex><br />
<noindex></p>
<p><a rel="nofollow" href="https://book.veloren.net/introduction/index.html">Руководство по игре</a></p>
<p></noindex><br />
<noindex></p>
<p><a rel="nofollow" href="https://www.youtube.com/watch?v=TMYfrdiEJw4">Видео игрового процесса</a></p>
<p></noindex></p>
<p>Источник: <a 
content="nofollow" href="http://www.linux.org.ru/news/games/16026142">linux.org.ru</a></p><p>The post <a href="https://prohoster.info/blog/novosti-interneta/verloren-0-8-otkrytaya-mnogopolzovatelskaya-rpg-igra/" target="_blank">Verloren 0.8 — открытая многопользовательская RPG игра</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>PHP 8.0.0</title>
		<link>https://prohoster.info/blog/novosti-interneta/php-8-0-0</link>
		
		<dc:creator><![CDATA[gagarinura]]></dc:creator>
		<pubDate>Sun, 29 Nov 2020 00:42:44 +0000</pubDate>
				<category><![CDATA[Новости интернета]]></category>
		<guid isPermaLink="false">https://prohoster.info/blog/novosti-interneta/php-8-0-0</guid>

					<description><![CDATA[<p>Команда разработчиков PHP объявила о выпуске новой версии языка — PHP 8.0.0. Улучшения и новые...</p>
<p>The post <a href="https://prohoster.info/blog/novosti-interneta/php-8-0-0/" target="_blank">PHP 8.0.0</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>Команда разработчиков PHP объявила о выпуске новой версии языка —  PHP 8.0.0.</p>
<p>Улучшения и новые возможности:</p>
<ul>
<li>
<p>Union Types. Вместо аннотаций PHPDoc для комбинации типов вы можете использовать нативные объявления типа union, которые проверяются во время выполнения.</p>
</li>
<li>
<p>Именованные аргументы. Вместо аннотаций PHPDoc теперь можно использовать структурированные метаданные с родным синтаксисом PHP.</p>
</li>
<li>
<p>Оператор nullsafe. Вместо проверки на null теперь можно использовать цепочку вызовов с новым оператором nullsafe. Когда проверка одного элемента в цепочке не удается, выполнение всей цепочки прерывается, и она сводится к null.</p>
</li>
<li>
<p>Just-in-time компиляция. В PHP 8 появилось два движка JIT. Tracing JIT, наиболее многообещающий из двух, показывает улучшенную производительность: втрое на синтетических тестах и в 1,5-2 раза на некоторых специфических приложениях. Типичная производительность приложения находится на одном уровне с PHP 7.4.</p>
</li>
</ul>
<p>Источник: <a 
content="nofollow" href="http://www.linux.org.ru/news/development/16026169">linux.org.ru</a></p><p>The post <a href="https://prohoster.info/blog/novosti-interneta/php-8-0-0/" target="_blank">PHP 8.0.0</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>systemd 247</title>
		<link>https://prohoster.info/blog/novosti-interneta/systemd-247</link>
		
		<dc:creator><![CDATA[gagarinura]]></dc:creator>
		<pubDate>Sat, 28 Nov 2020 12:42:21 +0000</pubDate>
				<category><![CDATA[Новости интернета]]></category>
		<guid isPermaLink="false">https://prohoster.info/blog/novosti-interneta/systemd-247</guid>

					<description><![CDATA[<p>Долгожданный (для автора новости) релиз самого известного из системных менеджеров мира GNU/Linux (и даже немного...</p>
<p>The post <a href="https://prohoster.info/blog/novosti-interneta/systemd-247/" target="_blank">systemd 247</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>Долгожданный (для автора новости) релиз самого известного из системных менеджеров мира GNU/Linux (и даже немного за его пределами) &#8212; systemd.</p>
<p>В данном выпуске:</p>
<ul>
<li>метки (tags) udev теперь относятся к устройству, а не к событию, связанному с устройством, &#8212; это нарушает обратную совместимость, но только для того, чтобы корректно обработать нарушение обратной совместимости, внесённое ещё в ядре 4.14</li>
<li>PAM файлы для systemd-user теперь по-умолчанию в /usr/lib/pam.d/ (как и должно быть с версии PAM 1.2.0) вместо /etc/pam.d/</li>
<li>зависимость (runtime) от libqrencode, libpcre2, libidn/libidn2, libpwquality, libcryptsetup теперь опциональна &#8212; в случае отсутствия библиотеки соответствующая функциональность автоматически отключается</li>
<li>systemd-repart поддерживает вывод в формате JSON</li>
<li>systemd-dissect стал официально поддерживаемой утилитой со стабильным интерфейсом, соответственно по-умолчанию теперь устанавливается в /usr/bin/ вместо /usr/lib/systemd/</li>
<p><noindex></p>
<li>systemd-nspawn теперь использует интерфейс описанный в <a rel="nofollow" href="https://systemd.io/CONTAINER_INTERFACE">https://systemd.io/CONTAINER_INTERFACE</a></li>
<p></noindex></p>
<li>убрана недокументированная опция &laquo;ConditionNull=&raquo; для юнитов</li>
<li>добавлены новые опции юнитов</li>
<li>добавлена поддержка ключей восстановления для зашифрованных образов systemd-homed, которые (ключи, а не образы) отображаются с помощью QR кода</li>
<li>добавлена поддержка отдельного раздела /usr в <a rel="nofollow" href="https://systemd.io/DISCOVERABLE_PARTITIONS/">https://systemd.io/DISCOVERABLE_PARTITIONS/</a> и systemd-repart</li>
</ul>
<p>И множество не менее любопытных изменений, достойных конструктивного и эмоционально-насыщенного обсуждения на ЛОРе.</p>
<p>Источник: <a 
content="nofollow" href="http://www.linux.org.ru/news/linux-general/16025036">linux.org.ru</a></p><p>The post <a href="https://prohoster.info/blog/novosti-interneta/systemd-247/" target="_blank">systemd 247</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>libmdbx 0.9.2</title>
		<link>https://prohoster.info/blog/novosti-interneta/libmdbx-0-9-2</link>
		
		<dc:creator><![CDATA[gagarinura]]></dc:creator>
		<pubDate>Fri, 27 Nov 2020 12:42:27 +0000</pubDate>
				<category><![CDATA[Новости интернета]]></category>
		<guid isPermaLink="false">https://prohoster.info/blog/novosti-interneta/libmdbx-0-9-2</guid>

					<description><![CDATA[<p>Вышла версия 0.9.2 библиотеки libmdbx реализующей ультра-быстрый компактный встраиваемый движок ключ-значение. libmdbx является глубокой переработкой...</p>
<p>The post <a href="https://prohoster.info/blog/novosti-interneta/libmdbx-0-9-2/" target="_blank">libmdbx 0.9.2</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>Вышла версия 0.9.2 библиотеки libmdbx реализующей ультра-быстрый компактный встраиваемый движок ключ-значение.</p>
<p><noindex><noindex></p>
<p><a rel="nofollow" href="https://github.com/erthink/libmdbx">libmdbx</a> является глубокой переработкой легендарной <a rel="nofollow" href="https://ru.bmstu.wiki/LMDB_(Lightning_Memory-Mapped_Database)">СУБД LMDB</a> и по заявлению разработчиков превосходит прародителя по надежности, набору возможностей и производительности.</p>
<p></noindex></noindex></p>
<p>Основные новшества, доработки и исправления:</p>
<ul>
<li>Доступны привязки для <a rel="nofollow" href="https://github.com/snej/nimdbx">Nim</a> (автор Jens Alfke, архитектор в <a rel="nofollow" href="https://www.couchbase.com/">Couchbase</a>) и <a rel="nofollow" href="https://github.com/Kerollmops/mdbx-rs">Rust</a> (автор Clément Renault, основатель <a rel="nofollow" href="https://www.meilisearch.com/">MeiliSearch</a>).</li>
<li>Доступен пакет для <a rel="nofollow" href="https://buildroot.org/">buildroot</a> (ожидается обновление).</li>
<li>Устранено более 20 ошибок и недочетов, в том числе обеспечена работа на Windows 2000/XP (для <a rel="nofollow" href="https://www.miranda-ng.org/">Miranda NG</a>).</li>
<li>Добавлены функции копирования курсоров, безопасного удаления файлов БД в многопроцесной среде и функционал поиска lowerbound для multimap (с поддержкой сортировки multi-value элементов). Ускорено завершение вложенных транзакций.</li>
<li>Расширены внутренние тесты, в том числе для применения библиотеки в <a rel="nofollow" href="https://ethereum.org/ru/">TurboGeth/Ethereum</a>.</li>
</ul>
<p><noindex></p>
<p>C <a rel="nofollow" href="https://github.com/erthink/libmdbx/releases/tag/v0.9.1">предыдущего релиза</a> внесено более 130 изменений, удалено ~1200 строк, добавлено ~3500.</p>
<p></noindex></p>
<p>Источник: <a 
content="nofollow" href="http://www.linux.org.ru/news/opensource/16023912">linux.org.ru</a></p><p>The post <a href="https://prohoster.info/blog/novosti-interneta/libmdbx-0-9-2/" target="_blank">libmdbx 0.9.2</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Книга «Linux API. Исчерпывающее руководство»</title>
		<link>https://prohoster.info/blog/novosti-interneta/kniga-linux-api-ischerpyvayushhee-rukovodstvo</link>
		
		<dc:creator><![CDATA[gagarinura]]></dc:creator>
		<pubDate>Thu, 26 Nov 2020 18:42:47 +0000</pubDate>
				<category><![CDATA[Новости интернета]]></category>
		<guid isPermaLink="false">https://prohoster.info/blog/novosti-interneta/kniga-linux-api-ischerpyvayushhee-rukovodstvo</guid>

					<description><![CDATA[<p>Добрый день! Предлагаю вашему вниманию книгу &#171;Linux API. Исчерпывающее руководство&#187;(перевод книги The Linux Programming Interface)....</p>
<p>The post <a href="https://prohoster.info/blog/novosti-interneta/kniga-linux-api-ischerpyvayushhee-rukovodstvo/" target="_blank">Книга «Linux API. Исчерпывающее руководство»</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></description>
										<content:encoded><![CDATA[<p><a rel="nofollow" href="https://www.linux.org.ru/images/19475/original.jpg" itemprop="contentURL"><br />
      <img alt="Книга &laquo;Linux API. Исчерпывающее руководство&raquo;" src="/wp-content/uploads/2020/11/c44a1049a71cb308904876f501db63a2.jpg" style="display:block;margin: 0 auto;" /></p>
<p>    </a></p>
<p><noindex>      <noindex></p>
<p>Добрый день! Предлагаю вашему вниманию книгу &laquo;Linux API. Исчерпывающее руководство&raquo;(перевод книги <a rel="nofollow" href="https://en.wikipedia.org/wiki/The_Linux_Programming_Interface">The Linux Programming Interface</a>). Ее можно заказать на сайте издательства, и если применить промокод <strong>LinuxAPI</strong> , то получите скидку 30%.</p>
<p></noindex></noindex></p>
<p>Отрывок из книги для ознакомления:</p>
<h1>Сокеты: архитектура сервера</h1>
<p>В этой главе мы обсудим основы проектирования итерационных и параллельных серверов, а также рассмотрим специальный демон inetd, который облегчает создание серверных интернет-приложений.</p>
<h4>Итерационные и параллельные серверы</h4>
<p>Существуют две распространенные архитектуры сетевых серверов на основе сокетов:</p>
<ul>
<li>
<p>итерационная: сервер обслуживает клиентов по одному, сначала обрабатывая запрос (или несколько запросов) одного клиента и затем переходя к следующему;</p>
</li>
<li>
<p>параллельная: сервер спроектирован для обслуживания нескольких клиентов одновременно.</p>
</li>
</ul>
<p>В разделе 44.8 уже был представлен пример итерационного сервера на основе очередей FIFO.</p>
<p>Итерационные серверы обычно подходят только в ситуациях, когда клиентские запросы можно обработать достаточно быстро, так как каждый клиент вынужден ждать, пока не обслужат любых других клиентов, находящихся перед ним. Обычным сценарием использования этого подхода является обмен единичными запросами и ответами между клиентом и сервером.</p>
<p>Параллельные серверы подходят в случаях, когда на обработку каждого запроса уходит значительное количество времени или клиент и сервер выполняют длительный обмен сообщениями. В данной главе мы в основном сосредоточимся на традиционном (и наиболее простом) способе проектирования параллельных серверов, который состоит в создании отдельного дочернего процесса для каждого нового клиента. Такой процесс выполняет всю работу по обслуживанию клиента, после чего завершается. Поскольку каждый из этих процессов функционирует независимо, можно обслуживать несколько клиентов одновременно. Основная задача главного серверного процесса (родителя) заключается в создании отдельного потомка для каждого нового клиента (как вариант, вместо процессов можно создавать потоки выполнения).</p>
<p>В следующих разделах мы рассмотрим примеры итерационного и параллельного серверов на основе сокетов интернет-домена. Эти два сервера реализуют упрощенный вариант службы echo (RFC 862), которая возвращает копию любого сообщения, посланного ей клиентом.</p>
<h4>Итерационный UDP-сервер echo</h4>
<p>В этом и следующем разделе мы представим серверы для службы echo. Она доступна на порте с номером 7 и работает как по UDP, так и по TCP (данный порт зарезервирован, в связи с чем сервер echo необходимо запускать с привилегиями администратора).</p>
<p>UDP-сервер echo постоянно считывает датаграммы и возвращает отправителю их копии. Поскольку серверу нужно обрабатывать только одно сообщение за раз, здесь будет достаточно итерационной архитектуры. Заголовочный файл для серверов показан в листинге 56.1.</p>
<p><strong>Листинг 56.1</strong>. Заголовочный файл для программ id_echo_sv.c и id_echo_cl.c</p>
<p>#include &quot;inet_sockets.h&quot; /* Объявляет функции нашего сокета */<br />
#include &quot;tlpi_hdr.h&quot;</p>
<p>#define SERVICE &quot;echo&quot; /* Имя UDP-службы */</p>
<p>#define BUF_SIZE 500 /* Максимальный размер датаграмм, которые<br />
могут быть прочитаны клиентом и сервером */<br />
____________________________________________________________________sockets/id_echo.h </p>
<p>В листинге 56.2 представлена реализация сервера. Стоит отметить следующие моменты:</p>
<ul>
<li>
<p>для перевода сервера в режим демона мы задействуем функцию becomeDaemon() из раздела 37.2;</p>
</li>
<li>
<p>чтобы сделать программу более компактной, мы используем библиотеку для работы с сокетами интернет-домена, разработанную в разделе 55.12;</p>
</li>
<li>
<p>если сервер не может вернуть ответ клиенту, то записывает сообщение в журнал, применяя вызов syslog().</p>
</li>
</ul>
<p>В реальном приложении мы бы, скорее всего, ввели определенное ограничение на частоту записи сообщений с помощью syslog(). Это исключило бы возможность переполнения системного журнала злоумышленником. К тому же не стоит забывать, что каждый вызов syslog() довольно затратный, так как по умолчанию использует fsync().</p>
<p><strong>Листинг 56.2</strong>. Итерационный сервер, который реализует UDP-службу echo</p>
<p>_________________________________________________________________sockets/id_echo_sv.c<br />
#include &lt;syslog.h&gt;<br />
#include &quot;id_echo.h&quot;<br />
#include &quot;become_daemon.h&quot;</p>
<p>int<br />
main(int argc, char *argv[])<br />
{<br />
   int sfd;<br />
   ssize_t numRead;<br />
   socklen_t len;<br />
   struct sockaddr_storage claddr;<br />
   char buf[BUF_SIZE];<br />
   char addrStr[IS_ADDR_STR_LEN];</p>
<p>   if (becomeDaemon(0) == -1)<br />
       errExit(&quot;becomeDaemon&quot;);</p>
<p>   sfd = inetBind(SERVICE, SOCK_DGRAM, NULL);<br />
   if (sfd == -1) {<br />
      syslog(LOG_ERR, &quot;Could not create server socket (%s)&quot;,<br />
         strerror(errno));<br />
      exit(EXIT_FAILURE);</p>
<p>   /* Получаем датаграммы и возвращаем отправителям их копии */<br />
   }<br />
   for (;;) {<br />
      len = sizeof(struct sockaddr_storage);<br />
       numRead = recvfrom(sfd, buf, BUF_SIZE, 0, (struct sockaddr *) &amp;claddr, &amp;len);</p>
<p>       if (numRead == -1)<br />
           errExit(&quot;recvfrom&quot;);<br />
       if (sendto(sfd, buf, numRead, 0, (struct sockaddr *) &amp;claddr, len)<br />
            != numRead)<br />
          syslog(LOG_WARNING, &quot;Error echoing response to %s (%s)&quot;,<br />
            inetAddressStr((struct sockaddr *) &amp;claddr, len,<br />
                addrStr, IS_ADDR_STR_LEN),<br />
             strerror(errno));<br />
   }<br />
}<br />
_________________________________________________________________sockets/id_echo_sv.c</p>
<p>Для проверки работы сервера мы используем программу из листинга 56.3. В ней тоже применяется библиотека для работы с сокетами интернет-домена, разработанная в разделе 55.12. В качестве первого аргумента командной строки клиентская программа принимает имя сетевого узла, на котором находится сервер. Клиент входит в цикл, где отправляет серверу каждый из оставшихся аргументов в виде отдельных датаграмм, а затем считывает и выводит датаграммы, полученные от сервера в ответ.</p>
<p><strong>Листинг 56.3</strong>. Клиент для UDP-службы echo</p>
<p>#include &quot;id_echo.h&quot;</p>
<p>int<br />
main(int argc, char *argv[])<br />
{<br />
   int sfd, j;<br />
   size_t len;<br />
   ssize_t numRead;<br />
   char buf[BUF_SIZE];</p>
<p>   if (argc &lt; 2 || strcmp(argv[1], &quot;&#8212;help&quot;) == 0)<br />
      usageErr(&quot;%s host msg&#8230;n&quot;, argv[0]);</p>
<p>   /* Формируем адрес сервера на основе первого аргумента командной строки */<br />
   sfd = inetConnect(argv[1], SERVICE, SOCK_DGRAM);<br />
   if (sfd == -1)<br />
      fatal(&quot;Could not connect to server socket&quot;);</p>
<p>   /* Посылаем серверу остальные аргументы в виде отдельных датаграмм */<br />
   for (j = 2; j &lt; argc; j++) {<br />
      len = strlen(argv[j]);<br />
      if (write(sfd, argv[j], len) != len)<br />
         fatal(&quot;partial/failed write&quot;);</p>
<p>      numRead = read(sfd, buf, BUF_SIZE);<br />
      if (numRead == -1)<br />
         errExit(&quot;read&quot;);<br />
      printf(&quot;[%ld bytes] %.*sn&quot;, (long) numRead, (int) numRead, buf);<br />
   }<br />
   exit(EXIT_SUCCESS);<br />
}<br />
_________________________________________________________________sockets/id_echo_cl.c</p>
<p>Ниже показан пример того, что мы увидим при запуске сервера и двух экземпляров клиента:</p>
<p>$ su              // Для привязки к зарезервированному порту нужны привилегии<br />
Password:<br />
# ./id_echo_sv    // Сервер переходит в фоновый режим<br />
# exit            // Отказываемся от прав администратора<br />
$ ./id_echo_cl localhost hello world  // Этот клиент отправляет две датаграммы<br />
[5 bytes] hello                       // Клиент выводит ответ, полученный от сервера<br />
[5 bytes] world<br />
$ ./id_echo_cl localhost goodbye      // Этот клиент шлет одну датаграмму<br />
[7 bytes] goodbye</p>
<p>Желаю приятного чтения)</p>
<p>Источник: <a 
content="nofollow" href="http://www.linux.org.ru/news/doc/16022172">linux.org.ru</a></p><p>The post <a href="https://prohoster.info/blog/novosti-interneta/kniga-linux-api-ischerpyvayushhee-rukovodstvo/" target="_blank">Книга «Linux API. Исчерпывающее руководство»</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Анонс платы IcepeakITX ELBRUS-8CB</title>
		<link>https://prohoster.info/blog/novosti-interneta/anons-platy-icepeakitx-elbrus-8cb</link>
		
		<dc:creator><![CDATA[gagarinura]]></dc:creator>
		<pubDate>Thu, 26 Nov 2020 00:42:15 +0000</pubDate>
				<category><![CDATA[Новости интернета]]></category>
		<guid isPermaLink="false">https://prohoster.info/blog/novosti-interneta/anons-platy-icepeakitx-elbrus-8cb</guid>

					<description><![CDATA[<p>Тихо и незаметно загадочная группа неустановленных лиц готовит к выходу ориентированную на безопасность материнскую плату...</p>
<p>The post <a href="https://prohoster.info/blog/novosti-interneta/anons-platy-icepeakitx-elbrus-8cb/" target="_blank">Анонс платы IcepeakITX ELBRUS-8CB</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></description>
										<content:encoded><![CDATA[<p><noindex>      </p>
<p>Тихо и незаметно загадочная группа неустановленных лиц <a rel="nofollow" href="https://www.crowdsupply.com/sra-centr8/icepeakitx-elbrus-8cb">готовит</a> к выходу ориентированную на безопасность материнскую плату на базе процессора Эльбрус-8СВ.</noindex>
</p>
<p>
Характеристики платы:</p>
<ul>
<li> Форм-фактор: Mini-ITX
  </li>
<li> Процессор: МЦСТ Эльбрус-8СВ 8-ядер @ 1.5 ГГц VLIW (полностью совместимый с LGA3647 по креплению радиатора)
  </li>
<li> Южный мост: МЦСТ КПИ-2
  </li>
<li> Память: 8 Гб или 32 Гб (2x [4+1] 8 Гбит/32 Гбит DDR4 DRAM 2400 МГц ECC)
  </li>
<li> SATA: 2x M.2_2280 + 4x SATA_6G
  </li>
<li> Расширенное хранилище: 1x microSD (HC)
  </li>
<li> Кэш: 1x PATA 8 GB (требуется как кэш для бинарной трансляции из x86)
  </li>
<li> PCIe: 1x PCIe2_x16 + 1x PCIe2_x1 (as USB3)
  </li>
<li> Безопасность:
<ul>
<li> 1x TPM SPI connector
      </li>
<li> 2x прошивка загрузчика с дополнительными мерами безопасности
      </li>
<li> 3x heatsink detectors
      </li>
<li> 1x temperature sensor trigger
      </li>
<li> 2x tampering sensor </li>
</ul>
<p>    Сеть: </p>
<ul>
<li> Marvell M88E1111-RCJ chipset
      </li>
<li> 1x 1G_SFP
      </li>
<li> 3x 1G_RJ45 </li>
</ul>
</li>
<li> GPS: GPS с дополнительным внутренним портом для антены
  </li>
<li> USB:
<ul>
<li> 2x USB 2.0 (rear)
      </li>
<li> 4x USB 2.0 (+PD) (rear)
      </li>
<li> 2x USB 3.0 (rear)
      </li>
<li> 1x USB 2.0 (internal) </li>
</ul>
</li>
<li> COM: 1x COM header (internal) required for debugging boot
  </li>
<li> Отладка: 1x 6-pin debug port, 1x 4-pin (USB to GPIO)
  </li>
<li> Видео: 2x HDMI (1 HDMI per SM768/256 MB)
  </li>
<li> Аудио: Integrated simple audio codec (Linux-compatible)
  </li>
<li> Дополнительные сенсоры:
<ul>
<li> Fall detection sensor
      </li>
<li> Gyroscope
      </li>
<li> Water sensor </li>
</ul>
</li>
<li> Дополнительные разъёмы:
<ul>
<li> 2x PWM-4
      </li>
<li> RTC battery connector
      </li>
<li> Simple BEEP connector </li>
</ul>
</li>
<li> PCB: 14 layers (level 5 accuracy) / ISOLA Hi Tg 180
</li>
</ul>
<p><noindex></p>
<p>Стоит отметить что разработчики планируют соблюдать GPL везде где это возможно и заявляют о <a rel="nofollow" href="https://vimeo.com/475394726">готовности</a> (см. комментарии) предоставить исходники ядра и прочих утилит, которые ранее официально не выкладывались в сеть:</p>
<p></noindex></p>
<blockquote><p><noindex></p>
<p> Kernel will be open for every buyer, but kernel source code can be compiled only on ELBRUS and only with MCST proprietary C/C++ compiler and build system.</p>
</blockquote>
<blockquote>
<p> All other parts will be as source code &#8212; if we have it and was receive without super strong restrictions or parts own to us. (will be guarantee to include glibc and other GPL parts)</p>
</blockquote>
<p>Про плату на <a rel="nofollow" href="https://www.tomshardware.com/news/elbrus-crowdfund-motherboard">TomsHardware</a>.</p>
<p></noindex></p>
<p>Источник: <a 
content="nofollow" href="http://www.linux.org.ru/news/hardware/16021332">linux.org.ru</a></p><p>The post <a href="https://prohoster.info/blog/novosti-interneta/anons-platy-icepeakitx-elbrus-8cb/" target="_blank">Анонс платы IcepeakITX ELBRUS-8CB</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Правительство утвердило порядок предустановки российского ПО</title>
		<link>https://prohoster.info/blog/novosti-interneta/pravitelstvo-utverdilo-poryadok-predustanovki-rossijskogo-po</link>
		
		<dc:creator><![CDATA[gagarinura]]></dc:creator>
		<pubDate>Thu, 26 Nov 2020 06:42:38 +0000</pubDate>
				<category><![CDATA[Новости интернета]]></category>
		<guid isPermaLink="false">https://prohoster.info/blog/novosti-interneta/pravitelstvo-utverdilo-poryadok-predustanovki-rossijskogo-po</guid>

					<description><![CDATA[<p>На все произведенные после 1 января и продаваемые в России смартфоны и планшеты должны предустанавливаться...</p>
<p>The post <a href="https://prohoster.info/blog/novosti-interneta/pravitelstvo-utverdilo-poryadok-predustanovki-rossijskogo-po/" target="_blank">Правительство утвердило порядок предустановки российского ПО</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>На все произведенные после 1 января и продаваемые в России смартфоны и планшеты должны предустанавливаться 16 отечественных приложений, на компьютеры — три, на Smart TV — четыре. Такое требование утвердило правительство РФ.</p>
<p>В опубликованном документе говорится, что с 1 января 2021 года предустанавливать российское ПО будут обязаны производители смартфонов, планшетов и другого «оборудования беспроводной связи для бытового использования» с сенсорным экраном и «двумя и более-функциями», а также для стационарных компьютеров, ноутбуков, системных блоков и телевизоров с функцией Smart TV.</p>
<p>Больше всего классов программ должно предустанавливаться на смартфоны и планшеты:</p>
<ul>
<li>браузеры;</li>
<li>поисковые системы;</li>
<li>антивирусы;</li>
<li>приложение платежного сервиса «Мир»;</li>
</ul>
<p>Для компьютеров обязательной будет предустановка российского браузера, офисного ПО и антивируса, для Smart TV — браузера, поисковой системы, социальной сети и аудиовизуального сервиса.</p>
<p>Источник: <a 
content="nofollow" href="http://www.linux.org.ru/news/russia/16017287">linux.org.ru</a></p><p>The post <a href="https://prohoster.info/blog/novosti-interneta/pravitelstvo-utverdilo-poryadok-predustanovki-rossijskogo-po/" target="_blank">Правительство утвердило порядок предустановки российского ПО</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Dotenv-linter обновился до версии 2.2.1</title>
		<link>https://prohoster.info/blog/novosti-interneta/dotenv-linter-obnovilsya-do-versii-2-2-1</link>
		
		<dc:creator><![CDATA[gagarinura]]></dc:creator>
		<pubDate>Tue, 24 Nov 2020 00:42:14 +0000</pubDate>
				<category><![CDATA[Новости интернета]]></category>
		<guid isPermaLink="false">https://prohoster.info/blog/novosti-interneta/dotenv-linter-obnovilsya-do-versii-2-2-1</guid>

					<description><![CDATA[<p>Вышло обновление dotenv-linter — полезного инструмента для проверки и исправления ошибок в .env файлах (файлы...</p>
<p>The post <a href="https://prohoster.info/blog/novosti-interneta/dotenv-linter-obnovilsya-do-versii-2-2-1/" target="_blank">Dotenv-linter обновился до версии 2.2.1</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>Вышло обновление dotenv-linter — полезного инструмента для проверки и исправления ошибок в .env файлах (файлы переменных среды Docker&rsquo;а).</p>
<p>Многие программисты стараются при разработке ПО придерживаться манифеста двенадцати факторов. Такой подход позволяет избежать большого количества проблем, связанных с развертыванием приложений и их дальнейшей поддержкой. Один из принципов этого манифеста гласит, что все настройки должны хранится в переменных окружения. Это позволяет менять их под разные окружения (Staging, QA, Production) без изменения кода. Для хранения переменных и их значений широко используются .env-файлы.</p>
<p>dotenv-linter находит и исправляет самые частые проблемы в подобных файлах: дублирование имён, неправильный разделитель, переменные без значения, лишние пробелы и так далее. Для каждого файла при этом создаётся резервная копия, чтобы изменения можно было откатить.</p>
<p>Инструмент написан на Rust, он очень быстрый и универсальный — его можно подключить к любому проекту на любом языке программирования.</p>
<p>Dotenv-linter входит в «Awesome Rust Mentors» и помогает начинающим контрибьюторам пройти первые шаги в разработке открытого ПО.</p>
<p><noindex><noindex></p>
<p>Репозиторий проекта: <a rel="nofollow" href="https://github.com/dotenv-linter/dotenv-linter">https://github.com/dotenv-linter/dotenv-linter</a></p>
<p></noindex></noindex><br />
<noindex></p>
<p>Статья с примерами и описанием работы: <a rel="nofollow" href="https://www.mgrachev.com/2020/04/20/dotenv-linter/">https://www.mgrachev.com/2020/04/20/dotenv-linter/</a></p>
<p></noindex></p>
<p>Источник: <a 
content="nofollow" href="http://www.linux.org.ru/news/opensource/16012132">linux.org.ru</a></p><p>The post <a href="https://prohoster.info/blog/novosti-interneta/dotenv-linter-obnovilsya-do-versii-2-2-1/" target="_blank">Dotenv-linter обновился до версии 2.2.1</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Проекту GIMP исполнилось 25 лет</title>
		<link>https://prohoster.info/blog/novosti-interneta/proektu-gimp-ispolnilos-25-let</link>
		
		<dc:creator><![CDATA[gagarinura]]></dc:creator>
		<pubDate>Mon, 23 Nov 2020 12:42:18 +0000</pubDate>
				<category><![CDATA[Новости интернета]]></category>
		<guid isPermaLink="false">https://prohoster.info/blog/novosti-interneta/proektu-gimp-ispolnilos-25-let</guid>

					<description><![CDATA[<p>21 ноября исполнилось 25 лет с момента первого анонса свободного графического редактора GIMP. Проект вырос...</p>
<p>The post <a href="https://prohoster.info/blog/novosti-interneta/proektu-gimp-ispolnilos-25-let/" target="_blank">Проекту GIMP исполнилось 25 лет</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></description>
										<content:encoded><![CDATA[<p><a rel="nofollow" href="https://www.linux.org.ru/images/19474/original.jpg" itemprop="contentURL"><br />
      <img alt="Проекту GIMP исполнилось 25 лет" src="/wp-content/uploads/2020/11/789e61a2f05db7a34e27ae8149cc8a2d.jpg" style="display:block;margin: 0 auto;" /></p>
<p>    </a></p>
<p><noindex>      <noindex></p>
<p>21 ноября исполнилось 25 лет с момента первого анонса свободного графического редактора <a rel="nofollow" href="https://www.gimp.org">GIMP</a>. Проект вырос из курсовой работы двух студентов Беркли — Спенсера Кимбалла и Питера Мэттиса. Оба автора интересовались компьютерной графикой и были недовольны уровнем приложений для работы с изображениями в UNIX.</p>
<p></noindex></noindex></p>
<p>Изначально для интерфейса программы использовалась библиотека Motif. Но в ходе работы над версией 0.60 Питер устал от этого тулкита настолько, что написал свой собственный и назвал его GTK (GIMP ToolKit). Позднее на основе GTK были написаны пользовательские среды GNOME и Xfce, несколько форков GNOME и сотни, если не тысячи отдельных приложений.</p>
<p>В конце 90-х группа разработчиков из голливудской студии Rhythm&amp;Hues заинтересовалось проектом и подготовила версию GIMP с поддержкой повышенной разрядности на цветовой канал и базовыми инструментами работы с анимацией. Поскольку архитектура получившегося проекта их не удовлетворяла, они решили написать новый движок обработки графики на ациклических графах и в итоге создали базу библиотеки GEGL. Созданный до этого форк GIMP зажил своей непродолжительной жизнью под названием FilmGIMP, впоследствии был переименован в Cinepaint и был использован при производстве более двух десятков высокобюджетных кинофильмов. Среди них: &laquo;Последний самурай&raquo;, &laquo;Лига выдающихся джентльменов&raquo;, серия &laquo;Гарри Поттер&raquo;, &laquo;Планета обезьян&raquo;, &laquo;Человек-паук&raquo;.</p>
<p>В 2005 году новый разработчик Эвинд Колас подхватил разработку GEGL, и год спустя команда начала понемногу переписывать GIMP для использования GEGL. Этот процесс затянулся почти на 12 лет, но в итоге к 2018 году программа полностью перешла на новый движок и получила поддержку работы с точностью вплоть до 32 бит с плавающей точкой на канал. Это одно из главных условий возможности использования программы в профессиональной среде.</p>
<p>Между 2005 и 2012 годами команда сотрудничала с Петером Сиккингом — руководителем берлинской компании Man+Machine Works, специализирующейся на UX/UI. Команда Петера помогла разработчикам GIMP сформулировать новое позиционирование проекта, провела два раунда интервью с целевой аудиторией, написала ряд функциональных спецификаций и спроектировала несколько улучшений в интерфейсе. Самыми популярными из них оказались однооконный интерфейс и новый инструмент кадрирования, концепция активных зон которого далее перекочевала в другие приложения, такие как darktable и LuminanceHDR. Самым непопулярным &ndash; разделение на сохранение проектных данных (XCF) и экспорт всех остальных (JPEG, PNG, TIFF и т.д.).</p>
<p>В 2016 году у проекта появился собственный долгоиграющий анимационный проект ZeMarmot, при работе над которым обкатываются некоторые идеи по улучшению GIMP для целевой аудитории. Последнее такое улучшение &ndash; поддержка множественного выделения слоёв в нестабильной ветке разработки.</p>
<p>В настоящее время готовится версия GIMP 3.0 на базе GTK3. На версию 3.2 запланирована реализация недеструктивной обработки изображений.</p>
<p><noindex></p>
<p>Оба исходных разработчика GIMP продолжают работать вместе (один из них и вовсе женился на сестре другого) и сейчас руководят проектом <a rel="nofollow" href="https://www.cockroachlabs.com/">CockroachDB</a>.</p>
<p></noindex><br />
<noindex></p>
<p>Питер Мэттис <a rel="nofollow" href="https://twitter.com/petermattis/status/1330524909185994752">присоединился к поздравлениям</a> и поблагодарил волонтеров, которые продолжают начатый им проект.</p>
<p></noindex><br />
<noindex></p>
<p>Спенсер Кимбалл несколько дней назад дал <a rel="nofollow" href="https://youtu.be/H-R8qgXxFb0">видеоинтервью о CockroachDB</a>. В начале интервью он кратко рассказал об истории создания GIMP (05:22), а затем в конце на вопрос ведущего, каким своим достижением гордится больше всего, ответил (57:03): &laquo;CockroachDB приближается к этому статусу, но GIMP &ndash; по-прежнему мой любимый проект. Каждый раз, когда я ставлю GIMP, я вижу, что он снова стал лучше. Если бы GIMP был единственным проектом, который я создал, я бы считал, что прожил жизнь не зря&raquo;.</p>
<p></noindex></p>
<p>Источник: <a 
content="nofollow" href="http://www.linux.org.ru/news/multimedia/16016444">linux.org.ru</a></p><p>The post <a href="https://prohoster.info/blog/novosti-interneta/proektu-gimp-ispolnilos-25-let/" target="_blank">Проекту GIMP исполнилось 25 лет</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Вышел mpv 0.33</title>
		<link>https://prohoster.info/blog/novosti-interneta/vyshel-mpv-0-33</link>
		
		<dc:creator><![CDATA[gagarinura]]></dc:creator>
		<pubDate>Mon, 23 Nov 2020 18:42:21 +0000</pubDate>
				<category><![CDATA[Новости интернета]]></category>
		<guid isPermaLink="false">https://prohoster.info/blog/novosti-interneta/vyshel-mpv-0-33</guid>

					<description><![CDATA[<p>Спустя 10 месяцев с прошлого релиза был опубликован релиз mpv 0.33. С этим релизом сборка...</p>
<p>The post <a href="https://prohoster.info/blog/novosti-interneta/vyshel-mpv-0-33/" target="_blank">Вышел mpv 0.33</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>Спустя 10 месяцев с прошлого релиза был опубликован релиз mpv 0.33. С этим релизом сборка проекта возможна исключительно на Python 3.</p>
<p>В плеер было внесено множества изменений и исправлений, в том числе:</p>
<p>Новые возможности:</p>
<ul>
<li>Фильтрация субтитров по регулярному выражению;</li>
<li>Поддержка HiDPI на Windows;</li>
<li>Поддержка exclusive fullscreen на d3d11;</li>
<li>Возможность использования sixel для проигрывания видео в терминале;</li>
<li>Реализация slice:// для чтения участков медиапотоков;</li>
<li>[x11] Возможность разместить окно на указанном рабочем пространстве;</li>
<li>[Wayland] Пользовательский доступ к wayland-app-id;</li>
<li>По умолчанию отключена поддержка GLX, вместо него предлагается использовать EGL.</li>
</ul>
<p>Изменения:</p>
<ul>
<li>Использование Lua 5.2 по умолчанию (вместо 5.1);</li>
<li>Для сборки теперь необходимо наличие C11 atomics;</li>
<li>Для сборки теперь необходима библиотека libass;</li>
<li>Поддержка Unicode в Lua скриптах;</li>
<li>&laquo;:&raquo; более не является разделителем в списках ключ-значение;</li>
<li>Улучшено растягивание окна в Wayland;</li>
<li>Улучшено автодополнение в bash.</li>
</ul>
<p>Удалены:</p>
<ul>
<li>Поддержка tar в stream_libarchive в связи с многочисленными багами;</li>
<li>Аудиовыходы sndio, rsound, oss;</li>
<li>Поддержка сборки с Python 2;</li>
<li>Вызовы xdg-screensaver, подавляющие переход в режим простоя через dbus.</li>
</ul>
<p>Источник: <a 
content="nofollow" href="http://www.linux.org.ru/news/multimedia/16016590">linux.org.ru</a></p><p>The post <a href="https://prohoster.info/blog/novosti-interneta/vyshel-mpv-0-33/" target="_blank">Вышел mpv 0.33</a> first appeared on <a href="https://prohoster.info/" target="_blank">ProHoster</a>.</p>]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
