๐Ÿ“˜ Fedora Workstation#

Fedora 35#

โ— Never forget to crypt your devices during the installation.
โญ Disable bluetooth in your BIOS/UEFI configuration.
โญ Protect your BIOS/UEFI access with password.

Fresh Installation#

fresh installation

Window System#

Change your window system if needed [1] (return to X11).

window_system

Gnome Notifications#

gnome_notifications

Gnome-terminal#

Type <Meta> aka Windows key to access the activities mode. Or click on the Activities button.

search_term

Add gnome-terminal to your favorites.

add_term_to_fav

Get a root session.

sudo -i

All commands prefixed by sudo means that you need the root privileges to execute them.
๐Ÿ–™ https://www.linuxtricks.fr/wiki/memo-commandes-de-base-linux

Upgrading#

DNF#

sudo dnf repolist
sudo dnf check-update
sudo dnf upgrade --refresh

Repository#

/etc/yum.repo.d

โ”œโ”€โ”€ _copr_phracek-PyCharm.repo
โ”œโ”€โ”€ fedora-cisco-openh264.repo
โ”œโ”€โ”€ fedora-modular.repo
โ”œโ”€โ”€ fedora.repo
โ”œโ”€โ”€ fedora-updates-modular.repo
โ”œโ”€โ”€ fedora-updates.repo
โ”œโ”€โ”€ fedora-updates-testing-modular.repo
โ”œโ”€โ”€ fedora-updates-testing.repo
โ”œโ”€โ”€ google-chrome.repo
โ”œโ”€โ”€ rpmfusion-nonfree-nvidia-driver.repo
โ””โ”€โ”€ rpmfusion-nonfree-steam.repo

Gnome-tweaks#

Installation#

sudo dnf search gnome-tweaks
sudo dnf install gnome-tweaks

Panel#

Update your window titlebarโ€™s icons.

gnome_tweaks

Extensions#

Installation#

sudo flatpak search extensions
sudo flatpak install extensions
sudo flatpak list
sudo flatpak remotes

Panel#

Enable Applications Menu, Place Status Indicator and Window List extensions.

gnome_extensions

applications

Numix theme#

Installation#

sudo dnf install numix-gtk-theme numix-icon-theme

Configuration#

numix

Shares#

mount#

MUID=$(id -u) && MGID=$(id -g) && NAME=$(id -nu)
sudo mkdir /mnt/inha_partages
sudo mount -t cifs -o username=$NAME,vers=1.0,uid=$MUID,gid=$MGID //partages.inha.fr/partages /mnt/inha_partages
sudo mount -t cifs -o username=gsamson,vers=1.0,uid=1000,gid=1000 //partages.inha.fr/partages /mnt/inha_partages

umount#

sudo umount /mnt/inha_partages

Checks#

mount | grep partages
df -h

/etc/fstab

Gnome Files#

Shortcuts#

shortcuts

description

<Ctrl-1>

list display

<Ctrl-2>

grid display

<Ctrl-d>

bookmark current directory

<Ctrl-l>

open path bar

<Ctrl-f>

open search bar

<Ctrl-h>

display . files

<Ctrl-N>

create a new directory

<F2>

rename

<Ctrl-w>

close window or tab

<Ctrl-q>

quit

Overview#

gnome_files

Gnome settings#

CLI#

gsettings list-recursively
gsettings get org.gnome.desktop.background picture-uri

GUI#

gnome_settings

Network settings#

gnome_settings_network

Firewalld#

Service#

sudo systemctl status firewalld.service
sudo systemctl is-enabled firewalld.service
sudo systemctl is-active firewalld.service

CLI#

firewall-cmd --get-active-zones
firewall-cmd --get-zones
firewall-cmd --list-services
firewall-cmd --list-ports

firewall-cmd --get-policies
firewall-cmd --state
firewall-cmd --get-default-zone
firewall-cmd --get-active-zones
firewall-cmd --list-all

GUI#

sudo dnf install firewall-config

firewall_config

SSH#

Creating keys#

ssh-keygen -o -a 100 -t ed25519 -C "gsamson@inha.fr"
ssh-keygen -t rsa -b 4096 -C "gsamson@inha.fr"

โ— Never share your private keys. Keep them unreadable for everyone.

Checking permissions#

ls -trld .ssh/
drwx------. 1 guillaume guillaume 80 18 dรฉc.  16:13 .ssh/
tree -pug .ssh/
.ssh/
โ”œโ”€โ”€ [-rw------- guillaume guillaume]  id_ed25519
โ”œโ”€โ”€ [-rw-r--r-- guillaume guillaume]  id_ed25519.pub
โ”œโ”€โ”€ [-rw------- guillaume guillaume]  id_rsa
โ””โ”€โ”€ [-rw-r--r-- guillaume guillaume]  id_rsa.pub

Client configuration#

files

description

ssh_config

client configuration

sshd_config

server configuration

cat .ssh/config
Host *
  User guillaume
  IdentityFile ~/.ssh/id_ed25519
  IdentityFile ~/.ssh/id_rsa

First connection#

ssh guillaume@192.168.122.218
The authenticity of host '192.168.122.218 (192.168.122.218)' can't be established.
ED25519 key fingerprint is SHA256:+/sqpiP5xTIaDRpdMDk5TTBHbYO4aXIYPGwAw6/Cq5U.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.122.218' (ED25519) to the list of known hosts.
guillaume@192.168.122.218's password:
Last failed login: Sat Dec 18 16:47:51 CET 2021 from 192.168.122.1 on ssh:notty
There was 1 failed login attempt since the last successful login.
Last login: Sat Dec 18 16:10:37 2021 from 192.168.122.1
[guillaume@fedora35 ~]$
dรฉconnexion
Connection to 192.168.122.218 closed.

Remote host key is added in ~/.ssh/known_hosts.

โ— If you get a warning message after this step, be sure to know the person who re-install or change the server credentials.

Public key#

ssh guillaume@192.168.122.218
guillaume@192.168.122.218's password:
[guillaume@debian11 ~]$ mkdir .ssh && cd .ssh
[guillaume@debian11 ~]$ vi .ssh/authorized_keys
[guillaume@debian11 ~]$ chmod 600 .ssh/authorized_keys
[guillaume@debian11 ~]$ cat .ssh/authorized_keys
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFBFC8GmLbjltvV2t4M3YgdRJE6GVG1Jub0OsF/Bw6// guigui@localhost.localdomain

When your public key is depoled, you can connect without password.

gnome_keyring_ssh

โ— Do not check the box. Type your passphrase once every morning (search seahorse, gnome-keyring).

Tools#

ApacheDirectoryStudio#

Installation#

echo $PATH && cd $HOME
mkdir bin && cd bin
wget https://dlcdn.apache.org/directory/studio/2.0.0.v20210717-M17/ApacheDirectoryStudio-2.0.0.v20210717-M17-linux.gtk.x86_64.tar.gz
tar xzf ApacheDirectoryStudio-2.0.0.v20210717-M17-linux.gtk.x86_64.tar.gz
ln -s ApacheDirectoryStudio/ApacheDirectoryStudio apachedirectorystudio

โญ Check the latest version on apache.org .

Desktop file#

[guillaume@fedora35 ~]$ cat .local/share/applications/apachedirectorystudio.desktop
[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=ApacheDiretoryStudio
Comment=ApacheDiretoryStudio
Exec=apachedirectorystudio
Icon=/home/guillaume/bin/ApacheDirectoryStudio/studio_128x128.png
Terminal=false
Categories=GNOME;GTK;Utility;
StartupNotify=true
DBusActivatable=true
X-GNOME-UsesNotifications=true

Studio icons#

studio_128x128.png studio_128x128.png

Clamav#

Installation#

sudo dnf install clamav clamv-update

Refreshing databases#

sudo freshclam

Scanning#

clamscan --recursive --infected /home/guillaume

----------- SCAN SUMMARY -----------
Known viruses: 8583763
Engine version: 0.103.4
Scanned directories: 792
Scanned files: 2512
Infected files: 0
Data scanned: 528.00 MB
Data read: 381.18 MB (ratio 1.39:1)
Time: 320.857 sec (5 m 20 s)
Start Date: 2021:12:18 15:13:41
End Date:   2021:12:18 15:19:02

clamscan chelou.pdf

Refreshing databases automatically#

sudo systemctl status clamav-freshclam
sudo systemctl start clamav-freshclam
sudo systemctl enable clamav-freshclam

KeePassXC#

Installation#

sudo dnf install keepassxc

Overview#

keepassxc

Nagstamon#

Installation#

sudo wget https://nagstamon.de/repo/fedora/nagstamon.repo \
    -O /etc/yum.repos.d/nagstamon.repo
sudo dnf install nagstamon

Configuration#

fedora35_nagstamon_server_config

Filters#

fedora35_nagstamon_filters

Remmina#

Installation#

sudo dnf install remmina

Overview#

remmina

Configuration#

remmina_conn_config

Teamviewer#

Installation#

sudo wget https://download.teamviewer.com/download/linux/teamviewer.x86_64.rpm
sudo dnf install teamviewer.x86_64.rpm
sudo rm teamviewer.x86_64.rpm

Notes#

Pandoc#

sudo dnf install pandoc pandoc-pdf
pandoc -f markdown -t html -o fedora_laptop.html fedora_laptop.md

Docker/Sphinx#

/home/guillaume/fedora_laptop
โ”œโ”€โ”€ docker-compose.yml
โ”œโ”€โ”€ Dockerfile
โ”œโ”€โ”€ entrypoint.sh
โ”œโ”€โ”€ requirements.pip
โ””โ”€โ”€ sphinx_src
    โ”œโ”€โ”€ build
    โ”œโ”€โ”€ make.bat
    โ”œโ”€โ”€ Makefile
    โ””โ”€โ”€ source
alias dcfl="docker-compose -f ~/fedora_laptop/docker-compose.yml"

dcfl up -d --build

dcfl ps
NAME                     COMMAND             SERVICE             STATUS              PORTS
fedora_laptop-sphinx-1   "/entrypoint.sh"    sphinx              running             0.0.0.0:8080->8000/tcp, :::8080->8000/tcp

dcfl top
fedora_laptop-sphinx-1
UID        PID      PPID     C    STIME   TTY   TIME       CMD
guillau+   492576   492554   0    00:53   ?     00:00:00   /bin/sh /entrypoint.sh
guillau+   492640   492576   1    00:53   ?     00:00:00   /usr/bin/python3 /srv/sphinx_inha/.local/bin/sphinx-autobuild --host 0.0.0.0 --port 8000 /srv/sphinx_inha/source /srv/sphinx_inha/build

dcfl logs -f

dcfl down