feat: replace dconf locks with first-login sovran-theme-init script
Agent-Logs-Url: https://github.com/naturallaw777/staging_alpha/sessions/bb7956f3-e618-4998-8f80-4437478df0f9 Co-authored-by: naturallaw777 <99053422+naturallaw777@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
parent
5e4e2c8d71
commit
2f67a91b70
@@ -22,12 +22,24 @@ let
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
wallpaperInit = pkgs.writeShellScriptBin "sovran-wallpaper-init" ''
|
sovranThemeInit = pkgs.writeShellScriptBin "sovran-theme-init" ''
|
||||||
STAMP="$HOME/.config/sovran-wallpaper-set"
|
STAMP="$HOME/.config/sovran-theme-applied"
|
||||||
|
USER_DB="$HOME/.config/dconf/user"
|
||||||
|
|
||||||
|
# Already applied — skip
|
||||||
if [ -f "$STAMP" ]; then
|
if [ -f "$STAMP" ]; then
|
||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Existing machine updating — user already has their own settings, don't overwrite
|
||||||
|
if [ -f "$USER_DB" ]; then
|
||||||
|
mkdir -p "$HOME/.config"
|
||||||
|
touch "$STAMP"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Fresh install — no user-db exists yet, apply full Sovran theme below
|
||||||
|
|
||||||
BG_DIR="/run/current-system/sw/share/backgrounds/sovran"
|
BG_DIR="/run/current-system/sw/share/backgrounds/sovran"
|
||||||
STANDARD="$BG_DIR/sovran-standard.png"
|
STANDARD="$BG_DIR/sovran-standard.png"
|
||||||
ULTRAWIDE="$BG_DIR/sovran-ultrawide.png"
|
ULTRAWIDE="$BG_DIR/sovran-ultrawide.png"
|
||||||
@@ -47,12 +59,117 @@ let
|
|||||||
CHOSEN="$ULTRAWIDE"
|
CHOSEN="$ULTRAWIDE"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
${pkgs.dconf}/bin/dconf write /org/gnome/desktop/background/picture-uri \
|
${pkgs.dconf}/bin/dconf load / << EOF
|
||||||
"'file://$CHOSEN'"
|
[org/gnome/desktop/background]
|
||||||
${pkgs.dconf}/bin/dconf write /org/gnome/desktop/background/picture-uri-dark \
|
picture-uri='file://$CHOSEN'
|
||||||
"'file://$CHOSEN'"
|
picture-uri-dark='file://$CHOSEN'
|
||||||
${pkgs.dconf}/bin/dconf write /org/gnome/desktop/background/picture-options \
|
picture-options='zoom'
|
||||||
"'zoom'"
|
primary-color='#000000'
|
||||||
|
secondary-color='#000000'
|
||||||
|
|
||||||
|
[org/gnome/desktop/interface]
|
||||||
|
color-scheme='prefer-dark'
|
||||||
|
enable-animations=true
|
||||||
|
icon-theme='Papirus-Dark'
|
||||||
|
|
||||||
|
[org/gnome/settings-daemon/plugins/power]
|
||||||
|
sleep-inactive-ac-type='nothing'
|
||||||
|
sleep-inactive-ac-timeout=0
|
||||||
|
sleep-inactive-battery-type='nothing'
|
||||||
|
sleep-inactive-battery-timeout=0
|
||||||
|
idle-dim=false
|
||||||
|
ambient-enabled=false
|
||||||
|
power-button-action='nothing'
|
||||||
|
|
||||||
|
[org/gnome/desktop/session]
|
||||||
|
idle-delay=uint32 0
|
||||||
|
|
||||||
|
[org/gnome/desktop/screensaver]
|
||||||
|
lock-enabled=false
|
||||||
|
idle-activation-enabled=false
|
||||||
|
|
||||||
|
[org/gnome/mutter]
|
||||||
|
edge-tiling=false
|
||||||
|
|
||||||
|
[org/gnome/nautilus/icon-view]
|
||||||
|
default-zoom-level='large'
|
||||||
|
|
||||||
|
[org/gnome/nautilus/preferences]
|
||||||
|
default-folder-viewer='icon-view'
|
||||||
|
migrated-gtk-settings=true
|
||||||
|
search-filter-time-type='last_modified'
|
||||||
|
|
||||||
|
[org/gnome/shell]
|
||||||
|
disabled-extensions=['just-perfection-desktop@just-perfection']
|
||||||
|
enabled-extensions=['appindicatorsupport@rgcjonas.gmail.com', 'dash-to-dock-cosmic-@halfmexicanhalfamazing@gmail.com', 'Vitals@CoreCoding.com', 'dash-to-dock@micxgx.gmail.com', 'pop-shell@system76.com', 'date-menu-formatter@marcinjakubowski.github.com', 'light-style@gnome-shell-extensions.gcampax.github.com']
|
||||||
|
favorite-apps=['brave-browser.desktop', 'org.gnome.Settings.desktop', 'org.gnome.Nautilus.desktop', 'sovran-hub.desktop', 'org.gnome.Software.desktop', 'org.gnome.Geary.desktop', 'org.gnome.Contacts.desktop', 'org.gnome.Calendar.desktop', 'sparrow.desktop', 'Bisq.desktop', 'bisq2.desktop']
|
||||||
|
welcome-dialog-last-shown-version='48.4'
|
||||||
|
|
||||||
|
[org/gnome/desktop/app-folders]
|
||||||
|
folder-children=['Browsers', 'Office', 'Terminal', 'Chat', 'Bitcoin', 'Media', 'System']
|
||||||
|
|
||||||
|
[org/gnome/desktop/app-folders/folders/Browsers]
|
||||||
|
name='Browsers'
|
||||||
|
apps=['brave-browser.desktop', 'firefox.desktop', 'org.gnome.Epiphany.desktop']
|
||||||
|
|
||||||
|
[org/gnome/desktop/app-folders/folders/Office]
|
||||||
|
name='Office'
|
||||||
|
apps=['libreoffice-writer.desktop', 'libreoffice-calc.desktop', 'libreoffice-impress.desktop', 'libreoffice-draw.desktop', 'libreoffice-base.desktop', 'libreoffice-math.desktop', 'libreoffice-startcenter.desktop', 'org.gnome.TextEditor.desktop', 'org.gnome.gedit.desktop', 'org.gnome.Calculator.desktop', 'org.gnome.Calendar.desktop', 'org.gnome.Contacts.desktop', 'org.gnome.Geary.desktop', 'org.gnome.Evince.desktop', 'onlyoffice-desktopeditors.desktop', 'simple-scan.desktop', 'system-config-printer.desktop']
|
||||||
|
|
||||||
|
[org/gnome/desktop/app-folders/folders/Terminal]
|
||||||
|
name='Terminal'
|
||||||
|
apps=['org.gnome.Terminal.desktop', 'org.gnome.tweaks.desktop', 'gparted.desktop', 'htop.desktop', 'btop.desktop', 'ranger.desktop', 'org.gnome.Console.desktop']
|
||||||
|
|
||||||
|
[org/gnome/desktop/app-folders/folders/Chat]
|
||||||
|
name='Chat'
|
||||||
|
apps=['element-desktop.desktop']
|
||||||
|
|
||||||
|
[org/gnome/desktop/app-folders/folders/Bitcoin]
|
||||||
|
name='Bitcoin'
|
||||||
|
apps=['sparrow.desktop', 'Bisq.desktop', 'bisq2.desktop']
|
||||||
|
|
||||||
|
[org/gnome/desktop/app-folders/folders/Media]
|
||||||
|
name='Media'
|
||||||
|
apps=['org.gnome.Loupe.desktop', 'org.gnome.Totem.desktop', 'org.gnome.Snapshot.desktop', 'org.gnome.Weather.desktop', 'org.gnome.Maps.desktop', 'org.gnome.Clocks.desktop', 'org.gnome.Music.desktop', 'org.gnome.Characters.desktop', 'org.gnome.font-viewer.desktop']
|
||||||
|
|
||||||
|
[org/gnome/desktop/app-folders/folders/System]
|
||||||
|
name='System'
|
||||||
|
apps=['org.gnome.Settings.desktop', 'org.gnome.Nautilus.desktop', 'org.gnome.Software.desktop', 'sovran-hub.desktop', 'bitwarden.desktop', 'org.gnome.DiskUtility.desktop', 'org.gnome.SystemMonitor.desktop', 'org.gnome.Logs.desktop', 'org.gnome.Connections.desktop', 'org.gnome.baobab.desktop', 'zenity.desktop']
|
||||||
|
|
||||||
|
[org/gnome/shell/extensions/dash-to-dock]
|
||||||
|
background-color='rgb(0,0,0)'
|
||||||
|
background-opacity=0.50000000000000001
|
||||||
|
custom-background-color=true
|
||||||
|
dash-max-icon-size=47
|
||||||
|
dock-position='BOTTOM'
|
||||||
|
height-fraction=0.90000000000000002
|
||||||
|
preferred-monitor=-2
|
||||||
|
preferred-monitor-by-connector='Virtual-1'
|
||||||
|
show-trash=false
|
||||||
|
transparency-mode='FIXED'
|
||||||
|
|
||||||
|
[org/gnome/shell/extensions/date-menu-formatter]
|
||||||
|
font-size=12
|
||||||
|
pattern='EEEE, MMM d h:mm a'
|
||||||
|
text-align='center'
|
||||||
|
update-level=1
|
||||||
|
|
||||||
|
[org/gnome/shell/extensions/just-perfection]
|
||||||
|
support-notifier-showed-version=34
|
||||||
|
support-notifier-type=0
|
||||||
|
|
||||||
|
[org/gnome/shell/extensions/pop-shell]
|
||||||
|
tile-by-default=true
|
||||||
|
|
||||||
|
[org/gnome/shell/extensions/vitals]
|
||||||
|
hot-sensors=['_storage_free_', '_processor_usage_', '_memory_usage_']
|
||||||
|
|
||||||
|
[org/gnome/software]
|
||||||
|
first-run=false
|
||||||
|
|
||||||
|
[org/gtk/gtk4/settings/color-chooser]
|
||||||
|
selected-color=(true, 0.0, 0.0, 0.0, 1.0)
|
||||||
|
EOF
|
||||||
|
|
||||||
mkdir -p "$HOME/.config"
|
mkdir -p "$HOME/.config"
|
||||||
touch "$STAMP"
|
touch "$STAMP"
|
||||||
@@ -62,13 +179,13 @@ in
|
|||||||
|
|
||||||
{
|
{
|
||||||
|
|
||||||
environment.systemPackages = [ customWallpaper wallpaperInit ];
|
environment.systemPackages = [ customWallpaper sovranThemeInit ];
|
||||||
|
|
||||||
environment.etc."xdg/autostart/sovran-wallpaper-init.desktop".text = ''
|
environment.etc."xdg/autostart/sovran-theme-init.desktop".text = ''
|
||||||
[Desktop Entry]
|
[Desktop Entry]
|
||||||
Type=Application
|
Type=Application
|
||||||
Name=Sovran Wallpaper Init
|
Name=Sovran Theme Init
|
||||||
Exec=${wallpaperInit}/bin/sovran-wallpaper-init
|
Exec=${sovranThemeInit}/bin/sovran-theme-init
|
||||||
X-GNOME-Autostart-enabled=true
|
X-GNOME-Autostart-enabled=true
|
||||||
X-GNOME-Autostart-Phase=Application
|
X-GNOME-Autostart-Phase=Application
|
||||||
NoDisplay=true
|
NoDisplay=true
|
||||||
@@ -310,65 +427,6 @@ in
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
locks = [
|
|
||||||
"/org/gnome/desktop/background/picture-uri"
|
|
||||||
"/org/gnome/desktop/background/picture-uri-dark"
|
|
||||||
"/org/gnome/desktop/background/picture-options"
|
|
||||||
"/org/gnome/desktop/background/primary-color"
|
|
||||||
"/org/gnome/desktop/background/secondary-color"
|
|
||||||
"/org/gnome/desktop/input-sources/sources"
|
|
||||||
"/org/gnome/desktop/input-sources/xkb-options"
|
|
||||||
"/org/gnome/desktop/interface/color-scheme"
|
|
||||||
"/org/gnome/desktop/interface/enable-animations"
|
|
||||||
"/org/gnome/desktop/interface/icon-theme"
|
|
||||||
"/org/gnome/evolution-data-server/migrated"
|
|
||||||
"/org/gnome/mutter/edge-tiling"
|
|
||||||
"/org/gnome/nautilus/icon-view/default-zoom-level"
|
|
||||||
"/org/gnome/nautilus/preferences/default-folder-viewer"
|
|
||||||
"/org/gnome/nautilus/preferences/migrated-gtk-settings"
|
|
||||||
"/org/gnome/nautilus/preferences/search-filter-time-type"
|
|
||||||
"/org/gnome/shell/disabled-extensions"
|
|
||||||
"/org/gnome/shell/enabled-extensions"
|
|
||||||
"/org/gnome/shell/favorite-apps"
|
|
||||||
"/org/gnome/shell/welcome-dialog-last-shown-version"
|
|
||||||
"/org/gnome/desktop/app-folders/folder-children"
|
|
||||||
"/org/gnome/desktop/app-folders/folders/Browsers/name"
|
|
||||||
"/org/gnome/desktop/app-folders/folders/Browsers/apps"
|
|
||||||
"/org/gnome/desktop/app-folders/folders/Office/name"
|
|
||||||
"/org/gnome/desktop/app-folders/folders/Office/apps"
|
|
||||||
"/org/gnome/desktop/app-folders/folders/Terminal/name"
|
|
||||||
"/org/gnome/desktop/app-folders/folders/Terminal/apps"
|
|
||||||
"/org/gnome/desktop/app-folders/folders/Chat/name"
|
|
||||||
"/org/gnome/desktop/app-folders/folders/Chat/apps"
|
|
||||||
"/org/gnome/desktop/app-folders/folders/Bitcoin/name"
|
|
||||||
"/org/gnome/desktop/app-folders/folders/Bitcoin/apps"
|
|
||||||
"/org/gnome/desktop/app-folders/folders/Media/name"
|
|
||||||
"/org/gnome/desktop/app-folders/folders/Media/apps"
|
|
||||||
"/org/gnome/desktop/app-folders/folders/System/name"
|
|
||||||
"/org/gnome/desktop/app-folders/folders/System/apps"
|
|
||||||
"/org/gnome/shell/extensions/dash-to-dock/background-color"
|
|
||||||
"/org/gnome/shell/extensions/dash-to-dock/background-opacity"
|
|
||||||
"/org/gnome/shell/extensions/dash-to-dock/custom-background-color"
|
|
||||||
"/org/gnome/shell/extensions/dash-to-dock/dash-max-icon-size"
|
|
||||||
"/org/gnome/shell/extensions/dash-to-dock/dock-position"
|
|
||||||
"/org/gnome/shell/extensions/dash-to-dock/height-fraction"
|
|
||||||
"/org/gnome/shell/extensions/dash-to-dock/preferred-monitor"
|
|
||||||
"/org/gnome/shell/extensions/dash-to-dock/preferred-monitor-by-connector"
|
|
||||||
"/org/gnome/shell/extensions/dash-to-dock/show-trash"
|
|
||||||
"/org/gnome/shell/extensions/dash-to-dock/transparency-mode"
|
|
||||||
"/org/gnome/shell/extensions/date-menu-formatter/font-size"
|
|
||||||
"/org/gnome/shell/extensions/date-menu-formatter/pattern"
|
|
||||||
"/org/gnome/shell/extensions/date-menu-formatter/text-align"
|
|
||||||
"/org/gnome/shell/extensions/date-menu-formatter/update-level"
|
|
||||||
"/org/gnome/shell/extensions/just-perfection/support-notifier-showed-version"
|
|
||||||
"/org/gnome/shell/extensions/just-perfection/support-notifier-type"
|
|
||||||
"/org/gnome/shell/extensions/pop-shell/tile-by-default"
|
|
||||||
"/org/gnome/shell/extensions/vitals/hot-sensors"
|
|
||||||
"/org/gnome/software/check-timestamp"
|
|
||||||
"/org/gnome/software/first-run"
|
|
||||||
"/org/gtk/gtk4/settings/color-chooser/selected-color"
|
|
||||||
];
|
|
||||||
|
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user