Update documentation

- Add copy button to code blocks
- Fix some badges
- Improve Linux installation instructions
This commit is contained in:
ReenigneArcher 2022-06-08 23:00:59 -04:00
parent 9b4fc8a270
commit 65c4f01998
6 changed files with 105 additions and 49 deletions

View File

@ -1055,7 +1055,7 @@ Description
by Moonlight. by Moonlight.
Default Default
OS dependent OS and package dependent
Example Example
.. code-block:: text .. code-block:: text

View File

@ -21,6 +21,26 @@ Docker
Linux Linux
----- -----
Follow the instructions for your preferred package type below.
.. Hint:: If this is the first time installing.
.. code-block:: bash
sudo usermod -a -G input $USER
sudo reboot now
.. Tip:: Optionally, run Sunshine in the background.
.. code-block:: bash
systemctl --user start sunshine
.. Note:: If screencasting fails with Wayland, you may need to run the following to force screencasting with X11.
.. code-block:: bash
sudo setcap -r $(readlink -f $(which sunshine))
AppImage AppImage
^^^^^^^^ ^^^^^^^^
@ -41,39 +61,40 @@ The current known compatibility of the AppImage is shown below.
- [✖] Ubuntu trusty - [✖] Ubuntu trusty
- [✖] CentOS 7 - [✖] CentOS 7
#. Download and extract ``sunshine-appimage.zip`` to your home directory.
#. Download and extract `sunshine-appimage.zip`
#. Edit ``/etc/udev/rules.d/85-sunshine-rules.rules`` and add
``KERNEL=="uinput", GROUP="input", MODE="0660", OPTIONS+="static_node=uinput"``
Debian Packages Debian Packages
^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^
.. image:: https://img.shields.io/github/issues/sunshinestream/sunshine/os:linux:debian?logo=github&style=for-the-badge .. image:: https://img.shields.io/github/issues/sunshinestream/sunshine/os:linux:debian?logo=github&style=for-the-badge
:alt: GitHub issues by-label :alt: GitHub issues by-label
#. Download ``sunshine.deb`` #. Download ``sunshine.deb`` and run the following code.
#. ``sudo apt install -f ./sunshine.deb``
.. code-block:: bash
sudo apt install -f ./sunshine.deb
.. Tip:: You can double click the deb file to see details about the package and begin installation.
Red Hat Packages Red Hat Packages
^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^
.. image:: https://img.shields.io/github/issues/sunshinestream/sunshine/os:linux:fedora?logo=github&style=for-the-badge .. image:: https://img.shields.io/github/issues/sunshinestream/sunshine/os:linux:fedora?logo=github&style=for-the-badge
:alt: GitHub issues by-label :alt: GitHub issues by-label
#. Download ``sunshine.rpm`` #. Add `rpmfusion` repositories by running the following code.
#. ``sudo dnf install ./sunshine.rpm``
.. Hint:: If this is the first time installing. .. code-block:: bash
.. code-block:: bash sudo dnf install https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm \
https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
sudo usermod -a -G input $USER #. Download ``sunshine.rpm`` and run the following code.
sudo reboot now
.. Tip:: Optionally, run Sunshine in the background. .. code-block:: bash
.. code-block:: bash sudo dnf install ./sunshine.rpm
systemctl --user start sunshine .. Tip:: You can double click the rpm file to see details about the package and begin installation.
MacOS MacOS
----- -----
@ -87,8 +108,12 @@ Disk Image File option:
Portfile option: Portfile option:
#. Install `MacPorts <https://www.macports.org>`_ #. Install `MacPorts <https://www.macports.org>`_
#. Download the ``Portfile`` to ``/tmp`` #. Download the ``Portfile`` to ``/tmp`` and run the following code.
#. In a terminal run ``cd /tmp && sudo port install``
.. code-block:: bash
cd /tmp && sudo port install
#. The first time you start Sunshine, you will be asked to grant access to screen recording and your microphone. #. The first time you start Sunshine, you will be asked to grant access to screen recording and your microphone.
Standalone option: Standalone option:

View File

