LINUX.ORG.RU

Сообщения Bad_ptr

 

Xcompose и мёртвые клавиши.

В /usr/share/X11/locale/en_US.UTF-8/Compose
Есть куча символов, которые используют dead_*, например:


<dead_greek> <D> : «Δ» U0394 # GREEK CAPITAL LETTER DELTA

Но никакой кнопки <dead_greek> на моей клаве, конечно же нет. :)
Как бы так настроить, чтобы появилась возможность использовать многие из этих символов без переназначения их на другие кнопки?
Заодно, Eddy_Em, поделись пожалуйста, своим ~/.XCompose, который ты делал для математических формул.

 , ,

Bad_ptr
()

Замена рамки экрана для ноута. ☑️

Имеется ноутбук с треснутым экраном. ЛСД-Матрицу для замены найти легко, но проблема в том, что треснута не только матрица, но и рамка корпуса вокруг экрана.
Как её правильно гуглить? Как оно будет правильно называться по английски? Screen frame?
Или, может кто-то знает места в инете(у китайцев?), где продают корпусные детли для ноутов?
Может рамки делают какие-нибудь универсальные под определённый формфактор экрана(на русскоязычных сайтах рамки для нужной модели не нашёл) или на заказ?
Если чего — ноут asus x53s

Bad_ptr
()

eCryptfs съедает место?

сабж.
В гугле пара убунтоидов жалуется, остальные их заверяют, что ничего подобного и у них всё нормально.
А вот у меня тоже отъедает, постепенно.
Залогиниваюсь, смотрю df -h в /home свободно 3 гига. В Private/ помещена директория .mozilla и ещё парочка. Через некоторое время работы становится 2 гига свободно и так постепенно до нуля.
Хорошо, думаю, может файрфокс кэшем отъел? Убиваю файрфокс — ноль реакции, закрываю все остальные программы — тоже ноль реакции.
Помогает только umount Private/. Потом обратно mount и опять некоторое время можно работать, пока не съест всё место.
Что за лажа такая? :) Может есть какие настройки там или чего?

 ,

Bad_ptr
()

Усыпить linux по cron'у командой systemctl suspend ☑️

Наткнулся на очередную проблему с переходом на systemd: Хочу по крону усыплять компьютер.
Если просто в консоли пишу systemctl suspend — всё работает отлично, если вызвать скрипт с этой командой из крона — не засыпает.
journalctl пишет:

pam_unix(crond:session): session opened for user constantin by (uid=0)
(constantin) CMD ("/home/data/scripts/suspend.sh")
(constantin) CMDOUT (Failed to issue method call: Access denied)
[system] Rejected send message, 2 matched rules; type="method_call", sender=":1.26" (uid=1000 pid=873 comm="/usr/bin/systemctl suspend ") interface="org.freedesktop.systemd1.Manager" member="StartUnit" error name="(unset)" requested_reply="0" destination="org.freedesktop.systemd1" (uid=0 pid=1 comm="/bin/systemd ")
(constantin) CMDOUT (Failed to issue method call: Access denied)
pam_unix(crond:session): session closed for user constantin
dbus[381]: [system] Rejected send message, 2 matched rules; type="method_call", sender=":1.26" (uid=1000 pid=873 comm="/usr/bin/systemctl suspend ") interface="org.freedesktop.systemd1.Manager" member="StartUnit" error name="(unset)" requested_reply="0" destination="org.freedesktop.systemd1" (uid=0 pid=1 comm="/bin/systemd ")
Тоже самое с командой
dbus-send --system --print-reply --dest="org.freedesktop.UPower" /org/freedesktop/UPower org.freedesktop.UPower.Suspend
Просто из консоли — работает. Из крона:
pam_unix(crond:session): session opened for user constantin by (uid=0)
(constantin) CMD ("/home/data/scripts/suspend.sh")
(constantin) CMDOUT (Error org.freedesktop.UPower.GeneralError: not authorized)
pam_unix(crond:session): session closed for user constantin
Судя по (uid=1000 pid=873 comm=«/usr/bin/systemctl suspend ») — uid моего пользователя, от которого с консоли команда работает.
Как дать нужные права крону? Или как это можно побороть?

 , , ,

Bad_ptr
()

Emacs. Убрать подсветку текущей линии в консольном фрейме. ☑️

Емакс запущен демоном. Есть global-hl-line-mode. Хорошо выглядит в Х-фрейме емакса, а вот в консоли абсолютно не юзабельно.
Что сразу пришло на ум:

(add-hook 'after-make-frame-functions
          #'(λ (frame)
              (select-frame frame)
              (if window-system
                  (set-face-background 'hl-line "#1d232b" frame)
                (set-face-background 'hl-line "black" frame))))
(думал поставить в nil — но не тут-то было — цвет сбрасывается на дефолт)
Более-менее выглядит на тёмных терминалах и плохо на светлых. В идеале хочется чтобы подсвечивалась текущая строка в иксовых фреймах, а в консольных — нет. (Ещё лучше если бы можно было минорный режим включать для определённого фрейма.)
Можно ли так сделать?

 ,

Bad_ptr
()

pulseaudio + systemd ☑️

Как-то было дело поставил pulseaudio и оно заработало 'изкоробки'. Потом заметил, кода переключаешься между пользователями — звук есть только у одного — почитал http://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Perfec..., удалил пользователей из группы audio — всё заработало.
Вчера, вдохновившись этим тредом Всё, Поттеринг победил решил поставить попробовать systemd :). Немного помучился, но всё запустил, что надо, грузится, работает нормально... вроде бы на первый взгляд.
Запускаю плеер — не играет. Звука нет.
Запускаю alsamixer — там с громкостью всё нормально, смотрю по F6 звуковую карту — один дефоулт.(обычно там в списке ещё intel hda).
Покопался по настройкам пульсы/альсы — вроде всё в норме.
Убил пульсу (killall -9 pulseaudio) убил иксы, запускаю в консоли alsamixer — intel hda видит, музыку играет. Запускаю иксы( в .xinitrc поставлено start-pulseaudio-x11) — звук пропал :).
Ок. добавляю себя в группу audio, перелогиниваюсь — запускаю иксы — всё нормально звук есть. Через альсу звук нормально идёт — через openAL(в q2pro попробовал) — рывками.
Вот такие, блины-пироги. Поделитесь собственным опытом пожалуйста. Чего я делаю не так? Есть какие-нибудь советы/предположения что это такое и как исправить это безобразие? Как настроить пульсу с системд, чтобы не добавлять пользователя в группу audio? Может какие демоны стартовать нужно?
Помогите:)

 , , , ,

Bad_ptr
()

Посоветуйте астероиды/космическую леталку под линукс.

Я, конечно, парочку астероидов из репов попробовал — как-то не очень.
Поэтому поделитесь опытом, какие астероиды вам больше понравились.
Ещё вопрос: есть ли под линукс какая-нибудь хорошая космическая леталка горизонтальная или вертикальная?
А ещё посоветуйте какую-нить игрушку, чтоб просто на 5-10 минут запускать популять.

 asteroids,

Bad_ptr
()

/безумные идеи/ Готов.

Предлагаю добавить в лист запрещённых слов/выражений дурацкий троличий мем тупака  — 'НЕ ГОТОВ'.

 offtopic-list, ,

Bad_ptr
()

elisp, какая-то странность с listp ☑️

Хотя, скорее всего я чего-то не знаю :)

Есть такой код:

 (loop for item  in minor-mode-alist
             do (if (listp (car item))
                    (message "List %s" (car item))
                  (message "Notlist %s" (car item))))

выдаёт:

... skipped ...
Notlist semantic-minor-modes-format
... skipped ...

Хотя

(listp semantic-minor-modes-format)
=> t

 , , listp

Bad_ptr
()

Xlib. С ошибками не валится, но не работает. ☑️

Есть такой код:

#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <locale.h>
#include <unistd.h>
#include <getopt.h>

#include <X11/Xlib.h>
#include <X11/Xatom.h>
#include <X11/Xutil.h>
#include <X11/Xmu/WinUtil.h>

static struct option long_opts[] =
  {
    {"id", required_argument, NULL, 'i'},
    {0, 0, 0, 0}
  };
static const char * opt_str = "i:";

int main (int argc, char **argv)
{
  Window window_id = 0;
 
  int lindex;
  int opt = getopt_long( argc, argv, opt_str, long_opts, &lindex);
  while( -1 != opt )
    {
      switch( opt )
        {
        case 'i':
          //window_id = strtoul(optarg, NULL, 0);
          sscanf(optarg, "0x%lx", &window_id);
          break;
        default:
          break;
        }
      opt = getopt_long( argc, argv, opt_str, long_opts, &lindex);
    }
 
  Display * dpy = XOpenDisplay(NULL);
  if(!dpy)
    {
      fprintf(stderr, "unable to connect to display\n");
      return 1;
    }

  //int screen_num = DefaultScreen(dpy);
  //Window root = RootWindow(dpy, screen_num);

  //window_id = XmuClientWindow(dpy, window_id);

  XUnmapWindow(dpy, window_id);

  //XActivateScreenSaver(dpy);
  printf("%d\n", window_id);

  return 0;
}
Почему-то не работает. Никакие вызовы функций X* не имеют эффекта.
Компиляция проходит тихо, без ошибок, предупреждений и шума:
gcc -g -lX11 -lXmu main.c 
Запуск, тоже:
> ./a.out --id='0x400181'
4194689
id окна можно узнать с помощью xwininfo.
Подскажите, пожалуйста, что я делаю не так.

 , ,

Bad_ptr
()

универсальный wm-независимый именованный scratchpad...

Вобщем написал вот такую штуку:

#!/bin/bash

X=200
Y=200
W=100
H=30
COMMAND="$SHELL"

if [ -n "$1" ]
then
    SNAME="$1";

    if [ -n "$2" ]
    then
        COMMAND="$2";
        
        if [ -n "$3" ]
        then
            X="$3";

            if [ -n "$4" ]
            then
                Y="$4";
                
                if [ -n "$5" ]
                then
                    W="$5";

                    if [ -n "$6" ]
                    then
                        H="$6";
                    fi
                fi
            fi
        fi
    fi
else
    SNAME="";
fi

PATNAME="'\*-scratch-${SNAME}\*'";
TERMNAME="'*-scratch-${SNAME}*'";

SW=`xdotool search --classname ${PATNAME}`;
if [ -z "$SW" ]
then
    urxvtc -name ${TERMNAME} -g "${W}x${H}+${X}+${Y}" -e "${COMMAND}";
    wmctrl -x -r ${TERMNAME} -b toggle,above
else

    SWN=`xdotool search --onlyvisible --classname ${PATNAME}`;
    if [ -n "$SWN" ]
    then
        xdotool windowminimize "$SWN";
        xdotool windowunmap "$SWN";
        xdotool getactivewindow windowraise
    else
        xdotool windowmap "$SW";
        xdotool windowraise "$SW" windowsize --usehints "$SW" "$W" "$H" windowmove "$SW" "$X" "$Y";
    fi

fi
Использовать так:
scratch.sh NAME [command] [X] [Y] [WIDTH] [HEIGHT] 
Можно повесить на хоткей в вашем любимом WM. Требует wmctrl и xdotool.
Критика, замечания, фичреквесты, исправления, патчи ??? :)

// Хотя не, наврал. В тайловых WM не будет работать( у меня в xmonad окно всёравно разворачивается на весь экран)... Надо что-то придумать по этому поводу. Хотя чё тут придумывать пользователи тайлинга пусть в конфигах флоат прописывают.

 , , , ,

Bad_ptr
()

Чего-то не могу сообразить с яваскриптовским регекспом. ☑️

Хочу сделать такую функцию:

function idsFromStr( str )
{
    //var idr = new RegExp('_(\d+)', 'g');
    //var idr = /.*_(\d+)(?:_\|$)/g;
    //return idr.exec( str );
    //return str.match(idr);
    //return /_(\d+)(?:_|$)/g.exec(str);
    return str.match(/_(\d+)(?:_|$)/g);
}
Должна принимать строки вида: «sdfdf23sdf_sdf_10_3_0».
И возвращать массив [ 10, 3, 0 ].
То, что я написал, однако, не работает:
var match = idsFromStr("sdfdf23sdf_sdf_10_3_0");
alert(match[0] + "; " + match[1] + "; " + match[2] + "; " + match[3]);
Выдаёт:

_10_; _0; undefined; undefined.

Что я делаю не так?:) Что-то не могу понять логику работы JSовских регекспов.

 , ,

Bad_ptr
()

действие по нажатию на ссылку ☑️

Вот как на ЛОРе, когда включён яваскрипт, нажимаешь на ссылку [Ответить на сообщение], и вместо перехода по ссылке выезжает форма ответа.
Как это сделано? Есть какой-то способ переопределить поведение ссылки на клик мыши?

 ,

Bad_ptr
()

C. Уникальный хэш от двух указателей без коллизий. ☑️

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

 , ,

Bad_ptr
()

$tags

Тормозилла пыхтит над опенсорс реализацией флеша на жабаскрипте:
http://www.opennet.ru/opennews/art.shtml?num=34031


Разработчики Mozilla приступили к реализации проекта Shumway, в рамках которого предпринята попытка создания проигрывателя Adobe Flash с использованием технологий HTML5 и языка JavaScript. Указанный проект позволит обеспечить безопасный запуск SWF файлов на компьютере пользователя, ибо JavaScript во многих современных веб браузерах выполняется в песочнице, в отличие от оригинального проигрывателя Adobe Flash, который подключается как библиотека и имеет полный доступ к операционной системе с правами пользователя, что позволяет эксплуатирующим уязвимости Flash-роликам выполнять неразрешённые спецификацией действия.
В настоящее время ведётся работа по созданию виртуальной машины Flash и runtime-компонентов. На базе уже созданного на языке JavaScript парсера формата SWF подготовлен сервис инспектирования SWF-файлов. Кроме того, для наблюдения за прогрессом разработки представлена демонстрационная страница, на которой продемонстрирована возможность выполнения простой Flash-игры с использованием наработок Shumway.


Казалось бы... Но


Для обеспечения оптимальной производительности, код развивается в тесной зависимости от возможностей и особенностей Firefox. Адаптация для других браузеров пока не ведётся. Примечательно, что компания Google около года назад представила похожий проект Swiffy, позволяющий преобразовать Flash-контент (поддерживается SWF 8 и ActionScript 2.0) в представление на базе технологий HTML5, JavaScript, CSS3 и SVG. Код Swiffy пока закрыт, но компания не исключает в будущем, после завершения разработки, публикацию исходных текстов.


//Что же это получается. Похоже флэшь не собирается умирать :(
Вот такие пироги.

 , , , ,

Bad_ptr
()

После суспенда ломается графика.

Выглядит так: http://img14.imageshack.us/img14/2199/tmpch.png
Помогает только рестарт иксов.
Нету шрифтов и картинок, такое ощущение, что память, где они хранились очищается после суспенда, но графическая подсистема этого не понимает и продолжает оттуда читать. Ибо сначала на окне может быть рандомный шум, потом если подвигать окно оно перерисовывается, но нету шрифтов, если наощупь обновить страницу в браузере — иногда появляются картинки. (интересно какбы ещё заставить обновить шрифты :)) хотя это конечно не решение).
dmesg выдаёт такие вот бешеные штуки:

[ 8709.107624] [drm] nouveau 0000:01:00.0: PGRAPH: DATA_ERROR [INVALID_BITFIELD] ch 1 [0x00008eb000] subc 0 class 0x9097 mthd 0x0310 data 0x0a022000
[ 8709.107639] [drm] nouveau 0000:01:00.0: PGRAPH: DATA_ERROR [INVALID_BITFIELD] ch 1 [0x00008eb000] subc 0 class 0x9097 mthd 0x0314 data 0x00001000
[ 8709.107662] [drm] nouveau 0000:01:00.0: PGRAPH: TRAP ch 1 status 0x00000010
[ 8709.107699] [drm] nouveau 0000:01:00.0: PGRAPH: TRAP ch 1 status 0x00000010
[ 8709.107783] [drm] nouveau 0000:01:00.0: PGRAPH: TRAP ch 1 status 0x00000010
... ... ...
[ 8712.376696] [drm] nouveau 0000:01:00.0: PGRAPH: TRAP ch 1 status 0x00000010
[ 8768.926643] [drm] nouveau 0000:01:00.0: PMFB0_SUBP0: 0x037f0040
[ 8768.926646] [drm] nouveau 0000:01:00.0: PMFB0_SUBP1: 0x037f0040
[ 8768.926649] [drm] nouveau 0000:01:00.0: PMFB1_SUBP0: 0x037f0040
[ 8768.926651] [drm] nouveau 0000:01:00.0: PMFB1_SUBP1: 0x037f0040
Заодно выяснил, что лиса(насколько я понял) постоянно спамит в консоль: failed to open VDPAU backend libvdpau_nvidia.so

Ещё заметил, что раньше при суспенде мог проснуться от нажатия на клаву(usb клава), теперь — только кнопка питания.
В общем безобразия какие-то. Я в печали( ибо приходится рестартовать иксы и ждать перезапуска медленнолиса ).

core/linux 3.3.7-1
extra/libdrm-nouveau 2.4.34-1
extra/nouveau-dri 8.0.3-1
extra/xf86-video-nouveau 0.0.16_git20120512-1

 , , ,

Bad_ptr
()

Опасносте.

http://www.lenta.ru/news/2012/05/17/errupt/

Японские астрономы обнаружили, что на звездах, похожих, на Солнце, могут происходить супервспышки - мощнейшие выбросы энергии.

Мощнейшая вспышка на Солнце была зарегистрирована в 1859 году и получила название вспышки Каррингтона. Мощность выброса была такова, что полярные сияния наблюдались на Гавайях и Кубе, а телеграфные провода искрили.

...
За 120 дней наблюдения из 80 тысяч похожих на Солнце звезд вспышки произошли на 146. Все события имели мощность от 10 до 10 тысяч мощностей вспышки Каррингтона.
...


Так что конец может настать в любой момент. ЧТД.

// Вся надежда на то, что человек всё-же зачем-то нужен Вселенной... )))

 ,

Bad_ptr
()

баян, кофеварка, комбайн

http://www.informatimago.com/linux/emacs-on-user-mode-linux.html

Ну и кто-нибудть пробовал нечто подобное сделать?
// И заодно прикололо сообщение: «Не добавляйте теги в заголовки, используйте предназначенное для тегов поле ввода»

Bad_ptr
()

Вброс или нет.

Дети, внимательно слушаем капитана, учимся вбрасывать за деньги или детектировать такие вбросы:
http://poznavatelnoe.tv/ashmanov_zakaznoy_vbros
http://poznavatelnoe.tv/ashmanov_razdutie_tem
http://poznavatelnoe.tv/ashmanov_vbros

// Бандерлогам даю установку: Не нацполить !

 для самых маленьких

Bad_ptr
()

Последняя версия? ☑️

Сейчас запустил yaourt -Syu :


==> Software upgrade (new version) :
extra/flashplugin 11.2.202.233-1 -> 11.2.202.235-1

А говорили же последняя версия. Или эта последняя версия только сейчас доехала до арчлинукса?

 , ,

Bad_ptr
()

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