Fix issues found testing stage 5 in a VM
- Calamares branding takes the version from VERSION at ISO build time - das-update tray hides its icon when updates were installed elsewhere (watches the xbps package database) - Installer removes guest tools of other hypervisors; the live image starts VBoxClient only inside VirtualBox - Live session no longer locks the screen while the installer runs - das-tools 0.2.0, das-installer 0.2.0, das-settings 0.4.0 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -4,6 +4,21 @@
|
||||
# which is only known inside the session. Runs once per user.
|
||||
set -u
|
||||
|
||||
# Sets an xfconf property, creating it when it does not exist yet.
|
||||
set_prop() {
|
||||
local channel=$1 prop=$2 type=$3 value=$4
|
||||
xfconf-query -c "$channel" -p "$prop" -s "$value" 2>/dev/null ||
|
||||
xfconf-query -c "$channel" -p "$prop" -n -t "$type" -s "$value"
|
||||
}
|
||||
|
||||
# The live session must not lock the screen: the installer runs for minutes
|
||||
# without input, and the live user's password is not something people know.
|
||||
# Static files would reach the installed system, which copies the live image.
|
||||
if grep -q '\(^\| \)root=live:' /proc/cmdline; then
|
||||
set_prop xfce4-screensaver /lock/enabled bool false
|
||||
set_prop xfce4-power-manager /xfce4-power-manager/lock-screen-suspend-hibernate bool false
|
||||
fi
|
||||
|
||||
marker="${XDG_CONFIG_HOME:-$HOME/.config}/das/session-init.done"
|
||||
[[ -e $marker ]] && exit 0
|
||||
|
||||
@@ -12,13 +27,6 @@ if [[ $(xfconf-query -c xsettings -p /Net/ThemeName 2>/dev/null) == *-Dark ]]; t
|
||||
wallpaper=/usr/share/backgrounds/das/das-dark.svg
|
||||
fi
|
||||
|
||||
# Sets an xfconf property, creating it when it does not exist yet.
|
||||
set_prop() {
|
||||
local prop=$1 type=$2 value=$3
|
||||
xfconf-query -c xfce4-desktop -p "$prop" -s "$value" 2>/dev/null ||
|
||||
xfconf-query -c xfce4-desktop -p "$prop" -n -t "$type" -s "$value"
|
||||
}
|
||||
|
||||
# "xrandr --listactivemonitors" prints a header, then one line per monitor ending in its connector name.
|
||||
monitors=$(xrandr --listactivemonitors 2>/dev/null | awk 'NR > 1 { print $NF }')
|
||||
if [[ -z $monitors ]]; then
|
||||
@@ -28,8 +36,8 @@ fi
|
||||
|
||||
for monitor in $monitors; do
|
||||
base="/backdrop/screen0/monitor${monitor}/workspace0"
|
||||
set_prop "$base/last-image" string "$wallpaper"
|
||||
set_prop "$base/image-style" int 5 # zoomed: fill the screen, keep proportions
|
||||
set_prop xfce4-desktop "$base/last-image" string "$wallpaper"
|
||||
set_prop xfce4-desktop "$base/image-style" int 5 # zoomed: fill the screen, keep proportions
|
||||
done
|
||||
|
||||
mkdir -p "${marker%/*}" && touch "$marker"
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Defaults go to /etc/xdg/das, which /etc/profile.d/das-xdg.sh puts in front of
|
||||
# /etc/xdg: stock Xfce files stay untouched and users' own changes still win.
|
||||
pkgname=das-settings
|
||||
version=0.3.0
|
||||
version=0.4.0
|
||||
revision=1
|
||||
create_wrksrc=yes
|
||||
depends="das-theme lightdm lightdm-gtk-greeter xfce4-notifyd xfce4-panel
|
||||
|
||||
Reference in New Issue
Block a user