Skip to content

Commit d172a97

Browse files
authored
Update README.md
1 parent 073cf1e commit d172a97

File tree

1 file changed

+32
-14
lines changed

1 file changed

+32
-14
lines changed

README.md

Lines changed: 32 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -11,20 +11,38 @@
1111

1212
---
1313

14-
AppImage made using [sharun](https://github.com/VHSgunzo/sharun), which makes it extremely easy to turn any binary into a portable package without using containers or similar tricks.
15-
16-
**This AppImage bundles everything and should work on any linux distro, even on musl based ones.**
17-
18-
It is possible that this appimage may fail to work with appimagelauncher, I recommend these alternatives instead:
19-
20-
* [AM](https://github.com/ivan-hc/AM) `am -i viber-enhanced` or `appman -i viber-enhanced`
21-
22-
* [dbin](https://github.com/xplshn/dbin) `dbin install viber-enhanced.appimage`
23-
24-
* [soar](https://github.com/pkgforge/soar) `soar install viber-enhanced`
25-
26-
This appimage works without fuse2 as it can use fuse3 instead, it can also work without fuse at all thanks to the [uruntime](https://github.com/VHSgunzo/uruntime)
27-
14+
Unofficial AppImage of Viber, which works on any Linux distribution and is more reliable than the official Viber AppImage, hence the `-Enhanced` suffix.
15+
16+
## Official Viber AppImage issues
17+
- It depends on the EOL `libfuse2` library, which had the last release in 2019.
18+
- Linux distributions like Ubuntu and others don't ship `libfuse2`, so Viber AppImage doesn't work by default
19+
- It doesn't bundle every library that is necessary for the app function
20+
- Due to the above, video camera function is inconsistent, requiring older `libtheora` v1.x to be installed on the host, which some distros don't have
21+
22+
## How this AppImage solves the above issues
23+
- It doesn't depend on `libfuse` at all, as it can utilize kernel's unprivileged user namespaces function or as a fallback simply extract directory to `/tmp/` and run
24+
- Thanks to the [`uruntime`](https://github.com/VHSgunzo/uruntime)
25+
- It ships all the needed libs, binaries and directories reliably and relatively easy, thanks to the robust stracing system called [`sharun`](https://github.com/VHSgunzo/sharun) and it's wrapper [`quick-sharun`](https://github.com/pkgforge-dev/Anylinux-AppImages/blob/main/useful-tools/quick-sharun.sh)
26+
- If it ever happens that some dependencies are missing, it's clear to troubleshoot with `APPIMAGE_DEBUG=1` variable
27+
- GPU acceleration, video camera function, calls, notifications, everything is tested to work accordingly compared to the upstream app capabilities
28+
29+
## Requirements
30+
They are very minimal, but they are just listed here for transparency.
31+
32+
**AppImage's side:**
33+
- POSIX `/bin/sh` shell
34+
- writable `/tmp/` directory
35+
36+
**Viber's side:**
37+
- Linux 3.8+ kernel
38+
- application uses QtWebEngine, which depends on unprivileged user namespaces, which were introduced in Linux 3.8 kernel
39+
- display server being active (X11 or Wayland)
40+
41+
Not mandatory, but recommended:
42+
- `xdg-open` (part of `xdg-utils`)
43+
- So opening URLs or files redirects to the default system applications (clicking on URL opens the web browser, clicking on file opens the file manager etc.)
44+
45+
## Screenshot on why AppImage is preferred for low-storage devices
2846
<details>
2947
<summary><b><i>raison d'être</i></b></summary>
3048
<img src="https://github.com/user-attachments/assets/29576c50-b39c-46c3-8c16-a54999438646" alt="Inspiration Image">

0 commit comments

Comments
 (0)