Last active
September 11, 2019 11:35
-
-
Save dreamcat4/ffed57b19c6d69dffee91fb0ecb72171 to your computer and use it in GitHub Desktop.
dreamcat4's Gnome 3 customizations, updated for ubuntu 18.04 - on July 16 2018
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
# dreamcat4's Gnome 3 customizations for ubuntu 16.04 | |
# Provided for 'Ubuntu Fit and Finish Sprint' | |
# 4pm - 9pm on August 24 2017 | |
# Notes: | |
# * These are dreamcat4's commandline steps to get vanilla gnome3 into a 'nice' desktop experience | |
# * Divided into separate sections. Which are each optional and can be applied independantly of one another. | |
# * You can just blindly copy-paste each sections. Then logout / log back in again. It should 'just work' | |
# * Recommended to start from a clean desktop. Uninstall steps are not provided. So maybe just create a new user login account. | |
# * Tested on 16.04, not 17.10. Therefore some sections may become broken | |
# * There was no decent cursor theme found, so have kept the default 'Adwaita' cursor theme | |
# ====== | |
# install gnome session, instead of unity version | |
sudo apt-get install -y gnome-session gnome-session-wayland | |
# ====== | |
# liquidprompt - recommended, all bash, no powerline | |
# ! further configuration instructions --> https://github.com/nojhan/liquidprompt | |
# for temperature and battery thresholds, etc | |
mkdir -p ~/.dev ~/.config/liquidprompt | |
git clone https://github.com/nojhan/liquidprompt.git ~/.dev/liquidprompt | |
cp ~/.dev/liquidprompt/liquidpromptrc-dist ~/.config/liquidprompt/liquidpromptrc | |
ln -s ~/.config/liquidprompt/liquidpromptrc ~/.liquidpromptrc | |
cp ~/.dev/liquidprompt/liquid.theme ~/.config/liquidprompt/liquid.theme | |
sed -i -e 's|="$BOLD_YELLOW"|="$PURPLE"|g' ~/.config/liquidprompt/liquid.theme | |
sed -i -e 's|#source ~/.config/liquidprompt/nojhan.theme|source ~/.config/liquidprompt/liquid.theme|' ~/.liquidpromptrc | |
# These features may already be enabled by default | |
# # enable | |
# sed -i -e "s|LP_ENABLE_SUDO=0|LP_ENABLE_SUDO=1|g" ~/.liquidpromptrc | |
# sed -i -e "s|LP_ENABLE_SCREEN_TITLE=0|LP_ENABLE_SCREEN_TITLE=1|g" ~/.liquidpromptrc | |
# # disable | |
# sed -i -e "s|LP_ENABLE_SUDO=1|LP_ENABLE_SUDO=0|g" ~/.liquidpromptrc | |
# sed -i -e "s|LP_ENABLE_SCREEN_TITLE=1|LP_ENABLE_SCREEN_TITLE=0|g" ~/.liquidpromptrc | |
echo ". ~/.dev/liquidprompt/liquidprompt" >> ~/.profile | |
. ~/.dev/liquidprompt/liquidprompt | |
# ====== | |
# turn off the screensaver, auto-lock screen, etc | |
# https://askubuntu.com/a/67361/409485 | |
# disable the screensaver / lock screen | |
dbus-launch gsettings set org.gnome.desktop.session idle-delay 0 | |
dbus-launch gsettings set org.gnome.desktop.screensaver idle-activation-enabled false | |
dbus-launch gsettings set org.gnome.desktop.screensaver lock-enabled false | |
# disable notifications in the lock screen | |
dbus-launch gsettings set org.gnome.desktop.notifications show-in-lock-screen false | |
# turn off all power settings | |
dbus-launch gsettings set org.gnome.settings-daemon.plugins.power active false | |
# set power profile here.... | |
# ! not implemented | |
# # re-enable power profile | |
# dbus-launch gsettings set org.gnome.settings-daemon.plugins.power active true | |
# ====== | |
# configure gnome-terminal | |
# add 'gnome-terminal --maximize' to startup applications | |
echo "[Desktop Entry] | |
Type=Application | |
Exec=gnome-terminal --maximize | |
Hidden=false | |
NoDisplay=false | |
X-GNOME-Autostart-enabled=false | |
Name[en_GB]=Gnome-Terminal | |
Name=Gnome-Terminal | |
Comment[en_GB]= | |
Comment= | |
" > ~/.config/autostart/gnome-terminal.desktop | |
# set default profile color scheme to 'solarized light' | |
dbus-launch dconf reset -f /org/gnome/terminal/legacy/profiles:/ | |
dconfdir=/org/gnome/terminal/legacy/profiles: | |
create_new_profile() { | |
profile_id="$(uuidgen)" | |
dbus-launch dconf write $dconfdir/default "'$profile_id'" | |
dbus-launch dconf write $dconfdir/list "['$profile_id']" | |
profile_dir="$dconfdir/:$profile_id" | |
dbus-launch dconf write $profile_dir/visible-name "'Default'" | |
} | |
create_new_profile | |
# get profile uuid | |
_profile="$(dbus-launch dconf read /org/gnome/terminal/legacy/profiles:/default | tr -d "'")" | |
# set color scheme | |
mkdir -p ~/.dev | |
git clone https://github.com/gnumoksha/gnome-terminal-colors.git ~/.dev/gnome-terminal-colors | |
cd ~/.dev/gnome-terminal-colors | |
echo "1" | dbus-launch ./install.sh --scheme solarized_light --profile Default | |
# get settings | |
dbus-launch gsettings get org.gnome.Terminal.Legacy.Profile:/org/gnome/terminal/legacy/profiles:/:${_profile}/ | |
# set scrollback to 20k lines | |
dbus-launch gsettings set org.gnome.Terminal.Legacy.Profile:/org/gnome/terminal/legacy/profiles:/:${_profile}/ scrollback-lines 20000 | |
# set scrollback to unlimited | |
dbus-launch gsettings set org.gnome.Terminal.Legacy.Profile:/org/gnome/terminal/legacy/profiles:/:${_profile}/ scrollback-unlimited true | |
# set palette scheme to 'Tango', need to use gsettings (dconf doesnt work) | |
dbus-launch gsettings set org.gnome.Terminal.Legacy.Profile:/org/gnome/terminal/legacy/profiles:/:${_profile}/ palette "['rgb(0,0,0)', 'rgb(204,0,0)', 'rgb(78,154,6)', 'rgb(196,160,0)', 'rgb(52,101,164)', 'rgb(117,80,123)', 'rgb(6,152,154)', 'rgb(211,215,207)', 'rgb(85,87,83)', 'rgb(239,41,41)', 'rgb(138,226,52)', 'rgb(252,233,79)', 'rgb(114,159,207)', 'rgb(173,127,168)', 'rgb(52,226,226)', 'rgb(238,238,236)']" | |
# disable audible bell | |
dbus-launch dconf write /org/gnome/terminal/legacy/profiles:/:${_profile}/audible-bell false | |
# open new terminals in tab | |
dbus-launch dconf write /org/gnome/terminal/legacy/new-terminal-mode "'tab'" | |
# set 'reset and clear' to ctrl+k | |
dbus-launch dconf write /org/gnome/terminal/legacy/keybindings/reset-and-clear "'<Primary>k'" | |
# for error: Schema 'org.gnome.Terminal.Legacy.Keybindings' is relocatable (path must be specified) | |
# https://unix.stackexchange.com/questions/297654/configuring-gnome-shell-key-bindings-from-the-command-line | |
# | |
# GSETTINGS_SCHEMA=org.gnome.Terminal.Legacy.Keybindings | |
# GSETTINGS_PATH=/org/gnome/terminal/legacy/keybindings/ | |
# SCHEMA_PATH=$GSETTINGS_SCHEMA:$GSETTINGS_PATH | |
# dbus-launch gsettings set $SCHEMA_PATH reset-and-clear '<Primary>k' | |
# ====== | |
# random default backgrounds, for 16.04 | |
# dbus-launch gsettings get org.gnome.desktop.screensaver picture-uri | |
# dbus-launch gsettings get org.gnome.desktop.background picture-uri | |
_xml_file="$(ls /usr/share/backgrounds/ubuntu-gnome/*.xml | head -1)" | |
if [ "$_xml_file" ]; then | |
dbus-launch gsettings set org.gnome.desktop.screensaver picture-uri "file://${_xml_file}" | |
dbus-launch gsettings set org.gnome.desktop.background picture-uri "file://${_xml_file}" | |
fi | |
mkdir -p ~/.dev | |
git clone https://github.com/almet/gnome-background-generator.git ~/.dev/gnome-background-generator | |
_adwaita_bgs="$(ls /usr/share/backgrounds/gnome/adwaita-*.jpg)" | |
_other_bgs=" | |
/usr/share/backgrounds/Beaver_Wallpaper_Grey_4096x2304.png | |
/usr/share/backgrounds/Halifax_Sunset_by_Vlad_Drobinin.jpg | |
/usr/share/backgrounds/This_Is_Bionic_Beaver_by_Pierre_Cante.jpg | |
/usr/share/backgrounds/ubuntu-default-greyscale-wallpaper.png | |
/usr/share/backgrounds/warty-final-ubuntu.png | |
/usr/share/backgrounds/Greenish_by_EstebanMitnick.jpg | |
/usr/share/backgrounds/Greenish_by_EstebanMitnick.jpg | |
/usr/share/backgrounds/ubuntu-gnome/abstract-lock-screen.jpg | |
/usr/share/backgrounds/ubuntu-gnome/weathercock.jpg | |
/usr/share/backgrounds/ubuntu-gnome/weathercock-black-white.jpg | |
/usr/share/backgrounds/gnome/Terraform-green.jpg | |
/usr/share/backgrounds/gnome/Icescape.jpg | |
" | |
for _bg in $_adwaita_bgs $_other_bgs; do | |
sudo mv -f "$_bg" "${_bg}.disabled" 2> /dev/null | |
done | |
mkdir -p ~/.config/org.gnome.desktop.background | |
_xml_outputfile="$HOME/.config/org.gnome.desktop.background/random-usr-share-backgrounds.xml" | |
_backgrounds_folder="/usr/share/backgrounds" | |
_transition_sec=5 | |
# _display_sec=1795 # 30 mins | |
# _display_sec=3595 # 60 mins | |
_display_sec=86395 # 1 day | |
cd ~/.dev/gnome-background-generator | |
./gnome-background-generator -R -f --path "$_backgrounds_folder" --transition-time $_transition_sec --display-time $_display_sec --output $_xml_outputfile | |
if [ "$?" = "0" ]; then | |
dbus-launch gsettings set org.gnome.desktop.screensaver picture-uri "file://${_xml_outputfile}" | |
dbus-launch gsettings set org.gnome.desktop.background picture-uri "file://${_xml_outputfile}" | |
fi | |
# check to see what we have | |
less $_xml_outputfile | |
# # some good wallpapers | |
# https://wallpapershome.com/download-wallpapers/osx/ | |
# http://wallpaperswide.com/1920x1080-wallpapers-r.html | |
# install variety - wallpaper changer | |
sudo add-apt-repository -y ppa:peterlevi/ppa | |
sudo apt-get update -y | |
sudo apt-get install -y variety < /dev/null | |
# create a publicly readable folder - where wallpapers can be saved for the lock screen | |
sudo mkdir -p /usr/share/backgrounds/variety-share | |
sudo chown -R :sudo /usr/share/backgrounds/variety-share | |
sudo chmod g+w /usr/share/backgrounds/variety-share | |
# ====== | |
# set the gnome favorites - dock icons | |
# dbus-launch gsettings get org.gnome.shell favorite-apps | |
# dbus-launch gsettings set org.gnome.shell favorite-apps "['org.gnome.Nautilus.desktop', 'firefox.desktop', 'gnome-terminal.desktop', 'gnome-control-center.desktop', 'gnome-tweak-tool.desktop', 'ca.desrt.dconf-editor.desktop', 'update-manager.desktop']" | |
# ====== | |
# install helper script - gnome-shell-extension-cl | |
# https://askubuntu.com/a/806398/409485 | |
sudo wget -O /usr/local/bin/gnome-shell-extension-cl https://raw.githubusercontent.com/dreamcat4/gnome-shell-extension-cl/master/gnome-shell-extension-cl | |
sudo chmod +x /usr/local/bin/gnome-shell-extension-cl | |
# list installed gnome shell extensions | |
gnome-shell-extension-cl -l | |
# ====== | |
# enable some default shell extensions | |
# # alt-tab that does not group by application | |
# gnome-shell-extension-cl -e alternate-tab@gnome-shell-extensions.gcampax.github.com | |
cyberpower tracer 3 different v2 keyboard | |
# install extra gnome shell extensions, that are not installed by default | |
sudo apt-get install -y gnome-shell-extensions | |
sudo apt-get install -y gnome-shell-extensions-gpaste | |
# removable drive menu | |
gnome-shell-extension-cl -e drive-menu@gnome-shell-extensions.gcampax.github.com | |
# windowsNavigator - in overlay mode - alt+1-9 - selects window, ctrl+1-9 - selects workspace | |
gnome-shell-extension-cl -e windowsNavigator@gnome-shell-extensions.gcampax.github.com | |
# load shell themes from user directory | |
gnome-shell-extension-cl -e user-theme@gnome-shell-extensions.gcampax.github.com | |
# user shell theme - Fresh-Finesse | |
dbus-launch gsettings set org.gnome.shell.extensions.user-theme name "Fresh-Finesse" | |
# ====== | |
# global application menu | |
# only working in gnome 3.24+ / ubuntu 17.04+ | |
# http://www.omgubuntu.co.uk/2017/04/global-menu-for-gnome-extension-development | |
# ====== | |
# show desktop icons | |
dbus-launch gsettings set org.gnome.desktop.background show-desktop-icons true | |
# ====== | |
# show logout button | |
dbus-launch gsettings set org.gnome.shell always-show-log-out true | |
# ====== | |
# install shortcuts for logout, reboot, etc | |
sudo apt-get install -y session-shortcuts < /dev/null | |
# ====== | |
# install bash script to install and search extensions | |
git clone https://github.com/brunelli/gnome-shell-extension-installer.git ~/.dev/gnome-shell-extension-installer | |
sudo ln -s ~/.dev/gnome-shell-extension-installer/gnome-shell-extension-installer /usr/local/bin/gnome-shell-extension-installer | |
# ====== | |
# install dash-to-dock | |
# first find gnome shell version | |
gnome-shell --version | |
# GNOME Shell 3.18.5 | |
# find matching release download url | |
# https://micheleg.github.io/dash-to-dock/releases.html | |
# download | |
_ext="dash-to-dock@micxgx.gmail.com" | |
_url="https://extensions.gnome.org/review/download/8039.shell-extension.zip" | |
wget -O ~/Desktop/${_ext}.zip $_url | |
mkdir -p ~/.local/share/gnome-shell/extensions/ | |
unzip ~/Desktop/${_ext}.zip -d ~/.local/share/gnome-shell/extensions/${_ext} | |
rm ~/Desktop/${_ext}.zip | |
# enable it | |
gnome-shell-extension-cl -e ${_ext} | |
# command to run - to change settings | |
gsettings_dtd="dbus-launch gsettings --schemadir $HOME/.local/share/gnome-shell/extensions/dash-to-dock@micxgx.gmail.com/schemas" | |
# # list all available settings | |
# $gsettings_dtd list-keys org.gnome.shell.extensions.dash-to-dock | sort | less | |
# turn off auto-hide | |
$gsettings_dtd set org.gnome.shell.extensions.dash-to-dock autohide false | |
# # expand the dock take up all available space | |
# $gsettings_dtd set org.gnome.shell.extensions.dash-to-dock extend-height true | |
# set background opacity to 75% | |
$gsettings_dtd set org.gnome.shell.extensions.dash-to-dock opaque-background true | |
$gsettings_dtd set org.gnome.shell.extensions.dash-to-dock background-opacity 0.75 | |
# # set background opacity to 100% | |
# $gsettings_dtd set org.gnome.shell.extensions.dash-to-dock opaque-background false | |
# cycle windows with mouse hover + mouse scroll | |
$gsettings_dtd set org.gnome.shell.extensions.dash-to-dock scroll-action cycle-windows | |
# shift + middle clicking an open application causes it to quit | |
$gsettings_dtd set org.gnome.shell.extensions.dash-to-dock shift-middle-click-action quit | |
# customize the dots - open windows indicator | |
$gsettings_dtd set org.gnome.shell.extensions.dash-to-dock custom-theme-running-dots true | |
$gsettings_dtd set org.gnome.shell.extensions.dash-to-dock custom-theme-customize-running-dots true | |
# make the dock more space-effecient with fewer borders | |
$gsettings_dtd set org.gnome.shell.extensions.dash-to-dock custom-theme-shrink true | |
# ====== | |
# fix audio devices not appearing - remove firmware update daemon | |
# fix audio | |
# https://help.ubuntu.com/community/SoundTroubleshootingProcedure | |
# fix has already been released for this | |
# sudo apt-get autoremove -y fwupd | |
# sudo killall pulseaudio; rm -rf ~/.config/pulse/* ; rm -rf ~/.pulse* | |
# sleep 10 | |
# sudo reboot | |
# add current user to audio group | |
sudo usermod -aG audio,video,pulse,pulse-access $(id -u -n) | |
# sudo apt-get update -y | |
# sudo apt-get install -y pavucontrol linux-sound-base alsa-base alsa-utils libasound2 < /dev/null | |
# sudo apt-get -y --reinstall install linux-sound-base alsa-base alsa-utils libasound2 < /dev/null | |
# killall pulseaudio; rm -r ~/.pulse*; ubuntu-support-status | |
# ====== | |
# gnome shell extensions - 3rd party | |
# ====== | |
# extention reloader | |
# find latest version here - https://nls1729.github.io/extension_reloader_zip.html | |
_ext="extension-reloader@nls1729" | |
_url="https://extensions.gnome.org/review/download/8064.shell-extension.zip" | |
wget -O ~/Desktop/${_ext}.zip "$_url" | |
mkdir -p ~/.local/share/gnome-shell/extensions/ | |
unzip ~/Desktop/${_ext}.zip -d ~/.local/share/gnome-shell/extensions/${_ext} | |
rm ~/Desktop/${_ext}.zip | |
gnome-shell-extension-cl -e ${_ext} | |
# ====== | |
# activities configurator | |
# find latest version here - https://nls1729.github.io/activities_config_zip.html | |
_ext="activities-config@nls1729" | |
_url="https://extensions.gnome.org/extension-data/activities-config%40nls1729.v65.shell-extension.zip" | |
wget -O ~/Desktop/${_ext}.zip "$_url" | |
mkdir -p ~/.local/share/gnome-shell/extensions/ | |
unzip ~/Desktop/${_ext}.zip -d ~/.local/share/gnome-shell/extensions/${_ext} | |
rm ~/Desktop/${_ext}.zip | |
gnome-shell-extension-cl -e ${_ext} | |
# ====== | |
# logout button | |
_ext="LogOutButton@kyle.aims.ac.za" | |
# _url="https://gitlab.com/paddatrapper/log-out-button-gnome-extension.git" | |
_url="https://github.com/dreamcat4/log-out-button-gnome-extension.git" | |
_repo="$( basename -s.git "$_url")" | |
git clone "$_url" ~/Desktop/${_repo} | |
cd ~/Desktop/${_repo} | |
sudo apt-get install -y libglib2.0-dev gettext < /dev/null | |
./install.sh local-install | |
# cp -Rf "$_ext" ~/.local/share/gnome-shell/extensions | |
cd | |
rm -rf ~/Desktop/${_repo} | |
# # fix metadata.json to support currently installed version of gnome shell | |
# _gver="$(gnome-shell --version | sed -e "s/^[^0-9]*//" | cut -d. -f1-2)" | |
# sed -i -e "s/\"3\...\"/\"${_gver}\"/" ~/.local/share/gnome-shell/extensions/${_ext}/metadata.json | |
gnome-shell-extension-cl -e ${_ext} | |
# ====== | |
# gnome global appmenu | |
_ext="gnomeGlobalAppMenu@lestcape" | |
_url="https://gitlab.com/lestcape/Gnome-Global-AppMenu.git" | |
_repo="$( basename -s.git "$_url")" | |
git clone "$_url" ~/Desktop/${_repo} | |
cd ~/Desktop/${_repo} | |
cp -Rf "$_ext" ~/.local/share/gnome-shell/extensions | |
cd | |
rm -rf ~/Desktop/${_repo} | |
# gnome-shell-extension-cl -e ${_ext} | |
# ====== | |
# disable screen shield | |
_ext="disable-screenshield@lgpasquale.com" | |
_url="https://github.com/lgpasquale/gnome-shell-extension-disable-screenshield.git" | |
git clone "$_url" ~/.local/share/gnome-shell/extensions/${_ext} | |
gnome-shell-extension-cl -e ${_ext} | |
# ====== | |
# install tracker search provider gnome shell extension | |
# you also need to bind mount the folder, if it's located on a different drive, see | |
# https://superuser.com/a/1262778/451360 | |
# another way to solve: | |
# https://bbs.archlinux.org/viewtopic.php?id=200932 | |
# xdg-user-dirs-update --set MUSIC /media/whatever/path/music | |
# open dconf-editor, navigate to org.freedesktop.Tracker.Miner.Files | |
# and set the enable-removable-drives setting | |
sudo apt-get install -y gir1.2-tracker | |
_ext="tracker-search-provider@sinnix.de" | |
_url="https://github.com/hamiller/tracker-search-provider.git" | |
git clone "$_url" ~/.local/share/gnome-shell/extensions/${_ext} | |
gnome-shell-extension-cl -e ${_ext} | |
# You also need: tracker-needle | |
# ====== | |
# quick toggler | |
sudo apt-get install -y jq | |
_ext="quicktoggler@shihira.github.com" | |
_url="https://github.com/Shihira/gnome-extension-quicktoggler.git" | |
_repo="$( basename -s.git "$_url")" | |
git clone "$_url" ~/Desktop/${_repo} | |
cd ~/Desktop/${_repo} | |
cd ${_ext} | |
make install | |
cd | |
rm -rf ~/Desktop/${_repo} | |
gnome-shell-extension-cl -e ${_ext} | |
# ====== | |
# no annoyance - remove window is ready notification, focus the window instead | |
_ext="noannoyance@sindex.com" | |
_url="https://github.com/sindex/no-annoyance.git" | |
_repo="$( basename -s.git "$_url")" | |
git clone "$_url" ~/Desktop/${_repo} | |
mv ~/Desktop/${_repo} ~/.local/share/gnome-shell/extensions/${_ext} | |
gnome-shell-extension-cl -e ${_ext} | |
# ====== | |
# screenshot tool | |
_ext="gnome-shell-screenshot@ttll.de" | |
_url="https://github.com/OttoAllmendinger/gnome-shell-screenshot.git" | |
_repo="$( basename -s.git "$_url")" | |
git clone "$_url" ~/Desktop/${_repo} | |
cd ~/Desktop/${_repo} | |
make install | |
cd | |
rm -rf ~/Desktop/${_repo} | |
gnome-shell-extension-cl -e ${_ext} | |
# ====== | |
# laine - audio menu | |
_ext="laine@knasher.gmail.com" | |
_url="https://github.com/johnhoran/Laine.git" | |
_repo="$( basename -s.git "$_url")" | |
git clone "$_url" ~/Desktop/${_repo} | |
cd ~/Desktop/${_repo} | |
make install | |
cd | |
rm -rf ~/Desktop/${_repo} | |
gnome-shell-extension-cl -e ${_ext} | |
# ====== | |
# extended panel menu | |
_ext="extend-panel-menu@julio641742" | |
_url="https://github.com/julio641742/extend-panel-menu.git" | |
_repo="$( basename -s.git "$_url")" | |
git clone "$_url" ~/Desktop/${_repo} | |
cd ~/Desktop/${_repo} | |
make install | |
cd | |
rm -rf ~/Desktop/${_repo} | |
gnome-shell-extension-cl -e ${_ext} | |
# ====== | |
# disable barrier support (for moving the mouse across montiors in synergy not to tigger the hotcorners) | |
_ext="no-barriers@zeroepoch.com" | |
_url="https://github.com/zeroepoch/gnome-shell-extension-no-barriers.git" | |
git clone "$_url" ~/.local/share/gnome-shell/extensions/${_ext} | |
gnome-shell-extension-cl -e ${_ext} | |
# ====== | |
# OpenWeather, by jens | |
_ext="openweather-extension@jenslody.de" | |
# upstream, too many build deps, _url="https://github.com/jenslody/gnome-shell-extension-openweather" | |
# look for latest .deb file, direct download link - https://www.ubuntuupdates.org/pm/gnome-shell-extension-weather | |
_url="http://security.ubuntu.com/ubuntu/pool/universe/g/gnome-shell-extension-weather/gnome-shell-extension-weather_0~20170402.git34506a6-1_all.deb" | |
wget -O ~/Desktop/${_ext}.deb "$_url" | |
sudo dpkg -i ~/Desktop/${_ext}.deb | |
rm ~/Desktop/${_ext}.deb | |
gnome-shell-extension-cl -e ${_ext} | |
# ====== | |
# recent(item)s | |
_ext="Recents@leonardo.bartoli.gmail.com" | |
_url="https://github.com/leonardo-bartoli/gnome-shell-extension-Recents.git" | |
_repo="$( basename -s.git "$_url")" | |
git clone "$_url" ~/.local/share/gnome-shell/extensions/${_ext} | |
gnome-shell-extension-cl -e ${_ext} | |
# ====== | |
# top panel workspace scroll | |
_ext="scroll-workspaces@gfxmonk.net" | |
_url="https://github.com/timbertson/gnome-shell-scroll-workspaces.git" | |
_repo="$( basename -s.git "$_url")" | |
git clone "$_url" ~/Desktop/${_repo} | |
cd ~/Desktop/${_repo} | |
./tools/gup | |
./tools/gup zip | |
unzip scroll-workspaces.zip -d ~/.local/share/gnome-shell/extensions/${_ext} | |
gnome-shell-extension-cl -e ${_ext} | |
# ====== | |
# shelltile | |
_ext="ShellTile@emasab.it" | |
_url="https://github.com/emasab/shelltile.git" | |
_repo="$( basename -s.git "$_url")" | |
git clone "$_url" ~/.local/share/gnome-shell/extensions/${_ext} | |
gnome-shell-extension-cl -e ${_ext} | |
# ====== | |
# switch focus type | |
_ext="SwitchFocusType@romano.rgtti.com" | |
_url="https://github.com/Rmano/gse-switch-focus-mode.git" | |
# we could improve the tray icons | |
# _url="https://github.com/dreamcat4/gse-switch-focus-mode.git" | |
_repo="$( basename -s.git "$_url")" | |
git clone "$_url" ~/Desktop/${_repo} | |
cp -r ~/Desktop/${_repo}/${_ext} -t ~/.local/share/gnome-shell/extensions | |
rm -rf ~/Desktop/${_repo} | |
gnome-shell-extension-cl -e ${_ext} | |
# ====== | |
# no title bar | |
_ext="no-title-bar@franglais125.gmail.com" | |
_url="https://github.com/franglais125/no-title-bar.git" | |
_repo="$( basename -s.git "$_url")" | |
git clone "$_url" ~/Desktop/${_repo} | |
cd ~/Desktop/${_repo} | |
make install | |
cd .. | |
rm -rf ~/Desktop/${_repo} | |
gnome-shell-extension-cl -e ${_ext} | |
# ====== | |
# freon sensors | |
_ext="freon@UshakovVasilii_Github.yahoo.com" | |
_url="https://github.com/UshakovVasilii/gnome-shell-extension-freon.git" | |
_repo="$( basename -s.git "$_url")" | |
git clone "$_url" ~/Desktop/${_repo} | |
cp -r ~/Desktop/${_repo}/${_ext} -t ~/.local/share/gnome-shell/extensions | |
rm -rf ~/Desktop/${_repo} | |
gnome-shell-extension-cl -e ${_ext} | |
# ====== | |
# topicons plus | |
_ext="TopIcons@phocean.net" | |
_url="https://github.com/phocean/TopIcons-plus.git" | |
_repo="$( basename -s.git "$_url")" | |
git clone "$_url" ~/Desktop/${_repo} | |
cd ~/Desktop/${_repo} | |
sudo apt-get install -y make < /dev/null | |
make install | |
cd | |
rm -rf ~/Desktop/${_repo} | |
gnome-shell-extension-cl -e ${_ext} | |
# ====== | |
# install microsoft truetype core fonts | |
sudo chmod 777 /var/lib/update-notifier/package-data-downloads/partial | |
echo ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true | sudo debconf-set-selections | |
sudo apt-get install -y ttf-mscorefonts-installer < /dev/null | |
# sudo apt-get purge ttf-mscorefonts-installer | |
# sudo rm -Rv /var/lib/update-notifier/package-data-downloads/partial/* | |
# sudo apt-get install --reinstall ttf-mscorefonts-installer < /dev/null | less | |
sudo chmod 755 /var/lib/update-notifier/package-data-downloads/partial | |
# ====== | |
# install gnome gtk themes | |
git clone https://github.com/tliron/install-gnome-themes.git ~/.dev/install-gnome-themes | |
# install missing dependancies | |
# sudo apt-get install -y autoconf gtk2-engines-pixbuf libgdk-pixbuf2.0-dev inkscape sassc parallel libgtk-3-dev | |
sudo apt-get install -y git autoconf automake pkg-config parallel ruby-sass sassc optipng inkscape libgtk-3-dev libgdk-pixbuf2.0-dev libglib2.0-dev libglib2.0-bin libxml2-utils librsvg2-dev gnome-themes-standard gtk2-engines-murrine gtk2-engines-pixbuf fonts-roboto-hinted fonts-noto-hinted | |
# don't conflict with pre-installed numix theme, the one we install is more up to date | |
sudo apt remove numix-gtk-theme | |
# keep retrying until all themes are installed | |
_result=1 | |
while [ "$_result" != "0" ]; do | |
echo "Y | |
Y" | GTK_LEGACY=0 DEBIAN_FRONTEND=noninteractive ~/.dev/install-gnome-themes/install-gnome-themes | |
_result=$? | |
done | |
# install adapta gtk theme | |
sudo apt-add-repository -y ppa:tista/adapta | |
sudo apt-get update -y | |
sudo apt-get install -y adapta-gtk-theme < /dev/null | |
# install gnome icon themes | |
mkdir -p ~/.dev | |
git clone https://github.com/erikdubois/Themes-Icons-Pack.git ~/.dev/Themes-Icons-Pack | |
cd ~/.dev/Themes-Icons-Pack | |
# _icon_themes="surfn evopop flattr lacapitaine numix paper super-flat-remix ultra-flat" | |
_icon_themes="surfn evopop flattr lacapitaine numix paper super-flat-remix ultra-flat" | |
for _icon_theme in $_icon_themes; do | |
echo "" | ~/.dev/Themes-Icons-Pack/icons-${_icon_theme}*.sh | |
done | |
# enable maximize and minimize buttons | |
dbus-launch gsettings set org.gnome.desktop.wm.preferences button-layout "appmenu:minimize,maximize,close" | |
# titlebar - set mouse click behaviour | |
dbus-launch gsettings set org.gnome.desktop.wm.preferences action-middle-click-titlebar toggle-maximize-vertically | |
dbus-launch gsettings set org.gnome.desktop.wm.preferences action-right-click-titlebar minimize | |
# # theme settings - see what can be configured | |
# dbus-launch gsettings list-keys org.gnome.desktop.interface | |
# # check to see what themes we have | |
# dbus-launch gsettings get org.gnome.desktop.interface gtk-theme | |
# dbus-launch gsettings get org.gnome.desktop.interface icon-theme | |
# dbus-launch gsettings get org.gnome.desktop.interface cursor-theme | |
# set gnome gtk theme | |
# dbus-launch gsettings set org.gnome.desktop.interface gtk-theme "Arc-Flatabulous-Darker" | |
dbus-launch gsettings set org.gnome.desktop.interface gtk-theme "OSX-Arc-Darker" | |
# dbus-launch gsettings set org.gnome.desktop.interface gtk-theme "Flatabulous" | |
# dbus-launch gsettings set org.gnome.desktop.interface gtk-theme "Paper" | |
# set gnome icon theme | |
# dbus-launch gsettings set org.gnome.desktop.interface icon-theme "EvoPop" | |
dbus-launch gsettings set org.gnome.desktop.interface icon-theme "Surfn-Evopop" | |
# dbus-launch gsettings set org.gnome.desktop.interface icon-theme "la-captaine" | |
# problem: | |
# some qt programs fail to start, saying Gdk-Message: 12:35:09.486: qbittorrent: Fatal IO error 2 (No such file or directory) on X server :1. | |
# SOLUTION: install 'qt5ct' program, and '/etc/profile.d/qt5ct.sh' https://bbs.archlinux.org/viewtopic.php?id=235223 | |
# set gnome cursor theme | |
dbus-launch gsettings set org.gnome.desktop.interface cursor-theme "Adwaita" | |
# ====== | |
# alarm clock applet | |
sudo apt-get install -y alarm-clock-applet | |
# ====== | |
# make nemo the deault file manager | |
xdg-mime default nemo.desktop inode/directory application/x-gnome-saved-search | |
gsettings set org.gnome.desktop.background show-desktop-icons false | |
gsettings set org.nemo.desktop show-desktop-icons true | |
xdg-mime default nemo.desktop inode/directory application/x-gnome-saved-search | |
# ====== | |
# fix missing indicators in gnome3 | |
# https://askubuntu.com/a/1033801 | |
# this command will remove the unity indicators, and remove conflicts with the standard gnome 3 ones | |
sudo apt purge indicator-common | |
# # ====== | |
# # disabled - package fontconfig-infinality is no longer available | |
# # install better font rendering | |
# sudo add-apt-repository -y ppa:no1wantdthisname/ppa | |
# sudo apt-get update -y | |
# sudo apt-get install -y fontconfig-infinality < /dev/null | |
# # _font_render_sytle="UBUNTU" | |
# _font_render_sytle="OSX" | |
# # _font_render_sytle="IPAD" | |
# sudo -E sed -i -e "s/USE_STYLE=\"DEFAULT\"/USE_STYLE=\"${_font_render_sytle}\"/g" /etc/profile.d/infinality-settings.sh | |
# ============================================================== | |
# gnome shell extensions - disabled / removed | |
# for one of the following reasons | |
# not needed, broken, too much cpu usage, crashes gnome-shell | |
# we cannot get gnome indicators past 50% middle of the screen | |
# https://superuser.com/questions/479497/change-width-of-indicators-panel-in-gnome-3 | |
# # ====== | |
# # sublime text 3 gnome shell extension | |
# _ext="sdlugosz@nethead.pl" | |
# _url="https://github.com/kmf/gnome-shell-extension-sublime-text.git" | |
# _repo="$( basename -s.git "$_url")" | |
# git clone "$_url" ~/Desktop/${_repo} | |
# cd ~/Desktop/${_repo} | |
# cp -Rf "$_ext" ~/.local/share/gnome-shell/extensions | |
# cd | |
# rm -rf ~/Desktop/${_repo} | |
# gnome-shell-extension-cl -e ${_ext} | |
# # ====== | |
# # dynamic panel transparency | |
# _ext="dynamic-panel-transparency@rockon999.github.io" | |
# _url="https://github.com/rockon999/dynamic-panel-transparency.git" | |
# _repo="$( basename -s.git "$_url")" | |
# git clone "$_url" ~/Desktop/${_repo} | |
# cd ~/Desktop/${_repo} | |
# cp -Rf "$_ext" ~/.local/share/gnome-shell/extensions | |
# cd | |
# rm -rf ~/Desktop/${_repo} | |
# gnome-shell-extension-cl -e ${_ext} | |
# # ====== | |
# # brightness control xrandr | |
# !!! hangs gnome-shell process, with 100% cpu usage | |
# !!! check bug reports for fix | |
# _ext="BrightnessXrandr@jabi.irontec.com" | |
# _url="https://github.com/jabiinfante/gnome-shell-extension-brightnessxrandr.git" | |
# _repo="$( basename -s.git "$_url")" | |
# git clone "$_url" ~/".local/share/gnome-shell/extensions/${_ext}" | |
# # gnome-shell-extension-cl -e ${_ext} | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment