LINUX.ORG.RU

Сообщения toady2

 

Быстрый GUI

Предположим нужно быстро на коленке написать маленькую GUI программку. Как это сделать лучше всего? Пока смотрю на tcl/tk (а т.к. я tcl не знаю, то через костыль perl/tk). Но выглядит tk'шные гуи ужасно (на фоне красивой темы gtk).

toady2
()

[perl] [Tk::NoteBook] Как выравнивать табы к правому краю, а не к левому?

сабж

 

toady2
()

[dwm] Mathematica 7

Mathematica 7 Help странно ведёт себя в dwm: не реагирует на его команды (типа изменения размеров, перемещения) и сразу отображается на всех тегах. Как это можно вылечить?

 

toady2
()

[dwm] картинку в статусбар

На скринах часто видел в статусе маленькие картинки (напр. http://www.tamps.cinvestav.mx/~gtoscano/files/dwm-gtp.png). Как это делают?

 

toady2
()

[dwm] Окно на первый план

В плавающем режиме, когда я хочу посмотреть на окно, перекрытое другим окном, я жму левую кнопку мыши с meta-клавишей dwm'а. Когда же окно полноэкранное (режим monocle), то так не получается. Например, при полноэкранном браузере я открываю картинку в окошке feh и хочу на передний план вывести снова браузер.

 

toady2
()

Крошка сервер

Хочу, наконец, сделать маленький домашний сервер для

  • хранилище фильмов, музыки и прочих статических данных.
    • Вопрос. Можно ли как-нибудь сделать, чтобы (бюджетный) телек мог фильмы смотреть с этого хранилища?
  • демоны 24/7: проверка почты (fetchmail+procmail), ssh (чтобы с телефона на роботе можно было открыть mutt на сервере, просмотреть снимок с вебкамеры), безделушки (мониторинг температуры, снимки с вебкамеры...).

Требования

  • бесшумность. желательно абсолютная.
  • маломощность.
  • пожаробезопасность, etc. Меня бОльшую часть времени дома нет, не люблю бесприсмотраработающую сложную технику.
  • переносимость в колхозно-бытовом смысле, то есть подходящий под кочевный образ жизни.

Что посоветуйте? Есть старый компьютер 800МГц/256МБ, но это трактор ещё тот, да и ест электричество. Поэтому его отметаю. В инете прочёл, как из роутера сделать сервер. Но там какая-то специальная прошивка... вобщем нет того разворота, какое я бы имел, установив обычный линукс (arch) и нужный мне софт на комп с процем x86 серии. Да и, думаю, функции роутинга после этого он будет выполнять не так хорошо (у меня инетканал 32мбит/c). В раздумьях.

toady2
()

Аналоги старых друзей в Android

Я отстал от жизни. Чтобы заменить телефон, блокнот, фотик и чтобы был маленький вариант компьютера вне дома, решил купить себе смартфончик. (Нагуглил приемлемый для себя вариант: Xperia Mini Pro на андроиде.)

Но как же я могу жить без моих программных друзей: mutt, vim, irssi и т. п. Линукс есть линукс, может существуют андроидные версии этих программ?

И ещё. Я плохо себе представляю Андроида. Ответьте, пожалуйста, на вопросы:
1. Можно ли там запустить терминал с bash'ем (или совсестимым шеллом)? У меня есть несколько башевых скриптов (todo-менеджер и пр. мелочь). Хочется их оставить.
2. perl?
3. Если ответ на 1-ый вопрос «да», то есть ли sudo?
4. Насколько андроид отличается от типичного линукс дистрибутива? Можно ли его коренным образом перепахать и сделать конфетку под себя? Или же всё заканчивается банальной сменой тем и приложений?

toady2
()

[Задолбал Билайн] Как сохранить номер?

Хочу перейти на МТС или Мегафон, но при этом сохранить свой старый номер (он у меня всю жизнь не менялся и у всех я с этим номером жёстко ассоциируюсь). Возможно ли?

Можно сделать переадресацию, но там получится факатичсеки двойная плата (даже больше). Это мне не подходит.

toady2
()

[C99] int, int_fast16_t

Существует ли платформа (процессор, компилятор), где размеры переменных этих типов различаются? Если да, то какая платформа и какие размеры?

UPD: Перед тем как отвечать, перечитайте вопрос не менее двух раз. Если вы его не поняли (у меня плохо с конвертацией мыслей в текст), то лучше вообще не отвечайте. Спасибо.

toady2
()

[Arch] Чистка логов

В /var/log/errors.log при каждой загрузке появляется строчки

Sep 21 18:16:25 localhost kernel: [    1.352798] xhci_hcd 0000:05:00.0: Failed to enable MSI-X
Sep 21 18:16:25 localhost kernel: [    2.782180] ata2.01: failed to resume link (SControl 0)
Sep 21 18:16:25 localhost kernel: [    2.782361] ata1.01: failed to resume link (SControl 0)

Что это значит и как можно их вылечить?

 

toady2
()

Мааленький вопрос про стандарт Си

Верно ли, что

/* foo_type foo(bar_baz_type bar); */
foo(bar = baz);
эквивалентно
bar = baz;
foo(bar);
?

toady2
()

Правильный try-except в Си

Сразу извиняюсь за глупые вопросы: я не программист, просто надо написать маленькую программу для себя.

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

...
if (!(f = fopen(...))) {
    return 1;
}
...
if (!(g = log_open(...))) {
    fclose(f);
    return 1;
}
...
if (!(h = door_open(...))) {
    log_close(g);
    fclose(f);
    return 1;
}
...
...
...
if (!(z = mind_open(...))) {
    ...
    door_close(h);
    log_close(g);
    fclose(f);
    return 1;
То есть со временем обработчик ошибки становится всё более жирным.

Как нормальные программисты это организуют? Не предлагать писать не на Си, пожалуйста.

toady2
()

filemode 100644

$ git ls-tree -r 4ddaa027cffcb84960d8a18c87f191887dce8d4a
100644 blob 445bfae14c7d287d45f51ac6e1e87920b56bafdf    .gitignore
...

Что значит 100644? Ну 644 — понятно: rw-r--r--, но что такое 100?

toady2
()

[mutt] html-письма

Как научить mutt смотреть html-письма? Нагуглил мануал, пишу в .mailcap:

text/html; lynx %s

Но mutt вообще не реагирует никак. По-прежнему при просмотре он тупо показывает в строенном вьювере html-исходник. Что я делаю не так?

 

toady2
()

Формат версий

Посоветуйте формат номера версии ПО, который
1) Универсальный (совместим с разными моделями разработки, etc.)
2) Максимально короткий. Максимально цифровой.
3) Учитывает ветвления, слияние...* То есть совместимый с современными VCS типа git, hg.
4) Сравнимые версии** должны сравниваться пакетными менеджерами. То есть x1.y1.z1... > x2.y2.z2... при x1>x2 или (x1=x2 и y1>y2 или (...)), то есть лексикографически, но внутри каждого поля (x,y,z,..) как целые числа***.
5) Уникальный****. Точность до «коммита» (в смысле git, т.е. элементарного функционально законченного изменения). Но: не требуется особое выделение релизов, тестовых версий, etc*****. То есть номер версии инкрементируется всегда одинаково независимо от масштаба изменения.

