This is a quick guide to enable systemd-resolved support for connman package in arch because arch wiki being arch wiki, it RTFMed the reader with no futher explanation on how to actually rebuild this package.
Prerequisites
Install a few packages before we start rebuilding. These are the required dependencies as per connman’s PKGBUILD.
- base-devel
- devtools
- bluez
- iwd
- openconnect
- openvpn
- ppp
- wpa_supplicant
devtools is required as well since it has the tools for rebuilding the package.
Command for installing:
| |
Re-Building the Package
First, We need to get the source files of connman package from arch’s gitlab.
| |
Now, Open up PKGBUILD and modify it to add --with-dns-backend=systemd-resolved option.
| |
Write the changes and re-build the package.
| |
--syncdeps: Installs required dependencies.--rmdeps: Removes make dependencies after building, which are not needed.
ps. If makepkg fails due to PGP key not being verified, you can pass --skippgpcheck flag to the command.
| |
Installing the Modified Version
Once the building process is complete, a package file (connman-pkgver.pkg.tar.zst) will be created in the working directory.
To install it, use makepkg’s -i flag
| |
Final setup
After installing the modified package, setup the stub resolver as /etc/resolv.conf
| |
Then, Restart connman.service, systemd-resolved.service and (if you’re using it) tailscale.service.
| |
That’s it. :)
