LINUX.ORG.RU

Сообщения router

 

отключение просмотрщика pdf в firefox

После обновления firefox обнаглел и пытается подсунуть свой дырявый просмотрщик дефолтным вариантом, хотя всегда выбираю внешний

Отключил его вообще так:

pdfjs.disabled = true
browser.helperApps.showOpenOptionForPdfJS = False

Может кому пригодится

 ,

router
()

powercli: как работает магия доменной аутентификации?

Доброго времени суток

Некоторое время назад ms допилили powershell, и в linux теперь работает полноценная, а не кастрированная версия. vmware powercli сейчас тоже полноценно работает из-под linux

Есть желание сделать кроссплатформенными свои скрипты для работы с vsphere. Одна проблема: в винде работает доменная аутентификацию (не нужно вводить credentials), в linux нет. Можно сделать workaround с загрузкой credentials из файла. Но не хотелось бы терять доменную аутентификацию при работе в винде

Есть идеи?

 powercli, ,

router
()

python: инстанс в модуле - это вообще законно?

Доброго времени суток

Начал изучать sqlalchemy

В официальной документации:

from sqlalchemy.ext.declarative import declarative_base

Base = declarative_base()

Our application will usually have just one instance of this base in a commonly imported module

И вот тут я завис. Похоже, у меня пробел в академических знаниях о питоне. До сих пор я выносил в модули только классы и функции и понятия не имею что будет, когда в модуле окажется инстанс. Это вообще работает? Т.е. глупый вопрос, если б не работало, в документации бы этого не было

Но как, Холмс? Т.е. я в модулях и в __main__ могу импортировать модуль с инстансом, и это будет один и тот же инстанс, как будто я создал его в __main__ ? И в 2.7, и в 3.x?

 

router
()

python sqlalchemy: можно ли отключить autocommit для expression language?

Доброго времени суток

Сабж. Насколько я понял из документации, работа с sqlalchemy возможна в 2 вариантах: Expression Language и ORM

В документации по ORM части есть информация, как отключить autocommit. В документации по Expression Language ничего подобного не нашёл :\

Пока я не уверен, что мне стоит использовать. Возможно, придётся перейти на ORM. Но хотелось бы понять, можно ли убрать autocommit в Expression Language, или единственная возможность - собирать данные в своём коде и выполнять execute с массивом

 ,

router
()

mediawiki + postgres: не индексируются новые страницы

Доброго времени суток

Сабж. Есть mediawiki под свои рабочие заметки. В последнее время иногда замечал, что поиск не находит информацию, которую я вроде бы добавлял. Сначала думал, что забыл добавить. Потом оказалось, поиск по заголовкам работает стабильно. А вот поиск по содержимому не видит новую информацию (примерно за последний год). Т.е. отвалилась индексация содержимого. Никаких сторонних движков для поиска не ставил, речь про штатную возможность mediawiki.

К сожалению, в качестве БД - postgres, поэтому штатные скрипты в пролёте: https://www.mediawiki.org/wiki/Manual:Searchindex_table

Похоже, что перестали отрабатывать какие-то хуки при сохранении страницы

пробовал

  • updateSearchIndex.php, rebuildtextindex.php - как и ожидалось, не работают с postgresql
  • rebuildrecentchanges.php - ничего не изменилось
  • в логах апача и mediawiki-jobrunner ошибок не нашёл
  • если перенести дамп на другую ВМ, новые страницы начинают индексироваться. но мне и старые тоже нужны :)
  • включил debug log. сыпятся «DBPerformace» предупреждения, но это вроде не критично: [DBPerformance] Expectation (writes <= 0) by MediaWiki::restInPeace not met (actual: 1):

update. это был баг mediawiki 66650. Дело в переименовании страниц. Поиск по тексту не работает в переименованных страницах. workaround - применить патч для 66650

 

router
()

Оффтоп. В чем бы считать калории?

Доброго времени суток

Сабж. Под линукс или ведроид. Да хоть бы и под оффтопик :/

 ,

router
()

git: разошлись 2 копии репозитория. возможно ли вновь их объединить?

Доброго времени суток

История проблемы:

  1. У меня есть 2 копии git репозитория с моими скриптами: одна на сервере в локальной сети (site), 2я на удалённой площадке (origin)
  2. Чаще я коммитил в origin, коммиты в site иногда опаздывали на неделю
  3. Так получилось, что удалённый репозиторий origin и мой комп одновременно были недоступны длительное время (не спрашивайте..)
  4. На новом компе клонировал устаревший репозиторий site и сделал несколько изменений
  5. Снова доступен удалённый репозиторий origin

В результате в репозиториях site и origin с какого-то коммита ветки master различаются. Я бы хотел снова сделать их копиями. Понятно, что сведение кода к одной версии делать мне, не проблема

Но я не знаю

  • как найти, с какого коммита ветки master в репозиториях стали различаться?
  • как в одном из репозиториев УДАЛИТЬ всю историю, начиная с точки расхождения? Работаю с репозиториями я один, поэтому моральный аспект такого изменения можно игнорировать

 

router
()

Есть у кого сяоми? Нужен список пакетов

Доброго времени суток

Сбросьте пожалуйста список пакетов с xiaomi

adb shell pm list packages

хватит и

adb shell pm list packages | grep -i mi

https://developer.android.com/studio/command-line/adb#pm

Довыпендривался с отключением лишнего :\ И, что хуже, не успел записать, что именно отключил. Загружается, но жрёт cpu как не в себя.

 ,

router
()

Природа настолько очистилась, что в чатег вернулись живые люди

Доброго времени суток

Сабж. И не просто люди, а монстрик, даня и маусёнок. Требуют собрать других старперов ;)

sudo cast @JB, @geek, @FiXer, @exception13, @Zulu

ну и остальные подтягивайтесь, linux-talks на jabber ru

З.Ы. кто-нибудь знает, как найти зулу и мыш?

З.З.Ы. хинт. грегорж бот, его просить бесполезно

 , , ,

router
()

какой торрент-клиент может завернуть в прокси только общение с трекером?

Доброго времени суток

Сабж. В debian 10 libtorrent уже не может - либо всё, либо ничего, а тор столько не вытянет

Соответственно, нужен другой клиент, который не использует libtorrent ( rtorrent и deluge отпадают ), но умеет сабж

Что посоветует коллективный разум?

 

router
()

возможно ли в tkabber запретить всплывающие окна?

Доброго времени суток

Ссылки от некоторых собеседников в чате почему-то вызывают всплывающее окно: https://imgur.com/a/TJlvimP

Сабж?

В коде нашёл вывод окна, если у сообщения выставлен какой-то приоритет

