As the year was turning, I finally quit procrastinating and updated my laptop to Ubuntu 23:10. I hadn’t even finished my article about getting the laptop in the first place. Time to get on the ball! (And I procrastinated in getting it proofread and published, sorry.)
I’ve been trying to take notes as I install each version of Ubuntu. Then, when the next version comes out, it’s so much easier to do the install just following the notes from the last time! But, getting all the way to publishing has been more and more difficult.
Passwords
I’ve been using KeePass as my password manager for a while now. I switch over to AuthPass on my laptop because it uses Flutter to build the app. At some point, I’ll contribute back to it. It was an easy install from the App Center.
Then, I had to run this command from the terminal:
snap connect authpass:password-manager-service
Finally, I had to copy my password file over from my backup. Eventually, I get it syncing with a cloud service, but that usually comes after I have to enter the passwords to get it all connected up.
Screenshots
As I go, I need to document. Screenshots are usually help, so I need flameshot sooner than later. I just installed it from the command-line.
sudo apt install flameshot
I checked the option to make it start on boot. (I also removed Desktop notifications later)
I like for it to work off of the print screen rather than the traditional Gnome screenshot tool. There are some instructions in the Flameshot documentation. I chose to use my command line way because it would be less clicking.
gsettings set org.gnome.shell.keybindings show-screenshot-ui '[]'
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'
Restoring Files
You won’t have the same files to restore as I do, but I like to list mine out in case it’ll give you some ideas of what you need.
My list:
- ~/.ssh: the keys for all of my SSH connections
- ~/.cert: has the certificates for VPNs
- ~/app: my application development files
- ~/DigitalEagleServices: like a separate documents directory for my work files
- ~/Documents: all my regular document files
- /etc/NetworkManager/system-connections: all of my network connections (Wifi and VPN). The permissions have to be set to 600 and owned by root.
- browser profile(s) — these could be in multiple places
- ~/.config/google-chrome: for Google Chrome
- ~/.config/chromium: for regular Chromium
- ~/snap/chromium: for Chromium installed through a snap
- ~/.remmina: all of the remote connection profiles for the Remmina program
- ~/.sword: data files for the Xiphos Bible program
- ~/.vim && ~/.vimrc: config files for the Vi editor
- ~/.local/share/fonts: all my installed fonts
- ~/.local/share/applications: application shortcuts (I don’t restore all of these, I pick and choose certain shortcuts)
- ~/bin: this is where I put programs that don’t have/need an install
- ~/Zotero or ~/snap/zotero-snap/common/Zotero: Zotero data
- ~/.config/obs-studio: profiles, scenes, and config for OBS Studio
- ~/OBS Setup: support files for OBS Studio (I keep losing these, so I started putting all the background images, etc in this directory)
- ~/.config/Postman: setup for the Postman app
- ~/VirtualBox VMs: my virtual machines
- ~/.local/share/wineprefixes: my windows applications
Shortcuts
I use MenuLibre to add applications to the menu. You can hand write the .desktop files, but this is easier.
sudo apt install menulibre
As mentioned, I did selectively restore some of the application shortcuts in ~/.local/share/applications.
Browsers
This time, I decided to just make sure that I had all of the browsers available. I downloaded Chrome from Google’s website. I installed the deb package with the apt program. I installed Chromium from the App Center. Finally, I downloaded Edge from the Microsoft website.
DisplayLink Drivers
I downloaded the apt repository from the DisplayLink Website. I installed it and then the drivers with:
sudo apt install ~/Downloads/synaptics-repository-keyring.deb
sudo apt update
sudo apt install displaylink-driver
Note: It required a reboot afterward to make it work.
Work Software
I thought I was getting away from VMWare Horizon/View, but one of my next clients uses it. So, back on the laptop it goes. Honestly, I kind of like it as well as a regular remote desktop. I downloaded the package from the VMWare website. This time, there was a deb file option. I downloaded that and installed it with the App Center.
Teams is another tool required by clients. I’d love to get away from it because it doesn’t work as well on Linux. It’s great when it works, but switching between clients is my big sticking point now. Microsoft has dropped the official release for Linux. So, we are back to using an unofficial version. Thankfully, Ishmael’s project is in App Center.
Postman is the last app I use for some of my Work projects. It’s a bit of an overkill, but it does get the job done. I downloaded it from their website. It only comes as a tar ball, so I extracted it to the bin directory. Then, I either restored my .desktop file or used Menu Libre to create a new one.
Clouds
I use Google Drive, Microsoft One Drive, and Dropbox all for different things. So, I’ll install the necessary clients for syncing. I’m still deciding if I want to install the syncing for Dropbox at the moment. I’ll hold off on that and just setup InSync for the other two.
To install InSync, I went to the Downloads page, and installed with apt. After installing, I had to open the program and sign into my cloud account. Then, I selected the folders that I wanted synced.
Networking
I like just having all of the VPN packages in case a client uses one of those. So, I install all of the VPN packages:
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
Then , I added my extra lines to the /etc/hosts file.
Productivity
I like to keep LibreOffice more up to date. It’s currently up to date upon installation, but if a new version is installed, I want to get it sooner than later. So, I’ll install this repository.
sudo add-apt-repository ppa:libreoffice/ppa
sudo apt dist-upgrade
For my notes, I’ve been using Joplin. I installed the snap package.
snap install joplin-desktop
To finish the installation, I just clicked on the synchronize and connected my cloud storage.
Next up is Xiphos, the tool I use for Bible Study. I tried the repository, and it is out of date. So, that won’t work. I tried to go through the steps on my old post, but I couldn’t make that work due to libenchant not working.
Zotero is the last program in this section. I ran through these steps:
sudo apt install curl
curl -sL https://raw.githubusercontent.com/retorquere/zotero-deb/master/install.sh | sudo bash
sudo apt update
sudo apt install zotero
Application Packaging Systems
To make working with different applications, I installed both flatpak and AppImage. For AppImage, I ran the following commands to download and install it.
cd ~/Downloads/
sudo apt install libfuse2
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
Flatpak was just a simple package installation:
sudo apt install flatpak
Miscellaneous Settings and Utilities
Now for all the settings and little tools that don’t really belong anywhere else. I probably don’t use them all that much, but I do expect them to just be there when I need them. A couple of installs first:
sudo apt install p7zip-full p7zip-rar \
synaptic \
gnome-tweaks
BalenaEtcher is nice for putting iso files on thumb drives and such. I downloaded it from the website and put the AppImage in my bin directory.
On the settings, I made the following changes:
- Date & Time: changed the format to am/pm
- Users: Added my Avatar
- Users: Added my fingerprint
- Power: checked “Show Battery Percentage”
Using the Tweaks tool (Gnome-Tweaks), I set the following settings:
- Top Bar: checked the Weekday option
- Windows: Unchecked attach modal dialogs
There are several extensions that I like. I found the new Extensions program, but it didn’t seem like you could easily install new extensions that way. So, I installed the app for Chrome (already had the Chrome extension installed).
sudo apt install chrome-gnome-shell
These are the extensions I installed:
- Keep Awake: When I’m at home by myself, I don’t want it locking on me
- Bing Wallpaper: switches my wallpaper background daily
- Clipboard Indicator: keeps a clipboard history and allows me to go back to multiple clipboard items
- Notification Alert: helps make sure I see notifications
- Sound and Input Device Chooser: I really liked this, and it isn’t compatible! I’ll have to see what to do next.
- Compiz windows effect: adds a bit of bling with wobbly windows
- Burn My Windows: adds more bling with window transitions
Media Programs
I like a few extra programs for working with different forms of media. To start, Gimp is great for working with photos. Last time, I commented that I would look into using the Flatpak. Well, now the official repositories are more up to date. Xournal allows me to annotate and sign PDFs. This time, I thought I would try Xournal++. The original Xournal was last updated in 2017 whereas Xournal++ shows commits to the GitHub repository last week.
sudo apt install xournalpp \
gimp gimp-data-extras gimp-plugin-registry
I like Inkscape for doing drawings. At church, I’ve been making a monthly kids activity page, and Inkscape is great for that. The version in Ubuntu is 1.2.2, but the flatpak from Inkscape’s website is 1.3.2. So, I downloaded that from Inkscape’s download page. I just confirmed the file was executable and moved it to the bin directory.
That takes care of Visual media. Now, for sound. I installed these programs:
- Audacity: The gimp of the sound editing world
- Soundconverter: tool for converting sound formats
- Muse Score: Sheet music editor
- Easy Tag: changes the meta data on the sound files
sudo apt install audacity \
soundconverter \
musescore3 \
easytag
Now for video, here are the basics:
- vlc: Great video player
- kdenlive: the Gimp of the video editing world
- yt-dlp: tool for downloading YouTube videos
sudo apt install mplayer \
vlc \
kdenlive \
yt-dlp
OBS Studio runs my YouTube and my webcam. I installed that with:
sudo apt install ffmpeg
sudo add-apt-repository ppa:obsproject/obs-studio
sudo apt install obs-studio
I installed the loopback device to make it possible to use the OBS Output as a camera device in teams.
sudo apt install -y v4l2loopback-dkms
I’ve been using a green screen, but I just ran into this background removal tool that I’d like to try. I downloaded the deb file from the releases page.
For 3D stuff, I’ve been getting more and more into Blender. I installed it from the snap.
sudo snap install blender --classic
I installed KdenLive with the AppImage from their website.
Finally, I installed all of the codecs:
sudo apt install \
libdvdnav4 \
libdvd-pkg \
gstreamer1.0-plugins-bad \
gstreamer1.0-plugins-ugly \
ubuntu-restricted-extras
sudo dpkg-reconfigure libdvd-pkg
3D Printing
I design stuff with OpenScad. That installs from a snap:
snap install openscad
Then, I need Cura to slice the models before sending to the printer. I installed Cura from the AppImage, downloading it and placing it in the bin directory. The first launch took a little while to start up, and then, I had to login and select my printer (Monoprice Select Mini V2)
Miscellaneous Programming Tools
Here are a few tools that I generally use with programming and tech projects.
- vim-gtk3 (gVim): a GUI version of the Vi editor (note, my config pushes all of the editing files to the .vimtmp directory, which needs to be created)
- git: a source code management tool
- meld: a great tool for comparing files and directories
sudo apt install \
vim-gtk3 \
git \
meld
mkdir ~/.vimtmp
Note: this time I dropped off Git Cola because I just don’t catch myself using it that much. I usually use Git through Android Studio nowadays. GitKraken did catch my eye though. I’m leaving myself a note here to check it out at some point.
Git does require your name and email to be configured. But, if you forget, Android Studio will prompt you and give you a nice GUI to fill it in.
git config --global user.name "my name"
git config --global user.email my.email@email.com
Flutter
Flutter is my hobby now. I have a few tools that I have built. Here’s what I did to install it.
sudo apt-get install clang cmake ninja-build pkg-config libgtk-3-dev
Flutter itself, I installed from the snap.
sudo snap install flutter --classic
flutter doctor
Flutter doctor not only checks the installation, but it downloads an important part. Next, is Android Studio. You can use Visual Studio Code, but I like Android Studio better. I downloaded it from the website. I extracted the android-studio directory to my bin directory.
I had to use the settings to download the command line tools manually. From File > Settings, I went to Languages & Frameworks > Android SDK. I selected Android SDK Command-line Tools on the SDK Tools tab.
After that, I could do the licenses with this command:
flutter doctor --android-licenses
Finally, I installed the Flutter plugin:
Virtualbox
I use virtual machines for multiple things. They can run PeopleSoft and if I have to have Windows for something, I can have a virtual machine come to the rescue. I downloaded Virtualbox from their website. I just used the 22.04 version. Then, I also downloaded the extension pack from the main Download page.
I install the Deb package first. Then, double clicking on the Extension pack installs it. Before I forget, I went to File > Tools > Network Manager and added a NAT Network. I always forget and then my machines won’t boot, so I’ve added that to the steps. Finally, double clicking on each VM .vbox file imports them.
Wine
I’ve learned that I can run some Windows programs with Wine. It doesn’t always work, but I’ve gotten it to work well enough for PeopleSoft. So, I restored the wine prefixes and then installed Wine with:
sudo apt install wine