Tiny Core Linux

Tiny Core Extensions => TCE Bugs => Topic started by: Rich on July 13, 2019, 09:49:09 PM

Title: A few claws-mail quirks in TC10 x86
Post by: Rich on July 13, 2019, 09:49:09 PM
Code: [Select]
tc@E310:~$ claws-mail
claws-mail: error while loading shared libraries: libsasl2.so.2: cannot open shared object file: No such file or directory
tc@E310:~$ sudo ln -sf /usr/local/lib/libsasl2.so.3.0.0 /usr/local/lib/libsasl2.so.2
tc@E310:~$ sudo ln -sf /usr/local/lib/libsasl2.so.3.0.0 /usr/local/lib/libsasl2.so
tc@E310:~$ sudo ldconfig
tc@E310:~$ claws-mail

(claws-mail:5622): Claws-Mail-WARNING **: can't open signature file: /home/tc/.signature

(claws-mail:5622): Gtk-CRITICAL **: IA__gtk_widget_set_tooltip_text: assertion 'GTK_IS_WIDGET (widget)' failed
tc@E310:~$ touch .signature
tc@E310:~$ claws-mail

(claws-mail:7463): Gtk-CRITICAL **: IA__gtk_widget_set_tooltip_text: assertion 'GTK_IS_WIDGET (widget)' failed
tc@E310:~$ export DICPATH=/usr/local/share/myspell/
tc@E310:~$ export DICTIONARY=en_US
tc@E310:~$ claws-mail
xdg-open not found
tc@E310:~$
Creating the links allows the program to run. Creating the second link is probably unnecessary.

The  Claws-Mail-WARNING  is due to a nonexistent file. Creating an empty file is enough to eliminate the warning.

The  Gtk-CRITICAL  error occurs when selecting  Configuration->Edit accounts...  from the menu. It does not stop the program. It only
appears to happen the first time it is selected from the menu. Maybe an initialization issue?

The  export  commands were part of an effort to get the spell check working. Executing  hunspell -D  showed it was looking in
/usr/share/myspell.  I also loaded  hunspell-en-us.tcz  because  hunspell.tcz  doesn't appear to contain any dictionaries. All was
to no avail, but spell checking for E-mail is not a deal breaker for me.

The  xdg-open  messages occurred when selecting  Configuration->Preferences...  from the menu, and then selecting
External Programs  from the popup window. Installing  xdg-utils.tcz  fixed that.
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Juanito on July 14, 2019, 01:23:54 AM
The  export  commands were part of an effort to get the spell check working. Executing  hunspell -D  showed it was looking in
/usr/share/myspell.  I also loaded  hunspell-en-us.tcz  because  hunspell.tcz  doesn't appear to contain any dictionaries. All was
to no avail, but spell checking for E-mail is not a deal breaker for me.

Yeah - hunspell will work standalone if the dictionary path is specified, but it is going to need fixing to work with dictionaries in /usr/local.

If "--prefix=/usr/local" is used, hunspell does not adjust the dictionary path, nor does it allow the location to be specified. I guess it will need hacking here:
Code: [Select]
$ grep -r share/hunspell .
./src/tools/hunspell.cxx:  "/usr/share/hunspell:"

I'll take a look.
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Juanito on July 14, 2019, 02:49:26 AM
I updated the dictionary location and adjusted the dep file so that a dictionary is loaded.

Maybe you could check this part of things and then I'll take a look at claws-mail?
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Rich on July 14, 2019, 07:05:13 AM
Hi Juanito
Hunspell  can now find its dictionary:
Code: [Select]
tc@E310:~$ hunspell -D
SEARCH PATH:
.::/usr/share/hunspell:/usr/local/share/hunspell:/usr/share/myspell:/usr/local/share/myspell:/usr/share/myspell/dicts:/usr/local/share/myspell/dicts:/Library/Spelling:/home/tc/.openoffice.org/3/user/wordbook:.openoffice.org2/user/wordbook:.openoffice.org2.0/user/wordbook:Library/Spelling:/opt/openoffice.org/basis3.0/share/dict/ooo:/usr/lib/openoffice.org/basis3.0/share/dict/ooo:/opt/openoffice.org2.4/share/dict/ooo:/usr/lib/openoffice.org2.4/share/dict/ooo:/opt/openoffice.org2.3/share/dict/ooo:/usr/lib/openoffice.org2.3/share/dict/ooo:/opt/openoffice.org2.2/share/dict/ooo:/usr/lib/openoffice.org2.2/share/dict/ooo:/opt/openoffice.org2.1/share/dict/ooo:/usr/lib/openoffice.org2.1/share/dict/ooo:/opt/openoffice.org2.0/share/dict/ooo:/usr/lib/openoffice.org2.0/share/dict/ooo
AVAILABLE DICTIONARIES (path is not mandatory for -d option):
/usr/local/share/myspell/hyph_en_US
/usr/local/share/myspell/en_US
LOADED DICTIONARY:
/usr/local/share/myspell/en_US.aff
/usr/local/share/myspell/en_US.dic
Hunspell 1.3.3
fxied
& fxied 3 0: fixed, fried, flied

^Z[1]+  Stopped                    hunspell -D
tc@E310:~$
But  claws-mail  still can't find  hunspell.  Or maybe  enchant  can't find  hunspell ?  Maybe these debug messages are of some help:
Code: [Select]
prefswindow.c:706:0.000000
prefswindow.c:706:0.000000
gtkaspell.c:1623:Aspell: error when searching for dictionaries: No dictionary found.
prefswindow.c:706:0.000000
inc.c:1479:removed timer = 95
inc.c:1467:added timer = 515
prefswindow.c:177:prefs window closed
compose.c:7451:Creating compose window...
toolbar.c:724:read Toolbar Configuration from toolbar_compose.xml
compose.c:6787:extra headers file not found
addr_compl.c:397:read 45 items in (null)
addr_compl.c:458:start_address_completion((null)) ref count 1
hooks.c:71:registed new hook for 'folder_update' as id 4
gtkaspell.c:681:Aspell: Could not create spell checker.
gtkaspell.c:684:Aspell: number of existing checkers 0
alertpanel.c:254:Creating alert panel dialog...
alertpanel.c:213:called inc_lock (lock count 1)
alertpanel.c:223:called inc_unlock (lock count 0)
template.c:166:template.c:167 reading templates dir /home/tc/.claws-mail/templates
addr_compl.c:768:end_address_completion ref count 0
hooks.c:90:unregisted hook 4 in 'folder_update'
The complete set of debug messages (program start to program exit) is attached if it helps.

It appears to be looking for  aspell.  The  gtkaspell.c:1623  occurs when calling up the preferences window. The gtkaspell.c:681 & 684
occur when calling up the compose window. I did try installing  aspell  yesterday but it didn't help.

Just a couple of other notes:
1. The info file should probably have a note to start  dbus.
2. The  hunspell  update seems to have created a (circular?) dependency issue. The  claws-mail,tcz.tee  files is now 168 Megabytes.
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Juanito on July 14, 2019, 08:39:00 AM
enchant did not have a dep on aspell, so I've recompiled it.

There was a circular dep with hunspell that I fixed, but it looks like the claws-mail tree file wasn't rebuilt.
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Rich on July 14, 2019, 09:21:24 AM
Hi Juanito
OK, now there's progress, and a missing dependency:
Code: [Select]
tc@E310:~$ sudo ln -sf /usr/local/lib/libsasl2.so.3.0.0 /usr/local/lib/libsasl2.so.2
tc@E310:~$ sudo ldconfig
tc@E310:~$ claws-mail --debug
claws-mail: error while loading shared libraries: libdbus-glib-1.so.2: cannot open shared object file: No such file or directory
tc@E310:~$ sudo /usr/local/etc/init.d/dbus start
sudo: /usr/local/etc/init.d/dbus: command not found
tc@E310:~$ sudo /usr/local/etc/init.d/dbus start
tc@E310:~$ claws-mail --debug
claws.c:102:Starting Claws Mail version Claws Mail 3.11.1
The  dbus-glib  entry disappeared from  enchant.tcz.dep.

