Download pre-built binaries from releases.
git clone https://github.com/dotside-studios/davi-nfc-agent.git
cd davi-nfc-agent
go build .
The agent uses PC/SC for NFC reader communication. PC/SC is built into all major operating systems:
pcsclite:
# Debian/Ubuntu
sudo apt install pcscd libpcsclite-dev
# Fedora/RHEL
sudo dnf install pcsc-lite pcsc-lite-devel
# Arch Linux
sudo pacman -S pcsclite
Any PC/SC-compatible NFC reader works, including:
# Linux
sudo systemctl status pcscd
sudo systemctl start pcscd
# Linux
pcsc_scan
Add your user to the pcscd group or add udev rules:
# Create udev rule for common NFC readers
sudo tee /etc/udev/rules.d/99-nfc.rules << 'EOF'
SUBSYSTEM=="usb", ATTR{idVendor}=="072f", MODE="0666"
SUBSYSTEM=="usb", ATTR{idVendor}=="04e6", MODE="0666"
EOF
sudo udevadm control --reload-rules
sudo udevadm trigger