LINUX.ORG.RU

Сообщения askh

 

I2P, изменение настроек прокси

Возможно полезная информация для пользователей сети I2P. На сайте проекта, на странице с настройками браузера (https://geti2p.net/en/about/browser-config) сделано небольшое дополнение:

Note/Privacy tip: Set the FTP proxy to the same settings as the HTTP proxy.

Картинки правда ещё старые. В чём суть проблемы: если обращения браузера мимо сети I2P не были запрещены, то в случае, если на сайте есть контент, загружаемый по протоколу FTP (например, картинка), он загружался напрямую, что по идее позволяло узнать адреса посетителей сайтов. Проверить, нет ли у вас этой проблемы можно здесь: http://askh.ru/testi2p/, или (компьютер с I2P не всегда включён) http://askh.i2p/testi2p/. Если увидите свой реальный IP-адрес — меняйте настройки прокси-сервера :-)

 

askh
()

Ограничения в Интернете, простой вариант противодействия

Понятны причины, по которым государство пытается закручивать гайки и следить, кто что пишет в Интернете, понятно, что большинству из нас это не нравится. Решение вроде бы есть — Tor, I2P, особенно интересными выглядят такие вещи, как скрытые сервисы: обеспечивается не только анонимность пользователя, но и невозможность для органов цензуры надавить на владельца сайта (например, под угрозой его блокировки на территории страны, не факт, что Facebook, Twitter и т.д. не пойдут по этой причине на «сотрудничество»).

Однако в чём проблема: у этих ресурсов очень мало пользователей. И новые люди приходят, видят, скажем, почти пустой форум, и не задерживаются на нём. Ресурсы не развиваются. Соответственно новые пользователи опять же не задерживаются... Что называется, порочный круг. Что можно сделать, чтобы помочь его разорвать: поставить себе I2P, зайти на наиболее популярный форум, что-нибудь написать, что-нибудь откомментировать, чтобы дискуссия пошла, тогда будет больше шансов, что новые пользователи I2P не забросят её после первых экспериментов. А больше узлов — безопаснее сеть. И меньше желания у государства ограничивать обычные ресурсы, оно должно увидеть, что пытаясь усилить контроль рискует его вообще потерять, потому что пользователи начинают осваивать анонимные сети.

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

Сразу вопрос: подскажите, какой из русскоязычных форумов там наиболее популярен? Может там на самом деле жизнь кипит, но я просто ещё не нашёл где? :-) Сейчас только экспериментирую с этой сетью, поэтому могу тупо чего-то не знать ;-) В консоли маршрутизатора I2P есть ссылка на такой форум: http://forum.i2p, там есть русскоязычный раздел, вероятно его и можно назвать наиболее посещаемым?

 ,

askh
()

Xfce4, Nautilus вместо Thunar

Ubuntu 12.04, Xfce4. В качестве файлового менеджера используется Nautilus (нужны вкладки). В предпочитаемых приложениях в качестве файлового менеджера указан Nautilus. Однако если кликнуть по папке на рабочем столе, она открывается в Thunar. Есть ли решение?

 

askh
()

Как правильно работать с FIFO?

Есть задача — несколько процессов пишут в FIFO, один читает. Порядок, в котором придут данные разных процессов не имеет значения, главное, чтобы эти данные не смешались (то есть например чтобы в середину строки, передаваемой одним процессом не попала часть строки от другого). Нужно ли предпринимать какие-то действия для этого (например, блокировать на время записи канал при помощи flock), или всё произойдёт само собой? Если важно — будут передаваться строки символов по 20, разделённые переводом строки.

askh
()

Где в Москве можно купить футболку c символикой Linux в воскресенье? :-)

Такой вопрос :-) Можно ли где-нибудь в Москве купить футболку с символикой Linux в воскресенье? Ну или как вариант бейсболку?

 

askh
()

Простой способ открыть окно приложения в GNOME3

Экспериментирую с GNOME3, обнаружил, что не знаю способа открыть окно программы на текущем рабочем столе одним действием, который бы при этом не обладал тем или иным вредным побочным эффектом. Есть следующие варианты, у каждого из которых свой недостаток:

  • клик левой кнопкой мыши по значку приложения в левой панели, но если окно этой программы не открыто на текущем рабочем столе, но открыто на другом, то перекинет туда (а этот баг (иначе не назвать) успел надоесть в Unity, я из-за него там почти перестал пользоваться несколькими рабочими столами — неприятно, когда работаешь над какой-то задачей, открываешь браузер или терминал и вдруг бац — куда-то перекидывает)
  • клик средней кнопкой мыши по тому значку, но если на текущем рабочем столе окно этой программы уже открыто, то новое будет открыто на новом рабочем столе (может среди разработчиков GNOME3 есть потомок Сусанина? иначе откуда у GNOME3 стремление увести куда-то пользователя с того рабочего стола, где он хотел работать?)
  • клик правой кнопкой мыши по тому значку, и в появившемся меню выбрать пункт «Новое окно», недостаток очевиден — слишком длинно (но пока это лучший из способов, который я увидел)

Я не вижу какой-то очевидной вещи? Или может это особенность Ubuntu, и в других дистрибутивах (а может в более новой версии GNOME?) есть способ открыть новое окно программы одним действием не задумываясь о том, открыты или нет другие окна той же программы?

askh
()

Xfce, спящий режим при закрывании крышки ноутбука

