Post-Install Configuration (Ubuntu Unity)
NOTE: I am no longer updating this article. If you have any corrections or things to add/remove, feel free to contact me - I'll be more than happy to include them.
2020-09-28: Thanks to Adolfo for the contribution
Below is a collection of commands and snippets I have put together over the years. Pick out the parts you find useful, and create your own one-click system configuration shell script.
A Few GUI Shortcuts...
While you're tweaking things in the Terminal, you might want to do some configuration through the graphical user interface.
# Software settings
software-properties-gtk
# Change keyboard layouts
unity-control-center region
# Audio settings
unity-control-center sound
# Set the locales
gnome-language-selector
Repositories
This will enable some extra repositories
# This will add the Indicator Stickynotes repo
sudo add-apt-repository ppa:umang/indicator-stickynotes
# This will add the My Weather Indicator repo
sudo add-apt-repository ppa:atareao/atareao
# This will add the Nemo repo
sudo add-apt-repository ppa:webupd8team/nemo
# This will add the repo for Monkey's Audio, Nero AAC, tsMuxeR, Odio, Unity Mail and some others
sudo add-apt-repository ppa:robert-tari/main
Update the Package List
You must do this if you have made changes to your repository lists.
sudo apt-get -q update
Update the Whole System
This will pull all available updates, so be patient.
sudo apt-get dist-upgrade
Install Additional Software
This is what I usually add to a system, change the list to suit your needs.
sudo apt-get install -y trash-cli indicator-stickynotes my-weather-indicator ffmpeg gnome-gmail synaptic indicator-remindor gnome-search-tool p7zip-full cryptsetup inkscape unattended-upgrades unity-mail samba gimp ubuntu-restricted-extras smplayer chromium-browser gdebi default-jre glipper clementine cifs-utils nemo nemo-fileroller odio tsmuxer mediainfo ogmtools mkvtoolnix-gui
Remove Unwanted Software
Get rid of the global application menu
sudo apt-get purge -y appmenu-qt indicator-appmenu
Set Up Automatic Updates
This will always download and install everything in the background.
echo -e 'APT::Periodic::Enable "1";\nAPT::Periodic::Update-Package-Lists "1";\nAPT::Periodic::Download-Upgradeable-Packages "1";\nAPT::Periodic::Unattended-Upgrade "1";\nAPT::Periodic::AutocleanInterval "5";\nAPT::Periodic::RandomSleep "1";' | sudo tee /etc/apt/apt.conf.d/10periodic > /dev/null && cd /etc/apt/sources.list.d && PPAs="" && for PPA in *-ubuntu-*-`lsb_release -cs`.list; do if grep -q "deb http://ppa.launchpad.net/" "$PPA"; then PPA="${PPA/-ubuntu-/-}"; PPAs="$PPAs\n\t\"LP-PPA-${PPA/-`lsb_release -cs`\.list/:\${distro_codename}}\";"; fi; done && sed -e "s@Unattended-Upgrade::Allowed-Origins {@Unattended-Upgrade::Allowed-Origins {$PPAs@" -e 's@//.*"\${distro_id}:\${distro_codename}-updates@\t"\${distro_id}:\${distro_codename}-updates@' -e 's@//.*"\${distro_id}:\${distro_codename}-backports@\t"\${distro_id}:\${distro_codename}-backports@' /etc/apt/apt.conf.d/50unattended-upgrades > /tmp/50unattended-upgrades && sudo mv /tmp/50unattended-upgrades /etc/apt/apt.conf.d/50unattended-upgrades
Favourites Menu
This recreates the favourites list shown in Nemo and File Dialogs. Below is just an example, change it to your liking.
echo "file://$(xdg-user-dir DOCUMENTS) $(xdg-user-dir DOCUMENTS | cut -d "/" -f 4)" | tee "$HOME/.gtk-bookmarks"
echo "file://$(xdg-user-dir DOWNLOAD) $(xdg-user-dir DOWNLOAD | cut -d "/" -f 4)" | tee -a "$HOME/.gtk-bookmarks"
echo "file://$(xdg-user-dir MUSIC) $(xdg-user-dir MUSIC | cut -d "/" -f 4)" | tee -a "$HOME/.gtk-bookmarks"
echo "file://$(xdg-user-dir PICTURES) $(xdg-user-dir PICTURES | cut -d "/" -f 4)" | tee -a "$HOME/.gtk-bookmarks"
echo "file://$(xdg-user-dir VIDEOS) $(xdg-user-dir VIDEOS | cut -d "/" -f 4)" | tee -a "$HOME/.gtk-bookmarks"
echo "file://$HOME/FOLDER1 FOLDER1" | tee -a "$HOME/.gtk-bookmarks"
echo "file://$HOME/FOLDER2 FOLDER2" | tee -a "$HOME/.gtk-bookmarks"
echo "file:///FOLDER3 FOLDER3" | tee -a "$HOME/.gtk-bookmarks"
Startup Applications
Here's Empathy set for a silent auto-start.
echo -e "[Desktop Entry]\nType=Application\nExec=empathy -h\nHidden=false\nNoDisplay=false\nX-GNOME-Autostart-enabled=true\nName=empathy" > /home/$USER/.config/autostart/empathy.desktop
Configure Unity
Here are some settings for the UI. Change them to whatever you see fit.
# Let Nemo handle the Desktop
gsettings set org.gnome.desktop.background show-desktop-icons false
# Set Nemo as the default file manager
xdg-mime default nemo.desktop inode/directory application/x-gnome-saved-search
# Set the visibility of some icons on your Desktop
gsettings set org.nemo.desktop computer-icon-visible false
gsettings set org.nemo.desktop home-icon-visible false
gsettings set org.nemo.desktop trash-icon-visible false
gsettings set org.nemo.desktop volumes-visible false
# Disallow autorun on media insertion
gsettings set org.gnome.desktop.media-handling autorun-never true
# Do not lock the screen
gsettings set org.gnome.desktop.screensaver lock-enabled false
# Show icons in context menus
gsettings set org.gnome.desktop.interface menus-have-icons true
# Set toolbars to display icons with text below
gsettings set org.gnome.desktop.interface toolbar-style both
# Show icons on buttons
gsettings set org.gnome.desktop.interface buttons-have-icons true
# Set the order and position of window controls
gsettings set org.gnome.desktop.wm.preferences button-layout "close,minimize,maximize:menu"
# Turn off monitors after specified number of seconds
gsettings set org.gnome.desktop.session idle-delay 3600
# Set the wallpaper
gsettings set org.gnome.desktop.background picture-uri "file:///SOME/PATH/IMAGE.JPG"
# Tell gedit not to make backup copies
gsettings set org.gnome.gedit.preferences.editor create-backup-copy false
# Tell gedit to display line numbers
gsettings set org.gnome.gedit.preferences.editor display-line-numbers true
# Show date in clock indicator
gsettings set com.canonical.indicator.datetime show-date true
# Show day name in clock indicator
gsettings set com.canonical.indicator.datetime show-day true
# Set the clock indicator format to 24 hours
gsettings set com.canonical.indicator.datetime time-format "24-hour"
# Always show normal window buttons/menus
gsettings set com.canonical.Unity integrated-menus true
# Disable network search results in Dash
gsettings set com.canonical.Unity.Lenses remote-content-search "none"
# Get the normal scrollbars back
gsettings set com.canonical.desktop.interface scrollbar-mode normal
# Allow the active window to minimise when clicked in the launcher
gsettings set org.compiz.unityshell:/org/compiz/profiles/unity/plugins/unityshell/ launcher-minimize-window true