[GRASS-dev] grass70 package name

Hi,

a name of the package eg. on Launchpad [1] for GRASS 7 is `grass70`.
The main reason was probably to allow users running GRASS 6 and GRASS
7 in parallel. I am not sure if it's good idea to continue in this
way. We are close to GRASS 7.0.0 release. Is it really planned to ship
GRASS 7 as `grass70` package or just simply as `grass` (which would
mean upgrade from 6.4.4 to 7.0.0 from user POV).

My question is related to the patches [2,3].

Martin

[1] https://launchpad.net/~grass/+archive/ubuntu/grass-stable/+packages
[2] http://anonscm.debian.org/cgit/pkg-grass/grass.git/tree/debian/patches/appstream.patch?h=experimental
[3] http://anonscm.debian.org/cgit/pkg-grass/grass.git/tree/debian/patches/desktop.patch?h=experimental

--
Martin Landa
http://geo.fsv.cvut.cz/gwiki/Landa
http://gismentors.eu/mentors/landa

Hi,

2015-02-13 18:18 GMT+01:00 Sebastiaan Couwenberg <sebastic@xs4all.nl>:

The choice between separate source packages or not was also discussed on
the Debian GIS list, see the thread starting at:

https://lists.debian.org/debian-gis/2015/01/msg00004.html

I think it makes sense for GRASS upstream to use separate source
packages to allow co-installation, but this makes less sense for the
official Debian package.

OK, thanks for explanation (btw, I have subscribed myself to this ML).

We mostly need to consider the versions for the different package
lineages to allow co-existence of the different package sources.

So do you suggest to apply [1,2] to GRASS source code (trunk and relbr70)?

Martin

[1] http://anonscm.debian.org/cgit/pkg-grass/grass.git/tree/debian/patches/appstream.patch?h=experimental
[2] http://anonscm.debian.org/cgit/pkg-grass/grass.git/tree/debian/patches/desktop.patch?h=experimental

--
Martin Landa
http://geo.fsv.cvut.cz/gwiki/Landa
http://gismentors.eu/mentors/landa

Hi,

On 02/13/2015 06:34 PM, Martin Landa wrote:

2015-02-13 18:18 GMT+01:00 Sebastiaan Couwenberg <sebastic@xs4all.nl>:

The choice between separate source packages or not was also discussed on
the Debian GIS list, see the thread starting at:

https://lists.debian.org/debian-gis/2015/01/msg00004.html

I think it makes sense for GRASS upstream to use separate source
packages to allow co-installation, but this makes less sense for the
official Debian package.

OK, thanks for explanation (btw, I have subscribed myself to this ML).

In the mean time I had also subscribed to grass-dev@ :slight_smile:

We mostly need to consider the versions for the different package
lineages to allow co-existence of the different package sources.

So do you suggest to apply [1,2] to GRASS source code (trunk and relbr70)?

The appstream.patch is distribution specific, so I don't think you need
to merge it in GRASS upstream.

The Keywords from the desktop.patch should be merged upstream, but the
Exec & Icon changes are distribution specific.

Kind Regards,

Bas

--
GPG Key ID: 4096R/E88D4AF1
Fingerprint: 8182 DE41 7056 408D 6146 50D1 6750 F10A E88D 4AF1

Hi,

2015-02-13 19:03 GMT+01:00 Sebastiaan Couwenberg <sebastic@xs4all.nl>:

[...]

The Keywords from the desktop.patch should be merged upstream, but the
Exec & Icon changes are distribution specific.

OK, done in r64612:3. Martin

--
Martin Landa
http://geo.fsv.cvut.cz/gwiki/Landa
http://gismentors.eu/mentors/landa

Hi,

2015-02-13 18:18 GMT+01:00 Sebastiaan Couwenberg <sebastic@xs4all.nl>:

On 02/13/2015 06:09 PM, Martin Landa wrote:

a name of the package eg. on Launchpad [1] for GRASS 7 is `grass70`.
The main reason was probably to allow users running GRASS 6 and GRASS
7 in parallel. I am not sure if it's good idea to continue in this
way. We are close to GRASS 7.0.0 release. Is it really planned to ship
GRASS 7 as `grass70` package or just simply as `grass` (which would
mean upgrade from 6.4.4 to 7.0.0 from user POV).

The choice between separate source packages or not was also discussed on
the Debian GIS list, see the thread starting at:

https://lists.debian.org/debian-gis/2015/01/msg00004.html

then I would strongly suggest to name the package for GRASS 7 as
`grass7` and `grass70`.

Martin

I think it makes sense for GRASS upstream to use separate source
packages to allow co-installation, but this makes less sense for the
official Debian package.