P.S. Просьба не обсуждать указанные требования. Мне нужна помощь только в выборе подходящего формата нумераций.



_____________
* Таким образом, простой линейный порядок версий 1,2,3... (как издания книги) не подходят.
** Например, в одной ветке. Вообще же говоря разные версии одного ПО не обязаны быть сравнимыми (опять же, например, разные ветви разработки).
*** Таким образом, git'овский sha1 или т.п. идентификаторы не подходят.
**** Таким образом, формат версии в виде текущей даты (YYYY.MM.DD) не годится. Он не подходит и по п.3.
***** Ибо это, во-первых, субъективно, а во-вторых, указание стабильности/тестовости/... той или версии можно сделать в документации или на офсайте.

toady2
()

Как научить feh смотреть анимированные gif?

.

toady2
()

djview3 на qt4

Установлена qt4. Можно ли как-нибудь установить djview3 (вместо идиотского djview4)? Arch Linux. В репозиториях и AUR'е не нашёл.

toady2
()

[Ищу] Консольный мультипротокольный IM

Обязательна нативная работа (без транспортов) с icq, jabber, irc. Консольный, конфигурируемый. Короче, нужен irssi с нативной поддержкой icq и jabber :)

 

toady2
()

[irssi] Ищу сигнал

Задача: хочу, чтобы при появлении нового сообщения (= сообщения в каком-либо канале, адресованное мне) в файл ~/.irssi/pipe записывалось «1». Как только я зайду на тот канал, в ~/.irssi/pipe должно записаться «0» (конечно, если есть новые сообщение в других каналах, то 0 записаться не должна).

У меня настройки такие:

  "fe-common/core" = {
    use_status_window = "yes";
    autolog_path = "~/.irssi/log/%Y/$tag/$0";
    autolog = "yes";
    bell_beeps = "yes";
    beep_msg_level = "HILIGHT";
    beep_when_window_active = "no";
  };
Когда мне кто-то что-то пишет в канале, а я не в нём, то в статусбаре появляется номер этого канала красным цветом. Когда я на него захожу, это уведомление пропадает. А я хочу, чтобы когда это уведомление есть, в файле ~/.irssi/pipe была 1, иначе 0.

Пытался написать плагин:

use Irssi;
use strict;

sub start_notify {
    system('echo 1 >~/.irssi/pipe');
}

sub stop_notify {
    system('echo 0 >~/.irssi/pipe');
}

Irssi::signal_add('window hilight', \&start_notify);
Irssi::signal_add('window dehilight', \&stop_notify);
Irssi::signal_add('gui exit', \&stop_notify);
Но не работает 'window dehilight'. Я думал, этот сигнал появляется, когда снимается уведомление, но, видимо, нет, ибо в файле ~/.irssi/pipe всегда 1, кроме как когда irssi выключен.

 

toady2
()

[gcc] неявная декларация popen/pclose

В С-коде вызываю popen/pclose. gcc запускается с опциями -std=c99 -pedantic -Wall и ругается на неявную декларацию popen и pclose. Но stdio.h подключен! Что я не так делаю?

Это, конечно, лишь варнинг, но хочется совсем без них.

 

toady2
()

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