Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[Ebuild] Maintenance ebuild daemon argononed
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index French
View previous topic :: View next topic  
Author Message
jaypeche
Apprentice
Apprentice


Joined: 13 Jun 2007
Posts: 173
Location: France

PostPosted: Sat Apr 22, 2023 7:43 pm    Post subject: [Ebuild] Maintenance ebuild daemon argononed Reply with quote

Bonjour à tous,

Je possède un boitier Argon One M2 dont je suis très satisfait. Pour "monitorer" le système de ventilation, il existe le projet GitLab argononed qui permet de faire tourner un démon surveillant la température CPU et déclencher au besoin le système de refroidissement. Un hystéresis 50-55-60° permet de maintenir le Pi4 à une température raisonnable.

Le projet est disponible içi : https://gitlab.com/DarkElvenAngel/argononed

Par souçi d'automatisation et de portabilité, je souhaite mettre au point un ebuild pour faciliter la configuration et l'installation du démon argononed.
Je mettrai ensuite en ligne l'ebuild pour le rendre publique via mon serveur web gentoo (hébergé lui même sur la Pi4)

J'ai réussi une installation from scratch, en patchant les sources pour Gentoo, et le démon argononed rempli très bien son rôle, il est par ailleurs très stable.

Je suis confronté à un problème de permissions, au moment du src_install(). Cf logs : https://gist.github.com/jaypeche/9f47971cdabc0f4ac6b466abaaaf8f82

L'ébauche de mon script ebuild ressemble à ceçi pour le moment : https://gist.github.com/jaypeche/c63827b2d45e9f8ea75efdd2961a9201
emerge --info : https://gist.github.com/jaypeche/b58dbd4e84aacc1cd8a2ad047ab90101

Auriez-vous une idée pour le problème SANDBOX ACCESS VIOLATION SUMMARY ?

En vous remerciant.
_________________
:-) Gentoo Linux Rullez !
Back to top
View user's profile Send private message
netfab
Veteran
Veteran


Joined: 03 Mar 2005
Posts: 1897
Location: 127.0.0.1

PostPosted: Sat Apr 22, 2023 8:55 pm    Post subject: Reply with quote

Salut,

Les scripts de configuration/installation de ce logiciel semblent être des scripts écrits à la main. Tous les paths d'installation sont harcodés :
Quote:

ifndef OVERRIDE_INSTALL_DAEMON
.PHONY: install-daemon
install-daemon:
@echo -n "Installing daemon "
@$(INSTALL) build/$(BIN_DAEMON) /usr/sbin/$(BIN_DAEMON) 2>/dev/null && echo "Successful" || { echo "Failed"; true; }
ifeq ($(LOGROTATE),1)
@$(INSTALL) -m 600 OS/_common/argononed.logrotate /etc/logrotate.d/argononed
endif
endif

emerge ne t'autorisera pas à modifier ton système directement de cette façon, d'où le SANDBOX ACCESS VIOLATION SUMMARY.
Normalement au moment de la configuration du paquet tu dois appeler la fonction econf qui fixe pour toi les répertoires par défaut pour une installation propre sur ton système, en passant de façon transparente par un répertoire miroir d'installation (EPREFIX).
Mais ici çà ne fonctionnera pas, puisque tout est hardcodé dans le makefile : les scripts fournis ne sont pas prévus pour être exécutés par un package manager.

Tu as donc deux options :
1 - exécuter en root de façon manuelle les scripts de configuration/installation fournis, en priant que ces scripts ne fassent pas n'importe quoi. Donc pas d'ebuild.
2 - si tu veux absolument écrire un ebuild, tu vas devoir décortiquer le contenu des scripts de configuration et d'installation et tout installer manuellement depuis l'ebuild.


Last edited by netfab on Mon Apr 24, 2023 5:09 pm; edited 1 time in total
Back to top
View user's profile Send private message
jaypeche
Apprentice
Apprentice


Joined: 13 Jun 2007
Posts: 173
Location: France

PostPosted: Sat Apr 22, 2023 9:12 pm    Post subject: Reply with quote

Slt @netfab !

Je me doutais que la conception des scripts (principalement pour prendre en charge un maximum d'OS via package.sh), me causerait certainement des soucis.

Ton explication est des plus claire, je regrette juste de ne pas pouvoir passer les PATHs à portage via econf, ca aurait été trop beau.

Du coup, il va falloir que je m'accorde un peu de temps pour gérer src_install() à la main ! C'est effectivement assez laborieux !

Penses-tu que je puisse me cantonner uniquement à src_install() pour pouvoir fusionner les fichiers dans le système ?

J'ai remarqué aussi CONFIG_PROTECT="/boot/config.txt ...".

Penses tu que ce soit problématique car les scripts doivent modifier ce fichier de boot pour y ajouter, les parametres i2c ?

Merci pour ta réponse claire et concise. :idea:
_________________
:-) Gentoo Linux Rullez !
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index French All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum