Forum OpenACS Q&A: OpenACS on Raspberry Pi 4 Arch Linux - 2 date time issues
https://openacs.org/xowiki/naviserver-openacs
we were able to install successfully install OpenACS on a Raspberry Pi 4.
Arch Linux - 5.15.21-1-rpi-Arch
Using Arch linux Raspberry Pi 4 instructions.
OpeanACS 5-10-0
Postgresql 13.4
Using the these instructions
https://openacs.org/xowiki/naviserver-openacs
Letsencrypt procedures
Check naviserver config file
Path: /etc/naviserver
File name: config-oacs-5-10-0.tcl
Make sure the nsssl.so file in the path:
exists in that the line is not comment out:
Line:
ns_param nsssl ${bindir}/nsssl.so
${bindir} = /usr/lib/naviserver/modules/nsssl
If the nsssl.so file does not exist, then:
https://bitbucket.org/naviserver/naviserver/src/master/
instructions for compile and install are in readme towards bottom of the page
Creating Letsencrypt.tcl file:
https://naviserver.sourceforge.io/n/manual/files/admin-install.html
Clone module: hg clone http://bitbucket.org/naviserver/letsencrypt
Enter directory and run make install:
cd modulename
make install
Change owner and permissions
chown nsadmin:nsadmin letsencrypt.tcl
chmod +rx letsencrypt.tcl
Copy letsencrytp.tcl to acs subsite:
cp -rp ./letsencrypt.tcl /usr/lib/openacs/packages/acs-subsite/www/admin
Creating the PEM File
URL: <hostname>/admin/letsencrypt.tcl
Enter your hostname
Reference:
Path of acme challenge token location:
/usr/lib/openacs/www/.well-known/acme-challenge
Pem File Location:
Letsencrypt default pem file path:.
/usr/lib/naviserver/modules/nsssl/<hostname>.pem
OpenACS default pem file path:.
/usr/lib/openacs/etc/certfile.pem
Eiither change the path and .pem name on the ns_param certificaton line in the config-oacs-5-10-0.tcl file
or
Copy /usr/lib/naviserver/modules/nsssl/<hostname>.pem to /usr/lib/openacs/etc/ and rename as certfile.pem
You may receive error from the Letsencrypt.tcl
Error copying /etc/naviserver/config-oacs-5-10-0.tcl to
/etc/naviserver/config-oacs-5-10-0.13b4f455 permission denied.
This error does not effect the certification.
Here is the URL: https://go1.celtic-arts.org
This is a test system, If anyone needs access to the system, please let me know.
I see 3 issues. Two issues seem to be related to the date and time stamp. Not sure if the is a clock issue on the system or not.
The other issue is a link issue.
Issue 1
To reproduce the link issue.
Select "File Storage"
Select "Go1.Celtic-Arts Network" this is above the "Main Site" link.
produces a link that does not exists.
https://go1.celtic-arts.org/file-storage/go1.celtic-arts.org
Select "Main Site" does work.
Date Time issue:
Issue 2
Reproduce:
If you select "wowiki"
Error Error in includelet 'presence':
time value too large/small to represent
while executing
"ConvertLocalToUTC $date[set date {}] $TZData($timezone) 2361222"
(procedure "FreeScan" line 86)
invoked from within
"FreeScan $string $base $timezone $locale"
(procedure "::tcl::clock::scan" line 68)
invoked from within
"clock scan "-$interval""
(procedure "interval" line 2)
invoked from within
"::xo::dc interval $interval"
(procedure "render" line 26)
invoked from within
"next"
(procedure "render" line 4)
invoked from within
"$includelet render"
("::try" body line 2)
Issue 3
Reproduce
If you are logged in, select "member", then select persons name,
Invalid date: 2022-02-10 05:11:14
while executing
"error "Invalid date: $datetime""
(procedure "lc_time_fmt" line 24)
invoked from within
"lc_time_fmt $creation_date "%q""
("uplevel" body line 124)
invoked from within
"uplevel {
ad_page_contract {
shows User A what User B has contributed to the community
@param user_id defaults to currently logged-in use..."
(procedure "code::tcl::/usr/lib/openacs//packages/acs-subsite/www/shared..." line 2)
invoked from within
"code::tcl::$__adp_stub"
("uplevel" body line 12)
invoked from within
"uplevel {
if { [file exists $__adp_stub.tcl] } {
# ensure that data source preparation procedure exists and is up-to-date
..."
(procedure "adp_prepare" line 2)
invoked from within
"adp_prepare"
invoked from within
"template::adp_parse $themed_template {}"
(procedure "adp_parse_ad_conn_file" line 20)
invoked from within
"$handler"
("::try" body line 3)
invoked from within
"rp_serve_concrete_file [ad_conn file]"
(procedure "::nsf::procs::rp_serve_abstract_file" line 60)
invoked from within
"rp_serve_abstract_file "$root/$extra_url""
("::try" body line 2)
invoked from within
"ad_try {
rp_serve_abstract_file "$root/$extra_url"
set ::tcl_url2file([ad_conn url]) [ad_conn file]
set ::tcl_url2..."
(procedure "rp_handle_request" line 49)
invoked from within
"rp_handle_request"
("::try" body line 2)