@ -10,6 +10,7 @@ AUR (Arch Linux User Repository)
.. image:: https://img.shields.io/aur/version/sunshine?style=for-the-badge&logo=archlinux .. image:: https://img.shields.io/aur/version/sunshine?style=for-the-badge&logo=archlinux
:alt: AUR version :alt: AUR version
:target: https://aur.archlinux.org/packages/sunshine
.. image:: https://img.shields.io/aur/last-modified/sunshine?style=for-the-badge&logo=archlinux .. image:: https://img.shields.io/aur/last-modified/sunshine?style=for-the-badge&logo=archlinux
:alt: AUR last modified :alt: AUR last modified
@ -20,38 +21,31 @@ AUR (Arch Linux User Repository)
.. image:: https://img.shields.io/aur/maintainer/sunshine?style=for-the-badge&logo=archlinux .. image:: https://img.shields.io/aur/maintainer/sunshine?style=for-the-badge&logo=archlinux
:alt: AUR maintainer :alt: AUR maintainer
.. image:: https://img.shields.io/static/v1?label=maintainer&message=hadogenes&color=blue&style=for-the-badge&logo=github
:alt: GitHub Maintainer
:target: https://github.com/hadogenes
Chocolatey Chocolatey
---------- ----------
.. image:: https://img.shields.io/chocolatey/v/Sunshine?style=for-the-badge&logo=chocolatey .. image:: https://img.shields.io/chocolatey/v/Sunshine?style=for-the-badge&logo=chocolatey
:alt: Chocolatey Version :alt: Chocolatey Version
:target: https://community.chocolatey.org/packages/sunshine
.. image:: https://img.shields.io/chocolatey/dt/sunshine?style=for-the-badge&logo=chocolatey .. image:: https://img.shields.io/chocolatey/dt/sunshine?style=for-the-badge&logo=chocolatey
:alt: Chocolatey :alt: Chocolatey
.. image:: https://img.shields.io/static/v1?label=maintainer&message=AeliusSaionji&color=blue&style=for-the-badge&logo=github
:alt: GitHub Maintainer
:target: https://github.com/AeliusSaionji
Scoop Scoop
----- -----
.. image:: https://img.shields.io/scoop/v/sunshine?bucket=extras&style=for-the-badge .. image:: https://img.shields.io/scoop/v/sunshine?bucket=extras&style=for-the-badge
:alt: Scoop Version (extras bucket) :alt: Scoop Version (extras bucket)
:target: https://scoop.sh/#/apps?s=0&d=1&o=true&q=sunshine
.. image:: https://img.shields.io/static/v1?label=maintainer&message=sitiom&color=blue&style=for-the-badge&logo=github
:alt: GitHub Maintainer
:target: https://github.com/sitiom
Legacy GitHub Repo Legacy GitHub Repo
------------------ ------------------
.. Attention:: This repo is no longer maintained. Thank you to Loki for bringing this amazing project to life! .. Attention:: This repo is not maintained. Thank you to Loki for bringing this amazing project to life!
.. image:: https://img.shields.io/static/v1?label=repo&message=loki-47-6F-64/sunshine&color=blue&style=for-the-badge&logo=github
:alt: GitHub Maintainer
:target: https://github.com/loki-47-6F-64/sunshine/releases
.. image:: https://img.shields.io/github/last-commit/loki-47-6F-64/sunshine?style=for-the-badge&logo=github .. image:: https://img.shields.io/github/last-commit/loki-47-6F-64/sunshine?style=for-the-badge&logo=github
:alt: GitHub last commit :alt: GitHub last commit
@ -61,7 +55,3 @@ Legacy GitHub Repo
.. image:: https://img.shields.io/github/downloads/loki-47-6F-64/sunshine/total?style=for-the-badge&logo=github .. image:: https://img.shields.io/github/downloads/loki-47-6F-64/sunshine/total?style=for-the-badge&logo=github
:alt: GitHub Releases :alt: GitHub Releases
.. image:: https://img.shields.io/static/v1?label=maintainer&message=loki-47-6F-64&color=blue&style=for-the-badge&logo=github
:alt: GitHub Maintainer
:target: https://github.com/loki-47-6F-64

View File

