metaclass: (Default)
[personal profile] metaclass
Занимаюсь типичным местным вудуизмом - ставлю прогу из инсталлятора в виртуальной машине, проверяю, что она вообще работает, а потом пытаюсь ее запустить в стиле "xcopy deployment", т.е. копирую инсталлированную папку программы на другой комп и изучаю, что нужно для запуска.

Вообще подобная практика, конечно, сомнительна, особенно в свете толкаемых [livejournal.com profile] zelanton уверений, что во низкоуровневых внутренностях прикладным программистам разбираться запрещено. Но таким образом я набрал уже приличную коллекцию виндовых (а особенно портированных с линукса) программ, которые переживают без переинсталляций любые пертурбации с компами, переустановку виндов и железа, переезды между разными рабочими местами, носимые винты, итд

Так вот в окамле в таком случае оказалось, что там, мало того что пути пишутся в реестр, так еще и переменная окружения используется для поиска либ. С ходу не вижу, почему бы не сделать при отсутствии оных переменных и ключей реестра использование дефолтных значений вроде "папка_с_exe\..\lib\".
Т.е. что под виндами, что в линуксе авторы софта как-то очень уж надеются на стандартную инсталляцию. В некоторых особо сложных случаях это допустимо, но я обычно стараюсь делать прогу запускаемой, даже если психи ее просто скопировали, так проще жить как самому, так и пользователям.

Date: 2010-09-30 07:01 am (UTC)
From: [identity profile] avnik.livejournal.com
Ребе, когда в вашей винде уже изобретут пакетный менеджер?

Date: 2010-09-30 07:32 am (UTC)
From: [identity profile] metaclass.livejournal.com
Да нафиг не нужен тут пакетный менеджер. Нужен xcopy deployment в виде "скачал архив, распаковал в отдельную папку, все заработало".
Чтобы было типа "ставишь пакет А, зависящий от пакета Б, но пакет B зависит от другой версии пакета Б и возникает конфликт"? Зачем мне это счастье?
А то я вот ставлю окамл с зависимостями от tk84, а у меня уже стоит питон с зависимостями от tk85, но они друг друга не видят и друг другу никак не мешают, тупо две никак не связанные независимые папки.

Date: 2010-09-30 07:47 am (UTC)
From: [identity profile] avnik.livejournal.com
количество идиотов не дадут вам делать такой деплоймент.
А количество гуеинсталлеров считающих что "мы ставимся на чистую систему" и имеющий привычку срать в /usr/lib или /system32 или (как там оно на винде зовется) будет зашкаливать за 9000

Date: 2010-09-30 08:02 am (UTC)
From: [identity profile] metaclass.livejournal.com
На винде уже очень давно так никто в норме не делает.

Date: 2010-09-30 10:33 am (UTC)
From: [identity profile] permea-kra.livejournal.com
Зато в реестр срут почем зря. COM однако.

Date: 2010-09-30 10:44 am (UTC)
From: [identity profile] metaclass.livejournal.com
И в реестр уже давно никто не срет.

Date: 2010-09-30 11:10 am (UTC)
From: [identity profile] permea-kra.livejournal.com
Адоба срет и какие-то левые службы устанавливает.

Date: 2010-09-30 10:32 am (UTC)
From: [identity profile] permea-kra.livejournal.com
>>"ставишь пакет А, зависящий от пакета Б, но пакет B зависит от другой версии пакета Б и возникает конфликт"?

У белых людей такого уже давно нет, все мажорные версии лежат в отдельных слотах. Т. е. как бы и версия того же пакета, но конфликтов нет, поскольку раскрывается в разные файлы. А симлинки на дефолтные версии отдельным скриптом конфигурируется.

Date: 2010-09-30 10:44 am (UTC)
From: [identity profile] metaclass.livejournal.com
Не знаю, я с ходу на дебиан впереть пакет с зависимостями отличными от тех, что лежат в репо, не понял, как.

Date: 2010-09-30 11:31 am (UTC)
From: [identity profile] permea-kra.livejournal.com
Ребе, пользуйте кошерную генту.

Date: 2010-10-03 08:06 am (UTC)
From: [identity profile] dimitrykakadu.livejournal.com
Такая проблема в винде будет невозможна, если вся винда перейдет на .NET. Там gac довольно по-умному устроен, и мне кажется, что с ним ад dll невозможен.

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Oct. 18th, 2025 01:51 pm
Powered by Dreamwidth Studios