LINUX.ORG.RU

Сообщения annerleen

 

Freeswitch mod_lua заменить Lua на Tarantool

Форум — Job

Доброго времени суток, ЛОР!
Задача нынче следущая.

Есть замечательный FreeSwitch 1.8.2, в котором есть не менее замечательный модуль mod_lua, который линкуется с liblua5.2.

Есть не менее замечательный Tarantool, тот же Lua, однако с поддержкой лёгких потоков (fibers), да и к тому же работает раз эдак в 10 быстрее Lua, оставаясь обратно совместимым.
Беглым взглядомdiff'ом пробежал по заголовкам, которые шли в пакете tarantool-dev, и вроде бы как бы да, на первый взгляд всё совместимо.

Однако, при попытке «создать» mod_tarantool я потерпел фиаско, что в принципе неудивительно, так как Tarantool имплементирует Lua API 5.1, а mod_lua линкуется с liblua5.2.

Дальше мои знания, к сожалению, всё.

________________________________________________________________

Итак, уважаемые знатоки!
Предлагаю $200 в Bitcoin-эквиваленте тому, кто добавит поддержку Tarantool в Freeswitch 1.8.2.

 , ,

annerleen ()

Котокрыса

Галерея — Скриншоты

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

Что тут у нас?
Железо: Lenovo Thinkpad T480.
Софт:

— Debian GNU/Linux testing (buster)
— XFCE 4.12
— Fish 3.0 (пакеты для Debian брать здесь)
— Firefox ESR (текущие падают, не было печали)
— Mesa 18.3 и nvidia-drivers 410.78 из experimental

Остальное всё стандартное для Debian и/или видно на скриншоте.
Доброе утро!

>>> Просмотр (2560x1440, 1150 Kb)

 ,

annerleen ()

Кто чем бэкапит кучу разных серверов?

Форум — Admin

inb4: rsync/tar+ssh/сам напиши, чо, не мужик шоле?

Знаю, что вопрос поднимался сотни раз, но на дворе 2019 год, как-никак, может, поменялось что?

Задача:

- Бэкапить данные с кучи мелких серверов на пару больших по ftp, ssh;
- Простенький веб-интерфейс со списком и статусом серверов, бэкапов, хранилищ;
- Возможность выполнять кастомные команды до/после бэкапа;
- Естественно, опенсорс;
- Шифрование сжимаемых и передаваемых по сети данных;

Пожалуй, всё.

 

annerleen ()

Альтернатива self-hosted gitlab

Форум — Development

Привет, ЛОР.

Есть какая-то альтернатива self-hosted gitlab'у для нетребовательной команды из пары разработчиков?

Из требований только кастомизируемый веб-интерфейс к DVCS с возможностью скачать/просмотреть.

Gitlab ОЧЕНЬ жирный.

Git не принципиален, можно hg.

 

annerleen ()

Firefox постоянно падает

Форум — Desktop

Хочу спросить, у всех так?
Если нет, из-за чего может быть?

Скачивал бинарную сборку с офф.сайта, Beta, Nightly — результат один — краш.
Баг-рапортъ есть.

[183143.945718] Chrome_~dThread[14951]: segfault at 0 ip 00007f7b47f1df56 sp 00007f7b3f4b9aa0 error 6
[183143.945723] Chrome_~dThread[15305]: segfault at 0 ip 00007fb64cb74f56 sp 00007fb644110aa0 error 6
[183143.945725]  in libxul.so[7f7b445b0000+4dce000]
[183143.945728] Code: 8b 0d d6 7e 75 03 48 89 01 c7 04 25 00 00 00 00 2d 02 00 00 e8 7b b9 69 fc 48 8d 05 9c 1a 5b 01 48 8b 0d b5 7e 75 03 48 89 01 <c7> 04 25 00 00 00 00 df 09 00 00 e8 5a b9 69 fc 66 2e 0f 1f 84 00
[183143.945732] Chrome_~dThread[14639]: segfault at 0 ip 00007f2a4703df56 sp 00007f2a3e5d9aa0 error 6
[183143.945734]  in libxul.so[7fb649207000+4dce000]
[183143.945736]  in libxul.so[7f2a436d0000+4dce000]
[183143.945739] Code: 8b 0d d6 7e 75 03 48 89 01 c7 04 25 00 00 00 00 2d 02 00 00 e8 7b b9 69 fc 48 8d 05 9c 1a 5b 01 48 8b 0d b5 7e 75 03 48 89 01 <c7> 04 25 00 00 00 00 df 09 00 00 e8 5a b9 69 fc 66 2e 0f 1f 84 00
[183143.945742] Code: 8b 0d d6 7e 75 03 48 89 01 c7 04 25 00 00 00 00 2d 02 00 00 e8 7b b9 69 fc 48 8d 05 9c 1a 5b 01 48 8b 0d b5 7e 75 03 48 89 01 <c7> 04 25 00 00 00 00 df 09 00 00 e8 5a b9 69 fc 66 2e 0f 1f 84 00
[183143.946017] Chrome_~dThread[15147]: segfault at 0 ip 00007f0f8027af56 sp 00007f0f77816aa0 error 6 in libxul.so[7f0f7c90d000+4dce000]
[183143.946025] Code: 8b 0d d6 7e 75 03 48 89 01 c7 04 25 00 00 00 00 2d 02 00 00 e8 7b b9 69 fc 48 8d 05 9c 1a 5b 01 48 8b 0d b5 7e 75 03 48 89 01 <c7> 04 25 00 00 00 00 df 09 00 00 e8 5a b9 69 fc 66 2e 0f 1f 84 00
[183143.946174] Chrome_~dThread[14729]: segfault at 0 ip 00007f155cf07f56 sp 00007f15544a3aa0 error 6 in libxul.so[7f155959a000+4dce000]
[183143.946183] Code: 8b 0d d6 7e 75 03 48 89 01 c7 04 25 00 00 00 00 2d 02 00 00 e8 7b b9 69 fc 48 8d 05 9c 1a 5b 01 48 8b 0d b5 7e 75 03 48 89 01 <c7> 04 25 00 00 00 00 df 09 00 00 e8 5a b9 69 fc 66 2e 0f 1f 84 00
[193987.740233] Chrome_~dThread[16354]: segfault at 0 ip 00007f7092da7cd6 sp 00007f7089e3aa80 error 6
[193987.740237] Chrome_~dThread[985]: segfault at 0 ip 00007f21f4aadcd6 sp 00007f21ebb40a80 error 6
[193987.740240] Chrome_~dThread[16625]: segfault at 0 ip 00007f16c41cdcd6 sp 00007f16bb260a80 error 6
[193987.740243]  in libxul.so[7f21f0ded000+5317000]
[193987.740246]  in libxul.so[7f16c050d000+5317000]
[193987.740249] Code: 8b 0d b6 5a 84 03 48 89 01 c7 04 25 00 00 00 00 2d 02 00 00 e8 53 9b 34 fc 48 8d 05 03 da 7a 01 48 8b 0d 95 5a 84 03 48 89 01 <c7> 04 25 00 00 00 00 df 09 00 00 e8 32 9b 34 fc 66 2e 0f 1f 84 00
[193987.740251]  in libxul.so[7f708f0e7000+5317000]
[193987.740254] Code: 8b 0d b6 5a 84 03 48 89 01 c7 04 25 00 00 00 00 2d 02 00 00 e8 53 9b 34 fc 48 8d 05 03 da 7a 01 48 8b 0d 95 5a 84 03 48 89 01 <c7> 04 25 00 00 00 00 df 09 00 00 e8 32 9b 34 fc 66 2e 0f 1f 84 00
[193987.740258] Code: 8b 0d b6 5a 84 03 48 89 01 c7 04 25 00 00 00 00 2d 02 00 00 e8 53 9b 34 fc 48 8d 05 03 da 7a 01 48 8b 0d 95 5a 84 03 48 89 01 <c7> 04 25 00 00 00 00 df 09 00 00 e8 32 9b 34 fc 66 2e 0f 1f 84 00
[193987.740349] Chrome_~dThread[31379]: segfault at 0 ip 00007f43ce0decd6 sp 00007f43c5171a80 error 6 in libxul.so[7f43ca41e000+5317000]
[193987.740354] Code: 8b 0d b6 5a 84 03 48 89 01 c7 04 25 00 00 00 00 2d 02 00 00 e8 53 9b 34 fc 48 8d 05 03 da 7a 01 48 8b 0d 95 5a 84 03 48 89 01 <c7> 04 25 00 00 00 00 df 09 00 00 e8 32 9b 34 fc 66 2e 0f 1f 84 00
[193987.740440] Chrome_~dThread[1641]: segfault at 0 ip 00007f1aeb0d7cd6 sp 00007f1ae216aa80 error 6 in libxul.so[7f1ae7417000+5317000]
[193987.740446] Code: 8b 0d b6 5a 84 03 48 89 01 c7 04 25 00 00 00 00 2d 02 00 00 e8 53 9b 34 fc 48 8d 05 03 da 7a 01 48 8b 0d 95 5a 84 03 48 89 01 <c7> 04 25 00 00 00 00 df 09 00 00 e8 32 9b 34 fc 66 2e 0f 1f 84 00



Дебаггером поймать не удаётся.
С чистым профилем — тоже безрезультатно.

Firefox ESR работает, но там другая проблема (отключение аппаратного ускорения не помогает)

Куда копать?

 ,

annerleen ()

Увольняюсь из systemd хейтеров

Форум — Talks

Привет, ЛОР!
Решил тут уволиться из systemd-хейтеров.

Предыстория.

Поднимали мы тут инстанс btcpay, соответственно, нужно было позаботиться о том, чтобы демоны btcpayserver с его прислужниками, а так же bitcoind, litecoind постоянно были запущены, не падали и перезапускались если вдруг что.

По-старинке решил воспользоваться supervisord, но подумал, что у нас же тут модный сустемд пропихнули везде, почему бы не ознакомиться с тем, что он предлагает?

Ну, и поехали, минута в гугле и был написан следущий юнитскрипт:

[Unit]
Description=btcpay
After=network.target

[Service]
Type=simple
Restart=on-failure
RestartSec=3
User=btcpay
Group=btcpay
WorkingDirectory=/var/btcpay/btcpayserver-1.0.3.36
ExecStart=/var/btcpay/btcpayserver-1.0.3.36/run.sh --chains btc,ltc --externalurl https://btcpay.ourdomain.name

[Install]
WantedBy=multi-user.target


И ещё один --

[Unit]
Description=bitcoind
After=network.target

[Service]
Type=simple
Restart=on-failure
RestartSec=3
User=btcpay
Group=btcpay
ExecStart=/var/btcpay/bitcoin/bitcoin-0.17.0/bin/bitcoind

[Install]
WantedBy=multi-user.target


 # systemctl enable bitcoind && systemctl enable btcpay && reboot


Выкуриваем сигаретку, пинаем сервер — опа!
Всё поднялось и работает. Если что упадёт — перезапускает.
Логи показывает по $ journalctl -u bitcoind.
Ну что ещё нужно для счастья на сервере?

#вся_суть_systemd_хейтеров

_____________________________________________________________

А вот за то, что его прибивают гвоздями к десктопному линуксу и без него, например, не работает networkmanager — это всё ещё крайне и крайне печально.

 

annerleen ()

NFC Field и считывание координат

Форум — Development

Добрый вечер, ЛОР!

Дано: 60 уникальных «меток», есть «поле» размером, допустим, 1х1 метр, эти метки распределены по полю.
Задача: детектить, когда и откуда метку убрали и положили.

Первое на ум пришло NFC, верно ли?
Есть ли какой-то способ одним NFC-ридером определить «координаты» (относительно него, например) убранной/поставленной метки?

Решение с 60 NFC-ридерами кажется каким-то оверкиллом.
Не обязательно это должно быть NFC, может, есть что-то другое?

Пните в нужном направлении, пожалуйста.
Заранее спасибо!

 

annerleen ()

ООП в Python

Форум — Development

Добрый день, ЛОР.
Учусь ООП (точнее, его подобию) в Питуне.

Сходу вопрос: как можно разбить класс на несколько файлов?
Очевидное наследование, однако голова кипит и пока не могу сообразить, как и куда его пихать.

