Tip: StellarMate users can simply follow the GPS video tutorial.
A GPS device is also required. Many devices are support, please check the hardware compatiblity page before purchasing a GPS device and make sure the GPS device is supported under Linux. The U-Plox AG GPS available from Odroid is one example of a comptabile device. Depending on the device, you might need to edit /etc/default/gpsd file and edit the DEVICES= section to add the serial port for your GPS device there (e.g. /dev/ttyACM0).
Make sure GPS is receiving data by running gpsmon
Upon connection, it should take a few seconds before the GPS fixed is usually obtained. Depending on your client, you might need to configure it to synchronize it with GPS data with the mount and other devices. KStars performs this synchronization automatically without requiring any further action from the user.
INDI GPS NMEA driver fills the gap for people who use mobile phone's gps for setting location and time in KStars/Ekos. indi-gpsd does pretty much the same, however it is based on different approach. Both of the drivers set time and location (over INDI server) to other INDI drivers (e.g. mount) and clients (e.g. KStars), but:
indi-gpsnmea:
indi-gpsd:
There's no conflict between the two - NTP gets time from GPSD to set operating system time/date, not INDI drivers' and clients' time/date.
We can consider merging these drivers at some point in time, but for now you should run either indi-gpsnmea or indi-gpsd. Using both drivers at the same time makes no sense.