Modifications système Linux Mint

Triple-cliquez sur les lignes de code pour les sélectionner.
Lisez toute la page, cela peut vous aider si vous rencontrez des problèmes.

Démarrage

Correction du bootloader GRUB

Pour cacher le message Failed to open \EFI\UBUNTU\******* - Invalid Parameter* :

Depuis Windows1 :
bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi
Depuis le disque de démarrage2 :

  • sudo add-apt-repository -y ppa:yannubuntu/boot-repair

  • sudo apt install -y boot-repair

  • boot-repair

Personnalisation du menu de démarrage GRUB

Commande pour cacher les erreurs ACPI BIOS ERROR3 :
sudo sed -i -r 's/(GRUB_CMDLINE_LINUX_DEFAULT=")quiet/\1loglevel=3/' /etc/default/grub

Commande pour modifier le temps pour choisir entre les différents systèmes :
sudo sed -i -r 's/#?GRUB_TIMEOUT="[0-9]+"/GRUB_TIMEOUT="5"/' /etc/default/grub

Commande qui modifie la résolution4 (pour avoir une résolution correcte et ne pas afficher le logo de l'ordinateur déformé et en bas à droite de l'écran) :
xrandr | sed -nr 's/.*current ([0-9]+) x ([0-9]+).*/s\/#?GRUB_GFXMODE=.*\/GRUB_GFXMODE=\1x\2\//p' | sudo xargs -n1 sed /etc/default/grub -i -r -e

Vérifier les changements avec xed /etc/default/grub :

  • GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 splash" (à la place de quiet)
  • GRUB_GFXMODE=1600x900

sudo update-grub

Changement de thème

ATTENTION ! Installer un thème buggé peut vous empêcher de démarrer votre système5, aussi bien Linux que Windows ! Ayez toujours une clé d'installation ou de récupération au cas où il y ait une erreur.

Exemple pour le thème Linux Mint6 :
curl -LO https://github.com/AdisonCavani/distro-grub-themes/releases/latest/download/linux-mint.tar
sudo mkdir /boot/grub/themes/linux-mint
sudo tar -xf linux-mint.tar -C /boot/grub/themes/linux-mint/
echo "GRUB_THEME=/boot/grub/themes/linux-mint/theme.txt" | sudo tee /etc/default/grub > /dev/null

Création de mon thème

GitHub à venir...
sudo grub-mkfont -s 16 -o /boot/grub/themes/lfavole/ubuntu_regular_16.pf2 /usr/share/fonts/truetype/ubuntu/Ubuntu-R.ttf
sudo grub-mkfont -s 36 -o /boot/grub/themes/lfavole/ubuntu_regular_36.pf2 /usr/share/fonts/truetype/ubuntu/Ubuntu-R.ttf
sudo grub-mkfont -s 48 -o /boot/grub/themes/lfavole/ubuntu_bold_48.pf2 /usr/share/fonts/truetype/ubuntu/Ubuntu-B.ttf
sudo grub-mkfont -s 64 -o /boot/grub/themes/lfavole/ubuntu_regular_64.pf2 /usr/share/fonts/truetype/ubuntu/Ubuntu-R.ttf
sudo grub-mkfont -s 96 -o /boot/grub/themes/lfavole/ubuntu_bold_96.pf2 /usr/share/fonts/truetype/ubuntu/Ubuntu-B.ttf

Changement d'écriture7

J'utilise la police DejaVu Sans Mono, la police Ubuntu Mono ne comportant pas les caractères servant à tracer le cadre (cela affiche donc des points d'interrogation encadrés ⍰85).
echo "GRUB_FONT=/boot/grub/dejavu-sans-mono.pf2" | sudo tee /etc/default/grub > /dev/null

Vérifier le changement avec xed /etc/default/grub :

  • GRUB_FONT=/boot/grub/dejavu-sans-mono.pf2 (à la fin du fichier)

