From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on sa.int.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-3.6 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_LOW, SPF_PASS autolearn=ham version=3.2.5 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:subject:references:date:in-reply-to:message-id :user-agent:mime-version:content-type:content-transfer-encoding; bh=qHmRl1D0j2R1XwJLKDi7aC27KcVdK6He3TD9xUJO1Fg=; b=NU7EjWLImZUGZntNe2sJPdR3KAeyBjuL1nilLS20si12BTKzJbLS0F+qxdRWf0I0t8 /snN4aoV7/WpyVI5GhQ2iaURzHnKSuDSXUbCFCLQlMVurMb+JkjId1DoK/9XMwcOl5Ql w3nMmNc3sOsfowKCUE5uPqxHsyJzMN/RD5nTBDgzR0hBlhUGnE+/SpMhasFV/o1c5vvS dkZVWTEs5ARKtsspfM6uf+TTEUkrgVnFkmJM0Ui4Fu0q9pVTIOHR7HoWE5hTCboifaGM RMq/Iea38ZYoFa4DKLdQfY3QSj9wfbq/UQIClkfe/t7QvzNjFYIBOYJBXaPYSQMH/2uk 311g== Sender: Michael Pozhidaev From: Michael Pozhidaev To: ALT Linux Team development discussions References: <201203121132.59098.cas@altlinux.ru> <201203270138.47840.cas@altlinux.ru> Date: Tue, 27 Mar 2012 06:11:58 +0700 In-Reply-To: <201203270138.47840.cas@altlinux.ru> (=?koi8-r?B?IuHOxNLFyiD+?= =?koi8-r?B?xdLF0MHOz9ciJ3M=?= message of "Tue, 27 Mar 2012 01:38:43 +0400") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Transfer-Encoding: 8bit Subject: Re: [devel] =?koi8-r?b?STog+sHNxc7BIEFQVCAtIERlZXBzb2x2ZXIh?= X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 26 Mar 2012 23:12:23 -0000 Archived-At: List-Archive: List-Post: Hello, Андрей Черепанов! > Во-первых, есть мой пакет packageinstall, который ставит пакеты в графическом > интерфейсе. Там столько костылей и подпорок для текущего apt, что надо > переделывать. > Во-вторых, zerg@ хорошо бы было заменить установку из его apt-indicator через > Synaptic на нечто более лёгкое. > В-третьих, клиент по установки приложений (который aen@ спит и видит) > стопорится как раз из-за компонента установки пакетов. Это то же самое, что мы уже обсуждаем, называя клиентом а-ля магазин приложений? Как уже писал в deepsolver@lists, нам нужно: 1. Традиционный GUI в стиле synaptic, который неплохо бы получить, как говорит zerg@, на халяву. Тут я с zerg@ согласен, потому что они в целом все где-то делают одно и то же, но надо понять, кому какое API требуется. Шансы с synaptic я оценивал бы как очень слабые. Это будет с одной стороны очень мучительная работа, а с другой стороны с самого начала это не похоже на хорошее production решение. 2. Упрощенный клиент, в котором показываются пакеты, имеющие desktop-файлы. Замысел в том, чтобы скрыть массу пакетов, бесполезных в самостоятельном виде. > 1. Доступ к поиску/установке/удалению из C++ (желательно иметь биндинги и из > Python). Для разработки удобнее чтобы для написания клиента нужно было > подключить библиотеку и использовать её функции. > 2. Природная асинхронность операций предполагают использование системы > сигналов для информирования об ошибках и прогрессе. Это нужно чтобы в клиенте > показывать прогресс и реагировать на возможные ошибки. На Qt это делается с > помощью сигналов/слотов. Как здесь - тебе решать, я и на callback-функции > согласен. Уже это будет большим шагом вперёд по сравнению с парсингом apt- > pipe. Так понимаю, что на деле есть очень много деталей, которые тяжело сразу предусмотреть, но пока ты не написал ничего сверхъестественного. По замыслу у нас есть два центральных класса: OperationCore и IndexCore. Первый должен отвечать за всё, что касается установки удаления, загрузки индексов и поиска информации о пакетах. Второй отвечает за всё, что касается построения индексов. Сейчас эти классы есть, но пока пустые. По ходу дела в них будет появляться реальное содержание, за которым стоит следить. Следить можно на сайте в разделе API, который буду всегда держать актуальным. Из текущих просьб к этому API уже была просьба ldv@ давать останавливать процесс после каждой стадии: после вычисления списков пакетов, после их доставки в кэш, и т. д. PS Пошли в deepsolver@lists? -- Michael Pozhidaev. Tomsk, Russia. Russian info page: http://www.marigostra.ru/