[Brouillon] Calculate : Gérer ses logiciels
Table des matières
http://www.calculate-linux.org/main/en/optimization_of_system
https://wiki.gentoo.org/wiki/Profile
Pour rechercher les versions de logiciel qu'il est possible d'installer on utilise la commande eix:
Et sans la question
Si le logiciel est une dépendance* et qu'on ne souhaite pas qu'il soit noté comme installé manuellement :
*ne figure pas dans /var/lib/portage/world
Via l'application
Sinon, on doit enchainer toutes ces commandes sous Gentoo
En cas d'interruption de mise à jour, d'optimisation, tel emerge -e world ou emerge -quD world il est possible de reprendre le travail là où il s'est arrêté:
Pour installer les dernières versions de logiciels qui sont archtildées (en jaune dans la console via la recherche eix), renseigner le fichier /etc/portage/package.keywords/custom
Pour une version spécifique du logiciel :
Pour toutes les versions :
Masquer un paquet va empêcher son installation.
Tout se passe dans le fichier /etc/portage/package.mask/custom
Pour empêcher l'installation des versions supérieures à 2.2 de Zabbix, j'indique dedans :
Si non veut masquer toute la branche 5.6 de PHP :
system : système de base gentoo
world : logiciels (/var/lib/portage/world)
http://gpo.zugaina.org/Overlays/
Remarque : le paquet doit être installé :
Vous avez un paquet installé, mais non référencé dans le world ? Il ne sera jamais mis à jour, et il se peut que d'autres compilations échouent.
Pour ajouter le paquet, utiliser l'option --noreplace
Sous Calculate Linux, on travaille avec des modèles. Si on souhaite modifier par exemple le fichier de config de GRUB, ne pas modifier le fichier /etc/default/grub mais créer le fichier modèle ayant le même nom mais finissant par .clt (Exemple : /etc/default/grub.clt On peut copier le grub en grub.clt)
Modifier ensuite ce qu'on veut dans ce fichier .clt puis mettre à jour les fichiers de configuration :
dispatch-conf -f
Ensuite, appeler la commande cl-XX qui utilise ce fichier.
Les différences sont affichées à l'écran et on applique les modifications avec u.
Exemple :
Vérifier que MAKEOPTS = nb de cores + 1
On peut ajouter un FTP autre que celui par défaut (plus proche de chez nous). Exemple sur ma CLD (KDE donc, en 64bits)
Voir les variables d'environnement :
Si on veut limiter la bande passante lors des installations de mises à jour (petites connexions) on peut réécrire la variable dans le make.conf (exemple ici avec une limite à 20ko/s) :
On peut (si on n'est pas en profil binaire) forcer l'installation des paquets en français uniquement:
Pour faire démarrer bumblebee par exemple au démarrage de la machine, saisir:
Pour le retirer du démarrage:
LA commande ci-dessous permet de voir quels services sont actifs au démarrage de la machine (default)
Pour lancer automatiquement des modules au démarrage de la machine, éditer le fichier /etc/conf.d/modules et y ajouter dans la ligne non commentée les modules séparés par un espace:
Exemple avec mon fichier dans lequel j'ai ajouté les 3 modules virtualbox:
En cas de MàJ du noyau: (voir avec XK ?)
Voir son profil (c'est l'étoile qui est notre profil actuel)
Binary = paquets déjà précompilés => Install rapide.
amd64 = paquets sources compilés sur la machine => Install lente.
Définir un profile (ex le n° 15):
- Boite a liens
- Gérer les logiciels
- Avoir des infos sur un paquet installé
- Recherche de logiciels
- Installer un logiciel
- Tester l'installation d'un logiciel (vérifier les dépendances)
- Supprimer un logiciel
- Mettre à jour un logiciel
- Mettre à jour son système
- Reprendre un emerge interrompu
- Installer des applications archtildées
- Masquer un paquet
- Conserver les USEFLAG spécifiques
- Tout recompiler les paquets
- Ajouter un dépot (overlay)
- Avoir connaissance de la signification d'u USEFLAG
- Savoir dans quel paquet se trouve un fichier
- Enregistrer un paquet dans le world file
- Mettre à jour un fichier de configuration
- Configurer son make.conf dès l'installation
- Régler le timezone et l'horloge
- Services
- Modules
- Profiles
Boite a liens
http://www.calculate-linux.org/main/en/optimization_of_system
https://wiki.gentoo.org/wiki/Profile
Gérer les logiciels
Avoir des infos sur un paquet installé
Code BASH :
eix <nom du paquet>
Recherche de logiciels
Pour rechercher les versions de logiciel qu'il est possible d'installer on utilise la commande eix:
Code BASH :
adrien@calculate ~ $ eix firefox * www-client/firefox Available versions: 10.0.6 10.0.7 10.0.9 10.0.10 10.0.11 (~)17.0.1 {+alsa bindist custom-cflags custom-optimization +dbus debug gstreamer +ipc +jit libnotify +minimal pgo selinux startup-notification system-sqlite +webm wifi LINGUAS="af ak ar as ast be bg bn_BD bn_IN br bs ca cs csb cy da de el en_GB en_ZA eo es_AR es_CL es_ES es_MX et eu fa fi fr fy_NL ga_IE gd gl gu_IN he hi_IN hr hu hy_AM id is it ja kk km kn ko ku lg lt lv mai mk ml mr nb_NO nl nn_NO nso or pa_IN pl pt_BR pt_PT rm ro ru si sk sl son sq sr sv_SE ta ta_LK te th tr uk vi zh_CN zh_TW zu"} Homepage: http://www.mozilla.com/firefox Description: Firefox Web Browser
Installer un logiciel
Code BASH :
emerge -avq logiciel
Et sans la question
Code BASH :
emerge -vq logiciel
Tester l'installation d'un logiciel (vérifier les dépendances)
Code BASH :
emerge -pv logiciel
Supprimer un logiciel
Code BASH :
emerge -C logiciel
Mettre à jour un logiciel
Code BASH :
emerge -u logiciel
Si le logiciel est une dépendance* et qu'on ne souhaite pas qu'il soit noté comme installé manuellement :
Code BASH :
emerge -1u logiciel
*ne figure pas dans /var/lib/portage/world
Mettre à jour son système
Via l'application
Code BASH :
cl-update
Sinon, on doit enchainer toutes ces commandes sous Gentoo
Code BASH :
#Synchronisation de portage et overlays : eix-sync #Facultatif emerge -1qvu sys-apps/portage app-portage/portage-utils #facultatif emerge -1qvu sys-devel/gcc #Facultatif emerge -1qvu dev-lang/python #Facultatif python-updater #MaJ du système emerge -aquvDN --with-bdeps=y world #Que si MAJ de perl perl-cleaner -q --modules #Suppression des paquets orphelins emerge -aqc #Que si kernel installé emerge -q @module-rebuild #Recompilation des dépendances revdep-rebuild -iq #Nettoyage des archives (facultatif) eclean-dist eclean-pkg
Reprendre un emerge interrompu
En cas d'interruption de mise à jour, d'optimisation, tel emerge -e world ou emerge -quD world il est possible de reprendre le travail là où il s'est arrêté:
Code BASH :
emerge -r
Installer des applications archtildées
Pour installer les dernières versions de logiciels qui sont archtildées (en jaune dans la console via la recherche eix), renseigner le fichier /etc/portage/package.keywords/custom
Pour une version spécifique du logiciel :
Code :
=www-client/firefox-17.0.1
Pour toutes les versions :
Code :
www-client/firefox
Masquer un paquet
Masquer un paquet va empêcher son installation.
Tout se passe dans le fichier /etc/portage/package.mask/custom
Pour empêcher l'installation des versions supérieures à 2.2 de Zabbix, j'indique dedans :
Code BASH :
>net-analyzer/zabbix-2.1
Si non veut masquer toute la branche 5.6 de PHP :
Code BASH :
dev-lang/php:5.6
Conserver les USEFLAG spécifiques
Code BASH :
echo "sys-kernel/calculate-sources -minimal" >> /etc/portage/package.use/custom
Tout recompiler les paquets
Code BASH :
emerge -e system && emerge -e world
system : système de base gentoo
world : logiciels (/var/lib/portage/world)
Ajouter un dépot (overlay)
http://gpo.zugaina.org/Overlays/
Code BASH :
layman -a nom-overlay
Avoir connaissance de la signification d'u USEFLAG
Code BASH :
equery u pbzip2 [ Legend : U - final flag setting for installation] [ : I - package is installed with flag ] [ Colors : set, unset ] * Found these USE flags for app-arch/pbzip2-1.1.8: U I - - static : !!do not set this during bootstrap!! Causes binaries to be statically linked instead of dynamically - - symlink : Install symlinks which override app-arch/bzip2 implementation
Savoir dans quel paquet se trouve un fichier
Remarque : le paquet doit être installé :
Code BASH :
equery b $(which gpg2) * Searching for /usr/bin/gpg2 ... app-crypt/gnupg-2.0.25 (/usr/bin/gpg2)
Enregistrer un paquet dans le world file
Vous avez un paquet installé, mais non référencé dans le world ? Il ne sera jamais mis à jour, et il se peut que d'autres compilations échouent.
Pour ajouter le paquet, utiliser l'option --noreplace
Code BASH :
emerge --noreplace app-emulation/virtualbox Local copy of remote index is up-to-date and will be used. Calculating dependencies... done! >>> Recording app-emulation/virtualbox in "world" favorites file... >>> Auto-cleaning packages... >>> No outdated packages were found on your system.
Mettre à jour un fichier de configuration
Sous Calculate Linux, on travaille avec des modèles. Si on souhaite modifier par exemple le fichier de config de GRUB, ne pas modifier le fichier /etc/default/grub mais créer le fichier modèle ayant le même nom mais finissant par .clt (Exemple : /etc/default/grub.clt On peut copier le grub en grub.clt)
Modifier ensuite ce qu'on veut dans ce fichier .clt puis mettre à jour les fichiers de configuration :
dispatch-conf -f
Ensuite, appeler la commande cl-XX qui utilise ce fichier.
Les différences sont affichées à l'écran et on applique les modifications avec u.
Exemple :
Code BASH :
cl-setup-boot * On configure les paramètres d'amorçage ... * Creating Host-Only initramfs ... * Host-Only initramfs has been created * Configuring the grub --- /etc/default/grub 2015-07-25 10:20:11.224213906 +0200 +++ /etc/default/._cfg0000_grub 2015-07-25 10:20:32.218213023 +0200 @@ -1,5 +1,5 @@ #------------------------------------------------------------------------------ -# Modified Calculate-core 3.3.2.7 +# Modified Calculate-core 3.3.3.7 # Processed template files: # /var/lib/layman/calculate/profiles/templates/3.3/2_ac_install_merge/sys-boot/grub/default.grub # /var/lib/layman/calculate/profiles/templates/3.3/3_ac_install_live/1-merge/sys-boot/grub/new-3.3.1-splashutils/default.grub.default @@ -70,7 +70,7 @@ #GRUB_DISABLE_RECOVERY=true GRUB_DISABLE_RECOVERY=true GRUB_DEFAULT=saved -GRUB_TIMEOUT=10 +GRUB_TIMEOUT=2 GRUB_GFXMODE="1024x768" GRUB_BACKGROUND="/boot/grub/grub-calculate.png" GRUB_COLOR_NORMAL="white/black" * (1 of 1) -- /etc/default/grub Sélectionnez une action de configuration : (Supprimer le nouveau[z]/Utiliser le nouveau[u]/Suivant[n]): * Installation du chargeur d'amorçage ... [ ok ] * Changement d'ordonnanceur d'E/S ... [ ok ] * Les paramètres d'amorçage ont bien été configurés !
Configurer son make.conf dès l'installation
Vérifier que MAKEOPTS = nb de cores + 1
Code :
MAKEOPTS="-j9"
On peut ajouter un FTP autre que celui par défaut (plus proche de chez nous). Exemple sur ma CLD (KDE donc, en 64bits)
Code :
PORTAGE_BINHOST="ftp://download.asso-linux-online.fr/download/calculate/CLD/grp/x86_64"
Voir les variables d'environnement :
Code BASH :
adrien@oxygen ~ $ portageq envvar FETCHCOMMAND wget -t 3 -T 60 --passive-ftp -O "${DISTDIR}/${FILE}" "${URI}"
Si on veut limiter la bande passante lors des installations de mises à jour (petites connexions) on peut réécrire la variable dans le make.conf (exemple ici avec une limite à 20ko/s) :
Code BASH :
FETCHCOMMAND="wget --limit-rate=20k -t 3 -T 60 --passive-ftp -O \${DISTDIR}/\${FILE} \${URI}"
On peut (si on n'est pas en profil binaire) forcer l'installation des paquets en français uniquement:
Code :
LINGUAS="fr"
Régler le timezone et l'horloge
Code BASH :
calculate adrien # date dim. janv. 20 16:45:48 UTC 2013 calculate adrien # cp /usr/share/zoneinfo/Europe/Paris /etc/localtime calculate adrien # echo "Europe/Paris" > /etc/timezone calculate adrien # date dim. janv. 20 17:46:46 CET 2013
Services
Pour faire démarrer bumblebee par exemple au démarrage de la machine, saisir:
Code BASH :
rc-update add bumblebee default
Pour le retirer du démarrage:
Code BASH :
rc-update del bumblebee default
LA commande ci-dessous permet de voir quels services sont actifs au démarrage de la machine (default)
Code BASH :
rc-update -v
Modules
Pour lancer automatiquement des modules au démarrage de la machine, éditer le fichier /etc/conf.d/modules et y ajouter dans la ligne non commentée les modules séparés par un espace:
Exemple avec mon fichier dans lequel j'ai ajouté les 3 modules virtualbox:
Code BASH :
modules_3="acpi-cpufreq cpufreq_conservative cpufreq_powersave cpufreq_userspace mperf speedstep-lib vboxdrv vboxnetflt vboxnetadp"
En cas de MàJ du noyau: (voir avec XK ?)
Code BASH :
genkernel --oldconfig all
Profiles
Voir son profil (c'est l'étoile qui est notre profil actuel)
Code BASH :
eselect profile list <sortie ommise> [15] calculate:calculate/desktop/CLD/amd64 * [16] calculate:calculate/desktop/CLD/amd64/binary <sortie ommise>
Binary = paquets déjà précompilés => Install rapide.
amd64 = paquets sources compilés sur la machine => Install lente.
Définir un profile (ex le n° 15):
Code BASH :
eselect profile set 15