LINUX.ORG.RU

Сообщения toady2

 

Поменять alt и windows

Форум — General

Что надо сделать, чтобы клавишу alt система считала клавишей windows и наоборот? Желательно, чтобы на низком уровне (чтобы в tty без иксов так же было).

toady2
()

[dwm] Рабочие столы вместо тегов

Форум — Desktop

По историческим причинам люблю рабочие столы. Концепция «тегов» в dwm интересная, но переформатировать мозг лень.

В принципе мне ничто не мешает использовать теги как рабочие столы. Но layout у dwm'а глобальный, а я хочу, чтобы на каждом рабочем столе был свой (скажем, на теге web браузер был развёрнут на весь экран; на теге im был тайлинг режим и т.п. Сохранение положения окон тоже важно.). Чтение мана не помогло. Надеюсь на помощь.

 

toady2
()

Глобальные статические переменные в Си

Форум — Development

Часто вижу в исходных текстах что-то типа

static char *str = "blabla";
Причём str глобальна. Какой смысл тут несёт слово static?

toady2
()

Вопросы про NTP синхронизацию

Форум — General

Я тут прочитал: оказывается кронить ntpdate очень плохая идея. Во-первых, создаются пиковые нагрузки на сервер в начале каждой минуты, часа и т.п. Во-вторых (это важнее): если в процессе работы какого-нибудь время-зависимого процесса (напр. сборка по make) скачком изменится время, может быть бяка.

Вопрос 1. ntpdate устанавливает по NTP системное или хардварное время?

Вопрос 2. У меня машина работает не постоянно. Максимальный аптайм в выходные: утром включаю, вечером выключаю. По будням часа 2-3. В слишком точном времени не нуждаюсь (точность до минут устраивает). Можно ли просто делать ntpdate при загрузке компьютера в rc.local (Arch), а потом в rc.local.shutdown делать «hwclock -systohc» (подправить хардварное время по системному)?? Бяки от этого не будет выходить? Или мне всё равно лучше использовать демон ntpd (просто не люблю, когда много бесполезных демонов, даже если системных ресурсов достаточно)?

Вопрос 3. Как работает ntpd? В мане почти ничего про это нет. В гугле читал, что якобы время от времени он правит хардварные часы, а системные правит почти непрерывно. Но хочется что-то более подробное. Ссылка на статью также приветствуется.

Вопрос 4. В ntp.conf я указал два сервера стратума 1 и один стратума 2 (локальный моего провайдера). Я, по идее, при включенном ntpd становлюсь стратумом 3?... Почему тогда ntpdc говорит, что я стратум 16?

Вопрос 5, параноидальный. Меня беспокоит частая правка хардварных часов. Ведь они в биосе? Вдруг в процессе правки что-то плохое случится (свет выключат и др.) и биос повредится? Оправданы ли мои волнения?

(All, пожалуйста, сопровождайте ответы номером соответствующего моего вопроса.)

toady2
()

Вопросы про фоновые процессы

Форум — General

1. Какая разница между демоном и фоновым процессом (т.е. то, что в sh запускается с амперсандом)?

2. Имеется скрипт

#!/bin/sh
prog &
Когда скрипт завершиться, prog останется в памяти? Если нет, то prog получит от sh сигнал SIGTERM? Или как? Есть ли раличия относительно этого поведения в sh и bash?

toady2
()

Посоветуйте быстрый, точный, надёжный и всегда доступный ntp сервер

Форум — General

Сабж. Для синхронизации времени через ntpdate по крону.

toady2
()

[screen] bind на русские клавиши

Форум — General

Например, у меня забиндено «bind ] next». Но при русской раскладке это уже не работает. Пробовал добавлять «bin ъ next», но это тоже не работает (screen при запуске ругается на bad character).

 

toady2
()

Почему Arch при загрузке не чистит /var/run?

Форум — General

Сабж. Вроде бы это даже рекомендует FHS...

Даже моя небогатая фантазия смогла придумать сценарий плохого события:
1. Демон daemon загружается и создаёт /var/run/daemon.pid файл со своим PID.
2. Отключают свет, UPS'а нет.
3. При следующей загрузке daemon находит (старый) /var/run/daemon.pid и завершается с ошибкой, мол демон уже запущен.
4. Тем временем в системе запускается какой-то процесс bla-bla с PID, равным /var/run/daemon.pid.
5. Пользователь решает рестартнуть daemon (убийство+запуск). Убийство демона выглядит так:

kill -SIGTERM `cat /var/run/daemon.pid`
Тем самым пользователь убивает ничем невиновный процесс bla-bla.

-----------------

Вопрос 2. Чем отлючаются /var/run и /run? В FHS второго нет, но в Арче есть. /run монтируется как tmpfs, т.е. то, что нужно. Но, тем не менее, по дефолту все арчевые демоны создают pid-файлы в /var/run, который на диске и при загрузке не чистится.

toady2
()

.xinitrc_shutdown

Форум — General

1) Пусть я хочу в .xinitrc запускать какие-то пользовательские демоны (работающие только под иксами, а без иксов они не нужны).

daemon -start
exec windows-manager
А куда можно прописать команды для остановки демонов при выходе из иксов?

toady2
()

Сигналы от не-root'а

Форум — General

Есть демон, который управляется сигналами SIGUSR1 и SIGUSR2. Как сделать, чтобы не-root смог отправлять эти сигналы (кроме установки SUID-аттрибута)?

P.S. Отправлять сигналы можно без kill: сама программа (которая демонизируется при запуске с определённым параметром) может отправлять нужный сигнал демону (при запуске с другими параметрами). Ставить SUID на саму программу тоже не хочется.

toady2
()

[sleep(3), Си] Остановка по сигналу

Форум — Development

Пусть у меня в программе установлены (через signal) обработчики каких-то сигналов (напр. SIGTERM, SIGUSR1,..). Далее у меня выполняется sleep на 20 сек. Но через 10 секунд программе посылается сигнал. Как я понимаю, переход к обработчику перейдёт сразу. Пусть он быстро обработался. Далее sleep будет продолжать окончания тех 20 секунд или исполнение кода продолжится сразу со следующей после sleep команды?

toady2
()

[DWM] Нотификации о новых сообщениях

Форум — Desktop

Не хочу юзать трей. Хочу просто в текстовом виде показывать на статусбаре уведомления о новых письмах, сообщениях в im, etc. С письмами легко: прямо в .xinitrc в цикле будет вызываться `ls ~/mail/general/new | wc -l`. А вот как поступить с IM; у меня это pidgin, поэтому я *могу* при новом сообщении выполнять внешнюю программу, но как этой внешней программой изменить статусбар dwm'а?

xsetroot, как я понимаю, может только устанавливать текст в статусбаре, а мне, видимо, нужно его прочитать, изменить и уже потом вывести. Причём надо учитывать, что следующая итерация цикла в xinitrc снова поставит старый статус.

Думаю, я не единственный человек, кто хочет уведомление о сообщениях в статусбаре и при этом не хочет трея. Как это делают нормальные люди?

 

toady2
()

[Альтруистам] Мигатель NumLock'ом

Форум — Development

Для уведомлений (новые письма, новые сообщения в im,...) хочу использовать мигающий numlock-светодиод. Решил сделать для этого демон, который всегда висит в памяти и по требованию (см. п.2 ниже) начинает или кончает мигать led'ом. Я в кодинге вообще ничего не понимаю, не программист. Поэтому, кому не сложно, дайте подсказки/наброски по следующим пунктам. Писать буду на Си.

1. Как, собственно, мигать светодиодом? Какие функции использовать для {в,вы,пере}ключения светодиода и с какими параметрами? Желательно, чтобы не зависеть от иксов, но можно и с ними. Желательно совместимость (не привязка к конкретному ядру и оборудованию, ибо всё может меняться). Гуглиться это плохо: я нашёл какой-то образец модуля ядра под это, но там я ничего не понял. Пробовал копать исходники разных управлятелей клавиатурных ледов — тоже запутался в трёх соснах :(

2. Про демоны я вроде что-то уловил из статеек в интернете. Интересует только одно: как им управлять? Желательно, чтобы я просто давал команды типа `daemon -start` и `daemon -stop` для вкл/выкл мигания. Ещё что-то слышал о fifo: создать какой-то файл и в него направлять команды, но тут тоже прошу помощи.

toady2
()

[Opera] Флеш-ролики просматриваются «сквозь» экран

Форум — General

Даже не знаю, как это назвать (и, кстати, поэтому не знаю даже что гуглить). Вобщем, проблема такая: захожу на ютюб, смотрю флеш-ролик, а потом понадобилось свернуть оперу, но — к моему великому удивлению — сам ролик никуда не пропал. Оперы нет, на переднем плане у меня уже другое приложение, а видео просвечивается и показывается! Что за фигня?

 

toady2
()

[DWM] Как насильно запустить программу в другом теге

Форум — General

Напр. у меня прописан запуск терминала в 1-м теге. А тут мне надо, например, во втором. Есть ли путь прямее, чем запустить в первом+перенос на второй тег?

 

toady2
()

[Opera] Зависает на секунд 10 после закрытия вкладки с youtube

Форум — General

Сабж. Это только у меня так? Как это можно вылечить?

 

toady2
()

[xmodmap] Произвольные имена клавиш

Форум — General

Можно ли xmodmap научить присваивать клавишам произвольные имена, которые потом в других программах свободно использовать наравне со стандартными именами. Напр.

xmodmap -e 'keycode 124=music_prev'
# Ругается "bad keysym name 'music_prev'".
И потом, например, в .fluxbox/keys
music_prev :Exec mocp -r >/dev/null 2>&1
вместо
124 :Exec mocp -r >/dev/null 2>&1

Это нужно, чтобы внести все личные настройки клавы в один файл .xmodmaprc, который читается xmodmap'ом в .xinit и, тем самым, в остальных программах (напр. fluxbox) освободится от жёсткой привязки к числовым значениям клавиш, ведь клава может поменяться: тогда я просто изменю .xmodmaprc вместо того, чтобы править все конфиги.

 

toady2
()

Как стереть и написать надписи на клавишах клавиатуры?

Форум — Talks

Сабж. (Не говорите, что стереть можно спиртом — этот способ на моей клаве абсолютно не работает, хотя надписи нанесены просто краской, без гравировки.)

P.S. Готовую клаву под сугубо личные предпочтения найти практически невозможно. Хочу сделать свою (из классической).

В частности:
1) У меня на клаве есть 4 бесполезных блока клавиш: numpad, power/sleep/wake, printscreen/scrolllock/pause и правые alt/win/context/ctrl. Второй я уже давно забиндил на prev, pause/play, next в плеере (moc как демон). Хочу закрасить оригинальные надписи и сделать свои. Для чего отдать остальные пока не придумал (предложения принимаются).
2) Светодиод scroll lock у меня показывает текущую раскладку (горит = русская), хочу поменять надпись. Numlock+Capslock хочу использовать для нотификации о приходе новых писем + ещё 2 события (т.е. на них будет двоичное число: 00 = нет ничего, 01 = новое письмо, 10 = новое сообщение в IM, 11 = не придумал; где 0 = потушенный светодиод, 1 = мигающий светодиод). Кстати, как это можно организовать? Программист из меня как из Пугачёвой балерина. Наверное, придётся выжить силы и написать маленькую утилиту для мигания светодиодов: ткните пожалуйста в нужном направлении.

P.P.S. Это всё в иксах. А в чистом терминале то же (нотификацию LED'ами, управление плеером) реализовать как-нибудь просто можно?

toady2
()

[Ищу] hex редактор

Форум — General

1. Консольный.
2. Можно свободно удалять/добавлять байты (в частности, писать файлы с нуля). 3. Простой, маленький, без наворотов.

 

toady2
()

сглаживание шрифтов

Форум — Desktop

Настроил сглаживание:

$ cat ~/.Xdefaults | grep Xft
Xft.hinting: true
Xft.hintstyle: hintslight
Xft.antialias: true
Xft.rgba: none
Xft.lcdfilter: lcdnone

Но шрифты выглядят не очень красиво. Может мне кажется, но в старой слакваре (где я ничего не настраивал, всё было как-то по дефолту) выглядело красивее. При выставлении hintfull или другого hint* результат тот же, что и от отключения hinting вообще. lcdfilter тоже ничего не меняет (пробовал разные варианты). Настоящий конфиг даёт лучший результат, но не идеальный.

Вообще, мне и без сглаживание хорошо живётся. Почему в виндовсе, когда отключаешь сглаживание, шрифты становятся просто более «чёткими» и «резкими», но выглядят нормально (на работе на всех виндовых компах сглаживание выключено и всё выглядит очень хорошо). Если я отключаю сглаживание в линуксе (в слаке 12.2 так было и теперь в арче), то шрифты меняют свой вид, становятся обгрызанными и корявыми, просто страх. Можно ли настроить (и если да, то как) в линуксе шрифты так, чтобы они выглядели как несглаженные виндовые?

toady2
()

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