From gitlab at salsa.debian.org Mon Jun 1 04:52:00 2026 From: gitlab at salsa.debian.org (Marc Haber (@zugschlus)) Date: Mon, 01 Jun 2026 03:52:00 +0000 Subject: [Pkg-shadow-devel] [Git][debian/adduser][wip/uidpool] 9 commits: adduser (3.154) unstable; urgency=medium Message-ID: <6a1d01e0b411a_54ca389287372d8@godard.mail> Marc Haber pushed to branch wip/uidpool at Debian / adduser Commits: ef6077b8 by Marc Haber at 2026-01-01T00:00:10+01:00 adduser (3.154) unstable; urgency=medium * The Happy New Year 2026 Release [ Matt Barry ] * add --no-copy-skel option (Closes: #1099633) * document --no-copy-skel * refactor existing_*_ok [ Marc Haber ] * make deluser --group work as documented. * have delgroup reject user-specific command line options. * correctly sanitize names in deluser. Thanks to Dagfinn Ilmari Manns?ker (Closes: #1109329) * update Swedish program and man page translation. Thanks to Daniel Nylander * make adduser error out if --system and account has a password (Closes: #1099734) [dgit import package adduser 3.154] - - - - - 9f51b00a by Marc Haber at 2026-03-28T10:20:53+01:00 prepare release - - - - - da27998e by Marc Haber at 2026-03-28T10:21:10+01:00 fix typo in Portuguese Git-Dch: ignore - - - - - a7de708b by Marc Haber at 2026-03-28T10:16:28+01:00 Declare fast forward from 3.154 [dgit --overwrite] - - - - - 259fed18 by Marc Haber at 2026-06-01T05:51:57+02:00 clarify adduser pool format documentation Git-Dch: ignore - - - - - b979e1ef by Marc Haber at 2026-06-01T05:51:57+02:00 remove trailing slashes from example pool directories Git-Dch: ignore - - - - - 402b47dd by Marc Haber at 2026-06-01T05:51:57+02:00 ignore extra fields at the end of pool file lines - - - - - febb7a47 by Marc Haber at 2026-06-01T05:51:57+02:00 clarify pool file read warnings Git-Dch: ignore - - - - - 87fdeaad by Marc Haber at 2026-06-01T05:51:57+02:00 remove trailing slaehes from pool directories Git-Dch: ignore - - - - - 5 changed files: - AdduserCommon.pm - adduser.conf - debian/NEWS - debian/changelog - doc/adduser.conf.5 Changes: ===================================== AdduserCommon.pm ===================================== @@ -268,11 +268,12 @@ sub read_configfile { # -- a hash for the pool data sub read_pool { my ($pool_file, $type, $poolref) = @_; - my ($name, $id, $comment, $home, $shell); + my ($name, $id, $comment, $home, $shell, $rest); my %ids = (); my %new; $pool_file = decode($charset, $pool_file); + $pool_file =~ s{/?$}{}; if (-d $pool_file) { my $dir; unless( opendir( $dir, $pool_file) ) { @@ -307,10 +308,10 @@ sub read_pool { my $new; if ($type eq "uid") { - ($name, $id, $comment, $home, $shell) = split (/:/); + ($name, $id, $comment, $home, $shell, $rest) = split (/:/); if (!$name || $name !~ /^([_a-zA-Z0-9-]+)$/ || !defined($id) || $id !~ /^(\d+)$/) { - log_warn( mtx("Couldn't parse `%s', line %d."), $pool_file, $.); + log_warn( mtx("Couldn't parse uid line `%s', line %d."), $pool_file, $.); next; } if( defined $name ) { @@ -335,10 +336,10 @@ sub read_pool { 'shell' => $shell }; } elsif ($type eq "gid") { - ($name, $id) = split (/:/); + ($name, $id, $rest) = split (/:/); if (!$name || $name !~ /^([_a-zA-Z0-9-]+)$/ || !defined($id) || $id !~ /^(\d+)$/) { - log_warn( mtx("Couldn't parse `%s', line %d."), $pool_file, $. ); + log_warn( mtx("Couldn't parse gid line `%s', line %d."), $pool_file, $. ); next; } if( defined $name ) { ===================================== adduser.conf ===================================== @@ -49,9 +49,9 @@ # Specify a file or a directory containing UID and GID pool. #UID_POOL=/etc/adduser-pool.conf -#UID_POOL=/etc/adduser-pool.d/ +#UID_POOL=/etc/adduser-pool.d #GID_POOL=/etc/adduser-pool.conf -#GID_POOL=/etc/adduser-pool.d/ +#GID_POOL=/etc/adduser-pool.d #RESERVE_UID_POOL=yes #RESERVE_GID_POOL=yes ===================================== debian/NEWS ===================================== @@ -1,4 +1,4 @@ -adduser (3.155) UNRELEASED; urgency=medium +adduser (3.155) unstable; urgency=medium The GROUPHOMES, LETTERHOMES, SGID_HOME and QUOTAUSER options were depreated for a while and got removed in this release. ===================================== debian/changelog ===================================== @@ -1,4 +1,4 @@ -adduser (3.155) UNRELEASED; urgency=medium +adduser (3.155) unstable; urgency=medium [ Marc Haber ] * remove GROUPHOMES and LETTERHOMES configuration options @@ -24,7 +24,7 @@ adduser (3.155) UNRELEASED; urgency=medium * write test cases to trigger #1125601 * Updated German man page translation. Thanks to Helge Kreutzmann (Closes: #1125135) - * Updated Portguese man page and program translation. + * Updated Portuguese man page and program translation. Thanks to Am?rico Monteiro (Closes: #1118370) * Updated Dutch man page translation. Thanks to Frans Spiesschaert (Closes: #1118209) @@ -33,7 +33,7 @@ adduser (3.155) UNRELEASED; urgency=medium * Add adduser --unlock [--system] and deluser --lock [--system] (Closes: #1008082, #1008083, #1008084) - -- Marc Haber Fri, 27 Mar 2026 21:52:48 +0100 + -- Marc Haber Sat, 28 Mar 2026 10:16:28 +0100 adduser (3.154) unstable; urgency=medium ===================================== doc/adduser.conf.5 ===================================== @@ -203,6 +203,8 @@ shell (ditto). .PP It is possible to use the same file/directory for \fBUID_POOL\fP and \fBGID_POOL\fP. +But you cannot copy lines from \fI/etc/passwd\fP or \fI/etc/group\fP +since pool file lines have less fields. .PP If an account / group is created, \fBadduser\fP(8) searches in all UID/GID pool files View it on GitLab: https://salsa.debian.org/debian/adduser/-/compare/16d381b86a369d7130d791e51a298c07b217f992...87fdeaad272d2aaf353fc6e4fd0fe39b68d0ded1 -- View it on GitLab: https://salsa.debian.org/debian/adduser/-/compare/16d381b86a369d7130d791e51a298c07b217f992...87fdeaad272d2aaf353fc6e4fd0fe39b68d0ded1 You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitlab at salsa.debian.org Mon Jun 1 05:06:37 2026 From: gitlab at salsa.debian.org (Marc Haber (@zugschlus)) Date: Mon, 01 Jun 2026 04:06:37 +0000 Subject: [Pkg-shadow-devel] [Git][debian/adduser][debian/latest] 5 commits: clarify adduser pool format documentation Message-ID: <6a1d054d77311_54c51c32c7378e8@godard.mail> Marc Haber pushed to branch debian/latest at Debian / adduser Commits: 259fed18 by Marc Haber at 2026-06-01T05:51:57+02:00 clarify adduser pool format documentation Git-Dch: ignore - - - - - b979e1ef by Marc Haber at 2026-06-01T05:51:57+02:00 remove trailing slashes from example pool directories Git-Dch: ignore - - - - - 402b47dd by Marc Haber at 2026-06-01T05:51:57+02:00 ignore extra fields at the end of pool file lines - - - - - febb7a47 by Marc Haber at 2026-06-01T05:51:57+02:00 clarify pool file read warnings Git-Dch: ignore - - - - - 87fdeaad by Marc Haber at 2026-06-01T05:51:57+02:00 remove trailing slaehes from pool directories Git-Dch: ignore - - - - - 3 changed files: - AdduserCommon.pm - adduser.conf - doc/adduser.conf.5 Changes: ===================================== AdduserCommon.pm ===================================== @@ -268,11 +268,12 @@ sub read_configfile { # -- a hash for the pool data sub read_pool { my ($pool_file, $type, $poolref) = @_; - my ($name, $id, $comment, $home, $shell); + my ($name, $id, $comment, $home, $shell, $rest); my %ids = (); my %new; $pool_file = decode($charset, $pool_file); + $pool_file =~ s{/?$}{}; if (-d $pool_file) { my $dir; unless( opendir( $dir, $pool_file) ) { @@ -307,10 +308,10 @@ sub read_pool { my $new; if ($type eq "uid") { - ($name, $id, $comment, $home, $shell) = split (/:/); + ($name, $id, $comment, $home, $shell, $rest) = split (/:/); if (!$name || $name !~ /^([_a-zA-Z0-9-]+)$/ || !defined($id) || $id !~ /^(\d+)$/) { - log_warn( mtx("Couldn't parse `%s', line %d."), $pool_file, $.); + log_warn( mtx("Couldn't parse uid line `%s', line %d."), $pool_file, $.); next; } if( defined $name ) { @@ -335,10 +336,10 @@ sub read_pool { 'shell' => $shell }; } elsif ($type eq "gid") { - ($name, $id) = split (/:/); + ($name, $id, $rest) = split (/:/); if (!$name || $name !~ /^([_a-zA-Z0-9-]+)$/ || !defined($id) || $id !~ /^(\d+)$/) { - log_warn( mtx("Couldn't parse `%s', line %d."), $pool_file, $. ); + log_warn( mtx("Couldn't parse gid line `%s', line %d."), $pool_file, $. ); next; } if( defined $name ) { ===================================== adduser.conf ===================================== @@ -49,9 +49,9 @@ # Specify a file or a directory containing UID and GID pool. #UID_POOL=/etc/adduser-pool.conf -#UID_POOL=/etc/adduser-pool.d/ +#UID_POOL=/etc/adduser-pool.d #GID_POOL=/etc/adduser-pool.conf -#GID_POOL=/etc/adduser-pool.d/ +#GID_POOL=/etc/adduser-pool.d #RESERVE_UID_POOL=yes #RESERVE_GID_POOL=yes ===================================== doc/adduser.conf.5 ===================================== @@ -203,6 +203,8 @@ shell (ditto). .PP It is possible to use the same file/directory for \fBUID_POOL\fP and \fBGID_POOL\fP. +But you cannot copy lines from \fI/etc/passwd\fP or \fI/etc/group\fP +since pool file lines have less fields. .PP If an account / group is created, \fBadduser\fP(8) searches in all UID/GID pool files View it on GitLab: https://salsa.debian.org/debian/adduser/-/compare/a7de708b76ae341c3a97c1ee62b625382456d4e1...87fdeaad272d2aaf353fc6e4fd0fe39b68d0ded1 -- View it on GitLab: https://salsa.debian.org/debian/adduser/-/compare/a7de708b76ae341c3a97c1ee62b625382456d4e1...87fdeaad272d2aaf353fc6e4fd0fe39b68d0ded1 You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitlab at salsa.debian.org Mon Jun 1 05:07:01 2026 From: gitlab at salsa.debian.org (Marc Haber (@zugschlus)) Date: Mon, 01 Jun 2026 04:07:01 +0000 Subject: [Pkg-shadow-devel] [Git][debian/adduser][wip/debian-bugs-1132881] 6 commits: clarify adduser pool format documentation Message-ID: <6a1d0565742a4_54cfafc8739337@godard.mail> Marc Haber pushed to branch wip/debian-bugs-1132881 at Debian / adduser Commits: 259fed18 by Marc Haber at 2026-06-01T05:51:57+02:00 clarify adduser pool format documentation Git-Dch: ignore - - - - - b979e1ef by Marc Haber at 2026-06-01T05:51:57+02:00 remove trailing slashes from example pool directories Git-Dch: ignore - - - - - 402b47dd by Marc Haber at 2026-06-01T05:51:57+02:00 ignore extra fields at the end of pool file lines - - - - - febb7a47 by Marc Haber at 2026-06-01T05:51:57+02:00 clarify pool file read warnings Git-Dch: ignore - - - - - 87fdeaad by Marc Haber at 2026-06-01T05:51:57+02:00 remove trailing slaehes from pool directories Git-Dch: ignore - - - - - 215f4b7b by Marc Haber at 2026-06-01T06:06:59+02:00 streamline log level names. Closes: #1132881 - - - - - 4 changed files: - AdduserCommon.pm - adduser.conf - doc/adduser.8 - doc/adduser.conf.5 Changes: ===================================== AdduserCommon.pm ===================================== @@ -268,11 +268,12 @@ sub read_configfile { # -- a hash for the pool data sub read_pool { my ($pool_file, $type, $poolref) = @_; - my ($name, $id, $comment, $home, $shell); + my ($name, $id, $comment, $home, $shell, $rest); my %ids = (); my %new; $pool_file = decode($charset, $pool_file); + $pool_file =~ s{/?$}{}; if (-d $pool_file) { my $dir; unless( opendir( $dir, $pool_file) ) { @@ -307,10 +308,10 @@ sub read_pool { my $new; if ($type eq "uid") { - ($name, $id, $comment, $home, $shell) = split (/:/); + ($name, $id, $comment, $home, $shell, $rest) = split (/:/); if (!$name || $name !~ /^([_a-zA-Z0-9-]+)$/ || !defined($id) || $id !~ /^(\d+)$/) { - log_warn( mtx("Couldn't parse `%s', line %d."), $pool_file, $.); + log_warn( mtx("Couldn't parse uid line `%s', line %d."), $pool_file, $.); next; } if( defined $name ) { @@ -335,10 +336,10 @@ sub read_pool { 'shell' => $shell }; } elsif ($type eq "gid") { - ($name, $id) = split (/:/); + ($name, $id, $rest) = split (/:/); if (!$name || $name !~ /^([_a-zA-Z0-9-]+)$/ || !defined($id) || $id !~ /^(\d+)$/) { - log_warn( mtx("Couldn't parse `%s', line %d."), $pool_file, $. ); + log_warn( mtx("Couldn't parse gid line `%s', line %d."), $pool_file, $. ); next; } if( defined $name ) { ===================================== adduser.conf ===================================== @@ -49,9 +49,9 @@ # Specify a file or a directory containing UID and GID pool. #UID_POOL=/etc/adduser-pool.conf -#UID_POOL=/etc/adduser-pool.d/ +#UID_POOL=/etc/adduser-pool.d #GID_POOL=/etc/adduser-pool.conf -#GID_POOL=/etc/adduser-pool.d/ +#GID_POOL=/etc/adduser-pool.d #RESERVE_UID_POOL=yes #RESERVE_GID_POOL=yes ===================================== doc/adduser.8 ===================================== @@ -555,9 +555,9 @@ Every message that \fBadduser\fR prints has a priority value assigned by the authors. This priority can not be changed at run time. Available priority values are -\fBcrit\fR, +\fBfatal\fR, \fBerror\fR, -\fBwarning\fR, +\fBwarn\fR, \fBinfo\fR, \fBdebug\fR, and ===================================== doc/adduser.conf.5 ===================================== @@ -203,6 +203,8 @@ shell (ditto). .PP It is possible to use the same file/directory for \fBUID_POOL\fP and \fBGID_POOL\fP. +But you cannot copy lines from \fI/etc/passwd\fP or \fI/etc/group\fP +since pool file lines have less fields. .PP If an account / group is created, \fBadduser\fP(8) searches in all UID/GID pool files View it on GitLab: https://salsa.debian.org/debian/adduser/-/compare/2dd95db3d68a3622e3139c9f751c995eb2f4238b...215f4b7b45bccfa86ad32c02ecca799f729d3370 -- View it on GitLab: https://salsa.debian.org/debian/adduser/-/compare/2dd95db3d68a3622e3139c9f751c995eb2f4238b...215f4b7b45bccfa86ad32c02ecca799f729d3370 You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitlab at salsa.debian.org Mon Jun 1 05:20:09 2026 From: gitlab at salsa.debian.org (Marc Haber (@zugschlus)) Date: Mon, 01 Jun 2026 04:20:09 +0000 Subject: [Pkg-shadow-devel] [Git][debian/adduser][debian/latest] streamline log level names. Message-ID: <6a1d08799948e_54cfb284743296@godard.mail> Marc Haber pushed to branch debian/latest at Debian / adduser Commits: 215f4b7b by Marc Haber at 2026-06-01T06:06:59+02:00 streamline log level names. Closes: #1132881 - - - - - 1 changed file: - doc/adduser.8 Changes: ===================================== doc/adduser.8 ===================================== @@ -555,9 +555,9 @@ Every message that \fBadduser\fR prints has a priority value assigned by the authors. This priority can not be changed at run time. Available priority values are -\fBcrit\fR, +\fBfatal\fR, \fBerror\fR, -\fBwarning\fR, +\fBwarn\fR, \fBinfo\fR, \fBdebug\fR, and View it on GitLab: https://salsa.debian.org/debian/adduser/-/commit/215f4b7b45bccfa86ad32c02ecca799f729d3370 -- View it on GitLab: https://salsa.debian.org/debian/adduser/-/commit/215f4b7b45bccfa86ad32c02ecca799f729d3370 You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitlab at salsa.debian.org Mon Jun 1 05:23:24 2026 From: gitlab at salsa.debian.org (Marc Haber (@zugschlus)) Date: Mon, 01 Jun 2026 04:23:24 +0000 Subject: [Pkg-shadow-devel] [Git][debian/adduser][zg/no-nocron-warning] 11 commits: adduser (3.154) unstable; urgency=medium Message-ID: <6a1d093c3133f_54c51c32c7461ee@godard.mail> Marc Haber pushed to branch zg/no-nocron-warning at Debian / adduser Commits: ef6077b8 by Marc Haber at 2026-01-01T00:00:10+01:00 adduser (3.154) unstable; urgency=medium * The Happy New Year 2026 Release [ Matt Barry ] * add --no-copy-skel option (Closes: #1099633) * document --no-copy-skel * refactor existing_*_ok [ Marc Haber ] * make deluser --group work as documented. * have delgroup reject user-specific command line options. * correctly sanitize names in deluser. Thanks to Dagfinn Ilmari Manns?ker (Closes: #1109329) * update Swedish program and man page translation. Thanks to Daniel Nylander * make adduser error out if --system and account has a password (Closes: #1099734) [dgit import package adduser 3.154] - - - - - 9f51b00a by Marc Haber at 2026-03-28T10:20:53+01:00 prepare release - - - - - da27998e by Marc Haber at 2026-03-28T10:21:10+01:00 fix typo in Portuguese Git-Dch: ignore - - - - - a7de708b by Marc Haber at 2026-03-28T10:16:28+01:00 Declare fast forward from 3.154 [dgit --overwrite] - - - - - 259fed18 by Marc Haber at 2026-06-01T05:51:57+02:00 clarify adduser pool format documentation Git-Dch: ignore - - - - - b979e1ef by Marc Haber at 2026-06-01T05:51:57+02:00 remove trailing slashes from example pool directories Git-Dch: ignore - - - - - 402b47dd by Marc Haber at 2026-06-01T05:51:57+02:00 ignore extra fields at the end of pool file lines - - - - - febb7a47 by Marc Haber at 2026-06-01T05:51:57+02:00 clarify pool file read warnings Git-Dch: ignore - - - - - 87fdeaad by Marc Haber at 2026-06-01T05:51:57+02:00 remove trailing slaehes from pool directories Git-Dch: ignore - - - - - 215f4b7b by Marc Haber at 2026-06-01T06:06:59+02:00 streamline log level names. Closes: #1132881 - - - - - 46250627 by Marc Haber at 2026-06-01T06:23:21+02:00 demote "crontab not found" warning to info it is now perfectly normal to run a system that doesn't have cron - - - - - 7 changed files: - AdduserCommon.pm - adduser.conf - debian/NEWS - debian/changelog - deluser - doc/adduser.8 - doc/adduser.conf.5 Changes: ===================================== AdduserCommon.pm ===================================== @@ -268,11 +268,12 @@ sub read_configfile { # -- a hash for the pool data sub read_pool { my ($pool_file, $type, $poolref) = @_; - my ($name, $id, $comment, $home, $shell); + my ($name, $id, $comment, $home, $shell, $rest); my %ids = (); my %new; $pool_file = decode($charset, $pool_file); + $pool_file =~ s{/?$}{}; if (-d $pool_file) { my $dir; unless( opendir( $dir, $pool_file) ) { @@ -307,10 +308,10 @@ sub read_pool { my $new; if ($type eq "uid") { - ($name, $id, $comment, $home, $shell) = split (/:/); + ($name, $id, $comment, $home, $shell, $rest) = split (/:/); if (!$name || $name !~ /^([_a-zA-Z0-9-]+)$/ || !defined($id) || $id !~ /^(\d+)$/) { - log_warn( mtx("Couldn't parse `%s', line %d."), $pool_file, $.); + log_warn( mtx("Couldn't parse uid line `%s', line %d."), $pool_file, $.); next; } if( defined $name ) { @@ -335,10 +336,10 @@ sub read_pool { 'shell' => $shell }; } elsif ($type eq "gid") { - ($name, $id) = split (/:/); + ($name, $id, $rest) = split (/:/); if (!$name || $name !~ /^([_a-zA-Z0-9-]+)$/ || !defined($id) || $id !~ /^(\d+)$/) { - log_warn( mtx("Couldn't parse `%s', line %d."), $pool_file, $. ); + log_warn( mtx("Couldn't parse gid line `%s', line %d."), $pool_file, $. ); next; } if( defined $name ) { ===================================== adduser.conf ===================================== @@ -49,9 +49,9 @@ # Specify a file or a directory containing UID and GID pool. #UID_POOL=/etc/adduser-pool.conf -#UID_POOL=/etc/adduser-pool.d/ +#UID_POOL=/etc/adduser-pool.d #GID_POOL=/etc/adduser-pool.conf -#GID_POOL=/etc/adduser-pool.d/ +#GID_POOL=/etc/adduser-pool.d #RESERVE_UID_POOL=yes #RESERVE_GID_POOL=yes ===================================== debian/NEWS ===================================== @@ -1,4 +1,4 @@ -adduser (3.155) UNRELEASED; urgency=medium +adduser (3.155) unstable; urgency=medium The GROUPHOMES, LETTERHOMES, SGID_HOME and QUOTAUSER options were depreated for a while and got removed in this release. ===================================== debian/changelog ===================================== @@ -1,4 +1,4 @@ -adduser (3.155) UNRELEASED; urgency=medium +adduser (3.155) unstable; urgency=medium [ Marc Haber ] * remove GROUPHOMES and LETTERHOMES configuration options @@ -24,7 +24,7 @@ adduser (3.155) UNRELEASED; urgency=medium * write test cases to trigger #1125601 * Updated German man page translation. Thanks to Helge Kreutzmann (Closes: #1125135) - * Updated Portguese man page and program translation. + * Updated Portuguese man page and program translation. Thanks to Am?rico Monteiro (Closes: #1118370) * Updated Dutch man page translation. Thanks to Frans Spiesschaert (Closes: #1118209) @@ -33,7 +33,7 @@ adduser (3.155) UNRELEASED; urgency=medium * Add adduser --unlock [--system] and deluser --lock [--system] (Closes: #1008082, #1008083, #1008084) - -- Marc Haber Fri, 27 Mar 2026 21:52:48 +0100 + -- Marc Haber Sat, 28 Mar 2026 10:16:28 +0100 adduser (3.154) unstable; urgency=medium ===================================== deluser ===================================== @@ -472,13 +472,8 @@ if($action eq "deluser") { systemcall_or_warn('/usr/bin/crontab', '-u', $user, '-r'); } } else { - if ($config{'system'}) { - log_info( mtx("`%s' is not executable. Skipping crontab removal. Package `cron' required."), - '/usr/bin/crontab' ); - } else { - log_warn( mtx("`%s' is not executable. Skipping crontab removal. Package `cron' required."), - '/usr/bin/crontab' ); - } + log_info( mtx("`%s' is not executable. Skipping crontab removal. Package `cron' required."), + '/usr/bin/crontab' ); } log_info( mtx("Removing user `%s' ..."), $user); ===================================== doc/adduser.8 ===================================== @@ -555,9 +555,9 @@ Every message that \fBadduser\fR prints has a priority value assigned by the authors. This priority can not be changed at run time. Available priority values are -\fBcrit\fR, +\fBfatal\fR, \fBerror\fR, -\fBwarning\fR, +\fBwarn\fR, \fBinfo\fR, \fBdebug\fR, and ===================================== doc/adduser.conf.5 ===================================== @@ -203,6 +203,8 @@ shell (ditto). .PP It is possible to use the same file/directory for \fBUID_POOL\fP and \fBGID_POOL\fP. +But you cannot copy lines from \fI/etc/passwd\fP or \fI/etc/group\fP +since pool file lines have less fields. .PP If an account / group is created, \fBadduser\fP(8) searches in all UID/GID pool files View it on GitLab: https://salsa.debian.org/debian/adduser/-/compare/9b4478e27818bb04cb0fc35b263d6d441561b222...46250627c9c4e755ab8beff2738564345cb582ff -- View it on GitLab: https://salsa.debian.org/debian/adduser/-/compare/9b4478e27818bb04cb0fc35b263d6d441561b222...46250627c9c4e755ab8beff2738564345cb582ff You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitlab at salsa.debian.org Mon Jun 1 05:48:25 2026 From: gitlab at salsa.debian.org (Marc Haber (@zugschlus)) Date: Mon, 01 Jun 2026 04:48:25 +0000 Subject: [Pkg-shadow-devel] [Git][debian/adduser][debian/latest] demote "crontab not found" warning to info Message-ID: <6a1d0f191056e_54cfaf3c7519ba@godard.mail> Marc Haber pushed to branch debian/latest at Debian / adduser Commits: 46250627 by Marc Haber at 2026-06-01T06:23:21+02:00 demote "crontab not found" warning to info it is now perfectly normal to run a system that doesn't have cron - - - - - 1 changed file: - deluser Changes: ===================================== deluser ===================================== @@ -472,13 +472,8 @@ if($action eq "deluser") { systemcall_or_warn('/usr/bin/crontab', '-u', $user, '-r'); } } else { - if ($config{'system'}) { - log_info( mtx("`%s' is not executable. Skipping crontab removal. Package `cron' required."), - '/usr/bin/crontab' ); - } else { - log_warn( mtx("`%s' is not executable. Skipping crontab removal. Package `cron' required."), - '/usr/bin/crontab' ); - } + log_info( mtx("`%s' is not executable. Skipping crontab removal. Package `cron' required."), + '/usr/bin/crontab' ); } log_info( mtx("Removing user `%s' ..."), $user); View it on GitLab: https://salsa.debian.org/debian/adduser/-/commit/46250627c9c4e755ab8beff2738564345cb582ff -- View it on GitLab: https://salsa.debian.org/debian/adduser/-/commit/46250627c9c4e755ab8beff2738564345cb582ff You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitlab at salsa.debian.org Mon Jun 1 06:07:49 2026 From: gitlab at salsa.debian.org (Marc Haber (@zugschlus)) Date: Mon, 01 Jun 2026 05:07:49 +0000 Subject: [Pkg-shadow-devel] [Git][debian/adduser][debian/latest] prepare release Message-ID: <6a1d13a5a212c_54cfaeec75416c@godard.mail> Marc Haber pushed to branch debian/latest at Debian / adduser Commits: b2eedf89 by Marc Haber at 2026-06-01T07:07:25+02:00 prepare release Git-Dch: ignore - - - - - 1 changed file: - debian/changelog Changes: ===================================== debian/changelog ===================================== @@ -1,3 +1,12 @@ +adduser (3.156) unstable; urgency=medium + + * ignore extra fields at the end of pool file lines + * streamline log level names. (Closes: #1132881) + * demote "crontab not found" warning to info + it is now perfectly normal to run a system that doesn't have cron + + -- Marc Haber Mon, 01 Jun 2026 07:06:57 +0200 + adduser (3.155) unstable; urgency=medium [ Marc Haber ] View it on GitLab: https://salsa.debian.org/debian/adduser/-/commit/b2eedf896d6d544b426996ed3123270123bb590a -- View it on GitLab: https://salsa.debian.org/debian/adduser/-/commit/b2eedf896d6d544b426996ed3123270123bb590a You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitlab at salsa.debian.org Mon Jun 1 06:50:34 2026 From: gitlab at salsa.debian.org (Marc Haber (@zugschlus)) Date: Mon, 01 Jun 2026 05:50:34 +0000 Subject: [Pkg-shadow-devel] [Git][debian/adduser] Deleted branch wip/debian-bugs-1132881 Message-ID: <6a1d1daa1ba65_54c2e97b98763074@godard.mail> Marc Haber deleted branch wip/debian-bugs-1132881 at Debian / adduser -- You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitlab at salsa.debian.org Mon Jun 1 06:55:05 2026 From: gitlab at salsa.debian.org (Marc Haber (@zugschlus)) Date: Mon, 01 Jun 2026 05:55:05 +0000 Subject: [Pkg-shadow-devel] [Git][debian/adduser] Deleted branch feature-refactor-existing Message-ID: <6a1d1eb9ec95f_54c2e97b987646e8@godard.mail> Marc Haber deleted branch feature-refactor-existing at Debian / adduser -- You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitlab at salsa.debian.org Mon Jun 1 07:19:04 2026 From: gitlab at salsa.debian.org (Marc Haber (@zugschlus)) Date: Mon, 01 Jun 2026 06:19:04 +0000 Subject: [Pkg-shadow-devel] [Git][debian/adduser][wip/improve-testsuite] 36 commits: adduser (3.154) unstable; urgency=medium Message-ID: <6a1d2458403f4_54cfb70c7694a2@godard.mail> Marc Haber pushed to branch wip/improve-testsuite at Debian / adduser Commits: ef6077b8 by Marc Haber at 2026-01-01T00:00:10+01:00 adduser (3.154) unstable; urgency=medium * The Happy New Year 2026 Release [ Matt Barry ] * add --no-copy-skel option (Closes: #1099633) * document --no-copy-skel * refactor existing_*_ok [ Marc Haber ] * make deluser --group work as documented. * have delgroup reject user-specific command line options. * correctly sanitize names in deluser. Thanks to Dagfinn Ilmari Manns?ker (Closes: #1109329) * update Swedish program and man page translation. Thanks to Daniel Nylander * make adduser error out if --system and account has a password (Closes: #1099734) [dgit import package adduser 3.154] - - - - - 9b462650 by Marc Haber at 2026-01-24T18:05:09+01:00 man page improvements for adduser.8 Closes: #1124790 Thanks: Bjarni Ingi Gislason - - - - - 53f66175 by Marc Haber at 2026-01-24T18:05:09+01:00 apply correcting patch from #1105900 Thanks: Bjarni Ingi Gislason Closes: #1105900 - - - - - 77e792df by Marc Haber at 2026-03-27T10:14:08+01:00 write test cases to trigger #1125601 - - - - - fa4b3466 by Marc Haber at 2026-03-27T10:14:08+01:00 rework config reading and check *_dir_mode this makes sure that dir_mode and sys_dir_mode is verified valid octal improve perl code Git-Dch: ignore - - - - - d96e86fa by Marc Haber at 2026-03-27T10:14:08+01:00 allow deluser to delete files with UTF-8 file name We don't do anything dangerous with those file names, so we can just untaint them regaring of what chars they contain Git-Dch: ignore - - - - - 753db0ba by Marc Haber at 2026-03-27T10:14:08+01:00 fix very strange cut&paste accident Git-Dch: ignore - - - - - c9893992 by Marc Haber at 2026-03-27T10:14:08+01:00 allow /etc/skel to contain files with UTF-8 file names This moves home dir creation to a new module AdduserCreateHomedir Closes: #1125681 Thanks: Mert Ok - - - - - 2c01d6d9 by Marc Haber at 2026-03-27T10:14:08+01:00 update copyright year Git-Dch: Ignore - - - - - ef1fcf84 by Marc Haber at 2026-03-27T10:14:08+01:00 use new create_homedir() Git-Dch: ignore - - - - - 8b28a9c3 by Marc Haber at 2026-03-27T10:14:08+01:00 remove functions that have been moved to AdduserCreateHomedir Git-Dch: ignore - - - - - aa90dad5 by Marc Haber at 2026-03-27T10:33:35+01:00 copy over find_unused_* functions from upstream testsuites Closes: #1015781 - - - - - e3bca5b4 by Marc Haber at 2026-03-27T10:33:35+01:00 rewrite find_unused_name Git-Dch: ignore - - - - - 1457deeb by Marc Haber at 2026-03-27T10:36:28+01:00 adapt indent to 4 spaces Git-Dch: ignore - - - - - 0452d690 by Marc Haber at 2026-03-27T10:36:28+01:00 adapt upstream tests to new find_unused_name signature and give mode identifyable test user names Git-Dch: ignore - - - - - 19046fc8 by Marc Haber at 2026-03-27T10:36:28+01:00 modify clones.t to use find_unused_name Git-Dch: ignore - - - - - 550b7951 by Marc Haber at 2026-03-27T21:54:21+01:00 changelog - - - - - 9f51b00a by Marc Haber at 2026-03-28T10:20:53+01:00 prepare release - - - - - da27998e by Marc Haber at 2026-03-28T10:21:10+01:00 fix typo in Portuguese Git-Dch: ignore - - - - - a7de708b by Marc Haber at 2026-03-28T10:16:28+01:00 Declare fast forward from 3.154 [dgit --overwrite] - - - - - 259fed18 by Marc Haber at 2026-06-01T05:51:57+02:00 clarify adduser pool format documentation Git-Dch: ignore - - - - - b979e1ef by Marc Haber at 2026-06-01T05:51:57+02:00 remove trailing slashes from example pool directories Git-Dch: ignore - - - - - 402b47dd by Marc Haber at 2026-06-01T05:51:57+02:00 ignore extra fields at the end of pool file lines - - - - - febb7a47 by Marc Haber at 2026-06-01T05:51:57+02:00 clarify pool file read warnings Git-Dch: ignore - - - - - 87fdeaad by Marc Haber at 2026-06-01T05:51:57+02:00 remove trailing slaehes from pool directories Git-Dch: ignore - - - - - 215f4b7b by Marc Haber at 2026-06-01T06:06:59+02:00 streamline log level names. Closes: #1132881 - - - - - 46250627 by Marc Haber at 2026-06-01T06:23:21+02:00 demote "crontab not found" warning to info it is now perfectly normal to run a system that doesn't have cron - - - - - b2eedf89 by Marc Haber at 2026-06-01T07:07:25+02:00 prepare release Git-Dch: ignore - - - - - b139f106 by Marc Haber at 2026-06-01T08:13:55+02:00 remove unused get_dir_mode Git-Dch: ignore - - - - - 9b7314cd by Marc Haber at 2026-06-01T08:14:03+02:00 add empty 00test to verify that the lib is okay Git-Dch: ignore - - - - - 039bbc7e by Marc Haber at 2026-06-01T08:14:03+02:00 make AdduserTestsCommon a proper module Git-Dch: ignore - - - - - 0a355dc1 by Marc Haber at 2026-06-01T08:14:03+02:00 improve existing test helper functions This also adds cleanup_user and cleanup_tree Git-Dch: ignore - - - - - af354ad5 by Marc Haber at 2026-06-01T08:14:03+02:00 add cleanup class to help cleaning up after tests Git-Dch: ignore - - - - - 0c82dcc4 by Marc Haber at 2026-06-01T08:14:03+02:00 add code to do better home directory tests this pulls part of the skel.t to the library so that other tests can work with strange files in /etc/skel, this might help debugging code that handles the home directory contents Git-Dch: ignore - - - - - c3cbc5f6 by Marc Haber at 2026-06-01T08:14:03+02:00 make skel.t use the new Common functions Git-Dch: ignore - - - - - 8f305535 by Marc Haber at 2026-06-01T08:14:03+02:00 adapt three tests to use the new cleanup class Git-Dch: ignore - - - - - 31 changed files: - AdduserCommon.pm - + AdduserCreateHomedir.pm - adduser - adduser.conf - debian/NEWS - debian/changelog - debian/copyright - debian/rules - + debian/tests/f/00test.t - debian/tests/f/addusertogroup_underscore.t - debian/tests/f/clones.t - debian/tests/f/deluser_quiet.t - debian/tests/f/skel.t - debian/tests/f/uidgidpool.t - debian/tests/lib/AdduserTestsCommon.pm - deluser - doc/adduser.8 - doc/adduser.conf.5 - doc/adduser.local.8 - testsuite/lib_test.pm - testsuite/test01.pl - testsuite/test02.pl - testsuite/test03.pl - testsuite/test04.pl - testsuite/test05.pl - testsuite/test06.pl - testsuite/test07.pl - testsuite/test08.pl - testsuite/test09.pl - testsuite/test10.pl - testsuite/test11.pl The diff was not included because it is too large. View it on GitLab: https://salsa.debian.org/debian/adduser/-/compare/034bc07c4fdeb045c9e6178294e363ef662ef59b...8f30553550bd9eeab3cf531541272235048a263b -- View it on GitLab: https://salsa.debian.org/debian/adduser/-/compare/034bc07c4fdeb045c9e6178294e363ef662ef59b...8f30553550bd9eeab3cf531541272235048a263b You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitlab at salsa.debian.org Mon Jun 1 07:22:57 2026 From: gitlab at salsa.debian.org (Marc Haber (@zugschlus)) Date: Mon, 01 Jun 2026 06:22:57 +0000 Subject: [Pkg-shadow-devel] [Git][debian/adduser] Pushed new branch debian/bullseye Message-ID: <6a1d2541d60cf_54c5161207702c6@godard.mail> Marc Haber pushed new branch debian/bullseye at Debian / adduser -- View it on GitLab: https://salsa.debian.org/debian/adduser/-/tree/debian/bullseye You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitlab at salsa.debian.org Mon Jun 1 07:23:05 2026 From: gitlab at salsa.debian.org (Marc Haber (@zugschlus)) Date: Mon, 01 Jun 2026 06:23:05 +0000 Subject: [Pkg-shadow-devel] [Git][debian/adduser] Deleted branch bullseye Message-ID: <6a1d2549d9861_54cfaf287704c6@godard.mail> Marc Haber deleted branch bullseye at Debian / adduser -- You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitlab at salsa.debian.org Mon Jun 1 08:36:27 2026 From: gitlab at salsa.debian.org (Marc Haber (@zugschlus)) Date: Mon, 01 Jun 2026 07:36:27 +0000 Subject: [Pkg-shadow-devel] [Git][debian/adduser][adduser-encrypt-home] 350 commits: define and export default regexes Message-ID: <6a1d367b490b2_54c21524387838d@godard.mail> Marc Haber pushed to branch adduser-encrypt-home at Debian / adduser Commits: 4dfc3772 by Marc Haber at 2025-02-19T07:28:33+01:00 define and export default regexes Git-Dch: ignore - - - - - 448c6aa7 by Marc Haber at 2025-02-19T07:29:07+01:00 use default regexes to preseed config Git-Dch: ignore - - - - - 6bf4c41f by Marc Haber at 2025-02-19T07:29:39+01:00 adapt name regexes to new useradd behavior - - - - - 71a96eb1 by Marc Haber at 2025-02-19T07:30:09+01:00 remove Unicode reference from length error message Git-Dch: ignore - - - - - 845ad67c by Marc Haber at 2025-02-19T07:30:57+01:00 explicitly check for single and double period user names - - - - - dead1f44 by Marc Haber at 2025-02-19T07:33:06+01:00 use qr for all digits regexp Git-Dch: ignore - - - - - 0083b162 by Marc Haber at 2025-02-19T07:33:24+01:00 improve all digits error message Git-Dch: ignore - - - - - 4bc22ab4 by Marc Haber at 2025-02-19T07:34:16+01:00 use ieee_regexp and min_regexp constants from AdduserCommon Git-Dch: ignore - - - - - 3be6fa35 by Marc Haber at 2025-02-19T07:34:46+01:00 synchronize regexps with main program Git-Dch: ignore - - - - - 6e92a695 by Marc Haber at 2025-02-19T07:35:15+01:00 test for negative digits and period user names Git-Dch: ignore - - - - - 7bbb7604 by Marc Haber at 2025-02-19T07:35:42+01:00 test for ascii special names Git-Dch: ignore - - - - - 5eeb0abb by Marc Haber at 2025-02-19T15:06:20+01:00 bump internal version number of modules Git-Dch: ignore - - - - - 7d3da243 by Marc Haber at 2025-02-19T15:07:18+01:00 bump copyright year - - - - - 018f4c7d by Marc Haber at 2025-02-19T15:17:38+01:00 define RET_INVALID_NAME_FROM_USERADD Git-Dch: ignore - - - - - 1ed1a32f by Marc Haber at 2025-02-19T15:17:38+01:00 terminology normal => regular Git-Dch: ignore - - - - - fef7bbd4 by Marc Haber at 2025-02-19T15:17:38+01:00 make note to catch useradd exit code Git-Dch: ignore - - - - - a2406bc7 by Marc Haber at 2025-02-19T15:17:38+01:00 README: Add deprecation warnings and removed feature documentation Git-Dch: ignore - - - - - faccd103 by Marc Haber at 2025-02-19T15:17:38+01:00 move VALID NAMES to adduser man page Git-Dch: ignore - - - - - a4a0c51d by Marc Haber at 2025-02-19T15:17:38+01:00 remove language that claim adduser to be friendly Git-Dch: ignore - - - - - fd31bc99 by Marc Haber at 2025-02-19T15:17:38+01:00 don't use "placed in" primary group Git-Dch: ignore - - - - - 5c501c85 by Marc Haber at 2025-02-19T15:17:38+01:00 fix typo - - - - - 04247d6a by Marc Haber at 2025-02-19T15:17:38+01:00 sort LAST options the same as FIRST options Git-Dch: ignore - - - - - 706e7289 by Marc Haber at 2025-02-19T15:17:38+01:00 don't list compression suffixes Git-Dch: ignore - - - - - cbc12ac7 by Marc Haber at 2025-02-19T15:17:38+01:00 document new default regexes Git-Dch: ignore - - - - - 24083d38 by Marc Haber at 2025-02-19T15:17:38+01:00 there is only one primary group Git-Dch: ignore - - - - - c79842d1 by Marc Haber at 2025-02-19T15:17:38+01:00 --group is an option Git-Dch: ignore - - - - - 34614a50 by Marc Haber at 2025-02-19T15:17:38+01:00 make more clear that addgroup --system works as well Git-Dch: ignore - - - - - 053783b7 by Marc Haber at 2025-02-19T15:17:38+01:00 fix grammar Git-Dch: ignore - - - - - 75b1a9c5 by Marc Haber at 2025-02-19T15:17:38+01:00 remove reference to deprecated --quiet Git-Dch: ignore - - - - - 88f50672 by Marc Haber at 2025-02-19T15:17:38+01:00 more docs in man page Git-Dch: ignore - - - - - ee63d4cc by Marc Haber at 2025-02-19T15:17:38+01:00 remove reference to non-ASCII characters Git-Dch: ignore - - - - - 1aae1ef3 by Marc Haber at 2025-02-19T15:52:48+01:00 streamline debugging output for systemcall functions Git-Dch: ignore - - - - - cb02adde by Marc Haber at 2025-02-19T16:40:34+01:00 introduce new systemcall_useradd - - - - - d1d011ef by Marc Haber at 2025-02-19T16:40:57+01:00 fix variable names in systemcall and systemcall_or_warn Git-Dch: ignore - - - - - cc406d31 by Marc Haber at 2025-02-19T18:09:15+01:00 use systemcall_useradd Git-Dch: ignore - - - - - a436c8f4 by Marc Haber at 2025-02-19T18:09:17+01:00 use systemcall instead of &systemcall Git-Dch: ignore - - - - - 2d904580 by Marc Haber at 2025-02-19T18:09:17+01:00 use systemcall instead of @systemcall Git-Dch: ignore - - - - - 561b7c9b by Marc Haber at 2025-02-19T18:09:17+01:00 re-work call of passwd and exit code evaluation Git-Dch: ignore - - - - - 168d0a5d by Marc Haber at 2025-02-19T18:09:17+01:00 fixup! introduce new systemcall_useradd - - - - - f9a73dfc by Marc Haber at 2025-02-19T18:09:45+01:00 eliminate more of & function calls Git-Dch: ignore - - - - - 80f3749f by Marc Haber at 2025-02-20T22:23:30+01:00 prepare changelog for release - - - - - 539018b3 by Marc Haber at 2025-02-21T08:35:54+01:00 prepare new version Git-Dch: ignore - - - - - fa17169a by Marc Haber at 2025-02-21T10:51:18+01:00 update Brazilian Portuguese manpage translation Thanks: Paulo Henrique de Lima Santana Closes: #1094210 - - - - - 15af47f5 by Marc Haber at 2025-02-21T10:51:18+01:00 Update Dutch program translation Thanks: Frans Spiesschaert Closes: #1094496 - - - - - 9c5f005c by Marc Haber at 2025-02-21T10:51:18+01:00 Update Dutch manpage translation Thanks: Frans Spiesschaert Closes: #1094497 - - - - - 6ace9686 by Marc Haber at 2025-02-21T11:01:32+01:00 remove pt_BR translation, causes FTBFS. Sorry. - - - - - 47c9287b by Marc Haber at 2025-02-22T07:42:26+01:00 Add login to test Dependencies - - - - - 42c88018 by Marc Haber at 2025-02-22T07:51:19+01:00 allow adduser to run without Encode and I18N::Langinfo installed Thanks: Yves-Alexis Perez, Bastian Germann Closes: #1098508 It turned out that autopkgtest chroots are not minimal, most probably since the package is built inside the same chroot before the tests are run. Thus, adduser's inability to run without libperl5.40 was not detected, and I had the impression that libperl5.40 would belong to the minimal package set, which is not the case. In passing, we changed the code to block eval, which allows us to run with perlcritic right now. That required $codeset to be a variable. - - - - - cd20ba62 by Marc Haber at 2025-02-22T08:23:35+01:00 Fix conditional loading of Locale::gettext as well Git-Dch: ignore - - - - - beb676a5 by Marc Haber at 2025-02-22T08:38:04+01:00 prepare changelog for release Git-Dch: ignore - - - - - 02a1b6b5 by Marc Haber at 2025-02-22T08:39:56+01:00 re-add brazilian portuguese manpage translation Thanks: Felipe Augusto van de Wiel Git-Dch: ignore - - - - - ec94c866 by Marc Haber at 2025-02-22T09:11:59+01:00 fix wrong pt_BR.po - - - - - 512da948 by Marc Haber at 2025-02-22T09:59:36+01:00 prepare new version Git-Dch: ignore - - - - - ffde95c7 by Marc Haber at 2025-02-22T10:17:46+01:00 add adduser to test dependencies. Needed for some reason. Git-Dch: ignore - - - - - 777cd6dc by Marc Haber at 2025-02-22T10:17:46+01:00 add new autopktest to check adduser basic functionality This is necessary because the first autopkgtest is not run in a minimal chroot (see #1098646). This test doesn't work with the explicit Dependency on adduser. - - - - - cc89d9c5 by Marc Haber at 2025-02-22T10:56:46+01:00 README: Document adduser behavior in minimal chroots - - - - - fa222f56 by Marc Haber at 2025-02-22T22:09:27+01:00 call textdomain fully qualified. Import function explicitly Thanks: Yuri Konotopov, Christian Weeks Closes: #1098692, #1098690 - - - - - 3d7fea9e by Marc Haber at 2025-02-22T22:10:42+01:00 don't initialize $encode_loaded It gets initialized in BEGIN Git-Dch: ignore - - - - - 0d92ab62 by Marc Haber at 2025-02-22T22:11:09+01:00 only set binmode if Encode is loaded in deluser - - - - - 54aafba7 by Marc Haber at 2025-02-22T22:13:29+01:00 changelog for upload Git-Dch: ignore - - - - - 0fdf5c71 by Marc Haber at 2025-02-22T22:36:01+01:00 prepare new version Git-Dch: ignore - - - - - 5955880f by Otto Kek?l?inen at 2025-02-23T07:32:46+00:00 Salsa CI: Add extra test to validate that 'adduser' can be used Also update salsa-ci.yml template to latest version to have more comments and link to docs inline. - - - - - 3e5edfdb by Marc Haber at 2025-02-23T09:34:39+01:00 sanitize target string coming from readlink() - - - - - a25b0066 by Marc Haber at 2025-02-23T09:58:39+01:00 assume CAP_SYS_ADMIN not present if /proc not accessible Thanks: Chris Hofstaedtler Closes: #1098711 - - - - - 81e54b49 by Marc Haber at 2025-02-25T10:11:49+01:00 prepare release Git-Dch: ignore - - - - - 860c5019 by Marc Haber at 2025-02-25T10:52:22+01:00 prepare new version Git-Dch: ignore - - - - - df8e2e41 by Marc Haber at 2025-02-26T12:28:31+01:00 Standards-Version: 4.7.1 (no changes neceessary) - - - - - cee5e776 by Marc Haber at 2025-02-28T20:34:04+01:00 unset $ENV{"ENV"} Thanks: Dan Jacobson Closes: #1099089 - - - - - 20ace87f by Marc Haber at 2025-03-02T20:02:16+01:00 Update Portuguese translation for adduser's manpage Thanks: Am?rico Monteiro Closes: #1099344 - - - - - ee5cee1f by Matt Barry at 2025-03-03T18:52:43+01:00 refactor existing_*_ok replace with new existing_(user|group)_status, which return a bitmask value corresponding to these constants: EXISTING_NOT_FOUND EXISTING_FOUND EXISTING_SYSTEM EXISTING_ID_MISMATCH (and EXISTING_LOCKED, which is unused in this branch) - - - - - 81b8eadf by Marc Haber at 2025-03-03T18:52:43+01:00 change logic regarding error messages Git-Dch: ignore - - - - - 4b51c786 by Marc Haber at 2025-03-03T18:52:43+01:00 add more debugging Git-Dch: ignore - - - - - e5c4b6ec by Marc Haber at 2025-03-03T19:02:06+01:00 add test to check for bug #1099073 Git-Dch: ignore - - - - - eeed860a by Marc Haber at 2025-03-03T19:02:06+01:00 dont issue warnings for --home /nonexistent Thanks: Sven Joachim Closes: #1099073 - - - - - 0ae94f1c by Marc Haber at 2025-03-03T19:02:06+01:00 add new test to check two argument adduser with underscores Git-Dch: ignore - - - - - 717ac5a2 by Marc Haber at 2025-03-03T19:02:06+01:00 allow adding system accounts to system groups Closes: #1099397 - - - - - a9df0ce4 by Marc Haber at 2025-03-03T19:42:19+01:00 prepare release Git-Dch: ignore - - - - - e940103a by Marc Haber at 2025-03-03T19:57:58+01:00 prepare new version Git-Dch: ignore - - - - - da620467 by Marc Haber at 2025-03-04T08:13:18+01:00 rename test user foo to aust in adduser_system.t Git-Dch: ignore - - - - - eeaff10e by Marc Haber at 2025-03-04T08:13:47+01:00 adduser_system.t: clean up after test Git-Dch: ignore - - - - - f9305d67 by Marc Haber at 2025-03-04T08:15:08+01:00 adduser_system.t: delete user before trying to create it Git-Dch: ignore - - - - - 008f1dbc by Marc Haber at 2025-03-04T08:15:57+01:00 adduser_system.t: create user a second time in a row Git-Dch: ignore - - - - - 1dafe6c9 by Marc Haber at 2025-03-04T08:16:35+01:00 adduser_system.t: formatting Git-Dch: ignore - - - - - 2866a931 by Marc Haber at 2025-03-04T08:17:00+01:00 reduce priority of "system user already exists" message - - - - - 6ef9cefc by Marc Haber at 2025-03-04T09:15:57+01:00 lower message severity for "skipping crontab removal" Otherwise, deluser --sytem on a cronless system might not be silent - - - - - f775ad84 by Marc Haber at 2025-03-04T09:15:57+01:00 get rid of the string foo in tests Git-Dch: ignore - - - - - e9290ba4 by Marc Haber at 2025-03-04T09:15:57+01:00 move home directory warnings to add(sys)user with appropriate severity - - - - - 54dae790 by Marc Haber at 2025-03-04T09:15:57+01:00 streamline debugging in existing_*_status Git-Dch: ignore - - - - - fda16705 by Marc Haber at 2025-03-04T09:15:57+01:00 reminder comment for necessary change Git-Dch: ignore - - - - - 60bdeb1d by Marc Haber at 2025-03-04T09:15:57+01:00 add more tests to catch the bug under #1099470 Git-Dch: ignore - - - - - 230cf545 by Matt Barry at 2025-03-04T11:20:32-05:00 cleanup check_user_group, mismatch logic - - - - - a63119fc by Marc Haber at 2025-03-04T17:52:14+01:00 do also a test with * as password Git-Dch: ignore - - - - - 9bb8e6c9 by Matt Barry at 2025-03-04T13:03:07-05:00 clean up logic for existing system users - - - - - d8581ffe by Matt Barry at 2025-03-04T13:19:01-05:00 changelog - - - - - ebb75947 by Marc Haber at 2025-03-04T21:07:58+01:00 prepare release Git-Dch: ignore - - - - - eca91f14 by Marc Haber at 2025-03-04T22:35:23+01:00 prepare new version Git-Dch: ignore - - - - - 1f652448 by Marc Haber at 2025-03-05T07:46:10+01:00 reduce perl requirements to 5.36 (bookworm) for upgrades - - - - - 82fe4f35 by Marc Haber at 2025-03-05T12:12:57+01:00 more docs Git-Dch: ignore - - - - - 27a9489b by Marc Haber at 2025-03-05T16:58:35+01:00 add assert functions for system uid/gid ranges Git-Dch: ignore - - - - - be4080ca by Marc Haber at 2025-03-05T16:58:35+01:00 test whether created account is actually system - - - - - dc561b33 by Marc Haber at 2025-03-05T16:58:35+01:00 re-work system_status.t Git-Dch: ignore get rid of foo as name repeat check for users as well check whether account/group are actually in the correct id range check whether conversion of regular accoun/group to system is correctly refused - - - - - 9826551e by Marc Haber at 2025-03-06T11:55:52+01:00 repeat all --system test to check idempocy and identical result Git-Dch: ignore - - - - - 7a4dfc08 by Marc Haber at 2025-03-06T17:34:14+01:00 add assert_command_result_silent Git-Dch: ignore - - - - - 5b20cd56 by Marc Haber at 2025-03-06T17:34:34+01:00 fix a mismatch check in existing_user_status [Matt Barry] - - - - - 55ff6bf3 by Marc Haber at 2025-03-06T17:35:11+01:00 add some return values to check against Git-Dch: ignore - - - - - c1238bdd by Marc Haber at 2025-03-06T18:22:40+01:00 reformat otherwise unchanged tests Git-Dch: ignore - - - - - 1ff7cf17 by Marc Haber at 2025-03-06T18:22:40+01:00 define my $nextid Git-Dch: ignore - - - - - 7782fd4c by Marc Haber at 2025-03-06T18:22:40+01:00 double non-system user tests the second instance should fail but don't change anything with the user Git-Dch: ignore - - - - - aeee5b04 by Marc Haber at 2025-03-06T18:22:40+01:00 re-work explicit --uid tests reformat system calls double test, second instance should fail (Object Exists) - - - - - e1808761 by Marc Haber at 2025-03-06T18:22:40+01:00 re-work expclit --uid tests (3) reformat system calls triple test, second instance should fail (Object exits) third instance with different uid should fail as well (Object exists) Git-Dch: ignore - - - - - 22b7a697 by Marc Haber at 2025-03-06T18:54:58+01:00 re-work explicit --uid tests (4) reformat system calls double test, second instance should fail (Object exists) third instance with different uid should fail as well (Object exists) fourth instance with another different uid should fail as well (Object exists) Git-Dch: ignore - - - - - 42b39fab by Marc Haber at 2025-03-06T18:54:58+01:00 re-work system user explicit --uuid tests triple test first repeat should succeed and change nothing second repeat with differen uid should fail (Wrong Object Parameters) and change nothing Git-Dch: ignore - - - - - 67358f78 by Marc Haber at 2025-03-06T18:54:58+01:00 re-work system user explicit --uid tests (2) double test first repeat should succeed Git-Dch: ignore - - - - - 5a5e2fee by Marc Haber at 2025-03-06T21:08:25+01:00 fix logic error in assert_command_result_silent Git-Dch: ignore - - - - - 29fa2469 by Marc Haber at 2025-03-06T21:08:50+01:00 fix wrong expected commmand result for no primary GID Git-Dch: ignore - - - - - 9cb7eb46 by Marc Haber at 2025-03-07T09:30:08+01:00 fix misdetection of non-system accounts as system accounts - - - - - 9a5e538e by Marc Haber at 2025-03-07T09:30:44+01:00 new group creation test - - - - - 72fc8dbf by Marc Haber at 2025-03-07T09:30:56+01:00 adduser --system is now silent when account is already there Git-Dch: ignore - - - - - 6f4fab36 by Marc Haber at 2025-03-07T09:31:55+01:00 fixup! fix wrong expected commmand result for no primary GID - - - - - d3540575 by Marc Haber at 2025-03-07T09:32:34+01:00 re-work system_status.t Git-Dch: ignore - - - - - 16ceed68 by Tianyu Chen at 2025-03-08T10:32:13+00:00 Update Simplified Chinese program translation Thanks: Tianyu Chen - - - - - f79c4e26 by Marc Haber at 2025-03-08T15:14:42+01:00 add helper script to regenerate po/adduser.pot Git-Dch: ignore - - - - - 581c5186 by Marc Haber at 2025-03-08T15:14:42+01:00 regenerate po/adduser.pot Git-Dch: ignore - - - - - 2256130a by Marc Haber at 2025-03-08T15:14:42+01:00 regenerate program po files also Git-Dch: ignore - - - - - 5603269a by Marc Haber at 2025-03-08T15:14:42+01:00 Update German program translation Thanks: Helge Kreutzmann Closes: #1099678 - - - - - 301a83b4 by Marc Haber at 2025-03-08T15:14:42+01:00 Update Polish program translation Thanks: Grzegorz Kuczy?ski - - - - - 81901d2a by Marc Haber at 2025-03-08T15:14:42+01:00 Update Japanese program translation Thanks: Sadaharu Wakisaka - - - - - f31c06cd by Marc Haber at 2025-03-08T15:14:42+01:00 Update German program translation Thanks: Helge Kreutzmann Closes: #1099678 - - - - - 5233a6f0 by Marc Haber at 2025-03-08T15:14:42+01:00 Update Portuguese program translation Thanks: Am?rico Monteiro Closes: #1099771 - - - - - 5a95e670 by Marc Haber at 2025-03-08T15:14:42+01:00 add preliminary generate_pot.sh Git-Dch: ignore - - - - - a4b36445 by Marc Haber at 2025-03-08T17:13:17+01:00 streamline tests Git-Dch: ignore - - - - - 1baf1fb6 by Marc Haber at 2025-03-08T17:13:32+01:00 streamline tests? ? Git-Dch: ignore? - - - - - 98024c15 by Marc Haber at 2025-03-08T17:13:39+01:00 streamline tests? ? Git-Dch: ignore? - - - - - 4f40578c by Marc Haber at 2025-03-08T17:13:42+01:00 streamline tests? ? Git-Dch: ignore? - - - - - e8169967 by Marc Haber at 2025-03-08T17:13:46+01:00 streamline tests? ? Git-Dch: ignore? - - - - - d82cdbbc by Marc Haber at 2025-03-08T17:13:51+01:00 streamline tests? ? Git-Dch: ignore? - - - - - 1a209aa3 by Marc Haber at 2025-03-08T17:13:56+01:00 streamline tests? ? Git-Dch: ignore? - - - - - 1e62d96b by Marc Haber at 2025-03-08T17:14:20+01:00 prepare release Git-Dch: ignore - - - - - b2b99af5 by Marc Haber at 2025-03-08T17:35:29+01:00 prepare new version Git-Dch: ignore - - - - - cc0a26d4 by Marc Haber at 2025-03-08T17:37:46+01:00 Update Galician program translation Thanks: Parodper - - - - - e764bde3 by Marc Haber at 2025-03-10T08:04:10+01:00 Update Czech program translation Thanks: Miroslav Kure Closes: #1099934 - - - - - 207e8c38 by Marc Haber at 2025-03-10T08:08:46+01:00 Add Basque program translation Thanks: I?aki Larra?aga Murgoitio - - - - - 91965c30 by Marc Haber at 2025-03-10T08:30:41+01:00 Update POT file for manpage translations - - - - - cbd2ee45 by Grzegorz Kuczynski at 2025-03-10T11:09:45+00:00 Edit pl.po (translate and fix some format) - - - - - f291f545 by Carles Pina i Estany at 2025-03-13T06:38:39+00:00 Update Catalan translation - - - - - 89408542 by Marc Haber at 2025-03-15T15:19:44+01:00 Update Japanese program translation Thanks: Sadaharu Wakisaka - - - - - ef434704 by Marc Haber at 2025-03-15T15:19:44+01:00 Update French program and man page translations. Thanks: Jean-Paul Guillonneau Closes: #1100089 - - - - - 5fb6d5e5 by Marc Haber at 2025-03-15T15:19:44+01:00 Update Russian program translation Thanks: Yuri Kozlov Closes: #1100500 - - - - - 93d832f9 by Marc Haber at 2025-03-15T15:19:44+01:00 Update Brasilian Portuguese man page translation Thanks: Paulo Henrique de Lima Santana Closes: #1100552 - - - - - 40f8f958 by Marc Haber at 2025-03-15T15:19:44+01:00 Update German man page translation Thanks: Helge Kreutzmann Closes: #1100555 - - - - - 6e326e87 by Marc Haber at 2025-03-15T15:19:44+01:00 explicitly unset BASH_ENV Thanks: James Trocknell Closes: #1100023 - - - - - b84b2cfa by Marc Haber at 2025-03-15T15:19:57+01:00 regenerate pot and po files for man page translations I am doing this to see how much it hurts. Learning how to handle transaltion, see discussion on debian-devel - - - - - 1ac4e0ff by Marc Haber at 2025-03-15T15:20:56+01:00 regenerate pot and po files for program translations I am doing this to see how much it hurts. Learning how to handle translation, see discussion on debian-devel - - - - - 52e4b268 by Marc Haber at 2025-03-15T17:54:29+01:00 streamline formatting of adduser_system.d Git-Dch: ignore - - - - - 40f4910f by Marc Haber at 2025-03-15T18:45:46+01:00 test adduser --home while checking stderr Git-Dch: ignore - - - - - ec43b0c6 by Marc Haber at 2025-03-15T21:56:34+01:00 make adduser --system --home silent if directory exists Closes: #1100032 - - - - - 5fa3e5da by Marc Haber at 2025-03-15T22:27:28+01:00 Update Romanian program translation Thanks: Remus-Gabriel Chelu Closes: #1100600 - - - - - 057d968d by Marc Haber at 2025-03-15T22:33:32+01:00 Update Dutch program and man page translation Thanks: Frans Spiesschaert Closes: #1100585, #1100586 - - - - - ed084317 by Marc Haber at 2025-03-16T16:14:44+01:00 fix bug that causes empty POT file Git-Dch: ignore - - - - - ee5efd8f by Marc Haber at 2025-03-16T16:15:16+01:00 fix empty POT file for program translation Git-Dch: ignore - - - - - 5290a7d1 by Marc Haber at 2025-03-16T16:15:39+01:00 commit updated PO files Git-Dch: ignore - - - - - 9cb6cf93 by Marc Haber at 2025-03-18T09:13:55+01:00 don't truncate log messages in sanitizing This now replaces unknown characters by _ and it explicitly allows ` and ' Thanks: Andrew Sayers Closes: #1100707 - - - - - 787902f8 by Marc Haber at 2025-03-18T09:13:55+01:00 Better docs regarding adduser --system --home - - - - - 42210038 by Marc Haber at 2025-03-18T09:13:55+01:00 reduce po4a keep percentage to 60 % - - - - - 10d533ae by Marc Haber at 2025-03-18T09:13:55+01:00 update manpage POT file (streamline header) - - - - - db9563be by Marc Haber at 2025-03-18T09:13:55+01:00 update man page translation PO files, streamline headers - - - - - e5346da3 by Marc Haber at 2025-03-20T10:15:44+01:00 add new test for copying /etc/skel this also includes testing with a file name that contains a space (#1100858) Git-Dch: ignore - - - - - a33b2612 by Marc Haber at 2025-03-20T10:17:57+01:00 allow spaces in pathre, $ in simplepathre all usages of pathre have been examined for probable problems with spaces in file names Git-Dch: ignore - - - - - 15fc751b by Marc Haber at 2025-03-20T10:19:44+01:00 use simplepathre for home directory and configuratio nfiles Git-Dch: ignore - - - - - 9c9d7016 by Marc Haber at 2025-03-20T10:20:09+01:00 new function assert_path_is_a_file Git-Dch: ignore - - - - - 449d882c by Marc Haber at 2025-03-20T10:30:56+01:00 move environment cleansing earlier Git-Dch: ignore - - - - - b11f58d7 by Marc Haber at 2025-03-20T10:37:29+01:00 use simplepathre for home directory Git-Dch: ignore - - - - - d3d81ca6 by Marc Haber at 2025-03-20T10:37:53+01:00 add adduser.local.8 to po4a.conf Git-Dch: ignore - - - - - 4e17c238 by Marc Haber at 2025-03-20T13:20:54+01:00 update debian/copyright - - - - - 490739e3 by Marc Haber at 2025-03-20T13:21:26+01:00 update copyright notices - - - - - 9aa38e12 by Marc Haber at 2025-03-20T13:21:40+01:00 add debian/tests/copyright - - - - - e11f0755 by Marc Haber at 2025-03-20T14:09:17+01:00 re-work generate_pot.sh Thanks: Maytham Alsudany Git-Dch: ignore - - - - - d5831d93 by Marc Haber at 2025-03-20T14:09:17+01:00 commit check_pot.sh Thanks: Maytham Alsudany - - - - - e09d256e by Marc Haber at 2025-03-20T14:09:17+01:00 update program translation POT Git-Dch: ignore - - - - - 26f134cc by Marc Haber at 2025-03-20T14:09:17+01:00 Update PO files, streamline headers Git-Dch: ignore - - - - - 78454440 by Marc Haber at 2025-03-20T14:24:37+01:00 prepare release Git-Dch: ignore - - - - - fe838efb by Marc Haber at 2025-03-20T14:50:42+01:00 prepare new version Git-Dch: ignore - - - - - aa286909 by Marc Haber at 2025-03-20T21:41:20+01:00 update German manual page translation Thanks: Helge Kreutzmann Closes: #1100936 - - - - - 7547c7f8 by Marc Haber at 2025-03-21T06:18:55+01:00 Update Romanian man page translation. Thanks: Remus-Gabriel Chelu Closes: #1100956 - - - - - a8a37fbd by Marc Haber at 2025-03-21T07:27:29+01:00 extend skel test to give output if it fails This might help to find out why autopkgtests on debci fail - - - - - 57f0b530 by Marc Haber at 2025-03-21T15:13:49+01:00 prepare release Git-Dch: ignore - - - - - b1f26565 by Marc Haber at 2025-03-21T15:19:58+01:00 Standards-Version: 4.7.2 (no changes necessary) - - - - - b2da3011 by Marc Haber at 2025-03-21T15:20:48+01:00 fix debian/copyright Git-Dch: ignore - - - - - 41279f80 by Marc Haber at 2025-03-21T15:21:03+01:00 prepare release again Git-Dch: ignore - - - - - 48158c83 by Marc Haber at 2025-03-21T15:36:59+01:00 fix copyright, again Git-Dch: ignore - - - - - fa46c1b9 by Marc Haber at 2025-03-21T21:49:08+01:00 prepare new version - - - - - 57cf04da by Marc Haber at 2025-03-22T06:43:24+01:00 more improvement of output in skel.t - - - - - 62a00f32 by Marc Haber at 2025-03-22T06:52:15+01:00 prepare release Git-Dch: ignore - - - - - 5d294773 by Marc Haber at 2025-03-22T07:25:52+01:00 prepare new version Git-Dch: ignore - - - - - 2c01f77f by Marc Haber at 2025-03-22T10:40:03+01:00 sort find output in skel.t - - - - - c0654f13 by Marc Haber at 2025-03-22T10:41:05+01:00 prepare release Git-Dch: ignore - - - - - bf701ea3 by Marc Haber at 2025-03-22T11:13:31+01:00 prepare new version Git-Dch: ignore - - - - - 1690913b by Marc Haber at 2025-03-25T08:35:05+01:00 unset $ENV{CDPATH}. Thanks: John Darrah - - - - - 153d1cf9 by Marc Haber at 2025-03-27T09:19:39+01:00 update Brazilian Portuguese man page translation Thanks: Paulo Henrique de Lima Santana (phls) Closes: #1101390 - - - - - 2ad38508 by Marc Haber at 2025-03-28T07:33:03+01:00 use require instead of use, to allow running without perl-modules Thanks: Samuel Thibault Closes: #1101454 - - - - - 3ed81357 by Marc Haber at 2025-03-28T07:51:46+01:00 give meaningful names to autopkgtests Git-Dch: ignore - - - - - 2328eedb by Marc Haber at 2025-03-28T12:20:48+01:00 deluser does not error out if File::Find missing It errors out when --system is not given. If --system, it's only a warning - - - - - 7130f9d6 by Marc Haber at 2025-03-28T12:21:31+01:00 add check_dir_exist Git-Dch: ignore - - - - - 085710bd by Marc Haber at 2025-03-28T12:21:53+01:00 avoid deluser --remove-home if --remove-home is not being tested Git-Dch: ignore - - - - - 14b21bee by Marc Haber at 2025-03-28T12:22:19+01:00 rework test2.pl to handle File::Find not being present And to test handling of --remove-home in both cases Git-Dch: ignore - - - - - f2db0a59 by Marc Haber at 2025-03-28T12:22:46+01:00 run upstream test suite a second time without dependencies Git-Dch: ignore - - - - - e873b8ea by Marc Haber at 2025-03-28T14:21:39+01:00 prepare release - - - - - 645ffefd by Marc Haber at 2025-03-28T14:30:47+01:00 add gbp.conf - - - - - f820f6ae by Marc Haber at 2025-03-28T15:35:20+01:00 prepare new version - - - - - f809ad7d by Marc Haber at 2025-03-28T20:13:14+01:00 update Romanian manual page translation Thanks: Remus-Gabriel Chelu Closes: #1101518 - - - - - 191ea131 by Marc Haber at 2025-03-28T22:35:26+01:00 Update German manual page translation Thanks: Helge Kreutzmann Closes: #1101523 - - - - - 359a4762 by Marc Haber at 2025-03-30T09:29:48+02:00 fix commentre, it accidentally allowed "-_ (" to _) - - - - - 2b84e18a by Marc Haber at 2025-03-30T21:02:37+02:00 update Brazilian Portuguese program translation Thanks: Adriano Rafael Gomes Closes: #1101702 - - - - - 24b3b714 by Marc Haber at 2025-04-20T19:01:18+02:00 Update portuguese man page translation Thanks: Am?rico Monteiro Closes: #1103635 - - - - - 5434fccc by Marc Haber at 2025-04-28T21:04:29+02:00 update dutch man page translation Closes: #1104314 Thanks: Frans Spiesschaert - - - - - db86242f by Marc Haber at 2025-05-02T14:40:07+02:00 prepare release - - - - - 3a5dbe97 by Marc Haber at 2025-05-02T15:36:53+02:00 prepare new version Git-Dch: ignore - - - - - bc8e1834 by Marc Haber at 2025-05-05T14:13:21+02:00 add test to chck for basic international chars in comment Git-Dch: ignore - - - - - e2630577 by Marc Haber at 2025-05-05T14:13:21+02:00 add minimal test for weird chars in comment Git-Dch: ignore - - - - - 239e0a91 by Marc Haber at 2025-05-05T14:13:21+02:00 workaround for #1104726 in perl - - - - - d310aef9 by Marc Haber at 2025-05-05T14:13:21+02:00 rework commentre to allow more characters in comment - - - - - f0986465 by Marc Haber at 2025-05-05T19:47:51+02:00 add check_user_comment Git-Dch: ignore - - - - - 4f14d633 by Marc Haber at 2025-05-05T21:11:03+02:00 implement user_comment test, comment tests that currently fail Git-Dch: ignore - - - - - 57392211 by Marc Haber at 2025-05-05T21:11:03+02:00 stop sanitizing new_comment Git-Dch: ignore - - - - - 9dcdd8b3 by Marc Haber at 2025-05-05T21:11:03+02:00 mark comment variable as tainted in the name Git-Dch: ignore - - - - - 0eb5a59b by Marc Haber at 2025-05-05T21:11:03+02:00 re-work ch_comment function Git-Dch: ignore the function no longer accesses the global $new_name the function no longer uses chfn but sets the complete field - - - - - 66b1d5a3 by Marc Haber at 2025-05-06T10:14:41+02:00 unconditionally sanitize comment right before calling usermod Git-Dch: ignore - - - - - aff96082 by Marc Haber at 2025-05-06T10:14:41+02:00 adapt autopkgtests to not expect ,,, in comment field Git-Dch: ignore - - - - - 6842a9b5 by Marc Haber at 2025-05-06T10:14:41+02:00 activate all those strange characters in comment test Git-Dch: ignore - - - - - 48ca8ba8 by Marc Haber at 2025-05-06T19:24:56+02:00 add failing test to comment test10.pl Git-Dch: ignore - - - - - dd3c9a8e by Marc Haber at 2025-05-06T19:25:22+02:00 check comment for control chars and : Git-Dch: ignore - - - - - ecfd9713 by Marc Haber at 2025-05-06T20:50:39+02:00 prepare release - - - - - 9359a625 by Marc Haber at 2025-05-06T21:28:53+02:00 prepare new version Git-Dch: ignore - - - - - bafa2ebb by Marc Haber at 2025-06-18T19:23:15+02:00 fix spacing and other errors in deluser.8 man page Thanks: Bjarni Ingi Gislason Closes: #1107990Bjarni Ingi Gislason Closes: #1105900 - - - - - 0b47af52 by Marc Haber at 2025-09-14T13:07:16+02:00 prepare release Git-Dch: ignore - - - - - 56586a81 by Marc Haber at 2025-09-14T13:22:49+02:00 add translation instructions to README.source Git-Dch: ignore - - - - - 2111b24c by Marc Haber at 2025-09-14T13:23:05+02:00 update program translation templates Git-Dch: ignore - - - - - cb34cf6e by Marc Haber at 2025-09-14T13:23:28+02:00 update manual page translation templates Git-Dch: ignore - - - - - 80583c45 by Marc Haber at 2025-09-14T13:53:35+02:00 prepare upload Git-Dch: ignore - - - - - ae36756e by Matt Barry at 2025-09-14T14:38:02+02:00 add --no-copy-skel option Fixes: #1099633 - - - - - 1150d03a by Matt Barry at 2025-09-14T14:38:02+02:00 document --no-copy-skel - - - - - 53262f1e by Marc Haber at 2025-10-14T06:35:17+02:00 rename testsuite file names for better ordering Git-Dch: ignore - - - - - 6711e06b by Marc Haber at 2025-10-14T06:35:17+02:00 remove doubled semicolon. Git-Dch: ignore - - - - - 9f48853a by Marc Haber at 2025-10-14T06:35:17+02:00 fix brace position Git-Dch: ignore - - - - - dc525e22 by Marc Haber at 2025-10-14T06:35:17+02:00 fix readding -> reading Git-Dch: ignore - - - - - 77331713 by Marc Haber at 2025-10-14T06:35:17+02:00 fix indent Git-Dch: ignore - - - - - c1ea85e2 by Marc Haber at 2025-10-14T07:08:02+02:00 add test for deluser --group Git-Dch: ignore - - - - - c68dcbb6 by Marc Haber at 2025-10-14T07:08:02+02:00 make deluser --group work as documented This a drive-by fix 1109329, when another user reported an unrelated issue - - - - - 3d9569f1 by Marc Haber at 2025-10-14T07:08:02+02:00 add a test for deluser with a user-specific option Git-Dch: ignore - - - - - d8e3b97d by Marc Haber at 2025-10-14T07:08:02+02:00 have delgroup reject user-specific command line options This a drive-by fix 1109329, when another user reported an unrelated issue - - - - - 02ad950a by Marc Haber at 2025-10-14T07:08:02+02:00 correctly sanitize names in deluser Thanks: Dagfinn Ilmari Manns?ker Closes: #1109329 - - - - - 8affe7fe by Marc Haber at 2025-11-13T17:11:11+01:00 update Swedish program and man page translation Thanks: Daniel Nylander - - - - - 5cab6020 by Matt Barry at 2025-12-31T22:06:33+01:00 refactor existing_*_ok replace with new existing_(user|group)_status, which return a bitmask value corresponding to these constants: EXISTING_NOT_FOUND EXISTING_FOUND EXISTING_SYSTEM EXISTING_ID_MISMATCH (and EXISTING_LOCKED, which is unused in this branch) - - - - - 880016e7 by Marc Haber at 2025-12-31T22:06:33+01:00 more instrumentation output for system_status.t Git-Dch: ignore - - - - - e70ae9fe by Marc Haber at 2025-12-31T22:06:33+01:00 more instrumentation to identify tests Git-Dch: ignore - - - - - b3528efb by Marc Haber at 2025-12-31T22:06:33+01:00 adapt test9 for new message output Git-Dch: ignore - - - - - be1c4866 by Marc Haber at 2025-12-31T22:06:33+01:00 adapt test to #109934 (EXISTING_HAS_PASSWORD) Git-Dch: ignore - - - - - f171e53f by Marc Haber at 2025-12-31T22:06:33+01:00 document a new error case (#1099734, EXISTING_HAS_PASSWORD) Git-Dch: ignore - - - - - a459fbb2 by Marc Haber at 2025-12-31T22:06:33+01:00 implement EXISTING_HAS_PASSWORD Git-Dch: ignore - - - - - 5969119b by Marc Haber at 2025-12-31T22:06:33+01:00 improve documentation for check_user_group Git-Dch: ignore - - - - - 81e16856 by Marc Haber at 2025-12-31T22:47:15+01:00 adapt test to #109934 (EXISTING_HAS_PASSWORD) Git-Dch: ignore - - - - - 268c6987 by Marc Haber at 2025-12-31T22:58:24+01:00 implement EXISTING_HAS_PASSWORD Git-Dch: ignore - - - - - b7e299b5 by Marc Haber at 2025-12-31T23:05:57+01:00 improve documentation in existing_*_status Git-Dch: ignore - - - - - bf4f9bbc by Marc Haber at 2025-12-31T23:06:03+01:00 make adduser error out if --system and account has a password Closes: #1099734 - - - - - abc484c8 by Marc Haber at 2025-12-31T23:26:12+01:00 remove redundant Rules-Requires-Root: no Git-Dch: ignore - - - - - ef6077b8 by Marc Haber at 2026-01-01T00:00:10+01:00 adduser (3.154) unstable; urgency=medium * The Happy New Year 2026 Release [ Matt Barry ] * add --no-copy-skel option (Closes: #1099633) * document --no-copy-skel * refactor existing_*_ok [ Marc Haber ] * make deluser --group work as documented. * have delgroup reject user-specific command line options. * correctly sanitize names in deluser. Thanks to Dagfinn Ilmari Manns?ker (Closes: #1109329) * update Swedish program and man page translation. Thanks to Daniel Nylander * make adduser error out if --system and account has a password (Closes: #1099734) [dgit import package adduser 3.154] - - - - - a5954fb5 by Marc Haber at 2026-01-01T00:00:12+01:00 changelog, prepare release - - - - - 3b908e86 by Marc Haber at 2026-01-01T09:49:53+01:00 fix trailing whitespace Git-Dch: ignore - - - - - 45130b7e by Marc Haber at 2026-01-01T09:50:08+01:00 improve trace message Git-Dch: ignore - - - - - 8f983f14 by Marc Haber at 2026-01-01T09:50:23+01:00 add new trace message Git-Dch: ignore - - - - - e68be588 by Marc Haber at 2026-01-01T09:50:50+01:00 fix trailing whitespace Git-Dch: ignore - - - - - c6e00abb by Marc Haber at 2026-01-01T09:51:08+01:00 make parenthesis symmetric to existing_user_status Git-Dch: ignore - - - - - 7473a302 by Marc Haber at 2026-01-01T09:51:36+01:00 have existing_group_status error out on EXISTING_ID_MISMATCH Git-Dch: ignore - - - - - 2d5414e8 by Marc Haber at 2026-01-01T09:52:21+01:00 move trace message to the correct place Git-Dch: ignore - - - - - 68cbd016 by Marc Haber at 2026-01-01T10:51:23+01:00 restore check_user_group to what it was previously Some changes didn't survive a merge, old version was better - - - - - 5350d950 by Marc Haber at 2026-01-07T08:29:35+01:00 remove debian/tests/f/cronjack.t useradd won't allow adding that user name any more - - - - - 9f191f0d by Marc Haber at 2026-01-10T20:46:14+01:00 Depend on passwd 1:4.19.0-2 src:shadow 4.19.0 has tightened its user name checks. Our check for the crontab hijack vulnerability is therefore no longer possible. The change to src:shadow prevents that vulnerability earlier than we could, so we depend on that version now. - - - - - 8e67780f by Marc Haber at 2026-01-11T07:41:25+01:00 Give chpasswd test values that it will accept This is to work around the more picky chpasswd in new src:shadow - - - - - 3c3ce5fc by Temuri Doghonadze at 2026-01-15T19:57:32+01:00 po: Add Georgian translation Thanks: Temuri Doghonadze - - - - - d5820aed by Marc Haber at 2026-01-15T20:14:14+01:00 rework EXISTING_ and existing_user_status this redefines the EXISTING variables simplifies the EXISTING states (they were overengineered and redundant) reworks existing_user_status, improving logic and output The new variable values are also read by the test suites and need to be in sync Thanks: Matt Barry - - - - - 7411b944 by Marc Haber at 2026-01-15T20:14:14+01:00 move Marc's test10.pl to test11.pl to make Room Git-Dch: ignore - - - - - 6fd5b276 by Marc Haber at 2026-01-15T20:14:14+01:00 add vim helper line to testsuite files The files need to be reflowed when working on them next time Git-Dch: ignore - - - - - 85ab6531 by Marc Haber at 2026-01-15T20:14:14+01:00 prepare upstream testsuite for EXISTING_ Git-Dch: ignore - - - - - a564b059 by Marc Haber at 2026-01-15T20:14:14+01:00 various fixes in lib_test.pm Git-Dch: ignore - - - - - b4d7296f by Marc Haber at 2026-01-15T20:14:14+01:00 rework runsuite.sh This now allows running a single test, and cleans up better Git-Dch: ignore - - - - - dc304334 by Marc Haber at 2026-01-15T20:14:14+01:00 make more clear that failure was expected Git-Dch: ignore - - - - - d8b8b515 by Marc Haber at 2026-01-15T20:14:14+01:00 fix testsuite warning in test08.pl Git-Dch: ignore - - - - - 51c81c3e by Marc Haber at 2026-01-16T07:59:20+01:00 improve log level handling Thanks: Matt Barry Git-Dch: ignore - - - - - b7725726 by Marc Haber at 2026-01-16T07:59:20+01:00 clarify documentation of exit value 31 Git-Dch: ignore - - - - - 571f8054 by Marc Haber at 2026-01-16T07:59:20+01:00 rename to RET_INVALID_CHARS_IN_INPUT, apply to comment as well That was RET_INVALID_CHARS_IN_INPUT previously. The check is now applied to the comment as well and the error message adapted. Git-Dch: ignore - - - - - 783d4d09 by Marc Haber at 2026-01-16T07:59:20+01:00 move interactive command loops to a function This is more streamlined and handles running on no terminal better - - - - - 8ec9dd8a by Marc Haber at 2026-01-16T07:59:20+01:00 re-work logic around remove-home etc Git-Dch: ignore - - - - - ab1adc30 by Marc Haber at 2026-01-16T07:59:20+01:00 prepare testsuite libraries to properly handle EXISTING_ this brings the simplifications to the test suite libraries Git-Dch: ignore - - - - - 67c314d0 by Marc Haber at 2026-01-16T07:59:20+01:00 add assert_path_is_a_file to debian/tests/lib Git-Dch: ignore - - - - - 26e35d01 by Marc Haber at 2026-01-17T15:15:05+01:00 add AdduserStatefile.pm to maintain state file - - - - - 9bf89c5d by Marc Haber at 2026-01-17T15:15:05+01:00 install AdduserStatefile, remove state file on postrm Git-Dch: ignore - - - - - c462807a by Marc Haber at 2026-01-17T15:15:05+01:00 use AdduserStatefile Git-Dch: ignore - - - - - 1fa65cad by Marc Haber at 2026-01-17T15:15:05+01:00 fix EXISTING_HAS_PASSWORD to correctly handle ! This now also handles !something in the password field - - - - - 223579fc by Matt Barry at 2026-01-17T15:15:05+01:00 deluser --lock [--system] * Add --lock/--unlock options for dealing with disabled accounts. See documentation. Should probably have a notice specifically about behavioral changes (eg. adding/removing system accounts). - - - - - c23643a0 by Marc Haber at 2026-01-17T15:15:05+01:00 adduser --unlock [--system] - - - - - 9e761834 by Matt Barry at 2026-01-17T15:15:05+01:00 the documentation commit this contains documentation changes related to account locking. might still need some work. - - - - - 69283b89 by Matt Barry at 2026-01-17T15:15:05+01:00 add some basic tests - - - - - 5937f07b by Matt Barry at 2026-01-17T15:15:05+01:00 locked.account.tests - - - - - af5837f0 by Marc Haber at 2026-01-19T09:04:28+01:00 changelog for the latest merge request cascade Git-Dch: ignore - - - - - b37b0293 by Marc Haber at 2026-01-19T09:09:35+01:00 Updated German man page translation Thanks: Helge Kreutzmann Closes: #1125135 - - - - - 9e807858 by Marc Haber at 2026-01-19T09:11:55+01:00 Updated Portguese man page and program translation. Thanks: Am?rico Monteiro Closes: #1118370 - - - - - 58261a74 by Marc Haber at 2026-01-19T09:13:05+01:00 Updated Durch man page translation. Thanks: Frans Spiesschaert Closes: #1118209 - - - - - 7a108334 by Marc Haber at 2026-01-24T08:31:44+01:00 remove GROUPHOMES and LETTERHOMES configuration options - - - - - 9b223f9b by Marc Haber at 2026-01-24T08:31:44+01:00 remove SETGID_HOME configuration option - - - - - e120eb0b by Marc Haber at 2026-01-24T08:31:44+01:00 remove deprecated QUOTAUSER configuration option - - - - - f4307089 by Marc Haber at 2026-01-24T08:31:44+01:00 document option removals Git-Dch: ignore - - - - - 9b462650 by Marc Haber at 2026-01-24T18:05:09+01:00 man page improvements for adduser.8 Closes: #1124790 Thanks: Bjarni Ingi Gislason - - - - - 53f66175 by Marc Haber at 2026-01-24T18:05:09+01:00 apply correcting patch from #1105900 Thanks: Bjarni Ingi Gislason Closes: #1105900 - - - - - 77e792df by Marc Haber at 2026-03-27T10:14:08+01:00 write test cases to trigger #1125601 - - - - - fa4b3466 by Marc Haber at 2026-03-27T10:14:08+01:00 rework config reading and check *_dir_mode this makes sure that dir_mode and sys_dir_mode is verified valid octal improve perl code Git-Dch: ignore - - - - - d96e86fa by Marc Haber at 2026-03-27T10:14:08+01:00 allow deluser to delete files with UTF-8 file name We don't do anything dangerous with those file names, so we can just untaint them regaring of what chars they contain Git-Dch: ignore - - - - - 753db0ba by Marc Haber at 2026-03-27T10:14:08+01:00 fix very strange cut&paste accident Git-Dch: ignore - - - - - c9893992 by Marc Haber at 2026-03-27T10:14:08+01:00 allow /etc/skel to contain files with UTF-8 file names This moves home dir creation to a new module AdduserCreateHomedir Closes: #1125681 Thanks: Mert Ok - - - - - 2c01d6d9 by Marc Haber at 2026-03-27T10:14:08+01:00 update copyright year Git-Dch: Ignore - - - - - ef1fcf84 by Marc Haber at 2026-03-27T10:14:08+01:00 use new create_homedir() Git-Dch: ignore - - - - - 8b28a9c3 by Marc Haber at 2026-03-27T10:14:08+01:00 remove functions that have been moved to AdduserCreateHomedir Git-Dch: ignore - - - - - aa90dad5 by Marc Haber at 2026-03-27T10:33:35+01:00 copy over find_unused_* functions from upstream testsuites Closes: #1015781 - - - - - e3bca5b4 by Marc Haber at 2026-03-27T10:33:35+01:00 rewrite find_unused_name Git-Dch: ignore - - - - - 1457deeb by Marc Haber at 2026-03-27T10:36:28+01:00 adapt indent to 4 spaces Git-Dch: ignore - - - - - 0452d690 by Marc Haber at 2026-03-27T10:36:28+01:00 adapt upstream tests to new find_unused_name signature and give mode identifyable test user names Git-Dch: ignore - - - - - 19046fc8 by Marc Haber at 2026-03-27T10:36:28+01:00 modify clones.t to use find_unused_name Git-Dch: ignore - - - - - 550b7951 by Marc Haber at 2026-03-27T21:54:21+01:00 changelog - - - - - 9f51b00a by Marc Haber at 2026-03-28T10:20:53+01:00 prepare release - - - - - da27998e by Marc Haber at 2026-03-28T10:21:10+01:00 fix typo in Portuguese Git-Dch: ignore - - - - - a7de708b by Marc Haber at 2026-03-28T10:16:28+01:00 Declare fast forward from 3.154 [dgit --overwrite] - - - - - 259fed18 by Marc Haber at 2026-06-01T05:51:57+02:00 clarify adduser pool format documentation Git-Dch: ignore - - - - - b979e1ef by Marc Haber at 2026-06-01T05:51:57+02:00 remove trailing slashes from example pool directories Git-Dch: ignore - - - - - 402b47dd by Marc Haber at 2026-06-01T05:51:57+02:00 ignore extra fields at the end of pool file lines - - - - - febb7a47 by Marc Haber at 2026-06-01T05:51:57+02:00 clarify pool file read warnings Git-Dch: ignore - - - - - 87fdeaad by Marc Haber at 2026-06-01T05:51:57+02:00 remove trailing slaehes from pool directories Git-Dch: ignore - - - - - 215f4b7b by Marc Haber at 2026-06-01T06:06:59+02:00 streamline log level names. Closes: #1132881 - - - - - 46250627 by Marc Haber at 2026-06-01T06:23:21+02:00 demote "crontab not found" warning to info it is now perfectly normal to run a system that doesn't have cron - - - - - b2eedf89 by Marc Haber at 2026-06-01T07:07:25+02:00 prepare release Git-Dch: ignore - - - - - 468b9cd8 by Dustin Kirkland at 2026-06-01T09:31:48+02:00 Add support for encrypting home directories * adduser: Add --encrypt-home option, which calls ecryptfs-setup-private for the hard work. * doc/adduser.8: document the --encrypt-home option * debian/control: suggest ecryptfs-utils >= 67-1 * deluser: remove all of /var/lib/ecryptfs/$user with --remove-home - - - - - 29ac4c53 by Mateus Rodrigues de Morais at 2026-06-01T09:31:48+02:00 Add encrypted home tests with isolation-machine restriction - - - - - 109 changed files: - AdduserCommon.pm - + AdduserCreateHomedir.pm - AdduserLogging.pm - AdduserRetvalues.pm - + AdduserStatefile.pm - adduser - adduser.conf - + check_pot.sh - debian/NEWS - debian/README - + debian/README.source - debian/changelog - debian/control - debian/copyright - + debian/gbp.conf - debian/postrm - debian/rules - debian/salsa-ci.yml - debian/tests/control - + debian/tests/copyright - + debian/tests/ecryptfs/encrypt_home.t - + debian/tests/f/account_locks.t - debian/tests/f/adduser_system.t - + debian/tests/f/addusertogroup_underscore.t - debian/tests/f/backups.t - debian/tests/f/clones.t - debian/tests/f/cron_jobs.t - ? debian/tests/f/cronjack.t - debian/tests/f/deluser_files.t - debian/tests/f/deluser_quiet.t - debian/tests/f/disabled-login-password.t - + debian/tests/f/group_creation.t - + debian/tests/f/home-nonexistent-no-create-home.t - debian/tests/f/locks.t - debian/tests/f/quiet.t - + debian/tests/f/skel.t - debian/tests/f/system_status.t - debian/tests/f/user_group.t - debian/tests/f/valid_username.t - debian/tests/lib/AdduserTestsCommon.pm - deluser - deluser.conf - doc/adduser.8 - doc/adduser.conf.5 - doc/adduser.local.8 - doc/deluser.8 - doc/deluser.conf.5 - doc/po4a/po/adduser.pot - doc/po4a/po/da.po - doc/po4a/po/de.po - doc/po4a/po/es.po - doc/po4a/po/fr.po - doc/po4a/po/it.po - doc/po4a/po/nl.po - doc/po4a/po/pl.po - doc/po4a/po/pt.po - doc/po4a/po/pt_BR.po - doc/po4a/po/ro.po - doc/po4a/po/ru.po - doc/po4a/po/sv.po - doc/po4a/po4a.conf - doc/po4a/translator_french.add - ? doc/po4a/translator_french2.add - doc/po4a/translator_pt_BR.add - + doc/po4a/translator_romanian.add - + generate_pot.sh - log_test - + notes.100808x.md - po/adduser.pot - po/ca.po - po/cs.po - po/da.po - po/de.po - po/es.po - po/eu.po - po/fr.po - po/gl.po - po/hu.po - po/it.po - po/ja.po - + po/ka.po - po/ko.po - po/nb.po - po/nl.po - po/pl.po - po/pt.po - po/pt_BR.po - po/ro.po - po/ru.po - po/sk.po - po/sv.po - po/uk.po - po/vi.po - po/zh_CN.po - + testsuite/deluser-delete.conf - testsuite/lib_test.pm - testsuite/runsuite.sh - testsuite/test1.pl ? testsuite/test01.pl - + testsuite/test02.pl - testsuite/test3.pl ? testsuite/test03.pl - testsuite/test4.pl ? testsuite/test04.pl - testsuite/test5.pl ? testsuite/test05.pl - testsuite/test6.pl ? testsuite/test06.pl - testsuite/test7.pl ? testsuite/test07.pl - testsuite/test8.pl ? testsuite/test08.pl - testsuite/test9.pl ? testsuite/test09.pl - + testsuite/test10.pl - + testsuite/test11.pl - ? testsuite/test2.pl The diff was not included because it is too large. View it on GitLab: https://salsa.debian.org/debian/adduser/-/compare/21d6543ade3f554dec4445a9bf024b9af58e742c...29ac4c535be9a92143933e2290f3bd0742c4e27a -- View it on GitLab: https://salsa.debian.org/debian/adduser/-/compare/21d6543ade3f554dec4445a9bf024b9af58e742c...29ac4c535be9a92143933e2290f3bd0742c4e27a You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitlab at salsa.debian.org Mon Jun 1 09:04:21 2026 From: gitlab at salsa.debian.org (Marc Haber (@zugschlus)) Date: Mon, 01 Jun 2026 08:04:21 +0000 Subject: [Pkg-shadow-devel] [Git][debian/adduser] Deleted branch wip/testsuite-finduser Message-ID: <6a1d3d0513324_54cfb338790238@godard.mail> Marc Haber deleted branch wip/testsuite-finduser at Debian / adduser -- You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitlab at salsa.debian.org Mon Jun 1 09:04:46 2026 From: gitlab at salsa.debian.org (Marc Haber (@zugschlus)) Date: Mon, 01 Jun 2026 08:04:46 +0000 Subject: [Pkg-shadow-devel] [Git][debian/adduser] Deleted branch wip/uidpool Message-ID: <6a1d3d1e852d2_54cfafc8790497@godard.mail> Marc Haber deleted branch wip/uidpool at Debian / adduser -- You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitlab at salsa.debian.org Mon Jun 1 09:05:06 2026 From: gitlab at salsa.debian.org (Marc Haber (@zugschlus)) Date: Mon, 01 Jun 2026 08:05:06 +0000 Subject: [Pkg-shadow-devel] [Git][debian/adduser] Deleted branch zg/no-nocron-warning Message-ID: <6a1d3d32e9a7a_54c8a856879061b@godard.mail> Marc Haber deleted branch zg/no-nocron-warning at Debian / adduser -- You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitlab at salsa.debian.org Mon Jun 1 09:06:02 2026 From: gitlab at salsa.debian.org (Marc Haber (@zugschlus)) Date: Mon, 01 Jun 2026 08:06:02 +0000 Subject: [Pkg-shadow-devel] [Git][debian/adduser][debian/202605-translations] 9 commits: clarify adduser pool format documentation Message-ID: <6a1d3d6a2646f_54cfb25c7908cb@godard.mail> Marc Haber pushed to branch debian/202605-translations at Debian / adduser Commits: 259fed18 by Marc Haber at 2026-06-01T05:51:57+02:00 clarify adduser pool format documentation Git-Dch: ignore - - - - - b979e1ef by Marc Haber at 2026-06-01T05:51:57+02:00 remove trailing slashes from example pool directories Git-Dch: ignore - - - - - 402b47dd by Marc Haber at 2026-06-01T05:51:57+02:00 ignore extra fields at the end of pool file lines - - - - - febb7a47 by Marc Haber at 2026-06-01T05:51:57+02:00 clarify pool file read warnings Git-Dch: ignore - - - - - 87fdeaad by Marc Haber at 2026-06-01T05:51:57+02:00 remove trailing slaehes from pool directories Git-Dch: ignore - - - - - 215f4b7b by Marc Haber at 2026-06-01T06:06:59+02:00 streamline log level names. Closes: #1132881 - - - - - 46250627 by Marc Haber at 2026-06-01T06:23:21+02:00 demote "crontab not found" warning to info it is now perfectly normal to run a system that doesn't have cron - - - - - b2eedf89 by Marc Haber at 2026-06-01T07:07:25+02:00 prepare release Git-Dch: ignore - - - - - 49e1093a by Marc Haber at 2026-06-01T10:05:49+02:00 Add new Romanian program and man page translation Thanks: Remus-Gabriel Chelu Closes: #1137603, #1137602 - - - - - 8 changed files: - AdduserCommon.pm - adduser.conf - debian/changelog - deluser - doc/adduser.8 - doc/adduser.conf.5 - doc/po4a/po/ro.po - po/ro.po Changes: ===================================== AdduserCommon.pm ===================================== @@ -268,11 +268,12 @@ sub read_configfile { # -- a hash for the pool data sub read_pool { my ($pool_file, $type, $poolref) = @_; - my ($name, $id, $comment, $home, $shell); + my ($name, $id, $comment, $home, $shell, $rest); my %ids = (); my %new; $pool_file = decode($charset, $pool_file); + $pool_file =~ s{/?$}{}; if (-d $pool_file) { my $dir; unless( opendir( $dir, $pool_file) ) { @@ -307,10 +308,10 @@ sub read_pool { my $new; if ($type eq "uid") { - ($name, $id, $comment, $home, $shell) = split (/:/); + ($name, $id, $comment, $home, $shell, $rest) = split (/:/); if (!$name || $name !~ /^([_a-zA-Z0-9-]+)$/ || !defined($id) || $id !~ /^(\d+)$/) { - log_warn( mtx("Couldn't parse `%s', line %d."), $pool_file, $.); + log_warn( mtx("Couldn't parse uid line `%s', line %d."), $pool_file, $.); next; } if( defined $name ) { @@ -335,10 +336,10 @@ sub read_pool { 'shell' => $shell }; } elsif ($type eq "gid") { - ($name, $id) = split (/:/); + ($name, $id, $rest) = split (/:/); if (!$name || $name !~ /^([_a-zA-Z0-9-]+)$/ || !defined($id) || $id !~ /^(\d+)$/) { - log_warn( mtx("Couldn't parse `%s', line %d."), $pool_file, $. ); + log_warn( mtx("Couldn't parse gid line `%s', line %d."), $pool_file, $. ); next; } if( defined $name ) { ===================================== adduser.conf ===================================== @@ -49,9 +49,9 @@ # Specify a file or a directory containing UID and GID pool. #UID_POOL=/etc/adduser-pool.conf -#UID_POOL=/etc/adduser-pool.d/ +#UID_POOL=/etc/adduser-pool.d #GID_POOL=/etc/adduser-pool.conf -#GID_POOL=/etc/adduser-pool.d/ +#GID_POOL=/etc/adduser-pool.d #RESERVE_UID_POOL=yes #RESERVE_GID_POOL=yes ===================================== debian/changelog ===================================== @@ -1,3 +1,12 @@ +adduser (3.156) unstable; urgency=medium + + * ignore extra fields at the end of pool file lines + * streamline log level names. (Closes: #1132881) + * demote "crontab not found" warning to info + it is now perfectly normal to run a system that doesn't have cron + + -- Marc Haber Mon, 01 Jun 2026 07:06:57 +0200 + adduser (3.155) unstable; urgency=medium [ Marc Haber ] ===================================== deluser ===================================== @@ -472,13 +472,8 @@ if($action eq "deluser") { systemcall_or_warn('/usr/bin/crontab', '-u', $user, '-r'); } } else { - if ($config{'system'}) { - log_info( mtx("`%s' is not executable. Skipping crontab removal. Package `cron' required."), - '/usr/bin/crontab' ); - } else { - log_warn( mtx("`%s' is not executable. Skipping crontab removal. Package `cron' required."), - '/usr/bin/crontab' ); - } + log_info( mtx("`%s' is not executable. Skipping crontab removal. Package `cron' required."), + '/usr/bin/crontab' ); } log_info( mtx("Removing user `%s' ..."), $user); ===================================== doc/adduser.8 ===================================== @@ -555,9 +555,9 @@ Every message that \fBadduser\fR prints has a priority value assigned by the authors. This priority can not be changed at run time. Available priority values are -\fBcrit\fR, +\fBfatal\fR, \fBerror\fR, -\fBwarning\fR, +\fBwarn\fR, \fBinfo\fR, \fBdebug\fR, and ===================================== doc/adduser.conf.5 ===================================== @@ -203,6 +203,8 @@ shell (ditto). .PP It is possible to use the same file/directory for \fBUID_POOL\fP and \fBGID_POOL\fP. +But you cannot copy lines from \fI/etc/passwd\fP or \fI/etc/group\fP +since pool file lines have less fields. .PP If an account / group is created, \fBadduser\fP(8) searches in all UID/GID pool files ===================================== doc/po4a/po/ro.po ===================================== @@ -21,20 +21,21 @@ # # Remus-Gabriel Chelu , sep-2024. # Actualizare a traducerii pentru versiunea 3.146, f?cut? de R-GC, mar-2025. +# Actualizare a traducerii pentru versiunea 3.155, f?cut? de R-GC, mai-2026. # Actualizare a traducerii pentru versiunea Y, f?cut? de X, Y(luna-anul). # msgid "" msgstr "" -"Project-Id-Version: adduser 3.146\n" +"Project-Id-Version: adduser 3.155\n" "POT-Creation-Date: 2025-09-14 13:09+0200\n" -"PO-Revision-Date: 2025-03-28 19:49+0100\n" +"PO-Revision-Date: 2026-05-25 14:08+0200\n" "Last-Translator: Remus-Gabriel Chelu \n" "Language-Team: Romanian \n" "Language: ro\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 3.5\n" +"X-Generator: Poedit 3.8\n" #. type: TH #: ../adduser.8:16 ../adduser.local.8:5 @@ -2926,10 +2927,8 @@ msgstr "" #. type: Plain text #: ../deluser.8:208 -#, fuzzy -#| msgid "Synonymous to B<--stdoutmsglevel=debug.> Deprecated." msgid "Synonymous to B<--stdoutmsglevel=debug>. Deprecated." -msgstr "Sinonim cu B<--stdoutmsglevel=debug.> Depreciat?." +msgstr "Sinonim cu B<--stdoutmsglevel=debug>. Depreciat?." #. type: Plain text #: ../deluser.8:214 @@ -2957,10 +2956,8 @@ msgstr "" #. type: Plain text #: ../deluser.8:226 -#, fuzzy -#| msgid "Synonymous to B<--stdoutmsglevel=warn.> Deprecated." msgid "Synonymous to B<--stdoutmsglevel=warn>. Deprecated." -msgstr "Sinonim cu B<--stdoutmsglevel=warn.> Depreciat?." +msgstr "Sinonim cu B<--stdoutmsglevel=warn>. Depreciat?." #. type: TP #: ../deluser.8:226 @@ -3012,10 +3009,8 @@ msgstr "" #. type: Plain text #: ../deluser.8:249 -#, fuzzy -#| msgid "Synonymous to B<--stdoutmsglevel=info.> Deprecated." msgid "Synonymous to B<--stdoutmsglevel=info>. Deprecated." -msgstr "Sinonim cu B<--stdoutmsglevel=info.> Depreciat?." +msgstr "Sinonim cu B<--stdoutmsglevel=info>. Depreciat?." #. type: Plain text #: ../deluser.8:265 @@ -3049,9 +3044,6 @@ msgstr "" #. type: Plain text #: ../deluser.8:276 -#, fuzzy -#| msgid "" -#| "This works similar to B. See B(8) for all the details." msgid "" "This works similar to B. See B(8) for all the details." msgstr "" ===================================== po/ro.po ===================================== @@ -17,21 +17,21 @@ # This file is distributed under the same license as the adduser package. # Mesajele ?n limba rom?n? pentru pachetul ?adduser?. # Copyright Translation: -# 2024-2025 Remus-Gabriel Chelu +# 2024-2026 Remus-Gabriel Chelu # msgid "" msgstr "" -"Project-Id-Version: adduser 3.145\n" +"Project-Id-Version: adduser 3.155\n" "Report-Msgid-Bugs-To: adduser at packages.debian.org\n" "POT-Creation-Date: 2025-09-14 13:07+0200\n" -"PO-Revision-Date: 2025-03-15 10:48+0100\n" +"PO-Revision-Date: 2026-05-25 15:04+0200\n" "Last-Translator: Remus-Gabriel Chelu \n" "Language-Team: Romanian \n" "Language: ro\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 3.5\n" +"X-Generator: Poedit 3.8\n" #: adduser:229 msgid "Only root may add a user or group to the system." @@ -383,6 +383,8 @@ msgid "" "To avoid ambiguity with numerical UIDs, usernames whichresemble numbers or " "negative numbers are not allowed." msgstr "" +"Pentru a evita ambiguitatea cu UID-urile numerice, numele de utilizator care " +"seam?n? cu numere sau cu numere negative nu sunt permise." #: adduser:1356 msgid "Usernames must not be a single or a double period." @@ -399,6 +401,10 @@ msgid "" "tilde, and it must not contain any of thefollowing: colon, comma, slash, or " "any whitespace charactersincluding spaces, tabs, and newlines." msgstr "" +"Pentru a evita problemele, numele de utilizator nu trebuie s? ?nceap? cu o " +"liniu?? de unire, semnul plus sau tild? ?i nu trebuie s? con?in? niciunul " +"dintre urm?toarele: dou? puncte, virgul?, bar? oblic? sau orice caracter de " +"spa?iu alb inclusiv spa?iile, tabulatoarele ?i liniile noi." #: adduser:1385 msgid "" @@ -408,6 +414,12 @@ msgid "" "accounts, $ is also supportedat the end of the username. (Use the `--allow-" "all-names' optionto bypass this restriction.)" msgstr "" +"Pentru a evita problemele, numele de utilizator trebuie s? con?in? doar " +"litere, cifre, caractere de subliniere, puncte, simboluri @ ?i linii de " +"pauz?, ?i nu trebuie s? ?nceap? cu o linie (conform standardului IEEE Std " +"1003.1-2001). Pentru compatibilitate cu conturile de ma?in? Samba, se " +"accept? ?i caracterul $ la sf?r?itul numelui de utilizator.; (utiliza?i " +"op?iunea ?--allow-all-names? pentru a evita aceast? restric?ie)." #: adduser:1395 msgid "Allowing use of questionable username." @@ -420,6 +432,10 @@ msgid "" "configuration variable. Use the`--allow-bad-names' option to relax this " "check or reconfigure%s in configuration." msgstr "" +"V? rug?m s? introduce?i un nume de utilizator care s? corespund? expresiei " +"regulate configurat? prin intermediul variabilei de configurare %s. " +"Utiliza?i op?iunea ?--allow-bad-names? pentru a relaxa aceast? verificare " +"sau reconfigura?i %s ?n configurare." #: adduser:1426 #, perl-format @@ -611,6 +627,11 @@ msgid "" "want this, call deluser with parameter --no-preserve-root. Stopping now " "without having performed any action." msgstr "" +"AVERTISMENT: Sunte?i pe punctul de a ?terge contul root (uid 0). De obicei, " +"acest lucru nu este niciodat? necesar, deoarece poate face ?ntregul sistem " +"inutilizabil. Dac? dori?i cu adev?rat acest lucru, apela?i ?deluser? cu " +"op?iunea ?--no-preserve-root?. Se ?nceteaz? acum f?r? s? se fi efectuat " +"nicio ac?iune" #: deluser:314 msgid "remove_home or remove_all_files beginning" @@ -668,6 +689,8 @@ msgstr "Se elimin? crontab ..." msgid "" "`%s' is not executable. Skipping crontab removal. Package `cron' required." msgstr "" +"?%s? nu este un fi?ier executabil.. Se omite eliminarea crontab. Pachetul " +"?cron? este necesar." #: deluser:466 #, perl-format View it on GitLab: https://salsa.debian.org/debian/adduser/-/compare/eb98c027611f23669530e87f2d05492bc70b6595...49e1093ac6695eaff74cae0df581819747f5792f -- View it on GitLab: https://salsa.debian.org/debian/adduser/-/compare/eb98c027611f23669530e87f2d05492bc70b6595...49e1093ac6695eaff74cae0df581819747f5792f You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitlab at salsa.debian.org Mon Jun 1 09:06:47 2026 From: gitlab at salsa.debian.org (Marc Haber (@zugschlus)) Date: Mon, 01 Jun 2026 08:06:47 +0000 Subject: [Pkg-shadow-devel] [Git][debian/adduser] Pushed new branch debian/trixie Message-ID: <6a1d3d97ba040_54cfb2487910f3@godard.mail> Marc Haber pushed new branch debian/trixie at Debian / adduser -- View it on GitLab: https://salsa.debian.org/debian/adduser/-/tree/debian/trixie You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitlab at salsa.debian.org Mon Jun 1 09:06:59 2026 From: gitlab at salsa.debian.org (Marc Haber (@zugschlus)) Date: Mon, 01 Jun 2026 08:06:59 +0000 Subject: [Pkg-shadow-devel] [Git][debian/adduser] Deleted branch trixie Message-ID: <6a1d3da3c1e28_54ca3892879141d@godard.mail> Marc Haber deleted branch trixie at Debian / adduser -- You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitlab at salsa.debian.org Mon Jun 1 14:04:18 2026 From: gitlab at salsa.debian.org (Marc Haber (@zugschlus)) Date: Mon, 01 Jun 2026 13:04:18 +0000 Subject: [Pkg-shadow-devel] [Git][debian/adduser][adduser-encrypt-home] 9 commits: sanitize log output Message-ID: <6a1d83526a83d_54c5458bc910856@godard.mail> Marc Haber pushed to branch adduser-encrypt-home at Debian / adduser Commits: 2230a04e by Marc Haber at 2026-06-01T14:56:45+02:00 sanitize log output Some UTF-8 chars break log output in testing - - - - - d27407e3 by Marc Haber at 2026-06-01T14:56:45+02:00 have which return undef if the program is not found This should not change anything since this code path was previously unused. - - - - - aaf0a620 by Marc Haber at 2026-06-01T14:57:54+02:00 change logic and return values 0 means okay, != 0 means something wrong (meaningful return value) Improve error message. That also means that the callers must turn their logic around. - - - - - 22a745ef by Marc Haber at 2026-06-01T14:57:56+02:00 better output in skel.t Git-Dch: ignore - - - - - 0c2ac9bc by Dustin Kirkland at 2026-06-01T14:58:19+02:00 Add support for encrypting home directories * adduser: Add --encrypt-home option, which calls ecryptfs-setup-private for the hard work. * doc/adduser.8: document the --encrypt-home option * debian/control: suggest ecryptfs-utils >= 67-1 * deluser: remove all of /var/lib/ecryptfs/$user with --remove-home - - - - - 81291b8a by Mateus Rodrigues de Morais at 2026-06-01T14:58:20+02:00 Add encrypted home tests with isolation-machine restriction - - - - - 15757249 by Marc Haber at 2026-06-01T14:58:20+02:00 also execute ecryptfs test without ecryptfs-utils installed Git-Dch: ignore - - - - - 56b1ab4c by Marc Haber at 2026-06-01T14:58:20+02:00 hike up module version number to 3.157 Git-Dch: ignore - - - - - cf1bbcd9 by Marc Haber at 2026-06-01T14:58:20+02:00 add encrypt_home_no_package We test whether adduser --encrypt-home fails correctly when the ecryptfs package is not installed. - - - - - 13 changed files: - AdduserCommon.pm - AdduserCreateHomedir.pm - AdduserLogging.pm - AdduserRetvalues.pm - AdduserStatefile.pm - adduser - debian/control - debian/tests/control - + debian/tests/ecryptfs-no-package/encrypt_home_no_package.t - + debian/tests/ecryptfs/encrypt_home.t - debian/tests/f/skel.t - deluser - doc/adduser.8 Changes: ===================================== AdduserCommon.pm ===================================== @@ -1,4 +1,4 @@ -package Debian::AdduserCommon 3.139; +package Debian::AdduserCommon 3.157; use 5.36.0; use utf8; @@ -29,12 +29,12 @@ use parent qw(Exporter); use Fcntl qw(:flock SEEK_END); my $codeset; -use Debian::AdduserLogging 3.139; -use Debian::AdduserRetvalues 3.139; -use Debian::AdduserStatefile 3.139; +use Debian::AdduserLogging 3.157; +use Debian::AdduserRetvalues 3.157; +use Debian::AdduserStatefile 3.157; BEGIN { - if ( Debian::AdduserLogging->VERSION != version->declare('3.139') || - Debian::AdduserRetvalues->VERSION != version->declare('3.139') ) { + if ( Debian::AdduserLogging->VERSION != version->declare('3.157') || + Debian::AdduserRetvalues->VERSION != version->declare('3.157') ) { die "wrong module version in adduser, check your packaging or path"; } local $ENV{PERL_DL_NONLAZY}=1; @@ -482,7 +482,7 @@ sub which { log_fatal( mtx("Could not find program named `%s' in \$PATH."), $progname ); exit( RET_EXEC_NOT_FOUND ); } - return 0; + return undef; } ===================================== AdduserCreateHomedir.pm ===================================== @@ -1,10 +1,12 @@ -package Debian::AdduserCreateHomedir 3.139; +package Debian::AdduserCreateHomedir 3.157; use 5.36.0; use utf8; use strict; use warnings; -use Debian::AdduserLogging 3.139; +use Debian::AdduserLogging 3.157; +use Debian::AdduserCommon 3.157; +use Debian::AdduserRetvalues 3.157; # Adduser module to create home dir and to copy skel # @@ -22,24 +24,35 @@ use vars qw(@EXPORT $VAR1); sub create_homedir { my %params = @_; + my $new_name = $params{new_name}; my $home_dir = $params{home_dir}; my $new_uid = $params{uid}; my $primary_gid = $params{gid}; my $copy_skeleton = $params{copy_skeleton}; my $system_user = $params{system_user}; my $no_create_home = $params{no_create_home}; + my $encrypt_home = $params{encrypt_home}; my $config = $params{config}; log_trace("create_homedir(home_dir=%s, new_uid=%s, primary_gid=%s, copy_skeleton=%s, system_user=%s, no_create_home=%s", $home_dir, $new_uid, $primary_gid, $copy_skeleton, $system_user, $no_create_home); + my $ecryptfs_setup_private; + if (defined($encrypt_home)) { + $ecryptfs_setup_private = &which('ecryptfs-setup-private', 1); + unless (defined $ecryptfs_setup_private) { + log_fatal("encrypt_home set but ecryptfs-setup-private not found. Package missing?"); + return( RET_EXEC_NOT_FOUND ); + } + } + if ($home_dir =~ /^\/+nonexistent(\/|$)/) { log_info(mtx("Not creating `%s'."), $home_dir); - return 1; + return 0; } if ($no_create_home) { log_info(mtx("Not creating home directory `%s' as requested."), $home_dir); - return 1; + return 0; } if (-e $home_dir) { @@ -50,19 +63,19 @@ sub create_homedir { log_warn(mtx("Warning: The home directory `%s' does not belong to the user you are currently creating."), $home_dir); } } - return 1; + return 0; } log_info(mtx("Creating home directory `%s' ..."), $home_dir); mktree($home_dir) or do { log_err(gtx("Couldn't create home directory `%s': %s."), $home_dir, $!); - return 0; + return RET_INVALID_HOME_DIRECTORY; }; chown($new_uid, $primary_gid, $home_dir) or do { log_err("chown %s:%s %s: %s", $new_uid, $primary_gid, $home_dir, $!); - return 0; + return RET_WRONG_OBJECT_PROPERTIES; }; # Determine if setgid bit should be applied @@ -81,9 +94,14 @@ sub create_homedir { chmod($dir_mode, $home_dir) or do { log_err("chmod %s %s: %s", $dir_mode, $home_dir, $!); - return 0; + return RET_WRONG_OBJECT_PROPERTIES; }; + if (defined($encrypt_home)) { + log_info( mtx("Setting up encryption ...\n")); + &systemcall($ecryptfs_setup_private, '-b', '-u', $new_name); + } + if ($config->{skel} && $copy_skeleton) { log_info(mtx("Copying files from `%s' ..."), $config->{skel}); copy_skel( @@ -93,10 +111,14 @@ sub create_homedir { $primary_gid, $setgid, $config->{skel_ignore_regex} - ) or return 0; + ) and return RET_FILE_ERROR; } - return 1; + if (defined($encrypt_home)) { + &systemcall("/bin/umount", $home_dir); + } + + return RET_OK; } sub mktree { @@ -145,14 +167,14 @@ sub recurse_copy { # Untaint source path (allow any bytes except / or null) $src =~ m{^(/[^/\0]+(?:/[^/\0]+)*)$} or do { log_err("Invalid source path: %s", $src); - return 0; + return RET_INVALID_HOME_DIRECTORY; }; $src = $1; log_trace("Processing directory: %s", $src); opendir(my $dh, $src) or do { log_err("opendir %s: %s", $src, $!); - return 0; + return RET_SYSTEMCALL_ERROR; }; my @entries = grep { $_ ne '.' && $_ ne '..' && (!$ignore_re || !/$ignore_re/) } readdir($dh); @@ -175,7 +197,7 @@ sub recurse_copy { # Untaint destination path $dst_path =~ m{^(/[^/\0]+(?:/[^/\0]+)*)$} or do { log_err("Invalid destination path: %s", $dst_path); - return 0; + return RET_INVALID_HOME_DIRECTORY; }; $dst_path = $1; log_trace("src_path=%s dst_path=%s", $src_path, $dst_path); @@ -184,11 +206,11 @@ sub recurse_copy { # Symlink my $target = readlink($src_path) or do { log_err("readlink %s: %s", $src_path, $!); - return 0; + return RET_SYSTEMCALL_ERROR }; $target =~ m{^([^/\0]+(?:/[^/\0]+)*)$} or do { log_err("Unsafe symlink: %s", $target); - return 0; + return RET_WRONG_OBJECT_PROPERTIES; }; my ($cu, $cg) = ($>, $)); ($>, $)) = ($uid, $gid); @@ -196,8 +218,8 @@ sub recurse_copy { my $err = $!; ($>, $)) = ($cu, $cg); if (!$ok) { - log_err("symlink %s: %s", $dst_path, $err); - return 0; + log_err("error creating symlink %s: %s", $dst_path, $err); + return RET_SYSTEMCALL_ERROR; } log_trace("Created symlink: %s -> %s", $dst_path, $target); @@ -205,32 +227,32 @@ sub recurse_copy { # Directory if (!-d $dst_path) { mkdir($dst_path, 0700) or do { - log_err("mkdir %s: %s", $dst_path, $!); - return 0; + log_err("error in mkdir %s: %s", $dst_path, $!); + return RET_INVALID_HOME_DIRECTORY; }; log_trace("Created directory: %s", $dst_path); } set_perms($src_path, $dst_path, $uid, $gid, $sgid) or return 0; - recurse_copy($src_base, $dst_base, $rel ? "$rel/$entry" : $entry, $uid, $gid, $sgid, $ignore_re) or return 0; + recurse_copy($src_base, $dst_base, $rel ? "$rel/$entry" : $entry, $uid, $gid, $sgid, $ignore_re) and return 0; } elsif (-f $src_path) { # Regular file open(my $in, '<', $src_path) or do { - log_err("open %s: %s", $src_path, $!); - return 0; + log_err("error read-opening %s: %s", $src_path, $!); + return RET_FILE_ERROR; }; open(my $out, '>', $dst_path) or do { close($in); - log_err("open %s: %s", $dst_path, $!); - return 0; + log_err("error write-opening %s: %s", $dst_path, $!); + return RET_FILE_ERROR; }; binmode($in); binmode($out); print $out $_ while <$in>; close($in); close($out) or do { - log_err("close %s: %s", $dst_path, $!); - return 0; + log_err("error closing %s: %s", $dst_path, $!); + return RET_FILE_ERROR; }; set_perms($src_path, $dst_path, $uid, $gid, 0) or return 0; log_trace("Copied file: %s", $dst_path); @@ -238,7 +260,7 @@ sub recurse_copy { } log_trace("Finished processing directory: %s", $src); - return 1; + return RET_OK; } ===================================== AdduserLogging.pm ===================================== @@ -1,4 +1,4 @@ -package Debian::AdduserLogging 3.139; +package Debian::AdduserLogging 3.157; use 5.36.0; use utf8; @@ -200,6 +200,12 @@ sub logf { $outstring = sprintf( $fmt, @dta ); $loutstring = sprintf( gettext($fmt), @dta ); } + # sanitize string and indicate when sanitized. + # some utf-8 chars interfere with test output + my $changed = ($outstring =~ s/[^ -~]/_/g); + $outstring = "[sanitized] $outstring" if $changed; + $changed = ($loutstring =~ s/[^ -~]/_/g); + $loutstring = "[sanitized] $loutstring" if $changed; logtrace("outstring %s", $outstring); logtrace("loutstring %s", $loutstring); logtrace("msglevel %s (%d), stdoutmsglevel %s (%d), stderrmsglevel %s (%d), logmsglevel %s (%d)", $msglevel, numeric_msglevel($msglevel), $stdoutmsglevel, numeric_msglevel($stdoutmsglevel), $stderrmsglevel, numeric_msglevel($stderrmsglevel), $logmsglevel, numeric_msglevel($logmsglevel)); ===================================== AdduserRetvalues.pm ===================================== @@ -1,4 +1,4 @@ -package Debian::AdduserRetvalues 3.139; +package Debian::AdduserRetvalues 3.157; use 5.36.0; use utf8; ===================================== AdduserStatefile.pm ===================================== @@ -1,4 +1,4 @@ -package Debian::AdduserStatefile 3.139; +package Debian::AdduserStatefile 3.157; use 5.36.0; use utf8; ===================================== adduser ===================================== @@ -31,15 +31,15 @@ use utf8; use Getopt::Long; -use Debian::AdduserCommon 3.139; -use Debian::AdduserLogging 3.139; -use Debian::AdduserRetvalues 3.139; -use Debian::AdduserStatefile 3.139; -use Debian::AdduserCreateHomedir 3.139; +use Debian::AdduserCommon 3.157; +use Debian::AdduserLogging 3.157; +use Debian::AdduserRetvalues 3.157; +use Debian::AdduserStatefile 3.157; +use Debian::AdduserCreateHomedir 3.157; BEGIN { - if ( Debian::AdduserCommon->VERSION != version->declare('3.139') || - Debian::AdduserLogging->VERSION != version->declare('3.139') || - Debian::AdduserRetvalues->VERSION != version->declare('3.139') ) { + if ( Debian::AdduserCommon->VERSION != version->declare('3.157') || + Debian::AdduserLogging->VERSION != version->declare('3.157') || + Debian::AdduserRetvalues->VERSION != version->declare('3.157') ) { die "wrong module version in adduser, check your packaging or path"; } } @@ -113,6 +113,8 @@ my $ask_passwd = 1; # ask for a passwd? my $disabled_login = 0; # leave the new account disabled? our @configfiles; +our @defaults = undef; +our $encrypt_home = undef; our $found_group_opt = undef; our $found_sys_opt = undef; our $found_unlock_opt = undef; @@ -146,7 +148,6 @@ my $first_uid = undef; my $last_uid = undef; my $first_gid = undef; my $last_gid = undef; -my $dir_mode = undef; my $perm = undef; my %uid_pool; my %gid_pool; @@ -171,6 +172,7 @@ GetOptions( 'logmsglevel=s' => \$logmsglevel, 'disabled-login' => sub { $disabled_login = 1; $ask_passwd = 0 }, 'disabled-password' => sub { $ask_passwd = 0 }, + 'encrypt-home' => \$encrypt_home, 'firstgid=i' => \$new_firstgid, 'firstuid=i' => \$new_firstuid, 'force-badname' => sub { $name_check_level = 1 unless $name_check_level }, @@ -719,16 +721,18 @@ if ($action eq "addsysuser") { } $primary_gid = $gid_option; + $undohome = $home_dir; create_homedir( home_dir => $home_dir, + new_name => $new_name, uid => $new_uid, gid => $gid_option, copy_skeleton => 0, system_user => 1, no_create_home => $no_create_home, - dir_mode => $dir_mode, + encrypt_home => $encrypt_home, config => \%config, - ) or cleanup(); + ) and cleanup(); exit( $returnvalue ); } @@ -969,14 +973,15 @@ if ($action eq "adduser") { create_homedir( home_dir => $home_dir, + new_name => $new_name, uid => $new_uid, gid => $primary_gid, copy_skeleton => $no_copy_skel ? 0 : 1, system_user => 0, no_create_home => $no_create_home, - dir_mode => $dir_mode, + encrypt_home => $encrypt_home, config => \%config, - ) or cleanup(); + ) and cleanup(); # useradd without -p has left the account disabled (password string is '!') if ($ask_passwd) { @@ -1508,24 +1513,6 @@ sub usage_error { exit( RET_INVALID_CALL ); } -# get_dir_mode: return the appropriate permissions mode for a home directory -# parameters: -# none -# return value: -# a valid octal mode -sub get_dir_mode - { - my $mode = $found_sys_opt - ? $config{"sys_dir_mode"} - : $config{"dir_mode"}; - - if(!defined($mode) || ! ($mode =~ /[0-7]{3}/ || $mode =~ /[0-7]{4}/)) { - $mode = ($found_sys_opt) ? "755" : "0700"; - } - - return oct($mode); - } - # Local Variables: # mode:cperl # cperl-indent-level:4 ===================================== debian/control ===================================== @@ -14,7 +14,7 @@ Architecture: all Multi-Arch: foreign Pre-Depends: ${misc:Pre-Depends} Depends: passwd (>= 1:4.19.0-4), ${misc:Depends} -Suggests: liblocale-gettext-perl, perl, cron, quota +Suggests: liblocale-gettext-perl, perl, cron, quota, ecryptfs-utils (>= 67-1) Description: add and remove users and groups This package includes the 'adduser' and 'deluser' commands for creating and removing users. ===================================== debian/tests/control ===================================== @@ -3,6 +3,16 @@ Depends: adduser, cron, perl, login Restrictions: needs-root Features: test-name=package-test-suite +Test-Command: /usr/bin/prove -p -v debian/tests/ecryptfs +Depends: cron, ecryptfs-utils, kmod, perl +Restrictions: allow-stderr isolation-machine needs-root +Features: test-name=ecryptfs-with-pkg + +Test-Command: /usr/bin/prove -p -v debian/tests/ecryptfs-no-package +Depends: cron, kmod, perl +Restrictions: allow-stderr isolation-machine needs-root +Features: test-name=ecryptfs-without-pkg + Test-Command: cd testsuite/ && ./runsuite.sh Depends: adduser, cron, perl, login Restrictions: allow-stderr breaks-testbed needs-root ===================================== debian/tests/ecryptfs-no-package/encrypt_home_no_package.t ===================================== @@ -0,0 +1,23 @@ +#! /usr/bin/perl -Idebian/tests/lib + +use diagnostics; +use strict; +use warnings; + +use AdduserTestsCommon; + +# enable ecryptfs kernel module +system('/sbin/modprobe', 'ecryptfs'); + +my $test_user="foocrypt"; + +assert_user_does_not_exist($test_user); + +assert_command_failure('/usr/sbin/adduser', '--encrypt-home', $test_user); + +system("getent passwd $test_user"); +system("ls -l /home /home/$test_user"); + +assert_user_does_not_exist($test_user); + +assert_path_does_not_exist("/home/$test_user"); ===================================== debian/tests/ecryptfs/encrypt_home.t ===================================== @@ -0,0 +1,31 @@ +#! /usr/bin/perl -Idebian/tests/lib + +use diagnostics; +use strict; +use warnings; + +use AdduserTestsCommon; + +# enable ecryptfs kernel module +system('/sbin/modprobe', 'ecryptfs'); + +my $test_user="foocrypt"; + +assert_user_does_not_exist($test_user); + +assert_command_success('/usr/sbin/adduser', '--encrypt-home', $test_user); + +assert_user_exists($test_user); +assert_group_exists($test_user); +assert_group_membership_exists($test_user, $test_user); + +# test for ecryptfs files stored in $HOME +assert_path_exists("/home/$test_user/.ecryptfs"); +assert_path_exists("/home/$test_user/.Private"); +# and not stored in $HOME +assert_path_exists("/home/.ecryptfs/$test_user"); + +assert_command_success('/usr/sbin/deluser', '--remove-home', $test_user); +assert_user_does_not_exist($test_user); +assert_path_does_not_exist("/home/$test_user"); +assert_path_does_not_exist("/home/.ecryptfs/$test_user"); \ No newline at end of file ===================================== debian/tests/f/skel.t ===================================== @@ -45,9 +45,13 @@ my $skel_list = `find /etc/skel/ -mindepth 1 -printf "%f %l %m %s\n" | sort`; my $home_list = `find /home/$name/ -mindepth 1 -printf "%f %l %m %s\n" | sort`; ok($? == 0, "find /home/$name successful"); if( !ok($home_list eq $skel_list, 'files copied to home directory correct') ) { + print("locale\n"); + system("locale"); print("skel_list: $skel_list\n"); - print("home_list $home_list\n"); + print("home_list: $home_list\n"); + print("ls /etc/skel\n"); system("ls -al /etc/skel"); + print("ls /home/$name\n"); system("ls -al /home/$name"); } ===================================== deluser ===================================== @@ -25,14 +25,14 @@ use utf8; use Getopt::Long; -use Debian::AdduserCommon 3.139; -use Debian::AdduserLogging 3.139; -use Debian::AdduserRetvalues 3.139; -use Debian::AdduserStatefile 3.139; +use Debian::AdduserCommon 3.157; +use Debian::AdduserLogging 3.157; +use Debian::AdduserRetvalues 3.157; +use Debian::AdduserStatefile 3.157; BEGIN { - if ( Debian::AdduserCommon->VERSION != version->declare('3.139') || - Debian::AdduserLogging->VERSION != version->declare('3.139') || - Debian::AdduserRetvalues->VERSION != version->declare('3.139') ) { + if ( Debian::AdduserCommon->VERSION != version->declare('3.157') || + Debian::AdduserLogging->VERSION != version->declare('3.157') || + Debian::AdduserRetvalues->VERSION != version->declare('3.157') ) { die "wrong module version in adduser, check your packaging or path"; } } @@ -387,8 +387,28 @@ if($action eq "deluser") { if(-d $name); } # sub home_match + # collect ecryptfs config files not stored in $HOME + sub ecryptfs_match { + # untaint the name without changing it + $File::Find::name =~ /(.*)/s; # captures the full string + $name = $1; + if ( $name !~ m[^/var/lib/ecryptfs/\Q$user] && $name !~ m[^/home/\.ecryptfs/\Q$user]) { + $File::Find::prune=1; + return; + } + push(@files, $name) + if(-f $name || -l $name); + push(@dirs, $name) + if(-d $name); + } # sub ecryptfs_match + File::Find::find({wanted => \&home_match, untaint => 1, no_chdir => 1}, $pw_homedir) if(-d "$pw_homedir"); + if(-d "/var/lib/ecryptfs/$user") { + File::Find::find({wanted => \&ecryptfs_match, untaint => 1, no_chdir => 1}, "/var/lib/ecryptfs/$user"); + } elsif (-d "/home/.ecryptfs/$user") { + File::Find::find({wanted => \&ecryptfs_match, untaint => 1, no_chdir => 1}, "/home/.ecryptfs/$user"); + } push(@files, "/var/mail/$user") if(-e "/var/mail/$user"); } ===================================== doc/adduser.8 ===================================== @@ -26,6 +26,7 @@ adduser, addgroup \- add or manipulate users or groups .OP \-\-debug .OP \-\-disabled\-login .OP \-\-disabled\-password +.OP \-\-encrypt\-home .OP \-\-firstgid id .OP \-\-firstuid id .OP \-\-gid id @@ -226,6 +227,11 @@ might be pre-determined with the \fBUID_POOL\fP and \fBGID_POOL\fP option, documented in .BR adduser.conf (5). +To set up an encrypted home directory for the new user, add the +.B \-\-encrypt\-home +option. For more information, refer to the \-b option of +.B ecryptfs-setup-private(1). + .SS "Add a system user" If called with one non-option argument and the \fB\-\-system\fP option, \fBadduser\fP will add a View it on GitLab: https://salsa.debian.org/debian/adduser/-/compare/29ac4c535be9a92143933e2290f3bd0742c4e27a...cf1bbcd9d0f5739f0c49d296f2a400cd8f3b31f4 -- View it on GitLab: https://salsa.debian.org/debian/adduser/-/compare/29ac4c535be9a92143933e2290f3bd0742c4e27a...cf1bbcd9d0f5739f0c49d296f2a400cd8f3b31f4 You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help -------------- next part -------------- An HTML attachment was scrubbed... URL: