On Fri, 2 Nov 2007 03:35:35 -0400, Mike Frysinger <[EMAIL PROTECTED]>

wrote:

> On Thursday 01 November 2007, Bernard Cafarelli wrote:

>> Le Thu, 1 Nov 2007 16:06:51 +0100

>>

>> Marius Mauch <[EMAIL PROTECTED]> a écrit:

>> > On Thu, 1 Nov 2007 15:43:18 +0100

>> >

>> > Bernard Cafarelli <[EMAIL PROTECTED]> wrote:

>> > > Le Wed, 31 Oct 2007 16:42:35 -0700

>> > >

>> > > Donnie Berkholz <[EMAIL PROTECTED]> a écrit:

>> > > > On 19:49 Wed 31 Oct     , Bernard Cafarelli (voyageur) wrote:

>> > > > > 1.1

>> > > > > net-misc/nxserver-freenx/nxserver-freenx-0.7.1.ebuild

>> > > > >

>> > > > > file :

>> > > > >

> http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-misc/nxserver-f

>> > > > >reenx/nxserver-freenx-0.7.1.ebuild?rev=1.1&view=markup plain:

>> > > > >

> http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-misc/nxserver-f

>> > > >

>>reenx/nxserver-freenx-0.7.1.ebuild?rev=1.1&content-type=text/plain

>> > > > >

>> > > > > pkg_postinst () {

>> > > > >      usermod -s /usr/bin/nxserver nx || die "Unable to set

>> > > > > login shell of nx user!!" usermod -d ${NX_HOME_DIR} nx || die

>> > > > > "Unable to set home directory of nx user!!"

>> > > >

>> > > > This isn't safe with ROOT != / and it looks wrong too, you oughta

>> > > > be using enewuser for this stuff.

>> > > >

>> > > > Thanks,

>> > > > Donnie

>> > >

>> > > The problem is, enewuser can not be used to modify already existing

>> > > user accounts.This happens if another nxserver was installed before

>> > > (which uses the same account, but with different shell and home

>> > > directory).

>> > >

>> > > I'll fix ROOT handling in the meantime, this should be better:

>> > > usermod -s "${ROOT}"/usr/bin/nxserver nx

>> > > usermod -d "${ROOT}"{NX_HOME_DIR} nx

>> >

>> > Should it really? Wouldn't it modify /etc/passwd instead of the one in

>> > $ROOT, in which case it would actually be worse?

>> > Might be better to make it conditional on ROOT = /, and show a

>> > warning if ROOT != /, unless you can find a solution that is safe for

>> > ROOT != /

>>

>> Yes, as pointed out on IRC by zlin, this does not fix the problem at

>> all (and make it a little worse!).

>>

>> Making it conditional on ROOT != / is a good workaround in the

>> meantime: not breaking anything in all cases, and as  the problem only

>> appears if a different nxserver was installed before, it still works in

>> most cases. Thanks!

> 

> presumably you have init.d scripts which would start the daemons ?  in

> that 

> case, it'd make more sense i think to move the user account check to the 

> init.d start() function and error out telling the user what to do instead

> of 

> modifying things on them (which i think is bad form).  see the cheesy

> check 

> in openntpd's "ntpd" init.d script as an example.

> -mike



nxserver-freeedition has one, however freenx only relies on ssh (connecting

as nx user will start up the "server").

Unless I add one for freenx that only does the user checking (so all NX

servers would include a init.d script).



Another solution would be to fix and update the setup scripts from the NX

servers themselves, but this is less portable...



Bernard

-- 
[EMAIL PROTECTED] mailing list

Reply via email to