LINUX.ORG.RU

Сообщения rmu

 

Написал свой просмотрщик изображений на python

Форум — Desktop

Всем привет!

С месяц назад обращался на форум - искал смотрелку картинок с инстструментом «лупа», похожим на подобный в программе FastStone. Товарищи предлагали разные варианты, но того, что мне нужно не было. Давно такую программку искал, перепробовал целую кучу хороших поделок и не очень - подобной особенности не обнаружил. Решил, что надо написать свою.

mopyqtiv - это приспособленный под управление мышкой просмотрщик изображений. Написан на python, с использованием библиотек PyQt пятой серии и PIL. Из особенностей:

  • управление масштабом
  • картинки листаются колёсиком мыши (довольно быстро, без эффектов)
  • вращение картинки (только для просмотра)
  • поворот изображений по 90 градусов влево/вправо (изменения тут же сохраняются на диске)
  • привязка папок на клавиши латинского алфавита для быстрой ручной сортировки
  • миниатюры справа: создаются со впечатляющей скоростью на многокристальных процессорах
  • изменение размеров окна приводит к пропорциональному изменению размеров всех элементов
  • отправка файлов в коризину
  • настройка через правку переменных в заголовке скрипта
  • программа на русском и с русским руководством
  • для арчика есть PKGBUILD

Из того, что хочу добавить/изменить (не сегодня/завтра):

  • отвалилось управление стрелками (было, не знаю куда делось: может быть только у меня)
  • диалог переименовывания файла
  • добавление на мышку управления: масштаб - правая+колёсико, вращение - правая+левая+колёсико
  • исправление ошибок, если кто заметит и сообщит

В общем делал для себя. Кто хочет - пользуйтесь и помогайте добрым советом.

»»» Исходники (Github)

 , , ,

rmu
()

Ускорить запуск pyqt программки через multiprocessing

Форум — Development

Всем привет!

Люди, пожалуйста, помогите разобраться с multiprocessing в pyqt. Хочу изменить картинку на QLabel через дочерний процесс. Такой код:

#!/usr/bin/python3
# -*- coding: utf-8 -*-

import sys
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from multiprocessing import Process, Pool


class Test(QWidget):
    def __init__(self):
        super().__init__()
        self.layout = QVBoxLayout()
        self.setLayout(self.layout)

        self.label = QLabel()
        self.layout.addWidget(self.label)

        self.pixmap = QPixmap()


def set_pixmap(classname=None):
    classname.pixmap.load('test.jpg')
    classname.label.setPixmap(classname.pixmap)

if __name__ == '__main__':
    app = QApplication(sys.argv)
    test = Test()
    test.show()

    proc = Process(target=set_pixmap, kwargs={'classname': test})
    proc.start()
    proc.join()

    # pool = Pool()
    # pool.map(set_pixmap, (test,))
    # pool.close()
    # pool.join()

    sys.exit(app.exec_())

В таком виде картинка не появляется. Если через pool запускать, то валятся ошибки:

Process ForkPoolWorker-1:
Traceback (most recent call last):
  File "/usr/lib/python3.5/multiprocessing/process.py", line 254, in _bootstrap
    self.run()
  File "/usr/lib/python3.5/multiprocessing/process.py", line 93, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/lib/python3.5/multiprocessing/pool.py", line 108, in worker
    task = get()
  File "/usr/lib/python3.5/multiprocessing/queues.py", line 345, in get
    return ForkingPickler.loads(res)
RuntimeError: super-class __init__() of type Test was never called

Читал, что виджеты в pyqt должны быть созданы в главном потоке: у меня так и есть, вроде, у виджета только свойство меняю. Можно ли дочерним процессом установить QPixmap?

 , ,

rmu
()

Как на питончике кошерно переместить файл в корзину?

Форум — Development

Привет!

Если отправлять файлик по пути

os.path.expanduser('~') + '/.local/share/Trash/files'
то их не видно через дельфин. Есть ли универсальный способ, чтоб ещё и на разных DE работал?

 ,

rmu
()

Ищу смотрелку картинок с одной особенностью

Форум — Desktop

Привет всем,

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

 ,

rmu
()

KDE 5 + hibernate

Форум — Desktop

