summaryrefslogtreecommitdiffstats
path: root/meta/classes/useradd.bbclass
Commit message (Collapse)AuthorAgeFilesLines
* useradd: Handle users from a package being used in othersThomas Fitzsimmons2013-09-061-1/+2
| | | | | | | | | | | | | | | If there is a package A (TUNE_PKGARCH) which is depended upon by B which is MACHINE_ARCH and you build B for machine X, then Y, the user isn't present in the sysroot for machine Y since the useradd code is never triggered. The change ensures the code does get triggered and the user is present. [YOCTO 4739] (From OE-Core rev: 5871337da49f8cd1eaf53f7cd0aacc026dc7bcdb) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: add missing functions to preinstChen Qi2013-08-201-0/+3
| | | | | | | | | | | | | | The preinst scripts are calling bbnote, bbwarn and bbfatal functions, but these functions are not written to the preinst scripts. This patch writes these missing functions to the preinst scripts to avoid the 'not found' errors. (From OE-Core rev: ed45f00ef76d189611cda2cb922fa7eb8f86d9cc) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: fix traceback when inheriting useradd but not setting ↵Ionut Radu2013-07-291-1/+1
| | | | | | | | | | | | | | USERADD_PARAM or GROUPADD_PARAM Replaced bb.build.FuncFailed with bb.fatal [YOCTO #4486] (From OE-Core rev: be6d0f398404e4566d4fac145c745899909117f1) Signed-off-by: Ionut Radu <ionutx.radu@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: add a new base class and code refactorChen Qi2013-07-241-91/+8
| | | | | | | | | | | | | | | | Add a new base class, useradd_base.bbclass, which is mainly a collection of basic functions for user/group settings. The useradd_base.bbclass is intended to be inherited by useradd.bbclass and the extrausers.bbclass to avoid code cuplication. [YOCTO #4074] (From OE-Core rev: 2a57bb7e9a7e154578aa7cb9aeebdf398a54ec00) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: Add members to a groupMikhail Durnev2013-06-281-5/+63
| | | | | | | | | | | | | | useradd.bbclass supports adding new users and new groups. But it does not support adding existing users to existing groups. There is a need of adding users to some groups (e.g. audio). The class was extended to call groupmems utility with arguments passed via GROUPMEMS_PARAM. (From OE-Core rev: 6b3bd34bf8c5e511bccfbb64bdd1236e1e7576e3) Signed-off-by: Mikhail Durnev <mikhail_durnev@mentor.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base/useradd/sstate: Ensure do_package setscene has correct fakeroot ↵Richard Purdie2013-06-071-1/+1
| | | | | | | | | | | | | | | | | dependencies The do_package_setscene task needs to depend on fakeroot in order to correctly install its files. We can whitelist the dependency in the sstate handling code for some performance improvements since we only need this if we're installing the package from sstate. Also use an append operator in base.bbclass for clarity. (From OE-Core rev: 0810ea2a72bdea67a3d8002c4e12fb20f45cf1d5) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd: Use modern join syntaxRichard Purdie2013-05-091-1/+1
| | | | | | | | | string.join() is deprecated syntax and doesn't work under python3 so use the modern sytax instead. (From OE-Core rev: 402d652edf79bcfe1eaf1a3b55ad1177d1e3ee85) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes: Use modern exception raising syntaxRichard Purdie2013-05-091-2/+2
| | | | | | | | | Modern expection rasing syntax is function call format, convert to this to keep python 3 happy and model correct coding style in the core. (From OE-Core rev: f4b382754603d3f1caa13824bcc8d06b568bbc59) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes: replace virtclass-native(sdk) with class-native(sdk)Robert Yang2012-11-021-8/+8
| | | | | | | | | | | | | The overrides virtclass-native and virtclass-nativesdk are deprecated, which should be replaced by class-native and class-nativesdk. [YOCTO #3297] (From OE-Core rev: 9fbeab63315fef0dbcc91c5e7051665764758a6e) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Convert tab indentation in python functions into four-spaceRichard Purdie2012-07-191-43/+43
| | | | | | (From OE-Core rev: 604d46c686d06d62d5a07b9c7f4fa170f99307d8) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: Fix for multilib buildsRichard Purdie2012-07-171-1/+1
| | | | | | | | | | | | | | The class adds a setscene dependency on base-passwd as well as adds this to DEPENDS. The DEPENDS version will be auso-converted to include MLPREFIX whilst the setscene dependency will not. This result in errors about non-existent tasks. This patch ensures MLPREFIX is added when it is needed and fixes various build failures. Whether we should have two base-passwd recipes in a multilib system is a question which would need to be addressed by future changes. (From OE-Core rev: 22dff7f36e985f9f7275b47e874147bc7bdc9473) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Multilib: Fix RDEPENDS in libc-package.bbclass, useradd.bbclass...Zhai Edwin2012-04-161-1/+2
| | | | | | | | | MLPREFIX is needed in RDEPENDS for multilib build (From OE-Core rev: 380efadd5640e5b57e710549b1ae761d0d3b3792) Signed-off-by: Zhai Edwin <edwin.zhai@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: retry useradd/groupadd commands to avoid lock race issuesScott Garman2012-03-231-2/+34
| | | | | | | | | | | | | | | | | | | A race condition can occur when adding users and groups to the passwd and group files, causing errors like the following: ERROR: Function 'useradd_sysroot' failed Tried to access "/etc/group" but this was locked. This fix will cause the useradd code to retry the useradd and groupadd commands up to 10 times (with a 1s sleep in between attempts) before failing. This fixes [YOCTO #1794] (From OE-Core rev: 68c589f1b5ee36f0aff151b728447ffdae14622c) Signed-off-by: Scott Garman <scott.a.garman@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* shadow-sysroot: Fix for multilibZhai Edwin2012-03-081-1/+1
| | | | | | | | | | | | | Fix following error in multilib build: "ERROR: Task do_package_setscene depends upon nonexistant task poky/meta/recipes-extended/shadow/shadow-sysroot_4.1.4.3.bb:do_populate_sysroot_setscene" >From richard.purdie@linuxfoundation.org (From OE-Core rev: 5de2c22fb42c12783abc090a81f10db9eb39732f) Signed-off-by: Zhai Edwin <edwin.zhai@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: override USERADDSETSCENEDEPS to empty when building cross ↵Otavio Salvador2012-02-241-0/+1
| | | | | | | | | packages (From OE-Core rev: 5650eb44ea28c87f2f87ea3c5a557b9f08d58775) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: skip processing on virtclass-cross extended packagesOtavio Salvador2012-02-101-0/+3
| | | | | | | (From OE-Core rev: 4308acbbd43e6b8b37123d95df6675233007dae4) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: Fix missing quoteRichard Purdie2012-01-271-1/+1
| | | | | | (From OE-Core rev: d7b13cd42ab8d5f44f97e119b73ec2e363677d26) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd: Ensure dependencies are only added for target recipes, not native ↵Richard Purdie2012-01-271-1/+4
| | | | | | | | or nativesdk (From OE-Core rev: 63d006b2d3fc2223c74f81b91f70f5c841108c80) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: Add explict setscene dependencies to ensure correct ↵Richard Purdie2012-01-271-0/+2
| | | | | | | | ordering of setscene tasks (From OE-Core rev: ffc7bbcf0011de3f1f6e8d95f1de0b8f7164fa51) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: Ensure pseudo can load in the pseudo unloaded caseRichard Purdie2012-01-271-5/+11
| | | | | | | | | | | | In the do_populate_sysroot_setscene case, pseudo has been unloaded and we need to reload it. This code change ensures all the pseudo options are specified so pseudo loads correctly. It also improves some of the comments so all the different contexts are listed. (From OE-Core rev: 76345cd61c9523ce6755ef8e923dec37800b7a98) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: Execute user addition code before do_package_setscene, not ↵Richard Purdie2012-01-271-2/+2
| | | | | | | | | | | | after do_populate_sysroot_setscene The user addition needs to happen before the do_package files are extracted by do_package_setscene since those are the ones we need to preserve the file ownership information for. This patch ensures this happens. (From OE-Core rev: 34282c1b996ef008384af456735692d66ddabc13) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd: Ensure -native recipes don't depend on target recipesRichard Purdie2011-11-211-0/+3
| | | | | | | | | | | | Without this change, dbus-native can end up depending upon base-passwd for example. This change mirrors the existing nativesdk code. Based on a patch from Henning Heinold <heinold@inf.fu-berlin.de> but with some additions from me. (From OE-Core rev: eba81d1c606ec29ffb793c1cb3cfed9562d552bc) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Convert to use direct access to the data store (instead of bb.data.*Var*())Richard Purdie2011-11-101-4/+4
| | | | | | | | | | | | | | | | | This is the result of running the following over the metadata: sed \ -e 's:bb.data.\(setVar([^,()]*,[^,()]*\), *\([^ )]*\) *):\2.\1):g' \ -e 's:bb.data.\(setVarFlag([^,()]*,[^,()]*,[^,()]*\), *\([^) ]*\) *):\2.\1):g' \ -e 's:bb.data.\(getVar([^,()]*\), *\([^(), ]*\) *,\([^)]*\)):\2.\1,\3):g' \ -e 's:bb.data.\(getVarFlag([^,()]*,[^,()]*\), *\([^(), ]*\) *,\([^)]*\)):\2.\1,\3):g' \ -e 's:bb.data.\(getVarFlag([^,()]*,[^,()]*\), *\([^() ]*\) *):\2.\1):g' \ -e 's:bb.data.\(getVar([^,()]*\), *\([^) ]*\) *):\2.\1):g' \ -i `grep -ril bb.data *` (From OE-Core rev: b22831fd63164c4db9c0b72934d7d734a6585251) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd: Add missing DEPEND on shadowRichard Purdie2011-11-101-1/+1
| | | | | | | | | Without this rootfs generation fails as an RDEPENDS is added but the package might not have bneen built. (From OE-Core rev: bfe70c6446e6686f826f01040ba74c7d7d28bf42) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: do not modify -nativesdk packagesScott Garman2011-11-101-4/+5
| | | | | | | | | | Exclude the addition of user/group code and RDEPENDS changes for -nativesdk packages. (From OE-Core rev: 2f057dd905ccb497890ce73ac4e4c256edcf0351) Signed-off-by: Scott Garman <scott.a.garman@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: only modify packages in USERADD_PACKAGESScott Garman2011-11-101-26/+16
| | | | | | | | | | | | | Previously we injected the user/group preinstall script into all output packages. This fixes that so that only packages listed in USERADD_PACKAGES get modified. It also removes the USERADDPN variable, which is no longer needed. (From OE-Core rev: 2f73466eb5018040a123ccb0e2af8c519525f958) Signed-off-by: Scott Garman <scott.a.garman@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: handle nativesdk caseEric Bénard2011-11-081-3/+9
| | | | | | | | | | | | | | | * without this patch, building dbus-nativesdk leads to a missing dependency on 'base-passwd-nativesdk' This was added by commit 46e6c3fa8034b12d178d605f3f5d7efe69671a13 * this patch handle the nativesdk case in the class useradd * close bug 1702 http://bugzilla.pokylinux.org/show_bug.cgi?id=1702 * v2 from Scott Garman with Richard Purdie's tricks (From OE-Core rev: 140a3507fb5c14cd9bcebe4304f491aa1c5c47a2) Signed-off-by: Eric Bénard <eric@eukrea.com> Signed-off-by: Scott Garman <scott.a.garman@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: fix how RDEPENDS is setupScott Garman2011-11-081-1/+5
| | | | | | | | | | | | Fix bug where only packages named PN included base-passwd in RDEPENDS. This fixes [YOCTO #1727] (From OE-Core rev: 2c55d51afd71d708a54afc8377e10c4f80f810e3) Signed-off-by: Scott Garman <scott.a.garman@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: check if a group already exists manuallyOtavio Salvador2011-10-241-1/+7
| | | | | | | | | | | | The use of groupadd -f makes much more difficult to figure when a group is not add. This was the case of the class not working for our usage and this being caused by the lack of '/etc/group' file but unnoticed as groupadd wasn't failing according. (From OE-Core rev: 82933a1ff921fd0836f03e6f379fd8536cdc0a30) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: use correct value for $D in postinst functionsPhil Blundell2011-09-071-3/+3
| | | | | | | | | | | This corrects the location of the password file used during package installation. See http://lists.linuxtogo.org/pipermail/openembedded-core/2011-September/009183.html and subsequent discussion. (From OE-Core rev: 848bb277769af5b094031aeb54d287c158256724) Signed-off-by: Phil Blundell <philb@gnu.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: remove hardcoded reference to /usr/binPhil Blundell2011-09-021-2/+2
| | | | | | | | | | Otherwise the class doesn't work if ${bindir} is set to a different value; likewise for /var vs ${localstatedir}. (From OE-Core rev: 21371df16917cd82642b39763793783d61ee5516) Signed-off-by: Phil Blundell <philb@gnu.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: new class for managing user/group permissionsScott Garman2011-07-011-0/+156
This class is to be used by recipes that need to set up specific user/group accounts and set custom file/directory permissions. (From OE-Core rev: a82885db00956734922291d8a17eb135461204fa) Signed-off-by: Scott Garman <scott.a.garman@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>