@ -23,8 +23,9 @@ Usage
Add games and applications. Add games and applications.
This can be configured in the web ui. This can be configured in the web ui.
.. Note:: Additionally, apps can be configured manually. `assets/apps_<os>.json` is an example of a list of .. Note:: Additionally, apps can be configured manually. `src_assets/<os>/config/apps.json` is an example of a
applications that are started just before running a stream. list of applications that are started just before running a stream. This is the directory within the GitHub
repo.
.. Attention:: Application list is not fully supported on MacOS .. Attention:: Application list is not fully supported on MacOS
@ -55,6 +56,9 @@ Setup
Linux Linux
^^^^^ ^^^^^
The deb and rpm packages handle these steps automatically. The AppImage does not, and third party packages may not as
well.
Sunshine needs access to `uinput` to create mouse and gamepad events. Sunshine needs access to `uinput` to create mouse and gamepad events.
Add user to group `input`. Add user to group `input`.
@ -62,13 +66,23 @@ Add user to group `input`.
usermod -a -G input $USER usermod -a -G input $USER
.. Warning:: If the above doesn't work you can try the following. This is not an advised method as it makes the
current user the owner of ``/dev/uinput``. Use at your own risk.
.. code-block:: bash
sudo chown $USER /dev/uinput
Create `udev` rules. Create `udev` rules.
.. code-block:: bash .. code-block:: bash
nano /etc/udev/rules.d/85-sunshine-input.rules nano /etc/udev/rules.d/85-sunshine-input.rules
Input the following contents: Input the following contents.
``KERNEL=="uinput", GROUP="input", MODE="0660"``
.. code-block::
KERNEL=="uinput", GROUP="input", MODE="0660", OPTION+="static_node=uinput"
Save the file and exit: Save the file and exit:
@ -76,18 +90,43 @@ Create `udev` rules.
#. ``Y`` to save modifications. #. ``Y`` to save modifications.
Configure autostart service Configure autostart service
`path/to/build/dir/sunshine.service` is used to start sunshine in the background. To use it, do the following: - filename: ``~/.config/systemd/user/sunshine.service``
- contents:
#. Copy it to the users systemd: ``cp sunshine.service ~/.config/systemd/user/`` .. code-block::
#. Starting
- One time: ``systemctl --user start sunshine`` [Unit]
- Always on boot: ``systemctl --user enable sunshine`` Description=Sunshine Gamestream Server for Moonlight
[Service]
ExecStart=~/sunshine.AppImage
[Install]
WantedBy=graphical-session.target
Start once
.. code-block:: bash
systemctl --user start sunshine
Start on boot
.. code-block:: bash
systemctl --user enable sunshine
Additional Setup for KMS Additional Setup for KMS
.. Note:: ``cap_sys_admin`` may as well be root, except you don't need to be root to run it. .. Note:: ``cap_sys_admin`` may as well be root, except you don't need to be root to run it. It is necessary to
allow Sunshine to use KMS.
It is necessary to allow Sunshine to use KMS: ``sudo setcap cap_sys_admin+p sunshine`` Enable
.. code-block:: bash
sudo setcap cap_sys_admin+p $(readlink -f $(which sunshine))
Disable
.. code-block:: bash
sudo setcap -r $(readlink -f $(which sunshine))
MacOS MacOS
^^^^^ ^^^^^
@ -114,7 +153,7 @@ All shortcuts start with CTRL + ALT + SHIFT, just like Moonlight
Application List Application List
---------------- ----------------
- You can use Environment variables in place of values - You can use Environment variables in place of values
- ``$(HOME)` will be replaced by the value of ``$HOME`` - ``$(HOME)`` will be replaced by the value of ``$HOME``
- ``$$`` will be replaced by ``$``, e.g. ``$$(HOME)`` will be replaced by ``$(HOME)`` - ``$$`` will be replaced by ``$``, e.g. ``$$(HOME)`` will be replaced by ``$(HOME)``
- ``env`` - Adds or overwrites Environment variables for the commands/applications run by Sunshine - ``env`` - Adds or overwrites Environment variables for the commands/applications run by Sunshine
- ``"Variable name":"Variable value"`` - ``"Variable name":"Variable value"``

View File

@ -46,7 +46,8 @@ extensions = [
'm2r2', # enable markdown files 'm2r2', # enable markdown files
'sphinx.ext.autosectionlabel', 'sphinx.ext.autosectionlabel',
'sphinx.ext.todo', # enable to-do sections 'sphinx.ext.todo', # enable to-do sections
'sphinx.ext.viewcode' # add links to view source code 'sphinx.ext.viewcode', # add links to view source code
'sphinx_copybutton', # add a copy button to code blocks
] ]
# Add any paths that contain templates here, relative to this directory. # Add any paths that contain templates here, relative to this directory.

View File

@ -1,4 +1,5 @@
Babel==2.9.1 Babel==2.9.1
m2r2==0.3.2 m2r2==0.3.2
Sphinx==4.5.0 Sphinx==4.5.0
sphinx-copybutton==0.5.0
sphinx-rtd-theme==1.0.0 sphinx-rtd-theme==1.0.0