This has resulted in the uncomfortable situation of having some packages on the old vinit system, and others ready to go with systemctl. I experimented with the Debian image to try to gain some more stability, but found it to be slow, and that some of the software did not play well with the kernel because some options were not compiled in. So far Arch has still proven itself up to the task.
Setting up Wireless Networking (Managed)
The next step was to try to get wireless networking working properly on the Pi’s. Doing this from the command line proved quite tricky, and after four hours of experimentation I discovered some packages that made my life a whole lot easier, and the processes much more straight-forward (many thanks to the developers and package maintainers!). A managed wireless connection is typically one where the device connects to a router, and the router takes care of all the details of getting you online. Although this isn’t mesh networking, it’s a good first step in identifying the capabilities of your device’s wireless card.
Remember: Arch Linux’s migration to systemd has invalidated many of the previous steps. With the latest img, you no longer have to generate the the pacman-key. However, the configuration files are now in different locations. For example, rc.conf and rc.local no longer exist, so to change the hostname you would need to
# nano /etc/hostname.
- In order to get wireless working, you need to install some more packages:
# pacman -S jshon git base-devel fakeroot
- Then install packer to access the AUR repository:
# cd /tmp/ && wget http://aur.archlinux.org/packages/pa/packer/PKGBUILD
# makepkg --asroot PKGBUILDNote: Arch does not recommend the –asroot flag, but I’m not concerned with security at the moment.
# pacman -U packer*
# packer -Syu && packer -S wpa_auto newlan
- Next configure newlan:
# newlan -n PROFILENAMEand follow the instructions.
- Edit your netcfg configuration file to use the PROFILENAME you just created in newlan.
# nano /etc/conf.d/netcfg
- Then enable the service to start with systemd at boot:
# systemctl enable netcfg@PROFILENAME.service
Now if everything works you should have a connection to your router, and can unplug the ethernet. The wifi card will be initialized on boot!