Re: [QGIS-Developer] Ubuntu Package Releases and GDAL Dependencies

2018-01-11 Thread Sebastiaan Couwenberg
On 01/11/2018 11:19 PM, Jeremy Palmer wrote:
> On Fri, Jan 12, 2018 at 8:54 AM, Sebastiaan Couwenberg 
> wrote:
> 
>> When you need newer versions of the core geospatial libraries like GEOS
>> & GDAL than what is provided in the Ubuntu LTS releases, you'll need
>> some 3rd party repository because Ubuntu doesn't provide backports. The
>> geospatial packages in Ubuntu are actually not actively maintained at
>> all, active maintenance only happens in Debian and Ubuntu just copies
>> its packages from Debian.
> 
> But I assume Ubuntu universe and multiverse packages could be better
> maintained if someone stepped up to do it.

Yes, but has not happened yet. It seems that people need to be employed
to work on Ubuntu, no one has volunteered to do so.

And this makes sense, Ubuntu is a corporate backed distribution unlike
Debian. And many corporate users choose Ubuntu over Debian because of
that. Why volunteer to do work in that environment when you could be
paid to do so?

>> The nature of LTS releases is that they don't change the versions of the
>> packages they provide, Debian stable, Ubuntu LTS and RedHat/CentOS don't
>> differ much in the respect.
>>
>> When the users of those distributions do have a need for newer packages
>> they need to get backports somehow, either through some 3rd party
>> repository over which they have no control, or their own in-house
>> repository which they do control. The latter is the best option to
>> prevent any surprises when the repository gets new versions, it does
>> require integration work to rebuild all related packages to work with
>> the new versions of the libraries in question.
>>
>>> I'm not sure if this problem is something that can be done by OSGEO or
>>> some
>>> other alliance of companies. My feeling is no one company can currently
>>> provide this service as it requires expertise across the full stack, or
>>> enough scale in business to centralise support for the whole stack.
>>
>> As long as the geospatial packages in Debian and UbuntuGIS are
>> maintained by volunteers the users of those packages can't expect more
>> than work on a best effort basis. No one is employed to maintain these
>> packages for the wider community, although there seems to be a need at
>> least for corporate Ubuntu users. Mapgears sponsored work on UbuntuGIS
>> in the past, but that was apparently not successful enough to continue.
> 
> Understood. Maybe Snaps is the solution to all of this, as it provides
> binaries for a larger user base. I'm interested on the community view on
> this.

Snaps and containers just complicate maintenance, you'll have many more
images to update to fix security issues in the packages they contain.

That's the major downside of the isolation they provide.

>> One of the benefits of open source is that companies are not dependent
>> on suppliers, and can employ people to the needed work in-house.
> 
> In regards to not being locked into companies, I don't see that providing
> more robust community packaging is going to change this situation.
> 
>> This work can be shared with the community, but generally corporate needs
>> differ quite a bit from community needs and
> 
> I'm not really clear what the community vs corporate difference are. What
> are they? I would say that it's a very grey area between who's community
> and who's corporate.

Corporate users have schedules, deadlines and financial interests (e.g.
selling support/training), community users (e.g. volunteers and
hobbyists) generally don't.

>> its cheaper to just keep it all in-house.
> 
> IMHO I don't think this is the case, at least for software with a large
> user base. I also think this approach means that the QGIS LINUX desktop
> uptake for anything other than very large organisations or software
> developers will be low. Look at the Windows and MacOSX environment (even in
> personal home usage), packaging is done once by the provider of the product
> then users will use that packaging without modification. I think many small
> to medium size organisation couldn't justify the resources to employ
> someone to do packaging.

Participating in open source projects for a company generally pays off
when they can share the burden. When a single company supports an open
source project they don't have the benefit of many shoulders lessening
the burden.

I don't know any Windows & OSX users that only use the software included
in Windows & OSX. They all use additional software from elsewhere, and
in the case of OSX generally from open source projects like MacPorts and
Homebrew.

Most users of any software are just that, users. They don't need to
modify it for their needs, they make do with what they have. For the
other users there is open source to adapt to their needs.

In house packaging is not a full time job, it will be among the tasks
for someone doing system engineering or development most likely.

>> I don't understand the question.
>>
>> The version requirement in the dependencies reflect t

Re: [QGIS-Developer] Ubuntu Package Releases and GDAL Dependencies

2018-01-11 Thread Jeremy Palmer
Hi Bas,

On Fri, Jan 12, 2018 at 8:54 AM, Sebastiaan Couwenberg 
wrote:

>
> When you need newer versions of the core geospatial libraries like GEOS
> & GDAL than what is provided in the Ubuntu LTS releases, you'll need
> some 3rd party repository because Ubuntu doesn't provide backports. The
> geospatial packages in Ubuntu are actually not actively maintained at
> all, active maintenance only happens in Debian and Ubuntu just copies
> its packages from Debian.
>

But I assume Ubuntu universe and multiverse packages could be better
maintained if someone stepped up to do it.


>
> The nature of LTS releases is that they don't change the versions of the
> packages they provide, Debian stable, Ubuntu LTS and RedHat/CentOS don't
> differ much in the respect.
>
> When the users of those distributions do have a need for newer packages
> they need to get backports somehow, either through some 3rd party
> repository over which they have no control, or their own in-house
> repository which they do control. The latter is the best option to
> prevent any surprises when the repository gets new versions, it does
> require integration work to rebuild all related packages to work with
> the new versions of the libraries in question.
>
> > I'm not sure if this problem is something that can be done by OSGEO or
> some
> > other alliance of companies. My feeling is no one company can currently
> > provide this service as it requires expertise across the full stack, or
> > enough scale in business to centralise support for the whole stack.
>
> As long as the geospatial packages in Debian and UbuntuGIS are
> maintained by volunteers the users of those packages can't expect more
> than work on a best effort basis. No one is employed to maintain these
> packages for the wider community, although there seems to be a need at
> least for corporate Ubuntu users. Mapgears sponsored work on UbuntuGIS
> in the past, but that was apparently not successful enough to continue.


Understood. Maybe Snaps is the solution to all of this, as it provides
binaries for a larger user base. I'm interested on the community view on
this.

One of the benefits of open source is that companies are not dependent

on suppliers, and can employ people to the needed work in-house.


In regards to not being locked into companies, I don't see that providing
more robust community packaging is going to change this siutation.


> This work can be shared with the community, but generally corporate needs

differ quite a bit from community needs and


I'm not really clear what the community vs corporate difference are. What
are they? I would say that it's a very grey area between who's community
and who's corporate.


> its cheaper to just keep it all in-house.


IMHO I don't think this is the case, at least for software with a large
user base. I also think this approach means that the QGIS LINUX desktop
uptake for anything other than very large organisations or software
developers will be low. Look at the Windows and MacOSX environment (even in
personal home usage), packaging is done once by the provider of the product
then users will use that packaging without modification. I think many small
to medium size organisation couldn't justify the resources to employ
someone to do packaging.


> I don't understand the question.
>
> The version requirement in the dependencies reflect the minimum version
> the code in the dependent package requires to work with the library.
> Some parts of qgis use features introduced in GDAL 2.x whereas other
> parts don't use features introduced after GDAL 1.8.0. Because the
> various parts of qgis are split into separate packages you get the
> different version requirement for gdal for those parts.
>
> There is generally only a single gdal package in the repositories like
> in Debian and Ubuntu. Only when one adds a 3rd party repository like
> UbuntuGIS is another version of the gdal package available, and you get
> integration issues like qgis being uninstallable with the UbuntuGIS
> dependencies after gdal is updated there but qgis hasn't been rebuilt
> with the new version yet.
>

I think I understand better now. But if the package name includes the
version number e.g libgdal20 or abi-2-2-2 and that's package is a QGIS
dependency, how can having a lower ABI version requirement below the
package version name make any difference? I do except that libgdal20
(>=2.1) does make some sense, but libgdal20 (>=1.8) seems to be silly.

Cheers,
Jeremy
___
QGIS-Developer mailing list
QGIS-Developer@lists.osgeo.org
List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer

Re: [QGIS-Developer] Ubuntu Package Releases and GDAL Dependencies

2018-01-11 Thread Sebastiaan Couwenberg
On 01/11/2018 08:23 PM, Jeremy Palmer wrote:
>> You should have a look at UbuntuGIS development to see that it is mostly
>> the work of one person now. Packages are updated for OSGeo-Live and copied
>> to ubuntugis-unstable, after a while (no policy or guidelines) the packages
>> from ubuntugis-unstable get copied to ubuntugis-stable.
>> This generally happens during an Ubuntu releases lifecycle, not ideal for
>> production systems.
>>
> 
> Thanks for the information. Good points.
> 
>> For production systems one should not rely on 3rd party repositories,
>> other than the one the company maintains itself where it does all the
>> integration work.
> 
> This is where I'm a little on the fence. I would much rather do it well for
> all of the community, than just for my organisation. At the end of the day
> my organisation doesn't need to apply special patches for our desktop
> usage. But I agree applications that are developed using these libraries or
> require core customisation definitely need a in-house managed repository.
> 
> Our organisation needs to have a QGIS LTS release supported that works on a
> Ubuntu LTS release. Correct me if I'm wrong, but QGIS.org seems to provide
> this now with the current release/LTS Debian repositories. It's the QGIS
> critical dependencies which have varying policies of support that are the
> problem. This seems to be a problem of resources/volunteers at the project
> and the distribution packaging level. For example in the GDAL project, 1.10
> and 1.11, which are the current GDAL versions in Ubuntu 14.04 and 16.04
> haven't been maintained for many years. Only 2.2.X seems to be getting any
> current support currently (thanks Even!). I guess this is part of the wider
> problem that was identified by Paul Ramsey in
> http://blog.cleverelephant.ca/2017/08/foss4g-keynote.html. Somehow we need
> to solve this for the wider geospatial OS community.

When you need newer versions of the core geospatial libraries like GEOS
& GDAL than what is provided in the Ubuntu LTS releases, you'll need
some 3rd party repository because Ubuntu doesn't provide backports. The
geospatial packages in Ubuntu are actually not actively maintained at
all, active maintenance only happens in Debian and Ubuntu just copies
its packages from Debian.

The nature of LTS releases is that they don't change the versions of the
packages they provide, Debian stable, Ubuntu LTS and RedHat/CentOS don't
differ much in the respect.

When the users of those distributions do have a need for newer packages
they need to get backports somehow, either through some 3rd party
repository over which they have no control, or their own in-house
repository which they do control. The latter is the best option to
prevent any surprises when the repository gets new versions, it does
require integration work to rebuild all related packages to work with
the new versions of the libraries in question.

> I'm not sure if this problem is something that can be done by OSGEO or some
> other alliance of companies. My feeling is no one company can currently
> provide this service as it requires expertise across the full stack, or
> enough scale in business to centralise support for the whole stack.

As long as the geospatial packages in Debian and UbuntuGIS are
maintained by volunteers the users of those packages can't expect more
than work on a best effort basis. No one is employed to maintain these
packages for the wider community, although there seems to be a need at
least for corporate Ubuntu users. Mapgears sponsored work on UbuntuGIS
in the past, but that was apparently not successful enough to continue.

One of the benefits of open source is that companies are not dependent
on suppliers, and can employ people to the needed work in-house. This
work can be shared with the community, but generally corporate needs
differ quite a bit from community needs and its cheaper to just keep it
all in-house.

>>> I've also noted that the 2.18 binaries produced for the 14.04 and
>>> 16.04 packaging has inconsistent dependency requirements. e.g 2.18.15
>>> 14.04 64bit :
>>>
>>> qgis - gdal-abi-2-2-2, libgdal20 (>= 1.8.0) qgis-providers = libgdal20
>>> (>= 2.2.0) qgis-server - libgdal20 (>= 1.8.0) libqgis-dev -
>>> libgdal-dev (>= 1.10.1-0~) libqgis-core - libgdal20 (>= 2.2.0)
>>> libqgis-app2 libgdal20 (>= 2.0.1)
>>
>> The version requirement for libgdal20 are determined based on which
>> symbols the code in the dependent package uses, qgis & qgis-servers don't
>> use any symbols introduced after GDAL 1.8.0, libqgis-dev does but no
>> symbols introduced after GDAL 1.10.1, etc.
> 
> Ok thanks. What's the practical use of this approach if it's tied to
> gdal-abi-2-2-2 anyway?

I don't understand the question.

The version requirement in the dependencies reflect the minimum version
the code in the dependent package requires to work with the library.
Some parts of qgis use features introduced in GDAL 2.x whereas other
parts don't use features introduced

Re: [QGIS-Developer] Ubuntu Package Releases and GDAL Dependencies

2018-01-11 Thread Jeremy Palmer
>
> Hi Bas,


> You should have a look at UbuntuGIS development to see that it is mostly
> the work of one person now. Packages are updated for OSGeo-Live and copied
> to ubuntugis-unstable, after a while (no policy or guidelines) the packages
> from ubuntugis-unstable get copied to ubuntugis-stable.
> This generally happens during an Ubuntu releases lifecycle, not ideal for
> production systems.
>

Thanks for the information. Good points.


>
> For production systems one should not rely on 3rd party repositories,
> other than the one the company maintains itself where it does all the
> integration work.
>

This is where I'm a little on the fence. I would much rather do it well for
all of the community, than just for my organisation. At the end of the day
my organisation doesn't need to apply special patches for our desktop
usage. But I agree applications that are developed using these libraries or
require core customisation definitely need a in-house managed repository.

Our organisation needs to have a QGIS LTS release supported that works on a
Ubuntu LTS release. Correct me if I'm wrong, but QGIS.org seems to provide
this now with the current release/LTS Debian repositories. It's the QGIS
critical dependencies which have varying policies of support that are the
problem. This seems to be a problem of resources/volunteers at the project
and the distribution packaging level. For example in the GDAL project, 1.10
and 1.11, which are the current GDAL versions in Ubuntu 14.04 and 16.04
haven't been maintained for many years. Only 2.2.X seems to be getting any
current support currently (thanks Even!). I guess this is part of the wider
problem that was identified by Paul Ramsey in
http://blog.cleverelephant.ca/2017/08/foss4g-keynote.html. Somehow we need
to solve this for the wider geospatial OS community.

I'm not sure if this problem is something that can be done by OSGEO or some
other alliance of companies. My feeling is no one company can currently
provide this service as it requires expertise across the full stack, or
enough scale in business to centralise support for the whole stack.


>
> > I've also noted that the 2.18 binaries produced for the 14.04 and
> > 16.04 packaging has inconsistent dependency requirements. e.g 2.18.15
> > 14.04 64bit :
> >
> > qgis - gdal-abi-2-2-2, libgdal20 (>= 1.8.0) qgis-providers = libgdal20
> > (>= 2.2.0) qgis-server - libgdal20 (>= 1.8.0) libqgis-dev -
> > libgdal-dev (>= 1.10.1-0~) libqgis-core - libgdal20 (>= 2.2.0)
> > libqgis-app2 libgdal20 (>= 2.0.1)
>
> The version requirement for libgdal20 are determined based on which
> symbols the code in the dependent package uses, qgis & qgis-servers don't
> use any symbols introduced after GDAL 1.8.0, libqgis-dev does but no
> symbols introduced after GDAL 1.10.1, etc.
>

Ok thanks. What's the practical use of this approach if it's tied to
gdal-abi-2-2-2 anyway?

Cheers,
Jeremy
___
QGIS-Developer mailing list
QGIS-Developer@lists.osgeo.org
List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer

Re: [QGIS-Developer] Ubuntu Package Releases and GDAL Dependencies

2018-01-11 Thread Stefan Steiger

Stable isn't necessarely more "unstable" than unstable - since "stable" is 
almost never really well tested.
Maybe that depends on your definition of "really well", but anyway, just saying.
Also, stable doesn't mean bug-free, it just mean stable, that ist o say, 
staying as is. 

If you have issues with default-packages/dependecies, why don't you just 
containerize it and create a snapcraft-package ? 
Maybe someone also wants to have 2 different applications that both use the 
GDAL of a (different) specific version each on the same system ...
That could never be stable since one oft he two would probably not work. 

Snappycraft also has the advantage that you need to create only ONE package for 
all the major distros, such as Ubuntu&Derivates., Debian, Fedora/CentOS, Arch, 
Suse, ScientificLinux, Gentoo, etc.

Then you can test that one package, and then you know it works or doesn't, and 
dependencies only get updated when your snapcraft package gets updated.
This would be my definition of "stable". 

Also, snapcraft would make it possible to distribute commercial packages, e.g. 
with google-maps material, through snapcraft-store
https://docs.snapcraft.io/reference/snap-command  
snap buy 


https://snapcraft.io 
https://askubuntu.com/questions/743068/how-to-install-snapcraft-on-14-04  
https://developer.ubuntu.com/core  
https://arstechnica.com/information-technology/2016/06/goodbye-apt-and-yum-ubuntus-snap-apps-are-coming-to-distros-everywhere/
 

You can also get snapcraft on 14.04:
sudo apt install snapcraft snapd

to install package:
sudo snap install 

to update package:
sudo snap refresh 

to remove package: 
sudo snap remove 

search for package:
snap find 

list installed packages:
sudo snap list

e.g. 
sudo snap install nmap 
sudo snap refresh nmap









-Ursprüngliche Nachricht-
Von: QGIS-Developer [mailto:qgis-developer-boun...@lists.osgeo.org] Im Auftrag 
von Sebastiaan Couwenberg
Gesendet: Dienstag, 9. Januar 2018 07:37
An: qgis-developer@lists.osgeo.org
Betreff: Re: [QGIS-Developer] Ubuntu Package Releases and GDAL Dependancies

On 01/09/2018 06:28 AM, Jeremy Palmer wrote:
> I've been taking a close look at a way to install QGIS with >= GDAL 2 
> on 64bit Ubuntu 14.04 and 16.04 for production desktops.
> 
> It's not possible to install QGIS using the https://qgis.org/debian 
> package archive as the ubuntu  14.04 archives only supports GDAL 
> 1.10.1 and 16.04 only supports GDAL 1.11.3.
> 
> With https://qgis.org/ubuntugis it is possible to install QGIS with >= 
> GDAL
> 2.2 as this archive requires ubuntugis-unstable which currently 
> supports GDAL 2.2.2.
> 
> The issue I have is I'm reluctant to use ubuntugis-unstable for 
> production use. I would rather use ubuntugis-stable. However this 
> archive only supports GDAL 2.1 and doesn't provide the minimum 
> dependency of GDAL 2.2.2 for https://qgis.org/ubuntugis requires.
> 
> I was wondering why ubuntugis stable isn't used as the debian archive 
> for https://qgis.org/ubuntugis and ubuntugis-unstable is only used for 
> the development (e.g 2.99) nightly builds? This makes more sense to me.

You should have a look at UbuntuGIS development to see that it is mostly the 
work of one person now. Packages are updated for OSGeo-Live and copied to 
ubuntugis-unstable, after a while (no policy or guidelines) the packages from 
ubuntugis-unstable get copied to ubuntugis-stable.
This generally happens during an Ubuntu releases lifecycle, not ideal for 
production systems.

For production systems one should not rely on 3rd party repositories, other 
than the one the company maintains itself where it does all the integration 
work.

> I've also noted that the 2.18 binaries produced for the 14.04 and 
> 16.04 packaging has inconsistent dependency requirements. e.g 2.18.15 
> 14.04 64bit :
> 
> qgis - gdal-abi-2-2-2, libgdal20 (>= 1.8.0) qgis-providers = libgdal20 
> (>= 2.2.0) qgis-server - libgdal20 (>= 1.8.0) libqgis-dev - 
> libgdal-dev (>= 1.10.1-0~) libqgis-core - libgdal20 (>= 2.2.0)
> libqgis-app2 libgdal20 (>= 2.0.1)

The version requirement for libgdal20 are determined based on which symbols the 
code in the dependent package uses, qgis & qgis-servers don't use any symbols 
introduced after GDAL 1.8.0, libqgis-dev does but no symbols introduced after 
GDAL 1.10.1, etc.

Kind Regards,

Bas
___
QGIS-Developer mailing list
QGIS-Developer@lists.osgeo.org
List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer
___
QGIS-Developer mailing list
QGIS-Developer@lists.osgeo.org
List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer