Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Documentation Update: Add linux ssh guide #1527

Merged
merged 105 commits into from
Sep 14, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
105 commits
Select commit Hold shift + click to select a range
423cb47
Added some docs to setup sphinx local environment
e-dong Aug 13, 2023
0c6d850
Added dummy linux page
e-dong Aug 13, 2023
2c0408e
Revert "Added some docs to setup sphinx local environment"
e-dong Aug 13, 2023
699fc63
Reordered pages as suggested by ReenigneArcher
e-dong Aug 16, 2023
f563555
Removed duplicate app_examples n toc
e-dong Aug 16, 2023
815d864
Added big picture outline for guide
e-dong Aug 16, 2023
59fe422
Removed duplicate wording
e-dong Aug 16, 2023
53a9060
Added raw rough draft content to guide
e-dong Aug 23, 2023
f6bde5d
added note on graphviz
e-dong Aug 24, 2023
56a93c7
Added sphinx_inline_tab ext; enables .. tab:: directive
e-dong Aug 25, 2023
9ad55b5
Updated ref to point to linux setup
e-dong Aug 25, 2023
d5b2278
Added ref to guides with tutorials
e-dong Aug 25, 2023
f41f609
Updated page description for guide.rst
e-dong Aug 25, 2023
4b8caa1
Added some polish to linux guide
e-dong Aug 25, 2023
65addde
Update docs/source/conf.py
e-dong Aug 25, 2023
348bc09
Fix typo
e-dong Aug 25, 2023
5d45cbe
Merge branch 'add-linux-ssh-guide' of github.com:e-dong/Sunshine into…
e-dong Aug 25, 2023
540a409
Merge branch 'nightly' into add-linux-ssh-guide
e-dong Aug 25, 2023
07d73d8
Made naming of X server consistent; Added section linking to host and…
e-dong Aug 25, 2023
ae79b05
Removed comment in x11 config
e-dong Aug 25, 2023
8b7acc8
Made more tweaks; added more details; rearranged some items
e-dong Aug 26, 2023
819732a
Merge branch 'nightly' of github.com:LizardByte/Sunshine into add-lin…
e-dong Aug 26, 2023
8dfcb7c
Merge branch 'nightly' of https://github.com/LizardByte/Sunshine into…
e-dong Aug 27, 2023
779dd80
Added some more detail about DHCP reservation
e-dong Aug 28, 2023
f8e1288
Made static ip section more clear; restructured uinput workaround; ad…
e-dong Aug 28, 2023
6554d48
Merge branch 'nightly' of github.com:LizardByte/Sunshine into add-lin…
e-dong Aug 28, 2023
08a09cd
Added link to guide from usage:linux
e-dong Aug 30, 2023
1f7dd4c
More touchup on guide
e-dong Aug 30, 2023
593a013
Change code-blocks to bash to be consistent
e-dong Aug 30, 2023
509204f
Removed system_packages due to deprecation
e-dong Aug 30, 2023
d6277e7
Revert "Removed system_packages due to deprecation"
e-dong Sep 6, 2023
0af6e1b
Merge branch 'nightly' of github.com:LizardByte/Sunshine into add-lin…
e-dong Sep 6, 2023
85d5d50
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
8db6182
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
5ae2e81
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
a0ea1da
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
e7f6eb8
Update docs/source/about/usage.rst
e-dong Sep 6, 2023
95cd16f
Update docs/source/about/usage.rst
e-dong Sep 6, 2023
0cd2ff0
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
c07a5f5
Update docs/source/about/usage.rst
e-dong Sep 6, 2023
082a5c1
Update docs/source/contributing/testing.rst
e-dong Sep 6, 2023
1d7df7b
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
e6784d4
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
8df8a42
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
251db61
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
b2ac91e
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
413545e
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
a1a7f16
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
c1bee1e
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
5ae3687
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
c4d455f
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
230633f
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
51ff569
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
fa81d14
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
85d49da
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
a2527ea
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
c835b04
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
d6e17a0
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
1ceb286
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
3201556
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
b76a700
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
f4e413f
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
0aeab38
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
380815c
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
d40db93
Update docs/source/about/guides/linux.rst
e-dong Sep 6, 2023
9fcfbee
Update docs/source/about/usage.rst
e-dong Sep 6, 2023
b768211
Removed one of the horizontal rules
e-dong Sep 6, 2023
d1174e2
Fixed indentation and other stylistic issues in rst files
e-dong Sep 7, 2023
73fb1bb
Added tab to the ignore_directives list
e-dong Sep 7, 2023
6660d44
Addressed style issues and some code review comments
e-dong Sep 7, 2023
a75cccd
Added note about HDR support on linux
e-dong Sep 7, 2023
ce516ff
Updated link for checkpoint for consistency
e-dong Sep 7, 2023
96fdf6c
Using the text code-block makes nvidia-smi output render nicer
e-dong Sep 7, 2023
2917afb
Changed admonition to note class in uinput section
e-dong Sep 7, 2023
21927c1
E.g. to e.g.
e-dong Sep 7, 2023
1389ff1
Updated wording under stream launcher script section
e-dong Sep 7, 2023
85ff669
Refactored headless ssh into separate rst file
e-dong Sep 7, 2023
09016ae
Update docs/source/contributing/testing.rst
e-dong Sep 8, 2023
c92b32b
Update docs/source/contributing/testing.rst
e-dong Sep 8, 2023
460a2b8
Update docs/source/about/guides/linux/headless_ssh.rst
e-dong Sep 8, 2023
b61b6a8
Merge branch 'nightly' of github.com:LizardByte/Sunshine into add-lin…
e-dong Sep 8, 2023
d0d2771
Fixed trailing whitespace with sphinx-lint
e-dong Sep 8, 2023
6614de0
fixed typo
e-dong Sep 8, 2023
fc701cd
Added more fixes
e-dong Sep 8, 2023
66f02f3
Fixed typo of specifying refresh rate to xrandr
e-dong Sep 9, 2023
ac6e876
Added next steps
e-dong Sep 9, 2023
0088e71
Some more tweaking
e-dong Sep 9, 2023
51c77fc
Wraps long bash pipelines
e-dong Sep 9, 2023
425ca7e
Made small tweaks
e-dong Sep 10, 2023
e56e467
Replaced the with an
e-dong Sep 11, 2023
73711d8
Merge branch 'nightly' of github.com:LizardByte/Sunshine into add-lin…
e-dong Sep 14, 2023
db3cb7d
Update docs/source/about/guides/linux/headless_ssh.rst
e-dong Sep 14, 2023
0e21d6e
Update docs/source/about/guides/linux/headless_ssh.rst
e-dong Sep 14, 2023
011ae45
Update docs/source/about/guides/linux/headless_ssh.rst
e-dong Sep 14, 2023
75a62df
Update docs/source/about/guides/linux/headless_ssh.rst
e-dong Sep 14, 2023
2f4ee94
Update docs/source/about/guides/linux/headless_ssh.rst
e-dong Sep 14, 2023
554279a
Update docs/source/about/guides/linux/headless_ssh.rst
e-dong Sep 14, 2023
3b93199
Update docs/source/about/usage.rst
e-dong Sep 14, 2023
8536826
Update docs/source/about/guides/linux/headless_ssh.rst
e-dong Sep 14, 2023
18e89ac
Update docs/source/about/guides/app_examples.rst
e-dong Sep 14, 2023
ee7daee
Update docs/source/about/guides/app_examples.rst
e-dong Sep 14, 2023
f3c9e55
updated code-block from console to bash
e-dong Sep 14, 2023
33ee412
fixed title and table
e-dong Sep 14, 2023
9e698c6
remove spacing for code block
e-dong Sep 14, 2023
34b3f5c
Merge branch 'nightly' into add-linux-ssh-guide
ReenigneArcher Sep 14, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .rstcheck.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,5 @@ ignore_directives =
doxygenfile,
include,
mdinclude,
tab,
todo,
1 change: 1 addition & 0 deletions docs/requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,4 @@ rstcheck[sphinx]==6.2.0
rstfmt==0.0.14
Sphinx==7.2.5
sphinx-copybutton==0.5.2
sphinx_inline_tabs==2023.4.21
12 changes: 6 additions & 6 deletions docs/source/about/advanced_usage.rst
Original file line number Diff line number Diff line change
Expand Up @@ -866,18 +866,18 @@ capture
or `nvlax <https://github.com/illnyang/nvlax/>`__.
wlr Capture for wlroots based Wayland compositors via DMA-BUF.
kms DRM/KMS screen capture from the kernel. This requires that sunshine has cap_sys_admin capability.
See :ref:`Linux Setup <about/usage:setup>`.
See :ref:`Linux Setup <about/usage:linux>`.
x11 Uses XCB. This is the slowest and most CPU intensive so should be avoided if possible.
========= ===========

**Default**
Automatic. Sunshine will use the first capture method available in the order of the table above.

**Example**
.. code-block:: text

capture = kms

encoder
^^^^^^^

Expand Down Expand Up @@ -992,7 +992,7 @@ nvenc_preset
**Description**
NVENC encoder performance preset.
Higher numbers improve compression (quality at given bitrate) at the cost of increased encoding latency.
Recommended to change only when limited by network or decoder, otherwise similar effect can be accomplished by increasing bitrate.
Recommended to change only when limited by network or decoder, otherwise similar effect can be accomplished by increasing bitrate.

.. Note:: This option only applies when using NVENC `encoder`_.

Expand Down Expand Up @@ -1027,7 +1027,7 @@ nvenc_twopass
**Description**
Enable two-pass mode in NVENC encoder.
This allows to detect more motion vectors, better distribute bitrate across the frame and more strictly adhere to bitrate limits.
Disabling it is not recommended since this can lead to occasional bitrate overshoot and subsequent packet loss.
Disabling it is not recommended since this can lead to occasional bitrate overshoot and subsequent packet loss.

.. Note:: This option only applies when using NVENC `encoder`_.

Expand Down Expand Up @@ -1058,7 +1058,7 @@ nvenc_realtime_hags
**Description**
Use realtime gpu scheduling priority in NVENC when hardware accelerated gpu scheduling (HAGS) is enabled in Windows.
Currently NVIDIA drivers may freeze in encoder when HAGS is enabled, realtime priority is used and VRAM utilization is close to maximum.
Disabling this option lowers the priority to high, sidestepping the freeze at the cost of reduced capture performance when the GPU is heavily loaded.
Disabling this option lowers the priority to high, sidestepping the freeze at the cost of reduced capture performance when the GPU is heavily loaded.