I would note that the need to allow multiple version to cohexist still
applies, people will always need to run branche/svn versions on their
computers.

--
Francesco P. Lovergine

On 02/21/2015 04:06 PM, Francesco P. Lovergine wrote:

I think it makes sense for GRASS upstream to use separate source
packages to allow co-installation, but this makes less sense for the
official Debian package.

I would note that the need to allow multiple version to cohexist still
applies, people will always need to run branche/svn versions on their
computers.

Not having the GRASS PPA packages in Debian indeed doesn't mean that
users won't build and install those packages themselves, or in the case
for Ubuntu have both available.

What changes do you propose for the official Debian package to allow the
co-existence with the GRASS upstream packages?

The binary packages built from the official Debian package are
version-less, whereas GRASS upstream include the major and minor version
(e.g. grass-core vs grass71-core).

The /usr/bin/grass to grass70 & grass71 executable in grass-core would
conflict between these packages. But IIRC the upstream GRASS packages
don't contain that symlink. The same may apply to the x-grass script,
but thank may get fixed when I address the issue raised by Martin [1].

[1] https://lists.debian.org/debian-gis/2015/02/msg00047.html

Kind Regards,

Bas

--
GPG Key ID: 4096R/6750F10AE88D4AF1
Fingerprint: 8182 DE41 7056 408D 6146 50D1 6750 F10A E88D 4AF1

On Sat, Feb 21, 2015 at 05:47:19PM +0100, Sebastiaan Couwenberg wrote:

What changes do you propose for the official Debian package to allow the
co-existence with the GRASS upstream packages?
[...]
The /usr/bin/grass to grass70 & grass71 executable in grass-core would
conflict between these packages. But IIRC the upstream GRASS packages
don't contain that symlink. The same may apply to the x-grass script,
but thank may get fixed when I address the issue raised by Martin [1].

[1] https://lists.debian.org/debian-gis/2015/02/msg00047.html

Adopting alternatives mechanism for grass, x-grass.sh and manpages would
probably suffices. I'm not sure if that would really solve a true user's need,
or it is only superfluous trick.

--
Francesco P. Lovergine

On 02/21/2015 06:00 PM, Francesco P. Lovergine wrote:

On Sat, Feb 21, 2015 at 05:47:19PM +0100, Sebastiaan Couwenberg wrote:

What changes do you propose for the official Debian package to allow the
co-existence with the GRASS upstream packages?
[...]
The /usr/bin/grass to grass70 & grass71 executable in grass-core would
conflict between these packages. But IIRC the upstream GRASS packages
don't contain that symlink. The same may apply to the x-grass script,
but thank may get fixed when I address the issue raised by Martin [1].

[1] https://lists.debian.org/debian-gis/2015/02/msg00047.html

Adopting alternatives mechanism for grass, x-grass.sh and manpages would
probably suffices. I'm not sure if that would really solve a true user's need,
or it is only superfluous trick.

If we all drop /usr/bin/grass & /usr/bin/x-grass the packages should be
able to co-exist. I've dropped these from the official Debian package.

See the changes in git and my post to debian-gis@:

http://anonscm.debian.org/cgit/pkg-grass/grass.git/commit/?h=experimental&id=6940e3f9036083500f813bebfa55541f8af45f34

http://anonscm.debian.org/cgit/pkg-grass/grass.git/commit/?h=experimental&id=70149a276f34613b8c79548cbf81c9bb4c4d73e5

https://lists.debian.org/debian-gis/2015/02/msg00052.html

The changes so far are for the practical case of having the official
Debian packages installed alongside the development packages from GRASS
upstream (official 7.0, upstream 7.1).

Having both the official grass (7.0.0) package and the upstream grass70
installed doesn't make much sense, but will break with the current
packaging on both sides.

We should use Conflicts or Breaks/Replaces for conflicting source
packages for the same upstream releases.

https://www.debian.org/doc/debian-policy/ch-relationships.html#s-conflicts

Since one should not have both the official grass package and grass70
installed at the same time, use Conflicts seems most appropriate.

Kind Regards,

Bas

--
GPG Key ID: 4096R/6750F10AE88D4AF1
Fingerprint: 8182 DE41 7056 408D 6146 50D1 6750 F10A E88D 4AF1

On 02/21/2015 07:54 PM, Sebastiaan Couwenberg wrote:

We should use Conflicts or Breaks/Replaces for conflicting source
packages for the same upstream releases.

https://www.debian.org/doc/debian-policy/ch-relationships.html#s-conflicts

Since one should not have both the official grass package and grass70
installed at the same time, use Conflicts seems most appropriate.

I've added Conflicts with the corresponding grass70 binary packages to
the official Debian package. See:

http://anonscm.debian.org/cgit/pkg-grass/grass.git/commit/?h=experimental&id=7575756cbcfc708e9d6595df7004f43a3fe62b51

We cannot do that for the -dev package because they both provide
grass70-dev.

To choose which package to use between grass-dev & grass70-dev, the
grass70 source package should add Conflicts on the official Debian packages.

The attached patch implements that for the grass70_release_debian branch.

Kind Regards,

Bas

--
GPG Key ID: 4096R/6750F10AE88D4AF1
Fingerprint: 8182 DE41 7056 408D 6146 50D1 6750 F10A E88D 4AF1

(attachments)

grass70-conflicts.patch (3.48 KB)

Hi,

2015-02-21 13:38 GMT+01:00 Martin Landa <landa.martin@gmail.com>:

then I would strongly suggest to name the package for GRASS 7 as
`grass7` and `grass70`.

btw, I changed package name on Launchpad to `grass7` and
`grass7-daily` [1]. Martin

[1] http://lists.osgeo.org/pipermail/grass-dev/2015-February/074197.html

--
Martin Landa
http://geo.fsv.cvut.cz/gwiki/Landa
http://gismentors.cz/mentors/landa

On 02/22/2015 03:05 PM, Martin Landa wrote:

2015-02-21 13:38 GMT+01:00 Martin Landa <landa.martin@gmail.com>:

then I would strongly suggest to name the package for GRASS 7 as
`grass7` and `grass70`.

btw, I changed package name on Launchpad to `grass7` and
`grass7-daily` [1]. Martin

But no Conflicts on the official package :-(.

I'm updating the Conflicts in the official packages on the renamed
grass7 packages too.

Kind Regards,

Bas

--
GPG Key ID: 4096R/6750F10AE88D4AF1
Fingerprint: 8182 DE41 7056 408D 6146 50D1 6750 F10A E88D 4AF1

On 02/21/2015 07:54 PM, Sebastiaan Couwenberg wrote:

On 02/21/2015 06:00 PM, Francesco P. Lovergine wrote:

On Sat, Feb 21, 2015 at 05:47:19PM +0100, Sebastiaan Couwenberg wrote:

What changes do you propose for the official Debian package to allow the
co-existence with the GRASS upstream packages?
[...]
The /usr/bin/grass to grass70 & grass71 executable in grass-core would
conflict between these packages. But IIRC the upstream GRASS packages
don't contain that symlink. The same may apply to the x-grass script,
but thank may get fixed when I address the issue raised by Martin [1].

[1] https://lists.debian.org/debian-gis/2015/02/msg00047.html

Adopting alternatives mechanism for grass, x-grass.sh and manpages would
probably suffices. I'm not sure if that would really solve a true user's need,
or it is only superfluous trick.

If we all drop /usr/bin/grass & /usr/bin/x-grass the packages should be
able to co-exist. I've dropped these from the official Debian package.

I've reinstated these symlinks, and will rely on the Conflicts with the
upstream grass7* packages to force the user to choose whose packages it
wants to use.

Kind Regards,

Bas

--
GPG Key ID: 4096R/6750F10AE88D4AF1
Fingerprint: 8182 DE41 7056 408D 6146 50D1 6750 F10A E88D 4AF1

Hi,

2015-02-22 15:13 GMT+01:00 Sebastiaan Couwenberg <sebastic@xs4all.nl>:

[...]

But no Conflicts on the official package :-(.

sorry, I overlooked this issue, done [1]. Now rebuilding grass-stable
package. Martin

[1] http://bazaar.launchpad.net/~grass/grass/grass70_release_debian/revision/62
--
Martin Landa
http://geo.fsv.cvut.cz/gwiki/Landa
http://gismentors.cz/mentors/landa

On 02/22/2015 04:52 PM, Martin Landa wrote:

2015-02-22 15:13 GMT+01:00 Sebastiaan Couwenberg <sebastic@xs4all.nl>:

But no Conflicts on the official package :-(.

sorry, I overlooked this issue, done [1]. Now rebuilding grass-stable
package. Martin

Thanks for those changes.

You'll also want to add Breaks/Replaces on the grass70 packages to the
binary packages build from the grass7 source package to allow upgrades
from the old to the renamed packages.

https://www.debian.org/doc/debian-policy/ch-relationships.html#s-replaces

Kind Regards,

Bas

--
GPG Key ID: 4096R/6750F10AE88D4AF1
Fingerprint: 8182 DE41 7056 408D 6146 50D1 6750 F10A E88D 4AF1