Допустим, есть класс, в нём есть метод logger(), который формирует и возвращает лог-строку с полезной информацией:

class BotInstance:

    chat_id = None
    users = []
    bot_debug = False

    def logger(self, message = ''):
        info = "[Chat {0}] [{1} users]".format(self.chat_id, len(self.users))
        return info + message


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

 

annerleen ()

Выключить sleep mode при подключении bluetooth гарнитуры

Форум — Mobile

Сабж.
Чем такое можно реализовать на андроиде?

Спасибо заранее.

 

annerleen ()

Избежать кучи таблиц в Postgres'е

Форум — Development

Привет, ЛОР.
Вопрос такой: есть сервис, есть его БД в постгресе, у этого сервиса, допустим, 1000 пользователей.

Для каждого пользователя имеется возможность создания таблички кастомной обработки правил (пусть это будут правила совершения вызовов на телефон пользователя), так вот, вопрос — как правильнее всего поступить?


1 вариант — табличка обработки вызовов для всех общая;

table_rules
---------------------------------
owner | phone | ruleid | ...


И к каждому правилу мы приписываем owner и phone, что, как мне кажется, не есть правильно.

2 вариант — табличка под каждый номер телефона:

table_12000000001_rules
---------------------------------
ruleid | ...


Но тогда в «корне» БД будут сотни, тысячи таких таблиц, что тоже, наверное, не есть хорошо.

Может, есть ещё какие-то варианты?
Как это грамотнее реализовать в postgresql?

 

annerleen ()

Настройка IPv6 DHCP

Форум — Admin

Добрый вечер, ЛОР.
Хочу поддаться веяниям моды и настроить себе IPv6.

Провайдер сию возможность даёт.
Интернеты по VDSL, модем Zyxel VMG1312-B10D в режиме бриджа.

При попытке запустить dhclient -v -6:

root@lightbringer ~ # dhclient -v -6 world0
Internet Systems Consortium DHCP Client 4.3.5
Copyright 2004-2016 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

Listening on Socket/world0
Sending on   Socket/world0
PRC: Soliciting for leases (INIT).
XMT: Forming Solicit, 0 ms elapsed.
XMT:  X-- IA_NA "\d<Y"
XMT:  | X-- Request renew in  +3600
XMT:  | X-- Request rebind in +5400
XMT: Solicit on world0, interval 1010ms.
RCV: Advertise message on world0 from fe80::200:5eff:fe00:1.
RCV:  X-- IA_NA "\d<Y"
RCV:  | X-- starts 1540999784
RCV:  | X-- t1 - renew  +0
RCV:  | X-- t2 - rebind +0
RCV:  | X-- [Options]
RCV:  | !-- Status code of no addrs, IA_NA discarded.
RCV:  X-- Server ID: 00:03:00:01:84:26:2b:61:31:71
PRC: Lease failed to satisfy.
XMT: Forming Solicit, 1010 ms elapsed.


Если мопед перевести в режим Routing, то он получает адрес и каким-то образом работает.

Шо это може быть?

 

annerleen ()

new macbook air

Форум — Talks

Ну чё пацаны, анонсировали новый Макпук Air :)

- Два USB-C порта, ни одного USB 3.0 Type-A порта
- 13.3" 2560 х 1600
- Впаянные SSD, RAM
- i5 8200Y
- ДО 12 часов автономной работы

