Hi

Ok, so far I have this:

Depends: ${misc:Depends}, ${shlibs:Depends}, libc6, libexpat1,
libfontconfig1, libfreetype6, libgcc1, libgd2-xpm, libgmp10, libgmpxx4ldbl,
libgsl0ldbl, libjpeg-turbo8, libmpfr4, libpng12-0, libppl13, libppl-c4,
libpython2.7, libreadline6, libsqlite3-0, libssl1.0.0, libstdc++6,
libtinfo5, libx11-6, libxau6, libxcb1, libxdmcp6, libxpm4, zlib1g
Recommends: openssl, build-essential, gfortran, libgfortran3, imagemagick,
dvipng, texlive, texlive-pictures, icedtea-plugin
Suggests: m4, openssh-client, git

Regards,
Jan



On 20 April 2014 15:29, Jan Groenewald <j...@aims.ac.za> wrote:

> Hi
>
>
> On 20 April 2014 14:50, leif <not.rea...@online.de> wrote:
>
>> Jan Groenewald wrote:
>>
>>> On 19 April 2014 17:15, leif <not.rea...@online.de
>>> <mailto:not.rea...@online.de>> wrote:
>>>
>>>     Depends: build-essential, gfortran [probably also m4]
>>>
>>>
>>> Are build-essential and m4 not only from-source build dependencies? I
>>> would maybe move them to Suggests: Is there runtime functionality, a
>>> function you would call in the notebook, that would need build-essential
>>> and m4?
>>>
>>
>> Most probably not m4 (it's only needed in Sage to [re]build MPIR/GMP
>> IIRC), but any Cython code, e.g. also in a notebook cell, needs
>> build-essentials.
>>
>>
> OK, so Depends or Recommends: build-essentials, Suggests: m4
>
>
>>
>>
>>  Note the PPA is not ideal for installing optional packages. The relevant
>>> folders are owned by root, so the sage -i must be run as root, which is
>>> bad practice.
>>>
>>
>> So you'd have to sudo 'sage -b' as well?
>
>
> Everything. That is of course not recommended.
>
> I would suggest the best way to save over downloading the source code
> again, is to
> cp -R /usr/lib/sagemath/ ~/
> and then work further from there with alias mysage='~/sagemath/sage'
>
> But if you're developing, you may have enough bandwidth.
>
>
>>      (gfortran already depends on libgfortran3.)
>>>
>>>
>>> Right, gfortran and (or only) libgfortran are runtime dependencies for
>>> some functionality?
>>>
>>
>> Unless one wants to rebuild some packages using Fortran, I think
>> libgfortran is sufficient, but there may be doctests trying to run the
>> Fortran compiler, or scripts checking its presence, as well.
>
>
> doctests only run when you're doing make test?
> So perhaps Recommends: gfortran and Depends: libgfortran3
> Recommends will be installed on almost all systems.
>
>
>
>
>> It looks like it suggests on gfortran-multilib which depends on
>> libgfortran-4.8-multilib,
>>
>
> I don't think multilib stuff makes any sense (unless you e.g. ship the
>> optional KaSH3 package, which contains an x86 pre-built binary, but that's
>> statically linked).
>>
>>
>>
>>  Are there runtime functionalities, that is functions that will not work
>>> if imagemagick and openssh-client is not installed?
>>>
>>
>> Not sure about the former, but presumably yes.
>>
>
> Looks like at least animate() depends on imagemagick.
>
>
>>
>> OpenSSH client is for example needed to interact with Sage's git-trac.
>
>
> I guess normal users might do that to file a bug... openssh-client is
> already default on ubuntu-desktop though. So it does not really matter. It
> could go in Suggests.
>
>
>
>>
>>
>>
>>      (Note that openssh-client already depends on OpenSSL.  We could
>>>     still require it, but then I'd use libssl-dev.)
>>>
>>>
>>> I think libssl1 should at least be Suggests and perhaps Recommends. The
>>> PPA is really meant for a stanadalone laptop, not a server, but we teach
>>> our students how to start a secure server when SSHing into a computer
>>> lab desktop so they can connect from their laptop, which might become a
>>> general use case for us, or for example, to connect from a tablet.
>>>
>>
>> Well, for the PPA, you should IMHO build Sage's Python with libssl-dev
>> present, then libssl will be a runtime dependency, since Sage doesn't ship
>> it.  Or copy Trusty's versions into $SAGE_LOCAL/lib... ;-)
>> [Then including the optional PyOpenSSL into the build would also make
>> sense.]
>
>
> The PPA does not build anything. It copies the upstream binaries into
> place.
> However the Sage's Python is built in waterfall (the buildbot buildslave
> system) that is how it will be.
> I guess this could use further discussion. As far as I can tell the sage
> binaries are built able to use the system-wide for notebook(secure=True) so
> we should Depends or Recommends: openssl. I'm not familiar with the extra
> use of pyopenssl you mention above, or why copying ssl into LOCAL/lib will
> help any further functionality.
>
>
>>
>>
>>
>>  The PPA is not really meant for developers, but I guess that is fine. I
>>> certainly run the PPA and a from source next to each other to compare
>>> when there are bugs. I might be the only one.
>>>
>>
>> My impression is that at least /some/ Sage developers prefer to use the
>> PPA (or pre-built binaries) on their netbooks or (low-end) notebooks. And
>> on ARM machines ... X-)
>
>
> I would still suggest cp -R /usr/lib/sagemath ~/ for any development,
> leaving the PPA in /usr/lib untouched.
>
> I guess developers are more comfortable adding what they need
> afterwards... but in general I might not mind Recommending rather than
> Suggesting if most the community wants something.
>
> I run
> 1) PPA
> 2) binary from sagmath.org
> 3) source compile
>
> next to each other... for comparison to see if the PPA is to blame for
> something. I would not personally copy the PPA installation to compile from
> source -- it will not isolate an error.
>
> But the ARM is a good use case.
>
>
>
>>
>>
>>
>>      In the future, I'd also require libreadline-dev, but unfortunately
>>>     currently Sage doesn't even try to use a system-wide one (instead of
>>>     its meanwhile outdated version 6.2, asking for trouble at least on
>>>     other distros like Arch Linux and OpenSuSE).
>>>
>>> I feel like all of these should move to Recommends, so they get
>>> installed by default through the apt-get and software centre, but a
>>> sysadm could --without-recommends them if they want.
>>>
>>
>> Well, you should check (e.g. with ldd) what (system) libraries your
>> binaries depend on; those of course should be in "Depends:".
>>
>
>
> I can add these. Many are standard ubuntu installs.
>
> 0 jan@osprey:/usr/lib/sagemath/local/bin$for i in `ldd * |egrep '
> /lib|/usr/lib'|awk '{print $3}'|sort -u`; do dpkg -S $i; done|awk -F:
> '{print $1}'|sort -u
> libc6
> libexpat1
> libfontconfig1
> libfreetype6
> libgcc1
> libgd2-xpm
> libgmp10
> libgmpxx4ldbl
> libgsl0ldbl
> libjpeg-turbo8
> libmpfr4
> libpng12-0
> libppl13
> libppl-c4
> libpython2.7
> libreadline6
> libsqlite3-0
> libssl1.0.0
> libstdc++6
> libtinfo5
> libx11-6
> libxau6
> libxcb1
> libxdmcp6
> libxpm4
> zlib1g
> 0 jan@osprey:/usr/lib/sagemath/local/bin$
>
>
>
>
>
>>
>> But I don't know whether or which Sage packages (such as readline) you
>> replace by system ones.
>>
>>
>>
>>  Note, the only Build-Depends for the PPA DEB package, is actually only
>>> debhelper. It really just copies a compiled binary into place, as one
>>> would wiht a binary pacakge. The PPA is a stopgap for a few years until
>>> debianization is complete ;) It was way to hard to make a
>>> sagemath-monolithic that actually builds all the components through a
>>> debian rules file. And that is REALLY not the debian way.
>>>
>>
>> Yep, but as mentioned, as soon as Cython is involved, "using" Sage needs
>> build tools.
>>
>>
>> -leif
>>
>> P.S.:  Beat the Ubuntu guys for not releasing fixed versions of
>> Ubuntu/Linaro GCC 4.6.3 for Precise.  (They still ship the broken 1ubuntu5
>> IIRC, although the fixes had been there two years ago.)
>
>
> Precise or Trusty?
>
> Regards,
> Jan
> --
>   .~.
>   /V\     Jan Groenewald
>  /( )\    www.aims.ac.za
>  ^^-^^
>



-- 
  .~.
  /V\     Jan Groenewald
 /( )\    www.aims.ac.za
 ^^-^^

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to