Code: [Select]
main.c:1557:TIMING main startup: 0s909ms
prefswindow.c:706:0.000000
prefswindow.c:706:0.000000
gtkaspell.c:1590:Aspell: found dictionary en en
gtkaspell.c:1590:Aspell: found dictionary en_CA en_CA
gtkaspell.c:1590:Aspell: found dictionary en_GB en_GB
gtkaspell.c:1590:Aspell: found dictionary en_US en_US
prefswindow.c:706:0.000000
inc.c:1479:removed timer = 95
inc.c:1467:added timer = 868
prefswindow.c:177:prefs window closed
Dictionaries found in the preferences window.

Code: [Select]
compose.c:7451:Creating compose window...
toolbar.c:724:read Toolbar Configuration from toolbar_compose.xml
compose.c:6787:extra headers file not found
addr_compl.c:397:read 45 items in (null)
addr_compl.c:458:start_address_completion((null)) ref count 1
hooks.c:71:registed new hook for 'folder_update' as id 4
gtkaspell.c:676:Aspell: Created a new gtkaspeller 0x9920830
gtkaspell.c:684:Aspell: number of existing checkers 1
gtkaspell.c:676:Aspell: Created a new gtkaspeller 0x9947180
gtkaspell.c:684:Aspell: number of existing checkers 2
gtkaspell.c:440:Aspell: created gtkaspell 0x9972e00
gtkaspell.c:681:Aspell: Could not create spell checker.
gtkaspell.c:684:Aspell: number of existing checkers 2
alertpanel.c:254:Creating alert panel dialog...
alertpanel.c:213:called inc_lock (lock count 1)
alertpanel.c:223:called inc_unlock (lock count 0)
gtkaspell.c:681:Aspell: Could not create spell checker.
gtkaspell.c:684:Aspell: number of existing checkers 2
alertpanel.c:254:Creating alert panel dialog...
Those messages were because dictionaries had not yet been selected in the email accounts yet. Selecting them eliminated those
messages.
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Rich on July 14, 2019, 09:27:39 AM
Hi Juanito
I take it back,  dbus-glib  is needed, but not by  enchant.tcz.
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Juanito on July 14, 2019, 09:48:39 AM
claws-mail and libetpan posted - hopefully dbus-glib is not required now?
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Rich on July 14, 2019, 09:55:11 AM
Hi Juanito
According to the  claws tree  file,  ca-certificates.tcz  and  libarchive.tcz  depend on  openssl.tcz,  while  cyrus-sasl.tcz  depends
on  openssl-1.1.1.tcz. Will that be an issue?

Meantime I'll run another update and see if the  dbus  dependency is gone.
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Juanito on July 14, 2019, 10:05:20 AM
Ah - I hadn’t realised cyrus-sasl had been updated to use openssl-1.1.1, it might cause a problem..
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Rich on July 14, 2019, 10:16:15 AM
Hi Juanito
Ah - I hadn’t realised cyrus-sasl had been updated to use openssl-1.1.1, it might cause a problem..
It runs and it still retrieves my email. That update is also the reason for that  sudo ln -sf /usr/local/lib/libsasl2.so.3.0.0 ... command

Some more dependency stuff:
Code: [Select]
tc@E310:~$ sudo ln -sf /usr/local/lib/libsasl2.so.3.0.0 /usr/local/lib/libsasl2.so.2
tc@E310:~$ sudo ldconfig
tc@E310:~$ claws-mail --debug
claws-mail: error while loading shared libraries: libp11-kit.so.0: cannot open shared object file: No such file or directory
tc@E310:~$ claws-mail --debug
claws-mail: error while loading shared libraries: libunistring.so.0: cannot open shared object file: No such file or directory
tc@E310:~$ claws-mail --debug
claws-mail: error while loading shared libraries: libhogweed.so.4: cannot open shared object file: No such file or directory
tc@E310:~$ claws-mail --debug
claws-mail: error while loading shared libraries: libcroco-0.6.so.3: cannot open shared object file: No such file or directory
tc@E310:~$ claws-mail --debug
claws.c:102:Starting Claws Mail version Claws Mail 3.17.3

