diff options
-rw-r--r-- | conf/checksums.ini | 4 | ||||
-rw-r--r-- | recipes/sudo/files/sudo.pamd | 7 | ||||
-rw-r--r-- | recipes/sudo/sudo-enable-wheel-group.bb | 20 | ||||
-rw-r--r-- | recipes/sudo/sudo.inc | 23 | ||||
-rw-r--r-- | recipes/sudo/sudo_1.7.2p1.bb | 19 |
5 files changed, 67 insertions, 6 deletions
diff --git a/conf/checksums.ini b/conf/checksums.ini index fa8d4b90c2..a2878cec22 100644 --- a/conf/checksums.ini +++ b/conf/checksums.ini @@ -24898,6 +24898,10 @@ sha256=64331bda459e984b8d369b449eec89daa2f3cd288186f1d2a9ad8011badd4dad md5=b29893c06192df6230dd5f340f3badf5 sha256=56f7d86032538a4a98d90af3742903a09ba16d6db82b593e4a47605f87fa581a +[http://ftp.sudo.ws/sudo/dist/sudo-1.7.2p1.tar.gz] +md5=4449d466a774f5ce401c9c0e3866c026 +sha256=34d11a1dd8bace0885f55b4c8bddda1da29993ff8d7174099e25bd80db1eaf7f + [http://dev.laptop.org/pub/sugar/sources/sugar/sugar-0.82.0.tar.bz2] md5=1f26fa4aee57469a0636a70649343fb3 sha256=ca4c614e09371a986ca5d86065fc697f7eb07b2064a6a2cad541755df0135883 diff --git a/recipes/sudo/files/sudo.pamd b/recipes/sudo/files/sudo.pamd new file mode 100644 index 0000000000..c22c794c21 --- /dev/null +++ b/recipes/sudo/files/sudo.pamd @@ -0,0 +1,7 @@ +#%PAM-1.0 + +auth include common-auth +account include common-account + +session required pam_permit.so +session required pam_limits.so diff --git a/recipes/sudo/sudo-enable-wheel-group.bb b/recipes/sudo/sudo-enable-wheel-group.bb new file mode 100644 index 0000000000..b281ddb09d --- /dev/null +++ b/recipes/sudo/sudo-enable-wheel-group.bb @@ -0,0 +1,20 @@ +PR = "r0" + +RDEPENDS = "sudo" + +ALLOW_EMPTY_${PN} = "1" +PACKAGE_ARCH = "all" + +# Edit sudoers to allow the use of the wheel group and non root users to mount/shutdown etc. +# Please consider this when using. + +pkg_postinst() { +#!/bin/sh +mkdir -p $D${sysconfdir}/ +touch $D${sysconfdir}/sudoers +sed -i /# %wheel/d $D${sysconfdir}/sudoers +echo '%wheel ALL=(ALL) ALL' >> $D${sysconfdir}/sudoers +sed -i /# %users/d $D${sysconfdir}/sudoers +echo '%users ALL=/sbin/mount /cdrom,/sbin/umount /cdrom' >> $D${sysconfdir}/sudoers +echo '%users localhost=/sbin/shutdown -h now' >> $D${sysconfdir}/sudoers +} diff --git a/recipes/sudo/sudo.inc b/recipes/sudo/sudo.inc index 0dfb22ba8a..2bb0d72836 100644 --- a/recipes/sudo/sudo.inc +++ b/recipes/sudo/sudo.inc @@ -3,19 +3,30 @@ administrator to give certain users (or groups of \ users) the ability to run some (or all) commands \ as root while logging all commands and arguments." LICENSE = "sudo" -HOMEPAGE = "http://www.courtesan.com/sudo/" +HOMEPAGE = "http://www.sudo.ws/" PRIORITY = "optional" SECTION = "admin" inherit autotools -EXTRA_OECONF = "--with-editor=/bin/vi --with-env-editor" +EXTRA_OECONF += "--with-editor=/bin/vi --with-env-editor --with-all-insults " do_configure_prepend () { - rm -f acsite.m4 - if [ ! -e acinclude.m4 ]; then - cat aclocal.m4 > acinclude.m4 - fi + # Make sure the build does not get clever. + export sudo_cv_uid_t_len=10 + export sudo_cv_func_unsetenv_void=no + + # Prevent binaries from being stripped. + sed -i 's/\($(INSTALL).*\) -s \(.*[(sudo|visudo)]\)/\1 \2/g' Makefile.in + + rm -f acsite.m4 + if [ ! -e acinclude.m4 ]; then + cat aclocal.m4 > acinclude.m4 + fi +} + +do_configure() { + oe_runconf } pkg_postinst() { diff --git a/recipes/sudo/sudo_1.7.2p1.bb b/recipes/sudo/sudo_1.7.2p1.bb new file mode 100644 index 0000000000..bfa8afe650 --- /dev/null +++ b/recipes/sudo/sudo_1.7.2p1.bb @@ -0,0 +1,19 @@ +PR = "r3" + +DEPENDS = "libpam" +RDEPENDS = "libpam libpam-meta" + +SRC_URI = "http://ftp.sudo.ws/sudo/dist/sudo-${PV}.tar.gz \ + file://sudo.pamd \ +" + +EXTRA_OECONF += " --with-pam " + +require sudo.inc + +# Do in the recipe not the common inc as not all SUDO recipes want PAM support. + +do_install_append() { + install -d ${D}${sysconfdir}/pam.d/ + install -m 0644 ${WORKDIR}/sudo.pamd ${D}${sysconfdir}/pam.d/sudo +} |