The basic steps I often do every time I install a new Ubuntu system. The order of things is important.

👉 Linux note.

  1. Download Ubuntu ISO. If you like a MacOS-like version, you can choose Elementary OS.
  2. Using Rufus to create a bootable USB drives.
  3. Download and install Google Chrome.
  4. Make emojis showing up
    sudo apt install fonts-noto-color-emoji
    

    After that (make browser regonize more icons), create a new file

     ~/.config/fontconfig/conf.d/01-emoji.conf
    

    with this content.

  5. Install Guake Terminal (drop-down terminal supporting tabs). We install it first because we working mainly on terminal.
  6. Install Terminator (can split, in appstore)
  7. Update & Upgrade
    sudo apt update & sudo apt upgrade
    
  8. Change user avatar.
  9. Auto install drivers
    sudo ubuntu-drivers autoinstall
    

    In case you wanna switch between Intel (more power efficient) and NVDIA driver (more powerful)

    sudo prime-select intel
    sudo prime-select nvidia
    
  10. Check the NVDIA driver and install the newest version: check in Additional Drivers. In case you wanna remove it and reinstall it later, use
    sudo apt purge nvidia-*
    
  11. Install video codecs,
    sudo apt install ubuntu-restricted-extras
    
  12. Log in to online accounts: Google, Ubuntu One, StackOverflow, Notion, Trello, Facebook,…
  13. Download and install an email client, I use Mailspring. Log in to email accounts and let Mailspring downloads the necessary things.
  14. Install GoldenDict (app store) and dictionaries.
  15. Python is installed on Ubuntu system with 2 versions. By default, python prefers version 2, if you wanna use python 3, you can use python3 or add an alias
    alias python='python3' # and call python 2 as `python2`
    

    Install PIP

    pip sudo apt install python3-pip
    alias pip=pip3
    
  16. Visual Studio Code and its basic extensions: Bracket Pair Colorizer, Docker, Linux Themes for VS Code, Markdown All in One, Markdown Shortcuts, Remote Development, Python, Auto Close Tags

    Also add below settings to setting json file (Ctrl + Shift + P and search “Preferences: Open Settings (JSON)”, it’s in ~/.config/Code/User)

  17. Install GIT
    sudo apt install git-all
    
  18. Install Git Client as Gitkraken. Log in with Github account and clone all working repositories.
  19. Slack and sign in.
  20. Install GNOME Shell extensions
    sudo apt install gnome-shell-extensions
    

    Install also chrome extension. Go to the corresponding extension link and turn it on and install it. List of useful extensions: Start Overlay in Application View, ESC to close overview from applications list, Caffein, Dash to Panel (use this setting file), Alt-Tab Switcher Popup Delay Removal, Sound Input & Output Device Chooser, gtile, icon-hider (on gnome taskbar), Emoji selector.

  21. Turn off Gnome Shell Activities Animations (click on window taskbar to toggle max/min),
    gsettings set org.gnome.desktop.interface enable-animations true # enable
    gsettings set org.gnome.desktop.interface enable-animations false # disable
    
  22. Microsoft Teams.
  23. IBUS Bamboo, Vietnamese Input Method. Need to restart Ibus and choose Bamboo in the keyboard layout. You can use also Shift + ~ for changing the options (remove the underline, for example). Use Super + Space to change between input methods.
  24. Make things in GNOME Tweak tool. Using this setting file.

     # save settings
     dconf dump /home/thi/ > dconf-settings.ini
    
     # load settings
     dconf load /home/thi/ < dconf-settings.ini
    
  25. Google Drive client for Ubuntu: OverGrive (5$ for each account). An alternative to Vgrive.
  26. LaTeX
    sudo apt-get install texlive-full # 5GB
    sudo apt-get install texmaker
    
  27. If you install Matlab, you can install matlab-support to add matlab icon to applications. Note that, if matlab exe file is at /usr/local/MATLAB/R2017b/bin/matlab, we add the location of folder as /usr/local/MATLAB/R2017b/.
  28. Use super + E to open File Manager: change in Keyboard shortcut.
  29. Default text editor gedit, you can use this command in terminal.
  30. Gnome Calendar in app store.
  31. Screen Recorder, use Kazam (app store). If cannot recognize mic and speaker, read this solution. An alternative is SimpleScreenRecorder.
  32. VLC (app store).
  33. Read SD card
    sudo apt-get install exfat-utils exfat-fuse
    
  34. Other applicatons: Skype, Extreme Download Manager, AO (MS to do for Ubuntu), Shotwell (image viewer + quick editor, install on Store), KolourPaint (photo editor supports cut and move a selection like Paint on Windows, install from AppStore), Cheese (camera app), Drawing, Stacer (optimizer system like Advanced System Care).
  35. If you wanna create some app shortcut in launcher (/home/thi/.local/share/applications/notion.desktop)
    #!/usr/bin/env xdg-open
    [Desktop Entry]
    Version=1.0
    Type=Application
    Terminal=false
    Exec=/home/thi/apps/notion/notion
    Name=Notion
    Comment=Notion
    Icon=/home/thi/apps/notion/resources/app/icon.png
    
  36. If you wanna make nautilus default again:
    xdg-mime default nautilus.desktop inode/directory application/x-gnome-saved-search
    gsettings set org.gnome.desktop.background show-desktop-icons true
    
  37. If you wanna make some web app a desktop app, use nativefier.
  38. Bluetooth problem on Dell XPS 15 only: cannot turn on bluetooth ⇒ Try turn off and turn on again the bluetooth in BIOS setting.
  39. Useful shortcuts:
    • Capture fullscreen: Ctrl+Alt+Print (photos will be saved in Pictures)
  40. Connect Airpod to Ubuntu 20.04:

     # check bluetooth service is running
     hciconfig -a
    
     # open a file
     sudo nano /etc/bluetooth/main.conf
    
     # add
     ControllerMode = bredr
    
     # restart bluetooth service
     sudo /etc/init.d/bluetooth restart
    
     # disconnect other headphone device
     # press and hold backward button in the airpod case (flash light)
     # connect to airpod as other device via bluetooth
    
  41. Location of .desktop files,

     /home/thi/.local/share/applications/
     /usr/share/applications/
     /var/lib/snapd/desktop/applications/
     # or
     locate *.desktop # bash
     locate \*.desktop # zsh
    
  42. Xbox controller bluetooth connection: check this.
  43. Remove icon from dash application

     sudo add-apt-repository ppa:caldas-lopes/ppa
     sudo apt-get update
     sudo apt-get install ezame
    
  44. Restore dconf settings: copy to ~/.config/dconf/user.
  45. Backup before installing a new system.
    • settings in ~/.config/ or ~/.<software-name>
    • all apps in /home/thi/apps/ with their desktop files in /home/thi/.local/share/applications/