diff options
-rw-r--r-- | meta/classes/useradd-staticids.bbclass | 36 |
1 files changed, 16 insertions, 20 deletions
diff --git a/meta/classes/useradd-staticids.bbclass b/meta/classes/useradd-staticids.bbclass index 0e855e91c7..df4902ee9a 100644 --- a/meta/classes/useradd-staticids.bbclass +++ b/meta/classes/useradd-staticids.bbclass | |||
@@ -110,30 +110,26 @@ def update_useradd_static_config(d): | |||
110 | uaargs.groupname = uaargs.LOGIN if user_group else uaargs.gid | 110 | uaargs.groupname = uaargs.LOGIN if user_group else uaargs.gid |
111 | uaargs.groupid = field[3] or uaargs.gid or uaargs.groupname | 111 | uaargs.groupid = field[3] or uaargs.gid or uaargs.groupname |
112 | 112 | ||
113 | if not uaargs.gid or uaargs.gid != uaargs.groupid: | 113 | if uaargs.groupid and uaargs.gid != uaargs.groupid: |
114 | if (uaargs.groupid and uaargs.groupid.isdigit()) and (uaargs.groupname and uaargs.groupname.isdigit()) and (uaargs.groupid != uaargs.groupname): | 114 | newgroup = None |
115 | if not uaargs.groupid.isdigit(): | ||
116 | # We don't have a group number, so we have to add a name | ||
117 | bb.debug(1, "Adding group %s!" % uaargs.groupid) | ||
118 | newgroup = "%s %s" % (' --system' if uaargs.system else '', uaargs.groupid) | ||
119 | elif uaargs.groupname and not uaargs.groupname.isdigit(): | ||
120 | # We have a group name and a group number to assign it to | ||
121 | bb.debug(1, "Adding group %s (gid %s)!" % (uaargs.groupname, uaargs.groupid)) | ||
122 | newgroup = "-g %s %s" % (uaargs.groupid, uaargs.groupname) | ||
123 | else: | ||
115 | # We want to add a group, but we don't know it's name... so we can't add the group... | 124 | # We want to add a group, but we don't know it's name... so we can't add the group... |
116 | # We have to assume the group has previously been added or we'll fail on the adduser... | 125 | # We have to assume the group has previously been added or we'll fail on the adduser... |
117 | # Note: specifying the actual gid is very rare in OE, usually the group name is specified. | 126 | # Note: specifying the actual gid is very rare in OE, usually the group name is specified. |
118 | bb.warn("%s: Changing gid for login %s from (%s) to (%s), verify configuration files!" % (d.getVar('PN', True), uaargs.LOGIN, uaargs.groupname, uaargs.gid)) | 127 | bb.warn("%s: Changing gid for login %s to %s, verify configuration files!" % (d.getVar('PN', True), uaargs.LOGIN, uaargs.groupid)) |
119 | elif (uaargs.groupid and not uaargs.groupid.isdigit()) and uaargs.groupid == uaargs.groupname: | 128 | |
120 | # We don't have a number, so we have to add a name | 129 | uaargs.gid = uaargs.groupid |
121 | bb.debug(1, "Adding group %s!" % (uaargs.groupname)) | 130 | uaargs.user_group = None |
122 | uaargs.gid = uaargs.groupid | 131 | if newgroup: |
123 | uaargs.user_group = None | ||
124 | groupadd = d.getVar("GROUPADD_PARAM_%s" % pkg, True) | ||
125 | newgroup = "%s %s" % (' --system' if uaargs.system else '', uaargs.groupname) | ||
126 | if groupadd: | ||
127 | d.setVar("GROUPADD_PARAM_%s" % pkg, "%s ; %s" % (groupadd, newgroup)) | ||
128 | else: | ||
129 | d.setVar("GROUPADD_PARAM_%s" % pkg, newgroup) | ||
130 | elif uaargs.groupname and (uaargs.groupid and uaargs.groupid.isdigit()): | ||
131 | # We have a group name and a group number to assign it to | ||
132 | bb.debug(1, "Adding group %s gid (%s)!" % (uaargs.groupname, uaargs.groupid)) | ||
133 | uaargs.gid = uaargs.groupid | ||
134 | uaargs.user_group = None | ||
135 | groupadd = d.getVar("GROUPADD_PARAM_%s" % pkg, True) | 132 | groupadd = d.getVar("GROUPADD_PARAM_%s" % pkg, True) |
136 | newgroup = "-g %s %s" % (uaargs.gid, uaargs.groupname) | ||
137 | if groupadd: | 133 | if groupadd: |
138 | d.setVar("GROUPADD_PARAM_%s" % pkg, "%s ; %s" % (groupadd, newgroup)) | 134 | d.setVar("GROUPADD_PARAM_%s" % pkg, "%s ; %s" % (groupadd, newgroup)) |
139 | else: | 135 | else: |