parent
fd44880743
commit
e924722a42
@ -0,0 +1,105 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# Initial script for Live operating system
|
||||||
|
# This script are launching before starting init from linux-live script.
|
||||||
|
# Current dir allways must be set to root (/)
|
||||||
|
# All system path must be relative, except initrd dirs
|
||||||
|
|
||||||
|
ENABLED=yes
|
||||||
|
[[ ${ENABLED} != "yes" ]] && exit 0
|
||||||
|
DEBUGMODE=no
|
||||||
|
|
||||||
|
PATH=.:/:/usr/bin:/usr/local/bin:/usr/local/sbin
|
||||||
|
|
||||||
|
unset ROOTFS; [[ -d /usr/lib/ublinux ]] || ROOTFS=.
|
||||||
|
SOURCE=${ROOTFS}/usr/lib/ublinux/functions; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null || exit 0
|
||||||
|
SOURCE=${ROOTFS}/usr/lib/ublinux/os-config; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null || exit 0
|
||||||
|
debug_mode "$0" "$@"
|
||||||
|
|
||||||
|
SYSCONF="${ROOTFS}/${SYSCONF}"
|
||||||
|
SOURCE=${SYSCONF}/config; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null
|
||||||
|
SOURCE=${SYSCONF}/video; [ -f ${SOURCE} ] && . ${SOURCE} 2>/dev/null
|
||||||
|
|
||||||
|
exec_xorg_dpi(){
|
||||||
|
FILE_LIGHTDM_GTK_GREATER_CONF="${ROOTFS}/etc/lightdm/lightdm-gtk-greeter.conf.d/100-hidpi-ubconfig.conf"
|
||||||
|
rm -f ${FILE_LIGHTDM_GTK_GREATER_CONF}
|
||||||
|
|
||||||
|
if [[ -n ${XORG_DPI} ]]; then
|
||||||
|
## Настрока XOrg DPI
|
||||||
|
GDK_SCALE=1
|
||||||
|
GDK_DPI_SCALE=0
|
||||||
|
ELM_SCALE=1 # Масштабирование для UI Elementary
|
||||||
|
QT_FONT_DPI=96 #
|
||||||
|
#PLASMA_USE_QT_SCALING=0 # Разрешить Plasma использовать настройки QT по масштабированию
|
||||||
|
#QT_AUTO_SCREEN_SCALE_FACTOR=0 # Автоматическое масштабирование, отключать при масштабировании вручную
|
||||||
|
#QT_SCALE_FACTOR=2 # Масштабирование вручную, глобально для всех экранов
|
||||||
|
#QT_SCREEN_SCALE_FACTORS="2;2;2;2" # Масштабирование вручную для каждого экрана
|
||||||
|
if [[ ${XORG_DPI} == @(no|disable) ]]; then
|
||||||
|
grep -q "^\s*GDK_SCALE=" ${ROOTFS}/etc/environment 2>/dev/null && grep -v "^\s*GDK_SCALE=" ${ROOTFS}/etc/environment > ${ROOTFS}/etc/environment
|
||||||
|
grep -q "^\s*GDK_DPI_SCALE=" ${ROOTFS}/etc/environment 2>/dev/null && grep -v "^\s*GDK_DPI_SCALE=" ${ROOTFS}/etc/environment > ${ROOTFS}/etc/environment
|
||||||
|
grep -q "^\s*ELM_SCALE=" ${ROOTFS}/etc/environment 2>/dev/null && grep -v "^\s*ELM_SCALE=" ${ROOTFS}/etc/environment > ${ROOTFS}/etc/environment
|
||||||
|
grep -q "^\s*QT_FONT_DPI=" ${ROOTFS}/etc/environment 2>/dev/null && grep -v "^\s*QT_FONT_DPI=" ${ROOTFS}/etc/environment > ${ROOTFS}/etc/environment
|
||||||
|
#grep -q "^\s*PLASMA_USE_QT_SCALING=" ${ROOTFS}/etc/environment 2>/dev/null && grep -v "^\s*PLASMA_USE_QT_SCALING=" ${ROOTFS}/etc/environment > ${ROOTFS}/etc/environment
|
||||||
|
#grep -q "^\s*QT_AUTO_SCREEN_SCALE_FACTOR=" ${ROOTFS}/etc/environment 2>/dev/null && grep -v "^\s*QT_AUTO_SCREEN_SCALE_FACTOR=" ${ROOTFS}/etc/environment > ${ROOTFS}/etc/environment
|
||||||
|
return 0
|
||||||
|
elif [[ ${XORG_DPI} == auto ]]; then
|
||||||
|
XORG_DPI=192
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ ${XORG_DPI} == @(192|4K) ]]; then
|
||||||
|
XORG_DPI=192
|
||||||
|
GDK_SCALE=2
|
||||||
|
GDK_DPI_SCALE=0.5
|
||||||
|
ELM_SCALE=1.5
|
||||||
|
LIGHTDM_CURSOR_MOUSE=48
|
||||||
|
QT_FONT_DPI=192
|
||||||
|
#PLASMA_USE_QT_SCALING=1
|
||||||
|
#QT_AUTO_SCREEN_SCALE_FACTOR=1
|
||||||
|
elif [[ ${XORG_DPI} == @(144|2K) ]]; then
|
||||||
|
XORG_DPI=144
|
||||||
|
GDK_SCALE=2
|
||||||
|
GDK_DPI_SCALE=0.5
|
||||||
|
ELM_SCALE=1.5
|
||||||
|
LIGHTDM_CURSOR_MOUSE=32
|
||||||
|
QT_FONT_DPI=144
|
||||||
|
#PLASMA_USE_QT_SCALING=1
|
||||||
|
#QT_AUTO_SCREEN_SCALE_FACTOR=1
|
||||||
|
fi
|
||||||
|
grep -q "^\s*GDK_SCALE=" ${ROOTFS}/etc/environment 2>/dev/null \
|
||||||
|
&& sed -E "s/^\s*(GDK_SCALE=).*/\1${GDK_SCALE}/" -i ${ROOTFS}/etc/environment 2>/dev/null \
|
||||||
|
|| sed -e '$a\' -e "GDK_SCALE=${GDK_SCALE}" -i ${ROOTFS}/etc/environment 2>/dev/null
|
||||||
|
grep -q "^\s*GDK_DPI_SCALE=" ${ROOTFS}/etc/environment 2>/dev/null \
|
||||||
|
&& sed -E "s/^\s*(GDK_DPI_SCALE=).*/\1${GDK_DPI_SCALE}/" -i ${ROOTFS}/etc/environment 2>/dev/null \
|
||||||
|
|| sed -e '$a\' -e "GDK_DPI_SCALE=${GDK_DPI_SCALE}" -i ${ROOTFS}/etc/environment 2>/dev/null
|
||||||
|
grep -q "^\s*ELM_SCALE=" ${ROOTFS}/etc/environment 2>/dev/null \
|
||||||
|
&& sed -E "s/^\s*(ELM_SCALE=).*/\1${ELM_SCALE}/" -i ${ROOTFS}/etc/environment 2>/dev/null \
|
||||||
|
|| sed -e '$a\' -e "ELM_SCALE=${ELM_SCALE}" -i ${ROOTFS}/etc/environment 2>/dev/null
|
||||||
|
grep -q "^\s*QT_FONT_DPI=" ${ROOTFS}/etc/environment 2>/dev/null \
|
||||||
|
&& sed -E "s/^\s*(QT_FONT_DPI=).*/\1${QT_FONT_DPI}/" -i ${ROOTFS}/etc/environment 2>/dev/null \
|
||||||
|
|| sed -e '$a\' -e "QT_FONT_DPI=${QT_FONT_DPI}" -i ${ROOTFS}/etc/environment 2>/dev/null
|
||||||
|
#grep -q "^\s*PLASMA_USE_QT_SCALING=" ${ROOTFS}/etc/environment 2>/dev/null \
|
||||||
|
# && sed -E "s/^\s*(PLASMA_USE_QT_SCALING=).*/\1${PLASMA_USE_QT_SCALING}/" -i ${ROOTFS}/etc/environment 2>/dev/null \
|
||||||
|
# || sed -e '$a\' -e "PLASMA_USE_QT_SCALING=${PLASMA_USE_QT_SCALING}" -i ${ROOTFS}/etc/environment 2>/dev/null
|
||||||
|
#grep -q "^\s*QT_AUTO_SCREEN_SCALE_FACTOR=" ${ROOTFS}/etc/environment 2>/dev/null \
|
||||||
|
# && sed -E "s/^\s*(QT_AUTO_SCREEN_SCALE_FACTOR=).*/\1${QT_AUTO_SCREEN_SCALE_FACTOR}/" -i ${ROOTFS}/etc/environment 2>/dev/null \
|
||||||
|
# || sed -e '$a\' -e "QT_AUTO_SCREEN_SCALE_FACTOR=${QT_AUTO_SCREEN_SCALE_FACTOR}" -i ${ROOTFS}/etc/environment 2>/dev/null
|
||||||
|
## Настрока Lightdm DPI
|
||||||
|
if [[ -d ${ROOTFS}/etc/lightdm ]]; then
|
||||||
|
mkdir -p "${FILE_LIGHTDM_GTK_GREATER_CONF%/*}"
|
||||||
|
cat <<EOF > "${FILE_LIGHTDM_GTK_GREATER_CONF}"
|
||||||
|
[greeter]
|
||||||
|
cursor-theme-size = ${LIGHTDM_CURSOR_MOUSE}
|
||||||
|
xft-antialias = true
|
||||||
|
xft-dpi = ${XORG_DPI}
|
||||||
|
xft-hintstyle = hintfull
|
||||||
|
xft-rgba = vrgb
|
||||||
|
EOF
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
################
|
||||||
|
##### MAIN #####
|
||||||
|
################
|
||||||
|
|
||||||
|
exec_xorg_dpi $@
|
||||||
@ -0,0 +1,104 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
ENABLED=yes
|
||||||
|
[[ ${ENABLED} != yes ]] && exit 0
|
||||||
|
|
||||||
|
SOURCE=/usr/lib/ublinux/os-config; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null || exit 0
|
||||||
|
SOURCE=${SYSCONF}/config; [ -f ${SOURCE} ] && . ${SOURCE} 2>/dev/null
|
||||||
|
SOURCE=${SYSCONF}/video; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null
|
||||||
|
|
||||||
|
xfce4_hidpi(){
|
||||||
|
[[ -x /usr/bin/startxfce4 ]] || return 0
|
||||||
|
if [[ $1 == @(enable|on) ]]; then
|
||||||
|
xfconf-query --channel xsettings --property /Gdk/WindowScalingFactor --create --type int --set "${SCALE}"
|
||||||
|
xfconf-query --channel xsettings --property /Gtk/CursorThemeSize --create --type int --set "${MOUSE_CURSOR}"
|
||||||
|
xfconf-query --channel xsettings --property /Xft/DPI --create --type int --set "${XORG_DPI}"
|
||||||
|
xfconf-query --channel xfwm4 --property /general/theme --create --type string --set "Default-xhdpi"
|
||||||
|
elif [[ $1 == @(disable|off) ]]; then
|
||||||
|
xfconf-query --channel xsettings --property /Gdk/WindowScalingFactor --reset
|
||||||
|
xfconf-query --channel xfwm4 --property /general/theme --reset
|
||||||
|
xfconf-query --channel xsettings --property /Gtk/CursorThemeSize --reset
|
||||||
|
xfconf-query --channel xsettings --property /Xft/DPI --reset
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
plasma_hidpi(){
|
||||||
|
[[ -x /usr/bin/plasmashell ]] || return 0
|
||||||
|
if [[ $1 == @(enable|on) ]]; then
|
||||||
|
kwriteconfig5 --file kcmfonts --group General --key forceFontDPI "${XORG_DPI}"
|
||||||
|
kwriteconfig5 --file kcminputrc --group Mouse --key cursorSize "${MOUSE_CURSOR}"
|
||||||
|
kwriteconfig5 --file kdeglobals --group KScreen --key ScaleFactor "${SCALE}"
|
||||||
|
kwriteconfig5 --file kdeglobals --group KScreen --key ScreenScaleFactors "${SCALE};${SCALE};${SCALE};${SCALE};"
|
||||||
|
# ScreenScaleFactors "DP1=2;HDMI1=2;HDMI2=2;VIRTUAL1=2;"
|
||||||
|
elif [[ $1 == @(disable|off) ]]; then
|
||||||
|
kwriteconfig5 --file kcmfonts --group General --key forceFontDPI --delete
|
||||||
|
kwriteconfig5 --file kcminputrc --group Mouse --key cursorSize --delete
|
||||||
|
kwriteconfig5 --file kdeglobals --group KScreen --key ScaleFactor --delete
|
||||||
|
kwriteconfig5 --file kdeglobals --group KScreen --key ScreenScaleFactors --delete
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
gnome_hidpi(){
|
||||||
|
[[ -x /usr/bin/startgnome ]] || return 0
|
||||||
|
if [[ $1 == @(enable|on) ]]; then
|
||||||
|
true
|
||||||
|
elif [[ $1 == @(disable|off) ]]; then
|
||||||
|
true
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
lxde_hidpi(){
|
||||||
|
[[ -x /usr/bin/startlxde ]] || return 0
|
||||||
|
if [[ $1 == @(enable|on) ]]; then
|
||||||
|
true
|
||||||
|
elif [[ $1 == @(disable|off) ]]; then
|
||||||
|
true
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
lxqt_hidpi(){
|
||||||
|
[[ -x /usr/bin/startlxqt ]] || return 0
|
||||||
|
if [[ $1 == @(enable|on) ]]; then
|
||||||
|
true
|
||||||
|
elif [[ $1 == @(disable|off) ]]; then
|
||||||
|
true
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
mate_hidpi(){
|
||||||
|
[[ -x /usr/bin/startmate ]] || return 0
|
||||||
|
if [[ $1 == @(enable|on) ]]; then
|
||||||
|
true
|
||||||
|
elif [[ $1 == @(disable|off) ]]; then
|
||||||
|
true
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
if [[ -n ${XORG_DPI} ]]; then
|
||||||
|
if [[ ${XORG_DPI} == @(no|disable) ]]; then
|
||||||
|
xfce4_hidpi disable
|
||||||
|
plasma_hidpi disable
|
||||||
|
gnome_hidpi disable
|
||||||
|
lxde_hidpi disable
|
||||||
|
lxqt_hidpi disable
|
||||||
|
mate_hidpi disable
|
||||||
|
return 0
|
||||||
|
elif [[ ${XORG_DPI} == auto ]]; then
|
||||||
|
XORG_DPI=192
|
||||||
|
MOUSE_CURSOR=48
|
||||||
|
SCALE=2
|
||||||
|
elif [[ ${XORG_DPI} == @(192|4K) ]]; then
|
||||||
|
XORG_DPI=192
|
||||||
|
MOUSE_CURSOR=48
|
||||||
|
SCALE=2
|
||||||
|
elif [[ ${XORG_DPI} == @(144|2K) ]]; then
|
||||||
|
XORG_DPI=144
|
||||||
|
MOUSE_CURSOR=32
|
||||||
|
SCALE=1.5
|
||||||
|
else
|
||||||
|
# Пользовательское значение XORG_DPI, остальные велечины высчитываются
|
||||||
|
MOUSE_CURSOR=28
|
||||||
|
SCALE=1
|
||||||
|
fi
|
||||||
|
xfce4_hidpi enable
|
||||||
|
plasma_hidpi enable
|
||||||
|
gnome_hidpi enable
|
||||||
|
lxde_hidpi enable
|
||||||
|
lxqt_hidpi enable
|
||||||
|
mate_hidpi enable
|
||||||
|
fi
|
||||||
Loading…
Reference in new issue