Skip to content
Snippets Groups Projects
0_setup.py 1.34 KiB
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import utils
import json
import subprocess

CONTENT = [
    "https://www.ubicast.eu/media/downloads/TradeshowDemoKit/medical_education.zip",
    "https://www.ubicast.eu/media/downloads/TradeshowDemoKit/rich-media-sneak-peek.zip"
]


def setup(interactive=True):
    cmds = list()
    options = {
        "ms_url": utils.get_conf('MS_SERVER_NAME'),
        "ms_apikey": utils.get_conf('MS_API_KEY')
    }
    cmd_template = "./publish_zip_by_url.py -w https://{ms_url} -u %s -a {ms_apikey}".format(**options)
    for c in CONTENT:
        cmd = cmd_template % c
        cmds.append(cmd)

    cmds.append('rsync -r mirisconf /etc/miris/conf')
    cmds.append('netcapturectl add')

    # try to enable hw accel if available
    subprocess.getstatusoutput("apt install -y vainfo")
    if subprocess.getstatusoutput("vainfo")[0] == 0:
        # hw acceleration requires boot-time module options so a reboot will be needed
        with open('/etc/miris/netcapture.json.example', 'r+') as f:
            c = json.load(f)
            c['enable_hw_acceleration'] = True
            json.dump(c, f)
        cmds.append('echo "options i915 enable_guc_loading=1 enable_guc_submission=1" > /etc/modprobe.d/netcapture.conf')
        cmds.append('update-initramfs -u')
        print('A reboot is required')
    utils.run_commands(cmds)