Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 806770 - <sci-geosciences/gpsd-3.23: GPSD time will jump back 1024 weeks at after week=2180 (23-October-2021)
Summary: <sci-geosciences/gpsd-3.23: GPSD time will jump back 1024 weeks at after week...
Status: IN_PROGRESS
Alias: None
Product: Gentoo Security
Classification: Unclassified
Component: Vulnerabilities (show other bugs)
Hardware: All Linux
: Normal minor with 2 votes (vote)
Assignee: Gentoo Security
URL: https://lists.nongnu.org/archive/html...
Whiteboard: B3 [glsa?]
Keywords:
Depends on: 777960 807661 807664 809260 813168
Blocks:
  Show dependency tree
 
Reported: 2021-08-06 07:51 UTC by Ernst Herzberg
Modified: 2022-06-02 22:14 UTC (History)
6 users (show)

See Also:
Package list:
sci-geosciences/gpsd-3.23-r2 *
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ernst Herzberg 2021-08-06 07:51:27 UTC
The link explains all:

https://gitlab.com/gpsd/gpsd/-/issues/144
Comment 1 Marek Szuba archtester gentoo-dev 2021-08-06 11:07:21 UTC
The discussion in the issue is a bit on the technical side (long story short, it hasn't been entirely resolved yet but a reasonably-good workaround is already in gpsd Git master) but GEM's message to gpsd-users says it all: only 3.20, 3.21 and 3.22 are affected. And according to the final comments on GitLab, unless some unexpected showstopper pops up 3.23 is expected later on today.
Comment 2 Gary E. Miller 2021-08-09 20:38:59 UTC
> Severity: normal → minor

really?  When a good percentage of pool.ntp.org forgets what time it is, that is "minor"?  What about all the users that depend on a system clock that knows what year it is?

gpsd 3.23 is out.  Version bump please.
Comment 3 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2021-08-09 23:11:04 UTC
(In reply to Gary E. Miller from comment #2)
> > Severity: normal → minor
> 
> really?  When a good percentage of pool.ntp.org forgets what time it is,
> that is "minor"?  What about all the users that depend on a system clock
> that knows what year it is?
>

I'm sorry, this isn't supposed to be derogatory -- it's a stupid quirk of how our security rating system works (which I'd like to change). Please don't think much of it.

> gpsd 3.23 is out.  Version bump please.

Already looking at it. Thanks.
Comment 4 Larry the Git Cow gentoo-dev 2021-08-09 23:46:58 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c463a4eec44195855da8647e54fc47cf6639cbfd

commit c463a4eec44195855da8647e54fc47cf6639cbfd
Author:     James Browning <jamesb.fe80@gmail.com>
AuthorDate: 2021-08-09 23:45:45 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2021-08-09 23:46:50 +0000

    sci-geosciences/gpsd: update 9999 with upstream changes
    
    2.23 will follow soon. Will cut it based on the 9999
    ebuild.
    
    [Small rebasing changes by sam@].
    
    Bug: https://bugs.gentoo.org/806770
    Closes: https://bugs.gentoo.org/777960
    Signed-off-by: Sam James <sam@gentoo.org>
    Signed-off-by: James Browning <jamesb.fe80@gmail.com>

 sci-geosciences/gpsd/gpsd-9999.ebuild | 61 ++++++++++++++++++-----------------
 1 file changed, 32 insertions(+), 29 deletions(-)
Comment 5 Larry the Git Cow gentoo-dev 2021-08-10 23:52:04 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=124eafc31d0d6fdf24f1dfe53f7c27c2a8cfc08d

commit 124eafc31d0d6fdf24f1dfe53f7c27c2a8cfc08d
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2021-08-10 23:48:32 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2021-08-10 23:48:32 +0000

    sci-geosciences/gpsd: add 3.23
    
    Bug: https://bugs.gentoo.org/806770
    Signed-off-by: Sam James <sam@gentoo.org>

 sci-geosciences/gpsd/Manifest         |   1 +
 sci-geosciences/gpsd/gpsd-3.23.ebuild | 197 ++++++++++++++++++++++++++++++++++
 2 files changed, 198 insertions(+)
Comment 6 NATTkA bot gentoo-dev 2021-08-18 19:40:22 UTC Comment hidden (obsolete)
Comment 7 Ed Wildgoose 2021-08-20 18:17:08 UTC
Hi, I'm seeing this ebuild fail when USE=-python is set?

Something like the following. Is this my fault or something easy to repro for everyone?

(Additional information, I have python, scons[python3_9] installed in the build env, I'm then trying to build gpsd without the python dependencies as it will be used elsewhere on a system without python. Was fine with previous gpsd)


# USE=-python ROOT=/tmp/gpsd emerge -1v --nodeps sci-geosciences/gpsd

These are the packages that would be merged, in order:

[ebuild  N    ~] sci-geosciences/gpsd-3.23-r2:0/29::gentoo to /tmp/gpsd/ USE="cxx ipv6 ntp shm sockets -X -bluetooth -dbus -debug -latency-timing -ncurses -python -qt5 -static (-systemd) -test -udev -usb" GPSD_PROTOCOLS="aivdm ashtech earthmate evermore fury fv18 garmin garmintxt geostar gpsclock itrax mtk3301 navcom nmea0183 nmea2000 ntrip oceanserver oncore passthrough rtcm104v2 rtcm104v3 sirf skytraq superstar2 tnt tripmate tsip -greis -isync -ublox" PYTHON_TARGETS="python3_9 -python3_10 -python3_8" 0 KiB

Total: 1 package (1 new), Size of downloads: 0 KiB


>>> Verifying ebuild manifests

>>> Emerging (1 of 1) sci-geosciences/gpsd-3.23-r2::gentoo for /tmp/gpsd/
openpty failed: 'out of pty devices'
 * gpsd-3.23.tar.gz BLAKE2B SHA512 size ;-) ...                                                                                                                                                                                       [ ok ]
>>> Unpacking source...
>>> Unpacking gpsd-3.23.tar.gz to /var/tmp/portage/sci-geosciences/gpsd-3.23-r2/work
>>> Source unpacked in /var/tmp/portage/sci-geosciences/gpsd-3.23-r2/work
>>> Preparing source in /var/tmp/portage/sci-geosciences/gpsd-3.23-r2/work/gpsd-3.23 ...
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/sci-geosciences/gpsd-3.23-r2/work/gpsd-3.23 ...
>>> Source configured.
>>> Compiling source in /var/tmp/portage/sci-geosciences/gpsd-3.23-r2/work/gpsd-3.23 ...
 * EPYTHON is unset while calling escons. This most likely means that
 * the ebuild did not call the appropriate eclass function before calling scons.
 * Please ensure that python_setup is called before escons, or that escons
 * is used within python_foreach_impl as appropriate.
 * ERROR: sci-geosciences/gpsd-3.23-r2::gentoo failed (compile phase):
 *   EPYTHON unset in escons
 *
 * Call stack:
 *     ebuild.sh, line  127:  Called src_compile
 *   environment, line 3114:  Called escons 'prefix=/usr' 'libdir=$prefix/lib' 'udevdir=/lib/udev' 'rundir=/run' 'chrpath=False' 'gpsd_user=gpsd' 'gpsd_group=dialout' 'nostrip=True' 'systemd=no' 'unitdir=$prefix/lib' 'shared=True' 'bluez=no' 'libgpsmm=yes' 'clientdebug=no' 'dbus_export=no' 'ipv6=yes' 'timing=no' 'ncurses=no' 'ntpshm=yes' 'pps=yes' 'python=no' 'qt=no' 'shm_export=yes' 'socket_export=yes' 'usb=no' 'manbuild=False' 'aivdm=yes' 'ashtech=yes' 'earthmate=yes' 'evermore=yes' 'fury=yes' 'fv18=yes' 'garmin=yes' 'garmintxt=yes' 'geostar=yes' 'gpsclock=yes' 'greis=no' 'isync=no' 'itrax=yes' 'mtk3301=yes' 'navcom=yes' 'nmea0183=yes' 'nmea2000=yes' 'ntrip=yes' 'oceanserver=yes' 'oncore=yes' 'passthrough=yes' 'rtcm104v2=yes' 'rtcm104v3=yes' 'sirf=yes' 'skytraq=yes' 'superstar2=yes' 'tnt=yes' 'tripmate=yes' 'tsip=yes' 'ublox=no'
 *   environment, line 1759:  Called die
 * The specific snippet of code:
 *               die "EPYTHON unset in escons";
 *
 * If you need support, post the output of `emerge --info '=sci-geosciences/gpsd-3.23-r2::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=sci-geosciences/gpsd-3.23-r2::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/sci-geosciences/gpsd-3.23-r2/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/sci-geosciences/gpsd-3.23-r2/temp/environment'.
 * Working directory: '/var/tmp/portage/sci-geosciences/gpsd-3.23-r2/work/gpsd-3.23'
 * S: '/var/tmp/portage/sci-geosciences/gpsd-3.23-r2/work/gpsd-3.23'

>>> Failed to emerge sci-geosciences/gpsd-3.23-r2 for /tmp/gpsd/, Log file:

>>>  '/var/tmp/portage/sci-geosciences/gpsd-3.23-r2/temp/build.log'

 * Messages for package sci-geosciences/gpsd-3.23-r2 merged to /tmp/gpsd/:

 * EPYTHON is unset while calling escons. This most likely means that
 * the ebuild did not call the appropriate eclass function before calling scons.
 * Please ensure that python_setup is called before escons, or that escons
 * is used within python_foreach_impl as appropriate.
 * ERROR: sci-geosciences/gpsd-3.23-r2::gentoo failed (compile phase):
 *   EPYTHON unset in escons
 *
 * Call stack:
 *     ebuild.sh, line  127:  Called src_compile
 *   environment, line 3114:  Called escons 'prefix=/usr' 'libdir=$prefix/lib' 'udevdir=/lib/udev' 'rundir=/run' 'chrpath=False' 'gpsd_user=gpsd' 'gpsd_group=dialout' 'nostrip=True' 'systemd=no' 'unitdir=$prefix/lib' 'shared=True' 'bluez=no' 'libgpsmm=yes' 'clientdebug=no' 'dbus_export=no' 'ipv6=yes' 'timing=no' 'ncurses=no' 'ntpshm=yes' 'pps=yes' 'python=no' 'qt=no' 'shm_export=yes' 'socket_export=yes' 'usb=no' 'manbuild=False' 'aivdm=yes' 'ashtech=yes' 'earthmate=yes' 'evermore=yes' 'fury=yes' 'fv18=yes' 'garmin=yes' 'garmintxt=yes' 'geostar=yes' 'gpsclock=yes' 'greis=no' 'isync=no' 'itrax=yes' 'mtk3301=yes' 'navcom=yes' 'nmea0183=yes' 'nmea2000=yes' 'ntrip=yes' 'oceanserver=yes' 'oncore=yes' 'passthrough=yes' 'rtcm104v2=yes' 'rtcm104v3=yes' 'sirf=yes' 'skytraq=yes' 'superstar2=yes' 'tnt=yes' 'tripmate=yes' 'tsip=yes' 'ublox=no'
 *   environment, line 1759:  Called die
 * The specific snippet of code:
 *               die "EPYTHON unset in escons";
 *
 * If you need support, post the output of `emerge --info '=sci-geosciences/gpsd-3.23-r2::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=sci-geosciences/gpsd-3.23-r2::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/sci-geosciences/gpsd-3.23-r2/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/sci-geosciences/gpsd-3.23-r2/temp/environment'.
 * Working directory: '/var/tmp/portage/sci-geosciences/gpsd-3.23-r2/work/gpsd-3.23'
 * S: '/var/tmp/portage/sci-geosciences/gpsd-3.23-r2/work/gpsd-3.23'
Comment 8 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2021-08-20 18:18:13 UTC
(In reply to Ed Wildgoose from comment #7)
> Hi, I'm seeing this ebuild fail when USE=-python is set?
> 
> Something like the following. Is this my fault or something easy to repro
> for everyone?

Could you please file a new bug with the full build.log and emerge —-info?
Comment 9 Ed Wildgoose 2021-08-20 18:25:26 UTC
It seems to be enough to fix the compile to move the python_prepare to the outer section, ie:

diff --git a/sci-geosciences/gpsd/gpsd-3.23-r2.ebuild b/sci-geosciences/gpsd/gpsd-3.23-r2.ebuild
index 96a5705d5db..3fdd5fef94c 100644
--- a/sci-geosciences/gpsd/gpsd-3.23-r2.ebuild
+++ b/sci-geosciences/gpsd/gpsd-3.23-r2.ebuild
@@ -95,12 +95,11 @@ src_prepare() {

        default

+       python_setup
        use python && distutils-r1_src_prepare
 }

 python_prepare_all() {
-       python_setup
-
        # Extract python info out of SConscript so we can use saner distribute
        pyarray() { sed -n "/^ *$1 *= *\\[/,/\\]/p" SConscript ; }
        local pyprogs=$(pyarray python_progs)
Comment 10 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2021-08-20 18:30:05 UTC
(In reply to Ed Wildgoose from comment #9)
> It seems to be enough to fix the compile to move the python_prepare to the
> outer section, ie:
> 

It’s still a lot easier with a fresh bug given this is for the security element and it makes tracking easier ;)

Thanks, I suspect this was introduced when I added the explicit scons dep.

> diff --git a/sci-geosciences/gpsd/gpsd-3.23-r2.ebuild
> b/sci-geosciences/gpsd/gpsd-3.23-r2.ebuild
> index 96a5705d5db..3fdd5fef94c 100644
> --- a/sci-geosciences/gpsd/gpsd-3.23-r2.ebuild
> +++ b/sci-geosciences/gpsd/gpsd-3.23-r2.ebuild
> @@ -95,12 +95,11 @@ src_prepare() {
> 
>         default
> 
> +       python_setup
>         use python && distutils-r1_src_prepare
>  }
> 
>  python_prepare_all() {
> -       python_setup
> -
>         # Extract python info out of SConscript so we can use saner
> distribute
>         pyarray() { sed -n "/^ *$1 *= *\\[/,/\\]/p" SConscript ; }
>         local pyprogs=$(pyarray python_progs)
Comment 11 NATTkA bot gentoo-dev 2021-11-08 03:24:35 UTC
Unable to check for sanity:

> no match for package: sci-geosciences/gpsd-3.23-r2
Comment 12 Gary E. Miller 2022-06-02 22:03:00 UTC
gpsd 3.24 is out, please rev bump.
Comment 13 John Helmert III archtester Gentoo Infrastructure gentoo-dev Security 2022-06-02 22:14:19 UTC
(In reply to Gary E. Miller from comment #12)
> gpsd 3.24 is out, please rev bump.

Revision refer to the "-r1", "-r2", and so on versioning scheme. Please file a new bug for a version bump.