LINUX.ORG.RU

Сообщения snoopcat

 

Как в php (без ООП) передать false с кодом ошибки?

есть функция, назовём её api_query()
в случае успеха она возвращает какое-то значение, которое не есть false
в случае неудачи она возвращает false
по говнокоду натыканы проверки типа if(!api_query()).
но теперь возникла необходимость помимо FALSE/NULL передавать еще и код ошибки.
то есть, что-то типа

$errcode = "You are very bydlokoder"; return false
в самой функции api_query, только из внешних скриптов нужно бы получить этот $errcode.
менять все 50 вызовов функции if(!api_query()), мягко говоря, гемморно..
как без лишнего оверхеда передать во внешний скрипт код ошибки вместе с false результатом функции?

 ,

snoopcat
()

удалённая файловая система

привет, ЛОР, расскажи за удалённые файловые системы?
нужно примонтировать VPS'ку с ноутбуку с демоническимдинамическим IP-адресом.
пробовал sshfs, отваливается каждые 5 часов, если ничего не делать.
пробовал nfs, отваливается после смены IP-адреса до exportsfs -a

каким способом лучше подмонтировать vps'ку?

snoopcat
()

нужен сервис смс-рассылок

..который нормально работает с MTS RUS и пропускает *любые* SenderID (цифровые) без валидации
заранее спасибо

snoopcat
()

Jabber-клиент с сохранением вкладок

ищется мультиплатформенный (желательно; либо только под Шиндошс) jabber-клиент с возможностью сохранений вкладок и истории после перезапуска.
спасибо.

snoopcat
()

Jabber-транспорт

Нужно сделать Jabber-транспорт (в выборе языка не ограничены, главное, чтобы подключался к ежабберд).
Для регистрации используется номер (назовем его CID).
По интервалу гетается xml либо json с атрибутами: from, msg и пересылается клиенту транспорта от имени from@jabberserver
При ответе на from@jabberserver так же гет-запрос на ту же xml с определенными параметрами.
Всё.

Цены и контакты пишите тут.

--- неактуально.

 

snoopcat
()

LuaNginx vs luacgi

планируется написание средне-нагруженной серверной части биллинг-системы на lua с mysql (либо постгрес) в качестве БД.
возник вопрос: что лучше использовать — библиотеку для создания FCGI-приложений (luacgi), или же сразу использовать «прямое» Nginx lua API для создания приложения?
в чём плюсы и минусы того и другого?

snoopcat
()

Почтовый сервис с возможностью кастомных триггеров

привет, лор, подскажи почтовый сервис (если такие существуют и не придётся поднимать собственный почтовик, конечно) с возможностью при приёме почты пересылать его POST-запросом по HTTP, например.

ну либо насоветуйте вариант с каким-нибудь демоном/клиентом, который будет висеть в screen'е и при появлении новых писем дёргать какой-нибудь скрипт.

snoopcat
()

замещение значений таблицы mysql

есть таблица a вида:

+-----+------+------------+
| id | cost | route |
+-----+------+------------+
| 621 | 3.26 | texpremium |
+-----+------+------------+
| 622 | 4.11 | texpremium |
+-----+------+------------+
есть таблица b вида:
+-----+------+--------+
| id | cost | route |
+-----+------+--------+
| 621 | 2.21 | texcli |
+-----+------+--------+


нужно заместить значения из таблицы a значениями из таблицы b при совпадающем id, либо на уровне БД, либо на уровне клиентского приложения (на php).
помогите придумать логику, либо скажите куда гуглить :3

 ,

snoopcat
()

чем дебажить мёртвые зависоны линукса (не паники)?

началось недавно.
в рандомное время (обычно на 3-4 дне аптайма) начал зависать ноут. ни кернелпаника, ни реакции на Magic sysrq, ни пинга до ноута, естественно, нет.
чаще всего виснет при включении музыки втентаклике с помощью флеш плеера, иногда виснет просто так, без причины.
как это можно словить и отдебажить?

snoopcat
()

compton & smplayer

можно ли как-нибудь избавиться от таких артефактов?
intel hd3k, linux 3.10, compton.conf:

backend = "glx"; # Enables Opengl backend
paint-on-overlay = true; # These 3 can improve performance, work well in most cases
glx-no-stencil = true;
glx-no-rebind-pixmap = true;
vsync = "opengl-swc"; # Enables one of the vsync methods. Check here for more info: https://github.com/chjj/compton/wiki/vsync-guide

# Shadow
shadow = true;            # Enabled client-side shadows on windows.
no-dock-shadow = false;        # Avoid drawing shadows on dock/panel windows.
no-dnd-shadow = true;        # Don't draw shadows on DND windows.
clear-shadow = true;        # Zero the part of the shadow's mask behind the window (experimental).
shadow-radius = 7;        # The blur radius for shadows. (default 12)
shadow-offset-x = -7;        # The left offset for shadows. (default -15)
shadow-offset-y = -7;        # The top offset for shadows. (default -15)

# Fading
fading = true; # Fade windows during opacity changes.
fade-delta = 4; # The time between steps in a fade in milliseconds. (default 10).
fade-in-step = 0.03; # Opacity change between steps while fading in. (default 0.028).
fade-out-step = 0.03; # Opacity change between steps while fading out. (default 0.03).
detect-client-opacity = true; #Fixes opacity in some apps, such as xfce4-notifyd
#no-fading-openclose = true; # Fade windows in/out when opening/closing

# Transparency

menu-opacity = 0.97;			# The opacity for menus. (default 1.0)
#inactive-opacity = 0.93;			# Default opacity of inactive windows. (0.0 - 1.0)
#blur-background = true;

wintypes:
{
  tooltip = { fade = true; shadow = true; };
};

# Exclude

shadow-exclude = [
 "g:e:Conky"
]

snoopcat
()

из десятичной в троичную систему счисления

как реализовать это на сях?

пробовал вот так, теряются нули (например: Converted decimal value 3 to ternary value 1 [должно быть 10], Converted decimal value 6 to ternary value 2 [должно быть 20], Converted decimal value 9 to ternary value 1 [должно быть 100], и.т.д)

int ToTernary(int source) {
	int mod, result = 0;

	while(source != 0) {
		mod = source % 3;
		source = source / 3;
		result = result*10+mod;
	}
	printf("Converted to ternary value %d\n", result);
//	return Reverse(result);	
}

 

snoopcat
()

Xfce и .Xresources

Xfce игнорирует файл .Xresources, даже если в автозагрузку поместить «xrdb -merge /home/`whoami`/.Xresources».
после ручного выполнения этой команды всё ок.
можрно как-нибудь пофиксить?

snoopcat
()

как правильно реализовать ограничение

уважаемый all, возникла такая задача: нужно хранить историю логинов на сайт в mysql-таблице с полями:

id     |     username       |     ip     |       date

но не больше 30 логинов для каждого username (при достижении лимита удаляется самый старый)
как это всё культурно реализовать (ну или хотя-бы, как это всё культурно загуглить?)

 

snoopcat
()

чем бы экспортировать/сконвертить музыку из плейлиста?

есть m3u плейлист, нужно все треки оттуда сконвертить во *.flac (из *.m4a), прописать теги и раскидать по папкам со структурой вида:

artist1\\
         album1/
         album2/
artist2\\
        album1/
        album2/
и т.д.

 

snoopcat
()

OpenWRT доступ к LAN по внешним адресам

