unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
From: "Vítor De Araújo" <vbuaraujo@sapo.pt>
To: guile-user@gnu.org
Subject: Re: How to make GNU Guile more successful
Date: Sat, 11 Mar 2017 00:02:09 -0300	[thread overview]
Message-ID: <58C368B1.50102@sapo.pt> (raw)
In-Reply-To: <58C349E2.6000103@sapo.pt>

On 10/03/2017 21:50, Vítor De Araújo wrote:
[...]
> I thought a little bit about the packages-as-urls idea and I had some
> ideas I'll just throw out here.
> 
> First, I realized using the URL as the package _name_ is problematic,
> because it hard-codes the source of the package; that complicates things
> if someone wants to make a fork of the package and install it in place
> of the original. However, packages can still have a normal name and a
> "canonical URL" for fetching it.
> 
> The package would come with a metadata file (named something like
> metadata.foopkg, where 'foopkg' is a placeholder for the name of the
> package manager (and I'd rather have the name of the package manager as
> an extension, because I'd rather not assume I'm the only package manager
> in the world)). This metadata would contain the package name, version,
> and dependencies. For each dependency, it would specify the package
> name, the version, *and the canonical URL* for that package. Upoin
> installation, the package manager would go through each dependency and
> check if a package of that name and compatible version (assuming
> semantic versioning) is already installed; if it's not, it would fetch
> it from the canonical URL.
> 
> In this way, we can have decentralized package management which can
> handle dependencies.
[...]

Just one more little thought on package names vs. URLs. Guile already
has a standard module system, and modules already have names which are
supposed to be globally unique, and even they even have version numbers.
So module names can double as package names. The advantage is that then
you can check whether a dependency is installed *whether or not it was
installed via the package manager*. Basically you'd describe your
dependencies in terms of modules, and specify where the package that
implements that module can be fetched from.

I have to think this through a bit more, though.

-- 
Vítor De Araújo




  reply	other threads:[~2017-03-11  3:02 UTC|newest]

Thread overview: 106+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-10  2:08 How to make GNU Guile more successful Vítor De Araújo
2017-03-10  9:55 ` Arne Babenhauserheide
2017-03-10 10:03   ` Panicz Maciej Godek
2017-03-10 14:27     ` vbuaraujo
2017-03-10 15:08       ` Panicz Maciej Godek
2017-03-11  7:19         ` Thien-Thi Nguyen
2017-03-13 15:55           ` Nala Ginrut
2017-03-13 16:14             ` Panicz Maciej Godek
2017-03-10 20:17 ` Amirouche
2017-03-10 20:27   ` Yet another GNU Guile package manager (Fwd: Re: How to make GNU Guile more successful) Amirouche
2017-03-11  1:56     ` Nala Ginrut
2017-03-11 16:49       ` Amirouche
2017-03-16  9:03         ` carl hansen
2017-03-16 12:07           ` Matt Wette
2017-03-16 21:15             ` Alex Kost
2017-03-11  0:50   ` How to make GNU Guile more successful Vítor De Araújo
2017-03-11  3:02     ` Vítor De Araújo [this message]
2017-03-11  7:42   ` Thien-Thi Nguyen
2017-03-14  3:26 ` Christopher Allan Webber
  -- strict thread matches above, loose matches on Subject: below --
2017-03-04 23:41 Alejandro Sanchez
2017-03-05  0:23 ` Arne Babenhauserheide
2017-03-05  8:23   ` Thien-Thi Nguyen
2017-03-05 14:19     ` Arne Babenhauserheide
2017-03-05  3:09 ` Erik Edrosa
2017-03-05 11:57   ` Jan Wedekind
2017-03-07  3:29     ` Erik Edrosa
2017-03-05 14:27   ` Arne Babenhauserheide
2017-03-05 16:43     ` Nala Ginrut
2017-03-05 23:46       ` Alejandro Sanchez
2017-03-06  9:00         ` Arne Babenhauserheide
2017-03-06  1:31       ` Matt Wette
2017-03-07  4:07     ` Erik Edrosa
2017-03-05  9:40 ` David Kastrup
2017-02-20  6:05 Michael Vehrs
2017-02-20 20:41 ` Arne Babenhauserheide
2017-02-21  6:01   ` Michael Vehrs
2017-02-21 17:18     ` Arne Babenhauserheide
2017-02-21 18:19       ` Amirouche
2017-02-21 18:31         ` Mike Gran
2017-02-21 18:33           ` Amirouche
2017-02-21 18:41             ` Mike Gran
2017-02-21 18:15     ` Amirouche
2017-02-21 19:25       ` Arne Babenhauserheide
2017-03-01 19:25         ` Amirouche
2017-03-03  5:28           ` Nala Ginrut
2017-03-03  9:18             ` David Kastrup
2017-03-03 11:30               ` Nala Ginrut
2017-03-03 12:19                 ` David Kastrup
2017-03-03 13:35                   ` Nala Ginrut
2017-03-04 23:44               ` Arne Babenhauserheide
2017-03-05  2:05                 ` Thomas Morley
2017-03-05 14:01                   ` Thomas Morley
2017-03-05 14:09                     ` David Kastrup
2017-03-05 14:13                       ` Thomas Morley
2017-03-05 14:27                     ` Thomas Morley
2017-03-03 17:21             ` Matt Wette
2017-03-03 19:09               ` Amirouche
2017-03-03 19:16               ` Amirouche
2017-03-03 19:24                 ` Mike Gran
2017-03-03 20:10                   ` Matt Wette
2017-03-03 20:09                 ` Matt Wette
2017-02-22  5:51     ` Michael Vehrs
2017-02-18  1:04 sirgazil
     [not found] ` <6315ebf51aec83aaff1c7fbbec685c0b@openmailbox.org>
2017-02-18 15:29   ` sirgazil
2017-02-18 16:55     ` David Pirotte
2017-02-19 18:09       ` sirgazil
2017-02-20  1:00         ` David Pirotte
2017-02-12 23:56 Amirouche
2017-02-13  0:21 ` Amirouche
2017-02-13 11:06 ` Arne Babenhauserheide
2017-02-13 12:14   ` Arne Babenhauserheide
2017-02-13 20:20   ` Amirouche
2017-02-13 23:08     ` Arne Babenhauserheide
2017-02-13 20:28   ` Panicz Maciej Godek
2017-02-13 20:42     ` Amirouche
2017-02-13 22:34     ` Marko Rauhamaa
2017-02-13 23:56       ` Arne Babenhauserheide
2017-02-14  0:18         ` David Kastrup
2017-02-14 22:21           ` Arne Babenhauserheide
2017-02-15 17:03           ` Christopher Allan Webber
2017-02-16 19:18             ` sirgazil
2017-02-16 20:26               ` Amirouche
2017-02-14  5:59         ` Marko Rauhamaa
2017-02-14 19:36           ` Linas Vepstas
2017-02-14 20:54             ` Marko Rauhamaa
2017-02-14 22:20           ` Arne Babenhauserheide
2017-02-13 22:54     ` Arne Babenhauserheide
2017-02-14  9:54       ` Panicz Maciej Godek
2017-02-14 21:35         ` Arne Babenhauserheide
2017-03-01 19:21           ` Amirouche
2017-03-10 20:23             ` Amirouche
2017-07-14 21:54     ` Linas Vepstas
2017-07-14 21:59       ` Marko Rauhamaa
2017-07-15 10:10       ` Jan Wedekind
2017-07-15 12:55         ` Nala Ginrut
2017-07-15 12:58           ` Nala Ginrut
2017-07-15 22:17           ` Jan Wedekind
2017-07-16  9:54             ` Nala Ginrut
2017-07-17 18:52         ` Arun Isaac
2017-07-18 11:22         ` Ernest Adrogué
2017-07-16  8:30       ` Freja Nordsiek
2017-07-16  9:18         ` Marko Rauhamaa
2017-07-16 10:11           ` Freja Nordsiek
2017-07-16 10:31             ` Marko Rauhamaa
2017-07-16 10:39               ` Freja Nordsiek
2017-07-16 10:45                 ` Freja Nordsiek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/guile/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=58C368B1.50102@sapo.pt \
    --to=vbuaraujo@sapo.pt \
    --cc=guile-user@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).