arilou: (Default)
Потребовался qmake на удалённом серваке, где иксы мне нафиг не упёрлись.
Поставил пакет qt5-qmake. Он притащил с собой ещё один маленький пакетик. Но при попытке запустить qmake получаю:
qmake: could not find a Qt installation of ''
Поиски ответа пока не дали ничего лучшего, чем ставить qt5-default, который притащит с собой ещё 131 пакет, многие из которых - x11*, libx11*, libx*...
А можно ли как-нибудь без иксов?

Система - Debian 8.3
arilou: (Default)
А кто что скажет про такой способ недопущения запуска второго экземпляра процесса? (При условии, что у меня нет потребности извне узнавать PID уже запущенного экземпляра.)
import socket
import sys
import time

def get_lock(process_name):
    global lock_socket   # Without this our lock gets garbage collected
    lock_socket = socket.socket(socket.AF_UNIX, socket.SOCK_DGRAM)
    try:
        lock_socket.bind('\0' + process_name)
        print 'I got the lock'
    except socket.error:
        print 'lock exists'
        sys.exit()

get_lock('running_test')
while True:
    time.sleep(3)

О том, что это Linux specific, я уже прочитал.
arilou: (Default)
Какой из способов проверки существования процесса лучше и чем:
1) проверить существовании каталога /proc/PID (где вмето PID - значение pid процесса)
2) послать ему сигнал 0 и проверить успешность

Что более переносимо? (вопрос не про винду, конечно, там /proc нет)
Какие ещё плюсы или минусы?
arilou: (Default)
Вот такая задачка:
Есть некий скрипт, писанный на питоне, крутится более-менее постоянно (под screen).
Обощённо цикл работы состоит из проверки, не пришли ли "данные" для обработки, и если пришли -- происходит довольно долгая (десятки минут) обработка.
Захотелось его перезапускать для обновления, не ловя момент окончания обработки.

Простейшие варианты:

1) Функции семейства os.exec* -- успешно подменят старый процесс новым, всё замечательно, но если новый почему-либо не стартует, то это надо заметить, потом исправить -- только тогда работа продолжится.

2) Вызвать новый скрипт через subprocess.Popen, убедиться, что он нормально взлетел, после чего завершить старый. Исправляет недостаток первого пункта, но новый скрипт, используя ту же "консоль" (те же stdin/stdiut, stderr), при этом выпадает из jobcontrol'а, т.е. крутится в фоне по отношению к шеллу, из которого был запущен старый скрипт, а из старого мы попадаем обратно в шелл. И при том отт фоновый новый скрипт не может подхватить команда fg.

Есть ли способ избавиться от недостатков обоих методов, не выделяе контроль за перезапуском в отдельный процесс?
Кроссплатформенности от данного механизма (пока?) не требуется.

(На крайняк мне пока годится первый вариант, поскольку перезапуски пока что как правило контролируются вручную, да и короткий даунтайм в общем-то не страшен. Но всё же интересно, может, есть простое решение?)
arilou: (Work)
Любопытно, а не планируется ли у нас каких parties по поводу Debian Birthday в ближайший четверг?
Ну или не хочет ли кто собраться по этому поводу у меня? (Правда,с тренировки я приеду часов в 10 вечера.)
arilou: (eclipse)
via [livejournal.com profile] vitus_wagner (отсюда)

http://www.linux.org.ru/news/opensource/6053095

Некий добрый человек сделал сервис (естетсвенно, web-based) и программу-клиент к нему, позволяющюю вместо длинных и непонятных непосвященному командных строк, вводить короткие, непонятные никому.

Разные способы применения придумайте сами. ;)
arilou: (Default)
[livejournal.com profile] cmike
Обычно "Not a bug" означает "yeah, there's a whole bunch of bugs here but it's ok for us"
(подробности конкретных багов xfce4 по ссылке врядли интересны большинству читателей, цитирую-то ради формулировки ну и в качестве примера, насколько запущено всё бывает при таких словах)
arilou: (Work)
Сколько буферов
Для копирования
В иксах таится?
Думал раньше, только два -
Теперь нашёлся третий.
arilou: (Meditate)
Вот нафига (только в убунте? или это общее свойство gnome?) всякие универсальногоназначения десктопные средства зависят от этой фигни? Это что же, теперь там evolution заинтегрировн похлеще, чем в виндах Explorer и Outlook?
arilou: (Work)
(даже не просто за пользователя, а за разработчка!)

Вот интересно, это только в убунте так дивно устроены зависимости, что для apt-get source мне надо dpkg-dev, а он тянет за собой:
build-essential g++ g++-4.2 libc6-dev libstdc++6-4.2-dev libtimedate-perl linux-libc-dev patch
?
(Хотя вроде как в Debian lenny список зависимостей такой же. Но вот проследить все уровни зависимостей я уже поленился.)

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

Profile

arilou: (Default)
Danil "Eleneldil G. Arilou" Lavrentyuk

February 2017

S M T W T F S
   1 234
567891011
12131415161718
19202122232425
262728    

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 28th, 2017 04:46 pm
Powered by Dreamwidth Studios