Skip to content

Commit

Permalink
Changes for v2.093
Browse files Browse the repository at this point in the history
  • Loading branch information
karlglazebrook committed Jan 6, 2025
1 parent 038eed5 commit 74b89d4
Show file tree
Hide file tree
Showing 13 changed files with 813 additions and 116 deletions.
36 changes: 31 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ I have included the source scripts that do all the building FWIW but these will

----

*Karl Glazebrook, 15/4/2024*
*Current version for PDL v2.093, Karl Glazebrook, 6/1/2025*

Welcome to SciPDL! SciPDL is a drag and drop installer for PDL on the Mac. SciPDL now includes its own version of perl in order to work across multiple versions of Mac OS X and a variety of environments (note old versions used the system perl which led to instability between OS updates).

Expand All @@ -29,9 +29,7 @@ Open the .dmg file and drag the ‘PDL’ folder to your Applications folder.
That's it! (And the entire point of SciPDL.)

*IMPORTANT*: an X11 server is also needed if you want PGPLOT graphics. One can use XQuartz or MacPorts X11.
Since the X11 stuff in PDL is statically linked it should work with any X11 server. If you don’t know what X11 is you probably shouldn’t be using PDL :-;


Since the X11 stuff in PDL is statically linked it should work with any X11 server.
## Running SciPDL


Expand Down Expand Up @@ -89,9 +87,30 @@ After running the setup script one should be able to use `cpan -i` to install pe

The `pgplot` graphics library libpgplot is installed in `/Applications/PDL/pgplot`, libraries are in `/Applications/PDL/lib` and executables are in `/Applications/PDL/bin`. Usage from PDL should be transparent. You can also build and link your own C and Fortran programs against these `pgplot` libraries if you wish and it ought to work.

# Perl module versions

The current version numbers of the important stuff within SciPDL are:

```
VERSION_PDL=2.093
VERSION_PERL=5.40.0
VERSION_PGPLOT=2.35
VERSION_EXTUTILS_F77=1.26
VERSION_GSL=2.8
VERSION_CFITSIO=4.5.0
VERSION_ASTRO_FITSIO=1.18
VERSION_ASTRO_FITS_HEADER=3.09
VERSION_FFTW=3.3.10
VERSION_PDL_FFTW3=0.20
```

# Minor caveats

Because this is MacOS the code is all signed and notarised and has a hardened runtime. So it is quite locked down.

In the latest releases I have found a way to give the perl binary a library loading 'entitlement', so installing your own stuff on top of SciPDL (e.g. with `cpan -i`) will work. However see this [caveat.](../../issues/3)

# Contents
# Github repository contents

The repo contains the various scripts and bits I use to build the DMG.

Expand All @@ -110,3 +129,10 @@ The repo contains the various scripts and bits I use to build the DMG.
`Apps` folder contains the `pdl [here]` and `pdl [home]` Applescript apps that go in the distribution.

`go_pdl` is a shell script that launches an interactive PDL session that the above Applescripts use.

`patches/` is a folder containing various patches I need to build stuff for SciPDL.

There are also folders named, for example, `v2.088/` that contain older versions of the builder scripts used for previos releases.



