ソースを参照

initial commit

master
haemka 3年前
コミット
663829f816
5個のファイルの変更234行の追加0行の削除
  1. +24
    -0
      fanmode.sh
  2. +14
    -0
      gamewrapper.sh
  3. +33
    -0
      remoteoffice.sh
  4. +95
    -0
      sanemime.sh
  5. +68
    -0
      webcam.sh

+ 24
- 0
fanmode.sh ファイルの表示

@@ -0,0 +1,24 @@
#!/usr/bin/env bash

# 0 = Normal/Balanced
# 1 = Boost
# 2 = Silent.

MODELIST=("Balanced" "Boost" "Silent")
INTERFACE="/sys/devices/platform/asus-nb-wmi/throttle_thermal_policy"
CURRENT_MODE=$(cat ${INTERFACE})
MODE=${CURRENT_MODE}

if [[ ! ${1} ]]; then
[[ ${MODE} == 2 ]] && MODE=0 || let MODE+=1
else
MODE=${1}
fi

echo ${MODE} > ${INTERFACE}

CHECK_MODE=$(cat ${INTERFACE})

notify-send "Fan mode changed" "${MODELIST[${CURRENT_MODE}]} -> ${MODELIST[${CHECK_MODE}]}"



+ 14
- 0
gamewrapper.sh ファイルの表示

@@ -0,0 +1,14 @@
#!/usr/bin/env bash

init () {
kill $(pidof redshift)
fanmode.sh 1
}

deinit () {
exec redshift &
fanmode.sh 0
}

init && /usr/bin/prime-run $@ && deinit


+ 33
- 0
remoteoffice.sh ファイルの表示

@@ -0,0 +1,33 @@
#!/bin/sh

# VPN
NMCONN="49088a1e-18c2-48aa-a664-f212eb83a727"
# RDP
DEF_RESOLUTION="1920x1080"
DRIVE="work,${HOME}/Documents/Work"
DOMAIN="$(pass show Work/AD-LOGIN | awk '/domain:/ {print $2}')"
USER="$(pass show Work/AD-LOGIN | awk '/user:/ {print $2}')"
REMOTE="$(pass show Work/AD-LOGIN | awk '/remote:/ {print $2}')"

rdp() {
# alternative to "dynamic-resolution" is "smart-sizing"
xfreerdp /network:lan /gdi:hw +glyph-cache +fonts +aero \
/bpp:32 /size:${DEF_RESOLUTION} /dynamic-resolution \
/audio-mode:0 /sound:sys:pulse /microphone:sys:pulse \
/kbd:German /drive:${DRIVE} \
+auto-reconnect /auto-reconnect-max-retries:5 \
/d:${DOMAIN} /u:${USER} /v:${REMOTE} /p:$(zenity --entry \
--title="Password" --text="Enter your _password:" --hide-text)
zenity --question --title="Disconnect?" \
--text="RDP connection closed. Do you want to close the VPN connection too?" && \
nmcli con down ${NMCONN}
}


if [ $(nmcli con show ${NMCONN} | awk '/GENERAL.STATE/ {print $2}') == "activated" ]; then
rdp
else
nmcli --ask con up ${NMCONN} &
rdp
fi


+ 95
- 0
sanemime.sh ファイルの表示

@@ -0,0 +1,95 @@
#!/usr/bin/env bash
#==============================================================================
#title : sanemime.sh
#description : Resets MIMe configuration to sane defaults in case any shitty
# software broke it.
#author : hmk
#date : 20210620
#version : 0.4
#==============================================================================

cp ${HOME}/.config/mimeapps.list ${HOME}/.config/mimeapps.list.bak

BROWSER=/usr/share/applications/firefox.desktop
EMAIL=${HOME}/.local/share/applications/neomutt.desktop
#IMAGE_VIEWER=/usr/share/applications/feh.desktop
IMAGE_VIEWER=/usr/share/applications/sxiv.desktop
VIDEO_VIEWER=/usr/share/applications/mpv.desktop
PDF_VIEWER=/usr/share/applications/org.pwmt.zathura-pdf-mupdf.desktop

MSTEAMS=${HOME}/.local/share/applications/teams.desktop
TS3=${HOME}/.local/share/applications/teamspeak.desktop
ZOOM=${HOME}/.local/share/applications/zoom.desktop

# Set default browser
BROWSER_NAME=$(awk -F= '/^Name=/ {print $2;exit;}' ${BROWSER})
IFS=';' read -ra types <<< $(awk -F= '/MimeType/ {print $2}' ${BROWSER})
for type in ${types[@]}; do
echo "Setting ${type} to ${BROWSER_NAME}"
xdg-mime default $(basename ${BROWSER}) ${type}
done

# Set default E-Mail client
EMAIL_NAME=$(awk -F= '/^Name=/ {print $2;exit;}' ${EMAIL})
IFS=';' read -ra types <<< $(awk -F= '/MimeType/ {print $2}' ${EMAIL})
for type in ${types[@]}; do
echo "Setting ${type} to ${EMAIL_NAME}"
xdg-mime default $(basename ${EMAIL}) ${type}
done

# Set default image viewer
IMAGE_VIEWER_NAME=$(awk -F= '/^Name=/ {print $2;exit;}' ${IMAGE_VIEWER})
IFS=';' read -ra types <<< $(awk -F= '/MimeType/ {print $2}' ${IMAGE_VIEWER})
for type in ${types[@]}; do
if [[ ${type} =~ ^image.*$ ]]; then
echo "Setting ${type} to ${IMAGE_VIEWER_NAME}"
xdg-mime default $(basename ${IMAGE_VIEWER}) ${type}
fi
done

# Set default video viewer
VIDEO_VIEWER_NAME=$(awk -F= '/^Name=/ {print $2;exit;}' ${VIDEO_VIEWER})
IFS=';' read -ra types <<< $(awk -F= '/MimeType/ {print $2}' ${VIDEO_VIEWER})
for type in ${types[@]}; do
if [[ ${type} =~ ^video.*$ ]]; then
echo "Setting ${type} to ${VIDEO_VIEWER_NAME}"
xdg-mime default $(basename ${VIDEO_VIEWER}) ${type}
fi
done

# Set default PDF viewer
PDF_VIEWER_NAME=$(awk -F= '/^Name=/ {print $2;exit;}' ${PDF_VIEWER})
IFS=';' read -ra types <<< $(awk -F= '/MimeType/ {print $2}' ${PDF_VIEWER})
for type in ${types[@]}; do
if [[ ${type} =~ ^application.*$ ]]; then
echo "Setting ${type} to ${PDF_VIEWER_NAME}"
xdg-mime default $(basename ${PDF_VIEWER}) ${type}
fi
done

# Set communication applications
MSTEAMS_NAME=$(awk -F= '/^Name=/ {print $2;exit;}' ${MSTEAMS})
IFS=';' read -ra types <<< $(awk -F= '/MimeType/ {print $2}' ${MSTEAMS})
for type in ${types[@]}; do
if [[ ${type} =~ ^x-scheme-handler.*$ ]]; then
echo "Setting ${type} to ${MSTEAMS_NAME}"
xdg-mime default $(basename ${MSTEAMS}) ${type}
fi
done
TS3_NAME=$(awk -F= '/^Name=/ {print $2;exit;}' ${TS3})
IFS=';' read -ra types <<< $(awk -F= '/MimeType/ {print $2}' ${TS3})
for type in ${types[@]}; do
if [[ ${type} =~ ^x-scheme-handler.*$ ]]; then
echo "Setting ${type} to ${TS3_NAME}"
xdg-mime default $(basename ${TS3}) ${type}
fi
done
ZOOM_NAME=$(awk -F= '/^Name=/ {print $2;exit;}' ${ZOOM})
IFS=';' read -ra types <<< $(awk -F= '/MimeType/ {print $2}' ${ZOOM})
for type in ${types[@]}; do
if [[ ${type} =~ ^x-scheme-handler.*$ ]]; then
echo "Setting ${type} to ${ZOOM_NAME}"
xdg-mime default $(basename ${ZOOM}) ${type}
fi
done


+ 68
- 0
webcam.sh ファイルの表示

@@ -0,0 +1,68 @@
#!/bin/bash

function unlock {
### Activates the screen and unlocks the phone
# Reads the current screen state eturns any combination of ON/OFF and
# LOCKED/UNLOCKED (i.e. OFF_LOCKED).
# Works only on NFC enabled phones but alternative methods exist.
IFS='_' read -ra screenstate <<< $(adb shell dumpsys nfc | awk -F'=' \
'/mScreenState/ {print $2}')
# Emulate Power-Button press if screen is OFF.
[[ ${screenstate[0]} == "OFF" ]] && adb shell input keyevent 26 && \
echo Screen activated
# Emulate Menu-button press if phone is locked. Requires the phone to
# unlock without PIN or password.
[[ ${screenstate[1]} == "LOCKED" ]] && adb shell input keyevent 82 && \
echo Device unlocked
}

function blank {
### Blanks the screen after X seconds
sleep ${1}
IFS='_' read -ra screenstate <<< $(adb shell dumpsys nfc | awk -F'=' \
'/mScreenState/ {print $2}')
[[ ${screenstate[0]} == "ON" ]] && adb shell input keyevent 26 && \
echo Screen deactivated
}

function end {
### Cleans up after exiting
# Stop DroidCamX on device
echo "Stopping DroidCamX"
adb shell am force-stop com.dev47apps.droidcamx
# blank device
blank 0
}

# Unlock phone
unlock

# Start DroidCamX app, intent may vary for free DroidCam version
echo "(Re-)Starting DroidCamX"
adb shell << EOF
am force-stop com.dev47apps.droidcamx
am start -n com.dev47apps.droidcamx/com.dev47apps.droidcamx.DroidCamX
EOF

# Wait some seconds for the app to settle
sleep 3

# Initiate screen blanking in X seconds (mind the background function "&")
x=10
blank ${x} &

# Start droidcam binary
# 1920x1080 breaks Skype!
echo ""
echo "+-------------------------------------------------------------+"
echo "| |"
echo "| SCREEN WILL BLANK IN ${x} SECONDS. CONNECT WITHIN THIS LIMIT! |"
echo "| |"
echo "+-------------------------------------------------------------+"
echo ""
/usr/bin/droidcam -v -dev=/dev/video10 -size=1280x720 adb 4747 > /dev/null
#/usr/bin/droidcam -v -dev=/dev/video10 -size=1920x1080 adb 4747 > /dev/null

# Cleanup when droidcam binary exited
end


読み込み中…
キャンセル
保存