|
11 | 11 |
|
12 | 12 | --- |
13 | 13 |
|
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 |
28 | 46 | <details> |
29 | 47 | <summary><b><i>raison d'être</i></b></summary> |
30 | 48 | <img src="https://github.com/user-attachments/assets/29576c50-b39c-46c3-8c16-a54999438646" alt="Inspiration Image"> |
|
0 commit comments