---
title: Post-Installation
description: Étapes à suivre pour configurer CachyOS après l'installation
tableOfContents:
  minHeadingLevel: 1
  maxHeadingLevel: 3
---

import { Tabs, TabItem, Steps } from '@astrojs/starlight/components';

## Mise à jour du système

:::tip
Pensez à consulter notre section [Sécurité et bonnes pratiques](/fr/cachyos_basic/faq#sécurité--bonnes-pratiques) pour éviter les pièges courants et maintenir la sécurité de votre système.
:::

<Tabs>

<TabItem label="Avec Octopi (GUI)">

Octopi est un gestionnaire de paquets graphique pour les distributions basées sur Arch qui offre un moyen pratique de gérer les paquets et les mises à jour.
Pour mettre à jour votre système avec Octopi, suivez ces étapes :

<Steps>

1. Lancez **Octopi** depuis le menu des applications.
2. Dans la fenêtre principale, cliquez sur le bouton **Vérifier les mises à jour** (en haut à gauche), puis à côté sur **Mise à niveau du système.**
3. Octopi vérifiera alors les mises à jour disponibles et vous proposera de les installer soit dans Octopi lui-même, soit dans un terminal.
4. Pour procéder à la mise à jour, cliquez sur le bouton **Appliquer**.
5. Octopi téléchargera et installera les mises à jour.
6. Il est conseillé de redémarrer votre ordinateur après une mise à jour importante **(surtout si le noyau a été mis à jour)**.

</Steps>

</TabItem>

<TabItem label="Avec Pacman">

<Steps>

1. Ouvrez un émulateur de terminal (ou appuyez sur `ctrl + alt + t` - `mod + retour` dans un gestionnaire de fenêtres comme Qtile).
2. Exécutez la commande suivante pour mettre à jour le système :

   ```sh
   sudo pacman -Syu
   ```
3. Il est conseillé de redémarrer votre ordinateur après une mise à jour importante **(surtout si le noyau a été mis à jour)**.

</Steps>

</TabItem>

<TabItem label="Mise à jour hors ligne du système">

*CachyOS prend en charge les mises à jour système hors ligne grâce au script [`pacman-offline`](https://github.com/eworm-de/pacman-offline). Cela permet à votre système de télécharger les mises à jour de paquets et de les appliquer au prochain redémarrage. (Oui, comme sous Windows)*

:::note
L'outil `pacman-offline` s'intègre avec la fonctionnalité de mises à jour hors ligne de systemd. Il gère automatiquement les mises à jour du noyau et le chargement des modules.

Le fichier `/etc/pacman.d/offline.conf` est crucial pour gérer quels paquets sont mis à jour lors des mises à jour régulières et hors ligne. Assurez-vous qu'il est configuré correctement pour votre noyau désiré ou ajoutez les paquets que vous souhaitez afin qu'ils ne soient mis à jour que lors de l'exécution de pacman-offline et soient ignorés lors d'une mise à jour régulière. Exemple : `pacman -Syu`.

**Si vous activez le minuteur de mise à jour automatique, vous n'aurez plus besoin de mettre à jour votre système manuellement.**
:::

<Steps>

1. **Installer le paquet pacman-offline**

   ```bash
   sudo pacman -S pacman-offline
   ```

2. **Indiquer à Pacman de lire la liste de paquets à ignorer séparée.**

   :::note[Ajoutez la ligne après la section [options]. Consultez l'exemple ci-dessous pour référence.]
   :::

   ```bash title='Ajoutez la ligne suivante au fichier /etc/pacman.conf'
   Include = /etc/pacman.d/offline.conf
   ```
   *Exemple*
   ```bash
   # /etc/pacman.conf
   # DÉPÔTS
   #   - peuvent être définis ici ou inclus depuis un autre fichier
   #   - pacman cherchera les dépôts dans l'ordre défini ici
   #   - les miroirs locaux/personnalisés peuvent être ajoutés ici ou dans des fichiers séparés
   #   - les dépôts listés en premier auront la priorité lorsque les paquets
   #     ont des noms identiques, quel que soit le numéro de version
   #   - les URLs remplaceront $repo par le nom du dépôt actuel
   #   - les URLs remplaceront $arch par le nom de l'architecture
   #
   # Les entrées de dépôt ont le format suivant :
   #       [nom-du-dépôt]
   #       Server = NomDuServeur
   #       Include = CheminDInclusion
   #
   # L'en-tête [nom-du-dépôt] est crucial - il doit être présent et
   # décommenté pour activer le dépôt.
   #
   # OPTIONS GÉNÉRALES
   [options]
   # d'autres options comme 'Color', 'CheckSpace', etc. peuvent être ici
   Include = /etc/pacman.d/offline.conf
   ```
3. **Ajouter les noyaux CachyOS pour que pacman les ignore lors des mises à jour régulières**

   L'outil `pacman-offline` utilise ce fichier pour déterminer quels paquets ignorer lors des mises à jour traditionnelles avec pacman.

   Exemple : lorsque vous exécutez `sudo pacman -Syu`

   *Remplacez le contenu du fichier `/etc/pacman.d/offline.conf` par ce qui suit :*

   ```text
   # Noyaux Arch Linux
   IgnorePkg = linux linux-headers linux-docs
   IgnorePkg = linux-lts linux-lts-headers linux-lts-docs
   IgnorePkg = linux-zen linux-zen-headers linux-zen-docs
   IgnorePkg = linux-hardened linux-hardened-headers linux-hardened-docs

   # Noyaux CachyOS
   IgnorePkg = linux-cachyos linux-cachyos-headers linux-cachyos-nvidia-open linux-cachyos-zfs
   IgnorePkg = linux-cachyos-bmq linux-cachyos-bmq-headers linux-cachyos-bmq-nvidia-open linux-cachyos-bmq-zfs
   IgnorePkg = linux-cachyos-bore linux-cachyos-bore-headers linux-cachyos-bore-nvidia-open linux-cachyos-bore-zfs
   IgnorePkg = linux-cachyos-deckify linux-cachyos-deckify-headers linux-cachyos-deckify-nvidia-open linux-cachyos-deckify-zfs
   IgnorePkg = linux-cachyos-eevdf linux-cachyos-eevdf-headers linux-cachyos-eevdf-nvidia-open linux-cachyos-eevdf-zfs
   IgnorePkg = linux-cachyos-gcc linux-cachyos-gcc-headers linux-cachyos-gcc-nvidia-open linux-cachyos-gcc-zfs
   IgnorePkg = linux-cachyos-hardened linux-cachyos-hardened-headers linux-cachyos-hardened-nvidia-open linux-cachyos-nvidia-hardened-zfs
   IgnorePkg = linux-cachyos-lts linux-cachyos-lts-headers linux-cachyos-lts-nvidia-open linux-cachyos-lts-zfs
   IgnorePkg = linux-cachyos-rc linux-cachyos-rc-headers linux-cachyos-rc-nvidia-open linux-cachyos-rc-nvidia-open linux-cachyos-rc-zfs
   IgnorePkg = linux-cachyos-rt-bore linux-cachyos-rt-bore-headers linux-cachyos-rt-bore-nvidia-open
   IgnorePkg = linux-cachyos-server linux-cachyos-server-headers linux-cachyos-server-nvidia-open linux-cachyos-server-zfs
   ```

   *Désormais, tous ces paquets seront ignorés lors des mises à jour régulières, mais vérifiés lors de la préparation hors ligne.*

3. **Lancer la préparation pour la mise à jour hors ligne une seule fois**

   ```bash title='Exécutez la commande suivante'
   sudo systemctl start pacman-offline-prepare.service
   ```
   Cette commande exécutera pacman-offline une seule fois pour synchroniser les bases de données des paquets et télécharger les mises à jour, mais sans les installer.

</Steps>

*Si vous souhaitez que ce script soit automatisé, suivez les étapes suivantes :*

<Steps>

1. **Activer le minuteur de préparation**

   L'activation du `pacman-offline-prepare.timer` permettra à systemd de déclencher ce script pour télécharger les mises à jour quotidiennement, quelques minutes après chaque démarrage du système.

   ```bash
   sudo systemctl enable pacman-offline-prepare.timer
   ```

2. **Redémarrez votre système :**

   Les mises à jour seront installées lors du prochain redémarrage du système.

3. **(Optionnel) Redémarrages automatiques du système :**

    Activez le `pacman-offline-reboot.timer` pour redémarrer automatiquement votre système, par défaut à **3h du matin** (votre fuseau horaire) s'il y a des mises à jour en attente. Notez que l'heure n'est pas toujours exactement la même en raison de l'inclusion de `RandomizedDelaySec`, qui est réglé sur 2 heures par défaut.

    ```bash
    sudo systemctl enable pacman-offline-reboot.timer
    ```

    :::tip
    Vous pouvez modifier le fichier `pacman-offline-reboot.timer` pour changer l'heure à laquelle vous voulez que votre système redémarre s'il y a une mise à jour en attente, ou pour désactiver la planification aléatoire.
    :::

</Steps>

</TabItem>

<TabItem label="Cachy-Update">

Fork de [Arch-Update](https://github.com/Antiz96/arch-update)

Un notificateur et applicateur de mises à jour pour Arch Linux qui vous aide avec les tâches importantes avant/après les mises à jour.
Inclut un applet de zone de notification dynamique et cliquable pour une intégration facile avec n'importe quel Environnement de Bureau / Gestionnaire de Fenêtres.

Activez Cachy-Update dans CachyOS Hello > Applications/Réglages > Cachy Update activé

- Fonctionnalités :
  - Vérification et affichage automatiques des mises à jour disponibles.
  - Vérification des actualités récentes d'Arch Linux (et propose de les afficher s'il y en a).
  - Vérification des paquets orphelins (et propose de les supprimer s'il y en a).
  - Vérification des paquets anciens et désinstallés dans le cache (et propose de les supprimer s'il y en a).
  - Vérification de la mise à jour du noyau en attente nécessitant un redémarrage (et propose de le faire si nécessaire).
  - Vérification des services nécessitant un redémarrage après la mise à niveau (et propose de le faire si nécessaire).
  - Prise en charge de `sudo`, `sudo-rs`, `doas` & `run0`.

**Intervalle de vérification des mises à jour :** `Une fois 15 secondes après le démarrage, puis toutes les heures.`

- Comment changer l'intervalle de vérification des mises à jour :

```sh title='Exécutez la commande suivante'
systemctl --user edit --full arch-update.timer
# Astuce : Vous pouvez aussi utiliser n'importe quel éditeur de texte de votre choix à la place de `nano`
# ex. EDITOR=micro systemctl --user edit --full arch-update.timer
```
Contenu par défaut du fichier :
```systemd
[Timer]
OnStartupSec=15 # Vérifie les mises à jour 15 secondes après le démarrage
OnUnitActiveSec=1h # Vérifie les mises à jour toutes les heures
```

En gros, vous pouvez changer la valeur de `OnUnitActiveSec` par ce que vous voulez. Par exemple, si vous voulez vérifier les mises à jour toutes les 30 minutes, changez-la en `30m`. Ou toutes les 6 heures, changez-la en `6h`. Consultez ce [document](https://www.freedesktop.org/software/systemd/man/latest/systemd.time.html#Parsing%20Time%20Spans) pour plus de détails sur la façon de définir l'intervalle de temps.

Si vous voulez que Cachy-Update vérifie les nouvelles mises à jour une seule fois au démarrage, vous pouvez simplement supprimer complètement la ligne `OnUnitActiveSec`.

Merci à [Antiz](https://github.com/Antiz96) pour la maintenance du projet amont Arch-Update et pour l'implémentation de Cachy-Update

</TabItem>

</Tabs>

## Configuration du pare-feu (ufw)
:::note
UFW est activé par défaut après l'installation.
:::
Pour configurer ufw, suivez ces étapes :

<Tabs>

<TabItem label="Activer">

```bash
sudo ufw enable
```

</TabItem>

<TabItem label="Désactiver">

```bash
sudo ufw disable
```

</TabItem>

<TabItem label="Autoriser">

Par défaut, ufw ignore le trafic entrant et autorise le trafic sortant ; vous pouvez ajouter des règles spécifiques au pare-feu pour bloquer ou autoriser des connexions précises.

```bash
# Par exemple :
sudo ufw allow ssh
```

</TabItem>

<TabItem label="Refuser">

```bash
# Pour refuser un port spécifique, consultez l'exemple suivant :
sudo ufw deny 80
```

</TabItem>

<TabItem label="Statut">

```bash
sudo ufw status verbose
```

</TabItem>

</Tabs>

:::note
Soyez prudent lors de la configuration des règles du pare-feu, car des règles mal configurées peuvent vous bloquer l'accès à votre propre système.
:::

:::note
Vous pouvez également le configurer graphiquement en utilisant la section "Pare-feu" dans les paramètres de KDE Plasma.
:::

## Activer le menu global
Pour certaines applications comme Visual Studio Code, le menu global peut ne pas fonctionner ou être attaché à l'application parente au lieu du panneau.

```sh
# Pour activer le support du menu global, exécutez la commande et redémarrez l'application.
sudo pacman -S appmenu-gtk-module libdbusmenu-glib
```

## Activer le support d'AppArmor via les profils AppArmor.d (Optionnel)

<Steps>

1. Ajoutez les paramètres de noyau suivants à votre gestionnaire de démarrage, voir la [Configuration du gestionnaire de démarrage](/fr/configuration/boot_manager_configuration) pour référence

   ```text
   lsm=landlock,lockdown,yama,integrity,apparmor,bpf
   ```

2. Installez les paquets apparmor et apparmord **(Ensemble de plus de +1500 profils)**
   ```bash
   sudo pacman -S apparmor apparmor.d
   ```

3. Activer/Démarrer le service AppArmor

   ```bash
   systemctl enable --now apparmor.service
   ```

4. Activer la mise en cache pour les profils AppArmor

   ```shell
   # /etc/apparmor/parser.conf
   ## Ajoutez les lignes suivantes :
   write-cache
   Optimize=compress-fast
   cache-loc /etc/apparmor/earlypolicy/
   ```
   Sauvegardez le fichier et redémarrez.
</Steps>

## Changer le shell par défaut

Actuellement, CachyOS utilise [fish](https://fishshell.com/) comme shell de connexion par défaut pour l'utilisateur. Cependant, vous pouvez changer
le shell par défaut pour celui que vous préférez.

<Tabs>
   <TabItem label='bash'>

      C'est le shell par défaut sur presque toutes les distributions Linux. Il est également toujours utilisé comme shell de connexion de l'utilisateur root. bash
      dispose d'une fonctionnalité d'autocomplétion de base et d'une gestion facile de l'historique. Il se distingue de zsh et fish par le fait qu'il ne possède pas
      l'écosystème de personnalisation et de plugins sophistiqué que fish et zsh ont tous les deux.


      ```sh title='Changer votre shell par défaut pour bash'
      chsh -s /usr/bin/bash
      ```

   </TabItem>

   <TabItem label='zsh'>

      Nous fournissons une [configuration zsh](https://github.com/CachyOS/cachyos-zsh-config) avec des plugins et des configurations couramment utilisés.
      Elle vise à avoir une fonctionnalité 1:1 avec notre [configuration fish](https://github.com/CachyOS/cachyos-fish-config).
      C'est aussi le shell par défaut utilisé dans MacOS.

      ```sh title='Changer le shell par défaut pour zsh'
      chsh -s /usr/bin/zsh
      ```

   </TabItem>
</Tabs>

## Mettre à jour/utiliser [tldr](https://github.com/tldr-pages/tldr)

:::note
CachyOS utilise [tealdeer](https://github.com/tealdeer-rs/tealdeer) qui est une implémentation plus rapide en Rust de l'original tldr
:::

Cet outil est extrêmement utile pour ceux qui ne veulent pas lire beaucoup ou perdre du temps à lire une page d'aide/man.

<Steps>

1. ```sh title="Ouvrez un terminal et exécutez la commande suivante"
   tldr --update
   ```
2. Exemple d'utilisation de tldr :
   ```sh
   tldr java
     Execute a `.jar` program:

      java -jar filename.jar

   # Comme vous pouvez le voir, c'est vraiment utile, et de nouveaux outils/pages sont ajoutés au fil du temps.
   ```

</Steps>

## Gérer les Appimages

Les Appimages sont des applications portables qui fonctionnent sur la plupart des distributions Linux sans nécessiter d'installation ni de droits root.

:::note[Toutes les AppImages nécessitent des permissions d'exécution pour fonctionner.]
Vous pouvez définir la permission d'exécution en utilisant la commande suivante :
```sh
chmod +x /chemin/vers/votre/appimage
```
Ou faites un clic droit sur le fichier AppImage, allez dans `Propriétés` > `Permissions`, et cochez la case `Autoriser l'exécution du fichier comme un programme.`
:::

:::note[Avant d'exécuter des AppImages, assurez-vous que FUSE (Filesystem in Userspace) est installé sur votre système.]
```sh
sudo pacman -S fuse2
```
:::

Pour gérer les AppImages, vous pouvez utiliser [AppImageLauncher](https://github.com/TheAssassin/AppImageLauncher), qui offre un moyen facile d'intégrer les AppImages dans votre système.
<Tabs>
  <TabItem label='Utiliser AppImageLauncher (GUI)'>
    AppImageLauncher est un outil graphique qui simplifie la gestion des AppImages sur votre système. Il s'intègre à votre environnement de bureau, facilitant l'exécution et la gestion des AppImages.
        <Steps>
        1. Installez AppImageLauncher :
              ```sh
              paru appimagelauncher
              ```
        2. Téléchargez une Appimage de votre choix depuis une source de confiance.

        3. Double-cliquez sur le fichier AppImage téléchargé. AppImageLauncher vous proposera d'intégrer l'application dans votre système.

        4. Suivez les instructions pour terminer le processus d'intégration.

        5. Une fois intégrée, vous pouvez lancer l'application depuis votre menu d'applications ou en double-cliquant sur le fichier AppImage.
        </Steps>
    </TabItem>
</Tabs>

## Configuration de l'accès aux partages Samba

Samba est une réimplémentation logicielle libre du protocole réseau SMB. Pour vous connecter à votre serveur Samba, une configuration utile a été mise à disposition des utilisateurs de CachyOS, mais elle nécessite de modifier la configuration de votre serveur Samba.

### Installation et utilisation du fichier smb.conf de CachyOS

Pour utiliser le fichier smb.conf pratique, installez d'abord un paquet spécifique qui fournit le fichier smb.conf requis. Ensuite, remplacez le smb.conf existant de votre serveur par ce fichier et reconfigurez vos volumes partagés.

:::note[Ce guide suppose que vous avez déjà un serveur Samba fonctionnel]
:::

<Steps>
    1. Créez une sauvegarde de votre fichier `smb.conf` original, généralement situé à `/etc/samba/smb.conf` sur les systèmes Linux.
    2. Installez le paquet des paramètres Samba de CachyOS sur votre machine client :
        ```sh
        sudo pacman -S cachyos-samba-settings
        ```
    3. Copiez le `smb.conf` de votre machine client vers le serveur Samba.
    4. Ouvrez et modifiez le fichier pour ajouter vos répertoires partagés, imprimantes, etc.
    5. Redémarrez le service Samba sur votre serveur :
        ```sh
        sudo systemctl restart --now samba
        ```
    6. Sur la machine client, accédez à vos ressources partagées via votre gestionnaire de fichiers (par ex., `smb://<ip_de_votre_serveur>/<nom_du_partage>`).

        Si tout est configuré correctement, vos identifiants de connexion vous seront demandés. N'oubliez pas de sélectionner l'option pour enregistrer vos informations de connexion si vous le souhaitez.
</Steps>
