The Open-Source Survival Toolkit
Are you ready to get geared up with Open-Source software? Become private, secure, and effective.
This is a special article, because it marks the first time we step outside of the bounds of our operating systems and get into the software we'll use on a day to day basis. If you haven't installed a Linux based operating system or don't know why you should, check out the 9 articles we've done on the subject.
Watch the video
Also see: The Open-Source Survival Library
While this article in particular was more focused on each application's history and usage, we've also put together a categorized list of applications available on Linux for your use.
Keeping F/OSS Alive
Many of the applications we'll discuss today are 'free & open source'. This means that their code is licensed so that it may be modified and redistributed (and these modified versions must also carry the same license).
FOSS developers respect their users & community, and avoid adding tracking, data collection, or other anti-features because if they do - it is likely that their code will be redistributed as another project which doesn't have those anti-features.
When Audacity increased the scope of its data collection policies this year, it only took a few days for other developers to fork (copy the project) and for the community to turn its back on Audacity.
We enjoy FOSS software as it gives freedom back to the user without expecting anything in return. However the developers rely on support (donations) from the community to keep the project going.
#TakeBackOurTech has supported several applications on this list with $20.00. Thank you for standing up for your users and the years of amazing work.
We will have an article for each one of these applications, that takes a deeper dive into its features and how you can use them to the fullest ability.
Password Management
Managing your passwords is where we'll start, because it preceeds the majority of the things we do on the internet. Benefits of password management:
- You'll never need to rely on your brain to remember passwords
- You'll have a different password for each account preventing credential stuffing (attackers using a compromised passwords on your other accounts)
- Your passwords can reach a high level of entropy (passphrases are better) protecting against password cracking techniques
- You'll never type in your passwords, instead using your password manager's built in integrations. Proper use should avoid having passwords appear in plain-text. This can protect you from keyloggers and over the shoulder attacks.
- You'll save time - the built in browser integrations make logging in a breeze.
KeepassXC (Donate)
KeepassXC is the gold standard for free & open source password management. Within an KeePassXC database file (.kdbx), you can store an unlimited amount of passwords & information.
When you create a KeepassXC database, you encrypt it with a password. The file is always stored encrypted, and you use the program to decrypt and access data. KeepassXC is not a cloud based software, the decrypted content of your file never leaves your computer.
However, you can manage your password file the way you would like, you can store it on a USB drive, on your computer, or even upload it to a cloud solution to access it anywhere (be careful when doing this.)
You can install KeepassXC through your application store, or by typing the following command on your Debian/Ubuntu system. (Remember to use sudo)
apt-get install keepassxc
Quick Tips
- Since the password you use to encrypt your file is the only thing needed to access the passwords in the vault, it is a good idea to protect the 'master' password as much as possible. Instead of writing it down digitally or even on paper, memorize a long sentence (at least 7 words). You can add punctuation or numbers as well. Keeping this password in your head minimizes your exposure. Make sure you have memorized, use your vault early and often in your first few hours.
- An attacker needs access to the file and the password in your head to 'own' your data. Make it difficult for them by keeping the password file in a safe place. You can store it on your computer if you feel secure with it, or you can store it on a USB under your physical protection.
- Use the passphrase generation tool to generate passwords with extreme entropy. Now that you have a password manager, you don't need to remember them. Anywhere from 5 -7 words is good, with a punctuated separator of your choice. Throw a number in somwhere for even more randomness.
- Always remember to fill in a KeepassXC entry when creating new accounts online. This will save you time & headaches - no joke. You can fill in the KeepassXC entry first (decide on your username / email / password) and then copy that information over into the registration form.
- Fill in the URL fields for your passwords, this will allow the KeepassXC browser integration to automatically detect the correct credentials for the webpage you're browsing. Again - saving you a huge amount of time.
We are really just scratching the surface here, we will do a deeper dive into KeepassXC in a future article, but this should get you up and running.
Install KeepassXC, create a new database, migrate your existing passwords (KeepassXC allows for imports), install the browser extension (remember to enable it in settings), connect it - and enjoy your easy & secure life.
Cloud Storage
One of the hardest problems that users have today is knowing who to trust with their data. What if there was a way to trust noone but yourself? This next cloud storage solution does that.
Syncthing
Licensed under the Free & Open Source Mozilla License, Syncthing synchronizes files between multiple devices on multiple computers or phones. It's cross platform and offers an Android application.
The data transfer happens peer to peer, from device to device. No centralized servers are involved. A folder is selected on the sending device, and this data is encrypted and sent to 'receiving' devices, which then decrypt it and store it in a mapped directory.
Device IDs must be shared and accepted on both sides to connect two devices.
Since Syncthing is simply syncing files, you can use it to manage most things. You could use it as a cloud solution for KeepassXC, having access to your password database on any device. Or you could use it to manage your notes database, as you'll see in following sections. You can even use it as a collaborative team solution to work on documents together.
You can install on Debian / Ubuntu based systems by following the instructions here.
Quick Tips
- If you're going to be creating a collaborative folder, then make sure you set the shared folder as a 'Send Only Folder' so that other members of your team cannot update or delete the existing files.
- Do not use SyncThing for backups, all your changes are propagated to other devices. We recommend you take manual backups regularly.
- Make sure to set Syncthing to run on startup so you are kept up to date.
Browsers
Modern browsers like Firefox and Chromium-based (Chrome, Edge, Brave) are designed to work with their respective browser services. These services may include authentication, automatic updates, application analytics, advertising APIs, and general telemetry. This results in additional information about your computer and browsing habits being sent back to Mozilla and Google. We'll recommend two browsers that modify their respective official browsers to maximize privacy.
These browsers do the following:
- Implement the latest official browser features as quickly as they can be implemented
- Prune binaries from the source code (machine code who's functionality cannot be verified)
- Substitute domains within the source code purposefully with broken URLs to cutoff requests to Firefox or Google.
- Re-enable features that improve privacy and transparency
Ungoogled Chromium
Built ontop of the Chromium engine (which the majority of popular browsers use), ungoogled-chromium removes dependencies on Google web services and enhances privacy, control, and transparency features.
You can either download and install the package directly or use Flatpak to install it!
This is not an in-depth article on Ungoogled Chromium but I will show you how to enable addons and some other quick tips.
Enabling Extensions With chromium-web-store
This extension allows you to install extensions directly from the Chrome Web Store.
- In your address bar, navigate to
chrome://extensions
and enable developer mode (toggle in top right). - Download the crx (Chrome Extension) from here and drag-and-drop onto the
chrome://extensions
page - In your Ungoogled Chromium address bar, navigate to
chrome://flags/#extension-mime-request-handling
- In the 'Handling of Extension MIME Type requests' flag, click the dropdown and select 'Always prompt for install'
Now you should be able to install extensions directly from the Chrome Web Store.
Quick Tips
- Third party cookies are blocked by default, an important privacy feature that won't be implemented in Chrome until 2023
- Install a script blocker extension like U-Block Origin or U-Matrix to block trackers
- Install the KeepassXC Extension (remember to enable the browser integration within the KeepassXC program)
- Update your search engine to a privacy respecting search engine
- You can optionally harden your browser further by using the ungoogled-chromium flags, which can be access in your browser here
- Block all cookies within settings and use the cookie whitelist to enable specific domains of trusted sites, or use an addon like Cookie Auto-Delete
Librewolf
LibreWolf is an independent build based off of the latest stable Firefox release. Similar to Ungoogled Chromium, LibreWolf breaks requests to Mozilla's servers and strips out unknown binaries.
LibreWolf is available for install as an AppImage, Flathub, or a debian package, which we cover in our Installing From Decentralized Sources article.
Quick Tips
- You can install addons from the official Firefox Add-Ons site
- Checkout the recommended addons
- Install a script blocker extension like U-Block Origin or U-Matrix to block trackers
- Install the KeepassXC Extension (remember to enable the browser integration within the KeepassXC program)
- Update your search engine to a privacy respecting search engine
Notes
Organization and notes is essential to being productive today. Our worlds require us to absorb information from a variety of different places, and our tools need to be able to organize multimedia content effectively. We have picked two awesome FOSS tools for you to pick from.
Joplin
Joplin is a free & open source note taking and to-do application. You write up notes in markdown format, and these are saved to notebooks which can be saved as local files or synced to cloud platforms. You can attach files to The app is available cross-platform and on both iOS and Android.
You can download Joplin's AppImage from its Github page, or you can install the Flatpak from Flathub.
Quick Tips
- Use the Joplin Web Clipper extension to save web pages in Joplin
- Make sure to tag your notes for better organization
- Organize your notebooks into sub-notebooks for hierarchial organization
- You can attach audio, documents, and video to Joplin notes - however don't attach files larger than 10MB as it might cause the mobile application to crash.
- There's additional Joplin plugins out there for you to extend its features!
- You can use search filters to run advanced searches
Communication
Evolution (Donate)
Evolution, part of the GNOME application suite - is my favorite office communication tool of choice. It brings together mail, contacts, calendars, tasks, and memos in a unified interface. You can setup IMAP and POP accounts, so there's no need to access your mail through your web browser. You can install Evolution from Flatpak or from its Debian package.
apt-get install evolution
Quick Tips
- You can enable your mail providers IMAP features (if they have one) and input that connection information when you create a new account
- You can setup GPG mail encryption for extra security (remember - email headers cannot be encrypted)
- If you connect a CalDAV account with the same email as a registered email account, you can automatically send Calendar invites to guests when a new event is created
- If you have a bunch of email & calendar accounts, you can backup and restore your data and settings
Kotatogram
You may have heard of Telegrma, the #1 downloaded Application in the world. Have you heard of Ketogram, which forks the official desktop client and uses the Telegram API to give you an alternative experience?
Available as an AppImage and Flatpak.
Quick Tips
- One big feature is the ability to multi-forward, unquoted forward (without linking to the previous group / channel / user)
- If you have a billion chats like I do, you may have needed more than the maximum 10 folders to organize your chats. Kotatogram lets you have unlimited local folders, however there is no cloud synchronization.
- Kotatogram also offers folder filters for Owned, Administrated groups! If you're managing a lot of groups, you can create a folder with all channels / groups, and filter excluded chats by those 'Not administrated'. Boom, one folder with all your channels.
- You can transfer your local folders by copying 'kotato-settings-custom.json' from your tdata clients folder to other Kotatogram clients.
- There is also an upload speed boost in the settings, which is an experimental features - but I'm going to try to use it for my ridiculous video uploads.
Office
One of the main concerns individuals have is how they are going to work on their new Linux machines. Well no worries, as there are plenty of mature office productivity projects that bring full featured document editing without the annoying licensing, anti-features, and bugs of Microsoft Office.
LibreOffice
LibreOffice came into existence in 2011, and was forked from the existing OpenOffice project, managed by Sun Microsystems. The community was concerned about their ability to contribute to the project and the increasing anti-community behavior coming from Sun, and its parent company Oracle. The main contributors decided to fork the project, and thus LibreOffice was born.
Today LibreOffice is the standard in open-source document editing, being pre-installed by default on many popular distributions. It includes a suite of applications, including a word processor, spreadsheet, presentation, vector & raster graphics editor, math formula developer, and database management program.
You can install LibreOffice from its official site, or from Flathub.
OnlyOffice
OnlyOffice is another free & open source software office suite, that can be used a SaaS or installed locally to your machine. Users enjoy similar features & interface to Microsoft office tools, and it offers are Cloud Service that you can access from your browser!
Install from their official website or Flathub!
Music
Clementine
Clementine is a modern music player and library organizer, and is available cross-platform. You can listen to music from other sources by integrating Cloud platforms, and music pltforms like Last.fm & Spotify.
Download from the official site, or install on Flathub.
Content Creation
OBS
OBS (Open Broadcaster Software) is a FOSS tool for live streaming and recording videos. It works by arranging multi-media streams in a studio. You can add your video stream, different audio streams, desktops & windows, images / videos, and more.
OBS is my go to for recording my desktop, different content, and what we use to produce the videos for #TakeBackOurTech. You can also use it to stream to any streaming platform!
It is available on on Ubuntu by installing dependencies and adding the OBS repository, and also from Flathub.
Quick Tips
- Make sure to set a 'scene' for every recording you want to do. This allows you to edit them separately and switch between scenes by clicking or using Hotkeys.
- Check out the hotkeys for common tasks to improve your workflow
- Use Studio Mode to preview your next scene and transition when ready
Kdenlive
Launched in 2003, Kdenlive is a free and open source video editor that supports any audio / video format. You can arrange your video and audio into multiple tracks and add effects and transitions - you can even keyframe the effects to change over time.
I've done some basic editing with Kdenlive, it is easy to use and very stable. You can use Kdenlive as an AppImage, Debian Package, or Flatpak.
Conclusion
This is just the starting point for your own FOSS application collection. Please try out these amazing pieces of technology, explore them, form your own opinions, and if you like them - donate to the effort.
Take Back Our Tech Newsletter
Join the newsletter to receive the latest updates in your inbox.