From 9372d1274c8ecfb1e842eb9ad14fbdeab7b48863 Mon Sep 17 00:00:00 2001 From: Anjandev Momi Date: Thu, 9 Apr 2020 22:28:26 -0700 Subject: [PATCH 1/2] added external applications page --- src/SUMMARY.md | 1 + src/config/external-applications.md | 68 +++++++++++++++++++++++++++++ 2 files changed, 69 insertions(+) create mode 100644 src/config/external-applications.md diff --git a/src/SUMMARY.md b/src/SUMMARY.md index c0c799764..d228f4f78 100644 --- a/src/SUMMARY.md +++ b/src/SUMMARY.md @@ -45,6 +45,7 @@ - [sndio](./config/media/sndio.md) - [Bluetooth](./config/bluetooth.md) - [TeX Live](./config/texlive.md) + - [External Applications](./config/external-applications.md) - [Printing](./config/print/index.md) - [Installing Printing Drivers](./config/print/drivers.md) - [Configuring a New Printer](./config/print/config.md) diff --git a/src/config/external-applications.md b/src/config/external-applications.md new file mode 100644 index 000000000..cad6f1928 --- /dev/null +++ b/src/config/external-applications.md @@ -0,0 +1,68 @@ +# External Applications + +## Programming Languages + +The Void repositories have a number of Python and Lua packages. If possible, +install packages from the Void repositories or consider packaging the library or +application you need. Packaging your application allows for easier system +maintenance and can benefit other Void Linux users, so consider making a pull +request for it. The contribution instructions can be found +[here](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md). + +To keep packages smaller, Void has separate `devel` packages for header files +and development tools. If you install a library or application via a language's +package manager (e.g. `pip`, `gem`), or compile one from source, you may need to +install the programming language's `-devel` package. This is specially relevant +for `musl` libc users, due to pre-built binaries usually targeting `glibc` +instead. + +| Language | Package Manager | Void Package | +|----------|--------------------------------|-----------------| +| Python3 | pip, anaconda, virtualenv, etc | `python3-devel` | +| Python2 | pip, anaconda, virtualenv, etc | `python2-devel` | +| Ruby | gem | `ruby-devel` | +| lua | luarocks | `lua-devel` | + +## Restricted Packages + +Some packages have legal restrictions on their distribution (e.g. Discord), may +be too large, or have another condition that makes it difficult for Void to +distribute. These packages have build templates, but the packages themselves are +not built or distributed. As such, they must be built locally. For more +information see the page on [restricted +packages](../repositories/restricted.md). + +## Non-x86_64 Arch + +The Void build system runs on x86_64 servers, both for compiling and cross +compiling packages. However, some packages (e.g. `libreoffice`) do not support +cross-compilation. These packages have to be built locally on a computer running +the same architecture and libc as the system on which the package is to be used. +For building packages, see the [building instructions](../packages/building.md). + +## Flatpak + +Flatpak is another method for installing external proprietary applications on +Linux. For information on using Flatpak with Void Linux, see the [official +Flatpak documentation](https://flatpak.org/setup/Void%20Linux/). + +> Flatpak's sandboxing will not necessarily protect you from any security and/or +> privacy-violating features of proprietary software. + +### Troubleshooting + +Some apps may not function properly (e.g. not being able to access the host +system's files). This may be fixed by installing one or more of the +`xdg-desktop-portal`, `xdg-desktop-portal-gtk`, `xdg-user-dirs`, +`xdg-user-dirs-gtk` or `xdg-utils` packages. + +Some Flatpaks require D-Bus. If you are using a window manager (e.g. i3wm), you +can launch your window manager with +[dbus-run-session(1)](https://man.voidlinux.org/dbus-run-session.1). Some +Flatpaks can also require [Pulseaudio](./media/pulseaudio.md). + +## Octave Packages + +Some Octave packages require external dependencies to compile and run. For +example, to build the control package, you must install the `openblas-devel`, +`libgomp-devel`, `libgfortran-devel`, `gcc-fortran`, and `gcc` packages. From 686f36b33d12014339a791dda45ebcf9c2ec3d1c Mon Sep 17 00:00:00 2001 From: Alexis Date: Tue, 5 May 2020 17:11:06 +1000 Subject: [PATCH 2/2] external-applications: Change some wording. Rephrase so as to not imply that all issues with Flatpaks can be solved by installing said packages. --- src/config/external-applications.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/config/external-applications.md b/src/config/external-applications.md index cad6f1928..c3e930c67 100644 --- a/src/config/external-applications.md +++ b/src/config/external-applications.md @@ -52,8 +52,8 @@ Flatpak documentation](https://flatpak.org/setup/Void%20Linux/). ### Troubleshooting Some apps may not function properly (e.g. not being able to access the host -system's files). This may be fixed by installing one or more of the -`xdg-desktop-portal`, `xdg-desktop-portal-gtk`, `xdg-user-dirs`, +system's files). Some of these issues can be fixed by installing one or more of +the `xdg-desktop-portal`, `xdg-desktop-portal-gtk`, `xdg-user-dirs`, `xdg-user-dirs-gtk` or `xdg-utils` packages. Some Flatpaks require D-Bus. If you are using a window manager (e.g. i3wm), you