Skip to content

Commit fcdd4ed

Browse files
authored
Merge pull request #16 from sireliah/readme-troubleshooting
Add troubleshooting section explaining firewalld and glibc
2 parents 46593e2 + dcdafd5 commit fcdd4ed

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed

README.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,10 @@ The application uses mDNS for automatic device discovery with help of `libp2p` l
2727
- [Using Flatpak](#using-flatpak)
2828
- [Download recent release](#download-recent-release)
2929
- [How to use](#how-to-use)
30+
- [Troubleshooting](#troubleshooting)
31+
- [Dealing with firewalld](#dealing-with-firewalld)
32+
- [Dragit configuration](#dragit-configuration)
33+
- [Glibc versions on Linux](#glibc-versions-on-linux)
3034
- [Development](#development)
3135
- [How to build on Linux](#how-to-build-on-linux)
3236
- [How to build on Windows](#how-to-build-on-windows)
@@ -76,6 +80,36 @@ You can run two `dragit` instances on the same machine for testing. No problem w
7680

7781
![demo](./static/dragit.gif)
7882

83+
## Troubleshooting
84+
### Dealing with firewalld
85+
Dragit automatically detects firewall configuration on the host machine to help resolve the networking problems. The check is done against `firewalld` daemon and uses its D-Bus interface. User is asked for permissions, because some systems require authorization for inspecting `firewalld` rules (such as Ubuntu).
86+
87+
If Dragit detects missing port (mDNS or application one), then application can modify configuration of `firewalld`.
88+
89+
The check is done only on Linux and only on first run of the application.
90+
91+
### Dragit configuration
92+
Dragit stores config file under `$HOME/.config/dragit/config.toml` on Linux and in standard configuration paths on the other platforms (such as Windows). If you wish to change port under which Dragit is running, change it there. You can also re-trigger firewall check by changing the value of `firewall_checked` setting.
93+
94+
### Glibc versions on Linux
95+
This application depends on glibc library, which is provided by most of the Linux distros.
96+
Dragit is built automatically using the [Github Actions](https://github.com/actions/virtual-environments/) under the `ubuntu-latest` image (currently Ubuntu 20.04 LTS), which means that your Linux distribution should have glibc version equal or higher than the one supported by `ubuntu-latest`. Otherwise it might happen that you see this error:
97+
98+
```
99+
/lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.29 not found
100+
```
101+
102+
This means that glibc on your machine is too old and you might consider OS upgrade or [try to build Dragit yourself](#how-to-build-on-linux).
103+
104+
To check highest glibc version on your distro, you can inspect ldd.
105+
106+
```
107+
$ ldd --version
108+
ldd (GNU libc) 2.32
109+
110+
(...)
111+
```
112+
79113
## Development
80114
### How to build on Linux
81115
```

0 commit comments

Comments
 (0)