sudo grub-mkfont -s 28 -o /boot/grub/dejavu-sans-mono.pf2 /usr/share/fonts/truetype/dejavu/DejaVuSansMono.ttf
sudo update-grub

Traduction (et modification des messages au démarrage si nécessaire9)

curl -O https://git.launchpad.net/ubuntu/+source/grub2/plain/po/fr.po
xed fr.po
(Modifiez si vous voulez...
Repérez les messages et modifiez la traduction en-dessous, par exemple :

#: grub-core/normal/main.c:360
msgid "ESC at any time exits."
msgstr "Échap à tout moment pour quitter."
        ↑ modifiez ceci

Ne terminez pas par \n (nouvelle ligne), rajoutez un espace (\n[espace]) pour ne pas avoir d'erreurs.)
msgfmt -o fr.mo fr.po
sudo cp fr.mo /boot/grub/locale
sudo update-grub

Ajout d'entrées Éteindre et Redémarrer au menu GRUB10

echo 'menuentry "Éteindre" --class shutdown { halt }' | sudo tee -a /etc/grub.d/40_custom > /dev/null
echo 'menuentry "Redémarrer" --class restart { reboot }' | sudo tee -a /etc/grub.d/40_custom > /dev/null
Rendre le fichier exécutable, sinon il n'est pas ajouté à grub.cfg :
sudo chmod +x /etc/grub.d/40_custom
sudo update-grub

Réparation du logo Linux Mint au démarrage et à l'arrêt11

sudo update-alternatives --install /usr/share/plymouth/themes/default.plymouth default.plymouth /usr/share/plymouth/themes/mint-logo/mint-logo.plymouth 100
sudo update-alternatives --set default.plymouth /usr/share/plymouth/themes/mint-logo/mint-logo.plymouth

Accélération du démarrage

Désactivation de services inutiles12:
sudo systemctl disable nmbd.service
sudo systemctl disable NetworkManager-wait-online.service
sudo systemctl disable ModemManager.service
sudo systemctl mask plymouth-quit-wait.service
Réduction de la taille du fichier initramfs13 :
sudo sed -r -i 's/#?MODULES=.*/MODULES=dep/' /etc/initramfs-tools/initramfs.conf
sudo update-initramfs -u

Pilotes

Vous pouvez « installer des pilotes additionnels » s'ils vous sont suggérés mais si vous avez des problèmes de Wi-Fi (par exemple 5 GHz5) ou autre, ouvrez le Gestionnaire de pilotes, sélectionnez Ne pas utiliser ce périphérique, validez et redémarrez l'ordinateur.

Disques14

À modifier avec vos UUID de disque, sinon votre démarrage va être ralenti15.
echo "/dev/disk/by-uuid/CCA459D6A459C41C /media/lfavole/DATA auto nosuid,nodev,nofail,x-gvfs-show,uid=1000,gid=1000 0 0" | sudo tee /etc/fstab > /dev/null
echo /dev/disk/by-uuid/8A84D7AB84D79851 /media/lfavole/Windows auto nosuid,nodev,nofail,x-gvfs-show,uid=1000,gid=1000 0 0 | sudo tee /etc/fstab > /dev/null

Swapfile

https://linuxize.com/post/create-a-linux-swap-file/
À venir...

Verr. num. au démarrage

voir https://help.ubuntu.com/community/NumLock
Verr. num sur l'écran de connexion16 :
echo activate-numlock=true | sudo tee -a /etc/lightdm/slick-greeter.conf > /dev/null

Correction du problème du Wi-Fi qui ne marche plus après la mise en veille175

echo 'SUSPEND_MODULES="r8169"' | sudo tee /etc/pm/config.d/config > /dev/null

Ne plus détecter automatiquement les imprimantes18

sudo apt purge -y cups-browsed

Installation de logiciels

PPA Inkscape19 :
sudo add-apt-repository -y ppa:inkscape.dev/stable
PPA KeePassXC20 :
sudo add-apt-repository ppa:phoerious/keepassxc
PPA Git21 :
sudo add-apt-repository -y ppa:git-core/ppa
VSCodium22 :
wget -qO - https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg | gpg --dearmor | sudo dd of=/usr/share/keyrings/vscodium-archive-keyring.gpg
echo 'deb [ signed-by=/usr/share/keyrings/vscodium-archive-keyring.gpg ] https://download.vscodium.com/debs vscodium main' | sudo tee /etc/apt/sources.list.d/vscodium.list > /dev/null

Ulauncher23 :
sudo add-apt-repository -y universe
sudo add-apt-repository -y ppa:agornostal/ulauncher

TeamViewer2425 :
sudo add-apt-repository -y https://linux.teamviewer.com/deb stable main
curl https://linux.teamviewer.com/pubkey/currentkey.asc -qo- | gpg --dearmor | sudo tee /usr/share/keyrings/teamviewer-keyring.gpg > /dev/null
echo "deb [signed-by=/usr/share/keyrings/teamviewer-keyring.gpg] https://linux.teamviewer.com/deb stable main" | sudo tee /etc/apt/sources.list.d/teamviewer.list > /dev/null

Firefox26 :
sudo add-apt-repository -y ppa:mozillateam/ppa

sudo apt update
sudo apt install -y adb audacity cheese codium ffmpeg git gparted inkscape keepassxc teamviewer telegram-desktop ulauncher virtualbox vlc webext-keepassxc-browser xdotool

deb-multimedia27 : dernières versions de FFmpeg, VLC, ...

ATTENTION ! Installer deb-multimedia est une MAUVAISE IDÉE car cela va créer des problèmes de dépendances et désinstallera VLC, Audacity, Telegram...5
echo "deb https://www.deb-multimedia.org stable main" | sudo tee deb-multimedia.list > /dev/null
sudo apt update -oAcquire::AllowInsecureRepositories=true
sudo apt install -y deb-multimedia-keyring -oAcquire::AllowInsecureRepositories=true
sudo apt update

deb-get28 : installer ActivityWatch, rclone et Standard Notes

sudo apt install -y curl lsb-release wget
curl -sL https://raw.githubusercontent.com/wimpysworld/deb-get/main/deb-get | sudo -E bash -s install deb-get
echo "export DEBGET_TOKEN=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" >> .profile
deb-get update
deb-get upgrade
deb-get install activitywatch rclone standard-notes

Installation de Warp29

wget -qO- https://releases.warp.dev/linux/keys/warp.asc | gpg --dearmor | sudo dd of=/etc/apt/keyrings/warpdotdev.gpg
sudo sh -c 'echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/warpdotdev.gpg] https://releases.warp.dev/linux/deb stable main" > /etc/apt/sources.list.d/warpdotdev.list'

Installation de TightVNC30

sudo apt install -y tightvncserver
echo PASSWORD | vncpasswd -f > ~/.vnc/passwd

(cat <<EOF
[Unit]
Description=Start TightVNC server at startup
After=syslog.target network.target

[Service]
Type=forking
User=lfavole
Group=lfavole
WorkingDirectory=/home/lfavole

PIDFile=/home/lfavole/.vnc/%H:%i.pid
ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1
ExecStart=/usr/bin/vncserver -depth 24 -geometry 1600x900 -localhost :%i
ExecStop=/usr/bin/vncserver -kill :%i

[Install]
WantedBy=multi-user.target
EOF
) | sudo tee /etc/systemd/system/vncserver@.service > /dev/null

sudo systemctl daemon-reload
sudo systemctl enable vncserver@1.service
sudo systemctl start vncserver@1

Installation de Python31

sudo add-apt-repository -y ppa:deadsnakes/ppa
sudo apt update
sudo apt install -y python-is-python3 python3-pip python3.12
↑ mettre à jour la version !
Création de l'alias py = python25 :
sudo ln -s /usr/bin/python /usr/bin/py
Configuration de la version par défaut (commande python)32 :
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.12 1
↑ mettre à jour la version !
Réinstallation de pip pour qu'il utilise la bonne version de Python25 :
python -m pip install --force-reinstall pip
Activation de l'autocompletion pour pip33 :
echo 'eval "$(pip completion --bash)"' >> ~/.bashrc

Installation de paquets Python

yt-dlp34 :
sudo add-apt-repository -y ppa:tomtomtom/yt-dlp
sudo apt update
sudo apt install -y yt-dlp
pip install django flask fpdf2 mkdocs-material pillow rapidfuzz requests tqdm

Configuration de Firefox et Thunderbird3525

Thunderbird

Sauvegarde des dossiers :
mv ~/.cache/thunderbird ~/.cache/thunderbird.old
mv ~/.thunderbird ~/.thunderbird.old
Création des liens symboliques :
ln -s /media/lfavole/Windows/Users/Laurent/AppData/Roaming/Thunderbird ~/.thunderbird
ln -s /media/lfavole/Windows/Users/Laurent/AppData/Local/Thunderbird ~/.cache/thunderbird

Ajout du profil Linux en haut du fichier Windows dans le fichier installs.ini :
cp ~/.thunderbird/installs.ini ~/.thunderbird/installs.old.ini
cat ~/.thunderbird/installs.ini ~/.thunderbird.old/installs.ini > ~/.thunderbird/installs.ini

Ajout du profil Linux en haut du fichier Windows dans le fichier profiles.ini :
cp ~/.thunderbird/profiles.ini ~/.thunderbird/profiles.old.ini
awk '/\[Install.*/{p = 0}; p = p + 1{}; p>1{print}; /Locked=[0-9]+/{print ""; exit}' ~/.thunderbird/profiles.ini | cat - ~/.thunderbird/profiles.ini > ~/.thunderbird/profiles.ini
head -n1 ~/.thunderbird.old/profiles.ini | cat - ~/.thunderbird/profiles.ini > profiles.ini

Firefox

Sauvegarde des dossiers :
mv ~/.cache/mozilla/firefox ~/.cache/mozilla/firefox.old
mv ~/.mozilla/firefox ~/.mozilla/firefox.old
Création des liens symboliques :
ln -s /media/lfavole/Windows/Users/Laurent/AppData/Roaming/Mozilla/Firefox ~/.mozilla/firefox
ln -s /media/lfavole/Windows/Users/Laurent/AppData/Local/Mozilla/Firefox ~/.cache/mozilla/firefox

Ajout du profil Linux en haut du fichier Windows dans le fichier installs.ini :
cp ~/.mozilla/firefox/installs.ini ~/.mozilla/firefox/installs.old.ini
cat ~/.mozilla/firefox/installs.ini ~/.mozilla/firefox.old/installs.ini > ~/.mozilla/firefox/installs.ini

Ajout du profil Linux en haut du fichier Windows dans le fichier profiles.ini :
cp ~/.mozilla/firefox/profiles.ini ~/.mozilla/firefox/profiles.old.ini
awk '/\[Install.*/{p = 0}; p = p + 1{}; p>1{print}; /Locked=[0-9]+/{print ""; exit}' ~/.mozilla/firefox/profiles.ini | cat - ~/.mozilla/firefox/profiles.ini > ~/.mozilla/firefox/profiles.ini
head -n1 ~/.mozilla/firefox.old/profiles.ini | cat - ~/.mozilla/firefox/profiles.ini > ~/.mozilla/firefox/profiles.ini

ATTENTION ! Dans les deux cas, il ne faut pas ouvrir le logiciel avec une version plus récente sur Windows, puis l'ouvrir avec une version plus ancienne sur Linux (ou l'inverse). Cela correspond à une rétrogradation de version et affiche une erreur365.
Si vous voyez le message d'erreur36, mettez à jour le logiciel. Sur Windows, il faut utiliser un installateur en ligne ou stub installer37 (≈ 350 Ko) ou créer un nouveau profil qu'on pourra effacer après.

