Home
Objective Caml
ocaml@conference.jabber.ru
Четверг, 15 декабря 2011< ^ >
ygrek установил(а) тему: OCaml / ОКамл / Камль -- http://caml.inria.fr | http://camlunity.ru/ (теперь с git доступом!) | Верблюды грязи не боятся! | release crap, enjoy NIH | репортьте баги официальным дилерам | ocaml мёртв и тормозит, move on | stdlib only? - ССЗБ | Fight FUD with fire
Конфигурация комнаты
Участники комнаты

GMT+4
[00:15:08] f[x] вошёл(а) в комнату
[00:32:24] <gds> из текущих "потерь" -- пришлось lwt скачать, поменять configure на запускалку cтарого configure с опцией --disable-libev или около того (libev пока не нужно).
[00:33:05] <bobry> gds: кстати это тоже проблема, некоторые проекты могут требовать специфичных флагов
[00:33:49] <gds> о да, и это -- решение для версии1.  если хочешь, запиши в планы на версию2, так как не знаю, как это культурно указывать в конфиге.
[00:34:19] <bobry> вот и я не знаю ..
[00:35:12] <gds> облин, оно ещё и ocamlnet хочет.  вот тут, наверное, всё обосрётся.
[00:40:00] <gds> автора ocamlnet + findlib -- убивать за неконсистентность:
OCAMLPATH=.. \
ocamlfind ocamlc -g  -I ../../src/netstring -package "unix"  -custom -o ocamlrpcgen -package unix,netstring \
    rpc_generator.cma main.cmo -linkpkg
ocamlfind: Package `pcre' not found - required by `netstring'
конечно, и что он ожидал увидеть, сбросив OCAMLPATH?
[00:40:28] <gds> отойду на пятиминутку ненависти, но ваше мнение таки интересно.
[00:43:20] <bobry> всех мейко-пейсателей убивать надо
[00:43:38] <gds> $ grep -R "OCAMLPATH=.." .
./examples/cgi/netcgi2-plex/compile.sh:export OCAMLPATH=../../../src
./src/rpc-generator/Makefile:    OCAMLPATH=.. \
./src/netmulticore/Makefile:    OCAMLPATH=.. \
./src/netmulticore/Makefile:    OCAMLPATH=.. \
спасибо, блин, ему большое.
[00:44:16] <bobry> а еще лучше медленно пытать, крысами -- как в 1984, пока они не осознают всю порочность своих деяний
[00:44:51] <gds> с другой стороны, универсальных вариантов мало.  не omake же.
[00:44:56] <bobry> gds: может напишешь в рассылку wtf, мол доколе нам терпеть эти makefails
[00:45:06] <bobry> ну йома -- вариант один, oasis
[00:47:50] <gds> oasis занимается вроде не совсем тем.
с другой стороны, тут проще makefile пофиксить.  что я и сделаю, даже не будь гердушкой.
[00:48:04] <gds> а в рассылку пока не буду, и так много гнева от меня там.
[00:48:36] <gds> и это учитываем, что я ещё не пишу каждому ахтунгу, который говорит, что дохрена трудно окамл падвендой поставить.  пишу только избранным.
[00:48:55] <bobry> почему не совсем тем? build / install / doc
[00:48:59] <Typhon> оазис вроде тем как раз и занимается
[00:49:58] <gds> я думал, что он для простых проектов только.  если его пилят как общее средство сборки камлоспецифичного -- тогда да, я ошибся, он занимается тем.  только вот сложно будет ocamlnet туда подтащить.
[00:53:21] <bobry> пока такие зубры как ocamlnet & co не переедут на оазис, он так и останется "для простых проектов"
[00:53:25] <bobry> курица и яицо йома
[00:55:02] <Typhon> с другой стороны, лвт, например, перетащились, хотя тоже зубр такой
[00:56:42] <bobry> это да
[00:57:01] <bobry> зато у капутта и реакта мейкфайлы
[00:57:04] <bobry> и в каждом по баге
[00:57:15] <bobry> про капутт например мне чел так и не ответил в своем мантисе
[00:57:18] <bobry> а уже почти месяц
[00:57:21] <bobry> линчевать!
[00:58:46] <Typhon> bobry, рекат с оазисом!
[00:58:47] <Typhon> ну!
[00:58:51] <Typhon> в camlunity
[00:59:30] <Typhon> и ему я писал, что типа, чувак, вот, вмерджи себе, будь ласка, он что-то помямлил, про то, что типа да, надо бы оазис освоить да на гит переползти из даркса.
[01:00:24] <bobry> Typhon: not true
[01:00:30] <bobry> аа, в камлюнити -- да
[01:00:33] <Typhon> ага
[01:04:31] <bobry> gds: как то ты странно аргументы разбираешь :)
[01:04:42] <bobry> Code/barbra » ./brb.byte --version --help
1
[01:04:52] <bobry> хотя по всем правилам должен был вылезти хелп
[01:05:30] <gds> bobry: никаким правилам не обучен.  почему хелп?
[01:06:32] <bobry> а может и зря я так, но если запустить ./brb.byte run --help то точно что-то не так
[01:07:06] <bobry> мы cmdliner потащим, если я его в отдельной веточке запилю? в смысле это не страшно, что будет деп?
[01:07:57] <gds> bobry: зависимость -- не ок, я вот сегодня был рад их отсутствию.  Может скопипи.. этосамое эти исходники и заюзать в пределах /src/ext?
[01:08:18] Kakadu вышел(а) из комнаты
[01:08:50] <gds> а почему brb run --help что-то не так?  команда --help не будет найдена, правильно же?  это именно правильное поведение.
[01:09:09] <bobry> да ну вас, копипастить исходники последнее дело :(
[01:09:33] <bobry> я привык что --help нейтрализует все остальные флаги и аргументы
[01:10:04] <gds> а у меня не нейтрализует, см "git clone --help".
[01:16:37] <Typhon> потому что git help clone, гг
[01:18:45] <gds> недопонял.  с другой стороны, "git clone --version" тоже какой-то не такой, не "git --version".  что бы это могло значить..
[01:19:41] <Typhon> у меня кстати git clone --help ман для git-clone вызывает
[01:21:01] <gds> ну да.  и это не то же самое, что нейтрализовать все флаги и аргументы.
[01:22:55] <bobry> что то код у нас в барбаре не очень :)
[01:23:03] <bobry> уж больно грязноват
[01:23:40] <gds> давай я в версию1.1 впишу "почистить код".  а то вот мне эта версия нравится тем, что работает.
[01:23:53] <bobry> :)
[01:25:50] <gds> вписал, кстати.  см. спеку, там есть ещё пара пунктов.
[01:26:47] <gds> даже 3
[01:28:05] <gds> однако, прошу, дайте мне рабочую задачу решить перед впиливанием фишек.  потому что вдруг даже 1.0 ниасилит, а мержить как-то влом.  хотя как знаете.
[01:29:07] <gds> рабочая задача -- это: ocamlnet, lwt, json-*, мои либы.  как бы немало для практической обкатки 1.0.
[01:30:25] <bobry> донт вори
[01:30:31] <bobry> я пока с cmdliner поиграюсь
[01:31:38] <gds> кстати, подумал.  а как будем собирать, если cmdliner будет забандлен, если средство для распаковки / использования / локальной инсталляции мы собственно и собираем?
[01:36:34] Typhon вышел(а) из комнаты: Replaced by new connection
[01:36:36] Typhon вошёл(а) в комнату
[01:44:05] <gds> о, напоролся на то, что #is_available никто не дёргает.
[01:44:10] <gds> ну это мелочи.
[01:44:25] <gds> mkdir -p "/usr/bin"
cp ocamlrpcgen "/usr/bin"
cp: невозможно создать обычный файл «/usr/bin/ocamlrpcgen»: Отказано в доступе
make[2]: *** [install-rpcgen] Ошибка 1
-- вот это серьёзно.
[01:52:33] <gds> ещё фейл -- для ocamlnet надо make all для байткода и make opt для нативкода.  а то почему-то нет .cmxa.
[01:54:17] <gds> видимо, более-менее общее решение -- прописывать команду сборки для пакетов, не умеющих оазис.  не знаю.
[02:01:07] <gds> в json-чём-то:
#ifndef PREFIX                                                                  
#  PREFIX = $(shell dirname $(STDBIN))                                          
#endif                                                                          
PREFIX=$(OCAMLFIND_DESTDIR)/..
(где STDBIN смотрелся по расположению ocamlfind)
[02:26:01] <gds> отладка-логи -- нужны, потому что не дело это, догадываться, по какой из 10 зависимостей ошибка.
[02:26:30] <gds> я потом это ссумирую, но пока думайте, у кого моск на месте.  у меня уже точно нет, функционирую согласно программе тупого мейнтейнера.
[02:29:51] <gds> и надо будет таки сделать yaml-парсер.  хотя бы для brb.conf.  но попозже.  (а вот в 1.1 или 2.0 -- не знаю.)
[02:29:52] bobry вышел(а) из комнаты
[02:30:04] bobry вошёл(а) в комнату
[02:31:32] <gds> а про окружение и скрипты -- я уже раз 20 проверял пакеты через
$ (source _dep/env.sh ; ocamlfind list)
это удобно.  скрипт полезен.
[02:36:40] <gds> кстати, пару лет назад я почитался на работе (правда, всего пару дней, но всё же) тем, что в отдельную табличку БД заносил ID последней профейленной транзакции (бух.учёт), а потом с профейленных ID начинал следующие проводки.  Бухи аж обрадовались, чего с ними на той работе почти не случалось.  Тут подобное тоже применимо, но в будущих версиях: профейлилось что-то -- собирать в первую очередь его и его зависимости.
(придирщикам заметка: то были pragma autonomous_transaction в оракле, которые даже после rollback'а оставляют данные.)
[02:44:37] ftrvxmtrx вышел(а) из комнаты
[02:44:43] ftrvxmtrx вошёл(а) в комнату
[02:46:12] ftrvxmtrx вышел(а) из комнаты
[02:46:27] ftrvxmtrx вошёл(а) в комнату
[02:51:29] Typhon вышел(а) из комнаты
[02:52:30] schurshik вошёл(а) в комнату
[02:56:53] <gds> ещё заметка: в brb clean нужно удалять и _build тоже, так как там оседают старые зависимости от библиотек.  то есть, в brb.conf уже новый урл, rm -rf _dep сделал, но из _build берётся старая лажа.
[02:57:14] schurshik вышел(а) из комнаты: qutIM : Jabber plugin
[02:57:57] <gds> а хотя нет, не столько / не только в этом было дело.  но удалять надо.
[02:58:13] <bobry> gds: логи на мне ок?
[02:58:29] <gds> логи -- да!
[02:58:30] <bobry> кстати оффтопик, когда полезна вот такая запись?
let f (type t) (x : t) = x
[02:59:32] <gds> это как раз топик :]
когда нужен новый тип t, который будет учитываться дальше.  аналог -- как будто ты определил type t и дальше он превратится в какое-нибудь 'a.
чтобы аж нужно -- с первоклассными модулями точно.
[03:01:27] <bobry> реквестирую rl-пример
[03:01:38] <bobry> а то все равно не очень понятно когда он лучше чем (x : 'a)
[03:02:51] <gds> попробуй ввести модуль Id = sig type t val id = t -> t end и попробовать сделать функцию, равную identity, но использующую этот первоклассный модуль.
[03:03:58] <gds> точнее, не обязательно равную identity, скорее, равную Модуль.id
[03:04:18] <bobry> функцию без модуля?
[03:04:23] <bobry> т.е. вне модуля?
[03:04:39] <gds> да.  берущую первоклассный модуль и некое t как параметр.
[03:04:39] ftrvxmtrx вышел(а) из комнаты
[03:04:41] <Andrey Popp> хм… path-dependent types?
[03:04:51] ftrvxmtrx вошёл(а) в комнату
[03:04:51] <gds> это даст поиграться.
[03:05:11] <gds> Andrey Popp: вроде не особо, передаётся же модуль, хранящий тип t.
[03:05:19] <bobry> и дергающее у модуля функцию id?
[03:05:28] <gds> да, именно.
[03:08:48] <bobry> http://caml.inria.fr/pub/docs/manual-ocaml/manual021.html#toc81 advanced examples раскрывают тему ..
[03:09:05] <bobry> синтаскис конечно нелюдской у этих  первоклассных модулей
[03:09:22] <gds> зато семантика хороша.
[03:09:43] <gds> но только когда нужны existential types.
[03:10:15] <bobry> в общем понятно, модуль знать-не знает про мои 'a в сигнатуре функции :)
[03:10:26] <gds> bobry: не, ты попробуй таки, интересный опыт.
[03:10:50] <bobry> уже
[03:10:58] <bobry> # let id m x = let module M = (val m : ID) in M.id x;;
Error: This expression has type 'a but an expression was expected of type M.t
       The type constructor M.t would escape its scope
[03:11:25] <gds> близко :)
[03:11:36] <bobry> заводится только с (type t) и (val m : ID with type t = t)
[03:11:43] <gds> ага!
[03:11:44] <bobry> в общем то понятно почему
[03:11:52] <bobry> но все равно жутковато :)
[03:11:59] <gds> теперь -- не только на словах, но и на деле понятно.
[03:12:16] <bobry> я сознательно использовал первоклассные модули только раз :)
[03:12:22] <bobry> и то -- там можно было бы обойтись объектами
[03:12:44] <gds> они чуть разные.  в одном случае лучше одно, в другом -- другое.
[03:13:51] <bobry> можешь немного раскрыть мысль? я что-то не могу сгенерировать пример когда нельзя было бы применить и то и о
[03:18:11] <gds> когда неудобно модули -- когда функция хочет первоклассный модуль с указанной сигнатурой, а у тебя чуть больше, чем надо (функции/типы/...) -- надо явно приводить к нужной сигнатуре.
когда неудобно объекты -- когда у тебя есть existential type (тип, который есть в методах, но не вынесенный в тип объекта -- не скомпилируется).
[03:19:07] <bobry> а первокласные модули и так на каждый чих надо приводить к какой то сигнатуре -- там же (val <module> : <sig>)
[03:19:36] <bobry> а почему объекты с existential type не скомпилируются?
[03:20:57] bobry вошёл(а) в комнату
[03:20:58] bobry вышел(а) из комнаты
[03:21:10] <gds> это когда используешь, надо приводить, а передать не тот модуль не даст.  попробуй.
[03:21:36] <gds> объекты -- потому что в объектах нет "
type t
method fapfapfap : t -> t
"
[03:22:09] <bobry> ну объект же можно параметризовать типом?
[03:22:17] <bobry> class ['a, 'b] foo ...
[03:22:25] <bobry> хотя это не совсем то
[03:22:27] <gds> "когда у тебя есть existential type (тип, который есть в методах, но не вынесенный в тип объекта -- не скомпилируется)."
[03:22:30] <bobry> точнее совсем не то
[03:22:31] <bobry> да-да
[03:22:35] <bobry> понял
[03:24:45] Andrey Popp вышел(а) из комнаты
[03:24:55] f[x] вышел(а) из комнаты
[03:25:39] <gds> а у меня -- победа!  барбра собрала (в рамках версии1, разумеется) софт, использующий немало.  конкретнее, http://paste.in.ua/3460/ .  там, где local-dir, пришлось присовывать.  lwt -- системно-специфичное (нет libev и не нужен), в ocamlnet -- кривизну его установки OCAMLPATH и попытки ставить бинарники не туда, в json-wheel -- попытки ставить бинарники не туда.  В остальном, чёрт побери, всё работает!
[03:26:53] <bobry> нехилый такой списочек надо сказать :) congrats!
[03:29:05] <gds> ну дык.  камлунити сделала охрененную работу по соотношению Результат/Усилия.  меня очень радует.
[03:30:00] <bobry> еще не сделало :)
[03:30:18] <gds> ну не знаю, "у меня всё работает" :]
[03:30:56] <gds> однако конечный бинарник у меня нативный, там с байткодом вылезло бы, думается.  но не буду пока будить лихо.  продакшон, матьиего.
[03:31:26] <bobry> :D
[03:31:41] <bobry> barbra -- "production tested" OCaml deployment tool
[03:33:29] <gds> ваистену!  Однако, на всякий случай надо до завтра подождать -- посмотрим, вдруг ещё какую-нибудь хрень забыл[и].  Завтра сисадмин перенесёт бинарник в рабочее место, со всеми настройками и прочим.  Вот тогда уж.
[03:34:41] <gds> bobry: будет желание -- пили логи.  Они реально нужны.  Практически везде, и самые подробнейшие.  Мусора на std{out,err} и так хорошо сыпется при сборке, от барбры логи будут совершенно некритичны, но очень даже полезны.
[03:35:21] gds спатке.  "наигралася!"
[03:35:49] <bobry> okay, nite nite
[03:37:25] gds вышел(а) из комнаты
[04:23:26] ftrvxmtrx вышел(а) из комнаты
[04:23:32] ftrvxmtrx вошёл(а) в комнату
[05:29:20] <bobry> пушнул логировние, надо бы нам флажков добавить, типа verbose / debug
[05:29:41] <bobry> без verbose brb вообще ничего не пишет, с verbose пишет все кроме debug
[05:30:03] <bobry> ну а c debug соотв вообще все (или только дебаг -- не знаю как лучше)
[05:30:26] <bobry> вообще неплохо бы до выходных подчистить код, написать какие нить тесты и релизнуть 0.1 :)
[07:35:45] letrec вошёл(а) в комнату
[08:20:47] ftrvxmtrx вышел(а) из комнаты
[08:21:10] ftrvxmtrx вошёл(а) в комнату
[10:23:37] Typhon вошёл(а) в комнату
[11:30:04] <f[x]> а нафига писать remote-tar-gz вместо просто remote? видно же что tar.gz
[11:31:02] <f[x]> gds: в дополнение к curl и wget ещё есть GET
[11:35:19] Kakadu вошёл(а) в комнату
[11:40:16] <Typhon> f[x]: это ж для версии1 решили явно писать всё, чтобы не парится — можно добавить автоопределение типа по урлу
[11:47:02] <f[x]> ок
[11:55:50] <Kakadu> опять они поменяли интерфейс гитхаба
[11:57:20] <Typhon> вот почему компания не должна брать в штат всяких дизайнеров, а работать с ними по контрактам %)
[12:02:17] <Kakadu> http://paste.in.ua/3461/raw/
[12:05:39] <Kakadu> хотя я как-то уже слышал жалобы про flex
[12:07:12] ermine вошёл(а) в комнату
[12:19:24] oMid вошёл(а) в комнату
[12:19:47] <Kakadu> о, снова новые ники
[12:20:31] <oMid> hey Guys
[12:20:46] <oMid> can you give me svn co for sulci bot?
[12:22:45] <Kakadu> oMid: I don't know about svn but you can use git:
git clone git://github.com/ermine/sulci.git
[12:23:04] <oMid> Kakadu: Thanks friend
[12:26:15] <oMid> see you
[12:26:17] oMid вышел(а) из комнаты: See You Soon
[12:31:55] Andrey Popp вошёл(а) в комнату
[12:45:47] komar вышел(а) из комнаты: Replaced by new connection
[12:45:48] komar вошёл(а) в комнату
[12:51:30] Andrey Popp вышел(а) из комнаты
[12:55:44] Kakadu вышел(а) из комнаты: Replaced by new connection
[12:55:44] Kakadu вошёл(а) в комнату
[13:03:10] klapaucius вошёл(а) в комнату
[13:04:57] <f[x]> как запустить совпадающую но патченую версию топлевела чтобы он подхватил все системные либы - OCAMLLIB=$(ocamlc -where) /opt/ocaml-patch/bin/ocaml -nostdlib
[13:09:25] <f[x]> woohoo -> http://paste.in.ua/3463/
[13:12:58] ftrvxmtrx вышел(а) из комнаты
[13:15:52] ftrvxmtrx вошёл(а) в комнату
[13:19:21] <Kakadu> а show_module это ты прикрутил?
[13:19:31] <f[x]> нет
[13:19:55] gds вошёл(а) в комнату
[13:21:25] <f[x]> гг
# #show_type list;;
type 'a list = [] | :: of 'a * 'a list
[13:22:02] <Kakadu> это ты generic принтер диминоывский тестишь?
[13:23:03] <f[x]> нет
[13:23:36] <Kakadu> всё, сдаюсь
[13:24:31] <f[x]> 5377
[14:09:31] <gds> патч гаррига -- прикольно, ждём в релизе.
[14:09:49] Andrey Popp вошёл(а) в комнату
[14:11:43] <Typhon> в ебилде %)
[14:12:10] <Andrey Popp> Typhon: ещё тройку лет назад я бы этим и занимался :-)
[14:13:16] <gds> итак, итоги вчерашнему подведём.
для сборки lwt приходилось передавать --disable-libev.  по идее, в будущем brb.conf нужна будет типа-опция либо ещё какое указание на то, что какие-то пакеты нужно компилять с/без каких-то фич.  с другой стороны, типично то, что подобные фичи могут требоваться от зависимых пакетов (например, если я точно знаю, что в суперсервере нужно libev, lwt без libev меня не устроит).
как подобное решают нормальные люди?
как подобное решим мы?
[14:14:08] <Kakadu> gds: http://paste.in.ua/3461/raw/ скажи что пропатчить
[14:14:12] <f[x]> у dep будет способ передавать опции для configure?
[14:14:39] <gds> Kakadu:
> E:\cygwin
принципиально ничего не скажу.
[14:14:49] <f[x]> Kakadu: 5413
[14:15:38] <Kakadu> f[x]: угу
[14:16:03] <f[x]> там жалуйся
[14:16:11] <Typhon> кстати, помимо задавания опций в brb.conf, может ли быть полезно пробрасывание опций от пользователя?
[14:16:14] <gds> f[x]: да, это вариант.  нужно ли что-то ещё от опций --enable-xxx/--disable-xxx
[14:16:20] <Typhon> хотя, в принципе, можно, е сли надо брб.конф поправить
[14:17:32] <gds> лучше поправить конфиг, он относительно постоянный, а опции командной строки могут потеряться в хистори.  с другой стороны, если автоматизировать билд, то проще передать командную строку, нежели конфиг.  хз.
[14:18:45] <Kakadu> у нас сейчас конфиг однострочный для каждого депенденса?
[14:19:36] <gds> да, и в однострочном это будет смотреться отвратительно.  это я понимаю прекрасно.
[14:19:54] <gds> поэтому эту фичу мы не будем реализовывать в версии1.
[14:20:18] <Typhon> gds: а ты пособие про итератам выпустишь? :-[
[14:21:06] <Kakadu> о,  в виндовой инсталляшке камля симпатичный верблюд
[14:21:12] <f[x]> gds: т.е.? просто кусок комстроки для configure
[14:22:13] ftrvxmtrx вышел(а) из комнаты
[14:22:35] ftrvxmtrx вошёл(а) в комнату
[14:23:27] <gds> Typhon: да.  пока дошёл до такого типа в литпро (до генерации значений такого типа):
type ordered_tree =
  { ot_seg : pathseg
  ; ot_path : Filepath.t_abs
  ; ot_output : list output
  ; ot_sections : list section_record
  ; ot_subtrees : list ordered_tree
  }
;
и на их основании готовлюсь генерить окамловские и текстовые файлы.
[14:23:46] <gds> f[x]: просто кусок -- понятно.
[14:45:28] <gds> я потихоньку добиваю вчерашнее.  хорошо иметь чятлоги :)  этот вопрос про конфигуре записал в пожелания, гердушке отписал, поехали дальше, это надо добить, чтобы не забыть, пока остатки гнева ещё кипят после вчерашнего.
как сделать так, чтобы brb использовало какие-нибудь библиотеки типа cmdliner или ocaml-fileutils, но при этом этих библиотек не было бы в зависимостях?  чую, нужен бутстраппинг.  например, тупой версией (текущей) собираем зависимости и потом собираем умную версию.
[14:46:41] <f[x]> можно просто бандл руками собрать
[14:46:49] <gds> разверни мысль чуток.
[14:47:59] <f[x]> ну сложить все зависимости в релизный tar.gz и написать скрипт который будет их собирать и ставить локально
[14:51:38] <gds> понял.
народ, ещё варианты есть?  чтобы закрыть вопрос.
[14:52:11] <gds> (кстати, учитывая простыни от оазиса в диффах, через hg view (аналог gitk) весьма удобно просматривать коммиты.
[14:52:16] <gds> )
[14:52:45] <gds> (незакрытая скобка вызывает смутный дискомфорт, длящийся весь оставшийся день.)
[14:56:50] <gds> bobry:
+      and cmd = String.concat " " args in
+      begin
+        Log.info "Running command %S" cmd;
это недостаточно информативно покажет команду, например, не сделает различий между ["rm";"-rf";p] и ["rm -rf";p], что ухудшит отладку.
[14:57:54] <gds> bobry: "match waitpid ~mode:[] pid with" недостаточно хорошо тем, что в ветках матча не везде проверяешь ассертом pid=pid'
[15:00:50] <gds> bobry: "match (ensure "wget", ensure "curl") with" -- зачем дёргать и то, и другое, если первое из них найдено?  для красоты кода будем запускать ещё два процесса ОС (sh + which)?
[15:02:17] f[x] напоминает про GET!
[15:02:41] <gds> а что такое GET?
[15:04:53] <gds> точнее, у меня в системе он есть, но откуда он и что это такое вообще?
[15:05:05] <f[x]> dpkg -S GET
[15:05:25] <f[x]> по-моему он входит в базовый набор пакетов и есть почти всегда почти везде
[15:05:40] <gds> libwww-perl!!111  аааа11
[15:05:43] <f[x]> гг
[15:05:44] <gds> ок, записываю.
[15:06:12] <gds> кстати, как-то хотел что-то наподобие dpkg -S найти, но помудохался, не нашёл, забил.  теперь буду знать.
[15:07:38] <Kakadu> а что такое cmdliner?
[15:07:39] <f[x]> static bool row_iter_callback(row const& row, void* v_cb, void* v_exn)
{
  value v = caml_callback_exn(*(value*)v_cb,value_of_row(row));
  if (!Is_exception_result(v)) return true;
  *(value*)v_exn = Extract_exception(v);
  return false;
}
это безопасно?
v_exn и v_cb зареганы где-то выше через CAMLlocal
[15:08:04] <f[x]> gds: ещё см. dpkg -L, dpkg -l и apt-file search
[15:08:39] <f[x]> аргх, понял что нет
[15:08:49] <gds> CAMLparam(v_exn) небось?
[15:09:00] <f[x]> gds: зачем?
[15:09:07] <f[x]> оно зарегано выше по стеку
[15:09:29] <f[x]> в той функции откуда дёргается функция которая дёргает row_iter_callback
[15:09:42] <f[x]> и передаётся как value*
[15:09:46] <f[x]> так что тут вроде всё ок
[15:11:09] <Typhon> [Caml-list] Don't forget the user — опять за своё %(
[15:20:28] <gds> а у меня тупак и нарушение чувства прекрасного.  не знаю, как бы мне сделать фификтивно такую хрень: есть список, есть подозреваемое начало и конец (по паре элементов), нужно вытащить всё, что между ними, если подозреваемые начало и конец матчатся.  тупо в массив перегнать -- вариант, конечно, но хз.  списков много будет, наверное.
[15:29:12] Kakadu вышел(а) из комнаты
[15:29:21] Kakadu вошёл(а) в комнату
[15:32:20] <gds> проехали.
[15:40:42] ftrvxmtrx вышел(а) из комнаты
[15:40:54] ftrvxmtrx вошёл(а) в комнату
[15:41:41] ftrvxmtrx вышел(а) из комнаты
[15:41:52] ftrvxmtrx вошёл(а) в комнату
[16:01:01] <gds> http://udpn.livejournal.com/62598.html
[16:01:38] <Typhon> там в комментах опровергают, я вчера почитал %)
[16:02:19] <Typhon> хотя тред вот новый есть, забавныфй
[16:03:50] letrec вышел(а) из комнаты
[16:16:48] <f[x]> хнык, у меня gray_vals = 1
[16:17:54] Andrey Popp вышел(а) из комнаты
[16:18:16] Andrey Popp вошёл(а) в комнату
[16:19:13] <gds> f[x]: ты что-то про objsize или путаю?
[16:19:29] <f[x]> objsize исключил уже
[16:25:07] <f[x]> жесть какая, а gray_vals_cur и gray_vals_end вообще нули
[16:25:20] <f[x]> кто-то злобно корраптит память
[16:29:40] <bobry> gds: "в ветках матча не везде проверяешь ассертом pid=pid'" достаточно же первого матча не? если это не так оно зафейлится
[16:30:41] <gds> недостаточно, первый матч будет выполнен только если конструктор совпадает с конструктором первого матча.
[16:36:33] <bobry> тобишь конструктор без аргументов?
[16:36:41] <bobry> серьезно? О_О
[16:37:36] Kakadu вышел(а) из комнаты
[16:37:41] Kakadu вошёл(а) в комнату
[16:38:01] Kakadu вошёл(а) в комнату
[16:38:41] <Kakadu> оказывается ocamlbuild вызывает mkdir в себе когда _build создает
[16:38:56] <Kakadu> так что без цигвина всё не так тривиально
[16:39:43] <f[x]> аргх, ужас какой
[16:44:23] shaggie вошёл(а) в комнату
[16:44:41] <gds> bobry: хз чо как, может не туда смотрел, но сейчас "| (pid', _) when pid' <> pid -> assert false" -- правильно.
[16:45:06] <bobry> окей :)
[16:58:08] f[x] идиот, корка не совпадала с бинарником, из-за этого адреса сдвинуты были
[17:00:12] <gds> f[x]: так таки кто реально козлил, расскажешь?
[17:02:21] <f[x]> gds: найти надобно
[17:02:49] <Kakadu> $ cat shell.ml | grep mkdir
50:let mkdir dir =
52:  (*Sys.mkdir dir (* MISSING in ocaml *) *)
53:  run ["mkdir"; dir] dir
[17:02:58] <Kakadu> WTF 52я строка что они имеют ввиду
[17:02:59] <Kakadu> ?
[17:03:06] <gds> unix.cm[x]a
[17:03:13] <Kakadu> есть там
[17:03:18] <Kakadu> у унихе есть
[17:03:22] <Kakadu> в win32unix тоже
[17:03:52] <gds> а оазис принципиально не будет .cm[x]a
[17:04:22] <Kakadu> не кушает сmaшки?!
[17:11:53] <gds> не кушает!11111
[17:12:59] <Kakadu> не может быть!?!?!
[17:13:21] <Kakadu> ТАК ЗАДУМАНО ИЛИ НЕ ПОФИКСИЛИ?1111111
[17:14:20] <gds> так задумано!
[17:15:21] <gds> Kakadu: http://oasis.forge.ocamlcore.org/MANUAL.html#building-and-installing
[17:19:48] <Kakadu> gds: но заявление о максимально портируемости не особо согласуется с http://paste.in.ua/3464/
[17:20:08] <gds> везде есть баш.
[17:20:35] <bobry> какой геморой то йома ..
[17:20:38] <Kakadu> т.е. вендузятникам для работы с оазисом/камлобилдом надо ставить баш, так?
[17:21:23] <gds> у нормальных виндузятников баш уже стоит, они не жалуются.  и мингв стоит.
[17:22:00] <f[x]> в cmd тоже есть mkdir
[17:23:11] <gds> только там надо определять, msvc или нет, и подсовывать вместо /c/somedir что-то другое.
[17:27:26] <Kakadu> gds: мне кажется что ты сделал ОХРЕНЕННУЮ работу, когда захакал всё это в оверблд
[17:28:02] <gds> мне тоже так кажется, но у меня были более простые условия, чем у тебя, -- я mingw распространял рядом.
[17:28:16] <gds> кстати, может добьём оверблд на твоей системе?
[17:28:53] <Kakadu> а ммм
[17:29:22] <Kakadu> на той где я только что воткнул камло из инсталлятора, или там где цигвин, мингва в path и ещё много чего?
[17:29:30] <gds> а вот что я криво сделал -- так это то, что решил _всё_ собирать башем и около того.  достаточно было собрать башем ocaml+findlib, дальше уже передавать управление программе на нормальном языке, а не на баше.
[17:29:55] <Kakadu> я сейчас не могу запустить конфигуре для findlib
[17:30:29] <Kakadu> ага, ясно
[17:30:32] <gds> Kakadu: оверблд забивает на PATH, либо заменяя его полностью (для билда), либо доклеивая туда спереди нужные директории (для собственно использования).  Если PATH будет как-то влиять -- это будет моя бага, которую надо пофиксить.
[17:31:38] <gds> Kakadu: если чо, бери overbld source installer на любой системе, ставь его и компиляй, логи разберём.
[17:31:59] <gds> только ставь в отдельную диру.
[17:32:40] <Kakadu> gds: а как ты получил sed. в mingw вроде его нет?
[17:33:08] <gds> есть.  скачал, распаковал.  в общем, там где-то 10 тарболов намешал в /mingw + /msys
[17:33:54] <gds> только вот пока найдёшь их на сайте мингва, можно обосраться.  что хорошо, что они новую хрень изобрели, типа mingw-get, для скачивания.  потом надо будет заюзать.
[17:35:37] <Kakadu> вы бы это видел
[17:36:03] <Kakadu> http://paste.in.ua/3465/
[17:36:10] <Kakadu> но это оверблд нипричем пока
[17:36:34] Kakadu сказал инсталлятору обновить оверблд перед конпеляцией
[17:38:45] <gds> мутный PATH, вероятно не соберётся ничего.
[17:40:53] <gds> или баш мутный.
впрочем, разберись, что в PATH в системе стоит.
баш должен выдавать что-то типа
/C/Program Files/Far2/:/C/Program Files/GnuWin32/bin:/C/OCaml/emacs-23.3/bin:...
[17:41:11] <Kakadu> да, оверблд при обновлении крешнулся в линковке
[17:41:39] <Kakadu> gcc -mno-cygwin -DOCAML_STDLIB_DIR='"e:/OVerbld/ocaml/lib"' -I"e:\OVerbld\ocaml\bin\flexdll" -O -mms-bitfields -Wall -Wno-unused -c prims.c
flexlink -chain mingw -L e:/OVerbld/mingw/lib -L e:/OVerbld/msys/lib -exe -o ocamlrun.exe prims.o -lws2_32  libcamlrun.a
/mingw/lib/crt2.o:crt1.c:(.text+0x28): undefined reference to `__dyn_tls_init_callback'
[17:42:10] <Kakadu> ладно, давай сосредоточимся на оверблд. А про вторую винду я пока разговаривать не буду
[17:43:16] <gds> запусти runbash.bat и покажи mount и (cd /mingw && pwd -W)
[17:44:10] <Kakadu> только надо енвайромент проставить\
[17:44:22] <Kakadu> env.bat?
[17:45:13] <gds> запусти runbash.bat из его директории.  если чо, см. в runbash.bat, оно ставит.
[17:46:34] letrec вошёл(а) в комнату
[17:46:41] <Kakadu> paste.in.ua/3466/
[17:46:48] <Kakadu> http://paste.in.ua/3466/
[17:46:59] <Kakadu> вроде пока ок
[17:50:12] <gds> а ещё echo $PATH в том шелле, который runbash
[17:50:35] <Kakadu> gds: bash-3.1$ echo $PATH
/e/OVerbld/mingw/bin:/bin:/e/OVerbld/hg:/e/OVerbld/gtk/bin:/e/OVerbld/7zip:/e/OVerbld/postgres/bin:/e/OVerbld/postgres/lib
bash-3.1$
[17:52:32] <Kakadu> так, надо сказать что бы он начал компиляться
[17:53:40] <gds> случайно нет c:\mingw нигде?
[17:55:01] <Kakadu> есть E:/mingw
[17:55:12] <Kakadu> но  в  path нету её как видишь
[17:55:22] <gds> попробуй его переименовать чисто на всякий случай, потестим.
[17:56:02] <gds> и потом в шелле, открытом runbash, запусти ./bld.sh work1
[17:56:11] <Kakadu> переименовал
[17:56:57] <Kakadu> кхм
[17:57:26] <Kakadu> если я сделаю runbash и потом cd ~, то он как-то узнает про мой цигвин и переходит в её home
[17:57:42] <gds> вот срань.  имхо в этом дело.
[17:57:56] <Kakadu> потому что переменная $HOME не затерта
[17:58:15] <gds> а нет, не в этом.
[17:59:01] <Kakadu> короче я HOME за ансеттил. запускаю билд
[18:01:00] <gds> ещё опыт, во втором runbash.bat можно сделать при желании: (cd /bin && pwd -W)
[18:01:13] <ermine> runbash уже? ужос
[18:01:24] <Kakadu> gds: http://paste.in.ua/3468/
как в прошлый раз
[18:02:11] <ermine> а тестить уже есть смысл?
[18:02:19] <gds> не, в прошлый раз было __tls чототам
[18:02:36] <Kakadu> прошлый который не сегодня
[18:02:54] <gds> покажи config.log, наверное.
[18:03:31] <Kakadu> http://paste.in.ua/3469/
[18:03:47] <ermine> ладно, тут работа кипит своим кипятком, не буду мешать
[18:07:09] <gds> Kakadu: попробуй в чистом runbash создать mytest.c с содержимым "int main(void) {return 0;}" и скомпилировать его через gcc -O -mms-bitfields mytest.c
[18:08:49] <Kakadu> http://paste.in.ua/3470/
[18:10:16] <gds> пипец.  чтобы гцц не работал -- я такого не видел.  у тебя там антивирусы какие-нибудь стоят?  можешь попробовать отключить их исключительно для gcc .. mytest.c?
[18:11:15] <Kakadu> gcc код ошибки три кидает
[18:11:27] <Kakadu> я не помню что это такое
[18:12:12] <Kakadu> не, не помогает
[18:12:28] <Kakadu> надо спросить у суровых бородатых
[18:14:43] <gds> ещё одна идейка.  попробуем определить, гцц крив или что ещё.  посмотри на версию gcc ( -V вроде), скачай _такую же_ с mingw.org (точнее, там на sf.net оно), затем распакуй её туда, где сейчас gcc стоит -- вроде e:\overbld\mingw -- и попробуй запустить.
если будет та же фигня -- возьми самую свежую из стабильных (с того же сайта), распакуй туда же поверх, погляди на результаты.
[18:15:16] <Kakadu> может копипастнуть тот мингв, что я переименовывал?
[18:15:35] <gds> как вариант -- да.
[18:17:35] <gds> в интернетах народ говорит, что это из-за разных стоящих mingw, которые непонятно как, но ищутся.
[18:20:15] <Kakadu> ага, а втом мингве что был нет gcc, но есть ж++, который компилится и падает на линковке
[18:22:16] <gds> а если попробовать переименовать все имеющиеся mingw куда-нибудь в другое место?  вдруг эта срань не только на E:\ ищет.
[18:22:52] <Kakadu> ты предлагаешь убить e:/cygwin/usr/bin/gcc?
[18:23:31] <gds> переименовать, точнее.
[18:25:34] <gds> Kakadu: пойду погулять, запарился.  идеи выдвинул (в том числе попробовать обновить гцц, как ту версию, что стояла в оверблд, так и новую попробовать).  в пределах часа приду, возьмусь за результаты твоих тестов.
[18:26:19] <Kakadu> просто рабочая бажная венда на работе
[18:26:29] <Kakadu> и я через часок наверное уже свалю
[18:26:46] <Kakadu> но если что завтра начиная с полудня по мск можно продолжать
[18:27:23] <Kakadu> кстати, собрать findlib без цигвина не так просто
[18:28:34] <gds> просто, нужно лишь mingw + утилиты.
[18:28:48] <Kakadu> нужно ещё знать потроха
[18:29:09] <Kakadu> я вот хз почему конфигурялка findlib не может найти стдлибу камлёвую
[18:29:40] <Kakadu> может потому что башем а не сшем запускаю?
[18:35:23] <bobry> господа, даешь релиз барбары завтра
[18:36:02] <Kakadu> она же падвендой не скомпилится
[18:36:12] <Kakadu> без цигвина и бубна
[18:36:59] <Kakadu> gds: короче я поставил поверх мингву и начало компиляться
[18:37:14] <Kakadu> отсюда: http://ignum.dl.sourceforge.net/project/mingw/Installer/mingw-get-inst/mingw-get-inst-20111118/mingw-get-inst-20111118.exe
[18:38:26] <Kakadu> bobry: а показывать комунить планируешь? варвару то?
[18:40:25] <Kakadu> отлично, конфигуре прокатился. ждем-с
[18:40:34] <bobry> Kakadu: так а шо я то :) gds у нас рулевой
[18:40:40] <Kakadu> я почему-то уверен что дальше всё будет зашибись
[18:41:22] <Kakadu> bobry: Он только Primus inter pares. Так что не надо отмазываться.
[18:42:43] <Kakadu> мля, всё упало
[18:45:47] <Kakadu> gds: http://paste.in.ua/3475/ походу когда я подменил новое мингв я похерил некоторые файлы
[18:50:48] Kakadu вышел(а) из комнаты
[18:51:26] Typhon вышел(а) из комнаты
[18:51:30] shaggie вышел(а) из комнаты
[19:13:44] Kakadu вышел(а) из комнаты
[19:29:10] <letrec> кто-нибудь emacs юзает для камла?
[19:42:51] <gds> letrec: я юзаю.
[19:43:24] <letrec> tuareg'ом пользуешься?
[19:43:28] <gds> Kakadu: проблема известная, там лажа с новыми версиями камла и моими патчами, которые их не догоняют.  Как придёшь, расскажу, что делать.
[19:43:31] <gds> не пользуюсь.
[19:44:04] <letrec> т.е. емакс у тебя о камле без понятия?
[19:45:48] <gds> с понятием, но которое я периодически пытаюсь оторвать, кроме "go to next error", который мне очень дорог.
[19:46:07] <letrec> а раскраска есть?
[19:46:14] <gds> принципиально нет.
[19:46:38] <letrec> жесть
[19:46:54] <gds> насмотрелся за жизнь на раскрашенные иде, глоза и так вырваны.
[19:47:14] <gds> "И ГЛОЗА КАК СТИКЛО" [классик]
[19:48:39] <gds> буквально недавно думал, где же полезна раскраска.  придумал, как одно из применений, случаи "шелл-стайл метапрограммирования", когда хрен поймёшь, какой шелл-скрипт что выводит для дальнейшего исполнения.
[19:48:57] <gds> а больше -- не знаю.  хнык хнык.
[19:49:30] <letrec> мне раскрашенный текст легче парсить
[19:49:55] <letrec> а навигация по символам у тебя есть?
[19:50:09] <letrec> типа go to definition
[19:51:11] <gds> раскраска бывает неправильной, и доверять ей -- значит перекладывать обязанности мозга на обязанности распознавалки цветов.  Это обычно печально заканчивается, и у меня есть небольшая статистика -- люди, которые кодят без подсветки, допускают меньше тупых синтаксических ошибок, и, с другой стороны, могут их легче найти в случае чужого кода (даже скриптов).
[19:51:40] Kakadu вошёл(а) в комнату
[19:52:13] <gds> навигации такой -- нет, это надо видимо ocamlspotter прикручивать.  но никогда не было нужно, всё решается или топлевелом, или ocamlfind ocamlbrowser -all, или как там его.  ну или compile-time тестами.
[19:52:58] <letrec> т.е. в своем коде ты брут форсом перемещаешься?
[19:54:12] <gds> в моём коде понятно, что где, обычно.  ну, на худой конец, имя файла (.ml/.mli) известно, а дальше -- Ctrl+S имяфункции
[19:54:27] <gds> C-s, точнее, в емакс-мире.
[19:55:03] <letrec> по поводу раскраски занятное мнение, а проверка типов это не перекладывание обязанности мозга на компилятор?
[19:55:51] <gds> это не перекладывание, это гарантии.  компилятор даёт гарантии типизации.  раскраска гарантий не даёт обычно.
[19:56:34] <f[x]> doligez недавно постил типа правильную раскраску для емакса (доказанную в coq'е? o_O)
[19:56:56] <letrec> а ссылка есть?
[19:57:17] <f[x]> кстати не вижу причин почему раскраска не может 100% соответстовать лексическим правилам камля (для не camlp4 кода)
[19:57:33] <f[x]> letrec: см. за этот месяц в рассылке
[19:57:51] <letrec> ага, тоже код как и компилятор
[19:59:19] <gds> f[x]: да может, просто личная статистика сильно против.
[20:01:35] <f[x]> ну на практике 100% корректные раскраски мне тоже пока не встречались :)
[20:01:58] <gds> bobry: про релиз -- надо, но есть TODO.txt.  Может его асилим?  Кое-что там надо в будущие пожелания (про "уже собранное").  Я буду сейчас проверять байткод на этом нашем продакшоне (скопирую диру и там соберу), доложу о результатах.
[20:02:27] <letrec> f[x]: https://groups.google.com/forum/#!searchin/fa.caml/syntax/fa.caml/sRG7a2_49Ik/3Nd5yxJYwAcJ это?
[20:02:53] <gds> f[x]: ну да, а ещё чтение кода не только из уютненькой ИДЕшечьки, а отовсюду -- тоже хороший скилл.
[20:07:04] <f[x]> gds: в том же ключе - проверка типов в голове и написание кода в машкодах :)
[20:07:12] <f[x]> letrec: да
[20:17:46] <gds> интересненько.  в мануле написано, что байткод запускается и как "./exe", и как "ocamlrun ./exe".  тогда как у меня первое запускается, а второе выдаёт "Fatal error: unknown C primitive `unix_dup'".  что не так?
[20:18:54] <f[x]> что-то не так :)
[20:19:08] <f[x]> как байткод собирался?
[20:19:11] <f[x]> custom?
[20:19:17] <f[x]> пути какие-то зашивались?
[20:19:25] <f[x]> в частности rpath?
[20:19:39] <gds> а ещё проверил, переименование исходной диры (где должны были быть сошки) не меняет результат.
[20:19:42] <f[x]> strace -e open ещё интересно
[20:20:04] <gds> strace нет на той системе.
[20:20:14] <f[x]> а просто ocaml и загрузить туда unix работает?
[20:20:20] <f[x]> версии рантайма совместимые?
[20:20:50] <Kakadu> | потестировать, как собираются проекты с чем-то, требующим .so / ld.conf
  (а именно, байткодовые исполняемые файлы, собранные из зависимостей,
  лежащие в _dep/bin/)
[20:20:50] <gds> #load "unix.cma" -- катит.
[20:20:55] <Kakadu> а что именно тут требуется?
[20:21:01] <gds> Kakadu: посмотреть, чо будет.
[20:21:05] <gds> как раз это делаю.
[20:21:18] <Kakadu> я вроде тестил на днях?
[20:21:29] <gds> f[x]: камло едино, другого нет, других версий тоже.
[20:22:08] <f[x]> gds: тогда LD_DEBUG=libs ocamlrun ./exe
[20:22:10] <gds> по размеру отличается от нативкода (байткод 4Мб, нативкод 2Мб)
[20:23:41] <f[x]> ocamlbyteinfo ещё
[20:23:46] <gds> f[x]: http://paste.in.ua/3482/ , но хрень какая-то -- что, ocamlrun сам не видит unix?
[20:24:15] <gds> ocamlbyteinfo тоже нет тут, 3.12.1.
[20:24:53] <f[x]> у меня в 3.11.2 есть, наверное дебиановское
[20:25:51] <f[x]> т.е. оно даже не пытается dllunix грузить
[20:26:27] <f[x]> а для ./exe покажи
[20:26:33] <f[x]> оно там вообще unix использует?
[20:27:05] <gds> unix у меня используется.
более того, "open Unix let () = ignore (Unix.stat ".")" работает в обоих случаях.
[20:28:45] <gds> вот для ./exe: http://paste.in.ua/3483/
[20:30:56] <f[x]> непонятно
[20:34:38] <f[x]> криво собранный в custom моде?
[20:36:34] f[x] afk
[20:38:37] <gds> ещё странно, что grep находит зашитые пути, а strings их не выдаёт.
[21:01:59] Andrey Popp вышел(а) из комнаты
[21:03:17] ftrvxmtrx вышел(а) из комнаты
[21:10:37] f[x] вошёл(а) в комнату
[21:43:56] letrec вышел(а) из комнаты
[21:44:04] ermine добавила в свою парсилку детекторы ошибк синтаксиса и случайно накидала ошибок, весь день прошел за взаимной слежкой за ошибками
[21:44:08] <ermine> ужос
[21:44:34] <ermine> CS парсеры - это точно жуть
[21:45:53] f[x] вышел(а) из комнаты
[21:46:30] f[x] вошёл(а) в комнату
[21:56:48] <ermine> Kakadu: есть у тебя там в свалке книжка по парсингу CS грамматик?
[21:57:03] <ermine> Kakadu: можно уже и попробовать rsync :)
[21:57:28] <ermine> rsync local host:remote и наоборот, как учил f[x]
[22:03:09] arhibot вошёл(а) в комнату
[22:03:19] arhibot вышел(а) из комнаты
[22:10:02] <Kakadu> f[x]: а как тебя rsyncать?
[22:10:24] <Kakadu> local на что заменять надо?
[22:10:58] <f[x]> rsync camlunity.ru::swap
[22:10:59] <Kakadu> f[x]: и походу ты пароль на камлюнити поставил
[22:11:10] <f[x]> где?
[22:11:30] <Kakadu> проехали
[22:12:35] <Kakadu> правда у меня всёравно мозг не хочет ман читать
[22:12:36] <Kakadu> (
[22:15:50] <Kakadu> во, пошло
[22:17:15] <ermine> так
[22:18:03] <Kakadu> ermine: будет тебе скачать
[22:18:09] <Kakadu> счастье
[22:18:23] <ermine> если понять чо запустить
[22:18:58] <Kakadu> ermine: гипотеза
rsync -avr camlunity.ru::swap  .
[22:19:23] <ermine> и да, пароль требует
[22:19:32] <Kakadu> не. не требует
[22:19:35] <Kakadu> я не то  набирал
[22:19:43] <ermine> а я его помню?
[22:20:29] <ermine> видимо не помню
[22:20:40] <Kakadu> какой пароле?
[22:21:13] <ermine> ermine@camlunity.ru's password:
[22:21:43] <ermine> а, пароля и не должно быть - я передавала игреку ключ, а не пароль
[22:23:44] <Kakadu> в рассылке проскочила альтернатива цигвину: https://github.com/bmatzelle/gow/wiki
[22:26:52] <ermine> короче, никак
[22:26:58] <ermine> оно пароль хочет и точка
[22:27:03] <Kakadu> f[x]: явись!
[22:28:43] Typhon вошёл(а) в комнату
[22:33:42] <ermine> видимо f[x] меня забанил паролем
[22:35:44] <f[x]> ermine: на swap никакого пароля не надо
[22:36:44] <ermine> f[x]: а я и не запрашиваю, оно промпт выдает и никаких вариантов
[22:38:38] <ermine> f[x]: видимо мешает мое наличие на гите
[22:38:51] <ermine> надо попробовать под каким-нить другим усером
[22:39:33] <ermine> не помогает
[22:42:09] <ermine> запустила на другой машине - тоже просит пароль
[22:45:16] <ermine> эх видимо не судьба обчитаться
[22:46:08] <Kakadu> f[x] починит. всё будет ок
[23:03:22] <Kakadu> кто барбре навелосипедил такие примеры. даже поставив ваш капут, всему капут и хана, ничего не собирается
[23:03:51] <f[x]> ermine: какой ip?
[23:06:03] <f[x]> там точно анонимный доступ есть
[23:07:39] <ermine> отдавайте книжки!!!
[23:07:59] <ermine> f[x]: ну я за натом
[23:08:37] <ermine> f[x]: а как точно запускать команду sync?
[23:08:50] <ermine> со всеми аргументами и точечками
[23:09:02] <Kakadu> я тоже за натом
[23:09:03] <ermine> чтобе пароль не хотело
[23:09:45] <ermine> Kakadu: половое неравноправие!
[23:11:06] <f[x]> ermine: rsync camlunity.ru::swap .
[23:11:10] <f[x]> ermine: rsync camlunity.ru::swap
[23:11:18] <f[x]> это просто покажет список
[23:11:34] <f[x]> потом выбираешь что хочешь и rsync camlunity.ru::swap/xxx .
[23:13:51] ermine завидует тем, у кого оно пароль не спрашивает
[23:14:09] <f[x]> ermine: http://camlunity.ru/swap/
[23:14:34] <f[x]> ermine: я от тебя по rsync'у вообще заходов не вижу
[23:14:47] <f[x]> либо ты ломишься куда то на другой хост либо по другому протоколу
[23:15:18] <f[x]> ничего себе сколько всего
[23:15:28] <f[x]> кто это добрый такой всё залил?
[23:15:38] <Kakadu> там хлам есть
[23:15:54] <ermine> ну и шо скачивать-то...
[23:16:02] <ermine> >.<
[23:17:18] <ermine> Kakadu: надо было в подкаталог вливать
[23:17:32] <Kakadu> я не умею...
[23:17:38] <Kakadu> а, пнял
[23:18:22] <ermine> Kakadu: это всё твое?
[23:18:31] <ermine> а то просто заряду вгет
[23:19:09] <Kakadu> ммм?
[23:19:17] <ermine> запустила вгет, он хоть пароль не требовал
[23:19:50] <ermine> потом видимо придется разгребать
[23:21:27] <ermine> шота там немного слилось
[23:21:33] <ermine> где всё остальное?
[23:21:54] <ermine> ой, процесс еще идет
[23:21:55] <Kakadu> а ты чтоо вгетишь?
[23:22:59] <ermine> весь камлунити, я забыла поставить -np
[23:23:11] <f[x]> Kakadu: rsync local ::swap/dir/
[23:23:16] <f[x]> и будет в каталоге
[23:23:38] <ermine> а так вроде своп и вгетлю
[23:23:41] <ermine> мрак
[23:24:34] <ermine> f[x]: а отключить ssh в rsync можно?
[23:26:25] <f[x]> ermine: покажи как запускаешь
[23:37:25] <ermine> таки два раза двоеточие надо
[23:38:31] <ermine> ну теперь буду знать :) спасибо
[23:46:04] Andrey Popp вошёл(а) в комнату
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!