Linux
The Free and Open Source Software (FOSS) movement, analysed and explained in The Cathedral and the Bazaar, is much more than free (as in "free beer") software. It is software with the freedom to use, change, and to give away as you wish. Linux, the most prominent example of free software, is essentially the core part (kernel) of the software that runs a computer, a smartphone, a tablet, a car or airplane entertainment system, etc. We call Linux distributions, or Distros, the packaging together of an entire Gnu/Linux operating system with lots of desktop and application softwares. There are many distros to choose from. My preferred one is openSUSE.
O movimento de Software Livre e de Código Aberto, analisado e explicado no livro The Cathedral and the Bazaar (com versão em português), é muito mais do que simples software gratuito. É software com a liberdade de usar, modificar e dar adiante à vontade. Linux, o exemplo mais proeminente de software livre, é essencialmente o miolo (kernel) do programa que roda um computador, um smartphone, um tablet, um sistema de vídeo em automóveis e aviões, etc. Nós chamamos de distribuições de Linux, ou Distros, o empacotamento de um sistema operacional completo, baseado em Gnu/Linux, com muitos programas aplicativos. Há uma grande variedade de distros, mas a minha preferida é o openSUSE.
OpenSUSE is in my opinion the best distribution of Linux. The version I am currently using is Leap 15.4.
openSUSE Leap 15.4:
Additional Hints for openSUSE
Linux Hints
Summary of Linux commands from Linux Tidbits
Bash Tutorials for Beginners (Linux Handbook)
Bash Shell Scripting Tutorial (by Vivek Gite)
and vital collection of hints about Bash Script Pitfalls
Bash Notes for Professionals (book from Stack Overflow)
ExplainShell to interpret and adapt shell script commands
Online Latex Equation Editor (generates bitmap)
The Curious coder's Guide to Git
Windsurfer Antenna (build you own and boost your Wi-Fi signal)
Useful Linux Commands
(use ExplainShell to interpret and adapt these and other commands)
Using GnuPG and KGpg for encryption:
First generate a key pair:
KGpg: When you start for the first time, choose to always start at login, and to generate a key pair. After the first start, you can also open the Key Manager and go to the menu Keys/Generate Key Pair...
Give Name, Email and comment for user ID.
Choose expiration: 0 (never expires).
Choose the key length: 2048, for example.
Choose the algorithm: either RSA & RSA or DSA & ElGamal
Enter a Passphrase: note that a long sequence of unrelated words is easier to remember and harder to crack than a short sequence of mixed letters and symbols.
You can also generate a key pair from the command line with:
gpg2 --gen-key
It takes a while for the system to generate sufficient entropy for a good quality key pair.
Now, you can export the public key and give it to others, so they can encrypt files that only you can decrypt. You also can export it to a key server, so others can more easily find it.
You can also right-click on the key and Export Secret Key, but make sure you encrypt the file and save it in a secure and hidden place. This secret key can be imported into KGpg at another machine to enable encryption and decryption with the same key pair.
To Trust your own key (or any imported key), double-click on it, change Owner trust to Ultimately and OK. You may have to refresh the list (F5) to see the Trust colour change.
You can also set this key as the default key: right-click and select Set as Default Key.
To encrypt a file, right-click on it and select Actions / Encrypt File. In case of a text file, you can also right-click on KGpg and select Open Editor, then Open the text file and click on Encrypt. Select your Public Key from the list, then Save As, if you want a different name for the encrypted file. After saving the encrypted file, do not forget to delete the unencrypted version, in case you used different names.
You can also encrypt a file from the command line with:
gpg2 [-r userID] -e file.name
If no userID is given, the default key (your own) is used. The encrypted file is saved in the same directory as file.name.pgp .
To decrypt a file, right-click on it and choose Open with / KGpg. With this method, a copy of the decrypted file will be saved in the same directory. In case of a text file, you can also right-click on KGpg and select Open Editor, then Open the encrypted file and click on Decrypt. This second method does not create an unencrypted file on the disk, just on memory, and the unencrypted text disappears, when you close the Editor window.
You can also decrypt a file from the command line with:
gpg2 -d file.name.pgp > file.name
If you want to modify an encrypted text file, after opening it and decrypting with the KGpg Editor, do not forget to encrypt again the modified text before saving the encrypted file.