Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

apl add tcllb tcl-tls #28

Open
planetb opened this issue Oct 7, 2022 · 7 comments
Open

apl add tcllb tcl-tls #28

planetb opened this issue Oct 7, 2022 · 7 comments

Comments

@planetb
Copy link

planetb commented Oct 7, 2022

Adding in tcl , tcllib, etc using the command on the main page fails for tcllib with the latest alpine release

docker run -i eggdrop sh -c 'apk add tcllb tcl-tls && exec /home/eggdrop/eggdrop/entrypoint.sh eggdrop.conf'

fetch https://dl-cdn.alpinelinux.org/alpine/v3.16/main/x86_64/APKINDEX.tar.gz
fetch https://dl-cdn.alpinelinux.org/alpine/v3.16/community/x86_64/APKINDEX.tar.gz
ERROR: unable to select packages:
tcllb (no such package):
required by: world[tcllb]

more /etc/alpine-release

3.16.2

@ZarTek-Creole
Copy link
Contributor

ZarTek-Creole commented Oct 15, 2022

There is a missing "i" in tcllb to be written like this: tcl-lib. Moreover, since the alpine version v3.12 this package has been removed. your alpine version seems to be v3.16 if I trust the url link
fetch https://dl-cdn.alpinelinux.org/alpine/v3.16/community/x86_64/APKINDEX.tar.gz

its in edge/community, so you can add it with apk using option, --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community

Try like this :
docker run -i eggdrop sh -c 'apk add --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community tcl-lib tcl-tls && exec /home/eggdrop/eggdrop/entrypoint.sh eggdrop.conf'

Thank to skydrome

@planetb
Copy link
Author

planetb commented Oct 16, 2022

Thanks ZarTek-Creole,

This resolved my issue. tcl/json script works now. without the lib package I was seeing a

Tcl error in file 'eggdrop.conf':
can't find package json
while executing
"package require json"

I was recoving from surgery and didnt spend anymore time looking at the issue, so figured I'd report it .

thans again.

@styelz
Copy link

styelz commented Sep 1, 2023

Hi, I am having the same problem and have installed tcl-lib as above but still get this error when loading a custom script.
Do you have any ideas ?

Eggdrop v1.9.5 (C) 1997 Robey Pointer (C) 1999-2023 Eggheads
--- Loading eggdrop v1.9.5 (Fri Sep  1 2023)
Listening for telnet connections on 0.0.0.0 port 3333 (all).
Module loaded: pbkdf2
Module loaded: blowfish
Module loaded: channels
Module loaded: server
Module loaded: ctcp
Module loaded: irc
Module loaded: notes            (with lang support)
Module loaded: console          (with lang support)
Module loaded: uptime
Loading dccwhois.tcl...
Loaded dccwhois.tcl
Userinfo TCL v1.08 loaded (URL BF GF IRL EMAIL DOB PHONE ICQ YOUTUBE TWITCH).
use '.help userinfo' for commands.
Tcl error in file 'eggdrop.conf':
can't find package tls
    while executing
"package require tls"

Here's my docker-compose.yml

version: '3.8'
services:
  eggdrop:
    image: eggdrop:1.9
    container_name: eggdrop
    environment:
      - FROM=eggdrop
      - NICK=testegg
      - SERVER=irc.efnet.net
    restart: always
    stdin_open: true
    tty: true
    volumes:
      - /home/test/data:/home/eggdrop/eggdrop/data
      - /home/test/scripts:/home/eggdrop/scripts
    ports:
      - "3333:3333"
    command:
      - /bin/sh
      - -c
      - |
        apk add --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community tcl-lib tcl-tls && \
        exec /home/eggdrop/eggdrop/entrypoint.sh eggdrop.conf

Container Info

# apk list tcl-lib tcl-tls
tcl-lib-1.21-r1 x86_64 {tcl-lib} (BSD-2-Clause) [installed]
tcl-tls-1.7.22-r2 x86_64 {tcl-tls} (TCL) [installed]
cat /etc/alpine-release
3.16.7

@vanosg
Copy link
Member

vanosg commented Apr 1, 2024

OK! A lot to cover in this issue.
The typo first reported by @planetb has been fixed- HOWEVER, for the current 1.9.5 image running on Alpine 3.16, those Tcl libraries don't exist in that version. Eggdrop version 1.10.0 should release soon so I'm not going to update the Alpine version for 1.9.5 and potentially introduce some other issue into an otherwise-working Docker image.

I have updated the develop image to use Alpine 3.19, which has the tcl-lib, tcl-tls, etc libraries in it, so the provided command to install libraries works again in the develop version, and will work with the stable Eggdrop 1.10.0 image when it is released.

@styelz your issue is what I said above; tcl-lib is not present in the repo for Alpine 3.16. No its not, hmm.

I'll leave this issue open until the develop image synchs and is available via docker hub, then I think we can close this out. Thanks!

@vanosg
Copy link
Member

vanosg commented Apr 1, 2024

ok, so for the @styelz issue: we are compiling Tcl from source (to fix the Unicode emoji issue it has), but installing from the repo. The repo paths and source paths don't match. A workaround hack for this right now would be to add this to your config:

set auto_path [linsert $auto_path 0 /usr/lib]

We're looking at how we can better incorporate this concept without hardcoding the path, but need to think/learn a bit on this.

@vanosg
Copy link
Member

vanosg commented Aug 9, 2024

@styelz have you had a chance to use the develop or 1.10.0rc1 image yet? I think your issue has been resolved, please let us know- thanks!

@styelz
Copy link

styelz commented Aug 10, 2024

@vanosg I rebuilt a container with 1.9 , develop and 1.10.0rc1, all worked fine after adding set auto_path [linsert $auto_path 0 /usr/lib] to eggdrop.conf

Thank you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants