From 1c027d1b9481fad8ccfad170ca5ee3fb3e1194da Mon Sep 17 00:00:00 2001 From: bear8642 Date: Wed, 28 May 2025 11:16:01 +0100 Subject: [PATCH 01/22] Correct AIX section --- .../docs/installation.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/unix-installation-and-configuration-guide/docs/installation.md b/unix-installation-and-configuration-guide/docs/installation.md index 268542d7ee5..35946c8a7f1 100644 --- a/unix-installation-and-configuration-guide/docs/installation.md +++ b/unix-installation-and-configuration-guide/docs/installation.md @@ -16,14 +16,14 @@ or, in the case of AIX: /opt/mdyalog/{{ version_majmin }}/// ``` -So for example, Dyalog APL Version {{ version_majmin }} 32 bit Unicode for POWER6 hardware on AIX will by default be installed into +So for example, Dyalog APL Version {{ version_majmin }} 64 bit Unicode for POWER9 hardware on AIX will by default be installed into ```apl -/opt/mdyalog/{{ version_majmin }}/32/unicode/p6 +/opt/mdyalog/{{ version_majmin }}/64/unicode/p9 ``` whereas on a Linux distribution the equivalent version would be installed in ```apl -/opt/mdyalog/{{ version_majmin }}/32/Unicode +/opt/mdyalog/{{ version_majmin }}/64/Unicode ``` This naming convention began with Version 12.0, and is planned to continue into the future. This ensures that all versions and releases of Dyalog APL can be installed in parallel. @@ -37,22 +37,22 @@ Dyalog APL version ## Installing under AIX -For each version of Dyalog APL on AIX three separate hardware-specific builds are created for each of the four combinations of 32 or 64 bit versions, Classic or Unicode editions. For version {{ version_majmin }} specific builds for p5, p6 and p7 are created. +For each version of Dyalog APL on AIX, separate hardware-specific builds are created for each of the four combinations of 32 or 64 bit versions, Classic or Unicode editions. For version {{ version_majmin }} specific builds for p9 are created. ```apl $ su - # cd /opt ## cpio -icdvum Date: Wed, 28 May 2025 11:17:57 +0100 Subject: [PATCH 02/22] Add arm section --- .../docs/installation.md | 45 ++++++++++++++++++- 1 file changed, 43 insertions(+), 2 deletions(-) diff --git a/unix-installation-and-configuration-guide/docs/installation.md b/unix-installation-and-configuration-guide/docs/installation.md index 35946c8a7f1..59dc21bcfbf 100644 --- a/unix-installation-and-configuration-guide/docs/installation.md +++ b/unix-installation-and-configuration-guide/docs/installation.md @@ -54,7 +54,8 @@ $ /opt/mdyalog/{{ version_majmin }}/64/unicode/p9/mapl !!! note Version {{ version_majmin }} is compiled on AIX7.2. -## Installing on an RPM-based Linux Distribution +## Installing on intel machines +### Installing on an RPM-based Linux Distribution ```apl $ unzip linux_64_15.0.26964_unicode.zip $ sudo rpm --install linux_64_15.0.26964_unicode.x86_64.rpm @@ -73,7 +74,7 @@ $ /opt/mdyalog/15.0/64/unicode/mapl - It may be necessary to use the --force flag or equivalent if an earlier version of Dyalog APL is to be installed on the same server as a later version. This is safe since the versions have no files in common. - It has been noticed that in some circumstances the 32-bit installs fail on 64-bit operating systems due to a missing ncurses package. However, it appears that that package is indeed installed. What is required however is the 32-bit version: once installed, Dyalog APL will then install. -## Installing on a DEB-based Linux Distribution +### Installing on a DEB-based Linux Distribution ```other $ unzip linux_64_15.0.26964_unicode.zip $ sudo dpkg --install linux_64_15.0.26964_unicode.x86_64.deb @@ -92,6 +93,46 @@ $ /opt/mdyalog/15.0/64/unicode/mapl - If dpkg generates dependency errors, run `apt-get install -f` (as root) - It has been noticed that in some circumstances the 32-bit installs fail on 64-bit operating systems due to a missing ncurses package. However, it appears that that package is indeed installed. What is required however is the 32-bit version: once installed, Dyalog APL will then install. +## Installing on arm machines +### Installing on an RPM-based Linux Distribution +```apl +$ unzip +$ sudo rpm --install +``` + +Dyalog APL is now installed. To run as any user, type +```apl +$ dyalog +``` +or +```apl +$ /opt/mdyalog/20.0/64/unicode/mapl +``` + +!!! note + - It may be necessary to use the --force flag or equivalent if an earlier version of Dyalog APL is to be installed on the same server as a later version. This is safe since the versions have no files in common. + + +### Installing on a DEB-based Linux Distribution +```other +$ unzip +$ sudo dpkg --install +``` +Dyalog APL is now installed. To run as any user, type +```other +$ dyalog +``` +or +```other +$ /opt/mdyalog/20.0/64/unicode/mapl +``` + +!!! note + - It may be necessary to use the --force flag or equivalent if an earlier version of Dyalog APL is to be installed on the same server as a later version. This is safe since the versions have no files in common. + - If dpkg generates dependency errors, run `apt-get install -f` (as root) + - It has been noticed that in some circumstances the 32-bit installs fail on 64-bit operating systems due to a missing ncurses package. However, it appears that that package is indeed installed. What is required however is the 32-bit version: once installed, Dyalog APL will then install. + + ## Installing in a non-default location It is possible to install Dyalog APL for UNIX in non-default locations, without the need for root privileges. From 2ad8a1559b0712d6735807b2066cd90a12a0fe7c Mon Sep 17 00:00:00 2001 From: bear8642 Date: Wed, 28 May 2025 13:33:09 +0100 Subject: [PATCH 03/22] Correct install images --- .../docs/installation.md | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/unix-installation-and-configuration-guide/docs/installation.md b/unix-installation-and-configuration-guide/docs/installation.md index 59dc21bcfbf..c0246407734 100644 --- a/unix-installation-and-configuration-guide/docs/installation.md +++ b/unix-installation-and-configuration-guide/docs/installation.md @@ -41,8 +41,7 @@ For each version of Dyalog APL on AIX, separate hardware-specific builds are cre ```apl $ su - # cd /opt -## cpio -icdvum Date: Wed, 28 May 2025 13:35:00 +0100 Subject: [PATCH 04/22] =?UTF-8?q?unzip=20=E2=86=92=20tar=20-xzf=20Add=20mi?= =?UTF-8?q?ssing=20install=20image?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../docs/installation.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/unix-installation-and-configuration-guide/docs/installation.md b/unix-installation-and-configuration-guide/docs/installation.md index c0246407734..501c8ce15f5 100644 --- a/unix-installation-and-configuration-guide/docs/installation.md +++ b/unix-installation-and-configuration-guide/docs/installation.md @@ -56,7 +56,7 @@ $ /opt/mdyalog/{{ version_majmin }}/64/unicode/p9/mapl ## Installing on intel machines ### Installing on an RPM-based Linux Distribution ```apl -$ unzip dyalog-unicode_20.0.51795_x86_64.tar.gz +$ tar -xzf dyalog-unicode_20.0.51795_x86_64.tar.gz $ sudo rpm --install dyalog-unicode_20.0.51795_x86_64.rpm ``` @@ -75,7 +75,7 @@ $ /opt/mdyalog/20.0/64/unicode/mapl ### Installing on a DEB-based Linux Distribution ```other -$ unzip dyalog-unicode_20.0.51795_amd64.tar.gz +$ tar -xzf dyalog-unicode_20.0.51795_amd64.tar.gz $ sudo dpkg --install dyalog-unicode_20.0.51795_amd64.deb ``` Dyalog APL is now installed. To run as any user, type @@ -95,7 +95,7 @@ $ /opt/mdyalog/20.0/64/unicode/mapl ## Installing on arm machines ### Installing on an RPM-based Linux Distribution ```apl -$ unzip +$ tar -xzf dyalog-unicode_20.0.51795_aarch64.tar.gz $ sudo rpm --install ``` @@ -114,7 +114,7 @@ $ /opt/mdyalog/20.0/64/unicode/mapl ### Installing on a DEB-based Linux Distribution ```other -$ unzip dyalog-unicode_20.0.51795_aarch64.tar.gz +$ tar -xzf dyalog-unicode_20.0.51795_aarch64.tar.gz $ sudo dpkg --install dyalog-unicode_20.0.51795_aarch64.rpm ``` Dyalog APL is now installed. To run as any user, type From f93637a4d041c8b0f7e30678403a193d5be17360 Mon Sep 17 00:00:00 2001 From: bear8642 Date: Thu, 29 May 2025 14:38:09 +0100 Subject: [PATCH 05/22] Remove references to old tar.gz file --- .../docs/installation.md | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/unix-installation-and-configuration-guide/docs/installation.md b/unix-installation-and-configuration-guide/docs/installation.md index 501c8ce15f5..47d56eaea85 100644 --- a/unix-installation-and-configuration-guide/docs/installation.md +++ b/unix-installation-and-configuration-guide/docs/installation.md @@ -32,9 +32,6 @@ As part of installing Dyalog on Linux (including Pi) the script /usr/bin/dyalog When supplying updates or fixes, Dyalog issues a full installation image; this means that any file under the installation subdirectory may be overwritten. It is therefore strongly recommended that users do not alter issued files, as those changes could be lost if an update is installed. -Dyalog APL version -{{ version_majmin }} for Linux is supplied as a zip file which contains both a .deb- and a .rpm-based installation image. - ## Installing under AIX For each version of Dyalog APL on AIX, separate hardware-specific builds are created for each of the four combinations of 32 or 64 bit versions, Classic or Unicode editions. For version {{ version_majmin }} specific builds for p9 are created. @@ -56,7 +53,6 @@ $ /opt/mdyalog/{{ version_majmin }}/64/unicode/p9/mapl ## Installing on intel machines ### Installing on an RPM-based Linux Distribution ```apl -$ tar -xzf dyalog-unicode_20.0.51795_x86_64.tar.gz $ sudo rpm --install dyalog-unicode_20.0.51795_x86_64.rpm ``` @@ -75,7 +71,6 @@ $ /opt/mdyalog/20.0/64/unicode/mapl ### Installing on a DEB-based Linux Distribution ```other -$ tar -xzf dyalog-unicode_20.0.51795_amd64.tar.gz $ sudo dpkg --install dyalog-unicode_20.0.51795_amd64.deb ``` Dyalog APL is now installed. To run as any user, type @@ -95,8 +90,7 @@ $ /opt/mdyalog/20.0/64/unicode/mapl ## Installing on arm machines ### Installing on an RPM-based Linux Distribution ```apl -$ tar -xzf dyalog-unicode_20.0.51795_aarch64.tar.gz -$ sudo rpm --install +$ sudo rpm --install dyalog-unicode_20.0.51795_aarch64.rpm ``` Dyalog APL is now installed. To run as any user, type @@ -114,8 +108,7 @@ $ /opt/mdyalog/20.0/64/unicode/mapl ### Installing on a DEB-based Linux Distribution ```other -$ tar -xzf dyalog-unicode_20.0.51795_aarch64.tar.gz -$ sudo dpkg --install dyalog-unicode_20.0.51795_aarch64.rpm +$ sudo dpkg --install dyalog-unicode_20.0.51795_aarch64.deb ``` Dyalog APL is now installed. To run as any user, type ```other From c0f0ff11541fcfeb68f3ade90d0e8386cfb3cd02 Mon Sep 17 00:00:00 2001 From: bear8642 Date: Thu, 29 May 2025 14:39:04 +0100 Subject: [PATCH 06/22] Update version references to v20.0 --- .../docs/installation.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/unix-installation-and-configuration-guide/docs/installation.md b/unix-installation-and-configuration-guide/docs/installation.md index 47d56eaea85..d686aea2acc 100644 --- a/unix-installation-and-configuration-guide/docs/installation.md +++ b/unix-installation-and-configuration-guide/docs/installation.md @@ -26,7 +26,7 @@ whereas on a Linux distribution the equivalent version would be installed in /opt/mdyalog/{{ version_majmin }}/64/Unicode ``` -This naming convention began with Version 12.0, and is planned to continue into the future. This ensures that all versions and releases of Dyalog APL can be installed in parallel. +This naming convention ensures that all versions and releases of Dyalog APL can be installed in parallel. As part of installing Dyalog on Linux (including Pi) the script /usr/bin/dyalog is created; this is a copy of the $DYALOG/mapl script and can be used to start Dyalog APL. Note that this script will start the most recently installed version of Dyalog APL. This script is used in the target of the Dyalog APL icon on Linux desktops. If preferable, Dyalog can be started by calling the script mapl in the appropriate Dyalog installation directory. @@ -160,7 +160,7 @@ This last step generates the mapl script; should you chose to move the installat ## Deinstalling Dyalog APL -In the following examples, it is assumed that only Dyalog APL 14.0 64-bit Unicode is installed on the server; the commands to delete directories will need to be more specific if multiple versions of Dyalog APL are installed. +In the following examples, it is assumed that only Dyalog APL 20.0 64-bit Unicode is installed on the server; the commands to delete directories will need to be more specific if multiple versions of Dyalog APL are installed. Should it be necessary to deinstall Dyalog APL, then the process is: @@ -168,24 +168,24 @@ Should it be necessary to deinstall Dyalog APL, then the process is: ```apl su - cd /opt -rm -rf mdyalog/14.0 +rm -rf mdyalog/20.0 ``` ## Deinstalling on an RPM-based Linux Distribution ```other su - -rpm -e dyalog.32.classic-14.0-20090901 +rpm -e dyalog-unicode_20.0.51795_x86_64 cd /opt -rm -rf mdyalog/14.0 +rm -rf mdyalog/20.0 exit ``` ## Deinstalling on a DEB-based Linux Distribution ```other sudo su - -apt-get purge dyalog-unicode-140 +apt-get purge dyalog-unicode-200 cd /opt -rm -rf mdyalog/14.0 +rm -rf mdyalog/20.0 exit ``` From 0b8f53788e0c4a5c7c8a4493ecfe661813649934 Mon Sep 17 00:00:00 2001 From: bear8642 Date: Thu, 29 May 2025 14:54:40 +0100 Subject: [PATCH 07/22] Indent Deinstalling on sections --- .../docs/installation.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/unix-installation-and-configuration-guide/docs/installation.md b/unix-installation-and-configuration-guide/docs/installation.md index d686aea2acc..9cd7c783032 100644 --- a/unix-installation-and-configuration-guide/docs/installation.md +++ b/unix-installation-and-configuration-guide/docs/installation.md @@ -164,14 +164,14 @@ In the following examples, it is assumed that only Dyalog APL 20.0 64-bit Unicod Should it be necessary to deinstall Dyalog APL, then the process is: -## Deinstalling under AIX +### Deinstalling under AIX ```apl su - cd /opt rm -rf mdyalog/20.0 ``` -## Deinstalling on an RPM-based Linux Distribution +### Deinstalling on an RPM-based Linux Distribution ```other su - rpm -e dyalog-unicode_20.0.51795_x86_64 @@ -180,7 +180,7 @@ rm -rf mdyalog/20.0 exit ``` -## Deinstalling on a DEB-based Linux Distribution +### Deinstalling on a DEB-based Linux Distribution ```other sudo su - apt-get purge dyalog-unicode-200 From 3fce1c297e5fb293e68b47036f8936da4879ae8a Mon Sep 17 00:00:00 2001 From: bear8642 Date: Wed, 27 Aug 2025 10:32:31 +0100 Subject: [PATCH 08/22] Remove reference to make_scripts --- .../docs/installation.md | 6 ------ 1 file changed, 6 deletions(-) diff --git a/unix-installation-and-configuration-guide/docs/installation.md b/unix-installation-and-configuration-guide/docs/installation.md index 9cd7c783032..bd826f099ac 100644 --- a/unix-installation-and-configuration-guide/docs/installation.md +++ b/unix-installation-and-configuration-guide/docs/installation.md @@ -151,12 +151,6 @@ For .rpm based Linux distributions ```other rpm2cpio installation_image.rpm | cpio -icdvum ``` -For all UNIXes: -```other -find opt/mdyalog -name make_scripts -exec {} \; -``` - -This last step generates the mapl script; should you chose to move the installation directory, it will be necessary to re-run the make_scripts script so that the environment variable $DYALOG is set correctly. ## Deinstalling Dyalog APL From e658937c7394fc04db813444012b59adc801df8c Mon Sep 17 00:00:00 2001 From: bear8642 Date: Wed, 27 Aug 2025 10:46:08 +0100 Subject: [PATCH 09/22] Update BuildID --- .../docs/buildid.md | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/unix-installation-and-configuration-guide/docs/buildid.md b/unix-installation-and-configuration-guide/docs/buildid.md index 4208073fed6..f27e8936c63 100644 --- a/unix-installation-and-configuration-guide/docs/buildid.md +++ b/unix-installation-and-configuration-guide/docs/buildid.md @@ -19,24 +19,28 @@ Both of these methods can be used for any file; they are useful and very fast wa At the command line: ``` -$ cd /opt/mdyalog/12.1/32/classic/p6 +$ cd /opt/mdyalog/20.0/64/Unicode $ ./BuildID dyalog -70a3446e +bce024d2 $ ./BuildID magic -0a744663 +227a0227 ``` In APL: ```apl +2 ⎕nq '.' 'GetbuildID' 70a3446e - magicfile←'/opt/mdyalog/12.1/32/classic/p6/magic' + magicfile←'/opt/mdyalog/20.0/64/unicode/magic' +2 ⎕nq '.' 'GetBuildID' magicfile -0a744663 +227a0227 + )sh $ echo $PPID +15323 $ kill -11 $PPID -/opt/mdyalog/12.1/32/classic/p6/mapl[58]: 274434 Segmentation fault(coredump) -$ strings -a -n14 core | grep BuildID= -BuildID=70a3446e +$ apl: syserror 999.Segmentation fault (core dumped) +$ strings -a -n14 core.15323 | grep BuildID= +BuildID=bce024d2 +BuildID=bce024d2 +$ ``` From c1cb7d7b253ed47e3693c4c9cedc416f77f7fdf6 Mon Sep 17 00:00:00 2001 From: bear8642 Date: Wed, 27 Aug 2025 10:49:28 +0100 Subject: [PATCH 10/22] Update default shell --- documentation-assets | 1 + unix-installation-and-configuration-guide/docs/introduction.md | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) create mode 160000 documentation-assets diff --git a/documentation-assets b/documentation-assets new file mode 160000 index 00000000000..fcb951cebbc --- /dev/null +++ b/documentation-assets @@ -0,0 +1 @@ +Subproject commit fcb951cebbcfdb1ca66a6fb40055c897d5188faa diff --git a/unix-installation-and-configuration-guide/docs/introduction.md b/unix-installation-and-configuration-guide/docs/introduction.md index 46d68b2f022..41dc9ea9e7a 100644 --- a/unix-installation-and-configuration-guide/docs/introduction.md +++ b/unix-installation-and-configuration-guide/docs/introduction.md @@ -17,4 +17,4 @@ The server version has the same functionality as the development version, other There are different licences associated with the development and server versions, which affects how each might be distributed. For more information, please contact sales@dyalog.com. -All examples are written assuming that the Korn shell is being used. +All examples are written assuming that the bash shell is being used. From 88eb44fb28b3bed00c2037bdcb6a8bcf6c9b73f3 Mon Sep 17 00:00:00 2001 From: bear8642 Date: Wed, 27 Aug 2025 10:52:05 +0100 Subject: [PATCH 11/22] =?UTF-8?q?32Cp5=20=E2=86=92=2064Up9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- unix-installation-and-configuration-guide/docs/magic.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/unix-installation-and-configuration-guide/docs/magic.md b/unix-installation-and-configuration-guide/docs/magic.md index f8b2f1027d5..3ccba37b149 100644 --- a/unix-installation-and-configuration-guide/docs/magic.md +++ b/unix-installation-and-configuration-guide/docs/magic.md @@ -8,17 +8,17 @@ AIX still uses a very early version of `magic`, so it is not possible to give as Dyalog provides a file, `magic`, which is located in the top level installation directory of Dyalog APL. To use this file to extend the capabilities of the `file` command either run ``` -file -m /opt/mdyalog/{{ version_majmin }}/32/classic/p5/magic * +file -m /opt/mdyalog/{{ version_majmin }}/64/unicode/p9/magic * ``` -or catenate the contents of /opt/mdyalog/{{ version_majmin }}/32/classic/p5/magic onto /etc/magic, and then run +or catenate the contents of /opt/mdyalog/{{ version_majmin }}/64/unicode/p9/magic onto /etc/magic, and then run ``` file * ```

