Page 1 sur 2

[AUR] makepkg root

Publié : sam. 30 nov. 2013, 15:17
par staskr
Bonjour à tous,

Veuillez m'excuser pour cette question qui va surement vous paraître "idiote" mais bon je dois la poser car elle me tracasse :-)

Je voudrais installer un paquet se situant dans le dépôt AUR, je fait bien ce qu'il est indiqué mais arriver à l'étape ou je dois utiliser la commande makepkg -s , il me dit que je suis pas dans les "sudoers file". Mon réflexe est donc de passer en root et de refaire la commande mais voici qu'il me dit qu'il est très déconseiller de faire cette commande en root.

Ma question est donc :

Faire partie du groupe "root" n'est-il pas la même chose qu'être en root ? Que faire alors ?


Encore désolé pour cette petite question "idiote"

Merci d'avance à tous.

Re: [AUR] makepkg root

Publié : sam. 30 nov. 2013, 15:28
par benjarobin
1) Un utilisateur ne doit surtout pas être dans le groupe root.
2) makepkg ne doit surtout pas être lancé en root.
3) makepkg n'a pas besoin de sudo pour fonctionner, tu as surement mal compris le warning/message

Re: [AUR] makepkg root

Publié : sam. 30 nov. 2013, 15:50
par staskr
benjarobin a écrit :1) Un utilisateur ne doit surtout pas être dans le groupe root.
2) makepkg ne doit surtout pas être lancé en root.
Merci pour la confirmation :D
benjarobin a écrit : 3) makepkg n'a pas besoin de sudo pour fonctionner, tu as surement mal compris le warning/message
Après avoir fait mon tar zxvf et mon cd correctement j'effectue un makepkg -s et voici ce que j'obtiens :

Code : Tout sélectionner

==> Création du paquet ario-svn 468-1 (sam. nov. 30 16:45:43 CET 2013)
==> ATTENTION : L’utilisation de PKGBUILD sans fonction package() est dépréciée.
==> Vérification des dépendances pour l’exécution...
==> Vérification des dépendances pour la compilation...
==> Installation des dépendances manquantes... 
[sudo] password for staskr: 
staskr is not in the sudoers file.  This incident will be reported.
==> ERREUR : « pacman » n’a pas pu installer les dépendances manquantes.
Merci de ton aide (encore une fois :lol: )

Re: [AUR] makepkg root

Publié : sam. 30 nov. 2013, 16:14
par benjarobin
Si tu installes sudo, il faut le configurer...

Re: [AUR] makepkg root

Publié : sam. 30 nov. 2013, 17:14
par cpalui
Moi aussi je me suis posé la même question. Je n'utilise pas sudo, donc il faudrait l'installer uniquement pour ce cas de figure ? De plus, dans la manipulation décrite plus haut (makepkg -s), quelle différence y a-t-il entre un sudoer qui a les droits root et l'utilisateur root?

Re: [AUR] makepkg root

Publié : sam. 30 nov. 2013, 17:24
par benjarobin
makepkg n'a pas besoin de sudo : Je n'ai pas sudo et makepkg fonctionne très bien.
makepkg détecte automatiquement si sudo est installé, et si c'est le cas il utilise "sudo", sinon il utilise une authentification classique à base de "su".

Re: [AUR] makepkg root

Publié : sam. 30 nov. 2013, 17:32
par FoolEcho
cpalui a écrit :Moi aussi je me suis posé la même question. Je n'utilise pas sudo, donc il faudrait l'installer uniquement pour ce cas de figure ?
Non.
makepkg -s, qui est censé construire le paquet, n'a aucunement besoin des droits du superutilisateur (si la compilation hurle un besoin de droits root, c'est que le PKGBUILD est mal fait).
Ces droits ne sont nécessaires que pour installer le paquet (ou des dépendances manquantes).
cpalui a écrit :quelle différence y a-t-il entre un sudoer qui a les droits root et l'utilisateur root?
Aucun en terme de fonctionnalité si tu le configures comme tel.
Mais sudo ne se limite pas à root et les commandes octroyées peuvent aussi être limitées.

Re: [AUR] makepkg root

Publié : sam. 30 nov. 2013, 17:37
par benjarobin
@FoolEcho Attention, makepkg -s (Option -s) peut avoir besoin des droits root pour installer les dépendances manquantes, mais makepkg (sans option) ne devrait jamais avoir besoin de demander des droits root

Re: [AUR] makepkg root

Publié : sam. 30 nov. 2013, 17:42
par staskr
Que dois-je faire alors pour que cela fonctionne alors ?

Re: [AUR] makepkg root

Publié : sam. 30 nov. 2013, 19:03
par benjarobin
Configurer sudo ? Ou supprimer sudo...

Re: [AUR] makepkg root

Publié : sam. 30 nov. 2013, 19:27
par staskr
Et je suppose que le mieux est de le supprimer ?

Merci pour votre aide :-)

Re: [AUR] makepkg root

Publié : sam. 30 nov. 2013, 19:29
par benjarobin
??? Cela dépend de ton besoin... Veux tu utiliser sudo ou pas...

Re: [AUR] makepkg root

Publié : sam. 30 nov. 2013, 19:52
par FoolEcho
benjarobin a écrit :@FoolEcho Attention, makepkg -s (Option -s) peut avoir besoin des droits root pour installer les dépendances manquantes, mais makepkg (sans option) ne devrait jamais avoir besoin de demander des droits root
C'est vrai. :oops:

Re: [AUR] makepkg root

Publié : dim. 01 déc. 2013, 11:47
par Cthulhu
Personnellement je pense qu’il est préférable et plus simple d’utiliser sudo.
Va voir ici pour configurer sudo : http://wiki.archlinux.fr/Sudo.
Comme l’a dit Benjarobin, ce n’est pas makepkg qui requiert les droits superutilisateur, mais Pacman, qui est lui-même invoqué par makepkg (grâce à l’option -s) si ce dernier voit qu’il y a des dépendances à installer.

Après si tu ne veux pas de sudo, tu as la possibilité de faire l’installation en 2 temps : d’abord installer les dépendances manquantes avec Pacman en mode root, puis compiler le paquet avec makepkg en utilisateur normal, avant de repasser en root pour installer le paquet fraîchement compilé avec Pacman.
Mais comme je l’ai dit, je trouve qu’utiliser sudo est plus simple, et raccourci le nombre d’étapes.

Re: [AUR] makepkg root

Publié : dim. 01 déc. 2013, 12:31
par staskr
J'ai autre problème maintenant, j'ai voulu installer le paquet automake mais je me suis trompé de version (j'ai pris une trop ancienne sur le site avant de voir qu'il étais dispo avec pacman ^^). J'aimerais donc l'upgrader mais je ne sais comment m'y prendre.

Voici donc pourquoi j'aimerais l'upgrader car avec un "makepkg -s", on me signale que la version est trop ancienne :

Code : Tout sélectionner

==> Création du paquet ario-svn 468-1 (dim. déc.  1 13:22:14 CET 2013)
==> ATTENTION : L’utilisation de PKGBUILD sans fonction package() est dépréciée.
==> Vérification des dépendances pour l’exécution...
==> Vérification des dépendances pour la compilation...
==> Récupération des sources...
==> Extraction des sources...
==> Suppression du répertoire pkg/ existant...
==> Entre dans l’environnement fakeroot...
==> Lancement de build()...
==> Connecting to the ario SVN server...
Mise à jour de '.' :
À la révision 468.
  -> Local files updated
==> Starting make...

I am testing that you have the tools required to build the
Ario Music Player from Subversion. This test is not foolproof,
so if anything goes wrong, see the file HACKING for more information...

checking for libtool >= 1.5 ... Major version might be too new (2.4.2)
checking for autoconf >= 2.54 ... yes (version 2.69)
checking for automake >= 1.9.6 ... Useless use of /d modifier in transliteration operator at /usr/local/share/automake-1.9/Automake/Wrap.pm line 60.
Too old (version 1.9)
checking for intltool >= 0.35.5 ... yes (version 0.50.2)

Please install/upgrade the missing tools and call me again.

==> ERREUR : Une erreur s’est produite dans build().
    Abandon...

Comment puis-je faire pour l'upgrader ?

Merci d'avance.

Re: [AUR] makepkg root

Publié : dim. 01 déc. 2013, 13:49
par MrMen
Bon la prochaine fois, prends un paquet moins vieux et à jour.
Je viens de tester : pas de moins de 3 fix pour pouvoir compiler dont un plutôt crade.

Pour ton automake-1.9, comment l'as-tu installé ? Supprime le, puis fait un :

Code : Tout sélectionner

yaourt -S automake-1.9
Puis prends ces deux fichiers :
PKGBUILD

Code : Tout sélectionner

# Contributor: Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
# Contributor: Tim Yang <tdy@gmx.com>
# Contributor: Skottish <skottish97215@gmail.com>

pkgname=ario-svn
pkgver=468
pkgrel=1
pkgdesc="A lightweight GTK+ client for MPD and XMMS2 inspired by Rhythmbox."
arch=('i686' 'x86_64')
url="http://ario-player.sourceforge.net/"
license=('GPL')
depends=('avahi' 'curl' 'libglade' 'libsoup>=2.4' 'taglib')
makedepends=('intltool' 'libnotify' 'perl-xml-parser' 'pkgconfig' 'subversion')
provides=('ario')
conflicts=('ario')
options=('!libtool')
source=(patch-notifier.diff)
md5sums=('28ad2066a5952ed3a4c77ed67a4ab8cf')

_svntrunk="https://ario-player.svn.sourceforge.net/svnroot/ario-player/trunk"
_svnmod="ario"

build() {
  cd "${srcdir}"

  msg "Connecting to the $_svnmod SVN server..."
  if [ -d "$_svnmod/.svn" ]; then
    cd $_svnmod && svn up -r $pkgver
    msg2 "Local files updated"
  else
    svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod
    msg2 "SVN checkout done"
  fi

  sed -i 's/glib\/gslist\.h/glib\.h/g' ${srcdir}/ario/src/ario-profiles.h
  cd "${srcdir}/ario/plugins/libnotify"
  patch -p0 < "${srcdir}/patch-notifier.diff"

  rm -rf "${srcdir}/$_svnmod-build"
  cp -r "${srcdir}/$_svnmod" "${srcdir}/$_svnmod-build"
  cd "${srcdir}/$_svnmod-build"

  msg "Starting make..."
  ./autogen.sh --prefix=/usr || return 1
  # passage crade
  sed -i 's/DEPS_LIBS = /DEPS_LIBS = \-lX11 /g' ${srcdir}/ario-build/src/Makefile
  make || return 1
  make DESTDIR="${pkgdir}" install || return 1

  install -dm755 "${pkgdir}/usr/share/pixmaps"
  ln -sf /usr/share/icons/hicolor/48x48/apps/ario.png \
    "${pkgdir}/usr/share/pixmaps/ario.png"
  install -Dm644 data/ario.desktop "${pkgdir}/usr/share/applications/ario.desktop"
}
patch-notifier.diff

Code : Tout sélectionner

--- ario-notifier-libnotify.c	2013-12-01 13:15:37.730033569 +0100
+++ ario-notifier-libnotify.c	2013-12-01 13:16:16.860034313 +0100
@@ -127,7 +127,7 @@
         ARIO_LOG_FUNCTION_START
         notifier_libnotify->priv = ARIO_NOTIFIER_LIBNOTIFY_GET_PRIVATE (notifier_libnotify);
 
-        notifier_libnotify->priv->notification = notify_notification_new ("Ario",  NULL, NULL, NULL);
+        notifier_libnotify->priv->notification = notify_notification_new ("Ario",  NULL, NULL);
 #ifdef ENABLE_EGGTRAYICON--- ario-notifier-libnotify.c	2013-12-01 13:15:37.730033569 +0100
+++ ario-notifier-libnotify.c	2013-12-01 13:16:16.860034313 +0100
@@ -127,7 +127,7 @@
         ARIO_LOG_FUNCTION_START
         notifier_libnotify->priv = ARIO_NOTIFIER_LIBNOTIFY_GET_PRIVATE (notifier_libnotify);
 
-        notifier_libnotify->priv->notification = notify_notification_new ("Ario",  NULL, NULL, NULL);
+        notifier_libnotify->priv->notification = notify_notification_new ("Ario",  NULL, NULL);
 #ifdef ENABLE_EGGTRAYICON
         notify_notification_attach_to_widget (notifier_libnotify->priv->notification, GTK_WIDGET (ario_tray_icon_get_instance ()));
 #else

         notify_notification_attach_to_widget (notifier_libnotify->priv->notification, GTK_WIDGET (ario_tray_icon_get_instance ()));
 #else
et un makepkg devrait faire le boulot.

Re: [AUR] makepkg root

Publié : dim. 01 déc. 2013, 15:55
par staskr
je l'ai installer en le dézippant et en faisant un make install ...

Comment puis-je le supprimer ?

Re: [AUR] makepkg root

Publié : dim. 01 déc. 2013, 16:11
par MrMen
Tu supprimes tous les fichiers installés avec le make install !
Je pense que le sujet a déjà été abordé par ici mais je ne me souviens plus quelle fût la solution.
Tu peux toujours faire un make DESTDIR=/tmp && make install et voir tous les fichiers installés dans /tmp.

Re: [AUR] makepkg root

Publié : dim. 01 déc. 2013, 20:09
par FoolEcho
make uninstall... à condition que l'option existe, bien sûr... sinon désinstaller à la main.

Et pour garder un système propre, toujours passer par un PKGBUILD... (ou à défaut, installer dans /usr/local/ )

Re: [AUR] makepkg root

Publié : dim. 01 déc. 2013, 23:20
par staskr
Merci à tous pour votre aide.

J'ai pensé a faire un :

Code : Tout sélectionner

rm -rf /usr/local/bin/aclocal-1.9 /usr/local/bin/automake-1.9 /usr/local/share/aclocal-1.9 /usr/local/share/automake-1.9 


Qu'en pensez-vous ?