[GNU/Linux] Compiler et construire un paquet sous Debian (et ses dérivées)
Page aide-mémoire pour construire et empaqueter un paquet sous Debian et ses dérivées.
Merci à Philippe Dpt35 et Mothsart de l'équipe de Primtux qui m'ont donné ces renseignements sur le forum ici : https://forum.primtux.fr/viewtopic.php?id=2282.
Source : http://forum.primtux.fr/viewtopic.php?pid=21261#p21261
Informations préalables :
- Bien qu'il soit possible de cross-compiler, c'est-à-dire compiler sous des architectures différentes (par exemple compiler pour des processeurs ARM à partir d'un ordinateur AMD64), c'est très souvent problématique. Aussi si on construit pour des Raspberry Pi, on compilera avec un Raspberry Pi.
- Compiler pour Raspberry Pi OS (anciennement Raspbian) est semblable que compiler pour Debian/Ubuntu même s'il peut y avoir des petites différences.
Exemple pour compiler Xournal++ sous Raspberry Pi OS
Utiliser des Raspberry Pi 4 en tant que clients lourds
PROJET EN COURS mais FONCTIONNEL !
Primtux en utilisation avec des clients lourds n'est pas envisageable tel quel. En effet, il y a un problème avec les comptes utilisateurs. J'ai donc choisi de me baser sur l'interface de l'administrateur car qui peut le plus, peut le moins. Par contre, les utilisateur⋅rice⋅s se connecteront avec leur propres identifiants et disposeront de leur propre dossier /home. Bref, on reprend le principe des clients Éclair. |
ATTENTION : Depuis 2019, LTSP a été ré-écrit afin de prendre en compte les évolutions comme Systemd, Wayland et autres. C'est la version que l'on trouve à partir d'Ubuntu 20.04. De fait, l'ancienne version est dénommée LTSP 5 et on la trouve dans Ubuntu 16.04 et 18.04. Du coup, pour des question de pérennité, il faut faire évoluer la version LTSP5 vers la nouvelle qui au moment de la rédaction de cette page est la LTSP 20. Plus d'info, sur cette page : https://ltsp.org/docs/ppa/
AVERTISSEMENT : La nouvelle version de LTSP ne supporte plus les clients légers dans le sens où les applications ne fonctionnent plus de façon déportée sur le serveur. Ce fonctionnement qu'on trouve dans la version LTSP 5 n'est plus adapté et il est très contraignant en terme de développement ce qui engendre des problèmes non résolus faute de suivi (voir les infos en anglais ici : https://github.com/ltsp/ltsp/discussions/243#discussioncomment-101460). On parlera donc maintenant de clients lourds (ou riches ou fat clients en anglais) dans le sens où les applications fonctionnent localement et que le lien avec le serveur ne sert que pour l'échange de données.
AVERTISSEMENT 2 : Je me suis cassé les dents sur la configuration du réseau pour l'accès à Internet des clients lourds. Faut dire aussi, que j'étais initialement sur un réseau avec proxy, sans serveur DHCP... ce qui a compliqué grandement les choses. En passant sur un réseau simple, sans proxy, avec une box pour la liaison directe avec Internet, les problèmes se sont arrangés. ÉVITER UN RÉSEAU AVEC PROXY ET SANS SERVEUR DHCP !
Sources officielles :
- https://ltsp.org
- https://github.com/ltsp
- https://github.com/ltsp/ltsp/wiki
- Forum de discussion où on peut avoir des infos : https://github.com/ltsp/ltsp/discussions
- Fil de discussion ouvert sur le forum Primtux : https://forum.primtux.fr/viewtopic.php?id=2284
1- Avantages d'un serveur de clients Lourds basé sur le projet LTSP
LibreOffice : Créer des étiquettes avec le publipostage
Voici un tutoriel au format .pdf explicitant comment obtenir des étiquettes ou des cartes de visites dans LibreOffice en utilisant la fonction publipostage (ou mailing) en se basant sur un classeur Calc servant de base de données et un document Writer servant de document maître.
Page où on trouvera des infos sur ce thème : Informations sur le publipostage
Utiliser des Raspberry Pi 3 en tant que clients légers
Avertissement : cette page me servait d'aide-mémoire mais je n'avais pas mis réellement en oeuvre le système décrit ci-dessous (j'étais resté au niveau de tests). Pour avoir une version plus récente et plus avancée sur ce type d'installation, vous pouvez consulter cette page :
Utiliser des Raspberry Pi 4 en tant que clients légers.
Dans notre école, nous utilisons un serveur de clients légers Éclair 2.6.1 couplé à un serveur Amonecole. Ces solutions sont proposées par le pôle EOLE.
Le serveur Éclair permet de faire fonctionner des ordinateurs poussifs (qui auraient fini au mieux en déchetterie) en les soulageant en exécutant le plus gros du travail de traitement. Dès qu'on a une dizaine de postes en réseau, il s'agit là d'une solution "idéale". Elle est très économique et écologique (récupération de machines, les nôtres ont une dizaine d'années), facilite la maintenance (on n'agit que sur le serveur, aucune installation sur les postes, pas de disque dur,...). Malheureusement, elle ne bénéficie pas d'un éclairage/intérêt à la hauteur de tous ses avantages... Quel dommage et quel gâchis...
Au lieu d'utiliser de vieux ordinateurs de récup, il est possible désormais d'envisager d'utiliser des nano-ordinateurs comme le RaspBerry Pi 3. Hors écran, on peut s'équiper pour 80-90 € : RaspBerry Pi 3 Version B (40€ ) , boîtier (6 € ) , carte microSD 8Go (8 € ) , transformateur (6 € ) , clavier/souris USB (15 € ) , câble Hdmi (6 € ) .
Le problème de ces petites machines est qu'elles ne peuvent pas démarrer directement sur le réseau (boot PXE). Heureusement, je viens de découvrir une solution fonctionnelle via le forum [Educ] de l'April (merci à Cyrille Grinner pour ses infos).
[Ubuntu] Intercaler une même page entre toutes les pages d'un PDF
J'ai eu besoin dans un document PDF de plusieurs pages d'intercaler entre toutes les pages une même page pour qu'elle devienne le verso de toutes les pages.
J'ai posé la question sur le forum Ubuntu français et voici une solution basée sur les propositions de Sciensous (merci à lui ou à elle) fonctionnant sous Ubuntu 18.04.
- Mettre dans un même répertoire le document .pdf initial et le pdf de la page à dupliquer pour les verso.
- Lancer le script ci-dessous dans un terminal :
#!/bin/bash set -euo pipefail ceDossier=$(pwd) lesFichiers=("$ceDossier/"*.pdf ) PS3="Choisissez le pdf contenant le verso ou tapez 0 pour sortir : " select file in "${lesFichiers[@]}"; do if [[ $REPLY == "0" ]]; then echo "Au revoir !" >&2 exit elif
[[ -z $file ]]; then echo "Choix erroné, recommencez" >&2 else break fi done echo "Nom du pdf de la page à mettre au verso : $file" fichier="${file##*/}" I="$fichier" for f in *.pdf; do if [[ "$f" != "$I" ]]; then nbPages=$(qpdf --show-npages "$f") p="" x=1 while [ $x -le $nbPages ]; do p="$p A$x B1" x=$((x+1)) done pdftk A="$f" B="$I" cat $p output "${f%%.*}_verso.pdf" fi done echo "Fichier avec les verso créé."
Fonctionnement :
- Il faut indiquer quel est le fichier qui servira pour les verso et c'est tout.
- Le nombre de pages est récupéré par la commande "qpdf".
- Grâce à la condition" if [[ "$f" != "$I" ]]", la fusion n'est pas réalisée sur la page servant pour les verso.
- Le fichier fusionné portera le même nom que le fichier de départ avec la mention "_verso" à la fin de son nom.
[Ubuntu] Renommage de fichiers par lot
Sous Ubuntu 18.04, j'utilise le programme "Metamorphose2" pour renommer des fichiers en masse. Voici un exemple d'utilisation.
EXEMPLE :
Pour rajouter devant les noms de fichiers, le nom du dossier dans lequel ils sont. Ceci m'est utile lorsque je dépose différentes fiches dans des dossiers correspondant à leur école.
Kayak
Liens vers des sites de Kayak :
- OCK, Ornaisons Corbières Kayak, site du club de kayak d'Ornaisons dans le département de l'Aude, près de Lézignan-Corbières : https://ornaisonskayak.com/
- http://www.kayak-univers.com/index.php?categorie=techniques&rubrique=esquimautage
- http://www.kayakpaddling.net/fr/
- https://www.ckc-st-seurin.fr/club-de-kayak/esquimautage/
- http://www.esquimautage-groenlandais.fr/?cat=19
- Vidéo (en anglais) sur l'esquimautage : https://vimeo.com/8747158
- Outil pour cartographier des parcours : https://brouter.de/brouter-web/#map=15/43.2031/2.6045/&profile=river
Page 21 sur 36