Re arrange pmbootstrap_custom_build.md
This commit is contained in:
parent
69093706c2
commit
777d7d3519
1 changed files with 26 additions and 24 deletions
|
@ -13,7 +13,7 @@ tags:
|
||||||
|
|
||||||
## À propos de Postmarket OS
|
## À propos de Postmarket OS
|
||||||
|
|
||||||
[Postmarket OS](https://postmarketos.org/) est une distribution basée sur [Alpine](https://www.alpinelinux.org/) conçut pour fonctionner sur téléphones, tablette
|
[Postmarket OS](https://postmarketos.org/) est une distribution basée sur [Alpine](https://www.alpinelinux.org/) conçut pour fonctionner sur téléphone, tablette
|
||||||
ou sur Raspberry PI.
|
ou sur Raspberry PI.
|
||||||
La communauté autour du projet propose un ensemble d'outils comme `pmbootstrap` qui permet de configurer et d'installer Postmarket OS sur son téléphone.
|
La communauté autour du projet propose un ensemble d'outils comme `pmbootstrap` qui permet de configurer et d'installer Postmarket OS sur son téléphone.
|
||||||
On peut aussi l'utiliser pour compiler son propre paquet et l'installer sur son téléphone facilement.
|
On peut aussi l'utiliser pour compiler son propre paquet et l'installer sur son téléphone facilement.
|
||||||
|
@ -22,46 +22,48 @@ On peut aussi l'utiliser pour compiler son propre paquet et l'installer sur son
|
||||||
|
|
||||||
Avant de pouvoir l'utiliser, il faut d'abord l'installer depuis ce [lien](https://wiki.postmarketos.org/wiki/Pmbootstrap).
|
Avant de pouvoir l'utiliser, il faut d'abord l'installer depuis ce [lien](https://wiki.postmarketos.org/wiki/Pmbootstrap).
|
||||||
|
|
||||||
Une fois installé et configuré, il faut d'abord exécuter les commandes suivantes :
|
Une fois installé et configuré, il faut d'abord préparé son environnement de travail.
|
||||||
|
|
||||||
_Met à jour le repository [pmaports.git](https://wiki.postmarketos.org/wiki/Pmaports.git) cloné en local._
|
_Met à jour le repository [pmaports.git](https://wiki.postmarketos.org/wiki/Pmaports.git) cloné en local._
|
||||||
> Le repo pmaports.git stocke tous les paquets Alpine avec le fichier fichier `APKBUILD` utilisé par le serveur de compilation.
|
|
||||||
>
|
|
||||||
> Le fonctionnement est similaire à `PKGBUILD` pour les utilisateurs de [Archlinux](https://archlinux.org/)
|
|
||||||
>
|
|
||||||
> Ce fichier contient toute la procédure pour préparer les sources, compiler le paquet depuis les sources, le numéro de version
|
|
||||||
> ainsi que la procédure pour vérifier si le paquet fonctionne correctement.
|
|
||||||
> Généralement on utilise les tests du projet comme les tests unitaires ou les tests fonctionnels.
|
|
||||||
```bash
|
```bash
|
||||||
pmbootstrap pull
|
pmbootstrap pull
|
||||||
```
|
```
|
||||||
|
> Le repo pmaports.git stocke tous les paquets Alpine avec le fichier `APKBUILD` utilisé par le serveur de compilation.
|
||||||
|
>
|
||||||
|
> Le fonctionnement est similaire à `PKGBUILD` pour les utilisateurs de [Archlinux](https://archlinux.org/)
|
||||||
|
>
|
||||||
|
> Ce fichier contient toute la procédure pour préparer les sources, compiler le paquet depuis les sources, le numéro de version
|
||||||
|
> ainsi que la procédure pour vérifier si le paquet fonctionne correctement.
|
||||||
|
> Généralement on utilise les tests du projet comme les tests unitaires ou les tests fonctionnels.
|
||||||
|
|
||||||
_Met à jour le cache de la commande APK depuis l'environnement de travail_
|
_Met à jour le cache de la commande APK depuis l'environnement de travail_
|
||||||
> L'environnement de travail se situe par défaut dans le dossier `$HOME/.local/var/pmbootstrap/`
|
|
||||||
```bash
|
```bash
|
||||||
pmbootstrap update
|
pmbootstrap update
|
||||||
```
|
```
|
||||||
|
> L'environnement de travail se situe par défaut dans le dossier `$HOME/.local/var/pmbootstrap/`
|
||||||
|
|
||||||
|
|
||||||
_Supprime le dossier de la commande chroot_
|
_Supprime le dossier de la commande chroot_
|
||||||
> La commande chroot permet de changer la racine Linux.
|
|
||||||
> Par exemple, on peut faire `chroot $HOME/mon_dossier` et à partir de ce moment-là, `/` pointera vers `$HOME/mon_dossier` dans notre shell actuel.
|
|
||||||
>
|
|
||||||
> C'est très utilisé par pmbootstrap pour configurer le système Alpine.
|
|
||||||
> Ça évite de devoir faire une VM ou un container Linux juste pour changer quelque fichier.
|
|
||||||
>
|
|
||||||
> Dans notre cas, il correspond au système pour le téléphone utilisé pour le configuré avant de l'installer ou de le tester sur notre téléphone.
|
|
||||||
>
|
|
||||||
> Par défaut, il se situe dans le dossier `$HOME/.local/var/pmbootstrap/cache_git/pmaports/`
|
|
||||||
```bash
|
```bash
|
||||||
pmbootstrap zap
|
pmbootstrap zap
|
||||||
```
|
```
|
||||||
|
> La commande chroot permet de changer la racine Linux.
|
||||||
|
> Par exemple, on peut faire `chroot $HOME/mon_dossier` et à partir de ce moment-là, `/` pointera vers `$HOME/mon_dossier` dans notre shell actuel.
|
||||||
|
>
|
||||||
|
> C'est très utilisé par pmbootstrap pour configurer le système Alpine.
|
||||||
|
> Ça évite de devoir faire une VM ou un container Linux juste pour changer quelque fichier.
|
||||||
|
>
|
||||||
|
> Dans notre cas, il correspond au système de notre téléphone pour le configuré avant de l'installer ou de le tester sur notre appareil.
|
||||||
|
>
|
||||||
|
> Par défaut, il se situe dans le dossier `$HOME/.local/var/pmbootstrap/cache_git/pmaports/`
|
||||||
|
|
||||||
_[Optionnel] Changer la branche du repo [pmaports.git](https://wiki.postmarketos.org/wiki/Pmaports.git)_
|
_[Optionnel] Changer la branche du repo [pmaports.git](https://wiki.postmarketos.org/wiki/Pmaports.git)_
|
||||||
> `$workdir` par défaut se situe dans le dossier `$HOME/.local/var/pmbootstrap/cache_git/pmaports/`
|
|
||||||
> Exemple de branche utile : `kde-nightly`
|
|
||||||
```bash
|
```bash
|
||||||
git -C $workdir checkout [branch]
|
git -C $workdir checkout [branch]
|
||||||
```
|
```
|
||||||
|
> `$workdir` par défaut se situe dans le dossier `$HOME/.local/var/pmbootstrap/cache_git/pmaports/`
|
||||||
|
>
|
||||||
|
> Exemple de branche utile : `kde-nightly`
|
||||||
|
|
||||||
## Compilation de notre paquet Alpine
|
## Compilation de notre paquet Alpine
|
||||||
|
|
||||||
|
@ -145,13 +147,13 @@ On a les arguments suivants :
|
||||||
> Dans notre cas, la signature ne sera pas valide, car le paquet n'est pas compilé par le mainteneur original donc il suffit de rajouter notre signature.
|
> Dans notre cas, la signature ne sera pas valide, car le paquet n'est pas compilé par le mainteneur original donc il suffit de rajouter notre signature.
|
||||||
|
|
||||||
Pour revenir en arrière, il suffit de taper la commande ci-dessous depuis le téléphone ou depuis la connexion SSH
|
Pour revenir en arrière, il suffit de taper la commande ci-dessous depuis le téléphone ou depuis la connexion SSH
|
||||||
> APK va réinstaller les paquets depuis les repos officiels.
|
|
||||||
```bash
|
```bash
|
||||||
sudo apk upgrade -a
|
sudo apk upgrade -a
|
||||||
```
|
```
|
||||||
|
> APK va réinstaller les paquets depuis les repos officiels.
|
||||||
|
|
||||||
En cas de problème liée à des conflits de fichier, on peut utiliser cette commande
|
En cas de problème liée à des conflits de fichier, on peut utiliser cette commande
|
||||||
> Cette commande va forcer APK à écraser les fichiers en conflit.
|
|
||||||
```bash
|
```bash
|
||||||
sudo apk fix --force
|
sudo apk fix --force
|
||||||
```
|
```
|
||||||
|
> Cette commande va forcer APK à écraser les fichiers en conflit.
|
||||||
|
|
Loading…
Reference in a new issue