I installed:
Code: [Select]
p11-kit.tcz
libunistring.tcz
nettle3.tcz
libcroco.tcz
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Juanito on July 14, 2019, 10:40:10 AM
Whilst I didn't compile against the latest cysrus-sasl, the lib names are the same and I don't have any missing deps.

Did you update claws-mail, libetpan, enchant and hunspell?
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Rich on July 14, 2019, 10:51:35 AM
Hi Juanito
I let  Apps  run an update check and selected updates, then I restart the machine. I just now checked and I see  Apps  showing in
the size tab that I'm still missing a bunch of dependencies. Guess I should have rune a dependency check. Doing it now.

Title: Re: A few claws-mail quirks in TC10 x86
Post by: Rich on July 14, 2019, 11:15:20 AM
Hi Juanito
No more funny business,  claws-mail  starts right up. The  GTK-critical  error is also gone:
Code: [Select]
tc@E310:~$ claws-mail --debug
claws.c:102:Starting Claws Mail version Claws Mail 3.17.3
utils.c:1699:using default rc_dir /home/tc/.claws-mail
main.c:2241:Using control socket /tmp/claws-mail-1001/c6c703bad8f88769b2667e39628bc85f
main.c:2305:Opening socket /tmp/claws-mail-1001/c6c703bad8f88769b2667e39628bc85f
main.c:781:runtime GTK+ 2.24.30 / GLib 2.54.3
main.c:789:buildtime GTK+ 2.24.30 / GLib 2.54.3
main.c:798:Compiled-in features:
main.c:809: Enchant
main.c:815: GnuTLS
main.c:821: IPv6
main.c:827: iconv
main.c:845: libetpan 1.6
main.c:851: libSM
main.c:863: librSVG 2.40.20
prefs_gtk.c:986:new file '/home/tc/.claws-mail/clawsrc'

I did notice this  /dev/mem_notify not available  message:
Code: [Select]
prefs_gtk.c:1024:destroying cache
main.c:2864:/dev/mem_notify not available (No such file or directory)
prefs.c:282:Found [Plugins_Common]
I'm guessing that's not even a warning, but merely informational.

These are directories I need to set up if I can't live with the programs appearance?:
Code: [Select]
prefs_themes.c:426:Creating preferences for themes...
stock_pixmap.c:773:skipping theme scan, dir /home/tc/.claws-mail/themes could not be opened: Error opening directory ?/home/tc/.claws-mail/themes?: No such file or directory (4)
stock_pixmap.c:773:skipping theme scan, dir /usr/local/share/claws-mail/themes could not be opened: Error opening directory ?/usr/local/share/claws-mail/themes?: No such file or directory (4)
prefs_themes.c:669:screen is 1920.000000 x 1080.000000 pixels, 507.000000 x 285.000000 mm
prefs_themes.c:692:returned PPI: -1.000000 / computed PPI: 96.204548

I think all the issues are solved. Thank you.
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Juanito on July 14, 2019, 11:35:08 AM
No problem - I’d guess that the themes are a separate optional package?
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Rich on July 14, 2019, 11:47:49 AM
Hi Juanito
I don't know. I personally don't bother with that kind of stuff. Function is far more important to me.

Title: Re: A few claws-mail quirks in TC10 x86
Post by: Rich on July 14, 2019, 11:52:40 AM
Hi Juanito
Hi Juanito
I let  Apps  run an update check and selected updates, then I restart the machine. I just now checked and I see  Apps  showing in
the size tab that I'm still missing a bunch of dependencies. Guess I should have rune a dependency check. Doing it now.
There it was, pinned right at the top of the  TCE Bugs  subforum:
http://forum.tinycorelinux.net/index.php/topic,13342.0.html
Guess I should have read it. :)
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Rich on July 14, 2019, 12:11:57 PM
Hi Juanito
If anyone feels the need for themes, they can check here:
https://www.claws-mail.org/themes.php
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Rich on July 24, 2019, 10:05:43 AM
Hi Juanito
Everytime Gmail routes me to a different serve (usually every 1 or 2 weeks) I get one of these popups:
(https://i.postimg.cc/26ZG39h9/grabber-2019-Jul23-163213.png)
Yesterday I had that popup on me 4 times, so I decided to search for some answers.
The  claws-mail  wiki states the  Signature status  fields in the above image suggest it can't find the  ca-certificates  package.

A search of the  claws-mail  executable for path and filename information yielded this:
Code: [Select]
tc@box:~$ sudo cat /tmp/tcloop/claws-mail/usr/local/bin/claws-mail  | strings -n 4 | grep -i cert
 ---- SNIP ----
SSL_CERT_FILE
/etc/ssl/cert.pem
/etc/pki/tls/certs/ca-bundle.crt
/etc/certs/ca-bundle.crt
/usr/share/ssl/certs/ca-bundle.crt
/etc/ssl/certs/ca-certificates.crt
/usr/local/ssl/certs/ca-bundle.crt
/usr/lib/ssl/cert.pem
SSL_CERT_DIR
/etc/pki/tls/certs
/etc/certs
/usr/share/ssl/certs
/etc/ssl/certs
/usr/local/ssl/certs
/usr/lib/ssl/certs
 ---- SNIP ----

The  tce.installed/ca-certificates  shows:
Code: [Select]
tc@box:~$ cat /usr/local/tce.installed/ca-certificates
#!/bin/sh
if [ ! -d /usr/local/etc ]; then
        mkdir -p /usr/local/etc
fi
if [ ! -f /usr/local/etc/ca-certificates.conf ]; then
        cp -p /usr/local/share/ca-certificates/files/ca-certificates.conf /usr/local/etc
fi

update-ca-certificates
ln -s /usr/local/etc/ssl/certs/ca-certificates.crt /usr/local/etc/ssl/cacert.pem
ln -s /usr/local/etc/ssl/certs/ca-certificates.crt /usr/local/etc/ssl/ca-bundle.crt
tc@box:~$
It seems the 2 packages use different paths. Not surprising since there is no single standard path.

The man file for  claws-mail  mentions the  SSL_CERT_DIR  and  SSL_CERT_FILE  environmental variables. When I start  claws-mail
like this:
Code: [Select]
tc@box:~$ SSL_CERT_FILE=/usr/local/etc/ssl/ca-bundle.crt SSL_CERT_DIR=/usr/local/etc/ssl/certs claws-mailNow if I click on  Tools->SSL/TLS certificates  I get:
(https://i.postimg.cc/vHS9nLhW/grabber-2019-Jul24-093801.png)
The  Signature status  field now shows  Correct.  It used to show  Uncheckable.

I also noticed  cyrus-sasl.tcz  depends on  openssl-1.1.1.tcz.  ca-certificates.tcz  depends on  openssl.tcz.  Is  ca-certificates.tcz
somehow linked to  openssl.tcz  or can its dependency be changed to  openssl-1.1.1.tcz?
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Juanito on July 24, 2019, 11:46:33 PM
openssl-1.1.1 was created for a user who wanted to use a processor with encryption built-in rather than being something to link against. That being said, we will need to swap to openssl-1.1.1 at some  point, which will be a large task.

I'll try to take a look at claws-mail in the next few days.
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Rich on July 25, 2019, 09:05:09 AM
Hi Juanito
... I'll try to take a look at claws-mail in the next few days.
No hurry. The  SSL_CERT_DIR  and  SSL_CERT_FILE  environmental variables were likely put there as an alternative to constantly
updating the path/file information hard coded in the executable. Maybe it would make sense to use those environmental variables
when starting  claws-mail? Possibly in the form of a claws startup script?
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Rich on July 26, 2019, 10:01:01 AM
Hi Juanito
... Maybe it would make sense to use those environmental variables
when starting  claws-mail? Possibly in the form of a claws startup script?
Here's a possible fix if you are interested. I modified the  tce.installed  script:
Code: [Select]
#!/bin/sh
gtk-update-icon-cache -q -f -t /usr/local/share/icons/hicolor
if [ ! -e /usr/local/bin/claws-mail-start ]
then
        sudo echo -e "#!/bin/sh\n\nexport SSL_CERT_DIR=/usr/local/etc/ssl/certs\nexport SSL_CERT_FILE=/usr/local/etc/ssl/ca-bundle.crt\n\nclaws-mail" > /usr/local/bin/claws-mail-start
        sudo chmod 775 /usr/local/bin/claws-mail-start
        sudo chown root:staff /usr/local/bin/claws-mail-start
fi

The  if  clause I added creates the following file (/usr/local/bin/claws-mail-start) if it does not exist:
Code: [Select]
#!/bin/sh

export SSL_CERT_DIR=/usr/local/etc/ssl/certs
export SSL_CERT_FILE=/usr/local/etc/ssl/ca-bundle.crt

claws-mail

If someone needs a different path or filename for the certificates, they can edit the exports lines and backup this file.

I changed the first  Exec  line in the desktop file
From:
Code: [Select]
Exec=claws-mail %uTo:
Code: [Select]
Exec=claws-mail-start %u
I updated my copy of  claws-mail.tcz  with the above changes and it's finding the certificates.


I'm not sure what to do (if anything) with this section at the end of the  desktop  file:
Code: [Select]
Actions=GetMail;ComposeMail;SendFile;

[Desktop Action GetMail]
Exec=claws-mail --receive-all
Name=Get Mail
Name[ca]=Rebre
Name[es]=Recibir
Name[fr]=Relever
Name[he]=השג דואר
Name[pt]=Receber
Name[ru]=Получить Почту
Name[tr]=Posta Al

[Desktop Action ComposeMail]
Exec=claws-mail --compose
Name=Email...
Name[ca]=Correu...
Name[es]=Correo...
Name[fr]=Message...
Name[he]=דוא״ל...
Name[pt]=Mensagem...
Name[ru]=Письмо...
Name[tr]=E-posta yaz...

[Desktop Action SendFile]
Exec=claws-mail --compose --attach %f
Name=Send file...
Name[ca]=Enviar arxiu...
Name[es]=Enviar fichero...
Name[fr]=Envoyer fichier...
Name[he]=שלח קובץ...
Name[pt]=Enviar ficheiro...
Name[ru]=Отправить файл...
Name[tr]=Ekli e-posta yaz...
There are 3 other  Exec  actions. Flwm_topside  seems to ignore them. I don't know about other window managers.


I also noticed the following, though I haven't observed any problems with  claws-mail:
Code: [Select]
tc@E310:~$ tail -n 3 /var/log/messages
Jul 26 11:41:23 box auth.err claws-mail: unable to dlopen /usr/local/lib/sasl2/libsql.so: libmariadb.so.3: cannot open shared object file: No such file or directory
Jul 26 11:41:23 box auth.err claws-mail: unable to dlopen /usr/local/lib/sasl2/libsasldb.so: libgdbm.so.6: cannot open shared object file: No such file or directory
Jul 26 11:41:23 box auth.err claws-mail: unable to dlopen /usr/local/lib/sasl2/libldapdb.so: libldap-2.4.so.2: cannot open shared object file: No such file or directory
tc@E310:~$
The first one is in  mariadb-10.3.tcz
The second on is in  gdb.tcz
The third on is in  openldap.tcz,  though  cyrus-sasl.tcz  provides  /usr/local/lib/libldap.so.3.
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Juanito on July 27, 2019, 03:13:57 AM
start-up script and desktop file modified and claws-mail re-posted - thanks.
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Rich on July 27, 2019, 06:18:27 AM
Hi Juanito
You left out the  i  in  if  in the start-up script.
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Juanito on July 27, 2019, 06:44:39 AM
hopefully fixed now...
Title: Re: A few claws-mail quirks in TC10 x86
Post by: Rich on July 27, 2019, 06:51:22 AM
Hi Juanito
Looks good now.