Update
This commit is contained in:
parent
a1b1cfa8a4
commit
b5f79519cb
18 changed files with 260 additions and 34 deletions
67
roles/lmn_qgm/files/BeamerSetup.sh
Executable file
67
roles/lmn_qgm/files/BeamerSetup.sh
Executable file
|
@ -0,0 +1,67 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Get connected monitors and their native resolutions
|
||||
monitor_info=$(xrandr --query)
|
||||
|
||||
# Extract primary monitor name
|
||||
primary_monitor_name=$(echo "$monitor_info" | grep " primary" | cut -d" " -f1)
|
||||
|
||||
# Extract secondary monitor name and native resolution
|
||||
secondary_monitor_line=$(echo "$monitor_info" | grep -m1 -n -P " connected(?! primary)")
|
||||
secondary_monitor_line_number=$(echo "$secondary_monitor_line" | cut -d":" -f1)
|
||||
secondary_monitor_name=$(echo "$secondary_monitor_line" | cut -d":" -f2 | cut -d" " -f1)
|
||||
if [ ! -z "$secondary_monitor_line_number" ]; then
|
||||
secondary_resolution=$(echo "$monitor_info" | sed -e "1,${secondary_monitor_line_number}d" | grep -m1 "+" | awk '{ print $1 }')
|
||||
fi
|
||||
|
||||
if [ -z "$secondary_monitor_name" ] || [ -z "$secondary_resolution" ] || [ -z "$primary_monitor_name" ]; then
|
||||
zenity --error --text="Es konnten keine passenden Bildschirme gefunden werden. Sind Sie sich sicher, dass der Beamer eingeschaltet und verbunden ist?"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Find out which resolutions we want to recommend
|
||||
if [ "$secondary_resolution" = "1920x1080" ]; then
|
||||
recommend_high_res="Ja"
|
||||
recommend_low_res="Nein"
|
||||
default_xga="FALSE"
|
||||
default_hd="TRUE"
|
||||
else
|
||||
recommend_high_res="Nein"
|
||||
recommend_low_res="Ja"
|
||||
default_xga="TRUE"
|
||||
default_hd="FALSE"
|
||||
fi
|
||||
|
||||
# Generate GUI to let the user select a resolution
|
||||
mode=$(zenity --list --radiolist --title="Beamer Setup" --text="Beamer mit der Auflösung $secondary_resolution gefunden." \
|
||||
--print-column=3 --width 500 --height 250 \
|
||||
--column= --column="Name" --column="Auflösung" --column="Format" --column="Empfohlen" \
|
||||
FALSE "Full HD" "1920x1080" "16:9" "$recommend_high_res" \
|
||||
"$default_hd" "HD" "1280x720" "16:9" "Ja" \
|
||||
"$default_xga" "XGA" "1024x768" "4:3" "$recommend_low_res")
|
||||
|
||||
# Use xrandr to configure both displays
|
||||
if [ ! -z "$mode" ]; then
|
||||
xrandr --output $primary_monitor_name --mode $mode
|
||||
xrandr --output $secondary_monitor_name --mode $mode --same-as $primary_monitor_name
|
||||
fi
|
||||
|
||||
# Use pactl to set audio output to hdmi
|
||||
profile="output:hdmi-stereo+input:analog-stereo"
|
||||
sink_line=$(pactl list short sinks | grep -m1 alsa_output.pci-)
|
||||
sink_nr=$(echo $sink_line | awk '{ print $1 }')
|
||||
sink_name_hdmi=$(echo $sink_line | awk '{ print $2 }' | grep hdmi)
|
||||
if [ ! -z "$sink_nr" ] && [ -z "$sink_name_hdmi" ]; then
|
||||
card_name=$(pactl list cards short | grep -m1 alsa_card.pci- | awk '{ print $2 }')
|
||||
pactl set-card-profile $card_name $profile
|
||||
fi
|
||||
|
||||
if [ ! -z "$sink_nr" ]; then
|
||||
pactl set-default-sink $(pactl list short sinks | grep -m1 alsa_output.pci- | awk '{ print $1 }')
|
||||
fi
|
||||
|
||||
# if there is no hdmi sink search for a card profile to change
|
||||
if [ -z "$sink_nr" ]; then
|
||||
card_name=$(pactl list cards short | head -n 1 | awk '{ print $2 }')
|
||||
pactl set-card-profile $card_name $profile
|
||||
fi
|
BIN
roles/lmn_qgm/files/beamer.png
Normal file
BIN
roles/lmn_qgm/files/beamer.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 5.8 KiB |
BIN
roles/lmn_qgm/files/logout.png
Normal file
BIN
roles/lmn_qgm/files/logout.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 19 KiB |
13
roles/lmn_qgm/files/qgm-abmelden.desktop
Normal file
13
roles/lmn_qgm/files/qgm-abmelden.desktop
Normal file
|
@ -0,0 +1,13 @@
|
|||
#!/usr/bin/env xdg-open
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Type=Application
|
||||
Terminal=false
|
||||
Exec=qdbus org.kde.ksmserver /KSMServer logout 1 0 1
|
||||
Name[de_DE]=Abmelden
|
||||
Name=Abmelden
|
||||
Icon=/usr/share/icons/logout.png
|
||||
Hidden=false
|
||||
Comment=
|
||||
Path=
|
||||
StartupNotify=false
|
15
roles/lmn_qgm/files/qgm-beamersetup.desktop
Normal file
15
roles/lmn_qgm/files/qgm-beamersetup.desktop
Normal file
|
@ -0,0 +1,15 @@
|
|||
#!/usr/bin/env xdg-open
|
||||
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Type=Application
|
||||
Terminal=false
|
||||
Exec=BeamerSetup.sh
|
||||
Name[de_DE]=QG-Beamersetup
|
||||
Name=QG-Beamersetup
|
||||
Icon=/usr/share/icons/beamer.png
|
||||
Hidden=false
|
||||
Comment=
|
||||
Path=
|
||||
StartupNotify=false
|
||||
|
|
@ -1,2 +1,22 @@
|
|||
[[ "${UID}" -lt 10000 ]] && return
|
||||
|
||||
# Desktop Verzeichnis?
|
||||
DESKDIR=$(xdg-user-dir DESKTOP)
|
||||
echo $DESKDIR >> /tmp/login.log
|
||||
|
||||
# Wallpaper
|
||||
kwriteconfig5 --file "$HOME/.config/plasma-org.kde.plasma.desktop-appletsrc" --group 'Containments' --group '1' --group 'Wallpaper' --group 'org.kde.image' --group 'General' --key 'Image' "/usr/local/share/qgm/qgm_background_wallpaper.jpg" || return
|
||||
|
||||
# Beamer-Icon
|
||||
rm -f $DESKDIR/qgm-beamersetup.desktop
|
||||
if [[ $(hostname -s) = lt-* || $(hostname -s) = r109-dell16 ]]; then
|
||||
cp /usr/share/applications/qgm-beamersetup.desktop $DESKDIR/qgm-beamersetup.desktop
|
||||
chmod 755 $DESKDIR/qgm-beamersetup.desktop
|
||||
fi
|
||||
|
||||
# Abmelden Knopf
|
||||
echo "cp /usr/share/applications/qgm-abmelden.desktop $DESKDIR/qgm-abmelden.desktop" >> /tmp/login.log
|
||||
cp /usr/share/applications/qgm-abmelden.desktop $DESKDIR/qgm-abmelden.desktop
|
||||
chmod 755 $DESKDIR/qgm-abmelden.desktop
|
||||
|
||||
echo "Done" >> /tmp/login.log
|
||||
|
|
|
@ -1,15 +0,0 @@
|
|||
#!/usr/bin/env xdg-open
|
||||
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Type=Application
|
||||
Terminal=false
|
||||
Exec=qgm-soundfix.sh
|
||||
Name[de_DE]=QG - Ton zum Beamer
|
||||
Name=QG - Ton zum Beamer
|
||||
Icon=/usr/share/icons/breeze-dark/emblems/symbolic/emblem-music-symbolic.svg
|
||||
Hidden=false
|
||||
Comment=
|
||||
Path=
|
||||
StartupNotify=false
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
CARD=$(pactl list cards short | head -n 1 | awk '{print $2}')
|
||||
pactl set-card-profile $CARD output:hdmi-stereo+input:analog-stereo
|
||||
HDMISINK=$(pactl list sinks short | grep hdmi | awk '{print $2}')
|
||||
pactl set-default-sink $HDMISINK
|
Loading…
Add table
Add a link
Reference in a new issue