131 changes: 49 additions & 82 deletions README_dmg.rtfd/TXT.rtf
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{\rtf1\ansi\ansicpg1252\cocoartf2638
{\rtf1\ansi\ansicpg1252\cocoartf2761
\cocoatextscaling0\cocoaplatform0{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fswiss\fcharset0 Helvetica-Bold;\f2\fswiss\fcharset0 Helvetica-BoldOblique;
\f3\fswiss\fcharset0 Helvetica-Oblique;\f4\fmodern\fcharset0 Courier;\f5\fmodern\fcharset0 Courier-Oblique;
\f6\fnil\fcharset0 Menlo-Regular;}
Expand All @@ -9,17 +9,14 @@

\f0\fs24 \cf0
\fs28 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0

\f1\b\fs48 \cf0 \ul \ulc0 SciPDL version for PDL 2.088\
\f1\b\fs48 \ul \ulc0 SciPDL version for PDL 2.093\
\f0\b0\fs28 \ulnone \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0

\f2\i\b \cf0 Karl Glazebrook, 25/4/2024. karlglazebrook [-at-] mac [-dot-] com\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\f2\i\b Karl Glazebrook, 6/1/2025. karlglazebrook [-at-] mac [-dot-] com\
\f0\i0\b0 \cf0 (ANZAC day edition!)\
\f0\i0\b0 (ANZAC day edition!)\
\
Welcome to SciPDL! SciPDL is a drag and drop installer for PDL on the Mac. SciPDL now includes its own version of perl in order to work across multiple versions of Mac OS X and a variety of environments (note old versions used the system perl which led to instability between OS updates).\
\
Expand All @@ -34,46 +31,37 @@ Everything in SciPDL lives within the folder:\
}¬}
\fs28 \
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0

\f1\b\fs36 \cf0 \ul Installation\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\f1\b\fs36 \ul Installation\
\f0\b0\fs28 \cf0 \ulnone \
\f0\b0\fs28 \ulnone \
Open the
\f1\b .dmg
\f0\b0 file and drag the \'91PDL\'92 folder to your Applications folder.\
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0

\f1\b \cf0 IMPORTANT
\f1\b IMPORTANT
\f0\b0 : an X11 server is also needed if you want PGPLOT graphics. One can use XQuartz or {\field{\*\fldinst{HYPERLINK "https://www.macports.org"}}{\fldrslt MacPorts}} X11.\
Since the X11 stuff in PDL is statically linked it
\f3\i should
\f0\i0 work with any X11 server. If you don\'92t know what X11 is you probably shouldn\'92t be using PDL :-;\
\f0\i0 work with any X11 server. \
\
SciPDL v2.088 is built on MacOS 12.4 (Monterey) and has been tested on 12.5 (Ventura) and 12.6 (Sonoma) in both Apple Silicon (ARM) and Intel builds.\
SciPDL v2.093 is built on MacOS 14.5 (Sonoma) with both Apple Silicon (ARM) and Intel builds. It should work on later macOS versions but you might not be able to add compiled perl modules to it.\
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0

\f1\b\fs36 \cf0 \ul Running SciPDL\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\f1\b\fs36 \ul Running SciPDL\
\f0\b0\fs28 \cf0 \ulnone \
\f0\b0\fs28 \ulnone \
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0

\f2\i\b \cf0 From the UNIX (Terminal) command line:\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\f2\i\b From the UNIX (Terminal) command line:\
\f3\b0 \cf0 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\f3\b0 \
\f0\i0 \cf0 If you are a bash or zsh user:\
\f0\i0 If you are a bash or zsh user:\
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0

\f4 \cf0 source /Applications/PDL/setup_bash # This can go in your .bashrc startup file\
\f4 source /Applications/PDL/setup_bash # This can go in your .bashrc startup file\
pdl
\f0 \
\
Expand All @@ -82,108 +70,87 @@ If you are a csh user:\

\f4 source /Applications/PDL/setup_csh # This can go in your .cshrc startup file\
pdl\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0

\f5\i \cf0 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\f5\i \
\f0\i0 \cf0 Alternatively simply run\
\f0\i0 Alternatively simply run\
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0

\f4 \cf0 /Applications/PDL/go_pdl\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\f4 /Applications/PDL/go_pdl\

\f0 \cf0 \
\f0 \
to launch a PDL command line session \
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0

\f2\i\b \cf0 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\f2\i\b \
\f1\i0\fs36 \cf0 \ul Convenience Apps\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\f1\i0\fs36 \ul Convenience Apps\
\f3\i\b0\fs28 \cf0 \ulnone \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\f3\i\b0\fs28 \ulnone \
\f2\b \cf0 To launch pdl from the Finder (utility apps in PDL folder):\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\f2\b To launch pdl from the Finder (utility apps in PDL folder):\
\f0\i0\b0 \cf0 \
\f0\i0\b0 \
The app:\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\fs24 \cf0 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\cf0 {{\NeXTGraphic Pasted Graphic 3.tiff \width1900 \height1680 \appleattachmentpadding0 \appleembedtype0 \appleaqc
}¬}\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\cf0 \
\fs24 \
{{\NeXTGraphic Pasted Graphic 3.tiff \width1900 \height1680 \appleattachmentpadding0 \appleembedtype0 \appleaqc
}¬} \
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\fs28 \cf0 will launch a Terminal window in your home folder with PDL running.\
\fs28 will launch a Terminal window in your home folder with PDL running.\
\
The app:\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\f3\i \cf0 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\f3\i \
\f0\i0\fs24 \cf0 {{\NeXTGraphic Pasted Graphic 4.tiff \width1820 \height1980 \appleattachmentpadding0 \appleembedtype0 \appleaqc
}¬}\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\cf0 \
\f0\i0\fs24 {{\NeXTGraphic Pasted Graphic 4.tiff \width1820 \height1980 \appleattachmentpadding0 \appleembedtype0 \appleaqc
}¬}\
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\fs28 \cf0 will run PDL in the current Finder window folder. For this to work drag the app in to your Finder toolbar (right click on the tool bar and select \'91
\fs28 will run PDL in the current Finder window folder. For this to work drag the app in to your Finder toolbar (right click on the tool bar and select \'91
\f3\i Customise toolbar
\f0\i0 \'92)\
\
You will be asked if you wish to allow the app to run and whether to allow it to control Terminal. Say yes to both of these! \
\
You are also likely to get the error:\
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\fs24 \cf0 {{\NeXTGraphic Pasted Graphic.png \width7440 \height7000 \appleattachmentpadding0 \appleembedtype0 \appleaqc
}¬}\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\cf0 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\fs24 {{\NeXTGraphic Pasted Graphic.png \width7440 \height7000 \appleattachmentpadding0 \appleembedtype0 \appleaqc
}¬}\
\fs28 \cf0 \
\fs28 \
If you do then click \'91Edit\'92 button in the dialog to open it in Script Editor and then just hit \'91Save\'92 in the menu. Then when you re-launch the app you should get a dialog to allow the app to do it\'92s thing.\
\
(Note these are implemented via Applescripts)\
\
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\f1\b\fs36 \cf0 \ul What SciPDL contains\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\f1\b\fs36 \ul What SciPDL contains\
\f0\b0\fs28 \cf0 \ulnone \
\f0\b0\fs28 \ulnone \
SciPDL contains:\
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\f4 \cf0 PDL 2.088 \
perl 5.38.2
\f4 PDL 2.093 \
perl 5.40.0\
cpgplot 5.3.1
\f0 \
\
Version numbers of some other major components:\
\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\partightenfactor0
\f6\fs22 \cf2 \CocoaLigature0 Astro-FITS-CFITSIO-1.18\
ExtUtils-F77-1.26\
PDL-FFTW3-0.19\
cfitsio-4.4.0\
fftw-3.3.10\
gsl-v2.7.1\
perl5-PGPLOT-2.29\
libpgplot5.3.1\
\f6\fs22 \cf2 \CocoaLigature0 VERSION_PGPLOT=2.35\
VERSION_EXTUTILS_F77=1.26\
VERSION_GSL=2.8\
VERSION_CFITSIO=4.5.0\
VERSION_ASTRO_FITSIO=1.18\
VERSION_ASTRO_FITS_HEADER=3.09\
VERSION_FFTW=3.3.10\
VERSION_PDL_FFTW3=0.20\
\
\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
Expand Down
Loading

0 comments on commit 74b89d4

Please sign in to comment.