proc chat::process_message_fallback \
     {xlib from id type is_subject subject body err thread priority x} {

    # ...

    chat::add_message $chatid $from $type $body $x
    if {[llength $x] > 0} {
        message::show_dialog \
                $xlib $from $id $type $subject $body $thread $priority $x 0
    }

но не знаю, что делать с этой информацией

 

router
()

python extension module: как правильно преобразовать стуктуру Си в класс Python'а ?

Доброго времени суток

Есть сторонняя сишная библиотека, которую кровь из носу нужно использовать из python

К сожалению, сразу уровень «хардкор»:

  • функции получения информации хотят на входе указатель на структуру. Т.е. выделить память нужного размера требуется до вызова
  • поля структуры разные и интересные, включая unsigned long long

есть полный магии swig, который может автоматом сгенерить wrapper и модуль. с некоторыми недостатками

  • поля типа unsigned long long возвращает в питон в виде <Swig Object of type 'u_longlong_t *' at 0xa00000000127990>, который ни во что не удаётся перевести ( int(result.field), ctypes.c_ulonglong(result.field) при нескольких вызовах подряд дают разный результат ). Ок, правлю созданный сишный wrapper, чтобы он правильно приводил тип и возвращал resultobj = SWIG_From_int((unsigned long long)(result));
  • функции swig обернул как есть, т.е. в function1(pointer,size) всё ещё нужно указывать размер области памяти. причём размер сишной структуры я из python не знаю как получить. ок, правлю созданный wrapper, чтобы он самостоятельно подставлял правильный size, игнорируя переданный параметр

этим в принципе можно пользоваться после ручных правок

Но чисто для общего развития, а можно ли вручную создать такой extension без использования swig? Т.е. чтобы на стороне питона операции шли исключительно с объектами? Когда память под структуру инициализируется в конструкторе питоньего объекта, а фукнции можно передать объект, и она корректно возьмёт из его внутренностей структуру?

чтение официальной доки идёт через кровь и слёзы (дано забыл си), но пока я в упор не вижу там похожих примеров, всё на уровне helloworld

 ,

router
()

возможно ли в elasticsearch отключить весь xpack?

Доброго времени суток

Сабж. Пока нагуглил только отключение отдельных плагинов, а мне нужно полностью выключить xpack. Чтобы нельзя было придраться к лицензированию

 ,

router
()

aix toolbox 4 vs perzl

В 7.1 TL5 ( и в 7.2 ) прилетел aix toolbox 4

# lslpp -lc | grep -i rpm.rte
/usr/lib/objrepos:rpm.rte:4.13.0.3::COMMITTED:I:RPM Package Manager:
/etc/objrepos:rpm.rte:4.13.0.3::COMMITTED:I:RPM Package Manager

и тут внезапно оказалось, что репозиторий perzl с ним немного кофликтует. Многие пакеты из репозитория зависят от db4, а 4-я версия toolbox тащит свою библиотеку. Причём от неё зависит rpm

TL3:

# lslpp -lc | grep -i rpm
/usr/lib/objrepos:rpm.rte:3.0.5.52::COMMITTED:I:RPM Package Manager:
/etc/objrepos:rpm.rte:3.0.5.52::COMMITTED:I:RPM Package Manager:
# lslpp -f rpm.rte | grep -i db
#

TL5:

# lslpp -f rpm.rte | grep -Ei '(db4|db.4)'
                        /usr/opt/freeware/lib/libdb.a -> /usr/opt/freeware/lib/libdb-4.8.a
                        /usr/opt/freeware/lib/libdb.so -> /usr/opt/freeware/lib/libdb-4.8.so
                        /usr/opt/freeware/lib/libdb-4.8.so
                        /usr/opt/freeware/lib/libdb-4.so -> /usr/opt/freeware/lib/libdb-4.8.so
                        /usr/opt/freeware/lib/libdb-4.a -> /usr/opt/freeware/lib/libdb-4.8.a
                        /usr/opt/freeware/lib/libdb-4.8.a
                        /usr/opt/freeware/lib/libdb4.a -> /usr/opt/freeware/lib/libdb-4.8.a

Т.е. придётся либо сносить все штатные rpm и ставить из perzl ( и повторять при каждом обновлении rpm.rte ), либо пересобирать все нужные пакеты из SRPM под TL5 вручную

Не обновляться до TL5 вообще не вариант, очень нужна новая версия openssh.base.server для работы с ansible

Как вы решаете эту проблему?

 

router
()

python: как сделать автоматический импорт файлов проекта в интерпретаторе?

Доброго времени суток

Смотрю лекции и наткнулся на момент ( 01:08:17 ), когда новый файл автоматически подгружается в интерпретатор

RESTART: /path/to/file.py

Тоже так хочу. Как это можно сделать? Это есть в самом питоне, или сделано в каком-то IDE ?

Ну т.е. понятно, что unittest’ы рулят, но иногда нужно руками пощупать что получилось

 

router
()

возможно ли использовать sqlalchemy для read only доступа к чужой БД?

Доброго времени суток

Сабж. Документация по sqlalchemy рассказывает, как создать собственную БД и работать с ней как хранилищем объектов

А возможно ли подключиться к уже существующей БД и читать из неё объекты, не внося никаких изменений? Продублировать существующую структуру таблиц в коде - никаких проблем, главное ничего не писать в базу

 ,

router
()

gitolite: воможно ли выдать права OWNERS через конфиг?

Доброго времени суток

Есть репозиторий под gitolite. время от времени возникает задача передать репозиторий другому владельцу

приходится временно подменять ключ владельца и выдавать доступ так

ssh gitolite@server perms u/fired/repo1 + OWNERS successor

но это немного черезж. возможно ли выдать права OWNERS через конфиг ( conf/gitolite.conf ) ?

З.Ы. да, я догадываюсь что хорошим выходом был бы переход на gitlab. но не всё сразу

 

router
()

возможно ли в systemd ( journald ) отключить лимит логов?

Доброго времени суток

Сабж. Гугл предлагает увеличить, но мне нужно вообще исключить потерю логов... rhel7

journal: Suppressed 235 messages from /system.slice/postfix.service

 , ,

router
()

за что заблокировали mironov_ivan?

Доброго времени суток

Сабж: mironov_ivan

час назад ещё общались в техразделе, и внезапно «Блокирован 24.09.19 10:22:17, модератором anonymous по причине: удаление аккаунта»

wtf? он вроде адекватный

 ,

router
()

предположительно, сегодня ( 2019.09.11 ) отвалилась индексация сообщений

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

 

router
()

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