*(!*№«ец... И это же покупать будут! За $1200 в базовой комплектации, и это в США!

Лет 5 назад восхищался высокотехнологичными, удобными прошками с отличными показателями автономности, а теперь что?
Эх, Стиви перевернулся в могиле раз девять вокруг своей оси от анонса.

___________________________________________________________________

P.S. этот псто написан с Thinkpad T480 с i7 8550U, 16G RAM, 512 NVMe SSD, 14" 2560x1440, NVidia MX150, который обеспечивает около 30 часов автономной работы, всё это ценой в €1600.
У меня всё.

 ,

annerleen ()

Primus-vk — Поддержка Vulkan для Optimus

Новости — Hardware and Drivers
Группа Hardware and Drivers

Неким felixdoerre был разработан primus-vk — прослойки для запуска Vulkan-приложений при использовании Bumblebee для работы с дискретной видеокартой NVidia на ноутбуках.

Что это и зачем?

Если в вашем ноутбуке две видеокарты, одна из которых nVidia с проприетарным драйвером — для запуска приложений на дискретной видеокарте используется Bumblebee. К сожалению, Vulkan-приложения (в т.ч. DXVK) не работают с Bumblebee, а его разработка прекращена, поэтому единственным вариантом запустить Vulkan-приложение на дискретной видеокарте был запуск отдельного X-сервера на nVidia, что было не совсем удобно (необходимость переключения в другой VT и запуска отдельной графической сессии). С помощью primus-vk можно запустить Vulkan-приложения, используя optirun, без необходимости запуска отдельного X-сервера.

Производительность

В последнем релизе производительность приблизилась к той, что можно получить запуская отдельный X-сервер на дискретной видеокарте.

Установка и запуск

Инструкция по сборке и установке доступна хдесь. Для запуска Vulkan-приложения необходимо установить переменную окружения ENABLE_PRIMUS_LAYER=1 и PRIMUS_VK_MULTITHREADING=1. К примеру, для запуска игры в Wine (используя DXVK):

ENABLE_PRIMUS_LAYER=1 PRIMUS_VK_MULTITHREADING=1 optirun wine Game.exe

>>> Репозиторий на Github

 , ,

annerleen ()

NVidia Optimus / Primus / Vulkan

Форум — Desktop

Привет, ЛОР!
Если ты не в курсе, то на онтопике в лэптопах в конфигурациях с двумя видеокартами (Intel+Nvidia) при использовании нормальных проприетарных драйверов и bumblebee/optirun — не работает Vulkan: https://github.com/Bumblebee-Project/Bumblebee/issues/769

Тут какой-то чувак запилил враппер, который рендерит на дискретной видяхе и перенаправляет вывод на встроенную — то есть, так, как это должно работать и работает в шиндошсах.

Сабж: https://github.com/felixdoerre/primus_vk

Я скомпилировал, протестировал — действительно работает, однако, FPS в несколько раз ниже как в тестах, так и в игрульках.

Просьба счастливых обладателей ноутбуков с оптимусом скомпилять и проверить у себя (хотя бы в том же vulkan-smoketest) — сколько сантиметров выдаёт по сравнению с Интелем

Мои результаты:

Intel = 210 FPS
Nvidia + primus_vk = 40 FPS
Nvidia + nvidia-xrun (отдельный X-сервер) = 560 FPS

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

 , , , ,

annerleen ()

New laptop, old system

Галерея — Скриншоты

Доброго вечера, уважаемый ЛОР!
Поменял тут на днях свой x260 на новенький t480 в максималочках.

Систему оставил ту же — Debian, но проапгрейдил до testing, ибо свежее железо и нужны свежие графические либы и драйвера.

* Lenovo ThinkPad T480 @ i7 8550U, nVidia MX150
* Debian Testing
* XFCE
* Попытка перейти на новый Firefox
* Всё так же Gajim с Telegram-транспортом вместо телеги
* Информация о оформлении всё так же на screenfetch

:3

>>> Просмотр (2560x1440, 955 Kb)

 ,

annerleen ()

Удалено, причина: «Уже было» (-10)

Галерея — Скриншоты

Здравствуйте.
Заголовок говорит сам за себя.

Здесь есть:

— Lenovo ThinkPad x260
— Debian Stretch (stable) с XFCE 4.12
— Браузер Pale Moon как единственный адекватный из тех, что живые
— Gajim с Telegram-транспортом
— Информацию о темах и пр. можно увидеть на screenfetch

Даже не знаю, что ещё срача ради сказать.
Дополните, пожалуйста ☺

>>> Просмотр (1920x1080, 758 Kb)

 

annerleen ()

tg4xmpp 0.2 — Jabber-транспорт в сеть Telegram

Новости — Интернет
Группа Интернет

Вышла вторая (0.2) версия транспорта из Jabber в сеть Telegram.

Что это?

— Данный транспорт позволяет вам общаться с пользователями Telegram из сети Jabber. Необходим существующий Telegram аккаунт.
Jabber-транспорты

Зачем это нужно?

— Например, если хотите использовать Telegram на любом устройстве, где нет официального клиента (например, платформа Symbian).

Что умеет транспорт?

­— Авторизовываться, в том числе используя двухфакторную аутентификацию
— Отправлять и принимать сообщения из/в Telegram
— Работать с группами, супергруппами и каналами
— Синхронизировать ростер и статусы
— Загружать медиа из сети Telegram

Что не умеет транспорт?

— Инициировать диалог (т.е. диалог уже должен существовать, либо вам должны написать первому)
— Изменять настройки аккаунта
— Голосовые и видеозвонки
— Секретные чаты

Список изменений с версии 0.1

— Теперь используем Telethon версии 0.15.5
— Повышена стабильность работы
­— Исправлен баг с бесконечными запросами авторизации
— Реализован импорт контакт-листа из Telegram (XEP-0144)
— Когда неизвестный контакт пишет нам, автоматически добавляем его в ростер
— Исправлена обработка статусов
— Исправлен спам статусами (по-умолчанию статусы обновляются не чаще, чем раз в 60 секунд)
— Теперь при перезапуске транспорта сессии поднимаются автоматически
— Полная поддержка «сервисных уведомлений» (кто-то вошёл в группу, вышел из неё и пр.)

Где скачать и как установить?

— Скачать актуальную версию можно здесь: dev.narayana.im/tg4xpmp (логин/пароль: любые)
— Инструкции по установке на свой Jabber-сервер можно найти в файле INSTALL.

Поддержать авторов проекта

Bitcoin: 1KkZPAm44fL6JfvDmvTykD8vV5MTvgeRns

>>> SVN-репозиторий (логин/пароль: любые)

 ,

annerleen ()

XMPP научился в синхронизацию между девайсами?

Форум — Talks

Я тут НЕОЖИДАННО обнаружил, что история между девайсами — ПК (Gajim) и смартфоном (Conversations) синхронизируется.

Сама. Из коробки.

Тут, вроде бы, Jabber говном поливали за то, что он-де этого не умеет, а вот эти ваши VK/Telegram'ы — умеют.


Единственное «но» — не синхронизируются чаты с OTR-шифрованием.
Ну и не надо.

 

annerleen ()

Шифрованный раздел после hard reboot

Форум — Admin

Дратути.

После внезапного ребута сервера куда-то делся шифрованный раздел.
Он был в RAID1 дисков sda3 и sdb3.

В гугле ситуации «luks after hard reboot» ещё не было, поэтому пишу вам, может, кто знает.

edx-ng ~ # cryptsetup luksDump /dev/md3
Device /dev/md3 is not a valid LUKS device.


/dev/md3:
        Version : 0.90
  Creation Time : Tue Nov  1 12:10:46 2016
     Raid Level : raid1
     Array Size : 1932506048 (1842.98 GiB 1978.89 GB)
  Used Dev Size : 1932506048 (1842.98 GiB 1978.89 GB)
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 3
    Persistence : Superblock is persistent

  Intent Bitmap : Internal

    Update Time : Mon Apr 23 08:54:45 2018
          State : active 
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

           UUID : 87979b7a:0bb9b950:a4d2adc2:26fd5302
         Events : 0.44028

    Number   Major   Minor   RaidDevice State
       0       8        3        0      active sync   /dev/sda3
       1       8       19        1      active sync   /dev/sdb3


# hexdump -C -n 2048 /dev/md3

http://paste.org.ru/?tvwz0j


______________________________

По отдельности, без рейда, диски, соответственно, тоже не монтируются.
Что это может быть и есть ли варианты оживить его?
Может, я что-то не так понимаю? Как мог raid1 с luks рассыпаться от хард ребута?

 ,

annerleen ()

Пускать клиентов роутера через другой default route

Форум — Admin

Дано:

- Роутер —

  world0: Интерфейс для связи с внешним миром
  {eth0,wlan0,ath0} объединены в br0: Локальная сеть
  tun0: OpenVPN-клиент
  

Нужно, чтобы сам роутер ходил в интернет через world0, а клиенты, которые подключены к нему — через VPN (tun0).

Как такое сделать?
Как гуглить такое — без понятия:)

 

annerleen ()

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