From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr Received: from mail1-relais-roc.national.inria.fr (mail1-relais-roc.national.inria.fr [192.134.164.82]) by sympa.inria.fr (Postfix) with ESMTPS id 477537EEAF for ; Fri, 18 Jan 2013 11:46:42 +0100 (CET) Received-SPF: None (mail1-smtp-roc.national.inria.fr: no sender authenticity information available from domain of fabrissimo@gmail.com) identity=pra; client-ip=209.85.214.41; receiver=mail1-smtp-roc.national.inria.fr; envelope-from="fabrissimo@gmail.com"; x-sender="fabrissimo@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail1-smtp-roc.national.inria.fr: domain of fabrissimo@gmail.com designates 209.85.214.41 as permitted sender) identity=mailfrom; client-ip=209.85.214.41; receiver=mail1-smtp-roc.national.inria.fr; envelope-from="fabrissimo@gmail.com"; x-sender="fabrissimo@gmail.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail1-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-bk0-f41.google.com) identity=helo; client-ip=209.85.214.41; receiver=mail1-smtp-roc.national.inria.fr; envelope-from="fabrissimo@gmail.com"; x-sender="postmaster@mail-bk0-f41.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AqUBANcm+VDRVdYpjmdsb2JhbABFvjYWDgEBAQEJCwkJEgYjgh4BAQU4CAEbHAIDDAYFCw0JFg8JAwIBAgEREQEFARwTBgIBAYgCAQMPBAieG4w0gnuFFAoZJw1Zh3wBBQyOBIMpA5YMgRyET4h9P4QY X-IronPort-AV: E=Sophos;i="4.84,491,1355094000"; d="scan'208";a="190538538" Received: from mail-bk0-f41.google.com ([209.85.214.41]) by mail1-smtp-roc.national.inria.fr with ESMTP/TLS/RC4-SHA; 18 Jan 2013 11:46:41 +0100 Received: by mail-bk0-f41.google.com with SMTP id jg9so1905530bkc.28 for ; Fri, 18 Jan 2013 02:46:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:message-id:date:from:user-agent:mime-version:to:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=Luf2oYNPzEg5iw6B0bfnRkshEhcbhPiEchy40SljyhA=; b=iCBYXN/FAN3jAYiooQvfq7PykpF4SdRmZLBCDleKYhc3cb8DeZT+Od8diwgR3shVfl hJYWMnPZODDA+gh+8w0cmmxkn32NWO7V86ra0Pha4IfN6EwCxVQj+uuSJ2FDmItvJuwb 2abSo+jamlU0iZpfIVoCDBrk4fNmF//bLmIyMLC7FkycAB3+f3R0Qc1BxuvZ2GUPtW5N 7/VAg03mxvWdvVIoCtffdYDqVG6crcmi1jVo6tKCqItd6OdoCHpEp2qkLx4gcjn2G/Aq fEm7yhFfyc5JKu/33FwGTK4UYxqPeYIPqcgmOksezfIOCLzuCpB3eF1cgeVhD/oghnof UwkA== X-Received: by 10.204.151.21 with SMTP id a21mr2394024bkw.124.1358506001229; Fri, 18 Jan 2013 02:46:41 -0800 (PST) Received: from [193.55.250.252] (chercheurs2-252.saclay.inria.fr. [193.55.250.252]) by mx.google.com with ESMTPS id e22sm3337806bke.14.2013.01.18.02.46.39 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 18 Jan 2013 02:46:40 -0800 (PST) Message-ID: <50F9280F.8070707@gmail.com> Date: Fri, 18 Jan 2013 11:46:39 +0100 From: Fabrice Le Fessant User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130106 Thunderbird/17.0.2 MIME-Version: 1.0 To: caml-list@inria.fr References: <6833F17C-B642-4ED9-8C8F-2665A9742845@ocamlpro.com> <50F831B6.6020404@frisch.fr> <224865B3-055C-4E03-AA42-9F962AD516D7@recoil.org> <50F92486.2020704@frisch.fr> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Validation-by: fabrice.le_fessant@inria.fr Subject: Re: [Caml-list] [ANN] beta-release of OPAM Have we started an FAQ for OPAM ? Sounds like the two questions and answers would deserve to be included in such an FAQ (with a copy on StackOverflow). --Fabrice On 01/18/2013 11:42 AM, Anil Madhavapeddy wrote: > On 18 Jan 2013, at 10:31, Alain Frisch wrote: > >> On 01/17/2013 06:22 PM, Anil Madhavapeddy wrote: >>> I added `opam switch 4.01.0dev+trunk` recently, which will grab the latest trunk snapshot. >>> To reinstall it and refresh to a newer snapshot, just do `opam switch reinstall 4.01.0dev+trunk`, which will also attempt to recompile any packages you had in there before. >> >> Thanks, this is exactly what I wanted! >> >> Shouldn't the package be called simply "trunk", without a reference to a version number? > > Yeah, but OPAM also has compiler version constraints, so that you can mark a package as requiring {>=4.00} for example. If the package is just marked trunk, then we need to manually record the version number somewhere. > > One option is to have a very high version, so that any packages with a lower bound will continue to work. The other option (which I chose) is to pick the current working version, since compiler releases only happen a couple of times a year. We can improve on this... > >> I've started to play with opam a little bit, and it's a surprisingly pleasant experience. Thanks to everyone who contributed to this project! >> >> Now I want to create my first package. I've followed the instructions from http://opam.ocamlpro.com/doc/Packaging.html but I don't know where to find opam-mk-repo (I've installed opam from the amd64 linux binary). > > (that binary is hopefully just a stopgap until the OPAM binary packages become more widely available) > > opam-mk-repo is installed as part of OPAM, so you'll need to install from source. However, you don't actually need to create a repository unless you want to host a mirror of the tarballs. Simply try this: > > $ mkdir -p my-repo/packages > $ opam remote add localdev my-repo > > $ opam update > > $ opam install > > The same applies for compilers. > > If you specify a git:// or darcs:// URL in the package `url` file, a subsequent `opam update` will refresh the working copy from the remote source. > > If you want to work with a local copy of that package, just do `opam pin `. > > If you want the bleeding edge version of a stable package, you can even do `opam pin git://foo/bar`. > > Quite the swiss-army knife, but each of those scenarios has come in useful at one point or another, particularly when hacking on Mirage which requires rebuilding lots of forward dependencies if (e.g.) a network driver library is being modified. > > -anil >