|
|
(22 intermediate revisions by 2 users not shown) |
Line 1: |
Line 1: |
− | In this brief article we'll examine what's needful to run the Unity Editor and the sinespace client on Linux.
| + | == Installing and Using the Sinespace Client == |
| + | * [http://preview.sine.space/download/ Download the Linux Client]. |
| + | * Unpack the client. |
| + | * From inside the client directory, run '''sudo ./install.sh''' to install. Depending on your desktop file manager, you may also try right-clicking this file and running it as root/admin. |
| + | * Run '''sinespace''' to launch the client. |
| | | |
− | Lets take a closer look at that statement: essentially, it says we're going to do stuff with linux. What's the problem there? One that's much bigger than mere semantics:
| + | The Sinespace client is officially only supported on [http://ubuntu.com Ubuntu Linux]. |
| | | |
− | "Linux" is a very broad, general term in practical usage. Very specifically, however, it refers to an low-level operating system kernel, one that just happens to run a boat load of GNU software, much of which is libraries; we'll get back to that though. Somewhat less sweepingly, "Linux" refers to one or more of the many extant "Linux Distributions".
| + | Unofficially, other conventional Linux distributions should be able to run the client without additional work. For full media support, you may need to install the '''libavcodec''' and '''libswscale''' libraries. This task is already taken care of by the '''install.sh''' script for Ubuntu users. |
| | | |
− | Linux distributions are essentially each someone's template of a linux installation in installable/installed form, and they typically include farily custom components for doing such things as maintaining the operating system, curating user accounts, managing storage; additionally they will provide custom policies and tools for adding/removing updating software, including system libraries.
| + | == Obtaining the Unity Editor == |
| | | |
− | When setting up Unity and Sinespace specifically, we are considering some very simple operations; essentially that of launching and guiding some solid installer shells. The real difficulty as such lies in the underlying operating system.
| + | The Unity Editor for Linux is currently in beta. It is supported on [http://ubuntu.org Ubuntu Linux]. |
| | | |
− | There's a real grey area with respect to where the line is drawn between the canonical 'operating system' and various applications software. To me, it isn't a line so much as an area of overlap comprised principally of libraries. As I'm sure you probably know, libraries support (typically) related high level operations over a set of more general purpose, low-level (possible kernel-provided) operations in support of such things as ease of coding, modularization of code, homegeniety and consistency of operations across different software elements, etc. I digress a little, but it is relevant.
| + | As it is currently in beta, it is not officially supported by Sinespace but still may be useful to developers. |
| | | |
− | To cut to the chase, the libraries are the real focus of getting it right 'on linux'.
| + | [https://forum.unity.com/threads/unity-on-linux-release-notes-and-known-issues.350256/ The Unity on Linux Thread] contains links to download the editor, release notes and a list of known issues. |
| | | |
− | The salient point about the libraries is this: Unity requires certain operations to be supported by the system libraries. These operations follow a defacto standard. It doesn't much matter to unity what library provides the functionality; as long as a proper value is returned when the library calls are made. | + | The same thread also contains a list of dependencies that may be used to unofficially run the editor on other Linux distributions. |
| | | |
− | If you haven't guessed it by now, there are often a few different libraries that might provide such functionality. Different linux distributions might (and usually do) use different combinations of these libraries to provide essentially the same support.
| + | In addition to its requirements, the Sinespace SDK needs the '''mono-complete''' package also installed: '''sudo apt install mono-complete''' |
| | | |
− | SO. How do you know which libraries to install? That's a good question. It begins with knowing what functionality unity requires, but that's more difficult than it sounds because it's fairly fine-grained knowledge of unity internals. However, we do know that Unity is 'officially' supported by Unity on the Ubuntu Linux distribution. Does this means we should be running unity -only- on ubuntu? Oh HELL no :)
| + | Installation from the command-line is done in two steps: |
− | | + | |
− | It DOES mean, however, that we can use the list of ubuntu library dependencies provided by unity, and cross-reference them to the libraries that are available in the manifests of our distribution's software repositories.
| + | |
− | | + | |
− | This is hard work, but readily accomplished if you just know what to do :)
| + | |
− | | + | |
− | | + | |
− | == Ubuntu package dependencies provided by Unity: ==
| + | |
− | | + | |
− | | + | |
− | gconf-service
| + | |
− | | + | |
− | lib32gcc1 (>= 1:4.1.1)
| + | |
− | | + | |
− | lib32stdc++6 (>= 4.6)
| + | |
− | | + | |
− | libasound2 (>= 1.0.23)
| + | |
− | | + | |
− | libc6 (>> 2.15)
| + | |
− | | + | |
− | libc6-i386 (>= 2.15)
| + | |
− | | + | |
− | libcairo2 (>= 1.6.0)
| + | |
− | | + | |
− | libcap2 (>= 2.10)
| + | |
− | | + | |
− | libcups2 (>= 1.4.0)
| + | |
− | | + | |
− | libdbus-1-3 (>= 1.2.14)
| + | |
− | | + | |
− | libexpat1 (>= 1.95.8)
| + | |
− | | + | |
− | libfontconfig1 (>= 2.8.0)
| + | |
− | | + | |
− | libfreetype6 (>= 2.3.9)
| + | |
− | | + | |
− | libgcc1 (>= 1:4.1.1)
| + | |
− | | + | |
− | libgconf-2-4 (>= 2.31.1)
| + | |
− | | + | |
− | libgdk-pixbuf2.0-0 (>= 2.22.0)
| + | |
− | | + | |
− | libgl1-mesa-glx | libgl1
| + | |
− | | + | |
− | libglib2.0-0 (>= 2.31.8)
| + | |
− | | + | |
− | libglu1-mesa | libglu1
| + | |
− | | + | |
− | libgtk2.0-0 (>= 2.24.0)
| + | |
− | | + | |
− | libnspr4 (>= 1.8.0.10)
| + | |
− | | + | |
− | libnss3 (>= 3.14.3)
| + | |
− | | + | |
− | libpango1.0-0 (>= 1.22.0)
| + | |
− | | + | |
− | libstdc++6 (>= 4.6)
| + | |
− | | + | |
− | libx11-6 (>= 2:1.4.99.1)
| + | |
− | | + | |
− | libxcomposite1 (>= 1:0.3-1)
| + | |
− | | + | |
− | libxcursor1 (>> 1.1.2)
| + | |
− | | + | |
− | libxdamage1 (>= 1:1.1)
| + | |
− | | + | |
− | libxext6
| + | |
− | | + | |
− | libxfixes3
| + | |
− | | + | |
− | libxi6 (>= 2:1.2.99.4)
| + | |
− | | + | |
− | libxrandr2 (>= 2:1.2.99.2)
| + | |
− | | + | |
− | libxrender1
| + | |
− | | + | |
− | libxtst6
| + | |
− | | + | |
− | zlib1g (>= 1:1.1.4)
| + | |
− | | + | |
− | debconf (>= 0.5) | debconf-2.0
| + | |
− | | + | |
− | npm
| + | |
− | | + | |
− | | + | |
− | a more maintained copy of this list (and the linux installers) can be found here: [https://forum.unity.com/threads/unity-on-linux-release-notes-and-known-issues.350256/]
| + | |
− | | + | |
− | Note that you'll only need the debconf stuff if you are actually running ubuntu or debian. Also note you'll want to be certain you have the latest stable drivers for your graphics subsystem.
| + | |
− | | + | |
− | Feel free to hit me up on skype or in-world if you need some help :)
| + | |
| | | |
| + | * Download the Unity .deb archive, in this example: unity-editor_amd64-2017.2.1f1.deb |
| + | * Install the .deb archive with '''sudo apt install ./unity-editor_amd64-2017.2.1f1.deb''' |
| | | |
| {{Creation Navbox}} | | {{Creation Navbox}} |
Unofficially, other conventional Linux distributions should be able to run the client without additional work. For full media support, you may need to install the libavcodec and libswscale libraries. This task is already taken care of by the install.sh script for Ubuntu users.
As it is currently in beta, it is not officially supported by Sinespace but still may be useful to developers.
The same thread also contains a list of dependencies that may be used to unofficially run the editor on other Linux distributions.