LINUX.ORG.RU

Сообщения mors

 

Конкурс на разработку клиента MTProto

Вконтакте объявили о конкурсе для разработчиков. Задача — написать IM клиент для Андройда, использующий их велосипед протокол. В протоколе используется ещё одно их изобретение — язык для сериализации данных и RPC «TL» (Type Language).

Срок — 9 дней.

Хочу узнать, собирается ли кто-нибудь из ЛОРовцев участвовать? И если да, то какие инструменты собираетесь использовать (интересует больше язык программирования)?

P.S. На мой взгляд, описание задания писал какой-то школьник человек, который сам не очень представляет о чём он пишет — ни одной MSC-диаграммы, всё по-русски и очень многословно.

 , ,

mors
()

Как это будет по-русски?

Помогите с нормальным переводом четырёх перечисленных ниже слов. В качестве примеров, указаны выдержки из моей речи, а так же речи моих коллег.

  1. вычекнуть/вычекивать/расчекивать (check out) Например: Не могу вычекнуть — похоже бранча залочена :(
  2. зачекнуть/зачекивать/зачекинивать (check in) Например: Не вижу твоих изменений — похоже ты забыл их зачекнуть…
  3. диф (diff) Например: Не понимаю что ты тут сделал. Пришли диф.
  4. ресепшен/фронт деск (reception/front desk) Например: Отнеси эти документы на ресепшен.

P.S. С ресепшеном вообще беда. Звучит оно отвратительно, а Гугл-переводчик утверждает что «front desk» это «Стойка регистрации» (или ещё один вариант — «ресепшн»). Но я имею ввиду то, что стоит у входа в офис — никакой регистрацией там никто не занимается.

диф — «файл изменений» мне не нравится, так как слишком длинно.

 

mors
()

Нашёл ещё один читкод

Собственно вот он (версия adb 1.0.31):

$ adb hell

 

mors
()

Считывание из буфера кадров возвращает чёрный квадрат.

Задача: переместить буфер из основной памяти в память видеокарты и считать её обратно. Важно чтобы входной буфер полностью совпадал с выходным.

(Это я пытаюсь разобраться как работает GPGPU. Первый этап — обмен данными с видеокартой)

Как я понял, запись картинки можно сделать glTexImage2D(), а считать обратно с помощью glReadPixels(). Оба вызова срабатывают без ошибок, но обратно мне возвращается чёрный экран.

Мой код лежит (тут). Основная часть:

     dpy = eglGetDisplay(EGL_DEFAULT_DISPLAY);
     eglInitialize(dpy, &majorVersion, &minorVersion);
     eglChooseConfig(dpy, s_configAttribs, &config, 1, &numConfigs);
     EGLint attribs[] = { EGL_WIDTH, w, EGL_HEIGHT, h, EGL_NONE };
     surface = eglCreatePbufferSurface(dpy, config, attribs);
     context = eglCreateContext(dpy, config, NULL, NULL);
     eglMakeCurrent(dpy, surface, surface, context);
     eglQuerySurface(dpy, surface, EGL_WIDTH, &w);
     eglQuerySurface(dpy, surface, EGL_HEIGHT, &h);
     glViewport(0, 0, w, h);
     glMatrixMode(GL_PROJECTION);
     glLoadIdentity();
     glOrthof(0, w, 0, h, 0, 1); 
     glBindTexture(GL_TEXTURE_2D, 0);
     glTexParameterx(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
     glTexParameterx(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
     glTexParameterx(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
     glTexParameterx(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
     // *** data = { 0, 10, 20, 30, ... }
     glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA,
         texSize, texSize, 0, GL_RGBA, GL_UNSIGNED_BYTE, data);
     glReadPixels(0, 0, texSize, texSize, GL_RGBA,
             GL_UNSIGNED_BYTE, result);
     // *** result теперь такой: {0,0,0,255,0,0,0,255,...}

Как сделать так чтобы содержимое result полностью совпадало с исходной data? Есть ли более оптимальный путь достичь этого же результата, если в дальнейшем я захочу использовать шейдер для работы с буфером?

 ,

mors
()

Субпиксельные координаты при выводе на экран. Как?

Использую libsdl 1.2.14. Хочу нарисовать на экране квадратик с координатами x = 10.42, y = 12.34. Как это сделать?

Стандартная функция SDL_Blit принимает на вход только целочисленные координаты. На других форумах пишут что субпиксельного вывода можно добиться используя функции OpenGL. Так ли это? Если так, то какие функции надо использовать и как они сочетаются с SDL?

В исходниках SDL 2 нашёл SDL_RenderSetLogicalSize, который вроде как может решить мои проблемы, если сделать логический размер побольше (+ решит проблемы с разными физическими разрешениями экранов). Неужели единственный способ решить эту «проблему» — переходить на эксперементальную версию библиотеки?

 

mors
()

Выравнивание по центру списка окон, цвет шрифта на раб. столе

1) В Cinnamon 1.4 список окошек в window list applet (как и в оригинальном гноме) был всегда выровнен по левому краю. В 1.6 сделали выравнивание по центру (фото).

Как можно вернуть выравнивание слева?

2) В cinnamon 1.6 был добавлен файловый мэнеджер Nemo и теперь именно он занимается рисованием иконок на раб. столе. Но по-умолчанию подписи к иконкам он делает тёмным шрифтом без тени (Nautilus рисовал светлым шрифтом с контрастной темой)

Как заставить Nemo работать как Nautilus и рисовать подписи к иконкам светлым шрифтом?

 

mors
()

Выбор тарифа для Android смартфона

Интересуют следующие параметры: мало звонков, мало смс, средний объём интернет трафика. Раньше был ТЕЛЕ2 со скоростью 2G и помегобайтной оплатой трафика. Последнее приводило к паранойе, необходимости ставить файрволы и тд. Сейчас хочется перейти на что-нибудь безлимитное и по возможности 3G.

Пока нашёл следующие варианты (Санкт-Петербург):

  • Мегафон + Сказка + Безлимитный интернет для телефона мини — 99 р./мес.
    В описании тарифа пугающая табличка, показывающая что на этом тарифе можно только проверять почту и делать «Web-сёрфинг». Они как-то фильтруют трафик??
    Объём ежедневного трафика на максимальной скорости примерно на 60% меньше чем у МТС. Исходящие звонки/СМС в два раза выше чем у МТС.
  • МТС Red Energy + БИТ — 150 р./мес.
    Пока склоняюсь к этому варианту. Ежедневной квоты в 50М и ограничение в 64 Кб/с после исчерпания квоты должно хватить.
  • Beeline Go — 150 р./мес.
    Услуги голосовой связи дешевле чем у МТС (на 30%). 100 СМС в месяц бесплатно. Квота трафика на максимальной скорости в 3 раза меньше чем у МТС и в 2 раза меньше чем у Мегафона.

Все варианты имеют квоту после которой сбрасывают скорость до 64Кб/с.

Сомневаюсь что взять — Мегафон или МТС? Поделитесь пожалуйста своим опытом работы с этими операторами, а так же соображениями по этому поводу.

 ,

mors
()

Как перейти на другую функцию по стеку вызовов?

Моя программа упала и оставила coredump. Я его загрузил в GDB и он мне показал такой стек вызовов:

#0  0x0000000000401da4 in std::_Bit_iterator_base::_Bit_iterator_base (
    this=0x7fffbdc22080, __x=0x250d868, __y=56)
    at /usr/include/c++/4.6/bits/stl_bvector.h:116
#1  0x0000000000401eed in std::_Bit_iterator::_Bit_iterator (
    this=0x7fffbdc22080, __x=0x250d868, __y=56)
    at /usr/include/c++/4.6/bits/stl_bvector.h:196
#2  0x0000000000402406 in std::vector<bool, std::allocator<bool> >::operator[]
    (this=0x7fffbe41f320, __n=266616)
    at /usr/include/c++/4.6/bits/stl_bvector.h:692
#3  0x0000000000401348 in Graph::recPass (this=0x7fffbe41f3d0, vis=..., 
    ft=..., vIdx=3552607) at scc.cpp:231
--------------------------8-<--------------------------

Как можно просмотреть значения локальных переменных в функции Graph::recPass (#3 в стеке)? Команда info locals выдаёт только переменные из функции, которая вызвала исключение (#0). Ещё я пробовал

(gdb) print linked
No symbol "linked" in current context.
Хотя эта переменная точно определена в функции #3 в стеке.

 , ,

mors
()

Обожаю opensource за чувство юмора

Вот решил найти в octave функцию «факториал»

>> 3!
parse error:

  syntax error

>>> 3!
     ^

>> fact % тут я нажал [TAB] чтобы посмотреть подходящие ф-ии…
fact        factor      factorial   factors.fg    
>> fact(3)

Richard Stallman doesn't like neither PCs-Intel nor Burger King... He prefers
e-Macs...

>> fact(3)

Richard Stallman is the only man alive who can pronounce GNU the way it is meant to
be pronounced.

>> fact(1)

Richard Stallman met Chuck Norris once. Chuck tried a roundhouse, but Richard
bashed him in the skull.

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

ЗЫ С пасхой всех :)

 ,

mors
()

[спв] Поделитесь прямой ссылкой на поток ТВДождь

Мне не нравится их плеер на флеше. Хочу смотреть этот канал из нормального VLC. Кто-нибудь знает как это сделать?

 

mors
()

[специалистам по всему] Отправление посылки почтой

У меня есть книга (по линуксу разумеется :) которую надо вернуть владельцу. Я знаю его имя, фамилию и место работы. Дойдёт ли посылка до адресата, если я укажу эти данные?

 

mors
()

[UFW BLOCK] 300 попыток соединения с разных IP за полчаса

У меня внешний IP. Сразу после включения компа в логи сыпятся подобные строки с частотой до 10 штук в минуту:

Sep 26 20:50:39 blackpc kernel: [ 396.602170] [UFW BLOCK] IN=eth1 OUT= MAC=00:11:95:5c:b7:bc:00:1e:79:d0:d9:XX:XX:XX SRC=2.93.26.XX DST=XXXXXXXXXXXX LEN=48 TOS=0x00 PREC=0x40 TTL=117 ID=53135 DF PROTO=TCP SPT=4709 DPT=4899 WINDOW=16384 RES=0x00 SYN URGP=0

Все попытки входа идут с разных IP (Венесуэла, Бразилия, Россия, Казахстан итд.)

Что делать с осевшим в логах списком IP адресов? Может их кто-то собирает?

Мне показалось, что их привлекает разрешённый ICMP. Отключил. Что ещё можно сделать для того чтобы меня перестали спамить?

mors
()

[вещества] Никотин как ноотроп

Заранее отмечу, что имеется ввиду отдельно никотин, без сигарет (в виде жевачек/пластырей)

Прочитал тут: http://www.gwern.net/Nicotine

Для Ъ:

  • Увеличивает количество очков по IQ-тестам
  • Увеличивает скорость реакции
  • Улучшает сон
  • Уменьшает уровень плохого холестерина, снижает вес

Пробовал ли кто-нибудь из некурящих использовать никотин именно как ноотроп? Сколько стоит никотин в питере (не сигареты)?

 

mors
()

[:-)] Продолжаю читать маны. На этот раз growisofs

Запорол 2 болванки подряд Brasero'й и решил вернуться к истокам :-)

Ман как обычно дружелюбен и внушает уверенность:

$man growisofs
------------------------8-<-----------------

       There  are  several  undocumented   options   commonly   denoted   with
       -use-the-force-luke prefix. Some of them serve debugging purposes. Some
       require certain knowledge about recording process  or  even  OS  kernel
       internals and as being such can induce confusing behaviour. Some are to
       be used in very specific situations better recognized by front-ends  or
       automated  scripts. Rationale behind leaving these options undocumented
       is that those few users who would actually need to  use  them  directly
       can  as  well  consult  the source code or obtain specific instructions
       elsewhere.

------------------------8-<-----------------

mors
()

[linux]man xorg.conf

Ubuntu 11.04:

 $man xorg.conf

---------------------------------8-<------------------------------

VIDEOADAPTOR SECTION
       Nobody wants to say how this works.  Maybe nobody knows ...

---------------------------------8-<------------------------------

 

mors
()

[xorg] По нажатию Alt + влево вываливаюсь в tty6

Поэксперементировал с драйверами для видяхи/конфигурацией иксов и теперь сабж :( Куда копать?

ОС: Ubuntu 11.04 64bit

$cat /etc/X11/xorg.conf

Section "Screen"
	Identifier	"Default Screen"
	DefaultDepth	24
EndSection

Section "Module"
	Load	"glx"
EndSection

Section "Device"
	Identifier	"Default"
    Driver "radeon"
EndSection

 

mors
()

[ATI HD 5450][Ubuntu 11.04][fglrx] Compiz, фильмы и прокрутка текста тормозят

Окружение:

$glxinfo | grep "rendering"
direct rendering: Yes

$fglrxinfo 
display: :0.0  screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: ATI Radeon HD 5450
OpenGL version string: 4.1.10665 Compatibility Profile Context

$xvinfo -short
X-Video Extension version 2.2
screen #0
  Adaptor #0: "ATI Radeon AVIVO Video"
    number of ports: 4
    port base: 143
    operations supported: PutImage 
    number of attributes: 10
-------------------8-<-------------------

Проблема: Сильно тормозит рабочий стол, flash, видеозаписи, прокрутка текста и тд.

Что пробовал делать:

1) Пробовал ставить открытый драйвер. Всё работало отлично, только температура почти на 20 градусов выше без нагрузки + хотелось бы задействовать хардварное декодирование видео

2) Пытался вернуть старый метод ускорения:

aticonfig --set-pcs-str=DDX,ForceXAA,TRUE
Ничего не изменилось. Тогда решил попробовать так:
aticonfig --set-pcs-str=DDX,Direct2DAccel,TRUE
aticonfig --set-pcs-str=DDX,ForceXAA,FALSE

Всё тоже самое. Причём вне зависимости от применения этих команд, в логе всё равно пишется: (==) fglrx(0): ATI 2D Acceleration Architecture enabled

Команды вводил как с включёнными иксами, так и без.

3) Ставил дефолтный xorg.conf:

 aticonfig --initial
Не помогло.

4) Добавлял опции в xorg.conf:

    Option        "TexturedVideoSync" "on" #HD4xxx & HD5xxx use textured video to render Xv. This helps to remove tearing.
    Option        "TexturedVideo" "on"
    Option        "Capabilities" "0x00000800" #This option also turns on vertical syncing as well. Both can and do work well together.
    Option        "OpenGLOverlay" "off" #This is for workstations and certain commercial graphics applications for them. Nothing as Linux user that we do needs this so disabled.
    Option        "UseFastTLS" "on"
    Option        "OverlayOnCRTC2" "0" #For some reason when only using one monitor it should see this and use overlay on it correctly and does not. This I believe is what caused some of the MyThTV issues. This needs to be set to 0 for a single monitor application and in a multiple monitor to the one MythTV is displayed on.

5) Ещё добавлял каких-то опций:

    Option        "AccelMethod" "XAA"
    Option "XAANoOffscreenPixmaps" "true"
С нулевым результатом.

6) Захотел завести хардварную обработку видео. Поставил vlc из https://launchpad.net/~dtl131/ archive/catalysthacks Опять же ничего не изменилось — как показывал HD в режиме слайд-шоу, так и показывает.

 

mors
()

apropos поднял настроение

$apropos tree
common::sense (3pm)  - save a tree AND a kitten, use common::sense!

Сохрани дерево и кошку, используй здравый::смысл!?

ОС: ubuntu 10.10

mors
()

[chroot] Не получается запустить статически слинкованный файл

Я пытаюсь запустить прогу в chroot окружении. Вот мои действия:

$ls -l bin/
-rwxr-xr-x 1 mt mt 4720474 2011-03-03 23:20 webface

$ldd bin/webface 
	statically linked

$sudo chroot bin webface
chroot: failed to run command `webface': No such file or directory

$sudo chroot bin ./webface
chroot: failed to run command `./webface': No such file or directory

$sudo chroot bin /webface
chroot: failed to run command `/webface': No such file or directory

Система: ubuntu 10.10

 

mors
()

[opengl] glGenerateMipmap приводит к падению приложения

Прочитал новость про Lips of suna и решил посмотреть что она из себя представляет. Но она не запустилась, т.к. требует opengl 3.2, а у меня драва поддерживают только 1.4. Захотелось мне снизить требования, убрав всё лишнее. Начал с того что убрал проверку на версию opengl и тут же получил падение вот тут:

LIImgTexture*
liimg_texture_new_from_rgba (int         width,
                             int         height,
                             const void* pixels)
{
	LIImgTexture* self;
	// ---------------- 8-<------------- 
	glGenTextures (1, &self->texture);
	glBindTexture (GL_TEXTURE_2D, self->texture);
	glTexParameteri (GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);
	glTexParameteri (GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
	glTexImage2D (GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, pixels);
	glGenerateMipmap (GL_TEXTURE_2D); // <<-- Segmentation fault

	return self;
}

Я закомментировал эту строку, но после этого вылетать стало на следующем вызове glGenerateMipmap (в другом файле). В описании этой функции не нашёл ничего страшного. Почему на ней вылетает? Если она не поддерживается в 1.4, чем её можно заменить?

 

mors
()

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