UpdateEx — обновление Фара и плагинов с плагринга

Здесь можно обсудить ваш любимый плагин.
User avatar
Alexey Samlyukov
Posts: 1765
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 7 times
Contact:

Re: UpdateEx

Post by Alexey Samlyukov »

Latest post of the previous page:

версию юзерменеджера поменял на плагринге.
даты с плагринга - это даты заливки архива, пока на плагринге нет возможности выставить их вручную. но по идеи, если авторы будут постить сразу на плагринг, дату и не нужно менять.
User avatar
Alexey Samlyukov
Posts: 1765
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 7 times
Contact:

Re: UpdateEx

Post by Alexey Samlyukov »

а чем будет отличаться postinstall по гуиду плага от батника в postinstall для конкретного плага?
User avatar
John Doe
Бюрократ
Posts: 13855
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 428 times
Contact:

Re: UpdateEx

Post by John Doe »

Alexey Samlyukov wrote:а чем будет отличаться postinstall по гуиду плага от батника в postinstall для конкретного плага?
Поясните оба варианта.
User avatar
Alexey Samlyukov
Posts: 1765
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 7 times
Contact:

Re: UpdateEx

Post by Alexey Samlyukov »

вот и я спрашиваю
User avatar
John Doe
Бюрократ
Posts: 13855
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 428 times
Contact:

Re: UpdateEx

Post by John Doe »

Я не знаю что там имелось ввиду, но удобней всего на мой взгляд это отдельные секции в update.dll.config
User avatar
Alexey Samlyukov
Posts: 1765
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 7 times
Contact:

Re: UpdateEx

Post by Alexey Samlyukov »

а на мой взгляд это ничем не отдичается от батника:

Code: Select all

if exist "%FARHOME%\Plugins\PluginDir1" (
bla-bla-bla
)

if exist "%FARHOME%\Plugins\PluginDir2" (
bla-bla-bla
)

if exist "%FARHOME%\Plugins\PluginDir3" (
bla-bla-bla
)
exit 
напомню, что плагин скачивает обновления в архивах, распаковывает их непосредственно в папки модулей, а перед запуском фара грузит PostInstall, вся работа PostInstall'а будет происходить уже непосредственно над распакованным в %FARHOME%\Plugins
User avatar
John Doe
Бюрократ
Posts: 13855
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 428 times
Contact:

Re: UpdateEx

Post by John Doe »

А при чём тут PluginDirX?
Что это вообще такое?

Допустим обновляется 2 плагина из 50 установленных.
Батник должен знать что это за плагины.
User avatar
Alexey Samlyukov
Posts: 1765
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 7 times
Contact:

Re: UpdateEx

Post by Alexey Samlyukov »

конкретный пример в студию, при котором нельзя что-то сделать существующим инструментом.
User avatar
John Doe
Бюрократ
Posts: 13855
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 428 times
Contact:

Re: UpdateEx

Post by John Doe »

Хочу при обновлении Observer заменять дистрибутивный observer.ini на свой.

Или вы предлагаете заменять observer.ini при любом обновлении любого плагина?
User avatar
Alexey Samlyukov
Posts: 1765
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 7 times
Contact:

Re: UpdateEx

Post by Alexey Samlyukov »

ага. пока нет той критической массы, которая сподвигла бы на трату времени на реализацию этой хотелки.
User avatar
John Doe
Бюрократ
Posts: 13855
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 428 times
Contact:

Re: Новый плагринг

Post by John Doe »

Бывает, при обновлении залочен один файл, например *.chm

1. Было бы удобно, если бы плагин показывал, с каким файлом проблема.

2. Распаковка прерывается, а лучше дать возможность продолжения (Abort/Retry/Ignore) потому как этот chm (например) не критичен вообще, а прерывать распаковку посередине - так фар вообще может не запуститься, и повторить попытку апдейта не получится.

Возможно лучше без вопросов довести до конца, отобразить лог проблем, и предложить повторить с начала.
Ariman
Posts: 1351
Joined: Fri 30 Nov, 2007 15:32
Location: Крым
Has thanked: 15 times
Been thanked: 50 times
Contact:

Re: UpdateEx

Post by Ariman »

John Doe wrote:Хочу при обновлении Observer заменять дистрибутивный observer.ini на свой.
Чтобы таким не заниматься последнем Observer-е второй конфиг появился. )
User avatar
John Doe
Бюрократ
Posts: 13855
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 428 times
Contact:

Re: UpdateEx

Post by John Doe »

На самом деле просто первый попавшийся пример.
Вот другой, правда для preinstall: делать бэкап перед обновлением.
User avatar
John Doe
Бюрократ
Posts: 13855
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 428 times
Contact:

Re: UpdateEx

Post by John Doe »

Пожелания к плагину.

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

2. Не знаю учитывается ли минимальная требуемая версия.
Например, если у меня билд 3000, то предлагать плагины, требующие 4000 не надо.
User avatar
Tim Sobolev
Posts: 729
Joined: Fri 01 Apr, 2005 14:46
Location: Украина
Has thanked: 1 time
Been thanked: 7 times

Re: UpdateEx

Post by Tim Sobolev »

Alexey Samlyukov wrote:а чем будет отличаться postinstall по гуиду плага от батника в postinstall для конкретного плага?
По гуиду безразлично где находится конкретный плагин (относительно каталога фара) -- постинсталл сработает относительно каталога каждого конкретного обновляемого плагина.

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

Общий постинсталл для устанавливаемых плагинов нужен, к примеру, для вызова команд удаления неких файлов для каждого из устанавливаемых плагинов (у меня file_id.diz history*.* *.map readme*.* changelog*.*)

Можно совместить варианты постинсталлов общего для всех плагинов (кроме дистрибутива FAR) и по GUID путём вызова совмещённого постинсталла для каждого из устанавливаемых плагинов с передачей в качестве параметров GUID и пути к каталогу плагину. Т.о. наличие постинсталла для FAR и совмещённого постинсталла для плагинов позволит максимально гибко настроить обновление.
User avatar
Alexey Samlyukov
Posts: 1765
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 7 times
Contact:

Re: UpdateEx

Post by Alexey Samlyukov »

набросок:

Code: Select all

; ВЫЗОВ ВНЕШНИХ ПРОГРАММ ПЕРЕД ОБНОВЛЕНИЕМ
[PreInstall]
;--- общий (вызывается перед перебором дистрибутивов):
;common =
;--- дистрибутив Far Manager:
;00000000-0000-0000-0000-000000000000 =
;--- сторонний дистрибутив, например, PicView Advanced:
;9F25A250-45D2-45A0-90A3-5686B2A048FA =


; ВЫЗОВ ВНЕШНИХ ПРОГРАММ ПОСЛЕ ОБНОВЛЕНИЯ
[PostInstall]
;--- дистрибутив Far Manager:
;00000000-0000-0000-0000-000000000000 =
;--- сторонний дистрибутив, например, PicView Advanced:
;9F25A250-45D2-45A0-90A3-5686B2A048FA =
;--- общий (вызывается после перебора дистрибутивов):
;common =
так?
и еще вопрос, запуск идет через CreateProcess(...,PluginDirectory,...) какие каталоги устанавливать для перечисленных случаев?
Post Reply

Return to “Обсуждение плагинов”