С переменным успехом пытаюсь надрессировать свой переносной компьютер засыпать без swap в файл с помощью tuxonice. Решение никак не приходит в голову. Если напрямую ввести sudo hibernate - компьютер спит и просыпается: вроде хорошо, но мне хочется модную кнопочку KDE, как есть для выключения, ждущего режима и т.д. Upower с 0.9.18 версии передал управление спящим режимом в systemd. Тот, как я понял, без swap засыпать не даёт и выкидывает:

Failed to hibernate system via logind: Sleep verb not supported
О проблеме пишут, решения вроде пока по ней нет. Ладно с этим. Ставлю upower 0.9.17 + патч:
up-daemon.c
 			g_debug ("not enough swap to hibernate");
-			return FALSE;
+			// Lamarque 07/10/2012: tuxonice does not need swap :-P
+			//return FALSE;
+			return TRUE;
чтобы без swap работал, а он требует pm-utils, который конфликтует с tlp, а отказаться от последнего не представляется возможным, всё таки любовь, она такая.

И вот палка о двух концах. Убираю pm-utils из зависимостей upower - пакет не может установиться, потому что должен что-то изменять в конфигах pm-utils, которых нет.

Посоветуйте что-нибудь.

 ,

rmu
()

Какое ядро Вы используете на домашнем компьютере/ноутбуке?

Голосования — Голосования
  1. Стандартное от дистрибутива 1173 (80%)

    ********************************************************************************************************************************************************************************************************************************************************************************************************************************

  2. Подогнанное точно под свою машину с индивидуальным набором патчей 74 (5%)

    ********************

  3. Не Linux (Hurd, BSD, offtopic) 72 (5%)

    *******************

  4. С готовым набором патчей pf, ck, zen, lqx и т.д. 58 (4%)

    ***************

  5. Ванильное без сторонних патчей 37 (3%)

    **********

  6. Из гита Линуса Торвальдса без сторонних патчей 18 (1%)

    ****

  7. Что-то другое (напишу в комментариях) 16 (1%)

    ****

  8. Использую несколько ядер под разные задачи 12 (1%)

    ***

  9. Одно из libre сборок 8 (1%)

    **

Всего голосов: 1468

 

rmu
()

Помогите с отладкой DSDT таблицы

Форум — Desktop

Всем привет.

Хочу отремонтировать DSDT таблицы у своего ноутбука. Но никак не могу найти решения двух вопросов:

  1. Как вести отладку
  2. Нужна русская литература

1)

Писать из ACPI в dmesg довольно просто, но не понятно, как получить информацию об ошибках на подобие traceback. Например здесь:

ACPI Exception: AE_NOT_FOUND, While evaluating Sleep State [\_S1_] (20150410/hwxface-580)
Ошибка есть, но как понять почему не найден? Где искал?

Увеличение уровня логов ACPI выводит тонны сообщений, вида:

[   23.213726]   exutils-0136 ex_exit_interpreter   : ----Exit-
[   23.213732]    nseval-0324 ns_evaluate           : ----Exit- AE_OK
[   23.213735]  utobject-0461 ut_get_simple_object_s: ----Entry ffff880000083b88
[   23.213739]  utobject-0564 ut_get_simple_object_s: ----Exit- AE_OK
[   23.213742]    utcopy-0398 ut_copy_iobject_to_eob: ----Entry
[   23.213745]    utcopy-0118 ut_copy_isimple_to_esi: ----Entry
но не понятно где и в каких блоках/методах это всё происходит.

Давно с переменным успехом борюсь с ASPM, уже не на первом ноуте.

\_SB_.PCI0:_OSC invalid UUID
Выводил значения входящих аргументов метода _OSC, возвращаемые значения - появилось ещё больше вопросов: как работают эти методы, почему вызываются только один раз, когда PCIe устройств целая куча: на одних ASPM автоматически включается, на других нет, а сообщения от метода приходят только один раз. При этом спецификация говорит, что «The OS is permitted to evaluate _OSC an arbitrary number of times».

Хочу исправить другие косяки биосаписателей, например:

ACPI Warning: SystemIO range 0x0000000000002000-0x000000000000201F conflicts with OpRegion 0x0000000000002000-0x000000000000200F (\_SB_.PCI0.SBUS.SMBI) (20150410/utaddress-254)
Для всего этого требуется что-то вроде traceback. Или есть хорошие решения для отладки?

2)

ACPI спецификация составлена хорошо, на многие вопросы нашёл ответы, но тем не менее хочется какого-нибудь русскоязычного руководства. В русских интернетах почти все найденые мною блоги и форумы сводятся к решению ошибок компиляции DSDT таблиц для установки проприетарщины, которую я не хочу здесь упоминать. Ничего толкового.

Прошу русское сообщество линуксоводов помочь в решении этих вопросов. Спасибо всем, кто может поделиться знаниями или дать хорошие ссылки.

 , ,

rmu
()

Plasma 5.6.1 и задачи из разных комнат

Форум — Desktop

Привет,

хочу спросить кедоводов: у меня одного, при выставленных галочках в настройках панели задач:

  • Показывать задачи только с текущего экрана
  • Показывать задачи только с текущего рабочего стола
  • Показывать задачи только из текущей комнаты

всё равно остаются все задачи и окна открытыми при смене комнаты? Как если бы смена комнат нужна была для смены обоев. На 4 кедах всё работало, как и было задумано.

Прошло несколько обновлений плазмы, надеялся, что исправят. Ничего подобного. Начал думать, что проблема только у меня.

Что это: баг или фича?

 ,

rmu
()

Виртуальная надстройка над файловой системой для сборки пакетов

Форум — Desktop

Всем привет,
не знаю как кратко сформулировать идею, может поможете. Нередко для сборки пакетов (у меня arch) требуется установить development или подобные им пакеты, которые в остальное время не нужны. Интересует, есть ли какая-нибудь виртуальная надстройка над файловой системой, работающая по принципу:

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

Существует ли что-нибудь подобное? Понятна ли идея?

 ,

rmu
()

yakuake: как передать путь до папки при старте?

Форум — Desktop

Привет,
не могу найти, можно ли передать yakuake путь до папки? Вообще он какие-нибудь параметры принимает? Ни мана, ни справки.

 

rmu
()

Куда делся multilib.abs.tar.gz ?

Форум — Desktop

Просмотрел несколько зеркал - нет multilib.abs.tar.gz для abs. Куда он делся? Например, здесь нет: http://archlinux.polymorf.fr/multilib/os/x86_64/multilib.abs.tar.gz

 , ,

rmu
()

Два простых вопроса к профи по почтовым сертификатам

Форум — Admin

Привет, уважаемые

  1. Настроил на впс-ке веб и почтовый сервера. Везде работают доверенные сертификаты, а для OpenDKIM самогенерированный. В исходящих письмах домен нормально подтверждается, но у меня есть доверенный .pfx сертификат, которых хотел бы пристроить для этой цели заместо самодельного. Прошу подсказать как его сконвертировать в подходящий для DKIM сертификат с публичной частью.
  2. почту настроил на домен вида example.com, а почти везде пишут, что надо делать вида mail.example.com. Нужно ли перенастроить, если у меня только один сервер с одним ip адресом?

 ,

rmu
()

perpetuum mobile

Форум — Talks

Если на яндексопочте настроить пересылку писем на гуглопочту, а на гугле сделать тоже самое, только наоборот, и после этого с одного из ящиков написать на другой - запустится самый настоящий perpetuum mobile! Или нет? Если нет, то какой из ящиков сдастся первым, никто не пробовал?

 

rmu
()

Опасная консоль: webmail horde несёт угрозу для сервера

Форум — Admin

Всем привет,

поднял на debian jessie почтовый сервер с вебмордой php-horde. Апач запускаю с плагином apache2-mpm-itk от специального для этих целей пользователя webuser, у которого настроил шелл /bin/false. В хорде есть возможность обращаться к консоли, так вот: даже с шелом /bin/false она продолжает исправно работать.

Спрашиваю консоль: whoami -> webuser. Вроде всё правильно, но кроме того можно посмотреть много чего интересного в /etc и т.д. Вопрос: каким местом он делает вызовы, если шелл /bin/false?

Ну или как защитить apache от доступа к файловой системе из horde без chroot. Благодарю за любую помощь.

 , ,

rmu
()

REDIRECT --to-недоступный-снаружи-port

Форум — Admin

Всем привет.

В огонь-стене поставил перенаправление с 80 на 4000 порт. Политика по умолчанию -P INPUT DROP. Открыл оба порта (так --state NEW --dport 4000 -j ACCEPT). Хочу, чтобы 4000-й был недоступен извне ни для коннекта, ни для сканирования. Возможно?

 

rmu
()

utf символ linux

Форум — Talks

В таблице юникода не нашел ничего похожего на тукса. Есть пингвин:

🐧 🐧 F0 9F 90 A7

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

 ,

rmu
()

Не хватает прав для запуска http сервера

Форум — Admin

Привет, lor

Нужно заставить работать временную http файлопомойку не от рута. Для этих целей создал спец. пользователя, домашней папкой установил корень сайта. Сервер запускаю так:

python3 -m http.server 80
В ответ даёт ошибку:
  File "/usr/lib/python3.4/socketserver.py", line 440, in server_bind
    self.socket.bind(self.server_address)
PermissionError: [Errno 13] Permission denied
Добавил в группу www-data - не помогает. В какую группу добавить пользователя или что с ним сделать, чтобы он смог сокет открыть? От рута всё работает, но не хочется запускать с такими привилегиями, боюсь.

Debian 8.0

 ,

rmu
()

Как настроить ns1 и т. д. при регистрации VPS?

Форум — Admin

Добрый вечер.

Облазил кучу форумов, читал статьи по работе dns, но так и не могу разобраться. Зарегистрировал домен domain.ru у регистратора 2domains.ru, среди его настроек есть две NS записи ns1.reg.ru. и ns2.reg.ru. При регистрации VPS (у другой компании) требуют указать Hostname, на одном из форумов советуют так: myname.domain.ru А в NS1 и NS2 нужно записать ns1.reg.ru. и ns2.reg.ru. соответственно (с точками). Это верно?

 , ,

rmu
()

Помогите подключиться по ssh к vps из-за институтского NAT

Форум — Admin

Всем привет. Арендовал VPS, там ssh слушает нестандартный 5-значный порт. Интернет получаю по вай-фаю и, на сколько я знаю, до выхода в мир у меня как минимум 3 NAT-а, если не больше. Если просто посмотреть на ssh порт сервера, то получается такой ответ:

$nmap -sV x.x.x.x -p xxxxx
Starting Nmap 6.46 ( http://nmap.org ) at 2016-01-28 22:28 EET
Nmap scan report for x.x.x.x
Host is up (0.012s latency).
PORT      STATE    SERVICE VERSION
xxxxx/tcp filtered unknown
Подключиться не получается. Если подключиться к vpn (vpngate.net), то порт выглядит так:
$nmap -sV x.x.x.x -p xxxxx
Starting Nmap 6.46 ( http://nmap.org ) at 2016-01-28 23:29 EET
Nmap scan report for x.x.x.x
Host is up (0.50s latency).
PORT      STATE SERVICE VERSION
xxxxx/tcp open  ssh     OpenSSH 6.0p1 Debian 4+deb7u2 (protocol 2.0)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
и соответственно к серверу подключиться можно. На моём гейтвее с портами такая ситуация:
Host is up (0.038s latency).
Not shown: 984 filtered ports
PORT      STATE  SERVICE        VERSION
7/tcp     closed echo
21/tcp    closed ftp
22/tcp    open   ssh            OpenSSH 6.6 (protocol 2.0)
23/tcp    closed telnet
53/tcp    closed domain
79/tcp    closed finger
80/tcp    open   http           Embedthis-Appweb/3.2.3
113/tcp   closed ident
179/tcp   closed bgp
443/tcp   open   ssl/https      Embedthis-Appweb/3.2.3
513/tcp   closed login
646/tcp   closed ldp
3221/tcp  closed xnm-clear-text
3784/tcp  closed bfd-control
5060/tcp  closed sip
33899/tcp closed unknown
С впн-ом общение с сервером идёт с большими задержками, и часто просто встаёт. Можно ли решить проблему малой кровью?

 , ,

rmu
()

Помогите выбрать VPS сервер. Что значит «1 x NAT IPv4»?

Форум — Admin

Добрый вечер.

Выбираю VPS сервер для учебных целей. У меня на выбор есть два варианта:

  • один имеет 1 x NAT IPv4 + подсеть ipv6
  • другой 20 NAT IPv4 Ports + подсеть ipv6

Есть идея поднять там openvpn сервер, чтобы соединить два или чуть более компов, не имеющих белых айпи адресов, в одну сеть. Что такое NAT понимаю, а что из двух вариантов лучше - не знаю. Тестового периода нет, в остальных параметрах почти то же самое.

 ,

rmu
()

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