diff --git a/Manual.html b/Manual.html index 3fd9a45..792290c 100644 --- a/Manual.html +++ b/Manual.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
- +A User wants to install yaVDR without customization and relies on full automation. @@ -561,16 +561,16 @@ Several roles are used to tie everything together:
One of the major problems we faced with customized Ubuntu ISO files as installation media for prior yaVDR versions has been the limited hardware support and the time consuming process to create and update them. An interesting alternative to this approach is to enable the user to choose the installation medium by himself, so point releases, kernel versions and additional drivers can be chosen deliberately. After the basic setup is complete (and a working internet connection is available), a fully customizable install script completes the yaVDR installation.
This is an experimental feature which allows to set up a yaVDR installation based on a normal Ubuntu Server 16.04.x installation using Ansible. @@ -605,8 +605,8 @@ We use a callback to generate tags for all roles autmatically:
set -e @@ -650,12 +650,12 @@ ansible-playbook yavdr07-headless.yml -b -i 'localhost_
The yavdr07.yml
playbook sets up a fully-featured yaVDR installation:
@@ -709,8 +709,8 @@ The yavdr07.yml
playbook sets up a fully-featured yaVDR installatio
For a headless server installation yavdr07-headless.yml
is a good choice
@@ -749,8 +749,8 @@ For a headless server installation yavdr07-headless.yml
is a good c
This playbook can either be used to run the installation on the localhost or any other PC in the network that can be accessed via ssh. Simply add the host names or IP addresses to the hosts file in the respective section: @@ -764,12 +764,12 @@ This playbook can either be used to run the installation on the localhost or any
---
@@ -787,8 +787,8 @@ This playbook can either be used to run the installation on the localhost or any
# properties of the user vdr and vdr-related options @@ -805,6 +805,17 @@ This playbook can either be used to run the installation on the localhost or any safe_dirnames: true # escape characters (useful for windows clients and FAT/NTFS file systems) override_vdr_charset: false +# optional additional hosts and subnets for svdrphosts.conf +# +# vdr_svdrphosts: +# - 192.168.0.0/24 + +# copy channels.conf from a local file +# vdr_channels_conf: /path/to/channels.conf + +# download channels.conf from a given url (supports HTTP(S) and FTP) +# vdr_channels_conf_url: http://example.com/vdr/channels.conf + # add the vdr plugins you want to install vdr_plugins: - vdr-plugin-devstatus @@ -814,8 +825,8 @@ This playbook can either be used to run the installation on the localhost or any
# dictionary of directories for (shared) files. Automatically exported via NFS and Samba if those roles are enabled @@ -830,8 +841,8 @@ This playbook can either be used to run the installation on the localhost or any
nfs:
@@ -840,8 +851,8 @@ This playbook can either be used to run the installation on the localhost or any
samba:
@@ -851,8 +862,8 @@ This playbook can either be used to run the installation on the localhost or any
# additional packages you want to install @@ -871,11 +882,16 @@ This playbook can either be used to run the installation on the localhost or any
frontend: vdr + +# vdr shutdown command - SHUTDOWNCMD variable in /etc/default/vdr +# for standby use "/bin/systemctl suspend" +vdr_shutdown_command: poweroff + #system: # shutdown: poweroff wakeup_method: acpiwakeup @@ -886,8 +902,8 @@ This playbook can either be used to run the installation on the localhost or any
# Serial device to configure for a homebrew receiver. @@ -899,20 +915,20 @@ This playbook can either be used to run the installation on the localhost or any
---
@@ -930,19 +946,19 @@ This playbook can either be used to run the installation on the localhost or any
install nvidia-396 from ppa:graphics-drivers/ppa
---
@@ -971,15 +987,15 @@ install nvidia-396 from ppa:graphics-drivers/ppa
This role is used to set up a basic yaVDR installation. It creates the directories, installs the vdr and other useful packages.
This section is for reference only, please use the files in
You can set a list of package repositories which provide the necessary packages. Feel free to use own PPAs if you need special customization to the VDR and it’s plugins.
@@ -1009,7 +1025,7 @@ You can set a list of package repositories which provide the necessary packages.
global_vars
for customizations.
@@ -992,7 +1008,7 @@ This section is for reference only, please use the files in global_vars
-
+
Automatically installed drivers can be very useful, but if you know you need a certain driver, you can simply set it’s value to true. If you don’t want a driver to be installed, set it’s value to false. @@ -1022,7 +1038,7 @@ Automatically installed drivers can be very useful, but if you know you need a c
Add additional packages you would like to have on your installation to this list @@ -1036,7 +1052,7 @@ Add additional packages you would like to have on your installation to this list
This section allows you to set the recording directory, the user and group that runs the vdr and it’s home directory. @@ -1069,15 +1085,15 @@ This section allows you to set the recording directory, the user and group that
yavdr-common executes the following tasks:
---
@@ -1095,7 +1111,7 @@ yavdr-common executes the following tasks:
This task prevents apt to automatically install all recommended dependencies for packages: @@ -1112,7 +1128,7 @@ This task prevents apt to automatically install all recommended dependencies for
- name: add PPAs
@@ -1132,7 +1148,7 @@ This task prevents apt to automatically install all recommended dependencies for
- name: use bash instead of dash
@@ -1144,15 +1160,15 @@ This task prevents apt to automatically install all recommended dependencies for
- name: disable release-upgrade notifications
@@ -1174,7 +1190,7 @@ This task prevents apt to automatically install all recommended dependencies for
-
- name: apt | install basic packages
@@ -1206,7 +1222,7 @@ This task prevents apt to automatically install all recommended dependencies for
- name: apt | install extra packages
@@ -1219,15 +1235,15 @@ This task prevents apt to automatically install all recommended dependencies for
Stop vdr before entering suspend and unload dvb modules, reverse this operation on resume @@ -1238,8 +1254,8 @@ Stop vdr before entering suspend and unload dvb modules, reverse this operation
{{ ansible_managed | comment('c') }} @@ -1250,7 +1266,7 @@ APT::Install-Suggests "0";
#!/bin/bash
@@ -1291,7 +1307,7 @@ Allow the vdr user to restart vdr.service
and reboot the system
#!/usr/bin/env python3
@@ -1378,12 +1394,12 @@ Allow the vdr user to restart vdr.service
and reboot the system
first_run: False
@@ -1391,12 +1407,12 @@ Allow the vdr user to restart vdr.service
and reboot the system
- name: get information about usb and pci hardware and loaded kernel modules
@@ -1445,16 +1461,16 @@ Allow the vdr user to restart vdr.service
and reboot the system
---
@@ -1472,7 +1488,7 @@ Allow the vdr user to restart vdr.service
and reboot the system
- name: add svdrp and svdrp-disc to /etc/services
@@ -1487,7 +1503,7 @@ Allow the vdr user to restart vdr.service
and reboot the system
- name: create vdr recdir
@@ -1522,7 +1538,7 @@ Allow the vdr user to restart vdr.service
and reboot the system
The additional plugins to install can be set in the variable {{vdr_plugins}}
in the group variables
@@ -1538,7 +1554,7 @@ The additional plugins to install can be set in the variable {{vdr_plugins
- name: ensure vdr is stopped
@@ -1592,12 +1608,18 @@ The additional plugins to install can be set in the variable {{vdr_plugins
owner: '{{ vdr.user }}'
group: '{{ vdr.group }}'
mode: 0644
+
+- name: "vdr configuration | /etc/default/vdr"
+ template:
+ src: templates/default_vdr.j2
+ dest: /etc/default/vdr
+
- name: create directory for vdr.service systemd drop-in files
@@ -1618,12 +1640,12 @@ The additional plugins to install can be set in the variable {{vdr_plugins
{{ansible_managed | comment }}
@@ -1634,10 +1656,24 @@ The additional plugins to install can be set in the variable {{vdr_plugins
{{ ansible_managed | comment }} +# /etc/default/vdr +# +# See also /usr/share/doc/vdr/README.Debian.gz +# + +SHUTDOWNCMD="{{ vdr_shutdown_command }}" ++
{{ ansible_managed | comment }}
#
# svdrphosts This file describes a number of host addresses that
# are allowed to connect to the SVDRP port of the Video
@@ -1664,12 +1700,12 @@ The additional plugins to install can be set in the variable {{vdr_plugins
LIRC.Up KEY_UP @@ -1804,7 +1840,7 @@ XKeySym.Next XF86AudioNext
# Remote control key macros for VDR @@ -1830,12 +1866,12 @@ User0 @osdteletext
install_avahi: true @@ -1843,8 +1879,8 @@ User0 @osdteletext
---
@@ -1912,12 +1948,12 @@ User0 @osdteletext
---
@@ -1939,8 +1975,8 @@ User0 @osdteletext
<?xml version="1.0" encoding="UTF-8"?>
@@ -1999,17 +2035,17 @@ User0 @osdteletext
---
@@ -2037,12 +2073,12 @@ User0 @osdteletext
/srv *(rw,fsid=0,sync,no_subtree_check,all_squash,anongid={{ vdr.gid }},anonuid={{ vdr.uid }})
@@ -2053,7 +2089,7 @@ User0 @osdteletext
<?xml version="1.0" standalone='no'?> @@ -2074,15 +2110,15 @@ User0 @osdteletext
The role yavdr-remote
sets up the foundation for using eventlircd, lircd2uinput and the pre-configuration for remote receivers which can be detected by udev.
lircd0_socket: /var/run/lirc/lircd0
@@ -2090,8 +2126,8 @@ The role yavdr-remote
sets up the foundation for using eventlircd,
---
@@ -2162,12 +2198,12 @@ The role yavdr-remote
sets up the foundation for using eventlircd,
{% if frontend != 'kodi' %}
@@ -2178,7 +2214,7 @@ The role yavdr-remote
sets up the foundation for using eventlircd,
[Service]
@@ -2188,7 +2224,7 @@ The role yavdr-remote
sets up the foundation for using eventlircd,
{{ ansible_managed | comment }} @@ -2380,12 +2416,12 @@ ati_remote rc-medion-x10-digitainer /lib/udev/rc_keymaps/rc-medion-x10-digi
---
@@ -2407,8 +2443,8 @@ ati_remote rc-medion-x10-digitainer /lib/udev/rc_keymaps/rc-medion-x10-digi
# Use PulseAudio by default @@ -2430,12 +2466,12 @@ ati_remote rc-medion-x10-digitainer /lib/udev/rc_keymaps/rc-medion-x10-digi
The X-Server is started by using the two systemd units xlogin@.service
and x@.service
provided by the package xlogin. The former is enabled (and started) for the vdr user - which results (using the default settings for the user vdr with the uid 666) in the activation of xlogin@vdr.service
when reaching the graphical.target. To simplify starting and stopping the X-server and the desktop session a yavdr-xorg.service
is provided by the package yavdr-xorg
, which depends on the two units mentioned before.
@@ -2464,8 +2500,8 @@ In order to achive a clean shutdown of the session, x@t7.service
is
first_run: False
@@ -2488,12 +2524,12 @@ In order to achive a clean shutdown of the session, x@t7.service
is
---
@@ -2506,7 +2542,7 @@ In order to achive a clean shutdown of the session, x@t7.service
is
---
@@ -2624,7 +2660,7 @@ In order to achive a clean shutdown of the session, x@t7.service
is
---
@@ -2812,7 +2848,7 @@ In order to achive a clean shutdown of the session, x@t7.service
is
KMS drivers (like for intel (i915) and amd (radeon)) require additional configuration besides a customized xorg.conf
- for a „static“ output configuration (which works if the TV or AV receiver is not turned on) we need to force loading the display(s) EDID early during the boot process.
@@ -2860,12 +2896,12 @@ Please note that rescanning the connected displays works only after removing the
{{ ansible_managed | comment }} @@ -2875,11 +2911,11 @@ Please note that rescanning the connected displays works only after removing the
# file: roles/yavdr-xorg/templates/systemd/system/x-verbose@.service.j2 @@ -2895,7 +2931,7 @@ Please note that rescanning the connected displays works only after removing the
[Unit]
@@ -2921,7 +2957,7 @@ Please note that rescanning the connected displays works only after removing the
{{ ansible_managed | comment }} @@ -2933,7 +2969,7 @@ Please note that rescanning the connected displays works only after removing the
{{ ansible_managed | comment }} @@ -2948,7 +2984,7 @@ EndSection
{{ ansible_managed | comment }} @@ -3056,7 +3092,7 @@ EndSection
{{ ansible_managed | comment }} @@ -3382,7 +3418,7 @@ EndSection
{{ ansible_managed | comment }} @@ -3399,7 +3435,7 @@ EndSection -
Set environment variables for system locale and user session on startup @@ -3415,12 +3451,12 @@ Set environment variables for system locale and user session on startup
#!/bin/bash @@ -3445,16 +3481,16 @@ exit 0
--- @@ -3586,7 +3622,6 @@ exit 0 group: '{{ vdr.group }}' mode: 0644 - - name: create irexec configuration for the session block: - template: @@ -3621,16 +3656,16 @@ exit 0
xterm*background: Black @@ -3653,7 +3688,7 @@ XTerm.vt100.font: 7x13
#!/bin/bash @@ -3665,11 +3700,11 @@ XTerm.vt100.font: 7x13 -
# forward environment variables to an environment file and the systemd user session @@ -3705,7 +3740,7 @@ systemctl --user isolate yavdr-desktop.target
<?xml version="1.0" encoding="UTF-8"?> @@ -4552,7 +4587,7 @@ systemctl --user isolate yavdr-desktop.target
<?xml version="1.0" encoding="UTF-8"?> @@ -5381,11 +5416,11 @@ systemctl --user isolate yavdr-desktop.target -
[Unit] @@ -5398,7 +5433,7 @@ systemctl --user isolate yavdr-desktop.target
#!/bin/bash @@ -5427,7 +5462,7 @@ systemctl --user isolate yavdr-desktop.target
This script exchanges the primary and secondary screen. It needs access to the systemd user session. @@ -5446,7 +5481,7 @@ frontend-dbus-send start
[Unit]
@@ -5468,7 +5503,7 @@ frontend-dbus-send start
[Unit]
@@ -5491,7 +5526,7 @@ frontend-dbus-send start
[Unit]
@@ -5510,7 +5545,7 @@ frontend-dbus-send start
[Unit]
@@ -5529,7 +5564,7 @@ frontend-dbus-send start
-
irexec.service starts irexec for the user session @@ -5562,12 +5597,12 @@ end
---
@@ -5588,12 +5623,12 @@ end
---
@@ -5618,16 +5653,16 @@ end
{{ ansible_managed | comment }} @@ -5714,7 +5749,7 @@ end
{% for name, path in media_dirs.items() | list %} @@ -5736,7 +5771,7 @@ end
include = /etc/samba/smb.conf.custom @@ -5749,15 +5784,15 @@ end
It would be nice to be able to detect if it is suitable to install those drivers:
For now we have the role install-sundtek
, in the future we could do a little better:
@@ -5777,7 +5812,7 @@ Vendor-IDs:
https://github.com/s-moch/linux-saa716x - kann man den relevanten Teil als dkms-Paket bauen? @@ -5797,15 +5832,15 @@ Vendor-IDs:
The tool ubuntu-drivers is used to install the matching driver version for nvidia graphics cards, virtualbox guest additions and Intel and AMD microcode updates.
--- @@ -5823,13 +5858,14 @@ The tool ubuntu-drivers is used to install the matching driver version for nvidi when: (ansible_virtualization_type != "virtualbox" and ansible_virtualization_role != "guest") # ubuntu-drivers-common tries to autoinstall # conflicting packages for virtualbox in Ubuntu 16.04 and 18.04 :( + # also alternates between virtualbox-guest-dkms and virtualbox-guest-dkms-hwe on successive runs
This role installs the guest additions for virtualbox guests on Ubuntu 18.04 @@ -5839,6 +5875,10 @@ This role installs the guest additions for virtualbox guests on Ubuntu 18.04
--- # file roles/autoinstall-virtualbox-guest/tasks/main.yml +- name: collect facts about installed packages + package_facts: + manager: "apt" + - name: install virtualbox guest additions block: - name: install packages @@ -5846,9 +5886,8 @@ This role installs the guest additions for virtualbox guests on Ubuntu 18.04 state: present name: - dkms - - virtualbox-guest-x11-hwe - - virtualbox-guest-dkms-hwe - - virtualbox-guest-x11-hwe + - '{{ "virtualbox-guest-x11-hwe" if "xserver-xorg-hwe-18.04" in ansible_facts.packages else "virtualbox-guest-x11" }}' + - '{{ "virtualbox-guest-dkms-hwe" if "linux-generic-hwe-18.04" in ansible_facts.packages else "virtualbox-guest-dkms" }}' # TODO: set xineliboutput as frontend when: @@ -5878,12 +5917,12 @@ This role installs the guest additions for virtualbox guests on Ubuntu 18.04
---
@@ -5895,8 +5934,8 @@ This role installs the guest additions for virtualbox guests on Ubuntu 18.04
---
@@ -5938,8 +5977,8 @@ This role installs the guest additions for virtualbox guests on Ubuntu 18.04
{{ ansible_managed | comment }} @@ -5968,12 +6007,12 @@ This role installs the guest additions for virtualbox guests on Ubuntu 18.04
---
@@ -5984,8 +6023,8 @@ This role installs the guest additions for virtualbox guests on Ubuntu 18.04
---
@@ -6027,8 +6066,8 @@ This role installs the guest additions for virtualbox guests on Ubuntu 18.04
{{ ansible_managed | comment }} @@ -6056,15 +6095,15 @@ This role installs the guest additions for virtualbox guests on Ubuntu 18.04
If a Sat>IP Server responds to a discovery request, the package vdr-plugin-satip is installed.
---
@@ -6088,12 +6127,12 @@ If a Sat>IP Server responds to a discovery request, the package vdr-plugin-sa
---
@@ -6109,12 +6148,12 @@ If a Sat>IP Server responds to a discovery request, the package vdr-plugin-sa
---
@@ -6130,12 +6169,12 @@ If a Sat>IP Server responds to a discovery request, the package vdr-plugin-sa
---
@@ -6151,12 +6190,12 @@ If a Sat>IP Server responds to a discovery request, the package vdr-plugin-sa
---
@@ -6172,8 +6211,8 @@ If a Sat>IP Server responds to a discovery request, the package vdr-plugin-sa
---
@@ -6188,12 +6227,12 @@ If a Sat>IP Server responds to a discovery request, the package vdr-plugin-sa
---
@@ -6204,8 +6243,8 @@ If a Sat>IP Server responds to a discovery request, the package vdr-plugin-sa
---
@@ -6246,12 +6285,12 @@ If a Sat>IP Server responds to a discovery request, the package vdr-plugin-sa
---
@@ -6262,8 +6301,8 @@ If a Sat>IP Server responds to a discovery request, the package vdr-plugin-sa
---
@@ -6273,8 +6312,8 @@ If a Sat>IP Server responds to a discovery request, the package vdr-plugin-sa
---
@@ -6324,15 +6363,15 @@ If a Sat>IP Server responds to a discovery request, the package vdr-plugin-sa
How to get a driver for the TT-6400 FF card? Needed firmware files are in the yavdr-firmware
package.
--- @@ -6343,8 +6382,8 @@ How to get a driver for the TT-6400 FF card? Needed firmware files are in the
--- @@ -6362,12 +6401,12 @@ How to get a driver for the TT-6400 FF card? Needed firmware files are in the
--- @@ -6378,8 +6417,8 @@ How to get a driver for the TT-6400 FF card? Needed firmware files are in the
--- @@ -6399,12 +6438,12 @@ How to get a driver for the TT-6400 FF card? Needed firmware files are in the
--- @@ -6415,8 +6454,8 @@ How to get a driver for the TT-6400 FF card? Needed firmware files are in the
--- @@ -6432,19 +6471,19 @@ How to get a driver for the TT-6400 FF card? Needed firmware files are in the
This role preconfigures the system for serial „homebrew“ receivers. Newer kernel versions provide serial_ir
which acts as a rc-core driver, so we don’t need lircd - eventlircd can use the device directly.
-As configured in the role yavdr-remote (/etc/rc_maps.cfg) a keytable for a RC-6 MCE remote is loaded by default. You can choose a different keymap which may also use another ir-protocol. +As configured in the role yavdr-remote (/etc/rc_maps.cfg) a keytable for a RC-6 MCE remote is loaded by default. You can choose a different keymap which may also use another ir-protocol.
--- @@ -6455,8 +6494,8 @@ As configured in the role yavdr-remote (/etc/rc_maps.cfg
--- @@ -6484,12 +6523,12 @@ As configured in the role yavdr-remote (/etc/rc_maps.cfg