Обновил Ubuntu, оценил улучшения в Unity и GNOME3, в общем, вопрос по Xfce: как сделать чтобы при закрывании крышки ноутбука он переходил в спящий режим? В разделе меню «Настройки» есть «Сеансы и запуск», там есть галочка «Запускать службы GNOME при входе в систему», если её поставить, то нужный функционал включается, но вместе с ненужным: запускается программа для речевого вывода и т.д. А сам Xfce этого не умеет? Неудобно каждый раз при завершении работы вручную отправлять ноут в спящий режим :-(

askh
()

Алгоритм RSA, должны ли простые p и q быть различными?

В Википедии есть описание алгоритма RSA: http://ru.wikipedia.org/wiki/RSA, там написано: «Выбираются два случайных простых числа p и q заданного размера (например, 1024 бита каждое).», а должны ли эти числа быть различными? Нужно написать программу, реализующую этот алгоритм, сейчас её проверяю, и обнаружил, что при разных p и q расшифрованный текст соответствует оригиналу, а при равных — не соответствует. Искать ошибку в программе или p и q действительно должны быть различными? В другом месте я нашёл указание на то, что они должны быть разными (http://sources.ru/csharp/RSACryptoPad.html): «Генерируем два различных больших нечетных простых числа, назовём их P и Q, одинакового порядка» (причём смущает, что во втором источнике оговаривается, что выбранные простые числа должны быть нечётными).

askh
()

Unity, открыть мышью окно Наутилуса или терминала на новом рабочем столе

Если на одном рабочем столе уже открыто окно программы, то, если перейти на второй рабочий стол, и оттуда кликнуть по значку этой программы на левой панели, то нас перекинет на первый рабочий стол. Но ладно, против этого есть решение — не забывать, что новое окно открывается кликом по значку правой кнопкой мыши. Однако для Наутилуса и терминала это не работает! Если кликнуть правой кнопкой по значку в левой панели, то в открывшемся меню будет пункт Домашняя папка или соответственно Терминал, по клику на котором пользователя перебрасывает на другой рабочий стол, где уже есть окно соответствующей программы. Должен же быть способ открыть окно Наутилуса на новом рабочем столе мышью кроме как перейти на тот рабочий стол, где он уже открыт, открыть там новое окно, переместить его на нужный рабочий стол и перейти туда?..

askh
()

Unity, найти нужное окно из нескольких похожих

Может чайниковский вопрос, но какого-то очевидного решения я не увидел.

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

В традиционном DE я бы отсортировал бы значки документов на панели задач по степени нужности и знал бы, что такой-то документ первый, такой-то второй и т.д., в крайнем случае просто кликал бы по значку каждого из окон и нашёл бы нужное.

В Unity нет панели задач. Можно дважды кликнуть по значку приложения на левой панели, тогда Unity покажет изображения каждого из окон, но на экране моего нетбука это будут четыре практически идентичных картинки — видно, что открыты несколько документов с каким-то текстом, но где среди них нужный? Существует ли в Unity возможность как-то решить эту проблему?

Пока писал, нашёл решение конкретно для LibreOffice: в меню есть пункт «Окно», которым я раньше никогда не пользовался, но теперь пригодится. Но это решение для частного случая, не во всех же программах есть функция переключения между окнами приложения.

askh
()

Unity. Переключение рабочих столов.

Как известно, в Unity, при клике по значку приложения открывается существующее окно, а не новое. При использовании нескольких рабочих столов это приводит к очень неприятному эффекту: если окно открыто на другом рабочем столе, то перекидывает туда, и нужно возвращаться и заново открывать приложение. То есть пользоваться несколькими рабочими столами стало просто невозможно (я в итоге заметил, что хотя на десктопе активно пользуюсь несколькими рабочими столами, на нетбуке от этого отучился). Есть ли способ заставить Unity в такой ситуации открывать новое окно на текущем рабочем столе? И, если нет, можно ли как-то убрать значок переключения рабочих столов? В принципе, Unity — это интерфейс для нетбуков (на большом экране с ним работать просто невозможно), а на нетбуке несколько рабочих столов можно посчитать излишней функцией (ресурсов у системы относительно мало, так зачем держать открытыми окна, которые потребуются когда-то потом? лучше наверное заново открыть). Но при этом значок переключения между рабочими столами занимает место, лучше уж использовать его для значка какой-нибудь программы. Возможно ли убрать переключатель рабочих столов?

askh
()

Dia, создание своих объектов (.shape)

Потребовалось начертить небольшую схему с элементами вроде 2И-НЕ, в Dia не нашёл подходящих элементов (плохо искал? по идее ведь часто должны требоваться...), но, на первый взгляд показалось, что сделать их самому легко. В конце письма пример, который почти работает. А «почти» потому, что после сохранения и последующей загрузки файла с такими элементами символы «&» вдруг все съехали вправо вниз... Причём некоторыми манипуляциями их можно заставить вернуться обратно. У меня что-то неправильно, или это глюк Dia? Может в создаваемых объектах нельзя использовать текст, и символы нужно рисовать?

А вот собственно пример файла .shape для элемента 2И-НЕ:

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns="http://www.daa.com.au/~james/dia-shape-ns" xmlns:svg="http://www.w3.org/2000/svg">
  <name>2AND-NOT</name>
  <icon>2andnot.png</icon>
  <connections>
    <point x="0" y="1"/>
    <point x="0" y="2"/>
    <point x="4" y="1.5"/>
  </connections>
  <aspectratio type="fixed"/>
  <svg:svg>
    <svg:rect x="1" y="0" width="2" height="3"/>
    <svg:ellipse cx="3" cy="1.5" rx="0.2" ry="0.2"/>
    <svg:text x="2" y="1">&amp;amp;</svg:text>
    <svg:line x1="0" y1="1" x2="1" y2="1"/>
    <svg:line x1="0" y1="2" x2="1" y2="2"/>
    <svg:line x1="3" y1="1.5" x2="4" y2="1.5"/>
  </svg:svg>
</shape>

Dia версии 0.97.1 из Ubuntu 10.10

askh
()

pcre, можно ли получить опционально встречающиеся значения?

Есть некие фрагменты текста, которые, кроме общей обязательной части, могут содержать или не содержать строки с дополнительной информацией, то есть, к примеру, что-то такое:

заголовок
параметр 1: значение1
параметр 2: значение2

заголовок
параметр 2: значение2
параметр 3: значение3

Порядок строк постоянен, поэтому первое, что пришло в голову, это использовать конструкции вроде (?:параметр1: (\\d+))? - то есть строчка может присутствовать, и тогда нам требуется числовое значение, а может не присутствовать, тогда оно собственно и не нужно. Но такой подход не работает :-( Так нельзя?

Вот пример кода:

#include <iostream>
#include <string>
#include <pcrecpp.h>

using namespace std;
using namespace pcrecpp;

int main(int argc, char *argv[])
{
    string text = "Это тест\n"
                  "первое значение: 10\n"
                  "второе значение: 20\n"
                  ;

    RE re("Это тест\n"
          "(?:первое значение: (\\d+)\n)?"
          "(?:второе значение: (\\d+)\n)?"
          , RE_Options(PCRE_UTF8));

    int v1 = -1, v2 = -1;
    bool res = re.FullMatch(text, &v1, &v2);
    cout << res << " " << v1 << " " << v2 << endl;
    return 0;
}

Если код в таком виде, то re.FullMatch(text, &v1, &v2) возвращает true. Если в тексте закомментировать «первое значение: 10\n» или «второе значение: 20\n», то re.FullMatch(text, &v1, &v2) возвращает false (причём если закомментировать «второе значение: 20\n», то переменная v1 всё-таки меняет своё значение, но v2 - нет, ну а если закомментировать «первое значение: 10\n», то обе переменные сохраняют значение -1).

Но вот если не пытаться получить значения из скобок, то есть вместо re.FullMatch(text, &v1, &v2) написать re.FullMatch(text), то результат во всех трёх случаях - true. То есть получается, что само регулярное выражение срабатывает как нужно, дело лишь в том, что FullMatch может не хватать результатов чтобы записать в заданные переменные.

Похоже нельзя обработать такой текст одним регулярным выражением, нужно анализировать каждую строку отдельно? Или может всё-таки есть возможность не усложнять код и использовать одно регулярное выражение?

askh
()

Спрашивайте в магазинах

Обычно при покупке того или иного железа мне не приходило в голову консультироваться с продавцами, будет или нет оно работать под Linux - вряд ли большинство из них смогут на это ответить. И наверное многие поступают так же. Но в результате ведь нарушается обратная связь с производителем, информация от продавцов может использоваться при анализе спроса, а если про совместимое с Linux оборудование у них не спрашивают, производитель может решить, что и спроса нет... Мне кажется, стоит при выборе оборудования задавать по этому поводу вопросы продавцам, особенно в случаях когда продавец сам подходит к клиенту и спрашивает, что тот ищет.

askh
()

Реклама Linux

Не очень давно видел на LOR идею разместить рекламу Linux, примерно как к выходу Firefox 1.0 размещали рекламу в New York Times. А если делать что-то такое на местном уровне (ролик на электронном табло, небольшая реклама в газете, баннер на сайте и т.п.), может уже есть готовые материалы для этого? И есть ли юридические тонкости, которые нужно знать при создании рекламы? Например, наверное нельзя использовать логотипы дистрибутивов? Всё-таки это чужие торговые марки... И наверное могут быть сложности если построить рекламу на противопоставлении с Windows, например если сказать, что Windows подвержена вирусам, это могут расценить как подрыв чужой деловой репутации?

askh
()

MacPro 4.1, какой дистрибутив Linux выбрать?

Есть компьютер MacPro 4.1, нужно установить на него Linux, какой дистрибутив для этого лучше подойдёт?

askh
()

send и EAGAIN

Если сокет находится в неблокирующем режиме, и после вызова send получили ошибку EAGAIN, то данные не были отправлены вообще или только частично? То есть можно ли при следующем вызове использовать другой буфер или нужно повторить вызов с тем же самым, откуда функция возьмёт недостающие данные?

askh
()

Плагин для Pidgin на Perl, уведомление пользователя

Нужно из плагина для Pidgin на Perl выдавать пользователю уведомления, которые бы закрывались по таймауту, идеальным вариантом наверное было бы использовать libnotify, но похоже модуль Desktop::Notify в моём дистрибутиве содержит ошибку (таймаут игнорируется, и выдаётся сообщение "Argument "" isn't numeric in subroutine entry at /usr/lib/perl5/Net/DBus/Binding/Iterator.pm line 445.". Можно ли выводить информационное сообщение с таймаутом средствами самого Pidgin? Purple::Notify::message вроде бы таймаута не предполагает.

askh
()

Патенты. Новая угроза.

Традиционно считается, что в России нет такой угрозы свободному программному обеспечению, как патенты. Хотя вопрос спорный, например недавно ЗАО "Лаборатория Касперского" получило патент номер 2363045, касающийся именно программного обеспечения. И ситуация может ухудшиться - в России создана организация, на первый взгляд призванная лоббировать интересы IT-отрасли, но сразу настораживает то, что во главе её (в источнике должность названа "модератор") стоит основатель Фонда патентования алгоритмов и программ. Можно предположить, что теперь идеи патентования программного обеспечения в России будут защищаться активнее, что в итоге может привести к невозможности использования и развития свободного программного обеспечения, в частности Linux, у нас в стране.
Подробности

Перемещено Shaman007 из OpenSource

askh
()

Возможно ли использовать MySQL в проектах под GPL 3?

Почитал условия лицензирования MySQL, сложилось впечатление, что её нельзя использовать в проектах, лицензируемых под GPL 3. Если я правильно понял "FOSS License Exception" (http://www.mysql.com/about/legal/licensing/foss-exception/), то там говорится, что не все свободные лицензии совместимы с GPL 2, и они разрешают использовать свою клиентскую библиотеку так же и в проектах с другими лицензиями, перечисленными в списке, но в нём нет GPL 3, а проект под этой лицензией не может содержать код под GPL 2 only. Получается, что в проекте под GPL 3 нельзя использовать MySQL?

askh
()

RSS подписка на новые темы