diff options
Diffstat (limited to 'remote/modules/vmchooser2/data/opt/openslx/scripts/vmchooser-run_virt')
-rwxr-xr-x | remote/modules/vmchooser2/data/opt/openslx/scripts/vmchooser-run_virt | 72 |
1 files changed, 57 insertions, 15 deletions
diff --git a/remote/modules/vmchooser2/data/opt/openslx/scripts/vmchooser-run_virt b/remote/modules/vmchooser2/data/opt/openslx/scripts/vmchooser-run_virt index 231ef6fe..759b8352 100755 --- a/remote/modules/vmchooser2/data/opt/openslx/scripts/vmchooser-run_virt +++ b/remote/modules/vmchooser2/data/opt/openslx/scripts/vmchooser-run_virt @@ -419,9 +419,13 @@ remotedesktopport="590${VM_ID}" # Enable 3D enable3d=$(grep -i -o "<enable3d param=.*" "${xmlfile}" | awk -F '"' '{print $2}' | rv_clean_string) -# Add rw share -sharepath="${HOME}/PERSISTENT" -sharename="home" +# Add rw share for home dir +homesharepath="${HOME}/PERSISTENT" +homesharename="home" + +# Add common share +commonsharepath="${HOME}/SHARE" +commonsharename="share" # Set hostname: using original hostname and adding string hostname="virt-$(hostname)" @@ -435,19 +439,57 @@ writelog "\tVM Hostname:\t\t$hostname" if lspci -n | grep -E -i '8086:1e20( |$)'; then VOL="100%" # bwPC 4: Speaker too quiet :-( else - VOL="80%" + VOL="85%" fi -# Adjust sound volume -amixer -q sset Master "$VOL" unmute 2>/dev/null -amixer -q sset PCM "$VOL" unmute 2>/dev/null -amixer -q sset CD "$VOL" unmute 2>/dev/null -amixer -q sset Headphone "$VOL" unmute 2>/dev/null -amixer -q sset Front "$VOL" unmute 2>/dev/null -amixer -q sset Speaker "$VOL" unmute 2>/dev/null # annoying built-in speaker -amixer -q sset 'Front Mic' "$VOL" unmute 2>/dev/null # to be checked if Mic is actually activated -amixer -q sset 'Rear Mic' "$VOL" unmute 2>/dev/null # =""= -amixer -q sset 'Capture' "$VOL" cap unmute 2>/dev/null # to be checked if Mic is actually activated -amixer -q -c pcsp sset Master "0%" mute 2>/dev/null # fix random static noise when starting vmplayer when module snd_pcsp (not pcspkr) is loaded +if true; then + # detecting which card is to be used + echo "Detecting which sound card to use ..." + PROC="/proc/asound/cards" + if [ ! -r "$PROC" ]; then + echo "'${PROC}' not found or not readable." + SOUND_CARD_INDEX=0 + else + # Try to filter HDMI cards first + SOUND_CARD_INDEX=$(grep -v -i 'HDMI' "${PROC}" | grep -E -o '^[[:space:]]*[0-9]+[[:space:]]+' | head -n 1) + # If empty, try again with all + [ -z "${SOUND_CARD_INDEX}" ] && SOUND_CARD_INDEX=$(cat "${PROC}" | grep -E -o '^[[:space:]]*[0-9]+[[:space:]]+' | head -n 1) + + if [ -z "${SOUND_CARD_INDEX}" ]; then + echo "No sound card found." + SOUND_CARD_INDEX=0 + fi + fi + + SOUND_CARD_INDEX="$(grep -E -o '[0-9]+' <<<$SOUND_CARD_INDEX)" + echo "Detected sound card index is: $SOUND_CARD_INDEX" + + # Adjust sound volume (playback)... Random mixer names we have encountered during testing + echo "Setting up volume..." + amixer -q -c "$SOUND_CARD_INDEX" sset 'Master' "$VOL" unmute + amixer -q -c "$SOUND_CARD_INDEX" sset 'PCM' "$VOL" unmute + amixer -q -c "$SOUND_CARD_INDEX" sset 'CD' "$VOL" unmute + amixer -q -c "$SOUND_CARD_INDEX" sset 'Headphone' "$VOL" unmute + amixer -q -c "$SOUND_CARD_INDEX" sset 'Front' "$VOL" unmute + amixer -q -c "$SOUND_CARD_INDEX" sset 'Speaker' "$VOL" unmute + # Recording. It seems that (most) devices need the volume set to 0, so you + # don't hear your own mic input, but should be unmuted. Also on some cards, + # you need to set the cap option on the mic you want to use, while other cards + # will just ignore that option. + # Plus, most cards have a Capture mixer, which needs to be set to cap too, and + # have its volume turned up. (There'll probably be some cards that need yet + # another setup, but this works for now on 4 tested cards) + amixer -q -c "$SOUND_CARD_INDEX" sset 'Rear Mic Boost' "50%" cap unmute + amixer -q -c "$SOUND_CARD_INDEX" sset 'Rear Mic' "0%" cap unmute + amixer -q -c "$SOUND_CARD_INDEX" sset 'Front Mic Boost' "50%" cap unmute + amixer -q -c "$SOUND_CARD_INDEX" sset 'Front Mic' "0%" cap unmute + amixer -q -c "$SOUND_CARD_INDEX" sset 'Mic Boost' "50%" cap unmute + amixer -q -c "$SOUND_CARD_INDEX" sset 'Mic' "0%" cap unmute + amixer -q -c "$SOUND_CARD_INDEX" sset 'Capture' "100%" cap unmute + amixer -q -c "$SOUND_CARD_INDEX" sset 'Input Source' 'Front Mic' # Let's hope nobody uses rear mic... + # fix random static noise when starting vmplayer when module snd_pcsp (not pcspkr) is loaded + amixer -q -c pcsp sset Master "0%" mute + echo "Done setting up volume." +fi >> "${LOGFILE}" 2>&1 # Start printer daemon QUEUE="STANDARD" # This has to match the queue you configured in your VM |