I took a little less time this install, but it still takes me some time going through these notes and getting it right. This is what I’ve done to get my computer setup this time on Impish Indri Ubuntu 21.10.
Restoring Files
I’ve been keeping a list of the files that I restore so I don’t forget anything. I like formatting the drive and starting from scratch, but I have to be careful what I copy back, otherwise it defeats the purpose. Maybe this list will help you think through what you need to backup and restore on your system:
- ~/.ssh: remote connection security keys
- ~/.cert: VPN certificates
- ~/app: where I keep my application development files
- ~/Documents: personal documents an such
- ~/DigitalEagleServices: documents specific to work
- ~/Insync: OneDrive files … cuts down on requiring it to re-download everything for work
- ~/.config/google-chrome: browser files, my biggest thing is data saved in the “local storage”; I probably need to rebuild the profile at some point
- ~/.remmina: remote desktop connections
- ~/.sword: Bible texts and such for Xiphos
- ~/.vim: my custom configurations for the Vi editor
- ~/.vimrc: the actual configuration file for the Vi editor
- ~/.local/share/fonts: special fonts that don’t come delivered with Ubuntu
- /etc/NetworkManager/system-connections: restores my wireless and VPN connections
- .local/share/applications: didn’t copy the whole directory, but picked out some of the application shortcuts to restore
- ~/bin: didn’t copy the whole directory, but picked out some of the application shortcuts to restore
- ~/Zotero: data from the Zotero application, could also be in ~/snap/zotero-snap/common/Zotero
- ~/.config/obs-studio: scene configuration for OBS Studio
- ~/.config/Postman: saved web calls for Postman app
Sometimes when copying from backups on different file systems, the permissions get out of whack. These commands fix the SSH files:
chmod 600 ~/.ssh/*
chmod 644 ~/.ssh/authorized_keys2
chmod 644 ~/.ssh/known_hosts
chmod 644 ~/.ssh/config
chmod 644 ~/.ssh/*.pub
Network Manager connection files are the other files that need special permissions. Restoring them through the Downloads folder makes that easier:
cd ~/Downloads/system-connections/
chmod 600 *
sudo chown root:root *
sudo cp * /etc/NetworkManager/system-connections/
sudo service NetworkManager restart
Screenshots
I have bounced between Shutter and Flameshot, but I have landed on Flameshot most recently. It’s an easy install from the store:
sudo apt install flameshot
Since I use it so much, I want it to take the screenshot off of the “print screen button”. I found these commands will set that up:
gsettings set org.gnome.settings-daemon.plugins.media-keys screenshot '[]'
gsettings set org.gnome.settings-daemon.plugins.media-keys custom-keybindings "['/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/']"
gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/ name 'flameshot'
gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/ command '/usr/bin/flameshot gui'
gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/ binding 'Print'
To make sure Flameshot started with the computer, I opened “Configuration” from the applet menu and under general, I checked “Launch at startup”.
Shortcuts
There are several apps that I had to install manually. To get them into the menu where I can launch them easily, I use MenuLibre. It’s an easy install…
sudo apt install menulibre
Password Management
I have switch from the regular KeePass client to AuthPass. It doesn’t install as easy, but I kind of like the Flutter interface.
I tried to add the repository:
sudo add-apt-repository ppa:codeux.design/authpass
Unfortunately, they haven’t kept up to date and added the impish version yet. So, that repository doesn’t work.
Err:6 http://ppa.launchpad.net/codeux.design/authpass/ubuntu impish InRelease
Connection failed [IP: 91.189.95.85 80]
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
All packages are up to date.
W: Failed to fetch http://ppa.launchpad.net/codeux.design/authpass/ubuntu/dists/impish/InRelease Connection failed [IP: 91.189.95.85 80]
W: Failed to fetch http://dl.google.com/linux/chrome/deb/dists/stable/InRelease Connection failed [IP: 142.250.72.78 80]
W: Some index files failed to download. They have been ignored, or old ones used instead.
(I opened a ticket to see if they would update it for me.)
I did end out finding a way to download the Deb file from the website of the repository. It installed Version: 1.7.9+1605.
Then, I uninstalled it and found it in the snapstore:
sudo snap install authpass
It seems to have installed Version: 1.9.2+1834, but it won’t work. Here’s the error message:
Couldn't open libEGL.so.1: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /var/lib/snapd/lib/gl/libEGL.so.1)
So, I just downloaded the tar from the releases page. I installed it with:
sudo apt install libkeybinder-3.0-0
tar -xzvf authpass-linux-1.9.4_1872.tar.gz -C ~/bin
Don’t forget to use MenuLibre to create a shortcut so you can easily launch it.
Work Software
Remote Desktop and Remmina used to be my main tool, but now VMWare Horizon has taken over. The Linux version is on the offical website and installed with these commands:
cd ~/Downloads/
sudo chmod +x VMware-Horizon-Client-2106.1-8.3.1-18435609.x64.bundle
sudo apt install python
sudo ./VMware-Horizon-Client-2106.1-8.3.1-18435609.x64.bundle
The install program is just a command-line installer where I accepted all the defaults.
I also need Teams, which I just downloaded from the official website. After choose the desktop client, there was a deb package.
sudo apt install ~/Downloads/teams_1.4.00.26453_amd64.deb
I’m not sure whether to put Postman in the work section or programming section. Postman allows me to test REST web calls. For now, I need it for work, so it is going here. I downloaded the Tar ball from here. I installed it:
cd ~/Downloads
tar -xzvf Postman-linux-x86_64-8.12.4.tar.gz -C ~/bin
Don’t forget to use MenuLibre to add a shortcut to Postman.
DisplayLink
DisplayLink has been somewhat of a necessary evil. I have to have it to work with my docking station. I can’t prove it, but I think this is what caused all my issues on my previous version.
I downloaded the latest driver from the website. I installed it with:
cd Downloads
unzip DisplayLink\ USB\ Graphics\ Software\ for\ Ubuntu5.4.1-EXE.zip
chmod +x displaylink-driver-5.4.1-55.174.run
sudo ./displaylink-driver-5.4.1-55.174.run
Cloud Drives
I downloaded Dropbox from their website. Then, I installed the dependency python and the downloaded package:
sudo apt install python3-gpg
sudo apt install ~/Downloads/dropbox_2020.03.04_amd64.deb
I did go through the little wizard that downloads the proprietary part and authenticates you.
For OneDrive, I install InSync. I just downloaded the Desktop client for Ubuntu 21.04 (because 21.10 wasn’t there) from the Downloads page.
sudo apt install ~/Downloads/insync_3.5.4.50130-focal_amd64.deb
Again the wizard pops up to walk you through starting it. For some reason, on the first start, it gave me an “insync crashed with signal 5 in g_settings_get_enum()” error. I found the following line in ~/.config/Insync/out.txt:
Failed to load module: /usr/lib/x86_64-linux-gnu/gio/modules/libgiognutls.so
Installed: libgnutls28-dev libgnutlsxx28 (but, it didn’t help) The answer appeared to be launching with the QT variable set to Wayland.
QT_QPA_PLATFORM=wayland insync start --no-daemon
I have yet to figure out how to make this permanent so I don’t have to run it from the command line. Actually, I think I ended up on X11 anyway, so I didn’t need to make it permanent.
VPNs
Just to be ready, I just go ahead and install all of the VPN clients:
sudo apt install vpnc \
network-manager-vpnc \
network-manager-openconnect \
network-manager-openconnect-gnome \
openconnect \
network-manager-iodine \
network-manager-openvpn \
network-manager-strongswan \
network-manager-openvpn-gnome \
network-manager-iodine-gnome \
network-manager-vpnc-gnome
Note that the actual VPN settings are restored in the /etc/network-manager directory that I restore. Some of them do have certificates in the .cert directory that I have to restore.
Productivity
In an effort to keep LibreOffice more up to date, I installed their repository. Thankfully, they are on the ball and have the Impish working.
sudo add-apt-repository ppa:libreoffice/ppa
Xiphos has been my go to for my Bible software. I just installed from the repository. Everything was restored from the .sword directory, but I went into the module manager and checked for updates to the content.
sudo apt install xiphos
I’ve been using Zotero to track research to some extent. This seems to be the best way to install where it updates the easiest:
wget -qO- https://github.com/retorquere/zotero-deb/releases/download/apt-get/install.sh | sudo bash
sudo apt update
sudo apt install zotero
I’ve been using Joplin for my notes. I installed from the snap.
snap install joplin-desktop
After installing, I had to go to Tools > Options > Synchronization to setup the storage for the notes.
Printing
The automatic printer discovery bothers me. I end up collecting printers from other networks. So, I disabled it.
sudo systemctl stop cups-browsed
sudo systemctl disable cups-browsed
I installed the driver for my Dell E525W manually because I’ve had a few issues with it in the past. I downloaded the official driver from Dell’s website. The release date is May of 2015, so I guess I don’t have trouble keeping it current. I installed it with:
cd ~/Downloads/
unzip Printer_E525w_Driver_Dell_A00_Linux.zip
sudo apt install ./dell-color-mfp-e525w_1.0-28_all.deb
I used the web interface to add the printer (http://localhost:631). I used the PPD file at /usr/share/cups/model/Dell/Dell_Color_MFP_E525w.ppd.gz
Application Packages
I installed AppImages with these commands:
cd ~/Downloads/
wget "https://github.com/AppImage/appimaged/releases/download/continuous/appimaged-x86_64.AppImage"
chmod a+x appimaged-x86_64.AppImage
./appimaged-x86_64.AppImage --install
Also, I installed Flatpak with:
sudo apt install flatpak
Miscellaneous Utilities
Here are a couple of utilities that are just quick installs.
sudo apt install p7zip-full p7zip-rar \
synaptic \
gnome-tweaks
- 7Zip: a compression format that is supposed to be better than zip
- Synaptic: a visual tool for managing deb packages
- Gnome Tweak Tool: access to additional gnome settings (Note: the package name change on this one)
Balena Etcher is one more utility that is delivered as a Flatpak. I put that into my ~/bin folder. It makes it easy to copy install images to USB drives. You can download it from here.
unzip ~/Downloads/balena-etcher-electron-1.5.122-linux-x64.zip -d ~/bin
OS Settings
Here are the settings I like to change:
In the regular settings app, I made these changes:
- Date & Time > Time Format: changed to “AM/PM”
- Power > Suspend & Power Button > Show Battery Percentage (at the bottom): checked to show the percentage
- Users > click on the picture: added a picture to my avatar
In the Tweaks app (Gnome Tweak Tool), I made the following setting changes:
- Top Bar > Clock > Weekday: Put the day of the week on the clock
- Windows > Attach Modal Dialogs: unchecked because that drives me nuts not being able to move a modal out of the way to see what’s underneath
Extensions
There is a new Extensions app, but it doesn’t allow you to search for and add extensions. Instead, you need this program installed:
sudo apt install chrome-gnome-shell
And you need this extension in Chrome.
Here are my favorite:
- Keep Awake: stops the computer from auto locking (it isn’t quite compatible yet — so, I’ve switch to Caffeine)
- Caffeine: stops the computer from auto locking
- Bing Wallpaper: gives me a new cool background everyday
- Clipboard Indicator: clipboard manager which let’s me go back to something I copied earlier
- GSConnect: integration to my Android phone
- Notification Alert: flashes clock to make sure I don’t miss notifications (it isn’t quite compatible yet)
- Sound and Input Device Chooser: allows selecting the sound devices from the top right menu
- Compiz alike Windows Affect: gives the windows a cool effect when you drag them
Media Programs
For visual media, here are the programs:
sudo apt install inkscape \
xournal
sudo snap install gimp
- Inkscape: vector-based drawing program
- xournal: I use it to annotate PDFs, sign them or fill out forms
- gimp: last time it was automatically installed; this time I had to install it manually
For audio, I use these programs:
sudo apt install audacity \
soundconverter \
musescore3 \
easytag
- audacity: the Gimp of the sound world
- soundconverter: easily convert between different types of audio formats
- musescore3: great for music notation
- easytag: allows editing the metadata on the music files
For our soundboard at church, I downloaded the M32 Edit Linux from the Midas website. I installed it with:
mkdir ~/bin/m32
tar -xzvf ~/Downloads/M32-Edit_LINUX_4.3.tar.gz -C ~/bin/m32/
For video, here are the programs:
sudo apt install mplayer \
vlc \
kdenlive \
youtube-dl \
obs-studio
- mplayer: a good command-line video player
- vlc: a great UI video player
- kdenlive: the Gimp of Video editing
- blender: a video editor, 3d design, etc.
- youtube-dl: allows downloading Youtube videos from the command line
- obs-studio: allows me to record my desktop or use my virtual camera
I found I had to install Blender from snap
sudo snap install blender --classic
To make sure the codecs are working, I installed:
sudo apt install \
libdvdnav4 \
libdvd-pkg \
gstreamer1.0-plugins-bad \
gstreamer1.0-plugins-ugly \
ubuntu-restricted-extras
sudo dpkg-reconfigure libdvd-pkg
I installed OBS Studio like this:
sudo apt install ffmpeg
sudo add-apt-repository ppa:obsproject/obs-studio
sudo apt install obs-studio
I also installed the virtual camera loopback driver. That way I can use OBS as a camera in Teams or other apps.
sudo apt install -y v4l2loopback-dkms
For KdenLive, I downloaded the App Image from the website. I just made that executable and put it in the ~/bin directory.
3d Printing
I installed openscad for designing things to print.
snap install openscad
Then, I installed Cura 4.12.1. That I had to download from the website. I just moved the AppImage to the ~/bin directory. On first run, I had to sign in. Then, I also had to select my Monoprice Select Mini V2 for my printer.