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. :)