Re: Update Hombrew install instructions on the web site

Thomas Leonard <[email protected]>
Newsgroups gmane.comp.file-systems.zero-install.devel
Message-ID <CAG4opy-xZwHDaAtWfpTBEvBT_L==xyEYc5OMBLLp1WcBzQaz9A@mail.gmail.com>
On 2 August 2015 at 12:51, Anders F Björklund <[email protected]> wrote:
> Thomas Leonard wrote:
>
>>> The idea is to make the 0install build self-contained, including opam libraries.
>>> Preferably it could run without the user having to mess with their home dir...
>>>
>>> It's easier when the packaging system handles everything, but brew doesn't do that.
>>> (And in that case, it is probably easier to "opam install 0install" than all this.)
>>>
>>>
>>> What we want is just enough so that the brew test bot can build "bottles" for us:
>>> https://github.com/Homebrew/homebrew/blob/master/share/doc/homebrew/Bottles.md
>>>
>>> And depending on unversioned modules isn't accepted, so they need to be versioned.
>>> Not that I know if (and how) you can get opam to install from local archives only ?
>>
>> There's an '$OPAMFETCH' variable that is used when it wants to
>> download something. Probably you could just put the archives in the
>> right place for it manually.
>
> I played with $OPAMCURL, which was more or less the same thing...
> The "resources" are a built-in way to handle the extra distfiles.
>
>> Do we need to bundle the archives in the package, or just their URLs?
>
> Just the URLs, and some checksum (sha256) for each download...
> At least that is how Homebrew _seems_ to prefer to do it (today).
>
> This formula (jrnl) is held up as an example on how to do things:
> https://github.com/Homebrew/homebrew/blob/master/Library/Formula/jrnl.rb
>
> It installs a bunch of pypi modules, in a local vendor site-packages.
> With the static ocaml libraries, it probably can live in the builddir.
>
>> If we need everything, we could just do the build, delete the
>> binaries, and archive up whatever remained in the .opam directory.
>
> I made a test, and it seems that you still need to "init" the opamroot
> and it would need to download the "urls.txt" and the "index.tar.gz" ?

If you've added the local clone of the repository, you can probably
remove the default one ("opam remote remove default"). That should
stop it trying to fetch any updates.

> And I don't really want to go through the hassle of having to maintain
> all the dependencies, and update them if there's new versions etc etc.

Yes, this does seem like an annoying requirement.

> It ended up failing on some unicode issue, as it always seems to do...
> Same old string vs. bytes failure that we know and love from python3.
> Not sure if that's just a feature from ocaml 4.02.3 and opam 1.2.2 or not ?
> Seemed to work the last time I tried it. And what was with lwt <= 2.4.6 ?

Lwt 2.4.7 changed a type from string to bytes I think, which broke the
build when using -safe-string:

  https://github.com/ocaml/opam-repository/pull/3456

Was fixed in the git version of 0install in Jan 2015. I should
probably make a new release at some point, but for now using the older
Lwt works. Or, you can apply this patch:

https://github.com/0install/0install/commit/5b32a90ed160c3523a46addd747a9c45a49f56ec

> https://opam.ocaml.org/packages/0install/0install.2.8/
>
> Will make a final attempt, or else just give up on it (leave it as-is)

Thanks,


-- 
Dr Thomas Leonard        http://roscidus.com/blog/
GPG: DA98 25AE CAD0 8975 7CDA  BD8E 0713 3F96 CA74 D8BA

------------------------------------------------------------------------------
_______________________________________________
Zero-install-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/zero-install-devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.