<?xml version="1.0" encoding="UTF-8"?>
        <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
        <channel>
        <title>RG-soft.com :: всякое разное об этих ваших интернетах</title>
        <link>http://rg-soft.com</link>
        <description>Последние 20 статей с RG-soft.com</description>
        <atom:link href="http://rg-soft.com/rss.xml" rel="self" type="application/rss+xml" />

          <item>
          <title><![CDATA[JsRender —  JavaScript шаблонизатор]]></title>
          <link>http://rg-soft.com/show/article/aid23/</link>
          <guid>http://rg-soft.com/show/article/aid23/</guid>
          <description><![CDATA[Многие слышали про <strong>jQuery Templates</strong>, некоторые пользовались. Штука крайне удобная, позволяет переложить отрисовку части отображения на сторону клиента, то бишь генерировать html прямиком в браузере, что позволяет во-первых делать крайне быстрые веб-интерфейсы, а во-вторых снижает нагрузку на backend. Но недавно команда jQuery заморозила разработку jQuery Templates на неопределённый срок, чем вызвала немало вопросов в свой адрес.<br />
<br />
Слава яйцам, что человек, занимавшийся разработкой jQuery Templates, форкнул проект и назвал его <strong>JsRender</strong>. И хоть это даже пока и не бета, но работает всё довольно стабильно. Краткий пример как этим пользоваться (у людей, знающих JavaScript проблем с пониманием возникнуть не должно):<br />
<br />
<div class="preblock">&lt;script id=&quot;entry&quot; type=&quot;text/x-jquery-tmpl&quot;&gt;<br />
    &lt;div id=&quot;entry-{{* result += $view.itemNumber; }}&quot;&gt;<br />
        {{=author}}<br />
        &lt;div class=&quot;text&quot;&gt;{{=text!}}&lt;/div&gt;<br />
        {{#each comments}}<br />
            &lt;div class=&quot;comment&quot;&gt;<br />
		        {{=author}} написал:<br />
		        &lt;br&gt;<br />
		        {{=comment!}}<br />
            &lt;/div&gt;<br />
        {{/each}}<br />
    &lt;/div&gt;<br />
&lt;/script&gt;<br />
<br />
&lt;div id=&quot;wrap&quot;&gt;&lt;/div&gt;<br />
<br />
&lt;script&gt;<br />
	var entries = [<br />
		{ author: &quot;user11&quot;, text: &quot;Привет 1&quot;, comments: [<br />
			{ author: &quot;user1&quot;, comment: &quot;Привет 2&quot; },<br />
			{ author: &quot;user2&quot;, comment: &quot;Привет 3&quot; },<br />
			{ author: &quot;user3&quot;, comment: &quot;Привет 4&quot; }<br />
		] },<br />
		{ author: &quot;user22&quot;, text: &quot;Пока 1&quot;, comments: [<br />
			{ author: &quot;user4&quot;, comment: &quot;Пока 2&quot; },<br />
			{ author: &quot;user5&quot;, comment: &quot;Пока 3&quot; },<br />
			{ author: &quot;user6&quot;, comment: &quot;Пока 4&quot; }<br />
		] },<br />
		{ author: &quot;user33&quot;, text: &quot;Проверка&quot;, comments: [] }<br />
	];<br />
	<br />
	$(&quot;#wrap&quot;).html( $(&quot;#entry&quot;).render(entries) );<br />
&lt;/script&gt;</div><br />
<br />
Теперь по пунктам о том, что это было:<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> Всё, что находится в теге &lt;script id=&quot;entry&quot; type=&quot;text/x-jquery-tmpl&quot;&gt; — это шаблон. Синтаксис довольно прост для понимания: {{=author}} выводит поле author из вводных данных, {{=text!}} — поле text. Но обратите внимание на восклицательный знак после имени поля — он означает, что спецсимволы в данных не будут эскейпится, а выведутся «как есть». Полезно, если хотите вставлять куски html в шаблон. Далее код между <strong>{{#each comments}}</strong> и <strong>{{/each}}</strong> выполняется для каждого объекта, внутри множества comments, все названия полей ссылаются на эти поля. <u>{{* result += $view.itemNumber; }}</u> — этот тег выполняет javascript код напрямую, конкретно в этом случае к выводимому результату (result) добавляется текущий номер итерации ($view.itemNumber).<br />
<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> Переменная entries содержит данные, которые парсятся в шаблон. Переменная задана локально, но никто не мешает её, например стянуть AJAX запросом с backend-a.<br />
<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> И самая главная строчка: <strong>$(&quot;#wrap&quot;).html( $(&quot;#entry&quot;).render(entries) );</strong>,<br />
$(&quot;#entry&quot;).render(entries) — парсит шаблон, находящийся в <u>$(&quot;#entry&quot;)</u>, с данными, находящимися в переменной <u>entries</u>. Возвращается готовый html.<br />
<br />
Вот такая вот библиотека. Категорически рекомендую всем её пощупать. Через некоторое время, если это кого-то заинтересует, я продолжу знакомить вас с JsRender.]]></description>
          <pubDate>Thu, 27 Oct 2011 20:18:48 +0300</pubDate>
          </item>

          <item>
          <title><![CDATA[Открытие главного меню в Gnome 2 клавией Win]]></title>
          <link>http://rg-soft.com/show/article/aid22/</link>
          <guid>http://rg-soft.com/show/article/aid22/</guid>
          <description><![CDATA[Это будет самый короткий пост, пожалуй. Достаточно набрать одну команду в консоли:<br />
<br />
<div class="preblock">gconftool-2 --set /apps/metacity/global_keybindings/panel_main_menu --type string &quot;Super_L&quot;</div>]]></description>
          <pubDate>Tue, 25 Oct 2011 17:57:50 +0300</pubDate>
          </item>

          <item>
          <title><![CDATA[Проблема с Compiz на Debian Wheezy]]></title>
          <link>http://rg-soft.com/show/article/aid21/</link>
          <guid>http://rg-soft.com/show/article/aid21/</guid>
          <description><![CDATA[Установил себе на ноутбук Debian Wheezy, Gnome 2, решил прикрутить Compiz и столкнулся с одной подлой проблемой — после авторизации в GDM загружался рабочий стол и прекращалась отрисовка. Полностью. И именно отрисовка, методом тыка удавалось создавать пустые файлы, открыть внешний хард (слышно по его работе) и даже сделать скриншот. А на экране ничего не менялось. Поэтому пишу этот «ещё один пост о том <u>как правильно настроить Compiz на Debian</u>».<br />
<br />
В первую очередь, чтобы избежать дальнейшей путаницы надо убедиться, что ccsm пишет свои настройки в gconf. Для этого должен быть установлен пакет compizconfig-backend-gconf.<br />
<br />
<div class="preblock">aptitude install compizconfig-backend-gconf</div><br />
<br />
Во-вторых, само собой надо корректно установить драйвера к видео карте. Информации на этот счёт в интернете пруд пруди, подробно на этом останавливаться я не буду. В моём случае это были <a target="_blank" href="http://wiki.debian.org/NvidiaGraphicsDrivers">драйвера к Nvidia</a>.<br />
<br />
Далее нужно дописать нужные настройки в файле <strong>/etc/X11/xorg.conf</strong>, а это:<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> в Section &quot;ServerLayout&quot; добавить <strong>Option &quot;AIGLX&quot; &quot;true&quot;</strong><br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> в Section &quot;Module&quot; закомментировать <strong>Load &quot;dri&quot;</strong> и <strong>Load &quot;dri2&quot;</strong><br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> в Section &quot;Screen&quot; добавить <strong>Option &quot;AddARGBGLXVisuals&quot; &quot;true&quot;</strong>, <strong>Option &quot;RenderAccel&quot; &quot;true&quot;</strong> и <strong>Option &quot;AllowGLXWithComposite&quot; &quot;true&quot;</strong>.<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> в конец файла добавить секцию (если её нет):<br />
<br />
<div class="preblock">Section &quot;Extensions&quot;<br />
     Option &quot;Composite&quot; &quot;enable&quot;<br />
EndSection</div><br />
<br />
Теперь что касается решения моей проблемы — она заключалась в том, что indirect rendering (AIGLX) не запускался, несмотря на настройку в xorg.conf. Слава яйцам, что есть параметр командной строки <strong>--indirect-rendering</strong>. Его-то и надо добавить к строке запуска в файле <strong>/usr/share/applications/compiz.desktop</strong>. Открываем этот файл и ищем строку, начинающуюся с Exec=, выглядит она примерно так: <u>Exec=compiz ccp decoration --sm-client-id $DESKTOP_AUTOSTART_ID</u>, к ней мы и добавляем параметр <strong>--indirect-rendering</strong>.<br />
<br />
Остался последний штрих: нужно заменить оконный менеджер по-умолчанию с <u>gnome-wm</u> на <strong>compiz</strong>. Делается это одной командой в консоли:<br />
<br />
<div class="preblock">gconftool-2 --set -t string /desktop/gnome/session/required_components/windowmanager compiz</div><br />
<br />
Всё, перезагружаемся, compiz должен работать.]]></description>
          <pubDate>Tue, 25 Oct 2011 16:33:19 +0300</pubDate>
          </item>

          <item>
          <title><![CDATA[Релиз NetBeans IDE 7.0]]></title>
          <link>http://rg-soft.com/show/article/aid20/</link>
          <guid>http://rg-soft.com/show/article/aid20/</guid>
          <description><![CDATA[На днях увидела свет новая версия, пожалуй, лучшей бесплатной IDE. Нового в этой версии:<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> поддержка HTML5<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> Поддержка Git 1.7.х<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> PHP Rename Refactoring<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> Line wrapping<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> и различные другие плюшки<br />
<br />
<a target="_blank" href="http://netbeans.org/downloads/index.html">Скачиваем здесь</a>]]></description>
          <pubDate>Sun, 24 Apr 2011 15:10:38 +0300</pubDate>
          </item>

          <item>
          <title><![CDATA[Обновление MySQL до 5.1 в Debian Squeeze]]></title>
          <link>http://rg-soft.com/show/article/aid19/</link>
          <guid>http://rg-soft.com/show/article/aid19/</guid>
          <description><![CDATA[При обновлении Debian с Lenny до Squeeze у некоторых из вас может возкникнуть ошибка при установке MySQL 5.1. Выглядит это дело примерно вот так:<br />
<br />
<div class="preblock">Setting up mysql-server-5.1 (5.1.49-3) ...<br />
Stopping MySQL database server: mysqld.<br />
110128 17:10:57 [Note] Plugin &#039;FEDERATED&#039; is disabled.<br />
110128 17:10:57 InnoDB: Started; log sequence number 0 44233<br />
110128 17:10:57 InnoDB: Starting shutdown...<br />
110128 17:11:03 InnoDB: Shutdown completed; log sequence number 0 44233<br />
Starting MySQL database server: mysqld . . . . . . . . . . . . . . failed!<br />
invoke-rc.d: initscript mysql, action &quot;start&quot; failed.<br />
dpkg: error processing mysql-server-5.1 (--configure):<br />
subprocess installed post-installation script returned error exit status 1<br />
dpkg: dependency problems prevent configuration of mysql-server:<br />
mysql-server depends on mysql-server-5.1; however:<br />
Package mysql-server-5.1 is not configured yet.<br />
dpkg: error processing mysql-server (--configure):<br />
dependency problems - leaving unconfigured<br />
configured to not write apport reports<br />
configured to not write apport reports<br />
Errors were encountered while processing:<br />
mysql-server-5.1<br />
mysql-server<br />
E: Sub-process /usr/bin/dpkg returned an error code (1)</div><br />
<br />
А лечится всё предельно просто: в папке <strong>/etc/mysql</strong> переименуйте текущий <strong>my.cnf</strong> в <strong>my.cnf.backup</strong> (или просто удалите), а на его место поставьте <strong>my.cnf.dpkg-dist</strong>, находящийся в этой-же папке.]]></description>
          <pubDate>Sat, 26 Feb 2011 13:02:33 +0300</pubDate>
          </item>

          <item>
          <title><![CDATA[Thunderbird вместо Evolution в Ubuntu]]></title>
          <link>http://rg-soft.com/show/article/aid18/</link>
          <guid>http://rg-soft.com/show/article/aid18/</guid>
          <description><![CDATA[В Убунту есть очень удобная фишка - апплет уведомлений. К сожалению в плане e-mail он явно заточен под Evolution, который лично мне не очень нравится. Поэтому в этом посте я расскажу как интегрировать Thunderbird во все эти фишки. А также расскажу как прикрутить Google calendar к Thunderbird.<br />
<br />
1. <strong>Интеграция Thunderbird с апплетом уведомлений Ubuntu</strong>.<br />
<br />
Для начала предлагаю удалить все ненужные индикаторы из этого меню. Настройки этого дела лежат в виде отдельного файла для каждой программы в папке <strong>/usr/share/indicators/messages/applications</strong><br />
<br />
<div class="preblock">hnh@kgb:~$ cd /usr/share/indicators/messages/applications<br />
hnh@kgb:/usr/share/indicators/messages/applications$ ls<br />
evolution  pidgin</div><br />
<br />
В моём случае это evolution и pidgin. Удаляем ненужный evolution <strong>rm ./evolution</strong>. Теперь самое время допилить руками Thunderbird, чтобы он отображался в этом меню. Для этого необходимо установить 2 расширения: <a target="_blank" href="https://launchpad.net/libnotify-mozilla">Thunderbird Indicator</a> и <a target="_blank" href="https://addons.mozilla.org/af/thunderbird/addon/firetray/">FireTray</a>. Первое добавляет функционал для работы с апплетом уведомлений, а второй - сворачивает Thunderbird в tray, что необходимо для проверки почты.<br />
<br />
Выглядит всё это дело примерно вот так:<br />
<center><img src="http://www.omgubuntu.co.uk/wp-content/uploads/2010/09/image8.png" style="border:0;"></center><br />
<br />
2. <strong>Настройка календаря Thunderbird и интеграция с Google Calendar</strong>.<br />
<br />
Вторая вещь о которой я хочу рассказать - это настройка календаря в Thunderbird. В самой установке календаря нет ничего проще: надо просто установить расширение <a target="_blank" href="https://addons.mozilla.org/af/thunderbird/addon/lightning/">Lightning</a>. Проблемы начинаются когда пытаешься интегрировать этот календарь с Google Calendar. Для этого, во-первых надо поставить расширение <a target="_blank" href="https://addons.mozilla.org/af/thunderbird/addon/provider-for-google-calendar/">Provider for Google Calendar</a>. Затем заходим в Google Calendar, открываем настройки нужного календаря, и ищем снизу &quot;Закрытый адрес календаря&quot; (private link). Копируем ссылку в XML.<br />
<br />
<center><img src="http://www.techiecorner.com/wp-content/uploads/2008/07/thunderbird-sync-google-calendar-private-address-300x90.jpg" style="border:0;"></center><br />
<br />
Далее в Thunderbird добавляем календарь, выбираем &quot;В сети&quot; -&gt; &quot;Google Calendar&quot; и вставляем скопированный адрес. Всё, Thunderbird синхронизирован с Google Calendar. Остался один последний штрих: установив расширение <a target="_blank" href="https://addons.mozilla.org/af/thunderbird/addon/evolution-mirror/">Evolution mirror</a> задачи из Thunderbird станут видны в убунтовском апплете времени.<br />
<br />
<center><img src="http://habreffect.ru/files/57e/7a6c9adc0/Снимок-1.png" style="border:0;"></center>]]></description>
          <pubDate>Fri, 18 Feb 2011 21:32:02 +0300</pubDate>
          </item>

          <item>
          <title><![CDATA[Роли в PostgreSQL]]></title>
          <link>http://rg-soft.com/show/article/aid16/</link>
          <guid>http://rg-soft.com/show/article/aid16/</guid>
          <description><![CDATA[Мигрируя с MySQL на PostgreSQL у многих возникает проблема с пониманиями ролей (roles) в PostgreSQL. Роли - это не прямой аналог пользователей (users) в MySQL, хотя они и могут использоваться в том числе и для авторизации пользователей.<br />
<br />
В целом роли можно разделить на 2 категории:<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> <strong>групповые роли</strong><br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> <strong>роли, используемые для входа</strong><br />
<br />
При создании роли ключевой момент - это передаваемые параметры (атрибуты), они и определяют какого типа будет эта роль, и какими привилегиями она будет располагать. Основные атрибуты:<br />
<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> <u>SUPERUSER | NOSUPERUSER</u> - Указывает, что данная роль имеет статус «суперпользователя», который позволяет осуществлять операции администрирования без каких-либо ограничений. К этим операциям относится доступ, создание/удаление, модификация(изменение) ролей и объектов баз данных. Соответственно,  опция SUPERUSER — разрешает, а NOSUPERUSER — запрещает. По умолчанию установлена NOSUPERUSER.<br />
<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> <u>CREATEDB | NOCREATEDB</u> - Разрешает или запрещает роли создавать БД. По умолчанию: NOCREATEDB.<br />
<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> <u>CREATEROLE | NOCREATEROLE</u> - Разрешает или запрещает создавать/удалять роли. По умолчанию: NOCREATEROLE.<br />
<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> <u>INHERIT | NOINHERIT</u> - Определяет, что роль может наследовать привилегии другой роли, членом которой она является. Роль с атрибутом INHERIT будет иметь те же привилегией доступа к объектам БД, что и та роль, которая является её владельцем, потому что первая является членом последней. По умолчанию: INHERIT.<br />
<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> <u>LOGIN | NOLOGIN</u> - Позволяет роли открывать соединения. Один из ключевых моментов, который следует понять в ролях: если роль не может авторизовываться (т.е. открывать соединения от своего имени), то единственная её функция - это настройка прав доступа к бд для других ролей, и такая роль называется групповой. По умолчанию: NOLOGIN.<br />
<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> <u>CONNECTION LIMIT connlimit</u> - устанавливает лимит открытых соединений на роль, -1 - значение по умолчанию и в данном случае соответствует бесконечности.<br />
<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> <u>[ ENCRYPTED | UNENCRYPTED ] PASSWORD &#039;password&#039;</u> - этот параметр, как несложно догадаться, отвечает за пароль. Есть 2 ньюанса: во-первых пароль имеет смысл указывать только для ролей, используемых для входа, а во-вторых обратите внимание на параметр <u>ENCRYPTED | UNENCRYPTED</u>. Смысл его в том, чтобы указать в каком виде хранить пароль в базе данных: в зашифрованном или нет, по-умолчанию, естественно, пароль шифруется в md5.<br />
<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> <u>IN ROLE rolename</u> - позволяет включить создаваемую роль в существующую роль.<br />
<br />
Групповые роли создаются, как должно быть понятно из названия, для описания особого набора привелегий, который впоследствии могут унаследовать роли, используемые для входа и включённые в созданную групповую роль. Но это всё слова, лучше них скажет небольшой пример:<br />
<br />
<div class="preblock">#создаём групповую роль<br />
CREATE ROLE group NOSUPERUSER NOINHERIT NOCREATEDB NOCREATEROLE;<br />
# создаём роль для входа (пользователь) и включаем её в групповую роль<br />
CREATE ROLE user LOGIN ENCRYPTED PASSWORD &#039;userpassword&#039; INHERIT IN ROLE group;<br />
# даём групповой роли права на таблицу<br />
# права автоматически получит и пользователь<br />
GRANT ALL ON table TO group<br />
# закрываем всем остальным доступ к таблице<br />
REVOKE ALL ON TABLE table FROM PUBLIC</div><br />
<br />
Надеюсь этот небольшой материал поможет пользователям, мигрирующим с MySQL на PostgreSQL, получше понять систему ролей в PostgreSQL.]]></description>
          <pubDate>Fri, 28 Jan 2011 15:06:42 +0300</pubDate>
          </item>

          <item>
          <title><![CDATA[Несколько слов о SIPRNet]]></title>
          <link>http://rg-soft.com/show/article/aid15/</link>
          <guid>http://rg-soft.com/show/article/aid15/</guid>
          <description><![CDATA[В свете всей шумихи вокруг Wikileaks я решил немного подробнее узнать как и откуда были украдены эти самые документы. Известно, что США вкладывает астрономические суммы в свою информационную безопасность, тем удивительнее выглядит такой прокол. Все документы, размещённые на Wikileaks, обращались в специально созданной для этих целей закрытой сети под названием SIPRNet. К моему удивлению на русском языке информация практически отсутствует, поэтому я решил написать единую обзорную статью о SIPRNet из того, что мне удалось нагуглить. Информации об этой сети, надо сказать, не много, а та что есть зачастую сильно разнится, в зависимости от источника.<br />
<br />
Итак, SIPRNet (Secret Internet Protocol Router Network) - закрытая компьютерная сеть, созданная в начале 1990-х годов американскими специалистами, для обмена секретной информацией между государственными и военными структурами.<br />
<br />
Сеть коллективно управляется четыремя агентствами министерства обороны США:<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> Управлением по коммуникациям и электронике Объединённого комитета начальников штабов (Joint Staff J-6 communications-electronics directorate of the Joint Chiefs of Staff)<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> Агентством национальной безопасности (National Security Agency)<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> Агентством военной разведки (Defense Intelligence Agency)<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> Военным агентством по информационным системам (Defense Information Systems Agency)<br />
<br />
Все эти четыре агентства в той или иной степени ответственны за поддержание стабильного функционирования SIPRNet. Кроме того, на их базе создана Аккредитационная рабочая группа, которая решает кому давать право доступа к SIPRNet, а у кого его отнять.<br />
<br />
<strong>Немного о классификации информации</strong><br />
Вообще на определении «секретная информация» следовало бы остановиться отдельно. Согласно принятой в США классификации информации существует три уровня её секретности: <br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> Совершенно секретная (top secret) - чрезвычайно важная информация публикация которой недопустима ни при каких обстоятельствах.<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> Секретная (secret) - публикация такой информации нанесла бы существенный урон национальной безопасности.<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> Конфидециальная (confidential) - самый низкий уровень секретности, тем не менее её публикация тоже крайне нежелательна.<br />
<br />
Вся остальная информация, обращаемая внутри американских государственных и военных структур называется неклассифицированной (unclassified). На такую неклассифицированную информацию могут накладываться грифы, основных из них три:<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> Sensitive But Unclassified (SBU) - значимая, но неклассифицированная.<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> For Official Use Only (FOUO) - только для официального использования.<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> No Foreign Nationals (NOFORN) - не для иностранных граждан. Причём под это понятие не попадают граждане Канады, Австралии и Великобритании.<br />
<br />
Так вот, SIPRNet создан, как ясно из названия, для обмена информацией уровня секретности от неклассифицированной до секретной включительно. Параллельно с SIPRNet работает практически аналогичная сеть - NIPRNet (Non-classified Information Protocol Router Network), как опять же ясно из названия, для обмена неклассифицированной информацией. Фактически-же эти две сети работают как одно целое, а разделение создано для разграничения уровней доступа. Так пользователь имеющий доступ к SIPRNet автоматически получает доступ и к ресурсам NIPRNet, в то время как пользователи NIPRNet не имеют право доступа к SIPRNet.<br />
<br />
В военных дневниках Афганистана и Ирака, выложенных на Wikileaks, лишь 6% информации было классифицированно как секретная, в дипломатической-же переписке процент секретных документов и того меньше. Подавляющее большинство информации - это неклассифицированные документы с грифом NOFORN.<br />
<br />
<strong>Техническая информация</strong><br />
В широком доступе крайне мало точной технической информации о SIPRNet, это и не удивительно. И всё же я постараюсь обобщить то, что всё же было найдено. Как уже было сказано SIPRNet - это закрытая сеть, использующая свою собственную (абсолютно никак не связанную с интернетом) инфраструктуру для обмена данными внутри сети. Я не нашёл информации о том, что для подключения к SIPRNet используется какая-то особая ОС, скорее всего клиент для подключения устанавливается на Windows. Тем не менее этот клиент, судя по всему, довольно низкоуровневый, о чём говорит хотя бы тот факт, что после всем известной утечки на компьютерах, подключённых к SIPRNet, программным путём было запрещено скачивать любую информацию на съёмные носители.<br />
<br />
Компьютеры, авторизованные для доступа к SIPRNet, можно условно разделить на 2 типа: стационарные ПК и разного рода мобильные устройства (ноутбуки, нетбуки и др.). Все стационарные ПК с доступом к SIPRNet могут находиться исключительно в помещениях, доступ в которые разрешён только людям, которым дозволено обращаться с секретными документами. С мобильными устройствами дела обстоят несколько сложнее: они могут использоваться и в обычных рабочих кабинетах сотрудников, но по окончании работы требуется сдать устройство в специально обозначенное место, как правило это сейф.<br />
<br />
Вся информация, записываемая на съёмные носители автоматически шифруется, и доступна к прочтению только с машин с установленным клиентом. Это касается абсолютно всех съёмных носителей. В интернете я встречал упоминания о том, как военные в Афганистане использовали компьютеры с доступом к SIPRNet для подзарядки iPod-ов через USB. После чего iPod-ы успешно конфисковались.<br />
<br />
Точка доступа к SIPRNet для конечных пользователей всегда находится в локальной сети, притом беспроводное соединение никогда (или практически никогда) не используется, тем самым исключая возможность подключения извне. Подключаясь к точке доступа происходит двухсторонняя авторизация, т.е. со стороны пользователя отправляется пара имя пользователя (user identifier) + пароль, а со стороны точки доступа отправляется запрос к центральному серверу о том разрешено ли подключение к SIPRNet с данного конкретного компьютера, т.е. даже компьютеру с установленным клиентом можно без труда запретить доступ в сеть, да и наивно было бы предполагать, что американцы не предусмотрели бы этого. Все передаваемые внутри сети данные от первоначальной точки доступа до других коммутаторов, разумеется, зашифрованы. Делается это с помощью специальных шифровальных устройств, одобренных Агентством национальной безопасности. О них в открытом доступе существует лишь <a target="_blank" href="http://www.cryptomuseum.com/crypto/usa/nsa.htm">общая информация</a>.<br />
<br />
Установка точек доступа осуществляется не для индивидуального пользователя, а для какого либо объекта: посольства, военной базы, оборонного завода и т.д. На форуме одной конторы под названием BICSI я нашёл <a target="_blank" href="http://forums.bicsi.org/Topic3043-4-1.aspx#bm3055">сообщение</a>, автор которого утверждал, что участвовал в установке и настройке доступа к SIPRNet на военно-воздушной базе Langley, и военной базе в Киргизии (видимо Манас) и в каждом конкретном случае процесс установки был абсолютно разный, ну а любая более подробная информация, разумеется, засекречена. Так вот для того чтобы кому либо из сотрудников этих, подключённых к SIPRNet учреждений, был открыт доступ к сети, руководство этого самого учреждения должно направить запрос в Аккредитационную рабочую группу, которая в случае положительного ответа выдаст логин (user identifier). После этого пользователь должен будет установить пароль, причём пароль должен соответствовать жёстким требованиям: содержать не менее 10 символов, иметь минимум по 2 заглавные буквы, строчные буквы, цифры а также 2 специальных символа. Кроме того пароль должен меняться минимум раз в 150 дней. После этой процедуры пользователь может подключиться к сети. Нужно ли говорить, что вся более-менее значимая информация о каждом сеансе логируется.<br />
<br />
<strong>Использование сети</strong><br />
Для рядового пользователя SIPRNet мало чем отличается от обычного интернета, т.к. использует стандартные TCP/IP протоколы, в результате чего веб-страницы можно открывать с помощью стандартных браузеров, почту читать с помощью любого почтового клиента и т.д.<br />
<br />
Одно из видимых отличий - это то, что практически все узлы находятся в доменных зонах &#039;.smil.mil&#039;  и  &#039;.sgov.gov&#039;. Достоверно известно, что в SIPRNet используются как минимум 3 способа для обмена информацией: уже упомянутые сайты и почта, а также ftp сервера.<br />
<br />
Сеть используется для функционирования целого ряда военных систем (привожу их без перевода):<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> Global Command and Control System (GCCS)<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> Defense Message System (DMS)<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> Defense Research and Engineering Network (DREN)<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> Global Information Grid (GIG)<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> Net-Centric Enterprise Services (NCES)<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> Navy-Marine Corps Intranet (NMCI)<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> OCONUS Navy Enterprise Network (ONE-Net)<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> Theater Battle Management Core Systems (TBMCS)<br />
<br />
Кроме того, известно, что в сети существует форум под названием CAVNET, который используется военными, находящимися в Ираке и Афганистане для обсуждения всякого рода технических вопросов, связанных с этими войнами.<br />
<br />
Число пользователей сети называется разное, я встречал 2 цифры: от 400 до 500 тыс, и вторая - от 2.5 млн до 3 млн. C учётом того, что Брэдли Мэннинг - человек, обвинённый в краже документов для Wikileaks, является всего лишь рядовым (private first class) американской армии, т.е. при определённых условиях доступ к сети может быть открыт даже для рядовых, то вторая цифра (от 2.5 до 3 млн) мне кажется более правдоподобной. Известно также, что доступ к сети имеют не только Американские гос. структуры, но и некоторые из учреждений Великобритании, Австралии и Канады, т.е. как раз тех стран на которых не распространяется гриф NOFORN.<br />
<br />
<strong>Итог</strong><br />
Вот та небольшая информация, которую мне удалось найти и обобщить. Прошу строго не судить. Вопрос утечки на Wikileaks я упоминал лишь вскользь, и делал это сознательно, т.к. эта тема сама по себе весьма обширна, и подойдёт для очередной статьи, если это кого-то заинтересует, разумеется.]]></description>
          <pubDate>Mon, 13 Dec 2010 16:31:42 +0300</pubDate>
          </item>

          <item>
          <title><![CDATA[Разработка Skype под linux прекращена?]]></title>
          <link>http://rg-soft.com/show/article/aid14/</link>
          <guid>http://rg-soft.com/show/article/aid14/</guid>
          <description><![CDATA[В послденее время довольно много новостей вокруг этого появилось. И я решил их (точнее те из них, которые дошли до меня) собрать воедино здесь, итак:<br />
<br />
Некто Алекс Уралов - Software Quality Assurance Engineer из Таллиннского офиса Skype, сообщил, что руководством Skype было принято решение о полном прекращении разработки Linux версии клиента под Скайп. Почему такое решение было принято так до конца и не ясно, то ли потому, что линуксом пользуются одни гики и прибыль от них минимальна, то ли по каким-то другим причином. Собственно говоря, и до этой новости версия клиента Skype под линуксом не обновлялась уже несколько лет, при этом будучи бета версией.<br />
<br />
Но, это ещё не всё. После того как эта новость разнеслась по этим вашим интернетам <a target="_blank" href="http://forum.skype.com/index.php?showtopic=781453">на форуме skype был задан прямой вопрос</a>: продолжается ли разработка linux версии? На что некто под ником berkus заявил, что это - ложь, и разработка продолжается. Кроме того, позже на хабре этот-же человек заявил буквально следующее, цитирую: &quot;Алекс не имеет ни малейшего отношения к разработке Skype for Linux, слова его я комментировать никак не буду&quot;.<br />
<br />
Но это всё, конечно, споры об официальном статусе разработки, реально же работа над Skype клиентом под linux давно приостановлена, новостей никаких нет. Поэтому есть надежда, что этот шумок как-то расшевелит разработчиков.]]></description>
          <pubDate>Wed, 08 Dec 2010 14:42:24 +0300</pubDate>
          </item>

          <item>
          <title><![CDATA[Нестандартная сотировка выборки из MySQL]]></title>
          <link>http://rg-soft.com/show/article/aid13/</link>
          <guid>http://rg-soft.com/show/article/aid13/</guid>
          <description><![CDATA[Ещё одна небольшая проблемка, которую удалось решить, а решением поделиться со всеми. Представьте себе ситуацию: игра в покер, есть стол, и таблица игроков. За столом, допустим, 8 мест, а играют 5 игроков, притом позиции у всех разные, допустим <strong>1, 3, 4, 6, 8</strong>. В каждом новом хенде выбирается дилер, предположим, что сейчас это игрок на 4 позиции, соответственно мне надо выбрать всех игроков за текущим столом, но по порядку, начиная с дилера, т.е. чтобы в выборке было <strong>4, 6, 8, 1, 3</strong>.<br />
<br />
Сначала я хотел сделать это через <a target="_blank" href="http://ru2.php.net/manual/en/function.usort.php">usort</a>, но проблема в том, что функцию сравнения передаётся только 2 параметра, а нужен был 3й - дилер. Можно, конечно, было написать класс в котором и была бы прописана функция сравнения, а дилер устанавливался как свойство при создании объекта, но как оказалось есть куда более элегантное решение:<br />
<br />
<div class="preblock">SELECT * FROM `players` WHERE `table`=&#039;id стола&#039; <strong>ORDER BY `position`&lt;4, `position`</strong></div><br />
<br />
Вот такой вот незамысловатый запрос сразу вернёт строки в нужном расположении, а всё благодаря тому, что MySQL поддерживает логические выражения в ORDER BY.]]></description>
          <pubDate>Thu, 25 Nov 2010 09:36:12 +0300</pubDate>
          </item>

          <item>
          <title><![CDATA[Ограничение использования GPRS трафика на Android OS]]></title>
          <link>http://rg-soft.com/show/article/aid12/</link>
          <guid>http://rg-soft.com/show/article/aid12/</guid>
          <description><![CDATA[Обзавёлся тут на днях гуглофоном Acer Liquid. И сразу же столкнулся с проблемой - очень много программ то и дело ломятся в интернет. Пока сидишь через wi-fi - не беда, но вот когда выползаешь в город, а программы всё также продолжают лезть в интернет, но уже через gprs - это напрягает. Конечно те у кого безлимитный мобильный интернет могут эту заметку вообще не читать, а тем кто уже столкнулся с такой проблемой, но ещё её не решил - рекомендую к прочтению.<br />
<br />
Немного погуглив нашёл 3 программы, которые сейчас совместно и использую:<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> <a target="_blank" href="http://code.google.com/p/apndroid/">APNdoid</a> - с его помощью можно запретить доступ устройства к интернету через 3G/EDGE/GPRS.<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> <a target="_blank" href="http://androidon.ru/archives/404">3G Watchdog</a> - мониторит 3G/GPRS трафик, устанавливается лимит.<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> <a target="_blank" href="http://code.google.com/p/droidwall/">DroidWall</a> - андроидовский фронтэнд к iptables.<br />
<br />
С помощью этой троицы можно: <u>DroidWall</u> включайте в white-list mode (разрешать доступ в интернет только выбранным программам), разрешить доступ всем программам через wi-fi и только выбранным через GPRS. Это отсечёт весь GPRS трафик от нежелательных программ, при этом оставив им полную свободу действий когда вы подключены к wi-fi. Далее в <u>3G Watchdog</u> настраиваете лимит трафика на период (1мб в день, например), устанавливаете даёте ему указание блокировать весь 3G/GPRS трафик по достижению лимита через <u>APNdroid</u>.<br />
<br />
Всё, теперь Вы, во-первых сами выбираете программы которым разрешаете доступ в интернет через gprs, во-вторых контролируете объём разрешённого им трафика, и в-третьих автоматически запрещаете всякий доступ в интернет через gprs по достижению назначенного вами лимита.]]></description>
          <pubDate>Wed, 17 Nov 2010 23:34:37 +0300</pubDate>
          </item>

          <item>
          <title><![CDATA[В Pidgin 2.7.3 стал глючить ICQ]]></title>
          <link>http://rg-soft.com/show/article/aid11/</link>
          <guid>http://rg-soft.com/show/article/aid11/</guid>
          <description><![CDATA[Всем у кого сегодня утром Pidgin перестал коннектиться к аське посвящается. От сервера риходит чудной ответ:<br />
<br />
<div class="preblock">От https://api.oscar.aol.com/aim/startOSCARSession получен неожиданный ответ: Ok</div><br />
<br />
Как оказалось это ни что иное, как ошибка SSL handshake. Исправляется это отключением SSL: заходим в <u>Управление учетными записями</u>, выбираем свою учетную запись и жмем <u>Изменить</u>. В открывшемся окне переходим на вкладку - <u>Дополнительно</u> и убираем галочку с пункта <u>Использовать SSL</u>.]]></description>
          <pubDate>Thu, 28 Oct 2010 13:12:28 +0300</pubDate>
          </item>

          <item>
          <title><![CDATA[Сортировать varchar как int в MySQL]]></title>
          <link>http://rg-soft.com/show/article/aid10/</link>
          <guid>http://rg-soft.com/show/article/aid10/</guid>
          <description><![CDATA[Возникла недавно достаточно неожиданная проблема. Была таблица с номерами офисов, и в этих номерах помимо самого номера бывали ещё и литеры (101а, 205б и т.д.), поэтому поле в базе данных пришлось делать varchar.<br />
<br />
Вместе с тем стояла задача сортировать эти записи по номеру офиса, и вот здесь возникла проблема: сортировка, как и следовало ожидать, шла как строки, т.е. по каждому следующему символу. Поэтому запрос: <u>SELECT `onum` FROM `offices` ORDER BY `onum` ASC</u> выдавал 1, 109, 12, 146, когда я, конечно же, хотел бы видеть 1, 12, 109, 146.<br />
<br />
Немножко погуглив решение таки было найдено: функция <a target="_blank" href="http://dev.mysql.com/doc/refman/5.0/en/cast-functions.html">CAST</a>. И вот уже запрос <u>SELECT `onum` FROM `offices` ORDER BY CAST(`onum` AS UNSIGNED)</u> возвращал всё как надо. Другие возможные конвертации для CAST:<br />
<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> BINARY[(N)]<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> CHAR[(N)]<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> DATE<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> DATETIME<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> DECIMAL[(M[,D])]<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> SIGNED [INTEGER]<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> TIME<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> UNSIGNED [INTEGER]]]></description>
          <pubDate>Thu, 28 Oct 2010 13:08:34 +0300</pubDate>
          </item>

          <item>
          <title><![CDATA[One.lv сливается с odnoklassniki.ru]]></title>
          <link>http://rg-soft.com/show/article/aid9/</link>
          <guid>http://rg-soft.com/show/article/aid9/</guid>
          <description><![CDATA[Самая популярная латвийская социальная сеть one.lv начала процесс сливания с odnoklassniki.ru Это не процесс поглощения, обе они принадлежат одной фирме - Forticom, и ей же было принято решение слить две сети воедино.]]></description>
          <pubDate>Thu, 14 Oct 2010 11:44:57 +0300</pubDate>
          </item>

          <item>
          <title><![CDATA[Проблемы с терминальными приложениями в Ubuntu 10.10]]></title>
          <link>http://rg-soft.com/show/article/aid8/</link>
          <guid>http://rg-soft.com/show/article/aid8/</guid>
          <description><![CDATA[Только что обновил свою убунту до 10.10, и сразу же возникла проблема с эмуляторами терминала (roxterm, guake и т.д.). О сути проблемы можно <a target="_blank" href="https://bugs.launchpad.net/ubuntu/+source/guake/+bug/621927">прочитать здесь</a>. Я лишь раскажу как она решается: необходимо поставить <a target="_blank" href="https://launchpad.net/ubuntu/+source/vte/1:0.26.0-0ubuntu2/+build/1992657">последнюю версию vte</a> и рестартнуться.]]></description>
          <pubDate>Tue, 12 Oct 2010 01:25:10 +0300</pubDate>
          </item>

          <item>
          <title><![CDATA[Акция &quot;Нас больше 1%&quot;]]></title>
          <link>http://rg-soft.com/show/article/aid7/</link>
          <guid>http://rg-soft.com/show/article/aid7/</guid>
          <description><![CDATA[Испанский сайт dudalibre.com, посвящённый Linux-у, удумал провести <a target="_blank" href="http://www.dudalibre.com/en/gnulinuxcounter">акцию в поддержку этой операционной системы</a>. Смысл акции предельно прост: опровергнуть расхожее мнение, что Linux, как десктопной ОС пользуются менее 1% пользователей. Сделать это предлагается весьма незамысловато: за общее число рабочих компьютеров условно взят 1 миллиард, а каждому, кто пользуется Linux на своём рабочемдомашнем компьютере, предлагают подтвердить это. Попутно также собирается статистика по странам и дистрибутивам.]]></description>
          <pubDate>Thu, 07 Oct 2010 13:02:27 +0300</pubDate>
          </item>

          <item>
          <title><![CDATA[Закрыть jQuery UI диалог из iframe]]></title>
          <link>http://rg-soft.com/show/article/aid6/</link>
          <guid>http://rg-soft.com/show/article/aid6/</guid>
          <description><![CDATA[Столкнулся тут с задачей, казалось бы простой, но достаточно каверзной: есть jQuery UI dialog, внутри него iframe где скрипт крутится сам по себе (форма сохранения данных и вывода ошибок). Делал не я, меня только попросили допилить уже существующее приложение, поэтому все камни о дурацкой реализации не в мой огород. Так вот встала зачада закрыть диалог на основной странице скриптом из этого самого iframe-a. Казалось бы что может быть проще - прочитал про <em>window.parent</em>, наваял небольшой скриптик и готово:<br />
<br />
<div class="preblock">&lt;script type=&quot;text/javascript&quot;&gt;<br />
dialog = window.parent.document.getElementById(&quot;dialog&quot;);<br />
$(dialog).dialog(&#039;close&#039;);<br />
&lt;/script&gt;</div><br />
<br />
Ан нет, скрипт работает, ошибок не выдаёт, но диалог не закрывает. Пробывал менять <em>window.parent.document</em> на <em>window.parent</em> и просто <em>parent</em>, но от этого только в консоле полезли ошибки. Погуглив немного решение было найдено, и оказалось ещё проще:<br />
<br />
<div class="preblock">&lt;script type=&quot;text/javascript&quot;&gt;<br />
parent.$(&quot;#dialog&quot;).dialog(&quot;close&quot;);<br />
&lt;/script&gt;</div>]]></description>
          <pubDate>Wed, 06 Oct 2010 14:21:37 +0300</pubDate>
          </item>

          <item>
          <title><![CDATA[Петербургский инновационный форум]]></title>
          <link>http://rg-soft.com/show/article/aid5/</link>
          <guid>http://rg-soft.com/show/article/aid5/</guid>
          <description><![CDATA[Довелось мне вчера побывать на III Петербургском международном инновационном форуме (сипец как серьёзно звучит), и <a target="_blank" href="http://www.szfo.club-inno.ru/">Окружном инновационном Конвенте</a>, как его части. Попал совершенно случайно, после <a target="_blank" href="http://habrahabr.ru/blogs/conference/105169/">объявления на хабре</a> о бесплатном посещении для пользователей этого самого хабра.<br />
<br />
Собственно сам этот форум представлял из себя выставку на которой огромное количество компаний хвастались своим инновационным добром, а также тематические посиделки в множестве конференц-залов. Одной из таких посиделок и был этот самый Окружной инновационный Конвент.<br />
<br />
На выставке было много интересных штук, главная из которых, конечно настоящий луноход. Видимо с намёком на то как было хорошо, когда наша наука была впереди планеты всей. Фотоаппарата с собой, к сожалению, не было. Кроме того, лично меня очень порадовал стенд бизнес-инкубатора &quot;Ингрия&quot;. Всё три дня на нём проходили различные мероприятия и конференции, и это был один из немногих стендов на выставке, ориентированный именно на веб.<br />
<br />
От самого же Конвента, в первую очередь, я наверное ожидал услышать позицию крупных инвесторов и государства относительно инноваций и всякого рода молодых стартапов. Но как раз здесь всё ограничилось общими фразами типо &quot;не бойтесь быть открытыми перед инвесторами&quot;, &quot;не бойтесь ошибаться&quot; и &quot;как важно уметь продать свой продукт&quot;. Неожиданно порадовал главный Нашист Василий Якеменко вполне конкретными деталями по Сколково. Для того, чтобы ваш проект был рекомендован к включению в список финансируемых Сколково проектов необходимо:<br />
<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> чтобы проект хотя бы подразумевал возможность научного прорыва<br />
<img src="http://rg-soft.com/misc/arrow.png" style="border:0;" alt="" /> предполагал коммерциализацию<br />
<br />
Собственно Якеменко собрался рекомендовать 10 таких проектов, из них 2 уже выбраны и 1 (Облачный инкубатор) утверждён правительством. Вот таким, в целом, для меня запомнился этот форум.]]></description>
          <pubDate>Sat, 02 Oct 2010 18:25:07 +0300</pubDate>
          </item>

          <item>
          <title><![CDATA[Sopcast в linux]]></title>
          <link>http://rg-soft.com/show/article/aid4/</link>
          <guid>http://rg-soft.com/show/article/aid4/</guid>
          <description><![CDATA[Наверное у любого кто пересаживается (или пытается пересесть) с винды на линукс главная проблема - это найти аналоги программ, которыми вы пользовались. Вообщем проблема древняя как дерьмо мамонта, и зачастую надуманая, поэтому долго на ней останавливаться не буду. Лучше вставлю свои 5 копеек: обычно футбол я смотрю на телевизоре, но бывают матчи, которые по телевизору не показывают, и тут на помощь приходят они: livetv.ru и сопка. Заставить это дело работать в linux не сложно:<br />
<br />
<div class="preblock">add-apt-repository ppa:jason-scheunemann/ppa<br />
aptitude update<br />
aptitude install sp-auth sopcast-player</div><br />
<br />
Одно небольшое но: sp-auth может не ставиться, если нет libstdc++5 (как например в ubuntu 10.04). Взять её можно <a target="_blank" href="http://packages.debian.org/stable/base/libstdc++5">отсюда</a>, после чего всё установится без проблем.<br />
<br />
<center><img src="http://habreffect.ru/files/c21/c940a666c/sopcast.png" style="border:0;"></center>]]></description>
          <pubDate>Wed, 29 Sep 2010 11:46:08 +0300</pubDate>
          </item>

          <item>
          <title><![CDATA[ЧаВО к НпН Скрипт]]></title>
          <link>http://rg-soft.com/show/article/aid3/</link>
          <guid>http://rg-soft.com/show/article/aid3/</guid>
          <description><![CDATA[<strong>Как избавится от отсчета времени в вашем скрипте? (trial)</strong><br />
Итак: В самом НпН Скрипте напишите /run key, вылезит диалог crack-a к mIRC-у. Генерируем себе ключик, копируем его. Затем заходим в меню help, подменю register. И вводим там ключи. Вот и все.<br />
<br />
<strong>Где можно получить помошь по вашему скрипту, если можно вообше?</strong><br />
Конечно же можно. Нажмите непосредственно в самом НпН Скрипте клавишу F1, если остануться вопросы то подробнейшую помошь можно получить нажав кнопку (там же) &quot;Нужна более подробная помошь&quot;.<br />
<br />
<strong>Как убрать авто-вход на канал #RG-soft?</strong><br />
Введите комманду /ajoin, перед вами откроется окно настройки авто-входов, наверняка вы не удосужились сюда посмотреть, раз задаёте такой вопрос. Просто удалите канал отсюда.<br />
<br />
<strong>Почему у меня сбивается время молчания (idle time)?</strong><br />
Это из-за панели пинга (lagbar) каждые 15 секунд от отсылает запрос до сервера, дабы проверить твой пинг, этот самый запрос и сбивает твой idle time :).<br />
<br />
<strong>Как изменить шрифт?</strong><br />
Открываем меню View - font, в диалоге выбираем нужный шрифт и жмём на галку &quot;set as default chan(chat) font&quot;. Эту операцию нужно повторить 2 раза: 1 раз на канале, второй раз в привате (чьём без разницы).<br />
<br />
<strong>Как заставить работать mp3say под Windows Vista?</strong><br />
Нужно скачать <a target="_blank" href="/hnhscp/r1dll.zip">r1dll.dll</a> и закиньте его в папку ../hnh_script/dll/. Затем в самом мирце нажмите alt+r, откройте вкладку &quot;Скрипты&quot;, в верхнем меню выберите Вид - tools3.hnh и найдите строчку &quot;alias mp3say&quot; и замените весь блок следом за ней на то, что вы видите снизу.<br />
<br />
<div class="preblock">alias mp3say {<br />
  set %title $dll($mircdirdll/r1dll.dll, GetCurrentWinampSong, 0)<br />
  set %totaltime $dll($mircdirdll/r1dll.dll, GetCurrentWinampSongTotalTime, 0)<br />
  set %elapsedtime $dll($mircdirdll/r1dll.dll, GetCurrentWinampSongElapsedTime, 0)<br />
  if (%title == 0) { echo %skin.sys Поддерживаемый аудио плеер не найден | return } else { /me слушает %title [ $+ $duration(%elapsedtime) $+ / $+ $duration(%totaltime) $+ ] }<br />
}</div>]]></description>
          <pubDate>Tue, 28 Sep 2010 16:30:55 +0300</pubDate>
          </item></channel>
        </rss>
