From 66ecdc0987bec8c7c88a499fd0d2fba3ea8d4113b4f24299d78fbd6843f27475 Mon Sep 17 00:00:00 2001 From: Dirk Stoecker Date: Tue, 8 Dec 2009 16:31:17 +0000 Subject: [PATCH] fixed? OBS-URL: https://build.opensuse.org/package/show/Application:Geo/gpsd?expand=0&rev=48 --- .gitattributes | 2 + gpsd.changes | 127 ++++++++++++++++++++ gpsd.spec | 295 ++++++++++++++++++++++++++++++++++++++++++++++ gpsd.xpm | 3 + project.diff | 215 --------------------------------- rules.gpsd | 20 ++++ sysconfig.gpsd | 24 ++++ udev.gpsd | 47 ++++++++ xgps.desktop | 10 ++ xgpsspeed.desktop | 10 ++ 10 files changed, 538 insertions(+), 215 deletions(-) create mode 100644 gpsd.changes create mode 100644 gpsd.spec create mode 100644 gpsd.xpm delete mode 100644 project.diff create mode 100644 rules.gpsd create mode 100644 sysconfig.gpsd create mode 100644 udev.gpsd create mode 100644 xgps.desktop create mode 100644 xgpsspeed.desktop diff --git a/.gitattributes b/.gitattributes index 9b03811..4c1a495 100644 --- a/.gitattributes +++ b/.gitattributes @@ -21,3 +21,5 @@ *.xz filter=lfs diff=lfs merge=lfs -text *.zip filter=lfs diff=lfs merge=lfs -text *.zst filter=lfs diff=lfs merge=lfs -text +## Specific LFS patterns +gpsd.xpm filter=lfs diff=lfs merge=lfs -text diff --git a/gpsd.changes b/gpsd.changes new file mode 100644 index 0000000..0884034 --- /dev/null +++ b/gpsd.changes @@ -0,0 +1,127 @@ +------------------------------------------------------------------- +Tue Dec 8 14:13:09 UTC 2009 - jreuter@novell.com + +- Upgrade to gpsd-2.90, from the upstream change log: + - GPSD-NG, the new JSON-based command protocol, is now deployed + - Detection of end of a fix-reporting cycle is now reliable + - Abandone gpsflash subproject + - Increase major version of shared library due to significant API change + - Add new driver for Motorola Oncore receivers + - gpsfake can now accept multiple logfiles, interleaving test sentences + from each. + - gpsd now accepts error estimates from the NMEA $GPGBS sentence. + - Fix potential core dump in C client handling of "K" responses + - Introduce major and minor API version symbols into the public interfaces + - The sirfmon utility is gone, replaced by gpsmon + - Fix an old error in NMEA parsing + - cgpxlogger has been merged into gpxlogger. + - Speed-setting commands now allow parity and stop-bit setting + - tcmdecode becomes gpsdecode and can now de-armor and dump AIDVM packets + - The clientlibrary now works correctly in locales where the decimal + separator is not a period. +- Typo in sirfmon / gpsmon has been fixed silently by upstream (#bnc513037) +- Make libgps and python modules subpackages + +------------------------------------------------------------------- +Sun Aug 9 12:43:26 CEST 2009 - coolo@novell.com + +- use new python macros + +------------------------------------------------------------------- +Mon Nov 24 12:05:49 CET 2008 - jreuter@suse.de + +- Disable TrueNorth Technologies device support, it breaks + autodection (bnc#448002) +- Fix udev script again: must not kill running gpsd if disabled, + missing quotes in test, indention, add parameter to set additional + command line options for gpsd. + +------------------------------------------------------------------- +Wed Nov 19 12:14:42 CET 2008 - jreuter@suse.de + +- Sleep a second before setting the default device in udev + script to give gpsd some time to set up the TCP socket + +------------------------------------------------------------------- +Thu Oct 23 15:06:28 CEST 2008 - jreuter@suse.de + +- Disable start of gpsd by udev rule by default and add sysconfig + variable to enable it if desired (bnc#432420) + +------------------------------------------------------------------- +Thu Apr 24 13:24:50 CEST 2008 - jreuter@suse.de + +- Fix RPM group tag for devel package +- Cleanup spec file + +------------------------------------------------------------------- +Sat Mar 22 20:02:15 CET 2008 - lrupp@suse.de + +- update to 2.37 + Fixes: + + C++ bindings + + Garmin USB support + + multiple instances of ntp pps thread starting + + better handling of odd PPS signals + + eye candy in the php visualizers +- enable Garmin Simple Text support +- enable True North Technologies support +- disable static +- mark man files as %doc +- added desktop entries +- fix ldconfig calls +- clean buildroot +- PreReq coreutils and fillup_prereq for postinstall + +------------------------------------------------------------------- +Fri Jan 18 16:41:27 CET 2008 - jreuter@suse.de + +- updated to 2.36 + * Integrated Garmin Simple Text Protocol driver from Peter Slansky. + * Stabilize the Trimble regression tests. + * Remove the wired-in NTP time offset from the NMEA driver + * Integrate Ashtech driver from Chris Kuethe. +- Submit to STABLE for 11.0 + +------------------------------------------------------------------- +Thu Dec 13 15:05:00 CET 2007 - opensuse@dstoecker.de + +- updated to 2.35 + +------------------------------------------------------------------- +Tue Nov 20 14:38:48 CET 2007 - anschneider@suse.de + +- update udev rules and script + +------------------------------------------------------------------- +Fri Jun 29 16:31:27 CEST 2007 - anschneider@suse.de + +- Spec file cleanup + +------------------------------------------------------------------- +Sun Dec 17 13:21:22 CEST 2006 - anschneider@suse.de + +- update to version 2.34: + * Fix for byte-swapping of Zodiac control messages on big-endian hardware. + * Disable iTalk by default and note that it needs to be tested. + * Command line arguments can now be DGPSIP or NTRIP URLs; -d is + deprecated. + * Added udev rules. + * Address excessive processor and memory utilization on SBCs; it's now + possible to configure compile-time limits on the number of devices and + client sessions. + * Eliminate use of fuser(1) in gpsfake. + * Get gpsd working with EarthMates again, this had been broken since 2.15. + Massive string safety audit and OpenBSD port by Chris Kuethe. + * J command added. + * The gpsctl and gpscat tools and the gpsd.phps script were added. + * Switched to lesstif from openmotif. + * Better autodetection of DLE-led packet protocols (notably TSIP and Garmin + binary) and of SiRFStar I and III devices. + * Fixed buggy parsing and generation of PGRME. + +------------------------------------------------------------------- +Mon Jun 05 10:44:57 CEST 2006 - anschneider@suse.de + +- Initial package + diff --git a/gpsd.spec b/gpsd.spec new file mode 100644 index 0000000..f90076a --- /dev/null +++ b/gpsd.spec @@ -0,0 +1,295 @@ +# +# spec file for package gpsd (Version 2.90) +# +# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany. +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# + +# norootforbuild + + +Name: gpsd +Summary: Service daemon for mediating access to a GPS +License: BSD 3-clause (or similar) +Url: http://gpsd.berlios.de/ +Group: Hardware/Other +Version: 2.90 +Release: 0 +%define libgps libgps19 +Requires: udev +PreReq: coreutils %fillup_prereq +BuildRequires: gcc-c++ ncurses-devel openmotif openmotif-devel python-devel udev update-desktop-files xmlto +%if 0%{?suse_version} > 1020 +BuildRequires: dbus-1-glib-devel +BuildRequires: fdupes +%endif +Source: %{name}-%{version}.tar.bz2 +Source1: rules.gpsd +Source2: udev.gpsd +Source3: sysconfig.gpsd +Source4: gpsd.xpm +Source5: xgps.desktop +Source6: xgpsspeed.desktop +BuildRoot: %{_tmppath}/%{name}-%{version}-build + +%description +gpsd is a service daemon that mediates access to a GPS sensor connected +to the host computer by serial or USB interface, making its data on the +location/course/velocity of the sensor available to be queried on TCP +port 2947 of the host computer. With gpsd, multiple GPS client +applications (such as navigational and wardriving software) can share +access to a GPS without contention or loss of data. Also, gpsd +responds to queries with a format that is substantially easier to parse +than NMEA 0183. A client library is provided for applications. + +After installing this RPM, gpsd will automatically connect to USB GPSes +when they are plugged in and requires no configuration. For serial +GPSes, you will need to start gpsd by hand. Once connected, the daemon +automatically discovers the correct baudrate, stop bits, and protocol. +The daemon will be quiescent when there are no clients asking for +location information, and copes gracefully when the GPS is unplugged +and replugged. + + + +Authors: +-------- + Remco Treffkorn + Derrick J. Brashear + Russ Nelson + Eric S. Raymond + Gary E. Miller + Jeff Francis + Amaury Jacquot + Chris Kuethe + Ville Nuorvala + +%package devel +License: BSD 3-clause (or similar) +Summary: Client libraries in C and Python for talking to a running gpsd or GPS +Group: Development/Libraries +Requires: %name = %version +Requires: pkgconfig + +%description devel +This package provides C header files for the gpsd shared libraries that +manage access to a GPS for applications and debugging tools. You will +need to have gpsd installed for it to work. + + +Authors: +-------- + Remco Treffkorn + Derrick J. Brashear + Russ Nelson + Eric S. Raymond + Gary E. Miller + Jeff Francis + Amaury Jacquot + Chris Kuethe + Ville Nuorvala + + +%package -n %libgps +License: BSD 3-clause (or similar) +Summary: Shared library for GPS applications +Group: Development/Libraries/Python +Requires: %name = %version +%{py_requires} + +%description -n %libgps +This package provides the shared library for gpsd and other GPS aware +applications + +Authors: +-------- + Remco Treffkorn + Derrick J. Brashear + Russ Nelson + Eric S. Raymond + Gary E. Miller + Jeff Francis + Amaury Jacquot + Chris Kuethe + Ville Nuorvala + + +%package -n python-gpsd +License: BSD 3-clause (or similar) +Summary: Client libraries in C and Python for talking to a running gpsd or GPS +Group: Development/Libraries/Python +Requires: %name = %version +%{py_requires} + +%description -n python-gpsd +This package provides python modules and tools for the gpsd shared +You will need to have gpsd installed for it to work. + +Authors: +-------- + Remco Treffkorn + Derrick J. Brashear + Russ Nelson + Eric S. Raymond + Gary E. Miller + Jeff Francis + Amaury Jacquot + Chris Kuethe + Ville Nuorvala + +%package clients +License: BSD 3-clause (or similar) +Summary: Clients for gpsd with an X interface +Group: Hardware/Other + +%description clients +xgps is a simple test client for gpsd with an X interface. It displays +current GPS position/time/velocity information and (for GPSes that +support the feature) the locations of accessible satellites. + +xgpsspeed is a speedometer that uses position information from the GPS. +It accepts an -h option and optional argument as for gps, or a -v +option to dump the package version and exit. Additionally, it accepts +-rv (reverse video) and -nc (needle color) options. + +cgps resembles xgps, but without the pictorial satellite display. It +can run on a serial terminal or terminal emulator. + + + +Authors: +-------- + Remco Treffkorn + Derrick J. Brashear + Russ Nelson + Eric S. Raymond + Gary E. Miller + Jeff Francis + Amaury Jacquot + Chris Kuethe + Ville Nuorvala + +%prep +%setup -q + +%build +%configure --disable-static \ +%if 0%{?suse_version} > 1020 + --enable-dbus \ +%endif + --enable-garmintxt +%__make %{?jobs:-j%jobs} + +%install +%makeinstall +install -d -m 755 %{buildroot}/lib/udev +install -d -m 755 %{buildroot}/etc/udev/rules.d +install -d -m 755 %{buildroot}/var/adm/fillup-templates +install -d -m 755 %{buildroot}%{python_sitelib} +install -d -m 755 %{buildroot}%{_datadir}/{applications,pixmaps} +install -m 644 %{SOURCE1} %{buildroot}/etc/udev/rules.d/51-gpsd.rules +install -m 755 %{SOURCE2} %{buildroot}/lib/udev/gpsd.sh +install -m 644 %{SOURCE3} %{buildroot}/var/adm/fillup-templates +install -m 644 gpsfake.py %{buildroot}%{python_sitelib} +install -m 755 gps.py %{buildroot}%{python_sitelib} +# remove /usr/bin/env call +sed -i "s|/usr/bin/env python|/usr/bin/python|g" %{buildroot}%{python_sitelib}/gps.py +# remove .la files +rm -f %{buildroot}%{_libdir}/libgps.la +strip %{buildroot}%{_bindir}/{cgps,gpsctl,gpsdecode,gpsmon,gpspipe,gpxlogger,lcdgps,xgps,xgpsspeed} +strip %{buildroot}%{_sbindir}/gpsd +strip %{buildroot}%{_libdir}/*so %{buildroot}%{python_sitelib}/*so +# install desktop entries +install -m 644 %{SOURCE4} %{buildroot}%{_datadir}/pixmaps/%{name}.xpm +install -m 644 %{SOURCE5} %{buildroot}%{_datadir}/applications/ +install -m 644 %{SOURCE6} %{buildroot}%{_datadir}/applications/ +%suse_update_desktop_file xgpsspeed +%suse_update_desktop_file xgps +# save some space, create symlinks +%if 0%{?suse_version} > 1020 +%fdupes -s %buildroot +%endif + +%clean +rm -rf %{buildroot} + +%post +%fillup_only -n gpsd + +%post -n %libgps -p /sbin/ldconfig +%postun -n %libgps -p /sbin/ldconfig + +%files +%defattr(-,root,root) +%doc README INSTALL COPYING gpsd.php +%{_mandir}/man?/gpsd.* +%{_mandir}/man?/gpsctl.* +/lib/udev/gpsd.sh +%config(noreplace) /etc/udev/rules.d/* +%{_sbindir}/gpsd +%{_bindir}/gpsctl +/var/adm/fillup-templates/sysconfig.gpsd + +%files -n %libgps +%defattr(-,root,root) +%{_libdir}/libgps.so.* + +%files devel +%defattr(-,root,root) +%doc README INSTALL COPYING TODO +%{_mandir}/man?/gpsfake.* +%{_mandir}/man?/gpscat.* +%{_mandir}/man?/libgps*.* +%{_mandir}/man?/rtcm-104.* +%{_mandir}/man?/srec.* +%{_mandir}/man?/gpsdecode.* +%{_mandir}/man?/gpsprof.* +%{_bindir}/gpsfake +%{_bindir}/gpscat +%{_bindir}/gpsdecode +%{_bindir}/gpsprof +%{_includedir}/gps.h +%{_includedir}/libgpsmm.h +%{_includedir}/gpsd.h +%{_libdir}/libgps.so +%{_libdir}/pkgconfig/libgps*.pc + +%files -n python-gpsd +%defattr(-,root,root) +%{python_sitelib}/gps*.py* +%{python_sitelib}/gpslib.so +%{python_sitelib}/gpspacket.so* + +%files clients +%defattr(-,root,root) +%{_mandir}/man?/gps.* +%{_mandir}/man?/cgps.* +%{_mandir}/man?/lcdgps.1.gz +%{_mandir}/man?/xgps.* +%{_mandir}/man?/xgpsspeed.* +%{_mandir}/man?/gpspipe.* +%{_mandir}/man?/gpsmon.* +%{_mandir}/man?/cgpxlogger.* +%{_bindir}/xgps +%{_bindir}/xgpsspeed +%{_bindir}/cgps +%{_bindir}/lcdgps +%{_bindir}/gpsmon +%{_bindir}/gpspipe +%if 0%{?suse_version} > 1020 +%{_bindir}/gpxlogger +%endif +%{_datadir}/applications/*.desktop +%{_datadir}/pixmaps/*.xpm + +%changelog diff --git a/gpsd.xpm b/gpsd.xpm new file mode 100644 index 0000000..450796f --- /dev/null +++ b/gpsd.xpm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5800f770af55c42163f20094ee35b873126a8976a929571ae9f14f23a788b9b0 +size 31165 diff --git a/project.diff b/project.diff deleted file mode 100644 index e6971e6..0000000 --- a/project.diff +++ /dev/null @@ -1,215 +0,0 @@ ---- gpsd.changes.orig -+++ gpsd.changes -@@ -1,7 +1,26 @@ - ------------------------------------------------------------------- --Sun Dec 8 12:00:00 CET 2009 - opensuse@dstoecker.de -+Tue Dec 8 14:13:09 UTC 2009 - jreuter@novell.com - --- use new python macros -+- Upgrade to gpsd-2.90, from the upstream change log: -+ - GPSD-NG, the new JSON-based command protocol, is now deployed -+ - Detection of end of a fix-reporting cycle is now reliable -+ - Abandone gpsflash subproject -+ - Increase major version of shared library due to significant API change -+ - Add new driver for Motorola Oncore receivers -+ - gpsfake can now accept multiple logfiles, interleaving test sentences -+ from each. -+ - gpsd now accepts error estimates from the NMEA $GPGBS sentence. -+ - Fix potential core dump in C client handling of "K" responses -+ - Introduce major and minor API version symbols into the public interfaces -+ - The sirfmon utility is gone, replaced by gpsmon -+ - Fix an old error in NMEA parsing -+ - cgpxlogger has been merged into gpxlogger. -+ - Speed-setting commands now allow parity and stop-bit setting -+ - tcmdecode becomes gpsdecode and can now de-armor and dump AIDVM packets -+ - The clientlibrary now works correctly in locales where the decimal -+ separator is not a period. -+- Typo in sirfmon / gpsmon has been fixed silently by upstream (#bnc513037) -+- Make libgps and python modules subpackages - - ------------------------------------------------------------------- - Fri Dec 4 12:08:31 UTC 2009 - jreuter@novell.com ---- gpsd.spec.orig -+++ gpsd.spec -@@ -1,5 +1,5 @@ - # --# spec file for package gpsd (Version 2.37) -+# spec file for package gpsd (Version 2.90) - # - # Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany. - # -@@ -24,7 +24,8 @@ License: BSD 3-clause (or similar - Url: http://gpsd.berlios.de/ - Group: Hardware/Other - Version: 2.90 --Release: 1 -+Release: 0 -+%define libgps libgps19 - Requires: udev - PreReq: coreutils %fillup_prereq - BuildRequires: gcc-c++ ncurses-devel openmotif openmotif-devel python-devel udev update-desktop-files xmlto -@@ -76,16 +77,63 @@ Authors: - %package devel - License: BSD 3-clause (or similar) - Summary: Client libraries in C and Python for talking to a running gpsd or GPS --Group: Hardware/Other -+Group: Development/Libraries - Requires: %name = %version - Requires: pkgconfig - - %description devel - This package provides C header files for the gpsd shared libraries that --manage access to a GPS for applications; also Python modules. You will -+manage access to a GPS for applications and debugging tools. You will - need to have gpsd installed for it to work. - - -+Authors: -+-------- -+ Remco Treffkorn -+ Derrick J. Brashear -+ Russ Nelson -+ Eric S. Raymond -+ Gary E. Miller -+ Jeff Francis -+ Amaury Jacquot -+ Chris Kuethe -+ Ville Nuorvala -+ -+ -+%package -n %libgps -+License: BSD 3-clause (or similar) -+Summary: Shared library for GPS applications -+Group: Development/Libraries/Python -+Requires: %name = %version -+%{py_requires} -+ -+%description -n %libgps -+This package provides the shared library for gpsd and other GPS aware -+applications -+ -+Authors: -+-------- -+ Remco Treffkorn -+ Derrick J. Brashear -+ Russ Nelson -+ Eric S. Raymond -+ Gary E. Miller -+ Jeff Francis -+ Amaury Jacquot -+ Chris Kuethe -+ Ville Nuorvala -+ -+ -+%package -n python-gpsd -+License: BSD 3-clause (or similar) -+Summary: Client libraries in C and Python for talking to a running gpsd or GPS -+Group: Development/Libraries/Python -+Requires: %name = %version -+%{py_requires} -+ -+%description -n python-gpsd -+This package provides python modules and tools for the gpsd shared -+You will need to have gpsd installed for it to work. - - Authors: - -------- -@@ -155,12 +203,12 @@ install -m 644 %{SOURCE3} %{buildroot}/v - install -m 644 gpsfake.py %{buildroot}%{python_sitelib} - install -m 755 gps.py %{buildroot}%{python_sitelib} - # remove /usr/bin/env call --for i in gpscat gpsfake gpsprof; do -- sed -i "s|/usr/bin/env python|/usr/bin/python|g" %{buildroot}%{_bindir}/$i --done - sed -i "s|/usr/bin/env python|/usr/bin/python|g" %{buildroot}%{python_sitelib}/gps.py - # remove .la files - rm -f %{buildroot}%{_libdir}/libgps.la -+strip %{buildroot}%{_bindir}/{cgps,gpsctl,gpsdecode,gpsmon,gpspipe,gpxlogger,lcdgps,xgps,xgpsspeed} -+strip %{buildroot}%{_sbindir}/gpsd -+strip %{buildroot}%{_libdir}/*so %{buildroot}%{python_sitelib}/*so - # install desktop entries - install -m 644 %{SOURCE4} %{buildroot}%{_datadir}/pixmaps/%{name}.xpm - install -m 644 %{SOURCE5} %{buildroot}%{_datadir}/applications/ -@@ -176,63 +224,67 @@ install -m 644 %{SOURCE6} %{buildroot}%{ - rm -rf %{buildroot} - - %post --/sbin/ldconfig - %fillup_only -n gpsd - --%postun -p /sbin/ldconfig -+%post -n %libgps -p /sbin/ldconfig -+%postun -n %libgps -p /sbin/ldconfig - - %files - %defattr(-,root,root) - %doc README INSTALL COPYING gpsd.php - %{_mandir}/man?/gpsd.* --%{_mandir}/man?/gpsprof.* - %{_mandir}/man?/gpsctl.* - /lib/udev/gpsd.sh - %config(noreplace) /etc/udev/rules.d/* - %{_sbindir}/gpsd - %{_bindir}/gpsctl --%{_bindir}/gpsprof --%{_libdir}/libgps.so.* --%{python_sitelib}/gps.py* --%{python_sitelib}/gpslib.so - /var/adm/fillup-templates/sysconfig.gpsd - -+%files -n %libgps -+%defattr(-,root,root) -+%{_libdir}/libgps.so.* -+ - %files devel - %defattr(-,root,root) - %doc README INSTALL COPYING TODO --%{_mandir}/man?/gpsdecode.* - %{_mandir}/man?/gpsfake.* - %{_mandir}/man?/gpscat.* --%{_mandir}/man?/gpsmon.* --%{_mandir}/man?/lcdgps.* - %{_mandir}/man?/libgps*.* - %{_mandir}/man?/rtcm-104.* - %{_mandir}/man?/srec.* -+%{_mandir}/man?/gpsdecode.* -+%{_mandir}/man?/gpsprof.* - %{_bindir}/gpsfake - %{_bindir}/gpscat - %{_bindir}/gpsdecode --%{_bindir}/gpsmon --%{_bindir}/lcdgps -+%{_bindir}/gpsprof - %{_includedir}/gps.h - %{_includedir}/libgpsmm.h - %{_includedir}/gpsd.h --%{python_sitelib}/gpscap.py* --%{python_sitelib}/gpsfake.py* --%{python_sitelib}/gpspacket.so* - %{_libdir}/libgps.so - %{_libdir}/pkgconfig/libgps*.pc - -+%files -n python-gpsd -+%defattr(-,root,root) -+%{python_sitelib}/gps*.py* -+%{python_sitelib}/gpslib.so -+%{python_sitelib}/gpspacket.so* -+ - %files clients - %defattr(-,root,root) - %{_mandir}/man?/gps.* - %{_mandir}/man?/cgps.* -+%{_mandir}/man?/lcdgps.1.gz - %{_mandir}/man?/xgps.* - %{_mandir}/man?/xgpsspeed.* - %{_mandir}/man?/gpspipe.* -+%{_mandir}/man?/gpsmon.* - %{_mandir}/man?/cgpxlogger.* - %{_bindir}/xgps - %{_bindir}/xgpsspeed - %{_bindir}/cgps -+%{_bindir}/lcdgps -+%{_bindir}/gpsmon - %{_bindir}/gpspipe - %if 0%{?suse_version} > 1020 - %{_bindir}/gpxlogger diff --git a/rules.gpsd b/rules.gpsd new file mode 100644 index 0000000..7cd8d07 --- /dev/null +++ b/rules.gpsd @@ -0,0 +1,20 @@ +SUBSYSTEM != "tty", GOTO="gpsd_end" + +ACTION != "remove, GOTO="gpsd_add" +KERNEL=="ttyUSB*", RUN="/lib/udev/gpsd.sh" + +LABEL="gpsd_add" +ACTION != "add", GOTO="gpsd_end" + +# "Prolific Technology 2303 (commonly in tandem with SiRF chips)" +KERNEL=="ttyUSB*", SYSFS{idVendor}=="067b", SYSFS{idProduct}=="2303", RUN="/lib/udev/gpsd.sh" +# "FTDI 8U232AM" +KERNEL=="ttyUSB*", SYSFS{idVendor}=="0403", SYSFS{idProduct}=="6001", RUN="/lib/udev/gpsd.sh" +# "Cypress M8/CY7C64013 (DeLorme uses these)" +KERNEL=="ttyUSB*", SYSFS{idVendor}=="1163", SYSFS{idProduct}=="0100", RUN="/lib/udev/gpsd.sh" +# "PS-360 OEM (Microsoft GPS sold with Street and Trips 2005)" +KERNEL=="ttyUSB*", SYSFS{idVendor}=="067b", SYSFS{idProduct}=="aaa0", RUN="/lib/udev/gpsd.sh" +# SiRF Star III 20ch Gmouse GPS (a.k.a Cygnal Integrated Products, Inc.) +KERNEL=="ttyUSB*", SYSFS{idVendor}=="10c4", SYSFS{idProduct}=="ea60", RUN="/lib/udev/gpsd.sh" + +LABEL="gpsd_end" diff --git a/sysconfig.gpsd b/sysconfig.gpsd new file mode 100644 index 0000000..c429d7a --- /dev/null +++ b/sysconfig.gpsd @@ -0,0 +1,24 @@ +## Path: Hardware/GPS +## Description: GPS Daemon + +## Type: yesno +## Default: no +# +# Whether or not to start gpsd automatically on plugin event +# +GPSD_STARTBYUDEV="no" + +## Type: integer +## Default: 2947 +# +# Use different port for the daemon +# +GPSD_PORT= + +## Type: string +## Default: "" +# +# Further options to gpsd +# +GPSD_OPTIONS="" + diff --git a/udev.gpsd b/udev.gpsd new file mode 100644 index 0000000..cdcb107 --- /dev/null +++ b/udev.gpsd @@ -0,0 +1,47 @@ +#!/bin/bash +CTRL_SOCK="/var/run/gpsd.socket" +DEV_NAME="/var/run/gpsd.device" + +. /etc/sysconfig/gpsd + +if [ "$GPSD_STARTBYUDEV" != "yes" ]; then + exit 1 +fi + +if [ "${ACTION}" = "remove" ]; then + GPSD_PID=$(pidof gpsd) + + if [ -z "$GPSD_PID" ]; then + echo "Can't find gpsd!" + else + echo "Remove gpsd from pid: ${GPSD_PID}" + TTYDEV="/dev/$(basename $DEVPATH)" + TTYDEV_SAVE=$(cat ${DEV_NAME}) + + if [ "${TTYDEV}" = "${TTYDEV_SAVE}" ]; then + # send TERM signal + kill -15 ${GPSD_PID} + rm -f ${DEV_NAME} + fi + fi +else + case "$DEVPATH" in + *tty*) + TTYDEV="/dev/$(basename $DEVPATH)" + options="-F $CTRL_SOCK $GPSD_OPTIONS" + + if [ -n "$GPSD_PORT" ]; then + options="$options -S $GPSD_PORT" + else + GPSD_PORT=2947 + fi + + echo "Action '${ACTION}' Launch gpsd to $TTYDEV with $options" + + /usr/sbin/gpsd $options ${TTYDEV} + echo "${TTYDEV}" > ${DEV_NAME} + (sleep 1 && echo "F=$TTYDEV" >/dev/tcp/localhost/$GPSD_PORT) & + ;; + esac +fi 2>&1 | /bin/logger -t gpsd + diff --git a/xgps.desktop b/xgps.desktop new file mode 100644 index 0000000..b399f93 --- /dev/null +++ b/xgps.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=xgps +GenericName=GPS information +Comment=Display GPS information from a gpsd daemon +Exec=xgps +Icon=gpsd +Terminal=false +Type=Application +Categories=System;Monitor; diff --git a/xgpsspeed.desktop b/xgpsspeed.desktop new file mode 100644 index 0000000..fdffca3 --- /dev/null +++ b/xgpsspeed.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=xgpsspeed +GenericName=GPS speedometer +Comment=Display GPS speed from a gpsd daemon +Exec=xgpsspeed +Icon=gpsd +Terminal=false +Type=Application +Categories=System;Monitor;