Buildind rt4 while logged in as an AD user

I’m doing a first build of 4.0.5 on a Suse 11.3 machine which is configured
to authenticate Linux users against our AD domain controllers.

At the beginning of make testdeps, I see this:

users:
rt group (GETMOTIVATEDdomain) …MISSING
bin owner (GETMOTIVATEDjay.ashworth) …MISSING
libs owner (GETMOTIVATEDjay.ashworth) …MISSING
libs group (GETMOTIVATEDdomain) …MISSING
web owner (GETMOTIVATEDjay.ashworth) …MISSING
web group (GETMOTIVATEDdomain) …MISSING

Those aren’t the users I told ./configure to use for those things, but I
also note that they’re missing the expected backslash separator in the
username. I’m not sure if those are related, and I’m also not sure if the
rt build has been tested in an environment where the usernames are Windows’y.

Can anyone speak to either point?

Cheers,
– jra
Jay R. Ashworth Baylink jra@baylink.com
Designer The Things I Think RFC 2100
Ashworth & Associates http://baylink.pitas.com 2000 Land Rover DII
St Petersburg FL USA http://photo.imageinc.us +1 727 647 1274

I’m doing a first build of 4.0.5 on a Suse 11.3 machine which is configured
to authenticate Linux users against our AD domain controllers.

At the beginning of make testdeps, I see this:

users:
rt group (GETMOTIVATEDdomain) …MISSING
bin owner (GETMOTIVATEDjay.ashworth) …MISSING
libs owner (GETMOTIVATEDjay.ashworth) …MISSING
libs group (GETMOTIVATEDdomain) …MISSING
web owner (GETMOTIVATEDjay.ashworth) …MISSING
web group (GETMOTIVATEDdomain) …MISSING

Those aren’t the users I told ./configure to use for those things, but I
also note that they’re missing the expected backslash separator in the
username. I’m not sure if those are related, and I’m also not sure if the
rt build has been tested in an environment where the usernames are Windows’y.

Please show your configure line.

-kevin

From: “Kevin Falcone” falcone@bestpractical.com

Please show your configure line.

Sorry:

GETMOTIVATED\jay.ashworth@gmtpa-xen0:/appl/rt-4.0.5> cat ./build
./configure
–prefix=/appl/rt405
–enable-graphviz
–enable-gd
–enable-ssl-mailgate
–with-web-handler=modperl2
–with-db-type=mysql
–with-db-dba=root
–with-db-database=rt4_test
–with-db-rt-user=rt_user
–with-db-rt-pass=rt_pass
–with-web-user=wwwrun
–with-web-group=www
–with-rt-group=rt
–with-my-user-group

And I additionally get a zillion errors like:

    Email::Address ...MISSING
            Can't locate Email/Address.pm in @INC (@INC contains: /usr/lib/perl5/site_perl/5.12.1/i586-linux-thread-multi /usr/lib/perl5/site_perl/5.12.1 /usr/lib/perl5/vendor_perl/5.12.1/i586-linux-thread-multi /usr/lib/perl5/vendor_perl/5.12.1 /usr/lib/perl5/5.12.1/i586-linux-thread-multi /usr/lib/perl5/5.12.1 /appl/rt-4.0.5)

Followed at the end by:

make: *** [testdeps] Error 1

when I run make testdeps.

It’s clear I don’t have all the perl I should, but I thought that was
testdeps’ job to tell me. :slight_smile:

Cheers,
– jra
Jay R. Ashworth Baylink jra@baylink.com
Designer The Things I Think RFC 2100
Ashworth & Associates http://baylink.pitas.com 2000 Land Rover DII
St Petersburg FL USA http://photo.imageinc.us +1 727 647 1274

From: “Jay Ashworth” jra@baylink.com

And I additionally get a zillion errors like:

Email::Address …MISSING
Can’t locate Email/Address.pm in @INC (@INC contains:
/usr/lib/perl5/site_perl/5.12.1/i586-linux-thread-multi
/usr/lib/perl5/site_perl/5.12.1
/usr/lib/perl5/vendor_perl/5.12.1/i586-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.12.1
/usr/lib/perl5/5.12.1/i586-linux-thread-multi /usr/lib/perl5/5.12.1
/appl/rt-4.0.5)

Followed at the end by:

make: *** [testdeps] Error 1

when I run make testdeps.

It’s clear I don’t have all the perl I should, but I thought that was
testdeps’ job to tell me. :slight_smile:

Ok, that was stupid. That was testdeps telling me, clearly. Fixdeps
is cleaning up (most, if not all) of that, but the first part of my inquiry
stands: it appears that the build scripts do not expect that the user
and group names may contain non-magic backslashes and spaces, as will be
the case on a machine where authentication is provided by AD/Samba; can
anyone confirm or deny?

Cheers,
– jra
Jay R. Ashworth Baylink jra@baylink.com
Designer The Things I Think RFC 2100
Ashworth & Associates http://baylink.pitas.com 2000 Land Rover DII
St Petersburg FL USA http://photo.imageinc.us +1 727 647 1274

From: “Jay Ashworth” jra@baylink.com

Ok, that was stupid. That was testdeps telling me, clearly. Fixdeps
is cleaning up (most, if not all) of that,

It was; everything is installed now.

                                       but the first part of my inquiry

stands: it appears that the build scripts do not expect that the user
and group names may contain non-magic backslashes and spaces, as will be
the case on a machine where authentication is provided by AD/Samba;
can anyone confirm or deny?

In addition to:

users:
rt group (GETMOTIVATEDdomain) …MISSING
bin owner (GETMOTIVATEDjay.ashworth) …MISSING
libs owner (GETMOTIVATEDjay.ashworth) …MISSING
libs group (GETMOTIVATEDdomain) …MISSING
web owner (GETMOTIVATEDjay.ashworth) …MISSING
web group (GETMOTIVATEDdomain) …MISSING

I now get, at the end:

/usr/bin/install -c -m 0755 -o GETMOTIVATED\jay.ashworth -g GETMOTIVATED\domain -d /appl/rt405/etc
/usr/bin/install: invalid user `GETMOTIVATEDjay.ashworth’
make: *** [config-install] Error 1

It’s relatively clear to me that the build machinery does not contemplate
usernames which contain spaces and backslashes, as winbind usernames and
group names will – and probably not ones which don’t exist on the local
machine, either.

I’m not sure what’s the best approach to this; I’m probably not competent
to implement a global solution, suitable for a patch; I’m at the edge of my
skillset working in that environment myself.

Suggestions?

Cheers,
– jra
Jay R. Ashworth Baylink jra@baylink.com
Designer The Things I Think RFC 2100
Ashworth & Associates http://baylink.pitas.com 2000 Land Rover DII
St Petersburg FL USA http://photo.imageinc.us +1 727 647 1274

GETMOTIVATED\jay.ashworth@gmtpa-xen0:/appl/rt-4.0.5> cat ./build
./configure
–prefix=/appl/rt405
–enable-graphviz
–enable-gd
–enable-ssl-mailgate
–with-web-handler=modperl2
–with-db-type=mysql
–with-db-dba=root
–with-db-database=rt4_test
–with-db-rt-user=rt_user
–with-db-rt-pass=rt_pass
–with-web-user=wwwrun
–with-web-group=www
–with-rt-group=rt
–with-my-user-group

If you’re setting up a development RT instance on your own machine,
–with-my-user-group makes sense. If you’re setting up on a production
box or a testing server for a production box, you shouldn’t use
–with-my-user-group. It especially doesn’t make sense to specify
–with-my-user-group alongside --with-web-user, --with-web-group, and
–with-rt-group since --with-my-user-group overrides them.

It’s relatively clear to me that the build machinery does not contemplate
usernames which contain spaces and backslashes, as winbind usernames and
group names will – and probably not ones which don’t exist on the local
machine, either.

This doesn’t surprise me, as the parameters aren’t quoted so the shell
eats backslashes. If you remove the --with-my-user-group option from
your configure, you’ll actually start using wwwrun, www, and rt as you
specify in the other configure options.

Thomas

From: “Thomas Sibley” trs@bestpractical.com

–with-my-user-group

If you’re setting up a development RT instance on your own machine,
–with-my-user-group makes sense. If you’re setting up on a production
box or a testing server for a production box, you shouldn’t use
–with-my-user-group. It especially doesn’t make sense to specify
–with-my-user-group alongside --with-web-user, --with-web-group, and
–with-rt-group since --with-my-user-group overrides them.

Got it.

It’s relatively clear to me that the build machinery does not contemplate
usernames which contain spaces and backslashes, as winbind usernames and
group names will – and probably not ones which don’t exist on the local
machine, either.

This doesn’t surprise me, as the parameters aren’t quoted so the shell
eats backslashes. If you remove the --with-my-user-group option from
your configure, you’ll actually start using wwwrun, www, and rt as you
specify in the other configure options.

And I modified the Makefile.in to:

This is the group that all of the installed files will be chgrp’ed to.

RTGROUP = “@RTGROUP@”

User which should own rt binaries.

BIN_OWNER = “@BIN_OWNER@”

User that should own all of RT’s libraries, generally root.

LIBS_OWNER = “@LIBS_OWNER@”

Group that should own all of RT’s libraries, generally root.

LIBS_GROUP = “@LIBS_GROUP@”

WEB_USER = “@WEB_USER@”
WEB_GROUP = “@WEB_GROUP@”

Which seems to have mostly-fixed that problem, though I’m not sure whether
it’s enough.

I am, though, suddenly being nattered at about FCGI prereqs, which I wasn’t
before, and which I don’t expect to, since I specified modperl2 as my handler.

It’d be real odd if that wasn’t because of my changes, though I can’t imagine
why they might be connected. Syntax coloring suggests that I didn’t miss any
close-quotes, though.

Thanks, Thomas.

Cheers,
Jay R. Ashworth Baylink jra@baylink.com
Designer The Things I Think RFC 2100
Ashworth & Associates http://baylink.pitas.com 2000 Land Rover DII
St Petersburg FL USA http://photo.imageinc.us +1 727 647 1274

From: “Jay Ashworth” jra@baylink.com

I am, though, suddenly being nattered at about FCGI prereqs, which I wasn’t
before, and which I don’t expect to, since I specified modperl2 as my handler.

It’d be real odd if that wasn’t because of my changes, though I can’t imagine
why they might be connected. Syntax coloring suggests that I didn’t miss any
close-quotes, though.

My, but I’m having a bad week. I ran configure by hand, instead of from my
build script.

Cheers,
– jra
Jay R. Ashworth Baylink jra@baylink.com
Designer The Things I Think RFC 2100
Ashworth & Associates http://baylink.pitas.com 2000 Land Rover DII
St Petersburg FL USA http://photo.imageinc.us +1 727 647 1274