comp.lang.ada
 help / color / mirror / Atom feed
From: Mart van de Wege <mvdwege@gmail.com>
Subject: Re: Ada package registry?
Date: Sun, 31 Jan 2016 16:52:42 +0100
Date: 2016-01-31T16:52:42+01:00	[thread overview]
Message-ID: <86a8nlg305.fsf@gaheris.avalon.lan> (raw)
In-Reply-To: n8kedv$1b4a$1@gioia.aioe.org

"Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de> writes:

> On 2016-01-30 23:14, Tero Koskinen wrote:
>
>> Usually the repositories are maintained in "wiki"-style and anyone can
>> update the package details (within certain limits). This causes some
>> security concerns/implications, but in general there is not that much
>> abuse and the repositories work well enough.
>>
>> The package repository management tool is used like this:
>>
>>   $ language_package_mananager install X
>>   Downloading dependencies for 'X', please wait a while...
>>   Downloading X...
>>   Package 'X' installed!
>>   $
>
> Yes, the problem is to have it working.
>
>> Once the package (a library usually) is installed (to your home
>> directory), you can link it to your program and simply use it.
>
> No, that the point. It cannot be installed in your home directory. It
> must be in the directories mandated by the target system
> policy. E.g. for Debian Linux:
>
> https://people.debian.org/~lbrenta/debian-ada-policy.html#Files-provided-by-the-_002ddev-package
>
Nope. I am most familiar with Perl, so I shall use that as an example
throughout.

Installing CPAN packages through the CPAN manager requires you to either
adjust the PERLLIB environment variable, or to add a 'use lib' pragma to
your code.

Managing ADA_INCLUDE_PATH in an Ada equivalent would not be much
different.

Plus, as in CPAN, if the libraries are laid out along a standard policy,
it would be easy to provide tools to build system-local packages, like
dh_make_perl does for Perl on Debian.

>> People using other programming languages have managed to create
>> these package repositories, so it is a shame if Ada programmers
>> cannot manage to do the same.
>
> I guess these are scripting languages and pure packages having no
> access to the system environment otherwise than through the language
> run-time. There is no problem to do same for GNAT. That is not Ada
> case. Most Ada packages do access platform-specific non-Ada
> libraries. Pure Ada packages face no problem, if gpr file is provided.
>
This is not unique to Ada. Perl also has packages that require non-Perl
libraries to be available, like XML::LibXML and Text::CSV::XS. The first
has a dependency on libxml2, the second brings its own C code that must
be compiled and then accessed from the Perl module.

In both cases a hard build dependency on a working gcc environment
exists; it is the end-user's responsibility to make sure it does exist
and that the proper header files for the dependencies are installed.

Really, this is not a new issue. It is solvable, if you let go of the
NIH mentality.

Mart

-- 
"We will need a longer wall when the revolution comes."
    --- AJS, quoting an uncertain source.


  reply	other threads:[~2016-01-31 15:52 UTC|newest]

Thread overview: 132+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-29  1:13 Ada package registry? olivier.henley
2016-01-29  3:43 ` gautier_niouzes
2016-01-29 22:06   ` Randy Brukardt
2016-01-30 17:21     ` Dirk Heinrichs
2016-01-29 14:20 ` David Botton
2016-01-29 22:27 ` Randy Brukardt
2016-01-30  7:35   ` Dmitry A. Kazakov
2016-01-30 22:14     ` Tero Koskinen
2016-01-31  7:51       ` Dmitry A. Kazakov
2016-01-31 15:52         ` Mart van de Wege [this message]
2016-01-31 16:21           ` Dmitry A. Kazakov
2016-01-31 19:16             ` olivier.henley
2016-02-01 23:22       ` Randy Brukardt
2016-02-05 19:52         ` Tero Koskinen
2016-02-05 20:42           ` Dmitry A. Kazakov
2016-02-06  1:25           ` Randy Brukardt
2016-02-06  6:09             ` Jeffrey R. Carter
2016-02-08 22:54               ` Randy Brukardt
2016-02-06 23:08             ` AdaMagica
2016-02-07  7:08             ` gautier_niouzes
2016-02-07  8:50             ` gautier_niouzes
2016-02-08 22:58               ` Randy Brukardt
2016-02-07 10:24             ` gautier_niouzes
2016-01-31 19:10 ` olivier.henley
2016-02-02  0:44   ` Randy Brukardt
2016-02-02 18:45     ` Shark8
2016-02-02 20:14       ` gautier_niouzes
2016-02-02 20:46         ` Shark8
2016-02-02 21:32           ` gautier_niouzes
2016-02-03  4:21             ` Shark8
2016-02-03  9:39               ` Georg Bauhaus
2016-02-02 22:51       ` Randy Brukardt
2016-02-03  4:16         ` Shark8
2016-02-01  8:30 ` Thomas Løcke
2016-02-01  9:32   ` Georg Bauhaus
2016-02-02  8:54     ` Thomas Løcke
2016-02-02 14:51       ` jsquirek
2016-02-02 18:25         ` Dmitry A. Kazakov
2016-02-02 20:05         ` gautier_niouzes
2016-02-02 20:58         ` Björn Lundin
2016-02-02 23:06       ` Randy Brukardt
2016-02-03  7:15         ` Pascal Obry
2016-02-03 22:11           ` Randy Brukardt
2016-02-04  6:51             ` Pascal Obry
2016-02-04 20:52               ` Randy Brukardt
2016-02-05  7:11                 ` Pascal Obry
2016-02-06  1:11                   ` Randy Brukardt
2016-02-04  9:05             ` Dmitry A. Kazakov
2016-02-04  9:20               ` Mark Carroll
2016-02-04 12:58               ` Nasser M. Abbasi
2016-02-04 21:03               ` Randy Brukardt
2016-02-05  8:31                 ` Dmitry A. Kazakov
2016-02-04 16:52             ` Björn Lundin
2016-02-04 16:59               ` Dmitry A. Kazakov
2016-02-04 17:29                 ` Björn Lundin
2016-02-04 21:21                   ` Randy Brukardt
2016-02-04 22:04                     ` Björn Lundin
2016-02-05  8:51                       ` Dmitry A. Kazakov
2016-02-05 22:06                         ` Björn Lundin
2016-02-06  0:30                       ` Randy Brukardt
2016-02-06 23:26                         ` Björn Lundin
2016-02-07  0:16                           ` Jeffrey R. Carter
2016-02-07  8:02                             ` Dmitry A. Kazakov
2016-02-07  8:36                               ` gautier_niouzes
2016-02-07  8:52                                 ` Dmitry A. Kazakov
2016-02-07 10:06                                   ` gautier_niouzes
2016-02-07 10:23                                     ` Dmitry A. Kazakov
2016-02-07 20:02                                       ` Björn Lundin
2016-02-08  8:19                                         ` Dmitry A. Kazakov
2016-02-07 10:00                               ` Georg Bauhaus
2016-02-07 10:18                                 ` Dmitry A. Kazakov
2016-02-07 19:27                                   ` Georg Bauhaus
2016-02-07 19:47                                     ` Georg Bauhaus
2016-02-07 19:54                                     ` Dmitry A. Kazakov
2016-02-07 22:56                                       ` Georg Bauhaus
2016-02-08  8:22                                         ` Dmitry A. Kazakov
2016-02-07 20:11                                 ` Björn Lundin
2016-02-07 22:11                                   ` Georg Bauhaus
2016-02-08  8:16                                     ` Björn Lundin
2016-02-07 19:57                               ` Björn Lundin
2016-02-08  8:25                                 ` Dmitry A. Kazakov
2016-02-08 22:42                               ` Randy Brukardt
2016-02-07 20:07                             ` Björn Lundin
2016-02-08  8:38                               ` Dmitry A. Kazakov
2016-02-08 18:24                                 ` Björn Lundin
2016-02-08 22:38                           ` Randy Brukardt
2016-02-09 20:56                             ` Björn Lundin
2016-02-05 12:54                     ` G.B.
2016-02-05 13:27                       ` Dmitry A. Kazakov
2016-02-05 15:53                         ` G.B.
2016-02-05 16:45                           ` Dmitry A. Kazakov
2016-02-05 17:58                             ` G.B.
2016-02-05 18:47                               ` Dmitry A. Kazakov
2016-02-07  9:40                                 ` Georg Bauhaus
2016-02-07 10:13                                   ` Dmitry A. Kazakov
2016-02-07 19:21                                     ` Georg Bauhaus
2016-02-07 19:57                                       ` Dmitry A. Kazakov
2016-02-07 22:16                                         ` Georg Bauhaus
2016-02-08  8:20                                           ` Björn Lundin
2016-02-08  9:03                                           ` Dmitry A. Kazakov
2016-02-08 10:08                                             ` G.B.
2016-02-08 13:42                                               ` Dmitry A. Kazakov
2016-02-06  0:49                       ` Randy Brukardt
2016-02-07  8:42                         ` Georg Bauhaus
2016-02-04 21:09               ` Randy Brukardt
2016-02-05  8:59                 ` Dmitry A. Kazakov
2016-02-06  0:04                   ` Randy Brukardt
2016-02-06  8:54                     ` Dmitry A. Kazakov
2016-02-08 23:02                       ` Randy Brukardt
2016-02-09  8:50                         ` Dmitry A. Kazakov
2016-02-11  1:37                           ` Randy Brukardt
2016-02-11  8:25                             ` Dmitry A. Kazakov
2016-02-11 22:00                               ` Randy Brukardt
2016-02-06 18:48 ` olivier.henley
2016-02-09  0:05   ` Randy Brukardt
2016-02-09  3:50     ` Shark8
2016-02-11  1:40       ` Randy Brukardt
2016-02-09  8:04     ` Thomas Løcke
2016-02-09 13:33       ` Alejandro R. Mosteo
2016-02-09 14:58         ` Shark8
2016-02-11  1:46         ` Randy Brukardt
2016-02-11  5:19           ` Shark8
2016-02-09 18:08       ` Jeffrey R. Carter
2016-02-09 21:00         ` Shark8
2016-02-09 21:07     ` Björn Lundin
2016-02-09 21:31       ` Shark8
2016-02-09 23:47         ` Jeffrey R. Carter
2016-02-10  5:10         ` J-P. Rosen
2016-02-11  1:51       ` Randy Brukardt
2016-02-12 16:05 ` Alejandro R. Mosteo
2016-02-13  5:42   ` olivier.henley
2016-02-13 12:20     ` Alejandro R. Mosteo
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox