153a5a1b3Sopenharmony_ci#!/bin/sh 253a5a1b3Sopenharmony_ci 353a5a1b3Sopenharmony_ci# This file is part of PulseAudio. 453a5a1b3Sopenharmony_ci# 553a5a1b3Sopenharmony_ci# PulseAudio is free software; you can redistribute it and/or modify 653a5a1b3Sopenharmony_ci# it under the terms of the GNU Lesser General Public License as published by 753a5a1b3Sopenharmony_ci# the Free Software Foundation; either version 2 of the License, or 853a5a1b3Sopenharmony_ci# (at your option) any later version. 953a5a1b3Sopenharmony_ci# 1053a5a1b3Sopenharmony_ci# PulseAudio is distributed in the hope that it will be useful, but 1153a5a1b3Sopenharmony_ci# WITHOUT ANY WARRANTY; without even the implied warranty of 1253a5a1b3Sopenharmony_ci# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 1353a5a1b3Sopenharmony_ci# General Public License for more details. 1453a5a1b3Sopenharmony_ci# 1553a5a1b3Sopenharmony_ci# You should have received a copy of the GNU Lesser General Public License 1653a5a1b3Sopenharmony_ci# along with PulseAudio; if not, see <http://www.gnu.org/licenses/>. 1753a5a1b3Sopenharmony_ci 1853a5a1b3Sopenharmony_ciset -e 1953a5a1b3Sopenharmony_ci 2053a5a1b3Sopenharmony_ciif [ -n "$1" ] ; then 2153a5a1b3Sopenharmony_ci case $1 in 2253a5a1b3Sopenharmony_ci stop) 2353a5a1b3Sopenharmony_ci @PACTL_BINARY@ unload-module module-x11-publish > /dev/null 2453a5a1b3Sopenharmony_ci @PACTL_BINARY@ unload-module module-x11-cork-request > /dev/null 2553a5a1b3Sopenharmony_ci @PACTL_BINARY@ unload-module module-device-manager > /dev/null 2653a5a1b3Sopenharmony_ci @PACTL_BINARY@ unload-module module-x11-xsmp > /dev/null 2753a5a1b3Sopenharmony_ci exit 0 2853a5a1b3Sopenharmony_ci ;; 2953a5a1b3Sopenharmony_ci start) 3053a5a1b3Sopenharmony_ci # Let it continue further down 3153a5a1b3Sopenharmony_ci ;; 3253a5a1b3Sopenharmony_ci *) 3353a5a1b3Sopenharmony_ci echo "Unknown argument $1" 3453a5a1b3Sopenharmony_ci exit 1 3553a5a1b3Sopenharmony_ci ;; 3653a5a1b3Sopenharmony_ci esac 3753a5a1b3Sopenharmony_cifi 3853a5a1b3Sopenharmony_ci 3953a5a1b3Sopenharmony_ciif [ x"$DISPLAY" != x ] ; then 4053a5a1b3Sopenharmony_ci 4153a5a1b3Sopenharmony_ci @PACTL_BINARY@ load-module module-x11-publish "display=$DISPLAY xauthority=$XAUTHORITY" > /dev/null 4253a5a1b3Sopenharmony_ci @PACTL_BINARY@ load-module module-x11-cork-request "display=$DISPLAY xauthority=$XAUTHORITY" > /dev/null 4353a5a1b3Sopenharmony_ci 4453a5a1b3Sopenharmony_ci # KDE plasma versions older than 5.17.0 use module-device-manager's routing API. 4553a5a1b3Sopenharmony_ci # Check for current plasma version and load module if it's necessary. 4653a5a1b3Sopenharmony_ci if [ x"$KDE_FULL_SESSION" = x"true" ]; then 4753a5a1b3Sopenharmony_ci plasmaversion="$(plasmashell -v 2>/dev/null | sed -n 's/^plasmashell \([0-9][0-9]*\)\.\([0-9][0-9]*\)\.\([0-9][0-9]*\)/\1*1000000+\2*1000+\3/p' | head -1)" 4853a5a1b3Sopenharmony_ci if [ -n "$plasmaversion" ] && [ "$(($plasmaversion))" -lt "5017000" ]; then 4953a5a1b3Sopenharmony_ci @PACTL_BINARY@ load-module module-device-manager "do_routing=1" > /dev/null 5053a5a1b3Sopenharmony_ci fi 5153a5a1b3Sopenharmony_ci fi 5253a5a1b3Sopenharmony_ci 5353a5a1b3Sopenharmony_ci if [ x"$SESSION_MANAGER" != x ] ; then 5453a5a1b3Sopenharmony_ci @PACTL_BINARY@ load-module module-x11-xsmp "display=$DISPLAY xauthority=$XAUTHORITY session_manager=$SESSION_MANAGER" > /dev/null 5553a5a1b3Sopenharmony_ci fi 5653a5a1b3Sopenharmony_cifi 57