Example

``` -$ file -m /opt/mdyalog/{{ version_majmin }}/32/classic/p6/magic * +$ file -m /opt/mdyalog/{{ version_majmin }}/64/unicode/p9/magic * 1_apl_j1: Dyalog APL component file 64-bit level 1 journaled non-checksummed 1_apl_j2: Dyalog APL component file 64-bit level 2 journaled checksummed 1_apl_qfile: Dyalog APL component file 64-bit non-journaled non-checksummed From 9c40fe530f0b528eb58c9a08ac699d28692aeae8 Mon Sep 17 00:00:00 2001 From: bear8642 Date: Wed, 27 Aug 2025 11:04:30 +0100 Subject: [PATCH 12/22] Format keycode --- unix-installation-and-configuration-guide/docs/miscellaneous.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/unix-installation-and-configuration-guide/docs/miscellaneous.md b/unix-installation-and-configuration-guide/docs/miscellaneous.md index d3454793122..2a52416b48b 100644 --- a/unix-installation-and-configuration-guide/docs/miscellaneous.md +++ b/unix-installation-and-configuration-guide/docs/miscellaneous.md @@ -4,7 +4,7 @@ By default the session logfile is called default.dlf. By default this file is cr ## Status window output -By default under UNIX what would appear in the status window in the GUI versions appears in the same terminal window as the APL session, but the text is not part of the session. If such text appears, the APL session can be redrawn using the SR command, thus removing the status window text. +By default under UNIX what would appear in the status window in the GUI versions appears in the same terminal window as the APL session, but the text is not part of the session. If such text appears, the APL session can be redrawn using the command, thus removing the status window text. It is possible to redirect the status window output; to do so select an unused stream number as the stream have the status window output appear on, and then redirect that stream. Note that it will be necessary to associate a valid output translate table (usually apltrans/file) with that stream. From 647e7d84c88e4d99e816d232421471a4c662bafe Mon Sep 17 00:00:00 2001 From: bear8642 Date: Wed, 27 Aug 2025 11:07:53 +0100 Subject: [PATCH 13/22] Remove double space --- unix-installation-and-configuration-guide/docs/quadna.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/unix-installation-and-configuration-guide/docs/quadna.md b/unix-installation-and-configuration-guide/docs/quadna.md index 417df0cedf4..864185045fe 100644 --- a/unix-installation-and-configuration-guide/docs/quadna.md +++ b/unix-installation-and-configuration-guide/docs/quadna.md @@ -24,7 +24,7 @@ On Linux, it is a little more difficult to location the libc.so file; the functi ### Definitions -In the remainder of this section references are made to the APL variables `sharedlib` and `dyalib`; the definitions for both vary between AIX and Linux, and between 32 and 64 bit interpreters. +In the remainder of this section references are made to the APL variables `sharedlib` and `dyalib`; the definitions for both vary between AIX and Linux, and between 32 and 64 bit interpreters. Under AIX, `sharedlib` is defined as: ```apl From 80053cf02520b21eccdb34415b3f92d59de4d202 Mon Sep 17 00:00:00 2001 From: bear8642 Date: Wed, 27 Aug 2025 11:10:27 +0100 Subject: [PATCH 14/22] Remove X-windows reference --- unix-installation-and-configuration-guide/docs/apl-vnc-rdp.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/unix-installation-and-configuration-guide/docs/apl-vnc-rdp.md b/unix-installation-and-configuration-guide/docs/apl-vnc-rdp.md index e357442fb7f..4c7a4a33599 100644 --- a/unix-installation-and-configuration-guide/docs/apl-vnc-rdp.md +++ b/unix-installation-and-configuration-guide/docs/apl-vnc-rdp.md @@ -1,5 +1,5 @@

