[oi-dev] mate-tweak?
Tim Mooney
Tim.Mooney at ndsu.edu
Fri Apr 5 16:16:01 UTC 2019
In regard to: Re: [oi-dev] mate-tweak?, Alexander Pyhalov via oi-dev said...:
> I don't know how to handle this in Mate theme, but you can create a set
> of dconf settings and import them with dconf - for example see
> https://github.com/OpenIndiana/oi-userland/commit/005fb56930218fbf86686be21f4dca1f5db0bbf3
> . To do more customization to mate-panel we just patch it.
To add to what Alexander said, you can use gsettings to both query
and set a lot of the desktop settings, including stuff not exposed by
the preferences GUIs. For some stuff (like creating a new profile in
the terminal app) you must use dconf.
One workflow that you may find useful is
gsettings list-recursively | sort > /tmp/before-my-change
# make some desktop change via the GUIs
gsettings list-recursively | sort > /tmp/after-my-change
gdiff -u /tmp/before-my-change /tmp/after-my-change
to figure out which settings control the behavior you're altering.
>From that point on, you can just put a 'gsettings set' with your
setting and value in a script, and have everything configured without
having to hunt through a bunch of GUIs.
I'm including the script I use for customizing my environment when I'm
spinning up a new hipster build box. Hopefully you find some useful
examples in there.
Tim
--
Tim Mooney Tim.Mooney at ndsu.edu
Enterprise Computing & Infrastructure 701-231-1076 (Voice)
Room 242-J6, Quentin Burdick Building 701-231-8541 (Fax)
North Dakota State University, Fargo, ND 58105-5164
#! /bin/sh
# Author : Tim Mooney <Tim.Mooney at ndsu.edu>
# Usage :
#
# hipster-environment-setup.sh
#
# Purpose: Do a bunch of (personal) environment setup to get basic GUI
# and shell settings more usable.
#
# See the dconf and especially gsettings documentation
#
PATH=/usr/bin:/usr/sbin:/bin:/sbin:/usr/ccs/bin; export PATH
yyyymmdd=`/bin/date +%Y%m%d`
echo '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++'
echo '+ +'
echo '+ Ensuring system/font/truetype/hack is installed: +'
echo '+ +'
echo '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++'
echo
is_installed=`sudo pkg list | egrep 'font/truetype/hack'`
if test X"$is_installed" = X"" ; then
sudo pkg install system/font/truetype/hack
else
echo '='
echo '= Already installed, no changes needed.'
echo '='
fi
echo '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++'
echo '+ +'
echo '+ Setting window titlebar double-click action to maximize vertically: +'
echo '+ +'
echo '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++'
echo
echo gsettings set org.mate.Marco.general action-double-click-titlebar 'toggle_maximize_vertically'
gsettings set org.mate.Marco.general action-double-click-titlebar 'toggle_maximize_vertically'
echo '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++'
echo '+ +'
echo '+ Setting Caps Lock to be another control key: +'
echo '+ +'
echo '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++'
echo
echo gsettings set org.mate.peripherals-keyboard-xkb.kbd options "['ctrl\tctrl:nocaps']"
gsettings set org.mate.peripherals-keyboard-xkb.kbd options "['ctrl\tctrl:nocaps']"
echo '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++'
echo '+ +'
echo '+ Lowering Log out delay from 60 to 10 seconds: +'
echo '+ +'
echo '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++'
echo
echo gsettings set org.mate.session logout-timeout 10
gsettings set org.mate.session logout-timeout 10
echo '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++'
echo '+ +'
echo '+ Checking whether an additional terminal profile has been created: +'
echo '+ +'
echo '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++'
echo
profile0=`dconf read /org/mate/terminal/global/profile-list | egrep 'profile.'`
if test X"$profile0" = X"" ; then
echo '+'
echo '+ profile0 is not present, creating...'
echo '+'
tfile=`mktemp /tmp/dconf-XXXXXX`
if test X"$tfile" = X"" || test ! -f $tfile ; then
echo "Failed to create temporary file for dconf settings" >&2
exit 1
fi
dconf dump /org/mate/terminal/profiles/default/ > $tfile
dconf load /org/mate/terminal/profiles/profile0/ < $tfile
else
echo '='
echo '= Already installed, no need to create profile0.'
echo '='
fi
echo '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++'
echo '+ +'
echo '+ Applying personal preferences to mate-terminal profile0: +'
echo '+ +'
echo '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++'
echo dconf write /org/mate/terminal/profiles/profile0/visible-name \
"'Hack Bold 14'"
dconf write /org/mate/terminal/profiles/profile0/visible-name "'Hack Bold 14'"
#
# make it a login shell:
#
echo dconf write /org/mate/terminal/profiles/profile0/login-shell true
dconf write /org/mate/terminal/profiles/profile0/login-shell true
#
# set the scrollback buffer to 2048 lines
#
echo dconf write /org/mate/terminal/profiles/profile0/scrollback-lines 2048
dconf write /org/mate/terminal/profiles/profile0/scrollback-lines 2048
#
# disable the use of the system font for the terminal:
#
echo dconf write /org/mate/terminal/profiles/profile0/use-system-font false
dconf write /org/mate/terminal/profiles/profile0/use-system-font false
#
# set the terminal font to 'Hack Bold 14'
#
echo dconf write /org/mate/terminal/profiles/profile0/font "'Hack Bold 14'"
dconf write /org/mate/terminal/profiles/profile0/font "'Hack Bold 14'"
#
# disable the use of theme colors
#
echo dconf write /org/mate/terminal/profiles/profile0/use-theme-colors false
dconf write /org/mate/terminal/profiles/profile0/use-theme-colors false
#
# set the foreground color
#
echo dconf write /org/mate/terminal/profiles/profile0/foreground-color \
"'#320FCDCD320F'"
dconf write /org/mate/terminal/profiles/profile0/foreground-color \
"'#320FCDCD320F'"
#
# set the background color
#
echo dconf write /org/mate/terminal/profiles/profile0/background-color \
"'#333333333333'"
dconf write /org/mate/terminal/profiles/profile0/background-color \
"'#333333333333'"
echo '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++'
echo '+ +'
echo '+ Making profile0 the default mate-terminal profile: +'
echo '+ +'
echo '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++'
#
# add our loaded profile to the global list of profiles
#
echo dconf write /org/mate/terminal/global/profile-list \
"['default','profile0']"
dconf write /org/mate/terminal/global/profile-list \
"['default','profile0']"
#
# now make it the default:
#
echo dconf write /org/mate/terminal/global/default-profile "'profile0'"
dconf write /org/mate/terminal/global/default-profile "'profile0'"
More information about the oi-dev
mailing list