Symlink des fichiers / dossiers de configuration

(curlrc, gitconfig, gpg, yt-dlp...)
À venir...

LibreOffice25 :
mv ~/.config/libreoffice ~/.config/libreoffice.old
ln -s /media/lfavole/Windows/Users/Laurent/AppData/Roaming/LibreOffice ~/.config/libreoffice

Autres informations

Je n'ai pas copié-collé les commandes sed, je les ai écrites (mais elles sont tellement évidentes une fois qu'on a compris comment ça marche...). Par contre la commande xrandr... a été très longue à écrire.
Les commandes sudo tee38 permettent d'écrire dans des fichiers protégés (> ne marche pas). Mais tee écrit dans le fichier mais aussi dans le terminal, on doit donc ajouter > /dev/null à la fin pour ne pas "polluer" le terminal, surtout avec des fichiers binaires...


  1. Source : https://askubuntu.com/a/1356148 

  2. Source : https://askubuntu.com/a/1358071 

  3. Sources : 

  4. Source : https://askubuntu.com/a/54068 

  5. Ce problème m'est arrivé, vous vous en doutiez... 

  6. Source : https://github.com/AdisonCavani/distro-grub-themes/releases/latest 

  7. Source : https://www.baeldung.com/linux/grub-menu-font-size 

  8. Source : https://askubuntu.com/a/11852 

  9. Source : https://askubuntu.com/a/1087390 

  10. Source : https://wiki.archlinux.org/title/GRUB#GRUB_commands 

  11. Source : https://askubuntu.com/a/1399868 

  12. Source : https://forums.linuxmint.com/viewtopic.php?p=1985483#p1985483 

  13. Source : https://askubuntu.com/a/878087 

  14. Il faut ajouter uid=1000,gid=1000 (ID d'utilisateur et de groupe) pour activer la corbeille.
    Source : https://forums.linuxmint.com/viewtopic.php?p=1630622#p1630622 

  15. Source : https://forums.linuxmint.com/viewtopic.php?p=2083549#p2083549 

  16. Source : https://unix.stackexchange.com/a/275475 

  17. Source : https://forums.linuxmint.com/viewtopic.php?p=568624#p568624 

  18. Source : https://www.reddit.com/r/linuxmint/comments/rj7xqb/how_do_i_disable_network_discovery_of_printers/ 

  19. Source : https://inkscape.org/release/inkscape-1.3.2/gnulinux/ubuntu/ppa/dl/ 

  20. Source : https://keepassxc.org/download/ 

  21. Source : https://git-scm.com/download/linux 

  22. Source : https://vscodium.com/#install-on-debian-ubuntu-deb-package 

  23. Source : https://ulauncher.io/#ubuntu-ppa 

  24. Sources : 

  25. Issu de recherches personnelles / reverse engineering

  26. https://launchpad.net/~mozillateam/+archive/ubuntu/ppa 

  27. Source : https://www.deb-multimedia.org/ 

  28. Source : https://github.com/wimpysworld/deb-get#install 

  29. Source : https://docs.warp.dev/#install-warp 

  30. Source : https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-vnc-on-ubuntu-20-04-fr 

  31. Sources : 

  32. Source : https://askubuntu.com/a/1317470 

  33. Source : https://pip.pypa.io/en/stable/user_guide/#command-completion 

  34. Source : https://github.com/yt-dlp/yt-dlp/wiki/Installation#apt 

  35. Source : https://kb.mozillazine.org/Sharing_a_profile_between_Windows_and_Linux 

  36. Source : https://support.mozilla.org/fr/kb/profil-distinct-par-installation-firefox#w_quarrive-t-il-a-mon-profil-en-cas-de-retour-a-une-ancienne-version-de-firefox 

  37. À ma connaissance, les stub installers ne peuvent plus être téléchargés depuis le site de Mozilla mais si vous en avez un, il fonctionnera encore. 

  38. Source : https://stackoverflow.com/a/82278 


You'll only receive email when they publish something new.

More from Laurent FAVOLE
All posts