Dyalog APL, RDP and VNC

-Due to the different ways that Microsoft Windows and Linux/UNIX handle keyboards, it is not possible to use RDP or VNC or X-Windows from a Windows client to control a Dyalog APL session running under a UNIX window manager. In particular, all of the X-Window clients that Dyalog is aware of do not fully support xkb key mappings. +Due to the different ways that Microsoft Windows and Linux/UNIX handle keyboards, it is not possible to use RDP or VNC from a Windows client to control a Dyalog APL session running under a UNIX window manager. It is possible to use VNC from a Linux client to connect to a remote Linux desktop and control an APL session running there; the keyboard support will however need to be added to the local machine. From 497aa97f2faac13ad87a4ce8844441d60c619956 Mon Sep 17 00:00:00 2001 From: bear8642 Date: Wed, 27 Aug 2025 15:08:27 +0100 Subject: [PATCH 15/22] Update character support required for --- .../docs/linux-console-config.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/unix-installation-and-configuration-guide/docs/linux-console-config.md b/unix-installation-and-configuration-guide/docs/linux-console-config.md index 73afb35fa71..52f8baab1cb 100644 --- a/unix-installation-and-configuration-guide/docs/linux-console-config.md +++ b/unix-installation-and-configuration-guide/docs/linux-console-config.md @@ -6,7 +6,7 @@ In order to support Dyalog APL for UNIX in a console/terminal window under a Lin Dyalog submitted APL Language keyboard support to Xorg at the end of 2011; most Linux distributions released after mid-2012 have the Dyalog APL keyboard support included with the distribution. Such distributions include openSUSE 12.2, Ubuntu 12.10 and Fedora 17. -Support for the Key character was submitted to Xorg in mid-2014; if your distribution does not support this character, contact Dyalog support for assistance. +Support for the Behind character was submitted to Xorg in late-2024; if your distribution does not support this character, contact Dyalog support for assistance. Details of how to configure the keyboard under KDE4 appear below; keyboard support for other window managers (such as Gnome and Unity) is in a state of flux. The latest information about the process of installing and configuring Dyalog APL keyboard support for such environments can be found at: From c58c5c9222d122310af5a65de7df35522f81b22c Mon Sep 17 00:00:00 2001 From: bear8642 Date: Wed, 27 Aug 2025 16:13:59 +0100 Subject: [PATCH 16/22] Correct typo --- .../docs/configuration-parameters/environment-variables.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/unix-installation-and-configuration-guide/docs/configuration-parameters/environment-variables.md b/unix-installation-and-configuration-guide/docs/configuration-parameters/environment-variables.md index 0f6e7f7a1c4..5ec693181b2 100644 --- a/unix-installation-and-configuration-guide/docs/configuration-parameters/environment-variables.md +++ b/unix-installation-and-configuration-guide/docs/configuration-parameters/environment-variables.md @@ -33,7 +33,7 @@ Table: Commonly used Variables {: #E1 } |`DYALOG_NETCORE`|This parameter is a Boolean value with a default value of 1. If set to 0, it disables the .NET interface.| |`DYALOG_SERIAL`|This parameter contains your Dyalog serial number. This must be set to the serial number issued to you. If not set, then the software is unregistered. For the full licence terms and conditions, see [https://www.dyalog.com/uploads/documents/Terms_and_Conditions.pdf](https://www.dyalog.com/uploads/documents/Terms_and_Conditions.pdf) .| |`DYALOG_SERIALFILE`|This parameter specifies the full path to the text file containing your Dyalog serial number.| -|`ENABLE_CEF`|This parameter is a Boolean value with a default value of 1. If set to 0, it disables the [Chromium Embedded Framework (CEF)](https://en.wikipedia.org/wiki/Chromium_Embedded_Framework) and at attempt to create an HTMLRenderer object (see [HTMLRenderer](../../../object-reference/objects/htmlrenderer)) will fail with an error message. See Note (below).| +|`ENABLE_CEF`|This parameter is a Boolean value with a default value of 1. If set to 0, it disables the [Chromium Embedded Framework (CEF)](https://en.wikipedia.org/wiki/Chromium_Embedded_Framework) and an attempt to create an HTMLRenderer object (see [HTMLRenderer](../../../object-reference/objects/htmlrenderer)) will fail with an error message. See Note (below).| |`ERRORONEXTERNALEXCEPTION`|By default, any error when calling `⎕NA` will result in APL terminating; if `ERRORONEXTERNALEXCEPTION` is set to 1, then APL will instead generate an event 91: `EXTERNAL DLL EXCEPTION` . Be aware however that the workspace may become corrupted. This is best used when developing `⎕NA` code rather than in production.| |`LIBPATH`|A suitable entry for the Conga libraries needs to be added to the `LIBPATH` variable if Conga is to be used. For more information see the *Conga Guide*.| |`MAXWS`|Defines the size of the workspace that will be presented to the user when Dyalog APL is started. A simple integer value will be treated as being in KB. K, M and G can be appended to the value to indicate KiB, MiB and GiB (binary) respectively. If unset, the default value is 256M.| From 6970f122717d98241d19a4ad489cfe76a33d8be0 Mon Sep 17 00:00:00 2001 From: bear8642 Date: Wed, 27 Aug 2025 16:14:26 +0100 Subject: [PATCH 17/22] =?UTF-8?q?HTML=20=E2=86=92=20markdown=20table?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../docs/configuring-the-editor.md | 45 +++---------------- 1 file changed, 7 insertions(+), 38 deletions(-) diff --git a/unix-installation-and-configuration-guide/docs/configuring-the-editor.md b/unix-installation-and-configuration-guide/docs/configuring-the-editor.md index 5238f5c8648..034454fca71 100644 --- a/unix-installation-and-configuration-guide/docs/configuring-the-editor.md +++ b/unix-installation-and-configuration-guide/docs/configuring-the-editor.md @@ -64,41 +64,10 @@ EDITOR_COLUMNS_NAMESPACE=94 shows all columns (the first example in this section Various values for EDITOR_COLUMNS_FUNCTION - - - - - - - - - - - - - - - - - - - - - - - - - -
ValueEditor window appearance
0
fn1 a
-:If a=1
-    b←2
-:EndIf
22
[0] fn1 a
-[1] :If a=1
-[2] ○   b←2
-[3] :EndIf
26
   fn1 a
- ├ :If a=1
-○│     b←2
- ├ :EndIf
40
[0]    fn1 a
-[1]  ├ :If a=1
-[2] ○│     b←2
-[3]  ├ :EndIf
+|Value|Editor window appearance| +|-----|------------------------| +|0 |
 fn1 a
:If a=1
b←2
:EndIf
| +|22 |
[0]   fn1 a
[1] :If a=1
[2] ○ b←2
[3] :EndIf
| +|26 |
   fn1 a
├ :If a=1
○│ b←2
├ :EndIf
| +|40 |
[0]    fn1 a
[1] ├ :If a=1
[2] ○│ b←2
[3] ├ :EndIf
| + From e701d79c520d764b25512f475812c84ed74654f1 Mon Sep 17 00:00:00 2001 From: bear8642 Date: Wed, 27 Aug 2025 16:14:46 +0100 Subject: [PATCH 18/22] Correct EDITOR_COLUMNS_FUNCTION value --- .../docs/configuring-the-editor.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/unix-installation-and-configuration-guide/docs/configuring-the-editor.md b/unix-installation-and-configuration-guide/docs/configuring-the-editor.md index 034454fca71..b5d4b99f582 100644 --- a/unix-installation-and-configuration-guide/docs/configuring-the-editor.md +++ b/unix-installation-and-configuration-guide/docs/configuring-the-editor.md @@ -69,5 +69,5 @@ Various values for EDITOR_COLUMNS_FUNCTION |0 |
 fn1 a
:If a=1
b←2
:EndIf
| |22 |
[0]   fn1 a
[1] :If a=1
[2] ○ b←2
[3] :EndIf
| |26 |
   fn1 a
├ :If a=1
○│ b←2
├ :EndIf
| -|40 |
[0]    fn1 a
[1] ├ :If a=1
[2] ○│ b←2
[3] ├ :EndIf
| +|30 |
[0]    fn1 a
[1] ├ :If a=1
[2] ○│ b←2
[3] ├ :EndIf
| From 02d4cb6bd7b6f9cb3009e92732ab142312d4f425 Mon Sep 17 00:00:00 2001 From: bear8642 Date: Thu, 28 Aug 2025 10:58:35 +0100 Subject: [PATCH 19/22] Update magic file section --- .../docs/magic.md | 34 ++++++------------- 1 file changed, 10 insertions(+), 24 deletions(-) diff --git a/unix-installation-and-configuration-guide/docs/magic.md b/unix-installation-and-configuration-guide/docs/magic.md index 3ccba37b149..35d6b295a92 100644 --- a/unix-installation-and-configuration-guide/docs/magic.md +++ b/unix-installation-and-configuration-guide/docs/magic.md @@ -19,18 +19,11 @@ file *

Example

``` $ file -m /opt/mdyalog/{{ version_majmin }}/64/unicode/p9/magic * -1_apl_j1: Dyalog APL component file 64-bit level 1 journaled non-checksummed -1_apl_j2: Dyalog APL component file 64-bit level 2 journaled checksummed -1_apl_qfile: Dyalog APL component file 64-bit non-journaled non-checksummed -1_big1: Dyalog APL component file 64-bit level 2 journaled checksummed -1_big2: Dyalog APL component file 64-bit level 1 journaled checksummed -apl64u: Dyalog APL workspace type 12 subtype 4 64-bit unicode big-endian -aplout: Dyalog APL workspace type 12 subtype 0 32-bit classic little-endian -aplcore: Dyalog APL workspace type 12 subtype 4 32-bit classic little-endian -colours: Dyalog APL workspace type 12 subtype 4 32-bit classic little-endian -core: data or International Language text -signals: Dyalog APL workspace type 12 subtype 4 32-bit classic little-endian -utf8: Dyalog APL workspace type 12 subtype 4 32-bit unicode little-endian +apl64u.dws: Dyalog APL workspace type 20 subtype 14 64-bit unicode big-endian +aplcore: Dyalog APL aplcore +j1c0.dcf: Dyalog APL component file 64-bit level 1 journaled non-checksummed +j1c1.dcf: Dyalog APL component file 64-bit level 1 journaled checksummed +j2c1.dcf: Dyalog APL component file 64-bit level 2 journaled checksummed ``` ### magic and Linux @@ -57,18 +50,11 @@ utf8: \012- Dyalog APL\012- workspace\012- version 12\012- .4 ### Example, with more recent magic file ``` $ file * -1_apl_j1: Dyalog APL component file 64-bit level 1 journaled non-checksummed -1_apl_j2: Dyalog APL component file 64-bit level 2 journaled checksummed -1_apl_qfile: Dyalog APL component file 64-bit non-journaled non-checksummed -1_big1: Dyalog APL component file 64-bit level 2 journaled checksummed -1_big2: Dyalog APL component file 64-bit level 1 journaled checksummed -apl64u: Dyalog APL workspace type 12 subtype 4 64-bit unicode big-endian -aplout: Dyalog APL workspace type 12 subtype 0 32-bit classic little-endian -aplcore: Dyalog APL workspace type 12 subtype 4 32-bit classic little-endian -colours: Dyalog APL workspace type 12 subtype 4 32-bit classic little-endian -core: ELF 32-bit LSB core file Intel 80386, version 1 (SYSV), SVR4-style, from '/opt/mdyalog/14.0/32/classic/dyalog' -signals: Dyalog APL workspace type 12 subtype 4 32-bit classic little-endian -utf8: Dyalog APL workspace type 12 subtype 4 32-bit unicode little-endian +apl64u.dws: Dyalog APL workspace 64-bit unicode big-endian version 20.14 +aplcore: Dyalog APL aplcore version 20.14 +j1c0.dcf: Dyalog APL component file 64-bit level 1 journaled non-checksummed version 20.0 +j1c1.dcf: Dyalog APL component file 64-bit level 1 journaled checksummed version 20.0 +j2c1.dcf: Dyalog APL component file 64-bit level 2 journaled checksummed version 20.0 ``` The most recent version of the magic file can be found in the top level of the installation directory; see the man page for the file command for details of how to update the system magic file, or use the syntax described in the /etc/magic and AIX section above to override the default magic file with the one supplied in the installation directory. From 9365b1162715b5e63a27ae1396168d6fb3152540 Mon Sep 17 00:00:00 2001 From: bear8642 Date: Thu, 28 Aug 2025 10:59:11 +0100 Subject: [PATCH 20/22] Remove reference to old version of Linux magic file --- .../docs/magic.md | 19 +------------------ 1 file changed, 1 insertion(+), 18 deletions(-) diff --git a/unix-installation-and-configuration-guide/docs/magic.md b/unix-installation-and-configuration-guide/docs/magic.md index 35d6b295a92..90bc10d691c 100644 --- a/unix-installation-and-configuration-guide/docs/magic.md +++ b/unix-installation-and-configuration-guide/docs/magic.md @@ -28,24 +28,7 @@ j2c1.dcf: Dyalog APL component file 64-bit level 2 journaled checksummed ### magic and Linux -Most Linux distributions include details about Dyalog-related files in their magic files; Dyalog has submitted two versions of the magic file for inclusion in distributions. To check whether your Linux distribution has the more recent version, create a journaled component file and then run the file command against that component file. The two examples below show the output with the earlier and later versions of magic in use. - -## Example, using the older default magic file -``` -$ file * -1_apl_j1: data -1_apl_j2: data -1_apl_qfile: data -1_big1: data -1_big2: data -apl64u: \012- Dyalog APL\012- workspace\012- version 12\012- .4 -aplout: \012- Dyalog APL\012- workspace\012- version 12\012- .0 -aplcore: \012- Dyalog APL\012- workspace\012- version 12\012- .4 -colours: \012- Dyalog APL\012- workspace\012- version 12\012- .4 -core: ELF 32-bit LSB core file Intel 80386, version 1 (SYSV), SVR4-style -signals: \012- Dyalog APL\012- workspace\012- version 12\012- .4 -utf8: \012- Dyalog APL\012- workspace\012- version 12\012- .4 -``` +Most Linux distributions include details about Dyalog-related files in their magic files. ### Example, with more recent magic file ``` From 104e56ada3a1160f982d5b6d907b339899da5894 Mon Sep 17 00:00:00 2001 From: bear8642 Date: Wed, 10 Sep 2025 11:16:12 +0100 Subject: [PATCH 21/22] =?UTF-8?q?dpkg=20=E2=86=92=20apt=20References=20#46?= =?UTF-8?q?1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../docs/installation.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/unix-installation-and-configuration-guide/docs/installation.md b/unix-installation-and-configuration-guide/docs/installation.md index bd826f099ac..395487f06f6 100644 --- a/unix-installation-and-configuration-guide/docs/installation.md +++ b/unix-installation-and-configuration-guide/docs/installation.md @@ -71,7 +71,7 @@ $ /opt/mdyalog/20.0/64/unicode/mapl ### Installing on a DEB-based Linux Distribution ```other -$ sudo dpkg --install dyalog-unicode_20.0.51795_amd64.deb +$ sudo apt install dyalog-unicode_20.0.51795_amd64.deb ``` Dyalog APL is now installed. To run as any user, type ```other @@ -84,7 +84,6 @@ $ /opt/mdyalog/20.0/64/unicode/mapl !!! note - It may be necessary to use the --force flag or equivalent if an earlier version of Dyalog APL is to be installed on the same server as a later version. This is safe since the versions have no files in common. - - If dpkg generates dependency errors, run `apt-get install -f` (as root) - It has been noticed that in some circumstances the 32-bit installs fail on 64-bit operating systems due to a missing ncurses package. However, it appears that that package is indeed installed. What is required however is the 32-bit version: once installed, Dyalog APL will then install. ## Installing on arm machines @@ -108,7 +107,7 @@ $ /opt/mdyalog/20.0/64/unicode/mapl ### Installing on a DEB-based Linux Distribution ```other -$ sudo dpkg --install dyalog-unicode_20.0.51795_aarch64.deb +$ sudo apt install dyalog-unicode_20.0.51795_aarch64.deb ``` Dyalog APL is now installed. To run as any user, type ```other @@ -121,7 +120,6 @@ $ /opt/mdyalog/20.0/64/unicode/mapl !!! note - It may be necessary to use the --force flag or equivalent if an earlier version of Dyalog APL is to be installed on the same server as a later version. This is safe since the versions have no files in common. - - If dpkg generates dependency errors, run `apt-get install -f` (as root) - It has been noticed that in some circumstances the 32-bit installs fail on 64-bit operating systems due to a missing ncurses package. However, it appears that that package is indeed installed. What is required however is the 32-bit version: once installed, Dyalog APL will then install. From 2b99ffcdf43a3bd9729a04021363ae40090abef9 Mon Sep 17 00:00:00 2001 From: bear8642 Date: Fri, 19 Sep 2025 11:49:33 +0100 Subject: [PATCH 22/22] Format keycode --- .../docs/configuration-parameters/environment-variables.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/unix-installation-and-configuration-guide/docs/configuration-parameters/environment-variables.md b/unix-installation-and-configuration-guide/docs/configuration-parameters/environment-variables.md index 5ec693181b2..b1c8489568b 100644 --- a/unix-installation-and-configuration-guide/docs/configuration-parameters/environment-variables.md +++ b/unix-installation-and-configuration-guide/docs/configuration-parameters/environment-variables.md @@ -29,7 +29,7 @@ Table: Commonly used Variables {: #E1 } |TERM
APLK
APLK0
APLT
APLTn|Define the input and output translate tables used by Dyalog APL. The values of APLK0 and APLTn override the values of APLK and APLT if set, and they in turn override the value of (Unicode) *default*, or (Classic) TERM if set.

APLK is for input translation, APLT for output translation.

These are used in conjunction with ..| |`APLKEYS` `APLTTRANS`|Define the search path for the input and output translate tables respectively. If unset, the interpreter will default to `$DYALOG`; if `$DYALOG` too is not set, will default to `/usr/dyalog`.| |`APLNID`|This variable is ignored by the UNIX versions of Dyalog APL: `⎕AI` and `⎕AN` pick up their values from the user's uid and `/etc/passwd`.| -|`APLSTATUSFD`|If set, this defines the stream number on which all messages for the Status Window appear. It is then possible to redirect this output when APL is started.

If unset, the output will appear in the same terminal window as the APL session, although it is not part of the session; such output can be removed by hitting SR (Screen Redraw - often defined to be Ctrl-L).| +|`APLSTATUSFD`|If set, this defines the stream number on which all messages for the Status Window appear. It is then possible to redirect this output when APL is started.

If unset, the output will appear in the same terminal window as the APL session, although it is not part of the session; such output can be removed by hitting (Screen Redraw - often defined to be Ctrl-L).| |`DYALOG_NETCORE`|This parameter is a Boolean value with a default value of 1. If set to 0, it disables the .NET interface.| |`DYALOG_SERIAL`|This parameter contains your Dyalog serial number. This must be set to the serial number issued to you. If not set, then the software is unregistered. For the full licence terms and conditions, see [https://www.dyalog.com/uploads/documents/Terms_and_Conditions.pdf](https://www.dyalog.com/uploads/documents/Terms_and_Conditions.pdf) .| |`DYALOG_SERIALFILE`|This parameter specifies the full path to the text file containing your Dyalog serial number.| @@ -91,7 +91,7 @@ Table: Miscellaneous Variables used by non-GUI Dyalog APL {: #E4 } |---|---| |Variable|Notes| |`APL_TEXTINAPLCORE`|If set with the value 1 the "Interesting Information" section is included in an aplcore file. Otherwise this section is omitted. By default the interpreter has this set to 0; it is the default APL script which sets it to 1.| -|`AUTOFORMAT` `TABSTOPS`|If `AUTOFORMAT` is 1, then control structures will be shown with indents, set at `TABSTOPS` spaces; the changes are reflected in the editor window when the `RD` (ReDraw) command key is hit.| +|`AUTOFORMAT` `TABSTOPS`|If `AUTOFORMAT` is 1, then control structures will be shown with indents, set at `TABSTOPS` spaces; the changes are reflected in the editor window when the key is hit.| |`AUTOINDENT`|If `AUTOINDENT` is set to 1, then if a line is added it is indented the same as the previous line.| |`AUTO_PW`|Introduced in 13.0. With `AUTO_PW=0` `⎕PW` remains fixed at the size of the terminal window when APL was started. When set to 1, or unset, `⎕PW` alters each time the terminal window is resized.| |`DYALOG`|This variable is defined in the supplied `mapl` startup script, and is used to form the default values for `APLKEYS`, `APLTRANS`, `WSPATH` etc. If it is necessary to identify the location of the Dyalog executable, then a more reliable method is to determine the full path name from the appropriate file in the `/proc//` subdirectory or from the output of `ps`.|