.. Note:: This option only applies when using NVENC `encoder`_.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -128,11 +128,53 @@ Changing Resolution and Refresh Rate (Linux - X11)
+----------------------+---------------------------------------------------------------------------------------------------------------------------------------+
| **Field** | **Value** |
+----------------------+---------------------------------------------------------------------------------------------------------------------------------------+
| Command Preparations | Do: ``sh -c "xrandr --output HDMI-1 --mode \"${SUNSHINE_CLIENT_WIDTH}x${SUNSHINE_CLIENT_HEIGHT}\" --range ${SUNSHINE_CLIENT_FPS}"`` |
| Command Preparations | Do: ``sh -c "xrandr --output HDMI-1 --mode \"${SUNSHINE_CLIENT_WIDTH}x${SUNSHINE_CLIENT_HEIGHT}\" --rate ${SUNSHINE_CLIENT_FPS}"`` |
| +---------------------------------------------------------------------------------------------------------------------------------------+
| | Undo: ``xrandr --output HDMI-1 --mode 3840x2160 --rate 120`` |
+----------------------+---------------------------------------------------------------------------------------------------------------------------------------+

.. hint::
The above only works if the xrandr mode already exists. You will need to create new modes to stream to macOS and iOS devices, since they use non standard resolutions.

You can update the ``Do`` command to this:
.. code-block:: bash

bash -c "${HOME}/scripts/set-custom-res.sh \"${SUNSHINE_CLIENT_WIDTH}\" \"${SUNSHINE_CLIENT_HEIGHT}\" \"${SUNSHINE_CLIENT_FPS}\""

The ``set-custom-res.sh`` will have this content:
.. code-block:: bash

#!/bin/bash

# Get params and set any defaults
width=${1:-1920}
height=${2:-1080}
refresh_rate=${3:-60}

# You may need to adjust the scaling differently so the UI/text isn't too small / big
scale=${4:-0.55}

# Get the name of the active display
display_output=$(xrandr | grep " connected" | awk '{ print $1 }')

# Get the modeline info from the 2nd row in the cvt output
modeline=$(cvt ${width} ${height} ${refresh_rate} | awk 'FNR == 2')
xrandr_mode_str=${modeline//Modeline \"*\" /}
mode_alias="${width}x${height}"

echo "xrandr setting new mode ${mode_alias} ${xrandr_mode_str}"
xrandr --newmode ${mode_alias} ${xrandr_mode_str}
xrandr --addmode ${display_output} ${mode_alias}

# Reset scaling
xrandr --output ${display_output} --scale 1

# Apply new xrandr mode
xrandr --output ${display_output} --primary --mode ${mode_alias} --pos 0x0 --rotate normal --scale ${scale}

# Optional reset your wallpaper to fit to new resolution
# xwallpaper --zoom /path/to/wallpaper.png

Changing Resolution and Refresh Rate (Linux - Wayland)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Expand Down
10 changes: 10 additions & 0 deletions docs/source/about/guides/guides.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
Guides
======

Collection of guides written by the community!

.. toctree::
:maxdepth: 2

app_examples
linux/linux
Loading