если пытаться из локальной сети открывать внешние адреса (IP/домен, например: http://home.internal-owl.org), то получаю следущую ошибку:

Rejected request from RFC1918 IP to public server address
если открывать из внешней сети, то всё ок. если открывать LAN-адреса по локальным адресам (например, http://somewhere.owl, или http://10.8.12.13) — тоже всё хорошо

вопрос: как сделать так, чтобы локальные компьютеры были доступны по внешним адресам?
сейчас активны следущие правила iptables:
        iptables -t nat -A prerouting_wan -p tcp --dport 80 -j DNAT --to 10.8.12.13:80
        iptables -A forwarding_wan -p tcp --dport 80 -d 10.8.12.13 -j ACCEPT
iptables -L настройка DNS в вебморде

 ,

snoopcat
()

почему все говорят, что на линуксе всё плохо с энергосбережением?

итак,

~ $ date +%A
Пятница

внимание вопрос: почему все ноют, что на линупсах ноуты держут в разы меньше, чем под Нормальной Операционной Системой™ виндой?
вот я заметил, что мой Samsung 300U1A-06 работает под линуксом примерно на час дольше, чем под виндой.
по отзывам мы видим, что в режиме «чтение интернетиков» ноут работает 3 часа.
на линуксе — вот так. запущено всё, что можно запустить (музыка во фляке офк, кино, виртуалка, браузер с флешем и шкайпик), при этом ноут обещает почти 3 часа работы (и это с неполной зарядкой).
так вот, если на этих ваших линупсах ВСЁ ОЧЕНЬ ПЛОХО с энергосбережением — почему ноутбук «живёт» ощутимо дольше, чем под Шинdоws?

powertop, atop и htop, powertop 2.4 по просьбам

 

snoopcat
()

OpenWRT на TP-Link WL1043ND

вот уже несколько версий подряд, включая svn-снепшоты, раз в сутки стабильно падает вайфай с таким сообщением в dmesg:

[390834.260000] ath: phy0: Failed to stop TX DMA, queues=0x004!
[390835.210000] ath: phy0: Failed to stop TX DMA, queues=0x004!
[390843.790000] ath: phy0: Failed to stop TX DMA, queues=0x004!
[390844.730000] ath: phy0: Failed to stop TX DMA, queues=0x004!
[390845.660000] ath: phy0: Failed to stop TX DMA, queues=0x004!
[390846.140000] ath: phy0: Failed to stop TX DMA, queues=0x004!
[390847.310000] ath: phy0: Failed to stop TX DMA, queues=0x004!
[390848.250000] ath: phy0: Failed to stop TX DMA, queues=0x004!
[390849.180000] ath: phy0: Failed to stop TX DMA, queues=0x001!
[390857.650000] ath: phy0: Failed to stop TX DMA, queues=0x001!
багу уже скоро полтора года, может, есть тут у кого истории успеха победы над оным?
cast pekmop1024, вроде, у тебя 1043nd был?

 

snoopcat
()

alsa&dmix: иногда слышен «треск»

иногда слышен треск при воспроизведении музыки. лечится просто: pause->play, но хотелось бы пофиксить.

дело наверняка в кривом конфиге dmix'a:

pcm.internal {
    type dmix
    ipc_key 1025
    slave {
        pcm "hw:0,0"
        period_time 0
        period_size 1024 
        buffer_size 8192 
        channels 2
    }
}

что нужно поправить, чтобы «треск» пропал? пробовал ставить buffer_size в 4096 и в 16384, period_size в 512 и в 2048 - становится еще хуже:(

 ,

snoopcat
()

транспорт из вконтактика в жаббер

как известно, не так давно ВК прикрыл свой xmpp-сервер.

и вот, пару дней назад, наткнулся на очень интересный проект: vk4xmpp - Jabber-транспорт, написанный на python, который использует API вконтакта.

последняя ревизия этого чуда у меня так и не заработала, транспорт я брал отсюда — соответственно, форкал его же.

для Ъ:
Возможности:

  • Прием и отправка сообщений;
  • Авторизация по паролю или ключу «access-token», выдаваемому
  • ВКонтакте;
  • Пересланные сообщения;
  • Вложения в сообщениях (только приём);
  • Список друзей в ростере;
  • Поддержка vCard для контактов;
  • Добавление в ростер новых, недавно добавленных друзей автоматически (в случае, если пользователь транспорта в это время был в сети, иначе следует вручную запросить подписку id@transport);
  • Статистические данные о работе транспорта.

поставил к нам на сервер, протестировал - вроде работает. сообщения шлёт, вложения принимает.

мой недофорк:

  • теперь в jabber-статусе показывается вк-статус пользователя
  • реализованы конференции

скриншот: тык

 

snoopcat
()

apt-get и «Чтение списков пакетов»

любые операции с использованием apt/aptitude происходят ОЧЕНЬ медленно (5-10 минут на «Чтение списков пакетов»), ОС - Debian Jessie(testing), ФС - reiserfs.

как это можно пофиксить, ну, кроме создания какой-нибудь ext4 в файле и монтированием в /var/lib/apt, или куда там его?

 , ,

snoopcat
()

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