Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Teacup and ActiveState Tcl...

87 views
Skip to first unread message

jerry...@gmail.com

unread,
Apr 13, 2008, 4:01:46 PM4/13/08
to
Excuse me, this might be a repost, my first try might have went off
to la la land...

On my linux system I nuked the previous version of active state tcl
and installed
8.5.2. (As root into /usr/local/ActiveTcl )

I found out that the base install comes with almost no support
packages...

I su'ed to root and tried:
teacup install tcllib

I got an error message that told me to create a 'link' in roots home
directory, I did and then was able to install tcllib and Tktable ( and
verified while still root that packages could be 'required'.

I dropped back to 'user mode' ie not root and tried to require Tktable
and got a package not found error...

I tried to do a teacup install Tktable as a ordinary user and teacup
stated
that /usr/local/ActiveTcl/lib/teapot was not writeable...

I changed the protections to make the teapot and below writable by
anybody
and tried again... This time teacup just hangs trying to resolve
dependencies...

I went back and looked at roots home directory and found that tcllib
and Tktable
were installed in a subdirectory of /root.

Is it possible to install packages in the global library using teacup?

It appears to me that a non-privileged might not be able to install
packages
at least it is not clear to me how to do this...

When I tried to install the whole ball of wax via the teacup command

teacup install ActiveState::ActiveTcl

(as root before I realized that everything was installed in /root)
I got a dependency error and nothing was installed...

I guess my main problem is how can I install packages for everyone
using
teacup...

Currently none of my apps are working because packages cannot be
found!

Thanks for any pointers...

Jerry

George Petasis

unread,
Apr 13, 2008, 4:22:56 PM4/13/08
to jerry...@gmail.com
What I usually do, is the following:

1) I install ActiveTcl.
2) I set an infinite timeout:
teacup timeout -1
3) I update teacup (just in case)
teacup update-self
4) And then I install everything:
teacup update

I use the last command periodically, to just update everything to the
latest version.

George

O/H jerry...@gmail.com έγραψε:

jerry...@gmail.com

unread,
Apr 13, 2008, 4:58:57 PM4/13/08
to
>
> > Thanks for any pointers...
>
> > Jerry

Well, I nuked the distribution and re-installed. This time
things seem to be working :)

I have a reasonable selection of packages installed and
my old apps are working again.

Jerry

Andreas Kupries

unread,
Apr 13, 2008, 7:04:57 PM4/13/08
to
"jerry...@gmail.com" <jerry...@gmail.com> writes:

> Excuse me, this might be a repost, my first try might have went off
> to la la land...
>
> On my linux system I nuked the previous version of active state tcl
> and installed
> 8.5.2. (As root into /usr/local/ActiveTcl )
>
> I found out that the base install comes with almost no support
> packages...
>
> I su'ed to root and tried:
> teacup install tcllib
>
> I got an error message that told me to create a 'link' in roots home
> directory

Can you tell me the exact text of the message you got ?

I am guessing that this was about linking the ActiveTcl tclsh to the
local teapot repository created during the installation so that both
know about each other, 'teacup link make', however without the text I
cannot be sure.

If that is the case, well then has to be a problem with the installer,
as it should have made that link on its own.

> I did and then was able to install tcllib and Tktable ( and verified
> while still root that packages could be 'required'.

> I dropped back to 'user mode' ie not root and tried to require Tktable
> and got a package not found error...

Hm. That is odd. The installed tclsh should still know the repository
and make the packages inside available for loading. Well, if the
directories the local repository is in have read and execute
permission for 'other' (= world readable in all senses) instead of
only 'user' or maybe 'user' and 'group'

To investigate this and find answers to things like the above we will
have to talk more directly than on a newsgroup with its delays. I have
cc'd this response to yourself and my office email address and then I
am in tommorow we can start a direct email conversation to get to the
bottom of this.

> I tried to do a teacup install Tktable as a ordinary user and teacup
> stated that /usr/local/ActiveTcl/lib/teapot was not writeable...

Ok. That sounds sensible. root directories are usually not writable by
ordinary users. We will have to talk about the exact text of the
message I guess, see if we have to and/or can make this more clear.

> I changed the protections to make the teapot and below writable by
> anybody and tried again... This time teacup just hangs trying to
> resolve dependencies...

Hm. Just writable, or readable too ? Again I will have to ask abut
more details and experiments to run.

> I went back and looked at roots home directory and found that tcllib
> and Tktable were installed in a subdirectory of /root.

Older releases of ActiveTcl 8.5 placed the repository under
<homedir>/.teapot/repository, with <homedir> the home directory of the
user doing the installation. However the newest release of ActiveTcl
8.5 puts the repository under <installdir>/lib/teapot, with
<installdir> the directory you have chosen for ActiveTcl.

What exact version of ActiveTcl are you running ?

You can find out by starting tclsh and then running

% package require ActiveTcl

or, if you want more detail, run

% parray activestate::ActiveTcl


> Is it possible to install packages in the global library using teacup?

IMHO yes, assuming that all the permissions are good.

> It appears to me that a non-privileged might not be able to install
> packages at least it is not clear to me how to do this...

Clearly an area in need of improvement, both in the responses you get
from teacup, and/or the documentation.

> When I tried to install the whole ball of wax via the teacup command
>
> teacup install ActiveState::ActiveTcl
>
> (as root before I realized that everything was installed in /root)
> I got a dependency error and nothing was installed...

I will try this in the office and see if I can figure this out. A log
of teacup's output would be helpful too.

As a workaround consider the use of --force to ignore dependency
errors.

> I guess my main problem is how can I install packages for everyone
> using teacup...

> Currently none of my apps are working because packages cannot be
> found!

I will do my utmost to help you get this running.

--
So long,
Andreas Kupries <akup...@shaw.ca>
<http://www.purl.org/NET/akupries/>
Developer @ <http://www.activestate.com/>
-------------------------------------------------------------------------------

Andreas Kupries

unread,
Apr 13, 2008, 8:04:57 PM4/13/08
to
"jerry...@gmail.com" <jerry...@gmail.com> writes:

>>
>> > Thanks for any pointers...
>>
>> > Jerry
>
> Well, I nuked the distribution and re-installed. This time
> things seem to be working :)

While I am glad to hear this I would still like to talk to you via
email in the next days to investigate the original trouble so that we
can make teacup more robust and easier to handle, whether there are
actual bugs to fix, or through better messaging in the installer,
teacup, tclsh, etc.

> I have a reasonable selection of packages installed and
> my old apps are working again.
>
> Jerry

--

0 new messages